From 2352050bb8293092b69053f07e8dc970a28510a6 Mon Sep 17 00:00:00 2001 From: GitHub Actions Bot <> Date: Wed, 4 Sep 2024 09:52:11 +0000 Subject: [PATCH] Built from commit '532f123' --- .nojekyll | 0 404.html | 16 +++++ assets/css/styles.fc8ee88d.css | 1 + ...ntal2-89d7350d193766d81f16643008c28a16.png | Bin 0 -> 163138 bytes ...ture2-e72f296e5bfa4a0d19a261aa8d1eda47.png | Bin 0 -> 392710 bytes ...t-api-4ed5595066ba8b486810824e9770c6eb.png | Bin 0 -> 46261 bytes ...tures-a73ae32cb4391fdd586e23d450e6f2d7.png | Bin 0 -> 268941 bytes assets/js/05e44ab7.b8156b68.js | 1 + assets/js/06314cb9.e2de962b.js | 1 + assets/js/14a713f6.d009dfb8.js | 1 + assets/js/14eb3368.9428a0f9.js | 1 + assets/js/17896441.1939eeab.js | 1 + assets/js/1b4cc8e2.0a0766ce.js | 1 + assets/js/1be78505.86914a5e.js | 1 + assets/js/1df93b7f.6c196ace.js | 1 + assets/js/1f391b9e.1cd91990.js | 1 + assets/js/20f005c0.049174b7.js | 1 + assets/js/2424d345.a6d361c6.js | 1 + assets/js/2e61c9f2.6d5fa105.js | 1 + assets/js/327.6bc39bf0.js | 1 + assets/js/3cb05d6d.2e6d8bf1.js | 1 + assets/js/415192e1.5c02af10.js | 1 + assets/js/41b8e814.b9683f34.js | 1 + assets/js/428320b6.b0e6cab4.js | 1 + assets/js/492dc3f9.b3c5f638.js | 1 + assets/js/4b94b993.25343c8e.js | 1 + assets/js/57dd7c71.325d5b48.js | 1 + assets/js/5fef8d46.fc4c9a16.js | 1 + assets/js/61b19cc7.35a6f195.js | 1 + assets/js/6d61db34.31b6f0e7.js | 1 + assets/js/73611911.902cc1fc.js | 1 + assets/js/75878fc8.2cbd87ce.js | 1 + assets/js/792d5b58.f356f65f.js | 1 + assets/js/814.e703c48f.js | 1 + assets/js/8140cfa8.b0156491.js | 1 + assets/js/935f2afb.be34cfe3.js | 1 + assets/js/95fd3ae2.01388588.js | 1 + assets/js/972.8d79bbe8.js | 1 + assets/js/9b8d192f.082a6409.js | 1 + assets/js/b5acc4c4.0b2208ad.js | 1 + assets/js/b893987e.c7bcf8cd.js | 1 + assets/js/be239b1c.3a72d963.js | 1 + assets/js/c66b78d2.a4ca6671.js | 1 + assets/js/common.53c69b33.js | 1 + assets/js/d38eaa6e.5e09b96d.js | 1 + assets/js/d3ec9a0d.42dfbc51.js | 1 + assets/js/d5120d00.6cd7f025.js | 1 + assets/js/ddc469d8.ae70c047.js | 1 + assets/js/eb414d18.4f3efa3c.js | 1 + assets/js/eccd96cf.0961e338.js | 1 + assets/js/f05b69d1.3b3214c8.js | 1 + assets/js/f271ccf2.1243d9fe.js | 1 + assets/js/faf05ce9.6d36023d.js | 1 + assets/js/fc1348c9.0401af5e.js | 1 + assets/js/main.fe5c8998.js | 2 + assets/js/main.fe5c8998.js.LICENSE.txt | 53 ++++++++++++++ assets/js/runtime~main.15945b69.js | 1 + changelog/index.html | 16 +++++ docs/about/concepts/task/index.html | 16 +++++ docs/about/concepts/use-case/index.html | 16 +++++ .../how-to/how-to-do-something/index.html | 16 +++++ docs/about/introduction/index.html | 16 +++++ docs/about/overview/index.html | 16 +++++ docs/about/running/configure/index.html | 17 +++++ docs/about/running/prerequisites/index.html | 16 +++++ .../running/starting-services/index.html | 16 +++++ docs/category/coding/index.html | 16 +++++ docs/category/concepts/index.html | 16 +++++ docs/category/development-guide/index.html | 16 +++++ docs/category/how-to/index.html | 16 +++++ docs/category/running/index.html | 16 +++++ docs/changelog/index.html | 19 +++++ .../coding/architecture/index.html | 16 +++++ .../adding-data-providers/clients/index.html | 16 +++++ .../adding-data-providers/index.html | 19 +++++ .../repositories/index.html | 18 +++++ .../repository-interfaces/index.html | 18 +++++ .../adding-entities/index.html | 18 +++++ .../adding-features/controllers/index.html | 16 +++++ .../adding-features/index.html | 16 +++++ .../securing-endpoints/index.html | 17 +++++ .../adding-features/use-cases/index.html | 16 +++++ .../coding/extending-the-api/index.html | 17 +++++ .../coding/extending-the-web/index.html | 68 ++++++++++++++++++ .../coding/generate-api-clients/index.html | 16 +++++ .../development-guide/publishing/index.html | 16 +++++ .../development-guide/setup/index.html | 18 +++++ .../development-guide/testing/index.html | 16 +++++ .../development-guide/upgrading/index.html | 18 +++++ docs/contribute/documentation/index.html | 16 +++++ docs/contribute/ground-rules/index.html | 16 +++++ .../how-to-start-contributing/index.html | 16 +++++ img/clean-architecture-horizontal2.png | Bin 0 -> 163138 bytes img/clean-architecture.png | Bin 0 -> 447641 bytes img/clean-architecture2.png | Bin 0 -> 392710 bytes img/favicon.png | Bin 0 -> 493 bytes img/features.png | Bin 0 -> 268941 bytes img/logo.svg | 7 ++ index.html | 16 +++++ sitemap.xml | 1 + 100 files changed, 775 insertions(+) create mode 100644 .nojekyll create mode 100644 404.html create mode 100644 assets/css/styles.fc8ee88d.css create mode 100644 assets/images/clean-architecture-horizontal2-89d7350d193766d81f16643008c28a16.png create mode 100644 assets/images/clean-architecture2-e72f296e5bfa4a0d19a261aa8d1eda47.png create mode 100644 assets/images/fast-api-4ed5595066ba8b486810824e9770c6eb.png create mode 100644 assets/images/features-a73ae32cb4391fdd586e23d450e6f2d7.png create mode 100644 assets/js/05e44ab7.b8156b68.js create mode 100644 assets/js/06314cb9.e2de962b.js create mode 100644 assets/js/14a713f6.d009dfb8.js create mode 100644 assets/js/14eb3368.9428a0f9.js create mode 100644 assets/js/17896441.1939eeab.js create mode 100644 assets/js/1b4cc8e2.0a0766ce.js create mode 100644 assets/js/1be78505.86914a5e.js create mode 100644 assets/js/1df93b7f.6c196ace.js create mode 100644 assets/js/1f391b9e.1cd91990.js create mode 100644 assets/js/20f005c0.049174b7.js create mode 100644 assets/js/2424d345.a6d361c6.js create mode 100644 assets/js/2e61c9f2.6d5fa105.js create mode 100644 assets/js/327.6bc39bf0.js create mode 100644 assets/js/3cb05d6d.2e6d8bf1.js create mode 100644 assets/js/415192e1.5c02af10.js create mode 100644 assets/js/41b8e814.b9683f34.js create mode 100644 assets/js/428320b6.b0e6cab4.js create mode 100644 assets/js/492dc3f9.b3c5f638.js create mode 100644 assets/js/4b94b993.25343c8e.js create mode 100644 assets/js/57dd7c71.325d5b48.js create mode 100644 assets/js/5fef8d46.fc4c9a16.js create mode 100644 assets/js/61b19cc7.35a6f195.js create mode 100644 assets/js/6d61db34.31b6f0e7.js create mode 100644 assets/js/73611911.902cc1fc.js create mode 100644 assets/js/75878fc8.2cbd87ce.js create mode 100644 assets/js/792d5b58.f356f65f.js create mode 100644 assets/js/814.e703c48f.js create mode 100644 assets/js/8140cfa8.b0156491.js create mode 100644 assets/js/935f2afb.be34cfe3.js create mode 100644 assets/js/95fd3ae2.01388588.js create mode 100644 assets/js/972.8d79bbe8.js create mode 100644 assets/js/9b8d192f.082a6409.js create mode 100644 assets/js/b5acc4c4.0b2208ad.js create mode 100644 assets/js/b893987e.c7bcf8cd.js create mode 100644 assets/js/be239b1c.3a72d963.js create mode 100644 assets/js/c66b78d2.a4ca6671.js create mode 100644 assets/js/common.53c69b33.js create mode 100644 assets/js/d38eaa6e.5e09b96d.js create mode 100644 assets/js/d3ec9a0d.42dfbc51.js create mode 100644 assets/js/d5120d00.6cd7f025.js create mode 100644 assets/js/ddc469d8.ae70c047.js create mode 100644 assets/js/eb414d18.4f3efa3c.js create mode 100644 assets/js/eccd96cf.0961e338.js create mode 100644 assets/js/f05b69d1.3b3214c8.js create mode 100644 assets/js/f271ccf2.1243d9fe.js create mode 100644 assets/js/faf05ce9.6d36023d.js create mode 100644 assets/js/fc1348c9.0401af5e.js create mode 100644 assets/js/main.fe5c8998.js create mode 100644 assets/js/main.fe5c8998.js.LICENSE.txt create mode 100644 assets/js/runtime~main.15945b69.js create mode 100644 changelog/index.html create mode 100644 docs/about/concepts/task/index.html create mode 100644 docs/about/concepts/use-case/index.html create mode 100644 docs/about/how-to/how-to-do-something/index.html create mode 100644 docs/about/introduction/index.html create mode 100644 docs/about/overview/index.html create mode 100644 docs/about/running/configure/index.html create mode 100644 docs/about/running/prerequisites/index.html create mode 100644 docs/about/running/starting-services/index.html create mode 100644 docs/category/coding/index.html create mode 100644 docs/category/concepts/index.html create mode 100644 docs/category/development-guide/index.html create mode 100644 docs/category/how-to/index.html create mode 100644 docs/category/running/index.html create mode 100644 docs/changelog/index.html create mode 100644 docs/contribute/development-guide/coding/architecture/index.html create mode 100644 docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/clients/index.html create mode 100644 docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/index.html create mode 100644 docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repositories/index.html create mode 100644 docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repository-interfaces/index.html create mode 100644 docs/contribute/development-guide/coding/extending-the-api/adding-entities/index.html create mode 100644 docs/contribute/development-guide/coding/extending-the-api/adding-features/controllers/index.html create mode 100644 docs/contribute/development-guide/coding/extending-the-api/adding-features/index.html create mode 100644 docs/contribute/development-guide/coding/extending-the-api/adding-features/securing-endpoints/index.html create mode 100644 docs/contribute/development-guide/coding/extending-the-api/adding-features/use-cases/index.html create mode 100644 docs/contribute/development-guide/coding/extending-the-api/index.html create mode 100644 docs/contribute/development-guide/coding/extending-the-web/index.html create mode 100644 docs/contribute/development-guide/coding/generate-api-clients/index.html create mode 100644 docs/contribute/development-guide/publishing/index.html create mode 100644 docs/contribute/development-guide/setup/index.html create mode 100644 docs/contribute/development-guide/testing/index.html create mode 100644 docs/contribute/development-guide/upgrading/index.html create mode 100644 docs/contribute/documentation/index.html create mode 100644 docs/contribute/ground-rules/index.html create mode 100644 docs/contribute/how-to-start-contributing/index.html create mode 100644 img/clean-architecture-horizontal2.png create mode 100644 img/clean-architecture.png create mode 100644 img/clean-architecture2.png create mode 100644 img/favicon.png create mode 100644 img/features.png create mode 100644 img/logo.svg create mode 100644 index.html create mode 100644 sitemap.xml 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..e601d576 --- /dev/null +++ b/404.html @@ -0,0 +1,16 @@ + + + + + +Page Not Found | Template FastAPI React + + + + +
+
Skip to main content

Page Not Found

We could not find what you were looking for.

Please contact the owner of the site that linked you to the original URL and let them know their link is broken.

+ + + + \ No newline at end of file diff --git a/assets/css/styles.fc8ee88d.css b/assets/css/styles.fc8ee88d.css new file mode 100644 index 00000000..bf85ceab --- /dev/null +++ b/assets/css/styles.fc8ee88d.css @@ -0,0 +1 @@ +.col,.container{padding:0 var(--ifm-spacing-horizontal);width:100%}.markdown>h2,.markdown>h3,.markdown>h4,.markdown>h5,.markdown>h6{margin-bottom:calc(var(--ifm-heading-vertical-rhythm-bottom)*var(--ifm-leading))}.markdown li,body{word-wrap:break-word}body,ol ol,ol ul,ul ol,ul ul{margin:0}pre,table{overflow:auto}blockquote,pre{margin:0 0 var(--ifm-spacing-vertical)}.breadcrumbs__link,.button{transition-timing-function:var(--ifm-transition-timing-default)}.button,code{vertical-align:middle}.button--outline.button--active,.button--outline:active,.button--outline:hover,:root{--ifm-button-color:var(--ifm-font-color-base-inverse)}.menu__link:hover,a{transition:color var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.navbar--dark,:root{--ifm-navbar-link-hover-color:var(--ifm-color-primary)}.menu,.navbar-sidebar{overflow-x:hidden}:root,html[data-theme=dark]{--ifm-color-emphasis-500:var(--ifm-color-gray-500)}.toggleButton_gllP,html{-webkit-tap-highlight-color:transparent}.clean-list,.containsTaskList_mC6p,.details_lb9f>summary,.dropdown__menu,.menu__list{list-style:none}:root{--ifm-color-scheme:light;--ifm-dark-value:10%;--ifm-darker-value:15%;--ifm-darkest-value:30%;--ifm-light-value:15%;--ifm-lighter-value:30%;--ifm-lightest-value:50%;--ifm-contrast-background-value:90%;--ifm-contrast-foreground-value:70%;--ifm-contrast-background-dark-value:70%;--ifm-contrast-foreground-dark-value:90%;--ifm-color-primary:#3578e5;--ifm-color-secondary:#ebedf0;--ifm-color-success:#00a400;--ifm-color-info:#54c7ec;--ifm-color-warning:#ffba00;--ifm-color-danger:#fa383e;--ifm-color-primary-dark:#306cce;--ifm-color-primary-darker:#2d66c3;--ifm-color-primary-darkest:#2554a0;--ifm-color-primary-light:#538ce9;--ifm-color-primary-lighter:#72a1ed;--ifm-color-primary-lightest:#9abcf2;--ifm-color-primary-contrast-background:#ebf2fc;--ifm-color-primary-contrast-foreground:#102445;--ifm-color-secondary-dark:#d4d5d8;--ifm-color-secondary-darker:#c8c9cc;--ifm-color-secondary-darkest:#a4a6a8;--ifm-color-secondary-light:#eef0f2;--ifm-color-secondary-lighter:#f1f2f5;--ifm-color-secondary-lightest:#f5f6f8;--ifm-color-secondary-contrast-background:#fdfdfe;--ifm-color-secondary-contrast-foreground:#474748;--ifm-color-success-dark:#009400;--ifm-color-success-darker:#008b00;--ifm-color-success-darkest:#007300;--ifm-color-success-light:#26b226;--ifm-color-success-lighter:#4dbf4d;--ifm-color-success-lightest:#80d280;--ifm-color-success-contrast-background:#e6f6e6;--ifm-color-success-contrast-foreground:#003100;--ifm-color-info-dark:#4cb3d4;--ifm-color-info-darker:#47a9c9;--ifm-color-info-darkest:#3b8ba5;--ifm-color-info-light:#6ecfef;--ifm-color-info-lighter:#87d8f2;--ifm-color-info-lightest:#aae3f6;--ifm-color-info-contrast-background:#eef9fd;--ifm-color-info-contrast-foreground:#193c47;--ifm-color-warning-dark:#e6a700;--ifm-color-warning-darker:#d99e00;--ifm-color-warning-darkest:#b38200;--ifm-color-warning-light:#ffc426;--ifm-color-warning-lighter:#ffcf4d;--ifm-color-warning-lightest:#ffdd80;--ifm-color-warning-contrast-background:#fff8e6;--ifm-color-warning-contrast-foreground:#4d3800;--ifm-color-danger-dark:#e13238;--ifm-color-danger-darker:#d53035;--ifm-color-danger-darkest:#af272b;--ifm-color-danger-light:#fb565b;--ifm-color-danger-lighter:#fb7478;--ifm-color-danger-lightest:#fd9c9f;--ifm-color-danger-contrast-background:#ffebec;--ifm-color-danger-contrast-foreground:#4b1113;--ifm-color-white:#fff;--ifm-color-black:#000;--ifm-color-gray-0:var(--ifm-color-white);--ifm-color-gray-100:#f5f6f7;--ifm-color-gray-200:#ebedf0;--ifm-color-gray-300:#dadde1;--ifm-color-gray-400:#ccd0d5;--ifm-color-gray-500:#bec3c9;--ifm-color-gray-600:#8d949e;--ifm-color-gray-700:#606770;--ifm-color-gray-800:#444950;--ifm-color-gray-900:#1c1e21;--ifm-color-gray-1000:var(--ifm-color-black);--ifm-color-emphasis-0:var(--ifm-color-gray-0);--ifm-color-emphasis-100:var(--ifm-color-gray-100);--ifm-color-emphasis-200:var(--ifm-color-gray-200);--ifm-color-emphasis-300:var(--ifm-color-gray-300);--ifm-color-emphasis-400:var(--ifm-color-gray-400);--ifm-color-emphasis-600:var(--ifm-color-gray-600);--ifm-color-emphasis-700:var(--ifm-color-gray-700);--ifm-color-emphasis-800:var(--ifm-color-gray-800);--ifm-color-emphasis-900:var(--ifm-color-gray-900);--ifm-color-emphasis-1000:var(--ifm-color-gray-1000);--ifm-color-content:var(--ifm-color-emphasis-900);--ifm-color-content-inverse:var(--ifm-color-emphasis-0);--ifm-color-content-secondary:#525860;--ifm-background-color:#0000;--ifm-background-surface-color:var(--ifm-color-content-inverse);--ifm-global-border-width:1px;--ifm-global-radius:0.4rem;--ifm-hover-overlay:#0000000d;--ifm-font-color-base:var(--ifm-color-content);--ifm-font-color-base-inverse:var(--ifm-color-content-inverse);--ifm-font-color-secondary:var(--ifm-color-content-secondary);--ifm-font-family-base:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";--ifm-font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--ifm-font-size-base:100%;--ifm-font-weight-light:300;--ifm-font-weight-normal:400;--ifm-font-weight-semibold:500;--ifm-font-weight-bold:700;--ifm-font-weight-base:var(--ifm-font-weight-normal);--ifm-line-height-base:1.65;--ifm-global-spacing:1rem;--ifm-spacing-vertical:var(--ifm-global-spacing);--ifm-spacing-horizontal:var(--ifm-global-spacing);--ifm-transition-fast:200ms;--ifm-transition-slow:400ms;--ifm-transition-timing-default:cubic-bezier(0.08,0.52,0.52,1);--ifm-global-shadow-lw:0 1px 2px 0 #0000001a;--ifm-global-shadow-md:0 5px 40px #0003;--ifm-global-shadow-tl:0 12px 28px 0 #0003,0 2px 4px 0 #0000001a;--ifm-z-index-dropdown:100;--ifm-z-index-fixed:200;--ifm-z-index-overlay:400;--ifm-container-width:1140px;--ifm-container-width-xl:1320px;--ifm-code-background:#f6f7f8;--ifm-code-border-radius:var(--ifm-global-radius);--ifm-code-font-size:90%;--ifm-code-padding-horizontal:0.1rem;--ifm-code-padding-vertical:0.1rem;--ifm-pre-background:var(--ifm-code-background);--ifm-pre-border-radius:var(--ifm-code-border-radius);--ifm-pre-color:inherit;--ifm-pre-line-height:1.45;--ifm-pre-padding:1rem;--ifm-heading-color:inherit;--ifm-heading-margin-top:0;--ifm-heading-margin-bottom:var(--ifm-spacing-vertical);--ifm-heading-font-family:var(--ifm-font-family-base);--ifm-heading-font-weight:var(--ifm-font-weight-bold);--ifm-heading-line-height:1.25;--ifm-h1-font-size:2rem;--ifm-h2-font-size:1.5rem;--ifm-h3-font-size:1.25rem;--ifm-h4-font-size:1rem;--ifm-h5-font-size:0.875rem;--ifm-h6-font-size:0.85rem;--ifm-image-alignment-padding:1.25rem;--ifm-leading-desktop:1.25;--ifm-leading:calc(var(--ifm-leading-desktop)*1rem);--ifm-list-left-padding:2rem;--ifm-list-margin:1rem;--ifm-list-item-margin:0.25rem;--ifm-list-paragraph-margin:1rem;--ifm-table-cell-padding:0.75rem;--ifm-table-background:#0000;--ifm-table-stripe-background:#00000008;--ifm-table-border-width:1px;--ifm-table-border-color:var(--ifm-color-emphasis-300);--ifm-table-head-background:inherit;--ifm-table-head-color:inherit;--ifm-table-head-font-weight:var(--ifm-font-weight-bold);--ifm-table-cell-color:inherit;--ifm-link-color:var(--ifm-color-primary);--ifm-link-decoration:none;--ifm-link-hover-color:var(--ifm-link-color);--ifm-link-hover-decoration:underline;--ifm-paragraph-margin-bottom:var(--ifm-leading);--ifm-blockquote-font-size:var(--ifm-font-size-base);--ifm-blockquote-border-left-width:2px;--ifm-blockquote-padding-horizontal:var(--ifm-spacing-horizontal);--ifm-blockquote-padding-vertical:0;--ifm-blockquote-shadow:none;--ifm-blockquote-color:var(--ifm-color-emphasis-800);--ifm-blockquote-border-color:var(--ifm-color-emphasis-300);--ifm-hr-background-color:var(--ifm-color-emphasis-500);--ifm-hr-height:1px;--ifm-hr-margin-vertical:1.5rem;--ifm-scrollbar-size:7px;--ifm-scrollbar-track-background-color:#f1f1f1;--ifm-scrollbar-thumb-background-color:silver;--ifm-scrollbar-thumb-hover-background-color:#a7a7a7;--ifm-alert-background-color:inherit;--ifm-alert-border-color:inherit;--ifm-alert-border-radius:var(--ifm-global-radius);--ifm-alert-border-width:0px;--ifm-alert-border-left-width:5px;--ifm-alert-color:var(--ifm-font-color-base);--ifm-alert-padding-horizontal:var(--ifm-spacing-horizontal);--ifm-alert-padding-vertical:var(--ifm-spacing-vertical);--ifm-alert-shadow:var(--ifm-global-shadow-lw);--ifm-avatar-intro-margin:1rem;--ifm-avatar-intro-alignment:inherit;--ifm-avatar-photo-size:3rem;--ifm-badge-background-color:inherit;--ifm-badge-border-color:inherit;--ifm-badge-border-radius:var(--ifm-global-radius);--ifm-badge-border-width:var(--ifm-global-border-width);--ifm-badge-color:var(--ifm-color-white);--ifm-badge-padding-horizontal:calc(var(--ifm-spacing-horizontal)*0.5);--ifm-badge-padding-vertical:calc(var(--ifm-spacing-vertical)*0.25);--ifm-breadcrumb-border-radius:1.5rem;--ifm-breadcrumb-spacing:0.5rem;--ifm-breadcrumb-color-active:var(--ifm-color-primary);--ifm-breadcrumb-item-background-active:var(--ifm-hover-overlay);--ifm-breadcrumb-padding-horizontal:0.8rem;--ifm-breadcrumb-padding-vertical:0.4rem;--ifm-breadcrumb-size-multiplier:1;--ifm-breadcrumb-separator:url('data:image/svg+xml;utf8,');--ifm-breadcrumb-separator-filter:none;--ifm-breadcrumb-separator-size:0.5rem;--ifm-breadcrumb-separator-size-multiplier:1.25;--ifm-button-background-color:inherit;--ifm-button-border-color:var(--ifm-button-background-color);--ifm-button-border-width:var(--ifm-global-border-width);--ifm-button-font-weight:var(--ifm-font-weight-bold);--ifm-button-padding-horizontal:1.5rem;--ifm-button-padding-vertical:0.375rem;--ifm-button-size-multiplier:1;--ifm-button-transition-duration:var(--ifm-transition-fast);--ifm-button-border-radius:calc(var(--ifm-global-radius)*var(--ifm-button-size-multiplier));--ifm-button-group-spacing:2px;--ifm-card-background-color:var(--ifm-background-surface-color);--ifm-card-border-radius:calc(var(--ifm-global-radius)*2);--ifm-card-horizontal-spacing:var(--ifm-global-spacing);--ifm-card-vertical-spacing:var(--ifm-global-spacing);--ifm-toc-border-color:var(--ifm-color-emphasis-300);--ifm-toc-link-color:var(--ifm-color-content-secondary);--ifm-toc-padding-vertical:0.5rem;--ifm-toc-padding-horizontal:0.5rem;--ifm-dropdown-background-color:var(--ifm-background-surface-color);--ifm-dropdown-font-weight:var(--ifm-font-weight-semibold);--ifm-dropdown-link-color:var(--ifm-font-color-base);--ifm-dropdown-hover-background-color:var(--ifm-hover-overlay);--ifm-footer-background-color:var(--ifm-color-emphasis-100);--ifm-footer-color:inherit;--ifm-footer-link-color:var(--ifm-color-emphasis-700);--ifm-footer-link-hover-color:var(--ifm-color-primary);--ifm-footer-link-horizontal-spacing:0.5rem;--ifm-footer-padding-horizontal:calc(var(--ifm-spacing-horizontal)*2);--ifm-footer-padding-vertical:calc(var(--ifm-spacing-vertical)*2);--ifm-footer-title-color:inherit;--ifm-footer-logo-max-width:min(30rem,90vw);--ifm-hero-background-color:var(--ifm-background-surface-color);--ifm-hero-text-color:var(--ifm-color-emphasis-800);--ifm-menu-color:var(--ifm-color-emphasis-700);--ifm-menu-color-active:var(--ifm-color-primary);--ifm-menu-color-background-active:var(--ifm-hover-overlay);--ifm-menu-color-background-hover:var(--ifm-hover-overlay);--ifm-menu-link-padding-horizontal:0.75rem;--ifm-menu-link-padding-vertical:0.375rem;--ifm-menu-link-sublist-icon:url('data:image/svg+xml;utf8,');--ifm-menu-link-sublist-icon-filter:none;--ifm-navbar-background-color:var(--ifm-background-surface-color);--ifm-navbar-height:3.75rem;--ifm-navbar-item-padding-horizontal:0.75rem;--ifm-navbar-item-padding-vertical:0.25rem;--ifm-navbar-link-color:var(--ifm-font-color-base);--ifm-navbar-link-active-color:var(--ifm-link-color);--ifm-navbar-padding-horizontal:var(--ifm-spacing-horizontal);--ifm-navbar-padding-vertical:calc(var(--ifm-spacing-vertical)*0.5);--ifm-navbar-shadow:var(--ifm-global-shadow-lw);--ifm-navbar-search-input-background-color:var(--ifm-color-emphasis-200);--ifm-navbar-search-input-color:var(--ifm-color-emphasis-800);--ifm-navbar-search-input-placeholder-color:var(--ifm-color-emphasis-500);--ifm-navbar-search-input-icon:url('data:image/svg+xml;utf8,');--ifm-navbar-sidebar-width:83vw;--ifm-pagination-border-radius:var(--ifm-global-radius);--ifm-pagination-color-active:var(--ifm-color-primary);--ifm-pagination-font-size:1rem;--ifm-pagination-item-active-background:var(--ifm-hover-overlay);--ifm-pagination-page-spacing:0.2em;--ifm-pagination-padding-horizontal:calc(var(--ifm-spacing-horizontal)*1);--ifm-pagination-padding-vertical:calc(var(--ifm-spacing-vertical)*0.25);--ifm-pagination-nav-border-radius:var(--ifm-global-radius);--ifm-pagination-nav-color-hover:var(--ifm-color-primary);--ifm-pills-color-active:var(--ifm-color-primary);--ifm-pills-color-background-active:var(--ifm-hover-overlay);--ifm-pills-spacing:0.125rem;--ifm-tabs-color:var(--ifm-font-color-secondary);--ifm-tabs-color-active:var(--ifm-color-primary);--ifm-tabs-color-active-border:var(--ifm-tabs-color-active);--ifm-tabs-padding-horizontal:1rem;--ifm-tabs-padding-vertical:1rem;--docusaurus-progress-bar-color:var(--ifm-color-primary);--ifm-color-primary:#2e8555;--ifm-color-primary-dark:#29784c;--ifm-color-primary-darker:#277148;--ifm-color-primary-darkest:#205d3b;--ifm-color-primary-light:#33925d;--ifm-color-primary-lighter:#359962;--ifm-color-primary-lightest:#3cad6e;--ifm-code-font-size:95%;--docusaurus-highlighted-code-line-bg:#0000001a;--docusaurus-announcement-bar-height:auto;--docusaurus-tag-list-border:var(--ifm-color-emphasis-300);--docusaurus-collapse-button-bg:#0000;--docusaurus-collapse-button-bg-hover:#0000001a;--doc-sidebar-width:300px;--doc-sidebar-hidden-width:30px}.badge--danger,.badge--info,.badge--primary,.badge--secondary,.badge--success,.badge--warning{--ifm-badge-border-color:var(--ifm-badge-background-color)}.button--link,.button--outline{--ifm-button-background-color:#0000}*{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;text-size-adjust:100%;background-color:var(--ifm-background-color);color:var(--ifm-font-color-base);color-scheme:var(--ifm-color-scheme);font:var(--ifm-font-size-base)/var(--ifm-line-height-base) var(--ifm-font-family-base);text-rendering:optimizelegibility}iframe{border:0;color-scheme:auto}.container{margin:0 auto;max-width:var(--ifm-container-width)}.container--fluid{max-width:inherit}.row{display:flex;flex-wrap:wrap;margin:0 calc(var(--ifm-spacing-horizontal)*-1)}.list_eTzJ article:last-child,.margin-bottom--none,.margin-vert--none,.markdown>:last-child{margin-bottom:0!important}.margin-top--none,.margin-vert--none,.tabItem_LNqP{margin-top:0!important}.row--no-gutters{margin-left:0;margin-right:0}.margin-horiz--none,.margin-right--none{margin-right:0!important}.row--no-gutters>.col{padding-left:0;padding-right:0}.row--align-top{align-items:flex-start}.row--align-bottom{align-items:flex-end}.menuExternalLink_NmtK,.row--align-center{align-items:center}.row--align-stretch{align-items:stretch}.row--align-baseline{align-items:baseline}.col{--ifm-col-width:100%;flex:1 0;margin-left:0;max-width:var(--ifm-col-width)}.padding-bottom--none,.padding-vert--none{padding-bottom:0!important}.padding-top--none,.padding-vert--none{padding-top:0!important}.padding-horiz--none,.padding-left--none{padding-left:0!important}.padding-horiz--none,.padding-right--none{padding-right:0!important}.col[class*=col--]{flex:0 0 var(--ifm-col-width)}.col--1{--ifm-col-width:8.33333%}.col--offset-1{margin-left:8.33333%}.col--2{--ifm-col-width:16.66667%}.col--offset-2{margin-left:16.66667%}.col--3{--ifm-col-width:25%}.col--offset-3{margin-left:25%}.col--4{--ifm-col-width:33.33333%}.col--offset-4{margin-left:33.33333%}.col--5{--ifm-col-width:41.66667%}.col--offset-5{margin-left:41.66667%}.col--6{--ifm-col-width:50%}.col--offset-6{margin-left:50%}.col--7{--ifm-col-width:58.33333%}.col--offset-7{margin-left:58.33333%}.col--8{--ifm-col-width:66.66667%}.col--offset-8{margin-left:66.66667%}.col--9{--ifm-col-width:75%}.col--offset-9{margin-left:75%}.col--10{--ifm-col-width:83.33333%}.col--offset-10{margin-left:83.33333%}.col--11{--ifm-col-width:91.66667%}.col--offset-11{margin-left:91.66667%}.col--12{--ifm-col-width:100%}.col--offset-12{margin-left:100%}.margin-horiz--none,.margin-left--none{margin-left:0!important}.margin--none{margin:0!important}.margin-bottom--xs,.margin-vert--xs{margin-bottom:.25rem!important}.margin-top--xs,.margin-vert--xs{margin-top:.25rem!important}.margin-horiz--xs,.margin-left--xs{margin-left:.25rem!important}.margin-horiz--xs,.margin-right--xs{margin-right:.25rem!important}.margin--xs{margin:.25rem!important}.margin-bottom--sm,.margin-vert--sm{margin-bottom:.5rem!important}.margin-top--sm,.margin-vert--sm{margin-top:.5rem!important}.margin-horiz--sm,.margin-left--sm{margin-left:.5rem!important}.margin-horiz--sm,.margin-right--sm{margin-right:.5rem!important}.margin--sm{margin:.5rem!important}.margin-bottom--md,.margin-vert--md{margin-bottom:1rem!important}.margin-top--md,.margin-vert--md{margin-top:1rem!important}.margin-horiz--md,.margin-left--md{margin-left:1rem!important}.margin-horiz--md,.margin-right--md{margin-right:1rem!important}.margin--md{margin:1rem!important}.margin-bottom--lg,.margin-vert--lg{margin-bottom:2rem!important}.margin-top--lg,.margin-vert--lg{margin-top:2rem!important}.margin-horiz--lg,.margin-left--lg{margin-left:2rem!important}.margin-horiz--lg,.margin-right--lg{margin-right:2rem!important}.margin--lg{margin:2rem!important}.margin-bottom--xl,.margin-vert--xl{margin-bottom:5rem!important}.margin-top--xl,.margin-vert--xl{margin-top:5rem!important}.margin-horiz--xl,.margin-left--xl{margin-left:5rem!important}.margin-horiz--xl,.margin-right--xl{margin-right:5rem!important}.margin--xl{margin:5rem!important}.padding--none{padding:0!important}.padding-bottom--xs,.padding-vert--xs{padding-bottom:.25rem!important}.padding-top--xs,.padding-vert--xs{padding-top:.25rem!important}.padding-horiz--xs,.padding-left--xs{padding-left:.25rem!important}.padding-horiz--xs,.padding-right--xs{padding-right:.25rem!important}.padding--xs{padding:.25rem!important}.padding-bottom--sm,.padding-vert--sm{padding-bottom:.5rem!important}.padding-top--sm,.padding-vert--sm{padding-top:.5rem!important}.padding-horiz--sm,.padding-left--sm{padding-left:.5rem!important}.padding-horiz--sm,.padding-right--sm{padding-right:.5rem!important}.padding--sm{padding:.5rem!important}.padding-bottom--md,.padding-vert--md{padding-bottom:1rem!important}.padding-top--md,.padding-vert--md{padding-top:1rem!important}.padding-horiz--md,.padding-left--md{padding-left:1rem!important}.padding-horiz--md,.padding-right--md{padding-right:1rem!important}.padding--md{padding:1rem!important}.padding-bottom--lg,.padding-vert--lg{padding-bottom:2rem!important}.padding-top--lg,.padding-vert--lg{padding-top:2rem!important}.padding-horiz--lg,.padding-left--lg{padding-left:2rem!important}.padding-horiz--lg,.padding-right--lg{padding-right:2rem!important}.padding--lg{padding:2rem!important}.padding-bottom--xl,.padding-vert--xl{padding-bottom:5rem!important}.padding-top--xl,.padding-vert--xl{padding-top:5rem!important}.padding-horiz--xl,.padding-left--xl{padding-left:5rem!important}.padding-horiz--xl,.padding-right--xl{padding-right:5rem!important}.padding--xl{padding:5rem!important}code{background-color:var(--ifm-code-background);border:.1rem solid #0000001a;border-radius:var(--ifm-code-border-radius);font-family:var(--ifm-font-family-monospace);font-size:var(--ifm-code-font-size);padding:var(--ifm-code-padding-vertical) var(--ifm-code-padding-horizontal)}a code{color:inherit}pre{background-color:var(--ifm-pre-background);border-radius:var(--ifm-pre-border-radius);color:var(--ifm-pre-color);font:var(--ifm-code-font-size)/var(--ifm-pre-line-height) var(--ifm-font-family-monospace);padding:var(--ifm-pre-padding)}pre code{background-color:initial;border:none;font-size:100%;line-height:inherit;padding:0}kbd{background-color:var(--ifm-color-emphasis-0);border:1px solid var(--ifm-color-emphasis-400);border-radius:.2rem;box-shadow:inset 0 -1px 0 var(--ifm-color-emphasis-400);color:var(--ifm-color-emphasis-800);font:80% var(--ifm-font-family-monospace);padding:.15rem .3rem}h1,h2,h3,h4,h5,h6{color:var(--ifm-heading-color);font-family:var(--ifm-heading-font-family);font-weight:var(--ifm-heading-font-weight);line-height:var(--ifm-heading-line-height);margin:var(--ifm-heading-margin-top) 0 var(--ifm-heading-margin-bottom) 0}h1{font-size:var(--ifm-h1-font-size)}h2{font-size:var(--ifm-h2-font-size)}h3{font-size:var(--ifm-h3-font-size)}h4{font-size:var(--ifm-h4-font-size)}h5{font-size:var(--ifm-h5-font-size)}h6{font-size:var(--ifm-h6-font-size)}img{max-width:100%}img[align=right]{padding-left:var(--image-alignment-padding)}img[align=left]{padding-right:var(--image-alignment-padding)}.markdown{--ifm-h1-vertical-rhythm-top:3;--ifm-h2-vertical-rhythm-top:2;--ifm-h3-vertical-rhythm-top:1.5;--ifm-heading-vertical-rhythm-top:1.25;--ifm-h1-vertical-rhythm-bottom:1.25;--ifm-heading-vertical-rhythm-bottom:1}.markdown:after,.markdown:before{content:"";display:table}.markdown:after{clear:both}.markdown h1:first-child{--ifm-h1-font-size:3rem;margin-bottom:calc(var(--ifm-h1-vertical-rhythm-bottom)*var(--ifm-leading))}.markdown>h2{--ifm-h2-font-size:2rem;margin-top:calc(var(--ifm-h2-vertical-rhythm-top)*var(--ifm-leading))}.markdown>h3{--ifm-h3-font-size:1.5rem;margin-top:calc(var(--ifm-h3-vertical-rhythm-top)*var(--ifm-leading))}.markdown>h4,.markdown>h5,.markdown>h6{margin-top:calc(var(--ifm-heading-vertical-rhythm-top)*var(--ifm-leading))}.markdown>p,.markdown>pre,.markdown>ul,.tabList__CuJ{margin-bottom:var(--ifm-leading)}.markdown li>p{margin-top:var(--ifm-list-paragraph-margin)}.markdown li+li{margin-top:var(--ifm-list-item-margin)}ol,ul{margin:0 0 var(--ifm-list-margin);padding-left:var(--ifm-list-left-padding)}ol ol,ul ol{list-style-type:lower-roman}ol ol ol,ol ul ol,ul ol ol,ul ul ol{list-style-type:lower-alpha}table{border-collapse:collapse;display:block;margin-bottom:var(--ifm-spacing-vertical)}table thead tr{border-bottom:2px solid var(--ifm-table-border-color)}table thead,table tr:nth-child(2n){background-color:var(--ifm-table-stripe-background)}table tr{background-color:var(--ifm-table-background);border-top:var(--ifm-table-border-width) solid var(--ifm-table-border-color)}table td,table th{border:var(--ifm-table-border-width) solid var(--ifm-table-border-color);padding:var(--ifm-table-cell-padding)}table th{background-color:var(--ifm-table-head-background);color:var(--ifm-table-head-color);font-weight:var(--ifm-table-head-font-weight)}table td{color:var(--ifm-table-cell-color)}strong{font-weight:var(--ifm-font-weight-bold)}a{color:var(--ifm-link-color);text-decoration:var(--ifm-link-decoration)}a:hover{color:var(--ifm-link-hover-color);text-decoration:var(--ifm-link-hover-decoration)}.button:hover,.text--no-decoration,.text--no-decoration:hover,a:not([href]){text-decoration:none}p{margin:0 0 var(--ifm-paragraph-margin-bottom)}blockquote{border-left:var(--ifm-blockquote-border-left-width) solid var(--ifm-blockquote-border-color);box-shadow:var(--ifm-blockquote-shadow);color:var(--ifm-blockquote-color);font-size:var(--ifm-blockquote-font-size);padding:var(--ifm-blockquote-padding-vertical) var(--ifm-blockquote-padding-horizontal)}blockquote>:first-child{margin-top:0}blockquote>:last-child{margin-bottom:0}hr{background-color:var(--ifm-hr-background-color);border:0;height:var(--ifm-hr-height);margin:var(--ifm-hr-margin-vertical) 0}.shadow--lw{box-shadow:var(--ifm-global-shadow-lw)!important}.shadow--md{box-shadow:var(--ifm-global-shadow-md)!important}.shadow--tl{box-shadow:var(--ifm-global-shadow-tl)!important}.text--primary,.wordWrapButtonEnabled_EoeP .wordWrapButtonIcon_Bwma{color:var(--ifm-color-primary)}.text--secondary{color:var(--ifm-color-secondary)}.text--success{color:var(--ifm-color-success)}.text--info{color:var(--ifm-color-info)}.text--warning{color:var(--ifm-color-warning)}.text--danger{color:var(--ifm-color-danger)}.text--center{text-align:center}.text--left{text-align:left}.text--justify{text-align:justify}.text--right{text-align:right}.text--capitalize{text-transform:capitalize}.text--lowercase{text-transform:lowercase}.admonitionHeading_tbUL,.alert__heading,.text--uppercase{text-transform:uppercase}.text--light{font-weight:var(--ifm-font-weight-light)}.text--normal{font-weight:var(--ifm-font-weight-normal)}.text--semibold{font-weight:var(--ifm-font-weight-semibold)}.text--bold{font-weight:var(--ifm-font-weight-bold)}.text--italic{font-style:italic}.text--truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text--break{word-wrap:break-word!important;word-break:break-word!important}.clean-btn{background:none;border:none;color:inherit;cursor:pointer;font-family:inherit;padding:0}.alert,.alert .close{color:var(--ifm-alert-foreground-color)}.clean-list{padding-left:0}.alert--primary{--ifm-alert-background-color:var(--ifm-color-primary-contrast-background);--ifm-alert-background-color-highlight:#3578e526;--ifm-alert-foreground-color:var(--ifm-color-primary-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-primary-dark)}.alert--secondary{--ifm-alert-background-color:var(--ifm-color-secondary-contrast-background);--ifm-alert-background-color-highlight:#ebedf026;--ifm-alert-foreground-color:var(--ifm-color-secondary-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-secondary-dark)}.alert--success{--ifm-alert-background-color:var(--ifm-color-success-contrast-background);--ifm-alert-background-color-highlight:#00a40026;--ifm-alert-foreground-color:var(--ifm-color-success-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-success-dark)}.alert--info{--ifm-alert-background-color:var(--ifm-color-info-contrast-background);--ifm-alert-background-color-highlight:#54c7ec26;--ifm-alert-foreground-color:var(--ifm-color-info-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-info-dark)}.alert--warning{--ifm-alert-background-color:var(--ifm-color-warning-contrast-background);--ifm-alert-background-color-highlight:#ffba0026;--ifm-alert-foreground-color:var(--ifm-color-warning-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-warning-dark)}.alert--danger{--ifm-alert-background-color:var(--ifm-color-danger-contrast-background);--ifm-alert-background-color-highlight:#fa383e26;--ifm-alert-foreground-color:var(--ifm-color-danger-contrast-foreground);--ifm-alert-border-color:var(--ifm-color-danger-dark)}.alert{--ifm-code-background:var(--ifm-alert-background-color-highlight);--ifm-link-color:var(--ifm-alert-foreground-color);--ifm-link-hover-color:var(--ifm-alert-foreground-color);--ifm-link-decoration:underline;--ifm-tabs-color:var(--ifm-alert-foreground-color);--ifm-tabs-color-active:var(--ifm-alert-foreground-color);--ifm-tabs-color-active-border:var(--ifm-alert-border-color);background-color:var(--ifm-alert-background-color);border:var(--ifm-alert-border-width) solid var(--ifm-alert-border-color);border-left-width:var(--ifm-alert-border-left-width);border-radius:var(--ifm-alert-border-radius);box-shadow:var(--ifm-alert-shadow);padding:var(--ifm-alert-padding-vertical) var(--ifm-alert-padding-horizontal)}.alert__heading{align-items:center;display:flex;font:700 var(--ifm-h5-font-size)/var(--ifm-heading-line-height) var(--ifm-heading-font-family);margin-bottom:.5rem}.alert__icon{display:inline-flex;margin-right:.4em}.alert__icon svg{fill:var(--ifm-alert-foreground-color);stroke:var(--ifm-alert-foreground-color);stroke-width:0}.alert .close{margin:calc(var(--ifm-alert-padding-vertical)*-1) calc(var(--ifm-alert-padding-horizontal)*-1) 0 0;opacity:.75}.alert .close:focus,.alert .close:hover{opacity:1}.alert a{text-decoration-color:var(--ifm-alert-border-color)}.alert a:hover{text-decoration-thickness:2px}.avatar{column-gap:var(--ifm-avatar-intro-margin);display:flex}.avatar__photo{border-radius:50%;display:block;height:var(--ifm-avatar-photo-size);overflow:hidden;width:var(--ifm-avatar-photo-size)}.card--full-height,.navbar__logo img,body,html{height:100%}.avatar__photo--sm{--ifm-avatar-photo-size:2rem}.avatar__photo--lg{--ifm-avatar-photo-size:4rem}.avatar__photo--xl{--ifm-avatar-photo-size:6rem}.avatar__intro{display:flex;flex:1 1;flex-direction:column;justify-content:center;text-align:var(--ifm-avatar-intro-alignment)}.badge,.breadcrumbs__item,.breadcrumbs__link,.button,.dropdown>.navbar__link:after{display:inline-block}.avatar__name{font:700 var(--ifm-h4-font-size)/var(--ifm-heading-line-height) var(--ifm-font-family-base)}.avatar__subtitle{margin-top:.25rem}.avatar--vertical{--ifm-avatar-intro-alignment:center;--ifm-avatar-intro-margin:0.5rem;align-items:center;flex-direction:column}.badge{background-color:var(--ifm-badge-background-color);border:var(--ifm-badge-border-width) solid var(--ifm-badge-border-color);border-radius:var(--ifm-badge-border-radius);color:var(--ifm-badge-color);font-size:75%;font-weight:var(--ifm-font-weight-bold);line-height:1;padding:var(--ifm-badge-padding-vertical) var(--ifm-badge-padding-horizontal)}.badge--primary{--ifm-badge-background-color:var(--ifm-color-primary)}.badge--secondary{--ifm-badge-background-color:var(--ifm-color-secondary);color:var(--ifm-color-black)}.breadcrumbs__link,.button.button--secondary.button--outline:not(.button--active):not(:hover){color:var(--ifm-font-color-base)}.badge--success{--ifm-badge-background-color:var(--ifm-color-success)}.badge--info{--ifm-badge-background-color:var(--ifm-color-info)}.badge--warning{--ifm-badge-background-color:var(--ifm-color-warning)}.badge--danger{--ifm-badge-background-color:var(--ifm-color-danger)}.breadcrumbs{margin-bottom:0;padding-left:0}.breadcrumbs__item:not(:last-child):after{background:var(--ifm-breadcrumb-separator) center;content:" ";display:inline-block;filter:var(--ifm-breadcrumb-separator-filter);height:calc(var(--ifm-breadcrumb-separator-size)*var(--ifm-breadcrumb-size-multiplier)*var(--ifm-breadcrumb-separator-size-multiplier));margin:0 var(--ifm-breadcrumb-spacing);opacity:.5;width:calc(var(--ifm-breadcrumb-separator-size)*var(--ifm-breadcrumb-size-multiplier)*var(--ifm-breadcrumb-separator-size-multiplier))}.breadcrumbs__item--active .breadcrumbs__link{background:var(--ifm-breadcrumb-item-background-active);color:var(--ifm-breadcrumb-color-active)}.breadcrumbs__link{border-radius:var(--ifm-breadcrumb-border-radius);font-size:calc(1rem*var(--ifm-breadcrumb-size-multiplier));padding:calc(var(--ifm-breadcrumb-padding-vertical)*var(--ifm-breadcrumb-size-multiplier)) calc(var(--ifm-breadcrumb-padding-horizontal)*var(--ifm-breadcrumb-size-multiplier));transition-duration:var(--ifm-transition-fast);transition-property:background,color}.breadcrumbs__link:any-link:hover,.breadcrumbs__link:link:hover,.breadcrumbs__link:visited:hover,area.breadcrumbs__link[href]:hover{background:var(--ifm-breadcrumb-item-background-active);text-decoration:none}.breadcrumbs--sm{--ifm-breadcrumb-size-multiplier:0.8}.breadcrumbs--lg{--ifm-breadcrumb-size-multiplier:1.2}.button{background-color:var(--ifm-button-background-color);border:var(--ifm-button-border-width) solid var(--ifm-button-border-color);border-radius:var(--ifm-button-border-radius);cursor:pointer;font-size:calc(.875rem*var(--ifm-button-size-multiplier));font-weight:var(--ifm-button-font-weight);line-height:1.5;padding:calc(var(--ifm-button-padding-vertical)*var(--ifm-button-size-multiplier)) calc(var(--ifm-button-padding-horizontal)*var(--ifm-button-size-multiplier));text-align:center;transition-duration:var(--ifm-button-transition-duration);transition-property:color,background,border-color;-webkit-user-select:none;user-select:none;white-space:nowrap}.button,.button:hover{color:var(--ifm-button-color)}.button--outline{--ifm-button-color:var(--ifm-button-border-color)}.button--outline:hover{--ifm-button-background-color:var(--ifm-button-border-color)}.button--link{--ifm-button-border-color:#0000;color:var(--ifm-link-color);text-decoration:var(--ifm-link-decoration)}.button--link.button--active,.button--link:active,.button--link:hover{color:var(--ifm-link-hover-color);text-decoration:var(--ifm-link-hover-decoration)}.button.disabled,.button:disabled,.button[disabled]{opacity:.65;pointer-events:none}.button--sm{--ifm-button-size-multiplier:0.8}.button--lg{--ifm-button-size-multiplier:1.35}.button--block{display:block;width:100%}.button.button--secondary{color:var(--ifm-color-gray-900)}:where(.button--primary){--ifm-button-background-color:var(--ifm-color-primary);--ifm-button-border-color:var(--ifm-color-primary)}:where(.button--primary):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-primary-dark);--ifm-button-border-color:var(--ifm-color-primary-dark)}.button--primary.button--active,.button--primary:active{--ifm-button-background-color:var(--ifm-color-primary-darker);--ifm-button-border-color:var(--ifm-color-primary-darker)}:where(.button--secondary){--ifm-button-background-color:var(--ifm-color-secondary);--ifm-button-border-color:var(--ifm-color-secondary)}:where(.button--secondary):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-secondary-dark);--ifm-button-border-color:var(--ifm-color-secondary-dark)}.button--secondary.button--active,.button--secondary:active{--ifm-button-background-color:var(--ifm-color-secondary-darker);--ifm-button-border-color:var(--ifm-color-secondary-darker)}:where(.button--success){--ifm-button-background-color:var(--ifm-color-success);--ifm-button-border-color:var(--ifm-color-success)}:where(.button--success):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-success-dark);--ifm-button-border-color:var(--ifm-color-success-dark)}.button--success.button--active,.button--success:active{--ifm-button-background-color:var(--ifm-color-success-darker);--ifm-button-border-color:var(--ifm-color-success-darker)}:where(.button--info){--ifm-button-background-color:var(--ifm-color-info);--ifm-button-border-color:var(--ifm-color-info)}:where(.button--info):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-info-dark);--ifm-button-border-color:var(--ifm-color-info-dark)}.button--info.button--active,.button--info:active{--ifm-button-background-color:var(--ifm-color-info-darker);--ifm-button-border-color:var(--ifm-color-info-darker)}:where(.button--warning){--ifm-button-background-color:var(--ifm-color-warning);--ifm-button-border-color:var(--ifm-color-warning)}:where(.button--warning):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-warning-dark);--ifm-button-border-color:var(--ifm-color-warning-dark)}.button--warning.button--active,.button--warning:active{--ifm-button-background-color:var(--ifm-color-warning-darker);--ifm-button-border-color:var(--ifm-color-warning-darker)}:where(.button--danger){--ifm-button-background-color:var(--ifm-color-danger);--ifm-button-border-color:var(--ifm-color-danger)}:where(.button--danger):not(.button--outline):hover{--ifm-button-background-color:var(--ifm-color-danger-dark);--ifm-button-border-color:var(--ifm-color-danger-dark)}.button--danger.button--active,.button--danger:active{--ifm-button-background-color:var(--ifm-color-danger-darker);--ifm-button-border-color:var(--ifm-color-danger-darker)}.button-group{display:inline-flex;gap:var(--ifm-button-group-spacing)}.button-group>.button:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.button-group>.button:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.button-group--block{display:flex;justify-content:stretch}.button-group--block>.button{flex-grow:1}.card{background-color:var(--ifm-card-background-color);border-radius:var(--ifm-card-border-radius);box-shadow:var(--ifm-global-shadow-lw);display:flex;flex-direction:column;overflow:hidden}.card__image{padding-top:var(--ifm-card-vertical-spacing)}.card__image:first-child{padding-top:0}.card__body,.card__footer,.card__header{padding:var(--ifm-card-vertical-spacing) var(--ifm-card-horizontal-spacing)}.card__body:not(:last-child),.card__footer:not(:last-child),.card__header:not(:last-child){padding-bottom:0}.card__body>:last-child,.card__footer>:last-child,.card__header>:last-child{margin-bottom:0}.card__footer{margin-top:auto}.table-of-contents{font-size:.8rem;margin-bottom:0;padding:var(--ifm-toc-padding-vertical) 0}.table-of-contents,.table-of-contents ul{list-style:none;padding-left:var(--ifm-toc-padding-horizontal)}.table-of-contents li{margin:var(--ifm-toc-padding-vertical) var(--ifm-toc-padding-horizontal)}.table-of-contents__left-border{border-left:1px solid var(--ifm-toc-border-color)}.table-of-contents__link{color:var(--ifm-toc-link-color);display:block}.table-of-contents__link--active,.table-of-contents__link--active code,.table-of-contents__link:hover,.table-of-contents__link:hover code{color:var(--ifm-color-primary);text-decoration:none}.close{color:var(--ifm-color-black);float:right;font-size:1.5rem;font-weight:var(--ifm-font-weight-bold);line-height:1;opacity:.5;padding:1rem;transition:opacity var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.close:hover{opacity:.7}.close:focus,.theme-code-block-highlighted-line .codeLineNumber_Tfdd:before{opacity:.8}.dropdown{display:inline-flex;font-weight:var(--ifm-dropdown-font-weight);position:relative;vertical-align:top}.dropdown--hoverable:hover .dropdown__menu,.dropdown--show .dropdown__menu{opacity:1;pointer-events:all;transform:translateY(-1px);visibility:visible}#nprogress,.dropdown__menu,.navbar__item.dropdown .navbar__link:not([href]){pointer-events:none}.dropdown--right .dropdown__menu{left:inherit;right:0}.dropdown--nocaret .navbar__link:after{content:none!important}.dropdown__menu{background-color:var(--ifm-dropdown-background-color);border-radius:var(--ifm-global-radius);box-shadow:var(--ifm-global-shadow-md);left:0;max-height:80vh;min-width:10rem;opacity:0;overflow-y:auto;padding:.5rem;position:absolute;top:calc(100% - var(--ifm-navbar-item-padding-vertical) + .3rem);transform:translateY(-.625rem);transition-duration:var(--ifm-transition-fast);transition-property:opacity,transform,visibility;transition-timing-function:var(--ifm-transition-timing-default);visibility:hidden;z-index:var(--ifm-z-index-dropdown)}.menu__caret,.menu__link,.menu__list-item-collapsible{border-radius:.25rem;transition:background var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.dropdown__link{border-radius:.25rem;color:var(--ifm-dropdown-link-color);display:block;font-size:.875rem;margin-top:.2rem;padding:.25rem .5rem;white-space:nowrap}.dropdown__link--active,.dropdown__link:hover{background-color:var(--ifm-dropdown-hover-background-color);color:var(--ifm-dropdown-link-color);text-decoration:none}.dropdown__link--active,.dropdown__link--active:hover{--ifm-dropdown-link-color:var(--ifm-link-color)}.dropdown>.navbar__link:after{border-color:currentcolor #0000;border-style:solid;border-width:.4em .4em 0;content:"";margin-left:.3em;position:relative;top:2px;transform:translateY(-50%)}.footer{background-color:var(--ifm-footer-background-color);color:var(--ifm-footer-color);padding:var(--ifm-footer-padding-vertical) var(--ifm-footer-padding-horizontal)}.footer--dark{--ifm-footer-background-color:#303846;--ifm-footer-color:var(--ifm-footer-link-color);--ifm-footer-link-color:var(--ifm-color-secondary);--ifm-footer-title-color:var(--ifm-color-white)}.footer__links{margin-bottom:1rem}.footer__link-item{color:var(--ifm-footer-link-color);line-height:2}.footer__link-item:hover{color:var(--ifm-footer-link-hover-color)}.footer__link-separator{margin:0 var(--ifm-footer-link-horizontal-spacing)}.footer__logo{margin-top:1rem;max-width:var(--ifm-footer-logo-max-width)}.footer__title{color:var(--ifm-footer-title-color);font:700 var(--ifm-h4-font-size)/var(--ifm-heading-line-height) var(--ifm-font-family-base);margin-bottom:var(--ifm-heading-margin-bottom)}.menu,.navbar__link{font-weight:var(--ifm-font-weight-semibold)}.docItemContainer_Djhp article>:first-child,.docItemContainer_Djhp header+*,.footer__item{margin-top:0}.admonitionContent_S0QG>:last-child,.cardContainer_fWXF :last-child,.collapsibleContent_i85q>:last-child,.footer__items,.tabItem_Ymn6>:last-child{margin-bottom:0}.codeBlockStandalone_MEMb,[type=checkbox]{padding:0}.hero{align-items:center;background-color:var(--ifm-hero-background-color);color:var(--ifm-hero-text-color);display:flex;padding:4rem 2rem}.hero--primary{--ifm-hero-background-color:var(--ifm-color-primary);--ifm-hero-text-color:var(--ifm-font-color-base-inverse)}.hero--dark{--ifm-hero-background-color:#303846;--ifm-hero-text-color:var(--ifm-color-white)}.hero__title{font-size:3rem}.hero__subtitle{font-size:1.5rem}.menu__list{margin:0;padding-left:0}.menu__caret,.menu__link{padding:var(--ifm-menu-link-padding-vertical) var(--ifm-menu-link-padding-horizontal)}.menu__list .menu__list{flex:0 0 100%;margin-top:.25rem;padding-left:var(--ifm-menu-link-padding-horizontal)}.menu__list-item:not(:first-child){margin-top:.25rem}.menu__list-item--collapsed .menu__list{height:0;overflow:hidden}.details_lb9f[data-collapsed=false].isBrowser_bmU9>summary:before,.details_lb9f[open]:not(.isBrowser_bmU9)>summary:before,.menu__list-item--collapsed .menu__caret:before,.menu__list-item--collapsed .menu__link--sublist:after{transform:rotate(90deg)}.menu__list-item-collapsible{display:flex;flex-wrap:wrap;position:relative}.menu__caret:hover,.menu__link:hover,.menu__list-item-collapsible--active,.menu__list-item-collapsible:hover{background:var(--ifm-menu-color-background-hover)}.menu__list-item-collapsible .menu__link--active,.menu__list-item-collapsible .menu__link:hover{background:none!important}.menu__caret,.menu__link{align-items:center;display:flex}.menu__link{color:var(--ifm-menu-color);flex:1;line-height:1.25}.menu__link:hover{color:var(--ifm-menu-color);text-decoration:none}.menu__caret:before,.menu__link--sublist-caret:after{height:1.25rem;transform:rotate(180deg);transition:transform var(--ifm-transition-fast) linear;width:1.25rem;filter:var(--ifm-menu-link-sublist-icon-filter);content:""}.menu__link--sublist-caret:after{background:var(--ifm-menu-link-sublist-icon) 50%/2rem 2rem;margin-left:auto;min-width:1.25rem}.menu__link--active,.menu__link--active:hover{color:var(--ifm-menu-color-active)}.navbar__brand,.navbar__link{color:var(--ifm-navbar-link-color)}.menu__link--active:not(.menu__link--sublist){background-color:var(--ifm-menu-color-background-active)}.menu__caret:before{background:var(--ifm-menu-link-sublist-icon) 50%/2rem 2rem}.navbar--dark,html[data-theme=dark]{--ifm-menu-link-sublist-icon-filter:invert(100%) sepia(94%) saturate(17%) hue-rotate(223deg) brightness(104%) contrast(98%)}.navbar{background-color:var(--ifm-navbar-background-color);box-shadow:var(--ifm-navbar-shadow);height:var(--ifm-navbar-height);padding:var(--ifm-navbar-padding-vertical) var(--ifm-navbar-padding-horizontal)}.docsWrapper_BCFX,.navbar,.navbar>.container,.navbar>.container-fluid{display:flex}.navbar--fixed-top{position:sticky;top:0;z-index:var(--ifm-z-index-fixed)}.navbar-sidebar,.navbar-sidebar__backdrop{bottom:0;opacity:0;position:fixed;transition-timing-function:ease-in-out;left:0;top:0;visibility:hidden}.announcementBar_mb4j,.skipToContent_fXgn{z-index:calc(var(--ifm-z-index-fixed) + 1)}.navbar__inner{display:flex;flex-wrap:wrap;justify-content:space-between;width:100%}.navbar__brand{align-items:center;display:flex;margin-right:1rem;min-width:0}.navbar__brand:hover{color:var(--ifm-navbar-link-hover-color);text-decoration:none}.announcementBarContent_xLdY,.navbar__title{flex:1 1 auto}.navbar__toggle{display:none;margin-right:.5rem}.navbar__logo{flex:0 0 auto;height:2rem;margin-right:.5rem}.navbar__items{align-items:center;display:flex;flex:1;min-width:0}.navbar__items--center{flex:0 0 auto}.navbar__items--center .navbar__brand{margin:0}.navbar__items--center+.navbar__items--right{flex:1}.navbar__items--right{flex:0 0 auto;justify-content:flex-end}.navbar__items--right>:last-child{padding-right:0}.navbar__item{display:inline-block;padding:var(--ifm-navbar-item-padding-vertical) var(--ifm-navbar-item-padding-horizontal)}.navbar__link--active,.navbar__link:hover{color:var(--ifm-navbar-link-hover-color);text-decoration:none}.navbar--dark,.navbar--primary{--ifm-menu-color:var(--ifm-color-gray-300);--ifm-navbar-link-color:var(--ifm-color-gray-100);--ifm-navbar-search-input-background-color:#ffffff1a;--ifm-navbar-search-input-placeholder-color:#ffffff80;color:var(--ifm-color-white)}.navbar--dark{--ifm-navbar-background-color:#242526;--ifm-menu-color-background-active:#ffffff0d;--ifm-navbar-search-input-color:var(--ifm-color-white)}.navbar--primary{--ifm-navbar-background-color:var(--ifm-color-primary);--ifm-navbar-link-hover-color:var(--ifm-color-white);--ifm-menu-color-active:var(--ifm-color-white);--ifm-navbar-search-input-color:var(--ifm-color-emphasis-500)}.navbar__search-input{-webkit-appearance:none;appearance:none;background:var(--ifm-navbar-search-input-background-color) var(--ifm-navbar-search-input-icon) no-repeat .75rem center/1rem 1rem;border:none;border-radius:2rem;color:var(--ifm-navbar-search-input-color);cursor:text;display:inline-block;font-size:.9rem;height:2rem;padding:0 .5rem 0 2.25rem;width:12.5rem}.navbar__search-input::placeholder{color:var(--ifm-navbar-search-input-placeholder-color)}.navbar-sidebar{background-color:var(--ifm-navbar-background-color);box-shadow:var(--ifm-global-shadow-md);transform:translate3d(-100%,0,0);transition-duration:.25s;transition-property:opacity,visibility,transform;width:var(--ifm-navbar-sidebar-width)}.navbar-sidebar--show .navbar-sidebar,.navbar-sidebar__items{transform:translateZ(0)}.navbar-sidebar--show .navbar-sidebar,.navbar-sidebar--show .navbar-sidebar__backdrop{opacity:1;visibility:visible}.navbar-sidebar__backdrop{background-color:#0009;right:0;transition-duration:.1s;transition-property:opacity,visibility}.navbar-sidebar__brand{align-items:center;box-shadow:var(--ifm-navbar-shadow);display:flex;flex:1;height:var(--ifm-navbar-height);padding:var(--ifm-navbar-padding-vertical) var(--ifm-navbar-padding-horizontal)}.navbar-sidebar__items{display:flex;height:calc(100% - var(--ifm-navbar-height));transition:transform var(--ifm-transition-fast) ease-in-out}.navbar-sidebar__items--show-secondary{transform:translate3d(calc((var(--ifm-navbar-sidebar-width))*-1),0,0)}.navbar-sidebar__item{flex-shrink:0;padding:.5rem;width:calc(var(--ifm-navbar-sidebar-width))}.navbar-sidebar__back{background:var(--ifm-menu-color-background-active);font-size:15px;font-weight:var(--ifm-button-font-weight);margin:0 0 .2rem -.5rem;padding:.6rem 1.5rem;position:relative;text-align:left;top:-.5rem;width:calc(100% + 1rem)}.navbar-sidebar__close{display:flex;margin-left:auto}.pagination{column-gap:var(--ifm-pagination-page-spacing);display:flex;font-size:var(--ifm-pagination-font-size);padding-left:0}.pagination--sm{--ifm-pagination-font-size:0.8rem;--ifm-pagination-padding-horizontal:0.8rem;--ifm-pagination-padding-vertical:0.2rem}.pagination--lg{--ifm-pagination-font-size:1.2rem;--ifm-pagination-padding-horizontal:1.2rem;--ifm-pagination-padding-vertical:0.3rem}.pagination__item{display:inline-flex}.pagination__item>span{padding:var(--ifm-pagination-padding-vertical)}.pagination__item--active .pagination__link{color:var(--ifm-pagination-color-active)}.pagination__item--active .pagination__link,.pagination__item:not(.pagination__item--active):hover .pagination__link{background:var(--ifm-pagination-item-active-background)}.pagination__item--disabled,.pagination__item[disabled]{opacity:.25;pointer-events:none}.pagination__link{border-radius:var(--ifm-pagination-border-radius);color:var(--ifm-font-color-base);display:inline-block;padding:var(--ifm-pagination-padding-vertical) var(--ifm-pagination-padding-horizontal);transition:background var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.pagination__link:hover{text-decoration:none}.pagination-nav{grid-gap:var(--ifm-spacing-horizontal);display:grid;gap:var(--ifm-spacing-horizontal);grid-template-columns:repeat(2,1fr)}.pagination-nav__link{border:1px solid var(--ifm-color-emphasis-300);border-radius:var(--ifm-pagination-nav-border-radius);display:block;height:100%;line-height:var(--ifm-heading-line-height);padding:var(--ifm-global-spacing);transition:border-color var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.pagination-nav__link:hover{border-color:var(--ifm-pagination-nav-color-hover);text-decoration:none}.pagination-nav__link--next{grid-column:2/3;text-align:right}.pagination-nav__label{font-size:var(--ifm-h4-font-size);font-weight:var(--ifm-heading-font-weight);word-break:break-word}.pagination-nav__link--prev .pagination-nav__label:before{content:"« "}.pagination-nav__link--next .pagination-nav__label:after{content:" »"}.pagination-nav__sublabel{color:var(--ifm-color-content-secondary);font-size:var(--ifm-h5-font-size);font-weight:var(--ifm-font-weight-semibold);margin-bottom:.25rem}.pills__item,.tabs{font-weight:var(--ifm-font-weight-bold)}.pills{display:flex;gap:var(--ifm-pills-spacing);padding-left:0}.pills__item{border-radius:.5rem;cursor:pointer;display:inline-block;padding:.25rem 1rem;transition:background var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.tabs,:not(.containsTaskList_mC6p>li)>.containsTaskList_mC6p{padding-left:0}.pills__item--active{color:var(--ifm-pills-color-active)}.pills__item--active,.pills__item:not(.pills__item--active):hover{background:var(--ifm-pills-color-background-active)}.pills--block{justify-content:stretch}.pills--block .pills__item{flex-grow:1;text-align:center}.tabs{color:var(--ifm-tabs-color);display:flex;margin-bottom:0;overflow-x:auto}.tabs__item{border-bottom:3px solid #0000;border-radius:var(--ifm-global-radius);cursor:pointer;display:inline-flex;padding:var(--ifm-tabs-padding-vertical) var(--ifm-tabs-padding-horizontal);transition:background-color var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.tabs__item--active{border-bottom-color:var(--ifm-tabs-color-active-border);border-bottom-left-radius:0;border-bottom-right-radius:0;color:var(--ifm-tabs-color-active)}.tabs__item:hover{background-color:var(--ifm-hover-overlay)}.tabs--block{justify-content:stretch}.tabs--block .tabs__item{flex-grow:1;justify-content:center}html[data-theme=dark]{--ifm-color-scheme:dark;--ifm-color-emphasis-0:var(--ifm-color-gray-1000);--ifm-color-emphasis-100:var(--ifm-color-gray-900);--ifm-color-emphasis-200:var(--ifm-color-gray-800);--ifm-color-emphasis-300:var(--ifm-color-gray-700);--ifm-color-emphasis-400:var(--ifm-color-gray-600);--ifm-color-emphasis-600:var(--ifm-color-gray-400);--ifm-color-emphasis-700:var(--ifm-color-gray-300);--ifm-color-emphasis-800:var(--ifm-color-gray-200);--ifm-color-emphasis-900:var(--ifm-color-gray-100);--ifm-color-emphasis-1000:var(--ifm-color-gray-0);--ifm-background-color:#1b1b1d;--ifm-background-surface-color:#242526;--ifm-hover-overlay:#ffffff0d;--ifm-color-content:#e3e3e3;--ifm-color-content-secondary:#fff;--ifm-breadcrumb-separator-filter:invert(64%) sepia(11%) saturate(0%) hue-rotate(149deg) brightness(99%) contrast(95%);--ifm-code-background:#ffffff1a;--ifm-scrollbar-track-background-color:#444;--ifm-scrollbar-thumb-background-color:#686868;--ifm-scrollbar-thumb-hover-background-color:#7a7a7a;--ifm-table-stripe-background:#ffffff12;--ifm-toc-border-color:var(--ifm-color-emphasis-200);--ifm-color-primary-contrast-background:#102445;--ifm-color-primary-contrast-foreground:#ebf2fc;--ifm-color-secondary-contrast-background:#474748;--ifm-color-secondary-contrast-foreground:#fdfdfe;--ifm-color-success-contrast-background:#003100;--ifm-color-success-contrast-foreground:#e6f6e6;--ifm-color-info-contrast-background:#193c47;--ifm-color-info-contrast-foreground:#eef9fd;--ifm-color-warning-contrast-background:#4d3800;--ifm-color-warning-contrast-foreground:#fff8e6;--ifm-color-danger-contrast-background:#4b1113;--ifm-color-danger-contrast-foreground:#ffebec}#nprogress .bar{background:var(--docusaurus-progress-bar-color);height:2px;left:0;position:fixed;top:0;width:100%;z-index:1031}#nprogress .peg{box-shadow:0 0 10px var(--docusaurus-progress-bar-color),0 0 5px var(--docusaurus-progress-bar-color);height:100%;opacity:1;position:absolute;right:0;transform:rotate(3deg) translateY(-4px);width:100px}[data-theme=dark]{--ifm-color-primary:#25c2a0;--ifm-color-primary-dark:#21af90;--ifm-color-primary-darker:#1fa588;--ifm-color-primary-darkest:#1a8870;--ifm-color-primary-light:#29d5b0;--ifm-color-primary-lighter:#32d8b4;--ifm-color-primary-lightest:#4fddbf;--docusaurus-highlighted-code-line-bg:#0000004d}body:not(.navigation-with-keyboard) :not(input):focus{outline:0}#docusaurus-base-url-issue-banner-container,.collapseSidebarButton_PEFL,.docSidebarContainer_b6E3,.sidebarLogo_isFc,.themedImage_ToTc,[data-theme=dark] .lightToggleIcon_pyhR,[data-theme=light] .darkToggleIcon_wfgR,html[data-announcement-bar-initially-dismissed=true] .announcementBar_mb4j{display:none}.skipToContent_fXgn{background-color:var(--ifm-background-surface-color);color:var(--ifm-color-emphasis-900);left:100%;padding:calc(var(--ifm-global-spacing)/2) var(--ifm-global-spacing);position:fixed;top:1rem}.skipToContent_fXgn:focus{box-shadow:var(--ifm-global-shadow-md);left:1rem}.closeButton_CVFx{line-height:0;padding:0}.content_knG7{font-size:85%;padding:5px 0;text-align:center}.content_knG7 a{color:inherit;text-decoration:underline}.announcementBar_mb4j{align-items:center;background-color:var(--ifm-color-white);box-shadow:var(--ifm-global-shadow-lw);color:var(--ifm-color-black);display:flex;height:var(--docusaurus-announcement-bar-height)}.announcementBarPlaceholder_vyr4{flex:0 0 10px}.announcementBarClose_gvF7{align-self:stretch;flex:0 0 30px}.toggle_vylO{height:2rem;width:2rem}.toggleButton_gllP{align-items:center;border-radius:50%;display:flex;height:100%;justify-content:center;transition:background var(--ifm-transition-fast);width:100%}.toggleButton_gllP:hover{background:var(--ifm-color-emphasis-200)}.toggleButtonDisabled_aARS{cursor:not-allowed}[data-theme=dark] .themedImage--dark_i4oU,[data-theme=light] .themedImage--light_HNdA{display:initial}.iconExternalLink_nPIU{margin-left:.3rem}.iconLanguage_nlXk{margin-right:5px;vertical-align:text-bottom}.navbarHideable_m1mJ{transition:transform var(--ifm-transition-fast) ease}.navbarHidden_jGov{transform:translate3d(0,calc(-100% - 2px),0)}.footerLogoLink_BH7S{opacity:.5;transition:opacity var(--ifm-transition-fast) var(--ifm-transition-timing-default)}.footerLogoLink_BH7S:hover,.hash-link:focus,:hover>.hash-link{opacity:1}.mainWrapper_z2l0{flex:1 0 auto}.docusaurus-mt-lg{margin-top:3rem}#__docusaurus{display:flex;flex-direction:column;min-height:100%}.cardContainer_fWXF{--ifm-link-color:var(--ifm-color-emphasis-800);--ifm-link-hover-color:var(--ifm-color-emphasis-700);--ifm-link-hover-decoration:none;border:1px solid var(--ifm-color-emphasis-200);box-shadow:0 1.5px 3px 0 #00000026;transition:all var(--ifm-transition-fast) ease;transition-property:border,box-shadow}.cardContainer_fWXF:hover{border-color:var(--ifm-color-primary);box-shadow:0 3px 6px 0 #0003}.cardTitle_rnsV{font-size:1.2rem}.cardDescription_PWke{font-size:.8rem}.iconEdit_Z9Sw{margin-right:.3em;vertical-align:sub}.tag_zVej{border:1px solid var(--docusaurus-tag-list-border);transition:border var(--ifm-transition-fast)}.tag_zVej:hover{--docusaurus-tag-list-border:var(--ifm-link-color);text-decoration:none}.tagRegular_sFm0{border-radius:.5rem;font-size:90%;padding:.2rem .5rem .3rem}.tagWithCount_h2kH{align-items:center;border-left:0;display:flex;padding:0 .5rem 0 1rem;position:relative}.tagWithCount_h2kH:after,.tagWithCount_h2kH:before{border:1px solid var(--docusaurus-tag-list-border);content:"";position:absolute;top:50%;transition:inherit}.tagWithCount_h2kH:before{border-bottom:0;border-right:0;height:1.18rem;right:100%;transform:translate(50%,-50%) rotate(-45deg);width:1.18rem}.tagWithCount_h2kH:after{border-radius:50%;height:.5rem;left:0;transform:translateY(-50%);width:.5rem}.tagWithCount_h2kH span{background:var(--ifm-color-secondary);border-radius:var(--ifm-global-radius);color:var(--ifm-color-black);font-size:.7rem;line-height:1.2;margin-left:.3rem;padding:.1rem .4rem}.tags_jXut{display:inline}.tag_QGVx{display:inline-block;margin:0 .4rem .5rem 0}.lastUpdated_vwxv{font-size:smaller;font-style:italic;margin-top:.2rem}.tocCollapsibleButton_TO0P{align-items:center;display:flex;font-size:inherit;justify-content:space-between;padding:.4rem .8rem;width:100%}.tocCollapsibleButton_TO0P:after{background:var(--ifm-menu-link-sublist-icon) 50% 50%/2rem 2rem no-repeat;content:"";filter:var(--ifm-menu-link-sublist-icon-filter);height:1.25rem;transform:rotate(180deg);transition:transform var(--ifm-transition-fast);width:1.25rem}.tocCollapsibleButtonExpanded_MG3E:after,.tocCollapsibleExpanded_sAul{transform:none}.tocCollapsible_ETCw{background-color:var(--ifm-menu-color-background-active);border-radius:var(--ifm-global-radius);margin:1rem 0}.tocCollapsibleContent_vkbj>ul{border-left:none;border-top:1px solid var(--ifm-color-emphasis-300);font-size:15px;padding:.2rem 0}.tocCollapsibleContent_vkbj ul li{margin:.4rem .8rem}.tocCollapsibleContent_vkbj a{display:block}.backToTopButton_sjWU{background-color:var(--ifm-color-emphasis-200);border-radius:50%;bottom:1.3rem;box-shadow:var(--ifm-global-shadow-lw);height:3rem;opacity:0;position:fixed;right:1.3rem;transform:scale(0);transition:all var(--ifm-transition-fast) var(--ifm-transition-timing-default);visibility:hidden;width:3rem;z-index:calc(var(--ifm-z-index-fixed) - 1)}.backToTopButton_sjWU:after{background-color:var(--ifm-color-emphasis-1000);content:" ";display:inline-block;height:100%;-webkit-mask:var(--ifm-menu-link-sublist-icon) 50%/2rem 2rem no-repeat;mask:var(--ifm-menu-link-sublist-icon) 50%/2rem 2rem no-repeat;width:100%}.backToTopButtonShow_xfvO{opacity:1;transform:scale(1);visibility:visible}[data-theme=dark]:root{--docusaurus-collapse-button-bg:#ffffff0d;--docusaurus-collapse-button-bg-hover:#ffffff1a}.docMainContainer_gTbr,.docPage__5DB{display:flex;width:100%}.heroBanner_qdFl{overflow:hidden;padding:4rem 0;position:relative;text-align:center}.buttons_AeoN{align-items:center;display:flex;justify-content:center}.description_meEo{font-size:24px;margin:32px auto;text-align:center;width:65%}.features_cAfv{flex-wrap:wrap;margin:10px auto 80px}.feature_xuHn,.features_cAfv{display:flex;justify-content:center}.feature_xuHn{--feature-size:220px;align-items:center;background:#ffffff14;border:1px solid #ffffff2e;border-radius:16px;box-shadow:0 4px 30px #0000001a;font-size:16px;font-weight:700;height:var(--feature-size);margin:10px;padding:12px;text-align:center;transition:.25s;width:var(--feature-size)}.buttonGroup__atx button,.codeBlockContainer_Ckt0{background:var(--prism-background-color);color:var(--prism-color)}.feature_xuHn:hover{background:#ffffff1f}.codeBlockContainer_Ckt0{border-radius:var(--ifm-code-border-radius);box-shadow:var(--ifm-global-shadow-lw);margin-bottom:var(--ifm-leading)}.codeBlockContent_biex{border-radius:inherit;direction:ltr;position:relative}.codeBlockTitle_Ktv7{border-bottom:1px solid var(--ifm-color-emphasis-300);border-top-left-radius:inherit;border-top-right-radius:inherit;font-size:var(--ifm-code-font-size);font-weight:500;padding:.75rem var(--ifm-pre-padding)}.codeBlock_bY9V{--ifm-pre-background:var(--prism-background-color);margin:0;padding:0}.codeBlockTitle_Ktv7+.codeBlockContent_biex .codeBlock_bY9V{border-top-left-radius:0;border-top-right-radius:0}.codeBlockLines_e6Vv{float:left;font:inherit;min-width:100%;padding:var(--ifm-pre-padding)}.codeBlockLinesWithNumbering_o6Pm{display:table;padding:var(--ifm-pre-padding) 0}.buttonGroup__atx{column-gap:.2rem;display:flex;position:absolute;right:calc(var(--ifm-pre-padding)/2);top:calc(var(--ifm-pre-padding)/2)}.buttonGroup__atx button{align-items:center;border:1px solid var(--ifm-color-emphasis-300);border-radius:var(--ifm-global-radius);display:flex;line-height:0;opacity:0;padding:.4rem;transition:opacity .2s ease-in-out}.buttonGroup__atx button:focus-visible,.buttonGroup__atx button:hover{opacity:1!important}.theme-code-block:hover .buttonGroup__atx button{opacity:.4}:where(:root){--docusaurus-highlighted-code-line-bg:#484d5b}:where([data-theme=dark]){--docusaurus-highlighted-code-line-bg:#646464}.theme-code-block-highlighted-line{background-color:var(--docusaurus-highlighted-code-line-bg);display:block;margin:0 calc(var(--ifm-pre-padding)*-1);padding:0 var(--ifm-pre-padding)}.codeLine_lJS_{counter-increment:a;display:table-row}.codeLineNumber_Tfdd{background:var(--ifm-pre-background);display:table-cell;left:0;overflow-wrap:normal;padding:0 var(--ifm-pre-padding);position:sticky;text-align:right;width:1%}.codeLineNumber_Tfdd:before{content:counter(a);opacity:.4}.codeLineContent_feaV{padding-right:var(--ifm-pre-padding)}.theme-code-block:hover .copyButtonCopied_obH4{opacity:1!important}.copyButtonIcons_eSgA{height:1.125rem;position:relative;width:1.125rem}.copyButtonIcon_y97N,.copyButtonSuccessIcon_LjdS{fill:currentColor;height:inherit;left:0;opacity:inherit;position:absolute;top:0;transition:.15s;width:inherit}.copyButtonSuccessIcon_LjdS{color:#00d600;left:50%;opacity:0;top:50%;transform:translate(-50%,-50%) scale(.33)}.copyButtonCopied_obH4 .copyButtonIcon_y97N{opacity:0;transform:scale(.33)}.copyButtonCopied_obH4 .copyButtonSuccessIcon_LjdS{opacity:1;transform:translate(-50%,-50%) scale(1);transition-delay:75ms}.wordWrapButtonIcon_Bwma{height:1.2rem;width:1.2rem}.details_lb9f{--docusaurus-details-summary-arrow-size:0.38rem;--docusaurus-details-transition:transform 200ms ease;--docusaurus-details-decoration-color:grey}.details_lb9f>summary{cursor:pointer;padding-left:1rem;position:relative}.details_lb9f>summary::-webkit-details-marker{display:none}.details_lb9f>summary:before{border-color:#0000 #0000 #0000 var(--docusaurus-details-decoration-color);border-style:solid;border-width:var(--docusaurus-details-summary-arrow-size);content:"";left:0;position:absolute;top:.45rem;transform:rotate(0);transform-origin:calc(var(--docusaurus-details-summary-arrow-size)/2) 50%;transition:var(--docusaurus-details-transition)}.collapsibleContent_i85q{border-top:1px solid var(--docusaurus-details-decoration-color);margin-top:1rem;padding-top:1rem}.details_b_Ee{--docusaurus-details-decoration-color:var(--ifm-alert-border-color);--docusaurus-details-transition:transform var(--ifm-transition-fast) ease;border:1px solid var(--ifm-alert-border-color);margin:0 0 var(--ifm-spacing-vertical)}.anchorWithStickyNavbar_LWe7{scroll-margin-top:calc(var(--ifm-navbar-height) + .5rem)}.anchorWithHideOnScrollNavbar_WYt5{scroll-margin-top:.5rem}.hash-link{opacity:0;padding-left:.5rem;transition:opacity var(--ifm-transition-fast);-webkit-user-select:none;user-select:none}.hash-link:before{content:"#"}.img_ev3q{height:auto}.tableOfContents_bqdL{max-height:calc(100vh - var(--ifm-navbar-height) - 2rem);overflow-y:auto;position:sticky;top:calc(var(--ifm-navbar-height) + 1rem)}.admonition_LlT9{margin-bottom:1em}.admonitionHeading_tbUL{font:var(--ifm-heading-font-weight) var(--ifm-h5-font-size)/var(--ifm-heading-line-height) var(--ifm-heading-font-family);margin-bottom:.3rem}.admonitionHeading_tbUL code{text-transform:none}.admonitionIcon_kALy{display:inline-block;margin-right:.4em;vertical-align:middle}.admonitionIcon_kALy svg{fill:var(--ifm-alert-foreground-color);display:inline-block;height:1.6em;width:1.6em}.breadcrumbsContainer_Z_bl{--ifm-breadcrumb-size-multiplier:0.8;margin-bottom:.8rem}.breadcrumbHomeIcon_OVgt{height:1.1rem;position:relative;top:1px;vertical-align:top;width:1.1rem}.title_kItE{--ifm-h1-font-size:3rem;margin-bottom:calc(var(--ifm-leading)*1.25)}.mdxPageWrapper_j9I6{justify-content:center}@media (min-width:997px){.collapseSidebarButton_PEFL,.expandButton_m80_{background-color:var(--docusaurus-collapse-button-bg);position:sticky}:root{--docusaurus-announcement-bar-height:30px}.announcementBarClose_gvF7,.announcementBarPlaceholder_vyr4{flex-basis:50px}.searchBox_ZlJk{padding:var(--ifm-navbar-item-padding-vertical) var(--ifm-navbar-item-padding-horizontal)}.lastUpdated_vwxv{text-align:right}.tocMobile_ITEo{display:none}.collapseSidebarButton_PEFL{border:1px solid var(--ifm-toc-border-color);border-radius:0;bottom:0;display:block!important;height:40px}.collapseSidebarButtonIcon_kv0_{margin-top:4px;transform:rotate(180deg)}.expandButtonIcon_BlDH,[dir=rtl] .collapseSidebarButtonIcon_kv0_{transform:rotate(0)}.collapseSidebarButton_PEFL:focus,.collapseSidebarButton_PEFL:hover,.expandButton_m80_:focus,.expandButton_m80_:hover{background-color:var(--docusaurus-collapse-button-bg-hover)}.menuHtmlItem_M9Kj{padding:var(--ifm-menu-link-padding-vertical) var(--ifm-menu-link-padding-horizontal)}.menu_SIkG{flex-grow:1;padding:.5rem}@supports (scrollbar-gutter:stable){.menu_SIkG{padding:.5rem 0 .5rem .5rem;scrollbar-gutter:stable}}.menuWithAnnouncementBar_GW3s{margin-bottom:var(--docusaurus-announcement-bar-height)}.sidebar_njMd{display:flex;flex-direction:column;height:100%;max-height:100vh;padding-top:var(--ifm-navbar-height);position:sticky;top:0;transition:opacity 50ms;width:var(--doc-sidebar-width)}.sidebarWithHideableNavbar_wUlq{padding-top:0}.sidebarHidden_VK0M{height:0;opacity:0;overflow:hidden;visibility:hidden}.sidebarLogo_isFc{align-items:center;color:inherit!important;display:flex!important;margin:0 var(--ifm-navbar-padding-horizontal);max-height:var(--ifm-navbar-height);min-height:var(--ifm-navbar-height);text-decoration:none!important}.sidebarLogo_isFc img{height:2rem;margin-right:.5rem}.expandButton_m80_{align-items:center;display:flex;height:100%;justify-content:center;max-height:100vh;top:0;transition:background-color var(--ifm-transition-fast) ease}[dir=rtl] .expandButtonIcon_BlDH{transform:rotate(180deg)}.docSidebarContainer_b6E3{border-right:1px solid var(--ifm-toc-border-color);-webkit-clip-path:inset(0);clip-path:inset(0);display:block;margin-top:calc(var(--ifm-navbar-height)*-1);transition:width var(--ifm-transition-fast) ease;width:var(--doc-sidebar-width);will-change:width}.docSidebarContainerHidden_b3ry{cursor:pointer;width:var(--doc-sidebar-hidden-width)}.docMainContainer_gTbr{flex-grow:1;max-width:calc(100% - var(--doc-sidebar-width))}.docMainContainerEnhanced_Uz_u{max-width:calc(100% - var(--doc-sidebar-hidden-width))}.docItemWrapperEnhanced_czyv{max-width:calc(var(--ifm-container-width) + var(--doc-sidebar-width))!important}.docItemCol_VOVn,.generatedIndexPage_vN6x{max-width:75%!important}.list_eTzJ article:nth-last-child(-n+2){margin-bottom:0!important}}@media (min-width:1440px){.container{max-width:var(--ifm-container-width-xl)}}@media (max-width:996px){.col{--ifm-col-width:100%;flex-basis:var(--ifm-col-width);margin-left:0}.footer{--ifm-footer-padding-horizontal:0}.colorModeToggle_DEke,.footer__link-separator,.navbar__item,.tableOfContents_bqdL{display:none}.footer__col{margin-bottom:calc(var(--ifm-spacing-vertical)*3)}.footer__link-item{display:block}.hero{padding-left:0;padding-right:0}.navbar>.container,.navbar>.container-fluid{padding:0}.navbar__toggle{display:inherit}.navbar__search-input{width:9rem}.pills--block,.tabs--block{flex-direction:column}.searchBox_ZlJk{position:absolute;right:var(--ifm-navbar-padding-horizontal)}.docItemContainer_F8PC{padding:0 .3rem}}@media screen and (max-width:996px){.heroBanner_qdFl{padding:2rem}}@media (max-width:576px){.markdown h1:first-child{--ifm-h1-font-size:2rem}.markdown>h2{--ifm-h2-font-size:1.5rem}.markdown>h3{--ifm-h3-font-size:1.25rem}}@media (hover:hover){.backToTopButton_sjWU:hover{background-color:var(--ifm-color-emphasis-300)}}@media (pointer:fine){.thin-scrollbar{scrollbar-width:thin}.thin-scrollbar::-webkit-scrollbar{height:var(--ifm-scrollbar-size);width:var(--ifm-scrollbar-size)}.thin-scrollbar::-webkit-scrollbar-track{background:var(--ifm-scrollbar-track-background-color);border-radius:10px}.thin-scrollbar::-webkit-scrollbar-thumb{background:var(--ifm-scrollbar-thumb-background-color);border-radius:10px}.thin-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--ifm-scrollbar-thumb-hover-background-color)}}@media print{.announcementBar_mb4j,.footer,.menu,.navbar,.pagination-nav,.table-of-contents,.tocMobile_ITEo{display:none}.tabs{page-break-inside:avoid}.codeBlockLines_e6Vv{white-space:pre-wrap}} \ No newline at end of file diff --git a/assets/images/clean-architecture-horizontal2-89d7350d193766d81f16643008c28a16.png b/assets/images/clean-architecture-horizontal2-89d7350d193766d81f16643008c28a16.png new file mode 100644 index 0000000000000000000000000000000000000000..4d62e56142ecaeba253b18a8c5c42952cf0497d5 GIT binary patch literal 163138 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

8vLYEmx27djZNLNQiP;plz`TMSzNev_a8GXG2LA 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

<$v-k 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

9K;Hh6mciG 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 H+jQ}Iq_CmbLm_r`6$QpH%IhnEM2VHA-o31d9t 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�>*QKZyn|`t@3>L@bZf(0(mt)hC0AaXAVy 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

8qISKrWX2ycmN9^uPu84MXESTM#da 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

lXCVs^emW4QZq_G=H(w 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 bpgiHle@S^{ar+G=K>8Tym}tMbhK&3l&M3+< literal 0 HcmV?d00001 diff --git a/assets/images/fast-api-4ed5595066ba8b486810824e9770c6eb.png b/assets/images/fast-api-4ed5595066ba8b486810824e9770c6eb.png new file mode 100644 index 0000000000000000000000000000000000000000..10bf7bd190fdd4bde9d7524a23c59006bb2ba7b5 GIT binary patch literal 46261 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 F`X45A@8AFc literal 0 HcmV?d00001 diff --git a/assets/images/features-a73ae32cb4391fdd586e23d450e6f2d7.png b/assets/images/features-a73ae32cb4391fdd586e23d450e6f2d7.png new file mode 100644 index 0000000000000000000000000000000000000000..754c8d0cea2e299fc42135a4b4ef0bf86f5fc190 GIT binary patch literal 268941 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

^t7| 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 QCjOX=gu=CKF{20n4{t.exports=JSON.parse('{"title":"Running","slug":"/category/running","permalink":"/template-fastapi-react/docs/category/running","navigation":{"previous":{"title":"How to do something","permalink":"/template-fastapi-react/docs/about/how-to/how-to-do-something"},"next":{"title":"Prerequisites","permalink":"/template-fastapi-react/docs/about/running/prerequisites"}}}')}}]); \ No newline at end of file diff --git a/assets/js/06314cb9.e2de962b.js b/assets/js/06314cb9.e2de962b.js new file mode 100644 index 00000000..96c83476 --- /dev/null +++ b/assets/js/06314cb9.e2de962b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[297],{8793:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>d,contentTitle:()=>r,default:()=>c,frontMatter:()=>s,metadata:()=>o,toc:()=>u});var i=n(7462),a=(n(7294),n(3905));n(1839);const s={sidebar_position:4},r="Securing endpoints",o={unversionedId:"contribute/development-guide/coding/extending-the-api/adding-features/securing-endpoints",id:"contribute/development-guide/coding/extending-the-api/adding-features/securing-endpoints",title:"Securing endpoints",description:"The REST API (i.e. python FastAPI server) has access to, and is responsible for serving, data that could be private. Therefore we need to validate that the request is coming from an authenticated client.",source:"@site/docs/contribute/development-guide/coding/extending-the-api/adding-features/03-securing-endpoints.md",sourceDirName:"contribute/development-guide/coding/extending-the-api/adding-features",slug:"/contribute/development-guide/coding/extending-the-api/adding-features/securing-endpoints",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/securing-endpoints",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/contribute/development-guide/coding/extending-the-api/adding-features/03-securing-endpoints.md",tags:[],version:"current",sidebarPosition:4,frontMatter:{sidebar_position:4},sidebar:"contribute",previous:{title:"Use cases",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/use-cases"},next:{title:"Generate API clients",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/generate-api-clients"}},d={},u=[],p={toc:u};function c(e){let{components:t,...n}=e;return(0,a.kt)("wrapper",(0,i.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"securing-endpoints"},"Securing endpoints"),(0,a.kt)("p",null,"The REST API (i.e. python FastAPI server) has access to, and is responsible for serving, data that could be private. Therefore we need to validate that the request is coming from an authenticated client."),(0,a.kt)("p",null,"We do that in these steps;"),(0,a.kt)("ol",null,(0,a.kt)("li",{parentName:"ol"},"Require a JWT on each request"),(0,a.kt)("li",{parentName:"ol"},"Fetch the RSA public keys from the authentication server."),(0,a.kt)("li",{parentName:"ol"},"Validate the JWT signature with the auth server's public key")),(0,a.kt)("p",null,"FastAPI has system called ",(0,a.kt)("a",{parentName:"p",href:"https://fastapi.tiangolo.com/tutorial/dependencies"},(0,a.kt)("strong",{parentName:"a"},"dependencies"))," that is well suited for running a specific function before every request."),(0,a.kt)("p",null,"Here is an example;"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-python"},"routes = APIRouter()\napp = FastAPI(title=\"Awesome Boilerplate\") # Create the FastAPI app\napp.include_router(routes) # Add a route/controller to the app\n# Add the 'auth_with_jwt()' function as a dependency\n# This function will do the actual JWT validation with step 2 and 3\napp.include_router(routes, dependencies=[Security(auth_with_jwt)])\n")),(0,a.kt)("p",null,"That's it! Now every route added like this will require a successful JWT validation before the request will be processed."),(0,a.kt)("p",null,"Dependencies can also return values, useful if you need to do some kind of ",(0,a.kt)("strong",{parentName:"p"},"authorization"),".\nHere is one example;"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-python"},'@router.delete("/{id}", operation_id="delete-report")\ndef delete_report(id: str, user: User = Depends(auth_with_jwt)):\n if has_permission(user):\n delete_report(id)\n return "OK"\n else:\n return PlainTextResponse("Permission denied", status_code=402)\n')))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/14a713f6.d009dfb8.js b/assets/js/14a713f6.d009dfb8.js new file mode 100644 index 00000000..ce323ca8 --- /dev/null +++ b/assets/js/14a713f6.d009dfb8.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[109],{3118:(e,t,o)=>{o.r(t),o.d(t,{assets:()=>u,contentTitle:()=>d,default:()=>c,frontMatter:()=>s,metadata:()=>r,toc:()=>p});var n=o(7462),i=(o(7294),o(3905)),a=(o(1839),o(814));const s={},d="Use cases",r={unversionedId:"contribute/development-guide/coding/extending-the-api/adding-features/use-cases",id:"contribute/development-guide/coding/extending-the-api/adding-features/use-cases",title:"Use cases",description:"Use cases implement and encapsulate all the application business rules.",source:"@site/docs/contribute/development-guide/coding/extending-the-api/adding-features/02-use-cases.md",sourceDirName:"contribute/development-guide/coding/extending-the-api/adding-features",slug:"/contribute/development-guide/coding/extending-the-api/adding-features/use-cases",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/use-cases",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/contribute/development-guide/coding/extending-the-api/adding-features/02-use-cases.md",tags:[],version:"current",sidebarPosition:2,frontMatter:{},sidebar:"contribute",previous:{title:"Controller",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/controllers"},next:{title:"Securing endpoints",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/securing-endpoints"}},u={},p=[{value:"Testing use cases",id:"testing-use-cases",level:2}],l={toc:p};function c(e){let{components:t,...o}=e;return(0,i.kt)("wrapper",(0,n.Z)({},l,o,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"use-cases"},"Use cases"),(0,i.kt)("p",null,"Use cases implement and encapsulate all the application business rules."),(0,i.kt)("p",null,"If the use case wants to access a database (infrastructure layer), then the use case will use a data provider interface. The ",(0,i.kt)("inlineCode",{parentName:"p"},"add_todo_use_case")," interacts with the infrastructure layer via ",(0,i.kt)("inlineCode",{parentName:"p"},"TodoRepositoryInterface"),"."),(0,i.kt)(a.Z,{language:"jsx",mdxType:"CodeBlock"},'import uuid\n\nfrom pydantic import BaseModel, Field\n\nfrom features.todo.entities.todo_item import TodoItem\nfrom features.todo.repository.todo_repository_interface import TodoRepositoryInterface\n\n\nclass AddTodoRequest(BaseModel):\n title: str = Field(\n title="The title of the item",\n max_length=300,\n min_length=1,\n json_schema_extra={\n "examples": ["Read about clean architecture"],\n },\n )\n\n\nclass AddTodoResponse(BaseModel):\n id: str = Field(\n json_schema_extra={\n "examples": ["vytxeTZskVKR7C7WgdSP3d"],\n }\n )\n title: str = Field(\n json_schema_extra={\n "examples": ["Read about clean architecture"],\n }\n )\n is_completed: bool = False\n\n @staticmethod\n def from_entity(todo_item: TodoItem) -> "AddTodoResponse":\n return AddTodoResponse(id=todo_item.id, title=todo_item.title, is_completed=todo_item.is_completed)\n\n\ndef add_todo_use_case(\n data: AddTodoRequest,\n user_id: str,\n todo_repository: TodoRepositoryInterface,\n) -> AddTodoResponse:\n todo_item = TodoItem(id=str(uuid.uuid4()), title=data.title, user_id=user_id)\n todo_repository.create(todo_item)\n return AddTodoResponse.from_entity(todo_item)\n'),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Required"),(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"Each use case needs to have its own read and write model to handle custom requests inputs and outputs for each use case."))),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Optional"),(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"A ",(0,i.kt)("a",{parentName:"li",href:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repository-interfaces"},"repository interface")," describing necessary repository methods.",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"The use case uses ",(0,i.kt)("a",{parentName:"li",href:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repositories"},"repositories")," for reading and writing to external systems like databases.")))))),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"Changes to use cases should not impact the entities."),(0,i.kt)("p",{parentName:"admonition"},"The use-case should only know of the repository interface (abstract class) before run-time. The concrete implementation of a repository is injected (dependency injection) into the use-case at run-time.")),(0,i.kt)("h2",{id:"testing-use-cases"},"Testing use cases"),(0,i.kt)("p",null,"Use the ",(0,i.kt)("inlineCode",{parentName:"p"},"todo_repository")," fixture as input to use_cases."),(0,i.kt)(a.Z,{language:"jsx",mdxType:"CodeBlock"},'import pytest\r\nfrom pydantic import ValidationError\r\n\r\nfrom features.todo.repository.todo_repository_interface import TodoRepositoryInterface\r\nfrom features.todo.use_cases.add_todo import AddTodoRequest, add_todo_use_case\r\n\r\n\r\ndef test_add_with_valid_title_should_return_todo(todo_repository: TodoRepositoryInterface):\r\n data = AddTodoRequest(title="new todo")\r\n result = add_todo_use_case(data, user_id="xyz", todo_repository=todo_repository)\r\n assert result.title == data.title\r\n\r\n\r\ndef test_add_with_empty_title_should_throw_validation_error(todo_repository: TodoRepositoryInterface):\r\n with pytest.raises(ValidationError):\r\n data = AddTodoRequest(title="")\r\n add_todo_use_case(data, user_id="xyz", todo_repository=todo_repository)\r\n'))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/14eb3368.9428a0f9.js b/assets/js/14eb3368.9428a0f9.js new file mode 100644 index 00000000..1e8af9bc --- /dev/null +++ b/assets/js/14eb3368.9428a0f9.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[817],{1986:(e,t,n)=>{n.d(t,{Z:()=>E});var a=n(7462),r=n(7294),i=n(6010),l=n(5281),s=n(3438),c=n(8596),o=n(9960),m=n(4996),d=n(5999);function u(e){return r.createElement("svg",(0,a.Z)({viewBox:"0 0 24 24"},e),r.createElement("path",{d:"M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z",fill:"currentColor"}))}const b={breadcrumbsContainer:"breadcrumbsContainer_Z_bl",breadcrumbHomeIcon:"breadcrumbHomeIcon_OVgt"};function h(e){let{children:t,href:n,isLast:a}=e;const i="breadcrumbs__link";return a?r.createElement("span",{className:i,itemProp:"name"},t):n?r.createElement(o.Z,{className:i,href:n,itemProp:"item"},r.createElement("span",{itemProp:"name"},t)):r.createElement("span",{className:i},t)}function v(e){let{children:t,active:n,index:l,addMicrodata:s}=e;return r.createElement("li",(0,a.Z)({},s&&{itemScope:!0,itemProp:"itemListElement",itemType:"https://schema.org/ListItem"},{className:(0,i.Z)("breadcrumbs__item",{"breadcrumbs__item--active":n})}),t,r.createElement("meta",{itemProp:"position",content:String(l+1)}))}function g(){const e=(0,m.Z)("/");return r.createElement("li",{className:"breadcrumbs__item"},r.createElement(o.Z,{"aria-label":(0,d.I)({id:"theme.docs.breadcrumbs.home",message:"Home page",description:"The ARIA label for the home page in the breadcrumbs"}),className:(0,i.Z)("breadcrumbs__link",b.breadcrumbsItemLink),href:e},r.createElement(u,{className:b.breadcrumbHomeIcon})))}function E(){const e=(0,s.s1)(),t=(0,c.Ns)();return e?r.createElement("nav",{className:(0,i.Z)(l.k.docs.docBreadcrumbs,b.breadcrumbsContainer),"aria-label":(0,d.I)({id:"theme.docs.breadcrumbs.navAriaLabel",message:"Breadcrumbs",description:"The ARIA label for the breadcrumbs"})},r.createElement("ul",{className:"breadcrumbs",itemScope:!0,itemType:"https://schema.org/BreadcrumbList"},t&&r.createElement(g,null),e.map(((t,n)=>{const a=n===e.length-1;return r.createElement(v,{key:n,active:a,index:n,addMicrodata:!!t.href},r.createElement(h,{href:t.href,isLast:a},t.label))})))):null}},4228:(e,t,n)=>{n.r(t),n.d(t,{default:()=>C});var a=n(7294),r=n(1944),i=n(3438),l=n(4996),s=n(6010),c=n(9960),o=n(3919),m=n(5999);const d="cardContainer_fWXF",u="cardTitle_rnsV",b="cardDescription_PWke";function h(e){let{href:t,children:n}=e;return a.createElement(c.Z,{href:t,className:(0,s.Z)("card padding--lg",d)},n)}function v(e){let{href:t,icon:n,title:r,description:i}=e;return a.createElement(h,{href:t},a.createElement("h2",{className:(0,s.Z)("text--truncate",u),title:r},n," ",r),i&&a.createElement("p",{className:(0,s.Z)("text--truncate",b),title:i},i))}function g(e){let{item:t}=e;const n=(0,i.Wl)(t);return n?a.createElement(v,{href:n,icon:"\ud83d\uddc3\ufe0f",title:t.label,description:(0,m.I)({message:"{count} items",id:"theme.docs.DocCard.categoryDescription",description:"The default description for a category card in the generated index about how many items this category includes"},{count:t.items.length})}):null}function E(e){let{item:t}=e;const n=(0,o.Z)(t.href)?"\ud83d\udcc4\ufe0f":"\ud83d\udd17",r=(0,i.xz)(t.docId??void 0);return a.createElement(v,{href:t.href,icon:n,title:t.label,description:null==r?void 0:r.description})}function p(e){let{item:t}=e;switch(t.type){case"link":return a.createElement(E,{item:t});case"category":return a.createElement(g,{item:t});default:throw new Error(`unknown item type ${JSON.stringify(t)}`)}}function f(e){let{className:t}=e;const n=(0,i.jA)();return a.createElement(N,{items:n.items,className:t})}function N(e){const{items:t,className:n}=e;if(!t)return a.createElement(f,e);const r=(0,i.MN)(t);return a.createElement("section",{className:(0,s.Z)("row",n)},r.map(((e,t)=>a.createElement("article",{key:t,className:"col col--6 margin-bottom--lg"},a.createElement(p,{item:e})))))}var Z=n(4966),k=n(3120),L=n(4364),_=n(1986),T=n(2503);const x="generatedIndexPage_vN6x",I="list_eTzJ",y="title_kItE";function w(e){let{categoryGeneratedIndex:t}=e;return a.createElement(r.d,{title:t.title,description:t.description,keywords:t.keywords,image:(0,l.Z)(t.image)})}function V(e){let{categoryGeneratedIndex:t}=e;const n=(0,i.jA)();return a.createElement("div",{className:x},a.createElement(k.Z,null),a.createElement(_.Z,null),a.createElement(L.Z,null),a.createElement("header",null,a.createElement(T.Z,{as:"h1",className:y},t.title),t.description&&a.createElement("p",null,t.description)),a.createElement("article",{className:"margin-top--lg"},a.createElement(N,{items:n.items,className:I})),a.createElement("footer",{className:"margin-top--lg"},a.createElement(Z.Z,{previous:t.navigation.previous,next:t.navigation.next})))}function C(e){return a.createElement(a.Fragment,null,a.createElement(w,e),a.createElement(V,e))}},4966:(e,t,n)=>{n.d(t,{Z:()=>o});var a=n(7462),r=n(7294),i=n(5999),l=n(6010),s=n(9960);function c(e){const{permalink:t,title:n,subLabel:a,isNext:i}=e;return r.createElement(s.Z,{className:(0,l.Z)("pagination-nav__link",i?"pagination-nav__link--next":"pagination-nav__link--prev"),to:t},a&&r.createElement("div",{className:"pagination-nav__sublabel"},a),r.createElement("div",{className:"pagination-nav__label"},n))}function o(e){const{previous:t,next:n}=e;return r.createElement("nav",{className:"pagination-nav docusaurus-mt-lg","aria-label":(0,i.I)({id:"theme.docs.paginator.navAriaLabel",message:"Docs pages navigation",description:"The ARIA label for the docs pagination"})},t&&r.createElement(c,(0,a.Z)({},t,{subLabel:r.createElement(i.Z,{id:"theme.docs.paginator.previous",description:"The label used to navigate to the previous doc"},"Previous")})),n&&r.createElement(c,(0,a.Z)({},n,{subLabel:r.createElement(i.Z,{id:"theme.docs.paginator.next",description:"The label used to navigate to the next doc"},"Next"),isNext:!0})))}},4364:(e,t,n)=>{n.d(t,{Z:()=>c});var a=n(7294),r=n(6010),i=n(5999),l=n(5281),s=n(4477);function c(e){let{className:t}=e;const n=(0,s.E)();return n.badge?a.createElement("span",{className:(0,r.Z)(t,l.k.docs.docVersionBadge,"badge badge--secondary")},a.createElement(i.Z,{id:"theme.docs.versionBadge.label",values:{versionLabel:n.label}},"Version: {versionLabel}")):null}},3120:(e,t,n)=>{n.d(t,{Z:()=>g});var a=n(7294),r=n(6010),i=n(2263),l=n(9960),s=n(5999),c=n(143),o=n(5281),m=n(373),d=n(4477);const u={unreleased:function(e){let{siteTitle:t,versionMetadata:n}=e;return a.createElement(s.Z,{id:"theme.docs.versions.unreleasedVersionLabel",description:"The label used to tell the user that he's browsing an unreleased doc version",values:{siteTitle:t,versionLabel:a.createElement("b",null,n.label)}},"This is unreleased documentation for {siteTitle} {versionLabel} version.")},unmaintained:function(e){let{siteTitle:t,versionMetadata:n}=e;return a.createElement(s.Z,{id:"theme.docs.versions.unmaintainedVersionLabel",description:"The label used to tell the user that he's browsing an unmaintained doc version",values:{siteTitle:t,versionLabel:a.createElement("b",null,n.label)}},"This is documentation for {siteTitle} {versionLabel}, which is no longer actively maintained.")}};function b(e){const t=u[e.versionMetadata.banner];return a.createElement(t,e)}function h(e){let{versionLabel:t,to:n,onClick:r}=e;return a.createElement(s.Z,{id:"theme.docs.versions.latestVersionSuggestionLabel",description:"The label used to tell the user to check the latest version",values:{versionLabel:t,latestVersionLink:a.createElement("b",null,a.createElement(l.Z,{to:n,onClick:r},a.createElement(s.Z,{id:"theme.docs.versions.latestVersionLinkLabel",description:"The label used for the latest version suggestion link label"},"latest version")))}},"For up-to-date documentation, see the {latestVersionLink} ({versionLabel}).")}function v(e){let{className:t,versionMetadata:n}=e;const{siteConfig:{title:l}}=(0,i.Z)(),{pluginId:s}=(0,c.gA)({failfast:!0}),{savePreferredVersionName:d}=(0,m.J)(s),{latestDocSuggestion:u,latestVersionSuggestion:v}=(0,c.Jo)(s),g=u??(E=v).docs.find((e=>e.id===E.mainDocId));var E;return a.createElement("div",{className:(0,r.Z)(t,o.k.docs.docVersionBanner,"alert alert--warning margin-bottom--md"),role:"alert"},a.createElement("div",null,a.createElement(b,{siteTitle:l,versionMetadata:n})),a.createElement("div",{className:"margin-top--md"},a.createElement(h,{versionLabel:v.label,to:g.path,onClick:()=>d(v.name)})))}function g(e){let{className:t}=e;const n=(0,d.E)();return n.banner?a.createElement(v,{className:t,versionMetadata:n}):null}},2503:(e,t,n)=>{n.d(t,{Z:()=>m});var a=n(7462),r=n(7294),i=n(6010),l=n(5999),s=n(6668);const c="anchorWithStickyNavbar_LWe7",o="anchorWithHideOnScrollNavbar_WYt5";function m(e){let{as:t,id:n,...m}=e;const{navbar:{hideOnScroll:d}}=(0,s.L)();return"h1"!==t&&n?r.createElement(t,(0,a.Z)({},m,{className:(0,i.Z)("anchor",d?o:c),id:n}),m.children,r.createElement("a",{className:"hash-link",href:`#${n}`,title:(0,l.I)({id:"theme.common.headingLinkTitle",message:"Direct link to heading",description:"Title for link to heading"})},"\u200b")):r.createElement(t,(0,a.Z)({},m,{id:void 0}))}}}]); \ No newline at end of file diff --git a/assets/js/17896441.1939eeab.js b/assets/js/17896441.1939eeab.js new file mode 100644 index 00000000..040a4614 --- /dev/null +++ b/assets/js/17896441.1939eeab.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[918],{1986:(e,t,a)=>{a.d(t,{Z:()=>E});var n=a(7462),l=a(7294),r=a(6010),s=a(5281),o=a(3438),c=a(8596),i=a(9960),d=a(4996),m=a(5999);function u(e){return l.createElement("svg",(0,n.Z)({viewBox:"0 0 24 24"},e),l.createElement("path",{d:"M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z",fill:"currentColor"}))}const b={breadcrumbsContainer:"breadcrumbsContainer_Z_bl",breadcrumbHomeIcon:"breadcrumbHomeIcon_OVgt"};function p(e){let{children:t,href:a,isLast:n}=e;const r="breadcrumbs__link";return n?l.createElement("span",{className:r,itemProp:"name"},t):a?l.createElement(i.Z,{className:r,href:a,itemProp:"item"},l.createElement("span",{itemProp:"name"},t)):l.createElement("span",{className:r},t)}function v(e){let{children:t,active:a,index:s,addMicrodata:o}=e;return l.createElement("li",(0,n.Z)({},o&&{itemScope:!0,itemProp:"itemListElement",itemType:"https://schema.org/ListItem"},{className:(0,r.Z)("breadcrumbs__item",{"breadcrumbs__item--active":a})}),t,l.createElement("meta",{itemProp:"position",content:String(s+1)}))}function h(){const e=(0,d.Z)("/");return l.createElement("li",{className:"breadcrumbs__item"},l.createElement(i.Z,{"aria-label":(0,m.I)({id:"theme.docs.breadcrumbs.home",message:"Home page",description:"The ARIA label for the home page in the breadcrumbs"}),className:(0,r.Z)("breadcrumbs__link",b.breadcrumbsItemLink),href:e},l.createElement(u,{className:b.breadcrumbHomeIcon})))}function E(){const e=(0,o.s1)(),t=(0,c.Ns)();return e?l.createElement("nav",{className:(0,r.Z)(s.k.docs.docBreadcrumbs,b.breadcrumbsContainer),"aria-label":(0,m.I)({id:"theme.docs.breadcrumbs.navAriaLabel",message:"Breadcrumbs",description:"The ARIA label for the breadcrumbs"})},l.createElement("ul",{className:"breadcrumbs",itemScope:!0,itemType:"https://schema.org/BreadcrumbList"},t&&l.createElement(h,null),e.map(((t,a)=>{const n=a===e.length-1;return l.createElement(v,{key:a,active:n,index:a,addMicrodata:!!t.href},l.createElement(p,{href:t.href,isLast:n},t.label))})))):null}},230:(e,t,a)=>{a.r(t),a.d(t,{default:()=>ne});var n=a(7294),l=a(1944),r=a(902);const s=n.createContext(null);function o(e){let{children:t,content:a}=e;const l=function(e){return(0,n.useMemo)((()=>({metadata:e.metadata,frontMatter:e.frontMatter,assets:e.assets,contentTitle:e.contentTitle,toc:e.toc})),[e])}(a);return n.createElement(s.Provider,{value:l},t)}function c(){const e=(0,n.useContext)(s);if(null===e)throw new r.i6("DocProvider");return e}function i(){const{metadata:e,frontMatter:t,assets:a}=c();return n.createElement(l.d,{title:e.title,description:e.description,keywords:t.keywords,image:a.image??t.image})}var d=a(6010),m=a(7524),u=a(4966);function b(){const{metadata:e}=c();return n.createElement(u.Z,{previous:e.previous,next:e.next})}var p=a(3120),v=a(4364),h=a(5281),E=a(5999);function g(e){let{lastUpdatedAt:t,formattedLastUpdatedAt:a}=e;return n.createElement(E.Z,{id:"theme.lastUpdated.atDate",description:"The words used to describe on which date a page has been last updated",values:{date:n.createElement("b",null,n.createElement("time",{dateTime:new Date(1e3*t).toISOString()},a))}}," on {date}")}function f(e){let{lastUpdatedBy:t}=e;return n.createElement(E.Z,{id:"theme.lastUpdated.byUser",description:"The words used to describe by who the page has been last updated",values:{user:n.createElement("b",null,t)}}," by {user}")}function Z(e){let{lastUpdatedAt:t,formattedLastUpdatedAt:a,lastUpdatedBy:l}=e;return n.createElement("span",{className:h.k.common.lastUpdated},n.createElement(E.Z,{id:"theme.lastUpdated.lastUpdatedAtBy",description:"The sentence used to display when a page has been last updated, and by who",values:{atDate:t&&a?n.createElement(g,{lastUpdatedAt:t,formattedLastUpdatedAt:a}):"",byUser:l?n.createElement(f,{lastUpdatedBy:l}):""}},"Last updated{atDate}{byUser}"),!1)}var _=a(7462);const N="iconEdit_Z9Sw";function k(e){let{className:t,...a}=e;return n.createElement("svg",(0,_.Z)({fill:"currentColor",height:"20",width:"20",viewBox:"0 0 40 40",className:(0,d.Z)(N,t),"aria-hidden":"true"},a),n.createElement("g",null,n.createElement("path",{d:"m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z"})))}function L(e){let{editUrl:t}=e;return n.createElement("a",{href:t,target:"_blank",rel:"noreferrer noopener",className:h.k.common.editThisPage},n.createElement(k,null),n.createElement(E.Z,{id:"theme.common.editThisPage",description:"The link label to edit the current page"},"Edit this page"))}var T=a(9960);const U="tag_zVej",w="tagRegular_sFm0",C="tagWithCount_h2kH";function y(e){let{permalink:t,label:a,count:l}=e;return n.createElement(T.Z,{href:t,className:(0,d.Z)(U,l?C:w)},a,l&&n.createElement("span",null,l))}const x="tags_jXut",A="tag_QGVx";function M(e){let{tags:t}=e;return n.createElement(n.Fragment,null,n.createElement("b",null,n.createElement(E.Z,{id:"theme.tags.tagsListLabel",description:"The label alongside a tag list"},"Tags:")),n.createElement("ul",{className:(0,d.Z)(x,"padding--none","margin-left--sm")},t.map((e=>{let{label:t,permalink:a}=e;return n.createElement("li",{key:a,className:A},n.createElement(y,{label:t,permalink:a}))}))))}const B="lastUpdated_vwxv";function I(e){return n.createElement("div",{className:(0,d.Z)(h.k.docs.docFooterTagsRow,"row margin-bottom--sm")},n.createElement("div",{className:"col"},n.createElement(M,e)))}function V(e){let{editUrl:t,lastUpdatedAt:a,lastUpdatedBy:l,formattedLastUpdatedAt:r}=e;return n.createElement("div",{className:(0,d.Z)(h.k.docs.docFooterEditMetaRow,"row")},n.createElement("div",{className:"col"},t&&n.createElement(L,{editUrl:t})),n.createElement("div",{className:(0,d.Z)("col",B)},(a||l)&&n.createElement(Z,{lastUpdatedAt:a,formattedLastUpdatedAt:r,lastUpdatedBy:l})))}function H(){const{metadata:e}=c(),{editUrl:t,lastUpdatedAt:a,formattedLastUpdatedAt:l,lastUpdatedBy:r,tags:s}=e,o=s.length>0,i=!!(t||a||r);return o||i?n.createElement("footer",{className:(0,d.Z)(h.k.docs.docFooter,"docusaurus-mt-lg")},o&&n.createElement(I,{tags:s}),i&&n.createElement(V,{editUrl:t,lastUpdatedAt:a,lastUpdatedBy:r,formattedLastUpdatedAt:l})):null}var P=a(6043),D=a(3743);const S="tocCollapsibleButton_TO0P",F="tocCollapsibleButtonExpanded_MG3E";function O(e){let{collapsed:t,...a}=e;return n.createElement("button",(0,_.Z)({type:"button"},a,{className:(0,d.Z)("clean-btn",S,!t&&F,a.className)}),n.createElement(E.Z,{id:"theme.TOCCollapsible.toggleButtonLabel",description:"The label used by the button on the collapsible TOC component"},"On this page"))}const z="tocCollapsible_ETCw",R="tocCollapsibleContent_vkbj",j="tocCollapsibleExpanded_sAul";function G(e){let{toc:t,className:a,minHeadingLevel:l,maxHeadingLevel:r}=e;const{collapsed:s,toggleCollapsed:o}=(0,P.u)({initialState:!0});return n.createElement("div",{className:(0,d.Z)(z,!s&&j,a)},n.createElement(O,{collapsed:s,onClick:o}),n.createElement(P.z,{lazy:!0,className:R,collapsed:s},n.createElement(D.Z,{toc:t,minHeadingLevel:l,maxHeadingLevel:r})))}const q="tocMobile_ITEo";function J(){const{toc:e,frontMatter:t}=c();return n.createElement(G,{toc:e,minHeadingLevel:t.toc_min_heading_level,maxHeadingLevel:t.toc_max_heading_level,className:(0,d.Z)(h.k.docs.docTocMobile,q)})}var Q=a(9407);function W(){const{toc:e,frontMatter:t}=c();return n.createElement(Q.Z,{toc:e,minHeadingLevel:t.toc_min_heading_level,maxHeadingLevel:t.toc_max_heading_level,className:h.k.docs.docTocDesktop})}var X=a(2503),$=a(5203);function K(e){let{children:t}=e;const a=function(){const{metadata:e,frontMatter:t,contentTitle:a}=c();return t.hide_title||void 0!==a?null:e.title}();return n.createElement("div",{className:(0,d.Z)(h.k.docs.docMarkdown,"markdown")},a&&n.createElement("header",null,n.createElement(X.Z,{as:"h1"},a)),n.createElement($.Z,null,t))}var Y=a(1986);const ee="docItemContainer_Djhp",te="docItemCol_VOVn";function ae(e){let{children:t}=e;const a=function(){const{frontMatter:e,toc:t}=c(),a=(0,m.i)(),l=e.hide_table_of_contents,r=!l&&t.length>0;return{hidden:l,mobile:r?n.createElement(J,null):void 0,desktop:!r||"desktop"!==a&&"ssr"!==a?void 0:n.createElement(W,null)}}();return n.createElement("div",{className:"row"},n.createElement("div",{className:(0,d.Z)("col",!a.hidden&&te)},n.createElement(p.Z,null),n.createElement("div",{className:ee},n.createElement("article",null,n.createElement(Y.Z,null),n.createElement(v.Z,null),a.mobile,n.createElement(K,null,t),n.createElement(H,null)),n.createElement(b,null))),a.desktop&&n.createElement("div",{className:"col col--3"},a.desktop))}function ne(e){const t=`docs-doc-id-${e.content.metadata.unversionedId}`,a=e.content;return n.createElement(o,{content:e.content},n.createElement(l.FG,{className:t},n.createElement(i,null),n.createElement(ae,null,n.createElement(a,null))))}},4966:(e,t,a)=>{a.d(t,{Z:()=>i});var n=a(7462),l=a(7294),r=a(5999),s=a(6010),o=a(9960);function c(e){const{permalink:t,title:a,subLabel:n,isNext:r}=e;return l.createElement(o.Z,{className:(0,s.Z)("pagination-nav__link",r?"pagination-nav__link--next":"pagination-nav__link--prev"),to:t},n&&l.createElement("div",{className:"pagination-nav__sublabel"},n),l.createElement("div",{className:"pagination-nav__label"},a))}function i(e){const{previous:t,next:a}=e;return l.createElement("nav",{className:"pagination-nav docusaurus-mt-lg","aria-label":(0,r.I)({id:"theme.docs.paginator.navAriaLabel",message:"Docs pages navigation",description:"The ARIA label for the docs pagination"})},t&&l.createElement(c,(0,n.Z)({},t,{subLabel:l.createElement(r.Z,{id:"theme.docs.paginator.previous",description:"The label used to navigate to the previous doc"},"Previous")})),a&&l.createElement(c,(0,n.Z)({},a,{subLabel:l.createElement(r.Z,{id:"theme.docs.paginator.next",description:"The label used to navigate to the next doc"},"Next"),isNext:!0})))}},4364:(e,t,a)=>{a.d(t,{Z:()=>c});var n=a(7294),l=a(6010),r=a(5999),s=a(5281),o=a(4477);function c(e){let{className:t}=e;const a=(0,o.E)();return a.badge?n.createElement("span",{className:(0,l.Z)(t,s.k.docs.docVersionBadge,"badge badge--secondary")},n.createElement(r.Z,{id:"theme.docs.versionBadge.label",values:{versionLabel:a.label}},"Version: {versionLabel}")):null}},3120:(e,t,a)=>{a.d(t,{Z:()=>h});var n=a(7294),l=a(6010),r=a(2263),s=a(9960),o=a(5999),c=a(143),i=a(5281),d=a(373),m=a(4477);const u={unreleased:function(e){let{siteTitle:t,versionMetadata:a}=e;return n.createElement(o.Z,{id:"theme.docs.versions.unreleasedVersionLabel",description:"The label used to tell the user that he's browsing an unreleased doc version",values:{siteTitle:t,versionLabel:n.createElement("b",null,a.label)}},"This is unreleased documentation for {siteTitle} {versionLabel} version.")},unmaintained:function(e){let{siteTitle:t,versionMetadata:a}=e;return n.createElement(o.Z,{id:"theme.docs.versions.unmaintainedVersionLabel",description:"The label used to tell the user that he's browsing an unmaintained doc version",values:{siteTitle:t,versionLabel:n.createElement("b",null,a.label)}},"This is documentation for {siteTitle} {versionLabel}, which is no longer actively maintained.")}};function b(e){const t=u[e.versionMetadata.banner];return n.createElement(t,e)}function p(e){let{versionLabel:t,to:a,onClick:l}=e;return n.createElement(o.Z,{id:"theme.docs.versions.latestVersionSuggestionLabel",description:"The label used to tell the user to check the latest version",values:{versionLabel:t,latestVersionLink:n.createElement("b",null,n.createElement(s.Z,{to:a,onClick:l},n.createElement(o.Z,{id:"theme.docs.versions.latestVersionLinkLabel",description:"The label used for the latest version suggestion link label"},"latest version")))}},"For up-to-date documentation, see the {latestVersionLink} ({versionLabel}).")}function v(e){let{className:t,versionMetadata:a}=e;const{siteConfig:{title:s}}=(0,r.Z)(),{pluginId:o}=(0,c.gA)({failfast:!0}),{savePreferredVersionName:m}=(0,d.J)(o),{latestDocSuggestion:u,latestVersionSuggestion:v}=(0,c.Jo)(o),h=u??(E=v).docs.find((e=>e.id===E.mainDocId));var E;return n.createElement("div",{className:(0,l.Z)(t,i.k.docs.docVersionBanner,"alert alert--warning margin-bottom--md"),role:"alert"},n.createElement("div",null,n.createElement(b,{siteTitle:s,versionMetadata:a})),n.createElement("div",{className:"margin-top--md"},n.createElement(p,{versionLabel:v.label,to:h.path,onClick:()=>m(v.name)})))}function h(e){let{className:t}=e;const a=(0,m.E)();return a.banner?n.createElement(v,{className:t,versionMetadata:a}):null}}}]); \ No newline at end of file diff --git a/assets/js/1b4cc8e2.0a0766ce.js b/assets/js/1b4cc8e2.0a0766ce.js new file mode 100644 index 00000000..5d1cbe75 --- /dev/null +++ b/assets/js/1b4cc8e2.0a0766ce.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[511],{8905:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>r,contentTitle:()=>d,default:()=>u,frontMatter:()=>o,metadata:()=>p,toc:()=>c});var a=n(7462),i=(n(7294),n(3905));n(1839);const o={},d="Upgrading",p={unversionedId:"contribute/development-guide/upgrading",id:"contribute/development-guide/upgrading",title:"Upgrading",description:"Packages",source:"@site/docs/contribute/development-guide/04-upgrading.md",sourceDirName:"contribute/development-guide",slug:"/contribute/development-guide/upgrading",permalink:"/template-fastapi-react/docs/contribute/development-guide/upgrading",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/contribute/development-guide/04-upgrading.md",tags:[],version:"current",sidebarPosition:4,frontMatter:{},sidebar:"contribute",previous:{title:"Testing",permalink:"/template-fastapi-react/docs/contribute/development-guide/testing"},next:{title:"Publishing",permalink:"/template-fastapi-react/docs/contribute/development-guide/publishing"}},r={},c=[{value:"Packages",id:"packages",level:2},{value:"API dependencies",id:"api-dependencies",level:3},{value:"Web dependencies",id:"web-dependencies",level:3}],s={toc:c};function u(e){let{components:t,...n}=e;return(0,i.kt)("wrapper",(0,a.Z)({},s,n,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"upgrading"},"Upgrading"),(0,i.kt)("h2",{id:"packages"},"Packages"),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"Remember to restart!"),(0,i.kt)("p",{parentName:"admonition"},"Any changes you make to these files will only come into effect after you restart the\nserver. If you run the application using containers,\nyou need to do ",(0,i.kt)("inlineCode",{parentName:"p"},"docker compose build")," and then ",(0,i.kt)("inlineCode",{parentName:"p"},"docker compose up")," to get the changes.")),(0,i.kt)("h3",{id:"api-dependencies"},"API dependencies"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-shell"},"cd api/\n# Add or remove package to pyproject.toml\npoetry update\n")),(0,i.kt)("h3",{id:"web-dependencies"},"Web dependencies"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-shell"},"cd web/\n# Add or remove package to package.json\nyarn install\n")))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/1be78505.86914a5e.js b/assets/js/1be78505.86914a5e.js new file mode 100644 index 00000000..88fda218 --- /dev/null +++ b/assets/js/1be78505.86914a5e.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[514,972],{9963:(e,t,n)=>{n.r(t),n.d(t,{default:()=>Ie});var a=n(7294),l=n(6010),o=n(1944),r=n(5281),c=n(3320),i=n(3438),s=n(4477),d=n(1116),m=n(4704),u=n(5999),b=n(2466),p=n(5936);const h="backToTopButton_sjWU",E="backToTopButtonShow_xfvO";function f(){const{shown:e,scrollToTop:t}=function(e){let{threshold:t}=e;const[n,l]=(0,a.useState)(!1),o=(0,a.useRef)(!1),{startScroll:r,cancelScroll:c}=(0,b.Ct)();return(0,b.RF)(((e,n)=>{let{scrollY:a}=e;const r=null==n?void 0:n.scrollY;r&&(o.current?o.current=!1:a>=r?(c(),l(!1)):a{e.location.hash&&(o.current=!0,l(!1))})),{shown:n,scrollToTop:()=>r(0)}}({threshold:300});return a.createElement("button",{"aria-label":(0,u.I)({id:"theme.BackToTopButton.buttonAriaLabel",message:"Scroll back to top",description:"The ARIA label for the back to top button"}),className:(0,l.Z)("clean-btn",r.k.common.backToTopButton,h,e&&E),type:"button",onClick:t})}var g=n(6775),v=n(7524),_=n(6668),k=n(1327),C=n(7462);function I(e){return a.createElement("svg",(0,C.Z)({width:"20",height:"20","aria-hidden":"true"},e),a.createElement("g",{fill:"#7a7a7a"},a.createElement("path",{d:"M9.992 10.023c0 .2-.062.399-.172.547l-4.996 7.492a.982.982 0 01-.828.454H1c-.55 0-1-.453-1-1 0-.2.059-.403.168-.551l4.629-6.942L.168 3.078A.939.939 0 010 2.528c0-.548.45-.997 1-.997h2.996c.352 0 .649.18.828.45L9.82 9.472c.11.148.172.347.172.55zm0 0"}),a.createElement("path",{d:"M19.98 10.023c0 .2-.058.399-.168.547l-4.996 7.492a.987.987 0 01-.828.454h-3c-.547 0-.996-.453-.996-1 0-.2.059-.403.168-.551l4.625-6.942-4.625-6.945a.939.939 0 01-.168-.55 1 1 0 01.996-.997h3c.348 0 .649.18.828.45l4.996 7.492c.11.148.168.347.168.55zm0 0"})))}const N="collapseSidebarButton_PEFL",S="collapseSidebarButtonIcon_kv0_";function Z(e){let{onClick:t}=e;return a.createElement("button",{type:"button",title:(0,u.I)({id:"theme.docs.sidebar.collapseButtonTitle",message:"Collapse sidebar",description:"The title attribute for collapse button of doc sidebar"}),"aria-label":(0,u.I)({id:"theme.docs.sidebar.collapseButtonAriaLabel",message:"Collapse sidebar",description:"The title attribute for collapse button of doc sidebar"}),className:(0,l.Z)("button button--secondary button--outline",N),onClick:t},a.createElement(I,{className:S}))}var y=n(9689),T=n(902);const x=Symbol("EmptyContext"),L=a.createContext(x);function w(e){let{children:t}=e;const[n,l]=(0,a.useState)(null),o=(0,a.useMemo)((()=>({expandedItem:n,setExpandedItem:l})),[n]);return a.createElement(L.Provider,{value:o},t)}var M=n(6043),A=n(8596),B=n(9960),F=n(2389);function H(e){let{categoryLabel:t,onClick:n}=e;return a.createElement("button",{"aria-label":(0,u.I)({id:"theme.DocSidebarItem.toggleCollapsedCategoryAriaLabel",message:"Toggle the collapsible sidebar category '{label}'",description:"The ARIA label to toggle the collapsible sidebar category"},{label:t}),type:"button",className:"clean-btn menu__caret",onClick:n})}function P(e){let{item:t,onItemClick:n,activePath:o,level:c,index:s,...d}=e;const{items:m,label:u,collapsible:b,className:p,href:h}=t,{docs:{sidebar:{autoCollapseCategories:E}}}=(0,_.L)(),f=function(e){const t=(0,F.Z)();return(0,a.useMemo)((()=>e.href?e.href:!t&&e.collapsible?(0,i.Wl)(e):void 0),[e,t])}(t),g=(0,i._F)(t,o),v=(0,A.Mg)(h,o),{collapsed:k,setCollapsed:I}=(0,M.u)({initialState:()=>!!b&&(!g&&t.collapsed)}),{expandedItem:N,setExpandedItem:S}=function(){const e=(0,a.useContext)(L);if(e===x)throw new T.i6("DocSidebarItemsExpandedStateProvider");return e}(),Z=function(e){void 0===e&&(e=!k),S(e?null:s),I(e)};return function(e){let{isActive:t,collapsed:n,updateCollapsed:l}=e;const o=(0,T.D9)(t);(0,a.useEffect)((()=>{t&&!o&&n&&l(!1)}),[t,o,n,l])}({isActive:g,collapsed:k,updateCollapsed:Z}),(0,a.useEffect)((()=>{b&&null!=N&&N!==s&&E&&I(!0)}),[b,N,s,I,E]),a.createElement("li",{className:(0,l.Z)(r.k.docs.docSidebarItemCategory,r.k.docs.docSidebarItemCategoryLevel(c),"menu__list-item",{"menu__list-item--collapsed":k},p)},a.createElement("div",{className:(0,l.Z)("menu__list-item-collapsible",{"menu__list-item-collapsible--active":v})},a.createElement(B.Z,(0,C.Z)({className:(0,l.Z)("menu__link",{"menu__link--sublist":b,"menu__link--sublist-caret":!h&&b,"menu__link--active":g}),onClick:b?e=>{null==n||n(t),h?Z(!1):(e.preventDefault(),Z())}:()=>{null==n||n(t)},"aria-current":v?"page":void 0,"aria-expanded":b?!k:void 0,href:b?f??"#":f},d),u),h&&b&&a.createElement(H,{categoryLabel:u,onClick:e=>{e.preventDefault(),Z()}})),a.createElement(M.z,{lazy:!0,as:"ul",className:"menu__list",collapsed:k},a.createElement(G,{items:m,tabIndex:k?-1:0,onItemClick:n,activePath:o,level:c+1})))}var W=n(3919),D=n(9471);const R="menuExternalLink_NmtK";function z(e){let{item:t,onItemClick:n,activePath:o,level:c,index:s,...d}=e;const{href:m,label:u,className:b,autoAddBaseUrl:p}=t,h=(0,i._F)(t,o),E=(0,W.Z)(m);return a.createElement("li",{className:(0,l.Z)(r.k.docs.docSidebarItemLink,r.k.docs.docSidebarItemLinkLevel(c),"menu__list-item",b),key:u},a.createElement(B.Z,(0,C.Z)({className:(0,l.Z)("menu__link",!E&&R,{"menu__link--active":h}),autoAddBaseUrl:p,"aria-current":h?"page":void 0,to:m},E&&{onClick:n?()=>n(t):void 0},d),u,!E&&a.createElement(D.Z,null)))}const U="menuHtmlItem_M9Kj";function K(e){let{item:t,level:n,index:o}=e;const{value:c,defaultStyle:i,className:s}=t;return a.createElement("li",{className:(0,l.Z)(r.k.docs.docSidebarItemLink,r.k.docs.docSidebarItemLinkLevel(n),i&&[U,"menu__list-item"],s),key:o,dangerouslySetInnerHTML:{__html:c}})}function V(e){let{item:t,...n}=e;switch(t.type){case"category":return a.createElement(P,(0,C.Z)({item:t},n));case"html":return a.createElement(K,(0,C.Z)({item:t},n));default:return a.createElement(z,(0,C.Z)({item:t},n))}}function j(e){let{items:t,...n}=e;return a.createElement(w,null,t.map(((e,t)=>a.createElement(V,(0,C.Z)({key:t,item:e,index:t},n)))))}const G=(0,a.memo)(j),Y="menu_SIkG",q="menuWithAnnouncementBar_GW3s";function O(e){let{path:t,sidebar:n,className:o}=e;const c=function(){const{isActive:e}=(0,y.nT)(),[t,n]=(0,a.useState)(e);return(0,b.RF)((t=>{let{scrollY:a}=t;e&&n(0===a)}),[e]),e&&t}();return a.createElement("nav",{className:(0,l.Z)("menu thin-scrollbar",Y,c&&q,o)},a.createElement("ul",{className:(0,l.Z)(r.k.docs.docSidebarMenu,"menu__list")},a.createElement(G,{items:n,activePath:t,level:1})))}const X="sidebar_njMd",J="sidebarWithHideableNavbar_wUlq",Q="sidebarHidden_VK0M",$="sidebarLogo_isFc";function ee(e){let{path:t,sidebar:n,onCollapse:o,isHidden:r}=e;const{navbar:{hideOnScroll:c},docs:{sidebar:{hideable:i}}}=(0,_.L)();return a.createElement("div",{className:(0,l.Z)(X,c&&J,r&&Q)},c&&a.createElement(k.Z,{tabIndex:-1,className:$}),a.createElement(O,{path:t,sidebar:n}),i&&a.createElement(Z,{onClick:o}))}const te=a.memo(ee);var ne=n(3102),ae=n(2961);const le=e=>{let{sidebar:t,path:n}=e;const o=(0,ae.e)();return a.createElement("ul",{className:(0,l.Z)(r.k.docs.docSidebarMenu,"menu__list")},a.createElement(G,{items:t,activePath:n,onItemClick:e=>{"category"===e.type&&e.href&&o.toggle(),"link"===e.type&&o.toggle()},level:1}))};function oe(e){return a.createElement(ne.Zo,{component:le,props:e})}const re=a.memo(oe);function ce(e){const t=(0,v.i)(),n="desktop"===t||"ssr"===t,l="mobile"===t;return a.createElement(a.Fragment,null,n&&a.createElement(te,e),l&&a.createElement(re,e))}const ie="expandButton_m80_",se="expandButtonIcon_BlDH";function de(e){let{toggleSidebar:t}=e;return a.createElement("div",{className:ie,title:(0,u.I)({id:"theme.docs.sidebar.expandButtonTitle",message:"Expand sidebar",description:"The ARIA label and title attribute for expand button of doc sidebar"}),"aria-label":(0,u.I)({id:"theme.docs.sidebar.expandButtonAriaLabel",message:"Expand sidebar",description:"The ARIA label and title attribute for expand button of doc sidebar"}),tabIndex:0,role:"button",onKeyDown:t,onClick:t},a.createElement(I,{className:se}))}const me="docSidebarContainer_b6E3",ue="docSidebarContainerHidden_b3ry";function be(e){let{children:t}=e;const n=(0,d.V)();return a.createElement(a.Fragment,{key:(null==n?void 0:n.name)??"noSidebar"},t)}function pe(e){let{sidebar:t,hiddenSidebarContainer:n,setHiddenSidebarContainer:o}=e;const{pathname:c}=(0,g.TH)(),[i,s]=(0,a.useState)(!1),d=(0,a.useCallback)((()=>{i&&s(!1),o((e=>!e))}),[o,i]);return a.createElement("aside",{className:(0,l.Z)(r.k.docs.docSidebarContainer,me,n&&ue),onTransitionEnd:e=>{e.currentTarget.classList.contains(me)&&n&&s(!0)}},a.createElement(be,null,a.createElement(ce,{sidebar:t,path:c,onCollapse:d,isHidden:i})),i&&a.createElement(de,{toggleSidebar:d}))}const he={docMainContainer:"docMainContainer_gTbr",docMainContainerEnhanced:"docMainContainerEnhanced_Uz_u",docItemWrapperEnhanced:"docItemWrapperEnhanced_czyv"};function Ee(e){let{hiddenSidebarContainer:t,children:n}=e;const o=(0,d.V)();return a.createElement("main",{className:(0,l.Z)(he.docMainContainer,(t||!o)&&he.docMainContainerEnhanced)},a.createElement("div",{className:(0,l.Z)("container padding-top--md padding-bottom--lg",he.docItemWrapper,t&&he.docItemWrapperEnhanced)},n))}const fe="docPage__5DB",ge="docsWrapper_BCFX";function ve(e){let{children:t}=e;const n=(0,d.V)(),[l,o]=(0,a.useState)(!1);return a.createElement(m.Z,{wrapperClassName:ge},a.createElement(f,null),a.createElement("div",{className:fe},n&&a.createElement(pe,{sidebar:n.items,hiddenSidebarContainer:l,setHiddenSidebarContainer:o}),a.createElement(Ee,{hiddenSidebarContainer:l},t)))}var _e=n(4972),ke=n(197);function Ce(e){const{versionMetadata:t}=e;return a.createElement(a.Fragment,null,a.createElement(ke.Z,{version:t.version,tag:(0,c.os)(t.pluginId,t.version)}),a.createElement(o.d,null,t.noIndex&&a.createElement("meta",{name:"robots",content:"noindex, nofollow"})))}function Ie(e){const{versionMetadata:t}=e,n=(0,i.hI)(e);if(!n)return a.createElement(_e.default,null);const{docElement:c,sidebarName:m,sidebarItems:u}=n;return a.createElement(a.Fragment,null,a.createElement(Ce,e),a.createElement(o.FG,{className:(0,l.Z)(r.k.wrapper.docsPages,r.k.page.docsDocPage,e.versionMetadata.className)},a.createElement(s.q,{version:t},a.createElement(d.b,{name:m,items:u},a.createElement(ve,null,c)))))}},4972:(e,t,n)=>{n.r(t),n.d(t,{default:()=>c});var a=n(7294),l=n(5999),o=n(1944),r=n(4704);function c(){return a.createElement(a.Fragment,null,a.createElement(o.d,{title:(0,l.I)({id:"theme.NotFound.title",message:"Page Not Found"})}),a.createElement(r.Z,null,a.createElement("main",{className:"container margin-vert--xl"},a.createElement("div",{className:"row"},a.createElement("div",{className:"col col--6 col--offset-3"},a.createElement("h1",{className:"hero__title"},a.createElement(l.Z,{id:"theme.NotFound.title",description:"The title of the 404 page"},"Page Not Found")),a.createElement("p",null,a.createElement(l.Z,{id:"theme.NotFound.p1",description:"The first paragraph of the 404 page"},"We could not find what you were looking for.")),a.createElement("p",null,a.createElement(l.Z,{id:"theme.NotFound.p2",description:"The 2nd paragraph of the 404 page"},"Please contact the owner of the site that linked you to the original URL and let them know their link is broken.")))))))}}}]); \ No newline at end of file diff --git a/assets/js/1df93b7f.6c196ace.js b/assets/js/1df93b7f.6c196ace.js new file mode 100644 index 00000000..da4b9a9f --- /dev/null +++ b/assets/js/1df93b7f.6c196ace.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[237],{3808:(e,t,n)=>{n.r(t),n.d(t,{default:()=>p});var a=n(7462),i=n(7294),o=n(6010),l=n(9960),r=n(2263),s=n(4704);const c="heroBanner_qdFl",u="buttons_AeoN",m="description_meEo",d="features_cAfv",g="feature_xuHn",h=[{title:"Auto-generated changelogs from Git history"},{title:"Auto-generated API documentations (using FastAPI)"},{title:"Auto-generated API clients (using openapi generator)"},{title:"Pre-commit hooks"},{title:"CI/CD (using Github Actions)"},{title:"Pydantic data validation"},{title:"OAuth2"},{title:"Standardized API error and response model"},{title:"Run using Docker"},{title:"Documentation solution (using Docusaurus)"}];function E(){const{siteConfig:e}=(0,r.Z)();return i.createElement("header",{className:(0,o.Z)("hero hero--primary",c)},i.createElement("div",{className:"container"},i.createElement("h1",{className:"hero__title"},e.title),i.createElement("p",{className:"hero__subtitle"},e.tagline),i.createElement("div",{className:u},i.createElement(l.Z,{className:"button button--secondary button--lg",to:"/docs/about/introduction"},"Start reading the docs"))))}function f(e){let{title:t}=e;return i.createElement("div",{className:(0,o.Z)(g)},t)}function p(){const{siteConfig:e}=(0,r.Z)();return i.createElement(s.Z,{title:`Frontpage | ${e.title}`,description:`Frontpage for ${e.title}`},i.createElement(E,null),i.createElement("main",null,(null==h?void 0:h.length)>0&&i.createElement(i.Fragment,null,i.createElement("h2",{className:m},"Features include:"),i.createElement("section",{className:"container "+d},h.map(((e,t)=>i.createElement(f,(0,a.Z)({key:t},e))))))))}}}]); \ No newline at end of file diff --git a/assets/js/1f391b9e.1cd91990.js b/assets/js/1f391b9e.1cd91990.js new file mode 100644 index 00000000..919c8087 --- /dev/null +++ b/assets/js/1f391b9e.1cd91990.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[85],{4247:(e,t,a)=>{a.r(t),a.d(t,{default:()=>d});var n=a(7294),l=a(6010),c=a(1944),r=a(5281),m=a(4704),i=a(5203),o=a(9407);const s="mdxPageWrapper_j9I6";function d(e){const{content:t}=e,{metadata:{title:a,description:d,frontMatter:u}}=t,{wrapperClassName:p,hide_table_of_contents:g}=u;return n.createElement(c.FG,{className:(0,l.Z)(p??r.k.wrapper.mdxPages,r.k.page.mdxPage)},n.createElement(c.d,{title:a,description:d}),n.createElement(m.Z,null,n.createElement("main",{className:"container container--fluid margin-vert--lg"},n.createElement("div",{className:(0,l.Z)("row",s)},n.createElement("div",{className:(0,l.Z)("col",!g&&"col--8")},n.createElement("article",null,n.createElement(i.Z,null,n.createElement(t,null)))),!g&&t.toc.length>0&&n.createElement("div",{className:"col col--2"},n.createElement(o.Z,{toc:t.toc,minHeadingLevel:u.toc_min_heading_level,maxHeadingLevel:u.toc_max_heading_level}))))))}}}]); \ No newline at end of file diff --git a/assets/js/20f005c0.049174b7.js b/assets/js/20f005c0.049174b7.js new file mode 100644 index 00000000..fee25fe8 --- /dev/null +++ b/assets/js/20f005c0.049174b7.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[141],{2359:(e,t,o)=>{o.r(t),o.d(t,{assets:()=>p,contentTitle:()=>a,default:()=>u,frontMatter:()=>d,metadata:()=>i,toc:()=>_});var n=o(7462),s=(o(7294),o(3905)),r=(o(1839),o(814));const d={},a="Controller",i={unversionedId:"contribute/development-guide/coding/extending-the-api/adding-features/controllers",id:"contribute/development-guide/coding/extending-the-api/adding-features/controllers",title:"Controller",description:"A controller receives a request, then calls a use case, before finally returning a response.",source:"@site/docs/contribute/development-guide/coding/extending-the-api/adding-features/01-controllers.md",sourceDirName:"contribute/development-guide/coding/extending-the-api/adding-features",slug:"/contribute/development-guide/coding/extending-the-api/adding-features/controllers",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/controllers",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/contribute/development-guide/coding/extending-the-api/adding-features/01-controllers.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{},sidebar:"contribute",previous:{title:"Adding features",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/"},next:{title:"Use cases",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/use-cases"}},p={},_=[{value:"Testing controllers",id:"testing-controllers",level:2}],l={toc:_};function u(e){let{components:t,...o}=e;return(0,s.kt)("wrapper",(0,n.Z)({},l,o,{components:t,mdxType:"MDXLayout"}),(0,s.kt)("h1",{id:"controller"},"Controller"),(0,s.kt)("p",null,"A controller receives a request, then calls a use case, before finally returning a response."),(0,s.kt)("p",null,"The controller (adapter layer) is responsible for validating and transforming requests into an understandable format for the use cases (application layer). The format is defined inside the use cases by the request and response models. The controller takes the user input (the request), converts it into the request model defined by the use case and passes the request model to the use case, and at the end return the response model."),(0,s.kt)(r.Z,{language:"jsx",mdxType:"CodeBlock"},'from fastapi import APIRouter, Depends\n\nfrom authentication.authentication import auth_with_jwt\nfrom authentication.models import User\nfrom features.todo.repository.todo_repository import get_todo_repository\nfrom features.todo.repository.todo_repository_interface import TodoRepositoryInterface\nfrom features.todo.use_cases.add_todo import (\n AddTodoRequest,\n AddTodoResponse,\n add_todo_use_case,\n)\nfrom features.todo.use_cases.delete_todo_by_id import (\n DeleteTodoByIdResponse,\n delete_todo_use_case,\n)\nfrom features.todo.use_cases.get_todo_all import GetTodoAllResponse, get_todo_all_use_case\nfrom features.todo.use_cases.get_todo_by_id import (\n GetTodoByIdResponse,\n get_todo_by_id_use_case,\n)\nfrom features.todo.use_cases.update_todo import (\n UpdateTodoRequest,\n UpdateTodoResponse,\n update_todo_use_case,\n)\n\nrouter = APIRouter(tags=["todos"], prefix="/todos")\n\n\n@router.post("", operation_id="create")\ndef add_todo(\n data: AddTodoRequest,\n user: User = Depends(auth_with_jwt),\n todo_repository: TodoRepositoryInterface = Depends(get_todo_repository),\n) -> AddTodoResponse:\n return add_todo_use_case(data=data, user_id=user.user_id, todo_repository=todo_repository)\n\n\n@router.get("/{id}", operation_id="get_by_id")\ndef get_todo_by_id(\n id: str,\n user: User = Depends(auth_with_jwt),\n todo_repository: TodoRepositoryInterface = Depends(get_todo_repository),\n) -> GetTodoByIdResponse:\n return get_todo_by_id_use_case(id=id, user_id=user.user_id, todo_repository=todo_repository)\n\n\n@router.delete("/{id}", operation_id="delete_by_id")\ndef delete_todo_by_id(\n id: str,\n user: User = Depends(auth_with_jwt),\n todo_repository: TodoRepositoryInterface = Depends(get_todo_repository),\n) -> DeleteTodoByIdResponse:\n return delete_todo_use_case(id=id, user_id=user.user_id, todo_repository=todo_repository)\n\n\n@router.get("", operation_id="get_all")\ndef get_todo_all(\n user: User = Depends(auth_with_jwt), todo_repository: TodoRepositoryInterface = Depends(get_todo_repository)\n) -> list[GetTodoAllResponse]:\n return get_todo_all_use_case(user_id=user.user_id, todo_repository=todo_repository) # type: ignore\n\n\n@router.put("/{id}", operation_id="update_by_id")\ndef update_todo(\n id: str,\n data: UpdateTodoRequest,\n user: User = Depends(auth_with_jwt),\n todo_repository: TodoRepositoryInterface = Depends(get_todo_repository),\n) -> UpdateTodoResponse:\n return update_todo_use_case(id=id, data=data, user_id=user.user_id, todo_repository=todo_repository)\n'),(0,s.kt)("ul",null,(0,s.kt)("li",{parentName:"ul"},(0,s.kt)("inlineCode",{parentName:"li"},"Required"),(0,s.kt)("ul",{parentName:"li"},(0,s.kt)("li",{parentName:"ul"},"The controller needs to be decorated with the ",(0,s.kt)("inlineCode",{parentName:"li"},"create_response")," decorator, which handles exceptions and returns a unified response type."),(0,s.kt)("li",{parentName:"ul"},"The controller needs to have set the ",(0,s.kt)("inlineCode",{parentName:"li"},"response_model")," and ",(0,s.kt)("inlineCode",{parentName:"li"},"request_model"),", that is used to generate API documentation and used for validation."))),(0,s.kt)("li",{parentName:"ul"},(0,s.kt)("inlineCode",{parentName:"li"},"Optional"),(0,s.kt)("ul",{parentName:"li"},(0,s.kt)("li",{parentName:"ul"},"Add ",(0,s.kt)("a",{parentName:"li",href:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repository-interfaces"},"repository interface")," to handle communication to external services such as databases and inject the repository implementations to the controller endpoint and pass the injected repository implementations to the use case.")))),(0,s.kt)("admonition",{type:"note"},(0,s.kt)("p",{parentName:"admonition"},"FastAPI is built around the ",(0,s.kt)("a",{parentName:"p",href:"https://github.com/OAI/OpenAPI-Specification"},"OpenAPI Specification")," (formerly known as swagger) standards. In FastAPI, by coding your endpoints, you are automatically writing your API documentation. FastAPI maps your endpoint details to a ",(0,s.kt)("a",{parentName:"p",href:"https://json-schema.org/"},"JSON Schema")," document. Under the hood, FastAPI uses Pydantic for data validation. With Pydantic along with ",(0,s.kt)("a",{parentName:"p",href:"https://docs.python.org/3/library/typing.html"},"type hints"),", you get a nice editor experience with autocompletion.")),(0,s.kt)("h2",{id:"testing-controllers"},"Testing controllers"),(0,s.kt)("p",null,"Use the ",(0,s.kt)("inlineCode",{parentName:"p"},"test_client")," fixture to populate the database with test data and ",(0,s.kt)("inlineCode",{parentName:"p"},"test_app")," fixture to perform REST API calls."),(0,s.kt)(r.Z,{language:"jsx",mdxType:"CodeBlock"},'import pytest\nfrom starlette.status import (\n HTTP_200_OK,\n HTTP_404_NOT_FOUND,\n HTTP_422_UNPROCESSABLE_ENTITY,\n)\nfrom starlette.testclient import TestClient\n\nfrom data_providers.clients.client_interface import ClientInterface\n\n\nclass TestTodo:\n @pytest.fixture(autouse=True)\n def setup_database(self, test_client: ClientInterface):\n test_client.insert_many(\n [\n {"_id": "1", "id": "1", "title": "title 1", "user_id": "nologin"},\n {"_id": "2", "id": "2", "title": "title 2", "user_id": "nologin"},\n ]\n )\n\n def test_get_todo_all(self, test_app: TestClient):\n response = test_app.get("/todos")\n items = response.json()\n\n assert response.status_code == HTTP_200_OK\n assert len(items) == 2\n assert items[0]["id"] == "1"\n assert items[0]["title"] == "title 1"\n assert items[1]["id"] == "2"\n assert items[1]["title"] == "title 2"\n\n def test_get_todo_by_id(self, test_app: TestClient):\n response = test_app.get("/todos/1")\n\n assert response.status_code == HTTP_200_OK\n assert response.json()["id"] == "1"\n assert response.json()["title"] == "title 1"\n\n def test_get_todo_should_return_not_found(self, test_app: TestClient):\n response = test_app.get("/todos/unknown")\n assert response.status_code == HTTP_404_NOT_FOUND\n\n def test_add_todo(self, test_app: TestClient):\n response = test_app.post("/todos", json={"title": "title 3"})\n item = response.json()\n\n assert response.status_code == HTTP_200_OK\n assert item["title"] == "title 3"\n\n def test_add_todo_should_return_unprocessable_when_invalid_entity(self, test_app: TestClient):\n response = test_app.post("/todos", json=None)\n\n assert response.status_code == HTTP_422_UNPROCESSABLE_ENTITY\n\n def test_update_todo(self, test_app):\n response = test_app.put("/todos/1", json={"title": "title 1 updated", "is_completed": False})\n\n assert response.status_code == HTTP_200_OK\n assert response.json()["success"]\n\n def test_update_todo_should_return_not_found(self, test_app):\n response = test_app.put("/todos/unknown", json={"title": "something", "is_completed": False})\n assert response.status_code == HTTP_404_NOT_FOUND\n\n def test_update_todo_should_return_unprocessable_when_invalid_entity(self, test_app: TestClient):\n response = test_app.put("/todos/1", json={"title": ""})\n\n assert response.status_code == HTTP_422_UNPROCESSABLE_ENTITY\n\n def test_delete_todo(self, test_app: TestClient):\n response = test_app.delete("/todos/1")\n\n assert response.status_code == HTTP_200_OK\n assert response.json()["success"]\n\n def test_delete_todo_should_return_not_found(self, test_app: TestClient):\n response = test_app.delete("/todos/unknown")\n assert response.status_code == HTTP_404_NOT_FOUND\n'),(0,s.kt)("admonition",{type:"note"},(0,s.kt)("p",{parentName:"admonition"},"Mark it as integration test.")))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/2424d345.a6d361c6.js b/assets/js/2424d345.a6d361c6.js new file mode 100644 index 00000000..94560503 --- /dev/null +++ b/assets/js/2424d345.a6d361c6.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[89],{5449:(t,o,e)=>{e.r(o),e.d(o,{assets:()=>d,contentTitle:()=>s,default:()=>c,frontMatter:()=>i,metadata:()=>r,toc:()=>h});var a=e(7462),n=(e(7294),e(3905));e(1839);const i={},s="How to do something",r={unversionedId:"about/how-to/how-to-do-something",id:"about/how-to/how-to-do-something",title:"How to do something",description:"",source:"@site/docs/about/how-to/01-how-to-do-something.md",sourceDirName:"about/how-to",slug:"/about/how-to/how-to-do-something",permalink:"/template-fastapi-react/docs/about/how-to/how-to-do-something",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/about/how-to/01-how-to-do-something.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{},sidebar:"about",previous:{title:"How to",permalink:"/template-fastapi-react/docs/category/how-to"},next:{title:"Running",permalink:"/template-fastapi-react/docs/category/running"}},d={},h=[],m={toc:h};function c(t){let{components:o,...e}=t;return(0,n.kt)("wrapper",(0,a.Z)({},m,e,{components:o,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"how-to-do-something"},"How to do something"))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/2e61c9f2.6d5fa105.js b/assets/js/2e61c9f2.6d5fa105.js new file mode 100644 index 00000000..893e50a3 --- /dev/null +++ b/assets/js/2e61c9f2.6d5fa105.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[413],{9811:(t,e,i)=>{i.r(e),i.d(e,{assets:()=>l,contentTitle:()=>s,default:()=>d,frontMatter:()=>a,metadata:()=>u,toc:()=>r});var n=i(7462),o=(i(7294),i(3905));i(1839);const a={},s="Documentation",u={unversionedId:"contribute/documentation",id:"contribute/documentation",title:"Documentation",description:"This site was generated from the contents of your documentation folder using Docusaurus and we host it on GitHub Pages.",source:"@site/docs/contribute/03-documentation.md",sourceDirName:"contribute",slug:"/contribute/documentation",permalink:"/template-fastapi-react/docs/contribute/documentation",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/contribute/03-documentation.md",tags:[],version:"current",sidebarPosition:3,frontMatter:{},sidebar:"contribute",previous:{title:"Publishing",permalink:"/template-fastapi-react/docs/contribute/development-guide/publishing"}},l={},r=[{value:"How it works",id:"how-it-works",level:2},{value:"Publishing",id:"publishing",level:2},{value:"Initial settings",id:"initial-settings",level:2},{value:"Assets",id:"assets",level:2}],c={toc:r};function d(t){let{components:e,...i}=t;return(0,o.kt)("wrapper",(0,n.Z)({},c,i,{components:e,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"documentation"},"Documentation"),(0,o.kt)("p",null,"This site was generated from the contents of your ",(0,o.kt)("inlineCode",{parentName:"p"},"documentation")," folder using ",(0,o.kt)("a",{parentName:"p",href:"https://docusaurus.io/"},"Docusaurus")," and we host it on GitHub Pages."),(0,o.kt)("h2",{id:"how-it-works"},"How it works"),(0,o.kt)("p",null,"From Docusaurus own documentation:"),(0,o.kt)("blockquote",null,(0,o.kt)("p",{parentName:"blockquote"},"Docusaurus is a static-site generator. It builds a single-page application with fast client-side navigation, leveraging the full power of React to make your site interactive. It provides out-of-the-box documentation features but can be used to create any kind of site (personal website, product, blog, marketing landing pages, etc).")),(0,o.kt)("p",null,"While Docusaurus is rich on features, we use it mostly to host markdown pages. The main bulk of the documentation is located in ",(0,o.kt)("inlineCode",{parentName:"p"},"documentation/docs"),"."),(0,o.kt)("h2",{id:"publishing"},"Publishing"),(0,o.kt)("p",null,"We are using the Github Action ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/equinor/template-fastapi-react/blob/main/.github/workflows/publish-docs.yaml"},(0,o.kt)("inlineCode",{parentName:"a"},"publish-docs.yaml"))," to build and publish the documentation website. This action is run every time someone pushes to the ",(0,o.kt)("inlineCode",{parentName:"p"},"main")," branch."),(0,o.kt)("p",null,"This will checkout the code, download the changelog from the ",(0,o.kt)("inlineCode",{parentName:"p"},"generate-changelog.yaml")," action, and build the documentation. Then it will deploy the documentation (placed in the documentation/build/ folder) to GitHub Pages."),(0,o.kt)("h2",{id:"initial-settings"},"Initial settings"),(0,o.kt)("p",null,"When deployed to GitHub Pages, you do need to configure your site under the settings. Pick the gh-pages branch and select either a private url or a public one. It will show you the site\u2019s url, which should now contain your generated documentation site."),(0,o.kt)("h2",{id:"assets"},"Assets"),(0,o.kt)("p",null,"All assets files are places under ",(0,o.kt)("inlineCode",{parentName:"p"},"documentation/static")))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/327.6bc39bf0.js b/assets/js/327.6bc39bf0.js new file mode 100644 index 00000000..f10b1f6a --- /dev/null +++ b/assets/js/327.6bc39bf0.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[327],{2503:(e,n,t)=>{t.d(n,{Z:()=>m});var a=t(7462),i=t(7294),l=t(6010),o=t(5999),r=t(6668);const c="anchorWithStickyNavbar_LWe7",s="anchorWithHideOnScrollNavbar_WYt5";function m(e){let{as:n,id:t,...m}=e;const{navbar:{hideOnScroll:d}}=(0,r.L)();return"h1"!==n&&t?i.createElement(n,(0,a.Z)({},m,{className:(0,l.Z)("anchor",d?s:c),id:t}),m.children,i.createElement("a",{className:"hash-link",href:`#${t}`,title:(0,o.I)({id:"theme.common.headingLinkTitle",message:"Direct link to heading",description:"Title for link to heading"})},"\u200b")):i.createElement(n,(0,a.Z)({},m,{id:void 0}))}},5203:(e,n,t)=>{t.d(n,{Z:()=>S});var a=t(7294),i=t(3905),l=t(7462),o=t(5742);var r=t(814);var c=t(9960);var s=t(6010),m=t(2389),d=t(6043);const u="details_lb9f",f="isBrowser_bmU9",h="collapsibleContent_i85q";function v(e){return!!e&&("SUMMARY"===e.tagName||v(e.parentElement))}function p(e,n){return!!e&&(e===n||p(e.parentElement,n))}function E(e){let{summary:n,children:t,...i}=e;const o=(0,m.Z)(),r=(0,a.useRef)(null),{collapsed:c,setCollapsed:E}=(0,d.u)({initialState:!i.open}),[g,C]=(0,a.useState)(i.open);return a.createElement("details",(0,l.Z)({},i,{ref:r,open:g,"data-collapsed":c,className:(0,s.Z)(u,o&&f,i.className),onMouseDown:e=>{v(e.target)&&e.detail>1&&e.preventDefault()},onClick:e=>{e.stopPropagation();const n=e.target;v(n)&&p(n,r.current)&&(e.preventDefault(),c?(E(!1),C(!0)):E(!0))}}),n??a.createElement("summary",null,"Details"),a.createElement(d.z,{lazy:!1,collapsed:c,disableSSRStyle:!0,onCollapseTransitionEnd:e=>{E(e),C(!e)}},a.createElement("div",{className:h},t)))}const g="details_b_Ee";function C(e){let{...n}=e;return a.createElement(E,(0,l.Z)({},n,{className:(0,s.Z)("alert alert--info",g,n.className)}))}var N=t(2503);function L(e){return a.createElement(N.Z,e)}const b="containsTaskList_mC6p";const Z="img_ev3q";var y=t(5281),H=t(5999);const k="admonition_LlT9",x="admonitionHeading_tbUL",T="admonitionIcon_kALy",_="admonitionContent_S0QG";const z={note:{infimaClassName:"secondary",iconComponent:function(){return a.createElement("svg",{viewBox:"0 0 14 16"},a.createElement("path",{fillRule:"evenodd",d:"M6.3 5.69a.942.942 0 0 1-.28-.7c0-.28.09-.52.28-.7.19-.18.42-.28.7-.28.28 0 .52.09.7.28.18.19.28.42.28.7 0 .28-.09.52-.28.7a1 1 0 0 1-.7.3c-.28 0-.52-.11-.7-.3zM8 7.99c-.02-.25-.11-.48-.31-.69-.2-.19-.42-.3-.69-.31H6c-.27.02-.48.13-.69.31-.2.2-.3.44-.31.69h1v3c.02.27.11.5.31.69.2.2.42.31.69.31h1c.27 0 .48-.11.69-.31.2-.19.3-.42.31-.69H8V7.98v.01zM7 2.3c-3.14 0-5.7 2.54-5.7 5.68 0 3.14 2.56 5.7 5.7 5.7s5.7-2.55 5.7-5.7c0-3.15-2.56-5.69-5.7-5.69v.01zM7 .98c3.86 0 7 3.14 7 7s-3.14 7-7 7-7-3.12-7-7 3.14-7 7-7z"}))},label:a.createElement(H.Z,{id:"theme.admonition.note",description:"The default label used for the Note admonition (:::note)"},"note")},tip:{infimaClassName:"success",iconComponent:function(){return a.createElement("svg",{viewBox:"0 0 12 16"},a.createElement("path",{fillRule:"evenodd",d:"M6.5 0C3.48 0 1 2.19 1 5c0 .92.55 2.25 1 3 1.34 2.25 1.78 2.78 2 4v1h5v-1c.22-1.22.66-1.75 2-4 .45-.75 1-2.08 1-3 0-2.81-2.48-5-5.5-5zm3.64 7.48c-.25.44-.47.8-.67 1.11-.86 1.41-1.25 2.06-1.45 3.23-.02.05-.02.11-.02.17H5c0-.06 0-.13-.02-.17-.2-1.17-.59-1.83-1.45-3.23-.2-.31-.42-.67-.67-1.11C2.44 6.78 2 5.65 2 5c0-2.2 2.02-4 4.5-4 1.22 0 2.36.42 3.22 1.19C10.55 2.94 11 3.94 11 5c0 .66-.44 1.78-.86 2.48zM4 14h5c-.23 1.14-1.3 2-2.5 2s-2.27-.86-2.5-2z"}))},label:a.createElement(H.Z,{id:"theme.admonition.tip",description:"The default label used for the Tip admonition (:::tip)"},"tip")},danger:{infimaClassName:"danger",iconComponent:function(){return a.createElement("svg",{viewBox:"0 0 12 16"},a.createElement("path",{fillRule:"evenodd",d:"M5.05.31c.81 2.17.41 3.38-.52 4.31C3.55 5.67 1.98 6.45.9 7.98c-1.45 2.05-1.7 6.53 3.53 7.7-2.2-1.16-2.67-4.52-.3-6.61-.61 2.03.53 3.33 1.94 2.86 1.39-.47 2.3.53 2.27 1.67-.02.78-.31 1.44-1.13 1.81 3.42-.59 4.78-3.42 4.78-5.56 0-2.84-2.53-3.22-1.25-5.61-1.52.13-2.03 1.13-1.89 2.75.09 1.08-1.02 1.8-1.86 1.33-.67-.41-.66-1.19-.06-1.78C8.18 5.31 8.68 2.45 5.05.32L5.03.3l.02.01z"}))},label:a.createElement(H.Z,{id:"theme.admonition.danger",description:"The default label used for the Danger admonition (:::danger)"},"danger")},info:{infimaClassName:"info",iconComponent:function(){return a.createElement("svg",{viewBox:"0 0 14 16"},a.createElement("path",{fillRule:"evenodd",d:"M7 2.3c3.14 0 5.7 2.56 5.7 5.7s-2.56 5.7-5.7 5.7A5.71 5.71 0 0 1 1.3 8c0-3.14 2.56-5.7 5.7-5.7zM7 1C3.14 1 0 4.14 0 8s3.14 7 7 7 7-3.14 7-7-3.14-7-7-7zm1 3H6v5h2V4zm0 6H6v2h2v-2z"}))},label:a.createElement(H.Z,{id:"theme.admonition.info",description:"The default label used for the Info admonition (:::info)"},"info")},caution:{infimaClassName:"warning",iconComponent:function(){return a.createElement("svg",{viewBox:"0 0 16 16"},a.createElement("path",{fillRule:"evenodd",d:"M8.893 1.5c-.183-.31-.52-.5-.887-.5s-.703.19-.886.5L.138 13.499a.98.98 0 0 0 0 1.001c.193.31.53.501.886.501h13.964c.367 0 .704-.19.877-.5a1.03 1.03 0 0 0 .01-1.002L8.893 1.5zm.133 11.497H6.987v-2.003h2.039v2.003zm0-3.004H6.987V5.987h2.039v4.006z"}))},label:a.createElement(H.Z,{id:"theme.admonition.caution",description:"The default label used for the Caution admonition (:::caution)"},"caution")}},M={secondary:"note",important:"info",success:"tip",warning:"danger"};function A(e){const{mdxAdmonitionTitle:n,rest:t}=function(e){const n=a.Children.toArray(e),t=n.find((e=>{var n;return a.isValidElement(e)&&"mdxAdmonitionTitle"===(null==(n=e.props)?void 0:n.mdxType)})),i=a.createElement(a.Fragment,null,n.filter((e=>e!==t)));return{mdxAdmonitionTitle:t,rest:i}}(e.children);return{...e,title:e.title??n,children:t}}const w={head:function(e){const n=a.Children.map(e.children,(e=>a.isValidElement(e)?function(e){var n;if(null!=(n=e.props)&&n.mdxType&&e.props.originalType){const{mdxType:n,originalType:t,...i}=e.props;return a.createElement(e.props.originalType,i)}return e}(e):e));return a.createElement(o.Z,e,n)},code:function(e){const n=["a","b","big","i","span","em","strong","sup","sub","small"];return a.Children.toArray(e.children).every((e=>{var t;return"string"==typeof e&&!e.includes("\n")||(0,a.isValidElement)(e)&&n.includes(null==(t=e.props)?void 0:t.mdxType)}))?a.createElement("code",e):a.createElement(r.Z,e)},a:function(e){return a.createElement(c.Z,e)},pre:function(e){var n;return a.createElement(r.Z,(0,a.isValidElement)(e.children)&&"code"===(null==(n=e.children.props)?void 0:n.originalType)?e.children.props:{...e})},details:function(e){const n=a.Children.toArray(e.children),t=n.find((e=>{var n;return a.isValidElement(e)&&"summary"===(null==(n=e.props)?void 0:n.mdxType)})),i=a.createElement(a.Fragment,null,n.filter((e=>e!==t)));return a.createElement(C,(0,l.Z)({},e,{summary:t}),i)},ul:function(e){return a.createElement("ul",(0,l.Z)({},e,{className:(n=e.className,(0,s.Z)(n,(null==n?void 0:n.includes("contains-task-list"))&&b))}));var n},img:function(e){return a.createElement("img",(0,l.Z)({loading:"lazy"},e,{className:(n=e.className,(0,s.Z)(n,Z))}));var n},h1:e=>a.createElement(L,(0,l.Z)({as:"h1"},e)),h2:e=>a.createElement(L,(0,l.Z)({as:"h2"},e)),h3:e=>a.createElement(L,(0,l.Z)({as:"h3"},e)),h4:e=>a.createElement(L,(0,l.Z)({as:"h4"},e)),h5:e=>a.createElement(L,(0,l.Z)({as:"h5"},e)),h6:e=>a.createElement(L,(0,l.Z)({as:"h6"},e)),admonition:function(e){const{children:n,type:t,title:i,icon:l}=A(e),o=function(e){const n=M[e]??e;return z[n]||(console.warn(`No admonition config found for admonition type "${n}". Using Info as fallback.`),z.info)}(t),r=i??o.label,{iconComponent:c}=o,m=l??a.createElement(c,null);return a.createElement("div",{className:(0,s.Z)(y.k.common.admonition,y.k.common.admonitionType(e.type),"alert",`alert--${o.infimaClassName}`,k)},a.createElement("div",{className:x},a.createElement("span",{className:T},m),r),a.createElement("div",{className:_},n))}};function S(e){let{children:n}=e;return a.createElement(i.Zo,{components:w},n)}},9407:(e,n,t)=>{t.d(n,{Z:()=>c});var a=t(7462),i=t(7294),l=t(6010),o=t(3743);const r="tableOfContents_bqdL";function c(e){let{className:n,...t}=e;return i.createElement("div",{className:(0,l.Z)(r,"thin-scrollbar",n)},i.createElement(o.Z,(0,a.Z)({},t,{linkClassName:"table-of-contents__link toc-highlight",linkActiveClassName:"table-of-contents__link--active"})))}},3743:(e,n,t)=>{t.d(n,{Z:()=>h});var a=t(7462),i=t(7294),l=t(6668);function o(e){const n=e.map((e=>({...e,parentIndex:-1,children:[]}))),t=Array(7).fill(-1);n.forEach(((e,n)=>{const a=t.slice(2,e.level);e.parentIndex=Math.max(...a),t[e.level]=n}));const a=[];return n.forEach((e=>{const{parentIndex:t,...i}=e;t>=0?n[t].children.push(i):a.push(i)})),a}function r(e){let{toc:n,minHeadingLevel:t,maxHeadingLevel:a}=e;return n.flatMap((e=>{const n=r({toc:e.children,minHeadingLevel:t,maxHeadingLevel:a});return function(e){return e.level>=t&&e.level<=a}(e)?[{...e,children:n}]:n}))}function c(e){const n=e.getBoundingClientRect();return n.top===n.bottom?c(e.parentNode):n}function s(e,n){let{anchorTopOffset:t}=n;const a=e.find((e=>c(e).top>=t));if(a){return function(e){return e.top>0&&e.bottom{e.current=n?0:document.querySelector(".navbar").clientHeight}),[n]),e}function d(e){const n=(0,i.useRef)(void 0),t=m();(0,i.useEffect)((()=>{if(!e)return()=>{};const{linkClassName:a,linkActiveClassName:i,minHeadingLevel:l,maxHeadingLevel:o}=e;function r(){const e=function(e){return Array.from(document.getElementsByClassName(e))}(a),r=function(e){let{minHeadingLevel:n,maxHeadingLevel:t}=e;const a=[];for(let i=n;i<=t;i+=1)a.push(`h${i}.anchor`);return Array.from(document.querySelectorAll(a.join()))}({minHeadingLevel:l,maxHeadingLevel:o}),c=s(r,{anchorTopOffset:t.current}),m=e.find((e=>c&&c.id===function(e){return decodeURIComponent(e.href.substring(e.href.indexOf("#")+1))}(e)));e.forEach((e=>{!function(e,t){t?(n.current&&n.current!==e&&n.current.classList.remove(i),e.classList.add(i),n.current=e):e.classList.remove(i)}(e,e===m)}))}return document.addEventListener("scroll",r),document.addEventListener("resize",r),r(),()=>{document.removeEventListener("scroll",r),document.removeEventListener("resize",r)}}),[e,t])}function u(e){let{toc:n,className:t,linkClassName:a,isChild:l}=e;return n.length?i.createElement("ul",{className:l?void 0:t},n.map((e=>i.createElement("li",{key:e.id},i.createElement("a",{href:`#${e.id}`,className:a??void 0,dangerouslySetInnerHTML:{__html:e.value}}),i.createElement(u,{isChild:!0,toc:e.children,className:t,linkClassName:a}))))):null}const f=i.memo(u);function h(e){let{toc:n,className:t="table-of-contents table-of-contents__left-border",linkClassName:c="table-of-contents__link",linkActiveClassName:s,minHeadingLevel:m,maxHeadingLevel:u,...h}=e;const v=(0,l.L)(),p=m??v.tableOfContents.minHeadingLevel,E=u??v.tableOfContents.maxHeadingLevel,g=function(e){let{toc:n,minHeadingLevel:t,maxHeadingLevel:a}=e;return(0,i.useMemo)((()=>r({toc:o(n),minHeadingLevel:t,maxHeadingLevel:a})),[n,t,a])}({toc:n,minHeadingLevel:p,maxHeadingLevel:E});return d((0,i.useMemo)((()=>{if(c&&s)return{linkClassName:c,linkActiveClassName:s,minHeadingLevel:p,maxHeadingLevel:E}}),[c,s,p,E])),i.createElement(f,(0,a.Z)({toc:g,className:t,linkClassName:c},h))}}}]); \ No newline at end of file diff --git a/assets/js/3cb05d6d.2e6d8bf1.js b/assets/js/3cb05d6d.2e6d8bf1.js new file mode 100644 index 00000000..e338910a --- /dev/null +++ b/assets/js/3cb05d6d.2e6d8bf1.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[176],{516:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>s,default:()=>u,frontMatter:()=>r,metadata:()=>d,toc:()=>p});var a=n(7462),i=(n(7294),n(3905)),o=(n(1839),n(814));const r={sidebar_position:2},s="Extending the API",d={unversionedId:"contribute/development-guide/coding/extending-the-api/index",id:"contribute/development-guide/coding/extending-the-api/index",title:"Extending the API",description:"FastAPI",source:"@site/docs/contribute/development-guide/coding/extending-the-api/index.md",sourceDirName:"contribute/development-guide/coding/extending-the-api",slug:"/contribute/development-guide/coding/extending-the-api/",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/contribute/development-guide/coding/extending-the-api/index.md",tags:[],version:"current",sidebarPosition:2,frontMatter:{sidebar_position:2},sidebar:"contribute",previous:{title:"Architecture overview",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/architecture"},next:{title:"Adding entities",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-entities"}},l={},p=[{value:"FastAPI",id:"fastapi",level:2},{value:"Codebase structure",id:"codebase-structure",level:2},{value:"Get started",id:"get-started",level:2},{value:"Configuration",id:"configuration",level:2}],c={toc:p};function u(e){let{components:t,...r}=e;return(0,i.kt)("wrapper",(0,a.Z)({},c,r,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"extending-the-api"},"Extending the API"),(0,i.kt)("h2",{id:"fastapi"},"FastAPI"),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/tiangolo/fastapi"},"FastAPI")," is a high-performant REST API framework for Python. It's built on top of ",(0,i.kt)("a",{parentName:"p",href:"https://github.com/encode/starlette"},"Starlette"),", an ASGI (Asynchronous Server Gateway Interface) implementation for Python, and it uses ",(0,i.kt)("a",{parentName:"p",href:"https://github.com/pydantic/pydantic"},"Pydantic")," for data validation. It can generate ",(0,i.kt)("a",{parentName:"p",href:"https://swagger.io/docs/specification/about/"},"OpenAPI")," documentation from your code and also produces a ",(0,i.kt)("a",{parentName:"p",href:"https://swagger.io/tools/swagger-ui/"},"Swagger UI")," that you can use to test your application. OpenAPI uses a subset of ",(0,i.kt)("a",{parentName:"p",href:"https://json-schema.org/"},"JSON Schema")," to describe APIs and define the validation rules of the\nAPI payloads and parameters."),(0,i.kt)("p",null,"To run FastAPI applications, we use the process manager ",(0,i.kt)("a",{parentName:"p",href:"https://github.com/encode/uvicorn"},"uvicorn"),". Check out the official ",(0,i.kt)("a",{parentName:"p",href:"https://fastapi.tiangolo.com/deployment/server-workers/"},"documentation")," for more details."),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"FastAPI",src:n(3679).Z,width:"616",height:"743"})),(0,i.kt)("h2",{id:"codebase-structure"},"Codebase structure"),(0,i.kt)("p",null,"The API is grouped by features."),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"Features",src:n(8116).Z,width:"2374",height:"1414"})),(0,i.kt)("p",null,"The API has a feature-based folder structure following the principles of ",(0,i.kt)("a",{parentName:"p",href:"/template-fastapi-react/docs/contribute/development-guide/coding/architecture"},"Clean Architecture"),"."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre"},"\u251c\u2500\u2500 api/\n\u2502 \u2514\u2500\u2500 src/\n\u2502 \u251c\u2500\u2500 common/\n\u2502 \u251c\u2500\u2500 entities/\n\u2502 \u251c\u2500\u2500 features/\n\u2502 \u2502 \u251c\u2500\u2500 health_check/\n\u2502 \u2502 \u251c\u2500\u2500 todo/\n\u2502 \u2502 \u251c\u2500\u2500 whoami/\n\u2502 \u2502 \u2514\u2500\u2500 ...\n\u2502 \u251c\u2500\u2500 data_providers/\n\u2502 \u2514\u2500\u2500 tests/\n\u2502 \u251c\u2500\u2500 unit/\n\u2502 \u2514\u2500\u2500 integration/\n\u2514\u2500\u2500 ...\n")),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"common")," contains shared code like authentication, exceptions, response decorator"),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-entities"},(0,i.kt)("inlineCode",{parentName:"a"},"entities"))," contains all entities, enums, exceptions, interfaces, types and logic specific to the domain layer"),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"adding-features"},(0,i.kt)("inlineCode",{parentName:"a"},"features"))," contains use-cases (application logic), repository interfaces, and controllers"),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"adding-data-providers"},(0,i.kt)("inlineCode",{parentName:"a"},"data providers"))," contains classes for accessing external resources such as databases, file systems, web services, and repository implementations"),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"tests")," contains unit and integrations tests")),(0,i.kt)("h2",{id:"get-started"},"Get started"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Create the domain model by ",(0,i.kt)("a",{parentName:"li",href:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-entities"},"adding entities")),(0,i.kt)("li",{parentName:"ol"},"Extend the API by ",(0,i.kt)("a",{parentName:"li",href:"adding-features"},"adding features"),(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"Add a ",(0,i.kt)("a",{parentName:"li",href:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/use-cases"},"use case")," to handle application logic"),(0,i.kt)("li",{parentName:"ul"},"Add a ",(0,i.kt)("a",{parentName:"li",href:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/controllers"},"controller")," to handle API requests",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"Add an endpoint to the controller that executes the use case"))))),(0,i.kt)("li",{parentName:"ol"},"Add a data provider, ",(0,i.kt)("a",{parentName:"li",href:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repository-interfaces"},"repository interface")," and ",(0,i.kt)("a",{parentName:"li",href:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repositories"},"repository")," to handle communication to external services such as databases.")),(0,i.kt)("admonition",{type:"note"},(0,i.kt)("p",{parentName:"admonition"},"Entities and data providers can be shared between features (the entrypoints and use-cases).")),(0,i.kt)("h2",{id:"configuration"},"Configuration"),(0,i.kt)("p",null,"All configuration parameters are expected to be environment variables, and are defined in this file ",(0,i.kt)("inlineCode",{parentName:"p"},"api/src/config.py"),"."),(0,i.kt)(o.Z,{language:"jsx",mdxType:"CodeBlock"},'from pydantic import Field\nfrom pydantic_settings import BaseSettings\n\nfrom authentication.models import User\nfrom common.logger_level import LoggerLevel\n\n\nclass Config(BaseSettings):\n # Pydantic-settings in pydantic v2 automatically fetch config settings from env-variables\n ENVIRONMENT: str = "local"\n\n # Logging\n LOGGER_LEVEL: LoggerLevel = Field(default=LoggerLevel.INFO)\n APPINSIGHTS_CONSTRING: str | None = None\n\n # Database\n MONGODB_USERNAME: str = "dummy"\n MONGODB_PASSWORD: str = "dummy"\n MONGODB_HOSTNAME: str = "db"\n MONGODB_DATABASE: str = "test"\n MONGODB_PORT: int = 27017\n\n # Access control\n APPLICATION_ADMIN: str = "admin"\n APPLICATION_ADMIN_ROLE: str = "admin"\n\n # Authentication\n SECRET_KEY: str | None = None\n AUTH_ENABLED: bool = False\n JWT_SELF_SIGNING_ISSUER: str = "APPLICATION" # Which value will be used to sign self-signed JWT\'s\n TEST_TOKEN: bool = False # This value should only be changed at runtime by test setup\n OAUTH_WELL_KNOWN: str | None = None\n OAUTH_TOKEN_ENDPOINT: str = ""\n OAUTH_AUTH_ENDPOINT: str = ""\n OAUTH_CLIENT_ID: str = ""\n OAUTH_AUTH_SCOPE: str = ""\n OAUTH_AUDIENCE: str = ""\n MICROSOFT_AUTH_PROVIDER: str = "login.microsoftonline.com"\n\n @property\n def log_level(self) -> str:\n """Returns LOGGER_LEVEL as a (lower case) string."""\n return str(self.LOGGER_LEVEL.value).lower()\n\n\nconfig = Config()\n\nif config.AUTH_ENABLED and not all((config.OAUTH_AUTH_ENDPOINT, config.OAUTH_TOKEN_ENDPOINT, config.OAUTH_WELL_KNOWN)):\n raise ValueError("Authentication was enabled, but some auth configuration parameters are missing")\n\nif not config.AUTH_ENABLED:\n print("\\n")\n print("################ WARNING ################")\n print("# Authentication is disabled #")\n print("################ WARNING ################\\n")\n\ndefault_user: User = User(\n user_id="nologin",\n full_name="Not Authenticated",\n email="nologin@example.com",\n)\n'),(0,i.kt)("p",null,"See ",(0,i.kt)("a",{parentName:"p",href:"../../../../about/running/configure"},"configuration")," for a description of the different configuration options available."))}u.isMDXComponent=!0},3679:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/fast-api-4ed5595066ba8b486810824e9770c6eb.png"},8116:(e,t,n)=>{n.d(t,{Z:()=>a});const a=n.p+"assets/images/features-a73ae32cb4391fdd586e23d450e6f2d7.png"}}]); \ No newline at end of file diff --git a/assets/js/415192e1.5c02af10.js b/assets/js/415192e1.5c02af10.js new file mode 100644 index 00000000..32ed05c5 --- /dev/null +++ b/assets/js/415192e1.5c02af10.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[295],{3380:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>l,default:()=>m,frontMatter:()=>a,metadata:()=>d,toc:()=>r});var i=n(7462),s=(n(7294),n(3905)),o=(n(1839),n(814));const a={},l="Clients",d={unversionedId:"contribute/development-guide/coding/extending-the-api/adding-data-providers/clients",id:"contribute/development-guide/coding/extending-the-api/adding-data-providers/clients",title:"Clients",description:"The template already ships with a mongo database client for connecting to MongoDB databases. However, if you need a client that can talk to e.g. PostgreSQL you need to add this.",source:"@site/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/01-clients.md",sourceDirName:"contribute/development-guide/coding/extending-the-api/adding-data-providers",slug:"/contribute/development-guide/coding/extending-the-api/adding-data-providers/clients",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/clients",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/01-clients.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{},sidebar:"contribute",previous:{title:"Adding data providers",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/"},next:{title:"Repository interfaces",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repository-interfaces"}},c={},r=[{value:"Testing clients",id:"testing-clients",level:2}],_={toc:r};function m(e){let{components:t,...n}=e;return(0,s.kt)("wrapper",(0,i.Z)({},_,n,{components:t,mdxType:"MDXLayout"}),(0,s.kt)("h1",{id:"clients"},"Clients"),(0,s.kt)("p",null,"The template already ships with a mongo database client for connecting to MongoDB databases. However, if you need a client that can talk to e.g. PostgreSQL you need to add this."),(0,s.kt)(o.Z,{language:"jsx",mdxType:"CodeBlock"},'from typing import Any\n\nfrom pymongo.cursor import Cursor\nfrom pymongo.database import Database\nfrom pymongo.errors import DuplicateKeyError\nfrom pymongo.mongo_client import MongoClient\nfrom pymongo.results import DeleteResult, InsertManyResult\n\nfrom common.exceptions import NotFoundException, ValidationException\nfrom config import config\nfrom data_providers.clients.client_interface import ClientInterface\n\nMONGO_CLIENT: MongoClient[dict[str, Any]] = MongoClient(\n host=config.MONGODB_HOSTNAME,\n port=config.MONGODB_PORT,\n username=config.MONGODB_USERNAME,\n password=config.MONGODB_PASSWORD,\n authSource="admin",\n tls=False,\n connectTimeoutMS=5000,\n serverSelectionTimeoutMS=5000,\n retryWrites=False,\n)\n\n\nclass MongoDatabaseClient(ClientInterface[dict, str]):\n def __init__(self, collection_name: str, database_name: str, client: MongoClient[dict[str, Any]] = MONGO_CLIENT):\n database: Database[dict[str, Any]] = client[database_name]\n self.database = database\n self.collection_name = collection_name\n self.collection = database[collection_name]\n\n def wipe_db(self) -> None:\n databases = self.database.client.list_database_names()\n databases_to_delete = [\n database_name for database_name in databases if database_name not in ("admin", "config", "local")\n ] # Don\'t delete the mongo admin or local database\n for database_name in databases_to_delete:\n self.database.client.drop_database(database_name)\n\n def delete_collection(self) -> None:\n self.collection.drop()\n\n def create(self, document: dict[str, Any]) -> dict[str, Any]:\n try:\n result = self.collection.insert_one(document)\n return self.get(str(result.inserted_id))\n except DuplicateKeyError:\n raise ValidationException(message=f"The document with id \'{document[\'_id\']}\' already exists")\n\n def list_collection(self) -> list[dict[str, Any]]:\n return list(self.collection.find())\n\n def get(self, uid: str) -> dict[str, Any]:\n document = self.collection.find_one(filter={"_id": uid})\n if document is None:\n raise NotFoundException\n else:\n return dict(document)\n\n def update(self, uid: str, document: dict[str, Any]) -> dict[str, Any]:\n if self.collection.find_one(filter={"_id": uid}) is None:\n raise NotFoundException(extra={"uid": uid})\n self.collection.replace_one({"_id": uid}, document)\n return self.get(uid)\n\n def delete(self, uid: str) -> bool:\n result = self.collection.delete_one(filter={"_id": uid})\n return result.deleted_count > 0\n\n def find(self, filter: dict[str, Any]) -> Cursor[dict[str, Any]]:\n return self.collection.find(filter=filter)\n\n def find_one(self, filter: dict[str, Any]) -> dict[str, Any] | None:\n return self.collection.find_one(filter=filter)\n\n def insert_many(self, items: list[dict[str, Any]]) -> InsertManyResult:\n return self.collection.insert_many(items)\n\n def delete_many(self, filter: dict[str, Any]) -> DeleteResult:\n return self.collection.delete_many(filter)\n'),(0,s.kt)("h2",{id:"testing-clients"},"Testing clients"),(0,s.kt)("p",null,"The ",(0,s.kt)("inlineCode",{parentName:"p"},"test_client")," fixture are using the mongomock instead of real database."),(0,s.kt)(o.Z,{language:"jsx",mdxType:"CodeBlock"},'import pytest\n\nfrom common.exceptions import NotFoundException, ValidationException\nfrom data_providers.clients.mongodb.mongo_database_client import MongoDatabaseClient\n\n\nclass TestMongoDatabaseClient:\n def test_find_one(self, test_client: MongoDatabaseClient):\n document = {"_id": "81549300", "name": "hello"}\n\n test_client.collection.insert_one(document)\n assert test_client.find_one({"_id": document["_id"]}) == document\n assert test_client.find_one({"name": document["name"]}) == document\n assert test_client.find_one({"_id": document["_id"], "name": document["name"]}) == document\n assert test_client.find_one({"_id": "unknown"}) is None\n\n def test_create(self, test_client: MongoDatabaseClient):\n document = {"_id": "987321", "name": "alberto"}\n assert test_client.collection.count_documents({}) == 0\n result = test_client.create(document)\n assert test_client.collection.count_documents({}) == 1\n assert result == document\n # try to create entry with already existing id:\n with pytest.raises(ValidationException):\n test_client.create(document)\n\n def test_get(self, test_client: MongoDatabaseClient):\n document = {"_id": "81549300", "name": "hello"}\n test_client.collection.insert_one(document)\n assert test_client.get(document["_id"]) == document\n with pytest.raises(NotFoundException):\n test_client.get("unknown")\n\n def test_find(self, test_client: MongoDatabaseClient):\n documents = [\n {"_id": "81549300", "name": "hello"},\n {"_id": "1a2b", "name": "pingvin"},\n {"_id": "987321", "name": "alberto"},\n {"_id": "987456", "name": "alberto"},\n ]\n test_client.collection.insert_many(documents)\n assert list(test_client.find({})) == documents\n assert list(test_client.find({"name": "alberto"})) == [\n documents[2],\n documents[3],\n ]\n\n def test_list(self, test_client: MongoDatabaseClient):\n documents = [\n {"_id": "81549300", "name": "hello"},\n {"_id": "1a2b", "name": "pingvin"},\n {"_id": "987321", "name": "alberto"},\n {"_id": "987456", "name": "alberto"},\n ]\n test_client.collection.insert_many(documents)\n assert test_client.list_collection() == documents\n\n def test_update(self, test_client: MongoDatabaseClient):\n document = {"_id": "987321", "name": "alberto"}\n test_client.collection.insert_one(document)\n instance = document\n instance_id = instance["_id"]\n instance["name"] = "Francois"\n assert test_client.find_one({"_id": instance_id}) != instance["name"]\n result = test_client.update(instance_id, instance)\n assert result["name"] == instance["name"]\n assert test_client.find_one({"_id": instance_id}) == instance\n # update with non-existing id\n entries = list(test_client.find({}))\n with pytest.raises(NotFoundException):\n assert test_client.update("instance_id", instance)\n assert list(test_client.find({})) == entries\n\n def test_delete(self, test_client: MongoDatabaseClient):\n document = {"_id": "987321", "name": "alberto"}\n test_client.collection.insert_one(document)\n test_client.delete(document["_id"])\n assert test_client.collection.count_documents({}) == 0\n assert test_client.find_one({"_id": document["_id"]}) is None\n # try to delete the same entry again\n test_client.delete(document["_id"])\n assert test_client.collection.count_documents({}) == 0\n\n def test_delete_collection(self, test_client: MongoDatabaseClient):\n documents = [\n {"_id": "81549300", "name": "hello"},\n {"_id": "1a2b", "name": "pingvin"},\n {"_id": "987321", "name": "alberto"},\n {"_id": "987456", "name": "alberto"},\n ]\n test_client.collection.insert_many(documents)\n # add second collection to TestDB:\n test_client.database.create_collection("peppers")\n active_collections = test_client.database.list_collection_names()\n number_of_entries_in_original_collection = test_client.collection.count_documents({})\n assert number_of_entries_in_original_collection > 0\n assert len(active_collections) == 2\n test_client.delete_collection()\n assert test_client.database.list_collection_names() == ["peppers"]\n assert test_client.collection.count_documents({}) == 0\n\n def test_create_in_empty_database(self, test_client: MongoDatabaseClient):\n document = {"_id": "1a2b", "name": "pingvin"}\n assert test_client.collection.count_documents({}) == 0\n result = test_client.create(document)\n assert test_client.collection.count_documents({}) == 1\n assert result == document\n\n def test_wipe_db(self, test_client: MongoDatabaseClient):\n documents = [\n {"_id": "81549300", "name": "hello"},\n {"_id": "1a2b", "name": "pingvin"},\n {"_id": "987321", "name": "alberto"},\n {"_id": "987456", "name": "alberto"},\n ]\n test_client.collection.insert_many(documents)\n original_database = test_client.database.client.list_database_names()[0]\n collections_in_original_db = test_client.database.client[original_database].list_collection_names()\n # add admin database (admin collection should not be wiped)\n test_client.database.client["admin"].create_collection("vips")\n active_dbs = test_client.database.client.list_database_names()\n collections_in_admin_db = test_client.database.client["admin"].list_collection_names()\n assert len(active_dbs) == 2\n assert len(collections_in_original_db) == 1\n assert len(collections_in_admin_db) == 1\n test_client.wipe_db()\n assert test_client.database.client.list_database_names() == ["admin"]\n assert test_client.database[collections_in_original_db[0]].count_documents({}) == 0\n'))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/41b8e814.b9683f34.js b/assets/js/41b8e814.b9683f34.js new file mode 100644 index 00000000..a3e687f6 --- /dev/null +++ b/assets/js/41b8e814.b9683f34.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[3],{5162:(e,t,n)=>{n.d(t,{Z:()=>i});var a=n(7294),s=n(6010);const l="tabItem_Ymn6";function i(e){let{children:t,hidden:n,className:i}=e;return a.createElement("div",{role:"tabpanel",className:(0,s.Z)(l,i),hidden:n},t)}},5488:(e,t,n)=>{n.d(t,{Z:()=>m});var a=n(7462),s=n(7294),l=n(6010),i=n(2389),r=n(7392),o=n(7094),u=n(2466);const d="tabList__CuJ",c="tabItem_LNqP";function p(e){var t;const{lazy:n,block:i,defaultValue:p,values:m,groupId:g,className:b}=e,v=s.Children.map(e.children,(e=>{if((0,s.isValidElement)(e)&&"value"in e.props)return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)})),h=m??v.map((e=>{let{props:{value:t,label:n,attributes:a}}=e;return{value:t,label:n,attributes:a}})),k=(0,r.l)(h,((e,t)=>e.value===t.value));if(k.length>0)throw new Error(`Docusaurus error: Duplicate values "${k.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`);const f=null===p?p:p??(null==(t=v.find((e=>e.props.default)))?void 0:t.props.value)??v[0].props.value;if(null!==f&&!h.some((e=>e.value===f)))throw new Error(`Docusaurus error: The has a defaultValue "${f}" but none of its children has the corresponding value. Available values are: ${h.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);const{tabGroupChoices:T,setTabGroupChoices:y}=(0,o.U)(),[w,N]=(0,s.useState)(f),I=[],{blockElementScrollPositionUntilNextRender:x}=(0,u.o5)();if(null!=g){const e=T[g];null!=e&&e!==w&&h.some((t=>t.value===e))&&N(e)}const Z=e=>{const t=e.currentTarget,n=I.indexOf(t),a=h[n].value;a!==w&&(x(t),N(a),null!=g&&y(g,String(a)))},E=e=>{var t;let n=null;switch(e.key){case"ArrowRight":{const t=I.indexOf(e.currentTarget)+1;n=I[t]??I[0];break}case"ArrowLeft":{const t=I.indexOf(e.currentTarget)-1;n=I[t]??I[I.length-1];break}}null==(t=n)||t.focus()};return s.createElement("div",{className:(0,l.Z)("tabs-container",d)},s.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,l.Z)("tabs",{"tabs--block":i},b)},h.map((e=>{let{value:t,label:n,attributes:i}=e;return s.createElement("li",(0,a.Z)({role:"tab",tabIndex:w===t?0:-1,"aria-selected":w===t,key:t,ref:e=>I.push(e),onKeyDown:E,onFocus:Z,onClick:Z},i,{className:(0,l.Z)("tabs__item",c,null==i?void 0:i.className,{"tabs__item--active":w===t})}),n??t)}))),n?(0,s.cloneElement)(v.filter((e=>e.props.value===w))[0],{className:"margin-top--md"}):s.createElement("div",{className:"margin-top--md"},v.map(((e,t)=>(0,s.cloneElement)(e,{key:t,hidden:e.props.value!==w})))))}function m(e){const t=(0,i.Z)();return s.createElement(p,(0,a.Z)({key:String(t)},e))}},8979:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>d,contentTitle:()=>o,default:()=>m,frontMatter:()=>r,metadata:()=>u,toc:()=>c});var a=n(7462),s=(n(7294),n(3905)),l=(n(1839),n(5162)),i=n(5488);const r={},o="Testing",u={unversionedId:"contribute/development-guide/testing",id:"contribute/development-guide/testing",title:"Testing",description:"API",source:"@site/docs/contribute/development-guide/03-testing.md",sourceDirName:"contribute/development-guide",slug:"/contribute/development-guide/testing",permalink:"/template-fastapi-react/docs/contribute/development-guide/testing",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/contribute/development-guide/03-testing.md",tags:[],version:"current",sidebarPosition:3,frontMatter:{},sidebar:"contribute",previous:{title:"Extending the web",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-web/"},next:{title:"Upgrading",permalink:"/template-fastapi-react/docs/contribute/development-guide/upgrading"}},d={},c=[{value:"API",id:"api",level:2},{value:"Unit tests",id:"unit-tests",level:3},{value:"Integration tests",id:"integration-tests",level:3},{value:"Web",id:"web",level:2},{value:"Unit tests",id:"unit-tests-1",level:3}],p={toc:c};function m(e){let{components:t,...n}=e;return(0,s.kt)("wrapper",(0,a.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,s.kt)("h1",{id:"testing"},"Testing"),(0,s.kt)("h2",{id:"api"},"API"),(0,s.kt)("p",null,"The application has two types of API tests: unit tests and integration tests."),(0,s.kt)("h3",{id:"unit-tests"},"Unit tests"),(0,s.kt)("p",null,"You will find unit tests under ",(0,s.kt)("inlineCode",{parentName:"p"},"src/tests/unit"),"."),(0,s.kt)(i.Z,{groupId:"api-testing",mdxType:"Tabs"},(0,s.kt)(l.Z,{value:"using-docker",label:"Using docker",mdxType:"TabItem"},(0,s.kt)("pre",null,(0,s.kt)("code",{parentName:"pre",className:"language-shell"},"docker compose run --rm api pytest\n"))),(0,s.kt)(l.Z,{value:"without-using-docker",label:"Without using docker",mdxType:"TabItem"},(0,s.kt)("pre",null,(0,s.kt)("code",{parentName:"pre",className:"language-shell"},"cd api/\npytest\n")))),(0,s.kt)("p",null,"As a general rule, unit tests should not have any external dependencies - especially on the file system."),(0,s.kt)("h3",{id:"integration-tests"},"Integration tests"),(0,s.kt)("p",null,"The integrations tests can be found under ",(0,s.kt)("inlineCode",{parentName:"p"},"src/tests/integration"),"."),(0,s.kt)("p",null,"To run integration tests add ",(0,s.kt)("inlineCode",{parentName:"p"},"--integration")," as argument for pytest."),(0,s.kt)("p",null,"These tests depends on mongodb and that it's running."),(0,s.kt)("h2",{id:"web"},"Web"),(0,s.kt)("h3",{id:"unit-tests-1"},"Unit tests"),(0,s.kt)(i.Z,{groupId:"web-testing",mdxType:"Tabs"},(0,s.kt)(l.Z,{value:"using-docker",label:"Using docker",mdxType:"TabItem"},(0,s.kt)("pre",null,(0,s.kt)("code",{parentName:"pre",className:"language-shell"},"docker compose run --rm web yarn test\n"))),(0,s.kt)(l.Z,{value:"without-using-docker",label:"Without using docker",mdxType:"TabItem"},(0,s.kt)("pre",null,(0,s.kt)("code",{parentName:"pre",className:"language-shell"},"cd web/\nyarn test\n")))))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/428320b6.b0e6cab4.js b/assets/js/428320b6.b0e6cab4.js new file mode 100644 index 00000000..332f63dc --- /dev/null +++ b/assets/js/428320b6.b0e6cab4.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[193],{1425:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>n,contentTitle:()=>l,default:()=>d,frontMatter:()=>p,metadata:()=>o,toc:()=>f});var i=a(7462),r=(a(7294),a(3905));a(1839);const c={toc:[{value:"1.5.0 (2024-09-04)",id:"150-2024-09-04",level:2},{value:"Features",id:"features",level:3},{value:"Bug Fixes",id:"bug-fixes",level:3},{value:"1.4.0 (2023-03-01)",id:"140-2023-03-01",level:2},{value:"Features",id:"features-1",level:3},{value:"Bug Fixes",id:"bug-fixes-1",level:3},{value:"Tests",id:"tests",level:3},{value:"Build System",id:"build-system",level:3},{value:"Miscellaneous Chores",id:"miscellaneous-chores",level:3},{value:"Code Refactoring",id:"code-refactoring",level:3},{value:"Continuous Integration",id:"continuous-integration",level:3},{value:"Documentation",id:"documentation",level:3},{value:"1.3.0 (2022-11-11)",id:"130-2022-11-11",level:2},{value:"Features",id:"features-2",level:3},{value:"Bug Fixes",id:"bug-fixes-2",level:3},{value:"1.2.1 (2022-11-09)",id:"121-2022-11-09",level:2},{value:"Bug Fixes",id:"bug-fixes-3",level:3},{value:"1.2.0 (2022-11-09)",id:"120-2022-11-09",level:2},{value:"Features",id:"features-3",level:3},{value:"Bug Fixes",id:"bug-fixes-4",level:3},{value:"1.1.1 (2022-11-04)",id:"111-2022-11-04",level:2},{value:"Bug Fixes",id:"bug-fixes-5",level:3},{value:"1.1.0 (2022-11-04)",id:"110-2022-11-04",level:2},{value:"Features",id:"features-4",level:3},{value:"Bug Fixes",id:"bug-fixes-6",level:3},{value:"1.0.0 (2022-09-07)",id:"100-2022-09-07",level:2},{value:"Features",id:"features-5",level:3},{value:"Bug Fixes",id:"bug-fixes-7",level:3}]};function m(e){let{components:t,...a}=e;return(0,r.kt)("wrapper",(0,i.Z)({},c,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("p",null,"Warning: This is the development version."),(0,r.kt)("h1",{id:"changelog"},"Changelog"),(0,r.kt)("p",null,"All notable changes to this project will be documented in this file. See ",(0,r.kt)("a",{parentName:"p",href:"https://github.com/conventional-changelog/standard-version"},"standard-version")," for commit guidelines."),(0,r.kt)("h2",{id:"150-2024-09-04"},(0,r.kt)("a",{parentName:"h2",href:"https://github.com/equinor/boilerplate-clean-architecture/compare/v1.4.0...v1.5.0"},"1.5.0")," (2024-09-04)"),(0,r.kt)("h3",{id:"features"},"Features"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"add Popover component (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/c8964bd89fee3f240357d63453051b132e1ecdfa"},"c8964bd"),")"),(0,r.kt)("li",{parentName:"ul"},"add react context to handle todo state (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/510e4704f67c9094176514c2a3ed6efc39997037"},"510e470"),")"),(0,r.kt)("li",{parentName:"ul"},"add reusable IconButton component (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/f933e30f34a1bdb0e3d56d73b470f6816b532973"},"f933e30"),")"),(0,r.kt)("li",{parentName:"ul"},"replace exception handling (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/35ae0ef0bbbaf06ca9a4bf68618ca29718b5d00a"},"35ae0ef"),")"),(0,r.kt)("li",{parentName:"ul"},"replace prettier and eslint with biome (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/afe2cb978ef4260d88835fc5f62db69164aa2fb2"},"afe2cb9"),")")),(0,r.kt)("h3",{id:"bug-fixes"},"Bug Fixes"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"docs reference out of date (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/bd4cc8d3d2a3b580c0df8bffa7378fc0a2c6413c"},"bd4cc8d"),")"),(0,r.kt)("li",{parentName:"ul"},"extras typing is not always dict","[str,str]"," (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/7ba069436255dc88372fd9b73db854477e7bf6f8"},"7ba0694"),")"),(0,r.kt)("li",{parentName:"ul"},"make authentication work again (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/3e8da0fd68a6619ca32466e934bb915652cce85f"},"3e8da0f"),")"),(0,r.kt)("li",{parentName:"ul"},"mypy error (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/66303aa35f571e8588c3342bdb25cb56566085a2"},"66303aa"),")"),(0,r.kt)("li",{parentName:"ul"},"ran api again (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/afa8158c9815352de7195d6d988302a6d7d87ffb"},"afa8158"),")"),(0,r.kt)("li",{parentName:"ul"},"ran generator (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/19ff51bf4bc99751af93a13a36ea8f3990e6c64c"},"19ff51b"),")"),(0,r.kt)("li",{parentName:"ul"},"replace gunicorn with horizontal scaling (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/a8baa0f9ac2f246b17f55aada11845ddcaee15cc"},"a8baa0f"),")"),(0,r.kt)("li",{parentName:"ul"},"The template no longer use the node image in production (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/f9b68d9ec28482a71dd721e0ff1a42c3b6565ed5"},"f9b68d9"),")"),(0,r.kt)("li",{parentName:"ul"},"update old references (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/5152a1ff419336428b69c7dc7212b1d422fb93bf"},"5152a1f"),")"),(0,r.kt)("li",{parentName:"ul"},"update to match new parameters for get pydantic json schema (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/c6b14a8da9639cd2b5fe04b25b52310aa1017664"},"c6b14a8"),")")),(0,r.kt)("h2",{id:"140-2023-03-01"},(0,r.kt)("a",{parentName:"h2",href:"https://github.com/equinor/template-fastapi-react/compare/v1.3.0...v1.4.0"},"1.4.0")," (2023-03-01)"),(0,r.kt)("h3",{id:"features-1"},"Features"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Add info popover with version (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/28aa51377592b7c5bb9b59d245ab275b47a52653"},"28aa513"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/154"},"#154"))),(0,r.kt)("h3",{id:"bug-fixes-1"},"Bug Fixes"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"add error handling of version file fetch (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a4f68897e446ebb4ebd91f58110bfa403df53fc9"},"a4f6889"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"api:")," handle lists in create_response (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/333f7d4afbac95609ae15b05b3a8f1d978ee1107"},"333f7d4"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"api:")," make health-check return PlainTextResponse (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/12d51697ee78edbbe519c874b4fddfb8f0786718"},"12d5169"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"api:")," remove empty default pydantic field in models (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/0424282f7dee8662c6d0b8faa01f78bdaced3a3f"},"0424282"),")"),(0,r.kt)("li",{parentName:"ul"},"remove /api as root path. (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/208ceb98dcf269e18b43d6ffda04dd265bfe868c"},"208ceb9"),")"),(0,r.kt)("li",{parentName:"ul"},"replace deprecated output definition (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/c53b003498afb8f2568815a4c3da56f8d15542af"},"c53b003"),")")),(0,r.kt)("h3",{id:"tests"},"Tests"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Upgrade pre-commits (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/bd8f1106cde2ec215ea9a519a4afd5daa460fb96"},"bd8f110"),")")),(0,r.kt)("h3",{id:"build-system"},"Build System"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"add typescript plugin (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/83ade0cdb86d15bbe072e036fbe0ac1b106f8015"},"83ade0c"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"ci/cd:")," update flake8 repo location (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/e6953ad3ca280975c9589939a1e728a73fbfd418"},"e6953ad"),")"),(0,r.kt)("li",{parentName:"ul"},"enable scripts to build necessary packages (YN0007) (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/f1cf2c3f7d6fc7190535c8abf97c55bfa6839e56"},"f1cf2c3"),")"),(0,r.kt)("li",{parentName:"ul"},"missing peer dependencies (YN0002) (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/9e8981d581c2509039beda4a7a34980c574bf179"},"9e8981d"),")"),(0,r.kt)("li",{parentName:"ul"},"set yarn version (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/afb5834883d6d1f01026d602fb434db38443c8b0"},"afb5834"),")")),(0,r.kt)("h3",{id:"miscellaneous-chores"},"Miscellaneous Chores"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Add yarn upgrade-interactive (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/91d998f317d8b697a75a920108a94e5479b13f78"},"91d998f"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"api:")," return Pydantic model instead of dict (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/427a9633d31cc3298d463fc4f1a225bd36f76867"},"427a963"),")"),(0,r.kt)("li",{parentName:"ul"},"ignore diffs on yarn plugins (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/78017e5216f863b19842e09574bf035db78f88de"},"78017e5"),")"),(0,r.kt)("li",{parentName:"ul"},"remove empty catch (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/0264cb5960dfee0cfb36dcf1e9ebbd099ddac51e"},"0264cb5"),")"),(0,r.kt)("li",{parentName:"ul"},"remove redundant conditional (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/925d5b4a5391b39acfc6e639ee9a47a676697ebb"},"925d5b4"),")"),(0,r.kt)("li",{parentName:"ul"},"type CommitInfo (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/2179e13f256cba46959c101f76593f262daee5d4"},"2179e13"),")"),(0,r.kt)("li",{parentName:"ul"},"Update all web packages (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a193af56c4e0ed68be9b7ad05d7a5747130c0321"},"a193af5"),")"),(0,r.kt)("li",{parentName:"ul"},"update dependencies (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/fb2cf508f3f30f12bf39f23a9a630d92e12f47b0"},"fb2cf50"),")"),(0,r.kt)("li",{parentName:"ul"},"update sdks (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/385a55eefab23b695e2a4f1f12b1ca97e93a9820"},"385a55e"),")"),(0,r.kt)("li",{parentName:"ul"},"upgrade versions (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/bc9f6a3dadb920167419e8b66bd79a396c09cad9"},"bc9f6a3"),")"),(0,r.kt)("li",{parentName:"ul"},"upgrade versions (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/041f78e9c0cdb1be8fd83099d33b7c1e36e3633a"},"041f78e"),")")),(0,r.kt)("h3",{id:"code-refactoring"},"Code Refactoring"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"api:")," replace response_class with return type annotations (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/b1fa3bd6b342ba89e5d2237721573a83cfd503fe"},"b1fa3bd"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"ci:")," extract ghcr login into separate step (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/0d90fe00438ad9c995198cba8e268c8268af1e4a"},"0d90fe0"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"ci:")," remove crazy-max external action (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/b41990d92c19d2a661900a208a60d604a5ab470c"},"b41990d"),")"),(0,r.kt)("li",{parentName:"ul"},"create empty yarn.lock (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/39050e72af50debd95380590fe4ee803a5995589"},"39050e7"),")"),(0,r.kt)("li",{parentName:"ul"},"separate responsibilities by moving useEffect to a custom hook (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/cc33a5d1f856aff8e529c4c3df43d326fb5a8a90"},"cc33a5d"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"workflow:")," Fix linting errors (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/8ea9f69fbb5919568ba99fed659be77e18647d48"},"8ea9f69"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"workflow:")," rename and restructure workflows (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/f08fffaf7ffaf46503debfc4e4bd60320592a84e"},"f08fffa"),")")),(0,r.kt)("h3",{id:"continuous-integration"},"Continuous Integration"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Add rollback workflow (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/b1cca70e53c7080427979b3efe0ee30ccffafdd0"},"b1cca70"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/153"},"#153")),(0,r.kt)("li",{parentName:"ul"},"allow publishing multiple tags at once (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/4c5d8677395054254551757f871570dad1695933"},"4c5d867"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/153"},"#153")),(0,r.kt)("li",{parentName:"ul"},"bump pre-commit hooks (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/9a0cea7d6a03aaa99101135f626b948c87dd6882"},"9a0cea7"),")"),(0,r.kt)("li",{parentName:"ul"},"change oauth redurect url to radix playground (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/655c55f5027baea255d29ea881df0030695da5aa"},"655c55f"),")"),(0,r.kt)("li",{parentName:"ul"},"Change version logging format on build (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/49ca8939a6dd8fd753ba171653a5977a869a0249"},"49ca893"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/154"},"#154")),(0,r.kt)("li",{parentName:"ul"},"correct permissions (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/6d9d563a3cf3db335c1d34b3630ac64212881186"},"6d9d563"),")"),(0,r.kt)("li",{parentName:"ul"},"Fix bug in publish docs (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a696a33a9e451f3d261e2b07538aebac418ac3d3"},"a696a33"),")"),(0,r.kt)("li",{parentName:"ul"},"Include all commit types in changelog (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/73cfaaadf916c7e15accb347183f89e50651f279"},"73cfaaa"),")"),(0,r.kt)("li",{parentName:"ul"},"login as the service principal to request an access token (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/fabe3b469ce49f9c64ff3e0781d6564c78f709f5"},"fabe3b4"),")"),(0,r.kt)("li",{parentName:"ul"},"pass tag name to publish-image workflow (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/dcedc16f6ab2d16d74f4c41ffaf4100f638b88dc"},"dcedc16"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/153"},"#153")),(0,r.kt)("li",{parentName:"ul"},"remove secret as input to reusable workflow (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/1ec6cbb2e5360de99d99416739093a02a38c5ba7"},"1ec6cbb"),")"),(0,r.kt)("li",{parentName:"ul"},"specify playground context (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/142bc139c4cd4b7e145a00dde2161a502afa9363"},"142bc13"),")")),(0,r.kt)("h3",{id:"documentation"},"Documentation"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"add what is fastapi (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/bbec23b85d2b0c1fadfd4e4ea6e3df7e63683e78"},"bbec23b"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"ci:")," add comment to azure login (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/f6b9c962d23a7eb2832e14b1d37d9e8b14419f5d"},"f6b9c96"),")"),(0,r.kt)("li",{parentName:"ul"},"rewrite 01-setup Yarn PnP in VSCode (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/df4c7d0dadbbccaafa6fa5c13d0bd3b16faf5243"},"df4c7d0"),")"),(0,r.kt)("li",{parentName:"ul"},"update link to radix playground (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/6c932c3c48739bce3cc21e24a416405a64e5cc31"},"6c932c3"),")")),(0,r.kt)("h2",{id:"130-2022-11-11"},(0,r.kt)("a",{parentName:"h2",href:"https://github.com/equinor/template-fastapi-react/compare/v1.2.1...v1.3.0"},"1.3.0")," (2022-11-11)"),(0,r.kt)("h3",{id:"features-2"},"Features"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"allow each user to have their own todos (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/9456ab84f5f5e0b804bd0011037ee72d7da49fbb"},"9456ab8"),")")),(0,r.kt)("h3",{id:"bug-fixes-2"},"Bug Fixes"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"add missing dependency without causing infinite loop of rerendering (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/8f5c01d5141c4dbd4ac9b99ebc39ae10f378147f"},"8f5c01d"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"api:")," raise MissingPrivilegeException when relevant (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/0c55af393a4ffc189a068c821545261eb10ef7d4"},"0c55af3"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"api:")," raise MissingPrivilegeException when relevant (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/613cc4257699ddb1c2a772b54f28ccec84f2778b"},"613cc42"),")"),(0,r.kt)("li",{parentName:"ul"},"make todo title required, not optional (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/bc8dab62079ded3e87c1113e81f1cd9911ad1a65"},"bc8dab6"),")"),(0,r.kt)("li",{parentName:"ul"},"only allow users to delete their own todos (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/1cf1e7a8eefac27552dcdc9df0a30cf59c042eab"},"1cf1e7a"),")"),(0,r.kt)("li",{parentName:"ul"},"test suite (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/31da3f7e720d0838e59e280aa4d873b44e24cecb"},"31da3f7"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"tests:")," fix up integration tests with per-user todos (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/b7cc0caa51535020bb329c7c21cde4b458baa81c"},"b7cc0ca"),")")),(0,r.kt)("h2",{id:"121-2022-11-09"},(0,r.kt)("a",{parentName:"h2",href:"https://github.com/equinor/template-fastapi-react/compare/v1.2.0...v1.2.1"},"1.2.1")," (2022-11-09)"),(0,r.kt)("h3",{id:"bug-fixes-3"},"Bug Fixes"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"web:")," adding todo item now clears input. (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/82e6f6baee06ccbd50c4d59fe7a9a97a4b1df094"},"82e6f6b"),")")),(0,r.kt)("h2",{id:"120-2022-11-09"},(0,r.kt)("a",{parentName:"h2",href:"https://github.com/equinor/template-fastapi-react/compare/v1.1.1...v1.2.0"},"1.2.0")," (2022-11-09)"),(0,r.kt)("h3",{id:"features-3"},"Features"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"expand and visualize auth states (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/51c9870bc657d586464780c664aeb6edb49b5ba2"},"51c9870"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"web:")," clear input on add-todo (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/d61adc16ea35a25b2d556b61b9d1cf710de41e8e"},"d61adc1"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"web:")," visualize loading state better (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/6a6ab81bec55bf79aeda5a07e8eff5cdd84b4ab5"},"6a6ab81"),")")),(0,r.kt)("h3",{id:"bug-fixes-4"},"Bug Fixes"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"make useTodos simpler to use (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/e8f0a1866c594ca0a526bac3ae3e5a1f8551a005"},"e8f0a18"),")")),(0,r.kt)("h2",{id:"111-2022-11-04"},(0,r.kt)("a",{parentName:"h2",href:"https://github.com/equinor/template-fastapi-react/compare/v1.1.0...v1.1.1"},"1.1.1")," (2022-11-04)"),(0,r.kt)("h3",{id:"bug-fixes-5"},"Bug Fixes"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"resolve PR feedback (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/bd3debe820f27ebf7d892ecbda77720fc66be06b"},"bd3debe"),")")),(0,r.kt)("h2",{id:"110-2022-11-04"},(0,r.kt)("a",{parentName:"h2",href:"https://github.com/equinor/template-fastapi-react/compare/v1.0.0...v1.1.0"},"1.1.0")," (2022-11-04)"),(0,r.kt)("h3",{id:"features-4"},"Features"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"standardized ErrorResponse model (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/c09e4dccf5abd62fa05e9b1c0a577ea72d0129c4"},"c09e4dc"),")")),(0,r.kt)("h3",{id:"bug-fixes-6"},"Bug Fixes"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"add types to fixtures (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/0528e5beb9bec905cedee1db2af3b2a5248fe85d"},"0528e5b"),")"),(0,r.kt)("li",{parentName:"ul"},"delete non existing item should return 404 (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/43414160eef1bee7ff2ea44c7c9f99e041ccc977"},"4341416"),")")),(0,r.kt)("h2",{id:"100-2022-09-07"},"1.0.0 (2022-09-07)"),(0,r.kt)("h3",{id:"features-5"},"Features"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"add auth (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a201f138ee5a02218b5e4b2b08b0f00f88bb5dd3"},"a201f13"),")"),(0,r.kt)("li",{parentName:"ul"},"add axios (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/88448c2d52007d68651a26d46c6672369172698a"},"88448c2"),")"),(0,r.kt)("li",{parentName:"ul"},"add equinor design system (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/b96d4dae0ec65f4938d862bc8bbf079cb5950ae4"},"b96d4da"),")"),(0,r.kt)("li",{parentName:"ul"},"add equinor typeface (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/53a742398782a9452bc61127d62f408a840dfb5a"},"53a7423"),")"),(0,r.kt)("li",{parentName:"ul"},"add eslint to pre-commit (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/20c872da056b89e038bd87c79e2fcd40bab85cf9"},"20c872d"),")"),(0,r.kt)("li",{parentName:"ul"},"Add extra checks to pre-commit and run safety in venv (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/27a6cbe7bea4843a70947fdcf5ba73f1dd5af871"},"27a6cbe"),")"),(0,r.kt)("li",{parentName:"ul"},"add flake8, safety and pytests to pre-commit (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/1917997411b7a1f1844c3463388005576d8acc77"},"1917997"),")"),(0,r.kt)("li",{parentName:"ul"},"add mypy type checking to pre-commit (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/437cedd17cb86165448526fd8011730f4dbe03b6"},"437cedd"),")"),(0,r.kt)("li",{parentName:"ul"},"add prettier (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/b1ce63a700471c54b75e5f58c35d0d3ccabdf0d5"},"b1ce63a"),")"),(0,r.kt)("li",{parentName:"ul"},"autogenerate release changelog (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/e463ae2e2694358936802e9fbf6dc3a7cfca846d"},"e463ae2"),")"),(0,r.kt)("li",{parentName:"ul"},"build and push images in ci (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/477ad8564bc92105b990715cc0bebeb5c7aff4d8"},"477ad85"),")"),(0,r.kt)("li",{parentName:"ul"},"create-react-app with typescript and equinor icons (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/2cfa523e2e1df8ebe0fa3b003fc6936d1bebaa13"},"2cfa523"),")"),(0,r.kt)("li",{parentName:"ul"},"init todo example (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/8beaf084352f16c8715ebe6f77b40d30450d2e04"},"8beaf08"),")"),(0,r.kt)("li",{parentName:"ul"},"official nginx image running unprivileged (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/fab0c1445920ae5c0cb0eb05308b6a223aed3de8"},"fab0c14"),")"),(0,r.kt)("li",{parentName:"ul"},"pre-commit in CI from pre-commit-config.yaml (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/5d806b5bd1ceda039670dd3b30ef19de49519a16"},"5d806b5"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"pre-commit:")," Add autoflake to pre-commits (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/8d97b34f7eeb90b00c0c5d2410b820af259ce7b1"},"8d97b34"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/31"},"#31")),(0,r.kt)("li",{parentName:"ul"},"response decorator takes Response type as parameter (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/9a7f2287f9bac7e0f68f916c37b4273dc8b95d9b"},"9a7f228"),")"),(0,r.kt)("li",{parentName:"ul"},"reusable gh actions workflows (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/d557ebc8438a4b28d83d2f40d8a7aa2991db1197"},"d557ebc"),")"),(0,r.kt)("li",{parentName:"ul"},"show changelog in documentation (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/6da9b86770ffca6431f16b945680a87637268497"},"6da9b86"),")"),(0,r.kt)("li",{parentName:"ul"},"tutorial on authentication (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/fd789c0d7bd3dda1e1ce0ee78ee9c73c4670fe41"},"fd789c0"),")")),(0,r.kt)("h3",{id:"bug-fixes-7"},"Bug Fixes"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"add missing decorators (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/54fd2f8a3826d2a5bc5bbc7419cbdd83de4811f1"},"54fd2f8"),")"),(0,r.kt)("li",{parentName:"ul"},"add required additional dependencies to eslint pre-commit env (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/cca8509bf7a4edc5c38ad5fe3a7b0812fdb95040"},"cca8509"),")"),(0,r.kt)("li",{parentName:"ul"},"add venv (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/d682b0817d735547f3a3cd7391d942983cbf666c"},"d682b08"),")"),(0,r.kt)("li",{parentName:"ul"},"cast variable that cannot be undefined to boolean (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/372f781d805d25f2e7aaa284d3b70622989e9136"},"372f781"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"dev:")," env_file in docker-compose.override.yml (PR ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/39"},"#39"),") (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/2aa80bdfc211f44d624f1cdad4f8b0844164c4bf"},"2aa80bd"),")"),(0,r.kt)("li",{parentName:"ul"},"disable pull (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/de2d04530a511a798fb757e85cb07872f0dfb129"},"de2d045"),")"),(0,r.kt)("li",{parentName:"ul"},"duplicated pre-commit hook (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a21f5a69ba1ea3a10371f48071ef2de8b3d56448"},"a21f5a6"),")"),(0,r.kt)("li",{parentName:"ul"},"fix mypy errors (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/d9543c187859de7fad59f91b79eaa4f63a56a1c6"},"d9543c1"),")"),(0,r.kt)("li",{parentName:"ul"},"fix pytest_plugin import error (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/b5218196028c904e6a51d9a0971d7637264c87a2"},"b521819"),")"),(0,r.kt)("li",{parentName:"ul"},"lock cryptography dependency since a bad new release. Set authentication scheme to allow for no tokens. Exclude some file from pre-commit (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/ea6a9314482ca75d8d79c999959460b17ceec754"},"ea6a931"),")"),(0,r.kt)("li",{parentName:"ul"},"move Response decorator to controllers (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/bd36b4a316f6a2c1216584235eb5dd462f6d0707"},"bd36b4a"),")"),(0,r.kt)("li",{parentName:"ul"},"only run safety hook once (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/bc33372bd57d7b8710cd7460f1c18c6b55c38634"},"bc33372"),")"),(0,r.kt)("li",{parentName:"ul"},"poetry command (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/ccbb2e10845f9cf3215e5e95fd07f21c3b108249"},"ccbb2e1"),")"),(0,r.kt)("li",{parentName:"ul"},"pre-commit (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/5192d0e79e433cf925d0569a237a101f77b68c5b"},"5192d0e"),")"),(0,r.kt)("li",{parentName:"ul"},"python-version (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a9341092771e81aced0ed4481eb582785dd08113"},"a934109"),")"),(0,r.kt)("li",{parentName:"ul"},"remove encryption.py (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a500444b936bcc99bdcd73ebdc6eb9eeb5de2ac3"},"a500444"),")"),(0,r.kt)("li",{parentName:"ul"},"set correct base path for docs (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/0dda0b23b94155f1eb6cd194d31af1f9265ecd2b"},"0dda0b2"),")"),(0,r.kt)("li",{parentName:"ul"},"set correct type on todo local state (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/2a4020ce9f84affb1725f4e4b476dc1c20b67b0e"},"2a4020c"),")"),(0,r.kt)("li",{parentName:"ul"},"turn off eslint rules that are unnecessary or might conflict with prettier (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/d6beaf7426821d5bb5efd68fe6407d13ee1d38d5"},"d6beaf7"),")"),(0,r.kt)("li",{parentName:"ul"},"typo (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/fb557b8adb56fc0d5aa430a1d505d1066be1ed13"},"fb557b8"),")"),(0,r.kt)("li",{parentName:"ul"},"use const on variable that is never reassigned (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/9f7c54304385c49123a3d436b5cce66997ab1e62"},"9f7c543"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"web:")," correct base path (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a3872d5c67f1764c28d7450e9bf4c350cc0e87b6"},"a3872d5"),")"),(0,r.kt)("li",{parentName:"ul"},"yarn build again (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/dfc48fda537d152974a9610e3263245c69346768"},"dfc48fd"),")")))}m.isMDXComponent=!0;const p={},l="Changelog",o={unversionedId:"changelog/changelog",id:"changelog/changelog",title:"Changelog",description:"1.5.0 (2024-07-22)",source:"@site/docs/changelog/changelog.md",sourceDirName:"changelog",slug:"/changelog/",permalink:"/template-fastapi-react/docs/changelog/",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/changelog/changelog.md",tags:[],version:"current",frontMatter:{}},n={},f=[{value:"1.5.0 (2024-07-22)",id:"150-2024-07-22",level:2},{value:"Features",id:"features",level:3},{value:"Bug Fixes",id:"bug-fixes",level:3},{value:"Documentation",id:"documentation",level:3},{value:"Styles",id:"styles",level:3},{value:"Miscellaneous Chores",id:"miscellaneous-chores",level:3},{value:"Code Refactoring",id:"code-refactoring",level:3},{value:"Tests",id:"tests",level:3},{value:"Build System",id:"build-system",level:3},{value:"Continuous Integration",id:"continuous-integration",level:3},{value:"slug: "/changelog"",id:"slug-changelog",level:2}],s={toc:f};function d(e){let{components:t,...a}=e;return(0,r.kt)("wrapper",(0,i.Z)({},s,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"changelog"},"Changelog"),(0,r.kt)("h2",{id:"150-2024-07-22"},(0,r.kt)("a",{parentName:"h2",href:"https://github.com/equinor/template-fastapi-react/compare/template-fastapi-react-v1.4.0...template-fastapi-react-v1.5.0"},"1.5.0")," (2024-07-22)"),(0,r.kt)("h3",{id:"features"},"Features"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"add auth (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a201f138ee5a02218b5e4b2b08b0f00f88bb5dd3"},"a201f13"),")"),(0,r.kt)("li",{parentName:"ul"},"add axios (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/88448c2d52007d68651a26d46c6672369172698a"},"88448c2"),")"),(0,r.kt)("li",{parentName:"ul"},"add equinor design system (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/b96d4dae0ec65f4938d862bc8bbf079cb5950ae4"},"b96d4da"),")"),(0,r.kt)("li",{parentName:"ul"},"add equinor typeface (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/53a742398782a9452bc61127d62f408a840dfb5a"},"53a7423"),")"),(0,r.kt)("li",{parentName:"ul"},"add eslint to pre-commit (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/20c872da056b89e038bd87c79e2fcd40bab85cf9"},"20c872d"),")"),(0,r.kt)("li",{parentName:"ul"},"Add extra checks to pre-commit and run safety in venv (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/27a6cbe7bea4843a70947fdcf5ba73f1dd5af871"},"27a6cbe"),")"),(0,r.kt)("li",{parentName:"ul"},"add flake8, safety and pytests to pre-commit (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/1917997411b7a1f1844c3463388005576d8acc77"},"1917997"),")"),(0,r.kt)("li",{parentName:"ul"},"Add info popover with version (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/28aa51377592b7c5bb9b59d245ab275b47a52653"},"28aa513"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/154"},"#154")),(0,r.kt)("li",{parentName:"ul"},"add mypy type checking to pre-commit (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/437cedd17cb86165448526fd8011730f4dbe03b6"},"437cedd"),")"),(0,r.kt)("li",{parentName:"ul"},"add OpenCensusRequestLoggingMiddleware middleware (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/b9c035bf3b815eba0b63dafcf445d7dd13990cf6"},"b9c035b"),")"),(0,r.kt)("li",{parentName:"ul"},"add Popover component (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/c8964bd89fee3f240357d63453051b132e1ecdfa"},"c8964bd"),")"),(0,r.kt)("li",{parentName:"ul"},"add prettier (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/b1ce63a700471c54b75e5f58c35d0d3ccabdf0d5"},"b1ce63a"),")"),(0,r.kt)("li",{parentName:"ul"},"add react context to handle todo state (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/510e4704f67c9094176514c2a3ed6efc39997037"},"510e470"),")"),(0,r.kt)("li",{parentName:"ul"},"add reusable IconButton component (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/f933e30f34a1bdb0e3d56d73b470f6816b532973"},"f933e30"),")"),(0,r.kt)("li",{parentName:"ul"},"allow each user to have their own todos (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/9456ab84f5f5e0b804bd0011037ee72d7da49fbb"},"9456ab8"),")"),(0,r.kt)("li",{parentName:"ul"},"autogenerate release changelog (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/e463ae2e2694358936802e9fbf6dc3a7cfca846d"},"e463ae2"),")"),(0,r.kt)("li",{parentName:"ul"},"build and push images in ci (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/477ad8564bc92105b990715cc0bebeb5c7aff4d8"},"477ad85"),")"),(0,r.kt)("li",{parentName:"ul"},"create-react-app with typescript and equinor icons (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/2cfa523e2e1df8ebe0fa3b003fc6936d1bebaa13"},"2cfa523"),")"),(0,r.kt)("li",{parentName:"ul"},"expand and visualize auth states (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/51c9870bc657d586464780c664aeb6edb49b5ba2"},"51c9870"),")"),(0,r.kt)("li",{parentName:"ul"},"init todo example (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/8beaf084352f16c8715ebe6f77b40d30450d2e04"},"8beaf08"),")"),(0,r.kt)("li",{parentName:"ul"},"official nginx image running unprivileged (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/fab0c1445920ae5c0cb0eb05308b6a223aed3de8"},"fab0c14"),")"),(0,r.kt)("li",{parentName:"ul"},"pre-commit in CI from pre-commit-config.yaml (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/5d806b5bd1ceda039670dd3b30ef19de49519a16"},"5d806b5"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"pre-commit:")," Add autoflake to pre-commits (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/8d97b34f7eeb90b00c0c5d2410b820af259ce7b1"},"8d97b34"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/31"},"#31")),(0,r.kt)("li",{parentName:"ul"},"replace exception handling (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/35ae0ef0bbbaf06ca9a4bf68618ca29718b5d00a"},"35ae0ef"),")"),(0,r.kt)("li",{parentName:"ul"},"replace prettier and eslint with biome (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/afe2cb978ef4260d88835fc5f62db69164aa2fb2"},"afe2cb9"),")"),(0,r.kt)("li",{parentName:"ul"},"response decorator takes Response type as parameter (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/9a7f2287f9bac7e0f68f916c37b4273dc8b95d9b"},"9a7f228"),")"),(0,r.kt)("li",{parentName:"ul"},"reusable gh actions workflows (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/d557ebc8438a4b28d83d2f40d8a7aa2991db1197"},"d557ebc"),")"),(0,r.kt)("li",{parentName:"ul"},"show changelog in documentation (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/6da9b86770ffca6431f16b945680a87637268497"},"6da9b86"),")"),(0,r.kt)("li",{parentName:"ul"},"standardized ErrorResponse model (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/c09e4dccf5abd62fa05e9b1c0a577ea72d0129c4"},"c09e4dc"),")"),(0,r.kt)("li",{parentName:"ul"},"tutorial on authentication (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/fd789c0d7bd3dda1e1ce0ee78ee9c73c4670fe41"},"fd789c0"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"web:")," clear input on add-todo (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/d61adc16ea35a25b2d556b61b9d1cf710de41e8e"},"d61adc1"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"web:")," visualize loading state better (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/6a6ab81bec55bf79aeda5a07e8eff5cdd84b4ab5"},"6a6ab81"),")")),(0,r.kt)("h3",{id:"bug-fixes"},"Bug Fixes"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"add error handling of version file fetch (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a4f68897e446ebb4ebd91f58110bfa403df53fc9"},"a4f6889"),")"),(0,r.kt)("li",{parentName:"ul"},"add missing decorators (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/54fd2f8a3826d2a5bc5bbc7419cbdd83de4811f1"},"54fd2f8"),")"),(0,r.kt)("li",{parentName:"ul"},"add missing dependency without causing infinite loop of rerendering (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/8f5c01d5141c4dbd4ac9b99ebc39ae10f378147f"},"8f5c01d"),")"),(0,r.kt)("li",{parentName:"ul"},"add required additional dependecies to eslint pre-commit env (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/cca8509bf7a4edc5c38ad5fe3a7b0812fdb95040"},"cca8509"),")"),(0,r.kt)("li",{parentName:"ul"},"add types to fixtures (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/0528e5beb9bec905cedee1db2af3b2a5248fe85d"},"0528e5b"),")"),(0,r.kt)("li",{parentName:"ul"},"add venv (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/d682b0817d735547f3a3cd7391d942983cbf666c"},"d682b08"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"api:")," handle lists in create_response (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/333f7d4afbac95609ae15b05b3a8f1d978ee1107"},"333f7d4"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"api:")," make health-check return PlainTextResponse (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/12d51697ee78edbbe519c874b4fddfb8f0786718"},"12d5169"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"api:")," raise MissingPrivilegeException when relevant (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/0c55af393a4ffc189a068c821545261eb10ef7d4"},"0c55af3"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"api:")," raise MissingPrivilegeException when relevant (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/613cc4257699ddb1c2a772b54f28ccec84f2778b"},"613cc42"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"api:")," remove empty default pydantic field in models (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/0424282f7dee8662c6d0b8faa01f78bdaced3a3f"},"0424282"),")"),(0,r.kt)("li",{parentName:"ul"},"cast variable that cannot be undefined to boolean (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/372f781d805d25f2e7aaa284d3b70622989e9136"},"372f781"),")"),(0,r.kt)("li",{parentName:"ul"},"delete non existing item should return 404 (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/43414160eef1bee7ff2ea44c7c9f99e041ccc977"},"4341416"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"dev:")," env_file in docker-compose.override.yml (PR ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/39"},"#39"),") (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/2aa80bdfc211f44d624f1cdad4f8b0844164c4bf"},"2aa80bd"),")"),(0,r.kt)("li",{parentName:"ul"},"disable pull (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/de2d04530a511a798fb757e85cb07872f0dfb129"},"de2d045"),")"),(0,r.kt)("li",{parentName:"ul"},"docs reference out of date (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/bd4cc8d3d2a3b580c0df8bffa7378fc0a2c6413c"},"bd4cc8d"),")"),(0,r.kt)("li",{parentName:"ul"},"duplicated pre-commit hook (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a21f5a69ba1ea3a10371f48071ef2de8b3d56448"},"a21f5a6"),")"),(0,r.kt)("li",{parentName:"ul"},"extras typing is not always dict","[str,str]"," (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/7ba069436255dc88372fd9b73db854477e7bf6f8"},"7ba0694"),")"),(0,r.kt)("li",{parentName:"ul"},"fix mypy errors (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/d9543c187859de7fad59f91b79eaa4f63a56a1c6"},"d9543c1"),")"),(0,r.kt)("li",{parentName:"ul"},"fix pytest_plugin import error (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/b5218196028c904e6a51d9a0971d7637264c87a2"},"b521819"),")"),(0,r.kt)("li",{parentName:"ul"},"lock cryptography dependency since a bad new release. Set authentication scheme to allow for no tokens. Exclude some file from pre-commit (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/ea6a9314482ca75d8d79c999959460b17ceec754"},"ea6a931"),")"),(0,r.kt)("li",{parentName:"ul"},"make authentication work again (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/3e8da0fd68a6619ca32466e934bb915652cce85f"},"3e8da0f"),")"),(0,r.kt)("li",{parentName:"ul"},"make todo title required, not optional (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/bc8dab62079ded3e87c1113e81f1cd9911ad1a65"},"bc8dab6"),")"),(0,r.kt)("li",{parentName:"ul"},"make useTodos simpler to use (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/e8f0a1866c594ca0a526bac3ae3e5a1f8551a005"},"e8f0a18"),")"),(0,r.kt)("li",{parentName:"ul"},"move Response decorator to controllers (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/bd36b4a316f6a2c1216584235eb5dd462f6d0707"},"bd36b4a"),")"),(0,r.kt)("li",{parentName:"ul"},"only allow users to delete their own todos (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/1cf1e7a8eefac27552dcdc9df0a30cf59c042eab"},"1cf1e7a"),")"),(0,r.kt)("li",{parentName:"ul"},"only run safety hook once (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/bc33372bd57d7b8710cd7460f1c18c6b55c38634"},"bc33372"),")"),(0,r.kt)("li",{parentName:"ul"},"poetry command (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/ccbb2e10845f9cf3215e5e95fd07f21c3b108249"},"ccbb2e1"),")"),(0,r.kt)("li",{parentName:"ul"},"pre-commit (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/5192d0e79e433cf925d0569a237a101f77b68c5b"},"5192d0e"),")"),(0,r.kt)("li",{parentName:"ul"},"python-version (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a9341092771e81aced0ed4481eb582785dd08113"},"a934109"),")"),(0,r.kt)("li",{parentName:"ul"},"ran api again (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/afa8158c9815352de7195d6d988302a6d7d87ffb"},"afa8158"),")"),(0,r.kt)("li",{parentName:"ul"},"ran generator (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/19ff51bf4bc99751af93a13a36ea8f3990e6c64c"},"19ff51b"),")"),(0,r.kt)("li",{parentName:"ul"},"remove /api as root path. (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/208ceb98dcf269e18b43d6ffda04dd265bfe868c"},"208ceb9"),")"),(0,r.kt)("li",{parentName:"ul"},"remove encryption.py (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a500444b936bcc99bdcd73ebdc6eb9eeb5de2ac3"},"a500444"),")"),(0,r.kt)("li",{parentName:"ul"},"replace deprecated output definition (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/c53b003498afb8f2568815a4c3da56f8d15542af"},"c53b003"),")"),(0,r.kt)("li",{parentName:"ul"},"replace gunicorn with horizontal scaling (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a8baa0f9ac2f246b17f55aada11845ddcaee15cc"},"a8baa0f"),")"),(0,r.kt)("li",{parentName:"ul"},"resolve PR feedback (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/bd3debe820f27ebf7d892ecbda77720fc66be06b"},"bd3debe"),")"),(0,r.kt)("li",{parentName:"ul"},"set correct base path for docs (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/0dda0b23b94155f1eb6cd194d31af1f9265ecd2b"},"0dda0b2"),")"),(0,r.kt)("li",{parentName:"ul"},"set correct type on todo local state (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/2a4020ce9f84affb1725f4e4b476dc1c20b67b0e"},"2a4020c"),")"),(0,r.kt)("li",{parentName:"ul"},"test suite (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/31da3f7e720d0838e59e280aa4d873b44e24cecb"},"31da3f7"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"tests:")," fix up integration tests with per-user todos (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/b7cc0caa51535020bb329c7c21cde4b458baa81c"},"b7cc0ca"),")"),(0,r.kt)("li",{parentName:"ul"},"The template no longer use the node image in production (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/f9b68d9ec28482a71dd721e0ff1a42c3b6565ed5"},"f9b68d9"),")"),(0,r.kt)("li",{parentName:"ul"},"turn off eslint rules that are unnecessary or might conflict with prettier (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/d6beaf7426821d5bb5efd68fe6407d13ee1d38d5"},"d6beaf7"),")"),(0,r.kt)("li",{parentName:"ul"},"typo (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/fb557b8adb56fc0d5aa430a1d505d1066be1ed13"},"fb557b8"),")"),(0,r.kt)("li",{parentName:"ul"},"update old references (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/5152a1ff419336428b69c7dc7212b1d422fb93bf"},"5152a1f"),")"),(0,r.kt)("li",{parentName:"ul"},"update to match new parameters for get pydantic json schema (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/c6b14a8da9639cd2b5fe04b25b52310aa1017664"},"c6b14a8"),")"),(0,r.kt)("li",{parentName:"ul"},"use const on variable that is never reassigned (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/9f7c54304385c49123a3d436b5cce66997ab1e62"},"9f7c543"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"web:")," adding todo item now clears input. (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/82e6f6baee06ccbd50c4d59fe7a9a97a4b1df094"},"82e6f6b"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"web:")," correct base path (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a3872d5c67f1764c28d7450e9bf4c350cc0e87b6"},"a3872d5"),")"),(0,r.kt)("li",{parentName:"ul"},"yarn build again (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/dfc48fda537d152974a9610e3263245c69346768"},"dfc48fd"),")")),(0,r.kt)("h3",{id:"documentation"},"Documentation"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Adapt config file (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/8b472981776d2cb11c477e5987afd420e38cfa7b"},"8b47298"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/70"},"#70")),(0,r.kt)("li",{parentName:"ul"},"add application tree (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/59aaf944a80a44a3c8a684e091210bea7e7bafda"},"59aaf94"),")"),(0,r.kt)("li",{parentName:"ul"},"add configuration section to extending the API page (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/928e7f59b339ba23dea25c9160f7033d286726fc"},"928e7f5"),")"),(0,r.kt)("li",{parentName:"ul"},"add data provider (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/e3f0055874beec0855b2f1eb490b11a829ff0ed1"},"e3f0055"),")"),(0,r.kt)("li",{parentName:"ul"},"add example to git commit format (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/9e7f1dcfb351761b9448ef5c33e0507edb0b850b"},"9e7f1dc"),")"),(0,r.kt)("li",{parentName:"ul"},"add glossary of terms and explain enterprise vs application logic (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/edc720f3bf0c844e57e62040cd9aebe09f5648de"},"edc720f"),")"),(0,r.kt)("li",{parentName:"ul"},"add how to extend the web (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/6700cbda53d90c63c0ba8cac4ba0a447d82e7be5"},"6700cbd"),")"),(0,r.kt)("li",{parentName:"ul"},"add how to tests components (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/ba78d28faf08ab724f1f0b169bf9227e933a66e0"},"ba78d28"),")"),(0,r.kt)("li",{parentName:"ul"},"add link to API docs (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/e5f86387aabdcc408c9673e2380fe879421a633b"},"e5f8638"),")"),(0,r.kt)("li",{parentName:"ul"},"add link to demo (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/f1475f691b8d692822e827bcd484ae733fea4d83"},"f1475f6"),")"),(0,r.kt)("li",{parentName:"ul"},"add missing environment variables descriptions (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/0b228fb5b9baece31ea4d4001abbb0cfe7c85e01"},"0b228fb"),")"),(0,r.kt)("li",{parentName:"ul"},"add on push to main branch badge (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/657f3b712ea17154a639037689cc2f372ff8a1a4"},"657f3b7"),")"),(0,r.kt)("li",{parentName:"ul"},"add overview (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/8287989f03f5d5398a13b977b42ee35e0b6da417"},"8287989"),")"),(0,r.kt)("li",{parentName:"ul"},"add what is fastapi (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/bbec23b85d2b0c1fadfd4e4ea6e3df7e63683e78"},"bbec23b"),")"),(0,r.kt)("li",{parentName:"ul"},"addd list of features (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/e8304a3c143bb8351fbea510f71f4ed725cbb60f"},"e8304a3"),")"),(0,r.kt)("li",{parentName:"ul"},"allow and move plantuml directly in markdown (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/99bacb43851aec92f61cd9f9a8a2b3f2a710e0c8"},"99bacb4"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"ci:")," add comment to azure login (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/f6b9c962d23a7eb2832e14b1d37d9e8b14419f5d"},"f6b9c96"),")"),(0,r.kt)("li",{parentName:"ul"},"Delete blog (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/85f43fd5982a74c3fbc312cf1ec2ad8e0687b13d"},"85f43fd"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/70"},"#70")),(0,r.kt)("li",{parentName:"ul"},"Fix baseUrl bug (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/b14aa8c090b0b285ca5ac25648bd3ffee4dc7e7f"},"b14aa8c"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/70"},"#70")),(0,r.kt)("li",{parentName:"ul"},"fix broken links (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/de60d945e158cd7de61d1e2850d77fc8e95bff3d"},"de60d94"),")"),(0,r.kt)("li",{parentName:"ul"},"Fix broken links (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/6b18ff533ceade8db48df4c33d88bd09bfd50a89"},"6b18ff5"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/70"},"#70")),(0,r.kt)("li",{parentName:"ul"},"Fix frontpage (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/c30453821ee7bc68691d55ab02eeafe90da79683"},"c304538"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/70"},"#70")),(0,r.kt)("li",{parentName:"ul"},"Generate docs on feature branch push (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/73fa918dd4e1a3a4c86a247bfc8658844cd9ca91"},"73fa918"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/70"},"#70")),(0,r.kt)("li",{parentName:"ul"},"how to contribute to template (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/526b4b0afd6deb6c7120722c15a3a5327c3832d8"},"526b4b0"),")"),(0,r.kt)("li",{parentName:"ul"},"how to register a feature to the app (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/efdba6b34cc74f827a19c6eedc96dcce37d3b041"},"efdba6b"),")"),(0,r.kt)("li",{parentName:"ul"},"minor change to clean architecture (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/ac0b607b931861d84a7fa653d0ddb06737f17ce2"},"ac0b607"),")"),(0,r.kt)("li",{parentName:"ul"},"Move and adapt markdown files (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/8dfc7d90d3f6aeb46451711c109579e30d3b5cb6"},"8dfc7d9"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/70"},"#70")),(0,r.kt)("li",{parentName:"ul"},"move contributing to own page (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/cc1971450902a584ff7040adb9b8a6363741f866"},"cc19714"),")"),(0,r.kt)("li",{parentName:"ul"},"move glossary of terms to end of page and explain the two business logic layers (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/02f9b707272b0d23c9049e3b111bb71b7254e73b"},"02f9b70"),")"),(0,r.kt)("li",{parentName:"ul"},"Move images (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/ac1e323dbb8c2101648fa4c81566b23ba1a8fe7f"},"ac1e323"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/70"},"#70")),(0,r.kt)("li",{parentName:"ul"},"overview of github workflows (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/839d1b50c4cc420a86407e9643df397e1590c214"},"839d1b5"),")"),(0,r.kt)("li",{parentName:"ul"},"overview of pre-commit hooks (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/e479932ae6ee47e1ac16a68dd4fa853e5cd20571"},"e479932"),")"),(0,r.kt)("li",{parentName:"ul"},"re-structure documentation (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/41878233bfcb41961f2cab3cc9ff3683f3bb5341"},"4187823"),")"),(0,r.kt)("li",{parentName:"ul"},"re-write intro to controllers (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/cb1b28ad56648ffba30eebf6a5a7d040e572813a"},"cb1b28a"),")"),(0,r.kt)("li",{parentName:"ul"},"Readd puml files (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/290eb6990204d2794125ca5b59092f74c70761f8"},"290eb69"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/70"},"#70")),(0,r.kt)("li",{parentName:"ul"},"remove calculations from description (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/178829da8480d558ff4a6c776fffb8aaf693ee92"},"178829d"),")"),(0,r.kt)("li",{parentName:"ul"},"Remove comment (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/162608804781e2549412db21693b640305ac9be1"},"1626088"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/70"},"#70")),(0,r.kt)("li",{parentName:"ul"},"Remove docs build on feature push (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/4d41153064033407aaed7271ea6de4d9d4ebf29e"},"4d41153"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/70"},"#70")),(0,r.kt)("li",{parentName:"ul"},"Remove error in documentation docs (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/5d1075fc35054de77517093fbcccea4b42fdf8ea"},"5d1075f"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/70"},"#70")),(0,r.kt)("li",{parentName:"ul"},"remove key features (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/1e97ba8ef8edc774bb6374030de2a945a50fa5d8"},"1e97ba8"),")"),(0,r.kt)("li",{parentName:"ul"},"Remove references to Doctave (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/6949799419ed04141326c3b8b4521c46329bcc96"},"6949799"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/70"},"#70")),(0,r.kt)("li",{parentName:"ul"},"remove simulations from API description (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/ac49fddcfa6e39906f180990eb06cddbf2a4c53d"},"ac49fdd"),")"),(0,r.kt)("li",{parentName:"ul"},"Remove unused docusaurus files (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/13a6f92b80c993f3f5aee0aec623a3589edca652"},"13a6f92"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/70"},"#70")),(0,r.kt)("li",{parentName:"ul"},"remove web app image in introduction (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/0bf620da86c67cd43dcbab4201783bc5d97c57b5"},"0bf620d"),")"),(0,r.kt)("li",{parentName:"ul"},"rename of the application (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/e7c695245c3c7c33015734735ceebb6cc71a53bb"},"e7c6952"),")"),(0,r.kt)("li",{parentName:"ul"},"Rename Tutorial to Docs (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/1c92b9eb4478963d1ed746825bafd0bd249d13c5"},"1c92b9e"),")"),(0,r.kt)("li",{parentName:"ul"},"Respect browser color scheme (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/63289ba31762b29a3c1aed7be50b2ec165f3828f"},"63289ba"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/70"},"#70")),(0,r.kt)("li",{parentName:"ul"},"revert left to right for diagrams (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/6ab6ea7d5ee0d91eb74129a1ea3c0fc78c856f28"},"6ab6ea7"),")"),(0,r.kt)("li",{parentName:"ul"},"rewrite 01-setup Yarn PnP in VSCode (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/df4c7d0dadbbccaafa6fa5c13d0bd3b16faf5243"},"df4c7d0"),")"),(0,r.kt)("li",{parentName:"ul"},"Run create-docusaurus (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/c52ff06063b4896b428ede715963828f4bc05f8e"},"c52ff06"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/70"},"#70")),(0,r.kt)("li",{parentName:"ul"},"style feature list (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/568539e74b32fa60b032a180366c168221b93196"},"568539e"),")"),(0,r.kt)("li",{parentName:"ul"},"turn puml diagrams sideways (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a7a35fae88adead751ac2b727281aa8470c67c54"},"a7a35fa"),")"),(0,r.kt)("li",{parentName:"ul"},"Update documentation version (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/76f1aaa967de8aa3a294bcc6439edcd7c37aa703"},"76f1aaa"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/70"},"#70")),(0,r.kt)("li",{parentName:"ul"},"Update github workflow (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/e2eba4ab2f9152f536427792c00f67cc87861b9e"},"e2eba4a"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/70"},"#70")),(0,r.kt)("li",{parentName:"ul"},"update link to radix playground (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/6c932c3c48739bce3cc21e24a416405a64e5cc31"},"6c932c3"),")"),(0,r.kt)("li",{parentName:"ul"},"use tabs to show platform specific options (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/2216c0a952b438cc04b9aab015b6b51db0801837"},"2216c0a"),")")),(0,r.kt)("h3",{id:"styles"},"Styles"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"fix typos + add codespell pre-commit hook (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/025ad8a61282c6635efd53a3a9f1c27ae6579958"},"025ad8a"),")"),(0,r.kt)("li",{parentName:"ul"},"Make eslint.js and index.js prettier (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/9d22357e3f5f07c098aa539f1e3cd694d30990e8"},"9d22357"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/44"},"#44")),(0,r.kt)("li",{parentName:"ul"},"run biome (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/27b2b15e18f11dd1c123843e380aed14ef5b6a97"},"27b2b15"),")")),(0,r.kt)("h3",{id:"miscellaneous-chores"},"Miscellaneous Chores"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"add action to initialize state fetched asynchronously (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/d85b789e9ff3170864cf8f1cdb2d4945fdd2ee9d"},"d85b789"),")"),(0,r.kt)("li",{parentName:"ul"},"add eslint for typescript (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a6f8e7ff1dfefefdd8329b93550d1aa6e00a4396"},"a6f8e7f"),")"),(0,r.kt)("li",{parentName:"ul"},"add issue templates and labels (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/32cadec68e770255f49d2735338aaac3d18af7a9"},"32cadec"),")"),(0,r.kt)("li",{parentName:"ul"},"add labels to cover conventional commits (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/57dd01811bb50aadb821e3348ecb3c5729923ab4"},"57dd018"),")"),(0,r.kt)("li",{parentName:"ul"},"add script to run eslint (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/2c8e006ecadca27e6650316efcb640951d127e0d"},"2c8e006"),")"),(0,r.kt)("li",{parentName:"ul"},"add union type to support broader area of usage (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/f253241dc35bc17af207a09993613fd20d14d1c0"},"f253241"),")"),(0,r.kt)("li",{parentName:"ul"},"add vitest (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/6c4502164490100e9ded58f7f322f37bc5c9887b"},"6c45021"),")"),(0,r.kt)("li",{parentName:"ul"},"Add yarn upgrade-interactive (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/91d998f317d8b697a75a920108a94e5479b13f78"},"91d998f"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"api:")," return Pydantic model instead of dict (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/427a9633d31cc3298d463fc4f1a225bd36f76867"},"427a963"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"build:")," add pre-commit hook to generate ts api (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/caec39e384f49b7e4a5347a6547f82ec0f7e3c0a"},"caec39e"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"build:")," delete old generated ts files (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/12c876624f5a8ab279bef8e5641ac1cc30be0176"},"12c8766"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"build:")," generate new files, and use them (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/5c16ae93d76ae27f9a553467f61378f32a7f3534"},"5c16ae9"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"build:")," install new api codegen tool (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/6318b37adfb79d1955cc7d368145edb631909b69"},"6318b37"),")"),(0,r.kt)("li",{parentName:"ul"},"bump web node image version (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/337ed61359ebdc4f4f0192ebe290dabd5ee402d6"},"337ed61"),")"),(0,r.kt)("li",{parentName:"ul"},"configure prettier recommended plugin (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/40d852760a221c5a4e3f7e516b95126ae03b2c30"},"40d8527"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"dev:")," add black formatter location to specify line length (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/2755265403ee453e575e71b5b5446685dee38cea"},"2755265"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"dev:")," make CRA websocket use port 80 (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/53d251896a6a6b43e37bad3132ee765d02491658"},"53d2518"),")"),(0,r.kt)("li",{parentName:"ul"},"disable unnecessary rules after the new jsx transform from React 17 (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/9109e775cda535d30bfc0e8b8e74c925edce90c0"},"9109e77"),")"),(0,r.kt)("li",{parentName:"ul"},"document bandit exception (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/b3a54608c5f596878daed7d41f07f783565e5732"},"b3a5460"),")"),(0,r.kt)("li",{parentName:"ul"},"fix file-formatter hooks exclude regex (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/61a3e36dc63f258013b7fa02a188907627fa6196"},"61a3e36"),")"),(0,r.kt)("li",{parentName:"ul"},"fix yarn pnp runtime files (no-install setup) (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/194018683344dfaf9e982474b2024f4f6d8b099f"},"1940186"),")"),(0,r.kt)("li",{parentName:"ul"},"forward ref to IconButton (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/02b1edd6b2bc866d5142a4fbd9d8c3664b362070"},"02b1edd"),")"),(0,r.kt)("li",{parentName:"ul"},"generate api with axios (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a2fea020e0669a4cda3e324f47eba218d5b67d8e"},"a2fea02"),")"),(0,r.kt)("li",{parentName:"ul"},"ignore correct path eslint (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/8c1a88ed34c7ecac2a6e92af4917e24383476b1e"},"8c1a88e"),")"),(0,r.kt)("li",{parentName:"ul"},"ignore diffs on yarn plugins (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/78017e5216f863b19842e09574bf035db78f88de"},"78017e5"),")"),(0,r.kt)("li",{parentName:"ul"},"ignore generated folder on formatting/linting (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/8471ab113ea999f57b24757fbd2c85bed489fd33"},"8471ab1"),")"),(0,r.kt)("li",{parentName:"ul"},"init api and web (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/560296183e54d20c736e243549d1012dc58b56ce"},"5602961"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"main:")," release 1.0.0 (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/b490f5755c91f405f8bf45103096e720ecf6b91a"},"b490f57"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"main:")," release 1.1.0 (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/0fc805232dc49ca0045fcaf8b745a4b11d4839d7"},"0fc8052"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"main:")," release 1.1.1 (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/89d74cb6c1b02fd206f7d7ff6b8a6abd613cf476"},"89d74cb"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"main:")," release 1.2.0 (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/48fe424cee17ed49f30c9f6b87a218f7816a7ba9"},"48fe424"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"main:")," release 1.2.1 (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/0b2bcc3054ce80202fa4b1cd42642e3481dfcef0"},"0b2bcc3"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"main:")," release 1.3.0 (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/1d8d8bb39b0be482144a53fce5d40193a6bc76a3"},"1d8d8bb"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"main:")," release 1.4.0 (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/0c37123f1c08b634b06f7d8ec71eab56c11851fc"},"0c37123"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"pre-commit:")," Change from autoflake to pycln (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/2104864487762fb6a1de666bad9bd42e8aea0f5f"},"2104864"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/31"},"#31")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"pre-commit:")," Make local tests run on windows (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/81717389560dc2a9bc7b1723613b6b8a4c9d78b1"},"8171738"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"pre-commit:")," Move autoflake before isort (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/984f69e2ba2cfbf5884dbe0b609499418ab9c19e"},"984f69e"),")"),(0,r.kt)("li",{parentName:"ul"},"prettier ignores files in node_modules by default (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/23da6e53e7a7cf6ff40ea86b9df57de9c2e2765f"},"23da6e5"),")"),(0,r.kt)("li",{parentName:"ul"},"remove conditional render (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/36745ec4612f1a6c4f2d472e04fec89be0389258"},"36745ec"),")"),(0,r.kt)("li",{parentName:"ul"},"remove dead links to demo application (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/e6dd31d1c9aea0dddb3ee9ae049edd1ae0dfede9"},"e6dd31d"),")"),(0,r.kt)("li",{parentName:"ul"},"remove empty catch (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/0264cb5960dfee0cfb36dcf1e9ebbd099ddac51e"},"0264cb5"),")"),(0,r.kt)("li",{parentName:"ul"},"remove flake8 file from Dockerfile (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/fe4890326931bef6ebd355297ffffbb85dd39d1a"},"fe48903"),")"),(0,r.kt)("li",{parentName:"ul"},"remove old yarn-2 stuff (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/ddbb339db668b8a6a62ad9ef2f38e3e8b6ab4faf"},"ddbb339"),")"),(0,r.kt)("li",{parentName:"ul"},"remove package-lock (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/4ea44173912c00eebd59915f687032f64c3512f6"},"4ea4417"),")"),(0,r.kt)("li",{parentName:"ul"},"remove PnP (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/52633270e4907059de0b1adde1d0423a13143fb2"},"5263327"),")"),(0,r.kt)("li",{parentName:"ul"},"remove react-app from eslint extends (debatable) (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/1f955d6f3a1e1256dcb2a91a7effa715e9092075"},"1f955d6"),")"),(0,r.kt)("li",{parentName:"ul"},"remove redundant conditional (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/925d5b4a5391b39acfc6e639ee9a47a676697ebb"},"925d5b4"),")"),(0,r.kt)("li",{parentName:"ul"},"remove safety from dependencies (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/0e6934513d910f32c93b8503b551762ef29674cf"},"0e69345"),")"),(0,r.kt)("li",{parentName:"ul"},"remove safety from pre-commit (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/d0719fdfd4fffed1c5aa20427ead5b37224d2af0"},"d0719fd"),")"),(0,r.kt)("li",{parentName:"ul"},"remove unused export (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/48199e7b880990061e8bc5302eb706b9ea73797d"},"48199e7"),")"),(0,r.kt)("li",{parentName:"ul"},"replace deprecated pytest function (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/d35b0c325dc8893c40f024750cbad83acd32a93d"},"d35b0c3"),")"),(0,r.kt)("li",{parentName:"ul"},"set language version interrogate (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/57032e862b8ff66d07461f8ca3b31560eec7dd0a"},"57032e8"),")"),(0,r.kt)("li",{parentName:"ul"},"substitute HashRouter with BrowserRouter in web app (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/c2230d5880cf4e6e803f102282bcd0217de49d4d"},"c2230d5"),")"),(0,r.kt)("li",{parentName:"ul"},"type CommitInfo (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/2179e13f256cba46959c101f76593f262daee5d4"},"2179e13"),")"),(0,r.kt)("li",{parentName:"ul"},"typing errors (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/1ebe6957ee77aff93cfac6f1acfd832a2a0f3b96"},"1ebe695"),")"),(0,r.kt)("li",{parentName:"ul"},"Update all web packages (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a193af56c4e0ed68be9b7ad05d7a5747130c0321"},"a193af5"),")"),(0,r.kt)("li",{parentName:"ul"},"update dependencies (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/fb2cf508f3f30f12bf39f23a9a630d92e12f47b0"},"fb2cf50"),")"),(0,r.kt)("li",{parentName:"ul"},"update dependencies (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/67061eb5ddb72e9fd49375d2b9e3fc8c73c572f5"},"67061eb"),")"),(0,r.kt)("li",{parentName:"ul"},"update gitignore (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/995ee825598a9de09ea8094d2e0bcbe27a2b1b9e"},"995ee82"),")"),(0,r.kt)("li",{parentName:"ul"},"update poetry.lock (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/ce0736870d873805c348c5fa2c915db449a76168"},"ce07368"),")"),(0,r.kt)("li",{parentName:"ul"},"update sdks (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/385a55eefab23b695e2a4f1f12b1ca97e93a9820"},"385a55e"),")"),(0,r.kt)("li",{parentName:"ul"},"upgrade release-please (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/381ee02df3c7c60a118761831aa4b499d6af868b"},"381ee02"),")"),(0,r.kt)("li",{parentName:"ul"},"upgrade versions (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/bc9f6a3dadb920167419e8b66bd79a396c09cad9"},"bc9f6a3"),")"),(0,r.kt)("li",{parentName:"ul"},"upgrade versions (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/041f78e9c0cdb1be8fd83099d33b7c1e36e3633a"},"041f78e"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"vscode:")," Stop git ignoring vscode settings (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/2b643d1fad4555ab78be38fee5c0b7abfad47adc"},"2b643d1"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/44"},"#44")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"yarn:")," Stop running redundant yarn install (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/48415778f2a0b3f636a0b5394959f8d992171b06"},"4841577"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/44"},"#44")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"yarn:")," Use Yarn Zero-Install (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/ae03fa630a70b0ad74d3348d6b9c93546563c553"},"ae03fa6"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/44"},"#44"))),(0,r.kt)("h3",{id:"code-refactoring"},"Code Refactoring"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"adding middleware and exception handlers recommended way (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/11384e9d319e59a574e6d9389e00c18402bfda4e"},"11384e9"),")"),(0,r.kt)("li",{parentName:"ul"},"all files under feaures (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/10df906776c6b826ea59dc37e4a1d4924e2d5e87"},"10df906"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"api:")," fix type errors in vscode (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/fd40ccb730dd23899ac2de7cc9e9e15440647280"},"fd40ccb"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"api:")," replace response_class with return type annotations (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/b1fa3bd6b342ba89e5d2237721573a83cfd503fe"},"b1fa3bd"),")"),(0,r.kt)("li",{parentName:"ul"},"change test URL to match root path (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/7c665131419de938f263d0e4d6d5e32cf1b8fd00"},"7c66513"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"ci:")," extract ghcr login into separat step (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/0d90fe00438ad9c995198cba8e268c8268af1e4a"},"0d90fe0"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"ci:")," remove crazy-max external action (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/b41990d92c19d2a661900a208a60d604a5ab470c"},"b41990d"),")"),(0,r.kt)("li",{parentName:"ul"},"configure prettier on src folder (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/14d63aab822b493cd1ba7ba80c6707146c00ec80"},"14d63aa"),")"),(0,r.kt)("li",{parentName:"ul"},"conform to snake_case filenames (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/018918ec788d9c0202c8a90b0a8f77db3dd3a201"},"018918e"),")"),(0,r.kt)("li",{parentName:"ul"},"create empty yarn.lock (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/39050e72af50debd95380590fe4ee803a5995589"},"39050e7"),")"),(0,r.kt)("li",{parentName:"ul"},"improve type-strictness (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/961a7b2c490009034b1059060c4bc3fe0d1f88bc"},"961a7b2"),")"),(0,r.kt)("li",{parentName:"ul"},"memoize todoAPI, closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/199"},"#199")," (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/35059fae89f1b6eef622fffbfd97a1ef4d022151"},"35059fa"),")"),(0,r.kt)("li",{parentName:"ul"},"migrate to pydantic v2 (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/7b0099b0169690c05f0f3875c1e5e790ff6cc515"},"7b0099b"),")"),(0,r.kt)("li",{parentName:"ul"},"mocking database using mongomock (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/19b7023e55d6fe44a7fef9b2fbfc36a30e0ee7df"},"19b7023"),")"),(0,r.kt)("li",{parentName:"ul"},"move default mongo client outside (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/9c241ff33d9540de03bd305d90588c787ac57dfe"},"9c241ff"),")"),(0,r.kt)("li",{parentName:"ul"},"move default react eslint config from package.json to .eslintrc (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/bbcf3b57bf0430f50f0aa8bfe8ff700e2fd93178"},"bbcf3b5"),")"),(0,r.kt)("li",{parentName:"ul"},"move dependency to API to useTodoAPI hook (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/4055f893111c003dafe25ad9dafbef3940e053c4"},"4055f89"),")"),(0,r.kt)("li",{parentName:"ul"},"move todo component out from App.tsx (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/edfd9f66f06271e0b2cc6c01b9ea468ac7473e45"},"edfd9f6"),")"),(0,r.kt)("li",{parentName:"ul"},"remove empty catch (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/f4024bf2c5edc78b26c50497e34d35170461bf53"},"f4024bf"),")"),(0,r.kt)("li",{parentName:"ul"},"remove old repository mock (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/624cf0ac3065e70e84af588d2934f873276f9cd8"},"624cf0a"),")"),(0,r.kt)("li",{parentName:"ul"},"remove prefix in API url path (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/bc99f93fdfec513bf518d0146f6e77d10458d689"},"bc99f93"),")"),(0,r.kt)("li",{parentName:"ul"},"remove pyproject.toml parsing with extra-files (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/c1d812a59bdd79bccec4dfe5a1dffd2e3316d619"},"c1d812a"),")"),(0,r.kt)("li",{parentName:"ul"},"remove repeated code (DRY) (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/c5e6aa14583195fd23c645d1bc6591d1bb4e1481"},"c5e6aa1"),")"),(0,r.kt)("li",{parentName:"ul"},"remove tool versions file (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/480e38e2023c142f7f2efc1596655b1c79f051f2"},"480e38e"),")"),(0,r.kt)("li",{parentName:"ul"},"remove unused className (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/1ee3effe4fcfbca071156a46879cea812c879441"},"1ee3eff"),")"),(0,r.kt)("li",{parentName:"ul"},"remove unused doctave file (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/c42fdeb96d1871faa53c85a5285187b31f9db01b"},"c42fdeb"),")"),(0,r.kt)("li",{parentName:"ul"},"rename infrastructure to data_providers (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/8630fb75854be7014d52753a46244e9e66256133"},"8630fb7"),")"),(0,r.kt)("li",{parentName:"ul"},"rename list() member-function to list_collection (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/7ef87c0cc8dfaacf43c5536420ccf41040436619"},"7ef87c0"),")"),(0,r.kt)("li",{parentName:"ul"},"rename popover state setter (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/500ec0a7b5733856c4818e1f875a82e06f137cfc"},"500ec0a"),")"),(0,r.kt)("li",{parentName:"ul"},"rename unit tests from infrastructure to data providers (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/bbd21ba81fe07b9d8d254793cf234441e3c97f81"},"bbd21ba"),")"),(0,r.kt)("li",{parentName:"ul"},"render TodoApp.tsx as single component in App (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/f823831d0171038b29d699292551102be2c6adf4"},"f823831"),")"),(0,r.kt)("li",{parentName:"ul"},"replace python-jose with pyjwt (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/0d01e42f59e4ce28ea49ef9db44302b8cdcbe184"},"0d01e42"),")"),(0,r.kt)("li",{parentName:"ul"},"rework design (eds) (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/f3db74afd105aa54c6a61e8fa3da7bfd050803cd"},"f3db74a"),")"),(0,r.kt)("li",{parentName:"ul"},"rewrite logger middleware to be a 'pure ASGI' middleware (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/309620e565fcae3470d82abd2fa431c2a9ecb03d"},"309620e"),")"),(0,r.kt)("li",{parentName:"ul"},"separate responsibilities by moving useEffect to a custom hook (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/cc33a5d1f856aff8e529c4c3df43d326fb5a8a90"},"cc33a5d"),")"),(0,r.kt)("li",{parentName:"ul"},"structure web to group files by feature (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/cb5a09bacdcc76a39ad676e8c51c7ceebed8b9d1"},"cb5a09b"),")"),(0,r.kt)("li",{parentName:"ul"},"update some react/axios-related types (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/43e22fb44ec11c75658f89eaa2e70160a07f7c4d"},"43e22fb"),")"),(0,r.kt)("li",{parentName:"ul"},"update typing to python 3.10+ syntax (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/245c69991b2d8d2a62b78971c29ea1a372dd29be"},"245c699"),")"),(0,r.kt)("li",{parentName:"ul"},"use ","<","Icon",">"," data prop instead of name (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/5f142a9bd91356020be94248f91f30ac8d95a5e7"},"5f142a9"),")"),(0,r.kt)("li",{parentName:"ul"},"use case responses decorator instead of use case executor (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/d0af7e4d2fa39793133e8d69f5ef63cb19b0e033"},"d0af7e4"),")"),(0,r.kt)("li",{parentName:"ul"},"use common toggle function (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/ab78e1f8c632da0abfa8efd586d8836e953d2c7d"},"ab78e1f"),")"),(0,r.kt)("li",{parentName:"ul"},"use default URL for docs and openapi specification (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/8b11feda64d5b1664b50b8d439df13fd86bfc2e3"},"8b11fed"),")"),(0,r.kt)("li",{parentName:"ul"},"use descriptive property name (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/80af66078c422ea008b6f23fdf1bdacfc2b44840"},"80af660"),")"),(0,r.kt)("li",{parentName:"ul"},"use IconButton (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/c3d236afbe160b8e79c20729d04fa26a71def609"},"c3d236a"),")"),(0,r.kt)("li",{parentName:"ul"},"use IconButton to reduce complexity of TodoItem (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/3bb232fd1c34113837fc1a71d4fc054f6f770ab9"},"3bb232f"),")"),(0,r.kt)("li",{parentName:"ul"},"Use NginX as web server (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/3c6ebd9ba0964d2beae3762061bb82211013a8b6"},"3c6ebd9"),")"),(0,r.kt)("li",{parentName:"ul"},"use Popover component (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/270f2ea35112133a0f887f298606232383189ad7"},"270f2ea"),")"),(0,r.kt)("li",{parentName:"ul"},"use settings in pyproject.toml for pre commit hooks related to python (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/19c397f65311411abf7d98812a0df1d709fed391"},"19c397f"),")"),(0,r.kt)("li",{parentName:"ul"},"use TodoContext to handle todos state (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/7d6cc34882e45fd845f4dcb7c920f7fe15785c81"},"7d6cc34"),")"),(0,r.kt)("li",{parentName:"ul"},"use version from pyproject.toml in docs (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/015206c23f2ad8a89b1fe9b0687e6d9acea6b4e6"},"015206c"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"workflow:")," Fix linting errors (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/8ea9f69fbb5919568ba99fed659be77e18647d48"},"8ea9f69"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"workflow:")," rename and restructure workflows (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/f08fffaf7ffaf46503debfc4e4bd60320592a84e"},"f08fffa"),")")),(0,r.kt)("h3",{id:"tests"},"Tests"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"add jsx-a11y to check accessibility rules on jsx elements (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/77b865d8add2dd272b35743cf3bd84c1a1775367"},"77b865d"),")"),(0,r.kt)("li",{parentName:"ul"},"add rules of hooks (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/4d0d771075143632eea26b75582f7d0566ee7345"},"4d0d771"),")"),(0,r.kt)("li",{parentName:"ul"},"add some simple web tests (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/81fde9c2e0726f7426c938a6877014c84a1d271f"},"81fde9c"),")"),(0,r.kt)("li",{parentName:"ul"},"add unit and integration tests to exception handler (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/1d32e628b64ece12c6367cd06268b494ec6fb3ff"},"1d32e62"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"docs:")," Add testing of docs (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/08d8c232fe45e0dd6bc91f238133ee9000a9900d"},"08d8c23"),")"),(0,r.kt)("li",{parentName:"ul"},"mock authorization (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/618258ca76fb00b8f2dabe2d68cd9d3519b403c2"},"618258c"),")"),(0,r.kt)("li",{parentName:"ul"},"move pytest configuration to pyproject.toml (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a5eff87da9a3283afd7272500a3832d16010349a"},"a5eff87"),")"),(0,r.kt)("li",{parentName:"ul"},"Upgrade pre-commits (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/bd8f1106cde2ec215ea9a519a4afd5daa460fb96"},"bd8f110"),")")),(0,r.kt)("h3",{id:"build-system"},"Build System"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"add mongodb to run in radix (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/43faa805dfc40a406ae96be55d2a9d2c060be51d"},"43faa80"),")"),(0,r.kt)("li",{parentName:"ul"},"add path to init.sh to cmd (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/10feabb88d086c19f82d9579f3ef7148b0507e05"},"10feabb"),")"),(0,r.kt)("li",{parentName:"ul"},"add react-oauth2-code-pkce (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/06b2a279be5295d7ee9262ced2f704cc93062c3c"},"06b2a27"),")"),(0,r.kt)("li",{parentName:"ul"},"add typescript plugin (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/83ade0cdb86d15bbe072e036fbe0ac1b106f8015"},"83ade0c"),")"),(0,r.kt)("li",{parentName:"ul"},"adding missing packges (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/02a92ca3410173eed92e13a7705a59c68179a446"},"02a92ca"),")"),(0,r.kt)("li",{parentName:"ul"},"api crashes fix (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/e94a17e87979c90e02112b947927f1bf9510cbea"},"e94a17e"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"api:")," add requests library (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/4c4790d73c26e31da2cecc820354e4288fae22bb"},"4c4790d"),")"),(0,r.kt)("li",{parentName:"ul"},"bump python version to 3.11 (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/225a530784730a413974c8b5df8ec767cafe6afd"},"225a530"),")"),(0,r.kt)("li",{parentName:"ul"},"bump versions in pyproject.toml (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/b18536637aaad91a48de4ba834668452a5d25c27"},"b185366"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"ci/cd:")," update flake8 repo location (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/e6953ad3ca280975c9589939a1e728a73fbfd418"},"e6953ad"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"deps:")," bump certifi from 2022.12.7 to 2023.7.22 in /api (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a9ab785c07ed47b6e8536b58ff578d1c015e8361"},"a9ab785"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"deps:")," update react-oauth-code-pkce (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/37f6008ed9312c851ad068ff697a27cdae2f4b63"},"37f6008"),")"),(0,r.kt)("li",{parentName:"ul"},"enable auth for web in readix (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/d8c6797328756383d9423c7e559c77c85a116d54"},"d8c6797"),")"),(0,r.kt)("li",{parentName:"ul"},"enable scripts to build necessary packages (YN0007) (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/f1cf2c3f7d6fc7190535c8abf97c55bfa6839e56"},"f1cf2c3"),")"),(0,r.kt)("li",{parentName:"ul"},"fix mac m1 virtiofs docker problem (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/8c017a6504d812f6752711d7cbe9daeb19ee1b82"},"8c017a6"),")"),(0,r.kt)("li",{parentName:"ul"},"missing peer dependencies (YN0002) (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/9e8981d581c2509039beda4a7a34980c574bf179"},"9e8981d"),")"),(0,r.kt)("li",{parentName:"ul"},"move config of codespell to pyproject.toml (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/f3d4fa75259530f1955a059732f92b102748107c"},"f3d4fa7"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"radix:")," add missing db environment variables for api (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/cc8ee598a648e8cc69d75498e09f34588160b330"},"cc8ee59"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"radix:")," add missing port definition (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/fbf548ee08b72a8fd608530b968e64fe33e799ed"},"fbf548e"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"radix:")," add missing root password for mongodb (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/71de4768dbb7639ff7e4c4f227e879144d7b7297"},"71de476"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"radix:")," add more resources to api (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/f18518a5bf0dc7655749094de96fcee608b16dc5"},"f18518a"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"radix:")," non root mongodb image (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a8a60f13509ceba6326b39e06b38186cb1ed9e9e"},"a8a60f1"),")"),(0,r.kt)("li",{parentName:"ul"},"run as non-root (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a5a255f24ff0d3e54539018c24a0534a7e7d6b06"},"a5a255f"),")"),(0,r.kt)("li",{parentName:"ul"},"set oauth client id and audience (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/1fc42ec93c374990379aacbcbe8952e6ad87fcdc"},"1fc42ec"),")"),(0,r.kt)("li",{parentName:"ul"},"set yarn version (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/afb5834883d6d1f01026d602fb434db38443c8b0"},"afb5834"),")"),(0,r.kt)("li",{parentName:"ul"},"styled components post-install causing noise in yarn pnp (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/03dfac0d20ca0d82cffd04c000752642882b8188"},"03dfac0"),")"),(0,r.kt)("li",{parentName:"ul"},"Update api packages (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/9dc46b4e315930a381e4f7f7fd6fddaef173d4eb"},"9dc46b4"),")"),(0,r.kt)("li",{parentName:"ul"},"update environment name (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/2c40003cdcfb73d437b86ac1b7dcd97172a4d6af"},"2c40003"),")"),(0,r.kt)("li",{parentName:"ul"},"update OAUTH_AUDIENCE settings (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/c38c8e233daa2c3ad168218f277d4d0163dcd074"},"c38c8e2"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"web:")," replace cra and webpack with vite (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/4f67778a364ea5d6742758113f043688c90f6cbb"},"4f67778"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"yarn:")," Migrate the lockfile (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/2e71fbaaf1c195a82b094f88b898f867f45a5f7f"},"2e71fba"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/44"},"#44")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"yarn:")," Set Yarn to version berry (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/e2a335276176bdae752536f4f902fca414f4ddc5"},"e2a3352"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/44"},"#44")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"yarn:")," Swithc to Plug'n'Play setup (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/751640ec61c19a94517f1c303865f0abd2c5ccec"},"751640e"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/44"},"#44")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"yarn:")," Update Dockerfile (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/78bddadfa79a483d65d2430f78c0a0fd0af05155"},"78bddad"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/44"},"#44")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"yarn:")," Update gitignore (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a527bec89c5d4972eb34d9283444cfa98e1293b6"},"a527bec"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/44"},"#44")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"yarn:")," Update yarn commands (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/5a0cbd281a12494e29feff24c432070c094cf1df"},"5a0cbd2"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/44"},"#44"))),(0,r.kt)("h3",{id:"continuous-integration"},"Continuous Integration"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"activate publish (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/cc14523dfed5f1451237c55fcb3e3cf22a4b96ec"},"cc14523"),")"),(0,r.kt)("li",{parentName:"ul"},"add build and deploy settings for production (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/02dbc999e6919009f62735df30e57a29975c2c5e"},"02dbc99"),")"),(0,r.kt)("li",{parentName:"ul"},"add check to typescript-client to ensure right api-spec is used (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/edc4621f922429ec00f425da6313dd148d766b62"},"edc4621"),")"),(0,r.kt)("li",{parentName:"ul"},"Add rollback workflow (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/b1cca70e53c7080427979b3efe0ee30ccffafdd0"},"b1cca70"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/153"},"#153")),(0,r.kt)("li",{parentName:"ul"},"allow publishing multiple tags at once (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/4c5d8677395054254551757f871570dad1695933"},"4c5d867"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/153"},"#153")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"api:")," enable ruff autofix (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/aeaac4d2ac182abd15bb6446162f511da40fc3de"},"aeaac4d"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"api:")," enable upgradepy (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/59c75f7d19647355d7c329bb56bc6975cc14ff3e"},"59c75f7"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"api:")," replace flake8 with ruff (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/180a48cca4bf1d4daced7c73e2f1e7e3f1dd6ced"},"180a48c"),")"),(0,r.kt)("li",{parentName:"ul"},"bump pre-commit hooks (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/24455caf0c4b4f8e281c5be3ef6ab078997cfd4d"},"24455ca"),")"),(0,r.kt)("li",{parentName:"ul"},"bump pre-commit hooks (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/9a0cea7d6a03aaa99101135f626b948c87dd6882"},"9a0cea7"),")"),(0,r.kt)("li",{parentName:"ul"},"call correct workflow file (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/cb2c2eb55ea652839ffd652d9dd25179c784135b"},"cb2c2eb"),")"),(0,r.kt)("li",{parentName:"ul"},"change oauth redurect url to radix playground (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/655c55f5027baea255d29ea881df0030695da5aa"},"655c55f"),")"),(0,r.kt)("li",{parentName:"ul"},"Change version logging format on build (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/49ca8939a6dd8fd753ba171653a5977a869a0249"},"49ca893"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/154"},"#154")),(0,r.kt)("li",{parentName:"ul"},"correct permissions (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/6d9d563a3cf3db335c1d34b3630ac64212881186"},"6d9d563"),")"),(0,r.kt)("li",{parentName:"ul"},"correct version path for web (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/781cef20ff5d734c83535ec3dac15bb9aaffa14e"},"781cef2"),")"),(0,r.kt)("li",{parentName:"ul"},"disable deploy workflows (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/7f3e2752f99a3ae21996ef18832ce5040648f1a6"},"7f3e275"),")"),(0,r.kt)("li",{parentName:"ul"},"enable publish latest (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/3716ee66c772120955c958b90ba7a99f4a6016c4"},"3716ee6"),")"),(0,r.kt)("li",{parentName:"ul"},"enforce conventional commits (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/c0a40b00f2d98ea5bd0437935441d8cf4e28c8ce"},"c0a40b0"),")"),(0,r.kt)("li",{parentName:"ul"},"Fix bug in publish docs (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a696a33a9e451f3d261e2b07538aebac418ac3d3"},"a696a33"),")"),(0,r.kt)("li",{parentName:"ul"},"Include all commit types in changelog (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/73cfaaadf916c7e15accb347183f89e50651f279"},"73cfaaa"),")"),(0,r.kt)("li",{parentName:"ul"},"login as the service principal to request an access token (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/fabe3b469ce49f9c64ff3e0781d6564c78f709f5"},"fabe3b4"),")"),(0,r.kt)("li",{parentName:"ul"},"pass tag name to publish-image workflow (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/dcedc16f6ab2d16d74f4c41ffaf4100f638b88dc"},"dcedc16"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/153"},"#153")),(0,r.kt)("li",{parentName:"ul"},"pipeline not running (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/4b5e587555c759f37a3742de5895024fb0bf66f2"},"4b5e587"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"pre-commit:")," add end-of-file-fixer hook (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/cea07f17ae9ddf38033bb9ca840bf09a9eadb26a"},"cea07f1"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"pre-commit:")," add no-commit-to-branch hook (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/073879ce5668779b219c99c063855c48b3c1400d"},"073879c"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"pre-commit:")," make convential commit hook run (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/d50f01d40890c098683263bf5aab0f591354b41f"},"d50f01d"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"pre-commit:")," update hook versions (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a5bd7d398233a3fa42bacedfa971627d9d208c35"},"a5bd7d3"),")"),(0,r.kt)("li",{parentName:"ul"},"publish nginx image to docker registry (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/939a29cd785d097b34f97df5613dc7830ba84c3c"},"939a29c"),")"),(0,r.kt)("li",{parentName:"ul"},"release to production on release created (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/b3e5e5749fe988f26b434e979ae0d918dff8cc60"},"b3e5e57"),")"),(0,r.kt)("li",{parentName:"ul"},"remove pycln (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/9614b7e06040cab2fcbc9064a90fc6cbbd3cba0f"},"9614b7e"),")"),(0,r.kt)("li",{parentName:"ul"},"remove secret as input to reusable workflow (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/1ec6cbb2e5360de99d99416739093a02a38c5ba7"},"1ec6cbb"),")"),(0,r.kt)("li",{parentName:"ul"},"remove unused code (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/fda13257393da0a34a6c251aad63992efde22a60"},"fda1325"),")"),(0,r.kt)("li",{parentName:"ul"},"replace local mypy with pre-commit hook (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/4cee89e79e80a41627c69e67dcdf5697a421606d"},"4cee89e"),")"),(0,r.kt)("li",{parentName:"ul"},"run pytest integrations tests (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/0fff7a34a3b6ca79e925837d47a9142164936131"},"0fff7a3"),")"),(0,r.kt)("li",{parentName:"ul"},"set correct oauth redirect url for test environment (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/3c5db0841dc9761a9ebe7abb422f8875908ade0b"},"3c5db08"),")"),(0,r.kt)("li",{parentName:"ul"},"set correct radix environment to deploy for latest (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/aee20af7ff7a7c632484e0e51434cade67940609"},"aee20af"),")"),(0,r.kt)("li",{parentName:"ul"},"specify playground context (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/142bc139c4cd4b7e145a00dde2161a502afa9363"},"142bc13"),")"),(0,r.kt)("li",{parentName:"ul"},"update azure auth configuration (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/fb02376cbd27c36502ef19a72b8c17de72c1db11"},"fb02376"),")"),(0,r.kt)("li",{parentName:"ul"},"use ruff implementation of isort and bandit (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/1151ec486a6713cd4f95bf145eb36900d552eafc"},"1151ec4"),")")),(0,r.kt)("hr",null),(0,r.kt)("p",null,'title: "Changelog"\nhide_title: true\nsidebar_label: "Changelog"\nid: "changelog"'),(0,r.kt)("h2",{id:"slug-changelog"},'slug: "/changelog"'),(0,r.kt)(m,{mdxType:"Contributing"}))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/492dc3f9.b3c5f638.js b/assets/js/492dc3f9.b3c5f638.js new file mode 100644 index 00000000..fe09ad84 --- /dev/null +++ b/assets/js/492dc3f9.b3c5f638.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[396],{2489:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>u,contentTitle:()=>r,default:()=>d,frontMatter:()=>o,metadata:()=>l,toc:()=>s});var i=n(7462),a=(n(7294),n(3905));n(1839);const o={},r="Configuration",l={unversionedId:"about/running/configure",id:"about/running/configure",title:"Configuration",description:"This document goes through all the different configuration options available.",source:"@site/docs/about/running/02-configure.md",sourceDirName:"about/running",slug:"/about/running/configure",permalink:"/template-fastapi-react/docs/about/running/configure",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/about/running/02-configure.md",tags:[],version:"current",sidebarPosition:2,frontMatter:{},sidebar:"about",previous:{title:"Prerequisites",permalink:"/template-fastapi-react/docs/about/running/prerequisites"},next:{title:"Starting services",permalink:"/template-fastapi-react/docs/about/running/starting-services"}},u={},s=[{value:".env",id:"env",level:2},{value:"Web",id:"web",level:3},{value:"Authentication",id:"authentication",level:4},{value:"API",id:"api",level:3},{value:"System",id:"system",level:4},{value:"Database",id:"database",level:4},{value:"Authentication",id:"authentication-1",level:4}],p={toc:s};function d(e){let{components:t,...n}=e;return(0,a.kt)("wrapper",(0,i.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"configuration"},"Configuration"),(0,a.kt)("p",null,"This document goes through all the different configuration options available."),(0,a.kt)("admonition",{type:"info"},(0,a.kt)("p",{parentName:"admonition"},"Remember to restart"),(0,a.kt)("p",{parentName:"admonition"},"Any changes you make to this file will only come into effect when you restart the\nserver.")),(0,a.kt)("h2",{id:"env"},".env"),(0,a.kt)("p",null,"First, let's look at the options available in the ",(0,a.kt)("inlineCode",{parentName:"p"},".env")," file."),(0,a.kt)("h3",{id:"web"},"Web"),(0,a.kt)("h4",{id:"authentication"},"Authentication"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"AUTH_ENABLED"),": To enable or disable authentication"),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"CLIENT_ID"),": Find the app's client ID under Azure Active Directory service (also called application ID). The client ID is used to tell Azure which resource a user is attempting to access."),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"TENANT_ID"),": Find tenant ID through the Azure portal under Azure Active Directory service. Select properties and under scroll down to the Tenant ID field."),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"AUTH_SCOPE"),": Find the scope the Azure portal under Azure Active Directory service and App registrations. The scope is located under the expose an API.")),(0,a.kt)("h3",{id:"api"},"API"),(0,a.kt)("h4",{id:"system"},"System"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"ENVIRONMENT"),": local for hot-reloading, or production for speed"),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"LOGGER_LEVEL"),": DEBUG, ERROR, INFO, WARN")),(0,a.kt)("h4",{id:"database"},"Database"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"MONGODB_USERNAME"),": The username"),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"MONGODB_PASSWORD"),": The password"),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"MONGODB_HOSTNAME"),": The host where it's running"),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"MONGODB_DATABASE"),": The database to connect to"),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"MONGODB_PORT"),": The port that is used")),(0,a.kt)("h4",{id:"authentication-1"},"Authentication"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"OAUTH_TOKEN_ENDPOINT"),": The endpoint to obtain tokens."),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"OAUTH_AUTH_ENDPOINT"),": The authorization endpoint performs authentication of the end-user (this is done by redirecting the user agent to this endpoint)."),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"OAUTH_WELL_KNOWN"),": The endpoints that lists endpoints and other configuration options relevant to the OpenID Connect implementation in the project."),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"OAUTH_AUDIENCE"),": If using azure ad, audience is the azure client id."),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"SECRET_KEY"),": The secret used for signing JWT.")),(0,a.kt)("p",null,"Used by the docs:"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"OAUTH_CLIENT_ID"),": Find the app's client ID under Azure Active Directory service (also called application ID). The client ID is used to tell Azure which resource a user is attempting to access."),(0,a.kt)("li",{parentName:"ul"},(0,a.kt)("inlineCode",{parentName:"li"},"OAUTH_AUTH_SCOPE"),": Find the scope the Azure portal under Azure Active Directory service and App registrations. The scope is located under the expose an API.")))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/4b94b993.25343c8e.js b/assets/js/4b94b993.25343c8e.js new file mode 100644 index 00000000..40562b64 --- /dev/null +++ b/assets/js/4b94b993.25343c8e.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[859],{4657:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>r,contentTitle:()=>c,default:()=>p,frontMatter:()=>n,metadata:()=>i,toc:()=>l});var o=a(7462),s=(a(7294),a(3905));a(1839);const n={},c="Use case",i={unversionedId:"about/concepts/use-case",id:"about/concepts/use-case",title:"Use case",description:"There will be one use case for each individual action/command of an actor. An actor is a person or another system that interacts with our application. Typically, it will be a regular user.",source:"@site/docs/about/concepts/02-use-case.md",sourceDirName:"about/concepts",slug:"/about/concepts/use-case",permalink:"/template-fastapi-react/docs/about/concepts/use-case",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/about/concepts/02-use-case.md",tags:[],version:"current",sidebarPosition:2,frontMatter:{},sidebar:"about",previous:{title:"Task",permalink:"/template-fastapi-react/docs/about/concepts/task"},next:{title:"How to",permalink:"/template-fastapi-react/docs/category/how-to"}},r={},l=[{value:"Examples",id:"examples",level:2},{value:"Related concepts",id:"related-concepts",level:2}],u={toc:l};function p(e){let{components:t,...a}=e;return(0,s.kt)("wrapper",(0,o.Z)({},u,a,{components:t,mdxType:"MDXLayout"}),(0,s.kt)("h1",{id:"use-case"},"Use case"),(0,s.kt)("p",null,"There will be one use case for each individual action/command of an actor. An actor is a person or another system that interacts with our application. Typically, it will be a regular user."),(0,s.kt)("h2",{id:"examples"},"Examples"),(0,s.kt)("p",null,"For a meetup.com clone, it could be:"),(0,s.kt)("ul",null,(0,s.kt)("li",{parentName:"ul"},"Confirming attendance as an attendee"),(0,s.kt)("li",{parentName:"ul"},"Cancelling attendance as an attendee"),(0,s.kt)("li",{parentName:"ul"},"Drafting new meeting as an organizer")),(0,s.kt)("h2",{id:"related-concepts"},"Related concepts"))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/57dd7c71.325d5b48.js b/assets/js/57dd7c71.325d5b48.js new file mode 100644 index 00000000..5d14a1a4 --- /dev/null +++ b/assets/js/57dd7c71.325d5b48.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[508],{5162:(e,t,a)=>{a.d(t,{Z:()=>i});var n=a(7294),l=a(6010);const r="tabItem_Ymn6";function i(e){let{children:t,hidden:a,className:i}=e;return n.createElement("div",{role:"tabpanel",className:(0,l.Z)(r,i),hidden:a},t)}},5488:(e,t,a)=>{a.d(t,{Z:()=>c});var n=a(7462),l=a(7294),r=a(6010),i=a(2389),o=a(7392),p=a(7094),s=a(2466);const m="tabList__CuJ",u="tabItem_LNqP";function d(e){var t;const{lazy:a,block:i,defaultValue:d,values:c,groupId:k,className:g}=e,h=l.Children.map(e.children,(e=>{if((0,l.isValidElement)(e)&&"value"in e.props)return e;throw new Error(`Docusaurus error: Bad child <${"string"==typeof e.type?e.type:e.type.name}>: all children of the component should be , and every should have a unique "value" prop.`)})),N=c??h.map((e=>{let{props:{value:t,label:a,attributes:n}}=e;return{value:t,label:a,attributes:n}})),y=(0,o.l)(N,((e,t)=>e.value===t.value));if(y.length>0)throw new Error(`Docusaurus error: Duplicate values "${y.map((e=>e.value)).join(", ")}" found in . Every value needs to be unique.`);const v=null===d?d:d??(null==(t=h.find((e=>e.props.default)))?void 0:t.props.value)??h[0].props.value;if(null!==v&&!N.some((e=>e.value===v)))throw new Error(`Docusaurus error: The has a defaultValue "${v}" but none of its children has the corresponding value. Available values are: ${N.map((e=>e.value)).join(", ")}. If you intend to show no default tab, use defaultValue={null} instead.`);const{tabGroupChoices:b,setTabGroupChoices:f}=(0,p.U)(),[w,C]=(0,l.useState)(v),P=[],{blockElementScrollPositionUntilNextRender:T}=(0,s.o5)();if(null!=k){const e=b[k];null!=e&&e!==w&&N.some((t=>t.value===e))&&C(e)}const x=e=>{const t=e.currentTarget,a=P.indexOf(t),n=N[a].value;n!==w&&(T(t),C(n),null!=k&&f(k,String(n)))},I=e=>{var t;let a=null;switch(e.key){case"ArrowRight":{const t=P.indexOf(e.currentTarget)+1;a=P[t]??P[0];break}case"ArrowLeft":{const t=P.indexOf(e.currentTarget)-1;a=P[t]??P[P.length-1];break}}null==(t=a)||t.focus()};return l.createElement("div",{className:(0,r.Z)("tabs-container",m)},l.createElement("ul",{role:"tablist","aria-orientation":"horizontal",className:(0,r.Z)("tabs",{"tabs--block":i},g)},N.map((e=>{let{value:t,label:a,attributes:i}=e;return l.createElement("li",(0,n.Z)({role:"tab",tabIndex:w===t?0:-1,"aria-selected":w===t,key:t,ref:e=>P.push(e),onKeyDown:I,onFocus:x,onClick:x},i,{className:(0,r.Z)("tabs__item",u,null==i?void 0:i.className,{"tabs__item--active":w===t})}),a??t)}))),a?(0,l.cloneElement)(h.filter((e=>e.props.value===w))[0],{className:"margin-top--md"}):l.createElement("div",{className:"margin-top--md"},h.map(((e,t)=>(0,l.cloneElement)(e,{key:t,hidden:e.props.value!==w})))))}function c(e){const t=(0,i.Z)();return l.createElement(d,(0,n.Z)({key:String(t)},e))}},9535:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>m,contentTitle:()=>p,default:()=>c,frontMatter:()=>o,metadata:()=>s,toc:()=>u});var n=a(7462),l=(a(7294),a(3905)),r=(a(1839),a(5162)),i=a(5488);const o={},p="Setup",s={unversionedId:"contribute/development-guide/setup",id:"contribute/development-guide/setup",title:"Setup",description:"Prerequisites",source:"@site/docs/contribute/development-guide/01-setup.md",sourceDirName:"contribute/development-guide",slug:"/contribute/development-guide/setup",permalink:"/template-fastapi-react/docs/contribute/development-guide/setup",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/contribute/development-guide/01-setup.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{},sidebar:"contribute",previous:{title:"Development guide",permalink:"/template-fastapi-react/docs/category/development-guide"},next:{title:"Coding",permalink:"/template-fastapi-react/docs/category/coding"}},m={},u=[{value:"Prerequisites",id:"prerequisites",level:2},{value:"Pre-commit",id:"pre-commit",level:2},{value:"Installation",id:"installation",level:3},{value:"Usage",id:"usage",level:3},{value:"Hooks",id:"hooks",level:3},{value:"API",id:"api",level:2},{value:"Create virtualenv",id:"create-virtualenv",level:3},{value:"Activate virtualenv",id:"activate-virtualenv",level:3},{value:"Install Poetry",id:"install-poetry",level:3},{value:"Install packages",id:"install-packages",level:3},{value:"Web",id:"web",level:2},{value:"Package management",id:"package-management",level:3},{value:"Yarn PnP in Jetbrains IDEs",id:"yarn-pnp-in-jetbrains-ides",level:4},{value:"Yarn PnP in VSCode",id:"yarn-pnp-in-vscode",level:4}],d={toc:u};function c(e){let{components:t,...a}=e;return(0,l.kt)("wrapper",(0,n.Z)({},d,a,{components:t,mdxType:"MDXLayout"}),(0,l.kt)("h1",{id:"setup"},"Setup"),(0,l.kt)("h2",{id:"prerequisites"},"Prerequisites"),(0,l.kt)("p",null,"To work with the template monorepo you'll need to install ",(0,l.kt)("a",{parentName:"p",href:"/template-fastapi-react/docs/about/running/prerequisites"},"these tools"),"."),(0,l.kt)("h2",{id:"pre-commit"},"Pre-commit"),(0,l.kt)("p",null,"When contributing to this project, pre-commits are necessary, as they run certain tests, sanitisers, and formatters."),(0,l.kt)("p",null,"The project provides a ",(0,l.kt)("inlineCode",{parentName:"p"},".pre-commit-config.yaml")," file that is used to setup git ",(0,l.kt)("em",{parentName:"p"},"pre-commit hooks"),"."),(0,l.kt)("p",null,"On commit locally, code is automatically formatted and checked for security vulnerabilities using pre-commit git hooks."),(0,l.kt)("h3",{id:"installation"},"Installation"),(0,l.kt)("p",null,"To initialize pre-commit in your local repository, run"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-shell"},"pre-commit install\n")),(0,l.kt)("p",null,"This tells pre-commit to run for this repository on every commit."),(0,l.kt)("h3",{id:"usage"},"Usage"),(0,l.kt)("p",null,"Pre-commit will run on every commit, but can also be run manually on all files:"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-shell"},"pre-commit run --all-files\n")),(0,l.kt)("p",null,"Pre-commit tests can be skipped on commits with ",(0,l.kt)("inlineCode",{parentName:"p"},"git commit --no-verify"),"."),(0,l.kt)("admonition",{type:"caution"},(0,l.kt)("p",{parentName:"admonition"},"If you have to skip the pre-commit tests, you're probably doing something you're not supposed to, and whoever commits after you might have to fix your \"mistakes\". Consider updating the pre-commit hooks if your code is non-compliant.")),(0,l.kt)("h3",{id:"hooks"},"Hooks"),(0,l.kt)("details",null,(0,l.kt)("summary",null,"Overview"),(0,l.kt)("table",null,(0,l.kt)("thead",{parentName:"table"},(0,l.kt)("tr",{parentName:"thead"},(0,l.kt)("th",{parentName:"tr",align:null},"Repository"),(0,l.kt)("th",{parentName:"tr",align:null},"Hook"),(0,l.kt)("th",{parentName:"tr",align:null},"Purpose"))),(0,l.kt)("tbody",{parentName:"table"},(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://github.com/pre-commit/pre-commit-hooks"},"pre-commit/pre-commit-hooks")),(0,l.kt)("td",{parentName:"tr",align:null},"check-ast"),(0,l.kt)("td",{parentName:"tr",align:null},"Check whether files parse as valid python")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null}),(0,l.kt)("td",{parentName:"tr",align:null},"check-merge-conflict"),(0,l.kt)("td",{parentName:"tr",align:null},"Check for files that contain merge conflict strings")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null}),(0,l.kt)("td",{parentName:"tr",align:null},"check-case-conflict"),(0,l.kt)("td",{parentName:"tr",align:null},"Check for files with names that would conflict on a case-insensitive filesystem")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null}),(0,l.kt)("td",{parentName:"tr",align:null},"check-json"),(0,l.kt)("td",{parentName:"tr",align:null},"Verify syntax of all JSON files")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null}),(0,l.kt)("td",{parentName:"tr",align:null},"check-toml"),(0,l.kt)("td",{parentName:"tr",align:null},"Verify syntax of all TOML files")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null}),(0,l.kt)("td",{parentName:"tr",align:null},"check-yaml"),(0,l.kt)("td",{parentName:"tr",align:null},"Verify syntax of all YAML files")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null}),(0,l.kt)("td",{parentName:"tr",align:null},"trailing-whitespace"),(0,l.kt)("td",{parentName:"tr",align:null},"Trim trailing whitespace")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null}),(0,l.kt)("td",{parentName:"tr",align:null},"mixed-line-ending"),(0,l.kt)("td",{parentName:"tr",align:null},"Replaces or checks mixed line ending")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null}),(0,l.kt)("td",{parentName:"tr",align:null},"detect-private-key"),(0,l.kt)("td",{parentName:"tr",align:null},"Checks for the existence of private keys")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://github.com/compilerla/conventional-pre-commit"},"compilerla/conventional-pre-commit")),(0,l.kt)("td",{parentName:"tr",align:null},"conventional-pre-commit"),(0,l.kt)("td",{parentName:"tr",align:null},"A pre-commit hook to check commit messages for Conventional Commits formatting")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://github.com/ambv/black"},"ambv/black")),(0,l.kt)("td",{parentName:"tr",align:null},"black"),(0,l.kt)("td",{parentName:"tr",align:null},"Python code formatter")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://github.com/PyCQA/bandit"},"PyCQA/bandit")),(0,l.kt)("td",{parentName:"tr",align:null},"bandit"),(0,l.kt)("td",{parentName:"tr",align:null},"A security linter designed to find common security issues in Python code")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://github.com/econchick/interrogate"},"econchick/interrogate")),(0,l.kt)("td",{parentName:"tr",align:null},"interrogate"),(0,l.kt)("td",{parentName:"tr",align:null},"Check the code base for missing docstrings")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://github.com/hadialqattan/pycln"},"hadialqattan/pycln")),(0,l.kt)("td",{parentName:"tr",align:null},"pycln"),(0,l.kt)("td",{parentName:"tr",align:null},"Finds and removes unused import statements")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://github.com/pycqa/isort"},"pycqa/isort")),(0,l.kt)("td",{parentName:"tr",align:null},"isort"),(0,l.kt)("td",{parentName:"tr",align:null},"Sort imports alphabetically, and automatically separated into sections and by type")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://github.com/pre-commit/mirrors-prettier"},"pre-commit/mirrors-prettier")),(0,l.kt)("td",{parentName:"tr",align:null},"prettier"),(0,l.kt)("td",{parentName:"tr",align:null},"TypeScript/JavaScript/JSON ++ code formatter")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://github.com/pre-commit/mirrors-eslint"},"pre-commit/mirrors-eslint")),(0,l.kt)("td",{parentName:"tr",align:null},"eslint"),(0,l.kt)("td",{parentName:"tr",align:null},"Helps you find and fix problems in your JavaScript code")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://gitlab.com/pycqa/flake8"},"pycqa/flake8")),(0,l.kt)("td",{parentName:"tr",align:null},"flake8"),(0,l.kt)("td",{parentName:"tr",align:null},"Check the style and quality of Python code")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null},(0,l.kt)("a",{parentName:"td",href:"https://github.com/equinor/template-fastapi-react/blob/main/.pre-commit-config.yaml"},"local")),(0,l.kt)("td",{parentName:"tr",align:null},"mypy"),(0,l.kt)("td",{parentName:"tr",align:null},"Python type checker")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null}),(0,l.kt)("td",{parentName:"tr",align:null},"pytest"),(0,l.kt)("td",{parentName:"tr",align:null},"Python test runner")),(0,l.kt)("tr",{parentName:"tbody"},(0,l.kt)("td",{parentName:"tr",align:null}),(0,l.kt)("td",{parentName:"tr",align:null}),(0,l.kt)("td",{parentName:"tr",align:null}))))),(0,l.kt)("h2",{id:"api"},"API"),(0,l.kt)("p",null,"From inside the /api folder."),(0,l.kt)("h3",{id:"create-virtualenv"},"Create virtualenv"),(0,l.kt)("p",null,"Virtual environment is used for running unit tests with pre-commit and upgrade packages. It also can be used to run the application if you not are using Docker."),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-shell"},"python3 -m venv .venv\n")),(0,l.kt)("h3",{id:"activate-virtualenv"},"Activate virtualenv"),(0,l.kt)(i.Z,{groupId:"operating-system",mdxType:"Tabs"},(0,l.kt)(r.Z,{value:"linux",label:"Linux",mdxType:"TabItem"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-bash"},"source .venv/bin/activate\n"))),(0,l.kt)(r.Z,{value:"windows",label:"Windows",mdxType:"TabItem"},(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-powershell"},".\\venv\\Scripts\\Activate.ps1\npip install --upgrade pip\n")))),(0,l.kt)("h3",{id:"install-poetry"},"Install Poetry"),(0,l.kt)("p",null,"Poetry is used to manage Python package dependencies."),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-shell"},"$ pip install poetry\n$ poetry config virtualenvs.create false # Not create venv\n")),(0,l.kt)("p",null,"The installation instructions can be found ",(0,l.kt)("a",{parentName:"p",href:"https://python-poetry.org/docs/#installation"},"here"),"."),(0,l.kt)("h3",{id:"install-packages"},"Install packages"),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-shell"},"$ poetry install\n")),(0,l.kt)("h2",{id:"web"},"Web"),(0,l.kt)("p",null,"From inside the /web folder."),(0,l.kt)("h3",{id:"package-management"},"Package management"),(0,l.kt)("p",null,"This project uses ",(0,l.kt)("strong",{parentName:"p"},"Yarn 2 Plug'n'Play")," to manage web package dependencies.\nThat means there is no need to run npm/yarn install.\nHowever, if you want to add/remove/update packages, you need yarn installed locally."),(0,l.kt)("pre",null,(0,l.kt)("code",{parentName:"pre",className:"language-shell"},"$ npm install -g yarn\n")),(0,l.kt)("h4",{id:"yarn-pnp-in-jetbrains-ides"},"Yarn PnP in Jetbrains IDEs"),(0,l.kt)("p",null,"To let the IDE know that dependencies can be found in ",(0,l.kt)("inlineCode",{parentName:"p"},".yarn")," instead of ",(0,l.kt)("inlineCode",{parentName:"p"},"node_modules"),", follow these steps; ",(0,l.kt)("a",{parentName:"p",href:"https://www.jetbrains.com/help/idea/installing-and-removing-external-software-using-node-package-manager.html#ws_npm_yarn_set_up_yarn2"},"https://www.jetbrains.com/help/idea/installing-and-removing-external-software-using-node-package-manager.html#ws_npm_yarn_set_up_yarn2")),(0,l.kt)("h4",{id:"yarn-pnp-in-vscode"},"Yarn PnP in VSCode"),(0,l.kt)("p",null,"Because the project uses Yarn PnP, VSCode's language server must use the same typescript executable as the project in order to access dependencies. This is located in ",(0,l.kt)("inlineCode",{parentName:"p"},"web/.yarn/sdks/typescript/lib"),". To use this version, simply open a ",(0,l.kt)("inlineCode",{parentName:"p"},".ts(x)")," file, open the command palette (default ",(0,l.kt)("inlineCode",{parentName:"p"},"Ctrl+Shift+P")," or ",(0,l.kt)("inlineCode",{parentName:"p"},"Cmd+Shift+P"),"), find ",(0,l.kt)("inlineCode",{parentName:"p"},"TypeScript: Select TypeScript Version...")," and select ",(0,l.kt)("inlineCode",{parentName:"p"},"Use Workspace Version"),"."),(0,l.kt)("p",null,"Not using the correct typescript executable might cause ",(0,l.kt)("inlineCode",{parentName:"p"},"Cannot find module '***' or its corresponding type declarations.")," and ",(0,l.kt)("inlineCode",{parentName:"p"},"JSX element implicitly has type 'any' because no interface 'JSX.IntrinsicElements' exists.")," errors."))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/5fef8d46.fc4c9a16.js b/assets/js/5fef8d46.fc4c9a16.js new file mode 100644 index 00000000..680e26da --- /dev/null +++ b/assets/js/5fef8d46.fc4c9a16.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[219],{5714:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>d,default:()=>l,frontMatter:()=>a,metadata:()=>u,toc:()=>c});var i=n(7462),o=(n(7294),n(3905)),r=(n(1839),n(814));const a={},d="Adding features",u={unversionedId:"contribute/development-guide/coding/extending-the-api/adding-features/index",id:"contribute/development-guide/coding/extending-the-api/adding-features/index",title:"Adding features",description:"A feature has this structure.",source:"@site/docs/contribute/development-guide/coding/extending-the-api/adding-features/index.md",sourceDirName:"contribute/development-guide/coding/extending-the-api/adding-features",slug:"/contribute/development-guide/coding/extending-the-api/adding-features/",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/contribute/development-guide/coding/extending-the-api/adding-features/index.md",tags:[],version:"current",frontMatter:{},sidebar:"contribute",previous:{title:"Repositories",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repositories"},next:{title:"Controller",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/controllers"}},s={},c=[{value:"Register a feature",id:"register-a-feature",level:2}],p={toc:c};function l(e){let{components:t,...n}=e;return(0,o.kt)("wrapper",(0,i.Z)({},p,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"adding-features"},"Adding features"),(0,o.kt)("p",null,"A feature has this structure."),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre"},"\u251c\u2500\u2500 todo/\n\u2502 \u251c\u2500\u2500 use_cases/ - Application logic\n\u2502 \u251c\u2500\u2500 exceptions.py - Exceptions classes (optional)\n\u2502 \u2514\u2500\u2500 controller.py - The entrypoint\n\u2514\u2500\u2500 ...\n")),(0,o.kt)("p",null,"Define endpoints in the controller that calls use cases that implements the application logic."),(0,o.kt)("h2",{id:"register-a-feature"},"Register a feature"),(0,o.kt)("p",null,"Import the router of the feature and include it to the app."),(0,o.kt)(r.Z,{language:"jsx",mdxType:"CodeBlock"},'import click\nfrom fastapi import APIRouter, FastAPI, Security\nfrom starlette.middleware import Middleware\n\nfrom authentication.authentication import auth_with_jwt\nfrom common.exception_handlers import add_exception_handlers\nfrom common.middleware import LocalLoggerMiddleware, OpenCensusRequestLoggingMiddleware\nfrom common.responses import responses\nfrom config import config\nfrom features.health_check import health_check_feature\nfrom features.todo import todo_feature\nfrom features.whoami import whoami_feature\n\ndescription_md = """\n### Description\nA RESTful API for handling todo items.\n\nAnyone in Equinor are authorized to use the API.\n * Click **Authorize** to login and start testing.\n\n### Resources\n * [Docs](https://equinor.github.io/template-fastapi-react/)\n * [Github](https://github.com/equinor/template-fastapi-react)\n\n For questions about usage or expanding the API, create issue on Github or see docs.\n"""\n\n\ndef create_app() -> FastAPI:\n public_routes = APIRouter()\n public_routes.include_router(health_check_feature.router)\n\n authenticated_routes = APIRouter()\n authenticated_routes.include_router(todo_feature.router)\n authenticated_routes.include_router(whoami_feature.router)\n\n middleware = [Middleware(LocalLoggerMiddleware)]\n if config.APPINSIGHTS_CONSTRING:\n middleware.append(Middleware(OpenCensusRequestLoggingMiddleware))\n\n app = FastAPI(\n title="Template FastAPI React",\n version="1.4.0", # x-release-please-version\n description=description_md,\n responses=responses,\n middleware=middleware,\n license_info={"name": "MIT", "url": "https://github.com/equinor/template-fastapi-react/blob/main/LICENSE.md"},\n swagger_ui_init_oauth={\n "clientId": config.OAUTH_CLIENT_ID,\n "appName": "TemplateFastAPIReact",\n "usePkceWithAuthorizationCodeGrant": True,\n "scopes": config.OAUTH_AUTH_SCOPE,\n "useBasicAuthenticationWithAccessCodeGrant": True,\n },\n )\n\n add_exception_handlers(app)\n\n app.include_router(authenticated_routes, dependencies=[Security(auth_with_jwt)])\n app.include_router(public_routes)\n\n return app\n\n\n@click.group()\ndef cli() -> None:\n pass\n\n\n@cli.command()\ndef run() -> None:\n import uvicorn\n\n uvicorn.run(\n "app:create_app",\n host="0.0.0.0", # noqa:S104\n port=5000,\n factory=True,\n reload=config.ENVIRONMENT == "local",\n log_level=config.log_level,\n )\n\n\nif __name__ == "__main__":\n cli() # run commands in cli() group\n'))}l.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/61b19cc7.35a6f195.js b/assets/js/61b19cc7.35a6f195.js new file mode 100644 index 00000000..e68bd01f --- /dev/null +++ b/assets/js/61b19cc7.35a6f195.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[118],{3214:(e,t,o)=>{o.r(t),o.d(t,{assets:()=>i,contentTitle:()=>s,default:()=>p,frontMatter:()=>n,metadata:()=>l,toc:()=>u});var r=o(7462),a=(o(7294),o(3905));o(1839);const n={},s="Ground rules",l={unversionedId:"contribute/ground-rules",id:"contribute/ground-rules",title:"Ground rules",description:"* For major changes, please open an issue first to discuss what you would like to change.",source:"@site/docs/contribute/02-ground-rules.md",sourceDirName:"contribute",slug:"/contribute/ground-rules",permalink:"/template-fastapi-react/docs/contribute/ground-rules",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/contribute/02-ground-rules.md",tags:[],version:"current",sidebarPosition:2,frontMatter:{},sidebar:"contribute",previous:{title:"How to start contributing",permalink:"/template-fastapi-react/docs/contribute/how-to-start-contributing"},next:{title:"Development guide",permalink:"/template-fastapi-react/docs/category/development-guide"}},i={},u=[{value:"Pull Requests",id:"pull-requests",level:2},{value:"Git commit format",id:"git-commit-format",level:2}],m={toc:u};function p(e){let{components:t,...o}=e;return(0,a.kt)("wrapper",(0,r.Z)({},m,o,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"ground-rules"},"Ground rules"),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"For major changes, please open an issue first to discuss what you would like to change.",(0,a.kt)("ul",{parentName:"li"},(0,a.kt)("li",{parentName:"ul"},"Search for existing issues and pull requests on the ",(0,a.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/projects/1"},"project development board")," before creating your own."))),(0,a.kt)("li",{parentName:"ul"},"Contributors should fork the repository and work on fixes or enhancements on their own fork.",(0,a.kt)("ul",{parentName:"li"},(0,a.kt)("li",{parentName:"ul"},"Use the ",(0,a.kt)("a",{parentName:"li",href:"https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request-from-a-fork"},"pull request feature")," to submit your changes to this repository."),(0,a.kt)("li",{parentName:"ul"},"All pull requests should be rebased (with main) and commits squashed prior to the final merge process."),(0,a.kt)("li",{parentName:"ul"},"Use ",(0,a.kt)("a",{parentName:"li",href:"https://www.conventionalcommits.org/en/v1.0.0/"},"conventional commit")," formatting for commit messages, so that it's possible to auto-generate the changelogs."))),(0,a.kt)("li",{parentName:"ul"},"Use a separate branch for each issue you\u2019re working on.",(0,a.kt)("ul",{parentName:"li"},(0,a.kt)("li",{parentName:"ul"},"Do not combine fixes for multiple issues into one branch."))),(0,a.kt)("li",{parentName:"ul"},"Please include unit tests with all your code changes.",(0,a.kt)("ul",{parentName:"li"},(0,a.kt)("li",{parentName:"ul"},"All unit tests must be 100% passing before the pull requests will be approved and merged.")))),(0,a.kt)("h2",{id:"pull-requests"},"Pull Requests"),(0,a.kt)("p",null,"Please try to make your pull request easy to review for us."),(0,a.kt)("ul",null,(0,a.kt)("li",{parentName:"ul"},"Make small pull requests. The smaller, the faster to review and the more likely it will be merged soon."),(0,a.kt)("li",{parentName:"ul"},"Don't make changes unrelated to the goals of your PR.",(0,a.kt)("ul",{parentName:"li"},(0,a.kt)("li",{parentName:"ul"},"There might be typos on some comments, or perhaps a function is in need of refactoring - regardless, if those changes are not related to your PR, please implement those changes in another PR.")))),(0,a.kt)("p",null,"While you're writing up the pull request, you can add Closes #XXX in the message body where #XXX is the issue you're fixing. Therefore, an example would be Closes #42 would close issue #42."),(0,a.kt)("h2",{id:"git-commit-format"},"Git commit format"),(0,a.kt)("p",null,"We have very precise rules over how our git commit messages can be formatted."),(0,a.kt)("p",null,"We are using the ",(0,a.kt)("a",{parentName:"p",href:"https://www.conventionalcommits.org/en/v1.0.0/"},"conventional commits")," formatting for commit messages."),(0,a.kt)("p",null,"Here\u2019s an example commit message:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"type: short description of what you did (imperative tense) <= 50 chars\n\nWhen necessary, mote details can come here, until 72 chars each line.\n\nBREAKING CHANGE: some description\n\nFixes #1234\n")),(0,a.kt)("p",null,"The type can be one of these types: feat, fix, build, ci, docs, style, refactor, test, and chore."),(0,a.kt)("admonition",{type:"caution"},(0,a.kt)("p",{parentName:"admonition"},"Summary should:"),(0,a.kt)("ul",{parentName:"admonition"},(0,a.kt)("li",{parentName:"ul"},"Be written in imperative, present tense, e.g. write ",(0,a.kt)("inlineCode",{parentName:"li"},"add")," instead of ",(0,a.kt)("inlineCode",{parentName:"li"},"added")," or ",(0,a.kt)("inlineCode",{parentName:"li"},"adds"),"."),(0,a.kt)("li",{parentName:"ul"},"Don't capitalize the first letter."),(0,a.kt)("li",{parentName:"ul"},"Don't write dot (.) at the end."))),(0,a.kt)("details",null,(0,a.kt)("summary",null,"An example"),(0,a.kt)("p",null,"patches (1.0.0 \u2192 1.0.1)"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},'git commit -a -m "fix(parsing): fixed a bug in our parser"\n')),(0,a.kt)("p",null,"features (1.0.0 \u2192 1.1.0)"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},'git commit -a -m "feat(parser): we now have a parser \\o/"\n')),(0,a.kt)("p",null,"breaking changes (1.0.0 \u2192 2.0.0)"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},'git commit -a -m "feat(new-parser): introduces a new parsing library\nBREAKING CHANGE: new library does not support foo-construct"\n')),(0,a.kt)("p",null,"Complete:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"refactor!: foo-bar replaces bar-foo\n\nbar-foo does not fit other solutions, use standard convention foo-bar\n\nAB#11\nCloses #22, AB#33, equinor/otherrepo#44\n\nBREAKING CHANGE:\n\n'bar-foo' command has changed from 'bar-foo' to 'foo-bar'\n\nTo migrate your project, change all command where you use 'bar-foo' with 'foo-bar'\n\nCo-authored-by: Elliot Alderson\n"))),(0,a.kt)("p",null,"This leads to more readable messages that are easy to follow when looking through the project history."),(0,a.kt)("p",null,"It is important to note that we use the git commit messages to auto-generate changelogs for each release."))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/6d61db34.31b6f0e7.js b/assets/js/6d61db34.31b6f0e7.js new file mode 100644 index 00000000..a4b2c1d0 --- /dev/null +++ b/assets/js/6d61db34.31b6f0e7.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[260],{4564:e=>{e.exports=JSON.parse('{"title":"Concepts","description":"General introductions to complex domain-specific topics.","slug":"/category/concepts","permalink":"/template-fastapi-react/docs/category/concepts","navigation":{"previous":{"title":"Overview","permalink":"/template-fastapi-react/docs/about/overview"},"next":{"title":"Task","permalink":"/template-fastapi-react/docs/about/concepts/task"}}}')}}]); \ No newline at end of file diff --git a/assets/js/73611911.902cc1fc.js b/assets/js/73611911.902cc1fc.js new file mode 100644 index 00000000..03ce6e95 --- /dev/null +++ b/assets/js/73611911.902cc1fc.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[250],{4678:(t,e,i)=>{i.r(e),i.d(e,{assets:()=>c,contentTitle:()=>a,default:()=>p,frontMatter:()=>s,metadata:()=>r,toc:()=>l});var n=i(7462),d=(i(7294),i(3905)),o=(i(1839),i(814));const s={},a="Adding entities",r={unversionedId:"contribute/development-guide/coding/extending-the-api/adding-entities",id:"contribute/development-guide/coding/extending-the-api/adding-entities",title:"Adding entities",description:"Entities form the domain model of the application.",source:"@site/docs/contribute/development-guide/coding/extending-the-api/02-adding-entities.md",sourceDirName:"contribute/development-guide/coding/extending-the-api",slug:"/contribute/development-guide/coding/extending-the-api/adding-entities",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-entities",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/contribute/development-guide/coding/extending-the-api/02-adding-entities.md",tags:[],version:"current",sidebarPosition:2,frontMatter:{},sidebar:"contribute",previous:{title:"Extending the API",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/"},next:{title:"Adding data providers",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/"}},c={},l=[{value:"Testing entities",id:"testing-entities",level:2}],m={toc:l};function p(t){let{components:e,...i}=t;return(0,d.kt)("wrapper",(0,n.Z)({},m,i,{components:e,mdxType:"MDXLayout"}),(0,d.kt)("h1",{id:"adding-entities"},"Adding entities"),(0,d.kt)("p",null,"Entities form the domain model of the application."),(0,d.kt)("p",null,"An entity can be an object with methods, or it can be a set of data structures and functions. It should be a regular\nclass, a dataclass, or a value object (if all the properties are the same, two objects are identical). Entities hold\ndata (state) and logic reusable for various applications."),(0,d.kt)(o.Z,{language:"jsx",mdxType:"CodeBlock"},'from dataclasses import asdict, dataclass, fields\n\n\n@dataclass(frozen=True)\nclass TodoItem:\n id: str\n user_id: str\n title: str\n is_completed: bool = False\n\n def to_dict(self) -> dict[str, str | bool]:\n return asdict(self)\n\n @classmethod\n def from_dict(cls, dict_: dict[str, str | bool]) -> "TodoItem":\n class_fields = {f.name for f in fields(cls)}\n if "_id" in dict_:\n dict_["id"] = dict_.pop("_id")\n data = {k: v for k, v in dict_.items() if k in class_fields}\n return TodoItem(**data) # type:ignore\n'),(0,d.kt)("admonition",{type:"info"},(0,d.kt)("p",{parentName:"admonition"},"Entities must not depend on anything, except possibly other entities."),(0,d.kt)("p",{parentName:"admonition"},"Entities should be the most stable code within your application."),(0,d.kt)("p",{parentName:"admonition"},"Entities should not be affected by any change external to them.")),(0,d.kt)("h2",{id:"testing-entities"},"Testing entities"),(0,d.kt)(o.Z,{language:"jsx",mdxType:"CodeBlock"},'import uuid\n\nfrom features.todo.entities.todo_item import TodoItem\n\n\ndef test_todo_item_init():\n id = str(uuid.uuid4())\n todo = TodoItem(id=id, title="title 1", is_completed=False, user_id="xyz")\n assert todo.id == id\n assert todo.title == "title 1"\n assert not todo.is_completed\n\n\ndef test_todo_item_from_dict():\n id = str(uuid.uuid4())\n init_dict = {"id": id, "title": "title 1", "is_completed": False, "user_id": "xyz"}\n todo = TodoItem.from_dict(init_dict)\n\n assert todo.id == id\n assert todo.title == "title 1"\n assert not todo.is_completed\n\n\ndef test_todo_item_comparison():\n id = str(uuid.uuid4())\n init_dict = {"id": id, "title": "title 1", "is_completed": False, "user_id": "xyz"}\n todo1 = TodoItem.from_dict(init_dict)\n todo2 = TodoItem.from_dict(init_dict)\n\n assert todo1 == todo2\n'))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/75878fc8.2cbd87ce.js b/assets/js/75878fc8.2cbd87ce.js new file mode 100644 index 00000000..735e99b5 --- /dev/null +++ b/assets/js/75878fc8.2cbd87ce.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[990],{9095:(e,t,a)=>{a.r(t),a.d(t,{contentTitle:()=>m,default:()=>o,frontMatter:()=>c,metadata:()=>l,toc:()=>p});var i=a(7462),r=(a(7294),a(3905));const c={},m=void 0,l={type:"mdx",permalink:"/template-fastapi-react/changelog",source:"@site/src/pages/changelog.md",description:"Warning: This is the development version.",frontMatter:{}},p=[{value:"1.5.0 (2024-09-04)",id:"150-2024-09-04",level:2},{value:"Features",id:"features",level:3},{value:"Bug Fixes",id:"bug-fixes",level:3},{value:"1.4.0 (2023-03-01)",id:"140-2023-03-01",level:2},{value:"Features",id:"features-1",level:3},{value:"Bug Fixes",id:"bug-fixes-1",level:3},{value:"Tests",id:"tests",level:3},{value:"Build System",id:"build-system",level:3},{value:"Miscellaneous Chores",id:"miscellaneous-chores",level:3},{value:"Code Refactoring",id:"code-refactoring",level:3},{value:"Continuous Integration",id:"continuous-integration",level:3},{value:"Documentation",id:"documentation",level:3},{value:"1.3.0 (2022-11-11)",id:"130-2022-11-11",level:2},{value:"Features",id:"features-2",level:3},{value:"Bug Fixes",id:"bug-fixes-2",level:3},{value:"1.2.1 (2022-11-09)",id:"121-2022-11-09",level:2},{value:"Bug Fixes",id:"bug-fixes-3",level:3},{value:"1.2.0 (2022-11-09)",id:"120-2022-11-09",level:2},{value:"Features",id:"features-3",level:3},{value:"Bug Fixes",id:"bug-fixes-4",level:3},{value:"1.1.1 (2022-11-04)",id:"111-2022-11-04",level:2},{value:"Bug Fixes",id:"bug-fixes-5",level:3},{value:"1.1.0 (2022-11-04)",id:"110-2022-11-04",level:2},{value:"Features",id:"features-4",level:3},{value:"Bug Fixes",id:"bug-fixes-6",level:3},{value:"1.0.0 (2022-09-07)",id:"100-2022-09-07",level:2},{value:"Features",id:"features-5",level:3},{value:"Bug Fixes",id:"bug-fixes-7",level:3}],n={toc:p};function o(e){let{components:t,...a}=e;return(0,r.kt)("wrapper",(0,i.Z)({},n,a,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("p",null,"Warning: This is the development version."),(0,r.kt)("h1",{id:"changelog"},"Changelog"),(0,r.kt)("p",null,"All notable changes to this project will be documented in this file. See ",(0,r.kt)("a",{parentName:"p",href:"https://github.com/conventional-changelog/standard-version"},"standard-version")," for commit guidelines."),(0,r.kt)("h2",{id:"150-2024-09-04"},(0,r.kt)("a",{parentName:"h2",href:"https://github.com/equinor/boilerplate-clean-architecture/compare/v1.4.0...v1.5.0"},"1.5.0")," (2024-09-04)"),(0,r.kt)("h3",{id:"features"},"Features"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"add Popover component (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/c8964bd89fee3f240357d63453051b132e1ecdfa"},"c8964bd"),")"),(0,r.kt)("li",{parentName:"ul"},"add react context to handle todo state (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/510e4704f67c9094176514c2a3ed6efc39997037"},"510e470"),")"),(0,r.kt)("li",{parentName:"ul"},"add reusable IconButton component (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/f933e30f34a1bdb0e3d56d73b470f6816b532973"},"f933e30"),")"),(0,r.kt)("li",{parentName:"ul"},"replace exception handling (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/35ae0ef0bbbaf06ca9a4bf68618ca29718b5d00a"},"35ae0ef"),")"),(0,r.kt)("li",{parentName:"ul"},"replace prettier and eslint with biome (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/afe2cb978ef4260d88835fc5f62db69164aa2fb2"},"afe2cb9"),")")),(0,r.kt)("h3",{id:"bug-fixes"},"Bug Fixes"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"docs reference out of date (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/bd4cc8d3d2a3b580c0df8bffa7378fc0a2c6413c"},"bd4cc8d"),")"),(0,r.kt)("li",{parentName:"ul"},"extras typing is not always dict","[str,str]"," (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/7ba069436255dc88372fd9b73db854477e7bf6f8"},"7ba0694"),")"),(0,r.kt)("li",{parentName:"ul"},"make authentication work again (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/3e8da0fd68a6619ca32466e934bb915652cce85f"},"3e8da0f"),")"),(0,r.kt)("li",{parentName:"ul"},"mypy error (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/66303aa35f571e8588c3342bdb25cb56566085a2"},"66303aa"),")"),(0,r.kt)("li",{parentName:"ul"},"ran api again (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/afa8158c9815352de7195d6d988302a6d7d87ffb"},"afa8158"),")"),(0,r.kt)("li",{parentName:"ul"},"ran generator (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/19ff51bf4bc99751af93a13a36ea8f3990e6c64c"},"19ff51b"),")"),(0,r.kt)("li",{parentName:"ul"},"replace gunicorn with horizontal scaling (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/a8baa0f9ac2f246b17f55aada11845ddcaee15cc"},"a8baa0f"),")"),(0,r.kt)("li",{parentName:"ul"},"The template no longer use the node image in production (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/f9b68d9ec28482a71dd721e0ff1a42c3b6565ed5"},"f9b68d9"),")"),(0,r.kt)("li",{parentName:"ul"},"update old references (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/5152a1ff419336428b69c7dc7212b1d422fb93bf"},"5152a1f"),")"),(0,r.kt)("li",{parentName:"ul"},"update to match new parameters for get pydantic json schema (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/boilerplate-clean-architecture/commit/c6b14a8da9639cd2b5fe04b25b52310aa1017664"},"c6b14a8"),")")),(0,r.kt)("h2",{id:"140-2023-03-01"},(0,r.kt)("a",{parentName:"h2",href:"https://github.com/equinor/template-fastapi-react/compare/v1.3.0...v1.4.0"},"1.4.0")," (2023-03-01)"),(0,r.kt)("h3",{id:"features-1"},"Features"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Add info popover with version (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/28aa51377592b7c5bb9b59d245ab275b47a52653"},"28aa513"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/154"},"#154"))),(0,r.kt)("h3",{id:"bug-fixes-1"},"Bug Fixes"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"add error handling of version file fetch (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a4f68897e446ebb4ebd91f58110bfa403df53fc9"},"a4f6889"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"api:")," handle lists in create_response (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/333f7d4afbac95609ae15b05b3a8f1d978ee1107"},"333f7d4"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"api:")," make health-check return PlainTextResponse (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/12d51697ee78edbbe519c874b4fddfb8f0786718"},"12d5169"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"api:")," remove empty default pydantic field in models (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/0424282f7dee8662c6d0b8faa01f78bdaced3a3f"},"0424282"),")"),(0,r.kt)("li",{parentName:"ul"},"remove /api as root path. (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/208ceb98dcf269e18b43d6ffda04dd265bfe868c"},"208ceb9"),")"),(0,r.kt)("li",{parentName:"ul"},"replace deprecated output definition (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/c53b003498afb8f2568815a4c3da56f8d15542af"},"c53b003"),")")),(0,r.kt)("h3",{id:"tests"},"Tests"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Upgrade pre-commits (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/bd8f1106cde2ec215ea9a519a4afd5daa460fb96"},"bd8f110"),")")),(0,r.kt)("h3",{id:"build-system"},"Build System"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"add typescript plugin (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/83ade0cdb86d15bbe072e036fbe0ac1b106f8015"},"83ade0c"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"ci/cd:")," update flake8 repo location (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/e6953ad3ca280975c9589939a1e728a73fbfd418"},"e6953ad"),")"),(0,r.kt)("li",{parentName:"ul"},"enable scripts to build necessary packages (YN0007) (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/f1cf2c3f7d6fc7190535c8abf97c55bfa6839e56"},"f1cf2c3"),")"),(0,r.kt)("li",{parentName:"ul"},"missing peer dependencies (YN0002) (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/9e8981d581c2509039beda4a7a34980c574bf179"},"9e8981d"),")"),(0,r.kt)("li",{parentName:"ul"},"set yarn version (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/afb5834883d6d1f01026d602fb434db38443c8b0"},"afb5834"),")")),(0,r.kt)("h3",{id:"miscellaneous-chores"},"Miscellaneous Chores"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Add yarn upgrade-interactive (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/91d998f317d8b697a75a920108a94e5479b13f78"},"91d998f"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"api:")," return Pydantic model instead of dict (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/427a9633d31cc3298d463fc4f1a225bd36f76867"},"427a963"),")"),(0,r.kt)("li",{parentName:"ul"},"ignore diffs on yarn plugins (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/78017e5216f863b19842e09574bf035db78f88de"},"78017e5"),")"),(0,r.kt)("li",{parentName:"ul"},"remove empty catch (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/0264cb5960dfee0cfb36dcf1e9ebbd099ddac51e"},"0264cb5"),")"),(0,r.kt)("li",{parentName:"ul"},"remove redundant conditional (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/925d5b4a5391b39acfc6e639ee9a47a676697ebb"},"925d5b4"),")"),(0,r.kt)("li",{parentName:"ul"},"type CommitInfo (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/2179e13f256cba46959c101f76593f262daee5d4"},"2179e13"),")"),(0,r.kt)("li",{parentName:"ul"},"Update all web packages (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a193af56c4e0ed68be9b7ad05d7a5747130c0321"},"a193af5"),")"),(0,r.kt)("li",{parentName:"ul"},"update dependencies (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/fb2cf508f3f30f12bf39f23a9a630d92e12f47b0"},"fb2cf50"),")"),(0,r.kt)("li",{parentName:"ul"},"update sdks (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/385a55eefab23b695e2a4f1f12b1ca97e93a9820"},"385a55e"),")"),(0,r.kt)("li",{parentName:"ul"},"upgrade versions (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/bc9f6a3dadb920167419e8b66bd79a396c09cad9"},"bc9f6a3"),")"),(0,r.kt)("li",{parentName:"ul"},"upgrade versions (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/041f78e9c0cdb1be8fd83099d33b7c1e36e3633a"},"041f78e"),")")),(0,r.kt)("h3",{id:"code-refactoring"},"Code Refactoring"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"api:")," replace response_class with return type annotations (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/b1fa3bd6b342ba89e5d2237721573a83cfd503fe"},"b1fa3bd"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"ci:")," extract ghcr login into separate step (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/0d90fe00438ad9c995198cba8e268c8268af1e4a"},"0d90fe0"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"ci:")," remove crazy-max external action (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/b41990d92c19d2a661900a208a60d604a5ab470c"},"b41990d"),")"),(0,r.kt)("li",{parentName:"ul"},"create empty yarn.lock (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/39050e72af50debd95380590fe4ee803a5995589"},"39050e7"),")"),(0,r.kt)("li",{parentName:"ul"},"separate responsibilities by moving useEffect to a custom hook (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/cc33a5d1f856aff8e529c4c3df43d326fb5a8a90"},"cc33a5d"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"workflow:")," Fix linting errors (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/8ea9f69fbb5919568ba99fed659be77e18647d48"},"8ea9f69"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"workflow:")," rename and restructure workflows (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/f08fffaf7ffaf46503debfc4e4bd60320592a84e"},"f08fffa"),")")),(0,r.kt)("h3",{id:"continuous-integration"},"Continuous Integration"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Add rollback workflow (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/b1cca70e53c7080427979b3efe0ee30ccffafdd0"},"b1cca70"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/153"},"#153")),(0,r.kt)("li",{parentName:"ul"},"allow publishing multiple tags at once (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/4c5d8677395054254551757f871570dad1695933"},"4c5d867"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/153"},"#153")),(0,r.kt)("li",{parentName:"ul"},"bump pre-commit hooks (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/9a0cea7d6a03aaa99101135f626b948c87dd6882"},"9a0cea7"),")"),(0,r.kt)("li",{parentName:"ul"},"change oauth redurect url to radix playground (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/655c55f5027baea255d29ea881df0030695da5aa"},"655c55f"),")"),(0,r.kt)("li",{parentName:"ul"},"Change version logging format on build (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/49ca8939a6dd8fd753ba171653a5977a869a0249"},"49ca893"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/154"},"#154")),(0,r.kt)("li",{parentName:"ul"},"correct permissions (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/6d9d563a3cf3db335c1d34b3630ac64212881186"},"6d9d563"),")"),(0,r.kt)("li",{parentName:"ul"},"Fix bug in publish docs (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a696a33a9e451f3d261e2b07538aebac418ac3d3"},"a696a33"),")"),(0,r.kt)("li",{parentName:"ul"},"Include all commit types in changelog (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/73cfaaadf916c7e15accb347183f89e50651f279"},"73cfaaa"),")"),(0,r.kt)("li",{parentName:"ul"},"login as the service principal to request an access token (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/fabe3b469ce49f9c64ff3e0781d6564c78f709f5"},"fabe3b4"),")"),(0,r.kt)("li",{parentName:"ul"},"pass tag name to publish-image workflow (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/dcedc16f6ab2d16d74f4c41ffaf4100f638b88dc"},"dcedc16"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/153"},"#153")),(0,r.kt)("li",{parentName:"ul"},"remove secret as input to reusable workflow (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/1ec6cbb2e5360de99d99416739093a02a38c5ba7"},"1ec6cbb"),")"),(0,r.kt)("li",{parentName:"ul"},"specify playground context (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/142bc139c4cd4b7e145a00dde2161a502afa9363"},"142bc13"),")")),(0,r.kt)("h3",{id:"documentation"},"Documentation"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"add what is fastapi (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/bbec23b85d2b0c1fadfd4e4ea6e3df7e63683e78"},"bbec23b"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"ci:")," add comment to azure login (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/f6b9c962d23a7eb2832e14b1d37d9e8b14419f5d"},"f6b9c96"),")"),(0,r.kt)("li",{parentName:"ul"},"rewrite 01-setup Yarn PnP in VSCode (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/df4c7d0dadbbccaafa6fa5c13d0bd3b16faf5243"},"df4c7d0"),")"),(0,r.kt)("li",{parentName:"ul"},"update link to radix playground (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/6c932c3c48739bce3cc21e24a416405a64e5cc31"},"6c932c3"),")")),(0,r.kt)("h2",{id:"130-2022-11-11"},(0,r.kt)("a",{parentName:"h2",href:"https://github.com/equinor/template-fastapi-react/compare/v1.2.1...v1.3.0"},"1.3.0")," (2022-11-11)"),(0,r.kt)("h3",{id:"features-2"},"Features"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"allow each user to have their own todos (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/9456ab84f5f5e0b804bd0011037ee72d7da49fbb"},"9456ab8"),")")),(0,r.kt)("h3",{id:"bug-fixes-2"},"Bug Fixes"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"add missing dependency without causing infinite loop of rerendering (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/8f5c01d5141c4dbd4ac9b99ebc39ae10f378147f"},"8f5c01d"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"api:")," raise MissingPrivilegeException when relevant (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/0c55af393a4ffc189a068c821545261eb10ef7d4"},"0c55af3"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"api:")," raise MissingPrivilegeException when relevant (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/613cc4257699ddb1c2a772b54f28ccec84f2778b"},"613cc42"),")"),(0,r.kt)("li",{parentName:"ul"},"make todo title required, not optional (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/bc8dab62079ded3e87c1113e81f1cd9911ad1a65"},"bc8dab6"),")"),(0,r.kt)("li",{parentName:"ul"},"only allow users to delete their own todos (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/1cf1e7a8eefac27552dcdc9df0a30cf59c042eab"},"1cf1e7a"),")"),(0,r.kt)("li",{parentName:"ul"},"test suite (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/31da3f7e720d0838e59e280aa4d873b44e24cecb"},"31da3f7"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"tests:")," fix up integration tests with per-user todos (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/b7cc0caa51535020bb329c7c21cde4b458baa81c"},"b7cc0ca"),")")),(0,r.kt)("h2",{id:"121-2022-11-09"},(0,r.kt)("a",{parentName:"h2",href:"https://github.com/equinor/template-fastapi-react/compare/v1.2.0...v1.2.1"},"1.2.1")," (2022-11-09)"),(0,r.kt)("h3",{id:"bug-fixes-3"},"Bug Fixes"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"web:")," adding todo item now clears input. (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/82e6f6baee06ccbd50c4d59fe7a9a97a4b1df094"},"82e6f6b"),")")),(0,r.kt)("h2",{id:"120-2022-11-09"},(0,r.kt)("a",{parentName:"h2",href:"https://github.com/equinor/template-fastapi-react/compare/v1.1.1...v1.2.0"},"1.2.0")," (2022-11-09)"),(0,r.kt)("h3",{id:"features-3"},"Features"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"expand and visualize auth states (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/51c9870bc657d586464780c664aeb6edb49b5ba2"},"51c9870"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"web:")," clear input on add-todo (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/d61adc16ea35a25b2d556b61b9d1cf710de41e8e"},"d61adc1"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"web:")," visualize loading state better (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/6a6ab81bec55bf79aeda5a07e8eff5cdd84b4ab5"},"6a6ab81"),")")),(0,r.kt)("h3",{id:"bug-fixes-4"},"Bug Fixes"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"make useTodos simpler to use (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/e8f0a1866c594ca0a526bac3ae3e5a1f8551a005"},"e8f0a18"),")")),(0,r.kt)("h2",{id:"111-2022-11-04"},(0,r.kt)("a",{parentName:"h2",href:"https://github.com/equinor/template-fastapi-react/compare/v1.1.0...v1.1.1"},"1.1.1")," (2022-11-04)"),(0,r.kt)("h3",{id:"bug-fixes-5"},"Bug Fixes"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"resolve PR feedback (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/bd3debe820f27ebf7d892ecbda77720fc66be06b"},"bd3debe"),")")),(0,r.kt)("h2",{id:"110-2022-11-04"},(0,r.kt)("a",{parentName:"h2",href:"https://github.com/equinor/template-fastapi-react/compare/v1.0.0...v1.1.0"},"1.1.0")," (2022-11-04)"),(0,r.kt)("h3",{id:"features-4"},"Features"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"standardized ErrorResponse model (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/c09e4dccf5abd62fa05e9b1c0a577ea72d0129c4"},"c09e4dc"),")")),(0,r.kt)("h3",{id:"bug-fixes-6"},"Bug Fixes"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"add types to fixtures (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/0528e5beb9bec905cedee1db2af3b2a5248fe85d"},"0528e5b"),")"),(0,r.kt)("li",{parentName:"ul"},"delete non existing item should return 404 (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/43414160eef1bee7ff2ea44c7c9f99e041ccc977"},"4341416"),")")),(0,r.kt)("h2",{id:"100-2022-09-07"},"1.0.0 (2022-09-07)"),(0,r.kt)("h3",{id:"features-5"},"Features"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"add auth (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a201f138ee5a02218b5e4b2b08b0f00f88bb5dd3"},"a201f13"),")"),(0,r.kt)("li",{parentName:"ul"},"add axios (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/88448c2d52007d68651a26d46c6672369172698a"},"88448c2"),")"),(0,r.kt)("li",{parentName:"ul"},"add equinor design system (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/b96d4dae0ec65f4938d862bc8bbf079cb5950ae4"},"b96d4da"),")"),(0,r.kt)("li",{parentName:"ul"},"add equinor typeface (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/53a742398782a9452bc61127d62f408a840dfb5a"},"53a7423"),")"),(0,r.kt)("li",{parentName:"ul"},"add eslint to pre-commit (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/20c872da056b89e038bd87c79e2fcd40bab85cf9"},"20c872d"),")"),(0,r.kt)("li",{parentName:"ul"},"Add extra checks to pre-commit and run safety in venv (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/27a6cbe7bea4843a70947fdcf5ba73f1dd5af871"},"27a6cbe"),")"),(0,r.kt)("li",{parentName:"ul"},"add flake8, safety and pytests to pre-commit (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/1917997411b7a1f1844c3463388005576d8acc77"},"1917997"),")"),(0,r.kt)("li",{parentName:"ul"},"add mypy type checking to pre-commit (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/437cedd17cb86165448526fd8011730f4dbe03b6"},"437cedd"),")"),(0,r.kt)("li",{parentName:"ul"},"add prettier (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/b1ce63a700471c54b75e5f58c35d0d3ccabdf0d5"},"b1ce63a"),")"),(0,r.kt)("li",{parentName:"ul"},"autogenerate release changelog (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/e463ae2e2694358936802e9fbf6dc3a7cfca846d"},"e463ae2"),")"),(0,r.kt)("li",{parentName:"ul"},"build and push images in ci (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/477ad8564bc92105b990715cc0bebeb5c7aff4d8"},"477ad85"),")"),(0,r.kt)("li",{parentName:"ul"},"create-react-app with typescript and equinor icons (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/2cfa523e2e1df8ebe0fa3b003fc6936d1bebaa13"},"2cfa523"),")"),(0,r.kt)("li",{parentName:"ul"},"init todo example (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/8beaf084352f16c8715ebe6f77b40d30450d2e04"},"8beaf08"),")"),(0,r.kt)("li",{parentName:"ul"},"official nginx image running unprivileged (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/fab0c1445920ae5c0cb0eb05308b6a223aed3de8"},"fab0c14"),")"),(0,r.kt)("li",{parentName:"ul"},"pre-commit in CI from pre-commit-config.yaml (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/5d806b5bd1ceda039670dd3b30ef19de49519a16"},"5d806b5"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"pre-commit:")," Add autoflake to pre-commits (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/8d97b34f7eeb90b00c0c5d2410b820af259ce7b1"},"8d97b34"),"), closes ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/31"},"#31")),(0,r.kt)("li",{parentName:"ul"},"response decorator takes Response type as parameter (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/9a7f2287f9bac7e0f68f916c37b4273dc8b95d9b"},"9a7f228"),")"),(0,r.kt)("li",{parentName:"ul"},"reusable gh actions workflows (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/d557ebc8438a4b28d83d2f40d8a7aa2991db1197"},"d557ebc"),")"),(0,r.kt)("li",{parentName:"ul"},"show changelog in documentation (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/6da9b86770ffca6431f16b945680a87637268497"},"6da9b86"),")"),(0,r.kt)("li",{parentName:"ul"},"tutorial on authentication (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/fd789c0d7bd3dda1e1ce0ee78ee9c73c4670fe41"},"fd789c0"),")")),(0,r.kt)("h3",{id:"bug-fixes-7"},"Bug Fixes"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"add missing decorators (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/54fd2f8a3826d2a5bc5bbc7419cbdd83de4811f1"},"54fd2f8"),")"),(0,r.kt)("li",{parentName:"ul"},"add required additional dependencies to eslint pre-commit env (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/cca8509bf7a4edc5c38ad5fe3a7b0812fdb95040"},"cca8509"),")"),(0,r.kt)("li",{parentName:"ul"},"add venv (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/d682b0817d735547f3a3cd7391d942983cbf666c"},"d682b08"),")"),(0,r.kt)("li",{parentName:"ul"},"cast variable that cannot be undefined to boolean (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/372f781d805d25f2e7aaa284d3b70622989e9136"},"372f781"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"dev:")," env_file in docker-compose.override.yml (PR ",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/39"},"#39"),") (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/2aa80bdfc211f44d624f1cdad4f8b0844164c4bf"},"2aa80bd"),")"),(0,r.kt)("li",{parentName:"ul"},"disable pull (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/de2d04530a511a798fb757e85cb07872f0dfb129"},"de2d045"),")"),(0,r.kt)("li",{parentName:"ul"},"duplicated pre-commit hook (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a21f5a69ba1ea3a10371f48071ef2de8b3d56448"},"a21f5a6"),")"),(0,r.kt)("li",{parentName:"ul"},"fix mypy errors (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/d9543c187859de7fad59f91b79eaa4f63a56a1c6"},"d9543c1"),")"),(0,r.kt)("li",{parentName:"ul"},"fix pytest_plugin import error (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/b5218196028c904e6a51d9a0971d7637264c87a2"},"b521819"),")"),(0,r.kt)("li",{parentName:"ul"},"lock cryptography dependency since a bad new release. Set authentication scheme to allow for no tokens. Exclude some file from pre-commit (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/ea6a9314482ca75d8d79c999959460b17ceec754"},"ea6a931"),")"),(0,r.kt)("li",{parentName:"ul"},"move Response decorator to controllers (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/bd36b4a316f6a2c1216584235eb5dd462f6d0707"},"bd36b4a"),")"),(0,r.kt)("li",{parentName:"ul"},"only run safety hook once (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/bc33372bd57d7b8710cd7460f1c18c6b55c38634"},"bc33372"),")"),(0,r.kt)("li",{parentName:"ul"},"poetry command (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/ccbb2e10845f9cf3215e5e95fd07f21c3b108249"},"ccbb2e1"),")"),(0,r.kt)("li",{parentName:"ul"},"pre-commit (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/5192d0e79e433cf925d0569a237a101f77b68c5b"},"5192d0e"),")"),(0,r.kt)("li",{parentName:"ul"},"python-version (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a9341092771e81aced0ed4481eb582785dd08113"},"a934109"),")"),(0,r.kt)("li",{parentName:"ul"},"remove encryption.py (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a500444b936bcc99bdcd73ebdc6eb9eeb5de2ac3"},"a500444"),")"),(0,r.kt)("li",{parentName:"ul"},"set correct base path for docs (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/0dda0b23b94155f1eb6cd194d31af1f9265ecd2b"},"0dda0b2"),")"),(0,r.kt)("li",{parentName:"ul"},"set correct type on todo local state (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/2a4020ce9f84affb1725f4e4b476dc1c20b67b0e"},"2a4020c"),")"),(0,r.kt)("li",{parentName:"ul"},"turn off eslint rules that are unnecessary or might conflict with prettier (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/d6beaf7426821d5bb5efd68fe6407d13ee1d38d5"},"d6beaf7"),")"),(0,r.kt)("li",{parentName:"ul"},"typo (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/fb557b8adb56fc0d5aa430a1d505d1066be1ed13"},"fb557b8"),")"),(0,r.kt)("li",{parentName:"ul"},"use const on variable that is never reassigned (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/9f7c54304385c49123a3d436b5cce66997ab1e62"},"9f7c543"),")"),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("strong",{parentName:"li"},"web:")," correct base path (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/a3872d5c67f1764c28d7450e9bf4c350cc0e87b6"},"a3872d5"),")"),(0,r.kt)("li",{parentName:"ul"},"yarn build again (",(0,r.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/commit/dfc48fda537d152974a9610e3263245c69346768"},"dfc48fd"),")")))}o.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/792d5b58.f356f65f.js b/assets/js/792d5b58.f356f65f.js new file mode 100644 index 00000000..81dae3c4 --- /dev/null +++ b/assets/js/792d5b58.f356f65f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[910],{2719:e=>{e.exports=JSON.parse('{"title":"Development guide","description":"This section of the documentation lists instructions and guidelines on how to start developing","slug":"/category/development-guide","permalink":"/template-fastapi-react/docs/category/development-guide","navigation":{"previous":{"title":"Ground rules","permalink":"/template-fastapi-react/docs/contribute/ground-rules"},"next":{"title":"Setup","permalink":"/template-fastapi-react/docs/contribute/development-guide/setup"}}}')}}]); \ No newline at end of file diff --git a/assets/js/814.e703c48f.js b/assets/js/814.e703c48f.js new file mode 100644 index 00000000..1e57df89 --- /dev/null +++ b/assets/js/814.e703c48f.js @@ -0,0 +1 @@ +(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[814],{814:(e,t,n)=>{"use strict";n.d(t,{Z:()=>q});var o=n(7462),s=n(7294),a=n(2389),r=n(6010),c=n(2949),l=n(6668);function i(){const{prism:e}=(0,l.L)(),{colorMode:t}=(0,c.I)(),n=e.theme,o=e.darkTheme||n;return"dark"===t?o:n}var u=n(5281),p=n(7594),d=n.n(p);const m=/title=(?["'])(?.*?)\1/,g=/\{(?<range>[\d,-]+)\}/,h={js:{start:"\\/\\/",end:""},jsBlock:{start:"\\/\\*",end:"\\*\\/"},jsx:{start:"\\{\\s*\\/\\*",end:"\\*\\/\\s*\\}"},bash:{start:"#",end:""},html:{start:"\x3c!--",end:"--\x3e"}};function y(e,t){const n=e.map((e=>{const{start:n,end:o}=h[e];return`(?:${n}\\s*(${t.flatMap((e=>{var t,n;return[e.line,null==(t=e.block)?void 0:t.start,null==(n=e.block)?void 0:n.end].filter(Boolean)})).join("|")})\\s*${o})`})).join("|");return new RegExp(`^\\s*(?:${n})\\s*$`)}function f(e,t){let n=e.replace(/\n$/,"");const{language:o,magicComments:s,metastring:a}=t;if(a&&g.test(a)){const e=a.match(g).groups.range;if(0===s.length)throw new Error(`A highlight range has been given in code block's metastring (\`\`\` ${a}), but no magic comment config is available. Docusaurus applies the first magic comment entry's className for metastring ranges.`);const t=s[0].className,o=d()(e).filter((e=>e>0)).map((e=>[e-1,[t]]));return{lineClassNames:Object.fromEntries(o),code:n}}if(void 0===o)return{lineClassNames:{},code:n};const r=function(e,t){switch(e){case"js":case"javascript":case"ts":case"typescript":return y(["js","jsBlock"],t);case"jsx":case"tsx":return y(["js","jsBlock","jsx"],t);case"html":return y(["js","jsBlock","html"],t);case"python":case"py":case"bash":return y(["bash"],t);case"markdown":case"md":return y(["html","jsx","bash"],t);default:return y(Object.keys(h),t)}}(o,s),c=n.split("\n"),l=Object.fromEntries(s.map((e=>[e.className,{start:0,range:""}]))),i=Object.fromEntries(s.filter((e=>e.line)).map((e=>{let{className:t,line:n}=e;return[n,t]}))),u=Object.fromEntries(s.filter((e=>e.block)).map((e=>{let{className:t,block:n}=e;return[n.start,t]}))),p=Object.fromEntries(s.filter((e=>e.block)).map((e=>{let{className:t,block:n}=e;return[n.end,t]})));for(let d=0;d<c.length;){const e=c[d].match(r);if(!e){d+=1;continue}const t=e.slice(1).find((e=>void 0!==e));i[t]?l[i[t]].range+=`${d},`:u[t]?l[u[t]].start=d:p[t]&&(l[p[t]].range+=`${l[p[t]].start}-${d-1},`),c.splice(d,1)}n=c.join("\n");const m={};return Object.entries(l).forEach((e=>{let[t,{range:n}]=e;d()(n).forEach((e=>{m[e]??=[],m[e].push(t)}))})),{lineClassNames:m,code:n}}const b="codeBlockContainer_Ckt0";function k(e){let{as:t,...n}=e;const a=function(e){const t={color:"--prism-color",backgroundColor:"--prism-background-color"},n={};return Object.entries(e.plain).forEach((e=>{let[o,s]=e;const a=t[o];a&&"string"==typeof s&&(n[a]=s)})),n}(i());return s.createElement(t,(0,o.Z)({},n,{style:a,className:(0,r.Z)(n.className,b,u.k.common.codeBlock)}))}const v={codeBlockContent:"codeBlockContent_biex",codeBlockTitle:"codeBlockTitle_Ktv7",codeBlock:"codeBlock_bY9V",codeBlockStandalone:"codeBlockStandalone_MEMb",codeBlockLines:"codeBlockLines_e6Vv",codeBlockLinesWithNumbering:"codeBlockLinesWithNumbering_o6Pm",buttonGroup:"buttonGroup__atx"};function E(e){let{children:t,className:n}=e;return s.createElement(k,{as:"pre",tabIndex:0,className:(0,r.Z)(v.codeBlockStandalone,"thin-scrollbar",n)},s.createElement("code",{className:v.codeBlockLines},t))}var N=n(902);const B={attributes:!0,characterData:!0,childList:!0,subtree:!0};function C(e,t){const[n,o]=(0,s.useState)(),a=(0,s.useCallback)((()=>{var t;o(null==(t=e.current)?void 0:t.closest("[role=tabpanel][hidden]"))}),[e,o]);(0,s.useEffect)((()=>{a()}),[a]),function(e,t,n){void 0===n&&(n=B);const o=(0,N.zX)(t),a=(0,N.Ql)(n);(0,s.useEffect)((()=>{const t=new MutationObserver(o);return e&&t.observe(e,a),()=>t.disconnect()}),[e,o,a])}(n,(e=>{e.forEach((e=>{"attributes"===e.type&&"hidden"===e.attributeName&&(t(),a())}))}),{attributes:!0,characterData:!1,childList:!1,subtree:!1})}const w={plain:{backgroundColor:"#2a2734",color:"#9a86fd"},styles:[{types:["comment","prolog","doctype","cdata","punctuation"],style:{color:"#6c6783"}},{types:["namespace"],style:{opacity:.7}},{types:["tag","operator","number"],style:{color:"#e09142"}},{types:["property","function"],style:{color:"#9a86fd"}},{types:["tag-id","selector","atrule-id"],style:{color:"#eeebff"}},{types:["attr-name"],style:{color:"#c4b9fe"}},{types:["boolean","string","entity","url","attr-value","keyword","control","directive","unit","statement","regex","atrule","placeholder","variable"],style:{color:"#ffcc99"}},{types:["deleted"],style:{textDecorationLine:"line-through"}},{types:["inserted"],style:{textDecorationLine:"underline"}},{types:["italic"],style:{fontStyle:"italic"}},{types:["important","bold"],style:{fontWeight:"bold"}},{types:["important"],style:{color:"#c4b9fe"}}]};var L={Prism:n(7410).Z,theme:w};function j(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function T(){return T=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},T.apply(this,arguments)}var S=/\r\n|\r|\n/,x=function(e){0===e.length?e.push({types:["plain"],content:"\n",empty:!0}):1===e.length&&""===e[0].content&&(e[0].content="\n",e[0].empty=!0)},_=function(e,t){var n=e.length;return n>0&&e[n-1]===t?e:e.concat(t)},I=function(e,t){var n=e.plain,o=Object.create(null),s=e.styles.reduce((function(e,n){var o=n.languages,s=n.style;return o&&!o.includes(t)||n.types.forEach((function(t){var n=T({},e[t],s);e[t]=n})),e}),o);return s.root=n,s.plain=T({},n,{backgroundColor:null}),s};function O(e,t){var n={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&-1===t.indexOf(o)&&(n[o]=e[o]);return n}const P=function(e){function t(){for(var t=this,n=[],o=arguments.length;o--;)n[o]=arguments[o];e.apply(this,n),j(this,"getThemeDict",(function(e){if(void 0!==t.themeDict&&e.theme===t.prevTheme&&e.language===t.prevLanguage)return t.themeDict;t.prevTheme=e.theme,t.prevLanguage=e.language;var n=e.theme?I(e.theme,e.language):void 0;return t.themeDict=n})),j(this,"getLineProps",(function(e){var n=e.key,o=e.className,s=e.style,a=T({},O(e,["key","className","style","line"]),{className:"token-line",style:void 0,key:void 0}),r=t.getThemeDict(t.props);return void 0!==r&&(a.style=r.plain),void 0!==s&&(a.style=void 0!==a.style?T({},a.style,s):s),void 0!==n&&(a.key=n),o&&(a.className+=" "+o),a})),j(this,"getStyleForToken",(function(e){var n=e.types,o=e.empty,s=n.length,a=t.getThemeDict(t.props);if(void 0!==a){if(1===s&&"plain"===n[0])return o?{display:"inline-block"}:void 0;if(1===s&&!o)return a[n[0]];var r=o?{display:"inline-block"}:{},c=n.map((function(e){return a[e]}));return Object.assign.apply(Object,[r].concat(c))}})),j(this,"getTokenProps",(function(e){var n=e.key,o=e.className,s=e.style,a=e.token,r=T({},O(e,["key","className","style","token"]),{className:"token "+a.types.join(" "),children:a.content,style:t.getStyleForToken(a),key:void 0});return void 0!==s&&(r.style=void 0!==r.style?T({},r.style,s):s),void 0!==n&&(r.key=n),o&&(r.className+=" "+o),r})),j(this,"tokenize",(function(e,t,n,o){var s={code:t,grammar:n,language:o,tokens:[]};e.hooks.run("before-tokenize",s);var a=s.tokens=e.tokenize(s.code,s.grammar,s.language);return e.hooks.run("after-tokenize",s),a}))}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.render=function(){var e=this.props,t=e.Prism,n=e.language,o=e.code,s=e.children,a=this.getThemeDict(this.props),r=t.languages[n];return s({tokens:function(e){for(var t=[[]],n=[e],o=[0],s=[e.length],a=0,r=0,c=[],l=[c];r>-1;){for(;(a=o[r]++)<s[r];){var i=void 0,u=t[r],p=n[r][a];if("string"==typeof p?(u=r>0?u:["plain"],i=p):(u=_(u,p.type),p.alias&&(u=_(u,p.alias)),i=p.content),"string"==typeof i){var d=i.split(S),m=d.length;c.push({types:u,content:d[0]});for(var g=1;g<m;g++)x(c),l.push(c=[]),c.push({types:u,content:d[g]})}else r++,t.push(u),n.push(i),o.push(0),s.push(i.length)}r--,t.pop(),n.pop(),o.pop(),s.pop()}return x(c),l}(void 0!==r?this.tokenize(t,o,r,n):[o]),className:"prism-code language-"+n,style:void 0!==a?a.root:{},getLineProps:this.getLineProps,getTokenProps:this.getTokenProps})},t}(s.Component),A="codeLine_lJS_",Z="codeLineNumber_Tfdd",$="codeLineContent_feaV";function z(e){let{line:t,classNames:n,showLineNumbers:a,getLineProps:c,getTokenProps:l}=e;1===t.length&&"\n"===t[0].content&&(t[0].content="");const i=c({line:t,className:(0,r.Z)(n,a&&A)}),u=t.map(((e,t)=>s.createElement("span",(0,o.Z)({key:t},l({token:e,key:t})))));return s.createElement("span",i,a?s.createElement(s.Fragment,null,s.createElement("span",{className:Z}),s.createElement("span",{className:$},u)):s.createElement(s.Fragment,null,u,s.createElement("br",null)))}var D=n(5999);const H={copyButtonCopied:"copyButtonCopied_obH4",copyButtonIcons:"copyButtonIcons_eSgA",copyButtonIcon:"copyButtonIcon_y97N",copyButtonSuccessIcon:"copyButtonSuccessIcon_LjdS"};function M(e){let{code:t,className:n}=e;const[o,a]=(0,s.useState)(!1),c=(0,s.useRef)(void 0),l=(0,s.useCallback)((()=>{!function(e,t){let{target:n=document.body}=void 0===t?{}:t;const o=document.createElement("textarea"),s=document.activeElement;o.value=e,o.setAttribute("readonly",""),o.style.contain="strict",o.style.position="absolute",o.style.left="-9999px",o.style.fontSize="12pt";const a=document.getSelection();let r=!1;a.rangeCount>0&&(r=a.getRangeAt(0)),n.append(o),o.select(),o.selectionStart=0,o.selectionEnd=e.length;let c=!1;try{c=document.execCommand("copy")}catch{}o.remove(),r&&(a.removeAllRanges(),a.addRange(r)),s&&s.focus()}(t),a(!0),c.current=window.setTimeout((()=>{a(!1)}),1e3)}),[t]);return(0,s.useEffect)((()=>()=>window.clearTimeout(c.current)),[]),s.createElement("button",{type:"button","aria-label":o?(0,D.I)({id:"theme.CodeBlock.copied",message:"Copied",description:"The copied button label on code blocks"}):(0,D.I)({id:"theme.CodeBlock.copyButtonAriaLabel",message:"Copy code to clipboard",description:"The ARIA label for copy code blocks button"}),title:(0,D.I)({id:"theme.CodeBlock.copy",message:"Copy",description:"The copy button label on code blocks"}),className:(0,r.Z)("clean-btn",n,H.copyButton,o&&H.copyButtonCopied),onClick:l},s.createElement("span",{className:H.copyButtonIcons,"aria-hidden":"true"},s.createElement("svg",{className:H.copyButtonIcon,viewBox:"0 0 24 24"},s.createElement("path",{d:"M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"})),s.createElement("svg",{className:H.copyButtonSuccessIcon,viewBox:"0 0 24 24"},s.createElement("path",{d:"M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"}))))}const V="wordWrapButtonIcon_Bwma",W="wordWrapButtonEnabled_EoeP";function R(e){let{className:t,onClick:n,isEnabled:o}=e;const a=(0,D.I)({id:"theme.CodeBlock.wordWrapToggle",message:"Toggle word wrap",description:"The title attribute for toggle word wrapping button of code block lines"});return s.createElement("button",{type:"button",onClick:n,className:(0,r.Z)("clean-btn",t,o&&W),"aria-label":a,title:a},s.createElement("svg",{className:V,viewBox:"0 0 24 24","aria-hidden":"true"},s.createElement("path",{fill:"currentColor",d:"M4 19h6v-2H4v2zM20 5H4v2h16V5zm-3 6H4v2h13.25c1.1 0 2 .9 2 2s-.9 2-2 2H15v-2l-3 3l3 3v-2h2c2.21 0 4-1.79 4-4s-1.79-4-4-4z"})))}function F(e){let{children:t,className:n="",metastring:a,title:c,showLineNumbers:u,language:p}=e;const{prism:{defaultLanguage:d,magicComments:g}}=(0,l.L)(),h=p??function(e){const t=e.split(" ").find((e=>e.startsWith("language-")));return null==t?void 0:t.replace(/language-/,"")}(n)??d,y=i(),b=function(){const[e,t]=(0,s.useState)(!1),[n,o]=(0,s.useState)(!1),a=(0,s.useRef)(null),r=(0,s.useCallback)((()=>{const n=a.current.querySelector("code");e?n.removeAttribute("style"):(n.style.whiteSpace="pre-wrap",n.style.overflowWrap="anywhere"),t((e=>!e))}),[a,e]),c=(0,s.useCallback)((()=>{const{scrollWidth:e,clientWidth:t}=a.current,n=e>t||a.current.querySelector("code").hasAttribute("style");o(n)}),[a]);return C(a,c),(0,s.useEffect)((()=>{c()}),[e,c]),(0,s.useEffect)((()=>(window.addEventListener("resize",c,{passive:!0}),()=>{window.removeEventListener("resize",c)})),[c]),{codeBlockRef:a,isEnabled:e,isCodeScrollable:n,toggle:r}}(),E=function(e){var t;return(null==e||null==(t=e.match(m))?void 0:t.groups.title)??""}(a)||c,{lineClassNames:N,code:B}=f(t,{metastring:a,language:h,magicComments:g}),w=u??function(e){return Boolean(null==e?void 0:e.includes("showLineNumbers"))}(a);return s.createElement(k,{as:"div",className:(0,r.Z)(n,h&&!n.includes(`language-${h}`)&&`language-${h}`)},E&&s.createElement("div",{className:v.codeBlockTitle},E),s.createElement("div",{className:v.codeBlockContent},s.createElement(P,(0,o.Z)({},L,{theme:y,code:B,language:h??"text"}),(e=>{let{className:t,tokens:n,getLineProps:o,getTokenProps:a}=e;return s.createElement("pre",{tabIndex:0,ref:b.codeBlockRef,className:(0,r.Z)(t,v.codeBlock,"thin-scrollbar")},s.createElement("code",{className:(0,r.Z)(v.codeBlockLines,w&&v.codeBlockLinesWithNumbering)},n.map(((e,t)=>s.createElement(z,{key:t,line:e,getLineProps:o,getTokenProps:a,classNames:N[t],showLineNumbers:w})))))})),s.createElement("div",{className:v.buttonGroup},(b.isEnabled||b.isCodeScrollable)&&s.createElement(R,{className:v.codeButton,onClick:()=>b.toggle(),isEnabled:b.isEnabled}),s.createElement(M,{className:v.codeButton,code:B}))))}function q(e){let{children:t,...n}=e;const r=(0,a.Z)(),c=function(e){return s.Children.toArray(e).some((e=>(0,s.isValidElement)(e)))?e:Array.isArray(e)?e.join(""):e}(t),l="string"==typeof c?F:E;return s.createElement(l,(0,o.Z)({key:String(r)},n),c)}},7594:(e,t)=>{function n(e){let t,n=[];for(let o of e.split(",").map((e=>e.trim())))if(/^-?\d+$/.test(o))n.push(parseInt(o,10));else if(t=o.match(/^(-?\d+)(-|\.\.\.?|\u2025|\u2026|\u22EF)(-?\d+)$/)){let[e,o,s,a]=t;if(o&&a){o=parseInt(o),a=parseInt(a);const e=o<a?1:-1;"-"!==s&&".."!==s&&"\u2025"!==s||(a+=e);for(let t=o;t!==a;t+=e)n.push(t)}}return n}t.default=n,e.exports=n}}]); \ No newline at end of file diff --git a/assets/js/8140cfa8.b0156491.js b/assets/js/8140cfa8.b0156491.js new file mode 100644 index 00000000..b4ccec42 --- /dev/null +++ b/assets/js/8140cfa8.b0156491.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[256],{770:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>p,contentTitle:()=>i,default:()=>u,frontMatter:()=>r,metadata:()=>o,toc:()=>s});var l=a(7462),n=(a(7294),a(3905));a(1839);const r={},i="Publishing",o={unversionedId:"contribute/development-guide/publishing",id:"contribute/development-guide/publishing",title:"Publishing",description:"Github actions",source:"@site/docs/contribute/development-guide/05-publishing.md",sourceDirName:"contribute/development-guide",slug:"/contribute/development-guide/publishing",permalink:"/template-fastapi-react/docs/contribute/development-guide/publishing",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/contribute/development-guide/05-publishing.md",tags:[],version:"current",sidebarPosition:5,frontMatter:{},sidebar:"contribute",previous:{title:"Upgrading",permalink:"/template-fastapi-react/docs/contribute/development-guide/upgrading"},next:{title:"Documentation",permalink:"/template-fastapi-react/docs/contribute/documentation"}},p={},s=[{value:"Github actions",id:"github-actions",level:2},{value:"Workflows",id:"workflows",level:3},{value:"Reusable workflows",id:"reusable-workflows",level:4},{value:"Changelogs",id:"changelogs",level:2},{value:"How to generate",id:"how-to-generate",level:3},{value:"Auto-generated",id:"auto-generated",level:4},{value:"Locally",id:"locally",level:4}],m={toc:s};function u(t){let{components:e,...a}=t;return(0,n.kt)("wrapper",(0,l.Z)({},m,a,{components:e,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"publishing"},"Publishing"),(0,n.kt)("h2",{id:"github-actions"},"Github actions"),(0,n.kt)("p",null,"We use ",(0,n.kt)("a",{parentName:"p",href:"https://docs.github.com/en/actions"},"GitHub Actions"),", as the ",(0,n.kt)("a",{parentName:"p",href:"https://github.com/equinor/template-fastapi-react/actions"},"CI/CD pipeline"),"."),(0,n.kt)("p",null,"GitHub Actions make it easy to automate all our software workflows. They build, test, and deploy the code right from GitHub."),(0,n.kt)("p",null,"All the heavy lifting is done by GitHub. GitHub will simply use the files defined in ",(0,n.kt)("a",{parentName:"p",href:"https://github.com/equinor/template-fastapi-react/tree/main/.github/workflows"},(0,n.kt)("inlineCode",{parentName:"a"},".github/workflows"))," to do the setup."),(0,n.kt)("p",null,"We trigger the reusable workflow like this (note that the chart is slightly outdated):"),(0,n.kt)("img",{src:"https://www.plantuml.com/plantuml/png/DSr12e0m30NHVK-HTK3Fu4qaseyAQLgQkF3s8khwCSpa8JtAORb8IqpLg9s-KzJ4JA9AInTRTtXYvfa27ZvUKlJnQdfHaSDUx528usUUQOEXIs38TVso2PQ_tmq0",alt:"Github Actions"}),(0,n.kt)("p",null,"Since we are using trunk based development, all pushes to main trigger a release to a test environment."),(0,n.kt)("p",null,"Release to production is triggered when we merge in the auto-generated pull requests (that contains changelogs) that are created by the ",(0,n.kt)("inlineCode",{parentName:"p"},"create-release-pr.yaml")," Github action."),(0,n.kt)("h3",{id:"workflows"},"Workflows"),(0,n.kt)("details",null,(0,n.kt)("summary",null,"Overview"),(0,n.kt)("p",null,"Reusable workflows"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"Workflow"),(0,n.kt)("th",{parentName:"tr",align:null},"Job"),(0,n.kt)("th",{parentName:"tr",align:null},"Purpose"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"https://github.com/equinor/template-fastapi-react/blob/main/.github/workflows/codeql-security-analysis.yaml"},"codeql-security-analysis.yaml")),(0,n.kt)("td",{parentName:"tr",align:null},"analyze"),(0,n.kt)("td",{parentName:"tr",align:null},"Runs ",(0,n.kt)("inlineCode",{parentName:"td"},"CodeQL")," on the source code")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"https://github.com/equinor/template-fastapi-react/blob/main/.github/workflows/create-release-pr.yaml"},"create-release-pr.yaml")),(0,n.kt)("td",{parentName:"tr",align:null},"release-please"),(0,n.kt)("td",{parentName:"tr",align:null},"Creates a new release on GitHub")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"https://github.com/equinor/template-fastapi-react/blob/main/.github/workflows/deploy-to-radix.yaml"},"deploy-to-radix.yaml")),(0,n.kt)("td",{parentName:"tr",align:null},"deploy-on-radix"),(0,n.kt)("td",{parentName:"tr",align:null},"Deploys the services to Radix")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"https://github.com/equinor/template-fastapi-react/blob/main/.github/workflows/generate-changelog.yaml"},"generate-changelog.yaml")),(0,n.kt)("td",{parentName:"tr",align:null},"generate-changelog"),(0,n.kt)("td",{parentName:"tr",align:null},"Automatically generates changelogs based on commit messages")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"https://github.com/equinor/template-fastapi-react/blob/main/.github/workflows/label-importer.yaml"},"label-importer.yaml")),(0,n.kt)("td",{parentName:"tr",align:null},"labeler"),(0,n.kt)("td",{parentName:"tr",align:null},"Import labels from ",(0,n.kt)("inlineCode",{parentName:"td"},"labels.yml"))),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"https://github.com/equinor/template-fastapi-react/blob/main/.github/workflows/publish-docs.yaml"},"publish-docs.yaml")),(0,n.kt)("td",{parentName:"tr",align:null},"publish-docs"),(0,n.kt)("td",{parentName:"tr",align:null},"Builds and publishes the latest docs to GitHub pages")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"https://github.com/equinor/template-fastapi-react/blob/main/.github/workflows/publish-image.yaml"},"publish-image.yaml")),(0,n.kt)("td",{parentName:"tr",align:null},"build-and-publish-web-main"),(0,n.kt)("td",{parentName:"tr",align:null},"Builds and publishes the Docker image for the Web (frontend)")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null}),(0,n.kt)("td",{parentName:"tr",align:null},"build-and-publish-api-main"),(0,n.kt)("td",{parentName:"tr",align:null},"Builds and publishes the Docker image for the API (backend)")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null}),(0,n.kt)("td",{parentName:"tr",align:null},"build-and-publish-nginx"),(0,n.kt)("td",{parentName:"tr",align:null},"Builds and publishes the Docker image for the Nginx proxy")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"https://github.com/equinor/template-fastapi-react/blob/main/.github/workflows/tests.yaml"},"tests.yaml")),(0,n.kt)("td",{parentName:"tr",align:null},"pre-commit"),(0,n.kt)("td",{parentName:"tr",align:null},"Runs the pre-commit hooks. See ",(0,n.kt)("a",{parentName:"td",href:"/template-fastapi-react/docs/contribute/development-guide/setup#hooks"},"Hooks")," for details")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null}),(0,n.kt)("td",{parentName:"tr",align:null},"test-api"),(0,n.kt)("td",{parentName:"tr",align:null},"Runs tests on the API (backend) using pytest and behave")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null}),(0,n.kt)("td",{parentName:"tr",align:null},"test-web"),(0,n.kt)("td",{parentName:"tr",align:null},"Runs tests on the Web (frontend)")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null}),(0,n.kt)("td",{parentName:"tr",align:null},"test-docs"),(0,n.kt)("td",{parentName:"tr",align:null},"Checks that the doc pages build without errors")))),(0,n.kt)("p",null,"Triggerable workflows"),(0,n.kt)("table",null,(0,n.kt)("thead",{parentName:"table"},(0,n.kt)("tr",{parentName:"thead"},(0,n.kt)("th",{parentName:"tr",align:null},"Workflow"),(0,n.kt)("th",{parentName:"tr",align:null},"Job"),(0,n.kt)("th",{parentName:"tr",align:null},"Purpose"))),(0,n.kt)("tbody",{parentName:"table"},(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"https://github.com/equinor/template-fastapi-react/blob/main/.github/workflows/on-pull-request.yaml"},"on-pull-request.yaml")),(0,n.kt)("td",{parentName:"tr",align:null},"codeql"),(0,n.kt)("td",{parentName:"tr",align:null},"Uses the ",(0,n.kt)("inlineCode",{parentName:"td"},"codeql-security-analysis")," workflow")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null}),(0,n.kt)("td",{parentName:"tr",align:null},"tests"),(0,n.kt)("td",{parentName:"tr",align:null},"Uses the ",(0,n.kt)("inlineCode",{parentName:"td"},"tests")," workflow")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"https://github.com/equinor/template-fastapi-react/blob/main/.github/workflows/on-push-main-branch.yaml"},"on-push-main-branch.yaml")),(0,n.kt)("td",{parentName:"tr",align:null},"codeql"),(0,n.kt)("td",{parentName:"tr",align:null},"Uses the ",(0,n.kt)("inlineCode",{parentName:"td"},"codeql-security-analysis")," workflow")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null}),(0,n.kt)("td",{parentName:"tr",align:null},"tests"),(0,n.kt)("td",{parentName:"tr",align:null},"Uses the ",(0,n.kt)("inlineCode",{parentName:"td"},"tests")," workflow")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null}),(0,n.kt)("td",{parentName:"tr",align:null},"generate-changelog"),(0,n.kt)("td",{parentName:"tr",align:null},"Uses the ",(0,n.kt)("inlineCode",{parentName:"td"},"generate-changelog")," workflow")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null}),(0,n.kt)("td",{parentName:"tr",align:null},"docs"),(0,n.kt)("td",{parentName:"tr",align:null},"Uses the ",(0,n.kt)("inlineCode",{parentName:"td"},"publish-docs")," workflow")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null}),(0,n.kt)("td",{parentName:"tr",align:null},"publish-latest"),(0,n.kt)("td",{parentName:"tr",align:null},"Uses the ",(0,n.kt)("inlineCode",{parentName:"td"},"publish-image")," workflow to create a docker image for the ",(0,n.kt)("inlineCode",{parentName:"td"},"test")," environment")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null}),(0,n.kt)("td",{parentName:"tr",align:null},"deploy-test"),(0,n.kt)("td",{parentName:"tr",align:null},"Uses the ",(0,n.kt)("inlineCode",{parentName:"td"},"deploy-to-radix")," workflow to deploy to the ",(0,n.kt)("inlineCode",{parentName:"td"},"test")," environment")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null}),(0,n.kt)("td",{parentName:"tr",align:null},"release-please"),(0,n.kt)("td",{parentName:"tr",align:null},"Creates a new release PR on GitHub")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null}),(0,n.kt)("td",{parentName:"tr",align:null},"publish-production"),(0,n.kt)("td",{parentName:"tr",align:null},"Uses the ",(0,n.kt)("inlineCode",{parentName:"td"},"publish-image")," workflow to create a docker image for the ",(0,n.kt)("inlineCode",{parentName:"td"},"prod")," environment")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null}),(0,n.kt)("td",{parentName:"tr",align:null},"deploy-prod"),(0,n.kt)("td",{parentName:"tr",align:null},"Uses the ",(0,n.kt)("inlineCode",{parentName:"td"},"deploy-to-radix")," workflow to deploy to the ",(0,n.kt)("inlineCode",{parentName:"td"},"prod")," environment")),(0,n.kt)("tr",{parentName:"tbody"},(0,n.kt)("td",{parentName:"tr",align:null},(0,n.kt)("a",{parentName:"td",href:"https://github.com/equinor/template-fastapi-react/blob/main/.github/workflows/on-weekly.yaml"},"on-weekly.yaml")),(0,n.kt)("td",{parentName:"tr",align:null},"codeql"),(0,n.kt)("td",{parentName:"tr",align:null},"Uses the ",(0,n.kt)("inlineCode",{parentName:"td"},"codeql-security-analysis")," workflow"))))),(0,n.kt)("h4",{id:"reusable-workflows"},"Reusable workflows"),(0,n.kt)("p",null,"A reusable workflow is just like any GitHub Actions workflow with one key difference - it includes a ",(0,n.kt)("inlineCode",{parentName:"p"},"workflow_call")," trigger."),(0,n.kt)("ul",null,(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("p",{parentName:"li"},"The ",(0,n.kt)("a",{parentName:"p",href:"https://github.com/equinor/template-fastapi-react/blob/main/.github/workflows/create-release-pr.yaml"},(0,n.kt)("inlineCode",{parentName:"a"},"create-release-pr.yaml"))," workflow will automatically create a pull request with an auto-generated changelog. It also bumps the version code (using semantic versioning, depending on the types of commits) and create a tagged release that can be used to deploy to production.")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("p",{parentName:"li"},"The ",(0,n.kt)("a",{parentName:"p",href:"https://github.com/equinor/template-fastapi-react/blob/main/.github/workflows/tests.yml"},(0,n.kt)("inlineCode",{parentName:"a"},"tests.yaml"))," workflow will automatically run all types of tests.")),(0,n.kt)("li",{parentName:"ul"},(0,n.kt)("p",{parentName:"li"},"The ",(0,n.kt)("a",{parentName:"p",href:"https://github.com/equinor/template-fastapi-react/blob/main/.github/workflows/publish-docs.yml"},(0,n.kt)("inlineCode",{parentName:"a"},"publish-docs.yaml"))," workflow will build the documentation. Then it will deploy the documentation (placed in the site folder) to GitHub Pages."))),(0,n.kt)("h2",{id:"changelogs"},"Changelogs"),(0,n.kt)("p",null,"We auto-generate changelogs by following the ",(0,n.kt)("a",{parentName:"p",href:"https://www.conventionalcommits.org/en/v1.0.0/"},"conventional commits")," specification."),(0,n.kt)("h3",{id:"how-to-generate"},"How to generate"),(0,n.kt)("h4",{id:"auto-generated"},"Auto-generated"),(0,n.kt)("p",null,"The Github action ",(0,n.kt)("inlineCode",{parentName:"p"},"release-please.yaml")," is a workflow that will automatically create a pull request with an auto-generated changelog every time code is pushed to the main branch."),(0,n.kt)("h4",{id:"locally"},"Locally"),(0,n.kt)("p",null,"Sometimes it is nice to generate the changelogs locally for testing."),(0,n.kt)("p",null,"It is possible to use ",(0,n.kt)("a",{parentName:"p",href:"https://github.com/nektos/act"},"act")," to run Github actions locally."),(0,n.kt)("pre",null,(0,n.kt)("code",{parentName:"pre",className:"language-shell"},"act -j release-please -s GITHUB_TOKEN=<GITHUB_TOKEN>\n")),(0,n.kt)("p",null,(0,n.kt)("inlineCode",{parentName:"p"},"GITHUB_TOKEN"),": Log in to GitHub and generate a personal access token (PaT) from ",(0,n.kt)("inlineCode",{parentName:"p"},"Personal settings -> Developer settings -> Personal access tokens"),"."))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/935f2afb.be34cfe3.js b/assets/js/935f2afb.be34cfe3.js new file mode 100644 index 00000000..00947e46 --- /dev/null +++ b/assets/js/935f2afb.be34cfe3.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[53],{1109:e=>{e.exports=JSON.parse('{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"about":[{"type":"link","label":"Introduction","href":"/template-fastapi-react/docs/about/introduction","docId":"about/introduction"},{"type":"link","label":"Overview","href":"/template-fastapi-react/docs/about/overview","docId":"about/overview"},{"type":"category","label":"Concepts","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Task","href":"/template-fastapi-react/docs/about/concepts/task","docId":"about/concepts/task"},{"type":"link","label":"Use case","href":"/template-fastapi-react/docs/about/concepts/use-case","docId":"about/concepts/use-case"}],"href":"/template-fastapi-react/docs/category/concepts"},{"type":"category","label":"How to","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"How to do something","href":"/template-fastapi-react/docs/about/how-to/how-to-do-something","docId":"about/how-to/how-to-do-something"}],"href":"/template-fastapi-react/docs/category/how-to"},{"type":"category","label":"Running","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Prerequisites","href":"/template-fastapi-react/docs/about/running/prerequisites","docId":"about/running/prerequisites"},{"type":"link","label":"Configuration","href":"/template-fastapi-react/docs/about/running/configure","docId":"about/running/configure"},{"type":"link","label":"Starting services","href":"/template-fastapi-react/docs/about/running/starting-services","docId":"about/running/starting-services"}],"href":"/template-fastapi-react/docs/category/running"}],"contribute":[{"type":"link","label":"How to start contributing","href":"/template-fastapi-react/docs/contribute/how-to-start-contributing","docId":"contribute/how-to-start-contributing"},{"type":"link","label":"Ground rules","href":"/template-fastapi-react/docs/contribute/ground-rules","docId":"contribute/ground-rules"},{"type":"category","label":"Development guide","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Setup","href":"/template-fastapi-react/docs/contribute/development-guide/setup","docId":"contribute/development-guide/setup"},{"type":"category","label":"Coding","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Architecture overview","href":"/template-fastapi-react/docs/contribute/development-guide/coding/architecture","docId":"contribute/development-guide/coding/architecture"},{"type":"category","label":"Extending the API","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Adding entities","href":"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-entities","docId":"contribute/development-guide/coding/extending-the-api/adding-entities"},{"type":"category","label":"Adding data providers","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Clients","href":"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/clients","docId":"contribute/development-guide/coding/extending-the-api/adding-data-providers/clients"},{"type":"link","label":"Repository interfaces","href":"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repository-interfaces","docId":"contribute/development-guide/coding/extending-the-api/adding-data-providers/repository-interfaces"},{"type":"link","label":"Repositories","href":"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repositories","docId":"contribute/development-guide/coding/extending-the-api/adding-data-providers/repositories"}],"href":"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/"},{"type":"category","label":"Adding features","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Controller","href":"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/controllers","docId":"contribute/development-guide/coding/extending-the-api/adding-features/controllers"},{"type":"link","label":"Use cases","href":"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/use-cases","docId":"contribute/development-guide/coding/extending-the-api/adding-features/use-cases"},{"type":"link","label":"Securing endpoints","href":"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/securing-endpoints","docId":"contribute/development-guide/coding/extending-the-api/adding-features/securing-endpoints"}],"href":"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/"}],"href":"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/"},{"type":"link","label":"Generate API clients","href":"/template-fastapi-react/docs/contribute/development-guide/coding/generate-api-clients","docId":"contribute/development-guide/coding/generate-api-clients"},{"type":"link","label":"Extending the web","href":"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-web/","docId":"contribute/development-guide/coding/extending-the-web/index"}],"href":"/template-fastapi-react/docs/category/coding"},{"type":"link","label":"Testing","href":"/template-fastapi-react/docs/contribute/development-guide/testing","docId":"contribute/development-guide/testing"},{"type":"link","label":"Upgrading","href":"/template-fastapi-react/docs/contribute/development-guide/upgrading","docId":"contribute/development-guide/upgrading"},{"type":"link","label":"Publishing","href":"/template-fastapi-react/docs/contribute/development-guide/publishing","docId":"contribute/development-guide/publishing"}],"href":"/template-fastapi-react/docs/category/development-guide"},{"type":"link","label":"Documentation","href":"/template-fastapi-react/docs/contribute/documentation","docId":"contribute/documentation"}]},"docs":{"about/concepts/task":{"id":"about/concepts/task","title":"Task","description":"This is an example of a \\"concept\\" which is domain specific, and not related to your application. It should be replaced by relevant domain specific concepts in your documentation. Note that for some concepts, having an \\"Examples\\"-section does not make sense. Feel free to adapt the example\'s structure to best suit your concepts.","sidebar":"about"},"about/concepts/use-case":{"id":"about/concepts/use-case","title":"Use case","description":"There will be one use case for each individual action/command of an actor. An actor is a person or another system that interacts with our application. Typically, it will be a regular user.","sidebar":"about"},"about/how-to/how-to-do-something":{"id":"about/how-to/how-to-do-something","title":"How to do something","description":"","sidebar":"about"},"about/introduction":{"id":"about/introduction","title":"Introduction","description":"The purpose of the template","sidebar":"about"},"about/overview":{"id":"about/overview","title":"Overview","description":"Getting started","sidebar":"about"},"about/running/configure":{"id":"about/running/configure","title":"Configuration","description":"This document goes through all the different configuration options available.","sidebar":"about"},"about/running/prerequisites":{"id":"about/running/prerequisites","title":"Prerequisites","description":"In order to run you need to have installed:","sidebar":"about"},"about/running/starting-services":{"id":"about/running/starting-services","title":"Starting services","description":"You can start running:","sidebar":"about"},"changelog/changelog":{"id":"changelog/changelog","title":"Changelog","description":"1.5.0 (2024-07-22)"},"contribute/development-guide/coding/architecture":{"id":"contribute/development-guide/coding/architecture","title":"Architecture overview","description":"Architecture diagrams","sidebar":"contribute"},"contribute/development-guide/coding/extending-the-api/adding-data-providers/clients":{"id":"contribute/development-guide/coding/extending-the-api/adding-data-providers/clients","title":"Clients","description":"The template already ships with a mongo database client for connecting to MongoDB databases. However, if you need a client that can talk to e.g. PostgreSQL you need to add this.","sidebar":"contribute"},"contribute/development-guide/coding/extending-the-api/adding-data-providers/index":{"id":"contribute/development-guide/coding/extending-the-api/adding-data-providers/index","title":"Adding data providers","description":"Data providers are part of the infrastructure layer, which is responsible for external infrastructure communications","sidebar":"contribute"},"contribute/development-guide/coding/extending-the-api/adding-data-providers/repositories":{"id":"contribute/development-guide/coding/extending-the-api/adding-data-providers/repositories","title":"Repositories","description":"Concrete implementations of repository interfaces. A repository takes entities and returns entities, while hiding","sidebar":"contribute"},"contribute/development-guide/coding/extending-the-api/adding-data-providers/repository-interfaces":{"id":"contribute/development-guide/coding/extending-the-api/adding-data-providers/repository-interfaces","title":"Repository interfaces","description":"A repository interface describes the incoming parameters and the type of the object returned by a repository. The","sidebar":"contribute"},"contribute/development-guide/coding/extending-the-api/adding-entities":{"id":"contribute/development-guide/coding/extending-the-api/adding-entities","title":"Adding entities","description":"Entities form the domain model of the application.","sidebar":"contribute"},"contribute/development-guide/coding/extending-the-api/adding-features/controllers":{"id":"contribute/development-guide/coding/extending-the-api/adding-features/controllers","title":"Controller","description":"A controller receives a request, then calls a use case, before finally returning a response.","sidebar":"contribute"},"contribute/development-guide/coding/extending-the-api/adding-features/index":{"id":"contribute/development-guide/coding/extending-the-api/adding-features/index","title":"Adding features","description":"A feature has this structure.","sidebar":"contribute"},"contribute/development-guide/coding/extending-the-api/adding-features/securing-endpoints":{"id":"contribute/development-guide/coding/extending-the-api/adding-features/securing-endpoints","title":"Securing endpoints","description":"The REST API (i.e. python FastAPI server) has access to, and is responsible for serving, data that could be private. Therefore we need to validate that the request is coming from an authenticated client.","sidebar":"contribute"},"contribute/development-guide/coding/extending-the-api/adding-features/use-cases":{"id":"contribute/development-guide/coding/extending-the-api/adding-features/use-cases","title":"Use cases","description":"Use cases implement and encapsulate all the application business rules.","sidebar":"contribute"},"contribute/development-guide/coding/extending-the-api/index":{"id":"contribute/development-guide/coding/extending-the-api/index","title":"Extending the API","description":"FastAPI","sidebar":"contribute"},"contribute/development-guide/coding/extending-the-web/index":{"id":"contribute/development-guide/coding/extending-the-web/index","title":"Extending the web","description":"The web is grouped by features.","sidebar":"contribute"},"contribute/development-guide/coding/generate-api-clients":{"id":"contribute/development-guide/coding/generate-api-clients","title":"Generate API clients","description":"To generate typescript client for API run:","sidebar":"contribute"},"contribute/development-guide/publishing":{"id":"contribute/development-guide/publishing","title":"Publishing","description":"Github actions","sidebar":"contribute"},"contribute/development-guide/setup":{"id":"contribute/development-guide/setup","title":"Setup","description":"Prerequisites","sidebar":"contribute"},"contribute/development-guide/testing":{"id":"contribute/development-guide/testing","title":"Testing","description":"API","sidebar":"contribute"},"contribute/development-guide/upgrading":{"id":"contribute/development-guide/upgrading","title":"Upgrading","description":"Packages","sidebar":"contribute"},"contribute/documentation":{"id":"contribute/documentation","title":"Documentation","description":"This site was generated from the contents of your documentation folder using Docusaurus and we host it on GitHub Pages.","sidebar":"contribute"},"contribute/ground-rules":{"id":"contribute/ground-rules","title":"Ground rules","description":"* For major changes, please open an issue first to discuss what you would like to change.","sidebar":"contribute"},"contribute/how-to-start-contributing":{"id":"contribute/how-to-start-contributing","title":"How to start contributing","description":"Welcome! We are glad that you want to contribute to our project! \ud83d\udc96","sidebar":"contribute"}}}')}}]); \ No newline at end of file diff --git a/assets/js/95fd3ae2.01388588.js b/assets/js/95fd3ae2.01388588.js new file mode 100644 index 00000000..56c5b306 --- /dev/null +++ b/assets/js/95fd3ae2.01388588.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[898],{9482:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>d,contentTitle:()=>r,default:()=>l,frontMatter:()=>o,metadata:()=>c,toc:()=>p});var i=n(7462),a=(n(7294),n(3905));n(1839);const o={},r="Generate API clients",c={unversionedId:"contribute/development-guide/coding/generate-api-clients",id:"contribute/development-guide/coding/generate-api-clients",title:"Generate API clients",description:"To generate typescript client for API run:",source:"@site/docs/contribute/development-guide/coding/03-generate-api-clients.md",sourceDirName:"contribute/development-guide/coding",slug:"/contribute/development-guide/coding/generate-api-clients",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/generate-api-clients",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/contribute/development-guide/coding/03-generate-api-clients.md",tags:[],version:"current",sidebarPosition:3,frontMatter:{},sidebar:"contribute",previous:{title:"Securing endpoints",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/securing-endpoints"},next:{title:"Extending the web",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-web/"}},d={},p=[],s={toc:p};function l(e){let{components:t,...n}=e;return(0,a.kt)("wrapper",(0,i.Z)({},s,n,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"generate-api-clients"},"Generate API clients"),(0,a.kt)("p",null,"To generate typescript client for API run:"),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre",className:"language-shell"},"cd web\n./generate-api-client.sh\n")),(0,a.kt)("p",null,"This will populate ",(0,a.kt)("inlineCode",{parentName:"p"},"web/src/api/generated")," with new typescript files that matches the API OpenAPI specification."))}l.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/972.8d79bbe8.js b/assets/js/972.8d79bbe8.js new file mode 100644 index 00000000..5af810a3 --- /dev/null +++ b/assets/js/972.8d79bbe8.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[972],{4972:(e,t,n)=>{n.r(t),n.d(t,{default:()=>i});var a=n(7294),o=n(5999),l=n(1944),r=n(4704);function i(){return a.createElement(a.Fragment,null,a.createElement(l.d,{title:(0,o.I)({id:"theme.NotFound.title",message:"Page Not Found"})}),a.createElement(r.Z,null,a.createElement("main",{className:"container margin-vert--xl"},a.createElement("div",{className:"row"},a.createElement("div",{className:"col col--6 col--offset-3"},a.createElement("h1",{className:"hero__title"},a.createElement(o.Z,{id:"theme.NotFound.title",description:"The title of the 404 page"},"Page Not Found")),a.createElement("p",null,a.createElement(o.Z,{id:"theme.NotFound.p1",description:"The first paragraph of the 404 page"},"We could not find what you were looking for.")),a.createElement("p",null,a.createElement(o.Z,{id:"theme.NotFound.p2",description:"The 2nd paragraph of the 404 page"},"Please contact the owner of the site that linked you to the original URL and let them know their link is broken.")))))))}}}]); \ No newline at end of file diff --git a/assets/js/9b8d192f.082a6409.js b/assets/js/9b8d192f.082a6409.js new file mode 100644 index 00000000..97ff797e --- /dev/null +++ b/assets/js/9b8d192f.082a6409.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[172],{3894:(e,t,i)=>{i.r(t),i.d(t,{assets:()=>s,contentTitle:()=>r,default:()=>u,frontMatter:()=>d,metadata:()=>o,toc:()=>p});var n=i(7462),a=(i(7294),i(3905));i(1839);const d={},r="Adding data providers",o={unversionedId:"contribute/development-guide/coding/extending-the-api/adding-data-providers/index",id:"contribute/development-guide/coding/extending-the-api/adding-data-providers/index",title:"Adding data providers",description:"Data providers are part of the infrastructure layer, which is responsible for external infrastructure communications",source:"@site/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/index.md",sourceDirName:"contribute/development-guide/coding/extending-the-api/adding-data-providers",slug:"/contribute/development-guide/coding/extending-the-api/adding-data-providers/",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/index.md",tags:[],version:"current",frontMatter:{},sidebar:"contribute",previous:{title:"Adding entities",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-entities"},next:{title:"Clients",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/clients"}},s={},p=[],c={toc:p};function u(e){let{components:t,...i}=e;return(0,a.kt)("wrapper",(0,n.Z)({},c,i,{components:t,mdxType:"MDXLayout"}),(0,a.kt)("h1",{id:"adding-data-providers"},"Adding data providers"),(0,a.kt)("p",null,"Data providers are part of the infrastructure layer, which is responsible for external infrastructure communications\nlike database storage, file system, and external systems. The infrastructure layer is the layer that contains all the\nconcrete implementations of the application. It implements interfaces defined in use cases, to provide access to\nexternal systems."),(0,a.kt)("pre",null,(0,a.kt)("code",{parentName:"pre"},"\u251c\u2500\u2500 data_providers/\n\u2502 \u251c\u2500\u2500 clients/\n\u2502 \u251c\u2500\u2500 repository_interfaces/\n\u2502 \u2514\u2500\u2500 repositories/\n\u2514\u2500\u2500 ...\n")),(0,a.kt)("p",null,"w"))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/b5acc4c4.0b2208ad.js b/assets/js/b5acc4c4.0b2208ad.js new file mode 100644 index 00000000..527be3ba --- /dev/null +++ b/assets/js/b5acc4c4.0b2208ad.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[106],{8742:(t,e,o)=>{o.r(e),o.d(e,{assets:()=>s,contentTitle:()=>i,default:()=>d,frontMatter:()=>n,metadata:()=>c,toc:()=>p});var a=o(7462),r=(o(7294),o(3905));o(1839);const n={},i="Overview",c={unversionedId:"about/overview",id:"about/overview",title:"Overview",description:"Getting started",source:"@site/docs/about/02-overview.md",sourceDirName:"about",slug:"/about/overview",permalink:"/template-fastapi-react/docs/about/overview",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/about/02-overview.md",tags:[],version:"current",sidebarPosition:2,frontMatter:{},sidebar:"about",previous:{title:"Introduction",permalink:"/template-fastapi-react/docs/about/introduction"},next:{title:"Concepts",permalink:"/template-fastapi-react/docs/category/concepts"}},s={},p=[{value:"Getting started",id:"getting-started",level:2},{value:"Project structure",id:"project-structure",level:2}],u={toc:p};function d(t){let{components:e,...o}=t;return(0,r.kt)("wrapper",(0,a.Z)({},u,o,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"overview"},"Overview"),(0,r.kt)("h2",{id:"getting-started"},"Getting started"),(0,r.kt)("p",null,"In order to start using this template for your own project, go to ",(0,r.kt)("a",{parentName:"p",href:"https://github.com/equinor/template-fastapi-react"},"equinor/template-fastapi-react")," and click the ",(0,r.kt)("inlineCode",{parentName:"p"},"Use this template")," button to create a copy."),(0,r.kt)("p",null,"Next, go-to the instructions on how-to ",(0,r.kt)("a",{parentName:"p",href:"/template-fastapi-react/docs/about/running/prerequisites"},"run locally")," ."),(0,r.kt)("p",null,"For setting up a development environment, go to the ",(0,r.kt)("a",{parentName:"p",href:"/template-fastapi-react/docs/contribute/development-guide/setup"},"development guide"),". Next, to start coding and extending the template see the ",(0,r.kt)("a",{parentName:"p",href:"/template-fastapi-react/docs/contribute/development-guide/coding/architecture"},"coding section"),"."),(0,r.kt)("p",null,"For starting contributing to the template see ",(0,r.kt)("a",{parentName:"p",href:"/template-fastapi-react/docs/contribute/how-to-start-contributing"},"contribute section"),"."),(0,r.kt)("h2",{id:"project-structure"},"Project structure"),(0,r.kt)("p",null,"Here\u2019s how the app is organized."),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre"},"\u251c\u2500\u2500 api/ - backend code\n\u2502\u2500\u2500 web/ - frontend code\n\u2502\u2500\u2500 documentation/ - documentation\n\u251c\u2500\u2500 nginx/ - reverse proxy\n\u251c\u2500\u2500 .env-template - template for environment variables\n\u251c\u2500\u2500 docker-compose.override.yml - for running locally\n\u251c\u2500\u2500 docker-compose.yml - common docker compose settings\n\u2514\u2500\u2500 ...\n")))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/b893987e.c7bcf8cd.js b/assets/js/b893987e.c7bcf8cd.js new file mode 100644 index 00000000..2c395fff --- /dev/null +++ b/assets/js/b893987e.c7bcf8cd.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[499],{5545:(e,t,o)=>{o.r(t),o.d(t,{assets:()=>_,contentTitle:()=>r,default:()=>p,frontMatter:()=>s,metadata:()=>a,toc:()=>l});var i=o(7462),n=(o(7294),o(3905)),d=(o(1839),o(814));const s={},r="Repositories",a={unversionedId:"contribute/development-guide/coding/extending-the-api/adding-data-providers/repositories",id:"contribute/development-guide/coding/extending-the-api/adding-data-providers/repositories",title:"Repositories",description:"Concrete implementations of repository interfaces. A repository takes entities and returns entities, while hiding",source:"@site/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/03-repositories.md",sourceDirName:"contribute/development-guide/coding/extending-the-api/adding-data-providers",slug:"/contribute/development-guide/coding/extending-the-api/adding-data-providers/repositories",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repositories",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/03-repositories.md",tags:[],version:"current",sidebarPosition:3,frontMatter:{},sidebar:"contribute",previous:{title:"Repository interfaces",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repository-interfaces"},next:{title:"Adding features",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/"}},_={},l=[{value:"Testing repositories",id:"testing-repositories",level:2}],m={toc:l};function p(e){let{components:t,...o}=e;return(0,n.kt)("wrapper",(0,i.Z)({},m,o,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"repositories"},"Repositories"),(0,n.kt)("p",null,"Concrete implementations of repository interfaces. A repository takes entities and returns entities, while hiding\nstorage details. It can work against local, remote, data services or third party services."),(0,n.kt)(d.Z,{language:"jsx",mdxType:"CodeBlock"},'from typing import Any\n\nfrom common.exceptions import NotFoundException\nfrom config import config\nfrom data_providers.clients.client_interface import ClientInterface\nfrom data_providers.clients.mongodb.mongo_database_client import MongoDatabaseClient\nfrom features.todo.entities.todo_item import TodoItem\nfrom features.todo.repository.todo_repository_interface import TodoRepositoryInterface\n\n\ndef to_dict(todo_item: TodoItem) -> dict[str, Any]:\n _dict: dict[str, Any] = todo_item.__dict__\n _dict["_id"] = todo_item.id\n return _dict\n\n\ndef get_todo_repository() -> "TodoRepository":\n mongo_database_client = MongoDatabaseClient(collection_name="todos", database_name=config.MONGODB_DATABASE)\n return TodoRepository(client=mongo_database_client)\n\n\nclass TodoRepository(TodoRepositoryInterface):\n client: ClientInterface\n\n def __init__(self, client: ClientInterface):\n self.client = client\n\n def update(self, todo_item: TodoItem) -> TodoItem:\n updated_todo_item = self.client.update(todo_item.id, to_dict(todo_item))\n return TodoItem.from_dict(updated_todo_item)\n\n def delete(self, todo_item_id: str) -> None:\n is_deleted = self.client.delete(todo_item_id)\n if not is_deleted:\n raise NotFoundException\n\n def delete_all(self) -> None:\n self.client.delete_collection()\n\n def get(self, todo_item_id: str) -> TodoItem:\n todo_item = self.client.get(todo_item_id)\n return TodoItem.from_dict(todo_item)\n\n def create(self, todo_item: TodoItem) -> TodoItem | None:\n inserted_todo_item = self.client.create(to_dict(todo_item))\n return TodoItem.from_dict(inserted_todo_item)\n\n def get_all(self) -> list[TodoItem]:\n todo_items: list[TodoItem] = []\n for item in self.client.list_collection():\n todo_items.append(TodoItem.from_dict(item))\n return todo_items\n\n def find_one(self, filter: dict[str, Any]) -> TodoItem | None:\n todo_item = self.client.find_one(filter)\n if todo_item:\n return TodoItem.from_dict(todo_item)\n return None\n'),(0,n.kt)("h2",{id:"testing-repositories"},"Testing repositories"),(0,n.kt)("p",null,"Use the ",(0,n.kt)("inlineCode",{parentName:"p"},"test_client")," fixture as input to TodoRepository. The ",(0,n.kt)("inlineCode",{parentName:"p"},"test_client")," fixture are using the mongomock instead of\nreal database."),(0,n.kt)(d.Z,{language:"jsx",mdxType:"CodeBlock"},'import pytest\n\nfrom common.exceptions import NotFoundException, ValidationException\nfrom data_providers.clients.mongodb.mongo_database_client import MongoDatabaseClient\nfrom features.todo.entities.todo_item import TodoItem\nfrom features.todo.repository.todo_repository import TodoRepository\n\n\nclass TestTodoRepository:\n @pytest.fixture(autouse=True)\n def _setup_repository(self, test_client: MongoDatabaseClient):\n self.repository = TodoRepository(client=test_client)\n\n def test_create(self):\n todo_item = TodoItem(id="1234", title="todo 1", user_id="xyz")\n self.repository.create(todo_item)\n assert len(self.repository.get_all()) == 1\n\n def test_create_already_exists(self):\n todo_item_1 = TodoItem(id="1234", title="todo 1", user_id="xyz")\n self.repository.create(todo_item_1)\n with pytest.raises(ValidationException):\n todo_item_2 = TodoItem(id="1234", title="todo 1", user_id="xyz")\n self.repository.create(todo_item_2)\n\n def test_find_item_that_exist(self):\n documents = [\n {"_id": "81549300", "title": "todo 1", "user_id": "xyz"},\n {"_id": "1a2b", "title": "todo 2", "user_id": "xyz"},\n {"_id": "987321", "title": "todo 3", "user_id": "abc"},\n {"_id": "987456", "title": "todo 4", "user_id": "abc"},\n ]\n self.repository.client.insert_many(documents)\n todo_item = self.repository.find_one({"title": "todo 2", "user_id": "xyz"})\n assert todo_item is not None and todo_item.id == "1a2b"\n\n def test_find_item_that_does_not_exist(self):\n documents = [\n {"_id": "81549300", "title": "todo 1", "user_id": "xyz"},\n {"_id": "1a2b", "title": "todo 2", "user_id": "xyz"},\n {"_id": "987321", "title": "todo 3", "user_id": "abc"},\n {"_id": "987456", "title": "todo 4", "user_id": "abc"},\n ]\n self.repository.client.insert_many(documents)\n assert self.repository.find_one({"_id": "invalid"}) is None\n\n def test_find_item_of_other_user(self):\n documents = [\n {"_id": "81549300", "title": "todo 1", "user_id": "xyz"},\n {"_id": "1a2b", "title": "todo 2", "user_id": "xyz"},\n {"_id": "987321", "title": "todo 3", "user_id": "abc"},\n {"_id": "987456", "title": "todo 4", "user_id": "abc"},\n ]\n self.repository.client.insert_many(documents)\n assert self.repository.find_one({"_id": "1a2b", "user_id": "abc"}) is None\n\n def test_get_item_that_does_exist(self):\n documents = [\n {"_id": "81549300", "title": "todo 1", "user_id": "xyz"},\n {"_id": "1a2b", "title": "todo 2", "user_id": "xyz"},\n {"_id": "987321", "title": "todo 3", "user_id": "abc"},\n {"_id": "987456", "title": "todo 4", "user_id": "abc"},\n ]\n self.repository.client.insert_many(documents)\n assert self.repository.get("987321").id == "987321"\n\n def test_get_item_that_does_not_exist(self):\n documents = [\n {"_id": "81549300", "title": "todo 1", "user_id": "xyz"},\n {"_id": "1a2b", "title": "todo 2", "user_id": "xyz"},\n {"_id": "987321", "title": "todo 3", "user_id": "abc"},\n {"_id": "987456", "title": "todo 4", "user_id": "abc"},\n ]\n self.repository.client.insert_many(documents)\n with pytest.raises(NotFoundException):\n self.repository.get("invalid")\n\n def test_update_item(self):\n todo_item = TodoItem(id="81549300", title="todo 1", user_id="xyz")\n self.repository.create(todo_item)\n todo_item_to_update = TodoItem(id="81549300", title="Updated title", user_id="xyz")\n self.repository.update(todo_item=todo_item_to_update)\n assert self.repository.get("81549300").title == "Updated title"\n\n def test_update_item_that_does_not_exist(self):\n todo_item_to_update = TodoItem(id="unknown", title="Updated title", user_id="xyz")\n with pytest.raises(NotFoundException):\n self.repository.update(todo_item_to_update)\n\n def test_delete(self):\n documents = [\n {"_id": "81549300", "title": "todo 1", "user_id": "xyz"},\n {"_id": "1a2b", "title": "todo 2", "user_id": "xyz"},\n ]\n self.repository.client.insert_many(documents)\n assert len(self.repository.get_all()) == 2\n self.repository.delete("81549300")\n assert len(self.repository.get_all()) == 1\n assert self.repository.get_all() == [self.repository.get("1a2b")]\n\n def test_delete_all(self):\n documents = [\n {"_id": "81549300", "title": "todo 1", "user_id": "xyz"},\n {"_id": "1a2b", "title": "todo 2", "user_id": "xyz"},\n ]\n self.repository.client.insert_many(documents)\n assert len(self.repository.get_all()) == 2\n self.repository.delete_all()\n assert len(self.repository.get_all()) == 0\n'))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/be239b1c.3a72d963.js b/assets/js/be239b1c.3a72d963.js new file mode 100644 index 00000000..f4e3bbcb --- /dev/null +++ b/assets/js/be239b1c.3a72d963.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[19],{3477:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>l,contentTitle:()=>s,default:()=>p,frontMatter:()=>n,metadata:()=>i,toc:()=>u});var r=a(7462),o=(a(7294),a(3905));a(1839);const n={},s="How to start contributing",i={unversionedId:"contribute/how-to-start-contributing",id:"contribute/how-to-start-contributing",title:"How to start contributing",description:"Welcome! We are glad that you want to contribute to our project! \ud83d\udc96",source:"@site/docs/contribute/01-how-to-start-contributing.md",sourceDirName:"contribute",slug:"/contribute/how-to-start-contributing",permalink:"/template-fastapi-react/docs/contribute/how-to-start-contributing",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/contribute/01-how-to-start-contributing.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{},sidebar:"contribute",next:{title:"Ground rules",permalink:"/template-fastapi-react/docs/contribute/ground-rules"}},l={},u=[{value:"Fork the repository",id:"fork-the-repository",level:2},{value:"Code review process",id:"code-review-process",level:2}],c={toc:u};function p(e){let{components:t,...a}=e;return(0,o.kt)("wrapper",(0,r.Z)({},c,a,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"how-to-start-contributing"},"How to start contributing"),(0,o.kt)("p",null,"Welcome! We are glad that you want to contribute to our project! \ud83d\udc96"),(0,o.kt)("p",null,"This project accepts contributions via Github pull requests."),(0,o.kt)("p",null,"This document outlines the process to help get your contribution accepted."),(0,o.kt)("p",null,"There are many ways to contribute:"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"Suggest ",(0,o.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/new?assignees=&labels=type%3A+%3Abulb%3A+feature+request&template=feature-request.md&title="},"features")),(0,o.kt)("li",{parentName:"ul"},"Suggest ",(0,o.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/new?assignees=&labels=type%3A+%3Awrench%3A+maintenance&template=code-maintenance.md&title="},"changes")),(0,o.kt)("li",{parentName:"ul"},"Report ",(0,o.kt)("a",{parentName:"li",href:"https://github.com/equinor/template-fastapi-react/issues/new?assignees=&labels=type%3A+%3Abug+bug&template=bug-report.md&title="},"bugs"))),(0,o.kt)("p",null,"You can start by looking through the ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/equinor/template-fastapi-react/issues?q=is%3Aopen+is%3Aissue+label%3A%22%3Ahatching_chick%3A+good+first+issue%22"},"good first issues"),"."),(0,o.kt)("h2",{id:"fork-the-repository"},"Fork the repository"),(0,o.kt)("p",null,"In general, we follow the ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/susam/gitpr"},'"fork-and-pull" Git workflow'),"."),(0,o.kt)("p",null,"Here's a quick guide:"),(0,o.kt)("ol",null,(0,o.kt)("li",{parentName:"ol"},"Create your own fork of the repository"),(0,o.kt)("li",{parentName:"ol"},"Clone the project to your machine"),(0,o.kt)("li",{parentName:"ol"},"To keep track of the original repository add another remote named upstream")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-shell"},"git remote add upstream git@github.com:equinor/template-fastapi-react.git\n")),(0,o.kt)("ol",{start:4},(0,o.kt)("li",{parentName:"ol"},"Create a branch locally with a succinct but descriptive name and prefixed with change type.")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-shell"},"git checkout -b feature/my-new-feature\n")),(0,o.kt)("ol",{start:5},(0,o.kt)("li",{parentName:"ol"},"Make the changes in the created branch."),(0,o.kt)("li",{parentName:"ol"},"Add and run tests for your changes (we only take pull requests with passing tests).")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-shell"},"docker compose run --rm api pytest\ndocker compose run --rm web yarn test\n")),(0,o.kt)("ol",{start:7},(0,o.kt)("li",{parentName:"ol"},"Add the changed files")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-shell"},"git add path/to/filename\n")),(0,o.kt)("ol",{start:8},(0,o.kt)("li",{parentName:"ol"},"Commit your changes using the ",(0,o.kt)("a",{parentName:"li",href:"https://www.conventionalcommits.org/en/v1.0.0/"},"conventional commits")," formatting for the commit messages.")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-shell"},'git commit -m "conventional commit formatted message"\n')),(0,o.kt)("ol",{start:9},(0,o.kt)("li",{parentName:"ol"},"Before you send the pull request, be sure to rebase onto the upstream source. This ensures your code is running on the latest available code.")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-shell"},"git fetch upstream\ngit rebase upstream/main\n")),(0,o.kt)("ol",{start:10},(0,o.kt)("li",{parentName:"ol"},"Push to your fork.")),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-shell"},"git push origin feature/my-new-feature\n")),(0,o.kt)("ol",{start:11},(0,o.kt)("li",{parentName:"ol"},"Submit a pull request to the original repository (via Github interface). Please provide us with some explanation of why you made the changes you made. For new features make sure to explain a standard use case to us.")),(0,o.kt)("p",null,"That's it... thank you for your contribution!"),(0,o.kt)("p",null,"After your pull request is merged, you can safely delete your branch."),(0,o.kt)("h2",{id:"code-review-process"},"Code review process"),(0,o.kt)("p",null,"The core team looks at pull requests on a regular basis. After feedback has been given we expect responses within three weeks. After three weeks we may close the pull request if it isn't showing any activity."))}p.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/c66b78d2.a4ca6671.js b/assets/js/c66b78d2.a4ca6671.js new file mode 100644 index 00000000..2ac80fa6 --- /dev/null +++ b/assets/js/c66b78d2.a4ca6671.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[6],{2369:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>p,contentTitle:()=>s,default:()=>u,frontMatter:()=>o,metadata:()=>i,toc:()=>c});var n=a(7462),r=(a(7294),a(3905));a(1839);const o={},s="Starting services",i={unversionedId:"about/running/starting-services",id:"about/running/starting-services",title:"Starting services",description:"You can start running:",source:"@site/docs/about/running/03-starting-services.md",sourceDirName:"about/running",slug:"/about/running/starting-services",permalink:"/template-fastapi-react/docs/about/running/starting-services",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/about/running/03-starting-services.md",tags:[],version:"current",sidebarPosition:3,frontMatter:{},sidebar:"about",previous:{title:"Configuration",permalink:"/template-fastapi-react/docs/about/running/configure"}},p={},c=[],l={toc:c};function u(t){let{components:e,...a}=t;return(0,r.kt)("wrapper",(0,n.Z)({},l,a,{components:e,mdxType:"MDXLayout"}),(0,r.kt)("h1",{id:"starting-services"},"Starting services"),(0,r.kt)("p",null,"You can start running:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-shell"},"docker compose up\n")),(0,r.kt)("p",null,"The web app will be served at ",(0,r.kt)("a",{parentName:"p",href:"http://localhost"},"http://localhost")),(0,r.kt)("p",null,"The API documentation can be found at ",(0,r.kt)("a",{parentName:"p",href:"http://localhost/api/docs"},"http://localhost/api/docs")),(0,r.kt)("p",null,"The OpenAPI spec can be found at ",(0,r.kt)("a",{parentName:"p",href:"http://localhost/api/openapi.json"},"http://localhost/api/openapi.json")),(0,r.kt)("details",null,(0,r.kt)("summary",null,"Skip Docker (not recommended)"),(0,r.kt)("p",null,"Navigate to the /api folder, activate local venv, then start backend app.py with Uvicorn:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-shell"},"cd api/src/ # go to the location of app.py\nuvicorn app:create_app --reload\n")),(0,r.kt)("p",null,"Navigate to the /web folder, and then start web application:"),(0,r.kt)("pre",null,(0,r.kt)("code",{parentName:"pre",className:"language-shell"},"yarn start\n"))))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/common.53c69b33.js b/assets/js/common.53c69b33.js new file mode 100644 index 00000000..a32c1e80 --- /dev/null +++ b/assets/js/common.53c69b33.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[592],{3905:(t,e,n)=>{n.d(e,{Zo:()=>u,kt:()=>f});var r=n(7294);function i(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function a(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function o(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?a(Object(n),!0).forEach((function(e){i(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):a(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function s(t,e){if(null==t)return{};var n,r,i=function(t,e){if(null==t)return{};var n,r,i={},a=Object.keys(t);for(r=0;r<a.length;r++)n=a[r],e.indexOf(n)>=0||(i[n]=t[n]);return i}(t,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);for(r=0;r<a.length;r++)n=a[r],e.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(i[n]=t[n])}return i}var c=r.createContext({}),l=function(t){var e=r.useContext(c),n=e;return t&&(n="function"==typeof t?t(e):o(o({},e),t)),n},u=function(t){var e=l(t.components);return r.createElement(c.Provider,{value:e},t.children)},h={inlineCode:"code",wrapper:function(t){var e=t.children;return r.createElement(r.Fragment,{},e)}},d=r.forwardRef((function(t,e){var n=t.components,i=t.mdxType,a=t.originalType,c=t.parentName,u=s(t,["components","mdxType","originalType","parentName"]),d=l(n),f=i,p=d["".concat(c,".").concat(f)]||d[f]||h[f]||a;return n?r.createElement(p,o(o({ref:e},u),{},{components:n})):r.createElement(p,o({ref:e},u))}));function f(t,e){var n=arguments,i=e&&e.mdxType;if("string"==typeof t||i){var a=n.length,o=new Array(a);o[0]=d;var s={};for(var c in e)hasOwnProperty.call(e,c)&&(s[c]=e[c]);s.originalType=t,s.mdxType="string"==typeof t?t:i,o[1]=s;for(var l=2;l<a;l++)o[l]=n[l];return r.createElement.apply(null,o)}return r.createElement.apply(null,n)}d.displayName="MDXCreateElement"},1839:(t,e,n)=>{n.d(e,{G:()=>u});var r=n(7294),i={2536:(t,e,n)=>{t=n.nmd(t);var r=function(){var t=function(t,e,n,r){for(n=n||{},r=t.length;r--;n[t[r]]=e);return n},e=[1,6],n=[1,7],r=[1,8],i=[1,9],a=[1,16],o=[1,11],s=[1,12],l=[1,13],u=[1,14],h=[1,15],d=[1,27],f=[1,33],p=[1,34],g=[1,35],y=[1,36],m=[1,37],b=[1,72],v=[1,73],_=[1,74],x=[1,75],k=[1,76],w=[1,77],E=[1,78],T=[1,38],C=[1,39],S=[1,40],A=[1,41],M=[1,42],O=[1,43],N=[1,44],D=[1,45],B=[1,46],L=[1,47],I=[1,48],F=[1,49],R=[1,50],P=[1,51],j=[1,52],z=[1,53],Y=[1,54],U=[1,55],$=[1,56],W=[1,57],q=[1,59],H=[1,60],V=[1,61],G=[1,62],X=[1,63],Z=[1,64],Q=[1,65],K=[1,66],J=[1,67],tt=[1,68],et=[1,69],nt=[24,52],rt=[24,44,46,47,48,49,50,51,52,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84],it=[15,24,44,46,47,48,49,50,51,52,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84],at=[1,94],ot=[1,95],st=[1,96],ct=[1,97],lt=[15,24,52],ut=[7,8,9,10,18,22,25,26,27,28],ht=[15,24,43,52],dt=[15,24,43,52,86,87,89,90],ft=[15,43],pt=[44,46,47,48,49,50,51,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84],gt={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,directive:6,direction_tb:7,direction_bt:8,direction_rl:9,direction_lr:10,graphConfig:11,openDirective:12,typeDirective:13,closeDirective:14,NEWLINE:15,":":16,argDirective:17,open_directive:18,type_directive:19,arg_directive:20,close_directive:21,C4_CONTEXT:22,statements:23,EOF:24,C4_CONTAINER:25,C4_COMPONENT:26,C4_DYNAMIC:27,C4_DEPLOYMENT:28,otherStatements:29,diagramStatements:30,otherStatement:31,title:32,accDescription:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,boundaryStatement:39,boundaryStartStatement:40,boundaryStopStatement:41,boundaryStart:42,LBRACE:43,ENTERPRISE_BOUNDARY:44,attributes:45,SYSTEM_BOUNDARY:46,BOUNDARY:47,CONTAINER_BOUNDARY:48,NODE:49,NODE_L:50,NODE_R:51,RBRACE:52,diagramStatement:53,PERSON:54,PERSON_EXT:55,SYSTEM:56,SYSTEM_DB:57,SYSTEM_QUEUE:58,SYSTEM_EXT:59,SYSTEM_EXT_DB:60,SYSTEM_EXT_QUEUE:61,CONTAINER:62,CONTAINER_DB:63,CONTAINER_QUEUE:64,CONTAINER_EXT:65,CONTAINER_EXT_DB:66,CONTAINER_EXT_QUEUE:67,COMPONENT:68,COMPONENT_DB:69,COMPONENT_QUEUE:70,COMPONENT_EXT:71,COMPONENT_EXT_DB:72,COMPONENT_EXT_QUEUE:73,REL:74,BIREL:75,REL_U:76,REL_D:77,REL_L:78,REL_R:79,REL_B:80,REL_INDEX:81,UPDATE_EL_STYLE:82,UPDATE_REL_STYLE:83,UPDATE_LAYOUT_CONFIG:84,attribute:85,STR:86,STR_KEY:87,STR_VALUE:88,ATTRIBUTE:89,ATTRIBUTE_EMPTY:90,$accept:0,$end:1},terminals_:{2:"error",7:"direction_tb",8:"direction_bt",9:"direction_rl",10:"direction_lr",15:"NEWLINE",16:":",18:"open_directive",19:"type_directive",20:"arg_directive",21:"close_directive",22:"C4_CONTEXT",24:"EOF",25:"C4_CONTAINER",26:"C4_COMPONENT",27:"C4_DYNAMIC",28:"C4_DEPLOYMENT",32:"title",33:"accDescription",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",43:"LBRACE",44:"ENTERPRISE_BOUNDARY",46:"SYSTEM_BOUNDARY",47:"BOUNDARY",48:"CONTAINER_BOUNDARY",49:"NODE",50:"NODE_L",51:"NODE_R",52:"RBRACE",54:"PERSON",55:"PERSON_EXT",56:"SYSTEM",57:"SYSTEM_DB",58:"SYSTEM_QUEUE",59:"SYSTEM_EXT",60:"SYSTEM_EXT_DB",61:"SYSTEM_EXT_QUEUE",62:"CONTAINER",63:"CONTAINER_DB",64:"CONTAINER_QUEUE",65:"CONTAINER_EXT",66:"CONTAINER_EXT_DB",67:"CONTAINER_EXT_QUEUE",68:"COMPONENT",69:"COMPONENT_DB",70:"COMPONENT_QUEUE",71:"COMPONENT_EXT",72:"COMPONENT_EXT_DB",73:"COMPONENT_EXT_QUEUE",74:"REL",75:"BIREL",76:"REL_U",77:"REL_D",78:"REL_L",79:"REL_R",80:"REL_B",81:"REL_INDEX",82:"UPDATE_EL_STYLE",83:"UPDATE_REL_STYLE",84:"UPDATE_LAYOUT_CONFIG",86:"STR",87:"STR_KEY",88:"STR_VALUE",89:"ATTRIBUTE",90:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[3,2],[5,1],[5,1],[5,1],[5,1],[4,1],[6,4],[6,6],[12,1],[13,1],[17,1],[14,1],[11,4],[11,4],[11,4],[11,4],[11,4],[23,1],[23,1],[23,2],[29,1],[29,2],[29,3],[31,1],[31,1],[31,2],[31,2],[31,1],[39,3],[40,3],[40,3],[40,4],[42,2],[42,2],[42,2],[42,2],[42,2],[42,2],[42,2],[41,1],[30,1],[30,2],[30,3],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,1],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[45,1],[45,2],[85,1],[85,2],[85,1],[85,1]],performAction:function(t,e,n,r,i,a,o){var s=a.length-1;switch(i){case 4:r.setDirection("TB");break;case 5:r.setDirection("BT");break;case 6:r.setDirection("RL");break;case 7:r.setDirection("LR");break;case 11:console.log("open_directive: ",a[s]),r.parseDirective("%%{","open_directive");break;case 12:break;case 13:a[s]=a[s].trim().replace(/'/g,'"'),console.log("arg_directive: ",a[s]),r.parseDirective(a[s],"arg_directive");break;case 14:console.log("close_directive: ",a[s]),r.parseDirective("}%%","close_directive","c4Context");break;case 15:case 16:case 17:case 18:case 19:r.setC4Type(a[s-3]);break;case 26:r.setTitle(a[s].substring(6)),this.$=a[s].substring(6);break;case 27:r.setAccDescription(a[s].substring(15)),this.$=a[s].substring(15);break;case 28:this.$=a[s].trim(),r.setTitle(this.$);break;case 29:case 30:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 35:case 36:console.log(a[s-1],JSON.stringify(a[s])),a[s].splice(2,0,"ENTERPRISE"),r.addPersonOrSystemBoundary(...a[s]),this.$=a[s];break;case 37:console.log(a[s-1],JSON.stringify(a[s])),r.addPersonOrSystemBoundary(...a[s]),this.$=a[s];break;case 38:console.log(a[s-1],JSON.stringify(a[s])),a[s].splice(2,0,"CONTAINER"),r.addContainerBoundary(...a[s]),this.$=a[s];break;case 39:console.log(a[s-1],JSON.stringify(a[s])),r.addDeploymentNode("node",...a[s]),this.$=a[s];break;case 40:console.log(a[s-1],JSON.stringify(a[s])),r.addDeploymentNode("nodeL",...a[s]),this.$=a[s];break;case 41:console.log(a[s-1],JSON.stringify(a[s])),r.addDeploymentNode("nodeR",...a[s]),this.$=a[s];break;case 42:r.popBoundaryParseStack();break;case 46:console.log(a[s-1],JSON.stringify(a[s])),r.addPersonOrSystem("person",...a[s]),this.$=a[s];break;case 47:console.log(a[s-1],JSON.stringify(a[s])),r.addPersonOrSystem("external_person",...a[s]),this.$=a[s];break;case 48:console.log(a[s-1],JSON.stringify(a[s])),r.addPersonOrSystem("system",...a[s]),this.$=a[s];break;case 49:console.log(a[s-1],JSON.stringify(a[s])),r.addPersonOrSystem("system_db",...a[s]),this.$=a[s];break;case 50:console.log(a[s-1],JSON.stringify(a[s])),r.addPersonOrSystem("system_queue",...a[s]),this.$=a[s];break;case 51:console.log(a[s-1],JSON.stringify(a[s])),r.addPersonOrSystem("external_system",...a[s]),this.$=a[s];break;case 52:console.log(a[s-1],JSON.stringify(a[s])),r.addPersonOrSystem("external_system_db",...a[s]),this.$=a[s];break;case 53:console.log(a[s-1],JSON.stringify(a[s])),r.addPersonOrSystem("external_system_queue",...a[s]),this.$=a[s];break;case 54:console.log(a[s-1],JSON.stringify(a[s])),r.addContainer("container",...a[s]),this.$=a[s];break;case 55:console.log(a[s-1],JSON.stringify(a[s])),r.addContainer("container_db",...a[s]),this.$=a[s];break;case 56:console.log(a[s-1],JSON.stringify(a[s])),r.addContainer("container_queue",...a[s]),this.$=a[s];break;case 57:console.log(a[s-1],JSON.stringify(a[s])),r.addContainer("external_container",...a[s]),this.$=a[s];break;case 58:console.log(a[s-1],JSON.stringify(a[s])),r.addContainer("external_container_db",...a[s]),this.$=a[s];break;case 59:console.log(a[s-1],JSON.stringify(a[s])),r.addContainer("external_container_queue",...a[s]),this.$=a[s];break;case 60:console.log(a[s-1],JSON.stringify(a[s])),r.addComponent("component",...a[s]),this.$=a[s];break;case 61:console.log(a[s-1],JSON.stringify(a[s])),r.addComponent("component_db",...a[s]),this.$=a[s];break;case 62:console.log(a[s-1],JSON.stringify(a[s])),r.addComponent("component_queue",...a[s]),this.$=a[s];break;case 63:console.log(a[s-1],JSON.stringify(a[s])),r.addComponent("external_component",...a[s]),this.$=a[s];break;case 64:console.log(a[s-1],JSON.stringify(a[s])),r.addComponent("external_component_db",...a[s]),this.$=a[s];break;case 65:console.log(a[s-1],JSON.stringify(a[s])),r.addComponent("external_component_queue",...a[s]),this.$=a[s];break;case 67:console.log(a[s-1],JSON.stringify(a[s])),r.addRel("rel",...a[s]),this.$=a[s];break;case 68:console.log(a[s-1],JSON.stringify(a[s])),r.addRel("birel",...a[s]),this.$=a[s];break;case 69:console.log(a[s-1],JSON.stringify(a[s])),r.addRel("rel_u",...a[s]),this.$=a[s];break;case 70:console.log(a[s-1],JSON.stringify(a[s])),r.addRel("rel_d",...a[s]),this.$=a[s];break;case 71:console.log(a[s-1],JSON.stringify(a[s])),r.addRel("rel_l",...a[s]),this.$=a[s];break;case 72:console.log(a[s-1],JSON.stringify(a[s])),r.addRel("rel_r",...a[s]),this.$=a[s];break;case 73:console.log(a[s-1],JSON.stringify(a[s])),r.addRel("rel_b",...a[s]),this.$=a[s];break;case 74:console.log(a[s-1],JSON.stringify(a[s])),a[s].splice(0,1),r.addRel("rel",...a[s]),this.$=a[s];break;case 75:console.log(a[s-1],JSON.stringify(a[s])),r.updateElStyle("update_el_style",...a[s]),this.$=a[s];break;case 76:console.log(a[s-1],JSON.stringify(a[s])),r.updateRelStyle("update_rel_style",...a[s]),this.$=a[s];break;case 77:console.log(a[s-1],JSON.stringify(a[s])),r.updateLayoutConfig("update_layout_config",...a[s]),this.$=a[s];break;case 78:console.log("PUSH ATTRIBUTE: ",a[s]),this.$=[a[s]];break;case 79:console.log("PUSH ATTRIBUTE: ",a[s-1]),a[s].unshift(a[s-1]),this.$=a[s];break;case 80:case 82:this.$=a[s].trim();break;case 81:console.log("kv: ",a[s-1],a[s]);let t={};t[a[s-1].trim()]=a[s].trim(),this.$=t;break;case 83:this.$=""}},table:[{3:1,4:2,5:3,6:4,7:e,8:n,9:r,10:i,11:5,12:10,18:a,22:o,25:s,26:l,27:u,28:h},{1:[3]},{1:[2,1]},{1:[2,2]},{3:17,4:2,5:3,6:4,7:e,8:n,9:r,10:i,11:5,12:10,18:a,22:o,25:s,26:l,27:u,28:h},{1:[2,8]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{1:[2,7]},{13:18,19:[1,19]},{15:[1,20]},{15:[1,21]},{15:[1,22]},{15:[1,23]},{15:[1,24]},{19:[2,11]},{1:[2,3]},{14:25,16:[1,26],21:d},t([16,21],[2,12]),{23:28,29:29,30:30,31:31,32:f,33:p,34:g,36:y,38:m,39:58,40:70,42:71,44:b,46:v,47:_,48:x,49:k,50:w,51:E,53:32,54:T,55:C,56:S,57:A,58:M,59:O,60:N,61:D,62:B,63:L,64:I,65:F,66:R,67:P,68:j,69:z,70:Y,71:U,72:$,73:W,74:q,75:H,76:V,77:G,78:X,79:Z,80:Q,81:K,82:J,83:tt,84:et},{23:79,29:29,30:30,31:31,32:f,33:p,34:g,36:y,38:m,39:58,40:70,42:71,44:b,46:v,47:_,48:x,49:k,50:w,51:E,53:32,54:T,55:C,56:S,57:A,58:M,59:O,60:N,61:D,62:B,63:L,64:I,65:F,66:R,67:P,68:j,69:z,70:Y,71:U,72:$,73:W,74:q,75:H,76:V,77:G,78:X,79:Z,80:Q,81:K,82:J,83:tt,84:et},{23:80,29:29,30:30,31:31,32:f,33:p,34:g,36:y,38:m,39:58,40:70,42:71,44:b,46:v,47:_,48:x,49:k,50:w,51:E,53:32,54:T,55:C,56:S,57:A,58:M,59:O,60:N,61:D,62:B,63:L,64:I,65:F,66:R,67:P,68:j,69:z,70:Y,71:U,72:$,73:W,74:q,75:H,76:V,77:G,78:X,79:Z,80:Q,81:K,82:J,83:tt,84:et},{23:81,29:29,30:30,31:31,32:f,33:p,34:g,36:y,38:m,39:58,40:70,42:71,44:b,46:v,47:_,48:x,49:k,50:w,51:E,53:32,54:T,55:C,56:S,57:A,58:M,59:O,60:N,61:D,62:B,63:L,64:I,65:F,66:R,67:P,68:j,69:z,70:Y,71:U,72:$,73:W,74:q,75:H,76:V,77:G,78:X,79:Z,80:Q,81:K,82:J,83:tt,84:et},{23:82,29:29,30:30,31:31,32:f,33:p,34:g,36:y,38:m,39:58,40:70,42:71,44:b,46:v,47:_,48:x,49:k,50:w,51:E,53:32,54:T,55:C,56:S,57:A,58:M,59:O,60:N,61:D,62:B,63:L,64:I,65:F,66:R,67:P,68:j,69:z,70:Y,71:U,72:$,73:W,74:q,75:H,76:V,77:G,78:X,79:Z,80:Q,81:K,82:J,83:tt,84:et},{15:[1,83]},{17:84,20:[1,85]},{15:[2,14]},{24:[1,86]},t(nt,[2,20],{53:32,39:58,40:70,42:71,30:87,44:b,46:v,47:_,48:x,49:k,50:w,51:E,54:T,55:C,56:S,57:A,58:M,59:O,60:N,61:D,62:B,63:L,64:I,65:F,66:R,67:P,68:j,69:z,70:Y,71:U,72:$,73:W,74:q,75:H,76:V,77:G,78:X,79:Z,80:Q,81:K,82:J,83:tt,84:et}),t(nt,[2,21]),t(rt,[2,23],{15:[1,88]}),t(nt,[2,43],{15:[1,89]}),t(it,[2,26]),t(it,[2,27]),{35:[1,90]},{37:[1,91]},t(it,[2,30]),{45:92,85:93,86:at,87:ot,89:st,90:ct},{45:98,85:93,86:at,87:ot,89:st,90:ct},{45:99,85:93,86:at,87:ot,89:st,90:ct},{45:100,85:93,86:at,87:ot,89:st,90:ct},{45:101,85:93,86:at,87:ot,89:st,90:ct},{45:102,85:93,86:at,87:ot,89:st,90:ct},{45:103,85:93,86:at,87:ot,89:st,90:ct},{45:104,85:93,86:at,87:ot,89:st,90:ct},{45:105,85:93,86:at,87:ot,89:st,90:ct},{45:106,85:93,86:at,87:ot,89:st,90:ct},{45:107,85:93,86:at,87:ot,89:st,90:ct},{45:108,85:93,86:at,87:ot,89:st,90:ct},{45:109,85:93,86:at,87:ot,89:st,90:ct},{45:110,85:93,86:at,87:ot,89:st,90:ct},{45:111,85:93,86:at,87:ot,89:st,90:ct},{45:112,85:93,86:at,87:ot,89:st,90:ct},{45:113,85:93,86:at,87:ot,89:st,90:ct},{45:114,85:93,86:at,87:ot,89:st,90:ct},{45:115,85:93,86:at,87:ot,89:st,90:ct},{45:116,85:93,86:at,87:ot,89:st,90:ct},t(lt,[2,66]),{45:117,85:93,86:at,87:ot,89:st,90:ct},{45:118,85:93,86:at,87:ot,89:st,90:ct},{45:119,85:93,86:at,87:ot,89:st,90:ct},{45:120,85:93,86:at,87:ot,89:st,90:ct},{45:121,85:93,86:at,87:ot,89:st,90:ct},{45:122,85:93,86:at,87:ot,89:st,90:ct},{45:123,85:93,86:at,87:ot,89:st,90:ct},{45:124,85:93,86:at,87:ot,89:st,90:ct},{45:125,85:93,86:at,87:ot,89:st,90:ct},{45:126,85:93,86:at,87:ot,89:st,90:ct},{45:127,85:93,86:at,87:ot,89:st,90:ct},{30:128,39:58,40:70,42:71,44:b,46:v,47:_,48:x,49:k,50:w,51:E,53:32,54:T,55:C,56:S,57:A,58:M,59:O,60:N,61:D,62:B,63:L,64:I,65:F,66:R,67:P,68:j,69:z,70:Y,71:U,72:$,73:W,74:q,75:H,76:V,77:G,78:X,79:Z,80:Q,81:K,82:J,83:tt,84:et},{15:[1,130],43:[1,129]},{45:131,85:93,86:at,87:ot,89:st,90:ct},{45:132,85:93,86:at,87:ot,89:st,90:ct},{45:133,85:93,86:at,87:ot,89:st,90:ct},{45:134,85:93,86:at,87:ot,89:st,90:ct},{45:135,85:93,86:at,87:ot,89:st,90:ct},{45:136,85:93,86:at,87:ot,89:st,90:ct},{45:137,85:93,86:at,87:ot,89:st,90:ct},{24:[1,138]},{24:[1,139]},{24:[1,140]},{24:[1,141]},t(ut,[2,9]),{14:142,21:d},{21:[2,13]},{1:[2,15]},t(nt,[2,22]),t(rt,[2,24],{31:31,29:143,32:f,33:p,34:g,36:y,38:m}),t(nt,[2,44],{29:29,30:30,31:31,53:32,39:58,40:70,42:71,23:144,32:f,33:p,34:g,36:y,38:m,44:b,46:v,47:_,48:x,49:k,50:w,51:E,54:T,55:C,56:S,57:A,58:M,59:O,60:N,61:D,62:B,63:L,64:I,65:F,66:R,67:P,68:j,69:z,70:Y,71:U,72:$,73:W,74:q,75:H,76:V,77:G,78:X,79:Z,80:Q,81:K,82:J,83:tt,84:et}),t(it,[2,28]),t(it,[2,29]),t(lt,[2,46]),t(ht,[2,78],{85:93,45:145,86:at,87:ot,89:st,90:ct}),t(dt,[2,80]),{88:[1,146]},t(dt,[2,82]),t(dt,[2,83]),t(lt,[2,47]),t(lt,[2,48]),t(lt,[2,49]),t(lt,[2,50]),t(lt,[2,51]),t(lt,[2,52]),t(lt,[2,53]),t(lt,[2,54]),t(lt,[2,55]),t(lt,[2,56]),t(lt,[2,57]),t(lt,[2,58]),t(lt,[2,59]),t(lt,[2,60]),t(lt,[2,61]),t(lt,[2,62]),t(lt,[2,63]),t(lt,[2,64]),t(lt,[2,65]),t(lt,[2,67]),t(lt,[2,68]),t(lt,[2,69]),t(lt,[2,70]),t(lt,[2,71]),t(lt,[2,72]),t(lt,[2,73]),t(lt,[2,74]),t(lt,[2,75]),t(lt,[2,76]),t(lt,[2,77]),{41:147,52:[1,148]},{15:[1,149]},{43:[1,150]},t(ft,[2,35]),t(ft,[2,36]),t(ft,[2,37]),t(ft,[2,38]),t(ft,[2,39]),t(ft,[2,40]),t(ft,[2,41]),{1:[2,16]},{1:[2,17]},{1:[2,18]},{1:[2,19]},{15:[1,151]},t(rt,[2,25]),t(nt,[2,45]),t(ht,[2,79]),t(dt,[2,81]),t(lt,[2,31]),t(lt,[2,42]),t(pt,[2,32]),t(pt,[2,33],{15:[1,152]}),t(ut,[2,10]),t(pt,[2,34])],defaultActions:{2:[2,1],3:[2,2],5:[2,8],6:[2,4],7:[2,5],8:[2,6],9:[2,7],16:[2,11],17:[2,3],27:[2,14],85:[2,13],86:[2,15],138:[2,16],139:[2,17],140:[2,18],141:[2,19]},parseError:function(t,e){if(!e.recoverable){var n=new Error(t);throw n.hash=e,n}this.trace(t)},parse:function(t){var e=this,n=[0],r=[],i=[null],a=[],o=this.table,s="",c=0,l=0,u=0,h=2,d=1,f=a.slice.call(arguments,1),p=Object.create(this.lexer),g={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(g.yy[y]=this.yy[y]);p.setInput(t,g.yy),g.yy.lexer=p,g.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var m=p.yylloc;a.push(m);var b=p.options&&p.options.ranges;function v(){var t;return"number"!=typeof(t=r.pop()||p.lex()||d)&&(t instanceof Array&&(t=(r=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var _,x,k,w,E,T,C,S,A,M={};;){if(k=n[n.length-1],this.defaultActions[k]?w=this.defaultActions[k]:(null==_&&(_=v()),w=o[k]&&o[k][_]),void 0===w||!w.length||!w[0]){var O="";for(T in A=[],o[k])this.terminals_[T]&&T>h&&A.push("'"+this.terminals_[T]+"'");O=p.showPosition?"Parse error on line "+(c+1)+":\n"+p.showPosition()+"\nExpecting "+A.join(", ")+", got '"+(this.terminals_[_]||_)+"'":"Parse error on line "+(c+1)+": Unexpected "+(_==d?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(O,{text:p.match,token:this.terminals_[_]||_,line:p.yylineno,loc:m,expected:A})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+k+", token: "+_);switch(w[0]){case 1:n.push(_),i.push(p.yytext),a.push(p.yylloc),n.push(w[1]),_=null,x?(_=x,x=null):(l=p.yyleng,s=p.yytext,c=p.yylineno,m=p.yylloc,u>0&&u--);break;case 2:if(C=this.productions_[w[1]][1],M.$=i[i.length-C],M._$={first_line:a[a.length-(C||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(C||1)].first_column,last_column:a[a.length-1].last_column},b&&(M._$.range=[a[a.length-(C||1)].range[0],a[a.length-1].range[1]]),void 0!==(E=this.performAction.apply(M,[s,l,c,g.yy,w[1],i,a].concat(f))))return E;C&&(n=n.slice(0,-1*C*2),i=i.slice(0,-1*C),a=a.slice(0,-1*C)),n.push(this.productions_[w[1]][0]),i.push(M.$),a.push(M._$),S=o[n[n.length-2]][n[n.length-1]],n.push(S);break;case 3:return!0}}return!0}},yt={EOF:1,parseError:function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},setInput: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},input:function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput: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,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},test_match:function(t,e){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(r=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},next:function(){if(this.done)return this.EOF;var t,e,n,r;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;a<i.length;a++)if((n=this._input.match(this.rules[i[a]]))&&(!e||n[0].length>e[0].length)){if(e=n,r=a,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,i[a])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[r]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},pushState:function(t){this.begin(t)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(t,e,n,r){switch(n){case 0:return this.begin("open_directive"),18;case 1:return 7;case 2:return 8;case 3:return 9;case 4:return 10;case 5:return this.begin("type_directive"),19;case 6:return this.popState(),this.begin("arg_directive"),16;case 7:return this.popState(),this.popState(),21;case 8:return 20;case 9:return 32;case 10:return 33;case 11:return this.begin("acc_title"),34;case 12:return this.popState(),"acc_title_value";case 13:return this.begin("acc_descr"),36;case 14:return this.popState(),"acc_descr_value";case 15:this.begin("acc_descr_multiline");break;case 16:this.popState();break;case 17:return"acc_descr_multiline_value";case 18:case 21:break;case 19:c;break;case 20:return 15;case 22:return 22;case 23:return 25;case 24:return 26;case 25:return 27;case 26:return 28;case 27:return this.begin("person_ext"),console.log("begin person_ext"),55;case 28:return this.begin("person"),console.log("begin person"),54;case 29:return this.begin("system_ext_queue"),console.log("begin system_ext_queue"),61;case 30:return this.begin("system_ext_db"),console.log("begin system_ext_db"),60;case 31:return this.begin("system_ext"),console.log("begin system_ext"),59;case 32:return this.begin("system_queue"),console.log("begin system_queue"),58;case 33:return this.begin("system_db"),console.log("begin system_db"),57;case 34:return this.begin("system"),console.log("begin system"),56;case 35:return this.begin("boundary"),console.log("begin boundary"),47;case 36:return this.begin("enterprise_boundary"),console.log("begin enterprise_boundary"),44;case 37:return this.begin("system_boundary"),console.log("begin system_boundary"),46;case 38:return this.begin("container_ext_queue"),console.log("begin container_ext_queue"),67;case 39:return this.begin("container_ext_db"),console.log("begin container_ext_db"),66;case 40:return this.begin("container_ext"),console.log("begin container_ext"),65;case 41:return this.begin("container_queue"),console.log("begin container_queue"),64;case 42:return this.begin("container_db"),console.log("begin container_db"),63;case 43:return this.begin("container"),console.log("begin container"),62;case 44:return this.begin("container_boundary"),console.log("begin container_boundary"),48;case 45:return this.begin("component_ext_queue"),console.log("begin component_ext_queue"),73;case 46:return this.begin("component_ext_db"),console.log("begin component_ext_db"),72;case 47:return this.begin("component_ext"),console.log("begin component_ext"),71;case 48:return this.begin("component_queue"),console.log("begin component_queue"),70;case 49:return this.begin("component_db"),console.log("begin component_db"),69;case 50:return this.begin("component"),console.log("begin component"),68;case 51:case 52:return this.begin("node"),console.log("begin node"),49;case 53:return this.begin("node_l"),console.log("begin node_l"),50;case 54:return this.begin("node_r"),console.log("begin node_r"),51;case 55:return this.begin("rel"),console.log("begin rel"),74;case 56:return this.begin("birel"),console.log("begin birel"),75;case 57:case 58:return this.begin("rel_u"),console.log("begin rel_u"),76;case 59:case 60:return this.begin("rel_d"),console.log("begin rel_d"),77;case 61:case 62:return this.begin("rel_l"),console.log("begin rel_l"),78;case 63:case 64:return this.begin("rel_r"),console.log("begin rel_r"),79;case 65:return this.begin("rel_b"),console.log("begin rel_b"),80;case 66:return this.begin("rel_index"),console.log("begin rel_index"),81;case 67:return this.begin("update_el_style"),console.log("begin update_el_style"),82;case 68:return this.begin("update_rel_style"),console.log("begin update_rel_style"),83;case 69:return this.begin("update_layout_config"),console.log("begin update_layout_config"),84;case 70:return"EOF_IN_STRUCT";case 71:return console.log("begin attribute with ATTRIBUTE_EMPTY"),this.begin("attribute"),"ATTRIBUTE_EMPTY";case 72:console.log("begin attribute"),this.begin("attribute");break;case 73:console.log("STOP attribute"),this.popState(),console.log("STOP diagram"),this.popState();break;case 74:return console.log(",,"),90;case 75:console.log(",");break;case 76:return console.log("ATTRIBUTE_EMPTY"),90;case 77:console.log("begin string"),this.begin("string");break;case 78:console.log("STOP string"),this.popState();break;case 79:return console.log("STR"),"STR";case 80:console.log("begin string_kv"),this.begin("string_kv");break;case 81:return console.log("STR_KEY"),this.begin("string_kv_key"),"STR_KEY";case 82:console.log("begin string_kv_value"),this.popState(),this.begin("string_kv_value");break;case 83:return console.log("STR_VALUE"),"STR_VALUE";case 84:console.log("STOP string_kv_value"),this.popState(),this.popState();break;case 85:return console.log("not STR"),"STR";case 86:return console.log("begin boundary block"),"LBRACE";case 87:return console.log("STOP boundary block"),"RBRACE";case 88:return"SPACE";case 89:return"EOL";case 90:return 24}},rules:[/^(?:%%\{)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:((?:(?!\}%%)[^:.])*))/,/^(?::)/,/^(?:\}%%)/,/^(?:((?:(?!\}%%).|\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:[16,17],inclusive:!1},acc_descr:{rules:[14],inclusive:!1},acc_title:{rules:[12],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[7,8],inclusive:!1},type_directive:{rules:[6,7],inclusive:!1},open_directive:{rules:[5],inclusive:!1},string_kv_value:{rules:[83,84],inclusive:!1},string_kv_key:{rules:[82],inclusive:!1},string_kv:{rules:[81],inclusive:!1},string:{rules:[78,79],inclusive:!1},attribute:{rules:[73,74,75,76,77,80,85],inclusive:!1},update_layout_config:{rules:[70,71,72,73],inclusive:!1},update_rel_style:{rules:[70,71,72,73],inclusive:!1},update_el_style:{rules:[70,71,72,73],inclusive:!1},rel_b:{rules:[70,71,72,73],inclusive:!1},rel_r:{rules:[70,71,72,73],inclusive:!1},rel_l:{rules:[70,71,72,73],inclusive:!1},rel_d:{rules:[70,71,72,73],inclusive:!1},rel_u:{rules:[70,71,72,73],inclusive:!1},rel_bi:{rules:[],inclusive:!1},rel:{rules:[70,71,72,73],inclusive:!1},node_r:{rules:[70,71,72,73],inclusive:!1},node_l:{rules:[70,71,72,73],inclusive:!1},node:{rules:[70,71,72,73],inclusive:!1},index:{rules:[],inclusive:!1},rel_index:{rules:[70,71,72,73],inclusive:!1},component_ext_queue:{rules:[],inclusive:!1},component_ext_db:{rules:[70,71,72,73],inclusive:!1},component_ext:{rules:[70,71,72,73],inclusive:!1},component_queue:{rules:[70,71,72,73],inclusive:!1},component_db:{rules:[70,71,72,73],inclusive:!1},component:{rules:[70,71,72,73],inclusive:!1},container_boundary:{rules:[70,71,72,73],inclusive:!1},container_ext_queue:{rules:[],inclusive:!1},container_ext_db:{rules:[70,71,72,73],inclusive:!1},container_ext:{rules:[70,71,72,73],inclusive:!1},container_queue:{rules:[70,71,72,73],inclusive:!1},container_db:{rules:[70,71,72,73],inclusive:!1},container:{rules:[70,71,72,73],inclusive:!1},birel:{rules:[70,71,72,73],inclusive:!1},system_boundary:{rules:[70,71,72,73],inclusive:!1},enterprise_boundary:{rules:[70,71,72,73],inclusive:!1},boundary:{rules:[70,71,72,73],inclusive:!1},system_ext_queue:{rules:[70,71,72,73],inclusive:!1},system_ext_db:{rules:[70,71,72,73],inclusive:!1},system_ext:{rules:[70,71,72,73],inclusive:!1},system_queue:{rules:[70,71,72,73],inclusive:!1},system_db:{rules:[70,71,72,73],inclusive:!1},system:{rules:[70,71,72,73],inclusive:!1},person_ext:{rules:[70,71,72,73],inclusive:!1},person:{rules:[70,71,72,73],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,9,10,11,13,15,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,65,66,67,68,69,86,87,88,89,90],inclusive:!0}}};function mt(){this.yy={}}return gt.lexer=yt,mt.prototype=gt,gt.Parser=mt,new mt}();e.parser=r,e.Parser=r.Parser,e.parse=function(){return r.parse.apply(r,arguments)},e.main=function(t){t[1]||(console.log("Usage: "+t[0]+" FILE"),process.exit(1));var r=n(555).readFileSync(n(6470).normalize(t[1]),"utf8");return e.parser.parse(r)},n.c[n.s]===t&&e.main(process.argv.slice(1))},1362:(t,e,n)=>{t=n.nmd(t);var r=function(){var t=function(t,e,n,r){for(n=n||{},r=t.length;r--;n[t[r]]=e);return n},e=[1,3],n=[1,7],r=[1,8],i=[1,9],a=[1,10],o=[1,13],s=[1,12],c=[1,16,25],l=[1,20],u=[1,31],h=[1,32],d=[1,33],f=[1,35],p=[1,38],g=[1,36],y=[1,37],m=[1,39],b=[1,40],v=[1,41],_=[1,42],x=[1,45],k=[1,46],w=[1,47],E=[1,48],T=[16,25],C=[1,62],S=[1,63],A=[1,64],M=[1,65],O=[1,66],N=[1,67],D=[1,68],B=[16,25,32,44,45,53,56,57,58,59,60,61,62,67,69],L=[16,25,30,32,44,45,49,53,56,57,58,59,60,61,62,67,69,84,85,86,87],I=[5,8,9,10,11,16,19,23,25],F=[53,84,85,86,87],R=[53,61,62,84,85,86,87],P=[53,56,57,58,59,60,84,85,86,87],j=[16,25,32],z=[1,100],Y={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,statments:5,direction:6,directive:7,direction_tb:8,direction_bt:9,direction_rl:10,direction_lr:11,graphConfig:12,openDirective:13,typeDirective:14,closeDirective:15,NEWLINE:16,":":17,argDirective:18,open_directive:19,type_directive:20,arg_directive:21,close_directive:22,CLASS_DIAGRAM:23,statements:24,EOF:25,statement:26,className:27,alphaNumToken:28,classLiteralName:29,GENERICTYPE:30,relationStatement:31,LABEL:32,classStatement:33,methodStatement:34,annotationStatement:35,clickStatement:36,cssClassStatement:37,acc_title:38,acc_title_value:39,acc_descr:40,acc_descr_value:41,acc_descr_multiline_value:42,CLASS:43,STYLE_SEPARATOR:44,STRUCT_START:45,members:46,STRUCT_STOP:47,ANNOTATION_START:48,ANNOTATION_END:49,MEMBER:50,SEPARATOR:51,relation:52,STR:53,relationType:54,lineType:55,AGGREGATION:56,EXTENSION:57,COMPOSITION:58,DEPENDENCY:59,LOLLIPOP:60,LINE:61,DOTTED_LINE:62,CALLBACK:63,LINK:64,LINK_TARGET:65,CLICK:66,CALLBACK_NAME:67,CALLBACK_ARGS:68,HREF:69,CSSCLASS:70,commentToken:71,textToken:72,graphCodeTokens:73,textNoTagsToken:74,TAGSTART:75,TAGEND:76,"==":77,"--":78,PCT:79,DEFAULT:80,SPACE:81,MINUS:82,keywords:83,UNICODE_TEXT:84,NUM:85,ALPHA:86,BQUOTE_STR:87,$accept:0,$end:1},terminals_:{2:"error",5:"statments",8:"direction_tb",9:"direction_bt",10:"direction_rl",11:"direction_lr",16:"NEWLINE",17:":",19:"open_directive",20:"type_directive",21:"arg_directive",22:"close_directive",23:"CLASS_DIAGRAM",25:"EOF",30:"GENERICTYPE",32:"LABEL",38:"acc_title",39:"acc_title_value",40:"acc_descr",41:"acc_descr_value",42:"acc_descr_multiline_value",43:"CLASS",44:"STYLE_SEPARATOR",45:"STRUCT_START",47:"STRUCT_STOP",48:"ANNOTATION_START",49:"ANNOTATION_END",50:"MEMBER",51:"SEPARATOR",53:"STR",56:"AGGREGATION",57:"EXTENSION",58:"COMPOSITION",59:"DEPENDENCY",60:"LOLLIPOP",61:"LINE",62:"DOTTED_LINE",63:"CALLBACK",64:"LINK",65:"LINK_TARGET",66:"CLICK",67:"CALLBACK_NAME",68:"CALLBACK_ARGS",69:"HREF",70:"CSSCLASS",73:"graphCodeTokens",75:"TAGSTART",76:"TAGEND",77:"==",78:"--",79:"PCT",80:"DEFAULT",81:"SPACE",82:"MINUS",83:"keywords",84:"UNICODE_TEXT",85:"NUM",86:"ALPHA",87:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[3,1],[3,2],[6,1],[6,1],[6,1],[6,1],[4,1],[7,4],[7,6],[13,1],[14,1],[18,1],[15,1],[12,4],[24,1],[24,2],[24,3],[27,1],[27,1],[27,2],[27,2],[27,2],[26,1],[26,2],[26,1],[26,1],[26,1],[26,1],[26,1],[26,1],[26,1],[26,2],[26,2],[26,1],[33,2],[33,4],[33,5],[33,7],[35,4],[46,1],[46,2],[34,1],[34,2],[34,1],[34,1],[31,3],[31,4],[31,4],[31,5],[52,3],[52,2],[52,2],[52,1],[54,1],[54,1],[54,1],[54,1],[54,1],[55,1],[55,1],[36,3],[36,4],[36,3],[36,4],[36,4],[36,5],[36,3],[36,4],[36,4],[36,5],[36,3],[36,4],[36,4],[36,5],[37,3],[71,1],[71,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[72,1],[74,1],[74,1],[74,1],[74,1],[28,1],[28,1],[28,1],[29,1]],performAction:function(t,e,n,r,i,a,o){var s=a.length-1;switch(i){case 5:r.setDirection("TB");break;case 6:r.setDirection("BT");break;case 7:r.setDirection("RL");break;case 8:r.setDirection("LR");break;case 12:r.parseDirective("%%{","open_directive");break;case 13:r.parseDirective(a[s],"type_directive");break;case 14:a[s]=a[s].trim().replace(/'/g,'"'),r.parseDirective(a[s],"arg_directive");break;case 15:r.parseDirective("}%%","close_directive","class");break;case 20:case 21:this.$=a[s];break;case 22:this.$=a[s-1]+a[s];break;case 23:case 24:this.$=a[s-1]+"~"+a[s];break;case 25:r.addRelation(a[s]);break;case 26:a[s-1].title=r.cleanupLabel(a[s]),r.addRelation(a[s-1]);break;case 34:this.$=a[s].trim(),r.setAccTitle(this.$);break;case 35:case 36:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 37:r.addClass(a[s]);break;case 38:r.addClass(a[s-2]),r.setCssClass(a[s-2],a[s]);break;case 39:r.addClass(a[s-3]),r.addMembers(a[s-3],a[s-1]);break;case 40:r.addClass(a[s-5]),r.setCssClass(a[s-5],a[s-3]),r.addMembers(a[s-5],a[s-1]);break;case 41:r.addAnnotation(a[s],a[s-2]);break;case 42:this.$=[a[s]];break;case 43:a[s].push(a[s-1]),this.$=a[s];break;case 44:case 46:case 47:break;case 45:r.addMember(a[s-1],r.cleanupLabel(a[s]));break;case 48:this.$={id1:a[s-2],id2:a[s],relation:a[s-1],relationTitle1:"none",relationTitle2:"none"};break;case 49:this.$={id1:a[s-3],id2:a[s],relation:a[s-1],relationTitle1:a[s-2],relationTitle2:"none"};break;case 50:this.$={id1:a[s-3],id2:a[s],relation:a[s-2],relationTitle1:"none",relationTitle2:a[s-1]};break;case 51:this.$={id1:a[s-4],id2:a[s],relation:a[s-2],relationTitle1:a[s-3],relationTitle2:a[s-1]};break;case 52:this.$={type1:a[s-2],type2:a[s],lineType:a[s-1]};break;case 53:this.$={type1:"none",type2:a[s],lineType:a[s-1]};break;case 54:this.$={type1:a[s-1],type2:"none",lineType:a[s]};break;case 55:this.$={type1:"none",type2:"none",lineType:a[s]};break;case 56:this.$=r.relationType.AGGREGATION;break;case 57:this.$=r.relationType.EXTENSION;break;case 58:this.$=r.relationType.COMPOSITION;break;case 59:this.$=r.relationType.DEPENDENCY;break;case 60:this.$=r.relationType.LOLLIPOP;break;case 61:this.$=r.lineType.LINE;break;case 62:this.$=r.lineType.DOTTED_LINE;break;case 63:case 69:this.$=a[s-2],r.setClickEvent(a[s-1],a[s]);break;case 64:case 70:this.$=a[s-3],r.setClickEvent(a[s-2],a[s-1]),r.setTooltip(a[s-2],a[s]);break;case 65:case 73:this.$=a[s-2],r.setLink(a[s-1],a[s]);break;case 66:case 74:this.$=a[s-3],r.setLink(a[s-2],a[s-1],a[s]);break;case 67:case 75:this.$=a[s-3],r.setLink(a[s-2],a[s-1]),r.setTooltip(a[s-2],a[s]);break;case 68:case 76:this.$=a[s-4],r.setLink(a[s-3],a[s-2],a[s]),r.setTooltip(a[s-3],a[s-1]);break;case 71:this.$=a[s-3],r.setClickEvent(a[s-2],a[s-1],a[s]);break;case 72:this.$=a[s-4],r.setClickEvent(a[s-3],a[s-2],a[s-1]),r.setTooltip(a[s-3],a[s]);break;case 77:r.setCssClass(a[s-1],a[s])}},table:[{3:1,4:2,5:e,6:4,7:5,8:n,9:r,10:i,11:a,12:6,13:11,19:o,23:s},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},{3:14,4:2,5:e,6:4,7:5,8:n,9:r,10:i,11:a,12:6,13:11,19:o,23:s},{1:[2,9]},t(c,[2,5]),t(c,[2,6]),t(c,[2,7]),t(c,[2,8]),{14:15,20:[1,16]},{16:[1,17]},{20:[2,12]},{1:[2,4]},{15:18,17:[1,19],22:l},t([17,22],[2,13]),{6:30,7:29,8:n,9:r,10:i,11:a,13:11,19:o,24:21,26:22,27:34,28:43,29:44,31:23,33:24,34:25,35:26,36:27,37:28,38:u,40:h,42:d,43:f,48:p,50:g,51:y,63:m,64:b,66:v,70:_,84:x,85:k,86:w,87:E},{16:[1,49]},{18:50,21:[1,51]},{16:[2,15]},{25:[1,52]},{16:[1,53],25:[2,17]},t(T,[2,25],{32:[1,54]}),t(T,[2,27]),t(T,[2,28]),t(T,[2,29]),t(T,[2,30]),t(T,[2,31]),t(T,[2,32]),t(T,[2,33]),{39:[1,55]},{41:[1,56]},t(T,[2,36]),t(T,[2,44],{52:57,54:60,55:61,32:[1,59],53:[1,58],56:C,57:S,58:A,59:M,60:O,61:N,62:D}),{27:69,28:43,29:44,84:x,85:k,86:w,87:E},t(T,[2,46]),t(T,[2,47]),{28:70,84:x,85:k,86:w},{27:71,28:43,29:44,84:x,85:k,86:w,87:E},{27:72,28:43,29:44,84:x,85:k,86:w,87:E},{27:73,28:43,29:44,84:x,85:k,86:w,87:E},{53:[1,74]},t(B,[2,20],{28:43,29:44,27:75,30:[1,76],84:x,85:k,86:w,87:E}),t(B,[2,21],{30:[1,77]}),t(L,[2,91]),t(L,[2,92]),t(L,[2,93]),t([16,25,30,32,44,45,53,56,57,58,59,60,61,62,67,69],[2,94]),t(I,[2,10]),{15:78,22:l},{22:[2,14]},{1:[2,16]},{6:30,7:29,8:n,9:r,10:i,11:a,13:11,19:o,24:79,25:[2,18],26:22,27:34,28:43,29:44,31:23,33:24,34:25,35:26,36:27,37:28,38:u,40:h,42:d,43:f,48:p,50:g,51:y,63:m,64:b,66:v,70:_,84:x,85:k,86:w,87:E},t(T,[2,26]),t(T,[2,34]),t(T,[2,35]),{27:80,28:43,29:44,53:[1,81],84:x,85:k,86:w,87:E},{52:82,54:60,55:61,56:C,57:S,58:A,59:M,60:O,61:N,62:D},t(T,[2,45]),{55:83,61:N,62:D},t(F,[2,55],{54:84,56:C,57:S,58:A,59:M,60:O}),t(R,[2,56]),t(R,[2,57]),t(R,[2,58]),t(R,[2,59]),t(R,[2,60]),t(P,[2,61]),t(P,[2,62]),t(T,[2,37],{44:[1,85],45:[1,86]}),{49:[1,87]},{53:[1,88]},{53:[1,89]},{67:[1,90],69:[1,91]},{28:92,84:x,85:k,86:w},t(B,[2,22]),t(B,[2,23]),t(B,[2,24]),{16:[1,93]},{25:[2,19]},t(j,[2,48]),{27:94,28:43,29:44,84:x,85:k,86:w,87:E},{27:95,28:43,29:44,53:[1,96],84:x,85:k,86:w,87:E},t(F,[2,54],{54:97,56:C,57:S,58:A,59:M,60:O}),t(F,[2,53]),{28:98,84:x,85:k,86:w},{46:99,50:z},{27:101,28:43,29:44,84:x,85:k,86:w,87:E},t(T,[2,63],{53:[1,102]}),t(T,[2,65],{53:[1,104],65:[1,103]}),t(T,[2,69],{53:[1,105],68:[1,106]}),t(T,[2,73],{53:[1,108],65:[1,107]}),t(T,[2,77]),t(I,[2,11]),t(j,[2,50]),t(j,[2,49]),{27:109,28:43,29:44,84:x,85:k,86:w,87:E},t(F,[2,52]),t(T,[2,38],{45:[1,110]}),{47:[1,111]},{46:112,47:[2,42],50:z},t(T,[2,41]),t(T,[2,64]),t(T,[2,66]),t(T,[2,67],{65:[1,113]}),t(T,[2,70]),t(T,[2,71],{53:[1,114]}),t(T,[2,74]),t(T,[2,75],{65:[1,115]}),t(j,[2,51]),{46:116,50:z},t(T,[2,39]),{47:[2,43]},t(T,[2,68]),t(T,[2,72]),t(T,[2,76]),{47:[1,117]},t(T,[2,40])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],6:[2,9],13:[2,12],14:[2,4],20:[2,15],51:[2,14],52:[2,16],79:[2,19],112:[2,43]},parseError:function(t,e){if(!e.recoverable){var n=new Error(t);throw n.hash=e,n}this.trace(t)},parse:function(t){var e=this,n=[0],r=[],i=[null],a=[],o=this.table,s="",c=0,l=0,u=0,h=2,d=1,f=a.slice.call(arguments,1),p=Object.create(this.lexer),g={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(g.yy[y]=this.yy[y]);p.setInput(t,g.yy),g.yy.lexer=p,g.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var m=p.yylloc;a.push(m);var b=p.options&&p.options.ranges;function v(){var t;return"number"!=typeof(t=r.pop()||p.lex()||d)&&(t instanceof Array&&(t=(r=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var _,x,k,w,E,T,C,S,A,M={};;){if(k=n[n.length-1],this.defaultActions[k]?w=this.defaultActions[k]:(null==_&&(_=v()),w=o[k]&&o[k][_]),void 0===w||!w.length||!w[0]){var O="";for(T in A=[],o[k])this.terminals_[T]&&T>h&&A.push("'"+this.terminals_[T]+"'");O=p.showPosition?"Parse error on line "+(c+1)+":\n"+p.showPosition()+"\nExpecting "+A.join(", ")+", got '"+(this.terminals_[_]||_)+"'":"Parse error on line "+(c+1)+": Unexpected "+(_==d?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(O,{text:p.match,token:this.terminals_[_]||_,line:p.yylineno,loc:m,expected:A})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+k+", token: "+_);switch(w[0]){case 1:n.push(_),i.push(p.yytext),a.push(p.yylloc),n.push(w[1]),_=null,x?(_=x,x=null):(l=p.yyleng,s=p.yytext,c=p.yylineno,m=p.yylloc,u>0&&u--);break;case 2:if(C=this.productions_[w[1]][1],M.$=i[i.length-C],M._$={first_line:a[a.length-(C||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(C||1)].first_column,last_column:a[a.length-1].last_column},b&&(M._$.range=[a[a.length-(C||1)].range[0],a[a.length-1].range[1]]),void 0!==(E=this.performAction.apply(M,[s,l,c,g.yy,w[1],i,a].concat(f))))return E;C&&(n=n.slice(0,-1*C*2),i=i.slice(0,-1*C),a=a.slice(0,-1*C)),n.push(this.productions_[w[1]][0]),i.push(M.$),a.push(M._$),S=o[n[n.length-2]][n[n.length-1]],n.push(S);break;case 3:return!0}}return!0}},U={EOF:1,parseError:function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},setInput: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},input:function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput: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,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},test_match:function(t,e){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(r=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},next:function(){if(this.done)return this.EOF;var t,e,n,r;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;a<i.length;a++)if((n=this._input.match(this.rules[i[a]]))&&(!e||n[0].length>e[0].length)){if(e=n,r=a,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,i[a])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[r]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},pushState:function(t){this.begin(t)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(t,e,n,r){switch(n){case 0:return this.begin("open_directive"),19;case 1:return 8;case 2:return 9;case 3:return 10;case 4:return 11;case 5:return this.begin("type_directive"),20;case 6:return this.popState(),this.begin("arg_directive"),17;case 7:return this.popState(),this.popState(),22;case 8:return 21;case 9:case 10:case 19:case 27:break;case 11:return this.begin("acc_title"),38;case 12:return this.popState(),"acc_title_value";case 13:return this.begin("acc_descr"),40;case 14:return this.popState(),"acc_descr_value";case 15:this.begin("acc_descr_multiline");break;case 16:case 37:case 40:case 43:case 46:case 49:case 52:this.popState();break;case 17:return"acc_descr_multiline_value";case 18:return 16;case 20:case 21:return 23;case 22:return this.begin("struct"),45;case 23:return"EDGE_STATE";case 24:return"EOF_IN_STRUCT";case 25:return"OPEN_IN_STRUCT";case 26:return this.popState(),47;case 28:return"MEMBER";case 29:return 43;case 30:return 70;case 31:return 63;case 32:return 64;case 33:return 66;case 34:return 48;case 35:return 49;case 36:this.begin("generic");break;case 38:return"GENERICTYPE";case 39:this.begin("string");break;case 41:return"STR";case 42:this.begin("bqstring");break;case 44:return"BQUOTE_STR";case 45:this.begin("href");break;case 47:return 69;case 48:this.begin("callback_name");break;case 50:this.popState(),this.begin("callback_args");break;case 51:return 67;case 53:return 68;case 54:case 55:case 56:case 57:return 65;case 58:case 59:return 57;case 60:case 61:return 59;case 62:return 58;case 63:return 56;case 64:return 60;case 65:return 61;case 66:return 62;case 67:return 32;case 68:return 44;case 69:return 82;case 70:return"DOT";case 71:return"PLUS";case 72:return 79;case 73:case 74:return"EQUALS";case 75:return 86;case 76:return"PUNCTUATION";case 77:return 85;case 78:return 84;case 79:return 81;case 80:return 25}},rules:[/^(?:%%\{)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:((?:(?!\}%%)[^:.])*))/,/^(?::)/,/^(?:\}%%)/,/^(?:((?:(?!\}%%).|\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)/,/^(?:[{])/,/^(?:\[\*\])/,/^(?:$)/,/^(?:[{])/,/^(?:[}])/,/^(?:[\n])/,/^(?:[^{}\n]*)/,/^(?:class\b)/,/^(?:cssClass\b)/,/^(?:callback\b)/,/^(?:link\b)/,/^(?:click\b)/,/^(?:<<)/,/^(?:>>)/,/^(?:[~])/,/^(?:[~])/,/^(?:[^~]*)/,/^(?:["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:[`])/,/^(?:[`])/,/^(?:[^`]+)/,/^(?:href[\s]+["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:_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)/,/^(?:$)/],conditions:{acc_descr_multiline:{rules:[16,17],inclusive:!1},acc_descr:{rules:[14],inclusive:!1},acc_title:{rules:[12],inclusive:!1},arg_directive:{rules:[7,8],inclusive:!1},type_directive:{rules:[6,7],inclusive:!1},open_directive:{rules:[5],inclusive:!1},callback_args:{rules:[52,53],inclusive:!1},callback_name:{rules:[49,50,51],inclusive:!1},href:{rules:[46,47],inclusive:!1},struct:{rules:[23,24,25,26,27,28],inclusive:!1},generic:{rules:[37,38],inclusive:!1},bqstring:{rules:[43,44],inclusive:!1},string:{rules:[40,41],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,9,10,11,13,15,18,19,20,21,22,23,29,30,31,32,33,34,35,36,39,42,45,48,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80],inclusive:!0}}};function $(){this.yy={}}return Y.lexer=U,$.prototype=Y,Y.Parser=$,new $}();e.parser=r,e.Parser=r.Parser,e.parse=function(){return r.parse.apply(r,arguments)},e.main=function(t){t[1]||(console.log("Usage: "+t[0]+" FILE"),process.exit(1));var r=n(8218).readFileSync(n(6470).normalize(t[1]),"utf8");return e.parser.parse(r)},n.c[n.s]===t&&e.main(process.argv.slice(1))},5890:(t,e,n)=>{t=n.nmd(t);var r=function(){var t=function(t,e,n,r){for(n=n||{},r=t.length;r--;n[t[r]]=e);return n},e=[1,2],n=[1,5],r=[6,9,11,23,25,27,29,30,49],i=[1,17],a=[1,18],o=[1,19],s=[1,20],c=[1,21],l=[1,24],u=[1,29],h=[1,30],d=[1,31],f=[1,32],p=[6,9,11,15,20,23,25,27,29,30,42,43,44,45,49],g=[1,45],y=[30,46,47],m=[4,6,9,11,23,25,27,29,30,49],b=[42,43,44,45],v=[22,37],_=[1,64],x={trace:function(){},yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,directive:7,line:8,SPACE:9,statement:10,NEWLINE:11,openDirective:12,typeDirective:13,closeDirective:14,":":15,argDirective:16,entityName:17,relSpec:18,role:19,BLOCK_START:20,attributes:21,BLOCK_STOP:22,title:23,title_value:24,acc_title:25,acc_title_value:26,acc_descr:27,acc_descr_value:28,acc_descr_multiline_value:29,ALPHANUM:30,".":31,attribute:32,attributeType:33,attributeName:34,attributeKeyType:35,attributeComment:36,ATTRIBUTE_WORD:37,ATTRIBUTE_KEY:38,COMMENT:39,cardinality:40,relType:41,ZERO_OR_ONE:42,ZERO_OR_MORE:43,ONE_OR_MORE:44,ONLY_ONE:45,NON_IDENTIFYING:46,IDENTIFYING:47,WORD:48,open_directive:49,type_directive:50,arg_directive:51,close_directive:52,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",9:"SPACE",11:"NEWLINE",15:":",20:"BLOCK_START",22:"BLOCK_STOP",23:"title",24:"title_value",25:"acc_title",26:"acc_title_value",27:"acc_descr",28:"acc_descr_value",29:"acc_descr_multiline_value",30:"ALPHANUM",31:".",37:"ATTRIBUTE_WORD",38:"ATTRIBUTE_KEY",39:"COMMENT",42:"ZERO_OR_ONE",43:"ZERO_OR_MORE",44:"ONE_OR_MORE",45:"ONLY_ONE",46:"NON_IDENTIFYING",47:"IDENTIFYING",48:"WORD",49:"open_directive",50:"type_directive",51:"arg_directive",52:"close_directive"},productions_:[0,[3,3],[3,2],[5,0],[5,2],[8,2],[8,1],[8,1],[8,1],[7,4],[7,6],[10,1],[10,5],[10,4],[10,3],[10,1],[10,2],[10,2],[10,2],[10,1],[17,1],[17,3],[21,1],[21,2],[32,2],[32,3],[32,3],[32,4],[33,1],[34,1],[35,1],[36,1],[18,3],[40,1],[40,1],[40,1],[40,1],[41,1],[41,1],[19,1],[19,1],[12,1],[13,1],[16,1],[14,1]],performAction:function(t,e,n,r,i,a,o){var s=a.length-1;switch(i){case 1:break;case 3:case 7:case 8:this.$=[];break;case 4:a[s-1].push(a[s]),this.$=a[s-1];break;case 5:case 6:case 20:case 28:case 29:case 30:case 40:this.$=a[s];break;case 12:r.addEntity(a[s-4]),r.addEntity(a[s-2]),r.addRelationship(a[s-4],a[s],a[s-2],a[s-3]);break;case 13:r.addEntity(a[s-3]),r.addAttributes(a[s-3],a[s-1]);break;case 14:r.addEntity(a[s-2]);break;case 15:r.addEntity(a[s]);break;case 16:case 17:this.$=a[s].trim(),r.setAccTitle(this.$);break;case 18:case 19:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 21:this.$=a[s-2]+a[s-1]+a[s];break;case 22:this.$=[a[s]];break;case 23:a[s].push(a[s-1]),this.$=a[s];break;case 24:this.$={attributeType:a[s-1],attributeName:a[s]};break;case 25:this.$={attributeType:a[s-2],attributeName:a[s-1],attributeKeyType:a[s]};break;case 26:this.$={attributeType:a[s-2],attributeName:a[s-1],attributeComment:a[s]};break;case 27:this.$={attributeType:a[s-3],attributeName:a[s-2],attributeKeyType:a[s-1],attributeComment:a[s]};break;case 31:case 39:this.$=a[s].replace(/"/g,"");break;case 32:this.$={cardA:a[s],relType:a[s-1],cardB:a[s-2]};break;case 33:this.$=r.Cardinality.ZERO_OR_ONE;break;case 34:this.$=r.Cardinality.ZERO_OR_MORE;break;case 35:this.$=r.Cardinality.ONE_OR_MORE;break;case 36:this.$=r.Cardinality.ONLY_ONE;break;case 37:this.$=r.Identification.NON_IDENTIFYING;break;case 38:this.$=r.Identification.IDENTIFYING;break;case 41:r.parseDirective("%%{","open_directive");break;case 42:r.parseDirective(a[s],"type_directive");break;case 43:a[s]=a[s].trim().replace(/'/g,'"'),r.parseDirective(a[s],"arg_directive");break;case 44:r.parseDirective("}%%","close_directive","er")}},table:[{3:1,4:e,7:3,12:4,49:n},{1:[3]},t(r,[2,3],{5:6}),{3:7,4:e,7:3,12:4,49:n},{13:8,50:[1,9]},{50:[2,41]},{6:[1,10],7:15,8:11,9:[1,12],10:13,11:[1,14],12:4,17:16,23:i,25:a,27:o,29:s,30:c,49:n},{1:[2,2]},{14:22,15:[1,23],52:l},t([15,52],[2,42]),t(r,[2,8],{1:[2,1]}),t(r,[2,4]),{7:15,10:25,12:4,17:16,23:i,25:a,27:o,29:s,30:c,49:n},t(r,[2,6]),t(r,[2,7]),t(r,[2,11]),t(r,[2,15],{18:26,40:28,20:[1,27],42:u,43:h,44:d,45:f}),{24:[1,33]},{26:[1,34]},{28:[1,35]},t(r,[2,19]),t(p,[2,20],{31:[1,36]}),{11:[1,37]},{16:38,51:[1,39]},{11:[2,44]},t(r,[2,5]),{17:40,30:c},{21:41,22:[1,42],32:43,33:44,37:g},{41:46,46:[1,47],47:[1,48]},t(y,[2,33]),t(y,[2,34]),t(y,[2,35]),t(y,[2,36]),t(r,[2,16]),t(r,[2,17]),t(r,[2,18]),{17:49,30:c},t(m,[2,9]),{14:50,52:l},{52:[2,43]},{15:[1,51]},{22:[1,52]},t(r,[2,14]),{21:53,22:[2,22],32:43,33:44,37:g},{34:54,37:[1,55]},{37:[2,28]},{40:56,42:u,43:h,44:d,45:f},t(b,[2,37]),t(b,[2,38]),t(p,[2,21]),{11:[1,57]},{19:58,30:[1,60],48:[1,59]},t(r,[2,13]),{22:[2,23]},t(v,[2,24],{35:61,36:62,38:[1,63],39:_}),t([22,37,38,39],[2,29]),{30:[2,32]},t(m,[2,10]),t(r,[2,12]),t(r,[2,39]),t(r,[2,40]),t(v,[2,25],{36:65,39:_}),t(v,[2,26]),t([22,37,39],[2,30]),t(v,[2,31]),t(v,[2,27])],defaultActions:{5:[2,41],7:[2,2],24:[2,44],39:[2,43],45:[2,28],53:[2,23],56:[2,32]},parseError:function(t,e){if(!e.recoverable){var n=new Error(t);throw n.hash=e,n}this.trace(t)},parse:function(t){var e=this,n=[0],r=[],i=[null],a=[],o=this.table,s="",c=0,l=0,u=0,h=2,d=1,f=a.slice.call(arguments,1),p=Object.create(this.lexer),g={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(g.yy[y]=this.yy[y]);p.setInput(t,g.yy),g.yy.lexer=p,g.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var m=p.yylloc;a.push(m);var b=p.options&&p.options.ranges;function v(){var t;return"number"!=typeof(t=r.pop()||p.lex()||d)&&(t instanceof Array&&(t=(r=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var _,x,k,w,E,T,C,S,A,M={};;){if(k=n[n.length-1],this.defaultActions[k]?w=this.defaultActions[k]:(null==_&&(_=v()),w=o[k]&&o[k][_]),void 0===w||!w.length||!w[0]){var O="";for(T in A=[],o[k])this.terminals_[T]&&T>h&&A.push("'"+this.terminals_[T]+"'");O=p.showPosition?"Parse error on line "+(c+1)+":\n"+p.showPosition()+"\nExpecting "+A.join(", ")+", got '"+(this.terminals_[_]||_)+"'":"Parse error on line "+(c+1)+": Unexpected "+(_==d?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(O,{text:p.match,token:this.terminals_[_]||_,line:p.yylineno,loc:m,expected:A})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+k+", token: "+_);switch(w[0]){case 1:n.push(_),i.push(p.yytext),a.push(p.yylloc),n.push(w[1]),_=null,x?(_=x,x=null):(l=p.yyleng,s=p.yytext,c=p.yylineno,m=p.yylloc,u>0&&u--);break;case 2:if(C=this.productions_[w[1]][1],M.$=i[i.length-C],M._$={first_line:a[a.length-(C||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(C||1)].first_column,last_column:a[a.length-1].last_column},b&&(M._$.range=[a[a.length-(C||1)].range[0],a[a.length-1].range[1]]),void 0!==(E=this.performAction.apply(M,[s,l,c,g.yy,w[1],i,a].concat(f))))return E;C&&(n=n.slice(0,-1*C*2),i=i.slice(0,-1*C),a=a.slice(0,-1*C)),n.push(this.productions_[w[1]][0]),i.push(M.$),a.push(M._$),S=o[n[n.length-2]][n[n.length-1]],n.push(S);break;case 3:return!0}}return!0}},k={EOF:1,parseError:function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},setInput: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},input:function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput: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,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},test_match:function(t,e){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(r=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},next:function(){if(this.done)return this.EOF;var t,e,n,r;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;a<i.length;a++)if((n=this._input.match(this.rules[i[a]]))&&(!e||n[0].length>e[0].length)){if(e=n,r=a,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,i[a])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[r]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},pushState:function(t){this.begin(t)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(t,e,n,r){switch(n){case 0:return this.begin("acc_title"),25;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),27;case 3:return this.popState(),"acc_descr_value";case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return this.begin("open_directive"),49;case 8:return this.begin("type_directive"),50;case 9:return this.popState(),this.begin("arg_directive"),15;case 10:return this.popState(),this.popState(),52;case 11:return 51;case 12:case 13:case 15:case 20:case 25:break;case 14:return 11;case 16:return 9;case 17:return 48;case 18:return 4;case 19:return this.begin("block"),20;case 21:return 38;case 22:case 23:return 37;case 24:return 39;case 26:return this.popState(),22;case 27:case 40:return e.yytext[0];case 28:case 32:return 42;case 29:case 33:return 43;case 30:case 34:return 44;case 31:return 45;case 35:case 37:case 38:return 46;case 36:return 47;case 39:return 30;case 41:return 6}},rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:[\s]+)/i,/^(?:"[^"]*")/i,/^(?:erDiagram\b)/i,/^(?:\{)/i,/^(?:\s+)/i,/^(?:\b((?:PK)|(?:FK))\b)/i,/^(?:(.*?)[~](.*?)*[~])/i,/^(?:[A-Za-z][A-Za-z0-9\-_\[\]]*)/i,/^(?:"[^"]*")/i,/^(?:[\n]+)/i,/^(?:\})/i,/^(?:.)/i,/^(?:\|o\b)/i,/^(?:\}o\b)/i,/^(?:\}\|)/i,/^(?:\|\|)/i,/^(?:o\|)/i,/^(?:o\{)/i,/^(?:\|\{)/i,/^(?:\.\.)/i,/^(?:--)/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},open_directive:{rules:[8],inclusive:!1},type_directive:{rules:[9,10],inclusive:!1},arg_directive:{rules:[10,11],inclusive:!1},block:{rules:[20,21,22,23,24,25,26,27],inclusive:!1},INITIAL:{rules:[0,2,4,7,12,13,14,15,16,17,18,19,28,29,30,31,32,33,34,35,36,37,38,39,40,41],inclusive:!0}}};function w(){this.yy={}}return x.lexer=k,w.prototype=x,x.Parser=w,new w}();e.parser=r,e.Parser=r.Parser,e.parse=function(){return r.parse.apply(r,arguments)},e.main=function(t){t[1]||(console.log("Usage: "+t[0]+" FILE"),process.exit(1));var r=n(8009).readFileSync(n(6470).normalize(t[1]),"utf8");return e.parser.parse(r)},n.c[n.s]===t&&e.main(process.argv.slice(1))},3602:(t,e,n)=>{t=n.nmd(t);var r=function(){var t=function(t,e,n,r){for(n=n||{},r=t.length;r--;n[t[r]]=e);return n},e=[1,9],n=[1,7],r=[1,6],i=[1,8],a=[1,20,21,22,23,38,44,46,48,52,66,67,86,87,88,89,90,91,95,105,106,109,111,112,118,119,120,121,122,123,124,125,126,127],o=[2,10],s=[1,20],c=[1,21],l=[1,22],u=[1,23],h=[1,30],d=[1,32],f=[1,33],p=[1,34],g=[1,62],y=[1,48],m=[1,52],b=[1,36],v=[1,37],_=[1,38],x=[1,39],k=[1,40],w=[1,56],E=[1,63],T=[1,51],C=[1,53],S=[1,55],A=[1,59],M=[1,60],O=[1,41],N=[1,42],D=[1,43],B=[1,44],L=[1,61],I=[1,50],F=[1,54],R=[1,57],P=[1,58],j=[1,49],z=[1,66],Y=[1,71],U=[1,20,21,22,23,38,42,44,46,48,52,66,67,86,87,88,89,90,91,95,105,106,109,111,112,118,119,120,121,122,123,124,125,126,127],$=[1,75],W=[1,74],q=[1,76],H=[20,21,23,81,82],V=[1,99],G=[1,104],X=[1,107],Z=[1,108],Q=[1,101],K=[1,106],J=[1,109],tt=[1,102],et=[1,114],nt=[1,113],rt=[1,103],it=[1,105],at=[1,110],ot=[1,111],st=[1,112],ct=[1,115],lt=[20,21,22,23,81,82],ut=[20,21,22,23,53,81,82],ht=[20,21,22,23,40,52,53,55,57,59,61,63,65,66,67,69,71,73,74,76,81,82,91,95,105,106,109,111,112,122,123,124,125,126,127],dt=[20,21,23],ft=[20,21,23,52,66,67,81,82,91,95,105,106,109,111,112,122,123,124,125,126,127],pt=[1,12,20,21,22,23,24,38,42,44,46,48,52,66,67,86,87,88,89,90,91,95,105,106,109,111,112,118,119,120,121,122,123,124,125,126,127],gt=[52,66,67,91,95,105,106,109,111,112,122,123,124,125,126,127],yt=[1,149],mt=[1,157],bt=[1,158],vt=[1,159],_t=[1,160],xt=[1,144],kt=[1,145],wt=[1,141],Et=[1,152],Tt=[1,153],Ct=[1,154],St=[1,155],At=[1,156],Mt=[1,161],Ot=[1,162],Nt=[1,147],Dt=[1,150],Bt=[1,146],Lt=[1,143],It=[20,21,22,23,38,42,44,46,48,52,66,67,86,87,88,89,90,91,95,105,106,109,111,112,118,119,120,121,122,123,124,125,126,127],Ft=[1,165],Rt=[20,21,22,23,26,52,66,67,91,105,106,109,111,112,122,123,124,125,126,127],Pt=[20,21,22,23,24,26,38,40,41,42,52,56,58,60,62,64,66,67,68,70,72,73,75,77,81,82,86,87,88,89,90,91,92,95,105,106,109,111,112,113,114,122,123,124,125,126,127],jt=[12,21,22,24],zt=[22,106],Yt=[1,250],Ut=[1,245],$t=[1,246],Wt=[1,254],qt=[1,251],Ht=[1,248],Vt=[1,247],Gt=[1,249],Xt=[1,252],Zt=[1,253],Qt=[1,255],Kt=[1,273],Jt=[20,21,23,106],te=[20,21,22,23,66,67,86,102,105,106,109,110,111,112,113],ee={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,directive:5,openDirective:6,typeDirective:7,closeDirective:8,separator:9,":":10,argDirective:11,open_directive:12,type_directive:13,arg_directive:14,close_directive:15,graphConfig:16,document:17,line:18,statement:19,SEMI:20,NEWLINE:21,SPACE:22,EOF:23,GRAPH:24,NODIR:25,DIR:26,FirstStmtSeperator:27,ending:28,endToken:29,spaceList:30,spaceListNewline:31,verticeStatement:32,styleStatement:33,linkStyleStatement:34,classDefStatement:35,classStatement:36,clickStatement:37,subgraph:38,text:39,SQS:40,SQE:41,end:42,direction:43,acc_title:44,acc_title_value:45,acc_descr:46,acc_descr_value:47,acc_descr_multiline_value:48,link:49,node:50,vertex:51,AMP:52,STYLE_SEPARATOR:53,idString:54,DOUBLECIRCLESTART:55,DOUBLECIRCLEEND:56,PS:57,PE:58,"(-":59,"-)":60,STADIUMSTART:61,STADIUMEND:62,SUBROUTINESTART:63,SUBROUTINEEND:64,VERTEX_WITH_PROPS_START:65,ALPHA:66,COLON:67,PIPE:68,CYLINDERSTART:69,CYLINDEREND:70,DIAMOND_START:71,DIAMOND_STOP:72,TAGEND:73,TRAPSTART:74,TRAPEND:75,INVTRAPSTART:76,INVTRAPEND:77,linkStatement:78,arrowText:79,TESTSTR:80,START_LINK:81,LINK:82,textToken:83,STR:84,keywords:85,STYLE:86,LINKSTYLE:87,CLASSDEF:88,CLASS:89,CLICK:90,DOWN:91,UP:92,textNoTags:93,textNoTagsToken:94,DEFAULT:95,stylesOpt:96,alphaNum:97,CALLBACKNAME:98,CALLBACKARGS:99,HREF:100,LINK_TARGET:101,HEX:102,numList:103,INTERPOLATE:104,NUM:105,COMMA:106,style:107,styleComponent:108,MINUS:109,UNIT:110,BRKT:111,DOT:112,PCT:113,TAGSTART:114,alphaNumToken:115,idStringToken:116,alphaNumStatement:117,direction_tb:118,direction_bt:119,direction_rl:120,direction_lr:121,PUNCTUATION:122,UNICODE_TEXT:123,PLUS:124,EQUALS:125,MULT:126,UNDERSCORE:127,graphCodeTokens:128,ARROW_CROSS:129,ARROW_POINT:130,ARROW_CIRCLE:131,ARROW_OPEN:132,QUOTE:133,$accept:0,$end:1},terminals_:{2:"error",10:":",12:"open_directive",13:"type_directive",14:"arg_directive",15:"close_directive",20:"SEMI",21:"NEWLINE",22:"SPACE",23:"EOF",24:"GRAPH",25:"NODIR",26:"DIR",38:"subgraph",40:"SQS",41:"SQE",42:"end",44:"acc_title",45:"acc_title_value",46:"acc_descr",47:"acc_descr_value",48:"acc_descr_multiline_value",52:"AMP",53:"STYLE_SEPARATOR",55:"DOUBLECIRCLESTART",56:"DOUBLECIRCLEEND",57:"PS",58:"PE",59:"(-",60:"-)",61:"STADIUMSTART",62:"STADIUMEND",63:"SUBROUTINESTART",64:"SUBROUTINEEND",65:"VERTEX_WITH_PROPS_START",66:"ALPHA",67:"COLON",68:"PIPE",69:"CYLINDERSTART",70:"CYLINDEREND",71:"DIAMOND_START",72:"DIAMOND_STOP",73:"TAGEND",74:"TRAPSTART",75:"TRAPEND",76:"INVTRAPSTART",77:"INVTRAPEND",80:"TESTSTR",81:"START_LINK",82:"LINK",84:"STR",86:"STYLE",87:"LINKSTYLE",88:"CLASSDEF",89:"CLASS",90:"CLICK",91:"DOWN",92:"UP",95:"DEFAULT",98:"CALLBACKNAME",99:"CALLBACKARGS",100:"HREF",101:"LINK_TARGET",102:"HEX",104:"INTERPOLATE",105:"NUM",106:"COMMA",109:"MINUS",110:"UNIT",111:"BRKT",112:"DOT",113:"PCT",114:"TAGSTART",118:"direction_tb",119:"direction_bt",120:"direction_rl",121:"direction_lr",122:"PUNCTUATION",123:"UNICODE_TEXT",124:"PLUS",125:"EQUALS",126:"MULT",127:"UNDERSCORE",129:"ARROW_CROSS",130:"ARROW_POINT",131:"ARROW_CIRCLE",132:"ARROW_OPEN",133:"QUOTE"},productions_:[0,[3,1],[3,2],[5,4],[5,6],[6,1],[7,1],[11,1],[8,1],[4,2],[17,0],[17,2],[18,1],[18,1],[18,1],[18,1],[18,1],[16,2],[16,2],[16,2],[16,3],[28,2],[28,1],[29,1],[29,1],[29,1],[27,1],[27,1],[27,2],[31,2],[31,2],[31,1],[31,1],[30,2],[30,1],[19,2],[19,2],[19,2],[19,2],[19,2],[19,2],[19,9],[19,6],[19,4],[19,1],[19,2],[19,2],[19,1],[9,1],[9,1],[9,1],[32,3],[32,4],[32,2],[32,1],[50,1],[50,5],[50,3],[51,4],[51,4],[51,6],[51,4],[51,4],[51,4],[51,8],[51,4],[51,4],[51,4],[51,6],[51,4],[51,4],[51,4],[51,4],[51,4],[51,1],[49,2],[49,3],[49,3],[49,1],[49,3],[78,1],[79,3],[39,1],[39,2],[39,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[93,1],[93,2],[35,5],[35,5],[36,5],[37,2],[37,4],[37,3],[37,5],[37,2],[37,4],[37,4],[37,6],[37,2],[37,4],[37,2],[37,4],[37,4],[37,6],[33,5],[33,5],[34,5],[34,5],[34,9],[34,9],[34,7],[34,7],[103,1],[103,3],[96,1],[96,3],[107,1],[107,2],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[94,1],[94,1],[94,1],[94,1],[54,1],[54,2],[97,1],[97,2],[117,1],[117,1],[117,1],[117,1],[43,1],[43,1],[43,1],[43,1],[115,1],[115,1],[115,1],[115,1],[115,1],[115,1],[115,1],[115,1],[115,1],[115,1],[115,1],[115,1],[115,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1]],performAction:function(t,e,n,r,i,a,o){var s=a.length-1;switch(i){case 5:r.parseDirective("%%{","open_directive");break;case 6:r.parseDirective(a[s],"type_directive");break;case 7:a[s]=a[s].trim().replace(/'/g,'"'),r.parseDirective(a[s],"arg_directive");break;case 8:r.parseDirective("}%%","close_directive","flowchart");break;case 10:case 36:case 37:case 38:case 39:case 40:this.$=[];break;case 11:a[s]!==[]&&a[s-1].push(a[s]),this.$=a[s-1];break;case 12:case 82:case 84:case 96:case 152:case 154:case 155:case 78:case 150:this.$=a[s];break;case 19:r.setDirection("TB"),this.$="TB";break;case 20:r.setDirection(a[s-1]),this.$=a[s-1];break;case 35:this.$=a[s-1].nodes;break;case 41:this.$=r.addSubGraph(a[s-6],a[s-1],a[s-4]);break;case 42:this.$=r.addSubGraph(a[s-3],a[s-1],a[s-3]);break;case 43:this.$=r.addSubGraph(void 0,a[s-1],void 0);break;case 45:this.$=a[s].trim(),r.setAccTitle(this.$);break;case 46:case 47:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 51:r.addLink(a[s-2].stmt,a[s],a[s-1]),this.$={stmt:a[s],nodes:a[s].concat(a[s-2].nodes)};break;case 52:r.addLink(a[s-3].stmt,a[s-1],a[s-2]),this.$={stmt:a[s-1],nodes:a[s-1].concat(a[s-3].nodes)};break;case 53:this.$={stmt:a[s-1],nodes:a[s-1]};break;case 54:this.$={stmt:a[s],nodes:a[s]};break;case 55:case 123:case 125:this.$=[a[s]];break;case 56:this.$=a[s-4].concat(a[s]);break;case 57:this.$=[a[s-2]],r.setClass(a[s-2],a[s]);break;case 58:this.$=a[s-3],r.addVertex(a[s-3],a[s-1],"square");break;case 59:this.$=a[s-3],r.addVertex(a[s-3],a[s-1],"doublecircle");break;case 60:this.$=a[s-5],r.addVertex(a[s-5],a[s-2],"circle");break;case 61:this.$=a[s-3],r.addVertex(a[s-3],a[s-1],"ellipse");break;case 62:this.$=a[s-3],r.addVertex(a[s-3],a[s-1],"stadium");break;case 63:this.$=a[s-3],r.addVertex(a[s-3],a[s-1],"subroutine");break;case 64:this.$=a[s-7],r.addVertex(a[s-7],a[s-1],"rect",void 0,void 0,void 0,Object.fromEntries([[a[s-5],a[s-3]]]));break;case 65:this.$=a[s-3],r.addVertex(a[s-3],a[s-1],"cylinder");break;case 66:this.$=a[s-3],r.addVertex(a[s-3],a[s-1],"round");break;case 67:this.$=a[s-3],r.addVertex(a[s-3],a[s-1],"diamond");break;case 68:this.$=a[s-5],r.addVertex(a[s-5],a[s-2],"hexagon");break;case 69:this.$=a[s-3],r.addVertex(a[s-3],a[s-1],"odd");break;case 70:this.$=a[s-3],r.addVertex(a[s-3],a[s-1],"trapezoid");break;case 71:this.$=a[s-3],r.addVertex(a[s-3],a[s-1],"inv_trapezoid");break;case 72:this.$=a[s-3],r.addVertex(a[s-3],a[s-1],"lean_right");break;case 73:this.$=a[s-3],r.addVertex(a[s-3],a[s-1],"lean_left");break;case 74:this.$=a[s],r.addVertex(a[s]);break;case 75:a[s-1].text=a[s],this.$=a[s-1];break;case 76:case 77:a[s-2].text=a[s-1],this.$=a[s-2];break;case 79:var c=r.destructLink(a[s],a[s-2]);this.$={type:c.type,stroke:c.stroke,length:c.length,text:a[s-1]};break;case 80:c=r.destructLink(a[s]),this.$={type:c.type,stroke:c.stroke,length:c.length};break;case 81:this.$=a[s-1];break;case 83:case 97:case 153:case 151:this.$=a[s-1]+""+a[s];break;case 98:case 99:this.$=a[s-4],r.addClass(a[s-2],a[s]);break;case 100:this.$=a[s-4],r.setClass(a[s-2],a[s]);break;case 101:case 109:this.$=a[s-1],r.setClickEvent(a[s-1],a[s]);break;case 102:case 110:this.$=a[s-3],r.setClickEvent(a[s-3],a[s-2]),r.setTooltip(a[s-3],a[s]);break;case 103:this.$=a[s-2],r.setClickEvent(a[s-2],a[s-1],a[s]);break;case 104:this.$=a[s-4],r.setClickEvent(a[s-4],a[s-3],a[s-2]),r.setTooltip(a[s-4],a[s]);break;case 105:case 111:this.$=a[s-1],r.setLink(a[s-1],a[s]);break;case 106:case 112:this.$=a[s-3],r.setLink(a[s-3],a[s-2]),r.setTooltip(a[s-3],a[s]);break;case 107:case 113:this.$=a[s-3],r.setLink(a[s-3],a[s-2],a[s]);break;case 108:case 114:this.$=a[s-5],r.setLink(a[s-5],a[s-4],a[s]),r.setTooltip(a[s-5],a[s-2]);break;case 115:this.$=a[s-4],r.addVertex(a[s-2],void 0,void 0,a[s]);break;case 116:case 118:this.$=a[s-4],r.updateLink(a[s-2],a[s]);break;case 117:this.$=a[s-4],r.updateLink([a[s-2]],a[s]);break;case 119:this.$=a[s-8],r.updateLinkInterpolate([a[s-6]],a[s-2]),r.updateLink([a[s-6]],a[s]);break;case 120:this.$=a[s-8],r.updateLinkInterpolate(a[s-6],a[s-2]),r.updateLink(a[s-6],a[s]);break;case 121:this.$=a[s-6],r.updateLinkInterpolate([a[s-4]],a[s]);break;case 122:this.$=a[s-6],r.updateLinkInterpolate(a[s-4],a[s]);break;case 124:case 126:a[s-2].push(a[s]),this.$=a[s-2];break;case 128:this.$=a[s-1]+a[s];break;case 156:this.$="v";break;case 157:this.$="-";break;case 158:this.$={stmt:"dir",value:"TB"};break;case 159:this.$={stmt:"dir",value:"BT"};break;case 160:this.$={stmt:"dir",value:"RL"};break;case 161:this.$={stmt:"dir",value:"LR"}}},table:[{3:1,4:2,5:3,6:5,12:e,16:4,21:n,22:r,24:i},{1:[3]},{1:[2,1]},{3:10,4:2,5:3,6:5,12:e,16:4,21:n,22:r,24:i},t(a,o,{17:11}),{7:12,13:[1,13]},{16:14,21:n,22:r,24:i},{16:15,21:n,22:r,24:i},{25:[1,16],26:[1,17]},{13:[2,5]},{1:[2,2]},{1:[2,9],18:18,19:19,20:s,21:c,22:l,23:u,32:24,33:25,34:26,35:27,36:28,37:29,38:h,43:31,44:d,46:f,48:p,50:35,51:45,52:g,54:46,66:y,67:m,86:b,87:v,88:_,89:x,90:k,91:w,95:E,105:T,106:C,109:S,111:A,112:M,116:47,118:O,119:N,120:D,121:B,122:L,123:I,124:F,125:R,126:P,127:j},{8:64,10:[1,65],15:z},t([10,15],[2,6]),t(a,[2,17]),t(a,[2,18]),t(a,[2,19]),{20:[1,68],21:[1,69],22:Y,27:67,30:70},t(U,[2,11]),t(U,[2,12]),t(U,[2,13]),t(U,[2,14]),t(U,[2,15]),t(U,[2,16]),{9:72,20:$,21:W,23:q,49:73,78:77,81:[1,78],82:[1,79]},{9:80,20:$,21:W,23:q},{9:81,20:$,21:W,23:q},{9:82,20:$,21:W,23:q},{9:83,20:$,21:W,23:q},{9:84,20:$,21:W,23:q},{9:86,20:$,21:W,22:[1,85],23:q},t(U,[2,44]),{45:[1,87]},{47:[1,88]},t(U,[2,47]),t(H,[2,54],{30:89,22:Y}),{22:[1,90]},{22:[1,91]},{22:[1,92]},{22:[1,93]},{26:V,52:G,66:X,67:Z,84:[1,97],91:Q,97:96,98:[1,94],100:[1,95],105:K,106:J,109:tt,111:et,112:nt,115:100,117:98,122:rt,123:it,124:at,125:ot,126:st,127:ct},t(U,[2,158]),t(U,[2,159]),t(U,[2,160]),t(U,[2,161]),t(lt,[2,55],{53:[1,116]}),t(ut,[2,74],{116:129,40:[1,117],52:g,55:[1,118],57:[1,119],59:[1,120],61:[1,121],63:[1,122],65:[1,123],66:y,67:m,69:[1,124],71:[1,125],73:[1,126],74:[1,127],76:[1,128],91:w,95:E,105:T,106:C,109:S,111:A,112:M,122:L,123:I,124:F,125:R,126:P,127:j}),t(ht,[2,150]),t(ht,[2,175]),t(ht,[2,176]),t(ht,[2,177]),t(ht,[2,178]),t(ht,[2,179]),t(ht,[2,180]),t(ht,[2,181]),t(ht,[2,182]),t(ht,[2,183]),t(ht,[2,184]),t(ht,[2,185]),t(ht,[2,186]),t(ht,[2,187]),t(ht,[2,188]),t(ht,[2,189]),t(ht,[2,190]),{9:130,20:$,21:W,23:q},{11:131,14:[1,132]},t(dt,[2,8]),t(a,[2,20]),t(a,[2,26]),t(a,[2,27]),{21:[1,133]},t(ft,[2,34],{30:134,22:Y}),t(U,[2,35]),{50:135,51:45,52:g,54:46,66:y,67:m,91:w,95:E,105:T,106:C,109:S,111:A,112:M,116:47,122:L,123:I,124:F,125:R,126:P,127:j},t(pt,[2,48]),t(pt,[2,49]),t(pt,[2,50]),t(gt,[2,78],{79:136,68:[1,138],80:[1,137]}),{22:yt,24:mt,26:bt,38:vt,39:139,42:_t,52:G,66:X,67:Z,73:xt,81:kt,83:140,84:wt,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},t([52,66,67,68,80,91,95,105,106,109,111,112,122,123,124,125,126,127],[2,80]),t(U,[2,36]),t(U,[2,37]),t(U,[2,38]),t(U,[2,39]),t(U,[2,40]),{22:yt,24:mt,26:bt,38:vt,39:163,42:_t,52:G,66:X,67:Z,73:xt,81:kt,83:140,84:wt,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},t(It,o,{17:164}),t(U,[2,45]),t(U,[2,46]),t(H,[2,53],{52:Ft}),{26:V,52:G,66:X,67:Z,91:Q,97:166,102:[1,167],105:K,106:J,109:tt,111:et,112:nt,115:100,117:98,122:rt,123:it,124:at,125:ot,126:st,127:ct},{95:[1,168],103:169,105:[1,170]},{26:V,52:G,66:X,67:Z,91:Q,95:[1,171],97:172,105:K,106:J,109:tt,111:et,112:nt,115:100,117:98,122:rt,123:it,124:at,125:ot,126:st,127:ct},{26:V,52:G,66:X,67:Z,91:Q,97:173,105:K,106:J,109:tt,111:et,112:nt,115:100,117:98,122:rt,123:it,124:at,125:ot,126:st,127:ct},t(dt,[2,101],{22:[1,174],99:[1,175]}),t(dt,[2,105],{22:[1,176]}),t(dt,[2,109],{115:100,117:178,22:[1,177],26:V,52:G,66:X,67:Z,91:Q,105:K,106:J,109:tt,111:et,112:nt,122:rt,123:it,124:at,125:ot,126:st,127:ct}),t(dt,[2,111],{22:[1,179]}),t(Rt,[2,152]),t(Rt,[2,154]),t(Rt,[2,155]),t(Rt,[2,156]),t(Rt,[2,157]),t(Pt,[2,162]),t(Pt,[2,163]),t(Pt,[2,164]),t(Pt,[2,165]),t(Pt,[2,166]),t(Pt,[2,167]),t(Pt,[2,168]),t(Pt,[2,169]),t(Pt,[2,170]),t(Pt,[2,171]),t(Pt,[2,172]),t(Pt,[2,173]),t(Pt,[2,174]),{52:g,54:180,66:y,67:m,91:w,95:E,105:T,106:C,109:S,111:A,112:M,116:47,122:L,123:I,124:F,125:R,126:P,127:j},{22:yt,24:mt,26:bt,38:vt,39:181,42:_t,52:G,66:X,67:Z,73:xt,81:kt,83:140,84:wt,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},{22:yt,24:mt,26:bt,38:vt,39:182,42:_t,52:G,66:X,67:Z,73:xt,81:kt,83:140,84:wt,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},{22:yt,24:mt,26:bt,38:vt,39:184,42:_t,52:G,57:[1,183],66:X,67:Z,73:xt,81:kt,83:140,84:wt,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},{22:yt,24:mt,26:bt,38:vt,39:185,42:_t,52:G,66:X,67:Z,73:xt,81:kt,83:140,84:wt,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},{22:yt,24:mt,26:bt,38:vt,39:186,42:_t,52:G,66:X,67:Z,73:xt,81:kt,83:140,84:wt,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},{22:yt,24:mt,26:bt,38:vt,39:187,42:_t,52:G,66:X,67:Z,73:xt,81:kt,83:140,84:wt,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},{66:[1,188]},{22:yt,24:mt,26:bt,38:vt,39:189,42:_t,52:G,66:X,67:Z,73:xt,81:kt,83:140,84:wt,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},{22:yt,24:mt,26:bt,38:vt,39:190,42:_t,52:G,66:X,67:Z,71:[1,191],73:xt,81:kt,83:140,84:wt,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},{22:yt,24:mt,26:bt,38:vt,39:192,42:_t,52:G,66:X,67:Z,73:xt,81:kt,83:140,84:wt,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},{22:yt,24:mt,26:bt,38:vt,39:193,42:_t,52:G,66:X,67:Z,73:xt,81:kt,83:140,84:wt,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},{22:yt,24:mt,26:bt,38:vt,39:194,42:_t,52:G,66:X,67:Z,73:xt,81:kt,83:140,84:wt,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},t(ht,[2,151]),t(jt,[2,3]),{8:195,15:z},{15:[2,7]},t(a,[2,28]),t(ft,[2,33]),t(H,[2,51],{30:196,22:Y}),t(gt,[2,75],{22:[1,197]}),{22:[1,198]},{22:yt,24:mt,26:bt,38:vt,39:199,42:_t,52:G,66:X,67:Z,73:xt,81:kt,83:140,84:wt,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},{22:yt,24:mt,26:bt,38:vt,42:_t,52:G,66:X,67:Z,73:xt,81:kt,82:[1,200],83:201,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},t(Pt,[2,82]),t(Pt,[2,84]),t(Pt,[2,140]),t(Pt,[2,141]),t(Pt,[2,142]),t(Pt,[2,143]),t(Pt,[2,144]),t(Pt,[2,145]),t(Pt,[2,146]),t(Pt,[2,147]),t(Pt,[2,148]),t(Pt,[2,149]),t(Pt,[2,85]),t(Pt,[2,86]),t(Pt,[2,87]),t(Pt,[2,88]),t(Pt,[2,89]),t(Pt,[2,90]),t(Pt,[2,91]),t(Pt,[2,92]),t(Pt,[2,93]),t(Pt,[2,94]),t(Pt,[2,95]),{9:203,20:$,21:W,22:yt,23:q,24:mt,26:bt,38:vt,40:[1,202],42:_t,52:G,66:X,67:Z,73:xt,81:kt,83:201,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},{18:18,19:19,20:s,21:c,22:l,23:u,32:24,33:25,34:26,35:27,36:28,37:29,38:h,42:[1,204],43:31,44:d,46:f,48:p,50:35,51:45,52:g,54:46,66:y,67:m,86:b,87:v,88:_,89:x,90:k,91:w,95:E,105:T,106:C,109:S,111:A,112:M,116:47,118:O,119:N,120:D,121:B,122:L,123:I,124:F,125:R,126:P,127:j},{22:Y,30:205},{22:[1,206],26:V,52:G,66:X,67:Z,91:Q,105:K,106:J,109:tt,111:et,112:nt,115:100,117:178,122:rt,123:it,124:at,125:ot,126:st,127:ct},{22:[1,207]},{22:[1,208]},{22:[1,209],106:[1,210]},t(zt,[2,123]),{22:[1,211]},{22:[1,212],26:V,52:G,66:X,67:Z,91:Q,105:K,106:J,109:tt,111:et,112:nt,115:100,117:178,122:rt,123:it,124:at,125:ot,126:st,127:ct},{22:[1,213],26:V,52:G,66:X,67:Z,91:Q,105:K,106:J,109:tt,111:et,112:nt,115:100,117:178,122:rt,123:it,124:at,125:ot,126:st,127:ct},{84:[1,214]},t(dt,[2,103],{22:[1,215]}),{84:[1,216],101:[1,217]},{84:[1,218]},t(Rt,[2,153]),{84:[1,219],101:[1,220]},t(lt,[2,57],{116:129,52:g,66:y,67:m,91:w,95:E,105:T,106:C,109:S,111:A,112:M,122:L,123:I,124:F,125:R,126:P,127:j}),{22:yt,24:mt,26:bt,38:vt,41:[1,221],42:_t,52:G,66:X,67:Z,73:xt,81:kt,83:201,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},{22:yt,24:mt,26:bt,38:vt,42:_t,52:G,56:[1,222],66:X,67:Z,73:xt,81:kt,83:201,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},{22:yt,24:mt,26:bt,38:vt,39:223,42:_t,52:G,66:X,67:Z,73:xt,81:kt,83:140,84:wt,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},{22:yt,24:mt,26:bt,38:vt,42:_t,52:G,58:[1,224],66:X,67:Z,73:xt,81:kt,83:201,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},{22:yt,24:mt,26:bt,38:vt,42:_t,52:G,60:[1,225],66:X,67:Z,73:xt,81:kt,83:201,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},{22:yt,24:mt,26:bt,38:vt,42:_t,52:G,62:[1,226],66:X,67:Z,73:xt,81:kt,83:201,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},{22:yt,24:mt,26:bt,38:vt,42:_t,52:G,64:[1,227],66:X,67:Z,73:xt,81:kt,83:201,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},{67:[1,228]},{22:yt,24:mt,26:bt,38:vt,42:_t,52:G,66:X,67:Z,70:[1,229],73:xt,81:kt,83:201,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},{22:yt,24:mt,26:bt,38:vt,42:_t,52:G,66:X,67:Z,72:[1,230],73:xt,81:kt,83:201,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},{22:yt,24:mt,26:bt,38:vt,39:231,42:_t,52:G,66:X,67:Z,73:xt,81:kt,83:140,84:wt,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},{22:yt,24:mt,26:bt,38:vt,41:[1,232],42:_t,52:G,66:X,67:Z,73:xt,81:kt,83:201,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},{22:yt,24:mt,26:bt,38:vt,42:_t,52:G,66:X,67:Z,73:xt,75:[1,233],77:[1,234],81:kt,83:201,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},{22:yt,24:mt,26:bt,38:vt,42:_t,52:G,66:X,67:Z,73:xt,75:[1,236],77:[1,235],81:kt,83:201,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},{9:237,20:$,21:W,23:q},t(H,[2,52],{52:Ft}),t(gt,[2,77]),t(gt,[2,76]),{22:yt,24:mt,26:bt,38:vt,42:_t,52:G,66:X,67:Z,68:[1,238],73:xt,81:kt,83:201,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},t(gt,[2,79]),t(Pt,[2,83]),{22:yt,24:mt,26:bt,38:vt,39:239,42:_t,52:G,66:X,67:Z,73:xt,81:kt,83:140,84:wt,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},t(It,o,{17:240}),t(U,[2,43]),{51:241,52:g,54:46,66:y,67:m,91:w,95:E,105:T,106:C,109:S,111:A,112:M,116:47,122:L,123:I,124:F,125:R,126:P,127:j},{22:Yt,66:Ut,67:$t,86:Wt,96:242,102:qt,105:Ht,107:243,108:244,109:Vt,110:Gt,111:Xt,112:Zt,113:Qt},{22:Yt,66:Ut,67:$t,86:Wt,96:256,102:qt,105:Ht,107:243,108:244,109:Vt,110:Gt,111:Xt,112:Zt,113:Qt},{22:Yt,66:Ut,67:$t,86:Wt,96:257,102:qt,104:[1,258],105:Ht,107:243,108:244,109:Vt,110:Gt,111:Xt,112:Zt,113:Qt},{22:Yt,66:Ut,67:$t,86:Wt,96:259,102:qt,104:[1,260],105:Ht,107:243,108:244,109:Vt,110:Gt,111:Xt,112:Zt,113:Qt},{105:[1,261]},{22:Yt,66:Ut,67:$t,86:Wt,96:262,102:qt,105:Ht,107:243,108:244,109:Vt,110:Gt,111:Xt,112:Zt,113:Qt},{22:Yt,66:Ut,67:$t,86:Wt,96:263,102:qt,105:Ht,107:243,108:244,109:Vt,110:Gt,111:Xt,112:Zt,113:Qt},{26:V,52:G,66:X,67:Z,91:Q,97:264,105:K,106:J,109:tt,111:et,112:nt,115:100,117:98,122:rt,123:it,124:at,125:ot,126:st,127:ct},t(dt,[2,102]),{84:[1,265]},t(dt,[2,106],{22:[1,266]}),t(dt,[2,107]),t(dt,[2,110]),t(dt,[2,112],{22:[1,267]}),t(dt,[2,113]),t(ut,[2,58]),t(ut,[2,59]),{22:yt,24:mt,26:bt,38:vt,42:_t,52:G,58:[1,268],66:X,67:Z,73:xt,81:kt,83:201,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},t(ut,[2,66]),t(ut,[2,61]),t(ut,[2,62]),t(ut,[2,63]),{66:[1,269]},t(ut,[2,65]),t(ut,[2,67]),{22:yt,24:mt,26:bt,38:vt,42:_t,52:G,66:X,67:Z,72:[1,270],73:xt,81:kt,83:201,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},t(ut,[2,69]),t(ut,[2,70]),t(ut,[2,72]),t(ut,[2,71]),t(ut,[2,73]),t(jt,[2,4]),t([22,52,66,67,91,95,105,106,109,111,112,122,123,124,125,126,127],[2,81]),{22:yt,24:mt,26:bt,38:vt,41:[1,271],42:_t,52:G,66:X,67:Z,73:xt,81:kt,83:201,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},{18:18,19:19,20:s,21:c,22:l,23:u,32:24,33:25,34:26,35:27,36:28,37:29,38:h,42:[1,272],43:31,44:d,46:f,48:p,50:35,51:45,52:g,54:46,66:y,67:m,86:b,87:v,88:_,89:x,90:k,91:w,95:E,105:T,106:C,109:S,111:A,112:M,116:47,118:O,119:N,120:D,121:B,122:L,123:I,124:F,125:R,126:P,127:j},t(lt,[2,56]),t(dt,[2,115],{106:Kt}),t(Jt,[2,125],{108:274,22:Yt,66:Ut,67:$t,86:Wt,102:qt,105:Ht,109:Vt,110:Gt,111:Xt,112:Zt,113:Qt}),t(te,[2,127]),t(te,[2,129]),t(te,[2,130]),t(te,[2,131]),t(te,[2,132]),t(te,[2,133]),t(te,[2,134]),t(te,[2,135]),t(te,[2,136]),t(te,[2,137]),t(te,[2,138]),t(te,[2,139]),t(dt,[2,116],{106:Kt}),t(dt,[2,117],{106:Kt}),{22:[1,275]},t(dt,[2,118],{106:Kt}),{22:[1,276]},t(zt,[2,124]),t(dt,[2,98],{106:Kt}),t(dt,[2,99],{106:Kt}),t(dt,[2,100],{115:100,117:178,26:V,52:G,66:X,67:Z,91:Q,105:K,106:J,109:tt,111:et,112:nt,122:rt,123:it,124:at,125:ot,126:st,127:ct}),t(dt,[2,104]),{101:[1,277]},{101:[1,278]},{58:[1,279]},{68:[1,280]},{72:[1,281]},{9:282,20:$,21:W,23:q},t(U,[2,42]),{22:Yt,66:Ut,67:$t,86:Wt,102:qt,105:Ht,107:283,108:244,109:Vt,110:Gt,111:Xt,112:Zt,113:Qt},t(te,[2,128]),{26:V,52:G,66:X,67:Z,91:Q,97:284,105:K,106:J,109:tt,111:et,112:nt,115:100,117:98,122:rt,123:it,124:at,125:ot,126:st,127:ct},{26:V,52:G,66:X,67:Z,91:Q,97:285,105:K,106:J,109:tt,111:et,112:nt,115:100,117:98,122:rt,123:it,124:at,125:ot,126:st,127:ct},t(dt,[2,108]),t(dt,[2,114]),t(ut,[2,60]),{22:yt,24:mt,26:bt,38:vt,39:286,42:_t,52:G,66:X,67:Z,73:xt,81:kt,83:140,84:wt,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},t(ut,[2,68]),t(It,o,{17:287}),t(Jt,[2,126],{108:274,22:Yt,66:Ut,67:$t,86:Wt,102:qt,105:Ht,109:Vt,110:Gt,111:Xt,112:Zt,113:Qt}),t(dt,[2,121],{115:100,117:178,22:[1,288],26:V,52:G,66:X,67:Z,91:Q,105:K,106:J,109:tt,111:et,112:nt,122:rt,123:it,124:at,125:ot,126:st,127:ct}),t(dt,[2,122],{115:100,117:178,22:[1,289],26:V,52:G,66:X,67:Z,91:Q,105:K,106:J,109:tt,111:et,112:nt,122:rt,123:it,124:at,125:ot,126:st,127:ct}),{22:yt,24:mt,26:bt,38:vt,41:[1,290],42:_t,52:G,66:X,67:Z,73:xt,81:kt,83:201,85:151,86:Et,87:Tt,88:Ct,89:St,90:At,91:Mt,92:Ot,94:142,95:Nt,105:K,106:J,109:Dt,111:et,112:nt,113:Bt,114:Lt,115:148,122:rt,123:it,124:at,125:ot,126:st,127:ct},{18:18,19:19,20:s,21:c,22:l,23:u,32:24,33:25,34:26,35:27,36:28,37:29,38:h,42:[1,291],43:31,44:d,46:f,48:p,50:35,51:45,52:g,54:46,66:y,67:m,86:b,87:v,88:_,89:x,90:k,91:w,95:E,105:T,106:C,109:S,111:A,112:M,116:47,118:O,119:N,120:D,121:B,122:L,123:I,124:F,125:R,126:P,127:j},{22:Yt,66:Ut,67:$t,86:Wt,96:292,102:qt,105:Ht,107:243,108:244,109:Vt,110:Gt,111:Xt,112:Zt,113:Qt},{22:Yt,66:Ut,67:$t,86:Wt,96:293,102:qt,105:Ht,107:243,108:244,109:Vt,110:Gt,111:Xt,112:Zt,113:Qt},t(ut,[2,64]),t(U,[2,41]),t(dt,[2,119],{106:Kt}),t(dt,[2,120],{106:Kt})],defaultActions:{2:[2,1],9:[2,5],10:[2,2],132:[2,7]},parseError:function(t,e){if(!e.recoverable){var n=new Error(t);throw n.hash=e,n}this.trace(t)},parse:function(t){var e=this,n=[0],r=[],i=[null],a=[],o=this.table,s="",c=0,l=0,u=0,h=2,d=1,f=a.slice.call(arguments,1),p=Object.create(this.lexer),g={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(g.yy[y]=this.yy[y]);p.setInput(t,g.yy),g.yy.lexer=p,g.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var m=p.yylloc;a.push(m);var b=p.options&&p.options.ranges;function v(){var t;return"number"!=typeof(t=r.pop()||p.lex()||d)&&(t instanceof Array&&(t=(r=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var _,x,k,w,E,T,C,S,A,M={};;){if(k=n[n.length-1],this.defaultActions[k]?w=this.defaultActions[k]:(null==_&&(_=v()),w=o[k]&&o[k][_]),void 0===w||!w.length||!w[0]){var O="";for(T in A=[],o[k])this.terminals_[T]&&T>h&&A.push("'"+this.terminals_[T]+"'");O=p.showPosition?"Parse error on line "+(c+1)+":\n"+p.showPosition()+"\nExpecting "+A.join(", ")+", got '"+(this.terminals_[_]||_)+"'":"Parse error on line "+(c+1)+": Unexpected "+(_==d?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(O,{text:p.match,token:this.terminals_[_]||_,line:p.yylineno,loc:m,expected:A})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+k+", token: "+_);switch(w[0]){case 1:n.push(_),i.push(p.yytext),a.push(p.yylloc),n.push(w[1]),_=null,x?(_=x,x=null):(l=p.yyleng,s=p.yytext,c=p.yylineno,m=p.yylloc,u>0&&u--);break;case 2:if(C=this.productions_[w[1]][1],M.$=i[i.length-C],M._$={first_line:a[a.length-(C||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(C||1)].first_column,last_column:a[a.length-1].last_column},b&&(M._$.range=[a[a.length-(C||1)].range[0],a[a.length-1].range[1]]),void 0!==(E=this.performAction.apply(M,[s,l,c,g.yy,w[1],i,a].concat(f))))return E;C&&(n=n.slice(0,-1*C*2),i=i.slice(0,-1*C),a=a.slice(0,-1*C)),n.push(this.productions_[w[1]][0]),i.push(M.$),a.push(M._$),S=o[n[n.length-2]][n[n.length-1]],n.push(S);break;case 3:return!0}}return!0}},ne={EOF:1,parseError:function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},setInput: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},input:function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput: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,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},test_match:function(t,e){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(r=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},next:function(){if(this.done)return this.EOF;var t,e,n,r;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;a<i.length;a++)if((n=this._input.match(this.rules[i[a]]))&&(!e||n[0].length>e[0].length)){if(e=n,r=a,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,i[a])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[r]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},pushState:function(t){this.begin(t)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(t,e,n,r){switch(n){case 0:return this.begin("open_directive"),12;case 1:return this.begin("type_directive"),13;case 2:return this.popState(),this.begin("arg_directive"),10;case 3:return this.popState(),this.popState(),15;case 4:return 14;case 5:case 6:break;case 7:return this.begin("acc_title"),44;case 8:return this.popState(),"acc_title_value";case 9:return this.begin("acc_descr"),46;case 10:return this.popState(),"acc_descr_value";case 11:this.begin("acc_descr_multiline");break;case 12:case 15:case 24:case 27:case 30:case 33:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:this.begin("string");break;case 16:return"STR";case 17:return 86;case 18:return 95;case 19:return 87;case 20:return 104;case 21:return 88;case 22:return 89;case 23:this.begin("href");break;case 25:return 100;case 26:this.begin("callbackname");break;case 28:this.popState(),this.begin("callbackargs");break;case 29:return 98;case 31:return 99;case 32:this.begin("click");break;case 34:return 90;case 35:case 36:return t.lex.firstGraph()&&this.begin("dir"),24;case 37:return 38;case 38:return 42;case 39:case 40:case 41:case 42:return 101;case 43:return this.popState(),25;case 44:case 45:case 46:case 47:case 48:case 49:case 50:case 51:case 52:case 53:return this.popState(),26;case 54:return 118;case 55:return 119;case 56:return 120;case 57:return 121;case 58:return 105;case 59:return 111;case 60:return 53;case 61:return 67;case 62:return 52;case 63:return 20;case 64:return 106;case 65:return 126;case 66:case 67:case 68:return 82;case 69:case 70:case 71:return 81;case 72:return 59;case 73:return 60;case 74:return 61;case 75:return 62;case 76:return 63;case 77:return 64;case 78:return 65;case 79:return 69;case 80:return 70;case 81:return 55;case 82:return 56;case 83:return 109;case 84:return 112;case 85:return 127;case 86:return 124;case 87:return 113;case 88:case 89:return 125;case 90:return 114;case 91:return 73;case 92:return 92;case 93:return"SEP";case 94:return 91;case 95:return 66;case 96:return 75;case 97:return 74;case 98:return 77;case 99:return 76;case 100:return 122;case 101:return 123;case 102:return 68;case 103:return 57;case 104:return 58;case 105:return 40;case 106:return 41;case 107:return 71;case 108:return 72;case 109:return 133;case 110:return 21;case 111:return 22;case 112:return 23}},rules:[/^(?:%%\{)/,/^(?:((?:(?!\}%%)[^:.])*))/,/^(?::)/,/^(?:\}%%)/,/^(?:((?:(?!\}%%).|\n)*))/,/^(?:%%(?!\{)[^\n]*)/,/^(?:[^\}]%%[^\n]*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:style\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:href[\s]+["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:click[\s]+)/,/^(?:[\s\n])/,/^(?:[^\s\n]*)/,/^(?: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<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:\(-)/,/^(?:-\))/,/^(?:\(\[)/,/^(?:\]\))/,/^(?:\[\[)/,/^(?:\]\])/,/^(?:\[\|)/,/^(?:\[\()/,/^(?:\)\])/,/^(?:\(\(\()/,/^(?:\)\)\))/,/^(?:-)/,/^(?:\.)/,/^(?:[\_])/,/^(?:\+)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:\\\|)/,/^(?:v\b)/,/^(?:[A-Za-z]+)/,/^(?:\\\])/,/^(?:\[\/)/,/^(?:\/\])/,/^(?:\[\\)/,/^(?:[!"#$%&'*+,-.`?\\_/])/,/^(?:[\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:{close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},callbackargs:{rules:[30,31],inclusive:!1},callbackname:{rules:[27,28,29],inclusive:!1},href:{rules:[24,25],inclusive:!1},click:{rules:[33,34],inclusive:!1},vertex:{rules:[],inclusive:!1},dir:{rules:[43,44,45,46,47,48,49,50,51,52,53],inclusive:!1},acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},string:{rules:[15,16],inclusive:!1},INITIAL:{rules:[0,5,6,7,9,11,14,17,18,19,20,21,22,23,26,32,35,36,37,38,39,40,41,42,54,55,56,57,58,59,60,61,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,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112],inclusive:!0}}};function re(){this.yy={}}return ee.lexer=ne,re.prototype=ee,ee.Parser=re,new re}();e.parser=r,e.Parser=r.Parser,e.parse=function(){return r.parse.apply(r,arguments)},e.main=function(t){t[1]||(console.log("Usage: "+t[0]+" FILE"),process.exit(1));var r=n(5354).readFileSync(n(6470).normalize(t[1]),"utf8");return e.parser.parse(r)},n.c[n.s]===t&&e.main(process.argv.slice(1))},9959:(t,e,n)=>{t=n.nmd(t);var r=function(){var t=function(t,e,n,r){for(n=n||{},r=t.length;r--;n[t[r]]=e);return n},e=[1,3],n=[1,5],r=[7,9,11,12,13,14,15,16,17,18,19,20,22,24,25,27,34,39],i=[1,15],a=[1,16],o=[1,17],s=[1,18],c=[1,19],l=[1,20],u=[1,21],h=[1,22],d=[1,23],f=[1,24],p=[1,25],g=[1,26],y=[1,28],m=[1,30],b=[1,33],v=[5,7,9,11,12,13,14,15,16,17,18,19,20,22,24,25,27,34,39],_={trace:function(){},yy:{},symbols_:{error:2,start:3,directive:4,gantt:5,document:6,EOF:7,line:8,SPACE:9,statement:10,NL:11,dateFormat:12,inclusiveEndDates:13,topAxis:14,axisFormat:15,excludes:16,includes:17,todayMarker:18,title:19,acc_title:20,acc_title_value:21,acc_descr:22,acc_descr_value:23,acc_descr_multiline_value:24,section:25,clickStatement:26,taskTxt:27,taskData:28,openDirective:29,typeDirective:30,closeDirective:31,":":32,argDirective:33,click:34,callbackname:35,callbackargs:36,href:37,clickStatementDebug:38,open_directive:39,type_directive:40,arg_directive:41,close_directive:42,$accept:0,$end:1},terminals_:{2:"error",5:"gantt",7:"EOF",9:"SPACE",11:"NL",12:"dateFormat",13:"inclusiveEndDates",14:"topAxis",15:"axisFormat",16:"excludes",17:"includes",18:"todayMarker",19:"title",20:"acc_title",21:"acc_title_value",22:"acc_descr",23:"acc_descr_value",24:"acc_descr_multiline_value",25:"section",27:"taskTxt",28:"taskData",32:":",34:"click",35:"callbackname",36:"callbackargs",37:"href",39:"open_directive",40:"type_directive",41:"arg_directive",42:"close_directive"},productions_:[0,[3,2],[3,3],[6,0],[6,2],[8,2],[8,1],[8,1],[8,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[10,1],[10,1],[10,2],[10,1],[4,4],[4,6],[26,2],[26,3],[26,3],[26,4],[26,3],[26,4],[26,2],[38,2],[38,3],[38,3],[38,4],[38,3],[38,4],[38,2],[29,1],[30,1],[33,1],[31,1]],performAction:function(t,e,n,r,i,a,o){var s=a.length-1;switch(i){case 2:return a[s-1];case 3:case 7:case 8:this.$=[];break;case 4:a[s-1].push(a[s]),this.$=a[s-1];break;case 5:case 6:this.$=a[s];break;case 9:r.setDateFormat(a[s].substr(11)),this.$=a[s].substr(11);break;case 10:r.enableInclusiveEndDates(),this.$=a[s].substr(18);break;case 11:r.TopAxis(),this.$=a[s].substr(8);break;case 12:r.setAxisFormat(a[s].substr(11)),this.$=a[s].substr(11);break;case 13:r.setExcludes(a[s].substr(9)),this.$=a[s].substr(9);break;case 14:r.setIncludes(a[s].substr(9)),this.$=a[s].substr(9);break;case 15:r.setTodayMarker(a[s].substr(12)),this.$=a[s].substr(12);break;case 16:r.setDiagramTitle(a[s].substr(6)),this.$=a[s].substr(6);break;case 17:this.$=a[s].trim(),r.setAccTitle(this.$);break;case 18:case 19:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 20:r.addSection(a[s].substr(8)),this.$=a[s].substr(8);break;case 22:r.addTask(a[s-1],a[s]),this.$="task";break;case 26:this.$=a[s-1],r.setClickEvent(a[s-1],a[s],null);break;case 27:this.$=a[s-2],r.setClickEvent(a[s-2],a[s-1],a[s]);break;case 28:this.$=a[s-2],r.setClickEvent(a[s-2],a[s-1],null),r.setLink(a[s-2],a[s]);break;case 29:this.$=a[s-3],r.setClickEvent(a[s-3],a[s-2],a[s-1]),r.setLink(a[s-3],a[s]);break;case 30:this.$=a[s-2],r.setClickEvent(a[s-2],a[s],null),r.setLink(a[s-2],a[s-1]);break;case 31:this.$=a[s-3],r.setClickEvent(a[s-3],a[s-1],a[s]),r.setLink(a[s-3],a[s-2]);break;case 32:this.$=a[s-1],r.setLink(a[s-1],a[s]);break;case 33:case 39:this.$=a[s-1]+" "+a[s];break;case 34:case 35:case 37:this.$=a[s-2]+" "+a[s-1]+" "+a[s];break;case 36:case 38:this.$=a[s-3]+" "+a[s-2]+" "+a[s-1]+" "+a[s];break;case 40:r.parseDirective("%%{","open_directive");break;case 41:r.parseDirective(a[s],"type_directive");break;case 42:a[s]=a[s].trim().replace(/'/g,'"'),r.parseDirective(a[s],"arg_directive");break;case 43:r.parseDirective("}%%","close_directive","gantt")}},table:[{3:1,4:2,5:e,29:4,39:n},{1:[3]},{3:6,4:2,5:e,29:4,39:n},t(r,[2,3],{6:7}),{30:8,40:[1,9]},{40:[2,40]},{1:[2,1]},{4:29,7:[1,10],8:11,9:[1,12],10:13,11:[1,14],12:i,13:a,14:o,15:s,16:c,17:l,18:u,19:h,20:d,22:f,24:p,25:g,26:27,27:y,29:4,34:m,39:n},{31:31,32:[1,32],42:b},t([32,42],[2,41]),t(r,[2,8],{1:[2,2]}),t(r,[2,4]),{4:29,10:34,12:i,13:a,14:o,15:s,16:c,17:l,18:u,19:h,20:d,22:f,24:p,25:g,26:27,27:y,29:4,34:m,39:n},t(r,[2,6]),t(r,[2,7]),t(r,[2,9]),t(r,[2,10]),t(r,[2,11]),t(r,[2,12]),t(r,[2,13]),t(r,[2,14]),t(r,[2,15]),t(r,[2,16]),{21:[1,35]},{23:[1,36]},t(r,[2,19]),t(r,[2,20]),t(r,[2,21]),{28:[1,37]},t(r,[2,23]),{35:[1,38],37:[1,39]},{11:[1,40]},{33:41,41:[1,42]},{11:[2,43]},t(r,[2,5]),t(r,[2,17]),t(r,[2,18]),t(r,[2,22]),t(r,[2,26],{36:[1,43],37:[1,44]}),t(r,[2,32],{35:[1,45]}),t(v,[2,24]),{31:46,42:b},{42:[2,42]},t(r,[2,27],{37:[1,47]}),t(r,[2,28]),t(r,[2,30],{36:[1,48]}),{11:[1,49]},t(r,[2,29]),t(r,[2,31]),t(v,[2,25])],defaultActions:{5:[2,40],6:[2,1],33:[2,43],42:[2,42]},parseError:function(t,e){if(!e.recoverable){var n=new Error(t);throw n.hash=e,n}this.trace(t)},parse:function(t){var e=this,n=[0],r=[],i=[null],a=[],o=this.table,s="",c=0,l=0,u=0,h=2,d=1,f=a.slice.call(arguments,1),p=Object.create(this.lexer),g={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(g.yy[y]=this.yy[y]);p.setInput(t,g.yy),g.yy.lexer=p,g.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var m=p.yylloc;a.push(m);var b=p.options&&p.options.ranges;function v(){var t;return"number"!=typeof(t=r.pop()||p.lex()||d)&&(t instanceof Array&&(t=(r=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var _,x,k,w,E,T,C,S,A,M={};;){if(k=n[n.length-1],this.defaultActions[k]?w=this.defaultActions[k]:(null==_&&(_=v()),w=o[k]&&o[k][_]),void 0===w||!w.length||!w[0]){var O="";for(T in A=[],o[k])this.terminals_[T]&&T>h&&A.push("'"+this.terminals_[T]+"'");O=p.showPosition?"Parse error on line "+(c+1)+":\n"+p.showPosition()+"\nExpecting "+A.join(", ")+", got '"+(this.terminals_[_]||_)+"'":"Parse error on line "+(c+1)+": Unexpected "+(_==d?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(O,{text:p.match,token:this.terminals_[_]||_,line:p.yylineno,loc:m,expected:A})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+k+", token: "+_);switch(w[0]){case 1:n.push(_),i.push(p.yytext),a.push(p.yylloc),n.push(w[1]),_=null,x?(_=x,x=null):(l=p.yyleng,s=p.yytext,c=p.yylineno,m=p.yylloc,u>0&&u--);break;case 2:if(C=this.productions_[w[1]][1],M.$=i[i.length-C],M._$={first_line:a[a.length-(C||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(C||1)].first_column,last_column:a[a.length-1].last_column},b&&(M._$.range=[a[a.length-(C||1)].range[0],a[a.length-1].range[1]]),void 0!==(E=this.performAction.apply(M,[s,l,c,g.yy,w[1],i,a].concat(f))))return E;C&&(n=n.slice(0,-1*C*2),i=i.slice(0,-1*C),a=a.slice(0,-1*C)),n.push(this.productions_[w[1]][0]),i.push(M.$),a.push(M._$),S=o[n[n.length-2]][n[n.length-1]],n.push(S);break;case 3:return!0}}return!0}},x={EOF:1,parseError:function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},setInput: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},input:function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput: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,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},test_match:function(t,e){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(r=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},next:function(){if(this.done)return this.EOF;var t,e,n,r;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;a<i.length;a++)if((n=this._input.match(this.rules[i[a]]))&&(!e||n[0].length>e[0].length)){if(e=n,r=a,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,i[a])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[r]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},pushState:function(t){this.begin(t)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(t,e,n,r){switch(n){case 0:return this.begin("open_directive"),39;case 1:return this.begin("type_directive"),40;case 2:return this.popState(),this.begin("arg_directive"),32;case 3:return this.popState(),this.popState(),42;case 4:return 41;case 5:return this.begin("acc_title"),20;case 6:return this.popState(),"acc_title_value";case 7:return this.begin("acc_descr"),22;case 8:return this.popState(),"acc_descr_value";case 9:this.begin("acc_descr_multiline");break;case 10:case 20:case 23:case 26:case 29:this.popState();break;case 11:return"acc_descr_multiline_value";case 12:case 13:case 14:case 16:case 17:case 18:break;case 15:return 11;case 19:this.begin("href");break;case 21:return 37;case 22:this.begin("callbackname");break;case 24:this.popState(),this.begin("callbackargs");break;case 25:return 35;case 27:return 36;case 28:this.begin("click");break;case 30:return 34;case 31:return 5;case 32:return 12;case 33:return 13;case 34:return 14;case 35:return 15;case 36:return 17;case 37:return 16;case 38:return 18;case 39:return"date";case 40:return 19;case 41:return"accDescription";case 42:return 25;case 43:return 27;case 44:return 28;case 45:return 32;case 46:return 7;case 47:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/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,/^(?:%[^\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,/^(?:includes\s[^#\n;]+)/i,/^(?:excludes\s[^#\n;]+)/i,/^(?:todayMarker\s[^\n;]+)/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:[10,11],inclusive:!1},acc_descr:{rules:[8],inclusive:!1},acc_title:{rules:[6],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},callbackargs:{rules:[26,27],inclusive:!1},callbackname:{rules:[23,24,25],inclusive:!1},href:{rules:[20,21],inclusive:!1},click:{rules:[29,30],inclusive:!1},INITIAL:{rules:[0,5,7,9,12,13,14,15,16,17,18,19,22,28,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47],inclusive:!0}}};function k(){this.yy={}}return _.lexer=x,k.prototype=_,_.Parser=k,new k}();e.parser=r,e.Parser=r.Parser,e.parse=function(){return r.parse.apply(r,arguments)},e.main=function(t){t[1]||(console.log("Usage: "+t[0]+" FILE"),process.exit(1));var r=n(6878).readFileSync(n(6470).normalize(t[1]),"utf8");return e.parser.parse(r)},n.c[n.s]===t&&e.main(process.argv.slice(1))},2553:(t,e,n)=>{t=n.nmd(t);var r=function(){var t=function(t,e,n,r){for(n=n||{},r=t.length;r--;n[t[r]]=e);return n},e=[1,4],n=[1,7],r=[1,5],i=[1,9],a=[1,6],o=[2,6],s=[1,16],c=[6,8,14,20,22,24,25,27,29,32,35,39,49,53],l=[8,14,20,22,24,25,27,29,32,35,39],u=[8,13,14,20,22,24,25,27,29,32,35,39],h=[1,26],d=[6,8,14,49,53],f=[8,14,53],p=[1,64],g=[1,65],y=[1,66],m=[8,14,33,38,41,53],b={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,directive:5,GG:6,document:7,EOF:8,":":9,DIR:10,options:11,body:12,OPT:13,NL:14,line:15,statement:16,commitStatement:17,mergeStatement:18,cherryPickStatement:19,acc_title:20,acc_title_value:21,acc_descr:22,acc_descr_value:23,acc_descr_multiline_value:24,section:25,branchStatement:26,CHECKOUT:27,ID:28,BRANCH:29,ORDER:30,NUM:31,CHERRY_PICK:32,COMMIT_ID:33,STR:34,MERGE:35,COMMIT_TYPE:36,commitType:37,COMMIT_TAG:38,COMMIT:39,commit_arg:40,COMMIT_MSG:41,NORMAL:42,REVERSE:43,HIGHLIGHT:44,openDirective:45,typeDirective:46,closeDirective:47,argDirective:48,open_directive:49,type_directive:50,arg_directive:51,close_directive:52,";":53,$accept:0,$end:1},terminals_:{2:"error",6:"GG",8:"EOF",9:":",10:"DIR",13:"OPT",14:"NL",20:"acc_title",21:"acc_title_value",22:"acc_descr",23:"acc_descr_value",24:"acc_descr_multiline_value",25:"section",27:"CHECKOUT",28:"ID",29:"BRANCH",30:"ORDER",31:"NUM",32:"CHERRY_PICK",33:"COMMIT_ID",34:"STR",35:"MERGE",36:"COMMIT_TYPE",38:"COMMIT_TAG",39:"COMMIT",41:"COMMIT_MSG",42:"NORMAL",43:"REVERSE",44:"HIGHLIGHT",49:"open_directive",50:"type_directive",51:"arg_directive",52:"close_directive",53:";"},productions_:[0,[3,2],[3,2],[3,3],[3,4],[3,5],[7,0],[7,2],[11,2],[11,1],[12,0],[12,2],[15,2],[15,1],[16,1],[16,1],[16,1],[16,2],[16,2],[16,1],[16,1],[16,1],[16,2],[26,2],[26,4],[19,3],[18,2],[18,4],[18,4],[18,4],[18,6],[18,6],[18,6],[18,6],[18,6],[18,6],[18,8],[18,8],[18,8],[18,8],[18,8],[18,8],[17,2],[17,3],[17,3],[17,5],[17,5],[17,3],[17,5],[17,5],[17,5],[17,5],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,3],[17,5],[17,5],[17,5],[17,5],[17,5],[17,5],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[40,0],[40,1],[37,1],[37,1],[37,1],[5,3],[5,5],[45,1],[46,1],[48,1],[47,1],[4,1],[4,1],[4,1]],performAction:function(t,e,n,r,i,a,o){var s=a.length-1;switch(i){case 3:return a[s];case 4:return a[s-1];case 5:return r.setDirection(a[s-3]),a[s-1];case 7:r.setOptions(a[s-1]),this.$=a[s];break;case 8:a[s-1]+=a[s],this.$=a[s-1];break;case 10:this.$=[];break;case 11:a[s-1].push(a[s]),this.$=a[s-1];break;case 12:this.$=a[s-1];break;case 17:this.$=a[s].trim(),r.setAccTitle(this.$);break;case 18:case 19:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 20:r.addSection(a[s].substr(8)),this.$=a[s].substr(8);break;case 22:r.checkout(a[s]);break;case 23:r.branch(a[s]);break;case 24:r.branch(a[s-2],a[s]);break;case 25:r.cherryPick(a[s]);break;case 26:r.merge(a[s],"","","");break;case 27:r.merge(a[s-2],a[s],"","");break;case 28:r.merge(a[s-2],"",a[s],"");break;case 29:r.merge(a[s-2],"","",a[s]);break;case 30:r.merge(a[s-4],a[s],"",a[s-2]);break;case 31:r.merge(a[s-4],"",a[s],a[s-2]);break;case 32:r.merge(a[s-4],"",a[s-2],a[s]);break;case 33:r.merge(a[s-4],a[s-2],a[s],"");break;case 34:r.merge(a[s-4],a[s-2],"",a[s]);break;case 35:r.merge(a[s-4],a[s],a[s-2],"");break;case 36:r.merge(a[s-6],a[s-4],a[s-2],a[s]);break;case 37:r.merge(a[s-6],a[s],a[s-4],a[s-2]);break;case 38:r.merge(a[s-6],a[s-4],a[s],a[s-2]);break;case 39:r.merge(a[s-6],a[s-2],a[s-4],a[s]);break;case 40:r.merge(a[s-6],a[s],a[s-2],a[s-4]);break;case 41:r.merge(a[s-6],a[s-2],a[s],a[s-4]);break;case 42:r.commit(a[s]);break;case 43:r.commit("","",r.commitType.NORMAL,a[s]);break;case 44:r.commit("","",a[s],"");break;case 45:r.commit("","",a[s],a[s-2]);break;case 46:r.commit("","",a[s-2],a[s]);break;case 47:r.commit("",a[s],r.commitType.NORMAL,"");break;case 48:r.commit("",a[s-2],r.commitType.NORMAL,a[s]);break;case 49:r.commit("",a[s],r.commitType.NORMAL,a[s-2]);break;case 50:r.commit("",a[s-2],a[s],"");break;case 51:r.commit("",a[s],a[s-2],"");break;case 52:r.commit("",a[s-4],a[s-2],a[s]);break;case 53:r.commit("",a[s-4],a[s],a[s-2]);break;case 54:r.commit("",a[s-2],a[s-4],a[s]);break;case 55:r.commit("",a[s],a[s-4],a[s-2]);break;case 56:r.commit("",a[s],a[s-2],a[s-4]);break;case 57:r.commit("",a[s-2],a[s],a[s-4]);break;case 58:r.commit(a[s],"",r.commitType.NORMAL,"");break;case 59:r.commit(a[s],"",r.commitType.NORMAL,a[s-2]);break;case 60:r.commit(a[s-2],"",r.commitType.NORMAL,a[s]);break;case 61:r.commit(a[s-2],"",a[s],"");break;case 62:r.commit(a[s],"",a[s-2],"");break;case 63:r.commit(a[s],a[s-2],r.commitType.NORMAL,"");break;case 64:r.commit(a[s-2],a[s],r.commitType.NORMAL,"");break;case 65:r.commit(a[s-4],"",a[s-2],a[s]);break;case 66:r.commit(a[s-4],"",a[s],a[s-2]);break;case 67:r.commit(a[s-2],"",a[s-4],a[s]);break;case 68:r.commit(a[s],"",a[s-4],a[s-2]);break;case 69:r.commit(a[s],"",a[s-2],a[s-4]);break;case 70:r.commit(a[s-2],"",a[s],a[s-4]);break;case 71:r.commit(a[s-4],a[s],a[s-2],"");break;case 72:r.commit(a[s-4],a[s-2],a[s],"");break;case 73:r.commit(a[s-2],a[s],a[s-4],"");break;case 74:r.commit(a[s],a[s-2],a[s-4],"");break;case 75:r.commit(a[s],a[s-4],a[s-2],"");break;case 76:r.commit(a[s-2],a[s-4],a[s],"");break;case 77:r.commit(a[s-4],a[s],r.commitType.NORMAL,a[s-2]);break;case 78:r.commit(a[s-4],a[s-2],r.commitType.NORMAL,a[s]);break;case 79:r.commit(a[s-2],a[s],r.commitType.NORMAL,a[s-4]);break;case 80:r.commit(a[s],a[s-2],r.commitType.NORMAL,a[s-4]);break;case 81:r.commit(a[s],a[s-4],r.commitType.NORMAL,a[s-2]);break;case 82:r.commit(a[s-2],a[s-4],r.commitType.NORMAL,a[s]);break;case 83:r.commit(a[s-6],a[s-4],a[s-2],a[s]);break;case 84:r.commit(a[s-6],a[s-4],a[s],a[s-2]);break;case 85:r.commit(a[s-6],a[s-2],a[s-4],a[s]);break;case 86:r.commit(a[s-6],a[s],a[s-4],a[s-2]);break;case 87:r.commit(a[s-6],a[s-2],a[s],a[s-4]);break;case 88:r.commit(a[s-6],a[s],a[s-2],a[s-4]);break;case 89:r.commit(a[s-4],a[s-6],a[s-2],a[s]);break;case 90:r.commit(a[s-4],a[s-6],a[s],a[s-2]);break;case 91:r.commit(a[s-2],a[s-6],a[s-4],a[s]);break;case 92:r.commit(a[s],a[s-6],a[s-4],a[s-2]);break;case 93:r.commit(a[s-2],a[s-6],a[s],a[s-4]);break;case 94:r.commit(a[s],a[s-6],a[s-2],a[s-4]);break;case 95:r.commit(a[s],a[s-4],a[s-2],a[s-6]);break;case 96:r.commit(a[s-2],a[s-4],a[s],a[s-6]);break;case 97:r.commit(a[s],a[s-2],a[s-4],a[s-6]);break;case 98:r.commit(a[s-2],a[s],a[s-4],a[s-6]);break;case 99:r.commit(a[s-4],a[s-2],a[s],a[s-6]);break;case 100:r.commit(a[s-4],a[s],a[s-2],a[s-6]);break;case 101:r.commit(a[s-2],a[s-4],a[s-6],a[s]);break;case 102:r.commit(a[s],a[s-4],a[s-6],a[s-2]);break;case 103:r.commit(a[s-2],a[s],a[s-6],a[s-4]);break;case 104:r.commit(a[s],a[s-2],a[s-6],a[s-4]);break;case 105:r.commit(a[s-4],a[s-2],a[s-6],a[s]);break;case 106:r.commit(a[s-4],a[s],a[s-6],a[s-2]);break;case 107:this.$="";break;case 108:this.$=a[s];break;case 109:this.$=r.commitType.NORMAL;break;case 110:this.$=r.commitType.REVERSE;break;case 111:this.$=r.commitType.HIGHLIGHT;break;case 114:r.parseDirective("%%{","open_directive");break;case 115:r.parseDirective(a[s],"type_directive");break;case 116:a[s]=a[s].trim().replace(/'/g,'"'),r.parseDirective(a[s],"arg_directive");break;case 117:r.parseDirective("}%%","close_directive","gitGraph")}},table:[{3:1,4:2,5:3,6:e,8:n,14:r,45:8,49:i,53:a},{1:[3]},{3:10,4:2,5:3,6:e,8:n,14:r,45:8,49:i,53:a},{3:11,4:2,5:3,6:e,8:n,14:r,45:8,49:i,53:a},{7:12,8:o,9:[1,13],10:[1,14],11:15,14:s},t(c,[2,118]),t(c,[2,119]),t(c,[2,120]),{46:17,50:[1,18]},{50:[2,114]},{1:[2,1]},{1:[2,2]},{8:[1,19]},{7:20,8:o,11:15,14:s},{9:[1,21]},t(l,[2,10],{12:22,13:[1,23]}),t(u,[2,9]),{9:[1,25],47:24,52:h},t([9,52],[2,115]),{1:[2,3]},{8:[1,27]},{7:28,8:o,11:15,14:s},{8:[2,7],14:[1,31],15:29,16:30,17:32,18:33,19:34,20:[1,35],22:[1,36],24:[1,37],25:[1,38],26:39,27:[1,40],29:[1,44],32:[1,43],35:[1,42],39:[1,41]},t(u,[2,8]),t(d,[2,112]),{48:45,51:[1,46]},t(d,[2,117]),{1:[2,4]},{8:[1,47]},t(l,[2,11]),{4:48,8:n,14:r,53:a},t(l,[2,13]),t(f,[2,14]),t(f,[2,15]),t(f,[2,16]),{21:[1,49]},{23:[1,50]},t(f,[2,19]),t(f,[2,20]),t(f,[2,21]),{28:[1,51]},t(f,[2,107],{40:52,33:[1,55],34:[1,57],36:[1,54],38:[1,53],41:[1,56]}),{28:[1,58]},{33:[1,59]},{28:[1,60]},{47:61,52:h},{52:[2,116]},{1:[2,5]},t(l,[2,12]),t(f,[2,17]),t(f,[2,18]),t(f,[2,22]),t(f,[2,42]),{34:[1,62]},{37:63,42:p,43:g,44:y},{34:[1,67]},{34:[1,68]},t(f,[2,108]),t(f,[2,26],{33:[1,69],36:[1,70],38:[1,71]}),{34:[1,72]},t(f,[2,23],{30:[1,73]}),t(d,[2,113]),t(f,[2,43],{33:[1,75],36:[1,74],41:[1,76]}),t(f,[2,44],{33:[1,78],38:[1,77],41:[1,79]}),t(m,[2,109]),t(m,[2,110]),t(m,[2,111]),t(f,[2,47],{36:[1,81],38:[1,80],41:[1,82]}),t(f,[2,58],{33:[1,85],36:[1,84],38:[1,83]}),{34:[1,86]},{37:87,42:p,43:g,44:y},{34:[1,88]},t(f,[2,25]),{31:[1,89]},{37:90,42:p,43:g,44:y},{34:[1,91]},{34:[1,92]},{34:[1,93]},{34:[1,94]},{34:[1,95]},{34:[1,96]},{37:97,42:p,43:g,44:y},{34:[1,98]},{34:[1,99]},{37:100,42:p,43:g,44:y},{34:[1,101]},t(f,[2,27],{36:[1,102],38:[1,103]}),t(f,[2,28],{33:[1,105],38:[1,104]}),t(f,[2,29],{33:[1,106],36:[1,107]}),t(f,[2,24]),t(f,[2,45],{33:[1,108],41:[1,109]}),t(f,[2,49],{36:[1,110],41:[1,111]}),t(f,[2,59],{33:[1,113],36:[1,112]}),t(f,[2,46],{33:[1,114],41:[1,115]}),t(f,[2,51],{38:[1,116],41:[1,117]}),t(f,[2,62],{33:[1,119],38:[1,118]}),t(f,[2,48],{36:[1,120],41:[1,121]}),t(f,[2,50],{38:[1,122],41:[1,123]}),t(f,[2,63],{36:[1,124],38:[1,125]}),t(f,[2,60],{33:[1,127],36:[1,126]}),t(f,[2,61],{33:[1,129],38:[1,128]}),t(f,[2,64],{36:[1,130],38:[1,131]}),{37:132,42:p,43:g,44:y},{34:[1,133]},{34:[1,134]},{34:[1,135]},{34:[1,136]},{37:137,42:p,43:g,44:y},{34:[1,138]},{34:[1,139]},{37:140,42:p,43:g,44:y},{34:[1,141]},{37:142,42:p,43:g,44:y},{34:[1,143]},{34:[1,144]},{34:[1,145]},{34:[1,146]},{34:[1,147]},{34:[1,148]},{34:[1,149]},{37:150,42:p,43:g,44:y},{34:[1,151]},{34:[1,152]},{34:[1,153]},{37:154,42:p,43:g,44:y},{34:[1,155]},{37:156,42:p,43:g,44:y},{34:[1,157]},{34:[1,158]},{34:[1,159]},{37:160,42:p,43:g,44:y},{34:[1,161]},t(f,[2,33],{38:[1,162]}),t(f,[2,34],{36:[1,163]}),t(f,[2,32],{33:[1,164]}),t(f,[2,35],{38:[1,165]}),t(f,[2,30],{36:[1,166]}),t(f,[2,31],{33:[1,167]}),t(f,[2,56],{41:[1,168]}),t(f,[2,69],{33:[1,169]}),t(f,[2,57],{41:[1,170]}),t(f,[2,80],{36:[1,171]}),t(f,[2,70],{33:[1,172]}),t(f,[2,79],{36:[1,173]}),t(f,[2,55],{41:[1,174]}),t(f,[2,68],{33:[1,175]}),t(f,[2,54],{41:[1,176]}),t(f,[2,74],{38:[1,177]}),t(f,[2,67],{33:[1,178]}),t(f,[2,73],{38:[1,179]}),t(f,[2,53],{41:[1,180]}),t(f,[2,81],{36:[1,181]}),t(f,[2,52],{41:[1,182]}),t(f,[2,75],{38:[1,183]}),t(f,[2,76],{38:[1,184]}),t(f,[2,82],{36:[1,185]}),t(f,[2,66],{33:[1,186]}),t(f,[2,77],{36:[1,187]}),t(f,[2,65],{33:[1,188]}),t(f,[2,71],{38:[1,189]}),t(f,[2,72],{38:[1,190]}),t(f,[2,78],{36:[1,191]}),{34:[1,192]},{37:193,42:p,43:g,44:y},{34:[1,194]},{34:[1,195]},{37:196,42:p,43:g,44:y},{34:[1,197]},{34:[1,198]},{34:[1,199]},{34:[1,200]},{37:201,42:p,43:g,44:y},{34:[1,202]},{37:203,42:p,43:g,44:y},{34:[1,204]},{34:[1,205]},{34:[1,206]},{34:[1,207]},{34:[1,208]},{34:[1,209]},{34:[1,210]},{37:211,42:p,43:g,44:y},{34:[1,212]},{34:[1,213]},{34:[1,214]},{37:215,42:p,43:g,44:y},{34:[1,216]},{37:217,42:p,43:g,44:y},{34:[1,218]},{34:[1,219]},{34:[1,220]},{37:221,42:p,43:g,44:y},t(f,[2,36]),t(f,[2,38]),t(f,[2,37]),t(f,[2,39]),t(f,[2,41]),t(f,[2,40]),t(f,[2,97]),t(f,[2,98]),t(f,[2,95]),t(f,[2,96]),t(f,[2,100]),t(f,[2,99]),t(f,[2,104]),t(f,[2,103]),t(f,[2,102]),t(f,[2,101]),t(f,[2,106]),t(f,[2,105]),t(f,[2,94]),t(f,[2,93]),t(f,[2,92]),t(f,[2,91]),t(f,[2,89]),t(f,[2,90]),t(f,[2,88]),t(f,[2,87]),t(f,[2,86]),t(f,[2,85]),t(f,[2,83]),t(f,[2,84])],defaultActions:{9:[2,114],10:[2,1],11:[2,2],19:[2,3],27:[2,4],46:[2,116],47:[2,5]},parseError:function(t,e){if(!e.recoverable){var n=new Error(t);throw n.hash=e,n}this.trace(t)},parse:function(t){var e=this,n=[0],r=[],i=[null],a=[],o=this.table,s="",c=0,l=0,u=0,h=2,d=1,f=a.slice.call(arguments,1),p=Object.create(this.lexer),g={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(g.yy[y]=this.yy[y]);p.setInput(t,g.yy),g.yy.lexer=p,g.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var m=p.yylloc;a.push(m);var b=p.options&&p.options.ranges;function v(){var t;return"number"!=typeof(t=r.pop()||p.lex()||d)&&(t instanceof Array&&(t=(r=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var _,x,k,w,E,T,C,S,A,M={};;){if(k=n[n.length-1],this.defaultActions[k]?w=this.defaultActions[k]:(null==_&&(_=v()),w=o[k]&&o[k][_]),void 0===w||!w.length||!w[0]){var O="";for(T in A=[],o[k])this.terminals_[T]&&T>h&&A.push("'"+this.terminals_[T]+"'");O=p.showPosition?"Parse error on line "+(c+1)+":\n"+p.showPosition()+"\nExpecting "+A.join(", ")+", got '"+(this.terminals_[_]||_)+"'":"Parse error on line "+(c+1)+": Unexpected "+(_==d?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(O,{text:p.match,token:this.terminals_[_]||_,line:p.yylineno,loc:m,expected:A})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+k+", token: "+_);switch(w[0]){case 1:n.push(_),i.push(p.yytext),a.push(p.yylloc),n.push(w[1]),_=null,x?(_=x,x=null):(l=p.yyleng,s=p.yytext,c=p.yylineno,m=p.yylloc,u>0&&u--);break;case 2:if(C=this.productions_[w[1]][1],M.$=i[i.length-C],M._$={first_line:a[a.length-(C||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(C||1)].first_column,last_column:a[a.length-1].last_column},b&&(M._$.range=[a[a.length-(C||1)].range[0],a[a.length-1].range[1]]),void 0!==(E=this.performAction.apply(M,[s,l,c,g.yy,w[1],i,a].concat(f))))return E;C&&(n=n.slice(0,-1*C*2),i=i.slice(0,-1*C),a=a.slice(0,-1*C)),n.push(this.productions_[w[1]][0]),i.push(M.$),a.push(M._$),S=o[n[n.length-2]][n[n.length-1]],n.push(S);break;case 3:return!0}}return!0}},v={EOF:1,parseError:function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},setInput: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},input:function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput: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,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},test_match:function(t,e){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(r=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},next:function(){if(this.done)return this.EOF;var t,e,n,r;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;a<i.length;a++)if((n=this._input.match(this.rules[i[a]]))&&(!e||n[0].length>e[0].length)){if(e=n,r=a,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,i[a])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[r]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},pushState:function(t){this.begin(t)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(t,e,n,r){switch(n){case 0:return this.begin("open_directive"),49;case 1:return this.begin("type_directive"),50;case 2:return this.popState(),this.begin("arg_directive"),9;case 3:return this.popState(),this.popState(),52;case 4:return 51;case 5:return this.begin("acc_title"),20;case 6:return this.popState(),"acc_title_value";case 7:return this.begin("acc_descr"),22;case 8:return this.popState(),"acc_descr_value";case 9:this.begin("acc_descr_multiline");break;case 10:case 35:case 38:this.popState();break;case 11:return"acc_descr_multiline_value";case 12:return 14;case 13:case 14:case 15:break;case 16:return 6;case 17:return 39;case 18:return 33;case 19:return 36;case 20:return 41;case 21:return 42;case 22:return 43;case 23:return 44;case 24:return 38;case 25:return 29;case 26:return 30;case 27:return 35;case 28:return 32;case 29:return 27;case 30:case 31:return 10;case 32:return 9;case 33:return"CARET";case 34:this.begin("options");break;case 36:return 13;case 37:this.begin("string");break;case 39:return 34;case 40:return 31;case 41:return 28;case 42:return 8}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\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,/^(?:gitGraph\b)/i,/^(?:commit\b)/i,/^(?:id:)/i,/^(?:type:)/i,/^(?:msg:)/i,/^(?:NORMAL\b)/i,/^(?:REVERSE\b)/i,/^(?:HIGHLIGHT\b)/i,/^(?:tag:)/i,/^(?:branch\b)/i,/^(?:order:)/i,/^(?:merge\b)/i,/^(?:cherry-pick\b)/i,/^(?:checkout\b)/i,/^(?:LR\b)/i,/^(?:BT\b)/i,/^(?::)/i,/^(?:\^)/i,/^(?:options\r?\n)/i,/^(?:[ \r\n\t]+end\b)/i,/^(?:[\s\S]+(?=[ \r\n\t]+end))/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[0-9]+)/i,/^(?:[a-zA-Z][-_\./a-zA-Z0-9]*[-_a-zA-Z0-9])/i,/^(?:$)/i],conditions:{acc_descr_multiline:{rules:[10,11],inclusive:!1},acc_descr:{rules:[8],inclusive:!1},acc_title:{rules:[6],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},options:{rules:[35,36],inclusive:!1},string:{rules:[38,39],inclusive:!1},INITIAL:{rules:[0,5,7,9,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,37,40,41,42],inclusive:!0}}};function _(){this.yy={}}return b.lexer=v,_.prototype=b,b.Parser=_,new _}();e.parser=r,e.Parser=r.Parser,e.parse=function(){return r.parse.apply(r,arguments)},e.main=function(t){t[1]||(console.log("Usage: "+t[0]+" FILE"),process.exit(1));var r=n(8183).readFileSync(n(6470).normalize(t[1]),"utf8");return e.parser.parse(r)},n.c[n.s]===t&&e.main(process.argv.slice(1))},6765:(t,e,n)=>{t=n.nmd(t);var r=function(){var t=function(t,e,n,r){for(n=n||{},r=t.length;r--;n[t[r]]=e);return n},e=[6,9,10],n={trace:function(){},yy:{},symbols_:{error:2,start:3,info:4,document:5,EOF:6,line:7,statement:8,NL:9,showInfo:10,$accept:0,$end:1},terminals_:{2:"error",4:"info",6:"EOF",9:"NL",10:"showInfo"},productions_:[0,[3,3],[5,0],[5,2],[7,1],[7,1],[8,1]],performAction:function(t,e,n,r,i,a,o){switch(a.length,i){case 1:return r;case 4:break;case 6:r.setInfo(!0)}},table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:6,9:[1,7],10:[1,8]},{1:[2,1]},t(e,[2,3]),t(e,[2,4]),t(e,[2,5]),t(e,[2,6])],defaultActions:{4:[2,1]},parseError:function(t,e){if(!e.recoverable){var n=new Error(t);throw n.hash=e,n}this.trace(t)},parse:function(t){var e=this,n=[0],r=[],i=[null],a=[],o=this.table,s="",c=0,l=0,u=0,h=2,d=1,f=a.slice.call(arguments,1),p=Object.create(this.lexer),g={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(g.yy[y]=this.yy[y]);p.setInput(t,g.yy),g.yy.lexer=p,g.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var m=p.yylloc;a.push(m);var b=p.options&&p.options.ranges;function v(){var t;return"number"!=typeof(t=r.pop()||p.lex()||d)&&(t instanceof Array&&(t=(r=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var _,x,k,w,E,T,C,S,A,M={};;){if(k=n[n.length-1],this.defaultActions[k]?w=this.defaultActions[k]:(null==_&&(_=v()),w=o[k]&&o[k][_]),void 0===w||!w.length||!w[0]){var O="";for(T in A=[],o[k])this.terminals_[T]&&T>h&&A.push("'"+this.terminals_[T]+"'");O=p.showPosition?"Parse error on line "+(c+1)+":\n"+p.showPosition()+"\nExpecting "+A.join(", ")+", got '"+(this.terminals_[_]||_)+"'":"Parse error on line "+(c+1)+": Unexpected "+(_==d?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(O,{text:p.match,token:this.terminals_[_]||_,line:p.yylineno,loc:m,expected:A})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+k+", token: "+_);switch(w[0]){case 1:n.push(_),i.push(p.yytext),a.push(p.yylloc),n.push(w[1]),_=null,x?(_=x,x=null):(l=p.yyleng,s=p.yytext,c=p.yylineno,m=p.yylloc,u>0&&u--);break;case 2:if(C=this.productions_[w[1]][1],M.$=i[i.length-C],M._$={first_line:a[a.length-(C||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(C||1)].first_column,last_column:a[a.length-1].last_column},b&&(M._$.range=[a[a.length-(C||1)].range[0],a[a.length-1].range[1]]),void 0!==(E=this.performAction.apply(M,[s,l,c,g.yy,w[1],i,a].concat(f))))return E;C&&(n=n.slice(0,-1*C*2),i=i.slice(0,-1*C),a=a.slice(0,-1*C)),n.push(this.productions_[w[1]][0]),i.push(M.$),a.push(M._$),S=o[n[n.length-2]][n[n.length-1]],n.push(S);break;case 3:return!0}}return!0}},r={EOF:1,parseError:function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},setInput: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},input:function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput: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,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},test_match:function(t,e){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(r=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},next:function(){if(this.done)return this.EOF;var t,e,n,r;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;a<i.length;a++)if((n=this._input.match(this.rules[i[a]]))&&(!e||n[0].length>e[0].length)){if(e=n,r=a,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,i[a])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[r]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},pushState:function(t){this.begin(t)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(t,e,n,r){switch(n){case 0:return 4;case 1:return 9;case 2:return"space";case 3:return 10;case 4:return 6;case 5:return"TXT"}},rules:[/^(?:info\b)/i,/^(?:[\s\n\r]+)/i,/^(?:[\s]+)/i,/^(?:showInfo\b)/i,/^(?:$)/i,/^(?:.)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5],inclusive:!0}}};function i(){this.yy={}}return n.lexer=r,i.prototype=n,n.Parser=i,new i}();e.parser=r,e.Parser=r.Parser,e.parse=function(){return r.parse.apply(r,arguments)},e.main=function(t){t[1]||(console.log("Usage: "+t[0]+" FILE"),process.exit(1));var r=n(1428).readFileSync(n(6470).normalize(t[1]),"utf8");return e.parser.parse(r)},n.c[n.s]===t&&e.main(process.argv.slice(1))},7062:(t,e,n)=>{t=n.nmd(t);var r=function(){var t=function(t,e,n,r){for(n=n||{},r=t.length;r--;n[t[r]]=e);return n},e=[1,4],n=[1,5],r=[1,6],i=[1,7],a=[1,9],o=[1,11,13,15,17,19,20,26,27,28,29],s=[2,5],c=[1,6,11,13,15,17,19,20,26,27,28,29],l=[26,27,28],u=[2,8],h=[1,18],d=[1,19],f=[1,20],p=[1,21],g=[1,22],y=[1,23],m=[1,28],b=[6,26,27,28,29],v={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,directive:5,PIE:6,document:7,showData:8,line:9,statement:10,txt:11,value:12,title:13,title_value:14,acc_title:15,acc_title_value:16,acc_descr:17,acc_descr_value:18,acc_descr_multiline_value:19,section:20,openDirective:21,typeDirective:22,closeDirective:23,":":24,argDirective:25,NEWLINE:26,";":27,EOF:28,open_directive:29,type_directive:30,arg_directive:31,close_directive:32,$accept:0,$end:1},terminals_:{2:"error",6:"PIE",8:"showData",11:"txt",12:"value",13:"title",14:"title_value",15:"acc_title",16:"acc_title_value",17:"acc_descr",18:"acc_descr_value",19:"acc_descr_multiline_value",20:"section",24:":",26:"NEWLINE",27:";",28:"EOF",29:"open_directive",30:"type_directive",31:"arg_directive",32:"close_directive"},productions_:[0,[3,2],[3,2],[3,2],[3,3],[7,0],[7,2],[9,2],[10,0],[10,2],[10,2],[10,2],[10,2],[10,1],[10,1],[10,1],[5,3],[5,5],[4,1],[4,1],[4,1],[21,1],[22,1],[25,1],[23,1]],performAction:function(t,e,n,r,i,a,o){var s=a.length-1;switch(i){case 4:r.setShowData(!0);break;case 7:this.$=a[s-1];break;case 9:r.addSection(a[s-1],r.cleanupValue(a[s]));break;case 10:this.$=a[s].trim(),r.setDiagramTitle(this.$);break;case 11:this.$=a[s].trim(),r.setAccTitle(this.$);break;case 12:case 13:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 14:r.addSection(a[s].substr(8)),this.$=a[s].substr(8);break;case 21:r.parseDirective("%%{","open_directive");break;case 22:r.parseDirective(a[s],"type_directive");break;case 23:a[s]=a[s].trim().replace(/'/g,'"'),r.parseDirective(a[s],"arg_directive");break;case 24:r.parseDirective("}%%","close_directive","pie")}},table:[{3:1,4:2,5:3,6:e,21:8,26:n,27:r,28:i,29:a},{1:[3]},{3:10,4:2,5:3,6:e,21:8,26:n,27:r,28:i,29:a},{3:11,4:2,5:3,6:e,21:8,26:n,27:r,28:i,29:a},t(o,s,{7:12,8:[1,13]}),t(c,[2,18]),t(c,[2,19]),t(c,[2,20]),{22:14,30:[1,15]},{30:[2,21]},{1:[2,1]},{1:[2,2]},t(l,u,{21:8,9:16,10:17,5:24,1:[2,3],11:h,13:d,15:f,17:p,19:g,20:y,29:a}),t(o,s,{7:25}),{23:26,24:[1,27],32:m},t([24,32],[2,22]),t(o,[2,6]),{4:29,26:n,27:r,28:i},{12:[1,30]},{14:[1,31]},{16:[1,32]},{18:[1,33]},t(l,[2,13]),t(l,[2,14]),t(l,[2,15]),t(l,u,{21:8,9:16,10:17,5:24,1:[2,4],11:h,13:d,15:f,17:p,19:g,20:y,29:a}),t(b,[2,16]),{25:34,31:[1,35]},t(b,[2,24]),t(o,[2,7]),t(l,[2,9]),t(l,[2,10]),t(l,[2,11]),t(l,[2,12]),{23:36,32:m},{32:[2,23]},t(b,[2,17])],defaultActions:{9:[2,21],10:[2,1],11:[2,2],35:[2,23]},parseError:function(t,e){if(!e.recoverable){var n=new Error(t);throw n.hash=e,n}this.trace(t)},parse:function(t){var e=this,n=[0],r=[],i=[null],a=[],o=this.table,s="",c=0,l=0,u=0,h=2,d=1,f=a.slice.call(arguments,1),p=Object.create(this.lexer),g={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(g.yy[y]=this.yy[y]);p.setInput(t,g.yy),g.yy.lexer=p,g.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var m=p.yylloc;a.push(m);var b=p.options&&p.options.ranges;function v(){var t;return"number"!=typeof(t=r.pop()||p.lex()||d)&&(t instanceof Array&&(t=(r=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var _,x,k,w,E,T,C,S,A,M={};;){if(k=n[n.length-1],this.defaultActions[k]?w=this.defaultActions[k]:(null==_&&(_=v()),w=o[k]&&o[k][_]),void 0===w||!w.length||!w[0]){var O="";for(T in A=[],o[k])this.terminals_[T]&&T>h&&A.push("'"+this.terminals_[T]+"'");O=p.showPosition?"Parse error on line "+(c+1)+":\n"+p.showPosition()+"\nExpecting "+A.join(", ")+", got '"+(this.terminals_[_]||_)+"'":"Parse error on line "+(c+1)+": Unexpected "+(_==d?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(O,{text:p.match,token:this.terminals_[_]||_,line:p.yylineno,loc:m,expected:A})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+k+", token: "+_);switch(w[0]){case 1:n.push(_),i.push(p.yytext),a.push(p.yylloc),n.push(w[1]),_=null,x?(_=x,x=null):(l=p.yyleng,s=p.yytext,c=p.yylineno,m=p.yylloc,u>0&&u--);break;case 2:if(C=this.productions_[w[1]][1],M.$=i[i.length-C],M._$={first_line:a[a.length-(C||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(C||1)].first_column,last_column:a[a.length-1].last_column},b&&(M._$.range=[a[a.length-(C||1)].range[0],a[a.length-1].range[1]]),void 0!==(E=this.performAction.apply(M,[s,l,c,g.yy,w[1],i,a].concat(f))))return E;C&&(n=n.slice(0,-1*C*2),i=i.slice(0,-1*C),a=a.slice(0,-1*C)),n.push(this.productions_[w[1]][0]),i.push(M.$),a.push(M._$),S=o[n[n.length-2]][n[n.length-1]],n.push(S);break;case 3:return!0}}return!0}},_={EOF:1,parseError:function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},setInput: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},input:function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput: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,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},test_match:function(t,e){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(r=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},next:function(){if(this.done)return this.EOF;var t,e,n,r;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;a<i.length;a++)if((n=this._input.match(this.rules[i[a]]))&&(!e||n[0].length>e[0].length)){if(e=n,r=a,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,i[a])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[r]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},pushState:function(t){this.begin(t)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(t,e,n,r){switch(n){case 0:return this.begin("open_directive"),29;case 1:return this.begin("type_directive"),30;case 2:return this.popState(),this.begin("arg_directive"),24;case 3:return this.popState(),this.popState(),32;case 4:return 31;case 5:case 6:case 8:case 9:break;case 7:return 26;case 10:return this.begin("title"),13;case 11:return this.popState(),"title_value";case 12:return this.begin("acc_title"),15;case 13:return this.popState(),"acc_title_value";case 14:return this.begin("acc_descr"),17;case 15:return this.popState(),"acc_descr_value";case 16:this.begin("acc_descr_multiline");break;case 17:case 20:this.popState();break;case 18:return"acc_descr_multiline_value";case 19:this.begin("string");break;case 21:return"txt";case 22:return 6;case 23:return 8;case 24:return"value";case 25:return 28}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:[\s]+)/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,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:pie\b)/i,/^(?:showData\b)/i,/^(?::[\s]*[\d]+(?:\.[\d]+)?)/i,/^(?:$)/i],conditions:{acc_descr_multiline:{rules:[17,18],inclusive:!1},acc_descr:{rules:[15],inclusive:!1},acc_title:{rules:[13],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},title:{rules:[11],inclusive:!1},string:{rules:[20,21],inclusive:!1},INITIAL:{rules:[0,5,6,7,8,9,10,12,14,16,19,22,23,24,25],inclusive:!0}}};function x(){this.yy={}}return v.lexer=_,x.prototype=v,v.Parser=x,new x}();e.parser=r,e.Parser=r.Parser,e.parse=function(){return r.parse.apply(r,arguments)},e.main=function(t){t[1]||(console.log("Usage: "+t[0]+" FILE"),process.exit(1));var r=n(4551).readFileSync(n(6470).normalize(t[1]),"utf8");return e.parser.parse(r)},n.c[n.s]===t&&e.main(process.argv.slice(1))},3176:(t,e,n)=>{t=n.nmd(t);var r=function(){var t=function(t,e,n,r){for(n=n||{},r=t.length;r--;n[t[r]]=e);return n},e=[1,3],n=[1,5],r=[1,6],i=[1,7],a=[1,8],o=[5,6,8,14,16,18,19,40,41,42,43,44,45,53,71,72],s=[1,22],c=[2,13],l=[1,26],u=[1,27],h=[1,28],d=[1,29],f=[1,30],p=[1,31],g=[1,24],y=[1,32],m=[1,33],b=[1,36],v=[71,72],_=[5,8,14,16,18,19,40,41,42,43,44,45,53,60,62,71,72],x=[1,56],k=[1,57],w=[1,58],E=[1,59],T=[1,60],C=[1,61],S=[1,62],A=[62,63],M=[1,74],O=[1,70],N=[1,71],D=[1,72],B=[1,73],L=[1,75],I=[1,79],F=[1,80],R=[1,77],P=[1,78],j=[5,8,14,16,18,19,40,41,42,43,44,45,53,71,72],z={trace:function(){},yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,openDirective:9,typeDirective:10,closeDirective:11,":":12,argDirective:13,acc_title:14,acc_title_value:15,acc_descr:16,acc_descr_value:17,acc_descr_multiline_value:18,open_directive:19,type_directive:20,arg_directive:21,close_directive:22,requirementDef:23,elementDef:24,relationshipDef:25,requirementType:26,requirementName:27,STRUCT_START:28,requirementBody:29,ID:30,COLONSEP:31,id:32,TEXT:33,text:34,RISK:35,riskLevel:36,VERIFYMTHD:37,verifyType:38,STRUCT_STOP:39,REQUIREMENT:40,FUNCTIONAL_REQUIREMENT:41,INTERFACE_REQUIREMENT:42,PERFORMANCE_REQUIREMENT:43,PHYSICAL_REQUIREMENT:44,DESIGN_CONSTRAINT:45,LOW_RISK:46,MED_RISK:47,HIGH_RISK:48,VERIFY_ANALYSIS:49,VERIFY_DEMONSTRATION:50,VERIFY_INSPECTION:51,VERIFY_TEST:52,ELEMENT:53,elementName:54,elementBody:55,TYPE:56,type:57,DOCREF:58,ref:59,END_ARROW_L:60,relationship:61,LINE:62,END_ARROW_R:63,CONTAINS:64,COPIES:65,DERIVES:66,SATISFIES:67,VERIFIES:68,REFINES:69,TRACES:70,unqString:71,qString:72,$accept:0,$end:1},terminals_:{2:"error",5:"NEWLINE",6:"RD",8:"EOF",12:":",14:"acc_title",15:"acc_title_value",16:"acc_descr",17:"acc_descr_value",18:"acc_descr_multiline_value",19:"open_directive",20:"type_directive",21:"arg_directive",22:"close_directive",28:"STRUCT_START",30:"ID",31:"COLONSEP",33:"TEXT",35:"RISK",37:"VERIFYMTHD",39:"STRUCT_STOP",40:"REQUIREMENT",41:"FUNCTIONAL_REQUIREMENT",42:"INTERFACE_REQUIREMENT",43:"PERFORMANCE_REQUIREMENT",44:"PHYSICAL_REQUIREMENT",45:"DESIGN_CONSTRAINT",46:"LOW_RISK",47:"MED_RISK",48:"HIGH_RISK",49:"VERIFY_ANALYSIS",50:"VERIFY_DEMONSTRATION",51:"VERIFY_INSPECTION",52:"VERIFY_TEST",53:"ELEMENT",56:"TYPE",58:"DOCREF",60:"END_ARROW_L",62:"LINE",63:"END_ARROW_R",64:"CONTAINS",65:"COPIES",66:"DERIVES",67:"SATISFIES",68:"VERIFIES",69:"REFINES",70:"TRACES",71:"unqString",72:"qString"},productions_:[0,[3,3],[3,2],[3,4],[4,3],[4,5],[4,2],[4,2],[4,1],[9,1],[10,1],[13,1],[11,1],[7,0],[7,2],[7,2],[7,2],[7,2],[7,2],[23,5],[29,5],[29,5],[29,5],[29,5],[29,2],[29,1],[26,1],[26,1],[26,1],[26,1],[26,1],[26,1],[36,1],[36,1],[36,1],[38,1],[38,1],[38,1],[38,1],[24,5],[55,5],[55,5],[55,2],[55,1],[25,5],[25,5],[61,1],[61,1],[61,1],[61,1],[61,1],[61,1],[61,1],[27,1],[27,1],[32,1],[32,1],[34,1],[34,1],[54,1],[54,1],[57,1],[57,1],[59,1],[59,1]],performAction:function(t,e,n,r,i,a,o){var s=a.length-1;switch(i){case 6:this.$=a[s].trim(),r.setAccTitle(this.$);break;case 7:case 8:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 9:r.parseDirective("%%{","open_directive");break;case 10:r.parseDirective(a[s],"type_directive");break;case 11:a[s]=a[s].trim().replace(/'/g,'"'),r.parseDirective(a[s],"arg_directive");break;case 12:r.parseDirective("}%%","close_directive","pie");break;case 13:this.$=[];break;case 19:r.addRequirement(a[s-3],a[s-4]);break;case 20:r.setNewReqId(a[s-2]);break;case 21:r.setNewReqText(a[s-2]);break;case 22:r.setNewReqRisk(a[s-2]);break;case 23:r.setNewReqVerifyMethod(a[s-2]);break;case 26:this.$=r.RequirementType.REQUIREMENT;break;case 27:this.$=r.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 28:this.$=r.RequirementType.INTERFACE_REQUIREMENT;break;case 29:this.$=r.RequirementType.PERFORMANCE_REQUIREMENT;break;case 30:this.$=r.RequirementType.PHYSICAL_REQUIREMENT;break;case 31:this.$=r.RequirementType.DESIGN_CONSTRAINT;break;case 32:this.$=r.RiskLevel.LOW_RISK;break;case 33:this.$=r.RiskLevel.MED_RISK;break;case 34:this.$=r.RiskLevel.HIGH_RISK;break;case 35:this.$=r.VerifyType.VERIFY_ANALYSIS;break;case 36:this.$=r.VerifyType.VERIFY_DEMONSTRATION;break;case 37:this.$=r.VerifyType.VERIFY_INSPECTION;break;case 38:this.$=r.VerifyType.VERIFY_TEST;break;case 39:r.addElement(a[s-3]);break;case 40:r.setNewElementType(a[s-2]);break;case 41:r.setNewElementDocRef(a[s-2]);break;case 44:r.addRelationship(a[s-2],a[s],a[s-4]);break;case 45:r.addRelationship(a[s-2],a[s-4],a[s]);break;case 46:this.$=r.Relationships.CONTAINS;break;case 47:this.$=r.Relationships.COPIES;break;case 48:this.$=r.Relationships.DERIVES;break;case 49:this.$=r.Relationships.SATISFIES;break;case 50:this.$=r.Relationships.VERIFIES;break;case 51:this.$=r.Relationships.REFINES;break;case 52:this.$=r.Relationships.TRACES}},table:[{3:1,4:2,6:e,9:4,14:n,16:r,18:i,19:a},{1:[3]},{3:10,4:2,5:[1,9],6:e,9:4,14:n,16:r,18:i,19:a},{5:[1,11]},{10:12,20:[1,13]},{15:[1,14]},{17:[1,15]},t(o,[2,8]),{20:[2,9]},{3:16,4:2,6:e,9:4,14:n,16:r,18:i,19:a},{1:[2,2]},{4:21,5:s,7:17,8:c,9:4,14:n,16:r,18:i,19:a,23:18,24:19,25:20,26:23,32:25,40:l,41:u,42:h,43:d,44:f,45:p,53:g,71:y,72:m},{11:34,12:[1,35],22:b},t([12,22],[2,10]),t(o,[2,6]),t(o,[2,7]),{1:[2,1]},{8:[1,37]},{4:21,5:s,7:38,8:c,9:4,14:n,16:r,18:i,19:a,23:18,24:19,25:20,26:23,32:25,40:l,41:u,42:h,43:d,44:f,45:p,53:g,71:y,72:m},{4:21,5:s,7:39,8:c,9:4,14:n,16:r,18:i,19:a,23:18,24:19,25:20,26:23,32:25,40:l,41:u,42:h,43:d,44:f,45:p,53:g,71:y,72:m},{4:21,5:s,7:40,8:c,9:4,14:n,16:r,18:i,19:a,23:18,24:19,25:20,26:23,32:25,40:l,41:u,42:h,43:d,44:f,45:p,53:g,71:y,72:m},{4:21,5:s,7:41,8:c,9:4,14:n,16:r,18:i,19:a,23:18,24:19,25:20,26:23,32:25,40:l,41:u,42:h,43:d,44:f,45:p,53:g,71:y,72:m},{4:21,5:s,7:42,8:c,9:4,14:n,16:r,18:i,19:a,23:18,24:19,25:20,26:23,32:25,40:l,41:u,42:h,43:d,44:f,45:p,53:g,71:y,72:m},{27:43,71:[1,44],72:[1,45]},{54:46,71:[1,47],72:[1,48]},{60:[1,49],62:[1,50]},t(v,[2,26]),t(v,[2,27]),t(v,[2,28]),t(v,[2,29]),t(v,[2,30]),t(v,[2,31]),t(_,[2,55]),t(_,[2,56]),t(o,[2,4]),{13:51,21:[1,52]},t(o,[2,12]),{1:[2,3]},{8:[2,14]},{8:[2,15]},{8:[2,16]},{8:[2,17]},{8:[2,18]},{28:[1,53]},{28:[2,53]},{28:[2,54]},{28:[1,54]},{28:[2,59]},{28:[2,60]},{61:55,64:x,65:k,66:w,67:E,68:T,69:C,70:S},{61:63,64:x,65:k,66:w,67:E,68:T,69:C,70:S},{11:64,22:b},{22:[2,11]},{5:[1,65]},{5:[1,66]},{62:[1,67]},t(A,[2,46]),t(A,[2,47]),t(A,[2,48]),t(A,[2,49]),t(A,[2,50]),t(A,[2,51]),t(A,[2,52]),{63:[1,68]},t(o,[2,5]),{5:M,29:69,30:O,33:N,35:D,37:B,39:L},{5:I,39:F,55:76,56:R,58:P},{32:81,71:y,72:m},{32:82,71:y,72:m},t(j,[2,19]),{31:[1,83]},{31:[1,84]},{31:[1,85]},{31:[1,86]},{5:M,29:87,30:O,33:N,35:D,37:B,39:L},t(j,[2,25]),t(j,[2,39]),{31:[1,88]},{31:[1,89]},{5:I,39:F,55:90,56:R,58:P},t(j,[2,43]),t(j,[2,44]),t(j,[2,45]),{32:91,71:y,72:m},{34:92,71:[1,93],72:[1,94]},{36:95,46:[1,96],47:[1,97],48:[1,98]},{38:99,49:[1,100],50:[1,101],51:[1,102],52:[1,103]},t(j,[2,24]),{57:104,71:[1,105],72:[1,106]},{59:107,71:[1,108],72:[1,109]},t(j,[2,42]),{5:[1,110]},{5:[1,111]},{5:[2,57]},{5:[2,58]},{5:[1,112]},{5:[2,32]},{5:[2,33]},{5:[2,34]},{5:[1,113]},{5:[2,35]},{5:[2,36]},{5:[2,37]},{5:[2,38]},{5:[1,114]},{5:[2,61]},{5:[2,62]},{5:[1,115]},{5:[2,63]},{5:[2,64]},{5:M,29:116,30:O,33:N,35:D,37:B,39:L},{5:M,29:117,30:O,33:N,35:D,37:B,39:L},{5:M,29:118,30:O,33:N,35:D,37:B,39:L},{5:M,29:119,30:O,33:N,35:D,37:B,39:L},{5:I,39:F,55:120,56:R,58:P},{5:I,39:F,55:121,56:R,58:P},t(j,[2,20]),t(j,[2,21]),t(j,[2,22]),t(j,[2,23]),t(j,[2,40]),t(j,[2,41])],defaultActions:{8:[2,9],10:[2,2],16:[2,1],37:[2,3],38:[2,14],39:[2,15],40:[2,16],41:[2,17],42:[2,18],44:[2,53],45:[2,54],47:[2,59],48:[2,60],52:[2,11],93:[2,57],94:[2,58],96:[2,32],97:[2,33],98:[2,34],100:[2,35],101:[2,36],102:[2,37],103:[2,38],105:[2,61],106:[2,62],108:[2,63],109:[2,64]},parseError:function(t,e){if(!e.recoverable){var n=new Error(t);throw n.hash=e,n}this.trace(t)},parse:function(t){var e=this,n=[0],r=[],i=[null],a=[],o=this.table,s="",c=0,l=0,u=0,h=2,d=1,f=a.slice.call(arguments,1),p=Object.create(this.lexer),g={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(g.yy[y]=this.yy[y]);p.setInput(t,g.yy),g.yy.lexer=p,g.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var m=p.yylloc;a.push(m);var b=p.options&&p.options.ranges;function v(){var t;return"number"!=typeof(t=r.pop()||p.lex()||d)&&(t instanceof Array&&(t=(r=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var _,x,k,w,E,T,C,S,A,M={};;){if(k=n[n.length-1],this.defaultActions[k]?w=this.defaultActions[k]:(null==_&&(_=v()),w=o[k]&&o[k][_]),void 0===w||!w.length||!w[0]){var O="";for(T in A=[],o[k])this.terminals_[T]&&T>h&&A.push("'"+this.terminals_[T]+"'");O=p.showPosition?"Parse error on line "+(c+1)+":\n"+p.showPosition()+"\nExpecting "+A.join(", ")+", got '"+(this.terminals_[_]||_)+"'":"Parse error on line "+(c+1)+": Unexpected "+(_==d?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(O,{text:p.match,token:this.terminals_[_]||_,line:p.yylineno,loc:m,expected:A})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+k+", token: "+_);switch(w[0]){case 1:n.push(_),i.push(p.yytext),a.push(p.yylloc),n.push(w[1]),_=null,x?(_=x,x=null):(l=p.yyleng,s=p.yytext,c=p.yylineno,m=p.yylloc,u>0&&u--);break;case 2:if(C=this.productions_[w[1]][1],M.$=i[i.length-C],M._$={first_line:a[a.length-(C||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(C||1)].first_column,last_column:a[a.length-1].last_column},b&&(M._$.range=[a[a.length-(C||1)].range[0],a[a.length-1].range[1]]),void 0!==(E=this.performAction.apply(M,[s,l,c,g.yy,w[1],i,a].concat(f))))return E;C&&(n=n.slice(0,-1*C*2),i=i.slice(0,-1*C),a=a.slice(0,-1*C)),n.push(this.productions_[w[1]][0]),i.push(M.$),a.push(M._$),S=o[n[n.length-2]][n[n.length-1]],n.push(S);break;case 3:return!0}}return!0}},Y={EOF:1,parseError:function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},setInput: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},input:function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput: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,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},test_match:function(t,e){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(r=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},next:function(){if(this.done)return this.EOF;var t,e,n,r;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;a<i.length;a++)if((n=this._input.match(this.rules[i[a]]))&&(!e||n[0].length>e[0].length)){if(e=n,r=a,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,i[a])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[r]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},pushState:function(t){this.begin(t)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(t,e,n,r){switch(n){case 0:return this.begin("open_directive"),19;case 1:return this.begin("type_directive"),20;case 2:return this.popState(),this.begin("arg_directive"),12;case 3:return this.popState(),this.popState(),22;case 4:return 21;case 5:return"title";case 6:return this.begin("acc_title"),14;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),16;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:case 53:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 5;case 14:case 15:case 16:break;case 17:return 8;case 18:return 6;case 19:return 28;case 20:return 39;case 21:return 31;case 22:return 30;case 23:return 33;case 24:return 35;case 25:return 37;case 26:return 40;case 27:return 41;case 28:return 42;case 29:return 43;case 30:return 44;case 31:return 45;case 32:return 46;case 33:return 47;case 34:return 48;case 35:return 49;case 36:return 50;case 37:return 51;case 38:return 52;case 39:return 53;case 40:return 64;case 41:return 65;case 42:return 66;case 43:return 67;case 44:return 68;case 45:return 69;case 46:return 70;case 47:return 56;case 48:return 58;case 49:return 60;case 50:return 63;case 51:return 62;case 52:this.begin("string");break;case 54:return"qString";case 55:return e.yytext=e.yytext.trim(),71}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\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,/^(?:(\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:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},unqString:{rules:[],inclusive:!1},token:{rules:[],inclusive:!1},string:{rules:[53,54],inclusive:!1},INITIAL:{rules:[0,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,55],inclusive:!0}}};function U(){this.yy={}}return z.lexer=Y,U.prototype=z,z.Parser=U,new U}();e.parser=r,e.Parser=r.Parser,e.parse=function(){return r.parse.apply(r,arguments)},e.main=function(t){t[1]||(console.log("Usage: "+t[0]+" FILE"),process.exit(1));var r=n(8800).readFileSync(n(6470).normalize(t[1]),"utf8");return e.parser.parse(r)},n.c[n.s]===t&&e.main(process.argv.slice(1))},6876:(t,e,n)=>{t=n.nmd(t);var r=function(){var t=function(t,e,n,r){for(n=n||{},r=t.length;r--;n[t[r]]=e);return n},e=[1,2],n=[1,3],r=[1,5],i=[1,7],a=[2,5],o=[1,15],s=[1,17],c=[1,18],l=[1,19],u=[1,21],h=[1,22],d=[1,23],f=[1,29],p=[1,30],g=[1,31],y=[1,32],m=[1,33],b=[1,34],v=[1,35],_=[1,36],x=[1,37],k=[1,38],w=[1,39],E=[1,40],T=[1,43],C=[1,44],S=[1,45],A=[1,46],M=[1,47],O=[1,48],N=[1,51],D=[1,4,5,16,20,22,25,26,32,33,34,36,38,39,40,41,42,43,45,47,49,50,51,52,53,58,59,60,61,69,79],B=[4,5,16,20,22,25,26,32,33,34,36,38,39,40,41,42,43,45,47,49,53,58,59,60,61,69,79],L=[4,5,16,20,22,25,26,32,33,34,36,38,39,40,41,42,43,45,47,49,52,53,58,59,60,61,69,79],I=[4,5,16,20,22,25,26,32,33,34,36,38,39,40,41,42,43,45,47,49,51,53,58,59,60,61,69,79],F=[4,5,16,20,22,25,26,32,33,34,36,38,39,40,41,42,43,45,47,49,50,53,58,59,60,61,69,79],R=[67,68,69],P=[1,121],j=[1,4,5,7,16,20,22,25,26,32,33,34,36,38,39,40,41,42,43,45,47,49,50,51,52,53,58,59,60,61,69,79],z={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NEWLINE:5,directive:6,SD:7,document:8,line:9,statement:10,openDirective:11,typeDirective:12,closeDirective:13,":":14,argDirective:15,participant:16,actor:17,AS:18,restOfLine:19,participant_actor:20,signal:21,autonumber:22,NUM:23,off:24,activate:25,deactivate:26,note_statement:27,links_statement:28,link_statement:29,properties_statement:30,details_statement:31,title:32,legacy_title:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,loop:39,end:40,rect:41,opt:42,alt:43,else_sections:44,par:45,par_sections:46,critical:47,option_sections:48,break:49,option:50,and:51,else:52,note:53,placement:54,text2:55,over:56,actor_pair:57,links:58,link:59,properties:60,details:61,spaceList:62,",":63,left_of:64,right_of:65,signaltype:66,"+":67,"-":68,ACTOR:69,SOLID_OPEN_ARROW:70,DOTTED_OPEN_ARROW:71,SOLID_ARROW:72,DOTTED_ARROW:73,SOLID_CROSS:74,DOTTED_CROSS:75,SOLID_POINT:76,DOTTED_POINT:77,TXT:78,open_directive:79,type_directive:80,arg_directive:81,close_directive:82,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NEWLINE",7:"SD",14:":",16:"participant",18:"AS",19:"restOfLine",20:"participant_actor",22:"autonumber",23:"NUM",24:"off",25:"activate",26:"deactivate",32:"title",33:"legacy_title",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",39:"loop",40:"end",41:"rect",42:"opt",43:"alt",45:"par",47:"critical",49:"break",50:"option",51:"and",52:"else",53:"note",56:"over",58:"links",59:"link",60:"properties",61:"details",63:",",64:"left_of",65:"right_of",67:"+",68:"-",69:"ACTOR",70:"SOLID_OPEN_ARROW",71:"DOTTED_OPEN_ARROW",72:"SOLID_ARROW",73:"DOTTED_ARROW",74:"SOLID_CROSS",75:"DOTTED_CROSS",76:"SOLID_POINT",77:"DOTTED_POINT",78:"TXT",79:"open_directive",80:"type_directive",81:"arg_directive",82:"close_directive"},productions_:[0,[3,2],[3,2],[3,2],[3,2],[8,0],[8,2],[9,2],[9,1],[9,1],[6,4],[6,6],[10,5],[10,3],[10,5],[10,3],[10,2],[10,4],[10,3],[10,3],[10,2],[10,3],[10,3],[10,2],[10,2],[10,2],[10,2],[10,2],[10,1],[10,1],[10,2],[10,2],[10,1],[10,4],[10,4],[10,4],[10,4],[10,4],[10,4],[10,4],[10,1],[48,1],[48,4],[46,1],[46,4],[44,1],[44,4],[27,4],[27,4],[28,3],[29,3],[30,3],[31,3],[62,2],[62,1],[57,3],[57,1],[54,1],[54,1],[21,5],[21,5],[21,4],[17,1],[66,1],[66,1],[66,1],[66,1],[66,1],[66,1],[66,1],[66,1],[55,1],[11,1],[12,1],[15,1],[13,1]],performAction:function(t,e,n,r,i,a,o){var s=a.length-1;switch(i){case 4:return r.apply(a[s]),a[s];case 5:case 9:this.$=[];break;case 6:a[s-1].push(a[s]),this.$=a[s-1];break;case 7:case 8:case 56:this.$=a[s];break;case 12:a[s-3].type="addParticipant",a[s-3].description=r.parseMessage(a[s-1]),this.$=a[s-3];break;case 13:a[s-1].type="addParticipant",this.$=a[s-1];break;case 14:a[s-3].type="addActor",a[s-3].description=r.parseMessage(a[s-1]),this.$=a[s-3];break;case 15:a[s-1].type="addActor",this.$=a[s-1];break;case 17:this.$={type:"sequenceIndex",sequenceIndex:Number(a[s-2]),sequenceIndexStep:Number(a[s-1]),sequenceVisible:!0,signalType:r.LINETYPE.AUTONUMBER};break;case 18:this.$={type:"sequenceIndex",sequenceIndex:Number(a[s-1]),sequenceIndexStep:1,sequenceVisible:!0,signalType:r.LINETYPE.AUTONUMBER};break;case 19:this.$={type:"sequenceIndex",sequenceVisible:!1,signalType:r.LINETYPE.AUTONUMBER};break;case 20:this.$={type:"sequenceIndex",sequenceVisible:!0,signalType:r.LINETYPE.AUTONUMBER};break;case 21:this.$={type:"activeStart",signalType:r.LINETYPE.ACTIVE_START,actor:a[s-1]};break;case 22:this.$={type:"activeEnd",signalType:r.LINETYPE.ACTIVE_END,actor:a[s-1]};break;case 28:r.setDiagramTitle(a[s].substring(6)),this.$=a[s].substring(6);break;case 29:r.setDiagramTitle(a[s].substring(7)),this.$=a[s].substring(7);break;case 30:this.$=a[s].trim(),r.setAccTitle(this.$);break;case 31:case 32:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 33:a[s-1].unshift({type:"loopStart",loopText:r.parseMessage(a[s-2]),signalType:r.LINETYPE.LOOP_START}),a[s-1].push({type:"loopEnd",loopText:a[s-2],signalType:r.LINETYPE.LOOP_END}),this.$=a[s-1];break;case 34:a[s-1].unshift({type:"rectStart",color:r.parseMessage(a[s-2]),signalType:r.LINETYPE.RECT_START}),a[s-1].push({type:"rectEnd",color:r.parseMessage(a[s-2]),signalType:r.LINETYPE.RECT_END}),this.$=a[s-1];break;case 35:a[s-1].unshift({type:"optStart",optText:r.parseMessage(a[s-2]),signalType:r.LINETYPE.OPT_START}),a[s-1].push({type:"optEnd",optText:r.parseMessage(a[s-2]),signalType:r.LINETYPE.OPT_END}),this.$=a[s-1];break;case 36:a[s-1].unshift({type:"altStart",altText:r.parseMessage(a[s-2]),signalType:r.LINETYPE.ALT_START}),a[s-1].push({type:"altEnd",signalType:r.LINETYPE.ALT_END}),this.$=a[s-1];break;case 37:a[s-1].unshift({type:"parStart",parText:r.parseMessage(a[s-2]),signalType:r.LINETYPE.PAR_START}),a[s-1].push({type:"parEnd",signalType:r.LINETYPE.PAR_END}),this.$=a[s-1];break;case 38:a[s-1].unshift({type:"criticalStart",criticalText:r.parseMessage(a[s-2]),signalType:r.LINETYPE.CRITICAL_START}),a[s-1].push({type:"criticalEnd",signalType:r.LINETYPE.CRITICAL_END}),this.$=a[s-1];break;case 39:a[s-1].unshift({type:"breakStart",breakText:r.parseMessage(a[s-2]),signalType:r.LINETYPE.BREAK_START}),a[s-1].push({type:"breakEnd",optText:r.parseMessage(a[s-2]),signalType:r.LINETYPE.BREAK_END}),this.$=a[s-1];break;case 42:this.$=a[s-3].concat([{type:"option",optionText:r.parseMessage(a[s-1]),signalType:r.LINETYPE.CRITICAL_OPTION},a[s]]);break;case 44:this.$=a[s-3].concat([{type:"and",parText:r.parseMessage(a[s-1]),signalType:r.LINETYPE.PAR_AND},a[s]]);break;case 46:this.$=a[s-3].concat([{type:"else",altText:r.parseMessage(a[s-1]),signalType:r.LINETYPE.ALT_ELSE},a[s]]);break;case 47:this.$=[a[s-1],{type:"addNote",placement:a[s-2],actor:a[s-1].actor,text:a[s]}];break;case 48:a[s-2]=[].concat(a[s-1],a[s-1]).slice(0,2),a[s-2][0]=a[s-2][0].actor,a[s-2][1]=a[s-2][1].actor,this.$=[a[s-1],{type:"addNote",placement:r.PLACEMENT.OVER,actor:a[s-2].slice(0,2),text:a[s]}];break;case 49:this.$=[a[s-1],{type:"addLinks",actor:a[s-1].actor,text:a[s]}];break;case 50:this.$=[a[s-1],{type:"addALink",actor:a[s-1].actor,text:a[s]}];break;case 51:this.$=[a[s-1],{type:"addProperties",actor:a[s-1].actor,text:a[s]}];break;case 52:this.$=[a[s-1],{type:"addDetails",actor:a[s-1].actor,text:a[s]}];break;case 55:this.$=[a[s-2],a[s]];break;case 57:this.$=r.PLACEMENT.LEFTOF;break;case 58:this.$=r.PLACEMENT.RIGHTOF;break;case 59:this.$=[a[s-4],a[s-1],{type:"addMessage",from:a[s-4].actor,to:a[s-1].actor,signalType:a[s-3],msg:a[s]},{type:"activeStart",signalType:r.LINETYPE.ACTIVE_START,actor:a[s-1]}];break;case 60:this.$=[a[s-4],a[s-1],{type:"addMessage",from:a[s-4].actor,to:a[s-1].actor,signalType:a[s-3],msg:a[s]},{type:"activeEnd",signalType:r.LINETYPE.ACTIVE_END,actor:a[s-4]}];break;case 61:this.$=[a[s-3],a[s-1],{type:"addMessage",from:a[s-3].actor,to:a[s-1].actor,signalType:a[s-2],msg:a[s]}];break;case 62:this.$={type:"addParticipant",actor:a[s]};break;case 63:this.$=r.LINETYPE.SOLID_OPEN;break;case 64:this.$=r.LINETYPE.DOTTED_OPEN;break;case 65:this.$=r.LINETYPE.SOLID;break;case 66:this.$=r.LINETYPE.DOTTED;break;case 67:this.$=r.LINETYPE.SOLID_CROSS;break;case 68:this.$=r.LINETYPE.DOTTED_CROSS;break;case 69:this.$=r.LINETYPE.SOLID_POINT;break;case 70:this.$=r.LINETYPE.DOTTED_POINT;break;case 71:this.$=r.parseMessage(a[s].trim().substring(1));break;case 72:r.parseDirective("%%{","open_directive");break;case 73:r.parseDirective(a[s],"type_directive");break;case 74:a[s]=a[s].trim().replace(/'/g,'"'),r.parseDirective(a[s],"arg_directive");break;case 75:r.parseDirective("}%%","close_directive","sequence")}},table:[{3:1,4:e,5:n,6:4,7:r,11:6,79:i},{1:[3]},{3:8,4:e,5:n,6:4,7:r,11:6,79:i},{3:9,4:e,5:n,6:4,7:r,11:6,79:i},{3:10,4:e,5:n,6:4,7:r,11:6,79:i},t([1,4,5,16,20,22,25,26,32,33,34,36,38,39,41,42,43,45,47,49,53,58,59,60,61,69,79],a,{8:11}),{12:12,80:[1,13]},{80:[2,72]},{1:[2,1]},{1:[2,2]},{1:[2,3]},{1:[2,4],4:o,5:s,6:41,9:14,10:16,11:6,16:c,17:42,20:l,21:20,22:u,25:h,26:d,27:24,28:25,29:26,30:27,31:28,32:f,33:p,34:g,36:y,38:m,39:b,41:v,42:_,43:x,45:k,47:w,49:E,53:T,58:C,59:S,60:A,61:M,69:O,79:i},{13:49,14:[1,50],82:N},t([14,82],[2,73]),t(D,[2,6]),{6:41,10:52,11:6,16:c,17:42,20:l,21:20,22:u,25:h,26:d,27:24,28:25,29:26,30:27,31:28,32:f,33:p,34:g,36:y,38:m,39:b,41:v,42:_,43:x,45:k,47:w,49:E,53:T,58:C,59:S,60:A,61:M,69:O,79:i},t(D,[2,8]),t(D,[2,9]),{17:53,69:O},{17:54,69:O},{5:[1,55]},{5:[1,58],23:[1,56],24:[1,57]},{17:59,69:O},{17:60,69:O},{5:[1,61]},{5:[1,62]},{5:[1,63]},{5:[1,64]},{5:[1,65]},t(D,[2,28]),t(D,[2,29]),{35:[1,66]},{37:[1,67]},t(D,[2,32]),{19:[1,68]},{19:[1,69]},{19:[1,70]},{19:[1,71]},{19:[1,72]},{19:[1,73]},{19:[1,74]},t(D,[2,40]),{66:75,70:[1,76],71:[1,77],72:[1,78],73:[1,79],74:[1,80],75:[1,81],76:[1,82],77:[1,83]},{54:84,56:[1,85],64:[1,86],65:[1,87]},{17:88,69:O},{17:89,69:O},{17:90,69:O},{17:91,69:O},t([5,18,63,70,71,72,73,74,75,76,77,78],[2,62]),{5:[1,92]},{15:93,81:[1,94]},{5:[2,75]},t(D,[2,7]),{5:[1,96],18:[1,95]},{5:[1,98],18:[1,97]},t(D,[2,16]),{5:[1,100],23:[1,99]},{5:[1,101]},t(D,[2,20]),{5:[1,102]},{5:[1,103]},t(D,[2,23]),t(D,[2,24]),t(D,[2,25]),t(D,[2,26]),t(D,[2,27]),t(D,[2,30]),t(D,[2,31]),t(B,a,{8:104}),t(B,a,{8:105}),t(B,a,{8:106}),t(L,a,{44:107,8:108}),t(I,a,{46:109,8:110}),t(F,a,{48:111,8:112}),t(B,a,{8:113}),{17:116,67:[1,114],68:[1,115],69:O},t(R,[2,63]),t(R,[2,64]),t(R,[2,65]),t(R,[2,66]),t(R,[2,67]),t(R,[2,68]),t(R,[2,69]),t(R,[2,70]),{17:117,69:O},{17:119,57:118,69:O},{69:[2,57]},{69:[2,58]},{55:120,78:P},{55:122,78:P},{55:123,78:P},{55:124,78:P},t(j,[2,10]),{13:125,82:N},{82:[2,74]},{19:[1,126]},t(D,[2,13]),{19:[1,127]},t(D,[2,15]),{5:[1,128]},t(D,[2,18]),t(D,[2,19]),t(D,[2,21]),t(D,[2,22]),{4:o,5:s,6:41,9:14,10:16,11:6,16:c,17:42,20:l,21:20,22:u,25:h,26:d,27:24,28:25,29:26,30:27,31:28,32:f,33:p,34:g,36:y,38:m,39:b,40:[1,129],41:v,42:_,43:x,45:k,47:w,49:E,53:T,58:C,59:S,60:A,61:M,69:O,79:i},{4:o,5:s,6:41,9:14,10:16,11:6,16:c,17:42,20:l,21:20,22:u,25:h,26:d,27:24,28:25,29:26,30:27,31:28,32:f,33:p,34:g,36:y,38:m,39:b,40:[1,130],41:v,42:_,43:x,45:k,47:w,49:E,53:T,58:C,59:S,60:A,61:M,69:O,79:i},{4:o,5:s,6:41,9:14,10:16,11:6,16:c,17:42,20:l,21:20,22:u,25:h,26:d,27:24,28:25,29:26,30:27,31:28,32:f,33:p,34:g,36:y,38:m,39:b,40:[1,131],41:v,42:_,43:x,45:k,47:w,49:E,53:T,58:C,59:S,60:A,61:M,69:O,79:i},{40:[1,132]},{4:o,5:s,6:41,9:14,10:16,11:6,16:c,17:42,20:l,21:20,22:u,25:h,26:d,27:24,28:25,29:26,30:27,31:28,32:f,33:p,34:g,36:y,38:m,39:b,40:[2,45],41:v,42:_,43:x,45:k,47:w,49:E,52:[1,133],53:T,58:C,59:S,60:A,61:M,69:O,79:i},{40:[1,134]},{4:o,5:s,6:41,9:14,10:16,11:6,16:c,17:42,20:l,21:20,22:u,25:h,26:d,27:24,28:25,29:26,30:27,31:28,32:f,33:p,34:g,36:y,38:m,39:b,40:[2,43],41:v,42:_,43:x,45:k,47:w,49:E,51:[1,135],53:T,58:C,59:S,60:A,61:M,69:O,79:i},{40:[1,136]},{4:o,5:s,6:41,9:14,10:16,11:6,16:c,17:42,20:l,21:20,22:u,25:h,26:d,27:24,28:25,29:26,30:27,31:28,32:f,33:p,34:g,36:y,38:m,39:b,40:[2,41],41:v,42:_,43:x,45:k,47:w,49:E,50:[1,137],53:T,58:C,59:S,60:A,61:M,69:O,79:i},{4:o,5:s,6:41,9:14,10:16,11:6,16:c,17:42,20:l,21:20,22:u,25:h,26:d,27:24,28:25,29:26,30:27,31:28,32:f,33:p,34:g,36:y,38:m,39:b,40:[1,138],41:v,42:_,43:x,45:k,47:w,49:E,53:T,58:C,59:S,60:A,61:M,69:O,79:i},{17:139,69:O},{17:140,69:O},{55:141,78:P},{55:142,78:P},{55:143,78:P},{63:[1,144],78:[2,56]},{5:[2,49]},{5:[2,71]},{5:[2,50]},{5:[2,51]},{5:[2,52]},{5:[1,145]},{5:[1,146]},{5:[1,147]},t(D,[2,17]),t(D,[2,33]),t(D,[2,34]),t(D,[2,35]),t(D,[2,36]),{19:[1,148]},t(D,[2,37]),{19:[1,149]},t(D,[2,38]),{19:[1,150]},t(D,[2,39]),{55:151,78:P},{55:152,78:P},{5:[2,61]},{5:[2,47]},{5:[2,48]},{17:153,69:O},t(j,[2,11]),t(D,[2,12]),t(D,[2,14]),t(L,a,{8:108,44:154}),t(I,a,{8:110,46:155}),t(F,a,{8:112,48:156}),{5:[2,59]},{5:[2,60]},{78:[2,55]},{40:[2,46]},{40:[2,44]},{40:[2,42]}],defaultActions:{7:[2,72],8:[2,1],9:[2,2],10:[2,3],51:[2,75],86:[2,57],87:[2,58],94:[2,74],120:[2,49],121:[2,71],122:[2,50],123:[2,51],124:[2,52],141:[2,61],142:[2,47],143:[2,48],151:[2,59],152:[2,60],153:[2,55],154:[2,46],155:[2,44],156:[2,42]},parseError:function(t,e){if(!e.recoverable){var n=new Error(t);throw n.hash=e,n}this.trace(t)},parse:function(t){var e=this,n=[0],r=[],i=[null],a=[],o=this.table,s="",c=0,l=0,u=0,h=2,d=1,f=a.slice.call(arguments,1),p=Object.create(this.lexer),g={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(g.yy[y]=this.yy[y]);p.setInput(t,g.yy),g.yy.lexer=p,g.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var m=p.yylloc;a.push(m);var b=p.options&&p.options.ranges;function v(){var t;return"number"!=typeof(t=r.pop()||p.lex()||d)&&(t instanceof Array&&(t=(r=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var _,x,k,w,E,T,C,S,A,M={};;){if(k=n[n.length-1],this.defaultActions[k]?w=this.defaultActions[k]:(null==_&&(_=v()),w=o[k]&&o[k][_]),void 0===w||!w.length||!w[0]){var O="";for(T in A=[],o[k])this.terminals_[T]&&T>h&&A.push("'"+this.terminals_[T]+"'");O=p.showPosition?"Parse error on line "+(c+1)+":\n"+p.showPosition()+"\nExpecting "+A.join(", ")+", got '"+(this.terminals_[_]||_)+"'":"Parse error on line "+(c+1)+": Unexpected "+(_==d?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(O,{text:p.match,token:this.terminals_[_]||_,line:p.yylineno,loc:m,expected:A})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+k+", token: "+_);switch(w[0]){case 1:n.push(_),i.push(p.yytext),a.push(p.yylloc),n.push(w[1]),_=null,x?(_=x,x=null):(l=p.yyleng,s=p.yytext,c=p.yylineno,m=p.yylloc,u>0&&u--);break;case 2:if(C=this.productions_[w[1]][1],M.$=i[i.length-C],M._$={first_line:a[a.length-(C||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(C||1)].first_column,last_column:a[a.length-1].last_column},b&&(M._$.range=[a[a.length-(C||1)].range[0],a[a.length-1].range[1]]),void 0!==(E=this.performAction.apply(M,[s,l,c,g.yy,w[1],i,a].concat(f))))return E;C&&(n=n.slice(0,-1*C*2),i=i.slice(0,-1*C),a=a.slice(0,-1*C)),n.push(this.productions_[w[1]][0]),i.push(M.$),a.push(M._$),S=o[n[n.length-2]][n[n.length-1]],n.push(S);break;case 3:return!0}}return!0}},Y={EOF:1,parseError:function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},setInput: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},input:function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput: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,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},test_match:function(t,e){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(r=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},next:function(){if(this.done)return this.EOF;var t,e,n,r;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;a<i.length;a++)if((n=this._input.match(this.rules[i[a]]))&&(!e||n[0].length>e[0].length)){if(e=n,r=a,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,i[a])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[r]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},pushState:function(t){this.begin(t)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(t,e,n,r){switch(n){case 0:return this.begin("open_directive"),79;case 1:return this.begin("type_directive"),80;case 2:return this.popState(),this.begin("arg_directive"),14;case 3:return this.popState(),this.popState(),82;case 4:return 81;case 5:case 52:case 65:return 5;case 6:case 7:case 8:case 9:case 10:break;case 11:return 23;case 12:return this.begin("ID"),16;case 13:return this.begin("ID"),20;case 14:return e.yytext=e.yytext.trim(),this.begin("ALIAS"),69;case 15:return this.popState(),this.popState(),this.begin("LINE"),18;case 16:return this.popState(),this.popState(),5;case 17:return this.begin("LINE"),39;case 18:return this.begin("LINE"),41;case 19:return this.begin("LINE"),42;case 20:return this.begin("LINE"),43;case 21:return this.begin("LINE"),52;case 22:return this.begin("LINE"),45;case 23:return this.begin("LINE"),51;case 24:return this.begin("LINE"),47;case 25:return this.begin("LINE"),50;case 26:return this.begin("LINE"),49;case 27:return this.popState(),19;case 28:return 40;case 29:return 64;case 30:return 65;case 31:return 58;case 32:return 59;case 33:return 60;case 34:return 61;case 35:return 56;case 36:return 53;case 37:return this.begin("ID"),25;case 38:return this.begin("ID"),26;case 39:return 32;case 40:return 33;case 41:return this.begin("acc_title"),34;case 42:return this.popState(),"acc_title_value";case 43:return this.begin("acc_descr"),36;case 44:return this.popState(),"acc_descr_value";case 45:this.begin("acc_descr_multiline");break;case 46:this.popState();break;case 47:return"acc_descr_multiline_value";case 48:return 7;case 49:return 22;case 50:return 24;case 51:return 63;case 53:return e.yytext=e.yytext.trim(),69;case 54:return 72;case 55:return 73;case 56:return 70;case 57:return 71;case 58:return 74;case 59:return 75;case 60:return 76;case 61:return 77;case 62:return 78;case 63:return 67;case 64:return 68;case 66:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[0-9]+(?=[ \n]+))/i,/^(?:participant\b)/i,/^(?:actor\b)/i,/^(?:[^\->:\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,/^(?: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,/^(?:-[x])/i,/^(?:--[x])/i,/^(?:-[\)])/i,/^(?:--[\)])/i,/^(?::(?:(?:no)?wrap)?[^#\n;]+)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[46,47],inclusive:!1},acc_descr:{rules:[44],inclusive:!1},acc_title:{rules:[42],inclusive:!1},open_directive:{rules:[1,8],inclusive:!1},type_directive:{rules:[2,3,8],inclusive:!1},arg_directive:{rules:[3,4,8],inclusive:!1},ID:{rules:[7,8,14],inclusive:!1},ALIAS:{rules:[7,8,15,16],inclusive:!1},LINE:{rules:[7,8,27],inclusive:!1},INITIAL:{rules:[0,5,6,8,9,10,11,12,13,17,18,19,20,21,22,23,24,25,26,28,29,30,31,32,33,34,35,36,37,38,39,40,41,43,45,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66],inclusive:!0}}};function U(){this.yy={}}return z.lexer=Y,U.prototype=z,z.Parser=U,new U}();e.parser=r,e.Parser=r.Parser,e.parse=function(){return r.parse.apply(r,arguments)},e.main=function(t){t[1]||(console.log("Usage: "+t[0]+" FILE"),process.exit(1));var r=n(1993).readFileSync(n(6470).normalize(t[1]),"utf8");return e.parser.parse(r)},n.c[n.s]===t&&e.main(process.argv.slice(1))},3584:(t,e,n)=>{t=n.nmd(t);var r=function(){var t=function(t,e,n,r){for(n=n||{},r=t.length;r--;n[t[r]]=e);return n},e=[1,2],n=[1,3],r=[1,5],i=[1,7],a=[2,5],o=[1,15],s=[1,17],c=[1,19],l=[1,20],u=[1,21],h=[1,22],d=[1,33],f=[1,23],p=[1,24],g=[1,25],y=[1,26],m=[1,27],b=[1,30],v=[1,31],_=[1,32],x=[1,35],k=[1,36],w=[1,37],E=[1,38],T=[1,34],C=[1,41],S=[1,4,5,14,15,17,19,20,22,23,24,25,26,27,31,33,35,41,42,43,44,47,50],A=[1,4,5,12,13,14,15,17,19,20,22,23,24,25,26,27,31,33,35,41,42,43,44,47,50],M=[1,4,5,7,14,15,17,19,20,22,23,24,25,26,27,31,33,35,41,42,43,44,47,50],O=[4,5,14,15,17,19,20,22,23,24,25,26,27,31,33,35,41,42,43,44,47,50],N={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,directive:6,SD:7,document:8,line:9,statement:10,idStatement:11,DESCR:12,"--\x3e":13,HIDE_EMPTY:14,scale:15,WIDTH:16,COMPOSIT_STATE:17,STRUCT_START:18,STRUCT_STOP:19,STATE_DESCR:20,AS:21,ID:22,FORK:23,JOIN:24,CHOICE:25,CONCURRENT:26,note:27,notePosition:28,NOTE_TEXT:29,direction:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,openDirective:36,typeDirective:37,closeDirective:38,":":39,argDirective:40,direction_tb:41,direction_bt:42,direction_rl:43,direction_lr:44,eol:45,";":46,EDGE_STATE:47,left_of:48,right_of:49,open_directive:50,type_directive:51,arg_directive:52,close_directive:53,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",7:"SD",12:"DESCR",13:"--\x3e",14:"HIDE_EMPTY",15:"scale",16:"WIDTH",17:"COMPOSIT_STATE",18:"STRUCT_START",19:"STRUCT_STOP",20:"STATE_DESCR",21:"AS",22:"ID",23:"FORK",24:"JOIN",25:"CHOICE",26:"CONCURRENT",27:"note",29:"NOTE_TEXT",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",39:":",41:"direction_tb",42:"direction_bt",43:"direction_rl",44:"direction_lr",46:";",47:"EDGE_STATE",48:"left_of",49:"right_of",50:"open_directive",51:"type_directive",52:"arg_directive",53:"close_directive"},productions_:[0,[3,2],[3,2],[3,2],[3,2],[8,0],[8,2],[9,2],[9,1],[9,1],[10,1],[10,2],[10,3],[10,4],[10,1],[10,2],[10,1],[10,4],[10,3],[10,6],[10,1],[10,1],[10,1],[10,1],[10,4],[10,4],[10,1],[10,1],[10,2],[10,2],[10,1],[6,3],[6,5],[30,1],[30,1],[30,1],[30,1],[45,1],[45,1],[11,1],[11,1],[28,1],[28,1],[36,1],[37,1],[40,1],[38,1]],performAction:function(t,e,n,r,i,a,o){var s=a.length-1;switch(i){case 4:return r.setRootDoc(a[s]),a[s];case 5:this.$=[];break;case 6:"nl"!=a[s]&&(a[s-1].push(a[s]),this.$=a[s-1]);break;case 7:case 8:case 39:case 40:this.$=a[s];break;case 9:this.$="nl";break;case 10:this.$={stmt:"state",id:a[s],type:"default",description:""};break;case 11:this.$={stmt:"state",id:a[s-1],type:"default",description:r.trimColon(a[s])};break;case 12:this.$={stmt:"relation",state1:{stmt:"state",id:a[s-2],type:"default",description:""},state2:{stmt:"state",id:a[s],type:"default",description:""}};break;case 13:this.$={stmt:"relation",state1:{stmt:"state",id:a[s-3],type:"default",description:""},state2:{stmt:"state",id:a[s-1],type:"default",description:""},description:a[s].substr(1).trim()};break;case 17:this.$={stmt:"state",id:a[s-3],type:"default",description:"",doc:a[s-1]};break;case 18:var c=a[s],l=a[s-2].trim();if(a[s].match(":")){var u=a[s].split(":");c=u[0],l=[l,u[1]]}this.$={stmt:"state",id:c,type:"default",description:l};break;case 19:this.$={stmt:"state",id:a[s-3],type:"default",description:a[s-5],doc:a[s-1]};break;case 20:this.$={stmt:"state",id:a[s],type:"fork"};break;case 21:this.$={stmt:"state",id:a[s],type:"join"};break;case 22:this.$={stmt:"state",id:a[s],type:"choice"};break;case 23:this.$={stmt:"state",id:r.getDividerId(),type:"divider"};break;case 24:this.$={stmt:"state",id:a[s-1].trim(),note:{position:a[s-2].trim(),text:a[s].trim()}};break;case 28:this.$=a[s].trim(),r.setAccTitle(this.$);break;case 29:case 30:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 33:r.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 34:r.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 35:r.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 36:r.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 43:r.parseDirective("%%{","open_directive");break;case 44:r.parseDirective(a[s],"type_directive");break;case 45:a[s]=a[s].trim().replace(/'/g,'"'),r.parseDirective(a[s],"arg_directive");break;case 46:r.parseDirective("}%%","close_directive","state")}},table:[{3:1,4:e,5:n,6:4,7:r,36:6,50:i},{1:[3]},{3:8,4:e,5:n,6:4,7:r,36:6,50:i},{3:9,4:e,5:n,6:4,7:r,36:6,50:i},{3:10,4:e,5:n,6:4,7:r,36:6,50:i},t([1,4,5,14,15,17,20,22,23,24,25,26,27,31,33,35,41,42,43,44,47,50],a,{8:11}),{37:12,51:[1,13]},{51:[2,43]},{1:[2,1]},{1:[2,2]},{1:[2,3]},{1:[2,4],4:o,5:s,6:28,9:14,10:16,11:18,14:c,15:l,17:u,20:h,22:d,23:f,24:p,25:g,26:y,27:m,30:29,31:b,33:v,35:_,36:6,41:x,42:k,43:w,44:E,47:T,50:i},{38:39,39:[1,40],53:C},t([39,53],[2,44]),t(S,[2,6]),{6:28,10:42,11:18,14:c,15:l,17:u,20:h,22:d,23:f,24:p,25:g,26:y,27:m,30:29,31:b,33:v,35:_,36:6,41:x,42:k,43:w,44:E,47:T,50:i},t(S,[2,8]),t(S,[2,9]),t(S,[2,10],{12:[1,43],13:[1,44]}),t(S,[2,14]),{16:[1,45]},t(S,[2,16],{18:[1,46]}),{21:[1,47]},t(S,[2,20]),t(S,[2,21]),t(S,[2,22]),t(S,[2,23]),{28:48,29:[1,49],48:[1,50],49:[1,51]},t(S,[2,26]),t(S,[2,27]),{32:[1,52]},{34:[1,53]},t(S,[2,30]),t(A,[2,39]),t(A,[2,40]),t(S,[2,33]),t(S,[2,34]),t(S,[2,35]),t(S,[2,36]),t(M,[2,31]),{40:54,52:[1,55]},t(M,[2,46]),t(S,[2,7]),t(S,[2,11]),{11:56,22:d,47:T},t(S,[2,15]),t(O,a,{8:57}),{22:[1,58]},{22:[1,59]},{21:[1,60]},{22:[2,41]},{22:[2,42]},t(S,[2,28]),t(S,[2,29]),{38:61,53:C},{53:[2,45]},t(S,[2,12],{12:[1,62]}),{4:o,5:s,6:28,9:14,10:16,11:18,14:c,15:l,17:u,19:[1,63],20:h,22:d,23:f,24:p,25:g,26:y,27:m,30:29,31:b,33:v,35:_,36:6,41:x,42:k,43:w,44:E,47:T,50:i},t(S,[2,18],{18:[1,64]}),{29:[1,65]},{22:[1,66]},t(M,[2,32]),t(S,[2,13]),t(S,[2,17]),t(O,a,{8:67}),t(S,[2,24]),t(S,[2,25]),{4:o,5:s,6:28,9:14,10:16,11:18,14:c,15:l,17:u,19:[1,68],20:h,22:d,23:f,24:p,25:g,26:y,27:m,30:29,31:b,33:v,35:_,36:6,41:x,42:k,43:w,44:E,47:T,50:i},t(S,[2,19])],defaultActions:{7:[2,43],8:[2,1],9:[2,2],10:[2,3],50:[2,41],51:[2,42],55:[2,45]},parseError:function(t,e){if(!e.recoverable){var n=new Error(t);throw n.hash=e,n}this.trace(t)},parse:function(t){var e=this,n=[0],r=[],i=[null],a=[],o=this.table,s="",c=0,l=0,u=0,h=2,d=1,f=a.slice.call(arguments,1),p=Object.create(this.lexer),g={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(g.yy[y]=this.yy[y]);p.setInput(t,g.yy),g.yy.lexer=p,g.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var m=p.yylloc;a.push(m);var b=p.options&&p.options.ranges;function v(){var t;return"number"!=typeof(t=r.pop()||p.lex()||d)&&(t instanceof Array&&(t=(r=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var _,x,k,w,E,T,C,S,A,M={};;){if(k=n[n.length-1],this.defaultActions[k]?w=this.defaultActions[k]:(null==_&&(_=v()),w=o[k]&&o[k][_]),void 0===w||!w.length||!w[0]){var O="";for(T in A=[],o[k])this.terminals_[T]&&T>h&&A.push("'"+this.terminals_[T]+"'");O=p.showPosition?"Parse error on line "+(c+1)+":\n"+p.showPosition()+"\nExpecting "+A.join(", ")+", got '"+(this.terminals_[_]||_)+"'":"Parse error on line "+(c+1)+": Unexpected "+(_==d?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(O,{text:p.match,token:this.terminals_[_]||_,line:p.yylineno,loc:m,expected:A})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+k+", token: "+_);switch(w[0]){case 1:n.push(_),i.push(p.yytext),a.push(p.yylloc),n.push(w[1]),_=null,x?(_=x,x=null):(l=p.yyleng,s=p.yytext,c=p.yylineno,m=p.yylloc,u>0&&u--);break;case 2:if(C=this.productions_[w[1]][1],M.$=i[i.length-C],M._$={first_line:a[a.length-(C||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(C||1)].first_column,last_column:a[a.length-1].last_column},b&&(M._$.range=[a[a.length-(C||1)].range[0],a[a.length-1].range[1]]),void 0!==(E=this.performAction.apply(M,[s,l,c,g.yy,w[1],i,a].concat(f))))return E;C&&(n=n.slice(0,-1*C*2),i=i.slice(0,-1*C),a=a.slice(0,-1*C)),n.push(this.productions_[w[1]][0]),i.push(M.$),a.push(M._$),S=o[n[n.length-2]][n[n.length-1]],n.push(S);break;case 3:return!0}}return!0}},D={EOF:1,parseError:function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},setInput: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},input:function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput: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,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},test_match:function(t,e){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(r=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},next:function(){if(this.done)return this.EOF;var t,e,n,r;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;a<i.length;a++)if((n=this._input.match(this.rules[i[a]]))&&(!e||n[0].length>e[0].length)){if(e=n,r=a,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,i[a])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[r]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},pushState:function(t){this.begin(t)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(t,e,n,r){switch(n){case 0:case 33:return 41;case 1:case 34:return 42;case 2:case 35:return 43;case 3:case 36:return 44;case 4:return this.begin("open_directive"),50;case 5:return this.begin("type_directive"),51;case 6:return this.popState(),this.begin("arg_directive"),39;case 7:return this.popState(),this.popState(),53;case 8:return 52;case 9:case 10:case 12:case 13:case 14:case 15:case 46:case 52:break;case 11:case 66:return 5;case 16:return this.pushState("SCALE"),15;case 17:return 16;case 18:case 24:case 40:case 43:this.popState();break;case 19:return this.begin("acc_title"),31;case 20:return this.popState(),"acc_title_value";case 21:return this.begin("acc_descr"),33;case 22:return this.popState(),"acc_descr_value";case 23:this.begin("acc_descr_multiline");break;case 25:return"acc_descr_multiline_value";case 26:this.pushState("STATE");break;case 27:case 30:return this.popState(),e.yytext=e.yytext.slice(0,-8).trim(),23;case 28:case 31:return this.popState(),e.yytext=e.yytext.slice(0,-8).trim(),24;case 29:case 32:return this.popState(),e.yytext=e.yytext.slice(0,-10).trim(),25;case 37:this.begin("STATE_STRING");break;case 38:return this.popState(),this.pushState("STATE_ID"),"AS";case 39:case 54:return this.popState(),"ID";case 41:return"STATE_DESCR";case 42:return 17;case 44:return this.popState(),this.pushState("struct"),18;case 45:return this.popState(),19;case 47:return this.begin("NOTE"),27;case 48:return this.popState(),this.pushState("NOTE_ID"),48;case 49:return this.popState(),this.pushState("NOTE_ID"),49;case 50:this.popState(),this.pushState("FLOATING_NOTE");break;case 51:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";case 53:return"NOTE_TEXT";case 55:return this.popState(),this.pushState("NOTE_TEXT"),22;case 56:return this.popState(),e.yytext=e.yytext.substr(2).trim(),29;case 57:return this.popState(),e.yytext=e.yytext.slice(0,-8).trim(),29;case 58:case 59:return 7;case 60:return 14;case 61:return 47;case 62:return 22;case 63:return e.yytext=e.yytext.trim(),12;case 64:return 13;case 65:return 26;case 67:return"INVALID"}},rules:[/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\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,/^(?:state\s+)/i,/^(?:.*<<fork>>)/i,/^(?:.*<<join>>)/i,/^(?:.*<<choice>>)/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,/^(?:\})/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],conditions:{LINE:{rules:[13,14],inclusive:!1},close_directive:{rules:[13,14],inclusive:!1},arg_directive:{rules:[7,8,13,14],inclusive:!1},type_directive:{rules:[6,7,13,14],inclusive:!1},open_directive:{rules:[5,13,14],inclusive:!1},struct:{rules:[13,14,26,33,34,35,36,45,46,47,61,62,63,64,65],inclusive:!1},FLOATING_NOTE_ID:{rules:[54],inclusive:!1},FLOATING_NOTE:{rules:[51,52,53],inclusive:!1},NOTE_TEXT:{rules:[56,57],inclusive:!1},NOTE_ID:{rules:[55],inclusive:!1},NOTE:{rules:[48,49,50],inclusive:!1},acc_descr_multiline:{rules:[24,25],inclusive:!1},acc_descr:{rules:[22],inclusive:!1},acc_title:{rules:[20],inclusive:!1},SCALE:{rules:[17,18],inclusive:!1},ALIAS:{rules:[],inclusive:!1},STATE_ID:{rules:[39],inclusive:!1},STATE_STRING:{rules:[40,41],inclusive:!1},FORK_STATE:{rules:[],inclusive:!1},STATE:{rules:[13,14,27,28,29,30,31,32,37,38,42,43,44],inclusive:!1},ID:{rules:[13,14],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,9,10,11,12,14,15,16,19,21,23,26,44,47,58,59,60,61,62,63,64,66,67],inclusive:!0}}};function B(){this.yy={}}return N.lexer=D,B.prototype=N,N.Parser=B,new B}();e.parser=r,e.Parser=r.Parser,e.parse=function(){return r.parse.apply(r,arguments)},e.main=function(t){t[1]||(console.log("Usage: "+t[0]+" FILE"),process.exit(1));var r=n(3069).readFileSync(n(6470).normalize(t[1]),"utf8");return e.parser.parse(r)},n.c[n.s]===t&&e.main(process.argv.slice(1))},9763:(t,e,n)=>{t=n.nmd(t);var r=function(){var t=function(t,e,n,r){for(n=n||{},r=t.length;r--;n[t[r]]=e);return n},e=[1,2],n=[1,5],r=[6,9,11,17,18,20,22,23,24,26],i=[1,15],a=[1,16],o=[1,17],s=[1,18],c=[1,19],l=[1,20],u=[1,24],h=[4,6,9,11,17,18,20,22,23,24,26],d={trace:function(){},yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,directive:7,line:8,SPACE:9,statement:10,NEWLINE:11,openDirective:12,typeDirective:13,closeDirective:14,":":15,argDirective:16,title:17,acc_title:18,acc_title_value:19,acc_descr:20,acc_descr_value:21,acc_descr_multiline_value:22,section:23,taskName:24,taskData:25,open_directive:26,type_directive:27,arg_directive:28,close_directive:29,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",9:"SPACE",11:"NEWLINE",15:":",17:"title",18:"acc_title",19:"acc_title_value",20:"acc_descr",21:"acc_descr_value",22:"acc_descr_multiline_value",23:"section",24:"taskName",25:"taskData",26:"open_directive",27:"type_directive",28:"arg_directive",29:"close_directive"},productions_:[0,[3,3],[3,2],[5,0],[5,2],[8,2],[8,1],[8,1],[8,1],[7,4],[7,6],[10,1],[10,2],[10,2],[10,1],[10,1],[10,2],[10,1],[12,1],[13,1],[16,1],[14,1]],performAction:function(t,e,n,r,i,a,o){var s=a.length-1;switch(i){case 1:return a[s-1];case 3:case 7:case 8:this.$=[];break;case 4:a[s-1].push(a[s]),this.$=a[s-1];break;case 5:case 6:this.$=a[s];break;case 11:r.setDiagramTitle(a[s].substr(6)),this.$=a[s].substr(6);break;case 12:this.$=a[s].trim(),r.setAccTitle(this.$);break;case 13:case 14:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 15:r.addSection(a[s].substr(8)),this.$=a[s].substr(8);break;case 16:r.addTask(a[s-1],a[s]),this.$="task";break;case 18:r.parseDirective("%%{","open_directive");break;case 19:r.parseDirective(a[s],"type_directive");break;case 20:a[s]=a[s].trim().replace(/'/g,'"'),r.parseDirective(a[s],"arg_directive");break;case 21:r.parseDirective("}%%","close_directive","journey")}},table:[{3:1,4:e,7:3,12:4,26:n},{1:[3]},t(r,[2,3],{5:6}),{3:7,4:e,7:3,12:4,26:n},{13:8,27:[1,9]},{27:[2,18]},{6:[1,10],7:21,8:11,9:[1,12],10:13,11:[1,14],12:4,17:i,18:a,20:o,22:s,23:c,24:l,26:n},{1:[2,2]},{14:22,15:[1,23],29:u},t([15,29],[2,19]),t(r,[2,8],{1:[2,1]}),t(r,[2,4]),{7:21,10:25,12:4,17:i,18:a,20:o,22:s,23:c,24:l,26:n},t(r,[2,6]),t(r,[2,7]),t(r,[2,11]),{19:[1,26]},{21:[1,27]},t(r,[2,14]),t(r,[2,15]),{25:[1,28]},t(r,[2,17]),{11:[1,29]},{16:30,28:[1,31]},{11:[2,21]},t(r,[2,5]),t(r,[2,12]),t(r,[2,13]),t(r,[2,16]),t(h,[2,9]),{14:32,29:u},{29:[2,20]},{11:[1,33]},t(h,[2,10])],defaultActions:{5:[2,18],7:[2,2],24:[2,21],31:[2,20]},parseError:function(t,e){if(!e.recoverable){var n=new Error(t);throw n.hash=e,n}this.trace(t)},parse:function(t){var e=this,n=[0],r=[],i=[null],a=[],o=this.table,s="",c=0,l=0,u=0,h=2,d=1,f=a.slice.call(arguments,1),p=Object.create(this.lexer),g={yy:{}};for(var y in this.yy)Object.prototype.hasOwnProperty.call(this.yy,y)&&(g.yy[y]=this.yy[y]);p.setInput(t,g.yy),g.yy.lexer=p,g.yy.parser=this,void 0===p.yylloc&&(p.yylloc={});var m=p.yylloc;a.push(m);var b=p.options&&p.options.ranges;function v(){var t;return"number"!=typeof(t=r.pop()||p.lex()||d)&&(t instanceof Array&&(t=(r=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof g.yy.parseError?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;for(var _,x,k,w,E,T,C,S,A,M={};;){if(k=n[n.length-1],this.defaultActions[k]?w=this.defaultActions[k]:(null==_&&(_=v()),w=o[k]&&o[k][_]),void 0===w||!w.length||!w[0]){var O="";for(T in A=[],o[k])this.terminals_[T]&&T>h&&A.push("'"+this.terminals_[T]+"'");O=p.showPosition?"Parse error on line "+(c+1)+":\n"+p.showPosition()+"\nExpecting "+A.join(", ")+", got '"+(this.terminals_[_]||_)+"'":"Parse error on line "+(c+1)+": Unexpected "+(_==d?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(O,{text:p.match,token:this.terminals_[_]||_,line:p.yylineno,loc:m,expected:A})}if(w[0]instanceof Array&&w.length>1)throw new Error("Parse Error: multiple actions possible at state: "+k+", token: "+_);switch(w[0]){case 1:n.push(_),i.push(p.yytext),a.push(p.yylloc),n.push(w[1]),_=null,x?(_=x,x=null):(l=p.yyleng,s=p.yytext,c=p.yylineno,m=p.yylloc,u>0&&u--);break;case 2:if(C=this.productions_[w[1]][1],M.$=i[i.length-C],M._$={first_line:a[a.length-(C||1)].first_line,last_line:a[a.length-1].last_line,first_column:a[a.length-(C||1)].first_column,last_column:a[a.length-1].last_column},b&&(M._$.range=[a[a.length-(C||1)].range[0],a[a.length-1].range[1]]),void 0!==(E=this.performAction.apply(M,[s,l,c,g.yy,w[1],i,a].concat(f))))return E;C&&(n=n.slice(0,-1*C*2),i=i.slice(0,-1*C),a=a.slice(0,-1*C)),n.push(this.productions_[w[1]][0]),i.push(M.$),a.push(M._$),S=o[n[n.length-2]][n[n.length-1]],n.push(S);break;case 3:return!0}}return!0}},f={EOF:1,parseError:function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},setInput: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},input:function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput: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,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},test_match:function(t,e){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(r=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},next:function(){if(this.done)return this.EOF;var t,e,n,r;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;a<i.length;a++)if((n=this._input.match(this.rules[i[a]]))&&(!e||n[0].length>e[0].length)){if(e=n,r=a,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,i[a])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[r]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},pushState:function(t){this.begin(t)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(t,e,n,r){switch(n){case 0:return this.begin("open_directive"),26;case 1:return this.begin("type_directive"),27;case 2:return this.popState(),this.begin("arg_directive"),15;case 3:return this.popState(),this.popState(),29;case 4:return 28;case 5:case 6:case 8:case 9:break;case 7:return 11;case 10:return 4;case 11:return 17;case 12:return this.begin("acc_title"),18;case 13:return this.popState(),"acc_title_value";case 14:return this.begin("acc_descr"),20;case 15:return this.popState(),"acc_descr_value";case 16:this.begin("acc_descr_multiline");break;case 17:this.popState();break;case 18:return"acc_descr_multiline_value";case 19:return 23;case 20:return 24;case 21:return 25;case 22:return 15;case 23:return 6;case 24:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%(?!\{)[^\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:{open_directive:{rules:[1],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},acc_descr_multiline:{rules:[17,18],inclusive:!1},acc_descr:{rules:[15],inclusive:!1},acc_title:{rules:[13],inclusive:!1},INITIAL:{rules:[0,5,6,7,8,9,10,11,12,14,16,19,20,21,22,23,24],inclusive:!0}}};function p(){this.yy={}}return d.lexer=f,p.prototype=d,d.Parser=p,new p}();e.parser=r,e.Parser=r.Parser,e.parse=function(){return r.parse.apply(r,arguments)},e.main=function(t){t[1]||(console.log("Usage: "+t[0]+" FILE"),process.exit(1));var r=n(9143).readFileSync(n(6470).normalize(t[1]),"utf8");return e.parser.parse(r)},n.c[n.s]===t&&e.main(process.argv.slice(1))},7967:(t,e)=>{e.N=void 0;var n=/^([^\w]*)(javascript|data|vbscript)/im,r=/&#(\w+)(^\w|;)?/g,i=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim,a=/^([^:]+):/gm,o=[".","/"];e.N=function(t){var e,s=(e=t||"",e.replace(r,(function(t,e){return String.fromCharCode(e)}))).replace(i,"").trim();if(!s)return"about:blank";if(function(t){return o.indexOf(t[0])>-1}(s))return s;var c=s.match(a);if(!c)return s;var l=c[0];return n.test(l)?"about:blank":s}},3841:t=>{t.exports=function(t,e){return t.intersect(e)}},6187:(t,e,n)=>{n.d(e,{Z:()=>Il});var r=n(1941),i=n.n(r),a={debug:1,info:2,warn:3,error:4,fatal:5},o={debug:function(){},info:function(){},warn:function(){},error:function(){},fatal:function(){}},s=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"fatal";isNaN(t)&&(t=t.toLowerCase(),void 0!==a[t]&&(t=a[t])),o.trace=function(){},o.debug=function(){},o.info=function(){},o.warn=function(){},o.error=function(){},o.fatal=function(){},t<=a.fatal&&(o.fatal=console.error?console.error.bind(console,c("FATAL"),"color: orange"):console.log.bind(console,"\x1b[35m",c("FATAL"))),t<=a.error&&(o.error=console.error?console.error.bind(console,c("ERROR"),"color: orange"):console.log.bind(console,"\x1b[31m",c("ERROR"))),t<=a.warn&&(o.warn=console.warn?console.warn.bind(console,c("WARN"),"color: orange"):console.log.bind(console,"\x1b[33m",c("WARN"))),t<=a.info&&(o.info=console.info?console.info.bind(console,c("INFO"),"color: lightblue"):console.log.bind(console,"\x1b[34m",c("INFO"))),t<=a.debug&&(o.debug=console.debug?console.debug.bind(console,c("DEBUG"),"color: lightgreen"):console.log.bind(console,"\x1b[32m",c("DEBUG")))},c=function(t){var e=i()().format("ss.SSS");return"%c".concat(e," : ").concat(t," : ")},l=n(7543),u="comm",h="rule",d="decl",f=Math.abs,p=String.fromCharCode;function g(t){return t.trim()}function y(t,e,n){return t.replace(e,n)}function m(t,e){return t.indexOf(e)}function b(t,e){return 0|t.charCodeAt(e)}function v(t,e,n){return t.slice(e,n)}function _(t){return t.length}function x(t){return t.length}function k(t,e){return e.push(t),t}function w(t,e){for(var n="",r=x(t),i=0;i<r;i++)n+=e(t[i],i,t,e)||"";return n}function E(t,e,n,r){switch(t.type){case"@import":case d:return t.return=t.return||t.value;case u:return"";case"@keyframes":return t.return=t.value+"{"+w(t.children,r)+"}";case h:t.value=t.props.join(",")}return _(n=w(t.children,r))?t.return=t.value+"{"+n+"}":""}Object.assign;var T=1,C=1,S=0,A=0,M=0,O="";function N(t,e,n,r,i,a,o){return{value:t,root:e,parent:n,type:r,props:i,children:a,line:T,column:C,length:o,return:""}}function D(){return M=A>0?b(O,--A):0,C--,10===M&&(C=1,T--),M}function B(){return M=A<S?b(O,A++):0,C++,10===M&&(C=1,T++),M}function L(){return b(O,A)}function I(){return A}function F(t,e){return v(O,t,e)}function R(t){switch(t){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function P(t){return g(F(A-1,Y(91===t?t+2:40===t?t+1:t)))}function j(t){for(;(M=L())&&M<33;)B();return R(t)>2||R(M)>3?"":" "}function z(t,e){for(;--e&&B()&&!(M<48||M>102||M>57&&M<65||M>70&&M<97););return F(t,I()+(e<6&&32==L()&&32==B()))}function Y(t){for(;B();)switch(M){case t:return A;case 34:case 39:34!==t&&39!==t&&Y(M);break;case 40:41===t&&Y(t);break;case 92:B()}return A}function U(t,e){for(;B()&&t+M!==57&&(t+M!==84||47!==L()););return"/*"+F(e,A-1)+"*"+p(47===t?t:B())}function $(t){for(;!R(L());)B();return F(t,A)}function W(t){return function(t){return O="",t}(q("",null,null,null,[""],t=function(t){return T=C=1,S=_(O=t),A=0,[]}(t),0,[0],t))}function q(t,e,n,r,i,a,o,s,c){for(var l=0,u=0,h=o,d=0,f=0,g=0,b=1,v=1,x=1,w=0,E="",T=i,C=a,S=r,A=E;v;)switch(g=w,w=B()){case 40:if(108!=g&&58==A.charCodeAt(h-1)){-1!=m(A+=y(P(w),"&","&\f"),"&\f")&&(x=-1);break}case 34:case 39:case 91:A+=P(w);break;case 9:case 10:case 13:case 32:A+=j(g);break;case 92:A+=z(I()-1,7);continue;case 47:switch(L()){case 42:case 47:k(V(U(B(),I()),e,n),c);break;default:A+="/"}break;case 123*b:s[l++]=_(A)*x;case 125*b:case 59:case 0:switch(w){case 0:case 125:v=0;case 59+u:f>0&&_(A)-h&&k(f>32?G(A+";",r,n,h-1):G(y(A," ","")+";",r,n,h-2),c);break;case 59:A+=";";default:if(k(S=H(A,e,n,l,u,i,s,E,T=[],C=[],h),a),123===w)if(0===u)q(A,e,S,S,T,a,h,s,C);else switch(d){case 100:case 109:case 115:q(t,S,S,r&&k(H(t,S,S,0,0,i,s,E,i,T=[],h),C),i,C,h,s,r?T:C);break;default:q(A,S,S,S,[""],C,0,s,C)}}l=u=f=0,b=x=1,E=A="",h=o;break;case 58:h=1+_(A),f=g;default:if(b<1)if(123==w)--b;else if(125==w&&0==b++&&125==D())continue;switch(A+=p(w),w*b){case 38:x=u>0?1:(A+="\f",-1);break;case 44:s[l++]=(_(A)-1)*x,x=1;break;case 64:45===L()&&(A+=P(B())),d=L(),u=h=_(E=A+=$(I())),w++;break;case 45:45===g&&2==_(A)&&(b=0)}}return a}function H(t,e,n,r,i,a,o,s,c,l,u){for(var d=i-1,p=0===i?a:[""],m=x(p),b=0,_=0,k=0;b<r;++b)for(var w=0,E=v(t,d+1,d=f(_=o[b])),T=t;w<m;++w)(T=g(_>0?p[w]+" "+E:y(E,/&\f/g,p[w])))&&(c[k++]=T);return N(t,e,n,0===i?h:s,c,l,u)}function V(t,e,n){return N(t,e,n,u,p(M),v(t,2,-2),0)}function G(t,e,n,r){return N(t,e,n,d,v(t,0,r),v(t,r+1,-1),r)}const X="9.1.7";function Z(t){return Z="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Z(t)}const Q=function t(e,n,r){var i=Object.assign({depth:2,clobber:!1},r),a=i.depth,o=i.clobber;return Array.isArray(n)&&!Array.isArray(e)?(n.forEach((function(n){return t(e,n,r)})),e):Array.isArray(n)&&Array.isArray(e)?(n.forEach((function(t){-1===e.indexOf(t)&&e.push(t)})),e):void 0===e||a<=0?null!=e&&"object"===Z(e)&&"object"===Z(n)?Object.assign(e,n):n:(void 0!==n&&"object"===Z(e)&&"object"===Z(n)&&Object.keys(n).forEach((function(r){"object"!==Z(n[r])||void 0!==e[r]&&"object"!==Z(e[r])?(o||"object"!==Z(e[r])&&"object"!==Z(n[r]))&&(e[r]=n[r]):(void 0===e[r]&&(e[r]=Array.isArray(n[r])?[]:{}),e[r]=t(e[r],n[r],{depth:a-1,clobber:o}))})),e)},K={min:{r:0,g:0,b:0,s:0,l:0,a:0},max:{r:255,g:255,b:255,h:360,s:100,l:100,a:1},clamp:{r:t=>t>=255?255:t<0?0:t,g:t=>t>=255?255:t<0?0:t,b:t=>t>=255?255:t<0?0:t,h:t=>t%360,s:t=>t>=100?100:t<0?0:t,l:t=>t>=100?100:t<0?0:t,a:t=>t>=1?1:t<0?0:t},toLinear:t=>{const e=t/255;return t>.03928?Math.pow((e+.055)/1.055,2.4):e/12.92},hue2rgb:(t,e,n)=>(n<0&&(n+=1),n>1&&(n-=1),n<1/6?t+6*(e-t)*n:n<.5?e:n<2/3?t+(e-t)*(2/3-n)*6:t),hsl2rgb:({h:t,s:e,l:n},r)=>{if(!e)return 2.55*n;t/=360,e/=100;const i=(n/=100)<.5?n*(1+e):n+e-n*e,a=2*n-i;switch(r){case"r":return 255*K.hue2rgb(a,i,t+1/3);case"g":return 255*K.hue2rgb(a,i,t);case"b":return 255*K.hue2rgb(a,i,t-1/3)}},rgb2hsl:({r:t,g:e,b:n},r)=>{t/=255,e/=255,n/=255;const i=Math.max(t,e,n),a=Math.min(t,e,n),o=(i+a)/2;if("l"===r)return 100*o;if(i===a)return 0;const s=i-a;if("s"===r)return 100*(o>.5?s/(2-i-a):s/(i+a));switch(i){case t:return 60*((e-n)/s+(e<n?6:0));case e:return 60*((n-t)/s+2);case n:return 60*((t-e)/s+4);default:return-1}}},J={channel:K,lang:{clamp:(t,e,n)=>e>n?Math.min(e,Math.max(n,t)):Math.min(n,Math.max(e,t)),round:t=>Math.round(1e10*t)/1e10},unit:{dec2hex:t=>{const e=Math.round(t).toString(16);return e.length>1?e:`0${e}`}}},tt={};for(let Fl=0;Fl<=255;Fl++)tt[Fl]=J.unit.dec2hex(Fl);const et=new class{constructor(t,e){this.color=e,this.changed=!1,this.data=t,this.type=new class{constructor(){this.type=0}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=0}is(t){return this.type===t}}}set(t,e){return this.color=e,this.changed=!1,this.data=t,this.type.type=0,this}_ensureHSL(){const t=this.data,{h:e,s:n,l:r}=t;void 0===e&&(t.h=J.channel.rgb2hsl(t,"h")),void 0===n&&(t.s=J.channel.rgb2hsl(t,"s")),void 0===r&&(t.l=J.channel.rgb2hsl(t,"l"))}_ensureRGB(){const t=this.data,{r:e,g:n,b:r}=t;void 0===e&&(t.r=J.channel.hsl2rgb(t,"r")),void 0===n&&(t.g=J.channel.hsl2rgb(t,"g")),void 0===r&&(t.b=J.channel.hsl2rgb(t,"b"))}get r(){const t=this.data,e=t.r;return this.type.is(2)||void 0===e?(this._ensureHSL(),J.channel.hsl2rgb(t,"r")):e}get g(){const t=this.data,e=t.g;return this.type.is(2)||void 0===e?(this._ensureHSL(),J.channel.hsl2rgb(t,"g")):e}get b(){const t=this.data,e=t.b;return this.type.is(2)||void 0===e?(this._ensureHSL(),J.channel.hsl2rgb(t,"b")):e}get h(){const t=this.data,e=t.h;return this.type.is(1)||void 0===e?(this._ensureRGB(),J.channel.rgb2hsl(t,"h")):e}get s(){const t=this.data,e=t.s;return this.type.is(1)||void 0===e?(this._ensureRGB(),J.channel.rgb2hsl(t,"s")):e}get l(){const t=this.data,e=t.l;return this.type.is(1)||void 0===e?(this._ensureRGB(),J.channel.rgb2hsl(t,"l")):e}get a(){return this.data.a}set r(t){this.type.set(1),this.changed=!0,this.data.r=t}set g(t){this.type.set(1),this.changed=!0,this.data.g=t}set b(t){this.type.set(1),this.changed=!0,this.data.b=t}set h(t){this.type.set(2),this.changed=!0,this.data.h=t}set s(t){this.type.set(2),this.changed=!0,this.data.s=t}set l(t){this.type.set(2),this.changed=!0,this.data.l=t}set a(t){this.changed=!0,this.data.a=t}}({r:0,g:0,b:0,a:0},"transparent"),nt={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:t=>{if(35!==t.charCodeAt(0))return;const e=t.match(nt.re);if(!e)return;const n=e[1],r=parseInt(n,16),i=n.length,a=i%4==0,o=i>4,s=o?1:17,c=o?8:4,l=a?0:-1,u=o?255:15;return et.set({r:(r>>c*(l+3)&u)*s,g:(r>>c*(l+2)&u)*s,b:(r>>c*(l+1)&u)*s,a:a?(r&u)*s/255:1},t)},stringify:t=>{const{r:e,g:n,b:r,a:i}=t;return i<1?`#${tt[Math.round(e)]}${tt[Math.round(n)]}${tt[Math.round(r)]}${tt[Math.round(255*i)]}`:`#${tt[Math.round(e)]}${tt[Math.round(n)]}${tt[Math.round(r)]}`}},rt=nt,it={re:/^hsla?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(?:deg|grad|rad|turn)?)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(%)?))?\s*?\)$/i,hueRe:/^(.+?)(deg|grad|rad|turn)$/i,_hue2deg:t=>{const e=t.match(it.hueRe);if(e){const[,t,n]=e;switch(n){case"grad":return J.channel.clamp.h(.9*parseFloat(t));case"rad":return J.channel.clamp.h(180*parseFloat(t)/Math.PI);case"turn":return J.channel.clamp.h(360*parseFloat(t))}}return J.channel.clamp.h(parseFloat(t))},parse:t=>{const e=t.charCodeAt(0);if(104!==e&&72!==e)return;const n=t.match(it.re);if(!n)return;const[,r,i,a,o,s]=n;return et.set({h:it._hue2deg(r),s:J.channel.clamp.s(parseFloat(i)),l:J.channel.clamp.l(parseFloat(a)),a:o?J.channel.clamp.a(s?parseFloat(o)/100:parseFloat(o)):1},t)},stringify:t=>{const{h:e,s:n,l:r,a:i}=t;return i<1?`hsla(${J.lang.round(e)}, ${J.lang.round(n)}%, ${J.lang.round(r)}%, ${i})`:`hsl(${J.lang.round(e)}, ${J.lang.round(n)}%, ${J.lang.round(r)}%)`}},at=it,ot={colors:{aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyanaqua:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",transparent:"#00000000",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},parse:t=>{t=t.toLowerCase();const e=ot.colors[t];if(e)return rt.parse(e)},stringify:t=>{const e=rt.stringify(t);for(const n in ot.colors)if(ot.colors[n]===e)return n}},st=ot,ct={re:/^rgba?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?)))?\s*?\)$/i,parse:t=>{const e=t.charCodeAt(0);if(114!==e&&82!==e)return;const n=t.match(ct.re);if(!n)return;const[,r,i,a,o,s,c,l,u]=n;return et.set({r:J.channel.clamp.r(i?2.55*parseFloat(r):parseFloat(r)),g:J.channel.clamp.g(o?2.55*parseFloat(a):parseFloat(a)),b:J.channel.clamp.b(c?2.55*parseFloat(s):parseFloat(s)),a:l?J.channel.clamp.a(u?parseFloat(l)/100:parseFloat(l)):1},t)},stringify:t=>{const{r:e,g:n,b:r,a:i}=t;return i<1?`rgba(${J.lang.round(e)}, ${J.lang.round(n)}, ${J.lang.round(r)}, ${J.lang.round(i)})`:`rgb(${J.lang.round(e)}, ${J.lang.round(n)}, ${J.lang.round(r)})`}},lt=ct,ut=t=>{if("string"!=typeof t)return t;const e=rt.parse(t)||lt.parse(t)||at.parse(t)||st.parse(t);if(e)return e;throw new Error(`Unsupported color format: "${t}"`)},ht=t=>!t.changed&&t.color?t.color:t.type.is(2)||void 0===t.data.r?at.stringify(t):t.a<1||!Number.isInteger(t.r)||!Number.isInteger(t.g)||!Number.isInteger(t.b)?lt.stringify(t):rt.stringify(t),dt=(t,e)=>{const n=ut(t);for(const r in e)n[r]=J.channel.clamp[r](e[r]);return ht(n)},ft=(t,e)=>{const n=ut(t),r={};for(const i in e)e[i]&&(r[i]=n[i]+e[i]);return dt(t,r)},pt=(t,e,n=0,r=1)=>{if("number"!=typeof t)return dt(t,{a:e});const i=et.set({r:J.channel.clamp.r(t),g:J.channel.clamp.g(e),b:J.channel.clamp.b(n),a:J.channel.clamp.a(r)});return ht(i)},gt=(t,e=100)=>{const n=ut(t);return n.r=255-n.r,n.g=255-n.g,n.b=255-n.b,((t,e,n=50)=>{const{r:r,g:i,b:a,a:o}=ut(t),{r:s,g:c,b:l,a:u}=ut(e),h=n/100,d=2*h-1,f=o-u,p=((d*f==-1?d:(d+f)/(1+d*f))+1)/2,g=1-p;return pt(r*p+s*g,i*p+c*g,a*p+l*g,o*h+u*(1-h))})(n,t,e)},yt=(t,e,n)=>{const r=ut(t),i=r[e],a=J.channel.clamp[e](i+n);return i!==a&&(r[e]=a),ht(r)},mt=(t,e)=>yt(t,"l",-e),bt=(t,e)=>yt(t,"l",e);var vt=function(t,e){return ft(t,e?{s:-40,l:10}:{s:-40,l:-10})};function _t(t){return _t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},_t(t)}var xt=function(){function t(){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.background="#f4f4f4",this.darkMode=!1,this.primaryColor="#fff4dd",this.noteBkgColor="#fff5ad",this.noteTextColor="#333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px"}var e,n;return e=t,n=[{key:"updateColors",value:function(){this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#333"),this.secondaryColor=this.secondaryColor||ft(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||ft(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||vt(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||vt(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||vt(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||vt(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||gt(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||gt(this.tertiaryColor),this.lineColor=this.lineColor||gt(this.background),this.textColor=this.textColor||this.primaryTextColor,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?mt(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||"grey",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||mt(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||gt(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||bt(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.classText=this.classText||this.textColor,this.fillType0=this.fillType0||this.primaryColor,this.fillType1=this.fillType1||this.secondaryColor,this.fillType2=this.fillType2||ft(this.primaryColor,{h:64}),this.fillType3=this.fillType3||ft(this.secondaryColor,{h:64}),this.fillType4=this.fillType4||ft(this.primaryColor,{h:-64}),this.fillType5=this.fillType5||ft(this.secondaryColor,{h:-64}),this.fillType6=this.fillType6||ft(this.primaryColor,{h:128}),this.fillType7=this.fillType7||ft(this.secondaryColor,{h:128}),this.pie1=this.pie1||this.primaryColor,this.pie2=this.pie2||this.secondaryColor,this.pie3=this.pie3||this.tertiaryColor,this.pie4=this.pie4||ft(this.primaryColor,{l:-10}),this.pie5=this.pie5||ft(this.secondaryColor,{l:-10}),this.pie6=this.pie6||ft(this.tertiaryColor,{l:-10}),this.pie7=this.pie7||ft(this.primaryColor,{h:60,l:-10}),this.pie8=this.pie8||ft(this.primaryColor,{h:-60,l:-10}),this.pie9=this.pie9||ft(this.primaryColor,{h:120,l:0}),this.pie10=this.pie10||ft(this.primaryColor,{h:60,l:-20}),this.pie11=this.pie11||ft(this.primaryColor,{h:-60,l:-20}),this.pie12=this.pie12||ft(this.primaryColor,{h:120,l:-10}),this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOpacity=this.pieOpacity||"0.7",this.requirementBackground=this.requirementBackground||this.primaryColor,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||this.primaryBorderColor,this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||(this.darkMode?mt(this.secondaryColor,30):this.secondaryColor),this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=this.git0||this.primaryColor,this.git1=this.git1||this.secondaryColor,this.git2=this.git2||this.tertiaryColor,this.git3=this.git3||ft(this.primaryColor,{h:-30}),this.git4=this.git4||ft(this.primaryColor,{h:-60}),this.git5=this.git5||ft(this.primaryColor,{h:-90}),this.git6=this.git6||ft(this.primaryColor,{h:60}),this.git7=this.git7||ft(this.primaryColor,{h:120}),this.darkMode?(this.git0=bt(this.git0,25),this.git1=bt(this.git1,25),this.git2=bt(this.git2,25),this.git3=bt(this.git3,25),this.git4=bt(this.git4,25),this.git5=bt(this.git5,25),this.git6=bt(this.git6,25),this.git7=bt(this.git7,25)):(this.git0=mt(this.git0,25),this.git1=mt(this.git1,25),this.git2=mt(this.git2,25),this.git3=mt(this.git3,25),this.git4=mt(this.git4,25),this.git5=mt(this.git5,25),this.git6=mt(this.git6,25),this.git7=mt(this.git7,25)),this.gitInv0=this.gitInv0||gt(this.git0),this.gitInv1=this.gitInv1||gt(this.git1),this.gitInv2=this.gitInv2||gt(this.git2),this.gitInv3=this.gitInv3||gt(this.git3),this.gitInv4=this.gitInv4||gt(this.git4),this.gitInv5=this.gitInv5||gt(this.git5),this.gitInv6=this.gitInv6||gt(this.git6),this.gitInv7=this.gitInv7||gt(this.git7),this.branchLabelColor=this.branchLabelColor||(this.darkMode?"black":this.labelTextColor),this.gitBranchLabel0=this.gitBranchLabel0||this.branchLabelColor,this.gitBranchLabel1=this.gitBranchLabel1||this.branchLabelColor,this.gitBranchLabel2=this.gitBranchLabel2||this.branchLabelColor,this.gitBranchLabel3=this.gitBranchLabel3||this.branchLabelColor,this.gitBranchLabel4=this.gitBranchLabel4||this.branchLabelColor,this.gitBranchLabel5=this.gitBranchLabel5||this.branchLabelColor,this.gitBranchLabel6=this.gitBranchLabel6||this.branchLabelColor,this.gitBranchLabel7=this.gitBranchLabel7||this.branchLabelColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px"}},{key:"calculate",value:function(t){var e=this;if("object"===_t(t)){var n=Object.keys(t);n.forEach((function(n){e[n]=t[n]})),this.updateColors(),n.forEach((function(n){e[n]=t[n]}))}else this.updateColors()}}],n&&function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(e.prototype,n),Object.defineProperty(e,"prototype",{writable:!1}),t}();function kt(t){return kt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},kt(t)}var wt=function(){function t(){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=bt(this.primaryColor,16),this.tertiaryColor=ft(this.primaryColor,{h:-160}),this.primaryBorderColor=gt(this.background),this.secondaryBorderColor=vt(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=vt(this.tertiaryColor,this.darkMode),this.primaryTextColor=gt(this.primaryColor),this.secondaryTextColor=gt(this.secondaryColor),this.tertiaryTextColor=gt(this.tertiaryColor),this.lineColor=gt(this.background),this.textColor=gt(this.background),this.mainBkg="#1f2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=bt(gt("#323D47"),10),this.lineColor="calculated",this.border1="#81B1DB",this.border2=pt(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.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=mt("#EAE8D9",30),this.altSectionBkgColor="calculated",this.sectionBkgColor2="#EAE8D9",this.taskBorderColor=pt(255,255,255,70),this.taskBkgColor="calculated",this.taskTextColor="calculated",this.taskTextLightColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor=pt(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="calculated",this.personBkg="calculated",this.labelColor="calculated",this.errorBkgColor="#a44141",this.errorTextColor="#ddd"}var e,n;return e=t,n=[{key:"updateColors",value:function(){this.secondBkg=bt(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=bt(this.labelBackground,25),this.actorBorder=this.border1,this.actorBkg=this.mainBkg,this.actorTextColor=this.mainContrastColor,this.actorLineColor=this.mainContrastColor,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=bt(this.mainBkg,23),this.taskTextColor=this.darkTextColor,this.taskTextLightColor=this.mainContrastColor,this.taskTextOutsideColor=this.taskTextLightColor,this.gridColor=this.mainContrastColor,this.doneTaskBkgColor=this.mainContrastColor,this.taskTextDarkColor=this.darkTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#555",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.primaryBorderColor,this.specialStateColor="#f4f4f4",this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.fillType0=this.primaryColor,this.fillType1=this.secondaryColor,this.fillType2=ft(this.primaryColor,{h:64}),this.fillType3=ft(this.secondaryColor,{h:64}),this.fillType4=ft(this.primaryColor,{h:-64}),this.fillType5=ft(this.secondaryColor,{h:-64}),this.fillType6=ft(this.primaryColor,{h:128}),this.fillType7=ft(this.secondaryColor,{h:128}),this.pie1=this.pie1||"#0b0000",this.pie2=this.pie2||"#4d1037",this.pie3=this.pie3||"#3f5258",this.pie4=this.pie4||"#4f2f1b",this.pie5=this.pie5||"#6e0a0a",this.pie6=this.pie6||"#3b0048",this.pie7=this.pie7||"#995a01",this.pie8=this.pie8||"#154706",this.pie9=this.pie9||"#161722",this.pie10=this.pie10||"#00296f",this.pie11=this.pie11||"#01629c",this.pie12=this.pie12||"#010029",this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOpacity=this.pieOpacity||"0.7",this.classText=this.primaryTextColor,this.requirementBackground=this.requirementBackground||this.primaryColor,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||this.primaryBorderColor,this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||(this.darkMode?mt(this.secondaryColor,30):this.secondaryColor),this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=bt(this.secondaryColor,20),this.git1=bt(this.pie2||this.secondaryColor,20),this.git2=bt(this.pie3||this.tertiaryColor,20),this.git3=bt(this.pie4||ft(this.primaryColor,{h:-30}),20),this.git4=bt(this.pie5||ft(this.primaryColor,{h:-60}),20),this.git5=bt(this.pie6||ft(this.primaryColor,{h:-90}),10),this.git6=bt(this.pie7||ft(this.primaryColor,{h:60}),10),this.git7=bt(this.pie8||ft(this.primaryColor,{h:120}),20),this.gitInv0=this.gitInv0||gt(this.git0),this.gitInv1=this.gitInv1||gt(this.git1),this.gitInv2=this.gitInv2||gt(this.git2),this.gitInv3=this.gitInv3||gt(this.git3),this.gitInv4=this.gitInv4||gt(this.git4),this.gitInv5=this.gitInv5||gt(this.git5),this.gitInv6=this.gitInv6||gt(this.git6),this.gitInv7=this.gitInv7||gt(this.git7),this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px"}},{key:"calculate",value:function(t){var e=this;if("object"===kt(t)){var n=Object.keys(t);n.forEach((function(n){e[n]=t[n]})),this.updateColors(),n.forEach((function(n){e[n]=t[n]}))}else this.updateColors()}}],n&&function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(e.prototype,n),Object.defineProperty(e,"prototype",{writable:!1}),t}();function Et(t){return Et="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Et(t)}var Tt=function(){function t(){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.background="#f4f4f4",this.primaryColor="#ECECFF",this.secondaryColor=ft(this.primaryColor,{h:120}),this.secondaryColor="#ffffde",this.tertiaryColor=ft(this.primaryColor,{h:-160}),this.primaryBorderColor=vt(this.primaryColor,this.darkMode),this.secondaryBorderColor=vt(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=vt(this.tertiaryColor,this.darkMode),this.primaryTextColor=gt(this.primaryColor),this.secondaryTextColor=gt(this.secondaryColor),this.tertiaryTextColor=gt(this.tertiaryColor),this.lineColor=gt(this.background),this.textColor=gt(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="#e8e8e8",this.textColor="#333",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="grey",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=pt(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="calculated",this.personBkg="calculated",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222",this.updateColors()}var e,n;return e=t,n=[{key:"updateColors",value:function(){this.nodeBkg=this.mainBkg,this.nodeBorder=this.border1,this.clusterBkg=this.secondBkg,this.clusterBorder=this.border2,this.defaultLinkColor=this.lineColor,this.titleColor=this.textColor,this.edgeLabelBackground=this.labelBackground,this.actorBorder=bt(this.border1,23),this.actorBkg=this.mainBkg,this.labelBoxBkgColor=this.actorBkg,this.signalColor=this.textColor,this.signalTextColor=this.textColor,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.actorTextColor,this.loopTextColor=this.actorTextColor,this.noteBorderColor=this.border2,this.noteTextColor=this.actorTextColor,this.taskTextColor=this.taskTextLightColor,this.taskTextOutsideColor=this.taskTextDarkColor,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||"#f0f0f0",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.specialStateColor=this.lineColor,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.classText=this.primaryTextColor,this.fillType0=this.primaryColor,this.fillType1=this.secondaryColor,this.fillType2=ft(this.primaryColor,{h:64}),this.fillType3=ft(this.secondaryColor,{h:64}),this.fillType4=ft(this.primaryColor,{h:-64}),this.fillType5=ft(this.secondaryColor,{h:-64}),this.fillType6=ft(this.primaryColor,{h:128}),this.fillType7=ft(this.secondaryColor,{h:128}),this.pie1=this.pie1||this.primaryColor,this.pie2=this.pie2||this.secondaryColor,this.pie3=this.pie3||ft(this.tertiaryColor,{l:-40}),this.pie4=this.pie4||ft(this.primaryColor,{l:-10}),this.pie5=this.pie5||ft(this.secondaryColor,{l:-30}),this.pie6=this.pie6||ft(this.tertiaryColor,{l:-20}),this.pie7=this.pie7||ft(this.primaryColor,{h:60,l:-20}),this.pie8=this.pie8||ft(this.primaryColor,{h:-60,l:-40}),this.pie9=this.pie9||ft(this.primaryColor,{h:120,l:-40}),this.pie10=this.pie10||ft(this.primaryColor,{h:60,l:-40}),this.pie11=this.pie11||ft(this.primaryColor,{h:-90,l:-40}),this.pie12=this.pie12||ft(this.primaryColor,{h:120,l:-30}),this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOpacity=this.pieOpacity||"0.7",this.requirementBackground=this.requirementBackground||this.primaryColor,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||this.primaryBorderColor,this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||this.labelBackground,this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=this.git0||this.primaryColor,this.git1=this.git1||this.secondaryColor,this.git2=this.git2||this.tertiaryColor,this.git3=this.git3||ft(this.primaryColor,{h:-30}),this.git4=this.git4||ft(this.primaryColor,{h:-60}),this.git5=this.git5||ft(this.primaryColor,{h:-90}),this.git6=this.git6||ft(this.primaryColor,{h:60}),this.git7=this.git7||ft(this.primaryColor,{h:120}),this.darkMode?(this.git0=bt(this.git0,25),this.git1=bt(this.git1,25),this.git2=bt(this.git2,25),this.git3=bt(this.git3,25),this.git4=bt(this.git4,25),this.git5=bt(this.git5,25),this.git6=bt(this.git6,25),this.git7=bt(this.git7,25)):(this.git0=mt(this.git0,25),this.git1=mt(this.git1,25),this.git2=mt(this.git2,25),this.git3=mt(this.git3,25),this.git4=mt(this.git4,25),this.git5=mt(this.git5,25),this.git6=mt(this.git6,25),this.git7=mt(this.git7,25)),this.gitInv0=this.gitInv0||mt(gt(this.git0),25),this.gitInv1=this.gitInv1||gt(this.git1),this.gitInv2=this.gitInv2||gt(this.git2),this.gitInv3=this.gitInv3||gt(this.git3),this.gitInv4=this.gitInv4||gt(this.git4),this.gitInv5=this.gitInv5||gt(this.git5),this.gitInv6=this.gitInv6||gt(this.git6),this.gitInv7=this.gitInv7||gt(this.git7),this.gitBranchLabel0=this.gitBranchLabel0||gt(this.labelTextColor),this.gitBranchLabel1=this.gitBranchLabel1||this.labelTextColor,this.gitBranchLabel2=this.gitBranchLabel2||this.labelTextColor,this.gitBranchLabel3=this.gitBranchLabel3||gt(this.labelTextColor),this.gitBranchLabel4=this.gitBranchLabel4||this.labelTextColor,this.gitBranchLabel5=this.gitBranchLabel5||this.labelTextColor,this.gitBranchLabel6=this.gitBranchLabel6||this.labelTextColor,this.gitBranchLabel7=this.gitBranchLabel7||this.labelTextColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px"}},{key:"calculate",value:function(t){var e=this;if("object"===Et(t)){var n=Object.keys(t);n.forEach((function(n){e[n]=t[n]})),this.updateColors(),n.forEach((function(n){e[n]=t[n]}))}else this.updateColors()}}],n&&function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(e.prototype,n),Object.defineProperty(e,"prototype",{writable:!1}),t}();function Ct(t){return Ct="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ct(t)}var St=function(){function t(){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),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=bt("#cde498",10),this.primaryBorderColor=vt(this.primaryColor,this.darkMode),this.secondaryBorderColor=vt(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=vt(this.tertiaryColor,this.darkMode),this.primaryTextColor=gt(this.primaryColor),this.secondaryTextColor=gt(this.secondaryColor),this.tertiaryTextColor=gt(this.primaryColor),this.lineColor=gt(this.background),this.textColor=gt(this.background),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="grey",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="calculated",this.personBkg="calculated",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}var e,n;return e=t,n=[{key:"updateColors",value:function(){this.nodeBkg=this.mainBkg,this.nodeBorder=this.border1,this.clusterBkg=this.secondBkg,this.clusterBorder=this.border2,this.defaultLinkColor=this.lineColor,this.actorBorder=mt(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.taskBorderColor=this.border1,this.taskTextColor=this.taskTextLightColor,this.taskTextOutsideColor=this.taskTextDarkColor,this.activeTaskBorderColor=this.taskBorderColor,this.activeTaskBkgColor=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||"#f0f0f0",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.primaryBorderColor,this.specialStateColor=this.lineColor,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.classText=this.primaryTextColor,this.fillType0=this.primaryColor,this.fillType1=this.secondaryColor,this.fillType2=ft(this.primaryColor,{h:64}),this.fillType3=ft(this.secondaryColor,{h:64}),this.fillType4=ft(this.primaryColor,{h:-64}),this.fillType5=ft(this.secondaryColor,{h:-64}),this.fillType6=ft(this.primaryColor,{h:128}),this.fillType7=ft(this.secondaryColor,{h:128}),this.pie1=this.pie1||this.primaryColor,this.pie2=this.pie2||this.secondaryColor,this.pie3=this.pie3||this.tertiaryColor,this.pie4=this.pie4||ft(this.primaryColor,{l:-30}),this.pie5=this.pie5||ft(this.secondaryColor,{l:-30}),this.pie6=this.pie6||ft(this.tertiaryColor,{h:40,l:-40}),this.pie7=this.pie7||ft(this.primaryColor,{h:60,l:-10}),this.pie8=this.pie8||ft(this.primaryColor,{h:-60,l:-10}),this.pie9=this.pie9||ft(this.primaryColor,{h:120,l:0}),this.pie10=this.pie10||ft(this.primaryColor,{h:60,l:-50}),this.pie11=this.pie11||ft(this.primaryColor,{h:-60,l:-50}),this.pie12=this.pie12||ft(this.primaryColor,{h:120,l:-50}),this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOpacity=this.pieOpacity||"0.7",this.requirementBackground=this.requirementBackground||this.primaryColor,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||this.primaryBorderColor,this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||this.edgeLabelBackground,this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=this.git0||this.primaryColor,this.git1=this.git1||this.secondaryColor,this.git2=this.git2||this.tertiaryColor,this.git3=this.git3||ft(this.primaryColor,{h:-30}),this.git4=this.git4||ft(this.primaryColor,{h:-60}),this.git5=this.git5||ft(this.primaryColor,{h:-90}),this.git6=this.git6||ft(this.primaryColor,{h:60}),this.git7=this.git7||ft(this.primaryColor,{h:120}),this.darkMode?(this.git0=bt(this.git0,25),this.git1=bt(this.git1,25),this.git2=bt(this.git2,25),this.git3=bt(this.git3,25),this.git4=bt(this.git4,25),this.git5=bt(this.git5,25),this.git6=bt(this.git6,25),this.git7=bt(this.git7,25)):(this.git0=mt(this.git0,25),this.git1=mt(this.git1,25),this.git2=mt(this.git2,25),this.git3=mt(this.git3,25),this.git4=mt(this.git4,25),this.git5=mt(this.git5,25),this.git6=mt(this.git6,25),this.git7=mt(this.git7,25)),this.gitInv0=this.gitInv0||gt(this.git0),this.gitInv1=this.gitInv1||gt(this.git1),this.gitInv2=this.gitInv2||gt(this.git2),this.gitInv3=this.gitInv3||gt(this.git3),this.gitInv4=this.gitInv4||gt(this.git4),this.gitInv5=this.gitInv5||gt(this.git5),this.gitInv6=this.gitInv6||gt(this.git6),this.gitInv7=this.gitInv7||gt(this.git7),this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px"}},{key:"calculate",value:function(t){var e=this;if("object"===Ct(t)){var n=Object.keys(t);n.forEach((function(n){e[n]=t[n]})),this.updateColors(),n.forEach((function(n){e[n]=t[n]}))}else this.updateColors()}}],n&&function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(e.prototype,n),Object.defineProperty(e,"prototype",{writable:!1}),t}();function At(t){return At="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},At(t)}var Mt=function(){function t(){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.primaryColor="#eee",this.contrast="#707070",this.secondaryColor=bt(this.contrast,55),this.background="#ffffff",this.tertiaryColor=ft(this.primaryColor,{h:-160}),this.primaryBorderColor=vt(this.primaryColor,this.darkMode),this.secondaryBorderColor=vt(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=vt(this.tertiaryColor,this.darkMode),this.primaryTextColor=gt(this.primaryColor),this.secondaryTextColor=gt(this.secondaryColor),this.tertiaryTextColor=gt(this.tertiaryColor),this.lineColor=gt(this.background),this.textColor=gt(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.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="calculated",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="calculated",this.personBkg="calculated",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}var e,n;return e=t,n=[{key:"updateColors",value:function(){this.secondBkg=bt(this.contrast,55),this.border2=this.contrast,this.nodeBkg=this.mainBkg,this.nodeBorder=this.border1,this.clusterBkg=this.secondBkg,this.clusterBorder=this.border2,this.defaultLinkColor=this.lineColor,this.titleColor=this.text,this.actorBorder=bt(this.border1,23),this.actorBkg=this.mainBkg,this.actorTextColor=this.text,this.actorLineColor=this.lineColor,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.sectionBkgColor=bt(this.contrast,30),this.sectionBkgColor2=bt(this.contrast,30),this.taskBorderColor=mt(this.contrast,10),this.taskBkgColor=this.contrast,this.taskTextColor=this.taskTextLightColor,this.taskTextDarkColor=this.text,this.taskTextOutsideColor=this.taskTextDarkColor,this.activeTaskBorderColor=this.taskBorderColor,this.activeTaskBkgColor=this.mainBkg,this.gridColor=bt(this.border1,30),this.doneTaskBkgColor=this.done,this.doneTaskBorderColor=this.lineColor,this.critBkgColor=this.critical,this.critBorderColor=mt(this.critBkgColor,10),this.todayLineColor=this.critBkgColor,this.transitionColor=this.transitionColor||"#000",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||"#f4f4f4",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.stateBorder=this.stateBorder||"#000",this.innerEndBackground=this.primaryBorderColor,this.specialStateColor="#222",this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.classText=this.primaryTextColor,this.fillType0=this.primaryColor,this.fillType1=this.secondaryColor,this.fillType2=ft(this.primaryColor,{h:64}),this.fillType3=ft(this.secondaryColor,{h:64}),this.fillType4=ft(this.primaryColor,{h:-64}),this.fillType5=ft(this.secondaryColor,{h:-64}),this.fillType6=ft(this.primaryColor,{h:128}),this.fillType7=ft(this.secondaryColor,{h:128}),this.pie1=this.pie1||"#F4F4F4",this.pie2=this.pie2||"#555",this.pie3=this.pie3||"#BBB",this.pie4=this.pie4||"#777",this.pie5=this.pie5||"#999",this.pie6=this.pie6||"#DDD",this.pie7=this.pie7||"#FFF",this.pie8=this.pie8||"#DDD",this.pie9=this.pie9||"#BBB",this.pie10=this.pie10||"#999",this.pie11=this.pie11||"#777",this.pie12=this.pie12||"#555",this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOpacity=this.pieOpacity||"0.7",this.requirementBackground=this.requirementBackground||this.primaryColor,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||this.primaryBorderColor,this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||this.edgeLabelBackground,this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=mt(this.pie1,25)||this.primaryColor,this.git1=this.pie2||this.secondaryColor,this.git2=this.pie3||this.tertiaryColor,this.git3=this.pie4||ft(this.primaryColor,{h:-30}),this.git4=this.pie5||ft(this.primaryColor,{h:-60}),this.git5=this.pie6||ft(this.primaryColor,{h:-90}),this.git6=this.pie7||ft(this.primaryColor,{h:60}),this.git7=this.pie8||ft(this.primaryColor,{h:120}),this.gitInv0=this.gitInv0||gt(this.git0),this.gitInv1=this.gitInv1||gt(this.git1),this.gitInv2=this.gitInv2||gt(this.git2),this.gitInv3=this.gitInv3||gt(this.git3),this.gitInv4=this.gitInv4||gt(this.git4),this.gitInv5=this.gitInv5||gt(this.git5),this.gitInv6=this.gitInv6||gt(this.git6),this.gitInv7=this.gitInv7||gt(this.git7),this.branchLabelColor=this.branchLabelColor||this.labelTextColor,this.gitBranchLabel0=this.branchLabelColor,this.gitBranchLabel1="white",this.gitBranchLabel2=this.branchLabelColor,this.gitBranchLabel3="white",this.gitBranchLabel4=this.branchLabelColor,this.gitBranchLabel5=this.branchLabelColor,this.gitBranchLabel6=this.branchLabelColor,this.gitBranchLabel7=this.branchLabelColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px"}},{key:"calculate",value:function(t){var e=this;if("object"===At(t)){var n=Object.keys(t);n.forEach((function(n){e[n]=t[n]})),this.updateColors(),n.forEach((function(n){e[n]=t[n]}))}else this.updateColors()}}],n&&function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(e.prototype,n),Object.defineProperty(e,"prototype",{writable:!1}),t}();const Ot={base:{getThemeVariables:function(t){var e=new xt;return e.calculate(t),e}},dark:{getThemeVariables:function(t){var e=new wt;return e.calculate(t),e}},default:{getThemeVariables:function(t){var e=new Tt;return e.calculate(t),e}},forest:{getThemeVariables:function(t){var e=new St;return e.calculate(t),e}},neutral:{getThemeVariables:function(t){var e=new Mt;return e.calculate(t),e}}};function Nt(t){return function(t){if(Array.isArray(t))return Dt(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(t){if("string"==typeof t)return Dt(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Dt(t,e):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Dt(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}function Bt(t){return Bt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Bt(t)}var Lt={theme:"default",themeVariables:Ot.default.getThemeVariables(),themeCSS:void 0,maxTextSize:5e4,darkMode:!1,fontFamily:'"trebuchet ms", verdana, arial, sans-serif;',logLevel:5,securityLevel:"strict",startOnLoad:!0,arrowMarkerAbsolute:!1,secure:["secure","securityLevel","startOnLoad","maxTextSize"],deterministicIds:!1,deterministicIDSeed:void 0,flowchart:{diagramPadding:8,htmlLabels:!0,nodeSpacing:50,rankSpacing:50,curve:"basis",padding:15,useMaxWidth:!0,defaultRenderer:"dagre-d3"},sequence:{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,useMaxWidth:!0,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,messageFont:function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},noteFont:function(){return{fontFamily:this.noteFontFamily,fontSize:this.noteFontSize,fontWeight:this.noteFontWeight}},actorFont:function(){return{fontFamily:this.actorFontFamily,fontSize:this.actorFontSize,fontWeight:this.actorFontWeight}}},gantt:{titleTopMargin:25,barHeight:20,barGap:4,topPadding:50,rightPadding:75,leftPadding:75,gridLineStartPadding:35,fontSize:11,sectionFontSize:11,numberSectionStyles:4,axisFormat:"%Y-%m-%d",useMaxWidth:!0,topAxis:!1,useWidth:void 0},journey:{diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,useMaxWidth:!0,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:{arrowMarkerAbsolute:!1,dividerMargin:10,padding:5,textHeight:10,useMaxWidth:!0,defaultRenderer:"dagre-wrapper"},state:{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,useMaxWidth:!0,defaultRenderer:"dagre-wrapper"},er:{diagramPadding:20,layoutDirection:"TB",minEntityWidth:100,minEntityHeight:75,entityPadding:15,stroke:"gray",fill:"honeydew",fontSize:12,useMaxWidth:!0},pie:{useWidth:void 0,useMaxWidth:!0},requirement:{useWidth:void 0,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},gitGraph:{diagramPadding:8,nodeLabel:{width:75,height:100,x:-25,y:0},mainBranchName:"main",mainBranchOrder:0,showCommitLabel:!0,showBranches:!0,rotateCommitLabel:!0},c4:{useWidth:void 0,diagramMarginX:50,diagramMarginY:10,c4ShapeMargin:50,c4ShapePadding:20,width:216,height:60,boxMargin:10,useMaxWidth:!0,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,personFont:function(){return{fontFamily:this.personFontFamily,fontSize:this.personFontSize,fontWeight:this.personFontWeight}},external_personFont:function(){return{fontFamily:this.external_personFontFamily,fontSize:this.external_personFontSize,fontWeight:this.external_personFontWeight}},systemFont:function(){return{fontFamily:this.systemFontFamily,fontSize:this.systemFontSize,fontWeight:this.systemFontWeight}},external_systemFont:function(){return{fontFamily:this.external_systemFontFamily,fontSize:this.external_systemFontSize,fontWeight:this.external_systemFontWeight}},system_dbFont:function(){return{fontFamily:this.system_dbFontFamily,fontSize:this.system_dbFontSize,fontWeight:this.system_dbFontWeight}},external_system_dbFont:function(){return{fontFamily:this.external_system_dbFontFamily,fontSize:this.external_system_dbFontSize,fontWeight:this.external_system_dbFontWeight}},system_queueFont:function(){return{fontFamily:this.system_queueFontFamily,fontSize:this.system_queueFontSize,fontWeight:this.system_queueFontWeight}},external_system_queueFont:function(){return{fontFamily:this.external_system_queueFontFamily,fontSize:this.external_system_queueFontSize,fontWeight:this.external_system_queueFontWeight}},containerFont:function(){return{fontFamily:this.containerFontFamily,fontSize:this.containerFontSize,fontWeight:this.containerFontWeight}},external_containerFont:function(){return{fontFamily:this.external_containerFontFamily,fontSize:this.external_containerFontSize,fontWeight:this.external_containerFontWeight}},container_dbFont:function(){return{fontFamily:this.container_dbFontFamily,fontSize:this.container_dbFontSize,fontWeight:this.container_dbFontWeight}},external_container_dbFont:function(){return{fontFamily:this.external_container_dbFontFamily,fontSize:this.external_container_dbFontSize,fontWeight:this.external_container_dbFontWeight}},container_queueFont:function(){return{fontFamily:this.container_queueFontFamily,fontSize:this.container_queueFontSize,fontWeight:this.container_queueFontWeight}},external_container_queueFont:function(){return{fontFamily:this.external_container_queueFontFamily,fontSize:this.external_container_queueFontSize,fontWeight:this.external_container_queueFontWeight}},componentFont:function(){return{fontFamily:this.componentFontFamily,fontSize:this.componentFontSize,fontWeight:this.componentFontWeight}},external_componentFont:function(){return{fontFamily:this.external_componentFontFamily,fontSize:this.external_componentFontSize,fontWeight:this.external_componentFontWeight}},component_dbFont:function(){return{fontFamily:this.component_dbFontFamily,fontSize:this.component_dbFontSize,fontWeight:this.component_dbFontWeight}},external_component_dbFont:function(){return{fontFamily:this.external_component_dbFontFamily,fontSize:this.external_component_dbFontSize,fontWeight:this.external_component_dbFontWeight}},component_queueFont:function(){return{fontFamily:this.component_queueFontFamily,fontSize:this.component_queueFontSize,fontWeight:this.component_queueFontWeight}},external_component_queueFont:function(){return{fontFamily:this.external_component_queueFontFamily,fontSize:this.external_component_queueFontSize,fontWeight:this.external_component_queueFontWeight}},boundaryFont:function(){return{fontFamily:this.boundaryFontFamily,fontSize:this.boundaryFontSize,fontWeight:this.boundaryFontWeight}},messageFont:function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},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"}};Lt.class.arrowMarkerAbsolute=Lt.arrowMarkerAbsolute,Lt.gitGraph.arrowMarkerAbsolute=Lt.arrowMarkerAbsolute;var It=function t(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return Object.keys(e).reduce((function(r,i){return Array.isArray(e[i])?r:"object"===Bt(e[i])&&null!==e[i]?[].concat(Nt(r),[n+i],Nt(t(e[i],""))):[].concat(Nt(r),[n+i])}),[])}(Lt,"");const Ft=Lt;function Rt(t){return Rt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Rt(t)}var Pt,jt=Object.freeze(Ft),zt=Q({},jt),Yt=[],Ut=Q({},jt),$t=function(t,e){for(var n=Q({},t),r={},i=0;i<e.length;i++){var a=e[i];Ht(a),r=Q(r,a)}if(n=Q(n,r),r.theme&&Ot[r.theme]){var o=Q({},Pt),s=Q(o.themeVariables||{},r.themeVariables);n.themeVariables=Ot[n.theme].getThemeVariables(s)}return Ut=n,n},Wt=function(){return Q({},zt)},qt=function(){return Q({},Ut)},Ht=function t(e){Object.keys(zt.secure).forEach((function(t){void 0!==e[zt.secure[t]]&&(o.debug("Denied attempt to modify a secure key ".concat(zt.secure[t]),e[zt.secure[t]]),delete e[zt.secure[t]])})),Object.keys(e).forEach((function(t){0===t.indexOf("__")&&delete e[t]})),Object.keys(e).forEach((function(n){"string"==typeof e[n]&&(e[n].indexOf("<")>-1||e[n].indexOf(">")>-1||e[n].indexOf("url(data:")>-1)&&delete e[n],"object"===Rt(e[n])&&t(e[n])}))},Vt=function(t){t.fontFamily&&(t.themeVariables&&t.themeVariables.fontFamily||(t.themeVariables={fontFamily:t.fontFamily})),Yt.push(t),$t(zt,Yt)},Gt=function(){$t(zt,Yt=[])},Xt=n(7856),Zt=n.n(Xt),Qt=function(t){var e=t.replace(/\\u[\dA-F]{4}/gi,(function(t){return String.fromCharCode(parseInt(t.replace(/\\u/g,""),16))}));return(e=(e=e.replace(/\\x([0-9a-f]{2})/gi,(function(t,e){return String.fromCharCode(parseInt(e,16))}))).replace(/\\[\d\d\d]{3}/gi,(function(t){return String.fromCharCode(parseInt(t.replace(/\\/g,""),8))}))).replace(/\\[\d\d\d]{2}/gi,(function(t){return String.fromCharCode(parseInt(t.replace(/\\/g,""),8))}))},Kt=function(t){for(var e="",n=0;n>=0;){if(!((n=t.indexOf("<script"))>=0)){e+=t,n=-1;break}e+=t.substr(0,n),(n=(t=t.substr(n+1)).indexOf("<\/script>"))>=0&&(n+=9,t=t.substr(n))}var r=Qt(e);return(r=(r=(r=(r=r.replace(/script>/gi,"#")).replace(/javascript:/gi,"#")).replace(/javascript&colon/gi,"#")).replace(/onerror=/gi,"onerror:")).replace(/<iframe/gi,"")},Jt=function(t,e){var n=t,r=!0;if(!e.flowchart||!1!==e.flowchart.htmlLabels&&"false"!==e.flowchart.htmlLabels||(r=!1),r){var i=e.securityLevel;"antiscript"===i||"strict"===i?n=Kt(n):"loose"!==i&&(n=(n=(n=re(n)).replace(/</g,"<").replace(/>/g,">")).replace(/=/g,"="),n=ne(n))}return n},te=function(t,e){return t?e.dompurifyConfig?Zt().sanitize(Jt(t,e),e.dompurifyConfig):Zt().sanitize(Jt(t,e)):t},ee=/<br\s*\/?>/gi,ne=function(t){return t.replace(/#br#/g,"<br/>")},re=function(t){return t.replace(ee,"#br#")},ie=function(t){return"false"!==t&&!1!==t},ae=function t(e){var n=e;return-1!=e.indexOf("~")?t(n=(n=n.replace("~","<")).replace("~",">")):n};const oe={getRows:function(t){if(!t)return 1;var e=re(t);return(e=e.replace(/\\n/g,"#br#")).split("#br#")},sanitizeText:te,sanitizeTextOrArray:function(t,e){return"string"==typeof t?te(t,e):t.flat().map((function(t){return te(t,e)}))},hasBreaks:function(t){return ee.test(t)},splitBreaks:function(t){return t.split(ee)},lineBreakRegex:ee,removeScript:Kt,getUrl:function(t){var e="";return t&&(e=(e=(e=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search).replace(/\(/g,"\\(")).replace(/\)/g,"\\)")),e},evaluate:ie,removeEscapes:Qt};var se="",ce="",le="",ue=function(t){return te(t,qt())},he=function(){se="",le="",ce=""},de=function(t){se=ue(t).replace(/^\s+/g,"")},fe=function(){return se||ce},pe=function(t){le=ue(t).replace(/\n\s+/g,"\n")},ge=function(){return le},ye=function(t){ce=ue(t)},me=function(){return ce};function be(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var r,i,a=[],o=!0,s=!1;try{for(n=n.call(t);!(o=(r=n.next()).done)&&(a.push(r.value),!e||a.length!==e);o=!0);}catch(t){s=!0,i=t}finally{try{o||null==n.return||n.return()}finally{if(s)throw i}}return a}}(t,e)||function(t,e){if(t){if("string"==typeof t)return ve(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ve(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ve(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}function _e(t){return _e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},_e(t)}var xe,ke=[],we=[""],Ee="global",Te="",Ce=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],Se=[],Ae="",Me=!1,Oe=4,Ne=2,De=function(t){return null==t?ke:ke.filter((function(e){return e.parentBoundary===t}))},Be=function(){return Me};const Le={addPersonOrSystem:function(t,e,n,r,i,a,o){if(null!==e&&null!==n){var s={},c=ke.find((function(t){return t.alias===e}));if(c&&e===c.alias?s=c:(s.alias=e,ke.push(s)),s.label=null==n?{text:""}:{text:n},null==r)s.descr={text:""};else if("object"===_e(r)){var l=be(Object.entries(r)[0],2),u=l[0],h=l[1];s[u]={text:h}}else s.descr={text:r};if("object"===_e(i)){var d=be(Object.entries(i)[0],2),f=d[0],p=d[1];s[f]=p}else s.sprite=i;if("object"===_e(a)){var g=be(Object.entries(a)[0],2),y=g[0],m=g[1];s[y]=m}else s.tags=a;if("object"===_e(o)){var b=be(Object.entries(o)[0],2),v=b[0],_=b[1];s[v]=_}else s.link=o;s.typeC4Shape={text:t},s.parentBoundary=Ee,s.wrap=Be()}},addPersonOrSystemBoundary:function(t,e,n,r,i){if(null!==t&&null!==e){var a={},o=Ce.find((function(e){return e.alias===t}));if(o&&t===o.alias?a=o:(a.alias=t,Ce.push(a)),a.label=null==e?{text:""}:{text:e},null==n)a.type={text:"system"};else if("object"===_e(n)){var s=be(Object.entries(n)[0],2),c=s[0],l=s[1];a[c]={text:l}}else a.type={text:n};if("object"===_e(r)){var u=be(Object.entries(r)[0],2),h=u[0],d=u[1];a[h]=d}else a.tags=r;if("object"===_e(i)){var f=be(Object.entries(i)[0],2),p=f[0],g=f[1];a[p]=g}else a.link=i;a.parentBoundary=Ee,a.wrap=Be(),Te=Ee,Ee=t,we.push(Te)}},addContainer:function(t,e,n,r,i,a,o,s){if(null!==e&&null!==n){var c={},l=ke.find((function(t){return t.alias===e}));if(l&&e===l.alias?c=l:(c.alias=e,ke.push(c)),c.label=null==n?{text:""}:{text:n},null==r)c.techn={text:""};else if("object"===_e(r)){var u=be(Object.entries(r)[0],2),h=u[0],d=u[1];c[h]={text:d}}else c.techn={text:r};if(null==i)c.descr={text:""};else if("object"===_e(i)){var f=be(Object.entries(i)[0],2),p=f[0],g=f[1];c[p]={text:g}}else c.descr={text:i};if("object"===_e(a)){var y=be(Object.entries(a)[0],2),m=y[0],b=y[1];c[m]=b}else c.sprite=a;if("object"===_e(o)){var v=be(Object.entries(o)[0],2),_=v[0],x=v[1];c[_]=x}else c.tags=o;if("object"===_e(s)){var k=be(Object.entries(s)[0],2),w=k[0],E=k[1];c[w]=E}else c.link=s;c.wrap=Be(),c.typeC4Shape={text:t},c.parentBoundary=Ee}},addContainerBoundary:function(t,e,n,r,i){if(null!==t&&null!==e){var a={},o=Ce.find((function(e){return e.alias===t}));if(o&&t===o.alias?a=o:(a.alias=t,Ce.push(a)),a.label=null==e?{text:""}:{text:e},null==n)a.type={text:"container"};else if("object"===_e(n)){var s=be(Object.entries(n)[0],2),c=s[0],l=s[1];a[c]={text:l}}else a.type={text:n};if("object"===_e(r)){var u=be(Object.entries(r)[0],2),h=u[0],d=u[1];a[h]=d}else a.tags=r;if("object"===_e(i)){var f=be(Object.entries(i)[0],2),p=f[0],g=f[1];a[p]=g}else a.link=i;a.parentBoundary=Ee,a.wrap=Be(),Te=Ee,Ee=t,we.push(Te)}},addComponent:function(t,e,n,r,i,a,o,s){if(null!==e&&null!==n){var c={},l=ke.find((function(t){return t.alias===e}));if(l&&e===l.alias?c=l:(c.alias=e,ke.push(c)),c.label=null==n?{text:""}:{text:n},null==r)c.techn={text:""};else if("object"===_e(r)){var u=be(Object.entries(r)[0],2),h=u[0],d=u[1];c[h]={text:d}}else c.techn={text:r};if(null==i)c.descr={text:""};else if("object"===_e(i)){var f=be(Object.entries(i)[0],2),p=f[0],g=f[1];c[p]={text:g}}else c.descr={text:i};if("object"===_e(a)){var y=be(Object.entries(a)[0],2),m=y[0],b=y[1];c[m]=b}else c.sprite=a;if("object"===_e(o)){var v=be(Object.entries(o)[0],2),_=v[0],x=v[1];c[_]=x}else c.tags=o;if("object"===_e(s)){var k=be(Object.entries(s)[0],2),w=k[0],E=k[1];c[w]=E}else c.link=s;c.wrap=Be(),c.typeC4Shape={text:t},c.parentBoundary=Ee}},addDeploymentNode:function(t,e,n,r,i,a,o,s){if(null!==e&&null!==n){var c={},l=Ce.find((function(t){return t.alias===e}));if(l&&e===l.alias?c=l:(c.alias=e,Ce.push(c)),c.label=null==n?{text:""}:{text:n},null==r)c.type={text:"node"};else if("object"===_e(r)){var u=be(Object.entries(r)[0],2),h=u[0],d=u[1];c[h]={text:d}}else c.type={text:r};if(null==i)c.descr={text:""};else if("object"===_e(i)){var f=be(Object.entries(i)[0],2),p=f[0],g=f[1];c[p]={text:g}}else c.descr={text:i};if("object"===_e(o)){var y=be(Object.entries(o)[0],2),m=y[0],b=y[1];c[m]=b}else c.tags=o;if("object"===_e(s)){var v=be(Object.entries(s)[0],2),_=v[0],x=v[1];c[_]=x}else c.link=s;c.nodeType=t,c.parentBoundary=Ee,c.wrap=Be(),Te=Ee,Ee=e,we.push(Te)}},popBoundaryParseStack:function(){Ee=Te,we.pop(),Te=we.pop(),we.push(Te)},addRel:function(t,e,n,r,i,a,o,s,c){if(null!=t&&null!=e&&null!=n&&null!=r){var l={},u=Se.find((function(t){return t.from===e&&t.to===n}));if(u?l=u:Se.push(l),l.type=t,l.from=e,l.to=n,l.label={text:r},null==i)l.techn={text:""};else if("object"===_e(i)){var h=be(Object.entries(i)[0],2),d=h[0],f=h[1];l[d]={text:f}}else l.techn={text:i};if(null==a)l.descr={text:""};else if("object"===_e(a)){var p=be(Object.entries(a)[0],2),g=p[0],y=p[1];l[g]={text:y}}else l.descr={text:a};if("object"===_e(o)){var m=be(Object.entries(o)[0],2),b=m[0],v=m[1];l[b]=v}else l.sprite=o;if("object"===_e(s)){var _=be(Object.entries(s)[0],2),x=_[0],k=_[1];l[x]=k}else l.tags=s;if("object"===_e(c)){var w=be(Object.entries(c)[0],2),E=w[0],T=w[1];l[E]=T}else l.link=c;l.wrap=Be()}},updateElStyle:function(t,e,n,r,i,a,o,s,c,l,u){var h=ke.find((function(t){return t.alias===e}));if(void 0!==h||void 0!==(h=Ce.find((function(t){return t.alias===e})))){if(null!=n)if("object"===_e(n)){var d=be(Object.entries(n)[0],2),f=d[0],p=d[1];h[f]=p}else h.bgColor=n;if(null!=r)if("object"===_e(r)){var g=be(Object.entries(r)[0],2),y=g[0],m=g[1];h[y]=m}else h.fontColor=r;if(null!=i)if("object"===_e(i)){var b=be(Object.entries(i)[0],2),v=b[0],_=b[1];h[v]=_}else h.borderColor=i;if(null!=a)if("object"===_e(a)){var x=be(Object.entries(a)[0],2),k=x[0],w=x[1];h[k]=w}else h.shadowing=a;if(null!=o)if("object"===_e(o)){var E=be(Object.entries(o)[0],2),T=E[0],C=E[1];h[T]=C}else h.shape=o;if(null!=s)if("object"===_e(s)){var S=be(Object.entries(s)[0],2),A=S[0],M=S[1];h[A]=M}else h.sprite=s;if(null!=c)if("object"===_e(c)){var O=be(Object.entries(c)[0],2),N=O[0],D=O[1];h[N]=D}else h.techn=c;if(null!=l)if("object"===_e(l)){var B=be(Object.entries(l)[0],2),L=B[0],I=B[1];h[L]=I}else h.legendText=l;if(null!=u)if("object"===_e(u)){var F=be(Object.entries(u)[0],2),R=F[0],P=F[1];h[R]=P}else h.legendSprite=u}},updateRelStyle:function(t,e,n,r,i,a,o){var s=Se.find((function(t){return t.from===e&&t.to===n}));if(void 0!==s){if(null!=r)if("object"===_e(r)){var c=be(Object.entries(r)[0],2),l=c[0],u=c[1];s[l]=u}else s.textColor=r;if(null!=i)if("object"===_e(i)){var h=be(Object.entries(i)[0],2),d=h[0],f=h[1];s[d]=f}else s.lineColor=i;if(null!=a)if("object"===_e(a)){var p=be(Object.entries(a)[0],2),g=p[0],y=p[1];s[g]=parseInt(y)}else s.offsetX=parseInt(a);if(null!=o)if("object"===_e(o)){var m=be(Object.entries(o)[0],2),b=m[0],v=m[1];s[b]=parseInt(v)}else s.offsetY=parseInt(o)}},updateLayoutConfig:function(t,e,n){var r=Oe,i=Ne;if("object"===_e(e)){var a=be(Object.entries(e)[0],2),o=(a[0],a[1]);r=parseInt(o)}else r=parseInt(e);if("object"===_e(n)){var s=be(Object.entries(n)[0],2),c=(s[0],s[1]);i=parseInt(c)}else i=parseInt(n);r>=1&&(Oe=r),i>=1&&(Ne=i)},autoWrap:Be,setWrap:function(t){Me=t},getC4ShapeArray:De,getC4Shape:function(t){return ke.find((function(e){return e.alias===t}))},getC4ShapeKeys:function(t){return Object.keys(De(t))},getBoundarys:function(t){return null==t?Ce:Ce.filter((function(e){return e.parentBoundary===t}))},getCurrentBoundaryParse:function(){return Ee},getParentBoundaryParse:function(){return Te},getRels:function(){return Se},getTitle:function(){return Ae},getC4Type:function(){return xe},getC4ShapeInRow:function(){return Oe},getC4BoundaryInRow:function(){return Ne},setAccTitle:de,getAccTitle:fe,getAccDescription:ge,setAccDescription:pe,parseDirective:function(t,e,n){Nl.parseDirective(this,t,e,n)},getConfig:function(){return qt().c4},clear:function(){ke=[],Ce=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],Te="",Ee="global",we=[""],Se=[],we=[""],Ae="",Me=!1,Oe=4,Ne=2},LINETYPE:{SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25},ARROWTYPE:{FILLED:0,OPEN:1},PLACEMENT:{LEFTOF:0,RIGHTOF:1,OVER:2},setTitle:function(t){var e=te(t,qt());Ae=e},setC4Type:function(t){var e=te(t,qt());xe=e}};var Ie=n(7967);function Fe(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}var Re=function(t,e){var n=t.append("rect");if(n.attr("x",e.x),n.attr("y",e.y),n.attr("fill",e.fill),n.attr("stroke",e.stroke),n.attr("width",e.width),n.attr("height",e.height),n.attr("rx",e.rx),n.attr("ry",e.ry),"undefined"!==e.attrs&&null!==e.attrs)for(var r in e.attrs)n.attr(r,e.attrs[r]);return"undefined"!==e.class&&n.attr("class",e.class),n},Pe=function(){function t(t,e,n,i,a,o,s){r(e.append("text").attr("x",n+a/2).attr("y",i+o/2+5).style("text-anchor","middle").text(t),s)}function e(t,e,n,i,a,o,s,c){for(var l=c.fontSize,u=c.fontFamily,h=c.fontWeight,d=t.split(oe.lineBreakRegex),f=0;f<d.length;f++){var p=f*l-l*(d.length-1)/2,g=e.append("text").attr("x",n+a/2).attr("y",i).style("text-anchor","middle").attr("dominant-baseline","middle").style("font-size",l).style("font-weight",h).style("font-family",u);g.append("tspan").attr("dy",p).text(d[f]).attr("alignment-baseline","mathematical"),r(g,s)}}function n(t,n,i,a,o,s,c,l){var u=n.append("switch"),h=u.append("foreignObject").attr("x",i).attr("y",a).attr("width",o).attr("height",s).append("xhtml:div").style("display","table").style("height","100%").style("width","100%");h.append("div").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(t),e(t,u,i,a,o,0,c,l),r(h,c)}function r(t,e){for(var n in e)e.hasOwnProperty(n)&&t.attr(n,e[n])}return function(r){return"fo"===r.textPlacement?n:"old"===r.textPlacement?t:e}}();const je=function(t,e,n){var r=e.bgColor?e.bgColor:n[e.typeC4Shape.text+"_bg_color"],i=e.borderColor?e.borderColor:n[e.typeC4Shape.text+"_border_color"],a=e.fontColor?e.fontColor:"#FFFFFF",o="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";switch(e.typeC4Shape.text){case"person":o="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":o="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAAB6ElEQVR4Xu2YLY+EMBCG9+dWr0aj0Wg0Go1Go0+j8Xdv2uTCvv1gpt0ebHKPuhDaeW4605Z9mJvx4AdXUyTUdd08z+u6flmWZRnHsWkafk9DptAwDPu+f0eAYtu2PEaGWuj5fCIZrBAC2eLBAnRCsEkkxmeaJp7iDJ2QMDdHsLg8SxKFEJaAo8lAXnmuOFIhTMpxxKATebo4UiFknuNo4OniSIXQyRxEA3YsnjGCVEjVXD7yLUAqxBGUyPv/Y4W2beMgGuS7kVQIBycH0fD+oi5pezQETxdHKmQKGk1eQEYldK+jw5GxPfZ9z7Mk0Qnhf1W1m3w//EUn5BDmSZsbR44QQLBEqrBHqOrmSKaQAxdnLArCrxZcM7A7ZKs4ioRq8LFC+NpC3WCBJsvpVw5edm9iEXFuyNfxXAgSwfrFQ1c0iNda8AdejvUgnktOtJQQxmcfFzGglc5WVCj7oDgFqU18boeFSs52CUh8LE8BIVQDT1ABrB0HtgSEYlX5doJnCwv9TXocKCaKbnwhdDKPq4lf3SwU3HLq4V/+WYhHVMa/3b4IlfyikAduCkcBc7mQ3/z/Qq/cTuikhkzB12Ae/mcJC9U+Vo8Ej1gWAtgbeGgFsAMHr50BIWOLCbezvhpBFUdY6EJuJ/QDW0XoMX60zZ0AAAAASUVORK5CYII="}var s=t.append("g");s.attr("class","person-man");var c={x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0};switch(e.typeC4Shape.text){case"person":case"external_person":case"system":case"external_system":case"container":case"external_container":case"component":case"external_component":c.x=e.x,c.y=e.y,c.fill=r,c.width=e.width,c.height=e.height,c.style="stroke:"+i+";stroke-width:0.5;",c.rx=2.5,c.ry=2.5,Re(s,c);break;case"system_db":case"external_system_db":case"container_db":case"external_container_db":case"component_db":case"external_component_db":s.append("path").attr("fill",r).attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startyc0,-10 half,-10 half,-10c0,0 half,0 half,10l0,heightc0,10 -half,10 -half,10c0,0 -half,0 -half,-10l0,-height".replaceAll("startx",e.x).replaceAll("starty",e.y).replaceAll("half",e.width/2).replaceAll("height",e.height)),s.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startyc0,10 half,10 half,10c0,0 half,0 half,-10".replaceAll("startx",e.x).replaceAll("starty",e.y).replaceAll("half",e.width/2));break;case"system_queue":case"external_system_queue":case"container_queue":case"external_container_queue":case"component_queue":case"external_component_queue":s.append("path").attr("fill",r).attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startylwidth,0c5,0 5,half 5,halfc0,0 0,half -5,halfl-width,0c-5,0 -5,-half -5,-halfc0,0 0,-half 5,-half".replaceAll("startx",e.x).replaceAll("starty",e.y).replaceAll("width",e.width).replaceAll("half",e.height/2)),s.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startyc-5,0 -5,half -5,halfc0,half 5,half 5,half".replaceAll("startx",e.x+e.width).replaceAll("starty",e.y).replaceAll("half",e.height/2))}var l,u,h={fontFamily:(l=n)[(u=e.typeC4Shape.text)+"FontFamily"],fontSize:l[u+"FontSize"],fontWeight:l[u+"FontWeight"]};switch(s.append("text").attr("fill",a).attr("font-family",h.fontFamily).attr("font-size",h.fontSize-2).attr("font-style","italic").attr("lengthAdjust","spacing").attr("textLength",e.typeC4Shape.width).attr("x",e.x+e.width/2-e.typeC4Shape.width/2).attr("y",e.y+e.typeC4Shape.Y).text("<<"+e.typeC4Shape.text+">>"),e.typeC4Shape.text){case"person":case"external_person":!function(t,e,n,r,i,a){var o=t.append("image");o.attr("width",48),o.attr("height",48),o.attr("x",r),o.attr("y",i);var s=a.startsWith("data:image/png;base64")?a:(0,Ie.N)(a);o.attr("xlink:href",s)}(s,0,0,e.x+e.width/2-24,e.y+e.image.Y,o)}var d=n[e.typeC4Shape.text+"Font"]();return d.fontWeight="bold",d.fontSize=d.fontSize+2,d.fontColor=a,Pe(n)(e.label.text,s,e.x,e.y+e.label.Y,e.width,e.height,{fill:a},d),(d=n[e.typeC4Shape.text+"Font"]()).fontColor=a,e.thchn&&""!==e.thchn.text?Pe(n)(e.thchn.text,s,e.x,e.y+e.thchn.Y,e.width,e.height,{fill:a,"font-style":"italic"},d):e.type&&""!==e.type.text&&Pe(n)(e.type.text,s,e.x,e.y+e.type.Y,e.width,e.height,{fill:a,"font-style":"italic"},d),e.descr&&""!==e.descr.text&&((d=n.personFont()).fontColor=a,Pe(n)(e.descr.text,s,e.x,e.y+e.descr.Y,e.width,e.height,{fill:a},d)),e.height};Ie.N;var ze=n(2536),Ye=n.n(ze),Ue=/[%]{2}[{]\s*(?:(?:(\w+)\s*:|(\w+))\s*(?:(?:(\w+))|((?:(?![}][%]{2}).|\r?\n)*))?\s*)(?:[}][%]{2})?/gi,$e=/\s*%%.*\n/gm,We={};const qe=function(t,e){if((t=t.replace(Ue,"").replace($e,"\n")).match(/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/))return"c4";if("error"===t)return"error";if(t.match(/^\s*sequenceDiagram/))return"sequence";if(t.match(/^\s*gantt/))return"gantt";if(t.match(/^\s*classDiagram-v2/))return"classDiagram";if(t.match(/^\s*classDiagram/))return e&&e.class&&"dagre-wrapper"===e.class.defaultRenderer?"classDiagram":"class";if(t.match(/^\s*stateDiagram-v2/))return"stateDiagram";if(t.match(/^\s*stateDiagram/))return e&&e.class&&"dagre-wrapper"===e.state.defaultRenderer?"stateDiagram":"state";if(t.match(/^\s*flowchart/))return"flowchart-v2";if(t.match(/^\s*info/))return"info";if(t.match(/^\s*pie/))return"pie";if(t.match(/^\s*erDiagram/))return"er";if(t.match(/^\s*journey/))return"journey";if(t.match(/^\s*requirement/)||t.match(/^\s*requirementDiagram/))return"requirement";if(e&&e.flowchart&&"dagre-wrapper"===e.flowchart.defaultRenderer)return"flowchart-v2";for(var n=Object.keys(We),r=0;r<n.length;r++){var i=n[r],a=We[i];if(a&&a.detector(t))return i}return"flowchart"};var He=void 0;function Ve(t){return Ve="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ve(t)}function Ge(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=Ze(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0,i=function(){};return{s:i,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,o=!0,s=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return o=t.done,t},e:function(t){s=!0,a=t},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}function Xe(t){return function(t){if(Array.isArray(t))return Qe(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||Ze(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Ze(t,e){if(t){if("string"==typeof t)return Qe(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Qe(t,e):void 0}}function Qe(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}var Ke,Je={curveBasis:l.curveBasis,curveBasisClosed:l.curveBasisClosed,curveBasisOpen:l.curveBasisOpen,curveLinear:l.curveLinear,curveLinearClosed:l.curveLinearClosed,curveMonotoneX:l.curveMonotoneX,curveMonotoneY:l.curveMonotoneY,curveNatural:l.curveNatural,curveStep:l.curveStep,curveStepAfter:l.curveStepAfter,curveStepBefore:l.curveStepBefore},tn=/[%]{2}[{]\s*(?:(?:(\w+)\s*:|(\w+))\s*(?:(?:(\w+))|((?:(?![}][%]{2}).|\r?\n)*))?\s*)(?:[}][%]{2})?/gi,en=/\s*(?:(?:(\w+)(?=:):|(\w+))\s*(?:(?:(\w+))|((?:(?![}][%]{2}).|\r?\n)*))?\s*)(?:[}][%]{2})?/gi,nn=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;try{var n=new RegExp("[%]{2}(?![{]".concat(en.source,")(?=[}][%]{2}).*\n"),"ig");t=t.trim().replace(n,"").replace(/'/gm,'"'),o.debug("Detecting diagram directive".concat(null!==e?" type:"+e:""," based on the text:").concat(t));for(var r,i=[];null!==(r=tn.exec(t));)if(r.index===tn.lastIndex&&tn.lastIndex++,r&&!e||e&&r[1]&&r[1].match(e)||e&&r[2]&&r[2].match(e)){var a=r[1]?r[1]:r[2],s=r[3]?r[3].trim():r[4]?JSON.parse(r[4].trim()):null;i.push({type:a,args:s})}return 0===i.length&&i.push({type:t,args:null}),1===i.length?i[0]:i}catch(n){return o.error("ERROR: ".concat(n.message," - Unable to parse directive\n ").concat(null!==e?" type:"+e:""," based on the text:").concat(t)),{type:null,args:null}}},rn=function(t,e){var n={};return function(){for(var r=arguments.length,i=new Array(r),a=0;a<r;a++)i[a]=arguments[a];var o=e?e.apply(He,i):i[0];if(o in n)return n[o];var s=t.apply(void 0,i);return n[o]=s,s}},an=function(t,e){if(!t)return e;var n="curve".concat(t.charAt(0).toUpperCase()+t.slice(1));return Je[n]||e},on=function(t,e){return t&&e?Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2)):0},sn=function(t){for(var e="",n="",r=0;r<t.length;r++)void 0!==t[r]&&(t[r].startsWith("color:")||t[r].startsWith("text-align:")?n=n+t[r]+";":e=e+t[r]+";");return{style:e,labelStyle:n}},cn=0,ln=function(){return cn++,"id-"+Math.random().toString(36).substr(2,12)+"-"+cn},un=function(t){return function(t){for(var e="",n="0123456789abcdef",r=n.length,i=0;i<t;i++)e+=n.charAt(Math.floor(Math.random()*r));return e}(t.length)},hn=function(t,e){var n=e.text.replace(oe.lineBreakRegex," "),r=t.append("text");r.attr("x",e.x),r.attr("y",e.y),r.style("text-anchor",e.anchor),r.style("font-family",e.fontFamily),r.style("font-size",e.fontSize),r.style("font-weight",e.fontWeight),r.attr("fill",e.fill),void 0!==e.class&&r.attr("class",e.class);var i=r.append("tspan");return i.attr("x",e.x+2*e.textMargin),i.attr("fill",e.fill),i.text(n),r},dn=rn((function(t,e,n){if(!t)return t;if(n=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"<br/>"},n),oe.lineBreakRegex.test(t))return t;var r=t.split(" "),i=[],a="";return r.forEach((function(t,o){var s=gn("".concat(t," "),n),c=gn(a,n);if(s>e){var l=fn(t,e,"-",n),u=l.hyphenatedStrings,h=l.remainingWord;i.push.apply(i,[a].concat(Xe(u))),a=h}else c+s>=e?(i.push(a),a=t):a=[a,t].filter(Boolean).join(" ");o+1===r.length&&i.push(a)})),i.filter((function(t){return""!==t})).join(n.joinWith)}),(function(t,e,n){return"".concat(t,"-").concat(e,"-").concat(n.fontSize,"-").concat(n.fontWeight,"-").concat(n.fontFamily,"-").concat(n.joinWith)})),fn=rn((function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"-",r=arguments.length>3?arguments[3]:void 0;r=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},r);var i=t.split(""),a=[],o="";return i.forEach((function(t,s){var c="".concat(o).concat(t);if(gn(c,r)>=e){var l=s+1,u=i.length===l,h="".concat(c).concat(n);a.push(u?c:h),o=""}else o=c})),{hyphenatedStrings:a,remainingWord:o}}),(function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"-",r=arguments.length>3?arguments[3]:void 0;return"".concat(t,"-").concat(e,"-").concat(n,"-").concat(r.fontSize,"-").concat(r.fontWeight,"-").concat(r.fontFamily)})),pn=function(t,e){return e=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:15},e),yn(t,e).height},gn=function(t,e){return e=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial"},e),yn(t,e).width},yn=rn((function(t,e){var n=e=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial"},e),r=n.fontSize,i=n.fontFamily,a=n.fontWeight;if(!t)return{width:0,height:0};var o=["sans-serif",i],s=t.split(oe.lineBreakRegex),c=[],u=(0,l.select)("body");if(!u.remove)return{width:0,height:0,lineHeight:0};for(var h=u.append("svg"),d=0,f=o;d<f.length;d++){var p,g=f[d],y=0,m={width:0,height:0,lineHeight:0},b=Ge(s);try{for(b.s();!(p=b.n()).done;){var v=p.value,_={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=v;var x=hn(h,_).style("font-size",r).style("font-weight",a).style("font-family",g),k=(x._groups||x)[0][0].getBBox();m.width=Math.round(Math.max(m.width,k.width)),y=Math.round(k.height),m.height+=y,m.lineHeight=Math.round(Math.max(m.lineHeight,y))}}catch(t){b.e(t)}finally{b.f()}c.push(m)}return h.remove(),c[isNaN(c[1].height)||isNaN(c[1].width)||isNaN(c[1].lineHeight)||c[0].height>c[1].height&&c[0].width>c[1].width&&c[0].lineHeight>c[1].lineHeight?0:1]}),(function(t,e){return"".concat(t,"-").concat(e.fontSize,"-").concat(e.fontWeight,"-").concat(e.fontFamily)})),mn=function(t,e,n){var r=new Map;return n?(r.set("width","100%"),r.set("style","max-width: ".concat(e,"px;"))):r.set("width",e),r},bn=function(t,e,n,r){!function(t,e){var n,r=Ge(e);try{for(r.s();!(n=r.n()).done;){var i=n.value;t.attr(i[0],i[1])}}catch(t){r.e(t)}finally{r.f()}}(t,mn(0,1*n,r))},vn=function(t,e,n,r){var i=e.node().getBBox(),a=i.width,s=i.height;o.info("SVG bounds: ".concat(a,"x").concat(s),i);var c=t._label.width,l=t._label.height;o.info("Graph bounds: ".concat(c,"x").concat(l),t),c=a+2*n,l=s+2*n,o.info("Calculated bounds: ".concat(c,"x").concat(l)),bn(e,0,c,r);var u="".concat(i.x-n," ").concat(i.y-n," ").concat(i.width+2*n," ").concat(i.height+2*n);o.info("Graph.label",t._label,"swidth",a,"sheight",s,"width",c,"height",l,"vBox",u),e.attr("viewBox",u)},_n=function t(e){if(o.debug("directiveSanitizer called with",e),"object"===Ve(e)&&(e.length?e.forEach((function(e){return t(e)})):Object.keys(e).forEach((function(n){o.debug("Checking key",n),0===n.indexOf("__")&&(o.debug("sanitize deleting __ option",n),delete e[n]),n.indexOf("proto")>=0&&(o.debug("sanitize deleting proto option",n),delete e[n]),n.indexOf("constr")>=0&&(o.debug("sanitize deleting constr option",n),delete e[n]),n.indexOf("themeCSS")>=0&&(o.debug("sanitizing themeCss option"),e[n]=xn(e[n])),n.indexOf("fontFamily")>=0&&(o.debug("sanitizing fontFamily option"),e[n]=xn(e[n])),n.indexOf("altFontFamily")>=0&&(o.debug("sanitizing altFontFamily option"),e[n]=xn(e[n])),It.indexOf(n)<0?(o.debug("sanitize deleting option",n),delete e[n]):"object"===Ve(e[n])&&(o.debug("sanitize deleting object",n),t(e[n]))}))),e.themeVariables)for(var n=Object.keys(e.themeVariables),r=0;r<n.length;r++){var i=n[r],a=e.themeVariables[i];a&&a.match&&!a.match(/^[a-zA-Z0-9#,";()%. ]+$/)&&(e.themeVariables[i]="")}o.debug("After sanitization",e)},xn=function(t){for(var e=0,n=0,r=0;r<t.length;r++){if(e<n)return"{ /* ERROR: Unbalanced CSS */ }";"{"===t[r]?e++:"}"===t[r]&&n++}return e!==n?"{ /* ERROR: Unbalanced CSS */ }":t};const kn={assignWithDepth:Q,wrapLabel:dn,calculateTextHeight:pn,calculateTextWidth:gn,calculateTextDimensions:yn,calculateSvgSizeAttrs:mn,configureSvgSize:bn,setupGraphViewbox:vn,detectInit:function(t,e){var n=nn(t,/(?:init\b)|(?:initialize\b)/),r={};if(Array.isArray(n)){var i=n.map((function(t){return t.args}));_n(i),r=Q(r,Xe(i))}else r=n.args;if(r){var a=qe(t,e);["config"].forEach((function(t){void 0!==r[t]&&("flowchart-v2"===a&&(a="flowchart"),r[a]=r[t],delete r[t])}))}return r},detectDirective:nn,isSubstringInArray:function(t,e){for(var n=0;n<e.length;n++)if(e[n].match(t))return n;return-1},interpolateToCurve:an,calcLabelPosition:function(t){return 1===t.length?t[0]:function(t){var e,n=0;t.forEach((function(t){n+=on(t,e),e=t}));var r=n/2,i=void 0;return e=void 0,t.forEach((function(t){if(e&&!i){var n=on(t,e);if(n<r)r-=n;else{var a=r/n;a<=0&&(i=e),a>=1&&(i={x:t.x,y:t.y}),a>0&&a<1&&(i={x:(1-a)*e.x+a*t.x,y:(1-a)*e.y+a*t.y})}}e=t})),i}(t)},calcCardinalityPosition:function(t,e,n){var r;o.info("our points",e),e[0]!==n&&(e=e.reverse()),e.forEach((function(t){on(t,r),r=t}));var i,a=25;r=void 0,e.forEach((function(t){if(r&&!i){var e=on(t,r);if(e<a)a-=e;else{var n=a/e;n<=0&&(i=r),n>=1&&(i={x:t.x,y:t.y}),n>0&&n<1&&(i={x:(1-n)*r.x+n*t.x,y:(1-n)*r.y+n*t.y})}}r=t}));var s=t?10:5,c=Math.atan2(e[0].y-i.y,e[0].x-i.x),l={x:0,y:0};return l.x=Math.sin(c)*s+(e[0].x+i.x)/2,l.y=-Math.cos(c)*s+(e[0].y+i.y)/2,l},calcTerminalLabelPosition:function(t,e,n){var r,i=JSON.parse(JSON.stringify(n));o.info("our points",i),"start_left"!==e&&"start_right"!==e&&(i=i.reverse()),i.forEach((function(t){on(t,r),r=t}));var a,s=25+t;r=void 0,i.forEach((function(t){if(r&&!a){var e=on(t,r);if(e<s)s-=e;else{var n=s/e;n<=0&&(a=r),n>=1&&(a={x:t.x,y:t.y}),n>0&&n<1&&(a={x:(1-n)*r.x+n*t.x,y:(1-n)*r.y+n*t.y})}}r=t}));var c=10+.5*t,l=Math.atan2(i[0].y-a.y,i[0].x-a.x),u={x:0,y:0};return u.x=Math.sin(l)*c+(i[0].x+a.x)/2,u.y=-Math.cos(l)*c+(i[0].y+a.y)/2,"start_left"===e&&(u.x=Math.sin(l+Math.PI)*c+(i[0].x+a.x)/2,u.y=-Math.cos(l+Math.PI)*c+(i[0].y+a.y)/2),"end_right"===e&&(u.x=Math.sin(l-Math.PI)*c+(i[0].x+a.x)/2-5,u.y=-Math.cos(l-Math.PI)*c+(i[0].y+a.y)/2-5),"end_left"===e&&(u.x=Math.sin(l)*c+(i[0].x+a.x)/2-5,u.y=-Math.cos(l)*c+(i[0].y+a.y)/2-5),u},formatUrl:function(t,e){var n=t.trim();if(n)return"loose"!==e.securityLevel?(0,Ie.N)(n):n},getStylesFromArray:sn,generateId:ln,random:un,memoize:rn,runFunc:function(t){for(var e,n=t.split("."),r=n.length-1,i=n[r],a=window,o=0;o<r;o++)if(!(a=a[n[o]]))return;for(var s=arguments.length,c=new Array(s>1?s-1:0),l=1;l<s;l++)c[l-1]=arguments[l];(e=a)[i].apply(e,c)},entityDecode:function(t){return Ke=Ke||document.createElement("div"),t=escape(t).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),Ke.innerHTML=t,unescape(Ke.textContent)},initIdGenerator:function(){function t(e,n){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.deterministic=e,this.seed=n,this.count=n?n.length:0}var e,n;return e=t,(n=[{key:"next",value:function(){return this.deterministic?this.count++:Date.now()}}])&&function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(e.prototype,n),Object.defineProperty(e,"prototype",{writable:!1}),t}(),directiveSanitizer:_n,sanitizeCss:xn};function wn(t,e,n){if(void 0!==e.insert){var r=t.getAccTitle(),i=t.getAccDescription();e.attr("role","img").attr("aria-labelledby","chart-title-"+n+" chart-desc-"+n),e.insert("desc",":first-child").attr("id","chart-desc-"+n).text(i),e.insert("title",":first-child").attr("id","chart-title-"+n).text(r)}}function En(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}function Tn(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function Cn(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}function Sn(t,e,n){return e&&Cn(t.prototype,e),n&&Cn(t,n),Object.defineProperty(t,"prototype",{writable:!1}),t}var An=0,Mn=0,On=4,Nn=2;ze.parser.yy=Le;var Dn={},Bn=function(){function t(e){Tn(this,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,Ln(e.db.getConfig())}return Sn(t,[{key:"setData",value:function(t,e,n,r){this.nextData.startx=this.data.startx=t,this.nextData.stopx=this.data.stopx=e,this.nextData.starty=this.data.starty=n,this.nextData.stopy=this.data.stopy=r}},{key:"updateVal",value:function(t,e,n,r){void 0===t[e]?t[e]=n:t[e]=r(n,t[e])}},{key:"insert",value:function(t){this.nextData.cnt=this.nextData.cnt+1;var e=this.nextData.startx===this.nextData.stopx?this.nextData.stopx+t.margin:this.nextData.stopx+2*t.margin,n=e+t.width,r=this.nextData.starty+2*t.margin,i=r+t.height;(e>=this.data.widthLimit||n>=this.data.widthLimit||this.nextData.cnt>On)&&(e=this.nextData.startx+t.margin+Dn.nextLinePaddingX,r=this.nextData.stopy+2*t.margin,this.nextData.stopx=n=e+t.width,this.nextData.starty=this.nextData.stopy,this.nextData.stopy=i=r+t.height,this.nextData.cnt=1),t.x=e,t.y=r,this.updateVal(this.data,"startx",e,Math.min),this.updateVal(this.data,"starty",r,Math.min),this.updateVal(this.data,"stopx",n,Math.max),this.updateVal(this.data,"stopy",i,Math.max),this.updateVal(this.nextData,"startx",e,Math.min),this.updateVal(this.nextData,"starty",r,Math.min),this.updateVal(this.nextData,"stopx",n,Math.max),this.updateVal(this.nextData,"stopy",i,Math.max)}},{key:"init",value:function(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},Ln(t.db.getConfig())}},{key:"bumpLastMargin",value:function(t){this.data.stopx+=t,this.data.stopy+=t}}]),t}(),Ln=function(t){Q(Dn,t),t.fontFamily&&(Dn.personFontFamily=Dn.systemFontFamily=Dn.messageFontFamily=t.fontFamily),t.fontSize&&(Dn.personFontSize=Dn.systemFontSize=Dn.messageFontSize=t.fontSize),t.fontWeight&&(Dn.personFontWeight=Dn.systemFontWeight=Dn.messageFontWeight=t.fontWeight)},In=function(t,e){return{fontFamily:t[e+"FontFamily"],fontSize:t[e+"FontSize"],fontWeight:t[e+"FontWeight"]}},Fn=function(t){return{fontFamily:t.boundaryFontFamily,fontSize:t.boundaryFontSize,fontWeight:t.boundaryFontWeight}};function Rn(t,e,n,r,i){if(!e[t].width)if(n)e[t].text=dn(e[t].text,i,r),e[t].textLines=e[t].text.split(oe.lineBreakRegex).length,e[t].width=i,e[t].height=pn(e[t].text,r);else{var a=e[t].text.split(oe.lineBreakRegex);e[t].textLines=a.length;var o=0;e[t].height=0,e[t].width=0;for(var s=0;s<a.length;s++)e[t].width=Math.max(gn(a[s],r),e[t].width),o=pn(a[s],r),e[t].height=e[t].height+o}}var Pn=function(t,e,n){e.x=n.data.startx,e.y=n.data.starty,e.width=n.data.stopx-n.data.startx,e.height=n.data.stopy-n.data.starty,e.label.y=Dn.c4ShapeMargin-35;var r=e.wrap&&Dn.wrap,i=Fn(Dn);i.fontSize=i.fontSize+2,i.fontWeight="bold",Rn("label",e,r,i,gn(e.label.text,i)),function(t,e,n){var r=t.append("g"),i=e.bgColor?e.bgColor:"none",a=e.borderColor?e.borderColor:"#444444",o=e.fontColor?e.fontColor:"black",s={"stroke-width":1,"stroke-dasharray":"7.0,7.0"};e.nodeType&&(s={"stroke-width":1});var c={x:e.x,y:e.y,fill:i,stroke:a,width:e.width,height:e.height,rx:2.5,ry:2.5,attrs:s};Re(r,c);var l=n.boundaryFont();l.fontWeight="bold",l.fontSize=l.fontSize+2,l.fontColor=o,Pe(n)(e.label.text,r,e.x,e.y+e.label.Y,e.width,e.height,{fill:"#444444"},l),e.type&&""!==e.type.text&&((l=n.boundaryFont()).fontColor=o,Pe(n)(e.type.text,r,e.x,e.y+e.type.Y,e.width,e.height,{fill:"#444444"},l)),e.descr&&""!==e.descr.text&&((l=n.boundaryFont()).fontSize=l.fontSize-2,l.fontColor=o,Pe(n)(e.descr.text,r,e.x,e.y+e.descr.Y,e.width,e.height,{fill:"#444444"},l))}(t,e,Dn)},jn=function(t,e,n,r){for(var i=0,a=0;a<r.length;a++){i=0;var o=n[r[a]],s=In(Dn,o.typeC4Shape.text);switch(s.fontSize=s.fontSize-2,o.typeC4Shape.width=gn("<<"+o.typeC4Shape.text+">>",s),o.typeC4Shape.height=s.fontSize+2,o.typeC4Shape.Y=Dn.c4ShapePadding,i=o.typeC4Shape.Y+o.typeC4Shape.height-4,o.image={width:0,height:0,Y:0},o.typeC4Shape.text){case"person":case"external_person":o.image.width=48,o.image.height=48,o.image.Y=i,i=o.image.Y+o.image.height}o.sprite&&(o.image.width=48,o.image.height=48,o.image.Y=i,i=o.image.Y+o.image.height);var c=o.wrap&&Dn.wrap,l=Dn.width-2*Dn.c4ShapePadding,u=In(Dn,o.typeC4Shape.text);u.fontSize=u.fontSize+2,u.fontWeight="bold",Rn("label",o,c,u,l),o.label.Y=i+8,i=o.label.Y+o.label.height,o.type&&""!==o.type.text?(o.type.text="["+o.type.text+"]",Rn("type",o,c,In(Dn,o.typeC4Shape.text),l),o.type.Y=i+5,i=o.type.Y+o.type.height):o.techn&&""!==o.techn.text&&(o.techn.text="["+o.techn.text+"]",Rn("techn",o,c,In(Dn,o.techn.text),l),o.techn.Y=i+5,i=o.techn.Y+o.techn.height);var h=i,d=o.label.width;o.descr&&""!==o.descr.text&&(Rn("descr",o,c,In(Dn,o.typeC4Shape.text),l),o.descr.Y=i+20,i=o.descr.Y+o.descr.height,d=Math.max(o.label.width,o.descr.width),h=i-5*o.descr.textLines),d+=Dn.c4ShapePadding,o.width=Math.max(o.width||Dn.width,d,Dn.width),o.height=Math.max(o.height||Dn.height,h,Dn.height),o.margin=o.margin||Dn.c4ShapeMargin,t.insert(o),je(e,o,Dn)}t.bumpLastMargin(Dn.c4ShapeMargin)},zn=Sn((function t(e,n){Tn(this,t),this.x=e,this.y=n})),Yn=function(t,e){var n=t.x,r=t.y,i=e.x,a=e.y,o=n+t.width/2,s=r+t.height/2,c=Math.abs(n-i),l=Math.abs(r-a),u=l/c,h=t.height/t.width,d=null;return r==a&&n<i?d=new zn(n+t.width,s):r==a&&n>i?d=new zn(n,s):n==i&&r<a?d=new zn(o,r+t.height):n==i&&r>a&&(d=new zn(o,r)),n>i&&r<a?d=h>=u?new zn(n,s+u*t.width/2):new zn(o-c/l*t.height/2,r+t.height):n<i&&r<a?d=h>=u?new zn(n+t.width,s+u*t.width/2):new zn(o+c/l*t.height/2,r+t.height):n<i&&r>a?d=h>=u?new zn(n+t.width,s-u*t.width/2):new zn(o+t.height/2*c/l,r):n>i&&r>a&&(d=h>=u?new zn(n,s-t.width/2*u):new zn(o-t.height/2*c/l,r)),d},Un=function(t,e){var n={x:0,y:0};n.x=e.x+e.width/2,n.y=e.y+e.height/2;var r=Yn(t,n);return n.x=t.x+t.width/2,n.y=t.y+t.height/2,{startPoint:r,endPoint:Yn(e,n)}};function $n(t,e,n,r,i){var a=new Bn(i);a.data.widthLimit=n.data.widthLimit/Math.min(Nn,r.length);for(var o=0;o<r.length;o++){var s=r[o],c=0;s.image={width:0,height:0,Y:0},s.sprite&&(s.image.width=48,s.image.height=48,s.image.Y=c,c=s.image.Y+s.image.height);var l=s.wrap&&Dn.wrap,u=Fn(Dn);if(u.fontSize=u.fontSize+2,u.fontWeight="bold",Rn("label",s,l,u,a.data.widthLimit),s.label.Y=c+8,c=s.label.Y+s.label.height,s.type&&""!==s.type.text&&(s.type.text="["+s.type.text+"]",Rn("type",s,l,Fn(Dn),a.data.widthLimit),s.type.Y=c+5,c=s.type.Y+s.type.height),s.descr&&""!==s.descr.text){var h=Fn(Dn);h.fontSize=h.fontSize-2,Rn("descr",s,l,h,a.data.widthLimit),s.descr.Y=c+20,c=s.descr.Y+s.descr.height}if(0==o||o%Nn==0){var d=n.data.startx+Dn.diagramMarginX,f=n.data.stopy+Dn.diagramMarginY+c;a.setData(d,d,f,f)}else{var p=a.data.stopx!==a.data.startx?a.data.stopx+Dn.diagramMarginX:a.data.startx,g=a.data.starty;a.setData(p,p,g,g)}a.name=s.alias;var y=i.db.getC4ShapeArray(s.alias),m=i.db.getC4ShapeKeys(s.alias);m.length>0&&jn(a,t,y,m),e=s.alias;var b=i.db.getBoundarys(e);b.length>0&&$n(t,e,a,b,i),"global"!==s.alias&&Pn(t,s,a),n.data.stopy=Math.max(a.data.stopy+Dn.c4ShapeMargin,n.data.stopy),n.data.stopx=Math.max(a.data.stopx+Dn.c4ShapeMargin,n.data.stopx),An=Math.max(An,n.data.stopx),Mn=Math.max(Mn,n.data.stopy)}}const Wn={drawPersonOrSystemArray:jn,drawBoundary:Pn,setConf:Ln,draw:function(t,e,n,r){Dn=qt().c4;var i,a=qt().securityLevel;"sandbox"===a&&(i=(0,l.select)("#i"+e));var s="sandbox"===a?(0,l.select)(i.nodes()[0].contentDocument.body):(0,l.select)("body"),c=r.db;r.db.setWrap(Dn.wrap),On=c.getC4ShapeInRow(),Nn=c.getC4BoundaryInRow(),o.debug("C:".concat(JSON.stringify(Dn,null,2)));var u="sandbox"===a?s.select('[id="'.concat(e,'"]')):(0,l.select)('[id="'.concat(e,'"]'));u.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"),function(t){t.append("defs").append("symbol").attr("id","database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")}(u),function(t){t.append("defs").append("symbol").attr("id","clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")}(u);var h=new Bn(r);h.setData(Dn.diagramMarginX,Dn.diagramMarginX,Dn.diagramMarginY,Dn.diagramMarginY),h.data.widthLimit=screen.availWidth,An=Dn.diagramMarginX,Mn=Dn.diagramMarginY;var d=r.db.getTitle();r.db.getC4Type(),$n(u,"",h,r.db.getBoundarys(""),r),function(t){t.append("defs").append("marker").attr("id","arrowhead").attr("refX",9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z")}(u),function(t){t.append("defs").append("marker").attr("id","arrowend").attr("refX",1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 z")}(u),function(t){var e=t.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",16).attr("refY",4);e.append("path").attr("fill","black").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 9,2 V 6 L16,4 Z"),e.append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 0,1 L 6,7 M 6,1 L 0,7")}(u),function(t){t.append("defs").append("marker").attr("id","filled-head").attr("refX",18).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")}(u),function(t,e,n,r){var i,a,o=0,s=function(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return En(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?En(t,e):void 0}}(t))){n&&(t=n);var r=0,i=function(){};return{s:i,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,o=!0,s=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return o=t.done,t},e:function(t){s=!0,a=t},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}(e);try{for(s.s();!(i=s.n()).done;){var c=i.value;o+=1;var l=c.wrap&&Dn.wrap,u={fontFamily:(a=Dn).messageFontFamily,fontSize:a.messageFontSize,fontWeight:a.messageFontWeight};"C4Dynamic"===r.db.getC4Type()&&(c.label.text=o+": "+c.label.text);var h=gn(c.label.text,u);Rn("label",c,l,u,h),c.techn&&""!==c.techn.text&&Rn("techn",c,l,u,h=gn(c.techn.text,u)),c.descr&&""!==c.descr.text&&Rn("descr",c,l,u,h=gn(c.descr.text,u));var d=n(c.from),f=n(c.to),p=Un(d,f);c.startPoint=p.startPoint,c.endPoint=p.endPoint}}catch(t){s.e(t)}finally{s.f()}!function(t,e,n){var r,i=t.append("g"),a=0,o=function(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return Fe(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Fe(t,e):void 0}}(t))){n&&(t=n);var r=0,i=function(){};return{s:i,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,o=!0,s=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return o=t.done,t},e:function(t){s=!0,a=t},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}(e);try{for(o.s();!(r=o.n()).done;){var s=r.value,c=s.textColor?s.textColor:"#444444",l=s.lineColor?s.lineColor:"#444444",u=s.offsetX?parseInt(s.offsetX):0,h=s.offsetY?parseInt(s.offsetY):0;if(0===a){var d=i.append("line");d.attr("x1",s.startPoint.x),d.attr("y1",s.startPoint.y),d.attr("x2",s.endPoint.x),d.attr("y2",s.endPoint.y),d.attr("stroke-width","1"),d.attr("stroke",l),d.style("fill","none"),"rel_b"!==s.type&&d.attr("marker-end","url(#arrowhead)"),"birel"!==s.type&&"rel_b"!==s.type||d.attr("marker-start","url(#arrowend)"),a=-1}else{var f=i.append("path");f.attr("fill","none").attr("stroke-width","1").attr("stroke",l).attr("d","Mstartx,starty Qcontrolx,controly stopx,stopy ".replaceAll("startx",s.startPoint.x).replaceAll("starty",s.startPoint.y).replaceAll("controlx",s.startPoint.x+(s.endPoint.x-s.startPoint.x)/2-(s.endPoint.x-s.startPoint.x)/4).replaceAll("controly",s.startPoint.y+(s.endPoint.y-s.startPoint.y)/2).replaceAll("stopx",s.endPoint.x).replaceAll("stopy",s.endPoint.y)),"rel_b"!==s.type&&f.attr("marker-end","url(#arrowhead)"),"birel"!==s.type&&"rel_b"!==s.type||f.attr("marker-start","url(#arrowend)")}var p=n.messageFont();Pe(n)(s.label.text,i,Math.min(s.startPoint.x,s.endPoint.x)+Math.abs(s.endPoint.x-s.startPoint.x)/2+u,Math.min(s.startPoint.y,s.endPoint.y)+Math.abs(s.endPoint.y-s.startPoint.y)/2+h,s.label.width,s.label.height,{fill:c},p),s.techn&&""!==s.techn.text&&(p=n.messageFont(),Pe(n)("["+s.techn.text+"]",i,Math.min(s.startPoint.x,s.endPoint.x)+Math.abs(s.endPoint.x-s.startPoint.x)/2+u,Math.min(s.startPoint.y,s.endPoint.y)+Math.abs(s.endPoint.y-s.startPoint.y)/2+n.messageFontSize+5+h,Math.max(s.label.width,s.techn.width),s.techn.height,{fill:c,"font-style":"italic"},p))}}catch(t){o.e(t)}finally{o.f()}}(t,e,Dn)}(u,r.db.getRels(),r.db.getC4Shape,r),h.data.stopx=An,h.data.stopy=Mn;var f=h.data,p=f.stopy-f.starty+2*Dn.diagramMarginY,g=f.stopx-f.startx+2*Dn.diagramMarginX;d&&u.append("text").text(d).attr("x",(f.stopx-f.startx)/2-4*Dn.diagramMarginX).attr("y",f.starty+Dn.diagramMarginY),bn(u,0,g,Dn.useMaxWidth);var y=d?60:0;u.attr("viewBox",f.startx-Dn.diagramMarginX+" -"+(Dn.diagramMarginY+y)+" "+g+" "+(p+y)),wn(ze.parser.yy,u,e),o.debug("models:",f)}};function qn(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}var Hn="classid-",Vn=[],Gn={},Xn=0,Zn=[],Qn=function(t){return oe.sanitizeText(t,qt())},Kn=function(t){var e="",n=t;if(t.indexOf("~")>0){var r=t.split("~");n=r[0],e=oe.sanitizeText(r[1],qt())}return{className:n,type:e}},Jn=function(t){var e=Kn(t);void 0===Gn[e.className]&&(Gn[e.className]={id:e.className,type:e.type,cssClasses:[],methods:[],members:[],annotations:[],domId:Hn+e.className+"-"+Xn},Xn++)},tr=function(t){for(var e=Object.keys(Gn),n=0;n<e.length;n++)if(Gn[e[n]].id===t)return Gn[e[n]].domId},er=function(t,e){var n=Kn(t).className,r=Gn[n];if("string"==typeof e){var i=e.trim();i.startsWith("<<")&&i.endsWith(">>")?r.annotations.push(Qn(i.substring(2,i.length-2))):i.indexOf(")")>0?r.methods.push(Qn(i)):i&&r.members.push(Qn(i))}},nr=function(t,e){t.split(",").forEach((function(t){var n=t;t[0].match(/\d/)&&(n=Hn+n),void 0!==Gn[n]&&Gn[n].cssClasses.push(e)}))},rr=function(t){var e=(0,l.select)(".mermaidTooltip");null===(e._groups||e)[0][0]&&(e=(0,l.select)("body").append("div").attr("class","mermaidTooltip").style("opacity",0)),(0,l.select)(t).select("svg").selectAll("g.node").on("mouseover",(function(){var t=(0,l.select)(this);if(null!==t.attr("title")){var n=this.getBoundingClientRect();e.transition().duration(200).style("opacity",".9"),e.text(t.attr("title")).style("left",window.scrollX+n.left+(n.right-n.left)/2+"px").style("top",window.scrollY+n.top-14+document.body.scrollTop+"px"),e.html(e.html().replace(/<br\/>/g,"<br/>")),t.classed("hover",!0)}})).on("mouseout",(function(){e.transition().duration(500).style("opacity",0),(0,l.select)(this).classed("hover",!1)}))};Zn.push(rr);var ir="TB";const ar={parseDirective:function(t,e,n){Nl.parseDirective(this,t,e,n)},setAccTitle:de,getAccTitle:fe,getAccDescription:ge,setAccDescription:pe,getConfig:function(){return qt().class},addClass:Jn,bindFunctions:function(t){Zn.forEach((function(e){e(t)}))},clear:function(){Vn=[],Gn={},(Zn=[]).push(rr),he()},getClass:function(t){return Gn[t]},getClasses:function(){return Gn},addAnnotation:function(t,e){var n=Kn(t).className;Gn[n].annotations.push(e)},getRelations:function(){return Vn},addRelation:function(t){o.debug("Adding relation: "+JSON.stringify(t)),Jn(t.id1),Jn(t.id2),t.id1=Kn(t.id1).className,t.id2=Kn(t.id2).className,t.relationTitle1=oe.sanitizeText(t.relationTitle1.trim(),qt()),t.relationTitle2=oe.sanitizeText(t.relationTitle2.trim(),qt()),Vn.push(t)},getDirection:function(){return ir},setDirection:function(t){ir=t},addMember:er,addMembers:function(t,e){Array.isArray(e)&&(e.reverse(),e.forEach((function(e){return er(t,e)})))},cleanupLabel:function(t){return":"===t.substring(0,1)?oe.sanitizeText(t.substr(1).trim(),qt()):Qn(t.trim())},lineType:{LINE:0,DOTTED_LINE:1},relationType:{AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3,LOLLIPOP:4},setClickEvent:function(t,e,n){t.split(",").forEach((function(t){(function(t,e,n){var r=qt(),i=t,a=tr(i);if("loose"===r.securityLevel&&void 0!==e&&void 0!==Gn[i]){var o=[];if("string"==typeof n){o=n.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(var s=0;s<o.length;s++){var c=o[s].trim();'"'===c.charAt(0)&&'"'===c.charAt(c.length-1)&&(c=c.substr(1,c.length-2)),o[s]=c}}0===o.length&&o.push(a),Zn.push((function(){var t=document.querySelector('[id="'.concat(a,'"]'));null!==t&&t.addEventListener("click",(function(){var t;kn.runFunc.apply(kn,[e].concat(function(t){if(Array.isArray(t))return qn(t)}(t=o)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(t){if("string"==typeof t)return qn(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?qn(t,e):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()))}),!1)}))}})(t,e,n),Gn[t].haveCallback=!0})),nr(t,"clickable")},setCssClass:nr,setLink:function(t,e,n){var r=qt();t.split(",").forEach((function(t){var i=t;t[0].match(/\d/)&&(i=Hn+i),void 0!==Gn[i]&&(Gn[i].link=kn.formatUrl(e,r),"sandbox"===r.securityLevel?Gn[i].linkTarget="_top":Gn[i].linkTarget="string"==typeof n?Qn(n):"_blank")})),nr(t,"clickable")},getTooltip:function(t){return Gn[t].tooltip},setTooltip:function(t,e){var n=qt();t.split(",").forEach((function(t){void 0!==e&&(Gn[t].tooltip=oe.sanitizeText(e,n))}))},lookUpDomId:tr};var or=n(681),sr=n.n(or),cr=n(8282),lr=n.n(cr),ur=0,hr=function(t){var e=t.match(/^(\+|-|~|#)?(\w+)(~\w+~|\[\])?\s+(\w+) *(\*|\$)?$/),n=t.match(/^([+|\-|~|#])?(\w+) *\( *(.*)\) *(\*|\$)? *(\w*[~|[\]]*\s*\w*~?)$/);return e&&!n?dr(e):n?fr(n):pr(t)},dr=function(t){var e="",n="";try{var r=t[1]?t[1].trim():"",i=t[2]?t[2].trim():"",a=t[3]?ae(t[3].trim()):"",o=t[4]?t[4].trim():"",s=t[5]?t[5].trim():"";n=r+i+a+" "+o,e=yr(s)}catch(e){n=t}return{displayText:n,cssStyle:e}},fr=function(t){var e="",n="";try{var r=t[1]?t[1].trim():"",i=t[2]?t[2].trim():"",a=t[3]?ae(t[3].trim()):"",o=t[4]?t[4].trim():"";n=r+i+"("+a+")"+(t[5]?" : "+ae(t[5]).trim():""),e=yr(o)}catch(e){n=t}return{displayText:n,cssStyle:e}},pr=function(t){var e="",n="",r="",i=t.indexOf("("),a=t.indexOf(")");if(i>1&&a>i&&a<=t.length){var o="",s="",c=t.substring(0,1);c.match(/\w/)?s=t.substring(0,i).trim():(c.match(/\+|-|~|#/)&&(o=c),s=t.substring(1,i).trim());var l=t.substring(i+1,a),u=t.substring(a+1,1);n=yr(u),e=o+s+"("+ae(l.trim())+")",a<"".length&&""!==(r=t.substring(a+2).trim())&&(r=" : "+ae(r))}else e=ae(t);return{displayText:e,cssStyle:n}},gr=function(t,e,n,r){var i=hr(e),a=t.append("tspan").attr("x",r.padding).text(i.displayText);""!==i.cssStyle&&a.attr("style",i.cssStyle),n||a.attr("dy",r.textHeight)},yr=function(t){switch(t){case"*":return"font-style:italic;";case"$":return"text-decoration:underline;";default:return""}};const mr=function(t,e,n,r){o.debug("Rendering class ",e,n);var i,a=e.id,s={id:a,label:e.id,width:0,height:0},c=t.append("g").attr("id",r.db.lookUpDomId(a)).attr("class","classGroup");i=e.link?c.append("svg:a").attr("xlink:href",e.link).attr("target",e.linkTarget).append("text").attr("y",n.textHeight+n.padding).attr("x",0):c.append("text").attr("y",n.textHeight+n.padding).attr("x",0);var l=!0;e.annotations.forEach((function(t){var e=i.append("tspan").text("\xab"+t+"\xbb");l||e.attr("dy",n.textHeight),l=!1}));var u=e.id;void 0!==e.type&&""!==e.type&&(u+="<"+e.type+">");var h=i.append("tspan").text(u).attr("class","title");l||h.attr("dy",n.textHeight);var d=i.node().getBBox().height,f=c.append("line").attr("x1",0).attr("y1",n.padding+d+n.dividerMargin/2).attr("y2",n.padding+d+n.dividerMargin/2),p=c.append("text").attr("x",n.padding).attr("y",d+n.dividerMargin+n.textHeight).attr("fill","white").attr("class","classText");l=!0,e.members.forEach((function(t){gr(p,t,l,n),l=!1}));var g=p.node().getBBox(),y=c.append("line").attr("x1",0).attr("y1",n.padding+d+n.dividerMargin+g.height).attr("y2",n.padding+d+n.dividerMargin+g.height),m=c.append("text").attr("x",n.padding).attr("y",d+2*n.dividerMargin+g.height+n.textHeight).attr("fill","white").attr("class","classText");l=!0,e.methods.forEach((function(t){gr(m,t,l,n),l=!1}));var b=c.node().getBBox(),v=" ";e.cssClasses.length>0&&(v+=e.cssClasses.join(" "));var _=c.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",b.width+2*n.padding).attr("height",b.height+n.padding+.5*n.dividerMargin).attr("class",v).node().getBBox().width;return i.node().childNodes.forEach((function(t){t.setAttribute("x",(_-t.getBBox().width)/2)})),e.tooltip&&i.insert("title").text(e.tooltip),f.attr("x2",_),y.attr("x2",_),s.width=_,s.height=b.height+n.padding+.5*n.dividerMargin,s};var br={},vr=function(t){var e=Object.entries(br).find((function(e){return e[1].label===t}));if(e)return e[0]};const _r={draw:function(t,e,n,r){var i=qt().class;br={},o.info("Rendering diagram "+t);var a,s=qt().securityLevel;"sandbox"===s&&(a=(0,l.select)("#i"+e));var c,u="sandbox"===s?(0,l.select)(a.nodes()[0].contentDocument.body):(0,l.select)("body"),h=("sandbox"===s?a.nodes()[0].contentDocument:document,u.select("[id='".concat(e,"']")));(c=h).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"),c.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"),c.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"),c.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"),c.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"),c.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"),c.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"),c.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");var d=new(lr().Graph)({multigraph:!0});d.setGraph({isMultiGraph:!0}),d.setDefaultEdgeLabel((function(){return{}}));for(var f=r.db.getClasses(),p=Object.keys(f),g=0;g<p.length;g++){var y=f[p[g]],m=mr(h,y,i,r);br[m.id]=m,d.setNode(m.id,m),o.info("Org height: "+m.height)}r.db.getRelations().forEach((function(t){o.info("tjoho"+vr(t.id1)+vr(t.id2)+JSON.stringify(t)),d.setEdge(vr(t.id1),vr(t.id2),{relation:t},t.title||"DEFAULT")})),sr().layout(d),d.nodes().forEach((function(t){void 0!==t&&void 0!==d.node(t)&&(o.debug("Node "+t+": "+JSON.stringify(d.node(t))),u.select("#"+r.db.lookUpDomId(t)).attr("transform","translate("+(d.node(t).x-d.node(t).width/2)+","+(d.node(t).y-d.node(t).height/2)+" )"))})),d.edges().forEach((function(t){void 0!==t&&void 0!==d.edge(t)&&(o.debug("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(d.edge(t))),function(t,e,n,r,i){var a=function(t){switch(t){case i.db.relationType.AGGREGATION:return"aggregation";case i.db.EXTENSION:return"extension";case i.db.COMPOSITION:return"composition";case i.db.DEPENDENCY:return"dependency";case i.db.LOLLIPOP:return"lollipop"}};e.points=e.points.filter((function(t){return!Number.isNaN(t.y)}));var s,c,u=e.points,h=(0,l.line)().x((function(t){return t.x})).y((function(t){return t.y})).curve(l.curveBasis),d=t.append("path").attr("d",h(u)).attr("id","edge"+ur).attr("class","relation"),f="";r.arrowMarkerAbsolute&&(f=(f=(f=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search).replace(/\(/g,"\\(")).replace(/\)/g,"\\)")),1==n.relation.lineType&&d.attr("class","relation dashed-line"),"none"!==n.relation.type1&&d.attr("marker-start","url("+f+"#"+a(n.relation.type1)+"Start)"),"none"!==n.relation.type2&&d.attr("marker-end","url("+f+"#"+a(n.relation.type2)+"End)");var p,g,y,m,b=e.points.length,v=kn.calcLabelPosition(e.points);if(s=v.x,c=v.y,b%2!=0&&b>1){var _=kn.calcCardinalityPosition("none"!==n.relation.type1,e.points,e.points[0]),x=kn.calcCardinalityPosition("none"!==n.relation.type2,e.points,e.points[b-1]);o.debug("cardinality_1_point "+JSON.stringify(_)),o.debug("cardinality_2_point "+JSON.stringify(x)),p=_.x,g=_.y,y=x.x,m=x.y}if(void 0!==n.title){var k=t.append("g").attr("class","classLabel"),w=k.append("text").attr("class","label").attr("x",s).attr("y",c).attr("fill","red").attr("text-anchor","middle").text(n.title);window.label=w;var E=w.node().getBBox();k.insert("rect",":first-child").attr("class","box").attr("x",E.x-r.padding/2).attr("y",E.y-r.padding/2).attr("width",E.width+r.padding).attr("height",E.height+r.padding)}o.info("Rendering relation "+JSON.stringify(n)),void 0!==n.relationTitle1&&"none"!==n.relationTitle1&&t.append("g").attr("class","cardinality").append("text").attr("class","type1").attr("x",p).attr("y",g).attr("fill","black").attr("font-size","6").text(n.relationTitle1),void 0!==n.relationTitle2&&"none"!==n.relationTitle2&&t.append("g").attr("class","cardinality").append("text").attr("class","type2").attr("x",y).attr("y",m).attr("fill","black").attr("font-size","6").text(n.relationTitle2),ur++}(h,d.edge(t),d.edge(t).relation,i,r))}));var b=h.node().getBBox(),v=b.width+40,_=b.height+40;bn(h,0,v,i.useMaxWidth);var x="".concat(b.x-20," ").concat(b.y-20," ").concat(v," ").concat(_);o.debug("viewBox ".concat(x)),h.attr("viewBox",x),wn(r.db,h,e)}};var xr={extension:function(t,e,n){o.trace("Making markers for ",n),t.append("defs").append("marker").attr("id",e+"-extensionStart").attr("class","marker extension "+e).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),t.append("defs").append("marker").attr("id",e+"-extensionEnd").attr("class","marker extension "+e).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")},composition:function(t,e){t.append("defs").append("marker").attr("id",e+"-compositionStart").attr("class","marker composition "+e).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",e+"-compositionEnd").attr("class","marker composition "+e).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")},aggregation:function(t,e){t.append("defs").append("marker").attr("id",e+"-aggregationStart").attr("class","marker aggregation "+e).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",e+"-aggregationEnd").attr("class","marker aggregation "+e).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")},dependency:function(t,e){t.append("defs").append("marker").attr("id",e+"-dependencyStart").attr("class","marker dependency "+e).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),t.append("defs").append("marker").attr("id",e+"-dependencyEnd").attr("class","marker dependency "+e).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")},lollipop:function(t,e,n){t.append("defs").append("marker").attr("id",e+"-lollipopStart").attr("class","marker lollipop "+e).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","white").attr("cx",6).attr("cy",7).attr("r",6)},point:function(t,e){t.append("marker").attr("id",e+"-pointEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").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").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",e+"-pointStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",0).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")},circle:function(t,e){t.append("marker").attr("id",e+"-circleEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),t.append("marker").attr("id",e+"-circleStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},cross:function(t,e){t.append("marker").attr("id",e+"-crossEnd").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),t.append("marker").attr("id",e+"-crossStart").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},barb:function(t,e){t.append("defs").append("marker").attr("id",e+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")}};function kr(t){return kr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},kr(t)}const wr=function(t,e,n,r){var i=t||"";if("object"===kr(i)&&(i=i[0]),ie(qt().flowchart.htmlLabels)){i=i.replace(/\\n|\n/g,"<br />"),o.info("vertexText"+i);var a=function(t){var e,n=(0,l.select)(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),r=n.append("xhtml:div"),i=t.label,a=t.isNode?"nodeLabel":"edgeLabel";return r.html('<span class="'+a+'" '+(t.labelStyle?'style="'+t.labelStyle+'"':"")+">"+i+"</span>"),(e=t.labelStyle)&&r.attr("style",e),r.style("display","inline-block"),r.style("white-space","nowrap"),r.attr("xmlns","http://www.w3.org/1999/xhtml"),n.node()}({isNode:r,label:Sl(i).replace(/fa[lrsb]?:fa-[\w-]+/g,(function(t){return"<i class='".concat(t.replace(":"," "),"'></i>")})),labelStyle:e.replace("fill:","color:")});return a}var s=document.createElementNS("http://www.w3.org/2000/svg","text");s.setAttribute("style",e.replace("color:","fill:"));var c=[];c="string"==typeof i?i.split(/\\n|\n|<br\s*\/?>/gi):Array.isArray(i)?i:[];for(var u=0;u<c.length;u++){var h=document.createElementNS("http://www.w3.org/2000/svg","tspan");h.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),h.setAttribute("dy","1em"),h.setAttribute("x","0"),n?h.setAttribute("class","title-row"):h.setAttribute("class","row"),h.textContent=c[u].trim(),s.appendChild(h)}return s};var Er=function(t,e,n,r){var i;i=n||"node default";var a=t.insert("g").attr("class",i).attr("id",e.domId||e.id),o=a.insert("g").attr("class","label").attr("style",e.labelStyle),s="string"==typeof e.labelText?e.labelText:e.labelText[0],c=o.node().appendChild(wr(te(Sl(s),qt()),e.labelStyle,!1,r)),u=c.getBBox();if(ie(qt().flowchart.htmlLabels)){var h=c.children[0],d=(0,l.select)(c);u=h.getBoundingClientRect(),d.attr("width",u.width),d.attr("height",u.height)}var f=e.padding/2;return o.attr("transform","translate("+-u.width/2+", "+-u.height/2+")"),{shapeSvg:a,bbox:u,halfPadding:f,label:o}},Tr=function(t,e){var n=e.node().getBBox();t.width=n.width,t.height=n.height};function Cr(t,e,n,r){return t.insert("polygon",":first-child").attr("points",r.map((function(t){return t.x+","+t.y})).join(" ")).attr("class","label-container").attr("transform","translate("+-e/2+","+n/2+")")}var Sr={},Ar={},Mr={},Or=function(t,e){return o.trace("In isDecendant",e," ",t," = ",Ar[e].indexOf(t)>=0),Ar[e].indexOf(t)>=0},Nr=function t(e,n,r,i){o.warn("Copying children of ",e,"root",i,"data",n.node(e),i);var a=n.children(e)||[];e!==i&&a.push(e),o.warn("Copying (nodes) clusterId",e,"nodes",a),a.forEach((function(a){if(n.children(a).length>0)t(a,n,r,i);else{var s=n.node(a);o.info("cp ",a," to ",i," with parent ",e),r.setNode(a,s),i!==n.parent(a)&&(o.warn("Setting parent",a,n.parent(a)),r.setParent(a,n.parent(a))),e!==i&&a!==e?(o.debug("Setting parent",a,e),r.setParent(a,e)):(o.info("In copy ",e,"root",i,"data",n.node(e),i),o.debug("Not Setting parent for node=",a,"cluster!==rootId",e!==i,"node!==clusterId",a!==e));var c=n.edges(a);o.debug("Copying Edges",c),c.forEach((function(t){o.info("Edge",t);var a=n.edge(t.v,t.w,t.name);o.info("Edge data",a,i);try{!function(t,e){return o.info("Decendants of ",e," is ",Ar[e]),o.info("Edge is ",t),t.v!==e&&t.w!==e&&(Ar[e]?(o.info("Here "),Ar[e].indexOf(t.v)>=0||!!Or(t.v,e)||!!Or(t.w,e)||Ar[e].indexOf(t.w)>=0):(o.debug("Tilt, ",e,",not in decendants"),!1))}(t,i)?o.info("Skipping copy of edge ",t.v,"--\x3e",t.w," rootId: ",i," clusterId:",e):(o.info("Copying as ",t.v,t.w,a,t.name),r.setEdge(t.v,t.w,a,t.name),o.info("newGraph edges ",r.edges(),r.edge(r.edges()[0])))}catch(t){o.error(t)}}))}o.debug("Removing node",a),n.removeNode(a)}))},Dr=function t(e,n){for(var r=n.children(e),i=[].concat(r),a=0;a<r.length;a++)Mr[r[a]]=e,i=i.concat(t(r[a],n));return i},Br=function t(e,n){o.trace("Searching",e);var r=n.children(e);if(o.trace("Searching children of id ",e,r),r.length<1)return o.trace("This is a valid node",e),e;for(var i=0;i<r.length;i++){var a=t(r[i],n);if(a)return o.trace("Found replacement for",e," => ",a),a}},Lr=function(t){return Sr[t]&&Sr[t].externalConnections&&Sr[t]?Sr[t].id:t},Ir=function(t,e){!t||e>10?o.debug("Opting out, no graph "):(o.debug("Opting in, graph "),t.nodes().forEach((function(e){t.children(e).length>0&&(o.warn("Cluster identified",e," Replacement id in edges: ",Br(e,t)),Ar[e]=Dr(e,t),Sr[e]={id:Br(e,t),clusterData:t.node(e)})})),t.nodes().forEach((function(e){var n=t.children(e),r=t.edges();n.length>0?(o.debug("Cluster identified",e,Ar),r.forEach((function(t){t.v!==e&&t.w!==e&&Or(t.v,e)^Or(t.w,e)&&(o.warn("Edge: ",t," leaves cluster ",e),o.warn("Decendants of XXX ",e,": ",Ar[e]),Sr[e].externalConnections=!0)}))):o.debug("Not a cluster ",e,Ar)})),t.edges().forEach((function(e){var n=t.edge(e);o.warn("Edge "+e.v+" -> "+e.w+": "+JSON.stringify(e)),o.warn("Edge "+e.v+" -> "+e.w+": "+JSON.stringify(t.edge(e)));var r=e.v,i=e.w;if(o.warn("Fix XXX",Sr,"ids:",e.v,e.w,"Translateing: ",Sr[e.v]," --- ",Sr[e.w]),Sr[e.v]&&Sr[e.w]&&Sr[e.v]===Sr[e.w]){o.warn("Fixing and trixing link to self - removing XXX",e.v,e.w,e.name),o.warn("Fixing and trixing - removing XXX",e.v,e.w,e.name),r=Lr(e.v),i=Lr(e.w),t.removeEdge(e.v,e.w,e.name);var a=e.w+"---"+e.v;t.setNode(a,{domId:a,id:a,labelStyle:"",labelText:n.label,padding:0,shape:"labelRect",style:""});var s=JSON.parse(JSON.stringify(n)),c=JSON.parse(JSON.stringify(n));s.label="",s.arrowTypeEnd="none",c.label="",s.fromCluster=e.v,c.toCluster=e.v,t.setEdge(r,a,s,e.name+"-cyclic-special"),t.setEdge(a,i,c,e.name+"-cyclic-special")}else(Sr[e.v]||Sr[e.w])&&(o.warn("Fixing and trixing - removing XXX",e.v,e.w,e.name),r=Lr(e.v),i=Lr(e.w),t.removeEdge(e.v,e.w,e.name),r!==e.v&&(n.fromCluster=e.v),i!==e.w&&(n.toCluster=e.w),o.warn("Fix Replacing with XXX",r,i,e.name),t.setEdge(r,i,n,e.name))})),o.warn("Adjusted Graph",lr().json.write(t)),Fr(t,0),o.trace(Sr))},Fr=function t(e,n){if(o.warn("extractor - ",n,lr().json.write(e),e.children("D")),n>10)o.error("Bailing out");else{for(var r=e.nodes(),i=!1,a=0;a<r.length;a++){var s=r[a],c=e.children(s);i=i||c.length>0}if(i){o.debug("Nodes = ",r,n);for(var l=0;l<r.length;l++){var u=r[l];if(o.debug("Extracting node",u,Sr,Sr[u]&&!Sr[u].externalConnections,!e.parent(u),e.node(u),e.children("D")," Depth ",n),Sr[u])if(!Sr[u].externalConnections&&e.children(u)&&e.children(u).length>0){o.warn("Cluster without external connections, without a parent and with children",u,n);var h="TB"===e.graph().rankdir?"LR":"TB";Sr[u]&&Sr[u].clusterData&&Sr[u].clusterData.dir&&(h=Sr[u].clusterData.dir,o.warn("Fixing dir",Sr[u].clusterData.dir,h));var d=new(lr().Graph)({multigraph:!0,compound:!0}).setGraph({rankdir:h,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel((function(){return{}}));o.warn("Old graph before copy",lr().json.write(e)),Nr(u,e,d,u),e.setNode(u,{clusterNode:!0,id:u,clusterData:Sr[u].clusterData,labelText:Sr[u].labelText,graph:d}),o.warn("New graph after copy node: (",u,")",lr().json.write(d)),o.debug("Old graph after copy",lr().json.write(e))}else o.warn("Cluster ** ",u," **not meeting the criteria !externalConnections:",!Sr[u].externalConnections," no parent: ",!e.parent(u)," children ",e.children(u)&&e.children(u).length>0,e.children("D"),n),o.debug(Sr);else o.debug("Not a cluster",u,n)}r=e.nodes(),o.warn("New list of nodes",r);for(var f=0;f<r.length;f++){var p=r[f],g=e.node(p);o.warn(" Now next level",p,g),g.clusterNode&&t(g.graph,n+1)}}else o.debug("Done, no node has children",e.nodes())}},Rr=function t(e,n){if(0===n.length)return[];var r=Object.assign(n);return n.forEach((function(n){var i=e.children(n),a=t(e,i);r=r.concat(a)})),r},Pr=function(t){return Rr(t,t.children())},jr=n(3841);function zr(t,e){return t*e>0}const Yr=function(t,e,n,r){var i,a,o,s,c,l,u,h,d,f,p,g,y;if(i=e.y-t.y,o=t.x-e.x,c=e.x*t.y-t.x*e.y,d=i*n.x+o*n.y+c,f=i*r.x+o*r.y+c,!(0!==d&&0!==f&&zr(d,f)||(a=r.y-n.y,s=n.x-r.x,l=r.x*n.y-n.x*r.y,u=a*t.x+s*t.y+l,h=a*e.x+s*e.y+l,0!==u&&0!==h&&zr(u,h)||0==(p=i*s-a*o))))return g=Math.abs(p/2),{x:(y=o*l-s*c)<0?(y-g)/p:(y+g)/p,y:(y=a*c-i*l)<0?(y-g)/p:(y+g)/p}},Ur=function(t,e){var n,r,i=t.x,a=t.y,o=e.x-i,s=e.y-a,c=t.width/2,l=t.height/2;return Math.abs(s)*c>Math.abs(o)*l?(s<0&&(l=-l),n=0===s?0:l*o/s,r=l):(o<0&&(c=-c),n=c,r=0===o?0:c*s/o),{x:i+n,y:a+r}},$r=(n.n(jr)(),function(t,e,n){return function(t,e,n,r){var i=t.x,a=t.y,o=i-r.x,s=a-r.y,c=Math.sqrt(e*e*s*s+n*n*o*o),l=Math.abs(e*n*o/c);r.x<i&&(l=-l);var u=Math.abs(e*n*s/c);return r.y<a&&(u=-u),{x:i+l,y:a+u}}(t,e,e,n)}),Wr=function(t,e,n){var r=t.x,i=t.y,a=[],o=Number.POSITIVE_INFINITY,s=Number.POSITIVE_INFINITY;"function"==typeof e.forEach?e.forEach((function(t){o=Math.min(o,t.x),s=Math.min(s,t.y)})):(o=Math.min(o,e.x),s=Math.min(s,e.y));for(var c=r-t.width/2-o,l=i-t.height/2-s,u=0;u<e.length;u++){var h=e[u],d=e[u<e.length-1?u+1:0],f=Yr(t,n,{x:c+h.x,y:l+h.y},{x:c+d.x,y:l+d.y});f&&a.push(f)}return a.length?(a.length>1&&a.sort((function(t,e){var r=t.x-n.x,i=t.y-n.y,a=Math.sqrt(r*r+i*i),o=e.x-n.x,s=e.y-n.y,c=Math.sqrt(o*o+s*s);return a<c?-1:a===c?0:1})),a[0]):t},qr=Ur;function Hr(t){return Hr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Hr(t)}function Vr(t,e,n,r){var i=[],a=function(t){i.push(t),i.push(0)},s=function(t){i.push(0),i.push(t)};e.includes("t")?(o.debug("add top border"),a(n)):s(n),e.includes("r")?(o.debug("add right border"),a(r)):s(r),e.includes("b")?(o.debug("add bottom border"),a(n)):s(n),e.includes("l")?(o.debug("add left border"),a(r)):s(r),t.attr("stroke-dasharray",i.join(" "))}var Gr=function(t,e,n){var r=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),i=70,a=10;"LR"===n&&(i=10,a=70);var o=r.append("rect").attr("x",-1*i/2).attr("y",-1*a/2).attr("width",i).attr("height",a).attr("class","fork-join");return Tr(e,o),e.height=e.height+e.padding/2,e.width=e.width+e.padding/2,e.intersect=function(t){return qr(e,t)},r},Xr={question:function(t,e){var n=Er(t,e,void 0,!0),r=n.shapeSvg,i=n.bbox,a=i.width+e.padding+(i.height+e.padding),s=[{x:a/2,y:0},{x:a,y:-a/2},{x:a/2,y:-a},{x:0,y:-a/2}];o.info("Question main (Circle)");var c=Cr(r,a,a,s);return c.attr("style",e.style),Tr(e,c),e.intersect=function(t){return o.warn("Intersect called"),Wr(e,s,t)},r},rect:function(t,e){var n=Er(t,e,"node "+e.classes,!0),r=n.shapeSvg,i=n.bbox,a=n.halfPadding;o.trace("Classes = ",e.classes);var s=r.insert("rect",":first-child"),c=i.width+e.padding,l=i.height+e.padding;if(s.attr("class","basic label-container").attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("x",-i.width/2-a).attr("y",-i.height/2-a).attr("width",c).attr("height",l),e.props){var u=new Set(Object.keys(e.props));e.props.borders&&(Vr(s,e.props.borders,c,l),u.delete("borders")),u.forEach((function(t){o.warn("Unknown node property ".concat(t))}))}return Tr(e,s),e.intersect=function(t){return qr(e,t)},r},labelRect:function(t,e){var n=Er(t,e,"label",!0),r=n.shapeSvg;n.bbox,n.halfPadding,o.trace("Classes = ",e.classes);var i=r.insert("rect",":first-child");if(i.attr("width",0).attr("height",0),r.attr("class","label edgeLabel"),e.props){var a=new Set(Object.keys(e.props));e.props.borders&&(Vr(i,e.props.borders,0,0),a.delete("borders")),a.forEach((function(t){o.warn("Unknown node property ".concat(t))}))}return Tr(e,i),e.intersect=function(t){return qr(e,t)},r},rectWithTitle:function(t,e){var n;n=e.classes?"node "+e.classes:"node default";var r,i=t.insert("g").attr("class",n).attr("id",e.domId||e.id),a=i.insert("rect",":first-child"),s=i.insert("line"),c=i.insert("g").attr("class","label"),u=e.labelText.flat?e.labelText.flat():e.labelText;r="object"===Hr(u)?u[0]:u,o.info("Label text abc79",r,u,"object"===Hr(u));var h=c.node().appendChild(wr(r,e.labelStyle,!0,!0)),d={width:0,height:0};if(ie(qt().flowchart.htmlLabels)){var f=h.children[0],p=(0,l.select)(h);d=f.getBoundingClientRect(),p.attr("width",d.width),p.attr("height",d.height)}o.info("Text 2",u);var g=u.slice(1,u.length),y=h.getBBox(),m=c.node().appendChild(wr(g.join?g.join("<br/>"):g,e.labelStyle,!0,!0));if(ie(qt().flowchart.htmlLabels)){var b=m.children[0],v=(0,l.select)(m);d=b.getBoundingClientRect(),v.attr("width",d.width),v.attr("height",d.height)}var _=e.padding/2;return(0,l.select)(m).attr("transform","translate( "+(d.width>y.width?0:(y.width-d.width)/2)+", "+(y.height+_+5)+")"),(0,l.select)(h).attr("transform","translate( "+(d.width<y.width?0:-(y.width-d.width)/2)+", 0)"),d=c.node().getBBox(),c.attr("transform","translate("+-d.width/2+", "+(-d.height/2-_+3)+")"),a.attr("class","outer title-state").attr("x",-d.width/2-_).attr("y",-d.height/2-_).attr("width",d.width+e.padding).attr("height",d.height+e.padding),s.attr("class","divider").attr("x1",-d.width/2-_).attr("x2",d.width/2+_).attr("y1",-d.height/2-_+y.height+_).attr("y2",-d.height/2-_+y.height+_),Tr(e,a),e.intersect=function(t){return qr(e,t)},i},choice:function(t,e){var n=t.insert("g").attr("class","node default").attr("id",e.domId||e.id);return n.insert("polygon",":first-child").attr("points",[{x:0,y:14},{x:14,y:0},{x:0,y:-14},{x:-14,y:0}].map((function(t){return t.x+","+t.y})).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),e.width=28,e.height=28,e.intersect=function(t){return $r(e,14,t)},n},circle:function(t,e){var n=Er(t,e,void 0,!0),r=n.shapeSvg,i=n.bbox,a=n.halfPadding,s=r.insert("circle",":first-child");return s.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",i.width/2+a).attr("width",i.width+e.padding).attr("height",i.height+e.padding),o.info("Circle main"),Tr(e,s),e.intersect=function(t){return o.info("Circle intersect",e,i.width/2+a,t),$r(e,i.width/2+a,t)},r},doublecircle:function(t,e){var n=Er(t,e,void 0,!0),r=n.shapeSvg,i=n.bbox,a=n.halfPadding,s=r.insert("g",":first-child"),c=s.insert("circle"),l=s.insert("circle");return c.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",i.width/2+a+5).attr("width",i.width+e.padding+10).attr("height",i.height+e.padding+10),l.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",i.width/2+a).attr("width",i.width+e.padding).attr("height",i.height+e.padding),o.info("DoubleCircle main"),Tr(e,c),e.intersect=function(t){return o.info("DoubleCircle intersect",e,i.width/2+a+5,t),$r(e,i.width/2+a+5,t)},r},stadium:function(t,e){var n=Er(t,e,void 0,!0),r=n.shapeSvg,i=n.bbox,a=i.height+e.padding,o=i.width+a/4+e.padding,s=r.insert("rect",":first-child").attr("style",e.style).attr("rx",a/2).attr("ry",a/2).attr("x",-o/2).attr("y",-a/2).attr("width",o).attr("height",a);return Tr(e,s),e.intersect=function(t){return qr(e,t)},r},hexagon:function(t,e){var n=Er(t,e,void 0,!0),r=n.shapeSvg,i=n.bbox,a=i.height+e.padding,o=a/4,s=i.width+2*o+e.padding,c=[{x:o,y:0},{x:s-o,y:0},{x:s,y:-a/2},{x:s-o,y:-a},{x:o,y:-a},{x:0,y:-a/2}],l=Cr(r,s,a,c);return l.attr("style",e.style),Tr(e,l),e.intersect=function(t){return Wr(e,c,t)},r},rect_left_inv_arrow:function(t,e){var n=Er(t,e,void 0,!0),r=n.shapeSvg,i=n.bbox,a=i.width+e.padding,o=i.height+e.padding,s=[{x:-o/2,y:0},{x:a,y:0},{x:a,y:-o},{x:-o/2,y:-o},{x:0,y:-o/2}];return Cr(r,a,o,s).attr("style",e.style),e.width=a+o,e.height=o,e.intersect=function(t){return Wr(e,s,t)},r},lean_right:function(t,e){var n=Er(t,e,void 0,!0),r=n.shapeSvg,i=n.bbox,a=i.width+e.padding,o=i.height+e.padding,s=[{x:-2*o/6,y:0},{x:a-o/6,y:0},{x:a+2*o/6,y:-o},{x:o/6,y:-o}],c=Cr(r,a,o,s);return c.attr("style",e.style),Tr(e,c),e.intersect=function(t){return Wr(e,s,t)},r},lean_left:function(t,e){var n=Er(t,e,void 0,!0),r=n.shapeSvg,i=n.bbox,a=i.width+e.padding,o=i.height+e.padding,s=[{x:2*o/6,y:0},{x:a+o/6,y:0},{x:a-2*o/6,y:-o},{x:-o/6,y:-o}],c=Cr(r,a,o,s);return c.attr("style",e.style),Tr(e,c),e.intersect=function(t){return Wr(e,s,t)},r},trapezoid:function(t,e){var n=Er(t,e,void 0,!0),r=n.shapeSvg,i=n.bbox,a=i.width+e.padding,o=i.height+e.padding,s=[{x:-2*o/6,y:0},{x:a+2*o/6,y:0},{x:a-o/6,y:-o},{x:o/6,y:-o}],c=Cr(r,a,o,s);return c.attr("style",e.style),Tr(e,c),e.intersect=function(t){return Wr(e,s,t)},r},inv_trapezoid:function(t,e){var n=Er(t,e,void 0,!0),r=n.shapeSvg,i=n.bbox,a=i.width+e.padding,o=i.height+e.padding,s=[{x:o/6,y:0},{x:a-o/6,y:0},{x:a+2*o/6,y:-o},{x:-2*o/6,y:-o}],c=Cr(r,a,o,s);return c.attr("style",e.style),Tr(e,c),e.intersect=function(t){return Wr(e,s,t)},r},rect_right_inv_arrow:function(t,e){var n=Er(t,e,void 0,!0),r=n.shapeSvg,i=n.bbox,a=i.width+e.padding,o=i.height+e.padding,s=[{x:0,y:0},{x:a+o/2,y:0},{x:a,y:-o/2},{x:a+o/2,y:-o},{x:0,y:-o}],c=Cr(r,a,o,s);return c.attr("style",e.style),Tr(e,c),e.intersect=function(t){return Wr(e,s,t)},r},cylinder:function(t,e){var n=Er(t,e,void 0,!0),r=n.shapeSvg,i=n.bbox,a=i.width+e.padding,o=a/2,s=o/(2.5+a/50),c=i.height+s+e.padding,l="M 0,"+s+" a "+o+","+s+" 0,0,0 "+a+" 0 a "+o+","+s+" 0,0,0 "+-a+" 0 l 0,"+c+" a "+o+","+s+" 0,0,0 "+a+" 0 l 0,"+-c,u=r.attr("label-offset-y",s).insert("path",":first-child").attr("style",e.style).attr("d",l).attr("transform","translate("+-a/2+","+-(c/2+s)+")");return Tr(e,u),e.intersect=function(t){var n=qr(e,t),r=n.x-e.x;if(0!=o&&(Math.abs(r)<e.width/2||Math.abs(r)==e.width/2&&Math.abs(n.y-e.y)>e.height/2-s)){var i=s*s*(1-r*r/(o*o));0!=i&&(i=Math.sqrt(i)),i=s-i,t.y-e.y>0&&(i=-i),n.y+=i}return n},r},start:function(t,e){var n=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),r=n.insert("circle",":first-child");return r.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),Tr(e,r),e.intersect=function(t){return $r(e,7,t)},n},end:function(t,e){var n=t.insert("g").attr("class","node default").attr("id",e.domId||e.id),r=n.insert("circle",":first-child"),i=n.insert("circle",":first-child");return i.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),r.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),Tr(e,i),e.intersect=function(t){return $r(e,7,t)},n},note:function(t,e){var n=Er(t,e,"node "+e.classes,!0),r=n.shapeSvg,i=n.bbox,a=n.halfPadding;o.info("Classes = ",e.classes);var s=r.insert("rect",":first-child");return s.attr("rx",e.rx).attr("ry",e.ry).attr("x",-i.width/2-a).attr("y",-i.height/2-a).attr("width",i.width+e.padding).attr("height",i.height+e.padding),Tr(e,s),e.intersect=function(t){return qr(e,t)},r},subroutine:function(t,e){var n=Er(t,e,void 0,!0),r=n.shapeSvg,i=n.bbox,a=i.width+e.padding,o=i.height+e.padding,s=[{x:0,y:0},{x:a,y:0},{x:a,y:-o},{x:0,y:-o},{x:0,y:0},{x:-8,y:0},{x:a+8,y:0},{x:a+8,y:-o},{x:-8,y:-o},{x:-8,y:0}],c=Cr(r,a,o,s);return c.attr("style",e.style),Tr(e,c),e.intersect=function(t){return Wr(e,s,t)},r},fork:Gr,join:Gr,class_box:function(t,e){var n,r=e.padding/2;n=e.classes?"node "+e.classes:"node default";var i=t.insert("g").attr("class",n).attr("id",e.domId||e.id),a=i.insert("rect",":first-child"),o=i.insert("line"),s=i.insert("line"),c=0,u=4,h=i.insert("g").attr("class","label"),d=0,f=e.classData.annotations&&e.classData.annotations[0],p=e.classData.annotations[0]?"\xab"+e.classData.annotations[0]+"\xbb":"",g=h.node().appendChild(wr(p,e.labelStyle,!0,!0)),y=g.getBBox();if(ie(qt().flowchart.htmlLabels)){var m=g.children[0],b=(0,l.select)(g);y=m.getBoundingClientRect(),b.attr("width",y.width),b.attr("height",y.height)}e.classData.annotations[0]&&(u+=y.height+4,c+=y.width);var v=e.classData.id;void 0!==e.classData.type&&""!==e.classData.type&&(qt().flowchart.htmlLabels?v+="<"+e.classData.type+">":v+="<"+e.classData.type+">");var _=h.node().appendChild(wr(v,e.labelStyle,!0,!0));(0,l.select)(_).attr("class","classTitle");var x=_.getBBox();if(ie(qt().flowchart.htmlLabels)){var k=_.children[0],w=(0,l.select)(_);x=k.getBoundingClientRect(),w.attr("width",x.width),w.attr("height",x.height)}u+=x.height+4,x.width>c&&(c=x.width);var E=[];e.classData.members.forEach((function(t){var n=hr(t),r=n.displayText;qt().flowchart.htmlLabels&&(r=r.replace(/</g,"<").replace(/>/g,">"));var i=h.node().appendChild(wr(r,n.cssStyle?n.cssStyle:e.labelStyle,!0,!0)),a=i.getBBox();if(ie(qt().flowchart.htmlLabels)){var o=i.children[0],s=(0,l.select)(i);a=o.getBoundingClientRect(),s.attr("width",a.width),s.attr("height",a.height)}a.width>c&&(c=a.width),u+=a.height+4,E.push(i)})),u+=8;var T=[];if(e.classData.methods.forEach((function(t){var n=hr(t),r=n.displayText;qt().flowchart.htmlLabels&&(r=r.replace(/</g,"<").replace(/>/g,">"));var i=h.node().appendChild(wr(r,n.cssStyle?n.cssStyle:e.labelStyle,!0,!0)),a=i.getBBox();if(ie(qt().flowchart.htmlLabels)){var o=i.children[0],s=(0,l.select)(i);a=o.getBoundingClientRect(),s.attr("width",a.width),s.attr("height",a.height)}a.width>c&&(c=a.width),u+=a.height+4,T.push(i)})),u+=8,f){var C=(c-y.width)/2;(0,l.select)(g).attr("transform","translate( "+(-1*c/2+C)+", "+-1*u/2+")"),d=y.height+4}var S=(c-x.width)/2;return(0,l.select)(_).attr("transform","translate( "+(-1*c/2+S)+", "+(-1*u/2+d)+")"),d+=x.height+4,o.attr("class","divider").attr("x1",-c/2-r).attr("x2",c/2+r).attr("y1",-u/2-r+8+d).attr("y2",-u/2-r+8+d),d+=8,E.forEach((function(t){(0,l.select)(t).attr("transform","translate( "+-c/2+", "+(-1*u/2+d+4)+")"),d+=x.height+4})),d+=8,s.attr("class","divider").attr("x1",-c/2-r).attr("x2",c/2+r).attr("y1",-u/2-r+8+d).attr("y2",-u/2-r+8+d),d+=8,T.forEach((function(t){(0,l.select)(t).attr("transform","translate( "+-c/2+", "+(-1*u/2+d)+")"),d+=x.height+4})),a.attr("class","outer title-state").attr("x",-c/2-r).attr("y",-u/2-r).attr("width",c+e.padding).attr("height",u+e.padding),Tr(e,a),e.intersect=function(t){return qr(e,t)},i}},Zr={},Qr=function(t){var e=Zr[t.id];o.trace("Transforming node",t.diff,t,"translate("+(t.x-t.width/2-5)+", "+t.width/2+")");var n=t.diff||0;return t.clusterNode?e.attr("transform","translate("+(t.x+n-t.width/2)+", "+(t.y-t.height/2-8)+")"):e.attr("transform","translate("+t.x+", "+t.y+")"),n},Kr={rect:function(t,e){o.trace("Creating subgraph rect for ",e.id,e);var n=t.insert("g").attr("class","cluster"+(e.class?" "+e.class:"")).attr("id",e.id),r=n.insert("rect",":first-child"),i=n.insert("g").attr("class","cluster-label"),a=i.node().appendChild(wr(e.labelText,e.labelStyle,void 0,!0)),s=a.getBBox();if(ie(qt().flowchart.htmlLabels)){var c=a.children[0],u=(0,l.select)(a);s=c.getBoundingClientRect(),u.attr("width",s.width),u.attr("height",s.height)}var h=0*e.padding,d=h/2,f=e.width<=s.width+h?s.width+h:e.width;e.width<=s.width+h?e.diff=(s.width-e.width)/2-e.padding/2:e.diff=-e.padding/2,o.trace("Data ",e,JSON.stringify(e)),r.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("x",e.x-f/2).attr("y",e.y-e.height/2-d).attr("width",f).attr("height",e.height+h),i.attr("transform","translate("+(e.x-s.width/2)+", "+(e.y-e.height/2+e.padding/3)+")");var p=r.node().getBBox();return e.width=p.width,e.height=p.height,e.intersect=function(t){return Ur(e,t)},n},roundedWithTitle:function(t,e){var n=t.insert("g").attr("class",e.classes).attr("id",e.id),r=n.insert("rect",":first-child"),i=n.insert("g").attr("class","cluster-label"),a=n.append("rect"),o=i.node().appendChild(wr(e.labelText,e.labelStyle,void 0,!0)),s=o.getBBox();if(ie(qt().flowchart.htmlLabels)){var c=o.children[0],u=(0,l.select)(o);s=c.getBoundingClientRect(),u.attr("width",s.width),u.attr("height",s.height)}s=o.getBBox();var h=0*e.padding,d=h/2,f=e.width<=s.width+e.padding?s.width+e.padding:e.width;e.width<=s.width+e.padding?e.diff=(s.width+0*e.padding-e.width)/2:e.diff=-e.padding/2,r.attr("class","outer").attr("x",e.x-f/2-d).attr("y",e.y-e.height/2-d).attr("width",f+h).attr("height",e.height+h),a.attr("class","inner").attr("x",e.x-f/2-d).attr("y",e.y-e.height/2-d+s.height-1).attr("width",f+h).attr("height",e.height+h-s.height-3),i.attr("transform","translate("+(e.x-s.width/2)+", "+(e.y-e.height/2-e.padding/3+(ie(qt().flowchart.htmlLabels)?5:3))+")");var p=r.node().getBBox();return e.height=p.height,e.intersect=function(t){return Ur(e,t)},n},noteGroup:function(t,e){var n=t.insert("g").attr("class","note-cluster").attr("id",e.id),r=n.insert("rect",":first-child"),i=0*e.padding,a=i/2;r.attr("rx",e.rx).attr("ry",e.ry).attr("x",e.x-e.width/2-a).attr("y",e.y-e.height/2-a).attr("width",e.width+i).attr("height",e.height+i).attr("fill","none");var o=r.node().getBBox();return e.width=o.width,e.height=o.height,e.intersect=function(t){return Ur(e,t)},n},divider:function(t,e){var n=t.insert("g").attr("class",e.classes).attr("id",e.id),r=n.insert("rect",":first-child"),i=0*e.padding,a=i/2;r.attr("class","divider").attr("x",e.x-e.width/2-a).attr("y",e.y-e.height/2).attr("width",e.width+i).attr("height",e.height+i);var o=r.node().getBBox();return e.width=o.width,e.height=o.height,e.diff=-e.padding/2,e.intersect=function(t){return Ur(e,t)},n}},Jr={},ti={},ei={};function ni(t,e){qt().flowchart.htmlLabels&&t&&(t.style.width=9*e.length+"px",t.style.height="12px")}var ri=function(t,e){o.warn("abc88 cutPathAtIntersect",t,e);var n=[],r=t[0],i=!1;return t.forEach((function(t){if(o.info("abc88 checking point",t,e),function(t,e){var n=t.x,r=t.y,i=Math.abs(e.x-n),a=Math.abs(e.y-r),o=t.width/2,s=t.height/2;return i>=o||a>=s}(e,t)||i)o.warn("abc88 outside",t,r),r=t,i||n.push(t);else{var a=function(t,e,n){o.warn("intersection calc abc89:\n outsidePoint: ".concat(JSON.stringify(e),"\n insidePoint : ").concat(JSON.stringify(n),"\n node : x:").concat(t.x," y:").concat(t.y," w:").concat(t.width," h:").concat(t.height));var r=t.x,i=t.y,a=Math.abs(r-n.x),s=t.width/2,c=n.x<e.x?s-a:s+a,l=t.height/2,u=Math.abs(e.y-n.y),h=Math.abs(e.x-n.x);if(Math.abs(i-e.y)*s>Math.abs(r-e.x)*l){var d=n.y<e.y?e.y-l-i:i-l-e.y;c=h*d/u;var f={x:n.x<e.x?n.x+c:n.x-h+c,y:n.y<e.y?n.y+u-d:n.y-u+d};return 0===c&&(f.x=e.x,f.y=e.y),0===h&&(f.x=e.x),0===u&&(f.y=e.y),o.warn("abc89 topp/bott calc, Q ".concat(u,", q ").concat(d,", R ").concat(h,", r ").concat(c),f),f}var p=u*(c=n.x<e.x?e.x-s-r:r-s-e.x)/h,g=n.x<e.x?n.x+h-c:n.x-h+c,y=n.y<e.y?n.y+p:n.y-p;return o.warn("sides calc abc89, Q ".concat(u,", q ").concat(p,", R ").concat(h,", r ").concat(c),{_x:g,_y:y}),0===c&&(g=e.x,y=e.y),0===h&&(g=e.x),0===u&&(y=e.y),{x:g,y:y}}(e,r,t);o.warn("abc88 inside",t,r,a),o.warn("abc88 intersection",a);var s=!1;n.forEach((function(t){s=s||t.x===a.x&&t.y===a.y})),n.find((function(t){return t.x===a.x&&t.y===a.y}))?o.warn("abc88 no intersect",a,n):n.push(a),i=!0}})),o.warn("abc88 returning points",n),n},ii=function t(e,n,r,i){o.info("Graph in recursive render: XXX",lr().json.write(n),i);var a=n.graph().rankdir;o.trace("Dir in recursive render - dir:",a);var s=e.insert("g").attr("class","root");n.nodes()?o.info("Recursive render XXX",n.nodes()):o.info("No nodes found for",n),n.edges().length>0&&o.trace("Recursive edges",n.edge(n.edges()[0]));var c=s.insert("g").attr("class","clusters"),u=s.insert("g").attr("class","edgePaths"),h=s.insert("g").attr("class","edgeLabels"),d=s.insert("g").attr("class","nodes");n.nodes().forEach((function(e){var s=n.node(e);if(void 0!==i){var c=JSON.parse(JSON.stringify(i.clusterData));o.info("Setting data for cluster XXX (",e,") ",c,i),n.setNode(i.id,c),n.parent(e)||(o.trace("Setting parent",e,i.id),n.setParent(e,i.id,c))}if(o.info("(Insert) Node XXX"+e+": "+JSON.stringify(n.node(e))),s&&s.clusterNode){o.info("Cluster identified",e,s.width,n.node(e));var l=t(d,s.graph,r,n.node(e)),u=l.elem;Tr(s,u),s.diff=l.diff||0,o.info("Node bounds (abc123)",e,s,s.width,s.x,s.y),function(t,e){Zr[e.id]=t}(u,s),o.warn("Recursive render complete ",u,s)}else n.children(e).length>0?(o.info("Cluster - the non recursive path XXX",e,s.id,s,n),o.info(Br(s.id,n)),Sr[s.id]={id:Br(s.id,n),node:s}):(o.info("Node - the non recursive path",e,s.id,s),function(t,e,n){var r,i,a;e.link?("sandbox"===qt().securityLevel?a="_top":e.linkTarget&&(a=e.linkTarget||"_blank"),r=t.insert("svg:a").attr("xlink:href",e.link).attr("target",a),i=Xr[e.shape](r,e,n)):r=i=Xr[e.shape](t,e,n),e.tooltip&&i.attr("title",e.tooltip),e.class&&i.attr("class","node default "+e.class),Zr[e.id]=r,e.haveCallback&&Zr[e.id].attr("class",Zr[e.id].attr("class")+" clickable")}(d,n.node(e),a))})),n.edges().forEach((function(t){var e=n.edge(t.v,t.w,t.name);o.info("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(t)),o.info("Edge "+t.v+" -> "+t.w+": ",t," ",JSON.stringify(n.edge(t))),o.info("Fix",Sr,"ids:",t.v,t.w,"Translateing: ",Sr[t.v],Sr[t.w]),function(t,e){var n=wr(e.label,e.labelStyle),r=t.insert("g").attr("class","edgeLabel"),i=r.insert("g").attr("class","label");i.node().appendChild(n);var a,o=n.getBBox();if(ie(qt().flowchart.htmlLabels)){var s=n.children[0],c=(0,l.select)(n);o=s.getBoundingClientRect(),c.attr("width",o.width),c.attr("height",o.height)}if(i.attr("transform","translate("+-o.width/2+", "+-o.height/2+")"),ti[e.id]=r,e.width=o.width,e.height=o.height,e.startLabelLeft){var u=wr(e.startLabelLeft,e.labelStyle),h=t.insert("g").attr("class","edgeTerminals"),d=h.insert("g").attr("class","inner");a=d.node().appendChild(u);var f=u.getBBox();d.attr("transform","translate("+-f.width/2+", "+-f.height/2+")"),ei[e.id]||(ei[e.id]={}),ei[e.id].startLeft=h,ni(a,e.startLabelLeft)}if(e.startLabelRight){var p=wr(e.startLabelRight,e.labelStyle),g=t.insert("g").attr("class","edgeTerminals"),y=g.insert("g").attr("class","inner");a=g.node().appendChild(p),y.node().appendChild(p);var m=p.getBBox();y.attr("transform","translate("+-m.width/2+", "+-m.height/2+")"),ei[e.id]||(ei[e.id]={}),ei[e.id].startRight=g,ni(a,e.startLabelRight)}if(e.endLabelLeft){var b=wr(e.endLabelLeft,e.labelStyle),v=t.insert("g").attr("class","edgeTerminals"),_=v.insert("g").attr("class","inner");a=_.node().appendChild(b);var x=b.getBBox();_.attr("transform","translate("+-x.width/2+", "+-x.height/2+")"),v.node().appendChild(b),ei[e.id]||(ei[e.id]={}),ei[e.id].endLeft=v,ni(a,e.endLabelLeft)}if(e.endLabelRight){var k=wr(e.endLabelRight,e.labelStyle),w=t.insert("g").attr("class","edgeTerminals"),E=w.insert("g").attr("class","inner");a=E.node().appendChild(k);var T=k.getBBox();E.attr("transform","translate("+-T.width/2+", "+-T.height/2+")"),w.node().appendChild(k),ei[e.id]||(ei[e.id]={}),ei[e.id].endRight=w,ni(a,e.endLabelRight)}}(h,e)})),n.edges().forEach((function(t){o.info("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(t))})),o.info("#############################################"),o.info("### Layout ###"),o.info("#############################################"),o.info(n),sr().layout(n),o.info("Graph after layout:",lr().json.write(n));var f=0;return Pr(n).forEach((function(t){var e=n.node(t);o.info("Position "+t+": "+JSON.stringify(n.node(t))),o.info("Position "+t+": ("+e.x,","+e.y,") width: ",e.width," height: ",e.height),e&&e.clusterNode?Qr(e):n.children(t).length>0?(function(t,e){o.trace("Inserting cluster");var n=e.shape||"rect";Jr[e.id]=Kr[n](t,e)}(c,e),Sr[e.id].node=e):Qr(e)})),n.edges().forEach((function(t){var e=n.edge(t);o.info("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(e),e);var i=function(t,e,n,r,i,a){var s=n.points,c=!1,u=a.node(e.v),h=a.node(e.w);o.info("abc88 InsertEdge: ",n),h.intersect&&u.intersect&&((s=s.slice(1,n.points.length-1)).unshift(u.intersect(s[0])),o.info("Last point",s[s.length-1],h,h.intersect(s[s.length-1])),s.push(h.intersect(s[s.length-1]))),n.toCluster&&(o.info("to cluster abc88",r[n.toCluster]),s=ri(n.points,r[n.toCluster].node),c=!0),n.fromCluster&&(o.info("from cluster abc88",r[n.fromCluster]),s=ri(s.reverse(),r[n.fromCluster].node).reverse(),c=!0);var d,f=s.filter((function(t){return!Number.isNaN(t.y)}));d=("graph"===i||"flowchart"===i)&&n.curve||l.curveBasis;var p,g=(0,l.line)().x((function(t){return t.x})).y((function(t){return t.y})).curve(d);switch(n.thickness){case"normal":p="edge-thickness-normal";break;case"thick":p="edge-thickness-thick";break;default:p=""}switch(n.pattern){case"solid":p+=" edge-pattern-solid";break;case"dotted":p+=" edge-pattern-dotted";break;case"dashed":p+=" edge-pattern-dashed"}var y=t.append("path").attr("d",g(f)).attr("id",n.id).attr("class"," "+p+(n.classes?" "+n.classes:"")).attr("style",n.style),m="";switch(qt().state.arrowMarkerAbsolute&&(m=(m=(m=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search).replace(/\(/g,"\\(")).replace(/\)/g,"\\)")),o.info("arrowTypeStart",n.arrowTypeStart),o.info("arrowTypeEnd",n.arrowTypeEnd),n.arrowTypeStart){case"arrow_cross":y.attr("marker-start","url("+m+"#"+i+"-crossStart)");break;case"arrow_point":y.attr("marker-start","url("+m+"#"+i+"-pointStart)");break;case"arrow_barb":y.attr("marker-start","url("+m+"#"+i+"-barbStart)");break;case"arrow_circle":y.attr("marker-start","url("+m+"#"+i+"-circleStart)");break;case"aggregation":y.attr("marker-start","url("+m+"#"+i+"-aggregationStart)");break;case"extension":y.attr("marker-start","url("+m+"#"+i+"-extensionStart)");break;case"composition":y.attr("marker-start","url("+m+"#"+i+"-compositionStart)");break;case"dependency":y.attr("marker-start","url("+m+"#"+i+"-dependencyStart)");break;case"lollipop":y.attr("marker-start","url("+m+"#"+i+"-lollipopStart)")}switch(n.arrowTypeEnd){case"arrow_cross":y.attr("marker-end","url("+m+"#"+i+"-crossEnd)");break;case"arrow_point":y.attr("marker-end","url("+m+"#"+i+"-pointEnd)");break;case"arrow_barb":y.attr("marker-end","url("+m+"#"+i+"-barbEnd)");break;case"arrow_circle":y.attr("marker-end","url("+m+"#"+i+"-circleEnd)");break;case"aggregation":y.attr("marker-end","url("+m+"#"+i+"-aggregationEnd)");break;case"extension":y.attr("marker-end","url("+m+"#"+i+"-extensionEnd)");break;case"composition":y.attr("marker-end","url("+m+"#"+i+"-compositionEnd)");break;case"dependency":y.attr("marker-end","url("+m+"#"+i+"-dependencyEnd)");break;case"lollipop":y.attr("marker-end","url("+m+"#"+i+"-lollipopEnd)")}var b={};return c&&(b.updatedPath=s),b.originalPath=n.points,b}(u,t,e,Sr,r,n);!function(t,e){o.info("Moving label abc78 ",t.id,t.label,ti[t.id]);var n=e.updatedPath?e.updatedPath:e.originalPath;if(t.label){var r=ti[t.id],i=t.x,a=t.y;if(n){var s=kn.calcLabelPosition(n);o.info("Moving label from (",i,",",a,") to (",s.x,",",s.y,") abc78")}r.attr("transform","translate("+i+", "+a+")")}if(t.startLabelLeft){var c=ei[t.id].startLeft,l=t.x,u=t.y;if(n){var h=kn.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_left",n);l=h.x,u=h.y}c.attr("transform","translate("+l+", "+u+")")}if(t.startLabelRight){var d=ei[t.id].startRight,f=t.x,p=t.y;if(n){var g=kn.calcTerminalLabelPosition(t.arrowTypeStart?10:0,"start_right",n);f=g.x,p=g.y}d.attr("transform","translate("+f+", "+p+")")}if(t.endLabelLeft){var y=ei[t.id].endLeft,m=t.x,b=t.y;if(n){var v=kn.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_left",n);m=v.x,b=v.y}y.attr("transform","translate("+m+", "+b+")")}if(t.endLabelRight){var _=ei[t.id].endRight,x=t.x,k=t.y;if(n){var w=kn.calcTerminalLabelPosition(t.arrowTypeEnd?10:0,"end_right",n);x=w.x,k=w.y}_.attr("transform","translate("+x+", "+k+")")}}(e,i)})),n.nodes().forEach((function(t){var e=n.node(t);o.info(t,e.type,e.diff),"group"===e.type&&(f=e.diff)})),{elem:s,diff:f}},ai=function(t,e,n,r,i){(function(t,e,n,r){e.forEach((function(e){xr[e](t,n,r)}))})(t,n,r,i),Zr={},ti={},ei={},Jr={},Ar={},Mr={},Sr={},o.warn("Graph at first:",lr().json.write(e)),Ir(e),o.warn("Graph after:",lr().json.write(e)),ii(t,e,r)},oi={dividerMargin:10,padding:5,textHeight:10};function si(t){var e;switch(t){case 0:e="aggregation";break;case 1:e="extension";break;case 2:e="composition";break;case 3:e="dependency";break;case 4:e="lollipop";break;default:e="none"}return e}const ci={setConf:function(t){Object.keys(t).forEach((function(e){oi[e]=t[e]}))},draw:function(t,e,n,r){o.info("Drawing class - ",e);var i=qt().flowchart,a=qt().securityLevel;o.info("config:",i);var s,c=i.nodeSpacing||50,u=i.rankSpacing||50,h=new(lr().Graph)({multigraph:!0,compound:!0}).setGraph({rankdir:r.db.getDirection(),nodesep:c,ranksep:u,marginx:8,marginy:8}).setDefaultEdgeLabel((function(){return{}})),d=r.db.getClasses(),f=r.db.getRelations();o.info(f),function(t,e,n,r){var i=Object.keys(t);o.info("keys:",i),o.info(t),i.forEach((function(n){var i=t[n],a="";i.cssClasses.length>0&&(a=a+" "+i.cssClasses.join(" "));var s,c,l={labelStyle:""},u=void 0!==i.text?i.text:i.id;i.type,c="class_box",e.setNode(i.id,{labelStyle:l.labelStyle,shape:c,labelText:(s=u,oe.sanitizeText(s,qt())),classData:i,rx:0,ry:0,class:a,style:l.style,id:i.id,domId:i.domId,tooltip:r.db.getTooltip(i.id)||"",haveCallback:i.haveCallback,link:i.link,width:"group"===i.type?500:void 0,type:i.type,padding:qt().flowchart.padding}),o.info("setNode",{labelStyle:l.labelStyle,shape:c,labelText:u,rx:0,ry:0,class:a,style:l.style,id:i.id,width:"group"===i.type?500:void 0,type:i.type,padding:qt().flowchart.padding})}))}(d,h,0,r),function(t,e){var n=qt().flowchart,r=0;t.forEach((function(i){r++;var a={classes:"relation"};a.pattern=1==i.relation.lineType?"dashed":"solid",a.id="id"+r,"arrow_open"===i.type?a.arrowhead="none":a.arrowhead="normal",o.info(a,i),a.startLabelRight="none"===i.relationTitle1?"":i.relationTitle1,a.endLabelLeft="none"===i.relationTitle2?"":i.relationTitle2,a.arrowTypeStart=si(i.relation.type1),a.arrowTypeEnd=si(i.relation.type2);var s="",c="";if(void 0!==i.style){var u=sn(i.style);s=u.style,c=u.labelStyle}else s="fill:none";a.style=s,a.labelStyle=c,void 0!==i.interpolate?a.curve=an(i.interpolate,l.curveLinear):void 0!==t.defaultInterpolate?a.curve=an(t.defaultInterpolate,l.curveLinear):a.curve=an(n.curve,l.curveLinear),i.text=i.title,void 0===i.text?void 0!==i.style&&(a.arrowheadStyle="fill: #333"):(a.arrowheadStyle="fill: #333",a.labelpos="c",qt().flowchart.htmlLabels?(a.labelType="html",a.label='<span class="edgeLabel">'+i.text+"</span>"):(a.labelType="text",a.label=i.text.replace(oe.lineBreakRegex,"\n"),void 0===i.style&&(a.style=a.style||"stroke: #333; stroke-width: 1.5px;fill:none"),a.labelStyle=a.labelStyle.replace("color:","fill:"))),e.setEdge(i.id1,i.id2,a,r)}))}(f,h),"sandbox"===a&&(s=(0,l.select)("#i"+e));var p="sandbox"===a?(0,l.select)(s.nodes()[0].contentDocument.body):(0,l.select)("body"),g=p.select('[id="'.concat(e,'"]')),y=p.select("#"+e+" g");if(ai(y,h,["aggregation","extension","composition","dependency","lollipop"],"classDiagram",e),vn(h,g,i.diagramPadding,i.useMaxWidth),!i.htmlLabels)for(var m="sandbox"===a?s.nodes()[0].contentDocument:document,b=m.querySelectorAll('[id="'+e+'"] .edgeLabel .label'),v=0;v<b.length;v++){var _=b[v],x=_.getBBox(),k=m.createElementNS("http://www.w3.org/2000/svg","rect");k.setAttribute("rx",0),k.setAttribute("ry",0),k.setAttribute("width",x.width),k.setAttribute("height",x.height),_.insertBefore(k,_.firstChild)}wn(r.db,g,e)}};var li=n(1362),ui=n.n(li),hi={},di=[],fi=function(t){return void 0===hi[t]&&(hi[t]={attributes:[]},o.info("Added new entity :",t)),hi[t]};const pi={Cardinality:{ZERO_OR_ONE:"ZERO_OR_ONE",ZERO_OR_MORE:"ZERO_OR_MORE",ONE_OR_MORE:"ONE_OR_MORE",ONLY_ONE:"ONLY_ONE"},Identification:{NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"},parseDirective:function(t,e,n){Nl.parseDirective(this,t,e,n)},getConfig:function(){return qt().er},addEntity:fi,addAttributes:function(t,e){var n,r=fi(t);for(n=e.length-1;n>=0;n--)r.attributes.push(e[n]),o.debug("Added attribute ",e[n].attributeName)},getEntities:function(){return hi},addRelationship:function(t,e,n,r){var i={entityA:t,roleA:e,entityB:n,relSpec:r};di.push(i),o.debug("Added new relationship :",i)},getRelationships:function(){return di},clear:function(){hi={},di=[],he()},setAccTitle:de,getAccTitle:fe,setAccDescription:pe,getAccDescription:ge};var gi={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"};const yi=gi;var mi={},bi=function(t){return(t.entityA+t.roleA+t.entityB).replace(/\s/g,"")},vi=0;const _i={setConf:function(t){for(var e=Object.keys(t),n=0;n<e.length;n++)mi[e[n]]=t[e[n]]},draw:function(t,e,n,r){mi=qt().er,o.info("Drawing ER diagram");var i,a=qt().securityLevel;"sandbox"===a&&(i=(0,l.select)("#i"+e));var s,c=("sandbox"===a?(0,l.select)(i.nodes()[0].contentDocument.body):(0,l.select)("body")).select("[id='".concat(e,"']"));(function(t,e){var n;t.append("defs").append("marker").attr("id",gi.ONLY_ONE_START).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M9,0 L9,18 M15,0 L15,18"),t.append("defs").append("marker").attr("id",gi.ONLY_ONE_END).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M3,0 L3,18 M9,0 L9,18"),(n=t.append("defs").append("marker").attr("id",gi.ZERO_OR_ONE_START).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto")).append("circle").attr("stroke",e.stroke).attr("fill","white").attr("cx",21).attr("cy",9).attr("r",6),n.append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M9,0 L9,18"),(n=t.append("defs").append("marker").attr("id",gi.ZERO_OR_ONE_END).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto")).append("circle").attr("stroke",e.stroke).attr("fill","white").attr("cx",9).attr("cy",9).attr("r",6),n.append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M21,0 L21,18"),t.append("defs").append("marker").attr("id",gi.ONE_OR_MORE_START).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27"),t.append("defs").append("marker").attr("id",gi.ONE_OR_MORE_END).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18"),(n=t.append("defs").append("marker").attr("id",gi.ZERO_OR_MORE_START).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto")).append("circle").attr("stroke",e.stroke).attr("fill","white").attr("cx",48).attr("cy",18).attr("r",6),n.append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18"),(n=t.append("defs").append("marker").attr("id",gi.ZERO_OR_MORE_END).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto")).append("circle").attr("stroke",e.stroke).attr("fill","white").attr("cx",9).attr("cy",18).attr("r",6),n.append("path").attr("stroke",e.stroke).attr("fill","none").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18")})(c,mi),s=new(lr().Graph)({multigraph:!0,directed:!0,compound:!1}).setGraph({rankdir:mi.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel((function(){return{}}));var u,h,d=function(t,e,n){var r;return Object.keys(e).forEach((function(i){var a=t.append("g").attr("id",i);r=void 0===r?i:r;var o="entity-"+i,s=a.append("text").attr("class","er entityLabel").attr("id",o).attr("x",0).attr("y",0).attr("dominant-baseline","middle").attr("text-anchor","middle").attr("style","font-family: "+qt().fontFamily+"; font-size: "+mi.fontSize+"px").text(i),c=function(t,e,n){var r=mi.entityPadding/3,i=mi.entityPadding/3,a=.85*mi.fontSize,o=e.node().getBBox(),s=[],c=!1,l=!1,u=0,h=0,d=0,f=0,p=o.height+2*r,g=1;n.forEach((function(t){void 0!==t.attributeKeyType&&(c=!0),void 0!==t.attributeComment&&(l=!0)})),n.forEach((function(n){var i="".concat(e.node().id,"-attr-").concat(g),o=0,y=ae(n.attributeType),m=t.append("text").attr("class","er entityLabel").attr("id","".concat(i,"-type")).attr("x",0).attr("y",0).attr("dominant-baseline","middle").attr("text-anchor","left").attr("style","font-family: "+qt().fontFamily+"; font-size: "+a+"px").text(y),b=t.append("text").attr("class","er entityLabel").attr("id","".concat(i,"-name")).attr("x",0).attr("y",0).attr("dominant-baseline","middle").attr("text-anchor","left").attr("style","font-family: "+qt().fontFamily+"; font-size: "+a+"px").text(n.attributeName),v={};v.tn=m,v.nn=b;var _=m.node().getBBox(),x=b.node().getBBox();if(u=Math.max(u,_.width),h=Math.max(h,x.width),o=Math.max(_.height,x.height),c){var k=t.append("text").attr("class","er entityLabel").attr("id","".concat(i,"-key")).attr("x",0).attr("y",0).attr("dominant-baseline","middle").attr("text-anchor","left").attr("style","font-family: "+qt().fontFamily+"; font-size: "+a+"px").text(n.attributeKeyType||"");v.kn=k;var w=k.node().getBBox();d=Math.max(d,w.width),o=Math.max(o,w.height)}if(l){var E=t.append("text").attr("class","er entityLabel").attr("id","".concat(i,"-comment")).attr("x",0).attr("y",0).attr("dominant-baseline","middle").attr("text-anchor","left").attr("style","font-family: "+qt().fontFamily+"; font-size: "+a+"px").text(n.attributeComment||"");v.cn=E;var T=E.node().getBBox();f=Math.max(f,T.width),o=Math.max(o,T.height)}v.height=o,s.push(v),p+=o+2*r,g+=1}));var y=4;c&&(y+=2),l&&(y+=2);var m=u+h+d+f,b={width:Math.max(mi.minEntityWidth,Math.max(o.width+2*mi.entityPadding,m+i*y)),height:n.length>0?p:Math.max(mi.minEntityHeight,o.height+2*mi.entityPadding)};if(n.length>0){var v=Math.max(0,(b.width-m-i*y)/(y/2));e.attr("transform","translate("+b.width/2+","+(r+o.height/2)+")");var _=o.height+2*r,x="attributeBoxOdd";s.forEach((function(e){var n=_+r+e.height/2;e.tn.attr("transform","translate("+i+","+n+")");var a=t.insert("rect","#"+e.tn.node().id).attr("class","er ".concat(x)).attr("fill",mi.fill).attr("fill-opacity","100%").attr("stroke",mi.stroke).attr("x",0).attr("y",_).attr("width",u+2*i+v).attr("height",e.height+2*r),o=parseFloat(a.attr("x"))+parseFloat(a.attr("width"));e.nn.attr("transform","translate("+(o+i)+","+n+")");var s=t.insert("rect","#"+e.nn.node().id).attr("class","er ".concat(x)).attr("fill",mi.fill).attr("fill-opacity","100%").attr("stroke",mi.stroke).attr("x",o).attr("y",_).attr("width",h+2*i+v).attr("height",e.height+2*r),p=parseFloat(s.attr("x"))+parseFloat(s.attr("width"));if(c){e.kn.attr("transform","translate("+(p+i)+","+n+")");var g=t.insert("rect","#"+e.kn.node().id).attr("class","er ".concat(x)).attr("fill",mi.fill).attr("fill-opacity","100%").attr("stroke",mi.stroke).attr("x",p).attr("y",_).attr("width",d+2*i+v).attr("height",e.height+2*r);p=parseFloat(g.attr("x"))+parseFloat(g.attr("width"))}l&&(e.cn.attr("transform","translate("+(p+i)+","+n+")"),t.insert("rect","#"+e.cn.node().id).attr("class","er ".concat(x)).attr("fill",mi.fill).attr("fill-opacity","100%").attr("stroke",mi.stroke).attr("x",p).attr("y",_).attr("width",f+2*i+v).attr("height",e.height+2*r)),_+=e.height+2*r,x="attributeBoxOdd"==x?"attributeBoxEven":"attributeBoxOdd"}))}else b.height=Math.max(mi.minEntityHeight,p),e.attr("transform","translate("+b.width/2+","+b.height/2+")");return b}(a,s,e[i].attributes),l=c.width,u=c.height,h=a.insert("rect","#"+o).attr("class","er entityBox").attr("fill",mi.fill).attr("fill-opacity","100%").attr("stroke",mi.stroke).attr("x",0).attr("y",0).attr("width",l).attr("height",u).node().getBBox();n.setNode(i,{width:h.width,height:h.height,shape:"rect",id:i})})),r}(c,r.db.getEntities(),s),f=function(t,e){return t.forEach((function(t){e.setEdge(t.entityA,t.entityB,{relationship:t},bi(t))})),t}(r.db.getRelationships(),s);sr().layout(s),u=c,(h=s).nodes().forEach((function(t){void 0!==t&&void 0!==h.node(t)&&u.select("#"+t).attr("transform","translate("+(h.node(t).x-h.node(t).width/2)+","+(h.node(t).y-h.node(t).height/2)+" )")})),f.forEach((function(t){!function(t,e,n,r,i){vi++;var a=n.edge(e.entityA,e.entityB,bi(e)),o=(0,l.line)().x((function(t){return t.x})).y((function(t){return t.y})).curve(l.curveBasis),s=t.insert("path","#"+r).attr("class","er relationshipLine").attr("d",o(a.points)).attr("stroke",mi.stroke).attr("fill","none");e.relSpec.relType===i.db.Identification.NON_IDENTIFYING&&s.attr("stroke-dasharray","8,8");var c="";switch(mi.arrowMarkerAbsolute&&(c=(c=(c=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search).replace(/\(/g,"\\(")).replace(/\)/g,"\\)")),e.relSpec.cardA){case i.db.Cardinality.ZERO_OR_ONE:s.attr("marker-end","url("+c+"#"+yi.ZERO_OR_ONE_END+")");break;case i.db.Cardinality.ZERO_OR_MORE:s.attr("marker-end","url("+c+"#"+yi.ZERO_OR_MORE_END+")");break;case i.db.Cardinality.ONE_OR_MORE:s.attr("marker-end","url("+c+"#"+yi.ONE_OR_MORE_END+")");break;case i.db.Cardinality.ONLY_ONE:s.attr("marker-end","url("+c+"#"+yi.ONLY_ONE_END+")")}switch(e.relSpec.cardB){case i.db.Cardinality.ZERO_OR_ONE:s.attr("marker-start","url("+c+"#"+yi.ZERO_OR_ONE_START+")");break;case i.db.Cardinality.ZERO_OR_MORE:s.attr("marker-start","url("+c+"#"+yi.ZERO_OR_MORE_START+")");break;case i.db.Cardinality.ONE_OR_MORE:s.attr("marker-start","url("+c+"#"+yi.ONE_OR_MORE_START+")");break;case i.db.Cardinality.ONLY_ONE:s.attr("marker-start","url("+c+"#"+yi.ONLY_ONE_START+")")}var u=s.node().getTotalLength(),h=s.node().getPointAtLength(.5*u),d="rel"+vi,f=t.append("text").attr("class","er relationshipLabel").attr("id",d).attr("x",h.x).attr("y",h.y).attr("text-anchor","middle").attr("dominant-baseline","middle").attr("style","font-family: "+qt().fontFamily+"; font-size: "+mi.fontSize+"px").text(e.roleA).node().getBBox();t.insert("rect","#"+d).attr("class","er relationshipLabelBox").attr("x",h.x-f.width/2).attr("y",h.y-f.height/2).attr("width",f.width).attr("height",f.height).attr("fill","white").attr("fill-opacity","85%")}(c,t,s,d,r)}));var p=mi.diagramPadding,g=c.node().getBBox(),y=g.width+2*p,m=g.height+2*p;bn(c,0,y,mi.useMaxWidth),c.attr("viewBox","".concat(g.x-p," ").concat(g.y-p," ").concat(y," ").concat(m)),wn(r.db,c,e)}};var xi={};const ki={setConf:function(t){Object.keys(t).forEach((function(e){xi[e]=t[e]}))},draw:function(t,e,n){try{o.debug("Renering svg for syntax error\n");var r=(0,l.select)("#"+e),i=r.append("g");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 graph"),i.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text("mermaid version "+n),r.attr("height",100),r.attr("width",500),r.attr("viewBox","768 0 912 512")}catch(t){o.error("Error while rendering info diagram"),o.error(t.message)}}};var wi=n(5890),Ei=n.n(wi);function Ti(t){return Ti="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ti(t)}function Ci(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}var Si,Ai,Mi="flowchart-",Oi=0,Ni=qt(),Di={},Bi=[],Li=[],Ii=[],Fi={},Ri={},Pi=0,ji=!0,zi=[],Yi=function(t){return oe.sanitizeText(t,Ni)},Ui=function(t){for(var e=Object.keys(Di),n=0;n<e.length;n++)if(Di[e[n]].id===t)return Di[e[n]].domId;return t},$i=function(t,e,n,r){var i={start:t,end:e,type:void 0,text:""};void 0!==(r=n.text)&&(i.text=Yi(r.trim()),'"'===i.text[0]&&'"'===i.text[i.text.length-1]&&(i.text=i.text.substring(1,i.text.length-1))),void 0!==n&&(i.type=n.type,i.stroke=n.stroke,i.length=n.length),Bi.push(i)},Wi=function(t,e){t.split(",").forEach((function(t){var n=t;void 0!==Di[n]&&Di[n].classes.push(e),void 0!==Fi[n]&&Fi[n].classes.push(e)}))},qi=function(t){var e=(0,l.select)(".mermaidTooltip");null===(e._groups||e)[0][0]&&(e=(0,l.select)("body").append("div").attr("class","mermaidTooltip").style("opacity",0)),(0,l.select)(t).select("svg").selectAll("g.node").on("mouseover",(function(){var t=(0,l.select)(this);if(null!==t.attr("title")){var n=this.getBoundingClientRect();e.transition().duration(200).style("opacity",".9"),e.text(t.attr("title")).style("left",window.scrollX+n.left+(n.right-n.left)/2+"px").style("top",window.scrollY+n.top-14+document.body.scrollTop+"px"),e.html(e.html().replace(/<br\/>/g,"<br/>")),t.classed("hover",!0)}})).on("mouseout",(function(){e.transition().duration(500).style("opacity",0),(0,l.select)(this).classed("hover",!1)}))};zi.push(qi);var Hi=function(t){for(var e=0;e<Ii.length;e++)if(Ii[e].id===t)return e;return-1},Vi=-1,Gi=[],Xi=function t(e,n){var r=Ii[n].nodes;if(!((Vi+=1)>2e3)){if(Gi[Vi]=n,Ii[n].id===e)return{result:!0,count:0};for(var i=0,a=1;i<r.length;){var o=Hi(r[i]);if(o>=0){var s=t(e,o);if(s.result)return{result:!0,count:a+s.count};a+=s.count}i+=1}return{result:!1,count:a}}},Zi=function(t,e){var n=!1;return t.forEach((function(t){t.nodes.indexOf(e)>=0&&(n=!0)})),n},Qi=function(t,e){var n=[];return t.nodes.forEach((function(r,i){Zi(e,r)||n.push(t.nodes[i])})),{nodes:n}};const Ki={parseDirective:function(t,e,n){Nl.parseDirective(this,t,e,n)},defaultConfig:function(){return jt.flowchart},setAccTitle:de,getAccTitle:fe,getAccDescription:ge,setAccDescription:pe,addVertex:function(t,e,n,r,i,a){var o,s=arguments.length>6&&void 0!==arguments[6]?arguments[6]:{},c=t;void 0!==c&&0!==c.trim().length&&(void 0===Di[c]&&(Di[c]={id:c,domId:Mi+c+"-"+Oi,styles:[],classes:[]}),Oi++,void 0!==e?(Ni=qt(),'"'===(o=Yi(e.trim()))[0]&&'"'===o[o.length-1]&&(o=o.substring(1,o.length-1)),Di[c].text=o):void 0===Di[c].text&&(Di[c].text=t),void 0!==n&&(Di[c].type=n),null!=r&&r.forEach((function(t){Di[c].styles.push(t)})),null!=i&&i.forEach((function(t){Di[c].classes.push(t)})),void 0!==a&&(Di[c].dir=a),Di[c].props=s)},lookUpDomId:Ui,addLink:function(t,e,n,r){var i,a;for(i=0;i<t.length;i++)for(a=0;a<e.length;a++)$i(t[i],e[a],n,r)},updateLinkInterpolate:function(t,e){t.forEach((function(t){"default"===t?Bi.defaultInterpolate=e:Bi[t].interpolate=e}))},updateLink:function(t,e){t.forEach((function(t){"default"===t?Bi.defaultStyle=e:(-1===kn.isSubstringInArray("fill",e)&&e.push("fill:none"),Bi[t].style=e)}))},addClass:function(t,e){void 0===Li[t]&&(Li[t]={id:t,styles:[],textStyles:[]}),null!=e&&e.forEach((function(e){if(e.match("color")){var n=e.replace("fill","bgFill").replace("color","fill");Li[t].textStyles.push(n)}Li[t].styles.push(e)}))},setDirection:function(t){(Si=t).match(/.*</)&&(Si="RL"),Si.match(/.*\^/)&&(Si="BT"),Si.match(/.*>/)&&(Si="LR"),Si.match(/.*v/)&&(Si="TB")},setClass:Wi,setTooltip:function(t,e){t.split(",").forEach((function(t){void 0!==e&&(Ri["gen-1"===Ai?Ui(t):t]=Yi(e))}))},getTooltip:function(t){return Ri[t]},setClickEvent:function(t,e,n){t.split(",").forEach((function(t){!function(t,e,n){var r=Ui(t);if("loose"===qt().securityLevel&&void 0!==e){var i=[];if("string"==typeof n){i=n.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(var a=0;a<i.length;a++){var o=i[a].trim();'"'===o.charAt(0)&&'"'===o.charAt(o.length-1)&&(o=o.substr(1,o.length-2)),i[a]=o}}0===i.length&&i.push(t),void 0!==Di[t]&&(Di[t].haveCallback=!0,zi.push((function(){var t=document.querySelector('[id="'.concat(r,'"]'));null!==t&&t.addEventListener("click",(function(){var t;kn.runFunc.apply(kn,[e].concat(function(t){if(Array.isArray(t))return Ci(t)}(t=i)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(t){if("string"==typeof t)return Ci(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ci(t,e):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()))}),!1)})))}}(t,e,n)})),Wi(t,"clickable")},setLink:function(t,e,n){t.split(",").forEach((function(t){void 0!==Di[t]&&(Di[t].link=kn.formatUrl(e,Ni),Di[t].linkTarget=n)})),Wi(t,"clickable")},bindFunctions:function(t){zi.forEach((function(e){e(t)}))},getDirection:function(){return Si.trim()},getVertices:function(){return Di},getEdges:function(){return Bi},getClasses:function(){return Li},clear:function(t){Di={},Li={},Bi=[],(zi=[]).push(qi),Ii=[],Fi={},Pi=0,Ri=[],ji=!0,Ai=t||"gen-1",he()},setGen:function(t){Ai=t||"gen-1"},defaultStyle:function(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"},addSubGraph:function(t,e,n){var r=t.trim(),i=n;t===n&&n.match(/\s/)&&(r=void 0);var a=[],s=function(t){var e,n={boolean:{},number:{},string:{}},r=[],i=t.filter((function(t){var i=Ti(t);return t.stmt&&"dir"===t.stmt?(e=t.value,!1):""!==t.trim()&&(i in n?!n[i].hasOwnProperty(t)&&(n[i][t]=!0):!(r.indexOf(t)>=0)&&r.push(t))}));return{nodeList:i,dir:e}}(a.concat.apply(a,e)),c=s.nodeList,l=s.dir;if(a=c,"gen-1"===Ai)for(var u=0;u<a.length;u++)a[u]=Ui(a[u]);r=r||"subGraph"+Pi,i=Yi(i=i||""),Pi+=1;var h={id:r,nodes:a,title:i.trim(),classes:[],dir:l};return o.info("Adding",h.id,h.nodes,h.dir),h.nodes=Qi(h,Ii).nodes,Ii.push(h),Fi[r]=h,r},getDepthFirstPos:function(t){return Gi[t]},indexNodes:function(){Vi=-1,Ii.length>0&&Xi("none",Ii.length-1)},getSubGraphs:function(){return Ii},destructLink:function(t,e){var n,r=function(t){var e=t.trim(),n=e.slice(0,-1),r="arrow_open";switch(e.slice(-1)){case"x":r="arrow_cross","x"===e[0]&&(r="double_"+r,n=n.slice(1));break;case">":r="arrow_point","<"===e[0]&&(r="double_"+r,n=n.slice(1));break;case"o":r="arrow_circle","o"===e[0]&&(r="double_"+r,n=n.slice(1))}var i="normal",a=n.length-1;"="===n[0]&&(i="thick");var o=function(t,e){for(var n=e.length,r=0,i=0;i<n;++i)"."===e[i]&&++r;return r}(0,n);return o&&(i="dotted",a=o),{type:r,stroke:i,length:a}}(t);if(e){if(n=function(t){var e=t.trim(),n="arrow_open";switch(e[0]){case"<":n="arrow_point",e=e.slice(1);break;case"x":n="arrow_cross",e=e.slice(1);break;case"o":n="arrow_circle",e=e.slice(1)}var r="normal";return-1!==e.indexOf("=")&&(r="thick"),-1!==e.indexOf(".")&&(r="dotted"),{type:n,stroke:r}}(e),n.stroke!==r.stroke)return{type:"INVALID",stroke:"INVALID"};if("arrow_open"===n.type)n.type=r.type;else{if(n.type!==r.type)return{type:"INVALID",stroke:"INVALID"};n.type="double_"+n.type}return"double_arrow"===n.type&&(n.type="double_arrow_point"),n.length=r.length,n}return r},lex:{firstGraph:function(){return!!ji&&(ji=!1,!0)}},exists:Zi,makeUniq:Qi};var Ji=n(4949),ta=n.n(Ji),ea=n(8284),na=n.n(ea);function ra(t,e,n){var r=.9*(e.width+e.height),i=[{x:r/2,y:0},{x:r,y:-r/2},{x:r/2,y:-r},{x:0,y:-r/2}],a=pa(t,r,r,i);return n.intersect=function(t){return ta().intersect.polygon(n,i,t)},a}function ia(t,e,n){var r=e.height,i=r/4,a=e.width+2*i,o=[{x:i,y:0},{x:a-i,y:0},{x:a,y:-r/2},{x:a-i,y:-r},{x:i,y:-r},{x:0,y:-r/2}],s=pa(t,a,r,o);return n.intersect=function(t){return ta().intersect.polygon(n,o,t)},s}function aa(t,e,n){var r=e.width,i=e.height,a=[{x:-i/2,y:0},{x:r,y:0},{x:r,y:-i},{x:-i/2,y:-i},{x:0,y:-i/2}],o=pa(t,r,i,a);return n.intersect=function(t){return ta().intersect.polygon(n,a,t)},o}function oa(t,e,n){var r=e.width,i=e.height,a=[{x:-2*i/6,y:0},{x:r-i/6,y:0},{x:r+2*i/6,y:-i},{x:i/6,y:-i}],o=pa(t,r,i,a);return n.intersect=function(t){return ta().intersect.polygon(n,a,t)},o}function sa(t,e,n){var r=e.width,i=e.height,a=[{x:2*i/6,y:0},{x:r+i/6,y:0},{x:r-2*i/6,y:-i},{x:-i/6,y:-i}],o=pa(t,r,i,a);return n.intersect=function(t){return ta().intersect.polygon(n,a,t)},o}function ca(t,e,n){var r=e.width,i=e.height,a=[{x:-2*i/6,y:0},{x:r+2*i/6,y:0},{x:r-i/6,y:-i},{x:i/6,y:-i}],o=pa(t,r,i,a);return n.intersect=function(t){return ta().intersect.polygon(n,a,t)},o}function la(t,e,n){var r=e.width,i=e.height,a=[{x:i/6,y:0},{x:r-i/6,y:0},{x:r+2*i/6,y:-i},{x:-2*i/6,y:-i}],o=pa(t,r,i,a);return n.intersect=function(t){return ta().intersect.polygon(n,a,t)},o}function ua(t,e,n){var r=e.width,i=e.height,a=[{x:0,y:0},{x:r+i/2,y:0},{x:r,y:-i/2},{x:r+i/2,y:-i},{x:0,y:-i}],o=pa(t,r,i,a);return n.intersect=function(t){return ta().intersect.polygon(n,a,t)},o}function ha(t,e,n){var r=e.height,i=e.width+r/4,a=t.insert("rect",":first-child").attr("rx",r/2).attr("ry",r/2).attr("x",-i/2).attr("y",-r/2).attr("width",i).attr("height",r);return n.intersect=function(t){return ta().intersect.rect(n,t)},a}function da(t,e,n){var r=e.width,i=e.height,a=[{x:0,y:0},{x:r,y:0},{x:r,y:-i},{x:0,y:-i},{x:0,y:0},{x:-8,y:0},{x:r+8,y:0},{x:r+8,y:-i},{x:-8,y:-i},{x:-8,y:0}],o=pa(t,r,i,a);return n.intersect=function(t){return ta().intersect.polygon(n,a,t)},o}function fa(t,e,n){var r=e.width,i=r/2,a=i/(2.5+r/50),o=e.height+a,s="M 0,"+a+" a "+i+","+a+" 0,0,0 "+r+" 0 a "+i+","+a+" 0,0,0 "+-r+" 0 l 0,"+o+" a "+i+","+a+" 0,0,0 "+r+" 0 l 0,"+-o,c=t.attr("label-offset-y",a).insert("path",":first-child").attr("d",s).attr("transform","translate("+-r/2+","+-(o/2+a)+")");return n.intersect=function(t){var e=ta().intersect.rect(n,t),r=e.x-n.x;if(0!=i&&(Math.abs(r)<n.width/2||Math.abs(r)==n.width/2&&Math.abs(e.y-n.y)>n.height/2-a)){var o=a*a*(1-r*r/(i*i));0!=o&&(o=Math.sqrt(o)),o=a-o,t.y-n.y>0&&(o=-o),e.y+=o}return e},c}function pa(t,e,n,r){return t.insert("polygon",":first-child").attr("points",r.map((function(t){return t.x+","+t.y})).join(" ")).attr("transform","translate("+-e/2+","+n/2+")")}var ga={},ya=function(t,e,n,r,i,a){qt().securityLevel;var s=r?r.select('[id="'.concat(n,'"]')):(0,l.select)('[id="'.concat(n,'"]')),c=i||document;Object.keys(t).forEach((function(n){var r=t[n],i="default";r.classes.length>0&&(i=r.classes.join(" "));var l,u=sn(r.styles),h=void 0!==r.text?r.text:r.id;if(ie(qt().flowchart.htmlLabels)){var d={label:h.replace(/fa[lrsb]?:fa-[\w-]+/g,(function(t){return"<i class='".concat(t.replace(":"," "),"'></i>")}))};(l=na()(s,d).node()).parentNode.removeChild(l)}else{var f=c.createElementNS("http://www.w3.org/2000/svg","text");f.setAttribute("style",u.labelStyle.replace("color:","fill:"));for(var p=h.split(oe.lineBreakRegex),g=0;g<p.length;g++){var y=c.createElementNS("http://www.w3.org/2000/svg","tspan");y.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),y.setAttribute("dy","1em"),y.setAttribute("x","1"),y.textContent=p[g],f.appendChild(y)}l=f}var m=0,b="";switch(r.type){case"round":m=5,b="rect";break;case"square":case"group":default:b="rect";break;case"diamond":b="question";break;case"hexagon":b="hexagon";break;case"odd":case"odd_right":b="rect_left_inv_arrow";break;case"lean_right":b="lean_right";break;case"lean_left":b="lean_left";break;case"trapezoid":b="trapezoid";break;case"inv_trapezoid":b="inv_trapezoid";break;case"circle":b="circle";break;case"ellipse":b="ellipse";break;case"stadium":b="stadium";break;case"subroutine":b="subroutine";break;case"cylinder":b="cylinder"}o.warn("Adding node",r.id,r.domId),e.setNode(a.db.lookUpDomId(r.id),{labelType:"svg",labelStyle:u.labelStyle,shape:b,label:l,rx:m,ry:m,class:i,style:u.style,id:a.db.lookUpDomId(r.id)})}))},ma=function(t,e,n){var r,i,a=0;if(void 0!==t.defaultStyle){var o=sn(t.defaultStyle);r=o.style,i=o.labelStyle}t.forEach((function(o){a++;var s="L-"+o.start+"-"+o.end,c="LS-"+o.start,u="LE-"+o.end,h={};"arrow_open"===o.type?h.arrowhead="none":h.arrowhead="normal";var d="",f="";if(void 0!==o.style){var p=sn(o.style);d=p.style,f=p.labelStyle}else switch(o.stroke){case"normal":d="fill:none",void 0!==r&&(d=r),void 0!==i&&(f=i);break;case"dotted":d="fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":d=" stroke-width: 3.5px;fill:none"}h.style=d,h.labelStyle=f,void 0!==o.interpolate?h.curve=an(o.interpolate,l.curveLinear):void 0!==t.defaultInterpolate?h.curve=an(t.defaultInterpolate,l.curveLinear):h.curve=an(ga.curve,l.curveLinear),void 0===o.text?void 0!==o.style&&(h.arrowheadStyle="fill: #333"):(h.arrowheadStyle="fill: #333",h.labelpos="c",ie(qt().flowchart.htmlLabels)?(h.labelType="html",h.label='<span id="L-'.concat(s,'" class="edgeLabel L-').concat(c,"' L-").concat(u,'" style="').concat(h.labelStyle,'">').concat(o.text.replace(/fa[lrsb]?:fa-[\w-]+/g,(function(t){return"<i class='".concat(t.replace(":"," "),"'></i>")})),"</span>")):(h.labelType="text",h.label=o.text.replace(oe.lineBreakRegex,"\n"),void 0===o.style&&(h.style=h.style||"stroke: #333; stroke-width: 1.5px;fill:none"),h.labelStyle=h.labelStyle.replace("color:","fill:"))),h.id=s,h.class=c+" "+u,h.minlen=o.length||1,e.setEdge(n.db.lookUpDomId(o.start),n.db.lookUpDomId(o.end),h,a)}))};const ba={setConf:function(t){for(var e=Object.keys(t),n=0;n<e.length;n++)ga[e[n]]=t[e[n]]},addVertices:ya,addEdges:ma,getClasses:function(t,e){o.info("Extracting classes"),e.db.clear();try{return e.parse(t),e.db.getClasses()}catch(t){return}},draw:function(t,e,n,r){o.info("Drawing flowchart"),r.db.clear();var i,a=qt().securityLevel;"sandbox"===a&&(i=(0,l.select)("#i"+e));var s="sandbox"===a?(0,l.select)(i.nodes()[0].contentDocument.body):(0,l.select)("body"),c="sandbox"===a?i.nodes()[0].contentDocument:document;try{r.parser.parse(t)}catch(t){o.debug("Parsing failed")}var u=r.db.getDirection();void 0===u&&(u="TD");for(var h,d=qt().flowchart,f=d.nodeSpacing||50,p=d.rankSpacing||50,g=new(lr().Graph)({multigraph:!0,compound:!0}).setGraph({rankdir:u,nodesep:f,ranksep:p,marginx:8,marginy:8}).setDefaultEdgeLabel((function(){return{}})),y=r.db.getSubGraphs(),m=y.length-1;m>=0;m--)h=y[m],r.db.addVertex(h.id,h.title,"group",void 0,h.classes);var b=r.db.getVertices();o.warn("Get vertices",b);var v=r.db.getEdges(),_=0;for(_=y.length-1;_>=0;_--){h=y[_],(0,l.selectAll)("cluster").append("text");for(var x=0;x<h.nodes.length;x++)o.warn("Setting subgraph",h.nodes[x],r.db.lookUpDomId(h.nodes[x]),r.db.lookUpDomId(h.id)),g.setParent(r.db.lookUpDomId(h.nodes[x]),r.db.lookUpDomId(h.id))}ya(b,g,e,s,c,r),ma(v,g,r);var k=new(0,ta().render);(function(t){t.shapes().question=ra,t.shapes().hexagon=ia,t.shapes().stadium=ha,t.shapes().subroutine=da,t.shapes().cylinder=fa,t.shapes().rect_left_inv_arrow=aa,t.shapes().lean_right=oa,t.shapes().lean_left=sa,t.shapes().trapezoid=ca,t.shapes().inv_trapezoid=la,t.shapes().rect_right_inv_arrow=ua})(k),k.arrows().none=function(t,e,n,r){var i=t.append("marker").attr("id",e).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto").append("path").attr("d","M 0 0 L 0 0 L 0 0 z");ta().util.applyStyle(i,n[r+"Style"])},k.arrows().normal=function(t,e){t.append("marker").attr("id",e).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowheadPath").style("stroke-width",1).style("stroke-dasharray","1,0")};var w=s.select('[id="'.concat(e,'"]'));wn(r.db,w,e);var E=s.select("#"+e+" g");for(k(E,g),E.selectAll("g.node").attr("title",(function(){return r.db.getTooltip(this.id)})),r.db.indexNodes("subGraph"+_),_=0;_<y.length;_++)if("undefined"!==(h=y[_]).title){var T=c.querySelectorAll("#"+e+' [id="'+r.db.lookUpDomId(h.id)+'"] rect'),C=c.querySelectorAll("#"+e+' [id="'+r.db.lookUpDomId(h.id)+'"]'),S=T[0].x.baseVal.value,A=T[0].y.baseVal.value,M=T[0].width.baseVal.value,O=(0,l.select)(C[0]).select(".label");O.attr("transform","translate(".concat(S+M/2,", ").concat(A+14,")")),O.attr("id",e+"Text");for(var N=0;N<h.classes.length;N++)C[0].classList.add(h.classes[N])}ie(d.htmlLabels);for(var D=c.querySelectorAll('[id="'+e+'"] .edgeLabel .label'),B=0;B<D.length;B++){var L=D[B],I=L.getBBox(),F=c.createElementNS("http://www.w3.org/2000/svg","rect");F.setAttribute("rx",0),F.setAttribute("ry",0),F.setAttribute("width",I.width),F.setAttribute("height",I.height),L.insertBefore(F,L.firstChild)}vn(g,w,d.diagramPadding,d.useMaxWidth),Object.keys(b).forEach((function(t){var n=b[t];if(n.link){var i=s.select("#"+e+' [id="'+r.db.lookUpDomId(t)+'"]');if(i){var o=c.createElementNS("http://www.w3.org/2000/svg","a");o.setAttributeNS("http://www.w3.org/2000/svg","class",n.classes.join(" ")),o.setAttributeNS("http://www.w3.org/2000/svg","href",n.link),o.setAttributeNS("http://www.w3.org/2000/svg","rel","noopener"),"sandbox"===a?o.setAttributeNS("http://www.w3.org/2000/svg","target","_top"):n.linkTarget&&o.setAttributeNS("http://www.w3.org/2000/svg","target",n.linkTarget);var l=i.insert((function(){return o}),":first-child"),u=i.select(".label-container");u&&l.append((function(){return u.node()}));var h=i.select(".label");h&&l.append((function(){return h.node()}))}}}))}};var va={},_a=function(t,e,n,r,i,a){var s=r.select('[id="'.concat(n,'"]'));Object.keys(t).forEach((function(n){var r=t[n],c="default";r.classes.length>0&&(c=r.classes.join(" "));var l,u=sn(r.styles),h=void 0!==r.text?r.text:r.id;if(ie(qt().flowchart.htmlLabels)){var d={label:h.replace(/fa[lrsb]?:fa-[\w-]+/g,(function(t){return"<i class='".concat(t.replace(":"," "),"'></i>")}))};(l=na()(s,d).node()).parentNode.removeChild(l)}else{var f=i.createElementNS("http://www.w3.org/2000/svg","text");f.setAttribute("style",u.labelStyle.replace("color:","fill:"));for(var p=h.split(oe.lineBreakRegex),g=0;g<p.length;g++){var y=i.createElementNS("http://www.w3.org/2000/svg","tspan");y.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),y.setAttribute("dy","1em"),y.setAttribute("x","1"),y.textContent=p[g],f.appendChild(y)}l=f}var m=0,b="";switch(r.type){case"round":m=5,b="rect";break;case"square":case"group":default:b="rect";break;case"diamond":b="question";break;case"hexagon":b="hexagon";break;case"odd":case"odd_right":b="rect_left_inv_arrow";break;case"lean_right":b="lean_right";break;case"lean_left":b="lean_left";break;case"trapezoid":b="trapezoid";break;case"inv_trapezoid":b="inv_trapezoid";break;case"circle":b="circle";break;case"ellipse":b="ellipse";break;case"stadium":b="stadium";break;case"subroutine":b="subroutine";break;case"cylinder":b="cylinder";break;case"doublecircle":b="doublecircle"}e.setNode(r.id,{labelStyle:u.labelStyle,shape:b,labelText:h,rx:m,ry:m,class:c,style:u.style,id:r.id,link:r.link,linkTarget:r.linkTarget,tooltip:a.db.getTooltip(r.id)||"",domId:a.db.lookUpDomId(r.id),haveCallback:r.haveCallback,width:"group"===r.type?500:void 0,dir:r.dir,type:r.type,props:r.props,padding:qt().flowchart.padding}),o.info("setNode",{labelStyle:u.labelStyle,shape:b,labelText:h,rx:m,ry:m,class:c,style:u.style,id:r.id,domId:a.db.lookUpDomId(r.id),width:"group"===r.type?500:void 0,type:r.type,dir:r.dir,props:r.props,padding:qt().flowchart.padding})}))},xa=function(t,e,n){o.info("abc78 edges = ",t);var r,i,a=0,s={};if(void 0!==t.defaultStyle){var c=sn(t.defaultStyle);r=c.style,i=c.labelStyle}t.forEach((function(n){a++;var c="L-"+n.start+"-"+n.end;void 0===s[c]?(s[c]=0,o.info("abc78 new entry",c,s[c])):(s[c]++,o.info("abc78 new entry",c,s[c]));var u=c+"-"+s[c];o.info("abc78 new link id to be used is",c,u,s[c]);var h="LS-"+n.start,d="LE-"+n.end,f={style:"",labelStyle:""};switch(f.minlen=n.length||1,"arrow_open"===n.type?f.arrowhead="none":f.arrowhead="normal",f.arrowTypeStart="arrow_open",f.arrowTypeEnd="arrow_open",n.type){case"double_arrow_cross":f.arrowTypeStart="arrow_cross";case"arrow_cross":f.arrowTypeEnd="arrow_cross";break;case"double_arrow_point":f.arrowTypeStart="arrow_point";case"arrow_point":f.arrowTypeEnd="arrow_point";break;case"double_arrow_circle":f.arrowTypeStart="arrow_circle";case"arrow_circle":f.arrowTypeEnd="arrow_circle"}var p="",g="";switch(n.stroke){case"normal":p="fill:none;",void 0!==r&&(p=r),void 0!==i&&(g=i),f.thickness="normal",f.pattern="solid";break;case"dotted":f.thickness="normal",f.pattern="dotted",f.style="fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":f.thickness="thick",f.pattern="solid",f.style="stroke-width: 3.5px;fill:none;"}if(void 0!==n.style){var y=sn(n.style);p=y.style,g=y.labelStyle}f.style=f.style+=p,f.labelStyle=f.labelStyle+=g,void 0!==n.interpolate?f.curve=an(n.interpolate,l.curveLinear):void 0!==t.defaultInterpolate?f.curve=an(t.defaultInterpolate,l.curveLinear):f.curve=an(va.curve,l.curveLinear),void 0===n.text?void 0!==n.style&&(f.arrowheadStyle="fill: #333"):(f.arrowheadStyle="fill: #333",f.labelpos="c"),f.labelType="text",f.label=n.text.replace(oe.lineBreakRegex,"\n"),void 0===n.style&&(f.style=f.style||"stroke: #333; stroke-width: 1.5px;fill:none;"),f.labelStyle=f.labelStyle.replace("color:","fill:"),f.id=u,f.classes="flowchart-link "+h+" "+d,e.setEdge(n.start,n.end,f,a)}))};const ka={setConf:function(t){for(var e=Object.keys(t),n=0;n<e.length;n++)va[e[n]]=t[e[n]]},addVertices:_a,addEdges:xa,getClasses:function(t,e){o.info("Extracting classes"),e.db.clear();try{return e.parse(t),e.db.getClasses()}catch(t){return}},draw:function(t,e,n,r){o.info("Drawing flowchart"),r.db.clear(),Ki.setGen("gen-2"),r.parser.parse(t);var i=r.db.getDirection();void 0===i&&(i="TD");var a,s=qt().flowchart,c=s.nodeSpacing||50,u=s.rankSpacing||50,h=qt().securityLevel;"sandbox"===h&&(a=(0,l.select)("#i"+e));var d,f="sandbox"===h?(0,l.select)(a.nodes()[0].contentDocument.body):(0,l.select)("body"),p="sandbox"===h?a.nodes()[0].contentDocument:document,g=new(lr().Graph)({multigraph:!0,compound:!0}).setGraph({rankdir:i,nodesep:c,ranksep:u,marginx:0,marginy:0}).setDefaultEdgeLabel((function(){return{}})),y=r.db.getSubGraphs();o.info("Subgraphs - ",y);for(var m=y.length-1;m>=0;m--)d=y[m],o.info("Subgraph - ",d),r.db.addVertex(d.id,d.title,"group",void 0,d.classes,d.dir);var b=r.db.getVertices(),v=r.db.getEdges();o.info(v);var _=0;for(_=y.length-1;_>=0;_--){d=y[_],(0,l.selectAll)("cluster").append("text");for(var x=0;x<d.nodes.length;x++)o.info("Setting up subgraphs",d.nodes[x],d.id),g.setParent(d.nodes[x],d.id)}_a(b,g,e,f,p,r),xa(v,g);var k=f.select('[id="'.concat(e,'"]'));wn(r.db,k,e);var w=f.select("#"+e+" g");if(ai(w,g,["point","circle","cross"],"flowchart",e),vn(g,k,s.diagramPadding,s.useMaxWidth),r.db.indexNodes("subGraph"+_),!s.htmlLabels)for(var E=p.querySelectorAll('[id="'+e+'"] .edgeLabel .label'),T=0;T<E.length;T++){var C=E[T],S=C.getBBox(),A=p.createElementNS("http://www.w3.org/2000/svg","rect");A.setAttribute("rx",0),A.setAttribute("ry",0),A.setAttribute("width",S.width),A.setAttribute("height",S.height),C.insertBefore(A,C.firstChild)}Object.keys(b).forEach((function(t){var n=b[t];if(n.link){var r=(0,l.select)("#"+e+' [id="'+t+'"]');if(r){var i=p.createElementNS("http://www.w3.org/2000/svg","a");i.setAttributeNS("http://www.w3.org/2000/svg","class",n.classes.join(" ")),i.setAttributeNS("http://www.w3.org/2000/svg","href",n.link),i.setAttributeNS("http://www.w3.org/2000/svg","rel","noopener"),"sandbox"===h?i.setAttributeNS("http://www.w3.org/2000/svg","target","_top"):n.linkTarget&&i.setAttributeNS("http://www.w3.org/2000/svg","target",n.linkTarget);var a=r.insert((function(){return i}),":first-child"),o=r.select(".label-container");o&&a.append((function(){return o.node()}));var s=r.select(".label");s&&a.append((function(){return s.node()}))}}}))}};var wa=n(3602),Ea=n.n(wa);function Ta(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}var Ca,Sa,Aa="",Ma="",Oa="",Na=[],Da=[],Ba={},La=[],Ia=[],Fa="",Ra=["active","done","crit","milestone"],Pa=[],ja=!1,za=!1,Ya=0,Ua=function(t,e,n,r){return!(r.indexOf(t.format(e.trim()))>=0)&&(t.isoWeekday()>=6&&n.indexOf("weekends")>=0||n.indexOf(t.format("dddd").toLowerCase())>=0||n.indexOf(t.format(e.trim()))>=0)},$a=function(t,e,n,r){if(n.length&&!t.manualEndTime){var a=i()(t.startTime,e,!0);a.add(1,"d");var o=i()(t.endTime,e,!0),s=Wa(a,o,e,n,r);t.endTime=o.toDate(),t.renderEndTime=s}},Wa=function(t,e,n,r,i){for(var a=!1,o=null;t<=e;)a||(o=e.toDate()),(a=Ua(t,n,r,i))&&e.add(1,"d"),t.add(1,"d");return o},qa=function(t,e,n){n=n.trim();var r=/^after\s+([\d\w- ]+)/.exec(n.trim());if(null!==r){var a=null;if(r[1].split(" ").forEach((function(t){var e=Ka(t);void 0!==e&&(a?e.endTime>a.endTime&&(a=e):a=e)})),a)return a.endTime;var s=new Date;return s.setHours(0,0,0,0),s}var c=i()(n,e.trim(),!0);return c.isValid()?c.toDate():(o.debug("Invalid date:"+n),o.debug("With date format:"+e.trim()),new Date)},Ha=function(t,e){if(null!==t)switch(t[2]){case"ms":e.add(t[1],"milliseconds");break;case"s":e.add(t[1],"seconds");break;case"m":e.add(t[1],"minutes");break;case"h":e.add(t[1],"hours");break;case"d":e.add(t[1],"days");break;case"w":e.add(t[1],"weeks")}return e.toDate()},Va=function(t,e,n,r){r=r||!1,n=n.trim();var a=i()(n,e.trim(),!0);return a.isValid()?(r&&a.add(1,"d"),a.toDate()):Ha(/^([\d]+)([wdhms]|ms)$/.exec(n.trim()),i()(t))},Ga=0,Xa=function(t){return void 0===t?"task"+(Ga+=1):t},Za=[],Qa={},Ka=function(t){var e=Qa[t];return Za[e]},Ja=function(){for(var t=function(t){var e=Za[t],n="";switch(Za[t].raw.startTime.type){case"prevTaskEnd":var r=Ka(e.prevTaskId);e.startTime=r.endTime;break;case"getStartDate":(n=qa(0,Aa,Za[t].raw.startTime.startData))&&(Za[t].startTime=n)}return Za[t].startTime&&(Za[t].endTime=Va(Za[t].startTime,Aa,Za[t].raw.endTime.data,ja),Za[t].endTime&&(Za[t].processed=!0,Za[t].manualEndTime=i()(Za[t].raw.endTime.data,"YYYY-MM-DD",!0).isValid(),$a(Za[t],Aa,Da,Na))),Za[t].processed},e=!0,n=0;n<Za.length;n++)t(n),e=e&&Za[n].processed;return e},to=function(t,e){t.split(",").forEach((function(t){var n=Ka(t);void 0!==n&&n.classes.push(e)}))},eo=function(t,e){Pa.push((function(){var n=document.querySelector('[id="'.concat(t,'"]'));null!==n&&n.addEventListener("click",(function(){e()}))})),Pa.push((function(){var n=document.querySelector('[id="'.concat(t,'-text"]'));null!==n&&n.addEventListener("click",(function(){e()}))}))};const no={parseDirective:function(t,e,n){Nl.parseDirective(this,t,e,n)},getConfig:function(){return qt().gantt},clear:function(){La=[],Ia=[],Fa="",Pa=[],Ga=0,Ca=void 0,Sa=void 0,Za=[],Aa="",Ma="",Oa="",Na=[],Da=[],ja=!1,za=!1,Ya=0,Ba={},he()},setDateFormat:function(t){Aa=t},getDateFormat:function(){return Aa},enableInclusiveEndDates:function(){ja=!0},endDatesAreInclusive:function(){return ja},enableTopAxis:function(){za=!0},topAxisEnabled:function(){return za},setAxisFormat:function(t){Ma=t},getAxisFormat:function(){return Ma},setTodayMarker:function(t){Oa=t},getTodayMarker:function(){return Oa},setAccTitle:de,getAccTitle:fe,setDiagramTitle:ye,getDiagramTitle:me,setAccDescription:pe,getAccDescription:ge,addSection:function(t){Fa=t,La.push(t)},getSections:function(){return La},getTasks:function(){for(var t=Ja(),e=0;!t&&e<10;)t=Ja(),e++;return Ia=Za},addTask:function(t,e){var n={section:Fa,type:Fa,processed:!1,manualEndTime:!1,renderEndTime:null,raw:{data:e},task:t,classes:[]},r=function(t,e){var n=(":"===e.substr(0,1)?e.substr(1,e.length):e).split(","),r={};ro(n,r,Ra);for(var i=0;i<n.length;i++)n[i]=n[i].trim();switch(n.length){case 1:r.id=Xa(),r.startTime={type:"prevTaskEnd",id:t},r.endTime={data:n[0]};break;case 2:r.id=Xa(),r.startTime={type:"getStartDate",startData:n[0]},r.endTime={data:n[1]};break;case 3:r.id=Xa(n[0]),r.startTime={type:"getStartDate",startData:n[1]},r.endTime={data:n[2]}}return r}(Sa,e);n.raw.startTime=r.startTime,n.raw.endTime=r.endTime,n.id=r.id,n.prevTaskId=Sa,n.active=r.active,n.done=r.done,n.crit=r.crit,n.milestone=r.milestone,n.order=Ya,Ya++;var i=Za.push(n);Sa=n.id,Qa[n.id]=i-1},findTaskById:Ka,addTaskOrg:function(t,e){var n={section:Fa,type:Fa,description:t,task:t,classes:[]},r=function(t,e){var n=(":"===e.substr(0,1)?e.substr(1,e.length):e).split(","),r={};ro(n,r,Ra);for(var a=0;a<n.length;a++)n[a]=n[a].trim();var o="";switch(n.length){case 1:r.id=Xa(),r.startTime=t.endTime,o=n[0];break;case 2:r.id=Xa(),r.startTime=qa(0,Aa,n[0]),o=n[1];break;case 3:r.id=Xa(n[0]),r.startTime=qa(0,Aa,n[1]),o=n[2]}return o&&(r.endTime=Va(r.startTime,Aa,o,ja),r.manualEndTime=i()(o,"YYYY-MM-DD",!0).isValid(),$a(r,Aa,Da,Na)),r}(Ca,e);n.startTime=r.startTime,n.endTime=r.endTime,n.id=r.id,n.active=r.active,n.done=r.done,n.crit=r.crit,n.milestone=r.milestone,Ca=n,Ia.push(n)},setIncludes:function(t){Na=t.toLowerCase().split(/[\s,]+/)},getIncludes:function(){return Na},setExcludes:function(t){Da=t.toLowerCase().split(/[\s,]+/)},getExcludes:function(){return Da},setClickEvent:function(t,e,n){t.split(",").forEach((function(t){!function(t,e,n){if("loose"===qt().securityLevel&&void 0!==e){var r=[];if("string"==typeof n){r=n.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(var i=0;i<r.length;i++){var a=r[i].trim();'"'===a.charAt(0)&&'"'===a.charAt(a.length-1)&&(a=a.substr(1,a.length-2)),r[i]=a}}0===r.length&&r.push(t),void 0!==Ka(t)&&eo(t,(function(){var t;kn.runFunc.apply(kn,[e].concat(function(t){if(Array.isArray(t))return Ta(t)}(t=r)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(t){if("string"==typeof t)return Ta(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ta(t,e):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()))}))}}(t,e,n)})),to(t,"clickable")},setLink:function(t,e){var n=e;"loose"!==qt().securityLevel&&(n=(0,Ie.N)(e)),t.split(",").forEach((function(t){void 0!==Ka(t)&&(eo(t,(function(){window.open(n,"_self")})),Ba[t]=n)})),to(t,"clickable")},getLinks:function(){return Ba},bindFunctions:function(t){Pa.forEach((function(e){e(t)}))},durationToDate:Ha,isInvalidDate:Ua};function ro(t,e,n){for(var r=!0;r;)r=!1,n.forEach((function(n){var i=new RegExp("^\\s*"+n+"\\s*$");t[0].match(i)&&(e[n]=!0,t.shift(1),r=!0)}))}var io;const ao={setConf:function(){o.debug("Something is calling, setConf, remove the call")},draw:function(t,e,n,r){var a,o=qt().gantt,s=qt().securityLevel;"sandbox"===s&&(a=(0,l.select)("#i"+e));var c="sandbox"===s?(0,l.select)(a.nodes()[0].contentDocument.body):(0,l.select)("body"),u="sandbox"===s?a.nodes()[0].contentDocument:document,h=u.getElementById(e);void 0===(io=h.parentElement.offsetWidth)&&(io=1200),void 0!==o.useWidth&&(io=o.useWidth);var d=r.db.getTasks(),f=d.length*(o.barHeight+o.barGap)+2*o.topPadding;h.setAttribute("viewBox","0 0 "+io+" "+f);for(var p=c.select('[id="'.concat(e,'"]')),g=(0,l.scaleTime)().domain([(0,l.min)(d,(function(t){return t.startTime})),(0,l.max)(d,(function(t){return t.endTime}))]).rangeRound([0,io-o.leftPadding-o.rightPadding]),y=[],m=0;m<d.length;m++)y.push(d[m].type);var b=y;y=function(t){for(var e={},n=[],r=0,i=t.length;r<i;++r)Object.prototype.hasOwnProperty.call(e,t[r])||(e[t[r]]=!0,n.push(t[r]));return n}(y),d.sort((function(t,e){var n=t.startTime,r=e.startTime,i=0;return n>r?i=1:n<r&&(i=-1),i})),function(t,n,a){var s=o.barHeight,c=s+o.barGap,h=o.topPadding,d=o.leftPadding;(0,l.scaleLinear)().domain([0,y.length]).range(["#00B9FA","#F95002"]).interpolate(l.interpolateHcl),function(t,e,n,a,s,c,l,u){var h=c.reduce((function(t,e){var n=e.startTime;return t?Math.min(t,n):n}),0),d=c.reduce((function(t,e){var n=e.endTime;return t?Math.max(t,n):n}),0),f=r.db.getDateFormat();if(h&&d){for(var y=[],m=null,b=i()(h);b.valueOf()<=d;)r.db.isInvalidDate(b,f,l,u)?m?m.end=b.clone():m={start:b.clone(),end:b.clone()}:m&&(y.push(m),m=null),b.add(1,"d");p.append("g").selectAll("rect").data(y).enter().append("rect").attr("id",(function(t){return"exclude-"+t.start.format("YYYY-MM-DD")})).attr("x",(function(t){return g(t.start)+n})).attr("y",o.gridLineStartPadding).attr("width",(function(t){var e=t.end.clone().add(1,"day");return g(e)-g(t.start)})).attr("height",s-e-o.gridLineStartPadding).attr("transform-origin",(function(e,r){return(g(e.start)+n+.5*(g(e.end)-g(e.start))).toString()+"px "+(r*t+.5*s).toString()+"px"})).attr("class","exclude-range")}}(c,h,d,0,a,t,r.db.getExcludes(),r.db.getIncludes()),function(t,e,n,i){var a=(0,l.axisBottom)(g).tickSize(-i+e+o.gridLineStartPadding).tickFormat((0,l.timeFormat)(r.db.getAxisFormat()||o.axisFormat||"%Y-%m-%d"));if(p.append("g").attr("class","grid").attr("transform","translate("+t+", "+(i-50)+")").call(a).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10).attr("dy","1em"),r.db.topAxisEnabled()||o.topAxis){var s=(0,l.axisTop)(g).tickSize(-i+e+o.gridLineStartPadding).tickFormat((0,l.timeFormat)(r.db.getAxisFormat()||o.axisFormat||"%Y-%m-%d"));p.append("g").attr("class","grid").attr("transform","translate("+t+", "+e+")").call(s).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10)}}(d,h,0,a),function(t,n,i,a,s,c,u){p.append("g").selectAll("rect").data(t).enter().append("rect").attr("x",0).attr("y",(function(t,e){return t.order*n+i-2})).attr("width",(function(){return u-o.rightPadding/2})).attr("height",n).attr("class",(function(t){for(var e=0;e<y.length;e++)if(t.type===y[e])return"section section"+e%o.numberSectionStyles;return"section section0"}));var h=p.append("g").selectAll("rect").data(t).enter(),d=r.db.getLinks();if(h.append("rect").attr("id",(function(t){return t.id})).attr("rx",3).attr("ry",3).attr("x",(function(t){return t.milestone?g(t.startTime)+a+.5*(g(t.endTime)-g(t.startTime))-.5*s:g(t.startTime)+a})).attr("y",(function(t,e){return t.order*n+i})).attr("width",(function(t){return t.milestone?s:g(t.renderEndTime||t.endTime)-g(t.startTime)})).attr("height",s).attr("transform-origin",(function(t,e){return e=t.order,(g(t.startTime)+a+.5*(g(t.endTime)-g(t.startTime))).toString()+"px "+(e*n+i+.5*s).toString()+"px"})).attr("class",(function(t){var e="";t.classes.length>0&&(e=t.classes.join(" "));for(var n=0,r=0;r<y.length;r++)t.type===y[r]&&(n=r%o.numberSectionStyles);var i="";return t.active?t.crit?i+=" activeCrit":i=" active":t.done?i=t.crit?" doneCrit":" done":t.crit&&(i+=" crit"),0===i.length&&(i=" task"),t.milestone&&(i=" milestone "+i),"task"+(i+=n)+" "+e})),h.append("text").attr("id",(function(t){return t.id+"-text"})).text((function(t){return t.task})).attr("font-size",o.fontSize).attr("x",(function(t){var e=g(t.startTime),n=g(t.renderEndTime||t.endTime);t.milestone&&(e+=.5*(g(t.endTime)-g(t.startTime))-.5*s),t.milestone&&(n=e+s);var r=this.getBBox().width;return r>n-e?n+r+1.5*o.leftPadding>u?e+a-5:n+a+5:(n-e)/2+e+a})).attr("y",(function(t,e){return t.order*n+o.barHeight/2+(o.fontSize/2-2)+i})).attr("text-height",s).attr("class",(function(t){var e=g(t.startTime),n=g(t.endTime);t.milestone&&(n=e+s);var r=this.getBBox().width,i="";t.classes.length>0&&(i=t.classes.join(" "));for(var a=0,c=0;c<y.length;c++)t.type===y[c]&&(a=c%o.numberSectionStyles);var l="";return t.active&&(l=t.crit?"activeCritText"+a:"activeText"+a),t.done?l=t.crit?l+" doneCritText"+a:l+" doneText"+a:t.crit&&(l=l+" critText"+a),t.milestone&&(l+=" milestoneText"),r>n-e?n+r+1.5*o.leftPadding>u?i+" taskTextOutsideLeft taskTextOutside"+a+" "+l:i+" taskTextOutsideRight taskTextOutside"+a+" "+l+" width-"+r:i+" taskText taskText"+a+" "+l+" width-"+r})),"sandbox"===qt().securityLevel){var f;f=(0,l.select)("#i"+e),(0,l.select)(f.nodes()[0].contentDocument.body);var m=f.nodes()[0].contentDocument;h.filter((function(t){return void 0!==d[t.id]})).each((function(t){var e=m.querySelector("#"+t.id),n=m.querySelector("#"+t.id+"-text"),r=e.parentNode,i=m.createElement("a");i.setAttribute("xlink:href",d[t.id]),i.setAttribute("target","_top"),r.appendChild(i),i.appendChild(e),i.appendChild(n)}))}}(t,c,h,d,s,0,n),function(t,e){for(var n=[],r=0,i=0;i<y.length;i++)n[i]=[y[i],(a=y[i],s=b,function(t){for(var e=t.length,n={};e;)n[t[--e]]=(n[t[e]]||0)+1;return n}(s)[a]||0)];var a,s;p.append("g").selectAll("text").data(n).enter().append((function(t){var e=t[0].split(oe.lineBreakRegex),n=-(e.length-1)/2,r=u.createElementNS("http://www.w3.org/2000/svg","text");r.setAttribute("dy",n+"em");for(var i=0;i<e.length;i++){var a=u.createElementNS("http://www.w3.org/2000/svg","tspan");a.setAttribute("alignment-baseline","central"),a.setAttribute("x","10"),i>0&&a.setAttribute("dy","1em"),a.textContent=e[i],r.appendChild(a)}return r})).attr("x",10).attr("y",(function(i,a){if(!(a>0))return i[1]*t/2+e;for(var o=0;o<a;o++)return r+=n[a-1][1],i[1]*t/2+r*t+e})).attr("font-size",o.sectionFontSize).attr("font-size",o.sectionFontSize).attr("class",(function(t){for(var e=0;e<y.length;e++)if(t[0]===y[e])return"sectionTitle sectionTitle"+e%o.numberSectionStyles;return"sectionTitle"}))}(c,h),function(t,e,n,i){var a=r.db.getTodayMarker();if("off"!==a){var s=p.append("g").attr("class","today"),c=new Date,l=s.append("line");l.attr("x1",g(c)+t).attr("x2",g(c)+t).attr("y1",o.titleTopMargin).attr("y2",i-o.titleTopMargin).attr("class","today"),""!==a&&l.attr("style",a.replace(/,/g,";"))}}(d,0,0,a)}(d,io,f),bn(p,0,io,o.useMaxWidth),p.append("text").text(r.db.getDiagramTitle()).attr("x",io/2).attr("y",o.titleTopMargin).attr("class","titleText"),wn(r.db,p,e)}};var oo=n(9959),so=n.n(oo),co="",lo=!1;const uo={setMessage:function(t){o.debug("Setting message to: "+t),co=t},getMessage:function(){return co},setInfo:function(t){lo=t},getInfo:function(){return lo}},ho={draw:function(t,e,n,r){try{o.debug("Renering info diagram\n"+t);var i,a=qt().securityLevel;"sandbox"===a&&(i=(0,l.select)("#i"+e));var s="sandbox"===a?(0,l.select)(i.nodes()[0].contentDocument.body):(0,l.select)("body"),c=("sandbox"===a?i.nodes()[0].contentDocument:document,s.select("#"+e));c.append("g").append("text").attr("x",100).attr("y",40).attr("class","version").attr("font-size","32px").style("text-anchor","middle").text("v "+n),c.attr("height",100),c.attr("width",400)}catch(t){o.error("Error while rendering info diagram"),o.error(t.message)}}};var fo=n(6765),po=n.n(fo),go=n(7062),yo=n.n(go),mo={},bo=!1;const vo={parseDirective:function(t,e,n){Nl.parseDirective(this,t,e,n)},getConfig:function(){return qt().pie},addSection:function(t,e){t=oe.sanitizeText(t,qt()),void 0===mo[t]&&(mo[t]=e,o.debug("Added new section :",t))},getSections:function(){return mo},cleanupValue:function(t){return":"===t.substring(0,1)?(t=t.substring(1).trim(),Number(t.trim())):Number(t.trim())},clear:function(){mo={},bo=!1,he()},setAccTitle:de,getAccTitle:fe,setDiagramTitle:ye,getDiagramTitle:me,setShowData:function(t){bo=t},getShowData:function(){return bo},getAccDescription:ge,setAccDescription:pe};var _o,xo=qt();const ko={draw:function(t,e,n,r){try{xo=qt(),o.debug("Rendering info diagram\n"+t);var i,a=qt().securityLevel;"sandbox"===a&&(i=(0,l.select)("#i"+e));var s="sandbox"===a?(0,l.select)(i.nodes()[0].contentDocument.body):(0,l.select)("body"),c="sandbox"===a?i.nodes()[0].contentDocument:document;r.db.clear(),r.parser.parse(t),o.debug("Parsed info diagram");var u=c.getElementById(e);void 0===(_o=u.parentElement.offsetWidth)&&(_o=1200),void 0!==xo.useWidth&&(_o=xo.useWidth),void 0!==xo.pie.useWidth&&(_o=xo.pie.useWidth);var h=s.select("#"+e);bn(h,0,_o,xo.pie.useMaxWidth),wn(r.db,h,e),u.setAttribute("viewBox","0 0 "+_o+" 450");var d=Math.min(_o,450)/2-40,f=h.append("g").attr("transform","translate("+_o/2+",225)"),p=r.db.getSections(),g=0;Object.keys(p).forEach((function(t){g+=p[t]}));var y=xo.themeVariables,m=[y.pie1,y.pie2,y.pie3,y.pie4,y.pie5,y.pie6,y.pie7,y.pie8,y.pie9,y.pie10,y.pie11,y.pie12],b=(0,l.scaleOrdinal)().range(m),v=(0,l.pie)().value((function(t){return t[1]}))(Object.entries(p)),_=(0,l.arc)().innerRadius(0).outerRadius(d);f.selectAll("mySlices").data(v).enter().append("path").attr("d",_).attr("fill",(function(t){return b(t.data[0])})).attr("class","pieCircle"),f.selectAll("mySlices").data(v).enter().append("text").text((function(t){return(t.data[1]/g*100).toFixed(0)+"%"})).attr("transform",(function(t){return"translate("+_.centroid(t)+")"})).style("text-anchor","middle").attr("class","slice"),f.append("text").text(r.db.getDiagramTitle()).attr("x",0).attr("y",-200).attr("class","pieTitleText");var x=f.selectAll(".legend").data(b.domain()).enter().append("g").attr("class","legend").attr("transform",(function(t,e){return"translate(216,"+(22*e-22*b.domain().length/2)+")"}));x.append("rect").attr("width",18).attr("height",18).style("fill",b).style("stroke",b),x.data(v).append("text").attr("x",22).attr("y",14).text((function(t){return r.db.getShowData()||xo.showData||xo.pie.showData?t.data[0]+" ["+t.data[1]+"]":t.data[0]}))}catch(t){o.error("Error while rendering info diagram"),o.error(t)}}};var wo=n(3176),Eo=n.n(wo),To=[],Co={},So={},Ao={},Mo={};const Oo={RequirementType:{REQUIREMENT:"Requirement",FUNCTIONAL_REQUIREMENT:"Functional Requirement",INTERFACE_REQUIREMENT:"Interface Requirement",PERFORMANCE_REQUIREMENT:"Performance Requirement",PHYSICAL_REQUIREMENT:"Physical Requirement",DESIGN_CONSTRAINT:"Design Constraint"},RiskLevel:{LOW_RISK:"Low",MED_RISK:"Medium",HIGH_RISK:"High"},VerifyType:{VERIFY_ANALYSIS:"Analysis",VERIFY_DEMONSTRATION:"Demonstration",VERIFY_INSPECTION:"Inspection",VERIFY_TEST:"Test"},Relationships:{CONTAINS:"contains",COPIES:"copies",DERIVES:"derives",SATISFIES:"satisfies",VERIFIES:"verifies",REFINES:"refines",TRACES:"traces"},parseDirective:function(t,e,n){Nl.parseDirective(this,t,e,n)},getConfig:function(){return qt().req},addRequirement:function(t,e){return void 0===So[t]&&(So[t]={name:t,type:e,id:Co.id,text:Co.text,risk:Co.risk,verifyMethod:Co.verifyMethod}),Co={},So[t]},getRequirements:function(){return So},setNewReqId:function(t){void 0!==Co&&(Co.id=t)},setNewReqText:function(t){void 0!==Co&&(Co.text=t)},setNewReqRisk:function(t){void 0!==Co&&(Co.risk=t)},setNewReqVerifyMethod:function(t){void 0!==Co&&(Co.verifyMethod=t)},setAccTitle:de,getAccTitle:fe,setAccDescription:pe,getAccDescription:ge,addElement:function(t){return void 0===Mo[t]&&(Mo[t]={name:t,type:Ao.type,docRef:Ao.docRef},o.info("Added new requirement: ",t)),Ao={},Mo[t]},getElements:function(){return Mo},setNewElementType:function(t){void 0!==Ao&&(Ao.type=t)},setNewElementDocRef:function(t){void 0!==Ao&&(Ao.docRef=t)},addRelationship:function(t,e,n){To.push({type:t,src:e,dst:n})},getRelationships:function(){return To},clear:function(){To=[],Co={},So={},Ao={},Mo={},he()}};var No={CONTAINS:"contains",ARROW:"arrow"};const Do=No;var Bo={},Lo=0,Io=function(t,e){return t.insert("rect","#"+e).attr("class","req reqBox").attr("x",0).attr("y",0).attr("width",Bo.rect_min_width+"px").attr("height",Bo.rect_min_height+"px")},Fo=function(t,e,n){var r=Bo.rect_min_width/2,i=t.append("text").attr("class","req reqLabel reqTitle").attr("id",e).attr("x",r).attr("y",Bo.rect_padding).attr("dominant-baseline","hanging"),a=0;n.forEach((function(t){0==a?i.append("tspan").attr("text-anchor","middle").attr("x",Bo.rect_min_width/2).attr("dy",0).text(t):i.append("tspan").attr("text-anchor","middle").attr("x",Bo.rect_min_width/2).attr("dy",.75*Bo.line_height).text(t),a++}));var o=1.5*Bo.rect_padding+a*Bo.line_height*.75;return t.append("line").attr("class","req-title-line").attr("x1","0").attr("x2",Bo.rect_min_width).attr("y1",o).attr("y2",o),{titleNode:i,y:o}},Ro=function(t,e,n,r){var i=t.append("text").attr("class","req reqLabel").attr("id",e).attr("x",Bo.rect_padding).attr("y",r).attr("dominant-baseline","hanging"),a=0,o=[];return n.forEach((function(t){for(var e=t.length;e>30&&a<3;){var n=t.substring(0,30);e=(t=t.substring(30,t.length)).length,o[o.length]=n,a++}if(3==a){var r=o[o.length-1];o[o.length-1]=r.substring(0,r.length-4)+"..."}else o[o.length]=t;a=0})),o.forEach((function(t){i.append("tspan").attr("x",Bo.rect_padding).attr("dy",Bo.line_height).text(t)})),i},Po=function(t){return t.replace(/\s/g,"").replace(/\./g,"_")};const jo={draw:function(t,e,n,r){Bo=qt().requirement,r.db.clear(),r.parser.parse(t);var i,a=Bo.securityLevel;"sandbox"===a&&(i=(0,l.select)("#i"+e));var s="sandbox"===a?(0,l.select)(i.nodes()[0].contentDocument.body):(0,l.select)("body"),c=("sandbox"===a?i.nodes()[0].contentDocument:document,s.select("[id='".concat(e,"']")));!function(t,e){var n=t.append("defs").append("marker").attr("id",No.CONTAINS+"_line_ending").attr("refX",0).attr("refY",e.line_height/2).attr("markerWidth",e.line_height).attr("markerHeight",e.line_height).attr("orient","auto").append("g");n.append("circle").attr("cx",e.line_height/2).attr("cy",e.line_height/2).attr("r",e.line_height/2).attr("fill","none"),n.append("line").attr("x1",0).attr("x2",e.line_height).attr("y1",e.line_height/2).attr("y2",e.line_height/2).attr("stroke-width",1),n.append("line").attr("y1",0).attr("y2",e.line_height).attr("x1",e.line_height/2).attr("x2",e.line_height/2).attr("stroke-width",1),t.append("defs").append("marker").attr("id",No.ARROW+"_line_ending").attr("refX",e.line_height).attr("refY",.5*e.line_height).attr("markerWidth",e.line_height).attr("markerHeight",e.line_height).attr("orient","auto").append("path").attr("d","M0,0\n L".concat(e.line_height,",").concat(e.line_height/2,"\n M").concat(e.line_height,",").concat(e.line_height/2,"\n L0,").concat(e.line_height)).attr("stroke-width",1)}(c,Bo);var u,h,d,f=new(lr().Graph)({multigraph:!1,compound:!1,directed:!0}).setGraph({rankdir:Bo.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel((function(){return{}})),p=r.db.getRequirements(),g=r.db.getElements(),y=r.db.getRelationships();u=p,h=f,d=c,Object.keys(u).forEach((function(t){var e=u[t];t=Po(t),o.info("Added new requirement: ",t);var n=d.append("g").attr("id",t),r=Io(n,"req-"+t),i=[],a=Fo(n,t+"_title",["<<".concat(e.type,">>"),"".concat(e.name)]);i.push(a.titleNode);var s=Ro(n,t+"_body",["Id: ".concat(e.id),"Text: ".concat(e.text),"Risk: ".concat(e.risk),"Verification: ".concat(e.verifyMethod)],a.y);i.push(s);var c=r.node().getBBox();h.setNode(t,{width:c.width,height:c.height,shape:"rect",id:t})})),function(t,e,n){Object.keys(t).forEach((function(r){var i=t[r],a=Po(r),o=n.append("g").attr("id",a),s="element-"+a,c=Io(o,s),l=[],u=Fo(o,s+"_title",["<<Element>>","".concat(r)]);l.push(u.titleNode);var h=Ro(o,s+"_body",["Type: ".concat(i.type||"Not Specified"),"Doc Ref: ".concat(i.docRef||"None")],u.y);l.push(h);var d=c.node().getBBox();e.setNode(a,{width:d.width,height:d.height,shape:"rect",id:a})}))}(g,f,c),function(t,e){t.forEach((function(t){var n=Po(t.src),r=Po(t.dst);e.setEdge(n,r,{relationship:t})}))}(y,f),sr().layout(f),function(t,e){e.nodes().forEach((function(n){void 0!==n&&void 0!==e.node(n)&&(t.select("#"+n),t.select("#"+n).attr("transform","translate("+(e.node(n).x-e.node(n).width/2)+","+(e.node(n).y-e.node(n).height/2)+" )"))}))}(c,f),y.forEach((function(t){!function(t,e,n,r,i){var a=n.edge(Po(e.src),Po(e.dst)),o=(0,l.line)().x((function(t){return t.x})).y((function(t){return t.y})),s=t.insert("path","#"+r).attr("class","er relationshipLine").attr("d",o(a.points)).attr("fill","none");e.type==i.db.Relationships.CONTAINS?s.attr("marker-start","url("+oe.getUrl(Bo.arrowMarkerAbsolute)+"#"+e.type+"_line_ending)"):(s.attr("stroke-dasharray","10,7"),s.attr("marker-end","url("+oe.getUrl(Bo.arrowMarkerAbsolute)+"#"+Do.ARROW+"_line_ending)")),function(t,e,n,r){var i=e.node().getTotalLength(),a=e.node().getPointAtLength(.5*i),o="rel"+Lo;Lo++;var s=t.append("text").attr("class","req relationshipLabel").attr("id",o).attr("x",a.x).attr("y",a.y).attr("text-anchor","middle").attr("dominant-baseline","middle").text(r).node().getBBox();t.insert("rect","#"+o).attr("class","req reqLabelBox").attr("x",a.x-s.width/2).attr("y",a.y-s.height/2).attr("width",s.width).attr("height",s.height).attr("fill","white").attr("fill-opacity","85%")}(t,s,0,"<<".concat(e.type,">>"))}(c,t,f,e,r)}));var m=Bo.rect_padding,b=c.node().getBBox(),v=b.width+2*m,_=b.height+2*m;bn(c,0,v,Bo.useMaxWidth),c.attr("viewBox","".concat(b.x-m," ").concat(b.y-m," ").concat(v," ").concat(_)),wn(r.db,c,e)}};var zo,Yo=n(6876),Uo=n.n(Yo),$o=void 0,Wo={},qo=[],Ho=[],Vo=!1,Go=function(t,e,n,r){var i=Wo[t];i&&e===i.name&&null==n||(null!=n&&null!=n.text||(n={text:e,wrap:null,type:r}),null!=r&&null!=n.text||(n={text:e,wrap:null,type:r}),Wo[t]={name:e,description:n.text,wrap:void 0===n.wrap&&Ko()||!!n.wrap,prevActor:$o,links:{},properties:{},actorCnt:null,rectData:null,type:r||"participant"},$o&&Wo[$o]&&(Wo[$o].nextActor=t),$o=t)},Xo=function(t){var e,n=0;for(e=0;e<qo.length;e++)qo[e].type===Jo.ACTIVE_START&&qo[e].from.actor===t&&n++,qo[e].type===Jo.ACTIVE_END&&qo[e].from.actor===t&&n--;return n},Zo=function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{text:void 0,wrap:void 0},r=arguments.length>3?arguments[3]:void 0;if(r===Jo.ACTIVE_END){var i=Xo(t.actor);if(i<1){var a=new Error("Trying to inactivate an inactive participant ("+t.actor+")");throw a.hash={text:"->>-",token:"->>-",line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["'ACTIVE_PARTICIPANT'"]},a}}return qo.push({from:t,to:e,message:n.text,wrap:void 0===n.wrap&&Ko()||!!n.wrap,type:r}),!0},Qo=function(t){return Wo[t]},Ko=function(){return void 0!==zo?zo:qt().sequence.wrap},Jo={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},ts=function(t,e,n){var r={actor:t,placement:e,message:n.text,wrap:void 0===n.wrap&&Ko()||!!n.wrap},i=[].concat(t,t);Ho.push(r),qo.push({from:i[0],to:i[1],message:n.text,wrap:void 0===n.wrap&&Ko()||!!n.wrap,type:Jo.NOTE,placement:e})},es=function(t,e){var n=Qo(t);try{var r=te(e.text,qt());r=(r=r.replace(/&/g,"&")).replace(/=/g,"="),ns(n,JSON.parse(r))}catch(t){o.error("error while parsing actor link text",t)}};function ns(t,e){if(null==t.links)t.links=e;else for(var n in e)t.links[n]=e[n]}var rs=function(t,e){var n=Qo(t);try{var r=te(e.text,qt());is(n,JSON.parse(r))}catch(t){o.error("error while parsing actor properties text",t)}};function is(t,e){if(null==t.properties)t.properties=e;else for(var n in e)t.properties[n]=e[n]}var as=function(t,e){var n=Qo(t),r=document.getElementById(e.text);try{var i=r.innerHTML,a=JSON.parse(i);a.properties&&is(n,a.properties),a.links&&ns(n,a.links)}catch(t){o.error("error while parsing actor details text",t)}};const os={addActor:Go,addMessage:function(t,e,n,r){qo.push({from:t,to:e,message:n.text,wrap:void 0===n.wrap&&Ko()||!!n.wrap,answer:r})},addSignal:Zo,addLinks:es,addDetails:as,addProperties:rs,autoWrap:Ko,setWrap:function(t){zo=t},enableSequenceNumbers:function(){Vo=!0},disableSequenceNumbers:function(){Vo=!1},showSequenceNumbers:function(){return Vo},getMessages:function(){return qo},getActors:function(){return Wo},getActor:Qo,getActorKeys:function(){return Object.keys(Wo)},getActorProperty:function(t,e){if(void 0!==t&&void 0!==t.properties)return t.properties[e]},getAccTitle:fe,getDiagramTitle:me,setDiagramTitle:ye,parseDirective:function(t,e,n){Nl.parseDirective(this,t,e,n)},getConfig:function(){return qt().sequence},clear:function(){Wo={},qo=[],Vo=!1,he()},parseMessage:function(t){var e=t.trim(),n={text:e.replace(/^[:]?(?:no)?wrap:/,"").trim(),wrap:null!==e.match(/^[:]?wrap:/)||null===e.match(/^[:]?nowrap:/)&&void 0};return o.debug("parseMessage:",n),n},LINETYPE:Jo,ARROWTYPE:{FILLED:0,OPEN:1},PLACEMENT:{LEFTOF:0,RIGHTOF:1,OVER:2},addNote:ts,setAccTitle:de,apply:function t(e){if(e instanceof Array)e.forEach((function(e){t(e)}));else switch(e.type){case"sequenceIndex":qo.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":Go(e.actor,e.actor,e.description,"participant");break;case"addActor":Go(e.actor,e.actor,e.description,"actor");break;case"activeStart":case"activeEnd":Zo(e.actor,void 0,void 0,e.signalType);break;case"addNote":ts(e.actor,e.placement,e.text);break;case"addLinks":es(e.actor,e.text);break;case"addALink":!function(t,e){var n=Qo(t);try{var r={},i=te(e.text,qt()),a=i.indexOf("@"),s=(i=(i=i.replace(/&/g,"&")).replace(/=/g,"=")).slice(0,a-1).trim(),c=i.slice(a+1).trim();r[s]=c,ns(n,r)}catch(t){o.error("error while parsing actor link text",t)}}(e.actor,e.text);break;case"addProperties":rs(e.actor,e.text);break;case"addDetails":as(e.actor,e.text);break;case"addMessage":Zo(e.from,e.to,e.msg,e.signalType);break;case"loopStart":Zo(void 0,void 0,e.loopText,e.signalType);break;case"loopEnd":case"rectEnd":case"optEnd":case"altEnd":case"parEnd":case"criticalEnd":case"breakEnd":Zo(void 0,void 0,void 0,e.signalType);break;case"rectStart":Zo(void 0,void 0,e.color,e.signalType);break;case"optStart":Zo(void 0,void 0,e.optText,e.signalType);break;case"altStart":case"else":Zo(void 0,void 0,e.altText,e.signalType);break;case"setAccTitle":de(e.text);break;case"parStart":case"and":Zo(void 0,void 0,e.parText,e.signalType);break;case"criticalStart":Zo(void 0,void 0,e.criticalText,e.signalType);break;case"option":Zo(void 0,void 0,e.optionText,e.signalType);break;case"breakStart":Zo(void 0,void 0,e.breakText,e.signalType)}},setAccDescription:pe,getAccDescription:ge};var ss=[],cs=function(t,e){var n=t.append("rect");return n.attr("x",e.x),n.attr("y",e.y),n.attr("fill",e.fill),n.attr("stroke",e.stroke),n.attr("width",e.width),n.attr("height",e.height),n.attr("rx",e.rx),n.attr("ry",e.ry),void 0!==e.class&&n.attr("class",e.class),n},ls=function(t,e){var n;n=function(){var n=document.querySelectorAll(t);0!==n.length&&(n[0].addEventListener("mouseover",(function(){us("actor"+e+"_popup")})),n[0].addEventListener("mouseout",(function(){hs("actor"+e+"_popup")})))},ss.push(n)},us=function(t){var e=document.getElementById(t);null!=e&&(e.style.display="block")},hs=function(t){var e=document.getElementById(t);null!=e&&(e.style.display="none")},ds=function(t,e){var n=0,r=0,i=e.text.split(oe.lineBreakRegex),a=[],o=0,s=function(){return e.y};if(void 0!==e.valign&&void 0!==e.textMargin&&e.textMargin>0)switch(e.valign){case"top":case"start":s=function(){return Math.round(e.y+e.textMargin)};break;case"middle":case"center":s=function(){return Math.round(e.y+(n+r+e.textMargin)/2)};break;case"bottom":case"end":s=function(){return Math.round(e.y+(n+r+2*e.textMargin)-e.textMargin)}}if(void 0!==e.anchor&&void 0!==e.textMargin&&void 0!==e.width)switch(e.anchor){case"left":case"start":e.x=Math.round(e.x+e.textMargin),e.anchor="start",e.dominantBaseline="middle",e.alignmentBaseline="middle";break;case"middle":case"center":e.x=Math.round(e.x+e.width/2),e.anchor="middle",e.dominantBaseline="middle",e.alignmentBaseline="middle";break;case"right":case"end":e.x=Math.round(e.x+e.width-e.textMargin),e.anchor="end",e.dominantBaseline="middle",e.alignmentBaseline="middle"}for(var c=0;c<i.length;c++){var l=i[c];void 0!==e.textMargin&&0===e.textMargin&&void 0!==e.fontSize&&(o=c*e.fontSize);var u=t.append("text");if(u.attr("x",e.x),u.attr("y",s()),void 0!==e.anchor&&u.attr("text-anchor",e.anchor).attr("dominant-baseline",e.dominantBaseline).attr("alignment-baseline",e.alignmentBaseline),void 0!==e.fontFamily&&u.style("font-family",e.fontFamily),void 0!==e.fontSize&&u.style("font-size",e.fontSize),void 0!==e.fontWeight&&u.style("font-weight",e.fontWeight),void 0!==e.fill&&u.attr("fill",e.fill),void 0!==e.class&&u.attr("class",e.class),void 0!==e.dy?u.attr("dy",e.dy):0!==o&&u.attr("dy",o),e.tspan){var h=u.append("tspan");h.attr("x",e.x),void 0!==e.fill&&h.attr("fill",e.fill),h.text(l)}else u.text(l);void 0!==e.valign&&void 0!==e.textMargin&&e.textMargin>0&&(r+=(u._groups||u)[0][0].getBBox().height,n=r),a.push(u)}return a},fs=-1,ps=function(){function t(t,e,n,i,a,o,s){r(e.append("text").attr("x",n+a/2).attr("y",i+o/2+5).style("text-anchor","middle").text(t),s)}function e(t,e,n,i,a,o,s,c){for(var l=c.actorFontSize,u=c.actorFontFamily,h=c.actorFontWeight,d=l&&l.replace?l.replace("px",""):l,f=t.split(oe.lineBreakRegex),p=0;p<f.length;p++){var g=p*d-d*(f.length-1)/2,y=e.append("text").attr("x",n+a/2).attr("y",i).style("text-anchor","middle").style("font-size",l).style("font-weight",h).style("font-family",u);y.append("tspan").attr("x",n+a/2).attr("dy",g).text(f[p]),y.attr("y",i+o/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),r(y,s)}}function n(t,n,i,a,o,s,c,l){var u=n.append("switch"),h=u.append("foreignObject").attr("x",i).attr("y",a).attr("width",o).attr("height",s).append("xhtml:div").style("display","table").style("height","100%").style("width","100%");h.append("div").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(t),e(t,u,i,a,o,s,c,l),r(h,c)}function r(t,e){for(var n in e)e.hasOwnProperty(n)&&t.attr(n,e[n])}return function(r){return"fo"===r.textPlacement?n:"old"===r.textPlacement?t:e}}(),gs=function(){function t(t,e,n,i,a,o,s){r(e.append("text").attr("x",n).attr("y",i).style("text-anchor","start").text(t),s)}function e(t,e,n,i,a,o,s,c){for(var l=c.actorFontSize,u=c.actorFontFamily,h=c.actorFontWeight,d=t.split(oe.lineBreakRegex),f=0;f<d.length;f++){var p=f*l-l*(d.length-1)/2,g=e.append("text").attr("x",n).attr("y",i).style("text-anchor","start").style("font-size",l).style("font-weight",h).style("font-family",u);g.append("tspan").attr("x",n).attr("dy",p).text(d[f]),g.attr("y",i+o/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),r(g,s)}}function n(t,n,i,a,o,s,c,l){var u=n.append("switch"),h=u.append("foreignObject").attr("x",i).attr("y",a).attr("width",o).attr("height",s).append("xhtml:div").style("display","table").style("height","100%").style("width","100%");h.append("div").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(t),e(t,u,i,a,0,s,c,l),r(h,c)}function r(t,e){for(var n in e)e.hasOwnProperty(n)&&t.attr(n,e[n])}return function(r){return"fo"===r.textPlacement?n:"old"===r.textPlacement?t:e}}();const ys=cs,ms=function(t,e,n){switch(e.type){case"actor":return function(t,e,n){var r=e.x+e.width/2;0===e.y&&(fs++,t.append("line").attr("id","actor"+fs).attr("x1",r).attr("y1",80).attr("x2",r).attr("y2",2e3).attr("class","actor-line").attr("stroke-width","0.5px").attr("stroke","#999"));var i=t.append("g");i.attr("class","actor-man");var a={x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0};a.x=e.x,a.y=e.y,a.fill="#eaeaea",a.width=e.width,a.height=e.height,a.class="actor",a.rx=3,a.ry=3,i.append("line").attr("id","actor-man-torso"+fs).attr("x1",r).attr("y1",e.y+25).attr("x2",r).attr("y2",e.y+45),i.append("line").attr("id","actor-man-arms"+fs).attr("x1",r-18).attr("y1",e.y+33).attr("x2",r+18).attr("y2",e.y+33),i.append("line").attr("x1",r-18).attr("y1",e.y+60).attr("x2",r).attr("y2",e.y+45),i.append("line").attr("x1",r).attr("y1",e.y+45).attr("x2",r+16).attr("y2",e.y+60);var o=i.append("circle");o.attr("cx",e.x+e.width/2),o.attr("cy",e.y+10),o.attr("r",15),o.attr("width",e.width),o.attr("height",e.height);var s=i.node().getBBox();return e.height=s.height,ps(n)(e.description,i,a.x,a.y+35,a.width,a.height,{class:"actor"},n),e.height}(t,e,n);case"participant":return function(t,e,n){var r=e.x+e.width/2,i=t.append("g"),a=i;0===e.y&&(fs++,a.append("line").attr("id","actor"+fs).attr("x1",r).attr("y1",5).attr("x2",r).attr("y2",2e3).attr("class","actor-line").attr("stroke-width","0.5px").attr("stroke","#999"),a=i.append("g"),e.actorCnt=fs,null!=e.links&&(a.attr("id","root-"+fs),ls("#root-"+fs,fs)));var o={x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0},s="actor";null!=e.properties&&e.properties.class?s=e.properties.class:o.fill="#eaeaea",o.x=e.x,o.y=e.y,o.width=e.width,o.height=e.height,o.class=s,o.rx=3,o.ry=3;var c=cs(a,o);if(e.rectData=o,null!=e.properties&&e.properties.icon){var l=e.properties.icon.trim();"@"===l.charAt(0)?function(t,e,n,r){var i=t.append("use");i.attr("x",e),i.attr("y",n);var a=(0,Ie.N)(r);i.attr("xlink:href","#"+a)}(a,o.x+o.width-20,o.y+10,l.substr(1)):function(t,e,n,r){var i=t.append("image");i.attr("x",e),i.attr("y",n);var a=(0,Ie.N)(r);i.attr("xlink:href",a)}(a,o.x+o.width-20,o.y+10,l)}ps(n)(e.description,a,o.x,o.y,o.width,o.height,{class:"actor"},n);var u=e.height;if(c.node){var h=c.node().getBBox();e.height=h.height,u=h.height}return u}(t,e,n)}},bs=function(t,e,n,r,i){if(void 0===e.links||null===e.links||0===Object.keys(e.links).length)return{height:0,width:0};var a=e.links,o=e.actorCnt,s=e.rectData,c="none";i&&(c="block !important");var l=t.append("g");l.attr("id","actor"+o+"_popup"),l.attr("class","actorPopupMenu"),l.attr("display",c),ls("#actor"+o+"_popup",o);var u="";void 0!==s.class&&(u=" "+s.class);var h=s.width>n?s.width:n,d=l.append("rect");if(d.attr("class","actorPopupMenuPanel"+u),d.attr("x",s.x),d.attr("y",s.height),d.attr("fill",s.fill),d.attr("stroke",s.stroke),d.attr("width",h),d.attr("height",s.height),d.attr("rx",s.rx),d.attr("ry",s.ry),null!=a){var f=20;for(var p in a){var g=l.append("a"),y=(0,Ie.N)(a[p]);g.attr("xlink:href",y),g.attr("target","_blank"),gs(r)(p,g,s.x+10,s.height+f,h,20,{class:"actor"},r),f+=30}}return d.attr("height",f),{height:s.height+f,width:h}},vs=function(t){return t.append("g")},_s=function(t,e,n,r){var i=r.boxMargin,a=r.boxTextMargin,o=r.labelBoxHeight,s=r.labelBoxWidth,c=r.messageFontFamily,l=r.messageFontSize,u=r.messageFontWeight,h=t.append("g"),d=function(t,e,n,r){return h.append("line").attr("x1",t).attr("y1",e).attr("x2",n).attr("y2",r).attr("class","loopLine")};d(e.startx,e.starty,e.stopx,e.starty),d(e.stopx,e.starty,e.stopx,e.stopy),d(e.startx,e.stopy,e.stopx,e.stopy),d(e.startx,e.starty,e.startx,e.stopy),void 0!==e.sections&&e.sections.forEach((function(t){d(e.startx,t.y,e.stopx,t.y).style("stroke-dasharray","3, 3")}));var f={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};f.text=n,f.x=e.startx,f.y=e.starty,f.fontFamily=c,f.fontSize=l,f.fontWeight=u,f.anchor="middle",f.valign="middle",f.tspan=!1,f.width=s||50,f.height=o||20,f.textMargin=a,f.class="labelText",function(t,e){var n=t.append("polygon");n.attr("points",function(t,e,n,r,i){return t+","+e+" "+(t+n)+","+e+" "+(t+n)+","+(e+r-7)+" "+(t+n-8.4)+","+(e+r)+" "+t+","+(e+r)}(e.x,e.y,e.width,e.height)),n.attr("class","labelBox"),e.y=e.y+e.height/2,ds(t,e)}(h,f),(f={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}).text=e.title,f.x=e.startx+s/2+(e.stopx-e.startx)/2,f.y=e.starty+i+a,f.anchor="middle",f.valign="middle",f.textMargin=a,f.class="loopText",f.fontFamily=c,f.fontSize=l,f.fontWeight=u,f.wrap=!0;var p=ds(h,f);return void 0!==e.sectionTitles&&e.sectionTitles.forEach((function(t,n){if(t.message){f.text=t.message,f.x=e.startx+(e.stopx-e.startx)/2,f.y=e.sections[n].y+i+a,f.class="loopText",f.anchor="middle",f.valign="middle",f.tspan=!1,f.fontFamily=c,f.fontSize=l,f.fontWeight=u,f.wrap=e.wrap,p=ds(h,f);var r=Math.round(p.map((function(t){return(t._groups||t)[0][0].getBBox().height})).reduce((function(t,e){return t+e})));e.sections[n].height+=r-(i+a)}})),e.height=Math.round(e.stopy-e.starty),h},xs=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}},ks=function(){return{x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0}};Ie.N;var ws={},Es={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],activations:[],models:{getHeight:function(){return Math.max.apply(null,0===this.actors.length?[0]:this.actors.map((function(t){return t.height||0})))+(0===this.loops.length?0:this.loops.map((function(t){return t.height||0})).reduce((function(t,e){return t+e})))+(0===this.messages.length?0:this.messages.map((function(t){return t.height||0})).reduce((function(t,e){return t+e})))+(0===this.notes.length?0:this.notes.map((function(t){return t.height||0})).reduce((function(t,e){return t+e})))},clear:function(){this.actors=[],this.loops=[],this.messages=[],this.notes=[]},addActor:function(t){this.actors.push(t)},addLoop:function(t){this.loops.push(t)},addMessage:function(t){this.messages.push(t)},addNote:function(t){this.notes.push(t)},lastActor:function(){return this.actors[this.actors.length-1]},lastLoop:function(){return this.loops[this.loops.length-1]},lastMessage:function(){return this.messages[this.messages.length-1]},lastNote:function(){return this.notes[this.notes.length-1]},actors:[],loops:[],messages:[],notes:[]},init: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,Os(qt())},updateVal:function(t,e,n,r){void 0===t[e]?t[e]=n:t[e]=r(n,t[e])},updateBounds:function(t,e,n,r){var i=this,a=0;function o(o){return function(s){a++;var c=i.sequenceItems.length-a+1;i.updateVal(s,"starty",e-c*ws.boxMargin,Math.min),i.updateVal(s,"stopy",r+c*ws.boxMargin,Math.max),i.updateVal(Es.data,"startx",t-c*ws.boxMargin,Math.min),i.updateVal(Es.data,"stopx",n+c*ws.boxMargin,Math.max),"activation"!==o&&(i.updateVal(s,"startx",t-c*ws.boxMargin,Math.min),i.updateVal(s,"stopx",n+c*ws.boxMargin,Math.max),i.updateVal(Es.data,"starty",e-c*ws.boxMargin,Math.min),i.updateVal(Es.data,"stopy",r+c*ws.boxMargin,Math.max))}}this.sequenceItems.forEach(o()),this.activations.forEach(o("activation"))},insert:function(t,e,n,r){var i=Math.min(t,n),a=Math.max(t,n),o=Math.min(e,r),s=Math.max(e,r);this.updateVal(Es.data,"startx",i,Math.min),this.updateVal(Es.data,"starty",o,Math.min),this.updateVal(Es.data,"stopx",a,Math.max),this.updateVal(Es.data,"stopy",s,Math.max),this.updateBounds(i,o,a,s)},newActivation:function(t,e,n){var r=n[t.from.actor],i=Ns(t.from.actor).length||0,a=r.x+r.width/2+(i-1)*ws.activationWidth/2;this.activations.push({startx:a,starty:this.verticalPos+2,stopx:a+ws.activationWidth,stopy:void 0,actor:t.from.actor,anchored:vs(e)})},endActivation:function(t){var e=this.activations.map((function(t){return t.actor})).lastIndexOf(t.from.actor);return this.activations.splice(e,1)[0]},createLoop:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{message:void 0,wrap:!1,width:void 0},e=arguments.length>1?arguments[1]:void 0;return{startx:void 0,starty:this.verticalPos,stopx:void 0,stopy:void 0,title:t.message,wrap:t.wrap,width:t.width,height:0,fill:e}},newLoop:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{message:void 0,wrap:!1,width:void 0},e=arguments.length>1?arguments[1]:void 0;this.sequenceItems.push(this.createLoop(t,e))},endLoop:function(){return this.sequenceItems.pop()},addSectionToLoop:function(t){var e=this.sequenceItems.pop();e.sections=e.sections||[],e.sectionTitles=e.sectionTitles||[],e.sections.push({y:Es.getVerticalPos(),height:0}),e.sectionTitles.push(t),this.sequenceItems.push(e)},bumpVerticalPos:function(t){this.verticalPos=this.verticalPos+t,this.data.stopy=this.verticalPos},getVerticalPos:function(){return this.verticalPos},getBounds:function(){return{bounds:this.data,models:this.models}}},Ts=function(t){return{fontFamily:t.messageFontFamily,fontSize:t.messageFontSize,fontWeight:t.messageFontWeight}},Cs=function(t){return{fontFamily:t.noteFontFamily,fontSize:t.noteFontSize,fontWeight:t.noteFontWeight}},Ss=function(t){return{fontFamily:t.actorFontFamily,fontSize:t.actorFontSize,fontWeight:t.actorFontWeight}},As=function(t,e,n,r,i,a){if(!0===i.hideUnusedParticipants){var o=new Set;a.forEach((function(t){o.add(t.from),o.add(t.to)})),n=n.filter((function(t){return o.has(t)}))}for(var s=0,c=0,l=0,u=0;u<n.length;u++){var h=e[n[u]];h.width=h.width||ws.width,h.height=Math.max(h.height||ws.height,ws.height),h.margin=h.margin||ws.actorMargin,h.x=s+c,h.y=r;var d=ms(t,h,ws);l=Math.max(l,d),Es.insert(h.x,r,h.x+h.width,h.height),s+=h.width,c+=h.margin,Es.models.addActor(h)}Es.bumpVerticalPos(l)},Ms=function(t,e,n,r){for(var i=0,a=0,o=0;o<n.length;o++){var s=e[n[o]],c=Ls(s),l=bs(t,s,c,ws,ws.forceMenus);l.height>i&&(i=l.height),l.width+s.x>a&&(a=l.width+s.x)}return{maxHeight:i,maxWidth:a}},Os=function(t){Q(ws,t),t.fontFamily&&(ws.actorFontFamily=ws.noteFontFamily=ws.messageFontFamily=t.fontFamily),t.fontSize&&(ws.actorFontSize=ws.noteFontSize=ws.messageFontSize=t.fontSize),t.fontWeight&&(ws.actorFontWeight=ws.noteFontWeight=ws.messageFontWeight=t.fontWeight)},Ns=function(t){return Es.activations.filter((function(e){return e.actor===t}))},Ds=function(t,e){var n=e[t],r=Ns(t);return[r.reduce((function(t,e){return Math.min(t,e.startx)}),n.x+n.width/2),r.reduce((function(t,e){return Math.max(t,e.stopx)}),n.x+n.width/2)]};function Bs(t,e,n,r,i){Es.bumpVerticalPos(n);var a=r;if(e.id&&e.message&&t[e.id]){var s=t[e.id].width,c=Ts(ws);e.message=kn.wrapLabel("[".concat(e.message,"]"),s-2*ws.wrapPadding,c),e.width=s,e.wrap=!0;var l=kn.calculateTextDimensions(e.message,c),u=Math.max(l.height,ws.labelBoxHeight);a=r+u,o.debug("".concat(u," - ").concat(e.message))}i(e),Es.bumpVerticalPos(a)}var Ls=function(t){var e=0,n=Ss(ws);for(var r in t.links){var i=kn.calculateTextDimensions(r,n).width+2*ws.wrapPadding+2*ws.boxMargin;e<i&&(e=i)}return e};const Is={bounds:Es,drawActors:As,drawActorsPopup:Ms,setConf:Os,draw:function(t,e,n,r){ws=qt().sequence;var i,a=qt().securityLevel;"sandbox"===a&&(i=(0,l.select)("#i"+e));var s="sandbox"===a?(0,l.select)(i.nodes()[0].contentDocument.body):(0,l.select)("body");"sandbox"===a?i.nodes()[0].contentDocument:document;Es.init(),o.debug(r.db);var c="sandbox"===a?s.select('[id="'.concat(e,'"]')):(0,l.select)('[id="'.concat(e,'"]')),u=r.db.getActors(),h=r.db.getActorKeys(),d=r.db.getMessages(),f=r.db.getDiagramTitle(),p=function(t,e,n){var r={};return e.forEach((function(e){if(t[e.to]&&t[e.from]){var i=t[e.to];if(e.placement===n.db.PLACEMENT.LEFTOF&&!i.prevActor)return;if(e.placement===n.db.PLACEMENT.RIGHTOF&&!i.nextActor)return;var a=void 0!==e.placement,o=!a,s=a?Cs(ws):Ts(ws),c=e.wrap?kn.wrapLabel(e.message,ws.width-2*ws.wrapPadding,s):e.message,l=kn.calculateTextDimensions(c,s).width+2*ws.wrapPadding;o&&e.from===i.nextActor?r[e.to]=Math.max(r[e.to]||0,l):o&&e.from===i.prevActor?r[e.from]=Math.max(r[e.from]||0,l):o&&e.from===e.to?(r[e.from]=Math.max(r[e.from]||0,l/2),r[e.to]=Math.max(r[e.to]||0,l/2)):e.placement===n.db.PLACEMENT.RIGHTOF?r[e.from]=Math.max(r[e.from]||0,l):e.placement===n.db.PLACEMENT.LEFTOF?r[i.prevActor]=Math.max(r[i.prevActor]||0,l):e.placement===n.db.PLACEMENT.OVER&&(i.prevActor&&(r[i.prevActor]=Math.max(r[i.prevActor]||0,l/2)),i.nextActor&&(r[e.from]=Math.max(r[e.from]||0,l/2)))}})),o.debug("maxMessageWidthPerActor:",r),r}(u,d,r);ws.height=function(t,e){var n=0;for(var r in Object.keys(t).forEach((function(e){var r=t[e];r.wrap&&(r.description=kn.wrapLabel(r.description,ws.width-2*ws.wrapPadding,Ss(ws)));var i=kn.calculateTextDimensions(r.description,Ss(ws));r.width=r.wrap?ws.width:Math.max(ws.width,i.width+2*ws.wrapPadding),r.height=r.wrap?Math.max(i.height,ws.height):ws.height,n=Math.max(n,r.height)})),e){var i=t[r];if(i){var a=t[i.nextActor];if(a){var o=e[r]+ws.actorMargin-i.width/2-a.width/2;i.margin=Math.max(o,ws.actorMargin)}}}return Math.max(n,ws.height)}(u,p),function(t){t.append("defs").append("symbol").attr("id","computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")}(c),function(t){t.append("defs").append("symbol").attr("id","database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")}(c),function(t){t.append("defs").append("symbol").attr("id","clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")}(c),As(c,u,h,0,ws,d);var g=function(t,e,n,r){var i,a,s,c={},l=[];return t.forEach((function(t){switch(t.id=kn.random({length:10}),t.type){case r.db.LINETYPE.LOOP_START:case r.db.LINETYPE.ALT_START:case r.db.LINETYPE.OPT_START:case r.db.LINETYPE.PAR_START:case r.db.LINETYPE.CRITICAL_START:case r.db.LINETYPE.BREAK_START:l.push({id:t.id,msg:t.message,from:Number.MAX_SAFE_INTEGER,to:Number.MIN_SAFE_INTEGER,width:0});break;case r.db.LINETYPE.ALT_ELSE:case r.db.LINETYPE.PAR_AND:case r.db.LINETYPE.CRITICAL_OPTION:t.message&&(i=l.pop(),c[i.id]=i,c[t.id]=i,l.push(i));break;case r.db.LINETYPE.LOOP_END:case r.db.LINETYPE.ALT_END:case r.db.LINETYPE.OPT_END:case r.db.LINETYPE.PAR_END:case r.db.LINETYPE.CRITICAL_END:case r.db.LINETYPE.BREAK_END:i=l.pop(),c[i.id]=i;break;case r.db.LINETYPE.ACTIVE_START:var n=e[t.from?t.from.actor:t.to.actor],u=Ns(t.from?t.from.actor:t.to.actor).length,h=n.x+n.width/2+(u-1)*ws.activationWidth/2,d={startx:h,stopx:h+ws.activationWidth,actor:t.from.actor,enabled:!0};Es.activations.push(d);break;case r.db.LINETYPE.ACTIVE_END:var f=Es.activations.map((function(t){return t.actor})).lastIndexOf(t.from.actor);delete Es.activations.splice(f,1)[0]}void 0!==t.placement?(a=function(t,e,n){var r=e[t.from].x,i=e[t.to].x,a=t.wrap&&t.message,s=kn.calculateTextDimensions(a?kn.wrapLabel(t.message,ws.width,Cs(ws)):t.message,Cs(ws)),c={width:a?ws.width:Math.max(ws.width,s.width+2*ws.noteMargin),height:0,startx:e[t.from].x,stopx:0,starty:0,stopy:0,message:t.message};return t.placement===n.db.PLACEMENT.RIGHTOF?(c.width=a?Math.max(ws.width,s.width):Math.max(e[t.from].width/2+e[t.to].width/2,s.width+2*ws.noteMargin),c.startx=r+(e[t.from].width+ws.actorMargin)/2):t.placement===n.db.PLACEMENT.LEFTOF?(c.width=a?Math.max(ws.width,s.width+2*ws.noteMargin):Math.max(e[t.from].width/2+e[t.to].width/2,s.width+2*ws.noteMargin),c.startx=r-c.width+(e[t.from].width-ws.actorMargin)/2):t.to===t.from?(s=kn.calculateTextDimensions(a?kn.wrapLabel(t.message,Math.max(ws.width,e[t.from].width),Cs(ws)):t.message,Cs(ws)),c.width=a?Math.max(ws.width,e[t.from].width):Math.max(e[t.from].width,ws.width,s.width+2*ws.noteMargin),c.startx=r+(e[t.from].width-c.width)/2):(c.width=Math.abs(r+e[t.from].width/2-(i+e[t.to].width/2))+ws.actorMargin,c.startx=r<i?r+e[t.from].width/2-ws.actorMargin/2:i+e[t.to].width/2-ws.actorMargin/2),a&&(c.message=kn.wrapLabel(t.message,c.width-2*ws.wrapPadding,Cs(ws))),o.debug("NM:[".concat(c.startx,",").concat(c.stopx,",").concat(c.starty,",").concat(c.stopy,":").concat(c.width,",").concat(c.height,"=").concat(t.message,"]")),c}(t,e,r),t.noteModel=a,l.forEach((function(t){(i=t).from=Math.min(i.from,a.startx),i.to=Math.max(i.to,a.startx+a.width),i.width=Math.max(i.width,Math.abs(i.from-i.to))-ws.labelBoxWidth}))):(s=function(t,e,n){var r=!1;if([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].includes(t.type)&&(r=!0),!r)return{};var i=Ds(t.from,e),a=Ds(t.to,e),o=i[0]<=a[0]?1:0,s=i[0]<a[0]?0:1,c=i.concat(a),l=Math.abs(a[s]-i[o]);t.wrap&&t.message&&(t.message=kn.wrapLabel(t.message,Math.max(l+2*ws.wrapPadding,ws.width),Ts(ws)));var u=kn.calculateTextDimensions(t.message,Ts(ws));return{width:Math.max(t.wrap?0:u.width+2*ws.wrapPadding,l+2*ws.wrapPadding,ws.width),height:0,startx:i[o],stopx:a[s],starty:0,stopy:0,message:t.message,type:t.type,wrap:t.wrap,fromBounds:Math.min.apply(null,c),toBounds:Math.max.apply(null,c)}}(t,e,r),t.msgModel=s,s.startx&&s.stopx&&l.length>0&&l.forEach((function(n){if(i=n,s.startx===s.stopx){var r=e[t.from],a=e[t.to];i.from=Math.min(r.x-s.width/2,r.x-r.width/2,i.from),i.to=Math.max(a.x+s.width/2,a.x+r.width/2,i.to),i.width=Math.max(i.width,Math.abs(i.to-i.from))-ws.labelBoxWidth}else i.from=Math.min(s.startx,i.from),i.to=Math.max(s.stopx,i.to),i.width=Math.max(i.width,s.width)-ws.labelBoxWidth})))})),Es.activations=[],o.debug("Loop type widths:",c),c}(d,u,0,r);(function(t){t.append("defs").append("marker").attr("id","arrowhead").attr("refX",9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z")})(c),function(t){var e=t.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",16).attr("refY",4);e.append("path").attr("fill","black").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 9,2 V 6 L16,4 Z"),e.append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 0,1 L 6,7 M 6,1 L 0,7")}(c),function(t){t.append("defs").append("marker").attr("id","filled-head").attr("refX",18).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")}(c),function(t){t.append("defs").append("marker").attr("id","sequencenumber").attr("refX",15).attr("refY",15).attr("markerWidth",60).attr("markerHeight",40).attr("orient","auto").append("circle").attr("cx",15).attr("cy",15).attr("r",6)}(c);var y=1,m=1,b=Array();d.forEach((function(t){var e,n,i;switch(t.type){case r.db.LINETYPE.NOTE:n=t.noteModel,function(t,e){Es.bumpVerticalPos(ws.boxMargin),e.height=ws.boxMargin,e.starty=Es.getVerticalPos();var n=ks();n.x=e.startx,n.y=e.starty,n.width=e.width||ws.width,n.class="note";var r=t.append("g"),i=ys(r,n),a=xs();a.x=e.startx,a.y=e.starty,a.width=n.width,a.dy="1em",a.text=e.message,a.class="noteText",a.fontFamily=ws.noteFontFamily,a.fontSize=ws.noteFontSize,a.fontWeight=ws.noteFontWeight,a.anchor=ws.noteAlign,a.textMargin=ws.noteMargin,a.valign="center";var o=ds(r,a),s=Math.round(o.map((function(t){return(t._groups||t)[0][0].getBBox().height})).reduce((function(t,e){return t+e})));i.attr("height",s+2*ws.noteMargin),e.height+=s+2*ws.noteMargin,Es.bumpVerticalPos(s+2*ws.noteMargin),e.stopy=e.starty+s+2*ws.noteMargin,e.stopx=e.startx+n.width,Es.insert(e.startx,e.starty,e.stopx,e.stopy),Es.models.addNote(e)}(c,n);break;case r.db.LINETYPE.ACTIVE_START:Es.newActivation(t,c,u);break;case r.db.LINETYPE.ACTIVE_END:!function(t,e){var n=Es.endActivation(t);n.starty+18>e&&(n.starty=e-6,e+=12),function(t,e,n,r,i){var a={x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0},o=e.anchored;a.x=e.startx,a.y=e.starty,a.class="activation"+i%3,a.width=e.stopx-e.startx,a.height=n-e.starty,cs(o,a)}(0,n,e,0,Ns(t.from.actor).length),Es.insert(n.startx,e-10,n.stopx,e)}(t,Es.getVerticalPos());break;case r.db.LINETYPE.LOOP_START:Bs(g,t,ws.boxMargin,ws.boxMargin+ws.boxTextMargin,(function(t){return Es.newLoop(t)}));break;case r.db.LINETYPE.LOOP_END:e=Es.endLoop(),_s(c,e,"loop",ws),Es.bumpVerticalPos(e.stopy-Es.getVerticalPos()),Es.models.addLoop(e);break;case r.db.LINETYPE.RECT_START:Bs(g,t,ws.boxMargin,ws.boxMargin,(function(t){return Es.newLoop(void 0,t.message)}));break;case r.db.LINETYPE.RECT_END:e=Es.endLoop(),function(t,e){cs(t,{x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,class:"rect"}).lower()}(c,e),Es.models.addLoop(e),Es.bumpVerticalPos(e.stopy-Es.getVerticalPos());break;case r.db.LINETYPE.OPT_START:Bs(g,t,ws.boxMargin,ws.boxMargin+ws.boxTextMargin,(function(t){return Es.newLoop(t)}));break;case r.db.LINETYPE.OPT_END:e=Es.endLoop(),_s(c,e,"opt",ws),Es.bumpVerticalPos(e.stopy-Es.getVerticalPos()),Es.models.addLoop(e);break;case r.db.LINETYPE.ALT_START:Bs(g,t,ws.boxMargin,ws.boxMargin+ws.boxTextMargin,(function(t){return Es.newLoop(t)}));break;case r.db.LINETYPE.ALT_ELSE:Bs(g,t,ws.boxMargin+ws.boxTextMargin,ws.boxMargin,(function(t){return Es.addSectionToLoop(t)}));break;case r.db.LINETYPE.ALT_END:e=Es.endLoop(),_s(c,e,"alt",ws),Es.bumpVerticalPos(e.stopy-Es.getVerticalPos()),Es.models.addLoop(e);break;case r.db.LINETYPE.PAR_START:Bs(g,t,ws.boxMargin,ws.boxMargin+ws.boxTextMargin,(function(t){return Es.newLoop(t)}));break;case r.db.LINETYPE.PAR_AND:Bs(g,t,ws.boxMargin+ws.boxTextMargin,ws.boxMargin,(function(t){return Es.addSectionToLoop(t)}));break;case r.db.LINETYPE.PAR_END:e=Es.endLoop(),_s(c,e,"par",ws),Es.bumpVerticalPos(e.stopy-Es.getVerticalPos()),Es.models.addLoop(e);break;case r.db.LINETYPE.AUTONUMBER:y=t.message.start||y,m=t.message.step||m,t.message.visible?r.db.enableSequenceNumbers():r.db.disableSequenceNumbers();break;case r.db.LINETYPE.CRITICAL_START:Bs(g,t,ws.boxMargin,ws.boxMargin+ws.boxTextMargin,(function(t){return Es.newLoop(t)}));break;case r.db.LINETYPE.CRITICAL_OPTION:Bs(g,t,ws.boxMargin+ws.boxTextMargin,ws.boxMargin,(function(t){return Es.addSectionToLoop(t)}));break;case r.db.LINETYPE.CRITICAL_END:e=Es.endLoop(),_s(c,e,"critical",ws),Es.bumpVerticalPos(e.stopy-Es.getVerticalPos()),Es.models.addLoop(e);break;case r.db.LINETYPE.BREAK_START:Bs(g,t,ws.boxMargin,ws.boxMargin+ws.boxTextMargin,(function(t){return Es.newLoop(t)}));break;case r.db.LINETYPE.BREAK_END:e=Es.endLoop(),_s(c,e,"break",ws),Es.bumpVerticalPos(e.stopy-Es.getVerticalPos()),Es.models.addLoop(e);break;default:try{(i=t.msgModel).starty=Es.getVerticalPos(),i.sequenceIndex=y,i.sequenceVisible=r.db.showSequenceNumbers();var a=function(t,e){Es.bumpVerticalPos(10);var n,r=e.startx,i=e.stopx,a=e.message,o=oe.splitBreaks(a).length,s=kn.calculateTextDimensions(a,Ts(ws)),c=s.height/o;e.height+=c,Es.bumpVerticalPos(c);var l=s.height-10,u=s.width;if(r===i){n=Es.getVerticalPos()+l,ws.rightAngles||(l+=ws.boxMargin,n=Es.getVerticalPos()+l),l+=30;var h=Math.max(u/2,ws.width/2);Es.insert(r-h,Es.getVerticalPos()-10+l,i+h,Es.getVerticalPos()+30+l)}else l+=ws.boxMargin,n=Es.getVerticalPos()+l,Es.insert(r,n-10,i,n);return Es.bumpVerticalPos(l),e.height+=l,e.stopy=e.starty+e.height,Es.insert(e.fromBounds,e.starty,e.toBounds,e.stopy),n}(0,i);b.push({messageModel:i,lineStarty:a}),Es.models.addMessage(i)}catch(t){o.error("error while drawing message",t)}}[r.db.LINETYPE.SOLID_OPEN,r.db.LINETYPE.DOTTED_OPEN,r.db.LINETYPE.SOLID,r.db.LINETYPE.DOTTED,r.db.LINETYPE.SOLID_CROSS,r.db.LINETYPE.DOTTED_CROSS,r.db.LINETYPE.SOLID_POINT,r.db.LINETYPE.DOTTED_POINT].includes(t.type)&&(y+=m)})),b.forEach((function(t){return function(t,e,n,r){var i=e.startx,a=e.stopx,o=e.starty,s=e.message,c=e.type,l=e.sequenceIndex,u=e.sequenceVisible,h=kn.calculateTextDimensions(s,Ts(ws)),d=xs();d.x=i,d.y=o+10,d.width=a-i,d.class="messageText",d.dy="1em",d.text=s,d.fontFamily=ws.messageFontFamily,d.fontSize=ws.messageFontSize,d.fontWeight=ws.messageFontWeight,d.anchor=ws.messageAlign,d.valign="center",d.textMargin=ws.wrapPadding,d.tspan=!1,ds(t,d);var f,p=h.width;i===a?f=ws.rightAngles?t.append("path").attr("d","M ".concat(i,",").concat(n," H ").concat(i+Math.max(ws.width/2,p/2)," V ").concat(n+25," H ").concat(i)):t.append("path").attr("d","M "+i+","+n+" C "+(i+60)+","+(n-10)+" "+(i+60)+","+(n+30)+" "+i+","+(n+20)):((f=t.append("line")).attr("x1",i),f.attr("y1",n),f.attr("x2",a),f.attr("y2",n)),c===r.db.LINETYPE.DOTTED||c===r.db.LINETYPE.DOTTED_CROSS||c===r.db.LINETYPE.DOTTED_POINT||c===r.db.LINETYPE.DOTTED_OPEN?(f.style("stroke-dasharray","3, 3"),f.attr("class","messageLine1")):f.attr("class","messageLine0");var g="";ws.arrowMarkerAbsolute&&(g=(g=(g=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search).replace(/\(/g,"\\(")).replace(/\)/g,"\\)")),f.attr("stroke-width",2),f.attr("stroke","none"),f.style("fill","none"),c!==r.db.LINETYPE.SOLID&&c!==r.db.LINETYPE.DOTTED||f.attr("marker-end","url("+g+"#arrowhead)"),c!==r.db.LINETYPE.SOLID_POINT&&c!==r.db.LINETYPE.DOTTED_POINT||f.attr("marker-end","url("+g+"#filled-head)"),c!==r.db.LINETYPE.SOLID_CROSS&&c!==r.db.LINETYPE.DOTTED_CROSS||f.attr("marker-end","url("+g+"#crosshead)"),(u||ws.showSequenceNumbers)&&(f.attr("marker-start","url("+g+"#sequencenumber)"),t.append("text").attr("x",i).attr("y",n+4).attr("font-family","sans-serif").attr("font-size","12px").attr("text-anchor","middle").attr("class","sequenceNumber").text(l))}(c,t.messageModel,t.lineStarty,r)})),ws.mirrorActors&&(Es.bumpVerticalPos(2*ws.boxMargin),As(c,u,h,Es.getVerticalPos(),ws,d),Es.bumpVerticalPos(ws.boxMargin),function(t,e){t.selectAll&&t.selectAll(".actor-line").attr("class","200").attr("y2",e-55)}(c,Es.getVerticalPos()));var v=Ms(c,u,h),_=Es.getBounds().bounds;o.debug("For line height fix Querying: #"+e+" .actor-line"),(0,l.selectAll)("#"+e+" .actor-line").attr("y2",_.stopy);var x=_.stopy-_.starty;x<v.maxHeight&&(x=v.maxHeight);var k=x+2*ws.diagramMarginY;ws.mirrorActors&&(k=k-ws.boxMargin+ws.bottomMarginAdj);var w=_.stopx-_.startx;w<v.maxWidth&&(w=v.maxWidth);var E=w+2*ws.diagramMarginX;f&&c.append("text").text(f).attr("x",(_.stopx-_.startx)/2-2*ws.diagramMarginX).attr("y",-25),bn(c,0,E,ws.useMaxWidth);var T=f?40:0;c.attr("viewBox",_.startx-ws.diagramMarginX+" -"+(ws.diagramMarginY+T)+" "+E+" "+(k+T)),wn(r.db,c,e),o.debug("models:",Es.models)}};var Fs=n(3584),Rs=n.n(Fs);function Ps(t){return Ps="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ps(t)}var js=function(t){return JSON.parse(JSON.stringify(t))},zs=[],Ys=function t(e,n,r){if("relation"===n.stmt)t(e,n.state1,!0),t(e,n.state2,!1);else if("state"===n.stmt&&"[*]"===n.id&&(n.id=r?e.id+"_start":e.id+"_end",n.start=r),n.doc){var i=[],a=0,o=[];for(a=0;a<n.doc.length;a++)if("divider"===n.doc[a].type){var s=js(n.doc[a]);s.doc=js(o),i.push(s),o=[]}else o.push(n.doc[a]);if(i.length>0&&o.length>0){var c={stmt:"state",id:ln(),type:"divider",doc:js(o)};i.push(js(c)),n.doc=i}n.doc.forEach((function(e){return t(n,e,!0)}))}},Us={root:{relations:[],states:{},documents:{}}},$s=Us.root,Ws=0,qs=function(t,e,n,r,i){void 0===$s.states[t]?$s.states[t]={id:t,descriptions:[],type:e,doc:n,note:i}:($s.states[t].doc||($s.states[t].doc=n),$s.states[t].type||($s.states[t].type=e)),r&&(o.info("Adding state ",t,r),"string"==typeof r&&Gs(t,r.trim()),"object"===Ps(r)&&r.forEach((function(e){return Gs(t,e.trim())}))),i&&($s.states[t].note=i,$s.states[t].note.text=oe.sanitizeText($s.states[t].note.text,qt()))},Hs=function(t){$s=(Us={root:{relations:[],states:{},documents:{}}}).root,$s=Us.root,Ws=0,Zs=[],t||he()},Vs=function(t,e,n){var r=t,i=e,a="default",o="default";"[*]"===t&&(r="start"+ ++Ws,a="start"),"[*]"===e&&(i="end"+Ws,o="end"),qs(r,a),qs(i,o),$s.relations.push({id1:r,id2:i,title:oe.sanitizeText(n,qt())})},Gs=function(t,e){var n=$s.states[t],r=e;":"===r[0]&&(r=r.substr(1).trim()),n.descriptions.push(oe.sanitizeText(r,qt()))},Xs=0,Zs=[],Qs="TB";const Ks={parseDirective:function(t,e,n){Nl.parseDirective(this,t,e,n)},getConfig:function(){return qt().state},addState:qs,clear:Hs,getState:function(t){return $s.states[t]},getStates:function(){return $s.states},getRelations:function(){return $s.relations},getClasses:function(){return Zs},getDirection:function(){return Qs},addRelation:Vs,getDividerId:function(){return"divider-id-"+ ++Xs},setDirection:function(t){Qs=t},cleanupLabel:function(t){return":"===t.substring(0,1)?t.substr(2).trim():t.trim()},lineType:{LINE:0,DOTTED_LINE:1},relationType:{AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3},logDocuments:function(){o.info("Documents = ",Us)},getRootDoc:function(){return zs},setRootDoc:function(t){o.info("Setting root doc",t),zs=t},getRootDocV2:function(){return Ys({id:"root"},{id:"root",doc:zs},!0),{id:"root",doc:zs}},extract:function(t){var e;e=t.doc?t.doc:t,o.info(e),Hs(!0),o.info("Extract",e),e.forEach((function(t){"state"===t.stmt&&qs(t.id,t.type,t.doc,t.description,t.note),"relation"===t.stmt&&Vs(t.state1.id,t.state2.id,t.description)}))},trimColon:function(t){return t&&":"===t[0]?t.substr(1).trim():t.trim()},getAccTitle:fe,setAccTitle:de,getAccDescription:ge,setAccDescription:pe};var Js={};function tc(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}var ec,nc=function(t,e,n){var r,i=qt().state.padding,a=2*qt().state.padding,o=t.node().getBBox(),s=o.width,c=o.x,l=t.append("text").attr("x",0).attr("y",qt().state.titleShift).attr("font-size",qt().state.fontSize).attr("class","state-title").text(e.id),u=l.node().getBBox().width+a,h=Math.max(u,s);h===s&&(h+=a);var d=t.node().getBBox();e.doc,r=c-i,u>s&&(r=(s-h)/2+i),Math.abs(c-d.x)<i&&u>s&&(r=c-(u-s)/2);var f=1-qt().state.textHeight;return t.insert("rect",":first-child").attr("x",r).attr("y",f).attr("class",n?"alt-composit":"composit").attr("width",h).attr("height",d.height+qt().state.textHeight+qt().state.titleShift+1).attr("rx","0"),l.attr("x",r+i),u<=s&&l.attr("x",c+(h-a)/2-u/2+i),t.insert("rect",":first-child").attr("x",r).attr("y",qt().state.titleShift-qt().state.textHeight-qt().state.padding).attr("width",h).attr("height",3*qt().state.textHeight).attr("rx",qt().state.radius),t.insert("rect",":first-child").attr("x",r).attr("y",qt().state.titleShift-qt().state.textHeight-qt().state.padding).attr("width",h).attr("height",d.height+3+2*qt().state.textHeight).attr("rx",qt().state.radius),t},rc=function(t,e){var n=e.id,r={id:n,label:e.id,width:0,height:0},i=t.append("g").attr("id",n).attr("class","stateGroup");"start"===e.type&&function(t){t.append("circle").attr("class","start-state").attr("r",qt().state.sizeUnit).attr("cx",qt().state.padding+qt().state.sizeUnit).attr("cy",qt().state.padding+qt().state.sizeUnit)}(i),"end"===e.type&&function(t){t.append("circle").attr("class","end-state-outer").attr("r",qt().state.sizeUnit+qt().state.miniPadding).attr("cx",qt().state.padding+qt().state.sizeUnit+qt().state.miniPadding).attr("cy",qt().state.padding+qt().state.sizeUnit+qt().state.miniPadding),t.append("circle").attr("class","end-state-inner").attr("r",qt().state.sizeUnit).attr("cx",qt().state.padding+qt().state.sizeUnit+2).attr("cy",qt().state.padding+qt().state.sizeUnit+2)}(i),"fork"!==e.type&&"join"!==e.type||function(t,e){var n=qt().state.forkWidth,r=qt().state.forkHeight;if(e.parentId){var i=n;n=r,r=i}t.append("rect").style("stroke","black").style("fill","black").attr("width",n).attr("height",r).attr("x",qt().state.padding).attr("y",qt().state.padding)}(i,e),"note"===e.type&&function(t,e){e.attr("class","state-note");var n=e.append("rect").attr("x",0).attr("y",qt().state.padding),r=function(t,e,n,r){var i=0,a=r.append("text");a.style("text-anchor","start"),a.attr("class","noteText");var o,s=t.replace(/\r\n/g,"<br/>"),c=(s=s.replace(/\n/g,"<br/>")).split(oe.lineBreakRegex),l=1.25*qt().state.noteMargin,u=function(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return tc(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?tc(t,e):void 0}}(t))){n&&(t=n);var r=0,i=function(){};return{s:i,n:function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}},e:function(t){throw t},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,o=!0,s=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return o=t.done,t},e:function(t){s=!0,a=t},f:function(){try{o||null==n.return||n.return()}finally{if(s)throw a}}}}(c);try{for(u.s();!(o=u.n()).done;){var h=o.value.trim();if(h.length>0){var d=a.append("tspan");d.text(h),0===l&&(l+=d.node().getBBox().height),i+=l,d.attr("x",0+qt().state.noteMargin),d.attr("y",0+i+1.25*qt().state.noteMargin)}}}catch(t){u.e(t)}finally{u.f()}return{textWidth:a.node().getBBox().width,textHeight:i}}(t,0,0,e.append("g")),i=r.textWidth,a=r.textHeight;n.attr("height",a+2*qt().state.noteMargin),n.attr("width",i+2*qt().state.noteMargin)}(e.note.text,i),"divider"===e.type&&function(t){t.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",qt().state.textHeight).attr("class","divider").attr("x2",2*qt().state.textHeight).attr("y1",0).attr("y2",0)}(i),"default"===e.type&&0===e.descriptions.length&&function(t,e){var n=t.append("text").attr("x",2*qt().state.padding).attr("y",qt().state.textHeight+2*qt().state.padding).attr("font-size",qt().state.fontSize).attr("class","state-title").text(e.id).node().getBBox();t.insert("rect",":first-child").attr("x",qt().state.padding).attr("y",qt().state.padding).attr("width",n.width+2*qt().state.padding).attr("height",n.height+2*qt().state.padding).attr("rx",qt().state.radius)}(i,e),"default"===e.type&&e.descriptions.length>0&&function(t,e){var n=t.append("text").attr("x",2*qt().state.padding).attr("y",qt().state.textHeight+1.3*qt().state.padding).attr("font-size",qt().state.fontSize).attr("class","state-title").text(e.descriptions[0]).node().getBBox(),r=n.height,i=t.append("text").attr("x",qt().state.padding).attr("y",r+.4*qt().state.padding+qt().state.dividerMargin+qt().state.textHeight).attr("class","state-description"),a=!0,o=!0;e.descriptions.forEach((function(t){a||(function(t,e,n){var r=t.append("tspan").attr("x",2*qt().state.padding).text(e);n||r.attr("dy",qt().state.textHeight)}(i,t,o),o=!1),a=!1}));var s=t.append("line").attr("x1",qt().state.padding).attr("y1",qt().state.padding+r+qt().state.dividerMargin/2).attr("y2",qt().state.padding+r+qt().state.dividerMargin/2).attr("class","descr-divider"),c=i.node().getBBox(),l=Math.max(c.width,n.width);s.attr("x2",l+3*qt().state.padding),t.insert("rect",":first-child").attr("x",qt().state.padding).attr("y",qt().state.padding).attr("width",l+2*qt().state.padding).attr("height",c.height+r+2*qt().state.padding).attr("rx",qt().state.radius)}(i,e);var a,o=i.node().getBBox();return r.width=o.width+2*qt().state.padding,r.height=o.height+2*qt().state.padding,a=r,Js[n]=a,r},ic=0,ac={},oc=function t(e,n,r,i,a,s,c){var u,h=new(lr().Graph)({compound:!0,multigraph:!0}),d=!0;for(u=0;u<e.length;u++)if("relation"===e[u].stmt){d=!1;break}r?h.setGraph({rankdir:"LR",multigraph:!0,compound:!0,ranker:"tight-tree",ranksep:d?1:ec.edgeLengthFactor,nodeSep:d?1:50,isMultiGraph:!0}):h.setGraph({rankdir:"TB",multigraph:!0,compound:!0,ranksep:d?1:ec.edgeLengthFactor,nodeSep:d?1:50,ranker:"tight-tree",isMultiGraph:!0}),h.setDefaultEdgeLabel((function(){return{}})),c.db.extract(e);for(var f=c.db.getStates(),p=c.db.getRelations(),g=Object.keys(f),y=0;y<g.length;y++){var m=f[g[y]];r&&(m.parentId=r);var b=void 0;if(m.doc){var v=n.append("g").attr("id",m.id).attr("class","stateGroup");b=t(m.doc,v,m.id,!i,a,s,c);var _=(v=nc(v,m,i)).node().getBBox();b.width=_.width,b.height=_.height+ec.padding/2,ac[m.id]={y:ec.compositTitleSize}}else b=rc(n,m);if(m.note){var x={descriptions:[],id:m.id+"-note",note:m.note,type:"note"},k=rc(n,x);"left of"===m.note.position?(h.setNode(b.id+"-note",k),h.setNode(b.id,b)):(h.setNode(b.id,b),h.setNode(b.id+"-note",k)),h.setParent(b.id,b.id+"-group"),h.setParent(b.id+"-note",b.id+"-group")}else h.setNode(b.id,b)}o.debug("Count=",h.nodeCount(),h);var w=0;p.forEach((function(t){var e;w++,o.debug("Setting edge",t),h.setEdge(t.id1,t.id2,{relation:t,width:(e=t.title,e?e.length*ec.fontSizeFactor:1),height:ec.labelHeight*oe.getRows(t.title).length,labelpos:"c"},"id"+w)})),sr().layout(h),o.debug("Graph after layout",h.nodes());var E=n.node();h.nodes().forEach((function(t){void 0!==t&&void 0!==h.node(t)?(o.warn("Node "+t+": "+JSON.stringify(h.node(t))),a.select("#"+E.id+" #"+t).attr("transform","translate("+(h.node(t).x-h.node(t).width/2)+","+(h.node(t).y+(ac[t]?ac[t].y:0)-h.node(t).height/2)+" )"),a.select("#"+E.id+" #"+t).attr("data-x-shift",h.node(t).x-h.node(t).width/2),s.querySelectorAll("#"+E.id+" #"+t+" .divider").forEach((function(t){var e=t.parentElement,n=0,r=0;e&&(e.parentElement&&(n=e.parentElement.getBBox().width),r=parseInt(e.getAttribute("data-x-shift"),10),Number.isNaN(r)&&(r=0)),t.setAttribute("x1",0-r+8),t.setAttribute("x2",n-r-8)}))):o.debug("No Node "+t+": "+JSON.stringify(h.node(t)))}));var T=E.getBBox();h.edges().forEach((function(t){void 0!==t&&void 0!==h.edge(t)&&(o.debug("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(h.edge(t))),function(t,e,n){e.points=e.points.filter((function(t){return!Number.isNaN(t.y)}));var r=e.points,i=(0,l.line)().x((function(t){return t.x})).y((function(t){return t.y})).curve(l.curveBasis),a=t.append("path").attr("d",i(r)).attr("id","edge"+ic).attr("class","transition"),s="";if(qt().state.arrowMarkerAbsolute&&(s=(s=(s=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search).replace(/\(/g,"\\(")).replace(/\)/g,"\\)")),a.attr("marker-end","url("+s+"#"+function(t){switch(t){case Ks.relationType.AGGREGATION:return"aggregation";case Ks.relationType.EXTENSION:return"extension";case Ks.relationType.COMPOSITION:return"composition";case Ks.relationType.DEPENDENCY:return"dependency"}}(Ks.relationType.DEPENDENCY)+"End)"),void 0!==n.title){for(var c=t.append("g").attr("class","stateLabel"),u=kn.calcLabelPosition(e.points),h=u.x,d=u.y,f=oe.getRows(n.title),p=0,g=[],y=0,m=0,b=0;b<=f.length;b++){var v=c.append("text").attr("text-anchor","middle").text(f[b]).attr("x",h).attr("y",d+p),_=v.node().getBBox();if(y=Math.max(y,_.width),m=Math.min(m,_.x),o.info(_.x,h,d+p),0===p){var x=v.node().getBBox();p=x.height,o.info("Title height",p,d)}g.push(v)}var k=p*f.length;if(f.length>1){var w=(f.length-1)*p*.5;g.forEach((function(t,e){return t.attr("y",d+e*p-w)})),k=p*f.length}var E=c.node().getBBox();c.insert("rect",":first-child").attr("class","box").attr("x",h-y/2-qt().state.padding/2).attr("y",d-k/2-qt().state.padding/2-3.5).attr("width",y+qt().state.padding).attr("height",k+qt().state.padding),o.info(E)}ic++}(n,h.edge(t),h.edge(t).relation))})),T=E.getBBox();var C={id:r||"root",label:r||"root",width:0,height:0};return C.width=T.width+2*ec.padding,C.height=T.height+2*ec.padding,o.debug("Doc rendered",C,h),C};const sc={setConf:function(){},draw:function(t,e,n,r){ec=qt().state;var i,a=qt().securityLevel;"sandbox"===a&&(i=(0,l.select)("#i"+e));var s="sandbox"===a?(0,l.select)(i.nodes()[0].contentDocument.body):(0,l.select)("body"),c="sandbox"===a?i.nodes()[0].contentDocument:document;o.debug("Rendering diagram "+t);var u=s.select("[id='".concat(e,"']"));u.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"),new(lr().Graph)({multigraph:!0,compound:!0,rankdir:"RL"}).setDefaultEdgeLabel((function(){return{}}));var h=r.db.getRootDoc();oc(h,u,void 0,!1,s,c,r);var d=ec.padding,f=u.node().getBBox(),p=f.width+2*d,g=f.height+2*d;bn(u,0,1.75*p,ec.useMaxWidth),u.attr("viewBox","".concat(f.x-ec.padding," ").concat(f.y-ec.padding," ")+p+" "+g),wn(r.db,u,e)}};var cc={},lc={},uc=function(t,e,n,r){if("root"!==n.id){var i="rect";!0===n.start&&(i="start"),!1===n.start&&(i="end"),"default"!==n.type&&(i=n.type),lc[n.id]||(lc[n.id]={id:n.id,shape:i,description:oe.sanitizeText(n.id,qt()),classes:"statediagram-state"}),n.description&&(Array.isArray(lc[n.id].description)?(lc[n.id].shape="rectWithTitle",lc[n.id].description.push(n.description)):lc[n.id].description.length>0?(lc[n.id].shape="rectWithTitle",lc[n.id].description===n.id?lc[n.id].description=[n.description]:lc[n.id].description=[lc[n.id].description,n.description]):(lc[n.id].shape="rect",lc[n.id].description=n.description),lc[n.id].description=oe.sanitizeTextOrArray(lc[n.id].description,qt())),1===lc[n.id].description.length&&"rectWithTitle"===lc[n.id].shape&&(lc[n.id].shape="rect"),!lc[n.id].type&&n.doc&&(o.info("Setting cluster for ",n.id,fc(n)),lc[n.id].type="group",lc[n.id].dir=fc(n),lc[n.id].shape="divider"===n.type?"divider":"roundedWithTitle",lc[n.id].classes=lc[n.id].classes+" "+(r?"statediagram-cluster statediagram-cluster-alt":"statediagram-cluster"));var a={labelStyle:"",shape:lc[n.id].shape,labelText:lc[n.id].description,classes:lc[n.id].classes,style:"",id:n.id,dir:lc[n.id].dir,domId:"state-"+n.id+"-"+hc,type:lc[n.id].type,padding:15};if(n.note){var s={labelStyle:"",shape:"note",labelText:n.note.text,classes:"statediagram-note",style:"",id:n.id+"----note-"+hc,domId:"state-"+n.id+"----note-"+hc,type:lc[n.id].type,padding:15},c={labelStyle:"",shape:"noteGroup",labelText:n.note.text,classes:lc[n.id].classes,style:"",id:n.id+"----parent",domId:"state-"+n.id+"----parent-"+hc,type:"group",padding:0};hc++,t.setNode(n.id+"----parent",c),t.setNode(s.id,s),t.setNode(n.id,a),t.setParent(n.id,n.id+"----parent"),t.setParent(s.id,n.id+"----parent");var l=n.id,u=s.id;"left of"===n.note.position&&(l=s.id,u=n.id),t.setEdge(l,u,{arrowhead:"none",arrowType:"",style:"fill:none",labelStyle:"",classes:"transition note-edge",arrowheadStyle:"fill: #333",labelpos:"c",labelType:"text",thickness:"normal"})}else t.setNode(n.id,a)}e&&"root"!==e.id&&(o.trace("Setting node ",n.id," to be child of its parent ",e.id),t.setParent(n.id,e.id)),n.doc&&(o.trace("Adding nodes children "),dc(t,n,n.doc,!r))},hc=0,dc=function(t,e,n,r){o.trace("items",n),n.forEach((function(n){if("state"===n.stmt||"default"===n.stmt)uc(t,e,n,r);else if("relation"===n.stmt){uc(t,e,n.state1,r),uc(t,e,n.state2,r);var i={id:"edge"+hc,arrowhead:"normal",arrowTypeEnd:"arrow_barb",style:"fill:none",labelStyle:"",label:oe.sanitizeText(n.description,qt()),arrowheadStyle:"fill: #333",labelpos:"c",labelType:"text",thickness:"normal",classes:"transition"},a=n.state1.id,o=n.state2.id;t.setEdge(a,o,i,hc),hc++}}))},fc=function(t,e){var n=e||"TB";if(t.doc)for(var r=0;r<t.doc.length;r++){var i=t.doc[r];"dir"===i.stmt&&(n=i.value)}return n};const pc={setConf:function(t){for(var e=Object.keys(t),n=0;n<e.length;n++)cc[e[n]]=t[e[n]]},getClasses:function(t,e){return o.trace("Extracting classes"),e.sb.clear(),e.parser.parse(t),e.sb.getClasses()},draw:function(t,e,n,r){o.info("Drawing state diagram (v2)",e),lc={};var i=r.db.getDirection();void 0===i&&(i="LR");var a=qt().state,s=a.nodeSpacing||50,c=a.rankSpacing||50,u=qt().securityLevel;o.info(r.db.getRootDocV2()),r.db.extract(r.db.getRootDocV2()),o.info(r.db.getRootDocV2());var h,d=new(lr().Graph)({multigraph:!0,compound:!0}).setGraph({rankdir:fc(r.db.getRootDocV2()),nodesep:s,ranksep:c,marginx:8,marginy:8}).setDefaultEdgeLabel((function(){return{}}));uc(d,void 0,r.db.getRootDocV2(),!0),"sandbox"===u&&(h=(0,l.select)("#i"+e));var f="sandbox"===u?(0,l.select)(h.nodes()[0].contentDocument.body):(0,l.select)("body"),p=("sandbox"===u?h.nodes()[0].contentDocument:document,f.select('[id="'.concat(e,'"]'))),g=f.select("#"+e+" g");ai(g,d,["barb"],"statediagram",e);var y=p.node().getBBox(),m=y.width+16,b=y.height+16;p.attr("class","statediagram");var v=p.node().getBBox();bn(p,0,m,a.useMaxWidth);var _="".concat(v.x-8," ").concat(v.y-8," ").concat(m," ").concat(b);o.debug("viewBox ".concat(_)),p.attr("viewBox",_);for(var x=document.querySelectorAll('[id="'+e+'"] .edgeLabel .label'),k=0;k<x.length;k++){var w=x[k],E=w.getBBox(),T=document.createElementNS("http://www.w3.org/2000/svg","rect");T.setAttribute("rx",0),T.setAttribute("ry",0),T.setAttribute("width",E.width),T.setAttribute("height",E.height),w.insertBefore(T,w.firstChild)}wn(r.db,p,e)}};function gc(t){return function(t){if(Array.isArray(t))return yc(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(t){if("string"==typeof t)return yc(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?yc(t,e):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function yc(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}var mc="",bc=[],vc=[],_c=[],xc=function(){for(var t=!0,e=0;e<_c.length;e++)_c[e].processed,t=t&&_c[e].processed;return t};const kc={parseDirective:function(t,e,n){Nl.parseDirective(this,t,e,n)},getConfig:function(){return qt().journey},clear:function(){bc.length=0,vc.length=0,mc="",_c.length=0,he()},setDiagramTitle:ye,getDiagramTitle:me,setAccTitle:de,getAccTitle:fe,setAccDescription:pe,getAccDescription:ge,addSection:function(t){mc=t,bc.push(t)},getSections:function(){return bc},getTasks:function(){for(var t=xc(),e=0;!t&&e<100;)t=xc(),e++;return vc.push.apply(vc,_c),vc},addTask:function(t,e){var n=e.substr(1).split(":"),r=0,i=[];1===n.length?(r=Number(n[0]),i=[]):(r=Number(n[0]),i=n[1].split(","));var a=i.map((function(t){return t.trim()})),o={section:mc,type:mc,people:a,task:t,score:r};_c.push(o)},addTaskOrg:function(t){var e={section:mc,type:mc,description:t,task:t,classes:[]};vc.push(e)},getActors:function(){return t=[],vc.forEach((function(e){e.people&&t.push.apply(t,gc(e.people))})),gc(new Set(t)).sort();var t}};var wc=function(t,e){var n=t.append("rect");return n.attr("x",e.x),n.attr("y",e.y),n.attr("fill",e.fill),n.attr("stroke",e.stroke),n.attr("width",e.width),n.attr("height",e.height),n.attr("rx",e.rx),n.attr("ry",e.ry),void 0!==e.class&&n.attr("class",e.class),n},Ec=function(t,e){var n=t.append("circle");return n.attr("cx",e.cx),n.attr("cy",e.cy),n.attr("class","actor-"+e.pos),n.attr("fill",e.fill),n.attr("stroke",e.stroke),n.attr("r",e.r),void 0!==n.class&&n.attr("class",n.class),void 0!==e.title&&n.append("title").text(e.title),n},Tc=-1,Cc=function(){function t(t,e,n,i,a,o,s,c){r(e.append("text").attr("x",n+a/2).attr("y",i+o/2+5).style("font-color",c).style("text-anchor","middle").text(t),s)}function e(t,e,n,i,a,o,s,c,l){for(var u=c.taskFontSize,h=c.taskFontFamily,d=t.split(/<br\s*\/?>/gi),f=0;f<d.length;f++){var p=f*u-u*(d.length-1)/2,g=e.append("text").attr("x",n+a/2).attr("y",i).attr("fill",l).style("text-anchor","middle").style("font-size",u).style("font-family",h);g.append("tspan").attr("x",n+a/2).attr("dy",p).text(d[f]),g.attr("y",i+o/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),r(g,s)}}function n(t,n,i,a,o,s,c,l){var u=n.append("switch"),h=u.append("foreignObject").attr("x",i).attr("y",a).attr("width",o).attr("height",s).attr("position","fixed").append("xhtml:div").style("display","table").style("height","100%").style("width","100%");h.append("div").attr("class","label").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(t),e(t,u,i,a,o,s,c,l),r(h,c)}function r(t,e){for(var n in e)n in e&&t.attr(n,e[n])}return function(r){return"fo"===r.textPlacement?n:"old"===r.textPlacement?t:e}}();const Sc=Ec,Ac=function(t,e,n){var r=t.append("g"),i={x:0,y:0,width:100,anchor:"start",height:100,rx:0,ry:0};i.x=e.x,i.y=e.y,i.fill=e.fill,i.width=n.width,i.height=n.height,i.class="journey-section section-type-"+e.num,i.rx=3,i.ry=3,wc(r,i),Cc(n)(e.text,r,i.x,i.y,i.width,i.height,{class:"journey-section section-type-"+e.num},n,e.colour)},Mc=function(t,e,n){var r,i,a,o=e.x+n.width/2,s=t.append("g");Tc++,s.append("line").attr("id","task"+Tc).attr("x1",o).attr("y1",e.y).attr("x2",o).attr("y2",450).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),r=s,i={cx:o,cy:300+30*(5-e.score),score:e.score},r.append("circle").attr("cx",i.cx).attr("cy",i.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),(a=r.append("g")).append("circle").attr("cx",i.cx-5).attr("cy",i.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),a.append("circle").attr("cx",i.cx+5).attr("cy",i.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),i.score>3?function(t){var e=(0,l.arc)().startAngle(Math.PI/2).endAngle(Math.PI/2*3).innerRadius(7.5).outerRadius(15/2.2);t.append("path").attr("class","mouth").attr("d",e).attr("transform","translate("+i.cx+","+(i.cy+2)+")")}(a):i.score<3?function(t){var e=(0,l.arc)().startAngle(3*Math.PI/2).endAngle(Math.PI/2*5).innerRadius(7.5).outerRadius(15/2.2);t.append("path").attr("class","mouth").attr("d",e).attr("transform","translate("+i.cx+","+(i.cy+7)+")")}(a):function(t){t.append("line").attr("class","mouth").attr("stroke",2).attr("x1",i.cx-5).attr("y1",i.cy+7).attr("x2",i.cx+5).attr("y2",i.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}(a);var c={x:0,y:0,width:100,anchor:"start",height:100,rx:0,ry:0};c.x=e.x,c.y=e.y,c.fill=e.fill,c.width=n.width,c.height=n.height,c.class="task task-type-"+e.num,c.rx=3,c.ry=3,wc(s,c);var u=e.x+14;e.people.forEach((function(t){var n=e.actors[t].color,r={cx:u,cy:e.y,r:7,fill:n,stroke:"#000",title:t,pos:e.actors[t].position};Ec(s,r),u+=10})),Cc(n)(e.task,s,c.x,c.y,c.width,c.height,{class:"task"},n,e.colour)};var Oc={},Nc=qt().journey,Dc=qt().journey.leftMargin,Bc={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],init:function(){this.sequenceItems=[],this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0},updateVal:function(t,e,n,r){void 0===t[e]?t[e]=n:t[e]=r(n,t[e])},updateBounds:function(t,e,n,r){var i=qt().journey,a=this,o=0;this.sequenceItems.forEach((function(s){o++;var c=a.sequenceItems.length-o+1;a.updateVal(s,"starty",e-c*i.boxMargin,Math.min),a.updateVal(s,"stopy",r+c*i.boxMargin,Math.max),a.updateVal(Bc.data,"startx",t-c*i.boxMargin,Math.min),a.updateVal(Bc.data,"stopx",n+c*i.boxMargin,Math.max),a.updateVal(s,"startx",t-c*i.boxMargin,Math.min),a.updateVal(s,"stopx",n+c*i.boxMargin,Math.max),a.updateVal(Bc.data,"starty",e-c*i.boxMargin,Math.min),a.updateVal(Bc.data,"stopy",r+c*i.boxMargin,Math.max)}))},insert:function(t,e,n,r){var i=Math.min(t,n),a=Math.max(t,n),o=Math.min(e,r),s=Math.max(e,r);this.updateVal(Bc.data,"startx",i,Math.min),this.updateVal(Bc.data,"starty",o,Math.min),this.updateVal(Bc.data,"stopx",a,Math.max),this.updateVal(Bc.data,"stopy",s,Math.max),this.updateBounds(i,o,a,s)},bumpVerticalPos:function(t){this.verticalPos=this.verticalPos+t,this.data.stopy=this.verticalPos},getVerticalPos:function(){return this.verticalPos},getBounds:function(){return this.data}},Lc=Nc.sectionFills,Ic=Nc.sectionColours;const Fc={setConf:function(t){Object.keys(t).forEach((function(e){Nc[e]=t[e]}))},draw:function(t,e,n,r){var i=qt().journey;r.db.clear(),r.parser.parse(t+"\n");var a,o=qt().securityLevel;"sandbox"===o&&(a=(0,l.select)("#i"+e));var s="sandbox"===o?(0,l.select)(a.nodes()[0].contentDocument.body):(0,l.select)("body");Bc.init();var c=s.select("#"+e);c.append("defs").append("marker").attr("id","arrowhead").attr("refX",5).attr("refY",2).attr("markerWidth",6).attr("markerHeight",4).attr("orient","auto").append("path").attr("d","M 0,0 V 4 L6,2 Z");var u=r.db.getTasks(),h=r.db.getDiagramTitle(),d=r.db.getActors();for(var f in Oc)delete Oc[f];var p=0;d.forEach((function(t){Oc[t]={color:i.actorColours[p%i.actorColours.length],position:p},p++})),function(t){var e=qt().journey,n=60;Object.keys(Oc).forEach((function(r){var i=Oc[r].color,a={cx:20,cy:n,r:7,fill:i,stroke:"#000",pos:Oc[r].position};Sc(t,a);var o={x:40,y:n+7,fill:"#666",text:r,textMargin:5|e.boxTextMargin};(function(t,e){var n=e.text.replace(/<br\s*\/?>/gi," "),r=t.append("text");r.attr("x",e.x),r.attr("y",e.y),r.attr("class","legend"),r.style("text-anchor",e.anchor),void 0!==e.class&&r.attr("class",e.class);var i=r.append("tspan");i.attr("x",e.x+2*e.textMargin),i.text(n)})(t,o),n+=20}))}(c),Bc.insert(0,0,Dc,50*Object.keys(Oc).length),function(t,e,n){for(var r=qt().journey,i="",a=0+(2*r.height+r.diagramMarginY),o=0,s="#CCC",c="black",l=0,u=0;u<e.length;u++){var h=e[u];if(i!==h.section){s=Lc[o%Lc.length],l=o%Lc.length,c=Ic[o%Ic.length];var d={x:u*r.taskMargin+u*r.width+Dc,y:50,text:h.section,fill:s,num:l,colour:c};Ac(t,d,r),i=h.section,o++}var f=h.people.reduce((function(t,e){return Oc[e]&&(t[e]=Oc[e]),t}),{});h.x=u*r.taskMargin+u*r.width+Dc,h.y=a,h.width=r.diagramMarginX,h.height=r.diagramMarginY,h.colour=c,h.fill=s,h.num=l,h.actors=f,Mc(t,h,r),Bc.insert(h.x,h.y,h.x+h.width+r.taskMargin,450)}}(c,u);var g=Bc.getBounds();h&&c.append("text").text(h).attr("x",Dc).attr("font-size","4ex").attr("font-weight","bold").attr("y",25);var y=g.stopy-g.starty+2*i.diagramMarginY,m=Dc+g.stopx+2*i.diagramMarginX;bn(c,0,m,i.useMaxWidth),c.append("line").attr("x1",Dc).attr("y1",4*i.height).attr("x2",m-Dc-4).attr("y2",4*i.height).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)");var b=h?70:0;c.attr("viewBox","".concat(g.startx," -25 ").concat(m," ").concat(y+b)),c.attr("preserveAspectRatio","xMinYMin meet"),c.attr("height",y+b+25),wn(r.db,c,e)}};var Rc=n(9763),Pc=n.n(Rc),jc={c4:{db:Le,renderer:Wn,parser:Ye(),init:function(t){Wn.setConf(t.c4)}},class:{db:ar,renderer:_r,parser:ui(),init:function(t){t.class.arrowMarkerAbsolute=t.arrowMarkerAbsolute,ar.clear()}},error:{db:{},renderer:ki,parser:{parser:{yy:{}},parse:function(){}},init:function(){}},classDiagram:{db:ar,renderer:ci,parser:ui(),init:function(t){t.class.arrowMarkerAbsolute=t.arrowMarkerAbsolute,ar.clear()}},er:{db:pi,renderer:_i,parser:Ei()},flowchart:{db:Ki,renderer:ba,parser:Ea(),init:function(t){ba.setConf(t.flowchart),t.flowchart.arrowMarkerAbsolute=t.arrowMarkerAbsolute,Ki.clear(),Ki.setGen("gen-1")}},"flowchart-v2":{db:Ki,renderer:ka,parser:Ea(),init:function(t){ka.setConf(t.flowchart),t.flowchart.arrowMarkerAbsolute=t.arrowMarkerAbsolute,Ki.clear(),Ki.setGen("gen-2")}},gantt:{db:no,renderer:ao,parser:so(),init:function(t){ao.setConf(t.gantt)}},info:{db:uo,renderer:ho,parser:po()},pie:{db:vo,renderer:ko,parser:yo()},requirement:{db:Oo,renderer:jo,parser:Eo()},sequence:{db:os,renderer:Is,parser:Uo(),init:function(t){t.sequence.arrowMarkerAbsolute=t.arrowMarkerAbsolute,t.sequenceDiagram&&(Is.setConf(Object.assign(t.sequence,t.sequenceDiagram)),console.error("`mermaid config.sequenceDiagram` has been renamed to `config.sequence`. Please update your mermaid config.")),os.setWrap(t.wrap),Is.setConf(t.sequence)}},state:{db:Ks,renderer:sc,parser:Rs(),init:function(t){t.class.arrowMarkerAbsolute=t.arrowMarkerAbsolute,Ks.clear()}},stateDiagram:{db:Ks,renderer:pc,parser:Rs(),init:function(t){t.class.arrowMarkerAbsolute=t.arrowMarkerAbsolute,Ks.clear()}},journey:{db:kc,renderer:Fc,parser:Pc(),init:function(t){Fc.setConf(t.journey),kc.clear()}}};function zc(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function Yc(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?zc(Object(n),!0).forEach((function(e){Uc(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):zc(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function Uc(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var $c=qt().gitGraph.mainBranchName,Wc=qt().gitGraph.mainBranchOrder,qc={},Hc=null,Vc={};Vc[$c]={name:$c,order:Wc};var Gc={};Gc[$c]=Hc;var Xc=$c,Zc="LR",Qc=0;function Kc(){return un({length:7})}var Jc={},tl=function(t){if(t=oe.sanitizeText(t,qt()),void 0===Gc[t]){var e=new Error('Trying to checkout branch which is not yet created. (Help try using "branch '+t+'")');throw e.hash={text:"checkout "+t,token:"checkout "+t,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"branch '+t+'"']},e}var n=Gc[Xc=t];Hc=qc[n]};function el(t,e,n){var r=t.indexOf(e);-1===r?t.push(n):t.splice(r,1,n)}function nl(t){var e=t.reduce((function(t,e){return t.seq>e.seq?t:e}),t[0]),n="";t.forEach((function(t){n+=t===e?"\t*":"\t|"}));var r,i,a,s=[n,e.id,e.seq];for(var c in Gc)Gc[c]===e.id&&s.push(c);if(o.debug(s.join(" ")),e.parents&&2==e.parents.length){var l=qc[e.parents[0]];el(t,e,l),t.push(qc[e.parents[1]])}else{if(0==e.parents.length)return;var u=qc[e.parents];el(t,e,u)}r=t,i=function(t){return t.id},a=Object.create(null),nl(t=r.reduce((function(t,e){var n=i(e);return a[n]||(a[n]=!0,t.push(e)),t}),[]))}var rl=function(){var t=Object.keys(qc).map((function(t){return qc[t]}));return t.forEach((function(t){o.debug(t.id)})),t.sort((function(t,e){return t.seq-e.seq})),t},il={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4};const al={parseDirective:function(t,e,n){Nl.parseDirective(this,t,e,n)},getConfig:function(){return qt().gitGraph},setDirection:function(t){Zc=t},setOptions:function(t){o.debug("options str",t),t=(t=t&&t.trim())||"{}";try{Jc=JSON.parse(t)}catch(t){o.error("error while parsing gitGraph options",t.message)}},getOptions:function(){return Jc},commit:function(t,e,n,r){o.debug("Entering commit:",t,e,n,r),e=oe.sanitizeText(e,qt()),t=oe.sanitizeText(t,qt()),r=oe.sanitizeText(r,qt());var i={id:e||Qc+"-"+Kc(),message:t,seq:Qc++,type:n||il.NORMAL,tag:r||"",parents:null==Hc?[]:[Hc.id],branch:Xc};Hc=i,qc[i.id]=i,Gc[Xc]=i.id,o.debug("in pushCommit "+i.id)},branch:function(t,e){if(t=oe.sanitizeText(t,qt()),void 0!==Gc[t]){var n=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+'")');throw n.hash={text:"branch "+t,token:"branch "+t,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"checkout '+t+'"']},n}Gc[t]=null!=Hc?Hc.id:null,Vc[t]={name:t,order:e?parseInt(e,10):null},tl(t),o.debug("in createBranch")},merge:function(t,e,n,r){t=oe.sanitizeText(t,qt()),e=oe.sanitizeText(e,qt());var i=qc[Gc[Xc]],a=qc[Gc[t]];if(Xc===t){var s=new Error('Incorrect usage of "merge". Cannot merge a branch to itself');throw s.hash={text:"merge "+t,token:"merge "+t,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["branch abc"]},s}if(void 0===i||!i){var c=new Error('Incorrect usage of "merge". Current branch ('+Xc+")has no commits");throw c.hash={text:"merge "+t,token:"merge "+t,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["commit"]},c}if(void 0===Gc[t]){var l=new Error('Incorrect usage of "merge". Branch to be merged ('+t+") does not exist");throw l.hash={text:"merge "+t,token:"merge "+t,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["branch "+t]},l}if(void 0===a||!a){var u=new Error('Incorrect usage of "merge". Branch to be merged ('+t+") has no commits");throw u.hash={text:"merge "+t,token:"merge "+t,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"commit"']},u}if(i===a){var h=new Error('Incorrect usage of "merge". Both branches have same head');throw h.hash={text:"merge "+t,token:"merge "+t,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["branch abc"]},h}if(e&&void 0!==qc[e]){var d=new Error('Incorrect usage of "merge". Commit with id:'+e+" already exists, use different custom Id");throw d.hash={text:"merge "+t+e+n+r,token:"merge "+t+e+n+r,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["merge "+t+" "+e+"_UNIQUE "+n+" "+r]},d}var f={id:e||Qc+"-"+Kc(),message:"merged branch "+t+" into "+Xc,seq:Qc++,parents:[null==Hc?null:Hc.id,Gc[t]],branch:Xc,type:il.MERGE,customType:n,customId:!!e,tag:r||""};Hc=f,qc[f.id]=f,Gc[Xc]=f.id,o.debug(Gc),o.debug("in mergeBranch")},cherryPick:function(t,e){if(t=oe.sanitizeText(t,qt()),e=oe.sanitizeText(e,qt()),!t||void 0===qc[t]){var n=new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');throw n.hash={text:"cherryPick "+t+" "+e,token:"cherryPick "+t+" "+e,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},n}var r=qc[t],i=r.branch;if(r.type===il.MERGE){var a=new Error('Incorrect usage of "cherryPick". Source commit should not be a merge commit');throw a.hash={text:"cherryPick "+t+" "+e,token:"cherryPick "+t+" "+e,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},a}if(!e||void 0===qc[e]){if(i===Xc){var s=new Error('Incorrect usage of "cherryPick". Source commit is already on current branch');throw s.hash={text:"cherryPick "+t+" "+e,token:"cherryPick "+t+" "+e,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},s}var c=qc[Gc[Xc]];if(void 0===c||!c){var l=new Error('Incorrect usage of "cherry-pick". Current branch ('+Xc+")has no commits");throw l.hash={text:"cherryPick "+t+" "+e,token:"cherryPick "+t+" "+e,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},l}var u={id:Qc+"-"+Kc(),message:"cherry-picked "+r+" into "+Xc,seq:Qc++,parents:[null==Hc?null:Hc.id,r.id],branch:Xc,type:il.CHERRY_PICK,tag:"cherry-pick:"+r.id};Hc=u,qc[u.id]=u,Gc[Xc]=u.id,o.debug(Gc),o.debug("in cheeryPick")}},checkout:tl,prettyPrint:function(){o.debug(qc),nl([rl()[0]])},clear:function(){qc={},Hc=null;var t=qt().gitGraph.mainBranchName,e=qt().gitGraph.mainBranchOrder;(Gc={})[t]=null,(Vc={})[t]={name:t,order:e},Xc=t,Qc=0,he()},getBranchesAsObjArray:function(){return Object.values(Vc).map((function(t,e){return null!==t.order?t:Yc(Yc({},t),{},{order:parseFloat("0.".concat(e),10)})})).sort((function(t,e){return t.order-e.order})).map((function(t){return{name:t.name}}))},getBranches:function(){return Gc},getCommits:function(){return qc},getCommitsArray:rl,getCurrentBranch:function(){return Xc},getDirection:function(){return Zc},getHead:function(){return Hc},setAccTitle:de,getAccTitle:fe,getAccDescription:ge,setAccDescription:pe,commitType:il};var ol={},sl={},cl={},ll=[],ul=0,hl=function(t,e,n){var r=qt().gitGraph,i=t.append("g").attr("class","commit-bullets"),a=t.append("g").attr("class","commit-labels"),o=0;Object.keys(e).sort((function(t,n){return e[t].seq-e[n].seq})).forEach((function(t,s){var c=e[t],l=sl[c.branch].pos,u=o+10;if(n){var h,d=void 0!==c.customType&&""!==c.customType?c.customType:c.type;switch(d){case 0:default:h="commit-normal";break;case 1:h="commit-reverse";break;case 2:h="commit-highlight";break;case 3:h="commit-merge";break;case 4:h="commit-cherry-pick"}if(2===d){var f=i.append("rect");f.attr("x",u-10),f.attr("y",l-10),f.attr("height",20),f.attr("width",20),f.attr("class","commit ".concat(c.id," commit-highlight").concat(sl[c.branch].index%8," ").concat(h,"-outer")),i.append("rect").attr("x",u-6).attr("y",l-6).attr("height",12).attr("width",12).attr("class","commit ".concat(c.id," commit").concat(sl[c.branch].index%8," ").concat(h,"-inner"))}else if(4===d)i.append("circle").attr("cx",u).attr("cy",l).attr("r",10).attr("class","commit ".concat(c.id," ").concat(h)),i.append("circle").attr("cx",u-3).attr("cy",l+2).attr("r",2.75).attr("fill","#fff").attr("class","commit ".concat(c.id," ").concat(h)),i.append("circle").attr("cx",u+3).attr("cy",l+2).attr("r",2.75).attr("fill","#fff").attr("class","commit ".concat(c.id," ").concat(h)),i.append("line").attr("x1",u+3).attr("y1",l+1).attr("x2",u).attr("y2",l-5).attr("stroke","#fff").attr("class","commit ".concat(c.id," ").concat(h)),i.append("line").attr("x1",u-3).attr("y1",l+1).attr("x2",u).attr("y2",l-5).attr("stroke","#fff").attr("class","commit ".concat(c.id," ").concat(h));else{var p=i.append("circle");if(p.attr("cx",u),p.attr("cy",l),p.attr("r",3===c.type?9:10),p.attr("class","commit ".concat(c.id," commit").concat(sl[c.branch].index%8)),3===d){var g=i.append("circle");g.attr("cx",u),g.attr("cy",l),g.attr("r",6),g.attr("class","commit ".concat(h," ").concat(c.id," commit").concat(sl[c.branch].index%8))}1===d&&i.append("path").attr("d","M ".concat(u-5,",").concat(l-5,"L").concat(u+5,",").concat(l+5,"M").concat(u-5,",").concat(l+5,"L").concat(u+5,",").concat(l-5)).attr("class","commit ".concat(h," ").concat(c.id," commit").concat(sl[c.branch].index%8))}}if(cl[c.id]={x:o+10,y:l},n){if(4!==c.type&&(c.customId&&3===c.type||3!==c.type)&&r.showCommitLabel){var y=a.append("g"),m=y.insert("rect").attr("class","commit-label-bkg"),b=y.append("text").attr("x",o).attr("y",l+25).attr("class","commit-label").text(c.id),v=b.node().getBBox();if(m.attr("x",o+10-v.width/2-2).attr("y",l+13.5).attr("width",v.width+4).attr("height",v.height+4),b.attr("x",o+10-v.width/2),r.rotateCommitLabel){var _=-7.5-(v.width+10)/25*9.5,x=10+v.width/25*8.5;y.attr("transform","translate("+_+", "+x+") rotate(-45, "+o+", "+l+")")}}if(c.tag){var k=a.insert("polygon"),w=a.append("circle"),E=a.append("text").attr("y",l-16).attr("class","tag-label").text(c.tag),T=E.node().getBBox();E.attr("x",o+10-T.width/2);var C=T.height/2,S=l-19.2;k.attr("class","tag-label-bkg").attr("points","\n ".concat(o-T.width/2-2,",").concat(S+2,"\n ").concat(o-T.width/2-2,",").concat(S-2,"\n ").concat(o+10-T.width/2-4,",").concat(S-C-2,"\n ").concat(o+10+T.width/2+4,",").concat(S-C-2,"\n ").concat(o+10+T.width/2+4,",").concat(S+C+2,"\n ").concat(o+10-T.width/2-4,",").concat(S+C+2)),w.attr("cx",o-T.width/2+2).attr("cy",S).attr("r",1.5).attr("class","tag-hole")}}(o+=50)>ul&&(ul=o)}))},dl=function t(e,n,r){var i=r||0,a=e+Math.abs(e-n)/2;if(i>5)return a;for(var o=!0,s=0;s<ll.length;s++)Math.abs(ll[s]-a)<10&&(o=!1);return o?(ll.push(a),a):t(e,n-Math.abs(e-n)/5,i+1)};const fl={draw:function(t,e,n,r){sl={},cl={},ol={},ul=0,ll=[];var i=qt(),a=qt().gitGraph;o.debug("in gitgraph renderer",t+"\n","id:",e,n),ol=r.db.getCommits();var s=r.db.getBranchesAsObjArray(),c=0;s.forEach((function(t,e){sl[t.name]={pos:c,index:e},c+=50+(a.rotateCommitLabel?40:0)}));var u=(0,l.select)('[id="'.concat(e,'"]'));wn(r.db,u,e),hl(u,ol,!1),a.showBranches&&function(t,e){var n=qt().gitGraph,r=t.append("g");e.forEach((function(t,e){var i=e%8,a=sl[t.name].pos,o=r.append("line");o.attr("x1",0),o.attr("y1",a),o.attr("x2",ul),o.attr("y2",a),o.attr("class","branch branch"+i),ll.push(a);var s=function(t){var e=document.createElementNS("http://www.w3.org/2000/svg","text"),n=[];n="string"==typeof t?t.split(/\\n|\n|<br\s*\/?>/gi):Array.isArray(t)?t:[];for(var r=0;r<n.length;r++){var 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[r].trim(),e.appendChild(i)}return e}(t.name),c=r.insert("rect"),l=r.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+i);l.node().appendChild(s);var u=s.getBBox();c.attr("class","branchLabelBkg label"+i).attr("rx",4).attr("ry",4).attr("x",-u.width-4-(!0===n.rotateCommitLabel?30:0)).attr("y",-u.height/2+8).attr("width",u.width+18).attr("height",u.height+4),l.attr("transform","translate("+(-u.width-14-(!0===n.rotateCommitLabel?30:0))+", "+(a-u.height/2-1)+")"),c.attr("transform","translate(-19, "+(a-u.height/2)+")")}))}(u,s),function(t,e){var n=t.append("g").attr("class","commit-arrows");Object.keys(e).forEach((function(t,r){var i=e[t];i.parents&&i.parents.length>0&&i.parents.forEach((function(t){!function(t,e,n,r){var i=qt(),a=cl[e.id],o=cl[n.id],s=function(t,e,n){return cl[e.id],cl[t.id],Object.keys(n).filter((function(r){return n[r].branch===e.branch&&n[r].seq>t.seq&&n[r].seq<e.seq})).length>0}(e,n,r);i.arrowMarkerAbsolute&&(window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search).replace(/\(/g,"\\(").replace(/\)/g,"\\)");var c,l="",u="",h=0,d=0,f=sl[n.branch].index;if(s){l="A 10 10, 0, 0, 0,",u="A 10 10, 0, 0, 1,",h=10,d=10,f=sl[n.branch].index;var p=a.y<o.y?dl(a.y,o.y):dl(o.y,a.y);c=a.y<o.y?"M ".concat(a.x," ").concat(a.y," L ").concat(a.x," ").concat(p-h," ").concat(l," ").concat(a.x+d," ").concat(p," L ").concat(o.x-h," ").concat(p," ").concat(u," ").concat(o.x," ").concat(p+d," L ").concat(o.x," ").concat(o.y):"M ".concat(a.x," ").concat(a.y," L ").concat(a.x," ").concat(p+h," ").concat(u," ").concat(a.x+d," ").concat(p," L ").concat(o.x-h," ").concat(p," ").concat(l," ").concat(o.x," ").concat(p-d," L ").concat(o.x," ").concat(o.y)}else a.y<o.y&&(l="A 20 20, 0, 0, 0,",h=20,d=20,f=sl[n.branch].index,c="M ".concat(a.x," ").concat(a.y," L ").concat(a.x," ").concat(o.y-h," ").concat(l," ").concat(a.x+d," ").concat(o.y," L ").concat(o.x," ").concat(o.y)),a.y>o.y&&(l="A 20 20, 0, 0, 0,",h=20,d=20,f=sl[e.branch].index,c="M ".concat(a.x," ").concat(a.y," L ").concat(o.x-h," ").concat(a.y," ").concat(l," ").concat(o.x," ").concat(a.y-d," L ").concat(o.x," ").concat(o.y)),a.y===o.y&&(f=sl[e.branch].index,c="M ".concat(a.x," ").concat(a.y," L ").concat(a.x," ").concat(o.y-h," ").concat(l," ").concat(a.x+d," ").concat(o.y," L ").concat(o.x," ").concat(o.y));t.append("path").attr("d",c).attr("class","arrow arrow"+f%8)}(n,e[t],i,e)}))}))}(u,ol),hl(u,ol,!0);var h=a.diagramPadding,d=u.node().getBBox(),f=d.width+2*h,p=d.height+2*h;bn(u,0,f,i.useMaxWidth);var g="".concat(d.x-h-(a.showBranches&&!0===a.rotateCommitLabel?30:0)," ").concat(d.y-h," ").concat(f," ").concat(p);u.attr("viewBox",g)}};var pl=n(2553),gl=n.n(pl);const yl=function(t){return t.match(/^\s*gitGraph/)?"gitGraph":null},ml=function(){var t,e,n,r,i;t="gitGraph",e=gl(),n=al,r=fl,i=yl,jc[t]={parser:e,db:n,renderer:r,init:undefined},function(t,e){We.gitGraph={detector:e}}(0,i)};function bl(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var vl=function(){function t(e){var n,r;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),bl(this,"type","graph"),bl(this,"parser",void 0),bl(this,"renderer",void 0),bl(this,"db",void 0);var i=jc,a=qt();this.txt=e,this.type=qe(e,a),o.debug("Type "+this.type),this.db=i[this.type].db,null===(n=(r=this.db).clear)||void 0===n||n.call(r),this.renderer=i[this.type].renderer,this.parser=i[this.type].parser,this.parser.parser.yy=this.db,"function"==typeof i[this.type].init&&(i[this.type].init(a),o.debug("Initialized diagram "+this.type,a)),this.txt=this.txt+"\n",this.parser.parser.yy.graphType=this.type,this.parser.parser.yy.parseError=function(t,e){throw{str:t,hash:e}},this.parser.parse(this.txt)}var e,r;return e=t,(r=[{key:"parse",value:function(t){var e=!1;try{t+="\n",this.db.clear(),this.parser.parse(t)}catch(t){if(e=!0,!n.g.mermaid.parseError)throw t;null!=t.str?n.g.mermaid.parseError(t.str,t.hash):n.g.mermaid.parseError(t)}return!e}},{key:"getParser",value:function(){return this.parser}},{key:"getType",value:function(){return this.type}}])&&function(t,e){for(var n=0;n<e.length;n++){var r=e[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,r.key,r)}}(e.prototype,r),Object.defineProperty(e,"prototype",{writable:!1}),t}();const _l=vl,xl=function(t){return"g.classGroup text {\n fill: ".concat(t.nodeBorder,";\n fill: ").concat(t.classText,";\n stroke: none;\n font-family: ").concat(t.fontFamily,";\n font-size: 10px;\n\n .title {\n font-weight: bolder;\n }\n\n}\n\n.nodeLabel, .edgeLabel {\n color: ").concat(t.classText,";\n}\n.edgeLabel .label rect {\n fill: ").concat(t.mainBkg,";\n}\n.label text {\n fill: ").concat(t.classText,";\n}\n.edgeLabel .label span {\n background: ").concat(t.mainBkg,";\n}\n\n.classTitle {\n font-weight: bolder;\n}\n.node rect,\n .node circle,\n .node ellipse,\n .node polygon,\n .node path {\n fill: ").concat(t.mainBkg,";\n stroke: ").concat(t.nodeBorder,";\n stroke-width: 1px;\n }\n\n\n.divider {\n stroke: ").concat(t.nodeBorder,";\n stroke: 1;\n}\n\ng.clickable {\n cursor: pointer;\n}\n\ng.classGroup rect {\n fill: ").concat(t.mainBkg,";\n stroke: ").concat(t.nodeBorder,";\n}\n\ng.classGroup line {\n stroke: ").concat(t.nodeBorder,";\n stroke-width: 1;\n}\n\n.classLabel .box {\n stroke: none;\n stroke-width: 0;\n fill: ").concat(t.mainBkg,";\n opacity: 0.5;\n}\n\n.classLabel .label {\n fill: ").concat(t.nodeBorder,";\n font-size: 10px;\n}\n\n.relation {\n stroke: ").concat(t.lineColor,";\n stroke-width: 1;\n fill: none;\n}\n\n.dashed-line{\n stroke-dasharray: 3;\n}\n\n#compositionStart, .composition {\n fill: ").concat(t.lineColor," !important;\n stroke: ").concat(t.lineColor," !important;\n stroke-width: 1;\n}\n\n#compositionEnd, .composition {\n fill: ").concat(t.lineColor," !important;\n stroke: ").concat(t.lineColor," !important;\n stroke-width: 1;\n}\n\n#dependencyStart, .dependency {\n fill: ").concat(t.lineColor," !important;\n stroke: ").concat(t.lineColor," !important;\n stroke-width: 1;\n}\n\n#dependencyStart, .dependency {\n fill: ").concat(t.lineColor," !important;\n stroke: ").concat(t.lineColor," !important;\n stroke-width: 1;\n}\n\n#extensionStart, .extension {\n fill: ").concat(t.lineColor," !important;\n stroke: ").concat(t.lineColor," !important;\n stroke-width: 1;\n}\n\n#extensionEnd, .extension {\n fill: ").concat(t.lineColor," !important;\n stroke: ").concat(t.lineColor," !important;\n stroke-width: 1;\n}\n\n#aggregationStart, .aggregation {\n fill: ").concat(t.mainBkg," !important;\n stroke: ").concat(t.lineColor," !important;\n stroke-width: 1;\n}\n\n#aggregationEnd, .aggregation {\n fill: ").concat(t.mainBkg," !important;\n stroke: ").concat(t.lineColor," !important;\n stroke-width: 1;\n}\n\n#lollipopStart, .lollipop {\n fill: ").concat(t.mainBkg," !important;\n stroke: ").concat(t.lineColor," !important;\n stroke-width: 1;\n}\n\n#lollipopEnd, .lollipop {\n fill: ").concat(t.mainBkg," !important;\n stroke: ").concat(t.lineColor," !important;\n stroke-width: 1;\n}\n\n.edgeTerminals {\n font-size: 11px;\n}\n\n")},kl=function(t){return".label {\n font-family: ".concat(t.fontFamily,";\n color: ").concat(t.nodeTextColor||t.textColor,";\n }\n .cluster-label text {\n fill: ").concat(t.titleColor,";\n }\n .cluster-label span {\n color: ").concat(t.titleColor,";\n }\n\n .label text,span {\n fill: ").concat(t.nodeTextColor||t.textColor,";\n color: ").concat(t.nodeTextColor||t.textColor,";\n }\n\n .node rect,\n .node circle,\n .node ellipse,\n .node polygon,\n .node path {\n fill: ").concat(t.mainBkg,";\n stroke: ").concat(t.nodeBorder,";\n stroke-width: 1px;\n }\n\n .node .label {\n text-align: center;\n }\n .node.clickable {\n cursor: pointer;\n }\n\n .arrowheadPath {\n fill: ").concat(t.arrowheadColor,";\n }\n\n .edgePath .path {\n stroke: ").concat(t.lineColor,";\n stroke-width: 2.0px;\n }\n\n .flowchart-link {\n stroke: ").concat(t.lineColor,";\n fill: none;\n }\n\n .edgeLabel {\n background-color: ").concat(t.edgeLabelBackground,";\n rect {\n opacity: 0.5;\n background-color: ").concat(t.edgeLabelBackground,";\n fill: ").concat(t.edgeLabelBackground,";\n }\n text-align: center;\n }\n\n .cluster rect {\n fill: ").concat(t.clusterBkg,";\n stroke: ").concat(t.clusterBorder,";\n stroke-width: 1px;\n }\n\n .cluster text {\n fill: ").concat(t.titleColor,";\n }\n\n .cluster span {\n color: ").concat(t.titleColor,";\n }\n /* .cluster div {\n color: ").concat(t.titleColor,";\n } */\n\n div.mermaidTooltip {\n position: absolute;\n text-align: center;\n max-width: 200px;\n padding: 2px;\n font-family: ").concat(t.fontFamily,";\n font-size: 12px;\n background: ").concat(t.tertiaryColor,";\n border: 1px solid ").concat(t.border2,";\n border-radius: 2px;\n pointer-events: none;\n z-index: 100;\n }\n")},wl=function(t){return"\ndefs #statediagram-barbEnd {\n fill: ".concat(t.transitionColor,";\n stroke: ").concat(t.transitionColor,";\n }\ng.stateGroup text {\n fill: ").concat(t.nodeBorder,";\n stroke: none;\n font-size: 10px;\n}\ng.stateGroup text {\n fill: ").concat(t.textColor,";\n stroke: none;\n font-size: 10px;\n\n}\ng.stateGroup .state-title {\n font-weight: bolder;\n fill: ").concat(t.stateLabelColor,";\n}\n\ng.stateGroup rect {\n fill: ").concat(t.mainBkg,";\n stroke: ").concat(t.nodeBorder,";\n}\n\ng.stateGroup line {\n stroke: ").concat(t.lineColor,";\n stroke-width: 1;\n}\n\n.transition {\n stroke: ").concat(t.transitionColor,";\n stroke-width: 1;\n fill: none;\n}\n\n.stateGroup .composit {\n fill: ").concat(t.background,";\n border-bottom: 1px\n}\n\n.stateGroup .alt-composit {\n fill: #e0e0e0;\n border-bottom: 1px\n}\n\n.state-note {\n stroke: ").concat(t.noteBorderColor,";\n fill: ").concat(t.noteBkgColor,";\n\n text {\n fill: ").concat(t.noteTextColor,";\n stroke: none;\n font-size: 10px;\n }\n}\n\n.stateLabel .box {\n stroke: none;\n stroke-width: 0;\n fill: ").concat(t.mainBkg,";\n opacity: 0.5;\n}\n\n.edgeLabel .label rect {\n fill: ").concat(t.labelBackgroundColor,";\n opacity: 0.5;\n}\n.edgeLabel .label text {\n fill: ").concat(t.transitionLabelColor||t.tertiaryTextColor,";\n}\n.label div .edgeLabel {\n color: ").concat(t.transitionLabelColor||t.tertiaryTextColor,";\n}\n\n.stateLabel text {\n fill: ").concat(t.stateLabelColor,";\n font-size: 10px;\n font-weight: bold;\n}\n\n.node circle.state-start {\n fill: ").concat(t.specialStateColor,";\n stroke: ").concat(t.specialStateColor,";\n}\n\n.node .fork-join {\n fill: ").concat(t.specialStateColor,";\n stroke: ").concat(t.specialStateColor,";\n}\n\n.node circle.state-end {\n fill: ").concat(t.innerEndBackground,";\n stroke: ").concat(t.background,";\n stroke-width: 1.5\n}\n.end-state-inner {\n fill: ").concat(t.compositeBackground||t.background,";\n // stroke: ").concat(t.background,";\n stroke-width: 1.5\n}\n\n.node rect {\n fill: ").concat(t.stateBkg||t.mainBkg,";\n stroke: ").concat(t.stateBorder||t.nodeBorder,";\n stroke-width: 1px;\n}\n.node polygon {\n fill: ").concat(t.mainBkg,";\n stroke: ").concat(t.stateBorder||t.nodeBorder,";;\n stroke-width: 1px;\n}\n#statediagram-barbEnd {\n fill: ").concat(t.lineColor,";\n}\n\n.statediagram-cluster rect {\n fill: ").concat(t.compositeTitleBackground,";\n stroke: ").concat(t.stateBorder||t.nodeBorder,";\n stroke-width: 1px;\n}\n\n.cluster-label, .nodeLabel {\n color: ").concat(t.stateLabelColor,";\n}\n\n.statediagram-cluster rect.outer {\n rx: 5px;\n ry: 5px;\n}\n.statediagram-state .divider {\n stroke: ").concat(t.stateBorder||t.nodeBorder,";\n}\n\n.statediagram-state .title-state {\n rx: 5px;\n ry: 5px;\n}\n.statediagram-cluster.statediagram-cluster .inner {\n fill: ").concat(t.compositeBackground||t.background,";\n}\n.statediagram-cluster.statediagram-cluster-alt .inner {\n fill: ").concat(t.altBackground?t.altBackground:"#efefef",";\n}\n\n.statediagram-cluster .inner {\n rx:0;\n ry:0;\n}\n\n.statediagram-state rect.basic {\n rx: 5px;\n ry: 5px;\n}\n.statediagram-state rect.divider {\n stroke-dasharray: 10,10;\n fill: ").concat(t.altBackground?t.altBackground:"#efefef",";\n}\n\n.note-edge {\n stroke-dasharray: 5;\n}\n\n.statediagram-note rect {\n fill: ").concat(t.noteBkgColor,";\n stroke: ").concat(t.noteBorderColor,";\n stroke-width: 1px;\n rx: 0;\n ry: 0;\n}\n.statediagram-note rect {\n fill: ").concat(t.noteBkgColor,";\n stroke: ").concat(t.noteBorderColor,";\n stroke-width: 1px;\n rx: 0;\n ry: 0;\n}\n\n.statediagram-note text {\n fill: ").concat(t.noteTextColor,";\n}\n\n.statediagram-note .nodeLabel {\n color: ").concat(t.noteTextColor,";\n}\n.statediagram .edgeLabel {\n color: red; // ").concat(t.noteTextColor,";\n}\n\n#dependencyStart, #dependencyEnd {\n fill: ").concat(t.lineColor,";\n stroke: ").concat(t.lineColor,";\n stroke-width: 1;\n}\n")};var El={flowchart:kl,"flowchart-v2":kl,sequence:function(t){return".actor {\n stroke: ".concat(t.actorBorder,";\n fill: ").concat(t.actorBkg,";\n }\n\n text.actor > tspan {\n fill: ").concat(t.actorTextColor,";\n stroke: none;\n }\n\n .actor-line {\n stroke: ").concat(t.actorLineColor,";\n }\n\n .messageLine0 {\n stroke-width: 1.5;\n stroke-dasharray: none;\n stroke: ").concat(t.signalColor,";\n }\n\n .messageLine1 {\n stroke-width: 1.5;\n stroke-dasharray: 2, 2;\n stroke: ").concat(t.signalColor,";\n }\n\n #arrowhead path {\n fill: ").concat(t.signalColor,";\n stroke: ").concat(t.signalColor,";\n }\n\n .sequenceNumber {\n fill: ").concat(t.sequenceNumberColor,";\n }\n\n #sequencenumber {\n fill: ").concat(t.signalColor,";\n }\n\n #crosshead path {\n fill: ").concat(t.signalColor,";\n stroke: ").concat(t.signalColor,";\n }\n\n .messageText {\n fill: ").concat(t.signalTextColor,";\n stroke: none;\n }\n\n .labelBox {\n stroke: ").concat(t.labelBoxBorderColor,";\n fill: ").concat(t.labelBoxBkgColor,";\n }\n\n .labelText, .labelText > tspan {\n fill: ").concat(t.labelTextColor,";\n stroke: none;\n }\n\n .loopText, .loopText > tspan {\n fill: ").concat(t.loopTextColor,";\n stroke: none;\n }\n\n .loopLine {\n stroke-width: 2px;\n stroke-dasharray: 2, 2;\n stroke: ").concat(t.labelBoxBorderColor,";\n fill: ").concat(t.labelBoxBorderColor,";\n }\n\n .note {\n //stroke: #decc93;\n stroke: ").concat(t.noteBorderColor,";\n fill: ").concat(t.noteBkgColor,";\n }\n\n .noteText, .noteText > tspan {\n fill: ").concat(t.noteTextColor,";\n stroke: none;\n }\n\n .activation0 {\n fill: ").concat(t.activationBkgColor,";\n stroke: ").concat(t.activationBorderColor,";\n }\n\n .activation1 {\n fill: ").concat(t.activationBkgColor,";\n stroke: ").concat(t.activationBorderColor,";\n }\n\n .activation2 {\n fill: ").concat(t.activationBkgColor,";\n stroke: ").concat(t.activationBorderColor,";\n }\n\n .actorPopupMenu {\n position: absolute;\n }\n\n .actorPopupMenuPanel {\n position: absolute;\n fill: ").concat(t.actorBkg,";\n box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);\n filter: drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4));\n}\n .actor-man line {\n stroke: ").concat(t.actorBorder,";\n fill: ").concat(t.actorBkg,";\n }\n .actor-man circle, line {\n stroke: ").concat(t.actorBorder,";\n fill: ").concat(t.actorBkg,";\n stroke-width: 2px;\n }\n")},gantt:function(t){return'\n .mermaid-main-font {\n font-family: "trebuchet ms", verdana, arial, sans-serif;\n font-family: var(--mermaid-font-family);\n }\n .exclude-range {\n fill: '.concat(t.excludeBkgColor,";\n }\n\n .section {\n stroke: none;\n opacity: 0.2;\n }\n\n .section0 {\n fill: ").concat(t.sectionBkgColor,";\n }\n\n .section2 {\n fill: ").concat(t.sectionBkgColor2,";\n }\n\n .section1,\n .section3 {\n fill: ").concat(t.altSectionBkgColor,";\n opacity: 0.2;\n }\n\n .sectionTitle0 {\n fill: ").concat(t.titleColor,";\n }\n\n .sectionTitle1 {\n fill: ").concat(t.titleColor,";\n }\n\n .sectionTitle2 {\n fill: ").concat(t.titleColor,";\n }\n\n .sectionTitle3 {\n fill: ").concat(t.titleColor,";\n }\n\n .sectionTitle {\n text-anchor: start;\n // font-size: ").concat(t.ganttFontSize,";\n // text-height: 14px;\n font-family: 'trebuchet ms', verdana, arial, sans-serif;\n font-family: var(--mermaid-font-family);\n\n }\n\n\n /* Grid and axis */\n\n .grid .tick {\n stroke: ").concat(t.gridColor,";\n opacity: 0.8;\n shape-rendering: crispEdges;\n text {\n font-family: ").concat(t.fontFamily,";\n fill: ").concat(t.textColor,";\n }\n }\n\n .grid path {\n stroke-width: 0;\n }\n\n\n /* Today line */\n\n .today {\n fill: none;\n stroke: ").concat(t.todayLineColor,";\n stroke-width: 2px;\n }\n\n\n /* Task styling */\n\n /* Default task */\n\n .task {\n stroke-width: 2;\n }\n\n .taskText {\n text-anchor: middle;\n font-family: 'trebuchet ms', verdana, arial, sans-serif;\n font-family: var(--mermaid-font-family);\n }\n\n // .taskText:not([font-size]) {\n // font-size: ").concat(t.ganttFontSize,";\n // }\n\n .taskTextOutsideRight {\n fill: ").concat(t.taskTextDarkColor,";\n text-anchor: start;\n // font-size: ").concat(t.ganttFontSize,";\n font-family: 'trebuchet ms', verdana, arial, sans-serif;\n font-family: var(--mermaid-font-family);\n\n }\n\n .taskTextOutsideLeft {\n fill: ").concat(t.taskTextDarkColor,";\n text-anchor: end;\n // font-size: ").concat(t.ganttFontSize,";\n }\n\n /* Special case clickable */\n .task.clickable {\n cursor: pointer;\n }\n .taskText.clickable {\n cursor: pointer;\n fill: ").concat(t.taskTextClickableColor," !important;\n font-weight: bold;\n }\n\n .taskTextOutsideLeft.clickable {\n cursor: pointer;\n fill: ").concat(t.taskTextClickableColor," !important;\n font-weight: bold;\n }\n\n .taskTextOutsideRight.clickable {\n cursor: pointer;\n fill: ").concat(t.taskTextClickableColor," !important;\n font-weight: bold;\n }\n\n /* Specific task settings for the sections*/\n\n .taskText0,\n .taskText1,\n .taskText2,\n .taskText3 {\n fill: ").concat(t.taskTextColor,";\n }\n\n .task0,\n .task1,\n .task2,\n .task3 {\n fill: ").concat(t.taskBkgColor,";\n stroke: ").concat(t.taskBorderColor,";\n }\n\n .taskTextOutside0,\n .taskTextOutside2\n {\n fill: ").concat(t.taskTextOutsideColor,";\n }\n\n .taskTextOutside1,\n .taskTextOutside3 {\n fill: ").concat(t.taskTextOutsideColor,";\n }\n\n\n /* Active task */\n\n .active0,\n .active1,\n .active2,\n .active3 {\n fill: ").concat(t.activeTaskBkgColor,";\n stroke: ").concat(t.activeTaskBorderColor,";\n }\n\n .activeText0,\n .activeText1,\n .activeText2,\n .activeText3 {\n fill: ").concat(t.taskTextDarkColor," !important;\n }\n\n\n /* Completed task */\n\n .done0,\n .done1,\n .done2,\n .done3 {\n stroke: ").concat(t.doneTaskBorderColor,";\n fill: ").concat(t.doneTaskBkgColor,";\n stroke-width: 2;\n }\n\n .doneText0,\n .doneText1,\n .doneText2,\n .doneText3 {\n fill: ").concat(t.taskTextDarkColor," !important;\n }\n\n\n /* Tasks on the critical line */\n\n .crit0,\n .crit1,\n .crit2,\n .crit3 {\n stroke: ").concat(t.critBorderColor,";\n fill: ").concat(t.critBkgColor,";\n stroke-width: 2;\n }\n\n .activeCrit0,\n .activeCrit1,\n .activeCrit2,\n .activeCrit3 {\n stroke: ").concat(t.critBorderColor,";\n fill: ").concat(t.activeTaskBkgColor,";\n stroke-width: 2;\n }\n\n .doneCrit0,\n .doneCrit1,\n .doneCrit2,\n .doneCrit3 {\n stroke: ").concat(t.critBorderColor,";\n fill: ").concat(t.doneTaskBkgColor,";\n stroke-width: 2;\n cursor: pointer;\n shape-rendering: crispEdges;\n }\n\n .milestone {\n transform: rotate(45deg) scale(0.8,0.8);\n }\n\n .milestoneText {\n font-style: italic;\n }\n .doneCritText0,\n .doneCritText1,\n .doneCritText2,\n .doneCritText3 {\n fill: ").concat(t.taskTextDarkColor," !important;\n }\n\n .activeCritText0,\n .activeCritText1,\n .activeCritText2,\n .activeCritText3 {\n fill: ").concat(t.taskTextDarkColor," !important;\n }\n\n .titleText {\n text-anchor: middle;\n font-size: 18px;\n fill: ").concat(t.textColor," ;\n font-family: 'trebuchet ms', verdana, arial, sans-serif;\n font-family: var(--mermaid-font-family);\n }\n")},classDiagram:xl,"classDiagram-v2":xl,class:xl,stateDiagram:wl,state:wl,gitGraph:function(t){return"\n .commit-id,\n .commit-msg,\n .branch-label {\n fill: lightgrey;\n color: lightgrey;\n font-family: 'trebuchet ms', verdana, arial, sans-serif;\n font-family: var(--mermaid-font-family);\n }\n ".concat([0,1,2,3,4,5,6,7].map((function(e){return"\n .branch-label".concat(e," { fill: ").concat(t["gitBranchLabel"+e],"; }\n .commit").concat(e," { stroke: ").concat(t["git"+e],"; fill: ").concat(t["git"+e],"; }\n .commit-highlight").concat(e," { stroke: ").concat(t["gitInv"+e],"; fill: ").concat(t["gitInv"+e],"; }\n .label").concat(e," { fill: ").concat(t["git"+e],"; }\n .arrow").concat(e," { stroke: ").concat(t["git"+e],"; }\n ")})).join("\n"),"\n\n .branch {\n stroke-width: 1;\n stroke: ").concat(t.lineColor,";\n stroke-dasharray: 2;\n }\n .commit-label { font-size: ").concat(t.commitLabelFontSize,"; fill: ").concat(t.commitLabelColor,";}\n .commit-label-bkg { font-size: ").concat(t.commitLabelFontSize,"; fill: ").concat(t.commitLabelBackground,"; opacity: 0.5; }\n .tag-label { font-size: ").concat(t.tagLabelFontSize,"; fill: ").concat(t.tagLabelColor,";}\n .tag-label-bkg { fill: ").concat(t.tagLabelBackground,"; stroke: ").concat(t.tagLabelBorder,"; }\n .tag-hole { fill: ").concat(t.textColor,"; }\n\n .commit-merge {\n stroke: ").concat(t.primaryColor,";\n fill: ").concat(t.primaryColor,";\n }\n .commit-reverse {\n stroke: ").concat(t.primaryColor,";\n fill: ").concat(t.primaryColor,";\n stroke-width: 3;\n }\n .commit-highlight-outer {\n }\n .commit-highlight-inner {\n stroke: ").concat(t.primaryColor,";\n fill: ").concat(t.primaryColor,";\n }\n\n .arrow { stroke-width: 8; stroke-linecap: round; fill: none}\n }\n")},info:function(){return""},pie:function(t){return"\n .pieCircle{\n stroke: ".concat(t.pieStrokeColor,";\n stroke-width : ").concat(t.pieStrokeWidth,";\n opacity : ").concat(t.pieOpacity,";\n }\n .pieTitleText {\n text-anchor: middle;\n font-size: ").concat(t.pieTitleTextSize,";\n fill: ").concat(t.pieTitleTextColor,";\n font-family: ").concat(t.fontFamily,";\n }\n .slice {\n font-family: ").concat(t.fontFamily,";\n fill: ").concat(t.pieSectionTextColor,";\n font-size:").concat(t.pieSectionTextSize,";\n // fill: white;\n }\n .legend text {\n fill: ").concat(t.pieLegendTextColor,";\n font-family: ").concat(t.fontFamily,";\n font-size: ").concat(t.pieLegendTextSize,";\n }\n")},er:function(t){return"\n .entityBox {\n fill: ".concat(t.mainBkg,";\n stroke: ").concat(t.nodeBorder,";\n }\n\n .attributeBoxOdd {\n fill: #ffffff;\n stroke: ").concat(t.nodeBorder,";\n }\n\n .attributeBoxEven {\n fill: #f2f2f2;\n stroke: ").concat(t.nodeBorder,";\n }\n\n .relationshipLabelBox {\n fill: ").concat(t.tertiaryColor,";\n opacity: 0.7;\n background-color: ").concat(t.tertiaryColor,";\n rect {\n opacity: 0.5;\n }\n }\n\n .relationshipLine {\n stroke: ").concat(t.lineColor,";\n }\n")},error:function(){return""},journey:function(t){return".label {\n font-family: 'trebuchet ms', verdana, arial, sans-serif;\n font-family: var(--mermaid-font-family);\n color: ".concat(t.textColor,";\n }\n .mouth {\n stroke: #666;\n }\n\n line {\n stroke: ").concat(t.textColor,"\n }\n\n .legend {\n fill: ").concat(t.textColor,";\n }\n\n .label text {\n fill: #333;\n }\n .label {\n color: ").concat(t.textColor,"\n }\n\n .face {\n ").concat(t.faceColor?"fill: ".concat(t.faceColor):"fill: #FFF8DC",";\n stroke: #999;\n }\n\n .node rect,\n .node circle,\n .node ellipse,\n .node polygon,\n .node path {\n fill: ").concat(t.mainBkg,";\n stroke: ").concat(t.nodeBorder,";\n stroke-width: 1px;\n }\n\n .node .label {\n text-align: center;\n }\n .node.clickable {\n cursor: pointer;\n }\n\n .arrowheadPath {\n fill: ").concat(t.arrowheadColor,";\n }\n\n .edgePath .path {\n stroke: ").concat(t.lineColor,";\n stroke-width: 1.5px;\n }\n\n .flowchart-link {\n stroke: ").concat(t.lineColor,";\n fill: none;\n }\n\n .edgeLabel {\n background-color: ").concat(t.edgeLabelBackground,";\n rect {\n opacity: 0.5;\n }\n text-align: center;\n }\n\n .cluster rect {\n }\n\n .cluster text {\n fill: ").concat(t.titleColor,";\n }\n\n div.mermaidTooltip {\n position: absolute;\n text-align: center;\n max-width: 200px;\n padding: 2px;\n font-family: 'trebuchet ms', verdana, arial, sans-serif;\n font-family: var(--mermaid-font-family);\n font-size: 12px;\n background: ").concat(t.tertiaryColor,";\n border: 1px solid ").concat(t.border2,";\n border-radius: 2px;\n pointer-events: none;\n z-index: 100;\n }\n\n .task-type-0, .section-type-0 {\n ").concat(t.fillType0?"fill: ".concat(t.fillType0):"",";\n }\n .task-type-1, .section-type-1 {\n ").concat(t.fillType0?"fill: ".concat(t.fillType1):"",";\n }\n .task-type-2, .section-type-2 {\n ").concat(t.fillType0?"fill: ".concat(t.fillType2):"",";\n }\n .task-type-3, .section-type-3 {\n ").concat(t.fillType0?"fill: ".concat(t.fillType3):"",";\n }\n .task-type-4, .section-type-4 {\n ").concat(t.fillType0?"fill: ".concat(t.fillType4):"",";\n }\n .task-type-5, .section-type-5 {\n ").concat(t.fillType0?"fill: ".concat(t.fillType5):"",";\n }\n .task-type-6, .section-type-6 {\n ").concat(t.fillType0?"fill: ".concat(t.fillType6):"",";\n }\n .task-type-7, .section-type-7 {\n ").concat(t.fillType0?"fill: ".concat(t.fillType7):"",";\n }\n\n .actor-0 {\n ").concat(t.actor0?"fill: ".concat(t.actor0):"",";\n }\n .actor-1 {\n ").concat(t.actor1?"fill: ".concat(t.actor1):"",";\n }\n .actor-2 {\n ").concat(t.actor2?"fill: ".concat(t.actor2):"",";\n }\n .actor-3 {\n ").concat(t.actor3?"fill: ".concat(t.actor3):"",";\n }\n .actor-4 {\n ").concat(t.actor4?"fill: ".concat(t.actor4):"",";\n }\n .actor-5 {\n ").concat(t.actor5?"fill: ".concat(t.actor5):"",";\n }\n\n }\n")},requirement:function(t){return"\n\n marker {\n fill: ".concat(t.relationColor,";\n stroke: ").concat(t.relationColor,";\n }\n\n marker.cross {\n stroke: ").concat(t.lineColor,";\n }\n\n svg {\n font-family: ").concat(t.fontFamily,";\n font-size: ").concat(t.fontSize,";\n }\n\n .reqBox {\n fill: ").concat(t.requirementBackground,";\n fill-opacity: 100%;\n stroke: ").concat(t.requirementBorderColor,";\n stroke-width: ").concat(t.requirementBorderSize,";\n }\n \n .reqTitle, .reqLabel{\n fill: ").concat(t.requirementTextColor,";\n }\n .reqLabelBox {\n fill: ").concat(t.relationLabelBackground,";\n fill-opacity: 100%;\n }\n\n .req-title-line {\n stroke: ").concat(t.requirementBorderColor,";\n stroke-width: ").concat(t.requirementBorderSize,";\n }\n .relationshipLine {\n stroke: ").concat(t.relationColor,";\n stroke-width: 1;\n }\n .relationshipLabel {\n fill: ").concat(t.relationLabelColor,";\n }\n\n")},c4:function(t){return".person {\n stroke: ".concat(t.personBorder,";\n fill: ").concat(t.personBkg,";\n }\n")}};function Tl(t){return Tl="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Tl(t)}var Cl=!1,Sl=function(t){return t.replace(/\ufb02\xb0\xb0/g,(function(){return"&#"})).replace(/\ufb02\xb0/g,(function(){return"&"})).replace(/\xb6\xdf/g,(function(){return";"}))},Al={};function Ml(t){ba.setConf(t.flowchart),ka.setConf(t.flowchart),void 0!==t.sequenceDiagram&&Is.setConf(Q(t.sequence,t.sequenceDiagram)),Is.setConf(t.sequence),ao.setConf(t.gantt),sc.setConf(t.state),pc.setConf(t.state),Fc.setConf(t.journey),ki.setConf(t.class)}var Ol=Object.freeze({render:function(t,e,n,r){Cl||(ml(),Cl=!0),Gt();var i=e.replace(/\r\n?/g,"\n"),a=kn.detectInit(i);a&&(_n(a),Vt(a));var s=qt();o.debug(s),e.length>s.maxTextSize&&(i="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa");var c,u,h=(0,l.select)("body");if(void 0!==r){if("sandbox"===s.securityLevel){var d=(0,l.select)("body").append("iframe").attr("id","i"+t).attr("style","width: 100%; height: 100%;").attr("sandbox","");(h=(0,l.select)(d.nodes()[0].contentDocument.body)).node().style.margin=0}if(r.innerHTML="","sandbox"===s.securityLevel){var f=(0,l.select)(r).append("iframe").attr("id","i"+t).attr("style","width: 100%; height: 100%;").attr("sandbox","");(h=(0,l.select)(f.nodes()[0].contentDocument.body)).node().style.margin=0}else h=(0,l.select)(r);h.append("div").attr("id","d"+t).attr("style","font-family: "+s.fontFamily).append("svg").attr("id",t).attr("width","100%").attr("xmlns","http://www.w3.org/2000/svg").attr("xmlns:xlink","http://www.w3.org/1999/xlink").append("g")}else{var p,g=document.getElementById(t);if(g&&g.remove(),(p="sandbox"!==s.securityLevel?document.querySelector("#d"+t):document.querySelector("#i"+t))&&p.remove(),"sandbox"===s.securityLevel){var y=(0,l.select)("body").append("iframe").attr("id","i"+t).attr("style","width: 100%; height: 100%;").attr("sandbox","");(h=(0,l.select)(y.nodes()[0].contentDocument.body)).node().style.margin=0}else h=(0,l.select)("body");h.append("div").attr("id","d"+t).append("svg").attr("id",t).attr("width","100%").attr("xmlns","http://www.w3.org/2000/svg").append("g")}i=i.replace(/style.*:\S*#.*;/g,(function(t){return t.substring(0,t.length-1)})).replace(/classDef.*:\S*#.*;/g,(function(t){return t.substring(0,t.length-1)})).replace(/#\w+;/g,(function(t){var e=t.substring(1,t.length-1);return/^\+?\d+$/.test(e)?"\ufb02\xb0\xb0"+e+"\xb6\xdf":"\ufb02\xb0"+e+"\xb6\xdf"}));try{c=new _l(i)}catch(t){c=new _l("error"),u=t}var m=h.select("#d"+t).node(),b=c.type,v=m.firstChild,_=v.firstChild,x="";if(void 0!==s.themeCSS&&(x+="\n".concat(s.themeCSS)),void 0!==s.fontFamily&&(x+="\n:root { --mermaid-font-family: ".concat(s.fontFamily,"}")),void 0!==s.altFontFamily&&(x+="\n:root { --mermaid-alt-font-family: ".concat(s.altFontFamily,"}")),"flowchart"===b||"flowchart-v2"===b||"graph"===b){var k=ba.getClasses(i,c),T=s.htmlLabels||s.flowchart.htmlLabels;for(var C in k)T?(x+="\n.".concat(C," > * { ").concat(k[C].styles.join(" !important; ")," !important; }"),x+="\n.".concat(C," span { ").concat(k[C].styles.join(" !important; ")," !important; }")):(x+="\n.".concat(C," path { ").concat(k[C].styles.join(" !important; ")," !important; }"),x+="\n.".concat(C," rect { ").concat(k[C].styles.join(" !important; ")," !important; }"),x+="\n.".concat(C," polygon { ").concat(k[C].styles.join(" !important; ")," !important; }"),x+="\n.".concat(C," ellipse { ").concat(k[C].styles.join(" !important; ")," !important; }"),x+="\n.".concat(C," circle { ").concat(k[C].styles.join(" !important; ")," !important; }"),k[C].textStyles&&(x+="\n.".concat(C," tspan { ").concat(k[C].textStyles.join(" !important; ")," !important; }")))}var S=function(t,e){return w(W("".concat(t,"{").concat(e,"}")),E)}("#".concat(t),function(t,e,n){return" {\n font-family: ".concat(n.fontFamily,";\n font-size: ").concat(n.fontSize,";\n fill: ").concat(n.textColor,"\n }\n\n /* Classes common for multiple diagrams */\n\n .error-icon {\n fill: ").concat(n.errorBkgColor,";\n }\n .error-text {\n fill: ").concat(n.errorTextColor,";\n stroke: ").concat(n.errorTextColor,";\n }\n\n .edge-thickness-normal {\n stroke-width: 2px;\n }\n .edge-thickness-thick {\n stroke-width: 3.5px\n }\n .edge-pattern-solid {\n stroke-dasharray: 0;\n }\n\n .edge-pattern-dashed{\n stroke-dasharray: 3;\n }\n .edge-pattern-dotted {\n stroke-dasharray: 2;\n }\n\n .marker {\n fill: ").concat(n.lineColor,";\n stroke: ").concat(n.lineColor,";\n }\n .marker.cross {\n stroke: ").concat(n.lineColor,";\n }\n\n svg {\n font-family: ").concat(n.fontFamily,";\n font-size: ").concat(n.fontSize,";\n }\n\n ").concat(El[t](n),"\n\n ").concat(e,"\n")}(b,x,s.themeVariables)),A=document.createElement("style");A.innerHTML="#".concat(t," ")+S,v.insertBefore(A,_);try{c.renderer.draw(i,t,X,c)}catch(e){throw ki.draw(t,X),e}h.select('[id="'.concat(t,'"]')).selectAll("foreignobject > *").attr("xmlns","http://www.w3.org/1999/xhtml");var M=h.select("#d"+t).node().innerHTML;if(o.debug("cnf.arrowMarkerAbsolute",s.arrowMarkerAbsolute),s.arrowMarkerAbsolute&&"false"!==s.arrowMarkerAbsolute||"sandbox"===s.arrowMarkerAbsolute||(M=M.replace(/marker-end="url\(.*?#/g,'marker-end="url(#',"g")),M=(M=Sl(M)).replace(/<br>/g,"<br/>"),"sandbox"===s.securityLevel){var O=h.select("#d"+t+" svg").node(),N="100%";O&&(N=O.viewBox.baseVal.height+"px"),M='<iframe style="width:'.concat("100%",";height:").concat(N,';border:0;margin:0;" src="data:text/html;base64,').concat(btoa('<body style="margin:0">'+M+"</body>"),'" sandbox="allow-top-navigation-by-user-activation allow-popups">\n The \u201ciframe\u201d tag is not supported by your browser.\n</iframe>')}else"loose"!==s.securityLevel&&(M=Zt().sanitize(M,{ADD_TAGS:["foreignobject"],ADD_ATTR:["dominant-baseline"]}));if(void 0!==n)switch(b){case"flowchart":case"flowchart-v2":n(M,Ki.bindFunctions);break;case"gantt":n(M,no.bindFunctions);break;case"class":case"classDiagram":n(M,ar.bindFunctions);break;default:n(M)}else o.debug("CB = undefined!");ss.forEach((function(t){t()})),ss=[];var D="sandbox"===s.securityLevel?"#i"+t:"#d"+t,B=(0,l.select)(D).node();if(null!==B&&"function"==typeof B.remove&&(0,l.select)(D).node().remove(),u)throw u;return M},parse:function(t,e){Cl||(ml(),Cl=!0);var n=!1;try{var r=e||new _l(t);return r.db.clear(),r.parse(t)}catch(t){if(n=!0,!Il.parseError)throw t;null!=t.str?Il.parseError(t.str,t.hash):Il.parseError(t)}return!n},parseDirective:function(t,e,n,r){try{if(void 0!==e)switch(e=e.trim(),n){case"open_directive":Al={};break;case"type_directive":Al.type=e.toLowerCase();break;case"arg_directive":Al.args=JSON.parse(e);break;case"close_directive":(function(t,e,n){switch(o.debug("Directive type=".concat(e.type," with args:"),e.args),e.type){case"init":case"initialize":["config"].forEach((function(t){void 0!==e.args[t]&&("flowchart-v2"===n&&(n="flowchart"),e.args[n]=e.args[t],delete e.args[t])})),o.debug("sanitize in handleDirective",e.args),_n(e.args),o.debug("sanitize in handleDirective (done)",e.args),Vt(e.args);break;case"wrap":case"nowrap":t&&t.setWrap&&t.setWrap("wrap"===e.type);break;case"themeCss":o.warn("themeCss encountered");break;default:o.warn("Unhandled directive: source: '%%{".concat(e.type,": ").concat(JSON.stringify(e.args?e.args:{}),"}%%"),e)}})(t,Al,r),Al=null}}catch(t){o.error("Error while rendering sequenceDiagram directive: ".concat(e," jison context: ").concat(n)),o.error(t.message)}},initialize:function(t){var e;null!=t&&t.fontFamily&&(null!==(e=t.themeVariables)&&void 0!==e&&e.fontFamily||(t.themeVariables={fontFamily:t.fontFamily})),function(t){Pt=Q({},t)}(t),null!=t&&t.theme&&Ot[t.theme]?t.themeVariables=Ot[t.theme].getThemeVariables(t.themeVariables):t&&(t.themeVariables=Ot.default.getThemeVariables(t.themeVariables));var n="object"===Tl(t)?function(t){return zt=Q({},jt),zt=Q(zt,t),t.theme&&Ot[t.theme]&&(zt.themeVariables=Ot[t.theme].getThemeVariables(t.themeVariables)),Ut=$t(zt,Yt),zt}(t):Wt();Ml(n),s(n.logLevel),Cl||(ml(),Cl=!0)},getConfig:qt,setConfig:function(t){return Q(Ut,t),qt()},getSiteConfig:Wt,updateSiteConfig:function(t){return zt=Q(zt,t),$t(zt,Yt),zt},reset:function(){Gt()},globalReset:function(){Gt(),Ml(qt())},defaultConfig:jt});s(qt().logLevel),Gt(qt());const Nl=Ol;var Dl=function(){var t,e,n=Nl.getConfig();arguments.length>=2?(void 0!==arguments[0]&&(Ll.sequenceConfig=arguments[0]),t=arguments[1]):t=arguments[0],"function"==typeof arguments[arguments.length-1]?(e=arguments[arguments.length-1],o.debug("Callback function found")):void 0!==n.mermaid&&("function"==typeof n.mermaid.callback?(e=n.mermaid.callback,o.debug("Callback function found")):o.debug("No Callback function found")),t=void 0===t?document.querySelectorAll(".mermaid"):"string"==typeof t?document.querySelectorAll(t):t instanceof window.Node?[t]:t,o.debug("Start On Load before: "+Ll.startOnLoad),void 0!==Ll.startOnLoad&&(o.debug("Start On Load inner: "+Ll.startOnLoad),Nl.updateSiteConfig({startOnLoad:Ll.startOnLoad})),void 0!==Ll.ganttConfig&&Nl.updateSiteConfig({gantt:Ll.ganttConfig});for(var r,i=new kn.initIdGenerator(n.deterministicIds,n.deterministicIDSeed),a=[],s=function(n){o.info("Rendering diagram: "+t[n].id,n);var s=t[n];if(s.getAttribute("data-processed"))return"continue";s.setAttribute("data-processed",!0);var c="mermaid-".concat(i.next());r=s.innerHTML,r=kn.entityDecode(r).trim().replace(/<br\s*\/?>/gi,"<br/>");var l=kn.detectInit(r);l&&o.debug("Detected early reinit: ",l);try{Nl.render(c,r,(function(t,n){s.innerHTML=t,void 0!==e&&e(c),n&&n(s)}),s)}catch(t){o.warn("Catching Error (bootstrap)",t),"function"==typeof Ll.parseError&&Ll.parseError({error:t,str:t.str,hash:t.hash,message:t.str}),a.push({error:t,str:t.str,hash:t.hash,message:t.str})}},c=0;c<t.length;c++)s(c);if(a.length>0)throw a[0]},Bl=function(){Ll.startOnLoad?Nl.getConfig().startOnLoad&&Ll.init():void 0===Ll.startOnLoad&&(o.debug("In start, no config"),Nl.getConfig().startOnLoad&&Ll.init())};"undefined"!=typeof document&&window.addEventListener("load",(function(){Bl()}),!1);var Ll={startOnLoad:!0,htmlLabels:!0,diagrams:{},mermaidAPI:Nl,parse:null!=Nl?Nl.parse:null,render:null!=Nl?Nl.render:null,init:function(){try{Dl.apply(void 0,arguments)}catch(t){o.warn("Syntax Error rendering"),o.warn(t.str)}},initThrowsErrors:Dl,initialize:function(t){void 0!==t.mermaid&&(void 0!==t.mermaid.startOnLoad&&(Ll.startOnLoad=t.mermaid.startOnLoad),void 0!==t.mermaid.htmlLabels&&(Ll.htmlLabels="false"!==t.mermaid.htmlLabels&&!1!==t.mermaid.htmlLabels)),Nl.initialize(t)},contentLoaded:Bl,setParseErrorHandler:function(t){Ll.parseError=t}};const Il=Ll},4949:(t,e,n)=>{t.exports={graphlib:n(6614),dagre:n(6478),intersect:n(8114),render:n(5787),util:n(8355),version:n(5689)}},9144:(t,e,n)=>{var r=n(8355);function i(t,e,n,i){var a=t.append("marker").attr("id",e).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").style("stroke-width",1).style("stroke-dasharray","1,0");r.applyStyle(a,n[i+"Style"]),n[i+"Class"]&&a.attr("class",n[i+"Class"])}t.exports={default:i,normal:i,vee:function(t,e,n,i){var a=t.append("marker").attr("id",e).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 L 4 5 z").style("stroke-width",1).style("stroke-dasharray","1,0");r.applyStyle(a,n[i+"Style"]),n[i+"Class"]&&a.attr("class",n[i+"Class"])},undirected:function(t,e,n,i){var a=t.append("marker").attr("id",e).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto").append("path").attr("d","M 0 5 L 10 5").style("stroke-width",1).style("stroke-dasharray","1,0");r.applyStyle(a,n[i+"Style"]),n[i+"Class"]&&a.attr("class",n[i+"Class"])}}},5632:(t,e,n)=>{var r=n(8355),i=n(4322),a=n(1322);t.exports=function(t,e){var n,o=e.nodes().filter((function(t){return r.isSubgraph(e,t)})),s=t.selectAll("g.cluster").data(o,(function(t){return t}));return s.selectAll("*").remove(),s.enter().append("g").attr("class","cluster").attr("id",(function(t){return e.node(t).id})).style("opacity",0),s=t.selectAll("g.cluster"),r.applyTransition(s,e).style("opacity",1),s.each((function(t){var n=e.node(t),r=i.select(this);i.select(this).append("rect");var o=r.append("g").attr("class","label");a(o,n,n.clusterLabelPos)})),s.selectAll("rect").each((function(t){var n=e.node(t),a=i.select(this);r.applyStyle(a,n.style)})),n=s.exit?s.exit():s.selectAll(null),r.applyTransition(n,e).style("opacity",0).remove(),s}},6315:(t,e,n)=>{var r=n(1034),i=n(1322),a=n(8355),o=n(4322);t.exports=function(t,e){var n,s=t.selectAll("g.edgeLabel").data(e.edges(),(function(t){return a.edgeToId(t)})).classed("update",!0);return s.exit().remove(),s.enter().append("g").classed("edgeLabel",!0).style("opacity",0),(s=t.selectAll("g.edgeLabel")).each((function(t){var n=o.select(this);n.select(".label").remove();var a=e.edge(t),s=i(n,e.edge(t),0,0).classed("label",!0),c=s.node().getBBox();a.labelId&&s.attr("id",a.labelId),r.has(a,"width")||(a.width=c.width),r.has(a,"height")||(a.height=c.height)})),n=s.exit?s.exit():s.selectAll(null),a.applyTransition(n,e).style("opacity",0).remove(),s}},940:(t,e,n)=>{var r=n(1034),i=n(3042),a=n(8355),o=n(4322);function s(t,e){var n=(o.line||o.svg.line)().x((function(t){return t.x})).y((function(t){return t.y}));return(n.curve||n.interpolate)(t.curve),n(e)}t.exports=function(t,e,n){var c=t.selectAll("g.edgePath").data(e.edges(),(function(t){return a.edgeToId(t)})).classed("update",!0),l=function(t,e){var n=t.enter().append("g").attr("class","edgePath").style("opacity",0);return n.append("path").attr("class","path").attr("d",(function(t){var n=e.edge(t),i=e.node(t.v).elem;return s(n,r.range(n.points.length).map((function(){return e=(t=i).getBBox(),{x:(n=t.ownerSVGElement.getScreenCTM().inverse().multiply(t.getScreenCTM()).translate(e.width/2,e.height/2)).e,y:n.f};var t,e,n})))})),n.append("defs"),n}(c,e);!function(t,e){var n=t.exit();a.applyTransition(n,e).style("opacity",0).remove()}(c,e);var u=void 0!==c.merge?c.merge(l):c;return a.applyTransition(u,e).style("opacity",1),u.each((function(t){var n=o.select(this),r=e.edge(t);r.elem=this,r.id&&n.attr("id",r.id),a.applyClass(n,r.class,(n.classed("update")?"update ":"")+"edgePath")})),u.selectAll("path.path").each((function(t){var n=e.edge(t);n.arrowheadId=r.uniqueId("arrowhead");var c=o.select(this).attr("marker-end",(function(){return"url("+(t=location.href,e=n.arrowheadId,t.split("#")[0]+"#"+e+")");var t,e})).style("fill","none");a.applyTransition(c,e).attr("d",(function(t){return function(t,e){var n=t.edge(e),r=t.node(e.v),a=t.node(e.w),o=n.points.slice(1,n.points.length-1);return o.unshift(i(r,o[0])),o.push(i(a,o[o.length-1])),s(n,o)}(e,t)})),a.applyStyle(c,n.style)})),u.selectAll("defs *").remove(),u.selectAll("defs").each((function(t){var r=e.edge(t);(0,n[r.arrowhead])(o.select(this),r.arrowheadId,r,"arrowhead")})),u}},607:(t,e,n)=>{var r=n(1034),i=n(1322),a=n(8355),o=n(4322);t.exports=function(t,e,n){var s,c=e.nodes().filter((function(t){return!a.isSubgraph(e,t)})),l=t.selectAll("g.node").data(c,(function(t){return t})).classed("update",!0);return l.exit().remove(),l.enter().append("g").attr("class","node").style("opacity",0),(l=t.selectAll("g.node")).each((function(t){var s=e.node(t),c=o.select(this);a.applyClass(c,s.class,(c.classed("update")?"update ":"")+"node"),c.select("g.label").remove();var l=c.append("g").attr("class","label"),u=i(l,s),h=n[s.shape],d=r.pick(u.node().getBBox(),"width","height");s.elem=this,s.id&&c.attr("id",s.id),s.labelId&&l.attr("id",s.labelId),r.has(s,"width")&&(d.width=s.width),r.has(s,"height")&&(d.height=s.height),d.width+=s.paddingLeft+s.paddingRight,d.height+=s.paddingTop+s.paddingBottom,l.attr("transform","translate("+(s.paddingLeft-s.paddingRight)/2+","+(s.paddingTop-s.paddingBottom)/2+")");var f=o.select(this);f.select(".label-container").remove();var p=h(f,d,s).classed("label-container",!0);a.applyStyle(p,s.style);var g=p.node().getBBox();s.width=g.width,s.height=g.height})),s=l.exit?l.exit():l.selectAll(null),a.applyTransition(s,e).style("opacity",0).remove(),l}},4322:(t,e,n)=>{var r;if(!r)try{r=n(7543)}catch(t){}r||(r=window.d3),t.exports=r},6478:(t,e,n)=>{var r;try{r=n(681)}catch(t){}r||(r=window.dagre),t.exports=r},6614:(t,e,n)=>{var r;try{r=n(8282)}catch(t){}r||(r=window.graphlib),t.exports=r},8114:(t,e,n)=>{t.exports={node:n(3042),circle:n(6587),ellipse:n(3260),polygon:n(5337),rect:n(8049)}},6587:(t,e,n)=>{var r=n(3260);t.exports=function(t,e,n){return r(t,e,e,n)}},3260:t=>{t.exports=function(t,e,n,r){var i=t.x,a=t.y,o=i-r.x,s=a-r.y,c=Math.sqrt(e*e*s*s+n*n*o*o),l=Math.abs(e*n*o/c);r.x<i&&(l=-l);var u=Math.abs(e*n*s/c);return r.y<a&&(u=-u),{x:i+l,y:a+u}}},6808:t=>{function e(t,e){return t*e>0}t.exports=function(t,n,r,i){var a,o,s,c,l,u,h,d,f,p,g,y,m;if(a=n.y-t.y,s=t.x-n.x,l=n.x*t.y-t.x*n.y,f=a*r.x+s*r.y+l,p=a*i.x+s*i.y+l,!(0!==f&&0!==p&&e(f,p)||(o=i.y-r.y,c=r.x-i.x,u=i.x*r.y-r.x*i.y,h=o*t.x+c*t.y+u,d=o*n.x+c*n.y+u,0!==h&&0!==d&&e(h,d)||0==(g=a*c-o*s))))return y=Math.abs(g/2),{x:(m=s*u-c*l)<0?(m-y)/g:(m+y)/g,y:(m=o*l-a*u)<0?(m-y)/g:(m+y)/g}}},3042:t=>{t.exports=function(t,e){return t.intersect(e)}},5337:(t,e,n)=>{var r=n(6808);t.exports=function(t,e,n){var i=t.x,a=t.y,o=[],s=Number.POSITIVE_INFINITY,c=Number.POSITIVE_INFINITY;e.forEach((function(t){s=Math.min(s,t.x),c=Math.min(c,t.y)}));for(var l=i-t.width/2-s,u=a-t.height/2-c,h=0;h<e.length;h++){var d=e[h],f=e[h<e.length-1?h+1:0],p=r(t,n,{x:l+d.x,y:u+d.y},{x:l+f.x,y:u+f.y});p&&o.push(p)}return o.length?(o.length>1&&o.sort((function(t,e){var r=t.x-n.x,i=t.y-n.y,a=Math.sqrt(r*r+i*i),o=e.x-n.x,s=e.y-n.y,c=Math.sqrt(o*o+s*s);return a<c?-1:a===c?0:1})),o[0]):(console.log("NO INTERSECTION FOUND, RETURN NODE CENTER",t),t)}},8049:t=>{t.exports=function(t,e){var n,r,i=t.x,a=t.y,o=e.x-i,s=e.y-a,c=t.width/2,l=t.height/2;return Math.abs(s)*c>Math.abs(o)*l?(s<0&&(l=-l),n=0===s?0:l*o/s,r=l):(o<0&&(c=-c),n=c,r=0===o?0:c*s/o),{x:i+n,y:a+r}}},8284:(t,e,n)=>{var r=n(8355);t.exports=function(t,e){var n=t.append("foreignObject").attr("width","100000"),i=n.append("xhtml:div");i.attr("xmlns","http://www.w3.org/1999/xhtml");var a=e.label;switch(typeof a){case"function":i.insert(a);break;case"object":i.insert((function(){return a}));break;default:i.html(a)}r.applyStyle(i,e.labelStyle),i.style("display","inline-block"),i.style("white-space","nowrap");var o=i.node().getBoundingClientRect();return n.attr("width",o.width).attr("height",o.height),n}},1322:(t,e,n)=>{var r=n(7318),i=n(8284),a=n(8287);t.exports=function(t,e,n){var o=e.label,s=t.append("g");"svg"===e.labelType?a(s,e):"string"!=typeof o||"html"===e.labelType?i(s,e):r(s,e);var c,l=s.node().getBBox();switch(n){case"top":c=-e.height/2;break;case"bottom":c=e.height/2-l.height;break;default:c=-l.height/2}return s.attr("transform","translate("+-l.width/2+","+c+")"),s}},8287:(t,e,n)=>{var r=n(8355);t.exports=function(t,e){var n=t;return n.node().appendChild(e.label),r.applyStyle(n,e.labelStyle),n}},7318:(t,e,n)=>{var r=n(8355);t.exports=function(t,e){for(var n=t.append("text"),i=function(t){for(var e,n="",r=!1,i=0;i<t.length;++i)e=t[i],r?(n+="n"===e?"\n":e,r=!1):"\\"===e?r=!0:n+=e;return n}(e.label).split("\n"),a=0;a<i.length;a++)n.append("tspan").attr("xml:space","preserve").attr("dy","1em").attr("x","1").text(i[a]);return r.applyStyle(n,e.labelStyle),n}},1034:(t,e,n)=>{var r;try{r={defaults:n(1747),each:n(6073),isFunction:n(3560),isPlainObject:n(8630),pick:n(9722),has:n(8721),range:n(6026),uniqueId:n(3955)}}catch(t){}r||(r=window._),t.exports=r},6381:(t,e,n)=>{var r=n(8355),i=n(4322);t.exports=function(t,e){var n=t.filter((function(){return!i.select(this).classed("update")}));function a(t){var n=e.node(t);return"translate("+n.x+","+n.y+")"}n.attr("transform",a),r.applyTransition(t,e).style("opacity",1).attr("transform",a),r.applyTransition(n.selectAll("rect"),e).attr("width",(function(t){return e.node(t).width})).attr("height",(function(t){return e.node(t).height})).attr("x",(function(t){return-e.node(t).width/2})).attr("y",(function(t){return-e.node(t).height/2}))}},4577:(t,e,n)=>{var r=n(8355),i=n(4322),a=n(1034);t.exports=function(t,e){function n(t){var n=e.edge(t);return a.has(n,"x")?"translate("+n.x+","+n.y+")":""}t.filter((function(){return!i.select(this).classed("update")})).attr("transform",n),r.applyTransition(t,e).style("opacity",1).attr("transform",n)}},4849:(t,e,n)=>{var r=n(8355),i=n(4322);t.exports=function(t,e){function n(t){var n=e.node(t);return"translate("+n.x+","+n.y+")"}t.filter((function(){return!i.select(this).classed("update")})).attr("transform",n),r.applyTransition(t,e).style("opacity",1).attr("transform",n)}},5787:(t,e,n)=>{var r=n(1034),i=n(4322),a=n(6478).layout;t.exports=function(){var t=n(607),e=n(5632),i=n(6315),l=n(940),u=n(4849),h=n(4577),d=n(6381),f=n(4418),p=n(9144),g=function(n,g){!function(t){t.nodes().forEach((function(e){var n=t.node(e);r.has(n,"label")||t.children(e).length||(n.label=e),r.has(n,"paddingX")&&r.defaults(n,{paddingLeft:n.paddingX,paddingRight:n.paddingX}),r.has(n,"paddingY")&&r.defaults(n,{paddingTop:n.paddingY,paddingBottom:n.paddingY}),r.has(n,"padding")&&r.defaults(n,{paddingLeft:n.padding,paddingRight:n.padding,paddingTop:n.padding,paddingBottom:n.padding}),r.defaults(n,o),r.each(["paddingLeft","paddingRight","paddingTop","paddingBottom"],(function(t){n[t]=Number(n[t])})),r.has(n,"width")&&(n._prevWidth=n.width),r.has(n,"height")&&(n._prevHeight=n.height)})),t.edges().forEach((function(e){var n=t.edge(e);r.has(n,"label")||(n.label=""),r.defaults(n,s)}))}(g);var y=c(n,"output"),m=c(y,"clusters"),b=c(y,"edgePaths"),v=i(c(y,"edgeLabels"),g),_=t(c(y,"nodes"),g,f);a(g),u(_,g),h(v,g),l(b,g,p);var x=e(m,g);d(x,g),function(t){r.each(t.nodes(),(function(e){var n=t.node(e);r.has(n,"_prevWidth")?n.width=n._prevWidth:delete n.width,r.has(n,"_prevHeight")?n.height=n._prevHeight:delete n.height,delete n._prevWidth,delete n._prevHeight}))}(g)};return g.createNodes=function(e){return arguments.length?(t=e,g):t},g.createClusters=function(t){return arguments.length?(e=t,g):e},g.createEdgeLabels=function(t){return arguments.length?(i=t,g):i},g.createEdgePaths=function(t){return arguments.length?(l=t,g):l},g.shapes=function(t){return arguments.length?(f=t,g):f},g.arrows=function(t){return arguments.length?(p=t,g):p},g};var o={paddingLeft:10,paddingRight:10,paddingTop:10,paddingBottom:10,rx:0,ry:0,shape:"rect"},s={arrowhead:"normal",curve:i.curveLinear};function c(t,e){var n=t.select("g."+e);return n.empty()&&(n=t.append("g").attr("class",e)),n}},4418:(t,e,n)=>{var r=n(8049),i=n(3260),a=n(6587),o=n(5337);t.exports={rect:function(t,e,n){var i=t.insert("rect",":first-child").attr("rx",n.rx).attr("ry",n.ry).attr("x",-e.width/2).attr("y",-e.height/2).attr("width",e.width).attr("height",e.height);return n.intersect=function(t){return r(n,t)},i},ellipse:function(t,e,n){var r=e.width/2,a=e.height/2,o=t.insert("ellipse",":first-child").attr("x",-e.width/2).attr("y",-e.height/2).attr("rx",r).attr("ry",a);return n.intersect=function(t){return i(n,r,a,t)},o},circle:function(t,e,n){var r=Math.max(e.width,e.height)/2,i=t.insert("circle",":first-child").attr("x",-e.width/2).attr("y",-e.height/2).attr("r",r);return n.intersect=function(t){return a(n,r,t)},i},diamond:function(t,e,n){var r=e.width*Math.SQRT2/2,i=e.height*Math.SQRT2/2,a=[{x:0,y:-i},{x:-r,y:0},{x:0,y:i},{x:r,y:0}],s=t.insert("polygon",":first-child").attr("points",a.map((function(t){return t.x+","+t.y})).join(" "));return n.intersect=function(t){return o(n,a,t)},s}}},8355:(t,e,n)=>{var r=n(1034);t.exports={isSubgraph:function(t,e){return!!t.children(e).length},edgeToId:function(t){return a(t.v)+":"+a(t.w)+":"+a(t.name)},applyStyle:function(t,e){e&&t.attr("style",e)},applyClass:function(t,e,n){e&&t.attr("class",e).attr("class",n+" "+t.attr("class"))},applyTransition:function(t,e){var n=e.graph();if(r.isPlainObject(n)){var i=n.transition;if(r.isFunction(i))return i(t)}return t}};var i=/:/g;function a(t){return t?String(t).replace(i,"\\:"):""}},5689:t=>{t.exports="0.6.4"},681:(t,e,n)=>{t.exports={graphlib:n(574),layout:n(8123),debug:n(7570),util:{time:n(1138).time,notime:n(1138).notime},version:n(8177)}},2188:(t,e,n)=>{var r=n(8436),i=n(4079);t.exports={run:function(t){var e="greedy"===t.graph().acyclicer?i(t,function(t){return function(e){return t.edge(e).weight}}(t)):function(t){var e=[],n={},i={};return r.forEach(t.nodes(),(function a(o){r.has(i,o)||(i[o]=!0,n[o]=!0,r.forEach(t.outEdges(o),(function(t){r.has(n,t.w)?e.push(t):a(t.w)})),delete n[o])})),e}(t);r.forEach(e,(function(e){var n=t.edge(e);t.removeEdge(e),n.forwardName=e.name,n.reversed=!0,t.setEdge(e.w,e.v,n,r.uniqueId("rev"))}))},undo:function(t){r.forEach(t.edges(),(function(e){var n=t.edge(e);if(n.reversed){t.removeEdge(e);var r=n.forwardName;delete n.reversed,delete n.forwardName,t.setEdge(e.w,e.v,n,r)}}))}}},1133:(t,e,n)=>{var r=n(8436),i=n(1138);function a(t,e,n,r,a,o){var s={width:0,height:0,rank:o,borderType:e},c=a[e][o-1],l=i.addDummyNode(t,"border",s,n);a[e][o]=l,t.setParent(l,r),c&&t.setEdge(c,l,{weight:1})}t.exports=function(t){r.forEach(t.children(),(function e(n){var i=t.children(n),o=t.node(n);if(i.length&&r.forEach(i,e),r.has(o,"minRank")){o.borderLeft=[],o.borderRight=[];for(var s=o.minRank,c=o.maxRank+1;s<c;++s)a(t,"borderLeft","_bl",n,o,s),a(t,"borderRight","_br",n,o,s)}}))}},3258:(t,e,n)=>{var r=n(8436);function i(t){r.forEach(t.nodes(),(function(e){a(t.node(e))})),r.forEach(t.edges(),(function(e){a(t.edge(e))}))}function a(t){var e=t.width;t.width=t.height,t.height=e}function o(t){t.y=-t.y}function s(t){var e=t.x;t.x=t.y,t.y=e}t.exports={adjust:function(t){var e=t.graph().rankdir.toLowerCase();"lr"!==e&&"rl"!==e||i(t)},undo:function(t){var e=t.graph().rankdir.toLowerCase();"bt"!==e&&"rl"!==e||function(t){r.forEach(t.nodes(),(function(e){o(t.node(e))})),r.forEach(t.edges(),(function(e){var n=t.edge(e);r.forEach(n.points,o),r.has(n,"y")&&o(n)}))}(t),"lr"!==e&&"rl"!==e||(function(t){r.forEach(t.nodes(),(function(e){s(t.node(e))})),r.forEach(t.edges(),(function(e){var n=t.edge(e);r.forEach(n.points,s),r.has(n,"x")&&s(n)}))}(t),i(t))}}},7822:t=>{function e(){var t={};t._next=t._prev=t,this._sentinel=t}function n(t){t._prev._next=t._next,t._next._prev=t._prev,delete t._next,delete t._prev}function r(t,e){if("_next"!==t&&"_prev"!==t)return e}t.exports=e,e.prototype.dequeue=function(){var t=this._sentinel,e=t._prev;if(e!==t)return n(e),e},e.prototype.enqueue=function(t){var e=this._sentinel;t._prev&&t._next&&n(t),t._next=e._next,e._next._prev=t,e._next=t,t._prev=e},e.prototype.toString=function(){for(var t=[],e=this._sentinel,n=e._prev;n!==e;)t.push(JSON.stringify(n,r)),n=n._prev;return"["+t.join(", ")+"]"}},7570:(t,e,n)=>{var r=n(8436),i=n(1138),a=n(574).Graph;t.exports={debugOrdering:function(t){var e=i.buildLayerMatrix(t),n=new a({compound:!0,multigraph:!0}).setGraph({});return r.forEach(t.nodes(),(function(e){n.setNode(e,{label:e}),n.setParent(e,"layer"+t.node(e).rank)})),r.forEach(t.edges(),(function(t){n.setEdge(t.v,t.w,{},t.name)})),r.forEach(e,(function(t,e){var i="layer"+e;n.setNode(i,{rank:"same"}),r.reduce(t,(function(t,e){return n.setEdge(t,e,{style:"invis"}),e}))})),n}}},574:(t,e,n)=>{var r;try{r=n(8282)}catch(t){}r||(r=window.graphlib),t.exports=r},4079:(t,e,n)=>{var r=n(8436),i=n(574).Graph,a=n(7822);t.exports=function(t,e){if(t.nodeCount()<=1)return[];var n=function(t,e){var n=new i,o=0,s=0;r.forEach(t.nodes(),(function(t){n.setNode(t,{v:t,in:0,out:0})})),r.forEach(t.edges(),(function(t){var r=n.edge(t.v,t.w)||0,i=e(t),a=r+i;n.setEdge(t.v,t.w,a),s=Math.max(s,n.node(t.v).out+=i),o=Math.max(o,n.node(t.w).in+=i)}));var l=r.range(s+o+3).map((function(){return new a})),u=o+1;return r.forEach(n.nodes(),(function(t){c(l,u,n.node(t))})),{graph:n,buckets:l,zeroIdx:u}}(t,e||o),l=function(t,e,n){for(var r,i=[],a=e[e.length-1],o=e[0];t.nodeCount();){for(;r=o.dequeue();)s(t,e,n,r);for(;r=a.dequeue();)s(t,e,n,r);if(t.nodeCount())for(var c=e.length-2;c>0;--c)if(r=e[c].dequeue()){i=i.concat(s(t,e,n,r,!0));break}}return i}(n.graph,n.buckets,n.zeroIdx);return r.flatten(r.map(l,(function(e){return t.outEdges(e.v,e.w)})),!0)};var o=r.constant(1);function s(t,e,n,i,a){var o=a?[]:void 0;return r.forEach(t.inEdges(i.v),(function(r){var i=t.edge(r),s=t.node(r.v);a&&o.push({v:r.v,w:r.w}),s.out-=i,c(e,n,s)})),r.forEach(t.outEdges(i.v),(function(r){var i=t.edge(r),a=r.w,o=t.node(a);o.in-=i,c(e,n,o)})),t.removeNode(i.v),o}function c(t,e,n){n.out?n.in?t[n.out-n.in+e].enqueue(n):t[t.length-1].enqueue(n):t[0].enqueue(n)}},8123:(t,e,n)=>{var r=n(8436),i=n(2188),a=n(5995),o=n(8093),s=n(1138).normalizeRanks,c=n(4219),l=n(1138).removeEmptyRanks,u=n(2981),h=n(1133),d=n(3258),f=n(3408),p=n(7873),g=n(1138),y=n(574).Graph;t.exports=function(t,e){var n=e&&e.debugTiming?g.time:g.notime;n("layout",(function(){var e=n(" buildLayoutGraph",(function(){return function(t){var e=new y({multigraph:!0,compound:!0}),n=C(t.graph());return e.setGraph(r.merge({},b,T(n,m),r.pick(n,v))),r.forEach(t.nodes(),(function(n){var i=C(t.node(n));e.setNode(n,r.defaults(T(i,_),x)),e.setParent(n,t.parent(n))})),r.forEach(t.edges(),(function(n){var i=C(t.edge(n));e.setEdge(n,r.merge({},w,T(i,k),r.pick(i,E)))})),e}(t)}));n(" runLayout",(function(){!function(t,e){e(" makeSpaceForEdgeLabels",(function(){!function(t){var e=t.graph();e.ranksep/=2,r.forEach(t.edges(),(function(n){var r=t.edge(n);r.minlen*=2,"c"!==r.labelpos.toLowerCase()&&("TB"===e.rankdir||"BT"===e.rankdir?r.width+=r.labeloffset:r.height+=r.labeloffset)}))}(t)})),e(" removeSelfEdges",(function(){!function(t){r.forEach(t.edges(),(function(e){if(e.v===e.w){var n=t.node(e.v);n.selfEdges||(n.selfEdges=[]),n.selfEdges.push({e:e,label:t.edge(e)}),t.removeEdge(e)}}))}(t)})),e(" acyclic",(function(){i.run(t)})),e(" nestingGraph.run",(function(){u.run(t)})),e(" rank",(function(){o(g.asNonCompoundGraph(t))})),e(" injectEdgeLabelProxies",(function(){!function(t){r.forEach(t.edges(),(function(e){var n=t.edge(e);if(n.width&&n.height){var r=t.node(e.v),i={rank:(t.node(e.w).rank-r.rank)/2+r.rank,e:e};g.addDummyNode(t,"edge-proxy",i,"_ep")}}))}(t)})),e(" removeEmptyRanks",(function(){l(t)})),e(" nestingGraph.cleanup",(function(){u.cleanup(t)})),e(" normalizeRanks",(function(){s(t)})),e(" assignRankMinMax",(function(){!function(t){var e=0;r.forEach(t.nodes(),(function(n){var i=t.node(n);i.borderTop&&(i.minRank=t.node(i.borderTop).rank,i.maxRank=t.node(i.borderBottom).rank,e=r.max(e,i.maxRank))})),t.graph().maxRank=e}(t)})),e(" removeEdgeLabelProxies",(function(){!function(t){r.forEach(t.nodes(),(function(e){var n=t.node(e);"edge-proxy"===n.dummy&&(t.edge(n.e).labelRank=n.rank,t.removeNode(e))}))}(t)})),e(" normalize.run",(function(){a.run(t)})),e(" parentDummyChains",(function(){c(t)})),e(" addBorderSegments",(function(){h(t)})),e(" order",(function(){f(t)})),e(" insertSelfEdges",(function(){!function(t){var e=g.buildLayerMatrix(t);r.forEach(e,(function(e){var n=0;r.forEach(e,(function(e,i){var a=t.node(e);a.order=i+n,r.forEach(a.selfEdges,(function(e){g.addDummyNode(t,"selfedge",{width:e.label.width,height:e.label.height,rank:a.rank,order:i+ ++n,e:e.e,label:e.label},"_se")})),delete a.selfEdges}))}))}(t)})),e(" adjustCoordinateSystem",(function(){d.adjust(t)})),e(" position",(function(){p(t)})),e(" positionSelfEdges",(function(){!function(t){r.forEach(t.nodes(),(function(e){var n=t.node(e);if("selfedge"===n.dummy){var r=t.node(n.e.v),i=r.x+r.width/2,a=r.y,o=n.x-i,s=r.height/2;t.setEdge(n.e,n.label),t.removeNode(e),n.label.points=[{x:i+2*o/3,y:a-s},{x:i+5*o/6,y:a-s},{x:i+o,y:a},{x:i+5*o/6,y:a+s},{x:i+2*o/3,y:a+s}],n.label.x=n.x,n.label.y=n.y}}))}(t)})),e(" removeBorderNodes",(function(){!function(t){r.forEach(t.nodes(),(function(e){if(t.children(e).length){var n=t.node(e),i=t.node(n.borderTop),a=t.node(n.borderBottom),o=t.node(r.last(n.borderLeft)),s=t.node(r.last(n.borderRight));n.width=Math.abs(s.x-o.x),n.height=Math.abs(a.y-i.y),n.x=o.x+n.width/2,n.y=i.y+n.height/2}})),r.forEach(t.nodes(),(function(e){"border"===t.node(e).dummy&&t.removeNode(e)}))}(t)})),e(" normalize.undo",(function(){a.undo(t)})),e(" fixupEdgeLabelCoords",(function(){!function(t){r.forEach(t.edges(),(function(e){var n=t.edge(e);if(r.has(n,"x"))switch("l"!==n.labelpos&&"r"!==n.labelpos||(n.width-=n.labeloffset),n.labelpos){case"l":n.x-=n.width/2+n.labeloffset;break;case"r":n.x+=n.width/2+n.labeloffset}}))}(t)})),e(" undoCoordinateSystem",(function(){d.undo(t)})),e(" translateGraph",(function(){!function(t){var e=Number.POSITIVE_INFINITY,n=0,i=Number.POSITIVE_INFINITY,a=0,o=t.graph(),s=o.marginx||0,c=o.marginy||0;function l(t){var r=t.x,o=t.y,s=t.width,c=t.height;e=Math.min(e,r-s/2),n=Math.max(n,r+s/2),i=Math.min(i,o-c/2),a=Math.max(a,o+c/2)}r.forEach(t.nodes(),(function(e){l(t.node(e))})),r.forEach(t.edges(),(function(e){var n=t.edge(e);r.has(n,"x")&&l(n)})),e-=s,i-=c,r.forEach(t.nodes(),(function(n){var r=t.node(n);r.x-=e,r.y-=i})),r.forEach(t.edges(),(function(n){var a=t.edge(n);r.forEach(a.points,(function(t){t.x-=e,t.y-=i})),r.has(a,"x")&&(a.x-=e),r.has(a,"y")&&(a.y-=i)})),o.width=n-e+s,o.height=a-i+c}(t)})),e(" assignNodeIntersects",(function(){!function(t){r.forEach(t.edges(),(function(e){var n,r,i=t.edge(e),a=t.node(e.v),o=t.node(e.w);i.points?(n=i.points[0],r=i.points[i.points.length-1]):(i.points=[],n=o,r=a),i.points.unshift(g.intersectRect(a,n)),i.points.push(g.intersectRect(o,r))}))}(t)})),e(" reversePoints",(function(){!function(t){r.forEach(t.edges(),(function(e){var n=t.edge(e);n.reversed&&n.points.reverse()}))}(t)})),e(" acyclic.undo",(function(){i.undo(t)}))}(e,n)})),n(" updateInputGraph",(function(){!function(t,e){r.forEach(t.nodes(),(function(n){var r=t.node(n),i=e.node(n);r&&(r.x=i.x,r.y=i.y,e.children(n).length&&(r.width=i.width,r.height=i.height))})),r.forEach(t.edges(),(function(n){var i=t.edge(n),a=e.edge(n);i.points=a.points,r.has(a,"x")&&(i.x=a.x,i.y=a.y)})),t.graph().width=e.graph().width,t.graph().height=e.graph().height}(t,e)}))}))};var m=["nodesep","edgesep","ranksep","marginx","marginy"],b={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},v=["acyclicer","ranker","rankdir","align"],_=["width","height"],x={width:0,height:0},k=["minlen","weight","width","height","labeloffset"],w={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},E=["labelpos"];function T(t,e){return r.mapValues(r.pick(t,e),Number)}function C(t){var e={};return r.forEach(t,(function(t,n){e[n.toLowerCase()]=t})),e}},8436:(t,e,n)=>{var r;try{r={cloneDeep:n(361),constant:n(5703),defaults:n(1747),each:n(6073),filter:n(3105),find:n(3311),flatten:n(5564),forEach:n(4486),forIn:n(2620),has:n(8721),isUndefined:n(2353),last:n(928),map:n(5161),mapValues:n(6604),max:n(6162),merge:n(3857),min:n(3632),minBy:n(2762),now:n(7771),pick:n(9722),range:n(6026),reduce:n(4061),sortBy:n(9734),uniqueId:n(3955),values:n(2628),zipObject:n(7287)}}catch(t){}r||(r=window._),t.exports=r},2981:(t,e,n)=>{var r=n(8436),i=n(1138);function a(t,e,n,o,s,c,l){var u=t.children(l);if(u.length){var h=i.addBorderNode(t,"_bt"),d=i.addBorderNode(t,"_bb"),f=t.node(l);t.setParent(h,l),f.borderTop=h,t.setParent(d,l),f.borderBottom=d,r.forEach(u,(function(r){a(t,e,n,o,s,c,r);var i=t.node(r),u=i.borderTop?i.borderTop:r,f=i.borderBottom?i.borderBottom:r,p=i.borderTop?o:2*o,g=u!==f?1:s-c[l]+1;t.setEdge(h,u,{weight:p,minlen:g,nestingEdge:!0}),t.setEdge(f,d,{weight:p,minlen:g,nestingEdge:!0})})),t.parent(l)||t.setEdge(e,h,{weight:0,minlen:s+c[l]})}else l!==e&&t.setEdge(e,l,{weight:0,minlen:n})}t.exports={run:function(t){var e=i.addDummyNode(t,"root",{},"_root"),n=function(t){var e={};function n(i,a){var o=t.children(i);o&&o.length&&r.forEach(o,(function(t){n(t,a+1)})),e[i]=a}return r.forEach(t.children(),(function(t){n(t,1)})),e}(t),o=r.max(r.values(n))-1,s=2*o+1;t.graph().nestingRoot=e,r.forEach(t.edges(),(function(e){t.edge(e).minlen*=s}));var c=function(t){return r.reduce(t.edges(),(function(e,n){return e+t.edge(n).weight}),0)}(t)+1;r.forEach(t.children(),(function(r){a(t,e,s,c,o,n,r)})),t.graph().nodeRankFactor=s},cleanup:function(t){var e=t.graph();t.removeNode(e.nestingRoot),delete e.nestingRoot,r.forEach(t.edges(),(function(e){t.edge(e).nestingEdge&&t.removeEdge(e)}))}}},5995:(t,e,n)=>{var r=n(8436),i=n(1138);t.exports={run:function(t){t.graph().dummyChains=[],r.forEach(t.edges(),(function(e){!function(t,e){var n,r,a,o=e.v,s=t.node(o).rank,c=e.w,l=t.node(c).rank,u=e.name,h=t.edge(e),d=h.labelRank;if(l!==s+1){for(t.removeEdge(e),a=0,++s;s<l;++a,++s)h.points=[],r={width:0,height:0,edgeLabel:h,edgeObj:e,rank:s},n=i.addDummyNode(t,"edge",r,"_d"),s===d&&(r.width=h.width,r.height=h.height,r.dummy="edge-label",r.labelpos=h.labelpos),t.setEdge(o,n,{weight:h.weight},u),0===a&&t.graph().dummyChains.push(n),o=n;t.setEdge(o,c,{weight:h.weight},u)}}(t,e)}))},undo:function(t){r.forEach(t.graph().dummyChains,(function(e){var n,r=t.node(e),i=r.edgeLabel;for(t.setEdge(r.edgeObj,i);r.dummy;)n=t.successors(e)[0],t.removeNode(e),i.points.push({x:r.x,y:r.y}),"edge-label"===r.dummy&&(i.x=r.x,i.y=r.y,i.width=r.width,i.height=r.height),e=n,r=t.node(e)}))}}},5093:(t,e,n)=>{var r=n(8436);t.exports=function(t,e,n){var i,a={};r.forEach(n,(function(n){for(var r,o,s=t.parent(n);s;){if((r=t.parent(s))?(o=a[r],a[r]=s):(o=i,i=s),o&&o!==s)return void e.setEdge(o,s);s=r}}))}},5439:(t,e,n)=>{var r=n(8436);t.exports=function(t,e){return r.map(e,(function(e){var n=t.inEdges(e);if(n.length){var i=r.reduce(n,(function(e,n){var r=t.edge(n),i=t.node(n.v);return{sum:e.sum+r.weight*i.order,weight:e.weight+r.weight}}),{sum:0,weight:0});return{v:e,barycenter:i.sum/i.weight,weight:i.weight}}return{v:e}}))}},3128:(t,e,n)=>{var r=n(8436),i=n(574).Graph;t.exports=function(t,e,n){var a=function(t){for(var e;t.hasNode(e=r.uniqueId("_root")););return e}(t),o=new i({compound:!0}).setGraph({root:a}).setDefaultNodeLabel((function(e){return t.node(e)}));return r.forEach(t.nodes(),(function(i){var s=t.node(i),c=t.parent(i);(s.rank===e||s.minRank<=e&&e<=s.maxRank)&&(o.setNode(i),o.setParent(i,c||a),r.forEach(t[n](i),(function(e){var n=e.v===i?e.w:e.v,a=o.edge(n,i),s=r.isUndefined(a)?0:a.weight;o.setEdge(n,i,{weight:t.edge(e).weight+s})})),r.has(s,"minRank")&&o.setNode(i,{borderLeft:s.borderLeft[e],borderRight:s.borderRight[e]}))})),o}},6630:(t,e,n)=>{var r=n(8436);function i(t,e,n){for(var i=r.zipObject(n,r.map(n,(function(t,e){return e}))),a=r.flatten(r.map(e,(function(e){return r.sortBy(r.map(t.outEdges(e),(function(e){return{pos:i[e.w],weight:t.edge(e).weight}})),"pos")})),!0),o=1;o<n.length;)o<<=1;var s=2*o-1;o-=1;var c=r.map(new Array(s),(function(){return 0})),l=0;return r.forEach(a.forEach((function(t){var e=t.pos+o;c[e]+=t.weight;for(var n=0;e>0;)e%2&&(n+=c[e+1]),c[e=e-1>>1]+=t.weight;l+=t.weight*n}))),l}t.exports=function(t,e){for(var n=0,r=1;r<e.length;++r)n+=i(t,e[r-1],e[r]);return n}},3408:(t,e,n)=>{var r=n(8436),i=n(2588),a=n(6630),o=n(1026),s=n(3128),c=n(5093),l=n(574).Graph,u=n(1138);function h(t,e,n){return r.map(e,(function(e){return s(t,e,n)}))}function d(t,e){var n=new l;r.forEach(t,(function(t){var i=t.graph().root,a=o(t,i,n,e);r.forEach(a.vs,(function(e,n){t.node(e).order=n})),c(t,n,a.vs)}))}function f(t,e){r.forEach(e,(function(e){r.forEach(e,(function(e,n){t.node(e).order=n}))}))}t.exports=function(t){var e=u.maxRank(t),n=h(t,r.range(1,e+1),"inEdges"),o=h(t,r.range(e-1,-1,-1),"outEdges"),s=i(t);f(t,s);for(var c,l=Number.POSITIVE_INFINITY,p=0,g=0;g<4;++p,++g){d(p%2?n:o,p%4>=2),s=u.buildLayerMatrix(t);var y=a(t,s);y<l&&(g=0,c=r.cloneDeep(s),l=y)}f(t,c)}},2588:(t,e,n)=>{var r=n(8436);t.exports=function(t){var e={},n=r.filter(t.nodes(),(function(e){return!t.children(e).length})),i=r.max(r.map(n,(function(e){return t.node(e).rank}))),a=r.map(r.range(i+1),(function(){return[]})),o=r.sortBy(n,(function(e){return t.node(e).rank}));return r.forEach(o,(function n(i){if(!r.has(e,i)){e[i]=!0;var o=t.node(i);a[o.rank].push(i),r.forEach(t.successors(i),n)}})),a}},9567:(t,e,n)=>{var r=n(8436);t.exports=function(t,e){var n={};return r.forEach(t,(function(t,e){var i=n[t.v]={indegree:0,in:[],out:[],vs:[t.v],i:e};r.isUndefined(t.barycenter)||(i.barycenter=t.barycenter,i.weight=t.weight)})),r.forEach(e.edges(),(function(t){var e=n[t.v],i=n[t.w];r.isUndefined(e)||r.isUndefined(i)||(i.indegree++,e.out.push(n[t.w]))})),function(t){var e=[];function n(t){return function(e){var n,i,a,o;e.merged||(r.isUndefined(e.barycenter)||r.isUndefined(t.barycenter)||e.barycenter>=t.barycenter)&&(i=e,a=0,o=0,(n=t).weight&&(a+=n.barycenter*n.weight,o+=n.weight),i.weight&&(a+=i.barycenter*i.weight,o+=i.weight),n.vs=i.vs.concat(n.vs),n.barycenter=a/o,n.weight=o,n.i=Math.min(i.i,n.i),i.merged=!0)}}function i(e){return function(n){n.in.push(e),0==--n.indegree&&t.push(n)}}for(;t.length;){var a=t.pop();e.push(a),r.forEach(a.in.reverse(),n(a)),r.forEach(a.out,i(a))}return r.map(r.filter(e,(function(t){return!t.merged})),(function(t){return r.pick(t,["vs","i","barycenter","weight"])}))}(r.filter(n,(function(t){return!t.indegree})))}},1026:(t,e,n)=>{var r=n(8436),i=n(5439),a=n(9567),o=n(7304);t.exports=function t(e,n,s,c){var l=e.children(n),u=e.node(n),h=u?u.borderLeft:void 0,d=u?u.borderRight:void 0,f={};h&&(l=r.filter(l,(function(t){return t!==h&&t!==d})));var p=i(e,l);r.forEach(p,(function(n){if(e.children(n.v).length){var i=t(e,n.v,s,c);f[n.v]=i,r.has(i,"barycenter")&&(a=n,o=i,r.isUndefined(a.barycenter)?(a.barycenter=o.barycenter,a.weight=o.weight):(a.barycenter=(a.barycenter*a.weight+o.barycenter*o.weight)/(a.weight+o.weight),a.weight+=o.weight))}var a,o}));var g=a(p,s);!function(t,e){r.forEach(t,(function(t){t.vs=r.flatten(t.vs.map((function(t){return e[t]?e[t].vs:t})),!0)}))}(g,f);var y=o(g,c);if(h&&(y.vs=r.flatten([h,y.vs,d],!0),e.predecessors(h).length)){var m=e.node(e.predecessors(h)[0]),b=e.node(e.predecessors(d)[0]);r.has(y,"barycenter")||(y.barycenter=0,y.weight=0),y.barycenter=(y.barycenter*y.weight+m.order+b.order)/(y.weight+2),y.weight+=2}return y}},7304:(t,e,n)=>{var r=n(8436),i=n(1138);function a(t,e,n){for(var i;e.length&&(i=r.last(e)).i<=n;)e.pop(),t.push(i.vs),n++;return n}t.exports=function(t,e){var n,o=i.partition(t,(function(t){return r.has(t,"barycenter")})),s=o.lhs,c=r.sortBy(o.rhs,(function(t){return-t.i})),l=[],u=0,h=0,d=0;s.sort((n=!!e,function(t,e){return t.barycenter<e.barycenter?-1:t.barycenter>e.barycenter?1:n?e.i-t.i:t.i-e.i})),d=a(l,c,d),r.forEach(s,(function(t){d+=t.vs.length,l.push(t.vs),u+=t.barycenter*t.weight,h+=t.weight,d=a(l,c,d)}));var f={vs:r.flatten(l,!0)};return h&&(f.barycenter=u/h,f.weight=h),f}},4219:(t,e,n)=>{var r=n(8436);t.exports=function(t){var e=function(t){var e={},n=0;return r.forEach(t.children(),(function i(a){var o=n;r.forEach(t.children(a),i),e[a]={low:o,lim:n++}})),e}(t);r.forEach(t.graph().dummyChains,(function(n){for(var r=t.node(n),i=r.edgeObj,a=function(t,e,n,r){var i,a,o=[],s=[],c=Math.min(e[n].low,e[r].low),l=Math.max(e[n].lim,e[r].lim);i=n;do{i=t.parent(i),o.push(i)}while(i&&(e[i].low>c||l>e[i].lim));for(a=i,i=r;(i=t.parent(i))!==a;)s.push(i);return{path:o.concat(s.reverse()),lca:a}}(t,e,i.v,i.w),o=a.path,s=a.lca,c=0,l=o[c],u=!0;n!==i.w;){if(r=t.node(n),u){for(;(l=o[c])!==s&&t.node(l).maxRank<r.rank;)c++;l===s&&(u=!1)}if(!u){for(;c<o.length-1&&t.node(l=o[c+1]).minRank<=r.rank;)c++;l=o[c]}t.setParent(n,l),n=t.successors(n)[0]}}))}},3573:(t,e,n)=>{var r=n(8436),i=n(574).Graph,a=n(1138);function o(t,e){var n={};return r.reduce(e,(function(e,i){var a=0,o=0,s=e.length,l=r.last(i);return r.forEach(i,(function(e,u){var h=function(t,e){if(t.node(e).dummy)return r.find(t.predecessors(e),(function(e){return t.node(e).dummy}))}(t,e),d=h?t.node(h).order:s;(h||e===l)&&(r.forEach(i.slice(o,u+1),(function(e){r.forEach(t.predecessors(e),(function(r){var i=t.node(r),o=i.order;!(o<a||d<o)||i.dummy&&t.node(e).dummy||c(n,r,e)}))})),o=u+1,a=d)})),i})),n}function s(t,e){var n={};function i(e,i,a,o,s){var l;r.forEach(r.range(i,a),(function(i){l=e[i],t.node(l).dummy&&r.forEach(t.predecessors(l),(function(e){var r=t.node(e);r.dummy&&(r.order<o||r.order>s)&&c(n,e,l)}))}))}return r.reduce(e,(function(e,n){var a,o=-1,s=0;return r.forEach(n,(function(r,c){if("border"===t.node(r).dummy){var l=t.predecessors(r);l.length&&(a=t.node(l[0]).order,i(n,s,c,o,a),s=c,o=a)}i(n,s,n.length,a,e.length)})),n})),n}function c(t,e,n){if(e>n){var r=e;e=n,n=r}var i=t[e];i||(t[e]=i={}),i[n]=!0}function l(t,e,n){if(e>n){var i=e;e=n,n=i}return r.has(t[e],n)}function u(t,e,n,i){var a={},o={},s={};return r.forEach(e,(function(t){r.forEach(t,(function(t,e){a[t]=t,o[t]=t,s[t]=e}))})),r.forEach(e,(function(t){var e=-1;r.forEach(t,(function(t){var c=i(t);if(c.length){c=r.sortBy(c,(function(t){return s[t]}));for(var u=(c.length-1)/2,h=Math.floor(u),d=Math.ceil(u);h<=d;++h){var f=c[h];o[t]===t&&e<s[f]&&!l(n,t,f)&&(o[f]=t,o[t]=a[t]=a[f],e=s[f])}}}))})),{root:a,align:o}}function h(t,e,n,a,o){var s={},c=function(t,e,n,a){var o=new i,s=t.graph(),c=function(t,e,n){return function(i,a,o){var s,c=i.node(a),l=i.node(o),u=0;if(u+=c.width/2,r.has(c,"labelpos"))switch(c.labelpos.toLowerCase()){case"l":s=-c.width/2;break;case"r":s=c.width/2}if(s&&(u+=n?s:-s),s=0,u+=(c.dummy?e:t)/2,u+=(l.dummy?e:t)/2,u+=l.width/2,r.has(l,"labelpos"))switch(l.labelpos.toLowerCase()){case"l":s=l.width/2;break;case"r":s=-l.width/2}return s&&(u+=n?s:-s),s=0,u}}(s.nodesep,s.edgesep,a);return r.forEach(e,(function(e){var i;r.forEach(e,(function(e){var r=n[e];if(o.setNode(r),i){var a=n[i],s=o.edge(a,r);o.setEdge(a,r,Math.max(c(t,e,i),s||0))}i=e}))})),o}(t,e,n,o),l=o?"borderLeft":"borderRight";function u(t,e){for(var n=c.nodes(),r=n.pop(),i={};r;)i[r]?t(r):(i[r]=!0,n.push(r),n=n.concat(e(r))),r=n.pop()}return u((function(t){s[t]=c.inEdges(t).reduce((function(t,e){return Math.max(t,s[e.v]+c.edge(e))}),0)}),c.predecessors.bind(c)),u((function(e){var n=c.outEdges(e).reduce((function(t,e){return Math.min(t,s[e.w]-c.edge(e))}),Number.POSITIVE_INFINITY),r=t.node(e);n!==Number.POSITIVE_INFINITY&&r.borderType!==l&&(s[e]=Math.max(s[e],n))}),c.successors.bind(c)),r.forEach(a,(function(t){s[t]=s[n[t]]})),s}function d(t,e){return r.minBy(r.values(e),(function(e){var n=Number.NEGATIVE_INFINITY,i=Number.POSITIVE_INFINITY;return r.forIn(e,(function(e,r){var a=function(t,e){return t.node(e).width}(t,r)/2;n=Math.max(e+a,n),i=Math.min(e-a,i)})),n-i}))}function f(t,e){var n=r.values(e),i=r.min(n),a=r.max(n);r.forEach(["u","d"],(function(n){r.forEach(["l","r"],(function(o){var s,c=n+o,l=t[c];if(l!==e){var u=r.values(l);(s="l"===o?i-r.min(u):a-r.max(u))&&(t[c]=r.mapValues(l,(function(t){return t+s})))}}))}))}function p(t,e){return r.mapValues(t.ul,(function(n,i){if(e)return t[e.toLowerCase()][i];var a=r.sortBy(r.map(t,i));return(a[1]+a[2])/2}))}t.exports={positionX:function(t){var e,n=a.buildLayerMatrix(t),i=r.merge(o(t,n),s(t,n)),c={};r.forEach(["u","d"],(function(a){e="u"===a?n:r.values(n).reverse(),r.forEach(["l","r"],(function(n){"r"===n&&(e=r.map(e,(function(t){return r.values(t).reverse()})));var o=("u"===a?t.predecessors:t.successors).bind(t),s=u(0,e,i,o),l=h(t,e,s.root,s.align,"r"===n);"r"===n&&(l=r.mapValues(l,(function(t){return-t}))),c[a+n]=l}))}));var l=d(t,c);return f(c,l),p(c,t.graph().align)},findType1Conflicts:o,findType2Conflicts:s,addConflict:c,hasConflict:l,verticalAlignment:u,horizontalCompaction:h,alignCoordinates:f,findSmallestWidthAlignment:d,balance:p}},7873:(t,e,n)=>{var r=n(8436),i=n(1138),a=n(3573).positionX;t.exports=function(t){(function(t){var e=i.buildLayerMatrix(t),n=t.graph().ranksep,a=0;r.forEach(e,(function(e){var i=r.max(r.map(e,(function(e){return t.node(e).height})));r.forEach(e,(function(e){t.node(e).y=a+i/2})),a+=i+n}))})(t=i.asNonCompoundGraph(t)),r.forEach(a(t),(function(e,n){t.node(n).x=e}))}},300:(t,e,n)=>{var r=n(8436),i=n(574).Graph,a=n(6681).slack;function o(t,e){return r.forEach(t.nodes(),(function n(i){r.forEach(e.nodeEdges(i),(function(r){var o=r.v,s=i===o?r.w:o;t.hasNode(s)||a(e,r)||(t.setNode(s,{}),t.setEdge(i,s,{}),n(s))}))})),t.nodeCount()}function s(t,e){return r.minBy(e.edges(),(function(n){if(t.hasNode(n.v)!==t.hasNode(n.w))return a(e,n)}))}function c(t,e,n){r.forEach(t.nodes(),(function(t){e.node(t).rank+=n}))}t.exports=function(t){var e,n,r=new i({directed:!1}),l=t.nodes()[0],u=t.nodeCount();for(r.setNode(l,{});o(r,t)<u;)e=s(r,t),n=r.hasNode(e.v)?a(t,e):-a(t,e),c(r,t,n);return r}},8093:(t,e,n)=>{var r=n(6681).longestPath,i=n(300),a=n(2472);t.exports=function(t){switch(t.graph().ranker){case"network-simplex":default:!function(t){a(t)}(t);break;case"tight-tree":!function(t){r(t),i(t)}(t);break;case"longest-path":o(t)}};var o=r},2472:(t,e,n)=>{var r=n(8436),i=n(300),a=n(6681).slack,o=n(6681).longestPath,s=n(574).alg.preorder,c=n(574).alg.postorder,l=n(1138).simplify;function u(t){t=l(t),o(t);var e,n=i(t);for(f(n),h(n,t);e=g(n);)m(n,t,e,y(n,t,e))}function h(t,e){var n=c(t,t.nodes());n=n.slice(0,n.length-1),r.forEach(n,(function(n){!function(t,e,n){var r=t.node(n).parent;t.edge(n,r).cutvalue=d(t,e,n)}(t,e,n)}))}function d(t,e,n){var i=t.node(n).parent,a=!0,o=e.edge(n,i),s=0;return o||(a=!1,o=e.edge(i,n)),s=o.weight,r.forEach(e.nodeEdges(n),(function(r){var o,c,l=r.v===n,u=l?r.w:r.v;if(u!==i){var h=l===a,d=e.edge(r).weight;if(s+=h?d:-d,o=n,c=u,t.hasEdge(o,c)){var f=t.edge(n,u).cutvalue;s+=h?-f:f}}})),s}function f(t,e){arguments.length<2&&(e=t.nodes()[0]),p(t,{},1,e)}function p(t,e,n,i,a){var o=n,s=t.node(i);return e[i]=!0,r.forEach(t.neighbors(i),(function(a){r.has(e,a)||(n=p(t,e,n,a,i))})),s.low=o,s.lim=n++,a?s.parent=a:delete s.parent,n}function g(t){return r.find(t.edges(),(function(e){return t.edge(e).cutvalue<0}))}function y(t,e,n){var i=n.v,o=n.w;e.hasEdge(i,o)||(i=n.w,o=n.v);var s=t.node(i),c=t.node(o),l=s,u=!1;s.lim>c.lim&&(l=c,u=!0);var h=r.filter(e.edges(),(function(e){return u===b(0,t.node(e.v),l)&&u!==b(0,t.node(e.w),l)}));return r.minBy(h,(function(t){return a(e,t)}))}function m(t,e,n,i){var a=n.v,o=n.w;t.removeEdge(a,o),t.setEdge(i.v,i.w,{}),f(t),h(t,e),function(t,e){var n=r.find(t.nodes(),(function(t){return!e.node(t).parent})),i=s(t,n);i=i.slice(1),r.forEach(i,(function(n){var r=t.node(n).parent,i=e.edge(n,r),a=!1;i||(i=e.edge(r,n),a=!0),e.node(n).rank=e.node(r).rank+(a?i.minlen:-i.minlen)}))}(t,e)}function b(t,e,n){return n.low<=e.lim&&e.lim<=n.lim}t.exports=u,u.initLowLimValues=f,u.initCutValues=h,u.calcCutValue=d,u.leaveEdge=g,u.enterEdge=y,u.exchangeEdges=m},6681:(t,e,n)=>{var r=n(8436);t.exports={longestPath:function(t){var e={};r.forEach(t.sources(),(function n(i){var a=t.node(i);if(r.has(e,i))return a.rank;e[i]=!0;var o=r.min(r.map(t.outEdges(i),(function(e){return n(e.w)-t.edge(e).minlen})));return o!==Number.POSITIVE_INFINITY&&null!=o||(o=0),a.rank=o}))},slack:function(t,e){return t.node(e.w).rank-t.node(e.v).rank-t.edge(e).minlen}}},1138:(t,e,n)=>{var r=n(8436),i=n(574).Graph;function a(t,e,n,i){var a;do{a=r.uniqueId(i)}while(t.hasNode(a));return n.dummy=e,t.setNode(a,n),a}function o(t){return r.max(r.map(t.nodes(),(function(e){var n=t.node(e).rank;if(!r.isUndefined(n))return n})))}t.exports={addDummyNode:a,simplify:function(t){var e=(new i).setGraph(t.graph());return r.forEach(t.nodes(),(function(n){e.setNode(n,t.node(n))})),r.forEach(t.edges(),(function(n){var r=e.edge(n.v,n.w)||{weight:0,minlen:1},i=t.edge(n);e.setEdge(n.v,n.w,{weight:r.weight+i.weight,minlen:Math.max(r.minlen,i.minlen)})})),e},asNonCompoundGraph:function(t){var e=new i({multigraph:t.isMultigraph()}).setGraph(t.graph());return r.forEach(t.nodes(),(function(n){t.children(n).length||e.setNode(n,t.node(n))})),r.forEach(t.edges(),(function(n){e.setEdge(n,t.edge(n))})),e},successorWeights:function(t){var e=r.map(t.nodes(),(function(e){var n={};return r.forEach(t.outEdges(e),(function(e){n[e.w]=(n[e.w]||0)+t.edge(e).weight})),n}));return r.zipObject(t.nodes(),e)},predecessorWeights:function(t){var e=r.map(t.nodes(),(function(e){var n={};return r.forEach(t.inEdges(e),(function(e){n[e.v]=(n[e.v]||0)+t.edge(e).weight})),n}));return r.zipObject(t.nodes(),e)},intersectRect:function(t,e){var n,r,i=t.x,a=t.y,o=e.x-i,s=e.y-a,c=t.width/2,l=t.height/2;if(!o&&!s)throw new Error("Not possible to find intersection inside of the rectangle");return Math.abs(s)*c>Math.abs(o)*l?(s<0&&(l=-l),n=l*o/s,r=l):(o<0&&(c=-c),n=c,r=c*s/o),{x:i+n,y:a+r}},buildLayerMatrix:function(t){var e=r.map(r.range(o(t)+1),(function(){return[]}));return r.forEach(t.nodes(),(function(n){var i=t.node(n),a=i.rank;r.isUndefined(a)||(e[a][i.order]=n)})),e},normalizeRanks:function(t){var e=r.min(r.map(t.nodes(),(function(e){return t.node(e).rank})));r.forEach(t.nodes(),(function(n){var i=t.node(n);r.has(i,"rank")&&(i.rank-=e)}))},removeEmptyRanks:function(t){var e=r.min(r.map(t.nodes(),(function(e){return t.node(e).rank}))),n=[];r.forEach(t.nodes(),(function(r){var i=t.node(r).rank-e;n[i]||(n[i]=[]),n[i].push(r)}));var i=0,a=t.graph().nodeRankFactor;r.forEach(n,(function(e,n){r.isUndefined(e)&&n%a!=0?--i:i&&r.forEach(e,(function(e){t.node(e).rank+=i}))}))},addBorderNode:function(t,e,n,r){var i={width:0,height:0};return arguments.length>=4&&(i.rank=n,i.order=r),a(t,"border",i,e)},maxRank:o,partition:function(t,e){var n={lhs:[],rhs:[]};return r.forEach(t,(function(t){e(t)?n.lhs.push(t):n.rhs.push(t)})),n},time:function(t,e){var n=r.now();try{return e()}finally{console.log(t+" time: "+(r.now()-n)+"ms")}},notime:function(t,e){return e()}}},8177:t=>{t.exports="0.8.5"},7856:function(t){t.exports=function(){function t(e){return(t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(e)}function e(t,n){return e=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t},e(t,n)}function n(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}function r(t,i,a){return r=n()?Reflect.construct:function(t,n,r){var i=[null];i.push.apply(i,n);var a=new(Function.bind.apply(t,i));return r&&e(a,r.prototype),a},r.apply(null,arguments)}function i(t){return function(t){if(Array.isArray(t))return a(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(t){if("string"==typeof t)return a(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?a(t,e):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function a(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}var o=Object.hasOwnProperty,s=Object.setPrototypeOf,c=Object.isFrozen,l=Object.getPrototypeOf,u=Object.getOwnPropertyDescriptor,h=Object.freeze,d=Object.seal,f=Object.create,p="undefined"!=typeof Reflect&&Reflect,g=p.apply,y=p.construct;g||(g=function(t,e,n){return t.apply(e,n)}),h||(h=function(t){return t}),d||(d=function(t){return t}),y||(y=function(t,e){return r(t,i(e))});var m,b=A(Array.prototype.forEach),v=A(Array.prototype.pop),_=A(Array.prototype.push),x=A(String.prototype.toLowerCase),k=A(String.prototype.match),w=A(String.prototype.replace),E=A(String.prototype.indexOf),T=A(String.prototype.trim),C=A(RegExp.prototype.test),S=(m=TypeError,function(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];return y(m,e)});function A(t){return function(e){for(var n=arguments.length,r=new Array(n>1?n-1:0),i=1;i<n;i++)r[i-1]=arguments[i];return g(t,e,r)}}function M(t,e,n){n=n||x,s&&s(t,null);for(var r=e.length;r--;){var i=e[r];if("string"==typeof i){var a=n(i);a!==i&&(c(e)||(e[r]=a),i=a)}t[i]=!0}return t}function O(t){var e,n=f(null);for(e in t)g(o,t,[e])&&(n[e]=t[e]);return n}function N(t,e){for(;null!==t;){var n=u(t,e);if(n){if(n.get)return A(n.get);if("function"==typeof n.value)return A(n.value)}t=l(t)}return function(t){return console.warn("fallback value for",t),null}}var D=h(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","section","select","shadow","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),B=h(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","filter","font","g","glyph","glyphref","hkern","image","line","lineargradient","marker","mask","metadata","mpath","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),L=h(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),I=h(["animate","color-profile","cursor","discard","fedropshadow","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),F=h(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover"]),R=h(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),P=h(["#text"]),j=h(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","face","for","headers","height","hidden","high","href","hreflang","id","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","pattern","placeholder","playsinline","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","xmlns","slot"]),z=h(["accent-height","accumulate","additive","alignment-baseline","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),Y=h(["accent","accentunder","align","bevelled","close","columnsalign","columnlines","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lspace","lquote","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),U=h(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),$=d(/\{\{[\w\W]*|[\w\W]*\}\}/gm),W=d(/<%[\w\W]*|[\w\W]*%>/gm),q=d(/^data-[\-\w.\u00B7-\uFFFF]/),H=d(/^aria-[\-\w]+$/),V=d(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),G=d(/^(?:\w+script|data):/i),X=d(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Z=d(/^html$/i),Q=function(){return"undefined"==typeof window?null:window},K=function(e,n){if("object"!==t(e)||"function"!=typeof e.createPolicy)return null;var r=null,i="data-tt-policy-suffix";n.currentScript&&n.currentScript.hasAttribute(i)&&(r=n.currentScript.getAttribute(i));var a="dompurify"+(r?"#"+r:"");try{return e.createPolicy(a,{createHTML:function(t){return t},createScriptURL:function(t){return t}})}catch(t){return console.warn("TrustedTypes policy "+a+" could not be created."),null}};return function e(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Q(),r=function(t){return e(t)};if(r.version="2.4.0",r.removed=[],!n||!n.document||9!==n.document.nodeType)return r.isSupported=!1,r;var a=n.document,o=n.document,s=n.DocumentFragment,c=n.HTMLTemplateElement,l=n.Node,u=n.Element,d=n.NodeFilter,f=n.NamedNodeMap,p=void 0===f?n.NamedNodeMap||n.MozNamedAttrMap:f,g=n.HTMLFormElement,y=n.DOMParser,m=n.trustedTypes,A=u.prototype,J=N(A,"cloneNode"),tt=N(A,"nextSibling"),et=N(A,"childNodes"),nt=N(A,"parentNode");if("function"==typeof c){var rt=o.createElement("template");rt.content&&rt.content.ownerDocument&&(o=rt.content.ownerDocument)}var it=K(m,a),at=it?it.createHTML(""):"",ot=o,st=ot.implementation,ct=ot.createNodeIterator,lt=ot.createDocumentFragment,ut=ot.getElementsByTagName,ht=a.importNode,dt={};try{dt=O(o).documentMode?o.documentMode:{}}catch(t){}var ft={};r.isSupported="function"==typeof nt&&st&&void 0!==st.createHTMLDocument&&9!==dt;var pt,gt,yt=$,mt=W,bt=q,vt=H,_t=G,xt=X,kt=V,wt=null,Et=M({},[].concat(i(D),i(B),i(L),i(F),i(P))),Tt=null,Ct=M({},[].concat(i(j),i(z),i(Y),i(U))),St=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),At=null,Mt=null,Ot=!0,Nt=!0,Dt=!1,Bt=!1,Lt=!1,It=!1,Ft=!1,Rt=!1,Pt=!1,jt=!1,zt=!0,Yt=!1,Ut="user-content-",$t=!0,Wt=!1,qt={},Ht=null,Vt=M({},["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"]),Gt=null,Xt=M({},["audio","video","img","source","image","track"]),Zt=null,Qt=M({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Kt="http://www.w3.org/1998/Math/MathML",Jt="http://www.w3.org/2000/svg",te="http://www.w3.org/1999/xhtml",ee=te,ne=!1,re=["application/xhtml+xml","text/html"],ie="text/html",ae=null,oe=o.createElement("form"),se=function(t){return t instanceof RegExp||t instanceof Function},ce=function(e){ae&&ae===e||(e&&"object"===t(e)||(e={}),e=O(e),pt=pt=-1===re.indexOf(e.PARSER_MEDIA_TYPE)?ie:e.PARSER_MEDIA_TYPE,gt="application/xhtml+xml"===pt?function(t){return t}:x,wt="ALLOWED_TAGS"in e?M({},e.ALLOWED_TAGS,gt):Et,Tt="ALLOWED_ATTR"in e?M({},e.ALLOWED_ATTR,gt):Ct,Zt="ADD_URI_SAFE_ATTR"in e?M(O(Qt),e.ADD_URI_SAFE_ATTR,gt):Qt,Gt="ADD_DATA_URI_TAGS"in e?M(O(Xt),e.ADD_DATA_URI_TAGS,gt):Xt,Ht="FORBID_CONTENTS"in e?M({},e.FORBID_CONTENTS,gt):Vt,At="FORBID_TAGS"in e?M({},e.FORBID_TAGS,gt):{},Mt="FORBID_ATTR"in e?M({},e.FORBID_ATTR,gt):{},qt="USE_PROFILES"in e&&e.USE_PROFILES,Ot=!1!==e.ALLOW_ARIA_ATTR,Nt=!1!==e.ALLOW_DATA_ATTR,Dt=e.ALLOW_UNKNOWN_PROTOCOLS||!1,Bt=e.SAFE_FOR_TEMPLATES||!1,Lt=e.WHOLE_DOCUMENT||!1,Rt=e.RETURN_DOM||!1,Pt=e.RETURN_DOM_FRAGMENT||!1,jt=e.RETURN_TRUSTED_TYPE||!1,Ft=e.FORCE_BODY||!1,zt=!1!==e.SANITIZE_DOM,Yt=e.SANITIZE_NAMED_PROPS||!1,$t=!1!==e.KEEP_CONTENT,Wt=e.IN_PLACE||!1,kt=e.ALLOWED_URI_REGEXP||kt,ee=e.NAMESPACE||te,e.CUSTOM_ELEMENT_HANDLING&&se(e.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(St.tagNameCheck=e.CUSTOM_ELEMENT_HANDLING.tagNameCheck),e.CUSTOM_ELEMENT_HANDLING&&se(e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(St.attributeNameCheck=e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),e.CUSTOM_ELEMENT_HANDLING&&"boolean"==typeof e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements&&(St.allowCustomizedBuiltInElements=e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Bt&&(Nt=!1),Pt&&(Rt=!0),qt&&(wt=M({},i(P)),Tt=[],!0===qt.html&&(M(wt,D),M(Tt,j)),!0===qt.svg&&(M(wt,B),M(Tt,z),M(Tt,U)),!0===qt.svgFilters&&(M(wt,L),M(Tt,z),M(Tt,U)),!0===qt.mathMl&&(M(wt,F),M(Tt,Y),M(Tt,U))),e.ADD_TAGS&&(wt===Et&&(wt=O(wt)),M(wt,e.ADD_TAGS,gt)),e.ADD_ATTR&&(Tt===Ct&&(Tt=O(Tt)),M(Tt,e.ADD_ATTR,gt)),e.ADD_URI_SAFE_ATTR&&M(Zt,e.ADD_URI_SAFE_ATTR,gt),e.FORBID_CONTENTS&&(Ht===Vt&&(Ht=O(Ht)),M(Ht,e.FORBID_CONTENTS,gt)),$t&&(wt["#text"]=!0),Lt&&M(wt,["html","head","body"]),wt.table&&(M(wt,["tbody"]),delete At.tbody),h&&h(e),ae=e)},le=M({},["mi","mo","mn","ms","mtext"]),ue=M({},["foreignobject","desc","title","annotation-xml"]),he=M({},["title","style","font","a","script"]),de=M({},B);M(de,L),M(de,I);var fe=M({},F);M(fe,R);var pe=function(t){var e=nt(t);e&&e.tagName||(e={namespaceURI:te,tagName:"template"});var n=x(t.tagName),r=x(e.tagName);return t.namespaceURI===Jt?e.namespaceURI===te?"svg"===n:e.namespaceURI===Kt?"svg"===n&&("annotation-xml"===r||le[r]):Boolean(de[n]):t.namespaceURI===Kt?e.namespaceURI===te?"math"===n:e.namespaceURI===Jt?"math"===n&&ue[r]:Boolean(fe[n]):t.namespaceURI===te&&!(e.namespaceURI===Jt&&!ue[r])&&!(e.namespaceURI===Kt&&!le[r])&&!fe[n]&&(he[n]||!de[n])},ge=function(t){_(r.removed,{element:t});try{t.parentNode.removeChild(t)}catch(e){try{t.outerHTML=at}catch(e){t.remove()}}},ye=function(t,e){try{_(r.removed,{attribute:e.getAttributeNode(t),from:e})}catch(t){_(r.removed,{attribute:null,from:e})}if(e.removeAttribute(t),"is"===t&&!Tt[t])if(Rt||Pt)try{ge(e)}catch(t){}else try{e.setAttribute(t,"")}catch(t){}},me=function(t){var e,n;if(Ft)t="<remove></remove>"+t;else{var r=k(t,/^[\r\n\t ]+/);n=r&&r[0]}"application/xhtml+xml"===pt&&(t='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+t+"</body></html>");var i=it?it.createHTML(t):t;if(ee===te)try{e=(new y).parseFromString(i,pt)}catch(t){}if(!e||!e.documentElement){e=st.createDocument(ee,"template",null);try{e.documentElement.innerHTML=ne?"":i}catch(t){}}var a=e.body||e.documentElement;return t&&n&&a.insertBefore(o.createTextNode(n),a.childNodes[0]||null),ee===te?ut.call(e,Lt?"html":"body")[0]:Lt?e.documentElement:a},be=function(t){return ct.call(t.ownerDocument||t,t,d.SHOW_ELEMENT|d.SHOW_COMMENT|d.SHOW_TEXT,null,!1)},ve=function(t){return t instanceof g&&("string"!=typeof t.nodeName||"string"!=typeof t.textContent||"function"!=typeof t.removeChild||!(t.attributes instanceof p)||"function"!=typeof t.removeAttribute||"function"!=typeof t.setAttribute||"string"!=typeof t.namespaceURI||"function"!=typeof t.insertBefore)},_e=function(e){return"object"===t(l)?e instanceof l:e&&"object"===t(e)&&"number"==typeof e.nodeType&&"string"==typeof e.nodeName},xe=function(t,e,n){ft[t]&&b(ft[t],(function(t){t.call(r,e,n,ae)}))},ke=function(t){var e;if(xe("beforeSanitizeElements",t,null),ve(t))return ge(t),!0;if(C(/[\u0080-\uFFFF]/,t.nodeName))return ge(t),!0;var n=gt(t.nodeName);if(xe("uponSanitizeElement",t,{tagName:n,allowedTags:wt}),t.hasChildNodes()&&!_e(t.firstElementChild)&&(!_e(t.content)||!_e(t.content.firstElementChild))&&C(/<[/\w]/g,t.innerHTML)&&C(/<[/\w]/g,t.textContent))return ge(t),!0;if("select"===n&&C(/<template/i,t.innerHTML))return ge(t),!0;if(!wt[n]||At[n]){if(!At[n]&&Ee(n)){if(St.tagNameCheck instanceof RegExp&&C(St.tagNameCheck,n))return!1;if(St.tagNameCheck instanceof Function&&St.tagNameCheck(n))return!1}if($t&&!Ht[n]){var i=nt(t)||t.parentNode,a=et(t)||t.childNodes;if(a&&i)for(var o=a.length-1;o>=0;--o)i.insertBefore(J(a[o],!0),tt(t))}return ge(t),!0}return t instanceof u&&!pe(t)?(ge(t),!0):"noscript"!==n&&"noembed"!==n||!C(/<\/no(script|embed)/i,t.innerHTML)?(Bt&&3===t.nodeType&&(e=t.textContent,e=w(e,yt," "),e=w(e,mt," "),t.textContent!==e&&(_(r.removed,{element:t.cloneNode()}),t.textContent=e)),xe("afterSanitizeElements",t,null),!1):(ge(t),!0)},we=function(t,e,n){if(zt&&("id"===e||"name"===e)&&(n in o||n in oe))return!1;if(Nt&&!Mt[e]&&C(bt,e));else if(Ot&&C(vt,e));else if(!Tt[e]||Mt[e]){if(!(Ee(t)&&(St.tagNameCheck instanceof RegExp&&C(St.tagNameCheck,t)||St.tagNameCheck instanceof Function&&St.tagNameCheck(t))&&(St.attributeNameCheck instanceof RegExp&&C(St.attributeNameCheck,e)||St.attributeNameCheck instanceof Function&&St.attributeNameCheck(e))||"is"===e&&St.allowCustomizedBuiltInElements&&(St.tagNameCheck instanceof RegExp&&C(St.tagNameCheck,n)||St.tagNameCheck instanceof Function&&St.tagNameCheck(n))))return!1}else if(Zt[e]);else if(C(kt,w(n,xt,"")));else if("src"!==e&&"xlink:href"!==e&&"href"!==e||"script"===t||0!==E(n,"data:")||!Gt[t])if(Dt&&!C(_t,w(n,xt,"")));else if(n)return!1;return!0},Ee=function(t){return t.indexOf("-")>0},Te=function(e){var n,i,a,o;xe("beforeSanitizeAttributes",e,null);var s=e.attributes;if(s){var c={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:Tt};for(o=s.length;o--;){var l=n=s[o],u=l.name,h=l.namespaceURI;if(i="value"===u?n.value:T(n.value),a=gt(u),c.attrName=a,c.attrValue=i,c.keepAttr=!0,c.forceKeepAttr=void 0,xe("uponSanitizeAttribute",e,c),i=c.attrValue,!c.forceKeepAttr&&(ye(u,e),c.keepAttr))if(C(/\/>/i,i))ye(u,e);else{Bt&&(i=w(i,yt," "),i=w(i,mt," "));var d=gt(e.nodeName);if(we(d,a,i)){if(!Yt||"id"!==a&&"name"!==a||(ye(u,e),i=Ut+i),it&&"object"===t(m)&&"function"==typeof m.getAttributeType)if(h);else switch(m.getAttributeType(d,a)){case"TrustedHTML":i=it.createHTML(i);break;case"TrustedScriptURL":i=it.createScriptURL(i)}try{h?e.setAttributeNS(h,u,i):e.setAttribute(u,i),v(r.removed)}catch(t){}}}}xe("afterSanitizeAttributes",e,null)}},Ce=function t(e){var n,r=be(e);for(xe("beforeSanitizeShadowDOM",e,null);n=r.nextNode();)xe("uponSanitizeShadowNode",n,null),ke(n)||(n.content instanceof s&&t(n.content),Te(n));xe("afterSanitizeShadowDOM",e,null)};return r.sanitize=function(e){var i,o,c,u,h,d=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if((ne=!e)&&(e="\x3c!--\x3e"),"string"!=typeof e&&!_e(e)){if("function"!=typeof e.toString)throw S("toString is not a function");if("string"!=typeof(e=e.toString()))throw S("dirty is not a string, aborting")}if(!r.isSupported){if("object"===t(n.toStaticHTML)||"function"==typeof n.toStaticHTML){if("string"==typeof e)return n.toStaticHTML(e);if(_e(e))return n.toStaticHTML(e.outerHTML)}return e}if(It||ce(d),r.removed=[],"string"==typeof e&&(Wt=!1),Wt){if(e.nodeName){var f=gt(e.nodeName);if(!wt[f]||At[f])throw S("root node is forbidden and cannot be sanitized in-place")}}else if(e instanceof l)1===(o=(i=me("\x3c!----\x3e")).ownerDocument.importNode(e,!0)).nodeType&&"BODY"===o.nodeName||"HTML"===o.nodeName?i=o:i.appendChild(o);else{if(!Rt&&!Bt&&!Lt&&-1===e.indexOf("<"))return it&&jt?it.createHTML(e):e;if(!(i=me(e)))return Rt?null:jt?at:""}i&&Ft&&ge(i.firstChild);for(var p=be(Wt?e:i);c=p.nextNode();)3===c.nodeType&&c===u||ke(c)||(c.content instanceof s&&Ce(c.content),Te(c),u=c);if(u=null,Wt)return e;if(Rt){if(Pt)for(h=lt.call(i.ownerDocument);i.firstChild;)h.appendChild(i.firstChild);else h=i;return Tt.shadowroot&&(h=ht.call(a,h,!0)),h}var g=Lt?i.outerHTML:i.innerHTML;return Lt&&wt["!doctype"]&&i.ownerDocument&&i.ownerDocument.doctype&&i.ownerDocument.doctype.name&&C(Z,i.ownerDocument.doctype.name)&&(g="<!DOCTYPE "+i.ownerDocument.doctype.name+">\n"+g),Bt&&(g=w(g,yt," "),g=w(g,mt," ")),it&&jt?it.createHTML(g):g},r.setConfig=function(t){ce(t),It=!0},r.clearConfig=function(){ae=null,It=!1},r.isValidAttribute=function(t,e,n){ae||ce({});var r=gt(t),i=gt(e);return we(r,i,n)},r.addHook=function(t,e){"function"==typeof e&&(ft[t]=ft[t]||[],_(ft[t],e))},r.removeHook=function(t){if(ft[t])return v(ft[t])},r.removeHooks=function(t){ft[t]&&(ft[t]=[])},r.removeAllHooks=function(){ft={}},r}()}()},8282:(t,e,n)=>{var r=n(2354);t.exports={Graph:r.Graph,json:n(8974),alg:n(2440),version:r.version}},2842:(t,e,n)=>{var r=n(9126);t.exports=function(t){var e,n={},i=[];function a(i){r.has(n,i)||(n[i]=!0,e.push(i),r.each(t.successors(i),a),r.each(t.predecessors(i),a))}return r.each(t.nodes(),(function(t){e=[],a(t),e.length&&i.push(e)})),i}},3984:(t,e,n)=>{var r=n(9126);function i(t,e,n,a,o,s){r.has(a,e)||(a[e]=!0,n||s.push(e),r.each(o(e),(function(e){i(t,e,n,a,o,s)})),n&&s.push(e))}t.exports=function(t,e,n){r.isArray(e)||(e=[e]);var a=(t.isDirected()?t.successors:t.neighbors).bind(t),o=[],s={};return r.each(e,(function(e){if(!t.hasNode(e))throw new Error("Graph does not have node: "+e);i(t,e,"post"===n,s,a,o)})),o}},4847:(t,e,n)=>{var r=n(3763),i=n(9126);t.exports=function(t,e,n){return i.transform(t.nodes(),(function(i,a){i[a]=r(t,a,e,n)}),{})}},3763:(t,e,n)=>{var r=n(9126),i=n(9675);t.exports=function(t,e,n,r){return function(t,e,n,r){var a,o,s={},c=new i,l=function(t){var e=t.v!==a?t.v:t.w,r=s[e],i=n(t),l=o.distance+i;if(i<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+t+" Weight: "+i);l<r.distance&&(r.distance=l,r.predecessor=a,c.decrease(e,l))};for(t.nodes().forEach((function(t){var n=t===e?0:Number.POSITIVE_INFINITY;s[t]={distance:n},c.add(t,n)}));c.size()>0&&(a=c.removeMin(),(o=s[a]).distance!==Number.POSITIVE_INFINITY);)r(a).forEach(l);return s}(t,String(e),n||a,r||function(e){return t.outEdges(e)})};var a=r.constant(1)},9096:(t,e,n)=>{var r=n(9126),i=n(5023);t.exports=function(t){return r.filter(i(t),(function(e){return e.length>1||1===e.length&&t.hasEdge(e[0],e[0])}))}},8924:(t,e,n)=>{var r=n(9126);t.exports=function(t,e,n){return function(t,e,n){var r={},i=t.nodes();return i.forEach((function(t){r[t]={},r[t][t]={distance:0},i.forEach((function(e){t!==e&&(r[t][e]={distance:Number.POSITIVE_INFINITY})})),n(t).forEach((function(n){var i=n.v===t?n.w:n.v,a=e(n);r[t][i]={distance:a,predecessor:t}}))})),i.forEach((function(t){var e=r[t];i.forEach((function(n){var a=r[n];i.forEach((function(n){var r=a[t],i=e[n],o=a[n],s=r.distance+i.distance;s<o.distance&&(o.distance=s,o.predecessor=i.predecessor)}))}))})),r}(t,e||i,n||function(e){return t.outEdges(e)})};var i=r.constant(1)},2440:(t,e,n)=>{t.exports={components:n(2842),dijkstra:n(3763),dijkstraAll:n(4847),findCycles:n(9096),floydWarshall:n(8924),isAcyclic:n(2707),postorder:n(8828),preorder:n(2648),prim:n(514),tarjan:n(5023),topsort:n(2166)}},2707:(t,e,n)=>{var r=n(2166);t.exports=function(t){try{r(t)}catch(t){if(t instanceof r.CycleException)return!1;throw t}return!0}},8828:(t,e,n)=>{var r=n(3984);t.exports=function(t,e){return r(t,e,"post")}},2648:(t,e,n)=>{var r=n(3984);t.exports=function(t,e){return r(t,e,"pre")}},514:(t,e,n)=>{var r=n(9126),i=n(771),a=n(9675);t.exports=function(t,e){var n,o=new i,s={},c=new a;function l(t){var r=t.v===n?t.w:t.v,i=c.priority(r);if(void 0!==i){var a=e(t);a<i&&(s[r]=n,c.decrease(r,a))}}if(0===t.nodeCount())return o;r.each(t.nodes(),(function(t){c.add(t,Number.POSITIVE_INFINITY),o.setNode(t)})),c.decrease(t.nodes()[0],0);for(var u=!1;c.size()>0;){if(n=c.removeMin(),r.has(s,n))o.setEdge(n,s[n]);else{if(u)throw new Error("Input graph is not connected: "+t);u=!0}t.nodeEdges(n).forEach(l)}return o}},5023:(t,e,n)=>{var r=n(9126);t.exports=function(t){var e=0,n=[],i={},a=[];function o(s){var c=i[s]={onStack:!0,lowlink:e,index:e++};if(n.push(s),t.successors(s).forEach((function(t){r.has(i,t)?i[t].onStack&&(c.lowlink=Math.min(c.lowlink,i[t].index)):(o(t),c.lowlink=Math.min(c.lowlink,i[t].lowlink))})),c.lowlink===c.index){var l,u=[];do{l=n.pop(),i[l].onStack=!1,u.push(l)}while(s!==l);a.push(u)}}return t.nodes().forEach((function(t){r.has(i,t)||o(t)})),a}},2166:(t,e,n)=>{var r=n(9126);function i(t){var e={},n={},i=[];if(r.each(t.sinks(),(function o(s){if(r.has(n,s))throw new a;r.has(e,s)||(n[s]=!0,e[s]=!0,r.each(t.predecessors(s),o),delete n[s],i.push(s))})),r.size(e)!==t.nodeCount())throw new a;return i}function a(){}t.exports=i,i.CycleException=a,a.prototype=new Error},9675:(t,e,n)=>{var r=n(9126);function i(){this._arr=[],this._keyIndices={}}t.exports=i,i.prototype.size=function(){return this._arr.length},i.prototype.keys=function(){return this._arr.map((function(t){return t.key}))},i.prototype.has=function(t){return r.has(this._keyIndices,t)},i.prototype.priority=function(t){var e=this._keyIndices[t];if(void 0!==e)return this._arr[e].priority},i.prototype.min=function(){if(0===this.size())throw new Error("Queue underflow");return this._arr[0].key},i.prototype.add=function(t,e){var n=this._keyIndices;if(t=String(t),!r.has(n,t)){var i=this._arr,a=i.length;return n[t]=a,i.push({key:t,priority:e}),this._decrease(a),!0}return!1},i.prototype.removeMin=function(){this._swap(0,this._arr.length-1);var t=this._arr.pop();return delete this._keyIndices[t.key],this._heapify(0),t.key},i.prototype.decrease=function(t,e){var n=this._keyIndices[t];if(e>this._arr[n].priority)throw new Error("New priority is greater than current priority. Key: "+t+" Old: "+this._arr[n].priority+" New: "+e);this._arr[n].priority=e,this._decrease(n)},i.prototype._heapify=function(t){var e=this._arr,n=2*t,r=n+1,i=t;n<e.length&&(i=e[n].priority<e[i].priority?n:i,r<e.length&&(i=e[r].priority<e[i].priority?r:i),i!==t&&(this._swap(t,i),this._heapify(i)))},i.prototype._decrease=function(t){for(var e,n=this._arr,r=n[t].priority;0!==t&&!(n[e=t>>1].priority<r);)this._swap(t,e),t=e},i.prototype._swap=function(t,e){var n=this._arr,r=this._keyIndices,i=n[t],a=n[e];n[t]=a,n[e]=i,r[a.key]=t,r[i.key]=e}},771:(t,e,n)=>{var r=n(9126);t.exports=a;var i="\0";function a(t){this._isDirected=!r.has(t,"directed")||t.directed,this._isMultigraph=!!r.has(t,"multigraph")&&t.multigraph,this._isCompound=!!r.has(t,"compound")&&t.compound,this._label=void 0,this._defaultNodeLabelFn=r.constant(void 0),this._defaultEdgeLabelFn=r.constant(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children["\0"]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}function o(t,e){t[e]?t[e]++:t[e]=1}function s(t,e){--t[e]||delete t[e]}function c(t,e,n,i){var a=""+e,o=""+n;if(!t&&a>o){var s=a;a=o,o=s}return a+"\x01"+o+"\x01"+(r.isUndefined(i)?"\0":i)}function l(t,e,n,r){var i=""+e,a=""+n;if(!t&&i>a){var o=i;i=a,a=o}var s={v:i,w:a};return r&&(s.name=r),s}function u(t,e){return c(t,e.v,e.w,e.name)}a.prototype._nodeCount=0,a.prototype._edgeCount=0,a.prototype.isDirected=function(){return this._isDirected},a.prototype.isMultigraph=function(){return this._isMultigraph},a.prototype.isCompound=function(){return this._isCompound},a.prototype.setGraph=function(t){return this._label=t,this},a.prototype.graph=function(){return this._label},a.prototype.setDefaultNodeLabel=function(t){return r.isFunction(t)||(t=r.constant(t)),this._defaultNodeLabelFn=t,this},a.prototype.nodeCount=function(){return this._nodeCount},a.prototype.nodes=function(){return r.keys(this._nodes)},a.prototype.sources=function(){var t=this;return r.filter(this.nodes(),(function(e){return r.isEmpty(t._in[e])}))},a.prototype.sinks=function(){var t=this;return r.filter(this.nodes(),(function(e){return r.isEmpty(t._out[e])}))},a.prototype.setNodes=function(t,e){var n=arguments,i=this;return r.each(t,(function(t){n.length>1?i.setNode(t,e):i.setNode(t)})),this},a.prototype.setNode=function(t,e){return r.has(this._nodes,t)?(arguments.length>1&&(this._nodes[t]=e),this):(this._nodes[t]=arguments.length>1?e:this._defaultNodeLabelFn(t),this._isCompound&&(this._parent[t]=i,this._children[t]={},this._children["\0"][t]=!0),this._in[t]={},this._preds[t]={},this._out[t]={},this._sucs[t]={},++this._nodeCount,this)},a.prototype.node=function(t){return this._nodes[t]},a.prototype.hasNode=function(t){return r.has(this._nodes,t)},a.prototype.removeNode=function(t){var e=this;if(r.has(this._nodes,t)){var n=function(t){e.removeEdge(e._edgeObjs[t])};delete this._nodes[t],this._isCompound&&(this._removeFromParentsChildList(t),delete this._parent[t],r.each(this.children(t),(function(t){e.setParent(t)})),delete this._children[t]),r.each(r.keys(this._in[t]),n),delete this._in[t],delete this._preds[t],r.each(r.keys(this._out[t]),n),delete this._out[t],delete this._sucs[t],--this._nodeCount}return this},a.prototype.setParent=function(t,e){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(r.isUndefined(e))e=i;else{for(var n=e+="";!r.isUndefined(n);n=this.parent(n))if(n===t)throw new Error("Setting "+e+" as parent of "+t+" would create a cycle");this.setNode(e)}return this.setNode(t),this._removeFromParentsChildList(t),this._parent[t]=e,this._children[e][t]=!0,this},a.prototype._removeFromParentsChildList=function(t){delete this._children[this._parent[t]][t]},a.prototype.parent=function(t){if(this._isCompound){var e=this._parent[t];if(e!==i)return e}},a.prototype.children=function(t){if(r.isUndefined(t)&&(t=i),this._isCompound){var e=this._children[t];if(e)return r.keys(e)}else{if(t===i)return this.nodes();if(this.hasNode(t))return[]}},a.prototype.predecessors=function(t){var e=this._preds[t];if(e)return r.keys(e)},a.prototype.successors=function(t){var e=this._sucs[t];if(e)return r.keys(e)},a.prototype.neighbors=function(t){var e=this.predecessors(t);if(e)return r.union(e,this.successors(t))},a.prototype.isLeaf=function(t){return 0===(this.isDirected()?this.successors(t):this.neighbors(t)).length},a.prototype.filterNodes=function(t){var e=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});e.setGraph(this.graph());var n=this;r.each(this._nodes,(function(n,r){t(r)&&e.setNode(r,n)})),r.each(this._edgeObjs,(function(t){e.hasNode(t.v)&&e.hasNode(t.w)&&e.setEdge(t,n.edge(t))}));var i={};function a(t){var r=n.parent(t);return void 0===r||e.hasNode(r)?(i[t]=r,r):r in i?i[r]:a(r)}return this._isCompound&&r.each(e.nodes(),(function(t){e.setParent(t,a(t))})),e},a.prototype.setDefaultEdgeLabel=function(t){return r.isFunction(t)||(t=r.constant(t)),this._defaultEdgeLabelFn=t,this},a.prototype.edgeCount=function(){return this._edgeCount},a.prototype.edges=function(){return r.values(this._edgeObjs)},a.prototype.setPath=function(t,e){var n=this,i=arguments;return r.reduce(t,(function(t,r){return i.length>1?n.setEdge(t,r,e):n.setEdge(t,r),r})),this},a.prototype.setEdge=function(){var t,e,n,i,a=!1,s=arguments[0];"object"==typeof s&&null!==s&&"v"in s?(t=s.v,e=s.w,n=s.name,2===arguments.length&&(i=arguments[1],a=!0)):(t=s,e=arguments[1],n=arguments[3],arguments.length>2&&(i=arguments[2],a=!0)),t=""+t,e=""+e,r.isUndefined(n)||(n=""+n);var u=c(this._isDirected,t,e,n);if(r.has(this._edgeLabels,u))return a&&(this._edgeLabels[u]=i),this;if(!r.isUndefined(n)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(t),this.setNode(e),this._edgeLabels[u]=a?i:this._defaultEdgeLabelFn(t,e,n);var h=l(this._isDirected,t,e,n);return t=h.v,e=h.w,Object.freeze(h),this._edgeObjs[u]=h,o(this._preds[e],t),o(this._sucs[t],e),this._in[e][u]=h,this._out[t][u]=h,this._edgeCount++,this},a.prototype.edge=function(t,e,n){var r=1===arguments.length?u(this._isDirected,arguments[0]):c(this._isDirected,t,e,n);return this._edgeLabels[r]},a.prototype.hasEdge=function(t,e,n){var i=1===arguments.length?u(this._isDirected,arguments[0]):c(this._isDirected,t,e,n);return r.has(this._edgeLabels,i)},a.prototype.removeEdge=function(t,e,n){var r=1===arguments.length?u(this._isDirected,arguments[0]):c(this._isDirected,t,e,n),i=this._edgeObjs[r];return i&&(t=i.v,e=i.w,delete this._edgeLabels[r],delete this._edgeObjs[r],s(this._preds[e],t),s(this._sucs[t],e),delete this._in[e][r],delete this._out[t][r],this._edgeCount--),this},a.prototype.inEdges=function(t,e){var n=this._in[t];if(n){var i=r.values(n);return e?r.filter(i,(function(t){return t.v===e})):i}},a.prototype.outEdges=function(t,e){var n=this._out[t];if(n){var i=r.values(n);return e?r.filter(i,(function(t){return t.w===e})):i}},a.prototype.nodeEdges=function(t,e){var n=this.inEdges(t,e);if(n)return n.concat(this.outEdges(t,e))}},2354:(t,e,n)=>{t.exports={Graph:n(771),version:n(9631)}},8974:(t,e,n)=>{var r=n(9126),i=n(771);function a(t){return r.map(t.nodes(),(function(e){var n=t.node(e),i=t.parent(e),a={v:e};return r.isUndefined(n)||(a.value=n),r.isUndefined(i)||(a.parent=i),a}))}function o(t){return r.map(t.edges(),(function(e){var n=t.edge(e),i={v:e.v,w:e.w};return r.isUndefined(e.name)||(i.name=e.name),r.isUndefined(n)||(i.value=n),i}))}t.exports={write:function(t){var e={options:{directed:t.isDirected(),multigraph:t.isMultigraph(),compound:t.isCompound()},nodes:a(t),edges:o(t)};return r.isUndefined(t.graph())||(e.value=r.clone(t.graph())),e},read:function(t){var e=new i(t.options).setGraph(t.value);return r.each(t.nodes,(function(t){e.setNode(t.v,t.value),t.parent&&e.setParent(t.v,t.parent)})),r.each(t.edges,(function(t){e.setEdge({v:t.v,w:t.w,name:t.name},t.value)})),e}}},9126:(t,e,n)=>{var r;try{r={clone:n(6678),constant:n(5703),each:n(6073),filter:n(3105),has:n(8721),isArray:n(1469),isEmpty:n(1609),isFunction:n(3560),isUndefined:n(2353),keys:n(3674),map:n(5161),reduce:n(4061),size:n(4238),transform:n(8718),union:n(3386),values:n(2628)}}catch(t){}r||(r=window._),t.exports=r},9631:t=>{t.exports="2.1.8"},8552:(t,e,n)=>{var r=n(852)(n(5639),"DataView");t.exports=r},1989:(t,e,n)=>{var r=n(1789),i=n(401),a=n(7667),o=n(1327),s=n(1866);function c(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=i,c.prototype.get=a,c.prototype.has=o,c.prototype.set=s,t.exports=c},8407:(t,e,n)=>{var r=n(7040),i=n(4125),a=n(2117),o=n(7518),s=n(4705);function c(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=i,c.prototype.get=a,c.prototype.has=o,c.prototype.set=s,t.exports=c},7071:(t,e,n)=>{var r=n(852)(n(5639),"Map");t.exports=r},3369:(t,e,n)=>{var r=n(4785),i=n(1285),a=n(6e3),o=n(9916),s=n(5265);function c(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var r=t[e];this.set(r[0],r[1])}}c.prototype.clear=r,c.prototype.delete=i,c.prototype.get=a,c.prototype.has=o,c.prototype.set=s,t.exports=c},3818:(t,e,n)=>{var r=n(852)(n(5639),"Promise");t.exports=r},8525:(t,e,n)=>{var r=n(852)(n(5639),"Set");t.exports=r},8668:(t,e,n)=>{var r=n(3369),i=n(619),a=n(2385);function o(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new r;++e<n;)this.add(t[e])}o.prototype.add=o.prototype.push=i,o.prototype.has=a,t.exports=o},6384:(t,e,n)=>{var r=n(8407),i=n(7465),a=n(3779),o=n(7599),s=n(4758),c=n(4309);function l(t){var e=this.__data__=new r(t);this.size=e.size}l.prototype.clear=i,l.prototype.delete=a,l.prototype.get=o,l.prototype.has=s,l.prototype.set=c,t.exports=l},2705:(t,e,n)=>{var r=n(5639).Symbol;t.exports=r},1149:(t,e,n)=>{var r=n(5639).Uint8Array;t.exports=r},577:(t,e,n)=>{var r=n(852)(n(5639),"WeakMap");t.exports=r},6874:t=>{t.exports=function(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}},7412:t=>{t.exports=function(t,e){for(var n=-1,r=null==t?0:t.length;++n<r&&!1!==e(t[n],n,t););return t}},4963:t=>{t.exports=function(t,e){for(var n=-1,r=null==t?0:t.length,i=0,a=[];++n<r;){var o=t[n];e(o,n,t)&&(a[i++]=o)}return a}},7443:(t,e,n)=>{var r=n(2118);t.exports=function(t,e){return!(null==t||!t.length)&&r(t,e,0)>-1}},1196:t=>{t.exports=function(t,e,n){for(var r=-1,i=null==t?0:t.length;++r<i;)if(n(e,t[r]))return!0;return!1}},4636:(t,e,n)=>{var r=n(2545),i=n(5694),a=n(1469),o=n(4144),s=n(5776),c=n(6719),l=Object.prototype.hasOwnProperty;t.exports=function(t,e){var n=a(t),u=!n&&i(t),h=!n&&!u&&o(t),d=!n&&!u&&!h&&c(t),f=n||u||h||d,p=f?r(t.length,String):[],g=p.length;for(var y in t)!e&&!l.call(t,y)||f&&("length"==y||h&&("offset"==y||"parent"==y)||d&&("buffer"==y||"byteLength"==y||"byteOffset"==y)||s(y,g))||p.push(y);return p}},9932:t=>{t.exports=function(t,e){for(var n=-1,r=null==t?0:t.length,i=Array(r);++n<r;)i[n]=e(t[n],n,t);return i}},2488:t=>{t.exports=function(t,e){for(var n=-1,r=e.length,i=t.length;++n<r;)t[i+n]=e[n];return t}},2663:t=>{t.exports=function(t,e,n,r){var i=-1,a=null==t?0:t.length;for(r&&a&&(n=t[++i]);++i<a;)n=e(n,t[i],i,t);return n}},2908:t=>{t.exports=function(t,e){for(var n=-1,r=null==t?0:t.length;++n<r;)if(e(t[n],n,t))return!0;return!1}},8983:(t,e,n)=>{var r=n(371)("length");t.exports=r},6556:(t,e,n)=>{var r=n(9465),i=n(7813);t.exports=function(t,e,n){(void 0!==n&&!i(t[e],n)||void 0===n&&!(e in t))&&r(t,e,n)}},4865:(t,e,n)=>{var r=n(9465),i=n(7813),a=Object.prototype.hasOwnProperty;t.exports=function(t,e,n){var o=t[e];a.call(t,e)&&i(o,n)&&(void 0!==n||e in t)||r(t,e,n)}},8470:(t,e,n)=>{var r=n(7813);t.exports=function(t,e){for(var n=t.length;n--;)if(r(t[n][0],e))return n;return-1}},4037:(t,e,n)=>{var r=n(8363),i=n(3674);t.exports=function(t,e){return t&&r(e,i(e),t)}},3886:(t,e,n)=>{var r=n(8363),i=n(1704);t.exports=function(t,e){return t&&r(e,i(e),t)}},9465:(t,e,n)=>{var r=n(8777);t.exports=function(t,e,n){"__proto__"==e&&r?r(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n}},5990:(t,e,n)=>{var r=n(6384),i=n(7412),a=n(4865),o=n(4037),s=n(3886),c=n(4626),l=n(278),u=n(8805),h=n(1911),d=n(8234),f=n(6904),p=n(4160),g=n(3824),y=n(9148),m=n(8517),b=n(1469),v=n(4144),_=n(6688),x=n(3218),k=n(2928),w=n(3674),E=n(1704),T="[object Arguments]",C="[object Function]",S="[object Object]",A={};A[T]=A["[object Array]"]=A["[object ArrayBuffer]"]=A["[object DataView]"]=A["[object Boolean]"]=A["[object Date]"]=A["[object Float32Array]"]=A["[object Float64Array]"]=A["[object Int8Array]"]=A["[object Int16Array]"]=A["[object Int32Array]"]=A["[object Map]"]=A["[object Number]"]=A[S]=A["[object RegExp]"]=A["[object Set]"]=A["[object String]"]=A["[object Symbol]"]=A["[object Uint8Array]"]=A["[object Uint8ClampedArray]"]=A["[object Uint16Array]"]=A["[object Uint32Array]"]=!0,A["[object Error]"]=A[C]=A["[object WeakMap]"]=!1,t.exports=function t(e,n,M,O,N,D){var B,L=1&n,I=2&n,F=4&n;if(M&&(B=N?M(e,O,N,D):M(e)),void 0!==B)return B;if(!x(e))return e;var R=b(e);if(R){if(B=g(e),!L)return l(e,B)}else{var P=p(e),j=P==C||"[object GeneratorFunction]"==P;if(v(e))return c(e,L);if(P==S||P==T||j&&!N){if(B=I||j?{}:m(e),!L)return I?h(e,s(B,e)):u(e,o(B,e))}else{if(!A[P])return N?e:{};B=y(e,P,L)}}D||(D=new r);var z=D.get(e);if(z)return z;D.set(e,B),k(e)?e.forEach((function(r){B.add(t(r,n,M,r,e,D))})):_(e)&&e.forEach((function(r,i){B.set(i,t(r,n,M,i,e,D))}));var Y=R?void 0:(F?I?f:d:I?E:w)(e);return i(Y||e,(function(r,i){Y&&(r=e[i=r]),a(B,i,t(r,n,M,i,e,D))})),B}},3118:(t,e,n)=>{var r=n(3218),i=Object.create,a=function(){function t(){}return function(e){if(!r(e))return{};if(i)return i(e);t.prototype=e;var n=new t;return t.prototype=void 0,n}}();t.exports=a},9881:(t,e,n)=>{var r=n(7816),i=n(9291)(r);t.exports=i},6029:(t,e,n)=>{var r=n(3448);t.exports=function(t,e,n){for(var i=-1,a=t.length;++i<a;){var o=t[i],s=e(o);if(null!=s&&(void 0===c?s==s&&!r(s):n(s,c)))var c=s,l=o}return l}},760:(t,e,n)=>{var r=n(9881);t.exports=function(t,e){var n=[];return r(t,(function(t,r,i){e(t,r,i)&&n.push(t)})),n}},1848:t=>{t.exports=function(t,e,n,r){for(var i=t.length,a=n+(r?1:-1);r?a--:++a<i;)if(e(t[a],a,t))return a;return-1}},1078:(t,e,n)=>{var r=n(2488),i=n(7285);t.exports=function t(e,n,a,o,s){var c=-1,l=e.length;for(a||(a=i),s||(s=[]);++c<l;){var u=e[c];n>0&&a(u)?n>1?t(u,n-1,a,o,s):r(s,u):o||(s[s.length]=u)}return s}},8483:(t,e,n)=>{var r=n(5063)();t.exports=r},7816:(t,e,n)=>{var r=n(8483),i=n(3674);t.exports=function(t,e){return t&&r(t,e,i)}},7786:(t,e,n)=>{var r=n(1811),i=n(327);t.exports=function(t,e){for(var n=0,a=(e=r(e,t)).length;null!=t&&n<a;)t=t[i(e[n++])];return n&&n==a?t:void 0}},8866:(t,e,n)=>{var r=n(2488),i=n(1469);t.exports=function(t,e,n){var a=e(t);return i(t)?a:r(a,n(t))}},4239:(t,e,n)=>{var r=n(2705),i=n(9607),a=n(2333),o=r?r.toStringTag:void 0;t.exports=function(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":o&&o in Object(t)?i(t):a(t)}},3325:t=>{t.exports=function(t,e){return t>e}},8565:t=>{var e=Object.prototype.hasOwnProperty;t.exports=function(t,n){return null!=t&&e.call(t,n)}},13:t=>{t.exports=function(t,e){return null!=t&&e in Object(t)}},2118:(t,e,n)=>{var r=n(1848),i=n(2722),a=n(2351);t.exports=function(t,e,n){return e==e?a(t,e,n):r(t,i,n)}},9454:(t,e,n)=>{var r=n(4239),i=n(7005);t.exports=function(t){return i(t)&&"[object Arguments]"==r(t)}},939:(t,e,n)=>{var r=n(2492),i=n(7005);t.exports=function t(e,n,a,o,s){return e===n||(null==e||null==n||!i(e)&&!i(n)?e!=e&&n!=n:r(e,n,a,o,t,s))}},2492:(t,e,n)=>{var r=n(6384),i=n(7114),a=n(8351),o=n(6096),s=n(4160),c=n(1469),l=n(4144),u=n(6719),h="[object Arguments]",d="[object Array]",f="[object Object]",p=Object.prototype.hasOwnProperty;t.exports=function(t,e,n,g,y,m){var b=c(t),v=c(e),_=b?d:s(t),x=v?d:s(e),k=(_=_==h?f:_)==f,w=(x=x==h?f:x)==f,E=_==x;if(E&&l(t)){if(!l(e))return!1;b=!0,k=!1}if(E&&!k)return m||(m=new r),b||u(t)?i(t,e,n,g,y,m):a(t,e,_,n,g,y,m);if(!(1&n)){var T=k&&p.call(t,"__wrapped__"),C=w&&p.call(e,"__wrapped__");if(T||C){var S=T?t.value():t,A=C?e.value():e;return m||(m=new r),y(S,A,n,g,m)}}return!!E&&(m||(m=new r),o(t,e,n,g,y,m))}},5588:(t,e,n)=>{var r=n(4160),i=n(7005);t.exports=function(t){return i(t)&&"[object Map]"==r(t)}},2958:(t,e,n)=>{var r=n(6384),i=n(939);t.exports=function(t,e,n,a){var o=n.length,s=o,c=!a;if(null==t)return!s;for(t=Object(t);o--;){var l=n[o];if(c&&l[2]?l[1]!==t[l[0]]:!(l[0]in t))return!1}for(;++o<s;){var u=(l=n[o])[0],h=t[u],d=l[1];if(c&&l[2]){if(void 0===h&&!(u in t))return!1}else{var f=new r;if(a)var p=a(h,d,u,t,e,f);if(!(void 0===p?i(d,h,3,a,f):p))return!1}}return!0}},2722:t=>{t.exports=function(t){return t!=t}},8458:(t,e,n)=>{var r=n(3560),i=n(5346),a=n(3218),o=n(346),s=/^\[object .+?Constructor\]$/,c=Function.prototype,l=Object.prototype,u=c.toString,h=l.hasOwnProperty,d=RegExp("^"+u.call(h).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");t.exports=function(t){return!(!a(t)||i(t))&&(r(t)?d:s).test(o(t))}},9221:(t,e,n)=>{var r=n(4160),i=n(7005);t.exports=function(t){return i(t)&&"[object Set]"==r(t)}},8749:(t,e,n)=>{var r=n(4239),i=n(1780),a=n(7005),o={};o["[object Float32Array]"]=o["[object Float64Array]"]=o["[object Int8Array]"]=o["[object Int16Array]"]=o["[object Int32Array]"]=o["[object Uint8Array]"]=o["[object Uint8ClampedArray]"]=o["[object Uint16Array]"]=o["[object Uint32Array]"]=!0,o["[object Arguments]"]=o["[object Array]"]=o["[object ArrayBuffer]"]=o["[object Boolean]"]=o["[object DataView]"]=o["[object Date]"]=o["[object Error]"]=o["[object Function]"]=o["[object Map]"]=o["[object Number]"]=o["[object Object]"]=o["[object RegExp]"]=o["[object Set]"]=o["[object String]"]=o["[object WeakMap]"]=!1,t.exports=function(t){return a(t)&&i(t.length)&&!!o[r(t)]}},7206:(t,e,n)=>{var r=n(1573),i=n(6432),a=n(6557),o=n(1469),s=n(9601);t.exports=function(t){return"function"==typeof t?t:null==t?a:"object"==typeof t?o(t)?i(t[0],t[1]):r(t):s(t)}},280:(t,e,n)=>{var r=n(5726),i=n(6916),a=Object.prototype.hasOwnProperty;t.exports=function(t){if(!r(t))return i(t);var e=[];for(var n in Object(t))a.call(t,n)&&"constructor"!=n&&e.push(n);return e}},313:(t,e,n)=>{var r=n(3218),i=n(5726),a=n(3498),o=Object.prototype.hasOwnProperty;t.exports=function(t){if(!r(t))return a(t);var e=i(t),n=[];for(var s in t)("constructor"!=s||!e&&o.call(t,s))&&n.push(s);return n}},433:t=>{t.exports=function(t,e){return t<e}},9199:(t,e,n)=>{var r=n(9881),i=n(8612);t.exports=function(t,e){var n=-1,a=i(t)?Array(t.length):[];return r(t,(function(t,r,i){a[++n]=e(t,r,i)})),a}},1573:(t,e,n)=>{var r=n(2958),i=n(1499),a=n(2634);t.exports=function(t){var e=i(t);return 1==e.length&&e[0][2]?a(e[0][0],e[0][1]):function(n){return n===t||r(n,t,e)}}},6432:(t,e,n)=>{var r=n(939),i=n(7361),a=n(9095),o=n(5403),s=n(9162),c=n(2634),l=n(327);t.exports=function(t,e){return o(t)&&s(e)?c(l(t),e):function(n){var o=i(n,t);return void 0===o&&o===e?a(n,t):r(e,o,3)}}},2980:(t,e,n)=>{var r=n(6384),i=n(6556),a=n(8483),o=n(9783),s=n(3218),c=n(1704),l=n(6390);t.exports=function t(e,n,u,h,d){e!==n&&a(n,(function(a,c){if(d||(d=new r),s(a))o(e,n,c,u,t,h,d);else{var f=h?h(l(e,c),a,c+"",e,n,d):void 0;void 0===f&&(f=a),i(e,c,f)}}),c)}},9783:(t,e,n)=>{var r=n(6556),i=n(4626),a=n(7133),o=n(278),s=n(8517),c=n(5694),l=n(1469),u=n(9246),h=n(4144),d=n(3560),f=n(3218),p=n(8630),g=n(6719),y=n(6390),m=n(3678);t.exports=function(t,e,n,b,v,_,x){var k=y(t,n),w=y(e,n),E=x.get(w);if(E)r(t,n,E);else{var T=_?_(k,w,n+"",t,e,x):void 0,C=void 0===T;if(C){var S=l(w),A=!S&&h(w),M=!S&&!A&&g(w);T=w,S||A||M?l(k)?T=k:u(k)?T=o(k):A?(C=!1,T=i(w,!0)):M?(C=!1,T=a(w,!0)):T=[]:p(w)||c(w)?(T=k,c(k)?T=m(k):f(k)&&!d(k)||(T=s(w))):C=!1}C&&(x.set(w,T),v(T,w,b,_,x),x.delete(w)),r(t,n,T)}}},9556:(t,e,n)=>{var r=n(9932),i=n(7786),a=n(7206),o=n(9199),s=n(1131),c=n(1717),l=n(5022),u=n(6557),h=n(1469);t.exports=function(t,e,n){e=e.length?r(e,(function(t){return h(t)?function(e){return i(e,1===t.length?t[0]:t)}:t})):[u];var d=-1;e=r(e,c(a));var f=o(t,(function(t,n,i){return{criteria:r(e,(function(e){return e(t)})),index:++d,value:t}}));return s(f,(function(t,e){return l(t,e,n)}))}},5970:(t,e,n)=>{var r=n(3012),i=n(9095);t.exports=function(t,e){return r(t,e,(function(e,n){return i(t,n)}))}},3012:(t,e,n)=>{var r=n(7786),i=n(611),a=n(1811);t.exports=function(t,e,n){for(var o=-1,s=e.length,c={};++o<s;){var l=e[o],u=r(t,l);n(u,l)&&i(c,a(l,t),u)}return c}},371:t=>{t.exports=function(t){return function(e){return null==e?void 0:e[t]}}},9152:(t,e,n)=>{var r=n(7786);t.exports=function(t){return function(e){return r(e,t)}}},98:t=>{var e=Math.ceil,n=Math.max;t.exports=function(t,r,i,a){for(var o=-1,s=n(e((r-t)/(i||1)),0),c=Array(s);s--;)c[a?s:++o]=t,t+=i;return c}},107:t=>{t.exports=function(t,e,n,r,i){return i(t,(function(t,i,a){n=r?(r=!1,t):e(n,t,i,a)})),n}},5976:(t,e,n)=>{var r=n(6557),i=n(5357),a=n(61);t.exports=function(t,e){return a(i(t,e,r),t+"")}},611:(t,e,n)=>{var r=n(4865),i=n(1811),a=n(5776),o=n(3218),s=n(327);t.exports=function(t,e,n,c){if(!o(t))return t;for(var l=-1,u=(e=i(e,t)).length,h=u-1,d=t;null!=d&&++l<u;){var f=s(e[l]),p=n;if("__proto__"===f||"constructor"===f||"prototype"===f)return t;if(l!=h){var g=d[f];void 0===(p=c?c(g,f,d):void 0)&&(p=o(g)?g:a(e[l+1])?[]:{})}r(d,f,p),d=d[f]}return t}},6560:(t,e,n)=>{var r=n(5703),i=n(8777),a=n(6557),o=i?function(t,e){return i(t,"toString",{configurable:!0,enumerable:!1,value:r(e),writable:!0})}:a;t.exports=o},1131:t=>{t.exports=function(t,e){var n=t.length;for(t.sort(e);n--;)t[n]=t[n].value;return t}},2545:t=>{t.exports=function(t,e){for(var n=-1,r=Array(t);++n<t;)r[n]=e(n);return r}},531:(t,e,n)=>{var r=n(2705),i=n(9932),a=n(1469),o=n(3448),s=r?r.prototype:void 0,c=s?s.toString:void 0;t.exports=function t(e){if("string"==typeof e)return e;if(a(e))return i(e,t)+"";if(o(e))return c?c.call(e):"";var n=e+"";return"0"==n&&1/e==-1/0?"-0":n}},7561:(t,e,n)=>{var r=n(7990),i=/^\s+/;t.exports=function(t){return t?t.slice(0,r(t)+1).replace(i,""):t}},1717:t=>{t.exports=function(t){return function(e){return t(e)}}},5652:(t,e,n)=>{var r=n(8668),i=n(7443),a=n(1196),o=n(4757),s=n(3593),c=n(1814);t.exports=function(t,e,n){var l=-1,u=i,h=t.length,d=!0,f=[],p=f;if(n)d=!1,u=a;else if(h>=200){var g=e?null:s(t);if(g)return c(g);d=!1,u=o,p=new r}else p=e?[]:f;t:for(;++l<h;){var y=t[l],m=e?e(y):y;if(y=n||0!==y?y:0,d&&m==m){for(var b=p.length;b--;)if(p[b]===m)continue t;e&&p.push(m),f.push(y)}else u(p,m,n)||(p!==f&&p.push(m),f.push(y))}return f}},7415:(t,e,n)=>{var r=n(9932);t.exports=function(t,e){return r(e,(function(e){return t[e]}))}},1757:t=>{t.exports=function(t,e,n){for(var r=-1,i=t.length,a=e.length,o={};++r<i;){var s=r<a?e[r]:void 0;n(o,t[r],s)}return o}},4757:t=>{t.exports=function(t,e){return t.has(e)}},4290:(t,e,n)=>{var r=n(6557);t.exports=function(t){return"function"==typeof t?t:r}},1811:(t,e,n)=>{var r=n(1469),i=n(5403),a=n(5514),o=n(9833);t.exports=function(t,e){return r(t)?t:i(t,e)?[t]:a(o(t))}},4318:(t,e,n)=>{var r=n(1149);t.exports=function(t){var e=new t.constructor(t.byteLength);return new r(e).set(new r(t)),e}},4626:(t,e,n)=>{t=n.nmd(t);var r=n(5639),i=e&&!e.nodeType&&e,a=i&&t&&!t.nodeType&&t,o=a&&a.exports===i?r.Buffer:void 0,s=o?o.allocUnsafe:void 0;t.exports=function(t,e){if(e)return t.slice();var n=t.length,r=s?s(n):new t.constructor(n);return t.copy(r),r}},7157:(t,e,n)=>{var r=n(4318);t.exports=function(t,e){var n=e?r(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}},3147:t=>{var e=/\w*$/;t.exports=function(t){var n=new t.constructor(t.source,e.exec(t));return n.lastIndex=t.lastIndex,n}},419:(t,e,n)=>{var r=n(2705),i=r?r.prototype:void 0,a=i?i.valueOf:void 0;t.exports=function(t){return a?Object(a.call(t)):{}}},7133:(t,e,n)=>{var r=n(4318);t.exports=function(t,e){var n=e?r(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}},6393:(t,e,n)=>{var r=n(3448);t.exports=function(t,e){if(t!==e){var n=void 0!==t,i=null===t,a=t==t,o=r(t),s=void 0!==e,c=null===e,l=e==e,u=r(e);if(!c&&!u&&!o&&t>e||o&&s&&l&&!c&&!u||i&&s&&l||!n&&l||!a)return 1;if(!i&&!o&&!u&&t<e||u&&n&&a&&!i&&!o||c&&n&&a||!s&&a||!l)return-1}return 0}},5022:(t,e,n)=>{var r=n(6393);t.exports=function(t,e,n){for(var i=-1,a=t.criteria,o=e.criteria,s=a.length,c=n.length;++i<s;){var l=r(a[i],o[i]);if(l)return i>=c?l:l*("desc"==n[i]?-1:1)}return t.index-e.index}},278:t=>{t.exports=function(t,e){var n=-1,r=t.length;for(e||(e=Array(r));++n<r;)e[n]=t[n];return e}},8363:(t,e,n)=>{var r=n(4865),i=n(9465);t.exports=function(t,e,n,a){var o=!n;n||(n={});for(var s=-1,c=e.length;++s<c;){var l=e[s],u=a?a(n[l],t[l],l,n,t):void 0;void 0===u&&(u=t[l]),o?i(n,l,u):r(n,l,u)}return n}},8805:(t,e,n)=>{var r=n(8363),i=n(9551);t.exports=function(t,e){return r(t,i(t),e)}},1911:(t,e,n)=>{var r=n(8363),i=n(1442);t.exports=function(t,e){return r(t,i(t),e)}},4429:(t,e,n)=>{var r=n(5639)["__core-js_shared__"];t.exports=r},1463:(t,e,n)=>{var r=n(5976),i=n(6612);t.exports=function(t){return r((function(e,n){var r=-1,a=n.length,o=a>1?n[a-1]:void 0,s=a>2?n[2]:void 0;for(o=t.length>3&&"function"==typeof o?(a--,o):void 0,s&&i(n[0],n[1],s)&&(o=a<3?void 0:o,a=1),e=Object(e);++r<a;){var c=n[r];c&&t(e,c,r,o)}return e}))}},9291:(t,e,n)=>{var r=n(8612);t.exports=function(t,e){return function(n,i){if(null==n)return n;if(!r(n))return t(n,i);for(var a=n.length,o=e?a:-1,s=Object(n);(e?o--:++o<a)&&!1!==i(s[o],o,s););return n}}},5063:t=>{t.exports=function(t){return function(e,n,r){for(var i=-1,a=Object(e),o=r(e),s=o.length;s--;){var c=o[t?s:++i];if(!1===n(a[c],c,a))break}return e}}},7740:(t,e,n)=>{var r=n(7206),i=n(8612),a=n(3674);t.exports=function(t){return function(e,n,o){var s=Object(e);if(!i(e)){var c=r(n,3);e=a(e),n=function(t){return c(s[t],t,s)}}var l=t(e,n,o);return l>-1?s[c?e[l]:l]:void 0}}},7445:(t,e,n)=>{var r=n(98),i=n(6612),a=n(8601);t.exports=function(t){return function(e,n,o){return o&&"number"!=typeof o&&i(e,n,o)&&(n=o=void 0),e=a(e),void 0===n?(n=e,e=0):n=a(n),o=void 0===o?e<n?1:-1:a(o),r(e,n,o,t)}}},3593:(t,e,n)=>{var r=n(8525),i=n(308),a=n(1814),o=r&&1/a(new r([,-0]))[1]==1/0?function(t){return new r(t)}:i;t.exports=o},8777:(t,e,n)=>{var r=n(852),i=function(){try{var t=r(Object,"defineProperty");return t({},"",{}),t}catch(t){}}();t.exports=i},7114:(t,e,n)=>{var r=n(8668),i=n(2908),a=n(4757);t.exports=function(t,e,n,o,s,c){var l=1&n,u=t.length,h=e.length;if(u!=h&&!(l&&h>u))return!1;var d=c.get(t),f=c.get(e);if(d&&f)return d==e&&f==t;var p=-1,g=!0,y=2&n?new r:void 0;for(c.set(t,e),c.set(e,t);++p<u;){var m=t[p],b=e[p];if(o)var v=l?o(b,m,p,e,t,c):o(m,b,p,t,e,c);if(void 0!==v){if(v)continue;g=!1;break}if(y){if(!i(e,(function(t,e){if(!a(y,e)&&(m===t||s(m,t,n,o,c)))return y.push(e)}))){g=!1;break}}else if(m!==b&&!s(m,b,n,o,c)){g=!1;break}}return c.delete(t),c.delete(e),g}},8351:(t,e,n)=>{var r=n(2705),i=n(1149),a=n(7813),o=n(7114),s=n(8776),c=n(1814),l=r?r.prototype:void 0,u=l?l.valueOf:void 0;t.exports=function(t,e,n,r,l,h,d){switch(n){case"[object DataView]":if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case"[object ArrayBuffer]":return!(t.byteLength!=e.byteLength||!h(new i(t),new i(e)));case"[object Boolean]":case"[object Date]":case"[object Number]":return a(+t,+e);case"[object Error]":return t.name==e.name&&t.message==e.message;case"[object RegExp]":case"[object String]":return t==e+"";case"[object Map]":var f=s;case"[object Set]":var p=1&r;if(f||(f=c),t.size!=e.size&&!p)return!1;var g=d.get(t);if(g)return g==e;r|=2,d.set(t,e);var y=o(f(t),f(e),r,l,h,d);return d.delete(t),y;case"[object Symbol]":if(u)return u.call(t)==u.call(e)}return!1}},6096:(t,e,n)=>{var r=n(8234),i=Object.prototype.hasOwnProperty;t.exports=function(t,e,n,a,o,s){var c=1&n,l=r(t),u=l.length;if(u!=r(e).length&&!c)return!1;for(var h=u;h--;){var d=l[h];if(!(c?d in e:i.call(e,d)))return!1}var f=s.get(t),p=s.get(e);if(f&&p)return f==e&&p==t;var g=!0;s.set(t,e),s.set(e,t);for(var y=c;++h<u;){var m=t[d=l[h]],b=e[d];if(a)var v=c?a(b,m,d,e,t,s):a(m,b,d,t,e,s);if(!(void 0===v?m===b||o(m,b,n,a,s):v)){g=!1;break}y||(y="constructor"==d)}if(g&&!y){var _=t.constructor,x=e.constructor;_==x||!("constructor"in t)||!("constructor"in e)||"function"==typeof _&&_ instanceof _&&"function"==typeof x&&x instanceof x||(g=!1)}return s.delete(t),s.delete(e),g}},9021:(t,e,n)=>{var r=n(5564),i=n(5357),a=n(61);t.exports=function(t){return a(i(t,void 0,r),t+"")}},1957:(t,e,n)=>{var r="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g;t.exports=r},8234:(t,e,n)=>{var r=n(8866),i=n(9551),a=n(3674);t.exports=function(t){return r(t,a,i)}},6904:(t,e,n)=>{var r=n(8866),i=n(1442),a=n(1704);t.exports=function(t){return r(t,a,i)}},5050:(t,e,n)=>{var r=n(7019);t.exports=function(t,e){var n=t.__data__;return r(e)?n["string"==typeof e?"string":"hash"]:n.map}},1499:(t,e,n)=>{var r=n(9162),i=n(3674);t.exports=function(t){for(var e=i(t),n=e.length;n--;){var a=e[n],o=t[a];e[n]=[a,o,r(o)]}return e}},852:(t,e,n)=>{var r=n(8458),i=n(7801);t.exports=function(t,e){var n=i(t,e);return r(n)?n:void 0}},5924:(t,e,n)=>{var r=n(5569)(Object.getPrototypeOf,Object);t.exports=r},9607:(t,e,n)=>{var r=n(2705),i=Object.prototype,a=i.hasOwnProperty,o=i.toString,s=r?r.toStringTag:void 0;t.exports=function(t){var e=a.call(t,s),n=t[s];try{t[s]=void 0;var r=!0}catch(t){}var i=o.call(t);return r&&(e?t[s]=n:delete t[s]),i}},9551:(t,e,n)=>{var r=n(4963),i=n(479),a=Object.prototype.propertyIsEnumerable,o=Object.getOwnPropertySymbols,s=o?function(t){return null==t?[]:(t=Object(t),r(o(t),(function(e){return a.call(t,e)})))}:i;t.exports=s},1442:(t,e,n)=>{var r=n(2488),i=n(5924),a=n(9551),o=n(479),s=Object.getOwnPropertySymbols?function(t){for(var e=[];t;)r(e,a(t)),t=i(t);return e}:o;t.exports=s},4160:(t,e,n)=>{var r=n(8552),i=n(7071),a=n(3818),o=n(8525),s=n(577),c=n(4239),l=n(346),u="[object Map]",h="[object Promise]",d="[object Set]",f="[object WeakMap]",p="[object DataView]",g=l(r),y=l(i),m=l(a),b=l(o),v=l(s),_=c;(r&&_(new r(new ArrayBuffer(1)))!=p||i&&_(new i)!=u||a&&_(a.resolve())!=h||o&&_(new o)!=d||s&&_(new s)!=f)&&(_=function(t){var e=c(t),n="[object Object]"==e?t.constructor:void 0,r=n?l(n):"";if(r)switch(r){case g:return p;case y:return u;case m:return h;case b:return d;case v:return f}return e}),t.exports=_},7801:t=>{t.exports=function(t,e){return null==t?void 0:t[e]}},222:(t,e,n)=>{var r=n(1811),i=n(5694),a=n(1469),o=n(5776),s=n(1780),c=n(327);t.exports=function(t,e,n){for(var l=-1,u=(e=r(e,t)).length,h=!1;++l<u;){var d=c(e[l]);if(!(h=null!=t&&n(t,d)))break;t=t[d]}return h||++l!=u?h:!!(u=null==t?0:t.length)&&s(u)&&o(d,u)&&(a(t)||i(t))}},2689:t=>{var e=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]");t.exports=function(t){return e.test(t)}},1789:(t,e,n)=>{var r=n(4536);t.exports=function(){this.__data__=r?r(null):{},this.size=0}},401:t=>{t.exports=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}},7667:(t,e,n)=>{var r=n(4536),i=Object.prototype.hasOwnProperty;t.exports=function(t){var e=this.__data__;if(r){var n=e[t];return"__lodash_hash_undefined__"===n?void 0:n}return i.call(e,t)?e[t]:void 0}},1327:(t,e,n)=>{var r=n(4536),i=Object.prototype.hasOwnProperty;t.exports=function(t){var e=this.__data__;return r?void 0!==e[t]:i.call(e,t)}},1866:(t,e,n)=>{var r=n(4536);t.exports=function(t,e){var n=this.__data__;return this.size+=this.has(t)?0:1,n[t]=r&&void 0===e?"__lodash_hash_undefined__":e,this}},3824:t=>{var e=Object.prototype.hasOwnProperty;t.exports=function(t){var n=t.length,r=new t.constructor(n);return n&&"string"==typeof t[0]&&e.call(t,"index")&&(r.index=t.index,r.input=t.input),r}},9148:(t,e,n)=>{var r=n(4318),i=n(7157),a=n(3147),o=n(419),s=n(7133);t.exports=function(t,e,n){var c=t.constructor;switch(e){case"[object ArrayBuffer]":return r(t);case"[object Boolean]":case"[object Date]":return new c(+t);case"[object DataView]":return i(t,n);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return s(t,n);case"[object Map]":case"[object Set]":return new c;case"[object Number]":case"[object String]":return new c(t);case"[object RegExp]":return a(t);case"[object Symbol]":return o(t)}}},8517:(t,e,n)=>{var r=n(3118),i=n(5924),a=n(5726);t.exports=function(t){return"function"!=typeof t.constructor||a(t)?{}:r(i(t))}},7285:(t,e,n)=>{var r=n(2705),i=n(5694),a=n(1469),o=r?r.isConcatSpreadable:void 0;t.exports=function(t){return a(t)||i(t)||!!(o&&t&&t[o])}},5776:t=>{var e=/^(?:0|[1-9]\d*)$/;t.exports=function(t,n){var r=typeof t;return!!(n=null==n?9007199254740991:n)&&("number"==r||"symbol"!=r&&e.test(t))&&t>-1&&t%1==0&&t<n}},6612:(t,e,n)=>{var r=n(7813),i=n(8612),a=n(5776),o=n(3218);t.exports=function(t,e,n){if(!o(n))return!1;var s=typeof e;return!!("number"==s?i(n)&&a(e,n.length):"string"==s&&e in n)&&r(n[e],t)}},5403:(t,e,n)=>{var r=n(1469),i=n(3448),a=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,o=/^\w*$/;t.exports=function(t,e){if(r(t))return!1;var n=typeof t;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=t&&!i(t))||o.test(t)||!a.test(t)||null!=e&&t in Object(e)}},7019:t=>{t.exports=function(t){var e=typeof t;return"string"==e||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==t:null===t}},5346:(t,e,n)=>{var r,i=n(4429),a=(r=/[^.]+$/.exec(i&&i.keys&&i.keys.IE_PROTO||""))?"Symbol(src)_1."+r:"";t.exports=function(t){return!!a&&a in t}},5726:t=>{var e=Object.prototype;t.exports=function(t){var n=t&&t.constructor;return t===("function"==typeof n&&n.prototype||e)}},9162:(t,e,n)=>{var r=n(3218);t.exports=function(t){return t==t&&!r(t)}},7040:t=>{t.exports=function(){this.__data__=[],this.size=0}},4125:(t,e,n)=>{var r=n(8470),i=Array.prototype.splice;t.exports=function(t){var e=this.__data__,n=r(e,t);return!(n<0||(n==e.length-1?e.pop():i.call(e,n,1),--this.size,0))}},2117:(t,e,n)=>{var r=n(8470);t.exports=function(t){var e=this.__data__,n=r(e,t);return n<0?void 0:e[n][1]}},7518:(t,e,n)=>{var r=n(8470);t.exports=function(t){return r(this.__data__,t)>-1}},4705:(t,e,n)=>{var r=n(8470);t.exports=function(t,e){var n=this.__data__,i=r(n,t);return i<0?(++this.size,n.push([t,e])):n[i][1]=e,this}},4785:(t,e,n)=>{var r=n(1989),i=n(8407),a=n(7071);t.exports=function(){this.size=0,this.__data__={hash:new r,map:new(a||i),string:new r}}},1285:(t,e,n)=>{var r=n(5050);t.exports=function(t){var e=r(this,t).delete(t);return this.size-=e?1:0,e}},6e3:(t,e,n)=>{var r=n(5050);t.exports=function(t){return r(this,t).get(t)}},9916:(t,e,n)=>{var r=n(5050);t.exports=function(t){return r(this,t).has(t)}},5265:(t,e,n)=>{var r=n(5050);t.exports=function(t,e){var n=r(this,t),i=n.size;return n.set(t,e),this.size+=n.size==i?0:1,this}},8776:t=>{t.exports=function(t){var e=-1,n=Array(t.size);return t.forEach((function(t,r){n[++e]=[r,t]})),n}},2634:t=>{t.exports=function(t,e){return function(n){return null!=n&&n[t]===e&&(void 0!==e||t in Object(n))}}},4523:(t,e,n)=>{var r=n(8306);t.exports=function(t){var e=r(t,(function(t){return 500===n.size&&n.clear(),t})),n=e.cache;return e}},4536:(t,e,n)=>{var r=n(852)(Object,"create");t.exports=r},6916:(t,e,n)=>{var r=n(5569)(Object.keys,Object);t.exports=r},3498:t=>{t.exports=function(t){var e=[];if(null!=t)for(var n in Object(t))e.push(n);return e}},1167:(t,e,n)=>{t=n.nmd(t);var r=n(1957),i=e&&!e.nodeType&&e,a=i&&t&&!t.nodeType&&t,o=a&&a.exports===i&&r.process,s=function(){try{return a&&a.require&&a.require("util").types||o&&o.binding&&o.binding("util")}catch(t){}}();t.exports=s},2333:t=>{var e=Object.prototype.toString;t.exports=function(t){return e.call(t)}},5569:t=>{t.exports=function(t,e){return function(n){return t(e(n))}}},5357:(t,e,n)=>{var r=n(6874),i=Math.max;t.exports=function(t,e,n){return e=i(void 0===e?t.length-1:e,0),function(){for(var a=arguments,o=-1,s=i(a.length-e,0),c=Array(s);++o<s;)c[o]=a[e+o];o=-1;for(var l=Array(e+1);++o<e;)l[o]=a[o];return l[e]=n(c),r(t,this,l)}}},5639:(t,e,n)=>{var r=n(1957),i="object"==typeof self&&self&&self.Object===Object&&self,a=r||i||Function("return this")();t.exports=a},6390:t=>{t.exports=function(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]}},619:t=>{t.exports=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this}},2385:t=>{t.exports=function(t){return this.__data__.has(t)}},1814:t=>{t.exports=function(t){var e=-1,n=Array(t.size);return t.forEach((function(t){n[++e]=t})),n}},61:(t,e,n)=>{var r=n(6560),i=n(1275)(r);t.exports=i},1275:t=>{var e=Date.now;t.exports=function(t){var n=0,r=0;return function(){var i=e(),a=16-(i-r);if(r=i,a>0){if(++n>=800)return arguments[0]}else n=0;return t.apply(void 0,arguments)}}},7465:(t,e,n)=>{var r=n(8407);t.exports=function(){this.__data__=new r,this.size=0}},3779:t=>{t.exports=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n}},7599:t=>{t.exports=function(t){return this.__data__.get(t)}},4758:t=>{t.exports=function(t){return this.__data__.has(t)}},4309:(t,e,n)=>{var r=n(8407),i=n(7071),a=n(3369);t.exports=function(t,e){var n=this.__data__;if(n instanceof r){var o=n.__data__;if(!i||o.length<199)return o.push([t,e]),this.size=++n.size,this;n=this.__data__=new a(o)}return n.set(t,e),this.size=n.size,this}},2351:t=>{t.exports=function(t,e,n){for(var r=n-1,i=t.length;++r<i;)if(t[r]===e)return r;return-1}},8016:(t,e,n)=>{var r=n(8983),i=n(2689),a=n(1903);t.exports=function(t){return i(t)?a(t):r(t)}},5514:(t,e,n)=>{var r=n(4523),i=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,a=/\\(\\)?/g,o=r((function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(i,(function(t,n,r,i){e.push(r?i.replace(a,"$1"):n||t)})),e}));t.exports=o},327:(t,e,n)=>{var r=n(3448);t.exports=function(t){if("string"==typeof t||r(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}},346:t=>{var e=Function.prototype.toString;t.exports=function(t){if(null!=t){try{return e.call(t)}catch(t){}try{return t+""}catch(t){}}return""}},7990:t=>{var e=/\s/;t.exports=function(t){for(var n=t.length;n--&&e.test(t.charAt(n)););return n}},1903:t=>{var e="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",n="\\ud83c[\\udffb-\\udfff]",r="[^\\ud800-\\udfff]",i="(?:\\ud83c[\\udde6-\\uddff]){2}",a="[\\ud800-\\udbff][\\udc00-\\udfff]",o="(?:"+e+"|"+n+")?",s="[\\ufe0e\\ufe0f]?",c=s+o+"(?:\\u200d(?:"+[r,i,a].join("|")+")"+s+o+")*",l="(?:"+[r+e+"?",e,i,a,"[\\ud800-\\udfff]"].join("|")+")",u=RegExp(n+"(?="+n+")|"+l+c,"g");t.exports=function(t){for(var e=u.lastIndex=0;u.test(t);)++e;return e}},6678:(t,e,n)=>{var r=n(5990);t.exports=function(t){return r(t,4)}},361:(t,e,n)=>{var r=n(5990);t.exports=function(t){return r(t,5)}},5703:t=>{t.exports=function(t){return function(){return t}}},1747:(t,e,n)=>{var r=n(5976),i=n(7813),a=n(6612),o=n(1704),s=Object.prototype,c=s.hasOwnProperty,l=r((function(t,e){t=Object(t);var n=-1,r=e.length,l=r>2?e[2]:void 0;for(l&&a(e[0],e[1],l)&&(r=1);++n<r;)for(var u=e[n],h=o(u),d=-1,f=h.length;++d<f;){var p=h[d],g=t[p];(void 0===g||i(g,s[p])&&!c.call(t,p))&&(t[p]=u[p])}return t}));t.exports=l},6073:(t,e,n)=>{t.exports=n(4486)},7813:t=>{t.exports=function(t,e){return t===e||t!=t&&e!=e}},3105:(t,e,n)=>{var r=n(4963),i=n(760),a=n(7206),o=n(1469);t.exports=function(t,e){return(o(t)?r:i)(t,a(e,3))}},3311:(t,e,n)=>{var r=n(7740)(n(998));t.exports=r},998:(t,e,n)=>{var r=n(1848),i=n(7206),a=n(554),o=Math.max;t.exports=function(t,e,n){var s=null==t?0:t.length;if(!s)return-1;var c=null==n?0:a(n);return c<0&&(c=o(s+c,0)),r(t,i(e,3),c)}},5564:(t,e,n)=>{var r=n(1078);t.exports=function(t){return null!=t&&t.length?r(t,1):[]}},4486:(t,e,n)=>{var r=n(7412),i=n(9881),a=n(4290),o=n(1469);t.exports=function(t,e){return(o(t)?r:i)(t,a(e))}},2620:(t,e,n)=>{var r=n(8483),i=n(4290),a=n(1704);t.exports=function(t,e){return null==t?t:r(t,i(e),a)}},7361:(t,e,n)=>{var r=n(7786);t.exports=function(t,e,n){var i=null==t?void 0:r(t,e);return void 0===i?n:i}},8721:(t,e,n)=>{var r=n(8565),i=n(222);t.exports=function(t,e){return null!=t&&i(t,e,r)}},9095:(t,e,n)=>{var r=n(13),i=n(222);t.exports=function(t,e){return null!=t&&i(t,e,r)}},6557:t=>{t.exports=function(t){return t}},5694:(t,e,n)=>{var r=n(9454),i=n(7005),a=Object.prototype,o=a.hasOwnProperty,s=a.propertyIsEnumerable,c=r(function(){return arguments}())?r:function(t){return i(t)&&o.call(t,"callee")&&!s.call(t,"callee")};t.exports=c},1469:t=>{var e=Array.isArray;t.exports=e},8612:(t,e,n)=>{var r=n(3560),i=n(1780);t.exports=function(t){return null!=t&&i(t.length)&&!r(t)}},9246:(t,e,n)=>{var r=n(8612),i=n(7005);t.exports=function(t){return i(t)&&r(t)}},4144:(t,e,n)=>{t=n.nmd(t);var r=n(5639),i=n(5062),a=e&&!e.nodeType&&e,o=a&&t&&!t.nodeType&&t,s=o&&o.exports===a?r.Buffer:void 0,c=(s?s.isBuffer:void 0)||i;t.exports=c},1609:(t,e,n)=>{var r=n(280),i=n(4160),a=n(5694),o=n(1469),s=n(8612),c=n(4144),l=n(5726),u=n(6719),h=Object.prototype.hasOwnProperty;t.exports=function(t){if(null==t)return!0;if(s(t)&&(o(t)||"string"==typeof t||"function"==typeof t.splice||c(t)||u(t)||a(t)))return!t.length;var e=i(t);if("[object Map]"==e||"[object Set]"==e)return!t.size;if(l(t))return!r(t).length;for(var n in t)if(h.call(t,n))return!1;return!0}},3560:(t,e,n)=>{var r=n(4239),i=n(3218);t.exports=function(t){if(!i(t))return!1;var e=r(t);return"[object Function]"==e||"[object GeneratorFunction]"==e||"[object AsyncFunction]"==e||"[object Proxy]"==e}},1780:t=>{t.exports=function(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}},6688:(t,e,n)=>{var r=n(5588),i=n(1717),a=n(1167),o=a&&a.isMap,s=o?i(o):r;t.exports=s},3218:t=>{t.exports=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}},7005:t=>{t.exports=function(t){return null!=t&&"object"==typeof t}},8630:(t,e,n)=>{var r=n(4239),i=n(5924),a=n(7005),o=Function.prototype,s=Object.prototype,c=o.toString,l=s.hasOwnProperty,u=c.call(Object);t.exports=function(t){if(!a(t)||"[object Object]"!=r(t))return!1;var e=i(t);if(null===e)return!0;var n=l.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&c.call(n)==u}},2928:(t,e,n)=>{var r=n(9221),i=n(1717),a=n(1167),o=a&&a.isSet,s=o?i(o):r;t.exports=s},7037:(t,e,n)=>{var r=n(4239),i=n(1469),a=n(7005);t.exports=function(t){return"string"==typeof t||!i(t)&&a(t)&&"[object String]"==r(t)}},3448:(t,e,n)=>{var r=n(4239),i=n(7005);t.exports=function(t){return"symbol"==typeof t||i(t)&&"[object Symbol]"==r(t)}},6719:(t,e,n)=>{var r=n(8749),i=n(1717),a=n(1167),o=a&&a.isTypedArray,s=o?i(o):r;t.exports=s},2353:t=>{t.exports=function(t){return void 0===t}},3674:(t,e,n)=>{var r=n(4636),i=n(280),a=n(8612);t.exports=function(t){return a(t)?r(t):i(t)}},1704:(t,e,n)=>{var r=n(4636),i=n(313),a=n(8612);t.exports=function(t){return a(t)?r(t,!0):i(t)}},928:t=>{t.exports=function(t){var e=null==t?0:t.length;return e?t[e-1]:void 0}},5161:(t,e,n)=>{var r=n(9932),i=n(7206),a=n(9199),o=n(1469);t.exports=function(t,e){return(o(t)?r:a)(t,i(e,3))}},6604:(t,e,n)=>{var r=n(9465),i=n(7816),a=n(7206);t.exports=function(t,e){var n={};return e=a(e,3),i(t,(function(t,i,a){r(n,i,e(t,i,a))})),n}},6162:(t,e,n)=>{var r=n(6029),i=n(3325),a=n(6557);t.exports=function(t){return t&&t.length?r(t,a,i):void 0}},8306:(t,e,n)=>{var r=n(3369);function i(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new TypeError("Expected a function");var n=function(){var r=arguments,i=e?e.apply(this,r):r[0],a=n.cache;if(a.has(i))return a.get(i);var o=t.apply(this,r);return n.cache=a.set(i,o)||a,o};return n.cache=new(i.Cache||r),n}i.Cache=r,t.exports=i},3857:(t,e,n)=>{var r=n(2980),i=n(1463)((function(t,e,n){r(t,e,n)}));t.exports=i},3632:(t,e,n)=>{var r=n(6029),i=n(433),a=n(6557);t.exports=function(t){return t&&t.length?r(t,a,i):void 0}},2762:(t,e,n)=>{var r=n(6029),i=n(7206),a=n(433);t.exports=function(t,e){return t&&t.length?r(t,i(e,2),a):void 0}},308:t=>{t.exports=function(){}},7771:(t,e,n)=>{var r=n(5639);t.exports=function(){return r.Date.now()}},9722:(t,e,n)=>{var r=n(5970),i=n(9021)((function(t,e){return null==t?{}:r(t,e)}));t.exports=i},9601:(t,e,n)=>{var r=n(371),i=n(9152),a=n(5403),o=n(327);t.exports=function(t){return a(t)?r(o(t)):i(t)}},6026:(t,e,n)=>{var r=n(7445)();t.exports=r},4061:(t,e,n)=>{var r=n(2663),i=n(9881),a=n(7206),o=n(107),s=n(1469);t.exports=function(t,e,n){var c=s(t)?r:o,l=arguments.length<3;return c(t,a(e,4),n,l,i)}},4238:(t,e,n)=>{var r=n(280),i=n(4160),a=n(8612),o=n(7037),s=n(8016);t.exports=function(t){if(null==t)return 0;if(a(t))return o(t)?s(t):t.length;var e=i(t);return"[object Map]"==e||"[object Set]"==e?t.size:r(t).length}},9734:(t,e,n)=>{var r=n(1078),i=n(9556),a=n(5976),o=n(6612),s=a((function(t,e){if(null==t)return[];var n=e.length;return n>1&&o(t,e[0],e[1])?e=[]:n>2&&o(e[0],e[1],e[2])&&(e=[e[0]]),i(t,r(e,1),[])}));t.exports=s},479:t=>{t.exports=function(){return[]}},5062:t=>{t.exports=function(){return!1}},8601:(t,e,n)=>{var r=n(4841);t.exports=function(t){return t?1/0===(t=r(t))||t===-1/0?17976931348623157e292*(t<0?-1:1):t==t?t:0:0===t?t:0}},554:(t,e,n)=>{var r=n(8601);t.exports=function(t){var e=r(t),n=e%1;return e==e?n?e-n:e:0}},4841:(t,e,n)=>{var r=n(7561),i=n(3218),a=n(3448),o=/^[-+]0x[0-9a-f]+$/i,s=/^0b[01]+$/i,c=/^0o[0-7]+$/i,l=parseInt;t.exports=function(t){if("number"==typeof t)return t;if(a(t))return NaN;if(i(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=i(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=r(t);var n=s.test(t);return n||c.test(t)?l(t.slice(2),n?2:8):o.test(t)?NaN:+t}},3678:(t,e,n)=>{var r=n(8363),i=n(1704);t.exports=function(t){return r(t,i(t))}},9833:(t,e,n)=>{var r=n(531);t.exports=function(t){return null==t?"":r(t)}},8718:(t,e,n)=>{var r=n(7412),i=n(3118),a=n(7816),o=n(7206),s=n(5924),c=n(1469),l=n(4144),u=n(3560),h=n(3218),d=n(6719);t.exports=function(t,e,n){var f=c(t),p=f||l(t)||d(t);if(e=o(e,4),null==n){var g=t&&t.constructor;n=p?f?new g:[]:h(t)&&u(g)?i(s(t)):{}}return(p?r:a)(t,(function(t,r,i){return e(n,t,r,i)})),n}},3386:(t,e,n)=>{var r=n(1078),i=n(5976),a=n(5652),o=n(9246),s=i((function(t){return a(r(t,1,o,!0))}));t.exports=s},3955:(t,e,n)=>{var r=n(9833),i=0;t.exports=function(t){var e=++i;return r(t)+e}},2628:(t,e,n)=>{var r=n(7415),i=n(3674);t.exports=function(t){return null==t?[]:r(t,i(t))}},7287:(t,e,n)=>{var r=n(4865),i=n(1757);t.exports=function(t,e){return i(t||[],e||[],r)}},9234:()=>{},1748:(t,e,n)=>{var r={"./locale":9234,"./locale.js":9234};function i(t){var e=a(t);return n(e)}function a(t){if(!n.o(r,t)){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}return r[t]}i.keys=function(){return Object.keys(r)},i.resolve=a,t.exports=i,i.id=1748},1941:function(t,e,n){(t=n.nmd(t)).exports=function(){var e,r;function i(){return e.apply(null,arguments)}function a(t){return t instanceof Array||"[object Array]"===Object.prototype.toString.call(t)}function o(t){return null!=t&&"[object Object]"===Object.prototype.toString.call(t)}function s(t){return void 0===t}function c(t){return"number"==typeof t||"[object Number]"===Object.prototype.toString.call(t)}function l(t){return t instanceof Date||"[object Date]"===Object.prototype.toString.call(t)}function u(t,e){var n,r=[];for(n=0;n<t.length;++n)r.push(e(t[n],n));return r}function h(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function d(t,e){for(var n in e)h(e,n)&&(t[n]=e[n]);return h(e,"toString")&&(t.toString=e.toString),h(e,"valueOf")&&(t.valueOf=e.valueOf),t}function f(t,e,n,r){return ve(t,e,n,r,!0).utc()}function p(t){return null==t._pf&&(t._pf={empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1,parsedDateParts:[],meridiem:null,rfc2822:!1,weekdayMismatch:!1}),t._pf}function g(t){if(null==t._isValid){var e=p(t),n=r.call(e.parsedDateParts,(function(t){return null!=t})),i=!isNaN(t._d.getTime())&&e.overflow<0&&!e.empty&&!e.invalidMonth&&!e.invalidWeekday&&!e.weekdayMismatch&&!e.nullInput&&!e.invalidFormat&&!e.userInvalidated&&(!e.meridiem||e.meridiem&&n);if(t._strict&&(i=i&&0===e.charsLeftOver&&0===e.unusedTokens.length&&void 0===e.bigHour),null!=Object.isFrozen&&Object.isFrozen(t))return i;t._isValid=i}return t._isValid}function y(t){var e=f(NaN);return null!=t?d(p(e),t):p(e).userInvalidated=!0,e}r=Array.prototype.some?Array.prototype.some:function(t){for(var e=Object(this),n=e.length>>>0,r=0;r<n;r++)if(r in e&&t.call(this,e[r],r,e))return!0;return!1};var m=i.momentProperties=[];function b(t,e){var n,r,i;if(s(e._isAMomentObject)||(t._isAMomentObject=e._isAMomentObject),s(e._i)||(t._i=e._i),s(e._f)||(t._f=e._f),s(e._l)||(t._l=e._l),s(e._strict)||(t._strict=e._strict),s(e._tzm)||(t._tzm=e._tzm),s(e._isUTC)||(t._isUTC=e._isUTC),s(e._offset)||(t._offset=e._offset),s(e._pf)||(t._pf=p(e)),s(e._locale)||(t._locale=e._locale),0<m.length)for(n=0;n<m.length;n++)s(i=e[r=m[n]])||(t[r]=i);return t}var v=!1;function _(t){b(this,t),this._d=new Date(null!=t._d?t._d.getTime():NaN),this.isValid()||(this._d=new Date(NaN)),!1===v&&(v=!0,i.updateOffset(this),v=!1)}function x(t){return t instanceof _||null!=t&&null!=t._isAMomentObject}function k(t){return t<0?Math.ceil(t)||0:Math.floor(t)}function w(t){var e=+t,n=0;return 0!==e&&isFinite(e)&&(n=k(e)),n}function E(t,e,n){var r,i=Math.min(t.length,e.length),a=Math.abs(t.length-e.length),o=0;for(r=0;r<i;r++)(n&&t[r]!==e[r]||!n&&w(t[r])!==w(e[r]))&&o++;return o+a}function T(t){!1===i.suppressDeprecationWarnings&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+t)}function C(t,e){var n=!0;return d((function(){if(null!=i.deprecationHandler&&i.deprecationHandler(null,t),n){for(var r,a=[],o=0;o<arguments.length;o++){if(r="","object"==typeof arguments[o]){for(var s in r+="\n["+o+"] ",arguments[0])r+=s+": "+arguments[0][s]+", ";r=r.slice(0,-2)}else r=arguments[o];a.push(r)}T(t+"\nArguments: "+Array.prototype.slice.call(a).join("")+"\n"+(new Error).stack),n=!1}return e.apply(this,arguments)}),e)}var S,A={};function M(t,e){null!=i.deprecationHandler&&i.deprecationHandler(t,e),A[t]||(T(e),A[t]=!0)}function O(t){return t instanceof Function||"[object Function]"===Object.prototype.toString.call(t)}function N(t,e){var n,r=d({},t);for(n in e)h(e,n)&&(o(t[n])&&o(e[n])?(r[n]={},d(r[n],t[n]),d(r[n],e[n])):null!=e[n]?r[n]=e[n]:delete r[n]);for(n in t)h(t,n)&&!h(e,n)&&o(t[n])&&(r[n]=d({},r[n]));return r}function D(t){null!=t&&this.set(t)}i.suppressDeprecationWarnings=!1,i.deprecationHandler=null,S=Object.keys?Object.keys:function(t){var e,n=[];for(e in t)h(t,e)&&n.push(e);return n};var B={};function L(t,e){var n=t.toLowerCase();B[n]=B[n+"s"]=B[e]=t}function I(t){return"string"==typeof t?B[t]||B[t.toLowerCase()]:void 0}function F(t){var e,n,r={};for(n in t)h(t,n)&&(e=I(n))&&(r[e]=t[n]);return r}var R={};function P(t,e){R[t]=e}function j(t,e,n){var r=""+Math.abs(t),i=e-r.length;return(0<=t?n?"+":"":"-")+Math.pow(10,Math.max(0,i)).toString().substr(1)+r}var z=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,Y=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,U={},$={};function W(t,e,n,r){var i=r;"string"==typeof r&&(i=function(){return this[r]()}),t&&($[t]=i),e&&($[e[0]]=function(){return j(i.apply(this,arguments),e[1],e[2])}),n&&($[n]=function(){return this.localeData().ordinal(i.apply(this,arguments),t)})}function q(t,e){return t.isValid()?(e=H(e,t.localeData()),U[e]=U[e]||function(t){var e,n,r,i=t.match(z);for(e=0,n=i.length;e<n;e++)$[i[e]]?i[e]=$[i[e]]:i[e]=(r=i[e]).match(/\[[\s\S]/)?r.replace(/^\[|\]$/g,""):r.replace(/\\/g,"");return function(e){var r,a="";for(r=0;r<n;r++)a+=O(i[r])?i[r].call(e,t):i[r];return a}}(e),U[e](t)):t.localeData().invalidDate()}function H(t,e){var n=5;function r(t){return e.longDateFormat(t)||t}for(Y.lastIndex=0;0<=n&&Y.test(t);)t=t.replace(Y,r),Y.lastIndex=0,n-=1;return t}var V=/\d/,G=/\d\d/,X=/\d{3}/,Z=/\d{4}/,Q=/[+-]?\d{6}/,K=/\d\d?/,J=/\d\d\d\d?/,tt=/\d\d\d\d\d\d?/,et=/\d{1,3}/,nt=/\d{1,4}/,rt=/[+-]?\d{1,6}/,it=/\d+/,at=/[+-]?\d+/,ot=/Z|[+-]\d\d:?\d\d/gi,st=/Z|[+-]\d\d(?::?\d\d)?/gi,ct=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,lt={};function ut(t,e,n){lt[t]=O(e)?e:function(t,r){return t&&n?n:e}}function ht(t,e){return h(lt,t)?lt[t](e._strict,e._locale):new RegExp(dt(t.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,(function(t,e,n,r,i){return e||n||r||i}))))}function dt(t){return t.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}var ft={};function pt(t,e){var n,r=e;for("string"==typeof t&&(t=[t]),c(e)&&(r=function(t,n){n[e]=w(t)}),n=0;n<t.length;n++)ft[t[n]]=r}function gt(t,e){pt(t,(function(t,n,r,i){r._w=r._w||{},e(t,r._w,r,i)}))}function yt(t){return mt(t)?366:365}function mt(t){return t%4==0&&t%100!=0||t%400==0}W("Y",0,0,(function(){var t=this.year();return t<=9999?""+t:"+"+t})),W(0,["YY",2],0,(function(){return this.year()%100})),W(0,["YYYY",4],0,"year"),W(0,["YYYYY",5],0,"year"),W(0,["YYYYYY",6,!0],0,"year"),L("year","y"),P("year",1),ut("Y",at),ut("YY",K,G),ut("YYYY",nt,Z),ut("YYYYY",rt,Q),ut("YYYYYY",rt,Q),pt(["YYYYY","YYYYYY"],0),pt("YYYY",(function(t,e){e[0]=2===t.length?i.parseTwoDigitYear(t):w(t)})),pt("YY",(function(t,e){e[0]=i.parseTwoDigitYear(t)})),pt("Y",(function(t,e){e[0]=parseInt(t,10)})),i.parseTwoDigitYear=function(t){return w(t)+(68<w(t)?1900:2e3)};var bt,vt=_t("FullYear",!0);function _t(t,e){return function(n){return null!=n?(kt(this,t,n),i.updateOffset(this,e),this):xt(this,t)}}function xt(t,e){return t.isValid()?t._d["get"+(t._isUTC?"UTC":"")+e]():NaN}function kt(t,e,n){t.isValid()&&!isNaN(n)&&("FullYear"===e&&mt(t.year())&&1===t.month()&&29===t.date()?t._d["set"+(t._isUTC?"UTC":"")+e](n,t.month(),wt(n,t.month())):t._d["set"+(t._isUTC?"UTC":"")+e](n))}function wt(t,e){if(isNaN(t)||isNaN(e))return NaN;var n=(e%12+12)%12;return t+=(e-n)/12,1===n?mt(t)?29:28:31-n%7%2}bt=Array.prototype.indexOf?Array.prototype.indexOf:function(t){var e;for(e=0;e<this.length;++e)if(this[e]===t)return e;return-1},W("M",["MM",2],"Mo",(function(){return this.month()+1})),W("MMM",0,0,(function(t){return this.localeData().monthsShort(this,t)})),W("MMMM",0,0,(function(t){return this.localeData().months(this,t)})),L("month","M"),P("month",8),ut("M",K),ut("MM",K,G),ut("MMM",(function(t,e){return e.monthsShortRegex(t)})),ut("MMMM",(function(t,e){return e.monthsRegex(t)})),pt(["M","MM"],(function(t,e){e[1]=w(t)-1})),pt(["MMM","MMMM"],(function(t,e,n,r){var i=n._locale.monthsParse(t,r,n._strict);null!=i?e[1]=i:p(n).invalidMonth=t}));var Et=/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/,Tt="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),Ct="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_");function St(t,e){var n;if(!t.isValid())return t;if("string"==typeof e)if(/^\d+$/.test(e))e=w(e);else if(!c(e=t.localeData().monthsParse(e)))return t;return n=Math.min(t.date(),wt(t.year(),e)),t._d["set"+(t._isUTC?"UTC":"")+"Month"](e,n),t}function At(t){return null!=t?(St(this,t),i.updateOffset(this,!0),this):xt(this,"Month")}var Mt=ct,Ot=ct;function Nt(){function t(t,e){return e.length-t.length}var e,n,r=[],i=[],a=[];for(e=0;e<12;e++)n=f([2e3,e]),r.push(this.monthsShort(n,"")),i.push(this.months(n,"")),a.push(this.months(n,"")),a.push(this.monthsShort(n,""));for(r.sort(t),i.sort(t),a.sort(t),e=0;e<12;e++)r[e]=dt(r[e]),i[e]=dt(i[e]);for(e=0;e<24;e++)a[e]=dt(a[e]);this._monthsRegex=new RegExp("^("+a.join("|")+")","i"),this._monthsShortRegex=this._monthsRegex,this._monthsStrictRegex=new RegExp("^("+i.join("|")+")","i"),this._monthsShortStrictRegex=new RegExp("^("+r.join("|")+")","i")}function Dt(t){var e;if(t<100&&0<=t){var n=Array.prototype.slice.call(arguments);n[0]=t+400,e=new Date(Date.UTC.apply(null,n)),isFinite(e.getUTCFullYear())&&e.setUTCFullYear(t)}else e=new Date(Date.UTC.apply(null,arguments));return e}function Bt(t,e,n){var r=7+e-n;return-(7+Dt(t,0,r).getUTCDay()-e)%7+r-1}function Lt(t,e,n,r,i){var a,o,s=1+7*(e-1)+(7+n-r)%7+Bt(t,r,i);return o=s<=0?yt(a=t-1)+s:s>yt(t)?(a=t+1,s-yt(t)):(a=t,s),{year:a,dayOfYear:o}}function It(t,e,n){var r,i,a=Bt(t.year(),e,n),o=Math.floor((t.dayOfYear()-a-1)/7)+1;return o<1?r=o+Ft(i=t.year()-1,e,n):o>Ft(t.year(),e,n)?(r=o-Ft(t.year(),e,n),i=t.year()+1):(i=t.year(),r=o),{week:r,year:i}}function Ft(t,e,n){var r=Bt(t,e,n),i=Bt(t+1,e,n);return(yt(t)-r+i)/7}function Rt(t,e){return t.slice(e,7).concat(t.slice(0,e))}W("w",["ww",2],"wo","week"),W("W",["WW",2],"Wo","isoWeek"),L("week","w"),L("isoWeek","W"),P("week",5),P("isoWeek",5),ut("w",K),ut("ww",K,G),ut("W",K),ut("WW",K,G),gt(["w","ww","W","WW"],(function(t,e,n,r){e[r.substr(0,1)]=w(t)})),W("d",0,"do","day"),W("dd",0,0,(function(t){return this.localeData().weekdaysMin(this,t)})),W("ddd",0,0,(function(t){return this.localeData().weekdaysShort(this,t)})),W("dddd",0,0,(function(t){return this.localeData().weekdays(this,t)})),W("e",0,0,"weekday"),W("E",0,0,"isoWeekday"),L("day","d"),L("weekday","e"),L("isoWeekday","E"),P("day",11),P("weekday",11),P("isoWeekday",11),ut("d",K),ut("e",K),ut("E",K),ut("dd",(function(t,e){return e.weekdaysMinRegex(t)})),ut("ddd",(function(t,e){return e.weekdaysShortRegex(t)})),ut("dddd",(function(t,e){return e.weekdaysRegex(t)})),gt(["dd","ddd","dddd"],(function(t,e,n,r){var i=n._locale.weekdaysParse(t,r,n._strict);null!=i?e.d=i:p(n).invalidWeekday=t})),gt(["d","e","E"],(function(t,e,n,r){e[r]=w(t)}));var Pt="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),jt="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),zt="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),Yt=ct,Ut=ct,$t=ct;function Wt(){function t(t,e){return e.length-t.length}var e,n,r,i,a,o=[],s=[],c=[],l=[];for(e=0;e<7;e++)n=f([2e3,1]).day(e),r=this.weekdaysMin(n,""),i=this.weekdaysShort(n,""),a=this.weekdays(n,""),o.push(r),s.push(i),c.push(a),l.push(r),l.push(i),l.push(a);for(o.sort(t),s.sort(t),c.sort(t),l.sort(t),e=0;e<7;e++)s[e]=dt(s[e]),c[e]=dt(c[e]),l[e]=dt(l[e]);this._weekdaysRegex=new RegExp("^("+l.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+c.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+s.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+o.join("|")+")","i")}function qt(){return this.hours()%12||12}function Ht(t,e){W(t,0,0,(function(){return this.localeData().meridiem(this.hours(),this.minutes(),e)}))}function Vt(t,e){return e._meridiemParse}W("H",["HH",2],0,"hour"),W("h",["hh",2],0,qt),W("k",["kk",2],0,(function(){return this.hours()||24})),W("hmm",0,0,(function(){return""+qt.apply(this)+j(this.minutes(),2)})),W("hmmss",0,0,(function(){return""+qt.apply(this)+j(this.minutes(),2)+j(this.seconds(),2)})),W("Hmm",0,0,(function(){return""+this.hours()+j(this.minutes(),2)})),W("Hmmss",0,0,(function(){return""+this.hours()+j(this.minutes(),2)+j(this.seconds(),2)})),Ht("a",!0),Ht("A",!1),L("hour","h"),P("hour",13),ut("a",Vt),ut("A",Vt),ut("H",K),ut("h",K),ut("k",K),ut("HH",K,G),ut("hh",K,G),ut("kk",K,G),ut("hmm",J),ut("hmmss",tt),ut("Hmm",J),ut("Hmmss",tt),pt(["H","HH"],3),pt(["k","kk"],(function(t,e,n){var r=w(t);e[3]=24===r?0:r})),pt(["a","A"],(function(t,e,n){n._isPm=n._locale.isPM(t),n._meridiem=t})),pt(["h","hh"],(function(t,e,n){e[3]=w(t),p(n).bigHour=!0})),pt("hmm",(function(t,e,n){var r=t.length-2;e[3]=w(t.substr(0,r)),e[4]=w(t.substr(r)),p(n).bigHour=!0})),pt("hmmss",(function(t,e,n){var r=t.length-4,i=t.length-2;e[3]=w(t.substr(0,r)),e[4]=w(t.substr(r,2)),e[5]=w(t.substr(i)),p(n).bigHour=!0})),pt("Hmm",(function(t,e,n){var r=t.length-2;e[3]=w(t.substr(0,r)),e[4]=w(t.substr(r))})),pt("Hmmss",(function(t,e,n){var r=t.length-4,i=t.length-2;e[3]=w(t.substr(0,r)),e[4]=w(t.substr(r,2)),e[5]=w(t.substr(i))}));var Gt,Xt=_t("Hours",!0),Zt={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:{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"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:Tt,monthsShort:Ct,week:{dow:0,doy:6},weekdays:Pt,weekdaysMin:zt,weekdaysShort:jt,meridiemParse:/[ap]\.?m?\.?/i},Qt={},Kt={};function Jt(t){return t?t.toLowerCase().replace("_","-"):t}function te(e){var r=null;if(!Qt[e]&&t&&t.exports)try{r=Gt._abbr,n(1748)("./"+e),ee(r)}catch(e){}return Qt[e]}function ee(t,e){var n;return t&&((n=s(e)?re(t):ne(t,e))?Gt=n:"undefined"!=typeof console&&console.warn&&console.warn("Locale "+t+" not found. Did you forget to load it?")),Gt._abbr}function ne(t,e){if(null===e)return delete Qt[t],null;var n,r=Zt;if(e.abbr=t,null!=Qt[t])M("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),r=Qt[t]._config;else if(null!=e.parentLocale)if(null!=Qt[e.parentLocale])r=Qt[e.parentLocale]._config;else{if(null==(n=te(e.parentLocale)))return Kt[e.parentLocale]||(Kt[e.parentLocale]=[]),Kt[e.parentLocale].push({name:t,config:e}),null;r=n._config}return Qt[t]=new D(N(r,e)),Kt[t]&&Kt[t].forEach((function(t){ne(t.name,t.config)})),ee(t),Qt[t]}function re(t){var e;if(t&&t._locale&&t._locale._abbr&&(t=t._locale._abbr),!t)return Gt;if(!a(t)){if(e=te(t))return e;t=[t]}return function(t){for(var e,n,r,i,a=0;a<t.length;){for(e=(i=Jt(t[a]).split("-")).length,n=(n=Jt(t[a+1]))?n.split("-"):null;0<e;){if(r=te(i.slice(0,e).join("-")))return r;if(n&&n.length>=e&&E(i,n,!0)>=e-1)break;e--}a++}return Gt}(t)}function ie(t){var e,n=t._a;return n&&-2===p(t).overflow&&(e=n[1]<0||11<n[1]?1:n[2]<1||n[2]>wt(n[0],n[1])?2:n[3]<0||24<n[3]||24===n[3]&&(0!==n[4]||0!==n[5]||0!==n[6])?3:n[4]<0||59<n[4]?4:n[5]<0||59<n[5]?5:n[6]<0||999<n[6]?6:-1,p(t)._overflowDayOfYear&&(e<0||2<e)&&(e=2),p(t)._overflowWeeks&&-1===e&&(e=7),p(t)._overflowWeekday&&-1===e&&(e=8),p(t).overflow=e),t}function ae(t,e,n){return null!=t?t:null!=e?e:n}function oe(t){var e,n,r,a,o,s=[];if(!t._d){var c,l;for(c=t,l=new Date(i.now()),r=c._useUTC?[l.getUTCFullYear(),l.getUTCMonth(),l.getUTCDate()]:[l.getFullYear(),l.getMonth(),l.getDate()],t._w&&null==t._a[2]&&null==t._a[1]&&function(t){var e,n,r,i,a,o,s,c;if(null!=(e=t._w).GG||null!=e.W||null!=e.E)a=1,o=4,n=ae(e.GG,t._a[0],It(_e(),1,4).year),r=ae(e.W,1),((i=ae(e.E,1))<1||7<i)&&(c=!0);else{a=t._locale._week.dow,o=t._locale._week.doy;var l=It(_e(),a,o);n=ae(e.gg,t._a[0],l.year),r=ae(e.w,l.week),null!=e.d?((i=e.d)<0||6<i)&&(c=!0):null!=e.e?(i=e.e+a,(e.e<0||6<e.e)&&(c=!0)):i=a}r<1||r>Ft(n,a,o)?p(t)._overflowWeeks=!0:null!=c?p(t)._overflowWeekday=!0:(s=Lt(n,r,i,a,o),t._a[0]=s.year,t._dayOfYear=s.dayOfYear)}(t),null!=t._dayOfYear&&(o=ae(t._a[0],r[0]),(t._dayOfYear>yt(o)||0===t._dayOfYear)&&(p(t)._overflowDayOfYear=!0),n=Dt(o,0,t._dayOfYear),t._a[1]=n.getUTCMonth(),t._a[2]=n.getUTCDate()),e=0;e<3&&null==t._a[e];++e)t._a[e]=s[e]=r[e];for(;e<7;e++)t._a[e]=s[e]=null==t._a[e]?2===e?1:0:t._a[e];24===t._a[3]&&0===t._a[4]&&0===t._a[5]&&0===t._a[6]&&(t._nextDay=!0,t._a[3]=0),t._d=(t._useUTC?Dt:function(t,e,n,r,i,a,o){var s;return t<100&&0<=t?(s=new Date(t+400,e,n,r,i,a,o),isFinite(s.getFullYear())&&s.setFullYear(t)):s=new Date(t,e,n,r,i,a,o),s}).apply(null,s),a=t._useUTC?t._d.getUTCDay():t._d.getDay(),null!=t._tzm&&t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),t._nextDay&&(t._a[3]=24),t._w&&void 0!==t._w.d&&t._w.d!==a&&(p(t).weekdayMismatch=!0)}}var se=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,ce=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,le=/Z|[+-]\d\d(?::?\d\d)?/,ue=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],he=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],de=/^\/?Date\((\-?\d+)/i;function fe(t){var e,n,r,i,a,o,s=t._i,c=se.exec(s)||ce.exec(s);if(c){for(p(t).iso=!0,e=0,n=ue.length;e<n;e++)if(ue[e][1].exec(c[1])){i=ue[e][0],r=!1!==ue[e][2];break}if(null==i)return void(t._isValid=!1);if(c[3]){for(e=0,n=he.length;e<n;e++)if(he[e][1].exec(c[3])){a=(c[2]||" ")+he[e][0];break}if(null==a)return void(t._isValid=!1)}if(!r&&null!=a)return void(t._isValid=!1);if(c[4]){if(!le.exec(c[4]))return void(t._isValid=!1);o="Z"}t._f=i+(a||"")+(o||""),me(t)}else t._isValid=!1}var pe=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,ge={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function ye(t){var e,n,r,i=pe.exec(t._i.replace(/\([^)]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").replace(/^\s\s*/,"").replace(/\s\s*$/,""));if(i){var a=function(t,e,n,r,i,a){var o=[function(t){var e=parseInt(t,10);return e<=49?2e3+e:e<=999?1900+e:e}(t),Ct.indexOf(e),parseInt(n,10),parseInt(r,10),parseInt(i,10)];return a&&o.push(parseInt(a,10)),o}(i[4],i[3],i[2],i[5],i[6],i[7]);if(n=a,r=t,(e=i[1])&&jt.indexOf(e)!==new Date(n[0],n[1],n[2]).getDay()&&(p(r).weekdayMismatch=!0,!(r._isValid=!1)))return;t._a=a,t._tzm=function(t,e,n){if(t)return ge[t];if(e)return 0;var r=parseInt(n,10),i=r%100;return(r-i)/100*60+i}(i[8],i[9],i[10]),t._d=Dt.apply(null,t._a),t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),p(t).rfc2822=!0}else t._isValid=!1}function me(t){if(t._f!==i.ISO_8601)if(t._f!==i.RFC_2822){t._a=[],p(t).empty=!0;var e,n,r,a,o,s,c,l,u=""+t._i,d=u.length,f=0;for(r=H(t._f,t._locale).match(z)||[],e=0;e<r.length;e++)a=r[e],(n=(u.match(ht(a,t))||[])[0])&&(0<(o=u.substr(0,u.indexOf(n))).length&&p(t).unusedInput.push(o),u=u.slice(u.indexOf(n)+n.length),f+=n.length),$[a]?(n?p(t).empty=!1:p(t).unusedTokens.push(a),s=a,l=t,null!=(c=n)&&h(ft,s)&&ft[s](c,l._a,l,s)):t._strict&&!n&&p(t).unusedTokens.push(a);p(t).charsLeftOver=d-f,0<u.length&&p(t).unusedInput.push(u),t._a[3]<=12&&!0===p(t).bigHour&&0<t._a[3]&&(p(t).bigHour=void 0),p(t).parsedDateParts=t._a.slice(0),p(t).meridiem=t._meridiem,t._a[3]=function(t,e,n){var r;return null==n?e:null!=t.meridiemHour?t.meridiemHour(e,n):(null!=t.isPM&&((r=t.isPM(n))&&e<12&&(e+=12),r||12!==e||(e=0)),e)}(t._locale,t._a[3],t._meridiem),oe(t),ie(t)}else ye(t);else fe(t)}function be(t){var e,n,r,h,f=t._i,m=t._f;return t._locale=t._locale||re(t._l),null===f||void 0===m&&""===f?y({nullInput:!0}):("string"==typeof f&&(t._i=f=t._locale.preparse(f)),x(f)?new _(ie(f)):(l(f)?t._d=f:a(m)?function(t){var e,n,r,i,a;if(0===t._f.length)return p(t).invalidFormat=!0,t._d=new Date(NaN);for(i=0;i<t._f.length;i++)a=0,e=b({},t),null!=t._useUTC&&(e._useUTC=t._useUTC),e._f=t._f[i],me(e),g(e)&&(a+=p(e).charsLeftOver,a+=10*p(e).unusedTokens.length,p(e).score=a,(null==r||a<r)&&(r=a,n=e));d(t,n||e)}(t):m?me(t):s(n=(e=t)._i)?e._d=new Date(i.now()):l(n)?e._d=new Date(n.valueOf()):"string"==typeof n?(r=e,null===(h=de.exec(r._i))?(fe(r),!1===r._isValid&&(delete r._isValid,ye(r),!1===r._isValid&&(delete r._isValid,i.createFromInputFallback(r)))):r._d=new Date(+h[1])):a(n)?(e._a=u(n.slice(0),(function(t){return parseInt(t,10)})),oe(e)):o(n)?function(t){if(!t._d){var e=F(t._i);t._a=u([e.year,e.month,e.day||e.date,e.hour,e.minute,e.second,e.millisecond],(function(t){return t&&parseInt(t,10)})),oe(t)}}(e):c(n)?e._d=new Date(n):i.createFromInputFallback(e),g(t)||(t._d=null),t))}function ve(t,e,n,r,i){var s,c={};return!0!==n&&!1!==n||(r=n,n=void 0),(o(t)&&function(t){if(Object.getOwnPropertyNames)return 0===Object.getOwnPropertyNames(t).length;var e;for(e in t)if(t.hasOwnProperty(e))return!1;return!0}(t)||a(t)&&0===t.length)&&(t=void 0),c._isAMomentObject=!0,c._useUTC=c._isUTC=i,c._l=n,c._i=t,c._f=e,c._strict=r,(s=new _(ie(be(c))))._nextDay&&(s.add(1,"d"),s._nextDay=void 0),s}function _e(t,e,n,r){return ve(t,e,n,r,!1)}i.createFromInputFallback=C("value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged and will be removed in an upcoming major release. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.",(function(t){t._d=new Date(t._i+(t._useUTC?" UTC":""))})),i.ISO_8601=function(){},i.RFC_2822=function(){};var xe=C("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/",(function(){var t=_e.apply(null,arguments);return this.isValid()&&t.isValid()?t<this?this:t:y()})),ke=C("moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/",(function(){var t=_e.apply(null,arguments);return this.isValid()&&t.isValid()?this<t?this:t:y()}));function we(t,e){var n,r;if(1===e.length&&a(e[0])&&(e=e[0]),!e.length)return _e();for(n=e[0],r=1;r<e.length;++r)e[r].isValid()&&!e[r][t](n)||(n=e[r]);return n}var Ee=["year","quarter","month","week","day","hour","minute","second","millisecond"];function Te(t){var e=F(t),n=e.year||0,r=e.quarter||0,i=e.month||0,a=e.week||e.isoWeek||0,o=e.day||0,s=e.hour||0,c=e.minute||0,l=e.second||0,u=e.millisecond||0;this._isValid=function(t){for(var e in t)if(-1===bt.call(Ee,e)||null!=t[e]&&isNaN(t[e]))return!1;for(var n=!1,r=0;r<Ee.length;++r)if(t[Ee[r]]){if(n)return!1;parseFloat(t[Ee[r]])!==w(t[Ee[r]])&&(n=!0)}return!0}(e),this._milliseconds=+u+1e3*l+6e4*c+1e3*s*60*60,this._days=+o+7*a,this._months=+i+3*r+12*n,this._data={},this._locale=re(),this._bubble()}function Ce(t){return t instanceof Te}function Se(t){return t<0?-1*Math.round(-1*t):Math.round(t)}function Ae(t,e){W(t,0,0,(function(){var t=this.utcOffset(),n="+";return t<0&&(t=-t,n="-"),n+j(~~(t/60),2)+e+j(~~t%60,2)}))}Ae("Z",":"),Ae("ZZ",""),ut("Z",st),ut("ZZ",st),pt(["Z","ZZ"],(function(t,e,n){n._useUTC=!0,n._tzm=Oe(st,t)}));var Me=/([\+\-]|\d\d)/gi;function Oe(t,e){var n=(e||"").match(t);if(null===n)return null;var r=((n[n.length-1]||[])+"").match(Me)||["-",0,0],i=60*r[1]+w(r[2]);return 0===i?0:"+"===r[0]?i:-i}function Ne(t,e){var n,r;return e._isUTC?(n=e.clone(),r=(x(t)||l(t)?t.valueOf():_e(t).valueOf())-n.valueOf(),n._d.setTime(n._d.valueOf()+r),i.updateOffset(n,!1),n):_e(t).local()}function De(t){return 15*-Math.round(t._d.getTimezoneOffset()/15)}function Be(){return!!this.isValid()&&this._isUTC&&0===this._offset}i.updateOffset=function(){};var Le=/^(\-|\+)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/,Ie=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function Fe(t,e){var n,r,i,a=t,o=null;return Ce(t)?a={ms:t._milliseconds,d:t._days,M:t._months}:c(t)?(a={},e?a[e]=t:a.milliseconds=t):(o=Le.exec(t))?(n="-"===o[1]?-1:1,a={y:0,d:w(o[2])*n,h:w(o[3])*n,m:w(o[4])*n,s:w(o[5])*n,ms:w(Se(1e3*o[6]))*n}):(o=Ie.exec(t))?(n="-"===o[1]?-1:1,a={y:Re(o[2],n),M:Re(o[3],n),w:Re(o[4],n),d:Re(o[5],n),h:Re(o[6],n),m:Re(o[7],n),s:Re(o[8],n)}):null==a?a={}:"object"==typeof a&&("from"in a||"to"in a)&&(i=function(t,e){var n;return t.isValid()&&e.isValid()?(e=Ne(e,t),t.isBefore(e)?n=Pe(t,e):((n=Pe(e,t)).milliseconds=-n.milliseconds,n.months=-n.months),n):{milliseconds:0,months:0}}(_e(a.from),_e(a.to)),(a={}).ms=i.milliseconds,a.M=i.months),r=new Te(a),Ce(t)&&h(t,"_locale")&&(r._locale=t._locale),r}function Re(t,e){var n=t&&parseFloat(t.replace(",","."));return(isNaN(n)?0:n)*e}function Pe(t,e){var n={};return n.months=e.month()-t.month()+12*(e.year()-t.year()),t.clone().add(n.months,"M").isAfter(e)&&--n.months,n.milliseconds=+e-+t.clone().add(n.months,"M"),n}function je(t,e){return function(n,r){var i;return null===r||isNaN(+r)||(M(e,"moment()."+e+"(period, number) is deprecated. Please use moment()."+e+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),i=n,n=r,r=i),ze(this,Fe(n="string"==typeof n?+n:n,r),t),this}}function ze(t,e,n,r){var a=e._milliseconds,o=Se(e._days),s=Se(e._months);t.isValid()&&(r=null==r||r,s&&St(t,xt(t,"Month")+s*n),o&&kt(t,"Date",xt(t,"Date")+o*n),a&&t._d.setTime(t._d.valueOf()+a*n),r&&i.updateOffset(t,o||s))}Fe.fn=Te.prototype,Fe.invalid=function(){return Fe(NaN)};var Ye=je(1,"add"),Ue=je(-1,"subtract");function $e(t,e){var n=12*(e.year()-t.year())+(e.month()-t.month()),r=t.clone().add(n,"months");return-(n+(e-r<0?(e-r)/(r-t.clone().add(n-1,"months")):(e-r)/(t.clone().add(n+1,"months")-r)))||0}function We(t){var e;return void 0===t?this._locale._abbr:(null!=(e=re(t))&&(this._locale=e),this)}i.defaultFormat="YYYY-MM-DDTHH:mm:ssZ",i.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]";var qe=C("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",(function(t){return void 0===t?this.localeData():this.locale(t)}));function He(){return this._locale}var Ve=126227808e5;function Ge(t,e){return(t%e+e)%e}function Xe(t,e,n){return t<100&&0<=t?new Date(t+400,e,n)-Ve:new Date(t,e,n).valueOf()}function Ze(t,e,n){return t<100&&0<=t?Date.UTC(t+400,e,n)-Ve:Date.UTC(t,e,n)}function Qe(t,e){W(0,[t,t.length],0,e)}function Ke(t,e,n,r,i){var a;return null==t?It(this,r,i).year:((a=Ft(t,r,i))<e&&(e=a),function(t,e,n,r,i){var a=Lt(t,e,n,r,i),o=Dt(a.year,0,a.dayOfYear);return this.year(o.getUTCFullYear()),this.month(o.getUTCMonth()),this.date(o.getUTCDate()),this}.call(this,t,e,n,r,i))}W(0,["gg",2],0,(function(){return this.weekYear()%100})),W(0,["GG",2],0,(function(){return this.isoWeekYear()%100})),Qe("gggg","weekYear"),Qe("ggggg","weekYear"),Qe("GGGG","isoWeekYear"),Qe("GGGGG","isoWeekYear"),L("weekYear","gg"),L("isoWeekYear","GG"),P("weekYear",1),P("isoWeekYear",1),ut("G",at),ut("g",at),ut("GG",K,G),ut("gg",K,G),ut("GGGG",nt,Z),ut("gggg",nt,Z),ut("GGGGG",rt,Q),ut("ggggg",rt,Q),gt(["gggg","ggggg","GGGG","GGGGG"],(function(t,e,n,r){e[r.substr(0,2)]=w(t)})),gt(["gg","GG"],(function(t,e,n,r){e[r]=i.parseTwoDigitYear(t)})),W("Q",0,"Qo","quarter"),L("quarter","Q"),P("quarter",7),ut("Q",V),pt("Q",(function(t,e){e[1]=3*(w(t)-1)})),W("D",["DD",2],"Do","date"),L("date","D"),P("date",9),ut("D",K),ut("DD",K,G),ut("Do",(function(t,e){return t?e._dayOfMonthOrdinalParse||e._ordinalParse:e._dayOfMonthOrdinalParseLenient})),pt(["D","DD"],2),pt("Do",(function(t,e){e[2]=w(t.match(K)[0])}));var Je=_t("Date",!0);W("DDD",["DDDD",3],"DDDo","dayOfYear"),L("dayOfYear","DDD"),P("dayOfYear",4),ut("DDD",et),ut("DDDD",X),pt(["DDD","DDDD"],(function(t,e,n){n._dayOfYear=w(t)})),W("m",["mm",2],0,"minute"),L("minute","m"),P("minute",14),ut("m",K),ut("mm",K,G),pt(["m","mm"],4);var tn=_t("Minutes",!1);W("s",["ss",2],0,"second"),L("second","s"),P("second",15),ut("s",K),ut("ss",K,G),pt(["s","ss"],5);var en,nn=_t("Seconds",!1);for(W("S",0,0,(function(){return~~(this.millisecond()/100)})),W(0,["SS",2],0,(function(){return~~(this.millisecond()/10)})),W(0,["SSS",3],0,"millisecond"),W(0,["SSSS",4],0,(function(){return 10*this.millisecond()})),W(0,["SSSSS",5],0,(function(){return 100*this.millisecond()})),W(0,["SSSSSS",6],0,(function(){return 1e3*this.millisecond()})),W(0,["SSSSSSS",7],0,(function(){return 1e4*this.millisecond()})),W(0,["SSSSSSSS",8],0,(function(){return 1e5*this.millisecond()})),W(0,["SSSSSSSSS",9],0,(function(){return 1e6*this.millisecond()})),L("millisecond","ms"),P("millisecond",16),ut("S",et,V),ut("SS",et,G),ut("SSS",et,X),en="SSSS";en.length<=9;en+="S")ut(en,it);function rn(t,e){e[6]=w(1e3*("0."+t))}for(en="S";en.length<=9;en+="S")pt(en,rn);var an=_t("Milliseconds",!1);W("z",0,0,"zoneAbbr"),W("zz",0,0,"zoneName");var on=_.prototype;function sn(t){return t}on.add=Ye,on.calendar=function(t,e){var n=t||_e(),r=Ne(n,this).startOf("day"),a=i.calendarFormat(this,r)||"sameElse",o=e&&(O(e[a])?e[a].call(this,n):e[a]);return this.format(o||this.localeData().calendar(a,this,_e(n)))},on.clone=function(){return new _(this)},on.diff=function(t,e,n){var r,i,a;if(!this.isValid())return NaN;if(!(r=Ne(t,this)).isValid())return NaN;switch(i=6e4*(r.utcOffset()-this.utcOffset()),e=I(e)){case"year":a=$e(this,r)/12;break;case"month":a=$e(this,r);break;case"quarter":a=$e(this,r)/3;break;case"second":a=(this-r)/1e3;break;case"minute":a=(this-r)/6e4;break;case"hour":a=(this-r)/36e5;break;case"day":a=(this-r-i)/864e5;break;case"week":a=(this-r-i)/6048e5;break;default:a=this-r}return n?a:k(a)},on.endOf=function(t){var e;if(void 0===(t=I(t))||"millisecond"===t||!this.isValid())return this;var n=this._isUTC?Ze:Xe;switch(t){case"year":e=n(this.year()+1,0,1)-1;break;case"quarter":e=n(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":e=n(this.year(),this.month()+1,1)-1;break;case"week":e=n(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":e=n(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":e=n(this.year(),this.month(),this.date()+1)-1;break;case"hour":e=this._d.valueOf(),e+=36e5-Ge(e+(this._isUTC?0:6e4*this.utcOffset()),36e5)-1;break;case"minute":e=this._d.valueOf(),e+=6e4-Ge(e,6e4)-1;break;case"second":e=this._d.valueOf(),e+=1e3-Ge(e,1e3)-1}return this._d.setTime(e),i.updateOffset(this,!0),this},on.format=function(t){t||(t=this.isUtc()?i.defaultFormatUtc:i.defaultFormat);var e=q(this,t);return this.localeData().postformat(e)},on.from=function(t,e){return this.isValid()&&(x(t)&&t.isValid()||_e(t).isValid())?Fe({to:this,from:t}).locale(this.locale()).humanize(!e):this.localeData().invalidDate()},on.fromNow=function(t){return this.from(_e(),t)},on.to=function(t,e){return this.isValid()&&(x(t)&&t.isValid()||_e(t).isValid())?Fe({from:this,to:t}).locale(this.locale()).humanize(!e):this.localeData().invalidDate()},on.toNow=function(t){return this.to(_e(),t)},on.get=function(t){return O(this[t=I(t)])?this[t]():this},on.invalidAt=function(){return p(this).overflow},on.isAfter=function(t,e){var n=x(t)?t:_e(t);return!(!this.isValid()||!n.isValid())&&("millisecond"===(e=I(e)||"millisecond")?this.valueOf()>n.valueOf():n.valueOf()<this.clone().startOf(e).valueOf())},on.isBefore=function(t,e){var n=x(t)?t:_e(t);return!(!this.isValid()||!n.isValid())&&("millisecond"===(e=I(e)||"millisecond")?this.valueOf()<n.valueOf():this.clone().endOf(e).valueOf()<n.valueOf())},on.isBetween=function(t,e,n,r){var i=x(t)?t:_e(t),a=x(e)?e:_e(e);return!!(this.isValid()&&i.isValid()&&a.isValid())&&("("===(r=r||"()")[0]?this.isAfter(i,n):!this.isBefore(i,n))&&(")"===r[1]?this.isBefore(a,n):!this.isAfter(a,n))},on.isSame=function(t,e){var n,r=x(t)?t:_e(t);return!(!this.isValid()||!r.isValid())&&("millisecond"===(e=I(e)||"millisecond")?this.valueOf()===r.valueOf():(n=r.valueOf(),this.clone().startOf(e).valueOf()<=n&&n<=this.clone().endOf(e).valueOf()))},on.isSameOrAfter=function(t,e){return this.isSame(t,e)||this.isAfter(t,e)},on.isSameOrBefore=function(t,e){return this.isSame(t,e)||this.isBefore(t,e)},on.isValid=function(){return g(this)},on.lang=qe,on.locale=We,on.localeData=He,on.max=ke,on.min=xe,on.parsingFlags=function(){return d({},p(this))},on.set=function(t,e){if("object"==typeof t)for(var n=function(t){var e=[];for(var n in t)e.push({unit:n,priority:R[n]});return e.sort((function(t,e){return t.priority-e.priority})),e}(t=F(t)),r=0;r<n.length;r++)this[n[r].unit](t[n[r].unit]);else if(O(this[t=I(t)]))return this[t](e);return this},on.startOf=function(t){var e;if(void 0===(t=I(t))||"millisecond"===t||!this.isValid())return this;var n=this._isUTC?Ze:Xe;switch(t){case"year":e=n(this.year(),0,1);break;case"quarter":e=n(this.year(),this.month()-this.month()%3,1);break;case"month":e=n(this.year(),this.month(),1);break;case"week":e=n(this.year(),this.month(),this.date()-this.weekday());break;case"isoWeek":e=n(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case"day":case"date":e=n(this.year(),this.month(),this.date());break;case"hour":e=this._d.valueOf(),e-=Ge(e+(this._isUTC?0:6e4*this.utcOffset()),36e5);break;case"minute":e=this._d.valueOf(),e-=Ge(e,6e4);break;case"second":e=this._d.valueOf(),e-=Ge(e,1e3)}return this._d.setTime(e),i.updateOffset(this,!0),this},on.subtract=Ue,on.toArray=function(){var t=this;return[t.year(),t.month(),t.date(),t.hour(),t.minute(),t.second(),t.millisecond()]},on.toObject=function(){var t=this;return{years:t.year(),months:t.month(),date:t.date(),hours:t.hours(),minutes:t.minutes(),seconds:t.seconds(),milliseconds:t.milliseconds()}},on.toDate=function(){return new Date(this.valueOf())},on.toISOString=function(t){if(!this.isValid())return null;var e=!0!==t,n=e?this.clone().utc():this;return n.year()<0||9999<n.year()?q(n,e?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):O(Date.prototype.toISOString)?e?this.toDate().toISOString():new Date(this.valueOf()+60*this.utcOffset()*1e3).toISOString().replace("Z",q(n,"Z")):q(n,e?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")},on.inspect=function(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var t="moment",e="";this.isLocal()||(t=0===this.utcOffset()?"moment.utc":"moment.parseZone",e="Z");var n="["+t+'("]',r=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",i=e+'[")]';return this.format(n+r+"-MM-DD[T]HH:mm:ss.SSS"+i)},on.toJSON=function(){return this.isValid()?this.toISOString():null},on.toString=function(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},on.unix=function(){return Math.floor(this.valueOf()/1e3)},on.valueOf=function(){return this._d.valueOf()-6e4*(this._offset||0)},on.creationData=function(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}},on.year=vt,on.isLeapYear=function(){return mt(this.year())},on.weekYear=function(t){return Ke.call(this,t,this.week(),this.weekday(),this.localeData()._week.dow,this.localeData()._week.doy)},on.isoWeekYear=function(t){return Ke.call(this,t,this.isoWeek(),this.isoWeekday(),1,4)},on.quarter=on.quarters=function(t){return null==t?Math.ceil((this.month()+1)/3):this.month(3*(t-1)+this.month()%3)},on.month=At,on.daysInMonth=function(){return wt(this.year(),this.month())},on.week=on.weeks=function(t){var e=this.localeData().week(this);return null==t?e:this.add(7*(t-e),"d")},on.isoWeek=on.isoWeeks=function(t){var e=It(this,1,4).week;return null==t?e:this.add(7*(t-e),"d")},on.weeksInYear=function(){var t=this.localeData()._week;return Ft(this.year(),t.dow,t.doy)},on.isoWeeksInYear=function(){return Ft(this.year(),1,4)},on.date=Je,on.day=on.days=function(t){if(!this.isValid())return null!=t?this:NaN;var e,n,r=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=t?(e=t,n=this.localeData(),t="string"!=typeof e?e:isNaN(e)?"number"==typeof(e=n.weekdaysParse(e))?e:null:parseInt(e,10),this.add(t-r,"d")):r},on.weekday=function(t){if(!this.isValid())return null!=t?this:NaN;var e=(this.day()+7-this.localeData()._week.dow)%7;return null==t?e:this.add(t-e,"d")},on.isoWeekday=function(t){if(!this.isValid())return null!=t?this:NaN;if(null==t)return this.day()||7;var e,n,r=(e=t,n=this.localeData(),"string"==typeof e?n.weekdaysParse(e)%7||7:isNaN(e)?null:e);return this.day(this.day()%7?r:r-7)},on.dayOfYear=function(t){var e=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==t?e:this.add(t-e,"d")},on.hour=on.hours=Xt,on.minute=on.minutes=tn,on.second=on.seconds=nn,on.millisecond=on.milliseconds=an,on.utcOffset=function(t,e,n){var r,a=this._offset||0;if(!this.isValid())return null!=t?this:NaN;if(null==t)return this._isUTC?a:De(this);if("string"==typeof t){if(null===(t=Oe(st,t)))return this}else Math.abs(t)<16&&!n&&(t*=60);return!this._isUTC&&e&&(r=De(this)),this._offset=t,this._isUTC=!0,null!=r&&this.add(r,"m"),a!==t&&(!e||this._changeInProgress?ze(this,Fe(t-a,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,i.updateOffset(this,!0),this._changeInProgress=null)),this},on.utc=function(t){return this.utcOffset(0,t)},on.local=function(t){return this._isUTC&&(this.utcOffset(0,t),this._isUTC=!1,t&&this.subtract(De(this),"m")),this},on.parseZone=function(){if(null!=this._tzm)this.utcOffset(this._tzm,!1,!0);else if("string"==typeof this._i){var t=Oe(ot,this._i);null!=t?this.utcOffset(t):this.utcOffset(0,!0)}return this},on.hasAlignedHourOffset=function(t){return!!this.isValid()&&(t=t?_e(t).utcOffset():0,(this.utcOffset()-t)%60==0)},on.isDST=function(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},on.isLocal=function(){return!!this.isValid()&&!this._isUTC},on.isUtcOffset=function(){return!!this.isValid()&&this._isUTC},on.isUtc=Be,on.isUTC=Be,on.zoneAbbr=function(){return this._isUTC?"UTC":""},on.zoneName=function(){return this._isUTC?"Coordinated Universal Time":""},on.dates=C("dates accessor is deprecated. Use date instead.",Je),on.months=C("months accessor is deprecated. Use month instead",At),on.years=C("years accessor is deprecated. Use year instead",vt),on.zone=C("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",(function(t,e){return null!=t?("string"!=typeof t&&(t=-t),this.utcOffset(t,e),this):-this.utcOffset()})),on.isDSTShifted=C("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",(function(){if(!s(this._isDSTShifted))return this._isDSTShifted;var t={};if(b(t,this),(t=be(t))._a){var e=t._isUTC?f(t._a):_e(t._a);this._isDSTShifted=this.isValid()&&0<E(t._a,e.toArray())}else this._isDSTShifted=!1;return this._isDSTShifted}));var cn=D.prototype;function ln(t,e,n,r){var i=re(),a=f().set(r,e);return i[n](a,t)}function un(t,e,n){if(c(t)&&(e=t,t=void 0),t=t||"",null!=e)return ln(t,e,n,"month");var r,i=[];for(r=0;r<12;r++)i[r]=ln(t,r,n,"month");return i}function hn(t,e,n,r){"boolean"==typeof t?c(e)&&(n=e,e=void 0):(e=t,t=!1,c(n=e)&&(n=e,e=void 0)),e=e||"";var i,a=re(),o=t?a._week.dow:0;if(null!=n)return ln(e,(n+o)%7,r,"day");var s=[];for(i=0;i<7;i++)s[i]=ln(e,(i+o)%7,r,"day");return s}cn.calendar=function(t,e,n){var r=this._calendar[t]||this._calendar.sameElse;return O(r)?r.call(e,n):r},cn.longDateFormat=function(t){var e=this._longDateFormat[t],n=this._longDateFormat[t.toUpperCase()];return e||!n?e:(this._longDateFormat[t]=n.replace(/MMMM|MM|DD|dddd/g,(function(t){return t.slice(1)})),this._longDateFormat[t])},cn.invalidDate=function(){return this._invalidDate},cn.ordinal=function(t){return this._ordinal.replace("%d",t)},cn.preparse=sn,cn.postformat=sn,cn.relativeTime=function(t,e,n,r){var i=this._relativeTime[n];return O(i)?i(t,e,n,r):i.replace(/%d/i,t)},cn.pastFuture=function(t,e){var n=this._relativeTime[0<t?"future":"past"];return O(n)?n(e):n.replace(/%s/i,e)},cn.set=function(t){var e,n;for(n in t)O(e=t[n])?this[n]=e:this["_"+n]=e;this._config=t,this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+"|"+/\d{1,2}/.source)},cn.months=function(t,e){return t?a(this._months)?this._months[t.month()]:this._months[(this._months.isFormat||Et).test(e)?"format":"standalone"][t.month()]:a(this._months)?this._months:this._months.standalone},cn.monthsShort=function(t,e){return t?a(this._monthsShort)?this._monthsShort[t.month()]:this._monthsShort[Et.test(e)?"format":"standalone"][t.month()]:a(this._monthsShort)?this._monthsShort:this._monthsShort.standalone},cn.monthsParse=function(t,e,n){var r,i,a;if(this._monthsParseExact)return function(t,e,n){var r,i,a,o=t.toLocaleLowerCase();if(!this._monthsParse)for(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[],r=0;r<12;++r)a=f([2e3,r]),this._shortMonthsParse[r]=this.monthsShort(a,"").toLocaleLowerCase(),this._longMonthsParse[r]=this.months(a,"").toLocaleLowerCase();return n?"MMM"===e?-1!==(i=bt.call(this._shortMonthsParse,o))?i:null:-1!==(i=bt.call(this._longMonthsParse,o))?i:null:"MMM"===e?-1!==(i=bt.call(this._shortMonthsParse,o))||-1!==(i=bt.call(this._longMonthsParse,o))?i:null:-1!==(i=bt.call(this._longMonthsParse,o))||-1!==(i=bt.call(this._shortMonthsParse,o))?i:null}.call(this,t,e,n);for(this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]),r=0;r<12;r++){if(i=f([2e3,r]),n&&!this._longMonthsParse[r]&&(this._longMonthsParse[r]=new RegExp("^"+this.months(i,"").replace(".","")+"$","i"),this._shortMonthsParse[r]=new RegExp("^"+this.monthsShort(i,"").replace(".","")+"$","i")),n||this._monthsParse[r]||(a="^"+this.months(i,"")+"|^"+this.monthsShort(i,""),this._monthsParse[r]=new RegExp(a.replace(".",""),"i")),n&&"MMMM"===e&&this._longMonthsParse[r].test(t))return r;if(n&&"MMM"===e&&this._shortMonthsParse[r].test(t))return r;if(!n&&this._monthsParse[r].test(t))return r}},cn.monthsRegex=function(t){return this._monthsParseExact?(h(this,"_monthsRegex")||Nt.call(this),t?this._monthsStrictRegex:this._monthsRegex):(h(this,"_monthsRegex")||(this._monthsRegex=Ot),this._monthsStrictRegex&&t?this._monthsStrictRegex:this._monthsRegex)},cn.monthsShortRegex=function(t){return this._monthsParseExact?(h(this,"_monthsRegex")||Nt.call(this),t?this._monthsShortStrictRegex:this._monthsShortRegex):(h(this,"_monthsShortRegex")||(this._monthsShortRegex=Mt),this._monthsShortStrictRegex&&t?this._monthsShortStrictRegex:this._monthsShortRegex)},cn.week=function(t){return It(t,this._week.dow,this._week.doy).week},cn.firstDayOfYear=function(){return this._week.doy},cn.firstDayOfWeek=function(){return this._week.dow},cn.weekdays=function(t,e){var n=a(this._weekdays)?this._weekdays:this._weekdays[t&&!0!==t&&this._weekdays.isFormat.test(e)?"format":"standalone"];return!0===t?Rt(n,this._week.dow):t?n[t.day()]:n},cn.weekdaysMin=function(t){return!0===t?Rt(this._weekdaysMin,this._week.dow):t?this._weekdaysMin[t.day()]:this._weekdaysMin},cn.weekdaysShort=function(t){return!0===t?Rt(this._weekdaysShort,this._week.dow):t?this._weekdaysShort[t.day()]:this._weekdaysShort},cn.weekdaysParse=function(t,e,n){var r,i,a;if(this._weekdaysParseExact)return function(t,e,n){var r,i,a,o=t.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],r=0;r<7;++r)a=f([2e3,1]).day(r),this._minWeekdaysParse[r]=this.weekdaysMin(a,"").toLocaleLowerCase(),this._shortWeekdaysParse[r]=this.weekdaysShort(a,"").toLocaleLowerCase(),this._weekdaysParse[r]=this.weekdays(a,"").toLocaleLowerCase();return n?"dddd"===e?-1!==(i=bt.call(this._weekdaysParse,o))?i:null:"ddd"===e?-1!==(i=bt.call(this._shortWeekdaysParse,o))?i:null:-1!==(i=bt.call(this._minWeekdaysParse,o))?i:null:"dddd"===e?-1!==(i=bt.call(this._weekdaysParse,o))||-1!==(i=bt.call(this._shortWeekdaysParse,o))||-1!==(i=bt.call(this._minWeekdaysParse,o))?i:null:"ddd"===e?-1!==(i=bt.call(this._shortWeekdaysParse,o))||-1!==(i=bt.call(this._weekdaysParse,o))||-1!==(i=bt.call(this._minWeekdaysParse,o))?i:null:-1!==(i=bt.call(this._minWeekdaysParse,o))||-1!==(i=bt.call(this._weekdaysParse,o))||-1!==(i=bt.call(this._shortWeekdaysParse,o))?i:null}.call(this,t,e,n);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),r=0;r<7;r++){if(i=f([2e3,1]).day(r),n&&!this._fullWeekdaysParse[r]&&(this._fullWeekdaysParse[r]=new RegExp("^"+this.weekdays(i,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[r]=new RegExp("^"+this.weekdaysShort(i,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[r]=new RegExp("^"+this.weekdaysMin(i,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[r]||(a="^"+this.weekdays(i,"")+"|^"+this.weekdaysShort(i,"")+"|^"+this.weekdaysMin(i,""),this._weekdaysParse[r]=new RegExp(a.replace(".",""),"i")),n&&"dddd"===e&&this._fullWeekdaysParse[r].test(t))return r;if(n&&"ddd"===e&&this._shortWeekdaysParse[r].test(t))return r;if(n&&"dd"===e&&this._minWeekdaysParse[r].test(t))return r;if(!n&&this._weekdaysParse[r].test(t))return r}},cn.weekdaysRegex=function(t){return this._weekdaysParseExact?(h(this,"_weekdaysRegex")||Wt.call(this),t?this._weekdaysStrictRegex:this._weekdaysRegex):(h(this,"_weekdaysRegex")||(this._weekdaysRegex=Yt),this._weekdaysStrictRegex&&t?this._weekdaysStrictRegex:this._weekdaysRegex)},cn.weekdaysShortRegex=function(t){return this._weekdaysParseExact?(h(this,"_weekdaysRegex")||Wt.call(this),t?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(h(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=Ut),this._weekdaysShortStrictRegex&&t?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)},cn.weekdaysMinRegex=function(t){return this._weekdaysParseExact?(h(this,"_weekdaysRegex")||Wt.call(this),t?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(h(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=$t),this._weekdaysMinStrictRegex&&t?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)},cn.isPM=function(t){return"p"===(t+"").toLowerCase().charAt(0)},cn.meridiem=function(t,e,n){return 11<t?n?"pm":"PM":n?"am":"AM"},ee("en",{dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(t){var e=t%10;return t+(1===w(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th")}}),i.lang=C("moment.lang is deprecated. Use moment.locale instead.",ee),i.langData=C("moment.langData is deprecated. Use moment.localeData instead.",re);var dn=Math.abs;function fn(t,e,n,r){var i=Fe(e,n);return t._milliseconds+=r*i._milliseconds,t._days+=r*i._days,t._months+=r*i._months,t._bubble()}function pn(t){return t<0?Math.floor(t):Math.ceil(t)}function gn(t){return 4800*t/146097}function yn(t){return 146097*t/4800}function mn(t){return function(){return this.as(t)}}var bn=mn("ms"),vn=mn("s"),_n=mn("m"),xn=mn("h"),kn=mn("d"),wn=mn("w"),En=mn("M"),Tn=mn("Q"),Cn=mn("y");function Sn(t){return function(){return this.isValid()?this._data[t]:NaN}}var An=Sn("milliseconds"),Mn=Sn("seconds"),On=Sn("minutes"),Nn=Sn("hours"),Dn=Sn("days"),Bn=Sn("months"),Ln=Sn("years"),In=Math.round,Fn={ss:44,s:45,m:45,h:22,d:26,M:11},Rn=Math.abs;function Pn(t){return(0<t)-(t<0)||+t}function jn(){if(!this.isValid())return this.localeData().invalidDate();var t,e,n=Rn(this._milliseconds)/1e3,r=Rn(this._days),i=Rn(this._months);e=k((t=k(n/60))/60),n%=60,t%=60;var a=k(i/12),o=i%=12,s=r,c=e,l=t,u=n?n.toFixed(3).replace(/\.?0+$/,""):"",h=this.asSeconds();if(!h)return"P0D";var d=h<0?"-":"",f=Pn(this._months)!==Pn(h)?"-":"",p=Pn(this._days)!==Pn(h)?"-":"",g=Pn(this._milliseconds)!==Pn(h)?"-":"";return d+"P"+(a?f+a+"Y":"")+(o?f+o+"M":"")+(s?p+s+"D":"")+(c||l||u?"T":"")+(c?g+c+"H":"")+(l?g+l+"M":"")+(u?g+u+"S":"")}var zn=Te.prototype;return zn.isValid=function(){return this._isValid},zn.abs=function(){var t=this._data;return this._milliseconds=dn(this._milliseconds),this._days=dn(this._days),this._months=dn(this._months),t.milliseconds=dn(t.milliseconds),t.seconds=dn(t.seconds),t.minutes=dn(t.minutes),t.hours=dn(t.hours),t.months=dn(t.months),t.years=dn(t.years),this},zn.add=function(t,e){return fn(this,t,e,1)},zn.subtract=function(t,e){return fn(this,t,e,-1)},zn.as=function(t){if(!this.isValid())return NaN;var e,n,r=this._milliseconds;if("month"===(t=I(t))||"quarter"===t||"year"===t)switch(e=this._days+r/864e5,n=this._months+gn(e),t){case"month":return n;case"quarter":return n/3;case"year":return n/12}else switch(e=this._days+Math.round(yn(this._months)),t){case"week":return e/7+r/6048e5;case"day":return e+r/864e5;case"hour":return 24*e+r/36e5;case"minute":return 1440*e+r/6e4;case"second":return 86400*e+r/1e3;case"millisecond":return Math.floor(864e5*e)+r;default:throw new Error("Unknown unit "+t)}},zn.asMilliseconds=bn,zn.asSeconds=vn,zn.asMinutes=_n,zn.asHours=xn,zn.asDays=kn,zn.asWeeks=wn,zn.asMonths=En,zn.asQuarters=Tn,zn.asYears=Cn,zn.valueOf=function(){return this.isValid()?this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*w(this._months/12):NaN},zn._bubble=function(){var t,e,n,r,i,a=this._milliseconds,o=this._days,s=this._months,c=this._data;return 0<=a&&0<=o&&0<=s||a<=0&&o<=0&&s<=0||(a+=864e5*pn(yn(s)+o),s=o=0),c.milliseconds=a%1e3,t=k(a/1e3),c.seconds=t%60,e=k(t/60),c.minutes=e%60,n=k(e/60),c.hours=n%24,s+=i=k(gn(o+=k(n/24))),o-=pn(yn(i)),r=k(s/12),s%=12,c.days=o,c.months=s,c.years=r,this},zn.clone=function(){return Fe(this)},zn.get=function(t){return t=I(t),this.isValid()?this[t+"s"]():NaN},zn.milliseconds=An,zn.seconds=Mn,zn.minutes=On,zn.hours=Nn,zn.days=Dn,zn.weeks=function(){return k(this.days()/7)},zn.months=Bn,zn.years=Ln,zn.humanize=function(t){if(!this.isValid())return this.localeData().invalidDate();var e,n,r,i,a,o,s,c,l,u,h=this.localeData(),d=(e=!t,n=h,r=Fe(this).abs(),i=In(r.as("s")),a=In(r.as("m")),o=In(r.as("h")),s=In(r.as("d")),c=In(r.as("M")),l=In(r.as("y")),(u=i<=Fn.ss&&["s",i]||i<Fn.s&&["ss",i]||a<=1&&["m"]||a<Fn.m&&["mm",a]||o<=1&&["h"]||o<Fn.h&&["hh",o]||s<=1&&["d"]||s<Fn.d&&["dd",s]||c<=1&&["M"]||c<Fn.M&&["MM",c]||l<=1&&["y"]||["yy",l])[2]=e,u[3]=0<+this,u[4]=n,function(t,e,n,r,i){return i.relativeTime(e||1,!!n,t,r)}.apply(null,u));return t&&(d=h.pastFuture(+this,d)),h.postformat(d)},zn.toISOString=jn,zn.toString=jn,zn.toJSON=jn,zn.locale=We,zn.localeData=He,zn.toIsoString=C("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",jn),zn.lang=qe,W("X",0,0,"unix"),W("x",0,0,"valueOf"),ut("x",at),ut("X",/[+-]?\d+(\.\d{1,3})?/),pt("X",(function(t,e,n){n._d=new Date(1e3*parseFloat(t,10))})),pt("x",(function(t,e,n){n._d=new Date(w(t))})),i.version="2.24.0",e=_e,i.fn=on,i.min=function(){return we("isBefore",[].slice.call(arguments,0))},i.max=function(){return we("isAfter",[].slice.call(arguments,0))},i.now=function(){return Date.now?Date.now():+new Date},i.utc=f,i.unix=function(t){return _e(1e3*t)},i.months=function(t,e){return un(t,e,"months")},i.isDate=l,i.locale=ee,i.invalid=y,i.duration=Fe,i.isMoment=x,i.weekdays=function(t,e,n){return hn(t,e,n,"weekdays")},i.parseZone=function(){return _e.apply(null,arguments).parseZone()},i.localeData=re,i.isDuration=Ce,i.monthsShort=function(t,e){return un(t,e,"monthsShort")},i.weekdaysMin=function(t,e,n){return hn(t,e,n,"weekdaysMin")},i.defineLocale=ne,i.updateLocale=function(t,e){if(null!=e){var n,r,i=Zt;null!=(r=te(t))&&(i=r._config),(n=new D(e=N(i,e))).parentLocale=Qt[t],Qt[t]=n,ee(t)}else null!=Qt[t]&&(null!=Qt[t].parentLocale?Qt[t]=Qt[t].parentLocale:null!=Qt[t]&&delete Qt[t]);return Qt[t]},i.locales=function(){return S(Qt)},i.weekdaysShort=function(t,e,n){return hn(t,e,n,"weekdaysShort")},i.normalizeUnits=I,i.relativeTimeRounding=function(t){return void 0===t?In:"function"==typeof t&&(In=t,!0)},i.relativeTimeThreshold=function(t,e){return void 0!==Fn[t]&&(void 0===e?Fn[t]:(Fn[t]=e,"s"===t&&(Fn.ss=e-1),!0))},i.calendarFormat=function(t,e){var n=t.diff(e,"days",!0);return n<-6?"sameElse":n<-1?"lastWeek":n<0?"lastDay":n<1?"sameDay":n<2?"nextDay":n<7?"nextWeek":"sameElse"},i.prototype=on,i.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"},i}()},6470:t=>{function e(t){if("string"!=typeof t)throw new TypeError("Path must be a string. Received "+JSON.stringify(t))}function n(t,e){for(var n,r="",i=0,a=-1,o=0,s=0;s<=t.length;++s){if(s<t.length)n=t.charCodeAt(s);else{if(47===n)break;n=47}if(47===n){if(a===s-1||1===o);else if(a!==s-1&&2===o){if(r.length<2||2!==i||46!==r.charCodeAt(r.length-1)||46!==r.charCodeAt(r.length-2))if(r.length>2){var c=r.lastIndexOf("/");if(c!==r.length-1){-1===c?(r="",i=0):i=(r=r.slice(0,c)).length-1-r.lastIndexOf("/"),a=s,o=0;continue}}else if(2===r.length||1===r.length){r="",i=0,a=s,o=0;continue}e&&(r.length>0?r+="/..":r="..",i=2)}else r.length>0?r+="/"+t.slice(a+1,s):r=t.slice(a+1,s),i=s-a-1;a=s,o=0}else 46===n&&-1!==o?++o:o=-1}return r}var r={resolve:function(){for(var t,r="",i=!1,a=arguments.length-1;a>=-1&&!i;a--){var o;a>=0?o=arguments[a]:(void 0===t&&(t=process.cwd()),o=t),e(o),0!==o.length&&(r=o+"/"+r,i=47===o.charCodeAt(0))}return r=n(r,!i),i?r.length>0?"/"+r:"/":r.length>0?r:"."},normalize:function(t){if(e(t),0===t.length)return".";var r=47===t.charCodeAt(0),i=47===t.charCodeAt(t.length-1);return 0!==(t=n(t,!r)).length||r||(t="."),t.length>0&&i&&(t+="/"),r?"/"+t:t},isAbsolute:function(t){return e(t),t.length>0&&47===t.charCodeAt(0)},join:function(){if(0===arguments.length)return".";for(var t,n=0;n<arguments.length;++n){var i=arguments[n];e(i),i.length>0&&(void 0===t?t=i:t+="/"+i)}return void 0===t?".":r.normalize(t)},relative:function(t,n){if(e(t),e(n),t===n)return"";if((t=r.resolve(t))===(n=r.resolve(n)))return"";for(var i=1;i<t.length&&47===t.charCodeAt(i);++i);for(var a=t.length,o=a-i,s=1;s<n.length&&47===n.charCodeAt(s);++s);for(var c=n.length-s,l=o<c?o:c,u=-1,h=0;h<=l;++h){if(h===l){if(c>l){if(47===n.charCodeAt(s+h))return n.slice(s+h+1);if(0===h)return n.slice(s+h)}else o>l&&(47===t.charCodeAt(i+h)?u=h:0===h&&(u=0));break}var d=t.charCodeAt(i+h);if(d!==n.charCodeAt(s+h))break;47===d&&(u=h)}var f="";for(h=i+u+1;h<=a;++h)h!==a&&47!==t.charCodeAt(h)||(0===f.length?f+="..":f+="/..");return f.length>0?f+n.slice(s+u):(s+=u,47===n.charCodeAt(s)&&++s,n.slice(s))},_makeLong:function(t){return t},dirname:function(t){if(e(t),0===t.length)return".";for(var n=t.charCodeAt(0),r=47===n,i=-1,a=!0,o=t.length-1;o>=1;--o)if(47===(n=t.charCodeAt(o))){if(!a){i=o;break}}else a=!1;return-1===i?r?"/":".":r&&1===i?"//":t.slice(0,i)},basename:function(t,n){if(void 0!==n&&"string"!=typeof n)throw new TypeError('"ext" argument must be a string');e(t);var r,i=0,a=-1,o=!0;if(void 0!==n&&n.length>0&&n.length<=t.length){if(n.length===t.length&&n===t)return"";var s=n.length-1,c=-1;for(r=t.length-1;r>=0;--r){var l=t.charCodeAt(r);if(47===l){if(!o){i=r+1;break}}else-1===c&&(o=!1,c=r+1),s>=0&&(l===n.charCodeAt(s)?-1==--s&&(a=r):(s=-1,a=c))}return i===a?a=c:-1===a&&(a=t.length),t.slice(i,a)}for(r=t.length-1;r>=0;--r)if(47===t.charCodeAt(r)){if(!o){i=r+1;break}}else-1===a&&(o=!1,a=r+1);return-1===a?"":t.slice(i,a)},extname:function(t){e(t);for(var n=-1,r=0,i=-1,a=!0,o=0,s=t.length-1;s>=0;--s){var c=t.charCodeAt(s);if(47!==c)-1===i&&(a=!1,i=s+1),46===c?-1===n?n=s:1!==o&&(o=1):-1!==n&&(o=-1);else if(!a){r=s+1;break}}return-1===n||-1===i||0===o||1===o&&n===i-1&&n===r+1?"":t.slice(n,i)},format:function(t){if(null===t||"object"!=typeof t)throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof t);return function(t,e){var n=e.dir||e.root,r=e.base||(e.name||"")+(e.ext||"");return n?n===e.root?n+r:n+"/"+r:r}(0,t)},parse:function(t){e(t);var n={root:"",dir:"",base:"",ext:"",name:""};if(0===t.length)return n;var r,i=t.charCodeAt(0),a=47===i;a?(n.root="/",r=1):r=0;for(var o=-1,s=0,c=-1,l=!0,u=t.length-1,h=0;u>=r;--u)if(47!==(i=t.charCodeAt(u)))-1===c&&(l=!1,c=u+1),46===i?-1===o?o=u:1!==h&&(h=1):-1!==o&&(h=-1);else if(!l){s=u+1;break}return-1===o||-1===c||0===h||1===h&&o===c-1&&o===s+1?-1!==c&&(n.base=n.name=0===s&&a?t.slice(1,c):t.slice(s,c)):(0===s&&a?(n.name=t.slice(1,o),n.base=t.slice(1,c)):(n.name=t.slice(s,o),n.base=t.slice(s,c)),n.ext=t.slice(o,c)),s>0?n.dir=t.slice(0,s-1):a&&(n.dir="/"),n},sep:"/",delimiter:":",win32:null,posix:null};r.posix=r,t.exports=r},555:()=>{},8218:()=>{},8009:()=>{},5354:()=>{},6878:()=>{},8183:()=>{},1428:()=>{},4551:()=>{},8800:()=>{},1993:()=>{},3069:()=>{},9143:()=>{},7543:(t,e,n)=>{function r(t,e){return null==t||null==e?NaN:t<e?-1:t>e?1:t>=e?0:NaN}function i(t){let e=t,n=t,i=t;function a(t,e,r=0,a=t.length){if(r<a){if(0!==n(e,e))return a;do{const n=r+a>>>1;i(t[n],e)<0?r=n+1:a=n}while(r<a)}return r}return 2!==t.length&&(e=(e,n)=>t(e)-n,n=r,i=(e,n)=>r(t(e),n)),{left:a,center:function(t,n,r=0,i=t.length){const o=a(t,n,r,i-1);return o>r&&e(t[o-1],n)>-e(t[o],n)?o-1:o},right:function(t,e,r=0,a=t.length){if(r<a){if(0!==n(e,e))return a;do{const n=r+a>>>1;i(t[n],e)<=0?r=n+1:a=n}while(r<a)}return r}}}function a(t){return null===t?NaN:+t}n.r(e),n.d(e,{Adder:()=>x,Delaunay:()=>Bs,FormatSpecifier:()=>Fl,InternMap:()=>E,InternSet:()=>T,Node:()=>ng,Voronoi:()=>Ss,ZoomTransform:()=>sT,active:()=>ta,arc:()=>Jk,area:()=>sw,areaRadial:()=>yw,ascending:()=>r,autoType:()=>lc,axisBottom:()=>ie,axisLeft:()=>ae,axisRight:()=>re,axisTop:()=>ne,bin:()=>it,bisect:()=>u,bisectCenter:()=>l,bisectLeft:()=>c,bisectRight:()=>s,bisector:()=>i,blob:()=>$c,brush:()=>Na,brushSelection:()=>Aa,brushX:()=>Ma,brushY:()=>Oa,buffer:()=>qc,chord:()=>$a,chordDirected:()=>qa,chordTranspose:()=>Wa,cluster:()=>Xp,color:()=>tr,contourDensity:()=>is,contours:()=>Ko,count:()=>h,create:()=>Ck,creator:()=>pn,cross:()=>g,csv:()=>Zc,csvFormat:()=>Zs,csvFormatBody:()=>Qs,csvFormatRow:()=>Js,csvFormatRows:()=>Ks,csvFormatValue:()=>tc,csvParse:()=>Gs,csvParseRows:()=>Xs,cubehelix:()=>Uo,cumsum:()=>y,curveBasis:()=>Xw,curveBasisClosed:()=>Qw,curveBasisOpen:()=>Jw,curveBumpX:()=>eE,curveBumpY:()=>nE,curveBundle:()=>iE,curveCardinal:()=>sE,curveCardinalClosed:()=>lE,curveCardinalOpen:()=>hE,curveCatmullRom:()=>pE,curveCatmullRomClosed:()=>yE,curveCatmullRomOpen:()=>bE,curveLinear:()=>rw,curveLinearClosed:()=>_E,curveMonotoneX:()=>AE,curveMonotoneY:()=>ME,curveNatural:()=>DE,curveStep:()=>LE,curveStepAfter:()=>FE,curveStepBefore:()=>IE,descending:()=>m,deviation:()=>v,difference:()=>zt,disjoint:()=>Yt,dispatch:()=>de,drag:()=>zs,dragDisable:()=>Ln,dragEnable:()=>In,dsv:()=>Xc,dsvFormat:()=>Hs,easeBack:()=>Rc,easeBackIn:()=>Ic,easeBackInOut:()=>Rc,easeBackOut:()=>Fc,easeBounce:()=>Dc,easeBounceIn:()=>Nc,easeBounceInOut:()=>Bc,easeBounceOut:()=>Dc,easeCircle:()=>Mc,easeCircleIn:()=>Sc,easeCircleInOut:()=>Mc,easeCircleOut:()=>Ac,easeCubic:()=>Zi,easeCubicIn:()=>Gi,easeCubicInOut:()=>Zi,easeCubicOut:()=>Xi,easeElastic:()=>zc,easeElasticIn:()=>jc,easeElasticInOut:()=>Yc,easeElasticOut:()=>zc,easeExp:()=>Cc,easeExpIn:()=>Ec,easeExpInOut:()=>Cc,easeExpOut:()=>Tc,easeLinear:()=>hc,easePoly:()=>mc,easePolyIn:()=>gc,easePolyInOut:()=>mc,easePolyOut:()=>yc,easeQuad:()=>pc,easeQuadIn:()=>dc,easeQuadInOut:()=>pc,easeQuadOut:()=>fc,easeSin:()=>kc,easeSinIn:()=>_c,easeSinInOut:()=>kc,easeSinOut:()=>xc,every:()=>Lt,extent:()=>_,fcumsum:()=>w,filter:()=>Ft,flatGroup:()=>L,flatRollup:()=>I,forceCenter:()=>al,forceCollide:()=>bl,forceLink:()=>xl,forceManyBody:()=>Sl,forceRadial:()=>Al,forceSimulation:()=>Cl,forceX:()=>Ml,forceY:()=>Ol,format:()=>Yl,formatDefaultLocale:()=>Hl,formatLocale:()=>ql,formatPrefix:()=>Ul,formatSpecifier:()=>Il,fsum:()=>k,geoAlbers:()=>up,geoAlbersUsa:()=>hp,geoArea:()=>Zu,geoAzimuthalEqualArea:()=>gp,geoAzimuthalEqualAreaRaw:()=>pp,geoAzimuthalEquidistant:()=>mp,geoAzimuthalEquidistantRaw:()=>yp,geoBounds:()=>Nh,geoCentroid:()=>$h,geoCircle:()=>td,geoClipAntimeridian:()=>hd,geoClipCircle:()=>dd,geoClipExtent:()=>_d,geoClipRectangle:()=>vd,geoConicConformal:()=>wp,geoConicConformalRaw:()=>kp,geoConicEqualArea:()=>lp,geoConicEqualAreaRaw:()=>cp,geoConicEquidistant:()=>Sp,geoConicEquidistantRaw:()=>Cp,geoContains:()=>Rd,geoDistance:()=>Ad,geoEqualEarth:()=>Lp,geoEqualEarthRaw:()=>Bp,geoEquirectangular:()=>Tp,geoEquirectangularRaw:()=>Ep,geoGnomonic:()=>Fp,geoGnomonicRaw:()=>Ip,geoGraticule:()=>zd,geoGraticule10:()=>Yd,geoIdentity:()=>Rp,geoInterpolate:()=>Ud,geoLength:()=>Td,geoMercator:()=>vp,geoMercatorRaw:()=>bp,geoNaturalEarth1:()=>jp,geoNaturalEarth1Raw:()=>Pp,geoOrthographic:()=>Yp,geoOrthographicRaw:()=>zp,geoPath:()=>Hf,geoProjection:()=>ap,geoProjectionMutator:()=>op,geoRotation:()=>Qh,geoStereographic:()=>$p,geoStereographicRaw:()=>Up,geoStream:()=>Cu,geoTransform:()=>Vf,geoTransverseMercator:()=>qp,geoTransverseMercatorRaw:()=>Wp,gray:()=>xo,greatest:()=>Tt,greatestIndex:()=>Ct,group:()=>N,groupSort:()=>H,groups:()=>D,hcl:()=>Oo,hierarchy:()=>Qp,histogram:()=>it,hsl:()=>hr,html:()=>rl,image:()=>Kc,index:()=>P,indexes:()=>j,interpolate:()=>Ir,interpolateArray:()=>Sr,interpolateBasis:()=>gr,interpolateBasisClosed:()=>yr,interpolateBlues:()=>Jx,interpolateBrBG:()=>hx,interpolateBuGn:()=>Mx,interpolateBuPu:()=>Nx,interpolateCividis:()=>uk,interpolateCool:()=>fk,interpolateCubehelix:()=>hy,interpolateCubehelixDefault:()=>hk,interpolateCubehelixLong:()=>dy,interpolateDate:()=>Mr,interpolateDiscrete:()=>Kg,interpolateGnBu:()=>Bx,interpolateGreens:()=>ek,interpolateGreys:()=>rk,interpolateHcl:()=>cy,interpolateHclLong:()=>ly,interpolateHsl:()=>iy,interpolateHslLong:()=>ay,interpolateHue:()=>Jg,interpolateInferno:()=>Ek,interpolateLab:()=>oy,interpolateMagma:()=>wk,interpolateNumber:()=>Or,interpolateNumberArray:()=>Tr,interpolateObject:()=>Nr,interpolateOrRd:()=>Ix,interpolateOranges:()=>lk,interpolatePRGn:()=>fx,interpolatePiYG:()=>gx,interpolatePlasma:()=>Tk,interpolatePuBu:()=>jx,interpolatePuBuGn:()=>Rx,interpolatePuOr:()=>mx,interpolatePuRd:()=>Yx,interpolatePurples:()=>ak,interpolateRainbow:()=>gk,interpolateRdBu:()=>vx,interpolateRdGy:()=>xx,interpolateRdPu:()=>$x,interpolateRdYlBu:()=>wx,interpolateRdYlGn:()=>Tx,interpolateReds:()=>sk,interpolateRgb:()=>xr,interpolateRgbBasis:()=>wr,interpolateRgbBasisClosed:()=>Er,interpolateRound:()=>ty,interpolateSinebow:()=>vk,interpolateSpectral:()=>Sx,interpolateString:()=>Lr,interpolateTransformCss:()=>gi,interpolateTransformSvg:()=>yi,interpolateTurbo:()=>_k,interpolateViridis:()=>kk,interpolateWarm:()=>dk,interpolateYlGn:()=>Vx,interpolateYlGnBu:()=>qx,interpolateYlOrBr:()=>Xx,interpolateYlOrRd:()=>Qx,interpolateZoom:()=>ny,interrupt:()=>li,intersection:()=>Ut,interval:()=>iT,isoFormat:()=>eT,isoParse:()=>rT,json:()=>tl,lab:()=>ko,lch:()=>Mo,least:()=>wt,leastIndex:()=>Et,line:()=>ow,lineRadial:()=>gw,linkHorizontal:()=>Ew,linkRadial:()=>Cw,linkVertical:()=>Tw,local:()=>Ak,map:()=>Rt,matcher:()=>be,max:()=>at,maxIndex:()=>ft,mean:()=>pt,median:()=>gt,merge:()=>yt,min:()=>ot,minIndex:()=>mt,mode:()=>bt,namespace:()=>Le,namespaces:()=>Be,nice:()=>nt,now:()=>Gr,pack:()=>kg,packEnclose:()=>rg,packSiblings:()=>yg,pairs:()=>vt,partition:()=>Ag,path:()=>Ja,permute:()=>U,pie:()=>uw,piecewise:()=>fy,pointRadial:()=>mw,pointer:()=>Rr,pointers:()=>Ok,polygonArea:()=>gy,polygonCentroid:()=>yy,polygonContains:()=>xy,polygonHull:()=>_y,polygonLength:()=>ky,precisionFixed:()=>Vl,precisionPrefix:()=>Gl,precisionRound:()=>Xl,quadtree:()=>ul,quantile:()=>lt,quantileSorted:()=>ut,quantize:()=>py,quickselect:()=>st,radialArea:()=>yw,radialLine:()=>gw,randomBates:()=>My,randomBernoulli:()=>Dy,randomBeta:()=>Iy,randomBinomial:()=>Fy,randomCauchy:()=>Py,randomExponential:()=>Oy,randomGamma:()=>Ly,randomGeometric:()=>By,randomInt:()=>Ty,randomIrwinHall:()=>Ay,randomLcg:()=>Uy,randomLogNormal:()=>Sy,randomLogistic:()=>jy,randomNormal:()=>Cy,randomPareto:()=>Ny,randomPoisson:()=>zy,randomUniform:()=>Ey,randomWeibull:()=>Ry,range:()=>xt,rank:()=>kt,reduce:()=>Pt,reverse:()=>jt,rgb:()=>ir,ribbon:()=>uo,ribbonArrow:()=>ho,rollup:()=>F,rollups:()=>R,scaleBand:()=>Vy,scaleDiverging:()=>V_,scaleDivergingLog:()=>G_,scaleDivergingPow:()=>Z_,scaleDivergingSqrt:()=>Q_,scaleDivergingSymlog:()=>X_,scaleIdentity:()=>cm,scaleImplicit:()=>qy,scaleLinear:()=>sm,scaleLog:()=>mm,scaleOrdinal:()=>Hy,scalePoint:()=>Xy,scalePow:()=>Cm,scaleQuantile:()=>Nm,scaleQuantize:()=>Dm,scaleRadial:()=>Om,scaleSequential:()=>z_,scaleSequentialLog:()=>Y_,scaleSequentialPow:()=>$_,scaleSequentialQuantile:()=>q_,scaleSequentialSqrt:()=>W_,scaleSequentialSymlog:()=>U_,scaleSqrt:()=>Sm,scaleSymlog:()=>xm,scaleThreshold:()=>Bm,scaleTime:()=>F_,scaleUtc:()=>R_,scan:()=>St,schemeAccent:()=>tx,schemeBlues:()=>Kx,schemeBrBG:()=>ux,schemeBuGn:()=>Ax,schemeBuPu:()=>Ox,schemeCategory10:()=>J_,schemeDark2:()=>ex,schemeGnBu:()=>Dx,schemeGreens:()=>tk,schemeGreys:()=>nk,schemeOrRd:()=>Lx,schemeOranges:()=>ck,schemePRGn:()=>dx,schemePaired:()=>nx,schemePastel1:()=>rx,schemePastel2:()=>ix,schemePiYG:()=>px,schemePuBu:()=>Px,schemePuBuGn:()=>Fx,schemePuOr:()=>yx,schemePuRd:()=>zx,schemePurples:()=>ik,schemeRdBu:()=>bx,schemeRdGy:()=>_x,schemeRdPu:()=>Ux,schemeRdYlBu:()=>kx,schemeRdYlGn:()=>Ex,schemeReds:()=>ok,schemeSet1:()=>ax,schemeSet2:()=>ox,schemeSet3:()=>sx,schemeSpectral:()=>Cx,schemeTableau10:()=>cx,schemeYlGn:()=>Hx,schemeYlGnBu:()=>Wx,schemeYlOrBr:()=>Gx,schemeYlOrRd:()=>Zx,select:()=>Mn,selectAll:()=>Nk,selection:()=>An,selector:()=>pe,selectorAll:()=>me,shuffle:()=>At,shuffler:()=>Mt,some:()=>It,sort:()=>$,stack:()=>YE,stackOffsetDiverging:()=>$E,stackOffsetExpand:()=>UE,stackOffsetNone:()=>RE,stackOffsetSilhouette:()=>WE,stackOffsetWiggle:()=>qE,stackOrderAppearance:()=>HE,stackOrderAscending:()=>GE,stackOrderDescending:()=>ZE,stackOrderInsideOut:()=>QE,stackOrderNone:()=>PE,stackOrderReverse:()=>KE,stratify:()=>Lg,style:()=>qe,subset:()=>Ht,sum:()=>Ot,superset:()=>Wt,svg:()=>il,symbol:()=>qw,symbolCircle:()=>Sw,symbolCross:()=>Aw,symbolDiamond:()=>Nw,symbolSquare:()=>Fw,symbolStar:()=>Iw,symbolTriangle:()=>Pw,symbolWye:()=>$w,symbols:()=>Ww,text:()=>Vc,thresholdFreedmanDiaconis:()=>ht,thresholdScott:()=>dt,thresholdSturges:()=>rt,tickFormat:()=>am,tickIncrement:()=>tt,tickStep:()=>et,ticks:()=>J,timeDay:()=>nb,timeDays:()=>rb,timeFormat:()=>hv,timeFormatDefaultLocale:()=>D_,timeFormatLocale:()=>lv,timeFriday:()=>ub,timeFridays:()=>mb,timeHour:()=>Jm,timeHours:()=>tb,timeInterval:()=>Um,timeMillisecond:()=>Wm,timeMilliseconds:()=>qm,timeMinute:()=>Zm,timeMinutes:()=>Qm,timeMonday:()=>ob,timeMondays:()=>fb,timeMonth:()=>_b,timeMonths:()=>xb,timeParse:()=>dv,timeSaturday:()=>hb,timeSaturdays:()=>bb,timeSecond:()=>Vm,timeSeconds:()=>Gm,timeSunday:()=>ab,timeSundays:()=>db,timeThursday:()=>lb,timeThursdays:()=>yb,timeTickInterval:()=>av,timeTicks:()=>iv,timeTuesday:()=>sb,timeTuesdays:()=>pb,timeWednesday:()=>cb,timeWednesdays:()=>gb,timeWeek:()=>ab,timeWeeks:()=>db,timeYear:()=>wb,timeYears:()=>Eb,timeout:()=>ni,timer:()=>Qr,timerFlush:()=>Kr,transition:()=>qi,transpose:()=>Nt,tree:()=>$g,treemap:()=>Gg,treemapBinary:()=>Xg,treemapDice:()=>Sg,treemapResquarify:()=>Qg,treemapSlice:()=>Wg,treemapSliceDice:()=>Zg,treemapSquarify:()=>Vg,tsv:()=>Qc,tsvFormat:()=>ic,tsvFormatBody:()=>ac,tsvFormatRow:()=>sc,tsvFormatRows:()=>oc,tsvFormatValue:()=>cc,tsvParse:()=>nc,tsvParseRows:()=>rc,union:()=>Vt,utcDay:()=>Db,utcDays:()=>Bb,utcFormat:()=>fv,utcFriday:()=>zb,utcFridays:()=>Vb,utcHour:()=>Mb,utcHours:()=>Ob,utcMillisecond:()=>Wm,utcMilliseconds:()=>qm,utcMinute:()=>Cb,utcMinutes:()=>Sb,utcMonday:()=>Fb,utcMondays:()=>$b,utcMonth:()=>Zb,utcMonths:()=>Qb,utcParse:()=>pv,utcSaturday:()=>Yb,utcSaturdays:()=>Gb,utcSecond:()=>Vm,utcSeconds:()=>Gm,utcSunday:()=>Ib,utcSundays:()=>Ub,utcThursday:()=>jb,utcThursdays:()=>Hb,utcTickInterval:()=>rv,utcTicks:()=>nv,utcTuesday:()=>Rb,utcTuesdays:()=>Wb,utcWednesday:()=>Pb,utcWednesdays:()=>qb,utcWeek:()=>Ib,utcWeeks:()=>Ub,utcYear:()=>Jb,utcYears:()=>tv,variance:()=>b,window:()=>Ye,xml:()=>nl,zip:()=>Bt,zoom:()=>bT,zoomIdentity:()=>cT,zoomTransform:()=>lT});const o=i(r),s=o.right,c=o.left,l=i(a).center,u=s;function h(t,e){let n=0;if(void 0===e)for(let r of t)null!=r&&(r=+r)>=r&&++n;else{let r=-1;for(let i of t)null!=(i=e(i,++r,t))&&(i=+i)>=i&&++n}return n}function d(t){return 0|t.length}function f(t){return!(t>0)}function p(t){return"object"!=typeof t||"length"in t?t:Array.from(t)}function g(...t){const e="function"==typeof t[t.length-1]&&function(t){return e=>t(...e)}(t.pop()),n=(t=t.map(p)).map(d),r=t.length-1,i=new Array(r+1).fill(0),a=[];if(r<0||n.some(f))return a;for(;;){a.push(i.map(((e,n)=>t[n][e])));let o=r;for(;++i[o]===n[o];){if(0===o)return e?a.map(e):a;i[o--]=0}}}function y(t,e){var n=0,r=0;return Float64Array.from(t,void 0===e?t=>n+=+t||0:i=>n+=+e(i,r++,t)||0)}function m(t,e){return null==t||null==e?NaN:e<t?-1:e>t?1:e>=t?0:NaN}function b(t,e){let n,r=0,i=0,a=0;if(void 0===e)for(let o of t)null!=o&&(o=+o)>=o&&(n=o-i,i+=n/++r,a+=n*(o-i));else{let o=-1;for(let s of t)null!=(s=e(s,++o,t))&&(s=+s)>=s&&(n=s-i,i+=n/++r,a+=n*(s-i))}if(r>1)return a/(r-1)}function v(t,e){const n=b(t,e);return n?Math.sqrt(n):n}function _(t,e){let n,r;if(void 0===e)for(const i of t)null!=i&&(void 0===n?i>=i&&(n=r=i):(n>i&&(n=i),r<i&&(r=i)));else{let i=-1;for(let a of t)null!=(a=e(a,++i,t))&&(void 0===n?a>=a&&(n=r=a):(n>a&&(n=a),r<a&&(r=a)))}return[n,r]}class x{constructor(){this._partials=new Float64Array(32),this._n=0}add(t){const e=this._partials;let n=0;for(let r=0;r<this._n&&r<32;r++){const i=e[r],a=t+i,o=Math.abs(t)<Math.abs(i)?t-(a-i):i-(a-t);o&&(e[n++]=o),t=a}return e[n]=t,this._n=n+1,this}valueOf(){const t=this._partials;let e,n,r,i=this._n,a=0;if(i>0){for(a=t[--i];i>0&&(e=a,n=t[--i],a=e+n,r=n-(a-e),!r););i>0&&(r<0&&t[i-1]<0||r>0&&t[i-1]>0)&&(n=2*r,e=a+n,n==e-a&&(a=e))}return a}}function k(t,e){const n=new x;if(void 0===e)for(let r of t)(r=+r)&&n.add(r);else{let r=-1;for(let i of t)(i=+e(i,++r,t))&&n.add(i)}return+n}function w(t,e){const n=new x;let r=-1;return Float64Array.from(t,void 0===e?t=>n.add(+t||0):i=>n.add(+e(i,++r,t)||0))}class E extends Map{constructor(t,e=M){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:e}}),null!=t)for(const[n,r]of t)this.set(n,r)}get(t){return super.get(C(this,t))}has(t){return super.has(C(this,t))}set(t,e){return super.set(S(this,t),e)}delete(t){return super.delete(A(this,t))}}class T extends Set{constructor(t,e=M){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:e}}),null!=t)for(const n of t)this.add(n)}has(t){return super.has(C(this,t))}add(t){return super.add(S(this,t))}delete(t){return super.delete(A(this,t))}}function C({_intern:t,_key:e},n){const r=e(n);return t.has(r)?t.get(r):n}function S({_intern:t,_key:e},n){const r=e(n);return t.has(r)?t.get(r):(t.set(r,n),n)}function A({_intern:t,_key:e},n){const r=e(n);return t.has(r)&&(n=t.get(r),t.delete(r)),n}function M(t){return null!==t&&"object"==typeof t?t.valueOf():t}function O(t){return t}function N(t,...e){return Y(t,O,O,e)}function D(t,...e){return Y(t,Array.from,O,e)}function B(t,e){for(let n=1,r=e.length;n<r;++n)t=t.flatMap((t=>t.pop().map((([e,n])=>[...t,e,n]))));return t}function L(t,...e){return B(D(t,...e),e)}function I(t,e,...n){return B(R(t,e,...n),n)}function F(t,e,...n){return Y(t,O,e,n)}function R(t,e,...n){return Y(t,Array.from,e,n)}function P(t,...e){return Y(t,O,z,e)}function j(t,...e){return Y(t,Array.from,z,e)}function z(t){if(1!==t.length)throw new Error("duplicate key");return t[0]}function Y(t,e,n,r){return function t(i,a){if(a>=r.length)return n(i);const o=new E,s=r[a++];let c=-1;for(const e of i){const t=s(e,++c,i),n=o.get(t);n?n.push(e):o.set(t,[e])}for(const[e,n]of o)o.set(e,t(n,a));return e(o)}(t,0)}function U(t,e){return Array.from(e,(e=>t[e]))}function $(t,...e){if("function"!=typeof t[Symbol.iterator])throw new TypeError("values is not iterable");t=Array.from(t);let[n]=e;if(n&&2!==n.length||e.length>1){const r=Uint32Array.from(t,((t,e)=>e));return e.length>1?(e=e.map((e=>t.map(e))),r.sort(((t,n)=>{for(const r of e){const e=q(r[t],r[n]);if(e)return e}}))):(n=t.map(n),r.sort(((t,e)=>q(n[t],n[e])))),U(t,r)}return t.sort(W(n))}function W(t=r){if(t===r)return q;if("function"!=typeof t)throw new TypeError("compare is not a function");return(e,n)=>{const r=t(e,n);return r||0===r?r:(0===t(n,n))-(0===t(e,e))}}function q(t,e){return(null==t||!(t>=t))-(null==e||!(e>=e))||(t<e?-1:t>e?1:0)}function H(t,e,n){return(2!==e.length?$(F(t,e,n),(([t,e],[n,i])=>r(e,i)||r(t,n))):$(N(t,n),(([t,n],[i,a])=>e(n,a)||r(t,i)))).map((([t])=>t))}var V=Array.prototype,G=V.slice;function X(t){return()=>t}V.map;var Z=Math.sqrt(50),Q=Math.sqrt(10),K=Math.sqrt(2);function J(t,e,n){var r,i,a,o,s=-1;if(n=+n,(t=+t)==(e=+e)&&n>0)return[t];if((r=e<t)&&(i=t,t=e,e=i),0===(o=tt(t,e,n))||!isFinite(o))return[];if(o>0){let n=Math.round(t/o),r=Math.round(e/o);for(n*o<t&&++n,r*o>e&&--r,a=new Array(i=r-n+1);++s<i;)a[s]=(n+s)*o}else{o=-o;let n=Math.round(t*o),r=Math.round(e*o);for(n/o<t&&++n,r/o>e&&--r,a=new Array(i=r-n+1);++s<i;)a[s]=(n+s)/o}return r&&a.reverse(),a}function tt(t,e,n){var r=(e-t)/Math.max(0,n),i=Math.floor(Math.log(r)/Math.LN10),a=r/Math.pow(10,i);return i>=0?(a>=Z?10:a>=Q?5:a>=K?2:1)*Math.pow(10,i):-Math.pow(10,-i)/(a>=Z?10:a>=Q?5:a>=K?2:1)}function et(t,e,n){var r=Math.abs(e-t)/Math.max(0,n),i=Math.pow(10,Math.floor(Math.log(r)/Math.LN10)),a=r/i;return a>=Z?i*=10:a>=Q?i*=5:a>=K&&(i*=2),e<t?-i:i}function nt(t,e,n){let r;for(;;){const i=tt(t,e,n);if(i===r||0===i||!isFinite(i))return[t,e];i>0?(t=Math.floor(t/i)*i,e=Math.ceil(e/i)*i):i<0&&(t=Math.ceil(t*i)/i,e=Math.floor(e*i)/i),r=i}}function rt(t){return Math.ceil(Math.log(h(t))/Math.LN2)+1}function it(){var t=O,e=_,n=rt;function r(r){Array.isArray(r)||(r=Array.from(r));var i,a,o=r.length,s=new Array(o);for(i=0;i<o;++i)s[i]=t(r[i],i,r);var c=e(s),l=c[0],h=c[1],d=n(s,l,h);if(!Array.isArray(d)){const t=h,n=+d;if(e===_&&([l,h]=nt(l,h,n)),(d=J(l,h,n))[d.length-1]>=h)if(t>=h&&e===_){const t=tt(l,h,n);isFinite(t)&&(t>0?h=(Math.floor(h/t)+1)*t:t<0&&(h=(Math.ceil(h*-t)+1)/-t))}else d.pop()}for(var f=d.length;d[0]<=l;)d.shift(),--f;for(;d[f-1]>h;)d.pop(),--f;var p,g=new Array(f+1);for(i=0;i<=f;++i)(p=g[i]=[]).x0=i>0?d[i-1]:l,p.x1=i<f?d[i]:h;for(i=0;i<o;++i)null!=(a=s[i])&&l<=a&&a<=h&&g[u(d,a,0,f)].push(r[i]);return g}return r.value=function(e){return arguments.length?(t="function"==typeof e?e:X(e),r):t},r.domain=function(t){return arguments.length?(e="function"==typeof t?t:X([t[0],t[1]]),r):e},r.thresholds=function(t){return arguments.length?(n="function"==typeof t?t:Array.isArray(t)?X(G.call(t)):X(t),r):n},r}function at(t,e){let n;if(void 0===e)for(const r of t)null!=r&&(n<r||void 0===n&&r>=r)&&(n=r);else{let r=-1;for(let i of t)null!=(i=e(i,++r,t))&&(n<i||void 0===n&&i>=i)&&(n=i)}return n}function ot(t,e){let n;if(void 0===e)for(const r of t)null!=r&&(n>r||void 0===n&&r>=r)&&(n=r);else{let r=-1;for(let i of t)null!=(i=e(i,++r,t))&&(n>i||void 0===n&&i>=i)&&(n=i)}return n}function st(t,e,n=0,r=t.length-1,i){for(i=void 0===i?q:W(i);r>n;){if(r-n>600){const a=r-n+1,o=e-n+1,s=Math.log(a),c=.5*Math.exp(2*s/3),l=.5*Math.sqrt(s*c*(a-c)/a)*(o-a/2<0?-1:1);st(t,e,Math.max(n,Math.floor(e-o*c/a+l)),Math.min(r,Math.floor(e+(a-o)*c/a+l)),i)}const a=t[e];let o=n,s=r;for(ct(t,n,e),i(t[r],a)>0&&ct(t,n,r);o<s;){for(ct(t,o,s),++o,--s;i(t[o],a)<0;)++o;for(;i(t[s],a)>0;)--s}0===i(t[n],a)?ct(t,n,s):(++s,ct(t,s,r)),s<=e&&(n=s+1),e<=s&&(r=s-1)}return t}function ct(t,e,n){const r=t[e];t[e]=t[n],t[n]=r}function lt(t,e,n){if(t=Float64Array.from(function*(t,e){if(void 0===e)for(let n of t)null!=n&&(n=+n)>=n&&(yield n);else{let n=-1;for(let r of t)null!=(r=e(r,++n,t))&&(r=+r)>=r&&(yield r)}}(t,n)),r=t.length){if((e=+e)<=0||r<2)return ot(t);if(e>=1)return at(t);var r,i=(r-1)*e,a=Math.floor(i),o=at(st(t,a).subarray(0,a+1));return o+(ot(t.subarray(a+1))-o)*(i-a)}}function ut(t,e,n=a){if(r=t.length){if((e=+e)<=0||r<2)return+n(t[0],0,t);if(e>=1)return+n(t[r-1],r-1,t);var r,i=(r-1)*e,o=Math.floor(i),s=+n(t[o],o,t);return s+(+n(t[o+1],o+1,t)-s)*(i-o)}}function ht(t,e,n){return Math.ceil((n-e)/(2*(lt(t,.75)-lt(t,.25))*Math.pow(h(t),-1/3)))}function dt(t,e,n){return Math.ceil((n-e)/(3.5*v(t)*Math.pow(h(t),-1/3)))}function ft(t,e){let n,r=-1,i=-1;if(void 0===e)for(const a of t)++i,null!=a&&(n<a||void 0===n&&a>=a)&&(n=a,r=i);else for(let a of t)null!=(a=e(a,++i,t))&&(n<a||void 0===n&&a>=a)&&(n=a,r=i);return r}function pt(t,e){let n=0,r=0;if(void 0===e)for(let i of t)null!=i&&(i=+i)>=i&&(++n,r+=i);else{let i=-1;for(let a of t)null!=(a=e(a,++i,t))&&(a=+a)>=a&&(++n,r+=a)}if(n)return r/n}function gt(t,e){return lt(t,.5,e)}function yt(t){return Array.from(function*(t){for(const e of t)yield*e}(t))}function mt(t,e){let n,r=-1,i=-1;if(void 0===e)for(const a of t)++i,null!=a&&(n>a||void 0===n&&a>=a)&&(n=a,r=i);else for(let a of t)null!=(a=e(a,++i,t))&&(n>a||void 0===n&&a>=a)&&(n=a,r=i);return r}function bt(t,e){const n=new E;if(void 0===e)for(let a of t)null!=a&&a>=a&&n.set(a,(n.get(a)||0)+1);else{let r=-1;for(let i of t)null!=(i=e(i,++r,t))&&i>=i&&n.set(i,(n.get(i)||0)+1)}let r,i=0;for(const[a,o]of n)o>i&&(i=o,r=a);return r}function vt(t,e=_t){const n=[];let r,i=!1;for(const a of t)i&&n.push(e(r,a)),r=a,i=!0;return n}function _t(t,e){return[t,e]}function xt(t,e,n){t=+t,e=+e,n=(i=arguments.length)<2?(e=t,t=0,1):i<3?1:+n;for(var r=-1,i=0|Math.max(0,Math.ceil((e-t)/n)),a=new Array(i);++r<i;)a[r]=t+r*n;return a}function kt(t,e=r){if("function"!=typeof t[Symbol.iterator])throw new TypeError("values is not iterable");let n=Array.from(t);const i=new Float64Array(n.length);2!==e.length&&(n=n.map(e),e=r);const a=(t,r)=>e(n[t],n[r]);let o,s;return Uint32Array.from(n,((t,e)=>e)).sort(e===r?(t,e)=>q(n[t],n[e]):W(a)).forEach(((t,e)=>{const n=a(t,void 0===o?t:o);n>=0?((void 0===o||n>0)&&(o=t,s=e),i[t]=s):i[t]=NaN})),i}function wt(t,e=r){let n,i=!1;if(1===e.length){let a;for(const o of t){const t=e(o);(i?r(t,a)<0:0===r(t,t))&&(n=o,a=t,i=!0)}}else for(const r of t)(i?e(r,n)<0:0===e(r,r))&&(n=r,i=!0);return n}function Et(t,e=r){if(1===e.length)return mt(t,e);let n,i=-1,a=-1;for(const r of t)++a,(i<0?0===e(r,r):e(r,n)<0)&&(n=r,i=a);return i}function Tt(t,e=r){let n,i=!1;if(1===e.length){let a;for(const o of t){const t=e(o);(i?r(t,a)>0:0===r(t,t))&&(n=o,a=t,i=!0)}}else for(const r of t)(i?e(r,n)>0:0===e(r,r))&&(n=r,i=!0);return n}function Ct(t,e=r){if(1===e.length)return ft(t,e);let n,i=-1,a=-1;for(const r of t)++a,(i<0?0===e(r,r):e(r,n)>0)&&(n=r,i=a);return i}function St(t,e){const n=Et(t,e);return n<0?void 0:n}const At=Mt(Math.random);function Mt(t){return function(e,n=0,r=e.length){let i=r-(n=+n);for(;i;){const r=t()*i--|0,a=e[i+n];e[i+n]=e[r+n],e[r+n]=a}return e}}function Ot(t,e){let n=0;if(void 0===e)for(let r of t)(r=+r)&&(n+=r);else{let r=-1;for(let i of t)(i=+e(i,++r,t))&&(n+=i)}return n}function Nt(t){if(!(i=t.length))return[];for(var e=-1,n=ot(t,Dt),r=new Array(n);++e<n;)for(var i,a=-1,o=r[e]=new Array(i);++a<i;)o[a]=t[a][e];return r}function Dt(t){return t.length}function Bt(){return Nt(arguments)}function Lt(t,e){if("function"!=typeof e)throw new TypeError("test is not a function");let n=-1;for(const r of t)if(!e(r,++n,t))return!1;return!0}function It(t,e){if("function"!=typeof e)throw new TypeError("test is not a function");let n=-1;for(const r of t)if(e(r,++n,t))return!0;return!1}function Ft(t,e){if("function"!=typeof e)throw new TypeError("test is not a function");const n=[];let r=-1;for(const i of t)e(i,++r,t)&&n.push(i);return n}function Rt(t,e){if("function"!=typeof t[Symbol.iterator])throw new TypeError("values is not iterable");if("function"!=typeof e)throw new TypeError("mapper is not a function");return Array.from(t,((n,r)=>e(n,r,t)))}function Pt(t,e,n){if("function"!=typeof e)throw new TypeError("reducer is not a function");const r=t[Symbol.iterator]();let i,a,o=-1;if(arguments.length<3){if(({done:i,value:n}=r.next()),i)return;++o}for(;({done:i,value:a}=r.next()),!i;)n=e(n,a,++o,t);return n}function jt(t){if("function"!=typeof t[Symbol.iterator])throw new TypeError("values is not iterable");return Array.from(t).reverse()}function zt(t,...e){t=new T(t);for(const n of e)for(const e of n)t.delete(e);return t}function Yt(t,e){const n=e[Symbol.iterator](),r=new T;for(const i of t){if(r.has(i))return!1;let t,e;for(;({value:t,done:e}=n.next())&&!e;){if(Object.is(i,t))return!1;r.add(t)}}return!0}function Ut(t,...e){t=new T(t),e=e.map($t);t:for(const n of t)for(const r of e)if(!r.has(n)){t.delete(n);continue t}return t}function $t(t){return t instanceof T?t:new T(t)}function Wt(t,e){const n=t[Symbol.iterator](),r=new Set;for(const i of e){const t=qt(i);if(r.has(t))continue;let e,a;for(;({value:e,done:a}=n.next());){if(a)return!1;const n=qt(e);if(r.add(n),Object.is(t,n))break}}return!0}function qt(t){return null!==t&&"object"==typeof t?t.valueOf():t}function Ht(t,e){return Wt(e,t)}function Vt(...t){const e=new T;for(const n of t)for(const t of n)e.add(t);return e}function Gt(t){return t}var Xt=1e-6;function Zt(t){return"translate("+t+",0)"}function Qt(t){return"translate(0,"+t+")"}function Kt(t){return e=>+t(e)}function Jt(t,e){return e=Math.max(0,t.bandwidth()-2*e)/2,t.round()&&(e=Math.round(e)),n=>+t(n)+e}function te(){return!this.__axis}function ee(t,e){var n=[],r=null,i=null,a=6,o=6,s=3,c="undefined"!=typeof window&&window.devicePixelRatio>1?0:.5,l=1===t||4===t?-1:1,u=4===t||2===t?"x":"y",h=1===t||3===t?Zt:Qt;function d(d){var f=null==r?e.ticks?e.ticks.apply(e,n):e.domain():r,p=null==i?e.tickFormat?e.tickFormat.apply(e,n):Gt:i,g=Math.max(a,0)+s,y=e.range(),m=+y[0]+c,b=+y[y.length-1]+c,v=(e.bandwidth?Jt:Kt)(e.copy(),c),_=d.selection?d.selection():d,x=_.selectAll(".domain").data([null]),k=_.selectAll(".tick").data(f,e).order(),w=k.exit(),E=k.enter().append("g").attr("class","tick"),T=k.select("line"),C=k.select("text");x=x.merge(x.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),k=k.merge(E),T=T.merge(E.append("line").attr("stroke","currentColor").attr(u+"2",l*a)),C=C.merge(E.append("text").attr("fill","currentColor").attr(u,l*g).attr("dy",1===t?"0em":3===t?"0.71em":"0.32em")),d!==_&&(x=x.transition(d),k=k.transition(d),T=T.transition(d),C=C.transition(d),w=w.transition(d).attr("opacity",Xt).attr("transform",(function(t){return isFinite(t=v(t))?h(t+c):this.getAttribute("transform")})),E.attr("opacity",Xt).attr("transform",(function(t){var e=this.parentNode.__axis;return h((e&&isFinite(e=e(t))?e:v(t))+c)}))),w.remove(),x.attr("d",4===t||2===t?o?"M"+l*o+","+m+"H"+c+"V"+b+"H"+l*o:"M"+c+","+m+"V"+b:o?"M"+m+","+l*o+"V"+c+"H"+b+"V"+l*o:"M"+m+","+c+"H"+b),k.attr("opacity",1).attr("transform",(function(t){return h(v(t)+c)})),T.attr(u+"2",l*a),C.attr(u,l*g).text(p),_.filter(te).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",2===t?"start":4===t?"end":"middle"),_.each((function(){this.__axis=v}))}return d.scale=function(t){return arguments.length?(e=t,d):e},d.ticks=function(){return n=Array.from(arguments),d},d.tickArguments=function(t){return arguments.length?(n=null==t?[]:Array.from(t),d):n.slice()},d.tickValues=function(t){return arguments.length?(r=null==t?null:Array.from(t),d):r&&r.slice()},d.tickFormat=function(t){return arguments.length?(i=t,d):i},d.tickSize=function(t){return arguments.length?(a=o=+t,d):a},d.tickSizeInner=function(t){return arguments.length?(a=+t,d):a},d.tickSizeOuter=function(t){return arguments.length?(o=+t,d):o},d.tickPadding=function(t){return arguments.length?(s=+t,d):s},d.offset=function(t){return arguments.length?(c=+t,d):c},d}function ne(t){return ee(1,t)}function re(t){return ee(2,t)}function ie(t){return ee(3,t)}function ae(t){return ee(4,t)}var oe={value:()=>{}};function se(){for(var t,e=0,n=arguments.length,r={};e<n;++e){if(!(t=arguments[e]+"")||t in r||/[\s.]/.test(t))throw new Error("illegal type: "+t);r[t]=[]}return new ce(r)}function ce(t){this._=t}function le(t,e){return t.trim().split(/^|\s+/).map((function(t){var n="",r=t.indexOf(".");if(r>=0&&(n=t.slice(r+1),t=t.slice(0,r)),t&&!e.hasOwnProperty(t))throw new Error("unknown type: "+t);return{type:t,name:n}}))}function ue(t,e){for(var n,r=0,i=t.length;r<i;++r)if((n=t[r]).name===e)return n.value}function he(t,e,n){for(var r=0,i=t.length;r<i;++r)if(t[r].name===e){t[r]=oe,t=t.slice(0,r).concat(t.slice(r+1));break}return null!=n&&t.push({name:e,value:n}),t}ce.prototype=se.prototype={constructor:ce,on:function(t,e){var n,r=this._,i=le(t+"",r),a=-1,o=i.length;if(!(arguments.length<2)){if(null!=e&&"function"!=typeof e)throw new Error("invalid callback: "+e);for(;++a<o;)if(n=(t=i[a]).type)r[n]=he(r[n],t.name,e);else if(null==e)for(n in r)r[n]=he(r[n],t.name,null);return this}for(;++a<o;)if((n=(t=i[a]).type)&&(n=ue(r[n],t.name)))return n},copy:function(){var t={},e=this._;for(var n in e)t[n]=e[n].slice();return new ce(t)},call:function(t,e){if((n=arguments.length-2)>0)for(var n,r,i=new Array(n),a=0;a<n;++a)i[a]=arguments[a+2];if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(a=0,n=(r=this._[t]).length;a<n;++a)r[a].value.apply(e,i)},apply:function(t,e,n){if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(var r=this._[t],i=0,a=r.length;i<a;++i)r[i].value.apply(e,n)}};const de=se;function fe(){}function pe(t){return null==t?fe:function(){return this.querySelector(t)}}function ge(t){return null==t?[]:Array.isArray(t)?t:Array.from(t)}function ye(){return[]}function me(t){return null==t?ye:function(){return this.querySelectorAll(t)}}function be(t){return function(){return this.matches(t)}}function ve(t){return function(e){return e.matches(t)}}var _e=Array.prototype.find;function xe(){return this.firstElementChild}var ke=Array.prototype.filter;function we(){return Array.from(this.children)}function Ee(t){return new Array(t.length)}function Te(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}function Ce(t){return function(){return t}}function Se(t,e,n,r,i,a){for(var o,s=0,c=e.length,l=a.length;s<l;++s)(o=e[s])?(o.__data__=a[s],r[s]=o):n[s]=new Te(t,a[s]);for(;s<c;++s)(o=e[s])&&(i[s]=o)}function Ae(t,e,n,r,i,a,o){var s,c,l,u=new Map,h=e.length,d=a.length,f=new Array(h);for(s=0;s<h;++s)(c=e[s])&&(f[s]=l=o.call(c,c.__data__,s,e)+"",u.has(l)?i[s]=c:u.set(l,c));for(s=0;s<d;++s)l=o.call(t,a[s],s,a)+"",(c=u.get(l))?(r[s]=c,c.__data__=a[s],u.delete(l)):n[s]=new Te(t,a[s]);for(s=0;s<h;++s)(c=e[s])&&u.get(f[s])===c&&(i[s]=c)}function Me(t){return t.__data__}function Oe(t){return"object"==typeof t&&"length"in t?t:Array.from(t)}function Ne(t,e){return t<e?-1:t>e?1:t>=e?0:NaN}Te.prototype={constructor:Te,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,e){return this._parent.insertBefore(t,e)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};var De="http://www.w3.org/1999/xhtml";const Be={svg:"http://www.w3.org/2000/svg",xhtml:De,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function Le(t){var e=t+="",n=e.indexOf(":");return n>=0&&"xmlns"!==(e=t.slice(0,n))&&(t=t.slice(n+1)),Be.hasOwnProperty(e)?{space:Be[e],local:t}:t}function Ie(t){return function(){this.removeAttribute(t)}}function Fe(t){return function(){this.removeAttributeNS(t.space,t.local)}}function Re(t,e){return function(){this.setAttribute(t,e)}}function Pe(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}function je(t,e){return function(){var n=e.apply(this,arguments);null==n?this.removeAttribute(t):this.setAttribute(t,n)}}function ze(t,e){return function(){var n=e.apply(this,arguments);null==n?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,n)}}function Ye(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function Ue(t){return function(){this.style.removeProperty(t)}}function $e(t,e,n){return function(){this.style.setProperty(t,e,n)}}function We(t,e,n){return function(){var r=e.apply(this,arguments);null==r?this.style.removeProperty(t):this.style.setProperty(t,r,n)}}function qe(t,e){return t.style.getPropertyValue(e)||Ye(t).getComputedStyle(t,null).getPropertyValue(e)}function He(t){return function(){delete this[t]}}function Ve(t,e){return function(){this[t]=e}}function Ge(t,e){return function(){var n=e.apply(this,arguments);null==n?delete this[t]:this[t]=n}}function Xe(t){return t.trim().split(/^|\s+/)}function Ze(t){return t.classList||new Qe(t)}function Qe(t){this._node=t,this._names=Xe(t.getAttribute("class")||"")}function Ke(t,e){for(var n=Ze(t),r=-1,i=e.length;++r<i;)n.add(e[r])}function Je(t,e){for(var n=Ze(t),r=-1,i=e.length;++r<i;)n.remove(e[r])}function tn(t){return function(){Ke(this,t)}}function en(t){return function(){Je(this,t)}}function nn(t,e){return function(){(e.apply(this,arguments)?Ke:Je)(this,t)}}function rn(){this.textContent=""}function an(t){return function(){this.textContent=t}}function on(t){return function(){var e=t.apply(this,arguments);this.textContent=null==e?"":e}}function sn(){this.innerHTML=""}function cn(t){return function(){this.innerHTML=t}}function ln(t){return function(){var e=t.apply(this,arguments);this.innerHTML=null==e?"":e}}function un(){this.nextSibling&&this.parentNode.appendChild(this)}function hn(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function dn(t){return function(){var e=this.ownerDocument,n=this.namespaceURI;return n===De&&e.documentElement.namespaceURI===De?e.createElement(t):e.createElementNS(n,t)}}function fn(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function pn(t){var e=Le(t);return(e.local?fn:dn)(e)}function gn(){return null}function yn(){var t=this.parentNode;t&&t.removeChild(this)}function mn(){var t=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function bn(){var t=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function vn(t){return t.trim().split(/^|\s+/).map((function(t){var e="",n=t.indexOf(".");return n>=0&&(e=t.slice(n+1),t=t.slice(0,n)),{type:t,name:e}}))}function _n(t){return function(){var e=this.__on;if(e){for(var n,r=0,i=-1,a=e.length;r<a;++r)n=e[r],t.type&&n.type!==t.type||n.name!==t.name?e[++i]=n:this.removeEventListener(n.type,n.listener,n.options);++i?e.length=i:delete this.__on}}}function xn(t,e,n){return function(){var r,i=this.__on,a=function(t){return function(e){t.call(this,e,this.__data__)}}(e);if(i)for(var o=0,s=i.length;o<s;++o)if((r=i[o]).type===t.type&&r.name===t.name)return this.removeEventListener(r.type,r.listener,r.options),this.addEventListener(r.type,r.listener=a,r.options=n),void(r.value=e);this.addEventListener(t.type,a,n),r={type:t.type,name:t.name,value:e,listener:a,options:n},i?i.push(r):this.__on=[r]}}function kn(t,e,n){var r=Ye(t),i=r.CustomEvent;"function"==typeof i?i=new i(e,n):(i=r.document.createEvent("Event"),n?(i.initEvent(e,n.bubbles,n.cancelable),i.detail=n.detail):i.initEvent(e,!1,!1)),t.dispatchEvent(i)}function wn(t,e){return function(){return kn(this,t,e)}}function En(t,e){return function(){return kn(this,t,e.apply(this,arguments))}}Qe.prototype={add:function(t){this._names.indexOf(t)<0&&(this._names.push(t),this._node.setAttribute("class",this._names.join(" ")))},remove:function(t){var e=this._names.indexOf(t);e>=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};var Tn=[null];function Cn(t,e){this._groups=t,this._parents=e}function Sn(){return new Cn([[document.documentElement]],Tn)}Cn.prototype=Sn.prototype={constructor:Cn,select:function(t){"function"!=typeof t&&(t=pe(t));for(var e=this._groups,n=e.length,r=new Array(n),i=0;i<n;++i)for(var a,o,s=e[i],c=s.length,l=r[i]=new Array(c),u=0;u<c;++u)(a=s[u])&&(o=t.call(a,a.__data__,u,s))&&("__data__"in a&&(o.__data__=a.__data__),l[u]=o);return new Cn(r,this._parents)},selectAll:function(t){t="function"==typeof t?function(t){return function(){return ge(t.apply(this,arguments))}}(t):me(t);for(var e=this._groups,n=e.length,r=[],i=[],a=0;a<n;++a)for(var o,s=e[a],c=s.length,l=0;l<c;++l)(o=s[l])&&(r.push(t.call(o,o.__data__,l,s)),i.push(o));return new Cn(r,i)},selectChild:function(t){return this.select(null==t?xe:function(t){return function(){return _e.call(this.children,t)}}("function"==typeof t?t:ve(t)))},selectChildren:function(t){return this.selectAll(null==t?we:function(t){return function(){return ke.call(this.children,t)}}("function"==typeof t?t:ve(t)))},filter:function(t){"function"!=typeof t&&(t=be(t));for(var e=this._groups,n=e.length,r=new Array(n),i=0;i<n;++i)for(var a,o=e[i],s=o.length,c=r[i]=[],l=0;l<s;++l)(a=o[l])&&t.call(a,a.__data__,l,o)&&c.push(a);return new Cn(r,this._parents)},data:function(t,e){if(!arguments.length)return Array.from(this,Me);var n=e?Ae:Se,r=this._parents,i=this._groups;"function"!=typeof t&&(t=Ce(t));for(var a=i.length,o=new Array(a),s=new Array(a),c=new Array(a),l=0;l<a;++l){var u=r[l],h=i[l],d=h.length,f=Oe(t.call(u,u&&u.__data__,l,r)),p=f.length,g=s[l]=new Array(p),y=o[l]=new Array(p),m=c[l]=new Array(d);n(u,h,g,y,m,f,e);for(var b,v,_=0,x=0;_<p;++_)if(b=g[_]){for(_>=x&&(x=_+1);!(v=y[x])&&++x<p;);b._next=v||null}}return(o=new Cn(o,r))._enter=s,o._exit=c,o},enter:function(){return new Cn(this._enter||this._groups.map(Ee),this._parents)},exit:function(){return new Cn(this._exit||this._groups.map(Ee),this._parents)},join:function(t,e,n){var r=this.enter(),i=this,a=this.exit();return"function"==typeof t?(r=t(r))&&(r=r.selection()):r=r.append(t+""),null!=e&&(i=e(i))&&(i=i.selection()),null==n?a.remove():n(a),r&&i?r.merge(i).order():i},merge:function(t){for(var e=t.selection?t.selection():t,n=this._groups,r=e._groups,i=n.length,a=r.length,o=Math.min(i,a),s=new Array(i),c=0;c<o;++c)for(var l,u=n[c],h=r[c],d=u.length,f=s[c]=new Array(d),p=0;p<d;++p)(l=u[p]||h[p])&&(f[p]=l);for(;c<i;++c)s[c]=n[c];return new Cn(s,this._parents)},selection:function(){return this},order:function(){for(var t=this._groups,e=-1,n=t.length;++e<n;)for(var r,i=t[e],a=i.length-1,o=i[a];--a>=0;)(r=i[a])&&(o&&4^r.compareDocumentPosition(o)&&o.parentNode.insertBefore(r,o),o=r);return this},sort:function(t){function e(e,n){return e&&n?t(e.__data__,n.__data__):!e-!n}t||(t=Ne);for(var n=this._groups,r=n.length,i=new Array(r),a=0;a<r;++a){for(var o,s=n[a],c=s.length,l=i[a]=new Array(c),u=0;u<c;++u)(o=s[u])&&(l[u]=o);l.sort(e)}return new Cn(i,this._parents).order()},call:function(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this},nodes:function(){return Array.from(this)},node:function(){for(var t=this._groups,e=0,n=t.length;e<n;++e)for(var r=t[e],i=0,a=r.length;i<a;++i){var o=r[i];if(o)return o}return null},size:function(){let t=0;for(const e of this)++t;return t},empty:function(){return!this.node()},each:function(t){for(var e=this._groups,n=0,r=e.length;n<r;++n)for(var i,a=e[n],o=0,s=a.length;o<s;++o)(i=a[o])&&t.call(i,i.__data__,o,a);return this},attr:function(t,e){var n=Le(t);if(arguments.length<2){var r=this.node();return n.local?r.getAttributeNS(n.space,n.local):r.getAttribute(n)}return this.each((null==e?n.local?Fe:Ie:"function"==typeof e?n.local?ze:je:n.local?Pe:Re)(n,e))},style:function(t,e,n){return arguments.length>1?this.each((null==e?Ue:"function"==typeof e?We:$e)(t,e,null==n?"":n)):qe(this.node(),t)},property:function(t,e){return arguments.length>1?this.each((null==e?He:"function"==typeof e?Ge:Ve)(t,e)):this.node()[t]},classed:function(t,e){var n=Xe(t+"");if(arguments.length<2){for(var r=Ze(this.node()),i=-1,a=n.length;++i<a;)if(!r.contains(n[i]))return!1;return!0}return this.each(("function"==typeof e?nn:e?tn:en)(n,e))},text:function(t){return arguments.length?this.each(null==t?rn:("function"==typeof t?on:an)(t)):this.node().textContent},html:function(t){return arguments.length?this.each(null==t?sn:("function"==typeof t?ln:cn)(t)):this.node().innerHTML},raise:function(){return this.each(un)},lower:function(){return this.each(hn)},append:function(t){var e="function"==typeof t?t:pn(t);return this.select((function(){return this.appendChild(e.apply(this,arguments))}))},insert:function(t,e){var n="function"==typeof t?t:pn(t),r=null==e?gn:"function"==typeof e?e:pe(e);return this.select((function(){return this.insertBefore(n.apply(this,arguments),r.apply(this,arguments)||null)}))},remove:function(){return this.each(yn)},clone:function(t){return this.select(t?bn:mn)},datum:function(t){return arguments.length?this.property("__data__",t):this.node().__data__},on:function(t,e,n){var r,i,a=vn(t+""),o=a.length;if(!(arguments.length<2)){for(s=e?xn:_n,r=0;r<o;++r)this.each(s(a[r],e,n));return this}var s=this.node().__on;if(s)for(var c,l=0,u=s.length;l<u;++l)for(r=0,c=s[l];r<o;++r)if((i=a[r]).type===c.type&&i.name===c.name)return c.value},dispatch:function(t,e){return this.each(("function"==typeof e?En:wn)(t,e))},[Symbol.iterator]:function*(){for(var t=this._groups,e=0,n=t.length;e<n;++e)for(var r,i=t[e],a=0,o=i.length;a<o;++a)(r=i[a])&&(yield r)}};const An=Sn;function Mn(t){return"string"==typeof t?new Cn([[document.querySelector(t)]],[document.documentElement]):new Cn([[t]],Tn)}const On={passive:!1},Nn={capture:!0,passive:!1};function Dn(t){t.stopImmediatePropagation()}function Bn(t){t.preventDefault(),t.stopImmediatePropagation()}function Ln(t){var e=t.document.documentElement,n=Mn(t).on("dragstart.drag",Bn,Nn);"onselectstart"in e?n.on("selectstart.drag",Bn,Nn):(e.__noselect=e.style.MozUserSelect,e.style.MozUserSelect="none")}function In(t,e){var n=t.document.documentElement,r=Mn(t).on("dragstart.drag",null);e&&(r.on("click.drag",Bn,Nn),setTimeout((function(){r.on("click.drag",null)}),0)),"onselectstart"in n?r.on("selectstart.drag",null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}function Fn(t,e,n){t.prototype=e.prototype=n,n.constructor=t}function Rn(t,e){var n=Object.create(t.prototype);for(var r in e)n[r]=e[r];return n}function Pn(){}var jn=.7,zn=1/jn,Yn="\\s*([+-]?\\d+)\\s*",Un="\\s*([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)\\s*",$n="\\s*([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)%\\s*",Wn=/^#([0-9a-f]{3,8})$/,qn=new RegExp("^rgb\\("+[Yn,Yn,Yn]+"\\)$"),Hn=new RegExp("^rgb\\("+[$n,$n,$n]+"\\)$"),Vn=new RegExp("^rgba\\("+[Yn,Yn,Yn,Un]+"\\)$"),Gn=new RegExp("^rgba\\("+[$n,$n,$n,Un]+"\\)$"),Xn=new RegExp("^hsl\\("+[Un,$n,$n]+"\\)$"),Zn=new RegExp("^hsla\\("+[Un,$n,$n,Un]+"\\)$"),Qn={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};function Kn(){return this.rgb().formatHex()}function Jn(){return this.rgb().formatRgb()}function tr(t){var e,n;return t=(t+"").trim().toLowerCase(),(e=Wn.exec(t))?(n=e[1].length,e=parseInt(e[1],16),6===n?er(e):3===n?new ar(e>>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):8===n?nr(e>>24&255,e>>16&255,e>>8&255,(255&e)/255):4===n?nr(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|240&e,((15&e)<<4|15&e)/255):null):(e=qn.exec(t))?new ar(e[1],e[2],e[3],1):(e=Hn.exec(t))?new ar(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=Vn.exec(t))?nr(e[1],e[2],e[3],e[4]):(e=Gn.exec(t))?nr(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=Xn.exec(t))?lr(e[1],e[2]/100,e[3]/100,1):(e=Zn.exec(t))?lr(e[1],e[2]/100,e[3]/100,e[4]):Qn.hasOwnProperty(t)?er(Qn[t]):"transparent"===t?new ar(NaN,NaN,NaN,0):null}function er(t){return new ar(t>>16&255,t>>8&255,255&t,1)}function nr(t,e,n,r){return r<=0&&(t=e=n=NaN),new ar(t,e,n,r)}function rr(t){return t instanceof Pn||(t=tr(t)),t?new ar((t=t.rgb()).r,t.g,t.b,t.opacity):new ar}function ir(t,e,n,r){return 1===arguments.length?rr(t):new ar(t,e,n,null==r?1:r)}function ar(t,e,n,r){this.r=+t,this.g=+e,this.b=+n,this.opacity=+r}function or(){return"#"+cr(this.r)+cr(this.g)+cr(this.b)}function sr(){var t=this.opacity;return(1===(t=isNaN(t)?1:Math.max(0,Math.min(1,t)))?"rgb(":"rgba(")+Math.max(0,Math.min(255,Math.round(this.r)||0))+", "+Math.max(0,Math.min(255,Math.round(this.g)||0))+", "+Math.max(0,Math.min(255,Math.round(this.b)||0))+(1===t?")":", "+t+")")}function cr(t){return((t=Math.max(0,Math.min(255,Math.round(t)||0)))<16?"0":"")+t.toString(16)}function lr(t,e,n,r){return r<=0?t=e=n=NaN:n<=0||n>=1?t=e=NaN:e<=0&&(t=NaN),new dr(t,e,n,r)}function ur(t){if(t instanceof dr)return new dr(t.h,t.s,t.l,t.opacity);if(t instanceof Pn||(t=tr(t)),!t)return new dr;if(t instanceof dr)return t;var e=(t=t.rgb()).r/255,n=t.g/255,r=t.b/255,i=Math.min(e,n,r),a=Math.max(e,n,r),o=NaN,s=a-i,c=(a+i)/2;return s?(o=e===a?(n-r)/s+6*(n<r):n===a?(r-e)/s+2:(e-n)/s+4,s/=c<.5?a+i:2-a-i,o*=60):s=c>0&&c<1?0:o,new dr(o,s,c,t.opacity)}function hr(t,e,n,r){return 1===arguments.length?ur(t):new dr(t,e,n,null==r?1:r)}function dr(t,e,n,r){this.h=+t,this.s=+e,this.l=+n,this.opacity=+r}function fr(t,e,n){return 255*(t<60?e+(n-e)*t/60:t<180?n:t<240?e+(n-e)*(240-t)/60:e)}function pr(t,e,n,r,i){var a=t*t,o=a*t;return((1-3*t+3*a-o)*e+(4-6*a+3*o)*n+(1+3*t+3*a-3*o)*r+o*i)/6}function gr(t){var e=t.length-1;return function(n){var r=n<=0?n=0:n>=1?(n=1,e-1):Math.floor(n*e),i=t[r],a=t[r+1],o=r>0?t[r-1]:2*i-a,s=r<e-1?t[r+2]:2*a-i;return pr((n-r/e)*e,o,i,a,s)}}function yr(t){var e=t.length;return function(n){var r=Math.floor(((n%=1)<0?++n:n)*e),i=t[(r+e-1)%e],a=t[r%e],o=t[(r+1)%e],s=t[(r+2)%e];return pr((n-r/e)*e,i,a,o,s)}}Fn(Pn,tr,{copy:function(t){return Object.assign(new this.constructor,this,t)},displayable:function(){return this.rgb().displayable()},hex:Kn,formatHex:Kn,formatHsl:function(){return ur(this).formatHsl()},formatRgb:Jn,toString:Jn}),Fn(ar,ir,Rn(Pn,{brighter:function(t){return t=null==t?zn:Math.pow(zn,t),new ar(this.r*t,this.g*t,this.b*t,this.opacity)},darker:function(t){return t=null==t?jn:Math.pow(jn,t),new ar(this.r*t,this.g*t,this.b*t,this.opacity)},rgb:function(){return this},displayable:function(){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:or,formatHex:or,formatRgb:sr,toString:sr})),Fn(dr,hr,Rn(Pn,{brighter:function(t){return t=null==t?zn:Math.pow(zn,t),new dr(this.h,this.s,this.l*t,this.opacity)},darker:function(t){return t=null==t?jn:Math.pow(jn,t),new dr(this.h,this.s,this.l*t,this.opacity)},rgb:function(){var t=this.h%360+360*(this.h<0),e=isNaN(t)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*e,i=2*n-r;return new ar(fr(t>=240?t-240:t+120,i,r),fr(t,i,r),fr(t<120?t+240:t-120,i,r),this.opacity)},displayable:function(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl:function(){var t=this.opacity;return(1===(t=isNaN(t)?1:Math.max(0,Math.min(1,t)))?"hsl(":"hsla(")+(this.h||0)+", "+100*(this.s||0)+"%, "+100*(this.l||0)+"%"+(1===t?")":", "+t+")")}}));const mr=t=>()=>t;function br(t,e){return function(n){return t+n*e}}function vr(t,e){var n=e-t;return n?br(t,n>180||n<-180?n-360*Math.round(n/360):n):mr(isNaN(t)?e:t)}function _r(t,e){var n=e-t;return n?br(t,n):mr(isNaN(t)?e:t)}const xr=function t(e){var n=function(t){return 1==(t=+t)?_r:function(e,n){return n-e?function(t,e,n){return t=Math.pow(t,n),e=Math.pow(e,n)-t,n=1/n,function(r){return Math.pow(t+r*e,n)}}(e,n,t):mr(isNaN(e)?n:e)}}(e);function r(t,e){var r=n((t=ir(t)).r,(e=ir(e)).r),i=n(t.g,e.g),a=n(t.b,e.b),o=_r(t.opacity,e.opacity);return function(e){return t.r=r(e),t.g=i(e),t.b=a(e),t.opacity=o(e),t+""}}return r.gamma=t,r}(1);function kr(t){return function(e){var n,r,i=e.length,a=new Array(i),o=new Array(i),s=new Array(i);for(n=0;n<i;++n)r=ir(e[n]),a[n]=r.r||0,o[n]=r.g||0,s[n]=r.b||0;return a=t(a),o=t(o),s=t(s),r.opacity=1,function(t){return r.r=a(t),r.g=o(t),r.b=s(t),r+""}}}var wr=kr(gr),Er=kr(yr);function Tr(t,e){e||(e=[]);var n,r=t?Math.min(e.length,t.length):0,i=e.slice();return function(a){for(n=0;n<r;++n)i[n]=t[n]*(1-a)+e[n]*a;return i}}function Cr(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)}function Sr(t,e){return(Cr(e)?Tr:Ar)(t,e)}function Ar(t,e){var n,r=e?e.length:0,i=t?Math.min(r,t.length):0,a=new Array(i),o=new Array(r);for(n=0;n<i;++n)a[n]=Ir(t[n],e[n]);for(;n<r;++n)o[n]=e[n];return function(t){for(n=0;n<i;++n)o[n]=a[n](t);return o}}function Mr(t,e){var n=new Date;return t=+t,e=+e,function(r){return n.setTime(t*(1-r)+e*r),n}}function Or(t,e){return t=+t,e=+e,function(n){return t*(1-n)+e*n}}function Nr(t,e){var n,r={},i={};for(n in null!==t&&"object"==typeof t||(t={}),null!==e&&"object"==typeof e||(e={}),e)n in t?r[n]=Ir(t[n],e[n]):i[n]=e[n];return function(t){for(n in r)i[n]=r[n](t);return i}}var Dr=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Br=new RegExp(Dr.source,"g");function Lr(t,e){var n,r,i,a=Dr.lastIndex=Br.lastIndex=0,o=-1,s=[],c=[];for(t+="",e+="";(n=Dr.exec(t))&&(r=Br.exec(e));)(i=r.index)>a&&(i=e.slice(a,i),s[o]?s[o]+=i:s[++o]=i),(n=n[0])===(r=r[0])?s[o]?s[o]+=r:s[++o]=r:(s[++o]=null,c.push({i:o,x:Or(n,r)})),a=Br.lastIndex;return a<e.length&&(i=e.slice(a),s[o]?s[o]+=i:s[++o]=i),s.length<2?c[0]?function(t){return function(e){return t(e)+""}}(c[0].x):function(t){return function(){return t}}(e):(e=c.length,function(t){for(var n,r=0;r<e;++r)s[(n=c[r]).i]=n.x(t);return s.join("")})}function Ir(t,e){var n,r=typeof e;return null==e||"boolean"===r?mr(e):("number"===r?Or:"string"===r?(n=tr(e))?(e=n,xr):Lr:e instanceof tr?xr:e instanceof Date?Mr:Cr(e)?Tr:Array.isArray(e)?Ar:"function"!=typeof e.valueOf&&"function"!=typeof e.toString||isNaN(e)?Nr:Or)(t,e)}function Fr(t){let e;for(;e=t.sourceEvent;)t=e;return t}function Rr(t,e){if(t=Fr(t),void 0===e&&(e=t.currentTarget),e){var n=e.ownerSVGElement||e;if(n.createSVGPoint){var r=n.createSVGPoint();return r.x=t.clientX,r.y=t.clientY,[(r=r.matrixTransform(e.getScreenCTM().inverse())).x,r.y]}if(e.getBoundingClientRect){var i=e.getBoundingClientRect();return[t.clientX-i.left-e.clientLeft,t.clientY-i.top-e.clientTop]}}return[t.pageX,t.pageY]}var Pr,jr,zr=0,Yr=0,Ur=0,$r=0,Wr=0,qr=0,Hr="object"==typeof performance&&performance.now?performance:Date,Vr="object"==typeof window&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};function Gr(){return Wr||(Vr(Xr),Wr=Hr.now()+qr)}function Xr(){Wr=0}function Zr(){this._call=this._time=this._next=null}function Qr(t,e,n){var r=new Zr;return r.restart(t,e,n),r}function Kr(){Gr(),++zr;for(var t,e=Pr;e;)(t=Wr-e._time)>=0&&e._call.call(void 0,t),e=e._next;--zr}function Jr(){Wr=($r=Hr.now())+qr,zr=Yr=0;try{Kr()}finally{zr=0,function(){for(var t,e,n=Pr,r=1/0;n;)n._call?(r>n._time&&(r=n._time),t=n,n=n._next):(e=n._next,n._next=null,n=t?t._next=e:Pr=e);jr=t,ei(r)}(),Wr=0}}function ti(){var t=Hr.now(),e=t-$r;e>1e3&&(qr-=e,$r=t)}function ei(t){zr||(Yr&&(Yr=clearTimeout(Yr)),t-Wr>24?(t<1/0&&(Yr=setTimeout(Jr,t-Hr.now()-qr)),Ur&&(Ur=clearInterval(Ur))):(Ur||($r=Hr.now(),Ur=setInterval(ti,1e3)),zr=1,Vr(Jr)))}function ni(t,e,n){var r=new Zr;return e=null==e?0:+e,r.restart((n=>{r.stop(),t(n+e)}),e,n),r}Zr.prototype=Qr.prototype={constructor:Zr,restart:function(t,e,n){if("function"!=typeof t)throw new TypeError("callback is not a function");n=(null==n?Gr():+n)+(null==e?0:+e),this._next||jr===this||(jr?jr._next=this:Pr=this,jr=this),this._call=t,this._time=n,ei()},stop:function(){this._call&&(this._call=null,this._time=1/0,ei())}};var ri=de("start","end","cancel","interrupt"),ii=[];function ai(t,e,n,r,i,a){var o=t.__transition;if(o){if(n in o)return}else t.__transition={};!function(t,e,n){var r,i=t.__transition;function a(c){var l,u,h,d;if(1!==n.state)return s();for(l in i)if((d=i[l]).name===n.name){if(3===d.state)return ni(a);4===d.state?(d.state=6,d.timer.stop(),d.on.call("interrupt",t,t.__data__,d.index,d.group),delete i[l]):+l<e&&(d.state=6,d.timer.stop(),d.on.call("cancel",t,t.__data__,d.index,d.group),delete i[l])}if(ni((function(){3===n.state&&(n.state=4,n.timer.restart(o,n.delay,n.time),o(c))})),n.state=2,n.on.call("start",t,t.__data__,n.index,n.group),2===n.state){for(n.state=3,r=new Array(h=n.tween.length),l=0,u=-1;l<h;++l)(d=n.tween[l].value.call(t,t.__data__,n.index,n.group))&&(r[++u]=d);r.length=u+1}}function o(e){for(var i=e<n.duration?n.ease.call(null,e/n.duration):(n.timer.restart(s),n.state=5,1),a=-1,o=r.length;++a<o;)r[a].call(t,i);5===n.state&&(n.on.call("end",t,t.__data__,n.index,n.group),s())}function s(){for(var r in n.state=6,n.timer.stop(),delete i[e],i)return;delete t.__transition}i[e]=n,n.timer=Qr((function(t){n.state=1,n.timer.restart(a,n.delay,n.time),n.delay<=t&&a(t-n.delay)}),0,n.time)}(t,n,{name:e,index:r,group:i,on:ri,tween:ii,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:0})}function oi(t,e){var n=ci(t,e);if(n.state>0)throw new Error("too late; already scheduled");return n}function si(t,e){var n=ci(t,e);if(n.state>3)throw new Error("too late; already running");return n}function ci(t,e){var n=t.__transition;if(!n||!(n=n[e]))throw new Error("transition not found");return n}function li(t,e){var n,r,i,a=t.__transition,o=!0;if(a){for(i in e=null==e?null:e+"",a)(n=a[i]).name===e?(r=n.state>2&&n.state<5,n.state=6,n.timer.stop(),n.on.call(r?"interrupt":"cancel",t,t.__data__,n.index,n.group),delete a[i]):o=!1;o&&delete t.__transition}}var ui,hi=180/Math.PI,di={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function fi(t,e,n,r,i,a){var o,s,c;return(o=Math.sqrt(t*t+e*e))&&(t/=o,e/=o),(c=t*n+e*r)&&(n-=t*c,r-=e*c),(s=Math.sqrt(n*n+r*r))&&(n/=s,r/=s,c/=s),t*r<e*n&&(t=-t,e=-e,c=-c,o=-o),{translateX:i,translateY:a,rotate:Math.atan2(e,t)*hi,skewX:Math.atan(c)*hi,scaleX:o,scaleY:s}}function pi(t,e,n,r){function i(t){return t.length?t.pop()+" ":""}return function(a,o){var s=[],c=[];return a=t(a),o=t(o),function(t,r,i,a,o,s){if(t!==i||r!==a){var c=o.push("translate(",null,e,null,n);s.push({i:c-4,x:Or(t,i)},{i:c-2,x:Or(r,a)})}else(i||a)&&o.push("translate("+i+e+a+n)}(a.translateX,a.translateY,o.translateX,o.translateY,s,c),function(t,e,n,a){t!==e?(t-e>180?e+=360:e-t>180&&(t+=360),a.push({i:n.push(i(n)+"rotate(",null,r)-2,x:Or(t,e)})):e&&n.push(i(n)+"rotate("+e+r)}(a.rotate,o.rotate,s,c),function(t,e,n,a){t!==e?a.push({i:n.push(i(n)+"skewX(",null,r)-2,x:Or(t,e)}):e&&n.push(i(n)+"skewX("+e+r)}(a.skewX,o.skewX,s,c),function(t,e,n,r,a,o){if(t!==n||e!==r){var s=a.push(i(a)+"scale(",null,",",null,")");o.push({i:s-4,x:Or(t,n)},{i:s-2,x:Or(e,r)})}else 1===n&&1===r||a.push(i(a)+"scale("+n+","+r+")")}(a.scaleX,a.scaleY,o.scaleX,o.scaleY,s,c),a=o=null,function(t){for(var e,n=-1,r=c.length;++n<r;)s[(e=c[n]).i]=e.x(t);return s.join("")}}}var gi=pi((function(t){const e=new("function"==typeof DOMMatrix?DOMMatrix:WebKitCSSMatrix)(t+"");return e.isIdentity?di:fi(e.a,e.b,e.c,e.d,e.e,e.f)}),"px, ","px)","deg)"),yi=pi((function(t){return null==t?di:(ui||(ui=document.createElementNS("http://www.w3.org/2000/svg","g")),ui.setAttribute("transform",t),(t=ui.transform.baseVal.consolidate())?fi((t=t.matrix).a,t.b,t.c,t.d,t.e,t.f):di)}),", ",")",")");function mi(t,e){var n,r;return function(){var i=si(this,t),a=i.tween;if(a!==n)for(var o=0,s=(r=n=a).length;o<s;++o)if(r[o].name===e){(r=r.slice()).splice(o,1);break}i.tween=r}}function bi(t,e,n){var r,i;if("function"!=typeof n)throw new Error;return function(){var a=si(this,t),o=a.tween;if(o!==r){i=(r=o).slice();for(var s={name:e,value:n},c=0,l=i.length;c<l;++c)if(i[c].name===e){i[c]=s;break}c===l&&i.push(s)}a.tween=i}}function vi(t,e,n){var r=t._id;return t.each((function(){var t=si(this,r);(t.value||(t.value={}))[e]=n.apply(this,arguments)})),function(t){return ci(t,r).value[e]}}function _i(t,e){var n;return("number"==typeof e?Or:e instanceof tr?xr:(n=tr(e))?(e=n,xr):Lr)(t,e)}function xi(t){return function(){this.removeAttribute(t)}}function ki(t){return function(){this.removeAttributeNS(t.space,t.local)}}function wi(t,e,n){var r,i,a=n+"";return function(){var o=this.getAttribute(t);return o===a?null:o===r?i:i=e(r=o,n)}}function Ei(t,e,n){var r,i,a=n+"";return function(){var o=this.getAttributeNS(t.space,t.local);return o===a?null:o===r?i:i=e(r=o,n)}}function Ti(t,e,n){var r,i,a;return function(){var o,s,c=n(this);if(null!=c)return(o=this.getAttribute(t))===(s=c+"")?null:o===r&&s===i?a:(i=s,a=e(r=o,c));this.removeAttribute(t)}}function Ci(t,e,n){var r,i,a;return function(){var o,s,c=n(this);if(null!=c)return(o=this.getAttributeNS(t.space,t.local))===(s=c+"")?null:o===r&&s===i?a:(i=s,a=e(r=o,c));this.removeAttributeNS(t.space,t.local)}}function Si(t,e){return function(n){this.setAttribute(t,e.call(this,n))}}function Ai(t,e){return function(n){this.setAttributeNS(t.space,t.local,e.call(this,n))}}function Mi(t,e){var n,r;function i(){var i=e.apply(this,arguments);return i!==r&&(n=(r=i)&&Ai(t,i)),n}return i._value=e,i}function Oi(t,e){var n,r;function i(){var i=e.apply(this,arguments);return i!==r&&(n=(r=i)&&Si(t,i)),n}return i._value=e,i}function Ni(t,e){return function(){oi(this,t).delay=+e.apply(this,arguments)}}function Di(t,e){return e=+e,function(){oi(this,t).delay=e}}function Bi(t,e){return function(){si(this,t).duration=+e.apply(this,arguments)}}function Li(t,e){return e=+e,function(){si(this,t).duration=e}}function Ii(t,e){if("function"!=typeof e)throw new Error;return function(){si(this,t).ease=e}}function Fi(t,e,n){var r,i,a=function(t){return(t+"").trim().split(/^|\s+/).every((function(t){var e=t.indexOf(".");return e>=0&&(t=t.slice(0,e)),!t||"start"===t}))}(e)?oi:si;return function(){var o=a(this,t),s=o.on;s!==r&&(i=(r=s).copy()).on(e,n),o.on=i}}var Ri=An.prototype.constructor;function Pi(t){return function(){this.style.removeProperty(t)}}function ji(t,e,n){return function(r){this.style.setProperty(t,e.call(this,r),n)}}function zi(t,e,n){var r,i;function a(){var a=e.apply(this,arguments);return a!==i&&(r=(i=a)&&ji(t,a,n)),r}return a._value=e,a}function Yi(t){return function(e){this.textContent=t.call(this,e)}}function Ui(t){var e,n;function r(){var r=t.apply(this,arguments);return r!==n&&(e=(n=r)&&Yi(r)),e}return r._value=t,r}var $i=0;function Wi(t,e,n,r){this._groups=t,this._parents=e,this._name=n,this._id=r}function qi(t){return An().transition(t)}function Hi(){return++$i}var Vi=An.prototype;function Gi(t){return t*t*t}function Xi(t){return--t*t*t+1}function Zi(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}Wi.prototype=qi.prototype={constructor:Wi,select:function(t){var e=this._name,n=this._id;"function"!=typeof t&&(t=pe(t));for(var r=this._groups,i=r.length,a=new Array(i),o=0;o<i;++o)for(var s,c,l=r[o],u=l.length,h=a[o]=new Array(u),d=0;d<u;++d)(s=l[d])&&(c=t.call(s,s.__data__,d,l))&&("__data__"in s&&(c.__data__=s.__data__),h[d]=c,ai(h[d],e,n,d,h,ci(s,n)));return new Wi(a,this._parents,e,n)},selectAll:function(t){var e=this._name,n=this._id;"function"!=typeof t&&(t=me(t));for(var r=this._groups,i=r.length,a=[],o=[],s=0;s<i;++s)for(var c,l=r[s],u=l.length,h=0;h<u;++h)if(c=l[h]){for(var d,f=t.call(c,c.__data__,h,l),p=ci(c,n),g=0,y=f.length;g<y;++g)(d=f[g])&&ai(d,e,n,g,f,p);a.push(f),o.push(c)}return new Wi(a,o,e,n)},selectChild:Vi.selectChild,selectChildren:Vi.selectChildren,filter:function(t){"function"!=typeof t&&(t=be(t));for(var e=this._groups,n=e.length,r=new Array(n),i=0;i<n;++i)for(var a,o=e[i],s=o.length,c=r[i]=[],l=0;l<s;++l)(a=o[l])&&t.call(a,a.__data__,l,o)&&c.push(a);return new Wi(r,this._parents,this._name,this._id)},merge:function(t){if(t._id!==this._id)throw new Error;for(var e=this._groups,n=t._groups,r=e.length,i=n.length,a=Math.min(r,i),o=new Array(r),s=0;s<a;++s)for(var c,l=e[s],u=n[s],h=l.length,d=o[s]=new Array(h),f=0;f<h;++f)(c=l[f]||u[f])&&(d[f]=c);for(;s<r;++s)o[s]=e[s];return new Wi(o,this._parents,this._name,this._id)},selection:function(){return new Ri(this._groups,this._parents)},transition:function(){for(var t=this._name,e=this._id,n=Hi(),r=this._groups,i=r.length,a=0;a<i;++a)for(var o,s=r[a],c=s.length,l=0;l<c;++l)if(o=s[l]){var u=ci(o,e);ai(o,t,n,l,s,{time:u.time+u.delay+u.duration,delay:0,duration:u.duration,ease:u.ease})}return new Wi(r,this._parents,t,n)},call:Vi.call,nodes:Vi.nodes,node:Vi.node,size:Vi.size,empty:Vi.empty,each:Vi.each,on:function(t,e){var n=this._id;return arguments.length<2?ci(this.node(),n).on.on(t):this.each(Fi(n,t,e))},attr:function(t,e){var n=Le(t),r="transform"===n?yi:_i;return this.attrTween(t,"function"==typeof e?(n.local?Ci:Ti)(n,r,vi(this,"attr."+t,e)):null==e?(n.local?ki:xi)(n):(n.local?Ei:wi)(n,r,e))},attrTween:function(t,e){var n="attr."+t;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(null==e)return this.tween(n,null);if("function"!=typeof e)throw new Error;var r=Le(t);return this.tween(n,(r.local?Mi:Oi)(r,e))},style:function(t,e,n){var r="transform"==(t+="")?gi:_i;return null==e?this.styleTween(t,function(t,e){var n,r,i;return function(){var a=qe(this,t),o=(this.style.removeProperty(t),qe(this,t));return a===o?null:a===n&&o===r?i:i=e(n=a,r=o)}}(t,r)).on("end.style."+t,Pi(t)):"function"==typeof e?this.styleTween(t,function(t,e,n){var r,i,a;return function(){var o=qe(this,t),s=n(this),c=s+"";return null==s&&(this.style.removeProperty(t),c=s=qe(this,t)),o===c?null:o===r&&c===i?a:(i=c,a=e(r=o,s))}}(t,r,vi(this,"style."+t,e))).each(function(t,e){var n,r,i,a,o="style."+e,s="end."+o;return function(){var c=si(this,t),l=c.on,u=null==c.value[o]?a||(a=Pi(e)):void 0;l===n&&i===u||(r=(n=l).copy()).on(s,i=u),c.on=r}}(this._id,t)):this.styleTween(t,function(t,e,n){var r,i,a=n+"";return function(){var o=qe(this,t);return o===a?null:o===r?i:i=e(r=o,n)}}(t,r,e),n).on("end.style."+t,null)},styleTween:function(t,e,n){var r="style."+(t+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(null==e)return this.tween(r,null);if("function"!=typeof e)throw new Error;return this.tween(r,zi(t,e,null==n?"":n))},text:function(t){return this.tween("text","function"==typeof t?function(t){return function(){var e=t(this);this.textContent=null==e?"":e}}(vi(this,"text",t)):function(t){return function(){this.textContent=t}}(null==t?"":t+""))},textTween:function(t){var e="text";if(arguments.length<1)return(e=this.tween(e))&&e._value;if(null==t)return this.tween(e,null);if("function"!=typeof t)throw new Error;return this.tween(e,Ui(t))},remove:function(){return this.on("end.remove",function(t){return function(){var e=this.parentNode;for(var n in this.__transition)if(+n!==t)return;e&&e.removeChild(this)}}(this._id))},tween:function(t,e){var n=this._id;if(t+="",arguments.length<2){for(var r,i=ci(this.node(),n).tween,a=0,o=i.length;a<o;++a)if((r=i[a]).name===t)return r.value;return null}return this.each((null==e?mi:bi)(n,t,e))},delay:function(t){var e=this._id;return arguments.length?this.each(("function"==typeof t?Ni:Di)(e,t)):ci(this.node(),e).delay},duration:function(t){var e=this._id;return arguments.length?this.each(("function"==typeof t?Bi:Li)(e,t)):ci(this.node(),e).duration},ease:function(t){var e=this._id;return arguments.length?this.each(Ii(e,t)):ci(this.node(),e).ease},easeVarying:function(t){if("function"!=typeof t)throw new Error;return this.each(function(t,e){return function(){var n=e.apply(this,arguments);if("function"!=typeof n)throw new Error;si(this,t).ease=n}}(this._id,t))},end:function(){var t,e,n=this,r=n._id,i=n.size();return new Promise((function(a,o){var s={value:o},c={value:function(){0==--i&&a()}};n.each((function(){var n=si(this,r),i=n.on;i!==t&&((e=(t=i).copy())._.cancel.push(s),e._.interrupt.push(s),e._.end.push(c)),n.on=e})),0===i&&a()}))},[Symbol.iterator]:Vi[Symbol.iterator]};var Qi={time:null,delay:0,duration:250,ease:Zi};function Ki(t,e){for(var n;!(n=t.__transition)||!(n=n[e]);)if(!(t=t.parentNode))throw new Error(`transition ${e} not found`);return n}An.prototype.interrupt=function(t){return this.each((function(){li(this,t)}))},An.prototype.transition=function(t){var e,n;t instanceof Wi?(e=t._id,t=t._name):(e=Hi(),(n=Qi).time=Gr(),t=null==t?null:t+"");for(var r=this._groups,i=r.length,a=0;a<i;++a)for(var o,s=r[a],c=s.length,l=0;l<c;++l)(o=s[l])&&ai(o,t,e,l,s,n||Ki(o,e));return new Wi(r,this._parents,t,e)};var Ji=[null];function ta(t,e){var n,r,i=t.__transition;if(i)for(r in e=null==e?null:e+"",i)if((n=i[r]).state>1&&n.name===e)return new Wi([[t]],Ji,e,+r);return null}const ea=t=>()=>t;function na(t,{sourceEvent:e,target:n,selection:r,mode:i,dispatch:a}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:e,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},selection:{value:r,enumerable:!0,configurable:!0},mode:{value:i,enumerable:!0,configurable:!0},_:{value:a}})}function ra(t){t.stopImmediatePropagation()}function ia(t){t.preventDefault(),t.stopImmediatePropagation()}var aa={name:"drag"},oa={name:"space"},sa={name:"handle"},ca={name:"center"};const{abs:la,max:ua,min:ha}=Math;function da(t){return[+t[0],+t[1]]}function fa(t){return[da(t[0]),da(t[1])]}var pa={name:"x",handles:["w","e"].map(ka),input:function(t,e){return null==t?null:[[+t[0],e[0][1]],[+t[1],e[1][1]]]},output:function(t){return t&&[t[0][0],t[1][0]]}},ga={name:"y",handles:["n","s"].map(ka),input:function(t,e){return null==t?null:[[e[0][0],+t[0]],[e[1][0],+t[1]]]},output:function(t){return t&&[t[0][1],t[1][1]]}},ya={name:"xy",handles:["n","w","e","s","nw","ne","sw","se"].map(ka),input:function(t){return null==t?null:fa(t)},output:function(t){return t}},ma={overlay:"crosshair",selection:"move",n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},ba={e:"w",w:"e",nw:"ne",ne:"nw",se:"sw",sw:"se"},va={n:"s",s:"n",nw:"sw",ne:"se",se:"ne",sw:"nw"},_a={overlay:1,selection:1,n:null,e:1,s:null,w:-1,nw:-1,ne:1,se:1,sw:-1},xa={overlay:1,selection:1,n:-1,e:null,s:1,w:null,nw:-1,ne:-1,se:1,sw:1};function ka(t){return{type:t}}function wa(t){return!t.ctrlKey&&!t.button}function Ea(){var t=this.ownerSVGElement||this;return t.hasAttribute("viewBox")?[[(t=t.viewBox.baseVal).x,t.y],[t.x+t.width,t.y+t.height]]:[[0,0],[t.width.baseVal.value,t.height.baseVal.value]]}function Ta(){return navigator.maxTouchPoints||"ontouchstart"in this}function Ca(t){for(;!t.__brush;)if(!(t=t.parentNode))return;return t.__brush}function Sa(t){return t[0][0]===t[1][0]||t[0][1]===t[1][1]}function Aa(t){var e=t.__brush;return e?e.dim.output(e.selection):null}function Ma(){return Da(pa)}function Oa(){return Da(ga)}function Na(){return Da(ya)}function Da(t){var e,n=Ea,r=wa,i=Ta,a=!0,o=de("start","brush","end"),s=6;function c(e){var n=e.property("__brush",g).selectAll(".overlay").data([ka("overlay")]);n.enter().append("rect").attr("class","overlay").attr("pointer-events","all").attr("cursor",ma.overlay).merge(n).each((function(){var t=Ca(this).extent;Mn(this).attr("x",t[0][0]).attr("y",t[0][1]).attr("width",t[1][0]-t[0][0]).attr("height",t[1][1]-t[0][1])})),e.selectAll(".selection").data([ka("selection")]).enter().append("rect").attr("class","selection").attr("cursor",ma.selection).attr("fill","#777").attr("fill-opacity",.3).attr("stroke","#fff").attr("shape-rendering","crispEdges");var r=e.selectAll(".handle").data(t.handles,(function(t){return t.type}));r.exit().remove(),r.enter().append("rect").attr("class",(function(t){return"handle handle--"+t.type})).attr("cursor",(function(t){return ma[t.type]})),e.each(l).attr("fill","none").attr("pointer-events","all").on("mousedown.brush",d).filter(i).on("touchstart.brush",d).on("touchmove.brush",f).on("touchend.brush touchcancel.brush",p).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function l(){var t=Mn(this),e=Ca(this).selection;e?(t.selectAll(".selection").style("display",null).attr("x",e[0][0]).attr("y",e[0][1]).attr("width",e[1][0]-e[0][0]).attr("height",e[1][1]-e[0][1]),t.selectAll(".handle").style("display",null).attr("x",(function(t){return"e"===t.type[t.type.length-1]?e[1][0]-s/2:e[0][0]-s/2})).attr("y",(function(t){return"s"===t.type[0]?e[1][1]-s/2:e[0][1]-s/2})).attr("width",(function(t){return"n"===t.type||"s"===t.type?e[1][0]-e[0][0]+s:s})).attr("height",(function(t){return"e"===t.type||"w"===t.type?e[1][1]-e[0][1]+s:s}))):t.selectAll(".selection,.handle").style("display","none").attr("x",null).attr("y",null).attr("width",null).attr("height",null)}function u(t,e,n){var r=t.__brush.emitter;return!r||n&&r.clean?new h(t,e,n):r}function h(t,e,n){this.that=t,this.args=e,this.state=t.__brush,this.active=0,this.clean=n}function d(n){if((!e||n.touches)&&r.apply(this,arguments)){var i,o,s,c,h,d,f,p,g,y,m,b=this,v=n.target.__data__.type,_="selection"===(a&&n.metaKey?v="overlay":v)?aa:a&&n.altKey?ca:sa,x=t===ga?null:_a[v],k=t===pa?null:xa[v],w=Ca(b),E=w.extent,T=w.selection,C=E[0][0],S=E[0][1],A=E[1][0],M=E[1][1],O=0,N=0,D=x&&k&&a&&n.shiftKey,B=Array.from(n.touches||[n],(t=>{const e=t.identifier;return(t=Rr(t,b)).point0=t.slice(),t.identifier=e,t}));li(b);var L=u(b,arguments,!0).beforestart();if("overlay"===v){T&&(g=!0);const e=[B[0],B[1]||B[0]];w.selection=T=[[i=t===ga?C:ha(e[0][0],e[1][0]),s=t===pa?S:ha(e[0][1],e[1][1])],[h=t===ga?A:ua(e[0][0],e[1][0]),f=t===pa?M:ua(e[0][1],e[1][1])]],B.length>1&&j(n)}else i=T[0][0],s=T[0][1],h=T[1][0],f=T[1][1];o=i,c=s,d=h,p=f;var I=Mn(b).attr("pointer-events","none"),F=I.selectAll(".overlay").attr("cursor",ma[v]);if(n.touches)L.moved=P,L.ended=z;else{var R=Mn(n.view).on("mousemove.brush",P,!0).on("mouseup.brush",z,!0);a&&R.on("keydown.brush",Y,!0).on("keyup.brush",U,!0),Ln(n.view)}l.call(b),L.start(n,_.name)}function P(t){for(const e of t.changedTouches||[t])for(const t of B)t.identifier===e.identifier&&(t.cur=Rr(e,b));if(D&&!y&&!m&&1===B.length){const t=B[0];la(t.cur[0]-t[0])>la(t.cur[1]-t[1])?m=!0:y=!0}for(const e of B)e.cur&&(e[0]=e.cur[0],e[1]=e.cur[1]);g=!0,ia(t),j(t)}function j(t){const e=B[0],n=e.point0;var r;switch(O=e[0]-n[0],N=e[1]-n[1],_){case oa:case aa:x&&(O=ua(C-i,ha(A-h,O)),o=i+O,d=h+O),k&&(N=ua(S-s,ha(M-f,N)),c=s+N,p=f+N);break;case sa:B[1]?(x&&(o=ua(C,ha(A,B[0][0])),d=ua(C,ha(A,B[1][0])),x=1),k&&(c=ua(S,ha(M,B[0][1])),p=ua(S,ha(M,B[1][1])),k=1)):(x<0?(O=ua(C-i,ha(A-i,O)),o=i+O,d=h):x>0&&(O=ua(C-h,ha(A-h,O)),o=i,d=h+O),k<0?(N=ua(S-s,ha(M-s,N)),c=s+N,p=f):k>0&&(N=ua(S-f,ha(M-f,N)),c=s,p=f+N));break;case ca:x&&(o=ua(C,ha(A,i-O*x)),d=ua(C,ha(A,h+O*x))),k&&(c=ua(S,ha(M,s-N*k)),p=ua(S,ha(M,f+N*k)))}d<o&&(x*=-1,r=i,i=h,h=r,r=o,o=d,d=r,v in ba&&F.attr("cursor",ma[v=ba[v]])),p<c&&(k*=-1,r=s,s=f,f=r,r=c,c=p,p=r,v in va&&F.attr("cursor",ma[v=va[v]])),w.selection&&(T=w.selection),y&&(o=T[0][0],d=T[1][0]),m&&(c=T[0][1],p=T[1][1]),T[0][0]===o&&T[0][1]===c&&T[1][0]===d&&T[1][1]===p||(w.selection=[[o,c],[d,p]],l.call(b),L.brush(t,_.name))}function z(t){if(ra(t),t.touches){if(t.touches.length)return;e&&clearTimeout(e),e=setTimeout((function(){e=null}),500)}else In(t.view,g),R.on("keydown.brush keyup.brush mousemove.brush mouseup.brush",null);I.attr("pointer-events","all"),F.attr("cursor",ma.overlay),w.selection&&(T=w.selection),Sa(T)&&(w.selection=null,l.call(b)),L.end(t,_.name)}function Y(t){switch(t.keyCode){case 16:D=x&&k;break;case 18:_===sa&&(x&&(h=d-O*x,i=o+O*x),k&&(f=p-N*k,s=c+N*k),_=ca,j(t));break;case 32:_!==sa&&_!==ca||(x<0?h=d-O:x>0&&(i=o-O),k<0?f=p-N:k>0&&(s=c-N),_=oa,F.attr("cursor",ma.selection),j(t));break;default:return}ia(t)}function U(t){switch(t.keyCode){case 16:D&&(y=m=D=!1,j(t));break;case 18:_===ca&&(x<0?h=d:x>0&&(i=o),k<0?f=p:k>0&&(s=c),_=sa,j(t));break;case 32:_===oa&&(t.altKey?(x&&(h=d-O*x,i=o+O*x),k&&(f=p-N*k,s=c+N*k),_=ca):(x<0?h=d:x>0&&(i=o),k<0?f=p:k>0&&(s=c),_=sa),F.attr("cursor",ma[v]),j(t));break;default:return}ia(t)}}function f(t){u(this,arguments).moved(t)}function p(t){u(this,arguments).ended(t)}function g(){var e=this.__brush||{selection:null};return e.extent=fa(n.apply(this,arguments)),e.dim=t,e}return c.move=function(e,n,r){e.tween?e.on("start.brush",(function(t){u(this,arguments).beforestart().start(t)})).on("interrupt.brush end.brush",(function(t){u(this,arguments).end(t)})).tween("brush",(function(){var e=this,r=e.__brush,i=u(e,arguments),a=r.selection,o=t.input("function"==typeof n?n.apply(this,arguments):n,r.extent),s=Ir(a,o);function c(t){r.selection=1===t&&null===o?null:s(t),l.call(e),i.brush()}return null!==a&&null!==o?c:c(1)})):e.each((function(){var e=this,i=arguments,a=e.__brush,o=t.input("function"==typeof n?n.apply(e,i):n,a.extent),s=u(e,i).beforestart();li(e),a.selection=null===o?null:o,l.call(e),s.start(r).brush(r).end(r)}))},c.clear=function(t,e){c.move(t,null,e)},h.prototype={beforestart:function(){return 1==++this.active&&(this.state.emitter=this,this.starting=!0),this},start:function(t,e){return this.starting?(this.starting=!1,this.emit("start",t,e)):this.emit("brush",t),this},brush:function(t,e){return this.emit("brush",t,e),this},end:function(t,e){return 0==--this.active&&(delete this.state.emitter,this.emit("end",t,e)),this},emit:function(e,n,r){var i=Mn(this.that).datum();o.call(e,this.that,new na(e,{sourceEvent:n,target:c,selection:t.output(this.state.selection),mode:r,dispatch:o}),i)}},c.extent=function(t){return arguments.length?(n="function"==typeof t?t:ea(fa(t)),c):n},c.filter=function(t){return arguments.length?(r="function"==typeof t?t:ea(!!t),c):r},c.touchable=function(t){return arguments.length?(i="function"==typeof t?t:ea(!!t),c):i},c.handleSize=function(t){return arguments.length?(s=+t,c):s},c.keyModifiers=function(t){return arguments.length?(a=!!t,c):a},c.on=function(){var t=o.on.apply(o,arguments);return t===o?c:t},c}var Ba=Math.abs,La=Math.cos,Ia=Math.sin,Fa=Math.PI,Ra=Fa/2,Pa=2*Fa,ja=Math.max,za=1e-12;function Ya(t,e){return Array.from({length:e-t},((e,n)=>t+n))}function Ua(t){return function(e,n){return t(e.source.value+e.target.value,n.source.value+n.target.value)}}function $a(){return Ha(!1,!1)}function Wa(){return Ha(!1,!0)}function qa(){return Ha(!0,!1)}function Ha(t,e){var n=0,r=null,i=null,a=null;function o(o){var s,c=o.length,l=new Array(c),u=Ya(0,c),h=new Array(c*c),d=new Array(c),f=0;o=Float64Array.from({length:c*c},e?(t,e)=>o[e%c][e/c|0]:(t,e)=>o[e/c|0][e%c]);for(let e=0;e<c;++e){let n=0;for(let r=0;r<c;++r)n+=o[e*c+r]+t*o[r*c+e];f+=l[e]=n}s=(f=ja(0,Pa-n*c)/f)?n:Pa/c;{let e=0;r&&u.sort(((t,e)=>r(l[t],l[e])));for(const n of u){const r=e;if(t){const t=Ya(1+~c,c).filter((t=>t<0?o[~t*c+n]:o[n*c+t]));i&&t.sort(((t,e)=>i(t<0?-o[~t*c+n]:o[n*c+t],e<0?-o[~e*c+n]:o[n*c+e])));for(const r of t)r<0?(h[~r*c+n]||(h[~r*c+n]={source:null,target:null})).target={index:n,startAngle:e,endAngle:e+=o[~r*c+n]*f,value:o[~r*c+n]}:(h[n*c+r]||(h[n*c+r]={source:null,target:null})).source={index:n,startAngle:e,endAngle:e+=o[n*c+r]*f,value:o[n*c+r]};d[n]={index:n,startAngle:r,endAngle:e,value:l[n]}}else{const t=Ya(0,c).filter((t=>o[n*c+t]||o[t*c+n]));i&&t.sort(((t,e)=>i(o[n*c+t],o[n*c+e])));for(const r of t){let t;if(n<r?(t=h[n*c+r]||(h[n*c+r]={source:null,target:null}),t.source={index:n,startAngle:e,endAngle:e+=o[n*c+r]*f,value:o[n*c+r]}):(t=h[r*c+n]||(h[r*c+n]={source:null,target:null}),t.target={index:n,startAngle:e,endAngle:e+=o[n*c+r]*f,value:o[n*c+r]},n===r&&(t.source=t.target)),t.source&&t.target&&t.source.value<t.target.value){const e=t.source;t.source=t.target,t.target=e}}d[n]={index:n,startAngle:r,endAngle:e,value:l[n]}}e+=s}}return(h=Object.values(h)).groups=d,a?h.sort(a):h}return o.padAngle=function(t){return arguments.length?(n=ja(0,t),o):n},o.sortGroups=function(t){return arguments.length?(r=t,o):r},o.sortSubgroups=function(t){return arguments.length?(i=t,o):i},o.sortChords=function(t){return arguments.length?(null==t?a=null:(a=Ua(t))._=t,o):a&&a._},o}const Va=Math.PI,Ga=2*Va,Xa=1e-6,Za=Ga-Xa;function Qa(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function Ka(){return new Qa}Qa.prototype=Ka.prototype={constructor:Qa,moveTo:function(t,e){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)},closePath:function(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(t,e){this._+="L"+(this._x1=+t)+","+(this._y1=+e)},quadraticCurveTo:function(t,e,n,r){this._+="Q"+ +t+","+ +e+","+(this._x1=+n)+","+(this._y1=+r)},bezierCurveTo:function(t,e,n,r,i,a){this._+="C"+ +t+","+ +e+","+ +n+","+ +r+","+(this._x1=+i)+","+(this._y1=+a)},arcTo:function(t,e,n,r,i){t=+t,e=+e,n=+n,r=+r,i=+i;var a=this._x1,o=this._y1,s=n-t,c=r-e,l=a-t,u=o-e,h=l*l+u*u;if(i<0)throw new Error("negative radius: "+i);if(null===this._x1)this._+="M"+(this._x1=t)+","+(this._y1=e);else if(h>Xa)if(Math.abs(u*s-c*l)>Xa&&i){var d=n-a,f=r-o,p=s*s+c*c,g=d*d+f*f,y=Math.sqrt(p),m=Math.sqrt(h),b=i*Math.tan((Va-Math.acos((p+h-g)/(2*y*m)))/2),v=b/m,_=b/y;Math.abs(v-1)>Xa&&(this._+="L"+(t+v*l)+","+(e+v*u)),this._+="A"+i+","+i+",0,0,"+ +(u*d>l*f)+","+(this._x1=t+_*s)+","+(this._y1=e+_*c)}else this._+="L"+(this._x1=t)+","+(this._y1=e)},arc:function(t,e,n,r,i,a){t=+t,e=+e,a=!!a;var o=(n=+n)*Math.cos(r),s=n*Math.sin(r),c=t+o,l=e+s,u=1^a,h=a?r-i:i-r;if(n<0)throw new Error("negative radius: "+n);null===this._x1?this._+="M"+c+","+l:(Math.abs(this._x1-c)>Xa||Math.abs(this._y1-l)>Xa)&&(this._+="L"+c+","+l),n&&(h<0&&(h=h%Ga+Ga),h>Za?this._+="A"+n+","+n+",0,1,"+u+","+(t-o)+","+(e-s)+"A"+n+","+n+",0,1,"+u+","+(this._x1=c)+","+(this._y1=l):h>Xa&&(this._+="A"+n+","+n+",0,"+ +(h>=Va)+","+u+","+(this._x1=t+n*Math.cos(i))+","+(this._y1=e+n*Math.sin(i))))},rect:function(t,e,n,r){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)+"h"+ +n+"v"+ +r+"h"+-n+"Z"},toString:function(){return this._}};const Ja=Ka;var to=Array.prototype.slice;function eo(t){return function(){return t}}function no(t){return t.source}function ro(t){return t.target}function io(t){return t.radius}function ao(t){return t.startAngle}function oo(t){return t.endAngle}function so(){return 0}function co(){return 10}function lo(t){var e=no,n=ro,r=io,i=io,a=ao,o=oo,s=so,c=null;function l(){var l,u=e.apply(this,arguments),h=n.apply(this,arguments),d=s.apply(this,arguments)/2,f=to.call(arguments),p=+r.apply(this,(f[0]=u,f)),g=a.apply(this,f)-Ra,y=o.apply(this,f)-Ra,m=+i.apply(this,(f[0]=h,f)),b=a.apply(this,f)-Ra,v=o.apply(this,f)-Ra;if(c||(c=l=Ja()),d>za&&(Ba(y-g)>2*d+za?y>g?(g+=d,y-=d):(g-=d,y+=d):g=y=(g+y)/2,Ba(v-b)>2*d+za?v>b?(b+=d,v-=d):(b-=d,v+=d):b=v=(b+v)/2),c.moveTo(p*La(g),p*Ia(g)),c.arc(0,0,p,g,y),g!==b||y!==v)if(t){var _=+t.apply(this,arguments),x=m-_,k=(b+v)/2;c.quadraticCurveTo(0,0,x*La(b),x*Ia(b)),c.lineTo(m*La(k),m*Ia(k)),c.lineTo(x*La(v),x*Ia(v))}else c.quadraticCurveTo(0,0,m*La(b),m*Ia(b)),c.arc(0,0,m,b,v);if(c.quadraticCurveTo(0,0,p*La(g),p*Ia(g)),c.closePath(),l)return c=null,l+""||null}return t&&(l.headRadius=function(e){return arguments.length?(t="function"==typeof e?e:eo(+e),l):t}),l.radius=function(t){return arguments.length?(r=i="function"==typeof t?t:eo(+t),l):r},l.sourceRadius=function(t){return arguments.length?(r="function"==typeof t?t:eo(+t),l):r},l.targetRadius=function(t){return arguments.length?(i="function"==typeof t?t:eo(+t),l):i},l.startAngle=function(t){return arguments.length?(a="function"==typeof t?t:eo(+t),l):a},l.endAngle=function(t){return arguments.length?(o="function"==typeof t?t:eo(+t),l):o},l.padAngle=function(t){return arguments.length?(s="function"==typeof t?t:eo(+t),l):s},l.source=function(t){return arguments.length?(e=t,l):e},l.target=function(t){return arguments.length?(n=t,l):n},l.context=function(t){return arguments.length?(c=null==t?null:t,l):c},l}function uo(){return lo()}function ho(){return lo(co)}const fo=Math.PI/180,po=180/Math.PI,go=.96422,yo=.82521,mo=4/29,bo=6/29,vo=3*bo*bo;function _o(t){if(t instanceof wo)return new wo(t.l,t.a,t.b,t.opacity);if(t instanceof No)return Do(t);t instanceof ar||(t=rr(t));var e,n,r=So(t.r),i=So(t.g),a=So(t.b),o=Eo((.2225045*r+.7168786*i+.0606169*a)/1);return r===i&&i===a?e=n=o:(e=Eo((.4360747*r+.3850649*i+.1430804*a)/go),n=Eo((.0139322*r+.0971045*i+.7141733*a)/yo)),new wo(116*o-16,500*(e-o),200*(o-n),t.opacity)}function xo(t,e){return new wo(t,0,0,null==e?1:e)}function ko(t,e,n,r){return 1===arguments.length?_o(t):new wo(t,e,n,null==r?1:r)}function wo(t,e,n,r){this.l=+t,this.a=+e,this.b=+n,this.opacity=+r}function Eo(t){return t>.008856451679035631?Math.pow(t,1/3):t/vo+mo}function To(t){return t>bo?t*t*t:vo*(t-mo)}function Co(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function So(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function Ao(t){if(t instanceof No)return new No(t.h,t.c,t.l,t.opacity);if(t instanceof wo||(t=_o(t)),0===t.a&&0===t.b)return new No(NaN,0<t.l&&t.l<100?0:NaN,t.l,t.opacity);var e=Math.atan2(t.b,t.a)*po;return new No(e<0?e+360:e,Math.sqrt(t.a*t.a+t.b*t.b),t.l,t.opacity)}function Mo(t,e,n,r){return 1===arguments.length?Ao(t):new No(n,e,t,null==r?1:r)}function Oo(t,e,n,r){return 1===arguments.length?Ao(t):new No(t,e,n,null==r?1:r)}function No(t,e,n,r){this.h=+t,this.c=+e,this.l=+n,this.opacity=+r}function Do(t){if(isNaN(t.h))return new wo(t.l,0,0,t.opacity);var e=t.h*fo;return new wo(t.l,Math.cos(e)*t.c,Math.sin(e)*t.c,t.opacity)}Fn(wo,ko,Rn(Pn,{brighter:function(t){return new wo(this.l+18*(null==t?1:t),this.a,this.b,this.opacity)},darker:function(t){return new wo(this.l-18*(null==t?1:t),this.a,this.b,this.opacity)},rgb:function(){var t=(this.l+16)/116,e=isNaN(this.a)?t:t+this.a/500,n=isNaN(this.b)?t:t-this.b/200;return new ar(Co(3.1338561*(e=go*To(e))-1.6168667*(t=1*To(t))-.4906146*(n=yo*To(n))),Co(-.9787684*e+1.9161415*t+.033454*n),Co(.0719453*e-.2289914*t+1.4052427*n),this.opacity)}})),Fn(No,Oo,Rn(Pn,{brighter:function(t){return new No(this.h,this.c,this.l+18*(null==t?1:t),this.opacity)},darker:function(t){return new No(this.h,this.c,this.l-18*(null==t?1:t),this.opacity)},rgb:function(){return Do(this).rgb()}}));var Bo=-.14861,Lo=1.78277,Io=-.29227,Fo=-.90649,Ro=1.97294,Po=Ro*Fo,jo=Ro*Lo,zo=Lo*Io-Fo*Bo;function Yo(t){if(t instanceof $o)return new $o(t.h,t.s,t.l,t.opacity);t instanceof ar||(t=rr(t));var e=t.r/255,n=t.g/255,r=t.b/255,i=(zo*r+Po*e-jo*n)/(zo+Po-jo),a=r-i,o=(Ro*(n-i)-Io*a)/Fo,s=Math.sqrt(o*o+a*a)/(Ro*i*(1-i)),c=s?Math.atan2(o,a)*po-120:NaN;return new $o(c<0?c+360:c,s,i,t.opacity)}function Uo(t,e,n,r){return 1===arguments.length?Yo(t):new $o(t,e,n,null==r?1:r)}function $o(t,e,n,r){this.h=+t,this.s=+e,this.l=+n,this.opacity=+r}Fn($o,Uo,Rn(Pn,{brighter:function(t){return t=null==t?zn:Math.pow(zn,t),new $o(this.h,this.s,this.l*t,this.opacity)},darker:function(t){return t=null==t?jn:Math.pow(jn,t),new $o(this.h,this.s,this.l*t,this.opacity)},rgb:function(){var t=isNaN(this.h)?0:(this.h+120)*fo,e=+this.l,n=isNaN(this.s)?0:this.s*e*(1-e),r=Math.cos(t),i=Math.sin(t);return new ar(255*(e+n*(Bo*r+Lo*i)),255*(e+n*(Io*r+Fo*i)),255*(e+n*(Ro*r)),this.opacity)}}));var Wo=Array.prototype.slice;function qo(t,e){return t-e}const Ho=t=>()=>t;function Vo(t,e){for(var n,r=-1,i=e.length;++r<i;)if(n=Go(t,e[r]))return n;return 0}function Go(t,e){for(var n=e[0],r=e[1],i=-1,a=0,o=t.length,s=o-1;a<o;s=a++){var c=t[a],l=c[0],u=c[1],h=t[s],d=h[0],f=h[1];if(Xo(c,h,e))return 0;u>r!=f>r&&n<(d-l)*(r-u)/(f-u)+l&&(i=-i)}return i}function Xo(t,e,n){var r,i,a,o;return function(t,e,n){return(e[0]-t[0])*(n[1]-t[1])==(n[0]-t[0])*(e[1]-t[1])}(t,e,n)&&(i=t[r=+(t[0]===e[0])],a=n[r],o=e[r],i<=a&&a<=o||o<=a&&a<=i)}function Zo(){}var Qo=[[],[[[1,1.5],[.5,1]]],[[[1.5,1],[1,1.5]]],[[[1.5,1],[.5,1]]],[[[1,.5],[1.5,1]]],[[[1,1.5],[.5,1]],[[1,.5],[1.5,1]]],[[[1,.5],[1,1.5]]],[[[1,.5],[.5,1]]],[[[.5,1],[1,.5]]],[[[1,1.5],[1,.5]]],[[[.5,1],[1,.5]],[[1.5,1],[1,1.5]]],[[[1.5,1],[1,.5]]],[[[.5,1],[1.5,1]]],[[[1,1.5],[1.5,1]]],[[[.5,1],[1,1.5]]],[]];function Ko(){var t=1,e=1,n=rt,r=s;function i(t){var e=n(t);if(Array.isArray(e))e=e.slice().sort(qo);else{const n=_(t),r=et(n[0],n[1],e);e=J(Math.floor(n[0]/r)*r,Math.floor(n[1]/r-1)*r,e)}return e.map((e=>a(t,e)))}function a(n,i){var a=[],s=[];return function(n,r,i){var a,s,c,l,u,h,d=new Array,f=new Array;for(a=s=-1,l=n[0]>=r,Qo[l<<1].forEach(p);++a<t-1;)c=l,l=n[a+1]>=r,Qo[c|l<<1].forEach(p);for(Qo[l<<0].forEach(p);++s<e-1;){for(a=-1,l=n[s*t+t]>=r,u=n[s*t]>=r,Qo[l<<1|u<<2].forEach(p);++a<t-1;)c=l,l=n[s*t+t+a+1]>=r,h=u,u=n[s*t+a+1]>=r,Qo[c|l<<1|u<<2|h<<3].forEach(p);Qo[l|u<<3].forEach(p)}for(a=-1,u=n[s*t]>=r,Qo[u<<2].forEach(p);++a<t-1;)h=u,u=n[s*t+a+1]>=r,Qo[u<<2|h<<3].forEach(p);function p(t){var e,n,r=[t[0][0]+a,t[0][1]+s],c=[t[1][0]+a,t[1][1]+s],l=o(r),u=o(c);(e=f[l])?(n=d[u])?(delete f[e.end],delete d[n.start],e===n?(e.ring.push(c),i(e.ring)):d[e.start]=f[n.end]={start:e.start,end:n.end,ring:e.ring.concat(n.ring)}):(delete f[e.end],e.ring.push(c),f[e.end=u]=e):(e=d[u])?(n=f[l])?(delete d[e.start],delete f[n.end],e===n?(e.ring.push(c),i(e.ring)):d[n.start]=f[e.end]={start:n.start,end:e.end,ring:n.ring.concat(e.ring)}):(delete d[e.start],e.ring.unshift(r),d[e.start=l]=e):d[l]=f[u]={start:l,end:u,ring:[r,c]}}Qo[u<<3].forEach(p)}(n,i,(function(t){r(t,n,i),function(t){for(var e=0,n=t.length,r=t[n-1][1]*t[0][0]-t[n-1][0]*t[0][1];++e<n;)r+=t[e-1][1]*t[e][0]-t[e-1][0]*t[e][1];return r}(t)>0?a.push([t]):s.push(t)})),s.forEach((function(t){for(var e,n=0,r=a.length;n<r;++n)if(-1!==Vo((e=a[n])[0],t))return void e.push(t)})),{type:"MultiPolygon",value:i,coordinates:a}}function o(e){return 2*e[0]+e[1]*(t+1)*4}function s(n,r,i){n.forEach((function(n){var a,o=n[0],s=n[1],c=0|o,l=0|s,u=r[l*t+c];o>0&&o<t&&c===o&&(a=r[l*t+c-1],n[0]=o+(i-a)/(u-a)-.5),s>0&&s<e&&l===s&&(a=r[(l-1)*t+c],n[1]=s+(i-a)/(u-a)-.5)}))}return i.contour=a,i.size=function(n){if(!arguments.length)return[t,e];var r=Math.floor(n[0]),a=Math.floor(n[1]);if(!(r>=0&&a>=0))throw new Error("invalid size");return t=r,e=a,i},i.thresholds=function(t){return arguments.length?(n="function"==typeof t?t:Array.isArray(t)?Ho(Wo.call(t)):Ho(t),i):n},i.smooth=function(t){return arguments.length?(r=t?s:Zo,i):r===s},i}function Jo(t,e,n){for(var r=t.width,i=t.height,a=1+(n<<1),o=0;o<i;++o)for(var s=0,c=0;s<r+n;++s)s<r&&(c+=t.data[s+o*r]),s>=n&&(s>=a&&(c-=t.data[s-a+o*r]),e.data[s-n+o*r]=c/Math.min(s+1,r-1+a-s,a))}function ts(t,e,n){for(var r=t.width,i=t.height,a=1+(n<<1),o=0;o<r;++o)for(var s=0,c=0;s<i+n;++s)s<i&&(c+=t.data[o+s*r]),s>=n&&(s>=a&&(c-=t.data[o+(s-a)*r]),e.data[o+(s-n)*r]=c/Math.min(s+1,i-1+a-s,a))}function es(t){return t[0]}function ns(t){return t[1]}function rs(){return 1}function is(){var t=es,e=ns,n=rs,r=960,i=500,a=20,o=2,s=3*a,c=r+2*s>>o,l=i+2*s>>o,u=Ho(20);function h(r){var i=new Float32Array(c*l),h=new Float32Array(c*l),f=Math.pow(2,-o);r.forEach((function(r,a,o){var u=(t(r,a,o)+s)*f,h=(e(r,a,o)+s)*f,d=+n(r,a,o);if(u>=0&&u<c&&h>=0&&h<l){var p=Math.floor(u),g=Math.floor(h),y=u-p-.5,m=h-g-.5;i[p+g*c]+=(1-y)*(1-m)*d,i[p+1+g*c]+=y*(1-m)*d,i[p+1+(g+1)*c]+=y*m*d,i[p+(g+1)*c]+=(1-y)*m*d}})),Jo({width:c,height:l,data:i},{width:c,height:l,data:h},a>>o),ts({width:c,height:l,data:h},{width:c,height:l,data:i},a>>o),Jo({width:c,height:l,data:i},{width:c,height:l,data:h},a>>o),ts({width:c,height:l,data:h},{width:c,height:l,data:i},a>>o),Jo({width:c,height:l,data:i},{width:c,height:l,data:h},a>>o),ts({width:c,height:l,data:h},{width:c,height:l,data:i},a>>o);var p=u(i);if(!Array.isArray(p)){var g=at(i);p=et(0,g,p),(p=xt(0,Math.floor(g/p)*p,p)).shift()}return Ko().thresholds(p).size([c,l])(i).map(d)}function d(t){return t.value*=Math.pow(2,-2*o),t.coordinates.forEach(f),t}function f(t){t.forEach(p)}function p(t){t.forEach(g)}function g(t){t[0]=t[0]*Math.pow(2,o)-s,t[1]=t[1]*Math.pow(2,o)-s}function y(){return c=r+2*(s=3*a)>>o,l=i+2*s>>o,h}return h.x=function(e){return arguments.length?(t="function"==typeof e?e:Ho(+e),h):t},h.y=function(t){return arguments.length?(e="function"==typeof t?t:Ho(+t),h):e},h.weight=function(t){return arguments.length?(n="function"==typeof t?t:Ho(+t),h):n},h.size=function(t){if(!arguments.length)return[r,i];var e=+t[0],n=+t[1];if(!(e>=0&&n>=0))throw new Error("invalid size");return r=e,i=n,y()},h.cellSize=function(t){if(!arguments.length)return 1<<o;if(!((t=+t)>=1))throw new Error("invalid cell size");return o=Math.floor(Math.log(t)/Math.LN2),y()},h.thresholds=function(t){return arguments.length?(u="function"==typeof t?t:Array.isArray(t)?Ho(Wo.call(t)):Ho(t),h):u},h.bandwidth=function(t){if(!arguments.length)return Math.sqrt(a*(a+1));if(!((t=+t)>=0))throw new Error("invalid bandwidth");return a=Math.round((Math.sqrt(4*t*t+1)-1)/2),y()},h}const as=134217729;function os(t,e,n,r,i){let a,o,s,c,l=e[0],u=r[0],h=0,d=0;u>l==u>-l?(a=l,l=e[++h]):(a=u,u=r[++d]);let f=0;if(h<t&&d<n)for(u>l==u>-l?(o=l+a,s=a-(o-l),l=e[++h]):(o=u+a,s=a-(o-u),u=r[++d]),a=o,0!==s&&(i[f++]=s);h<t&&d<n;)u>l==u>-l?(o=a+l,c=o-a,s=a-(o-c)+(l-c),l=e[++h]):(o=a+u,c=o-a,s=a-(o-c)+(u-c),u=r[++d]),a=o,0!==s&&(i[f++]=s);for(;h<t;)o=a+l,c=o-a,s=a-(o-c)+(l-c),l=e[++h],a=o,0!==s&&(i[f++]=s);for(;d<n;)o=a+u,c=o-a,s=a-(o-c)+(u-c),u=r[++d],a=o,0!==s&&(i[f++]=s);return 0===a&&0!==f||(i[f++]=a),f}function ss(t){return new Float64Array(t)}const cs=ss(4),ls=ss(8),us=ss(12),hs=ss(16),ds=ss(4);function fs(t,e,n,r,i,a){const o=(e-a)*(n-i),s=(t-i)*(r-a),c=o-s;if(0===o||0===s||o>0!=s>0)return c;const l=Math.abs(o+s);return Math.abs(c)>=33306690738754716e-32*l?c:-function(t,e,n,r,i,a,o){let s,c,l,u,h,d,f,p,g,y,m,b,v,_,x,k,w,E;const T=t-i,C=n-i,S=e-a,A=r-a;_=T*A,d=as*T,f=d-(d-T),p=T-f,d=as*A,g=d-(d-A),y=A-g,x=p*y-(_-f*g-p*g-f*y),k=S*C,d=as*S,f=d-(d-S),p=S-f,d=as*C,g=d-(d-C),y=C-g,w=p*y-(k-f*g-p*g-f*y),m=x-w,h=x-m,cs[0]=x-(m+h)+(h-w),b=_+m,h=b-_,v=_-(b-h)+(m-h),m=v-k,h=v-m,cs[1]=v-(m+h)+(h-k),E=b+m,h=E-b,cs[2]=b-(E-h)+(m-h),cs[3]=E;let M=function(t,e){let n=e[0];for(let r=1;r<4;r++)n+=e[r];return n}(0,cs),O=22204460492503146e-32*o;if(M>=O||-M>=O)return M;if(h=t-T,s=t-(T+h)+(h-i),h=n-C,l=n-(C+h)+(h-i),h=e-S,c=e-(S+h)+(h-a),h=r-A,u=r-(A+h)+(h-a),0===s&&0===c&&0===l&&0===u)return M;if(O=11093356479670487e-47*o+33306690738754706e-32*Math.abs(M),M+=T*u+A*s-(S*l+C*c),M>=O||-M>=O)return M;_=s*A,d=as*s,f=d-(d-s),p=s-f,d=as*A,g=d-(d-A),y=A-g,x=p*y-(_-f*g-p*g-f*y),k=c*C,d=as*c,f=d-(d-c),p=c-f,d=as*C,g=d-(d-C),y=C-g,w=p*y-(k-f*g-p*g-f*y),m=x-w,h=x-m,ds[0]=x-(m+h)+(h-w),b=_+m,h=b-_,v=_-(b-h)+(m-h),m=v-k,h=v-m,ds[1]=v-(m+h)+(h-k),E=b+m,h=E-b,ds[2]=b-(E-h)+(m-h),ds[3]=E;const N=os(4,cs,4,ds,ls);_=T*u,d=as*T,f=d-(d-T),p=T-f,d=as*u,g=d-(d-u),y=u-g,x=p*y-(_-f*g-p*g-f*y),k=S*l,d=as*S,f=d-(d-S),p=S-f,d=as*l,g=d-(d-l),y=l-g,w=p*y-(k-f*g-p*g-f*y),m=x-w,h=x-m,ds[0]=x-(m+h)+(h-w),b=_+m,h=b-_,v=_-(b-h)+(m-h),m=v-k,h=v-m,ds[1]=v-(m+h)+(h-k),E=b+m,h=E-b,ds[2]=b-(E-h)+(m-h),ds[3]=E;const D=os(N,ls,4,ds,us);_=s*u,d=as*s,f=d-(d-s),p=s-f,d=as*u,g=d-(d-u),y=u-g,x=p*y-(_-f*g-p*g-f*y),k=c*l,d=as*c,f=d-(d-c),p=c-f,d=as*l,g=d-(d-l),y=l-g,w=p*y-(k-f*g-p*g-f*y),m=x-w,h=x-m,ds[0]=x-(m+h)+(h-w),b=_+m,h=b-_,v=_-(b-h)+(m-h),m=v-k,h=v-m,ds[1]=v-(m+h)+(h-k),E=b+m,h=E-b,ds[2]=b-(E-h)+(m-h),ds[3]=E;const B=os(D,us,4,ds,hs);return hs[B-1]}(t,e,n,r,i,a,l)}ss(4),ss(4),ss(4),ss(4),ss(4),ss(4),ss(4),ss(4),ss(4),ss(8),ss(8),ss(8),ss(4),ss(8),ss(8),ss(8),ss(12),ss(192),ss(192),ss(4),ss(4),ss(4),ss(4),ss(4),ss(4),ss(4),ss(4),ss(8),ss(8),ss(8),ss(8),ss(8),ss(8),ss(8),ss(8),ss(8),ss(4),ss(4),ss(4),ss(8),ss(16),ss(16),ss(16),ss(32),ss(32),ss(48),ss(64),ss(1152),ss(1152),ss(4),ss(4),ss(4),ss(4),ss(4),ss(4),ss(4),ss(4),ss(4),ss(4),ss(24),ss(24),ss(24),ss(24),ss(24),ss(24),ss(24),ss(24),ss(24),ss(24),ss(1152),ss(1152),ss(1152),ss(1152),ss(1152),ss(2304),ss(2304),ss(3456),ss(5760),ss(8),ss(8),ss(8),ss(16),ss(24),ss(48),ss(48),ss(96),ss(192),ss(384),ss(384),ss(384),ss(768),ss(96),ss(96),ss(96),ss(1152);const ps=Math.pow(2,-52),gs=new Uint32Array(512);class ys{static from(t,e=ks,n=ws){const r=t.length,i=new Float64Array(2*r);for(let a=0;a<r;a++){const r=t[a];i[2*a]=e(r),i[2*a+1]=n(r)}return new ys(i)}constructor(t){const e=t.length>>1;if(e>0&&"number"!=typeof t[0])throw new Error("Expected coords to contain numbers.");this.coords=t;const n=Math.max(2*e-5,0);this._triangles=new Uint32Array(3*n),this._halfedges=new Int32Array(3*n),this._hashSize=Math.ceil(Math.sqrt(e)),this._hullPrev=new Uint32Array(e),this._hullNext=new Uint32Array(e),this._hullTri=new Uint32Array(e),this._hullHash=new Int32Array(this._hashSize).fill(-1),this._ids=new Uint32Array(e),this._dists=new Float64Array(e),this.update()}update(){const{coords:t,_hullPrev:e,_hullNext:n,_hullTri:r,_hullHash:i}=this,a=t.length>>1;let o=1/0,s=1/0,c=-1/0,l=-1/0;for(let T=0;T<a;T++){const e=t[2*T],n=t[2*T+1];e<o&&(o=e),n<s&&(s=n),e>c&&(c=e),n>l&&(l=n),this._ids[T]=T}const u=(o+c)/2,h=(s+l)/2;let d,f,p,g=1/0;for(let T=0;T<a;T++){const e=ms(u,h,t[2*T],t[2*T+1]);e<g&&(d=T,g=e)}const y=t[2*d],m=t[2*d+1];g=1/0;for(let T=0;T<a;T++){if(T===d)continue;const e=ms(y,m,t[2*T],t[2*T+1]);e<g&&e>0&&(f=T,g=e)}let b=t[2*f],v=t[2*f+1],_=1/0;for(let T=0;T<a;T++){if(T===d||T===f)continue;const e=vs(y,m,b,v,t[2*T],t[2*T+1]);e<_&&(p=T,_=e)}let x=t[2*p],k=t[2*p+1];if(_===1/0){for(let r=0;r<a;r++)this._dists[r]=t[2*r]-t[0]||t[2*r+1]-t[1];_s(this._ids,this._dists,0,a-1);const e=new Uint32Array(a);let n=0;for(let t=0,r=-1/0;t<a;t++){const i=this._ids[t];this._dists[i]>r&&(e[n++]=i,r=this._dists[i])}return this.hull=e.subarray(0,n),this.triangles=new Uint32Array(0),void(this.halfedges=new Uint32Array(0))}if(fs(y,m,b,v,x,k)<0){const t=f,e=b,n=v;f=p,b=x,v=k,p=t,x=e,k=n}const w=function(t,e,n,r,i,a){const o=n-t,s=r-e,c=i-t,l=a-e,u=o*o+s*s,h=c*c+l*l,d=.5/(o*l-s*c);return{x:t+(l*u-s*h)*d,y:e+(o*h-c*u)*d}}(y,m,b,v,x,k);this._cx=w.x,this._cy=w.y;for(let T=0;T<a;T++)this._dists[T]=ms(t[2*T],t[2*T+1],w.x,w.y);_s(this._ids,this._dists,0,a-1),this._hullStart=d;let E=3;n[d]=e[p]=f,n[f]=e[d]=p,n[p]=e[f]=d,r[d]=0,r[f]=1,r[p]=2,i.fill(-1),i[this._hashKey(y,m)]=d,i[this._hashKey(b,v)]=f,i[this._hashKey(x,k)]=p,this.trianglesLen=0,this._addTriangle(d,f,p,-1,-1,-1);for(let T,C,S=0;S<this._ids.length;S++){const a=this._ids[S],o=t[2*a],s=t[2*a+1];if(S>0&&Math.abs(o-T)<=ps&&Math.abs(s-C)<=ps)continue;if(T=o,C=s,a===d||a===f||a===p)continue;let c=0;for(let t=0,e=this._hashKey(o,s);t<this._hashSize&&(c=i[(e+t)%this._hashSize],-1===c||c===n[c]);t++);c=e[c];let l,u=c;for(;l=n[u],fs(o,s,t[2*u],t[2*u+1],t[2*l],t[2*l+1])>=0;)if(u=l,u===c){u=-1;break}if(-1===u)continue;let h=this._addTriangle(u,a,n[u],-1,-1,r[u]);r[a]=this._legalize(h+2),r[u]=h,E++;let g=n[u];for(;l=n[g],fs(o,s,t[2*g],t[2*g+1],t[2*l],t[2*l+1])<0;)h=this._addTriangle(g,a,l,r[a],-1,r[g]),r[a]=this._legalize(h+2),n[g]=g,E--,g=l;if(u===c)for(;l=e[u],fs(o,s,t[2*l],t[2*l+1],t[2*u],t[2*u+1])<0;)h=this._addTriangle(l,a,u,-1,r[u],r[l]),this._legalize(h+2),r[l]=h,n[u]=u,E--,u=l;this._hullStart=e[a]=u,n[u]=e[g]=a,n[a]=g,i[this._hashKey(o,s)]=a,i[this._hashKey(t[2*u],t[2*u+1])]=u}this.hull=new Uint32Array(E);for(let T=0,C=this._hullStart;T<E;T++)this.hull[T]=C,C=n[C];this.triangles=this._triangles.subarray(0,this.trianglesLen),this.halfedges=this._halfedges.subarray(0,this.trianglesLen)}_hashKey(t,e){return Math.floor(function(t,e){const n=t/(Math.abs(t)+Math.abs(e));return(e>0?3-n:1+n)/4}(t-this._cx,e-this._cy)*this._hashSize)%this._hashSize}_legalize(t){const{_triangles:e,_halfedges:n,coords:r}=this;let i=0,a=0;for(;;){const o=n[t],s=t-t%3;if(a=s+(t+2)%3,-1===o){if(0===i)break;t=gs[--i];continue}const c=o-o%3,l=s+(t+1)%3,u=c+(o+2)%3,h=e[a],d=e[t],f=e[l],p=e[u];if(bs(r[2*h],r[2*h+1],r[2*d],r[2*d+1],r[2*f],r[2*f+1],r[2*p],r[2*p+1])){e[t]=p,e[o]=h;const r=n[u];if(-1===r){let e=this._hullStart;do{if(this._hullTri[e]===u){this._hullTri[e]=t;break}e=this._hullPrev[e]}while(e!==this._hullStart)}this._link(t,r),this._link(o,n[a]),this._link(a,u);const s=c+(o+1)%3;i<gs.length&&(gs[i++]=s)}else{if(0===i)break;t=gs[--i]}}return a}_link(t,e){this._halfedges[t]=e,-1!==e&&(this._halfedges[e]=t)}_addTriangle(t,e,n,r,i,a){const o=this.trianglesLen;return this._triangles[o]=t,this._triangles[o+1]=e,this._triangles[o+2]=n,this._link(o,r),this._link(o+1,i),this._link(o+2,a),this.trianglesLen+=3,o}}function ms(t,e,n,r){const i=t-n,a=e-r;return i*i+a*a}function bs(t,e,n,r,i,a,o,s){const c=t-o,l=e-s,u=n-o,h=r-s,d=i-o,f=a-s,p=u*u+h*h,g=d*d+f*f;return c*(h*g-p*f)-l*(u*g-p*d)+(c*c+l*l)*(u*f-h*d)<0}function vs(t,e,n,r,i,a){const o=n-t,s=r-e,c=i-t,l=a-e,u=o*o+s*s,h=c*c+l*l,d=.5/(o*l-s*c),f=(l*u-s*h)*d,p=(o*h-c*u)*d;return f*f+p*p}function _s(t,e,n,r){if(r-n<=20)for(let i=n+1;i<=r;i++){const r=t[i],a=e[r];let o=i-1;for(;o>=n&&e[t[o]]>a;)t[o+1]=t[o--];t[o+1]=r}else{let i=n+1,a=r;xs(t,n+r>>1,i),e[t[n]]>e[t[r]]&&xs(t,n,r),e[t[i]]>e[t[r]]&&xs(t,i,r),e[t[n]]>e[t[i]]&&xs(t,n,i);const o=t[i],s=e[o];for(;;){do{i++}while(e[t[i]]<s);do{a--}while(e[t[a]]>s);if(a<i)break;xs(t,i,a)}t[n+1]=t[a],t[a]=o,r-i+1>=a-n?(_s(t,e,i,r),_s(t,e,n,a-1)):(_s(t,e,n,a-1),_s(t,e,i,r))}}function xs(t,e,n){const r=t[e];t[e]=t[n],t[n]=r}function ks(t){return t[0]}function ws(t){return t[1]}const Es=1e-6;class Ts{constructor(){this._x0=this._y0=this._x1=this._y1=null,this._=""}moveTo(t,e){this._+=`M${this._x0=this._x1=+t},${this._y0=this._y1=+e}`}closePath(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")}lineTo(t,e){this._+=`L${this._x1=+t},${this._y1=+e}`}arc(t,e,n){const r=(t=+t)+(n=+n),i=e=+e;if(n<0)throw new Error("negative radius");null===this._x1?this._+=`M${r},${i}`:(Math.abs(this._x1-r)>Es||Math.abs(this._y1-i)>Es)&&(this._+="L"+r+","+i),n&&(this._+=`A${n},${n},0,1,1,${t-n},${e}A${n},${n},0,1,1,${this._x1=r},${this._y1=i}`)}rect(t,e,n,r){this._+=`M${this._x0=this._x1=+t},${this._y0=this._y1=+e}h${+n}v${+r}h${-n}Z`}value(){return this._||null}}class Cs{constructor(){this._=[]}moveTo(t,e){this._.push([t,e])}closePath(){this._.push(this._[0].slice())}lineTo(t,e){this._.push([t,e])}value(){return this._.length?this._:null}}class Ss{constructor(t,[e,n,r,i]=[0,0,960,500]){if(!((r=+r)>=(e=+e)&&(i=+i)>=(n=+n)))throw new Error("invalid bounds");this.delaunay=t,this._circumcenters=new Float64Array(2*t.points.length),this.vectors=new Float64Array(2*t.points.length),this.xmax=r,this.xmin=e,this.ymax=i,this.ymin=n,this._init()}update(){return this.delaunay.update(),this._init(),this}_init(){const{delaunay:{points:t,hull:e,triangles:n},vectors:r}=this,i=this.circumcenters=this._circumcenters.subarray(0,n.length/3*2);for(let d,f,p=0,g=0,y=n.length;p<y;p+=3,g+=2){const e=2*n[p],r=2*n[p+1],a=2*n[p+2],o=t[e],s=t[e+1],c=t[r],l=t[r+1],u=t[a],h=t[a+1],y=c-o,m=l-s,b=u-o,v=h-s,_=2*(y*v-m*b);if(Math.abs(_)<1e-9){let e=1e9;const r=2*n[0];e*=Math.sign((t[r]-o)*v-(t[r+1]-s)*b),d=(o+u)/2-e*v,f=(s+h)/2+e*b}else{const t=1/_,e=y*y+m*m,n=b*b+v*v;d=o+(v*e-m*n)*t,f=s+(y*n-b*e)*t}i[g]=d,i[g+1]=f}let a,o,s,c=e[e.length-1],l=4*c,u=t[2*c],h=t[2*c+1];r.fill(0);for(let d=0;d<e.length;++d)c=e[d],a=l,o=u,s=h,l=4*c,u=t[2*c],h=t[2*c+1],r[a+2]=r[l]=s-h,r[a+3]=r[l+1]=u-o}render(t){const e=null==t?t=new Ts:void 0,{delaunay:{halfedges:n,inedges:r,hull:i},circumcenters:a,vectors:o}=this;if(i.length<=1)return null;for(let l=0,u=n.length;l<u;++l){const e=n[l];if(e<l)continue;const r=2*Math.floor(l/3),i=2*Math.floor(e/3),o=a[r],s=a[r+1],c=a[i],u=a[i+1];this._renderSegment(o,s,c,u,t)}let s,c=i[i.length-1];for(let l=0;l<i.length;++l){s=c,c=i[l];const e=2*Math.floor(r[c]/3),n=a[e],u=a[e+1],h=4*s,d=this._project(n,u,o[h+2],o[h+3]);d&&this._renderSegment(n,u,d[0],d[1],t)}return e&&e.value()}renderBounds(t){const e=null==t?t=new Ts:void 0;return t.rect(this.xmin,this.ymin,this.xmax-this.xmin,this.ymax-this.ymin),e&&e.value()}renderCell(t,e){const n=null==e?e=new Ts:void 0,r=this._clip(t);if(null===r||!r.length)return;e.moveTo(r[0],r[1]);let i=r.length;for(;r[0]===r[i-2]&&r[1]===r[i-1]&&i>1;)i-=2;for(let a=2;a<i;a+=2)r[a]===r[a-2]&&r[a+1]===r[a-1]||e.lineTo(r[a],r[a+1]);return e.closePath(),n&&n.value()}*cellPolygons(){const{delaunay:{points:t}}=this;for(let e=0,n=t.length/2;e<n;++e){const t=this.cellPolygon(e);t&&(t.index=e,yield t)}}cellPolygon(t){const e=new Cs;return this.renderCell(t,e),e.value()}_renderSegment(t,e,n,r,i){let a;const o=this._regioncode(t,e),s=this._regioncode(n,r);0===o&&0===s?(i.moveTo(t,e),i.lineTo(n,r)):(a=this._clipSegment(t,e,n,r,o,s))&&(i.moveTo(a[0],a[1]),i.lineTo(a[2],a[3]))}contains(t,e,n){return(e=+e)==e&&(n=+n)==n&&this.delaunay._step(t,e,n)===t}*neighbors(t){const e=this._clip(t);if(e)for(const n of this.delaunay.neighbors(t)){const t=this._clip(n);if(t)t:for(let r=0,i=e.length;r<i;r+=2)for(let a=0,o=t.length;a<o;a+=2)if(e[r]==t[a]&&e[r+1]==t[a+1]&&e[(r+2)%i]==t[(a+o-2)%o]&&e[(r+3)%i]==t[(a+o-1)%o]){yield n;break t}}}_cell(t){const{circumcenters:e,delaunay:{inedges:n,halfedges:r,triangles:i}}=this,a=n[t];if(-1===a)return null;const o=[];let s=a;do{const n=Math.floor(s/3);if(o.push(e[2*n],e[2*n+1]),s=s%3==2?s-2:s+1,i[s]!==t)break;s=r[s]}while(s!==a&&-1!==s);return o}_clip(t){if(0===t&&1===this.delaunay.hull.length)return[this.xmax,this.ymin,this.xmax,this.ymax,this.xmin,this.ymax,this.xmin,this.ymin];const e=this._cell(t);if(null===e)return null;const{vectors:n}=this,r=4*t;return n[r]||n[r+1]?this._clipInfinite(t,e,n[r],n[r+1],n[r+2],n[r+3]):this._clipFinite(t,e)}_clipFinite(t,e){const n=e.length;let r,i,a,o,s=null,c=e[n-2],l=e[n-1],u=this._regioncode(c,l),h=0;for(let d=0;d<n;d+=2)if(r=c,i=l,c=e[d],l=e[d+1],a=u,u=this._regioncode(c,l),0===a&&0===u)o=h,h=0,s?s.push(c,l):s=[c,l];else{let e,n,d,f,p;if(0===a){if(null===(e=this._clipSegment(r,i,c,l,a,u)))continue;[n,d,f,p]=e}else{if(null===(e=this._clipSegment(c,l,r,i,u,a)))continue;[f,p,n,d]=e,o=h,h=this._edgecode(n,d),o&&h&&this._edge(t,o,h,s,s.length),s?s.push(n,d):s=[n,d]}o=h,h=this._edgecode(f,p),o&&h&&this._edge(t,o,h,s,s.length),s?s.push(f,p):s=[f,p]}if(s)o=h,h=this._edgecode(s[0],s[1]),o&&h&&this._edge(t,o,h,s,s.length);else if(this.contains(t,(this.xmin+this.xmax)/2,(this.ymin+this.ymax)/2))return[this.xmax,this.ymin,this.xmax,this.ymax,this.xmin,this.ymax,this.xmin,this.ymin];return s}_clipSegment(t,e,n,r,i,a){for(;;){if(0===i&&0===a)return[t,e,n,r];if(i&a)return null;let o,s,c=i||a;8&c?(o=t+(n-t)*(this.ymax-e)/(r-e),s=this.ymax):4&c?(o=t+(n-t)*(this.ymin-e)/(r-e),s=this.ymin):2&c?(s=e+(r-e)*(this.xmax-t)/(n-t),o=this.xmax):(s=e+(r-e)*(this.xmin-t)/(n-t),o=this.xmin),i?(t=o,e=s,i=this._regioncode(t,e)):(n=o,r=s,a=this._regioncode(n,r))}}_clipInfinite(t,e,n,r,i,a){let o,s=Array.from(e);if((o=this._project(s[0],s[1],n,r))&&s.unshift(o[0],o[1]),(o=this._project(s[s.length-2],s[s.length-1],i,a))&&s.push(o[0],o[1]),s=this._clipFinite(t,s))for(let c,l=0,u=s.length,h=this._edgecode(s[u-2],s[u-1]);l<u;l+=2)c=h,h=this._edgecode(s[l],s[l+1]),c&&h&&(l=this._edge(t,c,h,s,l),u=s.length);else this.contains(t,(this.xmin+this.xmax)/2,(this.ymin+this.ymax)/2)&&(s=[this.xmin,this.ymin,this.xmax,this.ymin,this.xmax,this.ymax,this.xmin,this.ymax]);return s}_edge(t,e,n,r,i){for(;e!==n;){let n,a;switch(e){case 5:e=4;continue;case 4:e=6,n=this.xmax,a=this.ymin;break;case 6:e=2;continue;case 2:e=10,n=this.xmax,a=this.ymax;break;case 10:e=8;continue;case 8:e=9,n=this.xmin,a=this.ymax;break;case 9:e=1;continue;case 1:e=5,n=this.xmin,a=this.ymin}r[i]===n&&r[i+1]===a||!this.contains(t,n,a)||(r.splice(i,0,n,a),i+=2)}if(r.length>4)for(let a=0;a<r.length;a+=2){const t=(a+2)%r.length,e=(a+4)%r.length;(r[a]===r[t]&&r[t]===r[e]||r[a+1]===r[t+1]&&r[t+1]===r[e+1])&&(r.splice(t,2),a-=2)}return i}_project(t,e,n,r){let i,a,o,s=1/0;if(r<0){if(e<=this.ymin)return null;(i=(this.ymin-e)/r)<s&&(o=this.ymin,a=t+(s=i)*n)}else if(r>0){if(e>=this.ymax)return null;(i=(this.ymax-e)/r)<s&&(o=this.ymax,a=t+(s=i)*n)}if(n>0){if(t>=this.xmax)return null;(i=(this.xmax-t)/n)<s&&(a=this.xmax,o=e+(s=i)*r)}else if(n<0){if(t<=this.xmin)return null;(i=(this.xmin-t)/n)<s&&(a=this.xmin,o=e+(s=i)*r)}return[a,o]}_edgecode(t,e){return(t===this.xmin?1:t===this.xmax?2:0)|(e===this.ymin?4:e===this.ymax?8:0)}_regioncode(t,e){return(t<this.xmin?1:t>this.xmax?2:0)|(e<this.ymin?4:e>this.ymax?8:0)}}const As=2*Math.PI,Ms=Math.pow;function Os(t){return t[0]}function Ns(t){return t[1]}function Ds(t,e,n){return[t+Math.sin(t+e)*n,e+Math.cos(t-e)*n]}class Bs{static from(t,e=Os,n=Ns,r){return new Bs("length"in t?function(t,e,n,r){const i=t.length,a=new Float64Array(2*i);for(let o=0;o<i;++o){const i=t[o];a[2*o]=e.call(r,i,o,t),a[2*o+1]=n.call(r,i,o,t)}return a}(t,e,n,r):Float64Array.from(function*(t,e,n,r){let i=0;for(const a of t)yield e.call(r,a,i,t),yield n.call(r,a,i,t),++i}(t,e,n,r)))}constructor(t){this._delaunator=new ys(t),this.inedges=new Int32Array(t.length/2),this._hullIndex=new Int32Array(t.length/2),this.points=this._delaunator.coords,this._init()}update(){return this._delaunator.update(),this._init(),this}_init(){const t=this._delaunator,e=this.points;if(t.hull&&t.hull.length>2&&function(t){const{triangles:e,coords:n}=t;for(let r=0;r<e.length;r+=3){const t=2*e[r],i=2*e[r+1],a=2*e[r+2];if((n[a]-n[t])*(n[i+1]-n[t+1])-(n[i]-n[t])*(n[a+1]-n[t+1])>1e-10)return!1}return!0}(t)){this.collinear=Int32Array.from({length:e.length/2},((t,e)=>e)).sort(((t,n)=>e[2*t]-e[2*n]||e[2*t+1]-e[2*n+1]));const t=this.collinear[0],n=this.collinear[this.collinear.length-1],r=[e[2*t],e[2*t+1],e[2*n],e[2*n+1]],i=1e-8*Math.hypot(r[3]-r[1],r[2]-r[0]);for(let a=0,o=e.length/2;a<o;++a){const t=Ds(e[2*a],e[2*a+1],i);e[2*a]=t[0],e[2*a+1]=t[1]}this._delaunator=new ys(e)}else delete this.collinear;const n=this.halfedges=this._delaunator.halfedges,r=this.hull=this._delaunator.hull,i=this.triangles=this._delaunator.triangles,a=this.inedges.fill(-1),o=this._hullIndex.fill(-1);for(let s=0,c=n.length;s<c;++s){const t=i[s%3==2?s-2:s+1];-1!==n[s]&&-1!==a[t]||(a[t]=s)}for(let s=0,c=r.length;s<c;++s)o[r[s]]=s;r.length<=2&&r.length>0&&(this.triangles=new Int32Array(3).fill(-1),this.halfedges=new Int32Array(3).fill(-1),this.triangles[0]=r[0],a[r[0]]=1,2===r.length&&(a[r[1]]=0,this.triangles[1]=r[1],this.triangles[2]=r[1]))}voronoi(t){return new Ss(this,t)}*neighbors(t){const{inedges:e,hull:n,_hullIndex:r,halfedges:i,triangles:a,collinear:o}=this;if(o){const e=o.indexOf(t);return e>0&&(yield o[e-1]),void(e<o.length-1&&(yield o[e+1]))}const s=e[t];if(-1===s)return;let c=s,l=-1;do{if(yield l=a[c],c=c%3==2?c-2:c+1,a[c]!==t)return;if(c=i[c],-1===c){const e=n[(r[t]+1)%n.length];return void(e!==l&&(yield e))}}while(c!==s)}find(t,e,n=0){if((t=+t)!=t||(e=+e)!=e)return-1;const r=n;let i;for(;(i=this._step(n,t,e))>=0&&i!==n&&i!==r;)n=i;return i}_step(t,e,n){const{inedges:r,hull:i,_hullIndex:a,halfedges:o,triangles:s,points:c}=this;if(-1===r[t]||!c.length)return(t+1)%(c.length>>1);let l=t,u=Ms(e-c[2*t],2)+Ms(n-c[2*t+1],2);const h=r[t];let d=h;do{let r=s[d];const h=Ms(e-c[2*r],2)+Ms(n-c[2*r+1],2);if(h<u&&(u=h,l=r),d=d%3==2?d-2:d+1,s[d]!==t)break;if(d=o[d],-1===d){if(d=i[(a[t]+1)%i.length],d!==r&&Ms(e-c[2*d],2)+Ms(n-c[2*d+1],2)<u)return d;break}}while(d!==h);return l}render(t){const e=null==t?t=new Ts:void 0,{points:n,halfedges:r,triangles:i}=this;for(let a=0,o=r.length;a<o;++a){const e=r[a];if(e<a)continue;const o=2*i[a],s=2*i[e];t.moveTo(n[o],n[o+1]),t.lineTo(n[s],n[s+1])}return this.renderHull(t),e&&e.value()}renderPoints(t,e){void 0!==e||t&&"function"==typeof t.moveTo||(e=t,t=null),e=null==e?2:+e;const n=null==t?t=new Ts:void 0,{points:r}=this;for(let i=0,a=r.length;i<a;i+=2){const n=r[i],a=r[i+1];t.moveTo(n+e,a),t.arc(n,a,e,0,As)}return n&&n.value()}renderHull(t){const e=null==t?t=new Ts:void 0,{hull:n,points:r}=this,i=2*n[0],a=n.length;t.moveTo(r[i],r[i+1]);for(let o=1;o<a;++o){const e=2*n[o];t.lineTo(r[e],r[e+1])}return t.closePath(),e&&e.value()}hullPolygon(){const t=new Cs;return this.renderHull(t),t.value()}renderTriangle(t,e){const n=null==e?e=new Ts:void 0,{points:r,triangles:i}=this,a=2*i[t*=3],o=2*i[t+1],s=2*i[t+2];return e.moveTo(r[a],r[a+1]),e.lineTo(r[o],r[o+1]),e.lineTo(r[s],r[s+1]),e.closePath(),n&&n.value()}*trianglePolygons(){const{triangles:t}=this;for(let e=0,n=t.length/3;e<n;++e)yield this.trianglePolygon(e)}trianglePolygon(t){const e=new Cs;return this.renderTriangle(t,e),e.value()}}const Ls=t=>()=>t;function Is(t,{sourceEvent:e,subject:n,target:r,identifier:i,active:a,x:o,y:s,dx:c,dy:l,dispatch:u}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:e,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:a,enumerable:!0,configurable:!0},x:{value:o,enumerable:!0,configurable:!0},y:{value:s,enumerable:!0,configurable:!0},dx:{value:c,enumerable:!0,configurable:!0},dy:{value:l,enumerable:!0,configurable:!0},_:{value:u}})}function Fs(t){return!t.ctrlKey&&!t.button}function Rs(){return this.parentNode}function Ps(t,e){return null==e?{x:t.x,y:t.y}:e}function js(){return navigator.maxTouchPoints||"ontouchstart"in this}function zs(){var t,e,n,r,i=Fs,a=Rs,o=Ps,s=js,c={},l=de("start","drag","end"),u=0,h=0;function d(t){t.on("mousedown.drag",f).filter(s).on("touchstart.drag",y).on("touchmove.drag",m,On).on("touchend.drag touchcancel.drag",b).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function f(o,s){if(!r&&i.call(this,o,s)){var c=v(this,a.call(this,o,s),o,s,"mouse");c&&(Mn(o.view).on("mousemove.drag",p,Nn).on("mouseup.drag",g,Nn),Ln(o.view),Dn(o),n=!1,t=o.clientX,e=o.clientY,c("start",o))}}function p(r){if(Bn(r),!n){var i=r.clientX-t,a=r.clientY-e;n=i*i+a*a>h}c.mouse("drag",r)}function g(t){Mn(t.view).on("mousemove.drag mouseup.drag",null),In(t.view,n),Bn(t),c.mouse("end",t)}function y(t,e){if(i.call(this,t,e)){var n,r,o=t.changedTouches,s=a.call(this,t,e),c=o.length;for(n=0;n<c;++n)(r=v(this,s,t,e,o[n].identifier,o[n]))&&(Dn(t),r("start",t,o[n]))}}function m(t){var e,n,r=t.changedTouches,i=r.length;for(e=0;e<i;++e)(n=c[r[e].identifier])&&(Bn(t),n("drag",t,r[e]))}function b(t){var e,n,i=t.changedTouches,a=i.length;for(r&&clearTimeout(r),r=setTimeout((function(){r=null}),500),e=0;e<a;++e)(n=c[i[e].identifier])&&(Dn(t),n("end",t,i[e]))}function v(t,e,n,r,i,a){var s,h,f,p=l.copy(),g=Rr(a||n,e);if(null!=(f=o.call(t,new Is("beforestart",{sourceEvent:n,target:d,identifier:i,active:u,x:g[0],y:g[1],dx:0,dy:0,dispatch:p}),r)))return s=f.x-g[0]||0,h=f.y-g[1]||0,function n(a,o,l){var y,m=g;switch(a){case"start":c[i]=n,y=u++;break;case"end":delete c[i],--u;case"drag":g=Rr(l||o,e),y=u}p.call(a,t,new Is(a,{sourceEvent:o,subject:f,target:d,identifier:i,active:y,x:g[0]+s,y:g[1]+h,dx:g[0]-m[0],dy:g[1]-m[1],dispatch:p}),r)}}return d.filter=function(t){return arguments.length?(i="function"==typeof t?t:Ls(!!t),d):i},d.container=function(t){return arguments.length?(a="function"==typeof t?t:Ls(t),d):a},d.subject=function(t){return arguments.length?(o="function"==typeof t?t:Ls(t),d):o},d.touchable=function(t){return arguments.length?(s="function"==typeof t?t:Ls(!!t),d):s},d.on=function(){var t=l.on.apply(l,arguments);return t===l?d:t},d.clickDistance=function(t){return arguments.length?(h=(t=+t)*t,d):Math.sqrt(h)},d}Is.prototype.on=function(){var t=this._.on.apply(this._,arguments);return t===this._?this:t};var Ys={},Us={};function $s(t){return new Function("d","return {"+t.map((function(t,e){return JSON.stringify(t)+": d["+e+'] || ""'})).join(",")+"}")}function Ws(t){var e=Object.create(null),n=[];return t.forEach((function(t){for(var r in t)r in e||n.push(e[r]=r)})),n}function qs(t,e){var n=t+"",r=n.length;return r<e?new Array(e-r+1).join(0)+n:n}function Hs(t){var e=new RegExp('["'+t+"\n\r]"),n=t.charCodeAt(0);function r(t,e){var r,i=[],a=t.length,o=0,s=0,c=a<=0,l=!1;function u(){if(c)return Us;if(l)return l=!1,Ys;var e,r,i=o;if(34===t.charCodeAt(i)){for(;o++<a&&34!==t.charCodeAt(o)||34===t.charCodeAt(++o););return(e=o)>=a?c=!0:10===(r=t.charCodeAt(o++))?l=!0:13===r&&(l=!0,10===t.charCodeAt(o)&&++o),t.slice(i+1,e-1).replace(/""/g,'"')}for(;o<a;){if(10===(r=t.charCodeAt(e=o++)))l=!0;else if(13===r)l=!0,10===t.charCodeAt(o)&&++o;else if(r!==n)continue;return t.slice(i,e)}return c=!0,t.slice(i,a)}for(10===t.charCodeAt(a-1)&&--a,13===t.charCodeAt(a-1)&&--a;(r=u())!==Us;){for(var h=[];r!==Ys&&r!==Us;)h.push(r),r=u();e&&null==(h=e(h,s++))||i.push(h)}return i}function i(e,n){return e.map((function(e){return n.map((function(t){return o(e[t])})).join(t)}))}function a(e){return e.map(o).join(t)}function o(t){return null==t?"":t instanceof Date?function(t){var e=t.getUTCHours(),n=t.getUTCMinutes(),r=t.getUTCSeconds(),i=t.getUTCMilliseconds();return isNaN(t)?"Invalid Date":function(t){return t<0?"-"+qs(-t,6):t>9999?"+"+qs(t,6):qs(t,4)}(t.getUTCFullYear())+"-"+qs(t.getUTCMonth()+1,2)+"-"+qs(t.getUTCDate(),2)+(i?"T"+qs(e,2)+":"+qs(n,2)+":"+qs(r,2)+"."+qs(i,3)+"Z":r?"T"+qs(e,2)+":"+qs(n,2)+":"+qs(r,2)+"Z":n||e?"T"+qs(e,2)+":"+qs(n,2)+"Z":"")}(t):e.test(t+="")?'"'+t.replace(/"/g,'""')+'"':t}return{parse:function(t,e){var n,i,a=r(t,(function(t,r){if(n)return n(t,r-1);i=t,n=e?function(t,e){var n=$s(t);return function(r,i){return e(n(r),i,t)}}(t,e):$s(t)}));return a.columns=i||[],a},parseRows:r,format:function(e,n){return null==n&&(n=Ws(e)),[n.map(o).join(t)].concat(i(e,n)).join("\n")},formatBody:function(t,e){return null==e&&(e=Ws(t)),i(t,e).join("\n")},formatRows:function(t){return t.map(a).join("\n")},formatRow:a,formatValue:o}}var Vs=Hs(","),Gs=Vs.parse,Xs=Vs.parseRows,Zs=Vs.format,Qs=Vs.formatBody,Ks=Vs.formatRows,Js=Vs.formatRow,tc=Vs.formatValue,ec=Hs("\t"),nc=ec.parse,rc=ec.parseRows,ic=ec.format,ac=ec.formatBody,oc=ec.formatRows,sc=ec.formatRow,cc=ec.formatValue;function lc(t){for(var e in t){var n,r,i=t[e].trim();if(i)if("true"===i)i=!0;else if("false"===i)i=!1;else if("NaN"===i)i=NaN;else if(isNaN(n=+i)){if(!(r=i.match(/^([-+]\d{2})?\d{4}(-\d{2}(-\d{2})?)?(T\d{2}:\d{2}(:\d{2}(\.\d{3})?)?(Z|[-+]\d{2}:\d{2})?)?$/)))continue;uc&&r[4]&&!r[7]&&(i=i.replace(/-/g,"/").replace(/T/," ")),i=new Date(i)}else i=n;else i=null;t[e]=i}return t}const uc=new Date("2019-01-01T00:00").getHours()||new Date("2019-07-01T00:00").getHours(),hc=t=>+t;function dc(t){return t*t}function fc(t){return t*(2-t)}function pc(t){return((t*=2)<=1?t*t:--t*(2-t)+1)/2}var gc=function t(e){function n(t){return Math.pow(t,e)}return e=+e,n.exponent=t,n}(3),yc=function t(e){function n(t){return 1-Math.pow(1-t,e)}return e=+e,n.exponent=t,n}(3),mc=function t(e){function n(t){return((t*=2)<=1?Math.pow(t,e):2-Math.pow(2-t,e))/2}return e=+e,n.exponent=t,n}(3),bc=Math.PI,vc=bc/2;function _c(t){return 1==+t?1:1-Math.cos(t*vc)}function xc(t){return Math.sin(t*vc)}function kc(t){return(1-Math.cos(bc*t))/2}function wc(t){return 1.0009775171065494*(Math.pow(2,-10*t)-.0009765625)}function Ec(t){return wc(1-+t)}function Tc(t){return 1-wc(t)}function Cc(t){return((t*=2)<=1?wc(1-t):2-wc(t-1))/2}function Sc(t){return 1-Math.sqrt(1-t*t)}function Ac(t){return Math.sqrt(1- --t*t)}function Mc(t){return((t*=2)<=1?1-Math.sqrt(1-t*t):Math.sqrt(1-(t-=2)*t)+1)/2}var Oc=7.5625;function Nc(t){return 1-Dc(1-t)}function Dc(t){return(t=+t)<.36363636363636365?Oc*t*t:t<.7272727272727273?Oc*(t-=.5454545454545454)*t+.75:t<.9090909090909091?Oc*(t-=.8181818181818182)*t+.9375:Oc*(t-=.9545454545454546)*t+.984375}function Bc(t){return((t*=2)<=1?1-Dc(1-t):Dc(t-1)+1)/2}var Lc=1.70158,Ic=function t(e){function n(t){return(t=+t)*t*(e*(t-1)+t)}return e=+e,n.overshoot=t,n}(Lc),Fc=function t(e){function n(t){return--t*t*((t+1)*e+t)+1}return e=+e,n.overshoot=t,n}(Lc),Rc=function t(e){function n(t){return((t*=2)<1?t*t*((e+1)*t-e):(t-=2)*t*((e+1)*t+e)+2)/2}return e=+e,n.overshoot=t,n}(Lc),Pc=2*Math.PI,jc=function t(e,n){var r=Math.asin(1/(e=Math.max(1,e)))*(n/=Pc);function i(t){return e*wc(- --t)*Math.sin((r-t)/n)}return i.amplitude=function(e){return t(e,n*Pc)},i.period=function(n){return t(e,n)},i}(1,.3),zc=function t(e,n){var r=Math.asin(1/(e=Math.max(1,e)))*(n/=Pc);function i(t){return 1-e*wc(t=+t)*Math.sin((t+r)/n)}return i.amplitude=function(e){return t(e,n*Pc)},i.period=function(n){return t(e,n)},i}(1,.3),Yc=function t(e,n){var r=Math.asin(1/(e=Math.max(1,e)))*(n/=Pc);function i(t){return((t=2*t-1)<0?e*wc(-t)*Math.sin((r-t)/n):2-e*wc(t)*Math.sin((r+t)/n))/2}return i.amplitude=function(e){return t(e,n*Pc)},i.period=function(n){return t(e,n)},i}(1,.3);function Uc(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);return t.blob()}function $c(t,e){return fetch(t,e).then(Uc)}function Wc(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);return t.arrayBuffer()}function qc(t,e){return fetch(t,e).then(Wc)}function Hc(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);return t.text()}function Vc(t,e){return fetch(t,e).then(Hc)}function Gc(t){return function(e,n,r){return 2===arguments.length&&"function"==typeof n&&(r=n,n=void 0),Vc(e,n).then((function(e){return t(e,r)}))}}function Xc(t,e,n,r){3===arguments.length&&"function"==typeof n&&(r=n,n=void 0);var i=Hs(t);return Vc(e,n).then((function(t){return i.parse(t,r)}))}var Zc=Gc(Gs),Qc=Gc(nc);function Kc(t,e){return new Promise((function(n,r){var i=new Image;for(var a in e)i[a]=e[a];i.onerror=r,i.onload=function(){n(i)},i.src=t}))}function Jc(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);if(204!==t.status&&205!==t.status)return t.json()}function tl(t,e){return fetch(t,e).then(Jc)}function el(t){return(e,n)=>Vc(e,n).then((e=>(new DOMParser).parseFromString(e,t)))}const nl=el("application/xml");var rl=el("text/html"),il=el("image/svg+xml");function al(t,e){var n,r=1;function i(){var i,a,o=n.length,s=0,c=0;for(i=0;i<o;++i)s+=(a=n[i]).x,c+=a.y;for(s=(s/o-t)*r,c=(c/o-e)*r,i=0;i<o;++i)(a=n[i]).x-=s,a.y-=c}return null==t&&(t=0),null==e&&(e=0),i.initialize=function(t){n=t},i.x=function(e){return arguments.length?(t=+e,i):t},i.y=function(t){return arguments.length?(e=+t,i):e},i.strength=function(t){return arguments.length?(r=+t,i):r},i}function ol(t,e,n,r){if(isNaN(e)||isNaN(n))return t;var i,a,o,s,c,l,u,h,d,f=t._root,p={data:r},g=t._x0,y=t._y0,m=t._x1,b=t._y1;if(!f)return t._root=p,t;for(;f.length;)if((l=e>=(a=(g+m)/2))?g=a:m=a,(u=n>=(o=(y+b)/2))?y=o:b=o,i=f,!(f=f[h=u<<1|l]))return i[h]=p,t;if(s=+t._x.call(null,f.data),c=+t._y.call(null,f.data),e===s&&n===c)return p.next=f,i?i[h]=p:t._root=p,t;do{i=i?i[h]=new Array(4):t._root=new Array(4),(l=e>=(a=(g+m)/2))?g=a:m=a,(u=n>=(o=(y+b)/2))?y=o:b=o}while((h=u<<1|l)==(d=(c>=o)<<1|s>=a));return i[d]=f,i[h]=p,t}function sl(t,e,n,r,i){this.node=t,this.x0=e,this.y0=n,this.x1=r,this.y1=i}function cl(t){return t[0]}function ll(t){return t[1]}function ul(t,e,n){var r=new hl(null==e?cl:e,null==n?ll:n,NaN,NaN,NaN,NaN);return null==t?r:r.addAll(t)}function hl(t,e,n,r,i,a){this._x=t,this._y=e,this._x0=n,this._y0=r,this._x1=i,this._y1=a,this._root=void 0}function dl(t){for(var e={data:t.data},n=e;t=t.next;)n=n.next={data:t.data};return e}var fl=ul.prototype=hl.prototype;function pl(t){return function(){return t}}function gl(t){return 1e-6*(t()-.5)}function yl(t){return t.x+t.vx}function ml(t){return t.y+t.vy}function bl(t){var e,n,r,i=1,a=1;function o(){for(var t,o,c,l,u,h,d,f=e.length,p=0;p<a;++p)for(o=ul(e,yl,ml).visitAfter(s),t=0;t<f;++t)c=e[t],h=n[c.index],d=h*h,l=c.x+c.vx,u=c.y+c.vy,o.visit(g);function g(t,e,n,a,o){var s=t.data,f=t.r,p=h+f;if(!s)return e>l+p||a<l-p||n>u+p||o<u-p;if(s.index>c.index){var g=l-s.x-s.vx,y=u-s.y-s.vy,m=g*g+y*y;m<p*p&&(0===g&&(m+=(g=gl(r))*g),0===y&&(m+=(y=gl(r))*y),m=(p-(m=Math.sqrt(m)))/m*i,c.vx+=(g*=m)*(p=(f*=f)/(d+f)),c.vy+=(y*=m)*p,s.vx-=g*(p=1-p),s.vy-=y*p)}}}function s(t){if(t.data)return t.r=n[t.data.index];for(var e=t.r=0;e<4;++e)t[e]&&t[e].r>t.r&&(t.r=t[e].r)}function c(){if(e){var r,i,a=e.length;for(n=new Array(a),r=0;r<a;++r)i=e[r],n[i.index]=+t(i,r,e)}}return"function"!=typeof t&&(t=pl(null==t?1:+t)),o.initialize=function(t,n){e=t,r=n,c()},o.iterations=function(t){return arguments.length?(a=+t,o):a},o.strength=function(t){return arguments.length?(i=+t,o):i},o.radius=function(e){return arguments.length?(t="function"==typeof e?e:pl(+e),c(),o):t},o}function vl(t){return t.index}function _l(t,e){var n=t.get(e);if(!n)throw new Error("node not found: "+e);return n}function xl(t){var e,n,r,i,a,o,s=vl,c=function(t){return 1/Math.min(i[t.source.index],i[t.target.index])},l=pl(30),u=1;function h(r){for(var i=0,s=t.length;i<u;++i)for(var c,l,h,d,f,p,g,y=0;y<s;++y)l=(c=t[y]).source,d=(h=c.target).x+h.vx-l.x-l.vx||gl(o),f=h.y+h.vy-l.y-l.vy||gl(o),d*=p=((p=Math.sqrt(d*d+f*f))-n[y])/p*r*e[y],f*=p,h.vx-=d*(g=a[y]),h.vy-=f*g,l.vx+=d*(g=1-g),l.vy+=f*g}function d(){if(r){var o,c,l=r.length,u=t.length,h=new Map(r.map(((t,e)=>[s(t,e,r),t])));for(o=0,i=new Array(l);o<u;++o)(c=t[o]).index=o,"object"!=typeof c.source&&(c.source=_l(h,c.source)),"object"!=typeof c.target&&(c.target=_l(h,c.target)),i[c.source.index]=(i[c.source.index]||0)+1,i[c.target.index]=(i[c.target.index]||0)+1;for(o=0,a=new Array(u);o<u;++o)c=t[o],a[o]=i[c.source.index]/(i[c.source.index]+i[c.target.index]);e=new Array(u),f(),n=new Array(u),p()}}function f(){if(r)for(var n=0,i=t.length;n<i;++n)e[n]=+c(t[n],n,t)}function p(){if(r)for(var e=0,i=t.length;e<i;++e)n[e]=+l(t[e],e,t)}return null==t&&(t=[]),h.initialize=function(t,e){r=t,o=e,d()},h.links=function(e){return arguments.length?(t=e,d(),h):t},h.id=function(t){return arguments.length?(s=t,h):s},h.iterations=function(t){return arguments.length?(u=+t,h):u},h.strength=function(t){return arguments.length?(c="function"==typeof t?t:pl(+t),f(),h):c},h.distance=function(t){return arguments.length?(l="function"==typeof t?t:pl(+t),p(),h):l},h}fl.copy=function(){var t,e,n=new hl(this._x,this._y,this._x0,this._y0,this._x1,this._y1),r=this._root;if(!r)return n;if(!r.length)return n._root=dl(r),n;for(t=[{source:r,target:n._root=new Array(4)}];r=t.pop();)for(var i=0;i<4;++i)(e=r.source[i])&&(e.length?t.push({source:e,target:r.target[i]=new Array(4)}):r.target[i]=dl(e));return n},fl.add=function(t){const e=+this._x.call(null,t),n=+this._y.call(null,t);return ol(this.cover(e,n),e,n,t)},fl.addAll=function(t){var e,n,r,i,a=t.length,o=new Array(a),s=new Array(a),c=1/0,l=1/0,u=-1/0,h=-1/0;for(n=0;n<a;++n)isNaN(r=+this._x.call(null,e=t[n]))||isNaN(i=+this._y.call(null,e))||(o[n]=r,s[n]=i,r<c&&(c=r),r>u&&(u=r),i<l&&(l=i),i>h&&(h=i));if(c>u||l>h)return this;for(this.cover(c,l).cover(u,h),n=0;n<a;++n)ol(this,o[n],s[n],t[n]);return this},fl.cover=function(t,e){if(isNaN(t=+t)||isNaN(e=+e))return this;var n=this._x0,r=this._y0,i=this._x1,a=this._y1;if(isNaN(n))i=(n=Math.floor(t))+1,a=(r=Math.floor(e))+1;else{for(var o,s,c=i-n||1,l=this._root;n>t||t>=i||r>e||e>=a;)switch(s=(e<r)<<1|t<n,(o=new Array(4))[s]=l,l=o,c*=2,s){case 0:i=n+c,a=r+c;break;case 1:n=i-c,a=r+c;break;case 2:i=n+c,r=a-c;break;case 3:n=i-c,r=a-c}this._root&&this._root.length&&(this._root=l)}return this._x0=n,this._y0=r,this._x1=i,this._y1=a,this},fl.data=function(){var t=[];return this.visit((function(e){if(!e.length)do{t.push(e.data)}while(e=e.next)})),t},fl.extent=function(t){return arguments.length?this.cover(+t[0][0],+t[0][1]).cover(+t[1][0],+t[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]},fl.find=function(t,e,n){var r,i,a,o,s,c,l,u=this._x0,h=this._y0,d=this._x1,f=this._y1,p=[],g=this._root;for(g&&p.push(new sl(g,u,h,d,f)),null==n?n=1/0:(u=t-n,h=e-n,d=t+n,f=e+n,n*=n);c=p.pop();)if(!(!(g=c.node)||(i=c.x0)>d||(a=c.y0)>f||(o=c.x1)<u||(s=c.y1)<h))if(g.length){var y=(i+o)/2,m=(a+s)/2;p.push(new sl(g[3],y,m,o,s),new sl(g[2],i,m,y,s),new sl(g[1],y,a,o,m),new sl(g[0],i,a,y,m)),(l=(e>=m)<<1|t>=y)&&(c=p[p.length-1],p[p.length-1]=p[p.length-1-l],p[p.length-1-l]=c)}else{var b=t-+this._x.call(null,g.data),v=e-+this._y.call(null,g.data),_=b*b+v*v;if(_<n){var x=Math.sqrt(n=_);u=t-x,h=e-x,d=t+x,f=e+x,r=g.data}}return r},fl.remove=function(t){if(isNaN(a=+this._x.call(null,t))||isNaN(o=+this._y.call(null,t)))return this;var e,n,r,i,a,o,s,c,l,u,h,d,f=this._root,p=this._x0,g=this._y0,y=this._x1,m=this._y1;if(!f)return this;if(f.length)for(;;){if((l=a>=(s=(p+y)/2))?p=s:y=s,(u=o>=(c=(g+m)/2))?g=c:m=c,e=f,!(f=f[h=u<<1|l]))return this;if(!f.length)break;(e[h+1&3]||e[h+2&3]||e[h+3&3])&&(n=e,d=h)}for(;f.data!==t;)if(r=f,!(f=f.next))return this;return(i=f.next)&&delete f.next,r?(i?r.next=i:delete r.next,this):e?(i?e[h]=i:delete e[h],(f=e[0]||e[1]||e[2]||e[3])&&f===(e[3]||e[2]||e[1]||e[0])&&!f.length&&(n?n[d]=f:this._root=f),this):(this._root=i,this)},fl.removeAll=function(t){for(var e=0,n=t.length;e<n;++e)this.remove(t[e]);return this},fl.root=function(){return this._root},fl.size=function(){var t=0;return this.visit((function(e){if(!e.length)do{++t}while(e=e.next)})),t},fl.visit=function(t){var e,n,r,i,a,o,s=[],c=this._root;for(c&&s.push(new sl(c,this._x0,this._y0,this._x1,this._y1));e=s.pop();)if(!t(c=e.node,r=e.x0,i=e.y0,a=e.x1,o=e.y1)&&c.length){var l=(r+a)/2,u=(i+o)/2;(n=c[3])&&s.push(new sl(n,l,u,a,o)),(n=c[2])&&s.push(new sl(n,r,u,l,o)),(n=c[1])&&s.push(new sl(n,l,i,a,u)),(n=c[0])&&s.push(new sl(n,r,i,l,u))}return this},fl.visitAfter=function(t){var e,n=[],r=[];for(this._root&&n.push(new sl(this._root,this._x0,this._y0,this._x1,this._y1));e=n.pop();){var i=e.node;if(i.length){var a,o=e.x0,s=e.y0,c=e.x1,l=e.y1,u=(o+c)/2,h=(s+l)/2;(a=i[0])&&n.push(new sl(a,o,s,u,h)),(a=i[1])&&n.push(new sl(a,u,s,c,h)),(a=i[2])&&n.push(new sl(a,o,h,u,l)),(a=i[3])&&n.push(new sl(a,u,h,c,l))}r.push(e)}for(;e=r.pop();)t(e.node,e.x0,e.y0,e.x1,e.y1);return this},fl.x=function(t){return arguments.length?(this._x=t,this):this._x},fl.y=function(t){return arguments.length?(this._y=t,this):this._y};const kl=4294967296;function wl(t){return t.x}function El(t){return t.y}var Tl=Math.PI*(3-Math.sqrt(5));function Cl(t){var e,n=1,r=.001,i=1-Math.pow(r,1/300),a=0,o=.6,s=new Map,c=Qr(h),l=de("tick","end"),u=function(){let t=1;return()=>(t=(1664525*t+1013904223)%kl)/kl}();function h(){d(),l.call("tick",e),n<r&&(c.stop(),l.call("end",e))}function d(r){var c,l,u=t.length;void 0===r&&(r=1);for(var h=0;h<r;++h)for(n+=(a-n)*i,s.forEach((function(t){t(n)})),c=0;c<u;++c)null==(l=t[c]).fx?l.x+=l.vx*=o:(l.x=l.fx,l.vx=0),null==l.fy?l.y+=l.vy*=o:(l.y=l.fy,l.vy=0);return e}function f(){for(var e,n=0,r=t.length;n<r;++n){if((e=t[n]).index=n,null!=e.fx&&(e.x=e.fx),null!=e.fy&&(e.y=e.fy),isNaN(e.x)||isNaN(e.y)){var i=10*Math.sqrt(.5+n),a=n*Tl;e.x=i*Math.cos(a),e.y=i*Math.sin(a)}(isNaN(e.vx)||isNaN(e.vy))&&(e.vx=e.vy=0)}}function p(e){return e.initialize&&e.initialize(t,u),e}return null==t&&(t=[]),f(),e={tick:d,restart:function(){return c.restart(h),e},stop:function(){return c.stop(),e},nodes:function(n){return arguments.length?(t=n,f(),s.forEach(p),e):t},alpha:function(t){return arguments.length?(n=+t,e):n},alphaMin:function(t){return arguments.length?(r=+t,e):r},alphaDecay:function(t){return arguments.length?(i=+t,e):+i},alphaTarget:function(t){return arguments.length?(a=+t,e):a},velocityDecay:function(t){return arguments.length?(o=1-t,e):1-o},randomSource:function(t){return arguments.length?(u=t,s.forEach(p),e):u},force:function(t,n){return arguments.length>1?(null==n?s.delete(t):s.set(t,p(n)),e):s.get(t)},find:function(e,n,r){var i,a,o,s,c,l=0,u=t.length;for(null==r?r=1/0:r*=r,l=0;l<u;++l)(o=(i=e-(s=t[l]).x)*i+(a=n-s.y)*a)<r&&(c=s,r=o);return c},on:function(t,n){return arguments.length>1?(l.on(t,n),e):l.on(t)}}}function Sl(){var t,e,n,r,i,a=pl(-30),o=1,s=1/0,c=.81;function l(n){var i,a=t.length,o=ul(t,wl,El).visitAfter(h);for(r=n,i=0;i<a;++i)e=t[i],o.visit(d)}function u(){if(t){var e,n,r=t.length;for(i=new Array(r),e=0;e<r;++e)n=t[e],i[n.index]=+a(n,e,t)}}function h(t){var e,n,r,a,o,s=0,c=0;if(t.length){for(r=a=o=0;o<4;++o)(e=t[o])&&(n=Math.abs(e.value))&&(s+=e.value,c+=n,r+=n*e.x,a+=n*e.y);t.x=r/c,t.y=a/c}else{(e=t).x=e.data.x,e.y=e.data.y;do{s+=i[e.data.index]}while(e=e.next)}t.value=s}function d(t,a,l,u){if(!t.value)return!0;var h=t.x-e.x,d=t.y-e.y,f=u-a,p=h*h+d*d;if(f*f/c<p)return p<s&&(0===h&&(p+=(h=gl(n))*h),0===d&&(p+=(d=gl(n))*d),p<o&&(p=Math.sqrt(o*p)),e.vx+=h*t.value*r/p,e.vy+=d*t.value*r/p),!0;if(!(t.length||p>=s)){(t.data!==e||t.next)&&(0===h&&(p+=(h=gl(n))*h),0===d&&(p+=(d=gl(n))*d),p<o&&(p=Math.sqrt(o*p)));do{t.data!==e&&(f=i[t.data.index]*r/p,e.vx+=h*f,e.vy+=d*f)}while(t=t.next)}}return l.initialize=function(e,r){t=e,n=r,u()},l.strength=function(t){return arguments.length?(a="function"==typeof t?t:pl(+t),u(),l):a},l.distanceMin=function(t){return arguments.length?(o=t*t,l):Math.sqrt(o)},l.distanceMax=function(t){return arguments.length?(s=t*t,l):Math.sqrt(s)},l.theta=function(t){return arguments.length?(c=t*t,l):Math.sqrt(c)},l}function Al(t,e,n){var r,i,a,o=pl(.1);function s(t){for(var o=0,s=r.length;o<s;++o){var c=r[o],l=c.x-e||1e-6,u=c.y-n||1e-6,h=Math.sqrt(l*l+u*u),d=(a[o]-h)*i[o]*t/h;c.vx+=l*d,c.vy+=u*d}}function c(){if(r){var e,n=r.length;for(i=new Array(n),a=new Array(n),e=0;e<n;++e)a[e]=+t(r[e],e,r),i[e]=isNaN(a[e])?0:+o(r[e],e,r)}}return"function"!=typeof t&&(t=pl(+t)),null==e&&(e=0),null==n&&(n=0),s.initialize=function(t){r=t,c()},s.strength=function(t){return arguments.length?(o="function"==typeof t?t:pl(+t),c(),s):o},s.radius=function(e){return arguments.length?(t="function"==typeof e?e:pl(+e),c(),s):t},s.x=function(t){return arguments.length?(e=+t,s):e},s.y=function(t){return arguments.length?(n=+t,s):n},s}function Ml(t){var e,n,r,i=pl(.1);function a(t){for(var i,a=0,o=e.length;a<o;++a)(i=e[a]).vx+=(r[a]-i.x)*n[a]*t}function o(){if(e){var a,o=e.length;for(n=new Array(o),r=new Array(o),a=0;a<o;++a)n[a]=isNaN(r[a]=+t(e[a],a,e))?0:+i(e[a],a,e)}}return"function"!=typeof t&&(t=pl(null==t?0:+t)),a.initialize=function(t){e=t,o()},a.strength=function(t){return arguments.length?(i="function"==typeof t?t:pl(+t),o(),a):i},a.x=function(e){return arguments.length?(t="function"==typeof e?e:pl(+e),o(),a):t},a}function Ol(t){var e,n,r,i=pl(.1);function a(t){for(var i,a=0,o=e.length;a<o;++a)(i=e[a]).vy+=(r[a]-i.y)*n[a]*t}function o(){if(e){var a,o=e.length;for(n=new Array(o),r=new Array(o),a=0;a<o;++a)n[a]=isNaN(r[a]=+t(e[a],a,e))?0:+i(e[a],a,e)}}return"function"!=typeof t&&(t=pl(null==t?0:+t)),a.initialize=function(t){e=t,o()},a.strength=function(t){return arguments.length?(i="function"==typeof t?t:pl(+t),o(),a):i},a.y=function(e){return arguments.length?(t="function"==typeof e?e:pl(+e),o(),a):t},a}function Nl(t,e){if((n=(t=e?t.toExponential(e-1):t.toExponential()).indexOf("e"))<0)return null;var n,r=t.slice(0,n);return[r.length>1?r[0]+r.slice(2):r,+t.slice(n+1)]}function Dl(t){return(t=Nl(Math.abs(t)))?t[1]:NaN}var Bl,Ll=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function Il(t){if(!(e=Ll.exec(t)))throw new Error("invalid format: "+t);var e;return new Fl({fill:e[1],align:e[2],sign:e[3],symbol:e[4],zero:e[5],width:e[6],comma:e[7],precision:e[8]&&e[8].slice(1),trim:e[9],type:e[10]})}function Fl(t){this.fill=void 0===t.fill?" ":t.fill+"",this.align=void 0===t.align?">":t.align+"",this.sign=void 0===t.sign?"-":t.sign+"",this.symbol=void 0===t.symbol?"":t.symbol+"",this.zero=!!t.zero,this.width=void 0===t.width?void 0:+t.width,this.comma=!!t.comma,this.precision=void 0===t.precision?void 0:+t.precision,this.trim=!!t.trim,this.type=void 0===t.type?"":t.type+""}function Rl(t,e){var n=Nl(t,e);if(!n)return t+"";var r=n[0],i=n[1];return i<0?"0."+new Array(-i).join("0")+r:r.length>i+1?r.slice(0,i+1)+"."+r.slice(i+1):r+new Array(i-r.length+2).join("0")}Il.prototype=Fl.prototype,Fl.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(void 0===this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(void 0===this.precision?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type};const Pl={"%":(t,e)=>(100*t).toFixed(e),b:t=>Math.round(t).toString(2),c:t=>t+"",d:function(t){return Math.abs(t=Math.round(t))>=1e21?t.toLocaleString("en").replace(/,/g,""):t.toString(10)},e:(t,e)=>t.toExponential(e),f:(t,e)=>t.toFixed(e),g:(t,e)=>t.toPrecision(e),o:t=>Math.round(t).toString(8),p:(t,e)=>Rl(100*t,e),r:Rl,s:function(t,e){var n=Nl(t,e);if(!n)return t+"";var r=n[0],i=n[1],a=i-(Bl=3*Math.max(-8,Math.min(8,Math.floor(i/3))))+1,o=r.length;return a===o?r:a>o?r+new Array(a-o+1).join("0"):a>0?r.slice(0,a)+"."+r.slice(a):"0."+new Array(1-a).join("0")+Nl(t,Math.max(0,e+a-1))[0]},X:t=>Math.round(t).toString(16).toUpperCase(),x:t=>Math.round(t).toString(16)};function jl(t){return t}var zl,Yl,Ul,$l=Array.prototype.map,Wl=["y","z","a","f","p","n","\xb5","m","","k","M","G","T","P","E","Z","Y"];function ql(t){var e,n,r=void 0===t.grouping||void 0===t.thousands?jl:(e=$l.call(t.grouping,Number),n=t.thousands+"",function(t,r){for(var i=t.length,a=[],o=0,s=e[0],c=0;i>0&&s>0&&(c+s+1>r&&(s=Math.max(1,r-c)),a.push(t.substring(i-=s,i+s)),!((c+=s+1)>r));)s=e[o=(o+1)%e.length];return a.reverse().join(n)}),i=void 0===t.currency?"":t.currency[0]+"",a=void 0===t.currency?"":t.currency[1]+"",o=void 0===t.decimal?".":t.decimal+"",s=void 0===t.numerals?jl:function(t){return function(e){return e.replace(/[0-9]/g,(function(e){return t[+e]}))}}($l.call(t.numerals,String)),c=void 0===t.percent?"%":t.percent+"",l=void 0===t.minus?"\u2212":t.minus+"",u=void 0===t.nan?"NaN":t.nan+"";function h(t){var e=(t=Il(t)).fill,n=t.align,h=t.sign,d=t.symbol,f=t.zero,p=t.width,g=t.comma,y=t.precision,m=t.trim,b=t.type;"n"===b?(g=!0,b="g"):Pl[b]||(void 0===y&&(y=12),m=!0,b="g"),(f||"0"===e&&"="===n)&&(f=!0,e="0",n="=");var v="$"===d?i:"#"===d&&/[boxX]/.test(b)?"0"+b.toLowerCase():"",_="$"===d?a:/[%p]/.test(b)?c:"",x=Pl[b],k=/[defgprs%]/.test(b);function w(t){var i,a,c,d=v,w=_;if("c"===b)w=x(t)+w,t="";else{var E=(t=+t)<0||1/t<0;if(t=isNaN(t)?u:x(Math.abs(t),y),m&&(t=function(t){t:for(var e,n=t.length,r=1,i=-1;r<n;++r)switch(t[r]){case".":i=e=r;break;case"0":0===i&&(i=r),e=r;break;default:if(!+t[r])break t;i>0&&(i=0)}return i>0?t.slice(0,i)+t.slice(e+1):t}(t)),E&&0==+t&&"+"!==h&&(E=!1),d=(E?"("===h?h:l:"-"===h||"("===h?"":h)+d,w=("s"===b?Wl[8+Bl/3]:"")+w+(E&&"("===h?")":""),k)for(i=-1,a=t.length;++i<a;)if(48>(c=t.charCodeAt(i))||c>57){w=(46===c?o+t.slice(i+1):t.slice(i))+w,t=t.slice(0,i);break}}g&&!f&&(t=r(t,1/0));var T=d.length+t.length+w.length,C=T<p?new Array(p-T+1).join(e):"";switch(g&&f&&(t=r(C+t,C.length?p-w.length:1/0),C=""),n){case"<":t=d+t+w+C;break;case"=":t=d+C+t+w;break;case"^":t=C.slice(0,T=C.length>>1)+d+t+w+C.slice(T);break;default:t=C+d+t+w}return s(t)}return y=void 0===y?6:/[gprs]/.test(b)?Math.max(1,Math.min(21,y)):Math.max(0,Math.min(20,y)),w.toString=function(){return t+""},w}return{format:h,formatPrefix:function(t,e){var n=h(((t=Il(t)).type="f",t)),r=3*Math.max(-8,Math.min(8,Math.floor(Dl(e)/3))),i=Math.pow(10,-r),a=Wl[8+r/3];return function(t){return n(i*t)+a}}}}function Hl(t){return zl=ql(t),Yl=zl.format,Ul=zl.formatPrefix,zl}function Vl(t){return Math.max(0,-Dl(Math.abs(t)))}function Gl(t,e){return Math.max(0,3*Math.max(-8,Math.min(8,Math.floor(Dl(e)/3)))-Dl(Math.abs(t)))}function Xl(t,e){return t=Math.abs(t),e=Math.abs(e)-t,Math.max(0,Dl(e)-Dl(t))+1}Hl({thousands:",",grouping:[3],currency:["$",""]});var Zl=1e-6,Ql=1e-12,Kl=Math.PI,Jl=Kl/2,tu=Kl/4,eu=2*Kl,nu=180/Kl,ru=Kl/180,iu=Math.abs,au=Math.atan,ou=Math.atan2,su=Math.cos,cu=Math.ceil,lu=Math.exp,uu=(Math.floor,Math.hypot),hu=Math.log,du=Math.pow,fu=Math.sin,pu=Math.sign||function(t){return t>0?1:t<0?-1:0},gu=Math.sqrt,yu=Math.tan;function mu(t){return t>1?0:t<-1?Kl:Math.acos(t)}function bu(t){return t>1?Jl:t<-1?-Jl:Math.asin(t)}function vu(t){return(t=fu(t/2))*t}function _u(){}function xu(t,e){t&&wu.hasOwnProperty(t.type)&&wu[t.type](t,e)}var ku={Feature:function(t,e){xu(t.geometry,e)},FeatureCollection:function(t,e){for(var n=t.features,r=-1,i=n.length;++r<i;)xu(n[r].geometry,e)}},wu={Sphere:function(t,e){e.sphere()},Point:function(t,e){t=t.coordinates,e.point(t[0],t[1],t[2])},MultiPoint:function(t,e){for(var n=t.coordinates,r=-1,i=n.length;++r<i;)t=n[r],e.point(t[0],t[1],t[2])},LineString:function(t,e){Eu(t.coordinates,e,0)},MultiLineString:function(t,e){for(var n=t.coordinates,r=-1,i=n.length;++r<i;)Eu(n[r],e,0)},Polygon:function(t,e){Tu(t.coordinates,e)},MultiPolygon:function(t,e){for(var n=t.coordinates,r=-1,i=n.length;++r<i;)Tu(n[r],e)},GeometryCollection:function(t,e){for(var n=t.geometries,r=-1,i=n.length;++r<i;)xu(n[r],e)}};function Eu(t,e,n){var r,i=-1,a=t.length-n;for(e.lineStart();++i<a;)r=t[i],e.point(r[0],r[1],r[2]);e.lineEnd()}function Tu(t,e){var n=-1,r=t.length;for(e.polygonStart();++n<r;)Eu(t[n],e,1);e.polygonEnd()}function Cu(t,e){t&&ku.hasOwnProperty(t.type)?ku[t.type](t,e):xu(t,e)}var Su,Au,Mu,Ou,Nu,Du,Bu,Lu,Iu,Fu,Ru,Pu,ju,zu,Yu,Uu,$u=new x,Wu=new x,qu={point:_u,lineStart:_u,lineEnd:_u,polygonStart:function(){$u=new x,qu.lineStart=Hu,qu.lineEnd=Vu},polygonEnd:function(){var t=+$u;Wu.add(t<0?eu+t:t),this.lineStart=this.lineEnd=this.point=_u},sphere:function(){Wu.add(eu)}};function Hu(){qu.point=Gu}function Vu(){Xu(Su,Au)}function Gu(t,e){qu.point=Xu,Su=t,Au=e,Mu=t*=ru,Ou=su(e=(e*=ru)/2+tu),Nu=fu(e)}function Xu(t,e){var n=(t*=ru)-Mu,r=n>=0?1:-1,i=r*n,a=su(e=(e*=ru)/2+tu),o=fu(e),s=Nu*o,c=Ou*a+s*su(i),l=s*r*fu(i);$u.add(ou(l,c)),Mu=t,Ou=a,Nu=o}function Zu(t){return Wu=new x,Cu(t,qu),2*Wu}function Qu(t){return[ou(t[1],t[0]),bu(t[2])]}function Ku(t){var e=t[0],n=t[1],r=su(n);return[r*su(e),r*fu(e),fu(n)]}function Ju(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function th(t,e){return[t[1]*e[2]-t[2]*e[1],t[2]*e[0]-t[0]*e[2],t[0]*e[1]-t[1]*e[0]]}function eh(t,e){t[0]+=e[0],t[1]+=e[1],t[2]+=e[2]}function nh(t,e){return[t[0]*e,t[1]*e,t[2]*e]}function rh(t){var e=gu(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]);t[0]/=e,t[1]/=e,t[2]/=e}var ih,ah,oh,sh,ch,lh,uh,hh,dh,fh,ph,gh,yh,mh,bh,vh,_h={point:xh,lineStart:wh,lineEnd:Eh,polygonStart:function(){_h.point=Th,_h.lineStart=Ch,_h.lineEnd=Sh,zu=new x,qu.polygonStart()},polygonEnd:function(){qu.polygonEnd(),_h.point=xh,_h.lineStart=wh,_h.lineEnd=Eh,$u<0?(Du=-(Lu=180),Bu=-(Iu=90)):zu>Zl?Iu=90:zu<-1e-6&&(Bu=-90),Uu[0]=Du,Uu[1]=Lu},sphere:function(){Du=-(Lu=180),Bu=-(Iu=90)}};function xh(t,e){Yu.push(Uu=[Du=t,Lu=t]),e<Bu&&(Bu=e),e>Iu&&(Iu=e)}function kh(t,e){var n=Ku([t*ru,e*ru]);if(ju){var r=th(ju,n),i=th([r[1],-r[0],0],r);rh(i),i=Qu(i);var a,o=t-Fu,s=o>0?1:-1,c=i[0]*nu*s,l=iu(o)>180;l^(s*Fu<c&&c<s*t)?(a=i[1]*nu)>Iu&&(Iu=a):l^(s*Fu<(c=(c+360)%360-180)&&c<s*t)?(a=-i[1]*nu)<Bu&&(Bu=a):(e<Bu&&(Bu=e),e>Iu&&(Iu=e)),l?t<Fu?Ah(Du,t)>Ah(Du,Lu)&&(Lu=t):Ah(t,Lu)>Ah(Du,Lu)&&(Du=t):Lu>=Du?(t<Du&&(Du=t),t>Lu&&(Lu=t)):t>Fu?Ah(Du,t)>Ah(Du,Lu)&&(Lu=t):Ah(t,Lu)>Ah(Du,Lu)&&(Du=t)}else Yu.push(Uu=[Du=t,Lu=t]);e<Bu&&(Bu=e),e>Iu&&(Iu=e),ju=n,Fu=t}function wh(){_h.point=kh}function Eh(){Uu[0]=Du,Uu[1]=Lu,_h.point=xh,ju=null}function Th(t,e){if(ju){var n=t-Fu;zu.add(iu(n)>180?n+(n>0?360:-360):n)}else Ru=t,Pu=e;qu.point(t,e),kh(t,e)}function Ch(){qu.lineStart()}function Sh(){Th(Ru,Pu),qu.lineEnd(),iu(zu)>Zl&&(Du=-(Lu=180)),Uu[0]=Du,Uu[1]=Lu,ju=null}function Ah(t,e){return(e-=t)<0?e+360:e}function Mh(t,e){return t[0]-e[0]}function Oh(t,e){return t[0]<=t[1]?t[0]<=e&&e<=t[1]:e<t[0]||t[1]<e}function Nh(t){var e,n,r,i,a,o,s;if(Iu=Lu=-(Du=Bu=1/0),Yu=[],Cu(t,_h),n=Yu.length){for(Yu.sort(Mh),e=1,a=[r=Yu[0]];e<n;++e)Oh(r,(i=Yu[e])[0])||Oh(r,i[1])?(Ah(r[0],i[1])>Ah(r[0],r[1])&&(r[1]=i[1]),Ah(i[0],r[1])>Ah(r[0],r[1])&&(r[0]=i[0])):a.push(r=i);for(o=-1/0,e=0,r=a[n=a.length-1];e<=n;r=i,++e)i=a[e],(s=Ah(r[1],i[0]))>o&&(o=s,Du=i[0],Lu=r[1])}return Yu=Uu=null,Du===1/0||Bu===1/0?[[NaN,NaN],[NaN,NaN]]:[[Du,Bu],[Lu,Iu]]}var Dh={sphere:_u,point:Bh,lineStart:Ih,lineEnd:Ph,polygonStart:function(){Dh.lineStart=jh,Dh.lineEnd=zh},polygonEnd:function(){Dh.lineStart=Ih,Dh.lineEnd=Ph}};function Bh(t,e){t*=ru;var n=su(e*=ru);Lh(n*su(t),n*fu(t),fu(e))}function Lh(t,e,n){++ih,oh+=(t-oh)/ih,sh+=(e-sh)/ih,ch+=(n-ch)/ih}function Ih(){Dh.point=Fh}function Fh(t,e){t*=ru;var n=su(e*=ru);mh=n*su(t),bh=n*fu(t),vh=fu(e),Dh.point=Rh,Lh(mh,bh,vh)}function Rh(t,e){t*=ru;var n=su(e*=ru),r=n*su(t),i=n*fu(t),a=fu(e),o=ou(gu((o=bh*a-vh*i)*o+(o=vh*r-mh*a)*o+(o=mh*i-bh*r)*o),mh*r+bh*i+vh*a);ah+=o,lh+=o*(mh+(mh=r)),uh+=o*(bh+(bh=i)),hh+=o*(vh+(vh=a)),Lh(mh,bh,vh)}function Ph(){Dh.point=Bh}function jh(){Dh.point=Yh}function zh(){Uh(gh,yh),Dh.point=Bh}function Yh(t,e){gh=t,yh=e,t*=ru,e*=ru,Dh.point=Uh;var n=su(e);mh=n*su(t),bh=n*fu(t),vh=fu(e),Lh(mh,bh,vh)}function Uh(t,e){t*=ru;var n=su(e*=ru),r=n*su(t),i=n*fu(t),a=fu(e),o=bh*a-vh*i,s=vh*r-mh*a,c=mh*i-bh*r,l=uu(o,s,c),u=bu(l),h=l&&-u/l;dh.add(h*o),fh.add(h*s),ph.add(h*c),ah+=u,lh+=u*(mh+(mh=r)),uh+=u*(bh+(bh=i)),hh+=u*(vh+(vh=a)),Lh(mh,bh,vh)}function $h(t){ih=ah=oh=sh=ch=lh=uh=hh=0,dh=new x,fh=new x,ph=new x,Cu(t,Dh);var e=+dh,n=+fh,r=+ph,i=uu(e,n,r);return i<Ql&&(e=lh,n=uh,r=hh,ah<Zl&&(e=oh,n=sh,r=ch),(i=uu(e,n,r))<Ql)?[NaN,NaN]:[ou(n,e)*nu,bu(r/i)*nu]}function Wh(t){return function(){return t}}function qh(t,e){function n(n,r){return n=t(n,r),e(n[0],n[1])}return t.invert&&e.invert&&(n.invert=function(n,r){return(n=e.invert(n,r))&&t.invert(n[0],n[1])}),n}function Hh(t,e){return[iu(t)>Kl?t+Math.round(-t/eu)*eu:t,e]}function Vh(t,e,n){return(t%=eu)?e||n?qh(Xh(t),Zh(e,n)):Xh(t):e||n?Zh(e,n):Hh}function Gh(t){return function(e,n){return[(e+=t)>Kl?e-eu:e<-Kl?e+eu:e,n]}}function Xh(t){var e=Gh(t);return e.invert=Gh(-t),e}function Zh(t,e){var n=su(t),r=fu(t),i=su(e),a=fu(e);function o(t,e){var o=su(e),s=su(t)*o,c=fu(t)*o,l=fu(e),u=l*n+s*r;return[ou(c*i-u*a,s*n-l*r),bu(u*i+c*a)]}return o.invert=function(t,e){var o=su(e),s=su(t)*o,c=fu(t)*o,l=fu(e),u=l*i-c*a;return[ou(c*i+l*a,s*n+u*r),bu(u*n-s*r)]},o}function Qh(t){function e(e){return(e=t(e[0]*ru,e[1]*ru))[0]*=nu,e[1]*=nu,e}return t=Vh(t[0]*ru,t[1]*ru,t.length>2?t[2]*ru:0),e.invert=function(e){return(e=t.invert(e[0]*ru,e[1]*ru))[0]*=nu,e[1]*=nu,e},e}function Kh(t,e,n,r,i,a){if(n){var o=su(e),s=fu(e),c=r*n;null==i?(i=e+r*eu,a=e-c/2):(i=Jh(o,i),a=Jh(o,a),(r>0?i<a:i>a)&&(i+=r*eu));for(var l,u=i;r>0?u>a:u<a;u-=c)l=Qu([o,-s*su(u),-s*fu(u)]),t.point(l[0],l[1])}}function Jh(t,e){(e=Ku(e))[0]-=t,rh(e);var n=mu(-e[1]);return((-e[2]<0?-n:n)+eu-Zl)%eu}function td(){var t,e,n=Wh([0,0]),r=Wh(90),i=Wh(6),a={point:function(n,r){t.push(n=e(n,r)),n[0]*=nu,n[1]*=nu}};function o(){var o=n.apply(this,arguments),s=r.apply(this,arguments)*ru,c=i.apply(this,arguments)*ru;return t=[],e=Vh(-o[0]*ru,-o[1]*ru,0).invert,Kh(a,s,c,1),o={type:"Polygon",coordinates:[t]},t=e=null,o}return o.center=function(t){return arguments.length?(n="function"==typeof t?t:Wh([+t[0],+t[1]]),o):n},o.radius=function(t){return arguments.length?(r="function"==typeof t?t:Wh(+t),o):r},o.precision=function(t){return arguments.length?(i="function"==typeof t?t:Wh(+t),o):i},o}function ed(){var t,e=[];return{point:function(e,n,r){t.push([e,n,r])},lineStart:function(){e.push(t=[])},lineEnd:_u,rejoin:function(){e.length>1&&e.push(e.pop().concat(e.shift()))},result:function(){var n=e;return e=[],t=null,n}}}function nd(t,e){return iu(t[0]-e[0])<Zl&&iu(t[1]-e[1])<Zl}function rd(t,e,n,r){this.x=t,this.z=e,this.o=n,this.e=r,this.v=!1,this.n=this.p=null}function id(t,e,n,r,i){var a,o,s=[],c=[];if(t.forEach((function(t){if(!((e=t.length-1)<=0)){var e,n,r=t[0],o=t[e];if(nd(r,o)){if(!r[2]&&!o[2]){for(i.lineStart(),a=0;a<e;++a)i.point((r=t[a])[0],r[1]);return void i.lineEnd()}o[0]+=2e-6}s.push(n=new rd(r,t,null,!0)),c.push(n.o=new rd(r,null,n,!1)),s.push(n=new rd(o,t,null,!1)),c.push(n.o=new rd(o,null,n,!0))}})),s.length){for(c.sort(e),ad(s),ad(c),a=0,o=c.length;a<o;++a)c[a].e=n=!n;for(var l,u,h=s[0];;){for(var d=h,f=!0;d.v;)if((d=d.n)===h)return;l=d.z,i.lineStart();do{if(d.v=d.o.v=!0,d.e){if(f)for(a=0,o=l.length;a<o;++a)i.point((u=l[a])[0],u[1]);else r(d.x,d.n.x,1,i);d=d.n}else{if(f)for(l=d.p.z,a=l.length-1;a>=0;--a)i.point((u=l[a])[0],u[1]);else r(d.x,d.p.x,-1,i);d=d.p}l=(d=d.o).z,f=!f}while(!d.v);i.lineEnd()}}}function ad(t){if(e=t.length){for(var e,n,r=0,i=t[0];++r<e;)i.n=n=t[r],n.p=i,i=n;i.n=n=t[0],n.p=i}}function od(t){return iu(t[0])<=Kl?t[0]:pu(t[0])*((iu(t[0])+Kl)%eu-Kl)}function sd(t,e){var n=od(e),r=e[1],i=fu(r),a=[fu(n),-su(n),0],o=0,s=0,c=new x;1===i?r=Jl+Zl:-1===i&&(r=-Jl-Zl);for(var l=0,u=t.length;l<u;++l)if(d=(h=t[l]).length)for(var h,d,f=h[d-1],p=od(f),g=f[1]/2+tu,y=fu(g),m=su(g),b=0;b<d;++b,p=_,y=w,m=E,f=v){var v=h[b],_=od(v),k=v[1]/2+tu,w=fu(k),E=su(k),T=_-p,C=T>=0?1:-1,S=C*T,A=S>Kl,M=y*w;if(c.add(ou(M*C*fu(S),m*E+M*su(S))),o+=A?T+C*eu:T,A^p>=n^_>=n){var O=th(Ku(f),Ku(v));rh(O);var N=th(a,O);rh(N);var D=(A^T>=0?-1:1)*bu(N[2]);(r>D||r===D&&(O[0]||O[1]))&&(s+=A^T>=0?1:-1)}}return(o<-1e-6||o<Zl&&c<-1e-12)^1&s}function cd(t,e,n,r){return function(i){var a,o,s,c=e(i),l=ed(),u=e(l),h=!1,d={point:f,lineStart:g,lineEnd:y,polygonStart:function(){d.point=m,d.lineStart=b,d.lineEnd=v,o=[],a=[]},polygonEnd:function(){d.point=f,d.lineStart=g,d.lineEnd=y,o=yt(o);var t=sd(a,r);o.length?(h||(i.polygonStart(),h=!0),id(o,ud,t,n,i)):t&&(h||(i.polygonStart(),h=!0),i.lineStart(),n(null,null,1,i),i.lineEnd()),h&&(i.polygonEnd(),h=!1),o=a=null},sphere:function(){i.polygonStart(),i.lineStart(),n(null,null,1,i),i.lineEnd(),i.polygonEnd()}};function f(e,n){t(e,n)&&i.point(e,n)}function p(t,e){c.point(t,e)}function g(){d.point=p,c.lineStart()}function y(){d.point=f,c.lineEnd()}function m(t,e){s.push([t,e]),u.point(t,e)}function b(){u.lineStart(),s=[]}function v(){m(s[0][0],s[0][1]),u.lineEnd();var t,e,n,r,c=u.clean(),d=l.result(),f=d.length;if(s.pop(),a.push(s),s=null,f)if(1&c){if((e=(n=d[0]).length-1)>0){for(h||(i.polygonStart(),h=!0),i.lineStart(),t=0;t<e;++t)i.point((r=n[t])[0],r[1]);i.lineEnd()}}else f>1&&2&c&&d.push(d.pop().concat(d.shift())),o.push(d.filter(ld))}return d}}function ld(t){return t.length>1}function ud(t,e){return((t=t.x)[0]<0?t[1]-Jl-Zl:Jl-t[1])-((e=e.x)[0]<0?e[1]-Jl-Zl:Jl-e[1])}Hh.invert=Hh;const hd=cd((function(){return!0}),(function(t){var e,n=NaN,r=NaN,i=NaN;return{lineStart:function(){t.lineStart(),e=1},point:function(a,o){var s=a>0?Kl:-Kl,c=iu(a-n);iu(c-Kl)<Zl?(t.point(n,r=(r+o)/2>0?Jl:-Jl),t.point(i,r),t.lineEnd(),t.lineStart(),t.point(s,r),t.point(a,r),e=0):i!==s&&c>=Kl&&(iu(n-i)<Zl&&(n-=i*Zl),iu(a-s)<Zl&&(a-=s*Zl),r=function(t,e,n,r){var i,a,o=fu(t-n);return iu(o)>Zl?au((fu(e)*(a=su(r))*fu(n)-fu(r)*(i=su(e))*fu(t))/(i*a*o)):(e+r)/2}(n,r,a,o),t.point(i,r),t.lineEnd(),t.lineStart(),t.point(s,r),e=0),t.point(n=a,r=o),i=s},lineEnd:function(){t.lineEnd(),n=r=NaN},clean:function(){return 2-e}}}),(function(t,e,n,r){var i;if(null==t)i=n*Jl,r.point(-Kl,i),r.point(0,i),r.point(Kl,i),r.point(Kl,0),r.point(Kl,-i),r.point(0,-i),r.point(-Kl,-i),r.point(-Kl,0),r.point(-Kl,i);else if(iu(t[0]-e[0])>Zl){var a=t[0]<e[0]?Kl:-Kl;i=n*a/2,r.point(-a,i),r.point(0,i),r.point(a,i)}else r.point(e[0],e[1])}),[-Kl,-Jl]);function dd(t){var e=su(t),n=6*ru,r=e>0,i=iu(e)>Zl;function a(t,n){return su(t)*su(n)>e}function o(t,n,r){var i=[1,0,0],a=th(Ku(t),Ku(n)),o=Ju(a,a),s=a[0],c=o-s*s;if(!c)return!r&&t;var l=e*o/c,u=-e*s/c,h=th(i,a),d=nh(i,l);eh(d,nh(a,u));var f=h,p=Ju(d,f),g=Ju(f,f),y=p*p-g*(Ju(d,d)-1);if(!(y<0)){var m=gu(y),b=nh(f,(-p-m)/g);if(eh(b,d),b=Qu(b),!r)return b;var v,_=t[0],x=n[0],k=t[1],w=n[1];x<_&&(v=_,_=x,x=v);var E=x-_,T=iu(E-Kl)<Zl;if(!T&&w<k&&(v=k,k=w,w=v),T||E<Zl?T?k+w>0^b[1]<(iu(b[0]-_)<Zl?k:w):k<=b[1]&&b[1]<=w:E>Kl^(_<=b[0]&&b[0]<=x)){var C=nh(f,(-p+m)/g);return eh(C,d),[b,Qu(C)]}}}function s(e,n){var i=r?t:Kl-t,a=0;return e<-i?a|=1:e>i&&(a|=2),n<-i?a|=4:n>i&&(a|=8),a}return cd(a,(function(t){var e,n,c,l,u;return{lineStart:function(){l=c=!1,u=1},point:function(h,d){var f,p=[h,d],g=a(h,d),y=r?g?0:s(h,d):g?s(h+(h<0?Kl:-Kl),d):0;if(!e&&(l=c=g)&&t.lineStart(),g!==c&&(!(f=o(e,p))||nd(e,f)||nd(p,f))&&(p[2]=1),g!==c)u=0,g?(t.lineStart(),f=o(p,e),t.point(f[0],f[1])):(f=o(e,p),t.point(f[0],f[1],2),t.lineEnd()),e=f;else if(i&&e&&r^g){var m;y&n||!(m=o(p,e,!0))||(u=0,r?(t.lineStart(),t.point(m[0][0],m[0][1]),t.point(m[1][0],m[1][1]),t.lineEnd()):(t.point(m[1][0],m[1][1]),t.lineEnd(),t.lineStart(),t.point(m[0][0],m[0][1],3)))}!g||e&&nd(e,p)||t.point(p[0],p[1]),e=p,c=g,n=y},lineEnd:function(){c&&t.lineEnd(),e=null},clean:function(){return u|(l&&c)<<1}}}),(function(e,r,i,a){Kh(a,t,n,i,e,r)}),r?[0,-t]:[-Kl,t-Kl])}var fd,pd,gd,yd,md=1e9,bd=-md;function vd(t,e,n,r){function i(i,a){return t<=i&&i<=n&&e<=a&&a<=r}function a(i,a,s,l){var u=0,h=0;if(null==i||(u=o(i,s))!==(h=o(a,s))||c(i,a)<0^s>0)do{l.point(0===u||3===u?t:n,u>1?r:e)}while((u=(u+s+4)%4)!==h);else l.point(a[0],a[1])}function o(r,i){return iu(r[0]-t)<Zl?i>0?0:3:iu(r[0]-n)<Zl?i>0?2:1:iu(r[1]-e)<Zl?i>0?1:0:i>0?3:2}function s(t,e){return c(t.x,e.x)}function c(t,e){var n=o(t,1),r=o(e,1);return n!==r?n-r:0===n?e[1]-t[1]:1===n?t[0]-e[0]:2===n?t[1]-e[1]:e[0]-t[0]}return function(o){var c,l,u,h,d,f,p,g,y,m,b,v=o,_=ed(),x={point:k,lineStart:function(){x.point=w,l&&l.push(u=[]),m=!0,y=!1,p=g=NaN},lineEnd:function(){c&&(w(h,d),f&&y&&_.rejoin(),c.push(_.result())),x.point=k,y&&v.lineEnd()},polygonStart:function(){v=_,c=[],l=[],b=!0},polygonEnd:function(){var e=function(){for(var e=0,n=0,i=l.length;n<i;++n)for(var a,o,s=l[n],c=1,u=s.length,h=s[0],d=h[0],f=h[1];c<u;++c)a=d,o=f,d=(h=s[c])[0],f=h[1],o<=r?f>r&&(d-a)*(r-o)>(f-o)*(t-a)&&++e:f<=r&&(d-a)*(r-o)<(f-o)*(t-a)&&--e;return e}(),n=b&&e,i=(c=yt(c)).length;(n||i)&&(o.polygonStart(),n&&(o.lineStart(),a(null,null,1,o),o.lineEnd()),i&&id(c,s,e,a,o),o.polygonEnd()),v=o,c=l=u=null}};function k(t,e){i(t,e)&&v.point(t,e)}function w(a,o){var s=i(a,o);if(l&&u.push([a,o]),m)h=a,d=o,f=s,m=!1,s&&(v.lineStart(),v.point(a,o));else if(s&&y)v.point(a,o);else{var c=[p=Math.max(bd,Math.min(md,p)),g=Math.max(bd,Math.min(md,g))],_=[a=Math.max(bd,Math.min(md,a)),o=Math.max(bd,Math.min(md,o))];!function(t,e,n,r,i,a){var o,s=t[0],c=t[1],l=0,u=1,h=e[0]-s,d=e[1]-c;if(o=n-s,h||!(o>0)){if(o/=h,h<0){if(o<l)return;o<u&&(u=o)}else if(h>0){if(o>u)return;o>l&&(l=o)}if(o=i-s,h||!(o<0)){if(o/=h,h<0){if(o>u)return;o>l&&(l=o)}else if(h>0){if(o<l)return;o<u&&(u=o)}if(o=r-c,d||!(o>0)){if(o/=d,d<0){if(o<l)return;o<u&&(u=o)}else if(d>0){if(o>u)return;o>l&&(l=o)}if(o=a-c,d||!(o<0)){if(o/=d,d<0){if(o>u)return;o>l&&(l=o)}else if(d>0){if(o<l)return;o<u&&(u=o)}return l>0&&(t[0]=s+l*h,t[1]=c+l*d),u<1&&(e[0]=s+u*h,e[1]=c+u*d),!0}}}}}(c,_,t,e,n,r)?s&&(v.lineStart(),v.point(a,o),b=!1):(y||(v.lineStart(),v.point(c[0],c[1])),v.point(_[0],_[1]),s||v.lineEnd(),b=!1)}p=a,g=o,y=s}return x}}function _d(){var t,e,n,r=0,i=0,a=960,o=500;return n={stream:function(n){return t&&e===n?t:t=vd(r,i,a,o)(e=n)},extent:function(s){return arguments.length?(r=+s[0][0],i=+s[0][1],a=+s[1][0],o=+s[1][1],t=e=null,n):[[r,i],[a,o]]}}}var xd={sphere:_u,point:_u,lineStart:function(){xd.point=wd,xd.lineEnd=kd},lineEnd:_u,polygonStart:_u,polygonEnd:_u};function kd(){xd.point=xd.lineEnd=_u}function wd(t,e){pd=t*=ru,gd=fu(e*=ru),yd=su(e),xd.point=Ed}function Ed(t,e){t*=ru;var n=fu(e*=ru),r=su(e),i=iu(t-pd),a=su(i),o=r*fu(i),s=yd*n-gd*r*a,c=gd*n+yd*r*a;fd.add(ou(gu(o*o+s*s),c)),pd=t,gd=n,yd=r}function Td(t){return fd=new x,Cu(t,xd),+fd}var Cd=[null,null],Sd={type:"LineString",coordinates:Cd};function Ad(t,e){return Cd[0]=t,Cd[1]=e,Td(Sd)}var Md={Feature:function(t,e){return Nd(t.geometry,e)},FeatureCollection:function(t,e){for(var n=t.features,r=-1,i=n.length;++r<i;)if(Nd(n[r].geometry,e))return!0;return!1}},Od={Sphere:function(){return!0},Point:function(t,e){return Dd(t.coordinates,e)},MultiPoint:function(t,e){for(var n=t.coordinates,r=-1,i=n.length;++r<i;)if(Dd(n[r],e))return!0;return!1},LineString:function(t,e){return Bd(t.coordinates,e)},MultiLineString:function(t,e){for(var n=t.coordinates,r=-1,i=n.length;++r<i;)if(Bd(n[r],e))return!0;return!1},Polygon:function(t,e){return Ld(t.coordinates,e)},MultiPolygon:function(t,e){for(var n=t.coordinates,r=-1,i=n.length;++r<i;)if(Ld(n[r],e))return!0;return!1},GeometryCollection:function(t,e){for(var n=t.geometries,r=-1,i=n.length;++r<i;)if(Nd(n[r],e))return!0;return!1}};function Nd(t,e){return!(!t||!Od.hasOwnProperty(t.type))&&Od[t.type](t,e)}function Dd(t,e){return 0===Ad(t,e)}function Bd(t,e){for(var n,r,i,a=0,o=t.length;a<o;a++){if(0===(r=Ad(t[a],e)))return!0;if(a>0&&(i=Ad(t[a],t[a-1]))>0&&n<=i&&r<=i&&(n+r-i)*(1-Math.pow((n-r)/i,2))<Ql*i)return!0;n=r}return!1}function Ld(t,e){return!!sd(t.map(Id),Fd(e))}function Id(t){return(t=t.map(Fd)).pop(),t}function Fd(t){return[t[0]*ru,t[1]*ru]}function Rd(t,e){return(t&&Md.hasOwnProperty(t.type)?Md[t.type]:Nd)(t,e)}function Pd(t,e,n){var r=xt(t,e-Zl,n).concat(e);return function(t){return r.map((function(e){return[t,e]}))}}function jd(t,e,n){var r=xt(t,e-Zl,n).concat(e);return function(t){return r.map((function(e){return[e,t]}))}}function zd(){var t,e,n,r,i,a,o,s,c,l,u,h,d=10,f=d,p=90,g=360,y=2.5;function m(){return{type:"MultiLineString",coordinates:b()}}function b(){return xt(cu(r/p)*p,n,p).map(u).concat(xt(cu(s/g)*g,o,g).map(h)).concat(xt(cu(e/d)*d,t,d).filter((function(t){return iu(t%p)>Zl})).map(c)).concat(xt(cu(a/f)*f,i,f).filter((function(t){return iu(t%g)>Zl})).map(l))}return m.lines=function(){return b().map((function(t){return{type:"LineString",coordinates:t}}))},m.outline=function(){return{type:"Polygon",coordinates:[u(r).concat(h(o).slice(1),u(n).reverse().slice(1),h(s).reverse().slice(1))]}},m.extent=function(t){return arguments.length?m.extentMajor(t).extentMinor(t):m.extentMinor()},m.extentMajor=function(t){return arguments.length?(r=+t[0][0],n=+t[1][0],s=+t[0][1],o=+t[1][1],r>n&&(t=r,r=n,n=t),s>o&&(t=s,s=o,o=t),m.precision(y)):[[r,s],[n,o]]},m.extentMinor=function(n){return arguments.length?(e=+n[0][0],t=+n[1][0],a=+n[0][1],i=+n[1][1],e>t&&(n=e,e=t,t=n),a>i&&(n=a,a=i,i=n),m.precision(y)):[[e,a],[t,i]]},m.step=function(t){return arguments.length?m.stepMajor(t).stepMinor(t):m.stepMinor()},m.stepMajor=function(t){return arguments.length?(p=+t[0],g=+t[1],m):[p,g]},m.stepMinor=function(t){return arguments.length?(d=+t[0],f=+t[1],m):[d,f]},m.precision=function(d){return arguments.length?(y=+d,c=Pd(a,i,90),l=jd(e,t,y),u=Pd(s,o,90),h=jd(r,n,y),m):y},m.extentMajor([[-180,-89.999999],[180,89.999999]]).extentMinor([[-180,-80.000001],[180,80.000001]])}function Yd(){return zd()()}function Ud(t,e){var n=t[0]*ru,r=t[1]*ru,i=e[0]*ru,a=e[1]*ru,o=su(r),s=fu(r),c=su(a),l=fu(a),u=o*su(n),h=o*fu(n),d=c*su(i),f=c*fu(i),p=2*bu(gu(vu(a-r)+o*c*vu(i-n))),g=fu(p),y=p?function(t){var e=fu(t*=p)/g,n=fu(p-t)/g,r=n*u+e*d,i=n*h+e*f,a=n*s+e*l;return[ou(i,r)*nu,ou(a,gu(r*r+i*i))*nu]}:function(){return[n*nu,r*nu]};return y.distance=p,y}const $d=t=>t;var Wd,qd,Hd,Vd,Gd=new x,Xd=new x,Zd={point:_u,lineStart:_u,lineEnd:_u,polygonStart:function(){Zd.lineStart=Qd,Zd.lineEnd=tf},polygonEnd:function(){Zd.lineStart=Zd.lineEnd=Zd.point=_u,Gd.add(iu(Xd)),Xd=new x},result:function(){var t=Gd/2;return Gd=new x,t}};function Qd(){Zd.point=Kd}function Kd(t,e){Zd.point=Jd,Wd=Hd=t,qd=Vd=e}function Jd(t,e){Xd.add(Vd*t-Hd*e),Hd=t,Vd=e}function tf(){Jd(Wd,qd)}const ef=Zd;var nf=1/0,rf=nf,af=-nf,of=af,sf={point:function(t,e){t<nf&&(nf=t),t>af&&(af=t),e<rf&&(rf=e),e>of&&(of=e)},lineStart:_u,lineEnd:_u,polygonStart:_u,polygonEnd:_u,result:function(){var t=[[nf,rf],[af,of]];return af=of=-(rf=nf=1/0),t}};const cf=sf;var lf,uf,hf,df,ff=0,pf=0,gf=0,yf=0,mf=0,bf=0,vf=0,_f=0,xf=0,kf={point:wf,lineStart:Ef,lineEnd:Sf,polygonStart:function(){kf.lineStart=Af,kf.lineEnd=Mf},polygonEnd:function(){kf.point=wf,kf.lineStart=Ef,kf.lineEnd=Sf},result:function(){var t=xf?[vf/xf,_f/xf]:bf?[yf/bf,mf/bf]:gf?[ff/gf,pf/gf]:[NaN,NaN];return ff=pf=gf=yf=mf=bf=vf=_f=xf=0,t}};function wf(t,e){ff+=t,pf+=e,++gf}function Ef(){kf.point=Tf}function Tf(t,e){kf.point=Cf,wf(hf=t,df=e)}function Cf(t,e){var n=t-hf,r=e-df,i=gu(n*n+r*r);yf+=i*(hf+t)/2,mf+=i*(df+e)/2,bf+=i,wf(hf=t,df=e)}function Sf(){kf.point=wf}function Af(){kf.point=Of}function Mf(){Nf(lf,uf)}function Of(t,e){kf.point=Nf,wf(lf=hf=t,uf=df=e)}function Nf(t,e){var n=t-hf,r=e-df,i=gu(n*n+r*r);yf+=i*(hf+t)/2,mf+=i*(df+e)/2,bf+=i,vf+=(i=df*t-hf*e)*(hf+t),_f+=i*(df+e),xf+=3*i,wf(hf=t,df=e)}const Df=kf;function Bf(t){this._context=t}Bf.prototype={_radius:4.5,pointRadius:function(t){return this._radius=t,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._context.closePath(),this._point=NaN},point:function(t,e){switch(this._point){case 0:this._context.moveTo(t,e),this._point=1;break;case 1:this._context.lineTo(t,e);break;default:this._context.moveTo(t+this._radius,e),this._context.arc(t,e,this._radius,0,eu)}},result:_u};var Lf,If,Ff,Rf,Pf,jf=new x,zf={point:_u,lineStart:function(){zf.point=Yf},lineEnd:function(){Lf&&Uf(If,Ff),zf.point=_u},polygonStart:function(){Lf=!0},polygonEnd:function(){Lf=null},result:function(){var t=+jf;return jf=new x,t}};function Yf(t,e){zf.point=Uf,If=Rf=t,Ff=Pf=e}function Uf(t,e){Rf-=t,Pf-=e,jf.add(gu(Rf*Rf+Pf*Pf)),Rf=t,Pf=e}const $f=zf;function Wf(){this._string=[]}function qf(t){return"m0,"+t+"a"+t+","+t+" 0 1,1 0,"+-2*t+"a"+t+","+t+" 0 1,1 0,"+2*t+"z"}function Hf(t,e){var n,r,i=4.5;function a(t){return t&&("function"==typeof i&&r.pointRadius(+i.apply(this,arguments)),Cu(t,n(r))),r.result()}return a.area=function(t){return Cu(t,n(ef)),ef.result()},a.measure=function(t){return Cu(t,n($f)),$f.result()},a.bounds=function(t){return Cu(t,n(cf)),cf.result()},a.centroid=function(t){return Cu(t,n(Df)),Df.result()},a.projection=function(e){return arguments.length?(n=null==e?(t=null,$d):(t=e).stream,a):t},a.context=function(t){return arguments.length?(r=null==t?(e=null,new Wf):new Bf(e=t),"function"!=typeof i&&r.pointRadius(i),a):e},a.pointRadius=function(t){return arguments.length?(i="function"==typeof t?t:(r.pointRadius(+t),+t),a):i},a.projection(t).context(e)}function Vf(t){return{stream:Gf(t)}}function Gf(t){return function(e){var n=new Xf;for(var r in t)n[r]=t[r];return n.stream=e,n}}function Xf(){}function Zf(t,e,n){var r=t.clipExtent&&t.clipExtent();return t.scale(150).translate([0,0]),null!=r&&t.clipExtent(null),Cu(n,t.stream(cf)),e(cf.result()),null!=r&&t.clipExtent(r),t}function Qf(t,e,n){return Zf(t,(function(n){var r=e[1][0]-e[0][0],i=e[1][1]-e[0][1],a=Math.min(r/(n[1][0]-n[0][0]),i/(n[1][1]-n[0][1])),o=+e[0][0]+(r-a*(n[1][0]+n[0][0]))/2,s=+e[0][1]+(i-a*(n[1][1]+n[0][1]))/2;t.scale(150*a).translate([o,s])}),n)}function Kf(t,e,n){return Qf(t,[[0,0],e],n)}function Jf(t,e,n){return Zf(t,(function(n){var r=+e,i=r/(n[1][0]-n[0][0]),a=(r-i*(n[1][0]+n[0][0]))/2,o=-i*n[0][1];t.scale(150*i).translate([a,o])}),n)}function tp(t,e,n){return Zf(t,(function(n){var r=+e,i=r/(n[1][1]-n[0][1]),a=-i*n[0][0],o=(r-i*(n[1][1]+n[0][1]))/2;t.scale(150*i).translate([a,o])}),n)}Wf.prototype={_radius:4.5,_circle:qf(4.5),pointRadius:function(t){return(t=+t)!==this._radius&&(this._radius=t,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._string.push("Z"),this._point=NaN},point:function(t,e){switch(this._point){case 0:this._string.push("M",t,",",e),this._point=1;break;case 1:this._string.push("L",t,",",e);break;default:null==this._circle&&(this._circle=qf(this._radius)),this._string.push("M",t,",",e,this._circle)}},result:function(){if(this._string.length){var t=this._string.join("");return this._string=[],t}return null}},Xf.prototype={constructor:Xf,point:function(t,e){this.stream.point(t,e)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};var ep=su(30*ru);function np(t,e){return+e?function(t,e){function n(r,i,a,o,s,c,l,u,h,d,f,p,g,y){var m=l-r,b=u-i,v=m*m+b*b;if(v>4*e&&g--){var _=o+d,x=s+f,k=c+p,w=gu(_*_+x*x+k*k),E=bu(k/=w),T=iu(iu(k)-1)<Zl||iu(a-h)<Zl?(a+h)/2:ou(x,_),C=t(T,E),S=C[0],A=C[1],M=S-r,O=A-i,N=b*M-m*O;(N*N/v>e||iu((m*M+b*O)/v-.5)>.3||o*d+s*f+c*p<ep)&&(n(r,i,a,o,s,c,S,A,T,_/=w,x/=w,k,g,y),y.point(S,A),n(S,A,T,_,x,k,l,u,h,d,f,p,g,y))}}return function(e){var r,i,a,o,s,c,l,u,h,d,f,p,g={point:y,lineStart:m,lineEnd:v,polygonStart:function(){e.polygonStart(),g.lineStart=_},polygonEnd:function(){e.polygonEnd(),g.lineStart=m}};function y(n,r){n=t(n,r),e.point(n[0],n[1])}function m(){u=NaN,g.point=b,e.lineStart()}function b(r,i){var a=Ku([r,i]),o=t(r,i);n(u,h,l,d,f,p,u=o[0],h=o[1],l=r,d=a[0],f=a[1],p=a[2],16,e),e.point(u,h)}function v(){g.point=y,e.lineEnd()}function _(){m(),g.point=x,g.lineEnd=k}function x(t,e){b(r=t,e),i=u,a=h,o=d,s=f,c=p,g.point=b}function k(){n(u,h,l,d,f,p,i,a,r,o,s,c,16,e),g.lineEnd=v,v()}return g}}(t,e):function(t){return Gf({point:function(e,n){e=t(e,n),this.stream.point(e[0],e[1])}})}(t)}var rp=Gf({point:function(t,e){this.stream.point(t*ru,e*ru)}});function ip(t,e,n,r,i,a){if(!a)return function(t,e,n,r,i){function a(a,o){return[e+t*(a*=r),n-t*(o*=i)]}return a.invert=function(a,o){return[(a-e)/t*r,(n-o)/t*i]},a}(t,e,n,r,i);var o=su(a),s=fu(a),c=o*t,l=s*t,u=o/t,h=s/t,d=(s*n-o*e)/t,f=(s*e+o*n)/t;function p(t,a){return[c*(t*=r)-l*(a*=i)+e,n-l*t-c*a]}return p.invert=function(t,e){return[r*(u*t-h*e+d),i*(f-h*t-u*e)]},p}function ap(t){return op((function(){return t}))()}function op(t){var e,n,r,i,a,o,s,c,l,u,h=150,d=480,f=250,p=0,g=0,y=0,m=0,b=0,v=0,_=1,x=1,k=null,w=hd,E=null,T=$d,C=.5;function S(t){return c(t[0]*ru,t[1]*ru)}function A(t){return(t=c.invert(t[0],t[1]))&&[t[0]*nu,t[1]*nu]}function M(){var t=ip(h,0,0,_,x,v).apply(null,e(p,g)),r=ip(h,d-t[0],f-t[1],_,x,v);return n=Vh(y,m,b),s=qh(e,r),c=qh(n,s),o=np(s,C),O()}function O(){return l=u=null,S}return S.stream=function(t){return l&&u===t?l:l=rp(function(t){return Gf({point:function(e,n){var r=t(e,n);return this.stream.point(r[0],r[1])}})}(n)(w(o(T(u=t)))))},S.preclip=function(t){return arguments.length?(w=t,k=void 0,O()):w},S.postclip=function(t){return arguments.length?(T=t,E=r=i=a=null,O()):T},S.clipAngle=function(t){return arguments.length?(w=+t?dd(k=t*ru):(k=null,hd),O()):k*nu},S.clipExtent=function(t){return arguments.length?(T=null==t?(E=r=i=a=null,$d):vd(E=+t[0][0],r=+t[0][1],i=+t[1][0],a=+t[1][1]),O()):null==E?null:[[E,r],[i,a]]},S.scale=function(t){return arguments.length?(h=+t,M()):h},S.translate=function(t){return arguments.length?(d=+t[0],f=+t[1],M()):[d,f]},S.center=function(t){return arguments.length?(p=t[0]%360*ru,g=t[1]%360*ru,M()):[p*nu,g*nu]},S.rotate=function(t){return arguments.length?(y=t[0]%360*ru,m=t[1]%360*ru,b=t.length>2?t[2]%360*ru:0,M()):[y*nu,m*nu,b*nu]},S.angle=function(t){return arguments.length?(v=t%360*ru,M()):v*nu},S.reflectX=function(t){return arguments.length?(_=t?-1:1,M()):_<0},S.reflectY=function(t){return arguments.length?(x=t?-1:1,M()):x<0},S.precision=function(t){return arguments.length?(o=np(s,C=t*t),O()):gu(C)},S.fitExtent=function(t,e){return Qf(S,t,e)},S.fitSize=function(t,e){return Kf(S,t,e)},S.fitWidth=function(t,e){return Jf(S,t,e)},S.fitHeight=function(t,e){return tp(S,t,e)},function(){return e=t.apply(this,arguments),S.invert=e.invert&&A,M()}}function sp(t){var e=0,n=Kl/3,r=op(t),i=r(e,n);return i.parallels=function(t){return arguments.length?r(e=t[0]*ru,n=t[1]*ru):[e*nu,n*nu]},i}function cp(t,e){var n=fu(t),r=(n+fu(e))/2;if(iu(r)<Zl)return function(t){var e=su(t);function n(t,n){return[t*e,fu(n)/e]}return n.invert=function(t,n){return[t/e,bu(n*e)]},n}(t);var i=1+n*(2*r-n),a=gu(i)/r;function o(t,e){var n=gu(i-2*r*fu(e))/r;return[n*fu(t*=r),a-n*su(t)]}return o.invert=function(t,e){var n=a-e,o=ou(t,iu(n))*pu(n);return n*r<0&&(o-=Kl*pu(t)*pu(n)),[o/r,bu((i-(t*t+n*n)*r*r)/(2*r))]},o}function lp(){return sp(cp).scale(155.424).center([0,33.6442])}function up(){return lp().parallels([29.5,45.5]).scale(1070).translate([480,250]).rotate([96,0]).center([-.6,38.7])}function hp(){var t,e,n,r,i,a,o=up(),s=lp().rotate([154,0]).center([-2,58.5]).parallels([55,65]),c=lp().rotate([157,0]).center([-3,19.9]).parallels([8,18]),l={point:function(t,e){a=[t,e]}};function u(t){var e=t[0],o=t[1];return a=null,n.point(e,o),a||(r.point(e,o),a)||(i.point(e,o),a)}function h(){return t=e=null,u}return u.invert=function(t){var e=o.scale(),n=o.translate(),r=(t[0]-n[0])/e,i=(t[1]-n[1])/e;return(i>=.12&&i<.234&&r>=-.425&&r<-.214?s:i>=.166&&i<.234&&r>=-.214&&r<-.115?c:o).invert(t)},u.stream=function(n){return t&&e===n?t:(r=[o.stream(e=n),s.stream(n),c.stream(n)],i=r.length,t={point:function(t,e){for(var n=-1;++n<i;)r[n].point(t,e)},sphere:function(){for(var t=-1;++t<i;)r[t].sphere()},lineStart:function(){for(var t=-1;++t<i;)r[t].lineStart()},lineEnd:function(){for(var t=-1;++t<i;)r[t].lineEnd()},polygonStart:function(){for(var t=-1;++t<i;)r[t].polygonStart()},polygonEnd:function(){for(var t=-1;++t<i;)r[t].polygonEnd()}});var r,i},u.precision=function(t){return arguments.length?(o.precision(t),s.precision(t),c.precision(t),h()):o.precision()},u.scale=function(t){return arguments.length?(o.scale(t),s.scale(.35*t),c.scale(t),u.translate(o.translate())):o.scale()},u.translate=function(t){if(!arguments.length)return o.translate();var e=o.scale(),a=+t[0],u=+t[1];return n=o.translate(t).clipExtent([[a-.455*e,u-.238*e],[a+.455*e,u+.238*e]]).stream(l),r=s.translate([a-.307*e,u+.201*e]).clipExtent([[a-.425*e+Zl,u+.12*e+Zl],[a-.214*e-Zl,u+.234*e-Zl]]).stream(l),i=c.translate([a-.205*e,u+.212*e]).clipExtent([[a-.214*e+Zl,u+.166*e+Zl],[a-.115*e-Zl,u+.234*e-Zl]]).stream(l),h()},u.fitExtent=function(t,e){return Qf(u,t,e)},u.fitSize=function(t,e){return Kf(u,t,e)},u.fitWidth=function(t,e){return Jf(u,t,e)},u.fitHeight=function(t,e){return tp(u,t,e)},u.scale(1070)}function dp(t){return function(e,n){var r=su(e),i=su(n),a=t(r*i);return a===1/0?[2,0]:[a*i*fu(e),a*fu(n)]}}function fp(t){return function(e,n){var r=gu(e*e+n*n),i=t(r),a=fu(i),o=su(i);return[ou(e*a,r*o),bu(r&&n*a/r)]}}var pp=dp((function(t){return gu(2/(1+t))}));function gp(){return ap(pp).scale(124.75).clipAngle(179.999)}pp.invert=fp((function(t){return 2*bu(t/2)}));var yp=dp((function(t){return(t=mu(t))&&t/fu(t)}));function mp(){return ap(yp).scale(79.4188).clipAngle(179.999)}function bp(t,e){return[t,hu(yu((Jl+e)/2))]}function vp(){return _p(bp).scale(961/eu)}function _p(t){var e,n,r,i=ap(t),a=i.center,o=i.scale,s=i.translate,c=i.clipExtent,l=null;function u(){var a=Kl*o(),s=i(Qh(i.rotate()).invert([0,0]));return c(null==l?[[s[0]-a,s[1]-a],[s[0]+a,s[1]+a]]:t===bp?[[Math.max(s[0]-a,l),e],[Math.min(s[0]+a,n),r]]:[[l,Math.max(s[1]-a,e)],[n,Math.min(s[1]+a,r)]])}return i.scale=function(t){return arguments.length?(o(t),u()):o()},i.translate=function(t){return arguments.length?(s(t),u()):s()},i.center=function(t){return arguments.length?(a(t),u()):a()},i.clipExtent=function(t){return arguments.length?(null==t?l=e=n=r=null:(l=+t[0][0],e=+t[0][1],n=+t[1][0],r=+t[1][1]),u()):null==l?null:[[l,e],[n,r]]},u()}function xp(t){return yu((Jl+t)/2)}function kp(t,e){var n=su(t),r=t===e?fu(t):hu(n/su(e))/hu(xp(e)/xp(t)),i=n*du(xp(t),r)/r;if(!r)return bp;function a(t,e){i>0?e<-Jl+Zl&&(e=-Jl+Zl):e>Jl-Zl&&(e=Jl-Zl);var n=i/du(xp(e),r);return[n*fu(r*t),i-n*su(r*t)]}return a.invert=function(t,e){var n=i-e,a=pu(r)*gu(t*t+n*n),o=ou(t,iu(n))*pu(n);return n*r<0&&(o-=Kl*pu(t)*pu(n)),[o/r,2*au(du(i/a,1/r))-Jl]},a}function wp(){return sp(kp).scale(109.5).parallels([30,30])}function Ep(t,e){return[t,e]}function Tp(){return ap(Ep).scale(152.63)}function Cp(t,e){var n=su(t),r=t===e?fu(t):(n-su(e))/(e-t),i=n/r+t;if(iu(r)<Zl)return Ep;function a(t,e){var n=i-e,a=r*t;return[n*fu(a),i-n*su(a)]}return a.invert=function(t,e){var n=i-e,a=ou(t,iu(n))*pu(n);return n*r<0&&(a-=Kl*pu(t)*pu(n)),[a/r,i-pu(r)*gu(t*t+n*n)]},a}function Sp(){return sp(Cp).scale(131.154).center([0,13.9389])}yp.invert=fp((function(t){return t})),bp.invert=function(t,e){return[t,2*au(lu(e))-Jl]},Ep.invert=Ep;var Ap=1.340264,Mp=-.081106,Op=893e-6,Np=.003796,Dp=gu(3)/2;function Bp(t,e){var n=bu(Dp*fu(e)),r=n*n,i=r*r*r;return[t*su(n)/(Dp*(Ap+3*Mp*r+i*(7*Op+9*Np*r))),n*(Ap+Mp*r+i*(Op+Np*r))]}function Lp(){return ap(Bp).scale(177.158)}function Ip(t,e){var n=su(e),r=su(t)*n;return[n*fu(t)/r,fu(e)/r]}function Fp(){return ap(Ip).scale(144.049).clipAngle(60)}function Rp(){var t,e,n,r,i,a,o,s=1,c=0,l=0,u=1,h=1,d=0,f=null,p=1,g=1,y=Gf({point:function(t,e){var n=v([t,e]);this.stream.point(n[0],n[1])}}),m=$d;function b(){return p=s*u,g=s*h,a=o=null,v}function v(n){var r=n[0]*p,i=n[1]*g;if(d){var a=i*t-r*e;r=r*t+i*e,i=a}return[r+c,i+l]}return v.invert=function(n){var r=n[0]-c,i=n[1]-l;if(d){var a=i*t+r*e;r=r*t-i*e,i=a}return[r/p,i/g]},v.stream=function(t){return a&&o===t?a:a=y(m(o=t))},v.postclip=function(t){return arguments.length?(m=t,f=n=r=i=null,b()):m},v.clipExtent=function(t){return arguments.length?(m=null==t?(f=n=r=i=null,$d):vd(f=+t[0][0],n=+t[0][1],r=+t[1][0],i=+t[1][1]),b()):null==f?null:[[f,n],[r,i]]},v.scale=function(t){return arguments.length?(s=+t,b()):s},v.translate=function(t){return arguments.length?(c=+t[0],l=+t[1],b()):[c,l]},v.angle=function(n){return arguments.length?(e=fu(d=n%360*ru),t=su(d),b()):d*nu},v.reflectX=function(t){return arguments.length?(u=t?-1:1,b()):u<0},v.reflectY=function(t){return arguments.length?(h=t?-1:1,b()):h<0},v.fitExtent=function(t,e){return Qf(v,t,e)},v.fitSize=function(t,e){return Kf(v,t,e)},v.fitWidth=function(t,e){return Jf(v,t,e)},v.fitHeight=function(t,e){return tp(v,t,e)},v}function Pp(t,e){var n=e*e,r=n*n;return[t*(.8707-.131979*n+r*(r*(.003971*n-.001529*r)-.013791)),e*(1.007226+n*(.015085+r*(.028874*n-.044475-.005916*r)))]}function jp(){return ap(Pp).scale(175.295)}function zp(t,e){return[su(e)*fu(t),fu(e)]}function Yp(){return ap(zp).scale(249.5).clipAngle(90.000001)}function Up(t,e){var n=su(e),r=1+su(t)*n;return[n*fu(t)/r,fu(e)/r]}function $p(){return ap(Up).scale(250).clipAngle(142)}function Wp(t,e){return[hu(yu((Jl+e)/2)),-t]}function qp(){var t=_p(Wp),e=t.center,n=t.rotate;return t.center=function(t){return arguments.length?e([-t[1],t[0]]):[(t=e())[1],-t[0]]},t.rotate=function(t){return arguments.length?n([t[0],t[1],t.length>2?t[2]+90:90]):[(t=n())[0],t[1],t[2]-90]},n([0,0,90]).scale(159.155)}function Hp(t,e){return t.parent===e.parent?1:2}function Vp(t,e){return t+e.x}function Gp(t,e){return Math.max(t,e.y)}function Xp(){var t=Hp,e=1,n=1,r=!1;function i(i){var a,o=0;i.eachAfter((function(e){var n=e.children;n?(e.x=function(t){return t.reduce(Vp,0)/t.length}(n),e.y=function(t){return 1+t.reduce(Gp,0)}(n)):(e.x=a?o+=t(e,a):0,e.y=0,a=e)}));var s=function(t){for(var e;e=t.children;)t=e[0];return t}(i),c=function(t){for(var e;e=t.children;)t=e[e.length-1];return t}(i),l=s.x-t(s,c)/2,u=c.x+t(c,s)/2;return i.eachAfter(r?function(t){t.x=(t.x-i.x)*e,t.y=(i.y-t.y)*n}:function(t){t.x=(t.x-l)/(u-l)*e,t.y=(1-(i.y?t.y/i.y:1))*n})}return i.separation=function(e){return arguments.length?(t=e,i):t},i.size=function(t){return arguments.length?(r=!1,e=+t[0],n=+t[1],i):r?null:[e,n]},i.nodeSize=function(t){return arguments.length?(r=!0,e=+t[0],n=+t[1],i):r?[e,n]:null},i}function Zp(t){var e=0,n=t.children,r=n&&n.length;if(r)for(;--r>=0;)e+=n[r].value;else e=1;t.value=e}function Qp(t,e){t instanceof Map?(t=[void 0,t],void 0===e&&(e=Jp)):void 0===e&&(e=Kp);for(var n,r,i,a,o,s=new ng(t),c=[s];n=c.pop();)if((i=e(n.data))&&(o=(i=Array.from(i)).length))for(n.children=i,a=o-1;a>=0;--a)c.push(r=i[a]=new ng(i[a])),r.parent=n,r.depth=n.depth+1;return s.eachBefore(eg)}function Kp(t){return t.children}function Jp(t){return Array.isArray(t)?t[1]:null}function tg(t){void 0!==t.data.value&&(t.value=t.data.value),t.data=t.data.data}function eg(t){var e=0;do{t.height=e}while((t=t.parent)&&t.height<++e)}function ng(t){this.data=t,this.depth=this.height=0,this.parent=null}function rg(t){for(var e,n,r=0,i=(t=function(t){for(var e,n,r=t.length;r;)n=Math.random()*r--|0,e=t[r],t[r]=t[n],t[n]=e;return t}(Array.from(t))).length,a=[];r<i;)e=t[r],n&&og(n,e)?++r:(n=cg(a=ig(a,e)),r=0);return n}function ig(t,e){var n,r;if(sg(e,t))return[e];for(n=0;n<t.length;++n)if(ag(e,t[n])&&sg(lg(t[n],e),t))return[t[n],e];for(n=0;n<t.length-1;++n)for(r=n+1;r<t.length;++r)if(ag(lg(t[n],t[r]),e)&&ag(lg(t[n],e),t[r])&&ag(lg(t[r],e),t[n])&&sg(ug(t[n],t[r],e),t))return[t[n],t[r],e];throw new Error}function ag(t,e){var n=t.r-e.r,r=e.x-t.x,i=e.y-t.y;return n<0||n*n<r*r+i*i}function og(t,e){var n=t.r-e.r+1e-9*Math.max(t.r,e.r,1),r=e.x-t.x,i=e.y-t.y;return n>0&&n*n>r*r+i*i}function sg(t,e){for(var n=0;n<e.length;++n)if(!og(t,e[n]))return!1;return!0}function cg(t){switch(t.length){case 1:return{x:(e=t[0]).x,y:e.y,r:e.r};case 2:return lg(t[0],t[1]);case 3:return ug(t[0],t[1],t[2])}var e}function lg(t,e){var n=t.x,r=t.y,i=t.r,a=e.x,o=e.y,s=e.r,c=a-n,l=o-r,u=s-i,h=Math.sqrt(c*c+l*l);return{x:(n+a+c/h*u)/2,y:(r+o+l/h*u)/2,r:(h+i+s)/2}}function ug(t,e,n){var r=t.x,i=t.y,a=t.r,o=e.x,s=e.y,c=e.r,l=n.x,u=n.y,h=n.r,d=r-o,f=r-l,p=i-s,g=i-u,y=c-a,m=h-a,b=r*r+i*i-a*a,v=b-o*o-s*s+c*c,_=b-l*l-u*u+h*h,x=f*p-d*g,k=(p*_-g*v)/(2*x)-r,w=(g*y-p*m)/x,E=(f*v-d*_)/(2*x)-i,T=(d*m-f*y)/x,C=w*w+T*T-1,S=2*(a+k*w+E*T),A=k*k+E*E-a*a,M=-(C?(S+Math.sqrt(S*S-4*C*A))/(2*C):A/S);return{x:r+k+w*M,y:i+E+T*M,r:M}}function hg(t,e,n){var r,i,a,o,s=t.x-e.x,c=t.y-e.y,l=s*s+c*c;l?(i=e.r+n.r,i*=i,o=t.r+n.r,i>(o*=o)?(r=(l+o-i)/(2*l),a=Math.sqrt(Math.max(0,o/l-r*r)),n.x=t.x-r*s-a*c,n.y=t.y-r*c+a*s):(r=(l+i-o)/(2*l),a=Math.sqrt(Math.max(0,i/l-r*r)),n.x=e.x+r*s-a*c,n.y=e.y+r*c+a*s)):(n.x=e.x+n.r,n.y=e.y)}function dg(t,e){var n=t.r+e.r-1e-6,r=e.x-t.x,i=e.y-t.y;return n>0&&n*n>r*r+i*i}function fg(t){var e=t._,n=t.next._,r=e.r+n.r,i=(e.x*n.r+n.x*e.r)/r,a=(e.y*n.r+n.y*e.r)/r;return i*i+a*a}function pg(t){this._=t,this.next=null,this.previous=null}function gg(t){if(!(a=(e=t,t="object"==typeof e&&"length"in e?e:Array.from(e)).length))return 0;var e,n,r,i,a,o,s,c,l,u,h,d;if((n=t[0]).x=0,n.y=0,!(a>1))return n.r;if(r=t[1],n.x=-r.r,r.x=n.r,r.y=0,!(a>2))return n.r+r.r;hg(r,n,i=t[2]),n=new pg(n),r=new pg(r),i=new pg(i),n.next=i.previous=r,r.next=n.previous=i,i.next=r.previous=n;t:for(c=3;c<a;++c){hg(n._,r._,i=t[c]),i=new pg(i),l=r.next,u=n.previous,h=r._.r,d=n._.r;do{if(h<=d){if(dg(l._,i._)){r=l,n.next=r,r.previous=n,--c;continue t}h+=l._.r,l=l.next}else{if(dg(u._,i._)){(n=u).next=r,r.previous=n,--c;continue t}d+=u._.r,u=u.previous}}while(l!==u.next);for(i.previous=n,i.next=r,n.next=r.previous=r=i,o=fg(n);(i=i.next)!==r;)(s=fg(i))<o&&(n=i,o=s);r=n.next}for(n=[r._],i=r;(i=i.next)!==r;)n.push(i._);for(i=rg(n),c=0;c<a;++c)(n=t[c]).x-=i.x,n.y-=i.y;return i.r}function yg(t){return gg(t),t}function mg(t){return null==t?null:bg(t)}function bg(t){if("function"!=typeof t)throw new Error;return t}function vg(){return 0}function _g(t){return function(){return t}}function xg(t){return Math.sqrt(t.value)}function kg(){var t=null,e=1,n=1,r=vg;function i(i){return i.x=e/2,i.y=n/2,t?i.eachBefore(wg(t)).eachAfter(Eg(r,.5)).eachBefore(Tg(1)):i.eachBefore(wg(xg)).eachAfter(Eg(vg,1)).eachAfter(Eg(r,i.r/Math.min(e,n))).eachBefore(Tg(Math.min(e,n)/(2*i.r))),i}return i.radius=function(e){return arguments.length?(t=mg(e),i):t},i.size=function(t){return arguments.length?(e=+t[0],n=+t[1],i):[e,n]},i.padding=function(t){return arguments.length?(r="function"==typeof t?t:_g(+t),i):r},i}function wg(t){return function(e){e.children||(e.r=Math.max(0,+t(e)||0))}}function Eg(t,e){return function(n){if(r=n.children){var r,i,a,o=r.length,s=t(n)*e||0;if(s)for(i=0;i<o;++i)r[i].r+=s;if(a=gg(r),s)for(i=0;i<o;++i)r[i].r-=s;n.r=a+s}}}function Tg(t){return function(e){var n=e.parent;e.r*=t,n&&(e.x=n.x+t*e.x,e.y=n.y+t*e.y)}}function Cg(t){t.x0=Math.round(t.x0),t.y0=Math.round(t.y0),t.x1=Math.round(t.x1),t.y1=Math.round(t.y1)}function Sg(t,e,n,r,i){for(var a,o=t.children,s=-1,c=o.length,l=t.value&&(r-e)/t.value;++s<c;)(a=o[s]).y0=n,a.y1=i,a.x0=e,a.x1=e+=a.value*l}function Ag(){var t=1,e=1,n=0,r=!1;function i(i){var a=i.height+1;return i.x0=i.y0=n,i.x1=t,i.y1=e/a,i.eachBefore(function(t,e){return function(r){r.children&&Sg(r,r.x0,t*(r.depth+1)/e,r.x1,t*(r.depth+2)/e);var i=r.x0,a=r.y0,o=r.x1-n,s=r.y1-n;o<i&&(i=o=(i+o)/2),s<a&&(a=s=(a+s)/2),r.x0=i,r.y0=a,r.x1=o,r.y1=s}}(e,a)),r&&i.eachBefore(Cg),i}return i.round=function(t){return arguments.length?(r=!!t,i):r},i.size=function(n){return arguments.length?(t=+n[0],e=+n[1],i):[t,e]},i.padding=function(t){return arguments.length?(n=+t,i):n},i}Bp.invert=function(t,e){for(var n,r=e,i=r*r,a=i*i*i,o=0;o<12&&(a=(i=(r-=n=(r*(Ap+Mp*i+a*(Op+Np*i))-e)/(Ap+3*Mp*i+a*(7*Op+9*Np*i)))*r)*i*i,!(iu(n)<Ql));++o);return[Dp*t*(Ap+3*Mp*i+a*(7*Op+9*Np*i))/su(r),bu(fu(r)/Dp)]},Ip.invert=fp(au),Pp.invert=function(t,e){var n,r=e,i=25;do{var a=r*r,o=a*a;r-=n=(r*(1.007226+a*(.015085+o*(.028874*a-.044475-.005916*o)))-e)/(1.007226+a*(.045255+o*(.259866*a-.311325-.005916*11*o)))}while(iu(n)>Zl&&--i>0);return[t/(.8707+(a=r*r)*(a*(a*a*a*(.003971-.001529*a)-.013791)-.131979)),r]},zp.invert=fp(bu),Up.invert=fp((function(t){return 2*au(t)})),Wp.invert=function(t,e){return[-e,2*au(lu(t))-Jl]},ng.prototype=Qp.prototype={constructor:ng,count:function(){return this.eachAfter(Zp)},each:function(t,e){let n=-1;for(const r of this)t.call(e,r,++n,this);return this},eachAfter:function(t,e){for(var n,r,i,a=this,o=[a],s=[],c=-1;a=o.pop();)if(s.push(a),n=a.children)for(r=0,i=n.length;r<i;++r)o.push(n[r]);for(;a=s.pop();)t.call(e,a,++c,this);return this},eachBefore:function(t,e){for(var n,r,i=this,a=[i],o=-1;i=a.pop();)if(t.call(e,i,++o,this),n=i.children)for(r=n.length-1;r>=0;--r)a.push(n[r]);return this},find:function(t,e){let n=-1;for(const r of this)if(t.call(e,r,++n,this))return r},sum:function(t){return this.eachAfter((function(e){for(var n=+t(e.data)||0,r=e.children,i=r&&r.length;--i>=0;)n+=r[i].value;e.value=n}))},sort:function(t){return this.eachBefore((function(e){e.children&&e.children.sort(t)}))},path:function(t){for(var e=this,n=function(t,e){if(t===e)return t;var n=t.ancestors(),r=e.ancestors(),i=null;for(t=n.pop(),e=r.pop();t===e;)i=t,t=n.pop(),e=r.pop();return i}(e,t),r=[e];e!==n;)e=e.parent,r.push(e);for(var i=r.length;t!==n;)r.splice(i,0,t),t=t.parent;return r},ancestors:function(){for(var t=this,e=[t];t=t.parent;)e.push(t);return e},descendants:function(){return Array.from(this)},leaves:function(){var t=[];return this.eachBefore((function(e){e.children||t.push(e)})),t},links:function(){var t=this,e=[];return t.each((function(n){n!==t&&e.push({source:n.parent,target:n})})),e},copy:function(){return Qp(this).eachBefore(tg)},[Symbol.iterator]:function*(){var t,e,n,r,i=this,a=[i];do{for(t=a.reverse(),a=[];i=t.pop();)if(yield i,e=i.children)for(n=0,r=e.length;n<r;++n)a.push(e[n])}while(a.length)}};var Mg={depth:-1},Og={},Ng={};function Dg(t){return t.id}function Bg(t){return t.parentId}function Lg(){var t,e=Dg,n=Bg;function r(r){var i,a,o,s,c,l,u,h,d=Array.from(r),f=e,p=n,g=new Map;if(null!=t){const e=d.map(((e,n)=>function(t){let e=(t=`${t}`).length;return Fg(t,e-1)&&!Fg(t,e-2)&&(t=t.slice(0,-1)),"/"===t[0]?t:`/${t}`}(t(e,n,r)))),n=e.map(Ig),i=new Set(e).add("");for(const t of n)i.has(t)||(i.add(t),e.push(t),n.push(Ig(t)),d.push(Ng));f=(t,n)=>e[n],p=(t,e)=>n[e]}for(o=0,i=d.length;o<i;++o)a=d[o],l=d[o]=new ng(a),null!=(u=f(a,o,r))&&(u+="")&&(h=l.id=u,g.set(h,g.has(h)?Og:l)),null!=(u=p(a,o,r))&&(u+="")&&(l.parent=u);for(o=0;o<i;++o)if(u=(l=d[o]).parent){if(!(c=g.get(u)))throw new Error("missing: "+u);if(c===Og)throw new Error("ambiguous: "+u);c.children?c.children.push(l):c.children=[l],l.parent=c}else{if(s)throw new Error("multiple roots");s=l}if(!s)throw new Error("no root");if(null!=t){for(;s.data===Ng&&1===s.children.length;)s=s.children[0],--i;for(let t=d.length-1;t>=0&&(l=d[t],l.data===Ng);--t)l.data=null}if(s.parent=Mg,s.eachBefore((function(t){t.depth=t.parent.depth+1,--i})).eachBefore(eg),s.parent=null,i>0)throw new Error("cycle");return s}return r.id=function(t){return arguments.length?(e=mg(t),r):e},r.parentId=function(t){return arguments.length?(n=mg(t),r):n},r.path=function(e){return arguments.length?(t=mg(e),r):t},r}function Ig(t){let e=t.length;if(e<2)return"";for(;--e>1&&!Fg(t,e););return t.slice(0,e)}function Fg(t,e){if("/"===t[e]){let n=0;for(;e>0&&"\\"===t[--e];)++n;if(0==(1&n))return!0}return!1}function Rg(t,e){return t.parent===e.parent?1:2}function Pg(t){var e=t.children;return e?e[0]:t.t}function jg(t){var e=t.children;return e?e[e.length-1]:t.t}function zg(t,e,n){var r=n/(e.i-t.i);e.c-=r,e.s+=n,t.c+=r,e.z+=n,e.m+=n}function Yg(t,e,n){return t.a.parent===e.parent?t.a:n}function Ug(t,e){this._=t,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=e}function $g(){var t=Rg,e=1,n=1,r=null;function i(i){var c=function(t){for(var e,n,r,i,a,o=new Ug(t,0),s=[o];e=s.pop();)if(r=e._.children)for(e.children=new Array(a=r.length),i=a-1;i>=0;--i)s.push(n=e.children[i]=new Ug(r[i],i)),n.parent=e;return(o.parent=new Ug(null,0)).children=[o],o}(i);if(c.eachAfter(a),c.parent.m=-c.z,c.eachBefore(o),r)i.eachBefore(s);else{var l=i,u=i,h=i;i.eachBefore((function(t){t.x<l.x&&(l=t),t.x>u.x&&(u=t),t.depth>h.depth&&(h=t)}));var d=l===u?1:t(l,u)/2,f=d-l.x,p=e/(u.x+d+f),g=n/(h.depth||1);i.eachBefore((function(t){t.x=(t.x+f)*p,t.y=t.depth*g}))}return i}function a(e){var n=e.children,r=e.parent.children,i=e.i?r[e.i-1]:null;if(n){!function(t){for(var e,n=0,r=0,i=t.children,a=i.length;--a>=0;)(e=i[a]).z+=n,e.m+=n,n+=e.s+(r+=e.c)}(e);var a=(n[0].z+n[n.length-1].z)/2;i?(e.z=i.z+t(e._,i._),e.m=e.z-a):e.z=a}else i&&(e.z=i.z+t(e._,i._));e.parent.A=function(e,n,r){if(n){for(var i,a=e,o=e,s=n,c=a.parent.children[0],l=a.m,u=o.m,h=s.m,d=c.m;s=jg(s),a=Pg(a),s&&a;)c=Pg(c),(o=jg(o)).a=e,(i=s.z+h-a.z-l+t(s._,a._))>0&&(zg(Yg(s,e,r),e,i),l+=i,u+=i),h+=s.m,l+=a.m,d+=c.m,u+=o.m;s&&!jg(o)&&(o.t=s,o.m+=h-u),a&&!Pg(c)&&(c.t=a,c.m+=l-d,r=e)}return r}(e,i,e.parent.A||r[0])}function o(t){t._.x=t.z+t.parent.m,t.m+=t.parent.m}function s(t){t.x*=e,t.y=t.depth*n}return i.separation=function(e){return arguments.length?(t=e,i):t},i.size=function(t){return arguments.length?(r=!1,e=+t[0],n=+t[1],i):r?null:[e,n]},i.nodeSize=function(t){return arguments.length?(r=!0,e=+t[0],n=+t[1],i):r?[e,n]:null},i}function Wg(t,e,n,r,i){for(var a,o=t.children,s=-1,c=o.length,l=t.value&&(i-n)/t.value;++s<c;)(a=o[s]).x0=e,a.x1=r,a.y0=n,a.y1=n+=a.value*l}Ug.prototype=Object.create(ng.prototype);var qg=(1+Math.sqrt(5))/2;function Hg(t,e,n,r,i,a){for(var o,s,c,l,u,h,d,f,p,g,y,m=[],b=e.children,v=0,_=0,x=b.length,k=e.value;v<x;){c=i-n,l=a-r;do{u=b[_++].value}while(!u&&_<x);for(h=d=u,y=u*u*(g=Math.max(l/c,c/l)/(k*t)),p=Math.max(d/y,y/h);_<x;++_){if(u+=s=b[_].value,s<h&&(h=s),s>d&&(d=s),y=u*u*g,(f=Math.max(d/y,y/h))>p){u-=s;break}p=f}m.push(o={value:u,dice:c<l,children:b.slice(v,_)}),o.dice?Sg(o,n,r,i,k?r+=l*u/k:a):Wg(o,n,r,k?n+=c*u/k:i,a),k-=u,v=_}return m}const Vg=function t(e){function n(t,n,r,i,a){Hg(e,t,n,r,i,a)}return n.ratio=function(e){return t((e=+e)>1?e:1)},n}(qg);function Gg(){var t=Vg,e=!1,n=1,r=1,i=[0],a=vg,o=vg,s=vg,c=vg,l=vg;function u(t){return t.x0=t.y0=0,t.x1=n,t.y1=r,t.eachBefore(h),i=[0],e&&t.eachBefore(Cg),t}function h(e){var n=i[e.depth],r=e.x0+n,u=e.y0+n,h=e.x1-n,d=e.y1-n;h<r&&(r=h=(r+h)/2),d<u&&(u=d=(u+d)/2),e.x0=r,e.y0=u,e.x1=h,e.y1=d,e.children&&(n=i[e.depth+1]=a(e)/2,r+=l(e)-n,u+=o(e)-n,(h-=s(e)-n)<r&&(r=h=(r+h)/2),(d-=c(e)-n)<u&&(u=d=(u+d)/2),t(e,r,u,h,d))}return u.round=function(t){return arguments.length?(e=!!t,u):e},u.size=function(t){return arguments.length?(n=+t[0],r=+t[1],u):[n,r]},u.tile=function(e){return arguments.length?(t=bg(e),u):t},u.padding=function(t){return arguments.length?u.paddingInner(t).paddingOuter(t):u.paddingInner()},u.paddingInner=function(t){return arguments.length?(a="function"==typeof t?t:_g(+t),u):a},u.paddingOuter=function(t){return arguments.length?u.paddingTop(t).paddingRight(t).paddingBottom(t).paddingLeft(t):u.paddingTop()},u.paddingTop=function(t){return arguments.length?(o="function"==typeof t?t:_g(+t),u):o},u.paddingRight=function(t){return arguments.length?(s="function"==typeof t?t:_g(+t),u):s},u.paddingBottom=function(t){return arguments.length?(c="function"==typeof t?t:_g(+t),u):c},u.paddingLeft=function(t){return arguments.length?(l="function"==typeof t?t:_g(+t),u):l},u}function Xg(t,e,n,r,i){var a,o,s=t.children,c=s.length,l=new Array(c+1);for(l[0]=o=a=0;a<c;++a)l[a+1]=o+=s[a].value;!function t(e,n,r,i,a,o,c){if(e>=n-1){var u=s[e];return u.x0=i,u.y0=a,u.x1=o,void(u.y1=c)}for(var h=l[e],d=r/2+h,f=e+1,p=n-1;f<p;){var g=f+p>>>1;l[g]<d?f=g+1:p=g}d-l[f-1]<l[f]-d&&e+1<f&&--f;var y=l[f]-h,m=r-y;if(o-i>c-a){var b=r?(i*m+o*y)/r:o;t(e,f,y,i,a,b,c),t(f,n,m,b,a,o,c)}else{var v=r?(a*m+c*y)/r:c;t(e,f,y,i,a,o,v),t(f,n,m,i,v,o,c)}}(0,c,t.value,e,n,r,i)}function Zg(t,e,n,r,i){(1&t.depth?Wg:Sg)(t,e,n,r,i)}const Qg=function t(e){function n(t,n,r,i,a){if((o=t._squarify)&&o.ratio===e)for(var o,s,c,l,u,h=-1,d=o.length,f=t.value;++h<d;){for(c=(s=o[h]).children,l=s.value=0,u=c.length;l<u;++l)s.value+=c[l].value;s.dice?Sg(s,n,r,i,f?r+=(a-r)*s.value/f:a):Wg(s,n,r,f?n+=(i-n)*s.value/f:i,a),f-=s.value}else t._squarify=o=Hg(e,t,n,r,i,a),o.ratio=e}return n.ratio=function(e){return t((e=+e)>1?e:1)},n}(qg);function Kg(t){var e=t.length;return function(n){return t[Math.max(0,Math.min(e-1,Math.floor(n*e)))]}}function Jg(t,e){var n=vr(+t,+e);return function(t){var e=n(t);return e-360*Math.floor(e/360)}}function ty(t,e){return t=+t,e=+e,function(n){return Math.round(t*(1-n)+e*n)}}function ey(t){return((t=Math.exp(t))+1/t)/2}const ny=function t(e,n,r){function i(t,i){var a,o,s=t[0],c=t[1],l=t[2],u=i[0],h=i[1],d=i[2],f=u-s,p=h-c,g=f*f+p*p;if(g<1e-12)o=Math.log(d/l)/e,a=function(t){return[s+t*f,c+t*p,l*Math.exp(e*t*o)]};else{var y=Math.sqrt(g),m=(d*d-l*l+r*g)/(2*l*n*y),b=(d*d-l*l-r*g)/(2*d*n*y),v=Math.log(Math.sqrt(m*m+1)-m),_=Math.log(Math.sqrt(b*b+1)-b);o=(_-v)/e,a=function(t){var r,i=t*o,a=ey(v),u=l/(n*y)*(a*(r=e*i+v,((r=Math.exp(2*r))-1)/(r+1))-function(t){return((t=Math.exp(t))-1/t)/2}(v));return[s+u*f,c+u*p,l*a/ey(e*i+v)]}}return a.duration=1e3*o*e/Math.SQRT2,a}return i.rho=function(e){var n=Math.max(.001,+e),r=n*n;return t(n,r,r*r)},i}(Math.SQRT2,2,4);function ry(t){return function(e,n){var r=t((e=hr(e)).h,(n=hr(n)).h),i=_r(e.s,n.s),a=_r(e.l,n.l),o=_r(e.opacity,n.opacity);return function(t){return e.h=r(t),e.s=i(t),e.l=a(t),e.opacity=o(t),e+""}}}const iy=ry(vr);var ay=ry(_r);function oy(t,e){var n=_r((t=ko(t)).l,(e=ko(e)).l),r=_r(t.a,e.a),i=_r(t.b,e.b),a=_r(t.opacity,e.opacity);return function(e){return t.l=n(e),t.a=r(e),t.b=i(e),t.opacity=a(e),t+""}}function sy(t){return function(e,n){var r=t((e=Oo(e)).h,(n=Oo(n)).h),i=_r(e.c,n.c),a=_r(e.l,n.l),o=_r(e.opacity,n.opacity);return function(t){return e.h=r(t),e.c=i(t),e.l=a(t),e.opacity=o(t),e+""}}}const cy=sy(vr);var ly=sy(_r);function uy(t){return function e(n){function r(e,r){var i=t((e=Uo(e)).h,(r=Uo(r)).h),a=_r(e.s,r.s),o=_r(e.l,r.l),s=_r(e.opacity,r.opacity);return function(t){return e.h=i(t),e.s=a(t),e.l=o(Math.pow(t,n)),e.opacity=s(t),e+""}}return n=+n,r.gamma=e,r}(1)}const hy=uy(vr);var dy=uy(_r);function fy(t,e){void 0===e&&(e=t,t=Ir);for(var n=0,r=e.length-1,i=e[0],a=new Array(r<0?0:r);n<r;)a[n]=t(i,i=e[++n]);return function(t){var e=Math.max(0,Math.min(r-1,Math.floor(t*=r)));return a[e](t-e)}}function py(t,e){for(var n=new Array(e),r=0;r<e;++r)n[r]=t(r/(e-1));return n}function gy(t){for(var e,n=-1,r=t.length,i=t[r-1],a=0;++n<r;)e=i,i=t[n],a+=e[1]*i[0]-e[0]*i[1];return a/2}function yy(t){for(var e,n,r=-1,i=t.length,a=0,o=0,s=t[i-1],c=0;++r<i;)e=s,s=t[r],c+=n=e[0]*s[1]-s[0]*e[1],a+=(e[0]+s[0])*n,o+=(e[1]+s[1])*n;return[a/(c*=3),o/c]}function my(t,e,n){return(e[0]-t[0])*(n[1]-t[1])-(e[1]-t[1])*(n[0]-t[0])}function by(t,e){return t[0]-e[0]||t[1]-e[1]}function vy(t){const e=t.length,n=[0,1];let r,i=2;for(r=2;r<e;++r){for(;i>1&&my(t[n[i-2]],t[n[i-1]],t[r])<=0;)--i;n[i++]=r}return n.slice(0,i)}function _y(t){if((n=t.length)<3)return null;var e,n,r=new Array(n),i=new Array(n);for(e=0;e<n;++e)r[e]=[+t[e][0],+t[e][1],e];for(r.sort(by),e=0;e<n;++e)i[e]=[r[e][0],-r[e][1]];var a=vy(r),o=vy(i),s=o[0]===a[0],c=o[o.length-1]===a[a.length-1],l=[];for(e=a.length-1;e>=0;--e)l.push(t[r[a[e]][2]]);for(e=+s;e<o.length-c;++e)l.push(t[r[o[e]][2]]);return l}function xy(t,e){for(var n,r,i=t.length,a=t[i-1],o=e[0],s=e[1],c=a[0],l=a[1],u=!1,h=0;h<i;++h)n=(a=t[h])[0],(r=a[1])>s!=l>s&&o<(c-n)*(s-r)/(l-r)+n&&(u=!u),c=n,l=r;return u}function ky(t){for(var e,n,r=-1,i=t.length,a=t[i-1],o=a[0],s=a[1],c=0;++r<i;)e=o,n=s,e-=o=(a=t[r])[0],n-=s=a[1],c+=Math.hypot(e,n);return c}const wy=Math.random,Ey=function t(e){function n(t,n){return t=null==t?0:+t,n=null==n?1:+n,1===arguments.length?(n=t,t=0):n-=t,function(){return e()*n+t}}return n.source=t,n}(wy),Ty=function t(e){function n(t,n){return arguments.length<2&&(n=t,t=0),t=Math.floor(t),n=Math.floor(n)-t,function(){return Math.floor(e()*n+t)}}return n.source=t,n}(wy),Cy=function t(e){function n(t,n){var r,i;return t=null==t?0:+t,n=null==n?1:+n,function(){var a;if(null!=r)a=r,r=null;else do{r=2*e()-1,a=2*e()-1,i=r*r+a*a}while(!i||i>1);return t+n*a*Math.sqrt(-2*Math.log(i)/i)}}return n.source=t,n}(wy),Sy=function t(e){var n=Cy.source(e);function r(){var t=n.apply(this,arguments);return function(){return Math.exp(t())}}return r.source=t,r}(wy),Ay=function t(e){function n(t){return(t=+t)<=0?()=>0:function(){for(var n=0,r=t;r>1;--r)n+=e();return n+r*e()}}return n.source=t,n}(wy),My=function t(e){var n=Ay.source(e);function r(t){if(0==(t=+t))return e;var r=n(t);return function(){return r()/t}}return r.source=t,r}(wy),Oy=function t(e){function n(t){return function(){return-Math.log1p(-e())/t}}return n.source=t,n}(wy),Ny=function t(e){function n(t){if((t=+t)<0)throw new RangeError("invalid alpha");return t=1/-t,function(){return Math.pow(1-e(),t)}}return n.source=t,n}(wy),Dy=function t(e){function n(t){if((t=+t)<0||t>1)throw new RangeError("invalid p");return function(){return Math.floor(e()+t)}}return n.source=t,n}(wy),By=function t(e){function n(t){if((t=+t)<0||t>1)throw new RangeError("invalid p");return 0===t?()=>1/0:1===t?()=>1:(t=Math.log1p(-t),function(){return 1+Math.floor(Math.log1p(-e())/t)})}return n.source=t,n}(wy),Ly=function t(e){var n=Cy.source(e)();function r(t,r){if((t=+t)<0)throw new RangeError("invalid k");if(0===t)return()=>0;if(r=null==r?1:+r,1===t)return()=>-Math.log1p(-e())*r;var i=(t<1?t+1:t)-1/3,a=1/(3*Math.sqrt(i)),o=t<1?()=>Math.pow(e(),1/t):()=>1;return function(){do{do{var t=n(),s=1+a*t}while(s<=0);s*=s*s;var c=1-e()}while(c>=1-.0331*t*t*t*t&&Math.log(c)>=.5*t*t+i*(1-s+Math.log(s)));return i*s*o()*r}}return r.source=t,r}(wy),Iy=function t(e){var n=Ly.source(e);function r(t,e){var r=n(t),i=n(e);return function(){var t=r();return 0===t?0:t/(t+i())}}return r.source=t,r}(wy),Fy=function t(e){var n=By.source(e),r=Iy.source(e);function i(t,e){return t=+t,(e=+e)>=1?()=>t:e<=0?()=>0:function(){for(var i=0,a=t,o=e;a*o>16&&a*(1-o)>16;){var s=Math.floor((a+1)*o),c=r(s,a-s+1)();c<=o?(i+=s,a-=s,o=(o-c)/(1-c)):(a=s-1,o/=c)}for(var l=o<.5,u=n(l?o:1-o),h=u(),d=0;h<=a;++d)h+=u();return i+(l?d:a-d)}}return i.source=t,i}(wy),Ry=function t(e){function n(t,n,r){var i;return 0==(t=+t)?i=t=>-Math.log(t):(t=1/t,i=e=>Math.pow(e,t)),n=null==n?0:+n,r=null==r?1:+r,function(){return n+r*i(-Math.log1p(-e()))}}return n.source=t,n}(wy),Py=function t(e){function n(t,n){return t=null==t?0:+t,n=null==n?1:+n,function(){return t+n*Math.tan(Math.PI*e())}}return n.source=t,n}(wy),jy=function t(e){function n(t,n){return t=null==t?0:+t,n=null==n?1:+n,function(){var r=e();return t+n*Math.log(r/(1-r))}}return n.source=t,n}(wy),zy=function t(e){var n=Ly.source(e),r=Fy.source(e);function i(t){return function(){for(var i=0,a=t;a>16;){var o=Math.floor(.875*a),s=n(o)();if(s>a)return i+r(o-1,a/s)();i+=o,a-=s}for(var c=-Math.log1p(-e()),l=0;c<=a;++l)c-=Math.log1p(-e());return i+l}}return i.source=t,i}(wy),Yy=1/4294967296;function Uy(t=Math.random()){let e=0|(0<=t&&t<1?t/Yy:Math.abs(t));return()=>(e=1664525*e+1013904223|0,Yy*(e>>>0))}function $y(t,e){switch(arguments.length){case 0:break;case 1:this.range(t);break;default:this.range(e).domain(t)}return this}function Wy(t,e){switch(arguments.length){case 0:break;case 1:"function"==typeof t?this.interpolator(t):this.range(t);break;default:this.domain(t),"function"==typeof e?this.interpolator(e):this.range(e)}return this}const qy=Symbol("implicit");function Hy(){var t=new E,e=[],n=[],r=qy;function i(i){let a=t.get(i);if(void 0===a){if(r!==qy)return r;t.set(i,a=e.push(i)-1)}return n[a%n.length]}return i.domain=function(n){if(!arguments.length)return e.slice();e=[],t=new E;for(const r of n)t.has(r)||t.set(r,e.push(r)-1);return i},i.range=function(t){return arguments.length?(n=Array.from(t),i):n.slice()},i.unknown=function(t){return arguments.length?(r=t,i):r},i.copy=function(){return Hy(e,n).unknown(r)},$y.apply(i,arguments),i}function Vy(){var t,e,n=Hy().unknown(void 0),r=n.domain,i=n.range,a=0,o=1,s=!1,c=0,l=0,u=.5;function h(){var n=r().length,h=o<a,d=h?o:a,f=h?a:o;t=(f-d)/Math.max(1,n-c+2*l),s&&(t=Math.floor(t)),d+=(f-d-t*(n-c))*u,e=t*(1-c),s&&(d=Math.round(d),e=Math.round(e));var p=xt(n).map((function(e){return d+t*e}));return i(h?p.reverse():p)}return delete n.unknown,n.domain=function(t){return arguments.length?(r(t),h()):r()},n.range=function(t){return arguments.length?([a,o]=t,a=+a,o=+o,h()):[a,o]},n.rangeRound=function(t){return[a,o]=t,a=+a,o=+o,s=!0,h()},n.bandwidth=function(){return e},n.step=function(){return t},n.round=function(t){return arguments.length?(s=!!t,h()):s},n.padding=function(t){return arguments.length?(c=Math.min(1,l=+t),h()):c},n.paddingInner=function(t){return arguments.length?(c=Math.min(1,t),h()):c},n.paddingOuter=function(t){return arguments.length?(l=+t,h()):l},n.align=function(t){return arguments.length?(u=Math.max(0,Math.min(1,t)),h()):u},n.copy=function(){return Vy(r(),[a,o]).round(s).paddingInner(c).paddingOuter(l).align(u)},$y.apply(h(),arguments)}function Gy(t){var e=t.copy;return t.padding=t.paddingOuter,delete t.paddingInner,delete t.paddingOuter,t.copy=function(){return Gy(e())},t}function Xy(){return Gy(Vy.apply(null,arguments).paddingInner(1))}function Zy(t){return+t}var Qy=[0,1];function Ky(t){return t}function Jy(t,e){return(e-=t=+t)?function(n){return(n-t)/e}:(n=isNaN(e)?NaN:.5,function(){return n});var n}function tm(t,e,n){var r=t[0],i=t[1],a=e[0],o=e[1];return i<r?(r=Jy(i,r),a=n(o,a)):(r=Jy(r,i),a=n(a,o)),function(t){return a(r(t))}}function em(t,e,n){var r=Math.min(t.length,e.length)-1,i=new Array(r),a=new Array(r),o=-1;for(t[r]<t[0]&&(t=t.slice().reverse(),e=e.slice().reverse());++o<r;)i[o]=Jy(t[o],t[o+1]),a[o]=n(e[o],e[o+1]);return function(e){var n=u(t,e,1,r)-1;return a[n](i[n](e))}}function nm(t,e){return e.domain(t.domain()).range(t.range()).interpolate(t.interpolate()).clamp(t.clamp()).unknown(t.unknown())}function rm(){var t,e,n,r,i,a,o=Qy,s=Qy,c=Ir,l=Ky;function u(){var t,e,n,c=Math.min(o.length,s.length);return l!==Ky&&(t=o[0],e=o[c-1],t>e&&(n=t,t=e,e=n),l=function(n){return Math.max(t,Math.min(e,n))}),r=c>2?em:tm,i=a=null,h}function h(e){return null==e||isNaN(e=+e)?n:(i||(i=r(o.map(t),s,c)))(t(l(e)))}return h.invert=function(n){return l(e((a||(a=r(s,o.map(t),Or)))(n)))},h.domain=function(t){return arguments.length?(o=Array.from(t,Zy),u()):o.slice()},h.range=function(t){return arguments.length?(s=Array.from(t),u()):s.slice()},h.rangeRound=function(t){return s=Array.from(t),c=ty,u()},h.clamp=function(t){return arguments.length?(l=!!t||Ky,u()):l!==Ky},h.interpolate=function(t){return arguments.length?(c=t,u()):c},h.unknown=function(t){return arguments.length?(n=t,h):n},function(n,r){return t=n,e=r,u()}}function im(){return rm()(Ky,Ky)}function am(t,e,n,r){var i,a=et(t,e,n);switch((r=Il(null==r?",f":r)).type){case"s":var o=Math.max(Math.abs(t),Math.abs(e));return null!=r.precision||isNaN(i=Gl(a,o))||(r.precision=i),Ul(r,o);case"":case"e":case"g":case"p":case"r":null!=r.precision||isNaN(i=Xl(a,Math.max(Math.abs(t),Math.abs(e))))||(r.precision=i-("e"===r.type));break;case"f":case"%":null!=r.precision||isNaN(i=Vl(a))||(r.precision=i-2*("%"===r.type))}return Yl(r)}function om(t){var e=t.domain;return t.ticks=function(t){var n=e();return J(n[0],n[n.length-1],null==t?10:t)},t.tickFormat=function(t,n){var r=e();return am(r[0],r[r.length-1],null==t?10:t,n)},t.nice=function(n){null==n&&(n=10);var r,i,a=e(),o=0,s=a.length-1,c=a[o],l=a[s],u=10;for(l<c&&(i=c,c=l,l=i,i=o,o=s,s=i);u-- >0;){if((i=tt(c,l,n))===r)return a[o]=c,a[s]=l,e(a);if(i>0)c=Math.floor(c/i)*i,l=Math.ceil(l/i)*i;else{if(!(i<0))break;c=Math.ceil(c*i)/i,l=Math.floor(l*i)/i}r=i}return t},t}function sm(){var t=im();return t.copy=function(){return nm(t,sm())},$y.apply(t,arguments),om(t)}function cm(t){var e;function n(t){return null==t||isNaN(t=+t)?e:t}return n.invert=n,n.domain=n.range=function(e){return arguments.length?(t=Array.from(e,Zy),n):t.slice()},n.unknown=function(t){return arguments.length?(e=t,n):e},n.copy=function(){return cm(t).unknown(e)},t=arguments.length?Array.from(t,Zy):[0,1],om(n)}function lm(t,e){var n,r=0,i=(t=t.slice()).length-1,a=t[r],o=t[i];return o<a&&(n=r,r=i,i=n,n=a,a=o,o=n),t[r]=e.floor(a),t[i]=e.ceil(o),t}function um(t){return Math.log(t)}function hm(t){return Math.exp(t)}function dm(t){return-Math.log(-t)}function fm(t){return-Math.exp(-t)}function pm(t){return isFinite(t)?+("1e"+t):t<0?0:t}function gm(t){return(e,n)=>-t(-e,n)}function ym(t){const e=t(um,hm),n=e.domain;let r,i,a=10;function o(){return r=function(t){return t===Math.E?Math.log:10===t&&Math.log10||2===t&&Math.log2||(t=Math.log(t),e=>Math.log(e)/t)}(a),i=function(t){return 10===t?pm:t===Math.E?Math.exp:e=>Math.pow(t,e)}(a),n()[0]<0?(r=gm(r),i=gm(i),t(dm,fm)):t(um,hm),e}return e.base=function(t){return arguments.length?(a=+t,o()):a},e.domain=function(t){return arguments.length?(n(t),o()):n()},e.ticks=t=>{const e=n();let o=e[0],s=e[e.length-1];const c=s<o;c&&([o,s]=[s,o]);let l,u,h=r(o),d=r(s);const f=null==t?10:+t;let p=[];if(!(a%1)&&d-h<f){if(h=Math.floor(h),d=Math.ceil(d),o>0){for(;h<=d;++h)for(l=1;l<a;++l)if(u=h<0?l/i(-h):l*i(h),!(u<o)){if(u>s)break;p.push(u)}}else for(;h<=d;++h)for(l=a-1;l>=1;--l)if(u=h>0?l/i(-h):l*i(h),!(u<o)){if(u>s)break;p.push(u)}2*p.length<f&&(p=J(o,s,f))}else p=J(h,d,Math.min(d-h,f)).map(i);return c?p.reverse():p},e.tickFormat=(t,n)=>{if(null==t&&(t=10),null==n&&(n=10===a?"s":","),"function"!=typeof n&&(a%1||null!=(n=Il(n)).precision||(n.trim=!0),n=Yl(n)),t===1/0)return n;const o=Math.max(1,a*t/e.ticks().length);return t=>{let e=t/i(Math.round(r(t)));return e*a<a-.5&&(e*=a),e<=o?n(t):""}},e.nice=()=>n(lm(n(),{floor:t=>i(Math.floor(r(t))),ceil:t=>i(Math.ceil(r(t)))})),e}function mm(){const t=ym(rm()).domain([1,10]);return t.copy=()=>nm(t,mm()).base(t.base()),$y.apply(t,arguments),t}function bm(t){return function(e){return Math.sign(e)*Math.log1p(Math.abs(e/t))}}function vm(t){return function(e){return Math.sign(e)*Math.expm1(Math.abs(e))*t}}function _m(t){var e=1,n=t(bm(e),vm(e));return n.constant=function(n){return arguments.length?t(bm(e=+n),vm(e)):e},om(n)}function xm(){var t=_m(rm());return t.copy=function(){return nm(t,xm()).constant(t.constant())},$y.apply(t,arguments)}function km(t){return function(e){return e<0?-Math.pow(-e,t):Math.pow(e,t)}}function wm(t){return t<0?-Math.sqrt(-t):Math.sqrt(t)}function Em(t){return t<0?-t*t:t*t}function Tm(t){var e=t(Ky,Ky),n=1;function r(){return 1===n?t(Ky,Ky):.5===n?t(wm,Em):t(km(n),km(1/n))}return e.exponent=function(t){return arguments.length?(n=+t,r()):n},om(e)}function Cm(){var t=Tm(rm());return t.copy=function(){return nm(t,Cm()).exponent(t.exponent())},$y.apply(t,arguments),t}function Sm(){return Cm.apply(null,arguments).exponent(.5)}function Am(t){return Math.sign(t)*t*t}function Mm(t){return Math.sign(t)*Math.sqrt(Math.abs(t))}function Om(){var t,e=im(),n=[0,1],r=!1;function i(n){var i=Mm(e(n));return isNaN(i)?t:r?Math.round(i):i}return i.invert=function(t){return e.invert(Am(t))},i.domain=function(t){return arguments.length?(e.domain(t),i):e.domain()},i.range=function(t){return arguments.length?(e.range((n=Array.from(t,Zy)).map(Am)),i):n.slice()},i.rangeRound=function(t){return i.range(t).round(!0)},i.round=function(t){return arguments.length?(r=!!t,i):r},i.clamp=function(t){return arguments.length?(e.clamp(t),i):e.clamp()},i.unknown=function(e){return arguments.length?(t=e,i):t},i.copy=function(){return Om(e.domain(),n).round(r).clamp(e.clamp()).unknown(t)},$y.apply(i,arguments),om(i)}function Nm(){var t,e=[],n=[],i=[];function a(){var t=0,r=Math.max(1,n.length);for(i=new Array(r-1);++t<r;)i[t-1]=ut(e,t/r);return o}function o(e){return null==e||isNaN(e=+e)?t:n[u(i,e)]}return o.invertExtent=function(t){var r=n.indexOf(t);return r<0?[NaN,NaN]:[r>0?i[r-1]:e[0],r<i.length?i[r]:e[e.length-1]]},o.domain=function(t){if(!arguments.length)return e.slice();e=[];for(let n of t)null==n||isNaN(n=+n)||e.push(n);return e.sort(r),a()},o.range=function(t){return arguments.length?(n=Array.from(t),a()):n.slice()},o.unknown=function(e){return arguments.length?(t=e,o):t},o.quantiles=function(){return i.slice()},o.copy=function(){return Nm().domain(e).range(n).unknown(t)},$y.apply(o,arguments)}function Dm(){var t,e=0,n=1,r=1,i=[.5],a=[0,1];function o(e){return null!=e&&e<=e?a[u(i,e,0,r)]:t}function s(){var t=-1;for(i=new Array(r);++t<r;)i[t]=((t+1)*n-(t-r)*e)/(r+1);return o}return o.domain=function(t){return arguments.length?([e,n]=t,e=+e,n=+n,s()):[e,n]},o.range=function(t){return arguments.length?(r=(a=Array.from(t)).length-1,s()):a.slice()},o.invertExtent=function(t){var o=a.indexOf(t);return o<0?[NaN,NaN]:o<1?[e,i[0]]:o>=r?[i[r-1],n]:[i[o-1],i[o]]},o.unknown=function(e){return arguments.length?(t=e,o):o},o.thresholds=function(){return i.slice()},o.copy=function(){return Dm().domain([e,n]).range(a).unknown(t)},$y.apply(om(o),arguments)}function Bm(){var t,e=[.5],n=[0,1],r=1;function i(i){return null!=i&&i<=i?n[u(e,i,0,r)]:t}return i.domain=function(t){return arguments.length?(e=Array.from(t),r=Math.min(e.length,n.length-1),i):e.slice()},i.range=function(t){return arguments.length?(n=Array.from(t),r=Math.min(e.length,n.length-1),i):n.slice()},i.invertExtent=function(t){var r=n.indexOf(t);return[e[r-1],e[r]]},i.unknown=function(e){return arguments.length?(t=e,i):t},i.copy=function(){return Bm().domain(e).range(n).unknown(t)},$y.apply(i,arguments)}const Lm=1e3,Im=6e4,Fm=36e5,Rm=864e5,Pm=6048e5,jm=31536e6;var zm=new Date,Ym=new Date;function Um(t,e,n,r){function i(e){return t(e=0===arguments.length?new Date:new Date(+e)),e}return i.floor=function(e){return t(e=new Date(+e)),e},i.ceil=function(n){return t(n=new Date(n-1)),e(n,1),t(n),n},i.round=function(t){var e=i(t),n=i.ceil(t);return t-e<n-t?e:n},i.offset=function(t,n){return e(t=new Date(+t),null==n?1:Math.floor(n)),t},i.range=function(n,r,a){var o,s=[];if(n=i.ceil(n),a=null==a?1:Math.floor(a),!(n<r&&a>0))return s;do{s.push(o=new Date(+n)),e(n,a),t(n)}while(o<n&&n<r);return s},i.filter=function(n){return Um((function(e){if(e>=e)for(;t(e),!n(e);)e.setTime(e-1)}),(function(t,r){if(t>=t)if(r<0)for(;++r<=0;)for(;e(t,-1),!n(t););else for(;--r>=0;)for(;e(t,1),!n(t););}))},n&&(i.count=function(e,r){return zm.setTime(+e),Ym.setTime(+r),t(zm),t(Ym),Math.floor(n(zm,Ym))},i.every=function(t){return t=Math.floor(t),isFinite(t)&&t>0?t>1?i.filter(r?function(e){return r(e)%t==0}:function(e){return i.count(0,e)%t==0}):i:null}),i}var $m=Um((function(){}),(function(t,e){t.setTime(+t+e)}),(function(t,e){return e-t}));$m.every=function(t){return t=Math.floor(t),isFinite(t)&&t>0?t>1?Um((function(e){e.setTime(Math.floor(e/t)*t)}),(function(e,n){e.setTime(+e+n*t)}),(function(e,n){return(n-e)/t})):$m:null};const Wm=$m;var qm=$m.range,Hm=Um((function(t){t.setTime(t-t.getMilliseconds())}),(function(t,e){t.setTime(+t+e*Lm)}),(function(t,e){return(e-t)/Lm}),(function(t){return t.getUTCSeconds()}));const Vm=Hm;var Gm=Hm.range,Xm=Um((function(t){t.setTime(t-t.getMilliseconds()-t.getSeconds()*Lm)}),(function(t,e){t.setTime(+t+e*Im)}),(function(t,e){return(e-t)/Im}),(function(t){return t.getMinutes()}));const Zm=Xm;var Qm=Xm.range,Km=Um((function(t){t.setTime(t-t.getMilliseconds()-t.getSeconds()*Lm-t.getMinutes()*Im)}),(function(t,e){t.setTime(+t+e*Fm)}),(function(t,e){return(e-t)/Fm}),(function(t){return t.getHours()}));const Jm=Km;var tb=Km.range,eb=Um((t=>t.setHours(0,0,0,0)),((t,e)=>t.setDate(t.getDate()+e)),((t,e)=>(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*Im)/Rm),(t=>t.getDate()-1));const nb=eb;var rb=eb.range;function ib(t){return Um((function(e){e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)}),(function(t,e){t.setDate(t.getDate()+7*e)}),(function(t,e){return(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*Im)/Pm}))}var ab=ib(0),ob=ib(1),sb=ib(2),cb=ib(3),lb=ib(4),ub=ib(5),hb=ib(6),db=ab.range,fb=ob.range,pb=sb.range,gb=cb.range,yb=lb.range,mb=ub.range,bb=hb.range,vb=Um((function(t){t.setDate(1),t.setHours(0,0,0,0)}),(function(t,e){t.setMonth(t.getMonth()+e)}),(function(t,e){return e.getMonth()-t.getMonth()+12*(e.getFullYear()-t.getFullYear())}),(function(t){return t.getMonth()}));const _b=vb;var xb=vb.range,kb=Um((function(t){t.setMonth(0,1),t.setHours(0,0,0,0)}),(function(t,e){t.setFullYear(t.getFullYear()+e)}),(function(t,e){return e.getFullYear()-t.getFullYear()}),(function(t){return t.getFullYear()}));kb.every=function(t){return isFinite(t=Math.floor(t))&&t>0?Um((function(e){e.setFullYear(Math.floor(e.getFullYear()/t)*t),e.setMonth(0,1),e.setHours(0,0,0,0)}),(function(e,n){e.setFullYear(e.getFullYear()+n*t)})):null};const wb=kb;var Eb=kb.range,Tb=Um((function(t){t.setUTCSeconds(0,0)}),(function(t,e){t.setTime(+t+e*Im)}),(function(t,e){return(e-t)/Im}),(function(t){return t.getUTCMinutes()}));const Cb=Tb;var Sb=Tb.range,Ab=Um((function(t){t.setUTCMinutes(0,0,0)}),(function(t,e){t.setTime(+t+e*Fm)}),(function(t,e){return(e-t)/Fm}),(function(t){return t.getUTCHours()}));const Mb=Ab;var Ob=Ab.range,Nb=Um((function(t){t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCDate(t.getUTCDate()+e)}),(function(t,e){return(e-t)/Rm}),(function(t){return t.getUTCDate()-1}));const Db=Nb;var Bb=Nb.range;function Lb(t){return Um((function(e){e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7),e.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCDate(t.getUTCDate()+7*e)}),(function(t,e){return(e-t)/Pm}))}var Ib=Lb(0),Fb=Lb(1),Rb=Lb(2),Pb=Lb(3),jb=Lb(4),zb=Lb(5),Yb=Lb(6),Ub=Ib.range,$b=Fb.range,Wb=Rb.range,qb=Pb.range,Hb=jb.range,Vb=zb.range,Gb=Yb.range,Xb=Um((function(t){t.setUTCDate(1),t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCMonth(t.getUTCMonth()+e)}),(function(t,e){return e.getUTCMonth()-t.getUTCMonth()+12*(e.getUTCFullYear()-t.getUTCFullYear())}),(function(t){return t.getUTCMonth()}));const Zb=Xb;var Qb=Xb.range,Kb=Um((function(t){t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)}),(function(t,e){t.setUTCFullYear(t.getUTCFullYear()+e)}),(function(t,e){return e.getUTCFullYear()-t.getUTCFullYear()}),(function(t){return t.getUTCFullYear()}));Kb.every=function(t){return isFinite(t=Math.floor(t))&&t>0?Um((function(e){e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)}),(function(e,n){e.setUTCFullYear(e.getUTCFullYear()+n*t)})):null};const Jb=Kb;var tv=Kb.range;function ev(t,e,n,r,a,o){const s=[[Vm,1,Lm],[Vm,5,5e3],[Vm,15,15e3],[Vm,30,3e4],[o,1,Im],[o,5,3e5],[o,15,9e5],[o,30,18e5],[a,1,Fm],[a,3,108e5],[a,6,216e5],[a,12,432e5],[r,1,Rm],[r,2,1728e5],[n,1,Pm],[e,1,2592e6],[e,3,7776e6],[t,1,jm]];function c(e,n,r){const a=Math.abs(n-e)/r,o=i((([,,t])=>t)).right(s,a);if(o===s.length)return t.every(et(e/jm,n/jm,r));if(0===o)return Wm.every(Math.max(et(e,n,r),1));const[c,l]=s[a/s[o-1][2]<s[o][2]/a?o-1:o];return c.every(l)}return[function(t,e,n){const r=e<t;r&&([t,e]=[e,t]);const i=n&&"function"==typeof n.range?n:c(t,e,n),a=i?i.range(t,+e+1):[];return r?a.reverse():a},c]}const[nv,rv]=ev(Jb,Zb,Ib,Db,Mb,Cb),[iv,av]=ev(wb,_b,ab,nb,Jm,Zm);function ov(t){if(0<=t.y&&t.y<100){var e=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);return e.setFullYear(t.y),e}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function sv(t){if(0<=t.y&&t.y<100){var e=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));return e.setUTCFullYear(t.y),e}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function cv(t,e,n){return{y:t,m:e,d:n,H:0,M:0,S:0,L:0}}function lv(t){var e=t.dateTime,n=t.date,r=t.time,i=t.periods,a=t.days,o=t.shortDays,s=t.months,c=t.shortMonths,l=xv(i),u=kv(i),h=xv(a),d=kv(a),f=xv(o),p=kv(o),g=xv(s),y=kv(s),m=xv(c),b=kv(c),v={a:function(t){return o[t.getDay()]},A:function(t){return a[t.getDay()]},b:function(t){return c[t.getMonth()]},B:function(t){return s[t.getMonth()]},c:null,d:$v,e:$v,f:Gv,g:a_,G:s_,H:Wv,I:qv,j:Hv,L:Vv,m:Xv,M:Zv,p:function(t){return i[+(t.getHours()>=12)]},q:function(t){return 1+~~(t.getMonth()/3)},Q:O_,s:N_,S:Qv,u:Kv,U:Jv,V:e_,w:n_,W:r_,x:null,X:null,y:i_,Y:o_,Z:c_,"%":M_},_={a:function(t){return o[t.getUTCDay()]},A:function(t){return a[t.getUTCDay()]},b:function(t){return c[t.getUTCMonth()]},B:function(t){return s[t.getUTCMonth()]},c:null,d:l_,e:l_,f:p_,g:T_,G:S_,H:u_,I:h_,j:d_,L:f_,m:g_,M:y_,p:function(t){return i[+(t.getUTCHours()>=12)]},q:function(t){return 1+~~(t.getUTCMonth()/3)},Q:O_,s:N_,S:m_,u:b_,U:v_,V:x_,w:k_,W:w_,x:null,X:null,y:E_,Y:C_,Z:A_,"%":M_},x={a:function(t,e,n){var r=f.exec(e.slice(n));return r?(t.w=p.get(r[0].toLowerCase()),n+r[0].length):-1},A:function(t,e,n){var r=h.exec(e.slice(n));return r?(t.w=d.get(r[0].toLowerCase()),n+r[0].length):-1},b:function(t,e,n){var r=m.exec(e.slice(n));return r?(t.m=b.get(r[0].toLowerCase()),n+r[0].length):-1},B:function(t,e,n){var r=g.exec(e.slice(n));return r?(t.m=y.get(r[0].toLowerCase()),n+r[0].length):-1},c:function(t,n,r){return E(t,e,n,r)},d:Bv,e:Bv,f:jv,g:Mv,G:Av,H:Iv,I:Iv,j:Lv,L:Pv,m:Dv,M:Fv,p:function(t,e,n){var r=l.exec(e.slice(n));return r?(t.p=u.get(r[0].toLowerCase()),n+r[0].length):-1},q:Nv,Q:Yv,s:Uv,S:Rv,u:Ev,U:Tv,V:Cv,w:wv,W:Sv,x:function(t,e,r){return E(t,n,e,r)},X:function(t,e,n){return E(t,r,e,n)},y:Mv,Y:Av,Z:Ov,"%":zv};function k(t,e){return function(n){var r,i,a,o=[],s=-1,c=0,l=t.length;for(n instanceof Date||(n=new Date(+n));++s<l;)37===t.charCodeAt(s)&&(o.push(t.slice(c,s)),null!=(i=gv[r=t.charAt(++s)])?r=t.charAt(++s):i="e"===r?" ":"0",(a=e[r])&&(r=a(n,i)),o.push(r),c=s+1);return o.push(t.slice(c,s)),o.join("")}}function w(t,e){return function(n){var r,i,a=cv(1900,void 0,1);if(E(a,t,n+="",0)!=n.length)return null;if("Q"in a)return new Date(a.Q);if("s"in a)return new Date(1e3*a.s+("L"in a?a.L:0));if(e&&!("Z"in a)&&(a.Z=0),"p"in a&&(a.H=a.H%12+12*a.p),void 0===a.m&&(a.m="q"in a?a.q:0),"V"in a){if(a.V<1||a.V>53)return null;"w"in a||(a.w=1),"Z"in a?(i=(r=sv(cv(a.y,0,1))).getUTCDay(),r=i>4||0===i?Fb.ceil(r):Fb(r),r=Db.offset(r,7*(a.V-1)),a.y=r.getUTCFullYear(),a.m=r.getUTCMonth(),a.d=r.getUTCDate()+(a.w+6)%7):(i=(r=ov(cv(a.y,0,1))).getDay(),r=i>4||0===i?ob.ceil(r):ob(r),r=nb.offset(r,7*(a.V-1)),a.y=r.getFullYear(),a.m=r.getMonth(),a.d=r.getDate()+(a.w+6)%7)}else("W"in a||"U"in a)&&("w"in a||(a.w="u"in a?a.u%7:"W"in a?1:0),i="Z"in a?sv(cv(a.y,0,1)).getUTCDay():ov(cv(a.y,0,1)).getDay(),a.m=0,a.d="W"in a?(a.w+6)%7+7*a.W-(i+5)%7:a.w+7*a.U-(i+6)%7);return"Z"in a?(a.H+=a.Z/100|0,a.M+=a.Z%100,sv(a)):ov(a)}}function E(t,e,n,r){for(var i,a,o=0,s=e.length,c=n.length;o<s;){if(r>=c)return-1;if(37===(i=e.charCodeAt(o++))){if(i=e.charAt(o++),!(a=x[i in gv?e.charAt(o++):i])||(r=a(t,n,r))<0)return-1}else if(i!=n.charCodeAt(r++))return-1}return r}return v.x=k(n,v),v.X=k(r,v),v.c=k(e,v),_.x=k(n,_),_.X=k(r,_),_.c=k(e,_),{format:function(t){var e=k(t+="",v);return e.toString=function(){return t},e},parse:function(t){var e=w(t+="",!1);return e.toString=function(){return t},e},utcFormat:function(t){var e=k(t+="",_);return e.toString=function(){return t},e},utcParse:function(t){var e=w(t+="",!0);return e.toString=function(){return t},e}}}var uv,hv,dv,fv,pv,gv={"-":"",_:" ",0:"0"},yv=/^\s*\d+/,mv=/^%/,bv=/[\\^$*+?|[\]().{}]/g;function vv(t,e,n){var r=t<0?"-":"",i=(r?-t:t)+"",a=i.length;return r+(a<n?new Array(n-a+1).join(e)+i:i)}function _v(t){return t.replace(bv,"\\$&")}function xv(t){return new RegExp("^(?:"+t.map(_v).join("|")+")","i")}function kv(t){return new Map(t.map(((t,e)=>[t.toLowerCase(),e])))}function wv(t,e,n){var r=yv.exec(e.slice(n,n+1));return r?(t.w=+r[0],n+r[0].length):-1}function Ev(t,e,n){var r=yv.exec(e.slice(n,n+1));return r?(t.u=+r[0],n+r[0].length):-1}function Tv(t,e,n){var r=yv.exec(e.slice(n,n+2));return r?(t.U=+r[0],n+r[0].length):-1}function Cv(t,e,n){var r=yv.exec(e.slice(n,n+2));return r?(t.V=+r[0],n+r[0].length):-1}function Sv(t,e,n){var r=yv.exec(e.slice(n,n+2));return r?(t.W=+r[0],n+r[0].length):-1}function Av(t,e,n){var r=yv.exec(e.slice(n,n+4));return r?(t.y=+r[0],n+r[0].length):-1}function Mv(t,e,n){var r=yv.exec(e.slice(n,n+2));return r?(t.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function Ov(t,e,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(n,n+6));return r?(t.Z=r[1]?0:-(r[2]+(r[3]||"00")),n+r[0].length):-1}function Nv(t,e,n){var r=yv.exec(e.slice(n,n+1));return r?(t.q=3*r[0]-3,n+r[0].length):-1}function Dv(t,e,n){var r=yv.exec(e.slice(n,n+2));return r?(t.m=r[0]-1,n+r[0].length):-1}function Bv(t,e,n){var r=yv.exec(e.slice(n,n+2));return r?(t.d=+r[0],n+r[0].length):-1}function Lv(t,e,n){var r=yv.exec(e.slice(n,n+3));return r?(t.m=0,t.d=+r[0],n+r[0].length):-1}function Iv(t,e,n){var r=yv.exec(e.slice(n,n+2));return r?(t.H=+r[0],n+r[0].length):-1}function Fv(t,e,n){var r=yv.exec(e.slice(n,n+2));return r?(t.M=+r[0],n+r[0].length):-1}function Rv(t,e,n){var r=yv.exec(e.slice(n,n+2));return r?(t.S=+r[0],n+r[0].length):-1}function Pv(t,e,n){var r=yv.exec(e.slice(n,n+3));return r?(t.L=+r[0],n+r[0].length):-1}function jv(t,e,n){var r=yv.exec(e.slice(n,n+6));return r?(t.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function zv(t,e,n){var r=mv.exec(e.slice(n,n+1));return r?n+r[0].length:-1}function Yv(t,e,n){var r=yv.exec(e.slice(n));return r?(t.Q=+r[0],n+r[0].length):-1}function Uv(t,e,n){var r=yv.exec(e.slice(n));return r?(t.s=+r[0],n+r[0].length):-1}function $v(t,e){return vv(t.getDate(),e,2)}function Wv(t,e){return vv(t.getHours(),e,2)}function qv(t,e){return vv(t.getHours()%12||12,e,2)}function Hv(t,e){return vv(1+nb.count(wb(t),t),e,3)}function Vv(t,e){return vv(t.getMilliseconds(),e,3)}function Gv(t,e){return Vv(t,e)+"000"}function Xv(t,e){return vv(t.getMonth()+1,e,2)}function Zv(t,e){return vv(t.getMinutes(),e,2)}function Qv(t,e){return vv(t.getSeconds(),e,2)}function Kv(t){var e=t.getDay();return 0===e?7:e}function Jv(t,e){return vv(ab.count(wb(t)-1,t),e,2)}function t_(t){var e=t.getDay();return e>=4||0===e?lb(t):lb.ceil(t)}function e_(t,e){return t=t_(t),vv(lb.count(wb(t),t)+(4===wb(t).getDay()),e,2)}function n_(t){return t.getDay()}function r_(t,e){return vv(ob.count(wb(t)-1,t),e,2)}function i_(t,e){return vv(t.getFullYear()%100,e,2)}function a_(t,e){return vv((t=t_(t)).getFullYear()%100,e,2)}function o_(t,e){return vv(t.getFullYear()%1e4,e,4)}function s_(t,e){var n=t.getDay();return vv((t=n>=4||0===n?lb(t):lb.ceil(t)).getFullYear()%1e4,e,4)}function c_(t){var e=t.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+vv(e/60|0,"0",2)+vv(e%60,"0",2)}function l_(t,e){return vv(t.getUTCDate(),e,2)}function u_(t,e){return vv(t.getUTCHours(),e,2)}function h_(t,e){return vv(t.getUTCHours()%12||12,e,2)}function d_(t,e){return vv(1+Db.count(Jb(t),t),e,3)}function f_(t,e){return vv(t.getUTCMilliseconds(),e,3)}function p_(t,e){return f_(t,e)+"000"}function g_(t,e){return vv(t.getUTCMonth()+1,e,2)}function y_(t,e){return vv(t.getUTCMinutes(),e,2)}function m_(t,e){return vv(t.getUTCSeconds(),e,2)}function b_(t){var e=t.getUTCDay();return 0===e?7:e}function v_(t,e){return vv(Ib.count(Jb(t)-1,t),e,2)}function __(t){var e=t.getUTCDay();return e>=4||0===e?jb(t):jb.ceil(t)}function x_(t,e){return t=__(t),vv(jb.count(Jb(t),t)+(4===Jb(t).getUTCDay()),e,2)}function k_(t){return t.getUTCDay()}function w_(t,e){return vv(Fb.count(Jb(t)-1,t),e,2)}function E_(t,e){return vv(t.getUTCFullYear()%100,e,2)}function T_(t,e){return vv((t=__(t)).getUTCFullYear()%100,e,2)}function C_(t,e){return vv(t.getUTCFullYear()%1e4,e,4)}function S_(t,e){var n=t.getUTCDay();return vv((t=n>=4||0===n?jb(t):jb.ceil(t)).getUTCFullYear()%1e4,e,4)}function A_(){return"+0000"}function M_(){return"%"}function O_(t){return+t}function N_(t){return Math.floor(+t/1e3)}function D_(t){return uv=lv(t),hv=uv.format,dv=uv.parse,fv=uv.utcFormat,pv=uv.utcParse,uv}function B_(t){return new Date(t)}function L_(t){return t instanceof Date?+t:+new Date(+t)}function I_(t,e,n,r,i,a,o,s,c,l){var u=im(),h=u.invert,d=u.domain,f=l(".%L"),p=l(":%S"),g=l("%I:%M"),y=l("%I %p"),m=l("%a %d"),b=l("%b %d"),v=l("%B"),_=l("%Y");function x(t){return(c(t)<t?f:s(t)<t?p:o(t)<t?g:a(t)<t?y:r(t)<t?i(t)<t?m:b:n(t)<t?v:_)(t)}return u.invert=function(t){return new Date(h(t))},u.domain=function(t){return arguments.length?d(Array.from(t,L_)):d().map(B_)},u.ticks=function(e){var n=d();return t(n[0],n[n.length-1],null==e?10:e)},u.tickFormat=function(t,e){return null==e?x:l(e)},u.nice=function(t){var n=d();return t&&"function"==typeof t.range||(t=e(n[0],n[n.length-1],null==t?10:t)),t?d(lm(n,t)):u},u.copy=function(){return nm(u,I_(t,e,n,r,i,a,o,s,c,l))},u}function F_(){return $y.apply(I_(iv,av,wb,_b,ab,nb,Jm,Zm,Vm,hv).domain([new Date(2e3,0,1),new Date(2e3,0,2)]),arguments)}function R_(){return $y.apply(I_(nv,rv,Jb,Zb,Ib,Db,Mb,Cb,Vm,fv).domain([Date.UTC(2e3,0,1),Date.UTC(2e3,0,2)]),arguments)}function P_(){var t,e,n,r,i,a=0,o=1,s=Ky,c=!1;function l(e){return null==e||isNaN(e=+e)?i:s(0===n?.5:(e=(r(e)-t)*n,c?Math.max(0,Math.min(1,e)):e))}function u(t){return function(e){var n,r;return arguments.length?([n,r]=e,s=t(n,r),l):[s(0),s(1)]}}return l.domain=function(i){return arguments.length?([a,o]=i,t=r(a=+a),e=r(o=+o),n=t===e?0:1/(e-t),l):[a,o]},l.clamp=function(t){return arguments.length?(c=!!t,l):c},l.interpolator=function(t){return arguments.length?(s=t,l):s},l.range=u(Ir),l.rangeRound=u(ty),l.unknown=function(t){return arguments.length?(i=t,l):i},function(i){return r=i,t=i(a),e=i(o),n=t===e?0:1/(e-t),l}}function j_(t,e){return e.domain(t.domain()).interpolator(t.interpolator()).clamp(t.clamp()).unknown(t.unknown())}function z_(){var t=om(P_()(Ky));return t.copy=function(){return j_(t,z_())},Wy.apply(t,arguments)}function Y_(){var t=ym(P_()).domain([1,10]);return t.copy=function(){return j_(t,Y_()).base(t.base())},Wy.apply(t,arguments)}function U_(){var t=_m(P_());return t.copy=function(){return j_(t,U_()).constant(t.constant())},Wy.apply(t,arguments)}function $_(){var t=Tm(P_());return t.copy=function(){return j_(t,$_()).exponent(t.exponent())},Wy.apply(t,arguments)}function W_(){return $_.apply(null,arguments).exponent(.5)}function q_(){var t=[],e=Ky;function n(n){if(null!=n&&!isNaN(n=+n))return e((u(t,n,1)-1)/(t.length-1))}return n.domain=function(e){if(!arguments.length)return t.slice();t=[];for(let n of e)null==n||isNaN(n=+n)||t.push(n);return t.sort(r),n},n.interpolator=function(t){return arguments.length?(e=t,n):e},n.range=function(){return t.map(((n,r)=>e(r/(t.length-1))))},n.quantiles=function(e){return Array.from({length:e+1},((n,r)=>lt(t,r/e)))},n.copy=function(){return q_(e).domain(t)},Wy.apply(n,arguments)}function H_(){var t,e,n,r,i,a,o,s=0,c=.5,l=1,u=1,h=Ky,d=!1;function f(t){return isNaN(t=+t)?o:(t=.5+((t=+a(t))-e)*(u*t<u*e?r:i),h(d?Math.max(0,Math.min(1,t)):t))}function p(t){return function(e){var n,r,i;return arguments.length?([n,r,i]=e,h=fy(t,[n,r,i]),f):[h(0),h(.5),h(1)]}}return f.domain=function(o){return arguments.length?([s,c,l]=o,t=a(s=+s),e=a(c=+c),n=a(l=+l),r=t===e?0:.5/(e-t),i=e===n?0:.5/(n-e),u=e<t?-1:1,f):[s,c,l]},f.clamp=function(t){return arguments.length?(d=!!t,f):d},f.interpolator=function(t){return arguments.length?(h=t,f):h},f.range=p(Ir),f.rangeRound=p(ty),f.unknown=function(t){return arguments.length?(o=t,f):o},function(o){return a=o,t=o(s),e=o(c),n=o(l),r=t===e?0:.5/(e-t),i=e===n?0:.5/(n-e),u=e<t?-1:1,f}}function V_(){var t=om(H_()(Ky));return t.copy=function(){return j_(t,V_())},Wy.apply(t,arguments)}function G_(){var t=ym(H_()).domain([.1,1,10]);return t.copy=function(){return j_(t,G_()).base(t.base())},Wy.apply(t,arguments)}function X_(){var t=_m(H_());return t.copy=function(){return j_(t,X_()).constant(t.constant())},Wy.apply(t,arguments)}function Z_(){var t=Tm(H_());return t.copy=function(){return j_(t,Z_()).exponent(t.exponent())},Wy.apply(t,arguments)}function Q_(){return Z_.apply(null,arguments).exponent(.5)}function K_(t){for(var e=t.length/6|0,n=new Array(e),r=0;r<e;)n[r]="#"+t.slice(6*r,6*++r);return n}D_({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"]});const J_=K_("1f77b4ff7f0e2ca02cd627289467bd8c564be377c27f7f7fbcbd2217becf"),tx=K_("7fc97fbeaed4fdc086ffff99386cb0f0027fbf5b17666666"),ex=K_("1b9e77d95f027570b3e7298a66a61ee6ab02a6761d666666"),nx=K_("a6cee31f78b4b2df8a33a02cfb9a99e31a1cfdbf6fff7f00cab2d66a3d9affff99b15928"),rx=K_("fbb4aeb3cde3ccebc5decbe4fed9a6ffffcce5d8bdfddaecf2f2f2"),ix=K_("b3e2cdfdcdaccbd5e8f4cae4e6f5c9fff2aef1e2cccccccc"),ax=K_("e41a1c377eb84daf4a984ea3ff7f00ffff33a65628f781bf999999"),ox=K_("66c2a5fc8d628da0cbe78ac3a6d854ffd92fe5c494b3b3b3"),sx=K_("8dd3c7ffffb3bebadafb807280b1d3fdb462b3de69fccde5d9d9d9bc80bdccebc5ffed6f"),cx=K_("4e79a7f28e2ce1575976b7b259a14fedc949af7aa1ff9da79c755fbab0ab"),lx=t=>wr(t[t.length-1]);var ux=new Array(3).concat("d8b365f5f5f55ab4ac","a6611adfc27d80cdc1018571","a6611adfc27df5f5f580cdc1018571","8c510ad8b365f6e8c3c7eae55ab4ac01665e","8c510ad8b365f6e8c3f5f5f5c7eae55ab4ac01665e","8c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e","8c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e","5430058c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e003c30","5430058c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e003c30").map(K_);const hx=lx(ux);var dx=new Array(3).concat("af8dc3f7f7f77fbf7b","7b3294c2a5cfa6dba0008837","7b3294c2a5cff7f7f7a6dba0008837","762a83af8dc3e7d4e8d9f0d37fbf7b1b7837","762a83af8dc3e7d4e8f7f7f7d9f0d37fbf7b1b7837","762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b7837","762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b7837","40004b762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b783700441b","40004b762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b783700441b").map(K_);const fx=lx(dx);var px=new Array(3).concat("e9a3c9f7f7f7a1d76a","d01c8bf1b6dab8e1864dac26","d01c8bf1b6daf7f7f7b8e1864dac26","c51b7de9a3c9fde0efe6f5d0a1d76a4d9221","c51b7de9a3c9fde0eff7f7f7e6f5d0a1d76a4d9221","c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221","c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221","8e0152c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221276419","8e0152c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221276419").map(K_);const gx=lx(px);var yx=new Array(3).concat("998ec3f7f7f7f1a340","5e3c99b2abd2fdb863e66101","5e3c99b2abd2f7f7f7fdb863e66101","542788998ec3d8daebfee0b6f1a340b35806","542788998ec3d8daebf7f7f7fee0b6f1a340b35806","5427888073acb2abd2d8daebfee0b6fdb863e08214b35806","5427888073acb2abd2d8daebf7f7f7fee0b6fdb863e08214b35806","2d004b5427888073acb2abd2d8daebfee0b6fdb863e08214b358067f3b08","2d004b5427888073acb2abd2d8daebf7f7f7fee0b6fdb863e08214b358067f3b08").map(K_);const mx=lx(yx);var bx=new Array(3).concat("ef8a62f7f7f767a9cf","ca0020f4a58292c5de0571b0","ca0020f4a582f7f7f792c5de0571b0","b2182bef8a62fddbc7d1e5f067a9cf2166ac","b2182bef8a62fddbc7f7f7f7d1e5f067a9cf2166ac","b2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac","b2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac","67001fb2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac053061","67001fb2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac053061").map(K_);const vx=lx(bx);var _x=new Array(3).concat("ef8a62ffffff999999","ca0020f4a582bababa404040","ca0020f4a582ffffffbababa404040","b2182bef8a62fddbc7e0e0e09999994d4d4d","b2182bef8a62fddbc7ffffffe0e0e09999994d4d4d","b2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d","b2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d","67001fb2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d1a1a1a","67001fb2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d1a1a1a").map(K_);const xx=lx(_x);var kx=new Array(3).concat("fc8d59ffffbf91bfdb","d7191cfdae61abd9e92c7bb6","d7191cfdae61ffffbfabd9e92c7bb6","d73027fc8d59fee090e0f3f891bfdb4575b4","d73027fc8d59fee090ffffbfe0f3f891bfdb4575b4","d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4","d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4","a50026d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4313695","a50026d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4313695").map(K_);const wx=lx(kx);var Ex=new Array(3).concat("fc8d59ffffbf91cf60","d7191cfdae61a6d96a1a9641","d7191cfdae61ffffbfa6d96a1a9641","d73027fc8d59fee08bd9ef8b91cf601a9850","d73027fc8d59fee08bffffbfd9ef8b91cf601a9850","d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850","d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850","a50026d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850006837","a50026d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850006837").map(K_);const Tx=lx(Ex);var Cx=new Array(3).concat("fc8d59ffffbf99d594","d7191cfdae61abdda42b83ba","d7191cfdae61ffffbfabdda42b83ba","d53e4ffc8d59fee08be6f59899d5943288bd","d53e4ffc8d59fee08bffffbfe6f59899d5943288bd","d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd","d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd","9e0142d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd5e4fa2","9e0142d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd5e4fa2").map(K_);const Sx=lx(Cx);var Ax=new Array(3).concat("e5f5f999d8c92ca25f","edf8fbb2e2e266c2a4238b45","edf8fbb2e2e266c2a42ca25f006d2c","edf8fbccece699d8c966c2a42ca25f006d2c","edf8fbccece699d8c966c2a441ae76238b45005824","f7fcfde5f5f9ccece699d8c966c2a441ae76238b45005824","f7fcfde5f5f9ccece699d8c966c2a441ae76238b45006d2c00441b").map(K_);const Mx=lx(Ax);var Ox=new Array(3).concat("e0ecf49ebcda8856a7","edf8fbb3cde38c96c688419d","edf8fbb3cde38c96c68856a7810f7c","edf8fbbfd3e69ebcda8c96c68856a7810f7c","edf8fbbfd3e69ebcda8c96c68c6bb188419d6e016b","f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d6e016b","f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d810f7c4d004b").map(K_);const Nx=lx(Ox);var Dx=new Array(3).concat("e0f3dba8ddb543a2ca","f0f9e8bae4bc7bccc42b8cbe","f0f9e8bae4bc7bccc443a2ca0868ac","f0f9e8ccebc5a8ddb57bccc443a2ca0868ac","f0f9e8ccebc5a8ddb57bccc44eb3d32b8cbe08589e","f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe08589e","f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe0868ac084081").map(K_);const Bx=lx(Dx);var Lx=new Array(3).concat("fee8c8fdbb84e34a33","fef0d9fdcc8afc8d59d7301f","fef0d9fdcc8afc8d59e34a33b30000","fef0d9fdd49efdbb84fc8d59e34a33b30000","fef0d9fdd49efdbb84fc8d59ef6548d7301f990000","fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301f990000","fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301fb300007f0000").map(K_);const Ix=lx(Lx);var Fx=new Array(3).concat("ece2f0a6bddb1c9099","f6eff7bdc9e167a9cf02818a","f6eff7bdc9e167a9cf1c9099016c59","f6eff7d0d1e6a6bddb67a9cf1c9099016c59","f6eff7d0d1e6a6bddb67a9cf3690c002818a016450","fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016450","fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016c59014636").map(K_);const Rx=lx(Fx);var Px=new Array(3).concat("ece7f2a6bddb2b8cbe","f1eef6bdc9e174a9cf0570b0","f1eef6bdc9e174a9cf2b8cbe045a8d","f1eef6d0d1e6a6bddb74a9cf2b8cbe045a8d","f1eef6d0d1e6a6bddb74a9cf3690c00570b0034e7b","fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0034e7b","fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0045a8d023858").map(K_);const jx=lx(Px);var zx=new Array(3).concat("e7e1efc994c7dd1c77","f1eef6d7b5d8df65b0ce1256","f1eef6d7b5d8df65b0dd1c77980043","f1eef6d4b9dac994c7df65b0dd1c77980043","f1eef6d4b9dac994c7df65b0e7298ace125691003f","f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125691003f","f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125698004367001f").map(K_);const Yx=lx(zx);var Ux=new Array(3).concat("fde0ddfa9fb5c51b8a","feebe2fbb4b9f768a1ae017e","feebe2fbb4b9f768a1c51b8a7a0177","feebe2fcc5c0fa9fb5f768a1c51b8a7a0177","feebe2fcc5c0fa9fb5f768a1dd3497ae017e7a0177","fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a0177","fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a017749006a").map(K_);const $x=lx(Ux);var Wx=new Array(3).concat("edf8b17fcdbb2c7fb8","ffffcca1dab441b6c4225ea8","ffffcca1dab441b6c42c7fb8253494","ffffccc7e9b47fcdbb41b6c42c7fb8253494","ffffccc7e9b47fcdbb41b6c41d91c0225ea80c2c84","ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea80c2c84","ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea8253494081d58").map(K_);const qx=lx(Wx);var Hx=new Array(3).concat("f7fcb9addd8e31a354","ffffccc2e69978c679238443","ffffccc2e69978c67931a354006837","ffffccd9f0a3addd8e78c67931a354006837","ffffccd9f0a3addd8e78c67941ab5d238443005a32","ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443005a32","ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443006837004529").map(K_);const Vx=lx(Hx);var Gx=new Array(3).concat("fff7bcfec44fd95f0e","ffffd4fed98efe9929cc4c02","ffffd4fed98efe9929d95f0e993404","ffffd4fee391fec44ffe9929d95f0e993404","ffffd4fee391fec44ffe9929ec7014cc4c028c2d04","ffffe5fff7bcfee391fec44ffe9929ec7014cc4c028c2d04","ffffe5fff7bcfee391fec44ffe9929ec7014cc4c02993404662506").map(K_);const Xx=lx(Gx);var Zx=new Array(3).concat("ffeda0feb24cf03b20","ffffb2fecc5cfd8d3ce31a1c","ffffb2fecc5cfd8d3cf03b20bd0026","ffffb2fed976feb24cfd8d3cf03b20bd0026","ffffb2fed976feb24cfd8d3cfc4e2ae31a1cb10026","ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cb10026","ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cbd0026800026").map(K_);const Qx=lx(Zx);var Kx=new Array(3).concat("deebf79ecae13182bd","eff3ffbdd7e76baed62171b5","eff3ffbdd7e76baed63182bd08519c","eff3ffc6dbef9ecae16baed63182bd08519c","eff3ffc6dbef9ecae16baed64292c62171b5084594","f7fbffdeebf7c6dbef9ecae16baed64292c62171b5084594","f7fbffdeebf7c6dbef9ecae16baed64292c62171b508519c08306b").map(K_);const Jx=lx(Kx);var tk=new Array(3).concat("e5f5e0a1d99b31a354","edf8e9bae4b374c476238b45","edf8e9bae4b374c47631a354006d2c","edf8e9c7e9c0a1d99b74c47631a354006d2c","edf8e9c7e9c0a1d99b74c47641ab5d238b45005a32","f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45005a32","f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45006d2c00441b").map(K_);const ek=lx(tk);var nk=new Array(3).concat("f0f0f0bdbdbd636363","f7f7f7cccccc969696525252","f7f7f7cccccc969696636363252525","f7f7f7d9d9d9bdbdbd969696636363252525","f7f7f7d9d9d9bdbdbd969696737373525252252525","fffffff0f0f0d9d9d9bdbdbd969696737373525252252525","fffffff0f0f0d9d9d9bdbdbd969696737373525252252525000000").map(K_);const rk=lx(nk);var ik=new Array(3).concat("efedf5bcbddc756bb1","f2f0f7cbc9e29e9ac86a51a3","f2f0f7cbc9e29e9ac8756bb154278f","f2f0f7dadaebbcbddc9e9ac8756bb154278f","f2f0f7dadaebbcbddc9e9ac8807dba6a51a34a1486","fcfbfdefedf5dadaebbcbddc9e9ac8807dba6a51a34a1486","fcfbfdefedf5dadaebbcbddc9e9ac8807dba6a51a354278f3f007d").map(K_);const ak=lx(ik);var ok=new Array(3).concat("fee0d2fc9272de2d26","fee5d9fcae91fb6a4acb181d","fee5d9fcae91fb6a4ade2d26a50f15","fee5d9fcbba1fc9272fb6a4ade2d26a50f15","fee5d9fcbba1fc9272fb6a4aef3b2ccb181d99000d","fff5f0fee0d2fcbba1fc9272fb6a4aef3b2ccb181d99000d","fff5f0fee0d2fcbba1fc9272fb6a4aef3b2ccb181da50f1567000d").map(K_);const sk=lx(ok);var ck=new Array(3).concat("fee6cefdae6be6550d","feeddefdbe85fd8d3cd94701","feeddefdbe85fd8d3ce6550da63603","feeddefdd0a2fdae6bfd8d3ce6550da63603","feeddefdd0a2fdae6bfd8d3cf16913d948018c2d04","fff5ebfee6cefdd0a2fdae6bfd8d3cf16913d948018c2d04","fff5ebfee6cefdd0a2fdae6bfd8d3cf16913d94801a636037f2704").map(K_);const lk=lx(ck);function uk(t){return t=Math.max(0,Math.min(1,t)),"rgb("+Math.max(0,Math.min(255,Math.round(-4.54-t*(35.34-t*(2381.73-t*(6402.7-t*(7024.72-2710.57*t)))))))+", "+Math.max(0,Math.min(255,Math.round(32.49+t*(170.73+t*(52.82-t*(131.46-t*(176.58-67.37*t)))))))+", "+Math.max(0,Math.min(255,Math.round(81.24+t*(442.36-t*(2482.43-t*(6167.24-t*(6614.94-2475.67*t)))))))+")"}const hk=dy(Uo(300,.5,0),Uo(-240,.5,1));var dk=dy(Uo(-100,.75,.35),Uo(80,1.5,.8)),fk=dy(Uo(260,.75,.35),Uo(80,1.5,.8)),pk=Uo();function gk(t){(t<0||t>1)&&(t-=Math.floor(t));var e=Math.abs(t-.5);return pk.h=360*t-100,pk.s=1.5-1.5*e,pk.l=.8-.9*e,pk+""}var yk=ir(),mk=Math.PI/3,bk=2*Math.PI/3;function vk(t){var e;return t=(.5-t)*Math.PI,yk.r=255*(e=Math.sin(t))*e,yk.g=255*(e=Math.sin(t+mk))*e,yk.b=255*(e=Math.sin(t+bk))*e,yk+""}function _k(t){return t=Math.max(0,Math.min(1,t)),"rgb("+Math.max(0,Math.min(255,Math.round(34.61+t*(1172.33-t*(10793.56-t*(33300.12-t*(38394.49-14825.05*t)))))))+", "+Math.max(0,Math.min(255,Math.round(23.31+t*(557.33+t*(1225.33-t*(3574.96-t*(1073.77+707.56*t)))))))+", "+Math.max(0,Math.min(255,Math.round(27.2+t*(3211.1-t*(15327.97-t*(27814-t*(22569.18-6838.66*t)))))))+")"}function xk(t){var e=t.length;return function(n){return t[Math.max(0,Math.min(e-1,Math.floor(n*e)))]}}const kk=xk(K_("44015444025645045745055946075a46085c460a5d460b5e470d60470e6147106347116447136548146748166848176948186a481a6c481b6d481c6e481d6f481f70482071482173482374482475482576482677482878482979472a7a472c7a472d7b472e7c472f7d46307e46327e46337f463480453581453781453882443983443a83443b84433d84433e85423f854240864241864142874144874045884046883f47883f48893e49893e4a893e4c8a3d4d8a3d4e8a3c4f8a3c508b3b518b3b528b3a538b3a548c39558c39568c38588c38598c375a8c375b8d365c8d365d8d355e8d355f8d34608d34618d33628d33638d32648e32658e31668e31678e31688e30698e306a8e2f6b8e2f6c8e2e6d8e2e6e8e2e6f8e2d708e2d718e2c718e2c728e2c738e2b748e2b758e2a768e2a778e2a788e29798e297a8e297b8e287c8e287d8e277e8e277f8e27808e26818e26828e26828e25838e25848e25858e24868e24878e23888e23898e238a8d228b8d228c8d228d8d218e8d218f8d21908d21918c20928c20928c20938c1f948c1f958b1f968b1f978b1f988b1f998a1f9a8a1e9b8a1e9c891e9d891f9e891f9f881fa0881fa1881fa1871fa28720a38620a48621a58521a68522a78522a88423a98324aa8325ab8225ac8226ad8127ad8128ae8029af7f2ab07f2cb17e2db27d2eb37c2fb47c31b57b32b67a34b67935b77937b87838b9773aba763bbb753dbc743fbc7340bd7242be7144bf7046c06f48c16e4ac16d4cc26c4ec36b50c46a52c56954c56856c66758c7655ac8645cc8635ec96260ca6063cb5f65cb5e67cc5c69cd5b6ccd5a6ece5870cf5773d05675d05477d1537ad1517cd2507fd34e81d34d84d44b86d54989d5488bd6468ed64590d74393d74195d84098d83e9bd93c9dd93ba0da39a2da37a5db36a8db34aadc32addc30b0dd2fb2dd2db5de2bb8de29bade28bddf26c0df25c2df23c5e021c8e020cae11fcde11dd0e11cd2e21bd5e21ad8e219dae319dde318dfe318e2e418e5e419e7e419eae51aece51befe51cf1e51df4e61ef6e620f8e621fbe723fde725"));var wk=xk(K_("00000401000501010601010802010902020b02020d03030f03031204041405041606051806051a07061c08071e0907200a08220b09240c09260d0a290e0b2b100b2d110c2f120d31130d34140e36150e38160f3b180f3d19103f1a10421c10441d11471e114920114b21114e22115024125325125527125829115a2a115c2c115f2d11612f116331116533106734106936106b38106c390f6e3b0f703d0f713f0f72400f74420f75440f764510774710784910784a10794c117a4e117b4f127b51127c52137c54137d56147d57157e59157e5a167e5c167f5d177f5f187f601880621980641a80651a80671b80681c816a1c816b1d816d1d816e1e81701f81721f817320817521817621817822817922827b23827c23827e24828025828125818326818426818627818827818928818b29818c29818e2a81902a81912b81932b80942c80962c80982d80992d809b2e7f9c2e7f9e2f7fa02f7fa1307ea3307ea5317ea6317da8327daa337dab337cad347cae347bb0357bb2357bb3367ab5367ab73779b83779ba3878bc3978bd3977bf3a77c03a76c23b75c43c75c53c74c73d73c83e73ca3e72cc3f71cd4071cf4070d0416fd2426fd3436ed5446dd6456cd8456cd9466bdb476adc4869de4968df4a68e04c67e24d66e34e65e44f64e55064e75263e85362e95462ea5661eb5760ec5860ed5a5fee5b5eef5d5ef05f5ef1605df2625df2645cf3655cf4675cf4695cf56b5cf66c5cf66e5cf7705cf7725cf8745cf8765cf9785df9795df97b5dfa7d5efa7f5efa815ffb835ffb8560fb8761fc8961fc8a62fc8c63fc8e64fc9065fd9266fd9467fd9668fd9869fd9a6afd9b6bfe9d6cfe9f6dfea16efea36ffea571fea772fea973feaa74feac76feae77feb078feb27afeb47bfeb67cfeb77efeb97ffebb81febd82febf84fec185fec287fec488fec68afec88cfeca8dfecc8ffecd90fecf92fed194fed395fed597fed799fed89afdda9cfddc9efddea0fde0a1fde2a3fde3a5fde5a7fde7a9fde9aafdebacfcecaefceeb0fcf0b2fcf2b4fcf4b6fcf6b8fcf7b9fcf9bbfcfbbdfcfdbf")),Ek=xk(K_("00000401000501010601010802010a02020c02020e03021004031204031405041706041907051b08051d09061f0a07220b07240c08260d08290e092b10092d110a30120a32140b34150b37160b39180c3c190c3e1b0c411c0c431e0c451f0c48210c4a230c4c240c4f260c51280b53290b552b0b572d0b592f0a5b310a5c320a5e340a5f3609613809623909633b09643d09653e0966400a67420a68440a68450a69470b6a490b6a4a0c6b4c0c6b4d0d6c4f0d6c510e6c520e6d540f6d550f6d57106e59106e5a116e5c126e5d126e5f136e61136e62146e64156e65156e67166e69166e6a176e6c186e6d186e6f196e71196e721a6e741a6e751b6e771c6d781c6d7a1d6d7c1d6d7d1e6d7f1e6c801f6c82206c84206b85216b87216b88226a8a226a8c23698d23698f24699025689225689326679526679727669827669a28659b29649d29649f2a63a02a63a22b62a32c61a52c60a62d60a82e5fa92e5eab2f5ead305dae305cb0315bb1325ab3325ab43359b63458b73557b93556ba3655bc3754bd3853bf3952c03a51c13a50c33b4fc43c4ec63d4dc73e4cc83f4bca404acb4149cc4248ce4347cf4446d04545d24644d34743d44842d54a41d74b3fd84c3ed94d3dda4e3cdb503bdd513ade5238df5337e05536e15635e25734e35933e45a31e55c30e65d2fe75e2ee8602de9612bea632aeb6429eb6628ec6726ed6925ee6a24ef6c23ef6e21f06f20f1711ff1731df2741cf3761bf37819f47918f57b17f57d15f67e14f68013f78212f78410f8850ff8870ef8890cf98b0bf98c0af98e09fa9008fa9207fa9407fb9606fb9706fb9906fb9b06fb9d07fc9f07fca108fca309fca50afca60cfca80dfcaa0ffcac11fcae12fcb014fcb216fcb418fbb61afbb81dfbba1ffbbc21fbbe23fac026fac228fac42afac62df9c72ff9c932f9cb35f8cd37f8cf3af7d13df7d340f6d543f6d746f5d949f5db4cf4dd4ff4df53f4e156f3e35af3e55df2e661f2e865f2ea69f1ec6df1ed71f1ef75f1f179f2f27df2f482f3f586f3f68af4f88ef5f992f6fa96f8fb9af9fc9dfafda1fcffa4")),Tk=xk(K_("0d088710078813078916078a19068c1b068d1d068e20068f2206902406912605912805922a05932c05942e05952f059631059733059735049837049938049a3a049a3c049b3e049c3f049c41049d43039e44039e46039f48039f4903a04b03a14c02a14e02a25002a25102a35302a35502a45601a45801a45901a55b01a55c01a65e01a66001a66100a76300a76400a76600a76700a86900a86a00a86c00a86e00a86f00a87100a87201a87401a87501a87701a87801a87a02a87b02a87d03a87e03a88004a88104a78305a78405a78606a68707a68808a68a09a58b0aa58d0ba58e0ca48f0da4910ea3920fa39410a29511a19613a19814a099159f9a169f9c179e9d189d9e199da01a9ca11b9ba21d9aa31e9aa51f99a62098a72197a82296aa2395ab2494ac2694ad2793ae2892b02991b12a90b22b8fb32c8eb42e8db52f8cb6308bb7318ab83289ba3388bb3488bc3587bd3786be3885bf3984c03a83c13b82c23c81c33d80c43e7fc5407ec6417dc7427cc8437bc9447aca457acb4679cc4778cc4977cd4a76ce4b75cf4c74d04d73d14e72d24f71d35171d45270d5536fd5546ed6556dd7566cd8576bd9586ada5a6ada5b69db5c68dc5d67dd5e66de5f65de6164df6263e06363e16462e26561e26660e3685fe4695ee56a5de56b5de66c5ce76e5be76f5ae87059e97158e97257ea7457eb7556eb7655ec7754ed7953ed7a52ee7b51ef7c51ef7e50f07f4ff0804ef1814df1834cf2844bf3854bf3874af48849f48948f58b47f58c46f68d45f68f44f79044f79143f79342f89441f89540f9973ff9983ef99a3efa9b3dfa9c3cfa9e3bfb9f3afba139fba238fca338fca537fca636fca835fca934fdab33fdac33fdae32fdaf31fdb130fdb22ffdb42ffdb52efeb72dfeb82cfeba2cfebb2bfebd2afebe2afec029fdc229fdc328fdc527fdc627fdc827fdca26fdcb26fccd25fcce25fcd025fcd225fbd324fbd524fbd724fad824fada24f9dc24f9dd25f8df25f8e125f7e225f7e425f6e626f6e826f5e926f5eb27f4ed27f3ee27f3f027f2f227f1f426f1f525f0f724f0f921"));function Ck(t){return Mn(pn(t).call(document.documentElement))}var Sk=0;function Ak(){return new Mk}function Mk(){this._="@"+(++Sk).toString(36)}function Ok(t,e){return t.target&&(t=Fr(t),void 0===e&&(e=t.currentTarget),t=t.touches||[t]),Array.from(t,(t=>Rr(t,e)))}function Nk(t){return"string"==typeof t?new Cn([document.querySelectorAll(t)],[document.documentElement]):new Cn([ge(t)],Tn)}function Dk(t){return function(){return t}}Mk.prototype=Ak.prototype={constructor:Mk,get:function(t){for(var e=this._;!(e in t);)if(!(t=t.parentNode))return;return t[e]},set:function(t,e){return t[this._]=e},remove:function(t){return this._ in t&&delete t[this._]},toString:function(){return this._}};var Bk=Math.abs,Lk=Math.atan2,Ik=Math.cos,Fk=Math.max,Rk=Math.min,Pk=Math.sin,jk=Math.sqrt,zk=1e-12,Yk=Math.PI,Uk=Yk/2,$k=2*Yk;function Wk(t){return t>1?0:t<-1?Yk:Math.acos(t)}function qk(t){return t>=1?Uk:t<=-1?-Uk:Math.asin(t)}function Hk(t){return t.innerRadius}function Vk(t){return t.outerRadius}function Gk(t){return t.startAngle}function Xk(t){return t.endAngle}function Zk(t){return t&&t.padAngle}function Qk(t,e,n,r,i,a,o,s){var c=n-t,l=r-e,u=o-i,h=s-a,d=h*c-u*l;if(!(d*d<zk))return[t+(d=(u*(e-a)-h*(t-i))/d)*c,e+d*l]}function Kk(t,e,n,r,i,a,o){var s=t-n,c=e-r,l=(o?a:-a)/jk(s*s+c*c),u=l*c,h=-l*s,d=t+u,f=e+h,p=n+u,g=r+h,y=(d+p)/2,m=(f+g)/2,b=p-d,v=g-f,_=b*b+v*v,x=i-a,k=d*g-p*f,w=(v<0?-1:1)*jk(Fk(0,x*x*_-k*k)),E=(k*v-b*w)/_,T=(-k*b-v*w)/_,C=(k*v+b*w)/_,S=(-k*b+v*w)/_,A=E-y,M=T-m,O=C-y,N=S-m;return A*A+M*M>O*O+N*N&&(E=C,T=S),{cx:E,cy:T,x01:-u,y01:-h,x11:E*(i/x-1),y11:T*(i/x-1)}}function Jk(){var t=Hk,e=Vk,n=Dk(0),r=null,i=Gk,a=Xk,o=Zk,s=null;function c(){var c,l,u=+t.apply(this,arguments),h=+e.apply(this,arguments),d=i.apply(this,arguments)-Uk,f=a.apply(this,arguments)-Uk,p=Bk(f-d),g=f>d;if(s||(s=c=Ja()),h<u&&(l=h,h=u,u=l),h>zk)if(p>$k-zk)s.moveTo(h*Ik(d),h*Pk(d)),s.arc(0,0,h,d,f,!g),u>zk&&(s.moveTo(u*Ik(f),u*Pk(f)),s.arc(0,0,u,f,d,g));else{var y,m,b=d,v=f,_=d,x=f,k=p,w=p,E=o.apply(this,arguments)/2,T=E>zk&&(r?+r.apply(this,arguments):jk(u*u+h*h)),C=Rk(Bk(h-u)/2,+n.apply(this,arguments)),S=C,A=C;if(T>zk){var M=qk(T/u*Pk(E)),O=qk(T/h*Pk(E));(k-=2*M)>zk?(_+=M*=g?1:-1,x-=M):(k=0,_=x=(d+f)/2),(w-=2*O)>zk?(b+=O*=g?1:-1,v-=O):(w=0,b=v=(d+f)/2)}var N=h*Ik(b),D=h*Pk(b),B=u*Ik(x),L=u*Pk(x);if(C>zk){var I,F=h*Ik(v),R=h*Pk(v),P=u*Ik(_),j=u*Pk(_);if(p<Yk&&(I=Qk(N,D,P,j,F,R,B,L))){var z=N-I[0],Y=D-I[1],U=F-I[0],$=R-I[1],W=1/Pk(Wk((z*U+Y*$)/(jk(z*z+Y*Y)*jk(U*U+$*$)))/2),q=jk(I[0]*I[0]+I[1]*I[1]);S=Rk(C,(u-q)/(W-1)),A=Rk(C,(h-q)/(W+1))}}w>zk?A>zk?(y=Kk(P,j,N,D,h,A,g),m=Kk(F,R,B,L,h,A,g),s.moveTo(y.cx+y.x01,y.cy+y.y01),A<C?s.arc(y.cx,y.cy,A,Lk(y.y01,y.x01),Lk(m.y01,m.x01),!g):(s.arc(y.cx,y.cy,A,Lk(y.y01,y.x01),Lk(y.y11,y.x11),!g),s.arc(0,0,h,Lk(y.cy+y.y11,y.cx+y.x11),Lk(m.cy+m.y11,m.cx+m.x11),!g),s.arc(m.cx,m.cy,A,Lk(m.y11,m.x11),Lk(m.y01,m.x01),!g))):(s.moveTo(N,D),s.arc(0,0,h,b,v,!g)):s.moveTo(N,D),u>zk&&k>zk?S>zk?(y=Kk(B,L,F,R,u,-S,g),m=Kk(N,D,P,j,u,-S,g),s.lineTo(y.cx+y.x01,y.cy+y.y01),S<C?s.arc(y.cx,y.cy,S,Lk(y.y01,y.x01),Lk(m.y01,m.x01),!g):(s.arc(y.cx,y.cy,S,Lk(y.y01,y.x01),Lk(y.y11,y.x11),!g),s.arc(0,0,u,Lk(y.cy+y.y11,y.cx+y.x11),Lk(m.cy+m.y11,m.cx+m.x11),g),s.arc(m.cx,m.cy,S,Lk(m.y11,m.x11),Lk(m.y01,m.x01),!g))):s.arc(0,0,u,x,_,g):s.lineTo(B,L)}else s.moveTo(0,0);if(s.closePath(),c)return s=null,c+""||null}return c.centroid=function(){var n=(+t.apply(this,arguments)+ +e.apply(this,arguments))/2,r=(+i.apply(this,arguments)+ +a.apply(this,arguments))/2-Yk/2;return[Ik(r)*n,Pk(r)*n]},c.innerRadius=function(e){return arguments.length?(t="function"==typeof e?e:Dk(+e),c):t},c.outerRadius=function(t){return arguments.length?(e="function"==typeof t?t:Dk(+t),c):e},c.cornerRadius=function(t){return arguments.length?(n="function"==typeof t?t:Dk(+t),c):n},c.padRadius=function(t){return arguments.length?(r=null==t?null:"function"==typeof t?t:Dk(+t),c):r},c.startAngle=function(t){return arguments.length?(i="function"==typeof t?t:Dk(+t),c):i},c.endAngle=function(t){return arguments.length?(a="function"==typeof t?t:Dk(+t),c):a},c.padAngle=function(t){return arguments.length?(o="function"==typeof t?t:Dk(+t),c):o},c.context=function(t){return arguments.length?(s=null==t?null:t,c):s},c}var tw=Array.prototype.slice;function ew(t){return"object"==typeof t&&"length"in t?t:Array.from(t)}function nw(t){this._context=t}function rw(t){return new nw(t)}function iw(t){return t[0]}function aw(t){return t[1]}function ow(t,e){var n=Dk(!0),r=null,i=rw,a=null;function o(o){var s,c,l,u=(o=ew(o)).length,h=!1;for(null==r&&(a=i(l=Ja())),s=0;s<=u;++s)!(s<u&&n(c=o[s],s,o))===h&&((h=!h)?a.lineStart():a.lineEnd()),h&&a.point(+t(c,s,o),+e(c,s,o));if(l)return a=null,l+""||null}return t="function"==typeof t?t:void 0===t?iw:Dk(t),e="function"==typeof e?e:void 0===e?aw:Dk(e),o.x=function(e){return arguments.length?(t="function"==typeof e?e:Dk(+e),o):t},o.y=function(t){return arguments.length?(e="function"==typeof t?t:Dk(+t),o):e},o.defined=function(t){return arguments.length?(n="function"==typeof t?t:Dk(!!t),o):n},o.curve=function(t){return arguments.length?(i=t,null!=r&&(a=i(r)),o):i},o.context=function(t){return arguments.length?(null==t?r=a=null:a=i(r=t),o):r},o}function sw(t,e,n){var r=null,i=Dk(!0),a=null,o=rw,s=null;function c(c){var l,u,h,d,f,p=(c=ew(c)).length,g=!1,y=new Array(p),m=new Array(p);for(null==a&&(s=o(f=Ja())),l=0;l<=p;++l){if(!(l<p&&i(d=c[l],l,c))===g)if(g=!g)u=l,s.areaStart(),s.lineStart();else{for(s.lineEnd(),s.lineStart(),h=l-1;h>=u;--h)s.point(y[h],m[h]);s.lineEnd(),s.areaEnd()}g&&(y[l]=+t(d,l,c),m[l]=+e(d,l,c),s.point(r?+r(d,l,c):y[l],n?+n(d,l,c):m[l]))}if(f)return s=null,f+""||null}function l(){return ow().defined(i).curve(o).context(a)}return t="function"==typeof t?t:void 0===t?iw:Dk(+t),e="function"==typeof e?e:Dk(void 0===e?0:+e),n="function"==typeof n?n:void 0===n?aw:Dk(+n),c.x=function(e){return arguments.length?(t="function"==typeof e?e:Dk(+e),r=null,c):t},c.x0=function(e){return arguments.length?(t="function"==typeof e?e:Dk(+e),c):t},c.x1=function(t){return arguments.length?(r=null==t?null:"function"==typeof t?t:Dk(+t),c):r},c.y=function(t){return arguments.length?(e="function"==typeof t?t:Dk(+t),n=null,c):e},c.y0=function(t){return arguments.length?(e="function"==typeof t?t:Dk(+t),c):e},c.y1=function(t){return arguments.length?(n=null==t?null:"function"==typeof t?t:Dk(+t),c):n},c.lineX0=c.lineY0=function(){return l().x(t).y(e)},c.lineY1=function(){return l().x(t).y(n)},c.lineX1=function(){return l().x(r).y(e)},c.defined=function(t){return arguments.length?(i="function"==typeof t?t:Dk(!!t),c):i},c.curve=function(t){return arguments.length?(o=t,null!=a&&(s=o(a)),c):o},c.context=function(t){return arguments.length?(null==t?a=s=null:s=o(a=t),c):a},c}function cw(t,e){return e<t?-1:e>t?1:e>=t?0:NaN}function lw(t){return t}function uw(){var t=lw,e=cw,n=null,r=Dk(0),i=Dk($k),a=Dk(0);function o(o){var s,c,l,u,h,d=(o=ew(o)).length,f=0,p=new Array(d),g=new Array(d),y=+r.apply(this,arguments),m=Math.min($k,Math.max(-$k,i.apply(this,arguments)-y)),b=Math.min(Math.abs(m)/d,a.apply(this,arguments)),v=b*(m<0?-1:1);for(s=0;s<d;++s)(h=g[p[s]=s]=+t(o[s],s,o))>0&&(f+=h);for(null!=e?p.sort((function(t,n){return e(g[t],g[n])})):null!=n&&p.sort((function(t,e){return n(o[t],o[e])})),s=0,l=f?(m-d*v)/f:0;s<d;++s,y=u)c=p[s],u=y+((h=g[c])>0?h*l:0)+v,g[c]={data:o[c],index:s,value:h,startAngle:y,endAngle:u,padAngle:b};return g}return o.value=function(e){return arguments.length?(t="function"==typeof e?e:Dk(+e),o):t},o.sortValues=function(t){return arguments.length?(e=t,n=null,o):e},o.sort=function(t){return arguments.length?(n=t,e=null,o):n},o.startAngle=function(t){return arguments.length?(r="function"==typeof t?t:Dk(+t),o):r},o.endAngle=function(t){return arguments.length?(i="function"==typeof t?t:Dk(+t),o):i},o.padAngle=function(t){return arguments.length?(a="function"==typeof t?t:Dk(+t),o):a},o}nw.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:this._context.lineTo(t,e)}}};var hw=fw(rw);function dw(t){this._curve=t}function fw(t){function e(e){return new dw(t(e))}return e._curve=t,e}function pw(t){var e=t.curve;return t.angle=t.x,delete t.x,t.radius=t.y,delete t.y,t.curve=function(t){return arguments.length?e(fw(t)):e()._curve},t}function gw(){return pw(ow().curve(hw))}function yw(){var t=sw().curve(hw),e=t.curve,n=t.lineX0,r=t.lineX1,i=t.lineY0,a=t.lineY1;return t.angle=t.x,delete t.x,t.startAngle=t.x0,delete t.x0,t.endAngle=t.x1,delete t.x1,t.radius=t.y,delete t.y,t.innerRadius=t.y0,delete t.y0,t.outerRadius=t.y1,delete t.y1,t.lineStartAngle=function(){return pw(n())},delete t.lineX0,t.lineEndAngle=function(){return pw(r())},delete t.lineX1,t.lineInnerRadius=function(){return pw(i())},delete t.lineY0,t.lineOuterRadius=function(){return pw(a())},delete t.lineY1,t.curve=function(t){return arguments.length?e(fw(t)):e()._curve},t}function mw(t,e){return[(e=+e)*Math.cos(t-=Math.PI/2),e*Math.sin(t)]}function bw(t){return t.source}function vw(t){return t.target}function _w(t){var e=bw,n=vw,r=iw,i=aw,a=null;function o(){var o,s=tw.call(arguments),c=e.apply(this,s),l=n.apply(this,s);if(a||(a=o=Ja()),t(a,+r.apply(this,(s[0]=c,s)),+i.apply(this,s),+r.apply(this,(s[0]=l,s)),+i.apply(this,s)),o)return a=null,o+""||null}return o.source=function(t){return arguments.length?(e=t,o):e},o.target=function(t){return arguments.length?(n=t,o):n},o.x=function(t){return arguments.length?(r="function"==typeof t?t:Dk(+t),o):r},o.y=function(t){return arguments.length?(i="function"==typeof t?t:Dk(+t),o):i},o.context=function(t){return arguments.length?(a=null==t?null:t,o):a},o}function xw(t,e,n,r,i){t.moveTo(e,n),t.bezierCurveTo(e=(e+r)/2,n,e,i,r,i)}function kw(t,e,n,r,i){t.moveTo(e,n),t.bezierCurveTo(e,n=(n+i)/2,r,n,r,i)}function ww(t,e,n,r,i){var a=mw(e,n),o=mw(e,n=(n+i)/2),s=mw(r,n),c=mw(r,i);t.moveTo(a[0],a[1]),t.bezierCurveTo(o[0],o[1],s[0],s[1],c[0],c[1])}function Ew(){return _w(xw)}function Tw(){return _w(kw)}function Cw(){var t=_w(ww);return t.angle=t.x,delete t.x,t.radius=t.y,delete t.y,t}dw.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(t,e){this._curve.point(e*Math.sin(t),e*-Math.cos(t))}};const Sw={draw:function(t,e){var n=Math.sqrt(e/Yk);t.moveTo(n,0),t.arc(0,0,n,0,$k)}},Aw={draw:function(t,e){var n=Math.sqrt(e/5)/2;t.moveTo(-3*n,-n),t.lineTo(-n,-n),t.lineTo(-n,-3*n),t.lineTo(n,-3*n),t.lineTo(n,-n),t.lineTo(3*n,-n),t.lineTo(3*n,n),t.lineTo(n,n),t.lineTo(n,3*n),t.lineTo(-n,3*n),t.lineTo(-n,n),t.lineTo(-3*n,n),t.closePath()}};var Mw=Math.sqrt(1/3),Ow=2*Mw;const Nw={draw:function(t,e){var n=Math.sqrt(e/Ow),r=n*Mw;t.moveTo(0,-n),t.lineTo(r,0),t.lineTo(0,n),t.lineTo(-r,0),t.closePath()}};var Dw=Math.sin(Yk/10)/Math.sin(7*Yk/10),Bw=Math.sin($k/10)*Dw,Lw=-Math.cos($k/10)*Dw;const Iw={draw:function(t,e){var n=Math.sqrt(.8908130915292852*e),r=Bw*n,i=Lw*n;t.moveTo(0,-n),t.lineTo(r,i);for(var a=1;a<5;++a){var o=$k*a/5,s=Math.cos(o),c=Math.sin(o);t.lineTo(c*n,-s*n),t.lineTo(s*r-c*i,c*r+s*i)}t.closePath()}},Fw={draw:function(t,e){var n=Math.sqrt(e),r=-n/2;t.rect(r,r,n,n)}};var Rw=Math.sqrt(3);const Pw={draw:function(t,e){var n=-Math.sqrt(e/(3*Rw));t.moveTo(0,2*n),t.lineTo(-Rw*n,-n),t.lineTo(Rw*n,-n),t.closePath()}};var jw=-.5,zw=Math.sqrt(3)/2,Yw=1/Math.sqrt(12),Uw=3*(Yw/2+1);const $w={draw:function(t,e){var n=Math.sqrt(e/Uw),r=n/2,i=n*Yw,a=r,o=n*Yw+n,s=-a,c=o;t.moveTo(r,i),t.lineTo(a,o),t.lineTo(s,c),t.lineTo(jw*r-zw*i,zw*r+jw*i),t.lineTo(jw*a-zw*o,zw*a+jw*o),t.lineTo(jw*s-zw*c,zw*s+jw*c),t.lineTo(jw*r+zw*i,jw*i-zw*r),t.lineTo(jw*a+zw*o,jw*o-zw*a),t.lineTo(jw*s+zw*c,jw*c-zw*s),t.closePath()}};var Ww=[Sw,Aw,Nw,Fw,Iw,Pw,$w];function qw(t,e){var n=null;function r(){var r;if(n||(n=r=Ja()),t.apply(this,arguments).draw(n,+e.apply(this,arguments)),r)return n=null,r+""||null}return t="function"==typeof t?t:Dk(t||Sw),e="function"==typeof e?e:Dk(void 0===e?64:+e),r.type=function(e){return arguments.length?(t="function"==typeof e?e:Dk(e),r):t},r.size=function(t){return arguments.length?(e="function"==typeof t?t:Dk(+t),r):e},r.context=function(t){return arguments.length?(n=null==t?null:t,r):n},r}function Hw(){}function Vw(t,e,n){t._context.bezierCurveTo((2*t._x0+t._x1)/3,(2*t._y0+t._y1)/3,(t._x0+2*t._x1)/3,(t._y0+2*t._y1)/3,(t._x0+4*t._x1+e)/6,(t._y0+4*t._y1+n)/6)}function Gw(t){this._context=t}function Xw(t){return new Gw(t)}function Zw(t){this._context=t}function Qw(t){return new Zw(t)}function Kw(t){this._context=t}function Jw(t){return new Kw(t)}Gw.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:Vw(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:Vw(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}},Zw.prototype={areaStart:Hw,areaEnd:Hw,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x2=t,this._y2=e;break;case 1:this._point=2,this._x3=t,this._y3=e;break;case 2:this._point=3,this._x4=t,this._y4=e,this._context.moveTo((this._x0+4*this._x1+t)/6,(this._y0+4*this._y1+e)/6);break;default:Vw(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}},Kw.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var n=(this._x0+4*this._x1+t)/6,r=(this._y0+4*this._y1+e)/6;this._line?this._context.lineTo(n,r):this._context.moveTo(n,r);break;case 3:this._point=4;default:Vw(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}};class tE{constructor(t,e){this._context=t,this._x=e}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line}point(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,e,t,e):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+e)/2,t,this._y0,t,e)}this._x0=t,this._y0=e}}function eE(t){return new tE(t,!0)}function nE(t){return new tE(t,!1)}function rE(t,e){this._basis=new Gw(t),this._beta=e}rE.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var t=this._x,e=this._y,n=t.length-1;if(n>0)for(var r,i=t[0],a=e[0],o=t[n]-i,s=e[n]-a,c=-1;++c<=n;)r=c/n,this._basis.point(this._beta*t[c]+(1-this._beta)*(i+r*o),this._beta*e[c]+(1-this._beta)*(a+r*s));this._x=this._y=null,this._basis.lineEnd()},point:function(t,e){this._x.push(+t),this._y.push(+e)}};const iE=function t(e){function n(t){return 1===e?new Gw(t):new rE(t,e)}return n.beta=function(e){return t(+e)},n}(.85);function aE(t,e,n){t._context.bezierCurveTo(t._x1+t._k*(t._x2-t._x0),t._y1+t._k*(t._y2-t._y0),t._x2+t._k*(t._x1-e),t._y2+t._k*(t._y1-n),t._x2,t._y2)}function oE(t,e){this._context=t,this._k=(1-e)/6}oE.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:aE(this,this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2,this._x1=t,this._y1=e;break;case 2:this._point=3;default:aE(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const sE=function t(e){function n(t){return new oE(t,e)}return n.tension=function(e){return t(+e)},n}(0);function cE(t,e){this._context=t,this._k=(1-e)/6}cE.prototype={areaStart:Hw,areaEnd:Hw,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:aE(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const lE=function t(e){function n(t){return new cE(t,e)}return n.tension=function(e){return t(+e)},n}(0);function uE(t,e){this._context=t,this._k=(1-e)/6}uE.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:aE(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const hE=function t(e){function n(t){return new uE(t,e)}return n.tension=function(e){return t(+e)},n}(0);function dE(t,e,n){var r=t._x1,i=t._y1,a=t._x2,o=t._y2;if(t._l01_a>zk){var s=2*t._l01_2a+3*t._l01_a*t._l12_a+t._l12_2a,c=3*t._l01_a*(t._l01_a+t._l12_a);r=(r*s-t._x0*t._l12_2a+t._x2*t._l01_2a)/c,i=(i*s-t._y0*t._l12_2a+t._y2*t._l01_2a)/c}if(t._l23_a>zk){var l=2*t._l23_2a+3*t._l23_a*t._l12_a+t._l12_2a,u=3*t._l23_a*(t._l23_a+t._l12_a);a=(a*l+t._x1*t._l23_2a-e*t._l12_2a)/u,o=(o*l+t._y1*t._l23_2a-n*t._l12_2a)/u}t._context.bezierCurveTo(r,i,a,o,t._x2,t._y2)}function fE(t,e){this._context=t,this._alpha=e}fE.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t=+t,e=+e,this._point){var n=this._x2-t,r=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+r*r,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3;default:dE(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const pE=function t(e){function n(t){return e?new fE(t,e):new oE(t,0)}return n.alpha=function(e){return t(+e)},n}(.5);function gE(t,e){this._context=t,this._alpha=e}gE.prototype={areaStart:Hw,areaEnd:Hw,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(t,e){if(t=+t,e=+e,this._point){var n=this._x2-t,r=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+r*r,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:dE(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const yE=function t(e){function n(t){return e?new gE(t,e):new cE(t,0)}return n.alpha=function(e){return t(+e)},n}(.5);function mE(t,e){this._context=t,this._alpha=e}mE.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t=+t,e=+e,this._point){var n=this._x2-t,r=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+r*r,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:dE(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};const bE=function t(e){function n(t){return e?new mE(t,e):new uE(t,0)}return n.alpha=function(e){return t(+e)},n}(.5);function vE(t){this._context=t}function _E(t){return new vE(t)}function xE(t){return t<0?-1:1}function kE(t,e,n){var r=t._x1-t._x0,i=e-t._x1,a=(t._y1-t._y0)/(r||i<0&&-0),o=(n-t._y1)/(i||r<0&&-0),s=(a*i+o*r)/(r+i);return(xE(a)+xE(o))*Math.min(Math.abs(a),Math.abs(o),.5*Math.abs(s))||0}function wE(t,e){var n=t._x1-t._x0;return n?(3*(t._y1-t._y0)/n-e)/2:e}function EE(t,e,n){var r=t._x0,i=t._y0,a=t._x1,o=t._y1,s=(a-r)/3;t._context.bezierCurveTo(r+s,i+s*e,a-s,o-s*n,a,o)}function TE(t){this._context=t}function CE(t){this._context=new SE(t)}function SE(t){this._context=t}function AE(t){return new TE(t)}function ME(t){return new CE(t)}function OE(t){this._context=t}function NE(t){var e,n,r=t.length-1,i=new Array(r),a=new Array(r),o=new Array(r);for(i[0]=0,a[0]=2,o[0]=t[0]+2*t[1],e=1;e<r-1;++e)i[e]=1,a[e]=4,o[e]=4*t[e]+2*t[e+1];for(i[r-1]=2,a[r-1]=7,o[r-1]=8*t[r-1]+t[r],e=1;e<r;++e)n=i[e]/a[e-1],a[e]-=n,o[e]-=n*o[e-1];for(i[r-1]=o[r-1]/a[r-1],e=r-2;e>=0;--e)i[e]=(o[e]-i[e+1])/a[e];for(a[r-1]=(t[r]+i[r-1])/2,e=0;e<r-1;++e)a[e]=2*t[e+1]-i[e+1];return[i,a]}function DE(t){return new OE(t)}function BE(t,e){this._context=t,this._t=e}function LE(t){return new BE(t,.5)}function IE(t){return new BE(t,0)}function FE(t){return new BE(t,1)}function RE(t,e){if((i=t.length)>1)for(var n,r,i,a=1,o=t[e[0]],s=o.length;a<i;++a)for(r=o,o=t[e[a]],n=0;n<s;++n)o[n][1]+=o[n][0]=isNaN(r[n][1])?r[n][0]:r[n][1]}function PE(t){for(var e=t.length,n=new Array(e);--e>=0;)n[e]=e;return n}function jE(t,e){return t[e]}function zE(t){const e=[];return e.key=t,e}function YE(){var t=Dk([]),e=PE,n=RE,r=jE;function i(i){var a,o,s=Array.from(t.apply(this,arguments),zE),c=s.length,l=-1;for(const t of i)for(a=0,++l;a<c;++a)(s[a][l]=[0,+r(t,s[a].key,l,i)]).data=t;for(a=0,o=ew(e(s));a<c;++a)s[o[a]].index=a;return n(s,o),s}return i.keys=function(e){return arguments.length?(t="function"==typeof e?e:Dk(Array.from(e)),i):t},i.value=function(t){return arguments.length?(r="function"==typeof t?t:Dk(+t),i):r},i.order=function(t){return arguments.length?(e=null==t?PE:"function"==typeof t?t:Dk(Array.from(t)),i):e},i.offset=function(t){return arguments.length?(n=null==t?RE:t,i):n},i}function UE(t,e){if((r=t.length)>0){for(var n,r,i,a=0,o=t[0].length;a<o;++a){for(i=n=0;n<r;++n)i+=t[n][a][1]||0;if(i)for(n=0;n<r;++n)t[n][a][1]/=i}RE(t,e)}}function $E(t,e){if((s=t.length)>0)for(var n,r,i,a,o,s,c=0,l=t[e[0]].length;c<l;++c)for(a=o=0,n=0;n<s;++n)(i=(r=t[e[n]][c])[1]-r[0])>0?(r[0]=a,r[1]=a+=i):i<0?(r[1]=o,r[0]=o+=i):(r[0]=0,r[1]=i)}function WE(t,e){if((n=t.length)>0){for(var n,r=0,i=t[e[0]],a=i.length;r<a;++r){for(var o=0,s=0;o<n;++o)s+=t[o][r][1]||0;i[r][1]+=i[r][0]=-s/2}RE(t,e)}}function qE(t,e){if((i=t.length)>0&&(r=(n=t[e[0]]).length)>0){for(var n,r,i,a=0,o=1;o<r;++o){for(var s=0,c=0,l=0;s<i;++s){for(var u=t[e[s]],h=u[o][1]||0,d=(h-(u[o-1][1]||0))/2,f=0;f<s;++f){var p=t[e[f]];d+=(p[o][1]||0)-(p[o-1][1]||0)}c+=h,l+=d*h}n[o-1][1]+=n[o-1][0]=a,c&&(a-=l/c)}n[o-1][1]+=n[o-1][0]=a,RE(t,e)}}function HE(t){var e=t.map(VE);return PE(t).sort((function(t,n){return e[t]-e[n]}))}function VE(t){for(var e,n=-1,r=0,i=t.length,a=-1/0;++n<i;)(e=+t[n][1])>a&&(a=e,r=n);return r}function GE(t){var e=t.map(XE);return PE(t).sort((function(t,n){return e[t]-e[n]}))}function XE(t){for(var e,n=0,r=-1,i=t.length;++r<i;)(e=+t[r][1])&&(n+=e);return n}function ZE(t){return GE(t).reverse()}function QE(t){var e,n,r=t.length,i=t.map(XE),a=HE(t),o=0,s=0,c=[],l=[];for(e=0;e<r;++e)n=a[e],o<s?(o+=i[n],c.push(n)):(s+=i[n],l.push(n));return l.reverse().concat(c)}function KE(t){return PE(t).reverse()}vE.prototype={areaStart:Hw,areaEnd:Hw,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(t,e){t=+t,e=+e,this._point?this._context.lineTo(t,e):(this._point=1,this._context.moveTo(t,e))}},TE.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:EE(this,this._t0,wE(this,this._t0))}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){var n=NaN;if(e=+e,(t=+t)!==this._x1||e!==this._y1){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3,EE(this,wE(this,n=kE(this,t,e)),n);break;default:EE(this,this._t0,n=kE(this,t,e))}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e,this._t0=n}}},(CE.prototype=Object.create(TE.prototype)).point=function(t,e){TE.prototype.point.call(this,e,t)},SE.prototype={moveTo:function(t,e){this._context.moveTo(e,t)},closePath:function(){this._context.closePath()},lineTo:function(t,e){this._context.lineTo(e,t)},bezierCurveTo:function(t,e,n,r,i,a){this._context.bezierCurveTo(e,t,r,n,a,i)}},OE.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var t=this._x,e=this._y,n=t.length;if(n)if(this._line?this._context.lineTo(t[0],e[0]):this._context.moveTo(t[0],e[0]),2===n)this._context.lineTo(t[1],e[1]);else for(var r=NE(t),i=NE(e),a=0,o=1;o<n;++a,++o)this._context.bezierCurveTo(r[0][a],i[0][a],r[1][a],i[1][a],t[o],e[o]);(this._line||0!==this._line&&1===n)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(t,e){this._x.push(+t),this._y.push(+e)}},BE.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&2===this._point&&this._context.lineTo(this._x,this._y),(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(t,e){switch(t=+t,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,e),this._context.lineTo(t,e);else{var n=this._x*(1-this._t)+t*this._t;this._context.lineTo(n,this._y),this._context.lineTo(n,e)}}this._x=t,this._y=e}};var JE="%Y-%m-%dT%H:%M:%S.%LZ",tT=Date.prototype.toISOString?function(t){return t.toISOString()}:fv(JE);const eT=tT;var nT=+new Date("2000-01-01T00:00:00.000Z")?function(t){var e=new Date(t);return isNaN(e)?null:e}:pv(JE);const rT=nT;function iT(t,e,n){var r=new Zr,i=e;return null==e?(r.restart(t,e,n),r):(r._restart=r.restart,r.restart=function(t,e,n){e=+e,n=null==n?Gr():+n,r._restart((function a(o){o+=i,r._restart(a,i+=e,n),t(o)}),e,n)},r.restart(t,e,n),r)}const aT=t=>()=>t;function oT(t,{sourceEvent:e,target:n,transform:r,dispatch:i}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:e,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:i}})}function sT(t,e,n){this.k=t,this.x=e,this.y=n}sT.prototype={constructor:sT,scale:function(t){return 1===t?this:new sT(this.k*t,this.x,this.y)},translate:function(t,e){return 0===t&0===e?this:new sT(this.k,this.x+this.k*t,this.y+this.k*e)},apply:function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},applyX:function(t){return t*this.k+this.x},applyY:function(t){return t*this.k+this.y},invert:function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},invertX:function(t){return(t-this.x)/this.k},invertY:function(t){return(t-this.y)/this.k},rescaleX:function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},rescaleY:function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var cT=new sT(1,0,0);function lT(t){for(;!t.__zoom;)if(!(t=t.parentNode))return cT;return t.__zoom}function uT(t){t.stopImmediatePropagation()}function hT(t){t.preventDefault(),t.stopImmediatePropagation()}function dT(t){return!(t.ctrlKey&&"wheel"!==t.type||t.button)}function fT(){var t=this;return t instanceof SVGElement?(t=t.ownerSVGElement||t).hasAttribute("viewBox")?[[(t=t.viewBox.baseVal).x,t.y],[t.x+t.width,t.y+t.height]]:[[0,0],[t.width.baseVal.value,t.height.baseVal.value]]:[[0,0],[t.clientWidth,t.clientHeight]]}function pT(){return this.__zoom||cT}function gT(t){return-t.deltaY*(1===t.deltaMode?.05:t.deltaMode?1:.002)*(t.ctrlKey?10:1)}function yT(){return navigator.maxTouchPoints||"ontouchstart"in this}function mT(t,e,n){var r=t.invertX(e[0][0])-n[0][0],i=t.invertX(e[1][0])-n[1][0],a=t.invertY(e[0][1])-n[0][1],o=t.invertY(e[1][1])-n[1][1];return t.translate(i>r?(r+i)/2:Math.min(0,r)||Math.max(0,i),o>a?(a+o)/2:Math.min(0,a)||Math.max(0,o))}function bT(){var t,e,n,r=dT,i=fT,a=mT,o=gT,s=yT,c=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],u=250,h=ny,d=de("start","zoom","end"),f=500,p=0,g=10;function y(t){t.property("__zoom",pT).on("wheel.zoom",w,{passive:!1}).on("mousedown.zoom",E).on("dblclick.zoom",T).filter(s).on("touchstart.zoom",C).on("touchmove.zoom",S).on("touchend.zoom touchcancel.zoom",A).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(t,e){return(e=Math.max(c[0],Math.min(c[1],e)))===t.k?t:new sT(e,t.x,t.y)}function b(t,e,n){var r=e[0]-n[0]*t.k,i=e[1]-n[1]*t.k;return r===t.x&&i===t.y?t:new sT(t.k,r,i)}function v(t){return[(+t[0][0]+ +t[1][0])/2,(+t[0][1]+ +t[1][1])/2]}function _(t,e,n,r){t.on("start.zoom",(function(){x(this,arguments).event(r).start()})).on("interrupt.zoom end.zoom",(function(){x(this,arguments).event(r).end()})).tween("zoom",(function(){var t=this,a=arguments,o=x(t,a).event(r),s=i.apply(t,a),c=null==n?v(s):"function"==typeof n?n.apply(t,a):n,l=Math.max(s[1][0]-s[0][0],s[1][1]-s[0][1]),u=t.__zoom,d="function"==typeof e?e.apply(t,a):e,f=h(u.invert(c).concat(l/u.k),d.invert(c).concat(l/d.k));return function(t){if(1===t)t=d;else{var e=f(t),n=l/e[2];t=new sT(n,c[0]-e[0]*n,c[1]-e[1]*n)}o.zoom(null,t)}}))}function x(t,e,n){return!n&&t.__zooming||new k(t,e)}function k(t,e){this.that=t,this.args=e,this.active=0,this.sourceEvent=null,this.extent=i.apply(t,e),this.taps=0}function w(t,...e){if(r.apply(this,arguments)){var n=x(this,e).event(t),i=this.__zoom,s=Math.max(c[0],Math.min(c[1],i.k*Math.pow(2,o.apply(this,arguments)))),u=Rr(t);if(n.wheel)n.mouse[0][0]===u[0]&&n.mouse[0][1]===u[1]||(n.mouse[1]=i.invert(n.mouse[0]=u)),clearTimeout(n.wheel);else{if(i.k===s)return;n.mouse=[u,i.invert(u)],li(this),n.start()}hT(t),n.wheel=setTimeout(h,150),n.zoom("mouse",a(b(m(i,s),n.mouse[0],n.mouse[1]),n.extent,l))}function h(){n.wheel=null,n.end()}}function E(t,...e){if(!n&&r.apply(this,arguments)){var i=t.currentTarget,o=x(this,e,!0).event(t),s=Mn(t.view).on("mousemove.zoom",d,!0).on("mouseup.zoom",f,!0),c=Rr(t,i),u=t.clientX,h=t.clientY;Ln(t.view),uT(t),o.mouse=[c,this.__zoom.invert(c)],li(this),o.start()}function d(t){if(hT(t),!o.moved){var e=t.clientX-u,n=t.clientY-h;o.moved=e*e+n*n>p}o.event(t).zoom("mouse",a(b(o.that.__zoom,o.mouse[0]=Rr(t,i),o.mouse[1]),o.extent,l))}function f(t){s.on("mousemove.zoom mouseup.zoom",null),In(t.view,o.moved),hT(t),o.event(t).end()}}function T(t,...e){if(r.apply(this,arguments)){var n=this.__zoom,o=Rr(t.changedTouches?t.changedTouches[0]:t,this),s=n.invert(o),c=n.k*(t.shiftKey?.5:2),h=a(b(m(n,c),o,s),i.apply(this,e),l);hT(t),u>0?Mn(this).transition().duration(u).call(_,h,o,t):Mn(this).call(y.transform,h,o,t)}}function C(n,...i){if(r.apply(this,arguments)){var a,o,s,c,l=n.touches,u=l.length,h=x(this,i,n.changedTouches.length===u).event(n);for(uT(n),o=0;o<u;++o)c=[c=Rr(s=l[o],this),this.__zoom.invert(c),s.identifier],h.touch0?h.touch1||h.touch0[2]===c[2]||(h.touch1=c,h.taps=0):(h.touch0=c,a=!0,h.taps=1+!!t);t&&(t=clearTimeout(t)),a&&(h.taps<2&&(e=c[0],t=setTimeout((function(){t=null}),f)),li(this),h.start())}}function S(t,...e){if(this.__zooming){var n,r,i,o,s=x(this,e).event(t),c=t.changedTouches,u=c.length;for(hT(t),n=0;n<u;++n)i=Rr(r=c[n],this),s.touch0&&s.touch0[2]===r.identifier?s.touch0[0]=i:s.touch1&&s.touch1[2]===r.identifier&&(s.touch1[0]=i);if(r=s.that.__zoom,s.touch1){var h=s.touch0[0],d=s.touch0[1],f=s.touch1[0],p=s.touch1[1],g=(g=f[0]-h[0])*g+(g=f[1]-h[1])*g,y=(y=p[0]-d[0])*y+(y=p[1]-d[1])*y;r=m(r,Math.sqrt(g/y)),i=[(h[0]+f[0])/2,(h[1]+f[1])/2],o=[(d[0]+p[0])/2,(d[1]+p[1])/2]}else{if(!s.touch0)return;i=s.touch0[0],o=s.touch0[1]}s.zoom("touch",a(b(r,i,o),s.extent,l))}}function A(t,...r){if(this.__zooming){var i,a,o=x(this,r).event(t),s=t.changedTouches,c=s.length;for(uT(t),n&&clearTimeout(n),n=setTimeout((function(){n=null}),f),i=0;i<c;++i)a=s[i],o.touch0&&o.touch0[2]===a.identifier?delete o.touch0:o.touch1&&o.touch1[2]===a.identifier&&delete o.touch1;if(o.touch1&&!o.touch0&&(o.touch0=o.touch1,delete o.touch1),o.touch0)o.touch0[1]=this.__zoom.invert(o.touch0[0]);else if(o.end(),2===o.taps&&(a=Rr(a,this),Math.hypot(e[0]-a[0],e[1]-a[1])<g)){var l=Mn(this).on("dblclick.zoom");l&&l.apply(this,arguments)}}}return y.transform=function(t,e,n,r){var i=t.selection?t.selection():t;i.property("__zoom",pT),t!==i?_(t,e,n,r):i.interrupt().each((function(){x(this,arguments).event(r).start().zoom(null,"function"==typeof e?e.apply(this,arguments):e).end()}))},y.scaleBy=function(t,e,n,r){y.scaleTo(t,(function(){var t=this.__zoom.k,n="function"==typeof e?e.apply(this,arguments):e;return t*n}),n,r)},y.scaleTo=function(t,e,n,r){y.transform(t,(function(){var t=i.apply(this,arguments),r=this.__zoom,o=null==n?v(t):"function"==typeof n?n.apply(this,arguments):n,s=r.invert(o),c="function"==typeof e?e.apply(this,arguments):e;return a(b(m(r,c),o,s),t,l)}),n,r)},y.translateBy=function(t,e,n,r){y.transform(t,(function(){return a(this.__zoom.translate("function"==typeof e?e.apply(this,arguments):e,"function"==typeof n?n.apply(this,arguments):n),i.apply(this,arguments),l)}),null,r)},y.translateTo=function(t,e,n,r,o){y.transform(t,(function(){var t=i.apply(this,arguments),o=this.__zoom,s=null==r?v(t):"function"==typeof r?r.apply(this,arguments):r;return a(cT.translate(s[0],s[1]).scale(o.k).translate("function"==typeof e?-e.apply(this,arguments):-e,"function"==typeof n?-n.apply(this,arguments):-n),t,l)}),r,o)},k.prototype={event:function(t){return t&&(this.sourceEvent=t),this},start:function(){return 1==++this.active&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(t,e){return this.mouse&&"mouse"!==t&&(this.mouse[1]=e.invert(this.mouse[0])),this.touch0&&"touch"!==t&&(this.touch0[1]=e.invert(this.touch0[0])),this.touch1&&"touch"!==t&&(this.touch1[1]=e.invert(this.touch1[0])),this.that.__zoom=e,this.emit("zoom"),this},end:function(){return 0==--this.active&&(delete this.that.__zooming,this.emit("end")),this},emit:function(t){var e=Mn(this.that).datum();d.call(t,this.that,new oT(t,{sourceEvent:this.sourceEvent,target:y,type:t,transform:this.that.__zoom,dispatch:d}),e)}},y.wheelDelta=function(t){return arguments.length?(o="function"==typeof t?t:aT(+t),y):o},y.filter=function(t){return arguments.length?(r="function"==typeof t?t:aT(!!t),y):r},y.touchable=function(t){return arguments.length?(s="function"==typeof t?t:aT(!!t),y):s},y.extent=function(t){return arguments.length?(i="function"==typeof t?t:aT([[+t[0][0],+t[0][1]],[+t[1][0],+t[1][1]]]),y):i},y.scaleExtent=function(t){return arguments.length?(c[0]=+t[0],c[1]=+t[1],y):[c[0],c[1]]},y.translateExtent=function(t){return arguments.length?(l[0][0]=+t[0][0],l[1][0]=+t[1][0],l[0][1]=+t[0][1],l[1][1]=+t[1][1],y):[[l[0][0],l[0][1]],[l[1][0],l[1][1]]]},y.constrain=function(t){return arguments.length?(a=t,y):a},y.duration=function(t){return arguments.length?(u=+t,y):u},y.interpolate=function(t){return arguments.length?(h=t,y):h},y.on=function(){var t=d.on.apply(d,arguments);return t===d?y:t},y.clickDistance=function(t){return arguments.length?(p=(t=+t)*t,y):Math.sqrt(p)},y.tapDistance=function(t){return arguments.length?(g=+t,y):g},y}lT.prototype=sT.prototype}},a={};function o(t){var e=a[t];if(void 0!==e)return e.exports;var n=a[t]={id:t,loaded:!1,exports:{}};return i[t].call(n.exports,n,n.exports,o),n.loaded=!0,n.exports}o.c=a,o.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return o.d(e,{a:e}),e},o.d=(t,e)=>{for(var n in e)o.o(e,n)&&!o.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},o.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(i){if("object"==typeof window)return window}}(),o.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),o.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},o.nmd=t=>(t.paths=[],t.children||(t.children=[]),t);var s=o(o.s=6187).Z;const l="light";const u=({chart:t,config:e})=>{if("undefined"==typeof window)return r.createElement("div",{className:"mermaid","data-mermaid-src":t},t);const n=(0,r.useMemo)((()=>"string"==typeof e?JSON.parse(e):e),[e]),i=document.querySelector("html"),[a,o]=(0,r.useState)(!1),c=(0,r.useMemo)((()=>function(t,e){let n=t.getAttribute("data-theme")??l;n!==l&&"dark"!==n&&(n=l);const r=n===l?"default":"dark";return e?.theme?.[n]??e?.mermaid?.theme??r}(i,n)),[n,a]);return(0,r.useEffect)((()=>{const t=new MutationObserver((t=>{for(const e of t)if("attributes"===e.type&&"data-theme"===e.attributeName){o((t=>!t));break}}));return t.observe(i,{attributes:!0}),()=>{try{t.disconnect()}catch{}}}),[]),(0,r.useEffect)((()=>{n&&(n.mermaid?s.initialize({startOnLoad:!0,...n.mermaid,theme:c}):s.initialize({startOnLoad:!0,theme:c}),document.querySelectorAll('div.mermaid[data-processed="true"]').forEach((t=>{t.removeAttribute("data-processed"),t.innerHTML=t.getAttribute("data-mermaid-src")})),s.contentLoaded())}),[n,c]),(0,r.useEffect)((()=>{document.querySelectorAll('div.mermaid[data-processed="true"]').forEach((t=>{t.removeAttribute("data-processed"),t.innerHTML=t.getAttribute("data-mermaid-src")})),setTimeout(s.contentLoaded,0)}),[t]),r.createElement("div",{className:"mermaid","data-mermaid-src":t},t)}}}]); \ No newline at end of file diff --git a/assets/js/d38eaa6e.5e09b96d.js b/assets/js/d38eaa6e.5e09b96d.js new file mode 100644 index 00000000..7daff1cb --- /dev/null +++ b/assets/js/d38eaa6e.5e09b96d.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[389],{543:(t,e,a)=>{a.r(e),a.d(e,{assets:()=>c,contentTitle:()=>r,default:()=>u,frontMatter:()=>n,metadata:()=>p,toc:()=>s});var o=a(7462),i=(a(7294),a(3905));a(1839);const n={},r="Introduction",p={unversionedId:"about/introduction",id:"about/introduction",title:"Introduction",description:"The purpose of the template",source:"@site/docs/about/01-introduction.md",sourceDirName:"about",slug:"/about/introduction",permalink:"/template-fastapi-react/docs/about/introduction",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/about/01-introduction.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{},sidebar:"about",next:{title:"Overview",permalink:"/template-fastapi-react/docs/about/overview"}},c={},s=[{value:"The purpose of the template",id:"the-purpose-of-the-template",level:2}],d={toc:s};function u(t){let{components:e,...a}=t;return(0,i.kt)("wrapper",(0,o.Z)({},d,a,{components:e,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"introduction"},"Introduction"),(0,i.kt)("h2",{id:"the-purpose-of-the-template"},"The purpose of the template"),(0,i.kt)("p",null,"This is a solution template for creating a Single Page App (SPA) with React and FastAPI following the principles of Clean Architecture."),(0,i.kt)("p",null,"The template provides an example implementation of a todo application. The todo app implementation is fairly basic. A user can add a task, mark a task as completed and delete an added task. The purpose of the minimalist todo app implementation is to learn and practice what the concepts of ",(0,i.kt)("a",{parentName:"p",href:"/template-fastapi-react/docs/contribute/development-guide/coding/architecture"},"clean architecture")," are, and how they can be used in a REST API."))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/d3ec9a0d.42dfbc51.js b/assets/js/d3ec9a0d.42dfbc51.js new file mode 100644 index 00000000..be0d718b --- /dev/null +++ b/assets/js/d3ec9a0d.42dfbc51.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[95],{3883:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>u,contentTitle:()=>o,default:()=>l,frontMatter:()=>a,metadata:()=>s,toc:()=>p});var n=r(7462),i=(r(7294),r(3905));r(1839);const a={},o="Prerequisites",s={unversionedId:"about/running/prerequisites",id:"about/running/prerequisites",title:"Prerequisites",description:"In order to run you need to have installed:",source:"@site/docs/about/running/01-prerequisites.md",sourceDirName:"about/running",slug:"/about/running/prerequisites",permalink:"/template-fastapi-react/docs/about/running/prerequisites",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/about/running/01-prerequisites.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{},sidebar:"about",previous:{title:"Running",permalink:"/template-fastapi-react/docs/category/running"},next:{title:"Configuration",permalink:"/template-fastapi-react/docs/about/running/configure"}},u={},p=[],c={toc:p};function l(e){let{components:t,...r}=e;return(0,i.kt)("wrapper",(0,n.Z)({},c,r,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"prerequisites"},"Prerequisites"),(0,i.kt)("p",null,"In order to run you need to have installed:"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"https://www.docker.com/"},"Docker")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"https://docs.docker.com/compose/"},"Docker Compose")),(0,i.kt)("li",{parentName:"ul"},"Git"),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"https://www.python.org/"},"Python")," (3.10 or newer)")))}l.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/d5120d00.6cd7f025.js b/assets/js/d5120d00.6cd7f025.js new file mode 100644 index 00000000..b09c76d5 --- /dev/null +++ b/assets/js/d5120d00.6cd7f025.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[410],{5745:e=>{e.exports=JSON.parse('{"name":"docusaurus-plugin-content-pages","id":"default"}')}}]); \ No newline at end of file diff --git a/assets/js/ddc469d8.ae70c047.js b/assets/js/ddc469d8.ae70c047.js new file mode 100644 index 00000000..f91e7704 --- /dev/null +++ b/assets/js/ddc469d8.ae70c047.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[770],{6249:t=>{t.exports=JSON.parse('{"title":"How to","description":"General introductions to complex topics","slug":"/category/how-to","permalink":"/template-fastapi-react/docs/category/how-to","navigation":{"previous":{"title":"Use case","permalink":"/template-fastapi-react/docs/about/concepts/use-case"},"next":{"title":"How to do something","permalink":"/template-fastapi-react/docs/about/how-to/how-to-do-something"}}}')}}]); \ No newline at end of file diff --git a/assets/js/eb414d18.4f3efa3c.js b/assets/js/eb414d18.4f3efa3c.js new file mode 100644 index 00000000..6b9bdcb9 --- /dev/null +++ b/assets/js/eb414d18.4f3efa3c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[529],{3769:e=>{e.exports=JSON.parse('{"name":"docusaurus-plugin-content-docs","id":"default"}')}}]); \ No newline at end of file diff --git a/assets/js/eccd96cf.0961e338.js b/assets/js/eccd96cf.0961e338.js new file mode 100644 index 00000000..e9b8d726 --- /dev/null +++ b/assets/js/eccd96cf.0961e338.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[283],{2565:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>u,default:()=>m,frontMatter:()=>d,metadata:()=>p,toc:()=>s});var o=n(7462),i=(n(7294),n(3905)),a=n(1839),r=n(814);const d={sidebar_position:3},u="Extending the web",p={unversionedId:"contribute/development-guide/coding/extending-the-web/index",id:"contribute/development-guide/coding/extending-the-web/index",title:"Extending the web",description:"The web is grouped by features.",source:"@site/docs/contribute/development-guide/coding/extending-the-web/index.md",sourceDirName:"contribute/development-guide/coding/extending-the-web",slug:"/contribute/development-guide/coding/extending-the-web/",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-web/",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/contribute/development-guide/coding/extending-the-web/index.md",tags:[],version:"current",sidebarPosition:3,frontMatter:{sidebar_position:3},sidebar:"contribute",previous:{title:"Generate API clients",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/generate-api-clients"},next:{title:"Testing",permalink:"/template-fastapi-react/docs/contribute/development-guide/testing"}},c={},s=[{value:"Codebase structure",id:"codebase-structure",level:2},{value:"Application tree",id:"application-tree",level:2},{value:"Configuration",id:"configuration",level:2},{value:"Oauth2",id:"oauth2",level:3},{value:"Routes",id:"routes",level:3}],l={toc:s};function m(e){let{components:t,...n}=e;return(0,i.kt)("wrapper",(0,o.Z)({},l,n,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"extending-the-web"},"Extending the web"),(0,i.kt)("p",null,"The web is grouped by features."),(0,i.kt)("h2",{id:"codebase-structure"},"Codebase structure"),(0,i.kt)("p",null,"The web has a feature-based folder structure."),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre"},"\u251c\u2500\u2500 web/\n\u2502 \u2514\u2500\u2500 src/\n\u2502 \u251c\u2500\u2500 api/\n\u2502 \u251c\u2500\u2500 common/\n\u2502 \u251c\u2500\u2500 features/\n\u2502 \u2502 \u251c\u2500\u2500 todos/\n\u2502 \u2502 \u2514\u2500\u2500 ...\n\u2502 \u251c\u2500\u2500 hooks/\n\u2502 \u2514\u2500\u2500 pages/\n\u2514\u2500\u2500 ...\n")),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"api")," contains the auto-generated API client"),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"common")," contains shared code like generic components"),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"features")," contains features e.g. todo-list"),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"hooks")," contains re-usable hooks"),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"pages")," contains entrypoints (pages that are used by the router)")),(0,i.kt)("h2",{id:"application-tree"},"Application tree"),(0,i.kt)(a.G,{chart:'\nflowchart\n subgraph web\n AuthProvider-. imported from .->react-oauth2-code-pkce;\n index --\x3e AuthProvider\n AuthProvider --\x3e app\n app --\x3e Header\n app --\x3e RouterProvider\n RouterProvider-. imported from .->react-router-dom;\n RouterProvider --\x3e routes\n routes -- /invalid --\x3e InvalidUrl\n routes -- / --\x3e TodoListPage\n TodoListPage --\x3e TodoList\n TodoList -- uses hook --\x3e useTodos\n useTodos -- uses client --\x3e TodoAPI\n TodoList --\x3e AddItem\n TodoList -- 1..x --\x3e TodoItem\n end\n\n TodoAPI -- HTTP requests --\x3e API\n\n style react-oauth2-code-pkce fill:#f96;\n click react-oauth2-code-pkce "https://www.npmjs.com/package/react-oauth2-code-pkce" "Open"\n style react-router-dom fill:#f96;\n click react-router-dom "https://www.npmjs.com/package/react-router-dom" "Open"\n\n style useTodos fill:#b8c;',mdxType:"Mermaid"}),(0,i.kt)("p",null,"External dependencies:"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"The app is using ",(0,i.kt)("a",{parentName:"li",href:"https://www.npmjs.com/package/react-oauth2-code-pkce"},"react-oauth2-code-pkce")," for Oauth2 authentication."),(0,i.kt)("li",{parentName:"ul"},"The app is using ",(0,i.kt)("a",{parentName:"li",href:"https://www.npmjs.com/package/react-router-dom"},"react-router-dom")," for routing.")),(0,i.kt)("h2",{id:"configuration"},"Configuration"),(0,i.kt)("p",null,"See ",(0,i.kt)("a",{parentName:"p",href:"../../../../about/running/configure"},"configuration")," for a description of the different configuration options available."),(0,i.kt)("h3",{id:"oauth2"},"Oauth2"),(0,i.kt)("p",null,"The AuthProvider are using the configuration defined in ",(0,i.kt)("inlineCode",{parentName:"p"},"web/src/auth"),"."),(0,i.kt)(r.Z,{language:"jsx",mdxType:"CodeBlock"},"import type { TAuthConfig } from 'react-oauth2-code-pkce'\n\nexport const authConfig: TAuthConfig = {\n clientId: import.meta.env.VITE_AUTH_CLIENT_ID || '',\n authorizationEndpoint: import.meta.env.VITE_AUTH_ENDPOINT || '',\n tokenEndpoint: import.meta.env.VITE_TOKEN_ENDPOINT || '',\n scope: import.meta.env.VITE_AUTH_SCOPE || '',\n redirectUri: import.meta.env.VITE_AUTH_REDIRECT_URI || '',\n logoutEndpoint: import.meta.env.VITE_LOGOUT_ENDPOINT || '',\n autoLogin: false,\n preLogin: () =>\n localStorage.setItem(\n 'preLoginPath',\n `${window.location.pathname}${window.location.search}${window.location.hash}`\n ),\n postLogin: () =>\n window.location.replace(localStorage.getItem('preLoginPath') ?? (import.meta.env.VITE_AUTH_REDIRECT_URI || '')),\n}\n"),(0,i.kt)("h3",{id:"routes"},"Routes"),(0,i.kt)("p",null,"The RouterProvider are using the router defined in ",(0,i.kt)("inlineCode",{parentName:"p"},"web/src/router"),"."),(0,i.kt)(r.Z,{language:"jsx",mdxType:"CodeBlock"},"import { createBrowserRouter } from 'react-router-dom'\nimport InvalidUrl from './common/components/InvalidUrl'\nimport { TodoListPage } from './pages/TodoListPage'\n\nexport const router = createBrowserRouter([\n {\n path: '/',\n element: <TodoListPage />,\n },\n {\n path: '*',\n element: <InvalidUrl />,\n },\n])\n"))}m.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/f05b69d1.3b3214c8.js b/assets/js/f05b69d1.3b3214c8.js new file mode 100644 index 00000000..bbf5b7ae --- /dev/null +++ b/assets/js/f05b69d1.3b3214c8.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[301],{5490:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>r,contentTitle:()=>i,default:()=>d,frontMatter:()=>n,metadata:()=>c,toc:()=>l});var o=a(7462),s=(a(7294),a(3905));a(1839);const n={},i="Task",c={unversionedId:"about/concepts/task",id:"about/concepts/task",title:"Task",description:'This is an example of a "concept" which is domain specific, and not related to your application. It should be replaced by relevant domain specific concepts in your documentation. Note that for some concepts, having an "Examples"-section does not make sense. Feel free to adapt the example\'s structure to best suit your concepts.',source:"@site/docs/about/concepts/01-task.md",sourceDirName:"about/concepts",slug:"/about/concepts/task",permalink:"/template-fastapi-react/docs/about/concepts/task",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/about/concepts/01-task.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{},sidebar:"about",previous:{title:"Concepts",permalink:"/template-fastapi-react/docs/category/concepts"},next:{title:"Use case",permalink:"/template-fastapi-react/docs/about/concepts/use-case"}},r={},l=[{value:"Examples",id:"examples",level:2},{value:"Related concepts",id:"related-concepts",level:2}],p={toc:l};function d(e){let{components:t,...a}=e;return(0,s.kt)("wrapper",(0,o.Z)({},p,a,{components:t,mdxType:"MDXLayout"}),(0,s.kt)("h1",{id:"task"},"Task"),(0,s.kt)("admonition",{type:"info"},(0,s.kt)("p",{parentName:"admonition"},'This is an example of a "concept" which is domain specific, and not related to your application. It should be replaced by relevant domain specific concepts in your documentation. Note that for some concepts, having an "Examples"-section does not make sense. Feel free to adapt the example\'s structure to best suit your concepts.')),(0,s.kt)("p",null,"A task is piece of work which is assigned to be done by one or multiple persons. A task usually has defined limits, often referred to as the task description."),(0,s.kt)("p",null,"In order to remember assigned tasks, they are often made note of in lists. Traditionally, these lists have been written on small notes (e.g. post-its), but in recent years there have been a large number of todo-apps developed for phones and computers, replacing its analogue predecessor. See ",(0,s.kt)("a",{parentName:"p",href:"#related-concepts"},"related concepts")," for more on to-do lists."),(0,s.kt)("p",null,"Once a task is assigned to a person, the person is expected to carry out the task until completion. There is often a time-limit associated with a task, and a failure to complete the task within the time-limit might be unacceptable and as unfavorable as not completing the task at all."),(0,s.kt)("h2",{id:"examples"},"Examples"),(0,s.kt)("ol",null,(0,s.kt)("li",{parentName:"ol"},"Many young children are given chores around the house, such as taking out the trash or cleaning their room."),(0,s.kt)("li",{parentName:"ol"},"All employees have a set of tasks to complete, which are often defined in their contract or verbally during their training.")),(0,s.kt)("h2",{id:"related-concepts"},"Related concepts"),(0,s.kt)("ul",null,(0,s.kt)("li",{parentName:"ul"},(0,s.kt)("a",{parentName:"li",href:"/template-fastapi-react/docs/about/concepts/task"},"To-do list")," "),(0,s.kt)("li",{parentName:"ul"},"xxx")))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/f271ccf2.1243d9fe.js b/assets/js/f271ccf2.1243d9fe.js new file mode 100644 index 00000000..f082a418 --- /dev/null +++ b/assets/js/f271ccf2.1243d9fe.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[214],{1270:e=>{e.exports=JSON.parse('{"title":"Coding","description":"This section of the documentation lists instructions and guidelines on how to start coding","slug":"/category/coding","permalink":"/template-fastapi-react/docs/category/coding","navigation":{"previous":{"title":"Setup","permalink":"/template-fastapi-react/docs/contribute/development-guide/setup"},"next":{"title":"Architecture overview","permalink":"/template-fastapi-react/docs/contribute/development-guide/coding/architecture"}}}')}}]); \ No newline at end of file diff --git a/assets/js/faf05ce9.6d36023d.js b/assets/js/faf05ce9.6d36023d.js new file mode 100644 index 00000000..e76f4733 --- /dev/null +++ b/assets/js/faf05ce9.6d36023d.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[349],{3603:(e,t,o)=>{o.r(t),o.d(t,{assets:()=>p,contentTitle:()=>a,default:()=>l,frontMatter:()=>d,metadata:()=>s,toc:()=>c});var i=o(7462),n=(o(7294),o(3905)),r=(o(1839),o(814));const d={},a="Repository interfaces",s={unversionedId:"contribute/development-guide/coding/extending-the-api/adding-data-providers/repository-interfaces",id:"contribute/development-guide/coding/extending-the-api/adding-data-providers/repository-interfaces",title:"Repository interfaces",description:"A repository interface describes the incoming parameters and the type of the object returned by a repository. The",source:"@site/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/02-repository-interfaces.md",sourceDirName:"contribute/development-guide/coding/extending-the-api/adding-data-providers",slug:"/contribute/development-guide/coding/extending-the-api/adding-data-providers/repository-interfaces",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repository-interfaces",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/02-repository-interfaces.md",tags:[],version:"current",sidebarPosition:2,frontMatter:{},sidebar:"contribute",previous:{title:"Clients",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/clients"},next:{title:"Repositories",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repositories"}},p={},c=[],m={toc:c};function l(e){let{components:t,...o}=e;return(0,n.kt)("wrapper",(0,i.Z)({},m,o,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"repository-interfaces"},"Repository interfaces"),(0,n.kt)("p",null,"A repository interface describes the incoming parameters and the type of the object returned by a repository. The\npurpose of these interfaces is to allow use-cases to be implementation-agnostic (and thus not depend on an outer layer).\nIt also allows for mocking of repositories for testing purposes."),(0,n.kt)(r.Z,{language:"jsx",mdxType:"CodeBlock"},"from abc import ABCMeta, abstractmethod\n\nfrom features.todo.entities.todo_item import TodoItem\n\n\nclass TodoRepositoryInterface(metaclass=ABCMeta):\n @abstractmethod\n def create(self, todo_item: TodoItem) -> TodoItem | None:\n raise NotImplementedError\n\n @abstractmethod\n def get(self, todo_item_id: str) -> TodoItem:\n raise NotImplementedError\n\n @abstractmethod\n def update(self, todo_item: TodoItem) -> TodoItem:\n raise NotImplementedError\n\n @abstractmethod\n def delete(self, todo_item_id: str) -> None:\n raise NotImplementedError\n\n @abstractmethod\n def get_all(self) -> list[TodoItem]:\n raise NotImplementedError\n"))}l.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/fc1348c9.0401af5e.js b/assets/js/fc1348c9.0401af5e.js new file mode 100644 index 00000000..d5535eb8 --- /dev/null +++ b/assets/js/fc1348c9.0401af5e.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[302],{6897:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>o,contentTitle:()=>s,default:()=>d,frontMatter:()=>r,metadata:()=>l,toc:()=>c});var n=a(7462),i=(a(7294),a(3905));a(1839);const r={},s="Architecture overview",l={unversionedId:"contribute/development-guide/coding/architecture",id:"contribute/development-guide/coding/architecture",title:"Architecture overview",description:"Architecture diagrams",source:"@site/docs/contribute/development-guide/coding/01-architecture.md",sourceDirName:"contribute/development-guide/coding",slug:"/contribute/development-guide/coding/architecture",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/architecture",draft:!1,editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/docs/contribute/development-guide/coding/01-architecture.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{},sidebar:"contribute",previous:{title:"Coding",permalink:"/template-fastapi-react/docs/category/coding"},next:{title:"Extending the API",permalink:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/"}},o={},c=[{value:"Architecture diagrams",id:"architecture-diagrams",level:2},{value:"Level 1 - System Context diagram",id:"level-1---system-context-diagram",level:3},{value:"Level 2 - Container diagram",id:"level-2---container-diagram",level:3},{value:"Level 3 - Component diagram",id:"level-3---component-diagram",level:3},{value:"Clean architecture",id:"clean-architecture",level:2},{value:"What is Clean Architecture?",id:"what-is-clean-architecture",level:3},{value:"The dependency rule",id:"the-dependency-rule",level:3},{value:"Why Clean Architecture?",id:"why-clean-architecture",level:3},{value:"S.O.L.I.D Principles",id:"solid-principles",level:3},{value:"Components",id:"components",level:3},{value:"Business rules",id:"business-rules",level:3}],u={toc:c};function d(e){let{components:t,...r}=e;return(0,i.kt)("wrapper",(0,n.Z)({},u,r,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h1",{id:"architecture-overview"},"Architecture overview"),(0,i.kt)("h2",{id:"architecture-diagrams"},"Architecture diagrams"),(0,i.kt)("p",null,"We are using ",(0,i.kt)("a",{parentName:"p",href:"https://c4model.com"},"c4model")," for showing architecture diagrams."),(0,i.kt)("h3",{id:"level-1---system-context-diagram"},"Level 1 - System Context diagram"),(0,i.kt)("p",null,"The Context diagram is a good starting point for diagramming and documenting a software system, allowing you to step back and see the big picture. Here we draw a diagram showing the system as a box in the centre, surrounded by its users and the other systems that it interacts with."),(0,i.kt)("img",{src:"https://www.plantuml.com/plantuml/png/jP11Jy9048Nl_HLZJv2KDZ6SF46Gg0aA4Hh3gLbs1xl9ThUPdKNWrvkrWXZrwFNDUz-ycP5dGHmQaoHNsaeJ54BDtFgReY3nbhzghiCcU2JfBAFbNBgcQ8smCJJmh8pU59FXO16byd5MDC8pKZ4PLfEOs7FUHlo_q8MsI1q_cOtNyt9LlJoixglPz6xwTDlh9ya2oJlR4srhj1IidQtYEfz1ElxIeFH8QTGWJi5jWMi4Tih1HJHF-ydou1cRIs06wIeQBtWHjI2tqmfzHza6A-D46Cs7CwQQxhadZe6m4fBr3Ykb2IKxEcIGpaNW-Xh6WMj7-jWrNIBjkgxd1T66ba-t2AkWFStYELfzQEGCUjWw0Y4bUW_nv-HCsa-UqVpsekz7bXxzJsy6V_R_38pGgj2OTm00",alt:"System context diagram"}),(0,i.kt)("h3",{id:"level-2---container-diagram"},"Level 2 - Container diagram"),(0,i.kt)("p",null,"Once you understand how your system interacts with users and external systems, a useful next step is to zoom-in to the system boundary with a Container diagram. A container is something like a server-side web application, single-page application, desktop application, mobile app, database schema, file system, etc. Essentially, a container is a separately runnable/deployable unit (e.g. a separate process space) that executes code or stores data."),(0,i.kt)("img",{src:"https://www.plantuml.com/plantuml/png/jP51J-D038Nl-HKcfrPgamidJfIsMa0jH4sgrPuY9p7jQ2SpqTWXyE-Hb-uc4bptDhBV-vxjkMN187rhe-ZAkDhs3S5PfEERD0qu92SZvxxgcKBjdP2JfFPjsbbqQbgoDDPKwVfwcMdfkD-bBR9GIDVNvLeTRv9qYlylT3IEmYS_sgr-FH-BykT3SL_kjZ-sJvlPF8eo2kpT3BlEcXh5U5Tg72yWNeqrE3A5M6kWNV0l86S2yOs7YJM9vr7-paBjRA2gd7GM4EV6dImjCpmHJD1ApO9_DGq1MZjoNtfNgm2jaNSG_oUPuTMWQao0WIgeWX-OGW9ZSY2M4ZkpWFYmpGjOPG-J3FuEhao4n_pvARqlYYnNZ-vo8FlTPRxkTcJYY_vBSpBF7dyJAnngj5P7qSd6t7WU_VkrJJLhKB12fWN4cyjJzNllJdvpfyzSVFWyrz_uCMtYFX0sWAw18HYXIsmyZsx9DNrhFm00",alt:"Container diagram"}),(0,i.kt)("p",null,"The use cases and entities are the heart of our application and should have a minimal set of external library dependencies."),(0,i.kt)("h3",{id:"level-3---component-diagram"},"Level 3 - Component diagram"),(0,i.kt)("p",null,"Next you can zoom in and decompose each container further to identify the major structural building blocks and their interactions."),(0,i.kt)("p",null,"The Component diagram shows how a container is made up of a number of components, what each of those components are, their responsibilities and the technology/implementation details."),(0,i.kt)("img",{src:"https://www.plantuml.com/plantuml/png/jLDDZzem4BtdLqnp0ecFovvwMXPe5ubj4H-gUaAJP0Ykd77g6Iz5LVzxvGGjWUsrjx4zyzxpU_QZA7eDbKsI3uPp6mg2esej7yTZZwTHQVGOiY3aSyTAhAFSLUFQ8iUXeMXXJJQUFWnNSMltiXnNA4f-F7tOJrrLEuupTIJu3_YiQ9XyYvyi9z-_xhRxRuljytuv_pp_CklrasH5NXptiAwjoL6Dutsaam6aa-iUx8Hy6lSWde8xW1u9r1KEEgEZj9yacxCeLRqJPGD8DuPBIyCLbWGTl0YrykxL50HexHNi43YF3MYDda5TGoVmQZ3s60ydoY3pxYJaHn3frcJ_fRwbtmd9LTF-oGKkq9zxM9i1fElvPWkJrIBjm-y4u2sGNZJREsjR7wRNLTJzwI8nrbjlof9yL0av2WaW5-19WsV3PNClJnAiHckw545etqoqAc4QwtluHLLRgeYrWINEiPPWKLlJBY5aGGoJ2FXWIUvvFDLEZ3fl6gfrPzami98_O4vnyOnSs2WOYuRmv8qIM5UQ7B14mw8WwdmCiwB2XEeT7R4QRQdciJn7tAb5QTYsHuB2LMWONFQ3Sct20OWPtdZUTMV-Y_AWr135nixPtUKkQRTjjsSTNGiMHLQ33UQVzWKrp-KszZNz32IjnBU_DCjw1IfcA3I0T7OfuzrU79TkzXJBZJhVlkSu_5vC1s5zwxMwj9yy4XUXidy1",alt:"Component diagram"}),(0,i.kt)("h2",{id:"clean-architecture"},"Clean architecture"),(0,i.kt)("p",null,"We follow the ",(0,i.kt)("a",{parentName:"p",href:"https://blog.cleancoder.com/uncle-bob/2012/08/13/the-clean-architecture.html"},"Clean Architecture")," style and structure the codebase accordingly for our API."),(0,i.kt)("h3",{id:"what-is-clean-architecture"},"What is Clean Architecture?"),(0,i.kt)("p",null,"It is a layered approach for a ",(0,i.kt)("a",{parentName:"p",href:"https://www.youtube.com/watch?v=wtCQalq7L-E"},"more civilized age"),"."),(0,i.kt)("p",null,"Clean architecture aims to divide a big project into layers and pieces (classes, entities, modules etc.), and to make them independent of each other, so that our big and complex project becomes more maintainable, flexible and easy to work on together."),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"Clean Architecture",src:a(9743).Z,width:"646",height:"708"})),(0,i.kt)("p",null,'The key idea behind this diagram is that the application should be divided into layers (there can be any amount of layers). The inner layers must not know anything about the outer ones; all dependencies are directed towards the center. The further a layer is from the center, the more it knows about "non-business" details of the application (e.g. which framework is used is part of the outermost layers).'),(0,i.kt)("p",null,"The idea to keep the core business logic (entities) and application logic (use cases) at the center of the solution structure, and independent of frameworks, databases, and external parts (the two outer layers). This allows the core part to be adaptive and flexible enough to deal with changing technology and interfaces, so that frameworks, databases, and external parts can be replaced with minimum efforts."),(0,i.kt)("admonition",{type:"note"},(0,i.kt)("ul",{parentName:"admonition"},(0,i.kt)("li",{parentName:"ul"},"The core inner entities and use cases are less likely to change"),(0,i.kt)("li",{parentName:"ul"},"The external layers are most likely to change based on technologies, frameworks and so on"))),(0,i.kt)("h3",{id:"the-dependency-rule"},"The dependency rule"),(0,i.kt)("p",null,"The most important rule is that source code ",(0,i.kt)("strong",{parentName:"p"},"dependencies can only point inwards.")," Nothing in an inner circle can know anything at all about something in an outer circle. In particular, the name of something declared in an outer circle must not be mentioned by the code in an inner circle. That includes functions, classes. variables, or any other named software entity."),(0,i.kt)("p",null,"The dependency rule is the underlying rule that makes Clean Architecture work. It says that nothing in an inner circle should depend on anything in an outer circle. For example, Entities know nothing about all the other circles, while the outer layer, know everything about the inner rings. In particular, application and business rules shouldn\u2019t depend on the UI, database, presenters, and so on. These rules allow us to build systems that are simpler to maintain, as changes in outer circles won\u2019t impact inner ones."),(0,i.kt)("admonition",{type:"info"},(0,i.kt)("p",{parentName:"admonition"},"The inner circle is not allowed to know anything about the outer circle."),(0,i.kt)("p",{parentName:"admonition"},"Talk inward with simple structures (dictionaries or classes) and talk outwards through interfaces.")),(0,i.kt)("h3",{id:"why-clean-architecture"},"Why Clean Architecture?"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Loose coupling"),(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"It becomes easier to modify one small piece of code without it affecting a large part of the app\u2019s code base. This makes it easier to scale the application later on."))),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Testable"),".",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"It is designed so that every part of the architecture is easy testable. Our tests can be simpler to write, faster and cheaper to maintain."))),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Separation of concern"),(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"Different modules have specific responsibilities making it easier for modification and maintenance."))),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Framework independent"),(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"The architecture is framework independent. This means that it doesn\u2019t matter which database, frameworks, UI or external services you are using - the entities and the business logic of the application will always stay the same. When any of the external parts of the system become obsolete, like the database, or the web framework, you can replace those obsolete elements with a minimum of effort.")))),(0,i.kt)("h3",{id:"solid-principles"},"S.O.L.I.D Principles"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Single Responsibility"),(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"Each software component should have only one reason to change \u2013 one responsibility."))),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Open-Closed"),(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"You should be able to extend the behavior of a component, without breaking its usage, or modifying its extensions."))),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Liskov Substitution"),(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"If you have a class of one type, and any subclasses of that class, you should be able to represent the base class usage with the subclass, without breaking the app."))),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Interface Segregation"),(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"It\u2019s better to have many smaller interfaces than a large one, to prevent a class from implementing methods that it doesn\u2019t need."))),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Dependency Inversion"),(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"Components should depend on abstractions rather than concrete implementations. Also higher level modules shouldn\u2019t depend on lower level modules.")))),(0,i.kt)("h3",{id:"components"},"Components"),(0,i.kt)("p",null,"Data flow:"),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"Clean Architecture",src:a(5935).Z,width:"2590",height:"934"})),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Entities"),(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"Entities are the domain model that holds data (state) and logic (business rules)"),(0,i.kt)("li",{parentName:"ul"},"Entities may be reused across applications in the same enterprise."),(0,i.kt)("li",{parentName:"ul"},"Entities must be regular classes, dataclasses, or value objects (meaning if all the properties are the same, the objects are identical)."),(0,i.kt)("li",{parentName:"ul"},"Entities can not depend on anything except other entities."),(0,i.kt)("li",{parentName:"ul"},"Entities should not be affected by any external change, and should be the most stable code within your application."))),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Use cases"),(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"Use cases are the application features (it\u2019s what you can do with the application)",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"Each use case should be limited to one feature according to the Single Responsibility Principle."))),(0,i.kt)("li",{parentName:"ul"},"Use cases interact with entities (thus depend on them) and hold logic of the specific application, and typically execute that logic via various repositories or data access layer(s) gateway(s).",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"Use cases may define repository interfaces for the data they require, and one or more repositories will implement the repository interfaces, but the use case doesn\u2019t know where the data is coming from."))),(0,i.kt)("li",{parentName:"ul"},"Use cases throw business specific exceptions."),(0,i.kt)("li",{parentName:"ul"},"Use cases are not affected by changes in database or controllers."))),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Controllers"),(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"Controllers execute use cases."),(0,i.kt)("li",{parentName:"ul"},"They contain no business logic, only conversion logic.",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"Controllers adapt inputs from the outside world into messages the use cases can understand, and in turn adapt responses from the use cases into outputs for the world."))),(0,i.kt)("li",{parentName:"ul"},"You can think of them as entry and exit gates to the use cases. A controller receives a request and returns a response."),(0,i.kt)("li",{parentName:"ul"},"The controller takes the user input (the request), converts it into the request object defined by the use case and passes the request objects to the use case, and at the end return the response objects."))),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"Repositories"),(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"A repository takes entities and returns entities, hides storage details."),(0,i.kt)("li",{parentName:"ul"},"Repositories implement interfaces defined by use cases.",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"Could have multiple implementations, e.g. from db or from file system."))),(0,i.kt)("li",{parentName:"ul"},"Hides all details about where the data is from.",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"Can work against local, remote, data services or third party services.")))))),(0,i.kt)("h3",{id:"business-rules"},"Business rules"),(0,i.kt)("p",null,"The business logic is divided into two layers:"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"The domain layer (aka entities)"),(0,i.kt)("li",{parentName:"ul"},"The application layer (aka use cases)")),(0,i.kt)("p",null,"The domain layer contains the enterprise business logic, and the application layer contains the application business logic. The difference being that enterprise logic could be shared between systems whereas application logic would typically be specific to single system."))}d.isMDXComponent=!0},5935:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/clean-architecture-horizontal2-89d7350d193766d81f16643008c28a16.png"},9743:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/clean-architecture2-e72f296e5bfa4a0d19a261aa8d1eda47.png"}}]); \ No newline at end of file diff --git a/assets/js/main.fe5c8998.js b/assets/js/main.fe5c8998.js new file mode 100644 index 00000000..f8fabb83 --- /dev/null +++ b/assets/js/main.fe5c8998.js @@ -0,0 +1,2 @@ +/*! For license information please see main.fe5c8998.js.LICENSE.txt */ +(self.webpackChunkdocumentation=self.webpackChunkdocumentation||[]).push([[179],{723:(e,t,n)=>{"use strict";n.d(t,{Z:()=>f});var r=n(7294),a=n(7462),o=n(8356),i=n.n(o),l=n(6887);const s={"05e44ab7":[()=>n.e(833).then(n.t.bind(n,7656,19)),"~docs/default/category-template-fastapi-reactdocs-about-category-running-f8f.json",7656],"06314cb9":[()=>Promise.all([n.e(592),n.e(297)]).then(n.bind(n,8793)),"@site/docs/contribute/development-guide/coding/extending-the-api/adding-features/03-securing-endpoints.md",8793],"14a713f6":[()=>Promise.all([n.e(532),n.e(592),n.e(814),n.e(109)]).then(n.bind(n,3118)),"@site/docs/contribute/development-guide/coding/extending-the-api/adding-features/02-use-cases.md",3118],"14eb3368":[()=>Promise.all([n.e(532),n.e(817)]).then(n.bind(n,4228)),"@theme/DocCategoryGeneratedIndexPage",4228],17896441:[()=>Promise.all([n.e(532),n.e(592),n.e(814),n.e(327),n.e(918)]).then(n.bind(n,230)),"@theme/DocItem",230],"1b4cc8e2":[()=>Promise.all([n.e(592),n.e(511)]).then(n.bind(n,8905)),"@site/docs/contribute/development-guide/04-upgrading.md",8905],"1be78505":[()=>Promise.all([n.e(532),n.e(514)]).then(n.bind(n,9963)),"@theme/DocPage",9963],"1df93b7f":[()=>Promise.all([n.e(532),n.e(237)]).then(n.bind(n,3808)),"@site/src/pages/index.tsx",3808],"1f391b9e":[()=>Promise.all([n.e(532),n.e(592),n.e(814),n.e(327),n.e(85)]).then(n.bind(n,4247)),"@theme/MDXPage",4247],"20f005c0":[()=>Promise.all([n.e(532),n.e(592),n.e(814),n.e(141)]).then(n.bind(n,2359)),"@site/docs/contribute/development-guide/coding/extending-the-api/adding-features/01-controllers.md",2359],"2424d345":[()=>Promise.all([n.e(592),n.e(89)]).then(n.bind(n,5449)),"@site/docs/about/how-to/01-how-to-do-something.md",5449],"2e61c9f2":[()=>Promise.all([n.e(592),n.e(413)]).then(n.bind(n,9811)),"@site/docs/contribute/03-documentation.md",9811],"3cb05d6d":[()=>Promise.all([n.e(532),n.e(592),n.e(814),n.e(176)]).then(n.bind(n,516)),"@site/docs/contribute/development-guide/coding/extending-the-api/index.md",516],"415192e1":[()=>Promise.all([n.e(532),n.e(592),n.e(814),n.e(295)]).then(n.bind(n,3380)),"@site/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/01-clients.md",3380],"41b8e814":[()=>Promise.all([n.e(532),n.e(592),n.e(3)]).then(n.bind(n,8979)),"@site/docs/contribute/development-guide/03-testing.md",8979],"428320b6":[()=>Promise.all([n.e(592),n.e(193)]).then(n.bind(n,1425)),"@site/docs/changelog/changelog.md",1425],"492dc3f9":[()=>Promise.all([n.e(592),n.e(396)]).then(n.bind(n,2489)),"@site/docs/about/running/02-configure.md",2489],"4b94b993":[()=>Promise.all([n.e(592),n.e(859)]).then(n.bind(n,4657)),"@site/docs/about/concepts/02-use-case.md",4657],"57dd7c71":[()=>Promise.all([n.e(532),n.e(592),n.e(508)]).then(n.bind(n,9535)),"@site/docs/contribute/development-guide/01-setup.md",9535],"5e9f5e1a":[()=>Promise.resolve().then(n.bind(n,6809)),"@generated/docusaurus.config",6809],"5fef8d46":[()=>Promise.all([n.e(532),n.e(592),n.e(814),n.e(219)]).then(n.bind(n,5714)),"@site/docs/contribute/development-guide/coding/extending-the-api/adding-features/index.md",5714],"61b19cc7":[()=>Promise.all([n.e(592),n.e(118)]).then(n.bind(n,3214)),"@site/docs/contribute/02-ground-rules.md",3214],"6d61db34":[()=>n.e(260).then(n.t.bind(n,4564,19)),"~docs/default/category-template-fastapi-reactdocs-about-category-concepts-570.json",4564],73611911:[()=>Promise.all([n.e(532),n.e(592),n.e(814),n.e(250)]).then(n.bind(n,4678)),"@site/docs/contribute/development-guide/coding/extending-the-api/02-adding-entities.md",4678],"75878fc8":[()=>Promise.all([n.e(592),n.e(990)]).then(n.bind(n,9095)),"@site/src/pages/changelog.md",9095],"792d5b58":[()=>n.e(910).then(n.t.bind(n,2719,19)),"~docs/default/category-template-fastapi-reactdocs-contribute-category-development-guide-008.json",2719],"8140cfa8":[()=>Promise.all([n.e(592),n.e(256)]).then(n.bind(n,770)),"@site/docs/contribute/development-guide/05-publishing.md",770],"935f2afb":[()=>n.e(53).then(n.t.bind(n,1109,19)),"~docs/default/version-current-metadata-prop-751.json",1109],"95fd3ae2":[()=>Promise.all([n.e(592),n.e(898)]).then(n.bind(n,9482)),"@site/docs/contribute/development-guide/coding/03-generate-api-clients.md",9482],"9b8d192f":[()=>Promise.all([n.e(592),n.e(172)]).then(n.bind(n,3894)),"@site/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/index.md",3894],b5acc4c4:[()=>Promise.all([n.e(592),n.e(106)]).then(n.bind(n,8742)),"@site/docs/about/02-overview.md",8742],b893987e:[()=>Promise.all([n.e(532),n.e(592),n.e(814),n.e(499)]).then(n.bind(n,5545)),"@site/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/03-repositories.md",5545],be239b1c:[()=>Promise.all([n.e(592),n.e(19)]).then(n.bind(n,3477)),"@site/docs/contribute/01-how-to-start-contributing.md",3477],c66b78d2:[()=>Promise.all([n.e(592),n.e(6)]).then(n.bind(n,2369)),"@site/docs/about/running/03-starting-services.md",2369],d38eaa6e:[()=>Promise.all([n.e(592),n.e(389)]).then(n.bind(n,543)),"@site/docs/about/01-introduction.md",543],d3ec9a0d:[()=>Promise.all([n.e(592),n.e(95)]).then(n.bind(n,3883)),"@site/docs/about/running/01-prerequisites.md",3883],d5120d00:[()=>n.e(410).then(n.t.bind(n,5745,19)),"/home/runner/work/template-fastapi-react/template-fastapi-react/documentation/.docusaurus/docusaurus-plugin-content-pages/default/plugin-route-context-module-100.json",5745],ddc469d8:[()=>n.e(770).then(n.t.bind(n,6249,19)),"~docs/default/category-template-fastapi-reactdocs-about-category-how-to-203.json",6249],eb414d18:[()=>n.e(529).then(n.t.bind(n,3769,19)),"/home/runner/work/template-fastapi-react/template-fastapi-react/documentation/.docusaurus/docusaurus-plugin-content-docs/default/plugin-route-context-module-100.json",3769],eccd96cf:[()=>Promise.all([n.e(532),n.e(592),n.e(814),n.e(283)]).then(n.bind(n,2565)),"@site/docs/contribute/development-guide/coding/extending-the-web/index.md",2565],f05b69d1:[()=>Promise.all([n.e(592),n.e(301)]).then(n.bind(n,5490)),"@site/docs/about/concepts/01-task.md",5490],f271ccf2:[()=>n.e(214).then(n.t.bind(n,1270,19)),"~docs/default/category-template-fastapi-reactdocs-contribute-category-coding-88c.json",1270],faf05ce9:[()=>Promise.all([n.e(532),n.e(592),n.e(814),n.e(349)]).then(n.bind(n,3603)),"@site/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/02-repository-interfaces.md",3603],fc1348c9:[()=>Promise.all([n.e(592),n.e(302)]).then(n.bind(n,6897)),"@site/docs/contribute/development-guide/coding/01-architecture.md",6897]};function u(e){let{error:t,retry:n,pastDelay:a}=e;return t?r.createElement("div",{style:{textAlign:"center",color:"#fff",backgroundColor:"#fa383e",borderColor:"#fa383e",borderStyle:"solid",borderRadius:"0.25rem",borderWidth:"1px",boxSizing:"border-box",display:"block",padding:"1rem",flex:"0 0 50%",marginLeft:"25%",marginRight:"25%",marginTop:"5rem",maxWidth:"50%",width:"100%"}},r.createElement("p",null,String(t)),r.createElement("div",null,r.createElement("button",{type:"button",onClick:n},"Retry"))):a?r.createElement("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh"}},r.createElement("svg",{id:"loader",style:{width:128,height:110,position:"absolute",top:"calc(100vh - 64%)"},viewBox:"0 0 45 45",xmlns:"http://www.w3.org/2000/svg",stroke:"#61dafb"},r.createElement("g",{fill:"none",fillRule:"evenodd",transform:"translate(1 1)",strokeWidth:"2"},r.createElement("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0"},r.createElement("animate",{attributeName:"r",begin:"1.5s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),r.createElement("animate",{attributeName:"stroke-opacity",begin:"1.5s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),r.createElement("animate",{attributeName:"stroke-width",begin:"1.5s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})),r.createElement("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0"},r.createElement("animate",{attributeName:"r",begin:"3s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),r.createElement("animate",{attributeName:"stroke-opacity",begin:"3s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),r.createElement("animate",{attributeName:"stroke-width",begin:"3s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})),r.createElement("circle",{cx:"22",cy:"22",r:"8"},r.createElement("animate",{attributeName:"r",begin:"0s",dur:"1.5s",values:"6;1;2;3;4;5;6",calcMode:"linear",repeatCount:"indefinite"}))))):null}var c=n(9670),d=n(226);function p(e,t){if("*"===e)return i()({loading:u,loader:()=>n.e(972).then(n.bind(n,4972)),modules:["@theme/NotFound"],webpack:()=>[4972],render(e,t){const n=e.default;return r.createElement(d.z,{value:{plugin:{name:"native",id:"default"}}},r.createElement(n,t))}});const o=l[`${e}-${t}`],p={},f=[],m=[],g=(0,c.Z)(o);return Object.entries(g).forEach((e=>{let[t,n]=e;const r=s[n];r&&(p[t]=r[0],f.push(r[1]),m.push(r[2]))})),i().Map({loading:u,loader:p,modules:f,webpack:()=>m,render(t,n){const i=JSON.parse(JSON.stringify(o));Object.entries(t).forEach((t=>{let[n,r]=t;const a=r.default;if(!a)throw new Error(`The page component at ${e} doesn't have a default export. This makes it impossible to render anything. Consider default-exporting a React component.`);"object"!=typeof a&&"function"!=typeof a||Object.keys(r).filter((e=>"default"!==e)).forEach((e=>{a[e]=r[e]}));let o=i;const l=n.split(".");l.slice(0,-1).forEach((e=>{o=o[e]})),o[l[l.length-1]]=a}));const l=i.__comp;delete i.__comp;const s=i.__context;return delete i.__context,r.createElement(d.z,{value:s},r.createElement(l,(0,a.Z)({},i,n)))}})}const f=[{path:"/template-fastapi-react/changelog",component:p("/template-fastapi-react/changelog","58e"),exact:!0},{path:"/template-fastapi-react/docs",component:p("/template-fastapi-react/docs","ee5"),routes:[{path:"/template-fastapi-react/docs/about/concepts/task",component:p("/template-fastapi-react/docs/about/concepts/task","786"),exact:!0,sidebar:"about"},{path:"/template-fastapi-react/docs/about/concepts/use-case",component:p("/template-fastapi-react/docs/about/concepts/use-case","2d3"),exact:!0,sidebar:"about"},{path:"/template-fastapi-react/docs/about/how-to/how-to-do-something",component:p("/template-fastapi-react/docs/about/how-to/how-to-do-something","eda"),exact:!0,sidebar:"about"},{path:"/template-fastapi-react/docs/about/introduction",component:p("/template-fastapi-react/docs/about/introduction","511"),exact:!0,sidebar:"about"},{path:"/template-fastapi-react/docs/about/overview",component:p("/template-fastapi-react/docs/about/overview","0ac"),exact:!0,sidebar:"about"},{path:"/template-fastapi-react/docs/about/running/configure",component:p("/template-fastapi-react/docs/about/running/configure","9bd"),exact:!0,sidebar:"about"},{path:"/template-fastapi-react/docs/about/running/prerequisites",component:p("/template-fastapi-react/docs/about/running/prerequisites","d7d"),exact:!0,sidebar:"about"},{path:"/template-fastapi-react/docs/about/running/starting-services",component:p("/template-fastapi-react/docs/about/running/starting-services","0ec"),exact:!0,sidebar:"about"},{path:"/template-fastapi-react/docs/category/coding",component:p("/template-fastapi-react/docs/category/coding","179"),exact:!0,sidebar:"contribute"},{path:"/template-fastapi-react/docs/category/concepts",component:p("/template-fastapi-react/docs/category/concepts","080"),exact:!0,sidebar:"about"},{path:"/template-fastapi-react/docs/category/development-guide",component:p("/template-fastapi-react/docs/category/development-guide","cdf"),exact:!0,sidebar:"contribute"},{path:"/template-fastapi-react/docs/category/how-to",component:p("/template-fastapi-react/docs/category/how-to","560"),exact:!0,sidebar:"about"},{path:"/template-fastapi-react/docs/category/running",component:p("/template-fastapi-react/docs/category/running","9ea"),exact:!0,sidebar:"about"},{path:"/template-fastapi-react/docs/changelog/",component:p("/template-fastapi-react/docs/changelog/","c7e"),exact:!0},{path:"/template-fastapi-react/docs/contribute/development-guide/coding/architecture",component:p("/template-fastapi-react/docs/contribute/development-guide/coding/architecture","cae"),exact:!0,sidebar:"contribute"},{path:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/",component:p("/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/","cdf"),exact:!0,sidebar:"contribute"},{path:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/",component:p("/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/","4e7"),exact:!0,sidebar:"contribute"},{path:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/clients",component:p("/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/clients","032"),exact:!0,sidebar:"contribute"},{path:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repositories",component:p("/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repositories","a61"),exact:!0,sidebar:"contribute"},{path:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repository-interfaces",component:p("/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repository-interfaces","2b2"),exact:!0,sidebar:"contribute"},{path:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-entities",component:p("/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-entities","f75"),exact:!0,sidebar:"contribute"},{path:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/",component:p("/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/","173"),exact:!0,sidebar:"contribute"},{path:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/controllers",component:p("/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/controllers","c4d"),exact:!0,sidebar:"contribute"},{path:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/securing-endpoints",component:p("/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/securing-endpoints","390"),exact:!0,sidebar:"contribute"},{path:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/use-cases",component:p("/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/use-cases","d63"),exact:!0,sidebar:"contribute"},{path:"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-web/",component:p("/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-web/","731"),exact:!0,sidebar:"contribute"},{path:"/template-fastapi-react/docs/contribute/development-guide/coding/generate-api-clients",component:p("/template-fastapi-react/docs/contribute/development-guide/coding/generate-api-clients","362"),exact:!0,sidebar:"contribute"},{path:"/template-fastapi-react/docs/contribute/development-guide/publishing",component:p("/template-fastapi-react/docs/contribute/development-guide/publishing","7f3"),exact:!0,sidebar:"contribute"},{path:"/template-fastapi-react/docs/contribute/development-guide/setup",component:p("/template-fastapi-react/docs/contribute/development-guide/setup","e9b"),exact:!0,sidebar:"contribute"},{path:"/template-fastapi-react/docs/contribute/development-guide/testing",component:p("/template-fastapi-react/docs/contribute/development-guide/testing","8f0"),exact:!0,sidebar:"contribute"},{path:"/template-fastapi-react/docs/contribute/development-guide/upgrading",component:p("/template-fastapi-react/docs/contribute/development-guide/upgrading","710"),exact:!0,sidebar:"contribute"},{path:"/template-fastapi-react/docs/contribute/documentation",component:p("/template-fastapi-react/docs/contribute/documentation","a74"),exact:!0,sidebar:"contribute"},{path:"/template-fastapi-react/docs/contribute/ground-rules",component:p("/template-fastapi-react/docs/contribute/ground-rules","0ff"),exact:!0,sidebar:"contribute"},{path:"/template-fastapi-react/docs/contribute/how-to-start-contributing",component:p("/template-fastapi-react/docs/contribute/how-to-start-contributing","a96"),exact:!0,sidebar:"contribute"}]},{path:"/template-fastapi-react/",component:p("/template-fastapi-react/","061"),exact:!0},{path:"*",component:p("*")}]},8934:(e,t,n)=>{"use strict";n.d(t,{_:()=>a,t:()=>o});var r=n(7294);const a=r.createContext(!1);function o(e){let{children:t}=e;const[n,o]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{o(!0)}),[]),r.createElement(a.Provider,{value:n},t)}},9383:(e,t,n)=>{"use strict";var r=n(7294),a=n(3935),o=n(3727),i=n(405),l=n(412);const s=[n(2497),n(3310),n(8320),n(2295)];var u=n(723),c=n(6775),d=n(8790);function p(e){let{children:t}=e;return r.createElement(r.Fragment,null,t)}var f=n(7462),m=n(5742),g=n(2263),h=n(4996),b=n(6668),v=n(1944),y=n(4711),w=n(9727),k=n(3320),E=n(197);function S(){const{i18n:{defaultLocale:e,localeConfigs:t}}=(0,g.Z)(),n=(0,y.l)();return r.createElement(m.Z,null,Object.entries(t).map((e=>{let[t,{htmlLang:a}]=e;return r.createElement("link",{key:t,rel:"alternate",href:n.createUrl({locale:t,fullyQualified:!0}),hrefLang:a})})),r.createElement("link",{rel:"alternate",href:n.createUrl({locale:e,fullyQualified:!0}),hrefLang:"x-default"}))}function x(e){let{permalink:t}=e;const{siteConfig:{url:n}}=(0,g.Z)(),a=function(){const{siteConfig:{url:e}}=(0,g.Z)(),{pathname:t}=(0,c.TH)();return e+(0,h.Z)(t)}(),o=t?`${n}${t}`:a;return r.createElement(m.Z,null,r.createElement("meta",{property:"og:url",content:o}),r.createElement("link",{rel:"canonical",href:o}))}function C(){const{i18n:{currentLocale:e}}=(0,g.Z)(),{metadata:t,image:n}=(0,b.L)();return r.createElement(r.Fragment,null,r.createElement(m.Z,null,r.createElement("meta",{name:"twitter:card",content:"summary_large_image"}),r.createElement("body",{className:w.h})),n&&r.createElement(v.d,{image:n}),r.createElement(x,null),r.createElement(S,null),r.createElement(E.Z,{tag:k.HX,locale:e}),r.createElement(m.Z,null,t.map(((e,t)=>r.createElement("meta",(0,f.Z)({key:t},e))))))}const _=new Map;function T(e){if(_.has(e.pathname))return{...e,pathname:_.get(e.pathname)};if((0,d.f)(u.Z,e.pathname).some((e=>{let{route:t}=e;return!0===t.exact})))return _.set(e.pathname,e.pathname),e;const t=e.pathname.trim().replace(/(?:\/index)?\.html$/,"")||"/";return _.set(e.pathname,t),{...e,pathname:t}}var A=n(8934),L=n(8940);function P(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];const a=s.map((t=>{var r;const a=(null==(r=t.default)?void 0:r[e])??t[e];return null==a?void 0:a(...n)}));return()=>a.forEach((e=>null==e?void 0:e()))}const R=function(e){let{children:t,location:n,previousLocation:a}=e;return(0,r.useLayoutEffect)((()=>{a!==n&&(a&&function(e){const{hash:t}=e;if(t){const e=decodeURIComponent(t.substring(1)),n=document.getElementById(e);null==n||n.scrollIntoView()}else window.scrollTo(0,0)}(n),P("onRouteDidUpdate",{previousLocation:a,location:n}))}),[a,n]),t};function N(e){const t=Array.from(new Set([e,decodeURI(e)])).map((e=>(0,d.f)(u.Z,e))).flat();return Promise.all(t.map((e=>null==e.route.component.preload?void 0:e.route.component.preload())))}class O extends r.Component{constructor(e){super(e),this.previousLocation=void 0,this.routeUpdateCleanupCb=void 0,this.previousLocation=null,this.routeUpdateCleanupCb=l.Z.canUseDOM?P("onRouteUpdate",{previousLocation:null,location:this.props.location}):()=>{},this.state={nextRouteHasLoaded:!0}}shouldComponentUpdate(e,t){if(e.location===this.props.location)return t.nextRouteHasLoaded;const n=e.location;return this.previousLocation=this.props.location,this.setState({nextRouteHasLoaded:!1}),this.routeUpdateCleanupCb=P("onRouteUpdate",{previousLocation:this.previousLocation,location:n}),N(n.pathname).then((()=>{this.routeUpdateCleanupCb(),this.setState({nextRouteHasLoaded:!0})})).catch((e=>{console.warn(e),window.location.reload()})),!1}render(){const{children:e,location:t}=this.props;return r.createElement(R,{previousLocation:this.previousLocation,location:t},r.createElement(c.AW,{location:t,render:()=>e}))}}const I=O,D="docusaurus-base-url-issue-banner-container",M="docusaurus-base-url-issue-banner-suggestion-container",F="__DOCUSAURUS_INSERT_BASEURL_BANNER";function B(e){return`\nwindow['${F}'] = true;\n\ndocument.addEventListener('DOMContentLoaded', maybeInsertBanner);\n\nfunction maybeInsertBanner() {\n var shouldInsert = window['${F}'];\n shouldInsert && insertBanner();\n}\n\nfunction insertBanner() {\n var bannerContainer = document.getElementById('${D}');\n if (!bannerContainer) {\n return;\n }\n var bannerHtml = ${JSON.stringify(function(e){return`\n<div id="docusaurus-base-url-issue-banner" style="border: thick solid red; background-color: rgb(255, 230, 179); margin: 20px; padding: 20px; font-size: 20px;">\n <p style="font-weight: bold; font-size: 30px;">Your Docusaurus site did not load properly.</p>\n <p>A very common reason is a wrong site <a href="https://docusaurus.io/docs/docusaurus.config.js/#baseurl" style="font-weight: bold;">baseUrl configuration</a>.</p>\n <p>Current configured baseUrl = <span style="font-weight: bold; color: red;">${e}</span> ${"/"===e?" (default value)":""}</p>\n <p>We suggest trying baseUrl = <span id="${M}" style="font-weight: bold; color: green;"></span></p>\n</div>\n`}(e)).replace(/</g,"\\<")};\n bannerContainer.innerHTML = bannerHtml;\n var suggestionContainer = document.getElementById('${M}');\n var actualHomePagePath = window.location.pathname;\n var suggestedBaseUrl = actualHomePagePath.substr(-1) === '/'\n ? actualHomePagePath\n : actualHomePagePath + '/';\n suggestionContainer.innerHTML = suggestedBaseUrl;\n}\n`}function j(){const{siteConfig:{baseUrl:e}}=(0,g.Z)();return(0,r.useLayoutEffect)((()=>{window[F]=!1}),[]),r.createElement(r.Fragment,null,!l.Z.canUseDOM&&r.createElement(m.Z,null,r.createElement("script",null,B(e))),r.createElement("div",{id:D}))}function z(){const{siteConfig:{baseUrl:e,baseUrlIssueBanner:t}}=(0,g.Z)(),{pathname:n}=(0,c.TH)();return t&&n===e?r.createElement(j,null):null}function U(){const{siteConfig:{favicon:e,title:t,noIndex:n},i18n:{currentLocale:a,localeConfigs:o}}=(0,g.Z)(),i=(0,h.Z)(e),{htmlLang:l,direction:s}=o[a];return r.createElement(m.Z,null,r.createElement("html",{lang:l,dir:s}),r.createElement("title",null,t),r.createElement("meta",{property:"og:title",content:t}),r.createElement("meta",{name:"viewport",content:"width=device-width, initial-scale=1.0"}),n&&r.createElement("meta",{name:"robots",content:"noindex, nofollow"}),e&&r.createElement("link",{rel:"icon",href:i}))}var $=n(4763);function q(){const e=(0,d.H)(u.Z),t=(0,c.TH)();return r.createElement($.Z,null,r.createElement(L.M,null,r.createElement(A.t,null,r.createElement(p,null,r.createElement(U,null),r.createElement(C,null),r.createElement(z,null),r.createElement(I,{location:T(t)},e)))))}var G=n(6887);const H=function(e){try{return document.createElement("link").relList.supports(e)}catch{return!1}}("prefetch")?function(e){return new Promise(((t,n)=>{var r;if("undefined"==typeof document)return void n();const a=document.createElement("link");a.setAttribute("rel","prefetch"),a.setAttribute("href",e),a.onload=()=>t(),a.onerror=()=>n();const o=document.getElementsByTagName("head")[0]??(null==(r=document.getElementsByName("script")[0])?void 0:r.parentNode);null==o||o.appendChild(a)}))}:function(e){return new Promise(((t,n)=>{const r=new XMLHttpRequest;r.open("GET",e,!0),r.withCredentials=!0,r.onload=()=>{200===r.status?t():n()},r.send(null)}))};var Z=n(9670);const V=new Set,W=new Set,Y=()=>{var e,t;return(null==(e=navigator.connection)?void 0:e.effectiveType.includes("2g"))||(null==(t=navigator.connection)?void 0:t.saveData)},K={prefetch(e){if(!(e=>!Y()&&!W.has(e)&&!V.has(e))(e))return!1;V.add(e);const t=(0,d.f)(u.Z,e).flatMap((e=>{return t=e.route.path,Object.entries(G).filter((e=>{let[n]=e;return n.replace(/-[^-]+$/,"")===t})).flatMap((e=>{let[,t]=e;return Object.values((0,Z.Z)(t))}));var t}));return Promise.all(t.map((e=>{const t=n.gca(e);return t&&!t.includes("undefined")?H(t).catch((()=>{})):Promise.resolve()})))},preload:e=>!!(e=>!Y()&&!W.has(e))(e)&&(W.add(e),N(e))},Q=Object.freeze(K);if(l.Z.canUseDOM){window.docusaurus=Q;const e=a.hydrate;N(window.location.pathname).then((()=>{e(r.createElement(i.B6,null,r.createElement(o.VK,null,r.createElement(q,null))),document.getElementById("__docusaurus"))}))}},8940:(e,t,n)=>{"use strict";n.d(t,{_:()=>c,M:()=>d});var r=n(7294),a=n(6809);const o=JSON.parse('{"docusaurus-plugin-content-docs":{"default":{"path":"/template-fastapi-react/docs","versions":[{"name":"current","label":"Next","isLast":true,"path":"/template-fastapi-react/docs","mainDocId":"about/introduction","docs":[{"id":"about/concepts/task","path":"/template-fastapi-react/docs/about/concepts/task","sidebar":"about"},{"id":"about/concepts/use-case","path":"/template-fastapi-react/docs/about/concepts/use-case","sidebar":"about"},{"id":"about/how-to/how-to-do-something","path":"/template-fastapi-react/docs/about/how-to/how-to-do-something","sidebar":"about"},{"id":"about/introduction","path":"/template-fastapi-react/docs/about/introduction","sidebar":"about"},{"id":"about/overview","path":"/template-fastapi-react/docs/about/overview","sidebar":"about"},{"id":"about/running/configure","path":"/template-fastapi-react/docs/about/running/configure","sidebar":"about"},{"id":"about/running/prerequisites","path":"/template-fastapi-react/docs/about/running/prerequisites","sidebar":"about"},{"id":"about/running/starting-services","path":"/template-fastapi-react/docs/about/running/starting-services","sidebar":"about"},{"id":"changelog/changelog","path":"/template-fastapi-react/docs/changelog/"},{"id":"contribute/development-guide/coding/architecture","path":"/template-fastapi-react/docs/contribute/development-guide/coding/architecture","sidebar":"contribute"},{"id":"contribute/development-guide/coding/extending-the-api/adding-data-providers/clients","path":"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/clients","sidebar":"contribute"},{"id":"contribute/development-guide/coding/extending-the-api/adding-data-providers/index","path":"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/","sidebar":"contribute"},{"id":"contribute/development-guide/coding/extending-the-api/adding-data-providers/repositories","path":"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repositories","sidebar":"contribute"},{"id":"contribute/development-guide/coding/extending-the-api/adding-data-providers/repository-interfaces","path":"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repository-interfaces","sidebar":"contribute"},{"id":"contribute/development-guide/coding/extending-the-api/adding-entities","path":"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-entities","sidebar":"contribute"},{"id":"contribute/development-guide/coding/extending-the-api/adding-features/controllers","path":"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/controllers","sidebar":"contribute"},{"id":"contribute/development-guide/coding/extending-the-api/adding-features/index","path":"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/","sidebar":"contribute"},{"id":"contribute/development-guide/coding/extending-the-api/adding-features/securing-endpoints","path":"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/securing-endpoints","sidebar":"contribute"},{"id":"contribute/development-guide/coding/extending-the-api/adding-features/use-cases","path":"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/use-cases","sidebar":"contribute"},{"id":"contribute/development-guide/coding/extending-the-api/index","path":"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/","sidebar":"contribute"},{"id":"contribute/development-guide/coding/extending-the-web/index","path":"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-web/","sidebar":"contribute"},{"id":"contribute/development-guide/coding/generate-api-clients","path":"/template-fastapi-react/docs/contribute/development-guide/coding/generate-api-clients","sidebar":"contribute"},{"id":"contribute/development-guide/publishing","path":"/template-fastapi-react/docs/contribute/development-guide/publishing","sidebar":"contribute"},{"id":"contribute/development-guide/setup","path":"/template-fastapi-react/docs/contribute/development-guide/setup","sidebar":"contribute"},{"id":"contribute/development-guide/testing","path":"/template-fastapi-react/docs/contribute/development-guide/testing","sidebar":"contribute"},{"id":"contribute/development-guide/upgrading","path":"/template-fastapi-react/docs/contribute/development-guide/upgrading","sidebar":"contribute"},{"id":"contribute/documentation","path":"/template-fastapi-react/docs/contribute/documentation","sidebar":"contribute"},{"id":"contribute/ground-rules","path":"/template-fastapi-react/docs/contribute/ground-rules","sidebar":"contribute"},{"id":"contribute/how-to-start-contributing","path":"/template-fastapi-react/docs/contribute/how-to-start-contributing","sidebar":"contribute"},{"id":"/category/concepts","path":"/template-fastapi-react/docs/category/concepts","sidebar":"about"},{"id":"/category/how-to","path":"/template-fastapi-react/docs/category/how-to","sidebar":"about"},{"id":"/category/running","path":"/template-fastapi-react/docs/category/running","sidebar":"about"},{"id":"/category/development-guide","path":"/template-fastapi-react/docs/category/development-guide","sidebar":"contribute"},{"id":"/category/coding","path":"/template-fastapi-react/docs/category/coding","sidebar":"contribute"}],"draftIds":[],"sidebars":{"about":{"link":{"path":"/template-fastapi-react/docs/about/introduction","label":"about/introduction"}},"contribute":{"link":{"path":"/template-fastapi-react/docs/contribute/how-to-start-contributing","label":"contribute/how-to-start-contributing"}}}}],"breadcrumbs":true}}}'),i=JSON.parse('{"defaultLocale":"en","locales":["en"],"path":"i18n","currentLocale":"en","localeConfigs":{"en":{"label":"English","direction":"ltr","htmlLang":"en","calendar":"gregory","path":"en"}}}');var l=n(7529);const s=JSON.parse('{"docusaurusVersion":"2.1.0","siteVersion":"0.1.0","pluginVersions":{"docusaurus-plugin-content-docs":{"type":"package","name":"@docusaurus/plugin-content-docs","version":"2.1.0"},"docusaurus-plugin-content-pages":{"type":"package","name":"@docusaurus/plugin-content-pages","version":"2.1.0"},"docusaurus-plugin-sitemap":{"type":"package","name":"@docusaurus/plugin-sitemap","version":"2.1.0"},"docusaurus-theme-classic":{"type":"package","name":"@docusaurus/theme-classic","version":"2.1.0"}}}'),u={siteConfig:a.default,siteMetadata:s,globalData:o,i18n:i,codeTranslations:l},c=r.createContext(u);function d(e){let{children:t}=e;return r.createElement(c.Provider,{value:u},t)}},4763:(e,t,n)=>{"use strict";n.d(t,{Z:()=>c});var r=n(7294),a=n(412),o=n(5742),i=n(4704);function l(e){let{error:t,tryAgain:n}=e;return r.createElement("div",{style:{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center",height:"50vh",width:"100%",fontSize:"20px"}},r.createElement("h1",null,"This page crashed."),r.createElement("p",null,t.message),r.createElement("button",{type:"button",onClick:n},"Try again"))}function s(e){let{error:t,tryAgain:n}=e;return r.createElement(c,{fallback:()=>r.createElement(l,{error:t,tryAgain:n})},r.createElement(o.Z,null,r.createElement("title",null,"Page Error")),r.createElement(i.Z,null,r.createElement(l,{error:t,tryAgain:n})))}const u=e=>r.createElement(s,e);class c extends r.Component{constructor(e){super(e),this.state={error:null}}componentDidCatch(e){a.Z.canUseDOM&&this.setState({error:e})}render(){const{children:e}=this.props,{error:t}=this.state;if(t){const e={error:t,tryAgain:()=>this.setState({error:null})};return(this.props.fallback??u)(e)}return e??null}}},412:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});const r="undefined"!=typeof window&&"document"in window&&"createElement"in window.document,a={canUseDOM:r,canUseEventListeners:r&&("addEventListener"in window||"attachEvent"in window),canUseIntersectionObserver:r&&"IntersectionObserver"in window,canUseViewport:r&&"screen"in window}},5742:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(7294),a=n(405);function o(e){return r.createElement(a.ql,e)}},9960:(e,t,n)=>{"use strict";n.d(t,{Z:()=>f});var r=n(7462),a=n(7294),o=n(3727),i=n(8780),l=n(2263),s=n(3919),u=n(412);const c=a.createContext({collectLink:()=>{}});var d=n(4996);function p(e,t){var n;let{isNavLink:p,to:f,href:m,activeClassName:g,isActive:h,"data-noBrokenLinkCheck":b,autoAddBaseUrl:v=!0,...y}=e;const{siteConfig:{trailingSlash:w,baseUrl:k}}=(0,l.Z)(),{withBaseUrl:E}=(0,d.C)(),S=(0,a.useContext)(c),x=(0,a.useRef)(null);(0,a.useImperativeHandle)(t,(()=>x.current));const C=f||m;const _=(0,s.Z)(C),T=null==C?void 0:C.replace("pathname://","");let A=void 0!==T?(L=T,v&&(e=>e.startsWith("/"))(L)?E(L):L):void 0;var L;A&&_&&(A=(0,i.applyTrailingSlash)(A,{trailingSlash:w,baseUrl:k}));const P=(0,a.useRef)(!1),R=p?o.OL:o.rU,N=u.Z.canUseIntersectionObserver,O=(0,a.useRef)();(0,a.useEffect)((()=>(!N&&_&&null!=A&&window.docusaurus.prefetch(A),()=>{N&&O.current&&O.current.disconnect()})),[O,A,N,_]);const I=(null==(n=A)?void 0:n.startsWith("#"))??!1,D=!A||!_||I;return D||b||S.collectLink(A),D?a.createElement("a",(0,r.Z)({ref:x,href:A},C&&!_&&{target:"_blank",rel:"noopener noreferrer"},y)):a.createElement(R,(0,r.Z)({},y,{onMouseEnter:()=>{P.current||null==A||(window.docusaurus.preload(A),P.current=!0)},innerRef:e=>{x.current=e,N&&e&&_&&(O.current=new window.IntersectionObserver((t=>{t.forEach((t=>{e===t.target&&(t.isIntersecting||t.intersectionRatio>0)&&(O.current.unobserve(e),O.current.disconnect(),null!=A&&window.docusaurus.prefetch(A))}))})),O.current.observe(e))},to:A},p&&{isActive:h,activeClassName:g}))}const f=a.forwardRef(p)},5999:(e,t,n)=>{"use strict";n.d(t,{Z:()=>s,I:()=>l});var r=n(7294);function a(e,t){const n=e.split(/(\{\w+\})/).map(((e,n)=>{if(n%2==1){const n=null==t?void 0:t[e.slice(1,-1)];if(void 0!==n)return n}return e}));return n.some((e=>(0,r.isValidElement)(e)))?n.map(((e,t)=>(0,r.isValidElement)(e)?r.cloneElement(e,{key:t}):e)).filter((e=>""!==e)):n.join("")}var o=n(7529);function i(e){let{id:t,message:n}=e;if(void 0===t&&void 0===n)throw new Error("Docusaurus translation declarations must have at least a translation id or a default translation message");return o[t??n]??n??t}function l(e,t){let{message:n,id:r}=e;return a(i({message:n,id:r}),t)}function s(e){let{children:t,id:n,values:o}=e;if(t&&"string"!=typeof t)throw console.warn("Illegal <Translate> children",t),new Error("The Docusaurus <Translate> component only accept simple string values");const l=i({message:t,id:n});return r.createElement(r.Fragment,null,a(l,o))}},9935:(e,t,n)=>{"use strict";n.d(t,{m:()=>r});const r="default"},3919:(e,t,n)=>{"use strict";function r(e){return/^(?:\w*:|\/\/)/.test(e)}function a(e){return void 0!==e&&!r(e)}n.d(t,{Z:()=>a,b:()=>r})},4996:(e,t,n)=>{"use strict";n.d(t,{C:()=>o,Z:()=>i});var r=n(2263),a=n(3919);function o(){const{siteConfig:{baseUrl:e,url:t}}=(0,r.Z)();return{withBaseUrl:(n,r)=>function(e,t,n,r){let{forcePrependBaseUrl:o=!1,absolute:i=!1}=void 0===r?{}:r;if(!n||n.startsWith("#")||(0,a.b)(n))return n;if(o)return t+n.replace(/^\//,"");if(n===t.replace(/\/$/,""))return t;const l=n.startsWith(t)?n:t+n.replace(/^\//,"");return i?e+l:l}(t,e,n,r)}}function i(e,t){void 0===t&&(t={});const{withBaseUrl:n}=o();return n(e,t)}},2263:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(7294),a=n(8940);function o(){return(0,r.useContext)(a._)}},2389:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(7294),a=n(8934);function o(){return(0,r.useContext)(a._)}},9670:(e,t,n)=>{"use strict";n.d(t,{Z:()=>r});function r(e){const t={};return function e(n,r){Object.entries(n).forEach((n=>{let[a,o]=n;const i=r?`${r}.${a}`:a;var l;"object"==typeof(l=o)&&l&&Object.keys(l).length>0?e(o,i):t[i]=o}))}(e),t}},226:(e,t,n)=>{"use strict";n.d(t,{_:()=>a,z:()=>o});var r=n(7294);const a=r.createContext(null);function o(e){let{children:t,value:n}=e;const o=r.useContext(a),i=(0,r.useMemo)((()=>function(e){let{parent:t,value:n}=e;if(!t){if(!n)throw new Error("Unexpected: no Docusaurus route context found");if(!("plugin"in n))throw new Error("Unexpected: Docusaurus topmost route context has no `plugin` attribute");return n}const r={...t.data,...null==n?void 0:n.data};return{plugin:t.plugin,data:r}}({parent:o,value:n})),[o,n]);return r.createElement(a.Provider,{value:i},t)}},143:(e,t,n)=>{"use strict";n.d(t,{Iw:()=>g,gA:()=>p,_r:()=>c,Jo:()=>h,zh:()=>d,yW:()=>m,gB:()=>f});var r=n(6775),a=n(2263),o=n(9935);function i(e,t){void 0===t&&(t={});const n=function(){const{globalData:e}=(0,a.Z)();return e}()[e];if(!n&&t.failfast)throw new Error(`Docusaurus plugin global data not found for "${e}" plugin.`);return n}const l=e=>e.versions.find((e=>e.isLast));function s(e,t){const n=function(e,t){const n=l(e);return[...e.versions.filter((e=>e!==n)),n].find((e=>!!(0,r.LX)(t,{path:e.path,exact:!1,strict:!1})))}(e,t),a=null==n?void 0:n.docs.find((e=>!!(0,r.LX)(t,{path:e.path,exact:!0,strict:!1})));return{activeVersion:n,activeDoc:a,alternateDocVersions:a?function(t){const n={};return e.versions.forEach((e=>{e.docs.forEach((r=>{r.id===t&&(n[e.name]=r)}))})),n}(a.id):{}}}const u={},c=()=>i("docusaurus-plugin-content-docs")??u,d=e=>function(e,t,n){void 0===t&&(t=o.m),void 0===n&&(n={});const r=i(e),a=null==r?void 0:r[t];if(!a&&n.failfast)throw new Error(`Docusaurus plugin global data not found for "${e}" plugin with id "${t}".`);return a}("docusaurus-plugin-content-docs",e,{failfast:!0});function p(e){void 0===e&&(e={});const t=c(),{pathname:n}=(0,r.TH)();return function(e,t,n){void 0===n&&(n={});const a=Object.entries(e).sort(((e,t)=>t[1].path.localeCompare(e[1].path))).find((e=>{let[,n]=e;return!!(0,r.LX)(t,{path:n.path,exact:!1,strict:!1})})),o=a?{pluginId:a[0],pluginData:a[1]}:void 0;if(!o&&n.failfast)throw new Error(`Can't find active docs plugin for "${t}" pathname, while it was expected to be found. Maybe you tried to use a docs feature that can only be used on a docs-related page? Existing docs plugin paths are: ${Object.values(e).map((e=>e.path)).join(", ")}`);return o}(t,n,e)}function f(e){return d(e).versions}function m(e){const t=d(e);return l(t)}function g(e){const t=d(e),{pathname:n}=(0,r.TH)();return s(t,n)}function h(e){const t=d(e),{pathname:n}=(0,r.TH)();return function(e,t){const n=l(e);return{latestDocSuggestion:s(e,t).alternateDocVersions[n.name],latestVersionSuggestion:n}}(t,n)}},8320:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>o});var r=n(4865),a=n.n(r);a().configure({showSpinner:!1});const o={onRouteUpdate(e){let{location:t,previousLocation:n}=e;if(n&&t.pathname!==n.pathname){const e=window.setTimeout((()=>{a().start()}),200);return()=>window.clearTimeout(e)}},onRouteDidUpdate(){a().done()}}},3310:(e,t,n)=>{"use strict";n.r(t);var r=n(7410),a=n(6809);!function(e){const{themeConfig:{prism:t}}=a.default,{additionalLanguages:r}=t;globalThis.Prism=e,r.forEach((e=>{n(6726)(`./prism-${e}`)})),delete globalThis.Prism}(r.Z)},9471:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(7294);const a="iconExternalLink_nPIU";function o(e){let{width:t=13.5,height:n=13.5}=e;return r.createElement("svg",{width:t,height:n,"aria-hidden":"true",viewBox:"0 0 24 24",className:a},r.createElement("path",{fill:"currentColor",d:"M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"}))}},4704:(e,t,n)=>{"use strict";n.d(t,{Z:()=>ot});var r=n(7294),a=n(6010),o=n(4763),i=n(1944),l=n(5281),s=n(9727),u=n(5999),c=n(6775),d=n(5936);function p(e){e.setAttribute("tabindex","-1"),e.focus(),e.removeAttribute("tabindex")}const f="skipToContent_fXgn";function m(){const{containerRef:e,handleSkip:t}=function(){const e=(0,r.useRef)(null),{action:t}=(0,c.k6)(),n=(0,r.useCallback)((e=>{e.preventDefault();const t=document.querySelector("main:first-of-type")??document.querySelector(`.${l.k.wrapper.main}`);t&&p(t)}),[]);return(0,d.S)((n=>{let{location:r}=n;e.current&&!r.hash&&"PUSH"===t&&p(e.current)})),{containerRef:e,handleSkip:n}}();return r.createElement("div",{ref:e,role:"region","aria-label":(0,u.I)({id:"theme.common.skipToMainContent"})},r.createElement("a",{href:"#",className:f,onClick:t},r.createElement(u.Z,{id:"theme.common.skipToMainContent",description:"The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation"},"Skip to main content")))}var g=n(6668),h=n(9689),b=n(7462);function v(e){let{width:t=21,height:n=21,color:a="currentColor",strokeWidth:o=1.2,className:i,...l}=e;return r.createElement("svg",(0,b.Z)({viewBox:"0 0 15 15",width:t,height:n},l),r.createElement("g",{stroke:a,strokeWidth:o},r.createElement("path",{d:"M.75.75l13.5 13.5M14.25.75L.75 14.25"})))}const y="closeButton_CVFx";function w(e){return r.createElement("button",(0,b.Z)({type:"button","aria-label":(0,u.I)({id:"theme.AnnouncementBar.closeButtonAriaLabel",message:"Close",description:"The ARIA label for close button of announcement bar"})},e,{className:(0,a.Z)("clean-btn close",y,e.className)}),r.createElement(v,{width:14,height:14,strokeWidth:3.1}))}const k="content_knG7";function E(e){const{announcementBar:t}=(0,g.L)(),{content:n}=t;return r.createElement("div",(0,b.Z)({},e,{className:(0,a.Z)(k,e.className),dangerouslySetInnerHTML:{__html:n}}))}const S="announcementBar_mb4j",x="announcementBarPlaceholder_vyr4",C="announcementBarClose_gvF7",_="announcementBarContent_xLdY";function T(){const{announcementBar:e}=(0,g.L)(),{isActive:t,close:n}=(0,h.nT)();if(!t)return null;const{backgroundColor:a,textColor:o,isCloseable:i}=e;return r.createElement("div",{className:S,style:{backgroundColor:a,color:o},role:"banner"},i&&r.createElement("div",{className:x}),r.createElement(E,{className:_}),i&&r.createElement(w,{onClick:n,className:C}))}var A=n(2961),L=n(2466);var P=n(902),R=n(3102);const N=r.createContext(null);function O(e){let{children:t}=e;const n=function(){const e=(0,A.e)(),t=(0,R.HY)(),[n,a]=(0,r.useState)(!1),o=null!==t.component,i=(0,P.D9)(o);return(0,r.useEffect)((()=>{o&&!i&&a(!0)}),[o,i]),(0,r.useEffect)((()=>{o?e.shown||a(!0):a(!1)}),[e.shown,o]),(0,r.useMemo)((()=>[n,a]),[n])}();return r.createElement(N.Provider,{value:n},t)}function I(e){if(e.component){const t=e.component;return r.createElement(t,e.props)}}function D(){const e=(0,r.useContext)(N);if(!e)throw new P.i6("NavbarSecondaryMenuDisplayProvider");const[t,n]=e,a=(0,r.useCallback)((()=>n(!1)),[n]),o=(0,R.HY)();return(0,r.useMemo)((()=>({shown:t,hide:a,content:I(o)})),[a,o,t])}function M(e){let{header:t,primaryMenu:n,secondaryMenu:o}=e;const{shown:i}=D();return r.createElement("div",{className:"navbar-sidebar"},t,r.createElement("div",{className:(0,a.Z)("navbar-sidebar__items",{"navbar-sidebar__items--show-secondary":i})},r.createElement("div",{className:"navbar-sidebar__item menu"},n),r.createElement("div",{className:"navbar-sidebar__item menu"},o)))}var F=n(2949),B=n(2389);function j(e){return r.createElement("svg",(0,b.Z)({viewBox:"0 0 24 24",width:24,height:24},e),r.createElement("path",{fill:"currentColor",d:"M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"}))}function z(e){return r.createElement("svg",(0,b.Z)({viewBox:"0 0 24 24",width:24,height:24},e),r.createElement("path",{fill:"currentColor",d:"M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"}))}const U={toggle:"toggle_vylO",toggleButton:"toggleButton_gllP",darkToggleIcon:"darkToggleIcon_wfgR",lightToggleIcon:"lightToggleIcon_pyhR",toggleButtonDisabled:"toggleButtonDisabled_aARS"};function $(e){let{className:t,value:n,onChange:o}=e;const i=(0,B.Z)(),l=(0,u.I)({message:"Switch between dark and light mode (currently {mode})",id:"theme.colorToggle.ariaLabel",description:"The ARIA label for the navbar color mode toggle"},{mode:"dark"===n?(0,u.I)({message:"dark mode",id:"theme.colorToggle.ariaLabel.mode.dark",description:"The name for the dark color mode"}):(0,u.I)({message:"light mode",id:"theme.colorToggle.ariaLabel.mode.light",description:"The name for the light color mode"})});return r.createElement("div",{className:(0,a.Z)(U.toggle,t)},r.createElement("button",{className:(0,a.Z)("clean-btn",U.toggleButton,!i&&U.toggleButtonDisabled),type:"button",onClick:()=>o("dark"===n?"light":"dark"),disabled:!i,title:l,"aria-label":l},r.createElement(j,{className:(0,a.Z)(U.toggleIcon,U.lightToggleIcon)}),r.createElement(z,{className:(0,a.Z)(U.toggleIcon,U.darkToggleIcon)})))}const q=r.memo($);function G(e){let{className:t}=e;const n=(0,g.L)().colorMode.disableSwitch,{colorMode:a,setColorMode:o}=(0,F.I)();return n?null:r.createElement(q,{className:t,value:a,onChange:o})}var H=n(1327);function Z(){return r.createElement(H.Z,{className:"navbar__brand",imageClassName:"navbar__logo",titleClassName:"navbar__title text--truncate"})}function V(){const e=(0,A.e)();return r.createElement("button",{type:"button",className:"clean-btn navbar-sidebar__close",onClick:()=>e.toggle()},r.createElement(v,{color:"var(--ifm-color-emphasis-600)"}))}function W(){return r.createElement("div",{className:"navbar-sidebar__brand"},r.createElement(Z,null),r.createElement(G,{className:"margin-right--md"}),r.createElement(V,null))}var Y=n(9960),K=n(4996),Q=n(3919);function X(e,t){return void 0!==e&&void 0!==t&&new RegExp(e,"gi").test(t)}var J=n(9471);function ee(e){let{activeBasePath:t,activeBaseRegex:n,to:a,href:o,label:i,html:l,isDropdownLink:s,prependBaseUrlToHref:u,...c}=e;const d=(0,K.Z)(a),p=(0,K.Z)(t),f=(0,K.Z)(o,{forcePrependBaseUrl:!0}),m=i&&o&&!(0,Q.Z)(o),g=l?{dangerouslySetInnerHTML:{__html:l}}:{children:r.createElement(r.Fragment,null,i,m&&r.createElement(J.Z,s&&{width:12,height:12}))};return o?r.createElement(Y.Z,(0,b.Z)({href:u?f:o},c,g)):r.createElement(Y.Z,(0,b.Z)({to:d,isNavLink:!0},(t||n)&&{isActive:(e,t)=>n?X(n,t.pathname):t.pathname.startsWith(p)},c,g))}function te(e){let{className:t,isDropdownItem:n=!1,...o}=e;const i=r.createElement(ee,(0,b.Z)({className:(0,a.Z)(n?"dropdown__link":"navbar__item navbar__link",t),isDropdownLink:n},o));return n?r.createElement("li",null,i):i}function ne(e){let{className:t,isDropdownItem:n,...o}=e;return r.createElement("li",{className:"menu__list-item"},r.createElement(ee,(0,b.Z)({className:(0,a.Z)("menu__link",t)},o)))}function re(e){let{mobile:t=!1,position:n,...a}=e;const o=t?ne:te;return r.createElement(o,(0,b.Z)({},a,{activeClassName:a.activeClassName??(t?"menu__link--active":"navbar__link--active")}))}var ae=n(6043),oe=n(8596),ie=n(2263);function le(e,t){return e.some((e=>function(e,t){return!!(0,oe.Mg)(e.to,t)||!!X(e.activeBaseRegex,t)||!(!e.activeBasePath||!t.startsWith(e.activeBasePath))}(e,t)))}function se(e){let{items:t,position:n,className:o,onClick:i,...l}=e;const s=(0,r.useRef)(null),[u,c]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{const e=e=>{s.current&&!s.current.contains(e.target)&&c(!1)};return document.addEventListener("mousedown",e),document.addEventListener("touchstart",e),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("touchstart",e)}}),[s]),r.createElement("div",{ref:s,className:(0,a.Z)("navbar__item","dropdown","dropdown--hoverable",{"dropdown--right":"right"===n,"dropdown--show":u})},r.createElement(ee,(0,b.Z)({"aria-haspopup":"true","aria-expanded":u,role:"button",href:l.to?void 0:"#",className:(0,a.Z)("navbar__link",o)},l,{onClick:l.to?void 0:e=>e.preventDefault(),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),c(!u))}}),l.children??l.label),r.createElement("ul",{className:"dropdown__menu"},t.map(((e,n)=>r.createElement(Ee,(0,b.Z)({isDropdownItem:!0,onKeyDown:e=>{if(n===t.length-1&&"Tab"===e.key){e.preventDefault(),c(!1);const t=s.current.nextElementSibling;if(t){(t instanceof HTMLAnchorElement?t:t.querySelector("a")).focus()}}},activeClassName:"dropdown__link--active"},e,{key:n}))))))}function ue(e){let{items:t,className:n,position:o,onClick:i,...l}=e;const s=function(){const{siteConfig:{baseUrl:e}}=(0,ie.Z)(),{pathname:t}=(0,c.TH)();return t.replace(e,"/")}(),u=le(t,s),{collapsed:d,toggleCollapsed:p,setCollapsed:f}=(0,ae.u)({initialState:()=>!u});return(0,r.useEffect)((()=>{u&&f(!u)}),[s,u,f]),r.createElement("li",{className:(0,a.Z)("menu__list-item",{"menu__list-item--collapsed":d})},r.createElement(ee,(0,b.Z)({role:"button",className:(0,a.Z)("menu__link menu__link--sublist menu__link--sublist-caret",n)},l,{onClick:e=>{e.preventDefault(),p()}}),l.children??l.label),r.createElement(ae.z,{lazy:!0,as:"ul",className:"menu__list",collapsed:d},t.map(((e,t)=>r.createElement(Ee,(0,b.Z)({mobile:!0,isDropdownItem:!0,onClick:i,activeClassName:"menu__link--active"},e,{key:t}))))))}function ce(e){let{mobile:t=!1,...n}=e;const a=t?ue:se;return r.createElement(a,n)}var de=n(4711);function pe(e){let{width:t=20,height:n=20,...a}=e;return r.createElement("svg",(0,b.Z)({viewBox:"0 0 24 24",width:t,height:n,"aria-hidden":!0},a),r.createElement("path",{fill:"currentColor",d:"M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"}))}const fe="iconLanguage_nlXk";const me=()=>null,ge="searchBox_ZlJk";function he(e){let{children:t,className:n}=e;return r.createElement("div",{className:(0,a.Z)(n,ge)},t)}var be=n(143),ve=n(3438);var ye=n(373);const we=e=>e.docs.find((t=>t.id===e.mainDocId));const ke={default:re,localeDropdown:function(e){let{mobile:t,dropdownItemsBefore:n,dropdownItemsAfter:a,...o}=e;const{i18n:{currentLocale:i,locales:l,localeConfigs:s}}=(0,ie.Z)(),c=(0,de.l)(),d=[...n,...l.map((e=>{const n=`pathname://${c.createUrl({locale:e,fullyQualified:!1})}`;return{label:s[e].label,lang:s[e].htmlLang,to:n,target:"_self",autoAddBaseUrl:!1,className:e===i?t?"menu__link--active":"dropdown__link--active":""}})),...a],p=t?(0,u.I)({message:"Languages",id:"theme.navbar.mobileLanguageDropdown.label",description:"The label for the mobile language switcher dropdown"}):s[i].label;return r.createElement(ce,(0,b.Z)({},o,{mobile:t,label:r.createElement(r.Fragment,null,r.createElement(pe,{className:fe}),p),items:d}))},search:function(e){let{mobile:t,className:n}=e;return t?null:r.createElement(he,{className:n},r.createElement(me,null))},dropdown:ce,html:function(e){let{value:t,className:n,mobile:o=!1,isDropdownItem:i=!1}=e;const l=i?"li":"div";return r.createElement(l,{className:(0,a.Z)({navbar__item:!o&&!i,"menu__list-item":o},n),dangerouslySetInnerHTML:{__html:t}})},doc:function(e){let{docId:t,label:n,docsPluginId:a,...o}=e;const{activeDoc:i}=(0,be.Iw)(a),l=(0,ve.vY)(t,a);return null===l?null:r.createElement(re,(0,b.Z)({exact:!0},o,{isActive:()=>(null==i?void 0:i.path)===l.path||!(null==i||!i.sidebar)&&i.sidebar===l.sidebar,label:n??l.id,to:l.path}))},docSidebar:function(e){let{sidebarId:t,label:n,docsPluginId:a,...o}=e;const{activeDoc:i}=(0,be.Iw)(a),l=(0,ve.oz)(t,a).link;if(!l)throw new Error(`DocSidebarNavbarItem: Sidebar with ID "${t}" doesn't have anything to be linked to.`);return r.createElement(re,(0,b.Z)({exact:!0},o,{isActive:()=>(null==i?void 0:i.sidebar)===t,label:n??l.label,to:l.path}))},docsVersion:function(e){let{label:t,to:n,docsPluginId:a,...o}=e;const i=(0,ve.lO)(a)[0],l=t??i.label,s=n??(e=>e.docs.find((t=>t.id===e.mainDocId)))(i).path;return r.createElement(re,(0,b.Z)({},o,{label:l,to:s}))},docsVersionDropdown:function(e){let{mobile:t,docsPluginId:n,dropdownActiveClassDisabled:a,dropdownItemsBefore:o,dropdownItemsAfter:i,...l}=e;const s=(0,be.Iw)(n),c=(0,be.gB)(n),{savePreferredVersionName:d}=(0,ye.J)(n),p=[...o,...c.map((e=>{const t=s.alternateDocVersions[e.name]??we(e);return{label:e.label,to:t.path,isActive:()=>e===s.activeVersion,onClick:()=>d(e.name)}})),...i],f=(0,ve.lO)(n)[0],m=t&&p.length>1?(0,u.I)({id:"theme.navbar.mobileVersionsDropdown.label",message:"Versions",description:"The label for the navbar versions dropdown on mobile view"}):f.label,g=t&&p.length>1?void 0:we(f).path;return p.length<=1?r.createElement(re,(0,b.Z)({},l,{mobile:t,label:m,to:g,isActive:a?()=>!1:void 0})):r.createElement(ce,(0,b.Z)({},l,{mobile:t,label:m,to:g,items:p,isActive:a?()=>!1:void 0}))}};function Ee(e){let{type:t,...n}=e;const a=function(e,t){return e&&"default"!==e?e:"items"in t?"dropdown":"default"}(t,n),o=ke[a];if(!o)throw new Error(`No NavbarItem component found for type "${t}".`);return r.createElement(o,n)}function Se(){const e=(0,A.e)(),t=(0,g.L)().navbar.items;return r.createElement("ul",{className:"menu__list"},t.map(((t,n)=>r.createElement(Ee,(0,b.Z)({mobile:!0},t,{onClick:()=>e.toggle(),key:n})))))}function xe(e){return r.createElement("button",(0,b.Z)({},e,{type:"button",className:"clean-btn navbar-sidebar__back"}),r.createElement(u.Z,{id:"theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel",description:"The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)"},"\u2190 Back to main menu"))}function Ce(){const e=0===(0,g.L)().navbar.items.length,t=D();return r.createElement(r.Fragment,null,!e&&r.createElement(xe,{onClick:()=>t.hide()}),t.content)}function _e(){const e=(0,A.e)();var t;return void 0===(t=e.shown)&&(t=!0),(0,r.useEffect)((()=>(document.body.style.overflow=t?"hidden":"visible",()=>{document.body.style.overflow="visible"})),[t]),e.shouldRender?r.createElement(M,{header:r.createElement(W,null),primaryMenu:r.createElement(Se,null),secondaryMenu:r.createElement(Ce,null)}):null}const Te="navbarHideable_m1mJ",Ae="navbarHidden_jGov";function Le(e){return r.createElement("div",(0,b.Z)({role:"presentation"},e,{className:(0,a.Z)("navbar-sidebar__backdrop",e.className)}))}function Pe(e){let{children:t}=e;const{navbar:{hideOnScroll:n,style:o}}=(0,g.L)(),i=(0,A.e)(),{navbarRef:l,isNavbarVisible:s}=function(e){const[t,n]=(0,r.useState)(e),a=(0,r.useRef)(!1),o=(0,r.useRef)(0),i=(0,r.useCallback)((e=>{null!==e&&(o.current=e.getBoundingClientRect().height)}),[]);return(0,L.RF)(((t,r)=>{let{scrollY:i}=t;if(!e)return;if(i<o.current)return void n(!0);if(a.current)return void(a.current=!1);const l=null==r?void 0:r.scrollY,s=document.documentElement.scrollHeight-o.current,u=window.innerHeight;l&&i>=l?n(!1):i+u<s&&n(!0)})),(0,d.S)((t=>{if(e)return t.location.hash?(a.current=!0,void n(!1)):void n(!0)})),{navbarRef:i,isNavbarVisible:t}}(n);return r.createElement("nav",{ref:l,className:(0,a.Z)("navbar","navbar--fixed-top",n&&[Te,!s&&Ae],{"navbar--dark":"dark"===o,"navbar--primary":"primary"===o,"navbar-sidebar--show":i.shown})},t,r.createElement(Le,{onClick:i.toggle}),r.createElement(_e,null))}function Re(e){let{width:t=30,height:n=30,className:a,...o}=e;return r.createElement("svg",(0,b.Z)({className:a,width:t,height:n,viewBox:"0 0 30 30","aria-hidden":"true"},o),r.createElement("path",{stroke:"currentColor",strokeLinecap:"round",strokeMiterlimit:"10",strokeWidth:"2",d:"M4 7h22M4 15h22M4 23h22"}))}function Ne(){const e=(0,A.e)();return r.createElement("button",{onClick:e.toggle,onKeyDown:e.toggle,"aria-label":"Navigation bar toggle",className:"navbar__toggle clean-btn",type:"button",tabIndex:0},r.createElement(Re,null))}const Oe="colorModeToggle_DEke";function Ie(e){let{items:t}=e;return r.createElement(r.Fragment,null,t.map(((e,t)=>r.createElement(Ee,(0,b.Z)({},e,{key:t})))))}function De(e){let{left:t,right:n}=e;return r.createElement("div",{className:"navbar__inner"},r.createElement("div",{className:"navbar__items"},t),r.createElement("div",{className:"navbar__items navbar__items--right"},n))}function Me(){const e=(0,A.e)(),t=(0,g.L)().navbar.items,[n,a]=function(e){function t(e){return"left"===(e.position??"right")}return[e.filter(t),e.filter((e=>!t(e)))]}(t),o=t.find((e=>"search"===e.type));return r.createElement(De,{left:r.createElement(r.Fragment,null,!e.disabled&&r.createElement(Ne,null),r.createElement(Z,null),r.createElement(Ie,{items:n})),right:r.createElement(r.Fragment,null,r.createElement(Ie,{items:a}),r.createElement(G,{className:Oe}),!o&&r.createElement(he,null,r.createElement(me,null)))})}function Fe(){return r.createElement(Pe,null,r.createElement(Me,null))}function Be(e){let{item:t}=e;const{to:n,href:a,label:o,prependBaseUrlToHref:i,...l}=t,s=(0,K.Z)(n),u=(0,K.Z)(a,{forcePrependBaseUrl:!0});return r.createElement(Y.Z,(0,b.Z)({className:"footer__link-item"},a?{href:i?u:a}:{to:s},l),o,a&&!(0,Q.Z)(a)&&r.createElement(J.Z,null))}function je(e){let{item:t}=e;return t.html?r.createElement("li",{className:"footer__item",dangerouslySetInnerHTML:{__html:t.html}}):r.createElement("li",{key:t.href??t.to,className:"footer__item"},r.createElement(Be,{item:t}))}function ze(e){let{column:t}=e;return r.createElement("div",{className:"col footer__col"},r.createElement("div",{className:"footer__title"},t.title),r.createElement("ul",{className:"footer__items clean-list"},t.items.map(((e,t)=>r.createElement(je,{key:t,item:e})))))}function Ue(e){let{columns:t}=e;return r.createElement("div",{className:"row footer__links"},t.map(((e,t)=>r.createElement(ze,{key:t,column:e}))))}function $e(){return r.createElement("span",{className:"footer__link-separator"},"\xb7")}function qe(e){let{item:t}=e;return t.html?r.createElement("span",{className:"footer__link-item",dangerouslySetInnerHTML:{__html:t.html}}):r.createElement(Be,{item:t})}function Ge(e){let{links:t}=e;return r.createElement("div",{className:"footer__links text--center"},r.createElement("div",{className:"footer__links"},t.map(((e,n)=>r.createElement(r.Fragment,{key:n},r.createElement(qe,{item:e}),t.length!==n+1&&r.createElement($e,null))))))}function He(e){let{links:t}=e;return function(e){return"title"in e[0]}(t)?r.createElement(Ue,{columns:t}):r.createElement(Ge,{links:t})}var Ze=n(941);const Ve="footerLogoLink_BH7S";function We(e){let{logo:t}=e;const{withBaseUrl:n}=(0,K.C)(),o={light:n(t.src),dark:n(t.srcDark??t.src)};return r.createElement(Ze.Z,{className:(0,a.Z)("footer__logo",t.className),alt:t.alt,sources:o,width:t.width,height:t.height,style:t.style})}function Ye(e){let{logo:t}=e;return t.href?r.createElement(Y.Z,{href:t.href,className:Ve,target:t.target},r.createElement(We,{logo:t})):r.createElement(We,{logo:t})}function Ke(e){let{copyright:t}=e;return r.createElement("div",{className:"footer__copyright",dangerouslySetInnerHTML:{__html:t}})}function Qe(e){let{style:t,links:n,logo:o,copyright:i}=e;return r.createElement("footer",{className:(0,a.Z)("footer",{"footer--dark":"dark"===t})},r.createElement("div",{className:"container container-fluid"},n,(o||i)&&r.createElement("div",{className:"footer__bottom text--center"},o&&r.createElement("div",{className:"margin-bottom--sm"},o),i)))}function Xe(){const{footer:e}=(0,g.L)();if(!e)return null;const{copyright:t,links:n,logo:a,style:o}=e;return r.createElement(Qe,{style:o,links:n&&n.length>0&&r.createElement(He,{links:n}),logo:a&&r.createElement(Ye,{logo:a}),copyright:t&&r.createElement(Ke,{copyright:t})})}const Je=r.memo(Xe);var et=n(7094);const tt=(0,P.Qc)([F.S,h.pl,et.z,L.OC,ye.L5,i.VC,function(e){let{children:t}=e;return r.createElement(R.n2,null,r.createElement(A.M,null,r.createElement(O,null,t)))}]);function nt(e){let{children:t}=e;return r.createElement(tt,null,t)}function rt(e){let{error:t,tryAgain:n}=e;return r.createElement("main",{className:"container margin-vert--xl"},r.createElement("div",{className:"row"},r.createElement("div",{className:"col col--6 col--offset-3"},r.createElement("h1",{className:"hero__title"},r.createElement(u.Z,{id:"theme.ErrorPageContent.title",description:"The title of the fallback page when the page crashed"},"This page crashed.")),r.createElement("p",null,t.message),r.createElement("div",null,r.createElement("button",{type:"button",onClick:n},r.createElement(u.Z,{id:"theme.ErrorPageContent.tryAgain",description:"The label of the button to try again when the page crashed"},"Try again"))))))}const at="mainWrapper_z2l0";function ot(e){const{children:t,noFooter:n,wrapperClassName:u,title:c,description:d}=e;return(0,s.t)(),r.createElement(nt,null,r.createElement(i.d,{title:c,description:d}),r.createElement(m,null),r.createElement(T,null),r.createElement(Fe,null),r.createElement("div",{className:(0,a.Z)(l.k.wrapper.main,at,u)},r.createElement(o.Z,{fallback:e=>r.createElement(rt,e)},t)),!n&&r.createElement(Je,null))}},1327:(e,t,n)=>{"use strict";n.d(t,{Z:()=>d});var r=n(7462),a=n(7294),o=n(9960),i=n(4996),l=n(2263),s=n(6668),u=n(941);function c(e){let{logo:t,alt:n,imageClassName:r}=e;const o={light:(0,i.Z)(t.src),dark:(0,i.Z)(t.srcDark||t.src)},l=a.createElement(u.Z,{className:t.className,sources:o,height:t.height,width:t.width,alt:n,style:t.style});return r?a.createElement("div",{className:r},l):l}function d(e){const{siteConfig:{title:t}}=(0,l.Z)(),{navbar:{title:n,logo:u}}=(0,s.L)(),{imageClassName:d,titleClassName:p,...f}=e,m=(0,i.Z)((null==u?void 0:u.href)||"/"),g=n?"":t,h=(null==u?void 0:u.alt)??g;return a.createElement(o.Z,(0,r.Z)({to:m},f,(null==u?void 0:u.target)&&{target:u.target}),u&&a.createElement(c,{logo:u,alt:h,imageClassName:d}),null!=n&&a.createElement("b",{className:p},n))}},197:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(7294),a=n(5742);function o(e){let{locale:t,version:n,tag:o}=e;const i=t;return r.createElement(a.Z,null,t&&r.createElement("meta",{name:"docusaurus_locale",content:t}),n&&r.createElement("meta",{name:"docusaurus_version",content:n}),o&&r.createElement("meta",{name:"docusaurus_tag",content:o}),i&&r.createElement("meta",{name:"docsearch:language",content:i}),n&&r.createElement("meta",{name:"docsearch:version",content:n}),o&&r.createElement("meta",{name:"docsearch:docusaurus_tag",content:o}))}},941:(e,t,n)=>{"use strict";n.d(t,{Z:()=>u});var r=n(7462),a=n(7294),o=n(6010),i=n(2389),l=n(2949);const s={themedImage:"themedImage_ToTc","themedImage--light":"themedImage--light_HNdA","themedImage--dark":"themedImage--dark_i4oU"};function u(e){const t=(0,i.Z)(),{colorMode:n}=(0,l.I)(),{sources:u,className:c,alt:d,...p}=e,f=t?"dark"===n?["dark"]:["light"]:["light","dark"];return a.createElement(a.Fragment,null,f.map((e=>a.createElement("img",(0,r.Z)({key:e,src:u[e],alt:d,className:(0,o.Z)(s.themedImage,s[`themedImage--${e}`],c)},p)))))}},6043:(e,t,n)=>{"use strict";n.d(t,{u:()=>i,z:()=>m});var r=n(7462),a=n(7294),o=n(412);function i(e){let{initialState:t}=e;const[n,r]=(0,a.useState)(t??!1),o=(0,a.useCallback)((()=>{r((e=>!e))}),[]);return{collapsed:n,setCollapsed:r,toggleCollapsed:o}}const l={display:"none",overflow:"hidden",height:"0px"},s={display:"block",overflow:"visible",height:"auto"};function u(e,t){const n=t?l:s;e.style.display=n.display,e.style.overflow=n.overflow,e.style.height=n.height}function c(e){let{collapsibleRef:t,collapsed:n,animation:r}=e;const o=(0,a.useRef)(!1);(0,a.useEffect)((()=>{const e=t.current;function a(){const t=e.scrollHeight,n=(null==r?void 0:r.duration)??function(e){const t=e/36;return Math.round(10*(4+15*t**.25+t/5))}(t);return{transition:`height ${n}ms ${(null==r?void 0:r.easing)??"ease-in-out"}`,height:`${t}px`}}function i(){const t=a();e.style.transition=t.transition,e.style.height=t.height}if(!o.current)return u(e,n),void(o.current=!0);return e.style.willChange="height",function(){const t=requestAnimationFrame((()=>{n?(i(),requestAnimationFrame((()=>{e.style.height=l.height,e.style.overflow=l.overflow}))):(e.style.display="block",requestAnimationFrame((()=>{i()})))}));return()=>cancelAnimationFrame(t)}()}),[t,n,r])}function d(e){if(!o.Z.canUseDOM)return e?l:s}function p(e){let{as:t="div",collapsed:n,children:r,animation:o,onCollapseTransitionEnd:i,className:l,disableSSRStyle:s}=e;const p=(0,a.useRef)(null);return c({collapsibleRef:p,collapsed:n,animation:o}),a.createElement(t,{ref:p,style:s?void 0:d(n),onTransitionEnd:e=>{"height"===e.propertyName&&(u(p.current,n),null==i||i(n))},className:l},r)}function f(e){let{collapsed:t,...n}=e;const[o,i]=(0,a.useState)(!t),[l,s]=(0,a.useState)(t);return(0,a.useLayoutEffect)((()=>{t||i(!0)}),[t]),(0,a.useLayoutEffect)((()=>{o&&s(t)}),[o,t]),o?a.createElement(p,(0,r.Z)({},n,{collapsed:l})):null}function m(e){let{lazy:t,...n}=e;const r=t?f:p;return a.createElement(r,n)}},9689:(e,t,n)=>{"use strict";n.d(t,{nT:()=>m,pl:()=>f});var r=n(7294),a=n(2389),o=n(12),i=n(902),l=n(6668);const s=(0,o.W)("docusaurus.announcement.dismiss"),u=(0,o.W)("docusaurus.announcement.id"),c=()=>"true"===s.get(),d=e=>s.set(String(e)),p=r.createContext(null);function f(e){let{children:t}=e;const n=function(){const{announcementBar:e}=(0,l.L)(),t=(0,a.Z)(),[n,o]=(0,r.useState)((()=>!!t&&c()));(0,r.useEffect)((()=>{o(c())}),[]);const i=(0,r.useCallback)((()=>{d(!0),o(!0)}),[]);return(0,r.useEffect)((()=>{if(!e)return;const{id:t}=e;let n=u.get();"annoucement-bar"===n&&(n="announcement-bar");const r=t!==n;u.set(t),r&&d(!1),!r&&c()||o(!1)}),[e]),(0,r.useMemo)((()=>({isActive:!!e&&!n,close:i})),[e,n,i])}();return r.createElement(p.Provider,{value:n},t)}function m(){const e=(0,r.useContext)(p);if(!e)throw new i.i6("AnnouncementBarProvider");return e}},2949:(e,t,n)=>{"use strict";n.d(t,{I:()=>h,S:()=>g});var r=n(7294),a=n(412),o=n(902),i=n(12),l=n(6668);const s=r.createContext(void 0),u="theme",c=(0,i.W)(u),d="light",p="dark",f=e=>e===p?p:d;function m(){const{colorMode:{defaultMode:e,disableSwitch:t,respectPrefersColorScheme:n}}=(0,l.L)(),[o,i]=(0,r.useState)((e=>a.Z.canUseDOM?f(document.documentElement.getAttribute("data-theme")):f(e))(e));(0,r.useEffect)((()=>{t&&c.del()}),[t]);const s=(0,r.useCallback)((function(t,r){void 0===r&&(r={});const{persist:a=!0}=r;t?(i(t),a&&(e=>{c.set(f(e))})(t)):(i(n?window.matchMedia("(prefers-color-scheme: dark)").matches?p:d:e),c.del())}),[n,e]);(0,r.useEffect)((()=>{document.documentElement.setAttribute("data-theme",f(o))}),[o]),(0,r.useEffect)((()=>{if(t)return;const e=e=>{if(e.key!==u)return;const t=c.get();null!==t&&s(f(t))};return window.addEventListener("storage",e),()=>window.removeEventListener("storage",e)}),[t,s]);const m=(0,r.useRef)(!1);return(0,r.useEffect)((()=>{if(t&&!n)return;const e=window.matchMedia("(prefers-color-scheme: dark)"),r=()=>{window.matchMedia("print").matches||m.current?m.current=window.matchMedia("print").matches:s(null)};return e.addListener(r),()=>e.removeListener(r)}),[s,t,n]),(0,r.useMemo)((()=>({colorMode:o,setColorMode:s,get isDarkTheme(){return o===p},setLightTheme(){s(d)},setDarkTheme(){s(p)}})),[o,s])}function g(e){let{children:t}=e;const n=m();return r.createElement(s.Provider,{value:n},t)}function h(){const e=(0,r.useContext)(s);if(null==e)throw new o.i6("ColorModeProvider","Please see https://docusaurus.io/docs/api/themes/configuration#use-color-mode.");return e}},373:(e,t,n)=>{"use strict";n.d(t,{J:()=>y,L5:()=>b});var r=n(7294),a=n(143),o=n(9935),i=n(6668),l=n(3438),s=n(902),u=n(12);const c=e=>`docs-preferred-version-${e}`,d=(e,t,n)=>{(0,u.W)(c(e),{persistence:t}).set(n)},p=(e,t)=>(0,u.W)(c(e),{persistence:t}).get(),f=(e,t)=>{(0,u.W)(c(e),{persistence:t}).del()};const m=r.createContext(null);function g(){const e=(0,a._r)(),t=(0,i.L)().docs.versionPersistence,n=(0,r.useMemo)((()=>Object.keys(e)),[e]),[o,l]=(0,r.useState)((()=>(e=>Object.fromEntries(e.map((e=>[e,{preferredVersionName:null}]))))(n)));(0,r.useEffect)((()=>{l(function(e){let{pluginIds:t,versionPersistence:n,allDocsData:r}=e;function a(e){const t=p(e,n);return r[e].versions.some((e=>e.name===t))?{preferredVersionName:t}:(f(e,n),{preferredVersionName:null})}return Object.fromEntries(t.map((e=>[e,a(e)])))}({allDocsData:e,versionPersistence:t,pluginIds:n}))}),[e,t,n]);return[o,(0,r.useMemo)((()=>({savePreferredVersion:function(e,n){d(e,t,n),l((t=>({...t,[e]:{preferredVersionName:n}})))}})),[t])]}function h(e){let{children:t}=e;const n=g();return r.createElement(m.Provider,{value:n},t)}function b(e){let{children:t}=e;return l.cE?r.createElement(h,null,t):r.createElement(r.Fragment,null,t)}function v(){const e=(0,r.useContext)(m);if(!e)throw new s.i6("DocsPreferredVersionContextProvider");return e}function y(e){void 0===e&&(e=o.m);const t=(0,a.zh)(e),[n,i]=v(),{preferredVersionName:l}=n[e];return{preferredVersion:t.versions.find((e=>e.name===l))??null,savePreferredVersionName:(0,r.useCallback)((t=>{i.savePreferredVersion(e,t)}),[i,e])}}},1116:(e,t,n)=>{"use strict";n.d(t,{V:()=>s,b:()=>l});var r=n(7294),a=n(902);const o=Symbol("EmptyContext"),i=r.createContext(o);function l(e){let{children:t,name:n,items:a}=e;const o=(0,r.useMemo)((()=>n&&a?{name:n,items:a}:null),[n,a]);return r.createElement(i.Provider,{value:o},t)}function s(){const e=(0,r.useContext)(i);if(e===o)throw new a.i6("DocsSidebarProvider");return e}},4477:(e,t,n)=>{"use strict";n.d(t,{E:()=>l,q:()=>i});var r=n(7294),a=n(902);const o=r.createContext(null);function i(e){let{children:t,version:n}=e;return r.createElement(o.Provider,{value:n},t)}function l(){const e=(0,r.useContext)(o);if(null===e)throw new a.i6("DocsVersionProvider");return e}},2961:(e,t,n)=>{"use strict";n.d(t,{M:()=>p,e:()=>f});var r=n(7294),a=n(3102),o=n(7524),i=n(6775),l=n(902);function s(e){!function(e){const t=(0,i.k6)(),n=(0,l.zX)(e);(0,r.useEffect)((()=>t.block(((e,t)=>n(e,t)))),[t,n])}(((t,n)=>{if("POP"===n)return e(t,n)}))}var u=n(6668);const c=r.createContext(void 0);function d(){const e=function(){const e=(0,a.HY)(),{items:t}=(0,u.L)().navbar;return 0===t.length&&!e.component}(),t=(0,o.i)(),n=!e&&"mobile"===t,[i,l]=(0,r.useState)(!1);s((()=>{if(i)return l(!1),!1}));const c=(0,r.useCallback)((()=>{l((e=>!e))}),[]);return(0,r.useEffect)((()=>{"desktop"===t&&l(!1)}),[t]),(0,r.useMemo)((()=>({disabled:e,shouldRender:n,toggle:c,shown:i})),[e,n,c,i])}function p(e){let{children:t}=e;const n=d();return r.createElement(c.Provider,{value:n},t)}function f(){const e=r.useContext(c);if(void 0===e)throw new l.i6("NavbarMobileSidebarProvider");return e}},3102:(e,t,n)=>{"use strict";n.d(t,{HY:()=>l,Zo:()=>s,n2:()=>i});var r=n(7294),a=n(902);const o=r.createContext(null);function i(e){let{children:t}=e;const n=(0,r.useState)({component:null,props:null});return r.createElement(o.Provider,{value:n},t)}function l(){const e=(0,r.useContext)(o);if(!e)throw new a.i6("NavbarSecondaryMenuContentProvider");return e[0]}function s(e){let{component:t,props:n}=e;const i=(0,r.useContext)(o);if(!i)throw new a.i6("NavbarSecondaryMenuContentProvider");const[,l]=i,s=(0,a.Ql)(n);return(0,r.useEffect)((()=>{l({component:t,props:s})}),[l,t,s]),(0,r.useEffect)((()=>()=>l({component:null,props:null})),[l]),null}},7094:(e,t,n)=>{"use strict";n.d(t,{U:()=>u,z:()=>s});var r=n(7294),a=n(12),o=n(902);const i="docusaurus.tab.",l=r.createContext(void 0);function s(e){let{children:t}=e;const n=function(){const[e,t]=(0,r.useState)({}),n=(0,r.useCallback)(((e,t)=>{(0,a.W)(`docusaurus.tab.${e}`).set(t)}),[]);(0,r.useEffect)((()=>{try{const e={};(0,a._)().forEach((t=>{if(t.startsWith(i)){const n=t.substring(i.length);e[n]=(0,a.W)(t).get()}})),t(e)}catch(e){console.error(e)}}),[]);const o=(0,r.useCallback)(((e,r)=>{t((t=>({...t,[e]:r}))),n(e,r)}),[n]);return(0,r.useMemo)((()=>({tabGroupChoices:e,setTabGroupChoices:o})),[e,o])}();return r.createElement(l.Provider,{value:n},t)}function u(){const e=(0,r.useContext)(l);if(null==e)throw new o.i6("TabGroupChoiceProvider");return e}},9727:(e,t,n)=>{"use strict";n.d(t,{h:()=>a,t:()=>o});var r=n(7294);const a="navigation-with-keyboard";function o(){(0,r.useEffect)((()=>{function e(e){"keydown"===e.type&&"Tab"===e.key&&document.body.classList.add(a),"mousedown"===e.type&&document.body.classList.remove(a)}return document.addEventListener("keydown",e),document.addEventListener("mousedown",e),()=>{document.body.classList.remove(a),document.removeEventListener("keydown",e),document.removeEventListener("mousedown",e)}}),[])}},7524:(e,t,n)=>{"use strict";n.d(t,{i:()=>u});var r=n(7294),a=n(412);const o="desktop",i="mobile",l="ssr";function s(){return a.Z.canUseDOM?window.innerWidth>996?o:i:l}function u(){const[e,t]=(0,r.useState)((()=>s()));return(0,r.useEffect)((()=>{function e(){t(s())}return window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e),clearTimeout(undefined)}}),[]),e}},5281:(e,t,n)=>{"use strict";n.d(t,{k:()=>r});const r={page:{blogListPage:"blog-list-page",blogPostPage:"blog-post-page",blogTagsListPage:"blog-tags-list-page",blogTagPostListPage:"blog-tags-post-list-page",docsDocPage:"docs-doc-page",docsTagsListPage:"docs-tags-list-page",docsTagDocListPage:"docs-tags-doc-list-page",mdxPage:"mdx-page"},wrapper:{main:"main-wrapper",blogPages:"blog-wrapper",docsPages:"docs-wrapper",mdxPages:"mdx-wrapper"},common:{editThisPage:"theme-edit-this-page",lastUpdated:"theme-last-updated",backToTopButton:"theme-back-to-top-button",codeBlock:"theme-code-block",admonition:"theme-admonition",admonitionType:e=>`theme-admonition-${e}`},layout:{},docs:{docVersionBanner:"theme-doc-version-banner",docVersionBadge:"theme-doc-version-badge",docBreadcrumbs:"theme-doc-breadcrumbs",docMarkdown:"theme-doc-markdown",docTocMobile:"theme-doc-toc-mobile",docTocDesktop:"theme-doc-toc-desktop",docFooter:"theme-doc-footer",docFooterTagsRow:"theme-doc-footer-tags-row",docFooterEditMetaRow:"theme-doc-footer-edit-meta-row",docSidebarContainer:"theme-doc-sidebar-container",docSidebarMenu:"theme-doc-sidebar-menu",docSidebarItemCategory:"theme-doc-sidebar-item-category",docSidebarItemLink:"theme-doc-sidebar-item-link",docSidebarItemCategoryLevel:e=>`theme-doc-sidebar-item-category-level-${e}`,docSidebarItemLinkLevel:e=>`theme-doc-sidebar-item-link-level-${e}`},blog:{}}},3438:(e,t,n)=>{"use strict";n.d(t,{MN:()=>x,Wl:()=>m,_F:()=>b,cE:()=>p,hI:()=>S,jA:()=>g,lO:()=>w,oz:()=>k,s1:()=>y,vY:()=>E,xz:()=>f});var r=n(7294),a=n(6775),o=n(8790),i=n(143),l=n(373),s=n(4477),u=n(1116),c=n(7392),d=n(8596);const p=!!i._r;function f(e){const t=(0,s.E)();if(!e)return;const n=t.docs[e];if(!n)throw new Error(`no version doc found by id=${e}`);return n}function m(e){if(e.href)return e.href;for(const t of e.items){if("link"===t.type)return t.href;if("category"===t.type){const e=m(t);if(e)return e}}}function g(){const{pathname:e}=(0,a.TH)(),t=(0,u.V)();if(!t)throw new Error("Unexpected: cant find current sidebar in context");const n=v({sidebarItems:t.items,pathname:e,onlyCategories:!0}).slice(-1)[0];if(!n)throw new Error(`${e} is not associated with a category. useCurrentSidebarCategory() should only be used on category index pages.`);return n}const h=(e,t)=>void 0!==e&&(0,d.Mg)(e,t);function b(e,t){return"link"===e.type?h(e.href,t):"category"===e.type&&(h(e.href,t)||((e,t)=>e.some((e=>b(e,t))))(e.items,t))}function v(e){let{sidebarItems:t,pathname:n,onlyCategories:r=!1}=e;const a=[];return function e(t){for(const o of t)if("category"===o.type&&((0,d.Mg)(o.href,n)||e(o.items))||"link"===o.type&&(0,d.Mg)(o.href,n)){return r&&"category"!==o.type||a.unshift(o),!0}return!1}(t),a}function y(){var e;const t=(0,u.V)(),{pathname:n}=(0,a.TH)();return!1!==(null==(e=(0,i.gA)())?void 0:e.pluginData.breadcrumbs)&&t?v({sidebarItems:t.items,pathname:n}):null}function w(e){const{activeVersion:t}=(0,i.Iw)(e),{preferredVersion:n}=(0,l.J)(e),a=(0,i.yW)(e);return(0,r.useMemo)((()=>(0,c.j)([t,n,a].filter(Boolean))),[t,n,a])}function k(e,t){const n=w(t);return(0,r.useMemo)((()=>{const t=n.flatMap((e=>e.sidebars?Object.entries(e.sidebars):[])),r=t.find((t=>t[0]===e));if(!r)throw new Error(`Can't find any sidebar with id "${e}" in version${n.length>1?"s":""} ${n.map((e=>e.name)).join(", ")}".\n Available sidebar ids are:\n - ${Object.keys(t).join("\n- ")}`);return r[1]}),[e,n])}function E(e,t){const n=w(t);return(0,r.useMemo)((()=>{const t=n.flatMap((e=>e.docs)),r=t.find((t=>t.id===e));if(!r){if(n.flatMap((e=>e.draftIds)).includes(e))return null;throw new Error(`DocNavbarItem: couldn't find any doc with id "${e}" in version${n.length>1?"s":""} ${n.map((e=>e.name)).join(", ")}".\nAvailable doc ids are:\n- ${(0,c.j)(t.map((e=>e.id))).join("\n- ")}`)}return r}),[e,n])}function S(e){let{route:t,versionMetadata:n}=e;const r=(0,a.TH)(),i=t.routes,l=i.find((e=>(0,a.LX)(r.pathname,e)));if(!l)return null;const s=l.sidebar,u=s?n.docsSidebars[s]:void 0;return{docElement:(0,o.H)(i),sidebarName:s,sidebarItems:u}}function x(e){return e.filter((e=>"category"!==e.type||!!m(e)))}},7392:(e,t,n)=>{"use strict";function r(e,t){return void 0===t&&(t=(e,t)=>e===t),e.filter(((n,r)=>e.findIndex((e=>t(e,n)))!==r))}function a(e){return Array.from(new Set(e))}n.d(t,{j:()=>a,l:()=>r})},1944:(e,t,n)=>{"use strict";n.d(t,{FG:()=>p,d:()=>c,VC:()=>f});var r=n(7294),a=n(6010),o=n(5742),i=n(226);function l(){const e=r.useContext(i._);if(!e)throw new Error("Unexpected: no Docusaurus route context found");return e}var s=n(4996),u=n(2263);function c(e){let{title:t,description:n,keywords:a,image:i,children:l}=e;const c=function(e){const{siteConfig:t}=(0,u.Z)(),{title:n,titleDelimiter:r}=t;return null!=e&&e.trim().length?`${e.trim()} ${r} ${n}`:n}(t),{withBaseUrl:d}=(0,s.C)(),p=i?d(i,{absolute:!0}):void 0;return r.createElement(o.Z,null,t&&r.createElement("title",null,c),t&&r.createElement("meta",{property:"og:title",content:c}),n&&r.createElement("meta",{name:"description",content:n}),n&&r.createElement("meta",{property:"og:description",content:n}),a&&r.createElement("meta",{name:"keywords",content:Array.isArray(a)?a.join(","):a}),p&&r.createElement("meta",{property:"og:image",content:p}),p&&r.createElement("meta",{name:"twitter:image",content:p}),l)}const d=r.createContext(void 0);function p(e){let{className:t,children:n}=e;const i=r.useContext(d),l=(0,a.Z)(i,t);return r.createElement(d.Provider,{value:l},r.createElement(o.Z,null,r.createElement("html",{className:l})),n)}function f(e){let{children:t}=e;const n=l(),o=`plugin-${n.plugin.name.replace(/docusaurus-(?:plugin|theme)-(?:content-)?/gi,"")}`;const i=`plugin-id-${n.plugin.id}`;return r.createElement(p,{className:(0,a.Z)(o,i)},t)}},902:(e,t,n)=>{"use strict";n.d(t,{D9:()=>i,Qc:()=>u,Ql:()=>s,i6:()=>l,zX:()=>o});var r=n(7294);const a=n(412).Z.canUseDOM?r.useLayoutEffect:r.useEffect;function o(e){const t=(0,r.useRef)(e);return a((()=>{t.current=e}),[e]),(0,r.useCallback)((function(){return t.current(...arguments)}),[])}function i(e){const t=(0,r.useRef)();return a((()=>{t.current=e})),t.current}class l extends Error{constructor(e,t){var n,r,a;super(),this.name="ReactContextError",this.message=`Hook ${(null==(n=this.stack)||null==(r=n.split("\n")[1])||null==(a=r.match(/at (?:\w+\.)?(?<name>\w+)/))?void 0:a.groups.name)??""} is called outside the <${e}>. ${t??""}`}}function s(e){const t=Object.entries(e);return t.sort(((e,t)=>e[0].localeCompare(t[0]))),(0,r.useMemo)((()=>e),t.flat())}function u(e){return t=>{let{children:n}=t;return r.createElement(r.Fragment,null,e.reduceRight(((e,t)=>r.createElement(t,null,e)),n))}}},8596:(e,t,n)=>{"use strict";n.d(t,{Mg:()=>i,Ns:()=>l});var r=n(7294),a=n(723),o=n(2263);function i(e,t){const n=e=>{var t;return null==(t=!e||e.endsWith("/")?e:`${e}/`)?void 0:t.toLowerCase()};return n(e)===n(t)}function l(){const{baseUrl:e}=(0,o.Z)().siteConfig;return(0,r.useMemo)((()=>function(e){let{baseUrl:t,routes:n}=e;function r(e){return e.path===t&&!0===e.exact}function a(e){return e.path===t&&!e.exact}return function e(t){if(0===t.length)return;return t.find(r)||e(t.filter(a).flatMap((e=>e.routes??[])))}(n)}({routes:a.Z,baseUrl:e})),[e])}},2466:(e,t,n)=>{"use strict";n.d(t,{Ct:()=>f,OC:()=>s,RF:()=>d,o5:()=>p});var r=n(7294),a=n(412),o=n(2389),i=n(902);const l=r.createContext(void 0);function s(e){let{children:t}=e;const n=function(){const e=(0,r.useRef)(!0);return(0,r.useMemo)((()=>({scrollEventsEnabledRef:e,enableScrollEvents:()=>{e.current=!0},disableScrollEvents:()=>{e.current=!1}})),[])}();return r.createElement(l.Provider,{value:n},t)}function u(){const e=(0,r.useContext)(l);if(null==e)throw new i.i6("ScrollControllerProvider");return e}const c=()=>a.Z.canUseDOM?{scrollX:window.pageXOffset,scrollY:window.pageYOffset}:null;function d(e,t){void 0===t&&(t=[]);const{scrollEventsEnabledRef:n}=u(),a=(0,r.useRef)(c()),o=(0,i.zX)(e);(0,r.useEffect)((()=>{const e=()=>{if(!n.current)return;const e=c();o(e,a.current),a.current=e},t={passive:!0};return e(),window.addEventListener("scroll",e,t),()=>window.removeEventListener("scroll",e,t)}),[o,n,...t])}function p(){const e=u(),t=function(){const e=(0,r.useRef)({elem:null,top:0}),t=(0,r.useCallback)((t=>{e.current={elem:t,top:t.getBoundingClientRect().top}}),[]),n=(0,r.useCallback)((()=>{const{current:{elem:t,top:n}}=e;if(!t)return{restored:!1};const r=t.getBoundingClientRect().top-n;return r&&window.scrollBy({left:0,top:r}),e.current={elem:null,top:0},{restored:0!==r}}),[]);return(0,r.useMemo)((()=>({save:t,restore:n})),[n,t])}(),n=(0,r.useRef)(void 0),a=(0,r.useCallback)((r=>{t.save(r),e.disableScrollEvents(),n.current=()=>{const{restored:r}=t.restore();if(n.current=void 0,r){const t=()=>{e.enableScrollEvents(),window.removeEventListener("scroll",t)};window.addEventListener("scroll",t)}else e.enableScrollEvents()}}),[e,t]);return(0,r.useLayoutEffect)((()=>{null==n.current||n.current()})),{blockElementScrollPositionUntilNextRender:a}}function f(){const e=(0,r.useRef)(null),t=(0,o.Z)()&&"smooth"===getComputedStyle(document.documentElement).scrollBehavior;return{startScroll:n=>{e.current=t?function(e){return window.scrollTo({top:e,behavior:"smooth"}),()=>{}}(n):function(e){let t=null;const n=document.documentElement.scrollTop>e;return function r(){const a=document.documentElement.scrollTop;(n&&a>e||!n&&a<e)&&(t=requestAnimationFrame(r),window.scrollTo(0,Math.floor(.85*(a-e))+e))}(),()=>t&&cancelAnimationFrame(t)}(n)},cancelScroll:()=>null==e.current?void 0:e.current()}}},3320:(e,t,n)=>{"use strict";n.d(t,{HX:()=>r,os:()=>a});n(2263);const r="default";function a(e,t){return`docs-${e}-${t}`}},12:(e,t,n)=>{"use strict";n.d(t,{W:()=>l,_:()=>s});const r="localStorage";function a(e){if(void 0===e&&(e=r),"undefined"==typeof window)throw new Error("Browser storage is not available on Node.js/Docusaurus SSR process.");if("none"===e)return null;try{return window[e]}catch(n){return t=n,o||(console.warn("Docusaurus browser storage is not available.\nPossible reasons: running Docusaurus in an iframe, in an incognito browser session, or using too strict browser privacy settings.",t),o=!0),null}var t}let o=!1;const i={get:()=>null,set:()=>{},del:()=>{}};function l(e,t){if("undefined"==typeof window)return function(e){function t(){throw new Error(`Illegal storage API usage for storage key "${e}".\nDocusaurus storage APIs are not supposed to be called on the server-rendering process.\nPlease only call storage APIs in effects and event handlers.`)}return{get:t,set:t,del:t}}(e);const n=a(null==t?void 0:t.persistence);return null===n?i:{get:()=>{try{return n.getItem(e)}catch(t){return console.error(`Docusaurus storage error, can't get key=${e}`,t),null}},set:t=>{try{n.setItem(e,t)}catch(r){console.error(`Docusaurus storage error, can't set ${e}=${t}`,r)}},del:()=>{try{n.removeItem(e)}catch(t){console.error(`Docusaurus storage error, can't delete key=${e}`,t)}}}}function s(e){void 0===e&&(e=r);const t=a(e);if(!t)return[];const n=[];for(let r=0;r<t.length;r+=1){const e=t.key(r);null!==e&&n.push(e)}return n}},4711:(e,t,n)=>{"use strict";n.d(t,{l:()=>o});var r=n(2263),a=n(6775);function o(){const{siteConfig:{baseUrl:e,url:t},i18n:{defaultLocale:n,currentLocale:o}}=(0,r.Z)(),{pathname:i}=(0,a.TH)(),l=o===n?e:e.replace(`/${o}/`,"/"),s=i.replace(e,"");return{createUrl:function(e){let{locale:r,fullyQualified:a}=e;return`${a?t:""}${function(e){return e===n?`${l}`:`${l}${e}/`}(r)}${s}`}}}},5936:(e,t,n)=>{"use strict";n.d(t,{S:()=>i});var r=n(7294),a=n(6775),o=n(902);function i(e){const t=(0,a.TH)(),n=(0,o.D9)(t),i=(0,o.zX)(e);(0,r.useEffect)((()=>{n&&t!==n&&i({location:t,previousLocation:n})}),[i,t,n])}},6668:(e,t,n)=>{"use strict";n.d(t,{L:()=>a});var r=n(2263);function a(){return(0,r.Z)().siteConfig.themeConfig}},8802:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const{trailingSlash:n,baseUrl:r}=t;if(e.startsWith("#"))return e;if(void 0===n)return e;const[a]=e.split(/[#?]/),o="/"===a||a===r?a:(i=a,n?function(e){return e.endsWith("/")?e:`${e}/`}(i):function(e){return e.endsWith("/")?e.slice(0,-1):e}(i));var i;return e.replace(a,o)}},8780:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.applyTrailingSlash=t.blogPostContainerID=void 0,t.blogPostContainerID="post-content";var a=n(8802);Object.defineProperty(t,"applyTrailingSlash",{enumerable:!0,get:function(){return r(a).default}})},6010:(e,t,n)=>{"use strict";function r(e){var t,n,a="";if("string"==typeof e||"number"==typeof e)a+=e;else if("object"==typeof e)if(Array.isArray(e))for(t=0;t<e.length;t++)e[t]&&(n=r(e[t]))&&(a&&(a+=" "),a+=n);else for(t in e)e[t]&&(a&&(a+=" "),a+=t);return a}n.d(t,{Z:()=>a});const a=function(){for(var e,t,n=0,a="";n<arguments.length;)(e=arguments[n++])&&(t=r(e))&&(a&&(a+=" "),a+=t);return a}},9318:(e,t,n)=>{"use strict";n.d(t,{lX:()=>w,q_:()=>_,ob:()=>f,PP:()=>A,Ep:()=>p});var r=n(7462);function a(e){return"/"===e.charAt(0)}function o(e,t){for(var n=t,r=n+1,a=e.length;r<a;n+=1,r+=1)e[n]=e[r];e.pop()}const i=function(e,t){void 0===t&&(t="");var n,r=e&&e.split("/")||[],i=t&&t.split("/")||[],l=e&&a(e),s=t&&a(t),u=l||s;if(e&&a(e)?i=r:r.length&&(i.pop(),i=i.concat(r)),!i.length)return"/";if(i.length){var c=i[i.length-1];n="."===c||".."===c||""===c}else n=!1;for(var d=0,p=i.length;p>=0;p--){var f=i[p];"."===f?o(i,p):".."===f?(o(i,p),d++):d&&(o(i,p),d--)}if(!u)for(;d--;d)i.unshift("..");!u||""===i[0]||i[0]&&a(i[0])||i.unshift("");var m=i.join("/");return n&&"/"!==m.substr(-1)&&(m+="/"),m};var l=n(2177);function s(e){return"/"===e.charAt(0)?e:"/"+e}function u(e){return"/"===e.charAt(0)?e.substr(1):e}function c(e,t){return function(e,t){return 0===e.toLowerCase().indexOf(t.toLowerCase())&&-1!=="/?#".indexOf(e.charAt(t.length))}(e,t)?e.substr(t.length):e}function d(e){return"/"===e.charAt(e.length-1)?e.slice(0,-1):e}function p(e){var t=e.pathname,n=e.search,r=e.hash,a=t||"/";return n&&"?"!==n&&(a+="?"===n.charAt(0)?n:"?"+n),r&&"#"!==r&&(a+="#"===r.charAt(0)?r:"#"+r),a}function f(e,t,n,a){var o;"string"==typeof e?(o=function(e){var t=e||"/",n="",r="",a=t.indexOf("#");-1!==a&&(r=t.substr(a),t=t.substr(0,a));var o=t.indexOf("?");return-1!==o&&(n=t.substr(o),t=t.substr(0,o)),{pathname:t,search:"?"===n?"":n,hash:"#"===r?"":r}}(e),o.state=t):(void 0===(o=(0,r.Z)({},e)).pathname&&(o.pathname=""),o.search?"?"!==o.search.charAt(0)&&(o.search="?"+o.search):o.search="",o.hash?"#"!==o.hash.charAt(0)&&(o.hash="#"+o.hash):o.hash="",void 0!==t&&void 0===o.state&&(o.state=t));try{o.pathname=decodeURI(o.pathname)}catch(l){throw l instanceof URIError?new URIError('Pathname "'+o.pathname+'" could not be decoded. This is likely caused by an invalid percent-encoding.'):l}return n&&(o.key=n),a?o.pathname?"/"!==o.pathname.charAt(0)&&(o.pathname=i(o.pathname,a.pathname)):o.pathname=a.pathname:o.pathname||(o.pathname="/"),o}function m(){var e=null;var t=[];return{setPrompt:function(t){return e=t,function(){e===t&&(e=null)}},confirmTransitionTo:function(t,n,r,a){if(null!=e){var o="function"==typeof e?e(t,n):e;"string"==typeof o?"function"==typeof r?r(o,a):a(!0):a(!1!==o)}else a(!0)},appendListener:function(e){var n=!0;function r(){n&&e.apply(void 0,arguments)}return t.push(r),function(){n=!1,t=t.filter((function(e){return e!==r}))}},notifyListeners:function(){for(var e=arguments.length,n=new Array(e),r=0;r<e;r++)n[r]=arguments[r];t.forEach((function(e){return e.apply(void 0,n)}))}}}var g=!("undefined"==typeof window||!window.document||!window.document.createElement);function h(e,t){t(window.confirm(e))}var b="popstate",v="hashchange";function y(){try{return window.history.state||{}}catch(e){return{}}}function w(e){void 0===e&&(e={}),g||(0,l.Z)(!1);var t,n=window.history,a=(-1===(t=window.navigator.userAgent).indexOf("Android 2.")&&-1===t.indexOf("Android 4.0")||-1===t.indexOf("Mobile Safari")||-1!==t.indexOf("Chrome")||-1!==t.indexOf("Windows Phone"))&&window.history&&"pushState"in window.history,o=!(-1===window.navigator.userAgent.indexOf("Trident")),i=e,u=i.forceRefresh,w=void 0!==u&&u,k=i.getUserConfirmation,E=void 0===k?h:k,S=i.keyLength,x=void 0===S?6:S,C=e.basename?d(s(e.basename)):"";function _(e){var t=e||{},n=t.key,r=t.state,a=window.location,o=a.pathname+a.search+a.hash;return C&&(o=c(o,C)),f(o,r,n)}function T(){return Math.random().toString(36).substr(2,x)}var A=m();function L(e){(0,r.Z)(U,e),U.length=n.length,A.notifyListeners(U.location,U.action)}function P(e){(function(e){return void 0===e.state&&-1===navigator.userAgent.indexOf("CriOS")})(e)||O(_(e.state))}function R(){O(_(y()))}var N=!1;function O(e){if(N)N=!1,L();else{A.confirmTransitionTo(e,"POP",E,(function(t){t?L({action:"POP",location:e}):function(e){var t=U.location,n=D.indexOf(t.key);-1===n&&(n=0);var r=D.indexOf(e.key);-1===r&&(r=0);var a=n-r;a&&(N=!0,F(a))}(e)}))}}var I=_(y()),D=[I.key];function M(e){return C+p(e)}function F(e){n.go(e)}var B=0;function j(e){1===(B+=e)&&1===e?(window.addEventListener(b,P),o&&window.addEventListener(v,R)):0===B&&(window.removeEventListener(b,P),o&&window.removeEventListener(v,R))}var z=!1;var U={length:n.length,action:"POP",location:I,createHref:M,push:function(e,t){var r="PUSH",o=f(e,t,T(),U.location);A.confirmTransitionTo(o,r,E,(function(e){if(e){var t=M(o),i=o.key,l=o.state;if(a)if(n.pushState({key:i,state:l},null,t),w)window.location.href=t;else{var s=D.indexOf(U.location.key),u=D.slice(0,s+1);u.push(o.key),D=u,L({action:r,location:o})}else window.location.href=t}}))},replace:function(e,t){var r="REPLACE",o=f(e,t,T(),U.location);A.confirmTransitionTo(o,r,E,(function(e){if(e){var t=M(o),i=o.key,l=o.state;if(a)if(n.replaceState({key:i,state:l},null,t),w)window.location.replace(t);else{var s=D.indexOf(U.location.key);-1!==s&&(D[s]=o.key),L({action:r,location:o})}else window.location.replace(t)}}))},go:F,goBack:function(){F(-1)},goForward:function(){F(1)},block:function(e){void 0===e&&(e=!1);var t=A.setPrompt(e);return z||(j(1),z=!0),function(){return z&&(z=!1,j(-1)),t()}},listen:function(e){var t=A.appendListener(e);return j(1),function(){j(-1),t()}}};return U}var k="hashchange",E={hashbang:{encodePath:function(e){return"!"===e.charAt(0)?e:"!/"+u(e)},decodePath:function(e){return"!"===e.charAt(0)?e.substr(1):e}},noslash:{encodePath:u,decodePath:s},slash:{encodePath:s,decodePath:s}};function S(e){var t=e.indexOf("#");return-1===t?e:e.slice(0,t)}function x(){var e=window.location.href,t=e.indexOf("#");return-1===t?"":e.substring(t+1)}function C(e){window.location.replace(S(window.location.href)+"#"+e)}function _(e){void 0===e&&(e={}),g||(0,l.Z)(!1);var t=window.history,n=(window.navigator.userAgent.indexOf("Firefox"),e),a=n.getUserConfirmation,o=void 0===a?h:a,i=n.hashType,u=void 0===i?"slash":i,b=e.basename?d(s(e.basename)):"",v=E[u],y=v.encodePath,w=v.decodePath;function _(){var e=w(x());return b&&(e=c(e,b)),f(e)}var T=m();function A(e){(0,r.Z)(z,e),z.length=t.length,T.notifyListeners(z.location,z.action)}var L=!1,P=null;function R(){var e,t,n=x(),r=y(n);if(n!==r)C(r);else{var a=_(),i=z.location;if(!L&&(t=a,(e=i).pathname===t.pathname&&e.search===t.search&&e.hash===t.hash))return;if(P===p(a))return;P=null,function(e){if(L)L=!1,A();else{var t="POP";T.confirmTransitionTo(e,t,o,(function(n){n?A({action:t,location:e}):function(e){var t=z.location,n=D.lastIndexOf(p(t));-1===n&&(n=0);var r=D.lastIndexOf(p(e));-1===r&&(r=0);var a=n-r;a&&(L=!0,M(a))}(e)}))}}(a)}}var N=x(),O=y(N);N!==O&&C(O);var I=_(),D=[p(I)];function M(e){t.go(e)}var F=0;function B(e){1===(F+=e)&&1===e?window.addEventListener(k,R):0===F&&window.removeEventListener(k,R)}var j=!1;var z={length:t.length,action:"POP",location:I,createHref:function(e){var t=document.querySelector("base"),n="";return t&&t.getAttribute("href")&&(n=S(window.location.href)),n+"#"+y(b+p(e))},push:function(e,t){var n="PUSH",r=f(e,void 0,void 0,z.location);T.confirmTransitionTo(r,n,o,(function(e){if(e){var t=p(r),a=y(b+t);if(x()!==a){P=t,function(e){window.location.hash=e}(a);var o=D.lastIndexOf(p(z.location)),i=D.slice(0,o+1);i.push(t),D=i,A({action:n,location:r})}else A()}}))},replace:function(e,t){var n="REPLACE",r=f(e,void 0,void 0,z.location);T.confirmTransitionTo(r,n,o,(function(e){if(e){var t=p(r),a=y(b+t);x()!==a&&(P=t,C(a));var o=D.indexOf(p(z.location));-1!==o&&(D[o]=t),A({action:n,location:r})}}))},go:M,goBack:function(){M(-1)},goForward:function(){M(1)},block:function(e){void 0===e&&(e=!1);var t=T.setPrompt(e);return j||(B(1),j=!0),function(){return j&&(j=!1,B(-1)),t()}},listen:function(e){var t=T.appendListener(e);return B(1),function(){B(-1),t()}}};return z}function T(e,t,n){return Math.min(Math.max(e,t),n)}function A(e){void 0===e&&(e={});var t=e,n=t.getUserConfirmation,a=t.initialEntries,o=void 0===a?["/"]:a,i=t.initialIndex,l=void 0===i?0:i,s=t.keyLength,u=void 0===s?6:s,c=m();function d(e){(0,r.Z)(w,e),w.length=w.entries.length,c.notifyListeners(w.location,w.action)}function g(){return Math.random().toString(36).substr(2,u)}var h=T(l,0,o.length-1),b=o.map((function(e){return f(e,void 0,"string"==typeof e?g():e.key||g())})),v=p;function y(e){var t=T(w.index+e,0,w.entries.length-1),r=w.entries[t];c.confirmTransitionTo(r,"POP",n,(function(e){e?d({action:"POP",location:r,index:t}):d()}))}var w={length:b.length,action:"POP",location:b[h],index:h,entries:b,createHref:v,push:function(e,t){var r="PUSH",a=f(e,t,g(),w.location);c.confirmTransitionTo(a,r,n,(function(e){if(e){var t=w.index+1,n=w.entries.slice(0);n.length>t?n.splice(t,n.length-t,a):n.push(a),d({action:r,location:a,index:t,entries:n})}}))},replace:function(e,t){var r="REPLACE",a=f(e,t,g(),w.location);c.confirmTransitionTo(a,r,n,(function(e){e&&(w.entries[w.index]=a,d({action:r,location:a}))}))},go:y,goBack:function(){y(-1)},goForward:function(){y(1)},canGo:function(e){var t=w.index+e;return t>=0&&t<w.entries.length},block:function(e){return void 0===e&&(e=!1),c.setPrompt(e)},listen:function(e){return c.appendListener(e)}};return w}},8679:(e,t,n)=>{"use strict";var r=n(9864),a={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},o={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},i={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},l={};function s(e){return r.isMemo(e)?i:l[e.$$typeof]||a}l[r.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},l[r.Memo]=i;var u=Object.defineProperty,c=Object.getOwnPropertyNames,d=Object.getOwnPropertySymbols,p=Object.getOwnPropertyDescriptor,f=Object.getPrototypeOf,m=Object.prototype;e.exports=function e(t,n,r){if("string"!=typeof n){if(m){var a=f(n);a&&a!==m&&e(t,a,r)}var i=c(n);d&&(i=i.concat(d(n)));for(var l=s(t),g=s(n),h=0;h<i.length;++h){var b=i[h];if(!(o[b]||r&&r[b]||g&&g[b]||l&&l[b])){var v=p(n,b);try{u(t,b,v)}catch(y){}}}}return t}},1143:e=>{"use strict";e.exports=function(e,t,n,r,a,o,i,l){if(!e){var s;if(void 0===t)s=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var u=[n,r,a,o,i,l],c=0;(s=new Error(t.replace(/%s/g,(function(){return u[c++]})))).name="Invariant Violation"}throw s.framesToPop=1,s}}},5826:e=>{e.exports=Array.isArray||function(e){return"[object Array]"==Object.prototype.toString.call(e)}},2497:(e,t,n)=>{"use strict";n.r(t)},2295:(e,t,n)=>{"use strict";n.r(t)},4865:function(e,t,n){var r,a;r=function(){var e,t,n={version:"0.2.0"},r=n.settings={minimum:.08,easing:"ease",positionUsing:"",speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,showSpinner:!0,barSelector:'[role="bar"]',spinnerSelector:'[role="spinner"]',parent:"body",template:'<div class="bar" role="bar"><div class="peg"></div></div><div class="spinner" role="spinner"><div class="spinner-icon"></div></div>'};function a(e,t,n){return e<t?t:e>n?n:e}function o(e){return 100*(-1+e)}function i(e,t,n){var a;return(a="translate3d"===r.positionUsing?{transform:"translate3d("+o(e)+"%,0,0)"}:"translate"===r.positionUsing?{transform:"translate("+o(e)+"%,0)"}:{"margin-left":o(e)+"%"}).transition="all "+t+"ms "+n,a}n.configure=function(e){var t,n;for(t in e)void 0!==(n=e[t])&&e.hasOwnProperty(t)&&(r[t]=n);return this},n.status=null,n.set=function(e){var t=n.isStarted();e=a(e,r.minimum,1),n.status=1===e?null:e;var o=n.render(!t),u=o.querySelector(r.barSelector),c=r.speed,d=r.easing;return o.offsetWidth,l((function(t){""===r.positionUsing&&(r.positionUsing=n.getPositioningCSS()),s(u,i(e,c,d)),1===e?(s(o,{transition:"none",opacity:1}),o.offsetWidth,setTimeout((function(){s(o,{transition:"all "+c+"ms linear",opacity:0}),setTimeout((function(){n.remove(),t()}),c)}),c)):setTimeout(t,c)})),this},n.isStarted=function(){return"number"==typeof n.status},n.start=function(){n.status||n.set(0);var e=function(){setTimeout((function(){n.status&&(n.trickle(),e())}),r.trickleSpeed)};return r.trickle&&e(),this},n.done=function(e){return e||n.status?n.inc(.3+.5*Math.random()).set(1):this},n.inc=function(e){var t=n.status;return t?("number"!=typeof e&&(e=(1-t)*a(Math.random()*t,.1,.95)),t=a(t+e,0,.994),n.set(t)):n.start()},n.trickle=function(){return n.inc(Math.random()*r.trickleRate)},e=0,t=0,n.promise=function(r){return r&&"resolved"!==r.state()?(0===t&&n.start(),e++,t++,r.always((function(){0==--t?(e=0,n.done()):n.set((e-t)/e)})),this):this},n.render=function(e){if(n.isRendered())return document.getElementById("nprogress");c(document.documentElement,"nprogress-busy");var t=document.createElement("div");t.id="nprogress",t.innerHTML=r.template;var a,i=t.querySelector(r.barSelector),l=e?"-100":o(n.status||0),u=document.querySelector(r.parent);return s(i,{transition:"all 0 linear",transform:"translate3d("+l+"%,0,0)"}),r.showSpinner||(a=t.querySelector(r.spinnerSelector))&&f(a),u!=document.body&&c(u,"nprogress-custom-parent"),u.appendChild(t),t},n.remove=function(){d(document.documentElement,"nprogress-busy"),d(document.querySelector(r.parent),"nprogress-custom-parent");var e=document.getElementById("nprogress");e&&f(e)},n.isRendered=function(){return!!document.getElementById("nprogress")},n.getPositioningCSS=function(){var e=document.body.style,t="WebkitTransform"in e?"Webkit":"MozTransform"in e?"Moz":"msTransform"in e?"ms":"OTransform"in e?"O":"";return t+"Perspective"in e?"translate3d":t+"Transform"in e?"translate":"margin"};var l=function(){var e=[];function t(){var n=e.shift();n&&n(t)}return function(n){e.push(n),1==e.length&&t()}}(),s=function(){var e=["Webkit","O","Moz","ms"],t={};function n(e){return e.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,(function(e,t){return t.toUpperCase()}))}function r(t){var n=document.body.style;if(t in n)return t;for(var r,a=e.length,o=t.charAt(0).toUpperCase()+t.slice(1);a--;)if((r=e[a]+o)in n)return r;return t}function a(e){return e=n(e),t[e]||(t[e]=r(e))}function o(e,t,n){t=a(t),e.style[t]=n}return function(e,t){var n,r,a=arguments;if(2==a.length)for(n in t)void 0!==(r=t[n])&&t.hasOwnProperty(n)&&o(e,n,r);else o(e,a[1],a[2])}}();function u(e,t){return("string"==typeof e?e:p(e)).indexOf(" "+t+" ")>=0}function c(e,t){var n=p(e),r=n+t;u(n,t)||(e.className=r.substring(1))}function d(e,t){var n,r=p(e);u(e,t)&&(n=r.replace(" "+t+" "," "),e.className=n.substring(1,n.length-1))}function p(e){return(" "+(e.className||"")+" ").replace(/\s+/gi," ")}function f(e){e&&e.parentNode&&e.parentNode.removeChild(e)}return n},void 0===(a="function"==typeof r?r.call(t,n,t,e):r)||(e.exports=a)},7418:e=>{"use strict";var t=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable;function a(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(a){return!1}}()?Object.assign:function(e,o){for(var i,l,s=a(e),u=1;u<arguments.length;u++){for(var c in i=Object(arguments[u]))n.call(i,c)&&(s[c]=i[c]);if(t){l=t(i);for(var d=0;d<l.length;d++)r.call(i,l[d])&&(s[l[d]]=i[l[d]])}}return s}},7410:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=function(){var e=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,t=0,n={},r={util:{encode:function e(t){return t instanceof a?new a(t.type,e(t.content),t.alias):Array.isArray(t)?t.map(e):t.replace(/&/g,"&").replace(/</g,"<").replace(/\u00a0/g," ")},type:function(e){return Object.prototype.toString.call(e).slice(8,-1)},objId:function(e){return e.__id||Object.defineProperty(e,"__id",{value:++t}),e.__id},clone:function e(t,n){var a,o;switch(n=n||{},r.util.type(t)){case"Object":if(o=r.util.objId(t),n[o])return n[o];for(var i in a={},n[o]=a,t)t.hasOwnProperty(i)&&(a[i]=e(t[i],n));return a;case"Array":return o=r.util.objId(t),n[o]?n[o]:(a=[],n[o]=a,t.forEach((function(t,r){a[r]=e(t,n)})),a);default:return t}},getLanguage:function(t){for(;t;){var n=e.exec(t.className);if(n)return n[1].toLowerCase();t=t.parentElement}return"none"},setLanguage:function(t,n){t.className=t.className.replace(RegExp(e,"gi"),""),t.classList.add("language-"+n)},isActive:function(e,t,n){for(var r="no-"+t;e;){var a=e.classList;if(a.contains(t))return!0;if(a.contains(r))return!1;e=e.parentElement}return!!n}},languages:{plain:n,plaintext:n,text:n,txt:n,extend:function(e,t){var n=r.util.clone(r.languages[e]);for(var a in t)n[a]=t[a];return n},insertBefore:function(e,t,n,a){var o=(a=a||r.languages)[e],i={};for(var l in o)if(o.hasOwnProperty(l)){if(l==t)for(var s in n)n.hasOwnProperty(s)&&(i[s]=n[s]);n.hasOwnProperty(l)||(i[l]=o[l])}var u=a[e];return a[e]=i,r.languages.DFS(r.languages,(function(t,n){n===u&&t!=e&&(this[t]=i)})),i},DFS:function e(t,n,a,o){o=o||{};var i=r.util.objId;for(var l in t)if(t.hasOwnProperty(l)){n.call(t,l,t[l],a||l);var s=t[l],u=r.util.type(s);"Object"!==u||o[i(s)]?"Array"!==u||o[i(s)]||(o[i(s)]=!0,e(s,n,l,o)):(o[i(s)]=!0,e(s,n,null,o))}}},plugins:{},highlight:function(e,t,n){var o={code:e,grammar:t,language:n};return r.hooks.run("before-tokenize",o),o.tokens=r.tokenize(o.code,o.grammar),r.hooks.run("after-tokenize",o),a.stringify(r.util.encode(o.tokens),o.language)},tokenize:function(e,t){var n=t.rest;if(n){for(var r in n)t[r]=n[r];delete t.rest}var a=new l;return s(a,a.head,e),i(e,a,t,a.head,0),function(e){var t=[],n=e.head.next;for(;n!==e.tail;)t.push(n.value),n=n.next;return t}(a)},hooks:{all:{},add:function(e,t){var n=r.hooks.all;n[e]=n[e]||[],n[e].push(t)},run:function(e,t){var n=r.hooks.all[e];if(n&&n.length)for(var a,o=0;a=n[o++];)a(t)}},Token:a};function a(e,t,n,r){this.type=e,this.content=t,this.alias=n,this.length=0|(r||"").length}function o(e,t,n,r){e.lastIndex=t;var a=e.exec(n);if(a&&r&&a[1]){var o=a[1].length;a.index+=o,a[0]=a[0].slice(o)}return a}function i(e,t,n,l,c,d){for(var p in n)if(n.hasOwnProperty(p)&&n[p]){var f=n[p];f=Array.isArray(f)?f:[f];for(var m=0;m<f.length;++m){if(d&&d.cause==p+","+m)return;var g=f[m],h=g.inside,b=!!g.lookbehind,v=!!g.greedy,y=g.alias;if(v&&!g.pattern.global){var w=g.pattern.toString().match(/[imsuy]*$/)[0];g.pattern=RegExp(g.pattern.source,w+"g")}for(var k=g.pattern||g,E=l.next,S=c;E!==t.tail&&!(d&&S>=d.reach);S+=E.value.length,E=E.next){var x=E.value;if(t.length>e.length)return;if(!(x instanceof a)){var C,_=1;if(v){if(!(C=o(k,S,e,b))||C.index>=e.length)break;var T=C.index,A=C.index+C[0].length,L=S;for(L+=E.value.length;T>=L;)L+=(E=E.next).value.length;if(S=L-=E.value.length,E.value instanceof a)continue;for(var P=E;P!==t.tail&&(L<A||"string"==typeof P.value);P=P.next)_++,L+=P.value.length;_--,x=e.slice(S,L),C.index-=S}else if(!(C=o(k,0,x,b)))continue;T=C.index;var R=C[0],N=x.slice(0,T),O=x.slice(T+R.length),I=S+x.length;d&&I>d.reach&&(d.reach=I);var D=E.prev;if(N&&(D=s(t,D,N),S+=N.length),u(t,D,_),E=s(t,D,new a(p,h?r.tokenize(R,h):R,y,R)),O&&s(t,E,O),_>1){var M={cause:p+","+m,reach:I};i(e,t,n,E.prev,S,M),d&&M.reach>d.reach&&(d.reach=M.reach)}}}}}}function l(){var e={value:null,prev:null,next:null},t={value:null,prev:e,next:null};e.next=t,this.head=e,this.tail=t,this.length=0}function s(e,t,n){var r=t.next,a={value:n,prev:t,next:r};return t.next=a,r.prev=a,e.length++,a}function u(e,t,n){for(var r=t.next,a=0;a<n&&r!==e.tail;a++)r=r.next;t.next=r,r.prev=t,e.length-=a}return a.stringify=function e(t,n){if("string"==typeof t)return t;if(Array.isArray(t)){var a="";return t.forEach((function(t){a+=e(t,n)})),a}var o={type:t.type,content:e(t.content,n),tag:"span",classes:["token",t.type],attributes:{},language:n},i=t.alias;i&&(Array.isArray(i)?Array.prototype.push.apply(o.classes,i):o.classes.push(i)),r.hooks.run("wrap",o);var l="";for(var s in o.attributes)l+=" "+s+'="'+(o.attributes[s]||"").replace(/"/g,""")+'"';return"<"+o.tag+' class="'+o.classes.join(" ")+'"'+l+">"+o.content+"</"+o.tag+">"},r}(),a=r;r.default=r,a.languages.markup={comment:{pattern:/<!--(?:(?!<!--)[\s\S])*?-->/,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^<!|>$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},a.languages.markup.tag.inside["attr-value"].inside.entity=a.languages.markup.entity,a.languages.markup.doctype.inside["internal-subset"].inside=a.languages.markup,a.hooks.add("wrap",(function(e){"entity"===e.type&&(e.attributes.title=e.content.replace(/&/,"&"))})),Object.defineProperty(a.languages.markup.tag,"addInlined",{value:function(e,t){var n={};n["language-"+t]={pattern:/(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,lookbehind:!0,inside:a.languages[t]},n.cdata=/^<!\[CDATA\[|\]\]>$/i;var r={"included-cdata":{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,inside:n}};r["language-"+t]={pattern:/[\s\S]+/,inside:a.languages[t]};var o={};o[e]={pattern:RegExp(/(<__[^>]*>)(?:<!\[CDATA\[(?:[^\]]|\](?!\]>))*\]\]>|(?!<!\[CDATA\[)[\s\S])*?(?=<\/__>)/.source.replace(/__/g,(function(){return e})),"i"),lookbehind:!0,greedy:!0,inside:r},a.languages.insertBefore("markup","cdata",o)}}),Object.defineProperty(a.languages.markup.tag,"addAttribute",{value:function(e,t){a.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+e+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[t,"language-"+t],inside:a.languages[t]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),a.languages.html=a.languages.markup,a.languages.mathml=a.languages.markup,a.languages.svg=a.languages.markup,a.languages.xml=a.languages.extend("markup",{}),a.languages.ssml=a.languages.xml,a.languages.atom=a.languages.xml,a.languages.rss=a.languages.xml,function(e){var t="\\b(?:BASH|BASHOPTS|BASH_ALIASES|BASH_ARGC|BASH_ARGV|BASH_CMDS|BASH_COMPLETION_COMPAT_DIR|BASH_LINENO|BASH_REMATCH|BASH_SOURCE|BASH_VERSINFO|BASH_VERSION|COLORTERM|COLUMNS|COMP_WORDBREAKS|DBUS_SESSION_BUS_ADDRESS|DEFAULTS_PATH|DESKTOP_SESSION|DIRSTACK|DISPLAY|EUID|GDMSESSION|GDM_LANG|GNOME_KEYRING_CONTROL|GNOME_KEYRING_PID|GPG_AGENT_INFO|GROUPS|HISTCONTROL|HISTFILE|HISTFILESIZE|HISTSIZE|HOME|HOSTNAME|HOSTTYPE|IFS|INSTANCE|JOB|LANG|LANGUAGE|LC_ADDRESS|LC_ALL|LC_IDENTIFICATION|LC_MEASUREMENT|LC_MONETARY|LC_NAME|LC_NUMERIC|LC_PAPER|LC_TELEPHONE|LC_TIME|LESSCLOSE|LESSOPEN|LINES|LOGNAME|LS_COLORS|MACHTYPE|MAILCHECK|MANDATORY_PATH|NO_AT_BRIDGE|OLDPWD|OPTERR|OPTIND|ORBIT_SOCKETDIR|OSTYPE|PAPERSIZE|PATH|PIPESTATUS|PPID|PS1|PS2|PS3|PS4|PWD|RANDOM|REPLY|SECONDS|SELINUX_INIT|SESSION|SESSIONTYPE|SESSION_MANAGER|SHELL|SHELLOPTS|SHLVL|SSH_AUTH_SOCK|TERM|UID|UPSTART_EVENTS|UPSTART_INSTANCE|UPSTART_JOB|UPSTART_SESSION|USER|WINDOWID|XAUTHORITY|XDG_CONFIG_DIRS|XDG_CURRENT_DESKTOP|XDG_DATA_DIRS|XDG_GREETER_DATA_DIR|XDG_MENU_PREFIX|XDG_RUNTIME_DIR|XDG_SEAT|XDG_SEAT_PATH|XDG_SESSION_DESKTOP|XDG_SESSION_ID|XDG_SESSION_PATH|XDG_SESSION_TYPE|XDG_VTNR|XMODIFIERS)\\b",n={pattern:/(^(["']?)\w+\2)[ \t]+\S.*/,lookbehind:!0,alias:"punctuation",inside:null},r={bash:n,environment:{pattern:RegExp("\\$"+t),alias:"constant"},variable:[{pattern:/\$?\(\([\s\S]+?\)\)/,greedy:!0,inside:{variable:[{pattern:/(^\$\(\([\s\S]+)\)\)/,lookbehind:!0},/^\$\(\(/],number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/--|\+\+|\*\*=?|<<=?|>>=?|&&|\|\||[=!+\-*/%<>^&|]=?|[?~:]/,punctuation:/\(\(?|\)\)?|,|;/}},{pattern:/\$\((?:\([^)]+\)|[^()])+\)|`[^`]+`/,greedy:!0,inside:{variable:/^\$\(|^`|\)$|`$/}},{pattern:/\$\{[^}]+\}/,greedy:!0,inside:{operator:/:[-=?+]?|[!\/]|##?|%%?|\^\^?|,,?/,punctuation:/[\[\]]/,environment:{pattern:RegExp("(\\{)"+t),lookbehind:!0,alias:"constant"}}},/\$(?:\w+|[#?*!@$])/],entity:/\\(?:[abceEfnrtv\\"]|O?[0-7]{1,3}|U[0-9a-fA-F]{8}|u[0-9a-fA-F]{4}|x[0-9a-fA-F]{1,2})/};e.languages.bash={shebang:{pattern:/^#!\s*\/.*/,alias:"important"},comment:{pattern:/(^|[^"{\\$])#.*/,lookbehind:!0},"function-name":[{pattern:/(\bfunction\s+)[\w-]+(?=(?:\s*\(?:\s*\))?\s*\{)/,lookbehind:!0,alias:"function"},{pattern:/\b[\w-]+(?=\s*\(\s*\)\s*\{)/,alias:"function"}],"for-or-select":{pattern:/(\b(?:for|select)\s+)\w+(?=\s+in\s)/,alias:"variable",lookbehind:!0},"assign-left":{pattern:/(^|[\s;|&]|[<>]\()\w+(?=\+?=)/,inside:{environment:{pattern:RegExp("(^|[\\s;|&]|[<>]\\()"+t),lookbehind:!0,alias:"constant"}},alias:"variable",lookbehind:!0},string:[{pattern:/((?:^|[^<])<<-?\s*)(\w+)\s[\s\S]*?(?:\r?\n|\r)\2/,lookbehind:!0,greedy:!0,inside:r},{pattern:/((?:^|[^<])<<-?\s*)(["'])(\w+)\2\s[\s\S]*?(?:\r?\n|\r)\3/,lookbehind:!0,greedy:!0,inside:{bash:n}},{pattern:/(^|[^\\](?:\\\\)*)"(?:\\[\s\S]|\$\([^)]+\)|\$(?!\()|`[^`]+`|[^"\\`$])*"/,lookbehind:!0,greedy:!0,inside:r},{pattern:/(^|[^$\\])'[^']*'/,lookbehind:!0,greedy:!0},{pattern:/\$'(?:[^'\\]|\\[\s\S])*'/,greedy:!0,inside:{entity:r.entity}}],environment:{pattern:RegExp("\\$?"+t),alias:"constant"},variable:r.variable,function:{pattern:/(^|[\s;|&]|[<>]\()(?:add|apropos|apt|apt-cache|apt-get|aptitude|aspell|automysqlbackup|awk|basename|bash|bc|bconsole|bg|bzip2|cal|cat|cfdisk|chgrp|chkconfig|chmod|chown|chroot|cksum|clear|cmp|column|comm|composer|cp|cron|crontab|csplit|curl|cut|date|dc|dd|ddrescue|debootstrap|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|docker|docker-compose|du|egrep|eject|env|ethtool|expand|expect|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|git|gparted|grep|groupadd|groupdel|groupmod|groups|grub-mkconfig|gzip|halt|head|hg|history|host|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|ip|jobs|join|kill|killall|less|link|ln|locate|logname|logrotate|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|lynx|make|man|mc|mdadm|mkconfig|mkdir|mke2fs|mkfifo|mkfs|mkisofs|mknod|mkswap|mmv|more|most|mount|mtools|mtr|mutt|mv|nano|nc|netstat|nice|nl|node|nohup|notify-send|npm|nslookup|op|open|parted|passwd|paste|pathchk|ping|pkill|pnpm|podman|podman-compose|popd|pr|printcap|printenv|ps|pushd|pv|quota|quotacheck|quotactl|ram|rar|rcp|reboot|remsync|rename|renice|rev|rm|rmdir|rpm|rsync|scp|screen|sdiff|sed|sendmail|seq|service|sftp|sh|shellcheck|shuf|shutdown|sleep|slocate|sort|split|ssh|stat|strace|su|sudo|sum|suspend|swapon|sync|tac|tail|tar|tee|time|timeout|top|touch|tr|traceroute|tsort|tty|umount|uname|unexpand|uniq|units|unrar|unshar|unzip|update-grub|uptime|useradd|userdel|usermod|users|uudecode|uuencode|v|vcpkg|vdir|vi|vim|virsh|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yarn|yes|zenity|zip|zsh|zypper)(?=$|[)\s;|&])/,lookbehind:!0},keyword:{pattern:/(^|[\s;|&]|[<>]\()(?:case|do|done|elif|else|esac|fi|for|function|if|in|select|then|until|while)(?=$|[)\s;|&])/,lookbehind:!0},builtin:{pattern:/(^|[\s;|&]|[<>]\()(?:\.|:|alias|bind|break|builtin|caller|cd|command|continue|declare|echo|enable|eval|exec|exit|export|getopts|hash|help|let|local|logout|mapfile|printf|pwd|read|readarray|readonly|return|set|shift|shopt|source|test|times|trap|type|typeset|ulimit|umask|unalias|unset)(?=$|[)\s;|&])/,lookbehind:!0,alias:"class-name"},boolean:{pattern:/(^|[\s;|&]|[<>]\()(?:false|true)(?=$|[)\s;|&])/,lookbehind:!0},"file-descriptor":{pattern:/\B&\d\b/,alias:"important"},operator:{pattern:/\d?<>|>\||\+=|=[=~]?|!=?|<<[<-]?|[&\d]?>>|\d[<>]&?|[<>][&=]?|&[>&]?|\|[&|]?/,inside:{"file-descriptor":{pattern:/^\d/,alias:"important"}}},punctuation:/\$?\(\(?|\)\)?|\.\.|[{}[\];\\]/,number:{pattern:/(^|\s)(?:[1-9]\d*|0)(?:[.,]\d+)?\b/,lookbehind:!0}},n.inside=e.languages.bash;for(var a=["comment","function-name","for-or-select","assign-left","string","environment","function","keyword","builtin","boolean","file-descriptor","operator","punctuation","number"],o=r.variable[1].inside,i=0;i<a.length;i++)o[a[i]]=e.languages.bash[a[i]];e.languages.shell=e.languages.bash}(a),a.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/},a.languages.c=a.languages.extend("clike",{comment:{pattern:/\/\/(?:[^\r\n\\]|\\(?:\r\n?|\n|(?![\r\n])))*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},"class-name":{pattern:/(\b(?:enum|struct)\s+(?:__attribute__\s*\(\([\s\S]*?\)\)\s*)?)\w+|\b[a-z]\w*_t\b/,lookbehind:!0},keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|__attribute__|asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|inline|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|typeof|union|unsigned|void|volatile|while)\b/,function:/\b[a-z_]\w*(?=\s*\()/i,number:/(?:\b0x(?:[\da-f]+(?:\.[\da-f]*)?|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?)[ful]{0,4}/i,operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/}),a.languages.insertBefore("c","string",{char:{pattern:/'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n]){0,32}'/,greedy:!0}}),a.languages.insertBefore("c","string",{macro:{pattern:/(^[\t ]*)#\s*[a-z](?:[^\r\n\\/]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,greedy:!0,alias:"property",inside:{string:[{pattern:/^(#\s*include\s*)<[^>]+>/,lookbehind:!0},a.languages.c.string],char:a.languages.c.char,comment:a.languages.c.comment,"macro-name":[{pattern:/(^#\s*define\s+)\w+\b(?!\()/i,lookbehind:!0},{pattern:/(^#\s*define\s+)\w+\b(?=\()/i,lookbehind:!0,alias:"function"}],directive:{pattern:/^(#\s*)[a-z]+/,lookbehind:!0,alias:"keyword"},"directive-hash":/^#/,punctuation:/##|\\(?=[\r\n])/,expression:{pattern:/\S[\s\S]*/,inside:a.languages.c}}}}),a.languages.insertBefore("c","function",{constant:/\b(?:EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|__DATE__|__FILE__|__LINE__|__TIMESTAMP__|__TIME__|__func__|stderr|stdin|stdout)\b/}),delete a.languages.c.boolean,function(e){var t=/\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|char8_t|class|co_await|co_return|co_yield|compl|concept|const|const_cast|consteval|constexpr|constinit|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|final|float|for|friend|goto|if|import|inline|int|int16_t|int32_t|int64_t|int8_t|long|module|mutable|namespace|new|noexcept|nullptr|operator|override|private|protected|public|register|reinterpret_cast|requires|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|uint16_t|uint32_t|uint64_t|uint8_t|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/,n=/\b(?!<keyword>)\w+(?:\s*\.\s*\w+)*\b/.source.replace(/<keyword>/g,(function(){return t.source}));e.languages.cpp=e.languages.extend("c",{"class-name":[{pattern:RegExp(/(\b(?:class|concept|enum|struct|typename)\s+)(?!<keyword>)\w+/.source.replace(/<keyword>/g,(function(){return t.source}))),lookbehind:!0},/\b[A-Z]\w*(?=\s*::\s*\w+\s*\()/,/\b[A-Z_]\w*(?=\s*::\s*~\w+\s*\()/i,/\b\w+(?=\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>\s*::\s*\w+\s*\()/],keyword:t,number:{pattern:/(?:\b0b[01']+|\b0x(?:[\da-f']+(?:\.[\da-f']*)?|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+(?:\.[\d']*)?|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]{0,4}/i,greedy:!0},operator:/>>=?|<<=?|->|--|\+\+|&&|\|\||[?:~]|<=>|[-+*/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/,boolean:/\b(?:false|true)\b/}),e.languages.insertBefore("cpp","string",{module:{pattern:RegExp(/(\b(?:import|module)\s+)/.source+"(?:"+/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|<[^<>\r\n]*>/.source+"|"+/<mod-name>(?:\s*:\s*<mod-name>)?|:\s*<mod-name>/.source.replace(/<mod-name>/g,(function(){return n}))+")"),lookbehind:!0,greedy:!0,inside:{string:/^[<"][\s\S]+/,operator:/:/,punctuation:/\./}},"raw-string":{pattern:/R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/,alias:"string",greedy:!0}}),e.languages.insertBefore("cpp","keyword",{"generic-function":{pattern:/\b(?!operator\b)[a-z_]\w*\s*<(?:[^<>]|<[^<>]*>)*>(?=\s*\()/i,inside:{function:/^\w+/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:e.languages.cpp}}}}),e.languages.insertBefore("cpp","operator",{"double-colon":{pattern:/::/,alias:"punctuation"}}),e.languages.insertBefore("cpp","class-name",{"base-clause":{pattern:/(\b(?:class|struct)\s+\w+\s*:\s*)[^;{}"'\s]+(?:\s+[^;{}"'\s]+)*(?=\s*[;{])/,lookbehind:!0,greedy:!0,inside:e.languages.extend("cpp",{})}}),e.languages.insertBefore("inside","double-colon",{"class-name":/\b[a-z_]\w*\b(?!\s*::)/i},e.languages.cpp["base-clause"])}(a),function(e){var t=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;e.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:/@[\w-](?:[^;{\s]|\s+(?![\s{]))*(?:;|(?=\s*\{))/,inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+t.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+t.source+"$"),alias:"url"}}},selector:{pattern:RegExp("(^|[{}\\s])[^{}\\s](?:[^{};\"'\\s]|\\s+(?![\\s{])|"+t.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:t,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},e.languages.css.atrule.inside.rest=e.languages.css;var n=e.languages.markup;n&&(n.tag.addInlined("style","css"),n.tag.addAttribute("style","css"))}(a),function(e){var t,n=/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/;e.languages.css.selector={pattern:e.languages.css.selector.pattern,lookbehind:!0,inside:t={"pseudo-element":/:(?:after|before|first-letter|first-line|selection)|::[-\w]+/,"pseudo-class":/:[-\w]+/,class:/\.[-\w]+/,id:/#[-\w]+/,attribute:{pattern:RegExp("\\[(?:[^[\\]\"']|"+n.source+")*\\]"),greedy:!0,inside:{punctuation:/^\[|\]$/,"case-sensitivity":{pattern:/(\s)[si]$/i,lookbehind:!0,alias:"keyword"},namespace:{pattern:/^(\s*)(?:(?!\s)[-*\w\xA0-\uFFFF])*\|(?!=)/,lookbehind:!0,inside:{punctuation:/\|$/}},"attr-name":{pattern:/^(\s*)(?:(?!\s)[-\w\xA0-\uFFFF])+/,lookbehind:!0},"attr-value":[n,{pattern:/(=\s*)(?:(?!\s)[-\w\xA0-\uFFFF])+(?=\s*$)/,lookbehind:!0}],operator:/[|~*^$]?=/}},"n-th":[{pattern:/(\(\s*)[+-]?\d*[\dn](?:\s*[+-]\s*\d+)?(?=\s*\))/,lookbehind:!0,inside:{number:/[\dn]+/,operator:/[+-]/}},{pattern:/(\(\s*)(?:even|odd)(?=\s*\))/i,lookbehind:!0}],combinator:/>|\+|~|\|\|/,punctuation:/[(),]/}},e.languages.css.atrule.inside["selector-function-argument"].inside=t,e.languages.insertBefore("css","property",{variable:{pattern:/(^|[^-\w\xA0-\uFFFF])--(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*/i,lookbehind:!0}});var r={pattern:/(\b\d+)(?:%|[a-z]+(?![\w-]))/,lookbehind:!0},a={pattern:/(^|[^\w.-])-?(?:\d+(?:\.\d+)?|\.\d+)/,lookbehind:!0};e.languages.insertBefore("css","function",{operator:{pattern:/(\s)[+\-*\/](?=\s)/,lookbehind:!0},hexcode:{pattern:/\B#[\da-f]{3,8}\b/i,alias:"color"},color:[{pattern:/(^|[^\w-])(?:AliceBlue|AntiqueWhite|Aqua|Aquamarine|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenRod|DarkGr[ae]y|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGr[ae]y|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGr[ae]y|DodgerBlue|FireBrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|GoldenRod|Gr[ae]y|Green|GreenYellow|HoneyDew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenRodYellow|LightGr[ae]y|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGr[ae]y|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquaMarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenRod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGr[ae]y|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen)(?![\w-])/i,lookbehind:!0},{pattern:/\b(?:hsl|rgb)\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*\)\B|\b(?:hsl|rgb)a\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*,\s*(?:0|0?\.\d+|1)\s*\)\B/i,inside:{unit:r,number:a,function:/[\w-]+(?=\()/,punctuation:/[(),]/}}],entity:/\\[\da-f]{1,8}/i,unit:r,number:a})}(a),a.languages.javascript=a.languages.extend("clike",{"class-name":[a.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),a.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,a.languages.insertBefore("javascript","keyword",{regex:{pattern:/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)\/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/,lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:a.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:a.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:a.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:a.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:a.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),a.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:a.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),a.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),a.languages.markup&&(a.languages.markup.tag.addInlined("script","javascript"),a.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript")),a.languages.js=a.languages.javascript,function(e){var t=/#(?!\{).+/,n={pattern:/#\{[^}]+\}/,alias:"variable"};e.languages.coffeescript=e.languages.extend("javascript",{comment:t,string:[{pattern:/'(?:\\[\s\S]|[^\\'])*'/,greedy:!0},{pattern:/"(?:\\[\s\S]|[^\\"])*"/,greedy:!0,inside:{interpolation:n}}],keyword:/\b(?:and|break|by|catch|class|continue|debugger|delete|do|each|else|extend|extends|false|finally|for|if|in|instanceof|is|isnt|let|loop|namespace|new|no|not|null|of|off|on|or|own|return|super|switch|then|this|throw|true|try|typeof|undefined|unless|until|when|while|window|with|yes|yield)\b/,"class-member":{pattern:/@(?!\d)\w+/,alias:"variable"}}),e.languages.insertBefore("coffeescript","comment",{"multiline-comment":{pattern:/###[\s\S]+?###/,alias:"comment"},"block-regex":{pattern:/\/{3}[\s\S]*?\/{3}/,alias:"regex",inside:{comment:t,interpolation:n}}}),e.languages.insertBefore("coffeescript","string",{"inline-javascript":{pattern:/`(?:\\[\s\S]|[^\\`])*`/,inside:{delimiter:{pattern:/^`|`$/,alias:"punctuation"},script:{pattern:/[\s\S]+/,alias:"language-javascript",inside:e.languages.javascript}}},"multiline-string":[{pattern:/'''[\s\S]*?'''/,greedy:!0,alias:"string"},{pattern:/"""[\s\S]*?"""/,greedy:!0,alias:"string",inside:{interpolation:n}}]}),e.languages.insertBefore("coffeescript","keyword",{property:/(?!\d)\w+(?=\s*:(?!:))/}),delete e.languages.coffeescript["template-string"],e.languages.coffee=e.languages.coffeescript}(a),function(e){var t=/[*&][^\s[\]{},]+/,n=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,r="(?:"+n.source+"(?:[ \t]+"+t.source+")?|"+t.source+"(?:[ \t]+"+n.source+")?)",a=/(?:[^\s\x00-\x08\x0e-\x1f!"#%&'*,\-:>?@[\]`{|}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]|[?:-]<PLAIN>)(?:[ \t]*(?:(?![#:])<PLAIN>|:<PLAIN>))*/.source.replace(/<PLAIN>/g,(function(){return/[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source})),o=/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/.source;function i(e,t){t=(t||"").replace(/m/g,"")+"m";var n=/([:\-,[{]\s*(?:\s<<prop>>[ \t]+)?)(?:<<value>>)(?=[ \t]*(?:$|,|\]|\}|(?:[\r\n]\s*)?#))/.source.replace(/<<prop>>/g,(function(){return r})).replace(/<<value>>/g,(function(){return e}));return RegExp(n,t)}e.languages.yaml={scalar:{pattern:RegExp(/([\-:]\s*(?:\s<<prop>>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)\S[^\r\n]*(?:\2[^\r\n]+)*)/.source.replace(/<<prop>>/g,(function(){return r}))),lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:RegExp(/((?:^|[:\-,[{\r\n?])[ \t]*(?:<<prop>>[ \t]+)?)<<key>>(?=\s*:\s)/.source.replace(/<<prop>>/g,(function(){return r})).replace(/<<key>>/g,(function(){return"(?:"+a+"|"+o+")"}))),lookbehind:!0,greedy:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:i(/\d{4}-\d\d?-\d\d?(?:[tT]|[ \t]+)\d\d?:\d{2}:\d{2}(?:\.\d*)?(?:[ \t]*(?:Z|[-+]\d\d?(?::\d{2})?))?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(?::\d{2}(?:\.\d*)?)?/.source),lookbehind:!0,alias:"number"},boolean:{pattern:i(/false|true/.source,"i"),lookbehind:!0,alias:"important"},null:{pattern:i(/null|~/.source,"i"),lookbehind:!0,alias:"important"},string:{pattern:i(o),lookbehind:!0,greedy:!0},number:{pattern:i(/[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|\.inf|\.nan)/.source,"i"),lookbehind:!0},tag:n,important:t,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},e.languages.yml=e.languages.yaml}(a),function(e){var t=/(?:\\.|[^\\\n\r]|(?:\n|\r\n?)(?![\r\n]))/.source;function n(e){return e=e.replace(/<inner>/g,(function(){return t})),RegExp(/((?:^|[^\\])(?:\\{2})*)/.source+"(?:"+e+")")}var r=/(?:\\.|``(?:[^`\r\n]|`(?!`))+``|`[^`\r\n]+`|[^\\|\r\n`])+/.source,a=/\|?__(?:\|__)+\|?(?:(?:\n|\r\n?)|(?![\s\S]))/.source.replace(/__/g,(function(){return r})),o=/\|?[ \t]*:?-{3,}:?[ \t]*(?:\|[ \t]*:?-{3,}:?[ \t]*)+\|?(?:\n|\r\n?)/.source;e.languages.markdown=e.languages.extend("markup",{}),e.languages.insertBefore("markdown","prolog",{"front-matter-block":{pattern:/(^(?:\s*[\r\n])?)---(?!.)[\s\S]*?[\r\n]---(?!.)/,lookbehind:!0,greedy:!0,inside:{punctuation:/^---|---$/,"front-matter":{pattern:/\S+(?:\s+\S+)*/,alias:["yaml","language-yaml"],inside:e.languages.yaml}}},blockquote:{pattern:/^>(?:[\t ]*>)*/m,alias:"punctuation"},table:{pattern:RegExp("^"+a+o+"(?:"+a+")*","m"),inside:{"table-data-rows":{pattern:RegExp("^("+a+o+")(?:"+a+")*$"),lookbehind:!0,inside:{"table-data":{pattern:RegExp(r),inside:e.languages.markdown},punctuation:/\|/}},"table-line":{pattern:RegExp("^("+a+")"+o+"$"),lookbehind:!0,inside:{punctuation:/\||:?-{3,}:?/}},"table-header-row":{pattern:RegExp("^"+a+"$"),inside:{"table-header":{pattern:RegExp(r),alias:"important",inside:e.languages.markdown},punctuation:/\|/}}}},code:[{pattern:/((?:^|\n)[ \t]*\n|(?:^|\r\n?)[ \t]*\r\n?)(?: {4}|\t).+(?:(?:\n|\r\n?)(?: {4}|\t).+)*/,lookbehind:!0,alias:"keyword"},{pattern:/^```[\s\S]*?^```$/m,greedy:!0,inside:{"code-block":{pattern:/^(```.*(?:\n|\r\n?))[\s\S]+?(?=(?:\n|\r\n?)^```$)/m,lookbehind:!0},"code-language":{pattern:/^(```).+/,lookbehind:!0},punctuation:/```/}}],title:[{pattern:/\S.*(?:\n|\r\n?)(?:==+|--+)(?=[ \t]*$)/m,alias:"important",inside:{punctuation:/==+$|--+$/}},{pattern:/(^\s*)#.+/m,lookbehind:!0,alias:"important",inside:{punctuation:/^#+|#+$/}}],hr:{pattern:/(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m,lookbehind:!0,alias:"punctuation"},list:{pattern:/(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m,lookbehind:!0,alias:"punctuation"},"url-reference":{pattern:/!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/,inside:{variable:{pattern:/^(!?\[)[^\]]+/,lookbehind:!0},string:/(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/,punctuation:/^[\[\]!:]|[<>]/},alias:"url"},bold:{pattern:n(/\b__(?:(?!_)<inner>|_(?:(?!_)<inner>)+_)+__\b|\*\*(?:(?!\*)<inner>|\*(?:(?!\*)<inner>)+\*)+\*\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^..)[\s\S]+(?=..$)/,lookbehind:!0,inside:{}},punctuation:/\*\*|__/}},italic:{pattern:n(/\b_(?:(?!_)<inner>|__(?:(?!_)<inner>)+__)+_\b|\*(?:(?!\*)<inner>|\*\*(?:(?!\*)<inner>)+\*\*)+\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^.)[\s\S]+(?=.$)/,lookbehind:!0,inside:{}},punctuation:/[*_]/}},strike:{pattern:n(/(~~?)(?:(?!~)<inner>)+\2/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^~~?)[\s\S]+(?=\1$)/,lookbehind:!0,inside:{}},punctuation:/~~?/}},"code-snippet":{pattern:/(^|[^\\`])(?:``[^`\r\n]+(?:`[^`\r\n]+)*``(?!`)|`[^`\r\n]+`(?!`))/,lookbehind:!0,greedy:!0,alias:["code","keyword"]},url:{pattern:n(/!?\[(?:(?!\])<inner>)+\](?:\([^\s)]+(?:[\t ]+"(?:\\.|[^"\\])*")?\)|[ \t]?\[(?:(?!\])<inner>)+\])/.source),lookbehind:!0,greedy:!0,inside:{operator:/^!/,content:{pattern:/(^\[)[^\]]+(?=\])/,lookbehind:!0,inside:{}},variable:{pattern:/(^\][ \t]?\[)[^\]]+(?=\]$)/,lookbehind:!0},url:{pattern:/(^\]\()[^\s)]+/,lookbehind:!0},string:{pattern:/(^[ \t]+)"(?:\\.|[^"\\])*"(?=\)$)/,lookbehind:!0}}}}),["url","bold","italic","strike"].forEach((function(t){["url","bold","italic","strike","code-snippet"].forEach((function(n){t!==n&&(e.languages.markdown[t].inside.content.inside[n]=e.languages.markdown[n])}))})),e.hooks.add("after-tokenize",(function(e){"markdown"!==e.language&&"md"!==e.language||function e(t){if(t&&"string"!=typeof t)for(var n=0,r=t.length;n<r;n++){var a=t[n];if("code"===a.type){var o=a.content[1],i=a.content[3];if(o&&i&&"code-language"===o.type&&"code-block"===i.type&&"string"==typeof o.content){var l=o.content.replace(/\b#/g,"sharp").replace(/\b\+\+/g,"pp"),s="language-"+(l=(/[a-z][\w-]*/i.exec(l)||[""])[0].toLowerCase());i.alias?"string"==typeof i.alias?i.alias=[i.alias,s]:i.alias.push(s):i.alias=[s]}}else e(a.content)}}(e.tokens)})),e.hooks.add("wrap",(function(t){if("code-block"===t.type){for(var n="",r=0,a=t.classes.length;r<a;r++){var o=t.classes[r],u=/language-(.+)/.exec(o);if(u){n=u[1];break}}var c,d=e.languages[n];if(d)t.content=e.highlight((c=t.content,c.replace(i,"").replace(/&(\w{1,8}|#x?[\da-f]{1,8});/gi,(function(e,t){var n;if("#"===(t=t.toLowerCase())[0])return n="x"===t[1]?parseInt(t.slice(2),16):Number(t.slice(1)),s(n);var r=l[t];return r||e}))),d,n);else if(n&&"none"!==n&&e.plugins.autoloader){var p="md-"+(new Date).valueOf()+"-"+Math.floor(1e16*Math.random());t.attributes.id=p,e.plugins.autoloader.loadLanguages(n,(function(){var t=document.getElementById(p);t&&(t.innerHTML=e.highlight(t.textContent,e.languages[n],n))}))}}}));var i=RegExp(e.languages.markup.tag.pattern.source,"gi"),l={amp:"&",lt:"<",gt:">",quot:'"'},s=String.fromCodePoint||String.fromCharCode;e.languages.md=e.languages.markdown}(a),a.languages.graphql={comment:/#.*/,description:{pattern:/(?:"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*")(?=\s*[a-z_])/i,greedy:!0,alias:"string",inside:{"language-markdown":{pattern:/(^"(?:"")?)(?!\1)[\s\S]+(?=\1$)/,lookbehind:!0,inside:a.languages.markdown}}},string:{pattern:/"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*"/,greedy:!0},number:/(?:\B-|\b)\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,boolean:/\b(?:false|true)\b/,variable:/\$[a-z_]\w*/i,directive:{pattern:/@[a-z_]\w*/i,alias:"function"},"attr-name":{pattern:/\b[a-z_]\w*(?=\s*(?:\((?:[^()"]|"(?:\\.|[^\\"\r\n])*")*\))?:)/i,greedy:!0},"atom-input":{pattern:/\b[A-Z]\w*Input\b/,alias:"class-name"},scalar:/\b(?:Boolean|Float|ID|Int|String)\b/,constant:/\b[A-Z][A-Z_\d]*\b/,"class-name":{pattern:/(\b(?:enum|implements|interface|on|scalar|type|union)\s+|&\s*|:\s*|\[)[A-Z_]\w*/,lookbehind:!0},fragment:{pattern:/(\bfragment\s+|\.{3}\s*(?!on\b))[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-mutation":{pattern:/(\bmutation\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-query":{pattern:/(\bquery\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},keyword:/\b(?:directive|enum|extend|fragment|implements|input|interface|mutation|on|query|repeatable|scalar|schema|subscription|type|union)\b/,operator:/[!=|&]|\.{3}/,"property-query":/\w+(?=\s*\()/,object:/\w+(?=\s*\{)/,punctuation:/[!(){}\[\]:=,]/,property:/\w+/},a.hooks.add("after-tokenize",(function(e){if("graphql"===e.language)for(var t=e.tokens.filter((function(e){return"string"!=typeof e&&"comment"!==e.type&&"scalar"!==e.type})),n=0;n<t.length;){var r=t[n++];if("keyword"===r.type&&"mutation"===r.content){var a=[];if(d(["definition-mutation","punctuation"])&&"("===c(1).content){n+=2;var o=p(/^\($/,/^\)$/);if(-1===o)continue;for(;n<o;n++){var i=c(0);"variable"===i.type&&(f(i,"variable-input"),a.push(i.content))}n=o+1}if(d(["punctuation","property-query"])&&"{"===c(0).content&&(n++,f(c(0),"property-mutation"),a.length>0)){var l=p(/^\{$/,/^\}$/);if(-1===l)continue;for(var s=n;s<l;s++){var u=t[s];"variable"===u.type&&a.indexOf(u.content)>=0&&f(u,"variable-input")}}}}function c(e){return t[n+e]}function d(e,t){t=t||0;for(var n=0;n<e.length;n++){var r=c(n+t);if(!r||r.type!==e[n])return!1}return!0}function p(e,r){for(var a=1,o=n;o<t.length;o++){var i=t[o],l=i.content;if("punctuation"===i.type&&"string"==typeof l)if(e.test(l))a++;else if(r.test(l)&&0===--a)return o}return-1}function f(e,t){var n=e.alias;n?Array.isArray(n)||(e.alias=n=[n]):e.alias=n=[],n.push(t)}})),a.languages.sql={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:--|\/\/|#).*)/,lookbehind:!0},variable:[{pattern:/@(["'`])(?:\\[\s\S]|(?!\1)[^\\])+\1/,greedy:!0},/@[\w.$]+/],string:{pattern:/(^|[^@\\])("|')(?:\\[\s\S]|(?!\2)[^\\]|\2\2)*\2/,greedy:!0,lookbehind:!0},identifier:{pattern:/(^|[^@\\])`(?:\\[\s\S]|[^`\\]|``)*`/,greedy:!0,lookbehind:!0,inside:{punctuation:/^`|`$/}},function:/\b(?:AVG|COUNT|FIRST|FORMAT|LAST|LCASE|LEN|MAX|MID|MIN|MOD|NOW|ROUND|SUM|UCASE)(?=\s*\()/i,keyword:/\b(?:ACTION|ADD|AFTER|ALGORITHM|ALL|ALTER|ANALYZE|ANY|APPLY|AS|ASC|AUTHORIZATION|AUTO_INCREMENT|BACKUP|BDB|BEGIN|BERKELEYDB|BIGINT|BINARY|BIT|BLOB|BOOL|BOOLEAN|BREAK|BROWSE|BTREE|BULK|BY|CALL|CASCADED?|CASE|CHAIN|CHAR(?:ACTER|SET)?|CHECK(?:POINT)?|CLOSE|CLUSTERED|COALESCE|COLLATE|COLUMNS?|COMMENT|COMMIT(?:TED)?|COMPUTE|CONNECT|CONSISTENT|CONSTRAINT|CONTAINS(?:TABLE)?|CONTINUE|CONVERT|CREATE|CROSS|CURRENT(?:_DATE|_TIME|_TIMESTAMP|_USER)?|CURSOR|CYCLE|DATA(?:BASES?)?|DATE(?:TIME)?|DAY|DBCC|DEALLOCATE|DEC|DECIMAL|DECLARE|DEFAULT|DEFINER|DELAYED|DELETE|DELIMITERS?|DENY|DESC|DESCRIBE|DETERMINISTIC|DISABLE|DISCARD|DISK|DISTINCT|DISTINCTROW|DISTRIBUTED|DO|DOUBLE|DROP|DUMMY|DUMP(?:FILE)?|DUPLICATE|ELSE(?:IF)?|ENABLE|ENCLOSED|END|ENGINE|ENUM|ERRLVL|ERRORS|ESCAPED?|EXCEPT|EXEC(?:UTE)?|EXISTS|EXIT|EXPLAIN|EXTENDED|FETCH|FIELDS|FILE|FILLFACTOR|FIRST|FIXED|FLOAT|FOLLOWING|FOR(?: EACH ROW)?|FORCE|FOREIGN|FREETEXT(?:TABLE)?|FROM|FULL|FUNCTION|GEOMETRY(?:COLLECTION)?|GLOBAL|GOTO|GRANT|GROUP|HANDLER|HASH|HAVING|HOLDLOCK|HOUR|IDENTITY(?:COL|_INSERT)?|IF|IGNORE|IMPORT|INDEX|INFILE|INNER|INNODB|INOUT|INSERT|INT|INTEGER|INTERSECT|INTERVAL|INTO|INVOKER|ISOLATION|ITERATE|JOIN|KEYS?|KILL|LANGUAGE|LAST|LEAVE|LEFT|LEVEL|LIMIT|LINENO|LINES|LINESTRING|LOAD|LOCAL|LOCK|LONG(?:BLOB|TEXT)|LOOP|MATCH(?:ED)?|MEDIUM(?:BLOB|INT|TEXT)|MERGE|MIDDLEINT|MINUTE|MODE|MODIFIES|MODIFY|MONTH|MULTI(?:LINESTRING|POINT|POLYGON)|NATIONAL|NATURAL|NCHAR|NEXT|NO|NONCLUSTERED|NULLIF|NUMERIC|OFF?|OFFSETS?|ON|OPEN(?:DATASOURCE|QUERY|ROWSET)?|OPTIMIZE|OPTION(?:ALLY)?|ORDER|OUT(?:ER|FILE)?|OVER|PARTIAL|PARTITION|PERCENT|PIVOT|PLAN|POINT|POLYGON|PRECEDING|PRECISION|PREPARE|PREV|PRIMARY|PRINT|PRIVILEGES|PROC(?:EDURE)?|PUBLIC|PURGE|QUICK|RAISERROR|READS?|REAL|RECONFIGURE|REFERENCES|RELEASE|RENAME|REPEAT(?:ABLE)?|REPLACE|REPLICATION|REQUIRE|RESIGNAL|RESTORE|RESTRICT|RETURN(?:ING|S)?|REVOKE|RIGHT|ROLLBACK|ROUTINE|ROW(?:COUNT|GUIDCOL|S)?|RTREE|RULE|SAVE(?:POINT)?|SCHEMA|SECOND|SELECT|SERIAL(?:IZABLE)?|SESSION(?:_USER)?|SET(?:USER)?|SHARE|SHOW|SHUTDOWN|SIMPLE|SMALLINT|SNAPSHOT|SOME|SONAME|SQL|START(?:ING)?|STATISTICS|STATUS|STRIPED|SYSTEM_USER|TABLES?|TABLESPACE|TEMP(?:ORARY|TABLE)?|TERMINATED|TEXT(?:SIZE)?|THEN|TIME(?:STAMP)?|TINY(?:BLOB|INT|TEXT)|TOP?|TRAN(?:SACTIONS?)?|TRIGGER|TRUNCATE|TSEQUAL|TYPES?|UNBOUNDED|UNCOMMITTED|UNDEFINED|UNION|UNIQUE|UNLOCK|UNPIVOT|UNSIGNED|UPDATE(?:TEXT)?|USAGE|USE|USER|USING|VALUES?|VAR(?:BINARY|CHAR|CHARACTER|YING)|VIEW|WAITFOR|WARNINGS|WHEN|WHERE|WHILE|WITH(?: ROLLUP|IN)?|WORK|WRITE(?:TEXT)?|YEAR)\b/i,boolean:/\b(?:FALSE|NULL|TRUE)\b/i,number:/\b0x[\da-f]+\b|\b\d+(?:\.\d*)?|\B\.\d+\b/i,operator:/[-+*\/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|DIV|ILIKE|IN|IS|LIKE|NOT|OR|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i,punctuation:/[;[\]()`,.]/},function(e){var t=e.languages.javascript["template-string"],n=t.pattern.source,r=t.inside.interpolation,a=r.inside["interpolation-punctuation"],o=r.pattern.source;function i(t,r){if(e.languages[t])return{pattern:RegExp("((?:"+r+")\\s*)"+n),lookbehind:!0,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},"embedded-code":{pattern:/[\s\S]+/,alias:t}}}}function l(e,t){return"___"+t.toUpperCase()+"_"+e+"___"}function s(t,n,r){var a={code:t,grammar:n,language:r};return e.hooks.run("before-tokenize",a),a.tokens=e.tokenize(a.code,a.grammar),e.hooks.run("after-tokenize",a),a.tokens}function u(t){var n={};n["interpolation-punctuation"]=a;var o=e.tokenize(t,n);if(3===o.length){var i=[1,1];i.push.apply(i,s(o[1],e.languages.javascript,"javascript")),o.splice.apply(o,i)}return new e.Token("interpolation",o,r.alias,t)}function c(t,n,r){var a=e.tokenize(t,{interpolation:{pattern:RegExp(o),lookbehind:!0}}),i=0,c={},d=s(a.map((function(e){if("string"==typeof e)return e;for(var n,a=e.content;-1!==t.indexOf(n=l(i++,r)););return c[n]=a,n})).join(""),n,r),p=Object.keys(c);return i=0,function e(t){for(var n=0;n<t.length;n++){if(i>=p.length)return;var r=t[n];if("string"==typeof r||"string"==typeof r.content){var a=p[i],o="string"==typeof r?r:r.content,l=o.indexOf(a);if(-1!==l){++i;var s=o.substring(0,l),d=u(c[a]),f=o.substring(l+a.length),m=[];if(s&&m.push(s),m.push(d),f){var g=[f];e(g),m.push.apply(m,g)}"string"==typeof r?(t.splice.apply(t,[n,1].concat(m)),n+=m.length-1):r.content=m}}else{var h=r.content;Array.isArray(h)?e(h):e([h])}}}(d),new e.Token(r,d,"language-"+r,t)}e.languages.javascript["template-string"]=[i("css",/\b(?:styled(?:\([^)]*\))?(?:\s*\.\s*\w+(?:\([^)]*\))*)*|css(?:\s*\.\s*(?:global|resolve))?|createGlobalStyle|keyframes)/.source),i("html",/\bhtml|\.\s*(?:inner|outer)HTML\s*\+?=/.source),i("svg",/\bsvg/.source),i("markdown",/\b(?:markdown|md)/.source),i("graphql",/\b(?:gql|graphql(?:\s*\.\s*experimental)?)/.source),i("sql",/\bsql/.source),t].filter(Boolean);var d={javascript:!0,js:!0,typescript:!0,ts:!0,jsx:!0,tsx:!0};function p(e){return"string"==typeof e?e:Array.isArray(e)?e.map(p).join(""):p(e.content)}e.hooks.add("after-tokenize",(function(t){t.language in d&&function t(n){for(var r=0,a=n.length;r<a;r++){var o=n[r];if("string"!=typeof o){var i=o.content;if(Array.isArray(i))if("template-string"===o.type){var l=i[1];if(3===i.length&&"string"!=typeof l&&"embedded-code"===l.type){var s=p(l),u=l.alias,d=Array.isArray(u)?u[0]:u,f=e.languages[d];if(!f)continue;i[1]=c(s,f,d)}}else t(i);else"string"!=typeof i&&t([i])}}}(t.tokens)}))}(a),function(e){e.languages.typescript=e.languages.extend("javascript",{"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|type)\s+)(?!keyof\b)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?:\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>)?/,lookbehind:!0,greedy:!0,inside:null},builtin:/\b(?:Array|Function|Promise|any|boolean|console|never|number|string|symbol|unknown)\b/}),e.languages.typescript.keyword.push(/\b(?:abstract|declare|is|keyof|readonly|require)\b/,/\b(?:asserts|infer|interface|module|namespace|type)\b(?=\s*(?:[{_$a-zA-Z\xA0-\uFFFF]|$))/,/\btype\b(?=\s*(?:[\{*]|$))/),delete e.languages.typescript.parameter,delete e.languages.typescript["literal-property"];var t=e.languages.extend("typescript",{});delete t["class-name"],e.languages.typescript["class-name"].inside=t,e.languages.insertBefore("typescript","function",{decorator:{pattern:/@[$\w\xA0-\uFFFF]+/,inside:{at:{pattern:/^@/,alias:"operator"},function:/^[\s\S]+/}},"generic-function":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>(?=\s*\()/,greedy:!0,inside:{function:/^#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:t}}}}),e.languages.ts=e.languages.typescript}(a),function(e){function t(e,t){return RegExp(e.replace(/<ID>/g,(function(){return/(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/.source})),t)}e.languages.insertBefore("javascript","function-variable",{"method-variable":{pattern:RegExp("(\\.\\s*)"+e.languages.javascript["function-variable"].pattern.source),lookbehind:!0,alias:["function-variable","method","function","property-access"]}}),e.languages.insertBefore("javascript","function",{method:{pattern:RegExp("(\\.\\s*)"+e.languages.javascript.function.source),lookbehind:!0,alias:["function","property-access"]}}),e.languages.insertBefore("javascript","constant",{"known-class-name":[{pattern:/\b(?:(?:Float(?:32|64)|(?:Int|Uint)(?:8|16|32)|Uint8Clamped)?Array|ArrayBuffer|BigInt|Boolean|DataView|Date|Error|Function|Intl|JSON|(?:Weak)?(?:Map|Set)|Math|Number|Object|Promise|Proxy|Reflect|RegExp|String|Symbol|WebAssembly)\b/,alias:"class-name"},{pattern:/\b(?:[A-Z]\w*)Error\b/,alias:"class-name"}]}),e.languages.insertBefore("javascript","keyword",{imports:{pattern:t(/(\bimport\b\s*)(?:<ID>(?:\s*,\s*(?:\*\s*as\s+<ID>|\{[^{}]*\}))?|\*\s*as\s+<ID>|\{[^{}]*\})(?=\s*\bfrom\b)/.source),lookbehind:!0,inside:e.languages.javascript},exports:{pattern:t(/(\bexport\b\s*)(?:\*(?:\s*as\s+<ID>)?(?=\s*\bfrom\b)|\{[^{}]*\})/.source),lookbehind:!0,inside:e.languages.javascript}}),e.languages.javascript.keyword.unshift({pattern:/\b(?:as|default|export|from|import)\b/,alias:"module"},{pattern:/\b(?:await|break|catch|continue|do|else|finally|for|if|return|switch|throw|try|while|yield)\b/,alias:"control-flow"},{pattern:/\bnull\b/,alias:["null","nil"]},{pattern:/\bundefined\b/,alias:"nil"}),e.languages.insertBefore("javascript","operator",{spread:{pattern:/\.{3}/,alias:"operator"},arrow:{pattern:/=>/,alias:"operator"}}),e.languages.insertBefore("javascript","punctuation",{"property-access":{pattern:t(/(\.\s*)#?<ID>/.source),lookbehind:!0},"maybe-class-name":{pattern:/(^|[^$\w\xA0-\uFFFF])[A-Z][$\w\xA0-\uFFFF]+/,lookbehind:!0},dom:{pattern:/\b(?:document|(?:local|session)Storage|location|navigator|performance|window)\b/,alias:"variable"},console:{pattern:/\bconsole(?=\s*\.)/,alias:"class-name"}});for(var n=["function","function-variable","method","method-variable","property-access"],r=0;r<n.length;r++){var a=n[r],o=e.languages.javascript[a];"RegExp"===e.util.type(o)&&(o=e.languages.javascript[a]={pattern:o});var i=o.inside||{};o.inside=i,i["maybe-class-name"]=/^[A-Z][\s\S]*/}}(a),function(e){var t=e.util.clone(e.languages.javascript),n=/(?:\s|\/\/.*(?!.)|\/\*(?:[^*]|\*(?!\/))\*\/)/.source,r=/(?:\{(?:\{(?:\{[^{}]*\}|[^{}])*\}|[^{}])*\})/.source,a=/(?:\{<S>*\.{3}(?:[^{}]|<BRACES>)*\})/.source;function o(e,t){return e=e.replace(/<S>/g,(function(){return n})).replace(/<BRACES>/g,(function(){return r})).replace(/<SPREAD>/g,(function(){return a})),RegExp(e,t)}a=o(a).source,e.languages.jsx=e.languages.extend("markup",t),e.languages.jsx.tag.pattern=o(/<\/?(?:[\w.:-]+(?:<S>+(?:[\w.:$-]+(?:=(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s{'"/>=]+|<BRACES>))?|<SPREAD>))*<S>*\/?)?>/.source),e.languages.jsx.tag.inside.tag.pattern=/^<\/?[^\s>\/]*/,e.languages.jsx.tag.inside["attr-value"].pattern=/=(?!\{)(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s'">]+)/,e.languages.jsx.tag.inside.tag.inside["class-name"]=/^[A-Z]\w*(?:\.[A-Z]\w*)*$/,e.languages.jsx.tag.inside.comment=t.comment,e.languages.insertBefore("inside","attr-name",{spread:{pattern:o(/<SPREAD>/.source),inside:e.languages.jsx}},e.languages.jsx.tag),e.languages.insertBefore("inside","special-attr",{script:{pattern:o(/=<BRACES>/.source),alias:"language-javascript",inside:{"script-punctuation":{pattern:/^=(?=\{)/,alias:"punctuation"},rest:e.languages.jsx}}},e.languages.jsx.tag);var i=function(e){return e?"string"==typeof e?e:"string"==typeof e.content?e.content:e.content.map(i).join(""):""},l=function(t){for(var n=[],r=0;r<t.length;r++){var a=t[r],o=!1;if("string"!=typeof a&&("tag"===a.type&&a.content[0]&&"tag"===a.content[0].type?"</"===a.content[0].content[0].content?n.length>0&&n[n.length-1].tagName===i(a.content[0].content[1])&&n.pop():"/>"===a.content[a.content.length-1].content||n.push({tagName:i(a.content[0].content[1]),openedBraces:0}):n.length>0&&"punctuation"===a.type&&"{"===a.content?n[n.length-1].openedBraces++:n.length>0&&n[n.length-1].openedBraces>0&&"punctuation"===a.type&&"}"===a.content?n[n.length-1].openedBraces--:o=!0),(o||"string"==typeof a)&&n.length>0&&0===n[n.length-1].openedBraces){var s=i(a);r<t.length-1&&("string"==typeof t[r+1]||"plain-text"===t[r+1].type)&&(s+=i(t[r+1]),t.splice(r+1,1)),r>0&&("string"==typeof t[r-1]||"plain-text"===t[r-1].type)&&(s=i(t[r-1])+s,t.splice(r-1,1),r--),t[r]=new e.Token("plain-text",s,null,s)}a.content&&"string"!=typeof a.content&&l(a.content)}};e.hooks.add("after-tokenize",(function(e){"jsx"!==e.language&&"tsx"!==e.language||l(e.tokens)}))}(a),function(e){e.languages.diff={coord:[/^(?:\*{3}|-{3}|\+{3}).*$/m,/^@@.*@@$/m,/^\d.*$/m]};var t={"deleted-sign":"-","deleted-arrow":"<","inserted-sign":"+","inserted-arrow":">",unchanged:" ",diff:"!"};Object.keys(t).forEach((function(n){var r=t[n],a=[];/^\w+$/.test(n)||a.push(/\w+/.exec(n)[0]),"diff"===n&&a.push("bold"),e.languages.diff[n]={pattern:RegExp("^(?:["+r+"].*(?:\r\n?|\n|(?![\\s\\S])))+","m"),alias:a,inside:{line:{pattern:/(.)(?=[\s\S]).*(?:\r\n?|\n)?/,lookbehind:!0},prefix:{pattern:/[\s\S]/,alias:/\w+/.exec(n)[0]}}}})),Object.defineProperty(e.languages.diff,"PREFIXES",{value:t})}(a),a.languages.git={comment:/^#.*/m,deleted:/^[-\u2013].*/m,inserted:/^\+.*/m,string:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,command:{pattern:/^.*\$ git .*$/m,inside:{parameter:/\s--?\w+/}},coord:/^@@.*@@$/m,"commit-sha1":/^commit \w{40}$/m},a.languages.go=a.languages.extend("clike",{string:{pattern:/(^|[^\\])"(?:\\.|[^"\\\r\n])*"|`[^`]*`/,lookbehind:!0,greedy:!0},keyword:/\b(?:break|case|chan|const|continue|default|defer|else|fallthrough|for|func|go(?:to)?|if|import|interface|map|package|range|return|select|struct|switch|type|var)\b/,boolean:/\b(?:_|false|iota|nil|true)\b/,number:[/\b0(?:b[01_]+|o[0-7_]+)i?\b/i,/\b0x(?:[a-f\d_]+(?:\.[a-f\d_]*)?|\.[a-f\d_]+)(?:p[+-]?\d+(?:_\d+)*)?i?(?!\w)/i,/(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?[\d_]+)?i?(?!\w)/i],operator:/[*\/%^!=]=?|\+[=+]?|-[=-]?|\|[=|]?|&(?:=|&|\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\.\.\./,builtin:/\b(?:append|bool|byte|cap|close|complex|complex(?:64|128)|copy|delete|error|float(?:32|64)|u?int(?:8|16|32|64)?|imag|len|make|new|panic|print(?:ln)?|real|recover|rune|string|uintptr)\b/}),a.languages.insertBefore("go","string",{char:{pattern:/'(?:\\.|[^'\\\r\n]){0,10}'/,greedy:!0}}),delete a.languages.go["class-name"],function(e){function t(e,t){return"___"+e.toUpperCase()+t+"___"}Object.defineProperties(e.languages["markup-templating"]={},{buildPlaceholders:{value:function(n,r,a,o){if(n.language===r){var i=n.tokenStack=[];n.code=n.code.replace(a,(function(e){if("function"==typeof o&&!o(e))return e;for(var a,l=i.length;-1!==n.code.indexOf(a=t(r,l));)++l;return i[l]=e,a})),n.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(n,r){if(n.language===r&&n.tokenStack){n.grammar=e.languages[r];var a=0,o=Object.keys(n.tokenStack);!function i(l){for(var s=0;s<l.length&&!(a>=o.length);s++){var u=l[s];if("string"==typeof u||u.content&&"string"==typeof u.content){var c=o[a],d=n.tokenStack[c],p="string"==typeof u?u:u.content,f=t(r,c),m=p.indexOf(f);if(m>-1){++a;var g=p.substring(0,m),h=new e.Token(r,e.tokenize(d,n.grammar),"language-"+r,d),b=p.substring(m+f.length),v=[];g&&v.push.apply(v,i([g])),v.push(h),b&&v.push.apply(v,i([b])),"string"==typeof u?l.splice.apply(l,[s,1].concat(v)):u.content=v}}else u.content&&i(u.content)}return l}(n.tokens)}}}})}(a),function(e){e.languages.handlebars={comment:/\{\{![\s\S]*?\}\}/,delimiter:{pattern:/^\{\{\{?|\}\}\}?$/,alias:"punctuation"},string:/(["'])(?:\\.|(?!\1)[^\\\r\n])*\1/,number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee][+-]?\d+)?/,boolean:/\b(?:false|true)\b/,block:{pattern:/^(\s*(?:~\s*)?)[#\/]\S+?(?=\s*(?:~\s*)?$|\s)/,lookbehind:!0,alias:"keyword"},brackets:{pattern:/\[[^\]]+\]/,inside:{punctuation:/\[|\]/,variable:/[\s\S]+/}},punctuation:/[!"#%&':()*+,.\/;<=>@\[\\\]^`{|}~]/,variable:/[^!"#%&'()*+,\/;<=>@\[\\\]^`{|}~\s]+/},e.hooks.add("before-tokenize",(function(t){e.languages["markup-templating"].buildPlaceholders(t,"handlebars",/\{\{\{[\s\S]+?\}\}\}|\{\{[\s\S]+?\}\}/g)})),e.hooks.add("after-tokenize",(function(t){e.languages["markup-templating"].tokenizePlaceholders(t,"handlebars")})),e.languages.hbs=e.languages.handlebars}(a),a.languages.json={property:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,lookbehind:!0,greedy:!0},string:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,lookbehind:!0,greedy:!0},comment:{pattern:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},number:/-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"}},a.languages.webmanifest=a.languages.json,a.languages.less=a.languages.extend("css",{comment:[/\/\*[\s\S]*?\*\//,{pattern:/(^|[^\\])\/\/.*/,lookbehind:!0}],atrule:{pattern:/@[\w-](?:\((?:[^(){}]|\([^(){}]*\))*\)|[^(){};\s]|\s+(?!\s))*?(?=\s*\{)/,inside:{punctuation:/[:()]/}},selector:{pattern:/(?:@\{[\w-]+\}|[^{};\s@])(?:@\{[\w-]+\}|\((?:[^(){}]|\([^(){}]*\))*\)|[^(){};@\s]|\s+(?!\s))*?(?=\s*\{)/,inside:{variable:/@+[\w-]+/}},property:/(?:@\{[\w-]+\}|[\w-])+(?:\+_?)?(?=\s*:)/,operator:/[+\-*\/]/}),a.languages.insertBefore("less","property",{variable:[{pattern:/@[\w-]+\s*:/,inside:{punctuation:/:/}},/@@?[\w-]+/],"mixin-usage":{pattern:/([{;]\s*)[.#](?!\d)[\w-].*?(?=[(;])/,lookbehind:!0,alias:"function"}}),a.languages.makefile={comment:{pattern:/(^|[^\\])#(?:\\(?:\r\n|[\s\S])|[^\\\r\n])*/,lookbehind:!0},string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"builtin-target":{pattern:/\.[A-Z][^:#=\s]+(?=\s*:(?!=))/,alias:"builtin"},target:{pattern:/^(?:[^:=\s]|[ \t]+(?![\s:]))+(?=\s*:(?!=))/m,alias:"symbol",inside:{variable:/\$+(?:(?!\$)[^(){}:#=\s]+|(?=[({]))/}},variable:/\$+(?:(?!\$)[^(){}:#=\s]+|\([@*%<^+?][DF]\)|(?=[({]))/,keyword:/-include\b|\b(?:define|else|endef|endif|export|ifn?def|ifn?eq|include|override|private|sinclude|undefine|unexport|vpath)\b/,function:{pattern:/(\()(?:abspath|addsuffix|and|basename|call|dir|error|eval|file|filter(?:-out)?|findstring|firstword|flavor|foreach|guile|if|info|join|lastword|load|notdir|or|origin|patsubst|realpath|shell|sort|strip|subst|suffix|value|warning|wildcard|word(?:list|s)?)(?=[ \t])/,lookbehind:!0},operator:/(?:::|[?:+!])?=|[|@]/,punctuation:/[:;(){}]/},a.languages.objectivec=a.languages.extend("c",{string:{pattern:/@?"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},keyword:/\b(?:asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|in|inline|int|long|register|return|self|short|signed|sizeof|static|struct|super|switch|typedef|typeof|union|unsigned|void|volatile|while)\b|(?:@interface|@end|@implementation|@protocol|@class|@public|@protected|@private|@property|@try|@catch|@finally|@throw|@synthesize|@dynamic|@selector)\b/,operator:/-[->]?|\+\+?|!=?|<<?=?|>>?=?|==?|&&?|\|\|?|[~^%?*\/@]/}),delete a.languages.objectivec["class-name"],a.languages.objc=a.languages.objectivec,a.languages.ocaml={comment:{pattern:/\(\*[\s\S]*?\*\)/,greedy:!0},char:{pattern:/'(?:[^\\\r\n']|\\(?:.|[ox]?[0-9a-f]{1,3}))'/i,greedy:!0},string:[{pattern:/"(?:\\(?:[\s\S]|\r\n)|[^\\\r\n"])*"/,greedy:!0},{pattern:/\{([a-z_]*)\|[\s\S]*?\|\1\}/,greedy:!0}],number:[/\b(?:0b[01][01_]*|0o[0-7][0-7_]*)\b/i,/\b0x[a-f0-9][a-f0-9_]*(?:\.[a-f0-9_]*)?(?:p[+-]?\d[\d_]*)?(?!\w)/i,/\b\d[\d_]*(?:\.[\d_]*)?(?:e[+-]?\d[\d_]*)?(?!\w)/i],directive:{pattern:/\B#\w+/,alias:"property"},label:{pattern:/\B~\w+/,alias:"property"},"type-variable":{pattern:/\B'\w+/,alias:"function"},variant:{pattern:/`\w+/,alias:"symbol"},keyword:/\b(?:as|assert|begin|class|constraint|do|done|downto|else|end|exception|external|for|fun|function|functor|if|in|include|inherit|initializer|lazy|let|match|method|module|mutable|new|nonrec|object|of|open|private|rec|sig|struct|then|to|try|type|val|value|virtual|when|where|while|with)\b/,boolean:/\b(?:false|true)\b/,"operator-like-punctuation":{pattern:/\[[<>|]|[>|]\]|\{<|>\}/,alias:"punctuation"},operator:/\.[.~]|:[=>]|[=<>@^|&+\-*\/$%!?~][!$%&*+\-.\/:<=>?@^|~]*|\b(?:and|asr|land|lor|lsl|lsr|lxor|mod|or)\b/,punctuation:/;;|::|[(){}\[\].,:;#]|\b_\b/},a.languages.python={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0,greedy:!0},"string-interpolation":{pattern:/(?:f|fr|rf)(?:("""|''')[\s\S]*?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2)/i,greedy:!0,inside:{interpolation:{pattern:/((?:^|[^{])(?:\{\{)*)\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}])+\})+\})+\}/,lookbehind:!0,inside:{"format-spec":{pattern:/(:)[^:(){}]+(?=\}$)/,lookbehind:!0},"conversion-option":{pattern:/![sra](?=[:}]$)/,alias:"punctuation"},rest:null}},string:/[\s\S]+/}},"triple-quoted-string":{pattern:/(?:[rub]|br|rb)?("""|''')[\s\S]*?\1/i,greedy:!0,alias:"string"},string:{pattern:/(?:[rub]|br|rb)?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/i,greedy:!0},function:{pattern:/((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g,lookbehind:!0},"class-name":{pattern:/(\bclass\s+)\w+/i,lookbehind:!0},decorator:{pattern:/(^[\t ]*)@\w+(?:\.\w+)*/m,lookbehind:!0,alias:["annotation","punctuation"],inside:{punctuation:/\./}},keyword:/\b(?:_(?=\s*:)|and|as|assert|async|await|break|case|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|match|nonlocal|not|or|pass|print|raise|return|try|while|with|yield)\b/,builtin:/\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\b/,boolean:/\b(?:False|None|True)\b/,number:/\b0(?:b(?:_?[01])+|o(?:_?[0-7])+|x(?:_?[a-f0-9])+)\b|(?:\b\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\B\.\d+(?:_\d+)*)(?:e[+-]?\d+(?:_\d+)*)?j?(?!\w)/i,operator:/[-+%=]=?|!=|:=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,punctuation:/[{}[\];(),.:]/},a.languages.python["string-interpolation"].inside.interpolation.inside.rest=a.languages.python,a.languages.py=a.languages.python,a.languages.reason=a.languages.extend("clike",{string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^\\\r\n"])*"/,greedy:!0},"class-name":/\b[A-Z]\w*/,keyword:/\b(?:and|as|assert|begin|class|constraint|do|done|downto|else|end|exception|external|for|fun|function|functor|if|in|include|inherit|initializer|lazy|let|method|module|mutable|new|nonrec|object|of|open|or|private|rec|sig|struct|switch|then|to|try|type|val|virtual|when|while|with)\b/,operator:/\.{3}|:[:=]|\|>|->|=(?:==?|>)?|<=?|>=?|[|^?'#!~`]|[+\-*\/]\.?|\b(?:asr|land|lor|lsl|lsr|lxor|mod)\b/}),a.languages.insertBefore("reason","class-name",{char:{pattern:/'(?:\\x[\da-f]{2}|\\o[0-3][0-7][0-7]|\\\d{3}|\\.|[^'\\\r\n])'/,greedy:!0},constructor:/\b[A-Z]\w*\b(?!\s*\.)/,label:{pattern:/\b[a-z]\w*(?=::)/,alias:"symbol"}}),delete a.languages.reason.function,function(e){e.languages.sass=e.languages.extend("css",{comment:{pattern:/^([ \t]*)\/[\/*].*(?:(?:\r?\n|\r)\1[ \t].+)*/m,lookbehind:!0,greedy:!0}}),e.languages.insertBefore("sass","atrule",{"atrule-line":{pattern:/^(?:[ \t]*)[@+=].+/m,greedy:!0,inside:{atrule:/(?:@[\w-]+|[+=])/}}}),delete e.languages.sass.atrule;var t=/\$[-\w]+|#\{\$[-\w]+\}/,n=[/[+*\/%]|[=!]=|<=?|>=?|\b(?:and|not|or)\b/,{pattern:/(\s)-(?=\s)/,lookbehind:!0}];e.languages.insertBefore("sass","property",{"variable-line":{pattern:/^[ \t]*\$.+/m,greedy:!0,inside:{punctuation:/:/,variable:t,operator:n}},"property-line":{pattern:/^[ \t]*(?:[^:\s]+ *:.*|:[^:\s].*)/m,greedy:!0,inside:{property:[/[^:\s]+(?=\s*:)/,{pattern:/(:)[^:\s]+/,lookbehind:!0}],punctuation:/:/,variable:t,operator:n,important:e.languages.sass.important}}}),delete e.languages.sass.property,delete e.languages.sass.important,e.languages.insertBefore("sass","punctuation",{selector:{pattern:/^([ \t]*)\S(?:,[^,\r\n]+|[^,\r\n]*)(?:,[^,\r\n]+)*(?:,(?:\r?\n|\r)\1[ \t]+\S(?:,[^,\r\n]+|[^,\r\n]*)(?:,[^,\r\n]+)*)*/m,lookbehind:!0,greedy:!0}})}(a),a.languages.scss=a.languages.extend("css",{comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0},atrule:{pattern:/@[\w-](?:\([^()]+\)|[^()\s]|\s+(?!\s))*?(?=\s+[{;])/,inside:{rule:/@[\w-]+/}},url:/(?:[-a-z]+-)?url(?=\()/i,selector:{pattern:/(?=\S)[^@;{}()]?(?:[^@;{}()\s]|\s+(?!\s)|#\{\$[-\w]+\})+(?=\s*\{(?:\}|\s|[^}][^:{}]*[:{][^}]))/,inside:{parent:{pattern:/&/,alias:"important"},placeholder:/%[-\w]+/,variable:/\$[-\w]+|#\{\$[-\w]+\}/}},property:{pattern:/(?:[-\w]|\$[-\w]|#\{\$[-\w]+\})+(?=\s*:)/,inside:{variable:/\$[-\w]+|#\{\$[-\w]+\}/}}}),a.languages.insertBefore("scss","atrule",{keyword:[/@(?:content|debug|each|else(?: if)?|extend|for|forward|function|if|import|include|mixin|return|use|warn|while)\b/i,{pattern:/( )(?:from|through)(?= )/,lookbehind:!0}]}),a.languages.insertBefore("scss","important",{variable:/\$[-\w]+|#\{\$[-\w]+\}/}),a.languages.insertBefore("scss","function",{"module-modifier":{pattern:/\b(?:as|hide|show|with)\b/i,alias:"keyword"},placeholder:{pattern:/%[-\w]+/,alias:"selector"},statement:{pattern:/\B!(?:default|optional)\b/i,alias:"keyword"},boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"},operator:{pattern:/(\s)(?:[-+*\/%]|[=!]=|<=?|>=?|and|not|or)(?=\s)/,lookbehind:!0}}),a.languages.scss.atrule.inside.rest=a.languages.scss,function(e){var t={pattern:/(\b\d+)(?:%|[a-z]+)/,lookbehind:!0},n={pattern:/(^|[^\w.-])-?(?:\d+(?:\.\d+)?|\.\d+)/,lookbehind:!0},r={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0},url:{pattern:/\burl\((["']?).*?\1\)/i,greedy:!0},string:{pattern:/("|')(?:(?!\1)[^\\\r\n]|\\(?:\r\n|[\s\S]))*\1/,greedy:!0},interpolation:null,func:null,important:/\B!(?:important|optional)\b/i,keyword:{pattern:/(^|\s+)(?:(?:else|for|if|return|unless)(?=\s|$)|@[\w-]+)/,lookbehind:!0},hexcode:/#[\da-f]{3,6}/i,color:[/\b(?:AliceBlue|AntiqueWhite|Aqua|Aquamarine|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenRod|DarkGr[ae]y|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGr[ae]y|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGr[ae]y|DodgerBlue|FireBrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|GoldenRod|Gr[ae]y|Green|GreenYellow|HoneyDew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenRodYellow|LightGr[ae]y|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGr[ae]y|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquaMarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenRod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGr[ae]y|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen)\b/i,{pattern:/\b(?:hsl|rgb)\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*\)\B|\b(?:hsl|rgb)a\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*,\s*(?:0|0?\.\d+|1)\s*\)\B/i,inside:{unit:t,number:n,function:/[\w-]+(?=\()/,punctuation:/[(),]/}}],entity:/\\[\da-f]{1,8}/i,unit:t,boolean:/\b(?:false|true)\b/,operator:[/~|[+!\/%<>?=]=?|[-:]=|\*[*=]?|\.{2,3}|&&|\|\||\B-\B|\b(?:and|in|is(?: a| defined| not|nt)?|not|or)\b/],number:n,punctuation:/[{}()\[\];:,]/};r.interpolation={pattern:/\{[^\r\n}:]+\}/,alias:"variable",inside:{delimiter:{pattern:/^\{|\}$/,alias:"punctuation"},rest:r}},r.func={pattern:/[\w-]+\([^)]*\).*/,inside:{function:/^[^(]+/,rest:r}},e.languages.stylus={"atrule-declaration":{pattern:/(^[ \t]*)@.+/m,lookbehind:!0,inside:{atrule:/^@[\w-]+/,rest:r}},"variable-declaration":{pattern:/(^[ \t]*)[\w$-]+\s*.?=[ \t]*(?:\{[^{}]*\}|\S.*|$)/m,lookbehind:!0,inside:{variable:/^\S+/,rest:r}},statement:{pattern:/(^[ \t]*)(?:else|for|if|return|unless)[ \t].+/m,lookbehind:!0,inside:{keyword:/^\S+/,rest:r}},"property-declaration":{pattern:/((?:^|\{)([ \t]*))(?:[\w-]|\{[^}\r\n]+\})+(?:\s*:\s*|[ \t]+)(?!\s)[^{\r\n]*(?:;|[^{\r\n,]$(?!(?:\r?\n|\r)(?:\{|\2[ \t])))/m,lookbehind:!0,inside:{property:{pattern:/^[^\s:]+/,inside:{interpolation:r.interpolation}},rest:r}},selector:{pattern:/(^[ \t]*)(?:(?=\S)(?:[^{}\r\n:()]|::?[\w-]+(?:\([^)\r\n]*\)|(?![\w-]))|\{[^}\r\n]+\})+)(?:(?:\r?\n|\r)(?:\1(?:(?=\S)(?:[^{}\r\n:()]|::?[\w-]+(?:\([^)\r\n]*\)|(?![\w-]))|\{[^}\r\n]+\})+)))*(?:,$|\{|(?=(?:\r?\n|\r)(?:\{|\1[ \t])))/m,lookbehind:!0,inside:{interpolation:r.interpolation,comment:r.comment,punctuation:/[{},]/}},func:r.func,string:r.string,comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0,greedy:!0},interpolation:r.interpolation,punctuation:/[{}()\[\];:.]/}}(a),function(e){var t=e.util.clone(e.languages.typescript);e.languages.tsx=e.languages.extend("jsx",t),delete e.languages.tsx.parameter,delete e.languages.tsx["literal-property"];var n=e.languages.tsx.tag;n.pattern=RegExp(/(^|[^\w$]|(?=<\/))/.source+"(?:"+n.pattern.source+")",n.pattern.flags),n.lookbehind=!0}(a),a.languages.wasm={comment:[/\(;[\s\S]*?;\)/,{pattern:/;;.*/,greedy:!0}],string:{pattern:/"(?:\\[\s\S]|[^"\\])*"/,greedy:!0},keyword:[{pattern:/\b(?:align|offset)=/,inside:{operator:/=/}},{pattern:/\b(?:(?:f32|f64|i32|i64)(?:\.(?:abs|add|and|ceil|clz|const|convert_[su]\/i(?:32|64)|copysign|ctz|demote\/f64|div(?:_[su])?|eqz?|extend_[su]\/i32|floor|ge(?:_[su])?|gt(?:_[su])?|le(?:_[su])?|load(?:(?:8|16|32)_[su])?|lt(?:_[su])?|max|min|mul|neg?|nearest|or|popcnt|promote\/f32|reinterpret\/[fi](?:32|64)|rem_[su]|rot[lr]|shl|shr_[su]|sqrt|store(?:8|16|32)?|sub|trunc(?:_[su]\/f(?:32|64))?|wrap\/i64|xor))?|memory\.(?:grow|size))\b/,inside:{punctuation:/\./}},/\b(?:anyfunc|block|br(?:_if|_table)?|call(?:_indirect)?|data|drop|elem|else|end|export|func|get_(?:global|local)|global|if|import|local|loop|memory|module|mut|nop|offset|param|result|return|select|set_(?:global|local)|start|table|tee_local|then|type|unreachable)\b/],variable:/\$[\w!#$%&'*+\-./:<=>?@\\^`|~]+/,number:/[+-]?\b(?:\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:[eE][+-]?\d(?:_?\d)*)?|0x[\da-fA-F](?:_?[\da-fA-F])*(?:\.[\da-fA-F](?:_?[\da-fA-D])*)?(?:[pP][+-]?\d(?:_?\d)*)?)\b|\binf\b|\bnan(?::0x[\da-fA-F](?:_?[\da-fA-D])*)?\b/,punctuation:/[()]/};const o=a},9901:e=>{e.exports&&(e.exports={core:{meta:{path:"components/prism-core.js",option:"mandatory"},core:"Core"},themes:{meta:{path:"themes/{id}.css",link:"index.html?theme={id}",exclusive:!0},prism:{title:"Default",option:"default"},"prism-dark":"Dark","prism-funky":"Funky","prism-okaidia":{title:"Okaidia",owner:"ocodia"},"prism-twilight":{title:"Twilight",owner:"remybach"},"prism-coy":{title:"Coy",owner:"tshedor"},"prism-solarizedlight":{title:"Solarized Light",owner:"hectormatos2011 "},"prism-tomorrow":{title:"Tomorrow Night",owner:"Rosey"}},languages:{meta:{path:"components/prism-{id}",noCSS:!0,examplesPath:"examples/prism-{id}",addCheckAll:!0},markup:{title:"Markup",alias:["html","xml","svg","mathml","ssml","atom","rss"],aliasTitles:{html:"HTML",xml:"XML",svg:"SVG",mathml:"MathML",ssml:"SSML",atom:"Atom",rss:"RSS"},option:"default"},css:{title:"CSS",option:"default",modify:"markup"},clike:{title:"C-like",option:"default"},javascript:{title:"JavaScript",require:"clike",modify:"markup",optional:"regex",alias:"js",option:"default"},abap:{title:"ABAP",owner:"dellagustin"},abnf:{title:"ABNF",owner:"RunDevelopment"},actionscript:{title:"ActionScript",require:"javascript",modify:"markup",owner:"Golmote"},ada:{title:"Ada",owner:"Lucretia"},agda:{title:"Agda",owner:"xy-ren"},al:{title:"AL",owner:"RunDevelopment"},antlr4:{title:"ANTLR4",alias:"g4",owner:"RunDevelopment"},apacheconf:{title:"Apache Configuration",owner:"GuiTeK"},apex:{title:"Apex",require:["clike","sql"],owner:"RunDevelopment"},apl:{title:"APL",owner:"ngn"},applescript:{title:"AppleScript",owner:"Golmote"},aql:{title:"AQL",owner:"RunDevelopment"},arduino:{title:"Arduino",require:"cpp",alias:"ino",owner:"dkern"},arff:{title:"ARFF",owner:"Golmote"},armasm:{title:"ARM Assembly",alias:"arm-asm",owner:"RunDevelopment"},arturo:{title:"Arturo",alias:"art",optional:["bash","css","javascript","markup","markdown","sql"],owner:"drkameleon"},asciidoc:{alias:"adoc",title:"AsciiDoc",owner:"Golmote"},aspnet:{title:"ASP.NET (C#)",require:["markup","csharp"],owner:"nauzilus"},asm6502:{title:"6502 Assembly",owner:"kzurawel"},asmatmel:{title:"Atmel AVR Assembly",owner:"cerkit"},autohotkey:{title:"AutoHotkey",owner:"aviaryan"},autoit:{title:"AutoIt",owner:"Golmote"},avisynth:{title:"AviSynth",alias:"avs",owner:"Zinfidel"},"avro-idl":{title:"Avro IDL",alias:"avdl",owner:"RunDevelopment"},awk:{title:"AWK",alias:"gawk",aliasTitles:{gawk:"GAWK"},owner:"RunDevelopment"},bash:{title:"Bash",alias:["sh","shell"],aliasTitles:{sh:"Shell",shell:"Shell"},owner:"zeitgeist87"},basic:{title:"BASIC",owner:"Golmote"},batch:{title:"Batch",owner:"Golmote"},bbcode:{title:"BBcode",alias:"shortcode",aliasTitles:{shortcode:"Shortcode"},owner:"RunDevelopment"},bbj:{title:"BBj",owner:"hyyan"},bicep:{title:"Bicep",owner:"johnnyreilly"},birb:{title:"Birb",require:"clike",owner:"Calamity210"},bison:{title:"Bison",require:"c",owner:"Golmote"},bnf:{title:"BNF",alias:"rbnf",aliasTitles:{rbnf:"RBNF"},owner:"RunDevelopment"},bqn:{title:"BQN",owner:"yewscion"},brainfuck:{title:"Brainfuck",owner:"Golmote"},brightscript:{title:"BrightScript",owner:"RunDevelopment"},bro:{title:"Bro",owner:"wayward710"},bsl:{title:"BSL (1C:Enterprise)",alias:"oscript",aliasTitles:{oscript:"OneScript"},owner:"Diversus23"},c:{title:"C",require:"clike",owner:"zeitgeist87"},csharp:{title:"C#",require:"clike",alias:["cs","dotnet"],owner:"mvalipour"},cpp:{title:"C++",require:"c",owner:"zeitgeist87"},cfscript:{title:"CFScript",require:"clike",alias:"cfc",owner:"mjclemente"},chaiscript:{title:"ChaiScript",require:["clike","cpp"],owner:"RunDevelopment"},cil:{title:"CIL",owner:"sbrl"},cilkc:{title:"Cilk/C",require:"c",alias:"cilk-c",owner:"OpenCilk"},cilkcpp:{title:"Cilk/C++",require:"cpp",alias:["cilk-cpp","cilk"],owner:"OpenCilk"},clojure:{title:"Clojure",owner:"troglotit"},cmake:{title:"CMake",owner:"mjrogozinski"},cobol:{title:"COBOL",owner:"RunDevelopment"},coffeescript:{title:"CoffeeScript",require:"javascript",alias:"coffee",owner:"R-osey"},concurnas:{title:"Concurnas",alias:"conc",owner:"jasontatton"},csp:{title:"Content-Security-Policy",owner:"ScottHelme"},cooklang:{title:"Cooklang",owner:"ahue"},coq:{title:"Coq",owner:"RunDevelopment"},crystal:{title:"Crystal",require:"ruby",owner:"MakeNowJust"},"css-extras":{title:"CSS Extras",require:"css",modify:"css",owner:"milesj"},csv:{title:"CSV",owner:"RunDevelopment"},cue:{title:"CUE",owner:"RunDevelopment"},cypher:{title:"Cypher",owner:"RunDevelopment"},d:{title:"D",require:"clike",owner:"Golmote"},dart:{title:"Dart",require:"clike",owner:"Golmote"},dataweave:{title:"DataWeave",owner:"machaval"},dax:{title:"DAX",owner:"peterbud"},dhall:{title:"Dhall",owner:"RunDevelopment"},diff:{title:"Diff",owner:"uranusjr"},django:{title:"Django/Jinja2",require:"markup-templating",alias:"jinja2",owner:"romanvm"},"dns-zone-file":{title:"DNS zone file",owner:"RunDevelopment",alias:"dns-zone"},docker:{title:"Docker",alias:"dockerfile",owner:"JustinBeckwith"},dot:{title:"DOT (Graphviz)",alias:"gv",optional:"markup",owner:"RunDevelopment"},ebnf:{title:"EBNF",owner:"RunDevelopment"},editorconfig:{title:"EditorConfig",owner:"osipxd"},eiffel:{title:"Eiffel",owner:"Conaclos"},ejs:{title:"EJS",require:["javascript","markup-templating"],owner:"RunDevelopment",alias:"eta",aliasTitles:{eta:"Eta"}},elixir:{title:"Elixir",owner:"Golmote"},elm:{title:"Elm",owner:"zwilias"},etlua:{title:"Embedded Lua templating",require:["lua","markup-templating"],owner:"RunDevelopment"},erb:{title:"ERB",require:["ruby","markup-templating"],owner:"Golmote"},erlang:{title:"Erlang",owner:"Golmote"},"excel-formula":{title:"Excel Formula",alias:["xlsx","xls"],owner:"RunDevelopment"},fsharp:{title:"F#",require:"clike",owner:"simonreynolds7"},factor:{title:"Factor",owner:"catb0t"},false:{title:"False",owner:"edukisto"},"firestore-security-rules":{title:"Firestore security rules",require:"clike",owner:"RunDevelopment"},flow:{title:"Flow",require:"javascript",owner:"Golmote"},fortran:{title:"Fortran",owner:"Golmote"},ftl:{title:"FreeMarker Template Language",require:"markup-templating",owner:"RunDevelopment"},gml:{title:"GameMaker Language",alias:"gamemakerlanguage",require:"clike",owner:"LiarOnce"},gap:{title:"GAP (CAS)",owner:"RunDevelopment"},gcode:{title:"G-code",owner:"RunDevelopment"},gdscript:{title:"GDScript",owner:"RunDevelopment"},gedcom:{title:"GEDCOM",owner:"Golmote"},gettext:{title:"gettext",alias:"po",owner:"RunDevelopment"},gherkin:{title:"Gherkin",owner:"hason"},git:{title:"Git",owner:"lgiraudel"},glsl:{title:"GLSL",require:"c",owner:"Golmote"},gn:{title:"GN",alias:"gni",owner:"RunDevelopment"},"linker-script":{title:"GNU Linker Script",alias:"ld",owner:"RunDevelopment"},go:{title:"Go",require:"clike",owner:"arnehormann"},"go-module":{title:"Go module",alias:"go-mod",owner:"RunDevelopment"},gradle:{title:"Gradle",require:"clike",owner:"zeabdelkhalek-badido18"},graphql:{title:"GraphQL",optional:"markdown",owner:"Golmote"},groovy:{title:"Groovy",require:"clike",owner:"robfletcher"},haml:{title:"Haml",require:"ruby",optional:["css","css-extras","coffeescript","erb","javascript","less","markdown","scss","textile"],owner:"Golmote"},handlebars:{title:"Handlebars",require:"markup-templating",alias:["hbs","mustache"],aliasTitles:{mustache:"Mustache"},owner:"Golmote"},haskell:{title:"Haskell",alias:"hs",owner:"bholst"},haxe:{title:"Haxe",require:"clike",optional:"regex",owner:"Golmote"},hcl:{title:"HCL",owner:"outsideris"},hlsl:{title:"HLSL",require:"c",owner:"RunDevelopment"},hoon:{title:"Hoon",owner:"matildepark"},http:{title:"HTTP",optional:["csp","css","hpkp","hsts","javascript","json","markup","uri"],owner:"danielgtaylor"},hpkp:{title:"HTTP Public-Key-Pins",owner:"ScottHelme"},hsts:{title:"HTTP Strict-Transport-Security",owner:"ScottHelme"},ichigojam:{title:"IchigoJam",owner:"BlueCocoa"},icon:{title:"Icon",owner:"Golmote"},"icu-message-format":{title:"ICU Message Format",owner:"RunDevelopment"},idris:{title:"Idris",alias:"idr",owner:"KeenS",require:"haskell"},ignore:{title:".ignore",owner:"osipxd",alias:["gitignore","hgignore","npmignore"],aliasTitles:{gitignore:".gitignore",hgignore:".hgignore",npmignore:".npmignore"}},inform7:{title:"Inform 7",owner:"Golmote"},ini:{title:"Ini",owner:"aviaryan"},io:{title:"Io",owner:"AlesTsurko"},j:{title:"J",owner:"Golmote"},java:{title:"Java",require:"clike",owner:"sherblot"},javadoc:{title:"JavaDoc",require:["markup","java","javadoclike"],modify:"java",optional:"scala",owner:"RunDevelopment"},javadoclike:{title:"JavaDoc-like",modify:["java","javascript","php"],owner:"RunDevelopment"},javastacktrace:{title:"Java stack trace",owner:"RunDevelopment"},jexl:{title:"Jexl",owner:"czosel"},jolie:{title:"Jolie",require:"clike",owner:"thesave"},jq:{title:"JQ",owner:"RunDevelopment"},jsdoc:{title:"JSDoc",require:["javascript","javadoclike","typescript"],modify:"javascript",optional:["actionscript","coffeescript"],owner:"RunDevelopment"},"js-extras":{title:"JS Extras",require:"javascript",modify:"javascript",optional:["actionscript","coffeescript","flow","n4js","typescript"],owner:"RunDevelopment"},json:{title:"JSON",alias:"webmanifest",aliasTitles:{webmanifest:"Web App Manifest"},owner:"CupOfTea696"},json5:{title:"JSON5",require:"json",owner:"RunDevelopment"},jsonp:{title:"JSONP",require:"json",owner:"RunDevelopment"},jsstacktrace:{title:"JS stack trace",owner:"sbrl"},"js-templates":{title:"JS Templates",require:"javascript",modify:"javascript",optional:["css","css-extras","graphql","markdown","markup","sql"],owner:"RunDevelopment"},julia:{title:"Julia",owner:"cdagnino"},keepalived:{title:"Keepalived Configure",owner:"dev-itsheng"},keyman:{title:"Keyman",owner:"mcdurdin"},kotlin:{title:"Kotlin",alias:["kt","kts"],aliasTitles:{kts:"Kotlin Script"},require:"clike",owner:"Golmote"},kumir:{title:"KuMir (\u041a\u0443\u041c\u0438\u0440)",alias:"kum",owner:"edukisto"},kusto:{title:"Kusto",owner:"RunDevelopment"},latex:{title:"LaTeX",alias:["tex","context"],aliasTitles:{tex:"TeX",context:"ConTeXt"},owner:"japborst"},latte:{title:"Latte",require:["clike","markup-templating","php"],owner:"nette"},less:{title:"Less",require:"css",optional:"css-extras",owner:"Golmote"},lilypond:{title:"LilyPond",require:"scheme",alias:"ly",owner:"RunDevelopment"},liquid:{title:"Liquid",require:"markup-templating",owner:"cinhtau"},lisp:{title:"Lisp",alias:["emacs","elisp","emacs-lisp"],owner:"JuanCaicedo"},livescript:{title:"LiveScript",owner:"Golmote"},llvm:{title:"LLVM IR",owner:"porglezomp"},log:{title:"Log file",optional:"javastacktrace",owner:"RunDevelopment"},lolcode:{title:"LOLCODE",owner:"Golmote"},lua:{title:"Lua",owner:"Golmote"},magma:{title:"Magma (CAS)",owner:"RunDevelopment"},makefile:{title:"Makefile",owner:"Golmote"},markdown:{title:"Markdown",require:"markup",optional:"yaml",alias:"md",owner:"Golmote"},"markup-templating":{title:"Markup templating",require:"markup",owner:"Golmote"},mata:{title:"Mata",owner:"RunDevelopment"},matlab:{title:"MATLAB",owner:"Golmote"},maxscript:{title:"MAXScript",owner:"RunDevelopment"},mel:{title:"MEL",owner:"Golmote"},mermaid:{title:"Mermaid",owner:"RunDevelopment"},metafont:{title:"METAFONT",owner:"LaeriExNihilo"},mizar:{title:"Mizar",owner:"Golmote"},mongodb:{title:"MongoDB",owner:"airs0urce",require:"javascript"},monkey:{title:"Monkey",owner:"Golmote"},moonscript:{title:"MoonScript",alias:"moon",owner:"RunDevelopment"},n1ql:{title:"N1QL",owner:"TMWilds"},n4js:{title:"N4JS",require:"javascript",optional:"jsdoc",alias:"n4jsd",owner:"bsmith-n4"},"nand2tetris-hdl":{title:"Nand To Tetris HDL",owner:"stephanmax"},naniscript:{title:"Naninovel Script",owner:"Elringus",alias:"nani"},nasm:{title:"NASM",owner:"rbmj"},neon:{title:"NEON",owner:"nette"},nevod:{title:"Nevod",owner:"nezaboodka"},nginx:{title:"nginx",owner:"volado"},nim:{title:"Nim",owner:"Golmote"},nix:{title:"Nix",owner:"Golmote"},nsis:{title:"NSIS",owner:"idleberg"},objectivec:{title:"Objective-C",require:"c",alias:"objc",owner:"uranusjr"},ocaml:{title:"OCaml",owner:"Golmote"},odin:{title:"Odin",owner:"edukisto"},opencl:{title:"OpenCL",require:"c",modify:["c","cpp"],owner:"Milania1"},openqasm:{title:"OpenQasm",alias:"qasm",owner:"RunDevelopment"},oz:{title:"Oz",owner:"Golmote"},parigp:{title:"PARI/GP",owner:"Golmote"},parser:{title:"Parser",require:"markup",owner:"Golmote"},pascal:{title:"Pascal",alias:"objectpascal",aliasTitles:{objectpascal:"Object Pascal"},owner:"Golmote"},pascaligo:{title:"Pascaligo",owner:"DefinitelyNotAGoat"},psl:{title:"PATROL Scripting Language",owner:"bertysentry"},pcaxis:{title:"PC-Axis",alias:"px",owner:"RunDevelopment"},peoplecode:{title:"PeopleCode",alias:"pcode",owner:"RunDevelopment"},perl:{title:"Perl",owner:"Golmote"},php:{title:"PHP",require:"markup-templating",owner:"milesj"},phpdoc:{title:"PHPDoc",require:["php","javadoclike"],modify:"php",owner:"RunDevelopment"},"php-extras":{title:"PHP Extras",require:"php",modify:"php",owner:"milesj"},"plant-uml":{title:"PlantUML",alias:"plantuml",owner:"RunDevelopment"},plsql:{title:"PL/SQL",require:"sql",owner:"Golmote"},powerquery:{title:"PowerQuery",alias:["pq","mscript"],owner:"peterbud"},powershell:{title:"PowerShell",owner:"nauzilus"},processing:{title:"Processing",require:"clike",owner:"Golmote"},prolog:{title:"Prolog",owner:"Golmote"},promql:{title:"PromQL",owner:"arendjr"},properties:{title:".properties",owner:"Golmote"},protobuf:{title:"Protocol Buffers",require:"clike",owner:"just-boris"},pug:{title:"Pug",require:["markup","javascript"],optional:["coffeescript","ejs","handlebars","less","livescript","markdown","scss","stylus","twig"],owner:"Golmote"},puppet:{title:"Puppet",owner:"Golmote"},pure:{title:"Pure",optional:["c","cpp","fortran"],owner:"Golmote"},purebasic:{title:"PureBasic",require:"clike",alias:"pbfasm",owner:"HeX0R101"},purescript:{title:"PureScript",require:"haskell",alias:"purs",owner:"sriharshachilakapati"},python:{title:"Python",alias:"py",owner:"multipetros"},qsharp:{title:"Q#",require:"clike",alias:"qs",owner:"fedonman"},q:{title:"Q (kdb+ database)",owner:"Golmote"},qml:{title:"QML",require:"javascript",owner:"RunDevelopment"},qore:{title:"Qore",require:"clike",owner:"temnroegg"},r:{title:"R",owner:"Golmote"},racket:{title:"Racket",require:"scheme",alias:"rkt",owner:"RunDevelopment"},cshtml:{title:"Razor C#",alias:"razor",require:["markup","csharp"],optional:["css","css-extras","javascript","js-extras"],owner:"RunDevelopment"},jsx:{title:"React JSX",require:["markup","javascript"],optional:["jsdoc","js-extras","js-templates"],owner:"vkbansal"},tsx:{title:"React TSX",require:["jsx","typescript"]},reason:{title:"Reason",require:"clike",owner:"Golmote"},regex:{title:"Regex",owner:"RunDevelopment"},rego:{title:"Rego",owner:"JordanSh"},renpy:{title:"Ren'py",alias:"rpy",owner:"HyuchiaDiego"},rescript:{title:"ReScript",alias:"res",owner:"vmarcosp"},rest:{title:"reST (reStructuredText)",owner:"Golmote"},rip:{title:"Rip",owner:"ravinggenius"},roboconf:{title:"Roboconf",owner:"Golmote"},robotframework:{title:"Robot Framework",alias:"robot",owner:"RunDevelopment"},ruby:{title:"Ruby",require:"clike",alias:"rb",owner:"samflores"},rust:{title:"Rust",owner:"Golmote"},sas:{title:"SAS",optional:["groovy","lua","sql"],owner:"Golmote"},sass:{title:"Sass (Sass)",require:"css",optional:"css-extras",owner:"Golmote"},scss:{title:"Sass (SCSS)",require:"css",optional:"css-extras",owner:"MoOx"},scala:{title:"Scala",require:"java",owner:"jozic"},scheme:{title:"Scheme",owner:"bacchus123"},"shell-session":{title:"Shell session",require:"bash",alias:["sh-session","shellsession"],owner:"RunDevelopment"},smali:{title:"Smali",owner:"RunDevelopment"},smalltalk:{title:"Smalltalk",owner:"Golmote"},smarty:{title:"Smarty",require:"markup-templating",optional:"php",owner:"Golmote"},sml:{title:"SML",alias:"smlnj",aliasTitles:{smlnj:"SML/NJ"},owner:"RunDevelopment"},solidity:{title:"Solidity (Ethereum)",alias:"sol",require:"clike",owner:"glachaud"},"solution-file":{title:"Solution file",alias:"sln",owner:"RunDevelopment"},soy:{title:"Soy (Closure Template)",require:"markup-templating",owner:"Golmote"},sparql:{title:"SPARQL",require:"turtle",owner:"Triply-Dev",alias:"rq"},"splunk-spl":{title:"Splunk SPL",owner:"RunDevelopment"},sqf:{title:"SQF: Status Quo Function (Arma 3)",require:"clike",owner:"RunDevelopment"},sql:{title:"SQL",owner:"multipetros"},squirrel:{title:"Squirrel",require:"clike",owner:"RunDevelopment"},stan:{title:"Stan",owner:"RunDevelopment"},stata:{title:"Stata Ado",require:["mata","java","python"],owner:"RunDevelopment"},iecst:{title:"Structured Text (IEC 61131-3)",owner:"serhioromano"},stylus:{title:"Stylus",owner:"vkbansal"},supercollider:{title:"SuperCollider",alias:"sclang",owner:"RunDevelopment"},swift:{title:"Swift",owner:"chrischares"},systemd:{title:"Systemd configuration file",owner:"RunDevelopment"},"t4-templating":{title:"T4 templating",owner:"RunDevelopment"},"t4-cs":{title:"T4 Text Templates (C#)",require:["t4-templating","csharp"],alias:"t4",owner:"RunDevelopment"},"t4-vb":{title:"T4 Text Templates (VB)",require:["t4-templating","vbnet"],owner:"RunDevelopment"},tap:{title:"TAP",owner:"isaacs",require:"yaml"},tcl:{title:"Tcl",owner:"PeterChaplin"},tt2:{title:"Template Toolkit 2",require:["clike","markup-templating"],owner:"gflohr"},textile:{title:"Textile",require:"markup",optional:"css",owner:"Golmote"},toml:{title:"TOML",owner:"RunDevelopment"},tremor:{title:"Tremor",alias:["trickle","troy"],owner:"darach",aliasTitles:{trickle:"trickle",troy:"troy"}},turtle:{title:"Turtle",alias:"trig",aliasTitles:{trig:"TriG"},owner:"jakubklimek"},twig:{title:"Twig",require:"markup-templating",owner:"brandonkelly"},typescript:{title:"TypeScript",require:"javascript",optional:"js-templates",alias:"ts",owner:"vkbansal"},typoscript:{title:"TypoScript",alias:"tsconfig",aliasTitles:{tsconfig:"TSConfig"},owner:"dkern"},unrealscript:{title:"UnrealScript",alias:["uscript","uc"],owner:"RunDevelopment"},uorazor:{title:"UO Razor Script",owner:"jaseowns"},uri:{title:"URI",alias:"url",aliasTitles:{url:"URL"},owner:"RunDevelopment"},v:{title:"V",require:"clike",owner:"taggon"},vala:{title:"Vala",require:"clike",optional:"regex",owner:"TemplarVolk"},vbnet:{title:"VB.Net",require:"basic",owner:"Bigsby"},velocity:{title:"Velocity",require:"markup",owner:"Golmote"},verilog:{title:"Verilog",owner:"a-rey"},vhdl:{title:"VHDL",owner:"a-rey"},vim:{title:"vim",owner:"westonganger"},"visual-basic":{title:"Visual Basic",alias:["vb","vba"],aliasTitles:{vba:"VBA"},owner:"Golmote"},warpscript:{title:"WarpScript",owner:"RunDevelopment"},wasm:{title:"WebAssembly",owner:"Golmote"},"web-idl":{title:"Web IDL",alias:"webidl",owner:"RunDevelopment"},wgsl:{title:"WGSL",owner:"Dr4gonthree"},wiki:{title:"Wiki markup",require:"markup",owner:"Golmote"},wolfram:{title:"Wolfram language",alias:["mathematica","nb","wl"],aliasTitles:{mathematica:"Mathematica",nb:"Mathematica Notebook"},owner:"msollami"},wren:{title:"Wren",owner:"clsource"},xeora:{title:"Xeora",require:"markup",alias:"xeoracube",aliasTitles:{xeoracube:"XeoraCube"},owner:"freakmaxi"},"xml-doc":{title:"XML doc (.net)",require:"markup",modify:["csharp","fsharp","vbnet"],owner:"RunDevelopment"},xojo:{title:"Xojo (REALbasic)",owner:"Golmote"},xquery:{title:"XQuery",require:"markup",owner:"Golmote"},yaml:{title:"YAML",alias:"yml",owner:"hason"},yang:{title:"YANG",owner:"RunDevelopment"},zig:{title:"Zig",owner:"RunDevelopment"}},plugins:{meta:{path:"plugins/{id}/prism-{id}",link:"plugins/{id}/"},"line-highlight":{title:"Line Highlight",description:"Highlights specific lines and/or line ranges."},"line-numbers":{title:"Line Numbers",description:"Line number at the beginning of code lines.",owner:"kuba-kubula"},"show-invisibles":{title:"Show Invisibles",description:"Show hidden characters such as tabs and line breaks.",optional:["autolinker","data-uri-highlight"]},autolinker:{title:"Autolinker",description:"Converts URLs and emails in code to clickable links. Parses Markdown links in comments."},wpd:{title:"WebPlatform Docs",description:'Makes tokens link to <a href="https://webplatform.github.io/docs/">WebPlatform.org documentation</a>. The links open in a new tab.'},"custom-class":{title:"Custom Class",description:"This plugin allows you to prefix Prism's default classes (<code>.comment</code> can become <code>.namespace--comment</code>) or replace them with your defined ones (like <code>.editor__comment</code>). You can even add new classes.",owner:"dvkndn",noCSS:!0},"file-highlight":{title:"File Highlight",description:"Fetch external files and highlight them with Prism. Used on the Prism website itself.",noCSS:!0},"show-language":{title:"Show Language",description:"Display the highlighted language in code blocks (inline code does not show the label).",owner:"nauzilus",noCSS:!0,require:"toolbar"},"jsonp-highlight":{title:"JSONP Highlight",description:"Fetch content with JSONP and highlight some interesting content (e.g. GitHub/Gists or Bitbucket API).",noCSS:!0,owner:"nauzilus"},"highlight-keywords":{title:"Highlight Keywords",description:"Adds special CSS classes for each keyword for fine-grained highlighting.",owner:"vkbansal",noCSS:!0},"remove-initial-line-feed":{title:"Remove initial line feed",description:"Removes the initial line feed in code blocks.",owner:"Golmote",noCSS:!0},"inline-color":{title:"Inline color",description:"Adds a small inline preview for colors in style sheets.",require:"css-extras",owner:"RunDevelopment"},previewers:{title:"Previewers",description:"Previewers for angles, colors, gradients, easing and time.",require:"css-extras",owner:"Golmote"},autoloader:{title:"Autoloader",description:"Automatically loads the needed languages to highlight the code blocks.",owner:"Golmote",noCSS:!0},"keep-markup":{title:"Keep Markup",description:"Prevents custom markup from being dropped out during highlighting.",owner:"Golmote",optional:"normalize-whitespace",noCSS:!0},"command-line":{title:"Command Line",description:"Display a command line with a prompt and, optionally, the output/response from the commands.",owner:"chriswells0"},"unescaped-markup":{title:"Unescaped Markup",description:"Write markup without having to escape anything."},"normalize-whitespace":{title:"Normalize Whitespace",description:"Supports multiple operations to normalize whitespace in code blocks.",owner:"zeitgeist87",optional:"unescaped-markup",noCSS:!0},"data-uri-highlight":{title:"Data-URI Highlight",description:"Highlights data-URI contents.",owner:"Golmote",noCSS:!0},toolbar:{title:"Toolbar",description:"Attach a toolbar for plugins to easily register buttons on the top of a code block.",owner:"mAAdhaTTah"},"copy-to-clipboard":{title:"Copy to Clipboard Button",description:"Add a button that copies the code block to the clipboard when clicked.",owner:"mAAdhaTTah",require:"toolbar",noCSS:!0},"download-button":{title:"Download Button",description:"A button in the toolbar of a code block adding a convenient way to download a code file.",owner:"Golmote",require:"toolbar",noCSS:!0},"match-braces":{title:"Match braces",description:"Highlights matching braces.",owner:"RunDevelopment"},"diff-highlight":{title:"Diff Highlight",description:"Highlights the code inside diff blocks.",owner:"RunDevelopment",require:"diff"},"filter-highlight-all":{title:"Filter highlightAll",description:"Filters the elements the <code>highlightAll</code> and <code>highlightAllUnder</code> methods actually highlight.",owner:"RunDevelopment",noCSS:!0},treeview:{title:"Treeview",description:"A language with special styles to highlight file system tree structures.",owner:"Golmote"}}})},2885:(e,t,n)=>{const r=n(9901),a=n(9642),o=new Set;function i(e){void 0===e?e=Object.keys(r.languages).filter((e=>"meta"!=e)):Array.isArray(e)||(e=[e]);const t=[...o,...Object.keys(Prism.languages)];a(r,e,t).load((e=>{if(!(e in r.languages))return void(i.silent||console.warn("Language does not exist: "+e));const t="./prism-"+e;delete n.c[n(6500).resolve(t)],delete Prism.languages[e],n(6500)(t),o.add(e)}))}i.silent=!1,e.exports=i},6726:(e,t,n)=>{var r={"./":2885};function a(e){var t=o(e);return n(t)}function o(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}a.keys=function(){return Object.keys(r)},a.resolve=o,e.exports=a,a.id=6726},6500:(e,t,n)=>{var r={"./":2885};function a(e){var t=o(e);return n(t)}function o(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}a.keys=function(){return Object.keys(r)},a.resolve=o,e.exports=a,a.id=6500},9642:e=>{"use strict";var t=function(){var e=function(){};function t(e,t){Array.isArray(e)?e.forEach(t):null!=e&&t(e,0)}function n(e){for(var t={},n=0,r=e.length;n<r;n++)t[e[n]]=!0;return t}function r(e){var n={},r=[];function a(r,o){if(!(r in n)){o.push(r);var i=o.indexOf(r);if(i<o.length-1)throw new Error("Circular dependency: "+o.slice(i).join(" -> "));var l={},s=e[r];if(s){function u(t){if(!(t in e))throw new Error(r+" depends on an unknown component "+t);if(!(t in l))for(var i in a(t,o),l[t]=!0,n[t])l[i]=!0}t(s.require,u),t(s.optional,u),t(s.modify,u)}n[r]=l,o.pop()}}return function(e){var t=n[e];return t||(a(e,r),t=n[e]),t}}function a(e){for(var t in e)return!0;return!1}return function(o,i,l){var s=function(e){var t={};for(var n in e){var r=e[n];for(var a in r)if("meta"!=a){var o=r[a];t[a]="string"==typeof o?{title:o}:o}}return t}(o),u=function(e){var n;return function(r){if(r in e)return r;if(!n)for(var a in n={},e){var o=e[a];t(o&&o.alias,(function(t){if(t in n)throw new Error(t+" cannot be alias for both "+a+" and "+n[t]);if(t in e)throw new Error(t+" cannot be alias of "+a+" because it is a component.");n[t]=a}))}return n[r]||r}}(s);i=i.map(u),l=(l||[]).map(u);var c=n(i),d=n(l);i.forEach((function e(n){var r=s[n];t(r&&r.require,(function(t){t in d||(c[t]=!0,e(t))}))}));for(var p,f=r(s),m=c;a(m);){for(var g in p={},m){var h=s[g];t(h&&h.modify,(function(e){e in d&&(p[e]=!0)}))}for(var b in d)if(!(b in c))for(var v in f(b))if(v in c){p[b]=!0;break}for(var y in m=p)c[y]=!0}var w={getIds:function(){var e=[];return w.load((function(t){e.push(t)})),e},load:function(t,n){return function(t,n,r,a){var o=a?a.series:void 0,i=a?a.parallel:e,l={},s={};function u(e){if(e in l)return l[e];s[e]=!0;var a,c=[];for(var d in t(e))d in n&&c.push(d);if(0===c.length)a=r(e);else{var p=i(c.map((function(e){var t=u(e);return delete s[e],t})));o?a=o(p,(function(){return r(e)})):r(e)}return l[e]=a}for(var c in n)u(c);var d=[];for(var p in s)d.push(l[p]);return i(d)}(f,c,t,n)}};return w}}();e.exports=t},2703:(e,t,n)=>{"use strict";var r=n(414);function a(){}function o(){}o.resetWarningCache=a,e.exports=function(){function e(e,t,n,a,o,i){if(i!==r){var l=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw l.name="Invariant Violation",l}}function t(){return e}e.isRequired=e;var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:o,resetWarningCache:a};return n.PropTypes=n,n}},5697:(e,t,n)=>{e.exports=n(2703)()},414:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},4448:(e,t,n)=>{"use strict";var r=n(7294),a=n(7418),o=n(3840);function i(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}if(!r)throw Error(i(227));var l=new Set,s={};function u(e,t){c(e,t),c(e+"Capture",t)}function c(e,t){for(s[e]=t,e=0;e<t.length;e++)l.add(t[e])}var d=!("undefined"==typeof window||void 0===window.document||void 0===window.document.createElement),p=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,f=Object.prototype.hasOwnProperty,m={},g={};function h(e,t,n,r,a,o,i){this.acceptsBooleans=2===t||3===t||4===t,this.attributeName=r,this.attributeNamespace=a,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=o,this.removeEmptyString=i}var b={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach((function(e){b[e]=new h(e,0,!1,e,null,!1,!1)})),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach((function(e){var t=e[0];b[t]=new h(t,1,!1,e[1],null,!1,!1)})),["contentEditable","draggable","spellCheck","value"].forEach((function(e){b[e]=new h(e,2,!1,e.toLowerCase(),null,!1,!1)})),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach((function(e){b[e]=new h(e,2,!1,e,null,!1,!1)})),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach((function(e){b[e]=new h(e,3,!1,e.toLowerCase(),null,!1,!1)})),["checked","multiple","muted","selected"].forEach((function(e){b[e]=new h(e,3,!0,e,null,!1,!1)})),["capture","download"].forEach((function(e){b[e]=new h(e,4,!1,e,null,!1,!1)})),["cols","rows","size","span"].forEach((function(e){b[e]=new h(e,6,!1,e,null,!1,!1)})),["rowSpan","start"].forEach((function(e){b[e]=new h(e,5,!1,e.toLowerCase(),null,!1,!1)}));var v=/[\-:]([a-z])/g;function y(e){return e[1].toUpperCase()}function w(e,t,n,r){var a=b.hasOwnProperty(t)?b[t]:null;(null!==a?0===a.type:!r&&(2<t.length&&("o"===t[0]||"O"===t[0])&&("n"===t[1]||"N"===t[1])))||(function(e,t,n,r){if(null==t||function(e,t,n,r){if(null!==n&&0===n.type)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return!r&&(null!==n?!n.acceptsBooleans:"data-"!==(e=e.toLowerCase().slice(0,5))&&"aria-"!==e);default:return!1}}(e,t,n,r))return!0;if(r)return!1;if(null!==n)switch(n.type){case 3:return!t;case 4:return!1===t;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}(t,n,a,r)&&(n=null),r||null===a?function(e){return!!f.call(g,e)||!f.call(m,e)&&(p.test(e)?g[e]=!0:(m[e]=!0,!1))}(t)&&(null===n?e.removeAttribute(t):e.setAttribute(t,""+n)):a.mustUseProperty?e[a.propertyName]=null===n?3!==a.type&&"":n:(t=a.attributeName,r=a.attributeNamespace,null===n?e.removeAttribute(t):(n=3===(a=a.type)||4===a&&!0===n?"":""+n,r?e.setAttributeNS(r,t,n):e.setAttribute(t,n))))}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach((function(e){var t=e.replace(v,y);b[t]=new h(t,1,!1,e,null,!1,!1)})),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach((function(e){var t=e.replace(v,y);b[t]=new h(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)})),["xml:base","xml:lang","xml:space"].forEach((function(e){var t=e.replace(v,y);b[t]=new h(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)})),["tabIndex","crossOrigin"].forEach((function(e){b[e]=new h(e,1,!1,e.toLowerCase(),null,!1,!1)})),b.xlinkHref=new h("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach((function(e){b[e]=new h(e,1,!1,e.toLowerCase(),null,!0,!0)}));var k=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,E=60103,S=60106,x=60107,C=60108,_=60114,T=60109,A=60110,L=60112,P=60113,R=60120,N=60115,O=60116,I=60121,D=60128,M=60129,F=60130,B=60131;if("function"==typeof Symbol&&Symbol.for){var j=Symbol.for;E=j("react.element"),S=j("react.portal"),x=j("react.fragment"),C=j("react.strict_mode"),_=j("react.profiler"),T=j("react.provider"),A=j("react.context"),L=j("react.forward_ref"),P=j("react.suspense"),R=j("react.suspense_list"),N=j("react.memo"),O=j("react.lazy"),I=j("react.block"),j("react.scope"),D=j("react.opaque.id"),M=j("react.debug_trace_mode"),F=j("react.offscreen"),B=j("react.legacy_hidden")}var z,U="function"==typeof Symbol&&Symbol.iterator;function $(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=U&&e[U]||e["@@iterator"])?e:null}function q(e){if(void 0===z)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);z=t&&t[1]||""}return"\n"+z+e}var G=!1;function H(e,t){if(!e||G)return"";G=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),"object"==typeof Reflect&&Reflect.construct){try{Reflect.construct(t,[])}catch(s){var r=s}Reflect.construct(e,[],t)}else{try{t.call()}catch(s){r=s}e.call(t.prototype)}else{try{throw Error()}catch(s){r=s}e()}}catch(s){if(s&&r&&"string"==typeof s.stack){for(var a=s.stack.split("\n"),o=r.stack.split("\n"),i=a.length-1,l=o.length-1;1<=i&&0<=l&&a[i]!==o[l];)l--;for(;1<=i&&0<=l;i--,l--)if(a[i]!==o[l]){if(1!==i||1!==l)do{if(i--,0>--l||a[i]!==o[l])return"\n"+a[i].replace(" at new "," at ")}while(1<=i&&0<=l);break}}}finally{G=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?q(e):""}function Z(e){switch(e.tag){case 5:return q(e.type);case 16:return q("Lazy");case 13:return q("Suspense");case 19:return q("SuspenseList");case 0:case 2:case 15:return e=H(e.type,!1);case 11:return e=H(e.type.render,!1);case 22:return e=H(e.type._render,!1);case 1:return e=H(e.type,!0);default:return""}}function V(e){if(null==e)return null;if("function"==typeof e)return e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case x:return"Fragment";case S:return"Portal";case _:return"Profiler";case C:return"StrictMode";case P:return"Suspense";case R:return"SuspenseList"}if("object"==typeof e)switch(e.$$typeof){case A:return(e.displayName||"Context")+".Consumer";case T:return(e._context.displayName||"Context")+".Provider";case L:var t=e.render;return t=t.displayName||t.name||"",e.displayName||(""!==t?"ForwardRef("+t+")":"ForwardRef");case N:return V(e.type);case I:return V(e._render);case O:t=e._payload,e=e._init;try{return V(e(t))}catch(n){}}return null}function W(e){switch(typeof e){case"boolean":case"number":case"object":case"string":case"undefined":return e;default:return""}}function Y(e){var t=e.type;return(e=e.nodeName)&&"input"===e.toLowerCase()&&("checkbox"===t||"radio"===t)}function K(e){e._valueTracker||(e._valueTracker=function(e){var t=Y(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&void 0!==n&&"function"==typeof n.get&&"function"==typeof n.set){var a=n.get,o=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return a.call(this)},set:function(e){r=""+e,o.call(this,e)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(e){r=""+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}(e))}function Q(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=Y(e)?e.checked?"true":"false":e.value),(e=r)!==n&&(t.setValue(e),!0)}function X(e){if(void 0===(e=e||("undefined"!=typeof document?document:void 0)))return null;try{return e.activeElement||e.body}catch(t){return e.body}}function J(e,t){var n=t.checked;return a({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=n?n:e._wrapperState.initialChecked})}function ee(e,t){var n=null==t.defaultValue?"":t.defaultValue,r=null!=t.checked?t.checked:t.defaultChecked;n=W(null!=t.value?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:"checkbox"===t.type||"radio"===t.type?null!=t.checked:null!=t.value}}function te(e,t){null!=(t=t.checked)&&w(e,"checked",t,!1)}function ne(e,t){te(e,t);var n=W(t.value),r=t.type;if(null!=n)"number"===r?(0===n&&""===e.value||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if("submit"===r||"reset"===r)return void e.removeAttribute("value");t.hasOwnProperty("value")?ae(e,t.type,n):t.hasOwnProperty("defaultValue")&&ae(e,t.type,W(t.defaultValue)),null==t.checked&&null!=t.defaultChecked&&(e.defaultChecked=!!t.defaultChecked)}function re(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!("submit"!==r&&"reset"!==r||void 0!==t.value&&null!==t.value))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}""!==(n=e.name)&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,""!==n&&(e.name=n)}function ae(e,t,n){"number"===t&&X(e.ownerDocument)===e||(null==n?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}function oe(e,t){return e=a({children:void 0},t),(t=function(e){var t="";return r.Children.forEach(e,(function(e){null!=e&&(t+=e)})),t}(t.children))&&(e.children=t),e}function ie(e,t,n,r){if(e=e.options,t){t={};for(var a=0;a<n.length;a++)t["$"+n[a]]=!0;for(n=0;n<e.length;n++)a=t.hasOwnProperty("$"+e[n].value),e[n].selected!==a&&(e[n].selected=a),a&&r&&(e[n].defaultSelected=!0)}else{for(n=""+W(n),t=null,a=0;a<e.length;a++){if(e[a].value===n)return e[a].selected=!0,void(r&&(e[a].defaultSelected=!0));null!==t||e[a].disabled||(t=e[a])}null!==t&&(t.selected=!0)}}function le(e,t){if(null!=t.dangerouslySetInnerHTML)throw Error(i(91));return a({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function se(e,t){var n=t.value;if(null==n){if(n=t.children,t=t.defaultValue,null!=n){if(null!=t)throw Error(i(92));if(Array.isArray(n)){if(!(1>=n.length))throw Error(i(93));n=n[0]}t=n}null==t&&(t=""),n=t}e._wrapperState={initialValue:W(n)}}function ue(e,t){var n=W(t.value),r=W(t.defaultValue);null!=n&&((n=""+n)!==e.value&&(e.value=n),null==t.defaultValue&&e.defaultValue!==n&&(e.defaultValue=n)),null!=r&&(e.defaultValue=""+r)}function ce(e){var t=e.textContent;t===e._wrapperState.initialValue&&""!==t&&null!==t&&(e.value=t)}var de="http://www.w3.org/1999/xhtml",pe="http://www.w3.org/2000/svg";function fe(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function me(e,t){return null==e||"http://www.w3.org/1999/xhtml"===e?fe(t):"http://www.w3.org/2000/svg"===e&&"foreignObject"===t?"http://www.w3.org/1999/xhtml":e}var ge,he,be=(he=function(e,t){if(e.namespaceURI!==pe||"innerHTML"in e)e.innerHTML=t;else{for((ge=ge||document.createElement("div")).innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=ge.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}},"undefined"!=typeof MSApp&&MSApp.execUnsafeLocalFunction?function(e,t,n,r){MSApp.execUnsafeLocalFunction((function(){return he(e,t)}))}:he);function ve(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&3===n.nodeType)return void(n.nodeValue=t)}e.textContent=t}var ye={animationIterationCount:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},we=["Webkit","ms","Moz","O"];function ke(e,t,n){return null==t||"boolean"==typeof t||""===t?"":n||"number"!=typeof t||0===t||ye.hasOwnProperty(e)&&ye[e]?(""+t).trim():t+"px"}function Ee(e,t){for(var n in e=e.style,t)if(t.hasOwnProperty(n)){var r=0===n.indexOf("--"),a=ke(n,t[n],r);"float"===n&&(n="cssFloat"),r?e.setProperty(n,a):e[n]=a}}Object.keys(ye).forEach((function(e){we.forEach((function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),ye[t]=ye[e]}))}));var Se=a({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function xe(e,t){if(t){if(Se[e]&&(null!=t.children||null!=t.dangerouslySetInnerHTML))throw Error(i(137,e));if(null!=t.dangerouslySetInnerHTML){if(null!=t.children)throw Error(i(60));if("object"!=typeof t.dangerouslySetInnerHTML||!("__html"in t.dangerouslySetInnerHTML))throw Error(i(61))}if(null!=t.style&&"object"!=typeof t.style)throw Error(i(62))}}function Ce(e,t){if(-1===e.indexOf("-"))return"string"==typeof t.is;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}function _e(e){return(e=e.target||e.srcElement||window).correspondingUseElement&&(e=e.correspondingUseElement),3===e.nodeType?e.parentNode:e}var Te=null,Ae=null,Le=null;function Pe(e){if(e=ra(e)){if("function"!=typeof Te)throw Error(i(280));var t=e.stateNode;t&&(t=oa(t),Te(e.stateNode,e.type,t))}}function Re(e){Ae?Le?Le.push(e):Le=[e]:Ae=e}function Ne(){if(Ae){var e=Ae,t=Le;if(Le=Ae=null,Pe(e),t)for(e=0;e<t.length;e++)Pe(t[e])}}function Oe(e,t){return e(t)}function Ie(e,t,n,r,a){return e(t,n,r,a)}function De(){}var Me=Oe,Fe=!1,Be=!1;function je(){null===Ae&&null===Le||(De(),Ne())}function ze(e,t){var n=e.stateNode;if(null===n)return null;var r=oa(n);if(null===r)return null;n=r[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(r=!r.disabled)||(r=!("button"===(e=e.type)||"input"===e||"select"===e||"textarea"===e)),e=!r;break e;default:e=!1}if(e)return null;if(n&&"function"!=typeof n)throw Error(i(231,t,typeof n));return n}var Ue=!1;if(d)try{var $e={};Object.defineProperty($e,"passive",{get:function(){Ue=!0}}),window.addEventListener("test",$e,$e),window.removeEventListener("test",$e,$e)}catch(he){Ue=!1}function qe(e,t,n,r,a,o,i,l,s){var u=Array.prototype.slice.call(arguments,3);try{t.apply(n,u)}catch(c){this.onError(c)}}var Ge=!1,He=null,Ze=!1,Ve=null,We={onError:function(e){Ge=!0,He=e}};function Ye(e,t,n,r,a,o,i,l,s){Ge=!1,He=null,qe.apply(We,arguments)}function Ke(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do{0!=(1026&(t=e).flags)&&(n=t.return),e=t.return}while(e)}return 3===t.tag?n:null}function Qe(e){if(13===e.tag){var t=e.memoizedState;if(null===t&&(null!==(e=e.alternate)&&(t=e.memoizedState)),null!==t)return t.dehydrated}return null}function Xe(e){if(Ke(e)!==e)throw Error(i(188))}function Je(e){if(e=function(e){var t=e.alternate;if(!t){if(null===(t=Ke(e)))throw Error(i(188));return t!==e?null:e}for(var n=e,r=t;;){var a=n.return;if(null===a)break;var o=a.alternate;if(null===o){if(null!==(r=a.return)){n=r;continue}break}if(a.child===o.child){for(o=a.child;o;){if(o===n)return Xe(a),e;if(o===r)return Xe(a),t;o=o.sibling}throw Error(i(188))}if(n.return!==r.return)n=a,r=o;else{for(var l=!1,s=a.child;s;){if(s===n){l=!0,n=a,r=o;break}if(s===r){l=!0,r=a,n=o;break}s=s.sibling}if(!l){for(s=o.child;s;){if(s===n){l=!0,n=o,r=a;break}if(s===r){l=!0,r=o,n=a;break}s=s.sibling}if(!l)throw Error(i(189))}}if(n.alternate!==r)throw Error(i(190))}if(3!==n.tag)throw Error(i(188));return n.stateNode.current===n?e:t}(e),!e)return null;for(var t=e;;){if(5===t.tag||6===t.tag)return t;if(t.child)t.child.return=t,t=t.child;else{if(t===e)break;for(;!t.sibling;){if(!t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}}return null}function et(e,t){for(var n=e.alternate;null!==t;){if(t===e||t===n)return!0;t=t.return}return!1}var tt,nt,rt,at,ot=!1,it=[],lt=null,st=null,ut=null,ct=new Map,dt=new Map,pt=[],ft="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function mt(e,t,n,r,a){return{blockedOn:e,domEventName:t,eventSystemFlags:16|n,nativeEvent:a,targetContainers:[r]}}function gt(e,t){switch(e){case"focusin":case"focusout":lt=null;break;case"dragenter":case"dragleave":st=null;break;case"mouseover":case"mouseout":ut=null;break;case"pointerover":case"pointerout":ct.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":dt.delete(t.pointerId)}}function ht(e,t,n,r,a,o){return null===e||e.nativeEvent!==o?(e=mt(t,n,r,a,o),null!==t&&(null!==(t=ra(t))&&nt(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,null!==a&&-1===t.indexOf(a)&&t.push(a),e)}function bt(e){var t=na(e.target);if(null!==t){var n=Ke(t);if(null!==n)if(13===(t=n.tag)){if(null!==(t=Qe(n)))return e.blockedOn=t,void at(e.lanePriority,(function(){o.unstable_runWithPriority(e.priority,(function(){rt(n)}))}))}else if(3===t&&n.stateNode.hydrate)return void(e.blockedOn=3===n.tag?n.stateNode.containerInfo:null)}e.blockedOn=null}function vt(e){if(null!==e.blockedOn)return!1;for(var t=e.targetContainers;0<t.length;){var n=Jt(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(null!==n)return null!==(t=ra(n))&&nt(t),e.blockedOn=n,!1;t.shift()}return!0}function yt(e,t,n){vt(e)&&n.delete(t)}function wt(){for(ot=!1;0<it.length;){var e=it[0];if(null!==e.blockedOn){null!==(e=ra(e.blockedOn))&&tt(e);break}for(var t=e.targetContainers;0<t.length;){var n=Jt(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(null!==n){e.blockedOn=n;break}t.shift()}null===e.blockedOn&&it.shift()}null!==lt&&vt(lt)&&(lt=null),null!==st&&vt(st)&&(st=null),null!==ut&&vt(ut)&&(ut=null),ct.forEach(yt),dt.forEach(yt)}function kt(e,t){e.blockedOn===t&&(e.blockedOn=null,ot||(ot=!0,o.unstable_scheduleCallback(o.unstable_NormalPriority,wt)))}function Et(e){function t(t){return kt(t,e)}if(0<it.length){kt(it[0],e);for(var n=1;n<it.length;n++){var r=it[n];r.blockedOn===e&&(r.blockedOn=null)}}for(null!==lt&&kt(lt,e),null!==st&&kt(st,e),null!==ut&&kt(ut,e),ct.forEach(t),dt.forEach(t),n=0;n<pt.length;n++)(r=pt[n]).blockedOn===e&&(r.blockedOn=null);for(;0<pt.length&&null===(n=pt[0]).blockedOn;)bt(n),null===n.blockedOn&&pt.shift()}function St(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var xt={animationend:St("Animation","AnimationEnd"),animationiteration:St("Animation","AnimationIteration"),animationstart:St("Animation","AnimationStart"),transitionend:St("Transition","TransitionEnd")},Ct={},_t={};function Tt(e){if(Ct[e])return Ct[e];if(!xt[e])return e;var t,n=xt[e];for(t in n)if(n.hasOwnProperty(t)&&t in _t)return Ct[e]=n[t];return e}d&&(_t=document.createElement("div").style,"AnimationEvent"in window||(delete xt.animationend.animation,delete xt.animationiteration.animation,delete xt.animationstart.animation),"TransitionEvent"in window||delete xt.transitionend.transition);var At=Tt("animationend"),Lt=Tt("animationiteration"),Pt=Tt("animationstart"),Rt=Tt("transitionend"),Nt=new Map,Ot=new Map,It=["abort","abort",At,"animationEnd",Lt,"animationIteration",Pt,"animationStart","canplay","canPlay","canplaythrough","canPlayThrough","durationchange","durationChange","emptied","emptied","encrypted","encrypted","ended","ended","error","error","gotpointercapture","gotPointerCapture","load","load","loadeddata","loadedData","loadedmetadata","loadedMetadata","loadstart","loadStart","lostpointercapture","lostPointerCapture","playing","playing","progress","progress","seeking","seeking","stalled","stalled","suspend","suspend","timeupdate","timeUpdate",Rt,"transitionEnd","waiting","waiting"];function Dt(e,t){for(var n=0;n<e.length;n+=2){var r=e[n],a=e[n+1];a="on"+(a[0].toUpperCase()+a.slice(1)),Ot.set(r,t),Nt.set(r,a),u(a,[r])}}(0,o.unstable_now)();var Mt=8;function Ft(e){if(0!=(1&e))return Mt=15,1;if(0!=(2&e))return Mt=14,2;if(0!=(4&e))return Mt=13,4;var t=24&e;return 0!==t?(Mt=12,t):0!=(32&e)?(Mt=11,32):0!==(t=192&e)?(Mt=10,t):0!=(256&e)?(Mt=9,256):0!==(t=3584&e)?(Mt=8,t):0!=(4096&e)?(Mt=7,4096):0!==(t=4186112&e)?(Mt=6,t):0!==(t=62914560&e)?(Mt=5,t):67108864&e?(Mt=4,67108864):0!=(134217728&e)?(Mt=3,134217728):0!==(t=805306368&e)?(Mt=2,t):0!=(1073741824&e)?(Mt=1,1073741824):(Mt=8,e)}function Bt(e,t){var n=e.pendingLanes;if(0===n)return Mt=0;var r=0,a=0,o=e.expiredLanes,i=e.suspendedLanes,l=e.pingedLanes;if(0!==o)r=o,a=Mt=15;else if(0!==(o=134217727&n)){var s=o&~i;0!==s?(r=Ft(s),a=Mt):0!==(l&=o)&&(r=Ft(l),a=Mt)}else 0!==(o=n&~i)?(r=Ft(o),a=Mt):0!==l&&(r=Ft(l),a=Mt);if(0===r)return 0;if(r=n&((0>(r=31-Gt(r))?0:1<<r)<<1)-1,0!==t&&t!==r&&0==(t&i)){if(Ft(t),a<=Mt)return t;Mt=a}if(0!==(t=e.entangledLanes))for(e=e.entanglements,t&=r;0<t;)a=1<<(n=31-Gt(t)),r|=e[n],t&=~a;return r}function jt(e){return 0!==(e=-1073741825&e.pendingLanes)?e:1073741824&e?1073741824:0}function zt(e,t){switch(e){case 15:return 1;case 14:return 2;case 12:return 0===(e=Ut(24&~t))?zt(10,t):e;case 10:return 0===(e=Ut(192&~t))?zt(8,t):e;case 8:return 0===(e=Ut(3584&~t))&&(0===(e=Ut(4186112&~t))&&(e=512)),e;case 2:return 0===(t=Ut(805306368&~t))&&(t=268435456),t}throw Error(i(358,e))}function Ut(e){return e&-e}function $t(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function qt(e,t,n){e.pendingLanes|=t;var r=t-1;e.suspendedLanes&=r,e.pingedLanes&=r,(e=e.eventTimes)[t=31-Gt(t)]=n}var Gt=Math.clz32?Math.clz32:function(e){return 0===e?32:31-(Ht(e)/Zt|0)|0},Ht=Math.log,Zt=Math.LN2;var Vt=o.unstable_UserBlockingPriority,Wt=o.unstable_runWithPriority,Yt=!0;function Kt(e,t,n,r){Fe||De();var a=Xt,o=Fe;Fe=!0;try{Ie(a,e,t,n,r)}finally{(Fe=o)||je()}}function Qt(e,t,n,r){Wt(Vt,Xt.bind(null,e,t,n,r))}function Xt(e,t,n,r){var a;if(Yt)if((a=0==(4&t))&&0<it.length&&-1<ft.indexOf(e))e=mt(null,e,t,n,r),it.push(e);else{var o=Jt(e,t,n,r);if(null===o)a&>(e,r);else{if(a){if(-1<ft.indexOf(e))return e=mt(o,e,t,n,r),void it.push(e);if(function(e,t,n,r,a){switch(t){case"focusin":return lt=ht(lt,e,t,n,r,a),!0;case"dragenter":return st=ht(st,e,t,n,r,a),!0;case"mouseover":return ut=ht(ut,e,t,n,r,a),!0;case"pointerover":var o=a.pointerId;return ct.set(o,ht(ct.get(o)||null,e,t,n,r,a)),!0;case"gotpointercapture":return o=a.pointerId,dt.set(o,ht(dt.get(o)||null,e,t,n,r,a)),!0}return!1}(o,e,t,n,r))return;gt(e,r)}Dr(e,t,r,null,n)}}}function Jt(e,t,n,r){var a=_e(r);if(null!==(a=na(a))){var o=Ke(a);if(null===o)a=null;else{var i=o.tag;if(13===i){if(null!==(a=Qe(o)))return a;a=null}else if(3===i){if(o.stateNode.hydrate)return 3===o.tag?o.stateNode.containerInfo:null;a=null}else o!==a&&(a=null)}}return Dr(e,t,r,a,n),null}var en=null,tn=null,nn=null;function rn(){if(nn)return nn;var e,t,n=tn,r=n.length,a="value"in en?en.value:en.textContent,o=a.length;for(e=0;e<r&&n[e]===a[e];e++);var i=r-e;for(t=1;t<=i&&n[r-t]===a[o-t];t++);return nn=a.slice(e,1<t?1-t:void 0)}function an(e){var t=e.keyCode;return"charCode"in e?0===(e=e.charCode)&&13===t&&(e=13):e=t,10===e&&(e=13),32<=e||13===e?e:0}function on(){return!0}function ln(){return!1}function sn(e){function t(t,n,r,a,o){for(var i in this._reactName=t,this._targetInst=r,this.type=n,this.nativeEvent=a,this.target=o,this.currentTarget=null,e)e.hasOwnProperty(i)&&(t=e[i],this[i]=t?t(a):a[i]);return this.isDefaultPrevented=(null!=a.defaultPrevented?a.defaultPrevented:!1===a.returnValue)?on:ln,this.isPropagationStopped=ln,this}return a(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():"unknown"!=typeof e.returnValue&&(e.returnValue=!1),this.isDefaultPrevented=on)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():"unknown"!=typeof e.cancelBubble&&(e.cancelBubble=!0),this.isPropagationStopped=on)},persist:function(){},isPersistent:on}),t}var un,cn,dn,pn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},fn=sn(pn),mn=a({},pn,{view:0,detail:0}),gn=sn(mn),hn=a({},mn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:An,button:0,buttons:0,relatedTarget:function(e){return void 0===e.relatedTarget?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==dn&&(dn&&"mousemove"===e.type?(un=e.screenX-dn.screenX,cn=e.screenY-dn.screenY):cn=un=0,dn=e),un)},movementY:function(e){return"movementY"in e?e.movementY:cn}}),bn=sn(hn),vn=sn(a({},hn,{dataTransfer:0})),yn=sn(a({},mn,{relatedTarget:0})),wn=sn(a({},pn,{animationName:0,elapsedTime:0,pseudoElement:0})),kn=a({},pn,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),En=sn(kn),Sn=sn(a({},pn,{data:0})),xn={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},Cn={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},_n={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function Tn(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):!!(e=_n[e])&&!!t[e]}function An(){return Tn}var Ln=a({},mn,{key:function(e){if(e.key){var t=xn[e.key]||e.key;if("Unidentified"!==t)return t}return"keypress"===e.type?13===(e=an(e))?"Enter":String.fromCharCode(e):"keydown"===e.type||"keyup"===e.type?Cn[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:An,charCode:function(e){return"keypress"===e.type?an(e):0},keyCode:function(e){return"keydown"===e.type||"keyup"===e.type?e.keyCode:0},which:function(e){return"keypress"===e.type?an(e):"keydown"===e.type||"keyup"===e.type?e.keyCode:0}}),Pn=sn(Ln),Rn=sn(a({},hn,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),Nn=sn(a({},mn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:An})),On=sn(a({},pn,{propertyName:0,elapsedTime:0,pseudoElement:0})),In=a({},hn,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),Dn=sn(In),Mn=[9,13,27,32],Fn=d&&"CompositionEvent"in window,Bn=null;d&&"documentMode"in document&&(Bn=document.documentMode);var jn=d&&"TextEvent"in window&&!Bn,zn=d&&(!Fn||Bn&&8<Bn&&11>=Bn),Un=String.fromCharCode(32),$n=!1;function qn(e,t){switch(e){case"keyup":return-1!==Mn.indexOf(t.keyCode);case"keydown":return 229!==t.keyCode;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Gn(e){return"object"==typeof(e=e.detail)&&"data"in e?e.data:null}var Hn=!1;var Zn={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function Vn(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!Zn[e.type]:"textarea"===t}function Wn(e,t,n,r){Re(r),0<(t=Fr(t,"onChange")).length&&(n=new fn("onChange","change",null,n,r),e.push({event:n,listeners:t}))}var Yn=null,Kn=null;function Qn(e){Lr(e,0)}function Xn(e){if(Q(aa(e)))return e}function Jn(e,t){if("change"===e)return t}var er=!1;if(d){var tr;if(d){var nr="oninput"in document;if(!nr){var rr=document.createElement("div");rr.setAttribute("oninput","return;"),nr="function"==typeof rr.oninput}tr=nr}else tr=!1;er=tr&&(!document.documentMode||9<document.documentMode)}function ar(){Yn&&(Yn.detachEvent("onpropertychange",or),Kn=Yn=null)}function or(e){if("value"===e.propertyName&&Xn(Kn)){var t=[];if(Wn(t,Kn,e,_e(e)),e=Qn,Fe)e(t);else{Fe=!0;try{Oe(e,t)}finally{Fe=!1,je()}}}}function ir(e,t,n){"focusin"===e?(ar(),Kn=n,(Yn=t).attachEvent("onpropertychange",or)):"focusout"===e&&ar()}function lr(e){if("selectionchange"===e||"keyup"===e||"keydown"===e)return Xn(Kn)}function sr(e,t){if("click"===e)return Xn(t)}function ur(e,t){if("input"===e||"change"===e)return Xn(t)}var cr="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},dr=Object.prototype.hasOwnProperty;function pr(e,t){if(cr(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++)if(!dr.call(t,n[r])||!cr(e[n[r]],t[n[r]]))return!1;return!0}function fr(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function mr(e,t){var n,r=fr(e);for(e=0;r;){if(3===r.nodeType){if(n=e+r.textContent.length,e<=t&&n>=t)return{node:r,offset:t-e};e=n}e:{for(;r;){if(r.nextSibling){r=r.nextSibling;break e}r=r.parentNode}r=void 0}r=fr(r)}}function gr(e,t){return!(!e||!t)&&(e===t||(!e||3!==e.nodeType)&&(t&&3===t.nodeType?gr(e,t.parentNode):"contains"in e?e.contains(t):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(t))))}function hr(){for(var e=window,t=X();t instanceof e.HTMLIFrameElement;){try{var n="string"==typeof t.contentWindow.location.href}catch(r){n=!1}if(!n)break;t=X((e=t.contentWindow).document)}return t}function br(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&("text"===e.type||"search"===e.type||"tel"===e.type||"url"===e.type||"password"===e.type)||"textarea"===t||"true"===e.contentEditable)}var vr=d&&"documentMode"in document&&11>=document.documentMode,yr=null,wr=null,kr=null,Er=!1;function Sr(e,t,n){var r=n.window===n?n.document:9===n.nodeType?n:n.ownerDocument;Er||null==yr||yr!==X(r)||("selectionStart"in(r=yr)&&br(r)?r={start:r.selectionStart,end:r.selectionEnd}:r={anchorNode:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection()).anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset},kr&&pr(kr,r)||(kr=r,0<(r=Fr(wr,"onSelect")).length&&(t=new fn("onSelect","select",null,t,n),e.push({event:t,listeners:r}),t.target=yr)))}Dt("cancel cancel click click close close contextmenu contextMenu copy copy cut cut auxclick auxClick dblclick doubleClick dragend dragEnd dragstart dragStart drop drop focusin focus focusout blur input input invalid invalid keydown keyDown keypress keyPress keyup keyUp mousedown mouseDown mouseup mouseUp paste paste pause pause play play pointercancel pointerCancel pointerdown pointerDown pointerup pointerUp ratechange rateChange reset reset seeked seeked submit submit touchcancel touchCancel touchend touchEnd touchstart touchStart volumechange volumeChange".split(" "),0),Dt("drag drag dragenter dragEnter dragexit dragExit dragleave dragLeave dragover dragOver mousemove mouseMove mouseout mouseOut mouseover mouseOver pointermove pointerMove pointerout pointerOut pointerover pointerOver scroll scroll toggle toggle touchmove touchMove wheel wheel".split(" "),1),Dt(It,2);for(var xr="change selectionchange textInput compositionstart compositionend compositionupdate".split(" "),Cr=0;Cr<xr.length;Cr++)Ot.set(xr[Cr],0);c("onMouseEnter",["mouseout","mouseover"]),c("onMouseLeave",["mouseout","mouseover"]),c("onPointerEnter",["pointerout","pointerover"]),c("onPointerLeave",["pointerout","pointerover"]),u("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),u("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),u("onBeforeInput",["compositionend","keypress","textInput","paste"]),u("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),u("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),u("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var _r="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),Tr=new Set("cancel close invalid load scroll toggle".split(" ").concat(_r));function Ar(e,t,n){var r=e.type||"unknown-event";e.currentTarget=n,function(e,t,n,r,a,o,l,s,u){if(Ye.apply(this,arguments),Ge){if(!Ge)throw Error(i(198));var c=He;Ge=!1,He=null,Ze||(Ze=!0,Ve=c)}}(r,t,void 0,e),e.currentTarget=null}function Lr(e,t){t=0!=(4&t);for(var n=0;n<e.length;n++){var r=e[n],a=r.event;r=r.listeners;e:{var o=void 0;if(t)for(var i=r.length-1;0<=i;i--){var l=r[i],s=l.instance,u=l.currentTarget;if(l=l.listener,s!==o&&a.isPropagationStopped())break e;Ar(a,l,u),o=s}else for(i=0;i<r.length;i++){if(s=(l=r[i]).instance,u=l.currentTarget,l=l.listener,s!==o&&a.isPropagationStopped())break e;Ar(a,l,u),o=s}}}if(Ze)throw e=Ve,Ze=!1,Ve=null,e}function Pr(e,t){var n=ia(t),r=e+"__bubble";n.has(r)||(Ir(t,e,2,!1),n.add(r))}var Rr="_reactListening"+Math.random().toString(36).slice(2);function Nr(e){e[Rr]||(e[Rr]=!0,l.forEach((function(t){Tr.has(t)||Or(t,!1,e,null),Or(t,!0,e,null)})))}function Or(e,t,n,r){var a=4<arguments.length&&void 0!==arguments[4]?arguments[4]:0,o=n;if("selectionchange"===e&&9!==n.nodeType&&(o=n.ownerDocument),null!==r&&!t&&Tr.has(e)){if("scroll"!==e)return;a|=2,o=r}var i=ia(o),l=e+"__"+(t?"capture":"bubble");i.has(l)||(t&&(a|=4),Ir(o,e,a,t),i.add(l))}function Ir(e,t,n,r){var a=Ot.get(t);switch(void 0===a?2:a){case 0:a=Kt;break;case 1:a=Qt;break;default:a=Xt}n=a.bind(null,t,n,e),a=void 0,!Ue||"touchstart"!==t&&"touchmove"!==t&&"wheel"!==t||(a=!0),r?void 0!==a?e.addEventListener(t,n,{capture:!0,passive:a}):e.addEventListener(t,n,!0):void 0!==a?e.addEventListener(t,n,{passive:a}):e.addEventListener(t,n,!1)}function Dr(e,t,n,r,a){var o=r;if(0==(1&t)&&0==(2&t)&&null!==r)e:for(;;){if(null===r)return;var i=r.tag;if(3===i||4===i){var l=r.stateNode.containerInfo;if(l===a||8===l.nodeType&&l.parentNode===a)break;if(4===i)for(i=r.return;null!==i;){var s=i.tag;if((3===s||4===s)&&((s=i.stateNode.containerInfo)===a||8===s.nodeType&&s.parentNode===a))return;i=i.return}for(;null!==l;){if(null===(i=na(l)))return;if(5===(s=i.tag)||6===s){r=o=i;continue e}l=l.parentNode}}r=r.return}!function(e,t,n){if(Be)return e(t,n);Be=!0;try{Me(e,t,n)}finally{Be=!1,je()}}((function(){var r=o,a=_e(n),i=[];e:{var l=Nt.get(e);if(void 0!==l){var s=fn,u=e;switch(e){case"keypress":if(0===an(n))break e;case"keydown":case"keyup":s=Pn;break;case"focusin":u="focus",s=yn;break;case"focusout":u="blur",s=yn;break;case"beforeblur":case"afterblur":s=yn;break;case"click":if(2===n.button)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":s=bn;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":s=vn;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":s=Nn;break;case At:case Lt:case Pt:s=wn;break;case Rt:s=On;break;case"scroll":s=gn;break;case"wheel":s=Dn;break;case"copy":case"cut":case"paste":s=En;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":s=Rn}var c=0!=(4&t),d=!c&&"scroll"===e,p=c?null!==l?l+"Capture":null:l;c=[];for(var f,m=r;null!==m;){var g=(f=m).stateNode;if(5===f.tag&&null!==g&&(f=g,null!==p&&(null!=(g=ze(m,p))&&c.push(Mr(m,g,f)))),d)break;m=m.return}0<c.length&&(l=new s(l,u,null,n,a),i.push({event:l,listeners:c}))}}if(0==(7&t)){if(s="mouseout"===e||"pointerout"===e,(!(l="mouseover"===e||"pointerover"===e)||0!=(16&t)||!(u=n.relatedTarget||n.fromElement)||!na(u)&&!u[ea])&&(s||l)&&(l=a.window===a?a:(l=a.ownerDocument)?l.defaultView||l.parentWindow:window,s?(s=r,null!==(u=(u=n.relatedTarget||n.toElement)?na(u):null)&&(u!==(d=Ke(u))||5!==u.tag&&6!==u.tag)&&(u=null)):(s=null,u=r),s!==u)){if(c=bn,g="onMouseLeave",p="onMouseEnter",m="mouse","pointerout"!==e&&"pointerover"!==e||(c=Rn,g="onPointerLeave",p="onPointerEnter",m="pointer"),d=null==s?l:aa(s),f=null==u?l:aa(u),(l=new c(g,m+"leave",s,n,a)).target=d,l.relatedTarget=f,g=null,na(a)===r&&((c=new c(p,m+"enter",u,n,a)).target=f,c.relatedTarget=d,g=c),d=g,s&&u)e:{for(p=u,m=0,f=c=s;f;f=Br(f))m++;for(f=0,g=p;g;g=Br(g))f++;for(;0<m-f;)c=Br(c),m--;for(;0<f-m;)p=Br(p),f--;for(;m--;){if(c===p||null!==p&&c===p.alternate)break e;c=Br(c),p=Br(p)}c=null}else c=null;null!==s&&jr(i,l,s,c,!1),null!==u&&null!==d&&jr(i,d,u,c,!0)}if("select"===(s=(l=r?aa(r):window).nodeName&&l.nodeName.toLowerCase())||"input"===s&&"file"===l.type)var h=Jn;else if(Vn(l))if(er)h=ur;else{h=lr;var b=ir}else(s=l.nodeName)&&"input"===s.toLowerCase()&&("checkbox"===l.type||"radio"===l.type)&&(h=sr);switch(h&&(h=h(e,r))?Wn(i,h,n,a):(b&&b(e,l,r),"focusout"===e&&(b=l._wrapperState)&&b.controlled&&"number"===l.type&&ae(l,"number",l.value)),b=r?aa(r):window,e){case"focusin":(Vn(b)||"true"===b.contentEditable)&&(yr=b,wr=r,kr=null);break;case"focusout":kr=wr=yr=null;break;case"mousedown":Er=!0;break;case"contextmenu":case"mouseup":case"dragend":Er=!1,Sr(i,n,a);break;case"selectionchange":if(vr)break;case"keydown":case"keyup":Sr(i,n,a)}var v;if(Fn)e:{switch(e){case"compositionstart":var y="onCompositionStart";break e;case"compositionend":y="onCompositionEnd";break e;case"compositionupdate":y="onCompositionUpdate";break e}y=void 0}else Hn?qn(e,n)&&(y="onCompositionEnd"):"keydown"===e&&229===n.keyCode&&(y="onCompositionStart");y&&(zn&&"ko"!==n.locale&&(Hn||"onCompositionStart"!==y?"onCompositionEnd"===y&&Hn&&(v=rn()):(tn="value"in(en=a)?en.value:en.textContent,Hn=!0)),0<(b=Fr(r,y)).length&&(y=new Sn(y,e,null,n,a),i.push({event:y,listeners:b}),v?y.data=v:null!==(v=Gn(n))&&(y.data=v))),(v=jn?function(e,t){switch(e){case"compositionend":return Gn(t);case"keypress":return 32!==t.which?null:($n=!0,Un);case"textInput":return(e=t.data)===Un&&$n?null:e;default:return null}}(e,n):function(e,t){if(Hn)return"compositionend"===e||!Fn&&qn(e,t)?(e=rn(),nn=tn=en=null,Hn=!1,e):null;switch(e){case"paste":default:return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return zn&&"ko"!==t.locale?null:t.data}}(e,n))&&(0<(r=Fr(r,"onBeforeInput")).length&&(a=new Sn("onBeforeInput","beforeinput",null,n,a),i.push({event:a,listeners:r}),a.data=v))}Lr(i,t)}))}function Mr(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Fr(e,t){for(var n=t+"Capture",r=[];null!==e;){var a=e,o=a.stateNode;5===a.tag&&null!==o&&(a=o,null!=(o=ze(e,n))&&r.unshift(Mr(e,o,a)),null!=(o=ze(e,t))&&r.push(Mr(e,o,a))),e=e.return}return r}function Br(e){if(null===e)return null;do{e=e.return}while(e&&5!==e.tag);return e||null}function jr(e,t,n,r,a){for(var o=t._reactName,i=[];null!==n&&n!==r;){var l=n,s=l.alternate,u=l.stateNode;if(null!==s&&s===r)break;5===l.tag&&null!==u&&(l=u,a?null!=(s=ze(n,o))&&i.unshift(Mr(n,s,l)):a||null!=(s=ze(n,o))&&i.push(Mr(n,s,l))),n=n.return}0!==i.length&&e.push({event:t,listeners:i})}function zr(){}var Ur=null,$r=null;function qr(e,t){switch(e){case"button":case"input":case"select":case"textarea":return!!t.autoFocus}return!1}function Gr(e,t){return"textarea"===e||"option"===e||"noscript"===e||"string"==typeof t.children||"number"==typeof t.children||"object"==typeof t.dangerouslySetInnerHTML&&null!==t.dangerouslySetInnerHTML&&null!=t.dangerouslySetInnerHTML.__html}var Hr="function"==typeof setTimeout?setTimeout:void 0,Zr="function"==typeof clearTimeout?clearTimeout:void 0;function Vr(e){1===e.nodeType?e.textContent="":9===e.nodeType&&(null!=(e=e.body)&&(e.textContent=""))}function Wr(e){for(;null!=e;e=e.nextSibling){var t=e.nodeType;if(1===t||3===t)break}return e}function Yr(e){e=e.previousSibling;for(var t=0;e;){if(8===e.nodeType){var n=e.data;if("$"===n||"$!"===n||"$?"===n){if(0===t)return e;t--}else"/$"===n&&t++}e=e.previousSibling}return null}var Kr=0;var Qr=Math.random().toString(36).slice(2),Xr="__reactFiber$"+Qr,Jr="__reactProps$"+Qr,ea="__reactContainer$"+Qr,ta="__reactEvents$"+Qr;function na(e){var t=e[Xr];if(t)return t;for(var n=e.parentNode;n;){if(t=n[ea]||n[Xr]){if(n=t.alternate,null!==t.child||null!==n&&null!==n.child)for(e=Yr(e);null!==e;){if(n=e[Xr])return n;e=Yr(e)}return t}n=(e=n).parentNode}return null}function ra(e){return!(e=e[Xr]||e[ea])||5!==e.tag&&6!==e.tag&&13!==e.tag&&3!==e.tag?null:e}function aa(e){if(5===e.tag||6===e.tag)return e.stateNode;throw Error(i(33))}function oa(e){return e[Jr]||null}function ia(e){var t=e[ta];return void 0===t&&(t=e[ta]=new Set),t}var la=[],sa=-1;function ua(e){return{current:e}}function ca(e){0>sa||(e.current=la[sa],la[sa]=null,sa--)}function da(e,t){sa++,la[sa]=e.current,e.current=t}var pa={},fa=ua(pa),ma=ua(!1),ga=pa;function ha(e,t){var n=e.type.contextTypes;if(!n)return pa;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var a,o={};for(a in n)o[a]=t[a];return r&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=o),o}function ba(e){return null!=(e=e.childContextTypes)}function va(){ca(ma),ca(fa)}function ya(e,t,n){if(fa.current!==pa)throw Error(i(168));da(fa,t),da(ma,n)}function wa(e,t,n){var r=e.stateNode;if(e=t.childContextTypes,"function"!=typeof r.getChildContext)return n;for(var o in r=r.getChildContext())if(!(o in e))throw Error(i(108,V(t)||"Unknown",o));return a({},n,r)}function ka(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||pa,ga=fa.current,da(fa,e),da(ma,ma.current),!0}function Ea(e,t,n){var r=e.stateNode;if(!r)throw Error(i(169));n?(e=wa(e,t,ga),r.__reactInternalMemoizedMergedChildContext=e,ca(ma),ca(fa),da(fa,e)):ca(ma),da(ma,n)}var Sa=null,xa=null,Ca=o.unstable_runWithPriority,_a=o.unstable_scheduleCallback,Ta=o.unstable_cancelCallback,Aa=o.unstable_shouldYield,La=o.unstable_requestPaint,Pa=o.unstable_now,Ra=o.unstable_getCurrentPriorityLevel,Na=o.unstable_ImmediatePriority,Oa=o.unstable_UserBlockingPriority,Ia=o.unstable_NormalPriority,Da=o.unstable_LowPriority,Ma=o.unstable_IdlePriority,Fa={},Ba=void 0!==La?La:function(){},ja=null,za=null,Ua=!1,$a=Pa(),qa=1e4>$a?Pa:function(){return Pa()-$a};function Ga(){switch(Ra()){case Na:return 99;case Oa:return 98;case Ia:return 97;case Da:return 96;case Ma:return 95;default:throw Error(i(332))}}function Ha(e){switch(e){case 99:return Na;case 98:return Oa;case 97:return Ia;case 96:return Da;case 95:return Ma;default:throw Error(i(332))}}function Za(e,t){return e=Ha(e),Ca(e,t)}function Va(e,t,n){return e=Ha(e),_a(e,t,n)}function Wa(){if(null!==za){var e=za;za=null,Ta(e)}Ya()}function Ya(){if(!Ua&&null!==ja){Ua=!0;var e=0;try{var t=ja;Za(99,(function(){for(;e<t.length;e++){var n=t[e];do{n=n(!0)}while(null!==n)}})),ja=null}catch(n){throw null!==ja&&(ja=ja.slice(e+1)),_a(Na,Wa),n}finally{Ua=!1}}}var Ka=k.ReactCurrentBatchConfig;function Qa(e,t){if(e&&e.defaultProps){for(var n in t=a({},t),e=e.defaultProps)void 0===t[n]&&(t[n]=e[n]);return t}return t}var Xa=ua(null),Ja=null,eo=null,to=null;function no(){to=eo=Ja=null}function ro(e){var t=Xa.current;ca(Xa),e.type._context._currentValue=t}function ao(e,t){for(;null!==e;){var n=e.alternate;if((e.childLanes&t)===t){if(null===n||(n.childLanes&t)===t)break;n.childLanes|=t}else e.childLanes|=t,null!==n&&(n.childLanes|=t);e=e.return}}function oo(e,t){Ja=e,to=eo=null,null!==(e=e.dependencies)&&null!==e.firstContext&&(0!=(e.lanes&t)&&(Fi=!0),e.firstContext=null)}function io(e,t){if(to!==e&&!1!==t&&0!==t)if("number"==typeof t&&1073741823!==t||(to=e,t=1073741823),t={context:e,observedBits:t,next:null},null===eo){if(null===Ja)throw Error(i(308));eo=t,Ja.dependencies={lanes:0,firstContext:t,responders:null}}else eo=eo.next=t;return e._currentValue}var lo=!1;function so(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null},effects:null}}function uo(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function co(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function po(e,t){if(null!==(e=e.updateQueue)){var n=(e=e.shared).pending;null===n?t.next=t:(t.next=n.next,n.next=t),e.pending=t}}function fo(e,t){var n=e.updateQueue,r=e.alternate;if(null!==r&&n===(r=r.updateQueue)){var a=null,o=null;if(null!==(n=n.firstBaseUpdate)){do{var i={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};null===o?a=o=i:o=o.next=i,n=n.next}while(null!==n);null===o?a=o=t:o=o.next=t}else a=o=t;return n={baseState:r.baseState,firstBaseUpdate:a,lastBaseUpdate:o,shared:r.shared,effects:r.effects},void(e.updateQueue=n)}null===(e=n.lastBaseUpdate)?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function mo(e,t,n,r){var o=e.updateQueue;lo=!1;var i=o.firstBaseUpdate,l=o.lastBaseUpdate,s=o.shared.pending;if(null!==s){o.shared.pending=null;var u=s,c=u.next;u.next=null,null===l?i=c:l.next=c,l=u;var d=e.alternate;if(null!==d){var p=(d=d.updateQueue).lastBaseUpdate;p!==l&&(null===p?d.firstBaseUpdate=c:p.next=c,d.lastBaseUpdate=u)}}if(null!==i){for(p=o.baseState,l=0,d=c=u=null;;){s=i.lane;var f=i.eventTime;if((r&s)===s){null!==d&&(d=d.next={eventTime:f,lane:0,tag:i.tag,payload:i.payload,callback:i.callback,next:null});e:{var m=e,g=i;switch(s=t,f=n,g.tag){case 1:if("function"==typeof(m=g.payload)){p=m.call(f,p,s);break e}p=m;break e;case 3:m.flags=-4097&m.flags|64;case 0:if(null==(s="function"==typeof(m=g.payload)?m.call(f,p,s):m))break e;p=a({},p,s);break e;case 2:lo=!0}}null!==i.callback&&(e.flags|=32,null===(s=o.effects)?o.effects=[i]:s.push(i))}else f={eventTime:f,lane:s,tag:i.tag,payload:i.payload,callback:i.callback,next:null},null===d?(c=d=f,u=p):d=d.next=f,l|=s;if(null===(i=i.next)){if(null===(s=o.shared.pending))break;i=s.next,s.next=null,o.lastBaseUpdate=s,o.shared.pending=null}}null===d&&(u=p),o.baseState=u,o.firstBaseUpdate=c,o.lastBaseUpdate=d,Ul|=l,e.lanes=l,e.memoizedState=p}}function go(e,t,n){if(e=t.effects,t.effects=null,null!==e)for(t=0;t<e.length;t++){var r=e[t],a=r.callback;if(null!==a){if(r.callback=null,r=n,"function"!=typeof a)throw Error(i(191,a));a.call(r)}}}var ho=(new r.Component).refs;function bo(e,t,n,r){n=null==(n=n(r,t=e.memoizedState))?t:a({},t,n),e.memoizedState=n,0===e.lanes&&(e.updateQueue.baseState=n)}var vo={isMounted:function(e){return!!(e=e._reactInternals)&&Ke(e)===e},enqueueSetState:function(e,t,n){e=e._reactInternals;var r=ps(),a=fs(e),o=co(r,a);o.payload=t,null!=n&&(o.callback=n),po(e,o),ms(e,a,r)},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=ps(),a=fs(e),o=co(r,a);o.tag=1,o.payload=t,null!=n&&(o.callback=n),po(e,o),ms(e,a,r)},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=ps(),r=fs(e),a=co(n,r);a.tag=2,null!=t&&(a.callback=t),po(e,a),ms(e,r,n)}};function yo(e,t,n,r,a,o,i){return"function"==typeof(e=e.stateNode).shouldComponentUpdate?e.shouldComponentUpdate(r,o,i):!t.prototype||!t.prototype.isPureReactComponent||(!pr(n,r)||!pr(a,o))}function wo(e,t,n){var r=!1,a=pa,o=t.contextType;return"object"==typeof o&&null!==o?o=io(o):(a=ba(t)?ga:fa.current,o=(r=null!=(r=t.contextTypes))?ha(e,a):pa),t=new t(n,o),e.memoizedState=null!==t.state&&void 0!==t.state?t.state:null,t.updater=vo,e.stateNode=t,t._reactInternals=e,r&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=a,e.__reactInternalMemoizedMaskedChildContext=o),t}function ko(e,t,n,r){e=t.state,"function"==typeof t.componentWillReceiveProps&&t.componentWillReceiveProps(n,r),"function"==typeof t.UNSAFE_componentWillReceiveProps&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&vo.enqueueReplaceState(t,t.state,null)}function Eo(e,t,n,r){var a=e.stateNode;a.props=n,a.state=e.memoizedState,a.refs=ho,so(e);var o=t.contextType;"object"==typeof o&&null!==o?a.context=io(o):(o=ba(t)?ga:fa.current,a.context=ha(e,o)),mo(e,n,a,r),a.state=e.memoizedState,"function"==typeof(o=t.getDerivedStateFromProps)&&(bo(e,t,o,n),a.state=e.memoizedState),"function"==typeof t.getDerivedStateFromProps||"function"==typeof a.getSnapshotBeforeUpdate||"function"!=typeof a.UNSAFE_componentWillMount&&"function"!=typeof a.componentWillMount||(t=a.state,"function"==typeof a.componentWillMount&&a.componentWillMount(),"function"==typeof a.UNSAFE_componentWillMount&&a.UNSAFE_componentWillMount(),t!==a.state&&vo.enqueueReplaceState(a,a.state,null),mo(e,n,a,r),a.state=e.memoizedState),"function"==typeof a.componentDidMount&&(e.flags|=4)}var So=Array.isArray;function xo(e,t,n){if(null!==(e=n.ref)&&"function"!=typeof e&&"object"!=typeof e){if(n._owner){if(n=n._owner){if(1!==n.tag)throw Error(i(309));var r=n.stateNode}if(!r)throw Error(i(147,e));var a=""+e;return null!==t&&null!==t.ref&&"function"==typeof t.ref&&t.ref._stringRef===a?t.ref:(t=function(e){var t=r.refs;t===ho&&(t=r.refs={}),null===e?delete t[a]:t[a]=e},t._stringRef=a,t)}if("string"!=typeof e)throw Error(i(284));if(!n._owner)throw Error(i(290,e))}return e}function Co(e,t){if("textarea"!==e.type)throw Error(i(31,"[object Object]"===Object.prototype.toString.call(t)?"object with keys {"+Object.keys(t).join(", ")+"}":t))}function _o(e){function t(t,n){if(e){var r=t.lastEffect;null!==r?(r.nextEffect=n,t.lastEffect=n):t.firstEffect=t.lastEffect=n,n.nextEffect=null,n.flags=8}}function n(n,r){if(!e)return null;for(;null!==r;)t(n,r),r=r.sibling;return null}function r(e,t){for(e=new Map;null!==t;)null!==t.key?e.set(t.key,t):e.set(t.index,t),t=t.sibling;return e}function a(e,t){return(e=Zs(e,t)).index=0,e.sibling=null,e}function o(t,n,r){return t.index=r,e?null!==(r=t.alternate)?(r=r.index)<n?(t.flags=2,n):r:(t.flags=2,n):n}function l(t){return e&&null===t.alternate&&(t.flags=2),t}function s(e,t,n,r){return null===t||6!==t.tag?((t=Ks(n,e.mode,r)).return=e,t):((t=a(t,n)).return=e,t)}function u(e,t,n,r){return null!==t&&t.elementType===n.type?((r=a(t,n.props)).ref=xo(e,t,n),r.return=e,r):((r=Vs(n.type,n.key,n.props,null,e.mode,r)).ref=xo(e,t,n),r.return=e,r)}function c(e,t,n,r){return null===t||4!==t.tag||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?((t=Qs(n,e.mode,r)).return=e,t):((t=a(t,n.children||[])).return=e,t)}function d(e,t,n,r,o){return null===t||7!==t.tag?((t=Ws(n,e.mode,r,o)).return=e,t):((t=a(t,n)).return=e,t)}function p(e,t,n){if("string"==typeof t||"number"==typeof t)return(t=Ks(""+t,e.mode,n)).return=e,t;if("object"==typeof t&&null!==t){switch(t.$$typeof){case E:return(n=Vs(t.type,t.key,t.props,null,e.mode,n)).ref=xo(e,null,t),n.return=e,n;case S:return(t=Qs(t,e.mode,n)).return=e,t}if(So(t)||$(t))return(t=Ws(t,e.mode,n,null)).return=e,t;Co(e,t)}return null}function f(e,t,n,r){var a=null!==t?t.key:null;if("string"==typeof n||"number"==typeof n)return null!==a?null:s(e,t,""+n,r);if("object"==typeof n&&null!==n){switch(n.$$typeof){case E:return n.key===a?n.type===x?d(e,t,n.props.children,r,a):u(e,t,n,r):null;case S:return n.key===a?c(e,t,n,r):null}if(So(n)||$(n))return null!==a?null:d(e,t,n,r,null);Co(e,n)}return null}function m(e,t,n,r,a){if("string"==typeof r||"number"==typeof r)return s(t,e=e.get(n)||null,""+r,a);if("object"==typeof r&&null!==r){switch(r.$$typeof){case E:return e=e.get(null===r.key?n:r.key)||null,r.type===x?d(t,e,r.props.children,a,r.key):u(t,e,r,a);case S:return c(t,e=e.get(null===r.key?n:r.key)||null,r,a)}if(So(r)||$(r))return d(t,e=e.get(n)||null,r,a,null);Co(t,r)}return null}function g(a,i,l,s){for(var u=null,c=null,d=i,g=i=0,h=null;null!==d&&g<l.length;g++){d.index>g?(h=d,d=null):h=d.sibling;var b=f(a,d,l[g],s);if(null===b){null===d&&(d=h);break}e&&d&&null===b.alternate&&t(a,d),i=o(b,i,g),null===c?u=b:c.sibling=b,c=b,d=h}if(g===l.length)return n(a,d),u;if(null===d){for(;g<l.length;g++)null!==(d=p(a,l[g],s))&&(i=o(d,i,g),null===c?u=d:c.sibling=d,c=d);return u}for(d=r(a,d);g<l.length;g++)null!==(h=m(d,a,g,l[g],s))&&(e&&null!==h.alternate&&d.delete(null===h.key?g:h.key),i=o(h,i,g),null===c?u=h:c.sibling=h,c=h);return e&&d.forEach((function(e){return t(a,e)})),u}function h(a,l,s,u){var c=$(s);if("function"!=typeof c)throw Error(i(150));if(null==(s=c.call(s)))throw Error(i(151));for(var d=c=null,g=l,h=l=0,b=null,v=s.next();null!==g&&!v.done;h++,v=s.next()){g.index>h?(b=g,g=null):b=g.sibling;var y=f(a,g,v.value,u);if(null===y){null===g&&(g=b);break}e&&g&&null===y.alternate&&t(a,g),l=o(y,l,h),null===d?c=y:d.sibling=y,d=y,g=b}if(v.done)return n(a,g),c;if(null===g){for(;!v.done;h++,v=s.next())null!==(v=p(a,v.value,u))&&(l=o(v,l,h),null===d?c=v:d.sibling=v,d=v);return c}for(g=r(a,g);!v.done;h++,v=s.next())null!==(v=m(g,a,h,v.value,u))&&(e&&null!==v.alternate&&g.delete(null===v.key?h:v.key),l=o(v,l,h),null===d?c=v:d.sibling=v,d=v);return e&&g.forEach((function(e){return t(a,e)})),c}return function(e,r,o,s){var u="object"==typeof o&&null!==o&&o.type===x&&null===o.key;u&&(o=o.props.children);var c="object"==typeof o&&null!==o;if(c)switch(o.$$typeof){case E:e:{for(c=o.key,u=r;null!==u;){if(u.key===c){if(7===u.tag){if(o.type===x){n(e,u.sibling),(r=a(u,o.props.children)).return=e,e=r;break e}}else if(u.elementType===o.type){n(e,u.sibling),(r=a(u,o.props)).ref=xo(e,u,o),r.return=e,e=r;break e}n(e,u);break}t(e,u),u=u.sibling}o.type===x?((r=Ws(o.props.children,e.mode,s,o.key)).return=e,e=r):((s=Vs(o.type,o.key,o.props,null,e.mode,s)).ref=xo(e,r,o),s.return=e,e=s)}return l(e);case S:e:{for(u=o.key;null!==r;){if(r.key===u){if(4===r.tag&&r.stateNode.containerInfo===o.containerInfo&&r.stateNode.implementation===o.implementation){n(e,r.sibling),(r=a(r,o.children||[])).return=e,e=r;break e}n(e,r);break}t(e,r),r=r.sibling}(r=Qs(o,e.mode,s)).return=e,e=r}return l(e)}if("string"==typeof o||"number"==typeof o)return o=""+o,null!==r&&6===r.tag?(n(e,r.sibling),(r=a(r,o)).return=e,e=r):(n(e,r),(r=Ks(o,e.mode,s)).return=e,e=r),l(e);if(So(o))return g(e,r,o,s);if($(o))return h(e,r,o,s);if(c&&Co(e,o),void 0===o&&!u)switch(e.tag){case 1:case 22:case 0:case 11:case 15:throw Error(i(152,V(e.type)||"Component"))}return n(e,r)}}var To=_o(!0),Ao=_o(!1),Lo={},Po=ua(Lo),Ro=ua(Lo),No=ua(Lo);function Oo(e){if(e===Lo)throw Error(i(174));return e}function Io(e,t){switch(da(No,t),da(Ro,e),da(Po,Lo),e=t.nodeType){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:me(null,"");break;default:t=me(t=(e=8===e?t.parentNode:t).namespaceURI||null,e=e.tagName)}ca(Po),da(Po,t)}function Do(){ca(Po),ca(Ro),ca(No)}function Mo(e){Oo(No.current);var t=Oo(Po.current),n=me(t,e.type);t!==n&&(da(Ro,e),da(Po,n))}function Fo(e){Ro.current===e&&(ca(Po),ca(Ro))}var Bo=ua(0);function jo(e){for(var t=e;null!==t;){if(13===t.tag){var n=t.memoizedState;if(null!==n&&(null===(n=n.dehydrated)||"$?"===n.data||"$!"===n.data))return t}else if(19===t.tag&&void 0!==t.memoizedProps.revealOrder){if(0!=(64&t.flags))return t}else if(null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var zo=null,Uo=null,$o=!1;function qo(e,t){var n=Gs(5,null,null,0);n.elementType="DELETED",n.type="DELETED",n.stateNode=t,n.return=e,n.flags=8,null!==e.lastEffect?(e.lastEffect.nextEffect=n,e.lastEffect=n):e.firstEffect=e.lastEffect=n}function Go(e,t){switch(e.tag){case 5:var n=e.type;return null!==(t=1!==t.nodeType||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t)&&(e.stateNode=t,!0);case 6:return null!==(t=""===e.pendingProps||3!==t.nodeType?null:t)&&(e.stateNode=t,!0);default:return!1}}function Ho(e){if($o){var t=Uo;if(t){var n=t;if(!Go(e,t)){if(!(t=Wr(n.nextSibling))||!Go(e,t))return e.flags=-1025&e.flags|2,$o=!1,void(zo=e);qo(zo,n)}zo=e,Uo=Wr(t.firstChild)}else e.flags=-1025&e.flags|2,$o=!1,zo=e}}function Zo(e){for(e=e.return;null!==e&&5!==e.tag&&3!==e.tag&&13!==e.tag;)e=e.return;zo=e}function Vo(e){if(e!==zo)return!1;if(!$o)return Zo(e),$o=!0,!1;var t=e.type;if(5!==e.tag||"head"!==t&&"body"!==t&&!Gr(t,e.memoizedProps))for(t=Uo;t;)qo(e,t),t=Wr(t.nextSibling);if(Zo(e),13===e.tag){if(!(e=null!==(e=e.memoizedState)?e.dehydrated:null))throw Error(i(317));e:{for(e=e.nextSibling,t=0;e;){if(8===e.nodeType){var n=e.data;if("/$"===n){if(0===t){Uo=Wr(e.nextSibling);break e}t--}else"$"!==n&&"$!"!==n&&"$?"!==n||t++}e=e.nextSibling}Uo=null}}else Uo=zo?Wr(e.stateNode.nextSibling):null;return!0}function Wo(){Uo=zo=null,$o=!1}var Yo=[];function Ko(){for(var e=0;e<Yo.length;e++)Yo[e]._workInProgressVersionPrimary=null;Yo.length=0}var Qo=k.ReactCurrentDispatcher,Xo=k.ReactCurrentBatchConfig,Jo=0,ei=null,ti=null,ni=null,ri=!1,ai=!1;function oi(){throw Error(i(321))}function ii(e,t){if(null===t)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!cr(e[n],t[n]))return!1;return!0}function li(e,t,n,r,a,o){if(Jo=o,ei=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,Qo.current=null===e||null===e.memoizedState?Oi:Ii,e=n(r,a),ai){o=0;do{if(ai=!1,!(25>o))throw Error(i(301));o+=1,ni=ti=null,t.updateQueue=null,Qo.current=Di,e=n(r,a)}while(ai)}if(Qo.current=Ni,t=null!==ti&&null!==ti.next,Jo=0,ni=ti=ei=null,ri=!1,t)throw Error(i(300));return e}function si(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return null===ni?ei.memoizedState=ni=e:ni=ni.next=e,ni}function ui(){if(null===ti){var e=ei.alternate;e=null!==e?e.memoizedState:null}else e=ti.next;var t=null===ni?ei.memoizedState:ni.next;if(null!==t)ni=t,ti=e;else{if(null===e)throw Error(i(310));e={memoizedState:(ti=e).memoizedState,baseState:ti.baseState,baseQueue:ti.baseQueue,queue:ti.queue,next:null},null===ni?ei.memoizedState=ni=e:ni=ni.next=e}return ni}function ci(e,t){return"function"==typeof t?t(e):t}function di(e){var t=ui(),n=t.queue;if(null===n)throw Error(i(311));n.lastRenderedReducer=e;var r=ti,a=r.baseQueue,o=n.pending;if(null!==o){if(null!==a){var l=a.next;a.next=o.next,o.next=l}r.baseQueue=a=o,n.pending=null}if(null!==a){a=a.next,r=r.baseState;var s=l=o=null,u=a;do{var c=u.lane;if((Jo&c)===c)null!==s&&(s=s.next={lane:0,action:u.action,eagerReducer:u.eagerReducer,eagerState:u.eagerState,next:null}),r=u.eagerReducer===e?u.eagerState:e(r,u.action);else{var d={lane:c,action:u.action,eagerReducer:u.eagerReducer,eagerState:u.eagerState,next:null};null===s?(l=s=d,o=r):s=s.next=d,ei.lanes|=c,Ul|=c}u=u.next}while(null!==u&&u!==a);null===s?o=r:s.next=l,cr(r,t.memoizedState)||(Fi=!0),t.memoizedState=r,t.baseState=o,t.baseQueue=s,n.lastRenderedState=r}return[t.memoizedState,n.dispatch]}function pi(e){var t=ui(),n=t.queue;if(null===n)throw Error(i(311));n.lastRenderedReducer=e;var r=n.dispatch,a=n.pending,o=t.memoizedState;if(null!==a){n.pending=null;var l=a=a.next;do{o=e(o,l.action),l=l.next}while(l!==a);cr(o,t.memoizedState)||(Fi=!0),t.memoizedState=o,null===t.baseQueue&&(t.baseState=o),n.lastRenderedState=o}return[o,r]}function fi(e,t,n){var r=t._getVersion;r=r(t._source);var a=t._workInProgressVersionPrimary;if(null!==a?e=a===r:(e=e.mutableReadLanes,(e=(Jo&e)===e)&&(t._workInProgressVersionPrimary=r,Yo.push(t))),e)return n(t._source);throw Yo.push(t),Error(i(350))}function mi(e,t,n,r){var a=Ol;if(null===a)throw Error(i(349));var o=t._getVersion,l=o(t._source),s=Qo.current,u=s.useState((function(){return fi(a,t,n)})),c=u[1],d=u[0];u=ni;var p=e.memoizedState,f=p.refs,m=f.getSnapshot,g=p.source;p=p.subscribe;var h=ei;return e.memoizedState={refs:f,source:t,subscribe:r},s.useEffect((function(){f.getSnapshot=n,f.setSnapshot=c;var e=o(t._source);if(!cr(l,e)){e=n(t._source),cr(d,e)||(c(e),e=fs(h),a.mutableReadLanes|=e&a.pendingLanes),e=a.mutableReadLanes,a.entangledLanes|=e;for(var r=a.entanglements,i=e;0<i;){var s=31-Gt(i),u=1<<s;r[s]|=e,i&=~u}}}),[n,t,r]),s.useEffect((function(){return r(t._source,(function(){var e=f.getSnapshot,n=f.setSnapshot;try{n(e(t._source));var r=fs(h);a.mutableReadLanes|=r&a.pendingLanes}catch(o){n((function(){throw o}))}}))}),[t,r]),cr(m,n)&&cr(g,t)&&cr(p,r)||((e={pending:null,dispatch:null,lastRenderedReducer:ci,lastRenderedState:d}).dispatch=c=Ri.bind(null,ei,e),u.queue=e,u.baseQueue=null,d=fi(a,t,n),u.memoizedState=u.baseState=d),d}function gi(e,t,n){return mi(ui(),e,t,n)}function hi(e){var t=si();return"function"==typeof e&&(e=e()),t.memoizedState=t.baseState=e,e=(e=t.queue={pending:null,dispatch:null,lastRenderedReducer:ci,lastRenderedState:e}).dispatch=Ri.bind(null,ei,e),[t.memoizedState,e]}function bi(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},null===(t=ei.updateQueue)?(t={lastEffect:null},ei.updateQueue=t,t.lastEffect=e.next=e):null===(n=t.lastEffect)?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e),e}function vi(e){return e={current:e},si().memoizedState=e}function yi(){return ui().memoizedState}function wi(e,t,n,r){var a=si();ei.flags|=e,a.memoizedState=bi(1|t,n,void 0,void 0===r?null:r)}function ki(e,t,n,r){var a=ui();r=void 0===r?null:r;var o=void 0;if(null!==ti){var i=ti.memoizedState;if(o=i.destroy,null!==r&&ii(r,i.deps))return void bi(t,n,o,r)}ei.flags|=e,a.memoizedState=bi(1|t,n,o,r)}function Ei(e,t){return wi(516,4,e,t)}function Si(e,t){return ki(516,4,e,t)}function xi(e,t){return ki(4,2,e,t)}function Ci(e,t){return"function"==typeof t?(e=e(),t(e),function(){t(null)}):null!=t?(e=e(),t.current=e,function(){t.current=null}):void 0}function _i(e,t,n){return n=null!=n?n.concat([e]):null,ki(4,2,Ci.bind(null,t,e),n)}function Ti(){}function Ai(e,t){var n=ui();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&ii(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function Li(e,t){var n=ui();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&ii(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)}function Pi(e,t){var n=Ga();Za(98>n?98:n,(function(){e(!0)})),Za(97<n?97:n,(function(){var n=Xo.transition;Xo.transition=1;try{e(!1),t()}finally{Xo.transition=n}}))}function Ri(e,t,n){var r=ps(),a=fs(e),o={lane:a,action:n,eagerReducer:null,eagerState:null,next:null},i=t.pending;if(null===i?o.next=o:(o.next=i.next,i.next=o),t.pending=o,i=e.alternate,e===ei||null!==i&&i===ei)ai=ri=!0;else{if(0===e.lanes&&(null===i||0===i.lanes)&&null!==(i=t.lastRenderedReducer))try{var l=t.lastRenderedState,s=i(l,n);if(o.eagerReducer=i,o.eagerState=s,cr(s,l))return}catch(u){}ms(e,a,r)}}var Ni={readContext:io,useCallback:oi,useContext:oi,useEffect:oi,useImperativeHandle:oi,useLayoutEffect:oi,useMemo:oi,useReducer:oi,useRef:oi,useState:oi,useDebugValue:oi,useDeferredValue:oi,useTransition:oi,useMutableSource:oi,useOpaqueIdentifier:oi,unstable_isNewReconciler:!1},Oi={readContext:io,useCallback:function(e,t){return si().memoizedState=[e,void 0===t?null:t],e},useContext:io,useEffect:Ei,useImperativeHandle:function(e,t,n){return n=null!=n?n.concat([e]):null,wi(4,2,Ci.bind(null,t,e),n)},useLayoutEffect:function(e,t){return wi(4,2,e,t)},useMemo:function(e,t){var n=si();return t=void 0===t?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=si();return t=void 0!==n?n(t):t,r.memoizedState=r.baseState=t,e=(e=r.queue={pending:null,dispatch:null,lastRenderedReducer:e,lastRenderedState:t}).dispatch=Ri.bind(null,ei,e),[r.memoizedState,e]},useRef:vi,useState:hi,useDebugValue:Ti,useDeferredValue:function(e){var t=hi(e),n=t[0],r=t[1];return Ei((function(){var t=Xo.transition;Xo.transition=1;try{r(e)}finally{Xo.transition=t}}),[e]),n},useTransition:function(){var e=hi(!1),t=e[0];return vi(e=Pi.bind(null,e[1])),[e,t]},useMutableSource:function(e,t,n){var r=si();return r.memoizedState={refs:{getSnapshot:t,setSnapshot:null},source:e,subscribe:n},mi(r,e,t,n)},useOpaqueIdentifier:function(){if($o){var e=!1,t=function(e){return{$$typeof:D,toString:e,valueOf:e}}((function(){throw e||(e=!0,n("r:"+(Kr++).toString(36))),Error(i(355))})),n=hi(t)[1];return 0==(2&ei.mode)&&(ei.flags|=516,bi(5,(function(){n("r:"+(Kr++).toString(36))}),void 0,null)),t}return hi(t="r:"+(Kr++).toString(36)),t},unstable_isNewReconciler:!1},Ii={readContext:io,useCallback:Ai,useContext:io,useEffect:Si,useImperativeHandle:_i,useLayoutEffect:xi,useMemo:Li,useReducer:di,useRef:yi,useState:function(){return di(ci)},useDebugValue:Ti,useDeferredValue:function(e){var t=di(ci),n=t[0],r=t[1];return Si((function(){var t=Xo.transition;Xo.transition=1;try{r(e)}finally{Xo.transition=t}}),[e]),n},useTransition:function(){var e=di(ci)[0];return[yi().current,e]},useMutableSource:gi,useOpaqueIdentifier:function(){return di(ci)[0]},unstable_isNewReconciler:!1},Di={readContext:io,useCallback:Ai,useContext:io,useEffect:Si,useImperativeHandle:_i,useLayoutEffect:xi,useMemo:Li,useReducer:pi,useRef:yi,useState:function(){return pi(ci)},useDebugValue:Ti,useDeferredValue:function(e){var t=pi(ci),n=t[0],r=t[1];return Si((function(){var t=Xo.transition;Xo.transition=1;try{r(e)}finally{Xo.transition=t}}),[e]),n},useTransition:function(){var e=pi(ci)[0];return[yi().current,e]},useMutableSource:gi,useOpaqueIdentifier:function(){return pi(ci)[0]},unstable_isNewReconciler:!1},Mi=k.ReactCurrentOwner,Fi=!1;function Bi(e,t,n,r){t.child=null===e?Ao(t,null,n,r):To(t,e.child,n,r)}function ji(e,t,n,r,a){n=n.render;var o=t.ref;return oo(t,a),r=li(e,t,n,r,o,a),null===e||Fi?(t.flags|=1,Bi(e,t,r,a),t.child):(t.updateQueue=e.updateQueue,t.flags&=-517,e.lanes&=~a,ol(e,t,a))}function zi(e,t,n,r,a,o){if(null===e){var i=n.type;return"function"!=typeof i||Hs(i)||void 0!==i.defaultProps||null!==n.compare||void 0!==n.defaultProps?((e=Vs(n.type,null,r,t,t.mode,o)).ref=t.ref,e.return=t,t.child=e):(t.tag=15,t.type=i,Ui(e,t,i,r,a,o))}return i=e.child,0==(a&o)&&(a=i.memoizedProps,(n=null!==(n=n.compare)?n:pr)(a,r)&&e.ref===t.ref)?ol(e,t,o):(t.flags|=1,(e=Zs(i,r)).ref=t.ref,e.return=t,t.child=e)}function Ui(e,t,n,r,a,o){if(null!==e&&pr(e.memoizedProps,r)&&e.ref===t.ref){if(Fi=!1,0==(o&a))return t.lanes=e.lanes,ol(e,t,o);0!=(16384&e.flags)&&(Fi=!0)}return Gi(e,t,n,r,o)}function $i(e,t,n){var r=t.pendingProps,a=r.children,o=null!==e?e.memoizedState:null;if("hidden"===r.mode||"unstable-defer-without-hiding"===r.mode)if(0==(4&t.mode))t.memoizedState={baseLanes:0},Es(t,n);else{if(0==(1073741824&n))return e=null!==o?o.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e},Es(t,e),null;t.memoizedState={baseLanes:0},Es(t,null!==o?o.baseLanes:n)}else null!==o?(r=o.baseLanes|n,t.memoizedState=null):r=n,Es(t,r);return Bi(e,t,a,n),t.child}function qi(e,t){var n=t.ref;(null===e&&null!==n||null!==e&&e.ref!==n)&&(t.flags|=128)}function Gi(e,t,n,r,a){var o=ba(n)?ga:fa.current;return o=ha(t,o),oo(t,a),n=li(e,t,n,r,o,a),null===e||Fi?(t.flags|=1,Bi(e,t,n,a),t.child):(t.updateQueue=e.updateQueue,t.flags&=-517,e.lanes&=~a,ol(e,t,a))}function Hi(e,t,n,r,a){if(ba(n)){var o=!0;ka(t)}else o=!1;if(oo(t,a),null===t.stateNode)null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2),wo(t,n,r),Eo(t,n,r,a),r=!0;else if(null===e){var i=t.stateNode,l=t.memoizedProps;i.props=l;var s=i.context,u=n.contextType;"object"==typeof u&&null!==u?u=io(u):u=ha(t,u=ba(n)?ga:fa.current);var c=n.getDerivedStateFromProps,d="function"==typeof c||"function"==typeof i.getSnapshotBeforeUpdate;d||"function"!=typeof i.UNSAFE_componentWillReceiveProps&&"function"!=typeof i.componentWillReceiveProps||(l!==r||s!==u)&&ko(t,i,r,u),lo=!1;var p=t.memoizedState;i.state=p,mo(t,r,i,a),s=t.memoizedState,l!==r||p!==s||ma.current||lo?("function"==typeof c&&(bo(t,n,c,r),s=t.memoizedState),(l=lo||yo(t,n,l,r,p,s,u))?(d||"function"!=typeof i.UNSAFE_componentWillMount&&"function"!=typeof i.componentWillMount||("function"==typeof i.componentWillMount&&i.componentWillMount(),"function"==typeof i.UNSAFE_componentWillMount&&i.UNSAFE_componentWillMount()),"function"==typeof i.componentDidMount&&(t.flags|=4)):("function"==typeof i.componentDidMount&&(t.flags|=4),t.memoizedProps=r,t.memoizedState=s),i.props=r,i.state=s,i.context=u,r=l):("function"==typeof i.componentDidMount&&(t.flags|=4),r=!1)}else{i=t.stateNode,uo(e,t),l=t.memoizedProps,u=t.type===t.elementType?l:Qa(t.type,l),i.props=u,d=t.pendingProps,p=i.context,"object"==typeof(s=n.contextType)&&null!==s?s=io(s):s=ha(t,s=ba(n)?ga:fa.current);var f=n.getDerivedStateFromProps;(c="function"==typeof f||"function"==typeof i.getSnapshotBeforeUpdate)||"function"!=typeof i.UNSAFE_componentWillReceiveProps&&"function"!=typeof i.componentWillReceiveProps||(l!==d||p!==s)&&ko(t,i,r,s),lo=!1,p=t.memoizedState,i.state=p,mo(t,r,i,a);var m=t.memoizedState;l!==d||p!==m||ma.current||lo?("function"==typeof f&&(bo(t,n,f,r),m=t.memoizedState),(u=lo||yo(t,n,u,r,p,m,s))?(c||"function"!=typeof i.UNSAFE_componentWillUpdate&&"function"!=typeof i.componentWillUpdate||("function"==typeof i.componentWillUpdate&&i.componentWillUpdate(r,m,s),"function"==typeof i.UNSAFE_componentWillUpdate&&i.UNSAFE_componentWillUpdate(r,m,s)),"function"==typeof i.componentDidUpdate&&(t.flags|=4),"function"==typeof i.getSnapshotBeforeUpdate&&(t.flags|=256)):("function"!=typeof i.componentDidUpdate||l===e.memoizedProps&&p===e.memoizedState||(t.flags|=4),"function"!=typeof i.getSnapshotBeforeUpdate||l===e.memoizedProps&&p===e.memoizedState||(t.flags|=256),t.memoizedProps=r,t.memoizedState=m),i.props=r,i.state=m,i.context=s,r=u):("function"!=typeof i.componentDidUpdate||l===e.memoizedProps&&p===e.memoizedState||(t.flags|=4),"function"!=typeof i.getSnapshotBeforeUpdate||l===e.memoizedProps&&p===e.memoizedState||(t.flags|=256),r=!1)}return Zi(e,t,n,r,o,a)}function Zi(e,t,n,r,a,o){qi(e,t);var i=0!=(64&t.flags);if(!r&&!i)return a&&Ea(t,n,!1),ol(e,t,o);r=t.stateNode,Mi.current=t;var l=i&&"function"!=typeof n.getDerivedStateFromError?null:r.render();return t.flags|=1,null!==e&&i?(t.child=To(t,e.child,null,o),t.child=To(t,null,l,o)):Bi(e,t,l,o),t.memoizedState=r.state,a&&Ea(t,n,!0),t.child}function Vi(e){var t=e.stateNode;t.pendingContext?ya(0,t.pendingContext,t.pendingContext!==t.context):t.context&&ya(0,t.context,!1),Io(e,t.containerInfo)}var Wi,Yi,Ki,Qi={dehydrated:null,retryLane:0};function Xi(e,t,n){var r,a=t.pendingProps,o=Bo.current,i=!1;return(r=0!=(64&t.flags))||(r=(null===e||null!==e.memoizedState)&&0!=(2&o)),r?(i=!0,t.flags&=-65):null!==e&&null===e.memoizedState||void 0===a.fallback||!0===a.unstable_avoidThisFallback||(o|=1),da(Bo,1&o),null===e?(void 0!==a.fallback&&Ho(t),e=a.children,o=a.fallback,i?(e=Ji(t,e,o,n),t.child.memoizedState={baseLanes:n},t.memoizedState=Qi,e):"number"==typeof a.unstable_expectedLoadTime?(e=Ji(t,e,o,n),t.child.memoizedState={baseLanes:n},t.memoizedState=Qi,t.lanes=33554432,e):((n=Ys({mode:"visible",children:e},t.mode,n,null)).return=t,t.child=n)):(e.memoizedState,i?(a=tl(e,t,a.children,a.fallback,n),i=t.child,o=e.child.memoizedState,i.memoizedState=null===o?{baseLanes:n}:{baseLanes:o.baseLanes|n},i.childLanes=e.childLanes&~n,t.memoizedState=Qi,a):(n=el(e,t,a.children,n),t.memoizedState=null,n))}function Ji(e,t,n,r){var a=e.mode,o=e.child;return t={mode:"hidden",children:t},0==(2&a)&&null!==o?(o.childLanes=0,o.pendingProps=t):o=Ys(t,a,0,null),n=Ws(n,a,r,null),o.return=e,n.return=e,o.sibling=n,e.child=o,n}function el(e,t,n,r){var a=e.child;return e=a.sibling,n=Zs(a,{mode:"visible",children:n}),0==(2&t.mode)&&(n.lanes=r),n.return=t,n.sibling=null,null!==e&&(e.nextEffect=null,e.flags=8,t.firstEffect=t.lastEffect=e),t.child=n}function tl(e,t,n,r,a){var o=t.mode,i=e.child;e=i.sibling;var l={mode:"hidden",children:n};return 0==(2&o)&&t.child!==i?((n=t.child).childLanes=0,n.pendingProps=l,null!==(i=n.lastEffect)?(t.firstEffect=n.firstEffect,t.lastEffect=i,i.nextEffect=null):t.firstEffect=t.lastEffect=null):n=Zs(i,l),null!==e?r=Zs(e,r):(r=Ws(r,o,a,null)).flags|=2,r.return=t,n.return=t,n.sibling=r,t.child=n,r}function nl(e,t){e.lanes|=t;var n=e.alternate;null!==n&&(n.lanes|=t),ao(e.return,t)}function rl(e,t,n,r,a,o){var i=e.memoizedState;null===i?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:a,lastEffect:o}:(i.isBackwards=t,i.rendering=null,i.renderingStartTime=0,i.last=r,i.tail=n,i.tailMode=a,i.lastEffect=o)}function al(e,t,n){var r=t.pendingProps,a=r.revealOrder,o=r.tail;if(Bi(e,t,r.children,n),0!=(2&(r=Bo.current)))r=1&r|2,t.flags|=64;else{if(null!==e&&0!=(64&e.flags))e:for(e=t.child;null!==e;){if(13===e.tag)null!==e.memoizedState&&nl(e,n);else if(19===e.tag)nl(e,n);else if(null!==e.child){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;null===e.sibling;){if(null===e.return||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if(da(Bo,r),0==(2&t.mode))t.memoizedState=null;else switch(a){case"forwards":for(n=t.child,a=null;null!==n;)null!==(e=n.alternate)&&null===jo(e)&&(a=n),n=n.sibling;null===(n=a)?(a=t.child,t.child=null):(a=n.sibling,n.sibling=null),rl(t,!1,a,n,o,t.lastEffect);break;case"backwards":for(n=null,a=t.child,t.child=null;null!==a;){if(null!==(e=a.alternate)&&null===jo(e)){t.child=a;break}e=a.sibling,a.sibling=n,n=a,a=e}rl(t,!0,n,null,o,t.lastEffect);break;case"together":rl(t,!1,null,null,void 0,t.lastEffect);break;default:t.memoizedState=null}return t.child}function ol(e,t,n){if(null!==e&&(t.dependencies=e.dependencies),Ul|=t.lanes,0!=(n&t.childLanes)){if(null!==e&&t.child!==e.child)throw Error(i(153));if(null!==t.child){for(n=Zs(e=t.child,e.pendingProps),t.child=n,n.return=t;null!==e.sibling;)e=e.sibling,(n=n.sibling=Zs(e,e.pendingProps)).return=t;n.sibling=null}return t.child}return null}function il(e,t){if(!$o)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;null!==t;)null!==t.alternate&&(n=t),t=t.sibling;null===n?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;null!==n;)null!==n.alternate&&(r=n),n=n.sibling;null===r?t||null===e.tail?e.tail=null:e.tail.sibling=null:r.sibling=null}}function ll(e,t,n){var r=t.pendingProps;switch(t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return null;case 1:case 17:return ba(t.type)&&va(),null;case 3:return Do(),ca(ma),ca(fa),Ko(),(r=t.stateNode).pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),null!==e&&null!==e.child||(Vo(t)?t.flags|=4:r.hydrate||(t.flags|=256)),null;case 5:Fo(t);var o=Oo(No.current);if(n=t.type,null!==e&&null!=t.stateNode)Yi(e,t,n,r),e.ref!==t.ref&&(t.flags|=128);else{if(!r){if(null===t.stateNode)throw Error(i(166));return null}if(e=Oo(Po.current),Vo(t)){r=t.stateNode,n=t.type;var l=t.memoizedProps;switch(r[Xr]=t,r[Jr]=l,n){case"dialog":Pr("cancel",r),Pr("close",r);break;case"iframe":case"object":case"embed":Pr("load",r);break;case"video":case"audio":for(e=0;e<_r.length;e++)Pr(_r[e],r);break;case"source":Pr("error",r);break;case"img":case"image":case"link":Pr("error",r),Pr("load",r);break;case"details":Pr("toggle",r);break;case"input":ee(r,l),Pr("invalid",r);break;case"select":r._wrapperState={wasMultiple:!!l.multiple},Pr("invalid",r);break;case"textarea":se(r,l),Pr("invalid",r)}for(var u in xe(n,l),e=null,l)l.hasOwnProperty(u)&&(o=l[u],"children"===u?"string"==typeof o?r.textContent!==o&&(e=["children",o]):"number"==typeof o&&r.textContent!==""+o&&(e=["children",""+o]):s.hasOwnProperty(u)&&null!=o&&"onScroll"===u&&Pr("scroll",r));switch(n){case"input":K(r),re(r,l,!0);break;case"textarea":K(r),ce(r);break;case"select":case"option":break;default:"function"==typeof l.onClick&&(r.onclick=zr)}r=e,t.updateQueue=r,null!==r&&(t.flags|=4)}else{switch(u=9===o.nodeType?o:o.ownerDocument,e===de&&(e=fe(n)),e===de?"script"===n?((e=u.createElement("div")).innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):"string"==typeof r.is?e=u.createElement(n,{is:r.is}):(e=u.createElement(n),"select"===n&&(u=e,r.multiple?u.multiple=!0:r.size&&(u.size=r.size))):e=u.createElementNS(e,n),e[Xr]=t,e[Jr]=r,Wi(e,t),t.stateNode=e,u=Ce(n,r),n){case"dialog":Pr("cancel",e),Pr("close",e),o=r;break;case"iframe":case"object":case"embed":Pr("load",e),o=r;break;case"video":case"audio":for(o=0;o<_r.length;o++)Pr(_r[o],e);o=r;break;case"source":Pr("error",e),o=r;break;case"img":case"image":case"link":Pr("error",e),Pr("load",e),o=r;break;case"details":Pr("toggle",e),o=r;break;case"input":ee(e,r),o=J(e,r),Pr("invalid",e);break;case"option":o=oe(e,r);break;case"select":e._wrapperState={wasMultiple:!!r.multiple},o=a({},r,{value:void 0}),Pr("invalid",e);break;case"textarea":se(e,r),o=le(e,r),Pr("invalid",e);break;default:o=r}xe(n,o);var c=o;for(l in c)if(c.hasOwnProperty(l)){var d=c[l];"style"===l?Ee(e,d):"dangerouslySetInnerHTML"===l?null!=(d=d?d.__html:void 0)&&be(e,d):"children"===l?"string"==typeof d?("textarea"!==n||""!==d)&&ve(e,d):"number"==typeof d&&ve(e,""+d):"suppressContentEditableWarning"!==l&&"suppressHydrationWarning"!==l&&"autoFocus"!==l&&(s.hasOwnProperty(l)?null!=d&&"onScroll"===l&&Pr("scroll",e):null!=d&&w(e,l,d,u))}switch(n){case"input":K(e),re(e,r,!1);break;case"textarea":K(e),ce(e);break;case"option":null!=r.value&&e.setAttribute("value",""+W(r.value));break;case"select":e.multiple=!!r.multiple,null!=(l=r.value)?ie(e,!!r.multiple,l,!1):null!=r.defaultValue&&ie(e,!!r.multiple,r.defaultValue,!0);break;default:"function"==typeof o.onClick&&(e.onclick=zr)}qr(n,r)&&(t.flags|=4)}null!==t.ref&&(t.flags|=128)}return null;case 6:if(e&&null!=t.stateNode)Ki(0,t,e.memoizedProps,r);else{if("string"!=typeof r&&null===t.stateNode)throw Error(i(166));n=Oo(No.current),Oo(Po.current),Vo(t)?(r=t.stateNode,n=t.memoizedProps,r[Xr]=t,r.nodeValue!==n&&(t.flags|=4)):((r=(9===n.nodeType?n:n.ownerDocument).createTextNode(r))[Xr]=t,t.stateNode=r)}return null;case 13:return ca(Bo),r=t.memoizedState,0!=(64&t.flags)?(t.lanes=n,t):(r=null!==r,n=!1,null===e?void 0!==t.memoizedProps.fallback&&Vo(t):n=null!==e.memoizedState,r&&!n&&0!=(2&t.mode)&&(null===e&&!0!==t.memoizedProps.unstable_avoidThisFallback||0!=(1&Bo.current)?0===Bl&&(Bl=3):(0!==Bl&&3!==Bl||(Bl=4),null===Ol||0==(134217727&Ul)&&0==(134217727&$l)||vs(Ol,Dl))),(r||n)&&(t.flags|=4),null);case 4:return Do(),null===e&&Nr(t.stateNode.containerInfo),null;case 10:return ro(t),null;case 19:if(ca(Bo),null===(r=t.memoizedState))return null;if(l=0!=(64&t.flags),null===(u=r.rendering))if(l)il(r,!1);else{if(0!==Bl||null!==e&&0!=(64&e.flags))for(e=t.child;null!==e;){if(null!==(u=jo(e))){for(t.flags|=64,il(r,!1),null!==(l=u.updateQueue)&&(t.updateQueue=l,t.flags|=4),null===r.lastEffect&&(t.firstEffect=null),t.lastEffect=r.lastEffect,r=n,n=t.child;null!==n;)e=r,(l=n).flags&=2,l.nextEffect=null,l.firstEffect=null,l.lastEffect=null,null===(u=l.alternate)?(l.childLanes=0,l.lanes=e,l.child=null,l.memoizedProps=null,l.memoizedState=null,l.updateQueue=null,l.dependencies=null,l.stateNode=null):(l.childLanes=u.childLanes,l.lanes=u.lanes,l.child=u.child,l.memoizedProps=u.memoizedProps,l.memoizedState=u.memoizedState,l.updateQueue=u.updateQueue,l.type=u.type,e=u.dependencies,l.dependencies=null===e?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return da(Bo,1&Bo.current|2),t.child}e=e.sibling}null!==r.tail&&qa()>Zl&&(t.flags|=64,l=!0,il(r,!1),t.lanes=33554432)}else{if(!l)if(null!==(e=jo(u))){if(t.flags|=64,l=!0,null!==(n=e.updateQueue)&&(t.updateQueue=n,t.flags|=4),il(r,!0),null===r.tail&&"hidden"===r.tailMode&&!u.alternate&&!$o)return null!==(t=t.lastEffect=r.lastEffect)&&(t.nextEffect=null),null}else 2*qa()-r.renderingStartTime>Zl&&1073741824!==n&&(t.flags|=64,l=!0,il(r,!1),t.lanes=33554432);r.isBackwards?(u.sibling=t.child,t.child=u):(null!==(n=r.last)?n.sibling=u:t.child=u,r.last=u)}return null!==r.tail?(n=r.tail,r.rendering=n,r.tail=n.sibling,r.lastEffect=t.lastEffect,r.renderingStartTime=qa(),n.sibling=null,t=Bo.current,da(Bo,l?1&t|2:1&t),n):null;case 23:case 24:return Ss(),null!==e&&null!==e.memoizedState!=(null!==t.memoizedState)&&"unstable-defer-without-hiding"!==r.mode&&(t.flags|=4),null}throw Error(i(156,t.tag))}function sl(e){switch(e.tag){case 1:ba(e.type)&&va();var t=e.flags;return 4096&t?(e.flags=-4097&t|64,e):null;case 3:if(Do(),ca(ma),ca(fa),Ko(),0!=(64&(t=e.flags)))throw Error(i(285));return e.flags=-4097&t|64,e;case 5:return Fo(e),null;case 13:return ca(Bo),4096&(t=e.flags)?(e.flags=-4097&t|64,e):null;case 19:return ca(Bo),null;case 4:return Do(),null;case 10:return ro(e),null;case 23:case 24:return Ss(),null;default:return null}}function ul(e,t){try{var n="",r=t;do{n+=Z(r),r=r.return}while(r);var a=n}catch(o){a="\nError generating stack: "+o.message+"\n"+o.stack}return{value:e,source:t,stack:a}}function cl(e,t){try{console.error(t.value)}catch(n){setTimeout((function(){throw n}))}}Wi=function(e,t){for(var n=t.child;null!==n;){if(5===n.tag||6===n.tag)e.appendChild(n.stateNode);else if(4!==n.tag&&null!==n.child){n.child.return=n,n=n.child;continue}if(n===t)break;for(;null===n.sibling;){if(null===n.return||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}},Yi=function(e,t,n,r){var o=e.memoizedProps;if(o!==r){e=t.stateNode,Oo(Po.current);var i,l=null;switch(n){case"input":o=J(e,o),r=J(e,r),l=[];break;case"option":o=oe(e,o),r=oe(e,r),l=[];break;case"select":o=a({},o,{value:void 0}),r=a({},r,{value:void 0}),l=[];break;case"textarea":o=le(e,o),r=le(e,r),l=[];break;default:"function"!=typeof o.onClick&&"function"==typeof r.onClick&&(e.onclick=zr)}for(d in xe(n,r),n=null,o)if(!r.hasOwnProperty(d)&&o.hasOwnProperty(d)&&null!=o[d])if("style"===d){var u=o[d];for(i in u)u.hasOwnProperty(i)&&(n||(n={}),n[i]="")}else"dangerouslySetInnerHTML"!==d&&"children"!==d&&"suppressContentEditableWarning"!==d&&"suppressHydrationWarning"!==d&&"autoFocus"!==d&&(s.hasOwnProperty(d)?l||(l=[]):(l=l||[]).push(d,null));for(d in r){var c=r[d];if(u=null!=o?o[d]:void 0,r.hasOwnProperty(d)&&c!==u&&(null!=c||null!=u))if("style"===d)if(u){for(i in u)!u.hasOwnProperty(i)||c&&c.hasOwnProperty(i)||(n||(n={}),n[i]="");for(i in c)c.hasOwnProperty(i)&&u[i]!==c[i]&&(n||(n={}),n[i]=c[i])}else n||(l||(l=[]),l.push(d,n)),n=c;else"dangerouslySetInnerHTML"===d?(c=c?c.__html:void 0,u=u?u.__html:void 0,null!=c&&u!==c&&(l=l||[]).push(d,c)):"children"===d?"string"!=typeof c&&"number"!=typeof c||(l=l||[]).push(d,""+c):"suppressContentEditableWarning"!==d&&"suppressHydrationWarning"!==d&&(s.hasOwnProperty(d)?(null!=c&&"onScroll"===d&&Pr("scroll",e),l||u===c||(l=[])):"object"==typeof c&&null!==c&&c.$$typeof===D?c.toString():(l=l||[]).push(d,c))}n&&(l=l||[]).push("style",n);var d=l;(t.updateQueue=d)&&(t.flags|=4)}},Ki=function(e,t,n,r){n!==r&&(t.flags|=4)};var dl="function"==typeof WeakMap?WeakMap:Map;function pl(e,t,n){(n=co(-1,n)).tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){Kl||(Kl=!0,Ql=r),cl(0,t)},n}function fl(e,t,n){(n=co(-1,n)).tag=3;var r=e.type.getDerivedStateFromError;if("function"==typeof r){var a=t.value;n.payload=function(){return cl(0,t),r(a)}}var o=e.stateNode;return null!==o&&"function"==typeof o.componentDidCatch&&(n.callback=function(){"function"!=typeof r&&(null===Xl?Xl=new Set([this]):Xl.add(this),cl(0,t));var e=t.stack;this.componentDidCatch(t.value,{componentStack:null!==e?e:""})}),n}var ml="function"==typeof WeakSet?WeakSet:Set;function gl(e){var t=e.ref;if(null!==t)if("function"==typeof t)try{t(null)}catch(n){zs(e,n)}else t.current=null}function hl(e,t){switch(t.tag){case 0:case 11:case 15:case 22:case 5:case 6:case 4:case 17:return;case 1:if(256&t.flags&&null!==e){var n=e.memoizedProps,r=e.memoizedState;t=(e=t.stateNode).getSnapshotBeforeUpdate(t.elementType===t.type?n:Qa(t.type,n),r),e.__reactInternalSnapshotBeforeUpdate=t}return;case 3:return void(256&t.flags&&Vr(t.stateNode.containerInfo))}throw Error(i(163))}function bl(e,t,n){switch(n.tag){case 0:case 11:case 15:case 22:if(null!==(t=null!==(t=n.updateQueue)?t.lastEffect:null)){e=t=t.next;do{if(3==(3&e.tag)){var r=e.create;e.destroy=r()}e=e.next}while(e!==t)}if(null!==(t=null!==(t=n.updateQueue)?t.lastEffect:null)){e=t=t.next;do{var a=e;r=a.next,0!=(4&(a=a.tag))&&0!=(1&a)&&(Fs(n,e),Ms(n,e)),e=r}while(e!==t)}return;case 1:return e=n.stateNode,4&n.flags&&(null===t?e.componentDidMount():(r=n.elementType===n.type?t.memoizedProps:Qa(n.type,t.memoizedProps),e.componentDidUpdate(r,t.memoizedState,e.__reactInternalSnapshotBeforeUpdate))),void(null!==(t=n.updateQueue)&&go(n,t,e));case 3:if(null!==(t=n.updateQueue)){if(e=null,null!==n.child)switch(n.child.tag){case 5:case 1:e=n.child.stateNode}go(n,t,e)}return;case 5:return e=n.stateNode,void(null===t&&4&n.flags&&qr(n.type,n.memoizedProps)&&e.focus());case 6:case 4:case 12:case 19:case 17:case 20:case 21:case 23:case 24:return;case 13:return void(null===n.memoizedState&&(n=n.alternate,null!==n&&(n=n.memoizedState,null!==n&&(n=n.dehydrated,null!==n&&Et(n)))))}throw Error(i(163))}function vl(e,t){for(var n=e;;){if(5===n.tag){var r=n.stateNode;if(t)"function"==typeof(r=r.style).setProperty?r.setProperty("display","none","important"):r.display="none";else{r=n.stateNode;var a=n.memoizedProps.style;a=null!=a&&a.hasOwnProperty("display")?a.display:null,r.style.display=ke("display",a)}}else if(6===n.tag)n.stateNode.nodeValue=t?"":n.memoizedProps;else if((23!==n.tag&&24!==n.tag||null===n.memoizedState||n===e)&&null!==n.child){n.child.return=n,n=n.child;continue}if(n===e)break;for(;null===n.sibling;){if(null===n.return||n.return===e)return;n=n.return}n.sibling.return=n.return,n=n.sibling}}function yl(e,t){if(xa&&"function"==typeof xa.onCommitFiberUnmount)try{xa.onCommitFiberUnmount(Sa,t)}catch(o){}switch(t.tag){case 0:case 11:case 14:case 15:case 22:if(null!==(e=t.updateQueue)&&null!==(e=e.lastEffect)){var n=e=e.next;do{var r=n,a=r.destroy;if(r=r.tag,void 0!==a)if(0!=(4&r))Fs(t,n);else{r=t;try{a()}catch(o){zs(r,o)}}n=n.next}while(n!==e)}break;case 1:if(gl(t),"function"==typeof(e=t.stateNode).componentWillUnmount)try{e.props=t.memoizedProps,e.state=t.memoizedState,e.componentWillUnmount()}catch(o){zs(t,o)}break;case 5:gl(t);break;case 4:Cl(e,t)}}function wl(e){e.alternate=null,e.child=null,e.dependencies=null,e.firstEffect=null,e.lastEffect=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.return=null,e.updateQueue=null}function kl(e){return 5===e.tag||3===e.tag||4===e.tag}function El(e){e:{for(var t=e.return;null!==t;){if(kl(t))break e;t=t.return}throw Error(i(160))}var n=t;switch(t=n.stateNode,n.tag){case 5:var r=!1;break;case 3:case 4:t=t.containerInfo,r=!0;break;default:throw Error(i(161))}16&n.flags&&(ve(t,""),n.flags&=-17);e:t:for(n=e;;){for(;null===n.sibling;){if(null===n.return||kl(n.return)){n=null;break e}n=n.return}for(n.sibling.return=n.return,n=n.sibling;5!==n.tag&&6!==n.tag&&18!==n.tag;){if(2&n.flags)continue t;if(null===n.child||4===n.tag)continue t;n.child.return=n,n=n.child}if(!(2&n.flags)){n=n.stateNode;break e}}r?Sl(e,n,t):xl(e,n,t)}function Sl(e,t,n){var r=e.tag,a=5===r||6===r;if(a)e=a?e.stateNode:e.stateNode.instance,t?8===n.nodeType?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(8===n.nodeType?(t=n.parentNode).insertBefore(e,n):(t=n).appendChild(e),null!=(n=n._reactRootContainer)||null!==t.onclick||(t.onclick=zr));else if(4!==r&&null!==(e=e.child))for(Sl(e,t,n),e=e.sibling;null!==e;)Sl(e,t,n),e=e.sibling}function xl(e,t,n){var r=e.tag,a=5===r||6===r;if(a)e=a?e.stateNode:e.stateNode.instance,t?n.insertBefore(e,t):n.appendChild(e);else if(4!==r&&null!==(e=e.child))for(xl(e,t,n),e=e.sibling;null!==e;)xl(e,t,n),e=e.sibling}function Cl(e,t){for(var n,r,a=t,o=!1;;){if(!o){o=a.return;e:for(;;){if(null===o)throw Error(i(160));switch(n=o.stateNode,o.tag){case 5:r=!1;break e;case 3:case 4:n=n.containerInfo,r=!0;break e}o=o.return}o=!0}if(5===a.tag||6===a.tag){e:for(var l=e,s=a,u=s;;)if(yl(l,u),null!==u.child&&4!==u.tag)u.child.return=u,u=u.child;else{if(u===s)break e;for(;null===u.sibling;){if(null===u.return||u.return===s)break e;u=u.return}u.sibling.return=u.return,u=u.sibling}r?(l=n,s=a.stateNode,8===l.nodeType?l.parentNode.removeChild(s):l.removeChild(s)):n.removeChild(a.stateNode)}else if(4===a.tag){if(null!==a.child){n=a.stateNode.containerInfo,r=!0,a.child.return=a,a=a.child;continue}}else if(yl(e,a),null!==a.child){a.child.return=a,a=a.child;continue}if(a===t)break;for(;null===a.sibling;){if(null===a.return||a.return===t)return;4===(a=a.return).tag&&(o=!1)}a.sibling.return=a.return,a=a.sibling}}function _l(e,t){switch(t.tag){case 0:case 11:case 14:case 15:case 22:var n=t.updateQueue;if(null!==(n=null!==n?n.lastEffect:null)){var r=n=n.next;do{3==(3&r.tag)&&(e=r.destroy,r.destroy=void 0,void 0!==e&&e()),r=r.next}while(r!==n)}return;case 1:case 12:case 17:return;case 5:if(null!=(n=t.stateNode)){r=t.memoizedProps;var a=null!==e?e.memoizedProps:r;e=t.type;var o=t.updateQueue;if(t.updateQueue=null,null!==o){for(n[Jr]=r,"input"===e&&"radio"===r.type&&null!=r.name&&te(n,r),Ce(e,a),t=Ce(e,r),a=0;a<o.length;a+=2){var l=o[a],s=o[a+1];"style"===l?Ee(n,s):"dangerouslySetInnerHTML"===l?be(n,s):"children"===l?ve(n,s):w(n,l,s,t)}switch(e){case"input":ne(n,r);break;case"textarea":ue(n,r);break;case"select":e=n._wrapperState.wasMultiple,n._wrapperState.wasMultiple=!!r.multiple,null!=(o=r.value)?ie(n,!!r.multiple,o,!1):e!==!!r.multiple&&(null!=r.defaultValue?ie(n,!!r.multiple,r.defaultValue,!0):ie(n,!!r.multiple,r.multiple?[]:"",!1))}}}return;case 6:if(null===t.stateNode)throw Error(i(162));return void(t.stateNode.nodeValue=t.memoizedProps);case 3:return void((n=t.stateNode).hydrate&&(n.hydrate=!1,Et(n.containerInfo)));case 13:return null!==t.memoizedState&&(Hl=qa(),vl(t.child,!0)),void Tl(t);case 19:return void Tl(t);case 23:case 24:return void vl(t,null!==t.memoizedState)}throw Error(i(163))}function Tl(e){var t=e.updateQueue;if(null!==t){e.updateQueue=null;var n=e.stateNode;null===n&&(n=e.stateNode=new ml),t.forEach((function(t){var r=$s.bind(null,e,t);n.has(t)||(n.add(t),t.then(r,r))}))}}function Al(e,t){return null!==e&&(null===(e=e.memoizedState)||null!==e.dehydrated)&&(null!==(t=t.memoizedState)&&null===t.dehydrated)}var Ll=Math.ceil,Pl=k.ReactCurrentDispatcher,Rl=k.ReactCurrentOwner,Nl=0,Ol=null,Il=null,Dl=0,Ml=0,Fl=ua(0),Bl=0,jl=null,zl=0,Ul=0,$l=0,ql=0,Gl=null,Hl=0,Zl=1/0;function Vl(){Zl=qa()+500}var Wl,Yl=null,Kl=!1,Ql=null,Xl=null,Jl=!1,es=null,ts=90,ns=[],rs=[],as=null,os=0,is=null,ls=-1,ss=0,us=0,cs=null,ds=!1;function ps(){return 0!=(48&Nl)?qa():-1!==ls?ls:ls=qa()}function fs(e){if(0==(2&(e=e.mode)))return 1;if(0==(4&e))return 99===Ga()?1:2;if(0===ss&&(ss=zl),0!==Ka.transition){0!==us&&(us=null!==Gl?Gl.pendingLanes:0),e=ss;var t=4186112&~us;return 0===(t&=-t)&&(0===(t=(e=4186112&~e)&-e)&&(t=8192)),t}return e=Ga(),0!=(4&Nl)&&98===e?e=zt(12,ss):e=zt(e=function(e){switch(e){case 99:return 15;case 98:return 10;case 97:case 96:return 8;case 95:return 2;default:return 0}}(e),ss),e}function ms(e,t,n){if(50<os)throw os=0,is=null,Error(i(185));if(null===(e=gs(e,t)))return null;qt(e,t,n),e===Ol&&($l|=t,4===Bl&&vs(e,Dl));var r=Ga();1===t?0!=(8&Nl)&&0==(48&Nl)?ys(e):(hs(e,n),0===Nl&&(Vl(),Wa())):(0==(4&Nl)||98!==r&&99!==r||(null===as?as=new Set([e]):as.add(e)),hs(e,n)),Gl=e}function gs(e,t){e.lanes|=t;var n=e.alternate;for(null!==n&&(n.lanes|=t),n=e,e=e.return;null!==e;)e.childLanes|=t,null!==(n=e.alternate)&&(n.childLanes|=t),n=e,e=e.return;return 3===n.tag?n.stateNode:null}function hs(e,t){for(var n=e.callbackNode,r=e.suspendedLanes,a=e.pingedLanes,o=e.expirationTimes,l=e.pendingLanes;0<l;){var s=31-Gt(l),u=1<<s,c=o[s];if(-1===c){if(0==(u&r)||0!=(u&a)){c=t,Ft(u);var d=Mt;o[s]=10<=d?c+250:6<=d?c+5e3:-1}}else c<=t&&(e.expiredLanes|=u);l&=~u}if(r=Bt(e,e===Ol?Dl:0),t=Mt,0===r)null!==n&&(n!==Fa&&Ta(n),e.callbackNode=null,e.callbackPriority=0);else{if(null!==n){if(e.callbackPriority===t)return;n!==Fa&&Ta(n)}15===t?(n=ys.bind(null,e),null===ja?(ja=[n],za=_a(Na,Ya)):ja.push(n),n=Fa):14===t?n=Va(99,ys.bind(null,e)):(n=function(e){switch(e){case 15:case 14:return 99;case 13:case 12:case 11:case 10:return 98;case 9:case 8:case 7:case 6:case 4:case 5:return 97;case 3:case 2:case 1:return 95;case 0:return 90;default:throw Error(i(358,e))}}(t),n=Va(n,bs.bind(null,e))),e.callbackPriority=t,e.callbackNode=n}}function bs(e){if(ls=-1,us=ss=0,0!=(48&Nl))throw Error(i(327));var t=e.callbackNode;if(Ds()&&e.callbackNode!==t)return null;var n=Bt(e,e===Ol?Dl:0);if(0===n)return null;var r=n,a=Nl;Nl|=16;var o=_s();for(Ol===e&&Dl===r||(Vl(),xs(e,r));;)try{Ls();break}catch(s){Cs(e,s)}if(no(),Pl.current=o,Nl=a,null!==Il?r=0:(Ol=null,Dl=0,r=Bl),0!=(zl&$l))xs(e,0);else if(0!==r){if(2===r&&(Nl|=64,e.hydrate&&(e.hydrate=!1,Vr(e.containerInfo)),0!==(n=jt(e))&&(r=Ts(e,n))),1===r)throw t=jl,xs(e,0),vs(e,n),hs(e,qa()),t;switch(e.finishedWork=e.current.alternate,e.finishedLanes=n,r){case 0:case 1:throw Error(i(345));case 2:case 5:Ns(e);break;case 3:if(vs(e,n),(62914560&n)===n&&10<(r=Hl+500-qa())){if(0!==Bt(e,0))break;if(((a=e.suspendedLanes)&n)!==n){ps(),e.pingedLanes|=e.suspendedLanes&a;break}e.timeoutHandle=Hr(Ns.bind(null,e),r);break}Ns(e);break;case 4:if(vs(e,n),(4186112&n)===n)break;for(r=e.eventTimes,a=-1;0<n;){var l=31-Gt(n);o=1<<l,(l=r[l])>a&&(a=l),n&=~o}if(n=a,10<(n=(120>(n=qa()-n)?120:480>n?480:1080>n?1080:1920>n?1920:3e3>n?3e3:4320>n?4320:1960*Ll(n/1960))-n)){e.timeoutHandle=Hr(Ns.bind(null,e),n);break}Ns(e);break;default:throw Error(i(329))}}return hs(e,qa()),e.callbackNode===t?bs.bind(null,e):null}function vs(e,t){for(t&=~ql,t&=~$l,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-Gt(t),r=1<<n;e[n]=-1,t&=~r}}function ys(e){if(0!=(48&Nl))throw Error(i(327));if(Ds(),e===Ol&&0!=(e.expiredLanes&Dl)){var t=Dl,n=Ts(e,t);0!=(zl&$l)&&(n=Ts(e,t=Bt(e,t)))}else n=Ts(e,t=Bt(e,0));if(0!==e.tag&&2===n&&(Nl|=64,e.hydrate&&(e.hydrate=!1,Vr(e.containerInfo)),0!==(t=jt(e))&&(n=Ts(e,t))),1===n)throw n=jl,xs(e,0),vs(e,t),hs(e,qa()),n;return e.finishedWork=e.current.alternate,e.finishedLanes=t,Ns(e),hs(e,qa()),null}function ws(e,t){var n=Nl;Nl|=1;try{return e(t)}finally{0===(Nl=n)&&(Vl(),Wa())}}function ks(e,t){var n=Nl;Nl&=-2,Nl|=8;try{return e(t)}finally{0===(Nl=n)&&(Vl(),Wa())}}function Es(e,t){da(Fl,Ml),Ml|=t,zl|=t}function Ss(){Ml=Fl.current,ca(Fl)}function xs(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(-1!==n&&(e.timeoutHandle=-1,Zr(n)),null!==Il)for(n=Il.return;null!==n;){var r=n;switch(r.tag){case 1:null!=(r=r.type.childContextTypes)&&va();break;case 3:Do(),ca(ma),ca(fa),Ko();break;case 5:Fo(r);break;case 4:Do();break;case 13:case 19:ca(Bo);break;case 10:ro(r);break;case 23:case 24:Ss()}n=n.return}Ol=e,Il=Zs(e.current,null),Dl=Ml=zl=t,Bl=0,jl=null,ql=$l=Ul=0}function Cs(e,t){for(;;){var n=Il;try{if(no(),Qo.current=Ni,ri){for(var r=ei.memoizedState;null!==r;){var a=r.queue;null!==a&&(a.pending=null),r=r.next}ri=!1}if(Jo=0,ni=ti=ei=null,ai=!1,Rl.current=null,null===n||null===n.return){Bl=1,jl=t,Il=null;break}e:{var o=e,i=n.return,l=n,s=t;if(t=Dl,l.flags|=2048,l.firstEffect=l.lastEffect=null,null!==s&&"object"==typeof s&&"function"==typeof s.then){var u=s;if(0==(2&l.mode)){var c=l.alternate;c?(l.updateQueue=c.updateQueue,l.memoizedState=c.memoizedState,l.lanes=c.lanes):(l.updateQueue=null,l.memoizedState=null)}var d=0!=(1&Bo.current),p=i;do{var f;if(f=13===p.tag){var m=p.memoizedState;if(null!==m)f=null!==m.dehydrated;else{var g=p.memoizedProps;f=void 0!==g.fallback&&(!0!==g.unstable_avoidThisFallback||!d)}}if(f){var h=p.updateQueue;if(null===h){var b=new Set;b.add(u),p.updateQueue=b}else h.add(u);if(0==(2&p.mode)){if(p.flags|=64,l.flags|=16384,l.flags&=-2981,1===l.tag)if(null===l.alternate)l.tag=17;else{var v=co(-1,1);v.tag=2,po(l,v)}l.lanes|=1;break e}s=void 0,l=t;var y=o.pingCache;if(null===y?(y=o.pingCache=new dl,s=new Set,y.set(u,s)):void 0===(s=y.get(u))&&(s=new Set,y.set(u,s)),!s.has(l)){s.add(l);var w=Us.bind(null,o,u,l);u.then(w,w)}p.flags|=4096,p.lanes=t;break e}p=p.return}while(null!==p);s=Error((V(l.type)||"A React component")+" suspended while rendering, but no fallback UI was specified.\n\nAdd a <Suspense fallback=...> component higher in the tree to provide a loading indicator or placeholder to display.")}5!==Bl&&(Bl=2),s=ul(s,l),p=i;do{switch(p.tag){case 3:o=s,p.flags|=4096,t&=-t,p.lanes|=t,fo(p,pl(0,o,t));break e;case 1:o=s;var k=p.type,E=p.stateNode;if(0==(64&p.flags)&&("function"==typeof k.getDerivedStateFromError||null!==E&&"function"==typeof E.componentDidCatch&&(null===Xl||!Xl.has(E)))){p.flags|=4096,t&=-t,p.lanes|=t,fo(p,fl(p,o,t));break e}}p=p.return}while(null!==p)}Rs(n)}catch(S){t=S,Il===n&&null!==n&&(Il=n=n.return);continue}break}}function _s(){var e=Pl.current;return Pl.current=Ni,null===e?Ni:e}function Ts(e,t){var n=Nl;Nl|=16;var r=_s();for(Ol===e&&Dl===t||xs(e,t);;)try{As();break}catch(a){Cs(e,a)}if(no(),Nl=n,Pl.current=r,null!==Il)throw Error(i(261));return Ol=null,Dl=0,Bl}function As(){for(;null!==Il;)Ps(Il)}function Ls(){for(;null!==Il&&!Aa();)Ps(Il)}function Ps(e){var t=Wl(e.alternate,e,Ml);e.memoizedProps=e.pendingProps,null===t?Rs(e):Il=t,Rl.current=null}function Rs(e){var t=e;do{var n=t.alternate;if(e=t.return,0==(2048&t.flags)){if(null!==(n=ll(n,t,Ml)))return void(Il=n);if(24!==(n=t).tag&&23!==n.tag||null===n.memoizedState||0!=(1073741824&Ml)||0==(4&n.mode)){for(var r=0,a=n.child;null!==a;)r|=a.lanes|a.childLanes,a=a.sibling;n.childLanes=r}null!==e&&0==(2048&e.flags)&&(null===e.firstEffect&&(e.firstEffect=t.firstEffect),null!==t.lastEffect&&(null!==e.lastEffect&&(e.lastEffect.nextEffect=t.firstEffect),e.lastEffect=t.lastEffect),1<t.flags&&(null!==e.lastEffect?e.lastEffect.nextEffect=t:e.firstEffect=t,e.lastEffect=t))}else{if(null!==(n=sl(t)))return n.flags&=2047,void(Il=n);null!==e&&(e.firstEffect=e.lastEffect=null,e.flags|=2048)}if(null!==(t=t.sibling))return void(Il=t);Il=t=e}while(null!==t);0===Bl&&(Bl=5)}function Ns(e){var t=Ga();return Za(99,Os.bind(null,e,t)),null}function Os(e,t){do{Ds()}while(null!==es);if(0!=(48&Nl))throw Error(i(327));var n=e.finishedWork;if(null===n)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(i(177));e.callbackNode=null;var r=n.lanes|n.childLanes,a=r,o=e.pendingLanes&~a;e.pendingLanes=a,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=a,e.mutableReadLanes&=a,e.entangledLanes&=a,a=e.entanglements;for(var l=e.eventTimes,s=e.expirationTimes;0<o;){var u=31-Gt(o),c=1<<u;a[u]=0,l[u]=-1,s[u]=-1,o&=~c}if(null!==as&&0==(24&r)&&as.has(e)&&as.delete(e),e===Ol&&(Il=Ol=null,Dl=0),1<n.flags?null!==n.lastEffect?(n.lastEffect.nextEffect=n,r=n.firstEffect):r=n:r=n.firstEffect,null!==r){if(a=Nl,Nl|=32,Rl.current=null,Ur=Yt,br(l=hr())){if("selectionStart"in l)s={start:l.selectionStart,end:l.selectionEnd};else e:if(s=(s=l.ownerDocument)&&s.defaultView||window,(c=s.getSelection&&s.getSelection())&&0!==c.rangeCount){s=c.anchorNode,o=c.anchorOffset,u=c.focusNode,c=c.focusOffset;try{s.nodeType,u.nodeType}catch(_){s=null;break e}var d=0,p=-1,f=-1,m=0,g=0,h=l,b=null;t:for(;;){for(var v;h!==s||0!==o&&3!==h.nodeType||(p=d+o),h!==u||0!==c&&3!==h.nodeType||(f=d+c),3===h.nodeType&&(d+=h.nodeValue.length),null!==(v=h.firstChild);)b=h,h=v;for(;;){if(h===l)break t;if(b===s&&++m===o&&(p=d),b===u&&++g===c&&(f=d),null!==(v=h.nextSibling))break;b=(h=b).parentNode}h=v}s=-1===p||-1===f?null:{start:p,end:f}}else s=null;s=s||{start:0,end:0}}else s=null;$r={focusedElem:l,selectionRange:s},Yt=!1,cs=null,ds=!1,Yl=r;do{try{Is()}catch(_){if(null===Yl)throw Error(i(330));zs(Yl,_),Yl=Yl.nextEffect}}while(null!==Yl);cs=null,Yl=r;do{try{for(l=e;null!==Yl;){var y=Yl.flags;if(16&y&&ve(Yl.stateNode,""),128&y){var w=Yl.alternate;if(null!==w){var k=w.ref;null!==k&&("function"==typeof k?k(null):k.current=null)}}switch(1038&y){case 2:El(Yl),Yl.flags&=-3;break;case 6:El(Yl),Yl.flags&=-3,_l(Yl.alternate,Yl);break;case 1024:Yl.flags&=-1025;break;case 1028:Yl.flags&=-1025,_l(Yl.alternate,Yl);break;case 4:_l(Yl.alternate,Yl);break;case 8:Cl(l,s=Yl);var E=s.alternate;wl(s),null!==E&&wl(E)}Yl=Yl.nextEffect}}catch(_){if(null===Yl)throw Error(i(330));zs(Yl,_),Yl=Yl.nextEffect}}while(null!==Yl);if(k=$r,w=hr(),y=k.focusedElem,l=k.selectionRange,w!==y&&y&&y.ownerDocument&&gr(y.ownerDocument.documentElement,y)){null!==l&&br(y)&&(w=l.start,void 0===(k=l.end)&&(k=w),"selectionStart"in y?(y.selectionStart=w,y.selectionEnd=Math.min(k,y.value.length)):(k=(w=y.ownerDocument||document)&&w.defaultView||window).getSelection&&(k=k.getSelection(),s=y.textContent.length,E=Math.min(l.start,s),l=void 0===l.end?E:Math.min(l.end,s),!k.extend&&E>l&&(s=l,l=E,E=s),s=mr(y,E),o=mr(y,l),s&&o&&(1!==k.rangeCount||k.anchorNode!==s.node||k.anchorOffset!==s.offset||k.focusNode!==o.node||k.focusOffset!==o.offset)&&((w=w.createRange()).setStart(s.node,s.offset),k.removeAllRanges(),E>l?(k.addRange(w),k.extend(o.node,o.offset)):(w.setEnd(o.node,o.offset),k.addRange(w))))),w=[];for(k=y;k=k.parentNode;)1===k.nodeType&&w.push({element:k,left:k.scrollLeft,top:k.scrollTop});for("function"==typeof y.focus&&y.focus(),y=0;y<w.length;y++)(k=w[y]).element.scrollLeft=k.left,k.element.scrollTop=k.top}Yt=!!Ur,$r=Ur=null,e.current=n,Yl=r;do{try{for(y=e;null!==Yl;){var S=Yl.flags;if(36&S&&bl(y,Yl.alternate,Yl),128&S){w=void 0;var x=Yl.ref;if(null!==x){var C=Yl.stateNode;Yl.tag,w=C,"function"==typeof x?x(w):x.current=w}}Yl=Yl.nextEffect}}catch(_){if(null===Yl)throw Error(i(330));zs(Yl,_),Yl=Yl.nextEffect}}while(null!==Yl);Yl=null,Ba(),Nl=a}else e.current=n;if(Jl)Jl=!1,es=e,ts=t;else for(Yl=r;null!==Yl;)t=Yl.nextEffect,Yl.nextEffect=null,8&Yl.flags&&((S=Yl).sibling=null,S.stateNode=null),Yl=t;if(0===(r=e.pendingLanes)&&(Xl=null),1===r?e===is?os++:(os=0,is=e):os=0,n=n.stateNode,xa&&"function"==typeof xa.onCommitFiberRoot)try{xa.onCommitFiberRoot(Sa,n,void 0,64==(64&n.current.flags))}catch(_){}if(hs(e,qa()),Kl)throw Kl=!1,e=Ql,Ql=null,e;return 0!=(8&Nl)||Wa(),null}function Is(){for(;null!==Yl;){var e=Yl.alternate;ds||null===cs||(0!=(8&Yl.flags)?et(Yl,cs)&&(ds=!0):13===Yl.tag&&Al(e,Yl)&&et(Yl,cs)&&(ds=!0));var t=Yl.flags;0!=(256&t)&&hl(e,Yl),0==(512&t)||Jl||(Jl=!0,Va(97,(function(){return Ds(),null}))),Yl=Yl.nextEffect}}function Ds(){if(90!==ts){var e=97<ts?97:ts;return ts=90,Za(e,Bs)}return!1}function Ms(e,t){ns.push(t,e),Jl||(Jl=!0,Va(97,(function(){return Ds(),null})))}function Fs(e,t){rs.push(t,e),Jl||(Jl=!0,Va(97,(function(){return Ds(),null})))}function Bs(){if(null===es)return!1;var e=es;if(es=null,0!=(48&Nl))throw Error(i(331));var t=Nl;Nl|=32;var n=rs;rs=[];for(var r=0;r<n.length;r+=2){var a=n[r],o=n[r+1],l=a.destroy;if(a.destroy=void 0,"function"==typeof l)try{l()}catch(u){if(null===o)throw Error(i(330));zs(o,u)}}for(n=ns,ns=[],r=0;r<n.length;r+=2){a=n[r],o=n[r+1];try{var s=a.create;a.destroy=s()}catch(u){if(null===o)throw Error(i(330));zs(o,u)}}for(s=e.current.firstEffect;null!==s;)e=s.nextEffect,s.nextEffect=null,8&s.flags&&(s.sibling=null,s.stateNode=null),s=e;return Nl=t,Wa(),!0}function js(e,t,n){po(e,t=pl(0,t=ul(n,t),1)),t=ps(),null!==(e=gs(e,1))&&(qt(e,1,t),hs(e,t))}function zs(e,t){if(3===e.tag)js(e,e,t);else for(var n=e.return;null!==n;){if(3===n.tag){js(n,e,t);break}if(1===n.tag){var r=n.stateNode;if("function"==typeof n.type.getDerivedStateFromError||"function"==typeof r.componentDidCatch&&(null===Xl||!Xl.has(r))){var a=fl(n,e=ul(t,e),1);if(po(n,a),a=ps(),null!==(n=gs(n,1)))qt(n,1,a),hs(n,a);else if("function"==typeof r.componentDidCatch&&(null===Xl||!Xl.has(r)))try{r.componentDidCatch(t,e)}catch(o){}break}}n=n.return}}function Us(e,t,n){var r=e.pingCache;null!==r&&r.delete(t),t=ps(),e.pingedLanes|=e.suspendedLanes&n,Ol===e&&(Dl&n)===n&&(4===Bl||3===Bl&&(62914560&Dl)===Dl&&500>qa()-Hl?xs(e,0):ql|=n),hs(e,t)}function $s(e,t){var n=e.stateNode;null!==n&&n.delete(t),0===(t=0)&&(0==(2&(t=e.mode))?t=1:0==(4&t)?t=99===Ga()?1:2:(0===ss&&(ss=zl),0===(t=Ut(62914560&~ss))&&(t=4194304))),n=ps(),null!==(e=gs(e,t))&&(qt(e,t,n),hs(e,n))}function qs(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.flags=0,this.lastEffect=this.firstEffect=this.nextEffect=null,this.childLanes=this.lanes=0,this.alternate=null}function Gs(e,t,n,r){return new qs(e,t,n,r)}function Hs(e){return!(!(e=e.prototype)||!e.isReactComponent)}function Zs(e,t){var n=e.alternate;return null===n?((n=Gs(e.tag,t,e.key,e.mode)).elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.nextEffect=null,n.firstEffect=null,n.lastEffect=null),n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=null===t?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Vs(e,t,n,r,a,o){var l=2;if(r=e,"function"==typeof e)Hs(e)&&(l=1);else if("string"==typeof e)l=5;else e:switch(e){case x:return Ws(n.children,a,o,t);case M:l=8,a|=16;break;case C:l=8,a|=1;break;case _:return(e=Gs(12,n,t,8|a)).elementType=_,e.type=_,e.lanes=o,e;case P:return(e=Gs(13,n,t,a)).type=P,e.elementType=P,e.lanes=o,e;case R:return(e=Gs(19,n,t,a)).elementType=R,e.lanes=o,e;case F:return Ys(n,a,o,t);case B:return(e=Gs(24,n,t,a)).elementType=B,e.lanes=o,e;default:if("object"==typeof e&&null!==e)switch(e.$$typeof){case T:l=10;break e;case A:l=9;break e;case L:l=11;break e;case N:l=14;break e;case O:l=16,r=null;break e;case I:l=22;break e}throw Error(i(130,null==e?e:typeof e,""))}return(t=Gs(l,n,t,a)).elementType=e,t.type=r,t.lanes=o,t}function Ws(e,t,n,r){return(e=Gs(7,e,r,t)).lanes=n,e}function Ys(e,t,n,r){return(e=Gs(23,e,r,t)).elementType=F,e.lanes=n,e}function Ks(e,t,n){return(e=Gs(6,e,null,t)).lanes=n,e}function Qs(e,t,n){return(t=Gs(4,null!==e.children?e.children:[],e.key,t)).lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Xs(e,t,n){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.pendingContext=this.context=null,this.hydrate=n,this.callbackNode=null,this.callbackPriority=0,this.eventTimes=$t(0),this.expirationTimes=$t(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=$t(0),this.mutableSourceEagerHydrationData=null}function Js(e,t,n){var r=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:S,key:null==r?null:""+r,children:e,containerInfo:t,implementation:n}}function eu(e,t,n,r){var a=t.current,o=ps(),l=fs(a);e:if(n){t:{if(Ke(n=n._reactInternals)!==n||1!==n.tag)throw Error(i(170));var s=n;do{switch(s.tag){case 3:s=s.stateNode.context;break t;case 1:if(ba(s.type)){s=s.stateNode.__reactInternalMemoizedMergedChildContext;break t}}s=s.return}while(null!==s);throw Error(i(171))}if(1===n.tag){var u=n.type;if(ba(u)){n=wa(n,u,s);break e}}n=s}else n=pa;return null===t.context?t.context=n:t.pendingContext=n,(t=co(o,l)).payload={element:e},null!==(r=void 0===r?null:r)&&(t.callback=r),po(a,t),ms(a,l,o),l}function tu(e){return(e=e.current).child?(e.child.tag,e.child.stateNode):null}function nu(e,t){if(null!==(e=e.memoizedState)&&null!==e.dehydrated){var n=e.retryLane;e.retryLane=0!==n&&n<t?n:t}}function ru(e,t){nu(e,t),(e=e.alternate)&&nu(e,t)}function au(e,t,n){var r=null!=n&&null!=n.hydrationOptions&&n.hydrationOptions.mutableSources||null;if(n=new Xs(e,t,null!=n&&!0===n.hydrate),t=Gs(3,null,null,2===t?7:1===t?3:0),n.current=t,t.stateNode=n,so(t),e[ea]=n.current,Nr(8===e.nodeType?e.parentNode:e),r)for(e=0;e<r.length;e++){var a=(t=r[e])._getVersion;a=a(t._source),null==n.mutableSourceEagerHydrationData?n.mutableSourceEagerHydrationData=[t,a]:n.mutableSourceEagerHydrationData.push(t,a)}this._internalRoot=n}function ou(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType&&(8!==e.nodeType||" react-mount-point-unstable "!==e.nodeValue))}function iu(e,t,n,r,a){var o=n._reactRootContainer;if(o){var i=o._internalRoot;if("function"==typeof a){var l=a;a=function(){var e=tu(i);l.call(e)}}eu(t,i,e,a)}else{if(o=n._reactRootContainer=function(e,t){if(t||(t=!(!(t=e?9===e.nodeType?e.documentElement:e.firstChild:null)||1!==t.nodeType||!t.hasAttribute("data-reactroot"))),!t)for(var n;n=e.lastChild;)e.removeChild(n);return new au(e,0,t?{hydrate:!0}:void 0)}(n,r),i=o._internalRoot,"function"==typeof a){var s=a;a=function(){var e=tu(i);s.call(e)}}ks((function(){eu(t,i,e,a)}))}return tu(i)}function lu(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!ou(t))throw Error(i(200));return Js(e,t,null,n)}Wl=function(e,t,n){var r=t.lanes;if(null!==e)if(e.memoizedProps!==t.pendingProps||ma.current)Fi=!0;else{if(0==(n&r)){switch(Fi=!1,t.tag){case 3:Vi(t),Wo();break;case 5:Mo(t);break;case 1:ba(t.type)&&ka(t);break;case 4:Io(t,t.stateNode.containerInfo);break;case 10:r=t.memoizedProps.value;var a=t.type._context;da(Xa,a._currentValue),a._currentValue=r;break;case 13:if(null!==t.memoizedState)return 0!=(n&t.child.childLanes)?Xi(e,t,n):(da(Bo,1&Bo.current),null!==(t=ol(e,t,n))?t.sibling:null);da(Bo,1&Bo.current);break;case 19:if(r=0!=(n&t.childLanes),0!=(64&e.flags)){if(r)return al(e,t,n);t.flags|=64}if(null!==(a=t.memoizedState)&&(a.rendering=null,a.tail=null,a.lastEffect=null),da(Bo,Bo.current),r)break;return null;case 23:case 24:return t.lanes=0,$i(e,t,n)}return ol(e,t,n)}Fi=0!=(16384&e.flags)}else Fi=!1;switch(t.lanes=0,t.tag){case 2:if(r=t.type,null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2),e=t.pendingProps,a=ha(t,fa.current),oo(t,n),a=li(null,t,r,e,a,n),t.flags|=1,"object"==typeof a&&null!==a&&"function"==typeof a.render&&void 0===a.$$typeof){if(t.tag=1,t.memoizedState=null,t.updateQueue=null,ba(r)){var o=!0;ka(t)}else o=!1;t.memoizedState=null!==a.state&&void 0!==a.state?a.state:null,so(t);var l=r.getDerivedStateFromProps;"function"==typeof l&&bo(t,r,l,e),a.updater=vo,t.stateNode=a,a._reactInternals=t,Eo(t,r,e,n),t=Zi(null,t,r,!0,o,n)}else t.tag=0,Bi(null,t,a,n),t=t.child;return t;case 16:a=t.elementType;e:{switch(null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2),e=t.pendingProps,a=(o=a._init)(a._payload),t.type=a,o=t.tag=function(e){if("function"==typeof e)return Hs(e)?1:0;if(null!=e){if((e=e.$$typeof)===L)return 11;if(e===N)return 14}return 2}(a),e=Qa(a,e),o){case 0:t=Gi(null,t,a,e,n);break e;case 1:t=Hi(null,t,a,e,n);break e;case 11:t=ji(null,t,a,e,n);break e;case 14:t=zi(null,t,a,Qa(a.type,e),r,n);break e}throw Error(i(306,a,""))}return t;case 0:return r=t.type,a=t.pendingProps,Gi(e,t,r,a=t.elementType===r?a:Qa(r,a),n);case 1:return r=t.type,a=t.pendingProps,Hi(e,t,r,a=t.elementType===r?a:Qa(r,a),n);case 3:if(Vi(t),r=t.updateQueue,null===e||null===r)throw Error(i(282));if(r=t.pendingProps,a=null!==(a=t.memoizedState)?a.element:null,uo(e,t),mo(t,r,null,n),(r=t.memoizedState.element)===a)Wo(),t=ol(e,t,n);else{if((o=(a=t.stateNode).hydrate)&&(Uo=Wr(t.stateNode.containerInfo.firstChild),zo=t,o=$o=!0),o){if(null!=(e=a.mutableSourceEagerHydrationData))for(a=0;a<e.length;a+=2)(o=e[a])._workInProgressVersionPrimary=e[a+1],Yo.push(o);for(n=Ao(t,null,r,n),t.child=n;n;)n.flags=-3&n.flags|1024,n=n.sibling}else Bi(e,t,r,n),Wo();t=t.child}return t;case 5:return Mo(t),null===e&&Ho(t),r=t.type,a=t.pendingProps,o=null!==e?e.memoizedProps:null,l=a.children,Gr(r,a)?l=null:null!==o&&Gr(r,o)&&(t.flags|=16),qi(e,t),Bi(e,t,l,n),t.child;case 6:return null===e&&Ho(t),null;case 13:return Xi(e,t,n);case 4:return Io(t,t.stateNode.containerInfo),r=t.pendingProps,null===e?t.child=To(t,null,r,n):Bi(e,t,r,n),t.child;case 11:return r=t.type,a=t.pendingProps,ji(e,t,r,a=t.elementType===r?a:Qa(r,a),n);case 7:return Bi(e,t,t.pendingProps,n),t.child;case 8:case 12:return Bi(e,t,t.pendingProps.children,n),t.child;case 10:e:{r=t.type._context,a=t.pendingProps,l=t.memoizedProps,o=a.value;var s=t.type._context;if(da(Xa,s._currentValue),s._currentValue=o,null!==l)if(s=l.value,0===(o=cr(s,o)?0:0|("function"==typeof r._calculateChangedBits?r._calculateChangedBits(s,o):1073741823))){if(l.children===a.children&&!ma.current){t=ol(e,t,n);break e}}else for(null!==(s=t.child)&&(s.return=t);null!==s;){var u=s.dependencies;if(null!==u){l=s.child;for(var c=u.firstContext;null!==c;){if(c.context===r&&0!=(c.observedBits&o)){1===s.tag&&((c=co(-1,n&-n)).tag=2,po(s,c)),s.lanes|=n,null!==(c=s.alternate)&&(c.lanes|=n),ao(s.return,n),u.lanes|=n;break}c=c.next}}else l=10===s.tag&&s.type===t.type?null:s.child;if(null!==l)l.return=s;else for(l=s;null!==l;){if(l===t){l=null;break}if(null!==(s=l.sibling)){s.return=l.return,l=s;break}l=l.return}s=l}Bi(e,t,a.children,n),t=t.child}return t;case 9:return a=t.type,r=(o=t.pendingProps).children,oo(t,n),r=r(a=io(a,o.unstable_observedBits)),t.flags|=1,Bi(e,t,r,n),t.child;case 14:return o=Qa(a=t.type,t.pendingProps),zi(e,t,a,o=Qa(a.type,o),r,n);case 15:return Ui(e,t,t.type,t.pendingProps,r,n);case 17:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:Qa(r,a),null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2),t.tag=1,ba(r)?(e=!0,ka(t)):e=!1,oo(t,n),wo(t,r,a),Eo(t,r,a,n),Zi(null,t,r,!0,e,n);case 19:return al(e,t,n);case 23:case 24:return $i(e,t,n)}throw Error(i(156,t.tag))},au.prototype.render=function(e){eu(e,this._internalRoot,null,null)},au.prototype.unmount=function(){var e=this._internalRoot,t=e.containerInfo;eu(null,e,null,(function(){t[ea]=null}))},tt=function(e){13===e.tag&&(ms(e,4,ps()),ru(e,4))},nt=function(e){13===e.tag&&(ms(e,67108864,ps()),ru(e,67108864))},rt=function(e){if(13===e.tag){var t=ps(),n=fs(e);ms(e,n,t),ru(e,n)}},at=function(e,t){return t()},Te=function(e,t,n){switch(t){case"input":if(ne(e,n),t=n.name,"radio"===n.type&&null!=t){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var a=oa(r);if(!a)throw Error(i(90));Q(r),ne(r,a)}}}break;case"textarea":ue(e,n);break;case"select":null!=(t=n.value)&&ie(e,!!n.multiple,t,!1)}},Oe=ws,Ie=function(e,t,n,r,a){var o=Nl;Nl|=4;try{return Za(98,e.bind(null,t,n,r,a))}finally{0===(Nl=o)&&(Vl(),Wa())}},De=function(){0==(49&Nl)&&(function(){if(null!==as){var e=as;as=null,e.forEach((function(e){e.expiredLanes|=24&e.pendingLanes,hs(e,qa())}))}Wa()}(),Ds())},Me=function(e,t){var n=Nl;Nl|=2;try{return e(t)}finally{0===(Nl=n)&&(Vl(),Wa())}};var su={Events:[ra,aa,oa,Re,Ne,Ds,{current:!1}]},uu={findFiberByHostInstance:na,bundleType:0,version:"17.0.2",rendererPackageName:"react-dom"},cu={bundleType:uu.bundleType,version:uu.version,rendererPackageName:uu.rendererPackageName,rendererConfig:uu.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:k.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return null===(e=Je(e))?null:e.stateNode},findFiberByHostInstance:uu.findFiberByHostInstance||function(){return null},findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null};if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__){var du=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!du.isDisabled&&du.supportsFiber)try{Sa=du.inject(cu),xa=du}catch(he){}}t.hydrate=function(e,t,n){if(!ou(t))throw Error(i(200));return iu(null,e,t,!0,n)}},3935:(e,t,n)=>{"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}(),e.exports=n(4448)},9590:e=>{var t="undefined"!=typeof Element,n="function"==typeof Map,r="function"==typeof Set,a="function"==typeof ArrayBuffer&&!!ArrayBuffer.isView;function o(e,i){if(e===i)return!0;if(e&&i&&"object"==typeof e&&"object"==typeof i){if(e.constructor!==i.constructor)return!1;var l,s,u,c;if(Array.isArray(e)){if((l=e.length)!=i.length)return!1;for(s=l;0!=s--;)if(!o(e[s],i[s]))return!1;return!0}if(n&&e instanceof Map&&i instanceof Map){if(e.size!==i.size)return!1;for(c=e.entries();!(s=c.next()).done;)if(!i.has(s.value[0]))return!1;for(c=e.entries();!(s=c.next()).done;)if(!o(s.value[1],i.get(s.value[0])))return!1;return!0}if(r&&e instanceof Set&&i instanceof Set){if(e.size!==i.size)return!1;for(c=e.entries();!(s=c.next()).done;)if(!i.has(s.value[0]))return!1;return!0}if(a&&ArrayBuffer.isView(e)&&ArrayBuffer.isView(i)){if((l=e.length)!=i.length)return!1;for(s=l;0!=s--;)if(e[s]!==i[s])return!1;return!0}if(e.constructor===RegExp)return e.source===i.source&&e.flags===i.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===i.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===i.toString();if((l=(u=Object.keys(e)).length)!==Object.keys(i).length)return!1;for(s=l;0!=s--;)if(!Object.prototype.hasOwnProperty.call(i,u[s]))return!1;if(t&&e instanceof Element)return!1;for(s=l;0!=s--;)if(("_owner"!==u[s]&&"__v"!==u[s]&&"__o"!==u[s]||!e.$$typeof)&&!o(e[u[s]],i[u[s]]))return!1;return!0}return e!=e&&i!=i}e.exports=function(e,t){try{return o(e,t)}catch(n){if((n.message||"").match(/stack|recursion/i))return console.warn("react-fast-compare cannot handle circular refs"),!1;throw n}}},405:(e,t,n)=>{"use strict";n.d(t,{B6:()=>H,ql:()=>J});var r=n(7294),a=n(5697),o=n.n(a),i=n(9590),l=n.n(i),s=n(1143),u=n.n(s),c=n(6774),d=n.n(c);function p(){return p=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},p.apply(this,arguments)}function f(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,m(e,t)}function m(e,t){return m=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},m(e,t)}function g(e,t){if(null==e)return{};var n,r,a={},o=Object.keys(e);for(r=0;r<o.length;r++)t.indexOf(n=o[r])>=0||(a[n]=e[n]);return a}var h={BASE:"base",BODY:"body",HEAD:"head",HTML:"html",LINK:"link",META:"meta",NOSCRIPT:"noscript",SCRIPT:"script",STYLE:"style",TITLE:"title",FRAGMENT:"Symbol(react.fragment)"},b={rel:["amphtml","canonical","alternate"]},v={type:["application/ld+json"]},y={charset:"",name:["robots","description"],property:["og:type","og:title","og:url","og:image","og:image:alt","og:description","twitter:url","twitter:title","twitter:description","twitter:image","twitter:image:alt","twitter:card","twitter:site"]},w=Object.keys(h).map((function(e){return h[e]})),k={accesskey:"accessKey",charset:"charSet",class:"className",contenteditable:"contentEditable",contextmenu:"contextMenu","http-equiv":"httpEquiv",itemprop:"itemProp",tabindex:"tabIndex"},E=Object.keys(k).reduce((function(e,t){return e[k[t]]=t,e}),{}),S=function(e,t){for(var n=e.length-1;n>=0;n-=1){var r=e[n];if(Object.prototype.hasOwnProperty.call(r,t))return r[t]}return null},x=function(e){var t=S(e,h.TITLE),n=S(e,"titleTemplate");if(Array.isArray(t)&&(t=t.join("")),n&&t)return n.replace(/%s/g,(function(){return t}));var r=S(e,"defaultTitle");return t||r||void 0},C=function(e){return S(e,"onChangeClientState")||function(){}},_=function(e,t){return t.filter((function(t){return void 0!==t[e]})).map((function(t){return t[e]})).reduce((function(e,t){return p({},e,t)}),{})},T=function(e,t){return t.filter((function(e){return void 0!==e[h.BASE]})).map((function(e){return e[h.BASE]})).reverse().reduce((function(t,n){if(!t.length)for(var r=Object.keys(n),a=0;a<r.length;a+=1){var o=r[a].toLowerCase();if(-1!==e.indexOf(o)&&n[o])return t.concat(n)}return t}),[])},A=function(e,t,n){var r={};return n.filter((function(t){return!!Array.isArray(t[e])||(void 0!==t[e]&&console&&"function"==typeof console.warn&&console.warn("Helmet: "+e+' should be of type "Array". Instead found type "'+typeof t[e]+'"'),!1)})).map((function(t){return t[e]})).reverse().reduce((function(e,n){var a={};n.filter((function(e){for(var n,o=Object.keys(e),i=0;i<o.length;i+=1){var l=o[i],s=l.toLowerCase();-1===t.indexOf(s)||"rel"===n&&"canonical"===e[n].toLowerCase()||"rel"===s&&"stylesheet"===e[s].toLowerCase()||(n=s),-1===t.indexOf(l)||"innerHTML"!==l&&"cssText"!==l&&"itemprop"!==l||(n=l)}if(!n||!e[n])return!1;var u=e[n].toLowerCase();return r[n]||(r[n]={}),a[n]||(a[n]={}),!r[n][u]&&(a[n][u]=!0,!0)})).reverse().forEach((function(t){return e.push(t)}));for(var o=Object.keys(a),i=0;i<o.length;i+=1){var l=o[i],s=p({},r[l],a[l]);r[l]=s}return e}),[]).reverse()},L=function(e,t){if(Array.isArray(e)&&e.length)for(var n=0;n<e.length;n+=1)if(e[n][t])return!0;return!1},P=function(e){return Array.isArray(e)?e.join(""):e},R=function(e,t){return Array.isArray(e)?e.reduce((function(e,n){return function(e,t){for(var n=Object.keys(e),r=0;r<n.length;r+=1)if(t[n[r]]&&t[n[r]].includes(e[n[r]]))return!0;return!1}(n,t)?e.priority.push(n):e.default.push(n),e}),{priority:[],default:[]}):{default:e}},N=function(e,t){var n;return p({},e,((n={})[t]=void 0,n))},O=[h.NOSCRIPT,h.SCRIPT,h.STYLE],I=function(e,t){return void 0===t&&(t=!0),!1===t?String(e):String(e).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")},D=function(e){return Object.keys(e).reduce((function(t,n){var r=void 0!==e[n]?n+'="'+e[n]+'"':""+n;return t?t+" "+r:r}),"")},M=function(e,t){return void 0===t&&(t={}),Object.keys(e).reduce((function(t,n){return t[k[n]||n]=e[n],t}),t)},F=function(e,t){return t.map((function(t,n){var a,o=((a={key:n})["data-rh"]=!0,a);return Object.keys(t).forEach((function(e){var n=k[e]||e;"innerHTML"===n||"cssText"===n?o.dangerouslySetInnerHTML={__html:t.innerHTML||t.cssText}:o[n]=t[e]})),r.createElement(e,o)}))},B=function(e,t,n){switch(e){case h.TITLE:return{toComponent:function(){return n=t.titleAttributes,(a={key:e=t.title})["data-rh"]=!0,o=M(n,a),[r.createElement(h.TITLE,o,e)];var e,n,a,o},toString:function(){return function(e,t,n,r){var a=D(n),o=P(t);return a?"<"+e+' data-rh="true" '+a+">"+I(o,r)+"</"+e+">":"<"+e+' data-rh="true">'+I(o,r)+"</"+e+">"}(e,t.title,t.titleAttributes,n)}};case"bodyAttributes":case"htmlAttributes":return{toComponent:function(){return M(t)},toString:function(){return D(t)}};default:return{toComponent:function(){return F(e,t)},toString:function(){return function(e,t,n){return t.reduce((function(t,r){var a=Object.keys(r).filter((function(e){return!("innerHTML"===e||"cssText"===e)})).reduce((function(e,t){var a=void 0===r[t]?t:t+'="'+I(r[t],n)+'"';return e?e+" "+a:a}),""),o=r.innerHTML||r.cssText||"",i=-1===O.indexOf(e);return t+"<"+e+' data-rh="true" '+a+(i?"/>":">"+o+"</"+e+">")}),"")}(e,t,n)}}}},j=function(e){var t=e.baseTag,n=e.bodyAttributes,r=e.encode,a=e.htmlAttributes,o=e.noscriptTags,i=e.styleTags,l=e.title,s=void 0===l?"":l,u=e.titleAttributes,c=e.linkTags,d=e.metaTags,p=e.scriptTags,f={toComponent:function(){},toString:function(){return""}};if(e.prioritizeSeoTags){var m=function(e){var t=e.linkTags,n=e.scriptTags,r=e.encode,a=R(e.metaTags,y),o=R(t,b),i=R(n,v);return{priorityMethods:{toComponent:function(){return[].concat(F(h.META,a.priority),F(h.LINK,o.priority),F(h.SCRIPT,i.priority))},toString:function(){return B(h.META,a.priority,r)+" "+B(h.LINK,o.priority,r)+" "+B(h.SCRIPT,i.priority,r)}},metaTags:a.default,linkTags:o.default,scriptTags:i.default}}(e);f=m.priorityMethods,c=m.linkTags,d=m.metaTags,p=m.scriptTags}return{priority:f,base:B(h.BASE,t,r),bodyAttributes:B("bodyAttributes",n,r),htmlAttributes:B("htmlAttributes",a,r),link:B(h.LINK,c,r),meta:B(h.META,d,r),noscript:B(h.NOSCRIPT,o,r),script:B(h.SCRIPT,p,r),style:B(h.STYLE,i,r),title:B(h.TITLE,{title:s,titleAttributes:u},r)}},z=[],U=function(e,t){var n=this;void 0===t&&(t="undefined"!=typeof document),this.instances=[],this.value={setHelmet:function(e){n.context.helmet=e},helmetInstances:{get:function(){return n.canUseDOM?z:n.instances},add:function(e){(n.canUseDOM?z:n.instances).push(e)},remove:function(e){var t=(n.canUseDOM?z:n.instances).indexOf(e);(n.canUseDOM?z:n.instances).splice(t,1)}}},this.context=e,this.canUseDOM=t,t||(e.helmet=j({baseTag:[],bodyAttributes:{},encodeSpecialCharacters:!0,htmlAttributes:{},linkTags:[],metaTags:[],noscriptTags:[],scriptTags:[],styleTags:[],title:"",titleAttributes:{}}))},$=r.createContext({}),q=o().shape({setHelmet:o().func,helmetInstances:o().shape({get:o().func,add:o().func,remove:o().func})}),G="undefined"!=typeof document,H=function(e){function t(n){var r;return(r=e.call(this,n)||this).helmetData=new U(r.props.context,t.canUseDOM),r}return f(t,e),t.prototype.render=function(){return r.createElement($.Provider,{value:this.helmetData.value},this.props.children)},t}(r.Component);H.canUseDOM=G,H.propTypes={context:o().shape({helmet:o().shape()}),children:o().node.isRequired},H.defaultProps={context:{}},H.displayName="HelmetProvider";var Z=function(e,t){var n,r=document.head||document.querySelector(h.HEAD),a=r.querySelectorAll(e+"[data-rh]"),o=[].slice.call(a),i=[];return t&&t.length&&t.forEach((function(t){var r=document.createElement(e);for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&("innerHTML"===a?r.innerHTML=t.innerHTML:"cssText"===a?r.styleSheet?r.styleSheet.cssText=t.cssText:r.appendChild(document.createTextNode(t.cssText)):r.setAttribute(a,void 0===t[a]?"":t[a]));r.setAttribute("data-rh","true"),o.some((function(e,t){return n=t,r.isEqualNode(e)}))?o.splice(n,1):i.push(r)})),o.forEach((function(e){return e.parentNode.removeChild(e)})),i.forEach((function(e){return r.appendChild(e)})),{oldTags:o,newTags:i}},V=function(e,t){var n=document.getElementsByTagName(e)[0];if(n){for(var r=n.getAttribute("data-rh"),a=r?r.split(","):[],o=[].concat(a),i=Object.keys(t),l=0;l<i.length;l+=1){var s=i[l],u=t[s]||"";n.getAttribute(s)!==u&&n.setAttribute(s,u),-1===a.indexOf(s)&&a.push(s);var c=o.indexOf(s);-1!==c&&o.splice(c,1)}for(var d=o.length-1;d>=0;d-=1)n.removeAttribute(o[d]);a.length===o.length?n.removeAttribute("data-rh"):n.getAttribute("data-rh")!==i.join(",")&&n.setAttribute("data-rh",i.join(","))}},W=function(e,t){var n=e.baseTag,r=e.htmlAttributes,a=e.linkTags,o=e.metaTags,i=e.noscriptTags,l=e.onChangeClientState,s=e.scriptTags,u=e.styleTags,c=e.title,d=e.titleAttributes;V(h.BODY,e.bodyAttributes),V(h.HTML,r),function(e,t){void 0!==e&&document.title!==e&&(document.title=P(e)),V(h.TITLE,t)}(c,d);var p={baseTag:Z(h.BASE,n),linkTags:Z(h.LINK,a),metaTags:Z(h.META,o),noscriptTags:Z(h.NOSCRIPT,i),scriptTags:Z(h.SCRIPT,s),styleTags:Z(h.STYLE,u)},f={},m={};Object.keys(p).forEach((function(e){var t=p[e],n=t.newTags,r=t.oldTags;n.length&&(f[e]=n),r.length&&(m[e]=p[e].oldTags)})),t&&t(),l(e,f,m)},Y=null,K=function(e){function t(){for(var t,n=arguments.length,r=new Array(n),a=0;a<n;a++)r[a]=arguments[a];return(t=e.call.apply(e,[this].concat(r))||this).rendered=!1,t}f(t,e);var n=t.prototype;return n.shouldComponentUpdate=function(e){return!d()(e,this.props)},n.componentDidUpdate=function(){this.emitChange()},n.componentWillUnmount=function(){this.props.context.helmetInstances.remove(this),this.emitChange()},n.emitChange=function(){var e,t,n=this.props.context,r=n.setHelmet,a=null,o=(e=n.helmetInstances.get().map((function(e){var t=p({},e.props);return delete t.context,t})),{baseTag:T(["href"],e),bodyAttributes:_("bodyAttributes",e),defer:S(e,"defer"),encode:S(e,"encodeSpecialCharacters"),htmlAttributes:_("htmlAttributes",e),linkTags:A(h.LINK,["rel","href"],e),metaTags:A(h.META,["name","charset","http-equiv","property","itemprop"],e),noscriptTags:A(h.NOSCRIPT,["innerHTML"],e),onChangeClientState:C(e),scriptTags:A(h.SCRIPT,["src","innerHTML"],e),styleTags:A(h.STYLE,["cssText"],e),title:x(e),titleAttributes:_("titleAttributes",e),prioritizeSeoTags:L(e,"prioritizeSeoTags")});H.canUseDOM?(t=o,Y&&cancelAnimationFrame(Y),t.defer?Y=requestAnimationFrame((function(){W(t,(function(){Y=null}))})):(W(t),Y=null)):j&&(a=j(o)),r(a)},n.init=function(){this.rendered||(this.rendered=!0,this.props.context.helmetInstances.add(this),this.emitChange())},n.render=function(){return this.init(),null},t}(r.Component);K.propTypes={context:q.isRequired},K.displayName="HelmetDispatcher";var Q=["children"],X=["children"],J=function(e){function t(){return e.apply(this,arguments)||this}f(t,e);var n=t.prototype;return n.shouldComponentUpdate=function(e){return!l()(N(this.props,"helmetData"),N(e,"helmetData"))},n.mapNestedChildrenToProps=function(e,t){if(!t)return null;switch(e.type){case h.SCRIPT:case h.NOSCRIPT:return{innerHTML:t};case h.STYLE:return{cssText:t};default:throw new Error("<"+e.type+" /> elements are self-closing and can not contain children. Refer to our API for more information.")}},n.flattenArrayTypeChildren=function(e){var t,n=e.child,r=e.arrayTypeChildren;return p({},r,((t={})[n.type]=[].concat(r[n.type]||[],[p({},e.newChildProps,this.mapNestedChildrenToProps(n,e.nestedChildren))]),t))},n.mapObjectTypeChildren=function(e){var t,n,r=e.child,a=e.newProps,o=e.newChildProps,i=e.nestedChildren;switch(r.type){case h.TITLE:return p({},a,((t={})[r.type]=i,t.titleAttributes=p({},o),t));case h.BODY:return p({},a,{bodyAttributes:p({},o)});case h.HTML:return p({},a,{htmlAttributes:p({},o)});default:return p({},a,((n={})[r.type]=p({},o),n))}},n.mapArrayTypeChildrenToProps=function(e,t){var n=p({},t);return Object.keys(e).forEach((function(t){var r;n=p({},n,((r={})[t]=e[t],r))})),n},n.warnOnInvalidChildren=function(e,t){return u()(w.some((function(t){return e.type===t})),"function"==typeof e.type?"You may be attempting to nest <Helmet> components within each other, which is not allowed. Refer to our API for more information.":"Only elements types "+w.join(", ")+" are allowed. Helmet does not support rendering <"+e.type+"> elements. Refer to our API for more information."),u()(!t||"string"==typeof t||Array.isArray(t)&&!t.some((function(e){return"string"!=typeof e})),"Helmet expects a string as a child of <"+e.type+">. Did you forget to wrap your children in braces? ( <"+e.type+">{``}</"+e.type+"> ) Refer to our API for more information."),!0},n.mapChildrenToProps=function(e,t){var n=this,a={};return r.Children.forEach(e,(function(e){if(e&&e.props){var r=e.props,o=r.children,i=g(r,Q),l=Object.keys(i).reduce((function(e,t){return e[E[t]||t]=i[t],e}),{}),s=e.type;switch("symbol"==typeof s?s=s.toString():n.warnOnInvalidChildren(e,o),s){case h.FRAGMENT:t=n.mapChildrenToProps(o,t);break;case h.LINK:case h.META:case h.NOSCRIPT:case h.SCRIPT:case h.STYLE:a=n.flattenArrayTypeChildren({child:e,arrayTypeChildren:a,newChildProps:l,nestedChildren:o});break;default:t=n.mapObjectTypeChildren({child:e,newProps:t,newChildProps:l,nestedChildren:o})}}})),this.mapArrayTypeChildrenToProps(a,t)},n.render=function(){var e=this.props,t=e.children,n=g(e,X),a=p({},n),o=n.helmetData;return t&&(a=this.mapChildrenToProps(t,a)),!o||o instanceof U||(o=new U(o.context,o.instances)),o?r.createElement(K,p({},a,{context:o.value,helmetData:void 0})):r.createElement($.Consumer,null,(function(e){return r.createElement(K,p({},a,{context:e}))}))},t}(r.Component);J.propTypes={base:o().object,bodyAttributes:o().object,children:o().oneOfType([o().arrayOf(o().node),o().node]),defaultTitle:o().string,defer:o().bool,encodeSpecialCharacters:o().bool,htmlAttributes:o().object,link:o().arrayOf(o().object),meta:o().arrayOf(o().object),noscript:o().arrayOf(o().object),onChangeClientState:o().func,script:o().arrayOf(o().object),style:o().arrayOf(o().object),title:o().string,titleAttributes:o().object,titleTemplate:o().string,prioritizeSeoTags:o().bool,helmetData:o().object},J.defaultProps={defer:!0,encodeSpecialCharacters:!0,prioritizeSeoTags:!1},J.displayName="Helmet"},9921:(e,t)=>{"use strict";var n="function"==typeof Symbol&&Symbol.for,r=n?Symbol.for("react.element"):60103,a=n?Symbol.for("react.portal"):60106,o=n?Symbol.for("react.fragment"):60107,i=n?Symbol.for("react.strict_mode"):60108,l=n?Symbol.for("react.profiler"):60114,s=n?Symbol.for("react.provider"):60109,u=n?Symbol.for("react.context"):60110,c=n?Symbol.for("react.async_mode"):60111,d=n?Symbol.for("react.concurrent_mode"):60111,p=n?Symbol.for("react.forward_ref"):60112,f=n?Symbol.for("react.suspense"):60113,m=n?Symbol.for("react.suspense_list"):60120,g=n?Symbol.for("react.memo"):60115,h=n?Symbol.for("react.lazy"):60116,b=n?Symbol.for("react.block"):60121,v=n?Symbol.for("react.fundamental"):60117,y=n?Symbol.for("react.responder"):60118,w=n?Symbol.for("react.scope"):60119;function k(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case r:switch(e=e.type){case c:case d:case o:case l:case i:case f:return e;default:switch(e=e&&e.$$typeof){case u:case p:case h:case g:case s:return e;default:return t}}case a:return t}}}function E(e){return k(e)===d}t.AsyncMode=c,t.ConcurrentMode=d,t.ContextConsumer=u,t.ContextProvider=s,t.Element=r,t.ForwardRef=p,t.Fragment=o,t.Lazy=h,t.Memo=g,t.Portal=a,t.Profiler=l,t.StrictMode=i,t.Suspense=f,t.isAsyncMode=function(e){return E(e)||k(e)===c},t.isConcurrentMode=E,t.isContextConsumer=function(e){return k(e)===u},t.isContextProvider=function(e){return k(e)===s},t.isElement=function(e){return"object"==typeof e&&null!==e&&e.$$typeof===r},t.isForwardRef=function(e){return k(e)===p},t.isFragment=function(e){return k(e)===o},t.isLazy=function(e){return k(e)===h},t.isMemo=function(e){return k(e)===g},t.isPortal=function(e){return k(e)===a},t.isProfiler=function(e){return k(e)===l},t.isStrictMode=function(e){return k(e)===i},t.isSuspense=function(e){return k(e)===f},t.isValidElementType=function(e){return"string"==typeof e||"function"==typeof e||e===o||e===d||e===l||e===i||e===f||e===m||"object"==typeof e&&null!==e&&(e.$$typeof===h||e.$$typeof===g||e.$$typeof===s||e.$$typeof===u||e.$$typeof===p||e.$$typeof===v||e.$$typeof===y||e.$$typeof===w||e.$$typeof===b)},t.typeOf=k},9864:(e,t,n)=>{"use strict";e.exports=n(9921)},8356:(e,t,n)=>{"use strict";function r(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}function a(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(){return i=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},i.apply(this,arguments)}var l=n(7294),s=n(5697),u=[],c=[];function d(e){var t=e(),n={loading:!0,loaded:null,error:null};return n.promise=t.then((function(e){return n.loading=!1,n.loaded=e,e})).catch((function(e){throw n.loading=!1,n.error=e,e})),n}function p(e){var t={loading:!1,loaded:{},error:null},n=[];try{Object.keys(e).forEach((function(r){var a=d(e[r]);a.loading?t.loading=!0:(t.loaded[r]=a.loaded,t.error=a.error),n.push(a.promise),a.promise.then((function(e){t.loaded[r]=e})).catch((function(e){t.error=e}))}))}catch(r){t.error=r}return t.promise=Promise.all(n).then((function(e){return t.loading=!1,e})).catch((function(e){throw t.loading=!1,e})),t}function f(e,t){return l.createElement((n=e)&&n.__esModule?n.default:n,t);var n}function m(e,t){var d,p;if(!t.loading)throw new Error("react-loadable requires a `loading` component");var m=i({loader:null,loading:null,delay:200,timeout:null,render:f,webpack:null,modules:null},t),g=null;function h(){return g||(g=e(m.loader)),g.promise}return u.push(h),"function"==typeof m.webpack&&c.push((function(){if((0,m.webpack)().every((function(e){return void 0!==e&&void 0!==n.m[e]})))return h()})),p=d=function(t){function n(n){var r;return o(a(a(r=t.call(this,n)||this)),"retry",(function(){r.setState({error:null,loading:!0,timedOut:!1}),g=e(m.loader),r._loadModule()})),h(),r.state={error:g.error,pastDelay:!1,timedOut:!1,loading:g.loading,loaded:g.loaded},r}r(n,t),n.preload=function(){return h()};var i=n.prototype;return i.UNSAFE_componentWillMount=function(){this._loadModule()},i.componentDidMount=function(){this._mounted=!0},i._loadModule=function(){var e=this;if(this.context.loadable&&Array.isArray(m.modules)&&m.modules.forEach((function(t){e.context.loadable.report(t)})),g.loading){var t=function(t){e._mounted&&e.setState(t)};"number"==typeof m.delay&&(0===m.delay?this.setState({pastDelay:!0}):this._delay=setTimeout((function(){t({pastDelay:!0})}),m.delay)),"number"==typeof m.timeout&&(this._timeout=setTimeout((function(){t({timedOut:!0})}),m.timeout));var n=function(){t({error:g.error,loaded:g.loaded,loading:g.loading}),e._clearTimeouts()};g.promise.then((function(){return n(),null})).catch((function(e){return n(),null}))}},i.componentWillUnmount=function(){this._mounted=!1,this._clearTimeouts()},i._clearTimeouts=function(){clearTimeout(this._delay),clearTimeout(this._timeout)},i.render=function(){return this.state.loading||this.state.error?l.createElement(m.loading,{isLoading:this.state.loading,pastDelay:this.state.pastDelay,timedOut:this.state.timedOut,error:this.state.error,retry:this.retry}):this.state.loaded?m.render(this.state.loaded,this.props):null},n}(l.Component),o(d,"contextTypes",{loadable:s.shape({report:s.func.isRequired})}),p}function g(e){return m(d,e)}g.Map=function(e){if("function"!=typeof e.render)throw new Error("LoadableMap requires a `render(loaded, props)` function");return m(p,e)};var h=function(e){function t(){return e.apply(this,arguments)||this}r(t,e);var n=t.prototype;return n.getChildContext=function(){return{loadable:{report:this.props.report}}},n.render=function(){return l.Children.only(this.props.children)},t}(l.Component);function b(e){for(var t=[];e.length;){var n=e.pop();t.push(n())}return Promise.all(t).then((function(){if(e.length)return b(e)}))}o(h,"propTypes",{report:s.func.isRequired}),o(h,"childContextTypes",{loadable:s.shape({report:s.func.isRequired}).isRequired}),g.Capture=h,g.preloadAll=function(){return new Promise((function(e,t){b(u).then(e,t)}))},g.preloadReady=function(){return new Promise((function(e,t){b(c).then(e,e)}))},e.exports=g},8790:(e,t,n)=>{"use strict";n.d(t,{H:()=>l,f:()=>i});var r=n(6775),a=n(7462),o=n(7294);function i(e,t,n){return void 0===n&&(n=[]),e.some((function(e){var a=e.path?(0,r.LX)(t,e):n.length?n[n.length-1].match:r.F0.computeRootMatch(t);return a&&(n.push({route:e,match:a}),e.routes&&i(e.routes,t,n)),a})),n}function l(e,t,n){return void 0===t&&(t={}),void 0===n&&(n={}),e?o.createElement(r.rs,n,e.map((function(e,n){return o.createElement(r.AW,{key:e.key||n,path:e.path,exact:e.exact,strict:e.strict,render:function(n){return e.render?e.render((0,a.Z)({},n,{},t,{route:e})):o.createElement(e.component,(0,a.Z)({},n,t,{route:e}))}})}))):null}},3727:(e,t,n)=>{"use strict";n.d(t,{OL:()=>y,VK:()=>c,rU:()=>h});var r=n(6775),a=n(5068),o=n(7294),i=n(9318),l=n(7462),s=n(3366),u=n(2177),c=function(e){function t(){for(var t,n=arguments.length,r=new Array(n),a=0;a<n;a++)r[a]=arguments[a];return(t=e.call.apply(e,[this].concat(r))||this).history=(0,i.lX)(t.props),t}return(0,a.Z)(t,e),t.prototype.render=function(){return o.createElement(r.F0,{history:this.history,children:this.props.children})},t}(o.Component);o.Component;var d=function(e,t){return"function"==typeof e?e(t):e},p=function(e,t){return"string"==typeof e?(0,i.ob)(e,null,null,t):e},f=function(e){return e},m=o.forwardRef;void 0===m&&(m=f);var g=m((function(e,t){var n=e.innerRef,r=e.navigate,a=e.onClick,i=(0,s.Z)(e,["innerRef","navigate","onClick"]),u=i.target,c=(0,l.Z)({},i,{onClick:function(e){try{a&&a(e)}catch(t){throw e.preventDefault(),t}e.defaultPrevented||0!==e.button||u&&"_self"!==u||function(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}(e)||(e.preventDefault(),r())}});return c.ref=f!==m&&t||n,o.createElement("a",c)}));var h=m((function(e,t){var n=e.component,a=void 0===n?g:n,c=e.replace,h=e.to,b=e.innerRef,v=(0,s.Z)(e,["component","replace","to","innerRef"]);return o.createElement(r.s6.Consumer,null,(function(e){e||(0,u.Z)(!1);var n=e.history,r=p(d(h,e.location),e.location),s=r?n.createHref(r):"",g=(0,l.Z)({},v,{href:s,navigate:function(){var t=d(h,e.location),r=(0,i.Ep)(e.location)===(0,i.Ep)(p(t));(c||r?n.replace:n.push)(t)}});return f!==m?g.ref=t||b:g.innerRef=b,o.createElement(a,g)}))})),b=function(e){return e},v=o.forwardRef;void 0===v&&(v=b);var y=v((function(e,t){var n=e["aria-current"],a=void 0===n?"page":n,i=e.activeClassName,c=void 0===i?"active":i,f=e.activeStyle,m=e.className,g=e.exact,y=e.isActive,w=e.location,k=e.sensitive,E=e.strict,S=e.style,x=e.to,C=e.innerRef,_=(0,s.Z)(e,["aria-current","activeClassName","activeStyle","className","exact","isActive","location","sensitive","strict","style","to","innerRef"]);return o.createElement(r.s6.Consumer,null,(function(e){e||(0,u.Z)(!1);var n=w||e.location,i=p(d(x,n),n),s=i.pathname,T=s&&s.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1"),A=T?(0,r.LX)(n.pathname,{path:T,exact:g,sensitive:k,strict:E}):null,L=!!(y?y(A,n):A),P="function"==typeof m?m(L):m,R="function"==typeof S?S(L):S;L&&(P=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return t.filter((function(e){return e})).join(" ")}(P,c),R=(0,l.Z)({},R,f));var N=(0,l.Z)({"aria-current":L&&a||null,className:P,style:R,to:i},_);return b!==v?N.ref=t||C:N.innerRef=C,o.createElement(h,N)}))}))},6775:(e,t,n)=>{"use strict";n.d(t,{AW:()=>C,F0:()=>k,rs:()=>R,s6:()=>w,LX:()=>x,k6:()=>O,TH:()=>I});var r=n(5068),a=n(7294),o=n(9318),i=n(5697),l=n.n(i),s=1073741823,u="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0!==n.g?n.g:{};function c(e){var t=[];return{on:function(e){t.push(e)},off:function(e){t=t.filter((function(t){return t!==e}))},get:function(){return e},set:function(n,r){e=n,t.forEach((function(t){return t(e,r)}))}}}var d=a.createContext||function(e,t){var n,o,i="__create-react-context-"+function(){var e="__global_unique_id__";return u[e]=(u[e]||0)+1}()+"__",d=function(e){function n(){var t;return(t=e.apply(this,arguments)||this).emitter=c(t.props.value),t}(0,r.Z)(n,e);var a=n.prototype;return a.getChildContext=function(){var e;return(e={})[i]=this.emitter,e},a.componentWillReceiveProps=function(e){if(this.props.value!==e.value){var n,r=this.props.value,a=e.value;((o=r)===(i=a)?0!==o||1/o==1/i:o!=o&&i!=i)?n=0:(n="function"==typeof t?t(r,a):s,0!==(n|=0)&&this.emitter.set(e.value,n))}var o,i},a.render=function(){return this.props.children},n}(a.Component);d.childContextTypes=((n={})[i]=l().object.isRequired,n);var p=function(t){function n(){var e;return(e=t.apply(this,arguments)||this).state={value:e.getValue()},e.onUpdate=function(t,n){0!=((0|e.observedBits)&n)&&e.setState({value:e.getValue()})},e}(0,r.Z)(n,t);var a=n.prototype;return a.componentWillReceiveProps=function(e){var t=e.observedBits;this.observedBits=null==t?s:t},a.componentDidMount=function(){this.context[i]&&this.context[i].on(this.onUpdate);var e=this.props.observedBits;this.observedBits=null==e?s:e},a.componentWillUnmount=function(){this.context[i]&&this.context[i].off(this.onUpdate)},a.getValue=function(){return this.context[i]?this.context[i].get():e},a.render=function(){return(e=this.props.children,Array.isArray(e)?e[0]:e)(this.state.value);var e},n}(a.Component);return p.contextTypes=((o={})[i]=l().object,o),{Provider:d,Consumer:p}};const p=d;var f=n(2177),m=n(7462),g=n(9658),h=n.n(g),b=(n(9864),n(3366)),v=(n(8679),function(e){var t=p();return t.displayName=e,t}),y=v("Router-History"),w=v("Router"),k=function(e){function t(t){var n;return(n=e.call(this,t)||this).state={location:t.history.location},n._isMounted=!1,n._pendingLocation=null,t.staticContext||(n.unlisten=t.history.listen((function(e){n._pendingLocation=e}))),n}(0,r.Z)(t,e),t.computeRootMatch=function(e){return{path:"/",url:"/",params:{},isExact:"/"===e}};var n=t.prototype;return n.componentDidMount=function(){var e=this;this._isMounted=!0,this.unlisten&&this.unlisten(),this.props.staticContext||(this.unlisten=this.props.history.listen((function(t){e._isMounted&&e.setState({location:t})}))),this._pendingLocation&&this.setState({location:this._pendingLocation})},n.componentWillUnmount=function(){this.unlisten&&(this.unlisten(),this._isMounted=!1,this._pendingLocation=null)},n.render=function(){return a.createElement(w.Provider,{value:{history:this.props.history,location:this.state.location,match:t.computeRootMatch(this.state.location.pathname),staticContext:this.props.staticContext}},a.createElement(y.Provider,{children:this.props.children||null,value:this.props.history}))},t}(a.Component);a.Component;a.Component;var E={},S=0;function x(e,t){void 0===t&&(t={}),("string"==typeof t||Array.isArray(t))&&(t={path:t});var n=t,r=n.path,a=n.exact,o=void 0!==a&&a,i=n.strict,l=void 0!==i&&i,s=n.sensitive,u=void 0!==s&&s;return[].concat(r).reduce((function(t,n){if(!n&&""!==n)return null;if(t)return t;var r=function(e,t){var n=""+t.end+t.strict+t.sensitive,r=E[n]||(E[n]={});if(r[e])return r[e];var a=[],o={regexp:h()(e,a,t),keys:a};return S<1e4&&(r[e]=o,S++),o}(n,{end:o,strict:l,sensitive:u}),a=r.regexp,i=r.keys,s=a.exec(e);if(!s)return null;var c=s[0],d=s.slice(1),p=e===c;return o&&!p?null:{path:n,url:"/"===n&&""===c?"/":c,isExact:p,params:i.reduce((function(e,t,n){return e[t.name]=d[n],e}),{})}}),null)}var C=function(e){function t(){return e.apply(this,arguments)||this}return(0,r.Z)(t,e),t.prototype.render=function(){var e=this;return a.createElement(w.Consumer,null,(function(t){t||(0,f.Z)(!1);var n=e.props.location||t.location,r=e.props.computedMatch?e.props.computedMatch:e.props.path?x(n.pathname,e.props):t.match,o=(0,m.Z)({},t,{location:n,match:r}),i=e.props,l=i.children,s=i.component,u=i.render;return Array.isArray(l)&&function(e){return 0===a.Children.count(e)}(l)&&(l=null),a.createElement(w.Provider,{value:o},o.match?l?"function"==typeof l?l(o):l:s?a.createElement(s,o):u?u(o):null:"function"==typeof l?l(o):null)}))},t}(a.Component);function _(e){return"/"===e.charAt(0)?e:"/"+e}function T(e,t){if(!e)return t;var n=_(e);return 0!==t.pathname.indexOf(n)?t:(0,m.Z)({},t,{pathname:t.pathname.substr(n.length)})}function A(e){return"string"==typeof e?e:(0,o.Ep)(e)}function L(e){return function(){(0,f.Z)(!1)}}function P(){}a.Component;var R=function(e){function t(){return e.apply(this,arguments)||this}return(0,r.Z)(t,e),t.prototype.render=function(){var e=this;return a.createElement(w.Consumer,null,(function(t){t||(0,f.Z)(!1);var n,r,o=e.props.location||t.location;return a.Children.forEach(e.props.children,(function(e){if(null==r&&a.isValidElement(e)){n=e;var i=e.props.path||e.props.from;r=i?x(o.pathname,(0,m.Z)({},e.props,{path:i})):t.match}})),r?a.cloneElement(n,{location:o,computedMatch:r}):null}))},t}(a.Component);var N=a.useContext;function O(){return N(y)}function I(){return N(w).location}},9658:(e,t,n)=>{var r=n(5826);e.exports=f,e.exports.parse=o,e.exports.compile=function(e,t){return l(o(e,t),t)},e.exports.tokensToFunction=l,e.exports.tokensToRegExp=p;var a=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function o(e,t){for(var n,r=[],o=0,i=0,l="",c=t&&t.delimiter||"/";null!=(n=a.exec(e));){var d=n[0],p=n[1],f=n.index;if(l+=e.slice(i,f),i=f+d.length,p)l+=p[1];else{var m=e[i],g=n[2],h=n[3],b=n[4],v=n[5],y=n[6],w=n[7];l&&(r.push(l),l="");var k=null!=g&&null!=m&&m!==g,E="+"===y||"*"===y,S="?"===y||"*"===y,x=n[2]||c,C=b||v;r.push({name:h||o++,prefix:g||"",delimiter:x,optional:S,repeat:E,partial:k,asterisk:!!w,pattern:C?u(C):w?".*":"[^"+s(x)+"]+?"})}}return i<e.length&&(l+=e.substr(i)),l&&r.push(l),r}function i(e){return encodeURI(e).replace(/[\/?#]/g,(function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()}))}function l(e,t){for(var n=new Array(e.length),a=0;a<e.length;a++)"object"==typeof e[a]&&(n[a]=new RegExp("^(?:"+e[a].pattern+")$",d(t)));return function(t,a){for(var o="",l=t||{},s=(a||{}).pretty?i:encodeURIComponent,u=0;u<e.length;u++){var c=e[u];if("string"!=typeof c){var d,p=l[c.name];if(null==p){if(c.optional){c.partial&&(o+=c.prefix);continue}throw new TypeError('Expected "'+c.name+'" to be defined')}if(r(p)){if(!c.repeat)throw new TypeError('Expected "'+c.name+'" to not repeat, but received `'+JSON.stringify(p)+"`");if(0===p.length){if(c.optional)continue;throw new TypeError('Expected "'+c.name+'" to not be empty')}for(var f=0;f<p.length;f++){if(d=s(p[f]),!n[u].test(d))throw new TypeError('Expected all "'+c.name+'" to match "'+c.pattern+'", but received `'+JSON.stringify(d)+"`");o+=(0===f?c.prefix:c.delimiter)+d}}else{if(d=c.asterisk?encodeURI(p).replace(/[?#]/g,(function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()})):s(p),!n[u].test(d))throw new TypeError('Expected "'+c.name+'" to match "'+c.pattern+'", but received "'+d+'"');o+=c.prefix+d}}else o+=c}return o}}function s(e){return e.replace(/([.+*?=^!:${}()[\]|\/\\])/g,"\\$1")}function u(e){return e.replace(/([=!:$\/()])/g,"\\$1")}function c(e,t){return e.keys=t,e}function d(e){return e&&e.sensitive?"":"i"}function p(e,t,n){r(t)||(n=t||n,t=[]);for(var a=(n=n||{}).strict,o=!1!==n.end,i="",l=0;l<e.length;l++){var u=e[l];if("string"==typeof u)i+=s(u);else{var p=s(u.prefix),f="(?:"+u.pattern+")";t.push(u),u.repeat&&(f+="(?:"+p+f+")*"),i+=f=u.optional?u.partial?p+"("+f+")?":"(?:"+p+"("+f+"))?":p+"("+f+")"}}var m=s(n.delimiter||"/"),g=i.slice(-m.length)===m;return a||(i=(g?i.slice(0,-m.length):i)+"(?:"+m+"(?=$))?"),i+=o?"$":a&&g?"":"(?="+m+"|$)",c(new RegExp("^"+i,d(n)),t)}function f(e,t,n){return r(t)||(n=t||n,t=[]),n=n||{},e instanceof RegExp?function(e,t){var n=e.source.match(/\((?!\?)/g);if(n)for(var r=0;r<n.length;r++)t.push({name:r,prefix:null,delimiter:null,optional:!1,repeat:!1,partial:!1,asterisk:!1,pattern:null});return c(e,t)}(e,t):r(e)?function(e,t,n){for(var r=[],a=0;a<e.length;a++)r.push(f(e[a],t,n).source);return c(new RegExp("(?:"+r.join("|")+")",d(n)),t)}(e,t,n):function(e,t,n){return p(o(e,n),t,n)}(e,t,n)}},2408:(e,t,n)=>{"use strict";var r=n(7418),a=60103,o=60106;t.Fragment=60107,t.StrictMode=60108,t.Profiler=60114;var i=60109,l=60110,s=60112;t.Suspense=60113;var u=60115,c=60116;if("function"==typeof Symbol&&Symbol.for){var d=Symbol.for;a=d("react.element"),o=d("react.portal"),t.Fragment=d("react.fragment"),t.StrictMode=d("react.strict_mode"),t.Profiler=d("react.profiler"),i=d("react.provider"),l=d("react.context"),s=d("react.forward_ref"),t.Suspense=d("react.suspense"),u=d("react.memo"),c=d("react.lazy")}var p="function"==typeof Symbol&&Symbol.iterator;function f(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var m={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},g={};function h(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||m}function b(){}function v(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||m}h.prototype.isReactComponent={},h.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error(f(85));this.updater.enqueueSetState(this,e,t,"setState")},h.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},b.prototype=h.prototype;var y=v.prototype=new b;y.constructor=v,r(y,h.prototype),y.isPureReactComponent=!0;var w={current:null},k=Object.prototype.hasOwnProperty,E={key:!0,ref:!0,__self:!0,__source:!0};function S(e,t,n){var r,o={},i=null,l=null;if(null!=t)for(r in void 0!==t.ref&&(l=t.ref),void 0!==t.key&&(i=""+t.key),t)k.call(t,r)&&!E.hasOwnProperty(r)&&(o[r]=t[r]);var s=arguments.length-2;if(1===s)o.children=n;else if(1<s){for(var u=Array(s),c=0;c<s;c++)u[c]=arguments[c+2];o.children=u}if(e&&e.defaultProps)for(r in s=e.defaultProps)void 0===o[r]&&(o[r]=s[r]);return{$$typeof:a,type:e,key:i,ref:l,props:o,_owner:w.current}}function x(e){return"object"==typeof e&&null!==e&&e.$$typeof===a}var C=/\/+/g;function _(e,t){return"object"==typeof e&&null!==e&&null!=e.key?function(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,(function(e){return t[e]}))}(""+e.key):t.toString(36)}function T(e,t,n,r,i){var l=typeof e;"undefined"!==l&&"boolean"!==l||(e=null);var s=!1;if(null===e)s=!0;else switch(l){case"string":case"number":s=!0;break;case"object":switch(e.$$typeof){case a:case o:s=!0}}if(s)return i=i(s=e),e=""===r?"."+_(s,0):r,Array.isArray(i)?(n="",null!=e&&(n=e.replace(C,"$&/")+"/"),T(i,t,n,"",(function(e){return e}))):null!=i&&(x(i)&&(i=function(e,t){return{$$typeof:a,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}(i,n+(!i.key||s&&s.key===i.key?"":(""+i.key).replace(C,"$&/")+"/")+e)),t.push(i)),1;if(s=0,r=""===r?".":r+":",Array.isArray(e))for(var u=0;u<e.length;u++){var c=r+_(l=e[u],u);s+=T(l,t,n,c,i)}else if(c=function(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=p&&e[p]||e["@@iterator"])?e:null}(e),"function"==typeof c)for(e=c.call(e),u=0;!(l=e.next()).done;)s+=T(l=l.value,t,n,c=r+_(l,u++),i);else if("object"===l)throw t=""+e,Error(f(31,"[object Object]"===t?"object with keys {"+Object.keys(e).join(", ")+"}":t));return s}function A(e,t,n){if(null==e)return e;var r=[],a=0;return T(e,r,"","",(function(e){return t.call(n,e,a++)})),r}function L(e){if(-1===e._status){var t=e._result;t=t(),e._status=0,e._result=t,t.then((function(t){0===e._status&&(t=t.default,e._status=1,e._result=t)}),(function(t){0===e._status&&(e._status=2,e._result=t)}))}if(1===e._status)return e._result;throw e._result}var P={current:null};function R(){var e=P.current;if(null===e)throw Error(f(321));return e}var N={ReactCurrentDispatcher:P,ReactCurrentBatchConfig:{transition:0},ReactCurrentOwner:w,IsSomeRendererActing:{current:!1},assign:r};t.Children={map:A,forEach:function(e,t,n){A(e,(function(){t.apply(this,arguments)}),n)},count:function(e){var t=0;return A(e,(function(){t++})),t},toArray:function(e){return A(e,(function(e){return e}))||[]},only:function(e){if(!x(e))throw Error(f(143));return e}},t.Component=h,t.PureComponent=v,t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=N,t.cloneElement=function(e,t,n){if(null==e)throw Error(f(267,e));var o=r({},e.props),i=e.key,l=e.ref,s=e._owner;if(null!=t){if(void 0!==t.ref&&(l=t.ref,s=w.current),void 0!==t.key&&(i=""+t.key),e.type&&e.type.defaultProps)var u=e.type.defaultProps;for(c in t)k.call(t,c)&&!E.hasOwnProperty(c)&&(o[c]=void 0===t[c]&&void 0!==u?u[c]:t[c])}var c=arguments.length-2;if(1===c)o.children=n;else if(1<c){u=Array(c);for(var d=0;d<c;d++)u[d]=arguments[d+2];o.children=u}return{$$typeof:a,type:e.type,key:i,ref:l,props:o,_owner:s}},t.createContext=function(e,t){return void 0===t&&(t=null),(e={$$typeof:l,_calculateChangedBits:t,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null}).Provider={$$typeof:i,_context:e},e.Consumer=e},t.createElement=S,t.createFactory=function(e){var t=S.bind(null,e);return t.type=e,t},t.createRef=function(){return{current:null}},t.forwardRef=function(e){return{$$typeof:s,render:e}},t.isValidElement=x,t.lazy=function(e){return{$$typeof:c,_payload:{_status:-1,_result:e},_init:L}},t.memo=function(e,t){return{$$typeof:u,type:e,compare:void 0===t?null:t}},t.useCallback=function(e,t){return R().useCallback(e,t)},t.useContext=function(e,t){return R().useContext(e,t)},t.useDebugValue=function(){},t.useEffect=function(e,t){return R().useEffect(e,t)},t.useImperativeHandle=function(e,t,n){return R().useImperativeHandle(e,t,n)},t.useLayoutEffect=function(e,t){return R().useLayoutEffect(e,t)},t.useMemo=function(e,t){return R().useMemo(e,t)},t.useReducer=function(e,t,n){return R().useReducer(e,t,n)},t.useRef=function(e){return R().useRef(e)},t.useState=function(e){return R().useState(e)},t.version="17.0.2"},7294:(e,t,n)=>{"use strict";e.exports=n(2408)},53:(e,t)=>{"use strict";var n,r,a,o;if("object"==typeof performance&&"function"==typeof performance.now){var i=performance;t.unstable_now=function(){return i.now()}}else{var l=Date,s=l.now();t.unstable_now=function(){return l.now()-s}}if("undefined"==typeof window||"function"!=typeof MessageChannel){var u=null,c=null,d=function(){if(null!==u)try{var e=t.unstable_now();u(!0,e),u=null}catch(n){throw setTimeout(d,0),n}};n=function(e){null!==u?setTimeout(n,0,e):(u=e,setTimeout(d,0))},r=function(e,t){c=setTimeout(e,t)},a=function(){clearTimeout(c)},t.unstable_shouldYield=function(){return!1},o=t.unstable_forceFrameRate=function(){}}else{var p=window.setTimeout,f=window.clearTimeout;if("undefined"!=typeof console){var m=window.cancelAnimationFrame;"function"!=typeof window.requestAnimationFrame&&console.error("This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills"),"function"!=typeof m&&console.error("This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills")}var g=!1,h=null,b=-1,v=5,y=0;t.unstable_shouldYield=function(){return t.unstable_now()>=y},o=function(){},t.unstable_forceFrameRate=function(e){0>e||125<e?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):v=0<e?Math.floor(1e3/e):5};var w=new MessageChannel,k=w.port2;w.port1.onmessage=function(){if(null!==h){var e=t.unstable_now();y=e+v;try{h(!0,e)?k.postMessage(null):(g=!1,h=null)}catch(n){throw k.postMessage(null),n}}else g=!1},n=function(e){h=e,g||(g=!0,k.postMessage(null))},r=function(e,n){b=p((function(){e(t.unstable_now())}),n)},a=function(){f(b),b=-1}}function E(e,t){var n=e.length;e.push(t);e:for(;;){var r=n-1>>>1,a=e[r];if(!(void 0!==a&&0<C(a,t)))break e;e[r]=t,e[n]=a,n=r}}function S(e){return void 0===(e=e[0])?null:e}function x(e){var t=e[0];if(void 0!==t){var n=e.pop();if(n!==t){e[0]=n;e:for(var r=0,a=e.length;r<a;){var o=2*(r+1)-1,i=e[o],l=o+1,s=e[l];if(void 0!==i&&0>C(i,n))void 0!==s&&0>C(s,i)?(e[r]=s,e[l]=n,r=l):(e[r]=i,e[o]=n,r=o);else{if(!(void 0!==s&&0>C(s,n)))break e;e[r]=s,e[l]=n,r=l}}}return t}return null}function C(e,t){var n=e.sortIndex-t.sortIndex;return 0!==n?n:e.id-t.id}var _=[],T=[],A=1,L=null,P=3,R=!1,N=!1,O=!1;function I(e){for(var t=S(T);null!==t;){if(null===t.callback)x(T);else{if(!(t.startTime<=e))break;x(T),t.sortIndex=t.expirationTime,E(_,t)}t=S(T)}}function D(e){if(O=!1,I(e),!N)if(null!==S(_))N=!0,n(M);else{var t=S(T);null!==t&&r(D,t.startTime-e)}}function M(e,n){N=!1,O&&(O=!1,a()),R=!0;var o=P;try{for(I(n),L=S(_);null!==L&&(!(L.expirationTime>n)||e&&!t.unstable_shouldYield());){var i=L.callback;if("function"==typeof i){L.callback=null,P=L.priorityLevel;var l=i(L.expirationTime<=n);n=t.unstable_now(),"function"==typeof l?L.callback=l:L===S(_)&&x(_),I(n)}else x(_);L=S(_)}if(null!==L)var s=!0;else{var u=S(T);null!==u&&r(D,u.startTime-n),s=!1}return s}finally{L=null,P=o,R=!1}}var F=o;t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(e){e.callback=null},t.unstable_continueExecution=function(){N||R||(N=!0,n(M))},t.unstable_getCurrentPriorityLevel=function(){return P},t.unstable_getFirstCallbackNode=function(){return S(_)},t.unstable_next=function(e){switch(P){case 1:case 2:case 3:var t=3;break;default:t=P}var n=P;P=t;try{return e()}finally{P=n}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=F,t.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=P;P=e;try{return t()}finally{P=n}},t.unstable_scheduleCallback=function(e,o,i){var l=t.unstable_now();switch("object"==typeof i&&null!==i?i="number"==typeof(i=i.delay)&&0<i?l+i:l:i=l,e){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return e={id:A++,callback:o,priorityLevel:e,startTime:i,expirationTime:s=i+s,sortIndex:-1},i>l?(e.sortIndex=i,E(T,e),null===S(_)&&e===S(T)&&(O?a():O=!0,r(D,i-l))):(e.sortIndex=s,E(_,e),N||R||(N=!0,n(M))),e},t.unstable_wrapCallback=function(e){var t=P;return function(){var n=P;P=t;try{return e.apply(this,arguments)}finally{P=n}}}},3840:(e,t,n)=>{"use strict";e.exports=n(53)},6774:e=>{e.exports=function(e,t,n,r){var a=n?n.call(r,e,t):void 0;if(void 0!==a)return!!a;if(e===t)return!0;if("object"!=typeof e||!e||"object"!=typeof t||!t)return!1;var o=Object.keys(e),i=Object.keys(t);if(o.length!==i.length)return!1;for(var l=Object.prototype.hasOwnProperty.bind(t),s=0;s<o.length;s++){var u=o[s];if(!l(u))return!1;var c=e[u],d=t[u];if(!1===(a=n?n.call(r,c,d,u):void 0)||void 0===a&&c!==d)return!1}return!0}},2177:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r="Invariant failed";function a(e,t){if(!e)throw new Error(r)}},6809:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>r});const r={title:"Template FastAPI React",tagline:"A solution template for creating a Single Page App (SPA) with React and FastAPI following the principles of Clean Architecture.",url:"https://template-fastapi-react.app.playground.radix.equinor.com/",baseUrl:"/template-fastapi-react/",onBrokenLinks:"throw",onBrokenMarkdownLinks:"warn",favicon:"img/favicon.png",organizationName:"equinor",projectName:"template-fastapi-react",deploymentBranch:"gh-pages",i18n:{defaultLocale:"en",locales:["en"],path:"i18n",localeConfigs:{}},plugins:[],presets:[["classic",{docs:{sidebarPath:"/home/runner/work/template-fastapi-react/template-fastapi-react/documentation/sidebars.js",editUrl:"https://github.com/equinor/template-fastapi-react/tree/main/documentation/",remarkPlugins:[null,null]},blog:!1,theme:{customCss:"/home/runner/work/template-fastapi-react/template-fastapi-react/documentation/src/css/custom.css"}}]],themeConfig:{navbar:{title:"Template FastAPI React",logo:{alt:"Equinor Logo",src:"img/logo.svg"},items:[{type:"docSidebar",sidebarId:"about",position:"left",label:"Docs"},{type:"docSidebar",sidebarId:"contribute",position:"left",label:"Contribute"},{to:"/docs/changelog",label:"Changelog",position:"left"},{href:"https://template-fastapi-react.app.playground.radix.equinor.com",label:"Demo",position:"right"},{href:"https://template-fastapi-react.app.playground.radix.equinor.com/api/docs",label:"API",position:"right"},{href:"https://github.com/equinor/template-fastapi-react",label:"GitHub",position:"right"}],hideOnScroll:!1},footer:{style:"dark",links:[{title:"Docs",items:[{label:"Docs",to:"/docs/about/introduction"},{label:"Contribute",to:"/docs/contribute/how-to-start-contributing"},{label:"Changelog",to:"/docs/changelog"}]},{title:"More",items:[{label:"Team Hermes Homepage",href:"https://verbose-eureka-374aa4f5.pages.github.io"},{label:"GitHub",href:"https://github.com/equinor/template-fastapi-react"},{label:"Template FastAPI React",href:"https://template-fastapi-react.app.playground.radix.equinor.com/"}]}],copyright:"Copyright \xa9 2024 Team Hermes, Inc. Built with Docusaurus."},prism:{theme:{plain:{color:"#393A34",backgroundColor:"#f6f8fa"},styles:[{types:["comment","prolog","doctype","cdata"],style:{color:"#999988",fontStyle:"italic"}},{types:["namespace"],style:{opacity:.7}},{types:["string","attr-value"],style:{color:"#e3116c"}},{types:["punctuation","operator"],style:{color:"#393A34"}},{types:["entity","url","symbol","number","boolean","variable","constant","property","regex","inserted"],style:{color:"#36acaa"}},{types:["atrule","keyword","attr-name","selector"],style:{color:"#00a4db"}},{types:["function","deleted","tag"],style:{color:"#d73a49"}},{types:["function-variable"],style:{color:"#6f42c1"}},{types:["tag","selector","keyword"],style:{color:"#00009f"}}]},darkTheme:{plain:{color:"#F8F8F2",backgroundColor:"#282A36"},styles:[{types:["prolog","constant","builtin"],style:{color:"rgb(189, 147, 249)"}},{types:["inserted","function"],style:{color:"rgb(80, 250, 123)"}},{types:["deleted"],style:{color:"rgb(255, 85, 85)"}},{types:["changed"],style:{color:"rgb(255, 184, 108)"}},{types:["punctuation","symbol"],style:{color:"rgb(248, 248, 242)"}},{types:["string","char","tag","selector"],style:{color:"rgb(255, 121, 198)"}},{types:["keyword","variable"],style:{color:"rgb(189, 147, 249)",fontStyle:"italic"}},{types:["comment"],style:{color:"rgb(98, 114, 164)"}},{types:["attr-name"],style:{color:"rgb(241, 250, 140)"}}]},additionalLanguages:[],magicComments:[{className:"theme-code-block-highlighted-line",line:"highlight-next-line",block:{start:"highlight-start",end:"highlight-end"}}]},colorMode:{defaultMode:"dark",disableSwitch:!1,respectPrefersColorScheme:!0},docs:{versionPersistence:"localStorage",sidebar:{hideable:!1,autoCollapseCategories:!1}},metadata:[],tableOfContents:{minHeadingLevel:2,maxHeadingLevel:3}},baseUrlIssueBanner:!0,onDuplicateRoutes:"warn",staticDirectories:["static"],customFields:{},themes:[],scripts:[],stylesheets:[],clientModules:[],titleDelimiter:"|",noIndex:!1}},7462:(e,t,n)=>{"use strict";function r(){return r=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},r.apply(this,arguments)}n.d(t,{Z:()=>r})},5068:(e,t,n)=>{"use strict";function r(e,t){return r=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},r(e,t)}function a(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,r(e,t)}n.d(t,{Z:()=>a})},3366:(e,t,n)=>{"use strict";function r(e,t){if(null==e)return{};var n,r,a={},o=Object.keys(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)>=0||(a[n]=e[n]);return a}n.d(t,{Z:()=>r})},7529:e=>{"use strict";e.exports={}},6887:e=>{"use strict";e.exports=JSON.parse('{"/template-fastapi-react/changelog-58e":{"__comp":"1f391b9e","__context":{"plugin":"d5120d00"},"content":"75878fc8"},"/template-fastapi-react/docs-ee5":{"__comp":"1be78505","__context":{"plugin":"eb414d18"},"versionMetadata":"935f2afb"},"/template-fastapi-react/docs/about/concepts/task-786":{"__comp":"17896441","content":"f05b69d1"},"/template-fastapi-react/docs/about/concepts/use-case-2d3":{"__comp":"17896441","content":"4b94b993"},"/template-fastapi-react/docs/about/how-to/how-to-do-something-eda":{"__comp":"17896441","content":"2424d345"},"/template-fastapi-react/docs/about/introduction-511":{"__comp":"17896441","content":"d38eaa6e"},"/template-fastapi-react/docs/about/overview-0ac":{"__comp":"17896441","content":"b5acc4c4"},"/template-fastapi-react/docs/about/running/configure-9bd":{"__comp":"17896441","content":"492dc3f9"},"/template-fastapi-react/docs/about/running/prerequisites-d7d":{"__comp":"17896441","content":"d3ec9a0d"},"/template-fastapi-react/docs/about/running/starting-services-0ec":{"__comp":"17896441","content":"c66b78d2"},"/template-fastapi-react/docs/category/coding-179":{"__comp":"14eb3368","categoryGeneratedIndex":"f271ccf2"},"/template-fastapi-react/docs/category/concepts-080":{"__comp":"14eb3368","categoryGeneratedIndex":"6d61db34"},"/template-fastapi-react/docs/category/development-guide-cdf":{"__comp":"14eb3368","categoryGeneratedIndex":"792d5b58"},"/template-fastapi-react/docs/category/how-to-560":{"__comp":"14eb3368","categoryGeneratedIndex":"ddc469d8"},"/template-fastapi-react/docs/category/running-9ea":{"__comp":"14eb3368","categoryGeneratedIndex":"05e44ab7"},"/template-fastapi-react/docs/changelog/-c7e":{"__comp":"17896441","content":"428320b6"},"/template-fastapi-react/docs/contribute/development-guide/coding/architecture-cae":{"__comp":"17896441","content":"fc1348c9"},"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/-cdf":{"__comp":"17896441","content":"3cb05d6d"},"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/-4e7":{"__comp":"17896441","content":"9b8d192f"},"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/clients-032":{"__comp":"17896441","content":"415192e1"},"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repositories-a61":{"__comp":"17896441","content":"b893987e"},"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repository-interfaces-2b2":{"__comp":"17896441","content":"faf05ce9"},"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-entities-f75":{"__comp":"17896441","content":"73611911"},"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/-173":{"__comp":"17896441","content":"5fef8d46"},"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/controllers-c4d":{"__comp":"17896441","content":"20f005c0"},"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/securing-endpoints-390":{"__comp":"17896441","content":"06314cb9"},"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/use-cases-d63":{"__comp":"17896441","content":"14a713f6"},"/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-web/-731":{"__comp":"17896441","content":"eccd96cf"},"/template-fastapi-react/docs/contribute/development-guide/coding/generate-api-clients-362":{"__comp":"17896441","content":"95fd3ae2"},"/template-fastapi-react/docs/contribute/development-guide/publishing-7f3":{"__comp":"17896441","content":"8140cfa8"},"/template-fastapi-react/docs/contribute/development-guide/setup-e9b":{"__comp":"17896441","content":"57dd7c71"},"/template-fastapi-react/docs/contribute/development-guide/testing-8f0":{"__comp":"17896441","content":"41b8e814"},"/template-fastapi-react/docs/contribute/development-guide/upgrading-710":{"__comp":"17896441","content":"1b4cc8e2"},"/template-fastapi-react/docs/contribute/documentation-a74":{"__comp":"17896441","content":"2e61c9f2"},"/template-fastapi-react/docs/contribute/ground-rules-0ff":{"__comp":"17896441","content":"61b19cc7"},"/template-fastapi-react/docs/contribute/how-to-start-contributing-a96":{"__comp":"17896441","content":"be239b1c"},"/template-fastapi-react/-061":{"__comp":"1df93b7f","__context":{"plugin":"d5120d00"},"config":"5e9f5e1a"}}')}},e=>{e.O(0,[532],(()=>{return t=9383,e(e.s=t);var t}));e.O()}]); \ No newline at end of file diff --git a/assets/js/main.fe5c8998.js.LICENSE.txt b/assets/js/main.fe5c8998.js.LICENSE.txt new file mode 100644 index 00000000..6e08db29 --- /dev/null +++ b/assets/js/main.fe5c8998.js.LICENSE.txt @@ -0,0 +1,53 @@ +/* +object-assign +(c) Sindre Sorhus +@license MIT +*/ + +/* NProgress, (c) 2013, 2014 Rico Sta. Cruz - http://ricostacruz.com/nprogress + * @license MIT */ + +/** + * Prism: Lightweight, robust, elegant syntax highlighting + * + * @license MIT <https://opensource.org/licenses/MIT> + * @author Lea Verou <https://lea.verou.me> + * @namespace + * @public + */ + +/** @license React v0.20.2 + * scheduler.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +/** @license React v16.13.1 + * react-is.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +/** @license React v17.0.2 + * react-dom.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +/** @license React v17.0.2 + * react.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ diff --git a/assets/js/runtime~main.15945b69.js b/assets/js/runtime~main.15945b69.js new file mode 100644 index 00000000..2fd78278 --- /dev/null +++ b/assets/js/runtime~main.15945b69.js @@ -0,0 +1 @@ +(()=>{"use strict";var e,t,c,d,r,a={},f={};function o(e){var t=f[e];if(void 0!==t)return t.exports;var c=f[e]={id:e,loaded:!1,exports:{}};return a[e].call(c.exports,c,c.exports,o),c.loaded=!0,c.exports}o.m=a,o.c=f,e=[],o.O=(t,c,d,r)=>{if(!c){var a=1/0;for(i=0;i<e.length;i++){c=e[i][0],d=e[i][1],r=e[i][2];for(var f=!0,b=0;b<c.length;b++)(!1&r||a>=r)&&Object.keys(o.O).every((e=>o.O[e](c[b])))?c.splice(b--,1):(f=!1,r<a&&(a=r));if(f){e.splice(i--,1);var n=d();void 0!==n&&(t=n)}}return t}r=r||0;for(var i=e.length;i>0&&e[i-1][2]>r;i--)e[i]=e[i-1];e[i]=[c,d,r]},o.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t},c=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,o.t=function(e,d){if(1&d&&(e=this(e)),8&d)return e;if("object"==typeof e&&e){if(4&d&&e.__esModule)return e;if(16&d&&"function"==typeof e.then)return e}var r=Object.create(null);o.r(r);var a={};t=t||[null,c({}),c([]),c(c)];for(var f=2&d&&e;"object"==typeof f&&!~t.indexOf(f);f=c(f))Object.getOwnPropertyNames(f).forEach((t=>a[t]=()=>e[t]));return a.default=()=>e,o.d(r,a),r},o.d=(e,t)=>{for(var c in t)o.o(t,c)&&!o.o(e,c)&&Object.defineProperty(e,c,{enumerable:!0,get:t[c]})},o.f={},o.e=e=>Promise.all(Object.keys(o.f).reduce(((t,c)=>(o.f[c](e,t),t)),[])),o.u=e=>"assets/js/"+({3:"41b8e814",6:"c66b78d2",19:"be239b1c",53:"935f2afb",85:"1f391b9e",89:"2424d345",95:"d3ec9a0d",106:"b5acc4c4",109:"14a713f6",118:"61b19cc7",141:"20f005c0",172:"9b8d192f",176:"3cb05d6d",193:"428320b6",214:"f271ccf2",219:"5fef8d46",237:"1df93b7f",250:"73611911",256:"8140cfa8",260:"6d61db34",283:"eccd96cf",295:"415192e1",297:"06314cb9",301:"f05b69d1",302:"fc1348c9",349:"faf05ce9",389:"d38eaa6e",396:"492dc3f9",410:"d5120d00",413:"2e61c9f2",499:"b893987e",508:"57dd7c71",511:"1b4cc8e2",514:"1be78505",529:"eb414d18",592:"common",770:"ddc469d8",817:"14eb3368",833:"05e44ab7",859:"4b94b993",898:"95fd3ae2",910:"792d5b58",918:"17896441",990:"75878fc8"}[e]||e)+"."+{3:"b9683f34",6:"a4ca6671",19:"3a72d963",53:"be34cfe3",85:"1cd91990",89:"a6d361c6",95:"42dfbc51",106:"0b2208ad",109:"d009dfb8",118:"35a6f195",141:"049174b7",172:"082a6409",176:"2e6d8bf1",193:"b0e6cab4",214:"1243d9fe",219:"fc4c9a16",237:"6c196ace",250:"902cc1fc",256:"b0156491",260:"31b6f0e7",283:"0961e338",295:"5c02af10",297:"e2de962b",301:"3b3214c8",302:"0401af5e",327:"6bc39bf0",349:"6d36023d",389:"5e09b96d",396:"b3c5f638",410:"6cd7f025",413:"6d5fa105",499:"c7bcf8cd",508:"325d5b48",511:"0a0766ce",514:"86914a5e",529:"4f3efa3c",592:"53c69b33",770:"ae70c047",814:"e703c48f",817:"9428a0f9",833:"b8156b68",859:"25343c8e",898:"01388588",910:"f356f65f",918:"1939eeab",972:"8d79bbe8",990:"2cbd87ce"}[e]+".js",o.miniCssF=e=>{},o.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),d={},r="documentation:",o.l=(e,t,c,a)=>{if(d[e])d[e].push(t);else{var f,b;if(void 0!==c)for(var n=document.getElementsByTagName("script"),i=0;i<n.length;i++){var u=n[i];if(u.getAttribute("src")==e||u.getAttribute("data-webpack")==r+c){f=u;break}}f||(b=!0,(f=document.createElement("script")).charset="utf-8",f.timeout=120,o.nc&&f.setAttribute("nonce",o.nc),f.setAttribute("data-webpack",r+c),f.src=e),d[e]=[t];var l=(t,c)=>{f.onerror=f.onload=null,clearTimeout(s);var r=d[e];if(delete d[e],f.parentNode&&f.parentNode.removeChild(f),r&&r.forEach((e=>e(c))),t)return t(c)},s=setTimeout(l.bind(null,void 0,{type:"timeout",target:f}),12e4);f.onerror=l.bind(null,f.onerror),f.onload=l.bind(null,f.onload),b&&document.head.appendChild(f)}},o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.p="/template-fastapi-react/",o.gca=function(e){return e={17896441:"918",73611911:"250","41b8e814":"3",c66b78d2:"6",be239b1c:"19","935f2afb":"53","1f391b9e":"85","2424d345":"89",d3ec9a0d:"95",b5acc4c4:"106","14a713f6":"109","61b19cc7":"118","20f005c0":"141","9b8d192f":"172","3cb05d6d":"176","428320b6":"193",f271ccf2:"214","5fef8d46":"219","1df93b7f":"237","8140cfa8":"256","6d61db34":"260",eccd96cf:"283","415192e1":"295","06314cb9":"297",f05b69d1:"301",fc1348c9:"302",faf05ce9:"349",d38eaa6e:"389","492dc3f9":"396",d5120d00:"410","2e61c9f2":"413",b893987e:"499","57dd7c71":"508","1b4cc8e2":"511","1be78505":"514",eb414d18:"529",common:"592",ddc469d8:"770","14eb3368":"817","05e44ab7":"833","4b94b993":"859","95fd3ae2":"898","792d5b58":"910","75878fc8":"990"}[e]||e,o.p+o.u(e)},(()=>{var e={303:0,532:0};o.f.j=(t,c)=>{var d=o.o(e,t)?e[t]:void 0;if(0!==d)if(d)c.push(d[2]);else if(/^(303|532)$/.test(t))e[t]=0;else{var r=new Promise(((c,r)=>d=e[t]=[c,r]));c.push(d[2]=r);var a=o.p+o.u(t),f=new Error;o.l(a,(c=>{if(o.o(e,t)&&(0!==(d=e[t])&&(e[t]=void 0),d)){var r=c&&("load"===c.type?"missing":c.type),a=c&&c.target&&c.target.src;f.message="Loading chunk "+t+" failed.\n("+r+": "+a+")",f.name="ChunkLoadError",f.type=r,f.request=a,d[1](f)}}),"chunk-"+t,t)}},o.O.j=t=>0===e[t];var t=(t,c)=>{var d,r,a=c[0],f=c[1],b=c[2],n=0;if(a.some((t=>0!==e[t]))){for(d in f)o.o(f,d)&&(o.m[d]=f[d]);if(b)var i=b(o)}for(t&&t(c);n<a.length;n++)r=a[n],o.o(e,r)&&e[r]&&e[r][0](),e[r]=0;return o.O(i)},c=self.webpackChunkdocumentation=self.webpackChunkdocumentation||[];c.forEach(t.bind(null,0)),c.push=t.bind(null,c.push.bind(c))})()})(); \ No newline at end of file diff --git a/changelog/index.html b/changelog/index.html new file mode 100644 index 00000000..d23efca2 --- /dev/null +++ b/changelog/index.html @@ -0,0 +1,16 @@ +<!doctype html> +<html lang="en" dir="ltr" class="mdx-wrapper mdx-page plugin-pages plugin-id-default"> +<head> +<meta charset="UTF-8"> +<meta name="generator" content="Docusaurus v2.1.0"> +<title data-rh="true">Template FastAPI React + + + + +

+

Warning: This is the development version.

Changelog

All notable changes to this project will be documented in this file. See standard-version for commit guidelines.

1.5.0 (2024-09-04)

Features

  • add Popover component (c8964bd)
  • add react context to handle todo state (510e470)
  • add reusable IconButton component (f933e30)
  • replace exception handling (35ae0ef)
  • replace prettier and eslint with biome (afe2cb9)

Bug Fixes

  • docs reference out of date (bd4cc8d)
  • extras typing is not always dict[str,str] (7ba0694)
  • make authentication work again (3e8da0f)
  • mypy error (66303aa)
  • ran api again (afa8158)
  • ran generator (19ff51b)
  • replace gunicorn with horizontal scaling (a8baa0f)
  • The template no longer use the node image in production (f9b68d9)
  • update old references (5152a1f)
  • update to match new parameters for get pydantic json schema (c6b14a8)

1.4.0 (2023-03-01)

Features

Bug Fixes

  • add error handling of version file fetch (a4f6889)
  • api: handle lists in create_response (333f7d4)
  • api: make health-check return PlainTextResponse (12d5169)
  • api: remove empty default pydantic field in models (0424282)
  • remove /api as root path. (208ceb9)
  • replace deprecated output definition (c53b003)

Tests

Build System

  • add typescript plugin (83ade0c)
  • ci/cd: update flake8 repo location (e6953ad)
  • enable scripts to build necessary packages (YN0007) (f1cf2c3)
  • missing peer dependencies (YN0002) (9e8981d)
  • set yarn version (afb5834)

Miscellaneous Chores

Code Refactoring

  • api: replace response_class with return type annotations (b1fa3bd)
  • ci: extract ghcr login into separate step (0d90fe0)
  • ci: remove crazy-max external action (b41990d)
  • create empty yarn.lock (39050e7)
  • separate responsibilities by moving useEffect to a custom hook (cc33a5d)
  • workflow: Fix linting errors (8ea9f69)
  • workflow: rename and restructure workflows (f08fffa)

Continuous Integration

  • Add rollback workflow (b1cca70), closes #153
  • allow publishing multiple tags at once (4c5d867), closes #153
  • bump pre-commit hooks (9a0cea7)
  • change oauth redurect url to radix playground (655c55f)
  • Change version logging format on build (49ca893), closes #154
  • correct permissions (6d9d563)
  • Fix bug in publish docs (a696a33)
  • Include all commit types in changelog (73cfaaa)
  • login as the service principal to request an access token (fabe3b4)
  • pass tag name to publish-image workflow (dcedc16), closes #153
  • remove secret as input to reusable workflow (1ec6cbb)
  • specify playground context (142bc13)

Documentation

  • add what is fastapi (bbec23b)
  • ci: add comment to azure login (f6b9c96)
  • rewrite 01-setup Yarn PnP in VSCode (df4c7d0)
  • update link to radix playground (6c932c3)

1.3.0 (2022-11-11)

Features

  • allow each user to have their own todos (9456ab8)

Bug Fixes

  • add missing dependency without causing infinite loop of rerendering (8f5c01d)
  • api: raise MissingPrivilegeException when relevant (0c55af3)
  • api: raise MissingPrivilegeException when relevant (613cc42)
  • make todo title required, not optional (bc8dab6)
  • only allow users to delete their own todos (1cf1e7a)
  • test suite (31da3f7)
  • tests: fix up integration tests with per-user todos (b7cc0ca)

1.2.1 (2022-11-09)

Bug Fixes

  • web: adding todo item now clears input. (82e6f6b)

1.2.0 (2022-11-09)

Features

  • expand and visualize auth states (51c9870)
  • web: clear input on add-todo (d61adc1)
  • web: visualize loading state better (6a6ab81)

Bug Fixes

  • make useTodos simpler to use (e8f0a18)

1.1.1 (2022-11-04)

Bug Fixes

1.1.0 (2022-11-04)

Features

  • standardized ErrorResponse model (c09e4dc)

Bug Fixes

  • add types to fixtures (0528e5b)
  • delete non existing item should return 404 (4341416)

1.0.0 (2022-09-07)

Features

  • add auth (a201f13)
  • add axios (88448c2)
  • add equinor design system (b96d4da)
  • add equinor typeface (53a7423)
  • add eslint to pre-commit (20c872d)
  • Add extra checks to pre-commit and run safety in venv (27a6cbe)
  • add flake8, safety and pytests to pre-commit (1917997)
  • add mypy type checking to pre-commit (437cedd)
  • add prettier (b1ce63a)
  • autogenerate release changelog (e463ae2)
  • build and push images in ci (477ad85)
  • create-react-app with typescript and equinor icons (2cfa523)
  • init todo example (8beaf08)
  • official nginx image running unprivileged (fab0c14)
  • pre-commit in CI from pre-commit-config.yaml (5d806b5)
  • pre-commit: Add autoflake to pre-commits (8d97b34), closes #31
  • response decorator takes Response type as parameter (9a7f228)
  • reusable gh actions workflows (d557ebc)
  • show changelog in documentation (6da9b86)
  • tutorial on authentication (fd789c0)

Bug Fixes

  • add missing decorators (54fd2f8)
  • add required additional dependencies to eslint pre-commit env (cca8509)
  • add venv (d682b08)
  • cast variable that cannot be undefined to boolean (372f781)
  • dev: env_file in docker-compose.override.yml (PR #39) (2aa80bd)
  • disable pull (de2d045)
  • duplicated pre-commit hook (a21f5a6)
  • fix mypy errors (d9543c1)
  • fix pytest_plugin import error (b521819)
  • lock cryptography dependency since a bad new release. Set authentication scheme to allow for no tokens. Exclude some file from pre-commit (ea6a931)
  • move Response decorator to controllers (bd36b4a)
  • only run safety hook once (bc33372)
  • poetry command (ccbb2e1)
  • pre-commit (5192d0e)
  • python-version (a934109)
  • remove encryption.py (a500444)
  • set correct base path for docs (0dda0b2)
  • set correct type on todo local state (2a4020c)
  • turn off eslint rules that are unnecessary or might conflict with prettier (d6beaf7)
  • typo (fb557b8)
  • use const on variable that is never reassigned (9f7c543)
  • web: correct base path (a3872d5)
  • yarn build again (dfc48fd)
+ + + + \ No newline at end of file diff --git a/docs/about/concepts/task/index.html b/docs/about/concepts/task/index.html new file mode 100644 index 00000000..bbbeecb1 --- /dev/null +++ b/docs/about/concepts/task/index.html @@ -0,0 +1,16 @@ + + + + + +Task | Template FastAPI React + + + + +
+

Task

info

This is an example of a "concept" which is domain specific, and not related to your application. It should be replaced by relevant domain specific concepts in your documentation. Note that for some concepts, having an "Examples"-section does not make sense. Feel free to adapt the example's structure to best suit your concepts.

A task is piece of work which is assigned to be done by one or multiple persons. A task usually has defined limits, often referred to as the task description.

In order to remember assigned tasks, they are often made note of in lists. Traditionally, these lists have been written on small notes (e.g. post-its), but in recent years there have been a large number of todo-apps developed for phones and computers, replacing its analogue predecessor. See related concepts for more on to-do lists.

Once a task is assigned to a person, the person is expected to carry out the task until completion. There is often a time-limit associated with a task, and a failure to complete the task within the time-limit might be unacceptable and as unfavorable as not completing the task at all.

Examples

  1. Many young children are given chores around the house, such as taking out the trash or cleaning their room.
  2. All employees have a set of tasks to complete, which are often defined in their contract or verbally during their training.
+ + + + \ No newline at end of file diff --git a/docs/about/concepts/use-case/index.html b/docs/about/concepts/use-case/index.html new file mode 100644 index 00000000..90b6b3c5 --- /dev/null +++ b/docs/about/concepts/use-case/index.html @@ -0,0 +1,16 @@ + + + + + +Use case | Template FastAPI React + + + + +
+

Use case

There will be one use case for each individual action/command of an actor. An actor is a person or another system that interacts with our application. Typically, it will be a regular user.

Examples

For a meetup.com clone, it could be:

  • Confirming attendance as an attendee
  • Cancelling attendance as an attendee
  • Drafting new meeting as an organizer
+ + + + \ No newline at end of file diff --git a/docs/about/how-to/how-to-do-something/index.html b/docs/about/how-to/how-to-do-something/index.html new file mode 100644 index 00000000..cef38651 --- /dev/null +++ b/docs/about/how-to/how-to-do-something/index.html @@ -0,0 +1,16 @@ + + + + + +How to do something | Template FastAPI React + + + + + + + + + \ No newline at end of file diff --git a/docs/about/introduction/index.html b/docs/about/introduction/index.html new file mode 100644 index 00000000..5cc60e0d --- /dev/null +++ b/docs/about/introduction/index.html @@ -0,0 +1,16 @@ + + + + + +Introduction | Template FastAPI React + + + + +
+

Introduction

The purpose of the template

This is a solution template for creating a Single Page App (SPA) with React and FastAPI following the principles of Clean Architecture.

The template provides an example implementation of a todo application. The todo app implementation is fairly basic. A user can add a task, mark a task as completed and delete an added task. The purpose of the minimalist todo app implementation is to learn and practice what the concepts of clean architecture are, and how they can be used in a REST API.

+ + + + \ No newline at end of file diff --git a/docs/about/overview/index.html b/docs/about/overview/index.html new file mode 100644 index 00000000..83a21af5 --- /dev/null +++ b/docs/about/overview/index.html @@ -0,0 +1,16 @@ + + + + + +Overview | Template FastAPI React + + + + +
+

Overview

Getting started

In order to start using this template for your own project, go to equinor/template-fastapi-react and click the Use this template button to create a copy.

Next, go-to the instructions on how-to run locally .

For setting up a development environment, go to the development guide. Next, to start coding and extending the template see the coding section.

For starting contributing to the template see contribute section.

Project structure

Here’s how the app is organized.

├── api/ - backend code
│── web/ - frontend code
│── documentation/ - documentation
├── nginx/ - reverse proxy
├── .env-template - template for environment variables
├── docker-compose.override.yml - for running locally
├── docker-compose.yml - common docker compose settings
└── ...
+ + + + \ No newline at end of file diff --git a/docs/about/running/configure/index.html b/docs/about/running/configure/index.html new file mode 100644 index 00000000..50fceaa2 --- /dev/null +++ b/docs/about/running/configure/index.html @@ -0,0 +1,17 @@ + + + + + +Configuration | Template FastAPI React + + + + +
+

Configuration

This document goes through all the different configuration options available.

info

Remember to restart

Any changes you make to this file will only come into effect when you restart the +server.

.env

First, let's look at the options available in the .env file.

Web

Authentication

  • AUTH_ENABLED: To enable or disable authentication
  • CLIENT_ID: Find the app's client ID under Azure Active Directory service (also called application ID). The client ID is used to tell Azure which resource a user is attempting to access.
  • TENANT_ID: Find tenant ID through the Azure portal under Azure Active Directory service. Select properties and under scroll down to the Tenant ID field.
  • AUTH_SCOPE: Find the scope the Azure portal under Azure Active Directory service and App registrations. The scope is located under the expose an API.

API

System

  • ENVIRONMENT: local for hot-reloading, or production for speed
  • LOGGER_LEVEL: DEBUG, ERROR, INFO, WARN

Database

  • MONGODB_USERNAME: The username
  • MONGODB_PASSWORD: The password
  • MONGODB_HOSTNAME: The host where it's running
  • MONGODB_DATABASE: The database to connect to
  • MONGODB_PORT: The port that is used

Authentication

  • OAUTH_TOKEN_ENDPOINT: The endpoint to obtain tokens.
  • OAUTH_AUTH_ENDPOINT: The authorization endpoint performs authentication of the end-user (this is done by redirecting the user agent to this endpoint).
  • OAUTH_WELL_KNOWN: The endpoints that lists endpoints and other configuration options relevant to the OpenID Connect implementation in the project.
  • OAUTH_AUDIENCE: If using azure ad, audience is the azure client id.
  • SECRET_KEY: The secret used for signing JWT.

Used by the docs:

  • OAUTH_CLIENT_ID: Find the app's client ID under Azure Active Directory service (also called application ID). The client ID is used to tell Azure which resource a user is attempting to access.
  • OAUTH_AUTH_SCOPE: Find the scope the Azure portal under Azure Active Directory service and App registrations. The scope is located under the expose an API.
+ + + + \ No newline at end of file diff --git a/docs/about/running/prerequisites/index.html b/docs/about/running/prerequisites/index.html new file mode 100644 index 00000000..0a8fd06f --- /dev/null +++ b/docs/about/running/prerequisites/index.html @@ -0,0 +1,16 @@ + + + + + +Prerequisites | Template FastAPI React + + + + + + + + + \ No newline at end of file diff --git a/docs/about/running/starting-services/index.html b/docs/about/running/starting-services/index.html new file mode 100644 index 00000000..eb1d7a6e --- /dev/null +++ b/docs/about/running/starting-services/index.html @@ -0,0 +1,16 @@ + + + + + +Starting services | Template FastAPI React + + + + +
+

Starting services

You can start running:

docker compose up

The web app will be served at http://localhost

The API documentation can be found at http://localhost/api/docs

The OpenAPI spec can be found at http://localhost/api/openapi.json

Skip Docker (not recommended)

Navigate to the /api folder, activate local venv, then start backend app.py with Uvicorn:

cd api/src/  # go to the location of app.py
uvicorn app:create_app --reload

Navigate to the /web folder, and then start web application:

yarn start
+ + + + \ No newline at end of file diff --git a/docs/category/coding/index.html b/docs/category/coding/index.html new file mode 100644 index 00000000..ac82e143 --- /dev/null +++ b/docs/category/coding/index.html @@ -0,0 +1,16 @@ + + + + + +Coding | Template FastAPI React + + + + + + + + + \ No newline at end of file diff --git a/docs/category/concepts/index.html b/docs/category/concepts/index.html new file mode 100644 index 00000000..17ef2960 --- /dev/null +++ b/docs/category/concepts/index.html @@ -0,0 +1,16 @@ + + + + + +Concepts | Template FastAPI React + + + + + + + + + \ No newline at end of file diff --git a/docs/category/development-guide/index.html b/docs/category/development-guide/index.html new file mode 100644 index 00000000..d312841f --- /dev/null +++ b/docs/category/development-guide/index.html @@ -0,0 +1,16 @@ + + + + + +Development guide | Template FastAPI React + + + + + + + + + \ No newline at end of file diff --git a/docs/category/how-to/index.html b/docs/category/how-to/index.html new file mode 100644 index 00000000..54978a76 --- /dev/null +++ b/docs/category/how-to/index.html @@ -0,0 +1,16 @@ + + + + + +How to | Template FastAPI React + + + + + + + + + \ No newline at end of file diff --git a/docs/category/running/index.html b/docs/category/running/index.html new file mode 100644 index 00000000..7a1fae61 --- /dev/null +++ b/docs/category/running/index.html @@ -0,0 +1,16 @@ + + + + + +Running | Template FastAPI React + + + + + + + + + \ No newline at end of file diff --git a/docs/changelog/index.html b/docs/changelog/index.html new file mode 100644 index 00000000..3d23b3aa --- /dev/null +++ b/docs/changelog/index.html @@ -0,0 +1,19 @@ + + + + + +Changelog | Template FastAPI React + + + + +
+

Changelog

1.5.0 (2024-07-22)

Features

  • add auth (a201f13)
  • add axios (88448c2)
  • add equinor design system (b96d4da)
  • add equinor typeface (53a7423)
  • add eslint to pre-commit (20c872d)
  • Add extra checks to pre-commit and run safety in venv (27a6cbe)
  • add flake8, safety and pytests to pre-commit (1917997)
  • Add info popover with version (28aa513), closes #154
  • add mypy type checking to pre-commit (437cedd)
  • add OpenCensusRequestLoggingMiddleware middleware (b9c035b)
  • add Popover component (c8964bd)
  • add prettier (b1ce63a)
  • add react context to handle todo state (510e470)
  • add reusable IconButton component (f933e30)
  • allow each user to have their own todos (9456ab8)
  • autogenerate release changelog (e463ae2)
  • build and push images in ci (477ad85)
  • create-react-app with typescript and equinor icons (2cfa523)
  • expand and visualize auth states (51c9870)
  • init todo example (8beaf08)
  • official nginx image running unprivileged (fab0c14)
  • pre-commit in CI from pre-commit-config.yaml (5d806b5)
  • pre-commit: Add autoflake to pre-commits (8d97b34), closes #31
  • replace exception handling (35ae0ef)
  • replace prettier and eslint with biome (afe2cb9)
  • response decorator takes Response type as parameter (9a7f228)
  • reusable gh actions workflows (d557ebc)
  • show changelog in documentation (6da9b86)
  • standardized ErrorResponse model (c09e4dc)
  • tutorial on authentication (fd789c0)
  • web: clear input on add-todo (d61adc1)
  • web: visualize loading state better (6a6ab81)

Bug Fixes

  • add error handling of version file fetch (a4f6889)
  • add missing decorators (54fd2f8)
  • add missing dependency without causing infinite loop of rerendering (8f5c01d)
  • add required additional dependecies to eslint pre-commit env (cca8509)
  • add types to fixtures (0528e5b)
  • add venv (d682b08)
  • api: handle lists in create_response (333f7d4)
  • api: make health-check return PlainTextResponse (12d5169)
  • api: raise MissingPrivilegeException when relevant (0c55af3)
  • api: raise MissingPrivilegeException when relevant (613cc42)
  • api: remove empty default pydantic field in models (0424282)
  • cast variable that cannot be undefined to boolean (372f781)
  • delete non existing item should return 404 (4341416)
  • dev: env_file in docker-compose.override.yml (PR #39) (2aa80bd)
  • disable pull (de2d045)
  • docs reference out of date (bd4cc8d)
  • duplicated pre-commit hook (a21f5a6)
  • extras typing is not always dict[str,str] (7ba0694)
  • fix mypy errors (d9543c1)
  • fix pytest_plugin import error (b521819)
  • lock cryptography dependency since a bad new release. Set authentication scheme to allow for no tokens. Exclude some file from pre-commit (ea6a931)
  • make authentication work again (3e8da0f)
  • make todo title required, not optional (bc8dab6)
  • make useTodos simpler to use (e8f0a18)
  • move Response decorator to controllers (bd36b4a)
  • only allow users to delete their own todos (1cf1e7a)
  • only run safety hook once (bc33372)
  • poetry command (ccbb2e1)
  • pre-commit (5192d0e)
  • python-version (a934109)
  • ran api again (afa8158)
  • ran generator (19ff51b)
  • remove /api as root path. (208ceb9)
  • remove encryption.py (a500444)
  • replace deprecated output definition (c53b003)
  • replace gunicorn with horizontal scaling (a8baa0f)
  • resolve PR feedback (bd3debe)
  • set correct base path for docs (0dda0b2)
  • set correct type on todo local state (2a4020c)
  • test suite (31da3f7)
  • tests: fix up integration tests with per-user todos (b7cc0ca)
  • The template no longer use the node image in production (f9b68d9)
  • turn off eslint rules that are unnecessary or might conflict with prettier (d6beaf7)
  • typo (fb557b8)
  • update old references (5152a1f)
  • update to match new parameters for get pydantic json schema (c6b14a8)
  • use const on variable that is never reassigned (9f7c543)
  • web: adding todo item now clears input. (82e6f6b)
  • web: correct base path (a3872d5)
  • yarn build again (dfc48fd)

Documentation

  • Adapt config file (8b47298), closes #70
  • add application tree (59aaf94)
  • add configuration section to extending the API page (928e7f5)
  • add data provider (e3f0055)
  • add example to git commit format (9e7f1dc)
  • add glossary of terms and explain enterprise vs application logic (edc720f)
  • add how to extend the web (6700cbd)
  • add how to tests components (ba78d28)
  • add link to API docs (e5f8638)
  • add link to demo (f1475f6)
  • add missing environment variables descriptions (0b228fb)
  • add on push to main branch badge (657f3b7)
  • add overview (8287989)
  • add what is fastapi (bbec23b)
  • addd list of features (e8304a3)
  • allow and move plantuml directly in markdown (99bacb4)
  • ci: add comment to azure login (f6b9c96)
  • Delete blog (85f43fd), closes #70
  • Fix baseUrl bug (b14aa8c), closes #70
  • fix broken links (de60d94)
  • Fix broken links (6b18ff5), closes #70
  • Fix frontpage (c304538), closes #70
  • Generate docs on feature branch push (73fa918), closes #70
  • how to contribute to template (526b4b0)
  • how to register a feature to the app (efdba6b)
  • minor change to clean architecture (ac0b607)
  • Move and adapt markdown files (8dfc7d9), closes #70
  • move contributing to own page (cc19714)
  • move glossary of terms to end of page and explain the two business logic layers (02f9b70)
  • Move images (ac1e323), closes #70
  • overview of github workflows (839d1b5)
  • overview of pre-commit hooks (e479932)
  • re-structure documentation (4187823)
  • re-write intro to controllers (cb1b28a)
  • Readd puml files (290eb69), closes #70
  • remove calculations from description (178829d)
  • Remove comment (1626088), closes #70
  • Remove docs build on feature push (4d41153), closes #70
  • Remove error in documentation docs (5d1075f), closes #70
  • remove key features (1e97ba8)
  • Remove references to Doctave (6949799), closes #70
  • remove simulations from API description (ac49fdd)
  • Remove unused docusaurus files (13a6f92), closes #70
  • remove web app image in introduction (0bf620d)
  • rename of the application (e7c6952)
  • Rename Tutorial to Docs (1c92b9e)
  • Respect browser color scheme (63289ba), closes #70
  • revert left to right for diagrams (6ab6ea7)
  • rewrite 01-setup Yarn PnP in VSCode (df4c7d0)
  • Run create-docusaurus (c52ff06), closes #70
  • style feature list (568539e)
  • turn puml diagrams sideways (a7a35fa)
  • Update documentation version (76f1aaa), closes #70
  • Update github workflow (e2eba4a), closes #70
  • update link to radix playground (6c932c3)
  • use tabs to show platform specific options (2216c0a)

Styles

  • fix typos + add codespell pre-commit hook (025ad8a)
  • Make eslint.js and index.js prettier (9d22357), closes #44
  • run biome (27b2b15)

Miscellaneous Chores

  • add action to initialize state fetched asynchronously (d85b789)
  • add eslint for typescript (a6f8e7f)
  • add issue templates and labels (32cadec)
  • add labels to cover conventional commits (57dd018)
  • add script to run eslint (2c8e006)
  • add union type to support broader area of usage (f253241)
  • add vitest (6c45021)
  • Add yarn upgrade-interactive (91d998f)
  • api: return Pydantic model instead of dict (427a963)
  • build: add pre-commit hook to generate ts api (caec39e)
  • build: delete old generated ts files (12c8766)
  • build: generate new files, and use them (5c16ae9)
  • build: install new api codegen tool (6318b37)
  • bump web node image version (337ed61)
  • configure prettier recommended plugin (40d8527)
  • dev: add black formatter location to specify line length (2755265)
  • dev: make CRA websocket use port 80 (53d2518)
  • disable unnecessary rules after the new jsx transform from React 17 (9109e77)
  • document bandit exception (b3a5460)
  • fix file-formatter hooks exclude regex (61a3e36)
  • fix yarn pnp runtime files (no-install setup) (1940186)
  • forward ref to IconButton (02b1edd)
  • generate api with axios (a2fea02)
  • ignore correct path eslint (8c1a88e)
  • ignore diffs on yarn plugins (78017e5)
  • ignore generated folder on formatting/linting (8471ab1)
  • init api and web (5602961)
  • main: release 1.0.0 (b490f57)
  • main: release 1.1.0 (0fc8052)
  • main: release 1.1.1 (89d74cb)
  • main: release 1.2.0 (48fe424)
  • main: release 1.2.1 (0b2bcc3)
  • main: release 1.3.0 (1d8d8bb)
  • main: release 1.4.0 (0c37123)
  • pre-commit: Change from autoflake to pycln (2104864), closes #31
  • pre-commit: Make local tests run on windows (8171738)
  • pre-commit: Move autoflake before isort (984f69e)
  • prettier ignores files in node_modules by default (23da6e5)
  • remove conditional render (36745ec)
  • remove dead links to demo application (e6dd31d)
  • remove empty catch (0264cb5)
  • remove flake8 file from Dockerfile (fe48903)
  • remove old yarn-2 stuff (ddbb339)
  • remove package-lock (4ea4417)
  • remove PnP (5263327)
  • remove react-app from eslint extends (debatable) (1f955d6)
  • remove redundant conditional (925d5b4)
  • remove safety from dependencies (0e69345)
  • remove safety from pre-commit (d0719fd)
  • remove unused export (48199e7)
  • replace deprecated pytest function (d35b0c3)
  • set language version interrogate (57032e8)
  • substitute HashRouter with BrowserRouter in web app (c2230d5)
  • type CommitInfo (2179e13)
  • typing errors (1ebe695)
  • Update all web packages (a193af5)
  • update dependencies (fb2cf50)
  • update dependencies (67061eb)
  • update gitignore (995ee82)
  • update poetry.lock (ce07368)
  • update sdks (385a55e)
  • upgrade release-please (381ee02)
  • upgrade versions (bc9f6a3)
  • upgrade versions (041f78e)
  • vscode: Stop git ignoring vscode settings (2b643d1), closes #44
  • yarn: Stop running redundant yarn install (4841577), closes #44
  • yarn: Use Yarn Zero-Install (ae03fa6), closes #44

Code Refactoring

  • adding middleware and exception handlers recommended way (11384e9)
  • all files under feaures (10df906)
  • api: fix type errors in vscode (fd40ccb)
  • api: replace response_class with return type annotations (b1fa3bd)
  • change test URL to match root path (7c66513)
  • ci: extract ghcr login into separat step (0d90fe0)
  • ci: remove crazy-max external action (b41990d)
  • configure prettier on src folder (14d63aa)
  • conform to snake_case filenames (018918e)
  • create empty yarn.lock (39050e7)
  • improve type-strictness (961a7b2)
  • memoize todoAPI, closes #199 (35059fa)
  • migrate to pydantic v2 (7b0099b)
  • mocking database using mongomock (19b7023)
  • move default mongo client outside (9c241ff)
  • move default react eslint config from package.json to .eslintrc (bbcf3b5)
  • move dependency to API to useTodoAPI hook (4055f89)
  • move todo component out from App.tsx (edfd9f6)
  • remove empty catch (f4024bf)
  • remove old repository mock (624cf0a)
  • remove prefix in API url path (bc99f93)
  • remove pyproject.toml parsing with extra-files (c1d812a)
  • remove repeated code (DRY) (c5e6aa1)
  • remove tool versions file (480e38e)
  • remove unused className (1ee3eff)
  • remove unused doctave file (c42fdeb)
  • rename infrastructure to data_providers (8630fb7)
  • rename list() member-function to list_collection (7ef87c0)
  • rename popover state setter (500ec0a)
  • rename unit tests from infrastructure to data providers (bbd21ba)
  • render TodoApp.tsx as single component in App (f823831)
  • replace python-jose with pyjwt (0d01e42)
  • rework design (eds) (f3db74a)
  • rewrite logger middleware to be a 'pure ASGI' middleware (309620e)
  • separate responsibilities by moving useEffect to a custom hook (cc33a5d)
  • structure web to group files by feature (cb5a09b)
  • update some react/axios-related types (43e22fb)
  • update typing to python 3.10+ syntax (245c699)
  • use <Icon> data prop instead of name (5f142a9)
  • use case responses decorator instead of use case executor (d0af7e4)
  • use common toggle function (ab78e1f)
  • use default URL for docs and openapi specification (8b11fed)
  • use descriptive property name (80af660)
  • use IconButton (c3d236a)
  • use IconButton to reduce complexity of TodoItem (3bb232f)
  • Use NginX as web server (3c6ebd9)
  • use Popover component (270f2ea)
  • use settings in pyproject.toml for pre commit hooks related to python (19c397f)
  • use TodoContext to handle todos state (7d6cc34)
  • use version from pyproject.toml in docs (015206c)
  • workflow: Fix linting errors (8ea9f69)
  • workflow: rename and restructure workflows (f08fffa)

Tests

  • add jsx-a11y to check accessibility rules on jsx elements (77b865d)
  • add rules of hooks (4d0d771)
  • add some simple web tests (81fde9c)
  • add unit and integration tests to exception handler (1d32e62)
  • docs: Add testing of docs (08d8c23)
  • mock authorization (618258c)
  • move pytest configuration to pyproject.toml (a5eff87)
  • Upgrade pre-commits (bd8f110)

Build System

  • add mongodb to run in radix (43faa80)
  • add path to init.sh to cmd (10feabb)
  • add react-oauth2-code-pkce (06b2a27)
  • add typescript plugin (83ade0c)
  • adding missing packges (02a92ca)
  • api crashes fix (e94a17e)
  • api: add requests library (4c4790d)
  • bump python version to 3.11 (225a530)
  • bump versions in pyproject.toml (b185366)
  • ci/cd: update flake8 repo location (e6953ad)
  • deps: bump certifi from 2022.12.7 to 2023.7.22 in /api (a9ab785)
  • deps: update react-oauth-code-pkce (37f6008)
  • enable auth for web in readix (d8c6797)
  • enable scripts to build necessary packages (YN0007) (f1cf2c3)
  • fix mac m1 virtiofs docker problem (8c017a6)
  • missing peer dependencies (YN0002) (9e8981d)
  • move config of codespell to pyproject.toml (f3d4fa7)
  • radix: add missing db environment variables for api (cc8ee59)
  • radix: add missing port definition (fbf548e)
  • radix: add missing root password for mongodb (71de476)
  • radix: add more resources to api (f18518a)
  • radix: non root mongodb image (a8a60f1)
  • run as non-root (a5a255f)
  • set oauth client id and audience (1fc42ec)
  • set yarn version (afb5834)
  • styled components post-install causing noise in yarn pnp (03dfac0)
  • Update api packages (9dc46b4)
  • update environment name (2c40003)
  • update OAUTH_AUDIENCE settings (c38c8e2)
  • web: replace cra and webpack with vite (4f67778)
  • yarn: Migrate the lockfile (2e71fba), closes #44
  • yarn: Set Yarn to version berry (e2a3352), closes #44
  • yarn: Swithc to Plug'n'Play setup (751640e), closes #44
  • yarn: Update Dockerfile (78bddad), closes #44
  • yarn: Update gitignore (a527bec), closes #44
  • yarn: Update yarn commands (5a0cbd2), closes #44

Continuous Integration

  • activate publish (cc14523)
  • add build and deploy settings for production (02dbc99)
  • add check to typescript-client to ensure right api-spec is used (edc4621)
  • Add rollback workflow (b1cca70), closes #153
  • allow publishing multiple tags at once (4c5d867), closes #153
  • api: enable ruff autofix (aeaac4d)
  • api: enable upgradepy (59c75f7)
  • api: replace flake8 with ruff (180a48c)
  • bump pre-commit hooks (24455ca)
  • bump pre-commit hooks (9a0cea7)
  • call correct workflow file (cb2c2eb)
  • change oauth redurect url to radix playground (655c55f)
  • Change version logging format on build (49ca893), closes #154
  • correct permissions (6d9d563)
  • correct version path for web (781cef2)
  • disable deploy workflows (7f3e275)
  • enable publish latest (3716ee6)
  • enforce conventional commits (c0a40b0)
  • Fix bug in publish docs (a696a33)
  • Include all commit types in changelog (73cfaaa)
  • login as the service principal to request an access token (fabe3b4)
  • pass tag name to publish-image workflow (dcedc16), closes #153
  • pipeline not running (4b5e587)
  • pre-commit: add end-of-file-fixer hook (cea07f1)
  • pre-commit: add no-commit-to-branch hook (073879c)
  • pre-commit: make convential commit hook run (d50f01d)
  • pre-commit: update hook versions (a5bd7d3)
  • publish nginx image to docker registry (939a29c)
  • release to production on release created (b3e5e57)
  • remove pycln (9614b7e)
  • remove secret as input to reusable workflow (1ec6cbb)
  • remove unused code (fda1325)
  • replace local mypy with pre-commit hook (4cee89e)
  • run pytest integrations tests (0fff7a3)
  • set correct oauth redirect url for test environment (3c5db08)
  • set correct radix environment to deploy for latest (aee20af)
  • specify playground context (142bc13)
  • update azure auth configuration (fb02376)
  • use ruff implementation of isort and bandit (1151ec4)

title: "Changelog" +hide_title: true +sidebar_label: "Changelog" +id: "changelog"

slug: "/changelog"

Warning: This is the development version.

Changelog

All notable changes to this project will be documented in this file. See standard-version for commit guidelines.

1.5.0 (2024-09-04)

Features

  • add Popover component (c8964bd)
  • add react context to handle todo state (510e470)
  • add reusable IconButton component (f933e30)
  • replace exception handling (35ae0ef)
  • replace prettier and eslint with biome (afe2cb9)

Bug Fixes

  • docs reference out of date (bd4cc8d)
  • extras typing is not always dict[str,str] (7ba0694)
  • make authentication work again (3e8da0f)
  • mypy error (66303aa)
  • ran api again (afa8158)
  • ran generator (19ff51b)
  • replace gunicorn with horizontal scaling (a8baa0f)
  • The template no longer use the node image in production (f9b68d9)
  • update old references (5152a1f)
  • update to match new parameters for get pydantic json schema (c6b14a8)

1.4.0 (2023-03-01)

Features

Bug Fixes

  • add error handling of version file fetch (a4f6889)
  • api: handle lists in create_response (333f7d4)
  • api: make health-check return PlainTextResponse (12d5169)
  • api: remove empty default pydantic field in models (0424282)
  • remove /api as root path. (208ceb9)
  • replace deprecated output definition (c53b003)

Tests

Build System

  • add typescript plugin (83ade0c)
  • ci/cd: update flake8 repo location (e6953ad)
  • enable scripts to build necessary packages (YN0007) (f1cf2c3)
  • missing peer dependencies (YN0002) (9e8981d)
  • set yarn version (afb5834)

Miscellaneous Chores

Code Refactoring

  • api: replace response_class with return type annotations (b1fa3bd)
  • ci: extract ghcr login into separate step (0d90fe0)
  • ci: remove crazy-max external action (b41990d)
  • create empty yarn.lock (39050e7)
  • separate responsibilities by moving useEffect to a custom hook (cc33a5d)
  • workflow: Fix linting errors (8ea9f69)
  • workflow: rename and restructure workflows (f08fffa)

Continuous Integration

  • Add rollback workflow (b1cca70), closes #153
  • allow publishing multiple tags at once (4c5d867), closes #153
  • bump pre-commit hooks (9a0cea7)
  • change oauth redurect url to radix playground (655c55f)
  • Change version logging format on build (49ca893), closes #154
  • correct permissions (6d9d563)
  • Fix bug in publish docs (a696a33)
  • Include all commit types in changelog (73cfaaa)
  • login as the service principal to request an access token (fabe3b4)
  • pass tag name to publish-image workflow (dcedc16), closes #153
  • remove secret as input to reusable workflow (1ec6cbb)
  • specify playground context (142bc13)

Documentation

  • add what is fastapi (bbec23b)
  • ci: add comment to azure login (f6b9c96)
  • rewrite 01-setup Yarn PnP in VSCode (df4c7d0)
  • update link to radix playground (6c932c3)

1.3.0 (2022-11-11)

Features

  • allow each user to have their own todos (9456ab8)

Bug Fixes

  • add missing dependency without causing infinite loop of rerendering (8f5c01d)
  • api: raise MissingPrivilegeException when relevant (0c55af3)
  • api: raise MissingPrivilegeException when relevant (613cc42)
  • make todo title required, not optional (bc8dab6)
  • only allow users to delete their own todos (1cf1e7a)
  • test suite (31da3f7)
  • tests: fix up integration tests with per-user todos (b7cc0ca)

1.2.1 (2022-11-09)

Bug Fixes

  • web: adding todo item now clears input. (82e6f6b)

1.2.0 (2022-11-09)

Features

  • expand and visualize auth states (51c9870)
  • web: clear input on add-todo (d61adc1)
  • web: visualize loading state better (6a6ab81)

Bug Fixes

  • make useTodos simpler to use (e8f0a18)

1.1.1 (2022-11-04)

Bug Fixes

1.1.0 (2022-11-04)

Features

  • standardized ErrorResponse model (c09e4dc)

Bug Fixes

  • add types to fixtures (0528e5b)
  • delete non existing item should return 404 (4341416)

1.0.0 (2022-09-07)

Features

  • add auth (a201f13)
  • add axios (88448c2)
  • add equinor design system (b96d4da)
  • add equinor typeface (53a7423)
  • add eslint to pre-commit (20c872d)
  • Add extra checks to pre-commit and run safety in venv (27a6cbe)
  • add flake8, safety and pytests to pre-commit (1917997)
  • add mypy type checking to pre-commit (437cedd)
  • add prettier (b1ce63a)
  • autogenerate release changelog (e463ae2)
  • build and push images in ci (477ad85)
  • create-react-app with typescript and equinor icons (2cfa523)
  • init todo example (8beaf08)
  • official nginx image running unprivileged (fab0c14)
  • pre-commit in CI from pre-commit-config.yaml (5d806b5)
  • pre-commit: Add autoflake to pre-commits (8d97b34), closes #31
  • response decorator takes Response type as parameter (9a7f228)
  • reusable gh actions workflows (d557ebc)
  • show changelog in documentation (6da9b86)
  • tutorial on authentication (fd789c0)

Bug Fixes

  • add missing decorators (54fd2f8)
  • add required additional dependencies to eslint pre-commit env (cca8509)
  • add venv (d682b08)
  • cast variable that cannot be undefined to boolean (372f781)
  • dev: env_file in docker-compose.override.yml (PR #39) (2aa80bd)
  • disable pull (de2d045)
  • duplicated pre-commit hook (a21f5a6)
  • fix mypy errors (d9543c1)
  • fix pytest_plugin import error (b521819)
  • lock cryptography dependency since a bad new release. Set authentication scheme to allow for no tokens. Exclude some file from pre-commit (ea6a931)
  • move Response decorator to controllers (bd36b4a)
  • only run safety hook once (bc33372)
  • poetry command (ccbb2e1)
  • pre-commit (5192d0e)
  • python-version (a934109)
  • remove encryption.py (a500444)
  • set correct base path for docs (0dda0b2)
  • set correct type on todo local state (2a4020c)
  • turn off eslint rules that are unnecessary or might conflict with prettier (d6beaf7)
  • typo (fb557b8)
  • use const on variable that is never reassigned (9f7c543)
  • web: correct base path (a3872d5)
  • yarn build again (dfc48fd)
+ + + + \ No newline at end of file diff --git a/docs/contribute/development-guide/coding/architecture/index.html b/docs/contribute/development-guide/coding/architecture/index.html new file mode 100644 index 00000000..e91e5875 --- /dev/null +++ b/docs/contribute/development-guide/coding/architecture/index.html @@ -0,0 +1,16 @@ + + + + + +Architecture overview | Template FastAPI React + + + + +
+

Architecture overview

Architecture diagrams

We are using c4model for showing architecture diagrams.

Level 1 - System Context diagram

The Context diagram is a good starting point for diagramming and documenting a software system, allowing you to step back and see the big picture. Here we draw a diagram showing the system as a box in the centre, surrounded by its users and the other systems that it interacts with.

System context diagram

Level 2 - Container diagram

Once you understand how your system interacts with users and external systems, a useful next step is to zoom-in to the system boundary with a Container diagram. A container is something like a server-side web application, single-page application, desktop application, mobile app, database schema, file system, etc. Essentially, a container is a separately runnable/deployable unit (e.g. a separate process space) that executes code or stores data.

Container diagram

The use cases and entities are the heart of our application and should have a minimal set of external library dependencies.

Level 3 - Component diagram

Next you can zoom in and decompose each container further to identify the major structural building blocks and their interactions.

The Component diagram shows how a container is made up of a number of components, what each of those components are, their responsibilities and the technology/implementation details.

Component diagram

Clean architecture

We follow the Clean Architecture style and structure the codebase accordingly for our API.

What is Clean Architecture?

It is a layered approach for a more civilized age.

Clean architecture aims to divide a big project into layers and pieces (classes, entities, modules etc.), and to make them independent of each other, so that our big and complex project becomes more maintainable, flexible and easy to work on together.

Clean Architecture

The key idea behind this diagram is that the application should be divided into layers (there can be any amount of layers). The inner layers must not know anything about the outer ones; all dependencies are directed towards the center. The further a layer is from the center, the more it knows about "non-business" details of the application (e.g. which framework is used is part of the outermost layers).

The idea to keep the core business logic (entities) and application logic (use cases) at the center of the solution structure, and independent of frameworks, databases, and external parts (the two outer layers). This allows the core part to be adaptive and flexible enough to deal with changing technology and interfaces, so that frameworks, databases, and external parts can be replaced with minimum efforts.

note
  • The core inner entities and use cases are less likely to change
  • The external layers are most likely to change based on technologies, frameworks and so on

The dependency rule

The most important rule is that source code dependencies can only point inwards. Nothing in an inner circle can know anything at all about something in an outer circle. In particular, the name of something declared in an outer circle must not be mentioned by the code in an inner circle. That includes functions, classes. variables, or any other named software entity.

The dependency rule is the underlying rule that makes Clean Architecture work. It says that nothing in an inner circle should depend on anything in an outer circle. For example, Entities know nothing about all the other circles, while the outer layer, know everything about the inner rings. In particular, application and business rules shouldn’t depend on the UI, database, presenters, and so on. These rules allow us to build systems that are simpler to maintain, as changes in outer circles won’t impact inner ones.

info

The inner circle is not allowed to know anything about the outer circle.

Talk inward with simple structures (dictionaries or classes) and talk outwards through interfaces.

Why Clean Architecture?

  • Loose coupling
    • It becomes easier to modify one small piece of code without it affecting a large part of the app’s code base. This makes it easier to scale the application later on.
  • Testable.
    • It is designed so that every part of the architecture is easy testable. Our tests can be simpler to write, faster and cheaper to maintain.
  • Separation of concern
    • Different modules have specific responsibilities making it easier for modification and maintenance.
  • Framework independent
    • The architecture is framework independent. This means that it doesn’t matter which database, frameworks, UI or external services you are using - the entities and the business logic of the application will always stay the same. When any of the external parts of the system become obsolete, like the database, or the web framework, you can replace those obsolete elements with a minimum of effort.

S.O.L.I.D Principles

  • Single Responsibility
    • Each software component should have only one reason to change – one responsibility.
  • Open-Closed
    • You should be able to extend the behavior of a component, without breaking its usage, or modifying its extensions.
  • Liskov Substitution
    • If you have a class of one type, and any subclasses of that class, you should be able to represent the base class usage with the subclass, without breaking the app.
  • Interface Segregation
    • It’s better to have many smaller interfaces than a large one, to prevent a class from implementing methods that it doesn’t need.
  • Dependency Inversion
    • Components should depend on abstractions rather than concrete implementations. Also higher level modules shouldn’t depend on lower level modules.

Components

Data flow:

Clean Architecture

  • Entities
    • Entities are the domain model that holds data (state) and logic (business rules)
    • Entities may be reused across applications in the same enterprise.
    • Entities must be regular classes, dataclasses, or value objects (meaning if all the properties are the same, the objects are identical).
    • Entities can not depend on anything except other entities.
    • Entities should not be affected by any external change, and should be the most stable code within your application.
  • Use cases
    • Use cases are the application features (it’s what you can do with the application)
      • Each use case should be limited to one feature according to the Single Responsibility Principle.
    • Use cases interact with entities (thus depend on them) and hold logic of the specific application, and typically execute that logic via various repositories or data access layer(s) gateway(s).
      • Use cases may define repository interfaces for the data they require, and one or more repositories will implement the repository interfaces, but the use case doesn’t know where the data is coming from.
    • Use cases throw business specific exceptions.
    • Use cases are not affected by changes in database or controllers.
  • Controllers
    • Controllers execute use cases.
    • They contain no business logic, only conversion logic.
      • Controllers adapt inputs from the outside world into messages the use cases can understand, and in turn adapt responses from the use cases into outputs for the world.
    • You can think of them as entry and exit gates to the use cases. A controller receives a request and returns a response.
    • The controller takes the user input (the request), converts it into the request object defined by the use case and passes the request objects to the use case, and at the end return the response objects.
  • Repositories
    • A repository takes entities and returns entities, hides storage details.
    • Repositories implement interfaces defined by use cases.
      • Could have multiple implementations, e.g. from db or from file system.
    • Hides all details about where the data is from.
      • Can work against local, remote, data services or third party services.

Business rules

The business logic is divided into two layers:

  • The domain layer (aka entities)
  • The application layer (aka use cases)

The domain layer contains the enterprise business logic, and the application layer contains the application business logic. The difference being that enterprise logic could be shared between systems whereas application logic would typically be specific to single system.

+ + + + \ No newline at end of file diff --git a/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/clients/index.html b/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/clients/index.html new file mode 100644 index 00000000..12c14730 --- /dev/null +++ b/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/clients/index.html @@ -0,0 +1,16 @@ + + + + + +Clients | Template FastAPI React + + + + +
+

Clients

The template already ships with a mongo database client for connecting to MongoDB databases. However, if you need a client that can talk to e.g. PostgreSQL you need to add this.

from typing import Any

from pymongo.cursor import Cursor
from pymongo.database import Database
from pymongo.errors import DuplicateKeyError
from pymongo.mongo_client import MongoClient
from pymongo.results import DeleteResult, InsertManyResult

from common.exceptions import NotFoundException, ValidationException
from config import config
from data_providers.clients.client_interface import ClientInterface

MONGO_CLIENT: MongoClient[dict[str, Any]] = MongoClient(
host=config.MONGODB_HOSTNAME,
port=config.MONGODB_PORT,
username=config.MONGODB_USERNAME,
password=config.MONGODB_PASSWORD,
authSource="admin",
tls=False,
connectTimeoutMS=5000,
serverSelectionTimeoutMS=5000,
retryWrites=False,
)


class MongoDatabaseClient(ClientInterface[dict, str]):
def __init__(self, collection_name: str, database_name: str, client: MongoClient[dict[str, Any]] = MONGO_CLIENT):
database: Database[dict[str, Any]] = client[database_name]
self.database = database
self.collection_name = collection_name
self.collection = database[collection_name]

def wipe_db(self) -> None:
databases = self.database.client.list_database_names()
databases_to_delete = [
database_name for database_name in databases if database_name not in ("admin", "config", "local")
] # Don't delete the mongo admin or local database
for database_name in databases_to_delete:
self.database.client.drop_database(database_name)

def delete_collection(self) -> None:
self.collection.drop()

def create(self, document: dict[str, Any]) -> dict[str, Any]:
try:
result = self.collection.insert_one(document)
return self.get(str(result.inserted_id))
except DuplicateKeyError:
raise ValidationException(message=f"The document with id '{document['_id']}' already exists")

def list_collection(self) -> list[dict[str, Any]]:
return list(self.collection.find())

def get(self, uid: str) -> dict[str, Any]:
document = self.collection.find_one(filter={"_id": uid})
if document is None:
raise NotFoundException
else:
return dict(document)

def update(self, uid: str, document: dict[str, Any]) -> dict[str, Any]:
if self.collection.find_one(filter={"_id": uid}) is None:
raise NotFoundException(extra={"uid": uid})
self.collection.replace_one({"_id": uid}, document)
return self.get(uid)

def delete(self, uid: str) -> bool:
result = self.collection.delete_one(filter={"_id": uid})
return result.deleted_count > 0

def find(self, filter: dict[str, Any]) -> Cursor[dict[str, Any]]:
return self.collection.find(filter=filter)

def find_one(self, filter: dict[str, Any]) -> dict[str, Any] | None:
return self.collection.find_one(filter=filter)

def insert_many(self, items: list[dict[str, Any]]) -> InsertManyResult:
return self.collection.insert_many(items)

def delete_many(self, filter: dict[str, Any]) -> DeleteResult:
return self.collection.delete_many(filter)

Testing clients

The test_client fixture are using the mongomock instead of real database.

import pytest

from common.exceptions import NotFoundException, ValidationException
from data_providers.clients.mongodb.mongo_database_client import MongoDatabaseClient


class TestMongoDatabaseClient:
def test_find_one(self, test_client: MongoDatabaseClient):
document = {"_id": "81549300", "name": "hello"}

test_client.collection.insert_one(document)
assert test_client.find_one({"_id": document["_id"]}) == document
assert test_client.find_one({"name": document["name"]}) == document
assert test_client.find_one({"_id": document["_id"], "name": document["name"]}) == document
assert test_client.find_one({"_id": "unknown"}) is None

def test_create(self, test_client: MongoDatabaseClient):
document = {"_id": "987321", "name": "alberto"}
assert test_client.collection.count_documents({}) == 0
result = test_client.create(document)
assert test_client.collection.count_documents({}) == 1
assert result == document
# try to create entry with already existing id:
with pytest.raises(ValidationException):
test_client.create(document)

def test_get(self, test_client: MongoDatabaseClient):
document = {"_id": "81549300", "name": "hello"}
test_client.collection.insert_one(document)
assert test_client.get(document["_id"]) == document
with pytest.raises(NotFoundException):
test_client.get("unknown")

def test_find(self, test_client: MongoDatabaseClient):
documents = [
{"_id": "81549300", "name": "hello"},
{"_id": "1a2b", "name": "pingvin"},
{"_id": "987321", "name": "alberto"},
{"_id": "987456", "name": "alberto"},
]
test_client.collection.insert_many(documents)
assert list(test_client.find({})) == documents
assert list(test_client.find({"name": "alberto"})) == [
documents[2],
documents[3],
]

def test_list(self, test_client: MongoDatabaseClient):
documents = [
{"_id": "81549300", "name": "hello"},
{"_id": "1a2b", "name": "pingvin"},
{"_id": "987321", "name": "alberto"},
{"_id": "987456", "name": "alberto"},
]
test_client.collection.insert_many(documents)
assert test_client.list_collection() == documents

def test_update(self, test_client: MongoDatabaseClient):
document = {"_id": "987321", "name": "alberto"}
test_client.collection.insert_one(document)
instance = document
instance_id = instance["_id"]
instance["name"] = "Francois"
assert test_client.find_one({"_id": instance_id}) != instance["name"]
result = test_client.update(instance_id, instance)
assert result["name"] == instance["name"]
assert test_client.find_one({"_id": instance_id}) == instance
# update with non-existing id
entries = list(test_client.find({}))
with pytest.raises(NotFoundException):
assert test_client.update("instance_id", instance)
assert list(test_client.find({})) == entries

def test_delete(self, test_client: MongoDatabaseClient):
document = {"_id": "987321", "name": "alberto"}
test_client.collection.insert_one(document)
test_client.delete(document["_id"])
assert test_client.collection.count_documents({}) == 0
assert test_client.find_one({"_id": document["_id"]}) is None
# try to delete the same entry again
test_client.delete(document["_id"])
assert test_client.collection.count_documents({}) == 0

def test_delete_collection(self, test_client: MongoDatabaseClient):
documents = [
{"_id": "81549300", "name": "hello"},
{"_id": "1a2b", "name": "pingvin"},
{"_id": "987321", "name": "alberto"},
{"_id": "987456", "name": "alberto"},
]
test_client.collection.insert_many(documents)
# add second collection to TestDB:
test_client.database.create_collection("peppers")
active_collections = test_client.database.list_collection_names()
number_of_entries_in_original_collection = test_client.collection.count_documents({})
assert number_of_entries_in_original_collection > 0
assert len(active_collections) == 2
test_client.delete_collection()
assert test_client.database.list_collection_names() == ["peppers"]
assert test_client.collection.count_documents({}) == 0

def test_create_in_empty_database(self, test_client: MongoDatabaseClient):
document = {"_id": "1a2b", "name": "pingvin"}
assert test_client.collection.count_documents({}) == 0
result = test_client.create(document)
assert test_client.collection.count_documents({}) == 1
assert result == document

def test_wipe_db(self, test_client: MongoDatabaseClient):
documents = [
{"_id": "81549300", "name": "hello"},
{"_id": "1a2b", "name": "pingvin"},
{"_id": "987321", "name": "alberto"},
{"_id": "987456", "name": "alberto"},
]
test_client.collection.insert_many(documents)
original_database = test_client.database.client.list_database_names()[0]
collections_in_original_db = test_client.database.client[original_database].list_collection_names()
# add admin database (admin collection should not be wiped)
test_client.database.client["admin"].create_collection("vips")
active_dbs = test_client.database.client.list_database_names()
collections_in_admin_db = test_client.database.client["admin"].list_collection_names()
assert len(active_dbs) == 2
assert len(collections_in_original_db) == 1
assert len(collections_in_admin_db) == 1
test_client.wipe_db()
assert test_client.database.client.list_database_names() == ["admin"]
assert test_client.database[collections_in_original_db[0]].count_documents({}) == 0
+ + + + \ No newline at end of file diff --git a/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/index.html b/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/index.html new file mode 100644 index 00000000..c4b289f0 --- /dev/null +++ b/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/index.html @@ -0,0 +1,19 @@ + + + + + +Adding data providers | Template FastAPI React + + + + +
+

Adding data providers

Data providers are part of the infrastructure layer, which is responsible for external infrastructure communications +like database storage, file system, and external systems. The infrastructure layer is the layer that contains all the +concrete implementations of the application. It implements interfaces defined in use cases, to provide access to +external systems.

├── data_providers/
│ ├── clients/
│ ├── repository_interfaces/
│ └── repositories/
└── ...

w

+ + + + \ No newline at end of file diff --git a/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repositories/index.html b/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repositories/index.html new file mode 100644 index 00000000..a275ba3b --- /dev/null +++ b/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repositories/index.html @@ -0,0 +1,18 @@ + + + + + +Repositories | Template FastAPI React + + + + +
+

Repositories

Concrete implementations of repository interfaces. A repository takes entities and returns entities, while hiding +storage details. It can work against local, remote, data services or third party services.

from typing import Any

from common.exceptions import NotFoundException
from config import config
from data_providers.clients.client_interface import ClientInterface
from data_providers.clients.mongodb.mongo_database_client import MongoDatabaseClient
from features.todo.entities.todo_item import TodoItem
from features.todo.repository.todo_repository_interface import TodoRepositoryInterface


def to_dict(todo_item: TodoItem) -> dict[str, Any]:
_dict: dict[str, Any] = todo_item.__dict__
_dict["_id"] = todo_item.id
return _dict


def get_todo_repository() -> "TodoRepository":
mongo_database_client = MongoDatabaseClient(collection_name="todos", database_name=config.MONGODB_DATABASE)
return TodoRepository(client=mongo_database_client)


class TodoRepository(TodoRepositoryInterface):
client: ClientInterface

def __init__(self, client: ClientInterface):
self.client = client

def update(self, todo_item: TodoItem) -> TodoItem:
updated_todo_item = self.client.update(todo_item.id, to_dict(todo_item))
return TodoItem.from_dict(updated_todo_item)

def delete(self, todo_item_id: str) -> None:
is_deleted = self.client.delete(todo_item_id)
if not is_deleted:
raise NotFoundException

def delete_all(self) -> None:
self.client.delete_collection()

def get(self, todo_item_id: str) -> TodoItem:
todo_item = self.client.get(todo_item_id)
return TodoItem.from_dict(todo_item)

def create(self, todo_item: TodoItem) -> TodoItem | None:
inserted_todo_item = self.client.create(to_dict(todo_item))
return TodoItem.from_dict(inserted_todo_item)

def get_all(self) -> list[TodoItem]:
todo_items: list[TodoItem] = []
for item in self.client.list_collection():
todo_items.append(TodoItem.from_dict(item))
return todo_items

def find_one(self, filter: dict[str, Any]) -> TodoItem | None:
todo_item = self.client.find_one(filter)
if todo_item:
return TodoItem.from_dict(todo_item)
return None

Testing repositories

Use the test_client fixture as input to TodoRepository. The test_client fixture are using the mongomock instead of +real database.

import pytest

from common.exceptions import NotFoundException, ValidationException
from data_providers.clients.mongodb.mongo_database_client import MongoDatabaseClient
from features.todo.entities.todo_item import TodoItem
from features.todo.repository.todo_repository import TodoRepository


class TestTodoRepository:
@pytest.fixture(autouse=True)
def _setup_repository(self, test_client: MongoDatabaseClient):
self.repository = TodoRepository(client=test_client)

def test_create(self):
todo_item = TodoItem(id="1234", title="todo 1", user_id="xyz")
self.repository.create(todo_item)
assert len(self.repository.get_all()) == 1

def test_create_already_exists(self):
todo_item_1 = TodoItem(id="1234", title="todo 1", user_id="xyz")
self.repository.create(todo_item_1)
with pytest.raises(ValidationException):
todo_item_2 = TodoItem(id="1234", title="todo 1", user_id="xyz")
self.repository.create(todo_item_2)

def test_find_item_that_exist(self):
documents = [
{"_id": "81549300", "title": "todo 1", "user_id": "xyz"},
{"_id": "1a2b", "title": "todo 2", "user_id": "xyz"},
{"_id": "987321", "title": "todo 3", "user_id": "abc"},
{"_id": "987456", "title": "todo 4", "user_id": "abc"},
]
self.repository.client.insert_many(documents)
todo_item = self.repository.find_one({"title": "todo 2", "user_id": "xyz"})
assert todo_item is not None and todo_item.id == "1a2b"

def test_find_item_that_does_not_exist(self):
documents = [
{"_id": "81549300", "title": "todo 1", "user_id": "xyz"},
{"_id": "1a2b", "title": "todo 2", "user_id": "xyz"},
{"_id": "987321", "title": "todo 3", "user_id": "abc"},
{"_id": "987456", "title": "todo 4", "user_id": "abc"},
]
self.repository.client.insert_many(documents)
assert self.repository.find_one({"_id": "invalid"}) is None

def test_find_item_of_other_user(self):
documents = [
{"_id": "81549300", "title": "todo 1", "user_id": "xyz"},
{"_id": "1a2b", "title": "todo 2", "user_id": "xyz"},
{"_id": "987321", "title": "todo 3", "user_id": "abc"},
{"_id": "987456", "title": "todo 4", "user_id": "abc"},
]
self.repository.client.insert_many(documents)
assert self.repository.find_one({"_id": "1a2b", "user_id": "abc"}) is None

def test_get_item_that_does_exist(self):
documents = [
{"_id": "81549300", "title": "todo 1", "user_id": "xyz"},
{"_id": "1a2b", "title": "todo 2", "user_id": "xyz"},
{"_id": "987321", "title": "todo 3", "user_id": "abc"},
{"_id": "987456", "title": "todo 4", "user_id": "abc"},
]
self.repository.client.insert_many(documents)
assert self.repository.get("987321").id == "987321"

def test_get_item_that_does_not_exist(self):
documents = [
{"_id": "81549300", "title": "todo 1", "user_id": "xyz"},
{"_id": "1a2b", "title": "todo 2", "user_id": "xyz"},
{"_id": "987321", "title": "todo 3", "user_id": "abc"},
{"_id": "987456", "title": "todo 4", "user_id": "abc"},
]
self.repository.client.insert_many(documents)
with pytest.raises(NotFoundException):
self.repository.get("invalid")

def test_update_item(self):
todo_item = TodoItem(id="81549300", title="todo 1", user_id="xyz")
self.repository.create(todo_item)
todo_item_to_update = TodoItem(id="81549300", title="Updated title", user_id="xyz")
self.repository.update(todo_item=todo_item_to_update)
assert self.repository.get("81549300").title == "Updated title"

def test_update_item_that_does_not_exist(self):
todo_item_to_update = TodoItem(id="unknown", title="Updated title", user_id="xyz")
with pytest.raises(NotFoundException):
self.repository.update(todo_item_to_update)

def test_delete(self):
documents = [
{"_id": "81549300", "title": "todo 1", "user_id": "xyz"},
{"_id": "1a2b", "title": "todo 2", "user_id": "xyz"},
]
self.repository.client.insert_many(documents)
assert len(self.repository.get_all()) == 2
self.repository.delete("81549300")
assert len(self.repository.get_all()) == 1
assert self.repository.get_all() == [self.repository.get("1a2b")]

def test_delete_all(self):
documents = [
{"_id": "81549300", "title": "todo 1", "user_id": "xyz"},
{"_id": "1a2b", "title": "todo 2", "user_id": "xyz"},
]
self.repository.client.insert_many(documents)
assert len(self.repository.get_all()) == 2
self.repository.delete_all()
assert len(self.repository.get_all()) == 0
+ + + + \ No newline at end of file diff --git a/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repository-interfaces/index.html b/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repository-interfaces/index.html new file mode 100644 index 00000000..c71bfe68 --- /dev/null +++ b/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repository-interfaces/index.html @@ -0,0 +1,18 @@ + + + + + +Repository interfaces | Template FastAPI React + + + + +
+

Repository interfaces

A repository interface describes the incoming parameters and the type of the object returned by a repository. The +purpose of these interfaces is to allow use-cases to be implementation-agnostic (and thus not depend on an outer layer). +It also allows for mocking of repositories for testing purposes.

from abc import ABCMeta, abstractmethod

from features.todo.entities.todo_item import TodoItem


class TodoRepositoryInterface(metaclass=ABCMeta):
@abstractmethod
def create(self, todo_item: TodoItem) -> TodoItem | None:
raise NotImplementedError

@abstractmethod
def get(self, todo_item_id: str) -> TodoItem:
raise NotImplementedError

@abstractmethod
def update(self, todo_item: TodoItem) -> TodoItem:
raise NotImplementedError

@abstractmethod
def delete(self, todo_item_id: str) -> None:
raise NotImplementedError

@abstractmethod
def get_all(self) -> list[TodoItem]:
raise NotImplementedError
+ + + + \ No newline at end of file diff --git a/docs/contribute/development-guide/coding/extending-the-api/adding-entities/index.html b/docs/contribute/development-guide/coding/extending-the-api/adding-entities/index.html new file mode 100644 index 00000000..1a34a686 --- /dev/null +++ b/docs/contribute/development-guide/coding/extending-the-api/adding-entities/index.html @@ -0,0 +1,18 @@ + + + + + +Adding entities | Template FastAPI React + + + + +
+

Adding entities

Entities form the domain model of the application.

An entity can be an object with methods, or it can be a set of data structures and functions. It should be a regular +class, a dataclass, or a value object (if all the properties are the same, two objects are identical). Entities hold +data (state) and logic reusable for various applications.

from dataclasses import asdict, dataclass, fields


@dataclass(frozen=True)
class TodoItem:
id: str
user_id: str
title: str
is_completed: bool = False

def to_dict(self) -> dict[str, str | bool]:
return asdict(self)

@classmethod
def from_dict(cls, dict_: dict[str, str | bool]) -> "TodoItem":
class_fields = {f.name for f in fields(cls)}
if "_id" in dict_:
dict_["id"] = dict_.pop("_id")
data = {k: v for k, v in dict_.items() if k in class_fields}
return TodoItem(**data) # type:ignore
info

Entities must not depend on anything, except possibly other entities.

Entities should be the most stable code within your application.

Entities should not be affected by any change external to them.

Testing entities

import uuid

from features.todo.entities.todo_item import TodoItem


def test_todo_item_init():
id = str(uuid.uuid4())
todo = TodoItem(id=id, title="title 1", is_completed=False, user_id="xyz")
assert todo.id == id
assert todo.title == "title 1"
assert not todo.is_completed


def test_todo_item_from_dict():
id = str(uuid.uuid4())
init_dict = {"id": id, "title": "title 1", "is_completed": False, "user_id": "xyz"}
todo = TodoItem.from_dict(init_dict)

assert todo.id == id
assert todo.title == "title 1"
assert not todo.is_completed


def test_todo_item_comparison():
id = str(uuid.uuid4())
init_dict = {"id": id, "title": "title 1", "is_completed": False, "user_id": "xyz"}
todo1 = TodoItem.from_dict(init_dict)
todo2 = TodoItem.from_dict(init_dict)

assert todo1 == todo2
+ + + + \ No newline at end of file diff --git a/docs/contribute/development-guide/coding/extending-the-api/adding-features/controllers/index.html b/docs/contribute/development-guide/coding/extending-the-api/adding-features/controllers/index.html new file mode 100644 index 00000000..f73b6eac --- /dev/null +++ b/docs/contribute/development-guide/coding/extending-the-api/adding-features/controllers/index.html @@ -0,0 +1,16 @@ + + + + + +Controller | Template FastAPI React + + + + +
+

Controller

A controller receives a request, then calls a use case, before finally returning a response.

The controller (adapter layer) is responsible for validating and transforming requests into an understandable format for the use cases (application layer). The format is defined inside the use cases by the request and response models. The controller takes the user input (the request), converts it into the request model defined by the use case and passes the request model to the use case, and at the end return the response model.

from fastapi import APIRouter, Depends

from authentication.authentication import auth_with_jwt
from authentication.models import User
from features.todo.repository.todo_repository import get_todo_repository
from features.todo.repository.todo_repository_interface import TodoRepositoryInterface
from features.todo.use_cases.add_todo import (
AddTodoRequest,
AddTodoResponse,
add_todo_use_case,
)
from features.todo.use_cases.delete_todo_by_id import (
DeleteTodoByIdResponse,
delete_todo_use_case,
)
from features.todo.use_cases.get_todo_all import GetTodoAllResponse, get_todo_all_use_case
from features.todo.use_cases.get_todo_by_id import (
GetTodoByIdResponse,
get_todo_by_id_use_case,
)
from features.todo.use_cases.update_todo import (
UpdateTodoRequest,
UpdateTodoResponse,
update_todo_use_case,
)

router = APIRouter(tags=["todos"], prefix="/todos")


@router.post("", operation_id="create")
def add_todo(
data: AddTodoRequest,
user: User = Depends(auth_with_jwt),
todo_repository: TodoRepositoryInterface = Depends(get_todo_repository),
) -> AddTodoResponse:
return add_todo_use_case(data=data, user_id=user.user_id, todo_repository=todo_repository)


@router.get("/{id}", operation_id="get_by_id")
def get_todo_by_id(
id: str,
user: User = Depends(auth_with_jwt),
todo_repository: TodoRepositoryInterface = Depends(get_todo_repository),
) -> GetTodoByIdResponse:
return get_todo_by_id_use_case(id=id, user_id=user.user_id, todo_repository=todo_repository)


@router.delete("/{id}", operation_id="delete_by_id")
def delete_todo_by_id(
id: str,
user: User = Depends(auth_with_jwt),
todo_repository: TodoRepositoryInterface = Depends(get_todo_repository),
) -> DeleteTodoByIdResponse:
return delete_todo_use_case(id=id, user_id=user.user_id, todo_repository=todo_repository)


@router.get("", operation_id="get_all")
def get_todo_all(
user: User = Depends(auth_with_jwt), todo_repository: TodoRepositoryInterface = Depends(get_todo_repository)
) -> list[GetTodoAllResponse]:
return get_todo_all_use_case(user_id=user.user_id, todo_repository=todo_repository) # type: ignore


@router.put("/{id}", operation_id="update_by_id")
def update_todo(
id: str,
data: UpdateTodoRequest,
user: User = Depends(auth_with_jwt),
todo_repository: TodoRepositoryInterface = Depends(get_todo_repository),
) -> UpdateTodoResponse:
return update_todo_use_case(id=id, data=data, user_id=user.user_id, todo_repository=todo_repository)
  • Required
    • The controller needs to be decorated with the create_response decorator, which handles exceptions and returns a unified response type.
    • The controller needs to have set the response_model and request_model, that is used to generate API documentation and used for validation.
  • Optional
    • Add repository interface to handle communication to external services such as databases and inject the repository implementations to the controller endpoint and pass the injected repository implementations to the use case.
note

FastAPI is built around the OpenAPI Specification (formerly known as swagger) standards. In FastAPI, by coding your endpoints, you are automatically writing your API documentation. FastAPI maps your endpoint details to a JSON Schema document. Under the hood, FastAPI uses Pydantic for data validation. With Pydantic along with type hints, you get a nice editor experience with autocompletion.

Testing controllers

Use the test_client fixture to populate the database with test data and test_app fixture to perform REST API calls.

import pytest
from starlette.status import (
HTTP_200_OK,
HTTP_404_NOT_FOUND,
HTTP_422_UNPROCESSABLE_ENTITY,
)
from starlette.testclient import TestClient

from data_providers.clients.client_interface import ClientInterface


class TestTodo:
@pytest.fixture(autouse=True)
def setup_database(self, test_client: ClientInterface):
test_client.insert_many(
[
{"_id": "1", "id": "1", "title": "title 1", "user_id": "nologin"},
{"_id": "2", "id": "2", "title": "title 2", "user_id": "nologin"},
]
)

def test_get_todo_all(self, test_app: TestClient):
response = test_app.get("/todos")
items = response.json()

assert response.status_code == HTTP_200_OK
assert len(items) == 2
assert items[0]["id"] == "1"
assert items[0]["title"] == "title 1"
assert items[1]["id"] == "2"
assert items[1]["title"] == "title 2"

def test_get_todo_by_id(self, test_app: TestClient):
response = test_app.get("/todos/1")

assert response.status_code == HTTP_200_OK
assert response.json()["id"] == "1"
assert response.json()["title"] == "title 1"

def test_get_todo_should_return_not_found(self, test_app: TestClient):
response = test_app.get("/todos/unknown")
assert response.status_code == HTTP_404_NOT_FOUND

def test_add_todo(self, test_app: TestClient):
response = test_app.post("/todos", json={"title": "title 3"})
item = response.json()

assert response.status_code == HTTP_200_OK
assert item["title"] == "title 3"

def test_add_todo_should_return_unprocessable_when_invalid_entity(self, test_app: TestClient):
response = test_app.post("/todos", json=None)

assert response.status_code == HTTP_422_UNPROCESSABLE_ENTITY

def test_update_todo(self, test_app):
response = test_app.put("/todos/1", json={"title": "title 1 updated", "is_completed": False})

assert response.status_code == HTTP_200_OK
assert response.json()["success"]

def test_update_todo_should_return_not_found(self, test_app):
response = test_app.put("/todos/unknown", json={"title": "something", "is_completed": False})
assert response.status_code == HTTP_404_NOT_FOUND

def test_update_todo_should_return_unprocessable_when_invalid_entity(self, test_app: TestClient):
response = test_app.put("/todos/1", json={"title": ""})

assert response.status_code == HTTP_422_UNPROCESSABLE_ENTITY

def test_delete_todo(self, test_app: TestClient):
response = test_app.delete("/todos/1")

assert response.status_code == HTTP_200_OK
assert response.json()["success"]

def test_delete_todo_should_return_not_found(self, test_app: TestClient):
response = test_app.delete("/todos/unknown")
assert response.status_code == HTTP_404_NOT_FOUND
note

Mark it as integration test.

+ + + + \ No newline at end of file diff --git a/docs/contribute/development-guide/coding/extending-the-api/adding-features/index.html b/docs/contribute/development-guide/coding/extending-the-api/adding-features/index.html new file mode 100644 index 00000000..a7b26730 --- /dev/null +++ b/docs/contribute/development-guide/coding/extending-the-api/adding-features/index.html @@ -0,0 +1,16 @@ + + + + + +Adding features | Template FastAPI React + + + + +
+

Adding features

A feature has this structure.

├── todo/
│ ├── use_cases/ - Application logic
│ ├── exceptions.py - Exceptions classes (optional)
│ └── controller.py - The entrypoint
└── ...

Define endpoints in the controller that calls use cases that implements the application logic.

Register a feature

Import the router of the feature and include it to the app.

import click
from fastapi import APIRouter, FastAPI, Security
from starlette.middleware import Middleware

from authentication.authentication import auth_with_jwt
from common.exception_handlers import add_exception_handlers
from common.middleware import LocalLoggerMiddleware, OpenCensusRequestLoggingMiddleware
from common.responses import responses
from config import config
from features.health_check import health_check_feature
from features.todo import todo_feature
from features.whoami import whoami_feature

description_md = """
### Description
A RESTful API for handling todo items.

Anyone in Equinor are authorized to use the API.
* Click **Authorize** to login and start testing.

### Resources
* [Docs](https://equinor.github.io/template-fastapi-react/)
* [Github](https://github.com/equinor/template-fastapi-react)

For questions about usage or expanding the API, create issue on Github or see docs.
"""


def create_app() -> FastAPI:
public_routes = APIRouter()
public_routes.include_router(health_check_feature.router)

authenticated_routes = APIRouter()
authenticated_routes.include_router(todo_feature.router)
authenticated_routes.include_router(whoami_feature.router)

middleware = [Middleware(LocalLoggerMiddleware)]
if config.APPINSIGHTS_CONSTRING:
middleware.append(Middleware(OpenCensusRequestLoggingMiddleware))

app = FastAPI(
title="Template FastAPI React",
version="1.4.0", # x-release-please-version
description=description_md,
responses=responses,
middleware=middleware,
license_info={"name": "MIT", "url": "https://github.com/equinor/template-fastapi-react/blob/main/LICENSE.md"},
swagger_ui_init_oauth={
"clientId": config.OAUTH_CLIENT_ID,
"appName": "TemplateFastAPIReact",
"usePkceWithAuthorizationCodeGrant": True,
"scopes": config.OAUTH_AUTH_SCOPE,
"useBasicAuthenticationWithAccessCodeGrant": True,
},
)

add_exception_handlers(app)

app.include_router(authenticated_routes, dependencies=[Security(auth_with_jwt)])
app.include_router(public_routes)

return app


@click.group()
def cli() -> None:
pass


@cli.command()
def run() -> None:
import uvicorn

uvicorn.run(
"app:create_app",
host="0.0.0.0", # noqa:S104
port=5000,
factory=True,
reload=config.ENVIRONMENT == "local",
log_level=config.log_level,
)


if __name__ == "__main__":
cli() # run commands in cli() group
+ + + + \ No newline at end of file diff --git a/docs/contribute/development-guide/coding/extending-the-api/adding-features/securing-endpoints/index.html b/docs/contribute/development-guide/coding/extending-the-api/adding-features/securing-endpoints/index.html new file mode 100644 index 00000000..970de88d --- /dev/null +++ b/docs/contribute/development-guide/coding/extending-the-api/adding-features/securing-endpoints/index.html @@ -0,0 +1,17 @@ + + + + + +Securing endpoints | Template FastAPI React + + + + +
+

Securing endpoints

The REST API (i.e. python FastAPI server) has access to, and is responsible for serving, data that could be private. Therefore we need to validate that the request is coming from an authenticated client.

We do that in these steps;

  1. Require a JWT on each request
  2. Fetch the RSA public keys from the authentication server.
  3. Validate the JWT signature with the auth server's public key

FastAPI has system called dependencies that is well suited for running a specific function before every request.

Here is an example;

routes = APIRouter()
app = FastAPI(title="Awesome Boilerplate") # Create the FastAPI app
app.include_router(routes) # Add a route/controller to the app
# Add the 'auth_with_jwt()' function as a dependency
# This function will do the actual JWT validation with step 2 and 3
app.include_router(routes, dependencies=[Security(auth_with_jwt)])

That's it! Now every route added like this will require a successful JWT validation before the request will be processed.

Dependencies can also return values, useful if you need to do some kind of authorization. +Here is one example;

@router.delete("/{id}", operation_id="delete-report")
def delete_report(id: str, user: User = Depends(auth_with_jwt)):
if has_permission(user):
delete_report(id)
return "OK"
else:
return PlainTextResponse("Permission denied", status_code=402)
+ + + + \ No newline at end of file diff --git a/docs/contribute/development-guide/coding/extending-the-api/adding-features/use-cases/index.html b/docs/contribute/development-guide/coding/extending-the-api/adding-features/use-cases/index.html new file mode 100644 index 00000000..c47daf1a --- /dev/null +++ b/docs/contribute/development-guide/coding/extending-the-api/adding-features/use-cases/index.html @@ -0,0 +1,16 @@ + + + + + +Use cases | Template FastAPI React + + + + +
+

Use cases

Use cases implement and encapsulate all the application business rules.

If the use case wants to access a database (infrastructure layer), then the use case will use a data provider interface. The add_todo_use_case interacts with the infrastructure layer via TodoRepositoryInterface.

import uuid

from pydantic import BaseModel, Field

from features.todo.entities.todo_item import TodoItem
from features.todo.repository.todo_repository_interface import TodoRepositoryInterface


class AddTodoRequest(BaseModel):
title: str = Field(
title="The title of the item",
max_length=300,
min_length=1,
json_schema_extra={
"examples": ["Read about clean architecture"],
},
)


class AddTodoResponse(BaseModel):
id: str = Field(
json_schema_extra={
"examples": ["vytxeTZskVKR7C7WgdSP3d"],
}
)
title: str = Field(
json_schema_extra={
"examples": ["Read about clean architecture"],
}
)
is_completed: bool = False

@staticmethod
def from_entity(todo_item: TodoItem) -> "AddTodoResponse":
return AddTodoResponse(id=todo_item.id, title=todo_item.title, is_completed=todo_item.is_completed)


def add_todo_use_case(
data: AddTodoRequest,
user_id: str,
todo_repository: TodoRepositoryInterface,
) -> AddTodoResponse:
todo_item = TodoItem(id=str(uuid.uuid4()), title=data.title, user_id=user_id)
todo_repository.create(todo_item)
return AddTodoResponse.from_entity(todo_item)
  • Required
    • Each use case needs to have its own read and write model to handle custom requests inputs and outputs for each use case.
  • Optional
info

Changes to use cases should not impact the entities.

The use-case should only know of the repository interface (abstract class) before run-time. The concrete implementation of a repository is injected (dependency injection) into the use-case at run-time.

Testing use cases

Use the todo_repository fixture as input to use_cases.

import pytest
from pydantic import ValidationError

from features.todo.repository.todo_repository_interface import TodoRepositoryInterface
from features.todo.use_cases.add_todo import AddTodoRequest, add_todo_use_case


def test_add_with_valid_title_should_return_todo(todo_repository: TodoRepositoryInterface):
data = AddTodoRequest(title="new todo")
result = add_todo_use_case(data, user_id="xyz", todo_repository=todo_repository)
assert result.title == data.title


def test_add_with_empty_title_should_throw_validation_error(todo_repository: TodoRepositoryInterface):
with pytest.raises(ValidationError):
data = AddTodoRequest(title="")
add_todo_use_case(data, user_id="xyz", todo_repository=todo_repository)

+ + + + \ No newline at end of file diff --git a/docs/contribute/development-guide/coding/extending-the-api/index.html b/docs/contribute/development-guide/coding/extending-the-api/index.html new file mode 100644 index 00000000..8e1fc320 --- /dev/null +++ b/docs/contribute/development-guide/coding/extending-the-api/index.html @@ -0,0 +1,17 @@ + + + + + +Extending the API | Template FastAPI React + + + + +
+

Extending the API

FastAPI

FastAPI is a high-performant REST API framework for Python. It's built on top of Starlette, an ASGI (Asynchronous Server Gateway Interface) implementation for Python, and it uses Pydantic for data validation. It can generate OpenAPI documentation from your code and also produces a Swagger UI that you can use to test your application. OpenAPI uses a subset of JSON Schema to describe APIs and define the validation rules of the +API payloads and parameters.

To run FastAPI applications, we use the process manager uvicorn. Check out the official documentation for more details.

FastAPI

Codebase structure

The API is grouped by features.

Features

The API has a feature-based folder structure following the principles of Clean Architecture.

├── api/
│ └── src/
│ ├── common/
│ ├── entities/
│ ├── features/
│ │ ├── health_check/
│ │ ├── todo/
│ │ ├── whoami/
│ │ └── ...
│ ├── data_providers/
│ └── tests/
│ ├── unit/
│ └── integration/
└── ...
  • common contains shared code like authentication, exceptions, response decorator
  • entities contains all entities, enums, exceptions, interfaces, types and logic specific to the domain layer
  • features contains use-cases (application logic), repository interfaces, and controllers
  • data providers contains classes for accessing external resources such as databases, file systems, web services, and repository implementations
  • tests contains unit and integrations tests

Get started

  1. Create the domain model by adding entities
  2. Extend the API by adding features
    • Add a use case to handle application logic
    • Add a controller to handle API requests
      • Add an endpoint to the controller that executes the use case
  3. Add a data provider, repository interface and repository to handle communication to external services such as databases.
note

Entities and data providers can be shared between features (the entrypoints and use-cases).

Configuration

All configuration parameters are expected to be environment variables, and are defined in this file api/src/config.py.

from pydantic import Field
from pydantic_settings import BaseSettings

from authentication.models import User
from common.logger_level import LoggerLevel


class Config(BaseSettings):
# Pydantic-settings in pydantic v2 automatically fetch config settings from env-variables
ENVIRONMENT: str = "local"

# Logging
LOGGER_LEVEL: LoggerLevel = Field(default=LoggerLevel.INFO)
APPINSIGHTS_CONSTRING: str | None = None

# Database
MONGODB_USERNAME: str = "dummy"
MONGODB_PASSWORD: str = "dummy"
MONGODB_HOSTNAME: str = "db"
MONGODB_DATABASE: str = "test"
MONGODB_PORT: int = 27017

# Access control
APPLICATION_ADMIN: str = "admin"
APPLICATION_ADMIN_ROLE: str = "admin"

# Authentication
SECRET_KEY: str | None = None
AUTH_ENABLED: bool = False
JWT_SELF_SIGNING_ISSUER: str = "APPLICATION" # Which value will be used to sign self-signed JWT's
TEST_TOKEN: bool = False # This value should only be changed at runtime by test setup
OAUTH_WELL_KNOWN: str | None = None
OAUTH_TOKEN_ENDPOINT: str = ""
OAUTH_AUTH_ENDPOINT: str = ""
OAUTH_CLIENT_ID: str = ""
OAUTH_AUTH_SCOPE: str = ""
OAUTH_AUDIENCE: str = ""
MICROSOFT_AUTH_PROVIDER: str = "login.microsoftonline.com"

@property
def log_level(self) -> str:
"""Returns LOGGER_LEVEL as a (lower case) string."""
return str(self.LOGGER_LEVEL.value).lower()


config = Config()

if config.AUTH_ENABLED and not all((config.OAUTH_AUTH_ENDPOINT, config.OAUTH_TOKEN_ENDPOINT, config.OAUTH_WELL_KNOWN)):
raise ValueError("Authentication was enabled, but some auth configuration parameters are missing")

if not config.AUTH_ENABLED:
print("\n")
print("################ WARNING ################")
print("# Authentication is disabled #")
print("################ WARNING ################\n")

default_user: User = User(
user_id="nologin",
full_name="Not Authenticated",
email="nologin@example.com",
)

See configuration for a description of the different configuration options available.

+ + + + \ No newline at end of file diff --git a/docs/contribute/development-guide/coding/extending-the-web/index.html b/docs/contribute/development-guide/coding/extending-the-web/index.html new file mode 100644 index 00000000..ca09b8f3 --- /dev/null +++ b/docs/contribute/development-guide/coding/extending-the-web/index.html @@ -0,0 +1,68 @@ + + + + + +Extending the web | Template FastAPI React + + + + +
+

Extending the web

The web is grouped by features.

Codebase structure

The web has a feature-based folder structure.

├── web/
│ └── src/
│ ├── api/
│ ├── common/
│ ├── features/
│ │ ├── todos/
│ │ └── ...
│ ├── hooks/
│ └── pages/
└── ...
  • api contains the auto-generated API client
  • common contains shared code like generic components
  • features contains features e.g. todo-list
  • hooks contains re-usable hooks
  • pages contains entrypoints (pages that are used by the router)

Application tree

+flowchart + subgraph web + AuthProvider-. imported from .->react-oauth2-code-pkce; + index --> AuthProvider + AuthProvider --> app + app --> Header + app --> RouterProvider + RouterProvider-. imported from .->react-router-dom; + RouterProvider --> routes + routes -- /invalid --> InvalidUrl + routes -- / --> TodoListPage + TodoListPage --> TodoList + TodoList -- uses hook --> useTodos + useTodos -- uses client --> TodoAPI + TodoList --> AddItem + TodoList -- 1..x --> TodoItem + end + + TodoAPI -- HTTP requests --> API + + style react-oauth2-code-pkce fill:#f96; + click react-oauth2-code-pkce "https://www.npmjs.com/package/react-oauth2-code-pkce" "Open" + style react-router-dom fill:#f96; + click react-router-dom "https://www.npmjs.com/package/react-router-dom" "Open" + + style useTodos fill:#b8c;

External dependencies:

Configuration

See configuration for a description of the different configuration options available.

Oauth2

The AuthProvider are using the configuration defined in web/src/auth.

import type { TAuthConfig } from 'react-oauth2-code-pkce'

export const authConfig: TAuthConfig = {
clientId: import.meta.env.VITE_AUTH_CLIENT_ID || '',
authorizationEndpoint: import.meta.env.VITE_AUTH_ENDPOINT || '',
tokenEndpoint: import.meta.env.VITE_TOKEN_ENDPOINT || '',
scope: import.meta.env.VITE_AUTH_SCOPE || '',
redirectUri: import.meta.env.VITE_AUTH_REDIRECT_URI || '',
logoutEndpoint: import.meta.env.VITE_LOGOUT_ENDPOINT || '',
autoLogin: false,
preLogin: () =>
localStorage.setItem(
'preLoginPath',
`${window.location.pathname}${window.location.search}${window.location.hash}`
),
postLogin: () =>
window.location.replace(localStorage.getItem('preLoginPath') ?? (import.meta.env.VITE_AUTH_REDIRECT_URI || '')),
}

Routes

The RouterProvider are using the router defined in web/src/router.

import { createBrowserRouter } from 'react-router-dom'
import InvalidUrl from './common/components/InvalidUrl'
import { TodoListPage } from './pages/TodoListPage'

export const router = createBrowserRouter([
{
path: '/',
element: <TodoListPage />,
},
{
path: '*',
element: <InvalidUrl />,
},
])
+ + + + \ No newline at end of file diff --git a/docs/contribute/development-guide/coding/generate-api-clients/index.html b/docs/contribute/development-guide/coding/generate-api-clients/index.html new file mode 100644 index 00000000..9a9c13ba --- /dev/null +++ b/docs/contribute/development-guide/coding/generate-api-clients/index.html @@ -0,0 +1,16 @@ + + + + + +Generate API clients | Template FastAPI React + + + + +
+

Generate API clients

To generate typescript client for API run:

cd web
./generate-api-client.sh

This will populate web/src/api/generated with new typescript files that matches the API OpenAPI specification.

+ + + + \ No newline at end of file diff --git a/docs/contribute/development-guide/publishing/index.html b/docs/contribute/development-guide/publishing/index.html new file mode 100644 index 00000000..5db1b52f --- /dev/null +++ b/docs/contribute/development-guide/publishing/index.html @@ -0,0 +1,16 @@ + + + + + +Publishing | Template FastAPI React + + + + +
+

Publishing

Github actions

We use GitHub Actions, as the CI/CD pipeline.

GitHub Actions make it easy to automate all our software workflows. They build, test, and deploy the code right from GitHub.

All the heavy lifting is done by GitHub. GitHub will simply use the files defined in .github/workflows to do the setup.

We trigger the reusable workflow like this (note that the chart is slightly outdated):

Github Actions

Since we are using trunk based development, all pushes to main trigger a release to a test environment.

Release to production is triggered when we merge in the auto-generated pull requests (that contains changelogs) that are created by the create-release-pr.yaml Github action.

Workflows

Overview

Reusable workflows

WorkflowJobPurpose
codeql-security-analysis.yamlanalyzeRuns CodeQL on the source code
create-release-pr.yamlrelease-pleaseCreates a new release on GitHub
deploy-to-radix.yamldeploy-on-radixDeploys the services to Radix
generate-changelog.yamlgenerate-changelogAutomatically generates changelogs based on commit messages
label-importer.yamllabelerImport labels from labels.yml
publish-docs.yamlpublish-docsBuilds and publishes the latest docs to GitHub pages
publish-image.yamlbuild-and-publish-web-mainBuilds and publishes the Docker image for the Web (frontend)
build-and-publish-api-mainBuilds and publishes the Docker image for the API (backend)
build-and-publish-nginxBuilds and publishes the Docker image for the Nginx proxy
tests.yamlpre-commitRuns the pre-commit hooks. See Hooks for details
test-apiRuns tests on the API (backend) using pytest and behave
test-webRuns tests on the Web (frontend)
test-docsChecks that the doc pages build without errors

Triggerable workflows

WorkflowJobPurpose
on-pull-request.yamlcodeqlUses the codeql-security-analysis workflow
testsUses the tests workflow
on-push-main-branch.yamlcodeqlUses the codeql-security-analysis workflow
testsUses the tests workflow
generate-changelogUses the generate-changelog workflow
docsUses the publish-docs workflow
publish-latestUses the publish-image workflow to create a docker image for the test environment
deploy-testUses the deploy-to-radix workflow to deploy to the test environment
release-pleaseCreates a new release PR on GitHub
publish-productionUses the publish-image workflow to create a docker image for the prod environment
deploy-prodUses the deploy-to-radix workflow to deploy to the prod environment
on-weekly.yamlcodeqlUses the codeql-security-analysis workflow

Reusable workflows

A reusable workflow is just like any GitHub Actions workflow with one key difference - it includes a workflow_call trigger.

  • The create-release-pr.yaml workflow will automatically create a pull request with an auto-generated changelog. It also bumps the version code (using semantic versioning, depending on the types of commits) and create a tagged release that can be used to deploy to production.

  • The tests.yaml workflow will automatically run all types of tests.

  • The publish-docs.yaml workflow will build the documentation. Then it will deploy the documentation (placed in the site folder) to GitHub Pages.

Changelogs

We auto-generate changelogs by following the conventional commits specification.

How to generate

Auto-generated

The Github action release-please.yaml is a workflow that will automatically create a pull request with an auto-generated changelog every time code is pushed to the main branch.

Locally

Sometimes it is nice to generate the changelogs locally for testing.

It is possible to use act to run Github actions locally.

act -j release-please -s GITHUB_TOKEN=<GITHUB_TOKEN>

GITHUB_TOKEN: Log in to GitHub and generate a personal access token (PaT) from Personal settings -> Developer settings -> Personal access tokens.

+ + + + \ No newline at end of file diff --git a/docs/contribute/development-guide/setup/index.html b/docs/contribute/development-guide/setup/index.html new file mode 100644 index 00000000..e36ba12e --- /dev/null +++ b/docs/contribute/development-guide/setup/index.html @@ -0,0 +1,18 @@ + + + + + +Setup | Template FastAPI React + + + + +
+

Setup

Prerequisites

To work with the template monorepo you'll need to install these tools.

Pre-commit

When contributing to this project, pre-commits are necessary, as they run certain tests, sanitisers, and formatters.

The project provides a .pre-commit-config.yaml file that is used to setup git pre-commit hooks.

On commit locally, code is automatically formatted and checked for security vulnerabilities using pre-commit git hooks.

Installation

To initialize pre-commit in your local repository, run

pre-commit install

This tells pre-commit to run for this repository on every commit.

Usage

Pre-commit will run on every commit, but can also be run manually on all files:

pre-commit run --all-files

Pre-commit tests can be skipped on commits with git commit --no-verify.

caution

If you have to skip the pre-commit tests, you're probably doing something you're not supposed to, and whoever commits after you might have to fix your "mistakes". Consider updating the pre-commit hooks if your code is non-compliant.

Hooks

Overview
RepositoryHookPurpose
pre-commit/pre-commit-hookscheck-astCheck whether files parse as valid python
check-merge-conflictCheck for files that contain merge conflict strings
check-case-conflictCheck for files with names that would conflict on a case-insensitive filesystem
check-jsonVerify syntax of all JSON files
check-tomlVerify syntax of all TOML files
check-yamlVerify syntax of all YAML files
trailing-whitespaceTrim trailing whitespace
mixed-line-endingReplaces or checks mixed line ending
detect-private-keyChecks for the existence of private keys
compilerla/conventional-pre-commitconventional-pre-commitA pre-commit hook to check commit messages for Conventional Commits formatting
ambv/blackblackPython code formatter
PyCQA/banditbanditA security linter designed to find common security issues in Python code
econchick/interrogateinterrogateCheck the code base for missing docstrings
hadialqattan/pyclnpyclnFinds and removes unused import statements
pycqa/isortisortSort imports alphabetically, and automatically separated into sections and by type
pre-commit/mirrors-prettierprettierTypeScript/JavaScript/JSON ++ code formatter
pre-commit/mirrors-eslinteslintHelps you find and fix problems in your JavaScript code
pycqa/flake8flake8Check the style and quality of Python code
localmypyPython type checker
pytestPython test runner

API

From inside the /api folder.

Create virtualenv

Virtual environment is used for running unit tests with pre-commit and upgrade packages. It also can be used to run the application if you not are using Docker.

python3 -m venv .venv

Activate virtualenv

source .venv/bin/activate

Install Poetry

Poetry is used to manage Python package dependencies.

$ pip install poetry
$ poetry config virtualenvs.create false # Not create venv

The installation instructions can be found here.

Install packages

$ poetry install

Web

From inside the /web folder.

Package management

This project uses Yarn 2 Plug'n'Play to manage web package dependencies. +That means there is no need to run npm/yarn install. +However, if you want to add/remove/update packages, you need yarn installed locally.

$ npm install -g yarn

Yarn PnP in Jetbrains IDEs

To let the IDE know that dependencies can be found in .yarn instead of node_modules, follow these steps; https://www.jetbrains.com/help/idea/installing-and-removing-external-software-using-node-package-manager.html#ws_npm_yarn_set_up_yarn2

Yarn PnP in VSCode

Because the project uses Yarn PnP, VSCode's language server must use the same typescript executable as the project in order to access dependencies. This is located in web/.yarn/sdks/typescript/lib. To use this version, simply open a .ts(x) file, open the command palette (default Ctrl+Shift+P or Cmd+Shift+P), find TypeScript: Select TypeScript Version... and select Use Workspace Version.

Not using the correct typescript executable might cause Cannot find module '***' or its corresponding type declarations. and JSX element implicitly has type 'any' because no interface 'JSX.IntrinsicElements' exists. errors.

+ + + + \ No newline at end of file diff --git a/docs/contribute/development-guide/testing/index.html b/docs/contribute/development-guide/testing/index.html new file mode 100644 index 00000000..2ba8595e --- /dev/null +++ b/docs/contribute/development-guide/testing/index.html @@ -0,0 +1,16 @@ + + + + + +Testing | Template FastAPI React + + + + +
+

Testing

API

The application has two types of API tests: unit tests and integration tests.

Unit tests

You will find unit tests under src/tests/unit.

docker compose run --rm api pytest

As a general rule, unit tests should not have any external dependencies - especially on the file system.

Integration tests

The integrations tests can be found under src/tests/integration.

To run integration tests add --integration as argument for pytest.

These tests depends on mongodb and that it's running.

Web

Unit tests

docker compose run --rm web yarn test
+ + + + \ No newline at end of file diff --git a/docs/contribute/development-guide/upgrading/index.html b/docs/contribute/development-guide/upgrading/index.html new file mode 100644 index 00000000..78e9b1e7 --- /dev/null +++ b/docs/contribute/development-guide/upgrading/index.html @@ -0,0 +1,18 @@ + + + + + +Upgrading | Template FastAPI React + + + + +
+

Upgrading

Packages

info

Remember to restart!

Any changes you make to these files will only come into effect after you restart the +server. If you run the application using containers, +you need to do docker compose build and then docker compose up to get the changes.

API dependencies

cd api/
# Add or remove package to pyproject.toml
poetry update

Web dependencies

cd web/
# Add or remove package to package.json
yarn install
+ + + + \ No newline at end of file diff --git a/docs/contribute/documentation/index.html b/docs/contribute/documentation/index.html new file mode 100644 index 00000000..0c6dcfd9 --- /dev/null +++ b/docs/contribute/documentation/index.html @@ -0,0 +1,16 @@ + + + + + +Documentation | Template FastAPI React + + + + +
+

Documentation

This site was generated from the contents of your documentation folder using Docusaurus and we host it on GitHub Pages.

How it works

From Docusaurus own documentation:

Docusaurus is a static-site generator. It builds a single-page application with fast client-side navigation, leveraging the full power of React to make your site interactive. It provides out-of-the-box documentation features but can be used to create any kind of site (personal website, product, blog, marketing landing pages, etc).

While Docusaurus is rich on features, we use it mostly to host markdown pages. The main bulk of the documentation is located in documentation/docs.

Publishing

We are using the Github Action publish-docs.yaml to build and publish the documentation website. This action is run every time someone pushes to the main branch.

This will checkout the code, download the changelog from the generate-changelog.yaml action, and build the documentation. Then it will deploy the documentation (placed in the documentation/build/ folder) to GitHub Pages.

Initial settings

When deployed to GitHub Pages, you do need to configure your site under the settings. Pick the gh-pages branch and select either a private url or a public one. It will show you the site’s url, which should now contain your generated documentation site.

Assets

All assets files are places under documentation/static

+ + + + \ No newline at end of file diff --git a/docs/contribute/ground-rules/index.html b/docs/contribute/ground-rules/index.html new file mode 100644 index 00000000..c8cf58f0 --- /dev/null +++ b/docs/contribute/ground-rules/index.html @@ -0,0 +1,16 @@ + + + + + +Ground rules | Template FastAPI React + + + + +
+

Ground rules

  • For major changes, please open an issue first to discuss what you would like to change.
  • Contributors should fork the repository and work on fixes or enhancements on their own fork.
    • Use the pull request feature to submit your changes to this repository.
    • All pull requests should be rebased (with main) and commits squashed prior to the final merge process.
    • Use conventional commit formatting for commit messages, so that it's possible to auto-generate the changelogs.
  • Use a separate branch for each issue you’re working on.
    • Do not combine fixes for multiple issues into one branch.
  • Please include unit tests with all your code changes.
    • All unit tests must be 100% passing before the pull requests will be approved and merged.

Pull Requests

Please try to make your pull request easy to review for us.

  • Make small pull requests. The smaller, the faster to review and the more likely it will be merged soon.
  • Don't make changes unrelated to the goals of your PR.
    • There might be typos on some comments, or perhaps a function is in need of refactoring - regardless, if those changes are not related to your PR, please implement those changes in another PR.

While you're writing up the pull request, you can add Closes #XXX in the message body where #XXX is the issue you're fixing. Therefore, an example would be Closes #42 would close issue #42.

Git commit format

We have very precise rules over how our git commit messages can be formatted.

We are using the conventional commits formatting for commit messages.

Here’s an example commit message:

type: short description of what you did (imperative tense) <= 50 chars

When necessary, mote details can come here, until 72 chars each line.

BREAKING CHANGE: some description

Fixes #1234

The type can be one of these types: feat, fix, build, ci, docs, style, refactor, test, and chore.

caution

Summary should:

  • Be written in imperative, present tense, e.g. write add instead of added or adds.
  • Don't capitalize the first letter.
  • Don't write dot (.) at the end.
An example

patches (1.0.0 → 1.0.1)

git commit -a -m "fix(parsing): fixed a bug in our parser"

features (1.0.0 → 1.1.0)

git commit -a -m "feat(parser): we now have a parser \o/"

breaking changes (1.0.0 → 2.0.0)

git commit -a -m "feat(new-parser): introduces a new parsing library
BREAKING CHANGE: new library does not support foo-construct"

Complete:

refactor!: foo-bar replaces bar-foo

bar-foo does not fit other solutions, use standard convention foo-bar

AB#11
Closes #22, AB#33, equinor/otherrepo#44

BREAKING CHANGE:

'bar-foo' command has changed from 'bar-foo' to 'foo-bar'

To migrate your project, change all command where you use 'bar-foo' with 'foo-bar'

Co-authored-by: Elliot Alderson

This leads to more readable messages that are easy to follow when looking through the project history.

It is important to note that we use the git commit messages to auto-generate changelogs for each release.

+ + + + \ No newline at end of file diff --git a/docs/contribute/how-to-start-contributing/index.html b/docs/contribute/how-to-start-contributing/index.html new file mode 100644 index 00000000..67377f1c --- /dev/null +++ b/docs/contribute/how-to-start-contributing/index.html @@ -0,0 +1,16 @@ + + + + + +How to start contributing | Template FastAPI React + + + + +
+

How to start contributing

Welcome! We are glad that you want to contribute to our project! 💖

This project accepts contributions via Github pull requests.

This document outlines the process to help get your contribution accepted.

There are many ways to contribute:

You can start by looking through the good first issues.

Fork the repository

In general, we follow the "fork-and-pull" Git workflow.

Here's a quick guide:

  1. Create your own fork of the repository
  2. Clone the project to your machine
  3. To keep track of the original repository add another remote named upstream
git remote add upstream git@github.com:equinor/template-fastapi-react.git
  1. Create a branch locally with a succinct but descriptive name and prefixed with change type.
git checkout -b feature/my-new-feature
  1. Make the changes in the created branch.
  2. Add and run tests for your changes (we only take pull requests with passing tests).
docker compose run --rm api pytest
docker compose run --rm web yarn test
  1. Add the changed files
git add path/to/filename
  1. Commit your changes using the conventional commits formatting for the commit messages.
git commit -m "conventional commit formatted message"
  1. Before you send the pull request, be sure to rebase onto the upstream source. This ensures your code is running on the latest available code.
git fetch upstream
git rebase upstream/main
  1. Push to your fork.
git push origin feature/my-new-feature
  1. Submit a pull request to the original repository (via Github interface). Please provide us with some explanation of why you made the changes you made. For new features make sure to explain a standard use case to us.

That's it... thank you for your contribution!

After your pull request is merged, you can safely delete your branch.

Code review process

The core team looks at pull requests on a regular basis. After feedback has been given we expect responses within three weeks. After three weeks we may close the pull request if it isn't showing any activity.

+ + + + \ No newline at end of file diff --git a/img/clean-architecture-horizontal2.png b/img/clean-architecture-horizontal2.png new file mode 100644 index 0000000000000000000000000000000000000000..4d62e56142ecaeba253b18a8c5c42952cf0497d5 GIT binary patch literal 163138 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

8vLYEmx27djZNLNQiP;plz`TMSzNev_a8GXG2LA zPWHl#^~w*jhbDRLDIG#*hr0=(1L%Nk<$^XQ!UGC9rwB^f*QfR?7GHEs7{EQdPw|s#f^e~q@@fM%LDZVnqtl{i2 zoxB~XEu;9wMs)SDKy!9BXtcDkXg#u(So$@A#Gl>dwy28U6Kj{IC>{YY zu}lntvc9t*Xq?BO!Gqa_{_D8F8K&vx6h;=DQfHRWmG1*wwVer@5E(8oq@=z}k5ZH1 z-IZ@aZU7C=D+Y5Q{J5|M2$KQCV(Z+bAH?jUe5n zNQX+pLrI5pgLDbfDbkG!NF&`Pjf6;wbT=a1(gFf!-H-dXzxR(b&ij7neB+G4*#B(B zb+0w!n%BJMTIP3^fbI&q*a~aDLCa@vTKM7Tr2o~z`Z*`+&zX^a=vCTsHVeiep3s3i zRkVSnkvYCz6J!8R9r}CwXcca9t``KoE@PndTNLT~FKGhgw7LTI46`?(YfilK_5hUF zu4Dvjz%8x+YfMp98SrR(zIkR9!2t8y^ya;F@=nss-!Jzts{V6h(nlraR_~RdByL}~ z(K5%jXXp7tsgF6Ryf(9Pd!ea}I$)VD_y63^2;%-`i4cytwa)sWLVyNt$)!Yk8*_J8 z=u3pMDldPAsSIynRaUlXh4Fn%gS*cq@m0m}kdcwa1rR0B@xXt)1u?7p*V#X`d}gcu z+~%9<{aH{@@Hq3p(b3@M{QINq$S{N>TYQs_XYcUD{1gdj_3wpv3?%2wD30umF!>%(EmBr01u1%fXg zn_N!5oD>YwzBJq+n;1xco|1OMw0eVS#1W9e?*czUVhG)^^RT3Z1gYfYWScJwO|Cg7 zCobp6v9j2NVtxah51+@!fn^ay(0R)K6vpj_ee06&Km`9bme?C4JOo5S^e-M(bPBxY zqKG88WtM~fD#3@tUXz>cK1iHYDMRC|Y!T0pNN`)Si~YL;It%@4x@FgxzGS{P5sKGi zmPAFOL4g1Kpag%sNk*OocOgfE_bpu;F}85p4lm;BRGQ`&-|NV8A@F|+GMDH>4u=o4 z5V~=ZCZP}2ZM9l31%Fc)OWQi*_9Mnh)@kWT;00J7Z)TB}?!EWOoK#*?8n;n*!c}jr zqTlu@z7}Qf@L;J|3d8wl2gJSzfaBRj60u4f4y}aoKIZaWyw``E2lR z#`cPuhz$>au&N#*m+){`8>_3QrzEqX;YqQ6VNRFTDIuEd0T>>%&RHz#1t~>@?v6tI%j^K4IUP>nv#l9gA4t`B zzZ_1;tU&5t^p3IU`7{2&tfL2&z9-XM0$wL9l)~L2m-ajY9EQzLs&w#yAYCzjeLONX4JY_;PbZoDAD6=q=%LH>`?(lCO*pBH~u{2~ds zhzRl09hi*Yz#Y0-A>_jh)RnA(Un2(Nz__BwvY5%IYpmbfaO;0|V=L3EkNNcJ6ISed z(u?9AO%2fr(-P}BbNLTX?b+`sh7?4FbVU&H%!^cbfX;xrw4{aXYIkQ&1efZJsLLwn z-h7Mv_3HlML|q4$Tz+nDp>(I$>2{HHXHXFGBHyG5WR_Ukg%7DAqnZl(Z;a}|dcaU7 zE;+dfr&OofA_aZKoBnh%?Ds3~sL)05BoiVcaB=7-?gI!wM>c`If1Ux4@Za7~P^E8M zCt}+xOBp2jNXm`c3=KBc*Fz`>Qq$v-F-y|;p4;sv^q=lbX(@(%`}Qq9C55b5ASRvZhxf`d zSf16=VoL)J1Kn_o3~t8=2s$RK?u z?jr&+1uZ<{xFCxP-2KlN{h|dMAXz-A|m&_H%V3pqSkp61`=xc!E{?yo5mBm5`vwFrA?|GfA@c=TDf1`&w06`rHHC zW2V{4r+OE5+4g;Yg~0`&A?D$n6YRMs3aKfWbD7C4u8{kEAfh{CkS?$p^eFw}#)DUr>iiaR)e-d}Z zJM{0D2&R}a{2TY23Bjj3_;zmMP&^TfBxX~KBp@It1p4luCU)LI;G?MUM+-VYvMu;3 z!(|6Iy?ZoH#q>~GLjG)@zCTy5%tPU@(4;ZtI6&q!{wR-&PXjB|P80TM8Grg+b#!8x zj`(-Y3Ka{f`E0>P%`)8-#45Esxh6Bexq!o8HHUcBYft^Rj;Z&-FEqsDLMq3M3Z)~m z`y32>+CjDN<_X-s&W>ebNASf=c?JBQkR$ig!Ci(ol4bVaAb=1s4Az7-Ad{bC7n0E5 zufUfJR;B9Y)ugaYOZ*;W9}5Cm-W4=pbQJCT+e%%K&6OvPerWIT*ff}#*$pxBJtf+k zt(7N#5qz}vpiD>J+^wT~ypZY!LG}*eT6YTej>eszU)SU}zqAMH+G><&<^lX0#SU6} zW&MuioK#;uSO)lp{2KxfRmh%=i#4!wQuXCwW^+k{b1+N$qb&~yJw2>n7R;ng#}_VX zy$KUdE=hIh^M`v+Qh>uQ?5EihDzHZhm=NR_G=OUnDPmwbb%4j z+%I4~{*DtB3f$~f8GO^@r3v`(piOt)dSexZ53(l-v*;uN1WqmwFlpAL)!2#bjB&eu?}s6 zP$GBD$&Wx>H6^7OGC74JlBU)TjriHzMy#w0?hr=S#1WtsVY#(x74Tbk_gYW3^yxzC zhJl>h_~QcC9c(atI2qd1-ELT;i#TsLh<;X4@2PFWA;5XL!BR6{|hw1y-}9)c)p%XoEiAl>PsEfc^Y zN{Bq}X*v_w+%b%#soP)69oFDN7n{HY*5|q8><3a0o}CWtAh1bE8f#4Il3ibW%(@%5 zdHH3E_!a^(0Kayv`~BZ7-bwtQZ!spZuc0B;>E4`{aC~B-G$|=*dvTTm_g^gkElB*y zzi}pm5vric0j9otynSIAkECx4Hq7?W~I$j+UVJR3LhUIFPw9Q-TCW&u6_S=_q!W; zGn@rWnW+TV#*BjtZ;dBZm`D+C(y&&tUVNpY_y=1cAPzxTzIxQun4R(UpA`9E*z`jX zLtfGb$%{2_w0n@S3y-^}025SVHCDPMWLC;`TInu|K5hO%AkfzFbe%U!Q-S{1@j=^2 zyiQxuo`L6Df(sZoPnoRi$8PsP1GYTHe7lU(4YOuYy|df|qWK5*ux=8t712&dW^7!~ zz`jveAh^ephO4^ogl@LL;HI%jsmMj}?;0CHp~F%y5;o`$`CaC^AsN?^t)bdjMpYQ( zcY7u=hW(J=c|JM(Y_ZN_0C|R0JdI zv9rQF6x=Jc#81(MM0Z_hYu#hX=D`3{p&Zcxxugj^AUM+h|GIhM8#y{y$_uID39Onf z+!QC2L1O#+1}9&y9BpKzqsj8@y*=;z4Fatf(FFfT4%O5JD*iyjMux3er<#e8kuf~9 zY7ZZHkEf(;CeED;zDx}2u1a`5Q+?f86a&D_F#c}7d*AU$>GF4uU1@_^cm5V!UJ}ZH zZ#;fk*8ctDWC4dNu;m!+8^%EE0ZOmCkpyHYIX`_!p>VZPD~7xbPywfph2K*cJZIgX zXyH*}kZ#Fgl>X`P*SXzy!Z!ac)aRiJ?%XQj|4pI(vkxgF)}p;ft3uqDy)DG1XUcg^ zyP3r0td5O$`?DhpvwJ8%Fk!xX`_n&+xIv+vrB%t2Wy1Mz@PiY`001*c;z6ZShvoVQ zo=&J#@>5+9T#+;#7t}Rn*#BG3yVS>oQT-c8g(2_~s|nTgC02A&er#l3Po}KFhCVHO zeRX*s%CJq!qHQuD5`QTJE$`*kVa>r8KLd~{ zw_o1Ye@#Ywr`iLDzu8VI9h0?-$^oi;7C69{ihB#ho0Z@xxUex57sn zKKw;wEo5}g|N62!lzfD}_U7tif!00;rQfi69(d&ci1mPPCcDNb21;Q!1xna|Nm{Hu ztHB>Xlxj=oFe`rilXJ2CvM-)pF*KG!wcbR?CHdvd*`l~#9Nx|lo!ho#uHrEMlez3|b2n^M3hsm^XGzw6y(DP#IvIUyq> zgN^xgW#X3*wwaTwKTm6{F4W3$9wt0guYFim<7Sqq3sxG^O-T-4vfv2@F(WUQbk_wp z1Y!nl1JJ$#GQi|_{~zZNI3VCC_O?s|WPpsk$h!`?caRiR%{`UhUJeX6vx)}QcK!u6 z1d&0*V*fHvQs6t3zlFDZyoMk!-bfD&K;WLAGEZFK5I6|WDa8!3BCM7o%3~j19;(HK z4gM4XZRTf`V%fJXTwd_@=aTPx1*JBGXY+F z<21&9`>x$%lWF3lN&+T~t8)g2joD~F(LzB^Ssp&pGJvOmwwm*=R&Pm8-$Yz;t^UIR ze66YB?d$Cw*7}kW|Mw%*`T{@xuaAI=PTYtH+Qt;{5#@1{9YuM3lK&-a%KPSvt}JWY9M_-%)i$R=z*CYaF+AldSl z7MPc44gUuRn}I->jVX`;+h7S%uKVIqnB}yD0{4g-SIYreo@1pA%lp4&qzbnQ9?rk$%@SI$jx`tO2Lf;+d0%Pm62Qkb;C*ET zYIT7BKTvH80-gp|K*U+#pAkzO9a_3}#}n0haS79U@m+9@nO1pubqe3lLLE6Xo7s=} z6BX}s1w+!a(e1v?NPnL!RlyETt#cSjSIM#Av&r-#u61-J)?m>x6oicKtM6Z62C4y+>H{_7{b&=MO@#a(V7Ke^>S9}NS3@-F2pN($~LxUWu3 zseqphm~Fj~7os*8_UJY16HTc|!o6R_)H(1}&$FtoT)m`@8`G3tuGk=S`vFsDl3HGk z+4K{baYv$EU*DoE>ttEJ#?Dm6)0bW)Za!=icGDt!iY6q4FDbe^5E%9!{EenLI_J|zZK+zgXk(cu5D~eE{tx3PZ9e<3Hd>& zQrM^{ggs&>4JjS~?D2eJmJ3ctmYGLS4*aF((yiWZMPm#{^>+N zjB7H;cd?#$os^~$x;>?sAD`=m==w)3uEn0!+7+Y6ich$!;M7W=j;f z+!WnsIfgRp|4S?jrdXQ%krZd9Bq90{sMWI=tSLbrK2%W)zzVvHjVcV-@kv)Nnq6~Mw}{C z4J05WT=<`m#o?@&9wGu1D_Kv56LzMC^UL&DyaBh8n}m11JI6{jX%9ZkF7M$zJ)Mi^ z#ie>X59J%Gy$`5n%c7Lq7GdP|cKNVSTp}_j4fE1|mv301wYHPl-KT08WqQ-Vo-pZG z-Z(>FIegcYh=7jw5pq;Vm;QY~ArT`j$VdWWHLUXDCj&gxaWI^Z(|}MHpGFcDiT(>> zHVq!pNud6R9D4~-(hKxjnwrGs78b>b?mLswqhn+L8(*omV$v?|xbQZI1P87?yJY7_n1?YkvGEx0Qt)4i)t1N^@M zACr0il0G10nV`Br1UhGLkDU9jz&Ts7D|6H`!O!{KryCMXf}ERS(wz8AI7CqKE5oDx z*GeBlR!T()5_hcTh-AbcUEY(I?iblql5dcSnN_q9`gum#+DV6 zVA`@scL>Dme=fJ-je4Nb7q#wc55j!Mayi^;hYgy-MLr@kB@eJ ze#?*g5$G3lk z@ZYm(gA$bEHJ8@~h#*XvOkurGz&AuyOAM(0QEDA;aKOZ@y2zQ(mzsR89BK^MB}$rWO58MAI0;G@^+bit+i7R{ zT&QHtx?y$0=2TLb@S&t@C8GCPHz>sIElveB1c#QLVD?Xev9N^Va7)ud#}The+j%bn zfgmSqv*CDpxg*s2*N=9aUy3QbS>%q*Bk6Yzb;jYHxJ>le1$#QCnq`0N~|DNtW=ha7Idw0ZW1lxG@Ztlv~kxJi<+in-{t+_L`GQ0AZn&{o(^y zWp&u>5)N-oX5(8b2wsw91q*xvSXYH#YBgL2PQ1plhjo$w;x*dIS-q^eS!jE%zJknI zSC`EE#fydqK1f_eth7s-;=e><&yWn9 zdh}~0n1AZVAiYqeS6GNkDIf_3@jmG00saqSheC>D%-;Q_@#N^xzJhK9+Or?ihbuL% zR}QlcY#%<=uRpA4pOHa#(kSvXrI=6`Nq88K=_!H(?d@wUkUQhW?{*>}SpsWu3%Of2 z50%H~*6S{va2~l}LhSaRR-E(X#)TE|u<=ltyDPNJ%U}86FiYZ4DHIEPZ9L|`TRnO9 z8P#8VJ+C>v3Tyr2z|?Yh!9W=zey;N{^?0qC+W#hakR^y&Tt9xGR-_XKHE6i^Rq4K+ov35!(LC|{Zb`}FnM;l zNsf#J4uZHBnQ@;Mpd9a-cZ_QA*3+Y68k`*P<-Bro`(8rS*ehA{0__lgL7TGzm3T1I zcb7E0@#<7?T5>zEPy#APd8tLIiQu&4h1|=HX+TRBIE2l5|3gcTO&-vDS+2&O{3g$F zB{BTg5We5MZ)%{EE4Wf{^Q>No|GE3+ovnqf#w%~=lb!}heV-chHuKMS^iNg}jady{ zP}#}<7Vo(+F}{~JX_6U92nDDwasWQ)KD%!pDE1qKSIkV(!MIRhWk*)aiL!9I&_Na3 z$r;Iw95c4lBEe;oq0~SHeW2i>nfGuxHo$09jWa*yEae9Au~gmC!-(bEnbZ zgIL5s(7~7m=YzbB8>UXvt_bV35rc{4zfACs7mHytiGinycT@Fw*LaPgeX&|mbNL`>E>9eX zDF2QYAvwpS>=!H*9CQu%NuSb`?Aw9i4d4G@aa= zEF;e=C?FTWO_-MgQN?{L*yo&3`r^?sk5s;5wuNe~oKpI4CKLs7INex4~AT^mlkI3^O2-?6@zjEn- z-U*W z8)RO;C%@n6i@rC1z1ze4^K&wyhD@`MsDYpO+-v81P;vO$0CL$#my>I7?O-Svmd@vo zfA>zJOt&_oRkenO5_oU!dt}65s2R*@oK-9bx9G6QulC4vd{pK7jqj#y<2U+~Vc?EZ z9w9rh=p38z!ngc{rg?G+5?aJDN02Ea-9vv2BrYoVa%c}ZNTWif!@p_alA%n!=#8Tt z&sQWD0Mmtqy0td#tUB6#kVi}OTFr7pkuYTP6gv_sqzpI;4p3fq79KG4yzXGAH0!}B zR?U%4vJ5s#hcqlCB7$kOkAXq1P0B<$w2Rtqy_-WFt6J&lGWFUISUmZnxZrBOyjyuz z?!U>F!fji%UvpOU;N*LO@>XBv9q4S`pd_L+yZJpD8C(lQZ`$^@YR086{(;#AUYt=i z1(!f2r2HZN%9ph@Q*Bw2p9UTUOC3&mst6Bke;ZABF^4bb>g;Dr;;XBx=`jEuyD~jn zXJ3+x7by@4+4G}_`05^jq7(g}w;V$|p=#oC^1_OQ;uhQ;FaOzXPYsvfVP2b$hMV40 zLPFvfp#nQRU~_BpT4I8)vv1$+Q-X7jP+!pgmfb;Ai8B9WYJI3+H zY=W1ja)7j=ShTK+dcH4_&Gy*=9A(M>%2q{%5F^bW&d(wRLxeRi)}$A7rd$scsDk@2M;N`4rU*E#3*KP-bVyH(r>cP(Dh0ejw&vR@TH6G{ekrcUa%8Hnq zAAGcL{9I((_-WQvwN4@G?N~?gD~4MV`-Q4V&|Z;2#i7hEPI$;-Cg5rxG!fU{=Vo|} z0+ZmwtBeL4QEAKr#{rLq6KTBmK`^ z0HEGOYi@T)K70v=-gNhV|MoaFoGemjF4n6r*L2wUE6`Iq+Wd}%6ikYH|B?2`0S7B- z(PnHC+^6BalORuyM@@x?hwIYAL0E`nANW6c@m<;~@C3(Y$UXTcq+P=kJf~;{1QhMK z8SLh_hbAbJ{Dj#v-|j%@jF$0>_%kRd7I6{;!GmJF7+w$_F%%TPu0`~Lh7Rj{E1`RO zpD+ z?a|h!uA&^#<;|5X+&juuuLYzr6U%31>6x#~o85jp>VD?>6^oQSQ=z^iJ>DWuw%}~8 z^{^soYgZekMKH$j*6v+-NovB)lIKr;107z$+tNkJ^a@dP2Zd*9?-u)>3_Y`zm^v5g zQK{~adwjFec(T*%Z#8MeYV~TcsQxLkU~)3!ko8!Q!=@*DdivxO?SwdUX620B%-i3o zA{6JCZ0bK3o6K;lxSdRN(XrQgZUxUX^1H|z9=4e%&bv-6 z1YP^!Nggkdy>oI^l%+vt`&QVOoP3ZC-F12^fGgmm~`o#}8R^P6QVRLIr8h?B?>bYt=VP4a^7L6%%+Do~`2Dui8M zo~i>y2B&FST^i_0vL%&m1>J7mS;^w_*|Q=dLn#ol8m0kBLE~4TxEvU(t4+q6iF!K1 z4yDE%#_;2Gs8A*xUl=KXv+k5Bw0%6taU{YWU*+}YDcUVII|wKPI9h+d@w?nAh>QN! z7H|1%J2y8s&J|Oz7b@!>Md9@=$cbsL(DJwmU(U*sH2iYe-qqGJ=$jbn7nuhbRTryB&i-JUzO)YtbHdFiPiXXS@86v#@XI(wrT8_r(J&U z{mUh>XSKE@B0c-Ii!Y4}(U5SU947vIbCw8sdRIcdK#A|3t(;s0h>NkcvWqgaioh z0yO}@!1JpyIHvXm-KE6bR~xX7AG=0Ahf=ytF4n&SrQ#C-f=fkzI}k=fNO;2<3=tZ{ zh~%MpkVZHDlPrEboY25{h9^k^&I$Vtaq;E5FCUEjo{8T4&RMQ{Y&9%))n2B{XU24Y z@(Ene#cA{01s#zzI<)_{`^uMk>(P@oy6j#HA&SfAM%y|4`IawqJ~`80*WcRqm3l6x zu4`ZUvI~A#^!vjjIE_HyS>l?S8i&QC${?wCcGl;Imqb zf6}gP783IYn>)I@<&dV9o1bqZ+K}*o@Y1yif)E{HDk}`(=)G1#{T^%I5vuQ}4*b+N zw`dOeR?A|@Rg}O+nKOvc@X!`hF|%Ii2jAz?n*;icobhf~*r?I3A>F3k{STYQi_5RQ zc3r=)kx%5U_m#duJ&qYR`aU`OlZgDyQS=TrUI66+_V?dmsz z&LZvc;?hBK{lpsdJB{hr#YW~BxDc2QCr2`zV74uE`jM#=TWs%M|va%Dk>zgN=&4?Xy8HdciNwrQ-ZHYaIWM%&#VFD9nOb~wZsoU4tF8H;Gw#? znQ9wf8NBZ*Ib=H*zv!_`Y?Jg{UTe^On$;b(`Gj=9u;JbPq8<4`2Pvbr)3|blc@vb{ z!N)@Qzc36e61{g0^@`@6mUV4!^QR{7w{WR%eyi^u1#sTAC$r^NU^{aWre)DRxZ)U- z?=HP*>E^q&EaIYdAU|Lw@{`{$sWqJ#;f5=s4) zdZfFq>T;4~ShAIgn_ZnUwV`;oG&JV&nQ+CA0CKMk7!2hk>!G-XLjP=Yx&zs7oa+|n z!2O!pLk;V*!uH^p?}N66_etEuzTAZhwE)=yn2_@-n*Dr(>Ou){%HBWK-qMWzxgeb0 z1((t(=OgPjI-7%t0pw~pvrI>};#D7q8KIb=S7;R#`m;C5@pUTRj4xXXynRQ4{VZ(< zIl#CZ#uWoD<1S|Eyg1&7?80}%r52gj0z~M(&P0jU)V>bT5hMQb6ahUf1YR{FfT9v8 zmhZxK1R*_&`LlkbzZ#CrkmXx{Df{`g)(w3B?FAk^sBu^jkk2z+A{QYvZEw4QBtuq3 z$X4@oP=SU#d1nAV(;!S!I1~a3v?1i4mmN%;HsdTQyw+;d8$@mrK)_u~JwII{`}-@D zcUL7r+X8VWD)bt~S2l-fVDuN$R7{SjG%k~c6=rQE=_z~jsg7=yL$zk~fLFuKhpb?- z)=QBKk?5;K+%l25hQe15vHfoxiuJ3~%A0@S@I+RT9s;miK>4t!pN!Xi7js-TIbo!K zt&Vvyr@}ua$M)U8bdSaUD`)HTB^m3rOEz6J#(RY4T8`KsBL(to%(M8}wJcK7L>!aL z`*_X`KjeHr>_kSNqA-ZA```qlgG#xZ5yLMfB8A))6`s9>H z9aP$G+I7V}Od(4C=9J5wW6sI*P&Bq|hV>)0hsl#@;&KyBKZEnZlacD{X^StW8+_Em zPcg*AoWbtNvB%*V{?k=r{5x#&)v}UEDbnV6_1pXHsGh9J(m<7-3$E&&Dz`nW)QQ}LbXWB1XO0~&@52=Y z4JRr~)<{yMxSl?ss8Pob>kn&i&bx_y>Pbm&3$$M<0vgOrOwv5$pXv{TbUh#&QHf6z z1zqT4GD!+Vi25brlIT&6f7bD)8)!!FO=b1Jk(v;6+f7<&_Cz3h`1~WgL6Zu2Xs5_+ zZ?;)m530e&M#d~|Vw)ndc_BHe_DW|md2!KIST(K*ze z?RjSnEw8J?IT!Ph{d;L!v9*ua-ZK}fmq?HBQyyOQr%m0=_PA^;P44)39arhOnrFF9 zD+i;`baHs$NS;umSb;p}Qq28S^TjCNcIr~W(Rle{D*WYIb zLq3x9ZMW$M#XJ3eT4OoB72^rPvk$C_U*wN7F15;q^Of99vzP)#!G!@u2LQD1gJ&s@ zbTYAvDlPr1<{eL`rw6EBwe#!j`)mxR+la39CFC5fec!3!{On&#|0k0TdD`)%kK1p1 zz53Btfy%;HKzNMl=VD41V0=*v236mI7pzT8IjkP4A^mZmlpVr#HJtfm&i7vVczpn- zF+oY_uMT=5p(ujvG{)l|EI5pSoAf3+283iMOv<6dLz{t4PF`L;vnYwS2|U{?mHBb} zM=Pk?u$P@n38F${vSM4!phhdFSE5p_aY)Gb4;%%}&CL>)xV$#RFS=nB9J{Az^Djwk zO8@UjtvC`_IH?uzCVT|clMlC1>t+3(v;OXQJ1t#l&mUpDcK3VKIFDLrE$gJZ`!9c* z9|!@L=o*`EcLbjTG=z+3iv|Fpo!<{QiK6yRr5$Z9{7&fV+x|)P*@dpx_ zQ=1<3&xzP!E!%ZJxPMLHpWGy6x^}(or}J2N{dlt{IkLvBuQNWINVHXB^HHR37bpK{ zIhCyK+FtpXt>!Lmm5Wm!8n_M^8qI%FH89XI5u}bum8&K$S1FJDtv(gv?CWAZ_voXS z(!Qb1;<31Ch4s2T=m(taSSl0p;F1{--=<0#jAm-~^bUE_vz(*4>cI@A_ZX}0pXcp>O$iy%Tx6>KVJ#Ifd#Ki;mbD{wE#ejyhgmk zqW>y->1mVip9c>f%svXMs;Z(5rH3FtRyYPKBLiOep$Y}cv2i~{%5!o^tAbj)9ldIU z`R4MxSmVws_4XkF^*&#qI?phnTOp1LCLu|L>Ku#$}&7} zD=xX|io4qEi$t>28P~utV_tiAWp!2F(!`Uf>_xx1>)9kne6YLd9yjUOm*qM$XWg^k z0zr(9{i+`dK?bvYIR{JLydTrIjz5g7xwqu9wryvhowQfG6YzMa)cPFmVKtpMD!UA{ z9Ix8D91|J1noGM4wt3=R*V?6P)>;S7o@`9tuk~#;nc^F|>L5d&m;Ctg@Fln$?4%u) zy1^Q)JUn5o_QICs!cEndzae`&Xe@tb?;`5}h_**Sk*(M^_`59tyn~TrOMbyeiL=`f zCD#6jjE4$`lsm}z)hh#j0>_ZgKqYTl;ZtiG9vL~-AM)(kvyjhl={8w+NW?q5uu0(V zf#i6AsG%X=sWTB03d{l1Q?tSaz-BCQBrCh1^Oi;!>Q)DV8^3PG0M6c8ysxbg=HZ>M zu_ip!${-DI_Bi~RayS%*J}gUVLA-i8Eik(VxWQaNN^%!lY)_Vz3^?@WOio2hlX}Q`JfM2A zAC~FjBF}Q0Xj$ELdVL@jPx9hS!od8FAgI=hlDSLL8#r@lc(6h~?@rgolIc5F?AN?B z#4Qu7ic42&p)N4D<==`KBzu~qMoyl(r|h2nLeNh03+U$As=C@NgysAE391`66%6Nq$2Tnu4pt=ReBaPADQ9;cMZ+1RsUMETWJXY80?|;+JOR~>x z+`DmdI5k!?HtpZ`2Ha;DV{3?sL{9UA8|iLzDEVWD+_u}Bxg*PsH$$m*ZI!q%-D$3> zc`ISJn2{!nNp-=l+r}6$5uc-QRj=}%NwG$>$+V&mrw+8dAB|aMaMU&!I^}>FD z+u3rs%uaZUWe5$Dxy@^|Qa&~7F~Eh;oCI&4^gKhdAj7?QlJqnw6;G>7;21S$w_ypC z-SneXW-_Nbpvk34p)+m^XJc*R6Zt_!pXX6#p9aZGY7(mx%2KnI!Rtcd*BVCcI>?Rq zmByY$YU|fT%^G%o*QZ*SzgJ@EZ8EMIO#wWZpst{|5qlaA+Q%lj$W9sWA$;(zb>0`w z^RG=}jNBz)Ng~;ssb&T*ZVZo8*CTmLg(o0S?>x9X+beN<`&aj`>9%oE*Aq=H0}Ld} zD{a?R(9QyOreM(My!QGGUW_1Gsr+z8`b3Ib&F@$+sbxM4I$MG7%qu2aD%IspD^~Xk z``?hL7rz+x%ED;7xKM85Qy2CAg^9Z;1{%!7+cgrgL}|iRu#yno)A!7nWz_ottOvfy ze(6`S`!$ZC!V(+xj^(VcI+PZ(=xdBG1TKAVoKqTq7^Sqiuu%&7>0`F!eBIxWm_8*x zp^Z-Al`mm+cwVd$Gk7rkXS{Z#%Dl5$ysl*(UpJvv!#1V%^H%-&_y&8~@DJ(A8NxP7 zewC53;PShI<(>wi(};-o@mZ{dTvRvFh>-1Q!2=#vm*9p!`h8Xr5knqwCMG8085|%* zpp&>8j()Gd0`#^&Xj_ot4hif$I&JO765B0%Ir0duWU-R{sn3k2Z6b89r=2O()L(lj zDr`65)Q^v<&S63K^M>{^Y#HhycavqC(w*XI=6$G#V3?$S~**$sUwc9xpO`OEL1is`NiW<#8c#eDEg)^7M{h7t2_d zpe?)o$e-0K^l(_e7#e|6OyZ=?mM+mK$xp_9|NcF!t{tipu)@(%4P=d{Hy@mA+S0qe zZ993H8D^MTV!L`WIHkTmY9EU`MoIQkUYX40ptgzIX`^lR>LK>4cB_ z;Y<GL>6w6zbxExw`G zi{G5TYqG;R_k{QyNAm8DO;UkLB)FU-30c)03p2;r(c z)_r4>Z|P;mjU!k?P*`us)H2@cQhx(DKylagyY&6;wCnTG>)~#TG~On-+%B2`CR~q4 za(J!KbVYhydZj!+5s9+s7yJPBTg}scPq=T#wrg$6`&J%z!8uv`Ugh;}WyMzX5Yvd$ z+Ube(hdMU0Vb|L&g%7Ym2 ze2&QONw{B^WBb`P|J5w-gBk%I1`-#uAE2L-2q_<~1f_F-J6257VKJ^gY+SLOL? z$B>8_D$Q0;s@yO^A7vr?-cOf^FW~)0*sl8cC>YbVw}|C7@4KfV`~%L*aw1@3=qnim zHg+>4bZIm?`*uKhbLOgiEJ3R2_+~oO`Ufk$OF`Ss^uT!iRB+QLW5LM8ih}#1DPnDZ zs-8d2F|KSfB~3+l`my(cwLi-e5~U(^l^+FB=r*&4nNZkQWH=0YzhDZYtHJH{p{ zboAU>Se?PR3J0yDwRHnUr< zQ!qE9WgJJK^EzT)8vSv8vi?IEbxCTG6;z-avupPj@bJ*E&Q z97@@AUA~`+MYa~N6`Fpq8<4K(3obTK)m|UWMsBXNHf>*`)tQ~~QJ3Pz2fQYS2u_p) zyqx#Qt(V)ZDV!#6*pc}?5xR7MDRoZS=h3^U*}iYP ztDY?xo=whE^ta#1P-xZ74}5DjWOg(L;!R-kTrvw!KyRPkr5q7nAw9*;-XkSLVQw(# zK=A_2&GFEU^1hPzOvFt-|=N8#8tatRZfW{=KhVn@6Zz- zY7pQ`)v!Tc8ihuyDhbI<;`BRR=p}aPuj|{F>mOPW#x9`nh5$z_l_S^9*a-}FkgCfvjWsW4-b$@Ly9^7AQKFhG>qBooh8%da2U zF5VTGHQaUWh5-xAEA}ZuW?AKFd-0$kOV@pzKi>UpoGvfMhTl$~BfwNH0jqHCut`C; zm0yn)x5uL}-NnmHV^Xv0b%P`y?Vu)BZ9j?5v|6L-(@XE4B~XjKtPeo9BAXt)u(FGz z%;Qn3-5uN`1DQz+{o@$q7$xy9$YB3d5JvKuj*gEZI@-pOh*dLpTKiaGjvu={VWCp= zi>ZHDS0bdc>ZT|`3H+0y@nWQ$5>RH60#C3 z_iFDo2oVi1**bWGf9CtxoRPNIzK;ALVaEFIZx(O~+qR$IEPNM^isru?jg&ta^R%De{R4o8u-U-~P z_WirTaMc07PR#~yfW6?kN{++%&ey^ZBn2s-T!QiUU0OWx*!1g^+|Nqi1`?_30*)b9 zaHqPS6{WMy`UJOns{-k|lAl$BMdtSA7mCIs|MjJ*cEj60`|s=3FNr4G%xOlQPJEMFbspViv}qC+n#4E>;~ini;8B2ECZ`@mvl(wXn#ab*gt*U=bEx zxS{cxUV&$#$H-@)S{lXAtDuVy66vK;i6O_7Xkg+UhzcFcR~%!amsL{Y&zjgwftR?_ zJp`6>&~(^Uvfc8_bNRlF0Ne#M7 z(1N6m(CPvhYEZgj?EzfGp()H3-X^1cQOJM~vLqwHoh;dBKfpa=TDMo=h8$PTp$*te6;RI}gZP5a|b_=*?5(G6z6v_Lp1iaQ|0S*dTn3U^w3$Fd9;{am3` z;l`$JHT!EbI@A=a-{p5(!D0b*{*I;P3m*MX$?RQgKj$(rJzP&NjY0^#*FHr>j@TM@ zPvaA!k7tRJ3Ln$Ih z=G#Gki7kokAPCYu)lj%Trv$}6k%*=8I;7)EpP)@y%rfCUDHZ$xZM|#M$R}55>to7D z*p(RkWd`Y5&-wsT5 zxA49YqxPE~_WDny;cE1cmbYy8qp76)?yRz}0Vjuot!Au+&mqAckJA?FZ{4H2Gryj||Lzo@*i_?y9ga3;@oC&%(? z#C1V%r%xN}5wVl?>_`6Vr)N@Cg}r-3JN)Wbw$x)2wqwmA*Jl?r2BdQ{EeAAZeY4Kn zvnqx~J|+c;E`C?*h^H8=y`o+UeDa^1ju`9IJZFEE++6xxE;yZZTfX-oa=o6=yR$i3 zt+&$`wfpCCLzLHXi>z2ry^-A}y@{P5p7fqPTJ_Pa>i~K9eOECtX%IO33gvz!0m>-+ zS{zSrnmV%1aY@8OD!%D|HpB-aBJy~)1vomiQp$lNNYv&wT$hh)WraOur3b0kNZ6jG z9Uuq1>Fxj{repodm((ihVVJ%dbesTF3V8hbxb+0|FG~l4z|709WLdbpEnogM3L6s$ zj$N-ugwRMB{$9U$YYz<%*UG@;3N8Hr;mbH+{l%@C+gTQ?03` z`O-pipUtuBa^J6KFc^W5nf<(!$w69hq9SCV%*|Yje&dR^>z8@&MZ4kfkku z;Ig?pc9tk{*}cdjn>CD@qn`RA7lmgA7ePkrBLlImC9I!s^Zzf_-U6!1wQCy{1nE|! zQ@XpPyF)^dkS+lMrBex|ySvk+goF}`(o)hOAR!IX4d;FqZr}f$|BUbb{_p+A*kkN9 z*zCn~Kl7e-%{i~R#d{n$(^!?~Hgi6Y;6>%@`k)Pal-SPeWuw>BtvK@;_mBU4PVf+$!F5JF(FCQ@=M>AjWh+`R>0kB zGybP?_sa?@1xlxX3Y`GlAEt=$rNU53$QaN3^D81&+k&N@0~C(B;mM0z;RF1^@ck2F zQLr7@3Xpr=V;BISn*+TJmp0riD%_fKqyq9H)kf!Nhv=%n*!*z(+89h-&(K-c11sk} z?RDdP)SP@VA;EaFJqO?Bj0s=PYoi}t2PgaO`E@~-_4CUp-VRQH*lJjRM=Q>5*RJtk zw{~I}1PewJ@$M$l#C1k*STJh$4iXxkO)V5}z56(`qIdQn`i(Wf+C@QlvnH@2ZA6@2 z`Sh}$S{pRPfkrNJEB5uA-tju6)IfE^6z3@7m5PU3o?GUpyN@m?^|;LEywztV#|$UA z^4KZKc8Ps=4`2w(*c;x+qJuC!2~SQ}igeAmZ>+Y@CK}D_%J|Z|Gz`(xg?5VMXL6m2 zzm1hu5!2~i?Y}pz9DnWLB`Q@ekTJ*%vXV4Dm$#$zQ-HwoUZGK@B=F4Z-6r1qR;ROk zch|b5Hj#Mt+_qf^BRwlyws=Kgo<yBBFo6oDAt}kp^1f$TUTjv^BQQY| zh-D&@*Heo~zWcT)f!3f83Wg^WZ5u987JT|OIQqGs1+ zF(-YJ)RL5p0|gfA-A?Pz#hMN~zcr5iTw_KRIl{gSYEBW9W~5%r7)|jzU2!%_O%)Mw z+k6n=eA9L|@V-$ss59q-BHM$jbT6b{jgoT4jVI$DUuOAOW2&AnMdU_Pf_1FgBuDK5 zIb|ng+meXMln&inZA5Tdc{V>1XE&BpINRLrUV8w#K!(_& zu|^IjZt)oSou2<_torQcceQS^=3IQKGf-#Z8faI+=Ful_qMjcb;`4^(jo~{o$Qj## zGN2yCljZD@^c8XU`|93D>wKq|7xFLrRBS=Xk5w0>A{)T#B^XhESr!1jb|3l|5*W`U$mN^wXSj?5Jx5~E^}kOVAB+=0{; zyH!3}lK`lz1?=F*TT|)b%{&Cqwt2Sop~kwO!j(kihmw!aM=Sn{M|F<54sg&F<7?2( zID82+Z7tJ0RM4%?I49)64DY~_#2ctBM8aOC)Un=X5&TZN&I?>l$M^!6ShP5`dz!yJ0J`u{$jp&945ogsdn0tDG&3d76j$BFnR$Lu*j*8!_u%WU90+Qg-hO@srfOBW5Ma zW9+5Htr2p^zrKF<-Co+VuNfAiBNR40N|4I%gC>|v5)OX}f;sJ?H@ZU$}J+)EPO@>chN)um$`)ekI1}#>FnwCm8z_v*%c(S;6M z=uj_#1sNyS(mkdZ^TU3`z-;J$v0-Z_H>lC`cJRT<;F#PkZQJZLsf|0|zL5@VMn-o; zQR-QN=@w;O#{#_B{({o#i|Xsz!_U*|_G`>};dr9Rt9%?D2*ssWU7nnWa@x%AtqT4By^(Nb zQcx}&2g4d8Pdkl^4GmLs?`6nBLzG0=Lc@uH0FdA=2_TXPcm<`cugX8IBS9r>-&@V9 z>F>9AElYZz9gL*oXyz{(giM*k2)5!bYlP$Te#WC~TeR1{Zo8$mJQ~~|*QsV&q2X7$Qc{k2*w5Gzw)(fkC@7cP=#6isl^a*yTR#s?RjidCt9}MjfXIG^!SCA<3m@<* zKe!8p%Qd_B4~!{68<4pa}w}`)(NTh*v)wjhB0D`~Uo& z!$V0pqPv$Myl?f3ZJ4^&R8yyRp^f3Zs9DT&`|^HeZ>L->^BvpPO3~G3u`4dEAN#`R zwOuBDA}>=MV_AF2P8W^FG+@fYw@=Z3KHlW6o(8_Ka5gcOyG=ihPeI$7)Pm=6mY{Ro zn$fd5_QP^^JN0awhPnazP@ns;GnZyAt@gW(1T75~^J(~Sp+8 zy0_MX7uq~^+Z5<*_B}r0_5K+a1EaCVGWKy}7Cme!FL4OJ6*6^~WzzFo_=OoMk_FVu z9Z`l9y}B}(pOBtjPQj}8h76!GO#k;2M&RW#a~wbRYqYn4;)4xL({ZAza7PYn6wYHz z5)@)LgbP9z5+>YN{nrz#zJAol9>*-B4n-RohTUC1%9|$zte1_2-8KYA!omxYE=x6a zGJiy-_VyY-Y$2`N$Wfhg84=`P-YDWORMs>cQPQsVV$Jl`HMb-`!JI%|u%vHnP}UuE zv(#9*DSy*Hqoxn0FjY$9w510bN_DY>>l_}0Rcg=F zTzY``GkWM&A%~ko*;xDPJHUq^15A85?AVIOq)JaD{T-QbhI;kg${fBhJon|Ti!Z%p z&Pw73x8JWF}vYzb4WAgqo{j1;`7!E3nP>2(G6Uv$Z=O{^jw?fbLWLe%m@IN&fa|sO1Oht%L2% z147}S!vDWaeejIc)x%%}9n?u;Yjcg@YJO{+@Hqk&8zQM?HGDh->GgMVD3YQb$8ztE z424>rHbOwlQ%HYw5uCA^lO#@X3=KS*uq3(f3kj-gMW-T7_{*3R5O4>=qh6HpIc!Zg z#DmSuF#ef5S&X&mhH5_YTpfAH12FnMqo4z?G7o8`?K|8iiG93bC z0pO8z^!==vhL(d6~SO)_JMN=CwHA-?Y2W%&(0?L1)x8W)E=JB9u0!Ymw@u}2M z5aLncl~Ps2Fsr{z77{tAz~d7lpoU7eT7h>qfl2lw6{0(Q;C!0L1s{EfbDIDPgOH5> z19|@MbMLu%ef|B#(PF0xm2nvvDxzNds5;~w_pa$K6J&6M5dNWoo`c45y^PH;2P^@) z?wa}-RS#kq03Aw1RB*;5-W!-Y1vEf7+AcC=m=G`v`br}+BRJOC$@32-B)P;N<_338v9Js% z4q2fcu5eixL~zsZ^@;+H|!UjttgH^dY?K8YONb6F_8 z*04)Og?N+Dh{+-6O@tpmjFOw1u?wdHeLyL52O0>^JvlxpfzKfI>%9=^i270@@*Lw1 zANUU|o!$}9V=%(xUSa-agL?!{vY(Vi6nO?+AwR5(`-mV~tMIchhcm&+wc}a~$pa8) zc|3iB2M%1*>+DUv*ctFCdS83p${#YlAC;54s-S8c1EHr(f`hNVLARB-KD?0tO6waH z1cS;zMmOwz_cIvXw*`GSYpnoGEddkeGo%G5@?W6B;C@a$5&mBykp%D!30j0mOXg4} z`p^dlll+7a=atPKE<6+EZ%DE3K< z&W?sRkze@G)w^y0p3(;bGMl1*c&u#0@gQ~q_&=SB;Kc|%m(;$5xH0`}k3M&T{OCp4 zVU#31KjQG-Clm#SFW;I`8Y5pmx@f!Q${4HAy}!J~sE3#MvlJ#`pgzX0p`g z+!hy@zID97ZF0X>%%*%MIrxw`m?fs7x*kPF89a#w5zFQGX=PeDzi-NRlRSiQtrYDY z4EF@Dn>V^Jp6y$@K=h2yo+@8Z5f;gy!`QS0Al`T9zPHbYE9f_mIcVDRoR0R@15 z+r?4jBItY{KcFrAv|Y$`r*oU_1VU5hxqQj|pAqW1Z;W$I);VPxXcwsv1NMas527gw zCExMwspD{QJrkq-Sc-&-%p)F8Hgbo>f2H6T7+Lh!Tpkn_8 zW$k}WX@-~I)7_m1=$C6t0HBeOmBmic{$3s;)54?n6~Qd(<$Bdt&+Dpp7f|U;38K`=a0mu6x+ZPYT}BJ!y?r>q7cQz3Q?u&d1irOoa}(A zKc09DF|vn5Vlya6fIo~T6T^!HH|_;A)D=>o70Q5-gzN^wqw4_1;cHaiU*qlr@yr~( z!T|(ZHDUBxz{%u>x@JN%L*LQsVgB%Ybhf|e{RNoYb@a!VDaF}-2Bg|cVTmgr-7;6E z-;?`Vx_!SPSo5hjyM-e~nP<5_x9Lp%+hL!S=g;7~j6y;axg{B^qhnwfLQKBibz=B! z&H?Pu0Nq!8D20ERx-%lwpwM`w0DnaUA9zeTDXisyfRk%9_gA%SICSB!|G|Zrkw2Am z>c0o``6ME46(ok`x|J)_uKkHT8Zvk8K%NrJ;F3d!XhW=j>kU5y2J*gVCpg45qM*lb zs-~Ux^%|d(mdQDM`%$gl(99Bto>2p0{tD{1k5|pUJ`)VBs&g0-R!~sL0ZpbEW?(Rs zyX6UZzPp8@!fF5+xtsKFSpNUZ)ffN0)e%#J>#y)=ZNNr?#y4rhP6`eNHF;J{k)&`@^^uzenQ?Lu$6 zCX3IDGaJ0SUpxm&;qazdSjk$pGw75Pt=!w&Tixpy*F({*b2Mt)A5v}-P{4_Tr`ao# z&RqBYx;G|ZN*N1TQM)^UciVe+OhF_Jr;_|d4X?^MghX%ULBYl_YN6v}P|bk&;ZMOg zKX=w;H3>{B;sxy-3DIU!teSa2TY_#8cn=#KBh3U2bNvocVcJ&K?kfXM zUG9AK=~Q_Y$<&}`#7yuq7563;8Zs%rQ{Ixj?qC%ki_Q8W+0V|>Z-CxgosW#)VUl+) zg%Sg};`}uV5*|Pe65jQ1*0mhf0Kh#nZ5Ns)|4~Yrck3@f9JF5IM=>$YAwRg{A1h&F z@}cKxV|V!dec-^$-btRUJ&=wKo5_TMNu6V+@YzqWK7o;eVSu;8xFrKvA36p`%CAA= zoTXx*b3x_3={SixAfyGQ%Gj#gZ9ly%o2+MN0xlO87D~Zv^%`p^*b9LpxU~#%dsj50 zv}1$2MDy?Ol6uyCMbIAc07ci}MBX2CAN`-*C0o^skbk%Ua0mbQdu24y3f9QJPQ{t9 z2HYpXQGuj*>tl*qs;_zzRt|!{nbos<->jTUk+o0k2kR8j$z4E8gmxP>$dQ)kJfsz}6XZ!1nKp)C?W23MAmymqMDkczE=1=wqFu=>Ih4tzQzs%vp2Z5(@ z;uIV_H2fv$DqXefT2Gd`Z$BzU*U>Z{F)TErGyclAE_!w}nAPNMb0oHuAK?j{gTV); z@Lgz~!2`v%8WY@8&;h z@*5jcll&#n%mc<))v;2VqAF^*?a>Lhp)lM#?bKEV1fGfxuI=)fo{9?A?%rPQn_Ji1NFNwHWbB~*I3b$3c|pKV$7|f~ zl7>@#DzOuO#sHiKrZ@0!6H&eOK632t>e3XSs&g89uRjrZ69uzoP9+ij4zmU*-yA{{ z9q%XX6W*n$x5l?i?{VeIrlM6CHyL0#ff$xMbaiqZ9(pwDN|~Sl>i}EA5%Pc{4^stg zK}Kq*f#o(b^-0_{ke|G3KJeF#V?+9bu!83X>WV>ghHfOg_Ur_hKf$(@mLjli<>ob$ z)2)EqFl{JfP{LM6a{WCg$!sGx-7FfqyO&6ezPI<%kA~bsMFkW2Dj~1Fp68Y{Xm6yK z?tM(ewA$Ifm$CEvY9kZHL4j?MTlLX$# zRn*itmtkU_kH)$~>Q=$H7RvYvov}$EHVIcsahIp9u8r0915dTc=FIwhf3L{4_l)b7 z^%d7_S9Nu}=G&o7kPFGleQKrD=Aw`b;n1X225-RPq*17`SrMG_o6;$dJ4ycKaAsMi zJk@V+Zjg1^O3UE}+(4qbfq?1}4~1YWW#@RiBYGw}1W~VF#{$yz1_n=VtkfG9wK1Ap zgMmmZFd>cGp~VF)%YfOZ{$W9KFlcpWRUmpBD4`beg`hYhEZBwjF5!FX2k$YH1FR!L z0VhcuAjV;zK26=mL)0_Ye;^k{wiIiZp(8hkQw9uEA;v_I9C%QhjB`Qd*?S2MGD zU|$3!9Gze>24V|?`F*ftLK_hQRpJIBZa_da=nQ=JUd#gQnAjgXFK$R?E`rGJ^B;s? zW`*u>3inQY6$ZYd(p>Q#sst4aLO&5sby7Pj64hhmK={iskc=l9qzBpEi)1m%I*Js=2Tv8hz>HwJj65W%lE;I?|CV34s(-aw=Y6fZFY z{Z?~w;30pM7(8Y7O2Ype;;SG)c5}fuHSodB{6Z9j)ApA84)Y)e zV-XFOrecOJ2r^H)L~9cgqQAyhj}>FAiwq&K$fi8od-IeYp}lQd-+9Cn$tFTrouHZ+ z6ke4FvJL`g+Q{~Y}{CHSkC-!sB8Rl(7#52!y(qX9~TOdP#xeE8w5mfBwZ zBPA4sIszb6H{>o#L_B)jD$^kWsAh2B70+A%{NbAjsib^LVW=zyRIx zy)V+)sA{SIXydpVc)(5km>WnhPzOvfK7V@M1O5#VCTs;g=zJ?TBo(Mxp$Gl^)dJjd z73d>U`!m$zNC~)JT@-y3SOXHqBB#|1hORiE5PD6l2(CD-V)8gHYNiDIM(6UF)5Fyt zy3(A|;Exh}4H~7VrZO?8WoQVnY2*YjUU_&%gG;q-yH*^w0{JX^yAkM$8?+@b4$^{e z_NtgbL-Ye(YXi|`4|tG1Q(a4$Gly%03zCu?dIw#e6F$(|jQjTzP!LG+J#Wl&Bjw4! ztxy{yf;H(s@7hNlJc9QOV!D7+(w8qXd_Tv>9|H65s=jMM!VLsXoo|+R69~aIhY?#{ z5&kBgzEj}902fj}h7(Bop#u1VU`{k-1hA9(T=LFB?%k0CKUJ`Y5cX~m{Xi8FOky%s z^|6B&u}Rb4jEf4cq$u%%Dd*k3e>6Klq5!&^xAoT-%s{$QN|;Xjx<$0S%v&&GMzjRk;?yWA+SSnXWHipaLF%shFz11P5?|zZv0dp2!2; zy%222ZYlU1r(f#S0SAvcLO`Ozg$V25SL*kTYwPMIp+cDi4icId`mhRq^JHvPTrq*v zqhdc-$*5%rQezOZ#`v7ts1mI- z;DxavDiWc3Bwnj(Q`y_P_0JwF4!+;Ci=lhMD;-zshMU7>hjP%l^?HZ1%7^w&6PPk~ z0YPl3;U$>&+DTGykT(2BX{c@lUg4$uUc;$+-fzmJRq(1eQ{*l?@RZ+xzm}B?sP%V@ zfr(ujCtV%6uO<_5j14z%PetmoT`9}$XWe7!lCNsYYLW13I17BZDq2&`*zxfNP%(^O zpY&&t_K)sIgnI6og;WEbc$P$AaT5Us?#BwBY$*yNA&`#^m&Rw=L=Xj(%)5CY_@2IB_`~z z@&&Y^-WNWz7fNtZ=@Y;5@dUe{$dbrcC0hN#Vf4!zcK1Is$oD7EnXrx^;!w;gr`6f! zWujp7UpC2}il#7j3`HS_xSV?`$2W4DbxSZA7HCAdo_hpdrcvq$=vBi7LZ+-MpADXP zg~wVR_4qYV8SzrpN?cCp0wLJ2I%7hfJ@&Kn>lH|0$Qf|ZmLvn(Z72fjF#{R#h`7vx z0CAk+4+kX}y^G_!&zh5|4*z=mD^v?BDehl`j*RhgQtLYtKK)$* zpJJUr@ZduI)V|ptBM3_Z9&hlA5dyMou=x}5ttirc$a{An7u`oqp#zqXRdRF+au1pN znN4-@aC5>S)<_q)plWVYBt$n{kEKMtMF6_$fJuOy5MG#fDY@-ihQDU;H*(B zEzhTi=qx|EyWaB;JU_K<76lRZqgAZCZ=krJHzGEeAJ_mJ0+08>0qVdm?7tpJKtsp} zA|;{g5M}`PaRup4M(RuWSyM@3b^3tA`PCc3g8Pa-5b%C=^>DOQIO<=eF%P}7t+a9M zH~uH?k!aOJYCiKV|9JS7x%L+z=<6bPpZ-~X`a_o$Vs*D-H39a&KC`LJ^+}?;ke7BFIxFW18e$QR>Y3M%Xh^P(gQ|^z;Nc!(BWaqStzL9e1nV38f zIod^Gkj^0+K&f3MhnfO8W2E~@lh=`$AU}d{Josk)Bla=*9yXva_poG( zvLIvJ>E%D(DBWA!Y`}Q=M%B-+VESp#b4l~S`2LwQgQBPmJi$asbIK$_2dA;V3m@Pt z``1Xzji8%p6G2_R0iv`4vBM2a1aU|^S?;#uh0VzsV0-k(5OjTe- z0XNh2MjI#66RMbmgnR2_FgDs^wO^Qoy{Y zlE&LLh5UdVO!f|E<$3%>M*Kj-8>DekHmZxl+ibda$hU z@*TZ3P&8})crg0NZm{mFcH&_qZ2#_!vfw{i#tlSGs^8z&$ai;(TgpX#crIt+ujt8{ z+P?=$vkSF^KigeFYGZ?oDFe>}={)`q=G$il53};AV1qqRMjm8jNhhte;@Aeo4_3U zX{3@+KYk&R6RUR+M>3S#K}8Vz5It}O2#v`1m*a#cTxf(Nojj0*3mOFXD_evl5G8yHSbd&@81cm(&0DxTa)CTHA&d7CcH-0#X9{_9psB8@uEa;P^qXn#}i6h3~SF1nPnp@58dNe>j`<0a|U z42|d{<|v{l?ySK)idaGBI!^n3HjQ%geP40Ri2jQeajm6!rNHm3;w={&D4tJ#^E&tp zjE5G=PEFOiic=1l>{Xw(+l@gv5Q%vw^BK^jnrKlG=~f(I0Z%0@?ScZ(zzI}a%}XIn zW|BS7oB*Eokt8#TiW<%MUp%lKugJ>qm(*Vfd`L_PLSxgPE?+H{u95)-S^h7BDhowO zmsob`yS^jso7DLXA}@Ep3Ux%l`s)({0%Vbl&s-9H>Rif6Dghhm5TIQQry;ln(l}+H zdHOGCY~`c7G6kLu{87D)Vh|>&WvL|d*F8%bPRI|WZpbkc^4ttho%D1=aV_po9~P8RVDhceOms!k?~LYxVVswII% zkcxwOvP}<}`6OEtq1cM{(T9+oD*stYzK0VomWu}*){38AAisE#eUaGP{WWPbt-Ezl z^yRNr_1p3D((e07Z7A`zKa<704A>j%tK7DhZ=Txw>CQgfgs!NxIi|iP1alm|v$jS( z4uoRF5|v0?PD$Vc&^%acGr>=$=$<}7gvVM7+)O6O`95?ibBQ33PCZ(!*2>j7X~h+% zh13!$2Ol4i9?j=qM339LkBm>L7QL{*e@a-ZLV-G7Qy=>euyq6JTy^dMrrR|?t0unr z7F2klWs&|jbG=XnBR~*lk3>9b{_%XbO^Izhro&5lLo~8>Z=pl2v(16PV!i!4r5lD} zim-cxp>{L{;J;gPjP7wAn#}TY9Qqo z5xA`6w8*a|TA_9dFD>1$7Xi<~CxebSg+T_8;Gg#XsLF>s^AtM}HxwMGX1*XCvp1A) zSEVH3ZGU|L+`B=4!YkajFItax7HVO=&6mRjINljvyVM+ig?IzO9I5%rJpE(iiu!Zs zZ)tp%0KIKTe20#R`-%uSztNnFohi$>;bmvGl--&(vDZe0n&GEa*306%lN;`fANu`= z-msu_kFmBi+Jr0u>Ma{XA)zEUm7=IL>RF#%>4DmMvCVsL+&|=SiD&-@N*Ztbt-E$; z`_q@4uSOJ}62kjWNdG@)1nk+Y>f#qQgk`pw;f0%(dN#{s|5#FhK?KP?-pi8aULB#V z?E~IV?ow zD2A14G$j2fUk^Z8`n2Wnf}IU=j5|{%SzccAPA>O^_*M+w%`bP_7dL;__gtffeFxvN zqXxRjpaci(d+n`D2N(3ioyY#D9?&PJb>-){oT^j^%jE;V4p?nu_~IawfR{!liXU&Uc*Z*NyJ zG|X6VxktSR9z4~W=+)be&^z3XvjllQl`h7xaQ0Hx>e*D9VD!7_VDaDDeNXSL&pGc} z6^omXlsk-%kkw8+!+=W6-1>QqIEE-kpSVGhOda9|4uTVu8#(xvVj~to>3?L*4SuNM zmDVTJsS=)G(~tgq+2t}@xf7R_^#fgfsEeuSQv0ln4)njNO zdHfB1M;7pt_w(-izpf3FmMGV}zW)AYoxzPI`$xtnJ|PLr541=ZTD`z`R9Y*^pav;Z zv9YNhZcZ^IvRGf3N8_)@%2Q~6qMB=zy9`Ig0S6aG>jK$S!f zf~sCi{$!AUeSol0<3NXWx6T@_>ZKzST@+-!EXVPBOW)U&UP%Gaci*jG5IkUhwK1=IpbaLo-RQgg;h=9VNYnTkXVzN9)v0M-w6inbj z`^y_oY{P&=9~?i#1TP(U9a9K?Kxlz(_7NzMtao^!Ru9Ez(;j7mr9^l=iQ?)BT*jjiqJ$;SAgidVns|Kt-Q)oU0Rb(b)>Ko9HteI} zbl);O0f5EuARr#=1})EpU~i4}H~fjWrY|E%_>@RF9#XYLc$8#m-_I`oY^Ndkr*0(C zdW3XHp^#{c;g@s~8g0i4)(X&onY*DrA@Ca+iXax*d!{Jjg;{O-stTY=c(=dv!f&!P z76uACgrCw$#nK~z&D9IJ%E7b_s50RInz4zs%2t4I4YabESEX>BeX}b5;YiWWE{$Za zW%iP0FUwmws*t=NU*kkLB}|7sM(M5*<8l&v?2;GbO=*y#ck`O`=7Oe@R4%ZJ_IohK z-R|>~z1pBV=BB{<*6vl~B*4rmI3EXCSXkI3d(GUTt+m%4fIsvfFu{-Rt;dqC=S7c> z*MTR}Jfal1b9b4_&qJ=V$scF$Q_P*^C}pxp=j?a*C)0-d80XJSbWoMX$U zJ}vRuf3Q%>Wk3}YP}&het%pLLIu?aX+*h379C)`>j$c8eFq$9VV84M&hMf*9|JdlQ zDB!XSp|GcZ9MKAJCN}eqs1ZW&;bN#vhh_7A!pmf1FU98bU1f*0NIl(zM{nM+ChLi* zlP>&)pin(BTTeGpEOxdZEiLnj)M{}wEaDU2_jn6PrRCti_f!m+iNTSTFFOQrK8&*1 zlxnfGp%0ca%w(71ddhFn#iqtGo$M}SkSyHu24|~U{%q5C4Pgqo&WG_pg~K9t3uFWs zlm_3SE4_(`M*~D6^%#xx4zM=)FD4Sx;h4g=I6b%~Qki?7d) zLAqEL?$mPOwhC4v9S5padaPI0EnXbW;uv`AFLAHwaR_{TUv_&AM@I6AVBnuLvXvBx zTaDP%@6x`Q^~^r`ykRvvCl8PXvNU-e#L>uxAw{}^>ZV{eD6@9jf%QU6J$}ckewU8H z=M6rQPYgfEau4y;sFsg?d}zg%l9#zX>#lLjjf|;Mm^XRcn?xBz0yblUok~E6y7Uo? zYH&mHtSIl6xe<* z(kfQV%yCu&zj}lVd?ayY!WH@H$=PgYI)^XS6#rJIb9{AVsJ)*F!^I?y-ZD#38wA-I zQF?0Z-tEjb#}qdKaJ%(EvVS0-n*6)#B{o&bvm>V(-z>DZVrN$~s|tur^YL z;Ji9is6RhaqNS^p%;>dd68l{|{BEokoqFb7aZ%kEaWYHO_P@ZvA+BJGiwZWmVth_E zQ*r;*%poj8(DT=-p;8E+-7xMF+7M9SItEj>Nc2EJci$a^Mljq2xB*xJ@v*=5p=JCE z$h)mXw?US&wDZNKF#@5XSAYCc&g#uQ4FVK(jyQaW_c$ z8jfTa{WS$?@DKF2;z%E%Pjv@{!l)^KD$?Unl`Qf%d2=mX_SZ!u07pVaBs}Whp!^L- zO4`|hTeB0c&;olIyel8Rlkz*?k=JiJ5=ZOY{f3JAH+OkLrSbN$WW(X4y{xBK zjhWQKlJ7rNyxM{5D&C&opjbuBWm;_>i%H_SLa59{ldqFPU_U=aU-n+}$K&C0{ZV6g zb2efDUq+KAA3|af5+MBKRlg2=?mKgRG6g~uR>2(#4CsIao05}o6QLXuXd2^A9@Ox` zYx}{T0}j-EsG)r%7W>Wn2I3&qTbn@|&y%I(+DZ!Fea(ig#`T+ol5XDNuWQNP)z z;rwvQDFv4nAvNWnU{)qFVD}T&l6^wrZ0?(nyGl%&c{0O?R2m>=c0w;So`u zy2_BBcZs-N(`VL%YpIli$&|9R_r;H^nRZM5a7SFt;Y(%Nu)NlAoM6 zIo;#oc@VDmRzuQrX>Yk;8hP2)+)o^+?vcC1@d3Or(6-!x?hT1ES^R@^>pB$m8JVuV z41j8ks)!a1mEb3nVY7qj>+r%1+np{;X^>y@YZ!_>1DqHqr|Ym0=I%t6Vn5`}9%UDY z({8=bk>nz}pbe^M6twW$gV}&g`*mt($T?2njW@U!V-j=A03KL6EE3*MM|AUlq%T3G z4*bWi%(FEv3*r0{NA4M@?%73U{`j_Rpk9tUY?cJ zQ1`m%M0vS(l%nHHh6}#g7Ua*jav;bYlavzU38Z^g2;&rp6d-sVSU`M0fz%77B}r84 zn^2ut?X+*^5fm5@=~rsSMRzuikS?`0OUL;L%0?9wC{64s!&CmqL|DMY2k&g{5^ZDB z1uAO@thHJgWhpH!#i#UdJfXaf>Kxg=j(D=D6Kbo3hEdCVGFg#*O=!b_`e(*aSs%WY znDIR_8d>S{cl}tze()!G%>!)>X?ztX8HZ)P{yV;G4@;|-yDRFlV_fd^jkP19cnK}Y#6KIMUSSFE_3 zuZ0w~&Wh|2izUU|xG0z}>fg8@B|D_6`PZwV?Vo>8@1{%E!wOp+BLHBL&Wy(oI9Rkm zrf-V_bn)=1wI1p*Xo-?;VN}h;<%F!P%V`JYM=^8 zZ5MZYIF1x7x0n`!?;6KAHJ`|-9>2g~k0~g)r&%+H42*KCJ(6yv0UZIo%0PEmcz8Up zz?&I=gF-6Y>t2R#&zand&=HtAcCSV=-D2fej$3Ng=a_(}jMeXGB-*mQpur%6tN)(D z1-*dXvY*)h+|ky^73uU`#dY9k5iZ$=dN%d(Q?Q@TJ@Ta4naHtBWG|zNZb|tv#(|gj0=f6-3M$LCn+MfEG{u zPpA<^2Z6l2e?i_K(<`@#uQoV0&o^E^jSOu$uh$BBP6-QMO~qw6dfxo#KPv}$rs`h3 z*Trv)j5W9IkVbcVzw>k^qRwK*)yY!d+xVo4`}r18saB;~lD!`VX!o%`DE(oF7=D){ z2`nYCHwAs390D_)-zj;iAp9tcCg;AX0HC=A_KHw@3`D&JApDm!&-kOBz$AYJoftjg z8Z%@57q*3%k>ci<8`Ikeo-04!3$bI4dDJ_6$6j@@_Ggi3CHj=* zzm>NXA)n5EBIWqV;+o}WMEa{diSM?Q|0X6zloai?r->x4&Vc&3Tx+NZP(5OSE#fFs zQvKT*#JmQ4s2q8NJ^wJ&h(?m^FtXcH;NKA|iI7&?tV)qNAYh{+gjUPd_;dRkcg2~x z%iQcsg9uWmN;U#3dT^b@!8JZ|zj2UG_w@YOdE{BW^MV|oHW(|nYz^S?U*RInK7ebe z!d$lhCEn8dqN`UVg{T30%lU2wJI^1i8#TNYUc27ezlw^Ej7+SruYWtrGeHi4fn$m% zZZV?*?r~tw2_X4<%01_>?BsLgU2D?&!Y>6ImJe?R5Uxl3*_(^|- z2M}1)7O{~~kbs(9Nj-NHgblt_+;mc{P)CQ=%Dd6)qElT}dXwr_0i!0E`tvF&UKcvNmOc4X_!}_PWz1ia89on41i?2d3;P?4)Kr2An zYKvF-pNwk&MtgHAbma_?eW&rEA2j%R}H@QHBq2yHm6kf$PjbN>TI$6?NtJ#ozK)YkEdQg!HDiPFw zz$i2-1XVB?O6GdW;Pc?eZ|6o@MYba3I zIUhvOV;&DOnqMh4AYZZsEdN5r%ZUG&XIw$hPf}a`nn)yDV1X_5X!_CQJX8eUa4%9? zvb$6Ju2r(+qIOZ534hir=KO=Z|Kn0^nCH7*15R0yqcc#rZ)v&t83qT*h{VKo$3c&C zZqxY$IifKXRIQ^wphSX`8{kv*I6!CDJ&&3(grhAgW&Up4@rSAuql9{8Ub*M94BsIX zNXjAN)~N5{%oz9c#Z+-W1~D!PlDZ1Y`i=E$koz)R0nE^{D~`_2bUD*K%h2~=WQJu3 z;g0Y5PRH(~J%DpZcE_Qro{6oGss4^}W(?aE=!t?fl(wW)GRrA)*nO(Aj#@hkYjwa#qI+kOAfGnWnvr4y1p8D5@Ng-CO-Qo4d;Leqfxsc-^G|=#NSj*kkkDPE@}qDk{pDv>OPDbUp^?w;6GHx0a!}>wj3JGv{VIGY!Vv z=8}9wCcZ-Lne)gV3JRu4@~!)I`s$ucv;Wv4$uY9~k=wAZx>1yQb^;==qu~w^kE@Qs zOgJDw>+-kDtnX2m=+QL6gz9U^nzc$Ic^z&rfo)TsR@xu~PUW$Vy3MT3*x#V?4?=na zq!Jb0IAr2(Qc$Fz!*bcjZ?jrexY%uP-w6}1OaQUNh*0+fyzSKisZrR(y>(rugvxX` z1vxLdqyta`i7R!L>(Qx&b-H}(zxm&47y#P-zbA<876!HF9ILa=1@9l8>_2b8E6yG- z!dk=r%tyg~dCovAzM{w`6&gCFlpkP>y^Ci*;FQ?M8NuWBGNS z&9x!`)9=1*%=Z!u2`C+8b+dHS(=o6#@6$xH0kVJ}}(Bi185+ zaXV81ESxd%6d4g$Q1-?GwbM-j2n)A5ph^D#2Qi4&$*0_ui^rQM=gVO*rtiNZ$NKuk zP{%w3m&IW{r2Q@B!K?A(Iv2O=_~#aGlH`jKW)FeoU4G{t`qfsEjazA8pSfvUNHF(K`W zC9kXH6@Hv@K_z>eh*N!EJDku~5Ep|DMs#a&N{P%}5S$No^8E~Y%nli1Jpw@xpfIX) zVjdlUfmKD2QG7OP_xVRmJ`k+Eh;#+@c3fs0S&qFIHFb&ug>BoXXOTm`PvuKBN`1!H zFRFmwGD&#(O_W7U><1-gUGtV|{>dA4>3;u8cj`u=^vO}w&~@5bir?2J!JN_r?v z_>Tde;{eJ?Q|@jhS9JdSpucLdr*L;Uti|H!ut~`AA=nGhu+go&IN7MD*z;a>=`-`) zMZsi@Vo=&z$i!v8u1(eNr#J}!nYppFUgG}d2cKp}lh>#o{~0%UObdR(|JnU`^tu9P z=6gI!bJ9P){1Q6^+ZxXxuqqVR-GifBu z6Y3C158k%iVO%LaNQaJm>9!l-X7Ex1;4f+ zN4OCPxJP?xY`+hGzlBAjus&LOGx>Ox8k{?i<=3Szisfw91ppQFwXn%!5sQ06==#~H z>68;e)r{qL;1A9vfWgvp7Qu&UVg!Pw0MPa<-E0v9!5!-RWpC;vMEp~In;4J+vSkZe zeW!7K)Olu;y6I9`@e}JKF}7E`XzNi;+wmy#+p&nq=r#+U#5jrS&i?y{G^sqB&lMHL z@+u!-7xj{}aXp7&lkDxGMQVzdt8aSZ9fO{CC>S0ndcHLcc$e&pGF>4Yxs?M6jI!RN zm5bmseB;7VY1mNp^MEx7o+kJcjDPg3zDG}AhMQ2l!mR#%X-O2E_+xQtHgjIfFNWI6 zQXP0@4GS=u16aIm<((A+>M;}_iY z6DWqg)f3ff=9<{eKN4>3eDO8h{n72X?%iF>XnxeOCzdqKtxKa&{W6-aHW~BSIJ-lT zY~K*thyX&*yI1w&ZB+)q2rF48$q?i0CU7~}8k|iJyUVVn3zW?aczMEqumm6FdG_Un zcE>!XJ_X)*2D<(2p4(&d*3?vQk`Ch~{kEhv04{v3)X(S`E{q|YlY@-Vh&n9L(Y_R&ZSU5bbvFkjymhCeM@Rh<%>Q4i=K6qY)5IRL)zj zwCgX6YyZHN@FXeL#mQ&mCIeG=O36oEwHCg1m#ElWOxlsr$ zHEBS2+rR9*g?!WMCB>hL;tE6KukArxwunrz-o*7d(pyO{#n`}(DO+=4dnkrn zuvWeXOT>}Ov#tC2R3XL_r(<}|HwS_hspE`==`mw#Q=I|TrRJJ4Ha2d10;<|`a_;hg z&f+H8T-WS3>QjE2A(FYCHRa;S7NWGun9u*_CNu_EnBmz%c{LG+NFGT;=d06`M9C|K{P<5;n6)oUK7 zYo_=8+GfRfjqwl6!O`2%(mfC)d}nZX!u>4EK^X@#4^GJOP>|EO!wwhrysPJl95n#4 z0JN8bV6TpSfOO8u7rq@*M5WtrEE2daqAGOugpe*5ppMxKCW!J?fF`jTNxXeK0-U>l z*?>aS<6t)hOMpId9ZWpMo9X2Ku5y||fk!3DA&380_{sNtIpS_&eu|7j;mNj6e|-Vu zGm&UT1&$?{^ix3_6X(di!$zTktw&vTqLpQ;+4CB9XdmT7{EY3o}5u7*J zez0fm#57TRfC85O{Mx;G8EBM$_ zkR=6#{kr9R*GV_C&bR{o=Lo90T)2C%pTq{8+`7{_o0FQ-r%v5$kroqHxq=>nc%Whr z$o>bB4Ac$VQyV;~ZhNx%FC+{$YAM+QQx-UsiiG!r$b2_99WKL@#UMd@Z%lc2uN$x> zl9t}L5hCNn8FWyW0*o~wsICO@AMQ-+Fa(mF+->|KU&KyRkE#v*GAQNG#j9*AwP$Gg zZ9Hv8Zs6g;_9o_!C#+%>!XZcz@#eMsy-AwDn%7wHShR}KMk_ojq-p)%HPCrK(zh*0_nODxn zKAh>|Tiq1XCcFq7S$tRQP=0>~Cs$ys3V7Lm2ld?hbeP66 zGN>iWQ-im>udK{Q#ryDjG1BaxF#Bg5>3>2hbQGXX763rOkiC8%(t4^CrKdN_MRw02 zl6{5%2aF?C@e#Ch^rGQ_(`VE%(UKA1z@=0H&FjsgVL0Z(8mQeX5YkO76T+qBdA;={ zgvQg~xy;tt#8Td%Ps1%--T})4+%dcLIKO2H)EA$*2DQ?U^O;lVsh1W8-Xu^6xT)l+ zzPSO<+TnO!wrb$KyJ{BYb;1_J@%pAZ=2jiM>|3vXhJMyTT z8w=!KbBY-BNt>xh$-23HD1dSG1=SA@k8^cuK5+R8;2TXhhb%?iM>LRB;SCLPcsu0{ z=8bezf8zJWh2G2;6nsu{thGCjUcnPNo`FRie?Q?ZGVvta9p(y-JNScZ_Aw}iM{>@4 ztC~U3RXh}IwDsMVnIX!FsXh2@r44~GpCv}P9vjIdh0oae_&i09pok|UmL9H@>$UY2 z3?!)N4^)7+_}68dndNkBOnythzh>5HC`D zJHPbb82w+eCl&(!pw{1?|4S=F=ifJ_e>}4IHihk80YU(E%hCzU zLCkaW!|-@Mu-mseGp}LsAZ<_jTwzvx8){f8E}>tv2-4j*RH;qKLE_nF;{My4FPn3I z&~@CeN7{J+8((sPS;nkCxm7EBi}mRelkQm1A7VDxra!sC{uh`mZ9PYM zy2AXGnmrh2D=6Q1;uD2rg^^@4=xCToR*u9lLkP*D60=o-s6y)d=heL@kApwxh~Tt7 zt$%Xn+{~Es_Xj5M?z9vahxN<+XEh(C;CjJVu#t zObiMHlqc$U^-Vae_&j#hP5MP-@b0-wY~$F&DWT1B<@3DoM1pl~1b`rg6S!<9gaC>b zdNS3)dP%?bMHEk3Lc$+_-lEV5Hn>ZD@o#inqeE_C>*4UmYU}7xb?TY+IKgB&Z_h|A zTSrIB;M2!c``kgA;|0Dg-(G?R3drYTq2GgK?TfTo_&E#;WWst{{Ay-6+}87#V^*)D zIL@B*bwAF5f`l73BQ+*EyenEIm&C78mFGcZYGG0EcX{ffDWUP;=#;iiUX_ z0d$v+^ZPoKo1JP~HBtz3*SYKU;~a}#YJ*>fechi-?RnKS(u=Md3J}b;Ioq@SxN>RMn7N&>bK^2a3524_;$5*Z-pog%1WUP z;UhqVJ;!9|Auja;xcd3J80#@3PLBm`7H=fzm!hk-Z4*&sbhP2hS+SGR_3LXz;1ynR zna8$GWhGce!a$|5=_wqm27TT-->{@LOC(8>+k^Ycp=Q1}3m<4(<#;Emymd=eDY!3u zpaDhQup@3T0$O>Us0%bGh!zKXtTxtTAWD%>`AW3@0#d~Y)7d@q`8!dOhjho3EY;*R zYK$$wRAO>2ooz|uvFF2Y?+jX0zD~jt9-QSKcS+w|{rFJBTt8wi~lt(!qf3NJSjlbHC0MJa5 z!P*qv3+d1I>FlbLM*P$SlOslqbhXp#=9ns37*$bqJ@)-4Vo=RDGBg-7VeKG1_$xv8 zKI3Brz~9-JvJE~)Je&N*`I&T7j+^&l{qxdhaBu;M1qCCNisa7D0|T5AiJ6!~aBXLz z6xs^w4)f0DLGaisONKP~)|Ho7sJjvFC)Aw#{TI4Ibj^AjlhI6TgvK1AJb)P9Em>Ax@wyp9e*vY}h~?6&Vbjpob8 zG;V(55i!_2?*WZ$b(F~mSu#NMK5wxI=0-nn2IC->#}h3CvC(1qn^Nb` zy!^M37ilDTIF)<9 z#ePD4V0OX0cDGB9bqCy-QN6ue`R^h1V7KkX3Q?lZ)t6@t!Zri|omo*NovaMB>I$%z z*BGvNZbnqY8=RW4ZORqV+19^MYw&Ho$m6=6@!K&D{(HT(XF2Tn2rmD%$wH*(8d40n z^+{4I!aegz0)twF?-0KI^#8p})mSj~h`*!llQa#Sc7{J!WyUdKj_jnghQ&=V2p()k z$tB;_ZZA?R)agwTKK&Ov@%+3mAl{__vDi1Ert4XD{>oi`cJhlvf0x*e7*xn7>)OrQ zf`>JqSds)m!Zy(i~8cX z+rDN;7gDO~K-3C{5HS=~6dL>sfzM_&Lboe-m+Nt_7%*ezTD7Es0p#ODf{o-~Ai9?p z>$Flf*!Cq=v_}0p*I&>*{uwZ&v{SEGt|8s&PhZ?_7oo`fCG76yw}JzbVqzPpC$L~6 zDX*TE7OJmA%w3I~y&c#ujn$WT9sN-y1WGXi5_3?DsLaV~gwXI%+!ku_&(LneAx7=p z^J~74$pXAL{{zkTB*POErsMkB2NQDCjg*|bHv&QL=Tmu(3Tn&56|paIAt&h{A3{AL z3qN@>@`;O5JHSt(CQWklh}H7Tzm7bH*)ryZOXeVa8kr#1do*j%egBLnxSx{sAXA12 zom^~oeq8)ypiJlb~=RvCOW?tgh5usl*SX01{9SEP=r~WbQnkzkM-#3eL=aUSLqRNuv(a9ImG8moE$W9=L<4XH^vjhf( z!TU+YO~=Vln!-eD1Wj*^yR+jo(kchg7sUbXx8s2gzk(i&s1Wj9Sr^sxdomSHjn_0J33rHw=mc3=>YLy4Sfo6&tsR~hlz_@?^eg<5F zr7Z4Io2Tc=I2k@*7m=g#>76IXAPP36H(bX803J#e--F-|40W4oY*;9-x-HnWb?-h#JhV-*zW3#e`0PbITboeLnHG3su zylecvpt83(RFbV}0-Z?1iF)6p!dK|19GZF$*_Y%>O1@suRdO5dF<3Y3J-<5_bwv)d zP_-r~_%*L$p0-oOqPos`a8xhyB+9QNR;O>MacS%y29pr5hk^qj_JO>UA=HZcw-rh4 zkg3|+h#O0RsEqJUQ#XC_o7q>|oY0I@((ibT5lwFv0<|^5In7e7^YUCAtE%|gOM3+| z_F5X7oi%;eoymay4>5(c6u=T$B~?Uqva!UHeAazG1qYvZOh+VaK>LxVj*(9+5gF@8 zWM@&t_}Zo$HhxcFIj03R`K$FQ)5^TxM6peqGSo2LRAP5?L{;YLEs2Q*NTN*^Dh9@0 zj9`@9S%bkt9|0~uyy8g$n5sjGTSTWes-1el9Jc&Ii((oGdiX_F%`td~13@$~-T}l- zk;c}~8`KFFSB~*TnQocziX%G+8(J8%!Jfbu^<1}sLUOS`Kkmay2=_R{!Jq9gC!FPf zY*-R(xa3|ds1982agStvSbS|H1sORa&;*>Awsyamo8iT?GVQ+Jc%PFJk4%pM;`@4K z7;vFc8t1ZPz}QP_ehv!%&q0x$vY+USJ2}qNqlfg^m{uBCoz%jgn?HS$5)paAN6>w> zokZ6|srGQse9H`~H#%Sp!%RA%(Zc`uF2!TuQt{^q`2I$+VM!`i+W3(YR0A2=0IF+n ze|Xuxdn|goPJUJ^!6;DK5?S1naQ(N{w`obcl zOC%QpJiO(+JGZTUi_lO<*Vx>Gj+{=Z#;NiEpBDIO^L;(YT9v?Ej;CvN<3oNIRa>%+ z(shgf8l+&DFl}N8agnC)bxpHub0a|96vn;&SQ5GTqMw1h*(gqX&H}9!7YT!5SQI=q zLVKHw>8c(Zo!qi@UI!j30-1k9w;rl&`XVQN_ZnrwR_sipWT_7@sv`mdoRGHq#aZu% z0ULVIhWlE zLI`~ym0| zaOEgRGAJ;fuZ~Z4Ynz;~twGQB_hvotstjJ{l4j@N=qH8qh~=*H6qbo*w&KZ(BktAR zh>Y*a6-QhxDdpVqBTDd11Mg@FVEB(HCl$z%!e%(YS1jq-EFjv2+VmQI1gPsn*3$KF zYsc^%t8#7!(A~_$$ERjH$DPaw#4TIrR9w>|$W0S;5G>)^It zC%%f|l<53o@TMR1LiibxR{aI?+c~K}`f_QYXJ6_@K7~s2K-1uGcmB%a_qsZ=H^NWP z_U6a!W-qEolj;9+2AAOs=FW_iyJkB)cHI-bDpR_|bu$)x&`Z4iI;_G@9cugJSA|XF z{IzkM)?dZ`cj#WWS36?mY*wlTX>4X^#2=}PPXM$a7I2Lk7o2}Jk+dVQ3Y*CWRX=(Z z<_}9^`YV#H z6Re?T%85!rnSBXn-Tqp_`5(Vt63?aTSZ3OP$1MHdX-`B2Dj1Sa8#mn`OIKB-^(VrJ z7NqssTg*1gvF{d8t|89h1heSM;O@rugalg-CL6F=>08JvF+KhED8z1 z-%hQ+gXN zBu9w7IWx0Z=ofsWCGgMh$zI++UwdS;Q6t5~B{z7R74Vb!ZhfvaS&E}9TSFan*c3LM@Twlv&=)U)w zX0^^~F99byB`kP})mhLc!06W)#q-1Xg#HqGXH*pVLvH)-h@90H`u$-cc7lVt002oN4dEa<2$<3)A|l%l-ei+8w_FE&kG1 zlQ;%JK*y{(?3m+dW0;1CM+Mvi_utD(8`Dg@l#G|85myBTHh}a?kGeRItJwckUCX&l zD@)#`Pp;VxDbINngTubDLZ9LC`O)yph^N^S-O&of9+@mG8hOvEHx6VGc$H$BRjxT<#y=$S00@_4AeqrsN+2y+)?>T%UiBJYUBc%re zrS*mMu)M*)bk};mcu?*ji5H@f>6SBMe>@YsLpIfyGRi2ZIst!rQ9r9crx{U6HXlmiz zP^Q6 zjKC_ciC06AB%r2oAEtjTv(h3c+X(0L1-Q&-=pFP+%O~81Dfx$)TA%!r_ytYm|ZMNpqaQ!61jf}o-y9Q3=$%qk#FnH{46p?Xtjb~uuO zDcw{4bZ7V20sLtA*Kp1yG68WS5-6X#+L{?s7h#I|Mw5#sRsA$7YrlQz+Xu(|^W?YX zI@188*js6DlECrE{kR_i5Jh18#yhrA0t9JFb2A1c05qNqxY`7Nre!dswbzGWxiw?N5 zlVfT@fWmJGuhf=F9di8M<$pSNGhDYVNmnxxFSGSs>9lKC-D3F;n2xOS6*3W%+6}=ycH-DG0 zP3_9^C`TI~uQT7j^FSsp4bAOb)__(K7S{mj)gmC{y8`CBEHmhiI9u-8al>@`pGbJ- z({Utpe{t3R@9|h5OeDAcbMxM;U+JqEUR^e+y*|{z>PY^nH7EOQ`<OR)Nbnu`huN&h8I5i#NxTFStnp;|yO0&yT2}`#uLDT;IwiI<5@SFyV_sjh({C%w7OaW1yvL8HMc{ zVE72d`y{ChAz3;MmS5#iArThPHt2 z@E8t{vo{JnM`>Qh9}n?Tz8oGe&Jlp1)vMzH!5 z&5h19BcOVuiemm_^=sF_o#?1=nahK^0ej%5))5ne|+E z-P{GsrHDkRr^KY%e0)TaCPdDyj5BE2;ILm-!RwwVY!L!}ofthpb>{|_pmP70*2)cZ zXgkN;tlbg00GDk(H>(la6BM&0k5L*=gN z6nwExZ7!anD({QZ`pmzmYmR@t_x6o8w;Oh)1ATA+D^Y0a)d>QmxVlF8Sfrj6-B(Zq z#K4D`)_x{z-1GdfX7iiGk}TxM_+VCIVg(B#oG=v~jJkjk%6T;xp*J*5r|>i*)PCcMz0D<1{#gyj1nIH}%RPxoyS@e`mf z8rC;NBa!9X1?vx>TE^(^^|??g!IqFbb1W3&!j*lT3_W-A z65L;V%D+8oKV0j%w;A!!s#5%~Pp=l%TNy56H|`)Uds($w`;f|I0?nFGg6PDhV;wih z!oAInJyA)q11nT*=6N>@0SK45OnAXJ2SJx|^;uw`IV0nidtApY3Z6BAK3d$H}Ed@l}!ZE_GY%D=?sTh9KV?$@@4CNR_9O+0t^ zS6{#Tuw!(F^j9%9+#7|b{~X1HZr_fAR(AgUvg{$E_3?=O`Ph&o?swAe?J@jBVndGco zm}(m)#T)?jdNTp#DjF(5FD)I{St70wc-KY>o_k1(?G-%QPmjkvI@s2A>;}LPP_DJp z$_2?$HNKDo_Cn_zNPk2^qebwaW;V26l0Z~Gx0I|yn`}DWTyy?^ zm0g_cu=y_Np5Z+I$FMUQsE`f=M63aemF#`bvnEKamGnp(;c~wSUXxR$MAiTGQ;u1?q?*1?+6{S~B@Hn@dYXOE$V zXff@Xpt2{`PEHlw5iDn^+G)-jwP-B|0!PmgRr83+rIs9-sC%xxsq1A4ZTT>ZV>fKY z7fee*0W)i_78!SvT^97J*0cs^kO`inHaAh^FN6fdsi4?#k!W+-Ia*FUC#Pye+H#ae zca0=F&}jVrMuUHGAE*Ayh3mW;9$H$9BFY$=H*OF_ov-$3labFgzLz*vJ<(wlA)a70 zaNSQ%l=Z6ymd^9)fH-!+%vFl{Ulfyk9&>jZCJ*WoHfs34+mFw0d+-&Rc#m%{&6+>Q z4ehtE`!#Hc5kmR))g{OJz4)A0M@P2#-(3l*c;`uv$}a?X^Dm6nf0hw>gpni z%=vGeh0W$IWe%@4Kk4Qid9gF-V3|^`S(+!e5yoZH@V5w zFN-E?w0gW~IC%1s9hl)hW!Q=?rYrk_weC20;zwtB!gRH1Q`WxRp|6PvihA(;g;eiL zxzHE&o1Z?%-@y&0uW!itB`3c1GBGja$rJQD`$+=s*H~CCtWY%Z-6o($BcS$;l})Lx zrht;z&gXW*g`S@3Cwa5R2@w&eu*2bxPbG%BE{A_%PeY@-^XjBXC!L{*Mc=5(wG}7% zF7_R~%cdR8EI<9WxL(i~VV4(r%`3TlvqAs8I`TC74#yIU%#`q=N@LvKrszodPaf~` z`^5C)?`^f;#k|!_T9Y8GJ+#Yarw=?|!u_-1dCFkS9Y=sl=6O$7UVkP@0q<&fFi zXz^kcUf-l6OaHXV^Gx2&P3@Bz73&utKPBHt%SSnUPRl|%I!XH&3JMAu4&UC87fN$q zyrUfjA1qWtt*EN%5A0djn-?!$d>#~JM*L^$x|9#b@t*=opRKZH`|?|NFVzvpE|Cqd zIL%5#fLK6kCx@lO$`t?2IX7+m~4H)lH6|1?Z+;!u@Gr1f$nT5N40V3JSAESI0F&OwcDcPwyMPWYX=4=2KTEh<^HXh!@5I*J<>E zLawA|c|rEiE9e%3(8#wR1^ej=2^Nfa9c>F4@N15o`(ZxNrK`NGbI_H(R^)ZIEBTFx z=@;tGCk}0sdzS836OF$q=I7@(KH1Ki46v@ttKhHizEZV)gdrV1rp~9N^JL+dFj>jY z(C3$BdJ)F=X5dO(Gf93I1#b+(CM2^Z3!%p%n~?dHet!-&;gD&9@c2$B%Z0Gg)aip~D}R z1R-f@Y}EqwtC)<5P7H}|trEyz!yk!DIRyn`Fl<@A&B;j!k0D41J~@m>LmL>>l5OyR zFjC~cad$9SzSwN#{oH1{{30o5M|TFjdN&JfM7xIas`~Lp+_tN*6lqS|jrSX^7G2xG z`_du6%cHE}Tht>;ov4*#Wgq$Vmc44En@q)(yG}e_f{r5ZurG68H0QQZYff`!Ku)`U zN4j1MoscTNJ#JjOejWCsPhm3l!VjC3B_hxC7Oj||Q!4^B6DwnAI^%cOelPmW^ZrRw zsPnb4w|AGbew3i>!r*kcm8M354gX7;%sN%qrSo$NvXU!hKY}K6zC^rCpjvhDE>oNP z#uj_(Tzd05;pdUXui5V$7VnSNdOpM*F)q2v%d1I?5gdb9$}@U|-(H|qd4G=j;C#3j zanWCg(t{jTyy?bf%U-;>>+YWc!IxCA&tGuGY5(#0s7lGZr#Bwyg5h6nR%BvcW#HL4 zylWmbhH|O{-9meRO1K8E|8a6f!^F9QgZ9IFYO1yS*TKQI)SmWhQ{Tk(3rO=mO)7}}QWmVjez%toTRrKNU%(#YYkUfyk_Xva zA?G!>HrJb(8g&}KT=XU7U_CG3wspJJzTHuDQop@(B}yWTl|a#D$B>ihp6XT0d&Fj4 z+KLp8>njWRSDN+J^-d`Ws^pLk>g)IM#9njFd-EnnJfOe7-|pMTk00R`N_=cI13GZI zXaqL+46LjYs;aRak3ggr3lEQ;1m%puv|js+S+&G4Z6B$RG&Y`2N=ot zx9)qNi!_o!Ofh*{7<5b|P9O7DAHD&RU$Yg?d&UntZ~S8%rNWoZ2ua{#C?*i@t86letuO)x)KU zV5fF+kjHi=rSD6M1`|fut84u%L~{q5G}pr}+$OV|=y1%CNo>yPyl-@{lu0^TQNl?p z9u&>va2TsH=swxp->%N?9{Jq&NM3l=`Si8|dfTP7v^7Q7oKh+DBr&j&_8y10wOh^k zavC0NUc*`-eR?-5@H;zrnKr#5Q!$|=B=f)uk&j_J$e#H2@oVqvwIZx)*8_<>CXH{7 zhiY`4kB5mbK`yKNx=T__jGCHSXqic)m=*%YG=+)v^zu;2J0L;Zx`A}bMGA^w&c_7` zqeE4!^T)m-Ck(+GvjN4p=iPPr_!O(L4@>ruR40z)6t?LT*ps$rfeoTYJi}&wyIc=v3v*4^8?%1(Pp$}h!xH9Wf`Ot;Ig?@j^ zWaz_KYs@xHd)HD?T!Sd(*|9d3_9zTODot#bQ2q5!rW9jAx0PH-Uql7=s1qmMx64|y z0pU#iyA3h*;RTn(0-y!FLFh1wd3-ZMFyLVyU+hb13O$d9OBsRTXOMmdmmcLTP+6KO zdPgCnJ^el@`?>6}B$ANX)~E}O*;{JOx8A7J*6+uQ^DhTK^+A0+V+!7p`(vTF@r9o5 z9YWEs8a*uLYOEqQbyoMCpI~6yuD6NiTFL9T@9AD>Xe^fy?bh)&RvEPSYY-KXOm?S7 zo4*97x*J@Hj%^wb?lHEp!g~9**t39#RED6?zr9M0g|8#=jAmb)^sR2yll&u{hM0De zi$p}1v&&vrZaf;=`yRn7Kg{!IYglSBRfp!vQSGcWIu73Sypa`#U%*@|Peo#&()_w( zz!snb^?#05PW4vW&5FS85ZQ|I%qsG%+?rb&Dxq(SX1t_4%YD2-xY!heUK9WxBy?uo zcdv7@tfi6*s6eZbI|;-=_G0D>k_W?pCl)Kj#Xh{V}IP3?`}%f^*-RzEVsD) zo%1)6FrUI+@Il^kWpiCOw9O{W{6Rf2dJT1Gr?7btuXXR4?ALqr@F`y}x{reQqVfyK zn#^4L5*-+?2}@AsTsVjALInkmz|E}Di`Wb@@Ezi|H_Qs$g_M_vDw|r3)yTbs4LN&6 znFy)eO!bJq#iCY>F7&t|6XPYRBcoL(%k}DV4SY(SDku3(ZI`m*wICy%lMSWD=dqi? zLZlZj`cuo0d|IsjCzqG1r-IuuBpPDhCjy?gOiYB&t2G%?^!VnG22thfW@f2tit;@v zH)$ta;YMs$zqFI2O<{ng5;f)Kyc^*zoK7$^!Y3kfA68fWzWmK;g1Ne;hDcjBzZsG! zvzgbc6{wYNxZ0mF!oJ0p$E=`Ga=rSlvP(#o&1`!d9+DU6@esWtIoU5P3?TmnLwoc2 zt^I?8$@zK7TPI(U!s82FTYW$!q>Vv)G6mFyg9?S8{zUe5mQ)V+l^;D`64?c_zBzJ2 zrU$J#mWu_twu{R|>9KhbZM~ngYU5XJtn8g!Zx^|m>nFy>| z^MfY?%7qhKCe~`FB`mx0mU)lzOXSSESU1e$&%GL|VtU84#oXg)IyIDD`U{r&2W zkZ+axSFCiZSe&xkU!L8H@8{(1%lhqX{atwH!Oj*Fx9xPBWi{5hme@<}5e&8>3Ck`^ zdeNTI1C5<

<$v-k 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 XD%T~tMp*MI8~kbS)!UPb@Lq;U%S=R)@Ie# zei@&b2;AP@&WZhN-sG@p{oht-a2J=ICeM*yLtBYd2^L?yzBNsv@xDuQnmr)%H7!mw990wv*XD$FR874Zqbez zFKsA0sTAaQ^G2HwQgnB>;^b7dxbTEN`W&3wo0rR0Wy)pWrREFrwx_cbqPr{NDEf5Q zf>Gg(d7q4E$`iSrMVGRbvKxvFKjF70-ycPU1)8H{n(cAKDO>+^_4_@K&zKk*8lD~l zqhy-eUj_mOLI$D+;xNw5&bON-ZaLWiRH4+=YmBoV<2Hu~9BDCX!fK*fDu813(#`_a z9EW+U{I&Xx=q|24@>f5n84j%9$ep3Y(aa7iDq}fhnB6k-@rpOF?s&U(Kqp!HLp8Ly_v_yk*lSrGm?(V<~*g{+Vc$OvXI-{(YAnqjy`nX zpK<6HaW7PUk7xHc%=u}7#pSJUrKP23n>~4G;zFGc6&Z4LQ=?**q#?`k?brG}o#-@x z0`1uX(_44_7L~0E-LGD<1x6MEmCix-!rbn(j z4(c7gkV|~JTRI^|%rhaa(3t@NC3%&Az|DOgr;G$xV%+2IozxowatAAgkx$JeFb=+;yGD(szKv{l`?TZDj5r#hU)E(J zc$44noWCoS8A~1g+dtukoTD$Dn&t+@^AHa?y|diEO`Puber^dB!hfo-qT&J^;Tox> z0IR%tJ(iKrJN;L0NTd-V(cYaHk9P0cWBeXXN^~1Ov0-=?Ba-p2?)k2?Y_&KoD|oF0 zQgfi4$25~*BBqLajDOBk>>#yBJ0k+eYCvQNNJyHMU5>-u*FtA5x@YIk=$XadSP)-o z(knA!sfsluc@Ul^n3!S5G?w=Jn2FGY5e`*-}VdZ_ws&m z8g~N{lah*c5MKZH;r z66iD)RAjSxlnR>`7)Ar`hXwYdh{}cNhRQaF$^<%%Bxi8og|+;3_2D&a!&^i7H1X4P zR-LW{u%7P2(7DD`qJ)ye1(5&VK#gDBImUZbjOzpD=bf#eW04uwTK!F?bR@| zwWyx8T9fdnXRmT(0objy!>j47BRnwj7 zz@%Z5{&0*w_Hn3!`9dGkvE}SZdt4nduTk9EJlMikZ(nC=5+#N0j{{VXW`* zZG~wR3ayo(#xHNBi09EON>!9)Bp?0qAI^vV2Q+pRz35yxuc!=Ha_AE$$7$P&du+(d zL;IJnEW6U`)6|VfHIU_Z)3gEx0+>!1Rz`F%&M~~s*-lzt?B*YcP(0!Em;X|1Cjc!b)dHjLzqu? z0x$la1ExHPnsK413#bYsfdtmN1{?L+kcd}s$FGg-lU}||9@XQp1HhX8<)1?Bl(&B5WH^mwJ z`m)n+&}O{w+;YFf{ySLp*(ibgH@ne6zxkcE3b3NBhtKx4K4ZUmBQ`L0B81ph-JgC( zKH$qqGPy(IE^NOnqU*61+*qh2_EGh8Hzy`LD+?0y+rJ+R@%-%AuWjMF6%~=}3+5Dt zuvC1TQ5PB^;$=v7(OnORZ$M+CP>7t1TL#6JiLbW~tQ^(^$ zVkh)=Xv+^0f?~BpYT)WS>ve6@cMmSC?$fuQBFAFgf3>Sr#i=bG%kGL6n ze)W_P@Q-L{@6!3NwI2ivi1R;KP)}2r!ZFCz@40nE9ahtvXuNcAs{6wzQih7w64KNzOLSE`nhkN$fXEbGvC^4I0 zdpAn%*9W*9N6Q4>llPzukhohm3>68N#^v7YI@bwE^W(DEa|xU`ioF$ZM7%ptAa5OE z^6A@X?E1TO2;0)+CrH{jUcdG0Q==aHF&HMgD&SC;+|*4M6D9W@_k;LBECxRfq1%BS z*Qi2qz&d`bWSTpo(BbnxX1XSrS-!)kb!%ay%muIL|8NHreWWlnluuU`c)qgjjz{0O zWXJI;rCA_!C0yKVnhBYzQeg^ZIT&Z5I@=wn@S{MMwE)>r5jHX193xLZfwU>F04~ar z)SK{Ihh+uT*w~wd)8b%>7(wqCfdhCFObH8;U)$cmPcw1`>ZK>a3V3B@Ug%*WaVzzM zFX`n2JtpTdkG>3TBaB<%!J#2nd@+O3Vz23}8)N!g160UOf?JI7wn^(M2?vb$V_hbf zNv}&-fW66r2t2=GDG0A$A^9$ZF%65Fn5-WX=$EPp!cS$k6LKqK`4b11~+u} zQ=_v27Mi>ma;{Fck*TD9F7n53Eprup;Oiu1RHRZQEggV8XD->>H4ms>=&mzmw8!Qn zdTi9x;KSEAe583+7}q|o5M(~xj!)KLh7s#AYmFA!(+Zvm(4-0wEzu*F|$DZzzh_gWgNq)Jvj!R>D4x|f9z#>jeih@jhwEN2R>`m+QWcpS&> zXMExB^*J5I?LGPPo&nG7iLx!VXl%tBEJq~&Cumm=B^Kws zcS)eX&xq6n^cp{vkD1x8SO5@a8OAWy%hB(T%SK~2Zv&70_Vb#JK37HFT##iMR6LON@wP zL8CkGa&7$VLZ(OVpDu{&LN$kUsWw;{QUsMQ)v?|>JMc3^X7JUpX0Dxl9PrQuQ_Qyv z`24L-d1-Z4R$)4Pl+2A4|BN;Dal$WrK#?dQ7GGyIG*Agb{UYqhr1U2I|1e0R^TpIQ zzEoC71`9Lu-n>iOz-c8dk19XHq2pIvfM%lhlr&f}$~ zGy9iod%cw4-e?LhHT3`FY9>wlxt8Ik2M6?j@|C2-6ZRcPF$F#TS{g`eFf{9J=^%0A zu3|_x=`GAqm0*n95X&=9A&&8DPFzRz-w@yjK|1EQmtclWD#0b0=+_zr?eTD1PVKWs zFEr^G&=<@!Q5(D>4*{QCK1HMaA~+4P-yd&!{0QeZGB zD3(+tLtPap-~W_(EUA>~_>&rVmR)FJOAB~qBw`}5n>*Ex+e?R}3BN{HJ=en+jsN9+ z{7RoGEEcoI@D$fG_&j&rih?MfNHwx+`Hmn-^LcL6ciL+|9jI zrj_WC;X#9>K?g%)fmw0~E53^=Sjg#yZwh42S$E0}?U?SG)0u37s>tQ$;U187!Oi*1 zFVu0_FQPs=lG<3*>BebNt?Uvievy`3;f$Z&YDf%qJpA&z?=|N$_vfOpN)eWQ(_Qll zP}6X<)*!K_f~^{@hxe#|rFp+!@Z=z`z${VY4@J*lA3 z+Az)}PxtW_cD4hCAVZ&o&<|vPs~C36x`$P>OtD0=lF{g_6(RXQGMlJ5iI85wB?hVH z%_hWAqBT7RoXKRUJ}T;UU9bRT!`$4wT=wKp4|Hb(oJUdhBcQz_ewToZjDGCKSi&+*a?noIBt{AwtrkngfB8dv;{UbrrpM=Yf9q9Xkv}dr? zW7LF3-sKy>+3}nD=&{K3v1}s(!xIf)cjw=?FOWKZH1BH4fN8p2R&MiPEmMw?xsY9? zM9j%Gm3kt;bat0cIqFpnXZom21n}E5tz6O72PxZnj5rS!X+tSFu~JMI`L8jIV?-`l zODhOki)XpX~g%KNa`OpP{;bL`l2Z`o7~u1AC^ws^maD~ z5@Pl2M2bDFADm?O zuO@*mcKGciC?-pk&RC}3R%a}T9IGNs!Wj5oPr8aUul~(fYUZ$$yz`yP{RU`>-yd-z z5ka6eaT2v9*Q~&AsWBpG>K~sEB%)z42EY~rlt5^Af>pXQd?w0e7;4SUdJrJIV^_n8 zT3oIl3`DM+GNwjJx05V%A$t8g0yMl?NeJdoIRwhc(~5g)w<1?z&4^j}y%zN?ijIR?uL7)>Rx>R#z}Qu7ytr zUb3()G3@crn-!kRdY%P2vc9fv6&(Aa72OjVcC7dn?bu*){oU(R2<=)jK{s~1vb9i@ z=yl5J5<>9!E#4Z{-tk+`E;VfU8gp+)d+&uP_boru9QH%72pTIXF~^^e_1I=UqmVCc z2`cX|@e)Pd>w2kXo{n|8n>%N4jbUiNg*#NILA|y=K{1FMwgEsd-SisYBliPszwXRGB#58;LHESVYVmrG-1+052V5d!KT{TWQ&ij00(3Xvjj zuO_X2zJ@33-kK>=Ji973yu|D}oS?-kMFLEeldVF(6p+>^9^j)wS{U#I9R_G;U+DTPknF{ego`ingy}CkD<|a2RX^%H z$miU5d=5?K%?-9heL-S>h;1w1@-~YhPjTS%EQY*LG2pf!a^N;%;>+sC{0z~Hut4+0 zs(wDV_b@qcacB`FmJ6Abrr((lN*$o(@@r>Ke%L`8W)?wZVOWmXu9xLm;>@GL-(vrU z;LCD^Qc!g)$;f;-Xf%3opor|1%t={B_fcSGS?eOJno1kHv6?c_S*$TnAVw%p&%{L_ zA@L%0W2Eb%usCY^bAJq}_{%Aui(k~nP`e?X*I#bBO<@zyams9k5w~WC89%J&$lBi= z*?-+tP_n61)u$sFYsCDCF7{K=(Gc8UhL3%Y?HYvAKnf3?>rQTftok8lF(OwKh{l*5 zO=&jAffdlP4)x;Y8h@D5>CL-ugqb#{DFuEeXrE~4vT0Bzm;Rc6G42hA0SU6!FvDX9 za<8fVrbJh#%0>{YitAI#_7^!pE-7{p|GywyV;3p5&<7hOs{=Q%;Dy9cnnQU9ocukXcyi1^OkTN)P~V{OBa zS!7P`X!=yoX~$ux=kP5X9G4NF9ntIQ8<#fpi-WDxRH4V#gm=UuL44P9LMf2ToQ)49kfRav5S;42NgaKZiFb2;C^Ceueu{R z5sK^|ZwaoCBm^ire{4Fc%!V9}YG?L?@e&w53Ka$Yr}ic=ehU~#AAD3|`N!+TKPlfv zBKb~Ed`~o)Z(lurKvUmjoJ+e|yD)UVy-=|`}xAi)I zFMpP-0V4(HQlTBNSlLE=42*>5PrRI`@A0f;CXOX&-erRc#t+N}70m^VMFEXlW8odM zF%_|=MBtBF<+y({5at_LC``U8F#cv>;jCV98=I(9km7mEvKF4p_k*F2F#$kLTF{r} zk6sFaM>DfAD8&ge>fj8}VYCq?;?q#(E@&h+owB}7`PVQofQ!o}6A&C@yzZ~S*{~~| z%y~)dA4)GLzFS_d&MchCE;uaJv*dYAPwBEp&ULF{qQ2?LLg@tXo6PT6SUjuRx^inm z<#JcCmOgES#xd+w;|lg-qIA-r(O6dHXukw*xXX=TpU9}Kyp%JYIMWaj#*Y~QUVeQ^ z#r%^}=xlc65yW+CJWSO6mRw0l>$w1JORzUUWh|=Uh(DR{5;{!oz|gz$>@0YrRLTJf z&>>d*Iyg>VYK~r9S$qgl6B9%#MGOx}+jviKW%(GD_kN2+r{=9d$I~&4$AYe>Ij@Fr zOcP)r^2Q*Whr%KDSVmBj8|{tp_LXY?x&9Wp^>hwrxo~v-C>|sgCQb~Kc6fzq zrF?>12W@=($=0TRkVjwf1r|z?*r04G9CS{Bg@b%*C3rC;_{3dz3^d`_oS{X9i)UNu zk^)COPlujH+mB-xi)(gO94Lrl|C1=*oV#M2Pb1p3Rtu1#c9iKg)ueL8810Ya{>JGL zu5G5y^ux!BA2+kyoA_P7ooe04?zY|?ChOY&8oWV)pOY2;*@Tk-Fyv`5a;Oa}7?~T3;7*zW9>dorhae7C{=9t}mo_)S8=W23C+`eIMk4Hq+bU%@nWA!8m_&u8K z_)I%1w&7bsc0-)2(H0&az-Yq06pV>gu^zS(N?o8j(IufW&0^T2<=0tingL^AlY-BM zYLdPuIqRg5qqf|N{qP4&7$%G&6{@QgZIYB3%8}XAx_jTH2pN}(Kr8#|$Q$UpU_Y1T z;>Ia&DFw>x(h2&4Pt}PfS=KSRz#%=r2|^AU4fg6i^0(&$dgBk|{g5yxn-@{2w7(bU z^tl~9^Iof!Fiwa~mYFR}pEbDVPbAd$FM390!dI3Q_8+)Qwo90ESmY*B4-`A{rHCMcQ`uI%C(-Op ztWx}4c+3XME4ZR0La8!m0x&5V7uKLHa@#UWdAGNrDp1zrIKy0i5?!mE5omK^g`~cX z#iIXlExAGG*9(0n0+#1Kla_SlwS20>Vgt)mu}{EWZ4WTmj5G ziT)u9&UqCMmgGDFq5l6IA`Go!&x{9k%8+NpK=cO{*J}pG8Gu?$t%#l{4jI!SZbo*x zZdYagym~a$gh=jIn4MV0_n>_=)3Ex?g`Z#AKwom6VN;_k;qBk?Oud_?I!*J1RzZ-} z!j%x$gp;nstd&ldmQm@eU9l>2Siu81^w$TBwQK&}7Q)1ry@_1u<9NsVUpxXN`CII{ z#?+v%Q1$8jnezh=9-U8WD0DOEddEy^0>qJC{ox+j0;}JQhcQdv%hiT60g7sAlWn^1 z_bUq$t>M!rWXVFSLcAp@#q05#8J(UCW|1f2fn^4ZhLv&0iWIc2i?W*D<@OW|7iX(Sx7zhqsbcTk!&_9TosY?qJLIJ-)TcEfmPqMHU0S=MpY?fO^<80dWy)2&0qSXPf(ENpVMDgDG28 zr4TPxN3dQ5Mb8aZgAmq`6mS?Hsd+VkDx0?Aqq{J^Dm=b9Nre_#KH8b6FRG$P*N4s8 zKFH|HLTA%|R{$MmuI?@lA<7Oi-CBVVRSQc%{Mog&V&)R?P@EK30Ds*&nao9x1&zzE% zz2xN+Rz*^8?0B+4>aT#pUIx1Q2v(F4OiC$jsSmQ5pkF&b*XFz;Vy`HGfio~S(qG>_ z{eIrSbDz?t9$0NWt|`r$TTV`w2?Dwn)3a@`z~a?W?#S`{wukEe zk>*MxILstA?c0Id#lS^Lu~mj+pNi4l1NQPdD@~;hkMkN~D#06zE$-ZRDs-VM#;S5_ z(V5n5w7pY-v%2BT$l?(VU6`DoVe6OK941@U$cUqMg!FU^%bB4qFy-o7PKTdJQB8f6 z;EE_!bC2vTX!qCn0~I-Y5ylfxVCwb@vqy`aX>JUuXVj0dUsAi>n>SK@QpcN$=of7e3kRv|NO7`2G+D%ZngZYm~9qb5n@rlH(5>uVsn6*`(@v%7P4AK@cS z$HhY|1*}j)My~AQo^cKB)w3L_4AtgoZY4U5sa-cLA|0q1hQA;{1AOk26>@7r_1lje zC+20+zs{DFs&GI#32fEDpBXpi5~D4jaKjlf+v`J{rMOv4=OgxF9-D^y!Zdjb(BIjK zVV&tsO&HWQI)DgR31U8 z$r8A>j%U>MMt7XLlw7Otqtbmx(OAtl(`r+UG%wnRZN&r3ROcsQ7%YrjrKEv0?tp!AZPJ(X#F6!1*4l|Eo`JV+#5!;u#4ZBN8 zeIGj_@eGf(|5%6s?ylR3Pgy{3@~ZFeO5G@^X;2-(>rQNn9HfT64@r^^sA&X+f_n

|&1{?_WC`@r?G{+IaQTU$WPg<7|5agWEot4+p-$P^RBsdqG zDhwlOd`fNo@gp*4O*_}yE6(Xe(kr}a)fXf~>H2dGr-blL;X?Gv2O0*t^g^YSx7AwR zA6TkyQOJHsRSKm3uvIrM&z1lX$n%t9y#MTviI}6K;6re`O>t8|kBt-V7@vLdpR(yVTE=bP~UI!AvqBR(CLr zZobld$#cY%0%_^(MZp6|&u15>XA)j=2aG{?U}{92Qhp?<#=_!k6Yu$;40C5Ciet&< z+>^ASJ% zPnyX$zHjGIrFnug&z?{GmC(c1M$&S{rH$Je;a^%SsR)$^C3@R;{!%G^gPgL#T~{My zwh$OfFXBYu+wi?UT3i~-{bK5OxFhpkJtkXp3SoKhk3x-NRl4@Xaxh^xS4z&Gb~`oE zOTEN?QOzet(5a7-Kj$senNr|t?To%x z1hq%`RQO5)^(w73a1*s7j$M-B`zuB4>eFFG8PCK-awP-&<7h_Bu>6H5dC#tMM(v#? zv*ek#QciJhe6i@5tm=Yle#IW!N0}^szcNlE1vgbi{^(-|-iQL&CI<(*>lTzrfALZ3 zyJxfqIXOv4OJBD$WUhUzulp-GKOeDeqYW_E1-O55x1v9|R((0@j(u8%fz_ z9NS85)1U__k3*SX?rq-FzBN?3I9@ua+D~LtU-2)-LPWB2g_FOkLfV)7N}=Sg)8UPt z(&@(5iyx!^eP~ath9>1NY?je7QHn($(H>-Ch#a2DMHfzx}~-Lvm}mW@B{*0>}5_9)3JO zKSuAKp2+^PZUS7OH88~ApqZMcF<~-&O6W+Z`Q+B0D#B!4MijCslx9^&|018Sh~+B7%azLuuC{>pw#Y4!2Bw##P_!z3RR`3O$4;1S!E?LTKLo3A9C6j zUe}hQdxbFqY1vTzD}P~T2`+S{Ysm?r24KP*)B!ppj#wb>kK)@&Z?HsAU2jD9%DZ~C zlyhwQ-Bsp?9I>^|yGO?l=dxR87q50q)a4qjm)zL0uvHu|ITp5mq4I7u+u3ySGm@@`nGNi&KTvA!lADy*DuHis#g+O@Yf| zca8}ZFCYyIX#4g?$opXo%1=L}&QIU?R{9ghRh>nNbhlgKi!bYZ84*f(A0Co=Q19JM zw$1HXGHtH&hnIhqp7$$`Oe*C)e?MUe!i&*DV3#>|6h+T&Smu$B^u6*_8ElWB-l#{y zyu~Zw`l3E$`MO4FGiPS{5jq^X#or@Tn=KB7=zVAID(j7q z^bMW;gX$D5G|4|rlR8*LlG)QQzp=M@qoLX^nD-l2iJ@vvf@vj_J}+&;W!LVic{=kV zVR;W^ZD~L#wtv@t-kP6t&(Q`gj)gX6&W0sxYm*Qt1Q5mEl`i~2B2>QY%4U2H9h80X zC*;5dWj`{gv>`daoa>0pJZRe(a4WD;c-HYA+s)YOz=~A;y3^X80i(ovVHRk55yTOj zClLP3!w&KG`A-2h4B(l)&PCO>zQazF%3F1C4-JCOpHZm~C|k|Mc6}`FPnhLz8qo03 z3?fKx9?=8I2Kmh11+(=qm!i%+S#w@=h!s$NhBYW(_T{2KfX6GOgiPi={4tnKjQJ`3+_{0NkB2DS${24 z>jR^Q@99;t_lSgY#veRr6NLKJj_OJW?cb77Cn?YABpa9%9ID> zeiiaVUkbt(rp|6JzYvS>`Y{%mZBZKb4~Th-KD4^lMKBiFDpvLV4W#C5`GPB11Q}oQ zRfQkjkb}g=fcvom^B8)Md=vxy1FVPNp1HA0{#UfmI(YxvvsV0xt&Jg9<088hZr$$4 zKq)Q4w7J-Z-mofW>g_5(V1q=1UTHs_lk79}lk-IxRdYCVUDg+^zK(_-mUv?3pGTqG zS$D&yNbUwI+DzWp!E{)SV;Sf5;q1M75c+VR9#j;NpIrn8@`5)nWb^}OGFVVHs}Cg- z&@`NW;%AA@@_X^>AG@Ls+C6aTQ=a#=YP}_Ggyh9Yai7Z zF*+GDOqr`?BLy5I9Arev5I&|mU0}ri;+_`|L1k*%(2br;h*rf;f09yQp!YML zxl#Of&5d7BI2WT0Sc-;yYle_Jx-pf$F+bSERcIfetBjb3Er_pEoI#L1S%4IlVpf0A zY%yZuQG3#pEO_}rvEf2|)wdL7oPvexsPz}8f!uRvw!LvzMAz8yGAmTFSByetsACFh zZr>9TWZ&K`?E76qX3<|Bn)<;j{WodaE*f{%%iJu_4T$%_6i4d!>HPfW)4%5lte%?9 zHzE`~Fn~!HZ2`%hXd zN{#1>SBDrKX+|?Yu}f-||5N44WPBfU$5-JjqEC8@t%lP8~`hWH-Oxo4yiIAmDrtWl529K{`Nbezv=&x%ml4-nzZFsa@Ev*|F$~g zAgHQMH)OpP-jUt;nXBo=Q}cR~nqY{ld=yT{-}8P_UBn;biCv;6RDsL0{de+{97lT{ zvU(R~-w|sC6_$P@KD{Kntmj$-Q`^&5o0Kc+>{jh1CW%b6p$xL`>yRD8B=6qhCk|A% zVX42}ammvU+-lfOn)lbDxq1uZ84+2M$02%Cqr2{qJ=>L@+XX+48%bs-;XxJO6%MIp zy=Z2i^7bOf7X-W#Kntqs9lNEieGubncRBe}i}`EpyLm7|Bz}VPC~R$PCTGMaNCJ-o z{lA1;TU&nts%dC!>=&26=lYK@gpqvk3(_pVgqSbxJ`>%zwYeRGs<(f#(2?HIjtJ)V z#V!c;<9Ac`Lx^}t4m_n@(B=opo=4Tn;}8)u}Qyc7LnMJno*B$`i(fY znPi!N@xFa1yBC0kvY7}A3#&p+?oJo{=ij&Vpy<>s=ZR#0Cch=EX^7xLmrpT^t z;#C8}vNT7(g)JdoHFDXMi7MBrE{Go9HMvYoTU|@=2SC*JcQRXP`Kmd%9p5&9f4Zn? zdC^GkE(Shyx9J>0Y&hY+ak?0*AQj0f%TTZIS&(~`cm2jvolxCDan@zQ@qE5+VAi27 zDIg)tL$UhrZIVdQ-QLa{H|Pm19G-3J(~f7HWog03< z5z4O{?nq}eu~|cfu1*(G)qjM$wUH6xE(V7CT4ZbY`f@F$pixF(b6m>U43NMS&~iSB z**EB(h>(UG2TU(h{2&p3#00Tw z&}UOK}qq)ckT;z094SE-5EqVdr&!Q>}J5@=MNha^ZS7)(is;rpU zMW}et;gJ}$W&VB}tP~b3u}+KMQuVv)JBK*EW`mhHgz$%+uW7;S_60z@9N`qbkdGW! z>R6v#HfT0Q&b{vuv?W<8Pb=Yu*Q=vO8M+T?VmnBDLsI?ksp+lj*iIQbiz(x-yc$DM zQ_2G@tfS&^KzS5rKTjK7JMWF%Bg>t^^31 zvC#GW3z2>OFQ=xOXif)P+bvo&hYts2YwvCr!|qo8wPS*-W;8&Ee%GOnwUV%7H& zBeYVvE~~_2H8vtRsAOY!7zoGdnonbGIoa;GtcU-QKR@W^ijC0a4OiMf{4u(3=MaXe z_fMq~+Y{0(Ah?SlE7M>Z1oC0Thd-_`-+N*0X}awE(3I$W2NzZVC=M)XU}otTeM#9E zMjVyUXDKcu&}xrzB_lEYg*DqhAV6nB42?s(Lbu?vILT&IohWDAo_H#F(VDICDDm!_ zvbMWPYG+pyf3zN^aLJDUZG}7{@y9VGt&7d%hs^P+-Ei9#ize-c*8GEM3Hbv0Kq409 zP&uLB!8C_@n?qx(CKrfC73`N~n|#-9&slxSn~2NS4$Io_$BH14Tqbx#1Tiis>CoM8q5nL*~@GqeU^akCLF^GB6 zgkyN!8`?p_6)v6WuT;}aQ}pQltQAQ08Ulmm{v^aaOB!Wk7D6sxKJ(%AT6W;R*JM@f zZPzW|&Qrd}&Gcw@uh`s1YIajVe7|%}sJQQ!a(Uvec{&T{-0JvMu~z%Rl=cCn`-EqX z+oCo-G@!{@z?igjWzzoeeWZzHESDzMkx)UOGF&kQP zoT~E;D9HuH`qS&V_Mt5P>PnCG_5ofYhthlNcR5}w8?kXN`%K}C71JSdr%$r-pa>$+ z;RR+`mo@nEgg+RBOG_I-2TF+zpPYlPT62doernZB6e`7i+q_AAZGu`@dzFtXa5{>< z6i-55b93Wa0-Ox;nyU+gK7(qSs8`EG^um}3ZpnF~3d#joP_YD~G34|79`fdLek2c{ z92}yIy!6@gRU{$8jkc348b85-DcD$C7X2EkQ+@KvgPBVu2M8q|Jk2RYC|#}|J`-}o z?}RiyLz4zJ{+u(`dT3dIZJ|lFCpU_agt-9iJpjBY6e|+DPOb5mKccH`jD;Mu2-9 zpv9fEAzg7;dP~N=-0}^#ClEwuz1*JGLHxCL(<(@*=d$gYfMWW64ThDh;&k=N$CBoo zPkN)y%zsXviKq|K0%@w;kOo8aN;*q5IghT3P0OaK*=Rx!_`rcPn1aE}&Zs`b-A%H>V~lp;J%G|zld ziB)RV;OQE$%5^^7!EDBx+w!FVHPvxq`!5e}K-^Bz^o_M_Ov-#<^C)()DY@ zvdoZHgsfja>FdrkZ5>(hbI086VZ1;th;AKa3I z8FH;beRFTw>^XYZSgq@-fXHzDj09ZC*ZQ9P9D6rbyZ>%LauVYc1L$NC-^=l((3`-*${# zIU3cx33WagOug&;3-x{?3+J+sz-2XQhIwySJ(QvSX@f16F^3*8L59k-G`&Y}g5}a# zU%fQn+-G~egxLc!L zM;o$2#;yG@y9kCEbhVdQpZdNK8uaZT`zVm8W@p{Qv7awl$(SMVt8p987H$@aQYQ&ekDYRg{ho$ zCk|o>PINvbg$-sp-)}pMbS>-se^mWdR9oE_Hwr&kaR}~`5L|;h#l1+8KyiXoiWIlv z?(XhxEfjZmEydm4t%v{nz26w;-0WQJt39&TnsfbZrgA@UvXJaFpCsN35#>cW#bGoz z`oQ;>D@qwn-~wIu7i;|&u+px#42TNeqG;2tllqq|d9FgZF2dZ*oWB%b!E_fSH?yEZ zPn{aXb+K!e9XZmDqvQmRUaN%0|NZk&qIzMqP+s@&|8V@XbupZyeENqLqQPKcs}D=z zBRoD)c8Ei7wM2+(0a~9ue@W}LGqb?}H%_%#5K_8Nqg8hSQ=%znh?3^9hj(@C4!cp_ z*r07oauK!x!bx`Y9_FkcE7uQ9_N}J8edD0YgnmxK1mw(}=GURNMZ$m53#uv_7@{(A z_lK$12T}EeKMy^Wi&Crka=SY#H8(DwHlxD$zc0N zAJ>GiSThXcpYx#u#_(DzmtULU$Em!8>98Ks%?;J>8N=rbCGFl}=Qjc3_sVB<5uIx& zLiH|QxORa8_`&IAyo@MNiew#;9<2ziYGqlyB~@O9RVKn4HbDH9nTE)N?E5ljQ3Xu- z=CFx%I5((qZfLMDeMjs*viK&&w&@&Bjs$=7e3Eucl(^0oAa$g8hYde4$$F8|dQbN5bnKgKU7XW6TsV*K zQbs=VB>(W9JK;C3(OTL4CjfLm&VDX<4IBg6Q)5AE_8l)oJ++P`SkWQ^BHrNE7 zd#~N`;F|G%cGdAu<)rZdph-#ox%HDRQ0HrhRM%_iB?C@40bqGmp2tZUY0#sD4+Dz% zy&&qYWKCa1(0Vts>kCRjuon^g>LZ@;-+yRI|a)BEV1HE&xXCdjc@^Oko-3j?c5 zow>v|gQ7nUU0;c^$!_#nJRgWklk2K}hxu>7KO{#N z*+5>CXCe2O8FlV==ui=3d|qX$C1%t>a;Ycg4oqfwe^mFl;z!{6uuO< zvh7MIUc%1PVMjmpt-Gs_Y=tmajmT`y0AiU2{P1rchEw|E!$~A-p-NhN^U771r9Yi|;O)`k6$xO5SQ>(4GE2SR4uJ^9^ z(C63x+rJpet(b$4#ay%uS9@4A9-$D^U>=$C+c!D6IJZWFo=r6H6U$$|nXy}4vM(5= zay@vFvv~g}w?MO;c57|A%U@-#EM6-YT}JNpVc_T&v=qqy7a)QZ4G@k#0M#*o>B;)%y+eu0G&gMB zs@Hl#QVMkW?|eTe+O(fsc=v|f8Awx;jsf~pu-B4+Teo%?elb?Zf3)@4bYTDtRx*UX z6(-6mCEY$tM3QfqcN6Zq6Ha~xlfr2UNYX^sX8V_t9Z}jJ45GrM*LxfD*1HS+h(;ef zqAfn?1?_ZaS(?YTjustyl5F_wxc;9ewHM`oh8I^vUsX+fsdsvvO%h0N;hU)A?*Gn8 z%&~&1r1O`1o@<+SL~-Eh%Ue1fe*iX+eT&P`DS8e*Z;ij4cHBBOKC!zBk=WF3{>k9^ z;74F1IgMe2tR{AAP^DH|TKW+I@=GI94R>|3ruUB1-1IQaT~e+#P-)#aY0u`@(NF57 zTAa1z+fZ)X0N-;mIX4#?iC^$%9|yc@O$?e)YSlRciga31{X+<}w(IBw?)4cc9tD&L z9C=Nla0V@}WR}YuI!=qTOg(OJzdsalbNo3zi5_HeJ4yZBQVU`UN-!LVt;V`d!bVRM zL}orbaySlJGI)u<>3)Y%1W&SG`I&YeY4KHGI|8pfeKDWAY*4uEWO7}iZY+3C26p8< z7kYmACcSjZf7X`>CG^UuGhJARSY7a>LS91L+`HK8s&=Hm4?%bcR7}kO;X$-fmipi< z^6dW19u2jJ=P!+y0fw@e4Wb2~%Mn(es+fqzHs@EE7su<6A;^i%Z z@3=+x?lpHQ?{U$AW|9(uyPma_WOi$7Obw?05DPtcx*6}VUtUd-aX9bX^JE>)-%;qr1i#s@ih8!`8qWJO*Vr42lp{+dc0EAF+O zz`JHGJ8}yy1*m&nTD!Qcmz&6Y!vAyfT2Mgk}50Vsbgoc7Y+_0a;?$9BG1ql1fOr6@DzR&3b@cp zcA!MQ&sqW#;@+KzzVzEun5&H!3X+%L2xP^->hrhH$7tuf@o$DMGdJPQ=K6tJzL>mW zC@hRmOOicW8&f(wnu6p>|P4)RK9q%Qd zTF#bS+{lVaowdj83n|8M?l6oY%v_+Oclo_lu+tWgb@fht-oON*xRh4_!nnNmNg~Nt zRExwbR+2Io|G{kCtABkEUv`m@^HgX+9m53b)7e0|xi%zqaHFu<(sVNyM^hm+&!dAi#9_(Ft;;9|5 zjyAv1N zUGWa6)Twcj7w_7zdswid@ZVY!;Q{!pgyxh}QQ)y9g>E6GjNek2~ zs7k6ZWqc&RH)sseufNNLm_zFR1ay|$Bxt3E3w0C`7P?vdq$dPAjr-!8d5h75Izw*G z$!)Wrw4ITyjq4ztDEU)_wwe5hv`x z6a8scahRle zX&!~HG2_d={5`%Szs>p|H8Syk_n5e221>)-N7aB2VQtjZ@>k0ei6+KSRA8W%MzkW( zyr@Y|UD1tbE!8K*oMd|J<99yy3&W;mR#!cF4mY1O(%%azvhr#w78VWn7InsBl@U<{1Ai=km2poVt`}?J}RGcn8U(0#Ew=kR~f8@3;I0OPLjB;~}IC0JPuJXY1k8D!1zJ zvc7h|4I9s@W-vZg5=|eKj4p_dTTD`%Dv)e%{p~D=TRnv8%8OMo;eUv;ln5w6Jqx~m z+{u!l^I z(pi6ti?IhbvcW9PpIzuzb8Xj&#=5rpgwWq~Xj8rjk*Jrc!bT6ytXUw`O}LP ztZDE8@b@xyLXl;G#n-}&ToPpR%VhYq6Tj|~oitI%yE*m`1^SNb(9AX$%iXSi1=|;= zU<2yHyV2C|e`6Xw>}JZv8^$TF#u+Fd@tQ8i2-WUqE-C^oYotSJ#975r7K|q|)#{^F z<}P8RD^HK?ZzgE$5%_iT`qYHP;-$gbWf4UT>TB8^La*ti0PX&-2_Cr2QR# zh&VDCWKq0TG|-BljD%HYwv|1=jqmimO;<719+@?v*hkHZMClA!W`&=6N}58-BhWO6 z$4`9WX3nZUIosi2{fUe+>MC)X>~U7o0x0Sp;mTB)fs%xegvS5p#xnjtuH3&{r-*R< z{{>K8gQNU^>?C#<;Ug;b%B!#1o^~Ji--iMo;?evCzzM#s;wUdZw9(yA_0{OqoVTv4 z6o~#1!YqIjdOc46ue3E0xpx$%ha{7C1HYns302$0b77aK=GE&%DH$5a+or(Py{5_3_--Q0XOwaJIg+nQ4g;(rMBp z0Thq#$eBogxYxx7MYqIziyf6t|9+Myo&7n{dhFOZ=xUX;_;bU&((NbT-i-(ax<^*- z&djeH_o|-Eyh&F}F2bnaYNF>#EG&Z32)=*sH5gkIm%jfCN6T9Yo5_!;`#7OLVl>-Y zJ(Z59Ho9P|WQC*tNrv{zHZ98A_()%?;<a47C#$wyNCZtn}{u3{^ z=!5ts3g_tW#x?vgGJB?Ssu#xP-KPQvcKG2^^PDv93w33S7HC(U2@66$t#6^@IL3-| z#W7Zdu`+I4A9rJf$9>le&fAeQp&=Vv31MAN1ZPi5fKyW zR4-+c9f4gx{~TfU!rQl`lG#@c?BuO$-IvFU(&xJM-KJ}ClT=D469!IcDYcxwH*6*J z=J!GsT){?J3w!+F9RjU@-@!@Y#5?4ZOl^p*ij<2RR=;;0Y^NGglkN?6caALD5pbMZ z_aftXR!Z4K1#oJVxD+C^ln}AdPavkBoeus}ZO~dc>I};j&}0QP1XD$L@6y11Sx{y0 zOIB4nYhloHG;EQAE^|^&{~+s@`ZNez))#Y`>6($QKETBxL5{n4d?)P|vX^XBY}$rF zE!r)`?-~P}cI;*uY$WU5a~`GvOE`vvP-Si?(;X%;Jt)x%{vf;|W$X!u-!+mmo5aJHjYs$1HA_c6 zN;8aRzUQhSL%CyYwhqp@|92@1{yza7{}3`g5T0D;7D?3l=tn^7>N&#`Msl_FySg|;aJ0$*@UMpon~o3p+u9V?ky)%NKSBg#tt#? ze1@BgM5%a4JVni;~s!(aH$cWOFo zI%`j~2!^2UdrmkVpH^F$&wX>%N4<}^u6QW+JpbZ6fp>Y5NpraqW3inVq0(1Pp(usl zXf?}NOQKng?zgu;W$+vsAEHFp7BiI>n@3D6zt538V$7fq0Htb9N*oonHdVhSNGuov z@_%j$ab3K8n-Fg~6g^@49XEMrWE7j_S>R}3hdF!TcJpcF_1bqHjp_YgujctNfZ4e) z!l^RslO6lY&GJYh17ZV8n6Vdm*Ski9$O02jtyX{N%m4ED{3Nx5v5R2O zBOLNm#$`B)=Fe5Ci`y!A`{m_cxh81Zt0Y!Rw=t)`{(3!JmQ4^X#?aB9Ziy~iKX4UUa#)5~hMBp4cyfB{l;M0Qki@|y|GfC6i9o<+*uF3 z*PFI!hR&&2>8o0`nTjnk<;$NCjitHjP9#s*YUI>2u8L)-ytrIpf<;{kd(2bQug&RE z(dZH%VdbF3-V}JzvXrn00IbNl2NFnZM7CHKmGYe6St6DFS= zY3h(ud@`diSh-8popJ5&)m09Ox;LS~&b8Vng?+$HFU8jBt;TdMEs44x8OT`}dZY}S zrci-fbr492T|suN^kU^bhlWtrtXMq4!SX>bPcuswt&^tX1hbb@N%dKoe`}B3PYCkY zG7?Qke*c|+EOoK;xuKUWT{2n9u-QafI$jQ4E5>v?o49sfVSr^9SzPq+(cFwx4Z&LD zPA%}ddAVyITRi>}r#Eh1-REt`k=0d*`MU{LW~XO{`ZtI21`nHA^O;N|+0JPf0Kbye zcoGGF(KdAr%qm6KWsPW&n*M1q)v+s%gM#`sQ2P_CX*qTrSX=vWY>ea=6x0uAM4Eu} zq-*+*@q^M;C2wASlE{~yp((akgyN=XEhXKTY{SbhEG-A^P|vsTRhyGX;Gyp{IWX1- zA0Xt_TJ!6&8@iUkiFSl1!;XxIm0x}KuQKa!%oz&0#U^I5CU~rt6S=L z6N4<1%>)}3=}FxE4b#G*KK8w#T=86+cH2r%XcXR2yk-x+4{LFA*!_0VwQ_9#nps1A zxLUT0{jBq~*r*2>?v9`N>~$%`qvL$I zYq1e0RNc1_axT$(Z8QD0McP(-^?{}R%m(@}JGr$fmdUGW)F#-yDrJjw{ki`u150!l;D?zCX^ufp-6G5Zj_$0Q>bV6-+6?~2in1{ zYIM9vsiLK2^z&m8)O#8g>OTDpzyT)XI7nX&my1`H zO*VV-#-I&7kuYH!sgxqvuszTV-)t8&vBL{(i8>D=fu;o2a5>Ws)}qbC(u+`wu?1f3qhg<9R;$uK9*KlAj)`P1?D<5RXua<_-=mZ$H&A+zl?@bSH4SP(leUTRNY^G}O zWQ09NX`2trx#DibqPabJ@IS<=Bud`|Zs_6bkN``{A-^&ahUW)A41&5c90%CCklfnrEo>=ZMHGwZD>- zb9ca3#hL_nkD7(I&VM0XX5^o`W)#JOTWj7hl3#OFdfU%%S9+(K1U}b2z2NQW)hxbX zqWSAfi)Cl9@6$P5mWJN<6J=NKhCPo!0uz9&Uv_P$CC~rfczruY_`5bsTGIm z!;hj&;Oa<#B4vG|DJ0_e;NnKK;zZZgsF+_;N@g^{q7RwpQ#~n}e)8*V`pZU@w&^rM zPX86NSP+tScF>^K8(h)5@zPeohbB-i!ZMduwAGp5>~(%IsL`AJnoUsprvQ?x-itU( z>sdqd^V7GU+ZF3by5EgJQsx6oPFrK*!>!x_wFcLZ`7ApP>_wqwvvO8xn!$KTO??*k z3!b%mzt#uqb9`|k*q`ZH+8?OuuC6}UZM@*sU6te{Ite30u)l(jv(phXIP8aBl*JH$#L`b7JJY0mWYJi z>;*k6dzbG$pt`>YT{OIjsDrFxSMVRlKFewKn0k37TCaTtFgPAEppR%$_AAmD=96$ZGSm|3<_L9=qMq8$Uud)+~{H&pkAs#qQSm{9lH zo5@bSrc+V$RY=ep@-Li=2g9sm>{K}=vtZSMu~>#n2N)|hq~XET=Z-mH%&@|apP}e2UbQWy32F2-@i*#9_1`$>S|6f zF~LEnq4ixY(DnBM!|wOXEay3X0R84bL`R`!b`L05q28{3)8l1bQ7l9{#YdsJ(lNBl)7%8mK8Q<7z8J*HywOh z{Uv1A_W@+rvO@v&+NG~OnVGGrdtQVo{Zp&n#Aj(a`P}?m@0B zSsutE`H^Fu{(kPD?_0`yJvR&_KqMq2MDFuJ@(ae)6h?fhoQiO?LJ5QFhRTzA|4G$S z6#pj2I$cQ^;Dz8acm!eCp-CID)OR1~nkCJ_o(3%kt;Xqo&F>rG13NFH3Q#Pnri%l= zw$7dsEAyg0o=d28aB;?Ja-4Ml}9>s~+N2 zmRQY-v9kQkB#s?ol`DO0-L~`|MUyXKUf_K~AFI)mF^oEVayo0xyPR2-Ij>63Tfcnj zONKYgwdcQT{<9NJc@?})rrHIybY!}0)p%k%qrYR?*R4P_> z@Cms%UO3BHP(;#-FLiy4JHjr~G{g!i98-Lefsqy2o2^KH zQug5VV}@KPh~<%!yf}k%hG#JPjn8^=E46P*AkedUI&-BBvq&MEQ<@g(0a$}ij&dhM zwx_4!!Q{OW$7)_yf~;f|Y54+`U4QKgwyj-qN)u^>bmNg~om1gMTnfSt#QOKB+$V{0F4x_OM`yO0WQ7RX1 z&)S}BoZF6hp`o8267qJY-k+@x9Xg&%dukZ1x8{)LZH`#+Qv0>->FW;FRH_gYD z8H-;yiR$TSIAh|lb{Yh#h<}!Jf{%a8E|f=B`DWM>B{~yNzn_hPQj;rk5cYf2XWbhR zXfX)@*Yb-YpKm2kfB5<6OmcFY5BRuJwKV@zYhgzVGa%m~Z%V9E1ka7#LNUoa;Q3L% zp|;jdppv?_ww9mz?H$}Th7sh%zqxaLx3smF3$tcBnXk?4kWgaYzM&hl3EsV_GcC6@ z92>gSmGTM-u6BBhFiVEU*77g{7S_(4G;)Ss9MJq`DYGy*xXw7$`dY5aqtdlg87 zl$a2nr!*@{M54jn1*2VJd&CCVXGW4p<7x7i~qK@MR%IxD`Sz}s8b zC2kE{w@w+a(g3z2lFSR!6TtJ9zmT~`#qU`i3JF-^;mDQZNijN*gsWTg2~@D%OP)ql z+!Kk!w^WOvS^T2f-R+Hq*0O&)OVf>;9R`C|9amm(5)uI8E<%maEIDZhMX2`^$;lJF zVe_9kSfqUT2d$+Xs)P$f08mce$sOxXI>Cx&CVKA3pe!54QhvL(J5d3m2_)7R0bst8 zAcaxLn%76gsJnehQqJU)6oC;i%%_3#mji`q@Ja2=XqSCXFn|D8geenB5T?8*g-xB7 zbgWdQoWKOkk9=mw#IR0VwEeW8Cb36HGNa0%SPObV9)#!1x zcb!H&3_~r{w2Q>!HboVcu|1`gIZ`!N{);J5mg*N%|MkkjGoc;E8ErR6a0i?Gi%kwS zqeL8JV(S6xMAKxW4Ew5TRgIr?WF}5pbyJN!!7_V~2o9OK(pqp`==M`oxcF!b;Kk2L zP8~C6gmGOA*Jyi+4Lc;Km1cys4tnIO5ejH)0EcWh_XM#cw`h4(Q&YcLTKz%-rO-E5 z2~bVGah5wjD{@X2`J{=ZMZ|k0NB5hJNolBqN4%1s-izZ112PCi4kAvvq>Ov6V*#;{ zso4D5+S~-0$g|_3iVXzADEibL?drb@m+tz6n2kr8>8SG+NEv-xXu1Q*e>YXyOCH|M zXNgsm1`w!yic!yt$>y8g`KGZK-$G*sJSfV~)J_Ek$yZ_V783-affT}zyh#9;ynR@` zm!*3&YGBpa@?Rm3@K@>5h|nH<>6-BBcF3<}hTZn$lw&Ny8M%A&MirDrVxef2H|6)u zuq5_>Hv_{5x|K5>Ozi3S^cyVvNa|eY6d3i0+NZV^k;(jtAJBnnFy zkI?H({RkjNNjNVlT+RR;jMVEH$R7>>aP~QdDHYRh<`E<)mx2Uv59(cX&3NKW%Cy^2 z;ecH7K#QVoHSmtGx&$?68W89na3#q{H@F_8%Ac3K@zyQc^hqT&voRjI+e)+Wa~VT?R- zeh4%Ou$Esq5|5#=QJ84WX5{z06&!y`9 z63d?R!U(=Vj7NH3M)lm0_SIC~dQ|njt-HdWw}aW+qAZJwv0V+z>KbxT7fWc&u*Y+z zjaIfX=tOlI@QedYX~AGtB-m{Yb|ZKSsx4A?6t(@Gtf45p-Km3?WK4y?@|s$3E6i-l zLyh=LWxr6*By72v&gk z3Zc#{?f$K2Rf<(K6*GNZJ|Q!3Hy*UGBM8OiPhdN2m#XW2{+WteI`o$o z#7e|I{1VxfGD5>k-6`*V!yWdX<=iB(ytB^zzZ+KX|L=yiHHqf0& zPyCY;3-g7qQ^I!#MuRVuaL^-#L_QfpgViY6Abhp*6a-Dy`O=vR0ZN?|bRF?u^%5uSgSQ)d24_gBe)mx+>BhT% z0ylwMSXxpE@)F~Zcidygh&)1WN#)=%9dJ$POw-2`0VBygKeG*RJ>KhXw`1`iHz`qz zwD*iw(P%7;a_2^t^@!o61S#{U5J3F#0{AlyMEF;8CNe5tZ=u{#@L?IwRw;~`Owzqn zu29#`?FY)jd_=8G@sj{p-a|O6mKl9vDZ?$ z&qHl08^1!o-Ct<6uw1gMx2PJ8+68W~qTs78=|FodWMD#-hYewf(dek48Dr5Z8z3yA z?!T)7OUhIh{>!j~um|oWDF3Yofv;QGBJZSky|W_#x;n^=ICf!kKf-zSJ2}q|)$!W{ zNHEtGhL-0#&~#{K+^WHc_$nSM_LxbG20Ox>5({Q+qb%cT3Py|6(njKgqAVtHJwHry zCb+=EZiVq>p`ivil!vj^;^F3KN6<)k&yO`xCK2Eqn}S<V@=DOE}=zRqEmVeg1T9 zbqwO9{24{{sFHXekL1>X$8Nfl^{K@nlmNAUj|)UPQ@{5?CU3A{H+!Ag!ixc>$0=%j zx~4o$F*-ZT0owBV*sf+>M+BE=7J5jM=PGwc5Lpt7tENg!IbZ&neM4TH}nx>xlSN0CXP;TnGDMv ziUz6^<3Kp_S4-0(SN3E6yP}kS{r|3P38Zc}IZXL_ziSeCpE6$!RO~Res@s>ybzloq zt)LQHb(WtM4m)ZYtcc{)ngtvUP6dj3BS=_sp{{0w)3xMv_2mWS@QDYuP;hjOtTc;5 zs1t^ba&r(F^A1=^*aL9uIFV%3Dq1-np*HvEaOO~S*1X2jXms+b+&=YkE7p?oKACK; z5Wm96ouopUdrgkqrg({BVSb~~M)C;Ajc|!*IN9SSOr4wcII>CGrnzkpYs?+kN{-#3 zBB8j+HS^vrqxcx$JK~M*G`(1ap-%nD1pI{~5EJh7nvShB30}jP#i;6B4-CK1h0xagu(LZDb@R z8&eDAC=91e^y+a#YG$o@M~ip(!7dm9q(@xavVauTU{9sWF95O zMQHSRF{iEv_pB_tv{r(X05U!vI1@jh(d9G4WmB*m0gZ%GE03)ev^tMHN%q@sqFytc zqBQYatwT|Tdfw;Vm}-37O-7jh9ZxKbhAp~cthG`s_|hKpLRg?g2}UQ+hVB;=(nDSEBC?%VL1;I)RcWLzxSyFF>9BcH8{L(V0Tj_PxN+ z33Yiywe+wyd{GF_SGC%1N+eLL4c9N3Ya1w%!jO-8AXU3%`orjR>re~CB+w+)KZT$Z zissS`&`|s6_z7;pGh)-B%^XcWnY?%(%xbC(EFcJiMKh{4fS5GNZ}z@NT~Vq*n2&|1 z?_qL?iUtd~BBFoBLPL?XdY8={kzucwZ-1G4tib9so~Bpd(%&z_Z~qtH7T-EWfiK~v z?_M16q?Sqm!b|Hm$bUavrbi=)ABT+u#*1nZsaMpvaG%Y_V#o7ErA#*bWoNw|5Iq0> zGGAW|_LAUU>Q6)+#m7++Vhzlx^yK`q!9mOzos1s zBPaRP?Pinw0Ndj2HoYb$U7zScmrekT5qs%Ap=M{$b#lsdS}N3BExS`-5UHOB8~FA+ zX{3GAjd71Ys@k|`cIw?P)*)jZ9l+~_IqLpI4M)=_n-I_>?TsqcTtUH)HyuonjL)Q$ zwe~V3EtbH>=|>mRb7HL{)e_A|ox#vIVe2^q<0YUIE2WX+go`GhfGtV(({}|pT3o>6 z$9ebuQ720{ztoGhs>5uwgOUtt(!N;uP@JplOt`BCPJaxBuV*nSClU{agCLf5sdp$L zPK@sB;UztXYx(#^^GGwco^fU}6GtP?mR{{0w;sWgA6Fcy!>b=i*RCy)QQ@8rL zA&P+^D+L&jz(z&qY2K8<#%LhCe`uP`8_yo7S`it$k0@7E`kqt&J05c7X8nSGM-&J!Bs zM=7$j1`|22%|>z>q4cO?tn(PYsG|b63?z=BdARmK6EJ>ziva;ckg#O7N0KT>AkYBD zd4zcB`UHuLfWys0dsMe6)BPPqz2QuIRX|$tbtpoBDj}sy_l54KuDroQW&{oyScm+Z zqqlG>O4>^;vXExBzzw7dY@{j#q z$mbf_H8*;4zry2`YXcmFZP3R>lOXC*-cPr5bi?r%*WT5P;qbx!j1Eb4yDQfoSy&sw zSno3+3Ru*=AxQFE36;;`a0CcQI4x=Lt)`!$4KZCPAJh>%^o8lOu(cSrUS@h#BM;h* zgkjQAe~t;{4nh{#d>dU&3pJ2 zyUdlFQywuP`CVfvT*)%9X|C?ukw^8(FY~`SQ2)Gp_I*D`8X5C_cM^^k3LdKR>nw$g`OJWvjgd17Ba}$CV+2ePje$h4vqTs zi3)K=r>-NCaIgV_B=;3Y_YiX!5E4P4^E4M&SE{KWN>CGr7-@zt@M+*FO*3CUf<^jM z2ZL&l`A`Q9XiP8ZCKVqMA4LXVBi;m^ZodcUZ2edbEfX*Y{~2?pcG>yarl2Q+pW8 zJzWpXoTAXjH#q*Rlv2M}o{qhhg;pg)NGaP8E<+-J2$!AN@jCYSUD2Mk|;H*tW12MJfTN|ws^b=@} zO2U@9(zO3pPQCItkB`=dvmh(`kajEGY*^DnE0_`NL>C#+6TBhX;^H3Nwx7u}Za|ji zh}e>kvhQEETy)>GHYkiN*+wyK8c2;4h{~v7p{&j!f<-Q==tEIQYgb6!@bOt> zVPP@AVn%s?_7eXZq53bOQ;YXRubcT1jnA1RbLKh(Td-|&;9)2)znoGRYGFO`0f@KWD59p_WkDNFEBfQb_ zEQ9(h6S^{BLKJ8XCO{0M+uoBj10J7z>AEUn`d|r(Vj{6v`XKFxceMc!Y`W8`oD~cP z%Syy2a_=9|8WGD$$meOHm-p>o^Mk$i^cYIznlYyfq4qsWbGXciol@AL{`;mw9d%bk z1E`%qMJw8?Xyl-Cfi=K(QCXzCnUDv$+?di5-u74l@fZ?JPm)PWZiX9pZ|0wCLc*3_ zE`l%6#w!bDX#S^;^t*#DFil7MlV$uR#v!?8U;1UDQeV(#05Nt9j-ud#$5#Xe4W0G@ zd4&blT96Y^=0?r*X2l7we%MVg(<(@1CvArbu!?YV#>M4p4wpX zV|E_bKz)sk#NsZZ_`V>Q0f$qkYU9DH8m+aJc+71O&aujYS1pq&uL{I;0kwD8EnAq6 zfCN9TQlI#Jx3}}dzmVzX$ z=_I5rH%)uM6-PHD#%dUTgkNb@`}L0)sdW|~_F1Z$g57MI13wBO+b|4CS%%k9W-K|= z!-j#y!fdE;y+oD-u04jC$M!vPbP`78%;;%>^2m)RpCW@$G1VP)Q4RCV5@^*hw-ow_ z_wp%!WDet{qSSF9CawJ!9dYTX%1wOrHMHRp5NkiD+NQ&+rsmw(F-r^K5U()0iG1v2~(m{=p8gG_;_$a;MRfI2h!jS zpxnaZ8jrmfgxHoc?WslV(jJKgC~BHrUiQ*Cj^{KMIQQ+&ro&c9wrRN}db=NliN=;4 z*Gz+o{4gXtpsY3^mdJbDa}ob*q9Wv?nEN#!pV{|=;|~3Q2L}s&LVo~Ss2B~(+|^{f zzk9$X)ONtf!b$gMoP2j>OATgOePueHYVDRX$Yv`=9#>AC5hc-{A2kVyhO@jK`+Z7l zs00rqPv2Z1aq5zLu&`2Wa9Fbmf~iQR+xHGx+!DwHnDiNtVomJOb)UsSNAJFfx@gbR zg$G%rV+rb;MQwNNv7mD#jFe6aj6;k!m8dTVw{m_c9*KMGph?V}qUPc&PVNZi*F;6} z3E4?|cDkaCbPam04z$+X+DU@Vm}Kt@kmcK6vBwLtd9Wo35a*za+@oSg(%=i^fSukK zXjXItxhylXrc^{Q?I9`0bM9@1{oV>#1)KD$#?*Ad&q>(AK%-P}hf`K!%$}5THgJQ( zAysSFmQfEip$uGK!8ZzUZ<^5FdSs+*{@_f7@rC4GD)pFonE!L)0eP}#lPlby{(h>H zI4~d9S-A7A(A?(|e;Rk?-y?`C0IhoMxd~@JxDVoOt@zFx@XH1|C>_G((*I}?{7rGL zuV2HmYvrh|G!cqZ98JCUi%8Z*Z{rin$Iocm`_k>kbQ3xGA^z0U^bDWzcW!u?Jr3P9 zQBiMiGy}ul&JJz`+!^rly!KKDMrv%bdOi)#gH5jWvYhwaG#N&ssE5j32j9V`h)zl^ z02JC5yy^BIohRH~iqXjrvuEcf^#Vu1ux0@7zTZoJv2y%qN3goYKmbI;@@Seb->kpRJoc9+v|qJ{=B zGp&43-Hp(un8Far=mcjJK`kOUtn9reH*M+=Sk~|U0^y<+n@qcf&NRoC1{U#yL*`Y` z=%V#am#t2WT|dPf$6Dk-zmRT9V8X1 znzHikmr5~xL%HD>uL-3`j=tas>&Lm}M5y?CWlO+lSk^uwr4h#3n4{1aG6T*03w zfGt2H)q)vTiw2L=x*LfqIn%^zr?&sPU&%=GqLjq!VN2Z8KSdf{g#!jZC|H|$G01Qy z8%X>8iJ71Z^Bnjgm9|*j^P`ec@{gK7 zRy>5-sf+Sb1rmu;i1;)R({l#;o9_tk;Y~5?m=b{Ojn@X!W~RU0EP|8k$`2 z9G7wWpeAl6kMpID%pCNSa=ZiQdQH^kyW6QppIB7VfzvWtyY5VI?LSF=D+r%_T_7sG zV`w>Q#8$@u>l_9WXink8%~okq=MG4WO;geKE${=94Dpy4wVGKe@~F3<|Bt|w1>1MK z*_BiO)hGZz+}{Bk&2(2WvX##m_(>WZ@A&@iK)YYJn(*77_i1>If+;d%#4$vyTLjoK z2G@Z_I=`x7J<;IzB8bJi)Jq4h`ylBknq^>dZI&mDv}q};WVMmN}9IW*8y_XDW&V_50J6ys4{rBTP zc`0#?+;**Gg4Z6m?y;U+l*y{;68XrlG*aumr`zZ8Z{KJOfKafcta3>*tZfLQm3(z=tmv{tnM4O@%GZqxmEcFqFV%( zft|3dG}L>MJM3)l;Z@j7kCZD59S7ivy z{)n>nQ8j1K6sK@o91Ife3-ED2Sy&{&!Nvy(iweOvnA)(AN^#(&2h3+7ClDn{jZ+6%NhFg5d`li&#-c-{c)g(D>e2Ej(S$IH<= zNe!uzzGgLT1+oZinZ`Fe$yLjrWG)RpEH8)L@b}CF=A1Opz3Zq(@7uAN_Umfo-e)!3 zikAPX5KZzDTkD=O^!-C&%aevyKXg%bTAEO zc%4nOAB}}=U#5Ajc-OQ)xoLt%(n>BTnFbfXW;s-)PhMVUdA+gce6|pqc+`wx|HUN% z0}UE&Wisz;d#}jvKVCUhkk@e1;T`v7{_WGP9NT@^*L2cpGV~Vhh!WVpyj8zl3B)A9 z{@eHP|4{W+acyuOcnp^aWi|cns7Z#xj7s}J{vbF|JmfTDbjagN`VcT)aF_FQDm{L1OHf=L977K!Y2h81Xz=3 zYO{O)&bdEV#pUHlp^}mV2i=4(K@y!We?PRT#Y#lN$bt(;`#3s3uAOg-A0BZXo?|d} zb_QJf^>ofiGRByyi=$p2Li{Z$#bE2mN=SDUlBtRQPI$`%jJf*OiZVFi#;Vs}`t3f7 zlI+}+$}mFPMgT3&ub(yWflS!gXdicd=AXD$GzTd~=dltk9QH@DmLOz^3=wkBsa%#a zY>y;&=RSb;f^qZy!GC8r4e4Jl^-7wlGRqL`#JLi8q$gR$T7GS zO^CxWEWE9GDHIzBT|`>2L_@n#V=0P*Jis#ZkiWI`QT(cX+tr&n_rOUP$uRHi@YF`y z+PZx3kK4eRS4oqR_{m`a@p@ik%|uP{z{%0irMyPW^HI8|tFhj$0E*_ZSA#z!hHg%I z)KaUmqRpP3MMG=o-rm6ce9lfdY_OrR{LbHz?c33vll==hLs?h^OauTpblZoJ(dIC6 z+de4+1p!tT{)$p?F-vQaDpgZWN@+}DFCRHdL~y+ST``?3Y!C2y*=BQ~{bu?9TI#>7 z^OaPv9>}>Y@N6zIt7nF*c@h%_smEXO79y4v!j@zr=7!v+xn$~zRsz3&2988tf5!nv zQR7eex8XSIpJ~Hf-(yu4mQO@FsWEiEP#`FBDN2kB#)>M6&aG}nMU~0XJ&>Q(*f`s3 zG`H}x=o@6u{#>uPX!+~uj+&j5gRjaqWn*iLJ9f9Wdfk*x|4`kaII!f%R)f;3<|2Uy zk4GqKMS90_FiU%&wRNP!+b(M3;axPoCtI~vZsQuO;NqP;bQa%FsWM2Y(0_sp-a8?1 z-KM+~7Tg5-$sD4a+TaBLChEkCm%%6bh8M3Z%4Yl3Tu3$MU71@aQjgIm+z6AS(vYKr@R6y=Z$bEfnQ>q-%{SNqJ?wz)@4FNj^4P$rG_8;?RT3`kXdQW zomhta{&_Wtn!Br3$2AX$77?%F-c}4x5&NmD&OE=|yq3f;s|BcxIa^(Kt9sN{op+3{ z*qhZ_6Z_pQVFuwDt`QI!x{jvaAbf|ge0>QKvK%7RZ!ahd2Hla zVFZq3i87WxEtgwSfaDO|JR0BLhpG|GAeFBp6F?4pFud$gS;jz+>`HmrPsgC^O?3R* zJycWSY%A}mSrxEYR#D|FBVCf>09xnhX_f^((de~0AnZ@)MH@JEpf5e2G8?)#7WBwf`s3RLS)E-pCN+B6(s=Y!J=sLB-?rGA7VlXd`PN1ncU=j^VVkj)hn6o z1*%!x=t$(e+Ab-B9npCQnsyk2*G!sR{)+=XdlF=^-rX;N-1|_>-D)23M2_HB!+;Bu zzHnuZcA~!a{e%0x3#b0D4sX*xpJjcn2c9l>%NS<0+K9>7MCLZTRb?i1nwuS@mF@F@ zdHlSdKI&Vmv1jOP%zlQORO`JdF$kFJ`4m2#P>encogodG86`vBR|3q=lgp`v>@r8C zgh(mlW|fG+WffHD0u0*1@KXe%AMm8R-sAq!U>V<_=h&HvO#7hs?>xVl{)-)NSl`@{ z>0?awKaF$x@>P!aRYoxF9MQt?h|=LFQW0|@*MH))cnr*zT*C(r{TUv8qB*>bn%(?W zvcu)*#G$`tcz9?zmTcgx7q!KiTi!Ghap6$uI2_-?w!A)@aL{%>-1$T?JVpDsWEg%G z96-_g967VM#}Eh{B@ZInq`F%$3!^Dt*mm*FWfSzVL$@N+3O}Mf`zz=fHvra_AW}Mw zyj08MmyR6xQaPVURmfSW;6fGF4;$J4g-P=}!eDcFSq1dl?cP}8H1};G$U27S^!R|5 zyKxg{ew0ApA7J+z{KYWCj41xr^SOY_ji>J3oxmG|PPKllwSZXi_cHz)euqz7h2^2< zm6abNG&H-S1X@~KOL|)1$*J>&*Nj{=S=+m0Snr`9ZAOnLOXJQLlCZQ>2n%;n2sJ+P z53(p;O3DbwL_mu#aJ3jDnm~&rXJYT3?dO?2dZ~A3ZAb}CiS38)i;r# zP^BXH$f)#w!WB`P3lOGpABN4=aYRr&POBd_-h>C^m=B|GxKVL&Sya0bzuL-v>cE$N z(OHIpUTU^HJx#uLxloe4J#FALh@W8+$C3B)vHN0(VK0Sd(?-EhHL@KwA#yY2l2~d? z@!47@MiBhjSd(T;#3p?J&-@lpM#(H_=t5*yro*`hT$oI^Aa^AzBfH_B6n}m38CsKw zq1p7s!SG*0;@ms*F4?EtjLQ}vbL_uROFb*oI83hgZk}y8Vb)}|D}51&*?S*3vonagzpW;)8S!-9 zK`7E1E4e(NUh2oYz*pRmUnK8nV{4VE-G$tA>_Dpa`PMH0=;2AjIG7OQA&f_({$)JAcU{YJ=;ec74EYH z8{|W!Id1L3>QZCo4qy;F^?nt1yl9G0-kLM29; z&09iFU0r#pzX*l@v*LQtXkPnnx$aJ``}Bw+LlBWXSx_d9ss1#%dEM_`xR%p-C5anT z(2P`PIVz~Y70=EJSxDly;6nEUyx^%=`Ci0)ZxUu8Wc2>9t!|ju{T1G%=ho}_@{Yyj zXdMX>uRXJ)mds}{5HDW6OgtJFg}2yB;F4U0dFPG33wwceeucI}F=LAG!r|Y&1og+2 ztF%9IRW`StPR6hi$IbR#a`X11r-2J3Eb;!eKnKd#ZzZXjJdy@HKk4p@9X!K~KF@au zJ`Y)&|CpovawRSYhybQm;t__CVB_&MaapW7;0q?n4?x&2#co(tvcgv8t+%Bw-mrQD zZadl!2Pa%k*xVtrLu#g11b#Rqv&;3G!{D0d*9H5}9_16s`(D^qY#TPN@^hzgMe_wx zsUitU=Yj!6jH01V9`bM~^t?P5A@-rMlhgWU$a>;#J?fl-CsBi;_Ep2@RoeEA!dxAG z2eXq~+Z`TYIXS$?ne05Z6jYziT7+ugmI z86qwZB6Ie=BE6x=z;PBDjS3smbwQFdyw208PHGr6CDWS)ahkX}uRaGt(L z_<(aH-JRmCjl>f|i8$Yx_WDjChOa@u6A}6PGIuol^{)CKVhJsqT-A3M--WlFs;^H6 z-If@2JkP%COVqE^TzH-hxN&@M7(`;N**=Fija@Qz&G0o`Y|(8qVtO+C<#_Ary~NIX zz8U_|YovEb{@wfns57?5OgR!26F<#OVZ*Wg`khwi$HSZL15f+@-2~)CIXJp$x(ACP z@9|^zgX6_$vos^l;m6F-a4Ry=b0$#POs0{qxO9P9iTdXyd9qjffZe_FU8Jp7-SwcW z3&?NWWV5wa^6d5Qrn$tkDdSUzlYu0i2S>N~6#JX1yE5th*7*}@s)Z7l2$&^=o$Ih| z%&I-UZJLpgrlflc*|4T*44K=v>>GQte+RPkpVR1GbJa7S#l&^uVQ^6_ffD1n4bSo{ za8$K*A1b3RAN-qFFDyxGu}Q78~LY#}ScFDJ!(Ce3`;0SSn&)bY5vRc%&l+KV5vEqkN-&g>12pwgm+; z)EeF5r8}c;gT0CGS~BX(=*kJ6M``+xr_JbI?IS|!=!prdFG;v(Mzy7Gb^Y%~NVbeY ze~3nv>OfbtHy8~JWZ?Q`e^YS(1uG$J{iO5oz(&599M#wf-QU+@3RAG;CT8YA{EL6X zusm#|eDcIqmu_zxxYcMwIKs1r#%By(l)1g!6OUA;yZVA;U@#Bau zG~TGIez?b=K`Z9jJT5eDWXo5JqrU(fAj&=iMhNNMEZOcQK;G$_Xd=A&Xo4Du7=KTG z-qn~GhjBi{RwstYvW~|sw?3J6aK$nhb}-;x7QIJt$4PNY(*Kvuc)k9VEB9?8$MyD( zeV|KC2%aa|=R}5G8eI$s5aXi1GvA*)$`np4(&ZC;_Gv$~a-e1oV7g}4(eipv%gL(}3hA1DpR zvmK;Y8~&56uyK*d@e+4nm$&9)+;?M`eQNQq?Yf23+}~uud}LDQ_mGws>jrZ`;CE3=oSg!i~L9)3I{RlDAyN zic6bVGCfE_Og&`VP3|+fCV)z;gp`MV8b~%sn)To8MdZ4Qxz<2NGfvJVk;hY)s_k*hgcOkpRV4 zC(ID^nDnP7`><+^DmLSV)k7^L-OrqR$9o$HCy!S_SV)aXZvj&D|Kl#+H_<|>Z0LrO z$C>Oza!xiyz;7ZI{l1RP^dPU0hnr^!+^A2<=ZaxNUs#I#TRsIm-6}+yefvn5~ zQS{x9a9myvVcKi9m6g#)&X26vlE@cHhDy4K37sTJ^ao7e9Qb_wh7gAPonNT>ki)kR z+TenoZ%}S(*q_q4U;cL834LE8*p_4#Y$t?MZ@fg*kcomY z8ZHStJaeCW;cC#kf8*YL-#+HJX`M98P5+_G+bmpkYkMQ{Nt9-Jb}>Fp#Jt_=TrT$} zykPJ0F4t=R)1UW8vZgq9D(UuoW+ua~qvX*SffxRI-9B9T!LPpfKtmow`RBkrO!g&$ zC7d2a00LYOB3_|k_`B&)8t4pFp-fh^|9rsuO7id0f0G2={k?k?u0Lf|7JT=`HTM)- z;Um3Nn2H`&6;gYGr_tu}6oP(lR4}43%SCVn|94$K!0Z1zIZi#qVwT z}a$2j8>q)#=*zIp&;NarsZ$wEg8k$-RZrGcldntTp0ucNVzt2tg z2+EL>bVs=t!#Vq5j}jR;7K|`0Bm$C7qNTav!$<(Rp+z-~Xe7rrKKCOHGf?DP+#MpNm7_o`iNY(---hmMd$ zJJN#7^1xY9QR*^l0&PxQAPwG1{6~!}6aGX0VvR9;{6E#c9+Jgsc<~?Uo*qz80*oTH zxRW>kQpI&}|6PGoisa^I!iKF(NO{BC4a4d}u;z)O+XY6!14qLSk$tcaA=E$j!V6qC z^T-d6{uZ_rVdtHZ+t}MKMd^sNEt&5;%ieE#_a@^e`LFq87)1eWaci>VGav7x$>J^4 z#8FMUt`XPkt#EY&XfM_8*r#A!6rKeYYs0RL`MxO!oMU1j7j$m~!YCu#?2x z2zp)530 z0aXC{$d(A`lE}9(x&XkSEf$&bYJgSluvY(4q=Vv!B)`!t`#`0Pep`7;p)OU<%)r(> zdUBg`gruJR=#zgZRvch%by|sw?XpYkFhxEtv=z$GIjlvET3iQSu@v?d2^oi5vbd64JV>@?Q*vb-WqQ-)>Zz zO&ncBQPKGH2LStCQ4D9l4)9Pg0k`Hx^4L{gQIH(`9ArbeDZ-< z7ZL|jhAtB?%ZKEHFOI&V%jqNGqHgWavI}3Aj4tF#q*gcKLRYzFnVWZe<~&)6sy>IdVsaEzhvT$mRma6)U!Clm!R* zs55C)iXM%9g!Xqr)OTArx7Yr(So*&IxMH8ce^rhyFB#}k7db2rYwUL;3EUSYI`tp4 zpOT|K5t@IgjR|$({OSwa{LQax{nFP64wHoBc!6d1+;wk+T;y{1R$ugG(Chg*Lty)B za(-M^6NVT*=0+R5POR{rvI;_#p4%EBHJ3FQc&wMV2 zL#xR?-vY%3eS}ewP`epP&->&N7RuGp0Si&Yq$N}1CntRPHZPdAuHQXM;e7NTuS6XF zdO0s))tWr8_6i>Ok=?dpW|866)-d6laoUqusbz&F=ikFV7qD=Q?qQ0BEJpdAF86A) z;A`OVdbiK*-`Y*Xx??Ug2~krElEofb@TN<$=4&;iD3pErDyT3a_IaEsSLU}XSIR^} zG@)uQCELHiW1IukRPN#@Wuyj&2liQyp`}KAaEwgTRVn_+j3dKEA#m#wgq@f9R_nyj>g10dPcS{y7w}@(y;CpE>A1?9S!UYgGHd1xo~jnG z&sdx9^~SF?dKNstV6+$S*T2I`Z@x7TPwD+r%XRiV@iUF~mNiQeyHJMHvUwtdmmEl1 zd~l@gXg4NbbnnWSqK~$kY>F(q+bJ}cSu+6y-s?du{LX$Po;d}PRklc-t2uLvs|mLl zgsU&u9)Nip%&*(1BOZw&gH(8Gpj-u-&y!TyKdAG^FKAF00ZJ=)KRTKR`2mvYWAYMkPm0k ziMiMYPW1h|;uv)0quhm!TJ6=`T!Wbm@Us2+;2BT(eYDq4 z+|DYFGZP|*T`X^x9G896+mA zFGoJ9er(tVB4zFMQrJ0-uw(PU}wTa zyLg0N6UytCf^Ke31uTvsl;3qZ-q>^;FTTrpODr~Lv_2$=jotoT3v2y?bO7;!QODoA zQo-^_Gfv7eV$rc1U{9TvLUa4^kW8CnUjL2aERZwUAMN19j1NQNh;>2bz0*;Mp-}k!#~?SJ#J9h4W+=GVBfkb4YU( z4%cYNM<3K9ytph{CF1>!um3dg(8f#N|G+BOa>ou_82c$r_~aT$i__o=>feMNpsK37 z-y!@v{~H3OLFJ@#lr3sj1glFsusvHuE-(6C>BO%G?oRZx2kFhK@n?vf_)&9w0n?A? zrR`=L?mk})6pWS%Q##Gi&-C_*=Uq}FP?-FO>F%HS_@ zIzhFm*^0d_^J`yA;54N~FQ_x9!bRZAjTsCv7j_b+im#uh!wn<)TiO2KNCtvB+<$jT zK(=A*yD6?w7-qzHnkpHGBz?}3;KBP2H3ZnMMz`Q3`H+@HX>ea0Z0|Y7J+wUz?6$c$ zRmYxPW|u15h$OTly&Tibaaqw`+O8-`8mzA5%LJVqZrdVd@$otGCkg$TZ{JRysBZ)% z-WW?SDlB|Ed9J%W)3%8=J%cs|C}D9Pj^7twy`)(gYXi1UCsr0y296yuzZjT8jt6~s z+ELn#mjm_P5$VBQ?77yZ(_QiJ_E-llc_>&3 zYLqI?4QSeN`um{=J?8}vq++he@2}QSV;D>6%8LjaWbe3k?3{ZPRZaMy>GggIlkB33 zrqM6{G8jUqe8g9A9x~}a6Y5^~F39NR_4nO>m4tEDKSXzqgZ~r>AE@&}!GdV(-ViVj zghzK&u#MI!s8be$p95AQL`JN0(iWrUontg3Lm-|{d=jSe(lo})o#@KCbweFn_X1EJ zavyGTVU`M)npd?4&N|>hB-8)Gy}geu9x0&9MNKaz;9wK}vpa)vfZJ}J#ftZEzol{? z4GewER&Q9pP$yX&s$GvnMn>zq!e=m?_BA1ST>}y{5qCVojSC! z*EN%Lh8@^i&d;X+bow{bI*aGbcf;S1d?iXBwG6!FUJmZ~dHl5O8~nG&@ju@4MqdS@WDNcr$z zEXSVRpzE~+!M_uENzLS+qD8hx+F_zbv?5Q+9!ehV(0zfuGDa~?^d}@}Mz?>@IV4EH ze`jxgX?ap3eXa19muyVn6U}x??+Y>v5=(a%z7AHm`1a(VSDDg1*X-w)K45LjRv7VUw|vBagKCs+-2k2rV|FNJo)6CcR8F0l zJ0MsyhcrivOdaU)^b7<@F=O2m#nWj8jGA-xTzrcRMP94YqR;l&dKWbFUk;gu3C$s2 zowj$~fiippoZ8_kG;}(Wkmx~uksftsJDZfHlQ~+&;}_uw}9PiwJc_EqmI>du2ViLm++$) zJ(j?KkL4oH4!k|g;y$e?+&uIR7-qwq=)xOzE}0yKsDU-hB6$I0U+3*>Xk%kDd(7<3 zZkUiN0U38aVZ4GbQ>&W$I&qihit+04rsHtB5-IB_tyH0R_ECE*Cgg#<>sAqO|KObs z5~Z$or2A>|b|qDXU%}SSU6mLtB1apVLHF%;HMX_UrE747F~@Z4GznNNV*iZ6fw-JK zu-|Ix^!dJ955rX<6Tg=L|2(9lqEGD`rv@W{e|bI8Bs^Wg2|g7BpvCKg0&p|C#lJ0$ zzYfC;C`nI#+_}Z8?PM46j%UQuSmUauD5t9h55#=v3QFhN2={%?cbIW2XHDyJGk_@& zz7WPn9F67liC-tA&Mc=$sMIXqGja|_dc8pJ(=@C1yy9<;#j_GjIqb>;i@2RXu@O+uvy(O72_ZCD5hwRAWTkN@Ncp@%)+x6atwrrt7}A?D?YsFzM%g{j z7R6x!d-YiY{Reo6Xft}0{JSB5gqz(e#WmHUl2n9}rgt7jTF8hfx(pF9rj=_g*dL@DlOL$z+SAVuiRLd`(vWZa zmmQO~xWaDo!l4yz2wl#q>#eVDyk1brCc`90=6iQ6jC>(fXR%wh_8oyfS$FrQn9~|& zG<|*j=J2*P)tOw~;CT4Z{&r56Zp2^3+maOU{}t`J?9i0uK4*v)D}xv8(_J2d0t>=E z68u@2Nsm0*k|8OR8XY)*)#)b%m7(jde11BQ;oT1a9Z0_)*=6(ANwiUx09fj}zPKrcEJlHQ>T&lQFA$pIpyh__{J z{UHvzT}h<4ALIzt){7!d?^#Nuo9nGVX@&~m#Z$v%nV{f4+GGq8)`iUA(ahU$(dLtt<>yI-z zMINLNefq*Q^=EXz9Hy);)R$~je2Z)Ll_oOdE&YG}QpbN6Di}4mRv&ANBLihMp33A< zR(LBK8ssKoxXlE!P)fd_(-2D_ncbl@wBFjqHF*W?ORR)NM_#kqlk?_9Q~`DPG^)N^QXd4A zXXk1=_s!ffN4&g6x9eWG2S2rdr0d94jO~#If1ky?)Fi%yYS-LGk8ip6i>7NES?C=Q z4-eMB2KY_ask;xajb5Q1@@4XQl88Sv1P_bZFBW@EU@V;5Nc!iH)`X>FaEKahkW7!N zQ=h@&pn^W3(cqv{<*9=56OLX?e(bAH1KmF0p%P!?&od(Xp)$z|Wh~D8pho<$QXB&} zAH%76ivOjW@n1T8ZxZ$|Qfp=+&<9`swJ!J~@g&n)nD~8n9AFN?`m7efG0d+wXUkx$GZVRSJZq_k*)d3GB)!LuZ~R5Za#_ z{2Y#nM-Z1%j^IcwS#M0#zCo+ti9*T3Q8Ur3EXAw8V^-ExB2V?^{#YiWZ^8@RJA#^@ zDy$H#R4gRIneK1<0_7v_r7NoJXTR=6eb;Gj>6%ka24`S~s;j#Pz!gzk1G+vbjA$_9 zH?z91e*%NDWI=gg_8b}U3`vkPg)$sUnDImS(bPL2+^g|dRK$P(KY(g{F8&n&eIT2& z6MQapDd8NjFs?i^xh(fb=5!fquIp>SFP3eu7El&&+#;SHA#FHVu-fCi>60TjBql%k$d}fd-KqK~s(wI@y1s1&%G)7A*Cy(V|`Xu2p<4;4?FIn%JHIevTYDK~AE|JY{mJSJ*VzUa2xl z;T!Mmp}dO`^l7(7BNd~2HirZX{_dfao0^o?;Q5GRrIO+Q{v4{M-qU0Kz=Vz2WNh<i{duT zSiZ6G)u*Z-+BnDt8nM_Z;w=bx7Z=swCY~ADoE}Q@++eaT=*AeR-w}Iw=YgHQDT|P- z6Q_Dpeb_uVC*Ia7?tF-c^ch zoeq1e({fDY72#m~9{f6Tr|;}kFLJ@_0BX!c%_#VZs+DBgEW^`q7qHA1gUaU$DOHI7 zZ0D++Ck@Dy$Fe>hrJsn|=l;3_kA9G#ZMVow0ALpUc+^TyHOwiT)yccg%f-~#_VZOl zwM5X8d~iBfSQOHw?b2n%wBAD)^T(<7fR*)f5oCJfW=TJqS}~Jy-H%ZEk#qIiF!}7e z-NLd~ieKo76^?dtj>@Pc6(-KdhXlOdx3Qet9>eS93WW{yKwhZ7cT7-Jv25;x!E7>L z<3erIqDW8XbTnfZnR)C^WH;!{&8JI6x}{TQ~G_=$?>yUr8PYf;4}OmYZ` zqBcwt0W~b~S6rd7iR?v|Htf;{kO!Vi+rg6tEP1B$*uBJ?B#nPi&o&p)Md^bkJmdQl zbLQsfK+fuu#0xT+Xg%psmM!DL$)`F3KAvpTrVn3#2wH=_*;mLLxu?d!d4axNSZd6M zx1Lj!dch)*q!Mkj%KU#WZggpdxwJm$gy;6TV+{9ER*sK>AwWQ@wfey%W3P&cjj$N! z=2xghXGJB}g_YG&>T}leOV4M@+y~kte@AoN0@H~gu$RG7>^kd0u*UqIR@Pi0?K87R zV=?DIgQ~XgAC#f#ufZ07B24204Y!q&YWeF+hlwwm1Iq%nT(DVm+ow52EaK00J#$#+ zcRF8s25$lkcl^*V@Gm^nYWY<*4Ki+~8xT^nVosHgjca4bEZhR>9Dvb|LxPUSLnZ-x zoNr}sA=6W+6r0AGe9B1PY67BHP1Y{LLdd>!2#m~=Y2I57jOmJ@%<di%PXOqn@+hWM>2#<+%DLFY5Wup?KhclM066~Zts6S>I%D(oOEdg zx}a##Srr}Wv7z@rB`YmD@CkFr!aE4(94a9h=0m8sF^-rK zyTx@-tNT*8(}VGM@M{DMdR3TY4NKv@oEkDbUuv9^lTUi;j#3P-%BTo3f^OJ38Udiz zW#ixtb?M4AvTE5i^5pdb;SD$dxrnldbdCE@OuXB6{6;$Wm2>+pW(20i48PfgZ$lFY zm~#^@sDs(oKYWt29T5)Oh~9niirJ&)dJfgQ@f z+J4wc-n%&*TGm|+hfhZyr^3@;h~BtS;T{F3=;w~dDY-32+Eh83zsHL);jKZfd0&W6 z-zB;kE7^r3k8g1L?_y9QEM55vxb#Hz5$eWMWzv5o4-0`$#Am!nY%0_Nfk)}1Pq2d9 z>OmYm2)gXc6Jvj%=<>BNZ9y;G zxA+34bvtC6R&XX*J5KfUWm_KCIeC@`TaSF+g_E9V=1eUC9V>L-utWjnuvd+{9l`l@2enQju;4ZgPi zd3W)3kMo~uChk*wKvXnIV>#x@5d=x4dS!Qba+#-Z0rxr zt!m&15T~gnaRDSy0KJ?Eg#u|e%>sD&16lfiD08`>= zyAICgfpYyhr+LzozDsc_RJ6YO+>nbrki71Pt^6aPw z7lNqB__YTmgE!qA2un{_#usTP-n9fO?o+!nshR93{J*$&DCt3*aZ_p6!5@$m4HIH7 zH)ml0^LHhdlnS?XMjr#0(~M)gD4z*DoUV#!%nG3sr#~3GUzSjc$L20*;aQiJ@InW( zl*;1hYMHh4zt@EK7egX#D{N>Wo=RjpJU<1?8+2U@*-`#xMKr9*_-CTRor`FwjSLB< zrTT@!)h#Sa+7Y#NbmD-fT!l*~rBf3V(qJ%b5`{?UllWc8XQ7yZ-=@>(K99d7$=EN3 zK-5oUELcYTROjG^Qxciq=F)lG^OQry{owb@e4&vcRaEMMd9rv~%mpisF&lczd1Gln zBgcFHn3GZfjJ4x?Yzq>?is9EhV35PeWkL)Wnh`fBTwx5I{ z1dIh>UJy(iPhVOq2Mi!S5fvxEFU#%bZp}?yCw)(G!4yc0713brsT;7O3p`4<+dd-+ zyMeMP=y+gm5s^BE_-c++{e?gZ|=lg%q+)%ZA*kLbAnV3`W9eHLOsF$ z+=r#H8ayX_u;>2AR=48d`?kAhFQV?irSVAkiCAEtMJLPbwd3*A*H+fAc?MA=G=qy& zt;?5O?cX4^!uq4IqfxM@_Pb{#!1)5gjAFsHiUr_`sc5(=F#+q#OmtD#KF#dZ2i9U! z2;b69q{%BuB{F1edRj(NHVcoDbunYe_(S63Dk87WucFdcY*q9`ZrA}_>~%~bRQRP{ zrT+rd^UEw?00}@=c=s-Iwa**p>@3g5(VD9efYn4)QB@=7nMTgX&%%uMr(R!WY-*}> zKrG|6#8UM6a*6!y6RAg2_ps--$V^XCNtBZVn{fD<4xQj9HW-b4*Hc@aG5Ka!879{6 z;DjVrupL$dPcA%dhYJo8zB9w%kot2`+F3)=?G`${-Zbq5@dbVAbXRB-mO8NhCpS2W zJNZZ8{!~#H_M`RX-Q;S01SlJ)q(xVH zjK!w4qYmrATh{g77si&B)v7C2YGMZ(Pr_giOQ|_F0K+4{{>O2D0*P6+qKsn^0de8t_q

_?AxLmd>;Pa7v= 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

VA#I9 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℘(cP;y$5M8zBy(&m2ZvFMIe{IHwc=gUZ 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%0Av~VIu{GnGM37J5N`gQ#z`Fj9ue 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%0AKS_uK)n?#HB#+m0Hn`PbumNEP3lQ8I+XK}q5 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

XA_Sr?q<>cnA-G^b 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

# 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 literal 0 HcmV?d00001 diff --git a/img/clean-architecture2.png b/img/clean-architecture2.png new file mode 100644 index 0000000000000000000000000000000000000000..375efe591406d36ac4979a9eb44001522c809139 GIT binary patch literal 392710 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

9K;Hh6mciG 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 H+jQ}Iq_CmbLm_r`6$QpH%IhnEM2VHA-o31d9t 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�>*QKZyn|`t@3>L@bZf(0(mt)hC0AaXAVy zX%Q89Y|b0AY~r{(?Evh=k3YHxz@DiS@-CH_poR2}EbOt9-3F@^7<$|th%aGPGf9Np zJNZF-25|V#ZMV0>dmdwph|(?_G?`5SkX;ZsF!Yfn28L>2Xs0}r+Djnn$44%Co9n>u z*cJK#@KuRz#jIKH*ucTV?B$tn+K@pP+wmv#VhN=PP*h;kpL@o}-!m$BTP2K~eRAwQKt z@0ZMz6N%oRnwrh`63!W@(8xG#oNVMlxdjTVL0qO4Vk26xq|kEF;$&x6(^vUcl&6K| zF~u=-8UwsamSV83IHJ@qavV@!E8)80K~^W_wJHfMfbCM?9uthWKKR^5F!nClaDCh5 zkgm4=wwqfbHxpne9k23WBBJ}@S)~fVi)4M&BrZkbmXELbjY<3yfFb-TpvPFr-D}#$By|A;na=)S1!%hGIOa-ZeYX>{l#WM9i+4Z_Kc(hhA(~ zJ}}l&)&dl!2VfQJagyA|EB!hFLk&O@Jef$K!cV`kdoI4*4sYGsy8ml;YfLnE+^e`p z_aUgbSDn!ZXxSKYu1CBl93GN6_rc48(_=wpHc<=O#7+3O`?|z?|udgEiVgzm64AechVRr{Xq01gkNpdiqF@g!S9R&UdI5Q@*q$`=2RRdV&b3wl&C$jDTw zB25$RU>lea8jNgjOEo#<66PEv1!Uzj6hmuA={Jx;f72Xwa{ha7Dwxp|Zg z5KOhjj#5G>#Yz|-hgA4lEWgSw`ljQ5AP3bnjv}`tg0{u`=F?B?$te%n!XLh~8?U+A z;~Pql`nbz%(kGfeVND+OR~ax20$40WqiA#>Npq-kEf-(d|1$e-{z5z9)YGl`hMQQS z&?3t$B>==M*4dFOE(k)n8ajX)lF#Z03{}Q7x1&QG0|-^lR63NFl=2aJ4?XdqJvrkM zJNMdwmfa-Rma_ANj7i1bYid&2Q_y;*vkozT&IfjF&r@u|pv$fG7A-78wr#S3BUQTA z2*Y_1g<-;bGc^xOQ7(=AzPdkuoB{&cY)8vZS9zEz%(5v@K4UF+-o?&5?_72cl5LR& z*c}ru+q@X4+9CVev{PG(%cu-$E z?X(lgN4qWX7wudc%f0#eOYEDkf3TZw8f{aiJY^egw4PmX!FhJzfo%~FT6)E@6_6(F zlgh6hRTO*8-vK}Rk_@0QpDifs)o;N2S(c0j2hl`8G1Hf31)iiqlr|A=hEJ8kHg%er zt6T_fcIgoKN{^PUmo8mmIqb)(=d|avI=jSMi2nvqXX!h|^Aeqdm$iOZ-O9`G<;O!? zfV8-H5$z-g6zy0;J<#ZA$+#ThsQtth$)}ut=wKf>QCOZfL7|RH1oDL9`)=&!% znennZc6+{?1@b4fZ`>B~k;|THwqJbhj~`X$0N2PzecSst&&MM&)X{Dl?7xAfA(~U} zR!ENQY+~oJEY$bxbF3(TksS#zY`Mjzcu%nnB1ZU?crqtcc4@tMCYJXCg;l^%RZ*L+ zTowL!WmmU5#dESzh1L~mXv{gfCQN1`IH57PusjU)Kym1%X&YLLiHCsUlBMPL)I0Cn z>DS$Crwkcv8|~84($}eH#lAhO;*H8%oR&q=p(a(B7xii-k=q^Rm7m7)TBELypj<^i+=jiUc|)a(a96-d5-c{rWt5Pji0&~O|XK}CNZrtU|69FYpsMN!5e=U zIMh&ei29OHClHy-wYRQP3f-vxAU5$Yu!!-4)ieJchAP_6o zlj8H+uRgQ!lg8P%#oyae=bmVpYh?q1m%X{loRZoDSX1EeDn&zpix{XpDFkF##M-RY&ki!^|WxdZk-|DU1 z*!o;_fo<~7E$BlU3`A+gk5o^K#h*B`<|p*46?y;f=c6G+pEz%63~6@uy`xx##w_{SRnM-la?) zmvAot$w4O?YXHalb3ejH?^%26?RU^T7U9gYx$TRM&Mv#`Xib`|1z?k1o}h-=d<^pM z8vlTO`sr8puYa|(P8~aW47aJ%rr{Vf#RYGtPMxgVq1_O`nfC0nPumMGykPIlnPa(Z zY`-sifFIJWqpj1pv6Y~?%y7*mOVccgXSuy$iY;E8Z%;k-G~0f@ZeM-*4f3zjHr#MS z+kLm)Z6BU*+_)Z8Dh7CB)0oxJ781(m-uoV~cmMOgopsh3)}lpY;RE=+aAV)@ncLlHvGp1*12;>+iTC=GZ7?I+G!`9V!O9$X_uaN zwiU56RDv*8T2@nROMwp87)CrB#sabruMPRfuk`o+js8HK<$<9zd0IcN#NwX*wBl5o=}28tT4+OmY)VxvvnBe{$je>tE~*R`Y~rqrY{2m>`?&=>}-p_9me zK5;KQbLtAajT^M4Y1vKYt}3qKY5(h-(qb$@aQg9o=InQvPf~9?B-o{ z*$s?|cX#L)O50TJc@C zc>_E4m>za?&+eSB4GpxsnPM|vebt5x9%*yu&a+`dhgye@9qitF?zOw`z8moMnG`Oz z^UhmZk0Xyj9+leU$&>Bv*&kXlN?8521%3I1Tes;m0jf$iJdGtazW_uO~Cz541qXyTZdQr`m( z*wHS(yuWR-@rF#UHF#*WQG2K_>Jzt-+Asca`lnOS2I?{Gdc-1nB=pGBL7|rIvCm}U zSdNxfZ`Fdg+lA6@<*YKK0H*t%bFTgJ^%r*Hk%!xkTWx{xUrK;tg0HjmFRiDvg@W?> z=VL)!1?9Lh#sAawUCkb#KL=pQxR{2<8JasV1jSWKV@RtcSdy%u?Pb~^CkJN(CSI~t zefPVC)~o+;+oAJ8wtdHaEN`P`W)0ASGY$(x3ZXhg0%jf6X!TTR<`*rPP`D_JR+mz5*EZCKgC26B@(U<$N;Smy-Kk zd^}n}z$_X-#aj#D5FMvyk%DRet+(2a4e2xOtFOPZ>C>OJ4K{3Qz0W+wjydKC-lLM1*yE2s zW0&vS z*_&^@Z>@G*&u+bSq;0)rOP1&InGiLw#Q?k~pLoi~veoBHGv@Mq1KVMTR<_PM>@Wen z=FWZJX3UuFp!LR)7hBhZ+grni^$-;m0K(TP%M}3A@9p+6gREo6w$^xUz%0Y@`|p2X zgRZ#B9(-^H+Qh?ncWawOy}!bdW7ADGvIY(6*{pxhvUwl>XoCixX+3-Pz@xc7?~Fj9 zz*<$?gkiF}{Z#8en*O0ArsK|8L+O58BUYw|DBczpb~!mX?K9y_mis zXy`qg+tt4ESk_UgCNOlT6g79PB#kZ9nSYf<3H$1edG`EmQ|w>6wzH#7KhYK}p&nXl zSHY{w9|{{JU#%6~sU=|OJp(zdxXnKKQ8{U&6zrB8pf&#w{rRL`N83!C^0wG?!>AEx zZwH9fEy;9WWxy~lcf5@3F}S!`R8&O671*(-o?$I_+Qm*e<1Advv6<08hAofU653R0 z3@H#-&;mdS2?>`yTnWw$oYZ1cSpqO*2$W73PAt{rnd=pUmb>Vv{nH8FW;JN&)+fL4&P);>(y=_25otb20JIwM;b#p znuHmg>I|X0$4bm_!{0KA4mHzn(P8;}biYK3gmspE_|*bC?)1JkV8}(*?Z`v%=%;TH zmPNKF5|~il@AnR)hR`ec#JPr?xVAzm%B-sWl&d}hAbM|nzC1Ae4;n*&;Vb{Peixl! z7hHH2PiSj2c|?Y!t^HC{h}{R!C}Y`cE=$Dy`t`G!FVD65Oq==?8p>V-E{LXJNS_Oc?WJK zXx83Gvw7XMx7vgWkJ|2gZ0Ue2Cok7Jbm(A59&w~ETaOtthNbsg0fp_XfB%bET3!!1 zBcY`Bh}$G?ebIVlCS}zcLxDbl!|LT^-r-t9y_5Uc-6R#+E-&mfoKGrIpC%Nv8y+s9 zod)&0#Qr_wCA<0RAy%LI)^ETrJ~#r&5yj=J%msLZM27QhG#&(oiMdAg`5Pq&Q>`%! zHiixi0Yh3!R@*{ynnXYX`U@B``H<;_wp{#vNrg>#>UEno`#-i5VUf1juZ`t3S=aI_ zpgT{eqonbfza9%zcjD@|YKJ7y2h!%@zv$@@A@j{s->h-$=pLuBx)$pQQs?MUraw~l*eWO@653?PB_l)zVmk5 z9dj6!wv+(RX;HL+WS4%G0mE2J7$2PoR8GsuGgtzq}orQF_Xsd!3p=;;9>pj znwbw-MMG@uA|b73S5|N1FRYb60`M7@3tzwc;6pb3w$XNN?^CVidd(~crj`M@h*C`- z?A~IfMJ!Ber|D{iTEBj&Qzl$yk{~-g7v{R6pY%uc)6y!2$)E$|G$LBIB_N5P5qyKL zzs(x1+uV*lu9y9DYitW;Q;6NFyk+%#br=-oUGt;-mGmNinScB9f8uAWdTNxP06_o+ zL0cpbT$Yq8a_p5?X4_T6Zv;5av`a2I!+Q5Vo|u6OGebBU`iz9V=#YZlP{?JC;%hp=DbeCzT4j_~QO(=Oz>Kq`6&r<>i2;Htr~*iDfx!U^8EO z)h@ksfX({^ulajM6B}_?w27(q%(E}qRYS)BHfN!|VtIG7T$ZWNvV%HzWeK*iT}>Hp zxc(N~Y_m;l=&;MI_0HR32S|BntLI*r0RS7$^6qCgeE4uX?C{Pk5og#Z^FFp~uN}#I z9z#<|*r4Gjd=-aQfmfLSc)1XzD>`{K)L+whR?Mb^XLZ@u=m-8=Sf>6ESi1%0eI|0lx&2SKX!cO8Xrc#bklOH?Va zOa3W;cT*InH*FwQDwJ{R`zf?iikid6B7N6yTvRlJlFBTb_3l@8H2tc_umQI5zPnpW z{d$(3DbIO$wG10x?BCS3n$&AjQy$6fRJ2@b3BA7d#xDV0md{Z-2ux)X8SU!hF0hsx zZEHiWzuuP6AIeKrK$SftCljacr7YS+^oV{=@`0BNBSiGo%YDA16AGFRe}6geLmP%! z$jL_^h39@(-xWnpS*{$@ZG568)>HrUw90^?G==VH0^pOjP~Vkw?cu3U*!_<@WvzGH z%eo$RFvg;UaX^}LPyv1OEO8r>!PG0h|yFmR=fPD?_M|sl&0yAyaMK*ymr81>{Bb>2^oT_h44P#Pk+W#emX-E}vxS+9Ly z7hlxRX5$cY;)z|Y-=%$6Zq_a#%7@7by!PI^A7P_7+@5&ib-QZVg~Uxfj%CVBoAv73 zHt>p3_5{u$JG5?UC!KPb9eP-2tC!b^0VR*+>-+5X(RbN~8?A36t{q^TZrU8p7j~O0 z`@DzK#5E&E*`)hs*wCQ^?DXEpFo;&#V^gQHTgg!S?2{ktoZ?&dPo7w2w2LlZML5*=lqr6W&HOnsOJJ3G=><7Dl(jB&M+ikGFL{=oS z?V}IBp}aTQq=`@9X`P_H-K_UnJ!}J(y33$badE0WHsu*R_0+z$=U%M=(iZ||w}R%< z-YYslh*9UDuxiic&@cJ17Lp`6AP=4?T2g6ujJm@n-F?4}V`;uwBWz>~=37=IV1vyZ z{3DrxEGbW+KJae}8s!l3suqgBhQCsN;@|vGXnP;i+d2$9+qP%dWhNKB0-Uw4Uxt z;|28bnX>>4ku$Z3A0+48lN_E-iI%)I;qxLPMpKdJ-+%Q0sX$i0nO!?%kagO3A3L6v zha3g9rVX?jDJdCA^P~}fl>tMQSYXg&?nF)~aV>7WW1PJ*`vco`@3z(!PeW-8i(O+# zphr~R(kco^YW#B66D6D=(M8W(zxc0lwn;mxTrRhGy)=d@UaT<;j3@05J5vxc$`eZE&$6t=g*FRq;cNGdw;2zNw~XQf4@Kd) zLu(mM9}P;hX&o@EL3VLW46MY%61olx)oJ*S;2>Oz0=^4Gm$PJ_mPIHNB*)JS7u(e7 zFWA%>ui8z}e&fwHXVwf~p-C($UX1-3gQ&-`i-DQ)5AX1!q>ndHcn?3WK&n~(-vfpM zBobfn3R<5OmWN-S`Log;xPlX8~k-Sxzq7cCme;0$6K*Q#mpy6iZqv`-v0N zRNl!K0RSI*=tZ`QYlCCPb$IkPvB?vkWQqAwmYehK3W8-HbLU+EK`rB>vt&i9lXY{fQFFMn;p5vJS4jVQS z0iK7w;&2>9_TzryGbY#pNPQguH|hST?UIYGx901vXE%=;Y}>cm7z%~Z!jC*O0~^CD zy}tKPywmn+yDi#F(K#K*l+SJOz?-l!eAaf_c@rCU)g`vq-rG`7@ldW6EUmDK_djB1 zpLH2~PPb%tnE?a_|0ll(U>NRGThLbVR)SSdDO^r^f|7*fNlhpWPo~E;yoLe2Q@eew zOZ&Z8Qbs4mjxruHMFYIdQ6gZdfX*&)eLz*6>e8R3fPmrB;!JCEWG~zP#2&U)hXbtX zrklYU^gs5DOBVnUKqTW7fT7|XRQR>k4;V^Z=9Hw`ZGDDVldQGv?7kOUUIT1%BPX0# z%C4TkFpAbe9hL`%3x538MqN9?wrH`Qopb6b)~EqC!+#ZED29!fl4Ir-SR6R?YWwP! zCARN@9c@SU0xSj$mPthofGoqR+%=4}Xgs9BnPE)Ri4SUguSLYKB6u+Ehy?Pz${X~E+gpyGiwe-wD z#DJ8-Qu6Oz1Lpz z`mOK!O>54qk18@p0Al&U zHx9HltMlx|mq%H%7LELwc<{4leU0D8d(lIjZWnes9X-oyZKvvR5U6j&D%m=e?H_-9 ztX+To?RM<32lMRQUcFra=|A7kCHY{_zaW!ww);@D?w*xzizc#+7?NaOuq;hie>~SeE?9zp>{4c_qT^FY5}NjS$k`8R$rfe3)gp^TN?k_A80GR}_Ux_qTP!=p z&b#0u+p}IH=!eQ3aM(oV$`UY?TFu(!zu4F(9<%(FD{x!W%c@ta=1b~-1;;RX6eNq1 zyIym>6{J_d%|<(`hqYfmovRAVbXy!odH4_UUw9QQ)4(i#P@2Gyim6=uch@wkXUH)O zbPTcm!Z+LJpU$z@UK(f1i`H11o4Qy&$6T@Zb*@E&K>b~pbt_BWVOx(ue^p$w>M-RfhJkl2aNq$%3 zSc|mM=e`4ei76FF)`Jp}OKB|AUVU}4i<0N!g5jS-2Vh{)(hV%cpO8Lc2o~b(wxSr9 zQ_&3%TuwQrAJo$bo2I>IGEcm^Gcrc`!azMK2rW^!gd z^6`7DNt1&dIOZd!&&7qpqmPb)<9M$f(YPVy8)iH1Sjq0bdl+DMwCz=YSCb(~1I__1 z#5zC5Nk1~MS+g$JCcOTh4H`HCUx*d#!G{K0qkZd8XO0BqIMC;webajNyv0_oh;#bO zC~MlR5lxC~3Y=KKJ@o_YebW&8Ge2gNMm%e47B07w zPHJt3K8s6@40S|Ce zNu!6YDoRcs2+6?kjB`6!^|}qL%{k}Wj@5St5JKW$lg1&;0mo4KBTl}8F{p$X2ip=b zq%a_W;uqw{SP@#WvlL6t+X01`gmLD z8s1R5@Ld}Ro)w^fTNp{VjEYrl*2kaQ_%|k58jg>9-`da8ve028PGLNk=(IO!1ZVnc z(Nub22#6>V!W)Tea-82h`jzuGbg9ao3mm!XxX_sHt)mE)uWBqUG zX`MS=;PuyX=3;qVbG(D0$e=;D+rsY`+9MC&j|K9FFo3xSy}~Mh#JjPQK86h-N81_T(7EL49P>9DKswYGE?k5$&4Y-A_kreZzzCzr zCcO5p-O#fi*3qls7(Rxmct3z0j)_t$*c%fj+4bG~%2^cQ_ zX|eU{-rZ{LT*cZ0{&%XB<-pL3sp5M8lsKT}M<{tnJlTHv&s#w3i48d1ed?`uY}6-n zZ0{3}w}V=?w2Z2iEt)PZLTxA##t{HR&EcYAU>I@?OB$MNT0dE;3sXoUnTapMS*Tfj zKWDBTcHohA&ROT9UcrWpF_Kt@wn1P>t3ta&N8F((Sv(g3!`!v_2Y!Esjl5@=jeY!a ztF!xV5FqFeG+w8sm2~U>Ex=G680`2|w?b=n!bx^mi<9iE4*0#}Bmt496cp|AX&pV6 zC|Nh1^o2x$A0j7?_!Zwd6ajJEbjXzKFBL;;x;Ta^YFr2r;#Cgu-uPEuun7~#+x{&M zwT7)4TS11H@(866Nk!xmAgE!<7I-V<7C{FrqbS`bKQYP{zctCOJ^d6r_Q(S)XX#=X zM(B#+M@~C^g+j#YPGrK7FM{r1NWK0)8Z=OR{BkWG!WuVvpmqVI(2kKT92{rEg+*^I zg7xXs<6gmVYohfXz|n(P63W0M4yVvDp-$3)W2+ZOI>i6=mFF zu{mwpOss&1a8k=>HuUb^*0CeN(OtjbmIi(37oLC3`t`eu_j7I3QxDrwO&h}veGNfVDiaISYu~`e^eWnclv z?Z}jgZ`#1V{cXsA8?AornikVq;B-UdNgpEn9N{~gh@eg-Ui31bp;n>%c$&?a|Gjm4 zaD*Mus+Aql<}^#icq>{CX`SS*%rWN~3aRjM*EEjOw=G~OBa}>-6kkoAX`f7)Y4vOE zZCx+vX6xbX3mCFgd2ms(szn`~^p+}q2yl!<;m*mVT;cK<07GyP=e5uK>=V18Ygc>Y zg%@n^z4oLZV4R6UmUUnl0>WfHL%Aq8=!hoP>f8(M?2es%z)6JT`i1UmiT#YMF||2V zM}~n8-j;x2xUP#{Y0&vxqO1i8V3>uI%2A`Aut`(juoKU1Wp$hFXX~T5reH9{bt(V~ z)n%2iMVW0`ETGQ}zRT9m{JL&0a1B7A4}9GMU~fPq8cENxRh)79^z-9wDlS&um@<+10w)NLk_Ulpj4FKXXI#ZG zMv4B$;4ASkh+q6ynf%$HcSUu>PneeKAkHO6adB*)7MMJAB-1bknfTUJbOdh&^ewhl ztq;Y$%0*V2quk1Aa|mTDL^pNGlBM?PXJ6P;PmZzKv*+SeI^DW;yMmKKPPghi?MMsd z05r*~Fw>rV>S+MxaObjh?$pN4J+Hl0-+5PC!D&3tJTn&Y>a)&??1gW$P8Xa{sdO%J zo=uoA1_G@0$ypCU2zfhK2?R@e3b7@lg4&uC|vyHvB(@)&?J*5%kB0ESwpBu3T^ z&FyUi7#8r47>1P>J=+$6p@UZzD(McY zd~V$j$FMRJ?C#;iZ0d}+?6RA?TWq(AhATIZC1rFiFdJ*tVya+%M69n0jxJ^I*h@O(Qkq$xsRs9yI$lvwz*2v5g^j)5JfKjguitSgGb^=cn$CCy}ufg z(@ZW$@Lk;=iO6kB)MjzE@9^RG1KMW5x#NH|oW1*TT}pzFE;{)rpJOrCbIeN}&8=3=op~xg(+2lk5Q|o}pMMrGd&C|cIU1u4P7J67=ZU!}Pe1E$;#*~hsGZ-T zJs|FCtAzMHKc4MiY2t*b=<40eDJDMvqAs-V*InsGFajvKINSg73v~Gg4Y5~VnTe(E z={V)?OL+sG%{-jUe);8m3_bec2k}dcNZ|aP(FW0O1+0$8*>J3&XV0F8;R-Vx12kMu zI;PRFb^54|Iruc(vt9)o@xV}bu&uLCXS_cfF5}gRi`Q{7%cHK>C-_RVw0eCv=9stU%tU!8ZpMAD{+5x{|H;Yy1)<3*j9mIK;zjO0c=F>CGr-=5jd0{ zXAGAaifMdbJ{dJ_yC=36~xn~D(ZFjTP5=6ZwH3i+1a-5A%|I)>u$6&IJ!x| zP#k~=gHc3Rz)&X+z|aoX%S5%eDPX7$Ow0*q1yg<*T}aFwkBQV3+74MU8!+fLn?4J% z)v#NwXvcIbz%N;$i=;H5l|Ukq66xBllZnb5lZWWB#Y|8fW#Cus<%Jv4TLr4l(I^Mc1%A{PJ*A9!rE zef-rt>)E@X9eC)$Jizy#A1|mzOnOg0JtWfk-53kUT=+bU|7WgYT6#B3FDy&2BbV-= zTu=!Z=D_`2y!co9>Bl8-$fhEy{m4G~zj?NDWiS?G$zQMD4v2&sA}(#t_qwjXSC!-4 z#IX~%PsS9^@jw(7i)O)L{F$_-V6ZX4-kdPY0b$juQET4(2x|=|q)C$_tY)oU;0SUW zk8?sIw&=$n?Z%!15l8=M7k4=y@OU=qt1eLtIdbj$g+JOrj8%9;Wjb>|2x_-TVZ`}k;EzJ}A(Sc^D3DJU)F z*E>>c3dt1?SK9jV3;gQUi|aVcI?Tmtn)QJtkqd(aLyOpgbj3{+@hu8DhDp^8)=>aS zqBYd6#XpkbmBiPu6IGND7^ZSlu4+PHScTns&)&W4qtD;BfluCNxtVdxkHMsem`j(6 z!t*J~uH8BU@(C zL@$0X{P~C1u+7_snz?-p_f zZ;l^9R}sHo2OoSO&yh%AoRgU$uB9||@+^B@jxGFd31#@v8e%w7yUuO^!u5!5Ih>x2 zOHK}A91KL}emmD1HfmsX_t*o5RSv)eqbh2W!`Z$9k8-ZvwCPb+qk0YU3A`yt?{E>u zHLF*z2IQ@vJlO!h44hH#X7%gu?V{oN^S=X>euq_Z1I|(20Z>_vlU&x|$a=2pJstpe zAS;U#Qvg6})_imj=g(U}nHE~(#)sqNIukA$-OmO~K&cR}vRdXdMDPn1EU-h_IPA1j zRpuiLj{uYs@dZ)e`RJz;P_CsGqzk$Zol#kl(}yq&DwIc6ASc(3!@un*$2GHdty*$! zY{W9?_grxfWz;4PRvy4G#z;_gwue8}0`dS-lv&BT^uEoOWoFqPEswX|8y{j-YFB6b zg!&4piq@m$$v5P8&Y=@n)W%E$D7ep;QV9-SwLzdB8IcSVIeZws-wktD*-N8dv{lUE zVqnNP(K;Q_jl@Us}B+hyULS3`NAh!nfFk zoRi$)%4_X-cJ$e}YLGQ@1aV3rau&xapj*im*BUC0TmoPRI(@%eSW9M%D%*r@1t)qi z;1V28l`mf$L%>i4#2r0)UuU1;!*I~32W(vg3q_ zTilT`Mv?q_(w^^p_>oO{f0os*-@vZvb+dz{m`;H3-Fui$NnR6W_AFKK@RM8yQLtbM zaos)Y7-tORvH8>Z$i!Whj1TmC14bYs@R{W@V3cBek3p|VKm|84-RWR}n3UK}t8z=JC&%Vg21IF(38{Y7=lBi%ITe5D}uSWkYLzR49> z)J9j}OwthPPDjxT6lj+2V4Q`Gtt0?fPJ~q^_@RJ6Jx?Pq6-J`*2u3Cja7iOwI=twU z%2+1wY`}(^({WFKVZEKutg#)^2p^JhXeO?LbmU_ZZb-yBaRZ4&bxN@sWj1TAVezyq8~osC zo4stMRc&&(H9E0{Rjpf-trI%%qDlPKCXNOVfT6gEY(}>QV5o-IJYhkxbd1JgaN-~8 zd#A1W{1+QH@>#Z$7}$U*3YdGU>qcNm9XurTCKJC(_M$P&hk|XEV+ie&re}QJ8f$;* zsWz~8Z~Mn_$DuxgF`K%DPvTNy#r|7>VY05_^y$;B|KL0AoJ+5?CdVDmu8{_CN=-*` zb;U{=Ozo!1he4gY?Epi_d9eLJ-;P1YN6a#T#Sj?6D!`Fz>hE^|3##0@1Y%W> z?0=GH%f`EZ&$mQbJ#m#Z{3Pe5dL`e%bOH_>@iKloD=0|*l%OpgWF z0`Mzh9=4ZKQo=zb0la`x1jZ{7>7NOBv4{zn34G{zem?qzB%GQGfC4n-V-VvydT=#^ zV+55U<&+T*@$)!sMgS`XP$p0rW+in~<^$5&t` z;I0I9Q$3_7C$~2-jEjO(YT#r7d;~fLBt0*uiOL%wigAj-a+)l%m6z&B84CrN+!`Iw zEda@V<*D`y;!tkVBu)Eq($;|nF}b6uzQ~M-Ul`UHywxX zzmHvn&&KtumRcHhkSB+NY`Ep(96Crz)TJ~lQYQ1J-RS;Yz|=FZzH6_3`jurKyuTgN z=47i}hvOf4<_16hHyCTqG2DiLVIYx6&`r=%8uN6_kOyt$>>q8!;QKATa@9?Np{nd- zUvpVOG%0yv1b0j3FNOIHFcjeP56!J@5|kg^$+dQ6#|!L&GtaU!Pit+JaX|iG0Sv=N z4uPRW#pB11x5uA(&e~mcsU39W(QrSs`_@7UdWKjzJ%n&>^T1H^h5i*V6xUG3$jQKP z6(aL{AG*hWi7&IuZ|PwhiZ~Osyq0t6N@*V!Ot`R(%F0#CdIqOBym{YamjCTMyXfe~ zcFaC?(Sc_{MQ5mpMKeWiKcw72-0i?{Gd&9^EZhVb%AtFL$T5!8ZmjHD32i+Kd)Mwa zSnURT*}$PgQB@F^N-Ed6#1fGUiCcKxOnzJamhw{nDhRNt(BUU2hwzBX7KoD-S5PhB zkST`7e?EpDN+*W6Tz859M*=k{921>QhT6yzawy0%&6zM?paHk6`Cb6GDi8}RGjSZ@FQC)upi=d5BBXpIrj<(|`Q{X-5n2V8&)qRm z7jf}Kvs~{D9mb%10l3tn6G6dW^%4+u!0TdNHH<#etyA?-GDmMwdWOM$-DO#JfTy}p zM%o|+?gwA^03ZRp;z9%EzxdLgdhRL9u8?o%L)_xH z7s*5X7Z;LL{rscRQMN(|3`h03-Krt7yW#Xxt=JK=Eg)Cma zXlk)5TUFm`r4?8XK8zJ~rUFnXr|z_fJ__RgaQXDxZ|vbwW9*P)j<(CL>!AnEb(W|> zJIf&Gosw)#^bnFJp~LMJaLQn1*(If`KIy#>;QH0`BLavl5^(eUbf5eHE;^^#0jPkB12EKMsK0X% zImtt3offAd@S6a-1qHdhC+=X5(?7E0HzI6bl$Ep`m;-1fPNiNE-i;UF`bykSjRMN6 zMK0=`SGc2a7sU+~6c?u_K-*j?qj!SmtGeq`3PA$`sX`HA_Y|=L;UKREoR>?h!gs{W zsOI$ScD3cNU2f-|(bD$X9pj-~#Qx&m0vxqhNO9%vu+K`N4rMw^ZM5J>p_}*B{N;A@ z$S18}pZeD9!uFO?V+Si&u@be@y!j(wsCL)559b(POEd)iuDO}Yn8;_2#ZuGlttVfy zrPJoxtp7GlQa~+BUtHb@1j#rBudtF`r@OH z?73H;Gpmtq?JhsxJ<6}iUCr6v)KiOsmwsdWd3FAt;ufd6F*n@`a#U$I7dCe{=uO;= zh^Ox9=&?hk`mi=DVPu44%MCvaE8BI;s8aS&M$NIYQcmqe{M zSG#|e?{90qC2=>G*YEEIDiH#QY6k#~a|;U0oC>dlGLfFPU|GX_&vcyisQ0vI% z&7j9=er9hv1WyDc2r6@Oxs$&qqWnjfFui{lS?Pz1f}=HlhXglK7WH=msKf=-ch<#m*&wLbTP((-id;)JlU?$^%S)xwQRPmjqsd5SQY23pVgnJ<%AG86z zBF-mVFqOw$Z#lP;xd2BU{$zq%sY0u*(g2j%&^~;w0d}J-*1`QyEUY*Jr-)Gt)+YcY zx45S=#mOtwHH-rw1MaBO5CE6v9>Lp>wxQkuM^^2wptMUPC||go=tD-*R6^%P@i!gN zhb1*2{+Xwqv=82yZ2Rt2%g#o`nL=F5n0br7@TTKWX%)XTnry4)$yi{M5Xr1)ix#i7 zD+Uj>JRB&WaPfr}!z#IAwH=uk!T5~(*bzNvli>{?ZnU()_tCXgOZJ~7=Bxz(Av(9> zB8$|(jF|fLE4JkAZ|uC2&#^}8h5HKwL0i<%NfX*?bI3jN< zaa3z5hHLk69B38vpu1ku#dgQ(dmJ#VjcG}jd<%eK*uW~{#wAK^9uzu3hsG#Dj1fl68cg7TAyRb>{isMJO=eqg=Dg8o?ZUq+FLY-~OWDF(%_i?Q18Eb+D=-#82>>t&i{1a^ult(29 zY9A7ejjf{idY-r{T7qEe?v@50KM8;l)i@A{QgEuk7@-Xd02XmT;N{(~wuC98X94GmE z7+-}+il@f&XyF1Cz7t**KMcuf=$_*6@dZM^lgp4CH~b!^8D7KtdN)i**Wjn_1|f07 zqw~D@b&YvG#W(aoAKg<3(+}?#zZg6&exCSQd3jB+HL~Sk>+V^s_U?E071N-(eTfY`s8;Jai(BDpR*EOYC2bH&s1`P!`;&JFr zPI`Ge{i^P^wpw*N2dC_D9I{sffJj}T2pXr;L$qRPvm{`sQ)+^BYvbBg8m%A$u$VSq z3KUOT*E3&z+rFFpi5+)n3p=^ZnW(8zVrNnyjUbL{5oi9Tz;O%kMd^&6O>$MaxS_IX zO6aQRpdpI`49ARo#8&_Mi*@BNfc@~GAPGb&_$Y|QrG&zN4h*HcqAIY!X(9EB1$Vq+ zn(#%4h;*Wfx~%~5Kmje#^Ts}~cw=^AyR)qhyA*Yh{F`ND=)?v(PV8Y2aky5NP`$S} z8>S69G3=xgz)ytLyLLYGL%e^*89hEwba1EVTNc#jau=bNckzbilJ|+yWgf88&0zhb?FUMuw^me<%P92G)lL{iF*yCRCr!6+CeF6Q8XRh8p4$-)JA@5O8cAi` zIF!uu;ZO(|`mozth1tS%ipecsL~)(!`pw{nMz!F$)F+-D^`!l@V4hudX%{ z#zv)P^C#DyEi7tr^#2C{0RR6c({2a=06+jqL_t*SodtkZ)z-(?+L{va9 zKtKf%1yR8O#TFZVb}M!l*7MmdKI2)~ii+K>Peq@B7$^b*(=&Iz-+%3MX6}rjf-uPE zY`Al3pB-!0f3G@O)dc$^p}LA#S^UqkYL4+s+|gY^+N_E=$t33qtKzbP-(g1_ZTYR* z+K?Sa+e)2RwKOl5mseSCPSPrguIv*D(u))HwElX3s;F@`IX3t0gI@*SGS>28~c&w$1W?6o^!m=tWi2)(f zimyb{mQF$-j#QlkeIcDq-SwQt*3G3AYC0IT_3Eo_RG7MbS#%1;~?9*;by&vG+gw!p5I_ft_;ZsWxQzR>V$QMMa@yXXpBPRB+DY zveZBFs3z2>bsRU2Q2+Vw-H)F)9vdmJuoR&GN3Sr$aHhV;uUeCa)(d`FxpwIV7ud5; zJ#8l+eS~#x-`293Lvyk!d8WAZU!P=%-WV2+0?@9SIoeX$mTuL;c0X>seN~-fL-yX= z3RY@o9oFdVG-f4co=QS$=5Z_aStgavf%e=>q`AMKIb-39vuLpsUY;~-PJ(`ro6NTl zUwqR(eE1dXvO*Wz_rQNxWhHg2N-)P}S&E{nr&T1FeUsdeJK&;a{-@p|ckk}1fGFrx z^qb)#jDl)QmzCH<_uge6zx$3IKJEbP)4RJ>Q{SX8)t^{@l>Nd6@IcLq`P=Ug2#{Q$E*K5j@Ni>q`=~)fPkU;pFhJeE-9(mmEo;cAqUca|(GkBooRFzt`RWQF)`3AKS7%pPF2viFkCfTI7Y;K2~ zeW86Yx573UG1A&~UmalBi5;uf1egK80)}i#X{V(R3{?kaZmmiD6EK|m#)tOagD+Uy z+%|T^u_wW3B2MM92@Dfr7F3kkQx896FFiZij{L_s8_=gW^{HYFX6;(0fuVo`fI=KY zEjuOUY1?U+-K=-NO>E%SBdqlb?ExENELK~RjwtY``c}s$i`efQ;Pz8}}A=8@Y$ok;-|NF7tW5>*R1Hg2 zJ5Hq+a|}I~r3ws10d~F7;-s1f9tISssW=5za59BSGCXv+Of-OPc<9j<=8uxBUJx)$ zq^u$<+vc*{J?*@UtXuD1w##07So@AE0168Mh53vRcJIXdbzxNsRlp0aizw8;j_=2n zo!|5LSsb_V*hqoJMS&O?YGu#{M?d;t1~9B(t(f-pH+IuC*V*hJf3UMpI>r*E^Wgk2 zpHv~8Q2%e>#c^@feyOLU;f_?IigmWCX;VAps_X6b8HLtm;6PigUvF#QWfiz;0)<+) z1IMsB;ut2XbD78g3c!%=qP0}`g6@+_Vr0JO_r=0K=p>hE!Rw zVp-uB3K(XA83YO+xcg2!=I}#p@Wy>D3(;#9SgE1={^I2rM!-;_Lsg`>tjdOOJJPls zv4ag5wzV~H)7pVyi~|J-lPSOxGG~b{|H`2bFw~p|9&%A~3Q=-i(k?pp4EtvGG}~y* zP+O_zYV_SI=M+{{!TNTNVc=86%dd`pPFmrp(VG#XNwDT_{320m?qx*(tDtdIP-g^c=7Z2nE7twc_RfD2L%=c4Atkfu@vZIb2NL7-SDq#?C}R5vb%1&+JRwq zx}4{lPly}MiCi>>g`t3kKHS1eBz08Dx%du+&UbfDV0oHEyl@VMB5Y8VM z`uwiBeW{9)=>_16Y&Hl1AZFVSpL}EQ+&9JMO`l`uUveeDkn#%{(pQqySyQZlp~0Yu zmZXKD+G30AGppKw6CL!cnRdC*%$~)%kW5$FJFmTB*I#voop96H^rb7$50)@J4tkmJ4}3!+o99wgqz-h zbWX^O6YkV~9^ae)QD7)eO)1r0#qk9U)9Rdnl)$csM^;{8`FRC4`R3cK^3`{2hu-Vj zmV-9}7|uc05@0A6H-pi;wpWgZk2r=(HvmHj<-ky#A}&LmYr`BJ3Q9ym9aZxf80r|P z7?&%ijR0E!hVeTR0soq6f4ux@CS6rO%T+QsQI_P9c3_xe-_D$4+wOFjJ^a)}TVt(m z+Tb&Wl2%nYm(3G;J{~fAL0sng$0+JT9Wv9+JYT3p8Y4GSU;z{eqfQUQn2W}p&kF!U zZ6LGqEL~AXB?WxI)>sH{uO|sX6`DOEZMB3zD}``nDyn4_U1j$ z*bkphx67}-0pKfO2q>f;0*2~kl>&xv+?Ew!_{sb4*hOcbWhWhblx;I~F#3{ILSp6y z#z#vW7;ZdpucCLlTHsLXjSdXqEQ+i4mkmrx0(L1HCpJE*1%_$B z6Rhmxjc-2c?dmd zGwF3W$B?5&pMaqcNtGGUD2|~@?<2ErjteO4V!s`Lq3_Em30DI2PG!ogj_BvgR^{a9 z6C^Qw2d!(S%$j!;Z{dS;AEUf$^Fz-z5+%R#-p6+O`4jA}2ky01*60Eky#zo=Sp^W+Xtb&C`bgxcC0qS5j5To# ztC&ZU$sBv`i6`yU6Hc=8PC3rHuGGPrX03MHVnr1>%Kh=Mh%*!A$iH&6!m1IZaQyiG6f;uNyyqh-3wj&QY z$jWldZO3ExHEWq|DXgy3fC=XlI@p+h(c=CwcW$AzXx5tUpKUYdd}nQ2bg<$oICJPH z>R&Z%<^W=#6m%0{sIeRRjr2pVp*x1W_^X||f=)T;r;9Xsq{J~qw=gA!yhO_EGVi%) zf_3_Nj_o#JBkS26F?q#2SlktG7X{`4elkB-Vj6v7sro2XnriH&4-8cjwVv8T*5Rpa z$^>BdAg(7JvRY>J1aaxSlZqbRE$O4q8I?G9(Ss)4Ky}JciO!TP1j#dzTVUVMnrja} z@vMFN&9`>)nP*tXRad3J<>X%xHj2>NS%{(MQHZ$J>L1lJsageGYAl(x!%nip_IB`h z#O_v5TQmOXH(630@Zgn=&KnPn6j+=Th=HMco>VDfV5mIQ{{;Hzr*y&h-+CMCpdy~zqIw#kGpw?i4ny@hGT$K6?hdRJe z%PbQe^H~L*R65a3n`YZT4%pYyO{#6D6ArL+izM}DhektdLR0m`3eODntDI-eY;M&r zPM4fizQ-@Cf>T7N7BJM?q{`oFPgje+0AdQ@DCT*U>!D@l5Y9v1`WtfeasUjKp5Nsp ze&TwO8hkQ3Vb`U>CD3=rIpL>UMouBrN^Xd^WT_0>NUB$`%g z4(J^iGO@9R&&tiWZ-1I)*WYokweHZ-_8m9Q+G3>`m93Ayj z!2J{AeR19s3B+=;8czZa(FIjs5$Mm$%cFX+SXyZ+ae+hu&=?>pt;WzufyGGy&4JSV zQeTaMq57}Jgj78AEQdZ{ZC_6P+-|()YRhG;?z`L0)+OJC;U;w;eLF0C}QO~~yP zBIW1b|IBW9`epkuH`fO5H^!RavZhI!md-I0Fl0vH9IqPQLbbrKcCKl7@<|G%l~8k) zSTiZ=k)BmA7V0t~Cf2?4OoE2*$9Yp!kQPPoi^0Swb{NmM`S zApU;?h6jw@!;%2PUB(}5>EQW+F9pXm*c4)>U3^`EehrTiJ7@aJk#`o?!p&gsz*man_=zy%9Q*ZhssR>z8S&T>#lMm$s*{O4~d zhT>@u!BxWrO;U3>=JGe5e5&=&&bPe=4zN`_wPOGl10Km!>}@!LX~1Jb2w9*dR>E`u zL*1(dXvm0idZzqs_`tLRIC5hrj5)*|^md_-QW*!rx(;BF36zOMK+-|IIxBHP9aN7+ z3!0bob`~238k6-sZVOGhW9u$hDHi3b_%HHhfVFTfg$70 zH@@g$Bb}Ht^B24S-*?&MM;^9I&pF-l*-&On(Mn<_Oo-GS+*Rvhvjr=Z7r5>3w4?M#W7?K5ikq^V95P2KP)Z!2O+kvpY#JAB}z^dR@#(X zCfSP*J!|(p`ji`=2pEcE=%QqH_RAVDEc|(f?K*0EyXc&=Z2N77`Ka-Jzf1!|^&~2w z0WQvkfZ-~gyVzyusP)`!8*Cgb_|e&bW5{|fQS#oqj<&pZ z1-8c-hgxL;Ad3mD$~lG_RFEY`U{qMuk1u0Vq}Vb0fE4c!pqHPG2!&oQFyow6=&2o$ zM4>K17N?7U8Zxn1Uiri!PB&b8j!yepV8}hnBEP4#PeW{3LZzhh!(5yIL|t+CQ8v77 zd)sI8O|9MX&4>>d3Qm;V@MKj{F5)KG!TIFj4rzH&4XyG;z)%o2C1o zdG^Uy(`@f?W&}2oe_3D{<|awAk}x5p3!f}b+jBQQXp`@G%pQLFg<4=pUvrKj^KB(vYgytL zmdu%DJ8ZobUQW)kQ6snh{{;-iw$_3xVAx^BRqUEuZ?_)(H#L?yU(+&|A777jJM(74 zkDK4lQQSWk;{-q|De)fz$VJHjzeIMmHEWV%yN%w?nssPld!2o_Rpf&$0F5;qL+U1P z>!Pv8(jYj$z^@MqBipsq?@>?w!5**nLQ9egDU_wRiCneDRgS@zM?Db}oY zTVF%nA-DjcMDX-8x%1#9@{W5>Xj8Q-5BRZsqBp4)q#6V^VU)SNJaC#*)JJ+8s-L2} zUpV?`B>>w%B)?^Goy$7u>V2h~8I(t3Xr#cRP(Xc0<41ie-jt}5>OS)w&w@BvvtP>I zeBpW9argoD{1ew$>jF4d+JrI(hb=X)G=_zwfL069Pjf=9O`ln8=TCgd-kAB5?RXN5 zjFx$}{A#NZrxqAmR++aJs{nav6^iGbh0J=fL>K!bn(qJ#Nth6lq~(+*0EQ3PBe&ge zPrmS~>lmghRLh`as9HNPlq!&R9nl)RScylX5VMDW^?~8e+iznnS8i=%&pFD<@~WI$sLm_^Ada4< zJOy`ylF>mRhx&^@6+bmyhEWG}dgrBAZSA$zvE^E|u_8dDwa9~h=*5Yfhe%oAR62n& zU?5coh)PQ#K8CCKP9`wScoG3aSxsw533#vwDT)jZAq5o86t)9Qlz)k4=`H+;LXl$Vin?a z0?r8xGWgQx3ln@1z@H1K^UlBT zxZQ>iA8z>td9<52hO{&QQsQ!n*X8;l+y{husGqj3RqsDh_mFVo-@h#d)OR$uC@_Kg zT%h?t_cb#}8WKREfZ-?azHQqL-PP{6{%l)g<&H4UOW6D>w)$dYSa=Emkyyhd=HiTLCgOhCSzWuC(_0UD5fDzR*a5h4nmvvw`dgO3xy=q$rhNZc1 z3tfy%C0VSc_@5NViS~_wVJ1vc+rxLWG=2kf*$q_#s4qDDNGtiJ(AHXiL)(12ZLDqA zRoMM#5)C?qnj)ohs32~a7JA)Nh>zhazEc+%Do@3WIfelkYJUe4ucEI*9gED6#zrmO%pKGzQ$$J0x;r83HT^qZ4!dWRwbWb$rNkJ2Wmgh>{(duKQZMcyZ4bN?I8eak}sX8jT3xZ8rSat?-H1mT2%GZ z=E7SoI&$!9l}kUsBa^y}TBP$?3`ew2-vQR4!wNQZ=n&hQ?=P>>ts7rnDrWqlr{h48 zc5zWP>1y$)lfJIwpu8JHBLxI`|o7~*6YRh zk_B1dvU}fLl>Gnh?=X(>!JF2+fM3GW>O4E~U$@y)Uwm$3FFe`i=2hD&YpFAu6+bp(339x z``U^VhTx=EKnDR`I9XMgS=rhH3eYl9-bsu*;yn0)^svIlq*@ zq28g#%)fMT*_Y%|I)f>UE=mD{xdlyW&up7Buhg2hY-=Z+e40Hp>1}J>8d|Tu0v|8$ zX`A%lz}D%yTJW;OQytkj1vQN_0jqGISX7h#T)$`6DVXhl@-9$x7r~8Tvyx zI42)HYK%Sl=v&sQQ*&Eu?XK2;qm69vkU_Ri_Z}(%Mkpp~Tjnu1X#MIQ0-O z?D2I&A7lDv=3BoFGN08ykKd2qiH~u-_<4Mc@9S7UZsxN^J&*IrOgr;DejXo}R5=#4 z{0sA*>JV`ZwN7|HQ(se%7+Io9<`T^xoX?p4y&ZY*p*E<`27EJlV}vC#7?YYrCVj%& zjemci0$RVMXP1^6IgAA>5>4&6D{sch^{2M~gfnbTZk4Uty(_a$0EVJ-b%KeXAW^bf zMXa7BGY&kP-}$4pgxuNm#=x)|JBB8e0)~_9o~v)SDQ~><{{k3FDQtrtYun`)Uue7S zykh`{!bXm(euqqp@$nz$82&CWj5>~2An=C@i_5Han|5~3q(^O?K7Fl}j;X<~?;Xko zNNz4bi}eNx8z4h1A8M946~=X~Sr6kI4S1BH2{slC4uF^gLy8LCsSpHQVCv=2uvgu1Xf54F8YBmICuJqY)`WKoP}10cv%z-ym>q1dtu_N( zF>R1u5l&~bsbemF_{vMkAC9O%XZUQA*DeCTN}V7;8qSu=UwyY);7~sP90(!CoeQ0_ z3tHMI|C?^do^+PI^TBjy=1Hw-=;j;P20go3ueG|^svVcJwym1L(JisEQaSbpLgxYC zXT7eCnjk3MNR z&GP`LCjtTsz-Vv@y`za@VZoFdLp(l0PmCJU8&v1Cd1iGiF5FHsS+T{2SLoaDyK_lmev$=Brl72t)Pi9%;@?<{Ox$@*E zj<(9GWIaev7A`VlB!S31Y*@94i6X?}4BAYz4fN5A_4BEJUB8Y|zBTXZI{wA!DUHlu z{9Jj*1&*KVonHswIT zkwi;7dcw{2;QJri!IzzDh52dg)MIsq2xFl-2RcJ(BtKfQ;?-g4)-)~&QZdb=lBzLZ z6jWr}i?=>v6EC~bUSyt=gKO6@gkz$$PV;jmdRf8vgc^9?YxtUYzf~g;;v&RH2<-h@ z$`mR3xVYo%cV8P(^7*#sE~9*O@D^`2Z0}!aU>J9lsGeTjQ1ST#!!`iJyC*$jy$AHS zU*?wh1S|sm^y3VhKK)xbPk)A(bLw$>}RwNc0IZ?nn^sV7Unb~yaY2Go@TDg+Z~f3J_|CyrkbEmJR5 zjhoUhY{D)rrwsprS6pkKJ^!jRbHZo!5c2{c*4nI}Z9HnYb?&vc<+W{&-X9=^1Q0Uw z7Xc)kBhj;IUJI7`O8fTfuWZ(LKVf04Y(mSaV}{Pjn<|z#gc4)2P!<=X(*sCt1;|Lv ztF&|W+s_W!c8CoED3zC%Sbo0T4za+nu&V8RQKz0E^|*~ll!Wz9Axo7d_oWpCSaRXC zrV)W_a&dzbfKyeniB)Acw=1r@!=8Em1E+}?8cp-EtblcPzy_;halV~(U8S8Z->xOV zEoJ2xv4}ewgMS%tWak&ar7L9;%C0V;o3wM`Bq#V3 zWECL(!!LfeXI_5II<48I(PNvJ)rUN&$0}tHGdeM*C(vO0; zNaf%b^MwDBK<`hrVujAtUL9uJ>e*> z4!TyHxc<6US~VGDJXbvZ;yA>UGP8nn+3M#N9)-VpCxm!8ugynyG{0)}!_8NHIP-Zd zeyL9R;%X6RG&KaT+P>`EJV$WKH_VW7$iS|R7;{y z{P9KzeVQ4N@tBhIjV_#Dp0XEjdlX=JgT469M{M+XF5?r{8n;TOU;U-r)u_6Vv8FwA z&4nl{zIl={;2guh4={Yxy7pcV!%6@T9H(!-`QGlrSJi{}-Dicr{EQxA8|UN%l0hgI z-M>`umSm@*(N(Sm8i)u$sEB}J6M*6O-+YPtnj-7acMU6=@r`9SEpV}5C2mA2ii$0X zK9{?hiK|9ZS^$MHeId-vu?hg07S^)4#c-UO*{rEwvzW1$C@S;blgQU%DR7vwRW{ks zhK}78-Ocq8EeGH!P#{a@YIfg2m(%RaFTSvMpMTljzVm)KNxUA>HsmWRGvvH}>Ygf; z?$J>x@4O#oB6e+KGe4ec?HGtXR%vCkXCZn-l$?SCS1M~F1rGii>BMWdZhKXu^x^@a z`%5DTyygguK?BGRFk~R+CTvb|l{IVI);|CC7n@a7fm%QdK-C;{Jp)u|K|R-AqlKMv z!hyENYAafkmd$C;d9({)4X&XSo2vnC>;kAF?TIlt+m|Sn64XDrFc&lqC5E2ijc3V_SvD48*VH8bZ#9L*$%7 z0U7D&)(Og6AwGty`Ttd3dSCg61<#4#Wrkkbl#;$^RZ|D$srcG8dC*bmWL}3S^Zy&y zFMdbqDd;*A7%DwIi}LgI<2VZg43#Dexz~mFoxVy(KZUs5x>jG6;Sn2G`mg3Q%_||q z@5Jv#xBv7ZqThmmA!XOMlB-dLm{(L~ci#S>z5LXZcKrT3*=ikIJ7<1zm*`JdX&FgC zl>ZelyaZtQ&WAScvh!>n#*&S|aLF~M_uGu&SJNKKk_$cm+XBO${rlNGj4HHn={Ilg zJkw|3B!@)amXKQb?J`5$Sm9a9-&uapZzY~p5-@3|Bg5%fYarhx3OFR%zo$?p1$9nw)MuS z10Z77?mj6GqP&}8(XT+4G)F8bRfxL8>FRmS!s;_qZL2Ehh6~i2p(n5*U8S5H5Rua! z?jJkk@~nJ2?~;Gv3u}tU(;^9OvgT}J*6+Ex?X%~O*1cOtYuP*pi*SapIC-iYZ5$S2 zhzT;Ql5PR)s8n9QO-CG7L0iZ=KS?{3v7tx{B=TGo5@Ri$DzF#d{@m`of0FI@kFnOX zS9kZ%)g(U$PWn93;@#X9-Zzq2=vZkN@5B`yV_MRg059US<-nN^i+sXL&{J*Nq$Tg9 zY~;wD?1K+J2e6WFgs-F$u*;aicE}<7Teohj@vZBq}5TWw{|jhLT27|9?bVb>JBp23Whw4 z00Ah0dexeCkuGrfk+;f79~Zb)eN>#_1YG5c!|&x^KW-df_0TibOQ-sypXwgdKYH$Q zqI&-kj-kM;(=&R9viscXv_s6s^S~w4b4fG;moD6k%f}-xUuOAr@6QIWELDv#nskkKEh3uH4?AE$$Ni*%~b??|Tmu@znl0h+~)m z48<|*yzc6a9K$8lpx$re;l)Kwdni9H^!#rP42uC(m2g)om;fYx(?XWRmnhu7o9ngU?Zrag_FKw_>`b` zl$3J~(8`ftMJIAh$C#GtL2N=C7$VN5ZF1rErtvMAKrA=up~vj_6Hl?vrs{KxX6={H zvE6sy*|x#;(CYM~_U&5(TH#U(EPL%ac!=_eJBjzysJD97(Rob|4qQS(@W9>kCCK}~ zr{sV|@9>NIV3bjmozzL>j!E1*QqfN$BVWoyk2pU?&ph|S=;rSP#S?9H6yOV7LJe%^ z9y3PMuw12or+zJv81fN#QvO~Gj*A-NGAmtvu3DkAxbI^nu45ce`6;f-tPnpBR}20d zmowh9aP2^y6vV+LufQc#KKjM+mA-R|xGc5o9jIOc!8Fn_BQyrsQ4X?xWiV0h%kHwTX4rRQRmT-68+mtc>GNFQ?G zqP9J_#f6^#ErH=(7@u_8pf6U*aJ-m+b0toL3lk=zbF<3C#Ii=n@bZI`d3ci zkhut1pMT?DHCC$n@<~<-t7JGl+ikVEt+>|8Zk1e|l0_FF7^Q9(j{(*+$*U$lFga=g zjq9j-3pmLtxe9}w7C8lWF^l4mSU)ouAsD_H`E+7*aJfhCkd zTq$sdbE3S2q^^ZeiE>Jg`rtTJ4ta84U`=HSe?v4e0JRvFi2Imo0U()cDSSe;O*OII zx^=gU58cc5*=jH#unZ6)=hoCuq8}D=aU4>JL_sNvnPBhI3DsB%rE#kx zJi%+9djT$BjSJCO!J86*SMX0Rz^v^?I#q8?3vwt+wh4CDp}HtLr2q%ctjI%Q8|_Z&~x*1(Qm{}4%{iZGD_vL zvB1dZ(JAlRRX5#kH%+|OI7D)mH@wlir6sG5z5lK#g?jI^fQD z-(%Ik_M7wh1Kj}^m2%lZKTv-S`j9H0(hxAxQM6GS=!r`ou^_O=@@I>~`yqmJRCH-PslNUtrsw`!zg zc>mk)+d+tu#W7s1R~O%_H0l^GI-M8vrqetgUK#>K%$!#B{O<`2AAZ!<9njBaVaT9G zKuYT37|P;MpCOZVE9-)H+(6uziawRpOqDgnTu=)vq5H}guPg+nQLKgq4DspWUp6rT zLl##7!wze%WP6`=gcSh{vp`y!d{vVqR*$&6_F-A4lW3UgMpRuvr#w8<=Q4?(J?>z@ zR}SLE^{q?SuFfSCAjIq#5hOz#Fv9ZXucmmT5)M;v{273UxB^NXGYel+1P=oMRd)OX zAbH-3#c4$efV4>)n^Qi=#b()BJejL=5G5b7*=Bam?pP&nIS|lO3Xs6ZVIFF-GIF6k zlK>!D=Y|E(v-Lc*;3+Q!Ux1cY11fiyp=x5Rf|FWmx#)mubn5FTC!TyRBCK5N(X*HJ z?Yoh!y7G$XYC_wJBH9i&H==bZI*NR|TGXq;$Ri7)`L~p%*vCC_ZoLyrZ2-<-NnxQI z^9UT30vdC19pl#903C_?QyB2@5j%Sr&d9%RzQgW&mYdEUxD1`cJkL!Lg32M8@gbz|(<{j7QORv4NLvQ0PTlZNfuP;Tj4 zs(%DPQcgW{1bS;ioIb~zHd7vrU&r_B(Z+AbWgso*7G}Py$uG1;oI*H;F&xhI ze17RhZ)gJbK2EFB_D*N#xTd||Rid*}fSaaJ7wH!Ui)_7JYo#2e<%i7jW!_)Z^Qiv6 z2@FG@ses%4`KRC6$RWe+&Z|zdwL9^-wnmQOq7vSFjfQa@V2CLBzPH}Dac~R^0fwvh zUZW8hE;5CG`$Zo~@zCW$r`!#$U}2TMxD6yLPZW&yc$sP0WHI+LC)Bj+ zA~KG$ZWS0sI0MX-FDlBRf1WW{PE+Xad9$W)Ut)fV$l>$w?Oi?>hwGFSA1Xhne}6lB zkDcs*5yKE`!!ZOL230P(P)}IT`7D(V^uyc;0%}@IjnQfw(Fbe=r_p zMl1!f0*5c#CO`9{t+;Y0TLD_CNBMp!kSf6bC`s;7(fB*Z! z25vgQ$AsM2IE_Lg(c4NFYj})$zWCxxKua3E$8K@JYzmoW40jg% z7ea_*>2pl372&4ni_gEYPd@p=W*6di2~_~Kd2z`+j#bvNV|!a`tu<_AzPcf!8UHT0 zb2BsZj>|B=Tq8Oyh(fI_LOVEJJF#{a9@*|WL($Gdw=F!Whc!A0Yle!WZW=sVLD~g zu%h2&y-n@jYfrHrT~=-chJS+eqP&1en3Xu@w{}sofZ;(BB{u@YKSAB!f7M4)Jajb# zqW17NxzO|fzrawFkrqTIb-C;S>sb*pfp#5Mv|Ijtk9F_2v6XR8iu74RVy%A4QHzW?qweOJ_q$3VCU?%v+cX( z<|F_x60lN9yfJl9JF1-I0c}D~Ja-hToD^8#GAkNxHq2kAfy$wu0EWt@pQw>Q#|{f& zcMPph4GKJqS}c|hmgv`BZgH6eP`L124X6Gfu2g)~eS)VQPDOwCs-Csl*1@P)Twt(+thi7=zgtZ{C?(9kK_7r42dXmMxf8Ku}Jb+9O-b1L;K(VeqwjraVM^F zzOo6IoNvo5x15iKV4z&%Hg@8PCy*B0R{?1cY=QI@ z7}8D9FUtTtxmfO}(MuGV4!#lvjMTm=AhiX6hrGlgldn(mp|AcjbDo`Z?j`orQ&Y$n zpOX%nHBKu4vnBX<>}rP|a-em`ZA30A2O59guWQOe&+u|9KY$~fwV!|fiF3nAdMok) zYV!?jm1FMQUu@>gnY^B5%e89X38=i_^HN+qKNzIJ^JNbnP zH-;e@_4JCdDtH4ZIdKad7@~aNVZ~MK+S?{t&;FZW{mIg%wX0sB-F&XAcl%eDHN^bY zlO=mY_(t_gQU0Xt2`I1Y9RdtdLc{tKg?=1BH(jBb?RDniR#pJC0ze61X<@1bhEX{q z(4hJRdWNRgQ#HT;)M2y^M3v4o7Ku`c4p9oCd)z4gB)U)@t_fsrz z6||v1eJp;?<8yZT$ zU18sS_O`);2V*Hc7ay1cGAfIL`iw-)0*5I$i(lH&M;{BfuA3co)KS*51)ngaU;8H| zp^dt*xb;5Az-^UEfH{auBVS(`Ok@V)m3NNR$C4AIZ2?f9L~6op-rOpN*2dZZOgU#{4YP1*xIYEZx7$v2n?M}f8vkmtodH+mNO3E z7#?xqO>TVh4}js%R%Bf_==PTfh8p{>sm`3B!pgz*l$##1NjKkXPrmTlG7Su~0ERhC z{*^^@ZOEn@J22dB^maZ&hWV@hSo{+m;t#yK_<*6rV;c7YC>g+TmCjx4@@uZQbvNGB zD!H#ts&>r`HC3*6KQoTbf9G-i=!@-IYho3PVUm?eR>@kDHNVLnjawzdG2DCC(U!k_ z6Wjf?e^_M`K?@0*V}73AQ7uDFod&-uU3jLn!@Q$3}7XUED=|bd>PNGEOCHRdjC}>XJ0-41Q$W-oNj3e-=ktpLGec=RfSC+8D z4?h9UU~gRcY;OXADRhR@s7Z)JSCua2T%vp67x`%;3szolMZuJ`h zvU~2i+wS?#f9#CY(TQ8T8*$X%(paDuVdPWfDkb^os5U8R;lt+s`yaAfZ@b<0-+x~l zw&j*=$^`zDZXr6UrOrL=wq`e{i}DES4~%2Yuh2>WSVluKpeZe#$Gt2skHBJP>tv%l ztM|X1_N_hg=wtTmGtb)f*I#2zo1vlrJ(C#G1^7dg|MI|4GhyhD+B`E$G6r%>6ZYJV584wGAF@ZEeQB8ohS{t&rG>L?n=LkXU^r%n zZU6rOLvKI0Wa1bWqdDJot#$0|i!Zg_n-0QgBJ7GaxrGUish0_@4p3D4&nHC7(|n#R z`CHB%WHI#5XT`vf^|mq=CBre?fA3u_yG^c*Ir$(Q;NgM?4o}U1WMWqN^^2?LT%%ZM!XPpJ9VoV~B(3%t4blrc&Ay$B;Tksc}>wo)XR|x!+zIfAsyrv=&Ip z8iT^PYz_vYLUfG#qQ2}B>JT5}g4d;Nd^gmy_9~pI{si(87gpRG>3#|sxbY97WCw=V z-f5qH{RWg0FjV@0Za2128%aM@0%ny%K?|$m#Pp779F^1Qt>RgUxm=gpmKr=M{a9JpNkB>n>zIqjV*C_jRZiXtNwrx~=6PN6J? zKm6c*yYRw`(S=*VPCof$Yl_i~z7_rDm!ISQr@&g`TwEehfi~%G&YN3=8V3dyq!%o# zC0dq|O5oIcABCn>h$&@7kGD?BSZVVxf;;2P3vI&<``MsDgRM=QmXtdMClM|mMU;_@ z+%N@N(;8Tnr_c$NUS0s9EqEq?2?!%uaWWpb{{g${mYeOeODEtgd<_5|+&je3pfsE@R-P4sv%v{%vf=mVcL<_;PC$J}n3^Bp(4%iJWyVQ8h4_ zQpD{P(wB51Sf-N=bP(56akP+r^wGz5&UxqB=pA>!vH4~gC5d~h`4=?>-}s0|nITR) zzE}TweE*Le^)Bfx5EwE-*fb<_0N;$)vf_kwY}w78xbsw7x9cj692ptj002M$NklKGdtR7BWoC(k zwYgRH{4JC0x%-~92cLL$nFfXl=9VPCxif#Vowpld7oKyLjT*t1u)Iy9v9o~oT@tq! zAIFf67ZxA79%4lS!xARp9=+DH<4-%&Hedp-W}(n7S1w!xLV|@NZ^f-1*RbAo{pl%= z)=)>SiIo5a|HgA9N|t2Q9bC&Q8DMzG0b}{BMV9Sw%s!Ug4yAdCTbXR-(k7dQE6HwH zYm=%LK7$vIUI)^zt#W{V9#3&=DjCjVTId*`D^_?~8#{h2#Le=0z}EjY&*h^8M2A(kGmSJm##x5WqGx^j4iZMiAW9}lp3K1SSc6% z^jr^?Mo<|eKvkz)lqD{cmp!A5fp8JQh!;Qd`0>NIF1n5r@~CyLwFz+Y($SM}%|)-Y zIs?G)mV2JI3D@3apMCuyvB}=+s7Y&VmID+GcIzv+5ra~;Gi$WV@HgG z^n30_^z-D?h?{@1?(1~7oe<~tTCbOVKJ^P5KmHWnTLV$=@ra#q6h3Xb9d+~(w%KMI z+xFX!v=ut6hzPa9KK$q-JLQzqh!Z$p2ag+P>#f%tE+ZT{=Rm4#D!abG0+&+OB`PPP zt)N}5~Pu&stGqH_ro&an-2QkVX2`VaQsk3VD1GFyLxb?wf7Pqb&AdCt~d zcU{|Sud!~;eBb@|+ry7M3P)}_1|EeN&2+MrR_tKgZo4(EkNRs0;Q1sBSyn=4um|;i z#wI`goPG51r_kwp>)LgBTWO^Zh#&qZ&5rcLHcRldvG7Sv1>L%C}&ivs!+h@03?1Hn;wC(U&oM0mIJ)4iidJVe- zFBdN`6bDJVW`I8d!%~#`H{7VdjXUxf>oa(WC2`r2V1m{n;v7RJH0@O7(=hBpO$zZbTs7QZao8LfQa2f&NTggJ7#?%j!B&!8W?LV&t2J4%wfis>SECF|(Okqz z2^90?{UXLs0*4BYNBoR5{Z=@}%eZKvpWvb%$3MNIbEg%5!#~}v4W1mA;hkD==y5ZE zp+8p}&>nP8ezIi75Cg-7rj;o>Y1B?OuJ3xb|L`G*^2EImr$TKg(GLr*3ZVi!5Q%bi z;1Jb9x4fXyGeuo$fr5D51LeF#;gm9RrJvsn$J+LZBl$y0A02BW)TvQ;8s1UMr5O{| zSZ=#jGBK+FhFSS7?Uw&cwo9+Q0a3EP)6A|>G=#n}FqCT*ft0KSI}*5GwO~*2R7T~Y zUuKVq%P26UpF;dx&*JC)AmdLcZ@3Yst0VCp7{+OFuTB!uZ=;{%use;2^WPYoz5e=} zHe|>aHk_~KxC48}z$`w0dGW=Upnr$2MiQ9$^DpSs{cKxoKEw_<@BluQ`Hh`=>S?wn zBGhA!IR=A{nReZE*V!YFJZxv3b&3tzY*Y7(IOX{laNIo!KvQM~e1lpd>)`;aoyUx} zb-J%Z+UWOUlp>TJd^AcqLaGm%Z<_I`z#=>3AIAWu@Y9Jwj5a&ipKwg0>z8r>H*k~9 z+}+RJcinH_Gg+^TU(26n{%D_m@|jKlj>&uMz5vk;?B$nUu_vB*lFuK0g$4H4*0bk2 zw%Tf);Q|hHVE8i}fHO`%-8R~&55RT@d;6XDZ3-R--h1z3oBG)o)~VAf_>^4L`t|E$ zTMixKWuJKG9rnVDFW8MYTo0!eE&?3b$pF${ewhVFGn=wz!$ECsD=fdf_35*ri=aRK z^izA`g%<$9;us=goANyLooPoLewYo}d~>LsWpn1tvAgfS%R%F5r;kS$Qu>P}k&dA@ z9+~aWWlbZ;_v53UEo{)c>PHI#hO`m-saY5zNt9eXx7t>1+ua_AW7ueXvaqzS8();y zW?vGoEV%Qt5y75*!~HhptM6>gsmIvt?DD_7@kv}Gxww-nHMw6a`*E(lGVyWy=%x4V z<~#3Qrh#EfYZ9)xew_BT9eTiicHWt%+qOdodwZ$fYR6(si6whntiaGYNs&Wa0mCw! zLH9?5y!V0QtncPqSgN22J5+HMm;_j-1VkJd0u%!JaD&O#AsY`SLsVWwk zB#XN~iKoRo6BsswV|dcBN7|ff6h{vnWi2})I)iH=J)=@|esa+B@r8-MwbiPvmDYA$ zWjtif4*)TaPmccFbp(m(ctEfCi#n2abgrZnJcsa_r>8sNy;_c;$5Gq}7)qEaV94@g z)ff*oPv_X_yX|g!tkcyF!X-}*BDI7k5;%qq40$(X9;c=RRacdsw&iaqjh`%?KPpP7 zywfTaB7ki#rk*K&xB17{G~8Kp6hnS7 zW8)LKtNC#1yC4(#n7^V87CMGr-oP;opimDZu;)NcxhYfKSNSr_sAq~B$`#@eucnh^ zl(gnl>FB2rr=@E}U_tjh^^6eFGCb1_cJPQT%P|eSp8EXo<4?BrHrrU=K7Ae7&Ym^L zo}N6}&d2KbkVD4Vh;2sL%wJ~Ol~-Pc$Tbh$!qX8Me`V*KbB?ud*PgGl>|rmz{4(6O zM{IjUE4%JC+BYIEzx;}cODC{=)|qEHC_4ZA^Y|Y0EZb|(-EIB#dr>5b?F9zejCtLl zzl(9@!Y3Om;Ue2(&jS!Y!=Yk6YJr=e3Um`?k(`6Orh%JmYJ2QH76;+Y?Sk_s*o!Z| zX#F={&vxB)42CML;AWm+J$v-B(W7^^)>u%NqT~3?g^+@uZXOq6^QnHM^}r84>-@n}tYT`jQH9``2`e zjC=7jkGPP3qJFd>VCb76jToHKBl4g1bE&Ph@_P30ZH>TiAqoAf=%T!ay^jTe;ZKNQ z&$;zsdvV&2HtOUftq?C7UDoUB!~3u5;5t-_IW*!J%80LM`fPjsuBYtFcR#nQZ@hgO z2Zpo}o3wAg{KAes>>mychYuOJ>;OY81X@m`VeU&tXf#9t?D*V80t=D@Lw38H4%*yy z-Df}BXvmh9-K1#%h8QboVwe7mLikiu%#8@C)&CpK@AYpt$hAOMIs+I24}Hyb;}f~7 z0T`Zo(s4GkVwMfwXFF@P+6n+kb~acq7Q0)GJeDX~;pv}(_V2Yvook(qL7$#0#9T$4 z>skD~W=-}udKw145{cJ+kE1m8Oh0A?9o;IHhg$Z-lPEXRmlC>oQW|_Yvh)-%WRgB> z&%JH*>YZ)eHbbo-kG-1fYXKiY_u`6*6INqws{(k1l)4H)PEk3coIK}-{X+q~@*!8X zXLJ@QtxLZ}!98B6fasqVK;&ishJk8vJp!!MbA=dmhpTW$e?zOw;@H2K0=UwhD!P8M zpq1T*Rq|!m-DDqp_9o)xz%dN^jrt^>LNFfqW5BScBD@!Y!car5d8R=ZHx6fUJ=AYP z$b3HrhH*U7i#u0*%U=rhm#Z4}9~qv>fJ9>DF=KXtd$t<=Da*e7cDfyT)X_Gee}5Y_ zY7~AWSGCVR`7hw;HpWjgI~oq*mtV>%`50@#=LE&gx*xs0t%eN)h#ieMHG!L%pWrx7 zK+O6Dfb9Z|M%n}95R08M-hs`??Y6Zp^i%2T1XQ$!+8MDeF2AK z;c9NqbGV6Em4OkR<0&JM7R}q**I!MyQ^%ieQ>IL@OD3G-;@%XFz<1eYcN?(r#gY&_Qw`T)qhtF1NLNtZV&{zD$FoaQ_4MBUXOa zP8ola?En{Y4!#&Kz4S8s^wZA(-G?AzZsnHN&093HW&l35ki_p2IZv7LoSlrg{`AvN zw*LJ$f^IU}kxpx7d#hpNeywwb%)SxsEZkqcPnz-Of_XvXz>TfcFWE@TU5z9be6!7F z;I5_@?rI*m86CqeD>v#GE*!Dz#188h^9_s*P4GX?F1K@TpJcE6FvE5{{)otrVeGC3 zNfF~%5u=%l^SCd>$2!S3*oFE^l^8D4QKq}joi@|nyyqGF_Ty=G_<8wMrV22=bzb0M;{3=Jk5p;-qa1U zBmt<2TsOHTb_Le()#49iP#& zuVthcujw`UaFX#jfEFg^N_3U{GiHGITus#YqP+6(qiqY?Zhv+#E40PB6n}CKLMcGC ztV(Ihq*%ak4%M5S`zz6@dOQGGIR)TYzkpFWm&zft_VwvSIlZU>OzUYl%Y0{kb*X=^ zHolyFi#7>p>Q2Goyz0v*4?X^dU3UFVHs$pv*f^n!icx_q+A%$dnl~5-xUV|zb;_fD zJ}P0HSA2})#K-#g_0If494|g*#);F4@5R>~)xqRK2H$#ToplaeznUwg_yYs{uG-#_!}~0 z5M?ew|B%fobMlKXy?~F%li(^Ii;m?$=W2$&mD%3)+LhdWgICkXbYmfd_m7ZA_#4fB z8Wi5I0fqpQvNYDFiI(=o)c@I51BcoTm!4!BtkZ?B4VAdQ)k5al7##{|9xjI?o5S3a zRgq&~|2W4kyzgOqZ*HM&bJ#&PkG<#W>vnVLh_^g#QMBC>4nx`(CTS!T%?3y=hlpdWoHU>@l|GkWG20x+^qn*%tvA#)Yg~P<5UFP(nwN zPdxeX8#!{MZ8UJOZ8ChMwduGL?k9>J7*+y2{QIbgo`oq?Z>3Q;gjB;l}D2pX8>8Xk>$$2)waKdHh+cz`6w)KYgx2_xYuo6sq1q_o+d@8l~%OzOE z-%dKvF;I`caWBn29Sp+yb|59Yfc<*{V?k>u;J3^A|M4kQrqlR$v)S$Hizxb5a(Q*G zJ@)iF_D=x9e;%J`&D*u0KjqV}cl-IE`i!IZcmQ%0rm7s zHhh;|c7=UA{d+irqpkmdP1y_<;iK?tI}#T(0)PVnNCkOK?fdVi<2vPfz)dqd;)o;h zdH4~=C*uKX&F!QUPlU_(t(|rD*>)%(Xdt54!a1`Mul^HKChR;!((cm_H#nD~w#K>(ekIxh83oCi~0)%}3 zn=xCB$aDI)Gwj-HZwAQ0VL9hixZ~9}d-iPf6aQh|0KB{Ix{Gz{)QNX1ovV21<(Jzz zXPsr;5i_d{vYvkT-FIv1(5KG^4#cE4D4&NC^$r_4%(fan+yQJAV^3VaN3mEgoKt8g zoN$7D_~A#k&prqFXAVb<7-_rhKFV6O$aftB+gSUYvg@ zx@dtkqgSOzt9~NBj^+;L$gYwR1;C z&EwQ`OO(}bDFg;g4KSpGsT43dJ;cE9x*Ps!AAj|ct+i<{>$zDUE6d>xA|`}-RY4zM zOQGzZWuRlA9)Ck`b8<%2@OBdeK25u&XcMew+-OE$V7dM5^KH$NDjU0LKfYVqif8j2 z7^a~`I;pQoGy=olZCOoHbQ+0R-8~B&!>X)2dveMLcI~Zq*cCTjVykpr1wa!fKAb&y zKT8@MLtmW5QPJYO6hquuLPw$?@rjPi!~mi|UB6rx&nrSF?lyY^4%&7jcd%_nY)|>q z_SIKk+DQPCUT)F57vQFaO@%vlem6u-(H?W6Ye#Mmzp2m+q6@Q0aA!@Z92H5=R#~A>~L#)dht0C5%g2Bji+i$;p z5D&{zSH2BZIym<%C_m4bW5*nOG6o_;TyHRdNZh(e)aGu2IKY$meCk&Y3}x|q(M4zR zJdHoYazN`za6Fsaj-z%2T&=}sx5!?3`T z(C%sb@U4&Ru>JS5E6+R0*6O^XRpZ-H7MhJ=;VB?sn3hNt;FKuKwYNU~%C4UBoPCFj zrcL+U#Y*y$)*0WM0#XbpdM)$RUkn(kM@pI{S4=KZsZ828Z%?&%AAZSN=d`xNk3M0U z28K!ImNXp0*PfniPd)U29gUvh#{D<+rCOU?sp&LiSR%ks6{vLXk+Hiz#9APR+~2NItbw3k;phMtg~4c;~-w zu{S?{-B#V8tM%J8Km5)e+{)+yD%rM;h^*bjWffPxdxfYIQk=nrK3vQHBjw?Y~k! zRNXm->?8!fv#{tM3wEjKm^vb2MXXrvA$T zLlIbQie~{hg-JP6roYP-&0TlhYnx(tw(G9D!68Lw6}`O&(2cue;zZvk<-?up*|R5O zC)-|q^)=r>cJ9>4&V=LEyH_uhJC>ZB95|2PVxTeBI%B#cVI zOC7B@V%v6nYED+Xz1HpN;?bv{e$w83|6M-AccHav-BNop58B?z$#rp2C6?3o*`0UZ z4Is<2CQb8LaB!gw_e^5tEzt$sYS=b#?TYQ{Yi__Ac&1%C;Q}A$s_XgaH_n?k&qj>c z);7SfqZnZL>~qiAb=TiuM*>ne!J^r9<^Y;+zWD|q^f)^S9ppY6Zb15NC`%P?Zze;d zdk~oqv>kTX5w2gZJDe6UyyNzXUf$CHh61b4zwnYhJNYFDw4in zOqz7BJ@@*vw){FP+ZMZwu%cucViEN9D6<1YI0$h~8omaBj-d+tjVlw?sg}y21B!FV z_6#Lolznko^YksZTh2$H+b(_9vq9^3!FsCDfngQm=4y1N7_Th18Nd**udg%sngR_% z8!EFX!-gloQqR#hLX;vwhtU@v7z9iVdG^BVpV=M%dBFA@x2J8s_2v#;o;u3M?yiNVDuxK`2F z8PKo4_37Kkxoy%X?9{0ffazHPO9$uX>FXYvL*97fHC(}b<;D^#EZ+eTHpM0art{Hb z?AEOtz-kA40)7maZMLnCKg1t?{2oJ=|Jn9Cj6eh{t8PqCs@RaCVvnII38Dv{-u@z$4YMVUydFoYV+m09p7ZBwMI2O-5^Q3b* z1xi<6y{muSFPSW|JmOvVns(aif$x|5{3wa|Yi= zU$AS}uDHVK<@HSBhGX`uS%{^dhmI-RV#pAN4EDt2sqZ>J{q$s9{mgMtIB%Xr+T*D2 z2JU`m(xfM#%ky+A98G0s;{s=8+hdP0SWP#h%;M(e+ndmFJbH^ejo!gV0%}{fYRP># z(LOHelO8h1Dd!Ca4AWMQC_R;GiF=+hd*;!}cE|PC*(pcvXI)nT7{X0uv5Lyrcvu(; zxF{LGm%^Yh3kk$SPrqOj;bdFqRcx&-23c0CW=JcT*XiFq=6IomtDWxW5)Yxdz|ufeR?&_?aLrvt+zqGZKIbHahwUs04S{H>l0 zlyDRaFxPdAP3Ry5f>c zF0s$2O}F8@>}hND?!^Lut`rXwK3RnYMPe7l*RO8KyxXvZ`BgcD1}RP!ttlp_M9I=c za$v|>^W1Y!+QX9{vKF1&+Q|KPu|j>qi+|Y?m4gbTSpMt!)y-weT?IOdg5J4eU>INe zecA$%pT5lDJW;t2(&PXq=(YPNS>f}q+UVXrZJU9;5bMmL0il5mh$3JpK9_S0sik*f z7AWP))WYAm=Ai^pc7Llw9bhOcSU`6*`h>5)^FO<5(j&IX&_TBIUc30tKIjmzgd>WLg+i>s*qR$8i0 z)Zy|aC*_>C3iPLB?W|Ca5sJjc$wa;{E|pj=W<&eJIrGR*;~5<+462eTHhm&B`4{9j z1Kd?R*RVy4=B`T|zGi}J8w^xR@Woi*?zi~j3r?uT5tVMAM9k&o6`@?vA$+}r`~Z3y z4P|mzO}+Fbk`n4ILoZqOi!+!&|5O&zLC2A~1<8uuDQ9y=)zRP77hm8fx*S8@SBD{ge&Ji~&1~+RGQ0QoyX_6cormu;+E!bs zJ-`rSthoOzZ1#Wi_yUF%fGYL*M6!k5dfy{<-+w={=J@>VG@y^=v}fA)8c%MJlDY0RWS^j$3k0fMDRp<1PnX<-@#z7TbAVy7U32k8Y~iYH-`#gbO=Jy5 zIMO5L247QsJcjs7`tRZchT6@6m;?;fp+pA(!)vd-)?R)0ecN{TvDOpiYbi*}pPN2T zuUPJoRSN;}^{X2)?!6rBQa}8R!_O$KT8WqDwCplK_iS5>~wrM38Tic=B)f5f+c1-Sv>|ux@u7 zGi)O~mjevZO%gXTD@UIpV-XYB5rLGN>Ka&Fq@_hi_mz7n0VjXIKnHT&LK*F7@#i`T z?cVtq_al!#Z7Zy{vK?~tVU|GmP(CmDMo8co;)K~v-+iVIEw$8$7ia&gW{lfb-wg(! z;pqCCZ@#n(Fc5k7y$@~7PCMGc_%4iDpOq+)%LPML0fRHS|)#pk|3jt_YdXq)~KJ;1oY7!BC$WI;- z#4*F;04x%TsASj@Ec2CyzT+I+aHVjIQ-N-++EAbRQ_#6KQzce1pGUTCTp^S$VT zeAQhmiws>@ywOjsz!#c4JqX;28>nwYfB)V0_OGjM;9JR0;pXRT>xY|~KsPqM#< zdQaUDH*$PbyG zxUGm$RvNG!m*n^JYmAXe0g>6id_rGJB%0ghxBc55|LRNYIH0d}=+)DjbZBS)$KG`S zMp-oN=W=)Hq4$oWSgNWd*6HO?(FRBv$Hd^bsINyz)+}#m8Eg0+KBT?E?;1% z{HX4QEtD-ek|amNnDhMWSUl?!oZ6)q4nE>&vJ&~8z|eq~fR@;cKT3dMd2tZ)p}Z(x zCC(=*505EqnM%fS9*T2war@ArXu?5Tzf(`44Rtfh7>1eBsMhk%8xoYZC@_?riiDk# z_6umAHh%ngyfNopbUA$>_B-St1BRL&GGNGSGyAqWN#&C>D3o0q_6yr(jbRZD#6y}=HE^`C@@@E*t@q2( z(dC@q;z*zLllvNnMSSPQ4o^5lHg3{*eluq-=8hhZu6wmYzs`qqQI6GIp@5w#fnks! zz&hJl2dhp>Pb;=gQqaE=7#gVs9%wvm>)~?BOkUff-J)-P!L&EtLLoIugKxS4$qaNX za1kk{Hi_U`csq$}7l}Fz zo_N@6-)v1{HhhbPs8B-11bBR&@i>pm!`Nxv2=we70(nUUTYN{X-mGKdJ+52xlFIXcLIIIpHtt2VF${2>t_V#o)WY;f@Dx$FlroxNyXE z$R;q%<@8i4ZLSI!3d05dE}z^x%BpcG@p~h{P?`^?xnP~BvtuVMV3N;KOx_Q_V$#r2 zXxF?6E~Lb5Srhpd3KPTBmNc$oe!uEOxF0hDLLC>V=#-l%ta9M7+QFoaT&~H6Phc~*_`4}B^kCI)d<8jX`*_W2UJ5=aG z|IrJWKb1uqZ7Y-R_YYL37~9t^mQPd=^dqe_Tn=4@>oeZv>z+C z*WS%dJeCO@U(C zNJNR2g2~lz*{D14G40t}Gw6D-ZY?yRePI@zv}9u_n>N~e@hpwHDL!*ZE3>az#z_sth<$v>mp%I$-jpfykibXTO zuULh%XV1p1cixR|1J1-zT+cK+I|dA?HIV!hsMsEWp=%ftWNuH4r=lwyO^_af1)R3J z`L?0>e#Q5=>Ym}qNu@xhL3;|d8Zvx$>R?f)Jd&ic8iI%2n;z5B`p~3qNFio1VlYWmCsjDa~#tcCaELS zaeKSV0e@7m#B!5X5r$teB@)$u64F!|Vr^a#rq7;-$DW;nS7%KpFqDp!qeN23IE{5d z<|$`-iD%-nV8F!xj-Ak^1W37hmK+dou#rmxBiUvb;c|4{Ic0u_}4cIo{C3U3WV|* zdg;E$@bkQHaPMvRBdtaq@)b3P1cu73EO5kLvL7~HH~!O^@=0ZZp>m;PZYo(Ag6)EK z%NGtDfYZ8n!zqlfTD^J|mPs~-%D0zUiOK)J2ZqY03dj+iU*gU*NHh}Fl<}8eeuXp6 zzYx97y?`sAbhN4DLfRh6SX*t~;Rpw|{q3RGK@!pA4p4nVjWT6)Iqu zLaWlNhFpm+e)=3YjJ^YT>BY$BGFx)y&@w(=8<+Up>y3_%j(V;PCHc@#yF%Z(!d<1# zTun@)`pn!2Zs|Dyhc;}0JFa0^fVIo1vUgK|MYQr&J%^_-Q}F?9xu{^JLyx>|Nn2@?>9q0Qhl_CWwWILKqK}YLmDjS96qni5q-bR}bE0c` zCFaRqFW!jdqXZnf-{yI5wsI<~uG5ECTZgW}pZ&69oA>3O=b!uc&xog&-`CdX?a!VU zf9>DDW$Rtx^H=r_I_~qRbMgEB+W2GISBEN4=$`4frT4~Pzp-cN*q`OcU;j7T*em`Q z80rKEl}Q>{QkF2zH%3;5hjv94Y0emj>)AreU#58*ru7*d8 zS&z~hR-^0GjotfVAC4~X8GHeP>sK)Hyo9+NYY2Fx5mKDJ5@5)>k4@D%jUnG)RcBxR z%@t@XzM;J!g<2?;BSQkjB8BExaBvFiPrmpby#`#5j~2ayYIW17Ty!;3M7ukMNU>?p zSRIuQ(L9s*`t$Xve7d|k&5zEzYowttUMtCP+_fdgHf6`ZdsFTydu=SQcGy3!G|#11 z`@H(?#;z&7I&pjPdG>GhdGuxTTYs&t6EGAwcgOtJJ;7h^pXaw_kH_e zuA5WXAh#NY*BHwAMD~s$d^q9_59-Ue__zuK0HtM5YQaOC?OAh*z3EL_Tvfdt&LV#^S`O`;E z)H3J~3Iq}u9?jtR58r(kPCSmG%V>`+U})GXHUpQa3~xR#R59aahcpA!5-Q0?&8ALy zD4U*xJMFPIF1qn%bn4!Nh@XCP1cr*OC3{3Mp4n2Bd7M4SUf^G%XS?USbBX)5reT^7 z*GN>MQdLXN23ZDa3~LY=UVqDVc=xk+aQPiK({>{R`9V$@s>011(U&7}`7V8v-tFFR zjlHzh*d_YubbAVw!7_1V#zXAuot;)yu0MIt*_WUhkKKClKvd=0v&lTi3g?aV7Ui>P zZqMJUPdtzWEhr zU33G+PkfrOJ{uyHYbGl>JGmH56Fg$H43vB^|HeL6iON~5Ds|9*bdLM_$$EAyCJu<}$C1`HX=q9BOZUwQ+BFBy#2o_hjS zleqjQ+f5}f+(deBa5*cU4KhNRG&U5V92KiJMPH!!D$x6L1;7v z45g=XyyEUvy_MyN4PLR8e|T`Ds0CSCZ+t~I9v^W(ihpNpRB8;DGd^;W`Yoy9m?VFc zU;R?A?Z3HG4vDm5MwAyuo3dFr%O4LY@VJ1Xmc)xPP=4#(cEuah829wx{dqOzPt4|1 zGfwUaiOK$!1BUVWje#gpLSDzscHIqUUU>~pJoPjlqPMc*aZwXxz|bhhqeNN%%Xm8C zkBY4NBt9u;Botq4dsfLM5zD15BQUH+Z_+#N|1aMBa2EPraSp2Q+zn%}tsgfH59w-C@re}-8`cLaZUdenKUrORzS1^6m9}Nq zxx}B_()<418)Ghi%x~lKt9>1h`}i_yNN>C>e%41Ru~Rwjon^m$UU__jy!!n5^7-<5 zFsu5|Ku)Fg=jz@BTUMhEWKJLAC^=5q8YxordhK%gUUFJ``Z8nCKCmcksT$zif z#y^91-M(kL(9g7dEbm&RM1;UHv)?SYSR{e{~K<4Y&?>7Yl;0jpMZQi zf$qqKC&VEe0z+5pj?Z+z=aljxp_C7*{bG9Or_(lj<#)eh%IK$1EiVmskGcmd=v)rN=~%=*|NaU^=3wPc^=CHPHFf3TH}Pi{n3LT1$5Oq$pTA$D%ox$VN7<|9sWy4 z{83f7t8{-hQCsCK9vFJt0OckW1BO*nLm2neqj>eb*Kt&@6R_h!d!R5`jfs^@foH3| zBr3!I^PW;VdSK`&Y1HKpv8|?(wJrUVJSavQ*GYcsp$RDX>PvKQvlrU$w>wROD99DZ zklqwxaQdM0tpb25aV0R^unGvWIpt2jOE&gw2Mogur9#W&V#e_MY3Vvlcy1<=7%=(V zOZuU1gIeaf??RTaQ?zM&X%T&`ZTR%9|4R%K|88=P{S^18V>d2}%Z5(IU$0YTf5%-nh0$WqJ;*+k{TpZud5bv4xBGGihGHM}qan_|g()|eeE0?4nKT_cWi`e%)Gn{$ zDqK;P(M%+DZH(ECYjv}VQf`dER`xf*P`$(VUw(mp-MeGX^w+WbPR+^kY_*&^4_Y{_ ze=C1Bt?-)w49k*rBb1HuwbJvHqNe+Uw~=`xpR-D=J!yfQV9tDihI87n^g2px8Af?mh8 zb#`*}qAFIrHG+DYjq?t5Qo3K-Mlv$rdXG-%p@ap<(Vg|xAGq$BM)DfD8sR}KVJrFxFh>s6n| zIouZ*QPOXJP1$YyIlFiZeEIkLNBMW^cl>_Y-?~p9pKo;?x}F~^qxN~;fT6AtUn~6^ z!CW>!?un(}Wy?}}X2ZSsd|H>s(`s|RJlgta#g)q*qO$mNI^gnTz>tSGv^&&!f34s8 z_vzebB+oyjtCQ=BDakxoC%|KrkpXIg-ktM49%69oBN>;jJ*U%ZGKP0?K{neB=`V0t znKqpQqCK56@)_fA!fS70D&b3R%4!3SId@?yOF!gJVl zr)Io>aZ+WMZYx0f_Pn+8>Yl#|!0@j#>>NJ`5p#@7>NN>Tb$?N_8EZLCDC zVnu3dOkhJaBJb1VIIlPbpDq3s7hQcFo|*D2TD01Y4qVid$RLIGRZiPnO4IV8oaYGt zcF#3_>yP_w+3WrBL~Z}<{XV~b>#y_M`26Xbve(6*-<180Jzw|x=l|1Z`RDkpzrXC( zpZ8mT{-3_bU+3@h&+*4MWy^cLHdd>gSef-)JyU>NtIaUj2!Y|7ufC3JF1-Txj~s>; z^=lzH$kkhN)^UX;4w5Q?A!)T4iKNzyeIz*pH;j7{A1z;vriUGlru%S>ZpKw@y6cV{ z;4@s11{sz(pl5wabQ{1@_3^lI0C%+2idb5nj#$%@4V&cP#7F3Ofy5P){OFQ+yokr# z1KjcWZ$103llo9yr5>1lO>O`mO??~R&HEB<_BaH+diKFenx{qS@FJ*^FU;pU?+ZVei+e_nz|`lTLBo1=NPo5! zUTfG&10yTR=H_D4?%QI(Pyo=@JSNKXqfdYA%>P_~P?Z|!(4`w%?$!!91cpgmsw&?D zLs3chsp^ChtrDI2tFKHRD#xT;xO^!Re2{wTWGa26uFj@XRBrxRthj|A%*V7BoTXeElI2(r~a3I^DSnK9*+ZZ!x(zjS)4}x1A!C<@lK-GAUQis zdN{*haWX%uL`oLfP>6aom*CIxt;H=#lTCS+agTLs0?5?|jpO%Sd0-^K@7-fe@qVro6cF+DZy+6BLk4ko*(ROZzRkD1a!5uSqo7 zG^a6`ejX-GdrXK7eW*bkj19x9J|CI=!yhs2{mlO){F;QF@0Mv2C z=94B;DJ6DXV9`IvPQ-m#_Tqk*-F5krDTHJogInh%VdkS#u=d*(=y+sD9C_q1SWB5& zME)=ZMC^gefm2A3h4|y|-c$CyTk5yy#T8@?7%GpVnK zJbeGXXw;ytU0_qtHrwXtxux>-chA}4z|g-?pilr&pCQ9;#ShC@q1|yO;DCb;K~6qb zcA#xlKGnY=QY^~Rq8m_I3=6peN_I4a?tKQ}vTLtpJ2?hfnnSbBQzLl=yxxBKNA+KsDl!Gs zE2|4+3Q$m3x2UdBz);6Et(=BsT+{i*RwgL=;0@y6<#(-feyMfie|BA^^Pry1lcwTqa6u`0 zlV^FXnzqG&p`S|jmF%^J`aOE=V|Z)+Cuq~IJ&tBf!|XiTlW;1zP=Jt(WdX5`Z^R~! zRd|Mbj_LG__{!Gr#3q*$jXE~a7{-91g0`lU@pD$K#M9%);-$A=!r-UxLVgBq1mtkQ z+`9?f@-4;Y(o7+Fr2HIz!!Y3e&oSlp+lg(~u~KqqM@c6X0+?iz_bQ(RJ+~qj8$%IQ zg{sj?U`S>mB^)qRr>IXUFwCJ1;?NOy&_i%{bno30jhZzyt)W^#A*YqYv=J)rR=^BY zrb-HI1_dM!#Q#h-l`P)(a^3;MBF;&EzTk5_^Y{c5ak;juFFc#Ta4q?s11ULQRcZ{4 ze4F(pS!zufX07I>Y;v{&f36j8{ z1AEl}3bZq6Mo7nWE*=<4YU$j+)7WW}+nHkpxgbD#VKV-E?qD>n+89?~dL7a-sxoHq z_5%#n6r?W~P}Fdrp$hTG&p%+?1NWgRr;yJ*V-V`rsbNhdK0Y)rO<3Auz)(51SXtak zOXz{2wlBW?DxR743ids?4Z5FlGS+4nP|HSl1#*iAhHgL+17KGCZ3h@ScvgyZFK6L>6km)5Q{Ok*u`rITOcjVzXiu|9tb1f*sHs$&O13LE=gYla4l*eW(4EYwxJy7)+kXd4Hz&`f_o)2R7@CbCaZfxj6f)3M^3orc;O>#P zqV1svVj#noWoD#VzV%gB=~nvWt+%&DfuWYg6DX9ep$CQ$hBf(M!KWB??}ONV-~BP@ ztTV7`UA`HL7Ry+aT&AgH4-BnVt-KBxZoQ)a^Cxc%7;5TN%qCzcJAfnx-mG0E6%!{+ z!0=Hw;Ep$*Mzk6&Waw<5VBXs^Fw{seg$-`zxTmo6mA7zh&r`AgZq2x~+gcP6AxG#^ z&qa!akVy=Q4K+n=BoNf7T>~vSZbvHCmo(rc4k;s1N@5yWNGAfmh^CXd%+puj{e&y7 zABw>@UXNqCcII{Y&MS>(3YDpn0^2VIBoFuz&l@n*j{V?PGK2h0bBfz<8ICzKXW_=H zE=Qx9Rp`)`hp^@-Ih|&puo4)OUYnjYU0=wUsk1*{jKSld#Gc1>LbKKfp(s5SO?PWf ztskfBiQt^SxCXGY)sxKOG1ixkJC#l8yqA|q!eOdiiFvOvR5#!?iK;%S#smy?txvk= zpC`RtUde?>V>E}tr8&6cf+5(i<$kzf@Xa(yD+ZUGw>DgW}ZXLqo$I7{$??TUUMbRJ7WM&Vth&2B-%=HJnykoBJ;k*fuUb7 zIezWrpMG14GcURrJGa^kmt1iL)~siTM`jJM!xNn%@@ORiJOFb9;EC9gL=t3U@ACOF z9%n{nD<`jH0mA|fb_sw20*2L6G4+MX1i`oB-2VHnbM6ctIBn=p@h6uT!AeZWJ5<;!93^0_$5Zy>3eQ$@Q-!fU2Xj5|H zQBq6~!>WFF)*aV(*=LlVDZ8gT*@IH?l!jC+UGx*48ZjDe_Bjj}U33|p zS-H$Ec}Q1tbS3Z5^(5@H`yROV zhM`!OOO2t_)x1^=!`lc9Rc)eHjAAi>;pNE|D(_}JCO%)XF^mU>h2(tYF~E33S}*yH zS6;^GCr0DQzMZgpTTTb2sZr*{;uvn$>&yKnjk*{*6yLr30hUa89gQidFYDVA8T4ce zgd)h#%Vt=KQeaq2g4p2R&>-tm%x%?LPF!B@6m&wVl#fUZ6Ify#MSu)((wN?M8C7uJ zrI%yR{q{rmUZ`!?-O2^Nj z2Z@{h>dn4mivq*=T*S|di?xnEp$i)A&;o;p3`K-$>U?RJRGIAWSaw%sC6&k@tpb!!C&W~SPASUE#rQGf@bSF)IAq^_(dn3WoPo(jlmpHXHC6$wpk+;_ z;>wSIQro`IwW&v=88v=del{(OD}#j5{rpSO@US*$un+Aw>(xb-hIKgjtWViPP-rtd zqHi29B+-lL6|Vj-M7bW28ZcG`2L60?s86K8=K`=C@5-Kz>n`)JFv_}SY)UyNMmP!v6LDYu@v8bLS3Su{%0S`jY|NeZ7Jizy7#-RkhfXJU!`hre z=98Z7ypVbdOA&TS1`LVDlz+X^$zXRrk>7f=dPUWX=6-?%;su-~4RLy%y9BclEFd5p z*t-{g{Q4`@td_;A)TPqlhV`fz&+^4cWZG)LFuoANP$&029jR5S;UWev&8$|Fs$Wf^ z$&-j=W4#$~Z3GyKLaNsCOpc|T5w6(?sB&ZdbPNZv)+0zy3*)QL7vR~c&th5O3Y>D` z00e5J(9V#IU+$&YdS+)}MCq9QcPdtftCX7RH-6{%pE{2z%%^=Ja90m-< zzz!JN6uXt%HB23^xJew~g_P%LM=RL?Nw8_u`_*?p;LZmgGEjKVrI*;?Ne(CsB}>wY z=_*qt1-3s56mbSA$yV}lyl;^xY&9rp28wa%+2_*9qyYU-Jq67h)@NLIYRP4|#sRm5 zt1;P8k>$rfuX6*4GTvu@s%7MgQ?l?&Hqid`L1=SYZ!~VbKZ-K5P^ErtG~_Bv`JB=6 zz>q2rQd+W{w5C9h#(-g%bF&^88YtA`mh4RCyj5^b6q6pDfbi;KbZUPBS|8RH*<1-l zGSp_aVhWo=1BL`t1`L%^*NbZ}(MfL(65t3JDto~&fgwG_g9LlhsYJ4~G5_sZ7;^O$ z_;SG~$f5~R5w&HiM*%~%6(T4<{%EmFD-?1Hp@19~QN;;V zh!5j|p;1A^D1S)hSjqvzs5LkT43#@$VyiQ)hg^hJE0$vF>o4NvnbUCjoj0MVdKeM2 zz}e*Zzwt1d*7{r5)>!AaEywNa;TE%w8? zCaWc7DCsG)*&pjUF<_{N5_Z{fljd=+5q6i14<~8zzW|YfLZlPy<#2VCwJTO3B{Ll< zS?NftUX5q@$MeaIVQhev_k|dSt5E9!$4t=TOKVx+0eh$NmS2SG#pxJv{VY zQ+L$gv4!CXIWS3Cb`5}5gf0mBh@-i1XpEIyhslny=eXrg?f zXA*#g4zTbJ7`o~!T>h*@c-jZ4M!Li9QFOzhRVwF#0W z3k)0^4*&lkMP(@}3=!INN?GbxOyuom06CNFhwg(@GQ@fpr!rb*{ zvn|a^G%tr57O8(kEZ=Y{4B`H9K@9}T7LAG)k*Q>fSsq)*rATIf^()T0@mBO1d^M`K zY=Odz6x3`~7a6pRr|U+nj}?7mz))jQc5<3Z*1(iM?4v#Z(bcRO)5^)GfY6Z|FfLrN zVjU(wJRToUe-jONYl*fec0z52#i>p0q@OzGZI+TK^UUvA=*Op6HOC#{JNfjy2B8jrf|`vRm=k*e54o&inJR2Se6$ zJ*5{z)(}icrOfGM6+XrbHu@-qf;w9IYs=>9pFi!dfT2cAO7h+c)5WNmb`=X2eT1`n zcf-AJzKEha97)N#)W!;S>2~yuW)5efTS^;9a=An{;R_;_d3P=W!(`jc`EL$+H4^D(gtq7eJ!>RaBzkaBenu^ZH z9*vfCib$14g;U8vYEz0L)HDk4=n-+PMZYRjDFqA|${vj}L^he)>X??EUAndao>OmtG@dc6Gq;HMbqC#5>1WLYgfa5y}P1)ual^utdHy*uE9dBq4F2y z^lEa78!Yf~F2#hRRe9`?w0)t%0IKGMapqB7aN)UEqHpj1Sjln<7-|VW1BMclygy&S zke##opKU>7D8Q~zehS+YRlP_P$bnH7=aLtF{1IN9_>={=zT%<_kioX#)r6vf5ZeD+ zVEEdsnRssU6x3?a20^!9+_5J|Ra zDw+8avq@_h4-AtT!n~Mj@o#_l8vWT2u6^WARNb`!M>TAD+jXa|v0xfq&GWF9@s>V# z?s=qt|0718e;(2Zh(m0VYT%*;Wr-!NmnmQv5?AZPC%BJ0U*Wzz30Uxr0z=y4?1TCZ8zCn*2bpPA z?2WmF*)dZx_OfCPrPx+E@=5PYi3E}T^)lRi#$~wjKUbqi_fxSnKd%HB%JIZ&4D*>W z0Ye{K(LL0^z&|xHTj7UdP6;V4p@3n8P9-5u7fYE^H9d^?X3fGgnpggncJWWBBEgZ}H!I?&V4#0o-)!fAPl}dYsXoN)>LvkVH_m{TVP6 zMdBGnzY~=<1csJN=F?3l+mtd7MY&^Z2Gh3gho8U2WmjH^qfY6F-HtgBLB==So;!7o z6qAriVUvxdRexaNw3jfS-pSA1F$&cgjwe7Zsp?UbQAhzL=M_d^Xd^b&oTHnatcYKp z1T1@r02Ea`Q#0I8l=e4_PlHfqRop`_%@4m=jB^=>!}3xp&GO-djyKZ4YhbWD3;5=P&9KL+&dfnyG9!_YL;6w*sI%0Z~6lC|1}?x^tc z!)Wm5Umh4n@(b9n(tb0hF%&Rd_}y>lbKPxd)2lD4wQ7lIl?>F{u`z1WGdWsJnN9)= z7@E@wfuW{*WCBzi1BUAVf&^vi^WT<$xpEpHI-9!sQ5MM_4^0 z8PnOHjvxI1<9H51>%I5pR5F3R_+CKL6~|~B+fB$OVZd-T*T1~{nrrd_l`nZ!zyUo=LDqI(da0KnEXRGaqG)28Y%g$`?YmxqeiKaDjZ89oiW9J zm^}w~4ZIxlpC5y2ltFTv(CE@MhB4=pA_@=DOUvn%rn0#%JyVhP#L^POqJ{=SR(lk# zl$H$tLjjVWh4~A=#MJ3C>3mWH!$uCL^o$3Fo*P6pPt*8q?3o+17=K>(RHjM_B$5K+ zN6G=?b!h=pEzT|71?X&YA;Odqy}EVA&W*V~cp(RwbT|p6QRTy_=K^;8$!XM}5a^Wh zdLr|_Exc=E?R~?18L%Tbi!cskC@r0xk)v0D+Qau2e~-==-h=@+4n|7j21uz}6B%`D zpbDpW3H2x?-2AHphVt5w=8*5?j8Acp;cB=aD&#RLbz~x>*`T7>+@^q+>P4C`NtkRp zoxD4RjubcCj@=0K&$;R{q}Q*BNCvfusa*PV^%|^Lx*W@X{f$)`L8Bd;qaN$sWFns- z;Hl7-zSk&~S_D<=3NV|XaK)luaK8-`&@epTzRL(pq0OVK|VP9H3D-|z2{{kMm`*uA4SdTT?HSCR|0a50dmd^u=g5qI zYP`M-e(Ubq@LSJR@>?|$HFMp=Hse10;m_;10~_ud{;6D4}OL%SO+jwdED+G%a%rXXI%rRG!qBTFf-qF@^hI_tX zr#MC*KepGsx~4K!QebORU}I87$0+}(DG7vWK14n&rZd}eu87s?*p9g5oIz-J$bnoM zi~vL(JvD|-T(C{>>HxI{C7SiEne}b<*`%LjtC9l$ia6FUYFC;)0GB{$zXr4_rnhej z9eU`rCiGTJFWmrVA6Dk(;^hSkaruK|an`U~5KRpuvvy5XZ&Z)=%v@fMvprg9!Y2m~ z`HQbqzo%zwo6OjR1qAI{QN%P^G5aq$NGNAq(Vb>P0j&D=7fc!bI6ioM650GfxXdbNs2KlH z?y1r=E9{LlqM`N07<1)Fv}&*mz1Rn!YVCT+CD@chM~LI*FvXp~q59(jIYlzB0){LC zlS)xui8N#$i&%#idWHa=dJ}eyMYJ&t;)zGcV9fpZ;IohBBa8NyMt8|}-XmI)dnHYG(^ zH!oc78!)5>K0^D7OfG(yy?zzmnfDgs(T&78w_S_6J2z&7V$-lPIQEQZQomn920l~! z{(;)J|Bl4cN9nOnpUH*eoSaex!*lAfODyJcIQ(JvH`Z6HD$G-@&O+oe0PS zn198b230CnXcfwvB+9Eae!iLeA)dYSLHsahK2EvfQXG0pCnV7W`gg`>eP`+`m^bNF ztov!HJ;$^`%zu?8^>BROQ_-$_7ZlO#DwpU^l1m^}eM*R1O|7Qn1Tf^}^U#kT$tRr9 z9RUXJmUp#6-lfEVA-fyWqnJz8s;{O3N7+{A$p7+VApvZ@pWxO2F6)pbqWvT5iY60J zjvIs5rcTEDvu9brYbgt)VRVWB(wg@PSSB(h6c|46$XHB!Z92~4^g)Z=_vFAP%*vz3 zD@PwLviG(L3{@ej7LA^Kd$f^A?1xo4aZo

8qISKrWX2ycmN9^uPu84MXESTM#da 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

lXCVs^emW4QZq_G=H(w zuO1S-W%Cwj%GfvcHV%=izF&mmCrRzL>7)VYov8NPcHy1e571@+_R;}%N!b6*okf(2 z@e}z?&@$|xcQ|-I^*?j48noSrj33z{jG41_x&Js$NfoMLhiWUr9?_XjGElZMJnG&n zZc;``n$9};Jhf@FIb$n45HRTXEpbdh>0Fe-Dyj zcYqLaJyerBlJ{(w#gdt{gzB^m@2)gFfsKXyt?sj_>6Lo?iHG#yJ$LBd7lvy^y;5h3 zQ|a>68asTH-hA*WHEY*iCth)>Ho`Wf0*4WYahU$zL4gEp(POPQ%un+e5LnCN|>R)aK=HU5X) ziKW*K3@sy!hXNC{fuW^^$pAx#8gK}T!bS5nYwSNY%fxssXzi*+@I&$VM{b!0>LC3hKTJkXQ`k`O7uetAgONC!cY;x@@zpl3}t*FxeuU zn{X7Q)Rr2?j}NV%*a$7pdc5@Rc)j*{iPP&Ae~=n*A24HfaX;{Y?t$1m04@XKC}*I4 z`;GCs`yaPyhpoHl#A5~#;GY2-J7e>~ps!?6SJu4-0-y`z2cNY)Nwwz36^pGNTBBKC z&DS}%-J#Zd@2QsCZHpIhw(2!$q=p+cQchmIAd!mzrYH60eV(C)NB*b{_0wSg^d?RJPtjC$5D|6OmYv9}wQ;lrzuPpH4cJ zfY%2RoU;;O$WbcE_2jBBFpR3nTkE%Sc;Gsf@V;CT-jY97DZ3;yt4YmF(uB9)&~4XV zqoYnaRvq@*Rz>6#E-P50CvUk^)1G)i9e3JULoPp0IjuKRN-nXQoVp16!`0s`(EN|S z(8QO=YTATJsAo&nn8f3|A9u?cELW^Bohe2*6x9;;qDBtQmUWll*1MTS{t zc%fQ<{I1~_s@Z>NpYQ?HI?Jf`O~Mg70qU`@1{kKG3is*dylW2M`OUQVbkoqY^zx0@ zXxqkkrrCQAn-r_P1KO|k?7G!;r~ylJZHi$7a3`2YdKkh!6`dYbv^XS(N+ zCjjHwOt^;Q5T1>L3NwGUtB5^m3#0$LxV2s4W$pDurwGUE{`|3O!2Q9z%*)88um%)D z*D#6|*ccyq=;7+nx@E}yy4B{JpaCJ>8EU^^kI3L37{wo};(nE{H6M1SElUeiJf^rA z;0JDlsw%WpNZZDJI9o?udX3I`;6|-s7MMi3)#h#6sD9%H#Ja`&g!;GUD0V&xxA1Ke zKgXZ6S(1esO!x6wN!G_W6uwN(<+)@k+xdur>bqxOvYpJ(#K{wJY-yumf4L|UN}#1G z!<1^))M;erTC6R|f!uD(%>%z$^6d|5*tn4@v9nJ$GD7lG&b!#|-P|Y|No;mSoZb}1 zFD4RMRhe2a{cAmU-*9pW@2QhdJO%s0iXbrz4xMPBTnFU{k}Qyk;%0KQ4YU~X*qkRB zo63?kt90bS19bU?=WD;c`lumhKUV!j5>L}g^bu|!mk2FIYhlNF`m^4Ep+%|o)^+hm z`{&d)+hb>V@W7*V$dQAwoy)^11$T8MBbmelEJn}l{vT){pp`_e`6e51iQh7kwDGMF zBs8ZlKl?;a-glo;8l|iMSw|@uJHr)=7i!}3WAyrMj{=_3b;4gSQulrK(CRci&QJx~ z5;qG~K?$k#mVYr%UrwB^*Pa=zg`a<^oHot1^TGYq>#+URbko)XO0ckb@o${5JxIUatX$zK4OK8?%al-)TI5 z>DOOqGew8pHn|ELel?Irsz#JeI z1Hd(lmTUa8FKQh5kT>0RR}DP#B(>jUQ;i=vT4SGkPR%=a(6GxcQd&Lwglz^3O7!f5 zkLinPGqlC_-F4t;f5N^f!yG>`{xIh79OML^N2m<#n#UH8CI&xNUpvrt8e?4s`SV8I z@~A3SlxhF|2dU>SyCX3K*!sfoKk7#jr}E!u+uyUnm4sj`g9fmA{=2U}BNg7^8vD`< z>b&`;$_n(sH^lfR9upHE@;?s@;|7aCfIEdd?|?%N*A`oM(?J6VscFmBD#T#b(h#?G zc|g*19xBUxWrOYj@dvJL31CV_HN0Z+BE2#C1wHxVle+Awf2b@E90!5SeEl6gk6Zr2 znV)H!{rhQu0#i5b)&aF~u8M-B$ChFQk|uss_Oeoa@y;}jd-{1zojfTR^lr0nZ|(J` zBh+})R;23V1(3=*a$!knA;7RcP_P){H6sBakb{}|Ap1%nOot+{653=*?b05#9aMsG zaG*Kf-(>9m>scz|T$8d@NGSv%b*Z4qDzGC;hrvu9IZ7X)9>3?Dv(*LgT3MVA==E7O zz%cZG|M5K`o){$hth%zc8i?vDRG2F*{8)tQr@is&uf$eh@u~ts*bq?t#W6bL-1D^e zfB_879>|NKAqEvDT`}CJQxI>Hfjt03ICgwb*6K=K4b;?t`x}!>FYM@m)XFx6$;2qF zD8de!Fjdcw7@+~AU+cBw_R6z;wWB3iM+W1z4OyKjNlk68>zXlx$4bW~twPOPZLdxJ zlayX>O`EAJM?S4a#J%m(ueVB(5auGKYuL1@^6EDP7^0%JrVa*Q6*P8%X@u7ZJU{V5 z)^IrtOgez`yV;*>#BKLz?mO@6*o!Yv*Zq5wc`I9QJn@_+U;?)B=IwRNIcF$?9Lyd& zk`d^PerUMfdFCaxL|S~z)fXtERbvh~CL-ew0w7}qm5cJA@Ny$((kV%fn(D6-jagVn(_X7x|Psk&yRRg?OU~= zP5tG8uvmIMY8&ry@mEJB+Mn3?%@^xUVp#Ke32*?oD5WD_d*e;|cK#ymwf})3Y)u)1 zTQWwPCD)47+NsY{-^6_@^vn1!cn z`Mi00|0%Lq-1C^qi;Hmc@2j4N@23uUAg9)Y`NCj5o3rOvT7H?nnle-4pMD{vz^f#8 za(2r`+WXAo)f?}xBunTZJpYSQ9-(S1U9S4+4I+TZw>jjE!vZ)iy&+*~1s-Tfn*umQ zmGAm?ZO2kW1Boc5ox5oa3~3vGR%jQ_pyNB&WnNm2md^Q9R~|k{cbyL~>9Pf3D?F%_ zacw~NkpwtGhU|~}Lme>u51lT|D5-FB@~CxcUEmgj0mFnVu=V+d%tG%>ovsO}b}qW? z&)TYcS0*L_nUlyJrzZyMbbG3Y`?yU4h1I%W-D+J8)UE;dxfB(Utp?ZD*M8cT7 z`}PF=Hr;8jfWB2VHmNU$k+PhESDD zR1*;&j=s@*T>j^QA@fE)(*Kx0(7A0F;O;Vh!bH;J-LIW`_13__$EX1H0DeG$zp*=g zFi?f5WMCUtZarD3so!VE2;U5GHp`@`0sO=4t0Bp{q9A!xS+hXcIFhPEK0OUVD;{#b|i5vN7c=n zhbm{T#y#Cl9lOvHL!V(nPY#S9unDoJCKD?QiD7Dfq3${VLhan5g^ud6ow{OtT!qb} zLlU?I5Ey1kz70&l&kR5@9IpGbwi@^;Fbn|E_2-jmB)curHiZO_cj%|jznQ07@4ip< zn>5ww=bo)r?b?v8(ScOM1uV+ZMwQ^%hb?P4DfBF*uPb#m@Na6sJjtdm0TeQMuR`58 z?cK?G2-BD(Y?v=O=S($)7gds$(SR`I%=I%%!e=z&*W)6{&@tDSX*@{!b5Ay{d*w=A4pnhb z7jr)Z8si>*T5mu2jJo#NL4&V24~-aLj<9VmHe#yj0nr+7UQfj=DVbP>Urd>; zQMW&?vroHFeKAK`wK~d<68Ky=`}g$+Q3@vhNvM&(&|io(JLKpib@)O1t3H9hBTXE2 z5XMy3OI$b6H@darwZzJLS*$mSp~G$1i^v~ZZtwuZFf^IJc&UaA9i|SQx7KA>{#ncO zQE~!mGVy$JPQ>hNW}sol5MaxCsgz&)A)#>rQ0XwoH7l3t&IfPT-28buki-?PP+Irr|hHVcQa%4!raXyb?xiM%|!8dv)2Rhgx;q zR9kM-6?>A62%fnbhZfQgG5bp)j7dRhu{LUh$hsau0B~qo!?Q|Bua*iRDB+)tjk8m8 zX%&c%4>vH3ORP%v`zN#C45b1%Vz*KSpD4$Oti_6`2>zsZ1 z>xeyjAzfGr6LM}F7p^c6^bf|xM@9R>vARENt$_%kQ)g!GZli?s)hCBd>XJ|sNo2&y z&o97JIYaXnFVV0wF2hV?A00Prn3}g~owzmEQs)&IL#J?FRaNm?fI0UIC0^F_i^PGt z#UH2!A|8aHJf(~b4xfMW84(ul*QYaQ>E>&$P^+d50fjiek?F$DaTNfC6icPyLAH&v zIZ$2sr8Pj^Vb@ts*e`-zP!O&-j$d9A-TllfdJ=%X<^KDSLbWTVSVd~mqL~^rYZQQ? z6U-$UR3ZxSb>`jd3B2BXBbFE@*-5bs;R8Ix`ICS6`**SSS$qncs+isFAaaQuV+!x2Z{b6CHWTG1`2KE{st=)ffB@`cQaJUe$#@ z?{06Wp&Y>atm)G<>`%vP>_11V(`K9CY~yJb-{os+0mG<`d;_ofyIrDoi`IYpzv~Sc zR`T(d3i(5A4DS!My;BhY=I9~ED?O*aF8=FPN&yHJ6ql-g!z``BZXuI!CkBRTFqo)v ze)~%KwVx206pC<2ml6_+Pn|JYS6+9C&b;w*wc5TT>BdV`glFkSxs8=SccI=J`xa{A z*EMg}>=3Xz^bKZxl>lYW7@HtP+b4uHhq|L~1~jfDxah>Oujzxg-qou43qxnK zT~9h*t6T51y>=h4x7v2vjD+VTA+LbJU@ziUD5)d`5n_73$`hz)0sU z=LNjqGo6UokqWR465)r(ENS^NIj3Uj68(A5Q98b7Pn|YkUxHn8KFNA0lQNS|Q9I0=;Mx4 zt2XUaQk2hlO$1E(P1GQ3vo8$2_Q&r~-FQFQUAOr^UIXq6c)tSn(lT?k@Vj}s{F2Kx zXV%BM>e7qUZHvv6f`da9HqGfdWVm25>XJm*tRk{BWy6CUdaD-2hvRjBer^o_AF%r~ ztWz>jF9=yOwY)S*7vJ}&-a$Js_|KPV1G?bERoR+S9eduH>UK~ctufEHiHp_9VYCUBs$raQ*d2#bs{|ni z_Ql>*1Hgqvx_rnPcp{&p-aYqHR=tJ{6@0td-S41805*EjfOn{9i?m?OdgqPTbp6#= zU}rd4_0a-aXBvQ^+cmU^w?fNAHwatthu7YpIQ$zf)*CSN=Y@_PIyKz{K$r~JvkLNx zYirflUJ6_JN>1+M?gzMZdp(w-Yk(nb%l;rhVW z3jp9tkkWY4mD8|+?tAPBJvZ(x9Wi*2h737Yx%C@xlTy@COfQ3i9j%~&VHktF!!J=-uKCly)ct?GSyx|mt9IzVGr6~c zO1#(aqJ%M$H+4U!jXb`Aw?o}8p7)(zdGUFD@#)8U>d^-YBj^1QSg-lE+Q87f)-cga zw^sbCIs3O=eFk1|>{wBIn@1h3;TU!!UmJkGfLl{YS9Jz64DPj&Rr_@ z88hFTN)-BWs^7MydJjBAy^-LhHmav0RJ$nzB#pw?@XWQ0`_XL903-s7_G9*GvBc1% z9=;D?Sb>d560sB=>^6t@Tl(?GdhFuMbU5J)&LJRoG7<$dipU_H=Rr9CzWnrM{;zZY z{ayZNjwGt11{g+P=610`cO}d>nY4&*oRT$#%52z>epZT;A3@KVR6RE8CA^g<=>QxA zPCflp&Sl`PD1rn%;WBakl)w`89e04Wb&mg;%Kcye5Zdxb?dZ-F|NQN4Yo8OZdr3)j zfoKJ(4N(y;zZ6N~Cv&tM)KN;? zsJU{nCr$+rwrsU=Q0cEhHB18tE)c+&@mB;3qi6XECToL3A1g(w>llOeh>7a-s-*<8 z{&doGjk@>HZ3*q{8O|&An*%P-@WwYNX>rzZPg=Kv%}i#xNjfj z6K>7E0x5QwWc)5kvQ@iP$#!4lTX3`XvmMRCfYCC|lEnr3@TGS&bNn=2ddXGV3Q6Vi z6^wh>*8l&O2w?rPyBMC;F40!pPCgRdJr;O)8A%IKnNzWrna-IpU8A2Fp$_fa=-jhT zR~F-=MKTbKFAw*KR(vn-@cnB)+54g=v+|pl^#Tl|PfYx^^v^KbsG1Kgp))Q6;9PL& zpRs*Q(am?;OGWvUQmgIUGDm4k4651HCsB&Nmw*w5D^WJ|s za)7qj$P&(cW#9zim`?U`t3cKC(>#}v4c(9Xe$@W!k1&4x^bKpv^&JyLHC=>8h?s|g zchrtBUD~7)NzbB{#d>1obNX`b*V=o({u*?`aj2VMO-v5V#O$S>M(-=B#5Ro9OaLq+c2|qOalMnfya>vl5i%e za_A{^kPeP)RYQ50j6$oH0v46)&YN%3lqplxYnPqXd$(QHqyf2a;aS#FMA8rF-rT?w zKKh-t4mKAuU*Qe@z{Pdpx-r>$Ky&@nsu2@0zn}?7)RLRZ=b5jv;+Z*1+K705Nko45 z8qjw9Rew`Px6az}kb_l3U8j@hxNY0E%E3&i%%Q2E?=s&vv`x&9NPTDH{R9s2@}LYrx~L8`TmAz zEdp)PU-t4JIgCwe?KmC^bD`jKRS#|7TQ9yqn3`+#zJL(vs00$9kxTpwoIXeZ$ z#ZQP!?JusqKR*83E!P_`G=vBhN`=@7C3JRw7xYqsdhtSn@y?n1t**NM@5-v*h|a?B zguy2Gf*C_}o=^Wh7V`nj_z;UjoDgdUbuj;bnB&mQQ?Xe>V4E<+V8}{s>lZL@l>-8t060yz1U#fP6?^hzgwvU zDQ9+0J?5M^ys#bE87qDlZ+o^Emc9r7%zW&gp8^BR#tG%sklo5r{FNM0e$W;hug7KQDa5JHr}_y0T6+Kas+mV z-)g|&2kVfdkDy&)&LQ|Xj!^_eub-aF9zc6&Xb8H=8i;|RAClr>I0{%5XwSQ7Yo|`+00fTn2!pmqH>-nJtzH(gCyjjIQG)W0 zQ4gg52O)KCNS^jeJF-E?^#CIFM2Z?_&)B|BT+btg$<4j6Ep4bhJeIC*;=o1K&i)#RB|GJH|(=|!x^pKcw2UT9 zSU8Qb>0f)-&+SAJkn`EUl>Z=hl}G*K2_be z-;un@Gysw+Ozwiz@WQ$v{+OuOd{HEJgxOBPpK`q_um_w9B*qRb& z8=#}6J5UrN*9=0`lr3JZZ(g6O$8NtzKYa70c0TG59dY5Qq$wgv z_qqcE=5#=BCMxkNW~#n2DUseNqNv0Ze9yozIgaGPd!re4So2n0S%(_1yru*-e@1q$ zzQZA9#Be*z@DkD@{CjH@SQf|(j{h4M?nye)VaWYVCx8AISx{~Q;i*36q zi}xr)mF+Po6&~V=hb4n4NT5rCsE3SZ?sa%qTLNhDn$s-cBB|1aYc&0pNqXyvF&a7i zd1cghVg~zclq-YrBFGJXVZ%pNT1^1!e3ytqqRV`*wE;t{CW6Pf=Tx@NsX$wnm6?nu zH?E~ju3mWb0e$!Rry4nOWDtlrgk zqaBE6*s0HUDy&?iY}9^EQRbRTg19`>GUOt171B5q&8YOUi<9)^)&J0hr=L@+uAMaa z;8D500sIxoCMt?jzi^;ZL~`i{y|UOaHqa_`&~3x>1u;iuJd-? z_1)aL`iR(sI}JEM2M-yf#vNL#vH_+ffV^T%eH>cObOmXVoIF zl`cK^GJ0z&K#Q@Tu4!|a|8}^e&A4}tRe>b8|OFO5${e~vJ z@{%?KgkN~!h1`W^wZOyUXJQ$4Za{z5BQOlr5xTf5HcSCnMBpMt-y+GlJM zd;m!mgP3Js)U3tGYvnr|P(}WyS1E&;W|FGNJh+6g59xT1&Hnsj-T3#bv{{cWwa-Zd zRg#7}#wr}XH#yjVFdHY8ouzmNXY?^NHbns#KK(cBeO?-?PCa+j(96$Lc?(p|;TixW zvzEL{?8O$Z(D>*6sh945M1>2NsuOC5?g#Y^4l0>Auq^)edwuxYJ8IFgwYJy^yOJgi z@PJ;e?>_llZ;lupn85+3|4B{Sw+s?be`6pFx0~D0f2+ZviNzrg7&Jh928W2Bl#9ga zi^)?oo&1_9^B3sBE3QyFiNupCoIjcC@l+0J+H3>m0n1;>JuB_9M!dyj+qQ*AC60xs z*8N$h8lcg_z{8;7cxVfjtYjjPr$>iBqj#o!prI$9q(cS{3_@y44=aglSW;G?EF6=7 z3ovQg!RqKhz3cSkx|27E8Zh^;{DneTsVdVNVWl82`U7+eQ?j-qC7AdaAR@;>Ds|`0 zcj;X`Uw7DgYYjT|0B9Ki0zY;PRk(6k+SI@UcqGy>p&H1zM1UsZ5;c3HV}G>2t_8ON zbrJw!R5#uZ_S6QAK5ph}py2B9c>x&4DrbZQY%c|YoOR9hDkt4t$K84=vrQ{i7xuZ9z7vQjr#xR>7xvtyFA=9Bm>MaacK8A3q~KA@NE^T3p1Kmdri;%2qM^ z+ia2)B8mV`xdUHlM@0reYo@qquz%(|bCYv5>*aU#%$<+xiof2VEjx5(3_-lXyCVz1 zoD5?aK;(b3{3l@O7PO?$RRd0kENBBJSxp+J>5dz3(`VD)(}e^e-*Lws10amQr4pft zO{zAuvR;6pKRT!>8StYjFrkB3#n_k3Oy&Z@EpQM!&?wsD7|_TZP+vHfi4A zMZfO?tyG~(&ZHCAk)s3;lQcxlXPh)tsSQ$f@L9(wuVoW#2=fC^NFmFBSwtE37!E>g z=K!mA%PR|&U7D=%4?m;PcR!?D>_pDG?h55~Zil@`E_NaLL5-VTl%zLCJWravN3>?a zB6ZzsPxTvexLWSAHKP4`TD@|iroQ~TUcKgaGN-iCahIH?jJvKQF)MYL8mL(C=&Y0du|3&JI`M7+2{Su1|jEIlb}76MFbB zmuoA6ucnr-2K2+S${h$7<6B~KRXG--Cj;EGg8E4cz|c&{kMgk%kAVDU8+@T2ORyib zH)9oOJOxm=3J0&H*bcolaf+TJ#nrwC9jIZaoUAM+2c;#XNMsUIOkb+v+RS7tfM8&> z@6Ru_`bfBFU9SE4PpLce=hOfojsZEefG1y-4B!TbrYHU<0S+C~#8MgCGcUsq_{OVl z(CiOp>)`(TYX5$Hu{FbHic8AvZHzS0>DhwRhl#6$Uq>O2{4Q}jdue_UZF}vHTljXs zP*gYOVbq5CrYpp#%WHtcpc_hT280D@vK^wqd{PPt3D|z~^Eo<=Fkt%+JzkAB-%Mr1 z{Y|N#8$5+`2~A~y8FEv5&EN~kzkwlxPRJ~h1UOthZ;|Ft`xO5FhNg~viwHvmAkRor z$KE?>_ahF_)_d%tlm^7PMU`xe)HH)i)@-8WVimO|h<;UT86086QbqS4+o=Z)kX6{$ z2J)}mrbTGNERD7lF*OJ}texPU7}YA45##UiS2Xq2cQtbK7@{hasXh)iB?uOjiR96J zlu!6?mVXBfttaC{`L@K{QAMGJ4fv?{3?@=n|M?Ov#f0mb;g4gF8wH84pib-{>arn% z!}SIXJv(r>q7Er>@AtY1#2rX_<@L98`IT4e^mEQr_nmf88d9x%2e-zGlRovkE}j%r zTD;7+T7_DiiYHc9itfMtANugq>Ds#A4%+2_-dbI;1`=cz4luMgA6z>SSP409Gcz#q zhA15f^ovO|^vrGdYT-wpsTV4M0mmP$yfz!F3|l}4%l>lehkELkyR`VDIof8gzB**s z5H;GI*i!Xi6o5QCm&~2^kw#p3ix$q9t&ZFGP^YZ{hTnaw+3!x|9aGg0FSC749*iUt z)nX#ouK5_9CgNwjP2gK53=a68p??exZL{QAW_|1=zkcsSy?Xyc>e0Bd&OZDg)lUKt zrU3eq_*s%w&R`XSWWxll(gqmXt|r+IG@*BRAd3izmAbM{H9%b^)P<#(GGvf3p@^KM z=>WuU=P%K?H{RBp?~*-%iNQ&PvS~}6)lxz#r6V!4qe3YX#B}c9ANAUakTiIq zhMerg(JNTFf_{Nf3zB8$L{7u?GDH=CCqyM~XD`j$qwNF?N}TftTZFoyeq2RCDr8}eGW)Hb{C zsxCMgb=h?XrEJ_lt4i~O_Q0UenlEedB3^7Af?Jkn(U175@ctHnxWA8w9`!* z?^=Wnb814+flM;k)X$mtp{6|Zrdrf*p-Zp$o7Rxn!k*IQNZpF~rgQ`-7KC!k|5^!6 z$J3+U>|PyFl=pZm28Ilq*i~9uh{+eYWzNU5h+FuO8Ut|exaB6s^5_n=olgGHz%Xi2 zAcO76%!{g<*lP~RTcMAMk9E&Oj}Vl%v4#vg8L1I-6#`usVt^V2xURnFceUa#v@Jn8 zHWZ8ZMRM;1Z<_| zW^;dLd35J;$EjkL_Vf*RsBCG0a**7uBt%JO!+Pp_nWZwKt8@*ZkeFnQ1}esTya0*8 z)6c)4=^uTpmhIZ=xRXv$=k8speQ1@&i0oUV!7F~g8D&&z)@o=vKIWy5hn`b=XWjaG zt$}FpiY9JxJI3u2(VVjuO@3#x9=z{Z4ax6bSwct+CJ8HuW!G?{ zjR=`iq{4!H_;kY%udo6S%bHxf68|Or#AC-3iiZ!E%ouIv-R0T>Hbadd3kdmtM4F`AXEtFY7KOOHblCnMz!yVxYJah)1VyxD{FR zegC@Vu48e#)i0KOnqZ2N;G`nCt3ncZ!;M$#lP_lKtm`jRTATVIreP92&0&4glAQqt z?@-pA?#KjbqBA32_5ET^9ZdptRKm-@{UH$C7F%`E5_04&{Q4^#Q#$L=vrZ&7Raa^m zaK<%-gqX-6{LC8Qp<^cM`;~g?x;r%C$rnS=(Gq4l+wZrh2Ay+?nsjQX6-gx_wNmVS zVkTg47}|r*9af_zjQAP%jP`n`86MAtDP>h;YVoX3bX`n!lT(>M=BScW z%`8!EIqg%VN;WVw!(?_EYz%oy?5V;Tb!A;^AkkoEMzC>fwF1MYPX&bs%f%~J>)ol- z^y0YJ)uuxS4LJdD*lnBOQCQAwCK--V+oSND@;B(NaVj)+(G+G69CEsF6q9{GgW4U8=ipyC2W!dI%GU zMp6JU%wdc}!x0=%0hSgrxJx^0n#Y(FgeAed+0Qdi<5*yEiT)UGd+fDTyMpH@qm4>M zKojo6SR7*avSHP($Jb~-cjq3l?O%w)8SEx`M(EJ|iB`f07bZXcNOog}OLic}XK1WN z(;S_4@|miKw(Wv5PgOerd~UtV-SxJ(SlUFbow+mdig)^Vn-lB|7m&|@-Ybqe8<=NQ4Rzj#%FaX!S=^?a2Xuh~nX&zG)|GlU7k4>Hn zsI6cswPclMjK&*w)Ck>n(b?LPAgWHCXBP)MoTka>uzE5EP? z%&@E5EYWW43Uy80rXqdFCp^gqv*+lsr=L|`(`FhxWT-anxP_W-yfG&hGEm?sWV@Ik z%|@<`_k0S>)C@Xt^YC)MZB%$p;!%O)`eAkDH>m*+ejacl361H*6>m`BI)`s~GKmJJ zunaHrG@GPA(SZH@Wvd8R@_|M@K2qrbfx(9zt}QyWC%FD<)hB4Na1tvnBq%*Rpr$cd zt!`Ma*Di@p6?WCNcc=yf76058w2|ZbSy~ujs7PYyqz~nI`lccQ3@F~?9drfTS9xlV z-kkQCZXEu!n(nxjy5K}u1l^^Q{Gds*jn$w@qo8f}{Vc_Ev8j;9*$O`wdbRZ5`xpr{ z7t^5;H{GFC^A>35{(I}Np~tE?2O7qRbj`}u`gZ20n)%8E&3t{LmVG@h2nIF*81ArU zqpdRl06+jqL_t(fZ*?OyP5tIgRhow6ix`FuQf)A54OgTFk3KWlH?nH(?J+)uu{{ki z=y$Z#(UyxCK5NO;uk_Z4SG7s2&2;|R7h}I_Aqv;=;aQA>`A7_%)WO074>2xb;Xizu z)y)Q0nS@<4I1HbgIM2sDY?x(%p#%7<0vHG97>*`L3)x$-n~IVF{JE8>UweK4Mx14tz+9^LbKI~ zDZm{yg?cf-6PYcReD;kVzTqF5JL@BL-?y*!BP`9v-8-rnHDUz;A=6Pal)@tLEmS7g zFa7izO&K{xFFiawc$B3QU(u3)GP092YST_fo-s^Y9n@R-NcPep9zQP-R!pI6$Ezkt zpWsE@)bY}GhbiPfN@LcSj5_LqBaYCygAUgLJ+@OD0_7%`;p5N17K)qND-c(pJ$H<- z?Wg-!SJt@(0w|+9IftU!XYtymqm@M^()V$`n zo_aZVF8-m=+p@(=^)g|LUcxbKhfbX|?3kkop3fi-&80z?4u+pW7$b*1A-xIjoS?=3 z`1UcK#>@YB!T5hzbT-7o1*S*-l8S62#2+!2xd3-ayGy9KLd_P+QrlydbN{KQ2YXX zz9J@})y>V3Vl{5o4BAeC_E9|3FOmUC6)VI zcImMzjwjeL;vi!QUq*Ja))3G*g>lcJaw=;9wiKk*5y*!Y(yJDIw7H{iKOu#^}WdY_-YA(izbF^uXl`feJ~49fppxzTV% zrMOY)yen1~=<=(s)=Fj*!-%nFuUmUoRS_)N9qRX4qS;6Zz|i9G0Iv96J}a`ZBV@~{ z;g9O!;rHpPk@u>yKCb;Zr#RSb2?oQCkRDwB!{-N>MVG|tkB;qXv05kVBZ7!pA?nO=hjx4VXjE!1!(5Au?oOPZPFREI z?z&5BKKo3k956upbnlLR<06Q}?a%iFphCT{83lMv+%SGjVzX|sE;ZoBvkK7Hm>I?_ z8wTZyrX)EC7c=@YMADe|5GE-_qn>|RFTC`sw%uV{opBCMDFoCtr*uH$jCvlxI1dkI zhsFqYGl|xZnu_~Iw+`n84jZl2{ryd90Q$CF7j+&1K{E?CfCnKTbLvUkYm>={%o#Ih zeyBfRdbx^`5FK^ke%gP}US!oEE+Hz)$~6R^XCzF{$yFI~PE)N<=K7!S8oD-OUE99j zq#`!Fo4Qf_Gb#aa1T}I16>PHKKOc`W4B12jpvB;@29Qy|*+v>M_D$V0=5=Ma+eCc_ z9j1lYfmbn!Z?Q>xHE7T<(4V6Rlo6iBj2ddB)N7 z6OJUd2RHihn4Dz$KCjW2l3)b+^A>C2r(bFGBg6I0)DM(P9Nhhf9jCnyJ&3e-)+2E* zfLjt0%t)!nwS4AJfuXfqW;MYZo4!?rgGP2~nyw#ufwpYhMHgK5SL`E+hls?mobWU$ z89-ZDmTjQTUkvPAO#wf#v{Wyoa>cYE9Z+0^A3})V2$%y4x~BPx_zzM_?DM_PK+(S# z1o{*UUVM%3Z_s9-<~#UV5s;&ef(eDsrUafDYAgC4c3I+>iD!4E-yKhxT%@me-*&T> z{P3LyV_WDHk~Z`3{o?2QR^E>Hd3!@C8w@bCT}2W-p@iAO>ul9%=l2ZCHio6l^0ElWGikyby5ZJq)c2SJNiVd!)+A%w zN5uFFW^w*(6J695P58{VK!lzdSx#e;wv?udc^4wUxa{m)5CKu*T`|YK@PdYjZYzl+;6q~15{QzGh{RZdaIB8102mhiuu%Uv<6IrqV;7w>;2>pTXPKJL zJ0_!K037;TQjB>03t!8fV+mLMfV$;6)PQT$b?K%vQ1H(!!!Iy7q6IM#OGlkt1|3#7 z4rOYlmM&kdsnb5tn;4|8Myh)pAu{?BR5yu%U1h5DC_kMefKK{^S8u8>vwZ@TT@7}$LQ`lMcPz|Qr z=9v_C9wn2IR#gE^>=kR9{#@Ya0e|R|GAmVK-sDj3H0A9H0eo(;-8SmlV|(VB{*Fje8TCDXV^q9WvjtuStd=^kwI`s& zrpqRd=ErYO*O&)JX+Zx&bnMWfTD787830pzAbY$E;F661q`0324A#8yNcwdI4*d*E z4=rp7;gi@lX!N+`T*Q_lI#_#NE&=>43AHfA7gLhl&pFR+6PhRNq)h@)iA;^tNBLF!uaoR`8|~X8ZeB( zjH}5FUPWhdAZItw4@;J7`<}gY#f>*;$31#M25xxIf_@*B`qPHDc)uKAW8+qG*hkro zEImUdQ0SbAS*cpM@LN4T@=?7%YmzRz=kF@aVa`X#wxvip9jyW+>6xJ6F*^crnJGB* zOfbcze>;BQBBX^`FqnGv^Fqf?#}mzVD+QPfXOXD96c6UNo*u2&hd--=c|T~Y-FxYX zQ;t{59lNNA!NIe=)i8oZpUn-nW6pz_Ss!&T`$M4#0->-GkxaDPZ5U4R!CJ-lGwC?8 zVNo&mgm^yJWBuVv|E8307V6YJ`>8J;Ta_hCaX2BcE)^8cCwxs5@Y?Opy`2&&Jh|4* z>sEhu4R|1Ou^mvv%Gd~P6*ZU#rAqQ*o6&o4DFzf|5F@Pwb<+&;qfW*4@Z-G^L{j2FUJ~v+aE&oV``YuVR*W;lvI)`H5rqR5&%Ya zqo#Uf#7I3k;T@%Q?yMd5-OuxDq_=9{WVpWSgz+?x2erNQgiA#QA{6iX8$r$1tu z!n2nxTo_c%83feMBtNz#kEVV14}&Qew{YCbVd?kvJ|>%Gm?I=H9ufUa^-I!q{aKf* zO_O#y;?Tj`dYkTAu^jLB6zuRgzl`s<=@g&CwFX{%pMf3V)qu@$GefX-?(e>8`@nD> zLu0w?l8w|v8rO0gYVxi=9x|w~VsLDAF?cS3#cHRmu-~B2YWS$XCs|_&FpNHhzkwEL zGu|{vKzU!+e;IKXO+wkc_oDCSYS@s$y6~JcG-%-AG?{6zro^Dr?-{^p&7loq?Y{~P zUA68`p-Tm8+^F(PXy`+*Gu&+Jt+d}^hpJi2R)Js9{2N52t?Nq|7&>e~1_WJMSfMNc zqNVYQ7zR)a3BNlpM`H{+n5ic#gHLnRqFY1m`gM#Ys3 z#&H_E2$r$0%p!GWio}X4VJ2vyo9#<1ku6)aS|5&nLoYo11T(!wBZ&9`XDef|DARlId&@}t2n79Ve8Mt)R zh^F?a#LK9SgKmk79S<3x^ybZpCzzw`+*~yT6lS5(DMu{euxIJCnSr5g72(u?Fvgo? zf?orsR?l6iHy#?H*B*TmMhZvG%Twv9RUs|jrkIIr->;Xt_35dMCV5H+^f~6R5tDfa z7A2unVV~$prArjw6oCcLaN>$|z?{94UEIReKTbEl@l{TLXYTFqPeqMf{?#&Fd-}y1 za@@%}VE;n_d3>|g#`M_?1SX{=yeFzzPgaVsGjw{n0OWWt$6|F!M;-20DrFMuKI?U7 zX0cE*d;+K06xx#TLK0;doTYM~#Ak57aGUUl%c_fy^SJ>q8nmUMsxB-v{7n>p6kB0r zPK<>f7M<-R3H5w7yzpflEMFV*qAoo94E65SGt^0Zd91FEL17&*bj^4?;-4jkUV}WM zN&^^HVQ@>&4l|cq?|VpZygN}x9(Sy^-?^s>ZTJ*`p<%<1i#uXeYL3(}ulQKhVZBvz zR?WWZy*^lT!|HRRT{Q=4b(5M0gteM;yy-35%>}0qW@BY!oM?!bFs43X24l*xEd>;; zdGqIzOYux?xA!jUen@YnHOL_Bo0?g)jQA?yqvTEvc2KuMF*42}HT z-<5=c^YMG{sa@CRw&P1oOw}9l&iFhp<7?fXv@?Te5&`l{$w@wI=0}?T{tQigdkSV>D{~ zc;$84LR}9#NGsvZ=KalEwN_rUCLuya;K|(Gu*-2{t@byymD3M02#Q^S7GU9rU+SUr zuhOEq^8yIW#ffC)(q)=E=X0%?H%}Rj>XUbQPi=|jrUPaL_HxcdgW&O{1Wk?A%jF0e zGVx|FCA^r&8FP~~`dA5|)PbuVo7crH9DaP3zb|xMc9gSXsiD81YIU)`9QVG)k9MC2OE$^yvc<17jAGx%J(WRaFET%;DwTfldkh6$`yx4{90=h<1s zPMoDIt(7wn%wJU);`x@6yf}wM8SUD(4)wDVK)hhV0xiJ_(#LGtl?E!bXS1b<>Gb=I z%uF0skhM|=x%F}h7n!Hr226m>AVZ1yoZB(lV|&i*tYmC*G5vyWuD{~XYO`@uop9{Y z+HBKJ0GW*4Xkyk@tlo|tQPy_+zp-!qNDTdDbdpfwx{Y@vYPO1s4XB^vOeo06uu%IS zbdXLs^<T}h)QwL&It%TTpr6Dwb6W{A=!;gI)(fw$@m1C0y zH+;@^2mupT>5_bX`26b{dB^?a$6T(>diGGCBM#D5y>?V(F2Kuahr-q2lTaHVrNbtr zaPe{#FIuUUcrPx4ka9@W-mrNywcM<|s&a`(1=C2)GH~;o`Pr;d&!Im3-QF8M8lcB1 zg=IL>q%{moC8Z=u%VvL}@ps>^=18S(z3>cWl&wPQfdM^(Q&K7_EU;)246+OqorW`x z=bLrqm()PikK-$&zU(b`qIhq-jCZhfv-%XOz0zKdw6F)QABdCr>g#W5;?(JCyXmGH zaL6I*y4|*F)Qn6FKH1lCW2eA!-t2NRr&z^e&sNWtE!Bvqf#JoE;hr@mTN&iQ zOOXWjC(YT8s0>>Y2)WWWWelL608}CoOb$_bxj**~DlXm@7R9>hjh66$Xl4`MmBr60 zYpVy};}2Nks_+tRPOveg=?t$@Yy;|gwj`?vHFASyDrT@-NqDbef4NfSty`%R0jP6Z zZ>%-YPaYGp=Iz>qG@=n0a}P4L(8r)HOXe&daBs6|QCU%;=Dz>29=qfQG*uZoo-ko; zJ8zB#s!X$I%+$MM#_AI?A9*gA4hY(=PcLmp=98u!+Jvw)sr3MeNEx{$Klcxw;qDNc z(e3Fz61{_WgHUQ?{Y@#g8e%{Dq>@DSxRA>A7t zorzUol$bsRy?$sE`i92^6NizBZyCh^gFt-0it_9$I%a1NccGe2%?8E$Vj$z|eV?c! zM}w)acS#P85Ya{q7|rf|ZcTwe{BZ6XEq(8rqtTJ*{+8tVS_9TJn0j&{hPQY!eZ6q5 zjy(224ZZFHwc4t!8Z>LHHC05558h%XKnnNtGVv(y3G3V{F<5v<^esgNYgG8dGTm~* zd0P3^cWS@Ow%X&c0qROr`$jD`Rz5SpDrT8h)0d<0PUWSNA>Pj>&(K@XzD(M@nJOVt zei$S8m~@D)bFZD%k2r^$cJHi0z@cY@E__ljq;`GA#gfIyn-S7we`*q*j(o2hI;EhP za5>NF%hz7hNxgT|e%-fXmPq^IjN;=qeotx81V%|5HPj1H&xr3_w_JZUKwpCCx;@~& z7|CY``keOBCwgPTB+dBbGws-OR}CC=l(y*7DcBtuoRm}*1^d_>2BfO0HO4rU@F%hK zIy6LguxDUYqT?Rw;u6+kLX3C1$A<%nzE(|W-j4Pqj&Pb!jPGB4gLPOjX9&H!`kKIN zs<*sS^W6CPHHR%(XXFj%#NQRYRn5C`|M(WrU_?TkOQi+-KFKq+*NSphYt^U~+E$XfPDrHSR@7&5#5;0JNoe*-R9Q)~wPe?@rUxSKNXmu$hj# z;7oPsflVQkj8!XFk_Dwmv)-Dd*PnP+%K%e$4oo9E)<&H-)wcb1*Va4jpiQ?TYZj(V z_W$&|S9ep^qUR^5l>^@XX$jx!s}PFhBE|fE);GHT#B+7!wRdRGo%dwo4~(@mk&6?< zTRDZI(S_RYn864Oa**gD(YCso+Zv=*VJDl4>bV3BTMj_% zD|pjg|M-W-z5Gv|diGfwcG@X;I;RsSdA#n!srA!Ilb|uKXOdbNI#2MPw73HA7cjda;H- z{D8KB9|rr&!2H%$J3p-+MYgIMkh|iTh3#MfuS42!Zhpm4O}8-{bOJl-`@7sp-1zacwgcT0B^8;b|&5| z9FM_YJRXIJ?(X67^$_+??-SiGx=Zyq#ZIq>Z4UW<#+bg9ZxFnb0ZI;F?O8`Ds?^gj zK3$p3Gqvl0-rA%qvnl==^u=!&Jt6D}fBYW)RmZI2C4G*6#f3#GKuY-J^|vY~uRb2n zebsTBt;v3p!!@W0Enxr{S}Kr=7<0wkA2j9FH#O;{v0DDc*UU`Qm4n(M6K9rEKxWa3 zRe_K?^xR1Y4?R|`x^=`R#vaenOwyqj!u#;>_`P^D-ULxSYHkGg5SAN_Jef4)vd=%$ ztM}fgO5$q0aLeDNWrVH)ARCC3GYF9UCf4U!{!NB8J)Na zu!lvH7A;$;d3a2Y8vT+!`s{NZz(97=sV6BH`=>M*v?C3yTD6qfH>zk8D#cPmt558q z7pYgg-@wPky(TVkPhZbyujq_U5rG?js}FEG2jg;=@_uS#{ToZJMYrCSKicK zy?0jM-n(nlcJ0&_DrmH8aoU zQiBwSGfNL9K-`7_CK+T?g|I<5L=-Msp*yd<0j1RgWCHm{09rNZe&V{R^ zPfDzYcXTM4DpbTTJvs_-_^qzI^cr<+vl(L)qX&E?Z~(@B11^ur>3rk#DU)^Q%{Oc6 z*s&UR<{3Kj)KgTC;QJ2b?tmScJls}JcFqjWQvlu!K=zDD@9FM;+@?vdzpkTBI6YPr!m43q1IIsxN3R?fsvLiPiE&^Yz4o_iN>n1-kY6YqfD>f{z=h z)B(e|EBts_!>-+p5+&+ap@Plx=-&Z2nTJ|>_`!!Wb=B2>Q}>;A*3dJ~B5_7xm?`_X z%@OT&j@e!Wx&nRqhOC4(L&CvIn1!&{9X5V)cx3SB|gsf ze=0sTeuS?x@btcNOGFa~yf2k+u+$JNq#{Cwl#niHCh766`0F`3`r=cy#ZFtPf*x#p z4_{w>&sr}K4T_Ma2Neh`8U!ulfWo+{6mYokyYB(jX=>WO6*sYZ&o)L3+}t#sZA%K5 z0SYI-@Ty*WViX{-M7t9ef2-YkV1t5mfrQ}YsGSNHE!Rs=KCSsPXK5=^+Z|32>_(fk zR5|Ss)phiqfyjA!G{pH0{r3J=`zJ?sFjY`=Ch@mE_~#gnz3m=dIrtdu-Ki6d4aiXs z0z{YW3^7h4WNYAcssHe>x<9{C4bXmohbkKYxkW8C#2%;=Ri_=rJiGpU?l+oEY|5F; z@RuxKj&n*+9eLD|+89-sCjkaCc7%xSX@Yt(Oc?x%?$z!w?jun@VI@(b?U;YmP(XY< zqKJqFystKeMCP{nZPy7F7qK*Rx!|3ZH>qHtR?2)K7vp+ZW@u1{vF zQa$n7o4WPI7jXfl4~#nEm;!M%b+#k z9gS5ycME`&dpLl$5o9K6z&bsW+O3tcBzhjW0Rp5&eT4&P$(V)Qu7p~-b z!=gZNth*S5xr9YH9&Lxi?DX*%c$j$o3&1d(5Z}M%oapNR`)}fr;og=E`hLXp3}DkU zMtlBRN*CUp?}+TPDi~}Fb>yG{+L?HUPLr43n9u;IQawLRyiWBpeglI*E378 za$x#^K37x*$4ihFRApdj>pSt#RA#0gs*(uGSxmaR*Peb(6Gx23i*3F(!glP)KMhg0 zJ$6<)L9#1Jl~+pVuV5DX{@WAv{GInJf5Chmh-zZT{=8$;JXsLvXZyQ7%=_LJ^(Wg_ z3SzaVTuOK!RAH#GiV(YJkRZK~`%EVO;*{Z|H1VDXRUdjH7d_v6%c zDqQCeUt0-}sC_K)%-XyBzUbj%>J5A=Q9WTwWJq^F6!6m@N7@$HuU7t z#_(Rcjj9ssYx}&qeZNi(1R4oF06KD88yLE)0PukQ>_b{e6o#4KEzr=vUa2j~T-Axp zUuhXR1RASUE}4fmZiCbcjhVGPjt=3ri=>9(Mzk|F-;5_2fXr!cOwbE=-lwH=zGD1r zgeNc#8OxVy)1EtM;F%|?W6$liyfmMP7?wJFRD}*P-%3M0TMj5%0Z3f9bRiOpG#pa4 zR7M^eCX-k=J6hKKjeB+t#m48E3{s%Qv{Jrvb%{QlI8D#q^{^g%_!%|IY^25n=+0k- z^c(Pt<~EFxc7QW5v`Y8`Yyxk;@kULX@V1UbjeNrS=P3_hSZtLd-)UgTX9v()K~DE{ zG)-C5%j7r4>w&xP(Yxc{)FFcg>zqsf3@~hfc}o?}Eqn;oUy@%;T~(l}zE3ybaJ_aQ z-QT&FT%_%G+6iDtKzJm$RukKTrqTf3WE>`BXx9u#(Quk~IX-U)2#!Ew`eee*U2v}6 z8UMQ4;`MLzXa|>Sy>m^aZP07$1sJ+>M2y{a5dlMY_5F-0(14DvB;0?vw^U+n< zliYsyP5SJ+Pt{|e-S8yaRjVD=wAO?Ch{R*Uv;4&&$S0~hmok8%ODgI=Gomzz$i~Tj zhbr{%ypFF3c4JOW^yQQfHR{d>H1GYHoX2(8akM5tb_Y@)wL=2Y3`t|N)-9C>ah0uF zqj8Up)ToabH!P?JvW2*?`Ulgr%-hVT#`E#YrBA@Mw`$*jK0BHDfhQ@%3N z?WNM@OJ>c{--n*AD~M@zOrJgRiX)a*xg-3$J(&qILyYV^xoKVb@6-T&Hgpd6JWB!n zqkWx53oeS3pLQblVLk)Pj9DM)-S?&vBzw7+IRFj z{iOIk!q5AC+~1iv$283^goFu3OVlTHVbF#wFL6G65yDMPu7^5sp=P{4U0;9xrM~!d z4zcAHsY!$S+P7aH!p}5QBL?uSY$jVPmj&-ki&audE9&Q4N@yNo+bX|9a022zD$rC! z*-{ekRJZt5YrwS~1H%;e^U&AbpQ(K8rkM5ujOy!q;tl>k_Ra!Ot14gn&*|WB=#Xwu zKuJX~2o+JVyTuk0V;sA?18flqQN%z+6qOQ0us}tS?#|Qs{hqbY3+T+;`Nn(4D|63+ z_q_YvvG&UUde%Q5AN8h2PMV~%@3>KMRhTFAdn)s#O2gX9K(y;IVTa8@^#`t(nFSHU zz`^c3W>`O&PHPq{)r^lP>ibDwXw`RfRj>)YZC;&HtCG5%&{qeae3WXoY#dZ|w&rY9 zMrwMH8l|x#&to%@jqYheDvK2WG|q-G9<$*S4cyr9bwl~et||6A_MHevq$0*N%YIm( zvG~ueUA3;Rx@e#(qEBh&L;(QHib7tbtwt8+0)Q(944-`PA$>J@qD})CUV7tSaqeA{ zHt-4$K%*JC6}>hlPw)8l@ve!B&Lg~oZ$E2}p???PGs55I7{-%%LU>X1 z9xxorvjyyEk~D9@4|?>e2bEd3vQE45eC1`ZU<5@;zsR{qWeDZ)85+(X6L^ycgD$8C z<@6ogk8IwGwjt&ur-Bbe&L;vG)7VXpdGaMq81W|HG+p(YG|{H5c)Ld@#fB$dKw1*I zuH`;$wMVNa%0%yP&3E(k^3%_#`M&MgfnKCK9aTObYdHVkmHb?^ApH9ASUF*!z7??7p&NXK!HWI&hnHsGu5f{_~Z+ zJtw%|ShR4F=Kb^&MkU{9<&q_8-l#rSk3F?Fp$ct>YG<#GzK~#1vB86VQc`ZaEHRhY z5`;MDLrCoYOfQ@QjrbdY8!naq`5$Nj56@!OtBB@XIi7a+cr+3s0tlLN+J-L9q@RD$ zUBiZ{QMdiH*TLP0MU2V~_g2T5b>(_klXJVlpC>`Y1c;zuG2p}w&65C%KA*(ci9;@% zyERKo=Pl58pH9_}pG?!59~bZ_1|V2CA9(zcI^wL8RiR!rl_CPQ>lWu>wVfj7qx~1g zd$SiPcPQyDBbExqhO*mdm!Cep^ODE5*MK;sZI`Bxo2ZZ8d{;N!beB4|?ue&?RBgv@ zAdQVn9_xf-a)&8E9fChV>htxN(`8^dbJFKJz5hA7^roAXitCsn*3CqZS@<8G)@Uek z4)rL?ox!;OiYP75J@pI`#ipqLB?ENP)z{L@IPvGYv0VjR;*_$c6rhUn+67#bu3z5#=-XbIeQdt68ZD9)Pp1z_}P99o}1 z7`&6h`64*{$QfQ6c@&|jKypmsWOgg=1P8(%c*70)e$gTg z$1-WdW-N$ce}@H#d)>+IqreadL$YjGdN$IVu|XOgMWDs!Vm^stYf*4XvTF< zIGb3Ctt;UfPR4%wdh9rMfB5F4^YXQrDBIvJ6peGy`JFFeK7@g7hou!T)&I*)*JyM0 z2K71PSk-E8T@w?NsC==%E}lQ$Nfz1BF#l|2=zXNG`27ZnKA(&@s)T_Wc9gs8$M`q%=FQOyOzAgm&(`AA>og94_|>dgs)oyrUOjtg|88AXzhMLX zgu&&)>28!MFCue~TYsE9isNEjme>S~E=7O2F}k ziLPkHs(5F>?UPk;Y{W;ng3zU=iv}m&pjkb@L(Ch1BKp?8_^e01Y3WL>o;4T0f$wR~ zw6EAGWGfS6ii3|iLS67*SZ~j!K@G@K9S_4i#*%f4JuVA*r@4AAb2MVZHll1O`wWRM z*D>}9=QtVN4=^lzKQFvj#o>m`1()BJ18sIv?xhJsLIwK%#dK zFwe`z2!^%HMkp972MqvANW8`dfd_4F{oPc4j2<~cuVHxd{ySsTux>4kECG!a&f?|- zK=$sG{v5!N7Au5^*^03UE`zyV9%M%8-qb$(%F7xv{$rF+FI4+Z`@unCFtGp?u}Gvq z7){eGQZ~0Lf|9=oE)dw z`ULcCH1eGp_xpV&;4YtcX^wmBoxXQn$qcAae#V|%2Uv7ti%i$eENJ^-%(vz$?@MF= z7O}fCpU+tqa(@E)gb57b$x}Yln72l%a>Hsm;hJ-`v0w|_M67g8Sib;$lDV9ZBd(0 zKXWLeSjd#yj&sp_GGQyA&dfqA#Bwzki|Db4sBb^vB%N~PVVqk_`{qG3EY6?~t{nYm zw;gV~_>2q{pK(CZ3ngctY4>>wdm!9W#q}XwE&F^*OANvK3 zR&>v**fl@tndIO8_6IM6fiN&H4a|727ji~F*P?g%nZW&_o(6+Pv zmvLvgqkiL*+bwpQpXKS_&;nr$GHRfy4iMlrFC@}OVre=wtcD&P`KAWrIR4Re)#U=7>x){7fKr;>Ytm7BA zB~Q8QHfz!cAL;W^W3+AADkbA-qIH*jb@(aAsd1+^Duo$Q!rD^|xN^Q8HQq>s(5vL= zA>wm8nJ8scfRmV(VA!#hU<~-3g>x62MZ*cTSULmCnJL3R)cmi0)FC~4>+nPSC?hSC z^_caQwJ(IiW!iYy7P3aBph{*gTncUW?aY}07=AT*l1@AG3|)*UIk{40N&#bo=dn>l ztjx0jY0s|`m@1iRsloW<*{7b?jA_$#^>sJsj0-P?Gs^16{a$Wtyk+ax`5%-GC8F5sMGFBtrBI3Ug|`4n)Avx$;mzgyhbDeg)cBL@yhZ1z<=on_wn-i{b@@ zK@b9TbFYD+7ZFdc0svexJD0F2cSnG26sDAmf_v8{hpULx4GNI$F^WgB^=3n z&%dVeLr17a^TznP!U<~Uw#q8X1HS=uy||z_>=?>hwr!&xh<_0!rd4J)+q^Cl6{8?T z;46PxppRY}t~H3cPP+MOwd~fJcPHT;(Q%sDZiP|cH^aH$tjn8-44}kZ5_AsZXuE>7 z>-E;dkE;&GFjw^Jt9H1}wk0-j32VZ6r} zA4jGMO9J0vB)LmNavyk9`4c(A4o}cmxrnOL(ed$SXj@hmod3;Q2{-Hq^yKFLvQXd7 zSws|-JqfdSxVj#AkQy{9Pd`VOaFZItP3=ew+2&0f0R}6o zMzu=JcYGEC3LK|8*(?j{T!aI7b2t1Z=N~0NIrTFzbc#tVqHE=U|IiljSo4Qh}`6eY}uu?*3*up%xipB~&TLhSeT##=e1}TY} zIPN1o{n+E0ied%&dYLB7SjFpYl5-moEvl3#!2B^`C@$vTgK8jV}F zf|5^Y)CaGO&XT1WHT3k2S zkUXMxe#&5EbcH$L1<@eSATb^>S3Hz<1AZ}=uU?~7YzS5nVQ0b8Wm>m!6H#_5YM*xP zb#QkUD-2fBSS$mm1NfDVZck$pFK5ulMz%p-xQ{aWn$H`CIr&=bD4Zxe8y&|g5&PbG zM=Y1vl_)>g(`O78&0+DXWMInphGXNm*}tH<2D`q% z0_ie^xlg$D{H)`D`oZV9nR!Xvn@+~s3WX)uHv$pUa4w9f5-+%pe0EV-sOb*5;m)&x+5;IUc zpUL$JDb=KXmlD0dAz{iPs{#waFri z(-T-dzdj@ah8G}8ZUo0L&rBfRVZ~0@*HKo|(ph&|X1t!~7dk{BYc73N0Zj409k*-w zf(7U`KBvkyHWaI1BSnCCIc#eg8oZc1IB_)8-cwwcC2o_>u%ls zz{9Y5_fmSLDnwsE*%}AT?nCDniF29!iA>T0Ca=fvCdxH( z%rH&)eu4%*awjn|tK!0?RN3r2lM$&K9OmM7AjM^KkzB6Wa3sT6OT^n6gk-%HPvRZt zd8>V2mEyN>?9h?=V%VqvfP0>HnhrhwC?%lhSBySJux|Eq=5EkW=7t6(cLsmfnvMG6 z^|5;YsTa5*PJPZiMTZYKQ>nEo1Kc1gOdNv%w>ijwV|I&7N{htp-^#(>3k|?2mA%;{ z!vPul*fUx`^E;ij|3NzIgk!LTUcrtqBCht!Xzo!0;4oNJ8YHp+m#2SE3wW#q?o+fP zFkn-^#$3ZsQcgoH*FzHda|}V7O$NmaSZ+ zO%ma3BE?+4iF^ImnD;}-;avj~!b$|RHj|Dz<3sk^* zm6!rkBR>)DTD*oLJ|2e3K+TTr)b;42w4L#QXBS+uR8_sk4Lw2`PmCir76Dwqg$p|5 zFb4`OL1BD&gcf7bJa_6$O&tP$?x)*H=Xx5_g6%D z;f68~eXlnyrMX3jbcwBuamkZ6-=nIDwRHLUSExzjrrM4%Ra!cFf(C`;#gY>CH#WYs z3z#rpsaqP%nxAIR){_9YDdRs1SPD{s002M$Nkl(g;!h# z$FL=8RMeMwOKk#Jb-fJ;a{;628H5@HbQBR2xiTU27SEfj=K!CT!3i%8dWQC4o|+59 zf77N&EFasHlF@FE{xD$p&)UME&?)HSc$W=eaUIEc4R%HMwTEe(0`#lX?n zr`D;0vskNy-Fq%5RL~k zxCl{!iAIV28jk;5?+t!M>*vf@tKJ9d*bC25&ApojW#4qTjm3!1&EX4x9Bav-ZN(1M zJVO^Ig-PyvY*puwPML_+mVW(>K6&Xi)ygi>trwiDIu$Gm!M7BgrmzSyUTk$~4x+hG ziC%!q)4#0+JYJ%S6pr{2`;NUb_M36M^JZ@I?BfJPIZ$v2YMASudjPFst`~65>H$9X z*tE{+W~|hgEL)~|^L_y+uGD4>Dk|dKw`$cYs)+jz8?01=yH=-OUDbrUR=q}z$cP0U zTo=>^P3E+C^ODRzbMV*)aaGwj98_R$AMX%j*x3(-ERuHRzM;Ly8-_1`LE)}1sk%-*n3Pe1wylDU_4B=LNo0T^-|$EeB!us#0BBYNYdmzBhVQ>juV zz+STI)~}}?y?UxO&Ux$9HbAVVbYdyyGoUT*wJ6&QnK>INh=y&2l#V#rv3+Nu^m_Su z=dobqsWBW#i;g`RJ-)KHZr2tn|@O<ep^E(>m2=*uuinPWwq zH?LwT;A$lxYu^0%TDWKl^Z+h7z^PjGYN}MF3Ujr7n4dLk*H$GqT1mLU@rKgwH&T!S zq+`kG4UIP+{+R3H#nU>87XJo)=BOh4jny%#fXfop9{_*BNjx;e&sh&E7usRKXT94j z#`u;^n?nrRO)NNTR_;~7Wg1ql^(?fnmF0ieHgzdowbqKP)=XR896?@Bcp)3|a()y(>X z!HXTD&z$+C($Nv`+Phbn7uGej+b~O>>=q{*y+W^9=13P56Fv?A8b;ubAr%9Lkpzkw zvJN30W-|s)RB0&l*;)2Of4xN&lPl}wqtDhsUAi;2eJ3JWq-5YyKo;vI;&jt~@3Cxa zkPKKfn=X~LZSkUo8v4QufXk=VrF(bXjXRj?^%?@0SukLx7~HvBcwK{*zy(Z>hl4kd zXekeA!h7%Qklwv@m%(?nn$(}!z#OxRnAM?d+>#I1elWoE)fb-Ep-1-C#aCUSz1p?I zkj8q!%t`KH**3<5p0L)NR#8Wbz2POYzUS!H>#tL7FvD%v|3&ox_nv-1?;SK*Vy?Z5 z#y^*HcS-+yz|bwUOG~-&q7)HpgF>^0|8q&@Oz8iM< zrn^TUb-ecLvcEd)yDxelmEi2bf$;VO6jKN?Wn8mR3{*mU+f%!+Qy9=G;79JdK)XWnbT&dQL`30t^avC@|2T_N|FNC18yAbbfl)rL42Kt z9$#E?u_jD@U-#T}wFW-^uo|>!q5KqXVB+S%VY9y}PfyqLSHRE>;*;E(z$EfQ9upgYTAbr^!=3S+PH8@lmYqgg$_!uGfq@f#OxUmtF^x@(L2w* zN*KMd#8a-S69-69dVr&_#7jL*-8zNIhem*=iNPu)ATMp+tg$fQmJ6j-Ee!=TXl;aS(JJpIqN z00V^o;p6e-LB;>bxWT7=GWyFXW4B*+bL`uX00Iqg%x#MYu!U6sFlA+PgRaQfjD^UY zU+2wv&(lBy!bTt&$pAo%jX?p=`FlOOh)b8R)LQg}mIEADtzDa0(2HCT_ir0k`YTtg2+<;3?pgrAx^-%+X7w6s0AOuczYfMD8K|kiy+k|~ z=nh21bJd%iByUi8YXR|F^==>TobAMRqOr$)) z$;tnMb+|c%J{L~&3^gfFe|!trjS2!{B@?-;WIOTb^Ahy=&kJ?wUH9sU^UqadHq<3J zCAYCib^H}pcf<_Vv;@GInI54>P2T`aM7oA*A}JxiGz|BWwiRj?dV(XL7!>BpDFZIj zfjxU@J{zc^ICx$+Z;>v!>sB@I*_m*xj5jv(-?Q$#{nQ}z*;91JwF6;Xv;efGqQ;cZ zNN4;R0g*fhV*mUr45Jtw;Fsrrq*1%ezHQvFUSmhUsi*F{PgP-_+=gqJ zz4zOnwgJGRo?+d5KWSz|aw?oTfY`*3Ki1>--ltVdm+O*?FV+Q@Tt?(DvlXZX3$>?_ zUFD>K1&T4od1>$DpD-Uw&C&!i0?)ZR2@q&aRuxGu-XByQDu2Ftn4-i0c!LJhREIla|6D z^)qn*hPU}$cW7a54X z6;R(qlzjYIXR7~s{Z(s^+FG-2jlM=X{GBoH0B*j6<5gD&_UNI0#~q7~;NHvyb~_#< z07Qz%V20DjVBX9EHDl65U4PMq>e{`#uDkwv?YYlB+@HYWhJ$YA`26pG&|?ojrWs$& zQoDWk)8)6^sD1YBpqxA=34_-hG>14!#;~RkcP-0T{Gx{*zZb9Xm2~|1XDX#;MFOEC zMkTYL_-;T&3xw$v8X{J4CNz_W`4ZL$`xcC~liSDVeId9cU2;471z`2HtEappXtp<2eWt<>F|rrR?p-5stN($^8vKW=KQQr z-+o_nrcTF6_GYCMR&zM>~g_M$JVRLLOfEfLX}_? z^XZE(tJ2DadX|`-)$pNcj%+Fme9<<-u2B{*qWp|Y?sGG{9cgcmqZl}h&bqxl-rTu9<3Ao?903S}FC9s+As3vYld(_!2=zXG_*`OLXOj`P_pSOlHRPJeq=b_mJ0Zv6(WhjX`;joPN1 z?GXDsfL#{cYs9*YFYC3M&bYWSv8~CsNx4Cx^=KWAjv=XvgoN}x6>*Q0LG08D_+P8c z2C+J7CY1r1=3G{XQ&|~T8U}hcMoS0aB}2dB;M7z|xCoYz`+>f=Y>riLE;A@qn8`Tg9RF5?mJm3`?!MY|devL1fey z;RWS?{_!q_-J8?xywl+;K6?3%9o~L^RnOi+DB#xu_eZRj8wd%QxuUJMUE` zM3#GYKS&ko)(oLPlPWU4pzpPjPUXX4bUbnfd>9L!3D!5nPXrK*jRHq$7@HKY+@f)> zy`c}EeMw!8>Zj8NUZUy^>*%|$zSir{3`VrPN*CUKvzqkm5H{lpxrJKv%?}!mao@HT zt8~H@mj=4MEuKvqYnOqc-{Vb->AHbbQaoeNblTMlV~oO-HHOy{k1AFoN|k}?7wTOY zM3!vI)q6unY2Bg~I{Wks)NQ|BIBL%ipwsGMX?W_$2M`u9rfobL8~QfZa#*`OHc1uO z$eB|*<sIgb#?e#O zWQ!%x-2o?;e9W<>FJ61;c`cs%lg>NsboD_Uz>Q(ftLc8I*~OEFpBvt@|=nv;W@7Q{o} z&zPaN*tyL8`6unQ_dYuP^s{ti-=hMzFdxER%*ZKbVM}KhVNTh&F{5=CaUDD3#s06i z+^VK~w`1qePK?1)%3wERe$0AcZU@28u-h z${91K>4pL4>h6&*sA`K^D$S(s5PbM9w1TawU1PUmw778)>K_*B(2kt<<+2nGV~y({ zWyhvzAucg&|DrtH?l4KRbFx*F=ra_ExSLop18kqa_d#t!H)a15k5`|wP9iRDV|_ny z8cwmNYv#w30LU9~!()+zRKI(Bo%)w6)p+kc(f`5~0TV6+gE#Q!pL@h2hy=GKoTU;L zyCifxauCC9#Zvl}>;J0DAbdx4>#FMLU)n)w5r8wn7CIJDG6pC$6VduNRE0_ej*L0V zz69uGhH_Az{`D510o{hNv`afir(^9}2E@aCWe*tW#KzVx&+WM7Z_brH_c!OA37=ig zM=;bm`8@s3k;TIHQEGo^j@IJMWg(P38%}dOUdHFd(6%A z$KcFjUi)S<;Ilq!601X!#lIXUvIy9)%-4KRER~g*Oucz?>B`0;N4^&7;`Z4!{pM$M z$#)y<`68c?vGenB>;Zp=Tsa+X*!j(sa!}|-_??ONv@WMxwS*me31B?X7YL1w=fdi5 z@Wgnt05T;LPZ1akCD}=JK{oUoG*JSVFR7wdY|7K%F=O@NoVhycqKj1GFn5_)@se+q zT2)o0W|bfXF+lS+pB0KxW7&$oy|I9HLKjO=KS;n*wq#3=hCc9wX1(^V&iczhbvyGI zRYdJ)GJ4`~KldVJFHz_G^;$JJU~is>lb0W-6|;$2b^jyUf|&V~Yp>M)NAyxI>Pf}+ z598!<=KqW>uo3m9o}4y=!5cwe^Kkavr7X1ed*}^56r1)aR%ToUZJobPe>w3yM6);Q zgkw%d^om|(Xv1i2GFS?);g1aoz1~?^U~(OdM43m)h=p@=@`AqplMmjf3GckER{M6= zO}E{qP8~Z1uAo2b@x0N@VePX6Zn_nndZb|X10VKcgwmsI z=>SVRnm_BbQ+3^yR|TdJr3vK;jpJjNZ#PVT8esU(+Rnb1%u%%evqKI$T<2V9mieK| ztX2zgDjZb)X7uWja1SF=U)UkJVq&S!0d)F4ft92fAvYnwh zkcG?;E6$r+YSEK@32xfBUYA{Q9+RV$4mhEwG8A5}s+0}lMmci;yCvw6*zt~wW?+~^aScSRgXmh7z-=i; zA9F7HhVKu0K@VMZxeo8tj&iJ18WX%EXB+qNJfa1I1Baf9xS~W4@ugXfqNA}n=)rx>294n4Y+l$ckO9Eu35-G(r zuaI>lchfeFeSWAWJv~%Mo^_`BUUz{i)vke#_{SRd=o5HuNYEt@-L2|-Hx5I-QhvN< zjhmzqPd@&*7vNaLx4#&yLN>rNvv;(Is^$P0>2gQ60 z47sX`a1FOEU#HpQXX%UgChN{yA5Gy7cI-ydefzcUxcNpsc<((#BRV9a4}Xsg{Nrkevi}+X>^8vA zlY?#z6XxdIZr75Pt8sYQA4Snl7;P|o(Mbzql}-o)m%9Vk5MbmeXqW zYp%Uso%Zjh1cMX?UIsB3H{;0j!#CfAV|b0a_BvQsGT53@PU|IRl7}4xmtg8X?)~@m z=tGZSr3l~~c&*Mn=iD$LJ^Av=tg$_p%*BW}5yj{|zMsE=9fBoKMpqggzwLMQ?e>hRY?|Dplo3hm7@WWuymukuKrCQG? zvsP`jZnL*40R1L@{u$Pn+q546+mE~S996Ds5RXozOA3e2;=II4h?S{t=nKkjU}yzo zTzt{!k;-l|K(Tn`S`EJGHdST^dB?>U5=*&(O15p}CR`Mxdk4)J2!zMPjr=`a0)Z>5 zf7!L)TmSOs{^TtX`kFF^elGjoG2FedN6YJu%bp9dAHS`d^NL*ydGM!fgB5NK?}}Cc z&rPSW@d!udfBxfIAkY$TDmh>=2pq#0#SP*KHl)TKtU(qb+HFfA^gW4t6WRFYqWY9p zy@5WO{*4}aZKU!lR#I=)u3}UXiqZ4SN9t3*X#>Q}Hk2|Dgc`#6w$1=rbbc$8(Ucq- z$2hh`#Ujo$yf+jeotnXBeDuSERTX{O^Y6P!4VpL6m*|L(9{jx0YgELe|rfqB2;N!6c!4KN0Iu_KPt6As(+k?S(-+T+euCCK*-{Vd=QPpV^ zht;)oDh*YTJS1O>ewmN&(79n9-nMC@K74+9gN(De{A;QU^#~$HWy7a;e)uwf;&_fPf*j2&2{|6rz@dW1>$OYa=OO0 zA)}tOg~i97xZy*C7&b<&!q@LewtUXX-m2{@Q3f77L|?x)mRu5uev*mnpfosvRn)9) zYjr$u{~&Vy^0UeMCi?E39T30 z*^r|nu^7-5mX+OHn^cn=0>ZDJ{iB||{w7_}x3Bsia)_#MPcl1QwtoOgdJ~Ffhuz-Q z@q<5n=xbV!BmXT=|EVny18A}Ox%XqqJ^weGqHqI$Jhz-;KrsB^od1_y^LJRZ!nK{} z%YKHhNEdL|Gv&wsQ7uq5Ov1o`?t~P+O<7=A0A?(}VntX)S5SkvdS236jpx~kWz1`YH^m^A`*BlgD7E*oh@I)<>(;Gmgr zhh8?DYg05kpDx;-t2J{MY4nrN>*vW+bmY|o)c1trH1m^58Z&gLsy3)Y7`f|}Mi|8k zfSnaT{-W1kd_^npTiE{aUOM%vi&dBgHxdSkU+Mk0*E_p$GcYXSM_5;V-fuT3ETgR! zBU{Hk+Hw&un5VZaUZWM?FV?H~KCM??9izsLh$2#eDg|_WM-!6Q-=^3a#TCET?`Jb+ zU0kbDCG(!8ixz79M}+i4=WxlQ1*m}G2b6j1NM_dSOTcepgGNo%3ohZ2{f<`SCQSk9 zl;3?rwrLortXZ*Eqec$byKjxw77Sa0@hLV2ewUNuhNtk!r@dW}blk$-cJKY#zi02@ zGAfDuk^uf|mo3so=bWX7?!8;x4>&-TGAo34?5Lz)7*ed(J5Izd{Hecp8(`>Gw7!tz zC>OAUIPSz#)Ua7gopIiUu;FXtxRae4ZSTSCj-UWn~VZ<#9<;t88$$b};A^MDS( z5FNrn==zNS7#@RlumfpZl$-;n3e{U~v;`8@$GkrdE96|j;q=cY>d^-t)OIWqZ$O9e zz}|-vogpJAsc%`kO=E_S(ER|zqfb6wmjDdwHf<5WPd)+6*RNiQNB3C(!zTi3ybn8@ z%dWgeO`5k1x(#*)ZEG~^EIPSPCK}uDg;uY2MGby_kUse29rZZjaCJN3Fm1(YXn)v`-Rbvyh} zHE*>iVvYp#F=uJ?D?@`7=aJ{0uKf?~jvJs9<)QSy7E85hAAhRJZ@f(ziq(CA$1l+0Yi+LMZ&{5T6Cu85ySq4cN@reEQ z%<+H5R0RCW^4@WMm-~O4*N%J24|e|+aKA@mVaEdFO0mdT+-g-NN7Twik2Mtwa)(<> z;@f)94hvU`Kf>FF4As;H3)Kw&wJp2suN-K64tb{HGNxgRraW({P(-K9J+skJ;26S~ zummL0;|uU(muFTrvJr*vv(9%Cx`xx<{Yax9dO~T{s=+KdO>38|(99WMstK;fE*f~H zGH{Kw1@7307hln|_r@x--X1#r+AGw$dlzjkgy8_g#mTe88*4KboT3=S(OT&>B#}kd zz|hhe)b7Ft-fiRZRVYo-PZMY9!=Yo;sclzXc+RExVkF1`bQ^}qS(Sz+YLdo z#{y5_;L652mE4n;m!qYN7i-qcukC;cO88LDR?P+7N6ubp&2Oye5Xn^2Qxb`n>_gDQdyhN=# z?dR?gFaXBJN-g+twjR9e4!tpAm|DZVq&s*MDQdQ|AAk3RPyXrC?gI?V8ax}nPpPegh0~PHi2-2OeV5 zyr^SOMaS^+NXIaTN#{MB=bu5T;~pm?DlXyt`en;-pgBmRUVd4}o_VIutjWY z8<*uP_3Gf~G~}6Q)aUr45fPuGy-}96HROt=i}cAy<1`jU+O^AYQ4z#^k1z^L-3l2%qmB`B8q^qtSfYNe;&bje&CDqQvLfIx9X6G9m zLa0ENkqA8o3?pdxdq<=vUsYmzE|~GH#tnNN$Dmt+HFZ0TYxZakx0D^7Ey$ODKToeC z!dQtn{R2-rQHPy)jOsM3r%mk6CXf4AUyhrgRX9B@#6qo6*Y;R5pP{{b>`%y0L?{Mz z5V=G^ys4zc7y;i==s1W=Dt%bIWt)cF^PrMetkZ>u_t6m@+M&y6EyZlqK|z(YLg1M4 zU@5+|>=q%kpLI;Qt33T5XaTP>J1Dg4TegTsq&sSW-`=x>pqCMl=q~=kZ3x#Qu7gj< zIElZ`E?UfXJXU`2AJhU20LxcB4h)J+Q0RPHdzZ2cw`ke6ZFX&x1Q#zq8|jk6fZD?Z zvFu-DoqB%qL^Z^4qWwV!svwzAqDYqF2zt=4Rr4TjjwAng@-rjDTtQQEe?Wnp;|%)l zIq0r0`(+XLC#wd)&Mug|nB}9AQ-E5}$FGmk=PwTj>@XH7Ybu<}4hMJB$>*GjmxnA( z`(mm-9P%nU@fkV*N6bf^dzwnC+TnI0Zg3nm1c?nF8vs(JKsN)&kP8u4kn3f@(E5np zv|9(!42NXsb4qT!K6v>JeLCuWje6sKEcWXFuwbpAFAlEzFO%PGmsL*oDN411_C}DF z865H+bN5maz5Bwpty|&5qL#!www1HpmYG|d&KjDG6LGt=N<)Xx{sy;ii@a@khPq|5 zwrveg!Gre?PNo3TZ3XQ{b0|(fn}a(n;|!~GWdIOu!(f0}nW!ggmMzyU*I$F-Nf%vo z-npt?CGtezvXe!WT%nNu=0xnmpZa^Z0fr%lGLtE=eCeRo>o@AuGtXANCe3u)JrAI} z#vla*@D%}pvSv32DeA4i)Qc|- z)~8cHQQID!)%~O+m6M7F3dDudGWgl~IUoM*bU>FT;yDueFACsyW$J+B$*{+vvyipA* zSmZ+d&G>wtv#ufecsq-quhJ4o9mFH9++7Fl_@A4sd*yz13V+LvV>M< zeTm)7_paA`I(RfNAqeBqXMU5)^8d}*@}K_+EdX7$FT$`vz|h1@29L4`7)IAh90M7^ zS3)Q_hn}-wHLEaA%QkLR|C?@ATANndukR76gd4O%xQjU$Q`T%)Uv=s<_iOCO& z7jm{CCGYUZz%YUD(yUy~o;Y1&o_tQ(>o==54zc$;yrLtD2od+jED@Z7Kv zoFIGET83(zs@1KBK3-FTBP=H_@T$ONJot=L)f-?~vt>iA$=L)$0@q*OP*W=dLra_f z9x(Lvz%evkX5F;?gz<|=;0er7HnME)~3g8wxX1NVW3RpXnFv2O} zyz7u0+M0U-fI*5#Eo|WFz#4vOV94-05x^LaF=-C#ot=xDuTX?LoS$cZtFuo%N#D(! zp%zUVvF3vf%rbO}(ScZ9{7^_fvEyXfxj*mMZUYP>KWN_hN65i$Np86L7A;ziFQ(Ja zQrnLEg`JPNhG9cj*5;mUp|?DEy;#IJhK!H^4Czn-Cx-+?RD!~@ z!MP`)E#w>$FAYbm-f>OF;%+?F%J#o?4Ptcr7@Rz1lBRzQ+kW9vtn(_U{SiI!h1gql zTQyZOdKvL>VXYqEFipY0#sq*qF184qwv46~FQeO&d5<+(5->LUa`bze{`zQjuTxhK zU2z%4L7S-_j#Kfa<6W-znDGEZJe!89#>FF62$cO_uX*_syFm;5mgX{Kew6}HjBeV& z@!REw7!dsX*O+pFn-OtG!eb#nj$+?o1=}UV^27g_76>t?p&uq6am5B8Ml5V(eZo6g zOCtb!5FN-m*9aq5np#;~aPoZR9rtJ<(v~)T`=~yQfIRLih2~Yo0eTutgH%*(0*A~5 z4%$|>Jq8rAa`BE*Xe=(#mAiJMCcgfT-o5(?ES!05#U#~g+d@ZNdN#gc4_9_694<>o zR&3FniC=2krxP`2(o_`zD8r^3iBh$eO>j+v`q5!MRi!@GyaZFQq^Z4y$RT;B%kACIH}g>G?&pK zWm&2Ldqhx413Wrk{@CM1n#0XfM~4}7NWel0XwIYGRfZPea;6}e%Z39lW4TSGW90f9y8EF!b0i?V3YW zfSKQZrx%9~M`5&r?tS=vEnB?}4iyfNVQc5Z01dzb-VUQ3DrTwmoHqR!H+$ucVB;9eU3d!d%{VqfewVj!tp3N5=0gOFfE)v z4{(^FHtjp;_>)gnA2^2&hUL&<29yP!piCCiofJl_0cs&X97f1Wuy4FET&(Z;!hA=IgI%i(eoLrE1cxvpO8uP0icvr9JA^4WR{d@qlk1k!#ni z4wK%Z<5~^ssd`;@)$VZGAORhle3Y$2)Cb;bFdv6uPGVM`CXXDYpWgdW=N^2J&OfR* z;fc0ElkJ!^FIbdkR<5ps4cQPWyLTuDhBQKX`rR$yQNL^2g&6I6y8QS*t_2JX;}J>b zBVJ5E65)s>CQsfh#94e~0%-?#23R@h0A^OxCd9cz*eJg|ZoIl3dz|XE$M_I>W`L4W ztumavT14(5t~bvj*9nx(I!jTI2ks-wIA~vhY9O5T3zq8RA)_?yrBQ0yb{}QbtD)*G z8ffp{2dZi3y&WtR9wjcO;VKkv%?@577Gfk>1f8@cOCr8;s}ruRe&a@}iU``C911~s z1+WGU`8=8p3@t`>b^M83G`f7I{issKVbzOY#w4pcVT@P+olV6pSvs5VS?^BN7w>_NPtD9Q=hrC~rqhVBl)kTBt%9at zRQU|n$d_GozK-kHH>~HsGE56kQk3u=T5gv!(b=*Sf9kK@2N;&Mv7-?rvRm+uViSfR zj}h8u>Wo>s`=LjPgi;?}L$d@y_XN7m%Emb~?B=lBFniqHWpD@g&v41O#(Et&IJkb` z=36z6&}+w?d4>jDeU+-!tH;212Q%3bBd0(ZtP9J=0Zy5;0Ug5;uME)(gwpAH$RWBI z1>bh)5jxi7ibYHH$ldqp14PYN+;E*vJ?jjtcB==IdGF0OtzWCz-+rS>pMS0?Q>JR; z+VyJPxeJc92dLY@Jqd}0VlrGY4^mGkSZGRP(7W8*(4(-^>zb9*(N|oqQKMed)LD~t z&Et2dvR`-PYJ;_AE;sqz`mPAKogP%rBCMM>Lx5i@_ zGF)rs{H$t?5RcF|CFp?EZ`Vd`5ALGo`?puUW{p)DVo{u(uZ44e)@=H1^^)b5c0fU`JW)ot~js6RS%{xKY!4Xn$B%t+k=jrRW-qy-#({)e( zbJQ7^55>hoH%>(&OkB?%A`K>bGyNI1CdD03j)OaHv8ozFv%1ip>!w)p<@lLE$LRL zv+Nl?0n04!s@@sE80HE^DEQHi^NV&jXwr&B}qB+c@;D#_S zi?sz{a?f9H)a3Wx(;388?0*rK&R8QQn$t)|MTl~(5NxmMaafNfGqD!__@f@U>u$}Q zG)bp(|2daj1Td`=ys@uCy!|xpZ$1EMUVQbH#6mtBosh=303^~S{t(TQP5`uRTE9V` zjQ?1#4IQTC3zh&%&(T%aT(3<0TV>;~uOd#9%%ybP$Yc`cKs}4D>ud*=fEyaS_Ttf$1PbXk|USUpXFHfc4n|2-WWwc_)&N7+J@<%Ve zt`A>&P1(!W<1?!k{tTmVl2nS#~ z2}No5Z{C(o5X@w??s1?FJ>^){@7Njz?hKTp^XM)|gh8wh@GpiSLx#2fr=Kd| zXO$d)p=qHxhNjbw&g0FzfnfrH5q=&&O(Py1q%HXGz4np&)#!kB%7@#RhV^aU=IvU& zc$rrIvRIkuHzs1#QloVfrPr>i_*AsB`2?;PwA1{-u#B2E2I)^k*}WW66zUiK-T@3l zX%OD9{#m4I>5K2kg>#shoT)0M=@_(((N|-q=!AYJ;Xm+9t=o(bM`ACVDd#9zfuq9O z`#%c|DQhSR`R_=7d&ZYSjdof3qC?K|KX%%nKLxS3`5#3vVuDVw*^(qPg;N31KYa7G zh7WmJ4eRcqd+)f7b(}2V7TG8zmfUW!6qUwf#VNFKbhsP*-EDxO$7|>(4vK@4C=(N% zyv55_=v73DU(Ec5Si(=E$Ck-XDPCFZn$iJQe$GAtJ=s!h$iYDMxng#J3G}%23^uG> zsrzocNnecrNS9o7waz~OJlqIW1~@WM0A>~s$JoX8BCrn8=eW1u)+6`atIAcY>E=7` z(Eh!8CVEWbx)IK0wQ4m&Wm8jeTVwR=Ix|>H;eHlU<^;Hxg;>0$0#LW&?DO3Z zM(fS@N9xw+9#niyf`#J@&}|b)fC)@MNW62GLHn}Q%tY~+INIcm|ijrQu+No~4zRy>@|oWeZXkG9;Fr?1}nNbdq5w=7w%L}Jd`Ut|pw zvg^ZT%!6yV1_PEKXU|qHQC=GD-%*ENaGLh%(KYOdlj4Y-iQ`zupDiHZyQ8|K@|iz% znqIm2ZXMIPvo1OAI5h#3W@EXX0O72NgV$}VR^!79vCR%L;7XLI@)js>f$|pk|7ig> zAV=FPN~^~%nXE8*U& zdaatQOMokAlO;c1(<1RPSpeM3p>m2HoAzpJzNQZwtM^_R&Kgrm7vFY+>h0SaJ-c+R zU$j`?e)fevd+R-ITDBUaM&895(W3i)>T$|3YJEWG5Lv|%Hq(DE0e+u_$6g=IsdSue zhj{clvx8em!FKh5Tgn=0U2q#S+NW(XijHwvC8|`Is(UZHN&7Tzrwh-$gs^^fk=kLb z0pp?=Nn5&Qw6qh4zkB_06a06R>*X5%qcy+`2S;8pDD+)Phz0%a-!!MvsP~J5pVqe+ zoZNTk?P}i!ht|F!^x5ABhF&N^7~JIKes$~b9%=UhhP0>SpC$wD!dArX%iztYR0lupM zaw``v)nkChPjI4n(bbphWPo9%1`U~13=D`whIepGp6qSgG#ya$%+rH3|C{f1>cy98 zz-3or#ax-mYbV#d6YggsgESvEHi_&q^QlMRhO$Ggz?Q{a!=L8P2Ap26eY$s4@3W3k zAu4snR+I4VllDnTOhtkYC(&*8JCY}qcat9IPF6ey3x;9u*CbJ(Qg+H&xUi`R04wzb z!zFy2+ne`S!Rjq<<92;NGi_hnavk#|q3V$P4!`MnpVr z*c)1nxVatv5l_7MT&2{l62u=SP$}$^P1N#2bO9V-(-sr(=Kt}_!_>b|ADw@6KUGKJ zIF5ks3Fuq~7Z8?<>_!ul!j`A<7AS9lKT8WhOH0u8vmZelKG@f+XNJPUUI&PS<1JY0ir|2&STnvl_{u)Ha!x3?GpPZuHpq`bA zp9m2}Wy+i5_4Ow+bpGiV>&V_mYI7FrWkrl-tmlsy+sqgnXPCj^oc@Ru-V&>be{dXN zUhLd1<%ls$yfnKBg5IdnIv-0MZIF_VI@9VU3(+ln2rnF|8vN9g7UO{ny!tuQ@WxQJ zSbpILh&VE5@vm}V7`4g&;9obrKfzxS;4Fm7p%+82ZLDPHE?A_;o_SX5&?&q7frmqQ zJe$&o*o^LQo@K5CGxdOIIA>Q+aPS!jh1$G&weBQ($rN-44m_kM4lOU#KKt#fj7$I; z6T-TQn>TLMf`tn-{91A$eY@zo>;J0O=#Uh{-D56E`uTf9Dwuh+*H_)8U zq#!c4RtIc(p2PSmj6-iMJshq7ke$6*IiZR z6u`Os>&fB;a|UC(Nrwi-)-9AN(t@FFd5^`rY)lFL2k}g+#C5oph|epb=eP9hxf=D{ z%lhHd&s7UoK*s>~+H~ziZ21IqWDp9|uLTfMTXiSG4gK<+@p|*IXHc3>)0qPYs1uI7 zHxYxhLNFv@EFgyQ&ey_`I7Bm6VIM0pF8w*a&QN(KTRGrI65PVXG;M|`KK9xOy^AZYCi`_(CpNT2 zsKk^&zikeF6{5PfVnEe1ck22y3~p?^T#4tH(LSsdJT&h3$D@cOS?Y#&sMQ;FE>TcM0a}) z^Y7@d%RueQGL7y)-x83JWPHK-JV32edU_I}2jd8T_ZaG4^K=w0hfY53=%8B|fla^2 z8AX}J^7Nacx4A`}+^1zP48Q-}e|8IwVbsJ?Q@b-fVD0R(kcn!YhdelgpToWDf6)NF zg1%whMorkUuvMvA6M7^1Z!1=<2ov$(?uY1%)6Ud^7>jJn$A2D5#f1#MR3_i5#mn{Z zop)&B`|mP|ufl=#g?OH?fj^`oERpAG&UfEL#wQa$!|-CAnzn9@fy&wHb@<`vpwt9d z0R#bc=1{uqMFv`kPm56KwGuFMGq|CFi3k|WCx&x^Hm+Z;E3dsoExNSUfyW-E%tl!D z0?OM5Z80@o2Ea@kErub8!>&-ZO)hw_u^JIO<3pfwf*j!PbbF zyU?^pdHO%x0v^V{C+$A;{P)zZ{F#5&0<0Y&5(#uU9ucYCjTIv8Nle4tR)xyi4qYEH zVX{VlF-<9r8|#2$kI@!ylHn@a_^}o`X%%Z#fr}T>AM1Zd{4>*J(`ZvM09ODn5m1Xm z<;Vb~7}{UFIY(1Qysy#3r%%S&a=+t_ClCVe!9M*|`8axRbI3sXNzYIj9;cOjr%0Zn1#}e>nP!oeOzQ-jCMu%*wDNWFO zOhIgpA`_r+3!K6)G^Eb9Xn4(M@A6Q6R{%E^uf$Up0cxj$*)l0_;3d0C;j1bxML@~MYI()vvr5xl#DdY3Ux#sC0707*na zR2Qmc;ps7aIN_(Q6OZsK}G(>YqU zbg@8I;3}R?RVgT0Tc$nYR({HbBn_bfYR{x?priM($UMC!_uDGMwjsZ$; zF@O+}y*=EU zP-T^KRmjH;9ILO-xGv$oSmk3U{av1R&lcFVFaMPqcrcWw-MR(b^*g#THV(>8{O0FQ zg6A6h9uo$*d!-m(#MuWP^r9469G^+7W1^gVKIbPr{^r|CZQ4X_4?R?I=m8e^5x`bu z3<+!D9wrfe_X0M-_A?u^JT8Xr8K_yR8U#XFPEd6PM)Yw z1y){o4~z$cnX)!82h;Blq&-}Z)=Njw@=c|1Q{rKg*q5!{lP#P%M?>y>ME(0;p?-%P zgZ^bE%m*TfFd1k=K+Nj%T|A;6H*^18BW#d>yE+D?UCXZqCL>g2nU(c90$ z)sPt|<}MbpuvVhawr-6H*zRk(W78BWsP)FL%TqmbpIEKzUdaM6NOssGZ zJsT@k^!v~Kcemgex(Q=l9Qx8f$~rZ6%?_bodUdDDU;)U9X_&Cxzh*yo8HB}c*V$&8a zR3Cl8$`A!7>oJA^>g)zBM)jmvvwXQm3>~83FFqec#tB%bm15Z(4+pX``X*JYR#pA_ z_0^hic%Ap%S1pJ!?AVUT5CX_`)RQpeJjh%|b}iPE3s!5eqyw9tcZZD%H`?<$C>Abh zmIe&GNEvl9)wlmi%B)iri(bSTZYyqyxBdw!+Qa#jxqkdZ0og8KygN(?gn)ZI?zz2? zyL_LY3`3iIVoe{OFZ*G2W?OA1Sog;7pu9 zLjkMStHG6yWe;h9x=qX1==0HI^~LCSl(l-D_Uv)6+8=t5+H`7pADEakYwo?Co%X(Mx0}SPGF! zLno-TfamasY0Ew2(FBr@TsVYvfSq>|pVGpp%?vD~0pu1ePvtF8-U7Qz3wS=826}TH zHnk>DWhulQHen;}yl$FTM(517gGR6gY)7(NnKhy&CS-0Dh>?;>XTVwNb;j`__<>!|?4aQ^N<_LNfMjFBNMXrmeT_EY-EI>zVZ2T_++U(O zl1tWT5=Mk`CV!*no_<;NYd2P&mEWBQ_ZuhqV@_n*qRV0v-dtAefBh>e>(1xgKYuU% z_P((2abxU$*UWW_b+8XTHryX6sc|97iPzc$%ASeDam$8H8aUt*?cc7oF2=h^lg5pZ z(pfqN-~|{4>*cbRB#Ymq*js)2Z%g)@oBvclcN<{%4_nP`Pn#E`N45?i*P+Y)y5Y7v zwO{w1SSVK_DjE~aJ0sBH&aR0K4i6J2z#Wsop4TIXm+a-xA&Gfhw@BCeehIJ|BfT~z zc2K4@mb0HkunjCoPo`8@hB;Z=HS^2q`uL*{wG7TW#Xu?MG)Du2x10UJBX<{%RV_$2(UC=XgL*2w?u*ZZD{QR5b zT!N2D%el*rBTi+pw&9}Yvu8$X!thb*cJ4`V46nx7E6!C>2dGH>Q_$nwOeC4<<3H8d zr=G{ME>HWQ>)G?TernXI4Y^4_e)gqaz3)L)s9jCRUw(-?9&|u3MzQscfuY-^7zNTq zCbjhq7f$+0Qy`*E;xhCQ9LkL3E$qPA@w4lVvy)mrrd$4F2i&Fc28Q&zDK#%lfB+^J zaZiDPA+SB1$MI*_Ca3UX ze>rpLNvY2aOaXY#{A9X5d-Fq`dfeGMy7w_KKe(H<#ras0ky1dAl%8R_|L@QFKHuR1-C%#OzdG{VndkY| zeQuoZz2}~LQZG^j0mmEB75oCL*0a$!?A31oL{S1hmmunxY&;G!>%fTcYkn_sOi749 zAKxT0V^yYJzCN;q)o#eSb$--yCJcjL6G%$D)$*@MSrSi6L04j9xz>?#Zvr}kB2eW( zGbAvD98|N))MN}?!02AkQaw|01SM>xHfe(ChJM3Gj4VekJWqz3R$NtNe}CW(`}*4j zcEl;iT5sGIjcxA~b)eTr*cs7>9X(+xdAw=ENxaS)E=`ULUN>;k%Hf@CQV!dEP4N+L(xZA6A zlp~}rJTDql*f#}nvLr5*B9mW(!xJM!8@ej;$tkqT zQnVCt0~sGag31{*P82eveBy|p(oT@y)<7{PVRWLbisx7@5hoX7H*5NfV3IDRBLZ=# zI9C}On5t7B`H0eUrSRw%k*@%SfW|~XM)HXu)DBk!om?rT;LN+Evd9*$SY%H=|0w>X zw%Jv;-Ds8p(m{+W>p0aQB%oRplUM|ih|(|xtqQJ$G}T6>pk=iX3vNbzOH)QhGBOs? zxh(JGKQRH*?*y!dw=P~~qj4uQ`^~p4XODJv^!dbxKB&J(idl+|&ge&sTT$c7*rJJ&)S7x8JjUamRDw73W)4Ym95?xDc4?(~dR`XWo^vmxkM$ zgqXMj&f&P1-axeSlKu9i6YL~*(5-$Ut=>1cGVKHe2{Oe5P!*1W|zVYW3pKF{}iqB%y-x z)w=ce1Rf<`8aK&~KJyIgydQ=atOw=dDBzu?6Vi&^7!=!3_rn+Iqx*f-3OH$xP^&ySao~fIosal;J%1B-Bg}{NkLw2 zIP(B@S}L5<6h!AEAAQbNe!0vpJohr|-=n{W$ph`v32-n!*2fFcfiizC978or$=`LP z^C7xdo28?koRa9CODgcEE5h(QbTp3}bd0_D+|zc{zyokk16MVQ2n^4I^&_kysHd)f z*BQca`#=srUi%ut2fT54i;sh2b@oM<5S}RAjwk+b$1Zy#Cgg?kGe-vgRr~8;3{wW< znhBvy`sa^9EsmjIah{ZjzMQyhoI96L(-}md-|15Z0h0^|N@8VA2zLk*Vyx~ zKW`Hze_;FIX!^*LkF_FV7nLIm2)LV4Bo+x6RH|>aNXOt#q-?H4bn2!=&mlp|o$sZP zFm&!H@OG2}93+|-_pJuYy=~uZvezDc%Dx&u*+uaQ?0OTia+Bz|yr9V1_U>*M-FgFr zV+-3>Rf1(3&dSjl{AT(W_SkR#WckZi+cCer*an_{f~7RgL8O!HNL9v2sd)S^E-OHs z&W;`T5fu=~GKeW7X6Gw+-fyeMe_~giaDttB?9rBsxTmIA`lG~PW``e$Sm1Qh$r?n+ zLGS4;z^!6OE)XQJ6|P+*zSsNMjTi)C5ct_bK=?~|5`>A?3dD4x zN=bV>Bb+j_Nqj1cxA=oG&9kt;O0rSr4o-7Qbp1tp>l=AL%gkP85`=Fz@3B^#WmnJYwg`vUbopFP9&6Fv3p$T zge#h(FTgM2-ksbPn4)bY(WX?SP;#8TgdhnYjCk1=ygkm!afZFm;R9{(Ij36Z1NsmN zi}eR29>zeH-niHUS`WkI7>_l{xAa;Uw8rU=hUp`Z52>YzwqWX9oA~B?wnytucJuYW zx5CYZmW@@m)Tq2~X-yk&m#v!sBY? zl6S)V4IAv8*I&13A5XEz9(uq!v}^9`x_leT$VMq74E^F4_Vvpl3`K-7`DBFhIUK0# zZoJv{?SG(Man1EcC|~qGG|(fXz^CGlZ&KqoB=VRSJ~{YyWTHJ)ISvG+U#N*FYD5#< z^Kn$MA_&E7lnVe2F#T3jLFVq_R&FaSh6qgZK_#7&pboV`d37zqjDmh3g%iw6b%IWJ zB9o635pS}FE``8KVON;|aky;NQXBckOE!Jl6uaaP*IVOmt*i_kL`WUl7~ve!VaOeb z(f|nvS*TwsS;&Gep=-w#<;!=WCego2f>E{Jf!ZTLa_uBnEyYVrW%O9qeYM<{&HmC> ze!j?-&YWlKmaZUna;Y`hyQ7`^yX&m$Vf$OYG#g>LO4+#-r`eyqIo95|{XTR?Gi~@S z*I1812U{HO7bF~U-N$WP+pnkpV?BkEI zM#LGdF4|0EDMcF!ey>%-2}5<1P6vcxppqRBhU!-=#UK!aK%IgBILVP0(^~O^T}lGJ z74E2s5Qfq-260fr#G`Br)zfD>+-&*(UV?B;M%;K`M ztjJZBlF=b=W;qxZDg<2(R=^6QhrB3YDyS~X6^<1e6``iHiU>+Uv&{;Ye`nKQewWBl zBM{BjSciW5*{X$K;~=}94M0+I#2Lf*iPT@jU97Z9@Mdmyjt5kDcjRlfbk1DsM1Y5b zk38I3bm?Hp4Ki&DPX1HmzCvt0suW@9+)GLcR~&DT+N9NhcDdAxr*ROpVnig@fLm8> zvqx{c+j4NbcEzPvTgTQNu{1`E3a8T}qNr?vN`*yIxNhlIuo^}^3^V-*N3WIk1?`|h zP6U0m)jymkVU?^QP+o*e5`^E^U(U0uF1pz6`paMN(|EL{VwfUh6Qy8%qrW>{`@>(z zSDhgY1#i8~=oG$izXx$63SJI4%Mk6Jf63)mh~K|U5h=In$WDtNJ7LJE_#pyJw2YUp zd`|VrJr08fM8SV;<)~T&oIfVIC_?>?x#Pqkn+ftkq(Id0QzsI|brjL0b}6as;1dio ziK7F97k~VNU*2NMQPM;W`VnN6h*JYvZLEess(@>lg8!u?^bOw~hhE+*FIp=cUJt$G zWE7)=iC&JSun1U*%7vHQ!#hYoH3)HO=BUde3=`>-&V8q;lYf!aPjMmL5=}@KB3eKT zh*0$rQ8VKBR9q@lp>tTYbe+w7f0Dib@*7r|zZJxHlKtxHi_LQJw*{4(#vYn&xUI+P zZ`|{**(Xnow9W(i+Nr;}+*d)D;5c8?8!V>{yNhT-!q7K?U|Eo;6NcoFcvfBsf<0!6l_uA>dtZFX#(g=*8g=bt z?f2i;5*yUFIN~4|gV%DKG{xHl#wJ_~U)O+Br2h=+p)~kV+BEY-M46HdMRYB~P}nvB ziOO_z_uj*;S0UEV{f8Z62ja~7qc`4jzqj3wJ;YAD^gLX3rIQ=q{TsK~RE+hKD6kXj zTVlO50z7QC79HAJV|?&d(WWZ;SBca^o+5nFQtzqHIf0ZR!ca-&Ni;1cK^%*d3@d{* zOPo?x1q^Mbjrzzwd3%DLaN@~!{#obPrgeFiLjZ^(EVPp&!5yLrLr0yIA94%@g&$gX zy#fE9ztlfR;~drFT7r-V4gnsPmz81&nT9{!a;(quY{Gl**()PPxD)Z#&2t@=GEP+z zOhV#NYv*<~HGlkz_^MNcp&%X%K9F66*V4a> z?9W1iQbni|C4Q&dKb*oA2O`Z{QL-vheSAb1ilT$I^G_+_i!^-wZQQ&bIDB9)yz;bN zap!N*Q^{iYnThxU>sxf|r2i*~RJxlPh$}B9fQ^b5vPcB+NHqSRIEGbXu|tdr@j8L- z6fYU*=C!SzKu0EIWc@6CC$Dg-PCQh_I#~*G(&j77JQokQ= z3DPrUEh*W$%|_gPzpeQaC)U3@32x#^R*-Uf>d+?sS?cCGPunW%~ z?o1w8Y%B7Zk_Xm^h?8T4p@Zb7{L+inE8H<{Ck!>yNDP1)CPXnhA2|3@LS%cgRD=6Tl%UUFoG^mwy^!oS;Y7U?F`S8i>hqu z=nw4WdmgZg!Xmrq_CHwf!H1e521Xa!3b*E2<(48Vz-oEzk`*`(|JKqPWLd9653pvP z+F1?C#L_2{-lN3DsVoMIr%bhX9(~fXi%RU~bI!4S@jsR&AC#52gb*%tZYsJaa&yGu zP$O0|$t5^Wf%|3bD+YlW1nLL`gtuytj<}kSxIH2gA`%!-7Ux`ppHO%vPykM+A$Ssq z?_OS9hTd|8O`J2&{({t^areD#?}Pgjr?@31ZbVIceg*ME3!VwQIs~dZ z5?fb596C!tdVvsWBHQ4}fsgo5w<1W%McCILd}gB_ddfDT_HylC{%Bne-5-=*ZO`BJ zpv}i9Z|}nf*vW7V6SFf2O$Rq{TL~iP=WRB6h5H;hz)m6RRe2_E&mdlehf~0HanfgJ z)2o$HBu%hZ3ZDsA^DUh2S1?A!C=in42HKQ{))8Dy{Q426c?6EN6ADu7vU4uC-o1K3 zEaIr!*E4z}xKc(fQK*8I1X9%lY=c{V6+HWqzg2S*a4zFr%15w>SiwFn!U3$RfN2DC zBpujQV!-<5DKOZ zhNcXWgu*b13z$l*PVIz0ojC<_`*ZEYYc8<;jy@Q_R~XW0XUQ&7!sIF(qdLt)**?L& zaJ4AdM>>onNF=)6T{%~2+FiNzHNZ|re^5pz`5QJ9*(Dt=FQJwYfmhLXO=MZ=ZCSF~ zCOwN)@rakK^?p6=0>TTn>b|EHumjE~6x0%8g3kYFnl1ilDq?gvpAeY2d$zOVEt#&1b!9}5Ed0)6AlVEN5ZH2Y;Rr_8_|SR0uhuj z?^6*EvvDj#x-o6x0=xb3r>$}CeXULJKGvvhE5yy| zEz+?Dd?7t(CD-4JEVUvk0s@h8c$Uhhe#Y}-?A_-^qDP%>*W7-qHR#;hRd1g8+du5< zS+i~by2;y5$bL?uI+;@Bv3yF5>fI zq%WaAUx};riHEVGwJA)&X=JqyK)|D@3}MC};ppoLFqiSDV%cfUmqT$Ge#(8BT+5|$ zo~O*1%3%S`F0qnbkd$S! zGLv20@y|!^wz-RD+HqL7b;DXMzoH2JlYl)gQEoD@@%B;RcH(n8QrWTb-)rQ*y`i?s z3AKbKa@$%(eIiMd&_k>sw3K{u$q!a3I)gv z6zIotES1-MvCzgoGs5E5tg}Dk+5Uj8dsrfbVI|hgG9GfjlVI%{l+VRoRSzOt?tk0Y z*uxkEVi5TGK|tbHxd`()462js)NizAr8g;*NN~h&3#q1!4T$+4kTYuUZ^F z3Hu#C%rej;6vwH!yo3lSS=P8!b4$majF%yfqc+cuKc!H^xq~4fj*=j`6k$rln(L>L zPwv8$FO}#@bKjg`Z{yBOI)GRIz>|)%!Iz$86&Y~vAaE$!xrO5SR6_^}>j{7BTjZa@+=)0;Qhj2g zNSIoIv_!J*w73*YM>%rC($)6l9rszMHeE5q_%#N5jS-^;UN*#F5kV-%gC8NP)c2i} zO4dIu+WFCscI|BtryW63!jA0w$+UzvOba@WJuu#i{4@kxMEn)2xk``sV^ zWCsr#Y{Snz-%8NG%OFIZbp8t9Fr^}5R!BRE0X*qcC*d);>o>zXgImFs^6q#)QcmRH zd3VeZmbgpD0O3UaBrMY#pngmIiH-~tHw_|5w~Jx;i7$+{_Z}KS{N!(~b>AMA2nTS}>eW_;gV#!;4OHXEy78VJ ztOwS6-TL;joL0@OLAw@~n3aKuCMZwHpq${+Qn69o>6BDl;DGdtQQqG6%_P*Y6HdaiE`=~pHI)*j5^03BW8Azi?4P4vvzitSZU5tswZz6v*+@fHp}UvD z#&D zbA}B(^F*t_8wK47%Jwylz9KGFA4Px)lRF12iZFDJA#JW8e`%=yzpOS5xahvn; zXobC-VGrK>xHW6kR)v8>!QC)cv>sI;(w5!?K^F`>W2XUqk+|SzV)zMn)(Z-s#B)ni&HsOr0XhsCRYSl{n zX4yBmuPJl=pFN16B4^_j5QHU+5s7^=lCo?)E`3(a`W$ySZ&@mqXy*?(#*XUS+pJNp1}$K=;_lf0gh3(!wc^m4H=r8!~f-XT~QoEWB`;!P?! zc_RWfvYt8vKzN>ZNXIY%e~t0Q)%NL_3HI(&FWE&nvOZz(Nr+uxpwKxP5T-zYvY%(& zL|q9ZKmA$8gOGGX1#UTGNtP8;g-nX`R=aFK#WJf%~epsG0~aaB45U z$TA@iZ~fhk)^*SJu9GTeVHJ536dEP$_(;+=>i!zm^_GF!TMA zuV4ojUU}YdQs^cFZhO*$?fE@h?ZfDN(Yb0f>~IoJu%LZHZb3t(sGLM!%GuEdR>4ei z`mWMpB!UnsEw5m+-F5F>w&J@LcIZjRV5G6X6|e`5$FfWozN($QY|!t>j1FDn?AXd3 zn)DwpG%;O-!YotiLdDhWHfumA$tZl67sHi9{GYdRvwb~xfqgS~p{-fC)RxbhXJzY& zQi64HvsSIGRfl%ga<2~7nxOH`_HJ*9ImE3bR&oYr0#a>2zDZXt7nm z9nL}A)1v(z)@T2|)~VZGgo0K7RRitIvkv_`dtv$wv;f z28iG*inlO+#L=YH?3U#KJC|jFsH>wOTwc;vOR!4 z^SIByu*8-vtlPjttU<^2mRDAc2r|Jk>t|d2oE*!*vxAIHDqKOP((#!@v;l4gTYxM@ zDh0SMST;liiWbu**~w86BwD#xqg)pdyuA$EH|Ejj?3+(Mv;BzF)W2VUd*rq|T!-8PaE z=qetfuyAXEHEqz$7JN3>K6qgiE_BTP`S<%V${?atJcc>+K|v&vU^?j6T4xhcTPnp! zCkZKC*#EHfpkCDyz#usL@xRqqxt=RWd@PQkREs1<5@DF0lme$T-aeZ&(H{E8JvQvP zW9^zNFGKpK$Glr!k@~7NOa0ni(l3HA^r7wgWV}KKuG53=IwctX8}p0owRhgLC!TrM zZvEr!)_dQcwuM-_+AYQ7Jw6a6@3`nk=&jmu;NJ3U#|8E9A6y1g%V%G0?l5Cy`cYW0 zL(>o=@i=l8Tf!30z3LHh#2P?KIeAo)tvps$1jryZmF5_GWvyF8ST zWpTTF#Zr6t$%oM~%*RUkV$0p5xoxS)a}U|FmJ{jbQ@|TY`@Jh+f5O)6+EEJ6uGhjW zD?=o!=rlr*2^5})jCu2lwGedkZTT0AY~i#ywsHANCmhp=_u05z8+PXnZLhw4tmEE$ zS@YH{-Q7+?RtjPa#Vsx8{gqfI%F=Tueqv*ve%Y2znPF8R&^X{Bgf5u0*t@IkKj?64 ziymUfo_kvfoW}%qyHY-`$Sbt3Fk+ed##@%Qd5fI^m*A-V_pwIVST)xaF{B77g=a-9 zQ+BQ6vD`5T#31l9fq+(c;YI11fzKcch1_aj3e>RS%jfv`8>4O9{P|XIkM`CYLz5O= zyIH(ey!-f%%PchXec);wkGoSDlUX>Mpin;Wzd^ zcxwLisn)iC9~*MvS=O-+(Y@p@#)%l!%HQ?{hIVkzQMk^Oq8@r~T3v}T4KbGs*XP@4 zBsCkBtg)*uyxR8fzOR*I&{)YjSq%rXoG^Uy+m`@Nb;3~ilMQtuxZNW|38qx$5TQt7c$gCvSR()7x4*RxtS#rCHQe@w`QV~{F-shf z0W(8z-Ca_hBn+t0FX->IA{!JaSf&Sv5vU8{SP|CF1_L^JK&&$ zodYFqSRw3X8LI@tCNd5vFCe@k75Md*eJGzBCo`-qEd?E~Ma6p}` zIG_;l;^tOCAQo)eYAfb0vKd&9Fa2nyl@em98U&TyAjcXZF5dgVzSbS_Nj7nj<1?{Z zrtQh>Oci0piD9^)6&SLlA{8B+^he-w$CB^V`115!jfGhoWn{G@roIjR1W73Qhx#jX({196(4@Z;;&tL)wV+i zYtgo~WfIw`B(K0`kNe2R-2aSiT(;WPSsFnY_B{GPM79;SXv$36uzWd&b{z-^aFKNb zk5!{$;~c?Ach!6Oc2JTEkLxn}HRqA_A_R-_#zPngfa9uV?ewk2wB#~G&rC68#mdvOP1L6mtAHL+9K$hV$Jqs!TxPxZ?~flU z^KeFq=$vW5I31+l@zK!tqmT*bA})1|PXB(GL_gj6m(iu{eE$7rii0e$h+=j^HH9A6n?TeJJTR}bk(A&tP?N)#73gIFx5B;a$hbSs>~!0H@S4|1 zxU`7FFJm=g30YMK(9kjv`DmN$h?qCwVrY%3Sc*X)27z6MfFm(533E!sO$4h2oG48* zS;?X^uFZY|Ms4!57w_yUt?($sC9qo*wqhQFN)VlbTT(J@3GvrIm^I7pdFd6~cj%GU z@sI&llMN1JUe`eMq!7!!L8FG2-H6!itO1IjEPUqEnG!wLGDqzjRh?$O@UFaGiCN(L zN$yLJS`PQo^|6&-F1EKGdd8Md|D3i|S;IE1?2uEAv+f7?vnK6YTM2sc-w-ZzGI5E& zoIC~Gh^Gep7gm**`nuK<;`M-`r~(Z zb2w#ulUk8TsM5s*6L`$_?%d06xb9}6xMbV5V)O{pk*Wbg5m(U_h~U(%9SA0`pSxa< z^8eqHSNmTSvs2f1_=SkVGMsWNDp?BQ@8ml-18*dyFbw{9^Y5%3ssk6Dd#>$?x{`5hM&TfJ(KNf| z;k&FXjomDS7+J)J0}kw(eBY_PCkP;7btl&bLV%it(G$_(#yuTtA4KI-{9?Imz+4=g zmlRyhY_Zp#eA?!qaGiiS<*<`aMhCEqwS^!|!m79ur_*fd+?rYKNkEJ%1SD>#2+WeQ z0tnp%bVSmvs36}mQ_^kb*va<%AMduJ^&9N)3(vHn=bd5on&w(raf!tfhVR2yN86-P z?;<8yZfy_R*UrD?H~0%{82+qQ~>u%Wv83r(9@*;W9REE-`%> zdWWTmmNFm;O9_X?0)nW?-C(HS-th=gh=RKhBwxe?2oZ()#8M0bF$nBB1OjXmaK>tR zQa;60mI$vn@Ij!a0-k^iD3PvQ(SW?bYv@vo6NJhMa#uE*N%rl=e0zE9hxXLl?^xgC z23w~C_qWuRja{cOF)alH#Vp)?Wm<0I##SDYg({RCM$Jy}sa~BcIbjHH47@KOt>K=C z#&9E@h=0H;qAOKwEwsDaA(K=J!S_G>uuVd__o$&K*fA%Z00#<`!Kg`$nBe=I z;tdNAgw8-UC|sGijuM6%u;59Th-RmugbVky1|jN_Z@;oz|9Z1^?%U0dJas6MN3yLL z&z$t8y%ZHtLYDR{YRFyf0FkbHj;7jZ*Z~PS~Ij7+&V%3swY}(ifmYq}I1`ZvJ zwK5z6MCC;rw%RLqKWwvKe+yAd7c8&OvhIfuu(V8~1>oXl^wZDV$1l9*3&;>G`3@U) zoJUd7yM>Q{bMQjnQO04Iv})mEoASzAwr=V?JE2b>JOB72tVN?t+JzVbeID&5C3Y{_ zw$0Kr>uF^IA|PYH6u<>!%t@_^!47~SYb?be5QD&f1p(=ILqiD-6C0Q#M2a|IO5)<_ zf&9^?AW6_ZUL1UPA`Q+`E^XXIFqWe>l*C3dKC^+%TKJXS``iomC7Z}S59rTle>TQh zaNiJ-LTF`zTXGuaGPg5`PfVmGD)q9wR^Ma$nc5V7^gL)4gjD22n{u6MlU;#x{YoN< zjC$-Dn?B+-I|gIOj$QV&g?L9;wgO*;!-iUqg9c#fiNLqs4_oB+7fUK^#I&N-^4WxR>DBs9EW4?G&bz-Jo~E6 zpEAczJMkkn663>qoCLt=49CF z<;(5fJO74%#w@$zFSlD3uInT>S6^kg>4|fVDFubuoziYY7-}IeVR98AZa5!Na%RIO zcIj2uS}G#JGSUaKeyt-47;sIOT$Tb?G~7c^O1cs@%S?x2?p#;k3^` zv%lYQn;n1AnbxK6K9&aYBhL+T{wjjZS?cV@oBaqe}5K-9BH-XNRo z{-n!UiA5NZRa7q{qV6*j>hCrDxitH^gg}n}1_%_Sw_Q*ksGc*!;=U&^3JCR?nPky^lS{P9q{fMiay>C>Xyz;zgT3 z{v&JEWiLDJ%1gMPYugm{1wt(#FpVX_Kgd=|sd#C-)sbY;OdS1P9?SUbx(5M_bXrMr`W`LiQrtebyQ>>9j;*mn#9 zbq)em?9$6X0m3h-=)Af3!^OnhU_&S|VI`|~B6AVX{@?*59_Wv0z6poPdtYT4bG2SB z+^;yBG;5B%_~Ce40fEqVzdqKsH{3CBPC3M8JRH2N`t_|rL!u#}auNq_kV_h-v#$XH z9(00#gzD6$=nt2{bp#KFgqaHv&|TX0?K*q-_qW^TB`fTrTYhI<`}MZ(inrQU9P4Kh zel3R$auNht4HmT3;4@J(3bU6AF448TDJaBM4Z4dWR)ur4t)+EdZ|x$chLD2#r5eQM z+6l-Yzg%%8%b2dP0s^D0S$gXHG_chPiu}>P1z%6m zYfE@f$Jz|hH@BbbXVUa3*oF^dIKlC_M5`(-w#nni+T#!X(_VRTgmv1Z9ja5jWY<9z zJV}ukEFX<>1-Cn;-GngY4MP}K@zSd?e0culSMB9D-n0V`JJL=&`)n(PomS4v7w5vYTc}=kJtnLjD^+WoFbP(VqAM@ zX}W}e@+B5|13Xcw5Q4lfy*IgfNWxu0DW2)&+iS|`_wBt0pSB9bxu;%xxeXjP#0q6R zL*?QcPJZoed;hM7tN}j0F1hzl*0^&Ux1#%M?mV}EZql^5b-^+nwHkc3Vr{3^!YNHs zm_DqWRXaDV6#rq>8w+g48)IzMM^mjE{>x4nGRO`@w4A?jE#C48x=zgPvchfdH&SCn zL?L^4xEd4=;*IweMLTsAn}o(bM1}Ruu(Jg?;sk{rLM*W zSUs2s1=~>NK_4&duln?3C-2w)q0&m$k`%mlY2kx^D#J&Fepa0~B zC{7LvU{t2aVOp!)`kH%UOz%!EGnRtnCrAm3>1vr8Jb z@@p8*sc;ZPkB6O~g?WDNM-gkTG|k8ty;1>^!cyON*40>+ZQioMuDSklYrID@8*=W+ z*0y^`%fp?GE6O-Z5dspn-3|@GBD~U3b%cme6G})#zY6n7Q&HSO%`iQaLu(P9kcnPH z6(pJXb~r-dS0Htev6O(NN9b;MxG!U!FIt7*I9O_mbg?v zq(uB>`7(UrwtH;rnl(1`4_8?~l*-eIXIffP6xmDp_0!Aq)E8C{6@%GWYuWaPx@wN$txqXfrX!UW9UyL*)1zkdUu}~DO+(uX* z4Rh}R16Ulp5Ggv&e)JV$6FyS*;yf~&?T!cdKh zB;`|XL|bm;s?$0fAV9 zbR=ZbhGqX;j{X`#fc#LScp37)n8Oi#O6T1b71ks zV3KPgcScU(a^Nka6|d)q%Kru4+ieI#s1heiszEFg8N54gf<5x&)7Ep}es<1<7qbJ? zz!zc2gb^lF`2qY@)g@xcEnN$+2|g;ZB61?pDc5KD$sHBhU`S*bs&i z7psH{bPAI&NDIh#1yii=%h$%scJwk{Sofyo|{bB49Db0%?J zQ^KDJVIkyX+LusTX+>)`*usxLvjr1BvTF2_EjJ9wYHtVu51hLU`ch=@MvrvMTE zh#&;XJNrVTibZP&=Konlh|*5&eq8 zD3zIvG<=UDrTAve7JGl@*Y*Zp3F4a6w|+y8vQ$Fal~Go_m<8l*(6EtZWoNr?p@JSr zLLx#+M3o3cMU&FJb}MAzw^~A#x|L{?ny98IIbP(b>qJn)SD((Zucv-)TUV^J&ESt! zOBUJLx8GvD1`l*YJCS!?q#k$@y=QQ# z>fAX6?a?<IB}b zmaDfK-a(wWCQ)^Pu`A%krw zB0uoZqxR5aPui$=-nIG-8@p$BaSdG@$SCl!78woN0oK(dfRLSP9$y0J517$WZo zK6g%FB?O>$#woyG`>!f=fwVJ|lW9e3aUCJrCf7Eit>T=h5}z$ViSo0kzNEwUTswP_ zy^k~N=`WA5BwRTha?-Ij=+qM}3#ZuAKAK`L|Kky>KxgsP+kS2Rjy;?RDJ&#R?gSxT z^Z-j356M_Emk#96RH9h}43rZL~|m7Zx0GGwD$A`px$3wAnWIy|K0& z1Evd(9b%^s9b^r0sRP-`Cm;?3Rz?Im5h6D-ngqUBia{U-fn9+BNF)#)gA-V@s}X-x zYo|++{+;{=g4BtigsMpz8(0XLGW2E=u`FGRROt0_lWoMLX|~rPhgdgR9yiN1c>P54 zK(`qVSt<^!n>KA`^^hvah^-WyAPtas=D+Njg?&Vb31>MWN_Dtf^^{06#1YheHG_R8 z7s0hGl|^C+$4-3y4Vw(U%KvtQ8#$~JO1=1`)1K1dk5mMX#?~~ z^_axcIFGAN)6V`K!P9%07JZ6`MQy14|%I zatflLbhrfh`T16nzsZrZH6gkTed>1mIUyJS$} z7w89St20BjB7rDM)^D;+i~#^HUr98qH&HKwO$anSz>-2ap$75_*JL zSRQBRHgJn(%|&@l@IMisAd7$mWA37dUN145wV}v~$7<@SM6!^EYDy}|BpDUr;(|ik zv~3IRsMyvSsldpu824QB#(!!bKK7DFFVXyOxc44*>{aL4K1UpYAzgj) z!TAHvNM$BYMr~}6Q{qv9sVQ*B*g{Q8+8hT*odR>+^lnvgfdPMb{4lY zuCU5BE&I+!J^qsS=eFP7Zn@cwXtQ!}SEY&*q6G2jC@GHCOs>fD^Gn_;nk&LiI8{bA zIu8sN!SP6*640y9#PH;`kuTYlNt5i5{{8KWi_b?-oc?H`*HIwQG4c_Opj%2>{dIeH zNxKhWsJE{b-X{!7sO*f25g$&RJjHIj<@a{SJ@;DI?me(jO<}iL?Vn2WXVgQ~P=du9 zNTbdsCU^yHV}92*qb;g#WY+KELc3x9(>|{TeWeyUHYdRtbW@@m;xqP31WyO zM9-LkAmRuVr4>OyL}3yL$!Cz@s}w~T>P|Sh^hgM*7Dl z$|TutkfDkly<9c;{*N}Tm^|C&jr+u=zV*J9Z7M)7hVlvW-md3fcFg&wTeo8mvGQc? z#v$=&pXyRQ)e=cXFo5nkCsCD=L>$Urqf+RLOvaERsuQG$j)Uusir6oabmJnvJ2JsI*u^damg%olXB6m@R6N%~&OOM(WO;~%)v9A~e zVi0f$L^y&qa0KI|&3?V&55r%l3@jJWW`s=M@ zyLR?BxQ4me>496Joy&|As8=0X5@Lj5G{Ap3=S&a=j6{hN7m8~rnS_`)Tk?vCgmNh& z*7|nc4L4YB6Rffz44tJ;KIt85_Ysj?)Jc$Na#w@sG~VSt#Ulb}GH^pMP!hgX%u5k7 zA5Z(p9(ndbYt+7(o%5T^@$Z#P7$}GwfRKn4Zy6ClJPH82<_bjv@kj%~>{4-lrm`dF z(eqBvqd(u9=sZ;Z=#TQdvvCSc1VM?LSILA=;t%<_<*i|JzTGVyq+CQSW%p|qsmw(_v?3rADV(IZ&7ufZms5s1p%Hi2mbUfkS;Hnx+`lQ|l-S6jL+7NJFoHfI=2BZA5+Rx}TYy1O zjE)|}1cYTV1`OqF5a*(&H}U0BwtnFf+JLTfJ$ww}Jwd5nvnF;Rz6lRGaj<2!Y3h2_ z^@&HkWY#?U`tvVs>AVH}eiB4mwKYfIt^0t!*5j}N*1k`7D}>7!=OJBDQDFfJ@R#sW zfIpq`@mhi}5xZ65c50IeTqMo$q-!C0+_9yBm0rP{!{Vu5*sq43W~UE36J2xs7$R*U zAd4r7#e-jpONiDtIA3t~$W7X@|CEV#2q*8HbXy-KsU#)i&WA&A&gP*C1ItVtVLbNW zeYRlUJiFkWb8RSucs0f~;)8w<_eKhg9tG-oScg~i3;)_pIEL&bFiJ=S0aUOEYd4Wh z$fFAMP)Z<%KL6rNyYkxW@N0NAE^H2W3uWdJ`YOqmkB@_t6zvx4?nnp-!(c{9xp`;8 zP*1cQPDX?p57Nym+-e_AonX(5c-)RX|1?6&b+_!M^(`MRn954R=a@qkfE{>rtsL89gN z$6Cp^D{bF4t?ZoR23d#Zx%fi_MslOWA`*`tqx%bTB2mO3?FX4_QSt%loC>ch_7#Ib z3<5hrppwmc5<1akIIk9|mI?tTgMkwCrW5fjP+gN`UwpOPUVLwy&0DkH8g}hwod+CX zY0aB~D{x+q*f$w`o`%{+He%bH1`QxI;mAn>0G<$cP--P1#?ma;R!xMG2t!#1*RWos zvl)&jj9tmr0-HK+qK$oWgypSRWo`EEVI4bmv^MS9S>D#Iwr=HWn>Bs9mv{W-h>MRq z)Ut@GB44YZ1xsUtzIMSfoBhFLTQC*F6o^E471o(ho%QQiBNehh@YGT-jTVU zLi%}ezFBn~72I*cEl|4=ehP3{4Md{y$dE4{F?=E(!smT5$KH7O84OK^*|A3)YmFN; zgX@ZMAtHDgUa0#X;e>KUAWO;=sP1qb?Z`1w?~i(jtS73|aW!oXQ-HhGM(`?lRQi#X z(v<`j>2lCbV1)edzP0PGxYSNLd6=Dl&N+ze<5?#Ni^y*(7*k0|3O&^p7LJ6VzVLQf z=P&)Z+Yp9ACeBu8Sn1DqRxHdS4$Ij^-t_xF*tcue+L`BHV0-oK1=kSn7z9uu?oU$F zu+|c{Cu%U(se!@h7vfVAQRvFry5N>}gG$vPUio=~5eKncY(*7C_RdxF$7_PY|7BFln+MinnBdG2m-Yl0;NvC7Q_wtU8y_S$1l z*;+VIT@F9g4jy#0b=jwzWnB@I zgP1MYvIXb(CAR7-T-dxb*1nqkg>3_mq~YXxe=MgDI)0GVZ{Gra$rNx#upt$Gbxb8r zAm_s0?nQ&6i;zWK(yvOmWXY($sIHo#YTLSelRbFroi<>=Kq8wAvo_7!!c~+@tvK*~ zpr6POT{7n7^CXlssm6d~7(7wFA3KHXldR(s&D zw<5qPvMa8*-1ghIx8q(p?^Y_o(YZDZL5lP-s;jCh>N1k=mwni62t(}#wcwXCVcd@$ z2q9F~g)X%Di@&zBAPSEhJlM`S_k2r62Sw%zRZdVyFOPu`Jv!^uxS;V)MEMl2?T7b? ze&{Gkrs9p3W098`(Yaas-DDdvP~~xU^G;n#GNeTml6m<)F6M zcMJkC2Z~%mk=6rktQVV>9e)H{Go3(g}jr`yPE6>Wb9!DK!DTr`WA+Cy; zYhuIIV=kr>-733bj!S_m;Sx#&Eh}B&3o#5l)-knc{~yeMh(gX1*w2aZDg!}^bC-cg zdGpsR?A?DpYt!EvV=a1hv-57c-f}y(wt5hq)es~Vh?LXQ)9l;1i|vI!-)GCdm}`T6 zbCDf%(h#dh_%-=(O;-3m%9m69@}eRu*_h|~Kf;;*{Et6zwWm{Wyw>Tbwm_#5 zOKEQztrI9D_EMs4!e3h7)DP)FJEnu!OM?qm%`tD)CVTy#FIi2Y*^M{dY^__iC66R8 zc&dPa%_26v7;HNvD$$?d?s(Y6$RS4FA?J^B@k2|m;Gm>dNl)8F?z$E{VCCBWvScy~V;t`y#dWWPONlE|_X!lam zBNKqs#g(jtlb8x8v1lt6%ipZ9_`E{<=#^1eA1<*$efrt3BM!E9jZ*QGChOyJA`2A5 zg=UA!yO4FY;&jtkRU1n&2*e=pJqSSb$O{6Tb(rt?VU=5%H2Y-k0(<4di8g2TYHQiE zyLCV85G!IHC)7)KJ!GkBXr477Vo^FytCPUz60u6HND=^r`E>Cy6MH+V(JU8+oSnU9o;f3kEzSeR20H zfr4RzIExf2bwsC&=&XoO-$1JZ%8ZbRy7r;^V6ti@)h#d}e>X z|7L62skxne*@f1uZ5!KIxEag742UVXUi|GqNKvlCD!R*lZ+rjzk%0e0iT4rx#1RxV zC}wFj#J&IVURW)h5R~$EvMlR_^bvw#lfwRC=5HGy8&^i%=(Lm6Ct-fYNv>5iCx@f4}@O+>hCOn=}KEL`7>KN^GmBw zSix)0I^O#C=z{nQ_!bl(x#ftlMri3wEX=P)*n1kUEA+OL+JazRL{h>-OgT4_VI>2iZxNoNEo+wS@PFA*9^VfX@;T=Su%s8_WtMFlk63 z${;wme7C_`wrPWIBLpMJSuVqr0-`Y3-1-f^1To*BB2h`8kCKzbNe>c{_a}(gCp`6< z-Td3T?SS3~St5RHYh1SyLJ~G%CWLbZ1}Gwq)K}m1M_!ijuGR;^#9`r(2y6W@kMuBV zEbUC7s=30Y0)(u}MQF=4U3qD#O`15t9=_);oBYme*0wnT5MX>{WY+V{<*W+|dnmoc zkTBd{4QB#un6^I%@BE^VyA5F&{f+~+bL74HgJ2OYVdpgZ?J@S!Yj0RLbW|?E7^N5@ zQadc6lQ3=~^oI{bv8z>-oX2pwYo2^6FAVx7x4sfT+{r!<7g!@+=~lBj>soJlmcl__cB4m_CquR>B9|!Y2y8Dn>7_1C)paq1U}8#Rh@>=| zv-m4}?SuF2^W`gubKDNk1HCN+(QyKn#%17`YS=`H#2C)bt#4U5*%+Ll?t$oVyF7zd ztC@5`I(eRS5lOXYJaXI;xnBcEFAIy}bqki*+mAhOpS~~}BCDPqan>;FGvqL9+M^>9 zrZg)q-ex)JIkX?k8udPVjsRAE9r=x)|F~b?PhWI} zqqzbej{Rz17C020({wif;^=A|)rV_5_2ZB1=_ekyez+_8d8XYqt}` zTtyYN2Jh81A~#*>=>XaiuDj0m?AD#Y z5TN(blT1s2E~ZtC%V#vFj-K0Aj%DX6;~7J<6xdwKx4%UHM8xC#O7blRfdm z6E=eF0tzBXw1i7wtKEYA!4Mq&Kn2v?XzNFVrU@=Bx&Y6Gp+)!s+i9eIswXOVUnr)oF$Qq%0bixsb+9ADqSp8)7`IV(?EXa&+ zHY{0OM6DX#r4nOCoN5^c1unJF@R`PZI4Q{INC56SM@1*mQMr;7GaNk0s_wa0TTt&@r$e z565cojdS-wu(BMEORjG#H`dsw@l$N<^iQoEo!vIQx?AIpdstFVCSmX}qM!_M;bd5n zku4vES?EE-#?wYOG7Hq!|2+{U1$J7^`T|=z?Q@&(+S@j7`V31(?WS?p_SSdk(bnUj z{jFj1rg*@C3zb)FWt+FzGyizdX1(*49el;PcEqVCSfiHBoj4O&SBk#2bONQjoXq;- zpmQQkU;@Sh3k}vs5Ruljgum($))RnA{7zw4gj|XB(EZ+K^->$4SBR&LiPLQQ+Y_u+ zYGb?Rl54Dfv(^xq!oqbgi44@nR>{|3#!NsQ3Qob06A-X3a+RVuRC_kBU2PNIe-CHY z6YPmcAGST(w)#K4{kjLW|67Y=gkcCjMwsFU%O%20d`vz3#FMs(=ox>z>uww-!xdxV zq5=}kQVyELNwO5bjf!t*KjK@^>6w1joSQopbU@ z1e54W;E0M*L@#F?<-tAtV)93};L~Z=48xt{_U~`~yY7kZVUA^?LsY(XBVr8^)Y^P# z(FAg0C%X8HLFRC!{BQ_Gjy|kvZ>sJ{yK0Y-jK1nbp2ZF^2<#FBG?*BJjG=(c(-uPn zVMKw1&5P4BKIZhrhrAv=!!5WZw#D5HI(|ykh+6|h8sybDuS8m-5O!MWrPG~Am^yx7 zTQ_X7#VfzFG1KSS>}B6tA)GsLP=`N-!&1vSMH2BKUAznp1_SqAr*jyZ2Z-slA)w-4KbI1YKZ_r`ZZqH6w z9VgrT>9g&zTmJ0$amck7TCXDx#1JOSi9AULB+5<_L8!LSk1&Nqq3(otYaj%Zjc-OD0sS7L_yX}I*y_TWGMVV_U`%+48ph7CLE1oyTP$?m_2ef@g~#0W!2DF6v9 zqL`4<_bNqp{PL*LcE{a!+oe}tg{AVbRuLf#LuZ&3=x|7vL3(9!z8cSh?umntR4wB3 z+u_Yf9)Dh!zNCjE#1m&L7A>}CUwz)@uU%xrZ@j|lx5%}`3=x2`+Lb>;_O%d2QiPVM zM&XGxb@e=eOI_-B&{ltI(TxvZCy#Yo&ja-YapyRP!>2QemgSO0mWt&#;@-M?jcvgR z_mb%|ZPlE)*0WVBI}!b;j?Efd`*y7{OhNnv41KrZ6keostpdPPi-2>cRg1VR+BtI` zEY?9gf}iPkz*|3v6d}fp|As>>#UQY25YWI2bYQg+5t-$qjf;3uU(tl2#+wgRoscvj z8LRFd433_R)uacKOvDmJ>5y9$i8B-N^I3yI8TMmrj?n4mvv$K~`*g-^`*_}$_DylA zHR{yS+U?!dvf#>l95_)nuxeeV>a|Xm=5@pNOOuBpGsj0317s60I3G@L| zyj;1vPpJg&Z!EAy#9*E?=~J8i(WlJ&3Tug#@&QCaYT2f>eLU_%`|QP6t=rLu6PojU zYYt~o@RQ-1h+*|#I)Q?hHj|pG4qw5Gd?8_|87^L*8;Vrn*#Lqv8H2Sr;TLgQDWjS- zCcD@F4}9LhfiB@==Pujb9Qhwr_|8lg(?@IUWo-6C!coab2j?;#K)3^f~-d}{`hi%iPp7!W-5+;cYZ zOQzL2y=i^-!D4%Wz3aPaTQD2}>QS5CECO92rV6>h`I zFWHuTyVUM`;2x{VOt2xBoNBr4njtc-z-pKs8{(f76sVQtTTnaUcnn4aElujWn7q}I zVdCxQhAyLT$?!!;KIkEwl?ZVd{#FiptKo{|ty^b>YrnHK3l`Xn_dc+6tmIEReNL4AbmbPQ?@8l+YU+Tn+5Jq{>CPGTtr zfn9}w#!!IZM6lEnh72r;kzK!cXW~#*goB@XFXIsrg%xp7eo#5_Nsw1q@W!!eN<}XY z>k9Iuv7uxo$Ah)z|F988ZpX*~+>fIKUdTZfW%z<>EdI-=WNjMAR}eaa5g} zk%80d9M{Q{=Lt~?s!M;u$J(UnFVdi0?Yz$<>6mL~N&XSfTu!0Q3J_Wf_fU@YXH59m zW{#U|tLM%~r!fU_cD5C6+3X?vPQBqO>oMeDT*-QrnA_u`3 znEBCLEsj~R{nKX8`xGGxrROdKmb8QnB0z1hHy<2<(MzSBa?%+#VE+T*#3Hn&Y_L=0 zz3p=MfASv$gkc0)f{P&MV=HKyPFbE1p_f_?VGsX!%kOOCnpK3qyTEpVEb#&?Z z$zUHN41Jg}&=7S9c~!`L2qF&|oGf0t)UN%_Z>&p?UUue%m!VIR#Uz8Xh&7YU`?b@R z1VDq%H#AX$HGHGtEe+) z6-QazK`EO<8nTm>D+Kuf6QT>DQMVxBt&V6?>2wwFGfWYxHs={jJ5 z)oam&C?L%|l2HX4FcelS0bRnZhPhV1A)G=~GXla-Z4u$bhsFd#Di|>%E2^L@_!4rfV#(5tg-Wd4}sm5FbpQ7CS_!}F>#!$!a>{}DKZz8mf3sb zKCr8QbA$c|hg9#pY6>NRfYHp-d>d zGzdDb^YXS?C8FdhgeHA?+yq++2d-_;p4PhC-j>m*iDfiwU(3H^7jDMXeyr(Of|IwKM1 z`o$Hvs@h;*d_2uQ8#}>csK=+ILfrPXV=p}2a#}U9Tr8-o*RYAM_q; zT^BV|a9t$~1sA1YEa_baNpCVLXkCSQTkPWV&bGr2KG3;_4Hzfogd=sr(23&k zmyrTuhkpry-I_4eQ1ihh@c86c{8~hL;&6ey#NjH2J$?RVSKxU*$U2@ks>!XqAR~YaD#Fk`i#l&xnI|zFGo_)BvN%lU4z}K97)%}UByq=_;L2w zvyWQGgZHt4rw*~Eh<&zIpTHCbb8!I4k%D1!US_ziS`|r7@oigMY+ow|} z2t;%bt4e{V2t$@UUo9d>_tG8J3RYwPbIy$#%7@31CUYH2F$nA;1fmDJ6Br^g7*;+G zgRvJqzWfe1#A(wo)Obt*e^wMjz#(RprF{*40Tb%yf*&evDryx^zw?eQ%g?ja=FP2r z@7|W(q7^P^GBF~_z%3Shws;~Nu_4WZ7|g;iVGHPw2d(ta2#Gw<208(X&I+UcUv;r4b5YXZj z%2PoG{u1-3Yu4B)_VLJf?N`SRvlGu4jxifiU-IyYn5?{@5A+X_H~YKr4%NXgM`voc zz`?;k5QHKM^+|?%arYg6v89U_*za$;!TRsFFCt`#*~#lfp+mF|_WY-5a*QyH3^E^a zwbUJ>$#=$BD&rykD@1Fx*0YbDbPR+JrxQVHVFbY9-86d2(av`B0Y0xV9 zG3sV`8a%CI-!z{2C;zbo9j~!6xLNgc@awg1t-U?wO?!XrTh_KmCmVX%a7%5RX$5c% zQ?V=*f|mcS0C^*RkvIent1C`(E~q7eOeJFZxuzZ7qZ%1`!QuN1k3NRH6IzPG6h7rn zNVM@(3>f8+54URcrM9eH$6{GxUt^f^^=C6IF|WW{res*3_8sj|7RoMrv}S#fH79UF zoG*cztiTl!0;oFoS_Em}I)v5BjRHW1Iyzz$XFF_5*tXa)27&(q0*qT|Gc+QgWHh7@ z3CpO1X-o=4oHE)gLzBVK#Hyw}(@>kL9#zfzLuXWZ(ynO^$&{MuU1tD$=kx&Lo^1PMWD%dc9iobfX19mRITJp!gAO>ATt!L}4OEgTgm;If)UI zlFHT?5J@++UOG;{*<7SEHj1|8+2Z;0?C!t+)qZpB)ppcj11%drhT_ADVE4fyBcK2A z{nur<{jY7`eF(#FVrXImElsl^X(EzbSx{JybIl?Ulg5$U6cj=PJ~84Yd-sF!cJRPM z?ToX}f%_vp84w<#f?_=KCt@!jmZ;)t(M5POQm>xXwWKacWw4~Unu(|#GNKHu1Qj~3 z8jQJa%}RUYh39SjlySEAp#AMQ#3qSZsUF|60Ee%c>GgpP1WbhR_V|=u%Ku~UJOC^! zs=R+XzK+wA^9)R21{iYANkNb-AczDpC)8Cx*In05y1TOKuB)r4xL^QOkTfDea?WYU z3=B-pJ=4?ib@%K3e*aUq-n-q?GYsr9b~CTK@4NR_x>cvDPMtdE)G0_BHdx4C8&n3X zQ(L-AwWZ$UYyW4D%TGRC=v4k*3g;mlNDta#Qu8xf>1tVaBzH5JZdkF>+Lx`ewJ*ME zFQKbc%IO6M%$jWn@4k!8oIKGcO&*IlTKY|`ZbGO`GZw^Qj}-a6AR-EN(I0zsSMLTv zim6g037#sYH!g{MDy;??N>hv+F~ z7q9wcH~n!X=kq><`ospuZ&hPPTNURS_d-y1LVU{LyB6P7Y$#~p z9O80_Pl=+P5M;uai6{|Am*G% z)gU7bg0>3Pk#ffRhLvlr@r`Bn=q>C}zU>Z9BUx?LY(klS;J$Xkd1u?C+0(5Qoo#Ur zwM-T{sJSVJO;d@k_16QAEGt3c(2Lav{wg@8sidvf?!NkFn|ITLHf_Q*`_vb|WD_S% zg~NzB9hem&qD3mVq3WbFgUMoO4}Ti46$9z@z)IaNhXoPo57yErUVHgP`=@Vy!wxxc zf4lIrpR$SL#yAvnP>~h+c}4S!wE!CRmbi)XhcsM0j@5XMksnoa*a`j%w6+>^kKS$ zWDpU{Y)vObq9%k4E8a5R7cPF?etXpwcJrUEvlA}(pdEPHG1grN(gdVIzei|_G&lz_ zNL}y-tuue<1P~3}!Rfpm`xR|dZ5jRhreOl3?wV9e5u=re8f1dhq>@8-NUxB`ATvyG zY-qIBRckDR9&7vZ)o>7>utm>2Z#`^SIf7Fj4#$Su_7lcn9NXBzjA&mRLqz(_A^@7a z)rW-^CF^4nDUs+}{kTV`PQ=pnt4#5=2!YK)fWGA1K1dfQfWVt{Deq4bBY-c3KT9AC zds#&5Ja9ehFn}(?s_WUI3o*EXUHOl`!r8SCJY>%-US?I}#@p<@_T&8Eoe>S!`vxtE zjl0mLEd#IAj;y!3Q5dR5Y@9)a8YB&jB;jW+<*yS{L>#JIUZQ02Q_4Ki-Pml;J^rNKdFw5<^y#O3^T`>1 z``5NRO}HjVivaZxaw3)jMfBO#hq2Oz?t4<2hdBRYc zksuTS{@(wtQy z!cat^6NVxR#Whq8Y){LWj)8RbS!CBD`$6lAQFcWBkRCer|mng3r7|YgKMS?5~Why=uA+V(o5blC=&sud1>dZP=w`Y0DG{< zoN}^_oj6exB@1X_2=D~Np_}&tzT%7u@*Qx;#6=bEsOT)Q<j?v@WI*h?Lw}^nJa20B!|0{r~a$DI|WJ(Z`qrQYBs*_DVrQp3< z`pR7p+Lv7XV>|!DAF_{Ka6TNu#0(O;*A>7_&UI0XgyCCiv2BPjOh!eXFf0&iKF|sF z`B~B803tw-@$BGE6s3Q6^|kiFK>BejA+^;|! z9(Ra!ly@OQLRiAeS7v_7wER;F5j6l^e-Y$^6)Lgi(&dbPn=7;8t9B)iHOsl}o9|sxx!nzxR zM=CqjHMLd`_pD|Z;^TTagc&xk@h3b{j`3!FUki9Sae|y4~`-UQVxW-!W^jAm5 zA!YLZ7H-O&>bMh~C8zu~c9o|t=`gxE9td1<`gHP9NT-w~=wu^m7YC4WUxFG^gkcwHrOTbEVW&3uwG9z$l@{P{7XZ}YFYTo3Kde4OJz0pbAQ_H& z!6WzIXLGN<3h{E4edpW%Yz_4_Zv0!;Li$p{nqky(-YfpnRT&cB-$n>SMucWwIVTK3 zCUlbYI8m3;22a2D>pw2C(8P|IZspoW`_+}d=g7QE?dQMxjg6f=m7R0d=)`DMsZ8_} zoPQyHH{=|HhTfg!W+_NUx|M>5xQ7leDy`#)dJvsts>?7d(Pj%5F0embak)MD{1bNE z$IrCg-?P7!)PS%MgLJ{!(kj1PqA4KeVq_QDrvNuZpp!3gx+C>3yGIgX7$Uh&5^+Qn z$_ZtuBj&JgsL4*NTgKwY7^*>^=QpZ~hGu5Prl)(%_o!prt5r$RI^5$&=4 z_IBPWC)wEgTFg{n0>pQWw^+8j-3B2) z5PZr7H>L-1X^$3s88+n6&mQGm@T+gS*BZ&UZ%6aB$a*1(misdGY8HVH9b zU}f~rkz>c87gxivb~P+O*-XMJMvG19GY0967Lyt;y7cQyDt-f{52Qo|$h~Ui4#|wf$`S@JBykGp5h71~&Mu zU(?E_oEkr|OG|WpQ!taUZytT;x44f<$+-_b*U{NwqefO^l7@{pz^iG^Do!`~4_mQ# zq5X(cPG--TCdR98Oeu%RR;y%LTvsOC>r}58dX@hRlz1B>43j~_ARLe|Bv=F5SE8{o zgaz=E*hFS*gm|7tar)ce{SVu~*~3)J^Sr#`|LE+#ty@- z8eH05c8^Q!7dmE`Jm0ju#Rx?R^nm~*8hywK82V~=V$)CDL3Qj7@PLf}uV`wuyB~kb z?qtETw6)DjYU^#p#7Q=8#ta)hW4h(Q9WuV@Lbuy>k3YwMbO& zhvTIMq;m$r6ll)jujyTXanNa;D7Hcp?t4BKe&8l8UJ3NYRslET_m-TNu;H63ojC6j z>qe)1^%>cC6p0uvg;EE8RkkcS3{2MthaxAp`pn z{}4LF9NgsEQfpk(Y{TggIYXn>>%!!URQ=zUN!zO)F{B_dJdy%#a45S13nonV4n(Kr03f4#^~ zJ?m^c;ndR*p+MZQQWTOP87>Y(y~#76G!Gi^r*EnOqx^+D{p1r6wI9a>M=R*CFi}7# zvlj&_5g4%oE(cKB>(I&$+p@Y!d->%T>^B$x%+|E8v3*ZJ+~yp0guu!= zi|npn-e{SgjGcboxwgk%`&fpZ$rak=%@JMF%gl-c$tFMq2u=`Hia=CWw43m@5c6Nw zz_kifaDv6=T!eUxqw}Hb(KnU)!V?caWS9Q*C${%)yV{p8{G5$L*ILASFE~_&z~!=> zf|7yx5YMGf_neq#@xEyYY#W53>aW2e=lwBE$HAlTZ@#;#qb2cuxMFqQmHb(m^`g_! zimrpi$=Ba>i+$nC|Ic>beGeyX%0wWNvJIPb^$m5Ll7gX8?a&j$EnS2@pC!-yha>vw z6X7rVqWY`s5gx*adKRIqVtc)SOAka#h7(b`L4-Yc>hzPR9(&B@vQv4%(iiO*3}DYX zcuy-shp45i*%hs2i?19}l)j-MEhDlL(MW9HMLt@EbMO=45atQ|h_f8#6b1&EC|2L zg1dA;b;hdfsfhp(x449fPpcw{5q&Iq8>z+QXuVL}@G75BJ&zmoDr4Lv3h~wE!Nt20 z$|t^a*Q5Nn{2MVy(GvG&lT0DMm|`p6DY)+vR|UL&;rrg){+^6~fEKEk+>^M@p<*XN zL}98==qd>?1Z)R*;oYBNBk)~~B4zGkU{9O*ep&!(x4guom7?az zrv=L$z`fiIcHS+>}?OE&)&ZF73FiHKx~aLhT>_GawG zyB@WBuD#95yQ=JiXPjdPa%85P_wr3_A~cDMPNLdMpHv-%OPtfnUD61-pu!T$~og>%Z8n z8Pn|46OZRCY&-GH6H38+ja=U|5ZzAGL*eNxLQn{(yeJn zS470&`5*t3mBGsY_@_T>JE2&;0TD`7ZH+Z?_HEs;TEwOpFGUgASD8K-1}aGCzK&oB zW;lmPaU93qJy6m?;-?K@TD{7cYB$SPohRKeECYd@v*(|E%5J#!N_+N|r|iRD|D27P zJ;gHYIMix6+tb2gTf!BgM(;4|+HYID`46$Dgq}bUF8$G1X2wV2*7E%*Vq` ztf_+YgRZCSA3DH+v2?klDp9IKnYCkD3mFJR5j0&aa>SL;X=Cy`XpyNWFkYw@O>#%?zvRd>DA)+}JWz9>A?dl&~YW3yA?1N`rz^PjY z*oYBT*3^WJLkLRgd3Uq@xB}a<()1a$j{X)1W)Z54S9Lqx^_MiZP>VJ(YDc!ZVHScH zKw%0FMoSiAu^s(O;B~P?$j?4wfAz&L_|bR0s3z2~zz97l_8c*ra`Cb0ij`rCv@;fC!WjMl~04DBTb(_?$4|y$kV^#HoqV)v4lWvd$)U z-}6l;Xc8`j1DU=pVzFCoCeBl6B`=%G>;z)IHTpN68adR$6Yvu!3f0VmLQctB!NRb*4n+Xyf+mb9rvBg93X5Q8FywCvTQpd7KW&Xdt8 zF*Ui2H9o)CF8=55+77dJwi8b{%?{fCNDPI;MS}&~!Mu{eu(LoW!caSplYz9UQv8Me z3;kaO@zQ$dP5L~3tP^a*2I)&?c;@&&aG4^izfeg;=h(o!|6cpzg`cEIVcKofSJlB2&&}bPbRL80St2T#^${09 zD_A*+0yI`Ds^GA4QpdWrE9{aV{Fgob!c+F4zy6GEwDAu4fEaMrb4Zb-CB74OA_@zXqsQ^%>^yT0Q>34CqaY{M7>Vk%i&nc}>%eI} z^q+Q&QP*H;p#(|D>cxxg(U)GaOaFYQy+L298#Tga?6QlEm^|4kIgO-p#Bk31Wnn=3 zmvLUEh#V0?H4ubj*lAqHT?As8^b_?xFR~Un^au4Jf2Vbm{-f8S;=C?zQrOT&TJQ=d zV(^=tvbx9Jvf6~Az7066oKs7BT64DHjn#I^-+k9+V7&U&b3SZ)?Q;NO>`d-}a3rEc z$AF7A4zN}^B4N$rAap>%ffbmW>2adPJD>k5PjXn->I}y`JT)H_I`)(XMn~OUb z!?b7>p^$TN0K_4ji7rITGTD$p4B6h%jE-BmEnl(BetyZt_T-Zf+ld#PX?q`knDx{# zF+q&zcsy|&#hDWFWJUpH3f7t!MR-Ig6(G>xCk?;Ng%xrb{7zMb@-riH$M=Pu^UbvR6ED7Kw?FWJy|QSbwKF-_aBSVEDN}9Oh!K{7gIveG7Y<++LZuwt z!4B-H)M9m@n*O8R#ZsrKtz!qNh#pA;_*Oy|di4WQ$cUz#LB}v5620_;>!*LON%yYJ zg~eKEqza=+2U|Olb(XZavOpUVu;zwv!buh4;{^{qXFvbe_ieX5_OtWP`>0KvFbS2M zkq}JiT+=>o2bMvoXCMa=r3Is-%J{iKcMmWMPz%4YUlxigm6(QxD$91zA%RgBHXSqc zySloJEq#5lUH*%o*{Y?B?4s}dn@xs8U4I->qy%gOR zL7+$&ZV{M5=gQJ~s}Pk0hn*x8Vzs+gL-eKjuiB4)c8M**81ZMn_*du~?hZ#W$8IqY zC!IHMgf;)YLdW%|Fk%J>4FLlYMfu2s;6VsaM4hi<6XMX%My7I=ATKcyvkc@eI3LTF zF1BC&>|%TBg(q$Q)81=GopHQXB36bp^z%TKNd?GKBw;sPS&2%d@ScXjmJId+gad&3 zfp`!=?SEGU)hApKT|9-UH4q;N?3_rrn-OfbZk{ zmD1?0i-wSG#XzKlm<1YW!P)Q6YUue>VAgy8yN{L^h z${gZHEh0)QYDfV=&&HOPjxKwC!9sh8lS!UiyvSCvyFG^y;VSw>#qi-aV(MgT7&q2x z;3|q;m7~qO80UJAkz79+h4yy3o_m)FN;qqP--$#&&b4nb2F;tpA_9#U zJ*s=VR{|()sB>|!78>;5Zsyj8`f5znth3+#`j__j{de2nef?{8_+f{*y+UymbxM?2 zt-cdE3?A=O0s0~1)Mp0`JcdF+iiF`7wo;t?gm*g;yHrXvqLmFI<_gRYbkad@z2h$X z`DMQXQ8w7uzVY`Q?NrZn0OG^~eHN}t?4$*>k&Ft;;7>_}f^Q*(ikT*iwy@Y+Et-&? zbSX>4Wdc~T+^-2hNMF-IJ>0^^wM|yj07n5T@uioaw_jg=nZ35)Wt+Lr&UWZo$Jy|y zW0_oXoB+^@4oy%f)~ZnA1QFk{{(Yems#t(o0lFTd$VuQp=|bwk{~POGsHX@oW(b^m zmc(^3ge$&G4qK6aYJz4B=I$KgL0M1hLN}?s8N=6XAjt8YZEdyYHESUn8*K%;i0hUv zwepS*+inD#2^xmml!g&DXZz_GkDbbC6q3Lm|lhJzu@YJY!hAdj|2PaF3Hj!Dry_r^DaLXO*X4QT;Vv-vFO{ zb@MQxP>H7>uT3W67)qqC{6aN7Cn5^=imwQ~aYbpes@8>BnJVy9sZMF4FLXj|tYJ6% zLb%9_u!s3PyNj3czJ&hK!Fa2Oi#%?|bQ`_h6sv&~s0|~HP3uU@UUl@_I^il-v%|O^ zQL=0tj>HyW1^yyJyIG8s(f2CY_@v(1?L-iL(Io*YxB6}#K+BcsE}gtJi!zN@u_y2pd{X4CC6Rk zRZ8s6?fq`bIOsn?{SAQ5skCfu2wg7qe-O;9k)vC z9BK!%pb=ewV|)wu7#i<_W!~YLe$D$2fd`d4EGr~D($pLvp|{`@>K0Ck0M@`+e{R-- z_#)W5K%$Bz(=lBrcDJ>(1u=6QCN$t8^*|7|uyJMm;$^m+W6ajff6Yd5_Udlacd%*W zN88M)V{9};{e;nDY$SH)D(Le;twQZhzHX0+3Cjr+#)OMaDY*lkQhP_pw~Uv?dwL9~ zyul^+Z^zzIf_y$326L0&Y~KUHUs%De6Y zsdgsE>PDg}??FJwgNP1)LewVtBvLRy+)F#JEkW0FMD*A*_) zQd#k5=;Vwy389^;dC1 z$}x8E8OK_~q|t1uZE>ALnMn~M)dm#bmFts_U?J#*{JV7qvuqqBKKZXIN_2RpU!(U> zxT~(Qr>So0DQMxLtOjBTHojaOE%q;z$7B;GM zV;7O_fL00zq8skfnuUw)b=qgy{P|W2L9zP|(``R&)XknY&Bnng8i5{JJ)EQ}tek7b z52Z-ImWWLJU41Jl1VP>6C`-4B_EYC~t|R`g^CmyWK)!wGOl~t&St_o^hnGCO``}5c z9_9gFv_LE5pq#mMQ?7cBmpuOuT#|jvDb^>U&_Ww1(Bp}-qi6WJF`eqgdtIYE>^ z{&^!)IdOu;^{p&{Bb4t1p1|J)8;SA-FXgWf_{2-j67{xsv}0DQ*Vea}LJT(9(=Weh z4?X*|&0n^RjbF7Gq2AG^?68B4nLLT(?AYllRT8h?Sw5IVGjZ#UvWoIhMsjvKsWh$wfpW8Ea~a zE+PQG7rZ@9`ZdNM3U}2nl1)tgfo7olg?<=o9BLA2#XdL`WxyOFdi{yWcKtFJZb2Nf z(@`8mozdI|G1!b)Ior|-B`5PYoz_i%?SZ?P}p>0>Z{hcVug*MFYmGQj&|T) zdvbQ`RE*CKXSENPg9T8TxWzK<1Q)4H?d2CDFSt%3VzjGLlO2uddROY>IxpAzI^#&~ zr248Zk;pAYmYT1rBIGL=>Rkv_HbhWlpFBLW5+oP5|E2S>-ailes=N42eO8WlaYuaD zwu+#31S}O{ns5rFGmw(*ywMS^0Y2N&XQu;bVjU z*NdGlwCa--JKp8v3t0NRa8o(ssZ6+uwpE-QgrV?PRYkS$KDO2#yZP7G*dy26Zl}Ee z1NNTdkGE-X=PMbPt<8v;+2O5D(we318B_TW4t{WLR6@Z|QX}<~>Y6gvp5P-YREa6G zj;si3`X5!S0%q+SnmA&$%zpXvpV^D^=Gldx`HUT~@7^4RC*6K^`oxh}U#G9cD|zG= zV=1KQwj2UQ!f*>=wNVGtO1@v`lu^!dba+_f*|RUcYM=k&m+YWJ4zm+K@By1Va|R0D z9UxG4@<9xify~Pp4Q*}cOTZONXC-7RZcBkRLA)dA=tAhH;~ zmIAR1n1Tmv^_ms-{EN@p5B}@lZNiS**{PpD&#K1MLp*Xgd=It`Ap$`yUNN@+2XiC2B3Z#@+!5SFT~Vru$I{u1$~ zi=0Kg5w6WDofz0{Z)vu+<_*@~+H5)W(@Hx*;_F-7{7n{7PbVD24J%h!a0%YUsvk4;UchO(pbLu9`B)<{Hu8{ z2DFZJlP;dhq?)KdyMs`6$%6<>^p)K)M&u_QDsfcHz$v}jxS>W?d?-x`Ct=wE5>BRJ zLD~xOxNO~ed-|o9?SUtsw&xZs;B=u*s~PC;X@zZBpMSX+SjA*b7oWfETWxbUU zF4`~#{JSLz=DRwrNVClhI_xqKhB7@V(?ZoX82i@|GU<;EAs`BV5`jzoN~%O1=(makTESV_ zUFbhoi14MaYl&Y;|GDm}-`S1VUW-oQ1$O$Wr&u-fWEd_1|8G=vhl{@AEfs=Oj~m4= zdb}wFiiF{tf+$2#-z)UBI7sDN2+@kLmsO&~CL#|1bn~Afbbe?D9D10YdHzS(c+tS* zpo~Dq&go*n(AQ9C_dbdt^5YZr7k(a{u+)!Ya?-2NIbnyADDb3bvQ z5=XY7tpw}n@Jzo(@1b#z1Wu@zFC1cJl6q-E7O5rg7!>O!cqnE5j|nQ6O2O9~h4z6k zkjWcClveR82iLEgUCA&#g;ZOV9?F@2&9W0zqC3!*M;k9Dy~5^+?na%;Dyim30Zaw4E~ zS1YQMNKK$0VHj!|$-e$I)_Xrce+`h(m)^1yocg#V|NLio*eFhtMuZ_mvFsVT(P;Xx zxaJg<7xP)QO-5a zKn%K(VTi*r^rPK4KVR%JNjijqw5U)|qBu#bsU{+Nybc5?R_u%FNs6mU-|NfsP;*{x zwNZ3l$NoKx2x?dGy5JKRE)FRWpp+phA>!98Twyo<&+ja|aJ_x-qz~F&2Onai#*BwE z&tVAk@c?hu2xQkq`$&{8u6v&`AImXB?t-5PJLy5nJdfss42u#C7oEYKp`TR}Vg1@w zwh*N_vEEGbOlUVtC-~YbdcGo?2#QRUMPki>Xwx+SkjbjT@v@^--WC`UYyy}j7 zlB3XzU-BQygrUl>iKtq~8$lU&U>c)>Nlvy7;~s@hPTr^#D-oM{k39N-U3-LoJ0O9MI2{6AG>{u{g5M)dRRBEFukso?E)s_71)(Cb zo~n~@VtO(z)GNf&uOG=s+AwL6AN^NmZRU(-bbz$V-vEKw0T;1(^;+~58?B2YAJFc*5AR zHigrHrece1(ztQfP*a0$5gatiQzAkIj*AnBniQSe2nR-C5Jo=aoM4PKj4i4O*{5Ky zmp~L+JBBOFJ!8VRe0N)2(L~!~F@GKXx$nkWU+B!GFUjZR6F>wXEW_4FN1D{&; zksU&DFDbJxz(So>KP}Gmr=C@CAv_J4^m8HJ(0KB)$F8Iz;}KtVSGf9D7u#NZZ~y%_Sx8ReJmi11$>ULV zpw2;Zrl*wa_nHbRKK>s-phy^Q5fC-}wf2>ZJ+kjzoIl}A%?U#0Izy( zI9-}tH94i7w@%s%kMwIg?%;n`?Lz-ky`0F2l}YNQo+6S?PC<$j-jetd<=_(tXvI*D z;&3bP0KIV6cgT$nEkom)W9iLvkXP(s>Q(N8-vzY$pz5+!5=c3QOP>iL_ue-4nmfp9pZ0_a_GZ zqcPh6{d}BsT>7bV1c9aSgs1>N7u?lLa@K?{=PFEetXbFOyN4SQ**8OgwbpHXsaj^qo!z@@K|Smdzwj-1DeCfA5o4vA)MnKk+m>@TjA}Vc>rB z?Oe@)JX_nlT&yqAy*dcJpYaFOy|aYbU}!lypV*lhlb zFWB5`{$LN^cduP?@qgQHJMV-Hyad5{lAHnV{ z5jgE|WXcmRBN=wK`)k?Vs-I-EWlCqB{j!{Jh z__9$#jFjhJc-DUVyUT6f{HJZd(~qz@hwNpOILb`~3RH_jM|xY@kt~sNf9Lo>Ae7@J zJ_e7W^c#pcl{of3RYViFZA+#`ti)5V`SUh-F8jnjG{D)k$7fGZa# zy3kt_M_0OkrRe#1dgboL(+qnmBKzL@dgS%CN!jv|) zG+|78102P5Y+zZxawSH$JFEr*aJvcPZ6rHhCyrus1p0}?Ii_zIlSVyUty)$Nb@T~L zVPY~R6GWX5H*VNgr4nK2gHLrxTzrUk%J#oMA;sM4Un$)v4YTHbo%i z(17z6hS&ygIbrScZcXJueC@ptSUU%lP9%tUe@fCRecJVXQ%DMi>4<~;*-ITOBUlem zUIf032U$lzl&lECX%LAkmM*iG9(o3IH22zs;gjsl51wrY?01lxp(%xvSP2o|&S@WI z5bfFtF1197j-^xB%>t{8d@5N?X(o}1(ol7Ix{fg;b6Qz;%U9EX>#8ek`QoK^%Z+pG z{=4t8&wcXa_Wt)B?VH$SzNRGhHx4}L<2KO_c?jhji3j)0hxEy&_%bjAiiF|7aOvl( zUN$gc82g{@I;N;HA@Cwm*MUA2@*KP4!AI?qU;dgiL>ufIfBz2*a>NZxx@B+{byxbB zSLnh*yz(K?d-l*J3}sqHqJkWRUyi#ZCf)eSa=&y9kyNqkl4*zP_8@XDtK>ZD9Cp({ z96I0kH`iQl*WL6>JM5z$v_p@6FADVynAMO;4R+MBqLk>%xnJZf7g2zS@(9$l3QCBz z@o!8QLSk#gEc%9Socf*g(KM~{B$F{u>AIzBtWr4PM|9UC;K&Y!aHfdK4)^V_zenNwEU zcxOt(UrOfU+G#^YC!DWR2%ZW)*2yLp8Q5-Iz8pO(xQvKNSFc!Z&2SlID{(ZNC&mx2 zx7qBb9m&qwQ4mLC(VZJ9u_;83j?EHLNVjsL*%jP*7ni~P2~b#ug__{UAyHGle6F#e&t;cU9whTZVD*#jDoZ8jdaO zfzWLjJI;nd_+^H{O{IRL#*L@1kAxG5UZBn)MoC}g5JBvmM^(tbFODfK!eU88yiOph zg5#8cUcmoYwcq@;E^>sd|JO}QdLEpDrJMN3rdHYq7_FXoLxEd?=+FYOwK4tA6?|9ilhxRy?FWn77@qx0Rw%1L=PJV7B^DMZFo*7P9r~_q8`j$$ zx87oR{rOfqXuo~!Q=j;#4X>*f5Q4-&qf4C$b&GsMc^mZqUU)BjHHN1eE_xO3Zwi4T zVfdyXQUrCb{vE7u7xWnXXc8(oPzVS^Si2SDrnlaHr(JUCuWZ*n_OTCf4yMj0t>t{k z)s0 zJ9%lc3iOB&EfWe8Sks0^yZO$W?3(L;XOm`cZzrB}x{cg!tmQIrN6MLap(sVV2rYM` z6Q}tqQ(nWw401;7SzT36Xx3XWlq3Bcpy)oD9{MEO_N_Q+;!MqWrPpV7`J&2{-bTSK~)htA2I|P($EVd%DZi29C zM$D>BE46UMG{H<7KhA2ok3d8{5>fPsx?wg9u38OZ(rOlK<7AYZ0_qf<40?Am#Uf6O zpC8QljCMqw_)~ouw}B88%+MExvniraY9ehi296lLr2`}3)TM)RuSLY$%4D}5Js8H0nh_{q7`B}P@Q)Xgx zHm>g))&h!hI*?T$jSUBQxDTVwl@O5HNnB1^=j0_sr1Eoni1`Lon{v_L1IJJAu_Zl( z?-YFWQQrj(fg4*~pLU{9_daQP^}vF!NAaH|py07po?@9d{ut#^b%9H)ecw1~UyM@I z_Ubd*bd$vhzZSL?CFp@7su!WI*4XPOGG25Bv~WnN#K?Rt zV3&T`7hm5o2owp!cMP=YjD=*onM~U3#+z@mfBpCWunRu*c{}c;(`;Q!2cn^2zH4`V z69^+wI0ly^W+*{Naf458IY!q|B@EM$cstLsi>IBg4?p&xU2)x&)>+wQhn{-0&E_b* zis2w;xLMlundN*}DbJ&Z53Iz=5hqLHwZQ$5Uw;%M1Q(E9ESWGgS6@$$RX~R^Zt>n9 z0%-&;csuc+8?%B$&D~4}Iqo6=v$SbDHWRZDUA}-4yOMvIo>4xEt1zAQT+u~?FzIS? z7SWi4;O}9AaiWsEnjkz&A>4Wimr-01pE_q-glVZb)tKGkqk*%>grm(KU8Ixls|Y^X zohvvB5jucq27j(ZEbClI;)&}f0;?EUu0?Ub`&$$4Xz8(ltl>zTav_K)qexL~238fB5#l*@1^01<45F zX4G($DVz!7GM=13)Ieh5(nKLKjt6X&@(!+#h{u>?!^!ZGb$0JV_uJfCZm{KzOKpce zceI0!J>2TX46|&hM9Ni&soAXw!uAz>8Hk!ciTQ+-qD!U%fA!}Cxeesu#7#aRoigTD zyr&@`ct@8f4Drwe5<@%=M4-;s78g+_D_lPj0!_qR7o4{&8?@vvB2vUr7!yaN_!9w5wX;K)%&O zhT@_)A*e|cU+EeLE+Ax_I8o$LDbA*dP`#6vxF@s*+P#w|2tc_bcKELa~Ilv2Oi=l6_laFC6NO2qpMU%Y*kwe zM+|)xtxafrB3 z*K?gSDjr1e5ReiRJK?AusFcAsWT`B~cft>XQpTp82!;3)H_-D{F+xGPJB0ns2|^W` zI>&Iu_e36JTmH#IBmsg0CV38FX&(VF{q8uyb;8*UqRk~vrqJf}hb)#Q>MClidD&XK z^~&pQ$+HV=mzlfT@$Wy`cAB%RbjsUwtkBm@D?n$uL zCVd-^nDn+k2gDiL$oW4*KN)TZvd?A&OqT6~9 zC=!NS3Dz#MVnz{%K?=sty)fUt{I##!NOmZH`1}iO-vjrt<*S?B0BweyS}m9^C}U#K zWGIDl84cNH9W%Xj2sMez=2cg=!&aJ^<^?AzpSHV0}qG!BTiDqOyqMb~);co`(o5{zNEtlTLbH<>-CE zwD9y!EHbI94DtI?@Q=>R7GIq5;|G0Jez?fl2{@INMF;7^rJ0X{aygfdyPMES{5*SA zi?rhUiQ`v}*jL1%ID#3(&SdRQ`Kz*?Pw+|t;*Gi`abs|hDv&JZkq|GTE(wfdFwv^mMAV5oP#YXFc)u(V(q9@%jgSXKze1}%eZxe|1*dV~!@;|?&w9B| z+kk%XAAbKkyX~eM?Qj0ySMB8YABPSw99PeZ#3YiGEG8CLU*o|Sk1^}w{T+uukuZG6 zL0tHN28~RuXd+;)vODg+*M9Vqi*4+LNp|*mAF)06-NoKm+GMrt!ffZ*pi|j$d!p+P%EEhy)i-ubRlL6$1k!MGq9h>#fFS|ZVn3$vZSoua` zO4&IVlbrQkm7}kN;|Sg8{sbvb-%C4w*-C@I+pc4LOMEQ7MJG6!^-9@(uU*5gOz*>) z+=wrNgB;;L0Uzb-f9c*D%F_2&CE+hW3sbkWu0)cH@)hS?C0D*h7a)*^W$a4|i4gJ@ z36VTl?}D{(w+x1RA3}XK(^F{+o_Nvjzu|UkS-Q?nKmG%D*g=Qe*l`oAo&Me`gV(jy zq=VztO$$V-JrrXI{i^>&fJBHnlpJVSxCK5A7%;MBcHIqg z;e6eIeZKAO3t#!FVeSlNb`;1FKV%VsRbawE3B<72W(h+8pyS!9P~7iklGo-0i5WGg zO8h>5!7KKQOMiy>k0rL-A$!~5$G^vVYYV9ezH9CR>5BfQ7 zNCI(yQECx}^j$AAzYY(*D1TqNB$@h60flk~c!X~xNj#qfLY|u^P-gB5>Gc{!`5|Om z{1sFJL{$5L1;THHMhNvb#4AEkELh=P*;>`cr<$4uj)r7ceYV6NzvCgh4e{};?RK({ zu=9A%>^Z0ck&=Z$CFdKraD=4y5BviB^SQ>44vBjp3e(V2v8fA{EBLCf%AX$}9~ukl z?^pt0Y?iW%`@TDGx8GfHg&lI>0rsT}FT_r1HH$Ur4{`~ar!ymM7JXrPN!M2S6y4T? zK#?%qO0W)t#>bM2#iT#PnBZiCR{P_hZnEG0;Tqe1huQYm-~0z_0`X))Ceg+rbDA^E zwpGGV=tn1`w6=C&pG}5&wOIgS0Y4odCfkwg)~~i}=U!ts{P8LqId!z1@yT;-`W~~a zDa&qD8O;_!?s!?#K>-7$pM~rq>JCqO3r~IHc@c^~13;hvLE(AeOviUV_l-tV)M-RRSUsEz%ENh4tYEd8-Lmd553!!F;|E28t;i$B?Vu!WUH5 zSl<3RkRg_SLmAR>1-n?U$b}5>ETr0&o*b@W@B>(fjv(ZaOSg1vRo(NDC!O$aISY0v zfa@fnwM*C7RX_cWEqLsCJNcxu?4+Ylw3*Xp`N>Vy4R8pF-^zv)KMs!$;0swF2k90b zIxP^$zW^zf+Iu=xi9J3a!h_;!0T;Obpk4Ys`-<&>+itQOul<8fnLNq<{u|%0QNxE> z3-&u3>g$LfxaFQ2IB6WazA)ofes12!m3)T|%!YbNi-h6UYQg;I(FgUSPOp)KNg9s5 zx*p>2(qCV0M;vpkoqqPYR+6bkp9K>L)#cXO#@%IEaLyP+Zre~)ubx~)Pvo)HTLim585AZxy~9}R@vbvz0VFg<_PQ^5&>@G z`t~M{|H4=>>{ri+JTU-b9X;42@*RPCYX7^>`ecQ5&ICBcfR_edBirqZ&6@VnmAPW?#E=b-So(XUcN5(Lrj0HGUs zd12%mhz~u5a`p9*f5C-<#2UuC#$~ZTTg{H*@-7yq-KF;UT@TtlH~iVkx+?5_N50<0Zw{3tvA?9(kXzJX)JhFf!X9mj;R5rK3qZP{z8eJaW}@u=p>kK^zHOf>2R z(*QUTfHjralkLT3CiV!s(GTo}&}(3GNlVK*>sr@p_gsIAEt)sqc9=5Dj@a*T+jY*K zHf+=wLw(gRwUKt9>l4zO^KK!ybIFA-h3BF4yD?#y>W``$6%&WA90^V*=A(4}F{^LR zJ1?_aZo1w6_=l@(hsopY(;q$GX3m)58+WP@54&EhCN%Z)ysS6@Rs>ML*XUimzq1f1 z5{Bf& zS{b$#=J%65YAO&uFVcR>jd-<_wnpMmF)*%qv zX>%zz2U~^p4^QVAo@q6Yl!T-csO{1THdl}V!aOOHmnO*Q@=pZDo)P@gzcF^?NA)X2 zK9dkH9~ue5n4G(BRLMt32c(`;kLjrX89e%ZE*1OT{iuH7grNYSzTk_z&}tDT+MdRi zHtguPa(-{U5DIE4SVF*l<||J=Z+HEEuH`m#*imFQM>V=X|Z5lQm<*uxLo6~FnFjf7DA*oV)w zLk`%NcoMCPnIUm;Q2!{vAl++|j0=Iqr>zKqB4M}{ft~-9BYvTY1XUy)KN-1RzIv^F z9X-Pi6jcsB;z&E@*yA|zjm`e(w#Yu87FO8~IE7->>r7$H+K7eX;*m$}%4>gXxe=u{W3QcUuLJkB$=WU0~g6wdsfMH~HPo!B=6r(s{*azbBNR z`b2*xuO8Puj4ArZ*!;UDModW4-{^da^UoyNg-;gxN4f}lRy5xi-;X-&QfcdlTIml~fJnNr8!J;ZE$f=?@dqBZmmi&H zU8~#ew>r=xdXD!{03FLE?v<>iEm^+GKKjW|ak%<$JNuk-ZO{D<;AD?VYeg@k z8XY;t9b7|(C&)-nJ2Ly4t8njk&5w}yfP^766cimc-d4LHsv2C#*IbM{;7N+LSIbh5sRWI zzSxMwNfIfQG@mS;CO+o_ZR7gg@=uaLV0r>DGTv>=B7$uyXdvoY%b#CM;^T2{_&fC zXGa`zFsH;+5QjxL_BwUSP*8!wx&*kooXvwpH@F~BBn-D|dqfPOdtW3WW!wr_@GL+b zsl52gYxecO{RX?++A(AE*S6~c2im$;4t(RNuNux_%^_ZvjkcN^+0_zpxK%5%RX2T~zehErwROuLPxS9t$}5801@@)PXyt+TIv>mr-A>m1*7qPW`e)(!zA!mtBk zNJnSAdmR-PHxE}>>1(nM-U^bPyl$+9OFWTbXPl69TSqS^pUCbZ=bCa{UMHs(ys>nl z-EhlX3}fGC6J|}d_n&pDjh-^zN+2G4Sh$Kf6lY1fGiSK-?snZ;$c(iHxd0^=beUAAQ2hic#0?lHCT07m92PviT&xyYweABuh_nO z9c0HHd92OG49&2*k!&u3_|-mq7ggmEakfT4ED1i40%txkb6LW zR1csI002M$NklkkWDN?>TZBI zen(%6O_+Ktcy0=wDy3XZ9Nsql8{)@Q>3Cb3Lpsf1dG25Kf$F!ZvU=S7Y(!2;;zFL0 z1Png?e-+*L6c-X~>Qe*y>(lhCR11az1YOjSB>gO(xC=If@?ofuE%|(m6Yn8?sB%*6 z=;inR@#NXxPw56q>ltjNpFoTiKGwgCg^+=t!f01L3Mtcd>hJ4eiKp5xJSvyaQdqYN z(g$$~x$eB-7Q5q$t8LQuJK9OdanA8}vu);-8JIw=1mE^pJ356KcG*hvM28JP&$yH( zE3q=T+Hn*`mqbI~j)Y-1DlYPI|9l@FxQ<)XHx0*uzv~e6pa|P|muCnSJQ*1fh8-;% z?1$g`cYF59C+uVAeb~N80G|prnh+Pgc%4!t{dhUNnB%e>T#)hi^iTYH zyr;v8&+j}0iiF`i598Dq;?UZ-yXUY!BfSeboeNuz-iqAX#&!10b1&HUe|WL2UcbRE z`rh|#{N%~jB_zYjt3&!4oVzMPb+I2?*Dlsdr9f79F- zJiOis($$2lN5J6$(mQm{0IOE*n$z^01G9H@W$mT;FWIek-fAzu`l1aRGt3Tn@1ZuE z4JxH|Ah2?dz$)WhUd&g3)-6-QPUa3a`siprkbO4>lY_x!^kmr8T!tcgC}#n}LYw_t zJiZrVg{PP{+!HcGbyEU7Ri{m*?Vs1X@jb#P)~zor`o1Yn+9yuhG40#Ar`uBLV>@js zuRNisf+YPlU8YT?i~i}j{p%j%43)c&0xG0>c)fUt_3MA{U)Pw%$1~~muKfBd1qgpu zmZ4(9pVVzC$}=nmWcZx(wDmR6snUvs>tXX=RY@hs)Uo6EsTb^_+wQeBi&y$i-7#D8xwn7N55k1d4>=)`IjFekYvhAVaBvNYwiV zHc;Go_x<)?Kl+J{7>hlq3%_97&6@3o4Z9dY&FH>V)l@ohC^G@hMMFH&1A*Dgz^tsQ zLKGtXxovg0>6}v#6qqe=7<(ZSOA%#s+3RmCu$NzZ+3tJfUR%C)iA~vgnjL)H;WlQw zap)7lApo8oUF~2-EcjP2*`O%h)!T(GCGjwQ%1 zk1xKh=jZpBLNo|=^cauIONRi6C9o0iqMLla;rgX+_-3!-S?+EZNa>k zZAA45JM@6VZ3o20J51ZbZJTz%&Jr=|k^{zIILa`Vtnl5T_!J-sY!cj}I>efVwuo;b zreL5=HSik*TsVP{+`y-OLlc~b4!i8<7u&oi9=BtUd9Qu&jMHuVsZ)ulc2atBqC=^`7tZ>1U6q zkPsR;=kkmfL7CL>mxCD|8!j0P|A46O`U2iK_ zF0wfX?rjGhb(qzT!*1EAYB&g>QMiTLfmp>Kf@TQz7SFr1Lfnc7-#{2f#dcxf9`qMw zShv3mK81As!;9}l2)vsi5PN>Uj>!;le-ReAV4ON|*=c)>bNeCV-6jAmL z(iIU#S_DE@O0RGzyMYP71lS22sd!Swjbnq}*p)5uaRuDMoHaMDu{&(K zx}8F(W^wY$;j)Tzm_yVq1Xji_@NO`F8A_R1L{6(YR`1>i@3pztUyc4|nH_WHNj7DV z8P+gyB*Zr67CPF1G2#@ioa-1dkt9=0+GXy$FG!0D*KrkA2zisetgF@<=KcHu8kcKd!S!MBj*($BIN`9O?+WN;rNx!$f+9 zI$=YW9@^Ko*utmg+g;b)Y#Y|Dvm@SftiA8O$J*p^liY4$Sugm2OPklU`18#X(jz9n zZjEpGG46+|+nCIYHBm@^c!$<;I49AB$9kn)2###1t+kcQme`YzJZ#_j_P6Zg7o2CG z{=~;^?5N?uAFc%O5_eE=m(%WJ(f49f6y4B)K#?#UByA-TvIs*tJ&PEOL}Cvsv{DT) z5LAv4+XfMM!;LrF&;I8!cFNV;KYZ)kHfr1iE60fF`sQ{wzA9a~j>Lwa#w14Pw_OKj zE5*!&II!R?xTtUmfu$xAAw8Lzkhr58Al23(mPdbZ)tXhduBp-Pf8aj5>Z)JbsOh8Z zh%-*G{SP~Y6H`j9mEFyym5A(}IK=p|xC=Nx3%E~XBsvj>a*?nRk3NiP)IHcmTwhg( z8Jb>u`r$|I-noCa*B^V?jyvHrJL2#oZQ}SzHfqFZh{y~oau7W1P^(0LSceQqVl3+r zB8*7x`8zIFzz}r-vjjX6pr(pMn1*)QT-Dqh4P4qv@Z_46E9{TgU1z_&{MYu03qE3J zp;I_@(l{rog-4~X(-SvR0>e&Bh*dBb6IGuZSn77 z7j1QQH707z8Z01foa>N_<`dF=%!6|G9L6$=h zNf%orXM#&T?``UbiVF_iz*VqyL9dWL$X=6)xB)uIpffA9iOCw^-AiDms?t`iUTIIw zd)ywI_aK{8Ua-vYT07#T<800Wds#O-m$SJ};?=Mrr6Za3!c?W4^rX9xq6oW4+%f3z z2`-H=-4~CLR^jRNdQZpJd(jmkFf$-obPZ1 z_RE$num>M|z#e|)ack~wwedSlwLK2m&$gR0(@M2D1#Y8nFagNoW~jyDpS~yYRz#f< zf%?6Fn}i~G+R!K=LP#4@zRMe{SiN^41P18lfshy=Ang^NHIl+&xiAhi7WBp+96z0L zESoCJURh|*KlFqxdG0l<=q$0lX76eT?0cZioV7E$g6PK~<`gj~UBYs>gd+UfIo3{i zK^AG`gd4PymHq8h)iFh=mc!(klBfJaPC2$ud1D0PoBINGob$01b ze`1e4`luaw_+j?B&wSd(jUMHy+klBoh#NV&B0|Bna)M8Dy8ESPfn4u;=BEsshOKSQa1CFv zdmp~fo_%qimDN_*?7erf?RS}J+wC;n+GWqM2K^fTI&y7@teJ@TYtA-VRc1K5BRRfM z1U~GCawal;D~CNWEeNFN7@elU;No3xv2;mL@m7Suy9feO<&bDsJ-#cK1y4ydjA3N| zV-p_ZCc}oWwp@oHbyazo3#h9$kyPu5R{XQgP49cp@OwTH7m6?X>N(_@K59uyScnU#+NL8ZhGIrz&@A)cuNWkK)7cwA5p9)BvMvN)! zMW!0$ zAv@3W-S#6i7?5278OHOF)02bh?f48>=pKnffhNnORE=0(x<=g{9d5Rvy`$Ccec*1p z`SzP^!QxkJ=lyrH-4EW|Cd`~{)x$YB9=%28JAkasF15~4bYdJ%M;8;FHWf*PCBbvV zqv7uBc?uiK;Z2ipI>@c)iVzr55b&|&>oP`S($VvGYNGxfgu+_1YKK4iY~Z>;AZkI? zVbCpZn-yN6^`IKlv7y73y|&n%d-xf95iVf^MygLZ_GEj{;qSFtHstBpP+4h!X^&pE z2v2<@;l=w{3g3<8hyaaaJ`#mVar+RFG44>gtKL$J2~KSwp8_tFe>diRN~v^RH77i^ zxBGp`qJ?(zjW^nrzq-^e{M5(nL#Ll+^eB5~t{f z5(J8b;gD!8AI83Owv0jTXDTz$wSty7L|nigjBRzW1MKemAGGiN;D>BTskTpi=Cii* zF1ukvj}yqn2bSchL2E9KKe>pZgXtk;i-S zfA-D;K(FGu_h)-w_1?Qg5lA%AI|wia1IDHp+;9@N*ol+a@q5n8OXBzZ65Fvu3z05i0vTl9cjON@7$TWGiT<`{O@TK9BX&z zxa}t-+2?9TVCWf=3En3xohR3^FkLG+C<|vk_o3G0dP!ht069RKds?huNVp(42eI(d z<%?_~f6vc;-rk%y+lEaZV>3VX2^)X#WOk=14ht5X5M;@0G1U&Blyhw3>%1>Jr)bxP zFpX*=m)AD0Lx>`;Pw!r%^e3gj{zL%>S;>p$?-%cwi*mCXQIP20wqwL4(S|0E{P4*JPugF9;~RF~IWw&{ps*FLVxe?uLQ!xF$p@g+QTpnggFb&df;hry z*ncRH0>k~JuOtSJ@19=dHomZPwK1|@KmN;&O<_^7TPnB1J$&W0*Kud_fW3w8;Zp%z=U^7!#e)y6|1kQvC8tw;CLQg-ZH!_6rqc|b<<|6TD!@fy8m(8Rkf4dHHHHQ z54A(aO|kJK$Jvm9L#&SU%}iiz7|`X&w+Ak)Z?U0)-8Hq>dfh+g^I%HM{dSzp{p!U3S?g zFGf5+(@NPjODZtVKp?%`(ZmfC1Pa}7t_vvx)gr}$q5xUbu%A#M1%~@cM|GG^1RT?X zUqgKn2Nwanfc$Snucm-6IswDlx+Z&f{zBZ@JZi7becLX)>T`DR^doHGfIcX0t2BWR ztk2*==CdDYPXLD5UF{Q>&z5oWO76xP)G5@FLn3?ydGr?-Le!J^UG(?G&c*SFV+7bq zD&W3!>0*0r_A9n@)neP#vdwZ!a%|$%Lu}gd$5_R{zU;qDKL8NhnRI<0W`9Beh0ZbL zI#wqYB|CA_pZ$;m8pC1tk^o5bzJwVlG)8ZhI9kOyxQ}5zGUl=R?bY@+AGZtexX@hF zYGpZnY}mk2cJ$FR>Z(ZQEj*U>WX+Q*qqDBsLS0&yQUU+7fJ@Wf|tr&j8$Id>(&N}rJ zD`9OY1{gNEZ$h^HB(v0!q89}*7V@1z5vUR$lRU+r6=321NxS{6um4c>O@ZMbijsfi za`eK%obte2N08EQm|nxqC<1p(ltjrbgDmlyaB#hL?Rxw9Ex)!mmMpXLFS*o?JN|f# zC`x_ORN7_%LpX;z?;1M4${nwK*L2y}f;Att;5F)6{R9-oWkPihNxCFdX6PzlD4kBZ zxXF3etBla!}Q3;ywjk{}YUDaxP{N;!3jdxztwktM#{Aeo& zppQFbvW-4y0=uZxTP_aCeVebOUaC!?r0V0-w;%c0BSeaKsrer1_AR2Llz0}(*Yv(` zA?Dk+)M=^@OMws89|`A+hjq@^`RaqzCFb0h{*E6wdUzb!;aQ9;UZOnSs{*#A+qhzl ztzNX$wyob}>z1ytHr}I2V-B&ik3ZigjGk;o=)Xzdw;r)(DZ3PDj&lP#%Fz2MBeQ(D z-a-Z~C-vg;`x6}rsm5M`aCAy2PAR$sPeyFGog|1CUDEzZE<0)%YO(jabfkRmifR4O zpE!o|-{y*Ezks(-aa^d4y7E#48g)jzPk^Ko z2PB_~RQ@AdaJ$jmUT@oWZMA2fd&Zuh^$hw@jW%lHSetm*K{jmMNUWI4tgsxB4Zg%A zR<3KU#a#!khETR|MguVq6K7qk9{IU&R`?fvAm#%=wVj{DJ>s6I7OIceR~b~dtl&{x z$78(ZdAP{5D>+v>mf8&0htoYn*TP8A`KfzmNn<`71-c>idlFk89Que+f5f~xcKpTI zP@mXu@#wK!_}FHw$A60FQ`7+%120&pY7DvtE^`MaZyHld-;Oa!aZZ^vw$(WhEX>2F zC&ncCDDSqRlCf*^4%@VPgRNY!)Rw=q2sMpneCC~KXPF00JRQSxK(dRM!FeO05y`aSraZRxMv@H(mEL8;ry1%P+me zjyV#JtfWZfDPS&g-F5*(mF2&k$>k#ENc7}>IH>m(eB^|v^mo6YKne`^i*EX_S5kZb z{`{t!?5SsG+02h$XeXR{ru7*-3`fjNbBK{;s7QoNPzngYY0mgfuh|2j`oaeE)3M6{rq}4(YyTC==Tx9!6RKEC^ z%-kNKY@NYj=y5Ie?+Xmcn+ZwxheaV1o1XlED3Fl1W0iiNaw9Ml_bl{#Sg5nl_Z$bE ziT%kJ5^f%`DkmS#puk{0tiQS)wYKD~ zg*Nx4IaalDgY~ZLXJ?;rjvYVa1nbwkpO;&JrE()aw}66rR1XZaU2Ii?gK}Q1Ae!eY zdCBA>RU%z|7b;30`l6WrX_uEa=7q}2Jlnao&U(XX1@2kx&TY2n?Rj?nfBe)AnLN?H z{^h^0F(XH^Q&s~O-WC3|db#FeD^>yjH1r$_q`c!m3#c+XZk6Now`zC`u$#%64zk+tK6_rW_GW=h-29(nx_}Hf3}! zib%w)30EQ)E!4Yfs;#cE&Q`2hZgb|&vFDzB-15=$8Grb}cJ#@|+t`CAx)pgnV&;6f zx{cZ)MXLa$*5V+5sD6->?BG5E{U84)4vzXqeF6~h?u>mB`bod>k0e z&)q3~R@O{{5cgimy5vePKLiE5FJiv;BKAJ@WmaiPdKKAGY=C4MMG7)FP|!z501WzY zL5B}+q4pqFX&Q@BkQ+WM*rF3(t0e`+R>ZD9n^vr|H(z+w=Ffi9c5m5bhaYyNop{{I zcF2@NtpaIANeP^C48H0y>MFz#MIS%O2-Kr{Sb*LU0qWFSuZ{|5x|DHTVWD)M!w0^o zFG-KAhSgmK`0LrVv&Q`s7Nd)_6Gp-FPd)C2Cg+}chF$ad&sx7ey{)2@4^xTcr7lBZ z@>3}8>>fLt^spZ2Y0XW6VGrr?7AEdoxJw&1Z?P9=zh<}H`8#yqw%GUn`TI7Ot@N-! zu}0iNNPkY?kh#Gvmg7z-9UtpqQ4rZWrllAcVp5J_=Ru_fRa-~x-d*Dx%9oVnTYWt{ zIqr@65+nIxSPi9=TQ-mhxb{HQA}rAsBfevF5@_T80uOU*~;U7YDq3PWfeHE-mrF! z-Td>P*@Cy`+Q-j5$F92kG8-`z$JO<9R?0Sb0{Gh1M9;{R{<+E%;!H!2p+E`@dq`Ke zqCl*#K<$FE6M*tEyQJK5>uv1)yVCydyZ^(EIqpPs;o7aXfodb!%)R*LCOt4Vy5^4m)AG4H+}c`VH>S0E07E5Epkz6W-) zaD?7~XM^}IN1lJPf_Ld2^L-ML-QP*MSy?luU9)$}mPr*(vhQ`dm0rFF1^y5;cF|)t zu*wwLrB}Gj+=_KVjM*-g21aT2-7qHzaKf3AKCQ+VbB3;q@`LmCom+RlkPd-fHhTB6XBLxaMo!DP+D@+7@(!e77vlWw2O|d#t647TPaY7@c_wIbV>6f?IrY&3T6Id)y#}&ko;lsGs1lYhoA8ra@ohk*tvpZ* zH%Yx`BqmBaCm!|qxbSDVOG?}gF!X3ozxSWm_c4V(H(sR2eWt(%rDJz}lL3Z%^m#|G z#6I_90z`bU01R{3@&}~_A7L6JQf3I;LmhR-$0MA<{B}gXxWn4CW}Pj0X936cxSPSp zYGV<*mXzD%gATGulc(6=Aw#WK@7~Y=@w0L>G^M^$2%zM93BP)bWz9htL687lTSjzO zLhLgI_wR&icI+FqMDMG5E&CWEg7*X&Wizn=vfN@9$bitG?l zbdJ+x)-@(O&w+g|Neq&FH|EhKF7FP^&(@4-xO}kb%U&Q+J|$&s*^F3D9Fv{9cG-gY zZ`qtzXW8IE?|e3OZl_Ew+qw9) zl$Mx`SQH!xa_Wmq(kD6(cVih!NF0CSLS}Ky35zKob-B63S{Uh z0%k5k|HahZ(Kaio_oKjJ=e}3&C=d=MiR0w?C@_K%7746}0cVU!7cdHWp!26OC5}=% zoT_51jH_0yx9#gTTW!@2TfcafZCJJ%5puo_8#2<4nQ^jBojTq6^yvctAwACcC7u-c z3yp$vj_6nhD+nymFQguT5mcXfF5slQ28Jph@W1K@z85{H|Mcf`cyg{A`rs6}%Ml=y zIG=k3M93>b8;-u`&wbqZR$=<>t_LM^p zw~Ie@x%KKh(CW0C3OXsMoA|`zi%J%~lDR4q!(5bv2m!NGWR{$ms7D>Ou!$P_@b-zG zbDzjLN?az)R*EZ$+FI=@00)J|v9Yn)zut3jMblPaV_VThoVV~@d-2WLwq)&6%ZGzF z^3X{(V)9rUI(7ux?iI0DY$=nv^t)KH;Q;7aT42R6bdC$pQ9U~TI(jXhk<`I~0|O-_ zh}jr>)vrCa^H0nlkN%LDgvg|*7?U3NkpfQ7Y~m#Zj#2TLU0kLQi1as4NJ2sVpg&Gy zRCfOOmMXuO!A*gZJPjT|hX!g6z_1NbLNo4WYHRAOv9{4Rui0Q5maevy^A=j|mTDU{ zXr!HZS9Jjs3U~5Q zfC=Z~Smo;l>7k)pU<(O4dr0Q>|V^{%^q3#GM!zy-{u=F*DJi#{3DFM5#ATS}XT9zlT=81{&6rjeRO zJot3N8Ar{vOakpp@|(Bsu=^f-$nL)XK^r)9xLx_#FWQh1qnWJvf=9IA+aSrJmTb*@ z<;y6AImEx@`9O71kcyAfw-%W2P#qN;mmE%eV2IT4^^J=_k#H1EbX!GYKpa83f8xwZnAqIXh#qmP?<33| z=k{s&mmpXw2thm?N@#=Qtd~8HFO+@C6j>z5;z6Pw*J}xv zK7n)whPt6?tLIKF?rJ8XPdqp^)D2xiS1M_-Y?YoDM^wGgXTwl2dD0ZNIDrFsxP z4b=CjIDio=i~3vj&KgN@8ixb6niT3+Ur()^;ra%EOys5+8guUw%^_N zdwb>8Id>35`O6B(M~}j1WxiWNw@W8cVm+3a7FK^9#eK+g*ETHbXfCQ( z#WQN*d3jpkwX#rOE#RuQAc#N+@Q?_P>NsXMn6%lKo+$m$Hk#JT7T$SRn@5Uh&%AlS5y@w8&C&3@tqtFGF~ zn9H@%qsQ6AF%#Ikc&LrQs#vaO`c$Gj$Pn_ofD|)B~^@7 z3iAa+jI=PwNgv+~xYx8NUU{W^(2sgdubqQB&b4oGGhnU=aj-0qn|U`2xT&q}N{b5Z zFW6D+_b%U9TM@4U<2nZLjeIeeO( zci}}g2=S1lKDGGZD`86|aSH3;GL|5=M75<$X`04Wetbqx2Zj(UD>$%n>V)YwUS}n7 z(uKPc>vEZ(Z|P_iVhtc2p*Hjr1=^%DS|F=u{_Wnq+t#dGW6N+!u@26`uDYGJVaHl) zYL_GPd>c4?h)q27AR9Yrf|d5EaKn`XxD3s35nB);y6vf4l=weY5@UfJZNn#@X!;YE zkp5*ciX!C*3{`*C+3Ov6;lLB9us$9&m$a%r{1qZnP)&5t#l@u4F?-yrozAf& zUj&Cbs-601jmA@4_NXAbs85CUMGZf2=Jb?m2$OFGu4rm@?X<@peh~5T6EfZELt*otKV|rKKh9Yj|KZv^sGR89m6Mt&eG5mD3Aifp3uv* zQIl)Od!Nj@xYI#BKZ`eY0SXi-cU><|A~z*hv%5Hl zaB1=pCFy<(%I9I<oar!0FvFA*}gAVI;A|ine##xlk5dVi@G|R<;BxTmrZGtriG&-V#sQ1j7pFD zMggbkUTE1t^KhoL;>>BV_|e}_-fJ#$1rU0b%>)^%0v zS-c%9)>dn*X|Ptrl!FHiwu$2=vSr%g*1zun>)jj9llq!xs634`fj@mHgf|{TC(ixD zf$^9JM@tU#8*yP1$3|?m*Uv{yh{?XMCd3fh?=6c_J?x0DQY?kV>C^5>dCbj~_?c~P zq@NnXzQ=1;uCS*bd(;-b`;Hwnd4ipH&P+S>peY!c$eV=p4+->(-qQ|}Ya;{sw+$Z< z*&UQke`U??8(pX2z@|V73=i!7&9pAQ=$&5h7)h!YERf|yRzcDFfNVz8P+MDP_dWEm zJ^17^){GeGxD!saGXRL?mA%nbVxoadB`4VOmY>O+oOJ*qMf7Z77#2Zjn{+@16mp%_ z4J_s%fztaKM@5N`#|+NIj>t%P9K9z1F-aSg`o*C^DV?+eic(l_W>INrX<)H#wVJwG zTd{hj@6|ki(Ysbpd1K7X0x0PVwTvA!)3sN)bgf#TQAPCUL zxvHQ_X4hX)3bF3tDnxXbE^|LU*((M1g_c1q94PEuHwKN1ml+EhK++p*ZfdcHntH3R zMmKdwHDGXuRRaj?cGkL8@$PNaXqx5&1Si>%(~h(WV<%W&fM9Wv{A^;Bgt%G83VMov zKnehIrE7u2c&@oX_(MTb1#y_;{NUr73~_v`uGv9jT`_+2hKIYZpQy+l8Du4lp$Oc) zd|v)0biR3^t#?H^oZj8G7=NcvJo2!uUA4lFIr0em(icC+KGVH;_YoD7zEFM%3C`_@ zjVtbBp+v|8c|MS1>+r&Ql>c<@l|62EBuvi^ND8FD@PO>rJsYLzTQ7UET!aMKZ$IY( z6cP_=lBh?Cxdiba~U9FA_V)nupIw35APA>?Uoz|%(qH-d&zZO8A8;lU)h6V{34_2L|W5RbZ zpi_y81l;LQ?RhQTGwom_u;0MeSGsPYZ`ZD0V=GoIw|5u5gEQ^7ZOi73HgLpH8-EZ^ zv=KS?A2a|iVt=+x0BDvMq4dtawTPny0$O~*=ZW;cuDgaz{dI$jJyUeekzRL4fqkK) z_dET;>hB_CeI&^0v;k3YvwV{7ZnfQ;ciQ$X+icU?4Yq8-VyjxS-YU@z95)t@;6YPu z;`m86X7pHqLWu*(;$r%mu_MDY0Y8l$*B1n!h|45^A+Vt_=I_5ahy1C&kqf0U*v44Q zcmFfV7$AYhLRat?+pc#-A%aJp$M;6(JuW~9`6z9GTUdnPdx#JINflJ^P#o^J; zadcY*fkVW^O-&8Bz^RAx+hE(bZ-b+_!rq<#jxAZT$hP4YrzNM!#vXH!4IDGn#!j3_ zpAWZE79TypoocfPIVUkzIIC@n^1f7~x`aJrvJ)t0N9cSN;`f%nyR^!&xAYxPd9Sm* z<&IE%FL{;CD-=G=_Dr?6+IFN&vU@SvwFo5T`9$hZj;7_%n89K7>}({%k(Eo9+U8Xo zY~`HA0K_IM!=K=k$p_hCQxC_V-548)Gy7g}|MRd)E<(ppUIzs2^v>&9{xQe+ilSlF zMI1oadE;DTPU1<4B(=+iFrvnvK&c8)T)r&UWjssJSauylrAy9rRPY0NG}P6ecN~dwTPVS(O=rO9o@5SRknJK3|Vksykfak z@7iIdy(?_g#BnwTcR2lr4s;G67&)!!bX8jyJRHmk(b}v-sJU^SW}_JJDnu% zLPs&Goobf+qu#-FN-$iAb@#gzouPrUddYs`KMt1Es6Y${A>Q1MB%RN)XyldUZhW2+ z1}cSLFVpXb`bJuN5&B6U6yiyvYVaqD$Vf=R0lgM#&eab0CCFl~#Cg7}h`4cF^UksV z5SfEdNwq5v`iTQ4F=N3U0Agi~Wjmf>TtoWBb9GboN;Xf3o?g;ZaDl4f{>*D*8JxRcyWq9U1<)$a*7D(Kqj z;7Y07@&w_i6!BVV71TaI>WA|r`TO^u=lbLP#5%lR=}Fc1NG3|kVpwfcd!4orE*!m? zj0e3BieYSUFWeRF=x^d=QH*M^i-wmkS!}=l#Z9(tbCsQa#_4tuMkYfC4aDV8LNBjK z7V*d*O5USt{yYcyu_O0PlE(Bv3Z%fW2X^|0YO)ZXCLDlb_3j#5ylk2M=Jwm|*;y~z z>1Ur~7k~OP8$WrRZQ5Rkco{!{%sz+Prq^cZisb3t@Bq!ri0)gCe_1a34^;-41R@K5D73s~u1 z*9EZawGt(uCe%d{0%ID$v4%P(!B45L7XJ9WB)?L`ddfc}w-uuwPwCC}GjVc6kHl}J zb8|451FcVa9~%Vt>))$C z=e?|NMIQ`C`a%C*R@#36`l7wi7eoR82U%Rde7@LJ8;KMpDo#W96!0F)>hf+=k!Wv8 zWFVFc$X7X<)5N_KhdsF932{y6c$cvYjJ^e$aUx#8B+23oN59FPR+rL0?VLaL#AEi$ zn{KcXLxVuZS>GI|;zIfRS!H>JS7Q6L3|`$nfU6|-JD3y74+ zrCX+D_}xW|?AF`wv;~Wo*zhr9(K|fTW}I*mPHl6o8mmTe5p!64%FEG@X+ZqRq$l8^ z)lQS1^k5|JY{I%OEKJE#ta(kzvL>}?l#zDCABO@0HWK@Z?h*?MOGWwoiS|bkJzgh z1`U;1L07VGZc!i~nw6|R*^PQNu~_1uh39q|HwA*B;XF9XfcJ4IYSJLC)oxL@$w(f_G7m)cdFXZ&hjetW?leXlh3qx~G6s zDRgr82^1^Z?&YpVgnJM05y2H>NE|%PZ=Q!E($t!VYy@`*2 zhwi`6W6_3$ZuL< zG0v1_zyOD`kR5f3@S#|SXu7DBy`C$}t*ETT;}l<#ocm}|-Sn4?6+coR0Weu@s;+UE zD4EU!EK_>`l<_9o<>~-gdMa}cQ-;(ukoI#dE(Rxe|uAP z-`m1Z8oH%``p<(CEM8w$T~ z_DNWy!oktP68smUxD2J>x7JjuTv2vF>6ky_|v~ zxJTNgoz2$(hvFVOr$UPqfPrE-#NE)uJr1^KmjdI0zS@3g8u3sK?(J@xEus`T-3G4 zp=>2LO8&>-l5s=;uwJoF;4T8k2oOWn;{r=_BJ$G_a3>nI@j8uq{P3qd+Yk}wvY3~n|2GJOkb(UN z+JJro;QkG=zKDazju}TkprQc{9Q4sAIpWB36cBW1t|~(P08Ry%Re$1mx6~(r>#O&T zEB?#i%thGbSK2gmPk}I=yT7-uvECO+L6O$6Tpf!GbF8+y&K-f5^MTZi1@h*N8*TP0 zuh^_-pW)-6#XkPAbM0g2or~IlM91MhM8ND`28v5c=xidrP<{jq{X8prUn`rY>+uvw zfnkpy0{cb)Eu8gmG)mzXikno+0#}Cey6~LlqXsw|8>%+jefK|Lx8HH6O+9?NUH$pb zv#9lF(I04yES^Y8d^;zB4;iOu!N1WrT>t<;07*naR0?1*Yhfad&u3kZ*&o3BR^v3) z2cdxQg#$tQ$z9>lN9tGofE!!{ss0ku5I@W%zFM7>h(Cc2VMqTXD&Ej-0iL!7X;$e& z0?~4-z#>LU=>64V;8KJ5dEG{KXxY6B@L0v)RvdHhupQ_#?&PnIom^VA+YVy2a{RNE zp;J|YRdf-47K`9S79fr;=~ZqyjHx^v`WCRTYHx3WNLkfOS5M&5mHMfm>;3sL5euuf zv`ZjLA)IreIBy_3{J<%9FvvJ>!c9ms^=Yb;6KD)-_~4OWKymx(ch}+^8sNvfqVu{M zID!DbwpKtNdVjqUpZD$C$Hl(=`}K41S6NXB037T_A!Q}B2M{bv-U2Ly-PI6uD{xaRFnQ9oCI=!Nn=)J>gp5cggnS7k|M!26c?G<Xlc#ijW=NF&rWAN@3Z%gBz3G$QO(>uRQj3!O8fw9E?gI;M zlO`s(7!r{*z%i*~!CbItvE6vn&CVq{@BH)alrzq@{IXuwt6wF+upK=#{Ba>B)MQ!D zqA3>{akkV%so)bP=W!C%Nu1Etyw!bM}z3)Z+QM{$Ac zR$IH9vD4(%(z2S~iH_s0UAz2R@w?ciN9Bq`*N6zVp`qRv&?bPJ#;O+DP9a%HsZu7W z?wO!QW`&XpxHNDdHTDYunI&*&iddZGC^#Rh>OQ^uq9#%3@dA3idNJNBEB!;NFu%wu zODe4huDN!vP}{|em1VNZC@Nx+7d-&7I%@A*0k^;%lq(nkxbPtr`zM0jKyWHbb=4Mi zi$d%xHIpL!qs$XCXqIfRCZh!=+OhdO!Fs=wRZJ)?Xj*Gd`H; zk0!hTXj{8H-oF>0f6jh~D;mB;?2{K?Y^R@g3TgxxcJU#kp!Y&tdVN4h7g6IW1%^(V z^yd#mffN}2fe3k^7b8njEo8t$7AjVG7S6Cgs%At@jbSS+abp?~qpih<+Wo(Oz#hWS zRw;_`U;6rA+re-V3lN!X-&q3(1jTq3+Ikl5BDgzR`xGKDj6TfbwI)~nrQwf50f~L( z=vJcQfDHjI0)srR4USj={p#e`eIgwMa;`oBv%vie@xhQpV1&GMp8m=PwV!v~{)(^&nn zm!Ljvh1M}ioZBQP5h%=~6H6F7TQ_aAU*7O@d;aOC?2J=Sv8zAx8Jv!f!>v$}zmww9 zD>#>s3yp7$l~A(Rf)3U({&hSvxvT7HNGb5X6i9*L`;sV4APQ)K4-<~gSXh$9w1YYT zfn?EB%4U$>)~(xdhW)%f_1rAnn$*~#?6Z76KDP!98EUm~hGena%%Uh=De0jJRQi@% zEOsrpY>-`YpzRyVF$JU;AgQvwSv%rvA6Y{(D$6E4}8%9Q0PWnZ8*|(!K#vT zx7wv&m0IWekdWS@z@9i>;;bo%6PAy)aWn2%#C3D-RZ^&fLMq{4jIzlYfF=v6AgUf6 zplTS40+|vu%UGjX;$6}e0L-M9*o>og8M_Ds>iG^1HCB_LXSgLc#|Zv(E1oN5J7cjk zO^8d%2xOo(^c=Oo(+BFR?0obhC3co5Uv6dU@lh!5p}3P? zTqu#>j*wKr>7m$AmyY{>rbotmoOl& z_p`=+0dAV~U4V80Gqz~i3IJn^o%6Ae*@>r~h81(6H8GRQdA5*+I55qK znq@sHy(eGv0EJ)%I4d1b(o@s$C!_$JKe>{Lz&wD%FaqLoc+TmZKafFT1BS?epbXh)M!x)&N^J$rZvX*@0|B%CL4+*7pl zJmWJ|W*R;O1-wJ|%%^ApKK~ZtTw_~tMa9fvyc4_Gl29MPZg{73aL$Vb{xQOPXYO0} z@B{bTnib1z{FqU8#wn-R3CA64mE~prE=5kdJ{CH4V8jhzwavELYs|n_9>aZD@uhg&eku6DaXyBiz3&xV3rkkw@*W-`(xL z?9QBdj*S{O)&{~oEXUo(PTY1Bqj)bdog|I|1`aNnWVMjz$@#J#o`yd?1wa(-l2y_J z5fsKz;DALP!>X7kaL)?V1_!VjqmfPPH=z5sgPT%AXtUiImuOrx1AZ#mhOHk?mn$lI z+o;iF;i?HWGIju1-tWn<5+_pYonxe|)h!$3D4JoD86Td9IPE0iv6Ly1t%Em#KK*qG z&NU-0g2K#gEx`O2cT&0hGS)4tC_O2LSiIuY76qwbghx{jC#t`%DzN&0Y_{-zZ8pcF`f;RmHy4^8iL4{g_k z6@o8IOiCSh#O=s+7Ey?nv5G{)u3E;zy%WD}D^{(tJAd~(du`4eHg(!`+}fOJBSw$5 zL3r|)Q*4QrbMeXMJd%vQ8Bf&28Xuh=|D+TEszLt%4Al`49C{xm9V68OaR|i}lcC2u zbKkUwe*b%$&-RJMxRTkvZL`%NCX+wQCd6n37+ee(Jj9MX`WXA{7p_6QU>HTCTbBSl z0V+Mw2V7R)cZ|PqD-OR1#)K~$@R2D)lp@^UC?1J*!oemF*O@XhCmqAsqx6#uHkB{X zMzMZWbaE>cl$7ChjrWqcm{yn4vkV_p(1=QO07C#H3H2xNsU0uozq7#Zy7MlaRQIwg zul$S+#4&g?`5oKEr&FkxAD@+6t8t3=-^{r#6NK&e(w`4Zfh<~b8j0-1_%&xb>H|fb zUa3hGu|=d9eRZ|$UP1>Kqem!R*tM%y*$dA-Yp=fil8qQL$S%I{0y|>bVYs2eK#6xn z7VV`Nq9_PhYKNLm5A-`-e&QE`qGN@+BuOt*3hXNdQee2RluFa>NdaG#!!o3aD_A-* z6DBO1jytkEZQ?7MFKY5^-M+(~eSVhx>esijwOX}(;Y)vJC!Kn_HS%>_SPa(?9W)uG zfGQnGH1d@l3|;oDLK^eOr+^gX^(SD1pq4+*05_q3!z$E*E?g0ut}y(E^n zcc*AbE z?s^+IaG-tTo8Pp4{rdU4r7~mLD)aqANUi?z?bp1q@1HA8u_p!gz+JH;Nb3E|PwZof z{-s-}ewFU5Tx>S+v6N4TuUfIfesjw&?d^GU?TSxdYM;5{a(q`7TW_3IOItx*q%k7N ziHxO!iUbB(dP>$ab(w~g0)H$Dq`>fxMcD(r+{`4EoJdaMfG{ZXyX7N`oQvjI@Q8Kp zp+KHoeAMCtZsqE=_Sh3oxrn*2q|C1Q@>gs+9HctZb?mfKo-B;%Z1~?X zthAk%EGGqI0w@gNPzDtqI7+qDxAa0`P@KazUYl(<-*^LVpWE#-S6$^Q19eywO9$0~ z8e>4Kpy1}%@#7gC6rz=tKL>>rEO4gLB`#zhT$o%?mmaCbQ*}|$wZd(;-D>OCud^A) z9cRb#7Zz4=pHXK(XRoCx@bsd{IOI}Uv4l*Fm#=3lD7~j}luCNq7V|`lX0IdM?U-I5 zPjS+3RA#TQ3gI1zc|5VFQF+M~M*+h(;kMpz{q^i>GSI&Dt-nFsUXigr&g9ccHVv}R zxfSUXl0j#xB5;_74@ZG)U>Hk?GoPMVpwBu*BCPrA|y`O>XGlCo|6D!co)x7q8j z&9Nh=A8w!e`}Xwnvpj34P13KY_Pnf}&k7?gh2{ZBF; z{ASwi-P0(I-75uBV7OP(q&N1UK=x$Q>83V&XHt{3DU(oK(BovPc}W~6&1~8&LPjUV zFcG46#?B9O-+tHbdEfz?`_6ouGW9UK{OYT1=*W@QOsX6f_4;~=VkAyUXE=!PCl7%) zsLoF~h5!t|iro=z0os`x#D~i|yNg|MynjrymOVS~T&~hnUTQ z7x|@c7(g7oOS!(2hn_^42^Ql97mT0qxB%3gdq=vsIREg6|7!EzeACYR`1y9(<(K<{ zT8}?Ng#hHD3mS3?AgM4F%Y)pnALju#WdSv1RvIN|fmZ7?Y5g8`QJqzo@+beah^t(0 zqmD^FB@6xsN#OaE&J%mN`d|{b=uJ3=H{!OWZ@<3wH-GcDIK}Q8^lnuE|1&{(Ga>s% zi0m5EDS0Meda^GRh;vzX+Bo(^=hBiKwu9VlefpGRot%S5hFW}Ema$D_gFX8D`|Rn5 z?z28+#lCaNxo4kkz1jLvx`Z0!%}ovN!_o(Xk4@>sYCx%E^tJKRSGRA@m7^S)JDxrLNh$DN6i9*Ldr>F7*O>yD$)xi|M3Nza zd*p%uM((!Yfa?$uT{M0wQ!IkcgMiQMVF8sUKkO3OPA2d=wWPcmMXcHfj7g`yb!? zu5Vq}#NyXZ|BJIM9YwqwdA~Q~5FKn}+qQ4FH(r0kMhqKn2eW_*fQ5ZyTdaaTkyou+ zV=Gp#bPMCDhaGOqmn{VhKI({Qa$&;qoB=Q!r=kV0&N7&&<9gVd+yOb~v zwzF6Bh7B8S;lc&B0cXM$>`XFd>{y#PaUupD197cX@1or0%a)OLyG@-s6;4oztz5R; z7QX!s*7c1xW!h95G;9c4+4Zy4D_7du6{~Cj*3}ayO|q? z5ug_bTe_-jbB*q5$e^(r(=kYW3%eYSa#CH7fz^toOYAj1jOH?y`>_S$$tNCfpZNHB zjO7w{MdYtje0XNU)cZxG$A_Eojnh+O@=$~HH>JQImjWp;{NvI$Ej>~odzMpNmzhqt zeM>VqC)>7dvnTQX|I|}YF-f=E#6u6WLytSzMo&73{h7;I!0`(v^HT~DsE|7k2Z_Y^ zkss;y$jgI1$Yq$I9Vudnh7(?;F7@y^X@>JCw|o-AMi z)wXwX+WYYR_t~Ad{>I7>k6w7;$JqU*1mmJ6K%KNr5ht^_7GP*JYRq^5&;-C!K1LUF z?WP-ULGB-?f=DXF7N9!F%tww_lwDaNTC7e(Y@fv#)=}rc9n> zk38_8J#^pi9mrmI(I@QoTW_=Ho_vP=k?U;w5l7mE=#icB@pBoYaFI}?!K- z{PWM-#x?8R(0k;FQ2;}9&aS@F#se;MP~3d+`4{Y_pZ(k>(ax`Z>#w0*r5om?I)Wee zWedPiT<-{yb<}GeucaTDClCk#cQ7c)lH%TofWS6paUe)eiR`P5Tv4&3Dj z?!CuWFJEdKR<5!d_DdcyVx*0oFwx2oziPaka@I`TzVxx@AAQ(<_uJdaGspMomW8}5 zq}O4vB97swF1y?=z4TJ_S?lfk>#u_oIm^b39%DNx^WC@JcAtWE4RtnX%n17*|Lc1; z{jkIAsmC9;+i&?b7SOdedi+>>ZT73UBay{*yNk!q2Q2>0|N5Vd$6Q;xWU2l8kA7&c zy#A^iUsaS~PzBQ14Ck@d z9_Tsa?ho10jB-IBx|PsWDV@w1QMmWL}~+kbNK!GI()P;IaHLgRUIEh zyLWE4)i|hrm2o@wwO4H<9OcU{xdbDVX;>RqxcWje^>le^dYMw-qe+1j7=ASS<-n^| z$GjZc)@62<2B83&e&e}ZoNV5*#j3V!vtQnJm)-xs!#4fMBkk+o_@?z8Fo;k0JnPlB z!nW_I18kTT0xl#<)>ppD&^Bx;PfleE1R%pBJdWrtjIXdLDBi0^T4}L)VjVheD@hLv zB3wcjodh(kGY|2y4R(tBu;l~UfBUOn`M$3kmMq4As1Pw5+tr~4ATZw|wk~1B_z8B! z)mPbNaQ3t#j&$%O?!E2SUn5R^(M~<>6ubPgPucI`%Khe++pu1qV3&OQ)9jja3O)*p zt-5*_#!L+Wv1YsL)?4i@j5em@8}rgnUuL;*BijI><$e0&XnVc=><2%vd2n*hIP*-q z=;Dh3h2^f-ch9}|+FV4tM`H~y*DwNxKmPHL?M}qtz2RIQb>z|1<1}2y46xa6yk_@3 z_|NU=2pq$?J zPv8Bn%|^U9;n0KZa?%|&?MU0sxW47)TWmg}?Z5i&ckJk6XW;Iq)Si6&3A^@3KedCW z9%_I6_ur-sy#XpdqMdH(&j+J`-sesqd0hJl%zmdi7l%;3SG5a{Qn=15pq~GXG5oOZ z*lGRx_I5*)T|4VB2+6lCs3bh|rkH0{%AcZJw|t z%a+^ZgAcKfUv#lem@>uc;L_xx0MyP5?!W_m9~lV<*U8X9BBC5Xi5{6phmsqZl+^ zds&tYL)VP~Co zsvQropD=cemEu^P?5@@#-FuE{*ZF;v;v&(6At(GCieN+?c3RQc?aZemXlqChrajti{frAt>M9|;->u({d#^SlC#M)WW zZ@lgXoBPu9HhSn_8$V%!J%^5;tbm6MAI|ken~GR?#K=)LgzXt+0Q2uZ`3Ycjfqjm8 z&t&UH89X&0&eq4vx{d2?+?dhU3l8WD&pc~C!Wvq9(7*fN|I?0`akN_|Z{4&R4&nDO zPFZC?`PsELZ|+?C=@0+SzWVjA*?AXVh+oc9bkY!~*Eia=KfTso0G$5Qzy81`ptmUQ z((}(eXTP}q20H|x_?5r@rWKc!!OfCRZ3+w_!Uql-uX$nu5+V@P(cfuEsxd6zgA6M_ zXE?ccg|JU?u9Yw*+xXb&ho0=ZH5=^-J_uf${R&*f7MsERbK1!#z}|T4Evv<3@TlXCw_|W@Jo%7=Fmh;Td%ZfG#bSuSjPHg9a396(@@jN>cBWF? zjJG2A(Y5k~1ts3iue5-@3zgGZ5)=yfB(P#j~#;eRr;rL zlCA#G;@i^H=|Q}9WbrChK49)367q!XnWh)>{Za?ygT)KFX z-G9&B_WCQcZNj**)|>r;U%-9K;WJLKtG;lJ_p3l?E&k%P%Y@cnt;u)XcB?)9=%a1{ z`t`s3hLu+IqW@W>Df9lj@3vcSycS<@E%-S6oSl2#$J~WYG2?}A4d+6yMGvvOyuyYI z9d1AR(T{BhMkiOYW6QCK2OHVjS^BKGa38hLa|wW<7|9}6lZCJa`zWaB7Yv1|%@7T->&$p4IMp$!wv+ZJQ$eVw0 zvps?D&Ts!C1}%VAeY`yJ=;LPA5y{BA4JsY2miPyE$7*Oe4uvBjY?#FCDo z7T3ogddO~rOV$gpb>-!k;lr;KJ-r4<2EF0TD3AOZ4jDGoMk2|(LuyLh{UfXnDff3cEeBp)oNMT)K7;jB z9-Pn?+kx)jkH7x|dmHyVU-{ZsZS3gL_Sws?aF99uxMMJ)84qW)2us$LfZ50G4czDa z(+~fj&7f}mu%=er&#(QN%{=#9`^+_;cTsW+T<{ba?){C^`wA19DS}x+1A`!LozCUh zJo+Rg1@lG#Zoa*t&Pi7QM_5j(OW-EAG&Z6q+vxr)XFdBIMkiYV_si_8(@(W?&OY0Q z4IXS|#rP!DLwO&x@3#P<&n9|wc)TCuwAW=u^ZKPfDFr^N6i9*LN3~}Tw0gxEvTM8I zB-%B;)3q{dc@{v7Gp~-Cj0F(QcI~c5KWwMHiEEKx;zDG@#!dL9n+Xs&(MGWlH^XTx zE@Qi@LUDa?CxVWdwmI`1G60BLIOI5+^}#`+0HJ`Qf^>%VshT1A0sY%OFqC*#J|)Ey z3}EdY^y+T9?s}X3+;iw1mRS*9C?~+`uXZh>EZ8H*jKRwIQx5h7(0+iv-aGHUV<(}r zbuPQ!9Devz2Y`zgFR|;dyUrFZTx6%7eg?XKU$lPxdI2;s6o6eQuHhY65kLIU19mw3 z(EjVLR#clkE%N_%dn2t|(1x z^LXQb{LEf?;YGXR%Foz|s5tx>tLT@pO5WX6Pu=@jJ)&f};VA}))B!@y!~yc>zjO^; z(((3N{2|`(pV!+JSAE8=zUB)qf=_{=M%LbgoS|zUYUwE#7NDX)U+EndM_4#f+c0|P z>0KrwfJfp4B>CVh;OkIZIyPaIzG3wmTgI4s=>FfMQ@F;iz%u@0=bd3g1`oi;X0N~m zq`U&u6&Of9hBQOCqKZ#XL@FechQ?Y73@<}X}qw*wa5eRqMKb>4aQ$*ZnL2dn~6Q097vDoNl( zI&1QwSXhKLEoBG{>YliUT2L|}J~|W8Gf(yg48?^JGgllN>1Ndd^j<;-^s$E@w$;m) z+KRX4!N9|15Zpo~EWuIvVbiDECviVB^W5`n4z6Zyy6I*cj(ARPUxp4H=6$R36jtIV z?q}CtYyJBVw9j1iSsONNI16(Q+sMH+u4}b>?!Jp1Mc%|I^d!3oYxQ1;{OS=m7t0uc zzT35Rv%UV>EB53QPrA-u6$T>GH9VX;9Ea+`2`BOaF=i})BHwPj=|(;*HrfRje!}$- z3yQFgr)@9^1E-U5(N^1Nk3aa3y@ciU*@_ClFMQf^Qu{+RfeD&qocJ{e5 z?W{A-w2iA)+wbnW)1GpT5G5K!`qHTN_+e2Zssp)5o4mAh;(qCqJpuArxAa1--VT z1LMQ!Wn6+Hw^mj8n7!w&yRdZ6!}ZYlb`s-a+?bJA&sQ)fB(sga4m2O|93P*Qrw_~! zxDmT49+NpLNst~=3Vh@#kOISxd>0)+71U(9w~(1cyGsy6KVdcw_dAm7j6Y55)3{G8>GjPo3CMk4~!82)M}2(K&99HdV1L-Uh#4j5x4_4+U+F*9Q@< zKt(fSXa|nA>l^BADB#nLp=e+;x`i@&$-&97#zGmObbHlK+r&pm|3L$6z{r7CgOza` z^2|cG)74vdST)8amHqmnCs}Fv(4>lI@2IVIi)tL2*bsJF=~Yo_JK07}oWx4}6&8@U z6=SN+Y~42$F?*SO81g_lSq`wIhYq~=X}0j5URMW#F|FQPZV0orU_c@rKmj@7M1eu+ zv^K*bY^bfV-?Q7zqwJ*9kFh9m@lkv*9E6p4FUFHB=4CsgnL)-VvZz;(2wJhuebiv} z8t4u|mzki8P7#?q=}Ag~k0J$9VE9q&m7Y*1&Ej3dd(53$7DI^3W4u-@8M*YYcMyeq zzG*>dV&ApRY^5eE=2;jsNX)!&(IV^5f_&CFGwq~PP6eElBZh9op9OkIlp~Roz>OyV zeCZHTwB~=G_mdj*wWIuC%S}N`Z|F0FeITxN8^USU7b} z0M7y}hBXkhJ)c;7`G72m@bt{a7WP3##3&ziTFBcdOFE|NST}T12lKxX{m2r^+s(F% zCAi-4qR=5L0uYER)kGRuDHk&~3IUzk>7+m(8CX0EM5@hVJ?D$XNCp|*kj0vJ*IK!( zk*T~sV9N1@mrFaF8(Z8Ox*iY8qM!biP|wDi#1a}63b|i$^z9|}Qr6|rbV z(1)Go1C7v}9QhK|yup!v7AS1xi(>`iV(ng|eYQv8y69kl;Ay9vVv{D0w@NtLMeMQe z1!$PW6EBOBk3=y=dQ2(sk)uEg3_o&R(nBhgHFv&mi<3Fk z=h(~yofO~)+(JlaP>Z)d?R^^8R2~dWv=Hycea#{kf;ZXaV$sqiwy|oni!+Zt_INuM zV}#ytsl*nL^>PzjALW&+8{vgc+{5>+?17zNPhc20hUx}!4Ygnv!da8}Hdq@&R<0Z2 z*5#t_r*zFM%Hr(Eg@-sW0&cYqobXYIo?>Z9fr|y}YMXIIgWDN!UTZr*34kfE*VM>! z0A2!|0*eBPHT42$;vxd<>AyVZ6ebHheVB*Hxf%{;K7ATMXS0Jt-=dH4Auw48SZgM4 zS$P5Dh5e0jRP2H07cnkc0Huv`hzFOlfOh5rECue=h8CWY53p^QycssM0EpZsHROp~ znPX+tRc&r1uQ;sQEV@lxNG@^#v`r99?s5bwbI6y=pVS-J*Totc+u}l|;39NKcfSIG z8V?E%_@SHh4fSClK$ye$Ddl6MuBOJ`M*sCSd~9w&q+f}T$RTj8Wj#Or@Wap{tR#O6 zpir#gb~wklP-2&zHjLWzvFO}Ejbi%L`;q5q+{?fvJY6$~0%`ak0x_gdLrQ`Dg#sxs z++TX?K&xkF(%i>}WzVagmlfG(-cXRZRN}ZOXqSpYcD)d2&<-etxRem*su^xj4d7te zs+IN}h5@g=@g@#Ta%?D8vEwFAw(*lD<79X;7Oh2a8C&5VHL)1TAVvCzsVGmhjlfVx zUHCt(d(d9{%Lc9&fDJS!n&-1%3OF@$?h7|*1E)@FW$09aIW6MiIto0=U!|;ji;Ig` zlyhwBc6LM&SfnqD>DLylL6ox)L!$Zyz*i&NlhJ3|LQ&6ft8<2jIE%rHF=a9|5{?{tg~~CEp@F`oB4=74Khpt2*Qn29h(8N#TYM$DOH2WyA@C=U8IQA?3PoivBuuVVMsD~C{Og)n9)au#u7c`eW~&_R)bzG0Fmmb?-lf` z7{4M-2wbJWFrh_y*dHj60>k~Gmk!iA#(DEYwNII||5$`kC>OxsCjlQ!$hv05ki}ut z4f0(qums(TAGwDgf6^XeCxf!e-ZmPGP&pYMJ$Aee7=%lT3b{PVb&+(dMAXUT|K8Q@ zzEQqVyhq0FbM2Yo{mKc;(w_PLt1-?Up^|!j0EY?fiSPxKcn30~J%C&soMQQSBfhBt z00qESNOFaOl552Z{M50th;{`LaC6Z#i>bhQaS5C}M8)b`Y>=%HP*sS#7ctlxSoDia z(JO_+*3{DI1_lD6t#Ekqd8T%}X+m5Z0i!^t%9k~>)@@l*3rOlh|D--3fT3*}C3e>5 zhqy)g_$@5JElxe{Z5B!(y#Qko<+o6V{BM>4EE?c)7Q?yZ(smqE@5rCw)mEtt!LTud=&9!rjwrUgo0^LQ$j-X=q7SvbS;l0vkr~5;kXFoeU zx4Wlzr0O_Jo}QIFa^@7(HC?zCcaSq^?m&+I7f_VQe=`o!w^nVi6${_RZPAOiW9v3M z0W0zI&pF4&V(8SHopi)W6mE0J){H}G1IQ<*9;S~M^=-akfTVFvUx~x(eM5azr&v|h zrQ?s-c!T&97>WpK*k34+0>k~Kr_y?MLxDK+CPyu>KASTqbE-)_reL6lSzD!eGJ!|K z(4d;VY}l=a5F2r!_X#V2qj!a^k1HY!$5 zkKKPCa%geC#9`DzBhVq8JMokX<=VoR4OO5cWG{NU9qZeXLT3SzW^;_ZWifMBxgjcP zcUF1Xc{`UKu2f%f{G|7%MOFL6YLV5o%4|UNS%Jv52@aha-41XnOhmWN>7xMWqHtS) zN@Yn|Q0L7u% z;uI;UOqK8S;CW6f29uDQ_)*;I^L zqO^Lnrw^xo;n6WNDM0<44R&p95KH#tNXMze!u4DO`d+}EG!$>4O)J{>#;Dv_% zlB4r{Xr*H567L_4L%pM5e>cEk7eZ*uIih`~kxHpXmHL-aDhWUFsDY560Y8*WQ5kvp zrI&2cyKh@-!)`n0tTWiR`)nK7AGb3&PA@{W!Jo&oHSWCA6rn%$1;_-Iog1%@B({z+^12cke&mI6QsQ+L*^&oj1e+lBbJ&Q{{X z?4d^jxkdxNvV=N$`SG=w=w`BUUxkT zC`DlCi?4Luh!iJ}Qy0a0@eWe(;ih#G(XF<(lkr9#z)2RpuH#8r&4_|ki+txG!U^-t ziqR4t>ZdxW#{LH|l;MD2mvjVK`yre_DSuAq&|c~EIhZ0&`4nPX1q$PJyeAszX*&9I zNfW>sDLs)Iheb6gqqU{U8XM|xIa9${Xh0nSIWTQ&qZ0%^K5PiB?Z_WNme$&Oc1hGxRJyrc+4juei*; zSihK%hPK7V#yGV}IaDw~%~S~elpMWr(1Ij+C5D4~+QGo!d&EJYn0i8q8d30wo%2_{ zW4pcf$}9E^j>p%qull4(6WOo(1UvfhLu}B1ez=|K>*Gn!a!xTvjW3P$G^7+rDG(@- z0>gA9^au(F80w#<|G=Z*ENcOCP9WD!a1XX@+h$AALwa-GTW+kfV(mH`Gx=aUedamr z$Z@Q51f`T-gua`K*p1Vy;3B^iu=$5g73W+d%KVTLgPuz9=Q2|}z6tzbrmX#js zH$ywZq8eHg@^})W6DX2Zt`^+)3R)NA0x1wAeZG9alH!{hn%U{00R6cp>))>kQ7-pb z$s5t_6L2cT?Mpp6arJOW#bJ|vp4u@2Ka?p{b&jD>P8 z4`{^LLusFh; zV4*FC^RQ^ya$C4`si!{iq?2)V0~c}NV0<7JW2{n;7^@&UCZ8N4=do(ZV8s_Va!J>& zYsf5#s$f>g#3ymO?fbgw1{az8ne$9cXcCtpPe-8h_HC%~LfopywSx+XZJr6uU(VOSw+ zVHp7hz#1V^$Mf}U0U2>1r7I?1lmapWhHZd30YhPe2#g}=iEWC2uq*gbx!Gy-#B90< z^y+>tKtbRlm&R_|xWS&n3HIW}%b-CHDg|fRaagRjOC+oUK19gWgOlv%>pb4`wq=#= zTur4{0z$m+?IB|l?e~GW4+;Ak2d(yRja3LIRVFSp|W?2oQBl!J(5S{Yfd{6i9(#IuH(c3TTN6%aoQUg}{+W zB0Z)a(P2p`ZYh+Ig~Y|DByI%RY5TlIix=5kEE?Z=cfRkVD=t|-cHx+G&>=SE;6rW1 z=#g+6gD##daJ3pC3H3*~&Xhl8&mXT(sGQ&IdL1JpP;g+76cgIQ1^IRE#Uzoj$ha71 z=S#A8Is|tgh=i##YcOJEfFbf??YL2ggX-IFyxx9s-L-%>=>i5(p1@unj;iwtimg|_ zfjAI9%|3U{pWDdMBjCo6hBdeje}H9J42veAE}em)s;j!``4wgILx<~{IxLN`AkU$I z8~}j8w)#XNfFC+?O#Iib? z5$GDr(+Jl+PnR53-FRQ;A2fs>b7YR`a0?1H10jIjosz=v)`E4S*>X3Q5Oj!xQNUpPr%PPEUj;zc|1-DE! zlFp>^3mCd}FLY_#z0+nt{ir?j*dqXrHg+l5WiKJJ8%mqUPMid)DX=;?gj0_=+Ag^0 zlQv@1Xa`{ehE0f-i;A(_{r~Nq2Y^+@)yEG~mfk^{fHVOS!LC@)*kkWTV>i)gVvNR` z7+VrkG>OsJlGwXq)TlA`g1v%W1f)stWm&-Y{eS1avwL|iqLL36n2C4i-YI9!oO{Xq z-zhVaBMDP-mV4#^h7zvPqej{sojS6%PA*xyLwkP*Qs7DhDH#?g1>gyAm{AZ-O^s^L zi_;7sR+(!6Z=*ltButBf4t_1r=_5}){728y`s{)4f$v{|v-@n!s-{IAR8U&uZ8RB9{>?GF(on#~Mh;DbOam2Sre5-wE3f;W{ zpIFq1N&y=EA^k}bSi>cdfZ-bc0jvqrXR(UKD;5mTqYxp)y%s4n48EQg7d@6f%#6OQ zsc!DP1vWzq(S2ZO^^-vF{&!jP?+0Vik&#Ky%oS!-PosIL& zfuY8%&A>$(07HUGvXYEfmxBtHH8+A$=urg>V-^{mn17L)7a{}bQRemBeuI>O!i;jh zdy%vk#azDljTd_`w_NA!o?aQ~^nYXe)`(2kuQX|#D-;br+a_xx`dL$_*axq_W*iKt`0AcQ> zq}wEcq688!OrOFUA%RR^Rkb+z!W8R9Q37mp!RqBEEah5ew2&x{7K8(^1L3ilU?UdN zz}z`&?mU~RbACVgc!WLq%(JddENjrv25!8m4UqGDm#*s?0I`lt&)E{F!9Zb3JZHK7 zvQT*$_monHs6 z8UFU$c7)8UhaP>j{p8fstgK;UMJ?-u5}~&xLLdM`DPw$*raxyV1FV@LQOQ6-IP-uC z-BCx$WqnEnTteB6uFShl$s6)&>17;Ky=}>{>v!Wu^ua`l=6U^jOo@Va8 znr4;!&>ebcp0l^Wn;?2!-<-_(i{-;wv9R1e`)r&Ilk3Lo`q4FZ)F;-jdpFyD>p`}a zg1?$-w}6J)?~x3n=%hfX-rRaO%mtSNMF9J*6O&vwwD~9e(sNc7(uTOPSIubQByxI}5a_ zFg}HI=gjvFu0NM1ut6Dn8J5d*D{v)5#P%<>IpR(7u26J0YDKn-x$>`<+moWb*WP>E zL5F-#CV53QYw0gjl=5QE5*8zMWuJymKUoFFRJcTR7AtUtbFb&gr_oPMQBV+olzkKz z$`sj9&j1dNz~fBgdD8l_nROY*_erorpL@n`yX9u<*`ueOaN>!2A9X#_x|w{}=IbOK zAT9r6kH+j=UYR-ZRntp|=vMb#(>o-uD-9Oq9H+(x*x*{W7CyH!$!?BLQ~8`dTJ+BAN`{=z+(>i@s6eC3cf;O_obin; zYKupOYdFA1^NS`JKI8Kh*{_|%x_^6oZ@dQ$>51P;Bz`OLV}QUV5-tg1)&EHW&S*|Q z2jhC+6qxwIKpo%6SOs~#IP`gY;;~2V)6t_mqIl<>cCtRbdRq4`>sX7XO{|Ho_&(#? zWV|eC>@Q4`0u9XIDJ2Oc34A39Bw+ZJ#FQGX>JlhjFP2&+yfRu8b5K}iQtQ~@cBzhP zP<*B}7wh88nKNzDq)9er>=^s-qmOO$miq0BLk(feu_l^GI z=Ldl$im>_bqmS5Szq>@B@F+Xrz=L#FaZ{a8vRFV%5uoCQK%TqrxLxNQ*SA4~wh%z9 zYmceV3opFj0Xuu|y`S~!)!X@aS$od?Vsy*GTgK<5)ScKifefBk;8|A7a3aKb|mK4?!p`M6D;GSNQK_|03iuy#5s zjeyv7x^}Z&_t?|68Z=12rJg`sT?eIaz4fNOF3|txn{U{xnX{~0_inbCj#b-yv&}U> zow+SJ0odm0T;5N$FXoVYhuDXTZtvc+r)@7j`)@Qr00)@~#OlR0)BVREd}Pl(^NhVA z4cW9QQ{{@#+P2XN&qmV`MgOj7_h zv|4QbJY&WTE!yMklQ9!*r1DXtM#=O%TiUfc3RvlA8*jFmws;v}t=hKK2EL!mY`G{4 zc+vJKXc3(wft0ltOVj47yMUwm64-(E5bYEI5>3`pJc=i0GZsmv;GBN5KhTQn;RheG ztFOGm4mtEtJMh2*tWo2JGDD+J%Rs?wX->~O=PU)1%&?ty80^6U_uPB8O&3_MRj17M z5m-C?`$t;WE?w-uI*#yHzdY9#s!u`t2%<@2a%jPtD$;q+efPB=oph1{L0a1QapUZs zyY9CCXan+5GTnbJU{p(hskT7IclX}Y_T7Jf+ho&CZI)=Uuibg){=$ww?s!|Ic8@;v zko*@v5crs9?bhjRf4uBZ*0^yayY}jpOE+WYT+ zfVN8!fESQ^>d7bVU;p}-z4z|BHe=#M^^yOiG=SaLTh9(V{QI`+uDePejcktI@vvdT z?WUVhsDHl<+cEZ5YScCI$z0kh{sS5eQ!k|2V zu3s??bw)JW*>Y)bN9aV7*9GoBR;2#|&A*;H_vqTy))64@u6$i-2ivu6tCMINIDJ^v zKIg>`nx`+O__kp&r6hqQffbWL0){IlztnrRlRzvn`HA5LwRBo~0b;cjFhb*p@l&A2 z&7H;L)zCgwEU7I(sAIZ5`NZBD_O^W@fH+TPR6k}c{57|Gj zyT%TXChtJ`8a7gJi14g7hh}@43R^I5j{WhH-`ES!J#8(U$^TF?Y0!{9VDQ7@S%q|FhTov>PaVCpT6r$+gD%vE|y6%*UY9% z!}qdIwfWs2{wTTw?Uk2bvSDw(Y2(L_kp}Q}Y5%(0W?O9~ZEh25A+2R^X%{gsucdd1 zX6wQWF0hFcCRlHczizi~?&tQ#>#y6eH{P(5Pd(KR6%Q?>b$m6+fJI}@ngr@U;li$z4ZK0YpH&{C8NeVqkF!h;9r+U zvW|f7x#yp6>u)$f=5L+MGh&3@ch_C^n&z-z-dyXb?}mLdKNTHL>bc-Iztt8>>$@4A zQ)@Vphv?nx+xVt$pKY52`1C^s5E!)h9{2<)<2-7B9|^YuTpP;RwOrq2xySev9P3<7?TVFKTr_g_7`B>Rk%eF;)>&r^Z`?kNN>#|6u z@+5&ZRssnauCcE^O&kftg0j4YBifZpZ7IkILKDT%q&Q-eMg>1F{Jv25EtG#@xina_ z1rkOI9KI@(IwW*t(;Y}iMwU-Upk-ao>8Cz0v0V44;uO52k*C=Zn)kK5-8mNfCHtG(gxPz zt4ZT}0)~rh=Cr8-JC_Q;+^)R|8`z%G<{fFxzXdy{&$k zOr-PYc@W6mcimz4KXAY8xZ{p?_>o8HM3sh8g6d=y$!?^yOIQ5mFE&!Z`uj!A9NP*F zfA<}G;NK5QhVR;*`|KmF-Qf;|?vwfUSErm}Ed?xh-F-Lv?w)%{mhIL4J-bBU>4YDh zY~S5|cMp2toaQGVe@xoF8~kLOV~+oU)m5-ig#c__@c<^7FnW~Ta^np$3*YNe)B8%3 z2{2^;yL(l3*(I0Qd9!8Dv(G;3d+`k%Fwi;+ z*uJIrf6=c5{Q9hK2TPv)wf)LWX*}P4XP6C9{|X`U+2oiC#oU`tTU!f(`MnH+1RmTY|5mGHe=c(n=yTwe&{TcMzE`GvdJdaPp0qI z0{;Y_G?P05n^rHBW|d$^kYVLq;uCze&1?d-uvz+jpKm=hT0%oVq2nU=OOprW7q%lpSII3JKJ$T zJi$+uAwZ`>0WFURB;6yQ!7iOU+Yv_`;XnaX?fcr>?lo!bHr;Y_+wHsG)iyI**i>l` zF?U~b;YIEPx$pk_S>FNu1+o^~@Zs;-z4zQ}`|h{DZ8UJ8NBDBQ8h(?v$n3l2psno4 zqmOZoq2jU~U@cZ~&^vFuX21Il(aLMv2`8Lj8_Gu%P>8F*!!m7OaN22h`3*PN;K76K zeQmjO>7|!ixirFOpMAFVA27f^*BG21jZfi1l{e))=Gk-X_M309J8rqnPC5C(AK-3BCYCmfBT!=DH-i6AIU*mY-ydlbXL@RbA1~v z6rfYEhRvHRxTS%jbM|||5eJDB1m_FU#@1`3M)HXBgTR&|z)1*mb9Xr_A19NISYR!U)G9ONX zK_yJo1^ylBfBYcw!Gn46v8+`6zf;0hQc4m?68NeTNWk!`N-DKmEhP|8FY@XpnJp^7 z1X{%s6FEJy8V7y4uUv-IL@riJ07seEd~q)JW0mzmv%cj5U4Vkw0t?foO}CHaL-*Qi zui1NAT&GHd)OX`etc%QT8wg-^7GSI=)97NMO9DOs0)C7gG~qAr56SQ=nB?6k{^=s3*wY@3;T_HfSxy-cv2X1J6H|VE;mDYaF^3*9)>+F6Ya$=T2k*b%ZoT;?+j{G5>~I0k zMopSY%UfGMp8~`JhHt*|f?a&UuRLhwAO+lDE=JVT1mYim>~Xv3+;i;LmtH0f>i+hh zNB(2C+;X$tRew9_M?ca&jE!uORBZT`wvn3vKo{NGw8>NKmK$!eS6_VDHs54Zn=If5 zsBF`IZQDdZcl{0fTR#C>&f&%!K1(3$KKWSQA^^Hj8fSty8i{s~^?KT2(n_v}8-g^> zvt_DXqF||d@@cGFua?g8mMg*v07Je|d<8KNbME&NY5njUM4N|Mc;WoH_O^c1414Ph zdsm>AZJ&Bbo4WCU4Q+q`beGPZq)l$54X7LXHZy=eK7O`>VqZbPAG8TfL8kT45PA## zf$(!j{@m4H%S6X0@X_(0mJI$l1kSQ3B)oId3DpymJ|>k z+KgCS@(T@GI|U&K9Fb58V)DgLO3Fd+QA_4ZAuF%>L5NLw@)}2XIYvQV6E*`fQ;hGxw;GpV--_ zpXOS?a}B1lO229u?`F|9o7{HyG6k4j@xguL5jvb zLH>b_1q>HR4o$TE&0RO%Vt4CS?YFm{0?9pe0R~&hlv<_$5KQXz6$w30py{sL z@ATvC&N|~v+kES-txnTMHdpn$qdK}U@7I%q91*^3ee>dT&uJgUKiG~t?PMpOc#`}( z*#d?DAogVZ+=f2=xc&B`3+xD)xDQak4SVQSXs!U;hvfVC>x(Y3D-=L7Q2vm2-g&3J z^2*E70B&SQAAPi&kZTLbvn>&z2TfQ5y~9ZYsMlR}jol+&2TH5B?Y7%0vbwW%5RmGq z2qecmcy>6o==XVrjGf5h{j$OOhVFK#A@4b&sq0u%u z(#Xx%j}70ZMxPyT8S`&x%6^taY1Y8Mh+JFVKfiGJQ2;=kJn=L8NYTW@6rKI{n{U{s zGVc!*0PM3~FB`DI`ZAGsv{nMnt)$6pEa1u+#caouCFMn6$aCc|e7~9}-zh+_T!Bag zR1wI+53V{ypHwz3lFDa3xo8l1G+^wwqAcY}0!aePl0X86%aTkgU!x>Yx|EboK3hQZ ztypLxv8V}>6&F8m#h+r6EK>o9kraz$@zI~-K5J3=7p+Q#Opp___)k{^>IC_1jZ^T$ z7zG=!^$PnY&eMK&eH0AQtw&FR#eohK8%R6zxyJJ$rHz>{@Pp2iMBoa^>lnAlPwYWg zSK2iaU=Hj`fI(U9MG8E@jJQM^u}AF8pZ&~!{Ik;)U3`SK(ni!GFO4Vr1lF-n1Qbp< z{&@F~y!h7_%crc1G-TR;PmS)9#_J9Nr|kq5fAE7JxCRMEkllX-IB$^eV!sXg+mC;8 zinfkvE-L<7h8Ldq3vIL0%g#9SOzW;76@dTb$&>8vyYJGeDc9QRXPjaC$j|X{`77Qitsbrg z7hZUwttX$qx;hnR_MEx)tb$@V)@_h{5xYyPcJqxl+2z0gz3qGO!FKS$huEgts-+;1 z!#;>pQ7rQ1O%d)asHhb25X*MU? zhYGy;=)HGbqd8wbp{?W_h*`hex?QcE%%b587rT}=>icMK%A=p1T=@OWNuxzdk<;WddW1|!P<82A}4<7egyW)6{!l~B+8Vf z8_ic;1+w7l&wg|OMiyl@(H1Fbs?5fH@}9l(*6Z>go1)0#SM3D>oF0ApN^93krr-tw zaV>2_X~+giI|pyaA9tL!@7T#M5-xLv6&cy`%s zS36PLt%9((0U3;_UzG1Aghr~*c1K8zh=#w*)hi+W4q|+KY-$2qzRobUsEEY+bh^e zP|CLAUIL0LVS&}F3s7?J>hK7Vp)>9hz){_+vk50G-1g(pcP$QC#sita?wT~a>Z zT1k7^L|RYYNt-qbjuKCp^@)n+nS`qZezoxf2{Umdk1~#jlqU%!3Djr_Bw$#hUr%B# zNuVeJ%+Rdn0y6r~gH0C7C##}DeqPGQOOrTq^r!BVI6<3010d_jY>Al~K-63dd8;tJZC-nS2BBqf=A)>t&~S;PF)jZ5d)}# ztU+U)@Mdf1TrhS*gK)HwSWzpyO^4YD%v=^9hChMJrMBPIz7R@u!r z-)y(tdW-fg{GNhOj&k|3(fAU{y}neY?6dfoG;_CW3!3+3zC}QF1ZDww9kl-*0Tt}u zc-m>FE8=!z1-T5jI~6Q5R2sjj@+Cxj$EaOp{{D`lu6Gjv?caX`-@fJF|Ngf<^Yqic zFX1d{2}!kOmT#!5XRq~a$DMc5);>Gg`vPh=-FSn&r9A+}wEokJQ>rH)$$m2B9w?3D zHiNg9IlYPAYdvjMBVRxPeD@6$NJHz*eLeXdGXHsV=gTath~eo|ZMrrVA2)W4P5Nwt z$m$3~^~0Bt9|w&z&jEdUTQ`}vyGZ+s867h(r?vzb%xlb@Dg6N$y4Fv$Qc4m?5?FO4 zkbvQ;^R5!7YqA6cU~uXOsA;uzlPx*e2E7c?&1@Ni*%?2->C$A481ad{J#4rGM$DK1 z9ZvS>plxGXNz2oyabs($C{}_;8cEyMkVsKom@(N$5get;|p4V9S(UcHPZ(R-gwF(*MMiD$usaUVCZ#ly0^_=v3U>1ew7x^EQ;Z zku6^U830hUSWiFmyuB&EwSL-)Wowyq(J(HS?;<{KbwG0penB(%!q69_Ieb%^t%(AU z&D`H`fV7nxD%gSTe&G4dH{Y};o_Iph&-+Mo+TChPyNKuzSZE6MB$_IaY@Ze|dqdj5 z!8>ek8w=PG!Q7ysj??4x4w-K2X-;#bsT(eNJ|na32MQ8tEctD<)gaq)%Pm}+_taBQ z+D-y}1LQ9Vpv9#A$}6wfyJ|aGeOt)Px{drNH`{zO9gWyrX7mP{_gXex+TLNqhAG(S zRoBwZ(p0!VohgmvJVg|bA2-&&FQUXd2xRvW z5bV9)de%{(w}Hl}uXof~K~8`{w0{7>&;nM-cQOmCl59&rVCl2VJpD-$ND`>g5=g+X zM!%lKT#`U00Z!Ne2)gct#kaTsvp};yo|}ceG6RZ$LjqXJwJ#hRJx=WyBeOGFCnB9c z6u_FH&7NCJlh|e5b!GMiEVi|d+FOrc4&Mq#0DyoJB3}v6D3`wBy5^!kJtf``PXE-paFEHU+KhZ&h1P;R_3afxrG*X&^fJH3zHmjaeuz|^LhS&Z_W?bk4esT-ezsFLC}Tt`^vkC@#QG{YegHJOXBQzpFq>V&?U7($a%Eo9K{4lgZg0hnTubA&u;$|5 zjUJ*=XWW=n%rl(_cl3z2^-d$HlrHu~s|w7DfD7(_wj50NDe>Pqvn>mtvg-bXjPJu6 z9`}cE^rbwl^#58?P~${7%w}4su63;a^?m%J9woC$L){U%?h_7intA5?MFH>LMBcva zw~qR|R7yo*XL~FKKFQ(Sqe+#bMww{mTV@6FmXU$0(oHTJFt zF`|+RLb@P_{+QfiFL&A;9{H&;ArzAhT!ThbL&5fd%-1zxq)T!ng*v-xUw0Dks!dl~ zsh&iwOLHFoM4G8%%AKp8+#Bf=H*uxr6Mps|dry5^it90uKt4zrSc-#J_VW!7Su=iI zds^7Gb}h_J@*TVU$tCv^|MsTk<=iOXLL2iyMYTGgfsG+|O^@yrM!h7H^?rlvJ_lKI zaoxqzCx~2#E`N74KJa_&xOQTK@s1-n>-|!AlUeSK2;(O(%<$QKlhs>*nao_0wf3U< z@gY&+&d?iq*eVFqD4Xb*{Lrk@hmKdX^r0YV8CocTbS+RUeiF(hFfeiRED{fqpTe;N z;|TR&ZCy*Tqi6cdA2__))S!5=54lKs=W7|#peug2V2#y7!4m07_bJQfIeS0z1091< zpdrv`H;?r!?gFu1vb6S9~C^_04+26Nss?jx~Ai?DJcYm(0l=f zi(=CKmo4?unCGxh`X6Cy{B`I$ zrfzWz>~CCdRC-pF<-dXdj`y_r`TH(N<1;xADvFf+h_yFFglJ?nsVi*6`kOKRk%5_I zyBl|S3|#3ua&CF7*5PZXR*@l;Dpb2}K&tdDww?HwFWNcu*I zCp3yZ`xMYyA&o_cFMm^_ddly;jlrwsZ^ z9+{o<6m(4*;#>;9<2sloZq1>Hlf<{jJmI9EFpR2{yWc-;grPlAb>Lt%SHNGzFXUND zOGy&>a88sF{9g-0F1YB*h^0n-I?1ZR0oRl(zF^dIRW0Q1Vb1^7J^2|hDb{$PIP$h*d$wkVM}-=cWfU}ckCkWTiL>^3DS z`D`?7F7I5*m5z{+{$$aw{PynWlx4NxzMxx~=u+dP7M!`c-P*g6zSe5u!(s+-{$28w z{O{HTqkQQNQc+_3?b{^<*MSW52fNdVcheJTQg?f4wrS7Ckx)*t*5tL;x@c!apOGKX= zkGoAypjf>)SnCy-S_H5XuY8m)REyUqnf3UJMR|Pn8^(isMnTmpFVOl>R2mGF6W11;G72>y86pP|- z)6TK+NtY9&n^iQh38?Mt^gM$-YWl8>ejQw|0N9~SxN|iHLqE`lGLvKQ4dH21%1>`b zaGJ?HeRe?uNA($K0@W59(Z`QkT5G!ec52KaK`%WT< zFz6exk-&7e5X3DJzGU$l6b+&-C2goOiila`Y2v7>u$Ow-VW%bZCGA%+fkS8*Y<%~t zOBJhebD~<-K0Q)cL9$K8qeDsQewj1w4bWD$4Eg`p>|e`r~t+p-gj zL>Sv6OeI&XzABO)8K;_$mbQ|el~G!|Q|&KRHZI7~)MVV8zcz9cS)=2N4V4E~HS0BO zE|`lBP^>W`A+y>XkRVExm!(Y;eyLTu&5EYYd=bVw8`6-j5d_AfCWW?APU6b#db@R3 z)p4Wu*Xho&fvVReHlCfQgJnTbI)s z%zXB+e1De2S#rk*#b9zI-v+fHgc!c{LEG07yBVcK_^Pk*JvsGo?@+*8Ao{y9zgcKf zVV6Oq!zw!q8PYvHW~dLU1(8$w90T&>#V^So9|=Ek`CCFxN0bibFzlGRW&2H$iQYpX zU3Cy8#SZr@g4hmgN~|MI(d4efr!RT#{?a($2hrM>Prl52=EIKD<$8Miouq|9!D{tY zn#8ad)`Gl(532gJ%HK|}jHl`U1D8})o~uO1!Ok)G%ToaE_tWvOpO6_|*}L;5y5+{{ z3@7N8PxSOUz?UKNI_;vVExpnU(N&9=DQhVKDwXdabtbad=6OFA~(8#mVO>6ao(t>>6eAddV zXu6!5!LE$WIQ>0$Q^X^L40?o0dHeO@^ZsGsB_egJ{-k5GVffY6k5<`kY`VfSE9viF zm@ApmiM?W$r4f8cC%g2@@Q}sgMSqLL+m_$tFGbGtkoRfldB~S4VJ}2JyE?O&+nM#r@kU)g;(I7+-xOcI?Bz`=06LdMz9`$Q1!Rf~DhC}|w8p#36 zO0PE#$pdq~}rLdCp;DcEd z`!n{|49^DojMIy2(hmy|*r>Ly8l_pWc@8Fbq2*%j=wzq-Ima$B*!%yWQXwR7ZAF~Du^>yb*#8Rh#d(Cw6j)Kz ze~S3O^5vYub?J;-nD*S+|5t7&oS$QHN0TTa64>=$8Ttl%(uS>xBT5c# z)$91~130VnBX904t~tvJ6Yf>Y!|oK=(slIG_^|OmF7ThoP)Jf=HE2tbW#hu#7nk`! zKlFi=5$3(|@yzlb_gT>n1-e31{bm)R&l3`;&iLuK z@>hfQ)-Ay8C>UMZZRjC+jkqc4ET4;&+<8=XB-j?uNVW?RNG%5-nkNZ5~Nz zt$?VUf7uX6mjW7__%`HN%ytSLmW*a{^E;{Wm}%(?EdHteY&%Ic>sWTxhj)uIXj;Lo zkGMssO0uxe8+kYf<8d4~37n2SbGq|weE9l*RhV*af!AkTBsYy=G^RYpWJL-2O4E8J zQsM-$SdsXXaFB82rt%kJZk5ZAaC5vwsRKrBDL>rdp~F#_;iUkHKEd5Zdvdy=q(8}L z{H`u|zS(UpW1P2+aN*H8fGb2mWQ(TIV1)|HhDbHa9oqU;&7D_Gy8w2xFmylX zxj)|he1yRI?DTJF8{Lzk9^P<|ZQZ{l>IeVw-VkV@C`T(eQzq6Q#gYTr$kxJwPDWzj zW?ENw0iBHE7u4t-<4E4VqNtd6XyVEY-4T#6$C_%CtMahqN7(TOZCTjgUk=AA*a)7* z(c~5yPNhee`E3K|u9@p{9+cXT!RVH@HA`p|f9k3F7GM2ScGB1;x;zlAG?em3-fKo} ztDi3V{+lLU{D+_Z`%`YV$NL*kWqOl@6|XngX#>sT0{dJOewMvUGx5 zsqm2Ioo-J5VI9^fYq#evwjOoSU-DH)e`=PxkCvNA96)g~&s4ihX=mo*g&_(vaw93cBmAs7z7>~Di-LNj_)D7_a zC~_J?nqD%Od&3X^JV;{jW>e1{^zwyY-y3SULwASkzbJjb1+K7u=Q_oEcAyu$Rvg<* zo$9mG#rnOQ)9W`bCafctF2HPODc$rkDq_niS+$$?%5PcN#a@=nt$#PXHkwuo-qm}4 z|Il=SFRGlzQw$TQ`u9)knI8@sj_J4epP4c_I~=rU!Mr8e#x&^|E;~7d|J|E$%d+?1 zX(Cxy5G@w4HNCo*@pnbJb;qsy?q)B{cZ)kL`)~`Y3t!K*irvH zUl=xFAMku)gQN>362}W!V`Wqf+uocPkNj1``zH>IF|wlIdv_oL&&hp8KGb1 zxPkb5E2JlEx0KiVqyGk15ol@6cRADYLld_*dMQos@()rYZqnhDz?!A?>)Y!mTa0E@ z*IT}P+Q;|1^3`+LIoLdw^$r%sAkUd606=vL`&LaJfy4btr$77 znl^M_?Rjzbc6~?mc)TXe<mUS(Ntt+N`@lVxv?udD3+^rmCiJxQd3-0^i$|r> z1QZimT$bz>*TYT*B`X_ERH*@#)aVs3--N+^3IyJF@G8yr_Ez}WcTG4FRJ22CDqo(Q zwzui|qBJ`_6L##`@i;NuaaKLFIt@dUYXAt(IUa8`1OVi<`SLCa5LLyyC^2_m!e>$2 zt(i}r*#p_(N27&yRShKav&}o#FTW303mZri;Qq;7-gLH3A>2ddKQQpRw5v2M~ zC)0lXz-Pc1Q1<<>N7@uUYO3MK@vHh>@}E)~n-K`D3U2jeRpV^x*zwKA%%_i|&BU)) zJbSnUupM+7)9*`bT8>^p8fla!ahht2i|G@#xVnawgqTcK0U5=>8cOD?{J18oSuq=x z8IZ>91J}bhLl4vs=Axu0{9Hc3RKQ1o7Uksf_WMMy$~;Yxd@Uy8a{em*-y54 z$~A9ls91{|1CA?(h%NsBZU)ST223akEZRP3>NbPt7r5+`nwfA zyS!Ty{rAhKUzjxw`ELqQnZs!1g1HOu_^?P~82^;1#o0W|)>_mnXf0~fv9>VDtCsAuUMiJB ztC^c#dzW5QQON3dV+LB=Y&%EF)99lvhimayr^UYQd^`6)-QPu_a^oVrl@$4be$iSPkJps zLYZ1cuiFHJ^l=?O0%ko+^-}ydc*=eIisF@$RRL!}7@$?O$COu{?kiWxC@euqO->y3 z^)V7Z-V!E{`T*QOjeoterN$}t#9C^&X{+U!I_!v|^7+GVcG?F+k4a6Z+q7XhoLgkC zIf|%jq1lnrMJzL*OpG^%-3Ql7JGZaA6Qve@vdDWp{W3~)?RD$v(VK@IO9{`C9}Yb# zDZVlvtATw0&I3^hR%{lYom6;ABWU8T70C2f(AB~lJD8LGiBFBBACAfso?i{FkGj%* zH>{WT-6pquA*4OvnMg(e#A_gymkY3H;omGoudr9Z*;a!i!x`roQxnVSnUsh+Edie$ z(gPy%1OH(B6bAr<)6n7w7h06k;j?Te^{1F)l3&PDcLOvyw3g}z)sGvSQ|a8%8XnCz zj?zh$(z$HEHbQ2CVkG+{lMkV;)dQY2M#pU>7F78q_DhnxhuUb2cpu2{1tpz)&@c;d zBbT69nNnxydsK&b3%o-)Nte;EhP>NeDBRNm!Ep>B(AF2ki_824PSR-*wh|c}y%g<= zHHLrrFbIInL8LekARbWN@m6bVKU7L&W4LVIivppg^=SPi=_;1h!Yvyu9POi_B@iFr zZfW;0x*>7RvRfyLY#Z1{z|zHY)d5xn*<9Qfud5w~&ea0zjKTr}+mX#f)C*3%!BGJi z7AG)s4kT9@!3w}JeJ7wN7X?b{gB?x2JDSbO-#ef<67kYQ(mETCe$jmrj$n&;5NiD{5~Gay=aw=Ql7 zXwU+iy)+nnos%AKULAl#$;sU)6<+3Sdp}ncMN3d+5Dsew+pNXzXL&(e(0beXH~%fY zzGUGpLZ~5P{5M(dVFVD-(A;Pm1*@?-Ht3pwC`i9CMFQWcfZ^K|9BlY}UtMf)Vp!c& zW4-ix(pg%GrdOuJ9TYX>x8n%e5E2hbMWitE4e~xCisE%?t&kx%QPjgN#h>6sFccrC z^Q$Up!0NR4Avkr~yMyMxBDVmcK~y7Pcfdjpv}Mu17Q;cpF9T#-F{+v{ z9O(MV9#D{db!V_+H?f|oWf*z7z}o74{o=}Sg-d;i>B`9L**x8Y578_fR)8c!efCp1 zYsgJB-N8Vc1i*!(q3G&Nq~kfwK#31OyDQ?Rc0e{()J8VFaD`H(!oLHPj) z#mx@KX}34f0@{VCFbuWSMGh0}qwHkCyHCl15*G+r>6gcJiVw(M6m@Bha^UFs_VZ>> zZ1^6P_+5xglw(WZ%35>n?igeomDf;Q2u2zoT-!gmCZK?=#h}7!r%AC|ofV^kxxh!U zof2-@?1fF;eq6&J0{I4EyH>bGx)|UfA|;W$*`n(9S5_y&oqyW+=Xq1*;Xj^Hawsk% zSQ?cH)}SE@aHxk2#l`3b$0mU&hn!9U*vSvJ6#pSG0%!)L zGeF;lWLroP>y9q(5;+E3IrkCW0`RM+*`fXdIv{N}rj{JmTnXbc)SsaN-Q6t@ipt4GR(V5R9^BnS;*)I!6GaIO>pv*94`Y>=V{lM5E1vz54*LWNaSQKu93yiK-l0 zC$wlcV8Z12<)%S?8v_jA-!x@P8c_}096Qh-tkoZ<%991@=1YzDqQLY8(3tkpo)XSj z@{#}R&CC>pi_S*x2tQ@vSv7~-X(swcxJhq{C$6Gc(-R1Rr}aLnXROR~0HcI{qD88P zt)|VJNQAW}zQ*u0$FwZls6}$!kci?`m5&!ny^$L8rYLSE5@-9OxiZVOk`K5^kCN=Y zWlb+8q5sYz)xVB!Xd{G@Su#`0w)}e}*n$cy0d+@&ih-gc6&s=M>hO`J3uL{f~Yy=ck8i~E79s?L?;w#%t!wBh-1D~Qvb8Z)yzx*ON^0dKsT?l(} zsVO0paBwtKhug9~qD2v9!dj4%g0s|YiGX_2EG}aiWF_^9)`5mw`ZjBkk@u)Zk}i-P zTs)R1A581lsO9svP8E5}H)lz27JX~E!QjdaG?eTE)kyMXPrRA5xAnn~t+3VR-Vi(F z4EQxP;#DNhQByqv>i(N*q-CV*r&wbt-|JTm@S`+XjaSQ|t7g$RG@M;8+y_6ZE3z1g zC<}*!XVmF(-oi)LSjsf_9v&#oCw3}d1h%&9G!&^usISz>uLfTYN45T$31)RxsyQiN z{9fsi@!`iReq%SFhv};512PixYe2@G37+s+ zO8m8Y zG19;Ypic;plr?2k1D(#rKGX;FXN2EEs1=kMw-WYuzNS78;ea=XBgD6&f}mfS%M7Hr z#DT9|X&?7l9-V?>hDbYcZK9+%<{VaRV22rk@WV-#ua}7fk&2a2obubu*}{G~T(NN% z?ZLrjV1RruEA!)pMbexnFX<%@6@m!z^T+w1$3pJ#zj?r#mO1_!Yzu>6^aVGL(xE$3 zxL5N2jU>2Nf)N(o8FmVLuN|IC40w->HHs_mQ+1As05{yp&(_CUf{Z}4%Atz)Dd;(v+R_ zjwA`QpXyObdP`Ca)!7bm!HnYx8p2@-+5BnnQ%|n0n4cUDsscH3dyHH@ec}}=t-m$m z!Z{z!u{YgibTwj+R1WN3;tGq+mM+%${$**aJ}>0LLsdQ;#Qf6kjvTYMT!gXm&&`I} zu+1ogF_OZff+EzFe=dZ_rieT$j((Y`de=}GuRP6=>X~ga4_BR=h?Sh|MwCUePKZG6@UVfcE_Qe=jdS}nz>f-9=K{ftpPusfD1 z$Cnb@L{|Yc_GcX;%W2MF%)OR zlb2%;i8S)MhUeJcxm%HhyFobt>g{2GP=0K&C#ESQLm>)T%-DjURki^Da(x4B&08(02P5;GdQ(>k zIwxjDG~sGse=)rRjQkPEjM5+EA>g$Vp}|9hObR4cT<8V29^gPX(;%ll=FBwHT52GV zG!PCxtGD*mB3K}|Vf;jp4Pvv}-@xFY9%%w}VYC_lY9*_UvS17p6*x6bS%(~FwGXuF ze{+Anil7clg)EazD`w5|G4zh~TC^xH>DbQDED8pM$br1Jae;-DLqEzW9A8R%CeLUf z9@XyGlJUut%Y&yu%sbbY{_fn#5uJr;kO#s}0Dw)N{4{TA+t67#FLW`BqIFx3H_Qwt zvz4_KU*9W$ktgV%Q$fz9Xyv>gkh%K+AeU?=<+;<6xk8%;l0_1^1i0*@C=ouvH-Hq# zZjKT|R)pN44XcEiflB}+P&Ronrk*USmu{%kSDAhd>Fb8qOl$%%qx5KLux3MZ?5WRE zl5~~Ept3r&faU>=OZO^LW)t#ARtEcEo7NM@A2OP(WVfx&?Hf(EDG0>Yq2S15^i8^} zC8gq}1#&}Qq1;PasZ?qG7&Ux!^Go<4jIV@R6(^&3?HM*oZ-veayPD(Ez0AICL}g|g z?%d|f?Oa_C+{U*Lctar zADd#aW-zu9rNJI`>mp3X_`hX+^*L5*P(zNywHtix0)JiLz$AURaJ`N~tKvg&Hw{jk z69X)!SHckt&8edzt-Zlce>Lw%=VW<04AC?AQ6nR0ogmDOgQIRO7%Kb?(-O}lP1TK` ztd<2?jTKi3iwWp!S5VioPH&jz%|#s-G3_n&Mx#e$jz*;eOOoVJiS8^<1VlrN+)2r#^t@Q^^>jkfHAS5+fQG<;`0$pmTo~!YfH;XwHKNt5ykx8oU zynl8pq&3K~3qKxLzf3u1O9`7c@98=iqB+zO{b%s^9J>E!XwGuvV|-WMyyM*!_0~yZ zvw%1PP$c|OgKdA#dRGb4zsukT5*59{iiqzj(6(h%loej&>~Zb(uw+7Dj?}m@ew}=}dJZL*4#+~jaeFTexAMF+=eWI6p z_wJL)0hheGQyN(4FzOURhc2;?(jDuN@hcOHB3}fRiNU9|O>EZ}KYpIog6C?odh+9S z17mntH_*D9*b3?yN3|JB@fo8qyS1l79`dY5kGU3Y3FJpi#4^(Y-LVR_e{I|KKem0x zip!u5)lyjClm;r}D5p|p$QT;vzTu$*-8vhJoDVBtqhT z4bcBv{A7?IY>A(rIwLs~RXW~!lV{I|=`g`n=AxP5k51Kr2xYO;VrqmLo>d)UHKaJJ zj3Hkhrafg(zZ{6XQ!HGT&+K`PeCKy&*Ad&hjKU(;z1{fZY>B}`vcGImYBzVITmg=C zHU%8VhI`hQ>D728Aw{?1G^aOdbD}H8)&t6GT`Eghtvkap`$;)j0ox|*8;u0<6)h71 zI-bS9Hw$3PLramdjTOAjWZ875ku1&Ro|{AhoV0i|xI1abi8kZKITPw!%zV%HDm9!u zu+l%XOk5$LEG&6l(gc%FLgOkvyshkC9i{~sfEf7^%N)1e6gAZ9Pn{{{FH!zWniadM zeS$KtVJe_9!~U#sb^Nj~{LXzzb8--Fxdjot=i*C3%lYj5r7hAm?*C?N|9Q4t bpgiHle@S^{ar+G=K>8Tym}tMbhK&3l&M3+< literal 0 HcmV?d00001 diff --git a/img/favicon.png b/img/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..fdc98338332ad4a94e8f8fefd11b16660b4040bb GIT binary patch literal 493 zcmVPx$r%6OXR5%fpQawmQQ4~Js84(dyFW*wy&=f7@8U%$;rKF)jsx7D`D4GI?2pt>C zXlZK-rwAHKT`Fj4h=PWKpf)XShyqPLo%`fnd-@2waPK|$JKy)+zk~44M(U&!;Clmr zJeW_bQeaT{g+4L1SaF)U629XIM9Pz&mVJ;QHx8o0sfmq;cDgjQ< zAcvd0%csDg0wvDe0Xlq`OV3~?^DAQb literal 0 HcmV?d00001 diff --git a/img/features.png b/img/features.png new file mode 100644 index 0000000000000000000000000000000000000000..754c8d0cea2e299fc42135a4b4ef0bf86f5fc190 GIT binary patch literal 268941 zcmc$`bzD_j^FNM=3JMa6bV+whNhs1SU57?O={|&rbhorhBOxUoQo1`O1*E&<5WjWq zeeUyo^m4zi``?e(3(j_*z1N;KYu3zr-ZR@kMR^H~+l04~kdQE>B%eJ;LP8TqLb~CH zdJ~+HD&4?ALP8fb7Zp{M5)~y^w6iufe`$h*BpDd1eoI5S{XwesbBZz%l#I92D3Oqi zw|x&$C2?QArHW8|ijIOSP?_^%Tny#qa$dkk%WF+xW4iaDdRR(IYQ_5M(;2S|;T=bd z@SYUm%jA>Z1pB4w$!j8eyy_3z#mkY}u$N?v8sEG#idKG?(fS%4zwdFq4GXJ6Lr`EK z%4dvyFY7HUq-WE5jxm9nbIuyB^g| zk!ZAHFL`+uvN@H2S0BPr3}LnEw3W!w8QpA{g0FQ?q(Y{7H0@Qa(7yPvh1c=EK?sGQ${#7++etb0ta$DbWb} zwE1iPJy<<97SR)8hMuq>l^yeykBWDjZ2aFVi=8C91RPL6=-TcCDxbWJS!~HO{BW@H z{Eua2b_c?R{WKDxP6P?fQa6QD zCu4weck{iySwEH4`IV@%cP=KWE(SEtDj^(X?gRlSFR{?yiQHty`1wYb++xFg*}E== z^26&p8RXYdU#ABVyo=1h$8NMFrbF?1LWSh&v-jqHI3Y#*H%^%}hJ`WzV)zIX-$lTY5TQ?_T<$z4cO1_?zbojfg-M_7d*^+3sr!hN$fC z@a55|$7lV%3U3BWG+2^z;Z5E-BGqVh_G&PCN;FF`%l{$81{#$kd8!^ zMyuA35ye3g%!c##{3oJ{07bI-6-p5eH zhy-o)a&oV8Pu^1fS$_Rea+1-A8%o({%@C7rd&jWaR6IM#OzUJ}=x3XKz0 zVko*^l>88W^ST{-FWHY>H(6H)DdMt@PEXGoKj;$Ut?h*XkM%VqPww;cbN^aq%%e1*~W=mfreSp?(5mp*Vbrq#~B1j_w=v5oORQAeQW!MH#tfOaz8mK zl}{iWlwxw}IopjcB>N}qbT>M`Stwq6^txMLVC=@>o0~TH$w=AtH*5%WZaL3xt|0e5 zVRgABM2Y(JsTnE>yNE0{W79R;C)HS9R49SZ3?q%HaN9+i0?-q@yF{fUaV2k*pyfXC zl(_qlHo{(#$c|`5q%v}}jrP9iu#)Z&ez~}RI)v^{sK|Ujn%PZ$0_JB+=`wwGWrS0K zBk8n#ca|N?NIb$04Um)@@!t_F2Dlo$WFnNQA7H0{bceCNe>kW)K<2VjEtk{Gw*hw1*AL5soNlryDicYU# z4r31CEypi!jnoxhw!b#VGK?_!Jo&!sOj>I%nw{<1vLf&yq^3?7!?iSgN9Q5Dy_#;`(UbWQhmGOO?s&TaEz3>Kb$Wl`AZSNx-Ek!82gy&t3HawD z2{Ozy_p}-zRu2-7Qg`QLArf=W=WKSJZSunQ!i6(5bxvMcUU`?|mxoBDNLC__-x@`N zMLd6ue4}L&P@}P=T@#D2kKkGs>4Sd3gwnuW*d7o+(7~A`{CF=4>pAu=`Osr7%Cbjg zJY9k>-Ntrop1M3c-rY_jHo6b@HHSPz(4XZa-c1%e|cFcT|KN8 z&jgn`%p%}sfAVr{|B=y4Lz-4%LQ&#-oLP2V^JCb>oQAzk{qr=<8v#%}vio&h7gldx zyLVGZO7R@=| zIYVJYQ5ZNMP|pzV-tN>$=x0X9ibI1wd#U8RtZM4A=+||m*{?ZKa#|W);=B}L|J?p= zkYkhPT%1nyWG?I#&Mm3p43CoDpTp76OzeRISIOzO)h+J2#}r;lri^g05v3n`ikjO7 z(sMB$%H`QX*^p#Y;aB}-w7wsF>*QLq_p*3;*^=0u#am@Zy5veDG|fvBUubuw3RhXm zk0o!|=h~MpUMT(4Df_s*QJvu`w->t9n=o@CGsarpOxQdymvqM+@1;fn>wV^zx<4z; zHa=QYpGECu_GFr5>OI(dkap?VRJ2fc$SS2bP&s6@a%$3KGH1dQcZ+GJ_9;|sHmD~y zU45j;u#iFX!08}kc&THu<5B*H!pH)1)^H|k9ZQ(g_iG{*66kB zIh%O=IIYBJA(G~CAEz64u~Z(*I<;6^E$MFRzL7*`Ej4Mk$Wt_9@rBTedFs?L$weD} zIJUveoyyHE5aPsCAZBS&J|)n)Rb9>KqHdI8G?g_KGL;GaM*2PVMP2rVr;&Bj^r8m@ zzIv#=QN%AItoS^9Na54gD=c7rG(2BOh#fz}+ACJRQDlow+)W}WeEiYbctvTo|3m^F zj!U{Gz`{3e|8V}Jg5t%mbCC+|q1Og|x?w{PyelGv6DR+Q$ciNZ!7JET zirB04{K4hO;KcU|y(#*ydncR8(6>voK{hwV^X#d#stLjIa0e7;9e4brZ7bTM zy_5863BAfi;VeNGsNreGVs7VPy$bru8nZ3e}-nf@)&1a9|OOqd+!8JzE zDu|TcK^^3*jb*JmmiAVb_AIu41H;>1A^ecnWy~?!_wJ~1h@bP`- zxrv&K+7%M(2+<|dvoSvmW0JbV_vA;K)ys{>G~h%k&%%6&5=<4bB#RsMEpd6U&K9seqN9ALqd!V5)~wu_sD-;jVAv7`d`O4{J?ie zPn1Qaq`;@Lk)4T&mA#p@18In*BRGL(BdKYRg!F(K@q10`In_28f6QD(!$Ct%mfy(w z6^ntfwV?@%%PSkiI7p9O_`%^T69)rwmsc;X?D<^;AO3L#KR8C5W_?Kh$0ZJyf)6$1 z6v;)c?M%oYv9PhQJruf4PEP*V&e)Xy`7`nV+z$RF_|VM3!G@oe)!EsZ#hH`E+U^A_ zJ0Bk(D;ozZ2M05_g4y2H%E7>e*~*^s&q4kg=b4GUk)64XgSoX8IbvJ`Lu*F|!G{kK z5Bl%VpK_YGnE&rdR`&my7MLI_;u}_W7B<%Zjty>oj5y1$XzpV2QuCSlE1)y*3?X(d zcCN>N-0-)r{`biLbF0SxZsp+Q`Q_IC^VRRSs@j{_iCVt`4|Ndw--7+;x&Qae|J?YP z6*2e!ql-Tk{l{6LX`$PXS^v9gLbuz(w*|pM5}Q9$PywI7%n(1wjo=U6pP%3unGES+ zEGsZN5hST+PgGp4txw(hN~~Hhd~yBbGpfM1Zy&H+6T`x$|Hu_dLmoh<`Yh2-PYj}H zej7Chbr~13^5#DM8#?kQC}MffRf3*V?c?xEVxwkYwOuTA%}mWq*Kn3Xt*yTACM>}= zhd6<^iF@1=Z@)-SE%O$D{F zN$Yb)R+zY{fBOb8l)ei}WmQ$<{>q@Jy1M%E$_hbhQstfBp2L=d{6@*ABbV*>$0Gz9 ze?EbhtE7R{C*wfiWU4*AId<7Y5MZC|4x<@pxeZ{@S%u*n%pn8;_Z1G zRs7&y*UDA0l+}GpvaU^dWS8o?h_>avBrs7|uO<1boa2f>It&5T=wDX&Ki9ky@ZQ|q zWb-)P?;9S*b#rrDEM!x^_lp46kSQOM<8wb;x03#K;6KI_;Y2L6{ZXr>aaYX0pS|i#pA#^&SEHGP&#utb-`5+6eDwFT zSDyL*N91plw;i0F{Z|IF{R;~V`vwO&E1F@czX^zc4Qxhi5oejJ9897%SVkCJV&m6k z6rlu)3Z>)o|7|S9`gn)o9JecY;+Xa%6Fkr~j{Mw83UyGK;EwzC+Opu+`YKiX8BSL% z#NW4~A~se?o}$L@4)#~E{(8cDT@;k`@l4uspTExhKiAVc2#Dg_aQoj`-v-!E!z_Zi zzq`zTc$5kdh2g&1)q?&mmKh#c3#S#Sjej!zUoHMU5JmOF=cm69bLHJ4Rj8=qMBr#nA&2oE5V>&3=adkRl{@dH;a6K1NdI8&x0xnSKj}t zZh#>g0%aPKN&L&0^aNb}V4X{q=8CEPUBT})z{VJBRr*cDzhC&r87+htzabzO`|o6- zdw>P&;wuV4@G=txN1J$Y7dq-H|2elbaizrhJzK7$S8#OJFG#hOs%-u*ZPOcJn+|Un z{%fuO&jYrvV5&ZAxm^EpfknUqqwzn%{dZHv*8x+lKTsk3O~HR@@tvjjsGgVL>nNCcoMmoE`5N3}i^nHj-V~xU>pP_Y+`gNg*tpgc`(drKy7AtF*`U(5B6~j>xnN z;1)giozIsSa2~rrd(^J-Z}Z{8q%5$XQ8vxE>TijxtJ$kh7L$BUdU$5s4ZtaMZ7Y}w z0tgS@n()OlCO(_R^uq5E*s2bpq;Ox;p1G}ec{<7&{{8zn@{Wg7-;-M=kLHxqPE`UPwzd=Fy$Zb4`ivi)cZoy)oyIl#Kv|Zq_BtwRBz`u(?fhCr|sI$PmO5yet zeN$5;2;W^ICqTcOhUW!>fb8L@t6&&$Rop(B{hN@lz%DbaF| z-ubHftc>32^Th>_@3<1)?0P(ADv;)Nal#exrC*$A!L3X)n)}7u8>!Gu*nY+AVv@C0 z4vkSu2wG9~uJpSXsjh_lb-D_b^I-xFJas4CHWw#L*_RJqjyhT3ftm4(0V`B?(-Qd2 zb^I}DGY$Q^^FtXQrF*pU_tDKYx&yCce}!*WH9pXOiJj`c+wQG1y_CpH{hauk#h@I| zhCP#|zrISGG<@q`2;sC)SbANGO#>Q*ABG;7u+1iH$q!`vt}cwTRwT5F46zL~NiT5< zVT*}=6BhvVa-1!&dYK=eISH`K>k(bAf01k}9*{03xYKm+jnc+Q`?%<95ecv;j>Z+1 zTvsg$3TjB%x1n6+#&OFcl2nhw?@tOka+J~=$S$`1KiA(R8e&#w%VSZ}P6b}xeTp!< zWzu=ZqtORbNCTFOz_1-yx0~ph=2bqOYtG%z1IYWO7mInY{k($@ZHmM5<9bZbh_H96 zRx$c2nhlIV04)T*FNZ5^T%|j55fJ_nFkVg5Bo=H+OmwM@c?Zd(X{dETdMYmS8znLR z4X7-e#WMVn=a-}JFVePKg)fSGyHV0lBgWWKkO7EuCOo8P;FoVCl!y!RvgKP!wr>E8 z!*d6z36iSSyiZTj-%f!Uc#PBF5BoRW1)I7o19&VMrzGjC96qpV#yiP&9rOmhf=Bri zZ~N0FvImbH936cLI88H@HwDl42Px#cRjt1p_>(l;z|&E5Nz_-NP?#XSA3}Iq7^?hE z*W+L~fd?m~!?@T!;)c-0PPqSsRTXpTkW@5HCPhy9h!&$D>2(p?`;GWxp~@vr1G|OJ zHH=-Uf&!)OZGAsx}?Tjy_- zL}%*2AM5qI&BzEB(U=}Cl;}F3`630^Y2sBymr=?WWwyLQHytP%*77spT;zZCG8oC%OrUMn-s1 zdJQ>+4*2=Nn!@g@{5%#pn<4THeEO(i)}JiZ^-|Y)io2;#+A9uBiT^S1vI+4_tk3Fql6vQi7hL4TSEx$&Bdtfq@L@3?6>a~1P*)Fw=5aqNDthOssQ)+ zk&xdD#4huhCTNfF<(WY{bv$~pwMBsz1^xk;Th^<Bd( zZ9O@A6;NagC6}SSk*>Al%4Att(wS(fIwLC!sq)4 zZ}m1_&y(+H;F#QfK9uJ!BJv!cEeX%qn3;zQ9!fTl^(8Ir$Z}Z(GJ`>aaQ+V@%bM0Qr?7g((XUAPH zgzh1BBNy9qsJzz~qwU!c&K^`mRQ|e>mDDg{T{pG1JH`V(J+zMSKL*Q`-b|lcek6Q( z(%a~|l!9kfweh8_aQJf18`GV91H|@e0StFlvbC*K#r?rA6IMi~y{Rc`3ji!@69#nV zjpltS9M8T$xb}c+p_k_~m)(_A`Nb`SzJrEwtf#y2b;l%sI>1>1f?uud{hFQS@iSEbM0ZqDFsU7~nPsdPO(*&cBDv5Y-(w zvkq**c=;jU>ncO=u|m=+Hoi=-ye#V%ANF4@Oasw#7D%&d4?!ns?$vQkU^fy!J$FO| zNg}JS6irwP2RPZ~6NbUe16yt3p8M&;{x@IMeA!~HJKGhS8D2ujB0Ys3^LJ_LGS)r~#C4+@?!4`tfnDLaH$ zx$C;?E%@3`Y&bLDj6!I^A6zAf;j|=oi$KuOj4$jPY_CTkd-iKdygCR;``D76@0hQ4 zC5qJB=UZNN4nMqa#f1rMe$A^te+bq(+Z+m&+l172bUCv)+CM zG0#iJ&-%=0BgWH|Xd0R7a;cADF({-Qz4S9j3SOtmizHD>veNC1-=FWkuH8PhgB>wW z(0W%5*mW|;Lm}nbFFP?kw|$=DjIBBA`jw=u);Q-)C|0GS$V*H8_#E@rg##l>sdUw| zFsfglqlkHiv9@lFSqh1|!pR_NJ25looGZ z8x@Ssm5_0sa#XMR$k=+h=l;{Rb(H^h!C|%_;%@8AFH2-p$IDhpMi~4 zqOx?2z6v^X(`RKEB(%20KPi;Owcba3OI2tKVC+0-XZ7||_t)-6Q_k^ojl*`XnnmsV zf(Zu62o=D*N2Y15w#o+OGmTXWC)dOu;>U)talQAS zZ8rlKWTaM}Lxc=+;O167O2w&SY3=ySbXrl7(ROg|Ll2Hho&JSP{94H@-7cniL~gWM zUVM3TS5V2*i-xi+^TX#!q9NjdYb5}7(w3$!a0Ek)gt-Z`y5OD+x6(ZiOVbt-afc}g zxEc4VGO}{d$BFawhZMa)*`1&+I68Od=4748kuhQaa}E>zS34xQAr?Tx_-|#z7ZcZn z6vS^co&!I+GPs0bd_~wgpjT54+{o?whARPg{YjiOy0Mc`Zc6;1Bs-C8#6*f-@g7im zR|o>Kr>_WMuDKE_W!MErL?lrMW+uXuSE{~CvJpKIS{UWUk(oA=UkLhnBi)dV{-$t; z$wH0k4H*FTykes0Jysz}>ZYz<95rh632ym1!wsXnB{Csd) zpLXklQFyhoL%LeEYUkn&x4+i`YQXYy{NY3j=|m~^*VkJ z@wti9k}Q1iiNmf9X?^mxq8*G=!%Hi4?g&sS*sY3_P12Um!X_;f(tA}tEL~K0;g;rE z;e+Je1Bjv3^@~xrt8;byYu>!&-6Ev>E!d%Rl9aZm<-9?ylPqF@dm1V_O=SKu_VKeD zz?3t$j1@h?#}9Zh4Em$+LM*r@Z917N_8El2c88W#oXQ=$$HSCg4r`OTEq@qzbBBd@ z*=gYv-I*=VeFo-Q10vk*?|z@sZc^fNLl4&{`|ak;=)`1{elVZ59J%(#=&&2djbdsJ z_Duwzt%J*p ztxLB97zWTu*FCf-R*c`vsef?|bY2S;b7j2{Vb=HrlK~-HB7o;#Hla|r`B@}2RZ+|{9UF2(Del!cT z)Asn0=h<;YNYDK!Y}N*V-AJ?Kk{(3SM>YWNf}rQ|UYCQwS_8XL%Ue7>cXldDT@#YK zK;1f$Z^RN>S2tvl6+H^&vZm16_f25&Ekc1F(IGcuN9Yq+=#t%5b14XXsgDv7A;bX0 z!cM`9gkE==Ci|c`R*w}K1Aubmw*U>&>qpfWJHnZeSiD@auYnVCyZwHUWA9ooTHWbz z(bIh88fsT0(%OrIB7ftul8BHWv2LxEX&|SfNFb#@+T|Y6prlIw_VzfnQwuC?l>T!B z3!vp|+!VDvqHS%WN=t=#D9Ul5Q)INmsd|CFRk>D3frfU#Ps$U;CV$E&DgJ%c{$)oD zeXeHOb#4Kc>g|TlfIApo$1vA5f*}(6G$YNe^RX|u>N@O?kAL`h^ssInufGsZnr1}f zdTXrm&IX`5KalD0Q_be@($_%nw9GzWO<)V}Y06ZOBH$TFNfR7-sh(s;ycKLbT`M9} z(=hPeZler;ivU%#$MfNsQa_mX5)sK9Rej~qqqVn1o(G>O65Ke}6pK9i=?Jc|QW<1N zpcFpk*i}E}3o^lD2E>zx*33tHLcuQp>AgiHLUwL1y{1d{2V}A#!>vX$FUyD3Vs#r2 zVDvNF7w|1iveQ2Qx%Z?Cx-}4BxgrR`;*RAYKG8TS)xDLV*?28Nw%-ChW zU&8*9xo^o7IN81nt_wQM9-iDfhB#Wu9W5TS!t;if`0i zUS$4!Vr&Yt9dG}5ieNwzMgmC-%Xi>hN7y= zQsQHpp;%D;UCNh0(<2gn36_nTW0b;W-jlkSyy&{ zq&GsONFOJ%S`qku(v7x0r*br2fi6#?U(&kZtV)f`(d=xRRcmgEe`^L?>UF_Tn?tSG zf`B++?ajo6-FXZn3&m*rNWfgHPm>dD-_$ z@A**JGW1tNNACF2q)#kBszA|aNUgX;mleMpWWwq_-C9!O+zix|=Rc>bs;UImN}hb@ z;i=DwJf3V43OPC-$`(@9GL95uFl|RQ%ruVq{50AarLp6rd@Is8Be%iwlb4r8(JMgw zab6aZI1VYn&f`L`G{>xW^wF7U)6-(-wnji^q*e(?Xz6xIbC|(qbh%(E2v$v^$^!w_r zRWuq75*XN#Y!;*CvcWds;8L{3U-n9(q#JrYDrt%g-tC&dFxJWvY7TiO+$`NC$Ho9j zlQoa~KEnG^3w=bDwS8YZllQ4~q})NVv0L+M=ios#Hq1~l*Qx2NaZuhQw0V0Ra1VXi zXX7O8_cdWAO%XC1QL>r|P|tok%i#qoWqZ>&?Ca{9TPZHDl-L-;rsMDo^J}+2-j(J$ zGe!%@wO0qZK9xd<)i|A0x!$ByFbAcuruw{UpDmw~Xj#3OXsMPq{-S2eN2&X)$_a4H zi-!{#Qqj`wT=^L1N$(Z1$De?j93h~$2(gm>!Jp|^rrt7z&^+I@3}{hLx%6SnehPqP%x>>4{y7J+jglasqyS2O&vY}~z-N_OJ}J)8V-hdBGha7o z^$W0pk7vLi9DM`&-lQu0iT$;cr?mu9aFYj6I83L<`1lY_V2V%~D9N$Nw9@Q*_%eB$2SLZ! znh-COut>f~0S}IX5}O4;FE4Wz5P=u?$nT~}+$!SzQtarQuDd@6yl;_eXt^%L+Ha{^ zLHoH(0QkHJnZ#*SUw{wSwwQYm>h6lK1g0Yovj9&0#ipPU2?Aw~%h**I&5VpxRSQnm z=kRJNc*PynU7o`ni&CU*s7`Yy<6szIHLouLN~h~f3w?TCeDybl$ia zL7cGEYzfH8%2nmT1Hr>F%A+&48NP*vIft}i$2>^*p!Wz1`{Z*E`2#oN8wHWnwZeHt zpCI8Mg7Y)!@Q2NERx+aHJ8G~Bbhc*lF4CW{V`s#Qu?UFbu@;zam`R+HK$DmRKGOvewXU1IbYZ4aVEG!~1;Q;LP7 zf2eP4I=}%_eY?F)KGsM|gc`vF#cr&|8cP?kfpQJo<=LM4R*$YimN2>$KFyvBz@G6C zH}l0}?@d{8I)?RV~pK??xES?Ao3eEzPby^q$y9PjumnBl0P+?C~r)k%v z-CS6a)K>-_`)+QJFt2qZvO5*iZk8sOH;GH$RvSVk}%PFRG4wdp-b-s|be7!ykGsTE>r` zHqYN-`Kk}%9*>2BT*ds-!vrC&J&l7Nsu0|Z<5pp{t-O5D1MCkVO-+d|2t6k^@W1KGX)Dg(@&c5yX!d=2ih{#$| z+jHzF3bg@*h@e*tl+?W1^1M}k03L#&8JjQaR_ZfUt`resX3DU+5>OzEkGeGjql~1& zyfI*8%au@_Y1WhjWMbVafxv^s@uWykkNA14=MjV~y?iV;V7x0g=qnhv%AFEFuRAb zvMPOt>9fcp-wtO&c|ITq5|-jSQzu4w9n}tS>h>1Dbh(W#g4UOGkK+TUM0b+NV1FNke_GnI%~(pdZ3^>6u!>g=dai*zp_(>*c+cW5OXFv zQo^q1bCQTXYLoe5RKMYEGP=Uj9)4IX^KEetkdF7(6rO$)!_$p{UbV()ikX%l=K9{SLJY3b>(#w#6Pz) zTYmLXYBv)rA7-4K21PdeHHh{IB0TN-V28M!u4K!&8U*gfM0$ak$RXH4QEa@Q)-`XN z*YlN%lFo!QeCw03N{*eqTTS8ThTE{wpEVNjQZKMGHyrCgdgLj&g}3&gPNFmp5E>jE zIwRB`huz)I#%T?w#YXQzus@pw<>>7D*-o0Xuca}ClClIYRQ7A-?Q#qa8*(3y$HFG;5-)T4aX+@CSG%p(j~hdUDS0SD~}Yyg7K)*j1R=_R5; zq|g~6yzlIVp0C0RQg~Ysv@VZc1p2ui5NrZH+)(w(gGgslbrwL;%hXsY`xO@8nBr^< zapf(9md0NyCP(mpbgy;-M8#Gh&B1N5xC3%yX2De1>;%`xwb^q=sv}YA+4*kh4ti%0 zMpj#u{OZ?ZBArDwEMMp?0f-@S{TZnlzyF=5Z>vq{#({mSh>sHG35?gc-3_`UC|s8bqs&cDi4~q=QzR6A0?vyPP288NEY>yO?FG&l8YrCT z9u#)CaS*C}1xS!#VjCX9ATjuqFL z;})KVK-$!?rNpn433ecQB*n}AFWj@J-VDp z=Cw7{0J#ol_`!=8I9=#c8tHaY`Fi_Z+NRx!xKZTKre`5=L@C>5(zf+rTzy*djnXX0 zMwzYec35)M7#t78*T!h7;Si&S3tzY_7U!oVz51g0b+?1D^sX-zdH>q^W1Mr9LXES> zdf+Jw-H@W4(n?TFI2wByQfDv!08$h{yXBzNg?b^@S@&+_%hn|x6Nz*pY|MKXuQ z;*0giApDAQWI`6AsN*yqA{t^4vH2J#DUP2vJ-l^bY@BAZUfg;JV?mStBc34^0~7&d z5fH+jd?s>u6w^U4!GfD=5X%&j`c}N*V=zmi>&pxw9%1a1YcNDeWYl2BfQ1gSEMyCxc_x z&dlTbQ^^fPdX7#KKq>^SCZWKjX_IZ9TBR6?&gEDY>uP#Q<<# zUTC$`cKxj-i2B5>8U_wLB2W)^+7v7TQ4K~1J0AFm9TKIlveSGiIBr2H9@?}-gXR<$ z^>zxDU^zgk`=UzC z%B$a!*ko@=SwSxQtNc?7U-@AVGB|f_5fjL-0+6!?_Jpo#K0`3}jZ_GJ_`cAPjJP$S zqTKEq%pD2?_p#)P5EV8Cc`uc7q*6CQf&!|d%GmREGXdDB9w<7+?pdekWjab_m*i8Cp#`{p&i-DuXZ{6A4n)uMWI+aKTFU^B zHXU;jQV04Wa3R|JHH4yk2XWOa3`Rszk%Th#i(R?u&sG3R?=A3RdI16*$gn=$iMD;Z z9?iQj4bon{p!)IEBk7G(P(Y4UdZP<)!AH>2LVH;G=xTHQ7J%BMD2?7TBvj34%?jQm z$^>mt*?NvpK=a8MwT5*w?;#4!R<4xTA<|h+9mESXgiY9_LC6FPeog(N9j4_)ViZXr z3ZoZrSKcqD7@-Z@RkoJOy203tH3pop&MDYT%3J&U$B5>SiB042dcO|IERjxT$`KF1 z-XIFUqK>SD=1e2!h&~k69?1jc{3g(amAW=*7EmzxZp-ti3T84~dpYmKF|27crzgE(F-z3Bs6FQuGZ zox^?!GQl4lTIbHpgn&-IlbK{ynd`8a@FFg1gK_*4|}AGmQ2$qA>s$LWWrgvZmOz`5gY8(i7lRYwwHdYYuwh%25-{z(G%+ z_N?H1fM~izc;Tcy=%@iHz7}!d>Yq7*e@UD?y11DC?8PL4jf$~-r>7b;)M8c#Md@>X(j2+`by-oUuSwr)}>iu0mCcTCv25i)k!ZhCpe|tBwTZ>#*~C z@GoX>ix2=c^LR>qDtma%^+UUz7oG>+=pF9Z&Va2Ct57v?=WH-*tp*@uEs0as?&uvq z-7H_Q^JB#4P6mx4_B%8D3y%PO{aL$)`le~ThGAeAhvE1BQBeN&28~n;9={So|D)ji zG=FsJUDz%9RFB{Cu@w;7hySD%)*J_sUdC3dnpaho*nk?ChX?43Ff!-_#cEte01_A% zMudf))q=hs_>h3SxytWt?a%}r%+$yi26?6+J3)S?l&0HK-Ov0P(=A7q2^;kLRh@N#YTY+^rtVa#n%PXxq zJ&;?Uv&^2HmgMF=%e!lU-lE283kT`2Sgu)9_Sk4JQ;Fn(iN^?VPbZT{s%PhjUeZB& ze8iH+k3gUsLZhuD2cAif#`Jxjqo1iN5V-=rK0YW*qQEolt~wjT7ZYB%;DxwaMXA%d z_ROi;rZW`%HbCwpu+dg}XGB*E9e4*Ymb&_?4tcQf-Uc`Um}_gkf)-?0htAN3w`j0I z(by!u=k+;=#u9h zyyPgAjRxP(7S?qhZ*=jjF;6$_%QbU|5)TRLA!yfEQK|_FI|pBPukAWqg5`;nAk{po zQJTsEw)^!n2BJbIx-bQ5M+pl}N{d0_7L20{0Ks%u3t7HEH;66jgodUq46A7ul!1n> z_&6QA_R1wa&|jiik+(i!(}=Mahwa0`E=%Z>aUecSB;fRNv(0@cD}^|Ou%}lJ{mEjD ze+OJ0Serv$GcT?Qv0M&apGqxFZOhh=kMvse(9+X0w>3?QE{$xr(dKz}HheEQ98MyX zT%R+$egqm`K5tq>%f?@pb`QL_C6=>|*L9+Aj@+5MpXj<++>2;=>NxVl1$F6vd>!$< zIJrEwLld?{jJ&``St8{lH1yPOps9Rx%Rk)}^P1(+AJ~AmMzO{uz7%qIO4 z%QsefoswBttU=LSrCNcwJwy0_k)J1wVYh|I`lo7L$tB>Zl0QLP$iFoO-s9}V2Z^ee zxI$-1@RNj9>^BUO+>DJ=3Ojo#sx#Fd>?j&#P5rh(S!Y2DEh2sE-%IU-1JkE|P6=;@ zKk)&th_M`k!0yL&<3^j zUI;5>ft&w%1Mm$W4be#-okooOADs^%Mu0z42@EkdhUuJX2a$zJ z+?tlp&xxh-`xk&uwl#$ZZ(@fx_d`GSg4B$ohzzJPS&L2HM6GCAv(>1NRvvF`nPc*N zzdziwY}N@;Lv>72Vtw`?dyheD&dgXdY{BDtf*V6^Jm_8v$BolwsarmX5WP#E=T>9{ z-Vdm|oxQ_YscEB)aa=z*Bq4-uQ`U#RVL(>3tLm9{PWmTzRM*Y6N$ zJKlpI)min$$!mIR4KPMSHUz^aEi?HDbfm)7F==xv-LG_JzGhA(?R>?@q7L+UOueKu z`0kP7p`4#SCdvY=~2Ob zAKmK&2h?G9xDw{;TR7Q};A;U|KH^{EHBA!+0KG8W$9yAQ+Puy9YwgTtEqoKirGlX% z&(N70ws~#%q(L*;np@suOJXv_1x#y|`5t0}axGgwmD0tzb=1)Fra>RC`EVjLKKJBI zJc6z_59J;)8!P-`J*SewZllX(0qKW+V+U{OBO2^$;OcAt)9znw;;2~ouSJqea?W^O zcj`XX7eU_f-Ue?#XoBver*)+0E&grnF*bl7Ie^zvf`kY+OgXH%Kgxp4PR+VCxAZQ^ zFQ239$HXH_FR;<3-IBNux5Z<(aI=+z42pQ&q#VynN9G;;5$|cN007ObC-i<4KYs$j zm)QhJkBtK%P`wr?~cHxhACHYfS%Gxbuh<#T8pb{y<~UGB@5Q|_J0~eE)(MDhO+wHXZKazfpQ7d9I%UNE1KX#W{oA`yuZ43N zrs8KSw8AG+gl4(gHuY%gI<{i;@@d~Cb6ETo5gf+;QO)}{h(AjD1z9V?*z4-TgfET< z#)^&XXC&B>aI^bE4C+=*Kql8)vj|d>LZR|rx8&zV(+(~>JQ>sb!M1rd1r^hkY;^cu z6$*d?hft)N-Vu-W_WLx`c?1U(saB9dMRkPsi9p5~;iU(bXbR_x9wxk5gg@~>Sqy|m zvEKd1CZRqmuY@qhiGlk)IvO4BB=HHGAp&)3dq8j|^ zYkXSw8PRIu^+z|5cqc)b7IiwUFJn z3h#AsuE2!|FsP`W1Z-a%)p;o43PZ4jc2B5Vd z@1j8SKB!zO>13HG;z&tmWdm(%$0-C}_ejB;0w5*aWjXI^I_d>)#6(>@SRA#{mxxk| z8u)p|$FH_Fj91x#pUCwqyPZ01F?-g*KYr zTHPKwQTbwa{Sr;u+zV>eyBUcdV(ZY!$};QL)>YnQ2Q4`Sl8Zww^; zr1u<0{14;ANocJ_2z&#j0dF)(c7bu%za6T70vDFr@V9lQPcHr&iu}()gH2aLkSFTp zzttcA;w%lc;ec!3QmOuTzWer%Zvnb=(KMfkUC4T_Wid5$dQS#O7{JekIRy zAWJaM9>o#tw=I-hc>zQx+A|Bu$u$x4|K;hElwqW!zvQBDAc1#1B_g(WQl_B7#c=eN zY$!=;^K+5cXE!qkotVDz3flC%76h-;u)oWA^447Ktux`+)E*Ph^*Mjl+Xt4Jw(VM- z8gU#@WhTCMP;)5}16gK3ZBXj*ww11~ON%%k}xinz`f% z-MzfGFD({!G*CB0KPB^Zt(i2cZh!jjtoKQ$FL!$%d1>uFFMjQ9{D<~|t9y=LdHycv z0blvxv8lqwJ=II^w^@wz;cbI)YQqZe|M5I%M3^$y9G=I{8k81#2fqqd*n|+e8N#6u?xIaoQ*T zzR3(M@aqo_*XdzmOMWzVq({JI z5X&krjQ|(njRrLl7hvMsk4GQAEw61jRE&!WI%2q&Z;L!%O^oU!y$yim-pPC$p@N5# zM^_;(P!fMCJnfB*wl5lT)O;YfM zgr#r}ChiK0?0mPa@ivRY5{JX_YNJ9OFFkMRJtq&IUj3SCwI;GLwe;cQq;20*y1b4# zznQ927o6MQc4pT=N=qikmb8m zo_Y2u1oyFcV3tnDz)qQ;k8Q5AHjylY)%6A%*+HSFQKaTuFkNOT&wu&sx@+*+6WuobinVFqB4|4t!1xmr;x4@4Fy~y(EAK)#2L4lhL}1; zLF!vZu_P4oL@>deAqXL?up zPA{w_S)X|?I_`hhHS!KYDqbyDdo3|=5c)rfgITexXVU)7thQ}D6fvZ*kjZM=p!K4R zl(!a)aB4(Esf^~1RDXNS-4de+)VzT-kpZfS3ln5l59#DhUPfQ$v?w9d0e8>ipyH z{q;>GOb@{e-;>gY)Jq7dW^}o#OViQ>S>JCx|Gyi+UrrKQ$l)C@>i#a&;D3Pd|1j)i zcr->*Z3_VX7hrRgN6wLJs|jYab8-Lg(j`e85YNPl283e>!0wiA?1ioQKX)W{P>4c> z)&NEAJ~|jXCJP8}MedRbn$4IzSd~^fm^D-7nm`s!Wu+GhWO4Z)-JYvQ41v z+4fK3Lr{xP{F62qSbMe;+K z5M!KRx#o$%%E~|>mFe5H{si=0RI(-hY916T1>16!3)?^GFA`H)4kD7r%i?8SRw`V=cO69fxElWQH(ndU; z4ne=?2txB=WOD25u2Z6b0!1-5(vP5H0fmS;7)M(om0Zj?GQJfCy^naiR!Dnq^ocY`S{@$V(EpX50Psx@-%r<~+NM2;l?<7jSr`YdK928Us zP=6PN*6y>)@nXW{QcV&#G!uP{))7rWQ+&PQjfQ@x!ts#JqP8vrP?egi2>!bJziXV1 zTyP$5`j6w!dDT5YY5d{YLRx+XVO!i)8B;wh3ozJ(2x#T*@`REu0-)DZ?HV_4=}kmu zxni&7ShH0riD{ay2JJ)AP~@9U53W{QAVoL_p)7{50JAJw9X<9VfE+IJJN+xq(hLQb zotMgCi1!D|=L=MKYH+~RV`jxY2`7>l1USUY*boQc+J(0qW?B3!BK5h}Z<*Xyej)F(Cq%7-Mtv(Tk36U4NyRyZ!2b zJt@6gPJ6Q{X?C)pc6fYAO2b`#imgKf^N3q@kHhC@NEb<2WT+$^pI@}i-PLVECN>ri zJ{_se{FyhNyF!eHeIf+4nAo$mcowZz07Qum$yMJY70i0J=IzN}VvOFGX^{OfhF8wk ztTh1LX&(Z}&ves-;ib)Yc|V~?iftLgL0y-Y78Zou-L9spw{~WQgAV(5G5|A z|0{Fq*JTTdQ%~R$sA-Q8&QZPi$}CfKOzlGXmizR+PH_V`9i1a}3}G?HEEE#CwEfb6 z&l7*98RQU?PNKa`WySgYHnZQ+@pUi?nqMm*ON&IqIPdc(wH@j+jhRjm3k7c#E=Zl{ z+H`5}J&+PP>yGE#{aa{;!t$cG=$P?t;^qgq_2rR~jC4dz?Xye`ZU8lczVT=fcnr#| z12Q2E!s!sX-ET#|bi1q1Lt>l@Dc!2HSg%RsUp<_rMlBxmq`%yTxbd!Z~cv9K1 zx;|wn?O_yBpF~C+o-LwEprk`;;wycF8Z8y?mOUgL*cyri>p61)`k)c+4(BAY>HW}f z?Dn^C0%0s+-P`{q~21$Ib-H(vE5&0iB@Kt*kctS87`lSqJQj*bwWZ!2VTe zB1-u~a`bv&mb^VcYyxJks<$ES?t+Vh`Yy@lEfF_WP*w4Y=?O z`(XB-{dq0=^i4-VH%{@C(%=76hV%~q1NsL6^_g~M@41wKj^8nx_4mN~>szKllCS%! zc(yns)(7E_6q;R$2T`4r=3{q&VuyMZmuK;a8?W6%39VS?+{@^#B@~G-5v7?Q;<=X^ z#L`V=lo|HVE#rX9QP^kYsY84b8WV^*74eq zOD{Qe)$-JNcno-JkO zTbG2eT*mZmVyAWY(W)|3?}zd+42+l~>+FqXx**2Wiky@PN$HZ%S|p|cexC9U_5F4w zlx)A=E~yoZPCI-Dz>iNgj{kl)nk}U|7$Q9d0(Lw{$_E|qXgrbHb`HHifD2KmhcK9gsJCB#3CPSxu;;T9u zvQCe5SlA+HJYO4{&7Ug%m!tU?nI>;AOBQZmF(-rNF3bK7`x39Fz5})`e9bJqQX5F_l8I zwp5K*3-$1}9gMnBw3!L%Vc;&=2{~j-)vnNLX$xi(G_zw|uTRV-6o<`H-|p9j>0-njbgeAz4NvoTdFnmHFLggWxo$WQYjIO=g)6KOp9MrLvQA7aVseKF)D*H4%w%N1%Nen?CDD>D3jbCC06XU>Dde*tMqOux%E^ij|2cfyNn zY@w2eLYa<2ReTR<$h^4_O*yogmw$VNdy;G_Ij+#1)txB;Ik$T|_J}6^`R#vovJ$5N zJuh{dwFaf}3RtuXAwCyau=Gkr3pu?}L`+(NR)2htIrJw!bV%1+ zb}KD%XQyB%HP~zCw4)gMiv6(ohBKo_Zqk$tVnsP;?TSF|A9-8bQ~-~EH$w- z?DvrD1G*uAZQg}wPMcBp!Q4+Hq?%E~_TUMLfr$61aA+X-m*4UJLc0Qm13hXHmiQpP zsp!wS#@O;AYgtn)5km9l0HpInpejG3hnAtXKKhbHvh+n@fHj;DTTvzP(!iSfH=i<{(F)C~q>{BENkxC)WI$ z8>qxt0p-jpqYw(_a+zxFuz$J@iBz!3V1<*RP>VqVU>!OGO9-`CKt1iVuPK2IpIaYw zNpUO3&_IiUm3)Rg{I_6kNpPL##`naz+Re4vh@~kI??RfK*|z_<2?AEU0}tPkH+%=L z>Q(0jd$#jMk25`qtgum3W(P6Z1)#}q4KN!7B2~3G&|EMBMlQz%-tyl!6U69`0ws>b zkHyV0Jpgfv^{mn(w$8v`58Bqdl@!5}@h&HTRSBBH4iR<WmvHH_!%x-OYSJU}>e+SL zRy{f9^&$7i4Af>*YWkYongU59X>ZY2rSvs9^0DbrQeY(yccv*m;!*T-RTVV5?0Wsm zW$v-K&#~k0UBi?d+s3B?mk-t|$A}H&vUw3;h`0YR%_gWnq$wA2ox@8)7K2Sa_Oa{B zB_H+v-9+RhdZW;y3Ij4)yHykPaSu!nl)IMcOA-)bDJ0-W7|Dx!x%-7I*|ce?$QZ)3fIT9N32&>uZX>q_i61@t?MyVf&8`72vL2mzKIiAyK!N z&_~_l&@Gc)^@nDIvn1`k^@}gJ0-175XdXH+4*;v{`s-Kej(%%qjRNk2eum4;pgs~n zat<85ftBKz183i|G(C{+IM&u#YSY`X5E!z39Vs~B+teBDRs#qyA+V%=4PR+})MfXw z2D?g*0*gBWh^0+D6QG_F4j$mOuf}1_@0UzDQfSr1weQ%a`yhWgU=E1@S(;oZi#k{G zEG1n_dwb;I;Dy$3r7^*pDT1Swj_cUd8nm9#jQFm>+zw~OKXoX>c3kCNuU-!AFVB4J?fmFvYt2*oU<{5GWmp&FQa*@OFM(Dk!1j;b$ zXOMx3GOD_+AI!yI(cbq?1M5t&ve2b!(N}1uqq*nIifP5h>ZFS$ot;FTt~WHqTH51J z<(-xI+V?cIz(sT4KaRvR4p7ZvmQw&bZ^RPI?mJ=XD-;Flrh-#@s=eG+U%^0{<>Gf3 zTn_^xrNDxF$TVAhrXKlhkL&C(ALN7qgTS3FavW1oXOF!)RC!aEowJH(4n{c*J_%oG zXUe$XqrQiTmzeEA3Wz73W&@O=EaXds+u;-khJQQ@o0pdkIy;Pe81E2ZJkZ%u>>qFg zZtJAt1e_ffaRV4}Bg%1j6Dv|~oIJkR^~m`VKoaZsj~G>IwL?R9->K`lnn0}blUk!) z3@-o*g#qwMsCsokPK3#p%}at5^L_knxp7vx%cRbv|H4b3!oiL7 zm&Vxi=JP?-<7+eaSf``qA;%af2!-050PTT2b|NQi``Ca4k^5b%qVFD6P(ZgSGa*)k zb_M>9#md}=o)7R~+QK2ye>k7NKG->UFn$inQ}AHA$jBUT>A)MmwLGk+=?#{x1G(Y; z98kq_%LeZH$(SsEMu3u?6Nw309*Jo1DZ>%r=?<=l^VJbxxpZxNBK>Zlaf) z!CPw8(`Lf9z-EAL(yes1T4%&d2f{vvDuG1X#c~^l6SmP8U^c1<;7+MPE(YyG#(5yJ8j|DR7iTQY3>hZABT-rgANvun6&BmFMPc%C)k#33eh0o@HHrVUct%FE54a- ze3bGe`5z$yMWWxv@O$^snf`hJwj=6cOD;2nwC|s6k7K{I$Md2%lJ~Og>QKL%udzQB z=WEO7a(TFu45eWE>Z(fy6^`kdqY8NjrD?|1Zk>f@(xE~!It9jd>u`(H%j{x>2p)}U zHnlc@BJrWx23UKOF^#6gdh9XF z4z~Bzx5^0tN#nzp!SX4z?;uhhe*kt@ESA&8Fr@toMDX|wIm-){M{Q8r(5BLny zn8ICz*aK`pvSYfV1V28>3k1;JfO+&W2nEG^DnVrJGkBmQt9OZS=NJkq_$C7>pY{j1 z(=j-&3M&gNv_TrGbD*CbibN~+1&3wNLX8#%+}u_e65vyeJaV|?`Ik4buOMBr>b?bx zdK$O5RjKv-_o`f)_4(gEH8(SR_L=#ee-k4d?+yzQ4lv2cdmUallV!H=i<;iMLU>Xf zsd0~=*3yCbPagde%ZE;ucXL|=@A%mlUDH6u z()TXtQ@}-|IbNMAoCocbgD^1jLJULvjC~Fwwg0NRVu5jWE~`je`fjW<&EG;W6LYM5 z>|cD(FY9CTC#cUnC~-TO0P}%{je$1AffM~mqxU6)I;+u*>W-KcQHoadopUl7Pz`-( z9D@ytgoI87RJdfGjpy7Q=b67cg#IaYVvdlidw;$!mbGXsI7ELk1;Dd$Rc zO9zZ`He4efYj!t*+n7rbeoV0>)2latmRH6%c3$9BBwz7MXNZ+438E2gDG8+4ApvLw ziRPHL5BW^g`-8GIGeQ<-M@#_UWjt(B^IY=`1QQ=xEX6f-Q%E3ssE>4Ws|Gt#My8a& ztEZ0@b{zWSJpN&qom6ZL5p?vsAjQ;!i0XUsAk3y;WSThl0mGwq%&Y-BNsvHS+I!y5 zG@SHxCPf?g%BSUKR=HWagYLj$K`B>wyN0U27$nnUFxMzQvC^=oA6DZM+(OX9J2uZs z9cdcwwwOjrb#<`uZjmM@S=vu*V5#lx*-cyV_lmx$0mT=b-<{K`umI7#_6e)_ zR3CMomGp#w^q2YOO#wvh+zi@YcOlUk4I_Z}Aqg`tpUdF@wu`v^1UW z{SWu6rUpruB=r(FYwXs`J^1}{=7h8zg(jLWyHY*|I}^)h>AuY3rXDlFDHrcy7L#9F zn$FYBhc1D@F~F7{pK`srA)PMeOWHFzhnpM;?= z#OfilbauUmJoYNutOLeMusXl@Tentg={mo7x5K+bIQ#j%wquA z2A<;j$}Jo3@N!>@l=2Ug9SprK&x2=cH;w13awyD~XNJx#if^VEpNGJ)x&f`2lH1hG zISJQ<&0i27R!@=HFuyRQqgo;cH0VzW6cMNg{^MMqECFFT_J(!1VOTh1C;wQP(Nc(m z1-^$_39-LTBW>uAkGj<(2Omj{^u65=L48<{?~9fCw;lA(f?FW~VdypLHx1#cHOj?! zw>-5Ci;bT@bnZ8?Xs+E_#Ie%)jGjMepa63P@8S-_=#GOPrO645PZIFg z;U4$|cAxxI$U%hbiF=f<53PvFv-nAqevJ^eS zn7-bUtllTpaCrtv1lhIbir@Kn5x@4hwF)^hvy$1My zZe3_`@qOAwnlzB~Z)SD?8e%IHH%#RM*Bf!BTDGi!QLtBlT$Z`3enEmJVOAuc;mc{= zi*o=SG*4@KXMbq)Q(VM%e_9$JQL8_`huNA4wH})yGxs&sqQK+) zC7i)Fw47hYBpmo>;mHN>eeC9fiasQ41gsCZ?_p1ayI zA^6V|U>XM};M2XJog7|X`ynO|s_m}X?W0~FO2~K3M1tr@f*byDj%fm2M4w2eDGu_5 zbP%IR!IwwDeL3)D*`%krE#j7w*#emxu$xelGyx7#!KIwYk?a@Ks%1-`~ z{dzrtR}*4pi18)B43k2M($ibe39G}YEbc+Nn@Lm+7%>;MTf0)IUhSd{a)Y3K@YJbO z`RXt@dcoV>VHZu&yL3f*bwci2>Z-o0Q14H_dG;2S5~|@Esu2cH&3!Z3R4W5{OvK&W zj6=?>e#I2@7T0Pf!mGh_j+#1QqgGUI?h)R)ORNPLZJv(snG~PP+zB_#2dw~34T%E; z-C^zLAe2QJCtTPmj0h7LX@{O>jQ_)7d3lk*nsHC%y z2JJg8o8Y-|GiPT4owg__;bejos0>opcy=#KP;*0fsEJvvMYh&s{WEx`>ot7pDR+Ou zLDWc7aaMIp!aZHcJT(Y%yfPY~UQy0vJd=8{L3TQku0!Eyt z`?Yy=a--+I{$zh--JR`Uxi42rd4k_R;Y@miJk)2lmFGB5dvrZf?xD_tP6Ds`S-gwq zsq0hMLX?-ZIAIp?&aSpHolKShhY2U@+bIeiLfRuE6;2sinQD^#<@T&SS33o^ds8Vs z$Zv6tisKX#NrLdIzOB)viKgNDpU&9?(&?4iKF$;jH!vu%WQUfG?mKRol>wQ0q_3q4 zIplN}_*3oA5GNe*hqSZ9aoO6h-m6?Ww`c}#-y!2U+(_XFSKu^H^IBhoaDB{k<2JYmmYoJCGjOPTA!lL&Gz8}jQvRmXwm8xX0>*9788Q0&?Y6(yVGLflt)ikL zrQt0;ltJ$w31{7Dc-Jq%`}iOP(?ix#;gu;#35SpY8#5YH2fz(a<2~}?w#lKY@`b7Q zU8O~hI%*X4hiIjEpd85v2YPSx1($B^b3Mrk*z|-Gi{Rc3Rp|#RU2GmU(=S;>-%$rx zA`(gV`?`on36 z?A-m}gkAq7gM;H76we?nuJiNSx!q+vcnbd^h~zL>tP&)R79TTdZI9Py`fyDh)s^r) z?y%LwDoGXWAa&%E1b*R5EfhDQq{-`D z<~*JGAfEZu_3(3nbpCEJ53BD&U3cw+l-1y~r$gNb&aN#^UU^J+Q*Eb7c1A$c8A+Zy zDFH4#aC6~P2P#x@nL;i(4`_qo6{IL@B~J7-THBEklR$>fy_STr_(`qm15tk>lYf?- zuc_e$hNIt^gO5b#j_f`ojijK$9myn;eBvYeMKaI|<;uy0K-yO4y~F6RNUkrIGDssi zf{-mNBLr`Yet-7 zz#={ha3eK9aXvB?I0-6SVgG!mCmq@Z9~cvwBr3gzCZF#u%c^;98&`wX)}#m4(HeAMuAL}pag^Rr$% z_FPMlf5M2@g&MUw0XC<^wy3B`#+PWi>6Iy>8LH^E_eS^ZK)oX`5($EE~KPKIBW?o<;$equku zDG?5+0k70oKx(9GXH@B&_1(Sv>QKOKO!sf}%QZxo7w@l)f1X0uouC|h;-ufg^nmWY zJX98#S!qv|uk^(vtXEQ7yv9d+B7^Tj)v}mm)mqNRQT52 z`Nr%gOzXV749rzZC5cjTnvwIh?N__AwNs3<#+!=V*RD@$yYuSi2k~w|_85-lkWmr= zHD!QX)5B^MMWAZEVo$enq{+akV)H+%}SwlKi~1NuePj~9-=>vP+Ou9ypFavgMV znC5BM%>PK*VR^?iT=tHnCdK{xUaPJbs#R30eaaxK?3rA^dEWV_8$?z~46vk@+B`0h z0OJkG2Wj|7X&Z@bh3t7rLekp+5YI!Ytl_e!GkQI~Ah6u`WrQ&Sy= zuL|-_YIwq<_uA)QiY+e*HOO6j!ZM6uNwi=|l78lEs|dCUE0B_^je?ZfHHD zuYb-hZg(u}ZUcolHvICz_%Y}KmK#^m!&OQf-}XKR;?7k5GZz=>HMk1Je_$CBb?)kl zp_FrEs8V$rhEd%^FrNOXINo*)uI!^(+@yXQ7*&5rJJiihXX8O1c!PuB-4tw(hvo0x ze?kcjEkFCz>29tw*vfAUsTkqI0~8W$c7%(w8vp@VLKRo<2J?OCMmxE;hnKB#V>A+S z@A89(0R#&I{J{cujkaG85`@km}yBf#4))DR!Ex;X5`{6Bo91?KA^e#aV3nkk) zbQcOejn&1;sG?>-oY?UbrcV`9=2TPIdSHC?Fw&%($~u=XU|6Pvn~ii!SDy--YSqMB z>EJJ4pPC1$HacR(CXa%iP%-?W9}ryQhwvnNpj1$G$-?5~8mZwA;H#zsMpy)A73KSX`GO+?!>&J~j9> zwQhMz&@jn%cyni_MtXo&o`H5-lz{#9E0*FIeqw|&;NHG`&KfyKqSbQC{n_fW%6gUV zuHZXNe`osz{ zv(007sa5317g|{MYY8fNpM`0$6k{@)s!ZLdS-N#urbltpHIOsK|J5O{zt)k8!|MDe(ls2pAy8yUPTH4pVw(8SU9m&#z zy-*{jTmXiU!`i(4LAQ^ONcqvNbwBn74-6Ms1R^0P5|gTN7eQ-?tSP4>`HdKRpPm+7EgD%ZG6a7l|q3i1;?6DC?hT5 zi=BE9?zUd(W^E78fdHU)1W8d3sq|`YSNsG=e+=Bv zZ??KQ-sb6zI-nxAObJ0*72NvGHpLIbY)Ls__(pPE)z?AC>}_D`BK3Xu;9=lbYO!Hc zO#&A!)gQpITLz(ZF7P`+jcTedo`Fcv7+i%ILB*-?!u^VUrtZ5%fa-DQiu%&Qvk@7O zUG^+6&dW?#g{{iC)>m*SV2HKqjMEpT9R5XIs!X7pqo13UrdgmHKFrNpV+t73)Ch&; z##?DxtBa6)H^HgfX*W-|EYpu5f&a`z8BgJi{!EPS59R5~>OHbqZn8lP?BchUN^+df zbQ7(?D6BG$7emd5zt;{CCQfi=5m-Jg=egs?NY!BQK+c~L;YcrcNP!)-+MdxQb@!|!G@aL z8lJ9lq=K>G`(*m>N+@9PBNh8@_MY%)Uz09N*&yaiZxB5cj^R1t0w}FvFAm2l-UF@f z@bxrJI8IWea{X+o8&CH=<}r|JM=2_d-7V^CqHw zK^oa)bVnYb6b`@zLjrx@xR8@y7$z63cqGyq*4GkW{I=z@)a$ z)w&so9tQxOHS(Ut+05+R&0xA7VRvUIc`jQg6zsXR3RHfrpQzTdb74^^Joe9k1bC?8oZSm*4XvS1T(l4r-pB=9kgs zViI)&#HIpPt#FwSZ^oxLJ)~U$mV2(}_b}gN9^E{yZkwJ+M&U`l#D_#=4$YhW&y0KW zerWa-7{xDFh)rlxb{p;h1&kZ&s_!mtH9P0zAa_684!mbf4Coo z3sG4_y?|NsRk9z8!RVr`fsjU*ES5P);|N}x0!1zF-hy=LGGG(6fTBiT?=#x#38aUz zGWKL8p+iCX$W7{z*on;)A6fi)Wl&;?Lk$%Nlbno$@i4^cux2g-aex!=66(vxsTdhv zyRn*6H@TNfHNm!8R)wgb(}?BP)KT7RE}#m0GGi6BW$HB8O8}-F%&HOvU_ql2%S<9m zdj)$EqTL`BgOKHeOm2p3U+#;Q=?W)3$ZkU!n_^s*W9*k=?1$0^e%$%p?dCAh?)VIpddVJI+#r8duXS`CiIc|@C(7CUw=**&OKsmDo2Y=~ zv?L*A0Zu%(_=zQgMKK=$gc>USGx*ywo1F`wop(}3{QU&@^y>h_WO82wk9r9-gbhKxm}VA@)SB3GZ=_ zghO55F&ey)d?A|Zsy@2CB;B>QAT&Yj9!6fPJu-|^LgFGENyfb@jLIAg5j*Mpthwjl zLZ*`i6q>5hsG)z|4p%B!iA}X-UE~p6yvs(rQ=>rki1oy~R6hjrRXR^-;LJ#B*H8oT zN$l0I_r+JZe;Q9~sXAyBeAg67(iS{leeA6Bw`Ps6v-U1T=z?8}`UcSCLJX)D-C`cqE^gv=cd3uqtn(dBy zHYE?u;^>{dZNPHo0<6BIU%PKp-MbhrN33_l$GS}?sF2kkikH1p#zrCT-AD0k)jn)> zIpNn%oW_70#sggwcj1|cA#EF-$S*g&GcVf}rMXS>e3&>Q{!PpDM@n}}0-NwzfkUNs zlh-r&g%c}4Lgr?7I7frR0}QHS(TJFXvgLzrt^Uux$y$f96-x0ABTv00%rM72f3%XG zUq7)v{!DrUxQzyzUz(;b?LeSioiM7O)it2xj7DAiw0Atu^Pq8C{$c+*5pMDgIR7ic z3y6?#EH1^<-ZGg=tsrC#sDgQ;VQv~>q`kNT6B8&wFRu&P4`0A(`X1BAO%6k!+h#p; zByq%Z(+D@Y6KAtC=7b#&{(u5x^2f6de5lA4z%MfJ$fp~>?S1BOaWVtyE0WOAp{)L& zkfrH+s%Iq>r8iuJ_z}jX9HUpTqL?1kH~-UES5j!PO}g7vIG@M%a%k47)(qa|-Y*;a zhI#6g4|sViy0goZz;Mg3UXo_^IyP^-^To?&qz;@PXy;4Qn$UQ;6nJkJ?_BTdg~#(l zN{`pSV=~yGT8hfaf39IrZuM#EA`xLN5!}eEKNmz1Y`sG&g+#X`BM5PKi>`MJThB)^9ZzzlN!_?)jp=w)k458fER%S%{wt3 z#7L*aL3Kt4x|SanoYFlSUwUY%GE-8lOx@|VXuCTbmjI}aHUJ9;@g!rvmT?A-qT}1J zFt7|Zu#BDLI+V(s4BFT|CRThf=g&0hVx9dE`WF$JMFJC!d~8D`d^7Ome5r=dt40Kqzf$D%C=tyX!z}cJJ`Omy} z>(Piq|Q~g9aVaXs{H5N)SlRcIe1EK}5ndUY$nbIu=7rTI6F52}_OVcA#t( zo;)cUO?(t8#fiQXyEQjj-;*OBs85rD>Iq`(kvRl%K&BR_BV^YlA95x&u=our<|^4# ze}$s#>9Yns`Te6b?%*>N06vPh)1jDCkXWbu1Q=ob$Iz1#N)wJZT(88^Vh8C~Y(BZ& zT%2Gpy832#qzaXF*0{_M*R{hTg(sHLfJ*tGU%U#37t}4+e(r%ns##R_DLpv%2-HBt zuLAFs)v7n&h-Tl{KwxgRmW0H*3M9hKq1jm+ z=6^atm4bqrX^*T6>DlN-Jcw^E^aRdNhO_2n?-BdTHZf9L%i6863%!OlyhbvMu^8-v zFW5bg(#za+AYm~I7*xrb0;-OX_rO&^B5RzADOmrobT(TI1mrNA{ECdM%v)4EKtZ7M9u|SPNOu4O%{k*?d0Y;j&MpLI?r7`lU^?N^C1>xOhA&CW?4Tz83DAfmD9Y)NpghkJ#N)X{1C0K3 zGosklrD@*S6Lw+HVQB@-k~u`>U0@3_MNq(NwXSzq4CE5Di)}>~uOjtFX1dZs;%?Ma zl7w8M$7~Rzlx+C+lx9W|pr)^&u|H{B>?6U2`H>j1{PvS-lyry~`=bLV>Ai!tBERb3 ztsG5RV6(`q7jB^>G^$|m-v&j=2(i2A0To#x*ciGE()$d}nTzH?j5r2>dd|R=#TmYg z<*9wbm{ow)wjP|4isAH)2f$|O!hb_`FSIrS)n+HMCop&yv4L{?av%4hDp!%}Qzfk4 zC0Ll`v)gyn{H}}2dq<13@${i|M`7a~iF5~cRq+>EwzD3?=ds2)7F5lMO#rU~*-8_w zn(DncXiT}dP43temN34^cU3*k&&vkmbXnz*tMSb?o&s2|V>jkZp@&;$Go}e)lkIPVJ#mU>S9 zPu?}gES=Oy73DNOO1c$~h0V_c>a2zs1lS|2fwCuQ5`~y=aAavmLXJac&J_9hy~avi zB(hDWh1NlJPzN1Gs73cMu-rEv!SfGBmvyQAY5PWmi{Y8jt<%rQ(mf^&e8iyxqAXj9 z#1(I|#(S+9i8D7X-h0cHJoIFG*FR3D#*8^f7IfPt_eetVpjf6!t%oD9v1r{fBL{%l zmn3-y`Uc{vqSG$*W1U5I%?Coh@M3?`-&h;tzBH3-l79Qge2Rz3{u8!eJvlNd;d=xx zfM@@(L;gFZMA8lL_W|Qi2K1r)-A~#7D4-6ikt2WAw|@6eiPVd?k`4kBD&k+BsJh?ad(%)H$;y8a5w6B+Cn zrzd>j_Ge=*m0kxVDGHtF2a#P$Ls-P>yt(xLO5SDR7Hb}QBZuOv%4y=nEhXpAws6nZ zSf5AGvLj5tC2u*x2T$Ob3e}53zqElJk>WndqaO^V#z?Jg9temALpt=ahUH%b>{FLc zNqGK>Q}@H_5LgcdMp@-;n9gW{5|A-{rb`#LrB2ivZkUji1u92rmHxnyli63Ud|H*b z(xXrPd@w0%s{EMea2W}75L?5h-KtWf%)MGY)?b+nO~IAQ&QC#IbbMW`WP4kjDQf{Y3-c1 z+C8=~b@4TxATKz)E+%4f>`tKovCKZC4s;hr_Q@y7J#edC;` zd}k?%l}s1g&R+T|?P{=CZuw3MT@hH7yxb2YJnJHS*xSF zg$^hKhJ8Z@HnF`n5%rUI*k0(Q9{}P zjSq)Poy98SOU|ZQyug0Vx5A{3Fbj}f<|~bHhwGYNfvl>H0llTY7X~%qj+oR8TG!VW z6-2ljmO$G=D_FwOTO`3#hVJ#y_q6Bi()Z+{$NMPp1?AQuLuj`LCHSx~c!7qaQ|L#C z`ef6uWBypD95}Tuh|2Z%wT4c2XMxGtoMvckJT-ntlRVR<-ADwL2RA^>VKDD-9*}7A zS@Jh>Y!!9D3bd}4EpUFU;rP;`Ss?=dlU>zOID}ZkbR&p!zI%;2mupU}noX|Zc_ri& zzu30-M6OmQ#(C;{eixGr-LQvn$ zAjq~ZCA!1g3tLoN%qb$G3(dlV+}zwrI%<3nK@sK7akhHdAi`q0Je0|GiG4#$iI4cw zp}GDYtgU5y19=)Cb+3IG7UUkMqZA6{ z^C{FaKyHZxE1m)fxR=*i*nyu8Pw21|9Vi#RyhG#l7szn9m@z5FMU+*x6r$m_x1SK*EO2(P1CR_-B$vWypxYmvR*?sd%WH`#pQ3`RH z7_mV?^>A;NadqWsK=3aM#poP(z&!^eCT%b!lQ%NNBJO7DBaumj=rTZ83+ireAKLq1 zN97DFextKuj`;SEc2WJ6fnzz+Fe8=DqP+tsZpas@mWN zVR|BC_sjQ>=nKB(`34YhIP?sk>4}{~IoJoN^=OBmre8r!b#U$nuI*k8Fb$Wyb54`l z8yYMo*QfhA5$zZ%6|uGd%q=zWm~Nh{S+%*msQczu<+VzJ?tVi=%p9}kxcAyicHL^V zvYiL8RK!87!rD(%qix(lPM-DT#tmctNH2e*AK0n07qqGh)@JW$B%7z-mMir4O2Du_ z{}%T;Zs}1sBCx44id@aTB5j2z^GT0kC*SP6`{hsTSgM5Po-vtb4Lt^FQsmBGw&WDNF~|1!=*1`9Pk{F&om2LX0c8W;;uxT_L?O<2|JR#Vu37r! zj6%c=?1C3RUf8$XgcGl=62GM|J6s)XDH6O}MPj`^Wwr5KsaCdzc7Db5#wero8{)LX zb7S1IEl|#twO4`|Xqw$XnN?&R^bfowgdj;d=QKDWjClw-B5jBX7{ykG=wqsdla1T> zgU<&ZXBVov*NLt^|0b&s4esuaGv#so>55UEweLzOyia>`evf=b-`H$G2gzX+@TIWy z*Z>;6T94|VBb)1qE=r9rmD5#gV*^ho2vByMH~m?jdg*n>tiEz3pwH=$2a5@ZmLaR_ zht_WAbxTX&8r(PxSc#(1W*Zm7Sfa3S1vmU(aYY5GU!jliI4bpzs+3R>VpIMsW79Rd zNgdm}xn=j?8Q#xXX!gcrzFpHq&u*qOJrG4g+0w+9s{)0WTB#~Pb2T?$U_G@s&h3Pm z*ruE}V<4~K`Z()Yqlig~N-eOpKEuQ&FG@~fpJY(?IqhC-J3!n(MQV!_Tzh01{{9nv zcMo+?0KTQm{#W{z!VA%`@}lZnIActNxAH4hABj1BB$A8nx@Hg{kx)l=XZf^vx^ip} z%xFzVv#F&KEbk2X{6X;z(KGIp9|Z4C!!gx?V_GIH-3We6TM~Ke!=V3 zfyetbFz_Cl@E$_V@x~k!H{r8Ctk9ZLQG_@I83;@TzQLvfw{n3VrJ4lZUtuQ#X8O9E zAR&~iOUR)LI(Fr?<%BWV$SpoSMgF>K@6WPK$pr+*t>&u zpPM=K5(6!$MvsejR~#@kv4w3U<@VjGPT+XJ;A`q`hJ!KDYNmh+7QuAIVW2EQ3*rn( zs2MlLjIwY%8)DnBly~@D^_iBzu1~7Rh9#c(#IeGX$@t(huEKNa!^^j($_+rG+J{l{ z2vE-G_E*B7DXK>)UhYpHn`#A^GQpE=9kZ8+it0hkG2jgizt%TzB7jTS+S=-$yMsCO zo|m{TQ2B$u?J*PpTDP4{_4MB5ozEB3o$X;`KIRFe1E>8492Z|#+X)yup<%E4oI%WV zr^cMhw8QkBmRwy;9}M`goBdIINTICg^A4tuGn7H3-$px2F_@(b5vE#%jMo_e0B`e> z?9B8Z+}~j-XsOVT8KgcR8$^w^P|?ejrj{5IiSuZ87_M^>ZXL)5^zl5_9IAh0tNGvu zzlKy#h_eFs#&)1gIa{}YAMp?-hLYETZ?0qV$gwdHWjj?Ti%Jdn-O8Kd>ZB- z*(sKKt?U z%O%bQ@b9bXayjWohb0_2LOOK8&Q?Rn`Cxjh8vezE_?ePDgxJ$mrt_aDbKf={BbnP5 zhrd8sC~$&0$kF$a6nbNLjyeKVBJHM9h8(hmtj|dskdIAmK`PkYhmCZ4sTCp=4C1s^ zY<1$4^b}~G@&LF7p0Gxh3`z;FR#j1tUD4RP7nxFf$l!R?XJ!VU{+%GRRf3iMCQrWp zWl^v99XF_i6a;5X))Pi{&7Q4-Qtm4+e6oA^_Y*0p=kZ8fi7l=ptsT`^?Q$yF&@HmA(0H*(y#p;kU~L?y8UaJLX$% zAq1E IsUC1@Yt5I7g>0wSAMqGuux2Jdq$(84FzT$FxAAt7N8|H3VFZyqdtC^q`% z4eX@TQzgvpof%@f*sY^|;X@k5Z>J#$^P}N}cVwt3CD`VF+2v1!dA+PxRnk8xJ%)~jl7C8CpO zRoATz#5MuW zd>SCOj-U}0GtAr{D)I1_B|KERos|V^q`XVE>#~ErM3;B6{$Y}9ss}l__Mq5H3iuU| zM8h6{%Y6tQC0+|U_Q>m6&_$e^8FKNor4KV|f4z9?sja3q`|KPd8%*d0Z_*}jfr5c&QS%<4G6|FP7sUO4iIAhABHopx($4(W;>#{S-# z-9SdMsAGF40}t~2m;3% zoK+zc}ZzS*Vb@gvbJ&eF)bicc4Bx*sd29kzH z8sW8fjmi@N17P<&yDEDJK6yo4xDrf!8}hH*-+M!1IK)2{gL-Jn8g&290}XH#uYG?zvO^EJ4m3v0^MAk2z=gJY0|h~&V_3hE&4J45 zS(zyWQ2NLc+D z$t@{|5qt@3l`Pm|NdG3*8EUSSHFOLTW&TIxLFOF-O8kQ4W+g*3886RLuefWQCX5kx0}&@Shu%NaHe0ail?~i!P9} zmq99`^#A)nqfICn`pn+}Ns|5o(o4nFkzAy4Ye0Q}YtgtUDunpmb?|U3K54+6cMW~riM=KOEK~xc%rSeMj#ikM61@}OSAYsZbHCQL3CqdKCMi>>~NY6dL*koe~YwPh`FyYz@e{{A{382{#W8D?gff? zQVK#5PiQ>yC=>>yQEnfv7MynUIp@dq&;P~iGyY&VmXql~^5=!>R&+OGV4QE;P%29jDTieizwoD49DVpK*R$V<#bbEbhW=hNrh3G#tl z37y{3PZPP7_H@`~wMt*pXj8VbSv(AX2-HL>K!n+`Go@TCn5|RVZkxC$=pXL%F8QC7 z1p$k1x}JXc2b2Fq=Uemi-}rW;O?4=5jMq!KIJJo1QroP2&N<^=BYJ0*YSR znWDO!`Y~@0t6n1u$(F$J({ct&F>qtD%KkZdY>H4|y}89^9Ieae=0^v$c)VM!Xy0@U$vTJ-Y)5L#uWS)VOOgG!Es%B&I-ObO{ z`)*ci#j65lYw9kzRSq+HP#s}{=A7`E!H4^B5Z=?v`G6zpgal0cj3AM^8A;}R=1@)! z+D$1HL`X6K1rEM#@u=9OaoT9G|D)x-7dBTR)_=~E0jZ0Uyf^u*l^rMX?Al#})*8>B z!iV1O$U%nq0c<0wOfQpZ_zsK|#OF1<5~wP3pm?E#_}(OJ9Xva5mI4-CXTE7Wyg@nL8r~sj|3Z4w zDs4X+?GE~Oh*F&XD6(649XQn`(Td;)IwgjNg&*>{7CGYk1Fz1Y zTm(LjaOp?r1a*ofTGKu*K0LhQO*p*43B}uL-_th#r1%}Lqk4$+u+#o zxNM*86*J>Xj-Qvsv5eqaer!iBWC~U$4lhw@EVuA zBlcbYcFP#7JB;6x-uK%0m1Efx+f^w|Kt#9yQGcuR_Z>rH#9wuueCpL)@ijPv%5yQ3 z3UnM~DuUt5Z&Cib9EX9p>Mp#=KiDa7#d!Eq5zMGON9sNhP&2c^**@t=R}|R)1RV z9TK@yCHAqx;s(NxXWlJBpE+_FKA8tjL~RWI4L*E6vv?be05n^2B;ezyo+79O z0;W{Js(Mh@1a|wE@aeR_@<{hbrztp0P$wUd#4JcwvD{2sRAWM#glZAyALI-Nr1V0N zCYv-#p}Q>Q4l@}OUWsg)A%W@w*0X>fc zTf!2dwIwWok0Pb;QAcJ~M0o$!b|=N1cW{l?!gn71m&LRrU+71QRhjP6bE0hO0Pp6W zYs!&WK;&p9G*$LM^D#1&;;~yn5&zhnwUd^{U2RMKoKp(t3Q z0Vf3pl;p7x4n)T6IX{3#e(U`3dvM66Kp84Sx}&jRBSEW7I56lIvw_T=v-ejnPBnNu z)jfnMrSlq``5(C9BOH~q&SJqJ3UKZD^Bk4H_YvgI6Fx(GD#4364X+Bk8j8FcXH>o% z|Bi9&_KNQv=a{bFLkS5DX_y{#)C!zDEpXwkhhpjCW2VT*Gu;oH!TgVQUJ3sOqpH2D zq;!A=2nSK*+*}Zq3p4S32@t+_Uf3_Y8Q{w{eYTF#{dJ*A8f_Iu?vRDz?S0C{z$cn>n4-aAfq zZt94lV+`bK24!l9{^`0&YkX+XL#$m1=-GPsKrSv8$R|Ye3KpE^ajWV0RUktsMJ(}Y z{6I73-AHa<@rDkYa#*&(Hc1k=TY;mv-{}hHBV5@cj2S7dz7GvMgZkceKrbvl2WfrG zGA}AJFBkmvwT?^6F#sb1EulA0ErIpUwtB%tej?KIgdAW|tQXCjja=!?ZMHvQJ~-D( zC8YH1<0#Nw@auSmI8x}7L{$j*F-5r%`v~5m(HH%FDuPCUnwAMX5apQ%`lruOG9V*u zKF(%?Z*rkd2<;E81jPo8S|-Pz9Sk#m+wwx+HoluQzCtp9SZIL}0K5=~nW2y;fRCy* z^!|09ar>U1VSH*4gjhV+4u1!k42YqP+nV4erI2bsI$yW#5xDIfXgGo|IRVmYt2@~U z0$uP;G%ID?oCs-_-7WgwtRX6$&|y zijwQZzfVal<~m0qIE=qsy|a5D#-fOsmb_^G&q3^BpXFZnhPZk-hjC&2_sQB(JG=>j zBl>gI_RN%vZ`l@smOc+aFoN<`&NEAr==jIjf@s2LjkFh zCRv%QIBy-Mc*-Py#*8LI8?y4BljB^SIb5C#fjH*82d@0X^lo+ttu{iAN@PY7zTBsS z)3(Y-uv8iBi@g*<&dtpRTOPu~^5aQ5(~J9-Ui;gryy=dW_oijVysm19y>(pvZqa!Q zlN@eEw2F=R;~lH5c`W9Us}&Y5;53Y7Pd_0*OKqVKjGefx7GbiCgwSaD!wUC(5sp>qq|zLCPCBP2L`EPAv`m*`2KXMd%z}aSbMCtp3#BqyGVz5k?Ykf3dPQk37EIiM_2==<%!Tq< z{EJ>FRIq`&zSdKJi#HC#OOm~x9-V*%HpGo@jqBg(0a4z&bb597Y(;AaW3-A)b}aKY zB~fn?jHTU_$_~BTW>pOUR}sB6MAVVe2 zUVWb3#MgZJohM%}kL^In{?^BwO#%M_F5l55Hhxl@~JX>CGj z*VWJ*q6mY_EMfr4}i2ei#$A38RkbxwXi=;NQVM#Yh{pw45P?^o z(2DVQ`8zPVat2Qod3zFcT@2rOGPek}!IKFqhzq6J?8oh|_F$6lIdvJB`HbQx9c{+=su zZ;yB%<#->XcptlXBekm=&bE{B&966mQ(ciZvUHp#Kaq{Lg<>ncxJb!egIc&Z#ly~o zZHB~m7$iv99$l?WUrSBrPIYy=%*mgp;xqb~L^hy>*?_Wb!YAxnFbec^U0ltvNY z!~@>qJ&^|+qi5u81HN9z~--d5*QrQ;EYI&>2+htUhRoaXQ z{^+^ka{7_G#cH^;WovBb)?uu?K;R~pVY7=|TZUe-#x*0M8FeF(PoEBSX2Q5(UL}s- zO}drsO7}B8sGU6ouPA^s_SKyQGvy3UzoH5%J?7vRo;Y_ABrg46d`YkN@cXSBY7&3& zP_2(hk|c>60C2pkLAup;7W!VfAn$T}Yv^)^VK4b`>=TMceu}j2Q({#*bO;R zrmI|J_L83+iQMPI+quAYe?EmO-tX%-FE%zhz!tL-Dy&PY6g%s@j*b^=(&^FiW-L$` zX{aDj5_%J&Rk0Xq=0DZDC=fV|m0W%QHUndR57is5Vqb;5G^6=8?_5 z+rC(l=JVUGPuw@=jLS|vEEYofmau!ya&zgRhj<5+5HERr`;Y+hZ4zG_bA2@_(4~Nr zR8#9e;DkgSuT??O3WNa4Xpo|n9RHpG97|9vHNVxww?Xc*Cgg%-WSn2|m3Bpi3U!~S zcuNZvE*x?*&BxyxEpVM1RLuJ5?xUZh2a+BWpV=lA>V_J!TElf5} z(ahCNK5c?#5Bi%apc?%W9rI+xJ6`^vY|Ym=SN1I($h&VjWGmUQr+yu~<%N@?t}YKW z_fxAa_vyEM=QzKP6@AshS6-BEwp--z4bcvK^s4tcC##k6^Qm9juiR&Sret@EzIgqZ zW}m6vh+Y?eyX?Po{1rE8>_FK5c*DW>w1T+9^Wc;YZCp^$=K^6Sbk-9= zc}2{-EfjwXt{X72a=%)fKzlU!mMWpU2ZdFaP&1Wt^kT{g5?I{g*+uS@(JG8L38b^l zu$$*bdFVoC)+Pi8gpi?3A%qrpjR$G$Sm>4iCGmsky4!5~i2aWzp%%;*%kLad{p5Yw$qV2%bog*-g?$^O2Dc(&t$wncZNW=U;RF5U_NHNw z!9g1Wgis_2y|z}bFA|6Gn~S|i8XZFay#F<^4HuX6LSMS=y405ui(G||h5P5sXb>`v zp~Umf*?+VEu&|{4q~xvDQk-^lB>9ykMZ-I3f>FEM!2e1I`D<;|iRI8%8aO8lTpID( z(ubZ#OtKmOLr$r;NzTrfq7?R z*yAs-zuo!gO{S$be3 zCP(?1vg-$OR-6f9J19RQN*SgfzU~X`jQ@^F;~zL*GOk zx+)WQgTKy!6)C0istwkPXwV7`49f$st&6yBy$;a!kSap?gWb+SU6nUxK^4shiu>dl zJIWG=<6dh*-XDs#P6DjvK9%*&#QY|Z+##qJ@K*QW&_39h*yt?jZjR;M)%9P~4G=2S zqu9C5W(?hdbrGTB>#$XkOu3LJn1NqCLsKrB(#M=hOzCOQjbg~i-}5alEs2RV(Fm4s zN)CuiBt6vNM9_`QXDpSavS{A9y*axZAhC_;b_Z9p7ZW{3L4e}yo4`J_xT7J!c1(oz zAwJUb_jJbo2N9Wm@~`w1j>A7s+3*2=m&@pcIZsoK~&bdYEd9Zg*fymcuZ-VkQ5&0|XGbvC`KSBC)2B-T{l5p-9s7#rl9hLXx+wQfXc@zu6 z{_n){|0a?0FIuWmC-dcn`}6XP2vC+TQyF;kL7^uiYCLGpMKNu0eQzT;K02A5d z(dPeML_{VsoaIm?o2y)$z!B8!7prTgc7UY+zWLPWTP-U|9Hb{g?9mC0&y(B>wNzK%+q-m%9SCALG26b#9Jek#)48(Z5~ z@-|<8wLpKZqK20k0VVN=P4O$~GBEte3_LTCb<8lWyIXomSwRLHwOYy#S~Kx&0bnYp za*eP;W7SBzli%`j11lnt4pN&>1s!K6?^o-HBa`H|AcYKKJD10`!#!?)r-eqn3Os+& zC#Lbd@0)aG`Fcg{IH1=g9f0wQAa$qH(-(0;3)Qh#&OfF=cWZcU+N(4wsDlCu_wpy_ z@OaKUAIb^~VD+IBN-o%iDX%wze%Xi{E-i>gDrD_?DW7sse(F8_AlnWD%zhFmSXo&q zsi~>O*QwoMVnaiJ=bv&zR!~Q$yiQ-=(uhf4QPAswS+?;6se2if18bbxz<(ku%{q9l|19kBd)qRBKI6>GWs_e->C&2b}r=bV~ zcXVr<`{GrT(?A%AMTCete4YyuwUAdKB&hLLw}gSjfzg+UN=EtX21(6x3Y}SkHbX7= zN(DPN6A{bKzscMv2{u^W6!09hj+|W9z+H2Lb=dHqp%Q89SCZ*^_7Vf<-+D3LFSf&~ zLVcqv7a5*yk%6y0Ib-xaFc365EY!FW$61G7usT=TvImeq&?&U02|GKrq*Y|);^GQ4 zvc9$(=U_bp%5rTXmx_&Dg_eM*HoimR*^l)lycG|u}%REFuOAc8&45KYW;L4D)U z)kqb;0AGmIIjkeJU+YU#Pj(%nIM{YNJ<&>=GkB<=o{wu(Q; zmnj#cM5_?edX)f0Mz8j|G@OO?bf?61n+9`q>k3c2K*ly883P+8R@MWPg+{HiPbcO0 z3h~mKo7bSn8BydKyIZJ&I#PvpC-fk!9_Yr4kQuo=R?vv`7W_daT}majUYe4O5xFxT z)APH0S?((HLE5;I1|X-9nuhPy=L^VhC!4u1Ab? z4r5Zq<&1YwY)Z?MTc53cW8eVV&|;}Rt~yW;ET-SNUXX>}+N_+A<49AT@)O4i*jfk8 zUf5bD*jh^dn@Tjv&`x1%MjI5Qj!vwkf|rX}JV%sZH_oOa%ZGznzLo!c`NBFJK*bZ3 zr*vS9jGmJ#Gox?>2JAXcA67p1#g@9J{frf>=f{)xsUm~kVq-9AFW`s`DD1rOUn4w1 zuV(_!9H~f^_)rknRZSabjQM8v(*aV{im#{=&o)F!fXQIJUNN0Ok1%;ibz8=lid)J zd;EumdCCQsJtLt<*v+C0;`d_0J-$W2eO>8Bfcs3r8o@qQ##!O`>Iil+d`?DN?I7YF&ePkzH`lU_npQXqjxImcYi?oBbE0Y}WpNU9k%`8amp zsiljF1_w_bo0J0Kqhj21Ld?hxZuEB&jEU6a-m9+kx+K4buHlmILn=4 zLu3f)q@PA~ix3%l(1qJ225YYHB$?`Tg&L7VFCCJ^Lv8Ol^wKrwG?uV>k_;8;^J+?S z;jQre#Y2jnb4h?B-czEyW@a25;XnnZ-R5TSKm2(}Nshr74K9pDBPWoG8=#yTqMi`V zT|-a2>%l%_A8Z>J5UoDvKmN^*?UMy2`PCVSSh^r55mj-8EdzDi zN(S7v(thow53P4`M2oRoOxZ4K;dhVXsTmpO$!>ic%evtx^y

^t7| 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 QCjOX=gu=CKF{20n4 + + diff --git a/index.html b/index.html new file mode 100644 index 00000000..9eff4c0e --- /dev/null +++ b/index.html @@ -0,0 +1,16 @@ + + + + + +Frontpage | Template FastAPI React | Template FastAPI React + + + + +

+

Template FastAPI React

A solution template for creating a Single Page App (SPA) with React and FastAPI following the principles of Clean Architecture.

Features include:

Auto-generated changelogs from Git history
Auto-generated API documentations (using FastAPI)
Auto-generated API clients (using openapi generator)
Pre-commit hooks
CI/CD (using Github Actions)
Pydantic data validation
OAuth2
Standardized API error and response model
Run using Docker
Documentation solution (using Docusaurus)
+ + + + \ No newline at end of file diff --git a/sitemap.xml b/sitemap.xml new file mode 100644 index 00000000..c968955a --- /dev/null +++ b/sitemap.xml @@ -0,0 +1 @@ +https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/changelogweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/about/concepts/taskweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/about/concepts/use-caseweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/about/how-to/how-to-do-somethingweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/about/introductionweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/about/overviewweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/about/running/configureweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/about/running/prerequisitesweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/about/running/starting-servicesweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/category/codingweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/category/conceptsweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/category/development-guideweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/category/how-toweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/category/runningweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/changelog/weekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/contribute/development-guide/coding/architectureweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/weekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/weekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/clientsweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repositoriesweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-data-providers/repository-interfacesweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-entitiesweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/weekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/controllersweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/securing-endpointsweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-api/adding-features/use-casesweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/contribute/development-guide/coding/extending-the-web/weekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/contribute/development-guide/coding/generate-api-clientsweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/contribute/development-guide/publishingweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/contribute/development-guide/setupweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/contribute/development-guide/testingweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/contribute/development-guide/upgradingweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/contribute/documentationweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/contribute/ground-rulesweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/docs/contribute/how-to-start-contributingweekly0.5https://template-fastapi-react.app.playground.radix.equinor.com/template-fastapi-react/weekly0.5 \ No newline at end of file