From d57eec36e5cbb30689e2edf0345dd2823279e390 Mon Sep 17 00:00:00 2001 From: hconhisway Date: Tue, 2 Apr 2024 16:59:02 -0600 Subject: [PATCH] Updates --- index.html | 2 +- ...5d8fd4e46.css => app.47bd9779ba3b9a7e86a34752feb2c41b.css} | 4 ++-- ...6.css.map => app.47bd9779ba3b9a7e86a34752feb2c41b.css.map} | 2 +- static/js/app.25edb8e331688e58ba08.js | 2 -- static/js/app.25edb8e331688e58ba08.js.map | 1 - static/js/app.eac58d9146577b5c252e.js | 2 ++ static/js/app.eac58d9146577b5c252e.js.map | 1 + static/js/manifest.8bffe54c7880a341a260.js.map | 2 +- 8 files changed, 8 insertions(+), 8 deletions(-) rename static/css/{app.c220b377967d740c7753a065d8fd4e46.css => app.47bd9779ba3b9a7e86a34752feb2c41b.css} (99%) rename static/css/{app.c220b377967d740c7753a065d8fd4e46.css.map => app.47bd9779ba3b9a7e86a34752feb2c41b.css.map} (99%) delete mode 100644 static/js/app.25edb8e331688e58ba08.js delete mode 100644 static/js/app.25edb8e331688e58ba08.js.map create mode 100644 static/js/app.eac58d9146577b5c252e.js create mode 100644 static/js/app.eac58d9146577b5c252e.js.map diff --git a/index.html b/index.html index 66d999c..d4c0dcc 100644 --- a/index.html +++ b/index.html @@ -1 +1 @@ -moviz-client
\ No newline at end of file +moviz-client
\ No newline at end of file diff --git a/static/css/app.c220b377967d740c7753a065d8fd4e46.css b/static/css/app.47bd9779ba3b9a7e86a34752feb2c41b.css similarity index 99% rename from static/css/app.c220b377967d740c7753a065d8fd4e46.css rename to static/css/app.47bd9779ba3b9a7e86a34752feb2c41b.css index f998d9d..a4650d9 100644 --- a/static/css/app.c220b377967d740c7753a065d8fd4e46.css +++ b/static/css/app.47bd9779ba3b9a7e86a34752feb2c41b.css @@ -2,5 +2,5 @@ * Bootstrap v5.3.0 (https://getbootstrap.com/) * Copyright 2011-2023 The Bootstrap Authors * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - */:root,[data-bs-theme=light]{--bs-blue:#0d6efd;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#d63384;--bs-red:#dc3545;--bs-orange:#fd7e14;--bs-yellow:#ffc107;--bs-green:#198754;--bs-teal:#20c997;--bs-cyan:#0dcaf0;--bs-black:#000;--bs-white:#fff;--bs-gray:#6c757d;--bs-gray-dark:#343a40;--bs-gray-100:#f8f9fa;--bs-gray-200:#e9ecef;--bs-gray-300:#dee2e6;--bs-gray-400:#ced4da;--bs-gray-500:#adb5bd;--bs-gray-600:#6c757d;--bs-gray-700:#495057;--bs-gray-800:#343a40;--bs-gray-900:#212529;--bs-primary:#0d6efd;--bs-secondary:#6c757d;--bs-success:#198754;--bs-info:#0dcaf0;--bs-warning:#ffc107;--bs-danger:#dc3545;--bs-light:#f8f9fa;--bs-dark:#212529;--bs-primary-rgb:13,110,253;--bs-secondary-rgb:108,117,125;--bs-success-rgb:25,135,84;--bs-info-rgb:13,202,240;--bs-warning-rgb:255,193,7;--bs-danger-rgb:220,53,69;--bs-light-rgb:248,249,250;--bs-dark-rgb:33,37,41;--bs-primary-text-emphasis:#052c65;--bs-secondary-text-emphasis:#2b2f32;--bs-success-text-emphasis:#0a3622;--bs-info-text-emphasis:#055160;--bs-warning-text-emphasis:#664d03;--bs-danger-text-emphasis:#58151c;--bs-light-text-emphasis:#495057;--bs-dark-text-emphasis:#495057;--bs-primary-bg-subtle:#cfe2ff;--bs-secondary-bg-subtle:#e2e3e5;--bs-success-bg-subtle:#d1e7dd;--bs-info-bg-subtle:#cff4fc;--bs-warning-bg-subtle:#fff3cd;--bs-danger-bg-subtle:#f8d7da;--bs-light-bg-subtle:#fcfcfd;--bs-dark-bg-subtle:#ced4da;--bs-primary-border-subtle:#9ec5fe;--bs-secondary-border-subtle:#c4c8cb;--bs-success-border-subtle:#a3cfbb;--bs-info-border-subtle:#9eeaf9;--bs-warning-border-subtle:#ffe69c;--bs-danger-border-subtle:#f1aeb5;--bs-light-border-subtle:#e9ecef;--bs-dark-border-subtle:#adb5bd;--bs-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--bs-font-sans-serif:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans","Liberation Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--bs-font-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--bs-gradient:linear-gradient(180deg,hsla(0,0%,100%,0.15),hsla(0,0%,100%,0));--bs-body-font-family:var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight:400;--bs-body-line-height:1.5;--bs-body-color:#212529;--bs-body-color-rgb:33,37,41;--bs-body-bg:#fff;--bs-body-bg-rgb:255,255,255;--bs-emphasis-color:#000;--bs-emphasis-color-rgb:0,0,0;--bs-secondary-color:rgba(33,37,41,0.75);--bs-secondary-color-rgb:33,37,41;--bs-secondary-bg:#e9ecef;--bs-secondary-bg-rgb:233,236,239;--bs-tertiary-color:rgba(33,37,41,0.5);--bs-tertiary-color-rgb:33,37,41;--bs-tertiary-bg:#f8f9fa;--bs-tertiary-bg-rgb:248,249,250;--bs-heading-color:inherit;--bs-link-color:#0d6efd;--bs-link-color-rgb:13,110,253;--bs-link-decoration:underline;--bs-link-hover-color:#0a58ca;--bs-link-hover-color-rgb:10,88,202;--bs-code-color:#d63384;--bs-highlight-bg:#fff3cd;--bs-border-width:1px;--bs-border-style:solid;--bs-border-color:#dee2e6;--bs-border-color-translucent:rgba(0,0,0,0.175);--bs-border-radius:0.375rem;--bs-border-radius-sm:0.25rem;--bs-border-radius-lg:0.5rem;--bs-border-radius-xl:1rem;--bs-border-radius-xxl:2rem;--bs-border-radius-2xl:var(--bs-border-radius-xxl);--bs-border-radius-pill:50rem;--bs-box-shadow:0 0.5rem 1rem rgba(0,0,0,0.15);--bs-box-shadow-sm:0 0.125rem 0.25rem rgba(0,0,0,0.075);--bs-box-shadow-lg:0 1rem 3rem rgba(0,0,0,0.175);--bs-box-shadow-inset:inset 0 1px 2px rgba(0,0,0,0.075);--bs-focus-ring-width:0.25rem;--bs-focus-ring-opacity:0.25;--bs-focus-ring-color:rgba(13,110,253,0.25);--bs-form-valid-color:#198754;--bs-form-valid-border-color:#198754;--bs-form-invalid-color:#dc3545;--bs-form-invalid-border-color:#dc3545}[data-bs-theme=dark]{color-scheme:dark;--bs-body-color:#adb5bd;--bs-body-color-rgb:173,181,189;--bs-body-bg:#212529;--bs-body-bg-rgb:33,37,41;--bs-emphasis-color:#fff;--bs-emphasis-color-rgb:255,255,255;--bs-secondary-color:rgba(173,181,189,0.75);--bs-secondary-color-rgb:173,181,189;--bs-secondary-bg:#343a40;--bs-secondary-bg-rgb:52,58,64;--bs-tertiary-color:rgba(173,181,189,0.5);--bs-tertiary-color-rgb:173,181,189;--bs-tertiary-bg:#2b3035;--bs-tertiary-bg-rgb:43,48,53;--bs-primary-text-emphasis:#6ea8fe;--bs-secondary-text-emphasis:#a7acb1;--bs-success-text-emphasis:#75b798;--bs-info-text-emphasis:#6edff6;--bs-warning-text-emphasis:#ffda6a;--bs-danger-text-emphasis:#ea868f;--bs-light-text-emphasis:#f8f9fa;--bs-dark-text-emphasis:#dee2e6;--bs-primary-bg-subtle:#031633;--bs-secondary-bg-subtle:#161719;--bs-success-bg-subtle:#051b11;--bs-info-bg-subtle:#032830;--bs-warning-bg-subtle:#332701;--bs-danger-bg-subtle:#2c0b0e;--bs-light-bg-subtle:#343a40;--bs-dark-bg-subtle:#1a1d20;--bs-primary-border-subtle:#084298;--bs-secondary-border-subtle:#41464b;--bs-success-border-subtle:#0f5132;--bs-info-border-subtle:#087990;--bs-warning-border-subtle:#997404;--bs-danger-border-subtle:#842029;--bs-light-border-subtle:#495057;--bs-dark-border-subtle:#343a40;--bs-heading-color:inherit;--bs-link-color:#6ea8fe;--bs-link-hover-color:#8bb9fe;--bs-link-color-rgb:110,168,254;--bs-link-hover-color-rgb:139,185,254;--bs-code-color:#e685b5;--bs-border-color:#495057;--bs-border-color-translucent:hsla(0,0%,100%,0.15);--bs-form-valid-color:#75b798;--bs-form-valid-border-color:#75b798;--bs-form-invalid-color:#ea868f;--bs-form-invalid-border-color:#ea868f}*,:after,:before{-webkit-box-sizing:border-box;box-sizing:border-box}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}hr{margin:1rem 0;color:inherit;border:0;border-top:var(--bs-border-width) solid;opacity:.25}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2;color:var(--bs-heading-color)}.h1,h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width:1200px){.h1,h1{font-size:2.5rem}}.h2,h2{font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){.h2,h2{font-size:2rem}}.h3,h3{font-size:calc(1.3rem + .6vw)}@media (min-width:1200px){.h3,h3{font-size:1.75rem}}.h4,h4{font-size:calc(1.275rem + .3vw)}@media (min-width:1200px){.h4,h4{font-size:1.5rem}}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-left:2rem}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}.small,small{font-size:.875em}.mark,mark{padding:.1875em;background-color:var(--bs-highlight-bg)}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,1));text-decoration:underline}a:hover{--bs-link-color-rgb:var(--bs-link-hover-color-rgb)}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:var(--bs-font-monospace);font-size:1em}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em}pre code{font-size:inherit;color:inherit;word-break:normal}code{font-size:.875em;color:var(--bs-code-color);word-wrap:break-word}a>code{color:inherit}kbd{padding:.1875rem .375rem;font-size:.875em;color:var(--bs-body-bg);background-color:var(--bs-body-color);border-radius:.25rem}kbd kbd{padding:0;font-size:1em}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-secondary-color);text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}tbody,td,tfoot,th,thead,tr{border:0 solid;border-color:inherit}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator{display:none!important}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + .3vw);line-height:inherit}@media (min-width:1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-text,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:textfield}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}::file-selector-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none!important}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:calc(1.625rem + 4.5vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-1{font-size:5rem}}.display-2{font-size:calc(1.575rem + 3.9vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-2{font-size:4.5rem}}.display-3{font-size:calc(1.525rem + 3.3vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-3{font-size:4rem}}.display-4{font-size:calc(1.475rem + 2.7vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-4{font-size:3.5rem}}.display-5{font-size:calc(1.425rem + 2.1vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-5{font-size:3rem}}.display-6{font-size:calc(1.375rem + 1.5vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-6{font-size:2.5rem}}.list-inline,.list-unstyled{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:.875em;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote>:last-child{margin-bottom:0}.blockquote-footer{margin-top:-1rem;margin-bottom:1rem;font-size:.875em;color:#6c757d}.blockquote-footer:before{content:"\2014\A0"}.img-fluid,.img-thumbnail{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:var(--bs-body-bg);border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius)}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:.875em;color:var(--bs-secondary-color)}.container,.container-fluid,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{--bs-gutter-x:1.5rem;--bs-gutter-y:0;width:100%;padding-right:calc(var(--bs-gutter-x)*0.5);padding-left:calc(var(--bs-gutter-x)*0.5);margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}@media (min-width:1400px){.container,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{max-width:1320px}}:root{--bs-breakpoint-xs:0;--bs-breakpoint-sm:576px;--bs-breakpoint-md:768px;--bs-breakpoint-lg:992px;--bs-breakpoint-xl:1200px;--bs-breakpoint-xxl:1400px}.row{--bs-gutter-x:1.5rem;--bs-gutter-y:0;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-top:calc(var(--bs-gutter-y)*-1);margin-right:calc(var(--bs-gutter-x)*-0.5);margin-left:calc(var(--bs-gutter-x)*-0.5)}.row>*{-ms-flex-negative:0;flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x)*0.5);padding-left:calc(var(--bs-gutter-x)*0.5);margin-top:var(--bs-gutter-y)}.col{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-auto>*{width:auto}.row-cols-1>*,.row-cols-auto>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-1>*{width:100%}.row-cols-2>*{width:50%}.row-cols-2>*,.row-cols-3>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-3>*{width:33.3333333333%}.row-cols-4>*{width:25%}.row-cols-4>*,.row-cols-5>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-5>*{width:20%}.row-cols-6>*{width:16.6666666667%}.col-auto,.row-cols-6>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-auto{width:auto}.col-1{width:8.33333333%}.col-1,.col-2{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-2{width:16.66666667%}.col-3{width:25%}.col-3,.col-4{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-4{width:33.33333333%}.col-5{width:41.66666667%}.col-5,.col-6{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-6{width:50%}.col-7{width:58.33333333%}.col-7,.col-8{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-8{width:66.66666667%}.col-9{width:75%}.col-9,.col-10{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-10{width:83.33333333%}.col-11{width:91.66666667%}.col-11,.col-12{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-12{width:100%}.offset-1{margin-left:8.33333333%}.offset-2{margin-left:16.66666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333333%}.offset-5{margin-left:41.66666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333333%}.offset-8{margin-left:66.66666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333333%}.offset-11{margin-left:91.66666667%}.g-0,.gx-0{--bs-gutter-x:0}.g-0,.gy-0{--bs-gutter-y:0}.g-1,.gx-1{--bs-gutter-x:0.25rem}.g-1,.gy-1{--bs-gutter-y:0.25rem}.g-2,.gx-2{--bs-gutter-x:0.5rem}.g-2,.gy-2{--bs-gutter-y:0.5rem}.g-3,.gx-3{--bs-gutter-x:1rem}.g-3,.gy-3{--bs-gutter-y:1rem}.g-4,.gx-4{--bs-gutter-x:1.5rem}.g-4,.gy-4{--bs-gutter-y:1.5rem}.g-5,.gx-5{--bs-gutter-x:3rem}.g-5,.gy-5{--bs-gutter-y:3rem}@media (min-width:576px){.col-sm{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-sm-auto>*{width:auto}.row-cols-sm-1>*,.row-cols-sm-auto>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-sm-1>*{width:100%}.row-cols-sm-2>*{width:50%}.row-cols-sm-2>*,.row-cols-sm-3>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-sm-3>*{width:33.3333333333%}.row-cols-sm-4>*{width:25%}.row-cols-sm-4>*,.row-cols-sm-5>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-sm-5>*{width:20%}.row-cols-sm-6>*{width:16.6666666667%}.col-sm-auto,.row-cols-sm-6>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-sm-auto{width:auto}.col-sm-1{width:8.33333333%}.col-sm-1,.col-sm-2{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-sm-2{width:16.66666667%}.col-sm-3{width:25%}.col-sm-3,.col-sm-4{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-sm-4{width:33.33333333%}.col-sm-5{width:41.66666667%}.col-sm-5,.col-sm-6{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-sm-6{width:50%}.col-sm-7{width:58.33333333%}.col-sm-7,.col-sm-8{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-sm-8{width:66.66666667%}.col-sm-9{width:75%}.col-sm-9,.col-sm-10{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-sm-10{width:83.33333333%}.col-sm-11{width:91.66666667%}.col-sm-11,.col-sm-12{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-sm-12{width:100%}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333333%}.offset-sm-2{margin-left:16.66666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333333%}.offset-sm-5{margin-left:41.66666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333333%}.offset-sm-8{margin-left:66.66666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333333%}.offset-sm-11{margin-left:91.66666667%}.g-sm-0,.gx-sm-0{--bs-gutter-x:0}.g-sm-0,.gy-sm-0{--bs-gutter-y:0}.g-sm-1,.gx-sm-1{--bs-gutter-x:0.25rem}.g-sm-1,.gy-sm-1{--bs-gutter-y:0.25rem}.g-sm-2,.gx-sm-2{--bs-gutter-x:0.5rem}.g-sm-2,.gy-sm-2{--bs-gutter-y:0.5rem}.g-sm-3,.gx-sm-3{--bs-gutter-x:1rem}.g-sm-3,.gy-sm-3{--bs-gutter-y:1rem}.g-sm-4,.gx-sm-4{--bs-gutter-x:1.5rem}.g-sm-4,.gy-sm-4{--bs-gutter-y:1.5rem}.g-sm-5,.gx-sm-5{--bs-gutter-x:3rem}.g-sm-5,.gy-sm-5{--bs-gutter-y:3rem}}@media (min-width:768px){.col-md{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-md-auto>*{width:auto}.row-cols-md-1>*,.row-cols-md-auto>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-md-1>*{width:100%}.row-cols-md-2>*{width:50%}.row-cols-md-2>*,.row-cols-md-3>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-md-3>*{width:33.3333333333%}.row-cols-md-4>*{width:25%}.row-cols-md-4>*,.row-cols-md-5>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-md-5>*{width:20%}.row-cols-md-6>*{width:16.6666666667%}.col-md-auto,.row-cols-md-6>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-md-auto{width:auto}.col-md-1{width:8.33333333%}.col-md-1,.col-md-2{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-md-2{width:16.66666667%}.col-md-3{width:25%}.col-md-3,.col-md-4{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-md-4{width:33.33333333%}.col-md-5{width:41.66666667%}.col-md-5,.col-md-6{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-md-6{width:50%}.col-md-7{width:58.33333333%}.col-md-7,.col-md-8{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-md-8{width:66.66666667%}.col-md-9{width:75%}.col-md-9,.col-md-10{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-md-10{width:83.33333333%}.col-md-11{width:91.66666667%}.col-md-11,.col-md-12{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-md-12{width:100%}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333333%}.offset-md-2{margin-left:16.66666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333333%}.offset-md-5{margin-left:41.66666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333333%}.offset-md-8{margin-left:66.66666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333333%}.offset-md-11{margin-left:91.66666667%}.g-md-0,.gx-md-0{--bs-gutter-x:0}.g-md-0,.gy-md-0{--bs-gutter-y:0}.g-md-1,.gx-md-1{--bs-gutter-x:0.25rem}.g-md-1,.gy-md-1{--bs-gutter-y:0.25rem}.g-md-2,.gx-md-2{--bs-gutter-x:0.5rem}.g-md-2,.gy-md-2{--bs-gutter-y:0.5rem}.g-md-3,.gx-md-3{--bs-gutter-x:1rem}.g-md-3,.gy-md-3{--bs-gutter-y:1rem}.g-md-4,.gx-md-4{--bs-gutter-x:1.5rem}.g-md-4,.gy-md-4{--bs-gutter-y:1.5rem}.g-md-5,.gx-md-5{--bs-gutter-x:3rem}.g-md-5,.gy-md-5{--bs-gutter-y:3rem}}@media (min-width:992px){.col-lg{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-lg-auto>*{width:auto}.row-cols-lg-1>*,.row-cols-lg-auto>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-lg-1>*{width:100%}.row-cols-lg-2>*{width:50%}.row-cols-lg-2>*,.row-cols-lg-3>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-lg-3>*{width:33.3333333333%}.row-cols-lg-4>*{width:25%}.row-cols-lg-4>*,.row-cols-lg-5>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-lg-5>*{width:20%}.row-cols-lg-6>*{width:16.6666666667%}.col-lg-auto,.row-cols-lg-6>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-lg-auto{width:auto}.col-lg-1{width:8.33333333%}.col-lg-1,.col-lg-2{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-lg-2{width:16.66666667%}.col-lg-3{width:25%}.col-lg-3,.col-lg-4{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-lg-4{width:33.33333333%}.col-lg-5{width:41.66666667%}.col-lg-5,.col-lg-6{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-lg-6{width:50%}.col-lg-7{width:58.33333333%}.col-lg-7,.col-lg-8{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-lg-8{width:66.66666667%}.col-lg-9{width:75%}.col-lg-9,.col-lg-10{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-lg-10{width:83.33333333%}.col-lg-11{width:91.66666667%}.col-lg-11,.col-lg-12{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-lg-12{width:100%}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333333%}.offset-lg-2{margin-left:16.66666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333333%}.offset-lg-5{margin-left:41.66666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333333%}.offset-lg-8{margin-left:66.66666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333333%}.offset-lg-11{margin-left:91.66666667%}.g-lg-0,.gx-lg-0{--bs-gutter-x:0}.g-lg-0,.gy-lg-0{--bs-gutter-y:0}.g-lg-1,.gx-lg-1{--bs-gutter-x:0.25rem}.g-lg-1,.gy-lg-1{--bs-gutter-y:0.25rem}.g-lg-2,.gx-lg-2{--bs-gutter-x:0.5rem}.g-lg-2,.gy-lg-2{--bs-gutter-y:0.5rem}.g-lg-3,.gx-lg-3{--bs-gutter-x:1rem}.g-lg-3,.gy-lg-3{--bs-gutter-y:1rem}.g-lg-4,.gx-lg-4{--bs-gutter-x:1.5rem}.g-lg-4,.gy-lg-4{--bs-gutter-y:1.5rem}.g-lg-5,.gx-lg-5{--bs-gutter-x:3rem}.g-lg-5,.gy-lg-5{--bs-gutter-y:3rem}}@media (min-width:1200px){.col-xl{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-xl-auto>*{width:auto}.row-cols-xl-1>*,.row-cols-xl-auto>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-xl-1>*{width:100%}.row-cols-xl-2>*{width:50%}.row-cols-xl-2>*,.row-cols-xl-3>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-xl-3>*{width:33.3333333333%}.row-cols-xl-4>*{width:25%}.row-cols-xl-4>*,.row-cols-xl-5>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-xl-5>*{width:20%}.row-cols-xl-6>*{width:16.6666666667%}.col-xl-auto,.row-cols-xl-6>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xl-auto{width:auto}.col-xl-1{width:8.33333333%}.col-xl-1,.col-xl-2{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xl-2{width:16.66666667%}.col-xl-3{width:25%}.col-xl-3,.col-xl-4{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xl-4{width:33.33333333%}.col-xl-5{width:41.66666667%}.col-xl-5,.col-xl-6{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xl-6{width:50%}.col-xl-7{width:58.33333333%}.col-xl-7,.col-xl-8{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xl-8{width:66.66666667%}.col-xl-9{width:75%}.col-xl-9,.col-xl-10{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xl-10{width:83.33333333%}.col-xl-11{width:91.66666667%}.col-xl-11,.col-xl-12{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xl-12{width:100%}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333333%}.offset-xl-2{margin-left:16.66666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333333%}.offset-xl-5{margin-left:41.66666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333333%}.offset-xl-8{margin-left:66.66666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333333%}.offset-xl-11{margin-left:91.66666667%}.g-xl-0,.gx-xl-0{--bs-gutter-x:0}.g-xl-0,.gy-xl-0{--bs-gutter-y:0}.g-xl-1,.gx-xl-1{--bs-gutter-x:0.25rem}.g-xl-1,.gy-xl-1{--bs-gutter-y:0.25rem}.g-xl-2,.gx-xl-2{--bs-gutter-x:0.5rem}.g-xl-2,.gy-xl-2{--bs-gutter-y:0.5rem}.g-xl-3,.gx-xl-3{--bs-gutter-x:1rem}.g-xl-3,.gy-xl-3{--bs-gutter-y:1rem}.g-xl-4,.gx-xl-4{--bs-gutter-x:1.5rem}.g-xl-4,.gy-xl-4{--bs-gutter-y:1.5rem}.g-xl-5,.gx-xl-5{--bs-gutter-x:3rem}.g-xl-5,.gy-xl-5{--bs-gutter-y:3rem}}@media (min-width:1400px){.col-xxl{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-xxl-auto>*{width:auto}.row-cols-xxl-1>*,.row-cols-xxl-auto>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-xxl-1>*{width:100%}.row-cols-xxl-2>*{width:50%}.row-cols-xxl-2>*,.row-cols-xxl-3>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-xxl-3>*{width:33.3333333333%}.row-cols-xxl-4>*{width:25%}.row-cols-xxl-4>*,.row-cols-xxl-5>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-xxl-5>*{width:20%}.row-cols-xxl-6>*{width:16.6666666667%}.col-xxl-auto,.row-cols-xxl-6>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xxl-auto{width:auto}.col-xxl-1{width:8.33333333%}.col-xxl-1,.col-xxl-2{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xxl-2{width:16.66666667%}.col-xxl-3{width:25%}.col-xxl-3,.col-xxl-4{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xxl-4{width:33.33333333%}.col-xxl-5{width:41.66666667%}.col-xxl-5,.col-xxl-6{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xxl-6{width:50%}.col-xxl-7{width:58.33333333%}.col-xxl-7,.col-xxl-8{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xxl-8{width:66.66666667%}.col-xxl-9{width:75%}.col-xxl-9,.col-xxl-10{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xxl-10{width:83.33333333%}.col-xxl-11{width:91.66666667%}.col-xxl-11,.col-xxl-12{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xxl-12{width:100%}.offset-xxl-0{margin-left:0}.offset-xxl-1{margin-left:8.33333333%}.offset-xxl-2{margin-left:16.66666667%}.offset-xxl-3{margin-left:25%}.offset-xxl-4{margin-left:33.33333333%}.offset-xxl-5{margin-left:41.66666667%}.offset-xxl-6{margin-left:50%}.offset-xxl-7{margin-left:58.33333333%}.offset-xxl-8{margin-left:66.66666667%}.offset-xxl-9{margin-left:75%}.offset-xxl-10{margin-left:83.33333333%}.offset-xxl-11{margin-left:91.66666667%}.g-xxl-0,.gx-xxl-0{--bs-gutter-x:0}.g-xxl-0,.gy-xxl-0{--bs-gutter-y:0}.g-xxl-1,.gx-xxl-1{--bs-gutter-x:0.25rem}.g-xxl-1,.gy-xxl-1{--bs-gutter-y:0.25rem}.g-xxl-2,.gx-xxl-2{--bs-gutter-x:0.5rem}.g-xxl-2,.gy-xxl-2{--bs-gutter-y:0.5rem}.g-xxl-3,.gx-xxl-3{--bs-gutter-x:1rem}.g-xxl-3,.gy-xxl-3{--bs-gutter-y:1rem}.g-xxl-4,.gx-xxl-4{--bs-gutter-x:1.5rem}.g-xxl-4,.gy-xxl-4{--bs-gutter-y:1.5rem}.g-xxl-5,.gx-xxl-5{--bs-gutter-x:3rem}.g-xxl-5,.gy-xxl-5{--bs-gutter-y:3rem}}.table{--bs-table-color-type:initial;--bs-table-bg-type:initial;--bs-table-color-state:initial;--bs-table-bg-state:initial;--bs-table-color:var(--bs-body-color);--bs-table-bg:var(--bs-body-bg);--bs-table-border-color:var(--bs-border-color);--bs-table-accent-bg:transparent;--bs-table-striped-color:var(--bs-body-color);--bs-table-striped-bg:rgba(0,0,0,0.05);--bs-table-active-color:var(--bs-body-color);--bs-table-active-bg:rgba(0,0,0,0.1);--bs-table-hover-color:var(--bs-body-color);--bs-table-hover-bg:rgba(0,0,0,0.075);width:100%;margin-bottom:1rem;vertical-align:top;border-color:var(--bs-table-border-color)}.table>:not(caption)>*>*{padding:.5rem;color:var(--bs-table-color-state,var(--bs-table-color-type,var(--bs-table-color)));background-color:var(--bs-table-bg);border-bottom-width:var(--bs-border-width);-webkit-box-shadow:inset 0 0 0 9999px var(--bs-table-bg-state,var(--bs-table-bg-type,var(--bs-table-accent-bg)));box-shadow:inset 0 0 0 9999px var(--bs-table-bg-state,var(--bs-table-bg-type,var(--bs-table-accent-bg)))}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table-group-divider{border-top:calc(var(--bs-border-width)*2) solid}.caption-top{caption-side:top}.table-sm>:not(caption)>*>*{padding:.25rem}.table-bordered>:not(caption)>*{border-left-width:0;border-bottom-width:var(--bs-border-width);border-right-width:0;border-top-width:var(--bs-border-width)}.table-bordered>:not(caption)>*>*{border-left-width:var(--bs-border-width);border-bottom-width:0;border-right-width:var(--bs-border-width);border-top-width:0}.table-borderless>:not(caption)>*>*{border-bottom-width:0}.table-borderless>:not(:first-child){border-top-width:0}.table-striped-columns>:not(caption)>tr>:nth-child(2n),.table-striped>tbody>tr:nth-of-type(odd)>*{--bs-table-color-type:var(--bs-table-striped-color);--bs-table-bg-type:var(--bs-table-striped-bg)}.table-active{--bs-table-color-state:var(--bs-table-active-color);--bs-table-bg-state:var(--bs-table-active-bg)}.table-hover>tbody>tr:hover>*{--bs-table-color-state:var(--bs-table-hover-color);--bs-table-bg-state:var(--bs-table-hover-bg)}.table-primary{--bs-table-color:#000;--bs-table-bg:#cfe2ff;--bs-table-border-color:#bacbe6;--bs-table-striped-bg:#c5d7f2;--bs-table-striped-color:#000;--bs-table-active-bg:#bacbe6;--bs-table-active-color:#000;--bs-table-hover-bg:#bfd1ec;--bs-table-hover-color:#000}.table-primary,.table-secondary{color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-secondary{--bs-table-color:#000;--bs-table-bg:#e2e3e5;--bs-table-border-color:#cbccce;--bs-table-striped-bg:#d7d8da;--bs-table-striped-color:#000;--bs-table-active-bg:#cbccce;--bs-table-active-color:#000;--bs-table-hover-bg:#d1d2d4;--bs-table-hover-color:#000}.table-success{--bs-table-color:#000;--bs-table-bg:#d1e7dd;--bs-table-border-color:#bcd0c7;--bs-table-striped-bg:#c7dbd2;--bs-table-striped-color:#000;--bs-table-active-bg:#bcd0c7;--bs-table-active-color:#000;--bs-table-hover-bg:#c1d6cc;--bs-table-hover-color:#000}.table-info,.table-success{color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-info{--bs-table-color:#000;--bs-table-bg:#cff4fc;--bs-table-border-color:#badce3;--bs-table-striped-bg:#c5e8ef;--bs-table-striped-color:#000;--bs-table-active-bg:#badce3;--bs-table-active-color:#000;--bs-table-hover-bg:#bfe2e9;--bs-table-hover-color:#000}.table-warning{--bs-table-color:#000;--bs-table-bg:#fff3cd;--bs-table-border-color:#e6dbb9;--bs-table-striped-bg:#f2e7c3;--bs-table-striped-color:#000;--bs-table-active-bg:#e6dbb9;--bs-table-active-color:#000;--bs-table-hover-bg:#ece1be;--bs-table-hover-color:#000}.table-danger,.table-warning{color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-danger{--bs-table-color:#000;--bs-table-bg:#f8d7da;--bs-table-border-color:#dfc2c4;--bs-table-striped-bg:#eccccf;--bs-table-striped-color:#000;--bs-table-active-bg:#dfc2c4;--bs-table-active-color:#000;--bs-table-hover-bg:#e5c7ca;--bs-table-hover-color:#000}.table-light{--bs-table-color:#000;--bs-table-bg:#f8f9fa;--bs-table-border-color:#dfe0e1;--bs-table-striped-bg:#ecedee;--bs-table-striped-color:#000;--bs-table-active-bg:#dfe0e1;--bs-table-active-color:#000;--bs-table-hover-bg:#e5e6e7;--bs-table-hover-color:#000}.table-dark,.table-light{color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-dark{--bs-table-color:#fff;--bs-table-bg:#212529;--bs-table-border-color:#373b3e;--bs-table-striped-bg:#2c3034;--bs-table-striped-color:#fff;--bs-table-active-bg:#373b3e;--bs-table-active-color:#fff;--bs-table-hover-bg:#323539;--bs-table-hover-color:#fff}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width:575.98px){.table-responsive-sm{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:767.98px){.table-responsive-md{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:991.98px){.table-responsive-lg{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:1199.98px){.table-responsive-xl{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:1399.98px){.table-responsive-xxl{overflow-x:auto;-webkit-overflow-scrolling:touch}}.form-label{margin-bottom:.5rem}.col-form-label{padding-top:calc(.375rem + var(--bs-border-width));padding-bottom:calc(.375rem + var(--bs-border-width));margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + var(--bs-border-width));padding-bottom:calc(.5rem + var(--bs-border-width));font-size:1.25rem}.col-form-label-sm{padding-top:calc(.25rem + var(--bs-border-width));padding-bottom:calc(.25rem + var(--bs-border-width));font-size:.875rem}.form-text{margin-top:.25rem;font-size:.875em;color:var(--bs-secondary-color)}.form-control{display:block;width:100%;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);background-color:var(--bs-body-bg);background-clip:padding-box;border:var(--bs-border-width) solid var(--bs-border-color);-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--bs-border-radius);-webkit-transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{-webkit-transition:none;transition:none}}.form-control[type=file]{overflow:hidden}.form-control[type=file]:not(:disabled):not([readonly]){cursor:pointer}.form-control:focus{color:var(--bs-body-color);background-color:var(--bs-body-bg);border-color:#86b7fe;outline:0;-webkit-box-shadow:0 0 0 .25rem rgba(13,110,253,.25);box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-control::-webkit-date-and-time-value{min-width:85px;height:1.5em;margin:0}.form-control::-webkit-datetime-edit{display:block;padding:0}.form-control::-moz-placeholder{color:var(--bs-secondary-color);opacity:1}.form-control::-webkit-input-placeholder{color:var(--bs-secondary-color);opacity:1}.form-control::-ms-input-placeholder{color:var(--bs-secondary-color);opacity:1}.form-control::placeholder{color:var(--bs-secondary-color);opacity:1}.form-control:disabled{background-color:var(--bs-secondary-bg);opacity:1}.form-control::-webkit-file-upload-button{padding:.375rem .75rem;margin:-.375rem -.75rem;-webkit-margin-end:.75rem;margin-inline-end:.75rem;color:var(--bs-body-color);background-color:var(--bs-tertiary-bg);pointer-events:none;border:0 solid;border-color:inherit;border-inline-end-width:var(--bs-border-width);border-radius:0;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out}.form-control::file-selector-button{padding:.375rem .75rem;margin:-.375rem -.75rem;-webkit-margin-end:.75rem;margin-inline-end:.75rem;color:var(--bs-body-color);background-color:var(--bs-tertiary-bg);pointer-events:none;border:0 solid;border-color:inherit;border-inline-end-width:var(--bs-border-width);border-radius:0;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control::-webkit-file-upload-button{-webkit-transition:none;transition:none}.form-control::file-selector-button{-webkit-transition:none;transition:none}}.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button{background-color:var(--bs-secondary-bg)}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:var(--bs-secondary-bg)}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;line-height:1.5;color:var(--bs-body-color);background-color:transparent;border-width:medium;border-left:0 solid transparent;border-bottom:var(--bs-border-width) solid transparent;border-right:0 solid transparent;border-top:var(--bs-border-width) solid transparent}.form-control-plaintext:focus{outline:0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{min-height:calc(1.5em + .5rem + var(--bs-border-width)*2);padding:.25rem .5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.form-control-sm::-webkit-file-upload-button{padding:.25rem .5rem;margin:-.25rem -.5rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}.form-control-sm::file-selector-button{padding:.25rem .5rem;margin:-.25rem -.5rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}.form-control-lg{min-height:calc(1.5em + 1rem + var(--bs-border-width)*2);padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}.form-control-lg::-webkit-file-upload-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}textarea.form-control{min-height:calc(1.5em + .75rem + var(--bs-border-width)*2)}textarea.form-control-sm{min-height:calc(1.5em + .5rem + var(--bs-border-width)*2)}textarea.form-control-lg{min-height:calc(1.5em + 1rem + var(--bs-border-width)*2)}.form-control-color{width:3rem;height:calc(1.5em + .75rem + var(--bs-border-width)*2);padding:.375rem}.form-control-color:not(:disabled):not([readonly]){cursor:pointer}.form-control-color::-moz-color-swatch{border:0!important;border-radius:var(--bs-border-radius)}.form-control-color::-webkit-color-swatch{border:0!important;border-radius:var(--bs-border-radius)}.form-control-color.form-control-sm{height:calc(1.5em + .5rem + var(--bs-border-width)*2)}.form-control-color.form-control-lg{height:calc(1.5em + 1rem + var(--bs-border-width)*2)}.form-select{--bs-form-select-bg-img:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3E%3C/svg%3E");display:block;width:100%;padding:.375rem 2.25rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);background-color:var(--bs-body-bg);background-image:var(--bs-form-select-bg-img),var(--bs-form-select-bg-icon,none);background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);-webkit-transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;-webkit-appearance:none;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.form-select{-webkit-transition:none;transition:none}}.form-select:focus{border-color:#86b7fe;outline:0;-webkit-box-shadow:0 0 0 .25rem rgba(13,110,253,.25);box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-select[multiple],.form-select[size]:not([size="1"]){padding-right:.75rem;background-image:none}.form-select:disabled{background-color:var(--bs-secondary-bg)}.form-select:-moz-focusring{color:transparent;text-shadow:0 0 0 var(--bs-body-color)}.form-select-sm{padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.form-select-lg{padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}[data-bs-theme=dark] .form-select{--bs-form-select-bg-img:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23adb5bd' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3E%3C/svg%3E")}.form-check{display:block;min-height:1.5rem;padding-left:1.5em;margin-bottom:.125rem}.form-check .form-check-input{float:left;margin-left:-1.5em}.form-check-reverse{padding-right:1.5em;padding-left:0;text-align:right}.form-check-reverse .form-check-input{float:right;margin-right:-1.5em;margin-left:0}.form-check-input{--bs-form-check-bg:var(--bs-body-bg);width:1em;height:1em;margin-top:.25em;vertical-align:top;background-color:var(--bs-form-check-bg);background-image:var(--bs-form-check-bg-image);background-repeat:no-repeat;background-position:50%;background-size:contain;border:var(--bs-border-width) solid var(--bs-border-color);-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-print-color-adjust:exact;color-adjust:exact;print-color-adjust:exact}.form-check-input[type=checkbox]{border-radius:.25em}.form-check-input[type=radio]{border-radius:50%}.form-check-input:active{-webkit-filter:brightness(90%);filter:brightness(90%)}.form-check-input:focus{border-color:#86b7fe;outline:0;-webkit-box-shadow:0 0 0 .25rem rgba(13,110,253,.25);box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-check-input:checked{background-color:#0d6efd;border-color:#0d6efd}.form-check-input:checked[type=checkbox]{--bs-form-check-bg-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3 6-6'/%3E%3C/svg%3E")}.form-check-input:checked[type=radio]{--bs-form-check-bg-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='2' fill='%23fff'/%3E%3C/svg%3E")}.form-check-input[type=checkbox]:indeterminate{background-color:#0d6efd;border-color:#0d6efd;--bs-form-check-bg-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3E%3C/svg%3E")}.form-check-input:disabled{pointer-events:none;-webkit-filter:none;filter:none;opacity:.5}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{cursor:default;opacity:.5}.form-switch{padding-left:2.5em}.form-switch .form-check-input{--bs-form-switch-bg:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='rgba(0, 0, 0, 0.25)'/%3E%3C/svg%3E");width:2em;margin-left:-2.5em;background-image:var(--bs-form-switch-bg);background-position:0;border-radius:2em;-webkit-transition:background-position .15s ease-in-out;transition:background-position .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-switch .form-check-input{-webkit-transition:none;transition:none}}.form-switch .form-check-input:focus{--bs-form-switch-bg:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%2386b7fe'/%3E%3C/svg%3E")}.form-switch .form-check-input:checked{background-position:100%;--bs-form-switch-bg:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E")}.form-switch.form-check-reverse{padding-right:2.5em;padding-left:0}.form-switch.form-check-reverse .form-check-input{margin-right:-2.5em;margin-left:0}.form-check-inline{display:inline-block;margin-right:1rem}.btn-check{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.btn-check:disabled+.btn,.btn-check[disabled]+.btn{pointer-events:none;-webkit-filter:none;filter:none;opacity:.65}[data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus){--bs-form-switch-bg:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='rgba(255, 255, 255, 0.25)'/%3E%3C/svg%3E")}.form-range{width:100%;height:1.5rem;padding:0;background-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-range:focus{outline:0}.form-range:focus::-webkit-slider-thumb{-webkit-box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25);box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25)}.form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25)}.form-range::-moz-focus-outer{border:0}.form-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#0d6efd;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.form-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#b6d4fe}.form-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:var(--bs-tertiary-bg);border-color:transparent;border-radius:1rem}.form-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#0d6efd;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.form-range::-moz-range-thumb{-webkit-transition:none;transition:none}}.form-range::-moz-range-thumb:active{background-color:#b6d4fe}.form-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:var(--bs-tertiary-bg);border-color:transparent;border-radius:1rem}.form-range:disabled{pointer-events:none}.form-range:disabled::-webkit-slider-thumb{background-color:var(--bs-secondary-color)}.form-range:disabled::-moz-range-thumb{background-color:var(--bs-secondary-color)}.form-floating{position:relative}.form-floating>.form-control,.form-floating>.form-control-plaintext,.form-floating>.form-select{height:calc(3.5rem + var(--bs-border-width)*2);min-height:calc(3.5rem + var(--bs-border-width)*2);line-height:1.25}.form-floating>label{position:absolute;top:0;left:0;z-index:2;height:100%;padding:1rem .75rem;overflow:hidden;text-align:start;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;border:var(--bs-border-width) solid transparent;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transition:opacity .1s ease-in-out,-webkit-transform .1s ease-in-out;transition:opacity .1s ease-in-out,-webkit-transform .1s ease-in-out;transition:opacity .1s ease-in-out,transform .1s ease-in-out;transition:opacity .1s ease-in-out,transform .1s ease-in-out,-webkit-transform .1s ease-in-out}@media (prefers-reduced-motion:reduce){.form-floating>label{-webkit-transition:none;transition:none}}.form-floating>.form-control,.form-floating>.form-control-plaintext{padding:1rem .75rem}.form-floating>.form-control-plaintext::-webkit-input-placeholder,.form-floating>.form-control::-webkit-input-placeholder{color:transparent}.form-floating>.form-control-plaintext::-moz-placeholder,.form-floating>.form-control::-moz-placeholder{color:transparent}.form-floating>.form-control-plaintext::-ms-input-placeholder,.form-floating>.form-control::-ms-input-placeholder{color:transparent}.form-floating>.form-control-plaintext::placeholder,.form-floating>.form-control::placeholder{color:transparent}.form-floating>.form-control-plaintext:not(:-moz-placeholder-shown),.form-floating>.form-control:not(:-moz-placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control-plaintext:focus,.form-floating>.form-control-plaintext:not(:placeholder-shown),.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control-plaintext:-webkit-autofill,.form-floating>.form-control:-webkit-autofill{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-select{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:not(:-moz-placeholder-shown)~label{color:rgba(var(--bs-body-color-rgb),.65);transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.form-floating>.form-control-plaintext~label,.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label,.form-floating>.form-select~label{color:rgba(var(--bs-body-color-rgb),.65);-webkit-transform:scale(.85) translateY(-.5rem) translateX(.15rem);transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.form-floating>.form-control:not(:-moz-placeholder-shown)~label:after{position:absolute;inset:1rem .375rem;z-index:-1;height:1.5em;content:"";background-color:var(--bs-body-bg);border-radius:var(--bs-border-radius)}.form-floating>.form-control-plaintext~label:after,.form-floating>.form-control:focus~label:after,.form-floating>.form-control:not(:placeholder-shown)~label:after,.form-floating>.form-select~label:after{position:absolute;inset:1rem .375rem;z-index:-1;height:1.5em;content:"";background-color:var(--bs-body-bg);border-radius:var(--bs-border-radius)}.form-floating>.form-control:-webkit-autofill~label{color:rgba(var(--bs-body-color-rgb),.65);-webkit-transform:scale(.85) translateY(-.5rem) translateX(.15rem);transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.form-floating>.form-control-plaintext~label{border-left-width:0;border-bottom-width:var(--bs-border-width);border-right-width:0;border-top-width:var(--bs-border-width)}.form-floating>:disabled~label{color:#6c757d}.form-floating>:disabled~label:after{background-color:var(--bs-secondary-bg)}.input-group{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-floating,.input-group>.form-select{position:relative;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;width:1%;min-width:0}.input-group>.form-control:focus,.input-group>.form-floating:focus-within,.input-group>.form-select:focus{z-index:5}.input-group .btn{position:relative;z-index:2}.input-group .btn:focus{z-index:5}.input-group-text{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);text-align:center;white-space:nowrap;background-color:var(--bs-tertiary-bg);border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius)}.input-group-lg>.btn,.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}.input-group-sm>.btn,.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text{padding:.25rem .5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-right:3rem}.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4),.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-control,.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-select,.input-group.has-validation>:nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3),.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-control,.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-select,.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){margin-left:calc(var(--bs-border-width)*-1);border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.form-floating:not(:first-child)>.form-control,.input-group>.form-floating:not(:first-child)>.form-select{border-top-left-radius:0;border-bottom-left-radius:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:var(--bs-form-valid-color)}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:var(--bs-success);border-radius:var(--bs-border-radius)}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:var(--bs-form-valid-border-color);padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:var(--bs-form-valid-border-color);-webkit-box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.form-select.is-valid,.was-validated .form-select:valid{border-color:var(--bs-form-valid-border-color)}.form-select.is-valid:not([multiple]):not([size]),.form-select.is-valid:not([multiple])[size="1"],.was-validated .form-select:valid:not([multiple]):not([size]),.was-validated .form-select:valid:not([multiple])[size="1"]{--bs-form-select-bg-icon:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3E%3C/svg%3E");padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.form-select.is-valid:focus,.was-validated .form-select:valid:focus{border-color:var(--bs-form-valid-border-color);-webkit-box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25)}.form-control-color.is-valid,.was-validated .form-control-color:valid{width:calc(3.75rem + 1.5em)}.form-check-input.is-valid,.was-validated .form-check-input:valid{border-color:var(--bs-form-valid-border-color)}.form-check-input.is-valid:checked,.was-validated .form-check-input:valid:checked{background-color:var(--bs-form-valid-color)}.form-check-input.is-valid:focus,.was-validated .form-check-input:valid:focus{-webkit-box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:var(--bs-form-valid-color)}.form-check-inline .form-check-input~.valid-feedback{margin-left:.5em}.input-group>.form-control:not(:focus).is-valid,.input-group>.form-floating:not(:focus-within).is-valid,.input-group>.form-select:not(:focus).is-valid,.was-validated .input-group>.form-control:not(:focus):valid,.was-validated .input-group>.form-floating:not(:focus-within):valid,.was-validated .input-group>.form-select:not(:focus):valid{z-index:3}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:var(--bs-form-invalid-color)}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:var(--bs-danger);border-radius:var(--bs-border-radius)}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:var(--bs-form-invalid-border-color);padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545'%3E%3Ccircle cx='6' cy='6' r='4.5'/%3E%3Cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3E%3Ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:var(--bs-form-invalid-border-color);-webkit-box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.form-select.is-invalid,.was-validated .form-select:invalid{border-color:var(--bs-form-invalid-border-color)}.form-select.is-invalid:not([multiple]):not([size]),.form-select.is-invalid:not([multiple])[size="1"],.was-validated .form-select:invalid:not([multiple]):not([size]),.was-validated .form-select:invalid:not([multiple])[size="1"]{--bs-form-select-bg-icon:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545'%3E%3Ccircle cx='6' cy='6' r='4.5'/%3E%3Cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3E%3Ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3E%3C/svg%3E");padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.form-select.is-invalid:focus,.was-validated .form-select:invalid:focus{border-color:var(--bs-form-invalid-border-color);-webkit-box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25)}.form-control-color.is-invalid,.was-validated .form-control-color:invalid{width:calc(3.75rem + 1.5em)}.form-check-input.is-invalid,.was-validated .form-check-input:invalid{border-color:var(--bs-form-invalid-border-color)}.form-check-input.is-invalid:checked,.was-validated .form-check-input:invalid:checked{background-color:var(--bs-form-invalid-color)}.form-check-input.is-invalid:focus,.was-validated .form-check-input:invalid:focus{-webkit-box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:var(--bs-form-invalid-color)}.form-check-inline .form-check-input~.invalid-feedback{margin-left:.5em}.input-group>.form-control:not(:focus).is-invalid,.input-group>.form-floating:not(:focus-within).is-invalid,.input-group>.form-select:not(:focus).is-invalid,.was-validated .input-group>.form-control:not(:focus):invalid,.was-validated .input-group>.form-floating:not(:focus-within):invalid,.was-validated .input-group>.form-select:not(:focus):invalid{z-index:4}.btn{--bs-btn-padding-x:0.75rem;--bs-btn-padding-y:0.375rem;--bs-btn-font-size:1rem;--bs-btn-font-weight:400;--bs-btn-line-height:1.5;--bs-btn-color:var(--bs-body-color);--bs-btn-bg:transparent;--bs-btn-border-width:var(--bs-border-width);--bs-btn-border-color:transparent;--bs-btn-border-radius:var(--bs-border-radius);--bs-btn-hover-border-color:transparent;--bs-btn-box-shadow:inset 0 1px 0 hsla(0,0%,100%,0.15),0 1px 1px rgba(0,0,0,0.075);--bs-btn-disabled-opacity:0.65;--bs-btn-focus-box-shadow:0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb),.5);display:inline-block;padding:var(--bs-btn-padding-y) var(--bs-btn-padding-x);font-family:var(--bs-btn-font-family);font-size:var(--bs-btn-font-size);font-weight:var(--bs-btn-font-weight);line-height:var(--bs-btn-line-height);color:var(--bs-btn-color);text-align:center;text-decoration:none;vertical-align:middle;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border:var(--bs-btn-border-width) solid var(--bs-btn-border-color);border-radius:var(--bs-btn-border-radius);background-color:var(--bs-btn-bg);-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{-webkit-transition:none;transition:none}}.btn:hover{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color)}.btn-check+.btn:hover{color:var(--bs-btn-color);background-color:var(--bs-btn-bg);border-color:var(--bs-btn-border-color)}.btn:focus-visible{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg)}.btn-check:focus-visible+.btn,.btn:focus-visible{border-color:var(--bs-btn-hover-border-color);outline:0;-webkit-box-shadow:var(--bs-btn-focus-box-shadow);box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:checked+.btn,.btn.active,.btn.show,.btn:first-child:active,:not(.btn-check)+.btn:active{color:var(--bs-btn-active-color);background-color:var(--bs-btn-active-bg);border-color:var(--bs-btn-active-border-color)}.btn-check:checked+.btn:focus-visible,.btn.active:focus-visible,.btn.show:focus-visible,.btn:first-child:active:focus-visible,:not(.btn-check)+.btn:active:focus-visible{-webkit-box-shadow:var(--bs-btn-focus-box-shadow);box-shadow:var(--bs-btn-focus-box-shadow)}.btn.disabled,.btn:disabled,fieldset:disabled .btn{color:var(--bs-btn-disabled-color);pointer-events:none;background-color:var(--bs-btn-disabled-bg);border-color:var(--bs-btn-disabled-border-color);opacity:var(--bs-btn-disabled-opacity)}.btn-primary{--bs-btn-color:#fff;--bs-btn-bg:#0d6efd;--bs-btn-border-color:#0d6efd;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#0b5ed7;--bs-btn-hover-border-color:#0a58ca;--bs-btn-focus-shadow-rgb:49,132,253;--bs-btn-active-color:#fff;--bs-btn-active-bg:#0a58ca;--bs-btn-active-border-color:#0a53be;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#0d6efd;--bs-btn-disabled-border-color:#0d6efd}.btn-secondary{--bs-btn-color:#fff;--bs-btn-bg:#6c757d;--bs-btn-border-color:#6c757d;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#5c636a;--bs-btn-hover-border-color:#565e64;--bs-btn-focus-shadow-rgb:130,138,145;--bs-btn-active-color:#fff;--bs-btn-active-bg:#565e64;--bs-btn-active-border-color:#51585e;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#6c757d;--bs-btn-disabled-border-color:#6c757d}.btn-success{--bs-btn-color:#fff;--bs-btn-bg:#198754;--bs-btn-border-color:#198754;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#157347;--bs-btn-hover-border-color:#146c43;--bs-btn-focus-shadow-rgb:60,153,110;--bs-btn-active-color:#fff;--bs-btn-active-bg:#146c43;--bs-btn-active-border-color:#13653f;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#198754;--bs-btn-disabled-border-color:#198754}.btn-info{--bs-btn-color:#000;--bs-btn-bg:#0dcaf0;--bs-btn-border-color:#0dcaf0;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#31d2f2;--bs-btn-hover-border-color:#25cff2;--bs-btn-focus-shadow-rgb:11,172,204;--bs-btn-active-color:#000;--bs-btn-active-bg:#3dd5f3;--bs-btn-active-border-color:#25cff2;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#000;--bs-btn-disabled-bg:#0dcaf0;--bs-btn-disabled-border-color:#0dcaf0}.btn-warning{--bs-btn-color:#000;--bs-btn-bg:#ffc107;--bs-btn-border-color:#ffc107;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#ffca2c;--bs-btn-hover-border-color:#ffc720;--bs-btn-focus-shadow-rgb:217,164,6;--bs-btn-active-color:#000;--bs-btn-active-bg:#ffcd39;--bs-btn-active-border-color:#ffc720;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#000;--bs-btn-disabled-bg:#ffc107;--bs-btn-disabled-border-color:#ffc107}.btn-danger{--bs-btn-color:#fff;--bs-btn-bg:#dc3545;--bs-btn-border-color:#dc3545;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#bb2d3b;--bs-btn-hover-border-color:#b02a37;--bs-btn-focus-shadow-rgb:225,83,97;--bs-btn-active-color:#fff;--bs-btn-active-bg:#b02a37;--bs-btn-active-border-color:#a52834;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#dc3545;--bs-btn-disabled-border-color:#dc3545}.btn-light{--bs-btn-color:#000;--bs-btn-bg:#f8f9fa;--bs-btn-border-color:#f8f9fa;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#d3d4d5;--bs-btn-hover-border-color:#c6c7c8;--bs-btn-focus-shadow-rgb:211,212,213;--bs-btn-active-color:#000;--bs-btn-active-bg:#c6c7c8;--bs-btn-active-border-color:#babbbc;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#000;--bs-btn-disabled-bg:#f8f9fa;--bs-btn-disabled-border-color:#f8f9fa}.btn-dark{--bs-btn-color:#fff;--bs-btn-bg:#212529;--bs-btn-border-color:#212529;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#424649;--bs-btn-hover-border-color:#373b3e;--bs-btn-focus-shadow-rgb:66,70,73;--bs-btn-active-color:#fff;--bs-btn-active-bg:#4d5154;--bs-btn-active-border-color:#373b3e;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#212529;--bs-btn-disabled-border-color:#212529}.btn-outline-primary{--bs-btn-color:#0d6efd;--bs-btn-border-color:#0d6efd;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#0d6efd;--bs-btn-hover-border-color:#0d6efd;--bs-btn-focus-shadow-rgb:13,110,253;--bs-btn-active-color:#fff;--bs-btn-active-bg:#0d6efd;--bs-btn-active-border-color:#0d6efd;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#0d6efd;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#0d6efd;--bs-gradient:none}.btn-outline-secondary{--bs-btn-color:#6c757d;--bs-btn-border-color:#6c757d;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#6c757d;--bs-btn-hover-border-color:#6c757d;--bs-btn-focus-shadow-rgb:108,117,125;--bs-btn-active-color:#fff;--bs-btn-active-bg:#6c757d;--bs-btn-active-border-color:#6c757d;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#6c757d;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#6c757d;--bs-gradient:none}.btn-outline-success{--bs-btn-color:#198754;--bs-btn-border-color:#198754;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#198754;--bs-btn-hover-border-color:#198754;--bs-btn-focus-shadow-rgb:25,135,84;--bs-btn-active-color:#fff;--bs-btn-active-bg:#198754;--bs-btn-active-border-color:#198754;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#198754;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#198754;--bs-gradient:none}.btn-outline-info{--bs-btn-color:#0dcaf0;--bs-btn-border-color:#0dcaf0;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#0dcaf0;--bs-btn-hover-border-color:#0dcaf0;--bs-btn-focus-shadow-rgb:13,202,240;--bs-btn-active-color:#000;--bs-btn-active-bg:#0dcaf0;--bs-btn-active-border-color:#0dcaf0;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#0dcaf0;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#0dcaf0;--bs-gradient:none}.btn-outline-warning{--bs-btn-color:#ffc107;--bs-btn-border-color:#ffc107;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#ffc107;--bs-btn-hover-border-color:#ffc107;--bs-btn-focus-shadow-rgb:255,193,7;--bs-btn-active-color:#000;--bs-btn-active-bg:#ffc107;--bs-btn-active-border-color:#ffc107;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#ffc107;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#ffc107;--bs-gradient:none}.btn-outline-danger{--bs-btn-color:#dc3545;--bs-btn-border-color:#dc3545;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#dc3545;--bs-btn-hover-border-color:#dc3545;--bs-btn-focus-shadow-rgb:220,53,69;--bs-btn-active-color:#fff;--bs-btn-active-bg:#dc3545;--bs-btn-active-border-color:#dc3545;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#dc3545;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#dc3545;--bs-gradient:none}.btn-outline-light{--bs-btn-color:#f8f9fa;--bs-btn-border-color:#f8f9fa;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#f8f9fa;--bs-btn-hover-border-color:#f8f9fa;--bs-btn-focus-shadow-rgb:248,249,250;--bs-btn-active-color:#000;--bs-btn-active-bg:#f8f9fa;--bs-btn-active-border-color:#f8f9fa;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#f8f9fa;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#f8f9fa;--bs-gradient:none}.btn-outline-dark{--bs-btn-color:#212529;--bs-btn-border-color:#212529;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#212529;--bs-btn-hover-border-color:#212529;--bs-btn-focus-shadow-rgb:33,37,41;--bs-btn-active-color:#fff;--bs-btn-active-bg:#212529;--bs-btn-active-border-color:#212529;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#212529;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#212529;--bs-gradient:none}.btn-link{--bs-btn-font-weight:400;--bs-btn-color:var(--bs-link-color);--bs-btn-bg:transparent;--bs-btn-border-color:transparent;--bs-btn-hover-color:var(--bs-link-hover-color);--bs-btn-hover-border-color:transparent;--bs-btn-active-color:var(--bs-link-hover-color);--bs-btn-active-border-color:transparent;--bs-btn-disabled-color:#6c757d;--bs-btn-disabled-border-color:transparent;--bs-btn-box-shadow:0 0 0 #000;--bs-btn-focus-shadow-rgb:49,132,253;text-decoration:underline}.btn-link:focus-visible{color:var(--bs-btn-color)}.btn-link:hover{color:var(--bs-btn-hover-color)}.btn-group-lg>.btn,.btn-lg{--bs-btn-padding-y:0.5rem;--bs-btn-padding-x:1rem;--bs-btn-font-size:1.25rem;--bs-btn-border-radius:var(--bs-border-radius-lg)}.btn-group-sm>.btn,.btn-sm{--bs-btn-padding-y:0.25rem;--bs-btn-padding-x:0.5rem;--bs-btn-font-size:0.875rem;--bs-btn-border-radius:var(--bs-border-radius-sm)}.fade{-webkit-transition:opacity .15s linear;transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{-webkit-transition:none;transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden;-webkit-transition:height .35s ease;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{-webkit-transition:none;transition:none}}.collapsing.collapse-horizontal{width:0;height:auto;-webkit-transition:width .35s ease;transition:width .35s ease}@media (prefers-reduced-motion:reduce){.collapsing.collapse-horizontal{-webkit-transition:none;transition:none}}.dropdown,.dropdown-center,.dropend,.dropstart,.dropup,.dropup-center{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty:after{margin-left:0}.dropdown-menu{--bs-dropdown-zindex:1000;--bs-dropdown-min-width:10rem;--bs-dropdown-padding-x:0;--bs-dropdown-padding-y:0.5rem;--bs-dropdown-spacer:0.125rem;--bs-dropdown-font-size:1rem;--bs-dropdown-color:var(--bs-body-color);--bs-dropdown-bg:var(--bs-body-bg);--bs-dropdown-border-color:var(--bs-border-color-translucent);--bs-dropdown-border-radius:var(--bs-border-radius);--bs-dropdown-border-width:var(--bs-border-width);--bs-dropdown-inner-border-radius:calc(var(--bs-border-radius) - var(--bs-border-width));--bs-dropdown-divider-bg:var(--bs-border-color-translucent);--bs-dropdown-divider-margin-y:0.5rem;--bs-dropdown-box-shadow:0 0.5rem 1rem rgba(0,0,0,0.15);--bs-dropdown-link-color:var(--bs-body-color);--bs-dropdown-link-hover-color:var(--bs-body-color);--bs-dropdown-link-hover-bg:var(--bs-tertiary-bg);--bs-dropdown-link-active-color:#fff;--bs-dropdown-link-active-bg:#0d6efd;--bs-dropdown-link-disabled-color:var(--bs-tertiary-color);--bs-dropdown-item-padding-x:1rem;--bs-dropdown-item-padding-y:0.25rem;--bs-dropdown-header-color:#6c757d;--bs-dropdown-header-padding-x:1rem;--bs-dropdown-header-padding-y:0.5rem;position:absolute;z-index:var(--bs-dropdown-zindex);display:none;min-width:var(--bs-dropdown-min-width);padding:var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);margin:0;font-size:var(--bs-dropdown-font-size);color:var(--bs-dropdown-color);text-align:left;list-style:none;background-color:var(--bs-dropdown-bg);background-clip:padding-box;border:var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);border-radius:var(--bs-dropdown-border-radius)}.dropdown-menu[data-bs-popper]{top:100%;left:0;margin-top:var(--bs-dropdown-spacer)}.dropdown-menu-start{--bs-position:start}.dropdown-menu-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-end{--bs-position:end}.dropdown-menu-end[data-bs-popper]{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-start{--bs-position:start}.dropdown-menu-sm-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-sm-end{--bs-position:end}.dropdown-menu-sm-end[data-bs-popper]{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-start{--bs-position:start}.dropdown-menu-md-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-md-end{--bs-position:end}.dropdown-menu-md-end[data-bs-popper]{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-start{--bs-position:start}.dropdown-menu-lg-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-lg-end{--bs-position:end}.dropdown-menu-lg-end[data-bs-popper]{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-start{--bs-position:start}.dropdown-menu-xl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xl-end{--bs-position:end}.dropdown-menu-xl-end[data-bs-popper]{right:0;left:auto}}@media (min-width:1400px){.dropdown-menu-xxl-start{--bs-position:start}.dropdown-menu-xxl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xxl-end{--bs-position:end}.dropdown-menu-xxl-end[data-bs-popper]{right:0;left:auto}}.dropup .dropdown-menu[data-bs-popper]{top:auto;bottom:100%;margin-top:0;margin-bottom:var(--bs-dropdown-spacer)}.dropup .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty:after{margin-left:0}.dropend .dropdown-menu[data-bs-popper]{top:0;right:auto;left:100%;margin-top:0;margin-left:var(--bs-dropdown-spacer)}.dropend .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropend .dropdown-toggle:empty:after{margin-left:0}.dropend .dropdown-toggle:after{vertical-align:0}.dropstart .dropdown-menu[data-bs-popper]{top:0;right:100%;left:auto;margin-top:0;margin-right:var(--bs-dropdown-spacer)}.dropstart .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";display:none}.dropstart .dropdown-toggle:before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropstart .dropdown-toggle:empty:after{margin-left:0}.dropstart .dropdown-toggle:before{vertical-align:0}.dropdown-divider{height:0;margin:var(--bs-dropdown-divider-margin-y) 0;overflow:hidden;border-top:1px solid var(--bs-dropdown-divider-bg);opacity:1}.dropdown-item{display:block;width:100%;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);clear:both;font-weight:400;color:var(--bs-dropdown-link-color);text-align:inherit;text-decoration:none;white-space:nowrap;background-color:transparent;border:0;border-radius:var(--bs-dropdown-item-border-radius,0)}.dropdown-item:focus,.dropdown-item:hover{color:var(--bs-dropdown-link-hover-color);background-color:var(--bs-dropdown-link-hover-bg)}.dropdown-item.active,.dropdown-item:active{color:var(--bs-dropdown-link-active-color);text-decoration:none;background-color:var(--bs-dropdown-link-active-bg)}.dropdown-item.disabled,.dropdown-item:disabled{color:var(--bs-dropdown-link-disabled-color);pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);margin-bottom:0;font-size:.875rem;color:var(--bs-dropdown-header-color);white-space:nowrap}.dropdown-item-text{display:block;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);color:var(--bs-dropdown-link-color)}.dropdown-menu-dark{--bs-dropdown-color:#dee2e6;--bs-dropdown-bg:#343a40;--bs-dropdown-border-color:var(--bs-border-color-translucent);--bs-dropdown-link-color:#dee2e6;--bs-dropdown-link-hover-color:#fff;--bs-dropdown-divider-bg:var(--bs-border-color-translucent);--bs-dropdown-link-hover-bg:hsla(0,0%,100%,0.15);--bs-dropdown-link-active-color:#fff;--bs-dropdown-link-active-bg:#0d6efd;--bs-dropdown-link-disabled-color:#adb5bd;--bs-dropdown-header-color:#adb5bd}.btn-group,.btn-group-vertical{position:relative;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.btn-group-vertical>.btn-check:checked+.btn,.btn-group-vertical>.btn-check:focus+.btn,.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn-check:checked+.btn,.btn-group>.btn-check:focus+.btn,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group{border-radius:var(--bs-border-radius)}.btn-group>.btn-group:not(:first-child),.btn-group>:not(.btn-check:first-child)+.btn{margin-left:calc(var(--bs-border-width)*-1)}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn.dropdown-toggle-split:first-child,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:nth-child(n+3),.btn-group>:not(.btn-check)+.btn{border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split:after,.dropend .dropdown-toggle-split:after,.dropup .dropdown-toggle-split:after{margin-left:0}.dropstart .dropdown-toggle-split:before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:calc(var(--bs-border-width)*-1)}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn~.btn{border-top-left-radius:0;border-top-right-radius:0}.nav{--bs-nav-link-padding-x:1rem;--bs-nav-link-padding-y:0.5rem;--bs-nav-link-color:var(--bs-link-color);--bs-nav-link-hover-color:var(--bs-link-hover-color);--bs-nav-link-disabled-color:var(--bs-secondary-color);display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);font-size:var(--bs-nav-link-font-size);font-weight:var(--bs-nav-link-font-weight);color:var(--bs-nav-link-color);text-decoration:none;background:none;border:0;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}@media (prefers-reduced-motion:reduce){.nav-link{-webkit-transition:none;transition:none}}.nav-link:focus,.nav-link:hover{color:var(--bs-nav-link-hover-color)}.nav-link:focus-visible{outline:0;-webkit-box-shadow:0 0 0 .25rem rgba(13,110,253,.25);box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.nav-link.disabled{color:var(--bs-nav-link-disabled-color);pointer-events:none;cursor:default}.nav-tabs{--bs-nav-tabs-border-width:var(--bs-border-width);--bs-nav-tabs-border-color:var(--bs-border-color);--bs-nav-tabs-border-radius:var(--bs-border-radius);--bs-nav-tabs-link-hover-border-color:var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);--bs-nav-tabs-link-active-color:var(--bs-emphasis-color);--bs-nav-tabs-link-active-bg:var(--bs-body-bg);--bs-nav-tabs-link-active-border-color:var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);border-bottom:var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color)}.nav-tabs .nav-link{margin-bottom:calc(var(--bs-nav-tabs-border-width)*-1);border:var(--bs-nav-tabs-border-width) solid transparent;border-top-left-radius:var(--bs-nav-tabs-border-radius);border-top-right-radius:var(--bs-nav-tabs-border-radius)}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{isolation:isolate;border-color:var(--bs-nav-tabs-link-hover-border-color)}.nav-tabs .nav-link.disabled,.nav-tabs .nav-link:disabled{color:var(--bs-nav-link-disabled-color);background-color:transparent;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:var(--bs-nav-tabs-link-active-color);background-color:var(--bs-nav-tabs-link-active-bg);border-color:var(--bs-nav-tabs-link-active-border-color)}.nav-tabs .dropdown-menu{margin-top:calc(var(--bs-nav-tabs-border-width)*-1);border-top-left-radius:0;border-top-right-radius:0}.nav-pills{--bs-nav-pills-border-radius:var(--bs-border-radius);--bs-nav-pills-link-active-color:#fff;--bs-nav-pills-link-active-bg:#0d6efd}.nav-pills .nav-link{border-radius:var(--bs-nav-pills-border-radius)}.nav-pills .nav-link:disabled{color:var(--bs-nav-link-disabled-color);background-color:transparent;border-color:transparent}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:var(--bs-nav-pills-link-active-color);background-color:var(--bs-nav-pills-link-active-bg)}.nav-underline{--bs-nav-underline-gap:1rem;--bs-nav-underline-border-width:0.125rem;--bs-nav-underline-link-active-color:var(--bs-emphasis-color);gap:var(--bs-nav-underline-gap)}.nav-underline .nav-link{padding-right:0;padding-left:0;border-bottom:var(--bs-nav-underline-border-width) solid transparent}.nav-underline .nav-link:focus,.nav-underline .nav-link:hover{border-bottom-color:currentcolor}.nav-underline .nav-link.active,.nav-underline .show>.nav-link{font-weight:700;color:var(--bs-nav-underline-link-active-color);border-bottom-color:currentcolor}.nav-fill .nav-item,.nav-fill>.nav-link{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;text-align:center}.nav-justified .nav-item,.nav-justified>.nav-link{-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;text-align:center}.nav-fill .nav-item .nav-link,.nav-justified .nav-item .nav-link{width:100%}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{--bs-navbar-padding-x:0;--bs-navbar-padding-y:0.5rem;--bs-navbar-color:rgba(var(--bs-emphasis-color-rgb),0.65);--bs-navbar-hover-color:rgba(var(--bs-emphasis-color-rgb),0.8);--bs-navbar-disabled-color:rgba(var(--bs-emphasis-color-rgb),0.3);--bs-navbar-active-color:rgba(var(--bs-emphasis-color-rgb),1);--bs-navbar-brand-padding-y:0.3125rem;--bs-navbar-brand-margin-end:1rem;--bs-navbar-brand-font-size:1.25rem;--bs-navbar-brand-color:rgba(var(--bs-emphasis-color-rgb),1);--bs-navbar-brand-hover-color:rgba(var(--bs-emphasis-color-rgb),1);--bs-navbar-nav-link-padding-x:0.5rem;--bs-navbar-toggler-padding-y:0.25rem;--bs-navbar-toggler-padding-x:0.75rem;--bs-navbar-toggler-font-size:1.25rem;--bs-navbar-toggler-icon-bg:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='rgba(33, 37, 41, 0.75)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");--bs-navbar-toggler-border-color:rgba(var(--bs-emphasis-color-rgb),0.15);--bs-navbar-toggler-border-radius:var(--bs-border-radius);--bs-navbar-toggler-focus-width:0.25rem;--bs-navbar-toggler-transition:box-shadow 0.15s ease-in-out;position:relative;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:var(--bs-navbar-padding-y) var(--bs-navbar-padding-x)}.navbar,.navbar>.container,.navbar>.container-fluid,.navbar>.container-lg,.navbar>.container-md,.navbar>.container-sm,.navbar>.container-xl,.navbar>.container-xxl{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.navbar>.container,.navbar>.container-fluid,.navbar>.container-lg,.navbar>.container-md,.navbar>.container-sm,.navbar>.container-xl,.navbar>.container-xxl{-ms-flex-wrap:inherit;flex-wrap:inherit}.navbar-brand{padding-top:var(--bs-navbar-brand-padding-y);padding-bottom:var(--bs-navbar-brand-padding-y);margin-right:var(--bs-navbar-brand-margin-end);font-size:var(--bs-navbar-brand-font-size);color:var(--bs-navbar-brand-color);text-decoration:none;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{color:var(--bs-navbar-brand-hover-color)}.navbar-nav{--bs-nav-link-padding-x:0;--bs-nav-link-padding-y:0.5rem;--bs-nav-link-color:var(--bs-navbar-color);--bs-nav-link-hover-color:var(--bs-navbar-hover-color);--bs-nav-link-disabled-color:var(--bs-navbar-disabled-color);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link.active,.navbar-nav .nav-link.show{color:var(--bs-navbar-active-color)}.navbar-nav .dropdown-menu{position:static}.navbar-text{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-navbar-color)}.navbar-text a,.navbar-text a:focus,.navbar-text a:hover{color:var(--bs-navbar-active-color)}.navbar-collapse{-ms-flex-preferred-size:100%;flex-basis:100%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.navbar-toggler{padding:var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);font-size:var(--bs-navbar-toggler-font-size);line-height:1;color:var(--bs-navbar-color);background-color:transparent;border:var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);border-radius:var(--bs-navbar-toggler-border-radius);-webkit-transition:var(--bs-navbar-toggler-transition);transition:var(--bs-navbar-toggler-transition)}@media (prefers-reduced-motion:reduce){.navbar-toggler{-webkit-transition:none;transition:none}}.navbar-toggler:hover{text-decoration:none}.navbar-toggler:focus{text-decoration:none;outline:0;-webkit-box-shadow:0 0 0 var(--bs-navbar-toggler-focus-width);box-shadow:0 0 0 var(--bs-navbar-toggler-focus-width)}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;background-image:var(--bs-navbar-toggler-icon-bg);background-repeat:no-repeat;background-position:50%;background-size:100%}.navbar-nav-scroll{max-height:var(--bs-scroll-height,75vh);overflow-y:auto}@media (min-width:576px){.navbar-expand-sm{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-sm .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}.navbar-expand-sm .offcanvas{position:static;z-index:auto;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;-webkit-transform:none!important;transform:none!important;-webkit-transition:none;transition:none}.navbar-expand-sm .offcanvas .offcanvas-header{display:none}.navbar-expand-sm .offcanvas .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:768px){.navbar-expand-md{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-md .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}.navbar-expand-md .offcanvas{position:static;z-index:auto;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;-webkit-transform:none!important;transform:none!important;-webkit-transition:none;transition:none}.navbar-expand-md .offcanvas .offcanvas-header{display:none}.navbar-expand-md .offcanvas .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:992px){.navbar-expand-lg{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-lg .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-lg .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}.navbar-expand-lg .offcanvas{position:static;z-index:auto;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;-webkit-transform:none!important;transform:none!important;-webkit-transition:none;transition:none}.navbar-expand-lg .offcanvas .offcanvas-header{display:none}.navbar-expand-lg .offcanvas .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:1200px){.navbar-expand-xl{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-xl .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}.navbar-expand-xl .offcanvas{position:static;z-index:auto;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;-webkit-transform:none!important;transform:none!important;-webkit-transition:none;transition:none}.navbar-expand-xl .offcanvas .offcanvas-header{display:none}.navbar-expand-xl .offcanvas .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:1400px){.navbar-expand-xxl{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-xxl .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand-xxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxl .navbar-collapse{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-xxl .navbar-toggler{display:none}.navbar-expand-xxl .offcanvas{position:static;z-index:auto;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;-webkit-transform:none!important;transform:none!important;-webkit-transition:none;transition:none}.navbar-expand-xxl .offcanvas .offcanvas-header{display:none}.navbar-expand-xxl .offcanvas .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible}}.navbar-expand{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-expand .offcanvas{position:static;z-index:auto;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;-webkit-transform:none!important;transform:none!important;-webkit-transition:none;transition:none}.navbar-expand .offcanvas .offcanvas-header{display:none}.navbar-expand .offcanvas .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible}.navbar-dark,.navbar[data-bs-theme=dark]{--bs-navbar-color:hsla(0,0%,100%,0.55);--bs-navbar-hover-color:hsla(0,0%,100%,0.75);--bs-navbar-disabled-color:hsla(0,0%,100%,0.25);--bs-navbar-active-color:#fff;--bs-navbar-brand-color:#fff;--bs-navbar-brand-hover-color:#fff;--bs-navbar-toggler-border-color:hsla(0,0%,100%,0.1)}.navbar-dark,.navbar[data-bs-theme=dark],[data-bs-theme=dark] .navbar-toggler-icon{--bs-navbar-toggler-icon-bg:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='rgba(255, 255, 255, 0.55)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.card{--bs-card-spacer-y:1rem;--bs-card-spacer-x:1rem;--bs-card-title-spacer-y:0.5rem;--bs-card-border-width:var(--bs-border-width);--bs-card-border-color:var(--bs-border-color-translucent);--bs-card-border-radius:var(--bs-border-radius);--bs-card-inner-border-radius:calc(var(--bs-border-radius) - var(--bs-border-width));--bs-card-cap-padding-y:0.5rem;--bs-card-cap-padding-x:1rem;--bs-card-cap-bg:rgba(var(--bs-body-color-rgb),0.03);--bs-card-bg:var(--bs-body-bg);--bs-card-img-overlay-padding:1rem;--bs-card-group-margin:0.75rem;position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;min-width:0;height:var(--bs-card-height);color:var(--bs-body-color);word-wrap:break-word;background-color:var(--bs-card-bg);background-clip:border-box;border:var(--bs-card-border-width) solid var(--bs-card-border-color);border-radius:var(--bs-card-border-radius)}.card>hr{margin-right:0;margin-left:0}.card>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child{border-top-width:0;border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card>.list-group:last-child{border-bottom-width:0;border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;padding:var(--bs-card-spacer-y) var(--bs-card-spacer-x);color:var(--bs-card-color)}.card-title{margin-bottom:var(--bs-card-title-spacer-y);color:var(--bs-card-title-color)}.card-subtitle{margin-top:calc(var(--bs-card-title-spacer-y)*-0.5);color:var(--bs-card-subtitle-color)}.card-subtitle,.card-text:last-child{margin-bottom:0}.card-link+.card-link{margin-left:var(--bs-card-spacer-x)}.card-header{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);margin-bottom:0;color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-bottom:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-header:first-child{border-radius:var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0}.card-footer{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-top:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-footer:last-child{border-radius:0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius)}.card-header-tabs{margin-right:calc(var(--bs-card-cap-padding-x)*-0.5);margin-bottom:calc(var(--bs-card-cap-padding-y)*-1);margin-left:calc(var(--bs-card-cap-padding-x)*-0.5);border-bottom:0}.card-header-tabs .nav-link.active{background-color:var(--bs-card-bg);border-bottom-color:var(--bs-card-bg)}.card-header-pills{margin-right:calc(var(--bs-card-cap-padding-x)*-0.5);margin-left:calc(var(--bs-card-cap-padding-x)*-0.5)}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:var(--bs-card-img-overlay-padding);border-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-bottom,.card-img-top{width:100%}.card-img,.card-img-top{border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-bottom{border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card-group>.card{margin-bottom:var(--bs-card-group-margin)}@media (min-width:576px){.card-group{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap}.card-group>.card{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.accordion{--bs-accordion-color:var(--bs-body-color);--bs-accordion-bg:var(--bs-body-bg);--bs-accordion-transition:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out,border-radius 0.15s ease;--bs-accordion-border-color:var(--bs-border-color);--bs-accordion-border-width:var(--bs-border-width);--bs-accordion-border-radius:var(--bs-border-radius);--bs-accordion-inner-border-radius:calc(var(--bs-border-radius) - var(--bs-border-width));--bs-accordion-btn-padding-x:1.25rem;--bs-accordion-btn-padding-y:1rem;--bs-accordion-btn-color:var(--bs-body-color);--bs-accordion-btn-bg:var(--bs-accordion-bg);--bs-accordion-btn-icon:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 01.708 0L8 10.293l5.646-5.647a.5.5 0 01.708.708l-6 6a.5.5 0 01-.708 0l-6-6a.5.5 0 010-.708z'/%3E%3C/svg%3E");--bs-accordion-btn-icon-width:1.25rem;--bs-accordion-btn-icon-transform:rotate(-180deg);--bs-accordion-btn-icon-transition:transform 0.2s ease-in-out;--bs-accordion-btn-active-icon:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23052c65'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 01.708 0L8 10.293l5.646-5.647a.5.5 0 01.708.708l-6 6a.5.5 0 01-.708 0l-6-6a.5.5 0 010-.708z'/%3E%3C/svg%3E");--bs-accordion-btn-focus-border-color:#86b7fe;--bs-accordion-btn-focus-box-shadow:0 0 0 0.25rem rgba(13,110,253,0.25);--bs-accordion-body-padding-x:1.25rem;--bs-accordion-body-padding-y:1rem;--bs-accordion-active-color:var(--bs-primary-text-emphasis);--bs-accordion-active-bg:var(--bs-primary-bg-subtle)}.accordion-button{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;padding:var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);font-size:1rem;color:var(--bs-accordion-btn-color);text-align:left;background-color:var(--bs-accordion-btn-bg);border:0;border-radius:0;overflow-anchor:none;-webkit-transition:var(--bs-accordion-transition);transition:var(--bs-accordion-transition)}@media (prefers-reduced-motion:reduce){.accordion-button{-webkit-transition:none;transition:none}}.accordion-button:not(.collapsed){color:var(--bs-accordion-active-color);background-color:var(--bs-accordion-active-bg);-webkit-box-shadow:inset 0 calc(var(--bs-accordion-border-width)*-1) 0 var(--bs-accordion-border-color);box-shadow:inset 0 calc(var(--bs-accordion-border-width)*-1) 0 var(--bs-accordion-border-color)}.accordion-button:not(.collapsed):after{background-image:var(--bs-accordion-btn-active-icon);-webkit-transform:var(--bs-accordion-btn-icon-transform);transform:var(--bs-accordion-btn-icon-transform)}.accordion-button:after{-ms-flex-negative:0;flex-shrink:0;width:var(--bs-accordion-btn-icon-width);height:var(--bs-accordion-btn-icon-width);margin-left:auto;content:"";background-image:var(--bs-accordion-btn-icon);background-repeat:no-repeat;background-size:var(--bs-accordion-btn-icon-width);-webkit-transition:var(--bs-accordion-btn-icon-transition);transition:var(--bs-accordion-btn-icon-transition)}@media (prefers-reduced-motion:reduce){.accordion-button:after{-webkit-transition:none;transition:none}}.accordion-button:hover{z-index:2}.accordion-button:focus{z-index:3;border-color:var(--bs-accordion-btn-focus-border-color);outline:0;-webkit-box-shadow:var(--bs-accordion-btn-focus-box-shadow);box-shadow:var(--bs-accordion-btn-focus-box-shadow)}.accordion-header{margin-bottom:0}.accordion-item{color:var(--bs-accordion-color);background-color:var(--bs-accordion-bg);border:var(--bs-accordion-border-width) solid var(--bs-accordion-border-color)}.accordion-item:first-of-type{border-top-left-radius:var(--bs-accordion-border-radius);border-top-right-radius:var(--bs-accordion-border-radius)}.accordion-item:first-of-type .accordion-button{border-top-left-radius:var(--bs-accordion-inner-border-radius);border-top-right-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:not(:first-of-type){border-top:0}.accordion-item:last-of-type{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-item:last-of-type .accordion-button.collapsed{border-bottom-right-radius:var(--bs-accordion-inner-border-radius);border-bottom-left-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:last-of-type .accordion-collapse{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-body{padding:var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x)}.accordion-flush .accordion-collapse{border-width:0}.accordion-flush .accordion-item{border-right:0;border-left:0;border-radius:0}.accordion-flush .accordion-item:first-child{border-top:0}.accordion-flush .accordion-item:last-child{border-bottom:0}.accordion-flush .accordion-item .accordion-button,.accordion-flush .accordion-item .accordion-button.collapsed{border-radius:0}[data-bs-theme=dark] .accordion-button:after{--bs-accordion-btn-icon:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 01.708 0L8 10.293l5.646-5.647a.5.5 0 01.708.708l-6 6a.5.5 0 01-.708 0l-6-6a.5.5 0 010-.708z'/%3E%3C/svg%3E");--bs-accordion-btn-active-icon:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 01.708 0L8 10.293l5.646-5.647a.5.5 0 01.708.708l-6 6a.5.5 0 01-.708 0l-6-6a.5.5 0 010-.708z'/%3E%3C/svg%3E")}.breadcrumb{--bs-breadcrumb-padding-x:0;--bs-breadcrumb-padding-y:0;--bs-breadcrumb-margin-bottom:1rem;--bs-breadcrumb-divider-color:var(--bs-secondary-color);--bs-breadcrumb-item-padding-x:0.5rem;--bs-breadcrumb-item-active-color:var(--bs-secondary-color);display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);margin-bottom:var(--bs-breadcrumb-margin-bottom);font-size:var(--bs-breadcrumb-font-size);list-style:none;background-color:var(--bs-breadcrumb-bg);border-radius:var(--bs-breadcrumb-border-radius)}.breadcrumb-item+.breadcrumb-item{padding-left:var(--bs-breadcrumb-item-padding-x)}.breadcrumb-item+.breadcrumb-item:before{float:left;padding-right:var(--bs-breadcrumb-item-padding-x);color:var(--bs-breadcrumb-divider-color);content:var(--bs-breadcrumb-divider,"/")}.breadcrumb-item.active{color:var(--bs-breadcrumb-item-active-color)}.pagination{--bs-pagination-padding-x:0.75rem;--bs-pagination-padding-y:0.375rem;--bs-pagination-font-size:1rem;--bs-pagination-color:var(--bs-link-color);--bs-pagination-bg:var(--bs-body-bg);--bs-pagination-border-width:var(--bs-border-width);--bs-pagination-border-color:var(--bs-border-color);--bs-pagination-border-radius:var(--bs-border-radius);--bs-pagination-hover-color:var(--bs-link-hover-color);--bs-pagination-hover-bg:var(--bs-tertiary-bg);--bs-pagination-hover-border-color:var(--bs-border-color);--bs-pagination-focus-color:var(--bs-link-hover-color);--bs-pagination-focus-bg:var(--bs-secondary-bg);--bs-pagination-focus-box-shadow:0 0 0 0.25rem rgba(13,110,253,0.25);--bs-pagination-active-color:#fff;--bs-pagination-active-bg:#0d6efd;--bs-pagination-active-border-color:#0d6efd;--bs-pagination-disabled-color:var(--bs-secondary-color);--bs-pagination-disabled-bg:var(--bs-secondary-bg);--bs-pagination-disabled-border-color:var(--bs-border-color);display:-webkit-box;display:-ms-flexbox;display:flex;padding-left:0;list-style:none}.page-link{position:relative;display:block;padding:var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);font-size:var(--bs-pagination-font-size);color:var(--bs-pagination-color);text-decoration:none;background-color:var(--bs-pagination-bg);border:var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.page-link{-webkit-transition:none;transition:none}}.page-link:hover{z-index:2;color:var(--bs-pagination-hover-color);background-color:var(--bs-pagination-hover-bg);border-color:var(--bs-pagination-hover-border-color)}.page-link:focus{z-index:3;color:var(--bs-pagination-focus-color);background-color:var(--bs-pagination-focus-bg);outline:0;-webkit-box-shadow:var(--bs-pagination-focus-box-shadow);box-shadow:var(--bs-pagination-focus-box-shadow)}.active>.page-link,.page-link.active{z-index:3;color:var(--bs-pagination-active-color);background-color:var(--bs-pagination-active-bg);border-color:var(--bs-pagination-active-border-color)}.disabled>.page-link,.page-link.disabled{color:var(--bs-pagination-disabled-color);pointer-events:none;background-color:var(--bs-pagination-disabled-bg);border-color:var(--bs-pagination-disabled-border-color)}.page-item:not(:first-child) .page-link{margin-left:calc(var(--bs-border-width)*-1)}.page-item:first-child .page-link{border-top-left-radius:var(--bs-pagination-border-radius);border-bottom-left-radius:var(--bs-pagination-border-radius)}.page-item:last-child .page-link{border-top-right-radius:var(--bs-pagination-border-radius);border-bottom-right-radius:var(--bs-pagination-border-radius)}.pagination-lg{--bs-pagination-padding-x:1.5rem;--bs-pagination-padding-y:0.75rem;--bs-pagination-font-size:1.25rem;--bs-pagination-border-radius:var(--bs-border-radius-lg)}.pagination-sm{--bs-pagination-padding-x:0.5rem;--bs-pagination-padding-y:0.25rem;--bs-pagination-font-size:0.875rem;--bs-pagination-border-radius:var(--bs-border-radius-sm)}.badge{--bs-badge-padding-x:0.65em;--bs-badge-padding-y:0.35em;--bs-badge-font-size:0.75em;--bs-badge-font-weight:700;--bs-badge-color:#fff;--bs-badge-border-radius:var(--bs-border-radius);display:inline-block;padding:var(--bs-badge-padding-y) var(--bs-badge-padding-x);font-size:var(--bs-badge-font-size);font-weight:var(--bs-badge-font-weight);line-height:1;color:var(--bs-badge-color);text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:var(--bs-badge-border-radius)}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.alert{--bs-alert-bg:transparent;--bs-alert-padding-x:1rem;--bs-alert-padding-y:1rem;--bs-alert-margin-bottom:1rem;--bs-alert-color:inherit;--bs-alert-border-color:transparent;--bs-alert-border:var(--bs-border-width) solid var(--bs-alert-border-color);--bs-alert-border-radius:var(--bs-border-radius);--bs-alert-link-color:inherit;position:relative;padding:var(--bs-alert-padding-y) var(--bs-alert-padding-x);margin-bottom:var(--bs-alert-margin-bottom);color:var(--bs-alert-color);background-color:var(--bs-alert-bg);border:var(--bs-alert-border);border-radius:var(--bs-alert-border-radius)}.alert-heading{color:inherit}.alert-link{font-weight:700;color:var(--bs-alert-link-color)}.alert-dismissible{padding-right:3rem}.alert-dismissible .btn-close{position:absolute;top:0;right:0;z-index:2;padding:1.25rem 1rem}.alert-primary{--bs-alert-color:var(--bs-primary-text-emphasis);--bs-alert-bg:var(--bs-primary-bg-subtle);--bs-alert-border-color:var(--bs-primary-border-subtle);--bs-alert-link-color:var(--bs-primary-text-emphasis)}.alert-secondary{--bs-alert-color:var(--bs-secondary-text-emphasis);--bs-alert-bg:var(--bs-secondary-bg-subtle);--bs-alert-border-color:var(--bs-secondary-border-subtle);--bs-alert-link-color:var(--bs-secondary-text-emphasis)}.alert-success{--bs-alert-color:var(--bs-success-text-emphasis);--bs-alert-bg:var(--bs-success-bg-subtle);--bs-alert-border-color:var(--bs-success-border-subtle);--bs-alert-link-color:var(--bs-success-text-emphasis)}.alert-info{--bs-alert-color:var(--bs-info-text-emphasis);--bs-alert-bg:var(--bs-info-bg-subtle);--bs-alert-border-color:var(--bs-info-border-subtle);--bs-alert-link-color:var(--bs-info-text-emphasis)}.alert-warning{--bs-alert-color:var(--bs-warning-text-emphasis);--bs-alert-bg:var(--bs-warning-bg-subtle);--bs-alert-border-color:var(--bs-warning-border-subtle);--bs-alert-link-color:var(--bs-warning-text-emphasis)}.alert-danger{--bs-alert-color:var(--bs-danger-text-emphasis);--bs-alert-bg:var(--bs-danger-bg-subtle);--bs-alert-border-color:var(--bs-danger-border-subtle);--bs-alert-link-color:var(--bs-danger-text-emphasis)}.alert-light{--bs-alert-color:var(--bs-light-text-emphasis);--bs-alert-bg:var(--bs-light-bg-subtle);--bs-alert-border-color:var(--bs-light-border-subtle);--bs-alert-link-color:var(--bs-light-text-emphasis)}.alert-dark{--bs-alert-color:var(--bs-dark-text-emphasis);--bs-alert-bg:var(--bs-dark-bg-subtle);--bs-alert-border-color:var(--bs-dark-border-subtle);--bs-alert-link-color:var(--bs-dark-text-emphasis)}@-webkit-keyframes progress-bar-stripes{0%{background-position-x:1rem}}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress,.progress-stacked{--bs-progress-height:1rem;--bs-progress-font-size:0.75rem;--bs-progress-bg:var(--bs-secondary-bg);--bs-progress-border-radius:var(--bs-border-radius);--bs-progress-box-shadow:var(--bs-box-shadow-inset);--bs-progress-bar-color:#fff;--bs-progress-bar-bg:#0d6efd;--bs-progress-bar-transition:width 0.6s ease;height:var(--bs-progress-height);font-size:var(--bs-progress-font-size);background-color:var(--bs-progress-bg);border-radius:var(--bs-progress-border-radius)}.progress,.progress-bar,.progress-stacked{display:-webkit-box;display:-ms-flexbox;display:flex;overflow:hidden}.progress-bar{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;color:var(--bs-progress-bar-color);text-align:center;white-space:nowrap;background-color:var(--bs-progress-bar-bg);-webkit-transition:var(--bs-progress-bar-transition);transition:var(--bs-progress-bar-transition)}@media (prefers-reduced-motion:reduce){.progress-bar{-webkit-transition:none;transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-size:var(--bs-progress-height) var(--bs-progress-height)}.progress-stacked>.progress{overflow:visible}.progress-stacked>.progress>.progress-bar{width:100%}.progress-bar-animated{-webkit-animation:progress-bar-stripes 1s linear infinite;animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated{-webkit-animation:none;animation:none}}.list-group{--bs-list-group-color:var(--bs-body-color);--bs-list-group-bg:var(--bs-body-bg);--bs-list-group-border-color:var(--bs-border-color);--bs-list-group-border-width:var(--bs-border-width);--bs-list-group-border-radius:var(--bs-border-radius);--bs-list-group-item-padding-x:1rem;--bs-list-group-item-padding-y:0.5rem;--bs-list-group-action-color:var(--bs-secondary-color);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-tertiary-bg);--bs-list-group-action-active-color:var(--bs-body-color);--bs-list-group-action-active-bg:var(--bs-secondary-bg);--bs-list-group-disabled-color:var(--bs-secondary-color);--bs-list-group-disabled-bg:var(--bs-body-bg);--bs-list-group-active-color:#fff;--bs-list-group-active-bg:#0d6efd;--bs-list-group-active-border-color:#0d6efd;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0;border-radius:var(--bs-list-group-border-radius)}.list-group-numbered{list-style-type:none;counter-reset:section}.list-group-numbered>.list-group-item:before{content:counters(section,".") ". ";counter-increment:section}.list-group-item-action{width:100%;color:var(--bs-list-group-action-color);text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:var(--bs-list-group-action-hover-color);text-decoration:none;background-color:var(--bs-list-group-action-hover-bg)}.list-group-item-action:active{color:var(--bs-list-group-action-active-color);background-color:var(--bs-list-group-action-active-bg)}.list-group-item{position:relative;display:block;padding:var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);color:var(--bs-list-group-color);text-decoration:none;background-color:var(--bs-list-group-bg);border:var(--bs-list-group-border-width) solid var(--bs-list-group-border-color)}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:var(--bs-list-group-disabled-color);pointer-events:none;background-color:var(--bs-list-group-disabled-bg)}.list-group-item.active{z-index:2;color:var(--bs-list-group-active-color);background-color:var(--bs-list-group-active-bg);border-color:var(--bs-list-group-active-border-color)}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:calc(var(--bs-list-group-border-width)*-1);border-top-width:var(--bs-list-group-border-width)}.list-group-horizontal{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-left:calc(var(--bs-list-group-border-width)*-1);border-left-width:var(--bs-list-group-border-width)}@media (min-width:576px){.list-group-horizontal-sm{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-left:calc(var(--bs-list-group-border-width)*-1);border-left-width:var(--bs-list-group-border-width)}}@media (min-width:768px){.list-group-horizontal-md{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-left:calc(var(--bs-list-group-border-width)*-1);border-left-width:var(--bs-list-group-border-width)}}@media (min-width:992px){.list-group-horizontal-lg{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-left:calc(var(--bs-list-group-border-width)*-1);border-left-width:var(--bs-list-group-border-width)}}@media (min-width:1200px){.list-group-horizontal-xl{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-left:calc(var(--bs-list-group-border-width)*-1);border-left-width:var(--bs-list-group-border-width)}}@media (min-width:1400px){.list-group-horizontal-xxl{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-xxl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xxl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item.active{margin-left:calc(var(--bs-list-group-border-width)*-1);border-left-width:var(--bs-list-group-border-width)}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-left-width:0;border-bottom-width:var(--bs-list-group-border-width);border-right-width:0;border-top-width:0}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{--bs-list-group-color:var(--bs-primary-text-emphasis);--bs-list-group-bg:var(--bs-primary-bg-subtle);--bs-list-group-border-color:var(--bs-primary-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-primary-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-primary-border-subtle);--bs-list-group-active-color:var(--bs-primary-bg-subtle);--bs-list-group-active-bg:var(--bs-primary-text-emphasis);--bs-list-group-active-border-color:var(--bs-primary-text-emphasis)}.list-group-item-secondary{--bs-list-group-color:var(--bs-secondary-text-emphasis);--bs-list-group-bg:var(--bs-secondary-bg-subtle);--bs-list-group-border-color:var(--bs-secondary-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-secondary-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-secondary-border-subtle);--bs-list-group-active-color:var(--bs-secondary-bg-subtle);--bs-list-group-active-bg:var(--bs-secondary-text-emphasis);--bs-list-group-active-border-color:var(--bs-secondary-text-emphasis)}.list-group-item-success{--bs-list-group-color:var(--bs-success-text-emphasis);--bs-list-group-bg:var(--bs-success-bg-subtle);--bs-list-group-border-color:var(--bs-success-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-success-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-success-border-subtle);--bs-list-group-active-color:var(--bs-success-bg-subtle);--bs-list-group-active-bg:var(--bs-success-text-emphasis);--bs-list-group-active-border-color:var(--bs-success-text-emphasis)}.list-group-item-info{--bs-list-group-color:var(--bs-info-text-emphasis);--bs-list-group-bg:var(--bs-info-bg-subtle);--bs-list-group-border-color:var(--bs-info-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-info-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-info-border-subtle);--bs-list-group-active-color:var(--bs-info-bg-subtle);--bs-list-group-active-bg:var(--bs-info-text-emphasis);--bs-list-group-active-border-color:var(--bs-info-text-emphasis)}.list-group-item-warning{--bs-list-group-color:var(--bs-warning-text-emphasis);--bs-list-group-bg:var(--bs-warning-bg-subtle);--bs-list-group-border-color:var(--bs-warning-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-warning-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-warning-border-subtle);--bs-list-group-active-color:var(--bs-warning-bg-subtle);--bs-list-group-active-bg:var(--bs-warning-text-emphasis);--bs-list-group-active-border-color:var(--bs-warning-text-emphasis)}.list-group-item-danger{--bs-list-group-color:var(--bs-danger-text-emphasis);--bs-list-group-bg:var(--bs-danger-bg-subtle);--bs-list-group-border-color:var(--bs-danger-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-danger-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-danger-border-subtle);--bs-list-group-active-color:var(--bs-danger-bg-subtle);--bs-list-group-active-bg:var(--bs-danger-text-emphasis);--bs-list-group-active-border-color:var(--bs-danger-text-emphasis)}.list-group-item-light{--bs-list-group-color:var(--bs-light-text-emphasis);--bs-list-group-bg:var(--bs-light-bg-subtle);--bs-list-group-border-color:var(--bs-light-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-light-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-light-border-subtle);--bs-list-group-active-color:var(--bs-light-bg-subtle);--bs-list-group-active-bg:var(--bs-light-text-emphasis);--bs-list-group-active-border-color:var(--bs-light-text-emphasis)}.list-group-item-dark{--bs-list-group-color:var(--bs-dark-text-emphasis);--bs-list-group-bg:var(--bs-dark-bg-subtle);--bs-list-group-border-color:var(--bs-dark-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-dark-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-dark-border-subtle);--bs-list-group-active-color:var(--bs-dark-bg-subtle);--bs-list-group-active-bg:var(--bs-dark-text-emphasis);--bs-list-group-active-border-color:var(--bs-dark-text-emphasis)}.btn-close{--bs-btn-close-color:#000;--bs-btn-close-bg:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3E%3C/svg%3E");--bs-btn-close-opacity:0.5;--bs-btn-close-hover-opacity:0.75;--bs-btn-close-focus-shadow:0 0 0 0.25rem rgba(13,110,253,0.25);--bs-btn-close-focus-opacity:1;--bs-btn-close-disabled-opacity:0.25;--bs-btn-close-white-filter:invert(1) grayscale(100%) brightness(200%);-webkit-box-sizing:content-box;box-sizing:content-box;width:1em;height:1em;padding:.25em;background:transparent var(--bs-btn-close-bg) 50%/1em auto no-repeat;border:0;border-radius:.375rem;opacity:var(--bs-btn-close-opacity)}.btn-close,.btn-close:hover{color:var(--bs-btn-close-color)}.btn-close:hover{text-decoration:none;opacity:var(--bs-btn-close-hover-opacity)}.btn-close:focus{outline:0;-webkit-box-shadow:var(--bs-btn-close-focus-shadow);box-shadow:var(--bs-btn-close-focus-shadow);opacity:var(--bs-btn-close-focus-opacity)}.btn-close.disabled,.btn-close:disabled{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;opacity:var(--bs-btn-close-disabled-opacity)}.btn-close-white,[data-bs-theme=dark] .btn-close{-webkit-filter:var(--bs-btn-close-white-filter);filter:var(--bs-btn-close-white-filter)}.toast{--bs-toast-zindex:1090;--bs-toast-padding-x:0.75rem;--bs-toast-padding-y:0.5rem;--bs-toast-spacing:1.5rem;--bs-toast-max-width:350px;--bs-toast-font-size:0.875rem;--bs-toast-bg:rgba(var(--bs-body-bg-rgb),0.85);--bs-toast-border-width:var(--bs-border-width);--bs-toast-border-color:var(--bs-border-color-translucent);--bs-toast-border-radius:var(--bs-border-radius);--bs-toast-box-shadow:var(--bs-box-shadow);--bs-toast-header-color:var(--bs-secondary-color);--bs-toast-header-bg:rgba(var(--bs-body-bg-rgb),0.85);--bs-toast-header-border-color:var(--bs-border-color-translucent);width:var(--bs-toast-max-width);max-width:100%;font-size:var(--bs-toast-font-size);color:var(--bs-toast-color);pointer-events:auto;background-color:var(--bs-toast-bg);background-clip:padding-box;border:var(--bs-toast-border-width) solid var(--bs-toast-border-color);-webkit-box-shadow:var(--bs-toast-box-shadow);box-shadow:var(--bs-toast-box-shadow);border-radius:var(--bs-toast-border-radius)}.toast.showing{opacity:0}.toast:not(.show){display:none}.toast-container{--bs-toast-zindex:1090;position:absolute;z-index:var(--bs-toast-zindex);width:-webkit-max-content;width:-moz-max-content;width:max-content;max-width:100%;pointer-events:none}.toast-container>:not(:last-child){margin-bottom:var(--bs-toast-spacing)}.toast-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:var(--bs-toast-padding-y) var(--bs-toast-padding-x);color:var(--bs-toast-header-color);background-color:var(--bs-toast-header-bg);background-clip:padding-box;border-bottom:var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);border-top-left-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));border-top-right-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width))}.toast-header .btn-close{margin-right:calc(var(--bs-toast-padding-x)*-0.5);margin-left:var(--bs-toast-padding-x)}.toast-body{padding:var(--bs-toast-padding-x);word-wrap:break-word}.modal{--bs-modal-zindex:1055;--bs-modal-width:500px;--bs-modal-padding:1rem;--bs-modal-margin:0.5rem;--bs-modal-bg:var(--bs-body-bg);--bs-modal-border-color:var(--bs-border-color-translucent);--bs-modal-border-width:var(--bs-border-width);--bs-modal-border-radius:var(--bs-border-radius-lg);--bs-modal-box-shadow:0 0.125rem 0.25rem rgba(0,0,0,0.075);--bs-modal-inner-border-radius:calc(var(--bs-border-radius-lg) - var(--bs-border-width));--bs-modal-header-padding-x:1rem;--bs-modal-header-padding-y:1rem;--bs-modal-header-padding:1rem 1rem;--bs-modal-header-border-color:var(--bs-border-color);--bs-modal-header-border-width:var(--bs-border-width);--bs-modal-title-line-height:1.5;--bs-modal-footer-gap:0.5rem;--bs-modal-footer-border-color:var(--bs-border-color);--bs-modal-footer-border-width:var(--bs-border-width);position:fixed;top:0;left:0;z-index:var(--bs-modal-zindex);display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}.modal-dialog{position:relative;width:auto;margin:var(--bs-modal-margin);pointer-events:none}.modal.fade .modal-dialog{-webkit-transition:-webkit-transform .3s ease-out;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translateY(-50px);transform:translateY(-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{-webkit-transition:none;transition:none}}.modal.show .modal-dialog{-webkit-transform:none;transform:none}.modal.modal-static .modal-dialog{-webkit-transform:scale(1.02);transform:scale(1.02)}.modal-dialog-scrollable{height:calc(100% - var(--bs-modal-margin)*2)}.modal-dialog-scrollable .modal-content{max-height:100%;overflow:hidden}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-height:calc(100% - var(--bs-modal-margin)*2)}.modal-content,.modal-dialog-centered{display:-webkit-box;display:-ms-flexbox;display:flex}.modal-content{position:relative;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:100%;color:var(--bs-modal-color);pointer-events:auto;background-color:var(--bs-modal-bg);background-clip:padding-box;border:var(--bs-modal-border-width) solid var(--bs-modal-border-color);border-radius:var(--bs-modal-border-radius);outline:0}.modal-backdrop{--bs-backdrop-zindex:1050;--bs-backdrop-bg:#000;--bs-backdrop-opacity:0.5;position:fixed;top:0;left:0;z-index:var(--bs-backdrop-zindex);width:100vw;height:100vh;background-color:var(--bs-backdrop-bg)}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:var(--bs-backdrop-opacity)}.modal-header{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-negative:0;flex-shrink:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:var(--bs-modal-header-padding);border-bottom:var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);border-top-left-radius:var(--bs-modal-inner-border-radius);border-top-right-radius:var(--bs-modal-inner-border-radius)}.modal-header .btn-close{padding:calc(var(--bs-modal-header-padding-y)*0.5) calc(var(--bs-modal-header-padding-x)*0.5);margin:calc(var(--bs-modal-header-padding-y)*-0.5) calc(var(--bs-modal-header-padding-x)*-0.5) calc(var(--bs-modal-header-padding-y)*-0.5) auto}.modal-title{margin-bottom:0;line-height:var(--bs-modal-title-line-height)}.modal-body{position:relative;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;padding:var(--bs-modal-padding)}.modal-footer{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-negative:0;flex-shrink:0;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;padding:calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap)*0.5);background-color:var(--bs-modal-footer-bg);border-top:var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);border-bottom-right-radius:var(--bs-modal-inner-border-radius);border-bottom-left-radius:var(--bs-modal-inner-border-radius)}.modal-footer>*{margin:calc(var(--bs-modal-footer-gap)*0.5)}@media (min-width:576px){.modal{--bs-modal-margin:1.75rem;--bs-modal-box-shadow:0 0.5rem 1rem rgba(0,0,0,0.15)}.modal-dialog{max-width:var(--bs-modal-width);margin-right:auto;margin-left:auto}.modal-sm{--bs-modal-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{--bs-modal-width:800px}}@media (min-width:1200px){.modal-xl{--bs-modal-width:1140px}}.modal-fullscreen{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen .modal-footer,.modal-fullscreen .modal-header{border-radius:0}.modal-fullscreen .modal-body{overflow-y:auto}@media (max-width:575.98px){.modal-fullscreen-sm-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-sm-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-sm-down .modal-footer,.modal-fullscreen-sm-down .modal-header{border-radius:0}.modal-fullscreen-sm-down .modal-body{overflow-y:auto}}@media (max-width:767.98px){.modal-fullscreen-md-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-md-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-md-down .modal-footer,.modal-fullscreen-md-down .modal-header{border-radius:0}.modal-fullscreen-md-down .modal-body{overflow-y:auto}}@media (max-width:991.98px){.modal-fullscreen-lg-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-lg-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-lg-down .modal-footer,.modal-fullscreen-lg-down .modal-header{border-radius:0}.modal-fullscreen-lg-down .modal-body{overflow-y:auto}}@media (max-width:1199.98px){.modal-fullscreen-xl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xl-down .modal-footer,.modal-fullscreen-xl-down .modal-header{border-radius:0}.modal-fullscreen-xl-down .modal-body{overflow-y:auto}}@media (max-width:1399.98px){.modal-fullscreen-xxl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xxl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xxl-down .modal-footer,.modal-fullscreen-xxl-down .modal-header{border-radius:0}.modal-fullscreen-xxl-down .modal-body{overflow-y:auto}}.tooltip{--bs-tooltip-zindex:1080;--bs-tooltip-max-width:200px;--bs-tooltip-padding-x:0.5rem;--bs-tooltip-padding-y:0.25rem;--bs-tooltip-font-size:0.875rem;--bs-tooltip-color:var(--bs-body-bg);--bs-tooltip-bg:var(--bs-emphasis-color);--bs-tooltip-border-radius:var(--bs-border-radius);--bs-tooltip-opacity:0.9;--bs-tooltip-arrow-width:0.8rem;--bs-tooltip-arrow-height:0.4rem;z-index:var(--bs-tooltip-zindex);display:block;margin:var(--bs-tooltip-margin);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-tooltip-font-size);word-wrap:break-word;opacity:0}.tooltip.show{opacity:var(--bs-tooltip-opacity)}.tooltip .tooltip-arrow{display:block;width:var(--bs-tooltip-arrow-width);height:var(--bs-tooltip-arrow-height)}.tooltip .tooltip-arrow:before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow,.bs-tooltip-top .tooltip-arrow{bottom:calc(var(--bs-tooltip-arrow-height)*-1)}.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow:before,.bs-tooltip-top .tooltip-arrow:before{top:-1px;border-left-width:calc(var(--bs-tooltip-arrow-width)*0.5);border-bottom-width:0;border-right-width:calc(var(--bs-tooltip-arrow-width)*0.5);border-top-width:var(--bs-tooltip-arrow-height);border-top-color:var(--bs-tooltip-bg)}.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow,.bs-tooltip-end .tooltip-arrow{left:calc(var(--bs-tooltip-arrow-height)*-1);width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow:before,.bs-tooltip-end .tooltip-arrow:before{right:-1px;border-left-width:0;border-bottom-width:calc(var(--bs-tooltip-arrow-width)*0.5);border-right-width:var(--bs-tooltip-arrow-height);border-top-width:calc(var(--bs-tooltip-arrow-width)*0.5);border-right-color:var(--bs-tooltip-bg)}.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow,.bs-tooltip-bottom .tooltip-arrow{top:calc(var(--bs-tooltip-arrow-height)*-1)}.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow:before,.bs-tooltip-bottom .tooltip-arrow:before{bottom:-1px;border-left-width:calc(var(--bs-tooltip-arrow-width)*0.5);border-bottom-width:var(--bs-tooltip-arrow-height);border-right-width:calc(var(--bs-tooltip-arrow-width)*0.5);border-top-width:0;border-bottom-color:var(--bs-tooltip-bg)}.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow,.bs-tooltip-start .tooltip-arrow{right:calc(var(--bs-tooltip-arrow-height)*-1);width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow:before,.bs-tooltip-start .tooltip-arrow:before{left:-1px;border-left-width:var(--bs-tooltip-arrow-height);border-bottom-width:calc(var(--bs-tooltip-arrow-width)*0.5);border-right-width:0;border-top-width:calc(var(--bs-tooltip-arrow-width)*0.5);border-left-color:var(--bs-tooltip-bg)}.tooltip-inner{max-width:var(--bs-tooltip-max-width);padding:var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);color:var(--bs-tooltip-color);text-align:center;background-color:var(--bs-tooltip-bg);border-radius:var(--bs-tooltip-border-radius)}.popover{--bs-popover-zindex:1070;--bs-popover-max-width:276px;--bs-popover-font-size:0.875rem;--bs-popover-bg:var(--bs-body-bg);--bs-popover-border-width:var(--bs-border-width);--bs-popover-border-color:var(--bs-border-color-translucent);--bs-popover-border-radius:var(--bs-border-radius-lg);--bs-popover-inner-border-radius:calc(var(--bs-border-radius-lg) - var(--bs-border-width));--bs-popover-box-shadow:0 0.5rem 1rem rgba(0,0,0,0.15);--bs-popover-header-padding-x:1rem;--bs-popover-header-padding-y:0.5rem;--bs-popover-header-font-size:1rem;--bs-popover-header-color:inherit;--bs-popover-header-bg:var(--bs-secondary-bg);--bs-popover-body-padding-x:1rem;--bs-popover-body-padding-y:1rem;--bs-popover-body-color:var(--bs-body-color);--bs-popover-arrow-width:1rem;--bs-popover-arrow-height:0.5rem;--bs-popover-arrow-border:var(--bs-popover-border-color);z-index:var(--bs-popover-zindex);display:block;max-width:var(--bs-popover-max-width);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-popover-font-size);word-wrap:break-word;background-color:var(--bs-popover-bg);background-clip:padding-box;border:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-radius:var(--bs-popover-border-radius)}.popover .popover-arrow{display:block;width:var(--bs-popover-arrow-width);height:var(--bs-popover-arrow-height)}.popover .popover-arrow:after,.popover .popover-arrow:before{position:absolute;display:block;content:"";border:0 solid transparent}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow,.bs-popover-top>.popover-arrow{bottom:calc(var(--bs-popover-arrow-height)*-1 - var(--bs-popover-border-width))}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow:after,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow:before,.bs-popover-top>.popover-arrow:after,.bs-popover-top>.popover-arrow:before{border-left-width:calc(var(--bs-popover-arrow-width)*0.5);border-bottom-width:0;border-right-width:calc(var(--bs-popover-arrow-width)*0.5);border-top-width:var(--bs-popover-arrow-height)}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow:before,.bs-popover-top>.popover-arrow:before{bottom:0;border-top-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow:after,.bs-popover-top>.popover-arrow:after{bottom:var(--bs-popover-border-width);border-top-color:var(--bs-popover-bg)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow,.bs-popover-end>.popover-arrow{left:calc(var(--bs-popover-arrow-height)*-1 - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow:after,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow:before,.bs-popover-end>.popover-arrow:after,.bs-popover-end>.popover-arrow:before{border-left-width:0;border-bottom-width:calc(var(--bs-popover-arrow-width)*0.5);border-right-width:var(--bs-popover-arrow-height);border-top-width:calc(var(--bs-popover-arrow-width)*0.5)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow:before,.bs-popover-end>.popover-arrow:before{left:0;border-right-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow:after,.bs-popover-end>.popover-arrow:after{left:var(--bs-popover-border-width);border-right-color:var(--bs-popover-bg)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow,.bs-popover-bottom>.popover-arrow{top:calc(var(--bs-popover-arrow-height)*-1 - var(--bs-popover-border-width))}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow:after,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow:before,.bs-popover-bottom>.popover-arrow:after,.bs-popover-bottom>.popover-arrow:before{border-left-width:calc(var(--bs-popover-arrow-width)*0.5);border-bottom-width:var(--bs-popover-arrow-height);border-right-width:calc(var(--bs-popover-arrow-width)*0.5);border-top-width:0}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow:before,.bs-popover-bottom>.popover-arrow:before{top:0;border-bottom-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow:after,.bs-popover-bottom>.popover-arrow:after{top:var(--bs-popover-border-width);border-bottom-color:var(--bs-popover-bg)}.bs-popover-auto[data-popper-placement^=bottom] .popover-header:before,.bs-popover-bottom .popover-header:before{position:absolute;top:0;left:50%;display:block;width:var(--bs-popover-arrow-width);margin-left:calc(var(--bs-popover-arrow-width)*-0.5);content:"";border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-header-bg)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow,.bs-popover-start>.popover-arrow{right:calc(var(--bs-popover-arrow-height)*-1 - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow:after,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow:before,.bs-popover-start>.popover-arrow:after,.bs-popover-start>.popover-arrow:before{border-left-width:var(--bs-popover-arrow-height);border-bottom-width:calc(var(--bs-popover-arrow-width)*0.5);border-right-width:0;border-top-width:calc(var(--bs-popover-arrow-width)*0.5)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow:before,.bs-popover-start>.popover-arrow:before{right:0;border-left-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow:after,.bs-popover-start>.popover-arrow:after{right:var(--bs-popover-border-width);border-left-color:var(--bs-popover-bg)}.popover-header{padding:var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);margin-bottom:0;font-size:var(--bs-popover-header-font-size);color:var(--bs-popover-header-color);background-color:var(--bs-popover-header-bg);border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-top-left-radius:var(--bs-popover-inner-border-radius);border-top-right-radius:var(--bs-popover-inner-border-radius)}.popover-header:empty{display:none}.popover-body{padding:var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);color:var(--bs-popover-body-color)}.carousel{position:relative}.carousel.pointer-event{-ms-touch-action:pan-y;touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner:after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transition:-webkit-transform .6s ease-in-out;transition:-webkit-transform .6s ease-in-out;transition:transform .6s ease-in-out;transition:transform .6s ease-in-out,-webkit-transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{-webkit-transition:none;transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-end,.carousel-item-next:not(.carousel-item-start){-webkit-transform:translateX(100%);transform:translateX(100%)}.active.carousel-item-start,.carousel-item-prev:not(.carousel-item-end){-webkit-transform:translateX(-100%);transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;-webkit-transition-property:opacity;transition-property:opacity;-webkit-transform:none;transform:none}.carousel-fade .carousel-item-next.carousel-item-start,.carousel-fade .carousel-item-prev.carousel-item-end,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-end,.carousel-fade .active.carousel-item-start{z-index:0;opacity:0;-webkit-transition:opacity 0s .6s;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-end,.carousel-fade .active.carousel-item-start{-webkit-transition:none;transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:15%;padding:0;color:#fff;text-align:center;background:none;border:0;opacity:.5;-webkit-transition:opacity .15s ease;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{-webkit-transition:none;transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:2rem;height:2rem;background-repeat:no-repeat;background-position:50%;background-size:100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3E%3Cpath d='M11.354 1.646a.5.5 0 010 .708L5.707 8l5.647 5.646a.5.5 0 01-.708.708l-6-6a.5.5 0 010-.708l6-6a.5.5 0 01.708 0z'/%3E%3C/svg%3E")}.carousel-control-next-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3E%3Cpath d='M4.646 1.646a.5.5 0 01.708 0l6 6a.5.5 0 010 .708l-6 6a.5.5 0 01-.708-.708L10.293 8 4.646 2.354a.5.5 0 010-.708z'/%3E%3C/svg%3E")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:2;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:0;margin-right:15%;margin-bottom:1rem;margin-left:15%}.carousel-indicators [data-bs-target]{-webkit-box-sizing:content-box;box-sizing:content-box;-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto;width:30px;height:3px;padding:0;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border:0;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;-webkit-transition:opacity .6s ease;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators [data-bs-target]{-webkit-transition:none;transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:1.25rem;left:15%;padding-top:1.25rem;padding-bottom:1.25rem;color:#fff;text-align:center}.carousel-dark .carousel-control-next-icon,.carousel-dark .carousel-control-prev-icon{-webkit-filter:invert(1) grayscale(100);filter:invert(1) grayscale(100)}.carousel-dark .carousel-indicators [data-bs-target]{background-color:#000}.carousel-dark .carousel-caption{color:#000}[data-bs-theme=dark].carousel .carousel-control-next-icon,[data-bs-theme=dark] .carousel .carousel-control-next-icon,[data-bs-theme=dark].carousel .carousel-control-prev-icon,[data-bs-theme=dark] .carousel .carousel-control-prev-icon{-webkit-filter:invert(1) grayscale(100);filter:invert(1) grayscale(100)}[data-bs-theme=dark].carousel .carousel-indicators [data-bs-target],[data-bs-theme=dark] .carousel .carousel-indicators [data-bs-target]{background-color:#000}[data-bs-theme=dark].carousel .carousel-caption,[data-bs-theme=dark] .carousel .carousel-caption{color:#000}.spinner-border,.spinner-grow{display:inline-block;width:var(--bs-spinner-width);height:var(--bs-spinner-height);vertical-align:var(--bs-spinner-vertical-align);border-radius:50%;-webkit-animation:var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name);animation:var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name)}@-webkit-keyframes spinner-border{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes spinner-border{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.spinner-border{--bs-spinner-width:2rem;--bs-spinner-height:2rem;--bs-spinner-vertical-align:-0.125em;--bs-spinner-border-width:0.25em;--bs-spinner-animation-speed:0.75s;--bs-spinner-animation-name:spinner-border;border:var(--bs-spinner-border-width) solid;border-right-color:transparent}.spinner-border-sm{--bs-spinner-width:1rem;--bs-spinner-height:1rem;--bs-spinner-border-width:0.2em}@-webkit-keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1;-webkit-transform:none;transform:none}}@keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1;-webkit-transform:none;transform:none}}.spinner-grow{--bs-spinner-width:2rem;--bs-spinner-height:2rem;--bs-spinner-vertical-align:-0.125em;--bs-spinner-animation-speed:0.75s;--bs-spinner-animation-name:spinner-grow;background-color:currentcolor;opacity:0}.spinner-grow-sm{--bs-spinner-width:1rem;--bs-spinner-height:1rem}@media (prefers-reduced-motion:reduce){.spinner-border,.spinner-grow{--bs-spinner-animation-speed:1.5s}}.offcanvas,.offcanvas-lg,.offcanvas-md,.offcanvas-sm,.offcanvas-xl,.offcanvas-xxl{--bs-offcanvas-zindex:1045;--bs-offcanvas-width:400px;--bs-offcanvas-height:30vh;--bs-offcanvas-padding-x:1rem;--bs-offcanvas-padding-y:1rem;--bs-offcanvas-color:var(--bs-body-color);--bs-offcanvas-bg:var(--bs-body-bg);--bs-offcanvas-border-width:var(--bs-border-width);--bs-offcanvas-border-color:var(--bs-border-color-translucent);--bs-offcanvas-box-shadow:0 0.125rem 0.25rem rgba(0,0,0,0.075);--bs-offcanvas-transition:transform 0.3s ease-in-out;--bs-offcanvas-title-line-height:1.5}@media (max-width:575.98px){.offcanvas-sm{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;-webkit-transition:var(--bs-offcanvas-transition);transition:var(--bs-offcanvas-transition)}}@media (max-width:575.98px) and (prefers-reduced-motion:reduce){.offcanvas-sm{-webkit-transition:none;transition:none}}@media (max-width:575.98px){.offcanvas-sm.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateX(-100%);transform:translateX(-100%)}.offcanvas-sm.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateX(100%);transform:translateX(100%)}.offcanvas-sm.offcanvas-top{top:0;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateY(-100%);transform:translateY(-100%)}.offcanvas-sm.offcanvas-bottom,.offcanvas-sm.offcanvas-top{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%}.offcanvas-sm.offcanvas-bottom{border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateY(100%);transform:translateY(100%)}.offcanvas-sm.show:not(.hiding),.offcanvas-sm.showing{-webkit-transform:none;transform:none}.offcanvas-sm.hiding,.offcanvas-sm.show,.offcanvas-sm.showing{visibility:visible}}@media (min-width:576px){.offcanvas-sm{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-sm .offcanvas-header{display:none}.offcanvas-sm .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:767.98px){.offcanvas-md{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;-webkit-transition:var(--bs-offcanvas-transition);transition:var(--bs-offcanvas-transition)}}@media (max-width:767.98px) and (prefers-reduced-motion:reduce){.offcanvas-md{-webkit-transition:none;transition:none}}@media (max-width:767.98px){.offcanvas-md.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateX(-100%);transform:translateX(-100%)}.offcanvas-md.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateX(100%);transform:translateX(100%)}.offcanvas-md.offcanvas-top{top:0;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateY(-100%);transform:translateY(-100%)}.offcanvas-md.offcanvas-bottom,.offcanvas-md.offcanvas-top{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%}.offcanvas-md.offcanvas-bottom{border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateY(100%);transform:translateY(100%)}.offcanvas-md.show:not(.hiding),.offcanvas-md.showing{-webkit-transform:none;transform:none}.offcanvas-md.hiding,.offcanvas-md.show,.offcanvas-md.showing{visibility:visible}}@media (min-width:768px){.offcanvas-md{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-md .offcanvas-header{display:none}.offcanvas-md .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:991.98px){.offcanvas-lg{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;-webkit-transition:var(--bs-offcanvas-transition);transition:var(--bs-offcanvas-transition)}}@media (max-width:991.98px) and (prefers-reduced-motion:reduce){.offcanvas-lg{-webkit-transition:none;transition:none}}@media (max-width:991.98px){.offcanvas-lg.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateX(-100%);transform:translateX(-100%)}.offcanvas-lg.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateX(100%);transform:translateX(100%)}.offcanvas-lg.offcanvas-top{top:0;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateY(-100%);transform:translateY(-100%)}.offcanvas-lg.offcanvas-bottom,.offcanvas-lg.offcanvas-top{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%}.offcanvas-lg.offcanvas-bottom{border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateY(100%);transform:translateY(100%)}.offcanvas-lg.show:not(.hiding),.offcanvas-lg.showing{-webkit-transform:none;transform:none}.offcanvas-lg.hiding,.offcanvas-lg.show,.offcanvas-lg.showing{visibility:visible}}@media (min-width:992px){.offcanvas-lg{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-lg .offcanvas-header{display:none}.offcanvas-lg .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:1199.98px){.offcanvas-xl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;-webkit-transition:var(--bs-offcanvas-transition);transition:var(--bs-offcanvas-transition)}}@media (max-width:1199.98px) and (prefers-reduced-motion:reduce){.offcanvas-xl{-webkit-transition:none;transition:none}}@media (max-width:1199.98px){.offcanvas-xl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateX(-100%);transform:translateX(-100%)}.offcanvas-xl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateX(100%);transform:translateX(100%)}.offcanvas-xl.offcanvas-top{top:0;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateY(-100%);transform:translateY(-100%)}.offcanvas-xl.offcanvas-bottom,.offcanvas-xl.offcanvas-top{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%}.offcanvas-xl.offcanvas-bottom{border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateY(100%);transform:translateY(100%)}.offcanvas-xl.show:not(.hiding),.offcanvas-xl.showing{-webkit-transform:none;transform:none}.offcanvas-xl.hiding,.offcanvas-xl.show,.offcanvas-xl.showing{visibility:visible}}@media (min-width:1200px){.offcanvas-xl{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-xl .offcanvas-header{display:none}.offcanvas-xl .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:1399.98px){.offcanvas-xxl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;-webkit-transition:var(--bs-offcanvas-transition);transition:var(--bs-offcanvas-transition)}}@media (max-width:1399.98px) and (prefers-reduced-motion:reduce){.offcanvas-xxl{-webkit-transition:none;transition:none}}@media (max-width:1399.98px){.offcanvas-xxl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateX(-100%);transform:translateX(-100%)}.offcanvas-xxl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateX(100%);transform:translateX(100%)}.offcanvas-xxl.offcanvas-top{top:0;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateY(-100%);transform:translateY(-100%)}.offcanvas-xxl.offcanvas-bottom,.offcanvas-xxl.offcanvas-top{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%}.offcanvas-xxl.offcanvas-bottom{border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateY(100%);transform:translateY(100%)}.offcanvas-xxl.show:not(.hiding),.offcanvas-xxl.showing{-webkit-transform:none;transform:none}.offcanvas-xxl.hiding,.offcanvas-xxl.show,.offcanvas-xxl.showing{visibility:visible}}@media (min-width:1400px){.offcanvas-xxl{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-xxl .offcanvas-header{display:none}.offcanvas-xxl .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}.offcanvas{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;-webkit-transition:var(--bs-offcanvas-transition);transition:var(--bs-offcanvas-transition)}@media (prefers-reduced-motion:reduce){.offcanvas{-webkit-transition:none;transition:none}}.offcanvas.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateX(-100%);transform:translateX(-100%)}.offcanvas.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateX(100%);transform:translateX(100%)}.offcanvas.offcanvas-top{top:0;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateY(-100%);transform:translateY(-100%)}.offcanvas.offcanvas-bottom,.offcanvas.offcanvas-top{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%}.offcanvas.offcanvas-bottom{border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateY(100%);transform:translateY(100%)}.offcanvas.show:not(.hiding),.offcanvas.showing{-webkit-transform:none;transform:none}.offcanvas.hiding,.offcanvas.show,.offcanvas.showing{visibility:visible}.offcanvas-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.offcanvas-backdrop.fade{opacity:0}.offcanvas-backdrop.show{opacity:.5}.offcanvas-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x)}.offcanvas-header .btn-close{padding:calc(var(--bs-offcanvas-padding-y)*0.5) calc(var(--bs-offcanvas-padding-x)*0.5);margin-top:calc(var(--bs-offcanvas-padding-y)*-0.5);margin-right:calc(var(--bs-offcanvas-padding-x)*-0.5);margin-bottom:calc(var(--bs-offcanvas-padding-y)*-0.5)}.offcanvas-title{margin-bottom:0;line-height:var(--bs-offcanvas-title-line-height)}.offcanvas-body{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);overflow-y:auto}.placeholder{display:inline-block;min-height:1em;vertical-align:middle;cursor:wait;background-color:currentcolor;opacity:.5}.placeholder.btn:before{display:inline-block;content:""}.placeholder-xs{min-height:.6em}.placeholder-sm{min-height:.8em}.placeholder-lg{min-height:1.2em}.placeholder-glow .placeholder{-webkit-animation:placeholder-glow 2s ease-in-out infinite;animation:placeholder-glow 2s ease-in-out infinite}@-webkit-keyframes placeholder-glow{50%{opacity:.2}}@keyframes placeholder-glow{50%{opacity:.2}}.placeholder-wave{-webkit-mask-image:linear-gradient(130deg,#000 55%,rgba(0,0,0,.8) 75%,#000 95%);mask-image:linear-gradient(130deg,#000 55%,rgba(0,0,0,.8) 75%,#000 95%);-webkit-mask-size:200% 100%;mask-size:200% 100%;-webkit-animation:placeholder-wave 2s linear infinite;animation:placeholder-wave 2s linear infinite}@-webkit-keyframes placeholder-wave{to{-webkit-mask-position:-200% 0;mask-position:-200% 0}}@keyframes placeholder-wave{to{-webkit-mask-position:-200% 0;mask-position:-200% 0}}.clearfix:after{display:block;clear:both;content:""}.text-bg-primary{color:#fff!important;background-color:RGBA(13,110,253,var(--bs-bg-opacity,1))!important}.text-bg-secondary{color:#fff!important;background-color:RGBA(108,117,125,var(--bs-bg-opacity,1))!important}.text-bg-success{color:#fff!important;background-color:RGBA(25,135,84,var(--bs-bg-opacity,1))!important}.text-bg-info{color:#000!important;background-color:RGBA(13,202,240,var(--bs-bg-opacity,1))!important}.text-bg-warning{color:#000!important;background-color:RGBA(255,193,7,var(--bs-bg-opacity,1))!important}.text-bg-danger{color:#fff!important;background-color:RGBA(220,53,69,var(--bs-bg-opacity,1))!important}.text-bg-light{color:#000!important;background-color:RGBA(248,249,250,var(--bs-bg-opacity,1))!important}.text-bg-dark{color:#fff!important;background-color:RGBA(33,37,41,var(--bs-bg-opacity,1))!important}.link-primary{color:RGBA(var(--bs-primary-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-primary-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-primary-rgb),var(--bs-link-underline-opacity,1))!important}.link-primary:focus,.link-primary:hover{color:RGBA(10,88,202,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(10,88,202,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(10,88,202,var(--bs-link-underline-opacity,1))!important}.link-secondary{color:RGBA(var(--bs-secondary-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-secondary-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-secondary-rgb),var(--bs-link-underline-opacity,1))!important}.link-secondary:focus,.link-secondary:hover{color:RGBA(86,94,100,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(86,94,100,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(86,94,100,var(--bs-link-underline-opacity,1))!important}.link-success{color:RGBA(var(--bs-success-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-success-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-success-rgb),var(--bs-link-underline-opacity,1))!important}.link-success:focus,.link-success:hover{color:RGBA(20,108,67,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(20,108,67,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(20,108,67,var(--bs-link-underline-opacity,1))!important}.link-info{color:RGBA(var(--bs-info-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-info-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-info-rgb),var(--bs-link-underline-opacity,1))!important}.link-info:focus,.link-info:hover{color:RGBA(61,213,243,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(61,213,243,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(61,213,243,var(--bs-link-underline-opacity,1))!important}.link-warning{color:RGBA(var(--bs-warning-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-warning-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-warning-rgb),var(--bs-link-underline-opacity,1))!important}.link-warning:focus,.link-warning:hover{color:RGBA(255,205,57,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(255,205,57,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(255,205,57,var(--bs-link-underline-opacity,1))!important}.link-danger{color:RGBA(var(--bs-danger-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-danger-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-danger-rgb),var(--bs-link-underline-opacity,1))!important}.link-danger:focus,.link-danger:hover{color:RGBA(176,42,55,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(176,42,55,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(176,42,55,var(--bs-link-underline-opacity,1))!important}.link-light{color:RGBA(var(--bs-light-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-light-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-light-rgb),var(--bs-link-underline-opacity,1))!important}.link-light:focus,.link-light:hover{color:RGBA(249,250,251,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(249,250,251,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(249,250,251,var(--bs-link-underline-opacity,1))!important}.link-dark{color:RGBA(var(--bs-dark-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-dark-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-dark-rgb),var(--bs-link-underline-opacity,1))!important}.link-dark:focus,.link-dark:hover{color:RGBA(26,30,33,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(26,30,33,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(26,30,33,var(--bs-link-underline-opacity,1))!important}.link-body-emphasis{color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,1))!important}.link-body-emphasis:focus,.link-body-emphasis:hover{color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-opacity,.75))!important;-webkit-text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,.75))!important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,.75))!important}.focus-ring:focus{outline:0;-webkit-box-shadow:var(--bs-focus-ring-x,0) var(--bs-focus-ring-y,0) var(--bs-focus-ring-blur,0) var(--bs-focus-ring-width) var(--bs-focus-ring-color);box-shadow:var(--bs-focus-ring-x,0) var(--bs-focus-ring-y,0) var(--bs-focus-ring-blur,0) var(--bs-focus-ring-width) var(--bs-focus-ring-color)}.icon-link{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;gap:.375rem;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,.5));text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,.5));text-underline-offset:.25em;-webkit-backface-visibility:hidden;backface-visibility:hidden}.icon-link>.bi{-ms-flex-negative:0;flex-shrink:0;width:1em;height:1em;fill:currentcolor;-webkit-transition:transform .2s ease-in-out;transition:transform .2s ease-in-out}@media (prefers-reduced-motion:reduce){.icon-link>.bi{-webkit-transition:none;transition:none}}.icon-link-hover:focus-visible>.bi,.icon-link-hover:hover>.bi{-webkit-transform:var(--bs-icon-link-transform,translate3d(.25em,0,0));transform:var(--bs-icon-link-transform,translate3d(.25em,0,0))}.ratio{position:relative;width:100%}.ratio:before{display:block;padding-top:var(--bs-aspect-ratio);content:""}.ratio>*{position:absolute;top:0;left:0;width:100%;height:100%}.ratio-1x1{--bs-aspect-ratio:100%}.ratio-4x3{--bs-aspect-ratio:75%}.ratio-16x9{--bs-aspect-ratio:56.25%}.ratio-21x9{--bs-aspect-ratio:42.8571428571%}.fixed-top{top:0}.fixed-bottom,.fixed-top{position:fixed;right:0;left:0;z-index:1030}.fixed-bottom{bottom:0}.sticky-top{top:0}.sticky-bottom,.sticky-top{position:sticky;z-index:1020}.sticky-bottom{bottom:0}@media (min-width:576px){.sticky-sm-top{position:sticky;top:0;z-index:1020}.sticky-sm-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width:768px){.sticky-md-top{position:sticky;top:0;z-index:1020}.sticky-md-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width:992px){.sticky-lg-top{position:sticky;top:0;z-index:1020}.sticky-lg-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width:1200px){.sticky-xl-top{position:sticky;top:0;z-index:1020}.sticky-xl-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width:1400px){.sticky-xxl-top{position:sticky;top:0;z-index:1020}.sticky-xxl-bottom{position:sticky;bottom:0;z-index:1020}}.hstack{-webkit-box-orient:horizontal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-item-align:stretch}.hstack,.vstack{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-direction:normal;align-self:stretch}.vstack{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;-webkit-box-orient:vertical;-ms-flex-direction:column;flex-direction:column;-ms-flex-item-align:stretch}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption),.visually-hidden:not(caption){position:absolute!important}.stretched-link:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;content:""}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vr{display:inline-block;-ms-flex-item-align:stretch;align-self:stretch;width:1px;min-height:1em;background-color:currentcolor;opacity:.25}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.float-start{float:left!important}.float-end{float:right!important}.float-none{float:none!important}.object-fit-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-none{-o-object-fit:none!important;object-fit:none!important}.opacity-0{opacity:0!important}.opacity-25{opacity:.25!important}.opacity-50{opacity:.5!important}.opacity-75{opacity:.75!important}.opacity-100{opacity:1!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.overflow-visible{overflow:visible!important}.overflow-scroll{overflow:scroll!important}.overflow-x-auto{overflow-x:auto!important}.overflow-x-hidden{overflow-x:hidden!important}.overflow-x-visible{overflow-x:visible!important}.overflow-x-scroll{overflow-x:scroll!important}.overflow-y-auto{overflow-y:auto!important}.overflow-y-hidden{overflow-y:hidden!important}.overflow-y-visible{overflow-y:visible!important}.overflow-y-scroll{overflow-y:scroll!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-grid{display:grid!important}.d-inline-grid{display:inline-grid!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}.d-none{display:none!important}.shadow{-webkit-box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important;box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-sm{-webkit-box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important;box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow-lg{-webkit-box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important;box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{-webkit-box-shadow:none!important;box-shadow:none!important}.focus-ring-primary{--bs-focus-ring-color:rgba(var(--bs-primary-rgb),var(--bs-focus-ring-opacity))}.focus-ring-secondary{--bs-focus-ring-color:rgba(var(--bs-secondary-rgb),var(--bs-focus-ring-opacity))}.focus-ring-success{--bs-focus-ring-color:rgba(var(--bs-success-rgb),var(--bs-focus-ring-opacity))}.focus-ring-info{--bs-focus-ring-color:rgba(var(--bs-info-rgb),var(--bs-focus-ring-opacity))}.focus-ring-warning{--bs-focus-ring-color:rgba(var(--bs-warning-rgb),var(--bs-focus-ring-opacity))}.focus-ring-danger{--bs-focus-ring-color:rgba(var(--bs-danger-rgb),var(--bs-focus-ring-opacity))}.focus-ring-light{--bs-focus-ring-color:rgba(var(--bs-light-rgb),var(--bs-focus-ring-opacity))}.focus-ring-dark{--bs-focus-ring-color:rgba(var(--bs-dark-rgb),var(--bs-focus-ring-opacity))}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.top-0{top:0!important}.top-50{top:50%!important}.top-100{top:100%!important}.bottom-0{bottom:0!important}.bottom-50{bottom:50%!important}.bottom-100{bottom:100%!important}.start-0{left:0!important}.start-50{left:50%!important}.start-100{left:100%!important}.end-0{right:0!important}.end-50{right:50%!important}.end-100{right:100%!important}.translate-middle{-webkit-transform:translate(-50%,-50%)!important;transform:translate(-50%,-50%)!important}.translate-middle-x{-webkit-transform:translateX(-50%)!important;transform:translateX(-50%)!important}.translate-middle-y{-webkit-transform:translateY(-50%)!important;transform:translateY(-50%)!important}.border{border:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-0{border:0!important}.border-top{border-top:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-top-0{border-top:0!important}.border-end{border-right:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-end-0{border-right:0!important}.border-bottom{border-bottom:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-bottom-0{border-bottom:0!important}.border-start{border-left:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-start-0{border-left:0!important}.border-primary{--bs-border-opacity:1;border-color:rgba(var(--bs-primary-rgb),var(--bs-border-opacity))!important}.border-secondary{--bs-border-opacity:1;border-color:rgba(var(--bs-secondary-rgb),var(--bs-border-opacity))!important}.border-success{--bs-border-opacity:1;border-color:rgba(var(--bs-success-rgb),var(--bs-border-opacity))!important}.border-info{--bs-border-opacity:1;border-color:rgba(var(--bs-info-rgb),var(--bs-border-opacity))!important}.border-warning{--bs-border-opacity:1;border-color:rgba(var(--bs-warning-rgb),var(--bs-border-opacity))!important}.border-danger{--bs-border-opacity:1;border-color:rgba(var(--bs-danger-rgb),var(--bs-border-opacity))!important}.border-light{--bs-border-opacity:1;border-color:rgba(var(--bs-light-rgb),var(--bs-border-opacity))!important}.border-dark{--bs-border-opacity:1;border-color:rgba(var(--bs-dark-rgb),var(--bs-border-opacity))!important}.border-black{--bs-border-opacity:1;border-color:rgba(var(--bs-black-rgb),var(--bs-border-opacity))!important}.border-white{--bs-border-opacity:1;border-color:rgba(var(--bs-white-rgb),var(--bs-border-opacity))!important}.border-primary-subtle{border-color:var(--bs-primary-border-subtle)!important}.border-secondary-subtle{border-color:var(--bs-secondary-border-subtle)!important}.border-success-subtle{border-color:var(--bs-success-border-subtle)!important}.border-info-subtle{border-color:var(--bs-info-border-subtle)!important}.border-warning-subtle{border-color:var(--bs-warning-border-subtle)!important}.border-danger-subtle{border-color:var(--bs-danger-border-subtle)!important}.border-light-subtle{border-color:var(--bs-light-border-subtle)!important}.border-dark-subtle{border-color:var(--bs-dark-border-subtle)!important}.border-1{border-width:1px!important}.border-2{border-width:2px!important}.border-3{border-width:3px!important}.border-4{border-width:4px!important}.border-5{border-width:5px!important}.border-opacity-10{--bs-border-opacity:0.1}.border-opacity-25{--bs-border-opacity:0.25}.border-opacity-50{--bs-border-opacity:0.5}.border-opacity-75{--bs-border-opacity:0.75}.border-opacity-100{--bs-border-opacity:1}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.mw-100{max-width:100%!important}.vw-100{width:100vw!important}.min-vw-100{min-width:100vw!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mh-100{max-height:100%!important}.vh-100{height:100vh!important}.min-vh-100{min-height:100vh!important}.flex-fill{-webkit-box-flex:1!important;-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-row{-webkit-box-orient:horizontal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-column,.flex-row{-webkit-box-direction:normal!important}.flex-column{-webkit-box-orient:vertical!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-row-reverse{-webkit-box-orient:horizontal!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-column-reverse,.flex-row-reverse{-webkit-box-direction:reverse!important}.flex-column-reverse{-webkit-box-orient:vertical!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-grow-0{-webkit-box-flex:0!important;-ms-flex-positive:0!important;flex-grow:0!important}.flex-grow-1{-webkit-box-flex:1!important;-ms-flex-positive:1!important;flex-grow:1!important}.flex-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-evenly{-webkit-box-pack:space-evenly!important;-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.align-items-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.align-items-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.align-items-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}.order-first{-webkit-box-ordinal-group:0!important;-ms-flex-order:-1!important;order:-1!important}.order-0{-webkit-box-ordinal-group:1!important;-ms-flex-order:0!important;order:0!important}.order-1{-webkit-box-ordinal-group:2!important;-ms-flex-order:1!important;order:1!important}.order-2{-webkit-box-ordinal-group:3!important;-ms-flex-order:2!important;order:2!important}.order-3{-webkit-box-ordinal-group:4!important;-ms-flex-order:3!important;order:3!important}.order-4{-webkit-box-ordinal-group:5!important;-ms-flex-order:4!important;order:4!important}.order-5{-webkit-box-ordinal-group:6!important;-ms-flex-order:5!important;order:5!important}.order-last{-webkit-box-ordinal-group:7!important;-ms-flex-order:6!important;order:6!important}.m-0{margin:0!important}.m-1{margin:.25rem!important}.m-2{margin:.5rem!important}.m-3{margin:1rem!important}.m-4{margin:1.5rem!important}.m-5{margin:3rem!important}.m-auto{margin:auto!important}.mx-0{margin-right:0!important;margin-left:0!important}.mx-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-3{margin-right:1rem!important;margin-left:1rem!important}.mx-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-5{margin-right:3rem!important;margin-left:3rem!important}.mx-auto{margin-right:auto!important;margin-left:auto!important}.my-0{margin-top:0!important;margin-bottom:0!important}.my-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-0{margin-top:0!important}.mt-1{margin-top:.25rem!important}.mt-2{margin-top:.5rem!important}.mt-3{margin-top:1rem!important}.mt-4{margin-top:1.5rem!important}.mt-5{margin-top:3rem!important}.mt-auto{margin-top:auto!important}.me-0{margin-right:0!important}.me-1{margin-right:.25rem!important}.me-2{margin-right:.5rem!important}.me-3{margin-right:1rem!important}.me-4{margin-right:1.5rem!important}.me-5{margin-right:3rem!important}.me-auto{margin-right:auto!important}.mb-0{margin-bottom:0!important}.mb-1{margin-bottom:.25rem!important}.mb-2{margin-bottom:.5rem!important}.mb-3{margin-bottom:1rem!important}.mb-4{margin-bottom:1.5rem!important}.mb-5{margin-bottom:3rem!important}.mb-auto{margin-bottom:auto!important}.ms-0{margin-left:0!important}.ms-1{margin-left:.25rem!important}.ms-2{margin-left:.5rem!important}.ms-3{margin-left:1rem!important}.ms-4{margin-left:1.5rem!important}.ms-5{margin-left:3rem!important}.ms-auto{margin-left:auto!important}.p-0{padding:0!important}.p-1{padding:.25rem!important}.p-2{padding:.5rem!important}.p-3{padding:1rem!important}.p-4{padding:1.5rem!important}.p-5{padding:3rem!important}.px-0{padding-right:0!important;padding-left:0!important}.px-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-3{padding-right:1rem!important;padding-left:1rem!important}.px-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-5{padding-right:3rem!important;padding-left:3rem!important}.py-0{padding-top:0!important;padding-bottom:0!important}.py-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-0{padding-top:0!important}.pt-1{padding-top:.25rem!important}.pt-2{padding-top:.5rem!important}.pt-3{padding-top:1rem!important}.pt-4{padding-top:1.5rem!important}.pt-5{padding-top:3rem!important}.pe-0{padding-right:0!important}.pe-1{padding-right:.25rem!important}.pe-2{padding-right:.5rem!important}.pe-3{padding-right:1rem!important}.pe-4{padding-right:1.5rem!important}.pe-5{padding-right:3rem!important}.pb-0{padding-bottom:0!important}.pb-1{padding-bottom:.25rem!important}.pb-2{padding-bottom:.5rem!important}.pb-3{padding-bottom:1rem!important}.pb-4{padding-bottom:1.5rem!important}.pb-5{padding-bottom:3rem!important}.ps-0{padding-left:0!important}.ps-1{padding-left:.25rem!important}.ps-2{padding-left:.5rem!important}.ps-3{padding-left:1rem!important}.ps-4{padding-left:1.5rem!important}.ps-5{padding-left:3rem!important}.gap-0{gap:0!important}.gap-1{gap:.25rem!important}.gap-2{gap:.5rem!important}.gap-3{gap:1rem!important}.gap-4{gap:1.5rem!important}.gap-5{gap:3rem!important}.row-gap-0{row-gap:0!important}.row-gap-1{row-gap:.25rem!important}.row-gap-2{row-gap:.5rem!important}.row-gap-3{row-gap:1rem!important}.row-gap-4{row-gap:1.5rem!important}.row-gap-5{row-gap:3rem!important}.column-gap-0{-moz-column-gap:0!important;-webkit-column-gap:0!important;column-gap:0!important}.column-gap-1{-moz-column-gap:.25rem!important;-webkit-column-gap:.25rem!important;column-gap:.25rem!important}.column-gap-2{-moz-column-gap:.5rem!important;-webkit-column-gap:.5rem!important;column-gap:.5rem!important}.column-gap-3{-moz-column-gap:1rem!important;-webkit-column-gap:1rem!important;column-gap:1rem!important}.column-gap-4{-moz-column-gap:1.5rem!important;-webkit-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-5{-moz-column-gap:3rem!important;-webkit-column-gap:3rem!important;column-gap:3rem!important}.font-monospace{font-family:var(--bs-font-monospace)!important}.fs-1{font-size:calc(1.375rem + 1.5vw)!important}.fs-2{font-size:calc(1.325rem + .9vw)!important}.fs-3{font-size:calc(1.3rem + .6vw)!important}.fs-4{font-size:calc(1.275rem + .3vw)!important}.fs-5{font-size:1.25rem!important}.fs-6{font-size:1rem!important}.fst-italic{font-style:italic!important}.fst-normal{font-style:normal!important}.fw-lighter{font-weight:lighter!important}.fw-light{font-weight:300!important}.fw-normal{font-weight:400!important}.fw-medium{font-weight:500!important}.fw-semibold{font-weight:600!important}.fw-bold{font-weight:700!important}.fw-bolder{font-weight:bolder!important}.lh-1{line-height:1!important}.lh-sm{line-height:1.25!important}.lh-base{line-height:1.5!important}.lh-lg{line-height:2!important}.text-start{text-align:left!important}.text-end{text-align:right!important}.text-center{text-align:center!important}.text-decoration-none{text-decoration:none!important}.text-decoration-underline{text-decoration:underline!important}.text-decoration-line-through{text-decoration:line-through!important}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-break{word-wrap:break-word!important;word-break:break-word!important}.text-primary{--bs-text-opacity:1;color:rgba(var(--bs-primary-rgb),var(--bs-text-opacity))!important}.text-secondary{--bs-text-opacity:1;color:rgba(var(--bs-secondary-rgb),var(--bs-text-opacity))!important}.text-success{--bs-text-opacity:1;color:rgba(var(--bs-success-rgb),var(--bs-text-opacity))!important}.text-info{--bs-text-opacity:1;color:rgba(var(--bs-info-rgb),var(--bs-text-opacity))!important}.text-warning{--bs-text-opacity:1;color:rgba(var(--bs-warning-rgb),var(--bs-text-opacity))!important}.text-danger{--bs-text-opacity:1;color:rgba(var(--bs-danger-rgb),var(--bs-text-opacity))!important}.text-light{--bs-text-opacity:1;color:rgba(var(--bs-light-rgb),var(--bs-text-opacity))!important}.text-dark{--bs-text-opacity:1;color:rgba(var(--bs-dark-rgb),var(--bs-text-opacity))!important}.text-black{--bs-text-opacity:1;color:rgba(var(--bs-black-rgb),var(--bs-text-opacity))!important}.text-white{--bs-text-opacity:1;color:rgba(var(--bs-white-rgb),var(--bs-text-opacity))!important}.text-body{--bs-text-opacity:1;color:rgba(var(--bs-body-color-rgb),var(--bs-text-opacity))!important}.text-muted{--bs-text-opacity:1;color:var(--bs-secondary-color)!important}.text-black-50{--bs-text-opacity:1;color:rgba(0,0,0,.5)!important}.text-white-50{--bs-text-opacity:1;color:hsla(0,0%,100%,.5)!important}.text-body-secondary{--bs-text-opacity:1;color:var(--bs-secondary-color)!important}.text-body-tertiary{--bs-text-opacity:1;color:var(--bs-tertiary-color)!important}.text-body-emphasis{--bs-text-opacity:1;color:var(--bs-emphasis-color)!important}.text-reset{--bs-text-opacity:1;color:inherit!important}.text-opacity-25{--bs-text-opacity:0.25}.text-opacity-50{--bs-text-opacity:0.5}.text-opacity-75{--bs-text-opacity:0.75}.text-opacity-100{--bs-text-opacity:1}.text-primary-emphasis{color:var(--bs-primary-text-emphasis)!important}.text-secondary-emphasis{color:var(--bs-secondary-text-emphasis)!important}.text-success-emphasis{color:var(--bs-success-text-emphasis)!important}.text-info-emphasis{color:var(--bs-info-text-emphasis)!important}.text-warning-emphasis{color:var(--bs-warning-text-emphasis)!important}.text-danger-emphasis{color:var(--bs-danger-text-emphasis)!important}.text-light-emphasis{color:var(--bs-light-text-emphasis)!important}.text-dark-emphasis{color:var(--bs-dark-text-emphasis)!important}.link-opacity-10,.link-opacity-10-hover:hover{--bs-link-opacity:0.1}.link-opacity-25,.link-opacity-25-hover:hover{--bs-link-opacity:0.25}.link-opacity-50,.link-opacity-50-hover:hover{--bs-link-opacity:0.5}.link-opacity-75,.link-opacity-75-hover:hover{--bs-link-opacity:0.75}.link-opacity-100,.link-opacity-100-hover:hover{--bs-link-opacity:1}.link-offset-1,.link-offset-1-hover:hover{text-underline-offset:.125em!important}.link-offset-2,.link-offset-2-hover:hover{text-underline-offset:.25em!important}.link-offset-3,.link-offset-3-hover:hover{text-underline-offset:.375em!important}.link-underline-primary{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-primary-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-primary-rgb),var(--bs-link-underline-opacity))!important}.link-underline-secondary{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-secondary-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-secondary-rgb),var(--bs-link-underline-opacity))!important}.link-underline-success{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-success-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-success-rgb),var(--bs-link-underline-opacity))!important}.link-underline-info{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-info-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-info-rgb),var(--bs-link-underline-opacity))!important}.link-underline-warning{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-warning-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-warning-rgb),var(--bs-link-underline-opacity))!important}.link-underline-danger{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-danger-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-danger-rgb),var(--bs-link-underline-opacity))!important}.link-underline-light{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-light-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-light-rgb),var(--bs-link-underline-opacity))!important}.link-underline-dark{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-dark-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-dark-rgb),var(--bs-link-underline-opacity))!important}.link-underline{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-underline-opacity,1))!important}.link-underline-opacity-0,.link-underline-opacity-0-hover:hover{--bs-link-underline-opacity:0}.link-underline-opacity-10,.link-underline-opacity-10-hover:hover{--bs-link-underline-opacity:0.1}.link-underline-opacity-25,.link-underline-opacity-25-hover:hover{--bs-link-underline-opacity:0.25}.link-underline-opacity-50,.link-underline-opacity-50-hover:hover{--bs-link-underline-opacity:0.5}.link-underline-opacity-75,.link-underline-opacity-75-hover:hover{--bs-link-underline-opacity:0.75}.link-underline-opacity-100,.link-underline-opacity-100-hover:hover{--bs-link-underline-opacity:1}.bg-primary{--bs-bg-opacity:1;background-color:rgba(var(--bs-primary-rgb),var(--bs-bg-opacity))!important}.bg-secondary{--bs-bg-opacity:1;background-color:rgba(var(--bs-secondary-rgb),var(--bs-bg-opacity))!important}.bg-success{--bs-bg-opacity:1;background-color:rgba(var(--bs-success-rgb),var(--bs-bg-opacity))!important}.bg-info{--bs-bg-opacity:1;background-color:rgba(var(--bs-info-rgb),var(--bs-bg-opacity))!important}.bg-warning{--bs-bg-opacity:1;background-color:rgba(var(--bs-warning-rgb),var(--bs-bg-opacity))!important}.bg-danger{--bs-bg-opacity:1;background-color:rgba(var(--bs-danger-rgb),var(--bs-bg-opacity))!important}.bg-light{--bs-bg-opacity:1;background-color:rgba(var(--bs-light-rgb),var(--bs-bg-opacity))!important}.bg-dark{--bs-bg-opacity:1;background-color:rgba(var(--bs-dark-rgb),var(--bs-bg-opacity))!important}.bg-black{--bs-bg-opacity:1;background-color:rgba(var(--bs-black-rgb),var(--bs-bg-opacity))!important}.bg-white{--bs-bg-opacity:1;background-color:rgba(var(--bs-white-rgb),var(--bs-bg-opacity))!important}.bg-body{--bs-bg-opacity:1;background-color:rgba(var(--bs-body-bg-rgb),var(--bs-bg-opacity))!important}.bg-transparent{--bs-bg-opacity:1;background-color:transparent!important}.bg-body-secondary{--bs-bg-opacity:1;background-color:rgba(var(--bs-secondary-bg-rgb),var(--bs-bg-opacity))!important}.bg-body-tertiary{--bs-bg-opacity:1;background-color:rgba(var(--bs-tertiary-bg-rgb),var(--bs-bg-opacity))!important}.bg-opacity-10{--bs-bg-opacity:0.1}.bg-opacity-25{--bs-bg-opacity:0.25}.bg-opacity-50{--bs-bg-opacity:0.5}.bg-opacity-75{--bs-bg-opacity:0.75}.bg-opacity-100{--bs-bg-opacity:1}.bg-primary-subtle{background-color:var(--bs-primary-bg-subtle)!important}.bg-secondary-subtle{background-color:var(--bs-secondary-bg-subtle)!important}.bg-success-subtle{background-color:var(--bs-success-bg-subtle)!important}.bg-info-subtle{background-color:var(--bs-info-bg-subtle)!important}.bg-warning-subtle{background-color:var(--bs-warning-bg-subtle)!important}.bg-danger-subtle{background-color:var(--bs-danger-bg-subtle)!important}.bg-light-subtle{background-color:var(--bs-light-bg-subtle)!important}.bg-dark-subtle{background-color:var(--bs-dark-bg-subtle)!important}.bg-gradient{background-image:var(--bs-gradient)!important}.user-select-all{-webkit-user-select:all!important;-moz-user-select:all!important;-ms-user-select:all!important;user-select:all!important}.user-select-auto{-webkit-user-select:auto!important;-moz-user-select:auto!important;-ms-user-select:auto!important;user-select:auto!important}.user-select-none{-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important;user-select:none!important}.pe-none{pointer-events:none!important}.pe-auto{pointer-events:auto!important}.rounded{border-radius:var(--bs-border-radius)!important}.rounded-0{border-radius:0!important}.rounded-1{border-radius:var(--bs-border-radius-sm)!important}.rounded-2{border-radius:var(--bs-border-radius)!important}.rounded-3{border-radius:var(--bs-border-radius-lg)!important}.rounded-4{border-radius:var(--bs-border-radius-xl)!important}.rounded-5{border-radius:var(--bs-border-radius-xxl)!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:var(--bs-border-radius-pill)!important}.rounded-top{border-top-left-radius:var(--bs-border-radius)!important;border-top-right-radius:var(--bs-border-radius)!important}.rounded-top-0{border-top-left-radius:0!important;border-top-right-radius:0!important}.rounded-top-1{border-top-left-radius:var(--bs-border-radius-sm)!important;border-top-right-radius:var(--bs-border-radius-sm)!important}.rounded-top-2{border-top-left-radius:var(--bs-border-radius)!important;border-top-right-radius:var(--bs-border-radius)!important}.rounded-top-3{border-top-left-radius:var(--bs-border-radius-lg)!important;border-top-right-radius:var(--bs-border-radius-lg)!important}.rounded-top-4{border-top-left-radius:var(--bs-border-radius-xl)!important;border-top-right-radius:var(--bs-border-radius-xl)!important}.rounded-top-5{border-top-left-radius:var(--bs-border-radius-xxl)!important;border-top-right-radius:var(--bs-border-radius-xxl)!important}.rounded-top-circle{border-top-left-radius:50%!important;border-top-right-radius:50%!important}.rounded-top-pill{border-top-left-radius:var(--bs-border-radius-pill)!important;border-top-right-radius:var(--bs-border-radius-pill)!important}.rounded-end{border-top-right-radius:var(--bs-border-radius)!important;border-bottom-right-radius:var(--bs-border-radius)!important}.rounded-end-0{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.rounded-end-1{border-top-right-radius:var(--bs-border-radius-sm)!important;border-bottom-right-radius:var(--bs-border-radius-sm)!important}.rounded-end-2{border-top-right-radius:var(--bs-border-radius)!important;border-bottom-right-radius:var(--bs-border-radius)!important}.rounded-end-3{border-top-right-radius:var(--bs-border-radius-lg)!important;border-bottom-right-radius:var(--bs-border-radius-lg)!important}.rounded-end-4{border-top-right-radius:var(--bs-border-radius-xl)!important;border-bottom-right-radius:var(--bs-border-radius-xl)!important}.rounded-end-5{border-top-right-radius:var(--bs-border-radius-xxl)!important;border-bottom-right-radius:var(--bs-border-radius-xxl)!important}.rounded-end-circle{border-top-right-radius:50%!important;border-bottom-right-radius:50%!important}.rounded-end-pill{border-top-right-radius:var(--bs-border-radius-pill)!important;border-bottom-right-radius:var(--bs-border-radius-pill)!important}.rounded-bottom{border-bottom-right-radius:var(--bs-border-radius)!important;border-bottom-left-radius:var(--bs-border-radius)!important}.rounded-bottom-0{border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.rounded-bottom-1{border-bottom-right-radius:var(--bs-border-radius-sm)!important;border-bottom-left-radius:var(--bs-border-radius-sm)!important}.rounded-bottom-2{border-bottom-right-radius:var(--bs-border-radius)!important;border-bottom-left-radius:var(--bs-border-radius)!important}.rounded-bottom-3{border-bottom-right-radius:var(--bs-border-radius-lg)!important;border-bottom-left-radius:var(--bs-border-radius-lg)!important}.rounded-bottom-4{border-bottom-right-radius:var(--bs-border-radius-xl)!important;border-bottom-left-radius:var(--bs-border-radius-xl)!important}.rounded-bottom-5{border-bottom-right-radius:var(--bs-border-radius-xxl)!important;border-bottom-left-radius:var(--bs-border-radius-xxl)!important}.rounded-bottom-circle{border-bottom-right-radius:50%!important;border-bottom-left-radius:50%!important}.rounded-bottom-pill{border-bottom-right-radius:var(--bs-border-radius-pill)!important;border-bottom-left-radius:var(--bs-border-radius-pill)!important}.rounded-start{border-bottom-left-radius:var(--bs-border-radius)!important;border-top-left-radius:var(--bs-border-radius)!important}.rounded-start-0{border-bottom-left-radius:0!important;border-top-left-radius:0!important}.rounded-start-1{border-bottom-left-radius:var(--bs-border-radius-sm)!important;border-top-left-radius:var(--bs-border-radius-sm)!important}.rounded-start-2{border-bottom-left-radius:var(--bs-border-radius)!important;border-top-left-radius:var(--bs-border-radius)!important}.rounded-start-3{border-bottom-left-radius:var(--bs-border-radius-lg)!important;border-top-left-radius:var(--bs-border-radius-lg)!important}.rounded-start-4{border-bottom-left-radius:var(--bs-border-radius-xl)!important;border-top-left-radius:var(--bs-border-radius-xl)!important}.rounded-start-5{border-bottom-left-radius:var(--bs-border-radius-xxl)!important;border-top-left-radius:var(--bs-border-radius-xxl)!important}.rounded-start-circle{border-bottom-left-radius:50%!important;border-top-left-radius:50%!important}.rounded-start-pill{border-bottom-left-radius:var(--bs-border-radius-pill)!important;border-top-left-radius:var(--bs-border-radius-pill)!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}.z-n1{z-index:-1!important}.z-0{z-index:0!important}.z-1{z-index:1!important}.z-2{z-index:2!important}.z-3{z-index:3!important}@media (min-width:576px){.float-sm-start{float:left!important}.float-sm-end{float:right!important}.float-sm-none{float:none!important}.object-fit-sm-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-sm-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-sm-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-sm-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-sm-none{-o-object-fit:none!important;object-fit:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-grid{display:grid!important}.d-sm-inline-grid{display:inline-grid!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-sm-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}.d-sm-none{display:none!important}.flex-sm-fill{-webkit-box-flex:1!important;-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-sm-row{-webkit-box-orient:horizontal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-sm-column,.flex-sm-row{-webkit-box-direction:normal!important}.flex-sm-column{-webkit-box-orient:vertical!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-sm-row-reverse{-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-sm-column-reverse{-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-sm-grow-0{-webkit-box-flex:0!important;-ms-flex-positive:0!important;flex-grow:0!important}.flex-sm-grow-1{-webkit-box-flex:1!important;-ms-flex-positive:1!important;flex-grow:1!important}.flex-sm-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-sm-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-sm-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-sm-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-sm-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-sm-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-sm-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-sm-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-sm-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-sm-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-sm-evenly{-webkit-box-pack:space-evenly!important;-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-sm-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.align-items-sm-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.align-items-sm-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.align-items-sm-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-sm-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-sm-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-sm-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-sm-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-sm-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-sm-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-sm-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-sm-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-sm-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-sm-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-sm-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-sm-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-sm-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}.order-sm-first{-webkit-box-ordinal-group:0!important;-ms-flex-order:-1!important;order:-1!important}.order-sm-0{-webkit-box-ordinal-group:1!important;-ms-flex-order:0!important;order:0!important}.order-sm-1{-webkit-box-ordinal-group:2!important;-ms-flex-order:1!important;order:1!important}.order-sm-2{-webkit-box-ordinal-group:3!important;-ms-flex-order:2!important;order:2!important}.order-sm-3{-webkit-box-ordinal-group:4!important;-ms-flex-order:3!important;order:3!important}.order-sm-4{-webkit-box-ordinal-group:5!important;-ms-flex-order:4!important;order:4!important}.order-sm-5{-webkit-box-ordinal-group:6!important;-ms-flex-order:5!important;order:5!important}.order-sm-last{-webkit-box-ordinal-group:7!important;-ms-flex-order:6!important;order:6!important}.m-sm-0{margin:0!important}.m-sm-1{margin:.25rem!important}.m-sm-2{margin:.5rem!important}.m-sm-3{margin:1rem!important}.m-sm-4{margin:1.5rem!important}.m-sm-5{margin:3rem!important}.m-sm-auto{margin:auto!important}.mx-sm-0{margin-right:0!important;margin-left:0!important}.mx-sm-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-sm-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-sm-3{margin-right:1rem!important;margin-left:1rem!important}.mx-sm-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-sm-5{margin-right:3rem!important;margin-left:3rem!important}.mx-sm-auto{margin-right:auto!important;margin-left:auto!important}.my-sm-0{margin-top:0!important;margin-bottom:0!important}.my-sm-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-sm-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-sm-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-sm-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-sm-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-sm-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-sm-0{margin-top:0!important}.mt-sm-1{margin-top:.25rem!important}.mt-sm-2{margin-top:.5rem!important}.mt-sm-3{margin-top:1rem!important}.mt-sm-4{margin-top:1.5rem!important}.mt-sm-5{margin-top:3rem!important}.mt-sm-auto{margin-top:auto!important}.me-sm-0{margin-right:0!important}.me-sm-1{margin-right:.25rem!important}.me-sm-2{margin-right:.5rem!important}.me-sm-3{margin-right:1rem!important}.me-sm-4{margin-right:1.5rem!important}.me-sm-5{margin-right:3rem!important}.me-sm-auto{margin-right:auto!important}.mb-sm-0{margin-bottom:0!important}.mb-sm-1{margin-bottom:.25rem!important}.mb-sm-2{margin-bottom:.5rem!important}.mb-sm-3{margin-bottom:1rem!important}.mb-sm-4{margin-bottom:1.5rem!important}.mb-sm-5{margin-bottom:3rem!important}.mb-sm-auto{margin-bottom:auto!important}.ms-sm-0{margin-left:0!important}.ms-sm-1{margin-left:.25rem!important}.ms-sm-2{margin-left:.5rem!important}.ms-sm-3{margin-left:1rem!important}.ms-sm-4{margin-left:1.5rem!important}.ms-sm-5{margin-left:3rem!important}.ms-sm-auto{margin-left:auto!important}.p-sm-0{padding:0!important}.p-sm-1{padding:.25rem!important}.p-sm-2{padding:.5rem!important}.p-sm-3{padding:1rem!important}.p-sm-4{padding:1.5rem!important}.p-sm-5{padding:3rem!important}.px-sm-0{padding-right:0!important;padding-left:0!important}.px-sm-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-sm-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-sm-3{padding-right:1rem!important;padding-left:1rem!important}.px-sm-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-sm-5{padding-right:3rem!important;padding-left:3rem!important}.py-sm-0{padding-top:0!important;padding-bottom:0!important}.py-sm-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-sm-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-sm-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-sm-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-sm-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-sm-0{padding-top:0!important}.pt-sm-1{padding-top:.25rem!important}.pt-sm-2{padding-top:.5rem!important}.pt-sm-3{padding-top:1rem!important}.pt-sm-4{padding-top:1.5rem!important}.pt-sm-5{padding-top:3rem!important}.pe-sm-0{padding-right:0!important}.pe-sm-1{padding-right:.25rem!important}.pe-sm-2{padding-right:.5rem!important}.pe-sm-3{padding-right:1rem!important}.pe-sm-4{padding-right:1.5rem!important}.pe-sm-5{padding-right:3rem!important}.pb-sm-0{padding-bottom:0!important}.pb-sm-1{padding-bottom:.25rem!important}.pb-sm-2{padding-bottom:.5rem!important}.pb-sm-3{padding-bottom:1rem!important}.pb-sm-4{padding-bottom:1.5rem!important}.pb-sm-5{padding-bottom:3rem!important}.ps-sm-0{padding-left:0!important}.ps-sm-1{padding-left:.25rem!important}.ps-sm-2{padding-left:.5rem!important}.ps-sm-3{padding-left:1rem!important}.ps-sm-4{padding-left:1.5rem!important}.ps-sm-5{padding-left:3rem!important}.gap-sm-0{gap:0!important}.gap-sm-1{gap:.25rem!important}.gap-sm-2{gap:.5rem!important}.gap-sm-3{gap:1rem!important}.gap-sm-4{gap:1.5rem!important}.gap-sm-5{gap:3rem!important}.row-gap-sm-0{row-gap:0!important}.row-gap-sm-1{row-gap:.25rem!important}.row-gap-sm-2{row-gap:.5rem!important}.row-gap-sm-3{row-gap:1rem!important}.row-gap-sm-4{row-gap:1.5rem!important}.row-gap-sm-5{row-gap:3rem!important}.column-gap-sm-0{-moz-column-gap:0!important;-webkit-column-gap:0!important;column-gap:0!important}.column-gap-sm-1{-moz-column-gap:.25rem!important;-webkit-column-gap:.25rem!important;column-gap:.25rem!important}.column-gap-sm-2{-moz-column-gap:.5rem!important;-webkit-column-gap:.5rem!important;column-gap:.5rem!important}.column-gap-sm-3{-moz-column-gap:1rem!important;-webkit-column-gap:1rem!important;column-gap:1rem!important}.column-gap-sm-4{-moz-column-gap:1.5rem!important;-webkit-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-sm-5{-moz-column-gap:3rem!important;-webkit-column-gap:3rem!important;column-gap:3rem!important}.text-sm-start{text-align:left!important}.text-sm-end{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.float-md-start{float:left!important}.float-md-end{float:right!important}.float-md-none{float:none!important}.object-fit-md-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-md-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-md-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-md-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-md-none{-o-object-fit:none!important;object-fit:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-grid{display:grid!important}.d-md-inline-grid{display:inline-grid!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-md-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}.d-md-none{display:none!important}.flex-md-fill{-webkit-box-flex:1!important;-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-md-row{-webkit-box-orient:horizontal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-md-column,.flex-md-row{-webkit-box-direction:normal!important}.flex-md-column{-webkit-box-orient:vertical!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-md-row-reverse{-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-md-column-reverse{-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-md-grow-0{-webkit-box-flex:0!important;-ms-flex-positive:0!important;flex-grow:0!important}.flex-md-grow-1{-webkit-box-flex:1!important;-ms-flex-positive:1!important;flex-grow:1!important}.flex-md-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-md-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-md-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-md-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-md-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-md-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-md-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-md-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-md-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-md-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-md-evenly{-webkit-box-pack:space-evenly!important;-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-md-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.align-items-md-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.align-items-md-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.align-items-md-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-md-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-md-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-md-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-md-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-md-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-md-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-md-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-md-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-md-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-md-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-md-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-md-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-md-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}.order-md-first{-webkit-box-ordinal-group:0!important;-ms-flex-order:-1!important;order:-1!important}.order-md-0{-webkit-box-ordinal-group:1!important;-ms-flex-order:0!important;order:0!important}.order-md-1{-webkit-box-ordinal-group:2!important;-ms-flex-order:1!important;order:1!important}.order-md-2{-webkit-box-ordinal-group:3!important;-ms-flex-order:2!important;order:2!important}.order-md-3{-webkit-box-ordinal-group:4!important;-ms-flex-order:3!important;order:3!important}.order-md-4{-webkit-box-ordinal-group:5!important;-ms-flex-order:4!important;order:4!important}.order-md-5{-webkit-box-ordinal-group:6!important;-ms-flex-order:5!important;order:5!important}.order-md-last{-webkit-box-ordinal-group:7!important;-ms-flex-order:6!important;order:6!important}.m-md-0{margin:0!important}.m-md-1{margin:.25rem!important}.m-md-2{margin:.5rem!important}.m-md-3{margin:1rem!important}.m-md-4{margin:1.5rem!important}.m-md-5{margin:3rem!important}.m-md-auto{margin:auto!important}.mx-md-0{margin-right:0!important;margin-left:0!important}.mx-md-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-md-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-md-3{margin-right:1rem!important;margin-left:1rem!important}.mx-md-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-md-5{margin-right:3rem!important;margin-left:3rem!important}.mx-md-auto{margin-right:auto!important;margin-left:auto!important}.my-md-0{margin-top:0!important;margin-bottom:0!important}.my-md-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-md-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-md-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-md-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-md-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-md-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-md-0{margin-top:0!important}.mt-md-1{margin-top:.25rem!important}.mt-md-2{margin-top:.5rem!important}.mt-md-3{margin-top:1rem!important}.mt-md-4{margin-top:1.5rem!important}.mt-md-5{margin-top:3rem!important}.mt-md-auto{margin-top:auto!important}.me-md-0{margin-right:0!important}.me-md-1{margin-right:.25rem!important}.me-md-2{margin-right:.5rem!important}.me-md-3{margin-right:1rem!important}.me-md-4{margin-right:1.5rem!important}.me-md-5{margin-right:3rem!important}.me-md-auto{margin-right:auto!important}.mb-md-0{margin-bottom:0!important}.mb-md-1{margin-bottom:.25rem!important}.mb-md-2{margin-bottom:.5rem!important}.mb-md-3{margin-bottom:1rem!important}.mb-md-4{margin-bottom:1.5rem!important}.mb-md-5{margin-bottom:3rem!important}.mb-md-auto{margin-bottom:auto!important}.ms-md-0{margin-left:0!important}.ms-md-1{margin-left:.25rem!important}.ms-md-2{margin-left:.5rem!important}.ms-md-3{margin-left:1rem!important}.ms-md-4{margin-left:1.5rem!important}.ms-md-5{margin-left:3rem!important}.ms-md-auto{margin-left:auto!important}.p-md-0{padding:0!important}.p-md-1{padding:.25rem!important}.p-md-2{padding:.5rem!important}.p-md-3{padding:1rem!important}.p-md-4{padding:1.5rem!important}.p-md-5{padding:3rem!important}.px-md-0{padding-right:0!important;padding-left:0!important}.px-md-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-md-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-md-3{padding-right:1rem!important;padding-left:1rem!important}.px-md-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-md-5{padding-right:3rem!important;padding-left:3rem!important}.py-md-0{padding-top:0!important;padding-bottom:0!important}.py-md-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-md-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-md-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-md-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-md-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-md-0{padding-top:0!important}.pt-md-1{padding-top:.25rem!important}.pt-md-2{padding-top:.5rem!important}.pt-md-3{padding-top:1rem!important}.pt-md-4{padding-top:1.5rem!important}.pt-md-5{padding-top:3rem!important}.pe-md-0{padding-right:0!important}.pe-md-1{padding-right:.25rem!important}.pe-md-2{padding-right:.5rem!important}.pe-md-3{padding-right:1rem!important}.pe-md-4{padding-right:1.5rem!important}.pe-md-5{padding-right:3rem!important}.pb-md-0{padding-bottom:0!important}.pb-md-1{padding-bottom:.25rem!important}.pb-md-2{padding-bottom:.5rem!important}.pb-md-3{padding-bottom:1rem!important}.pb-md-4{padding-bottom:1.5rem!important}.pb-md-5{padding-bottom:3rem!important}.ps-md-0{padding-left:0!important}.ps-md-1{padding-left:.25rem!important}.ps-md-2{padding-left:.5rem!important}.ps-md-3{padding-left:1rem!important}.ps-md-4{padding-left:1.5rem!important}.ps-md-5{padding-left:3rem!important}.gap-md-0{gap:0!important}.gap-md-1{gap:.25rem!important}.gap-md-2{gap:.5rem!important}.gap-md-3{gap:1rem!important}.gap-md-4{gap:1.5rem!important}.gap-md-5{gap:3rem!important}.row-gap-md-0{row-gap:0!important}.row-gap-md-1{row-gap:.25rem!important}.row-gap-md-2{row-gap:.5rem!important}.row-gap-md-3{row-gap:1rem!important}.row-gap-md-4{row-gap:1.5rem!important}.row-gap-md-5{row-gap:3rem!important}.column-gap-md-0{-moz-column-gap:0!important;-webkit-column-gap:0!important;column-gap:0!important}.column-gap-md-1{-moz-column-gap:.25rem!important;-webkit-column-gap:.25rem!important;column-gap:.25rem!important}.column-gap-md-2{-moz-column-gap:.5rem!important;-webkit-column-gap:.5rem!important;column-gap:.5rem!important}.column-gap-md-3{-moz-column-gap:1rem!important;-webkit-column-gap:1rem!important;column-gap:1rem!important}.column-gap-md-4{-moz-column-gap:1.5rem!important;-webkit-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-md-5{-moz-column-gap:3rem!important;-webkit-column-gap:3rem!important;column-gap:3rem!important}.text-md-start{text-align:left!important}.text-md-end{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.float-lg-start{float:left!important}.float-lg-end{float:right!important}.float-lg-none{float:none!important}.object-fit-lg-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-lg-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-lg-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-lg-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-lg-none{-o-object-fit:none!important;object-fit:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-grid{display:grid!important}.d-lg-inline-grid{display:inline-grid!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-lg-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}.d-lg-none{display:none!important}.flex-lg-fill{-webkit-box-flex:1!important;-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-lg-row{-webkit-box-orient:horizontal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-lg-column,.flex-lg-row{-webkit-box-direction:normal!important}.flex-lg-column{-webkit-box-orient:vertical!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-lg-row-reverse{-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-lg-column-reverse{-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-lg-grow-0{-webkit-box-flex:0!important;-ms-flex-positive:0!important;flex-grow:0!important}.flex-lg-grow-1{-webkit-box-flex:1!important;-ms-flex-positive:1!important;flex-grow:1!important}.flex-lg-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-lg-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-lg-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-lg-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-lg-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-lg-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-lg-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-lg-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-lg-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-lg-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-lg-evenly{-webkit-box-pack:space-evenly!important;-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-lg-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.align-items-lg-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.align-items-lg-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.align-items-lg-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-lg-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-lg-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-lg-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-lg-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-lg-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-lg-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-lg-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-lg-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-lg-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-lg-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-lg-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-lg-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-lg-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}.order-lg-first{-webkit-box-ordinal-group:0!important;-ms-flex-order:-1!important;order:-1!important}.order-lg-0{-webkit-box-ordinal-group:1!important;-ms-flex-order:0!important;order:0!important}.order-lg-1{-webkit-box-ordinal-group:2!important;-ms-flex-order:1!important;order:1!important}.order-lg-2{-webkit-box-ordinal-group:3!important;-ms-flex-order:2!important;order:2!important}.order-lg-3{-webkit-box-ordinal-group:4!important;-ms-flex-order:3!important;order:3!important}.order-lg-4{-webkit-box-ordinal-group:5!important;-ms-flex-order:4!important;order:4!important}.order-lg-5{-webkit-box-ordinal-group:6!important;-ms-flex-order:5!important;order:5!important}.order-lg-last{-webkit-box-ordinal-group:7!important;-ms-flex-order:6!important;order:6!important}.m-lg-0{margin:0!important}.m-lg-1{margin:.25rem!important}.m-lg-2{margin:.5rem!important}.m-lg-3{margin:1rem!important}.m-lg-4{margin:1.5rem!important}.m-lg-5{margin:3rem!important}.m-lg-auto{margin:auto!important}.mx-lg-0{margin-right:0!important;margin-left:0!important}.mx-lg-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-lg-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-lg-3{margin-right:1rem!important;margin-left:1rem!important}.mx-lg-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-lg-5{margin-right:3rem!important;margin-left:3rem!important}.mx-lg-auto{margin-right:auto!important;margin-left:auto!important}.my-lg-0{margin-top:0!important;margin-bottom:0!important}.my-lg-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-lg-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-lg-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-lg-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-lg-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-lg-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-lg-0{margin-top:0!important}.mt-lg-1{margin-top:.25rem!important}.mt-lg-2{margin-top:.5rem!important}.mt-lg-3{margin-top:1rem!important}.mt-lg-4{margin-top:1.5rem!important}.mt-lg-5{margin-top:3rem!important}.mt-lg-auto{margin-top:auto!important}.me-lg-0{margin-right:0!important}.me-lg-1{margin-right:.25rem!important}.me-lg-2{margin-right:.5rem!important}.me-lg-3{margin-right:1rem!important}.me-lg-4{margin-right:1.5rem!important}.me-lg-5{margin-right:3rem!important}.me-lg-auto{margin-right:auto!important}.mb-lg-0{margin-bottom:0!important}.mb-lg-1{margin-bottom:.25rem!important}.mb-lg-2{margin-bottom:.5rem!important}.mb-lg-3{margin-bottom:1rem!important}.mb-lg-4{margin-bottom:1.5rem!important}.mb-lg-5{margin-bottom:3rem!important}.mb-lg-auto{margin-bottom:auto!important}.ms-lg-0{margin-left:0!important}.ms-lg-1{margin-left:.25rem!important}.ms-lg-2{margin-left:.5rem!important}.ms-lg-3{margin-left:1rem!important}.ms-lg-4{margin-left:1.5rem!important}.ms-lg-5{margin-left:3rem!important}.ms-lg-auto{margin-left:auto!important}.p-lg-0{padding:0!important}.p-lg-1{padding:.25rem!important}.p-lg-2{padding:.5rem!important}.p-lg-3{padding:1rem!important}.p-lg-4{padding:1.5rem!important}.p-lg-5{padding:3rem!important}.px-lg-0{padding-right:0!important;padding-left:0!important}.px-lg-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-lg-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-lg-3{padding-right:1rem!important;padding-left:1rem!important}.px-lg-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-lg-5{padding-right:3rem!important;padding-left:3rem!important}.py-lg-0{padding-top:0!important;padding-bottom:0!important}.py-lg-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-lg-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-lg-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-lg-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-lg-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-lg-0{padding-top:0!important}.pt-lg-1{padding-top:.25rem!important}.pt-lg-2{padding-top:.5rem!important}.pt-lg-3{padding-top:1rem!important}.pt-lg-4{padding-top:1.5rem!important}.pt-lg-5{padding-top:3rem!important}.pe-lg-0{padding-right:0!important}.pe-lg-1{padding-right:.25rem!important}.pe-lg-2{padding-right:.5rem!important}.pe-lg-3{padding-right:1rem!important}.pe-lg-4{padding-right:1.5rem!important}.pe-lg-5{padding-right:3rem!important}.pb-lg-0{padding-bottom:0!important}.pb-lg-1{padding-bottom:.25rem!important}.pb-lg-2{padding-bottom:.5rem!important}.pb-lg-3{padding-bottom:1rem!important}.pb-lg-4{padding-bottom:1.5rem!important}.pb-lg-5{padding-bottom:3rem!important}.ps-lg-0{padding-left:0!important}.ps-lg-1{padding-left:.25rem!important}.ps-lg-2{padding-left:.5rem!important}.ps-lg-3{padding-left:1rem!important}.ps-lg-4{padding-left:1.5rem!important}.ps-lg-5{padding-left:3rem!important}.gap-lg-0{gap:0!important}.gap-lg-1{gap:.25rem!important}.gap-lg-2{gap:.5rem!important}.gap-lg-3{gap:1rem!important}.gap-lg-4{gap:1.5rem!important}.gap-lg-5{gap:3rem!important}.row-gap-lg-0{row-gap:0!important}.row-gap-lg-1{row-gap:.25rem!important}.row-gap-lg-2{row-gap:.5rem!important}.row-gap-lg-3{row-gap:1rem!important}.row-gap-lg-4{row-gap:1.5rem!important}.row-gap-lg-5{row-gap:3rem!important}.column-gap-lg-0{-moz-column-gap:0!important;-webkit-column-gap:0!important;column-gap:0!important}.column-gap-lg-1{-moz-column-gap:.25rem!important;-webkit-column-gap:.25rem!important;column-gap:.25rem!important}.column-gap-lg-2{-moz-column-gap:.5rem!important;-webkit-column-gap:.5rem!important;column-gap:.5rem!important}.column-gap-lg-3{-moz-column-gap:1rem!important;-webkit-column-gap:1rem!important;column-gap:1rem!important}.column-gap-lg-4{-moz-column-gap:1.5rem!important;-webkit-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-lg-5{-moz-column-gap:3rem!important;-webkit-column-gap:3rem!important;column-gap:3rem!important}.text-lg-start{text-align:left!important}.text-lg-end{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.float-xl-start{float:left!important}.float-xl-end{float:right!important}.float-xl-none{float:none!important}.object-fit-xl-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-xl-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-xl-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-xl-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-xl-none{-o-object-fit:none!important;object-fit:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-grid{display:grid!important}.d-xl-inline-grid{display:inline-grid!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-xl-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}.d-xl-none{display:none!important}.flex-xl-fill{-webkit-box-flex:1!important;-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-xl-row{-webkit-box-orient:horizontal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-xl-column,.flex-xl-row{-webkit-box-direction:normal!important}.flex-xl-column{-webkit-box-orient:vertical!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-xl-row-reverse{-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-xl-column-reverse{-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-xl-grow-0{-webkit-box-flex:0!important;-ms-flex-positive:0!important;flex-grow:0!important}.flex-xl-grow-1{-webkit-box-flex:1!important;-ms-flex-positive:1!important;flex-grow:1!important}.flex-xl-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-xl-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-xl-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-xl-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-xl-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-xl-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-xl-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-xl-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-xl-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-xl-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-xl-evenly{-webkit-box-pack:space-evenly!important;-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-xl-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.align-items-xl-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.align-items-xl-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.align-items-xl-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-xl-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-xl-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-xl-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-xl-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-xl-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-xl-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-xl-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-xl-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-xl-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-xl-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-xl-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-xl-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-xl-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}.order-xl-first{-webkit-box-ordinal-group:0!important;-ms-flex-order:-1!important;order:-1!important}.order-xl-0{-webkit-box-ordinal-group:1!important;-ms-flex-order:0!important;order:0!important}.order-xl-1{-webkit-box-ordinal-group:2!important;-ms-flex-order:1!important;order:1!important}.order-xl-2{-webkit-box-ordinal-group:3!important;-ms-flex-order:2!important;order:2!important}.order-xl-3{-webkit-box-ordinal-group:4!important;-ms-flex-order:3!important;order:3!important}.order-xl-4{-webkit-box-ordinal-group:5!important;-ms-flex-order:4!important;order:4!important}.order-xl-5{-webkit-box-ordinal-group:6!important;-ms-flex-order:5!important;order:5!important}.order-xl-last{-webkit-box-ordinal-group:7!important;-ms-flex-order:6!important;order:6!important}.m-xl-0{margin:0!important}.m-xl-1{margin:.25rem!important}.m-xl-2{margin:.5rem!important}.m-xl-3{margin:1rem!important}.m-xl-4{margin:1.5rem!important}.m-xl-5{margin:3rem!important}.m-xl-auto{margin:auto!important}.mx-xl-0{margin-right:0!important;margin-left:0!important}.mx-xl-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-xl-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-xl-3{margin-right:1rem!important;margin-left:1rem!important}.mx-xl-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-xl-5{margin-right:3rem!important;margin-left:3rem!important}.mx-xl-auto{margin-right:auto!important;margin-left:auto!important}.my-xl-0{margin-top:0!important;margin-bottom:0!important}.my-xl-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-xl-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-xl-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-xl-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-xl-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-xl-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-xl-0{margin-top:0!important}.mt-xl-1{margin-top:.25rem!important}.mt-xl-2{margin-top:.5rem!important}.mt-xl-3{margin-top:1rem!important}.mt-xl-4{margin-top:1.5rem!important}.mt-xl-5{margin-top:3rem!important}.mt-xl-auto{margin-top:auto!important}.me-xl-0{margin-right:0!important}.me-xl-1{margin-right:.25rem!important}.me-xl-2{margin-right:.5rem!important}.me-xl-3{margin-right:1rem!important}.me-xl-4{margin-right:1.5rem!important}.me-xl-5{margin-right:3rem!important}.me-xl-auto{margin-right:auto!important}.mb-xl-0{margin-bottom:0!important}.mb-xl-1{margin-bottom:.25rem!important}.mb-xl-2{margin-bottom:.5rem!important}.mb-xl-3{margin-bottom:1rem!important}.mb-xl-4{margin-bottom:1.5rem!important}.mb-xl-5{margin-bottom:3rem!important}.mb-xl-auto{margin-bottom:auto!important}.ms-xl-0{margin-left:0!important}.ms-xl-1{margin-left:.25rem!important}.ms-xl-2{margin-left:.5rem!important}.ms-xl-3{margin-left:1rem!important}.ms-xl-4{margin-left:1.5rem!important}.ms-xl-5{margin-left:3rem!important}.ms-xl-auto{margin-left:auto!important}.p-xl-0{padding:0!important}.p-xl-1{padding:.25rem!important}.p-xl-2{padding:.5rem!important}.p-xl-3{padding:1rem!important}.p-xl-4{padding:1.5rem!important}.p-xl-5{padding:3rem!important}.px-xl-0{padding-right:0!important;padding-left:0!important}.px-xl-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-xl-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-xl-3{padding-right:1rem!important;padding-left:1rem!important}.px-xl-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-xl-5{padding-right:3rem!important;padding-left:3rem!important}.py-xl-0{padding-top:0!important;padding-bottom:0!important}.py-xl-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-xl-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-xl-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-xl-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-xl-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-xl-0{padding-top:0!important}.pt-xl-1{padding-top:.25rem!important}.pt-xl-2{padding-top:.5rem!important}.pt-xl-3{padding-top:1rem!important}.pt-xl-4{padding-top:1.5rem!important}.pt-xl-5{padding-top:3rem!important}.pe-xl-0{padding-right:0!important}.pe-xl-1{padding-right:.25rem!important}.pe-xl-2{padding-right:.5rem!important}.pe-xl-3{padding-right:1rem!important}.pe-xl-4{padding-right:1.5rem!important}.pe-xl-5{padding-right:3rem!important}.pb-xl-0{padding-bottom:0!important}.pb-xl-1{padding-bottom:.25rem!important}.pb-xl-2{padding-bottom:.5rem!important}.pb-xl-3{padding-bottom:1rem!important}.pb-xl-4{padding-bottom:1.5rem!important}.pb-xl-5{padding-bottom:3rem!important}.ps-xl-0{padding-left:0!important}.ps-xl-1{padding-left:.25rem!important}.ps-xl-2{padding-left:.5rem!important}.ps-xl-3{padding-left:1rem!important}.ps-xl-4{padding-left:1.5rem!important}.ps-xl-5{padding-left:3rem!important}.gap-xl-0{gap:0!important}.gap-xl-1{gap:.25rem!important}.gap-xl-2{gap:.5rem!important}.gap-xl-3{gap:1rem!important}.gap-xl-4{gap:1.5rem!important}.gap-xl-5{gap:3rem!important}.row-gap-xl-0{row-gap:0!important}.row-gap-xl-1{row-gap:.25rem!important}.row-gap-xl-2{row-gap:.5rem!important}.row-gap-xl-3{row-gap:1rem!important}.row-gap-xl-4{row-gap:1.5rem!important}.row-gap-xl-5{row-gap:3rem!important}.column-gap-xl-0{-moz-column-gap:0!important;-webkit-column-gap:0!important;column-gap:0!important}.column-gap-xl-1{-moz-column-gap:.25rem!important;-webkit-column-gap:.25rem!important;column-gap:.25rem!important}.column-gap-xl-2{-moz-column-gap:.5rem!important;-webkit-column-gap:.5rem!important;column-gap:.5rem!important}.column-gap-xl-3{-moz-column-gap:1rem!important;-webkit-column-gap:1rem!important;column-gap:1rem!important}.column-gap-xl-4{-moz-column-gap:1.5rem!important;-webkit-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-xl-5{-moz-column-gap:3rem!important;-webkit-column-gap:3rem!important;column-gap:3rem!important}.text-xl-start{text-align:left!important}.text-xl-end{text-align:right!important}.text-xl-center{text-align:center!important}}@media (min-width:1400px){.float-xxl-start{float:left!important}.float-xxl-end{float:right!important}.float-xxl-none{float:none!important}.object-fit-xxl-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-xxl-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-xxl-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-xxl-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-xxl-none{-o-object-fit:none!important;object-fit:none!important}.d-xxl-inline{display:inline!important}.d-xxl-inline-block{display:inline-block!important}.d-xxl-block{display:block!important}.d-xxl-grid{display:grid!important}.d-xxl-inline-grid{display:inline-grid!important}.d-xxl-table{display:table!important}.d-xxl-table-row{display:table-row!important}.d-xxl-table-cell{display:table-cell!important}.d-xxl-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-xxl-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}.d-xxl-none{display:none!important}.flex-xxl-fill{-webkit-box-flex:1!important;-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-xxl-row{-webkit-box-orient:horizontal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-xxl-column,.flex-xxl-row{-webkit-box-direction:normal!important}.flex-xxl-column{-webkit-box-orient:vertical!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-xxl-row-reverse{-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-xxl-column-reverse{-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-xxl-grow-0{-webkit-box-flex:0!important;-ms-flex-positive:0!important;flex-grow:0!important}.flex-xxl-grow-1{-webkit-box-flex:1!important;-ms-flex-positive:1!important;flex-grow:1!important}.flex-xxl-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-xxl-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-xxl-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-xxl-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-xxl-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-xxl-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-xxl-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-xxl-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-xxl-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-xxl-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-xxl-evenly{-webkit-box-pack:space-evenly!important;-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-xxl-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.align-items-xxl-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.align-items-xxl-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.align-items-xxl-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-xxl-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-xxl-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-xxl-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-xxl-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-xxl-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-xxl-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-xxl-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-xxl-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-xxl-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-xxl-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-xxl-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-xxl-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-xxl-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}.order-xxl-first{-webkit-box-ordinal-group:0!important;-ms-flex-order:-1!important;order:-1!important}.order-xxl-0{-webkit-box-ordinal-group:1!important;-ms-flex-order:0!important;order:0!important}.order-xxl-1{-webkit-box-ordinal-group:2!important;-ms-flex-order:1!important;order:1!important}.order-xxl-2{-webkit-box-ordinal-group:3!important;-ms-flex-order:2!important;order:2!important}.order-xxl-3{-webkit-box-ordinal-group:4!important;-ms-flex-order:3!important;order:3!important}.order-xxl-4{-webkit-box-ordinal-group:5!important;-ms-flex-order:4!important;order:4!important}.order-xxl-5{-webkit-box-ordinal-group:6!important;-ms-flex-order:5!important;order:5!important}.order-xxl-last{-webkit-box-ordinal-group:7!important;-ms-flex-order:6!important;order:6!important}.m-xxl-0{margin:0!important}.m-xxl-1{margin:.25rem!important}.m-xxl-2{margin:.5rem!important}.m-xxl-3{margin:1rem!important}.m-xxl-4{margin:1.5rem!important}.m-xxl-5{margin:3rem!important}.m-xxl-auto{margin:auto!important}.mx-xxl-0{margin-right:0!important;margin-left:0!important}.mx-xxl-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-xxl-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-xxl-3{margin-right:1rem!important;margin-left:1rem!important}.mx-xxl-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-xxl-5{margin-right:3rem!important;margin-left:3rem!important}.mx-xxl-auto{margin-right:auto!important;margin-left:auto!important}.my-xxl-0{margin-top:0!important;margin-bottom:0!important}.my-xxl-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-xxl-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-xxl-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-xxl-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-xxl-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-xxl-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-xxl-0{margin-top:0!important}.mt-xxl-1{margin-top:.25rem!important}.mt-xxl-2{margin-top:.5rem!important}.mt-xxl-3{margin-top:1rem!important}.mt-xxl-4{margin-top:1.5rem!important}.mt-xxl-5{margin-top:3rem!important}.mt-xxl-auto{margin-top:auto!important}.me-xxl-0{margin-right:0!important}.me-xxl-1{margin-right:.25rem!important}.me-xxl-2{margin-right:.5rem!important}.me-xxl-3{margin-right:1rem!important}.me-xxl-4{margin-right:1.5rem!important}.me-xxl-5{margin-right:3rem!important}.me-xxl-auto{margin-right:auto!important}.mb-xxl-0{margin-bottom:0!important}.mb-xxl-1{margin-bottom:.25rem!important}.mb-xxl-2{margin-bottom:.5rem!important}.mb-xxl-3{margin-bottom:1rem!important}.mb-xxl-4{margin-bottom:1.5rem!important}.mb-xxl-5{margin-bottom:3rem!important}.mb-xxl-auto{margin-bottom:auto!important}.ms-xxl-0{margin-left:0!important}.ms-xxl-1{margin-left:.25rem!important}.ms-xxl-2{margin-left:.5rem!important}.ms-xxl-3{margin-left:1rem!important}.ms-xxl-4{margin-left:1.5rem!important}.ms-xxl-5{margin-left:3rem!important}.ms-xxl-auto{margin-left:auto!important}.p-xxl-0{padding:0!important}.p-xxl-1{padding:.25rem!important}.p-xxl-2{padding:.5rem!important}.p-xxl-3{padding:1rem!important}.p-xxl-4{padding:1.5rem!important}.p-xxl-5{padding:3rem!important}.px-xxl-0{padding-right:0!important;padding-left:0!important}.px-xxl-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-xxl-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-xxl-3{padding-right:1rem!important;padding-left:1rem!important}.px-xxl-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-xxl-5{padding-right:3rem!important;padding-left:3rem!important}.py-xxl-0{padding-top:0!important;padding-bottom:0!important}.py-xxl-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-xxl-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-xxl-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-xxl-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-xxl-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-xxl-0{padding-top:0!important}.pt-xxl-1{padding-top:.25rem!important}.pt-xxl-2{padding-top:.5rem!important}.pt-xxl-3{padding-top:1rem!important}.pt-xxl-4{padding-top:1.5rem!important}.pt-xxl-5{padding-top:3rem!important}.pe-xxl-0{padding-right:0!important}.pe-xxl-1{padding-right:.25rem!important}.pe-xxl-2{padding-right:.5rem!important}.pe-xxl-3{padding-right:1rem!important}.pe-xxl-4{padding-right:1.5rem!important}.pe-xxl-5{padding-right:3rem!important}.pb-xxl-0{padding-bottom:0!important}.pb-xxl-1{padding-bottom:.25rem!important}.pb-xxl-2{padding-bottom:.5rem!important}.pb-xxl-3{padding-bottom:1rem!important}.pb-xxl-4{padding-bottom:1.5rem!important}.pb-xxl-5{padding-bottom:3rem!important}.ps-xxl-0{padding-left:0!important}.ps-xxl-1{padding-left:.25rem!important}.ps-xxl-2{padding-left:.5rem!important}.ps-xxl-3{padding-left:1rem!important}.ps-xxl-4{padding-left:1.5rem!important}.ps-xxl-5{padding-left:3rem!important}.gap-xxl-0{gap:0!important}.gap-xxl-1{gap:.25rem!important}.gap-xxl-2{gap:.5rem!important}.gap-xxl-3{gap:1rem!important}.gap-xxl-4{gap:1.5rem!important}.gap-xxl-5{gap:3rem!important}.row-gap-xxl-0{row-gap:0!important}.row-gap-xxl-1{row-gap:.25rem!important}.row-gap-xxl-2{row-gap:.5rem!important}.row-gap-xxl-3{row-gap:1rem!important}.row-gap-xxl-4{row-gap:1.5rem!important}.row-gap-xxl-5{row-gap:3rem!important}.column-gap-xxl-0{-moz-column-gap:0!important;-webkit-column-gap:0!important;column-gap:0!important}.column-gap-xxl-1{-moz-column-gap:.25rem!important;-webkit-column-gap:.25rem!important;column-gap:.25rem!important}.column-gap-xxl-2{-moz-column-gap:.5rem!important;-webkit-column-gap:.5rem!important;column-gap:.5rem!important}.column-gap-xxl-3{-moz-column-gap:1rem!important;-webkit-column-gap:1rem!important;column-gap:1rem!important}.column-gap-xxl-4{-moz-column-gap:1.5rem!important;-webkit-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-xxl-5{-moz-column-gap:3rem!important;-webkit-column-gap:3rem!important;column-gap:3rem!important}.text-xxl-start{text-align:left!important}.text-xxl-end{text-align:right!important}.text-xxl-center{text-align:center!important}}@media (min-width:1200px){.fs-1{font-size:2.5rem!important}.fs-2{font-size:2rem!important}.fs-3{font-size:1.75rem!important}.fs-4{font-size:1.5rem!important}}@media print{.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-grid{display:grid!important}.d-print-inline-grid{display:inline-grid!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-print-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}.d-print-none{display:none!important}}#app[data-v-3855d3c1]{font-family:Avenir,Helvetica,Arial,sans-serif;text-align:center;color:#2c3e50;margin-top:60px}.menu[data-v-3855d3c1]{margin-bottom:20px}.content[data-v-3855d3c1]{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-pack:distribute;justify-content:space-around;height:90vh}.editor-box[data-v-3855d3c1]{width:35%;overflow:auto}.editor-box[data-v-3855d3c1],.svg-container[data-v-3855d3c1]{border:5px solid #4b4a4a;padding:20px;margin:10px;border-radius:10px;height:80vh}.svg-container[data-v-3855d3c1]{width:60%;overflow:hidden;position:relative}.error[data-v-3855d3c1]{color:red;margin-top:10px}.my-select[data-v-3855d3c1]{padding:10px;font-size:16px;border-radius:5px;border:1px solid #ccc;margin-right:20px}.url-input[data-v-3855d3c1]{padding:10px;font-size:16px;border:1px solid #ccc;width:400px;overflow-x:auto;margin-left:20px}pre[data-v-3855d3c1]{overflow-x:auto;overflow-y:auto;height:100%;width:100%;white-space:nowrap}.svg-container input[data-v-3855d3c1]{position:absolute;top:10px;left:140px}.svg-container label[data-v-3855d3c1]{font-weight:700;position:absolute;top:14px;left:20px}span[data-v-3855d3c1]{text-align:left!important}.tooltip[data-v-3855d3c1]{position:absolute;text-align:left;width:auto;height:auto;padding:5px;font:12px sans-serif;background:#b0c4de;border:0;border-radius:8px;pointer-events:none}.vjs-checkbox{position:absolute;left:-30px;color:#1f2d3d;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vjs-checkbox.is-checked .vjs-checkbox__inner{background-color:#1890ff;border-color:#0076e4}.vjs-checkbox.is-checked .vjs-checkbox__inner:after{-webkit-transform:rotate(45deg) scaleY(1);transform:rotate(45deg) scaleY(1)}.vjs-checkbox .vjs-checkbox__inner{display:inline-block;position:relative;border:1px solid #bfcbd9;-webkit-border-radius:2px;border-radius:2px;vertical-align:middle;-webkit-box-sizing:border-box;box-sizing:border-box;width:16px;height:16px;background-color:#fff;z-index:1;cursor:pointer;-webkit-transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46);-o-transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46);transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46)}.vjs-checkbox .vjs-checkbox__inner:after{-webkit-box-sizing:content-box;box-sizing:content-box;content:"";border:2px solid #fff;border-left:0;border-top:0;height:8px;left:4px;position:absolute;top:1px;-webkit-transform:rotate(45deg) scaleY(0);transform:rotate(45deg) scaleY(0);width:4px;-webkit-transition:-webkit-transform .15s cubic-bezier(.71,-.46,.88,.6) .05s;transition:-webkit-transform .15s cubic-bezier(.71,-.46,.88,.6) .05s;-o-transition:transform .15s cubic-bezier(.71,-.46,.88,.6) .05s;transition:transform .15s cubic-bezier(.71,-.46,.88,.6) .05s;transition:transform .15s cubic-bezier(.71,-.46,.88,.6) .05s,-webkit-transform .15s cubic-bezier(.71,-.46,.88,.6) .05s;-webkit-transform-origin:center;transform-origin:center}.vjs-checkbox .vjs-checkbox__original{opacity:0;outline:none;position:absolute;z-index:-1;top:0;left:0;right:0;bottom:0;margin:0}.vjs-radio{position:absolute;left:-30px;color:#1f2d3d;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vjs-radio.is-checked .vjs-radio__inner{background-color:#1890ff;border-color:#0076e4}.vjs-radio.is-checked .vjs-radio__inner:after{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1)}.vjs-radio .vjs-radio__inner{border:1px solid #bfcbd9;-webkit-border-radius:100%;border-radius:100%;width:16px;height:16px;vertical-align:middle;background-color:#fff;position:relative;cursor:pointer;display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box}.vjs-radio .vjs-radio__inner:after{width:4px;height:4px;-webkit-border-radius:100%;border-radius:100%;background-color:#fff;content:"";position:absolute;left:50%;top:50%;-webkit-transform:translate(-50%,-50%) scale(0);transform:translate(-50%,-50%) scale(0);-webkit-transition:-webkit-transform .15s ease-in;transition:-webkit-transform .15s ease-in;-o-transition:transform .15s ease-in;transition:transform .15s ease-in;transition:transform .15s ease-in,-webkit-transform .15s ease-in}.vjs-radio .vjs-radio__original{opacity:0;outline:none;position:absolute;z-index:-1;top:0;left:0;right:0;bottom:0;margin:0}.vjs-tree{font-family:Monaco,Menlo,Consolas,Bitstream Vera Sans Mono,monospace;font-size:14px;text-align:left}.vjs-tree.is-root{position:relative}.vjs-tree.is-root.has-selectable-control{margin-left:30px}.vjs-tree.is-mouseover{background-color:#e6f7ff}.vjs-tree.is-highlight-selected{background-color:#ccefff}.vjs-tree .vjs-tree__content{padding-left:1em}.vjs-tree .vjs-tree__content.has-line{border-left:1px dotted #bfcbd9}.vjs-tree .vjs-tree__brackets{cursor:pointer}.vjs-tree .vjs-tree__brackets:hover{color:#1890ff}.vjs-tree .vjs-comment{color:#bfcbd9}.vjs-tree .vjs-value__null{color:#ff4949}.vjs-tree .vjs-value__boolean,.vjs-tree .vjs-value__number{color:#1d8ce0}.vjs-tree .vjs-value__string{color:#13ce66}.vjs-tree .highlight-row{background:rgba(255,0,0,.08);border:1px solid rgba(255,0,0,.36);padding:2px;-webkit-border-radius:2px;border-radius:2px;-webkit-box-shadow:1px 2px 5px -2px #ababab;box-shadow:1px 2px 5px -2px #ababab} -/*# sourceMappingURL=app.c220b377967d740c7753a065d8fd4e46.css.map */ \ No newline at end of file + */:root,[data-bs-theme=light]{--bs-blue:#0d6efd;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#d63384;--bs-red:#dc3545;--bs-orange:#fd7e14;--bs-yellow:#ffc107;--bs-green:#198754;--bs-teal:#20c997;--bs-cyan:#0dcaf0;--bs-black:#000;--bs-white:#fff;--bs-gray:#6c757d;--bs-gray-dark:#343a40;--bs-gray-100:#f8f9fa;--bs-gray-200:#e9ecef;--bs-gray-300:#dee2e6;--bs-gray-400:#ced4da;--bs-gray-500:#adb5bd;--bs-gray-600:#6c757d;--bs-gray-700:#495057;--bs-gray-800:#343a40;--bs-gray-900:#212529;--bs-primary:#0d6efd;--bs-secondary:#6c757d;--bs-success:#198754;--bs-info:#0dcaf0;--bs-warning:#ffc107;--bs-danger:#dc3545;--bs-light:#f8f9fa;--bs-dark:#212529;--bs-primary-rgb:13,110,253;--bs-secondary-rgb:108,117,125;--bs-success-rgb:25,135,84;--bs-info-rgb:13,202,240;--bs-warning-rgb:255,193,7;--bs-danger-rgb:220,53,69;--bs-light-rgb:248,249,250;--bs-dark-rgb:33,37,41;--bs-primary-text-emphasis:#052c65;--bs-secondary-text-emphasis:#2b2f32;--bs-success-text-emphasis:#0a3622;--bs-info-text-emphasis:#055160;--bs-warning-text-emphasis:#664d03;--bs-danger-text-emphasis:#58151c;--bs-light-text-emphasis:#495057;--bs-dark-text-emphasis:#495057;--bs-primary-bg-subtle:#cfe2ff;--bs-secondary-bg-subtle:#e2e3e5;--bs-success-bg-subtle:#d1e7dd;--bs-info-bg-subtle:#cff4fc;--bs-warning-bg-subtle:#fff3cd;--bs-danger-bg-subtle:#f8d7da;--bs-light-bg-subtle:#fcfcfd;--bs-dark-bg-subtle:#ced4da;--bs-primary-border-subtle:#9ec5fe;--bs-secondary-border-subtle:#c4c8cb;--bs-success-border-subtle:#a3cfbb;--bs-info-border-subtle:#9eeaf9;--bs-warning-border-subtle:#ffe69c;--bs-danger-border-subtle:#f1aeb5;--bs-light-border-subtle:#e9ecef;--bs-dark-border-subtle:#adb5bd;--bs-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--bs-font-sans-serif:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans","Liberation Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--bs-font-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--bs-gradient:linear-gradient(180deg,hsla(0,0%,100%,0.15),hsla(0,0%,100%,0));--bs-body-font-family:var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight:400;--bs-body-line-height:1.5;--bs-body-color:#212529;--bs-body-color-rgb:33,37,41;--bs-body-bg:#fff;--bs-body-bg-rgb:255,255,255;--bs-emphasis-color:#000;--bs-emphasis-color-rgb:0,0,0;--bs-secondary-color:rgba(33,37,41,0.75);--bs-secondary-color-rgb:33,37,41;--bs-secondary-bg:#e9ecef;--bs-secondary-bg-rgb:233,236,239;--bs-tertiary-color:rgba(33,37,41,0.5);--bs-tertiary-color-rgb:33,37,41;--bs-tertiary-bg:#f8f9fa;--bs-tertiary-bg-rgb:248,249,250;--bs-heading-color:inherit;--bs-link-color:#0d6efd;--bs-link-color-rgb:13,110,253;--bs-link-decoration:underline;--bs-link-hover-color:#0a58ca;--bs-link-hover-color-rgb:10,88,202;--bs-code-color:#d63384;--bs-highlight-bg:#fff3cd;--bs-border-width:1px;--bs-border-style:solid;--bs-border-color:#dee2e6;--bs-border-color-translucent:rgba(0,0,0,0.175);--bs-border-radius:0.375rem;--bs-border-radius-sm:0.25rem;--bs-border-radius-lg:0.5rem;--bs-border-radius-xl:1rem;--bs-border-radius-xxl:2rem;--bs-border-radius-2xl:var(--bs-border-radius-xxl);--bs-border-radius-pill:50rem;--bs-box-shadow:0 0.5rem 1rem rgba(0,0,0,0.15);--bs-box-shadow-sm:0 0.125rem 0.25rem rgba(0,0,0,0.075);--bs-box-shadow-lg:0 1rem 3rem rgba(0,0,0,0.175);--bs-box-shadow-inset:inset 0 1px 2px rgba(0,0,0,0.075);--bs-focus-ring-width:0.25rem;--bs-focus-ring-opacity:0.25;--bs-focus-ring-color:rgba(13,110,253,0.25);--bs-form-valid-color:#198754;--bs-form-valid-border-color:#198754;--bs-form-invalid-color:#dc3545;--bs-form-invalid-border-color:#dc3545}[data-bs-theme=dark]{color-scheme:dark;--bs-body-color:#adb5bd;--bs-body-color-rgb:173,181,189;--bs-body-bg:#212529;--bs-body-bg-rgb:33,37,41;--bs-emphasis-color:#fff;--bs-emphasis-color-rgb:255,255,255;--bs-secondary-color:rgba(173,181,189,0.75);--bs-secondary-color-rgb:173,181,189;--bs-secondary-bg:#343a40;--bs-secondary-bg-rgb:52,58,64;--bs-tertiary-color:rgba(173,181,189,0.5);--bs-tertiary-color-rgb:173,181,189;--bs-tertiary-bg:#2b3035;--bs-tertiary-bg-rgb:43,48,53;--bs-primary-text-emphasis:#6ea8fe;--bs-secondary-text-emphasis:#a7acb1;--bs-success-text-emphasis:#75b798;--bs-info-text-emphasis:#6edff6;--bs-warning-text-emphasis:#ffda6a;--bs-danger-text-emphasis:#ea868f;--bs-light-text-emphasis:#f8f9fa;--bs-dark-text-emphasis:#dee2e6;--bs-primary-bg-subtle:#031633;--bs-secondary-bg-subtle:#161719;--bs-success-bg-subtle:#051b11;--bs-info-bg-subtle:#032830;--bs-warning-bg-subtle:#332701;--bs-danger-bg-subtle:#2c0b0e;--bs-light-bg-subtle:#343a40;--bs-dark-bg-subtle:#1a1d20;--bs-primary-border-subtle:#084298;--bs-secondary-border-subtle:#41464b;--bs-success-border-subtle:#0f5132;--bs-info-border-subtle:#087990;--bs-warning-border-subtle:#997404;--bs-danger-border-subtle:#842029;--bs-light-border-subtle:#495057;--bs-dark-border-subtle:#343a40;--bs-heading-color:inherit;--bs-link-color:#6ea8fe;--bs-link-hover-color:#8bb9fe;--bs-link-color-rgb:110,168,254;--bs-link-hover-color-rgb:139,185,254;--bs-code-color:#e685b5;--bs-border-color:#495057;--bs-border-color-translucent:hsla(0,0%,100%,0.15);--bs-form-valid-color:#75b798;--bs-form-valid-border-color:#75b798;--bs-form-invalid-color:#ea868f;--bs-form-invalid-border-color:#ea868f}*,:after,:before{-webkit-box-sizing:border-box;box-sizing:border-box}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}hr{margin:1rem 0;color:inherit;border:0;border-top:var(--bs-border-width) solid;opacity:.25}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2;color:var(--bs-heading-color)}.h1,h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width:1200px){.h1,h1{font-size:2.5rem}}.h2,h2{font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){.h2,h2{font-size:2rem}}.h3,h3{font-size:calc(1.3rem + .6vw)}@media (min-width:1200px){.h3,h3{font-size:1.75rem}}.h4,h4{font-size:calc(1.275rem + .3vw)}@media (min-width:1200px){.h4,h4{font-size:1.5rem}}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-left:2rem}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}.small,small{font-size:.875em}.mark,mark{padding:.1875em;background-color:var(--bs-highlight-bg)}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,1));text-decoration:underline}a:hover{--bs-link-color-rgb:var(--bs-link-hover-color-rgb)}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:var(--bs-font-monospace);font-size:1em}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em}pre code{font-size:inherit;color:inherit;word-break:normal}code{font-size:.875em;color:var(--bs-code-color);word-wrap:break-word}a>code{color:inherit}kbd{padding:.1875rem .375rem;font-size:.875em;color:var(--bs-body-bg);background-color:var(--bs-body-color);border-radius:.25rem}kbd kbd{padding:0;font-size:1em}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-secondary-color);text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}tbody,td,tfoot,th,thead,tr{border:0 solid;border-color:inherit}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator{display:none!important}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + .3vw);line-height:inherit}@media (min-width:1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-text,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:textfield}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}::file-selector-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none!important}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:calc(1.625rem + 4.5vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-1{font-size:5rem}}.display-2{font-size:calc(1.575rem + 3.9vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-2{font-size:4.5rem}}.display-3{font-size:calc(1.525rem + 3.3vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-3{font-size:4rem}}.display-4{font-size:calc(1.475rem + 2.7vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-4{font-size:3.5rem}}.display-5{font-size:calc(1.425rem + 2.1vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-5{font-size:3rem}}.display-6{font-size:calc(1.375rem + 1.5vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-6{font-size:2.5rem}}.list-inline,.list-unstyled{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:.875em;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote>:last-child{margin-bottom:0}.blockquote-footer{margin-top:-1rem;margin-bottom:1rem;font-size:.875em;color:#6c757d}.blockquote-footer:before{content:"\2014\A0"}.img-fluid,.img-thumbnail{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:var(--bs-body-bg);border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius)}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:.875em;color:var(--bs-secondary-color)}.container,.container-fluid,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{--bs-gutter-x:1.5rem;--bs-gutter-y:0;width:100%;padding-right:calc(var(--bs-gutter-x)*0.5);padding-left:calc(var(--bs-gutter-x)*0.5);margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}@media (min-width:1400px){.container,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{max-width:1320px}}:root{--bs-breakpoint-xs:0;--bs-breakpoint-sm:576px;--bs-breakpoint-md:768px;--bs-breakpoint-lg:992px;--bs-breakpoint-xl:1200px;--bs-breakpoint-xxl:1400px}.row{--bs-gutter-x:1.5rem;--bs-gutter-y:0;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-top:calc(var(--bs-gutter-y)*-1);margin-right:calc(var(--bs-gutter-x)*-0.5);margin-left:calc(var(--bs-gutter-x)*-0.5)}.row>*{-ms-flex-negative:0;flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x)*0.5);padding-left:calc(var(--bs-gutter-x)*0.5);margin-top:var(--bs-gutter-y)}.col{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-auto>*{width:auto}.row-cols-1>*,.row-cols-auto>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-1>*{width:100%}.row-cols-2>*{width:50%}.row-cols-2>*,.row-cols-3>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-3>*{width:33.3333333333%}.row-cols-4>*{width:25%}.row-cols-4>*,.row-cols-5>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-5>*{width:20%}.row-cols-6>*{width:16.6666666667%}.col-auto,.row-cols-6>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-auto{width:auto}.col-1{width:8.33333333%}.col-1,.col-2{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-2{width:16.66666667%}.col-3{width:25%}.col-3,.col-4{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-4{width:33.33333333%}.col-5{width:41.66666667%}.col-5,.col-6{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-6{width:50%}.col-7{width:58.33333333%}.col-7,.col-8{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-8{width:66.66666667%}.col-9{width:75%}.col-9,.col-10{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-10{width:83.33333333%}.col-11{width:91.66666667%}.col-11,.col-12{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-12{width:100%}.offset-1{margin-left:8.33333333%}.offset-2{margin-left:16.66666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333333%}.offset-5{margin-left:41.66666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333333%}.offset-8{margin-left:66.66666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333333%}.offset-11{margin-left:91.66666667%}.g-0,.gx-0{--bs-gutter-x:0}.g-0,.gy-0{--bs-gutter-y:0}.g-1,.gx-1{--bs-gutter-x:0.25rem}.g-1,.gy-1{--bs-gutter-y:0.25rem}.g-2,.gx-2{--bs-gutter-x:0.5rem}.g-2,.gy-2{--bs-gutter-y:0.5rem}.g-3,.gx-3{--bs-gutter-x:1rem}.g-3,.gy-3{--bs-gutter-y:1rem}.g-4,.gx-4{--bs-gutter-x:1.5rem}.g-4,.gy-4{--bs-gutter-y:1.5rem}.g-5,.gx-5{--bs-gutter-x:3rem}.g-5,.gy-5{--bs-gutter-y:3rem}@media (min-width:576px){.col-sm{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-sm-auto>*{width:auto}.row-cols-sm-1>*,.row-cols-sm-auto>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-sm-1>*{width:100%}.row-cols-sm-2>*{width:50%}.row-cols-sm-2>*,.row-cols-sm-3>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-sm-3>*{width:33.3333333333%}.row-cols-sm-4>*{width:25%}.row-cols-sm-4>*,.row-cols-sm-5>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-sm-5>*{width:20%}.row-cols-sm-6>*{width:16.6666666667%}.col-sm-auto,.row-cols-sm-6>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-sm-auto{width:auto}.col-sm-1{width:8.33333333%}.col-sm-1,.col-sm-2{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-sm-2{width:16.66666667%}.col-sm-3{width:25%}.col-sm-3,.col-sm-4{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-sm-4{width:33.33333333%}.col-sm-5{width:41.66666667%}.col-sm-5,.col-sm-6{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-sm-6{width:50%}.col-sm-7{width:58.33333333%}.col-sm-7,.col-sm-8{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-sm-8{width:66.66666667%}.col-sm-9{width:75%}.col-sm-9,.col-sm-10{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-sm-10{width:83.33333333%}.col-sm-11{width:91.66666667%}.col-sm-11,.col-sm-12{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-sm-12{width:100%}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333333%}.offset-sm-2{margin-left:16.66666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333333%}.offset-sm-5{margin-left:41.66666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333333%}.offset-sm-8{margin-left:66.66666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333333%}.offset-sm-11{margin-left:91.66666667%}.g-sm-0,.gx-sm-0{--bs-gutter-x:0}.g-sm-0,.gy-sm-0{--bs-gutter-y:0}.g-sm-1,.gx-sm-1{--bs-gutter-x:0.25rem}.g-sm-1,.gy-sm-1{--bs-gutter-y:0.25rem}.g-sm-2,.gx-sm-2{--bs-gutter-x:0.5rem}.g-sm-2,.gy-sm-2{--bs-gutter-y:0.5rem}.g-sm-3,.gx-sm-3{--bs-gutter-x:1rem}.g-sm-3,.gy-sm-3{--bs-gutter-y:1rem}.g-sm-4,.gx-sm-4{--bs-gutter-x:1.5rem}.g-sm-4,.gy-sm-4{--bs-gutter-y:1.5rem}.g-sm-5,.gx-sm-5{--bs-gutter-x:3rem}.g-sm-5,.gy-sm-5{--bs-gutter-y:3rem}}@media (min-width:768px){.col-md{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-md-auto>*{width:auto}.row-cols-md-1>*,.row-cols-md-auto>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-md-1>*{width:100%}.row-cols-md-2>*{width:50%}.row-cols-md-2>*,.row-cols-md-3>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-md-3>*{width:33.3333333333%}.row-cols-md-4>*{width:25%}.row-cols-md-4>*,.row-cols-md-5>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-md-5>*{width:20%}.row-cols-md-6>*{width:16.6666666667%}.col-md-auto,.row-cols-md-6>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-md-auto{width:auto}.col-md-1{width:8.33333333%}.col-md-1,.col-md-2{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-md-2{width:16.66666667%}.col-md-3{width:25%}.col-md-3,.col-md-4{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-md-4{width:33.33333333%}.col-md-5{width:41.66666667%}.col-md-5,.col-md-6{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-md-6{width:50%}.col-md-7{width:58.33333333%}.col-md-7,.col-md-8{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-md-8{width:66.66666667%}.col-md-9{width:75%}.col-md-9,.col-md-10{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-md-10{width:83.33333333%}.col-md-11{width:91.66666667%}.col-md-11,.col-md-12{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-md-12{width:100%}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333333%}.offset-md-2{margin-left:16.66666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333333%}.offset-md-5{margin-left:41.66666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333333%}.offset-md-8{margin-left:66.66666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333333%}.offset-md-11{margin-left:91.66666667%}.g-md-0,.gx-md-0{--bs-gutter-x:0}.g-md-0,.gy-md-0{--bs-gutter-y:0}.g-md-1,.gx-md-1{--bs-gutter-x:0.25rem}.g-md-1,.gy-md-1{--bs-gutter-y:0.25rem}.g-md-2,.gx-md-2{--bs-gutter-x:0.5rem}.g-md-2,.gy-md-2{--bs-gutter-y:0.5rem}.g-md-3,.gx-md-3{--bs-gutter-x:1rem}.g-md-3,.gy-md-3{--bs-gutter-y:1rem}.g-md-4,.gx-md-4{--bs-gutter-x:1.5rem}.g-md-4,.gy-md-4{--bs-gutter-y:1.5rem}.g-md-5,.gx-md-5{--bs-gutter-x:3rem}.g-md-5,.gy-md-5{--bs-gutter-y:3rem}}@media (min-width:992px){.col-lg{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-lg-auto>*{width:auto}.row-cols-lg-1>*,.row-cols-lg-auto>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-lg-1>*{width:100%}.row-cols-lg-2>*{width:50%}.row-cols-lg-2>*,.row-cols-lg-3>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-lg-3>*{width:33.3333333333%}.row-cols-lg-4>*{width:25%}.row-cols-lg-4>*,.row-cols-lg-5>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-lg-5>*{width:20%}.row-cols-lg-6>*{width:16.6666666667%}.col-lg-auto,.row-cols-lg-6>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-lg-auto{width:auto}.col-lg-1{width:8.33333333%}.col-lg-1,.col-lg-2{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-lg-2{width:16.66666667%}.col-lg-3{width:25%}.col-lg-3,.col-lg-4{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-lg-4{width:33.33333333%}.col-lg-5{width:41.66666667%}.col-lg-5,.col-lg-6{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-lg-6{width:50%}.col-lg-7{width:58.33333333%}.col-lg-7,.col-lg-8{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-lg-8{width:66.66666667%}.col-lg-9{width:75%}.col-lg-9,.col-lg-10{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-lg-10{width:83.33333333%}.col-lg-11{width:91.66666667%}.col-lg-11,.col-lg-12{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-lg-12{width:100%}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333333%}.offset-lg-2{margin-left:16.66666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333333%}.offset-lg-5{margin-left:41.66666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333333%}.offset-lg-8{margin-left:66.66666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333333%}.offset-lg-11{margin-left:91.66666667%}.g-lg-0,.gx-lg-0{--bs-gutter-x:0}.g-lg-0,.gy-lg-0{--bs-gutter-y:0}.g-lg-1,.gx-lg-1{--bs-gutter-x:0.25rem}.g-lg-1,.gy-lg-1{--bs-gutter-y:0.25rem}.g-lg-2,.gx-lg-2{--bs-gutter-x:0.5rem}.g-lg-2,.gy-lg-2{--bs-gutter-y:0.5rem}.g-lg-3,.gx-lg-3{--bs-gutter-x:1rem}.g-lg-3,.gy-lg-3{--bs-gutter-y:1rem}.g-lg-4,.gx-lg-4{--bs-gutter-x:1.5rem}.g-lg-4,.gy-lg-4{--bs-gutter-y:1.5rem}.g-lg-5,.gx-lg-5{--bs-gutter-x:3rem}.g-lg-5,.gy-lg-5{--bs-gutter-y:3rem}}@media (min-width:1200px){.col-xl{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-xl-auto>*{width:auto}.row-cols-xl-1>*,.row-cols-xl-auto>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-xl-1>*{width:100%}.row-cols-xl-2>*{width:50%}.row-cols-xl-2>*,.row-cols-xl-3>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-xl-3>*{width:33.3333333333%}.row-cols-xl-4>*{width:25%}.row-cols-xl-4>*,.row-cols-xl-5>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-xl-5>*{width:20%}.row-cols-xl-6>*{width:16.6666666667%}.col-xl-auto,.row-cols-xl-6>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xl-auto{width:auto}.col-xl-1{width:8.33333333%}.col-xl-1,.col-xl-2{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xl-2{width:16.66666667%}.col-xl-3{width:25%}.col-xl-3,.col-xl-4{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xl-4{width:33.33333333%}.col-xl-5{width:41.66666667%}.col-xl-5,.col-xl-6{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xl-6{width:50%}.col-xl-7{width:58.33333333%}.col-xl-7,.col-xl-8{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xl-8{width:66.66666667%}.col-xl-9{width:75%}.col-xl-9,.col-xl-10{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xl-10{width:83.33333333%}.col-xl-11{width:91.66666667%}.col-xl-11,.col-xl-12{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xl-12{width:100%}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333333%}.offset-xl-2{margin-left:16.66666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333333%}.offset-xl-5{margin-left:41.66666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333333%}.offset-xl-8{margin-left:66.66666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333333%}.offset-xl-11{margin-left:91.66666667%}.g-xl-0,.gx-xl-0{--bs-gutter-x:0}.g-xl-0,.gy-xl-0{--bs-gutter-y:0}.g-xl-1,.gx-xl-1{--bs-gutter-x:0.25rem}.g-xl-1,.gy-xl-1{--bs-gutter-y:0.25rem}.g-xl-2,.gx-xl-2{--bs-gutter-x:0.5rem}.g-xl-2,.gy-xl-2{--bs-gutter-y:0.5rem}.g-xl-3,.gx-xl-3{--bs-gutter-x:1rem}.g-xl-3,.gy-xl-3{--bs-gutter-y:1rem}.g-xl-4,.gx-xl-4{--bs-gutter-x:1.5rem}.g-xl-4,.gy-xl-4{--bs-gutter-y:1.5rem}.g-xl-5,.gx-xl-5{--bs-gutter-x:3rem}.g-xl-5,.gy-xl-5{--bs-gutter-y:3rem}}@media (min-width:1400px){.col-xxl{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-xxl-auto>*{width:auto}.row-cols-xxl-1>*,.row-cols-xxl-auto>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-xxl-1>*{width:100%}.row-cols-xxl-2>*{width:50%}.row-cols-xxl-2>*,.row-cols-xxl-3>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-xxl-3>*{width:33.3333333333%}.row-cols-xxl-4>*{width:25%}.row-cols-xxl-4>*,.row-cols-xxl-5>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.row-cols-xxl-5>*{width:20%}.row-cols-xxl-6>*{width:16.6666666667%}.col-xxl-auto,.row-cols-xxl-6>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xxl-auto{width:auto}.col-xxl-1{width:8.33333333%}.col-xxl-1,.col-xxl-2{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xxl-2{width:16.66666667%}.col-xxl-3{width:25%}.col-xxl-3,.col-xxl-4{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xxl-4{width:33.33333333%}.col-xxl-5{width:41.66666667%}.col-xxl-5,.col-xxl-6{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xxl-6{width:50%}.col-xxl-7{width:58.33333333%}.col-xxl-7,.col-xxl-8{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xxl-8{width:66.66666667%}.col-xxl-9{width:75%}.col-xxl-9,.col-xxl-10{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xxl-10{width:83.33333333%}.col-xxl-11{width:91.66666667%}.col-xxl-11,.col-xxl-12{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto}.col-xxl-12{width:100%}.offset-xxl-0{margin-left:0}.offset-xxl-1{margin-left:8.33333333%}.offset-xxl-2{margin-left:16.66666667%}.offset-xxl-3{margin-left:25%}.offset-xxl-4{margin-left:33.33333333%}.offset-xxl-5{margin-left:41.66666667%}.offset-xxl-6{margin-left:50%}.offset-xxl-7{margin-left:58.33333333%}.offset-xxl-8{margin-left:66.66666667%}.offset-xxl-9{margin-left:75%}.offset-xxl-10{margin-left:83.33333333%}.offset-xxl-11{margin-left:91.66666667%}.g-xxl-0,.gx-xxl-0{--bs-gutter-x:0}.g-xxl-0,.gy-xxl-0{--bs-gutter-y:0}.g-xxl-1,.gx-xxl-1{--bs-gutter-x:0.25rem}.g-xxl-1,.gy-xxl-1{--bs-gutter-y:0.25rem}.g-xxl-2,.gx-xxl-2{--bs-gutter-x:0.5rem}.g-xxl-2,.gy-xxl-2{--bs-gutter-y:0.5rem}.g-xxl-3,.gx-xxl-3{--bs-gutter-x:1rem}.g-xxl-3,.gy-xxl-3{--bs-gutter-y:1rem}.g-xxl-4,.gx-xxl-4{--bs-gutter-x:1.5rem}.g-xxl-4,.gy-xxl-4{--bs-gutter-y:1.5rem}.g-xxl-5,.gx-xxl-5{--bs-gutter-x:3rem}.g-xxl-5,.gy-xxl-5{--bs-gutter-y:3rem}}.table{--bs-table-color-type:initial;--bs-table-bg-type:initial;--bs-table-color-state:initial;--bs-table-bg-state:initial;--bs-table-color:var(--bs-body-color);--bs-table-bg:var(--bs-body-bg);--bs-table-border-color:var(--bs-border-color);--bs-table-accent-bg:transparent;--bs-table-striped-color:var(--bs-body-color);--bs-table-striped-bg:rgba(0,0,0,0.05);--bs-table-active-color:var(--bs-body-color);--bs-table-active-bg:rgba(0,0,0,0.1);--bs-table-hover-color:var(--bs-body-color);--bs-table-hover-bg:rgba(0,0,0,0.075);width:100%;margin-bottom:1rem;vertical-align:top;border-color:var(--bs-table-border-color)}.table>:not(caption)>*>*{padding:.5rem;color:var(--bs-table-color-state,var(--bs-table-color-type,var(--bs-table-color)));background-color:var(--bs-table-bg);border-bottom-width:var(--bs-border-width);-webkit-box-shadow:inset 0 0 0 9999px var(--bs-table-bg-state,var(--bs-table-bg-type,var(--bs-table-accent-bg)));box-shadow:inset 0 0 0 9999px var(--bs-table-bg-state,var(--bs-table-bg-type,var(--bs-table-accent-bg)))}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table-group-divider{border-top:calc(var(--bs-border-width)*2) solid}.caption-top{caption-side:top}.table-sm>:not(caption)>*>*{padding:.25rem}.table-bordered>:not(caption)>*{border-left-width:0;border-bottom-width:var(--bs-border-width);border-right-width:0;border-top-width:var(--bs-border-width)}.table-bordered>:not(caption)>*>*{border-left-width:var(--bs-border-width);border-bottom-width:0;border-right-width:var(--bs-border-width);border-top-width:0}.table-borderless>:not(caption)>*>*{border-bottom-width:0}.table-borderless>:not(:first-child){border-top-width:0}.table-striped-columns>:not(caption)>tr>:nth-child(2n),.table-striped>tbody>tr:nth-of-type(odd)>*{--bs-table-color-type:var(--bs-table-striped-color);--bs-table-bg-type:var(--bs-table-striped-bg)}.table-active{--bs-table-color-state:var(--bs-table-active-color);--bs-table-bg-state:var(--bs-table-active-bg)}.table-hover>tbody>tr:hover>*{--bs-table-color-state:var(--bs-table-hover-color);--bs-table-bg-state:var(--bs-table-hover-bg)}.table-primary{--bs-table-color:#000;--bs-table-bg:#cfe2ff;--bs-table-border-color:#bacbe6;--bs-table-striped-bg:#c5d7f2;--bs-table-striped-color:#000;--bs-table-active-bg:#bacbe6;--bs-table-active-color:#000;--bs-table-hover-bg:#bfd1ec;--bs-table-hover-color:#000}.table-primary,.table-secondary{color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-secondary{--bs-table-color:#000;--bs-table-bg:#e2e3e5;--bs-table-border-color:#cbccce;--bs-table-striped-bg:#d7d8da;--bs-table-striped-color:#000;--bs-table-active-bg:#cbccce;--bs-table-active-color:#000;--bs-table-hover-bg:#d1d2d4;--bs-table-hover-color:#000}.table-success{--bs-table-color:#000;--bs-table-bg:#d1e7dd;--bs-table-border-color:#bcd0c7;--bs-table-striped-bg:#c7dbd2;--bs-table-striped-color:#000;--bs-table-active-bg:#bcd0c7;--bs-table-active-color:#000;--bs-table-hover-bg:#c1d6cc;--bs-table-hover-color:#000}.table-info,.table-success{color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-info{--bs-table-color:#000;--bs-table-bg:#cff4fc;--bs-table-border-color:#badce3;--bs-table-striped-bg:#c5e8ef;--bs-table-striped-color:#000;--bs-table-active-bg:#badce3;--bs-table-active-color:#000;--bs-table-hover-bg:#bfe2e9;--bs-table-hover-color:#000}.table-warning{--bs-table-color:#000;--bs-table-bg:#fff3cd;--bs-table-border-color:#e6dbb9;--bs-table-striped-bg:#f2e7c3;--bs-table-striped-color:#000;--bs-table-active-bg:#e6dbb9;--bs-table-active-color:#000;--bs-table-hover-bg:#ece1be;--bs-table-hover-color:#000}.table-danger,.table-warning{color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-danger{--bs-table-color:#000;--bs-table-bg:#f8d7da;--bs-table-border-color:#dfc2c4;--bs-table-striped-bg:#eccccf;--bs-table-striped-color:#000;--bs-table-active-bg:#dfc2c4;--bs-table-active-color:#000;--bs-table-hover-bg:#e5c7ca;--bs-table-hover-color:#000}.table-light{--bs-table-color:#000;--bs-table-bg:#f8f9fa;--bs-table-border-color:#dfe0e1;--bs-table-striped-bg:#ecedee;--bs-table-striped-color:#000;--bs-table-active-bg:#dfe0e1;--bs-table-active-color:#000;--bs-table-hover-bg:#e5e6e7;--bs-table-hover-color:#000}.table-dark,.table-light{color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-dark{--bs-table-color:#fff;--bs-table-bg:#212529;--bs-table-border-color:#373b3e;--bs-table-striped-bg:#2c3034;--bs-table-striped-color:#fff;--bs-table-active-bg:#373b3e;--bs-table-active-color:#fff;--bs-table-hover-bg:#323539;--bs-table-hover-color:#fff}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width:575.98px){.table-responsive-sm{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:767.98px){.table-responsive-md{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:991.98px){.table-responsive-lg{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:1199.98px){.table-responsive-xl{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:1399.98px){.table-responsive-xxl{overflow-x:auto;-webkit-overflow-scrolling:touch}}.form-label{margin-bottom:.5rem}.col-form-label{padding-top:calc(.375rem + var(--bs-border-width));padding-bottom:calc(.375rem + var(--bs-border-width));margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + var(--bs-border-width));padding-bottom:calc(.5rem + var(--bs-border-width));font-size:1.25rem}.col-form-label-sm{padding-top:calc(.25rem + var(--bs-border-width));padding-bottom:calc(.25rem + var(--bs-border-width));font-size:.875rem}.form-text{margin-top:.25rem;font-size:.875em;color:var(--bs-secondary-color)}.form-control{display:block;width:100%;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);background-color:var(--bs-body-bg);background-clip:padding-box;border:var(--bs-border-width) solid var(--bs-border-color);-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:var(--bs-border-radius);-webkit-transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{-webkit-transition:none;transition:none}}.form-control[type=file]{overflow:hidden}.form-control[type=file]:not(:disabled):not([readonly]){cursor:pointer}.form-control:focus{color:var(--bs-body-color);background-color:var(--bs-body-bg);border-color:#86b7fe;outline:0;-webkit-box-shadow:0 0 0 .25rem rgba(13,110,253,.25);box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-control::-webkit-date-and-time-value{min-width:85px;height:1.5em;margin:0}.form-control::-webkit-datetime-edit{display:block;padding:0}.form-control::-moz-placeholder{color:var(--bs-secondary-color);opacity:1}.form-control::-webkit-input-placeholder{color:var(--bs-secondary-color);opacity:1}.form-control::-ms-input-placeholder{color:var(--bs-secondary-color);opacity:1}.form-control::placeholder{color:var(--bs-secondary-color);opacity:1}.form-control:disabled{background-color:var(--bs-secondary-bg);opacity:1}.form-control::-webkit-file-upload-button{padding:.375rem .75rem;margin:-.375rem -.75rem;-webkit-margin-end:.75rem;margin-inline-end:.75rem;color:var(--bs-body-color);background-color:var(--bs-tertiary-bg);pointer-events:none;border:0 solid;border-color:inherit;border-inline-end-width:var(--bs-border-width);border-radius:0;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out}.form-control::file-selector-button{padding:.375rem .75rem;margin:-.375rem -.75rem;-webkit-margin-end:.75rem;margin-inline-end:.75rem;color:var(--bs-body-color);background-color:var(--bs-tertiary-bg);pointer-events:none;border:0 solid;border-color:inherit;border-inline-end-width:var(--bs-border-width);border-radius:0;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control::-webkit-file-upload-button{-webkit-transition:none;transition:none}.form-control::file-selector-button{-webkit-transition:none;transition:none}}.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button{background-color:var(--bs-secondary-bg)}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:var(--bs-secondary-bg)}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;line-height:1.5;color:var(--bs-body-color);background-color:transparent;border-width:medium;border-left:0 solid transparent;border-bottom:var(--bs-border-width) solid transparent;border-right:0 solid transparent;border-top:var(--bs-border-width) solid transparent}.form-control-plaintext:focus{outline:0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{min-height:calc(1.5em + .5rem + var(--bs-border-width)*2);padding:.25rem .5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.form-control-sm::-webkit-file-upload-button{padding:.25rem .5rem;margin:-.25rem -.5rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}.form-control-sm::file-selector-button{padding:.25rem .5rem;margin:-.25rem -.5rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}.form-control-lg{min-height:calc(1.5em + 1rem + var(--bs-border-width)*2);padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}.form-control-lg::-webkit-file-upload-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}textarea.form-control{min-height:calc(1.5em + .75rem + var(--bs-border-width)*2)}textarea.form-control-sm{min-height:calc(1.5em + .5rem + var(--bs-border-width)*2)}textarea.form-control-lg{min-height:calc(1.5em + 1rem + var(--bs-border-width)*2)}.form-control-color{width:3rem;height:calc(1.5em + .75rem + var(--bs-border-width)*2);padding:.375rem}.form-control-color:not(:disabled):not([readonly]){cursor:pointer}.form-control-color::-moz-color-swatch{border:0!important;border-radius:var(--bs-border-radius)}.form-control-color::-webkit-color-swatch{border:0!important;border-radius:var(--bs-border-radius)}.form-control-color.form-control-sm{height:calc(1.5em + .5rem + var(--bs-border-width)*2)}.form-control-color.form-control-lg{height:calc(1.5em + 1rem + var(--bs-border-width)*2)}.form-select{--bs-form-select-bg-img:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3E%3C/svg%3E");display:block;width:100%;padding:.375rem 2.25rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);background-color:var(--bs-body-bg);background-image:var(--bs-form-select-bg-img),var(--bs-form-select-bg-icon,none);background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);-webkit-transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;-webkit-appearance:none;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.form-select{-webkit-transition:none;transition:none}}.form-select:focus{border-color:#86b7fe;outline:0;-webkit-box-shadow:0 0 0 .25rem rgba(13,110,253,.25);box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-select[multiple],.form-select[size]:not([size="1"]){padding-right:.75rem;background-image:none}.form-select:disabled{background-color:var(--bs-secondary-bg)}.form-select:-moz-focusring{color:transparent;text-shadow:0 0 0 var(--bs-body-color)}.form-select-sm{padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.form-select-lg{padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}[data-bs-theme=dark] .form-select{--bs-form-select-bg-img:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23adb5bd' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3E%3C/svg%3E")}.form-check{display:block;min-height:1.5rem;padding-left:1.5em;margin-bottom:.125rem}.form-check .form-check-input{float:left;margin-left:-1.5em}.form-check-reverse{padding-right:1.5em;padding-left:0;text-align:right}.form-check-reverse .form-check-input{float:right;margin-right:-1.5em;margin-left:0}.form-check-input{--bs-form-check-bg:var(--bs-body-bg);width:1em;height:1em;margin-top:.25em;vertical-align:top;background-color:var(--bs-form-check-bg);background-image:var(--bs-form-check-bg-image);background-repeat:no-repeat;background-position:50%;background-size:contain;border:var(--bs-border-width) solid var(--bs-border-color);-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-print-color-adjust:exact;color-adjust:exact;print-color-adjust:exact}.form-check-input[type=checkbox]{border-radius:.25em}.form-check-input[type=radio]{border-radius:50%}.form-check-input:active{-webkit-filter:brightness(90%);filter:brightness(90%)}.form-check-input:focus{border-color:#86b7fe;outline:0;-webkit-box-shadow:0 0 0 .25rem rgba(13,110,253,.25);box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-check-input:checked{background-color:#0d6efd;border-color:#0d6efd}.form-check-input:checked[type=checkbox]{--bs-form-check-bg-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3 6-6'/%3E%3C/svg%3E")}.form-check-input:checked[type=radio]{--bs-form-check-bg-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='2' fill='%23fff'/%3E%3C/svg%3E")}.form-check-input[type=checkbox]:indeterminate{background-color:#0d6efd;border-color:#0d6efd;--bs-form-check-bg-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3E%3C/svg%3E")}.form-check-input:disabled{pointer-events:none;-webkit-filter:none;filter:none;opacity:.5}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{cursor:default;opacity:.5}.form-switch{padding-left:2.5em}.form-switch .form-check-input{--bs-form-switch-bg:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='rgba(0, 0, 0, 0.25)'/%3E%3C/svg%3E");width:2em;margin-left:-2.5em;background-image:var(--bs-form-switch-bg);background-position:0;border-radius:2em;-webkit-transition:background-position .15s ease-in-out;transition:background-position .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-switch .form-check-input{-webkit-transition:none;transition:none}}.form-switch .form-check-input:focus{--bs-form-switch-bg:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%2386b7fe'/%3E%3C/svg%3E")}.form-switch .form-check-input:checked{background-position:100%;--bs-form-switch-bg:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E")}.form-switch.form-check-reverse{padding-right:2.5em;padding-left:0}.form-switch.form-check-reverse .form-check-input{margin-right:-2.5em;margin-left:0}.form-check-inline{display:inline-block;margin-right:1rem}.btn-check{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.btn-check:disabled+.btn,.btn-check[disabled]+.btn{pointer-events:none;-webkit-filter:none;filter:none;opacity:.65}[data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus){--bs-form-switch-bg:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='rgba(255, 255, 255, 0.25)'/%3E%3C/svg%3E")}.form-range{width:100%;height:1.5rem;padding:0;background-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-range:focus{outline:0}.form-range:focus::-webkit-slider-thumb{-webkit-box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25);box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25)}.form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25)}.form-range::-moz-focus-outer{border:0}.form-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#0d6efd;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.form-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#b6d4fe}.form-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:var(--bs-tertiary-bg);border-color:transparent;border-radius:1rem}.form-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#0d6efd;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.form-range::-moz-range-thumb{-webkit-transition:none;transition:none}}.form-range::-moz-range-thumb:active{background-color:#b6d4fe}.form-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:var(--bs-tertiary-bg);border-color:transparent;border-radius:1rem}.form-range:disabled{pointer-events:none}.form-range:disabled::-webkit-slider-thumb{background-color:var(--bs-secondary-color)}.form-range:disabled::-moz-range-thumb{background-color:var(--bs-secondary-color)}.form-floating{position:relative}.form-floating>.form-control,.form-floating>.form-control-plaintext,.form-floating>.form-select{height:calc(3.5rem + var(--bs-border-width)*2);min-height:calc(3.5rem + var(--bs-border-width)*2);line-height:1.25}.form-floating>label{position:absolute;top:0;left:0;z-index:2;height:100%;padding:1rem .75rem;overflow:hidden;text-align:start;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;border:var(--bs-border-width) solid transparent;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transition:opacity .1s ease-in-out,-webkit-transform .1s ease-in-out;transition:opacity .1s ease-in-out,-webkit-transform .1s ease-in-out;transition:opacity .1s ease-in-out,transform .1s ease-in-out;transition:opacity .1s ease-in-out,transform .1s ease-in-out,-webkit-transform .1s ease-in-out}@media (prefers-reduced-motion:reduce){.form-floating>label{-webkit-transition:none;transition:none}}.form-floating>.form-control,.form-floating>.form-control-plaintext{padding:1rem .75rem}.form-floating>.form-control-plaintext::-webkit-input-placeholder,.form-floating>.form-control::-webkit-input-placeholder{color:transparent}.form-floating>.form-control-plaintext::-moz-placeholder,.form-floating>.form-control::-moz-placeholder{color:transparent}.form-floating>.form-control-plaintext::-ms-input-placeholder,.form-floating>.form-control::-ms-input-placeholder{color:transparent}.form-floating>.form-control-plaintext::placeholder,.form-floating>.form-control::placeholder{color:transparent}.form-floating>.form-control-plaintext:not(:-moz-placeholder-shown),.form-floating>.form-control:not(:-moz-placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control-plaintext:focus,.form-floating>.form-control-plaintext:not(:placeholder-shown),.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control-plaintext:-webkit-autofill,.form-floating>.form-control:-webkit-autofill{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-select{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:not(:-moz-placeholder-shown)~label{color:rgba(var(--bs-body-color-rgb),.65);transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.form-floating>.form-control-plaintext~label,.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label,.form-floating>.form-select~label{color:rgba(var(--bs-body-color-rgb),.65);-webkit-transform:scale(.85) translateY(-.5rem) translateX(.15rem);transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.form-floating>.form-control:not(:-moz-placeholder-shown)~label:after{position:absolute;inset:1rem .375rem;z-index:-1;height:1.5em;content:"";background-color:var(--bs-body-bg);border-radius:var(--bs-border-radius)}.form-floating>.form-control-plaintext~label:after,.form-floating>.form-control:focus~label:after,.form-floating>.form-control:not(:placeholder-shown)~label:after,.form-floating>.form-select~label:after{position:absolute;inset:1rem .375rem;z-index:-1;height:1.5em;content:"";background-color:var(--bs-body-bg);border-radius:var(--bs-border-radius)}.form-floating>.form-control:-webkit-autofill~label{color:rgba(var(--bs-body-color-rgb),.65);-webkit-transform:scale(.85) translateY(-.5rem) translateX(.15rem);transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.form-floating>.form-control-plaintext~label{border-left-width:0;border-bottom-width:var(--bs-border-width);border-right-width:0;border-top-width:var(--bs-border-width)}.form-floating>:disabled~label{color:#6c757d}.form-floating>:disabled~label:after{background-color:var(--bs-secondary-bg)}.input-group{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-floating,.input-group>.form-select{position:relative;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;width:1%;min-width:0}.input-group>.form-control:focus,.input-group>.form-floating:focus-within,.input-group>.form-select:focus{z-index:5}.input-group .btn{position:relative;z-index:2}.input-group .btn:focus{z-index:5}.input-group-text{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);text-align:center;white-space:nowrap;background-color:var(--bs-tertiary-bg);border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius)}.input-group-lg>.btn,.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}.input-group-sm>.btn,.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text{padding:.25rem .5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-right:3rem}.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4),.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-control,.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-select,.input-group.has-validation>:nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3),.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-control,.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-select,.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){margin-left:calc(var(--bs-border-width)*-1);border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.form-floating:not(:first-child)>.form-control,.input-group>.form-floating:not(:first-child)>.form-select{border-top-left-radius:0;border-bottom-left-radius:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:var(--bs-form-valid-color)}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:var(--bs-success);border-radius:var(--bs-border-radius)}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:var(--bs-form-valid-border-color);padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:var(--bs-form-valid-border-color);-webkit-box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.form-select.is-valid,.was-validated .form-select:valid{border-color:var(--bs-form-valid-border-color)}.form-select.is-valid:not([multiple]):not([size]),.form-select.is-valid:not([multiple])[size="1"],.was-validated .form-select:valid:not([multiple]):not([size]),.was-validated .form-select:valid:not([multiple])[size="1"]{--bs-form-select-bg-icon:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3E%3C/svg%3E");padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.form-select.is-valid:focus,.was-validated .form-select:valid:focus{border-color:var(--bs-form-valid-border-color);-webkit-box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25)}.form-control-color.is-valid,.was-validated .form-control-color:valid{width:calc(3.75rem + 1.5em)}.form-check-input.is-valid,.was-validated .form-check-input:valid{border-color:var(--bs-form-valid-border-color)}.form-check-input.is-valid:checked,.was-validated .form-check-input:valid:checked{background-color:var(--bs-form-valid-color)}.form-check-input.is-valid:focus,.was-validated .form-check-input:valid:focus{-webkit-box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:var(--bs-form-valid-color)}.form-check-inline .form-check-input~.valid-feedback{margin-left:.5em}.input-group>.form-control:not(:focus).is-valid,.input-group>.form-floating:not(:focus-within).is-valid,.input-group>.form-select:not(:focus).is-valid,.was-validated .input-group>.form-control:not(:focus):valid,.was-validated .input-group>.form-floating:not(:focus-within):valid,.was-validated .input-group>.form-select:not(:focus):valid{z-index:3}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:var(--bs-form-invalid-color)}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:var(--bs-danger);border-radius:var(--bs-border-radius)}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:var(--bs-form-invalid-border-color);padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545'%3E%3Ccircle cx='6' cy='6' r='4.5'/%3E%3Cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3E%3Ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:var(--bs-form-invalid-border-color);-webkit-box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.form-select.is-invalid,.was-validated .form-select:invalid{border-color:var(--bs-form-invalid-border-color)}.form-select.is-invalid:not([multiple]):not([size]),.form-select.is-invalid:not([multiple])[size="1"],.was-validated .form-select:invalid:not([multiple]):not([size]),.was-validated .form-select:invalid:not([multiple])[size="1"]{--bs-form-select-bg-icon:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545'%3E%3Ccircle cx='6' cy='6' r='4.5'/%3E%3Cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3E%3Ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3E%3C/svg%3E");padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.form-select.is-invalid:focus,.was-validated .form-select:invalid:focus{border-color:var(--bs-form-invalid-border-color);-webkit-box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25)}.form-control-color.is-invalid,.was-validated .form-control-color:invalid{width:calc(3.75rem + 1.5em)}.form-check-input.is-invalid,.was-validated .form-check-input:invalid{border-color:var(--bs-form-invalid-border-color)}.form-check-input.is-invalid:checked,.was-validated .form-check-input:invalid:checked{background-color:var(--bs-form-invalid-color)}.form-check-input.is-invalid:focus,.was-validated .form-check-input:invalid:focus{-webkit-box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:var(--bs-form-invalid-color)}.form-check-inline .form-check-input~.invalid-feedback{margin-left:.5em}.input-group>.form-control:not(:focus).is-invalid,.input-group>.form-floating:not(:focus-within).is-invalid,.input-group>.form-select:not(:focus).is-invalid,.was-validated .input-group>.form-control:not(:focus):invalid,.was-validated .input-group>.form-floating:not(:focus-within):invalid,.was-validated .input-group>.form-select:not(:focus):invalid{z-index:4}.btn{--bs-btn-padding-x:0.75rem;--bs-btn-padding-y:0.375rem;--bs-btn-font-size:1rem;--bs-btn-font-weight:400;--bs-btn-line-height:1.5;--bs-btn-color:var(--bs-body-color);--bs-btn-bg:transparent;--bs-btn-border-width:var(--bs-border-width);--bs-btn-border-color:transparent;--bs-btn-border-radius:var(--bs-border-radius);--bs-btn-hover-border-color:transparent;--bs-btn-box-shadow:inset 0 1px 0 hsla(0,0%,100%,0.15),0 1px 1px rgba(0,0,0,0.075);--bs-btn-disabled-opacity:0.65;--bs-btn-focus-box-shadow:0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb),.5);display:inline-block;padding:var(--bs-btn-padding-y) var(--bs-btn-padding-x);font-family:var(--bs-btn-font-family);font-size:var(--bs-btn-font-size);font-weight:var(--bs-btn-font-weight);line-height:var(--bs-btn-line-height);color:var(--bs-btn-color);text-align:center;text-decoration:none;vertical-align:middle;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border:var(--bs-btn-border-width) solid var(--bs-btn-border-color);border-radius:var(--bs-btn-border-radius);background-color:var(--bs-btn-bg);-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{-webkit-transition:none;transition:none}}.btn:hover{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color)}.btn-check+.btn:hover{color:var(--bs-btn-color);background-color:var(--bs-btn-bg);border-color:var(--bs-btn-border-color)}.btn:focus-visible{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg)}.btn-check:focus-visible+.btn,.btn:focus-visible{border-color:var(--bs-btn-hover-border-color);outline:0;-webkit-box-shadow:var(--bs-btn-focus-box-shadow);box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:checked+.btn,.btn.active,.btn.show,.btn:first-child:active,:not(.btn-check)+.btn:active{color:var(--bs-btn-active-color);background-color:var(--bs-btn-active-bg);border-color:var(--bs-btn-active-border-color)}.btn-check:checked+.btn:focus-visible,.btn.active:focus-visible,.btn.show:focus-visible,.btn:first-child:active:focus-visible,:not(.btn-check)+.btn:active:focus-visible{-webkit-box-shadow:var(--bs-btn-focus-box-shadow);box-shadow:var(--bs-btn-focus-box-shadow)}.btn.disabled,.btn:disabled,fieldset:disabled .btn{color:var(--bs-btn-disabled-color);pointer-events:none;background-color:var(--bs-btn-disabled-bg);border-color:var(--bs-btn-disabled-border-color);opacity:var(--bs-btn-disabled-opacity)}.btn-primary{--bs-btn-color:#fff;--bs-btn-bg:#0d6efd;--bs-btn-border-color:#0d6efd;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#0b5ed7;--bs-btn-hover-border-color:#0a58ca;--bs-btn-focus-shadow-rgb:49,132,253;--bs-btn-active-color:#fff;--bs-btn-active-bg:#0a58ca;--bs-btn-active-border-color:#0a53be;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#0d6efd;--bs-btn-disabled-border-color:#0d6efd}.btn-secondary{--bs-btn-color:#fff;--bs-btn-bg:#6c757d;--bs-btn-border-color:#6c757d;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#5c636a;--bs-btn-hover-border-color:#565e64;--bs-btn-focus-shadow-rgb:130,138,145;--bs-btn-active-color:#fff;--bs-btn-active-bg:#565e64;--bs-btn-active-border-color:#51585e;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#6c757d;--bs-btn-disabled-border-color:#6c757d}.btn-success{--bs-btn-color:#fff;--bs-btn-bg:#198754;--bs-btn-border-color:#198754;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#157347;--bs-btn-hover-border-color:#146c43;--bs-btn-focus-shadow-rgb:60,153,110;--bs-btn-active-color:#fff;--bs-btn-active-bg:#146c43;--bs-btn-active-border-color:#13653f;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#198754;--bs-btn-disabled-border-color:#198754}.btn-info{--bs-btn-color:#000;--bs-btn-bg:#0dcaf0;--bs-btn-border-color:#0dcaf0;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#31d2f2;--bs-btn-hover-border-color:#25cff2;--bs-btn-focus-shadow-rgb:11,172,204;--bs-btn-active-color:#000;--bs-btn-active-bg:#3dd5f3;--bs-btn-active-border-color:#25cff2;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#000;--bs-btn-disabled-bg:#0dcaf0;--bs-btn-disabled-border-color:#0dcaf0}.btn-warning{--bs-btn-color:#000;--bs-btn-bg:#ffc107;--bs-btn-border-color:#ffc107;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#ffca2c;--bs-btn-hover-border-color:#ffc720;--bs-btn-focus-shadow-rgb:217,164,6;--bs-btn-active-color:#000;--bs-btn-active-bg:#ffcd39;--bs-btn-active-border-color:#ffc720;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#000;--bs-btn-disabled-bg:#ffc107;--bs-btn-disabled-border-color:#ffc107}.btn-danger{--bs-btn-color:#fff;--bs-btn-bg:#dc3545;--bs-btn-border-color:#dc3545;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#bb2d3b;--bs-btn-hover-border-color:#b02a37;--bs-btn-focus-shadow-rgb:225,83,97;--bs-btn-active-color:#fff;--bs-btn-active-bg:#b02a37;--bs-btn-active-border-color:#a52834;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#dc3545;--bs-btn-disabled-border-color:#dc3545}.btn-light{--bs-btn-color:#000;--bs-btn-bg:#f8f9fa;--bs-btn-border-color:#f8f9fa;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#d3d4d5;--bs-btn-hover-border-color:#c6c7c8;--bs-btn-focus-shadow-rgb:211,212,213;--bs-btn-active-color:#000;--bs-btn-active-bg:#c6c7c8;--bs-btn-active-border-color:#babbbc;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#000;--bs-btn-disabled-bg:#f8f9fa;--bs-btn-disabled-border-color:#f8f9fa}.btn-dark{--bs-btn-color:#fff;--bs-btn-bg:#212529;--bs-btn-border-color:#212529;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#424649;--bs-btn-hover-border-color:#373b3e;--bs-btn-focus-shadow-rgb:66,70,73;--bs-btn-active-color:#fff;--bs-btn-active-bg:#4d5154;--bs-btn-active-border-color:#373b3e;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#212529;--bs-btn-disabled-border-color:#212529}.btn-outline-primary{--bs-btn-color:#0d6efd;--bs-btn-border-color:#0d6efd;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#0d6efd;--bs-btn-hover-border-color:#0d6efd;--bs-btn-focus-shadow-rgb:13,110,253;--bs-btn-active-color:#fff;--bs-btn-active-bg:#0d6efd;--bs-btn-active-border-color:#0d6efd;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#0d6efd;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#0d6efd;--bs-gradient:none}.btn-outline-secondary{--bs-btn-color:#6c757d;--bs-btn-border-color:#6c757d;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#6c757d;--bs-btn-hover-border-color:#6c757d;--bs-btn-focus-shadow-rgb:108,117,125;--bs-btn-active-color:#fff;--bs-btn-active-bg:#6c757d;--bs-btn-active-border-color:#6c757d;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#6c757d;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#6c757d;--bs-gradient:none}.btn-outline-success{--bs-btn-color:#198754;--bs-btn-border-color:#198754;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#198754;--bs-btn-hover-border-color:#198754;--bs-btn-focus-shadow-rgb:25,135,84;--bs-btn-active-color:#fff;--bs-btn-active-bg:#198754;--bs-btn-active-border-color:#198754;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#198754;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#198754;--bs-gradient:none}.btn-outline-info{--bs-btn-color:#0dcaf0;--bs-btn-border-color:#0dcaf0;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#0dcaf0;--bs-btn-hover-border-color:#0dcaf0;--bs-btn-focus-shadow-rgb:13,202,240;--bs-btn-active-color:#000;--bs-btn-active-bg:#0dcaf0;--bs-btn-active-border-color:#0dcaf0;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#0dcaf0;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#0dcaf0;--bs-gradient:none}.btn-outline-warning{--bs-btn-color:#ffc107;--bs-btn-border-color:#ffc107;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#ffc107;--bs-btn-hover-border-color:#ffc107;--bs-btn-focus-shadow-rgb:255,193,7;--bs-btn-active-color:#000;--bs-btn-active-bg:#ffc107;--bs-btn-active-border-color:#ffc107;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#ffc107;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#ffc107;--bs-gradient:none}.btn-outline-danger{--bs-btn-color:#dc3545;--bs-btn-border-color:#dc3545;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#dc3545;--bs-btn-hover-border-color:#dc3545;--bs-btn-focus-shadow-rgb:220,53,69;--bs-btn-active-color:#fff;--bs-btn-active-bg:#dc3545;--bs-btn-active-border-color:#dc3545;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#dc3545;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#dc3545;--bs-gradient:none}.btn-outline-light{--bs-btn-color:#f8f9fa;--bs-btn-border-color:#f8f9fa;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#f8f9fa;--bs-btn-hover-border-color:#f8f9fa;--bs-btn-focus-shadow-rgb:248,249,250;--bs-btn-active-color:#000;--bs-btn-active-bg:#f8f9fa;--bs-btn-active-border-color:#f8f9fa;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#f8f9fa;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#f8f9fa;--bs-gradient:none}.btn-outline-dark{--bs-btn-color:#212529;--bs-btn-border-color:#212529;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#212529;--bs-btn-hover-border-color:#212529;--bs-btn-focus-shadow-rgb:33,37,41;--bs-btn-active-color:#fff;--bs-btn-active-bg:#212529;--bs-btn-active-border-color:#212529;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,0.125);--bs-btn-disabled-color:#212529;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#212529;--bs-gradient:none}.btn-link{--bs-btn-font-weight:400;--bs-btn-color:var(--bs-link-color);--bs-btn-bg:transparent;--bs-btn-border-color:transparent;--bs-btn-hover-color:var(--bs-link-hover-color);--bs-btn-hover-border-color:transparent;--bs-btn-active-color:var(--bs-link-hover-color);--bs-btn-active-border-color:transparent;--bs-btn-disabled-color:#6c757d;--bs-btn-disabled-border-color:transparent;--bs-btn-box-shadow:0 0 0 #000;--bs-btn-focus-shadow-rgb:49,132,253;text-decoration:underline}.btn-link:focus-visible{color:var(--bs-btn-color)}.btn-link:hover{color:var(--bs-btn-hover-color)}.btn-group-lg>.btn,.btn-lg{--bs-btn-padding-y:0.5rem;--bs-btn-padding-x:1rem;--bs-btn-font-size:1.25rem;--bs-btn-border-radius:var(--bs-border-radius-lg)}.btn-group-sm>.btn,.btn-sm{--bs-btn-padding-y:0.25rem;--bs-btn-padding-x:0.5rem;--bs-btn-font-size:0.875rem;--bs-btn-border-radius:var(--bs-border-radius-sm)}.fade{-webkit-transition:opacity .15s linear;transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{-webkit-transition:none;transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden;-webkit-transition:height .35s ease;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{-webkit-transition:none;transition:none}}.collapsing.collapse-horizontal{width:0;height:auto;-webkit-transition:width .35s ease;transition:width .35s ease}@media (prefers-reduced-motion:reduce){.collapsing.collapse-horizontal{-webkit-transition:none;transition:none}}.dropdown,.dropdown-center,.dropend,.dropstart,.dropup,.dropup-center{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty:after{margin-left:0}.dropdown-menu{--bs-dropdown-zindex:1000;--bs-dropdown-min-width:10rem;--bs-dropdown-padding-x:0;--bs-dropdown-padding-y:0.5rem;--bs-dropdown-spacer:0.125rem;--bs-dropdown-font-size:1rem;--bs-dropdown-color:var(--bs-body-color);--bs-dropdown-bg:var(--bs-body-bg);--bs-dropdown-border-color:var(--bs-border-color-translucent);--bs-dropdown-border-radius:var(--bs-border-radius);--bs-dropdown-border-width:var(--bs-border-width);--bs-dropdown-inner-border-radius:calc(var(--bs-border-radius) - var(--bs-border-width));--bs-dropdown-divider-bg:var(--bs-border-color-translucent);--bs-dropdown-divider-margin-y:0.5rem;--bs-dropdown-box-shadow:0 0.5rem 1rem rgba(0,0,0,0.15);--bs-dropdown-link-color:var(--bs-body-color);--bs-dropdown-link-hover-color:var(--bs-body-color);--bs-dropdown-link-hover-bg:var(--bs-tertiary-bg);--bs-dropdown-link-active-color:#fff;--bs-dropdown-link-active-bg:#0d6efd;--bs-dropdown-link-disabled-color:var(--bs-tertiary-color);--bs-dropdown-item-padding-x:1rem;--bs-dropdown-item-padding-y:0.25rem;--bs-dropdown-header-color:#6c757d;--bs-dropdown-header-padding-x:1rem;--bs-dropdown-header-padding-y:0.5rem;position:absolute;z-index:var(--bs-dropdown-zindex);display:none;min-width:var(--bs-dropdown-min-width);padding:var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);margin:0;font-size:var(--bs-dropdown-font-size);color:var(--bs-dropdown-color);text-align:left;list-style:none;background-color:var(--bs-dropdown-bg);background-clip:padding-box;border:var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);border-radius:var(--bs-dropdown-border-radius)}.dropdown-menu[data-bs-popper]{top:100%;left:0;margin-top:var(--bs-dropdown-spacer)}.dropdown-menu-start{--bs-position:start}.dropdown-menu-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-end{--bs-position:end}.dropdown-menu-end[data-bs-popper]{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-start{--bs-position:start}.dropdown-menu-sm-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-sm-end{--bs-position:end}.dropdown-menu-sm-end[data-bs-popper]{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-start{--bs-position:start}.dropdown-menu-md-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-md-end{--bs-position:end}.dropdown-menu-md-end[data-bs-popper]{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-start{--bs-position:start}.dropdown-menu-lg-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-lg-end{--bs-position:end}.dropdown-menu-lg-end[data-bs-popper]{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-start{--bs-position:start}.dropdown-menu-xl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xl-end{--bs-position:end}.dropdown-menu-xl-end[data-bs-popper]{right:0;left:auto}}@media (min-width:1400px){.dropdown-menu-xxl-start{--bs-position:start}.dropdown-menu-xxl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xxl-end{--bs-position:end}.dropdown-menu-xxl-end[data-bs-popper]{right:0;left:auto}}.dropup .dropdown-menu[data-bs-popper]{top:auto;bottom:100%;margin-top:0;margin-bottom:var(--bs-dropdown-spacer)}.dropup .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty:after{margin-left:0}.dropend .dropdown-menu[data-bs-popper]{top:0;right:auto;left:100%;margin-top:0;margin-left:var(--bs-dropdown-spacer)}.dropend .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropend .dropdown-toggle:empty:after{margin-left:0}.dropend .dropdown-toggle:after{vertical-align:0}.dropstart .dropdown-menu[data-bs-popper]{top:0;right:100%;left:auto;margin-top:0;margin-right:var(--bs-dropdown-spacer)}.dropstart .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";display:none}.dropstart .dropdown-toggle:before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropstart .dropdown-toggle:empty:after{margin-left:0}.dropstart .dropdown-toggle:before{vertical-align:0}.dropdown-divider{height:0;margin:var(--bs-dropdown-divider-margin-y) 0;overflow:hidden;border-top:1px solid var(--bs-dropdown-divider-bg);opacity:1}.dropdown-item{display:block;width:100%;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);clear:both;font-weight:400;color:var(--bs-dropdown-link-color);text-align:inherit;text-decoration:none;white-space:nowrap;background-color:transparent;border:0;border-radius:var(--bs-dropdown-item-border-radius,0)}.dropdown-item:focus,.dropdown-item:hover{color:var(--bs-dropdown-link-hover-color);background-color:var(--bs-dropdown-link-hover-bg)}.dropdown-item.active,.dropdown-item:active{color:var(--bs-dropdown-link-active-color);text-decoration:none;background-color:var(--bs-dropdown-link-active-bg)}.dropdown-item.disabled,.dropdown-item:disabled{color:var(--bs-dropdown-link-disabled-color);pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);margin-bottom:0;font-size:.875rem;color:var(--bs-dropdown-header-color);white-space:nowrap}.dropdown-item-text{display:block;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);color:var(--bs-dropdown-link-color)}.dropdown-menu-dark{--bs-dropdown-color:#dee2e6;--bs-dropdown-bg:#343a40;--bs-dropdown-border-color:var(--bs-border-color-translucent);--bs-dropdown-link-color:#dee2e6;--bs-dropdown-link-hover-color:#fff;--bs-dropdown-divider-bg:var(--bs-border-color-translucent);--bs-dropdown-link-hover-bg:hsla(0,0%,100%,0.15);--bs-dropdown-link-active-color:#fff;--bs-dropdown-link-active-bg:#0d6efd;--bs-dropdown-link-disabled-color:#adb5bd;--bs-dropdown-header-color:#adb5bd}.btn-group,.btn-group-vertical{position:relative;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.btn-group-vertical>.btn-check:checked+.btn,.btn-group-vertical>.btn-check:focus+.btn,.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn-check:checked+.btn,.btn-group>.btn-check:focus+.btn,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group{border-radius:var(--bs-border-radius)}.btn-group>.btn-group:not(:first-child),.btn-group>:not(.btn-check:first-child)+.btn{margin-left:calc(var(--bs-border-width)*-1)}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn.dropdown-toggle-split:first-child,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:nth-child(n+3),.btn-group>:not(.btn-check)+.btn{border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split:after,.dropend .dropdown-toggle-split:after,.dropup .dropdown-toggle-split:after{margin-left:0}.dropstart .dropdown-toggle-split:before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:calc(var(--bs-border-width)*-1)}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn~.btn{border-top-left-radius:0;border-top-right-radius:0}.nav{--bs-nav-link-padding-x:1rem;--bs-nav-link-padding-y:0.5rem;--bs-nav-link-color:var(--bs-link-color);--bs-nav-link-hover-color:var(--bs-link-hover-color);--bs-nav-link-disabled-color:var(--bs-secondary-color);display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);font-size:var(--bs-nav-link-font-size);font-weight:var(--bs-nav-link-font-weight);color:var(--bs-nav-link-color);text-decoration:none;background:none;border:0;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}@media (prefers-reduced-motion:reduce){.nav-link{-webkit-transition:none;transition:none}}.nav-link:focus,.nav-link:hover{color:var(--bs-nav-link-hover-color)}.nav-link:focus-visible{outline:0;-webkit-box-shadow:0 0 0 .25rem rgba(13,110,253,.25);box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.nav-link.disabled{color:var(--bs-nav-link-disabled-color);pointer-events:none;cursor:default}.nav-tabs{--bs-nav-tabs-border-width:var(--bs-border-width);--bs-nav-tabs-border-color:var(--bs-border-color);--bs-nav-tabs-border-radius:var(--bs-border-radius);--bs-nav-tabs-link-hover-border-color:var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);--bs-nav-tabs-link-active-color:var(--bs-emphasis-color);--bs-nav-tabs-link-active-bg:var(--bs-body-bg);--bs-nav-tabs-link-active-border-color:var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);border-bottom:var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color)}.nav-tabs .nav-link{margin-bottom:calc(var(--bs-nav-tabs-border-width)*-1);border:var(--bs-nav-tabs-border-width) solid transparent;border-top-left-radius:var(--bs-nav-tabs-border-radius);border-top-right-radius:var(--bs-nav-tabs-border-radius)}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{isolation:isolate;border-color:var(--bs-nav-tabs-link-hover-border-color)}.nav-tabs .nav-link.disabled,.nav-tabs .nav-link:disabled{color:var(--bs-nav-link-disabled-color);background-color:transparent;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:var(--bs-nav-tabs-link-active-color);background-color:var(--bs-nav-tabs-link-active-bg);border-color:var(--bs-nav-tabs-link-active-border-color)}.nav-tabs .dropdown-menu{margin-top:calc(var(--bs-nav-tabs-border-width)*-1);border-top-left-radius:0;border-top-right-radius:0}.nav-pills{--bs-nav-pills-border-radius:var(--bs-border-radius);--bs-nav-pills-link-active-color:#fff;--bs-nav-pills-link-active-bg:#0d6efd}.nav-pills .nav-link{border-radius:var(--bs-nav-pills-border-radius)}.nav-pills .nav-link:disabled{color:var(--bs-nav-link-disabled-color);background-color:transparent;border-color:transparent}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:var(--bs-nav-pills-link-active-color);background-color:var(--bs-nav-pills-link-active-bg)}.nav-underline{--bs-nav-underline-gap:1rem;--bs-nav-underline-border-width:0.125rem;--bs-nav-underline-link-active-color:var(--bs-emphasis-color);gap:var(--bs-nav-underline-gap)}.nav-underline .nav-link{padding-right:0;padding-left:0;border-bottom:var(--bs-nav-underline-border-width) solid transparent}.nav-underline .nav-link:focus,.nav-underline .nav-link:hover{border-bottom-color:currentcolor}.nav-underline .nav-link.active,.nav-underline .show>.nav-link{font-weight:700;color:var(--bs-nav-underline-link-active-color);border-bottom-color:currentcolor}.nav-fill .nav-item,.nav-fill>.nav-link{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;text-align:center}.nav-justified .nav-item,.nav-justified>.nav-link{-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;text-align:center}.nav-fill .nav-item .nav-link,.nav-justified .nav-item .nav-link{width:100%}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{--bs-navbar-padding-x:0;--bs-navbar-padding-y:0.5rem;--bs-navbar-color:rgba(var(--bs-emphasis-color-rgb),0.65);--bs-navbar-hover-color:rgba(var(--bs-emphasis-color-rgb),0.8);--bs-navbar-disabled-color:rgba(var(--bs-emphasis-color-rgb),0.3);--bs-navbar-active-color:rgba(var(--bs-emphasis-color-rgb),1);--bs-navbar-brand-padding-y:0.3125rem;--bs-navbar-brand-margin-end:1rem;--bs-navbar-brand-font-size:1.25rem;--bs-navbar-brand-color:rgba(var(--bs-emphasis-color-rgb),1);--bs-navbar-brand-hover-color:rgba(var(--bs-emphasis-color-rgb),1);--bs-navbar-nav-link-padding-x:0.5rem;--bs-navbar-toggler-padding-y:0.25rem;--bs-navbar-toggler-padding-x:0.75rem;--bs-navbar-toggler-font-size:1.25rem;--bs-navbar-toggler-icon-bg:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='rgba(33, 37, 41, 0.75)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");--bs-navbar-toggler-border-color:rgba(var(--bs-emphasis-color-rgb),0.15);--bs-navbar-toggler-border-radius:var(--bs-border-radius);--bs-navbar-toggler-focus-width:0.25rem;--bs-navbar-toggler-transition:box-shadow 0.15s ease-in-out;position:relative;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:var(--bs-navbar-padding-y) var(--bs-navbar-padding-x)}.navbar,.navbar>.container,.navbar>.container-fluid,.navbar>.container-lg,.navbar>.container-md,.navbar>.container-sm,.navbar>.container-xl,.navbar>.container-xxl{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.navbar>.container,.navbar>.container-fluid,.navbar>.container-lg,.navbar>.container-md,.navbar>.container-sm,.navbar>.container-xl,.navbar>.container-xxl{-ms-flex-wrap:inherit;flex-wrap:inherit}.navbar-brand{padding-top:var(--bs-navbar-brand-padding-y);padding-bottom:var(--bs-navbar-brand-padding-y);margin-right:var(--bs-navbar-brand-margin-end);font-size:var(--bs-navbar-brand-font-size);color:var(--bs-navbar-brand-color);text-decoration:none;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{color:var(--bs-navbar-brand-hover-color)}.navbar-nav{--bs-nav-link-padding-x:0;--bs-nav-link-padding-y:0.5rem;--bs-nav-link-color:var(--bs-navbar-color);--bs-nav-link-hover-color:var(--bs-navbar-hover-color);--bs-nav-link-disabled-color:var(--bs-navbar-disabled-color);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link.active,.navbar-nav .nav-link.show{color:var(--bs-navbar-active-color)}.navbar-nav .dropdown-menu{position:static}.navbar-text{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-navbar-color)}.navbar-text a,.navbar-text a:focus,.navbar-text a:hover{color:var(--bs-navbar-active-color)}.navbar-collapse{-ms-flex-preferred-size:100%;flex-basis:100%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.navbar-toggler{padding:var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);font-size:var(--bs-navbar-toggler-font-size);line-height:1;color:var(--bs-navbar-color);background-color:transparent;border:var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);border-radius:var(--bs-navbar-toggler-border-radius);-webkit-transition:var(--bs-navbar-toggler-transition);transition:var(--bs-navbar-toggler-transition)}@media (prefers-reduced-motion:reduce){.navbar-toggler{-webkit-transition:none;transition:none}}.navbar-toggler:hover{text-decoration:none}.navbar-toggler:focus{text-decoration:none;outline:0;-webkit-box-shadow:0 0 0 var(--bs-navbar-toggler-focus-width);box-shadow:0 0 0 var(--bs-navbar-toggler-focus-width)}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;background-image:var(--bs-navbar-toggler-icon-bg);background-repeat:no-repeat;background-position:50%;background-size:100%}.navbar-nav-scroll{max-height:var(--bs-scroll-height,75vh);overflow-y:auto}@media (min-width:576px){.navbar-expand-sm{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-sm .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}.navbar-expand-sm .offcanvas{position:static;z-index:auto;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;-webkit-transform:none!important;transform:none!important;-webkit-transition:none;transition:none}.navbar-expand-sm .offcanvas .offcanvas-header{display:none}.navbar-expand-sm .offcanvas .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:768px){.navbar-expand-md{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-md .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}.navbar-expand-md .offcanvas{position:static;z-index:auto;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;-webkit-transform:none!important;transform:none!important;-webkit-transition:none;transition:none}.navbar-expand-md .offcanvas .offcanvas-header{display:none}.navbar-expand-md .offcanvas .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:992px){.navbar-expand-lg{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-lg .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-lg .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}.navbar-expand-lg .offcanvas{position:static;z-index:auto;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;-webkit-transform:none!important;transform:none!important;-webkit-transition:none;transition:none}.navbar-expand-lg .offcanvas .offcanvas-header{display:none}.navbar-expand-lg .offcanvas .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:1200px){.navbar-expand-xl{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-xl .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}.navbar-expand-xl .offcanvas{position:static;z-index:auto;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;-webkit-transform:none!important;transform:none!important;-webkit-transition:none;transition:none}.navbar-expand-xl .offcanvas .offcanvas-header{display:none}.navbar-expand-xl .offcanvas .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:1400px){.navbar-expand-xxl{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-xxl .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand-xxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxl .navbar-collapse{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-xxl .navbar-toggler{display:none}.navbar-expand-xxl .offcanvas{position:static;z-index:auto;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;-webkit-transform:none!important;transform:none!important;-webkit-transition:none;transition:none}.navbar-expand-xxl .offcanvas .offcanvas-header{display:none}.navbar-expand-xxl .offcanvas .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible}}.navbar-expand{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-expand .offcanvas{position:static;z-index:auto;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;-webkit-transform:none!important;transform:none!important;-webkit-transition:none;transition:none}.navbar-expand .offcanvas .offcanvas-header{display:none}.navbar-expand .offcanvas .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible}.navbar-dark,.navbar[data-bs-theme=dark]{--bs-navbar-color:hsla(0,0%,100%,0.55);--bs-navbar-hover-color:hsla(0,0%,100%,0.75);--bs-navbar-disabled-color:hsla(0,0%,100%,0.25);--bs-navbar-active-color:#fff;--bs-navbar-brand-color:#fff;--bs-navbar-brand-hover-color:#fff;--bs-navbar-toggler-border-color:hsla(0,0%,100%,0.1)}.navbar-dark,.navbar[data-bs-theme=dark],[data-bs-theme=dark] .navbar-toggler-icon{--bs-navbar-toggler-icon-bg:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='rgba(255, 255, 255, 0.55)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")}.card{--bs-card-spacer-y:1rem;--bs-card-spacer-x:1rem;--bs-card-title-spacer-y:0.5rem;--bs-card-border-width:var(--bs-border-width);--bs-card-border-color:var(--bs-border-color-translucent);--bs-card-border-radius:var(--bs-border-radius);--bs-card-inner-border-radius:calc(var(--bs-border-radius) - var(--bs-border-width));--bs-card-cap-padding-y:0.5rem;--bs-card-cap-padding-x:1rem;--bs-card-cap-bg:rgba(var(--bs-body-color-rgb),0.03);--bs-card-bg:var(--bs-body-bg);--bs-card-img-overlay-padding:1rem;--bs-card-group-margin:0.75rem;position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;min-width:0;height:var(--bs-card-height);color:var(--bs-body-color);word-wrap:break-word;background-color:var(--bs-card-bg);background-clip:border-box;border:var(--bs-card-border-width) solid var(--bs-card-border-color);border-radius:var(--bs-card-border-radius)}.card>hr{margin-right:0;margin-left:0}.card>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child{border-top-width:0;border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card>.list-group:last-child{border-bottom-width:0;border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;padding:var(--bs-card-spacer-y) var(--bs-card-spacer-x);color:var(--bs-card-color)}.card-title{margin-bottom:var(--bs-card-title-spacer-y);color:var(--bs-card-title-color)}.card-subtitle{margin-top:calc(var(--bs-card-title-spacer-y)*-0.5);color:var(--bs-card-subtitle-color)}.card-subtitle,.card-text:last-child{margin-bottom:0}.card-link+.card-link{margin-left:var(--bs-card-spacer-x)}.card-header{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);margin-bottom:0;color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-bottom:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-header:first-child{border-radius:var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0}.card-footer{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-top:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-footer:last-child{border-radius:0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius)}.card-header-tabs{margin-right:calc(var(--bs-card-cap-padding-x)*-0.5);margin-bottom:calc(var(--bs-card-cap-padding-y)*-1);margin-left:calc(var(--bs-card-cap-padding-x)*-0.5);border-bottom:0}.card-header-tabs .nav-link.active{background-color:var(--bs-card-bg);border-bottom-color:var(--bs-card-bg)}.card-header-pills{margin-right:calc(var(--bs-card-cap-padding-x)*-0.5);margin-left:calc(var(--bs-card-cap-padding-x)*-0.5)}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:var(--bs-card-img-overlay-padding);border-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-bottom,.card-img-top{width:100%}.card-img,.card-img-top{border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-bottom{border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card-group>.card{margin-bottom:var(--bs-card-group-margin)}@media (min-width:576px){.card-group{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap}.card-group>.card{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.accordion{--bs-accordion-color:var(--bs-body-color);--bs-accordion-bg:var(--bs-body-bg);--bs-accordion-transition:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out,border-radius 0.15s ease;--bs-accordion-border-color:var(--bs-border-color);--bs-accordion-border-width:var(--bs-border-width);--bs-accordion-border-radius:var(--bs-border-radius);--bs-accordion-inner-border-radius:calc(var(--bs-border-radius) - var(--bs-border-width));--bs-accordion-btn-padding-x:1.25rem;--bs-accordion-btn-padding-y:1rem;--bs-accordion-btn-color:var(--bs-body-color);--bs-accordion-btn-bg:var(--bs-accordion-bg);--bs-accordion-btn-icon:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 01.708 0L8 10.293l5.646-5.647a.5.5 0 01.708.708l-6 6a.5.5 0 01-.708 0l-6-6a.5.5 0 010-.708z'/%3E%3C/svg%3E");--bs-accordion-btn-icon-width:1.25rem;--bs-accordion-btn-icon-transform:rotate(-180deg);--bs-accordion-btn-icon-transition:transform 0.2s ease-in-out;--bs-accordion-btn-active-icon:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23052c65'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 01.708 0L8 10.293l5.646-5.647a.5.5 0 01.708.708l-6 6a.5.5 0 01-.708 0l-6-6a.5.5 0 010-.708z'/%3E%3C/svg%3E");--bs-accordion-btn-focus-border-color:#86b7fe;--bs-accordion-btn-focus-box-shadow:0 0 0 0.25rem rgba(13,110,253,0.25);--bs-accordion-body-padding-x:1.25rem;--bs-accordion-body-padding-y:1rem;--bs-accordion-active-color:var(--bs-primary-text-emphasis);--bs-accordion-active-bg:var(--bs-primary-bg-subtle)}.accordion-button{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;padding:var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);font-size:1rem;color:var(--bs-accordion-btn-color);text-align:left;background-color:var(--bs-accordion-btn-bg);border:0;border-radius:0;overflow-anchor:none;-webkit-transition:var(--bs-accordion-transition);transition:var(--bs-accordion-transition)}@media (prefers-reduced-motion:reduce){.accordion-button{-webkit-transition:none;transition:none}}.accordion-button:not(.collapsed){color:var(--bs-accordion-active-color);background-color:var(--bs-accordion-active-bg);-webkit-box-shadow:inset 0 calc(var(--bs-accordion-border-width)*-1) 0 var(--bs-accordion-border-color);box-shadow:inset 0 calc(var(--bs-accordion-border-width)*-1) 0 var(--bs-accordion-border-color)}.accordion-button:not(.collapsed):after{background-image:var(--bs-accordion-btn-active-icon);-webkit-transform:var(--bs-accordion-btn-icon-transform);transform:var(--bs-accordion-btn-icon-transform)}.accordion-button:after{-ms-flex-negative:0;flex-shrink:0;width:var(--bs-accordion-btn-icon-width);height:var(--bs-accordion-btn-icon-width);margin-left:auto;content:"";background-image:var(--bs-accordion-btn-icon);background-repeat:no-repeat;background-size:var(--bs-accordion-btn-icon-width);-webkit-transition:var(--bs-accordion-btn-icon-transition);transition:var(--bs-accordion-btn-icon-transition)}@media (prefers-reduced-motion:reduce){.accordion-button:after{-webkit-transition:none;transition:none}}.accordion-button:hover{z-index:2}.accordion-button:focus{z-index:3;border-color:var(--bs-accordion-btn-focus-border-color);outline:0;-webkit-box-shadow:var(--bs-accordion-btn-focus-box-shadow);box-shadow:var(--bs-accordion-btn-focus-box-shadow)}.accordion-header{margin-bottom:0}.accordion-item{color:var(--bs-accordion-color);background-color:var(--bs-accordion-bg);border:var(--bs-accordion-border-width) solid var(--bs-accordion-border-color)}.accordion-item:first-of-type{border-top-left-radius:var(--bs-accordion-border-radius);border-top-right-radius:var(--bs-accordion-border-radius)}.accordion-item:first-of-type .accordion-button{border-top-left-radius:var(--bs-accordion-inner-border-radius);border-top-right-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:not(:first-of-type){border-top:0}.accordion-item:last-of-type{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-item:last-of-type .accordion-button.collapsed{border-bottom-right-radius:var(--bs-accordion-inner-border-radius);border-bottom-left-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:last-of-type .accordion-collapse{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-body{padding:var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x)}.accordion-flush .accordion-collapse{border-width:0}.accordion-flush .accordion-item{border-right:0;border-left:0;border-radius:0}.accordion-flush .accordion-item:first-child{border-top:0}.accordion-flush .accordion-item:last-child{border-bottom:0}.accordion-flush .accordion-item .accordion-button,.accordion-flush .accordion-item .accordion-button.collapsed{border-radius:0}[data-bs-theme=dark] .accordion-button:after{--bs-accordion-btn-icon:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 01.708 0L8 10.293l5.646-5.647a.5.5 0 01.708.708l-6 6a.5.5 0 01-.708 0l-6-6a.5.5 0 010-.708z'/%3E%3C/svg%3E");--bs-accordion-btn-active-icon:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 01.708 0L8 10.293l5.646-5.647a.5.5 0 01.708.708l-6 6a.5.5 0 01-.708 0l-6-6a.5.5 0 010-.708z'/%3E%3C/svg%3E")}.breadcrumb{--bs-breadcrumb-padding-x:0;--bs-breadcrumb-padding-y:0;--bs-breadcrumb-margin-bottom:1rem;--bs-breadcrumb-divider-color:var(--bs-secondary-color);--bs-breadcrumb-item-padding-x:0.5rem;--bs-breadcrumb-item-active-color:var(--bs-secondary-color);display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);margin-bottom:var(--bs-breadcrumb-margin-bottom);font-size:var(--bs-breadcrumb-font-size);list-style:none;background-color:var(--bs-breadcrumb-bg);border-radius:var(--bs-breadcrumb-border-radius)}.breadcrumb-item+.breadcrumb-item{padding-left:var(--bs-breadcrumb-item-padding-x)}.breadcrumb-item+.breadcrumb-item:before{float:left;padding-right:var(--bs-breadcrumb-item-padding-x);color:var(--bs-breadcrumb-divider-color);content:var(--bs-breadcrumb-divider,"/")}.breadcrumb-item.active{color:var(--bs-breadcrumb-item-active-color)}.pagination{--bs-pagination-padding-x:0.75rem;--bs-pagination-padding-y:0.375rem;--bs-pagination-font-size:1rem;--bs-pagination-color:var(--bs-link-color);--bs-pagination-bg:var(--bs-body-bg);--bs-pagination-border-width:var(--bs-border-width);--bs-pagination-border-color:var(--bs-border-color);--bs-pagination-border-radius:var(--bs-border-radius);--bs-pagination-hover-color:var(--bs-link-hover-color);--bs-pagination-hover-bg:var(--bs-tertiary-bg);--bs-pagination-hover-border-color:var(--bs-border-color);--bs-pagination-focus-color:var(--bs-link-hover-color);--bs-pagination-focus-bg:var(--bs-secondary-bg);--bs-pagination-focus-box-shadow:0 0 0 0.25rem rgba(13,110,253,0.25);--bs-pagination-active-color:#fff;--bs-pagination-active-bg:#0d6efd;--bs-pagination-active-border-color:#0d6efd;--bs-pagination-disabled-color:var(--bs-secondary-color);--bs-pagination-disabled-bg:var(--bs-secondary-bg);--bs-pagination-disabled-border-color:var(--bs-border-color);display:-webkit-box;display:-ms-flexbox;display:flex;padding-left:0;list-style:none}.page-link{position:relative;display:block;padding:var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);font-size:var(--bs-pagination-font-size);color:var(--bs-pagination-color);text-decoration:none;background-color:var(--bs-pagination-bg);border:var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.page-link{-webkit-transition:none;transition:none}}.page-link:hover{z-index:2;color:var(--bs-pagination-hover-color);background-color:var(--bs-pagination-hover-bg);border-color:var(--bs-pagination-hover-border-color)}.page-link:focus{z-index:3;color:var(--bs-pagination-focus-color);background-color:var(--bs-pagination-focus-bg);outline:0;-webkit-box-shadow:var(--bs-pagination-focus-box-shadow);box-shadow:var(--bs-pagination-focus-box-shadow)}.active>.page-link,.page-link.active{z-index:3;color:var(--bs-pagination-active-color);background-color:var(--bs-pagination-active-bg);border-color:var(--bs-pagination-active-border-color)}.disabled>.page-link,.page-link.disabled{color:var(--bs-pagination-disabled-color);pointer-events:none;background-color:var(--bs-pagination-disabled-bg);border-color:var(--bs-pagination-disabled-border-color)}.page-item:not(:first-child) .page-link{margin-left:calc(var(--bs-border-width)*-1)}.page-item:first-child .page-link{border-top-left-radius:var(--bs-pagination-border-radius);border-bottom-left-radius:var(--bs-pagination-border-radius)}.page-item:last-child .page-link{border-top-right-radius:var(--bs-pagination-border-radius);border-bottom-right-radius:var(--bs-pagination-border-radius)}.pagination-lg{--bs-pagination-padding-x:1.5rem;--bs-pagination-padding-y:0.75rem;--bs-pagination-font-size:1.25rem;--bs-pagination-border-radius:var(--bs-border-radius-lg)}.pagination-sm{--bs-pagination-padding-x:0.5rem;--bs-pagination-padding-y:0.25rem;--bs-pagination-font-size:0.875rem;--bs-pagination-border-radius:var(--bs-border-radius-sm)}.badge{--bs-badge-padding-x:0.65em;--bs-badge-padding-y:0.35em;--bs-badge-font-size:0.75em;--bs-badge-font-weight:700;--bs-badge-color:#fff;--bs-badge-border-radius:var(--bs-border-radius);display:inline-block;padding:var(--bs-badge-padding-y) var(--bs-badge-padding-x);font-size:var(--bs-badge-font-size);font-weight:var(--bs-badge-font-weight);line-height:1;color:var(--bs-badge-color);text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:var(--bs-badge-border-radius)}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.alert{--bs-alert-bg:transparent;--bs-alert-padding-x:1rem;--bs-alert-padding-y:1rem;--bs-alert-margin-bottom:1rem;--bs-alert-color:inherit;--bs-alert-border-color:transparent;--bs-alert-border:var(--bs-border-width) solid var(--bs-alert-border-color);--bs-alert-border-radius:var(--bs-border-radius);--bs-alert-link-color:inherit;position:relative;padding:var(--bs-alert-padding-y) var(--bs-alert-padding-x);margin-bottom:var(--bs-alert-margin-bottom);color:var(--bs-alert-color);background-color:var(--bs-alert-bg);border:var(--bs-alert-border);border-radius:var(--bs-alert-border-radius)}.alert-heading{color:inherit}.alert-link{font-weight:700;color:var(--bs-alert-link-color)}.alert-dismissible{padding-right:3rem}.alert-dismissible .btn-close{position:absolute;top:0;right:0;z-index:2;padding:1.25rem 1rem}.alert-primary{--bs-alert-color:var(--bs-primary-text-emphasis);--bs-alert-bg:var(--bs-primary-bg-subtle);--bs-alert-border-color:var(--bs-primary-border-subtle);--bs-alert-link-color:var(--bs-primary-text-emphasis)}.alert-secondary{--bs-alert-color:var(--bs-secondary-text-emphasis);--bs-alert-bg:var(--bs-secondary-bg-subtle);--bs-alert-border-color:var(--bs-secondary-border-subtle);--bs-alert-link-color:var(--bs-secondary-text-emphasis)}.alert-success{--bs-alert-color:var(--bs-success-text-emphasis);--bs-alert-bg:var(--bs-success-bg-subtle);--bs-alert-border-color:var(--bs-success-border-subtle);--bs-alert-link-color:var(--bs-success-text-emphasis)}.alert-info{--bs-alert-color:var(--bs-info-text-emphasis);--bs-alert-bg:var(--bs-info-bg-subtle);--bs-alert-border-color:var(--bs-info-border-subtle);--bs-alert-link-color:var(--bs-info-text-emphasis)}.alert-warning{--bs-alert-color:var(--bs-warning-text-emphasis);--bs-alert-bg:var(--bs-warning-bg-subtle);--bs-alert-border-color:var(--bs-warning-border-subtle);--bs-alert-link-color:var(--bs-warning-text-emphasis)}.alert-danger{--bs-alert-color:var(--bs-danger-text-emphasis);--bs-alert-bg:var(--bs-danger-bg-subtle);--bs-alert-border-color:var(--bs-danger-border-subtle);--bs-alert-link-color:var(--bs-danger-text-emphasis)}.alert-light{--bs-alert-color:var(--bs-light-text-emphasis);--bs-alert-bg:var(--bs-light-bg-subtle);--bs-alert-border-color:var(--bs-light-border-subtle);--bs-alert-link-color:var(--bs-light-text-emphasis)}.alert-dark{--bs-alert-color:var(--bs-dark-text-emphasis);--bs-alert-bg:var(--bs-dark-bg-subtle);--bs-alert-border-color:var(--bs-dark-border-subtle);--bs-alert-link-color:var(--bs-dark-text-emphasis)}@-webkit-keyframes progress-bar-stripes{0%{background-position-x:1rem}}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress,.progress-stacked{--bs-progress-height:1rem;--bs-progress-font-size:0.75rem;--bs-progress-bg:var(--bs-secondary-bg);--bs-progress-border-radius:var(--bs-border-radius);--bs-progress-box-shadow:var(--bs-box-shadow-inset);--bs-progress-bar-color:#fff;--bs-progress-bar-bg:#0d6efd;--bs-progress-bar-transition:width 0.6s ease;height:var(--bs-progress-height);font-size:var(--bs-progress-font-size);background-color:var(--bs-progress-bg);border-radius:var(--bs-progress-border-radius)}.progress,.progress-bar,.progress-stacked{display:-webkit-box;display:-ms-flexbox;display:flex;overflow:hidden}.progress-bar{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;color:var(--bs-progress-bar-color);text-align:center;white-space:nowrap;background-color:var(--bs-progress-bar-bg);-webkit-transition:var(--bs-progress-bar-transition);transition:var(--bs-progress-bar-transition)}@media (prefers-reduced-motion:reduce){.progress-bar{-webkit-transition:none;transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-size:var(--bs-progress-height) var(--bs-progress-height)}.progress-stacked>.progress{overflow:visible}.progress-stacked>.progress>.progress-bar{width:100%}.progress-bar-animated{-webkit-animation:progress-bar-stripes 1s linear infinite;animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated{-webkit-animation:none;animation:none}}.list-group{--bs-list-group-color:var(--bs-body-color);--bs-list-group-bg:var(--bs-body-bg);--bs-list-group-border-color:var(--bs-border-color);--bs-list-group-border-width:var(--bs-border-width);--bs-list-group-border-radius:var(--bs-border-radius);--bs-list-group-item-padding-x:1rem;--bs-list-group-item-padding-y:0.5rem;--bs-list-group-action-color:var(--bs-secondary-color);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-tertiary-bg);--bs-list-group-action-active-color:var(--bs-body-color);--bs-list-group-action-active-bg:var(--bs-secondary-bg);--bs-list-group-disabled-color:var(--bs-secondary-color);--bs-list-group-disabled-bg:var(--bs-body-bg);--bs-list-group-active-color:#fff;--bs-list-group-active-bg:#0d6efd;--bs-list-group-active-border-color:#0d6efd;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0;border-radius:var(--bs-list-group-border-radius)}.list-group-numbered{list-style-type:none;counter-reset:section}.list-group-numbered>.list-group-item:before{content:counters(section,".") ". ";counter-increment:section}.list-group-item-action{width:100%;color:var(--bs-list-group-action-color);text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:var(--bs-list-group-action-hover-color);text-decoration:none;background-color:var(--bs-list-group-action-hover-bg)}.list-group-item-action:active{color:var(--bs-list-group-action-active-color);background-color:var(--bs-list-group-action-active-bg)}.list-group-item{position:relative;display:block;padding:var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);color:var(--bs-list-group-color);text-decoration:none;background-color:var(--bs-list-group-bg);border:var(--bs-list-group-border-width) solid var(--bs-list-group-border-color)}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:var(--bs-list-group-disabled-color);pointer-events:none;background-color:var(--bs-list-group-disabled-bg)}.list-group-item.active{z-index:2;color:var(--bs-list-group-active-color);background-color:var(--bs-list-group-active-bg);border-color:var(--bs-list-group-active-border-color)}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:calc(var(--bs-list-group-border-width)*-1);border-top-width:var(--bs-list-group-border-width)}.list-group-horizontal{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-left:calc(var(--bs-list-group-border-width)*-1);border-left-width:var(--bs-list-group-border-width)}@media (min-width:576px){.list-group-horizontal-sm{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-left:calc(var(--bs-list-group-border-width)*-1);border-left-width:var(--bs-list-group-border-width)}}@media (min-width:768px){.list-group-horizontal-md{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-left:calc(var(--bs-list-group-border-width)*-1);border-left-width:var(--bs-list-group-border-width)}}@media (min-width:992px){.list-group-horizontal-lg{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-left:calc(var(--bs-list-group-border-width)*-1);border-left-width:var(--bs-list-group-border-width)}}@media (min-width:1200px){.list-group-horizontal-xl{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-left:calc(var(--bs-list-group-border-width)*-1);border-left-width:var(--bs-list-group-border-width)}}@media (min-width:1400px){.list-group-horizontal-xxl{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-xxl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xxl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item.active{margin-left:calc(var(--bs-list-group-border-width)*-1);border-left-width:var(--bs-list-group-border-width)}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-left-width:0;border-bottom-width:var(--bs-list-group-border-width);border-right-width:0;border-top-width:0}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{--bs-list-group-color:var(--bs-primary-text-emphasis);--bs-list-group-bg:var(--bs-primary-bg-subtle);--bs-list-group-border-color:var(--bs-primary-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-primary-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-primary-border-subtle);--bs-list-group-active-color:var(--bs-primary-bg-subtle);--bs-list-group-active-bg:var(--bs-primary-text-emphasis);--bs-list-group-active-border-color:var(--bs-primary-text-emphasis)}.list-group-item-secondary{--bs-list-group-color:var(--bs-secondary-text-emphasis);--bs-list-group-bg:var(--bs-secondary-bg-subtle);--bs-list-group-border-color:var(--bs-secondary-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-secondary-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-secondary-border-subtle);--bs-list-group-active-color:var(--bs-secondary-bg-subtle);--bs-list-group-active-bg:var(--bs-secondary-text-emphasis);--bs-list-group-active-border-color:var(--bs-secondary-text-emphasis)}.list-group-item-success{--bs-list-group-color:var(--bs-success-text-emphasis);--bs-list-group-bg:var(--bs-success-bg-subtle);--bs-list-group-border-color:var(--bs-success-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-success-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-success-border-subtle);--bs-list-group-active-color:var(--bs-success-bg-subtle);--bs-list-group-active-bg:var(--bs-success-text-emphasis);--bs-list-group-active-border-color:var(--bs-success-text-emphasis)}.list-group-item-info{--bs-list-group-color:var(--bs-info-text-emphasis);--bs-list-group-bg:var(--bs-info-bg-subtle);--bs-list-group-border-color:var(--bs-info-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-info-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-info-border-subtle);--bs-list-group-active-color:var(--bs-info-bg-subtle);--bs-list-group-active-bg:var(--bs-info-text-emphasis);--bs-list-group-active-border-color:var(--bs-info-text-emphasis)}.list-group-item-warning{--bs-list-group-color:var(--bs-warning-text-emphasis);--bs-list-group-bg:var(--bs-warning-bg-subtle);--bs-list-group-border-color:var(--bs-warning-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-warning-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-warning-border-subtle);--bs-list-group-active-color:var(--bs-warning-bg-subtle);--bs-list-group-active-bg:var(--bs-warning-text-emphasis);--bs-list-group-active-border-color:var(--bs-warning-text-emphasis)}.list-group-item-danger{--bs-list-group-color:var(--bs-danger-text-emphasis);--bs-list-group-bg:var(--bs-danger-bg-subtle);--bs-list-group-border-color:var(--bs-danger-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-danger-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-danger-border-subtle);--bs-list-group-active-color:var(--bs-danger-bg-subtle);--bs-list-group-active-bg:var(--bs-danger-text-emphasis);--bs-list-group-active-border-color:var(--bs-danger-text-emphasis)}.list-group-item-light{--bs-list-group-color:var(--bs-light-text-emphasis);--bs-list-group-bg:var(--bs-light-bg-subtle);--bs-list-group-border-color:var(--bs-light-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-light-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-light-border-subtle);--bs-list-group-active-color:var(--bs-light-bg-subtle);--bs-list-group-active-bg:var(--bs-light-text-emphasis);--bs-list-group-active-border-color:var(--bs-light-text-emphasis)}.list-group-item-dark{--bs-list-group-color:var(--bs-dark-text-emphasis);--bs-list-group-bg:var(--bs-dark-bg-subtle);--bs-list-group-border-color:var(--bs-dark-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-dark-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-dark-border-subtle);--bs-list-group-active-color:var(--bs-dark-bg-subtle);--bs-list-group-active-bg:var(--bs-dark-text-emphasis);--bs-list-group-active-border-color:var(--bs-dark-text-emphasis)}.btn-close{--bs-btn-close-color:#000;--bs-btn-close-bg:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3E%3C/svg%3E");--bs-btn-close-opacity:0.5;--bs-btn-close-hover-opacity:0.75;--bs-btn-close-focus-shadow:0 0 0 0.25rem rgba(13,110,253,0.25);--bs-btn-close-focus-opacity:1;--bs-btn-close-disabled-opacity:0.25;--bs-btn-close-white-filter:invert(1) grayscale(100%) brightness(200%);-webkit-box-sizing:content-box;box-sizing:content-box;width:1em;height:1em;padding:.25em;background:transparent var(--bs-btn-close-bg) 50%/1em auto no-repeat;border:0;border-radius:.375rem;opacity:var(--bs-btn-close-opacity)}.btn-close,.btn-close:hover{color:var(--bs-btn-close-color)}.btn-close:hover{text-decoration:none;opacity:var(--bs-btn-close-hover-opacity)}.btn-close:focus{outline:0;-webkit-box-shadow:var(--bs-btn-close-focus-shadow);box-shadow:var(--bs-btn-close-focus-shadow);opacity:var(--bs-btn-close-focus-opacity)}.btn-close.disabled,.btn-close:disabled{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;opacity:var(--bs-btn-close-disabled-opacity)}.btn-close-white,[data-bs-theme=dark] .btn-close{-webkit-filter:var(--bs-btn-close-white-filter);filter:var(--bs-btn-close-white-filter)}.toast{--bs-toast-zindex:1090;--bs-toast-padding-x:0.75rem;--bs-toast-padding-y:0.5rem;--bs-toast-spacing:1.5rem;--bs-toast-max-width:350px;--bs-toast-font-size:0.875rem;--bs-toast-bg:rgba(var(--bs-body-bg-rgb),0.85);--bs-toast-border-width:var(--bs-border-width);--bs-toast-border-color:var(--bs-border-color-translucent);--bs-toast-border-radius:var(--bs-border-radius);--bs-toast-box-shadow:var(--bs-box-shadow);--bs-toast-header-color:var(--bs-secondary-color);--bs-toast-header-bg:rgba(var(--bs-body-bg-rgb),0.85);--bs-toast-header-border-color:var(--bs-border-color-translucent);width:var(--bs-toast-max-width);max-width:100%;font-size:var(--bs-toast-font-size);color:var(--bs-toast-color);pointer-events:auto;background-color:var(--bs-toast-bg);background-clip:padding-box;border:var(--bs-toast-border-width) solid var(--bs-toast-border-color);-webkit-box-shadow:var(--bs-toast-box-shadow);box-shadow:var(--bs-toast-box-shadow);border-radius:var(--bs-toast-border-radius)}.toast.showing{opacity:0}.toast:not(.show){display:none}.toast-container{--bs-toast-zindex:1090;position:absolute;z-index:var(--bs-toast-zindex);width:-webkit-max-content;width:-moz-max-content;width:max-content;max-width:100%;pointer-events:none}.toast-container>:not(:last-child){margin-bottom:var(--bs-toast-spacing)}.toast-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:var(--bs-toast-padding-y) var(--bs-toast-padding-x);color:var(--bs-toast-header-color);background-color:var(--bs-toast-header-bg);background-clip:padding-box;border-bottom:var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);border-top-left-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));border-top-right-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width))}.toast-header .btn-close{margin-right:calc(var(--bs-toast-padding-x)*-0.5);margin-left:var(--bs-toast-padding-x)}.toast-body{padding:var(--bs-toast-padding-x);word-wrap:break-word}.modal{--bs-modal-zindex:1055;--bs-modal-width:500px;--bs-modal-padding:1rem;--bs-modal-margin:0.5rem;--bs-modal-bg:var(--bs-body-bg);--bs-modal-border-color:var(--bs-border-color-translucent);--bs-modal-border-width:var(--bs-border-width);--bs-modal-border-radius:var(--bs-border-radius-lg);--bs-modal-box-shadow:0 0.125rem 0.25rem rgba(0,0,0,0.075);--bs-modal-inner-border-radius:calc(var(--bs-border-radius-lg) - var(--bs-border-width));--bs-modal-header-padding-x:1rem;--bs-modal-header-padding-y:1rem;--bs-modal-header-padding:1rem 1rem;--bs-modal-header-border-color:var(--bs-border-color);--bs-modal-header-border-width:var(--bs-border-width);--bs-modal-title-line-height:1.5;--bs-modal-footer-gap:0.5rem;--bs-modal-footer-border-color:var(--bs-border-color);--bs-modal-footer-border-width:var(--bs-border-width);position:fixed;top:0;left:0;z-index:var(--bs-modal-zindex);display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}.modal-dialog{position:relative;width:auto;margin:var(--bs-modal-margin);pointer-events:none}.modal.fade .modal-dialog{-webkit-transition:-webkit-transform .3s ease-out;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translateY(-50px);transform:translateY(-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{-webkit-transition:none;transition:none}}.modal.show .modal-dialog{-webkit-transform:none;transform:none}.modal.modal-static .modal-dialog{-webkit-transform:scale(1.02);transform:scale(1.02)}.modal-dialog-scrollable{height:calc(100% - var(--bs-modal-margin)*2)}.modal-dialog-scrollable .modal-content{max-height:100%;overflow:hidden}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-height:calc(100% - var(--bs-modal-margin)*2)}.modal-content,.modal-dialog-centered{display:-webkit-box;display:-ms-flexbox;display:flex}.modal-content{position:relative;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:100%;color:var(--bs-modal-color);pointer-events:auto;background-color:var(--bs-modal-bg);background-clip:padding-box;border:var(--bs-modal-border-width) solid var(--bs-modal-border-color);border-radius:var(--bs-modal-border-radius);outline:0}.modal-backdrop{--bs-backdrop-zindex:1050;--bs-backdrop-bg:#000;--bs-backdrop-opacity:0.5;position:fixed;top:0;left:0;z-index:var(--bs-backdrop-zindex);width:100vw;height:100vh;background-color:var(--bs-backdrop-bg)}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:var(--bs-backdrop-opacity)}.modal-header{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-negative:0;flex-shrink:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:var(--bs-modal-header-padding);border-bottom:var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);border-top-left-radius:var(--bs-modal-inner-border-radius);border-top-right-radius:var(--bs-modal-inner-border-radius)}.modal-header .btn-close{padding:calc(var(--bs-modal-header-padding-y)*0.5) calc(var(--bs-modal-header-padding-x)*0.5);margin:calc(var(--bs-modal-header-padding-y)*-0.5) calc(var(--bs-modal-header-padding-x)*-0.5) calc(var(--bs-modal-header-padding-y)*-0.5) auto}.modal-title{margin-bottom:0;line-height:var(--bs-modal-title-line-height)}.modal-body{position:relative;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;padding:var(--bs-modal-padding)}.modal-footer{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-negative:0;flex-shrink:0;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;padding:calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap)*0.5);background-color:var(--bs-modal-footer-bg);border-top:var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);border-bottom-right-radius:var(--bs-modal-inner-border-radius);border-bottom-left-radius:var(--bs-modal-inner-border-radius)}.modal-footer>*{margin:calc(var(--bs-modal-footer-gap)*0.5)}@media (min-width:576px){.modal{--bs-modal-margin:1.75rem;--bs-modal-box-shadow:0 0.5rem 1rem rgba(0,0,0,0.15)}.modal-dialog{max-width:var(--bs-modal-width);margin-right:auto;margin-left:auto}.modal-sm{--bs-modal-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{--bs-modal-width:800px}}@media (min-width:1200px){.modal-xl{--bs-modal-width:1140px}}.modal-fullscreen{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen .modal-footer,.modal-fullscreen .modal-header{border-radius:0}.modal-fullscreen .modal-body{overflow-y:auto}@media (max-width:575.98px){.modal-fullscreen-sm-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-sm-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-sm-down .modal-footer,.modal-fullscreen-sm-down .modal-header{border-radius:0}.modal-fullscreen-sm-down .modal-body{overflow-y:auto}}@media (max-width:767.98px){.modal-fullscreen-md-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-md-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-md-down .modal-footer,.modal-fullscreen-md-down .modal-header{border-radius:0}.modal-fullscreen-md-down .modal-body{overflow-y:auto}}@media (max-width:991.98px){.modal-fullscreen-lg-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-lg-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-lg-down .modal-footer,.modal-fullscreen-lg-down .modal-header{border-radius:0}.modal-fullscreen-lg-down .modal-body{overflow-y:auto}}@media (max-width:1199.98px){.modal-fullscreen-xl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xl-down .modal-footer,.modal-fullscreen-xl-down .modal-header{border-radius:0}.modal-fullscreen-xl-down .modal-body{overflow-y:auto}}@media (max-width:1399.98px){.modal-fullscreen-xxl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xxl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xxl-down .modal-footer,.modal-fullscreen-xxl-down .modal-header{border-radius:0}.modal-fullscreen-xxl-down .modal-body{overflow-y:auto}}.tooltip{--bs-tooltip-zindex:1080;--bs-tooltip-max-width:200px;--bs-tooltip-padding-x:0.5rem;--bs-tooltip-padding-y:0.25rem;--bs-tooltip-font-size:0.875rem;--bs-tooltip-color:var(--bs-body-bg);--bs-tooltip-bg:var(--bs-emphasis-color);--bs-tooltip-border-radius:var(--bs-border-radius);--bs-tooltip-opacity:0.9;--bs-tooltip-arrow-width:0.8rem;--bs-tooltip-arrow-height:0.4rem;z-index:var(--bs-tooltip-zindex);display:block;margin:var(--bs-tooltip-margin);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-tooltip-font-size);word-wrap:break-word;opacity:0}.tooltip.show{opacity:var(--bs-tooltip-opacity)}.tooltip .tooltip-arrow{display:block;width:var(--bs-tooltip-arrow-width);height:var(--bs-tooltip-arrow-height)}.tooltip .tooltip-arrow:before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow,.bs-tooltip-top .tooltip-arrow{bottom:calc(var(--bs-tooltip-arrow-height)*-1)}.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow:before,.bs-tooltip-top .tooltip-arrow:before{top:-1px;border-left-width:calc(var(--bs-tooltip-arrow-width)*0.5);border-bottom-width:0;border-right-width:calc(var(--bs-tooltip-arrow-width)*0.5);border-top-width:var(--bs-tooltip-arrow-height);border-top-color:var(--bs-tooltip-bg)}.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow,.bs-tooltip-end .tooltip-arrow{left:calc(var(--bs-tooltip-arrow-height)*-1);width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow:before,.bs-tooltip-end .tooltip-arrow:before{right:-1px;border-left-width:0;border-bottom-width:calc(var(--bs-tooltip-arrow-width)*0.5);border-right-width:var(--bs-tooltip-arrow-height);border-top-width:calc(var(--bs-tooltip-arrow-width)*0.5);border-right-color:var(--bs-tooltip-bg)}.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow,.bs-tooltip-bottom .tooltip-arrow{top:calc(var(--bs-tooltip-arrow-height)*-1)}.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow:before,.bs-tooltip-bottom .tooltip-arrow:before{bottom:-1px;border-left-width:calc(var(--bs-tooltip-arrow-width)*0.5);border-bottom-width:var(--bs-tooltip-arrow-height);border-right-width:calc(var(--bs-tooltip-arrow-width)*0.5);border-top-width:0;border-bottom-color:var(--bs-tooltip-bg)}.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow,.bs-tooltip-start .tooltip-arrow{right:calc(var(--bs-tooltip-arrow-height)*-1);width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow:before,.bs-tooltip-start .tooltip-arrow:before{left:-1px;border-left-width:var(--bs-tooltip-arrow-height);border-bottom-width:calc(var(--bs-tooltip-arrow-width)*0.5);border-right-width:0;border-top-width:calc(var(--bs-tooltip-arrow-width)*0.5);border-left-color:var(--bs-tooltip-bg)}.tooltip-inner{max-width:var(--bs-tooltip-max-width);padding:var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);color:var(--bs-tooltip-color);text-align:center;background-color:var(--bs-tooltip-bg);border-radius:var(--bs-tooltip-border-radius)}.popover{--bs-popover-zindex:1070;--bs-popover-max-width:276px;--bs-popover-font-size:0.875rem;--bs-popover-bg:var(--bs-body-bg);--bs-popover-border-width:var(--bs-border-width);--bs-popover-border-color:var(--bs-border-color-translucent);--bs-popover-border-radius:var(--bs-border-radius-lg);--bs-popover-inner-border-radius:calc(var(--bs-border-radius-lg) - var(--bs-border-width));--bs-popover-box-shadow:0 0.5rem 1rem rgba(0,0,0,0.15);--bs-popover-header-padding-x:1rem;--bs-popover-header-padding-y:0.5rem;--bs-popover-header-font-size:1rem;--bs-popover-header-color:inherit;--bs-popover-header-bg:var(--bs-secondary-bg);--bs-popover-body-padding-x:1rem;--bs-popover-body-padding-y:1rem;--bs-popover-body-color:var(--bs-body-color);--bs-popover-arrow-width:1rem;--bs-popover-arrow-height:0.5rem;--bs-popover-arrow-border:var(--bs-popover-border-color);z-index:var(--bs-popover-zindex);display:block;max-width:var(--bs-popover-max-width);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-popover-font-size);word-wrap:break-word;background-color:var(--bs-popover-bg);background-clip:padding-box;border:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-radius:var(--bs-popover-border-radius)}.popover .popover-arrow{display:block;width:var(--bs-popover-arrow-width);height:var(--bs-popover-arrow-height)}.popover .popover-arrow:after,.popover .popover-arrow:before{position:absolute;display:block;content:"";border:0 solid transparent}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow,.bs-popover-top>.popover-arrow{bottom:calc(var(--bs-popover-arrow-height)*-1 - var(--bs-popover-border-width))}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow:after,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow:before,.bs-popover-top>.popover-arrow:after,.bs-popover-top>.popover-arrow:before{border-left-width:calc(var(--bs-popover-arrow-width)*0.5);border-bottom-width:0;border-right-width:calc(var(--bs-popover-arrow-width)*0.5);border-top-width:var(--bs-popover-arrow-height)}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow:before,.bs-popover-top>.popover-arrow:before{bottom:0;border-top-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow:after,.bs-popover-top>.popover-arrow:after{bottom:var(--bs-popover-border-width);border-top-color:var(--bs-popover-bg)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow,.bs-popover-end>.popover-arrow{left:calc(var(--bs-popover-arrow-height)*-1 - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow:after,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow:before,.bs-popover-end>.popover-arrow:after,.bs-popover-end>.popover-arrow:before{border-left-width:0;border-bottom-width:calc(var(--bs-popover-arrow-width)*0.5);border-right-width:var(--bs-popover-arrow-height);border-top-width:calc(var(--bs-popover-arrow-width)*0.5)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow:before,.bs-popover-end>.popover-arrow:before{left:0;border-right-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow:after,.bs-popover-end>.popover-arrow:after{left:var(--bs-popover-border-width);border-right-color:var(--bs-popover-bg)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow,.bs-popover-bottom>.popover-arrow{top:calc(var(--bs-popover-arrow-height)*-1 - var(--bs-popover-border-width))}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow:after,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow:before,.bs-popover-bottom>.popover-arrow:after,.bs-popover-bottom>.popover-arrow:before{border-left-width:calc(var(--bs-popover-arrow-width)*0.5);border-bottom-width:var(--bs-popover-arrow-height);border-right-width:calc(var(--bs-popover-arrow-width)*0.5);border-top-width:0}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow:before,.bs-popover-bottom>.popover-arrow:before{top:0;border-bottom-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow:after,.bs-popover-bottom>.popover-arrow:after{top:var(--bs-popover-border-width);border-bottom-color:var(--bs-popover-bg)}.bs-popover-auto[data-popper-placement^=bottom] .popover-header:before,.bs-popover-bottom .popover-header:before{position:absolute;top:0;left:50%;display:block;width:var(--bs-popover-arrow-width);margin-left:calc(var(--bs-popover-arrow-width)*-0.5);content:"";border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-header-bg)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow,.bs-popover-start>.popover-arrow{right:calc(var(--bs-popover-arrow-height)*-1 - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow:after,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow:before,.bs-popover-start>.popover-arrow:after,.bs-popover-start>.popover-arrow:before{border-left-width:var(--bs-popover-arrow-height);border-bottom-width:calc(var(--bs-popover-arrow-width)*0.5);border-right-width:0;border-top-width:calc(var(--bs-popover-arrow-width)*0.5)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow:before,.bs-popover-start>.popover-arrow:before{right:0;border-left-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow:after,.bs-popover-start>.popover-arrow:after{right:var(--bs-popover-border-width);border-left-color:var(--bs-popover-bg)}.popover-header{padding:var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);margin-bottom:0;font-size:var(--bs-popover-header-font-size);color:var(--bs-popover-header-color);background-color:var(--bs-popover-header-bg);border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-top-left-radius:var(--bs-popover-inner-border-radius);border-top-right-radius:var(--bs-popover-inner-border-radius)}.popover-header:empty{display:none}.popover-body{padding:var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);color:var(--bs-popover-body-color)}.carousel{position:relative}.carousel.pointer-event{-ms-touch-action:pan-y;touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner:after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transition:-webkit-transform .6s ease-in-out;transition:-webkit-transform .6s ease-in-out;transition:transform .6s ease-in-out;transition:transform .6s ease-in-out,-webkit-transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{-webkit-transition:none;transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-end,.carousel-item-next:not(.carousel-item-start){-webkit-transform:translateX(100%);transform:translateX(100%)}.active.carousel-item-start,.carousel-item-prev:not(.carousel-item-end){-webkit-transform:translateX(-100%);transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;-webkit-transition-property:opacity;transition-property:opacity;-webkit-transform:none;transform:none}.carousel-fade .carousel-item-next.carousel-item-start,.carousel-fade .carousel-item-prev.carousel-item-end,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-end,.carousel-fade .active.carousel-item-start{z-index:0;opacity:0;-webkit-transition:opacity 0s .6s;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-end,.carousel-fade .active.carousel-item-start{-webkit-transition:none;transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:15%;padding:0;color:#fff;text-align:center;background:none;border:0;opacity:.5;-webkit-transition:opacity .15s ease;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{-webkit-transition:none;transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:2rem;height:2rem;background-repeat:no-repeat;background-position:50%;background-size:100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3E%3Cpath d='M11.354 1.646a.5.5 0 010 .708L5.707 8l5.647 5.646a.5.5 0 01-.708.708l-6-6a.5.5 0 010-.708l6-6a.5.5 0 01.708 0z'/%3E%3C/svg%3E")}.carousel-control-next-icon{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3E%3Cpath d='M4.646 1.646a.5.5 0 01.708 0l6 6a.5.5 0 010 .708l-6 6a.5.5 0 01-.708-.708L10.293 8 4.646 2.354a.5.5 0 010-.708z'/%3E%3C/svg%3E")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:2;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:0;margin-right:15%;margin-bottom:1rem;margin-left:15%}.carousel-indicators [data-bs-target]{-webkit-box-sizing:content-box;box-sizing:content-box;-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto;width:30px;height:3px;padding:0;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border:0;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;-webkit-transition:opacity .6s ease;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators [data-bs-target]{-webkit-transition:none;transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:1.25rem;left:15%;padding-top:1.25rem;padding-bottom:1.25rem;color:#fff;text-align:center}.carousel-dark .carousel-control-next-icon,.carousel-dark .carousel-control-prev-icon{-webkit-filter:invert(1) grayscale(100);filter:invert(1) grayscale(100)}.carousel-dark .carousel-indicators [data-bs-target]{background-color:#000}.carousel-dark .carousel-caption{color:#000}[data-bs-theme=dark].carousel .carousel-control-next-icon,[data-bs-theme=dark] .carousel .carousel-control-next-icon,[data-bs-theme=dark].carousel .carousel-control-prev-icon,[data-bs-theme=dark] .carousel .carousel-control-prev-icon{-webkit-filter:invert(1) grayscale(100);filter:invert(1) grayscale(100)}[data-bs-theme=dark].carousel .carousel-indicators [data-bs-target],[data-bs-theme=dark] .carousel .carousel-indicators [data-bs-target]{background-color:#000}[data-bs-theme=dark].carousel .carousel-caption,[data-bs-theme=dark] .carousel .carousel-caption{color:#000}.spinner-border,.spinner-grow{display:inline-block;width:var(--bs-spinner-width);height:var(--bs-spinner-height);vertical-align:var(--bs-spinner-vertical-align);border-radius:50%;-webkit-animation:var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name);animation:var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name)}@-webkit-keyframes spinner-border{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes spinner-border{to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.spinner-border{--bs-spinner-width:2rem;--bs-spinner-height:2rem;--bs-spinner-vertical-align:-0.125em;--bs-spinner-border-width:0.25em;--bs-spinner-animation-speed:0.75s;--bs-spinner-animation-name:spinner-border;border:var(--bs-spinner-border-width) solid;border-right-color:transparent}.spinner-border-sm{--bs-spinner-width:1rem;--bs-spinner-height:1rem;--bs-spinner-border-width:0.2em}@-webkit-keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1;-webkit-transform:none;transform:none}}@keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1;-webkit-transform:none;transform:none}}.spinner-grow{--bs-spinner-width:2rem;--bs-spinner-height:2rem;--bs-spinner-vertical-align:-0.125em;--bs-spinner-animation-speed:0.75s;--bs-spinner-animation-name:spinner-grow;background-color:currentcolor;opacity:0}.spinner-grow-sm{--bs-spinner-width:1rem;--bs-spinner-height:1rem}@media (prefers-reduced-motion:reduce){.spinner-border,.spinner-grow{--bs-spinner-animation-speed:1.5s}}.offcanvas,.offcanvas-lg,.offcanvas-md,.offcanvas-sm,.offcanvas-xl,.offcanvas-xxl{--bs-offcanvas-zindex:1045;--bs-offcanvas-width:400px;--bs-offcanvas-height:30vh;--bs-offcanvas-padding-x:1rem;--bs-offcanvas-padding-y:1rem;--bs-offcanvas-color:var(--bs-body-color);--bs-offcanvas-bg:var(--bs-body-bg);--bs-offcanvas-border-width:var(--bs-border-width);--bs-offcanvas-border-color:var(--bs-border-color-translucent);--bs-offcanvas-box-shadow:0 0.125rem 0.25rem rgba(0,0,0,0.075);--bs-offcanvas-transition:transform 0.3s ease-in-out;--bs-offcanvas-title-line-height:1.5}@media (max-width:575.98px){.offcanvas-sm{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;-webkit-transition:var(--bs-offcanvas-transition);transition:var(--bs-offcanvas-transition)}}@media (max-width:575.98px) and (prefers-reduced-motion:reduce){.offcanvas-sm{-webkit-transition:none;transition:none}}@media (max-width:575.98px){.offcanvas-sm.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateX(-100%);transform:translateX(-100%)}.offcanvas-sm.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateX(100%);transform:translateX(100%)}.offcanvas-sm.offcanvas-top{top:0;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateY(-100%);transform:translateY(-100%)}.offcanvas-sm.offcanvas-bottom,.offcanvas-sm.offcanvas-top{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%}.offcanvas-sm.offcanvas-bottom{border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateY(100%);transform:translateY(100%)}.offcanvas-sm.show:not(.hiding),.offcanvas-sm.showing{-webkit-transform:none;transform:none}.offcanvas-sm.hiding,.offcanvas-sm.show,.offcanvas-sm.showing{visibility:visible}}@media (min-width:576px){.offcanvas-sm{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-sm .offcanvas-header{display:none}.offcanvas-sm .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:767.98px){.offcanvas-md{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;-webkit-transition:var(--bs-offcanvas-transition);transition:var(--bs-offcanvas-transition)}}@media (max-width:767.98px) and (prefers-reduced-motion:reduce){.offcanvas-md{-webkit-transition:none;transition:none}}@media (max-width:767.98px){.offcanvas-md.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateX(-100%);transform:translateX(-100%)}.offcanvas-md.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateX(100%);transform:translateX(100%)}.offcanvas-md.offcanvas-top{top:0;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateY(-100%);transform:translateY(-100%)}.offcanvas-md.offcanvas-bottom,.offcanvas-md.offcanvas-top{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%}.offcanvas-md.offcanvas-bottom{border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateY(100%);transform:translateY(100%)}.offcanvas-md.show:not(.hiding),.offcanvas-md.showing{-webkit-transform:none;transform:none}.offcanvas-md.hiding,.offcanvas-md.show,.offcanvas-md.showing{visibility:visible}}@media (min-width:768px){.offcanvas-md{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-md .offcanvas-header{display:none}.offcanvas-md .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:991.98px){.offcanvas-lg{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;-webkit-transition:var(--bs-offcanvas-transition);transition:var(--bs-offcanvas-transition)}}@media (max-width:991.98px) and (prefers-reduced-motion:reduce){.offcanvas-lg{-webkit-transition:none;transition:none}}@media (max-width:991.98px){.offcanvas-lg.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateX(-100%);transform:translateX(-100%)}.offcanvas-lg.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateX(100%);transform:translateX(100%)}.offcanvas-lg.offcanvas-top{top:0;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateY(-100%);transform:translateY(-100%)}.offcanvas-lg.offcanvas-bottom,.offcanvas-lg.offcanvas-top{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%}.offcanvas-lg.offcanvas-bottom{border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateY(100%);transform:translateY(100%)}.offcanvas-lg.show:not(.hiding),.offcanvas-lg.showing{-webkit-transform:none;transform:none}.offcanvas-lg.hiding,.offcanvas-lg.show,.offcanvas-lg.showing{visibility:visible}}@media (min-width:992px){.offcanvas-lg{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-lg .offcanvas-header{display:none}.offcanvas-lg .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:1199.98px){.offcanvas-xl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;-webkit-transition:var(--bs-offcanvas-transition);transition:var(--bs-offcanvas-transition)}}@media (max-width:1199.98px) and (prefers-reduced-motion:reduce){.offcanvas-xl{-webkit-transition:none;transition:none}}@media (max-width:1199.98px){.offcanvas-xl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateX(-100%);transform:translateX(-100%)}.offcanvas-xl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateX(100%);transform:translateX(100%)}.offcanvas-xl.offcanvas-top{top:0;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateY(-100%);transform:translateY(-100%)}.offcanvas-xl.offcanvas-bottom,.offcanvas-xl.offcanvas-top{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%}.offcanvas-xl.offcanvas-bottom{border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateY(100%);transform:translateY(100%)}.offcanvas-xl.show:not(.hiding),.offcanvas-xl.showing{-webkit-transform:none;transform:none}.offcanvas-xl.hiding,.offcanvas-xl.show,.offcanvas-xl.showing{visibility:visible}}@media (min-width:1200px){.offcanvas-xl{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-xl .offcanvas-header{display:none}.offcanvas-xl .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:1399.98px){.offcanvas-xxl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;-webkit-transition:var(--bs-offcanvas-transition);transition:var(--bs-offcanvas-transition)}}@media (max-width:1399.98px) and (prefers-reduced-motion:reduce){.offcanvas-xxl{-webkit-transition:none;transition:none}}@media (max-width:1399.98px){.offcanvas-xxl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateX(-100%);transform:translateX(-100%)}.offcanvas-xxl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateX(100%);transform:translateX(100%)}.offcanvas-xxl.offcanvas-top{top:0;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateY(-100%);transform:translateY(-100%)}.offcanvas-xxl.offcanvas-bottom,.offcanvas-xxl.offcanvas-top{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%}.offcanvas-xxl.offcanvas-bottom{border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateY(100%);transform:translateY(100%)}.offcanvas-xxl.show:not(.hiding),.offcanvas-xxl.showing{-webkit-transform:none;transform:none}.offcanvas-xxl.hiding,.offcanvas-xxl.show,.offcanvas-xxl.showing{visibility:visible}}@media (min-width:1400px){.offcanvas-xxl{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-xxl .offcanvas-header{display:none}.offcanvas-xxl .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}.offcanvas{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;-webkit-transition:var(--bs-offcanvas-transition);transition:var(--bs-offcanvas-transition)}@media (prefers-reduced-motion:reduce){.offcanvas{-webkit-transition:none;transition:none}}.offcanvas.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateX(-100%);transform:translateX(-100%)}.offcanvas.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateX(100%);transform:translateX(100%)}.offcanvas.offcanvas-top{top:0;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateY(-100%);transform:translateY(-100%)}.offcanvas.offcanvas-bottom,.offcanvas.offcanvas-top{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%}.offcanvas.offcanvas-bottom{border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);-webkit-transform:translateY(100%);transform:translateY(100%)}.offcanvas.show:not(.hiding),.offcanvas.showing{-webkit-transform:none;transform:none}.offcanvas.hiding,.offcanvas.show,.offcanvas.showing{visibility:visible}.offcanvas-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.offcanvas-backdrop.fade{opacity:0}.offcanvas-backdrop.show{opacity:.5}.offcanvas-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x)}.offcanvas-header .btn-close{padding:calc(var(--bs-offcanvas-padding-y)*0.5) calc(var(--bs-offcanvas-padding-x)*0.5);margin-top:calc(var(--bs-offcanvas-padding-y)*-0.5);margin-right:calc(var(--bs-offcanvas-padding-x)*-0.5);margin-bottom:calc(var(--bs-offcanvas-padding-y)*-0.5)}.offcanvas-title{margin-bottom:0;line-height:var(--bs-offcanvas-title-line-height)}.offcanvas-body{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);overflow-y:auto}.placeholder{display:inline-block;min-height:1em;vertical-align:middle;cursor:wait;background-color:currentcolor;opacity:.5}.placeholder.btn:before{display:inline-block;content:""}.placeholder-xs{min-height:.6em}.placeholder-sm{min-height:.8em}.placeholder-lg{min-height:1.2em}.placeholder-glow .placeholder{-webkit-animation:placeholder-glow 2s ease-in-out infinite;animation:placeholder-glow 2s ease-in-out infinite}@-webkit-keyframes placeholder-glow{50%{opacity:.2}}@keyframes placeholder-glow{50%{opacity:.2}}.placeholder-wave{-webkit-mask-image:linear-gradient(130deg,#000 55%,rgba(0,0,0,.8) 75%,#000 95%);mask-image:linear-gradient(130deg,#000 55%,rgba(0,0,0,.8) 75%,#000 95%);-webkit-mask-size:200% 100%;mask-size:200% 100%;-webkit-animation:placeholder-wave 2s linear infinite;animation:placeholder-wave 2s linear infinite}@-webkit-keyframes placeholder-wave{to{-webkit-mask-position:-200% 0;mask-position:-200% 0}}@keyframes placeholder-wave{to{-webkit-mask-position:-200% 0;mask-position:-200% 0}}.clearfix:after{display:block;clear:both;content:""}.text-bg-primary{color:#fff!important;background-color:RGBA(13,110,253,var(--bs-bg-opacity,1))!important}.text-bg-secondary{color:#fff!important;background-color:RGBA(108,117,125,var(--bs-bg-opacity,1))!important}.text-bg-success{color:#fff!important;background-color:RGBA(25,135,84,var(--bs-bg-opacity,1))!important}.text-bg-info{color:#000!important;background-color:RGBA(13,202,240,var(--bs-bg-opacity,1))!important}.text-bg-warning{color:#000!important;background-color:RGBA(255,193,7,var(--bs-bg-opacity,1))!important}.text-bg-danger{color:#fff!important;background-color:RGBA(220,53,69,var(--bs-bg-opacity,1))!important}.text-bg-light{color:#000!important;background-color:RGBA(248,249,250,var(--bs-bg-opacity,1))!important}.text-bg-dark{color:#fff!important;background-color:RGBA(33,37,41,var(--bs-bg-opacity,1))!important}.link-primary{color:RGBA(var(--bs-primary-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-primary-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-primary-rgb),var(--bs-link-underline-opacity,1))!important}.link-primary:focus,.link-primary:hover{color:RGBA(10,88,202,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(10,88,202,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(10,88,202,var(--bs-link-underline-opacity,1))!important}.link-secondary{color:RGBA(var(--bs-secondary-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-secondary-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-secondary-rgb),var(--bs-link-underline-opacity,1))!important}.link-secondary:focus,.link-secondary:hover{color:RGBA(86,94,100,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(86,94,100,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(86,94,100,var(--bs-link-underline-opacity,1))!important}.link-success{color:RGBA(var(--bs-success-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-success-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-success-rgb),var(--bs-link-underline-opacity,1))!important}.link-success:focus,.link-success:hover{color:RGBA(20,108,67,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(20,108,67,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(20,108,67,var(--bs-link-underline-opacity,1))!important}.link-info{color:RGBA(var(--bs-info-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-info-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-info-rgb),var(--bs-link-underline-opacity,1))!important}.link-info:focus,.link-info:hover{color:RGBA(61,213,243,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(61,213,243,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(61,213,243,var(--bs-link-underline-opacity,1))!important}.link-warning{color:RGBA(var(--bs-warning-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-warning-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-warning-rgb),var(--bs-link-underline-opacity,1))!important}.link-warning:focus,.link-warning:hover{color:RGBA(255,205,57,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(255,205,57,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(255,205,57,var(--bs-link-underline-opacity,1))!important}.link-danger{color:RGBA(var(--bs-danger-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-danger-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-danger-rgb),var(--bs-link-underline-opacity,1))!important}.link-danger:focus,.link-danger:hover{color:RGBA(176,42,55,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(176,42,55,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(176,42,55,var(--bs-link-underline-opacity,1))!important}.link-light{color:RGBA(var(--bs-light-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-light-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-light-rgb),var(--bs-link-underline-opacity,1))!important}.link-light:focus,.link-light:hover{color:RGBA(249,250,251,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(249,250,251,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(249,250,251,var(--bs-link-underline-opacity,1))!important}.link-dark{color:RGBA(var(--bs-dark-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-dark-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-dark-rgb),var(--bs-link-underline-opacity,1))!important}.link-dark:focus,.link-dark:hover{color:RGBA(26,30,33,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(26,30,33,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(26,30,33,var(--bs-link-underline-opacity,1))!important}.link-body-emphasis{color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,1))!important}.link-body-emphasis:focus,.link-body-emphasis:hover{color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-opacity,.75))!important;-webkit-text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,.75))!important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,.75))!important}.focus-ring:focus{outline:0;-webkit-box-shadow:var(--bs-focus-ring-x,0) var(--bs-focus-ring-y,0) var(--bs-focus-ring-blur,0) var(--bs-focus-ring-width) var(--bs-focus-ring-color);box-shadow:var(--bs-focus-ring-x,0) var(--bs-focus-ring-y,0) var(--bs-focus-ring-blur,0) var(--bs-focus-ring-width) var(--bs-focus-ring-color)}.icon-link{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;gap:.375rem;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,.5));text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,.5));text-underline-offset:.25em;-webkit-backface-visibility:hidden;backface-visibility:hidden}.icon-link>.bi{-ms-flex-negative:0;flex-shrink:0;width:1em;height:1em;fill:currentcolor;-webkit-transition:transform .2s ease-in-out;transition:transform .2s ease-in-out}@media (prefers-reduced-motion:reduce){.icon-link>.bi{-webkit-transition:none;transition:none}}.icon-link-hover:focus-visible>.bi,.icon-link-hover:hover>.bi{-webkit-transform:var(--bs-icon-link-transform,translate3d(.25em,0,0));transform:var(--bs-icon-link-transform,translate3d(.25em,0,0))}.ratio{position:relative;width:100%}.ratio:before{display:block;padding-top:var(--bs-aspect-ratio);content:""}.ratio>*{position:absolute;top:0;left:0;width:100%;height:100%}.ratio-1x1{--bs-aspect-ratio:100%}.ratio-4x3{--bs-aspect-ratio:75%}.ratio-16x9{--bs-aspect-ratio:56.25%}.ratio-21x9{--bs-aspect-ratio:42.8571428571%}.fixed-top{top:0}.fixed-bottom,.fixed-top{position:fixed;right:0;left:0;z-index:1030}.fixed-bottom{bottom:0}.sticky-top{top:0}.sticky-bottom,.sticky-top{position:sticky;z-index:1020}.sticky-bottom{bottom:0}@media (min-width:576px){.sticky-sm-top{position:sticky;top:0;z-index:1020}.sticky-sm-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width:768px){.sticky-md-top{position:sticky;top:0;z-index:1020}.sticky-md-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width:992px){.sticky-lg-top{position:sticky;top:0;z-index:1020}.sticky-lg-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width:1200px){.sticky-xl-top{position:sticky;top:0;z-index:1020}.sticky-xl-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width:1400px){.sticky-xxl-top{position:sticky;top:0;z-index:1020}.sticky-xxl-bottom{position:sticky;bottom:0;z-index:1020}}.hstack{-webkit-box-orient:horizontal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-item-align:stretch}.hstack,.vstack{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-direction:normal;align-self:stretch}.vstack{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;-webkit-box-orient:vertical;-ms-flex-direction:column;flex-direction:column;-ms-flex-item-align:stretch}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption),.visually-hidden:not(caption){position:absolute!important}.stretched-link:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;content:""}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vr{display:inline-block;-ms-flex-item-align:stretch;align-self:stretch;width:1px;min-height:1em;background-color:currentcolor;opacity:.25}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.float-start{float:left!important}.float-end{float:right!important}.float-none{float:none!important}.object-fit-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-none{-o-object-fit:none!important;object-fit:none!important}.opacity-0{opacity:0!important}.opacity-25{opacity:.25!important}.opacity-50{opacity:.5!important}.opacity-75{opacity:.75!important}.opacity-100{opacity:1!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.overflow-visible{overflow:visible!important}.overflow-scroll{overflow:scroll!important}.overflow-x-auto{overflow-x:auto!important}.overflow-x-hidden{overflow-x:hidden!important}.overflow-x-visible{overflow-x:visible!important}.overflow-x-scroll{overflow-x:scroll!important}.overflow-y-auto{overflow-y:auto!important}.overflow-y-hidden{overflow-y:hidden!important}.overflow-y-visible{overflow-y:visible!important}.overflow-y-scroll{overflow-y:scroll!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-grid{display:grid!important}.d-inline-grid{display:inline-grid!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}.d-none{display:none!important}.shadow{-webkit-box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important;box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-sm{-webkit-box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important;box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow-lg{-webkit-box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important;box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{-webkit-box-shadow:none!important;box-shadow:none!important}.focus-ring-primary{--bs-focus-ring-color:rgba(var(--bs-primary-rgb),var(--bs-focus-ring-opacity))}.focus-ring-secondary{--bs-focus-ring-color:rgba(var(--bs-secondary-rgb),var(--bs-focus-ring-opacity))}.focus-ring-success{--bs-focus-ring-color:rgba(var(--bs-success-rgb),var(--bs-focus-ring-opacity))}.focus-ring-info{--bs-focus-ring-color:rgba(var(--bs-info-rgb),var(--bs-focus-ring-opacity))}.focus-ring-warning{--bs-focus-ring-color:rgba(var(--bs-warning-rgb),var(--bs-focus-ring-opacity))}.focus-ring-danger{--bs-focus-ring-color:rgba(var(--bs-danger-rgb),var(--bs-focus-ring-opacity))}.focus-ring-light{--bs-focus-ring-color:rgba(var(--bs-light-rgb),var(--bs-focus-ring-opacity))}.focus-ring-dark{--bs-focus-ring-color:rgba(var(--bs-dark-rgb),var(--bs-focus-ring-opacity))}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.top-0{top:0!important}.top-50{top:50%!important}.top-100{top:100%!important}.bottom-0{bottom:0!important}.bottom-50{bottom:50%!important}.bottom-100{bottom:100%!important}.start-0{left:0!important}.start-50{left:50%!important}.start-100{left:100%!important}.end-0{right:0!important}.end-50{right:50%!important}.end-100{right:100%!important}.translate-middle{-webkit-transform:translate(-50%,-50%)!important;transform:translate(-50%,-50%)!important}.translate-middle-x{-webkit-transform:translateX(-50%)!important;transform:translateX(-50%)!important}.translate-middle-y{-webkit-transform:translateY(-50%)!important;transform:translateY(-50%)!important}.border{border:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-0{border:0!important}.border-top{border-top:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-top-0{border-top:0!important}.border-end{border-right:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-end-0{border-right:0!important}.border-bottom{border-bottom:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-bottom-0{border-bottom:0!important}.border-start{border-left:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-start-0{border-left:0!important}.border-primary{--bs-border-opacity:1;border-color:rgba(var(--bs-primary-rgb),var(--bs-border-opacity))!important}.border-secondary{--bs-border-opacity:1;border-color:rgba(var(--bs-secondary-rgb),var(--bs-border-opacity))!important}.border-success{--bs-border-opacity:1;border-color:rgba(var(--bs-success-rgb),var(--bs-border-opacity))!important}.border-info{--bs-border-opacity:1;border-color:rgba(var(--bs-info-rgb),var(--bs-border-opacity))!important}.border-warning{--bs-border-opacity:1;border-color:rgba(var(--bs-warning-rgb),var(--bs-border-opacity))!important}.border-danger{--bs-border-opacity:1;border-color:rgba(var(--bs-danger-rgb),var(--bs-border-opacity))!important}.border-light{--bs-border-opacity:1;border-color:rgba(var(--bs-light-rgb),var(--bs-border-opacity))!important}.border-dark{--bs-border-opacity:1;border-color:rgba(var(--bs-dark-rgb),var(--bs-border-opacity))!important}.border-black{--bs-border-opacity:1;border-color:rgba(var(--bs-black-rgb),var(--bs-border-opacity))!important}.border-white{--bs-border-opacity:1;border-color:rgba(var(--bs-white-rgb),var(--bs-border-opacity))!important}.border-primary-subtle{border-color:var(--bs-primary-border-subtle)!important}.border-secondary-subtle{border-color:var(--bs-secondary-border-subtle)!important}.border-success-subtle{border-color:var(--bs-success-border-subtle)!important}.border-info-subtle{border-color:var(--bs-info-border-subtle)!important}.border-warning-subtle{border-color:var(--bs-warning-border-subtle)!important}.border-danger-subtle{border-color:var(--bs-danger-border-subtle)!important}.border-light-subtle{border-color:var(--bs-light-border-subtle)!important}.border-dark-subtle{border-color:var(--bs-dark-border-subtle)!important}.border-1{border-width:1px!important}.border-2{border-width:2px!important}.border-3{border-width:3px!important}.border-4{border-width:4px!important}.border-5{border-width:5px!important}.border-opacity-10{--bs-border-opacity:0.1}.border-opacity-25{--bs-border-opacity:0.25}.border-opacity-50{--bs-border-opacity:0.5}.border-opacity-75{--bs-border-opacity:0.75}.border-opacity-100{--bs-border-opacity:1}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.mw-100{max-width:100%!important}.vw-100{width:100vw!important}.min-vw-100{min-width:100vw!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mh-100{max-height:100%!important}.vh-100{height:100vh!important}.min-vh-100{min-height:100vh!important}.flex-fill{-webkit-box-flex:1!important;-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-row{-webkit-box-orient:horizontal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-column,.flex-row{-webkit-box-direction:normal!important}.flex-column{-webkit-box-orient:vertical!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-row-reverse{-webkit-box-orient:horizontal!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-column-reverse,.flex-row-reverse{-webkit-box-direction:reverse!important}.flex-column-reverse{-webkit-box-orient:vertical!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-grow-0{-webkit-box-flex:0!important;-ms-flex-positive:0!important;flex-grow:0!important}.flex-grow-1{-webkit-box-flex:1!important;-ms-flex-positive:1!important;flex-grow:1!important}.flex-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-evenly{-webkit-box-pack:space-evenly!important;-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.align-items-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.align-items-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.align-items-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}.order-first{-webkit-box-ordinal-group:0!important;-ms-flex-order:-1!important;order:-1!important}.order-0{-webkit-box-ordinal-group:1!important;-ms-flex-order:0!important;order:0!important}.order-1{-webkit-box-ordinal-group:2!important;-ms-flex-order:1!important;order:1!important}.order-2{-webkit-box-ordinal-group:3!important;-ms-flex-order:2!important;order:2!important}.order-3{-webkit-box-ordinal-group:4!important;-ms-flex-order:3!important;order:3!important}.order-4{-webkit-box-ordinal-group:5!important;-ms-flex-order:4!important;order:4!important}.order-5{-webkit-box-ordinal-group:6!important;-ms-flex-order:5!important;order:5!important}.order-last{-webkit-box-ordinal-group:7!important;-ms-flex-order:6!important;order:6!important}.m-0{margin:0!important}.m-1{margin:.25rem!important}.m-2{margin:.5rem!important}.m-3{margin:1rem!important}.m-4{margin:1.5rem!important}.m-5{margin:3rem!important}.m-auto{margin:auto!important}.mx-0{margin-right:0!important;margin-left:0!important}.mx-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-3{margin-right:1rem!important;margin-left:1rem!important}.mx-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-5{margin-right:3rem!important;margin-left:3rem!important}.mx-auto{margin-right:auto!important;margin-left:auto!important}.my-0{margin-top:0!important;margin-bottom:0!important}.my-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-0{margin-top:0!important}.mt-1{margin-top:.25rem!important}.mt-2{margin-top:.5rem!important}.mt-3{margin-top:1rem!important}.mt-4{margin-top:1.5rem!important}.mt-5{margin-top:3rem!important}.mt-auto{margin-top:auto!important}.me-0{margin-right:0!important}.me-1{margin-right:.25rem!important}.me-2{margin-right:.5rem!important}.me-3{margin-right:1rem!important}.me-4{margin-right:1.5rem!important}.me-5{margin-right:3rem!important}.me-auto{margin-right:auto!important}.mb-0{margin-bottom:0!important}.mb-1{margin-bottom:.25rem!important}.mb-2{margin-bottom:.5rem!important}.mb-3{margin-bottom:1rem!important}.mb-4{margin-bottom:1.5rem!important}.mb-5{margin-bottom:3rem!important}.mb-auto{margin-bottom:auto!important}.ms-0{margin-left:0!important}.ms-1{margin-left:.25rem!important}.ms-2{margin-left:.5rem!important}.ms-3{margin-left:1rem!important}.ms-4{margin-left:1.5rem!important}.ms-5{margin-left:3rem!important}.ms-auto{margin-left:auto!important}.p-0{padding:0!important}.p-1{padding:.25rem!important}.p-2{padding:.5rem!important}.p-3{padding:1rem!important}.p-4{padding:1.5rem!important}.p-5{padding:3rem!important}.px-0{padding-right:0!important;padding-left:0!important}.px-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-3{padding-right:1rem!important;padding-left:1rem!important}.px-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-5{padding-right:3rem!important;padding-left:3rem!important}.py-0{padding-top:0!important;padding-bottom:0!important}.py-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-0{padding-top:0!important}.pt-1{padding-top:.25rem!important}.pt-2{padding-top:.5rem!important}.pt-3{padding-top:1rem!important}.pt-4{padding-top:1.5rem!important}.pt-5{padding-top:3rem!important}.pe-0{padding-right:0!important}.pe-1{padding-right:.25rem!important}.pe-2{padding-right:.5rem!important}.pe-3{padding-right:1rem!important}.pe-4{padding-right:1.5rem!important}.pe-5{padding-right:3rem!important}.pb-0{padding-bottom:0!important}.pb-1{padding-bottom:.25rem!important}.pb-2{padding-bottom:.5rem!important}.pb-3{padding-bottom:1rem!important}.pb-4{padding-bottom:1.5rem!important}.pb-5{padding-bottom:3rem!important}.ps-0{padding-left:0!important}.ps-1{padding-left:.25rem!important}.ps-2{padding-left:.5rem!important}.ps-3{padding-left:1rem!important}.ps-4{padding-left:1.5rem!important}.ps-5{padding-left:3rem!important}.gap-0{gap:0!important}.gap-1{gap:.25rem!important}.gap-2{gap:.5rem!important}.gap-3{gap:1rem!important}.gap-4{gap:1.5rem!important}.gap-5{gap:3rem!important}.row-gap-0{row-gap:0!important}.row-gap-1{row-gap:.25rem!important}.row-gap-2{row-gap:.5rem!important}.row-gap-3{row-gap:1rem!important}.row-gap-4{row-gap:1.5rem!important}.row-gap-5{row-gap:3rem!important}.column-gap-0{-moz-column-gap:0!important;-webkit-column-gap:0!important;column-gap:0!important}.column-gap-1{-moz-column-gap:.25rem!important;-webkit-column-gap:.25rem!important;column-gap:.25rem!important}.column-gap-2{-moz-column-gap:.5rem!important;-webkit-column-gap:.5rem!important;column-gap:.5rem!important}.column-gap-3{-moz-column-gap:1rem!important;-webkit-column-gap:1rem!important;column-gap:1rem!important}.column-gap-4{-moz-column-gap:1.5rem!important;-webkit-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-5{-moz-column-gap:3rem!important;-webkit-column-gap:3rem!important;column-gap:3rem!important}.font-monospace{font-family:var(--bs-font-monospace)!important}.fs-1{font-size:calc(1.375rem + 1.5vw)!important}.fs-2{font-size:calc(1.325rem + .9vw)!important}.fs-3{font-size:calc(1.3rem + .6vw)!important}.fs-4{font-size:calc(1.275rem + .3vw)!important}.fs-5{font-size:1.25rem!important}.fs-6{font-size:1rem!important}.fst-italic{font-style:italic!important}.fst-normal{font-style:normal!important}.fw-lighter{font-weight:lighter!important}.fw-light{font-weight:300!important}.fw-normal{font-weight:400!important}.fw-medium{font-weight:500!important}.fw-semibold{font-weight:600!important}.fw-bold{font-weight:700!important}.fw-bolder{font-weight:bolder!important}.lh-1{line-height:1!important}.lh-sm{line-height:1.25!important}.lh-base{line-height:1.5!important}.lh-lg{line-height:2!important}.text-start{text-align:left!important}.text-end{text-align:right!important}.text-center{text-align:center!important}.text-decoration-none{text-decoration:none!important}.text-decoration-underline{text-decoration:underline!important}.text-decoration-line-through{text-decoration:line-through!important}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-break{word-wrap:break-word!important;word-break:break-word!important}.text-primary{--bs-text-opacity:1;color:rgba(var(--bs-primary-rgb),var(--bs-text-opacity))!important}.text-secondary{--bs-text-opacity:1;color:rgba(var(--bs-secondary-rgb),var(--bs-text-opacity))!important}.text-success{--bs-text-opacity:1;color:rgba(var(--bs-success-rgb),var(--bs-text-opacity))!important}.text-info{--bs-text-opacity:1;color:rgba(var(--bs-info-rgb),var(--bs-text-opacity))!important}.text-warning{--bs-text-opacity:1;color:rgba(var(--bs-warning-rgb),var(--bs-text-opacity))!important}.text-danger{--bs-text-opacity:1;color:rgba(var(--bs-danger-rgb),var(--bs-text-opacity))!important}.text-light{--bs-text-opacity:1;color:rgba(var(--bs-light-rgb),var(--bs-text-opacity))!important}.text-dark{--bs-text-opacity:1;color:rgba(var(--bs-dark-rgb),var(--bs-text-opacity))!important}.text-black{--bs-text-opacity:1;color:rgba(var(--bs-black-rgb),var(--bs-text-opacity))!important}.text-white{--bs-text-opacity:1;color:rgba(var(--bs-white-rgb),var(--bs-text-opacity))!important}.text-body{--bs-text-opacity:1;color:rgba(var(--bs-body-color-rgb),var(--bs-text-opacity))!important}.text-muted{--bs-text-opacity:1;color:var(--bs-secondary-color)!important}.text-black-50{--bs-text-opacity:1;color:rgba(0,0,0,.5)!important}.text-white-50{--bs-text-opacity:1;color:hsla(0,0%,100%,.5)!important}.text-body-secondary{--bs-text-opacity:1;color:var(--bs-secondary-color)!important}.text-body-tertiary{--bs-text-opacity:1;color:var(--bs-tertiary-color)!important}.text-body-emphasis{--bs-text-opacity:1;color:var(--bs-emphasis-color)!important}.text-reset{--bs-text-opacity:1;color:inherit!important}.text-opacity-25{--bs-text-opacity:0.25}.text-opacity-50{--bs-text-opacity:0.5}.text-opacity-75{--bs-text-opacity:0.75}.text-opacity-100{--bs-text-opacity:1}.text-primary-emphasis{color:var(--bs-primary-text-emphasis)!important}.text-secondary-emphasis{color:var(--bs-secondary-text-emphasis)!important}.text-success-emphasis{color:var(--bs-success-text-emphasis)!important}.text-info-emphasis{color:var(--bs-info-text-emphasis)!important}.text-warning-emphasis{color:var(--bs-warning-text-emphasis)!important}.text-danger-emphasis{color:var(--bs-danger-text-emphasis)!important}.text-light-emphasis{color:var(--bs-light-text-emphasis)!important}.text-dark-emphasis{color:var(--bs-dark-text-emphasis)!important}.link-opacity-10,.link-opacity-10-hover:hover{--bs-link-opacity:0.1}.link-opacity-25,.link-opacity-25-hover:hover{--bs-link-opacity:0.25}.link-opacity-50,.link-opacity-50-hover:hover{--bs-link-opacity:0.5}.link-opacity-75,.link-opacity-75-hover:hover{--bs-link-opacity:0.75}.link-opacity-100,.link-opacity-100-hover:hover{--bs-link-opacity:1}.link-offset-1,.link-offset-1-hover:hover{text-underline-offset:.125em!important}.link-offset-2,.link-offset-2-hover:hover{text-underline-offset:.25em!important}.link-offset-3,.link-offset-3-hover:hover{text-underline-offset:.375em!important}.link-underline-primary{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-primary-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-primary-rgb),var(--bs-link-underline-opacity))!important}.link-underline-secondary{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-secondary-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-secondary-rgb),var(--bs-link-underline-opacity))!important}.link-underline-success{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-success-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-success-rgb),var(--bs-link-underline-opacity))!important}.link-underline-info{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-info-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-info-rgb),var(--bs-link-underline-opacity))!important}.link-underline-warning{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-warning-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-warning-rgb),var(--bs-link-underline-opacity))!important}.link-underline-danger{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-danger-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-danger-rgb),var(--bs-link-underline-opacity))!important}.link-underline-light{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-light-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-light-rgb),var(--bs-link-underline-opacity))!important}.link-underline-dark{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-dark-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-dark-rgb),var(--bs-link-underline-opacity))!important}.link-underline{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-underline-opacity,1))!important}.link-underline-opacity-0,.link-underline-opacity-0-hover:hover{--bs-link-underline-opacity:0}.link-underline-opacity-10,.link-underline-opacity-10-hover:hover{--bs-link-underline-opacity:0.1}.link-underline-opacity-25,.link-underline-opacity-25-hover:hover{--bs-link-underline-opacity:0.25}.link-underline-opacity-50,.link-underline-opacity-50-hover:hover{--bs-link-underline-opacity:0.5}.link-underline-opacity-75,.link-underline-opacity-75-hover:hover{--bs-link-underline-opacity:0.75}.link-underline-opacity-100,.link-underline-opacity-100-hover:hover{--bs-link-underline-opacity:1}.bg-primary{--bs-bg-opacity:1;background-color:rgba(var(--bs-primary-rgb),var(--bs-bg-opacity))!important}.bg-secondary{--bs-bg-opacity:1;background-color:rgba(var(--bs-secondary-rgb),var(--bs-bg-opacity))!important}.bg-success{--bs-bg-opacity:1;background-color:rgba(var(--bs-success-rgb),var(--bs-bg-opacity))!important}.bg-info{--bs-bg-opacity:1;background-color:rgba(var(--bs-info-rgb),var(--bs-bg-opacity))!important}.bg-warning{--bs-bg-opacity:1;background-color:rgba(var(--bs-warning-rgb),var(--bs-bg-opacity))!important}.bg-danger{--bs-bg-opacity:1;background-color:rgba(var(--bs-danger-rgb),var(--bs-bg-opacity))!important}.bg-light{--bs-bg-opacity:1;background-color:rgba(var(--bs-light-rgb),var(--bs-bg-opacity))!important}.bg-dark{--bs-bg-opacity:1;background-color:rgba(var(--bs-dark-rgb),var(--bs-bg-opacity))!important}.bg-black{--bs-bg-opacity:1;background-color:rgba(var(--bs-black-rgb),var(--bs-bg-opacity))!important}.bg-white{--bs-bg-opacity:1;background-color:rgba(var(--bs-white-rgb),var(--bs-bg-opacity))!important}.bg-body{--bs-bg-opacity:1;background-color:rgba(var(--bs-body-bg-rgb),var(--bs-bg-opacity))!important}.bg-transparent{--bs-bg-opacity:1;background-color:transparent!important}.bg-body-secondary{--bs-bg-opacity:1;background-color:rgba(var(--bs-secondary-bg-rgb),var(--bs-bg-opacity))!important}.bg-body-tertiary{--bs-bg-opacity:1;background-color:rgba(var(--bs-tertiary-bg-rgb),var(--bs-bg-opacity))!important}.bg-opacity-10{--bs-bg-opacity:0.1}.bg-opacity-25{--bs-bg-opacity:0.25}.bg-opacity-50{--bs-bg-opacity:0.5}.bg-opacity-75{--bs-bg-opacity:0.75}.bg-opacity-100{--bs-bg-opacity:1}.bg-primary-subtle{background-color:var(--bs-primary-bg-subtle)!important}.bg-secondary-subtle{background-color:var(--bs-secondary-bg-subtle)!important}.bg-success-subtle{background-color:var(--bs-success-bg-subtle)!important}.bg-info-subtle{background-color:var(--bs-info-bg-subtle)!important}.bg-warning-subtle{background-color:var(--bs-warning-bg-subtle)!important}.bg-danger-subtle{background-color:var(--bs-danger-bg-subtle)!important}.bg-light-subtle{background-color:var(--bs-light-bg-subtle)!important}.bg-dark-subtle{background-color:var(--bs-dark-bg-subtle)!important}.bg-gradient{background-image:var(--bs-gradient)!important}.user-select-all{-webkit-user-select:all!important;-moz-user-select:all!important;-ms-user-select:all!important;user-select:all!important}.user-select-auto{-webkit-user-select:auto!important;-moz-user-select:auto!important;-ms-user-select:auto!important;user-select:auto!important}.user-select-none{-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important;user-select:none!important}.pe-none{pointer-events:none!important}.pe-auto{pointer-events:auto!important}.rounded{border-radius:var(--bs-border-radius)!important}.rounded-0{border-radius:0!important}.rounded-1{border-radius:var(--bs-border-radius-sm)!important}.rounded-2{border-radius:var(--bs-border-radius)!important}.rounded-3{border-radius:var(--bs-border-radius-lg)!important}.rounded-4{border-radius:var(--bs-border-radius-xl)!important}.rounded-5{border-radius:var(--bs-border-radius-xxl)!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:var(--bs-border-radius-pill)!important}.rounded-top{border-top-left-radius:var(--bs-border-radius)!important;border-top-right-radius:var(--bs-border-radius)!important}.rounded-top-0{border-top-left-radius:0!important;border-top-right-radius:0!important}.rounded-top-1{border-top-left-radius:var(--bs-border-radius-sm)!important;border-top-right-radius:var(--bs-border-radius-sm)!important}.rounded-top-2{border-top-left-radius:var(--bs-border-radius)!important;border-top-right-radius:var(--bs-border-radius)!important}.rounded-top-3{border-top-left-radius:var(--bs-border-radius-lg)!important;border-top-right-radius:var(--bs-border-radius-lg)!important}.rounded-top-4{border-top-left-radius:var(--bs-border-radius-xl)!important;border-top-right-radius:var(--bs-border-radius-xl)!important}.rounded-top-5{border-top-left-radius:var(--bs-border-radius-xxl)!important;border-top-right-radius:var(--bs-border-radius-xxl)!important}.rounded-top-circle{border-top-left-radius:50%!important;border-top-right-radius:50%!important}.rounded-top-pill{border-top-left-radius:var(--bs-border-radius-pill)!important;border-top-right-radius:var(--bs-border-radius-pill)!important}.rounded-end{border-top-right-radius:var(--bs-border-radius)!important;border-bottom-right-radius:var(--bs-border-radius)!important}.rounded-end-0{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.rounded-end-1{border-top-right-radius:var(--bs-border-radius-sm)!important;border-bottom-right-radius:var(--bs-border-radius-sm)!important}.rounded-end-2{border-top-right-radius:var(--bs-border-radius)!important;border-bottom-right-radius:var(--bs-border-radius)!important}.rounded-end-3{border-top-right-radius:var(--bs-border-radius-lg)!important;border-bottom-right-radius:var(--bs-border-radius-lg)!important}.rounded-end-4{border-top-right-radius:var(--bs-border-radius-xl)!important;border-bottom-right-radius:var(--bs-border-radius-xl)!important}.rounded-end-5{border-top-right-radius:var(--bs-border-radius-xxl)!important;border-bottom-right-radius:var(--bs-border-radius-xxl)!important}.rounded-end-circle{border-top-right-radius:50%!important;border-bottom-right-radius:50%!important}.rounded-end-pill{border-top-right-radius:var(--bs-border-radius-pill)!important;border-bottom-right-radius:var(--bs-border-radius-pill)!important}.rounded-bottom{border-bottom-right-radius:var(--bs-border-radius)!important;border-bottom-left-radius:var(--bs-border-radius)!important}.rounded-bottom-0{border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.rounded-bottom-1{border-bottom-right-radius:var(--bs-border-radius-sm)!important;border-bottom-left-radius:var(--bs-border-radius-sm)!important}.rounded-bottom-2{border-bottom-right-radius:var(--bs-border-radius)!important;border-bottom-left-radius:var(--bs-border-radius)!important}.rounded-bottom-3{border-bottom-right-radius:var(--bs-border-radius-lg)!important;border-bottom-left-radius:var(--bs-border-radius-lg)!important}.rounded-bottom-4{border-bottom-right-radius:var(--bs-border-radius-xl)!important;border-bottom-left-radius:var(--bs-border-radius-xl)!important}.rounded-bottom-5{border-bottom-right-radius:var(--bs-border-radius-xxl)!important;border-bottom-left-radius:var(--bs-border-radius-xxl)!important}.rounded-bottom-circle{border-bottom-right-radius:50%!important;border-bottom-left-radius:50%!important}.rounded-bottom-pill{border-bottom-right-radius:var(--bs-border-radius-pill)!important;border-bottom-left-radius:var(--bs-border-radius-pill)!important}.rounded-start{border-bottom-left-radius:var(--bs-border-radius)!important;border-top-left-radius:var(--bs-border-radius)!important}.rounded-start-0{border-bottom-left-radius:0!important;border-top-left-radius:0!important}.rounded-start-1{border-bottom-left-radius:var(--bs-border-radius-sm)!important;border-top-left-radius:var(--bs-border-radius-sm)!important}.rounded-start-2{border-bottom-left-radius:var(--bs-border-radius)!important;border-top-left-radius:var(--bs-border-radius)!important}.rounded-start-3{border-bottom-left-radius:var(--bs-border-radius-lg)!important;border-top-left-radius:var(--bs-border-radius-lg)!important}.rounded-start-4{border-bottom-left-radius:var(--bs-border-radius-xl)!important;border-top-left-radius:var(--bs-border-radius-xl)!important}.rounded-start-5{border-bottom-left-radius:var(--bs-border-radius-xxl)!important;border-top-left-radius:var(--bs-border-radius-xxl)!important}.rounded-start-circle{border-bottom-left-radius:50%!important;border-top-left-radius:50%!important}.rounded-start-pill{border-bottom-left-radius:var(--bs-border-radius-pill)!important;border-top-left-radius:var(--bs-border-radius-pill)!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}.z-n1{z-index:-1!important}.z-0{z-index:0!important}.z-1{z-index:1!important}.z-2{z-index:2!important}.z-3{z-index:3!important}@media (min-width:576px){.float-sm-start{float:left!important}.float-sm-end{float:right!important}.float-sm-none{float:none!important}.object-fit-sm-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-sm-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-sm-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-sm-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-sm-none{-o-object-fit:none!important;object-fit:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-grid{display:grid!important}.d-sm-inline-grid{display:inline-grid!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-sm-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}.d-sm-none{display:none!important}.flex-sm-fill{-webkit-box-flex:1!important;-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-sm-row{-webkit-box-orient:horizontal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-sm-column,.flex-sm-row{-webkit-box-direction:normal!important}.flex-sm-column{-webkit-box-orient:vertical!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-sm-row-reverse{-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-sm-column-reverse{-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-sm-grow-0{-webkit-box-flex:0!important;-ms-flex-positive:0!important;flex-grow:0!important}.flex-sm-grow-1{-webkit-box-flex:1!important;-ms-flex-positive:1!important;flex-grow:1!important}.flex-sm-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-sm-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-sm-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-sm-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-sm-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-sm-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-sm-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-sm-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-sm-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-sm-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-sm-evenly{-webkit-box-pack:space-evenly!important;-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-sm-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.align-items-sm-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.align-items-sm-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.align-items-sm-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-sm-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-sm-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-sm-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-sm-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-sm-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-sm-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-sm-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-sm-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-sm-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-sm-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-sm-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-sm-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-sm-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}.order-sm-first{-webkit-box-ordinal-group:0!important;-ms-flex-order:-1!important;order:-1!important}.order-sm-0{-webkit-box-ordinal-group:1!important;-ms-flex-order:0!important;order:0!important}.order-sm-1{-webkit-box-ordinal-group:2!important;-ms-flex-order:1!important;order:1!important}.order-sm-2{-webkit-box-ordinal-group:3!important;-ms-flex-order:2!important;order:2!important}.order-sm-3{-webkit-box-ordinal-group:4!important;-ms-flex-order:3!important;order:3!important}.order-sm-4{-webkit-box-ordinal-group:5!important;-ms-flex-order:4!important;order:4!important}.order-sm-5{-webkit-box-ordinal-group:6!important;-ms-flex-order:5!important;order:5!important}.order-sm-last{-webkit-box-ordinal-group:7!important;-ms-flex-order:6!important;order:6!important}.m-sm-0{margin:0!important}.m-sm-1{margin:.25rem!important}.m-sm-2{margin:.5rem!important}.m-sm-3{margin:1rem!important}.m-sm-4{margin:1.5rem!important}.m-sm-5{margin:3rem!important}.m-sm-auto{margin:auto!important}.mx-sm-0{margin-right:0!important;margin-left:0!important}.mx-sm-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-sm-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-sm-3{margin-right:1rem!important;margin-left:1rem!important}.mx-sm-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-sm-5{margin-right:3rem!important;margin-left:3rem!important}.mx-sm-auto{margin-right:auto!important;margin-left:auto!important}.my-sm-0{margin-top:0!important;margin-bottom:0!important}.my-sm-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-sm-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-sm-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-sm-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-sm-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-sm-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-sm-0{margin-top:0!important}.mt-sm-1{margin-top:.25rem!important}.mt-sm-2{margin-top:.5rem!important}.mt-sm-3{margin-top:1rem!important}.mt-sm-4{margin-top:1.5rem!important}.mt-sm-5{margin-top:3rem!important}.mt-sm-auto{margin-top:auto!important}.me-sm-0{margin-right:0!important}.me-sm-1{margin-right:.25rem!important}.me-sm-2{margin-right:.5rem!important}.me-sm-3{margin-right:1rem!important}.me-sm-4{margin-right:1.5rem!important}.me-sm-5{margin-right:3rem!important}.me-sm-auto{margin-right:auto!important}.mb-sm-0{margin-bottom:0!important}.mb-sm-1{margin-bottom:.25rem!important}.mb-sm-2{margin-bottom:.5rem!important}.mb-sm-3{margin-bottom:1rem!important}.mb-sm-4{margin-bottom:1.5rem!important}.mb-sm-5{margin-bottom:3rem!important}.mb-sm-auto{margin-bottom:auto!important}.ms-sm-0{margin-left:0!important}.ms-sm-1{margin-left:.25rem!important}.ms-sm-2{margin-left:.5rem!important}.ms-sm-3{margin-left:1rem!important}.ms-sm-4{margin-left:1.5rem!important}.ms-sm-5{margin-left:3rem!important}.ms-sm-auto{margin-left:auto!important}.p-sm-0{padding:0!important}.p-sm-1{padding:.25rem!important}.p-sm-2{padding:.5rem!important}.p-sm-3{padding:1rem!important}.p-sm-4{padding:1.5rem!important}.p-sm-5{padding:3rem!important}.px-sm-0{padding-right:0!important;padding-left:0!important}.px-sm-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-sm-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-sm-3{padding-right:1rem!important;padding-left:1rem!important}.px-sm-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-sm-5{padding-right:3rem!important;padding-left:3rem!important}.py-sm-0{padding-top:0!important;padding-bottom:0!important}.py-sm-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-sm-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-sm-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-sm-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-sm-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-sm-0{padding-top:0!important}.pt-sm-1{padding-top:.25rem!important}.pt-sm-2{padding-top:.5rem!important}.pt-sm-3{padding-top:1rem!important}.pt-sm-4{padding-top:1.5rem!important}.pt-sm-5{padding-top:3rem!important}.pe-sm-0{padding-right:0!important}.pe-sm-1{padding-right:.25rem!important}.pe-sm-2{padding-right:.5rem!important}.pe-sm-3{padding-right:1rem!important}.pe-sm-4{padding-right:1.5rem!important}.pe-sm-5{padding-right:3rem!important}.pb-sm-0{padding-bottom:0!important}.pb-sm-1{padding-bottom:.25rem!important}.pb-sm-2{padding-bottom:.5rem!important}.pb-sm-3{padding-bottom:1rem!important}.pb-sm-4{padding-bottom:1.5rem!important}.pb-sm-5{padding-bottom:3rem!important}.ps-sm-0{padding-left:0!important}.ps-sm-1{padding-left:.25rem!important}.ps-sm-2{padding-left:.5rem!important}.ps-sm-3{padding-left:1rem!important}.ps-sm-4{padding-left:1.5rem!important}.ps-sm-5{padding-left:3rem!important}.gap-sm-0{gap:0!important}.gap-sm-1{gap:.25rem!important}.gap-sm-2{gap:.5rem!important}.gap-sm-3{gap:1rem!important}.gap-sm-4{gap:1.5rem!important}.gap-sm-5{gap:3rem!important}.row-gap-sm-0{row-gap:0!important}.row-gap-sm-1{row-gap:.25rem!important}.row-gap-sm-2{row-gap:.5rem!important}.row-gap-sm-3{row-gap:1rem!important}.row-gap-sm-4{row-gap:1.5rem!important}.row-gap-sm-5{row-gap:3rem!important}.column-gap-sm-0{-moz-column-gap:0!important;-webkit-column-gap:0!important;column-gap:0!important}.column-gap-sm-1{-moz-column-gap:.25rem!important;-webkit-column-gap:.25rem!important;column-gap:.25rem!important}.column-gap-sm-2{-moz-column-gap:.5rem!important;-webkit-column-gap:.5rem!important;column-gap:.5rem!important}.column-gap-sm-3{-moz-column-gap:1rem!important;-webkit-column-gap:1rem!important;column-gap:1rem!important}.column-gap-sm-4{-moz-column-gap:1.5rem!important;-webkit-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-sm-5{-moz-column-gap:3rem!important;-webkit-column-gap:3rem!important;column-gap:3rem!important}.text-sm-start{text-align:left!important}.text-sm-end{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.float-md-start{float:left!important}.float-md-end{float:right!important}.float-md-none{float:none!important}.object-fit-md-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-md-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-md-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-md-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-md-none{-o-object-fit:none!important;object-fit:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-grid{display:grid!important}.d-md-inline-grid{display:inline-grid!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-md-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}.d-md-none{display:none!important}.flex-md-fill{-webkit-box-flex:1!important;-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-md-row{-webkit-box-orient:horizontal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-md-column,.flex-md-row{-webkit-box-direction:normal!important}.flex-md-column{-webkit-box-orient:vertical!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-md-row-reverse{-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-md-column-reverse{-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-md-grow-0{-webkit-box-flex:0!important;-ms-flex-positive:0!important;flex-grow:0!important}.flex-md-grow-1{-webkit-box-flex:1!important;-ms-flex-positive:1!important;flex-grow:1!important}.flex-md-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-md-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-md-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-md-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-md-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-md-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-md-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-md-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-md-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-md-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-md-evenly{-webkit-box-pack:space-evenly!important;-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-md-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.align-items-md-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.align-items-md-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.align-items-md-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-md-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-md-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-md-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-md-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-md-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-md-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-md-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-md-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-md-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-md-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-md-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-md-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-md-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}.order-md-first{-webkit-box-ordinal-group:0!important;-ms-flex-order:-1!important;order:-1!important}.order-md-0{-webkit-box-ordinal-group:1!important;-ms-flex-order:0!important;order:0!important}.order-md-1{-webkit-box-ordinal-group:2!important;-ms-flex-order:1!important;order:1!important}.order-md-2{-webkit-box-ordinal-group:3!important;-ms-flex-order:2!important;order:2!important}.order-md-3{-webkit-box-ordinal-group:4!important;-ms-flex-order:3!important;order:3!important}.order-md-4{-webkit-box-ordinal-group:5!important;-ms-flex-order:4!important;order:4!important}.order-md-5{-webkit-box-ordinal-group:6!important;-ms-flex-order:5!important;order:5!important}.order-md-last{-webkit-box-ordinal-group:7!important;-ms-flex-order:6!important;order:6!important}.m-md-0{margin:0!important}.m-md-1{margin:.25rem!important}.m-md-2{margin:.5rem!important}.m-md-3{margin:1rem!important}.m-md-4{margin:1.5rem!important}.m-md-5{margin:3rem!important}.m-md-auto{margin:auto!important}.mx-md-0{margin-right:0!important;margin-left:0!important}.mx-md-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-md-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-md-3{margin-right:1rem!important;margin-left:1rem!important}.mx-md-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-md-5{margin-right:3rem!important;margin-left:3rem!important}.mx-md-auto{margin-right:auto!important;margin-left:auto!important}.my-md-0{margin-top:0!important;margin-bottom:0!important}.my-md-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-md-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-md-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-md-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-md-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-md-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-md-0{margin-top:0!important}.mt-md-1{margin-top:.25rem!important}.mt-md-2{margin-top:.5rem!important}.mt-md-3{margin-top:1rem!important}.mt-md-4{margin-top:1.5rem!important}.mt-md-5{margin-top:3rem!important}.mt-md-auto{margin-top:auto!important}.me-md-0{margin-right:0!important}.me-md-1{margin-right:.25rem!important}.me-md-2{margin-right:.5rem!important}.me-md-3{margin-right:1rem!important}.me-md-4{margin-right:1.5rem!important}.me-md-5{margin-right:3rem!important}.me-md-auto{margin-right:auto!important}.mb-md-0{margin-bottom:0!important}.mb-md-1{margin-bottom:.25rem!important}.mb-md-2{margin-bottom:.5rem!important}.mb-md-3{margin-bottom:1rem!important}.mb-md-4{margin-bottom:1.5rem!important}.mb-md-5{margin-bottom:3rem!important}.mb-md-auto{margin-bottom:auto!important}.ms-md-0{margin-left:0!important}.ms-md-1{margin-left:.25rem!important}.ms-md-2{margin-left:.5rem!important}.ms-md-3{margin-left:1rem!important}.ms-md-4{margin-left:1.5rem!important}.ms-md-5{margin-left:3rem!important}.ms-md-auto{margin-left:auto!important}.p-md-0{padding:0!important}.p-md-1{padding:.25rem!important}.p-md-2{padding:.5rem!important}.p-md-3{padding:1rem!important}.p-md-4{padding:1.5rem!important}.p-md-5{padding:3rem!important}.px-md-0{padding-right:0!important;padding-left:0!important}.px-md-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-md-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-md-3{padding-right:1rem!important;padding-left:1rem!important}.px-md-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-md-5{padding-right:3rem!important;padding-left:3rem!important}.py-md-0{padding-top:0!important;padding-bottom:0!important}.py-md-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-md-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-md-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-md-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-md-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-md-0{padding-top:0!important}.pt-md-1{padding-top:.25rem!important}.pt-md-2{padding-top:.5rem!important}.pt-md-3{padding-top:1rem!important}.pt-md-4{padding-top:1.5rem!important}.pt-md-5{padding-top:3rem!important}.pe-md-0{padding-right:0!important}.pe-md-1{padding-right:.25rem!important}.pe-md-2{padding-right:.5rem!important}.pe-md-3{padding-right:1rem!important}.pe-md-4{padding-right:1.5rem!important}.pe-md-5{padding-right:3rem!important}.pb-md-0{padding-bottom:0!important}.pb-md-1{padding-bottom:.25rem!important}.pb-md-2{padding-bottom:.5rem!important}.pb-md-3{padding-bottom:1rem!important}.pb-md-4{padding-bottom:1.5rem!important}.pb-md-5{padding-bottom:3rem!important}.ps-md-0{padding-left:0!important}.ps-md-1{padding-left:.25rem!important}.ps-md-2{padding-left:.5rem!important}.ps-md-3{padding-left:1rem!important}.ps-md-4{padding-left:1.5rem!important}.ps-md-5{padding-left:3rem!important}.gap-md-0{gap:0!important}.gap-md-1{gap:.25rem!important}.gap-md-2{gap:.5rem!important}.gap-md-3{gap:1rem!important}.gap-md-4{gap:1.5rem!important}.gap-md-5{gap:3rem!important}.row-gap-md-0{row-gap:0!important}.row-gap-md-1{row-gap:.25rem!important}.row-gap-md-2{row-gap:.5rem!important}.row-gap-md-3{row-gap:1rem!important}.row-gap-md-4{row-gap:1.5rem!important}.row-gap-md-5{row-gap:3rem!important}.column-gap-md-0{-moz-column-gap:0!important;-webkit-column-gap:0!important;column-gap:0!important}.column-gap-md-1{-moz-column-gap:.25rem!important;-webkit-column-gap:.25rem!important;column-gap:.25rem!important}.column-gap-md-2{-moz-column-gap:.5rem!important;-webkit-column-gap:.5rem!important;column-gap:.5rem!important}.column-gap-md-3{-moz-column-gap:1rem!important;-webkit-column-gap:1rem!important;column-gap:1rem!important}.column-gap-md-4{-moz-column-gap:1.5rem!important;-webkit-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-md-5{-moz-column-gap:3rem!important;-webkit-column-gap:3rem!important;column-gap:3rem!important}.text-md-start{text-align:left!important}.text-md-end{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.float-lg-start{float:left!important}.float-lg-end{float:right!important}.float-lg-none{float:none!important}.object-fit-lg-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-lg-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-lg-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-lg-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-lg-none{-o-object-fit:none!important;object-fit:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-grid{display:grid!important}.d-lg-inline-grid{display:inline-grid!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-lg-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}.d-lg-none{display:none!important}.flex-lg-fill{-webkit-box-flex:1!important;-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-lg-row{-webkit-box-orient:horizontal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-lg-column,.flex-lg-row{-webkit-box-direction:normal!important}.flex-lg-column{-webkit-box-orient:vertical!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-lg-row-reverse{-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-lg-column-reverse{-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-lg-grow-0{-webkit-box-flex:0!important;-ms-flex-positive:0!important;flex-grow:0!important}.flex-lg-grow-1{-webkit-box-flex:1!important;-ms-flex-positive:1!important;flex-grow:1!important}.flex-lg-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-lg-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-lg-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-lg-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-lg-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-lg-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-lg-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-lg-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-lg-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-lg-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-lg-evenly{-webkit-box-pack:space-evenly!important;-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-lg-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.align-items-lg-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.align-items-lg-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.align-items-lg-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-lg-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-lg-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-lg-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-lg-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-lg-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-lg-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-lg-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-lg-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-lg-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-lg-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-lg-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-lg-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-lg-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}.order-lg-first{-webkit-box-ordinal-group:0!important;-ms-flex-order:-1!important;order:-1!important}.order-lg-0{-webkit-box-ordinal-group:1!important;-ms-flex-order:0!important;order:0!important}.order-lg-1{-webkit-box-ordinal-group:2!important;-ms-flex-order:1!important;order:1!important}.order-lg-2{-webkit-box-ordinal-group:3!important;-ms-flex-order:2!important;order:2!important}.order-lg-3{-webkit-box-ordinal-group:4!important;-ms-flex-order:3!important;order:3!important}.order-lg-4{-webkit-box-ordinal-group:5!important;-ms-flex-order:4!important;order:4!important}.order-lg-5{-webkit-box-ordinal-group:6!important;-ms-flex-order:5!important;order:5!important}.order-lg-last{-webkit-box-ordinal-group:7!important;-ms-flex-order:6!important;order:6!important}.m-lg-0{margin:0!important}.m-lg-1{margin:.25rem!important}.m-lg-2{margin:.5rem!important}.m-lg-3{margin:1rem!important}.m-lg-4{margin:1.5rem!important}.m-lg-5{margin:3rem!important}.m-lg-auto{margin:auto!important}.mx-lg-0{margin-right:0!important;margin-left:0!important}.mx-lg-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-lg-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-lg-3{margin-right:1rem!important;margin-left:1rem!important}.mx-lg-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-lg-5{margin-right:3rem!important;margin-left:3rem!important}.mx-lg-auto{margin-right:auto!important;margin-left:auto!important}.my-lg-0{margin-top:0!important;margin-bottom:0!important}.my-lg-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-lg-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-lg-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-lg-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-lg-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-lg-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-lg-0{margin-top:0!important}.mt-lg-1{margin-top:.25rem!important}.mt-lg-2{margin-top:.5rem!important}.mt-lg-3{margin-top:1rem!important}.mt-lg-4{margin-top:1.5rem!important}.mt-lg-5{margin-top:3rem!important}.mt-lg-auto{margin-top:auto!important}.me-lg-0{margin-right:0!important}.me-lg-1{margin-right:.25rem!important}.me-lg-2{margin-right:.5rem!important}.me-lg-3{margin-right:1rem!important}.me-lg-4{margin-right:1.5rem!important}.me-lg-5{margin-right:3rem!important}.me-lg-auto{margin-right:auto!important}.mb-lg-0{margin-bottom:0!important}.mb-lg-1{margin-bottom:.25rem!important}.mb-lg-2{margin-bottom:.5rem!important}.mb-lg-3{margin-bottom:1rem!important}.mb-lg-4{margin-bottom:1.5rem!important}.mb-lg-5{margin-bottom:3rem!important}.mb-lg-auto{margin-bottom:auto!important}.ms-lg-0{margin-left:0!important}.ms-lg-1{margin-left:.25rem!important}.ms-lg-2{margin-left:.5rem!important}.ms-lg-3{margin-left:1rem!important}.ms-lg-4{margin-left:1.5rem!important}.ms-lg-5{margin-left:3rem!important}.ms-lg-auto{margin-left:auto!important}.p-lg-0{padding:0!important}.p-lg-1{padding:.25rem!important}.p-lg-2{padding:.5rem!important}.p-lg-3{padding:1rem!important}.p-lg-4{padding:1.5rem!important}.p-lg-5{padding:3rem!important}.px-lg-0{padding-right:0!important;padding-left:0!important}.px-lg-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-lg-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-lg-3{padding-right:1rem!important;padding-left:1rem!important}.px-lg-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-lg-5{padding-right:3rem!important;padding-left:3rem!important}.py-lg-0{padding-top:0!important;padding-bottom:0!important}.py-lg-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-lg-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-lg-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-lg-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-lg-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-lg-0{padding-top:0!important}.pt-lg-1{padding-top:.25rem!important}.pt-lg-2{padding-top:.5rem!important}.pt-lg-3{padding-top:1rem!important}.pt-lg-4{padding-top:1.5rem!important}.pt-lg-5{padding-top:3rem!important}.pe-lg-0{padding-right:0!important}.pe-lg-1{padding-right:.25rem!important}.pe-lg-2{padding-right:.5rem!important}.pe-lg-3{padding-right:1rem!important}.pe-lg-4{padding-right:1.5rem!important}.pe-lg-5{padding-right:3rem!important}.pb-lg-0{padding-bottom:0!important}.pb-lg-1{padding-bottom:.25rem!important}.pb-lg-2{padding-bottom:.5rem!important}.pb-lg-3{padding-bottom:1rem!important}.pb-lg-4{padding-bottom:1.5rem!important}.pb-lg-5{padding-bottom:3rem!important}.ps-lg-0{padding-left:0!important}.ps-lg-1{padding-left:.25rem!important}.ps-lg-2{padding-left:.5rem!important}.ps-lg-3{padding-left:1rem!important}.ps-lg-4{padding-left:1.5rem!important}.ps-lg-5{padding-left:3rem!important}.gap-lg-0{gap:0!important}.gap-lg-1{gap:.25rem!important}.gap-lg-2{gap:.5rem!important}.gap-lg-3{gap:1rem!important}.gap-lg-4{gap:1.5rem!important}.gap-lg-5{gap:3rem!important}.row-gap-lg-0{row-gap:0!important}.row-gap-lg-1{row-gap:.25rem!important}.row-gap-lg-2{row-gap:.5rem!important}.row-gap-lg-3{row-gap:1rem!important}.row-gap-lg-4{row-gap:1.5rem!important}.row-gap-lg-5{row-gap:3rem!important}.column-gap-lg-0{-moz-column-gap:0!important;-webkit-column-gap:0!important;column-gap:0!important}.column-gap-lg-1{-moz-column-gap:.25rem!important;-webkit-column-gap:.25rem!important;column-gap:.25rem!important}.column-gap-lg-2{-moz-column-gap:.5rem!important;-webkit-column-gap:.5rem!important;column-gap:.5rem!important}.column-gap-lg-3{-moz-column-gap:1rem!important;-webkit-column-gap:1rem!important;column-gap:1rem!important}.column-gap-lg-4{-moz-column-gap:1.5rem!important;-webkit-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-lg-5{-moz-column-gap:3rem!important;-webkit-column-gap:3rem!important;column-gap:3rem!important}.text-lg-start{text-align:left!important}.text-lg-end{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.float-xl-start{float:left!important}.float-xl-end{float:right!important}.float-xl-none{float:none!important}.object-fit-xl-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-xl-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-xl-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-xl-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-xl-none{-o-object-fit:none!important;object-fit:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-grid{display:grid!important}.d-xl-inline-grid{display:inline-grid!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-xl-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}.d-xl-none{display:none!important}.flex-xl-fill{-webkit-box-flex:1!important;-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-xl-row{-webkit-box-orient:horizontal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-xl-column,.flex-xl-row{-webkit-box-direction:normal!important}.flex-xl-column{-webkit-box-orient:vertical!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-xl-row-reverse{-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-xl-column-reverse{-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-xl-grow-0{-webkit-box-flex:0!important;-ms-flex-positive:0!important;flex-grow:0!important}.flex-xl-grow-1{-webkit-box-flex:1!important;-ms-flex-positive:1!important;flex-grow:1!important}.flex-xl-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-xl-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-xl-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-xl-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-xl-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-xl-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-xl-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-xl-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-xl-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-xl-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-xl-evenly{-webkit-box-pack:space-evenly!important;-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-xl-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.align-items-xl-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.align-items-xl-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.align-items-xl-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-xl-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-xl-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-xl-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-xl-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-xl-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-xl-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-xl-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-xl-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-xl-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-xl-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-xl-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-xl-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-xl-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}.order-xl-first{-webkit-box-ordinal-group:0!important;-ms-flex-order:-1!important;order:-1!important}.order-xl-0{-webkit-box-ordinal-group:1!important;-ms-flex-order:0!important;order:0!important}.order-xl-1{-webkit-box-ordinal-group:2!important;-ms-flex-order:1!important;order:1!important}.order-xl-2{-webkit-box-ordinal-group:3!important;-ms-flex-order:2!important;order:2!important}.order-xl-3{-webkit-box-ordinal-group:4!important;-ms-flex-order:3!important;order:3!important}.order-xl-4{-webkit-box-ordinal-group:5!important;-ms-flex-order:4!important;order:4!important}.order-xl-5{-webkit-box-ordinal-group:6!important;-ms-flex-order:5!important;order:5!important}.order-xl-last{-webkit-box-ordinal-group:7!important;-ms-flex-order:6!important;order:6!important}.m-xl-0{margin:0!important}.m-xl-1{margin:.25rem!important}.m-xl-2{margin:.5rem!important}.m-xl-3{margin:1rem!important}.m-xl-4{margin:1.5rem!important}.m-xl-5{margin:3rem!important}.m-xl-auto{margin:auto!important}.mx-xl-0{margin-right:0!important;margin-left:0!important}.mx-xl-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-xl-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-xl-3{margin-right:1rem!important;margin-left:1rem!important}.mx-xl-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-xl-5{margin-right:3rem!important;margin-left:3rem!important}.mx-xl-auto{margin-right:auto!important;margin-left:auto!important}.my-xl-0{margin-top:0!important;margin-bottom:0!important}.my-xl-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-xl-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-xl-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-xl-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-xl-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-xl-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-xl-0{margin-top:0!important}.mt-xl-1{margin-top:.25rem!important}.mt-xl-2{margin-top:.5rem!important}.mt-xl-3{margin-top:1rem!important}.mt-xl-4{margin-top:1.5rem!important}.mt-xl-5{margin-top:3rem!important}.mt-xl-auto{margin-top:auto!important}.me-xl-0{margin-right:0!important}.me-xl-1{margin-right:.25rem!important}.me-xl-2{margin-right:.5rem!important}.me-xl-3{margin-right:1rem!important}.me-xl-4{margin-right:1.5rem!important}.me-xl-5{margin-right:3rem!important}.me-xl-auto{margin-right:auto!important}.mb-xl-0{margin-bottom:0!important}.mb-xl-1{margin-bottom:.25rem!important}.mb-xl-2{margin-bottom:.5rem!important}.mb-xl-3{margin-bottom:1rem!important}.mb-xl-4{margin-bottom:1.5rem!important}.mb-xl-5{margin-bottom:3rem!important}.mb-xl-auto{margin-bottom:auto!important}.ms-xl-0{margin-left:0!important}.ms-xl-1{margin-left:.25rem!important}.ms-xl-2{margin-left:.5rem!important}.ms-xl-3{margin-left:1rem!important}.ms-xl-4{margin-left:1.5rem!important}.ms-xl-5{margin-left:3rem!important}.ms-xl-auto{margin-left:auto!important}.p-xl-0{padding:0!important}.p-xl-1{padding:.25rem!important}.p-xl-2{padding:.5rem!important}.p-xl-3{padding:1rem!important}.p-xl-4{padding:1.5rem!important}.p-xl-5{padding:3rem!important}.px-xl-0{padding-right:0!important;padding-left:0!important}.px-xl-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-xl-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-xl-3{padding-right:1rem!important;padding-left:1rem!important}.px-xl-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-xl-5{padding-right:3rem!important;padding-left:3rem!important}.py-xl-0{padding-top:0!important;padding-bottom:0!important}.py-xl-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-xl-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-xl-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-xl-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-xl-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-xl-0{padding-top:0!important}.pt-xl-1{padding-top:.25rem!important}.pt-xl-2{padding-top:.5rem!important}.pt-xl-3{padding-top:1rem!important}.pt-xl-4{padding-top:1.5rem!important}.pt-xl-5{padding-top:3rem!important}.pe-xl-0{padding-right:0!important}.pe-xl-1{padding-right:.25rem!important}.pe-xl-2{padding-right:.5rem!important}.pe-xl-3{padding-right:1rem!important}.pe-xl-4{padding-right:1.5rem!important}.pe-xl-5{padding-right:3rem!important}.pb-xl-0{padding-bottom:0!important}.pb-xl-1{padding-bottom:.25rem!important}.pb-xl-2{padding-bottom:.5rem!important}.pb-xl-3{padding-bottom:1rem!important}.pb-xl-4{padding-bottom:1.5rem!important}.pb-xl-5{padding-bottom:3rem!important}.ps-xl-0{padding-left:0!important}.ps-xl-1{padding-left:.25rem!important}.ps-xl-2{padding-left:.5rem!important}.ps-xl-3{padding-left:1rem!important}.ps-xl-4{padding-left:1.5rem!important}.ps-xl-5{padding-left:3rem!important}.gap-xl-0{gap:0!important}.gap-xl-1{gap:.25rem!important}.gap-xl-2{gap:.5rem!important}.gap-xl-3{gap:1rem!important}.gap-xl-4{gap:1.5rem!important}.gap-xl-5{gap:3rem!important}.row-gap-xl-0{row-gap:0!important}.row-gap-xl-1{row-gap:.25rem!important}.row-gap-xl-2{row-gap:.5rem!important}.row-gap-xl-3{row-gap:1rem!important}.row-gap-xl-4{row-gap:1.5rem!important}.row-gap-xl-5{row-gap:3rem!important}.column-gap-xl-0{-moz-column-gap:0!important;-webkit-column-gap:0!important;column-gap:0!important}.column-gap-xl-1{-moz-column-gap:.25rem!important;-webkit-column-gap:.25rem!important;column-gap:.25rem!important}.column-gap-xl-2{-moz-column-gap:.5rem!important;-webkit-column-gap:.5rem!important;column-gap:.5rem!important}.column-gap-xl-3{-moz-column-gap:1rem!important;-webkit-column-gap:1rem!important;column-gap:1rem!important}.column-gap-xl-4{-moz-column-gap:1.5rem!important;-webkit-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-xl-5{-moz-column-gap:3rem!important;-webkit-column-gap:3rem!important;column-gap:3rem!important}.text-xl-start{text-align:left!important}.text-xl-end{text-align:right!important}.text-xl-center{text-align:center!important}}@media (min-width:1400px){.float-xxl-start{float:left!important}.float-xxl-end{float:right!important}.float-xxl-none{float:none!important}.object-fit-xxl-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-xxl-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-xxl-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-xxl-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-xxl-none{-o-object-fit:none!important;object-fit:none!important}.d-xxl-inline{display:inline!important}.d-xxl-inline-block{display:inline-block!important}.d-xxl-block{display:block!important}.d-xxl-grid{display:grid!important}.d-xxl-inline-grid{display:inline-grid!important}.d-xxl-table{display:table!important}.d-xxl-table-row{display:table-row!important}.d-xxl-table-cell{display:table-cell!important}.d-xxl-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-xxl-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}.d-xxl-none{display:none!important}.flex-xxl-fill{-webkit-box-flex:1!important;-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-xxl-row{-webkit-box-orient:horizontal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-xxl-column,.flex-xxl-row{-webkit-box-direction:normal!important}.flex-xxl-column{-webkit-box-orient:vertical!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-xxl-row-reverse{-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-xxl-column-reverse{-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-xxl-grow-0{-webkit-box-flex:0!important;-ms-flex-positive:0!important;flex-grow:0!important}.flex-xxl-grow-1{-webkit-box-flex:1!important;-ms-flex-positive:1!important;flex-grow:1!important}.flex-xxl-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-xxl-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-xxl-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-xxl-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-xxl-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-xxl-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-xxl-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-xxl-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-xxl-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-xxl-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-xxl-evenly{-webkit-box-pack:space-evenly!important;-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-xxl-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.align-items-xxl-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.align-items-xxl-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.align-items-xxl-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-xxl-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-xxl-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-xxl-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-xxl-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-xxl-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-xxl-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-xxl-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-xxl-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-xxl-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-xxl-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-xxl-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-xxl-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-xxl-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}.order-xxl-first{-webkit-box-ordinal-group:0!important;-ms-flex-order:-1!important;order:-1!important}.order-xxl-0{-webkit-box-ordinal-group:1!important;-ms-flex-order:0!important;order:0!important}.order-xxl-1{-webkit-box-ordinal-group:2!important;-ms-flex-order:1!important;order:1!important}.order-xxl-2{-webkit-box-ordinal-group:3!important;-ms-flex-order:2!important;order:2!important}.order-xxl-3{-webkit-box-ordinal-group:4!important;-ms-flex-order:3!important;order:3!important}.order-xxl-4{-webkit-box-ordinal-group:5!important;-ms-flex-order:4!important;order:4!important}.order-xxl-5{-webkit-box-ordinal-group:6!important;-ms-flex-order:5!important;order:5!important}.order-xxl-last{-webkit-box-ordinal-group:7!important;-ms-flex-order:6!important;order:6!important}.m-xxl-0{margin:0!important}.m-xxl-1{margin:.25rem!important}.m-xxl-2{margin:.5rem!important}.m-xxl-3{margin:1rem!important}.m-xxl-4{margin:1.5rem!important}.m-xxl-5{margin:3rem!important}.m-xxl-auto{margin:auto!important}.mx-xxl-0{margin-right:0!important;margin-left:0!important}.mx-xxl-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-xxl-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-xxl-3{margin-right:1rem!important;margin-left:1rem!important}.mx-xxl-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-xxl-5{margin-right:3rem!important;margin-left:3rem!important}.mx-xxl-auto{margin-right:auto!important;margin-left:auto!important}.my-xxl-0{margin-top:0!important;margin-bottom:0!important}.my-xxl-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-xxl-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-xxl-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-xxl-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-xxl-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-xxl-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-xxl-0{margin-top:0!important}.mt-xxl-1{margin-top:.25rem!important}.mt-xxl-2{margin-top:.5rem!important}.mt-xxl-3{margin-top:1rem!important}.mt-xxl-4{margin-top:1.5rem!important}.mt-xxl-5{margin-top:3rem!important}.mt-xxl-auto{margin-top:auto!important}.me-xxl-0{margin-right:0!important}.me-xxl-1{margin-right:.25rem!important}.me-xxl-2{margin-right:.5rem!important}.me-xxl-3{margin-right:1rem!important}.me-xxl-4{margin-right:1.5rem!important}.me-xxl-5{margin-right:3rem!important}.me-xxl-auto{margin-right:auto!important}.mb-xxl-0{margin-bottom:0!important}.mb-xxl-1{margin-bottom:.25rem!important}.mb-xxl-2{margin-bottom:.5rem!important}.mb-xxl-3{margin-bottom:1rem!important}.mb-xxl-4{margin-bottom:1.5rem!important}.mb-xxl-5{margin-bottom:3rem!important}.mb-xxl-auto{margin-bottom:auto!important}.ms-xxl-0{margin-left:0!important}.ms-xxl-1{margin-left:.25rem!important}.ms-xxl-2{margin-left:.5rem!important}.ms-xxl-3{margin-left:1rem!important}.ms-xxl-4{margin-left:1.5rem!important}.ms-xxl-5{margin-left:3rem!important}.ms-xxl-auto{margin-left:auto!important}.p-xxl-0{padding:0!important}.p-xxl-1{padding:.25rem!important}.p-xxl-2{padding:.5rem!important}.p-xxl-3{padding:1rem!important}.p-xxl-4{padding:1.5rem!important}.p-xxl-5{padding:3rem!important}.px-xxl-0{padding-right:0!important;padding-left:0!important}.px-xxl-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-xxl-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-xxl-3{padding-right:1rem!important;padding-left:1rem!important}.px-xxl-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-xxl-5{padding-right:3rem!important;padding-left:3rem!important}.py-xxl-0{padding-top:0!important;padding-bottom:0!important}.py-xxl-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-xxl-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-xxl-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-xxl-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-xxl-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-xxl-0{padding-top:0!important}.pt-xxl-1{padding-top:.25rem!important}.pt-xxl-2{padding-top:.5rem!important}.pt-xxl-3{padding-top:1rem!important}.pt-xxl-4{padding-top:1.5rem!important}.pt-xxl-5{padding-top:3rem!important}.pe-xxl-0{padding-right:0!important}.pe-xxl-1{padding-right:.25rem!important}.pe-xxl-2{padding-right:.5rem!important}.pe-xxl-3{padding-right:1rem!important}.pe-xxl-4{padding-right:1.5rem!important}.pe-xxl-5{padding-right:3rem!important}.pb-xxl-0{padding-bottom:0!important}.pb-xxl-1{padding-bottom:.25rem!important}.pb-xxl-2{padding-bottom:.5rem!important}.pb-xxl-3{padding-bottom:1rem!important}.pb-xxl-4{padding-bottom:1.5rem!important}.pb-xxl-5{padding-bottom:3rem!important}.ps-xxl-0{padding-left:0!important}.ps-xxl-1{padding-left:.25rem!important}.ps-xxl-2{padding-left:.5rem!important}.ps-xxl-3{padding-left:1rem!important}.ps-xxl-4{padding-left:1.5rem!important}.ps-xxl-5{padding-left:3rem!important}.gap-xxl-0{gap:0!important}.gap-xxl-1{gap:.25rem!important}.gap-xxl-2{gap:.5rem!important}.gap-xxl-3{gap:1rem!important}.gap-xxl-4{gap:1.5rem!important}.gap-xxl-5{gap:3rem!important}.row-gap-xxl-0{row-gap:0!important}.row-gap-xxl-1{row-gap:.25rem!important}.row-gap-xxl-2{row-gap:.5rem!important}.row-gap-xxl-3{row-gap:1rem!important}.row-gap-xxl-4{row-gap:1.5rem!important}.row-gap-xxl-5{row-gap:3rem!important}.column-gap-xxl-0{-moz-column-gap:0!important;-webkit-column-gap:0!important;column-gap:0!important}.column-gap-xxl-1{-moz-column-gap:.25rem!important;-webkit-column-gap:.25rem!important;column-gap:.25rem!important}.column-gap-xxl-2{-moz-column-gap:.5rem!important;-webkit-column-gap:.5rem!important;column-gap:.5rem!important}.column-gap-xxl-3{-moz-column-gap:1rem!important;-webkit-column-gap:1rem!important;column-gap:1rem!important}.column-gap-xxl-4{-moz-column-gap:1.5rem!important;-webkit-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-xxl-5{-moz-column-gap:3rem!important;-webkit-column-gap:3rem!important;column-gap:3rem!important}.text-xxl-start{text-align:left!important}.text-xxl-end{text-align:right!important}.text-xxl-center{text-align:center!important}}@media (min-width:1200px){.fs-1{font-size:2.5rem!important}.fs-2{font-size:2rem!important}.fs-3{font-size:1.75rem!important}.fs-4{font-size:1.5rem!important}}@media print{.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-grid{display:grid!important}.d-print-inline-grid{display:inline-grid!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-print-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}.d-print-none{display:none!important}}#app[data-v-001c9dd8]{font-family:Avenir,Helvetica,Arial,sans-serif;text-align:center;color:#2c3e50;margin-top:60px}.menu[data-v-001c9dd8]{margin-bottom:20px}.content[data-v-001c9dd8]{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-pack:distribute;justify-content:space-around;height:90vh}.editor-box[data-v-001c9dd8]{width:35%;overflow:auto}.editor-box[data-v-001c9dd8],.svg-container[data-v-001c9dd8]{border:5px solid #4b4a4a;padding:20px;margin:10px;border-radius:10px;height:80vh}.svg-container[data-v-001c9dd8]{width:60%;overflow:hidden;position:relative}.error[data-v-001c9dd8]{color:red;margin-top:10px}.my-select[data-v-001c9dd8]{padding:10px;font-size:16px;border-radius:5px;border:1px solid #ccc;margin-right:20px}.url-input[data-v-001c9dd8]{padding:10px;font-size:16px;border:1px solid #ccc;width:400px;overflow-x:auto;margin-left:20px}pre[data-v-001c9dd8]{overflow-x:auto;overflow-y:auto;height:100%;width:100%;white-space:nowrap}.svg-container input[data-v-001c9dd8]{position:absolute;top:10px;left:140px}.svg-container label[data-v-001c9dd8]{font-weight:700;position:absolute;top:14px;left:20px}span[data-v-001c9dd8]{text-align:left!important}.tooltip[data-v-001c9dd8]{position:absolute;text-align:left;width:auto;height:auto;padding:5px;font:12px sans-serif;background:#b0c4de;border:0;border-radius:8px;pointer-events:none}.vjs-checkbox{position:absolute;left:-30px;color:#1f2d3d;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vjs-checkbox.is-checked .vjs-checkbox__inner{background-color:#1890ff;border-color:#0076e4}.vjs-checkbox.is-checked .vjs-checkbox__inner:after{-webkit-transform:rotate(45deg) scaleY(1);transform:rotate(45deg) scaleY(1)}.vjs-checkbox .vjs-checkbox__inner{display:inline-block;position:relative;border:1px solid #bfcbd9;-webkit-border-radius:2px;border-radius:2px;vertical-align:middle;-webkit-box-sizing:border-box;box-sizing:border-box;width:16px;height:16px;background-color:#fff;z-index:1;cursor:pointer;-webkit-transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46);-o-transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46);transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46)}.vjs-checkbox .vjs-checkbox__inner:after{-webkit-box-sizing:content-box;box-sizing:content-box;content:"";border:2px solid #fff;border-left:0;border-top:0;height:8px;left:4px;position:absolute;top:1px;-webkit-transform:rotate(45deg) scaleY(0);transform:rotate(45deg) scaleY(0);width:4px;-webkit-transition:-webkit-transform .15s cubic-bezier(.71,-.46,.88,.6) .05s;transition:-webkit-transform .15s cubic-bezier(.71,-.46,.88,.6) .05s;-o-transition:transform .15s cubic-bezier(.71,-.46,.88,.6) .05s;transition:transform .15s cubic-bezier(.71,-.46,.88,.6) .05s;transition:transform .15s cubic-bezier(.71,-.46,.88,.6) .05s,-webkit-transform .15s cubic-bezier(.71,-.46,.88,.6) .05s;-webkit-transform-origin:center;transform-origin:center}.vjs-checkbox .vjs-checkbox__original{opacity:0;outline:none;position:absolute;z-index:-1;top:0;left:0;right:0;bottom:0;margin:0}.vjs-radio{position:absolute;left:-30px;color:#1f2d3d;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vjs-radio.is-checked .vjs-radio__inner{background-color:#1890ff;border-color:#0076e4}.vjs-radio.is-checked .vjs-radio__inner:after{-webkit-transform:translate(-50%,-50%) scale(1);transform:translate(-50%,-50%) scale(1)}.vjs-radio .vjs-radio__inner{border:1px solid #bfcbd9;-webkit-border-radius:100%;border-radius:100%;width:16px;height:16px;vertical-align:middle;background-color:#fff;position:relative;cursor:pointer;display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box}.vjs-radio .vjs-radio__inner:after{width:4px;height:4px;-webkit-border-radius:100%;border-radius:100%;background-color:#fff;content:"";position:absolute;left:50%;top:50%;-webkit-transform:translate(-50%,-50%) scale(0);transform:translate(-50%,-50%) scale(0);-webkit-transition:-webkit-transform .15s ease-in;transition:-webkit-transform .15s ease-in;-o-transition:transform .15s ease-in;transition:transform .15s ease-in;transition:transform .15s ease-in,-webkit-transform .15s ease-in}.vjs-radio .vjs-radio__original{opacity:0;outline:none;position:absolute;z-index:-1;top:0;left:0;right:0;bottom:0;margin:0}.vjs-tree{font-family:Monaco,Menlo,Consolas,Bitstream Vera Sans Mono,monospace;font-size:14px;text-align:left}.vjs-tree.is-root{position:relative}.vjs-tree.is-root.has-selectable-control{margin-left:30px}.vjs-tree.is-mouseover{background-color:#e6f7ff}.vjs-tree.is-highlight-selected{background-color:#ccefff}.vjs-tree .vjs-tree__content{padding-left:1em}.vjs-tree .vjs-tree__content.has-line{border-left:1px dotted #bfcbd9}.vjs-tree .vjs-tree__brackets{cursor:pointer}.vjs-tree .vjs-tree__brackets:hover{color:#1890ff}.vjs-tree .vjs-comment{color:#bfcbd9}.vjs-tree .vjs-value__null{color:#ff4949}.vjs-tree .vjs-value__boolean,.vjs-tree .vjs-value__number{color:#1d8ce0}.vjs-tree .vjs-value__string{color:#13ce66}.vjs-tree .highlight-row{background:rgba(255,0,0,.08);border:1px solid rgba(255,0,0,.36);padding:2px;-webkit-border-radius:2px;border-radius:2px;-webkit-box-shadow:1px 2px 5px -2px #ababab;box-shadow:1px 2px 5px -2px #ababab} +/*# sourceMappingURL=app.47bd9779ba3b9a7e86a34752feb2c41b.css.map */ \ No newline at end of file diff --git a/static/css/app.c220b377967d740c7753a065d8fd4e46.css.map b/static/css/app.47bd9779ba3b9a7e86a34752feb2c41b.css.map similarity index 99% rename from static/css/app.c220b377967d740c7753a065d8fd4e46.css.map rename to static/css/app.47bd9779ba3b9a7e86a34752feb2c41b.css.map index 1ecc9a7..2d2afbe 100644 --- a/static/css/app.c220b377967d740c7753a065d8fd4e46.css.map +++ b/static/css/app.47bd9779ba3b9a7e86a34752feb2c41b.css.map @@ -1 +1 @@ -{"version":3,"sources":["app.c220b377967d740c7753a065d8fd4e46.css"],"names":[],"mappings":"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c,CACd,QAAS,CACT,uCAAwC,CACxC,WACF,CACA,0CACE,YAAa,CACb,mBAAqB,CACrB,eAAgB,CAChB,eAAgB,CAChB,6BACF,CACA,OACE,gCACF,CACA,0BACE,OACE,gBACF,CACF,CACA,OACE,+BACF,CACA,0BACE,OACE,cACF,CACF,CACA,OACE,6BACF,CACA,0BACE,OACE,iBACF,CACF,CACA,OACE,+BACF,CACA,0BACE,OACE,gBACF,CACF,CACA,OACE,iBACF,CACA,OACE,cACF,CACA,EACE,YAAa,CACb,kBACF,CACA,YACE,wCAAyC,CACzC,gCAAiC,CACjC,WAAY,CACZ,qCAAsC,CACtC,6BACF,CACA,QACE,kBAAmB,CACnB,iBAAkB,CAClB,mBACF,CACA,MAEE,iBACF,CACA,SAGE,YAAa,CACb,kBACF,CACA,wBAIE,eACF,CACA,GACE,eACF,CACA,GACE,mBAAqB,CACrB,aACF,CACA,WACE,eACF,CACA,SAEE,kBACF,CACA,aACE,gBACF,CACA,WACE,eAAiB,CACjB,uCACF,CACA,QAEE,iBAAkB,CAClB,eAAiB,CACjB,aAAc,CACd,uBACF,CACA,IACE,aACF,CACA,IACE,SACF,CACA,EACE,6DAAgE,CAChE,yBACF,CACA,QACE,kDACF,CACA,4DACE,aAAc,CACd,oBACF,CACA,kBAIE,oCAAqC,CACrC,aACF,CACA,IACE,aAAc,CACd,YAAa,CACb,kBAAmB,CACnB,aAAc,CACd,gBACF,CACA,SACE,iBAAkB,CAClB,aAAc,CACd,iBACF,CACA,KACE,gBAAkB,CAClB,0BAA2B,CAC3B,oBACF,CACA,OACE,aACF,CACA,IACE,wBAA2B,CAC3B,gBAAkB,CAClB,uBAAwB,CACxB,qCAAsC,CACtC,oBACF,CACA,QACE,SAAU,CACV,aACF,CACA,OACE,eACF,CACA,QAEE,qBACF,CACA,MACE,mBAAoB,CACpB,wBACF,CACA,QACE,iBAAmB,CACnB,oBAAsB,CACtB,+BAAgC,CAChC,eACF,CACA,GACE,kBAAmB,CACnB,+BACF,CACA,2BAQE,cAAe,CAFf,oBAGF,CACA,MACE,oBACF,CACA,OACE,eACF,CACA,iCACE,SACF,CACA,sCAKE,QAAS,CACT,mBAAoB,CACpB,iBAAkB,CAClB,mBACF,CACA,cAEE,mBACF,CACA,cACE,cACF,CACA,OACE,gBACF,CACA,gBACE,SACF,CACA,0IACE,sBACF,CACA,gDAIE,yBACF,CACA,4GAIE,cACF,CACA,mBACE,SAAU,CACV,iBACF,CACA,SACE,eACF,CACA,SACE,WAAY,CACZ,SAAU,CACV,QAAS,CACT,QACF,CACA,OACE,UAAW,CACX,UAAW,CACX,SAAU,CACV,mBAAqB,CACrB,+BAAiC,CACjC,mBACF,CACA,0BACE,OACE,gBACF,CACF,CACA,SACE,UACF,CACA,+OAOE,SACF,CACA,4BACE,WACF,CACA,cACE,mBAAoB,CACpB,4BACF,CASA,4BACE,uBACF,CACA,+BACE,SACF,CACA,6BACE,YAAa,CACb,yBACF,CACA,uBACE,YAAa,CACb,yBACF,CACA,OACE,oBACF,CACA,OACE,QACF,CACA,QACE,iBAAkB,CAClB,cACF,CACA,SACE,uBACF,CACA,SACE,sBACF,CACA,MACE,iBAAkB,CAClB,eACF,CACA,WACE,gCAAiC,CACjC,eAAgB,CAChB,eACF,CACA,0BACE,WACE,cACF,CACF,CACA,WACE,gCAAiC,CACjC,eAAgB,CAChB,eACF,CACA,0BACE,WACE,gBACF,CACF,CACA,WACE,gCAAiC,CACjC,eAAgB,CAChB,eACF,CACA,0BACE,WACE,cACF,CACF,CACA,WACE,gCAAiC,CACjC,eAAgB,CAChB,eACF,CACA,0BACE,WACE,gBACF,CACF,CACA,WACE,gCAAiC,CACjC,eAAgB,CAChB,eACF,CACA,0BACE,WACE,cACF,CACF,CACA,WACE,gCAAiC,CACjC,eAAgB,CAChB,eACF,CACA,0BACE,WACE,gBACF,CACF,CAKA,4BACE,cAAe,CACf,eACF,CACA,kBACE,oBACF,CACA,mCACE,kBACF,CACA,YACE,gBAAkB,CAClB,wBACF,CACA,YACE,kBAAmB,CACnB,iBACF,CACA,wBACE,eACF,CACA,mBACE,gBAAiB,CACjB,kBAAmB,CACnB,gBAAkB,CAClB,aACF,CACA,0BACE,kBACF,CAKA,0BAHE,cAAe,CACf,WASF,CAPA,eACE,cAAgB,CAChB,kCAAmC,CACnC,0DAA2D,CAC3D,qCAGF,CACA,QACE,oBACF,CACA,YACE,mBAAqB,CACrB,aACF,CACA,gBACE,gBAAkB,CAClB,+BACF,CACA,mGAOE,oBAAqB,CACrB,eAAgB,CAChB,UAAW,CACX,0CAA6C,CAC7C,yCAA4C,CAC5C,iBAAkB,CAClB,gBACF,CACA,yBACE,yBACE,eACF,CACF,CACA,yBACE,uCACE,eACF,CACF,CACA,yBACE,qDACE,eACF,CACF,CACA,0BACE,mEACE,gBACF,CACF,CACA,0BACE,kFACE,gBACF,CACF,CACA,MACE,oBAAqB,CACrB,wBAAyB,CACzB,wBAAyB,CACzB,wBAAyB,CACzB,yBAA0B,CAC1B,0BACF,CACA,KACE,oBAAqB,CACrB,eAAgB,CAChB,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,cAAe,CACnB,sCAAyC,CACzC,0CAA6C,CAC7C,yCACF,CACA,OACE,mBAAoB,CAChB,aAAc,CAClB,UAAW,CACX,cAAe,CACf,0CAA6C,CAC7C,yCAA4C,CAC5C,6BACF,CACA,KACE,kBAAmB,CACf,eAAgB,CACZ,WACV,CACA,iBAIE,UACF,CACA,+BALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,cAIE,UACF,CACA,cAIE,SACF,CACA,4BALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,cAIE,oBACF,CACA,cAIE,SACF,CACA,4BALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,cAIE,SACF,CACA,cAIE,oBACF,CACA,wBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,UACF,CACA,OAIE,iBACF,CACA,cALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,OAIE,kBACF,CACA,OAIE,SACF,CACA,cALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,OAIE,kBACF,CACA,OAIE,kBACF,CACA,cALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,OAIE,SACF,CACA,OAIE,kBACF,CACA,cALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,OAIE,kBACF,CACA,OAIE,SACF,CACA,eALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,QAIE,kBACF,CACA,QAIE,kBACF,CACA,gBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,QAIE,UACF,CACA,UACE,uBACF,CACA,UACE,wBACF,CACA,UACE,eACF,CACA,UACE,wBACF,CACA,UACE,wBACF,CACA,UACE,eACF,CACA,UACE,wBACF,CACA,UACE,wBACF,CACA,UACE,eACF,CACA,WACE,wBACF,CACA,WACE,wBACF,CACA,WAEE,eACF,CACA,WAEE,eACF,CACA,WAEE,qBACF,CACA,WAEE,qBACF,CACA,WAEE,oBACF,CACA,WAEE,oBACF,CACA,WAEE,kBACF,CACA,WAEE,kBACF,CACA,WAEE,oBACF,CACA,WAEE,oBACF,CACA,WAEE,kBACF,CACA,WAEE,kBACF,CACA,yBACE,QACE,kBAAmB,CACf,eAAgB,CACZ,WACV,CACA,oBAIE,UACF,CACA,qCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,iBAIE,UACF,CACA,iBAIE,SACF,CACA,kCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,iBAIE,oBACF,CACA,iBAIE,SACF,CACA,kCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,iBAIE,SACF,CACA,iBAIE,oBACF,CACA,8BALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,aAIE,UACF,CACA,UAIE,iBACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,kBACF,CACA,UAIE,SACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,kBACF,CACA,UAIE,kBACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,SACF,CACA,UAIE,kBACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,kBACF,CACA,UAIE,SACF,CACA,qBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,WAIE,kBACF,CACA,WAIE,kBACF,CACA,sBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,WAIE,UACF,CACA,aACE,aACF,CACA,aACE,uBACF,CACA,aACE,wBACF,CACA,aACE,eACF,CACA,aACE,wBACF,CACA,aACE,wBACF,CACA,aACE,eACF,CACA,aACE,wBACF,CACA,aACE,wBACF,CACA,aACE,eACF,CACA,cACE,wBACF,CACA,cACE,wBACF,CACA,iBAEE,eACF,CACA,iBAEE,eACF,CACA,iBAEE,qBACF,CACA,iBAEE,qBACF,CACA,iBAEE,oBACF,CACA,iBAEE,oBACF,CACA,iBAEE,kBACF,CACA,iBAEE,kBACF,CACA,iBAEE,oBACF,CACA,iBAEE,oBACF,CACA,iBAEE,kBACF,CACA,iBAEE,kBACF,CACF,CACA,yBACE,QACE,kBAAmB,CACf,eAAgB,CACZ,WACV,CACA,oBAIE,UACF,CACA,qCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,iBAIE,UACF,CACA,iBAIE,SACF,CACA,kCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,iBAIE,oBACF,CACA,iBAIE,SACF,CACA,kCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,iBAIE,SACF,CACA,iBAIE,oBACF,CACA,8BALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,aAIE,UACF,CACA,UAIE,iBACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,kBACF,CACA,UAIE,SACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,kBACF,CACA,UAIE,kBACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,SACF,CACA,UAIE,kBACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,kBACF,CACA,UAIE,SACF,CACA,qBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,WAIE,kBACF,CACA,WAIE,kBACF,CACA,sBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,WAIE,UACF,CACA,aACE,aACF,CACA,aACE,uBACF,CACA,aACE,wBACF,CACA,aACE,eACF,CACA,aACE,wBACF,CACA,aACE,wBACF,CACA,aACE,eACF,CACA,aACE,wBACF,CACA,aACE,wBACF,CACA,aACE,eACF,CACA,cACE,wBACF,CACA,cACE,wBACF,CACA,iBAEE,eACF,CACA,iBAEE,eACF,CACA,iBAEE,qBACF,CACA,iBAEE,qBACF,CACA,iBAEE,oBACF,CACA,iBAEE,oBACF,CACA,iBAEE,kBACF,CACA,iBAEE,kBACF,CACA,iBAEE,oBACF,CACA,iBAEE,oBACF,CACA,iBAEE,kBACF,CACA,iBAEE,kBACF,CACF,CACA,yBACE,QACE,kBAAmB,CACf,eAAgB,CACZ,WACV,CACA,oBAIE,UACF,CACA,qCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,iBAIE,UACF,CACA,iBAIE,SACF,CACA,kCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,iBAIE,oBACF,CACA,iBAIE,SACF,CACA,kCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,iBAIE,SACF,CACA,iBAIE,oBACF,CACA,8BALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,aAIE,UACF,CACA,UAIE,iBACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,kBACF,CACA,UAIE,SACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,kBACF,CACA,UAIE,kBACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,SACF,CACA,UAIE,kBACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,kBACF,CACA,UAIE,SACF,CACA,qBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,WAIE,kBACF,CACA,WAIE,kBACF,CACA,sBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,WAIE,UACF,CACA,aACE,aACF,CACA,aACE,uBACF,CACA,aACE,wBACF,CACA,aACE,eACF,CACA,aACE,wBACF,CACA,aACE,wBACF,CACA,aACE,eACF,CACA,aACE,wBACF,CACA,aACE,wBACF,CACA,aACE,eACF,CACA,cACE,wBACF,CACA,cACE,wBACF,CACA,iBAEE,eACF,CACA,iBAEE,eACF,CACA,iBAEE,qBACF,CACA,iBAEE,qBACF,CACA,iBAEE,oBACF,CACA,iBAEE,oBACF,CACA,iBAEE,kBACF,CACA,iBAEE,kBACF,CACA,iBAEE,oBACF,CACA,iBAEE,oBACF,CACA,iBAEE,kBACF,CACA,iBAEE,kBACF,CACF,CACA,0BACE,QACE,kBAAmB,CACf,eAAgB,CACZ,WACV,CACA,oBAIE,UACF,CACA,qCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,iBAIE,UACF,CACA,iBAIE,SACF,CACA,kCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,iBAIE,oBACF,CACA,iBAIE,SACF,CACA,kCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,iBAIE,SACF,CACA,iBAIE,oBACF,CACA,8BALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,aAIE,UACF,CACA,UAIE,iBACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,kBACF,CACA,UAIE,SACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,kBACF,CACA,UAIE,kBACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,SACF,CACA,UAIE,kBACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,kBACF,CACA,UAIE,SACF,CACA,qBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,WAIE,kBACF,CACA,WAIE,kBACF,CACA,sBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,WAIE,UACF,CACA,aACE,aACF,CACA,aACE,uBACF,CACA,aACE,wBACF,CACA,aACE,eACF,CACA,aACE,wBACF,CACA,aACE,wBACF,CACA,aACE,eACF,CACA,aACE,wBACF,CACA,aACE,wBACF,CACA,aACE,eACF,CACA,cACE,wBACF,CACA,cACE,wBACF,CACA,iBAEE,eACF,CACA,iBAEE,eACF,CACA,iBAEE,qBACF,CACA,iBAEE,qBACF,CACA,iBAEE,oBACF,CACA,iBAEE,oBACF,CACA,iBAEE,kBACF,CACA,iBAEE,kBACF,CACA,iBAEE,oBACF,CACA,iBAEE,oBACF,CACA,iBAEE,kBACF,CACA,iBAEE,kBACF,CACF,CACA,0BACE,SACE,kBAAmB,CACf,eAAgB,CACZ,WACV,CACA,qBAIE,UACF,CACA,uCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,kBAIE,UACF,CACA,kBAIE,SACF,CACA,oCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,kBAIE,oBACF,CACA,kBAIE,SACF,CACA,oCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,kBAIE,SACF,CACA,kBAIE,oBACF,CACA,gCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,cAIE,UACF,CACA,WAIE,iBACF,CACA,sBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,WAIE,kBACF,CACA,WAIE,SACF,CACA,sBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,WAIE,kBACF,CACA,WAIE,kBACF,CACA,sBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,WAIE,SACF,CACA,WAIE,kBACF,CACA,sBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,WAIE,kBACF,CACA,WAIE,SACF,CACA,uBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,YAIE,kBACF,CACA,YAIE,kBACF,CACA,wBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,YAIE,UACF,CACA,cACE,aACF,CACA,cACE,uBACF,CACA,cACE,wBACF,CACA,cACE,eACF,CACA,cACE,wBACF,CACA,cACE,wBACF,CACA,cACE,eACF,CACA,cACE,wBACF,CACA,cACE,wBACF,CACA,cACE,eACF,CACA,eACE,wBACF,CACA,eACE,wBACF,CACA,mBAEE,eACF,CACA,mBAEE,eACF,CACA,mBAEE,qBACF,CACA,mBAEE,qBACF,CACA,mBAEE,oBACF,CACA,mBAEE,oBACF,CACA,mBAEE,kBACF,CACA,mBAEE,kBACF,CACA,mBAEE,oBACF,CACA,mBAEE,oBACF,CACA,mBAEE,kBACF,CACA,mBAEE,kBACF,CACF,CACA,OACE,6BAA8B,CAC9B,0BAA2B,CAC3B,8BAA+B,CAC/B,2BAA4B,CAC5B,qCAAsC,CACtC,+BAAgC,CAChC,8CAA+C,CAC/C,gCAAiC,CACjC,6CAA8C,CAC9C,sCAA0C,CAC1C,4CAA6C,CAC7C,oCAAwC,CACxC,2CAA4C,CAC5C,qCAAyC,CACzC,UAAW,CACX,kBAAmB,CACnB,kBAAmB,CACnB,yCACF,CACA,yBACE,aAAsB,CACtB,kFAAqF,CACrF,mCAAoC,CACpC,0CAA2C,CAC3C,gHAAmH,CAC3G,wGACV,CACA,aACE,sBACF,CACA,aACE,qBACF,CACA,qBACE,+CACF,CACA,aACE,gBACF,CACA,4BACE,cACF,CACA,gCACE,mBAAsC,CAAtC,0CAAsC,CAAtC,oBAAsC,CAAtC,uCACF,CACA,kCACE,wCAAsC,CAAtC,qBAAsC,CAAtC,yCAAsC,CAAtC,kBACF,CACA,oCACE,qBACF,CACA,qCACE,kBACF,CAKA,kGACE,mDAAoD,CACpD,6CACF,CACA,cACE,mDAAoD,CACpD,6CACF,CACA,8BACE,kDAAmD,CACnD,4CACF,CACA,eACE,qBAAsB,CACtB,qBAAsB,CACtB,+BAAgC,CAChC,6BAA8B,CAC9B,6BAA8B,CAC9B,4BAA6B,CAC7B,4BAA6B,CAC7B,2BAA4B,CAC5B,2BAGF,CACA,gCAHE,2BAA4B,CAC5B,yCAcF,CAZA,iBACE,qBAAsB,CACtB,qBAAsB,CACtB,+BAAgC,CAChC,6BAA8B,CAC9B,6BAA8B,CAC9B,4BAA6B,CAC7B,4BAA6B,CAC7B,2BAA4B,CAC5B,2BAGF,CACA,eACE,qBAAsB,CACtB,qBAAsB,CACtB,+BAAgC,CAChC,6BAA8B,CAC9B,6BAA8B,CAC9B,4BAA6B,CAC7B,4BAA6B,CAC7B,2BAA4B,CAC5B,2BAGF,CACA,2BAHE,2BAA4B,CAC5B,yCAcF,CAZA,YACE,qBAAsB,CACtB,qBAAsB,CACtB,+BAAgC,CAChC,6BAA8B,CAC9B,6BAA8B,CAC9B,4BAA6B,CAC7B,4BAA6B,CAC7B,2BAA4B,CAC5B,2BAGF,CACA,eACE,qBAAsB,CACtB,qBAAsB,CACtB,+BAAgC,CAChC,6BAA8B,CAC9B,6BAA8B,CAC9B,4BAA6B,CAC7B,4BAA6B,CAC7B,2BAA4B,CAC5B,2BAGF,CACA,6BAHE,2BAA4B,CAC5B,yCAcF,CAZA,cACE,qBAAsB,CACtB,qBAAsB,CACtB,+BAAgC,CAChC,6BAA8B,CAC9B,6BAA8B,CAC9B,4BAA6B,CAC7B,4BAA6B,CAC7B,2BAA4B,CAC5B,2BAGF,CACA,aACE,qBAAsB,CACtB,qBAAsB,CACtB,+BAAgC,CAChC,6BAA8B,CAC9B,6BAA8B,CAC9B,4BAA6B,CAC7B,4BAA6B,CAC7B,2BAA4B,CAC5B,2BAGF,CACA,yBAHE,2BAA4B,CAC5B,yCAcF,CAZA,YACE,qBAAsB,CACtB,qBAAsB,CACtB,+BAAgC,CAChC,6BAA8B,CAC9B,6BAA8B,CAC9B,4BAA6B,CAC7B,4BAA6B,CAC7B,2BAA4B,CAC5B,2BAGF,CACA,kBACE,eAAgB,CAChB,gCACF,CACA,4BACE,qBACE,eAAgB,CAChB,gCACF,CACF,CACA,4BACE,qBACE,eAAgB,CAChB,gCACF,CACF,CACA,4BACE,qBACE,eAAgB,CAChB,gCACF,CACF,CACA,6BACE,qBACE,eAAgB,CAChB,gCACF,CACF,CACA,6BACE,sBACE,eAAgB,CAChB,gCACF,CACF,CACA,YACE,mBACF,CACA,gBACE,kDAAoD,CACpD,qDAAuD,CACvD,eAAgB,CAChB,iBAAkB,CAClB,eACF,CACA,mBACE,gDAAkD,CAClD,mDAAqD,CACrD,iBACF,CACA,mBACE,iDAAmD,CACnD,oDAAsD,CACtD,iBACF,CACA,WACE,iBAAmB,CACnB,gBAAkB,CAClB,+BACF,CACA,cACE,aAAc,CACd,UAAW,CACX,sBAAyB,CACzB,cAAe,CACf,eAAgB,CAChB,eAAgB,CAChB,0BAA2B,CAC3B,kCAAmC,CACnC,2BAA4B,CAC5B,0DAA2D,CAC3D,uBAAwB,CACxB,oBAAqB,CACrB,eAAgB,CAChB,qCAAsC,CACtC,oFAAwF,CACxF,4EAAgF,CAChF,oEAAwE,CACxE,wGACF,CACA,uCACE,cACE,uBAAwB,CACxB,eACF,CACF,CACA,yBACE,eACF,CACA,wDACE,cACF,CACA,oBACE,0BAA2B,CAC3B,kCAAmC,CACnC,oBAAqB,CACrB,SAAU,CACV,oDAA0D,CAClD,4CACV,CACA,2CACE,cAAe,CACf,YAAa,CACb,QACF,CACA,qCACE,aAAc,CACd,SACF,CACA,gCACE,+BAAgC,CAChC,SACF,CACA,yCACE,+BAAgC,CAChC,SACF,CACA,qCACE,+BAAgC,CAChC,SACF,CACA,2BACE,+BAAgC,CAChC,SACF,CACA,uBACE,uCAAwC,CACxC,SACF,CACA,0CACE,sBAAyB,CACzB,uBAA0B,CAC1B,yBAA2B,CAC3B,wBAA0B,CAC1B,0BAA2B,CAC3B,sCAAuC,CACvC,mBAAoB,CAGpB,cAAe,CAFf,oBAAqB,CAGrB,8CAA+C,CAC/C,eAAgB,CAChB,qIAA6I,CAC7I,6IAAqJ,CACrJ,qIAA6I,CAC7I,6HAAqI,CACrI,iKACF,CACA,oCACE,sBAAyB,CACzB,uBAA0B,CAC1B,yBAA2B,CAC3B,wBAA0B,CAC1B,0BAA2B,CAC3B,sCAAuC,CACvC,mBAAoB,CAGpB,cAAe,CAFf,oBAAqB,CAGrB,8CAA+C,CAC/C,eAAgB,CAChB,6IAAqJ,CACrJ,qIAA6I,CAC7I,6HAAqI,CACrI,iKACF,CACA,uCACE,0CACE,uBAAwB,CACxB,eACF,CACA,oCACE,uBAAwB,CACxB,eACF,CACF,CACA,+EACE,uCACF,CACA,yEACE,uCACF,CACA,wBACE,aAAc,CACd,UAAW,CACX,iBAAmB,CACnB,eAAgB,CAChB,eAAgB,CAChB,0BAA2B,CAC3B,4BAA6B,CAC7B,mBAAyB,CACzB,+BAAsC,CAAtC,sDAAsC,CAAtC,gCAAsC,CAAtC,mDACF,CACA,8BACE,SACF,CACA,gFACE,eAAgB,CAChB,cACF,CACA,iBACE,yDAAmE,CACnE,oBAAuB,CACvB,iBAAmB,CACnB,wCACF,CACA,6CACE,oBAAuB,CACvB,qBAAwB,CACxB,wBAA0B,CAC1B,uBACF,CACA,uCACE,oBAAuB,CACvB,qBAAwB,CACxB,wBAA0B,CAC1B,uBACF,CACA,iBACE,wDAAiE,CACjE,kBAAoB,CACpB,iBAAkB,CAClB,wCACF,CACA,6CACE,kBAAoB,CACpB,mBAAqB,CACrB,uBAAwB,CACxB,sBACF,CACA,uCACE,kBAAoB,CACpB,mBAAqB,CACrB,uBAAwB,CACxB,sBACF,CACA,sBACE,0DACF,CACA,yBACE,yDACF,CACA,yBACE,wDACF,CACA,oBACE,UAAW,CACX,sDAAgE,CAChE,eACF,CACA,mDACE,cACF,CACA,uCACE,kBAAoB,CACpB,qCACF,CACA,0CACE,kBAAoB,CACpB,qCACF,CACA,oCACE,qDACF,CACA,oCACE,oDACF,CACA,aACE,qQAAwP,CACxP,aAAc,CACd,UAAW,CACX,sCAA0C,CAC1C,cAAe,CACf,eAAgB,CAChB,eAAgB,CAChB,0BAA2B,CAC3B,kCAAmC,CACnC,gFAAmF,CACnF,2BAA4B,CAC5B,uCAAyC,CACzC,yBAA0B,CAC1B,0DAA2D,CAC3D,qCAAsC,CACtC,oFAAwF,CACxF,4EAAgF,CAChF,oEAAwE,CACxE,wGAA8G,CAC9G,uBAAwB,CACxB,oBAAqB,CACrB,eACF,CACA,uCACE,aACE,uBAAwB,CACxB,eACF,CACF,CACA,mBACE,oBAAqB,CACrB,SAAU,CACV,oDAA0D,CAClD,4CACV,CACA,0DACE,oBAAsB,CACtB,qBACF,CACA,sBACE,uCACF,CACA,4BACE,iBAAkB,CAClB,sCACF,CACA,gBACE,kBAAoB,CACpB,qBAAuB,CACvB,kBAAoB,CACpB,iBAAmB,CACnB,wCACF,CACA,gBACE,iBAAmB,CACnB,oBAAsB,CACtB,iBAAkB,CAClB,iBAAkB,CAClB,wCACF,CACA,kCACE,qQACF,CACA,YACE,aAAc,CACd,iBAAkB,CAClB,kBAAmB,CACnB,qBACF,CACA,8BACE,UAAW,CACX,kBACF,CACA,oBACE,mBAAoB,CACpB,cAAe,CACf,gBACF,CACA,sCACE,WAAY,CACZ,mBAAoB,CACpB,aACF,CACA,kBACE,oCAAqC,CACrC,SAAU,CACV,UAAW,CACX,gBAAkB,CAClB,kBAAmB,CACnB,wCAAyC,CACzC,8CAA+C,CAC/C,2BAA4B,CAC5B,uBAA2B,CAC3B,uBAAwB,CACxB,0DAA2D,CAC3D,uBAAwB,CACxB,oBAAqB,CACrB,eAAgB,CAChB,gCAAiC,CACjC,kBAAmB,CACnB,wBACF,CACA,iCACE,mBACF,CACA,8BACE,iBACF,CACA,yBACE,8BAA+B,CACvB,sBACV,CACA,wBACE,oBAAqB,CACrB,SAAU,CACV,oDAA0D,CAClD,4CACV,CACA,0BACE,wBAAyB,CACzB,oBACF,CACA,yCACE,oQACF,CACA,sCACE,4KACF,CACA,+CACE,wBAAyB,CACzB,oBAAqB,CACrB,8PACF,CACA,2BACE,mBAAoB,CACpB,mBAAoB,CACZ,WAAY,CACpB,UACF,CACA,2FACE,cAAe,CACf,UACF,CACA,aACE,kBACF,CACA,+BACE,oLAA2K,CAC3K,SAAU,CACV,kBAAmB,CACnB,yCAA0C,CAC1C,qBAAgC,CAChC,iBAAkB,CAClB,uDAAyD,CACzD,+CACF,CACA,uCACE,+BACE,uBAAwB,CACxB,eACF,CACF,CACA,qCACE,0KACF,CACA,uCACE,wBAAiC,CACjC,uKACF,CACA,gCACE,mBAAoB,CACpB,cACF,CACA,kDACE,mBAAoB,CACpB,aACF,CACA,mBACE,oBAAqB,CACrB,iBACF,CACA,WACE,iBAAkB,CAClB,kBAAsB,CACtB,mBACF,CACA,mDACE,mBAAoB,CACpB,mBAAoB,CACZ,WAAY,CACpB,WACF,CACA,8EACE,0LACF,CACA,YACE,UAAW,CACX,aAAc,CACd,SAAU,CACV,4BAA6B,CAC7B,uBAAwB,CACxB,oBAAqB,CACrB,eACF,CACA,kBACE,SACF,CACA,wCACE,mEAA0E,CAClE,2DACV,CACA,oCACE,2DACF,CACA,8BACE,QACF,CACA,kCACE,UAAW,CACX,WAAY,CACZ,kBAAoB,CACpB,wBAAyB,CACzB,QAAS,CACT,kBAAmB,CACnB,8GAAoH,CACpH,sHAA4H,CAC5H,8GAAoH,CACpH,sGAA4G,CAC5G,0IAAkJ,CAClJ,uBAAwB,CACxB,eACF,CACA,uCACE,kCACE,uBAAwB,CACxB,eACF,CACF,CACA,yCACE,wBACF,CACA,2CACE,UAAW,CACX,YAAc,CACd,iBAAkB,CAClB,cAAe,CACf,sCAAuC,CACvC,wBAAyB,CACzB,kBACF,CACA,8BACE,UAAW,CACX,WAAY,CACZ,wBAAyB,CACzB,QAAS,CACT,kBAAmB,CACnB,sHAA4H,CAC5H,8GAAoH,CACpH,sGAA4G,CAC5G,0IAAkJ,CAClJ,oBAAqB,CACrB,eACF,CACA,uCACE,8BACE,uBAAwB,CACxB,eACF,CACF,CACA,qCACE,wBACF,CACA,8BACE,UAAW,CACX,YAAc,CACd,iBAAkB,CAClB,cAAe,CACf,sCAAuC,CACvC,wBAAyB,CACzB,kBACF,CACA,qBACE,mBACF,CACA,2CACE,0CACF,CACA,uCACE,0CACF,CACA,eACE,iBACF,CACA,gGAGE,8CAAuD,CACvD,kDAA2D,CAC3D,gBACF,CACA,qBACE,iBAAkB,CAClB,KAAM,CACN,MAAO,CACP,SAAU,CACV,WAAY,CACZ,mBAAqB,CACrB,eAAgB,CAChB,gBAAiB,CACjB,sBAAuB,CACvB,kBAAmB,CACnB,mBAAoB,CACpB,+CAAgD,CAChD,4BAA6B,CACrB,oBAAqB,CAC7B,4EAAgF,CAChF,oEAAwE,CACxE,4DAAgE,CAChE,8FACF,CACA,uCACE,qBACE,uBAAwB,CACxB,eACF,CACF,CACA,oEAEE,mBACF,CAIA,0HAEE,iBACF,CACA,wGAEE,iBACF,CACA,kHAEE,iBACF,CACA,8FAEE,iBACF,CACA,8HACE,oBAAqB,CACrB,sBACF,CACA,oMAGE,oBAAqB,CACrB,sBACF,CACA,sGAEE,oBAAqB,CACrB,sBACF,CACA,4BACE,oBAAqB,CACrB,sBACF,CACA,gEACE,wCAA2C,CAC3C,0DACF,CACA,mLAIE,wCAA2C,CAC3C,kEAAsE,CAC9D,0DACV,CACA,sEACE,iBAAkB,CAClB,kBAAoB,CACpB,UAAW,CACX,YAAa,CACb,UAAW,CACX,kCAAmC,CACnC,qCACF,CACA,2MAIE,iBAAkB,CAClB,kBAAoB,CACpB,UAAW,CACX,YAAa,CACb,UAAW,CACX,kCAAmC,CACnC,qCACF,CACA,oDACE,wCAA2C,CAC3C,kEAAsE,CAC9D,0DACV,CACA,6CACE,mBAAsC,CAAtC,0CAAsC,CAAtC,oBAAsC,CAAtC,uCACF,CACA,+BACE,aACF,CACA,qCACE,uCACF,CACA,aACE,iBAAkB,CAClB,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,cAAe,CACnB,yBAA0B,CACtB,sBAAuB,CACnB,mBAAoB,CAC5B,UACF,CACA,iFAGE,iBAAkB,CAClB,kBAAmB,CACf,iBAAkB,CACd,aAAc,CACtB,QAAS,CACT,WACF,CACA,0GAGE,SACF,CACA,kBACE,iBAAkB,CAClB,SACF,CACA,wBACE,SACF,CACA,kBACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,wBAAyB,CACrB,qBAAsB,CAClB,kBAAmB,CAC3B,sBAAyB,CACzB,cAAe,CACf,eAAgB,CAChB,eAAgB,CAChB,0BAA2B,CAC3B,iBAAkB,CAClB,kBAAmB,CACnB,sCAAuC,CACvC,0DAA2D,CAC3D,qCACF,CACA,kHAIE,kBAAoB,CACpB,iBAAkB,CAClB,wCACF,CACA,kHAIE,oBAAuB,CACvB,iBAAmB,CACnB,wCACF,CACA,0DAEE,kBACF,CAQA,iqBAIE,yBAA0B,CAC1B,4BACF,CACA,0IACE,2CAA8C,CAC9C,wBAAyB,CACzB,2BACF,CACA,uHAEE,wBAAyB,CACzB,2BACF,CACA,gBACE,YAAa,CACb,UAAW,CACX,iBAAmB,CACnB,gBAAkB,CAClB,gCACF,CACA,eACE,iBAAkB,CAClB,QAAS,CACT,SAAU,CACV,YAAa,CACb,cAAe,CACf,oBAAuB,CACvB,gBAAkB,CAClB,iBAAmB,CACnB,UAAW,CACX,kCAAmC,CACnC,qCACF,CACA,8HAIE,aACF,CACA,0DACE,8CAA+C,CAC/C,kCAAoC,CACpC,yQAA2P,CAC3P,2BAA4B,CAC5B,wDAA2D,CAC3D,2DACF,CACA,sEACE,8CAA+C,CAC/C,+DAAmE,CAC3D,uDACV,CACA,0EACE,kCAAoC,CACpC,6EACF,CACA,wDACE,8CACF,CACA,4NACE,iRAAmQ,CACnQ,sBAAuB,CACvB,4DAA+D,CAC/D,qEACF,CACA,oEACE,8CAA+C,CAC/C,+DAAmE,CAC3D,uDACV,CACA,sEACE,2BACF,CACA,kEACE,8CACF,CACA,kFACE,2CACF,CACA,8EACE,+DAAmE,CAC3D,uDACV,CACA,sGACE,gCACF,CACA,qDACE,gBACF,CACA,kVAKE,SACF,CACA,kBACE,YAAa,CACb,UAAW,CACX,iBAAmB,CACnB,gBAAkB,CAClB,kCACF,CACA,iBACE,iBAAkB,CAClB,QAAS,CACT,SAAU,CACV,YAAa,CACb,cAAe,CACf,oBAAuB,CACvB,gBAAkB,CAClB,iBAAmB,CACnB,UAAW,CACX,iCAAkC,CAClC,qCACF,CACA,8IAIE,aACF,CACA,8DACE,gDAAiD,CACjD,kCAAoC,CACpC,qUAA4U,CAC5U,2BAA4B,CAC5B,wDAA2D,CAC3D,2DACF,CACA,0EACE,gDAAiD,CACjD,8DAAkE,CAC1D,sDACV,CACA,8EACE,kCAAoC,CACpC,6EACF,CACA,4DACE,gDACF,CACA,oOACE,6UAAoV,CACpV,sBAAuB,CACvB,4DAA+D,CAC/D,qEACF,CACA,wEACE,gDAAiD,CACjD,8DAAkE,CAC1D,sDACV,CACA,0EACE,2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kD,CAClD,wFAAyF,CACzF,2DAA4D,CAC5D,qCAAsC,CACtC,uDAA2D,CAC3D,6CAA8C,CAC9C,mDAAoD,CACpD,iDAAkD,CAClD,oCAAqC,CACrC,oCAAqC,CACrC,0DAA2D,CAC3D,iCAAkC,CAClC,oCAAqC,CACrC,kCAAmC,CACnC,mCAAoC,CACpC,qCAAsC,CACtC,iBAAkB,CAClB,iCAAkC,CAClC,YAAa,CACb,sCAAuC,CACvC,iEAAkE,CAClE,QAAS,CACT,sCAAuC,CACvC,8BAA+B,CAC/B,eAAgB,CAChB,eAAgB,CAChB,sCAAuC,CACvC,2BAA4B,CAC5B,4EAA6E,CAC7E,8CACF,CACA,+BACE,QAAS,CACT,MAAO,CACP,oCACF,CACA,qBACE,mBACF,CACA,qCACE,UAAW,CACX,MACF,CACA,mBACE,iBACF,CACA,mCACE,OAAQ,CACR,SACF,CACA,yBACE,wBACE,mBACF,CACA,wCACE,UAAW,CACX,MACF,CACA,sBACE,iBACF,CACA,sCACE,OAAQ,CACR,SACF,CACF,CACA,yBACE,wBACE,mBACF,CACA,wCACE,UAAW,CACX,MACF,CACA,sBACE,iBACF,CACA,sCACE,OAAQ,CACR,SACF,CACF,CACA,yBACE,wBACE,mBACF,CACA,wCACE,UAAW,CACX,MACF,CACA,sBACE,iBACF,CACA,sCACE,OAAQ,CACR,SACF,CACF,CACA,0BACE,wBACE,mBACF,CACA,wCACE,UAAW,CACX,MACF,CACA,sBACE,iBACF,CACA,sCACE,OAAQ,CACR,SACF,CACF,CACA,0BACE,yBACE,mBACF,CACA,yCACE,UAAW,CACX,MACF,CACA,uBACE,iBACF,CACA,uCACE,OAAQ,CACR,SACF,CACF,CACA,uCACE,QAAS,CACT,WAAY,CACZ,YAAa,CACb,uCACF,CACA,+BACE,oBAAqB,CACrB,kBAAoB,CACpB,qBAAuB,CACvB,UAAW,CACX,YAAa,CACb,mCAAqC,CACrC,wBAA0B,CAC1B,kCACF,CACA,qCACE,aACF,CACA,wCACE,KAAM,CACN,UAAW,CACX,SAAU,CACV,YAAa,CACb,qCACF,CACA,gCACE,oBAAqB,CACrB,kBAAoB,CACpB,qBAAuB,CACvB,UAAW,CACX,iCAAmC,CACnC,cAAe,CACf,oCAAsC,CACtC,sBACF,CACA,sCACE,aACF,CACA,gCACE,gBACF,CACA,0CACE,KAAM,CACN,UAAW,CACX,SAAU,CACV,YAAa,CACb,sCACF,CACA,kCACE,oBAAqB,CACrB,kBAAoB,CACpB,qBAAuB,CACvB,UAAW,CAGX,YAFF,CAIA,mCACE,oBAAqB,CACrB,mBAAqB,CACrB,qBAAuB,CACvB,UAAW,CACX,iCAAmC,CACnC,uBAAyB,CACzB,oCACF,CACA,wCACE,aACF,CACA,mCACE,gBACF,CACA,kBACE,QAAS,CACT,4CAA6C,CAC7C,eAAgB,CAChB,kDAAmD,CACnD,SACF,CACA,eACE,aAAc,CACd,UAAW,CACX,2EAA4E,CAC5E,UAAW,CACX,eAAgB,CAChB,mCAAoC,CACpC,kBAAmB,CACnB,oBAAqB,CACrB,kBAAmB,CACnB,4BAA6B,CAC7B,QAAS,CACT,qDACF,CACA,0CACE,yCAA0C,CAC1C,iDACF,CACA,4CACE,0CAA2C,CAC3C,oBAAqB,CACrB,kDACF,CACA,gDACE,4CAA6C,CAC7C,mBAAoB,CACpB,4BACF,CACA,oBACE,aACF,CACA,iBACE,aAAc,CACd,+EAAgF,CAChF,eAAgB,CAChB,iBAAmB,CACnB,qCAAsC,CACtC,kBACF,CACA,oBACE,aAAc,CACd,2EAA4E,CAC5E,mCACF,CACA,oBACE,2BAA4B,CAC5B,wBAAyB,CACzB,6DAA8D,CAE9D,gCAAiC,CACjC,mCAAoC,CACpC,2DAA4D,CAC5D,gDAAsD,CACtD,oCAAqC,CACrC,oCAAqC,CACrC,yCAA0C,CAC1C,kCACF,CACA,+BAEE,iBAAkB,CAClB,0BAA2B,CAC3B,0BAA2B,CAC3B,mBAAoB,CACpB,qBACF,CACA,yCAEE,iBAAkB,CAClB,kBAAmB,CACf,iBAAkB,CACd,aACV,CACA,kXAYE,SACF,CACA,aACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,cAAe,CACnB,sBAAuB,CACnB,mBAAoB,CAChB,0BACV,CACA,0BACE,UACF,CACA,WACE,qCACF,CACA,qFAEE,2CACF,CACA,qJAGE,yBAA0B,CAC1B,4BACF,CACA,6GAGE,wBAAyB,CACzB,2BACF,CACA,uBACE,sBAAwB,CACxB,qBACF,CACA,wGACE,aACF,CACA,yCACE,cACF,CACA,yEACE,qBAAuB,CACvB,oBACF,CACA,yEACE,oBAAsB,CACtB,mBACF,CACA,oBACE,2BAA4B,CAC5B,4BAA6B,CACzB,yBAA0B,CACtB,qBAAsB,CAC9B,uBAAwB,CACpB,oBAAqB,CACjB,sBAAuB,CAC/B,uBAAwB,CACpB,oBAAqB,CACjB,sBACV,CACA,wDAEE,UACF,CACA,4FAEE,0CACF,CACA,qHAEE,4BAA6B,CAC7B,2BACF,CACA,oFAEE,wBAAyB,CACzB,yBACF,CACA,KACE,4BAA6B,CAC7B,8BAA+B,CAE/B,wCAAyC,CACzC,oDAAqD,CACrD,sDAAuD,CACvD,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,cAAe,CACnB,cAAe,CACf,eAAgB,CAChB,eACF,CACA,UACE,aAAc,CACd,iEAAkE,CAClE,sCAAuC,CACvC,0CAA2C,CAC3C,8BAA+B,CAC/B,oBAAqB,CACrB,eAAgB,CAChB,QAAS,CACT,yGAA+G,CAC/G,iGACF,CACA,uCACE,UACE,uBAAwB,CACxB,eACF,CACF,CACA,gCACE,oCACF,CACA,wBACE,SAAU,CACV,oDAA0D,CAClD,4CACV,CACA,mBACE,uCAAwC,CACxC,mBAAoB,CACpB,cACF,CACA,UACE,iDAAkD,CAClD,iDAAkD,CAClD,mDAAoD,CACpD,0GAA2G,CAC3G,wDAAyD,CACzD,8CAA+C,CAC/C,sGAAuG,CACvG,mFACF,CACA,oBACE,sDAAyD,CACzD,wDAAyD,CACzD,uDAAwD,CACxD,wDACF,CACA,oDACE,iBAAkB,CAClB,uDACF,CACA,0DACE,uCAAwC,CACxC,4BAA6B,CAC7B,wBACF,CACA,8DAEE,0CAA2C,CAC3C,kDAAmD,CACnD,wDACF,CACA,yBACE,mDAAsD,CACtD,wBAAyB,CACzB,yBACF,CACA,WACE,oDAAqD,CACrD,qCAAsC,CACtC,qCACF,CACA,qBACE,+CACF,CACA,8BACE,uCAAwC,CACxC,4BAA6B,CAC7B,wBACF,CACA,uDAEE,2CAA4C,CAC5C,mDACF,CACA,eACE,2BAA4B,CAC5B,wCAAyC,CACzC,6DAA8D,CAC9D,+BACF,CACA,yBACE,eAAgB,CAChB,cAAe,CACf,oEACF,CACA,8DACE,gCACF,CACA,+DAEE,eAAgB,CAChB,+CAAgD,CAChD,gCACF,CACA,wCAEE,kBAAmB,CACf,iBAAkB,CACd,aAAc,CACtB,iBACF,CACA,kDAEE,yBAA0B,CACtB,YAAa,CACjB,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,iBACF,CACA,iEAEE,UACF,CACA,uBACE,YACF,CACA,qBACE,aACF,CACA,QACE,uBAAwB,CACxB,4BAA6B,CAC7B,yDAA2D,CAC3D,8DAAgE,CAChE,iEAAmE,CACnE,6DAA+D,CAC/D,qCAAsC,CACtC,iCAAkC,CAClC,mCAAoC,CACpC,4DAA8D,CAC9D,kEAAoE,CACpE,qCAAsC,CACtC,qCAAsC,CACtC,qCAAsC,CACtC,qCAAsC,CACtC,oRAA2Q,CAC3Q,wEAA0E,CAC1E,yDAA0D,CAC1D,uCAAwC,CACxC,2DAA4D,CAC5D,iBAAkB,CAIlB,kBAAmB,CACf,cAAe,CAOnB,6DACF,CACA,mKAbE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CAGb,wBAAyB,CACrB,qBAAsB,CAClB,kBAAmB,CAC3B,wBAAyB,CACrB,qBAAsB,CAClB,6BAqBV,CAlBA,2JAUE,qBAAsB,CAClB,iBAON,CACA,cACE,4CAA6C,CAC7C,+CAAgD,CAChD,8CAA+C,CAC/C,0CAA2C,CAC3C,kCAAmC,CACnC,oBAAqB,CACrB,kBACF,CACA,wCACE,wCACF,CACA,YACE,yBAA0B,CAC1B,8BAA+B,CAE/B,0CAA2C,CAC3C,sDAAuD,CACvD,4DAA6D,CAC7D,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,2BAA4B,CAC5B,4BAA6B,CACzB,yBAA0B,CACtB,qBAAsB,CAC9B,cAAe,CACf,eAAgB,CAChB,eACF,CACA,wDACE,mCACF,CACA,2BACE,eACF,CACA,aACE,iBAAmB,CACnB,oBAAsB,CACtB,4BACF,CACA,yDAGE,mCACF,CACA,iBACE,4BAA6B,CACzB,eAAgB,CACpB,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,wBAAyB,CACrB,qBAAsB,CAClB,kBACV,CACA,gBACE,6EAA8E,CAC9E,4CAA6C,CAC7C,aAAc,CACd,4BAA6B,CAC7B,4BAA6B,CAC7B,yEAA0E,CAC1E,oDAAqD,CACrD,sDAAuD,CACvD,8CACF,CACA,uCACE,gBACE,uBAAwB,CACxB,eACF,CACF,CACA,sBACE,oBACF,CACA,sBACE,oBAAqB,CACrB,SAAU,CACV,6DAA8D,CACtD,qDACV,CACA,qBACE,oBAAqB,CACrB,WAAY,CACZ,YAAa,CACb,qBAAsB,CACtB,iDAAkD,CAClD,2BAA4B,CAC5B,uBAA2B,CAC3B,oBACF,CACA,mBACE,uCAAyC,CACzC,eACF,CACA,yBACE,kBACE,oBAAqB,CACjB,gBAAiB,CACrB,sBAAuB,CACnB,mBAAoB,CAChB,0BACV,CACA,8BACE,6BAA8B,CAC9B,4BAA6B,CACzB,sBAAuB,CACnB,kBACV,CACA,6CACE,iBACF,CACA,wCACE,iDAAkD,CAClD,gDACF,CACA,qCACE,gBACF,CACA,mCACE,6BAA+B,CAC/B,6BAA+B,CAC/B,sBAAwB,CACxB,4BAA6B,CACzB,eACN,CACA,kCACE,YACF,CACA,6BACE,eAAgB,CAChB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,oBAAsB,CACtB,qBAAuB,CACvB,4BAA8B,CAC9B,sCAAwC,CACxC,kBAAoB,CACpB,gCAAkC,CAC1B,wBAA0B,CAClC,uBAAwB,CACxB,eACF,CACA,+CACE,YACF,CACA,6CACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,SAAU,CACV,kBACF,CACF,CACA,yBACE,kBACE,oBAAqB,CACjB,gBAAiB,CACrB,sBAAuB,CACnB,mBAAoB,CAChB,0BACV,CACA,8BACE,6BAA8B,CAC9B,4BAA6B,CACzB,sBAAuB,CACnB,kBACV,CACA,6CACE,iBACF,CACA,wCACE,iDAAkD,CAClD,gDACF,CACA,qCACE,gBACF,CACA,mCACE,6BAA+B,CAC/B,6BAA+B,CAC/B,sBAAwB,CACxB,4BAA6B,CACzB,eACN,CACA,kCACE,YACF,CACA,6BACE,eAAgB,CAChB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,oBAAsB,CACtB,qBAAuB,CACvB,4BAA8B,CAC9B,sCAAwC,CACxC,kBAAoB,CACpB,gCAAkC,CAC1B,wBAA0B,CAClC,uBAAwB,CACxB,eACF,CACA,+CACE,YACF,CACA,6CACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,SAAU,CACV,kBACF,CACF,CACA,yBACE,kBACE,oBAAqB,CACjB,gBAAiB,CACrB,sBAAuB,CACnB,mBAAoB,CAChB,0BACV,CACA,8BACE,6BAA8B,CAC9B,4BAA6B,CACzB,sBAAuB,CACnB,kBACV,CACA,6CACE,iBACF,CACA,wCACE,iDAAkD,CAClD,gDACF,CACA,qCACE,gBACF,CACA,mCACE,6BAA+B,CAC/B,6BAA+B,CAC/B,sBAAwB,CACxB,4BAA6B,CACzB,eACN,CACA,kCACE,YACF,CACA,6BACE,eAAgB,CAChB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,oBAAsB,CACtB,qBAAuB,CACvB,4BAA8B,CAC9B,sCAAwC,CACxC,kBAAoB,CACpB,gCAAkC,CAC1B,wBAA0B,CAClC,uBAAwB,CACxB,eACF,CACA,+CACE,YACF,CACA,6CACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,SAAU,CACV,kBACF,CACF,CACA,0BACE,kBACE,oBAAqB,CACjB,gBAAiB,CACrB,sBAAuB,CACnB,mBAAoB,CAChB,0BACV,CACA,8BACE,6BAA8B,CAC9B,4BAA6B,CACzB,sBAAuB,CACnB,kBACV,CACA,6CACE,iBACF,CACA,wCACE,iDAAkD,CAClD,gDACF,CACA,qCACE,gBACF,CACA,mCACE,6BAA+B,CAC/B,6BAA+B,CAC/B,sBAAwB,CACxB,4BAA6B,CACzB,eACN,CACA,kCACE,YACF,CACA,6BACE,eAAgB,CAChB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,oBAAsB,CACtB,qBAAuB,CACvB,4BAA8B,CAC9B,sCAAwC,CACxC,kBAAoB,CACpB,gCAAkC,CAC1B,wBAA0B,CAClC,uBAAwB,CACxB,eACF,CACA,+CACE,YACF,CACA,6CACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,SAAU,CACV,kBACF,CACF,CACA,0BACE,mBACE,oBAAqB,CACjB,gBAAiB,CACrB,sBAAuB,CACnB,mBAAoB,CAChB,0BACV,CACA,+BACE,6BAA8B,CAC9B,4BAA6B,CACzB,sBAAuB,CACnB,kBACV,CACA,8CACE,iBACF,CACA,yCACE,iDAAkD,CAClD,gDACF,CACA,sCACE,gBACF,CACA,oCACE,6BAA+B,CAC/B,6BAA+B,CAC/B,sBAAwB,CACxB,4BAA6B,CACzB,eACN,CACA,mCACE,YACF,CACA,8BACE,eAAgB,CAChB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,oBAAsB,CACtB,qBAAuB,CACvB,4BAA8B,CAC9B,sCAAwC,CACxC,kBAAoB,CACpB,gCAAkC,CAC1B,wBAA0B,CAClC,uBAAwB,CACxB,eACF,CACA,gDACE,YACF,CACA,8CACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,SAAU,CACV,kBACF,CACF,CACA,eACE,oBAAqB,CACjB,gBAAiB,CACrB,sBAAuB,CACnB,mBAAoB,CAChB,0BACV,CACA,2BACE,6BAA8B,CAC9B,4BAA6B,CACzB,sBAAuB,CACnB,kBACV,CACA,0CACE,iBACF,CACA,qCACE,iDAAkD,CAClD,gDACF,CACA,kCACE,gBACF,CACA,gCACE,6BAA+B,CAC/B,6BAA+B,CAC/B,sBAAwB,CACxB,4BAA6B,CACzB,eACN,CACA,+BACE,YACF,CACA,0BACE,eAAgB,CAChB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,oBAAsB,CACtB,qBAAuB,CACvB,4BAA8B,CAC9B,sCAAwC,CACxC,kBAAoB,CACpB,gCAAkC,CAC1B,wBAA0B,CAClC,uBAAwB,CACxB,eACF,CACA,4CACE,YACF,CACA,0CACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,SAAU,CACV,kBACF,CACA,yCAEE,sCAA4C,CAC5C,4CAAkD,CAClD,+CAAqD,CACrD,6BAA8B,CAC9B,4BAA6B,CAC7B,kCAAmC,CACnC,oDAEF,CACA,mFAFE,uRAIF,CACA,MACE,uBAAwB,CACxB,uBAAwB,CACxB,+BAAgC,CAGhC,6CAA8C,CAC9C,yDAA0D,CAC1D,+CAAgD,CAEhD,oFAAuF,CACvF,8BAA+B,CAC/B,4BAA6B,CAC7B,oDAAsD,CAItD,8BAA+B,CAC/B,kCAAmC,CACnC,8BAA+B,CAC/B,iBAAkB,CAClB,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,2BAA4B,CAC5B,4BAA6B,CACzB,yBAA0B,CACtB,qBAAsB,CAC9B,WAAY,CACZ,4BAA6B,CAC7B,0BAA2B,CAC3B,oBAAqB,CACrB,kCAAmC,CACnC,0BAA2B,CAC3B,oEAAqE,CACrE,0CACF,CACA,SACE,cAAe,CACf,aACF,CACA,kBACE,kBAAmB,CACnB,qBACF,CACA,8BACE,kBAAmB,CACnB,yDAA0D,CAC1D,0DACF,CACA,6BACE,qBAAsB,CACtB,6DAA8D,CAC9D,4DACF,CACA,8DAEE,YACF,CACA,WACE,kBAAmB,CACf,iBAAkB,CACd,aAAc,CACtB,uDAAwD,CACxD,0BACF,CACA,YACE,2CAA4C,CAC5C,gCACF,CACA,eACE,mDAAsD,CAEtD,mCACF,CACA,qCAHE,eAKF,CACA,sBACE,mCACF,CACA,aACE,iEAAkE,CAClE,eAAgB,CAChB,8BAA+B,CAC/B,sCAAuC,CACvC,2EACF,CACA,yBACE,uFACF,CACA,aACE,iEAAkE,CAClE,8BAA+B,CAC/B,sCAAuC,CACvC,wEACF,CACA,wBACE,uFACF,CACA,kBACE,oDAAuD,CACvD,mDAAsD,CACtD,mDAAsD,CACtD,eACF,CACA,mCACE,kCAAmC,CACnC,qCACF,CACA,mBACE,oDAAuD,CACvD,mDACF,CACA,kBACE,iBAAkB,CAClB,KAAM,CACN,OAAQ,CACR,QAAS,CACT,MAAO,CACP,0CAA2C,CAC3C,gDACF,CACA,yCAGE,UACF,CACA,wBAEE,yDAA0D,CAC1D,0DACF,CACA,2BAEE,6DAA8D,CAC9D,4DACF,CACA,kBACE,yCACF,CACA,yBACE,YACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,6BAA8B,CAC9B,4BAA6B,CACzB,sBAAuB,CACnB,kBACV,CACA,kBACE,kBAAmB,CACf,eAAgB,CACZ,WAAY,CACpB,eACF,CACA,wBACE,aAAc,CACd,aACF,CACA,mCACE,yBAA0B,CAC1B,4BACF,CACA,iGAEE,yBACF,CACA,oGAEE,4BACF,CACA,oCACE,wBAAyB,CACzB,2BACF,CACA,mGAEE,wBACF,CACA,sGAEE,2BACF,CACF,CACA,WACE,yCAA0C,CAC1C,mCAAoC,CACpC,yKAA8K,CAC9K,kDAAmD,CACnD,kDAAmD,CACnD,oDAAqD,CACrD,yFAA4F,CAC5F,oCAAqC,CACrC,iCAAkC,CAClC,6CAA8C,CAC9C,4CAA6C,CAC7C,8SAAwS,CACxS,qCAAsC,CACtC,iDAAkD,CAClD,6DAA8D,CAC9D,qTAA+S,CAC/S,6CAA8C,CAC9C,uEAA2E,CAC3E,qCAAsC,CACtC,kCAAmC,CACnC,2DAA4D,CAC5D,oDACF,CACA,kBACE,iBAAkB,CAClB,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,wBAAyB,CACrB,qBAAsB,CAClB,kBAAmB,CAC3B,UAAW,CACX,2EAA4E,CAC5E,cAAe,CACf,mCAAoC,CACpC,eAAgB,CAChB,2CAA4C,CAC5C,QAAS,CACT,eAAgB,CAChB,oBAAqB,CACrB,iDAAkD,CAClD,yCACF,CACA,uCACE,kBACE,uBAAwB,CACxB,eACF,CACF,CACA,kCACE,sCAAuC,CACvC,8CAA+C,CAC/C,uGAA0G,CAClG,+FACV,CACA,wCACE,oDAAqD,CACrD,wDAAyD,CACjD,gDACV,CACA,wBACE,mBAAoB,CAChB,aAAc,CAClB,wCAAyC,CACzC,yCAA0C,CAC1C,gBAAiB,CACjB,UAAW,CACX,6CAA8C,CAC9C,2BAA4B,CAC5B,kDAAmD,CACnD,0DAA2D,CAC3D,kDACF,CACA,uCACE,wBACE,uBAAwB,CACxB,eACF,CACF,CACA,wBACE,SACF,CACA,wBACE,SAAU,CACV,uDAAwD,CACxD,SAAU,CACV,2DAA4D,CACpD,mDACV,CACA,kBACE,eACF,CACA,gBACE,+BAAgC,CAChC,uCAAwC,CACxC,8EACF,CACA,8BACE,wDAAyD,CACzD,yDACF,CACA,gDACE,8DAA+D,CAC/D,+DACF,CACA,oCACE,YACF,CACA,6BACE,4DAA6D,CAC7D,2DACF,CACA,yDACE,kEAAmE,CACnE,iEACF,CACA,iDACE,4DAA6D,CAC7D,2DACF,CACA,gBACE,6EACF,CACA,qCACE,cACF,CACA,iCACE,cAAe,CACf,aAAc,CACd,eACF,CACA,6CACE,YACF,CACA,4CACE,eACF,CACA,gHACE,eACF,CACA,6CACE,8SAAwS,CACxS,qTACF,CACA,YACE,2BAA4B,CAC5B,2BAA4B,CAC5B,kCAAmC,CAGnC,uDAAwD,CACxD,qCAAsC,CACtC,2DAA4D,CAC5D,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,cAAe,CACnB,qEAAsE,CACtE,gDAAiD,CACjD,wCAAyC,CACzC,eAAgB,CAChB,wCAAyC,CACzC,gDACF,CACA,kCACE,gDACF,CACA,yCACE,UAAW,CACX,iDAAkD,CAClD,wCAAyC,CACzC,wCACF,CACA,wBACE,4C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D,4CACF,CACA,uCACE,cACE,uBAAwB,CACxB,eACF,CACF,CACA,sBACE,qKAAqM,CACrM,mEACF,CACA,4BACE,gBACF,CACA,0CACE,UACF,CACA,uBACE,yDAA0D,CAClD,iDACV,CACA,uCACE,uBACE,sBAAuB,CACf,cACV,CACF,CACA,YACE,0CAA2C,CAC3C,oCAAqC,CACrC,mDAAoD,CACpD,mDAAoD,CACpD,qDAAsD,CACtD,mCAAoC,CACpC,qCAAsC,CACtC,sDAAuD,CACvD,2DAA4D,CAC5D,qDAAsD,CACtD,wDAAyD,CACzD,uDAAwD,CACxD,wDAAyD,CACzD,6CAA8C,CAC9C,iCAAkC,CAClC,iCAAkC,CAClC,2CAA4C,CAC5C,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,2BAA4B,CAC5B,4BAA6B,CACzB,yBAA0B,CACtB,qBAAsB,CAC9B,cAAe,CACf,eAAgB,CAChB,gDACF,CACA,qBACE,oBAAqB,CACrB,qBACF,CACA,6CACE,kCAAoC,CACpC,yBACF,CACA,wBACE,UAAW,CACX,uCAAwC,CACxC,kBACF,CACA,4DACE,SAAU,CACV,6CAA8C,CAC9C,oBAAqB,CACrB,qDACF,CACA,+BACE,8CAA+C,CAC/C,sDACF,CACA,iBACE,iBAAkB,CAClB,aAAc,CACd,+EAAgF,CAChF,gCAAiC,CACjC,oBAAqB,CACrB,wCAAyC,CACzC,gFACF,CACA,6BACE,8BAA+B,CAC/B,+BACF,CACA,4BACE,kCAAmC,CACnC,iCACF,CACA,oDACE,yCAA0C,CAC1C,mBAAoB,CACpB,iDACF,CACA,wBACE,SAAU,CACV,uCAAwC,CACxC,+CAAgD,CAChD,qDACF,CACA,kCACE,kBACF,CACA,yCACE,qDAAwD,CACxD,kDACF,CACA,uBACE,6BAA8B,CAC9B,4BAA6B,CACzB,sBAAuB,CACnB,kBACV,CACA,qEACE,4DAA6D,CAC7D,yBACF,CACA,qEACE,0DAA2D,CAC3D,2BACF,CACA,+CACE,YACF,CACA,yDACE,kDAAmD,CACnD,mBACF,CACA,gEACE,sDAAyD,CACzD,mDACF,CACA,yBACE,0BACE,6BAA8B,CAC9B,4BAA6B,CACzB,sBAAuB,CACnB,kBACV,CACA,wEACE,4DAA6D,CAC7D,yBACF,CACA,wEACE,0DAA2D,CAC3D,2BACF,CACA,kDACE,YACF,CACA,4DACE,kDAAmD,CACnD,mBACF,CACA,mEACE,sDAAyD,CACzD,mDACF,CACF,CACA,yBACE,0BACE,6BAA8B,CAC9B,4BAA6B,CACzB,sBAAuB,CACnB,kBACV,CACA,wEACE,4DAA6D,CAC7D,yBACF,CACA,wEACE,0DAA2D,CAC3D,2BACF,CACA,kDACE,YACF,CACA,4DACE,kDAAmD,CACnD,mBACF,CACA,mEACE,sDAAyD,CACzD,mDACF,CACF,CACA,yBACE,0BACE,6BAA8B,CAC9B,4BAA6B,CACzB,sBAAuB,CACnB,kBACV,CACA,wEACE,4DAA6D,CAC7D,yBACF,CACA,wEACE,0DAA2D,CAC3D,2BACF,CACA,kDACE,YACF,CACA,4DACE,kDAAmD,CACnD,mBACF,CACA,mEACE,sDAAyD,CACzD,mDACF,CACF,CACA,0BACE,0BACE,6BAA8B,CAC9B,4BAA6B,CACzB,sBAAuB,CACnB,kBACV,CACA,wEACE,4DAA6D,CAC7D,yBACF,CACA,wEACE,0DAA2D,CAC3D,2BACF,CACA,kDACE,YACF,CACA,4DACE,kDAAmD,CACnD,mBACF,CACA,mEACE,sDAAyD,CACzD,mDACF,CACF,CACA,0BACE,2BACE,6BAA8B,CAC9B,4BAA6B,CACzB,sBAAuB,CACnB,kBACV,CACA,yEACE,4DAA6D,CAC7D,yBACF,CACA,yEACE,0DAA2D,CAC3D,2BACF,CACA,mDACE,YACF,CACA,6DACE,kDAAmD,CACnD,mBACF,CACA,oEACE,sDAAyD,CACzD,mDACF,CACF,CACA,kBACE,eACF,CACA,mCACE,mBAAmD,CAAnD,qDAAmD,CAAnD,oBAAmD,CAAnD,kBACF,CACA,8CACE,qBACF,CACA,yBACE,qDAAsD,CACtD,8CAA+C,CAC/C,4DAA6D,CAC7D,2DAA4D,CAC5D,+DAAgE,CAChE,4DAA6D,CAC7D,gEAAiE,CACj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C/B,YAAa,CACb,UAAW,CACX,WAAY,CACZ,iBAAkB,CAClB,eAAgB,CAChB,SACF,CACA,cACE,iBAAkB,CAClB,UAAW,CACX,6BAA8B,CAC9B,mBACF,CACA,0BACE,iDAAmD,CACnD,yCAA2C,CAC3C,iCAAmC,CACnC,gEAAoE,CACpE,mCAAsC,CAC9B,2BACV,CACA,uCACE,0BACE,uBAAwB,CACxB,eACF,CACF,CACA,0BACE,sBAAuB,CACf,cACV,CACA,kCACE,6BAA8B,CACtB,qBACV,CACA,yBACE,4CACF,CACA,wCACE,eAAgB,CAChB,eACF,CACA,qCACE,eACF,CACA,uBAIE,wBAAyB,CACrB,qBAAsB,CAClB,kBAAmB,CAC3B,gDACF,CACA,sCARE,mBAAoB,CACpB,mBAAoB,CACpB,YAuBF,CAjBA,eACE,iBAAkB,CAIlB,2BAA4B,CAC5B,4BAA6B,CACzB,yBAA0B,CACtB,qBAAsB,CAC9B,UAAW,CACX,2BAA4B,CAC5B,mBAAoB,CACpB,mCAAoC,CACpC,2BAA4B,CAC5B,sEAAuE,CACvE,2CAA4C,CAC5C,SACF,CACA,gBACE,yBAA0B,CAC1B,qBAAsB,CACtB,yBAA0B,CAC1B,cAAe,CACf,KAAM,CACN,MAAO,CACP,iCAAkC,CAClC,WAAY,CACZ,YAAa,CACb,sCACF,CACA,qBACE,SACF,CACA,qBACE,kCACF,CACA,cACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,mBAAoB,CAChB,aAAc,CAClB,wBAAyB,CACrB,qBAAsB,CAClB,kBAAmB,CAC3B,wBAAyB,CACrB,qBAAsB,CAClB,6BAA8B,CACtC,sCAAuC,CACvC,2FAA4F,CAC5F,0DAA2D,CAC3D,2DACF,CACA,yBACE,6FAAkG,CAClG,+IACF,CACA,aACE,eAAgB,CAChB,6CACF,CACA,YACE,iBAAkB,CAClB,kBAAmB,CACf,iBAAkB,CACd,aAAc,CACtB,+BACF,CACA,cACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,mBAAoB,CAChB,aAAc,CAClB,kBAAmB,CACf,cAAe,CACnB,wBAAyB,CACrB,qBAAsB,CAClB,kBAAmB,CAC3B,oBAAqB,CACjB,iBAAkB,CACd,wBAAyB,CACjC,sEAAyE,CACzE,0CAA2C,CAC3C,wFAAyF,CACzF,8DAA+D,CAC/D,6DACF,CACA,gBACE,2CACF,CACA,yBACE,OACE,yBAA0B,CAC1B,oDACF,CACA,cACE,+BAAgC,CAChC,iBAAkB,CAClB,gBACF,CACA,UACE,sBACF,CACF,CACA,yBACE,oBAEE,sBACF,CACF,CACA,0BACE,UACE,uBACF,CACF,CACA,kBACE,WAAY,CACZ,cAAe,CACf,WAAY,CACZ,QACF,CACA,iCACE,WAAY,CACZ,QAAS,CACT,eACF,CACA,gEAEE,eACF,CACA,8BACE,eACF,CACA,4BACE,0BACE,WAAY,CACZ,cAAe,CACf,WAAY,CACZ,QACF,CACA,yCACE,WAAY,CACZ,QAAS,CACT,eACF,CACA,gFAEE,eACF,CACA,sCACE,eACF,CACF,CACA,4BACE,0BACE,WAAY,CACZ,cAAe,CACf,WAAY,CACZ,QACF,CACA,yCACE,WAAY,CACZ,QAAS,CACT,eACF,CACA,gFAEE,eACF,CACA,sCACE,eACF,CACF,CACA,4BACE,0BACE,WAAY,CACZ,cAAe,CACf,WAAY,CACZ,QACF,CACA,yCACE,WAAY,CACZ,QAAS,CACT,eACF,CACA,gFAEE,eACF,CACA,sCACE,eACF,CACF,CACA,6BACE,0BACE,WAAY,CACZ,cAAe,CACf,WAAY,CACZ,QACF,CACA,yCACE,WAAY,CACZ,QAAS,CACT,eACF,CACA,gFAEE,eACF,CACA,sCACE,eACF,CACF,CACA,6BACE,2BACE,WAAY,CACZ,cAAe,CACf,WAAY,CACZ,QACF,CACA,0CACE,WAAY,CACZ,QAAS,CACT,eACF,CACA,kFAEE,eACF,CACA,uCACE,eACF,CACF,CACA,SACE,wBAAyB,CACzB,4BAA6B,CAC7B,6BAA8B,CAC9B,8BAA+B,CAE/B,+BAAgC,CAChC,oCAAqC,CACrC,wCAAyC,CACzC,kDAAmD,CACnD,wBAAyB,CACzB,+BAAgC,CAChC,gCAAiC,CACjC,gCAAiC,CACjC,aAAc,CACd,+BAAgC,CAChC,qCAAsC,CACtC,iBAAkB,CAClB,eAAgB,CAChB,eAAgB,CAChB,eAAgB,CAChB,gBAAiB,CACjB,oBAAqB,CACrB,gBAAiB,CACjB,mBAAoB,CACpB,qBAAsB,CACtB,iBAAkB,CAClB,kBAAmB,CACnB,mBAAoB,CACpB,eAAgB,CAChB,qCAAsC,CACtC,oBAAqB,CACrB,SACF,CACA,cACE,iCACF,CACA,wBACE,aAAc,CACd,mCAAoC,CACpC,qCACF,CACA,+BACE,iBAAkB,CAClB,UAAW,CACX,wBAAyB,CACzB,kBACF,CACA,2FACE,8CACF,CACA,yGACE,QAAS,CACT,yDAAwF,CAAxF,qBAAwF,CAAxF,0DAAwF,CAAxF,+CAAwF,CACxF,qCACF,CAEA,6FACE,4CAA+C,CAC/C,oCAAqC,CACrC,oCACF,CACA,2GACE,UAAW,CACX,mBAAkI,CAAlI,2DAAkI,CAAlI,iDAAkI,CAAlI,wDAAkI,CAClI,uCACF,CAEA,iGACE,2CACF,CACA,+GACE,WAAY,CACZ,yDAAwF,CAAxF,kDAAwF,CAAxF,0DAAwF,CAAxF,kBAAwF,CACxF,wCACF,CAEA,8FACE,6CAAgD,CAChD,oCAAqC,CACrC,oCACF,CACA,4GACE,SAAU,CACV,gDAAkI,CAAlI,2DAAkI,CAAlI,oBAAkI,CAAlI,wDAAkI,CAClI,sCACF,CAEA,eACE,qCAAsC,CACtC,+DAAgE,CAChE,6BAA8B,CAC9B,iBAAkB,CAClB,qCAAsC,CACtC,6CACF,CACA,SACE,wBAAyB,CACzB,4BAA6B,CAC7B,+BAAgC,CAChC,iCAAkC,CAClC,gDAAiD,CACjD,4DAA6D,CAC7D,qDAAsD,CACtD,0FAA2F,CAC3F,sDAA0D,CAC1D,kCAAmC,CACnC,oCAAqC,CACrC,kCAAmC,CACnC,iCAAkC,CAClC,6CAA8C,CAC9C,gCAAiC,CACjC,gCAAiC,CACjC,4CAA6C,CAC7C,6BAA8B,CAC9B,gCAAiC,CACjC,wDAAyD,CACzD,gCAAiC,CACjC,aAAc,CACd,qCAAsC,CACtC,qCAAsC,CACtC,iBAAkB,CAClB,eAAgB,CAChB,eAAgB,CAChB,eAAgB,CAChB,gBAAiB,CACjB,oBAAqB,CACrB,gBAAiB,CACjB,mBAAoB,CACpB,qBAAsB,CACtB,iBAAkB,CAClB,kBAAmB,CACnB,mBAAoB,CACpB,eAAgB,CAChB,qCAAsC,CACtC,oBAAqB,CACrB,qCAAsC,CACtC,2BAA4B,CAC5B,0EAA2E,CAC3E,6CACF,CACA,wBACE,aAAc,CACd,mCAAoC,CACpC,qCACF,CACA,6DACE,iBAAkB,CAClB,aAAc,CACd,UAAW,CAGX,0BACF,CACA,2FACE,+EACF,CACA,gNACE,yDAAwF,CAAxF,qBAAwF,CAAxF,0DAAwF,CAAxF,+CACF,CACA,yGACE,QAAS,CACT,+CACF,CACA,uGACE,qCAAsC,CACtC,qCACF,CAEA,6FACE,6EAAkF,CAClF,oCAAqC,CACrC,oCACF,CACA,oNACE,mBAAkI,CAAlI,2DAAkI,CAAlI,iDAAkI,CAAlI,wDACF,CACA,2GACE,MAAO,CACP,iDACF,CACA,yGACE,mCAAoC,CACpC,uCACF,CAEA,iGACE,4EACF,CACA,4NACE,yDAAwF,CAAxF,kDAAwF,CAAxF,0DAAwF,CAAxF,kBACF,CACA,+GACE,KAAM,CACN,kDACF,CACA,6GACE,kCAAmC,CACnC,wCACF,CACA,iHACE,iBAAkB,CAClB,KAAM,CACN,QAAS,CACT,aAAc,CACd,mCAAoC,CACpC,oDAAuD,CACvD,UAAW,CACX,8EACF,CAEA,8FACE,8EAAmF,CACnF,oCAAqC,CACrC,oCACF,CACA,sNACE,gDAAkI,CAAlI,2DAAkI,CAAlI,oBAAkI,CAAlI,wDACF,CACA,4GACE,OAAQ,CACR,gDACF,CACA,0GACE,oCAAqC,CACrC,sCACF,CAEA,gBACE,6EAA8E,CAC9E,eAAgB,CAChB,4CAA6C,CAC7C,oCAAqC,CACrC,4CAA6C,CAC7C,iFAAkF,CAClF,4DAA6D,CAC7D,6DACF,CACA,sBACE,YACF,CACA,cACE,yEAA0E,CAC1E,kCACF,CACA,UACE,iBACF,CACA,wBACE,sBAAuB,CACnB,kBACN,CACA,gBACE,iBAAkB,CAClB,UAAW,CACX,eACF,CACA,sBACE,aAAc,CACd,UAAW,CACX,UACF,CACA,eACE,iBAAkB,CAClB,YAAa,CACb,UAAW,CACX,UAAW,CACX,kBAAmB,CACnB,kCAAmC,CACnC,0BAA2B,CAC3B,oDAAsD,CACtD,4CAA8C,CAC9C,oCAAsC,CACtC,sEACF,CACA,uCACE,eACE,uBAAwB,CACxB,eACF,CACF,CACA,8DAGE,aACF,CACA,wEAEE,kCAAmC,CAC3B,0BACV,CACA,wEAEE,mCAAoC,CAC5B,2BACV,CACA,8BACE,SAAU,CACV,mCAAoC,CACpC,2BAA4B,CAC5B,sBAAuB,CACf,cACV,CACA,iJAGE,SAAU,CACV,SACF,CACA,oFAEE,SAAU,CACV,SAAU,CACV,iCAAmC,CACnC,yBACF,CACA,uCACE,oFAEE,uBAAwB,CACxB,eACF,CACF,CACA,8CAEE,iBAAkB,CAClB,KAAM,CACN,QAAS,CACT,SAAU,CACV,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,wBAAyB,CACrB,qBAAsB,CAClB,kBAAmB,CAC3B,uBAAwB,CACpB,oBAAqB,CACjB,sBAAuB,CAC/B,SAAU,CACV,SAAU,CACV,UAAW,CACX,iBAAkB,CAClB,eAAgB,CAChB,QAAS,CACT,UAAY,CACZ,oCAAsC,CACtC,4BACF,CACA,uCACE,8CAEE,uBAAwB,CACxB,eACF,CACF,CACA,oHAGE,UAAW,CACX,oBAAqB,CACrB,SAAU,CACV,UACF,CACA,uBACE,MACF,CACA,uBACE,OACF,CACA,wDAEE,oBAAqB,CACrB,UAAW,CACX,WAAY,CACZ,2BAA4B,CAC5B,uBAAwB,CACxB,yBACF,CASA,4BACE,+QACF,CACA,4BACE,gRACF,CACA,qBACE,iBAAkB,CAClB,OAAQ,CACR,QAAS,CACT,MAAO,CACP,SAAU,CACV,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,uBAAwB,CACpB,oBAAqB,CACjB,sBAAuB,CAC/B,SAAU,CACV,gBAAiB,CACjB,kBAAmB,CACnB,eACF,CACA,sCACE,8BAA+B,CACvB,sBAAuB,CAC/B,kBAAmB,CACf,iBAAkB,CACd,aAAc,CACtB,UAAW,CACX,UAAW,CACX,SAAU,CACV,gBAAiB,CACjB,eAAgB,CAChB,kBAAmB,CACnB,cAAe,CACf,qBAAsB,CACtB,2BAA4B,CAC5B,QAAS,CACT,iCAAkC,CAClC,oCAAqC,CACrC,UAAY,CACZ,mCAAqC,CACrC,2BACF,CACA,uCACE,sCACE,uBAAwB,CACxB,eACF,CACF,CACA,6BACE,SACF,CACA,kBACE,iBAAkB,CAClB,SAAU,CACV,cAAe,CACf,QAAS,CACT,mBAAoB,CACpB,sBAAuB,CACvB,UAAW,CACX,iBACF,CACA,sFAEE,uCAAwC,CAChC,+BACV,CACA,qDACE,qBACF,CACA,iCACE,UACF,CACA,0OAGE,uCAAwC,CAChC,+BACV,CACA,yIACE,qBACF,CACA,iGACE,UACF,CACA,8BAEE,oBAAqB,CACrB,6BAA8B,CAC9B,+BAAgC,CAChC,+CAAgD,CAChD,iBAAkB,CAClB,oGAAqG,CAC7F,4FACV,CACA,kCACE,GACE,+BAAkD,CAC1C,uBACV,CACF,CACA,0BACE,GACE,+BAAkD,CAC1C,uBACV,CACF,CACA,gBACE,uBAAwB,CACxB,wBAAyB,CACzB,oCAAqC,CACrC,gCAAiC,CACjC,kCAAmC,CACnC,0CAA2C,CAE3C,2CAA+B,CAA/B,8BACF,CACA,mBACE,uBAAwB,CACxB,wBAAyB,CACzB,+BACF,CACA,gCACE,GACE,0BAA2B,CACnB,kBACV,CACA,IACE,SAAU,CACV,sBAAuB,CACf,cACV,CACF,CACA,wBACE,GACE,0BAA2B,CACnB,kBACV,CACA,IACE,SAAU,CACV,sBAAuB,CACf,cACV,CACF,CACA,cACE,uBAAwB,CACxB,wBAAyB,CACzB,oCAAqC,CACrC,kCAAmC,CACnC,wCAAyC,CACzC,6BAA8B,CAC9B,SACF,CACA,iBACE,uBAAwB,CACxB,wBACF,CACA,uCACE,8BAEE,iCACF,CACF,CACA,kFACE,0BAA2B,CAC3B,0BAA2B,CAC3B,0BAA2B,CAC3B,6BAA8B,CAC9B,6BAA8B,CAC9B,yCAA0C,CAC1C,mCAAoC,CACpC,kDAAmD,CACnD,8DAA+D,CAC/D,8DAAkE,CAClE,oDAAqD,CACrD,oCACF,CACA,4BACE,cACE,cAAe,CACf,QAAS,CACT,kCAAmC,CACnC,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,2BAA4B,CAC5B,4BAA6B,CACzB,yBAA0B,CACtB,qBAAsB,CAC9B,cAAe,CACf,+BAAgC,CAChC,iBAAkB,CAClB,uCAAwC,CACxC,2BAA4B,CAC5B,SAAU,CACV,iDAAkD,CAClD,yCACF,CACF,CACA,gEACE,cACE,uBAAwB,CACxB,eACF,CACF,CACA,4BACE,8BACE,KAAM,CACN,MAAO,CACP,+BAAgC,CAChC,oFAAqF,CACrF,mCAAoC,CAC5B,2BACV,CACA,4BACE,KAAM,CACN,OAAQ,CACR,+BAAgC,CAChC,mFAAoF,CACpF,kCAAmC,CAC3B,0BACV,CACA,4BACE,KAAM,CAKN,qFAAsF,CACtF,mCAAoC,CAC5B,2BACV,CACA,2DARE,OAAQ,CACR,MAAO,CACP,iCAAkC,CAClC,eAaF,CARA,+BAKE,kFAAmF,CACnF,kCAAmC,CAC3B,0BACV,CACA,sDACE,sBAAuB,CACf,cACV,CACA,8DACE,kBACF,CACF,CACA,yBACE,cACE,0BAA2B,CAC3B,6BAA8B,CAC9B,sCACF,CACA,gCACE,YACF,CACA,8BACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,SAAU,CACV,kBAAmB,CACnB,sCACF,CACF,CACA,4BACE,cACE,cAAe,CACf,QAAS,CACT,kCAAmC,CACnC,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,2BAA4B,CAC5B,4BAA6B,CACzB,yBAA0B,CACtB,qBAAsB,CAC9B,cAAe,CACf,+BAAgC,CAChC,iBAAkB,CAClB,uCAAwC,CACxC,2BAA4B,CAC5B,SAAU,CACV,iDAAkD,CAClD,yCACF,CACF,CACA,gEACE,cACE,uBAAwB,CACxB,eACF,CACF,CACA,4BACE,8BACE,KAAM,CACN,MAAO,CACP,+BAAgC,CAChC,oFAAqF,CACrF,mCAAoC,CAC5B,2BACV,CACA,4BACE,KAAM,CACN,OAAQ,CACR,+BAAgC,CAChC,mFAAoF,CACpF,kCAAmC,CAC3B,0BACV,CACA,4BACE,KAAM,CAKN,qFAAsF,CACtF,mCAAoC,CAC5B,2BACV,CACA,2DARE,OAAQ,CACR,MAAO,CACP,iCAAkC,CAClC,eAaF,CARA,+BAKE,kFAAmF,CACnF,kCAAmC,CAC3B,0BACV,CACA,sDACE,sBAAuB,CACf,cACV,CACA,8DACE,kBACF,CACF,CACA,yBACE,cACE,0BAA2B,CAC3B,6BAA8B,CAC9B,sCACF,CACA,gCACE,YACF,CACA,8BACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,SAAU,CACV,kBAAmB,CACnB,sCACF,CACF,CACA,4BACE,cACE,cAAe,CACf,QAAS,CACT,kCAAmC,CACnC,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,2BAA4B,CAC5B,4BAA6B,CACzB,yBAA0B,CACtB,qBAAsB,CAC9B,cAAe,CACf,+BAAgC,CAChC,iBAAkB,CAClB,uCAAwC,CACxC,2BAA4B,CAC5B,SAAU,CACV,iDAAkD,CAClD,yCACF,CACF,CACA,gEACE,cACE,uBAAwB,CACxB,eACF,CACF,CACA,4BACE,8BACE,KAAM,CACN,MAAO,CACP,+BAAgC,CAChC,oFAAqF,CACrF,mCAAoC,CAC5B,2BACV,CACA,4BACE,KAAM,CACN,OAAQ,CACR,+BAAgC,CAChC,mFAAoF,CACpF,kCAAmC,CAC3B,0BACV,CACA,4BACE,KAAM,CAKN,qFAAsF,CACtF,mCAAoC,CAC5B,2BACV,CACA,2DARE,OAAQ,CACR,MAAO,CACP,iCAAkC,CAClC,eAaF,CARA,+BAKE,kFAAmF,CACnF,kCAAmC,CAC3B,0BACV,CACA,sDACE,sBAAuB,CACf,cACV,CACA,8DACE,kBACF,CACF,CACA,yBACE,cACE,0BAA2B,CAC3B,6BAA8B,CAC9B,sCACF,CACA,gCACE,YACF,CACA,8BACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,SAAU,CACV,kBAAmB,CACnB,sCACF,CACF,CACA,6BACE,cACE,cAAe,CACf,QAAS,CACT,kCAAmC,CACnC,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,2BAA4B,CAC5B,4BAA6B,CACzB,yBAA0B,CACtB,qBAAsB,CAC9B,cAAe,CACf,+BAAgC,CAChC,iBAAkB,CAClB,uCAAwC,CACxC,2BAA4B,CAC5B,SAAU,CACV,iDAAkD,CAClD,yCACF,CACF,CACA,iEACE,cACE,uBAAwB,CACxB,eACF,CACF,CACA,6BACE,8BACE,KAAM,CACN,MAAO,CACP,+BAAgC,CAChC,oFAAqF,CACrF,mCAAoC,CAC5B,2BACV,CACA,4BACE,KAAM,CACN,OAAQ,CACR,+BAAgC,CAChC,mFAAoF,CACpF,kCAAmC,CAC3B,0BACV,CACA,4BACE,KAAM,CAKN,qFAAsF,CACtF,mCAAoC,CAC5B,2BACV,CACA,2DARE,OAAQ,CACR,MAAO,CACP,iCAAkC,CAClC,eAaF,CARA,+BAKE,kFAAmF,CACnF,kCAAmC,CAC3B,0BACV,CACA,sDACE,sBAAuB,CACf,cACV,CACA,8DACE,kBACF,CACF,CACA,0BACE,cACE,0BAA2B,CAC3B,6BAA8B,CAC9B,sCACF,CACA,gCACE,YACF,CACA,8BACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,SAAU,CACV,kBAAmB,CACnB,sCACF,CACF,CACA,6BACE,eACE,cAAe,CACf,QAAS,CACT,kCAAmC,CACnC,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,2BAA4B,CAC5B,4BAA6B,CACzB,yBAA0B,CACtB,qBAAsB,CAC9B,cAAe,CACf,+BAAgC,CAChC,iBAAkB,CAClB,uCAAwC,CACxC,2BAA4B,CAC5B,SAAU,CACV,iDAAkD,CAClD,yCACF,CACF,CACA,iEACE,eACE,uBAAwB,CACxB,eACF,CACF,CACA,6BACE,+BACE,KAAM,CACN,MAAO,CACP,+BAAgC,CAChC,oFAAqF,CACrF,mCAAoC,CAC5B,2BACV,CACA,6BACE,KAAM,CACN,OAAQ,CACR,+BAAgC,CAChC,mFAAoF,CACpF,kCAAmC,CAC3B,0BACV,CACA,6BACE,KAAM,CAKN,qFAAsF,CACtF,mCAAoC,CAC5B,2BACV,CACA,6DARE,OAAQ,CACR,MAAO,CACP,iCAAkC,CAClC,eAaF,CARA,gCAKE,kFAAmF,CACnF,kCAAmC,CAC3B,0BACV,CACA,wDACE,sBAAuB,CACf,cACV,CACA,iEACE,kBACF,CACF,CACA,0BACE,eACE,0BAA2B,CAC3B,6BAA8B,CAC9B,sCACF,CACA,iCACE,YACF,CACA,+BACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,SAAU,CACV,kBAAmB,CACnB,sCACF,CACF,CACA,WACE,cAAe,CACf,QAAS,CACT,kCAAmC,CACnC,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,2BAA4B,CAC5B,4BAA6B,CACzB,yBAA0B,CACtB,qBAAsB,CAC9B,cAAe,CACf,+BAAgC,CAChC,iBAAkB,CAClB,uCAAwC,CACxC,2BAA4B,CAC5B,SAAU,CACV,iDAAkD,CAClD,yCACF,CACA,uCACE,WACE,uBAAwB,CACxB,eACF,CACF,CACA,2BACE,KAAM,CACN,MAAO,CACP,+BAAgC,CAChC,oFAAqF,CACrF,mCAAoC,CAC5B,2BACV,CACA,yBACE,KAAM,CACN,OAAQ,CACR,+BAAgC,CAChC,mFAAoF,CACpF,kCAAmC,CAC3B,0BACV,CACA,yBACE,KAAM,CAKN,qFAAsF,CACtF,mCAAoC,CAC5B,2BACV,CACA,qDARE,OAAQ,CACR,MAAO,CACP,iCAAkC,CAClC,eAaF,CARA,4BAKE,kFAAmF,CACnF,kCAAmC,CAC3B,0BACV,CACA,gDACE,sBAAuB,CACf,cACV,CACA,qDACE,kBACF,CACA,oBACE,cAAe,CACf,KAAM,CACN,MAAO,CACP,YAAa,CACb,WAAY,CACZ,YAAa,CACb,qBACF,CACA,yBACE,SACF,CACA,yBACE,UACF,CACA,kBACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,wBAAyB,CACrB,qBAAsB,CAClB,kBAAmB,CAC3B,wBAAyB,CACrB,qBAAsB,CAClB,6BAA8B,CACtC,mEACF,CACA,6BACE,uFAA4F,CAC5F,mDAAsD,CACtD,qDAAwD,CACxD,sDACF,CACA,iBACE,eAAgB,CAChB,iDACF,CACA,gBACE,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,mEAAoE,CACpE,eACF,CACA,aACE,oBAAqB,CACrB,cAAe,CACf,qBAAsB,CACtB,WAAY,CACZ,6BAA8B,CAC9B,UACF,CACA,wBACE,oBAAqB,CACrB,UACF,CACA,gBACE,eACF,CACA,gBACE,eACF,CACA,gBACE,gBACF,CACA,+BACE,0DAA2D,CACnD,kDACV,CACA,oCACE,IACE,UACF,CACF,CACA,4BACE,IACE,UACF,CACF,CACA,kBACE,+EAAuF,CACvF,uEAA+E,CAC/E,2BAA4B,CAC5B,mBAAoB,CACpB,qDAAsD,CAC9C,6CACV,CACA,oCACE,GACE,6BAA+B,CAC/B,qBACF,CACF,CACA,4BACE,GACE,6BAA+B,CAC/B,qBACF,CACF,CACA,gBACE,aAAc,CACd,UAAW,CACX,UACF,CACA,iBACE,oBAAsB,CACtB,kEACF,CACA,mBACE,oBAAsB,CACtB,mEACF,CACA,iBACE,oBAAsB,CACtB,iEACF,CACA,cACE,oBAAsB,CACtB,kEACF,CACA,iBACE,oBAAsB,CACtB,iEACF,CACA,gBACE,oBAAsB,CACtB,iEACF,CACA,eACE,oBAAsB,CACtB,mEACF,CACA,cACE,oBAAsB,CACtB,gEACF,CACA,cACE,oEAAwE,CACxE,sGAA0G,CAC1G,8FACF,CACA,wCACE,wDAA8D,CAC9D,0FAAgG,CAChG,kFACF,CACA,gBACE,sEAA0E,CAC1E,wGAA4G,CAC5G,gGACF,CACA,4CACE,wDAA8D,CAC9D,0FAAgG,CAChG,kFACF,CACA,cACE,oEAAwE,CACxE,sGAA0G,CAC1G,8FACF,CACA,wCACE,wDAA8D,CAC9D,0FAAgG,CAChG,kFACF,CACA,WACE,iEAAqE,CACrE,mGAAuG,CACvG,2FACF,CACA,kCACE,yDAA+D,CAC/D,2FAAiG,CACjG,mFACF,CACA,cACE,oEAAwE,CACxE,sGAA0G,CAC1G,8FACF,CACA,wCACE,yDAA+D,CAC/D,2FAAiG,CACjG,mFACF,CACA,aACE,mEAAuE,CACvE,qGAAyG,CACzG,6FACF,CACA,sCACE,wDAA8D,CAC9D,0FAAgG,CAChG,kFACF,CACA,YACE,kEAAsE,CACtE,oGAAwG,CACxG,4FACF,CACA,oCACE,0DAAgE,CAChE,4FAAkG,CAClG,oFACF,CACA,WACE,iEAAqE,CACrE,mGAAuG,CACvG,2FACF,CACA,kCACE,uDAA6D,CAC7D,yFAA+F,CAC/F,iFACF,CACA,oBACE,2EAA+E,CAC/E,6GAAiH,CACjH,qGACF,CACA,oDACE,6EAAkF,CAClF,+GAAoH,CACpH,uGACF,CACA,kBACE,SAAU,CACV,sJAA0J,CAClJ,8IACV,CACA,WACE,0BAA2B,CAC3B,0BAA2B,CAC3B,mBAAoB,CACpB,WAAa,CACb,wBAAyB,CACrB,qBAAsB,CAClB,kBAAmB,CAC3B,sFAA0F,CAC1F,8EAAkF,CAClF,2BAA6B,CAC7B,kCAAmC,CACnC,0BACF,CACA,eACE,mBAAoB,CAChB,aAAc,CAClB,SAAU,CACV,UAAW,CACX,iBAAkB,CAClB,4CAA8C,CAC9C,oCACF,CACA,uCACE,eACE,uBAAwB,CACxB,eACF,CACF,CACA,8DACE,sEAA2E,CACnE,8DACV,CACA,OACE,iBAAkB,CAClB,UACF,CACA,cACE,aAAc,CACd,kCAAmC,CACnC,UACF,CACA,SACE,iBAAkB,CAClB,KAAM,CACN,MAAO,CACP,UAAW,CACX,WACF,CACA,WACE,sBACF,CACA,WACE,qBACF,CACA,YACE,wBACF,CACA,YACE,gCACF,CACA,WAEE,KAIF,CACA,yBANE,cAAe,CAEf,OAAQ,CACR,MAAO,CACP,YAQF,CANA,cAGE,QAGF,CACA,YAEE,KAEF,CACA,2BAJE,eAAgB,CAEhB,YAMF,CAJA,eAEE,QAEF,CACA,yBACE,eACE,eAAgB,CAChB,KAAM,CACN,YACF,CACA,kBACE,eAAgB,CAChB,QAAS,CACT,YACF,CACF,CACA,yBACE,eACE,eAAgB,CAChB,KAAM,CACN,YACF,CACA,kBACE,eAAgB,CAChB,QAAS,CACT,YACF,CACF,CACA,yBACE,eACE,eAAgB,CAChB,KAAM,CACN,YACF,CACA,kBACE,eAAgB,CAChB,QAAS,CACT,YACF,CACF,CACA,0BACE,eACE,eAAgB,CAChB,KAAM,CACN,YACF,CACA,kBACE,eAAgB,CAChB,QAAS,CACT,YACF,CACF,CACA,0BACE,gBACE,eAAgB,CAChB,KAAM,CACN,YACF,CACA,mBACE,eAAgB,CAChB,QAAS,CACT,YACF,CACF,CACA,QAIE,6BAA8B,CAE1B,sBAAuB,CACnB,kBAAmB,CAC3B,wBAAyB,CACrB,qBAAsB,CAClB,kBAAmB,CAC3B,2BAEF,CACA,gBAbE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CAEb,4BAA6B,CAOzB,kBAeN,CAbA,QAIE,kBAAmB,CACf,iBAAkB,CACd,aAAc,CACtB,2BAA4B,CAExB,yBAA0B,CACtB,qBAAsB,CAC9B,2BAEF,CACA,2EAEE,mBAAqB,CACrB,oBAAsB,CACtB,mBAAqB,CACrB,qBAAuB,CACvB,yBAA2B,CAC3B,4BAAiC,CACjC,4BAA8B,CAC9B,kBACF,CACA,qGAEE,2BACF,CACA,sBACE,iBAAkB,CAClB,KAAM,CACN,OAAQ,CACR,QAAS,CACT,MAAO,CACP,SAAU,CACV,UACF,CACA,eACE,eAAgB,CAChB,sBAAuB,CACvB,kBACF,CACA,IACE,oBAAqB,CACrB,2BAA4B,CACxB,kBAAmB,CACvB,SAAU,CACV,cAAe,CACf,6BAA8B,CAC9B,WACF,CACA,gBACE,iCACF,CACA,WACE,4BACF,CACA,cACE,+BACF,CACA,cACE,+BACF,CACA,mBACE,oCACF,CACA,gBACE,iCACF,CACA,aACE,oBACF,CACA,WACE,qBACF,CACA,YACE,oBACF,CACA,oBACE,+BAAiC,CACjC,4BACF,CACA,kBACE,6BAA+B,CAC/B,0BACF,CACA,iBACE,4BAA8B,CAC9B,yBACF,CACA,kBACE,kCAAoC,CACpC,+BACF,CACA,iBACE,4BAA8B,CAC9B,yBACF,CACA,WACE,mBACF,CACA,YACE,qBACF,CACA,YACE,oBACF,CACA,YACE,qBACF,CACA,aACE,mBACF,CACA,eACE,uBACF,CACA,iBACE,yBACF,CACA,kBACE,0BACF,CACA,iBACE,yBACF,CACA,iBACE,yBACF,CACA,mBACE,2BACF,CACA,oBACE,4BACF,CACA,mBACE,2BACF,CACA,iBACE,yBACF,CACA,mBACE,2BACF,CACA,oBACE,4BACF,CACA,mBACE,2BACF,CACA,UACE,wBACF,CACA,gBACE,8BACF,CACA,SACE,uBACF,CACA,QACE,sBACF,CACA,eACE,6BACF,CACA,SACE,uBACF,CACA,aACE,2BACF,CACA,cACE,4BACF,CACA,QACE,6BAA+B,CAC/B,6BAA+B,CAC/B,sBACF,CACA,eACE,oCAAsC,CACtC,oCAAsC,CACtC,6BACF,CACA,QACE,sBACF,CACA,QACE,yDAAgE,CACxD,iDACV,CACA,WACE,8DAAsE,CAC9D,sDACV,CACA,WACE,yDAA+D,CACvD,iDACV,CACA,aACE,iCAAmC,CAC3B,yBACV,CACA,oBACE,8EACF,CACA,sBACE,gFACF,CACA,oBACE,8EACF,CACA,iBACE,2EACF,CACA,oBACE,8EACF,CACA,mBACE,6EACF,CACA,kBACE,4EACF,CACA,iBACE,2EACF,CACA,iBACE,yBACF,CACA,mBACE,2BACF,CACA,mBACE,2BACF,CACA,gBACE,wBACF,CACA,iBACE,yBACF,CACA,OACE,eACF,CACA,QACE,iBACF,CACA,SACE,kBACF,CACA,UACE,kBACF,CACA,WACE,oBACF,CACA,YACE,qBACF,CACA,SACE,gBACF,CACA,UACE,kBACF,CACA,WACE,mBACF,CACA,OACE,iBACF,CACA,QACE,mBACF,CACA,SACE,oBACF,CACA,kBACE,gDAAmD,CAC3C,wCACV,CACA,oBACE,4CAA8C,CACtC,oCACV,CACA,oBACE,4CAA8C,CACtC,oCACV,CACA,QACE,qFACF,CACA,UACE,kBACF,CACA,YACE,yFACF,CACA,cACE,sBACF,CACA,YACE,2FACF,CACA,cACE,wBACF,CACA,eACE,4FACF,CACA,iBACE,yBACF,CACA,cACE,0FACF,CACA,gBACE,uBACF,CACA,gBACE,qBAAsB,CACtB,2EACF,CACA,kBACE,qBAAsB,CACtB,6EACF,CACA,gBACE,qBAAsB,CACtB,2EACF,CACA,aACE,qBAAsB,CACtB,wEACF,CACA,gBACE,qBAAsB,CACtB,2EACF,CACA,eACE,qBAAsB,CACtB,0EACF,CACA,cACE,qBAAsB,CACtB,yEACF,CACA,aACE,qBAAsB,CACtB,wEACF,CACA,cACE,qBAAsB,CACtB,yEACF,CACA,cACE,qBAAsB,CACtB,yEACF,CACA,uBACE,sDACF,CACA,yBACE,wDACF,CACA,uBACE,sDACF,CACA,oBACE,mDACF,CACA,uBACE,sDACF,CACA,sBACE,qDACF,CACA,qBACE,oDACF,CACA,oBACE,mDACF,CACA,UACE,0BACF,CACA,UACE,0BACF,CACA,UACE,0BACF,CACA,UACE,0BACF,CACA,UACE,0BACF,CACA,mBACE,uBACF,CACA,mBACE,wBACF,CACA,mBACE,uBACF,CACA,mBACE,wBACF,CACA,oBACE,qBACF,CACA,MACE,mBACF,CACA,MACE,mBACF,CACA,MACE,mBACF,CACA,OACE,oBACF,CACA,QACE,oBACF,CACA,QACE,wBACF,CACA,QACE,qBACF,CACA,YACE,yBACF,CACA,MACE,oBACF,CACA,MACE,oBACF,CACA,MACE,oBACF,CACA,OACE,qBACF,CACA,QACE,qBACF,CACA,QACE,yBACF,CACA,QACE,sBACF,CACA,YACE,0BACF,CACA,WACE,4BAA8B,CAC1B,2BAA6B,CACzB,uBACV,CACA,UACE,uCAAyC,CAErC,gCAAkC,CAC9B,4BACV,CACA,uBAJE,sCASF,CALA,aACE,qCAAuC,CAEnC,mCAAqC,CACjC,+BACV,CACA,kBACE,uCAAyC,CAErC,wCAA0C,CACtC,oCACV,CACA,uCAJE,uCASF,CALA,qBACE,qCAAuC,CAEnC,2CAA6C,CACzC,uCACV,CACA,aACE,4BAA8B,CAC1B,6BAA+B,CAC3B,qBACV,CACA,aACE,4BAA8B,CAC1B,6BAA+B,CAC3B,qBACV,CACA,eACE,6BAA+B,CAC3B,uBACN,CACA,eACE,6BAA+B,CAC3B,uBACN,CACA,WACE,4BAA8B,CAC1B,wBACN,CACA,aACE,8BAAgC,CAC5B,0BACN,CACA,mBACE,oCAAsC,CAClC,gCACN,CACA,uBACE,gCAAkC,CAC9B,6BAA+B,CAC3B,oCACV,CACA,qBACE,8BAAgC,CAC5B,2BAA6B,CACzB,kCACV,CACA,wBACE,iCAAmC,CAC/B,8BAAgC,CAC5B,gCACV,CACA,yBACE,kCAAoC,CAChC,+BAAiC,CAC7B,uCACV,CACA,wBACE,kCAAoC,CAChC,sCACN,CACA,wBACE,uCAAyC,CACrC,oCAAsC,CAClC,sCACV,CACA,mBACE,iCAAmC,CAC/B,8BAAgC,CAC5B,gCACV,CACA,iBACE,+BAAiC,CAC7B,4BAA8B,CAC1B,8BACV,CACA,oBACE,kCAAoC,CAChC,+BAAiC,CAC7B,4BACV,CACA,sBACE,oCAAsC,CAClC,iCAAmC,CAC/B,8BACV,CACA,qBACE,mCAAqC,CACjC,gCAAkC,CAC9B,6BACV,CACA,qBACE,kCAAoC,CAChC,kCACN,CACA,mBACE,gCAAkC,CAC9B,gCACN,CACA,sBACE,mCAAqC,CACjC,8BACN,CACA,uBACE,oCAAsC,CAClC,qCACN,CACA,sBACE,uCAAyC,CACrC,oCACN,CACA,uBACE,oCAAsC,CAClC,+BACN,CACA,iBACE,kCAAoC,CAChC,yBACN,CACA,kBACE,mCAAqC,CACjC,+BACN,CACA,gBACE,iCAAmC,CAC/B,6BACN,CACA,mBACE,oCAAsC,CAClC,2BACN,CACA,qBACE,sCAAwC,CACpC,6BACN,CACA,oBACE,qCAAuC,CACnC,4BACN,CACA,aACE,qCAAuC,CACnC,2BAA6B,CACzB,kBACV,CACA,SACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,SACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,SACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,SACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,SACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,SACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,KACE,kBACF,CACA,KACE,uBACF,CACA,KACE,sBACF,CACA,KACE,qBACF,CACA,KACE,uBACF,CACA,KACE,qBACF,CACA,QACE,qBACF,CACA,MACE,wBAA0B,CAC1B,uBACF,CACA,MACE,6BAAgC,CAChC,4BACF,CACA,MACE,4BAA+B,CAC/B,2BACF,CACA,MACE,2BAA6B,CAC7B,0BACF,CACA,MACE,6BAA+B,CAC/B,4BACF,CACA,MACE,2BAA6B,CAC7B,0BACF,CACA,SACE,2BAA6B,CAC7B,0BACF,CACA,MACE,sBAAwB,CACxB,yBACF,CACA,MACE,2BAA8B,CAC9B,8BACF,CACA,MACE,0BAA6B,CAC7B,6BACF,CACA,MACE,yBAA2B,CAC3B,4BACF,CACA,MACE,2BAA6B,CAC7B,8BACF,CACA,MACE,yBAA2B,CAC3B,4BACF,CACA,SACE,yBAA2B,CAC3B,4BACF,CACA,MACE,sBACF,CACA,MACE,2BACF,CACA,MACE,0BACF,CACA,MACE,yBACF,CACA,MACE,2BACF,CACA,MACE,yBACF,CACA,SACE,yBACF,CACA,MACE,wBACF,CACA,MACE,6BACF,CACA,MACE,4BACF,CACA,MACE,2BACF,CACA,MACE,6BACF,CACA,MACE,2BACF,CACA,SACE,2BACF,CACA,MACE,yBACF,CACA,MACE,8BACF,CACA,MACE,6BACF,CACA,MACE,4BACF,CACA,MACE,8BACF,CACA,MACE,4BACF,CACA,SACE,4BACF,CACA,MACE,uBACF,CACA,MACE,4BACF,CACA,MACE,2BACF,CACA,MACE,0BACF,CACA,MACE,4BACF,CACA,MACE,0BACF,CACA,SACE,0BACF,CACA,KACE,mBACF,CACA,KACE,wBACF,CACA,KACE,uBACF,CACA,KACE,sBACF,CACA,KACE,wBACF,CACA,KACE,sBACF,CACA,MACE,yBAA2B,CAC3B,wBACF,CACA,MACE,8BAAiC,CACjC,6BACF,CACA,MACE,6BAAgC,CAChC,4BACF,CACA,MACE,4BAA8B,CAC9B,2BACF,CACA,MACE,8BAAgC,CAChC,6BACF,CACA,MACE,4BAA8B,CAC9B,2BACF,CACA,MACE,uBAAyB,CACzB,0BACF,CACA,MACE,4BAA+B,CAC/B,+BACF,CACA,MACE,2BAA8B,CAC9B,8BACF,CACA,MACE,0BAA4B,CAC5B,6BACF,CACA,MACE,4BAA8B,CAC9B,+BACF,CACA,MACE,0BAA4B,CAC5B,6BACF,CACA,MACE,uBACF,CACA,MACE,4BACF,CACA,MACE,2BACF,CACA,MACE,0BACF,CACA,MACE,4BACF,CACA,MACE,0BACF,CACA,MACE,yBACF,CACA,MACE,8BACF,CACA,MACE,6BACF,CACA,MACE,4BACF,CACA,MACE,8BACF,CACA,MACE,4BACF,CACA,MACE,0BACF,CACA,MACE,+BACF,CACA,MACE,8BACF,CACA,MACE,6BACF,CACA,MACE,+BACF,CACA,MACE,6BACF,CACA,MACE,wBACF,CACA,MACE,6BACF,CACA,MACE,4BACF,CACA,MACE,2BACF,CACA,MACE,6BACF,CACA,MACE,2BACF,CACA,OACE,eACF,CACA,OACE,oBACF,CACA,OACE,mBACF,CACA,OACE,kBACF,CACA,OACE,oBACF,CACA,OACE,kBACF,CACA,WACE,mBACF,CACA,WACE,wBACF,CACA,WACE,uBACF,CACA,WACE,sBACF,CACA,WACE,wBACF,CACA,WACE,sBACF,CACA,cACE,2BAA6B,CAC7B,8BAAgC,CACxB,sBACV,CACA,cACE,gCAAmC,CACnC,mCAAsC,CAC9B,2BACV,CACA,cACE,+BAAkC,CAClC,kCAAqC,CAC7B,0BACV,CACA,cACE,8BAAgC,CAChC,iCAAmC,CAC3B,yBACV,CACA,cACE,gCAAkC,CAClC,mCAAqC,CAC7B,2BACV,CACA,cACE,8BAAgC,CAChC,iCAAmC,CAC3B,yBACV,CACA,gBACE,8CACF,CACA,MACE,0CACF,CACA,MACE,yCACF,CACA,MACE,uCACF,CACA,MACE,yCACF,CACA,MACE,2BACF,CACA,MACE,wBACF,CACA,YACE,2BACF,CACA,YACE,2BACF,CACA,YACE,6BACF,CACA,UACE,yBACF,CACA,WACE,yBACF,CACA,WACE,yBACF,CACA,aACE,yBACF,CACA,SACE,yBACF,CACA,WACE,4BACF,CACA,MACE,uBACF,CACA,OACE,0BACF,CACA,SACE,yBACF,CACA,OACE,uBACF,CACA,YACE,yBACF,CACA,UACE,0BACF,CACA,aACE,2BACF,CACA,sBACE,8BACF,CACA,2BACE,mCACF,CACA,8BACE,sCACF,CACA,gBACE,kCACF,CACA,gBACE,kCACF,CACA,iBACE,mCACF,CACA,WACE,4BACF,CACA,aACE,4BACF,CAEA,YACE,8BAAgC,CAChC,+BACF,CAEA,cACE,mBAAoB,CACpB,kEACF,CACA,gBACE,mBAAoB,CACpB,oEACF,CACA,cACE,mBAAoB,CACpB,kEACF,CACA,WACE,mBAAoB,CACpB,+DACF,CACA,cACE,mBAAoB,CACpB,kEACF,CACA,aACE,mBAAoB,CACpB,iEACF,CACA,YACE,mBAAoB,CACpB,gEACF,CACA,WACE,mBAAoB,CACpB,+DACF,CACA,YACE,mBAAoB,CACpB,gEACF,CACA,YACE,mBAAoB,CACpB,gEACF,CACA,WACE,mBAAoB,CACpB,qEACF,CACA,YACE,mBAAoB,CACpB,yCACF,CACA,eACE,mBAAoB,CACpB,8BACF,CACA,eACE,mBAAoB,CACpB,kCACF,CACA,qBACE,mBAAoB,CACpB,yCACF,CACA,oBACE,mBAAoB,CACpB,wCACF,CACA,oBACE,mBAAoB,CACpB,wCACF,CACA,YACE,mBAAoB,CACpB,uBACF,CACA,iBACE,sBACF,CACA,iBACE,qBACF,CACA,iBACE,sBACF,CACA,kBACE,mBACF,CACA,uBACE,+CACF,CACA,yBACE,iDACF,CACA,uBACE,+CACF,CACA,oBACE,4CACF,CACA,uBACE,+CACF,CACA,sBACE,8CACF,CACA,qBACE,6CACF,CACA,oBACE,4CACF,CAIA,8CACE,qBACF,CAIA,8CACE,sBACF,CAIA,8CACE,qBACF,CAIA,8CACE,sBACF,CAIA,gDACE,mBACF,CAIA,0CACE,sCACF,CAIA,0CACE,qCACF,CAIA,0CACE,sCACF,CACA,wBACE,6BAA8B,CAC9B,oGAAuG,CACvG,4FACF,CACA,0BACE,6BAA8B,CAC9B,sGAAyG,CACzG,8FACF,CACA,wBACE,6BAA8B,CAC9B,oGAAuG,CACvG,4FACF,CACA,qBACE,6BAA8B,CAC9B,iGAAoG,CACpG,yFACF,CACA,wBACE,6BAA8B,CAC9B,oGAAuG,CACvG,4FACF,CACA,uBACE,6BAA8B,CAC9B,mGAAsG,CACtG,2FACF,CACA,sBACE,6BAA8B,CAC9B,kGAAqG,CACrG,0FACF,CACA,qBACE,6BAA8B,CAC9B,iGAAoG,CACpG,yFACF,CACA,gBACE,6BAA8B,CAC9B,yGAA6G,CAC7G,iGACF,CAIA,gEACE,6BACF,CAIA,kEACE,+BACF,CAIA,kEACE,gCACF,CAIA,kEACE,+BACF,CAIA,kEACE,gCACF,CAIA,oEACE,6BACF,CACA,YACE,iBAAkB,CAClB,2EACF,CACA,cACE,iBAAkB,CAClB,6EACF,CACA,YACE,iBAAkB,CAClB,2EACF,CACA,SACE,iBAAkB,CAClB,wEACF,CACA,YACE,iBAAkB,CAClB,2EACF,CACA,WACE,iBAAkB,CAClB,0EACF,CACA,UACE,iBAAkB,CAClB,yEACF,CACA,SACE,iBAAkB,CAClB,wEACF,CACA,UACE,iBAAkB,CAClB,yEACF,CACA,UACE,iBAAkB,CAClB,yEACF,CACA,SACE,iBAAkB,CAClB,2EACF,CACA,gBACE,iBAAkB,CAClB,sCACF,CACA,mBACE,iBAAkB,CAClB,gFACF,CACA,kBACE,iBAAkB,CAClB,+EACF,CACA,eACE,mBACF,CACA,eACE,oBACF,CACA,eACE,mBACF,CACA,eACE,oBACF,CACA,gBACE,iBACF,CACA,mBACE,sDACF,CACA,qBACE,wDACF,CACA,mBACE,sDACF,CACA,gBACE,mDACF,CACA,mBACE,sDACF,CACA,kBACE,qDACF,CACA,iBACE,oDACF,CACA,gBACE,mDACF,CACA,aACE,6CACF,CACA,iBACE,iCAAmC,CACnC,8BAAgC,CAChC,6BAA+B,CAC3B,yBACN,CACA,kBACE,kCAAoC,CACpC,+BAAiC,CACjC,8BAAgC,CAC5B,0BACN,CACA,kBACE,kCAAoC,CACpC,+BAAiC,CACjC,8BAAgC,CAC5B,0BACN,CACA,SACE,6BACF,CACA,SACE,6BACF,CACA,SACE,+CACF,CACA,WACE,yBACF,CACA,WACE,kDACF,CACA,WACE,+CACF,CACA,WACE,kDACF,CACA,WACE,kDACF,CACA,WACE,mDACF,CACA,gBACE,2BACF,CACA,cACE,oDACF,CACA,aACE,wDAA0D,CAC1D,yDACF,CACA,eACE,kCAAoC,CACpC,mCACF,CACA,eACE,2DAA6D,CAC7D,4DACF,CACA,eACE,wDAA0D,CAC1D,yDACF,CACA,eACE,2DAA6D,CAC7D,4DACF,CACA,eACE,2DAA6D,CAC7D,4DACF,CACA,eACE,4DAA8D,CAC9D,6DACF,CACA,oBACE,oCAAsC,CACtC,qCACF,CACA,kBACE,6DAA+D,CAC/D,8DACF,CACA,aACE,yDAA2D,CAC3D,4DACF,CACA,eACE,mCAAqC,CACrC,sCACF,CACA,eACE,4DAA8D,CAC9D,+DACF,CACA,eACE,yDAA2D,CAC3D,4DACF,CACA,eACE,4DAA8D,CAC9D,+DACF,CACA,eACE,4DAA8D,CAC9D,+DACF,CACA,eACE,6DAA+D,CAC/D,gEACF,CACA,oBACE,qCAAuC,CACvC,wCACF,CACA,kBACE,8DAAgE,CAChE,iEACF,CACA,gBACE,4DAA8D,CAC9D,2DACF,CACA,kBACE,sCAAwC,CACxC,qCACF,CACA,kBACE,+DAAiE,CACjE,8DACF,CACA,kBACE,4DAA8D,CAC9D,2DACF,CACA,kBACE,+DAAiE,CACjE,8DACF,CACA,kBACE,+DAAiE,CACjE,8DACF,CACA,kBACE,gEAAkE,CAClE,+DACF,CACA,uBACE,wCAA0C,CAC1C,uCACF,CACA,qBACE,iEAAmE,CACnE,gEACF,CACA,eACE,2DAA6D,CAC7D,wDACF,CACA,iBACE,qCAAuC,CACvC,kCACF,CACA,iBACE,8DAAgE,CAChE,2DACF,CACA,iBACE,2DAA6D,CAC7D,wDACF,CACA,iBACE,8DAAgE,CAChE,2DACF,CACA,iBACE,8DAAgE,CAChE,2DACF,CACA,iBACE,+DAAiE,CACjE,4DACF,CACA,sBACE,uCAAyC,CACzC,oCACF,CACA,oBACE,gEAAkE,CAClE,6DACF,CACA,SACE,4BACF,CACA,WACE,2BACF,CACA,MACE,oBACF,CACA,KACE,mBACF,CACA,KACE,mBACF,CACA,KACE,mBACF,CACA,KACE,mBACF,CACA,yBACE,gBACE,oBACF,CACA,cACE,qBACF,CACA,eACE,oBACF,CACA,uBACE,+BAAiC,CACjC,4BACF,CACA,qBACE,6BAA+B,CAC/B,0BACF,CACA,oBACE,4BAA8B,CAC9B,yBACF,CACA,qBACE,kCAAoC,CACpC,+BACF,CACA,oBACE,4BAA8B,CAC9B,yBACF,CACA,aACE,wBACF,CACA,mBACE,8BACF,CACA,YACE,uBACF,CACA,WACE,sBACF,CACA,kBACE,6BACF,CACA,YACE,uBACF,CACA,gBACE,2BACF,CACA,iBACE,4BACF,CACA,WACE,6BAA+B,CAC/B,6BAA+B,CAC/B,sBACF,CACA,kBACE,oCAAsC,CACtC,oCAAsC,CACtC,6BACF,CACA,WACE,sBACF,CACA,cACE,4BAA8B,CAC1B,2BAA6B,CACzB,uBACV,CACA,aACE,uCAAyC,CAErC,gCAAkC,CAC9B,4BACV,CACA,6BAJE,sCASF,CALA,gBACE,qCAAuC,CAEnC,mCAAqC,CACjC,+BACV,CACA,qBACE,uCAAyC,CACzC,uCAAyC,CACrC,wCAA0C,CACtC,oCACV,CACA,wBACE,qCAAuC,CACvC,uCAAyC,CACrC,2CAA6C,CACzC,uCACV,CACA,gBACE,4BAA8B,CAC1B,6BAA+B,CAC3B,qBACV,CACA,gBACE,4BAA8B,CAC1B,6BAA+B,CAC3B,qBACV,CACA,kBACE,6BAA+B,CAC3B,uBACN,CACA,kBACE,6BAA+B,CAC3B,uBACN,CACA,cACE,4BAA8B,CAC1B,wBACN,CACA,gBACE,8BAAgC,CAC5B,0BACN,CACA,sBACE,oCAAsC,CAClC,gCACN,CACA,0BACE,gCAAkC,CAC9B,6BAA+B,CAC3B,oCACV,CACA,wBACE,8BAAgC,CAC5B,2BAA6B,CACzB,kCACV,CACA,2BACE,iCAAmC,CAC/B,8BAAgC,CAC5B,gCACV,CACA,4BACE,kCAAoC,CAChC,+BAAiC,CAC7B,uCACV,CACA,2BACE,kCAAoC,CAChC,sCACN,CACA,2BACE,uCAAyC,CACrC,oCAAsC,CAClC,sCACV,CACA,sBACE,iCAAmC,CAC/B,8BAAgC,CAC5B,gCACV,CACA,oBACE,+BAAiC,CAC7B,4BAA8B,CAC1B,8BACV,CACA,uBACE,kCAAoC,CAChC,+BAAiC,CAC7B,4BACV,CACA,yBACE,oCAAsC,CAClC,iCAAmC,CAC/B,8BACV,CACA,wBACE,mCAAqC,CACjC,gCAAkC,CAC9B,6BACV,CACA,wBACE,kCAAoC,CAChC,kCACN,CACA,sBACE,gCAAkC,CAC9B,gCACN,CACA,yBACE,mCAAqC,CACjC,8BACN,CACA,0BACE,oCAAsC,CAClC,qCACN,CACA,yBACE,uCAAyC,CACrC,oCACN,CACA,0BACE,oCAAsC,CAClC,+BACN,CACA,oBACE,kCAAoC,CAChC,yBACN,CACA,qBACE,mCAAqC,CACjC,+BACN,CACA,mBACE,iCAAmC,CAC/B,6BACN,CACA,sBACE,oCAAsC,CAClC,2BACN,CACA,wBACE,sCAAwC,CACpC,6BACN,CACA,uBACE,qCAAuC,CACnC,4BACN,CACA,gBACE,qCAAuC,CACnC,2BAA6B,CACzB,kBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,eACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,QACE,kBACF,CACA,QACE,uBACF,CACA,QACE,sBACF,CACA,QACE,qBACF,CACA,QACE,uBACF,CACA,QACE,qBACF,CACA,WACE,qBACF,CACA,SACE,wBAA0B,CAC1B,uBACF,CACA,SACE,6BAAgC,CAChC,4BACF,CACA,SACE,4BAA+B,CAC/B,2BACF,CACA,SACE,2BAA6B,CAC7B,0BACF,CACA,SACE,6BAA+B,CAC/B,4BACF,CACA,SACE,2BAA6B,CAC7B,0BACF,CACA,YACE,2BAA6B,CAC7B,0BACF,CACA,SACE,sBAAwB,CACxB,yBACF,CACA,SACE,2BAA8B,CAC9B,8BACF,CACA,SACE,0BAA6B,CAC7B,6BACF,CACA,SACE,yBAA2B,CAC3B,4BACF,CACA,SACE,2BAA6B,CAC7B,8BACF,CACA,SACE,yBAA2B,CAC3B,4BACF,CACA,YACE,yBAA2B,CAC3B,4BACF,CACA,SACE,sBACF,CACA,SACE,2BACF,CACA,SACE,0BACF,CACA,SACE,yBACF,CACA,SACE,2BACF,CACA,SACE,yBACF,CACA,YACE,yBACF,CACA,SACE,wBACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,6BACF,CACA,SACE,2BACF,CACA,YACE,2BACF,CACA,SACE,yBACF,CACA,SACE,8BACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,8BACF,CACA,SACE,4BACF,CACA,YACE,4BACF,CACA,SACE,uBACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,0BACF,CACA,SACE,4BACF,CACA,SACE,0BACF,CACA,YACE,0BACF,CACA,QACE,mBACF,CACA,QACE,wBACF,CACA,QACE,uBACF,CACA,QACE,sBACF,CACA,QACE,wBACF,CACA,QACE,sBACF,CACA,SACE,yBAA2B,CAC3B,wBACF,CACA,SACE,8BAAiC,CACjC,6BACF,CACA,SACE,6BAAgC,CAChC,4BACF,CACA,SACE,4BAA8B,CAC9B,2BACF,CACA,SACE,8BAAgC,CAChC,6BACF,CACA,SACE,4BAA8B,CAC9B,2BACF,CACA,SACE,uBAAyB,CACzB,0BACF,CACA,SACE,4BAA+B,CAC/B,+BACF,CACA,SACE,2BAA8B,CAC9B,8BACF,CACA,SACE,0BAA4B,CAC5B,6BACF,CACA,SACE,4BAA8B,CAC9B,+BACF,CACA,SACE,0BAA4B,CAC5B,6BACF,CACA,SACE,uBACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,0BACF,CACA,SACE,4BACF,CACA,SACE,0BACF,CACA,SACE,yBACF,CACA,SACE,8BACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,8BACF,CACA,SACE,4BACF,CACA,SACE,0BACF,CACA,SACE,+BACF,CACA,SACE,8BACF,CACA,SACE,6BACF,CACA,SACE,+BACF,CACA,SACE,6BACF,CACA,SACE,wBACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,6BACF,CACA,SACE,2BACF,CACA,UACE,eACF,CACA,UACE,oBACF,CACA,UACE,mBACF,CACA,UACE,kBACF,CACA,UACE,oBACF,CACA,UACE,kBACF,CACA,cACE,mBACF,CACA,cACE,wBACF,CACA,cACE,uBACF,CACA,cACE,sBACF,CACA,cACE,wBACF,CACA,cACE,sBACF,CACA,iBACE,2BAA6B,CAC7B,8BAAgC,CACxB,sBACV,CACA,iBACE,gCAAmC,CACnC,mCAAsC,CAC9B,2BACV,CACA,iBACE,+BAAkC,CAClC,kCAAqC,CAC7B,0BACV,CACA,iBACE,8BAAgC,CAChC,iCAAmC,CAC3B,yBACV,CACA,iBACE,gCAAkC,CAClC,mCAAqC,CAC7B,2BACV,CACA,iBACE,8BAAgC,CAChC,iCAAmC,CAC3B,yBACV,CACA,eACE,yBACF,CACA,aACE,0BACF,CACA,gBACE,2BACF,CACF,CACA,yBACE,gBACE,oBACF,CACA,cACE,qBACF,CACA,eACE,oBACF,CACA,uBACE,+BAAiC,CACjC,4BACF,CACA,qBACE,6BAA+B,CAC/B,0BACF,CACA,oBACE,4BAA8B,CAC9B,yBACF,CACA,qBACE,kCAAoC,CACpC,+BACF,CACA,oBACE,4BAA8B,CAC9B,yBACF,CACA,aACE,wBACF,CACA,mBACE,8BACF,CACA,YACE,uBACF,CACA,WACE,sBACF,CACA,kBACE,6BACF,CACA,YACE,uBACF,CACA,gBACE,2BACF,CACA,iBACE,4BACF,CACA,WACE,6BAA+B,CAC/B,6BAA+B,CAC/B,sBACF,CACA,kBACE,oCAAsC,CACtC,oCAAsC,CACtC,6BACF,CACA,WACE,sBACF,CACA,cACE,4BAA8B,CAC1B,2BAA6B,CACzB,uBACV,CACA,aACE,uCAAyC,CAErC,gCAAkC,CAC9B,4BACV,CACA,6BAJE,sCASF,CALA,gBACE,qCAAuC,CAEnC,mCAAqC,CACjC,+BACV,CACA,qBACE,uCAAyC,CACzC,uCAAyC,CACrC,wCAA0C,CACtC,oCACV,CACA,wBACE,qCAAuC,CACvC,uCAAyC,CACrC,2CAA6C,CACzC,uCACV,CACA,gBACE,4BAA8B,CAC1B,6BAA+B,CAC3B,qBACV,CACA,gBACE,4BAA8B,CAC1B,6BAA+B,CAC3B,qBACV,CACA,kBACE,6BAA+B,CAC3B,uBACN,CACA,kBACE,6BAA+B,CAC3B,uBACN,CACA,cACE,4BAA8B,CAC1B,wBACN,CACA,gBACE,8BAAgC,CAC5B,0BACN,CACA,sBACE,oCAAsC,CAClC,gCACN,CACA,0BACE,gCAAkC,CAC9B,6BAA+B,CAC3B,oCACV,CACA,wBACE,8BAAgC,CAC5B,2BAA6B,CACzB,kCACV,CACA,2BACE,iCAAmC,CAC/B,8BAAgC,CAC5B,gCACV,CACA,4BACE,kCAAoC,CAChC,+BAAiC,CAC7B,uCACV,CACA,2BACE,kCAAoC,CAChC,sCACN,CACA,2BACE,uCAAyC,CACrC,oCAAsC,CAClC,sCACV,CACA,sBACE,iCAAmC,CAC/B,8BAAgC,CAC5B,gCACV,CACA,oBACE,+BAAiC,CAC7B,4BAA8B,CAC1B,8BACV,CACA,uBACE,kCAAoC,CAChC,+BAAiC,CAC7B,4BACV,CACA,yBACE,oCAAsC,CAClC,iCAAmC,CAC/B,8BACV,CACA,wBACE,mCAAqC,CACjC,gCAAkC,CAC9B,6BACV,CACA,wBACE,kCAAoC,CAChC,kCACN,CACA,sBACE,gCAAkC,CAC9B,gCACN,CACA,yBACE,mCAAqC,CACjC,8BACN,CACA,0BACE,oCAAsC,CAClC,qCACN,CACA,yBACE,uCAAyC,CACrC,oCACN,CACA,0BACE,oCAAsC,CAClC,+BACN,CACA,oBACE,kCAAoC,CAChC,yBACN,CACA,qBACE,mCAAqC,CACjC,+BACN,CACA,mBACE,iCAAmC,CAC/B,6BACN,CACA,sBACE,oCAAsC,CAClC,2BACN,CACA,wBACE,sCAAwC,CACpC,6BACN,CACA,uBACE,qCAAuC,CACnC,4BACN,CACA,gBACE,qCAAuC,CACnC,2BAA6B,CACzB,kBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,eACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,QACE,kBACF,CACA,QACE,uBACF,CACA,QACE,sBACF,CACA,QACE,qBACF,CACA,QACE,uBACF,CACA,QACE,qBACF,CACA,WACE,qBACF,CACA,SACE,wBAA0B,CAC1B,uBACF,CACA,SACE,6BAAgC,CAChC,4BACF,CACA,SACE,4BAA+B,CAC/B,2BACF,CACA,SACE,2BAA6B,CAC7B,0BACF,CACA,SACE,6BAA+B,CAC/B,4BACF,CACA,SACE,2BAA6B,CAC7B,0BACF,CACA,YACE,2BAA6B,CAC7B,0BACF,CACA,SACE,sBAAwB,CACxB,yBACF,CACA,SACE,2BAA8B,CAC9B,8BACF,CACA,SACE,0BAA6B,CAC7B,6BACF,CACA,SACE,yBAA2B,CAC3B,4BACF,CACA,SACE,2BAA6B,CAC7B,8BACF,CACA,SACE,yBAA2B,CAC3B,4BACF,CACA,YACE,yBAA2B,CAC3B,4BACF,CACA,SACE,sBACF,CACA,SACE,2BACF,CACA,SACE,0BACF,CACA,SACE,yBACF,CACA,SACE,2BACF,CACA,SACE,yBACF,CACA,YACE,yBACF,CACA,SACE,wBACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,6BACF,CACA,SACE,2BACF,CACA,YACE,2BACF,CACA,SACE,yBACF,CACA,SACE,8BACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,8BACF,CACA,SACE,4BACF,CACA,YACE,4BACF,CACA,SACE,uBACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,0BACF,CACA,SACE,4BACF,CACA,SACE,0BACF,CACA,YACE,0BACF,CACA,QACE,mBACF,CACA,QACE,wBACF,CACA,QACE,uBACF,CACA,QACE,sBACF,CACA,QACE,wBACF,CACA,QACE,sBACF,CACA,SACE,yBAA2B,CAC3B,wBACF,CACA,SACE,8BAAiC,CACjC,6BACF,CACA,SACE,6BAAgC,CAChC,4BACF,CACA,SACE,4BAA8B,CAC9B,2BACF,CACA,SACE,8BAAgC,CAChC,6BACF,CACA,SACE,4BAA8B,CAC9B,2BACF,CACA,SACE,uBAAyB,CACzB,0BACF,CACA,SACE,4BAA+B,CAC/B,+BACF,CACA,SACE,2BAA8B,CAC9B,8BACF,CACA,SACE,0BAA4B,CAC5B,6BACF,CACA,SACE,4BAA8B,CAC9B,+BACF,CACA,SACE,0BAA4B,CAC5B,6BACF,CACA,SACE,uBACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,0BACF,CACA,SACE,4BACF,CACA,SACE,0BACF,CACA,SACE,yBACF,CACA,SACE,8BACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,8BACF,CACA,SACE,4BACF,CACA,SACE,0BACF,CACA,SACE,+BACF,CACA,SACE,8BACF,CACA,SACE,6BACF,CACA,SACE,+BACF,CACA,SACE,6BACF,CACA,SACE,wBACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,6BACF,CACA,SACE,2BACF,CACA,UACE,eACF,CACA,UACE,oBACF,CACA,UACE,mBACF,CACA,UACE,kBACF,CACA,UACE,oBACF,CACA,UACE,kBACF,CACA,cACE,mBACF,CACA,cACE,wBACF,CACA,cACE,uBACF,CACA,cACE,sBACF,CACA,cACE,wBACF,CACA,cACE,sBACF,CACA,iBACE,2BAA6B,CAC7B,8BAAgC,CACxB,sBACV,CACA,iBACE,gCAAmC,CACnC,mCAAsC,CAC9B,2BACV,CACA,iBACE,+BAAkC,CAClC,kCAAqC,CAC7B,0BACV,CACA,iBACE,8BAAgC,CAChC,iCAAmC,CAC3B,yBACV,CACA,iBACE,gCAAkC,CAClC,mCAAqC,CAC7B,2BACV,CACA,iBACE,8BAAgC,CAChC,iCAAmC,CAC3B,yBACV,CACA,eACE,yBACF,CACA,aACE,0BACF,CACA,gBACE,2BACF,CACF,CACA,yBACE,gBACE,oBACF,CACA,cACE,qBACF,CACA,eACE,oBACF,CACA,uBACE,+BAAiC,CACjC,4BACF,CACA,qBACE,6BAA+B,CAC/B,0BACF,CACA,oBACE,4BAA8B,CAC9B,yBACF,CACA,qBACE,kCAAoC,CACpC,+BACF,CACA,oBACE,4BAA8B,CAC9B,yBACF,CACA,aACE,wBACF,CACA,mBACE,8BACF,CACA,YACE,uBACF,CACA,WACE,sBACF,CACA,kBACE,6BACF,CACA,YACE,uBACF,CACA,gBACE,2BACF,CACA,iBACE,4BACF,CACA,WACE,6BAA+B,CAC/B,6BAA+B,CAC/B,sBACF,CACA,kBACE,oCAAsC,CACtC,oCAAsC,CACtC,6BACF,CACA,WACE,sBACF,CACA,cACE,4BAA8B,CAC1B,2BAA6B,CACzB,uBACV,CACA,aACE,uCAAyC,CAErC,gCAAkC,CAC9B,4BACV,CACA,6BAJE,sCASF,CALA,gBACE,qCAAuC,CAEnC,mCAAqC,CACjC,+BACV,CACA,qBACE,uCAAyC,CACzC,uCAAyC,CACrC,wCAA0C,CACtC,oCACV,CACA,wBACE,qCAAuC,CACvC,uCAAyC,CACrC,2CAA6C,CACzC,uCACV,CACA,gBACE,4BAA8B,CAC1B,6BAA+B,CAC3B,qBACV,CACA,gBACE,4BAA8B,CAC1B,6BAA+B,CAC3B,qBACV,CACA,kBACE,6BAA+B,CAC3B,uBACN,CACA,kBACE,6BAA+B,CAC3B,uBACN,CACA,cACE,4BAA8B,CAC1B,wBACN,CACA,gBACE,8BAAgC,CAC5B,0BACN,CACA,sBACE,oCAAsC,CAClC,gCACN,CACA,0BACE,gCAAkC,CAC9B,6BAA+B,CAC3B,oCACV,CACA,wBACE,8BAAgC,CAC5B,2BAA6B,CACzB,kCACV,CACA,2BACE,iCAAmC,CAC/B,8BAAgC,CAC5B,gCACV,CACA,4BACE,kCAAoC,CAChC,+BAAiC,CAC7B,uCACV,CACA,2BACE,kCAAoC,CAChC,sCACN,CACA,2BACE,uCAAyC,CACrC,oCAAsC,CAClC,sCACV,CACA,sBACE,iCAAmC,CAC/B,8BAAgC,CAC5B,gCACV,CACA,oBACE,+BAAiC,CAC7B,4BAA8B,CAC1B,8BACV,CACA,uBACE,kCAAoC,CAChC,+BAAiC,CAC7B,4BACV,CACA,yBACE,oCAAsC,CAClC,iCAAmC,CAC/B,8BACV,CACA,wBACE,mCAAqC,CACjC,gCAAkC,CAC9B,6BACV,CACA,wBACE,kCAAoC,CAChC,kCACN,CACA,sBACE,gCAAkC,CAC9B,gCACN,CACA,yBACE,mCAAqC,CACjC,8BACN,CACA,0BACE,oCAAsC,CAClC,qCACN,CACA,yBACE,uCAAyC,CACrC,oCACN,CACA,0BACE,oCAAsC,CAClC,+BACN,CACA,oBACE,kCAAoC,CAChC,yBACN,CACA,qBACE,mCAAqC,CACjC,+BACN,CACA,mBACE,iCAAmC,CAC/B,6BACN,CACA,sBACE,oCAAsC,CAClC,2BACN,CACA,wBACE,sCAAwC,CACpC,6BACN,CACA,uBACE,qCAAuC,CACnC,4BACN,CACA,gBACE,qCAAuC,CACnC,2BAA6B,CACzB,kBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,eACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,QACE,kBACF,CACA,QACE,uBACF,CACA,QACE,sBACF,CACA,QACE,qBACF,CACA,QACE,uBACF,CACA,QACE,qBACF,CACA,WACE,qBACF,CACA,SACE,wBAA0B,CAC1B,uBACF,CACA,SACE,6BAAgC,CAChC,4BACF,CACA,SACE,4BAA+B,CAC/B,2BACF,CACA,SACE,2BAA6B,CAC7B,0BACF,CACA,SACE,6BAA+B,CAC/B,4BACF,CACA,SACE,2BAA6B,CAC7B,0BACF,CACA,YACE,2BAA6B,CAC7B,0BACF,CACA,SACE,sBAAwB,CACxB,yBACF,CACA,SACE,2BAA8B,CAC9B,8BACF,CACA,SACE,0BAA6B,CAC7B,6BACF,CACA,SACE,yBAA2B,CAC3B,4BACF,CACA,SACE,2BAA6B,CAC7B,8BACF,CACA,SACE,yBAA2B,CAC3B,4BACF,CACA,YACE,yBAA2B,CAC3B,4BACF,CACA,SACE,sBACF,CACA,SACE,2BACF,CACA,SACE,0BACF,CACA,SACE,yBACF,CACA,SACE,2BACF,CACA,SACE,yBACF,CACA,YACE,yBACF,CACA,SACE,wBACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,6BACF,CACA,SACE,2BACF,CACA,YACE,2BACF,CACA,SACE,yBACF,CACA,SACE,8BACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,8BACF,CACA,SACE,4BACF,CACA,YACE,4BACF,CACA,SACE,uBACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,0BACF,CACA,SACE,4BACF,CACA,SACE,0BACF,CACA,YACE,0BACF,CACA,QACE,mBACF,CACA,QACE,wBACF,CACA,QACE,uBACF,CACA,QACE,sBACF,CACA,QACE,wBACF,CACA,QACE,sBACF,CACA,SACE,yBAA2B,CAC3B,wBACF,CACA,SACE,8BAAiC,CACjC,6BACF,CACA,SACE,6BAAgC,CAChC,4BACF,CACA,SACE,4BAA8B,CAC9B,2BACF,CACA,SACE,8BAAgC,CAChC,6BACF,CACA,SACE,4BAA8B,CAC9B,2BACF,CACA,SACE,uBAAyB,CACzB,0BACF,CACA,SACE,4BAA+B,CAC/B,+BACF,CACA,SACE,2BAA8B,CAC9B,8BACF,CACA,SACE,0BAA4B,CAC5B,6BACF,CACA,SACE,4BAA8B,CAC9B,+BACF,CACA,SACE,0BAA4B,CAC5B,6BACF,CACA,SACE,uBACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,0BACF,CACA,SACE,4BACF,CACA,SACE,0BACF,CACA,SACE,yBACF,CACA,SACE,8BACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,8BACF,CACA,SACE,4BACF,CACA,SACE,0BACF,CACA,SACE,+BACF,CACA,SACE,8BACF,CACA,SACE,6BACF,CACA,SACE,+BACF,CACA,SACE,6BACF,CACA,SACE,wBACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,6BACF,CACA,SACE,2BACF,CACA,UACE,eACF,CACA,UACE,oBACF,CACA,UACE,mBACF,CACA,UACE,kBACF,CACA,UACE,oBACF,CACA,UACE,kBACF,CACA,cACE,mBACF,CACA,cACE,wBACF,CACA,cACE,uBACF,CACA,cACE,sBACF,CACA,cACE,wBACF,CACA,cACE,sBACF,CACA,iBACE,2BAA6B,CAC7B,8BAAgC,CACxB,sBACV,CACA,iBACE,gCAAmC,CACnC,mCAAsC,CAC9B,2BACV,CACA,iBACE,+BAAkC,CAClC,kCAAqC,CAC7B,0BACV,CACA,iBACE,8BAAgC,CAChC,iCAAmC,CAC3B,yBACV,CACA,iBACE,gCAAkC,CAClC,mCAAqC,CAC7B,2BACV,CACA,iBACE,8BAAgC,CAChC,iCAAmC,CAC3B,yBACV,CACA,eACE,yBACF,CACA,aACE,0BACF,CACA,gBACE,2BACF,CACF,CACA,0BACE,gBACE,oBACF,CACA,cACE,qBACF,CACA,eACE,oBACF,CACA,uBACE,+BAAiC,CACjC,4BACF,CACA,qBACE,6BAA+B,CAC/B,0BACF,CACA,oBACE,4BAA8B,CAC9B,yBACF,CACA,qBACE,kCAAoC,CACpC,+BACF,CACA,oBACE,4BAA8B,CAC9B,yBACF,CACA,aACE,wBACF,CACA,mBACE,8BACF,CACA,YACE,uBACF,CACA,WACE,sBACF,CACA,kBACE,6BACF,CACA,YACE,uBACF,CACA,gBACE,2BACF,CACA,iBACE,4BACF,CACA,WACE,6BAA+B,CAC/B,6BAA+B,CAC/B,sBACF,CACA,kBACE,oCAAsC,CACtC,oCAAsC,CACtC,6BACF,CACA,WACE,sBACF,CACA,cACE,4BAA8B,CAC1B,2BAA6B,CACzB,uBACV,CACA,aACE,uCAAyC,CAErC,gCAAkC,CAC9B,4BACV,CACA,6BAJE,sCASF,CALA,gBACE,qCAAuC,CAEnC,mCAAqC,CACjC,+BACV,CACA,qBACE,uCAAyC,CACzC,uCAAyC,CACrC,wCAA0C,CACtC,oCACV,CACA,wBACE,qCAAuC,CACvC,uCAAyC,CACrC,2CAA6C,CACzC,uCACV,CACA,gBACE,4BAA8B,CAC1B,6BAA+B,CAC3B,qBACV,CACA,gBACE,4BAA8B,CAC1B,6BAA+B,CAC3B,qBACV,CACA,kBACE,6BAA+B,CAC3B,uBACN,CACA,kBACE,6BAA+B,CAC3B,uBACN,CACA,cACE,4BAA8B,CAC1B,wBACN,CACA,gBACE,8BAAgC,CAC5B,0BACN,CACA,sBACE,oCAAsC,CAClC,gCACN,CACA,0BACE,gCAAkC,CAC9B,6BAA+B,CAC3B,oCACV,CACA,wBACE,8BAAgC,CAC5B,2BAA6B,CACzB,kCACV,CACA,2BACE,iCAAmC,CAC/B,8BAAgC,CAC5B,gCACV,CACA,4BACE,kCAAoC,CAChC,+BAAiC,CAC7B,uCACV,CACA,2BACE,kCAAoC,CAChC,sCACN,CACA,2BACE,uCAAyC,CACrC,oCAAsC,CAClC,sCACV,CACA,sBACE,iCAAmC,CAC/B,8BAAgC,CAC5B,gCACV,CACA,oBACE,+BAAiC,CAC7B,4BAA8B,CAC1B,8BACV,CACA,uBACE,kCAAoC,CAChC,+BAAiC,CAC7B,4BACV,CACA,yBACE,oCAAsC,CAClC,iCAAmC,CAC/B,8BACV,CACA,wBACE,mCAAqC,CACjC,gCAAkC,CAC9B,6BACV,CACA,wBACE,kCAAoC,CAChC,kCACN,CACA,sBACE,gCAAkC,CAC9B,gCACN,CACA,yBACE,mCAAqC,CACjC,8BACN,CACA,0BACE,oCAAsC,CAClC,qCACN,CACA,yBACE,uCAAyC,CACrC,oCACN,CACA,0BACE,oCAAsC,CAClC,+BACN,CACA,oBACE,kCAAoC,CAChC,yBACN,CACA,qBACE,mCAAqC,CACjC,+BACN,CACA,mBACE,iCAAmC,CAC/B,6BACN,CACA,sBACE,oCAAsC,CAClC,2BACN,CACA,wBACE,sCAAwC,CACpC,6BACN,CACA,uBACE,qCAAuC,CACnC,4BACN,CACA,gBACE,qCAAuC,CACnC,2BAA6B,CACzB,kBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,eACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,QACE,kBACF,CACA,QACE,uBACF,CACA,QACE,sBACF,CACA,QACE,qBACF,CACA,QACE,uBACF,CACA,QACE,qBACF,CACA,WACE,qBACF,CACA,SACE,wBAA0B,CAC1B,uBACF,CACA,SACE,6BAAgC,CAChC,4BACF,CACA,SACE,4BAA+B,CAC/B,2BACF,CACA,SACE,2BAA6B,CAC7B,0BACF,CACA,SACE,6BAA+B,CAC/B,4BACF,CACA,SACE,2BAA6B,CAC7B,0BACF,CACA,YACE,2BAA6B,CAC7B,0BACF,CACA,SACE,sBAAwB,CACxB,yBACF,CACA,SACE,2BAA8B,CAC9B,8BACF,CACA,SACE,0BAA6B,CAC7B,6BACF,CACA,SACE,yBAA2B,CAC3B,4BACF,CACA,SACE,2BAA6B,CAC7B,8BACF,CACA,SACE,yBAA2B,CAC3B,4BACF,CACA,YACE,yBAA2B,CAC3B,4BACF,CACA,SACE,sBACF,CACA,SACE,2BACF,CACA,SACE,0BACF,CACA,SACE,yBACF,CACA,SACE,2BACF,CACA,SACE,yBACF,CACA,YACE,yBACF,CACA,SACE,wBACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,6BACF,CACA,SACE,2BACF,CACA,YACE,2BACF,CACA,SACE,yBACF,CACA,SACE,8BACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,8BACF,CACA,SACE,4BACF,CACA,YACE,4BACF,CACA,SACE,uBACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,0BACF,CACA,SACE,4BACF,CACA,SACE,0BACF,CACA,YACE,0BACF,CACA,QACE,mBACF,CACA,QACE,wBACF,CACA,QACE,uBACF,CACA,QACE,sBACF,CACA,QACE,wBACF,CACA,QACE,sBACF,CACA,SACE,yBAA2B,CAC3B,wBACF,CACA,SACE,8BAAiC,CACjC,6BACF,CACA,SACE,6BAAgC,CAChC,4BACF,CACA,SACE,4BAA8B,CAC9B,2BACF,CACA,SACE,8BAAgC,CAChC,6BACF,CACA,SACE,4BAA8B,CAC9B,2BACF,CACA,SACE,uBAAyB,CACzB,0BACF,CACA,SACE,4BAA+B,CAC/B,+BACF,CACA,SACE,2BAA8B,CAC9B,8BACF,CACA,SACE,0BAA4B,CAC5B,6BACF,CACA,SACE,4BAA8B,CAC9B,+BACF,CACA,SACE,0BAA4B,CAC5B,6BACF,CACA,SACE,uBACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,0BACF,CACA,SACE,4BACF,CACA,SACE,0BACF,CACA,SACE,yBACF,CACA,SACE,8BACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,8BACF,CACA,SACE,4BACF,CACA,SACE,0BACF,CACA,SACE,+BACF,CACA,SACE,8BACF,CACA,SACE,6BACF,CACA,SACE,+BACF,CACA,SACE,6BACF,CACA,SACE,wBACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,6BACF,CACA,SACE,2BACF,CACA,UACE,eACF,CACA,UACE,oBACF,CACA,UACE,mBACF,CACA,UACE,kBACF,CACA,UACE,oBACF,CACA,UACE,kBACF,CACA,cACE,mBACF,CACA,cACE,wBACF,CACA,cACE,uBACF,CACA,cACE,sBACF,CACA,cACE,wBACF,CACA,cACE,sBACF,CACA,iBACE,2BAA6B,CAC7B,8BAAgC,CACxB,sBACV,CACA,iBACE,gCAAmC,CACnC,mCAAsC,CAC9B,2BACV,CACA,iBACE,+BAAkC,CAClC,kCAAqC,CAC7B,0BACV,CACA,iBACE,8BAAgC,CAChC,iCAAmC,CAC3B,yBACV,CACA,iBACE,gCAAkC,CAClC,mCAAqC,CAC7B,2BACV,CACA,iBACE,8BAAgC,CAChC,iCAAmC,CAC3B,yBACV,CACA,eACE,yBACF,CACA,aACE,0BACF,CACA,gBACE,2BACF,CACF,CACA,0BACE,iBACE,oBACF,CACA,eACE,qBACF,CACA,gBACE,oBACF,CACA,wBACE,+BAAiC,CACjC,4BACF,CACA,sBACE,6BAA+B,CAC/B,0BACF,CACA,qBACE,4BAA8B,CAC9B,yBACF,CACA,sBACE,kCAAoC,CACpC,+BACF,CACA,qBACE,4BAA8B,CAC9B,yBACF,CACA,cACE,wBACF,CACA,oBACE,8BACF,CACA,aACE,uBACF,CACA,YACE,sBACF,CACA,mBACE,6BACF,CACA,aACE,uBACF,CACA,iBACE,2BACF,CACA,kBACE,4BACF,CACA,YACE,6BAA+B,CAC/B,6BAA+B,CAC/B,sBACF,CACA,mBACE,oCAAsC,CACtC,oCAAsC,CACtC,6BACF,CACA,YACE,sBACF,CACA,eACE,4BAA8B,CAC1B,2BAA6B,CACzB,uBACV,CACA,cACE,uCAAyC,CAErC,gCAAkC,CAC9B,4BACV,CACA,+BAJE,sCASF,CALA,iBACE,qCAAuC,CAEnC,mCAAqC,CACjC,+BACV,CACA,sBACE,uCAAyC,CACzC,uCAAyC,CACrC,wCAA0C,CACtC,oCACV,CACA,yBACE,qCAAuC,CACvC,uCAAyC,CACrC,2CAA6C,CACzC,uCACV,CACA,iBACE,4BAA8B,CAC1B,6BAA+B,CAC3B,qBACV,CACA,iBACE,4BAA8B,CAC1B,6BAA+B,CAC3B,qBACV,CACA,mBACE,6BAA+B,CAC3B,uBACN,CACA,mBACE,6BAA+B,CAC3B,uBACN,CACA,eACE,4BAA8B,CAC1B,wBACN,CACA,iBACE,8BAAgC,CAC5B,0BACN,CACA,uBACE,oCAAsC,CAClC,gCACN,CACA,2BACE,gCAAkC,CAC9B,6BAA+B,CAC3B,oCACV,CACA,yBACE,8BAAgC,CAC5B,2BAA6B,CACzB,kCACV,CACA,4BACE,iCAAmC,CAC/B,8BAAgC,CAC5B,gCACV,CACA,6BACE,kCAAoC,CAChC,+BAAiC,CAC7B,uCACV,CACA,4BACE,kCAAoC,CAChC,sCACN,CACA,4BACE,uCAAyC,CACrC,oCAAsC,CAClC,sCACV,CACA,uBACE,iCAAmC,CAC/B,8BAAgC,CAC5B,gCACV,CACA,qBACE,+BAAiC,CAC7B,4BAA8B,CAC1B,8BACV,CACA,wBACE,kCAAoC,CAChC,+BAAiC,CAC7B,4BACV,CACA,0BACE,oCAAsC,CAClC,iCAAmC,CAC/B,8BACV,CACA,yBACE,mCAAqC,CACjC,gCAAkC,CAC9B,6BACV,CACA,yBACE,kCAAoC,CAChC,kCACN,CACA,uBACE,gCAAkC,CAC9B,gCACN,CACA,0BACE,mCAAqC,CACjC,8BACN,CACA,2BACE,oCAAsC,CAClC,qCACN,CACA,0BACE,uCAAyC,CACrC,oCACN,CACA,2BACE,oCAAsC,CAClC,+BACN,CACA,qBACE,kCAAoC,CAChC,yBACN,CACA,sBACE,mCAAqC,CACjC,+BACN,CACA,oBACE,iCAAmC,CAC/B,6BACN,CACA,uBACE,oCAAsC,CAClC,2BACN,CACA,yBACE,sCAAwC,CACpC,6BACN,CACA,wBACE,qCAAuC,CACnC,4BACN,CACA,iBACE,qCAAuC,CACnC,2BAA6B,CACzB,kBACV,CACA,aACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,aACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,aACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,aACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,aACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,aACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,gBACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,SACE,kBACF,CACA,SACE,uBACF,CACA,SACE,sBACF,CACA,SACE,qBACF,CACA,SACE,uBACF,CACA,SACE,qBACF,CACA,YACE,qBACF,CACA,UACE,wBAA0B,CAC1B,uBACF,CACA,UACE,6BAAgC,CAChC,4BACF,CACA,UACE,4BAA+B,CAC/B,2BACF,CACA,UACE,2BAA6B,CAC7B,0BACF,CACA,UACE,6BAA+B,CAC/B,4BACF,CACA,UACE,2BAA6B,CAC7B,0BACF,CACA,aACE,2BAA6B,CAC7B,0BACF,CACA,UACE,sBAAwB,CACxB,yBACF,CACA,UACE,2BAA8B,CAC9B,8BACF,CACA,UACE,0BAA6B,CAC7B,6BACF,CACA,UACE,yBAA2B,CAC3B,4BACF,CACA,UACE,2BAA6B,CAC7B,8BACF,CACA,UACE,yBAA2B,CAC3B,4BACF,CACA,aACE,yBAA2B,CAC3B,4BACF,CACA,UACE,sBACF,CACA,UACE,2BACF,CACA,UACE,0BACF,CACA,UACE,yBACF,CACA,UACE,2BACF,CACA,UACE,yBACF,CACA,aACE,yBACF,CACA,UACE,wBACF,CACA,UACE,6BACF,CACA,UACE,4BACF,CACA,UACE,2BACF,CACA,UACE,6BACF,CACA,UACE,2BACF,CACA,aACE,2BACF,CACA,UACE,yBACF,CACA,UACE,8BACF,CACA,UACE,6BACF,CACA,UACE,4BACF,CACA,UACE,8BACF,CACA,UACE,4BACF,CACA,aACE,4BACF,CACA,UACE,uBACF,CACA,UACE,4BACF,CACA,UACE,2BACF,CACA,UACE,0BACF,CACA,UACE,4BACF,CACA,UACE,0BACF,CACA,aACE,0BACF,CACA,SACE,mBACF,CACA,SACE,wBACF,CACA,SACE,uBACF,CACA,SACE,sBACF,CACA,SACE,wBACF,CACA,SACE,sBACF,CACA,UACE,yBAA2B,CAC3B,wBACF,CACA,UACE,8BAAiC,CACjC,6BACF,CACA,UACE,6BAAgC,CAChC,4BACF,CACA,UACE,4BAA8B,CAC9B,2BACF,CACA,UACE,8BAAgC,CAChC,6BACF,CACA,UACE,4BAA8B,CAC9B,2BACF,CACA,UACE,uBAAyB,CACzB,0BACF,CACA,UACE,4BAA+B,CAC/B,+BACF,CACA,UACE,2BAA8B,CAC9B,8BACF,CACA,UACE,0BAA4B,CAC5B,6BACF,CACA,UACE,4BAA8B,CAC9B,+BACF,CACA,UACE,0BAA4B,CAC5B,6BACF,CACA,UACE,uBACF,CACA,UACE,4BACF,CACA,UACE,2BACF,CACA,UACE,0BACF,CACA,UACE,4BACF,CACA,UACE,0BACF,CACA,UACE,yBACF,CACA,UACE,8BACF,CACA,UACE,6BACF,CACA,UACE,4BACF,CACA,UACE,8BACF,CACA,UACE,4BACF,CACA,UACE,0BACF,CACA,UACE,+BACF,CACA,UACE,8BACF,CACA,UACE,6BACF,CACA,UACE,+BACF,CACA,UACE,6BACF,CACA,UACE,wBACF,CACA,UACE,6BACF,CACA,UACE,4BACF,CACA,UACE,2BACF,CACA,UACE,6BACF,CACA,UACE,2BACF,CACA,WACE,eACF,CACA,WACE,oBACF,CACA,WACE,mBACF,CACA,WACE,kBACF,CACA,WACE,oBACF,CACA,WACE,kBACF,CACA,eACE,mBACF,CACA,eACE,wBACF,CACA,eACE,uBACF,CACA,eACE,sBACF,CACA,eACE,wBACF,CACA,eACE,sBACF,CACA,kBACE,2BAA6B,CAC7B,8BAAgC,CACxB,sBACV,CACA,kBACE,gCAAmC,CACnC,mCAAsC,CAC9B,2BACV,CACA,kBACE,+BAAkC,CAClC,kCAAqC,CAC7B,0BACV,CACA,kBACE,8BAAgC,CAChC,iCAAmC,CAC3B,yBACV,CACA,kBACE,gCAAkC,CAClC,mCAAqC,CAC7B,2BACV,CACA,kBACE,8BAAgC,CAChC,iCAAmC,CAC3B,yBACV,CACA,gBACE,yBACF,CACA,cACE,0BACF,CACA,iBACE,2BACF,CACF,CACA,0BACE,MACE,0BACF,CACA,MACE,wBACF,CACA,MACE,2BACF,CACA,MACE,0BACF,CACF,CACA,aACE,gBACE,wBACF,CACA,sBACE,8BACF,CACA,eACE,uBACF,CACA,cACE,sBACF,CACA,qBACE,6BACF,CACA,eACE,uBACF,CACA,mBACE,2BACF,CACA,oBACE,4BACF,CACA,cACE,6BAA+B,CAC/B,6BAA+B,CAC/B,sBACF,CACA,qBACE,oCAAsC,CACtC,oCAAsC,CACtC,6BACF,CACA,cACE,sBACF,CACF,CAEA,sBACI,6CAAiD,CACjD,iBAAkB,CAClB,aAAc,CACd,eACJ,CACA,uBACI,kBACJ,CACA,0BACI,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,wBAAyB,CACrB,4BAA6B,CACjC,WACJ,CACA,6BAII,SAAU,CAIV,aACJ,CACA,6DATI,wBAAyB,CACzB,YAAa,CACb,WAAY,CAEZ,kBAAmB,CACnB,WAaJ,CATA,gCAII,SAAU,CAGV,eAAgB,CAChB,iBACJ,CACA,wBACI,SAAU,CACV,eACJ,CACA,4BACI,YAAa,CACb,cAAe,CACf,iBAAkB,CAClB,qBAAsB,CACtB,iBACJ,CACA,4BACI,YAAa,CACb,cAAe,CACf,qBAAsB,CACtB,WAAY,CACZ,eAAgB,CAChB,gBACJ,CACA,qBACI,eAAgB,CAChB,eAAgB,CAChB,WAAY,CACZ,UAAW,CACX,kBACJ,CACA,sCACE,iBAAkB,CAChB,QAAS,CACT,UACJ,CACA,sCACE,eAAiB,CACjB,iBAAkB,CAChB,QAAS,CACT,SACJ,CACA,sBACI,yBACJ,CACA,0BACE,iBAAkB,CAClB,eAAgB,CAChB,UAAW,CACX,WAAY,CACZ,WAAY,CACZ,oBAAqB,CACrB,kBAA0B,CAC1B,QAAW,CACX,iBAAkB,CAClB,mBACF,CAEA,cACI,iBAAkB,CAClB,UAAW,CACX,aAAc,CACd,wBAAyB,CACtB,qBAAsB,CACrB,oBAAqB,CACjB,gBACZ,CAEA,8CACI,wBAAyB,CACzB,oBACJ,CAEA,oDACI,yCAA0C,CAClC,iCACZ,CAEA,mCACI,oBAAqB,CACrB,iBAAkB,CAClB,wBAAyB,CACzB,yBAA0B,CAClB,iBAAkB,CAC1B,qBAAsB,CACtB,6BAA8B,CACtB,qBAAsB,CAC9B,UAAW,CACX,WAAY,CACZ,qBAAsB,CACtB,SAAU,CACV,cAAe,CACf,0HAAkI,CAClI,qHAA6H,CAC7H,kHACJ,CAEA,yCACI,8BAA+B,CACvB,sBAAuB,CAC/B,UAAW,CACX,qBAAsB,CACtB,aAAc,CACd,YAAa,CACb,UAAW,CACX,QAAS,CACT,iBAAkB,CAClB,OAAQ,CACR,yCAA0C,CAClC,iCAAkC,CAC1C,SAAU,CACV,4EAAgF,CAChF,oEAAwE,CACxE,+DAAmE,CACnE,4DAAgE,CAChE,sHAA8H,CAC9H,+BAAgC,CACxB,uBACZ,CAEA,sCACI,SAAU,CACV,YAAa,CACb,iBAAkB,CAClB,UAAW,CACX,KAAM,CACN,MAAO,CACP,OAAQ,CACR,QAAS,CACT,QACJ,CAEA,WACI,iBAAkB,CAClB,UAAW,CACX,aAAc,CACd,wBAAyB,CACtB,qBAAsB,CACrB,oBAAqB,CACjB,gBACZ,CAEA,wCACI,wBAAyB,CACzB,oBACJ,CAEA,8CACI,+CAAiD,CACzC,uCACZ,CAEA,6BACI,wBAAyB,CACzB,0BAA2B,CACnB,kBAAmB,CAC3B,UAAW,CACX,WAAY,CACZ,qBAAsB,CACtB,qBAAsB,CACtB,iBAAkB,CAClB,cAAe,CACf,oBAAqB,CACrB,6BAA8B,CACtB,qBACZ,CAEA,mCACI,SAAU,CACV,UAAW,CACX,0BAA2B,CACnB,kBAAmB,CAC3B,qBAAsB,CACtB,UAAW,CACX,iBAAkB,CAClB,QAAS,CACT,OAAQ,CACR,+CAAiD,CACzC,uCAAyC,CACjD,iDAAkD,CAClD,yCAA0C,CAC1C,oCAAqC,CACrC,iCAAkC,CAClC,gEACJ,CAEA,gCACI,SAAU,CACV,YAAa,CACb,iBAAkB,CAClB,UAAW,CACX,KAAM,CACN,MAAO,CACP,OAAQ,CACR,QAAS,CACT,QACJ,CAEA,UACI,oEAAyE,CACzE,cAAe,CACf,eACJ,CAEA,kBACI,iBACJ,CAEA,yCACI,gBACJ,CAEA,uBACI,wBACJ,CAEA,gCACI,wBACJ,CAEA,6BACI,gBACJ,CAEA,sCACI,8BACJ,CAEA,8BACI,cACJ,CAEA,oCACI,aACJ,CAEA,uBACI,aACJ,CAEA,2BACI,aACJ,CAEA,2DAEI,aACJ,CAEA,6BACI,aACJ,CAEA,yBACI,4BAAgC,CAChC,kCAAsC,CACtC,WAAY,CACZ,yBAA0B,CAClB,iBAAkB,CAC1B,2CAA4C,CACpC,mCACZ","file":"app.c220b377967d740c7753a065d8fd4e46.css","sourcesContent":["@charset \"UTF-8\";\n/*!\n * Bootstrap v5.3.0 (https://getbootstrap.com/)\n * Copyright 2011-2023 The Bootstrap Authors\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n */\n:root,\n[data-bs-theme=light] {\n --bs-blue: #0d6efd;\n --bs-indigo: #6610f2;\n --bs-purple: #6f42c1;\n --bs-pink: #d63384;\n --bs-red: #dc3545;\n --bs-orange: #fd7e14;\n --bs-yellow: #ffc107;\n --bs-green: #198754;\n --bs-teal: #20c997;\n --bs-cyan: #0dcaf0;\n --bs-black: #000;\n --bs-white: #fff;\n --bs-gray: #6c757d;\n --bs-gray-dark: #343a40;\n --bs-gray-100: #f8f9fa;\n --bs-gray-200: #e9ecef;\n --bs-gray-300: #dee2e6;\n --bs-gray-400: #ced4da;\n --bs-gray-500: #adb5bd;\n --bs-gray-600: #6c757d;\n --bs-gray-700: #495057;\n --bs-gray-800: #343a40;\n --bs-gray-900: #212529;\n --bs-primary: #0d6efd;\n --bs-secondary: #6c757d;\n --bs-success: #198754;\n --bs-info: #0dcaf0;\n --bs-warning: #ffc107;\n --bs-danger: #dc3545;\n --bs-light: #f8f9fa;\n --bs-dark: #212529;\n --bs-primary-rgb: 13, 110, 253;\n --bs-secondary-rgb: 108, 117, 125;\n --bs-success-rgb: 25, 135, 84;\n --bs-info-rgb: 13, 202, 240;\n --bs-warning-rgb: 255, 193, 7;\n --bs-danger-rgb: 220, 53, 69;\n --bs-light-rgb: 248, 249, 250;\n --bs-dark-rgb: 33, 37, 41;\n --bs-primary-text-emphasis: #052c65;\n --bs-secondary-text-emphasis: #2b2f32;\n --bs-success-text-emphasis: #0a3622;\n --bs-info-text-emphasis: #055160;\n --bs-warning-text-emphasis: #664d03;\n --bs-danger-text-emphasis: #58151c;\n --bs-light-text-emphasis: #495057;\n --bs-dark-text-emphasis: #495057;\n --bs-primary-bg-subtle: #cfe2ff;\n --bs-secondary-bg-subtle: #e2e3e5;\n --bs-success-bg-subtle: #d1e7dd;\n --bs-info-bg-subtle: #cff4fc;\n --bs-warning-bg-subtle: #fff3cd;\n --bs-danger-bg-subtle: #f8d7da;\n --bs-light-bg-subtle: #fcfcfd;\n --bs-dark-bg-subtle: #ced4da;\n --bs-primary-border-subtle: #9ec5fe;\n --bs-secondary-border-subtle: #c4c8cb;\n --bs-success-border-subtle: #a3cfbb;\n --bs-info-border-subtle: #9eeaf9;\n --bs-warning-border-subtle: #ffe69c;\n --bs-danger-border-subtle: #f1aeb5;\n --bs-light-border-subtle: #e9ecef;\n --bs-dark-border-subtle: #adb5bd;\n --bs-white-rgb: 255, 255, 255;\n --bs-black-rgb: 0, 0, 0;\n --bs-font-sans-serif: system-ui, -apple-system, \"Segoe UI\", Roboto, \"Helvetica Neue\", \"Noto Sans\", \"Liberation Sans\", Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));\n --bs-body-font-family: var(--bs-font-sans-serif);\n --bs-body-font-size: 1rem;\n --bs-body-font-weight: 400;\n --bs-body-line-height: 1.5;\n --bs-body-color: #212529;\n --bs-body-color-rgb: 33, 37, 41;\n --bs-body-bg: #fff;\n --bs-body-bg-rgb: 255, 255, 255;\n --bs-emphasis-color: #000;\n --bs-emphasis-color-rgb: 0, 0, 0;\n --bs-secondary-color: rgba(33, 37, 41, 0.75);\n --bs-secondary-color-rgb: 33, 37, 41;\n --bs-secondary-bg: #e9ecef;\n --bs-secondary-bg-rgb: 233, 236, 239;\n --bs-tertiary-color: rgba(33, 37, 41, 0.5);\n --bs-tertiary-color-rgb: 33, 37, 41;\n --bs-tertiary-bg: #f8f9fa;\n --bs-tertiary-bg-rgb: 248, 249, 250;\n --bs-heading-color: inherit;\n --bs-link-color: #0d6efd;\n --bs-link-color-rgb: 13, 110, 253;\n --bs-link-decoration: underline;\n --bs-link-hover-color: #0a58ca;\n --bs-link-hover-color-rgb: 10, 88, 202;\n --bs-code-color: #d63384;\n --bs-highlight-bg: #fff3cd;\n --bs-border-width: 1px;\n --bs-border-style: solid;\n --bs-border-color: #dee2e6;\n --bs-border-color-translucent: rgba(0, 0, 0, 0.175);\n --bs-border-radius: 0.375rem;\n --bs-border-radius-sm: 0.25rem;\n --bs-border-radius-lg: 0.5rem;\n --bs-border-radius-xl: 1rem;\n --bs-border-radius-xxl: 2rem;\n --bs-border-radius-2xl: var(--bs-border-radius-xxl);\n --bs-border-radius-pill: 50rem;\n --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);\n --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);\n --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);\n --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);\n --bs-focus-ring-width: 0.25rem;\n --bs-focus-ring-opacity: 0.25;\n --bs-focus-ring-color: rgba(13, 110, 253, 0.25);\n --bs-form-valid-color: #198754;\n --bs-form-valid-border-color: #198754;\n --bs-form-invalid-color: #dc3545;\n --bs-form-invalid-border-color: #dc3545;\n}\n[data-bs-theme=dark] {\n color-scheme: dark;\n --bs-body-color: #adb5bd;\n --bs-body-color-rgb: 173, 181, 189;\n --bs-body-bg: #212529;\n --bs-body-bg-rgb: 33, 37, 41;\n --bs-emphasis-color: #fff;\n --bs-emphasis-color-rgb: 255, 255, 255;\n --bs-secondary-color: rgba(173, 181, 189, 0.75);\n --bs-secondary-color-rgb: 173, 181, 189;\n --bs-secondary-bg: #343a40;\n --bs-secondary-bg-rgb: 52, 58, 64;\n --bs-tertiary-color: rgba(173, 181, 189, 0.5);\n --bs-tertiary-color-rgb: 173, 181, 189;\n --bs-tertiary-bg: #2b3035;\n --bs-tertiary-bg-rgb: 43, 48, 53;\n --bs-primary-text-emphasis: #6ea8fe;\n --bs-secondary-text-emphasis: #a7acb1;\n --bs-success-text-emphasis: #75b798;\n --bs-info-text-emphasis: #6edff6;\n --bs-warning-text-emphasis: #ffda6a;\n --bs-danger-text-emphasis: #ea868f;\n --bs-light-text-emphasis: #f8f9fa;\n --bs-dark-text-emphasis: #dee2e6;\n --bs-primary-bg-subtle: #031633;\n --bs-secondary-bg-subtle: #161719;\n --bs-success-bg-subtle: #051b11;\n --bs-info-bg-subtle: #032830;\n --bs-warning-bg-subtle: #332701;\n --bs-danger-bg-subtle: #2c0b0e;\n --bs-light-bg-subtle: #343a40;\n --bs-dark-bg-subtle: #1a1d20;\n --bs-primary-border-subtle: #084298;\n --bs-secondary-border-subtle: #41464b;\n --bs-success-border-subtle: #0f5132;\n --bs-info-border-subtle: #087990;\n --bs-warning-border-subtle: #997404;\n --bs-danger-border-subtle: #842029;\n --bs-light-border-subtle: #495057;\n --bs-dark-border-subtle: #343a40;\n --bs-heading-color: inherit;\n --bs-link-color: #6ea8fe;\n --bs-link-hover-color: #8bb9fe;\n --bs-link-color-rgb: 110, 168, 254;\n --bs-link-hover-color-rgb: 139, 185, 254;\n --bs-code-color: #e685b5;\n --bs-border-color: #495057;\n --bs-border-color-translucent: rgba(255, 255, 255, 0.15);\n --bs-form-valid-color: #75b798;\n --bs-form-valid-border-color: #75b798;\n --bs-form-invalid-color: #ea868f;\n --bs-form-invalid-border-color: #ea868f;\n}\n*,\n*::before,\n*::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n@media (prefers-reduced-motion: no-preference) {\n :root {\n scroll-behavior: smooth;\n }\n}\nbody {\n margin: 0;\n font-family: var(--bs-body-font-family);\n font-size: var(--bs-body-font-size);\n font-weight: var(--bs-body-font-weight);\n line-height: var(--bs-body-line-height);\n color: var(--bs-body-color);\n text-align: var(--bs-body-text-align);\n background-color: var(--bs-body-bg);\n -webkit-text-size-adjust: 100%;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\nhr {\n margin: 1rem 0;\n color: inherit;\n border: 0;\n border-top: var(--bs-border-width) solid;\n opacity: 0.25;\n}\nh6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 {\n margin-top: 0;\n margin-bottom: 0.5rem;\n font-weight: 500;\n line-height: 1.2;\n color: var(--bs-heading-color);\n}\nh1, .h1 {\n font-size: calc(1.375rem + 1.5vw);\n}\n@media (min-width: 1200px) {\n h1, .h1 {\n font-size: 2.5rem;\n }\n}\nh2, .h2 {\n font-size: calc(1.325rem + 0.9vw);\n}\n@media (min-width: 1200px) {\n h2, .h2 {\n font-size: 2rem;\n }\n}\nh3, .h3 {\n font-size: calc(1.3rem + 0.6vw);\n}\n@media (min-width: 1200px) {\n h3, .h3 {\n font-size: 1.75rem;\n }\n}\nh4, .h4 {\n font-size: calc(1.275rem + 0.3vw);\n}\n@media (min-width: 1200px) {\n h4, .h4 {\n font-size: 1.5rem;\n }\n}\nh5, .h5 {\n font-size: 1.25rem;\n}\nh6, .h6 {\n font-size: 1rem;\n}\np {\n margin-top: 0;\n margin-bottom: 1rem;\n}\nabbr[title] {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n cursor: help;\n -webkit-text-decoration-skip-ink: none;\n text-decoration-skip-ink: none;\n}\naddress {\n margin-bottom: 1rem;\n font-style: normal;\n line-height: inherit;\n}\nol,\nul {\n padding-left: 2rem;\n}\nol,\nul,\ndl {\n margin-top: 0;\n margin-bottom: 1rem;\n}\nol ol,\nul ul,\nol ul,\nul ol {\n margin-bottom: 0;\n}\ndt {\n font-weight: 700;\n}\ndd {\n margin-bottom: 0.5rem;\n margin-left: 0;\n}\nblockquote {\n margin: 0 0 1rem;\n}\nb,\nstrong {\n font-weight: bolder;\n}\nsmall, .small {\n font-size: 0.875em;\n}\nmark, .mark {\n padding: 0.1875em;\n background-color: var(--bs-highlight-bg);\n}\nsub,\nsup {\n position: relative;\n font-size: 0.75em;\n line-height: 0;\n vertical-align: baseline;\n}\nsub {\n bottom: -0.25em;\n}\nsup {\n top: -0.5em;\n}\na {\n color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1));\n text-decoration: underline;\n}\na:hover {\n --bs-link-color-rgb: var(--bs-link-hover-color-rgb);\n}\na:not([href]):not([class]), a:not([href]):not([class]):hover {\n color: inherit;\n text-decoration: none;\n}\npre,\ncode,\nkbd,\nsamp {\n font-family: var(--bs-font-monospace);\n font-size: 1em;\n}\npre {\n display: block;\n margin-top: 0;\n margin-bottom: 1rem;\n overflow: auto;\n font-size: 0.875em;\n}\npre code {\n font-size: inherit;\n color: inherit;\n word-break: normal;\n}\ncode {\n font-size: 0.875em;\n color: var(--bs-code-color);\n word-wrap: break-word;\n}\na > code {\n color: inherit;\n}\nkbd {\n padding: 0.1875rem 0.375rem;\n font-size: 0.875em;\n color: var(--bs-body-bg);\n background-color: var(--bs-body-color);\n border-radius: 0.25rem;\n}\nkbd kbd {\n padding: 0;\n font-size: 1em;\n}\nfigure {\n margin: 0 0 1rem;\n}\nimg,\nsvg {\n vertical-align: middle;\n}\ntable {\n caption-side: bottom;\n border-collapse: collapse;\n}\ncaption {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n color: var(--bs-secondary-color);\n text-align: left;\n}\nth {\n text-align: inherit;\n text-align: -webkit-match-parent;\n}\nthead,\ntbody,\ntfoot,\ntr,\ntd,\nth {\n border-color: inherit;\n border-style: solid;\n border-width: 0;\n}\nlabel {\n display: inline-block;\n}\nbutton {\n border-radius: 0;\n}\nbutton:focus:not(:focus-visible) {\n outline: 0;\n}\ninput,\nbutton,\nselect,\noptgroup,\ntextarea {\n margin: 0;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\nbutton,\nselect {\n text-transform: none;\n}\n[role=button] {\n cursor: pointer;\n}\nselect {\n word-wrap: normal;\n}\nselect:disabled {\n opacity: 1;\n}\n[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator {\n display: none !important;\n}\nbutton,\n[type=button],\n[type=reset],\n[type=submit] {\n -webkit-appearance: button;\n}\nbutton:not(:disabled),\n[type=button]:not(:disabled),\n[type=reset]:not(:disabled),\n[type=submit]:not(:disabled) {\n cursor: pointer;\n}\n::-moz-focus-inner {\n padding: 0;\n border-style: none;\n}\ntextarea {\n resize: vertical;\n}\nfieldset {\n min-width: 0;\n padding: 0;\n margin: 0;\n border: 0;\n}\nlegend {\n float: left;\n width: 100%;\n padding: 0;\n margin-bottom: 0.5rem;\n font-size: calc(1.275rem + 0.3vw);\n line-height: inherit;\n}\n@media (min-width: 1200px) {\n legend {\n font-size: 1.5rem;\n }\n}\nlegend + * {\n clear: left;\n}\n::-webkit-datetime-edit-fields-wrapper,\n::-webkit-datetime-edit-text,\n::-webkit-datetime-edit-minute,\n::-webkit-datetime-edit-hour-field,\n::-webkit-datetime-edit-day-field,\n::-webkit-datetime-edit-month-field,\n::-webkit-datetime-edit-year-field {\n padding: 0;\n}\n::-webkit-inner-spin-button {\n height: auto;\n}\n[type=search] {\n outline-offset: -2px;\n -webkit-appearance: textfield;\n}\n/* rtl:raw:\n[type=\"tel\"],\n[type=\"url\"],\n[type=\"email\"],\n[type=\"number\"] {\n direction: ltr;\n}\n*/\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n::-webkit-color-swatch-wrapper {\n padding: 0;\n}\n::-webkit-file-upload-button {\n font: inherit;\n -webkit-appearance: button;\n}\n::file-selector-button {\n font: inherit;\n -webkit-appearance: button;\n}\noutput {\n display: inline-block;\n}\niframe {\n border: 0;\n}\nsummary {\n display: list-item;\n cursor: pointer;\n}\nprogress {\n vertical-align: baseline;\n}\n[hidden] {\n display: none !important;\n}\n.lead {\n font-size: 1.25rem;\n font-weight: 300;\n}\n.display-1 {\n font-size: calc(1.625rem + 4.5vw);\n font-weight: 300;\n line-height: 1.2;\n}\n@media (min-width: 1200px) {\n .display-1 {\n font-size: 5rem;\n }\n}\n.display-2 {\n font-size: calc(1.575rem + 3.9vw);\n font-weight: 300;\n line-height: 1.2;\n}\n@media (min-width: 1200px) {\n .display-2 {\n font-size: 4.5rem;\n }\n}\n.display-3 {\n font-size: calc(1.525rem + 3.3vw);\n font-weight: 300;\n line-height: 1.2;\n}\n@media (min-width: 1200px) {\n .display-3 {\n font-size: 4rem;\n }\n}\n.display-4 {\n font-size: calc(1.475rem + 2.7vw);\n font-weight: 300;\n line-height: 1.2;\n}\n@media (min-width: 1200px) {\n .display-4 {\n font-size: 3.5rem;\n }\n}\n.display-5 {\n font-size: calc(1.425rem + 2.1vw);\n font-weight: 300;\n line-height: 1.2;\n}\n@media (min-width: 1200px) {\n .display-5 {\n font-size: 3rem;\n }\n}\n.display-6 {\n font-size: calc(1.375rem + 1.5vw);\n font-weight: 300;\n line-height: 1.2;\n}\n@media (min-width: 1200px) {\n .display-6 {\n font-size: 2.5rem;\n }\n}\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n.list-inline {\n padding-left: 0;\n list-style: none;\n}\n.list-inline-item {\n display: inline-block;\n}\n.list-inline-item:not(:last-child) {\n margin-right: 0.5rem;\n}\n.initialism {\n font-size: 0.875em;\n text-transform: uppercase;\n}\n.blockquote {\n margin-bottom: 1rem;\n font-size: 1.25rem;\n}\n.blockquote > :last-child {\n margin-bottom: 0;\n}\n.blockquote-footer {\n margin-top: -1rem;\n margin-bottom: 1rem;\n font-size: 0.875em;\n color: #6c757d;\n}\n.blockquote-footer::before {\n content: \"\\2014\\A0\";\n}\n.img-fluid {\n max-width: 100%;\n height: auto;\n}\n.img-thumbnail {\n padding: 0.25rem;\n background-color: var(--bs-body-bg);\n border: var(--bs-border-width) solid var(--bs-border-color);\n border-radius: var(--bs-border-radius);\n max-width: 100%;\n height: auto;\n}\n.figure {\n display: inline-block;\n}\n.figure-img {\n margin-bottom: 0.5rem;\n line-height: 1;\n}\n.figure-caption {\n font-size: 0.875em;\n color: var(--bs-secondary-color);\n}\n.container,\n.container-fluid,\n.container-xxl,\n.container-xl,\n.container-lg,\n.container-md,\n.container-sm {\n --bs-gutter-x: 1.5rem;\n --bs-gutter-y: 0;\n width: 100%;\n padding-right: calc(var(--bs-gutter-x) * 0.5);\n padding-left: calc(var(--bs-gutter-x) * 0.5);\n margin-right: auto;\n margin-left: auto;\n}\n@media (min-width: 576px) {\n .container-sm, .container {\n max-width: 540px;\n }\n}\n@media (min-width: 768px) {\n .container-md, .container-sm, .container {\n max-width: 720px;\n }\n}\n@media (min-width: 992px) {\n .container-lg, .container-md, .container-sm, .container {\n max-width: 960px;\n }\n}\n@media (min-width: 1200px) {\n .container-xl, .container-lg, .container-md, .container-sm, .container {\n max-width: 1140px;\n }\n}\n@media (min-width: 1400px) {\n .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {\n max-width: 1320px;\n }\n}\n:root {\n --bs-breakpoint-xs: 0;\n --bs-breakpoint-sm: 576px;\n --bs-breakpoint-md: 768px;\n --bs-breakpoint-lg: 992px;\n --bs-breakpoint-xl: 1200px;\n --bs-breakpoint-xxl: 1400px;\n}\n.row {\n --bs-gutter-x: 1.5rem;\n --bs-gutter-y: 0;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n margin-top: calc(-1 * var(--bs-gutter-y));\n margin-right: calc(-0.5 * var(--bs-gutter-x));\n margin-left: calc(-0.5 * var(--bs-gutter-x));\n}\n.row > * {\n -ms-flex-negative: 0;\n flex-shrink: 0;\n width: 100%;\n max-width: 100%;\n padding-right: calc(var(--bs-gutter-x) * 0.5);\n padding-left: calc(var(--bs-gutter-x) * 0.5);\n margin-top: var(--bs-gutter-y);\n}\n.col {\n -webkit-box-flex: 1;\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n}\n.row-cols-auto > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n}\n.row-cols-1 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n}\n.row-cols-2 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n}\n.row-cols-3 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.3333333333%;\n}\n.row-cols-4 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n}\n.row-cols-5 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 20%;\n}\n.row-cols-6 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.6666666667%;\n}\n.col-auto {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n}\n.col-1 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 8.33333333%;\n}\n.col-2 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.66666667%;\n}\n.col-3 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n}\n.col-4 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.33333333%;\n}\n.col-5 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 41.66666667%;\n}\n.col-6 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n}\n.col-7 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 58.33333333%;\n}\n.col-8 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 66.66666667%;\n}\n.col-9 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 75%;\n}\n.col-10 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 83.33333333%;\n}\n.col-11 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 91.66666667%;\n}\n.col-12 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n}\n.offset-1 {\n margin-left: 8.33333333%;\n}\n.offset-2 {\n margin-left: 16.66666667%;\n}\n.offset-3 {\n margin-left: 25%;\n}\n.offset-4 {\n margin-left: 33.33333333%;\n}\n.offset-5 {\n margin-left: 41.66666667%;\n}\n.offset-6 {\n margin-left: 50%;\n}\n.offset-7 {\n margin-left: 58.33333333%;\n}\n.offset-8 {\n margin-left: 66.66666667%;\n}\n.offset-9 {\n margin-left: 75%;\n}\n.offset-10 {\n margin-left: 83.33333333%;\n}\n.offset-11 {\n margin-left: 91.66666667%;\n}\n.g-0,\n.gx-0 {\n --bs-gutter-x: 0;\n}\n.g-0,\n.gy-0 {\n --bs-gutter-y: 0;\n}\n.g-1,\n.gx-1 {\n --bs-gutter-x: 0.25rem;\n}\n.g-1,\n.gy-1 {\n --bs-gutter-y: 0.25rem;\n}\n.g-2,\n.gx-2 {\n --bs-gutter-x: 0.5rem;\n}\n.g-2,\n.gy-2 {\n --bs-gutter-y: 0.5rem;\n}\n.g-3,\n.gx-3 {\n --bs-gutter-x: 1rem;\n}\n.g-3,\n.gy-3 {\n --bs-gutter-y: 1rem;\n}\n.g-4,\n.gx-4 {\n --bs-gutter-x: 1.5rem;\n}\n.g-4,\n.gy-4 {\n --bs-gutter-y: 1.5rem;\n}\n.g-5,\n.gx-5 {\n --bs-gutter-x: 3rem;\n}\n.g-5,\n.gy-5 {\n --bs-gutter-y: 3rem;\n}\n@media (min-width: 576px) {\n .col-sm {\n -webkit-box-flex: 1;\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n }\n .row-cols-sm-auto > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-sm-1 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-sm-2 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-sm-3 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-sm-4 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-sm-5 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-sm-6 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-sm-auto {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .col-sm-1 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-sm-2 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-sm-3 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .col-sm-4 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-sm-5 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-sm-6 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .col-sm-7 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-sm-8 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-sm-9 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 75%;\n }\n .col-sm-10 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-sm-11 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-sm-12 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-sm-0 {\n margin-left: 0;\n }\n .offset-sm-1 {\n margin-left: 8.33333333%;\n }\n .offset-sm-2 {\n margin-left: 16.66666667%;\n }\n .offset-sm-3 {\n margin-left: 25%;\n }\n .offset-sm-4 {\n margin-left: 33.33333333%;\n }\n .offset-sm-5 {\n margin-left: 41.66666667%;\n }\n .offset-sm-6 {\n margin-left: 50%;\n }\n .offset-sm-7 {\n margin-left: 58.33333333%;\n }\n .offset-sm-8 {\n margin-left: 66.66666667%;\n }\n .offset-sm-9 {\n margin-left: 75%;\n }\n .offset-sm-10 {\n margin-left: 83.33333333%;\n }\n .offset-sm-11 {\n margin-left: 91.66666667%;\n }\n .g-sm-0,\n .gx-sm-0 {\n --bs-gutter-x: 0;\n }\n .g-sm-0,\n .gy-sm-0 {\n --bs-gutter-y: 0;\n }\n .g-sm-1,\n .gx-sm-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-sm-1,\n .gy-sm-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-sm-2,\n .gx-sm-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-sm-2,\n .gy-sm-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-sm-3,\n .gx-sm-3 {\n --bs-gutter-x: 1rem;\n }\n .g-sm-3,\n .gy-sm-3 {\n --bs-gutter-y: 1rem;\n }\n .g-sm-4,\n .gx-sm-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-sm-4,\n .gy-sm-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-sm-5,\n .gx-sm-5 {\n --bs-gutter-x: 3rem;\n }\n .g-sm-5,\n .gy-sm-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 768px) {\n .col-md {\n -webkit-box-flex: 1;\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n }\n .row-cols-md-auto > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-md-1 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-md-2 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-md-3 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-md-4 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-md-5 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-md-6 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-md-auto {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .col-md-1 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-md-2 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-md-3 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .col-md-4 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-md-5 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-md-6 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .col-md-7 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-md-8 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-md-9 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 75%;\n }\n .col-md-10 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-md-11 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-md-12 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-md-0 {\n margin-left: 0;\n }\n .offset-md-1 {\n margin-left: 8.33333333%;\n }\n .offset-md-2 {\n margin-left: 16.66666667%;\n }\n .offset-md-3 {\n margin-left: 25%;\n }\n .offset-md-4 {\n margin-left: 33.33333333%;\n }\n .offset-md-5 {\n margin-left: 41.66666667%;\n }\n .offset-md-6 {\n margin-left: 50%;\n }\n .offset-md-7 {\n margin-left: 58.33333333%;\n }\n .offset-md-8 {\n margin-left: 66.66666667%;\n }\n .offset-md-9 {\n margin-left: 75%;\n }\n .offset-md-10 {\n margin-left: 83.33333333%;\n }\n .offset-md-11 {\n margin-left: 91.66666667%;\n }\n .g-md-0,\n .gx-md-0 {\n --bs-gutter-x: 0;\n }\n .g-md-0,\n .gy-md-0 {\n --bs-gutter-y: 0;\n }\n .g-md-1,\n .gx-md-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-md-1,\n .gy-md-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-md-2,\n .gx-md-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-md-2,\n .gy-md-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-md-3,\n .gx-md-3 {\n --bs-gutter-x: 1rem;\n }\n .g-md-3,\n .gy-md-3 {\n --bs-gutter-y: 1rem;\n }\n .g-md-4,\n .gx-md-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-md-4,\n .gy-md-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-md-5,\n .gx-md-5 {\n --bs-gutter-x: 3rem;\n }\n .g-md-5,\n .gy-md-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 992px) {\n .col-lg {\n -webkit-box-flex: 1;\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n }\n .row-cols-lg-auto > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-lg-1 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-lg-2 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-lg-3 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-lg-4 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-lg-5 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-lg-6 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-lg-auto {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .col-lg-1 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-lg-2 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-lg-3 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .col-lg-4 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-lg-5 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-lg-6 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .col-lg-7 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-lg-8 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-lg-9 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 75%;\n }\n .col-lg-10 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-lg-11 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-lg-12 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-lg-0 {\n margin-left: 0;\n }\n .offset-lg-1 {\n margin-left: 8.33333333%;\n }\n .offset-lg-2 {\n margin-left: 16.66666667%;\n }\n .offset-lg-3 {\n margin-left: 25%;\n }\n .offset-lg-4 {\n margin-left: 33.33333333%;\n }\n .offset-lg-5 {\n margin-left: 41.66666667%;\n }\n .offset-lg-6 {\n margin-left: 50%;\n }\n .offset-lg-7 {\n margin-left: 58.33333333%;\n }\n .offset-lg-8 {\n margin-left: 66.66666667%;\n }\n .offset-lg-9 {\n margin-left: 75%;\n }\n .offset-lg-10 {\n margin-left: 83.33333333%;\n }\n .offset-lg-11 {\n margin-left: 91.66666667%;\n }\n .g-lg-0,\n .gx-lg-0 {\n --bs-gutter-x: 0;\n }\n .g-lg-0,\n .gy-lg-0 {\n --bs-gutter-y: 0;\n }\n .g-lg-1,\n .gx-lg-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-lg-1,\n .gy-lg-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-lg-2,\n .gx-lg-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-lg-2,\n .gy-lg-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-lg-3,\n .gx-lg-3 {\n --bs-gutter-x: 1rem;\n }\n .g-lg-3,\n .gy-lg-3 {\n --bs-gutter-y: 1rem;\n }\n .g-lg-4,\n .gx-lg-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-lg-4,\n .gy-lg-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-lg-5,\n .gx-lg-5 {\n --bs-gutter-x: 3rem;\n }\n .g-lg-5,\n .gy-lg-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 1200px) {\n .col-xl {\n -webkit-box-flex: 1;\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n }\n .row-cols-xl-auto > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-xl-1 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-xl-2 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-xl-3 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-xl-4 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-xl-5 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-xl-6 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-xl-auto {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .col-xl-1 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-xl-2 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-xl-3 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .col-xl-4 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-xl-5 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-xl-6 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .col-xl-7 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-xl-8 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-xl-9 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 75%;\n }\n .col-xl-10 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-xl-11 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-xl-12 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-xl-0 {\n margin-left: 0;\n }\n .offset-xl-1 {\n margin-left: 8.33333333%;\n }\n .offset-xl-2 {\n margin-left: 16.66666667%;\n }\n .offset-xl-3 {\n margin-left: 25%;\n }\n .offset-xl-4 {\n margin-left: 33.33333333%;\n }\n .offset-xl-5 {\n margin-left: 41.66666667%;\n }\n .offset-xl-6 {\n margin-left: 50%;\n }\n .offset-xl-7 {\n margin-left: 58.33333333%;\n }\n .offset-xl-8 {\n margin-left: 66.66666667%;\n }\n .offset-xl-9 {\n margin-left: 75%;\n }\n .offset-xl-10 {\n margin-left: 83.33333333%;\n }\n .offset-xl-11 {\n margin-left: 91.66666667%;\n }\n .g-xl-0,\n .gx-xl-0 {\n --bs-gutter-x: 0;\n }\n .g-xl-0,\n .gy-xl-0 {\n --bs-gutter-y: 0;\n }\n .g-xl-1,\n .gx-xl-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-xl-1,\n .gy-xl-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-xl-2,\n .gx-xl-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-xl-2,\n .gy-xl-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-xl-3,\n .gx-xl-3 {\n --bs-gutter-x: 1rem;\n }\n .g-xl-3,\n .gy-xl-3 {\n --bs-gutter-y: 1rem;\n }\n .g-xl-4,\n .gx-xl-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-xl-4,\n .gy-xl-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-xl-5,\n .gx-xl-5 {\n --bs-gutter-x: 3rem;\n }\n .g-xl-5,\n .gy-xl-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 1400px) {\n .col-xxl {\n -webkit-box-flex: 1;\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n }\n .row-cols-xxl-auto > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-xxl-1 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-xxl-2 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-xxl-3 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-xxl-4 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-xxl-5 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-xxl-6 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-xxl-auto {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .col-xxl-1 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-xxl-2 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-xxl-3 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .col-xxl-4 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-xxl-5 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-xxl-6 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .col-xxl-7 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-xxl-8 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-xxl-9 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 75%;\n }\n .col-xxl-10 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-xxl-11 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-xxl-12 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-xxl-0 {\n margin-left: 0;\n }\n .offset-xxl-1 {\n margin-left: 8.33333333%;\n }\n .offset-xxl-2 {\n margin-left: 16.66666667%;\n }\n .offset-xxl-3 {\n margin-left: 25%;\n }\n .offset-xxl-4 {\n margin-left: 33.33333333%;\n }\n .offset-xxl-5 {\n margin-left: 41.66666667%;\n }\n .offset-xxl-6 {\n margin-left: 50%;\n }\n .offset-xxl-7 {\n margin-left: 58.33333333%;\n }\n .offset-xxl-8 {\n margin-left: 66.66666667%;\n }\n .offset-xxl-9 {\n margin-left: 75%;\n }\n .offset-xxl-10 {\n margin-left: 83.33333333%;\n }\n .offset-xxl-11 {\n margin-left: 91.66666667%;\n }\n .g-xxl-0,\n .gx-xxl-0 {\n --bs-gutter-x: 0;\n }\n .g-xxl-0,\n .gy-xxl-0 {\n --bs-gutter-y: 0;\n }\n .g-xxl-1,\n .gx-xxl-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-xxl-1,\n .gy-xxl-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-xxl-2,\n .gx-xxl-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-xxl-2,\n .gy-xxl-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-xxl-3,\n .gx-xxl-3 {\n --bs-gutter-x: 1rem;\n }\n .g-xxl-3,\n .gy-xxl-3 {\n --bs-gutter-y: 1rem;\n }\n .g-xxl-4,\n .gx-xxl-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-xxl-4,\n .gy-xxl-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-xxl-5,\n .gx-xxl-5 {\n --bs-gutter-x: 3rem;\n }\n .g-xxl-5,\n .gy-xxl-5 {\n --bs-gutter-y: 3rem;\n }\n}\n.table {\n --bs-table-color-type: initial;\n --bs-table-bg-type: initial;\n --bs-table-color-state: initial;\n --bs-table-bg-state: initial;\n --bs-table-color: var(--bs-body-color);\n --bs-table-bg: var(--bs-body-bg);\n --bs-table-border-color: var(--bs-border-color);\n --bs-table-accent-bg: transparent;\n --bs-table-striped-color: var(--bs-body-color);\n --bs-table-striped-bg: rgba(0, 0, 0, 0.05);\n --bs-table-active-color: var(--bs-body-color);\n --bs-table-active-bg: rgba(0, 0, 0, 0.1);\n --bs-table-hover-color: var(--bs-body-color);\n --bs-table-hover-bg: rgba(0, 0, 0, 0.075);\n width: 100%;\n margin-bottom: 1rem;\n vertical-align: top;\n border-color: var(--bs-table-border-color);\n}\n.table > :not(caption) > * > * {\n padding: 0.5rem 0.5rem;\n color: var(--bs-table-color-state, var(--bs-table-color-type, var(--bs-table-color)));\n background-color: var(--bs-table-bg);\n border-bottom-width: var(--bs-border-width);\n -webkit-box-shadow: inset 0 0 0 9999px var(--bs-table-bg-state, var(--bs-table-bg-type, var(--bs-table-accent-bg)));\n box-shadow: inset 0 0 0 9999px var(--bs-table-bg-state, var(--bs-table-bg-type, var(--bs-table-accent-bg)));\n}\n.table > tbody {\n vertical-align: inherit;\n}\n.table > thead {\n vertical-align: bottom;\n}\n.table-group-divider {\n border-top: calc(var(--bs-border-width) * 2) solid currentcolor;\n}\n.caption-top {\n caption-side: top;\n}\n.table-sm > :not(caption) > * > * {\n padding: 0.25rem 0.25rem;\n}\n.table-bordered > :not(caption) > * {\n border-width: var(--bs-border-width) 0;\n}\n.table-bordered > :not(caption) > * > * {\n border-width: 0 var(--bs-border-width);\n}\n.table-borderless > :not(caption) > * > * {\n border-bottom-width: 0;\n}\n.table-borderless > :not(:first-child) {\n border-top-width: 0;\n}\n.table-striped > tbody > tr:nth-of-type(odd) > * {\n --bs-table-color-type: var(--bs-table-striped-color);\n --bs-table-bg-type: var(--bs-table-striped-bg);\n}\n.table-striped-columns > :not(caption) > tr > :nth-child(even) {\n --bs-table-color-type: var(--bs-table-striped-color);\n --bs-table-bg-type: var(--bs-table-striped-bg);\n}\n.table-active {\n --bs-table-color-state: var(--bs-table-active-color);\n --bs-table-bg-state: var(--bs-table-active-bg);\n}\n.table-hover > tbody > tr:hover > * {\n --bs-table-color-state: var(--bs-table-hover-color);\n --bs-table-bg-state: var(--bs-table-hover-bg);\n}\n.table-primary {\n --bs-table-color: #000;\n --bs-table-bg: #cfe2ff;\n --bs-table-border-color: #bacbe6;\n --bs-table-striped-bg: #c5d7f2;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #bacbe6;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #bfd1ec;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n.table-secondary {\n --bs-table-color: #000;\n --bs-table-bg: #e2e3e5;\n --bs-table-border-color: #cbccce;\n --bs-table-striped-bg: #d7d8da;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #cbccce;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #d1d2d4;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n.table-success {\n --bs-table-color: #000;\n --bs-table-bg: #d1e7dd;\n --bs-table-border-color: #bcd0c7;\n --bs-table-striped-bg: #c7dbd2;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #bcd0c7;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #c1d6cc;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n.table-info {\n --bs-table-color: #000;\n --bs-table-bg: #cff4fc;\n --bs-table-border-color: #badce3;\n --bs-table-striped-bg: #c5e8ef;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #badce3;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #bfe2e9;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n.table-warning {\n --bs-table-color: #000;\n --bs-table-bg: #fff3cd;\n --bs-table-border-color: #e6dbb9;\n --bs-table-striped-bg: #f2e7c3;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #e6dbb9;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #ece1be;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n.table-danger {\n --bs-table-color: #000;\n --bs-table-bg: #f8d7da;\n --bs-table-border-color: #dfc2c4;\n --bs-table-striped-bg: #eccccf;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #dfc2c4;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #e5c7ca;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n.table-light {\n --bs-table-color: #000;\n --bs-table-bg: #f8f9fa;\n --bs-table-border-color: #dfe0e1;\n --bs-table-striped-bg: #ecedee;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #dfe0e1;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #e5e6e7;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n.table-dark {\n --bs-table-color: #fff;\n --bs-table-bg: #212529;\n --bs-table-border-color: #373b3e;\n --bs-table-striped-bg: #2c3034;\n --bs-table-striped-color: #fff;\n --bs-table-active-bg: #373b3e;\n --bs-table-active-color: #fff;\n --bs-table-hover-bg: #323539;\n --bs-table-hover-color: #fff;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n.table-responsive {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n}\n@media (max-width: 575.98px) {\n .table-responsive-sm {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 767.98px) {\n .table-responsive-md {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 991.98px) {\n .table-responsive-lg {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 1199.98px) {\n .table-responsive-xl {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 1399.98px) {\n .table-responsive-xxl {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n.form-label {\n margin-bottom: 0.5rem;\n}\n.col-form-label {\n padding-top: calc(0.375rem + var(--bs-border-width));\n padding-bottom: calc(0.375rem + var(--bs-border-width));\n margin-bottom: 0;\n font-size: inherit;\n line-height: 1.5;\n}\n.col-form-label-lg {\n padding-top: calc(0.5rem + var(--bs-border-width));\n padding-bottom: calc(0.5rem + var(--bs-border-width));\n font-size: 1.25rem;\n}\n.col-form-label-sm {\n padding-top: calc(0.25rem + var(--bs-border-width));\n padding-bottom: calc(0.25rem + var(--bs-border-width));\n font-size: 0.875rem;\n}\n.form-text {\n margin-top: 0.25rem;\n font-size: 0.875em;\n color: var(--bs-secondary-color);\n}\n.form-control {\n display: block;\n width: 100%;\n padding: 0.375rem 0.75rem;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: var(--bs-body-color);\n background-color: var(--bs-body-bg);\n background-clip: padding-box;\n border: var(--bs-border-width) solid var(--bs-border-color);\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n border-radius: var(--bs-border-radius);\n -webkit-transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-control {\n -webkit-transition: none;\n transition: none;\n }\n}\n.form-control[type=file] {\n overflow: hidden;\n}\n.form-control[type=file]:not(:disabled):not([readonly]) {\n cursor: pointer;\n}\n.form-control:focus {\n color: var(--bs-body-color);\n background-color: var(--bs-body-bg);\n border-color: #86b7fe;\n outline: 0;\n -webkit-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.form-control::-webkit-date-and-time-value {\n min-width: 85px;\n height: 1.5em;\n margin: 0;\n}\n.form-control::-webkit-datetime-edit {\n display: block;\n padding: 0;\n}\n.form-control::-moz-placeholder {\n color: var(--bs-secondary-color);\n opacity: 1;\n}\n.form-control::-webkit-input-placeholder {\n color: var(--bs-secondary-color);\n opacity: 1;\n}\n.form-control::-ms-input-placeholder {\n color: var(--bs-secondary-color);\n opacity: 1;\n}\n.form-control::placeholder {\n color: var(--bs-secondary-color);\n opacity: 1;\n}\n.form-control:disabled {\n background-color: var(--bs-secondary-bg);\n opacity: 1;\n}\n.form-control::-webkit-file-upload-button {\n padding: 0.375rem 0.75rem;\n margin: -0.375rem -0.75rem;\n -webkit-margin-end: 0.75rem;\n margin-inline-end: 0.75rem;\n color: var(--bs-body-color);\n background-color: var(--bs-tertiary-bg);\n pointer-events: none;\n border-color: inherit;\n border-style: solid;\n border-width: 0;\n border-inline-end-width: var(--bs-border-width);\n border-radius: 0;\n -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n}\n.form-control::file-selector-button {\n padding: 0.375rem 0.75rem;\n margin: -0.375rem -0.75rem;\n -webkit-margin-end: 0.75rem;\n margin-inline-end: 0.75rem;\n color: var(--bs-body-color);\n background-color: var(--bs-tertiary-bg);\n pointer-events: none;\n border-color: inherit;\n border-style: solid;\n border-width: 0;\n border-inline-end-width: var(--bs-border-width);\n border-radius: 0;\n -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-control::-webkit-file-upload-button {\n -webkit-transition: none;\n transition: none;\n }\n .form-control::file-selector-button {\n -webkit-transition: none;\n transition: none;\n }\n}\n.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {\n background-color: var(--bs-secondary-bg);\n}\n.form-control:hover:not(:disabled):not([readonly])::file-selector-button {\n background-color: var(--bs-secondary-bg);\n}\n.form-control-plaintext {\n display: block;\n width: 100%;\n padding: 0.375rem 0;\n margin-bottom: 0;\n line-height: 1.5;\n color: var(--bs-body-color);\n background-color: transparent;\n border: solid transparent;\n border-width: var(--bs-border-width) 0;\n}\n.form-control-plaintext:focus {\n outline: 0;\n}\n.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {\n padding-right: 0;\n padding-left: 0;\n}\n.form-control-sm {\n min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n border-radius: var(--bs-border-radius-sm);\n}\n.form-control-sm::-webkit-file-upload-button {\n padding: 0.25rem 0.5rem;\n margin: -0.25rem -0.5rem;\n -webkit-margin-end: 0.5rem;\n margin-inline-end: 0.5rem;\n}\n.form-control-sm::file-selector-button {\n padding: 0.25rem 0.5rem;\n margin: -0.25rem -0.5rem;\n -webkit-margin-end: 0.5rem;\n margin-inline-end: 0.5rem;\n}\n.form-control-lg {\n min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n border-radius: var(--bs-border-radius-lg);\n}\n.form-control-lg::-webkit-file-upload-button {\n padding: 0.5rem 1rem;\n margin: -0.5rem -1rem;\n -webkit-margin-end: 1rem;\n margin-inline-end: 1rem;\n}\n.form-control-lg::file-selector-button {\n padding: 0.5rem 1rem;\n margin: -0.5rem -1rem;\n -webkit-margin-end: 1rem;\n margin-inline-end: 1rem;\n}\ntextarea.form-control {\n min-height: calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2));\n}\ntextarea.form-control-sm {\n min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));\n}\ntextarea.form-control-lg {\n min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));\n}\n.form-control-color {\n width: 3rem;\n height: calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2));\n padding: 0.375rem;\n}\n.form-control-color:not(:disabled):not([readonly]) {\n cursor: pointer;\n}\n.form-control-color::-moz-color-swatch {\n border: 0 !important;\n border-radius: var(--bs-border-radius);\n}\n.form-control-color::-webkit-color-swatch {\n border: 0 !important;\n border-radius: var(--bs-border-radius);\n}\n.form-control-color.form-control-sm {\n height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));\n}\n.form-control-color.form-control-lg {\n height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));\n}\n.form-select {\n --bs-form-select-bg-img: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e\");\n display: block;\n width: 100%;\n padding: 0.375rem 2.25rem 0.375rem 0.75rem;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: var(--bs-body-color);\n background-color: var(--bs-body-bg);\n background-image: var(--bs-form-select-bg-img), var(--bs-form-select-bg-icon, none);\n background-repeat: no-repeat;\n background-position: right 0.75rem center;\n background-size: 16px 12px;\n border: var(--bs-border-width) solid var(--bs-border-color);\n border-radius: var(--bs-border-radius);\n -webkit-transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-select {\n -webkit-transition: none;\n transition: none;\n }\n}\n.form-select:focus {\n border-color: #86b7fe;\n outline: 0;\n -webkit-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.form-select[multiple], .form-select[size]:not([size=\"1\"]) {\n padding-right: 0.75rem;\n background-image: none;\n}\n.form-select:disabled {\n background-color: var(--bs-secondary-bg);\n}\n.form-select:-moz-focusring {\n color: transparent;\n text-shadow: 0 0 0 var(--bs-body-color);\n}\n.form-select-sm {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n padding-left: 0.5rem;\n font-size: 0.875rem;\n border-radius: var(--bs-border-radius-sm);\n}\n.form-select-lg {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n padding-left: 1rem;\n font-size: 1.25rem;\n border-radius: var(--bs-border-radius-lg);\n}\n[data-bs-theme=dark] .form-select {\n --bs-form-select-bg-img: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23adb5bd' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e\");\n}\n.form-check {\n display: block;\n min-height: 1.5rem;\n padding-left: 1.5em;\n margin-bottom: 0.125rem;\n}\n.form-check .form-check-input {\n float: left;\n margin-left: -1.5em;\n}\n.form-check-reverse {\n padding-right: 1.5em;\n padding-left: 0;\n text-align: right;\n}\n.form-check-reverse .form-check-input {\n float: right;\n margin-right: -1.5em;\n margin-left: 0;\n}\n.form-check-input {\n --bs-form-check-bg: var(--bs-body-bg);\n width: 1em;\n height: 1em;\n margin-top: 0.25em;\n vertical-align: top;\n background-color: var(--bs-form-check-bg);\n background-image: var(--bs-form-check-bg-image);\n background-repeat: no-repeat;\n background-position: center;\n background-size: contain;\n border: var(--bs-border-width) solid var(--bs-border-color);\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n -webkit-print-color-adjust: exact;\n color-adjust: exact;\n print-color-adjust: exact;\n}\n.form-check-input[type=checkbox] {\n border-radius: 0.25em;\n}\n.form-check-input[type=radio] {\n border-radius: 50%;\n}\n.form-check-input:active {\n -webkit-filter: brightness(90%);\n filter: brightness(90%);\n}\n.form-check-input:focus {\n border-color: #86b7fe;\n outline: 0;\n -webkit-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.form-check-input:checked {\n background-color: #0d6efd;\n border-color: #0d6efd;\n}\n.form-check-input:checked[type=checkbox] {\n --bs-form-check-bg-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e\");\n}\n.form-check-input:checked[type=radio] {\n --bs-form-check-bg-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e\");\n}\n.form-check-input[type=checkbox]:indeterminate {\n background-color: #0d6efd;\n border-color: #0d6efd;\n --bs-form-check-bg-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e\");\n}\n.form-check-input:disabled {\n pointer-events: none;\n -webkit-filter: none;\n filter: none;\n opacity: 0.5;\n}\n.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {\n cursor: default;\n opacity: 0.5;\n}\n.form-switch {\n padding-left: 2.5em;\n}\n.form-switch .form-check-input {\n --bs-form-switch-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e\");\n width: 2em;\n margin-left: -2.5em;\n background-image: var(--bs-form-switch-bg);\n background-position: left center;\n border-radius: 2em;\n -webkit-transition: background-position 0.15s ease-in-out;\n transition: background-position 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-switch .form-check-input {\n -webkit-transition: none;\n transition: none;\n }\n}\n.form-switch .form-check-input:focus {\n --bs-form-switch-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e\");\n}\n.form-switch .form-check-input:checked {\n background-position: right center;\n --bs-form-switch-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e\");\n}\n.form-switch.form-check-reverse {\n padding-right: 2.5em;\n padding-left: 0;\n}\n.form-switch.form-check-reverse .form-check-input {\n margin-right: -2.5em;\n margin-left: 0;\n}\n.form-check-inline {\n display: inline-block;\n margin-right: 1rem;\n}\n.btn-check {\n position: absolute;\n clip: rect(0, 0, 0, 0);\n pointer-events: none;\n}\n.btn-check[disabled] + .btn, .btn-check:disabled + .btn {\n pointer-events: none;\n -webkit-filter: none;\n filter: none;\n opacity: 0.65;\n}\n[data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus) {\n --bs-form-switch-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255, 255, 255, 0.25%29'/%3e%3c/svg%3e\");\n}\n.form-range {\n width: 100%;\n height: 1.5rem;\n padding: 0;\n background-color: transparent;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n.form-range:focus {\n outline: 0;\n}\n.form-range:focus::-webkit-slider-thumb {\n -webkit-box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.form-range:focus::-moz-range-thumb {\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.form-range::-moz-focus-outer {\n border: 0;\n}\n.form-range::-webkit-slider-thumb {\n width: 1rem;\n height: 1rem;\n margin-top: -0.25rem;\n background-color: #0d6efd;\n border: 0;\n border-radius: 1rem;\n -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n -webkit-appearance: none;\n appearance: none;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-range::-webkit-slider-thumb {\n -webkit-transition: none;\n transition: none;\n }\n}\n.form-range::-webkit-slider-thumb:active {\n background-color: #b6d4fe;\n}\n.form-range::-webkit-slider-runnable-track {\n width: 100%;\n height: 0.5rem;\n color: transparent;\n cursor: pointer;\n background-color: var(--bs-tertiary-bg);\n border-color: transparent;\n border-radius: 1rem;\n}\n.form-range::-moz-range-thumb {\n width: 1rem;\n height: 1rem;\n background-color: #0d6efd;\n border: 0;\n border-radius: 1rem;\n -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n -moz-appearance: none;\n appearance: none;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-range::-moz-range-thumb {\n -webkit-transition: none;\n transition: none;\n }\n}\n.form-range::-moz-range-thumb:active {\n background-color: #b6d4fe;\n}\n.form-range::-moz-range-track {\n width: 100%;\n height: 0.5rem;\n color: transparent;\n cursor: pointer;\n background-color: var(--bs-tertiary-bg);\n border-color: transparent;\n border-radius: 1rem;\n}\n.form-range:disabled {\n pointer-events: none;\n}\n.form-range:disabled::-webkit-slider-thumb {\n background-color: var(--bs-secondary-color);\n}\n.form-range:disabled::-moz-range-thumb {\n background-color: var(--bs-secondary-color);\n}\n.form-floating {\n position: relative;\n}\n.form-floating > .form-control,\n.form-floating > .form-control-plaintext,\n.form-floating > .form-select {\n height: calc(3.5rem + calc(var(--bs-border-width) * 2));\n min-height: calc(3.5rem + calc(var(--bs-border-width) * 2));\n line-height: 1.25;\n}\n.form-floating > label {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 2;\n height: 100%;\n padding: 1rem 0.75rem;\n overflow: hidden;\n text-align: start;\n text-overflow: ellipsis;\n white-space: nowrap;\n pointer-events: none;\n border: var(--bs-border-width) solid transparent;\n -webkit-transform-origin: 0 0;\n transform-origin: 0 0;\n -webkit-transition: opacity 0.1s ease-in-out, -webkit-transform 0.1s ease-in-out;\n transition: opacity 0.1s ease-in-out, -webkit-transform 0.1s ease-in-out;\n transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out;\n transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out, -webkit-transform 0.1s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-floating > label {\n -webkit-transition: none;\n transition: none;\n }\n}\n.form-floating > .form-control,\n.form-floating > .form-control-plaintext {\n padding: 1rem 0.75rem;\n}\n.form-floating > .form-control::-moz-placeholder, .form-floating > .form-control-plaintext::-moz-placeholder {\n color: transparent;\n}\n.form-floating > .form-control::-webkit-input-placeholder,\n.form-floating > .form-control-plaintext::-webkit-input-placeholder {\n color: transparent;\n}\n.form-floating > .form-control::-moz-placeholder,\n.form-floating > .form-control-plaintext::-moz-placeholder {\n color: transparent;\n}\n.form-floating > .form-control::-ms-input-placeholder,\n.form-floating > .form-control-plaintext::-ms-input-placeholder {\n color: transparent;\n}\n.form-floating > .form-control::placeholder,\n.form-floating > .form-control-plaintext::placeholder {\n color: transparent;\n}\n.form-floating > .form-control:not(:-moz-placeholder-shown), .form-floating > .form-control-plaintext:not(:-moz-placeholder-shown) {\n padding-top: 1.625rem;\n padding-bottom: 0.625rem;\n}\n.form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown),\n.form-floating > .form-control-plaintext:focus,\n.form-floating > .form-control-plaintext:not(:placeholder-shown) {\n padding-top: 1.625rem;\n padding-bottom: 0.625rem;\n}\n.form-floating > .form-control:-webkit-autofill,\n.form-floating > .form-control-plaintext:-webkit-autofill {\n padding-top: 1.625rem;\n padding-bottom: 0.625rem;\n}\n.form-floating > .form-select {\n padding-top: 1.625rem;\n padding-bottom: 0.625rem;\n}\n.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label {\n color: rgba(var(--bs-body-color-rgb), 0.65);\n transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);\n}\n.form-floating > .form-control:focus ~ label,\n.form-floating > .form-control:not(:placeholder-shown) ~ label,\n.form-floating > .form-control-plaintext ~ label,\n.form-floating > .form-select ~ label {\n color: rgba(var(--bs-body-color-rgb), 0.65);\n -webkit-transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);\n transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);\n}\n.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label::after {\n position: absolute;\n inset: 1rem 0.375rem;\n z-index: -1;\n height: 1.5em;\n content: \"\";\n background-color: var(--bs-body-bg);\n border-radius: var(--bs-border-radius);\n}\n.form-floating > .form-control:focus ~ label::after,\n.form-floating > .form-control:not(:placeholder-shown) ~ label::after,\n.form-floating > .form-control-plaintext ~ label::after,\n.form-floating > .form-select ~ label::after {\n position: absolute;\n inset: 1rem 0.375rem;\n z-index: -1;\n height: 1.5em;\n content: \"\";\n background-color: var(--bs-body-bg);\n border-radius: var(--bs-border-radius);\n}\n.form-floating > .form-control:-webkit-autofill ~ label {\n color: rgba(var(--bs-body-color-rgb), 0.65);\n -webkit-transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);\n transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);\n}\n.form-floating > .form-control-plaintext ~ label {\n border-width: var(--bs-border-width) 0;\n}\n.form-floating > :disabled ~ label {\n color: #6c757d;\n}\n.form-floating > :disabled ~ label::after {\n background-color: var(--bs-secondary-bg);\n}\n.input-group {\n position: relative;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -webkit-box-align: stretch;\n -ms-flex-align: stretch;\n align-items: stretch;\n width: 100%;\n}\n.input-group > .form-control,\n.input-group > .form-select,\n.input-group > .form-floating {\n position: relative;\n -webkit-box-flex: 1;\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n width: 1%;\n min-width: 0;\n}\n.input-group > .form-control:focus,\n.input-group > .form-select:focus,\n.input-group > .form-floating:focus-within {\n z-index: 5;\n}\n.input-group .btn {\n position: relative;\n z-index: 2;\n}\n.input-group .btn:focus {\n z-index: 5;\n}\n.input-group-text {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n padding: 0.375rem 0.75rem;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: var(--bs-body-color);\n text-align: center;\n white-space: nowrap;\n background-color: var(--bs-tertiary-bg);\n border: var(--bs-border-width) solid var(--bs-border-color);\n border-radius: var(--bs-border-radius);\n}\n.input-group-lg > .form-control,\n.input-group-lg > .form-select,\n.input-group-lg > .input-group-text,\n.input-group-lg > .btn {\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n border-radius: var(--bs-border-radius-lg);\n}\n.input-group-sm > .form-control,\n.input-group-sm > .form-select,\n.input-group-sm > .input-group-text,\n.input-group-sm > .btn {\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n border-radius: var(--bs-border-radius-sm);\n}\n.input-group-lg > .form-select,\n.input-group-sm > .form-select {\n padding-right: 3rem;\n}\n.input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),\n.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3),\n.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-control,\n.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-select {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.input-group.has-validation > :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),\n.input-group.has-validation > .dropdown-toggle:nth-last-child(n+4),\n.input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-control,\n.input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-select {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {\n margin-left: calc(var(--bs-border-width) * -1);\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.input-group > .form-floating:not(:first-child) > .form-control,\n.input-group > .form-floating:not(:first-child) > .form-select {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.valid-feedback {\n display: none;\n width: 100%;\n margin-top: 0.25rem;\n font-size: 0.875em;\n color: var(--bs-form-valid-color);\n}\n.valid-tooltip {\n position: absolute;\n top: 100%;\n z-index: 5;\n display: none;\n max-width: 100%;\n padding: 0.25rem 0.5rem;\n margin-top: 0.1rem;\n font-size: 0.875rem;\n color: #fff;\n background-color: var(--bs-success);\n border-radius: var(--bs-border-radius);\n}\n.was-validated :valid ~ .valid-feedback,\n.was-validated :valid ~ .valid-tooltip,\n.is-valid ~ .valid-feedback,\n.is-valid ~ .valid-tooltip {\n display: block;\n}\n.was-validated .form-control:valid, .form-control.is-valid {\n border-color: var(--bs-form-valid-border-color);\n padding-right: calc(1.5em + 0.75rem);\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e\");\n background-repeat: no-repeat;\n background-position: right calc(0.375em + 0.1875rem) center;\n background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n.was-validated .form-control:valid:focus, .form-control.is-valid:focus {\n border-color: var(--bs-form-valid-border-color);\n -webkit-box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);\n}\n.was-validated textarea.form-control:valid, textarea.form-control.is-valid {\n padding-right: calc(1.5em + 0.75rem);\n background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);\n}\n.was-validated .form-select:valid, .form-select.is-valid {\n border-color: var(--bs-form-valid-border-color);\n}\n.was-validated .form-select:valid:not([multiple]):not([size]), .was-validated .form-select:valid:not([multiple])[size=\"1\"], .form-select.is-valid:not([multiple]):not([size]), .form-select.is-valid:not([multiple])[size=\"1\"] {\n --bs-form-select-bg-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e\");\n padding-right: 4.125rem;\n background-position: right 0.75rem center, center right 2.25rem;\n background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n.was-validated .form-select:valid:focus, .form-select.is-valid:focus {\n border-color: var(--bs-form-valid-border-color);\n -webkit-box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);\n}\n.was-validated .form-control-color:valid, .form-control-color.is-valid {\n width: calc(3rem + calc(1.5em + 0.75rem));\n}\n.was-validated .form-check-input:valid, .form-check-input.is-valid {\n border-color: var(--bs-form-valid-border-color);\n}\n.was-validated .form-check-input:valid:checked, .form-check-input.is-valid:checked {\n background-color: var(--bs-form-valid-color);\n}\n.was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus {\n -webkit-box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);\n}\n.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {\n color: var(--bs-form-valid-color);\n}\n.form-check-inline .form-check-input ~ .valid-feedback {\n margin-left: 0.5em;\n}\n.was-validated .input-group > .form-control:not(:focus):valid, .input-group > .form-control:not(:focus).is-valid,\n.was-validated .input-group > .form-select:not(:focus):valid,\n.input-group > .form-select:not(:focus).is-valid,\n.was-validated .input-group > .form-floating:not(:focus-within):valid,\n.input-group > .form-floating:not(:focus-within).is-valid {\n z-index: 3;\n}\n.invalid-feedback {\n display: none;\n width: 100%;\n margin-top: 0.25rem;\n font-size: 0.875em;\n color: var(--bs-form-invalid-color);\n}\n.invalid-tooltip {\n position: absolute;\n top: 100%;\n z-index: 5;\n display: none;\n max-width: 100%;\n padding: 0.25rem 0.5rem;\n margin-top: 0.1rem;\n font-size: 0.875rem;\n color: #fff;\n background-color: var(--bs-danger);\n border-radius: var(--bs-border-radius);\n}\n.was-validated :invalid ~ .invalid-feedback,\n.was-validated :invalid ~ .invalid-tooltip,\n.is-invalid ~ .invalid-feedback,\n.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n.was-validated .form-control:invalid, .form-control.is-invalid {\n border-color: var(--bs-form-invalid-border-color);\n padding-right: calc(1.5em + 0.75rem);\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e\");\n background-repeat: no-repeat;\n background-position: right calc(0.375em + 0.1875rem) center;\n background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {\n border-color: var(--bs-form-invalid-border-color);\n -webkit-box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);\n}\n.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {\n padding-right: calc(1.5em + 0.75rem);\n background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);\n}\n.was-validated .form-select:invalid, .form-select.is-invalid {\n border-color: var(--bs-form-invalid-border-color);\n}\n.was-validated .form-select:invalid:not([multiple]):not([size]), .was-validated .form-select:invalid:not([multiple])[size=\"1\"], .form-select.is-invalid:not([multiple]):not([size]), .form-select.is-invalid:not([multiple])[size=\"1\"] {\n --bs-form-select-bg-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e\");\n padding-right: 4.125rem;\n background-position: right 0.75rem center, center right 2.25rem;\n background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n.was-validated .form-select:invalid:focus, .form-select.is-invalid:focus {\n border-color: var(--bs-form-invalid-border-color);\n -webkit-box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);\n}\n.was-validated .form-control-color:invalid, .form-control-color.is-invalid {\n width: calc(3rem + calc(1.5em + 0.75rem));\n}\n.was-validated .form-check-input:invalid, .form-check-input.is-invalid {\n border-color: var(--bs-form-invalid-border-color);\n}\n.was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked {\n background-color: var(--bs-form-invalid-color);\n}\n.was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus {\n -webkit-box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);\n}\n.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {\n color: var(--bs-form-invalid-color);\n}\n.form-check-inline .form-check-input ~ .invalid-feedback {\n margin-left: 0.5em;\n}\n.was-validated .input-group > .form-control:not(:focus):invalid, .input-group > .form-control:not(:focus).is-invalid,\n.was-validated .input-group > .form-select:not(:focus):invalid,\n.input-group > .form-select:not(:focus).is-invalid,\n.was-validated .input-group > .form-floating:not(:focus-within):invalid,\n.input-group > .form-floating:not(:focus-within).is-invalid {\n z-index: 4;\n}\n.btn {\n --bs-btn-padding-x: 0.75rem;\n --bs-btn-padding-y: 0.375rem;\n --bs-btn-font-family: ;\n --bs-btn-font-size: 1rem;\n --bs-btn-font-weight: 400;\n --bs-btn-line-height: 1.5;\n --bs-btn-color: var(--bs-body-color);\n --bs-btn-bg: transparent;\n --bs-btn-border-width: var(--bs-border-width);\n --bs-btn-border-color: transparent;\n --bs-btn-border-radius: var(--bs-border-radius);\n --bs-btn-hover-border-color: transparent;\n --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);\n --bs-btn-disabled-opacity: 0.65;\n --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);\n display: inline-block;\n padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);\n font-family: var(--bs-btn-font-family);\n font-size: var(--bs-btn-font-size);\n font-weight: var(--bs-btn-font-weight);\n line-height: var(--bs-btn-line-height);\n color: var(--bs-btn-color);\n text-align: center;\n text-decoration: none;\n vertical-align: middle;\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);\n border-radius: var(--bs-btn-border-radius);\n background-color: var(--bs-btn-bg);\n -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .btn {\n -webkit-transition: none;\n transition: none;\n }\n}\n.btn:hover {\n color: var(--bs-btn-hover-color);\n background-color: var(--bs-btn-hover-bg);\n border-color: var(--bs-btn-hover-border-color);\n}\n.btn-check + .btn:hover {\n color: var(--bs-btn-color);\n background-color: var(--bs-btn-bg);\n border-color: var(--bs-btn-border-color);\n}\n.btn:focus-visible {\n color: var(--bs-btn-hover-color);\n background-color: var(--bs-btn-hover-bg);\n border-color: var(--bs-btn-hover-border-color);\n outline: 0;\n -webkit-box-shadow: var(--bs-btn-focus-box-shadow);\n box-shadow: var(--bs-btn-focus-box-shadow);\n}\n.btn-check:focus-visible + .btn {\n border-color: var(--bs-btn-hover-border-color);\n outline: 0;\n -webkit-box-shadow: var(--bs-btn-focus-box-shadow);\n box-shadow: var(--bs-btn-focus-box-shadow);\n}\n.btn-check:checked + .btn, :not(.btn-check) + .btn:active, .btn:first-child:active, .btn.active, .btn.show {\n color: var(--bs-btn-active-color);\n background-color: var(--bs-btn-active-bg);\n border-color: var(--bs-btn-active-border-color);\n}\n.btn-check:checked + .btn:focus-visible, :not(.btn-check) + .btn:active:focus-visible, .btn:first-child:active:focus-visible, .btn.active:focus-visible, .btn.show:focus-visible {\n -webkit-box-shadow: var(--bs-btn-focus-box-shadow);\n box-shadow: var(--bs-btn-focus-box-shadow);\n}\n.btn:disabled, .btn.disabled, fieldset:disabled .btn {\n color: var(--bs-btn-disabled-color);\n pointer-events: none;\n background-color: var(--bs-btn-disabled-bg);\n border-color: var(--bs-btn-disabled-border-color);\n opacity: var(--bs-btn-disabled-opacity);\n}\n.btn-primary {\n --bs-btn-color: #fff;\n --bs-btn-bg: #0d6efd;\n --bs-btn-border-color: #0d6efd;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #0b5ed7;\n --bs-btn-hover-border-color: #0a58ca;\n --bs-btn-focus-shadow-rgb: 49, 132, 253;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #0a58ca;\n --bs-btn-active-border-color: #0a53be;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #fff;\n --bs-btn-disabled-bg: #0d6efd;\n --bs-btn-disabled-border-color: #0d6efd;\n}\n.btn-secondary {\n --bs-btn-color: #fff;\n --bs-btn-bg: #6c757d;\n --bs-btn-border-color: #6c757d;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #5c636a;\n --bs-btn-hover-border-color: #565e64;\n --bs-btn-focus-shadow-rgb: 130, 138, 145;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #565e64;\n --bs-btn-active-border-color: #51585e;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #fff;\n --bs-btn-disabled-bg: #6c757d;\n --bs-btn-disabled-border-color: #6c757d;\n}\n.btn-success {\n --bs-btn-color: #fff;\n --bs-btn-bg: #198754;\n --bs-btn-border-color: #198754;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #157347;\n --bs-btn-hover-border-color: #146c43;\n --bs-btn-focus-shadow-rgb: 60, 153, 110;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #146c43;\n --bs-btn-active-border-color: #13653f;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #fff;\n --bs-btn-disabled-bg: #198754;\n --bs-btn-disabled-border-color: #198754;\n}\n.btn-info {\n --bs-btn-color: #000;\n --bs-btn-bg: #0dcaf0;\n --bs-btn-border-color: #0dcaf0;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #31d2f2;\n --bs-btn-hover-border-color: #25cff2;\n --bs-btn-focus-shadow-rgb: 11, 172, 204;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #3dd5f3;\n --bs-btn-active-border-color: #25cff2;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #000;\n --bs-btn-disabled-bg: #0dcaf0;\n --bs-btn-disabled-border-color: #0dcaf0;\n}\n.btn-warning {\n --bs-btn-color: #000;\n --bs-btn-bg: #ffc107;\n --bs-btn-border-color: #ffc107;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #ffca2c;\n --bs-btn-hover-border-color: #ffc720;\n --bs-btn-focus-shadow-rgb: 217, 164, 6;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #ffcd39;\n --bs-btn-active-border-color: #ffc720;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #000;\n --bs-btn-disabled-bg: #ffc107;\n --bs-btn-disabled-border-color: #ffc107;\n}\n.btn-danger {\n --bs-btn-color: #fff;\n --bs-btn-bg: #dc3545;\n --bs-btn-border-color: #dc3545;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #bb2d3b;\n --bs-btn-hover-border-color: #b02a37;\n --bs-btn-focus-shadow-rgb: 225, 83, 97;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #b02a37;\n --bs-btn-active-border-color: #a52834;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #fff;\n --bs-btn-disabled-bg: #dc3545;\n --bs-btn-disabled-border-color: #dc3545;\n}\n.btn-light {\n --bs-btn-color: #000;\n --bs-btn-bg: #f8f9fa;\n --bs-btn-border-color: #f8f9fa;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #d3d4d5;\n --bs-btn-hover-border-color: #c6c7c8;\n --bs-btn-focus-shadow-rgb: 211, 212, 213;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #c6c7c8;\n --bs-btn-active-border-color: #babbbc;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #000;\n --bs-btn-disabled-bg: #f8f9fa;\n --bs-btn-disabled-border-color: #f8f9fa;\n}\n.btn-dark {\n --bs-btn-color: #fff;\n --bs-btn-bg: #212529;\n --bs-btn-border-color: #212529;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #424649;\n --bs-btn-hover-border-color: #373b3e;\n --bs-btn-focus-shadow-rgb: 66, 70, 73;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #4d5154;\n --bs-btn-active-border-color: #373b3e;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #fff;\n --bs-btn-disabled-bg: #212529;\n --bs-btn-disabled-border-color: #212529;\n}\n.btn-outline-primary {\n --bs-btn-color: #0d6efd;\n --bs-btn-border-color: #0d6efd;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #0d6efd;\n --bs-btn-hover-border-color: #0d6efd;\n --bs-btn-focus-shadow-rgb: 13, 110, 253;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #0d6efd;\n --bs-btn-active-border-color: #0d6efd;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #0d6efd;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #0d6efd;\n --bs-gradient: none;\n}\n.btn-outline-secondary {\n --bs-btn-color: #6c757d;\n --bs-btn-border-color: #6c757d;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #6c757d;\n --bs-btn-hover-border-color: #6c757d;\n --bs-btn-focus-shadow-rgb: 108, 117, 125;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #6c757d;\n --bs-btn-active-border-color: #6c757d;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #6c757d;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #6c757d;\n --bs-gradient: none;\n}\n.btn-outline-success {\n --bs-btn-color: #198754;\n --bs-btn-border-color: #198754;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #198754;\n --bs-btn-hover-border-color: #198754;\n --bs-btn-focus-shadow-rgb: 25, 135, 84;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #198754;\n --bs-btn-active-border-color: #198754;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #198754;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #198754;\n --bs-gradient: none;\n}\n.btn-outline-info {\n --bs-btn-color: #0dcaf0;\n --bs-btn-border-color: #0dcaf0;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #0dcaf0;\n --bs-btn-hover-border-color: #0dcaf0;\n --bs-btn-focus-shadow-rgb: 13, 202, 240;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #0dcaf0;\n --bs-btn-active-border-color: #0dcaf0;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #0dcaf0;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #0dcaf0;\n --bs-gradient: none;\n}\n.btn-outline-warning {\n --bs-btn-color: #ffc107;\n --bs-btn-border-color: #ffc107;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #ffc107;\n --bs-btn-hover-border-color: #ffc107;\n --bs-btn-focus-shadow-rgb: 255, 193, 7;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #ffc107;\n --bs-btn-active-border-color: #ffc107;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #ffc107;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #ffc107;\n --bs-gradient: none;\n}\n.btn-outline-danger {\n --bs-btn-color: #dc3545;\n --bs-btn-border-color: #dc3545;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #dc3545;\n --bs-btn-hover-border-color: #dc3545;\n --bs-btn-focus-shadow-rgb: 220, 53, 69;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #dc3545;\n --bs-btn-active-border-color: #dc3545;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #dc3545;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #dc3545;\n --bs-gradient: none;\n}\n.btn-outline-light {\n --bs-btn-color: #f8f9fa;\n --bs-btn-border-color: #f8f9fa;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #f8f9fa;\n --bs-btn-hover-border-color: #f8f9fa;\n --bs-btn-focus-shadow-rgb: 248, 249, 250;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #f8f9fa;\n --bs-btn-active-border-color: #f8f9fa;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #f8f9fa;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #f8f9fa;\n --bs-gradient: none;\n}\n.btn-outline-dark {\n --bs-btn-color: #212529;\n --bs-btn-border-color: #212529;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #212529;\n --bs-btn-hover-border-color: #212529;\n --bs-btn-focus-shadow-rgb: 33, 37, 41;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #212529;\n --bs-btn-active-border-color: #212529;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #212529;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #212529;\n --bs-gradient: none;\n}\n.btn-link {\n --bs-btn-font-weight: 400;\n --bs-btn-color: var(--bs-link-color);\n --bs-btn-bg: transparent;\n --bs-btn-border-color: transparent;\n --bs-btn-hover-color: var(--bs-link-hover-color);\n --bs-btn-hover-border-color: transparent;\n --bs-btn-active-color: var(--bs-link-hover-color);\n --bs-btn-active-border-color: transparent;\n --bs-btn-disabled-color: #6c757d;\n --bs-btn-disabled-border-color: transparent;\n --bs-btn-box-shadow: 0 0 0 #000;\n --bs-btn-focus-shadow-rgb: 49, 132, 253;\n text-decoration: underline;\n}\n.btn-link:focus-visible {\n color: var(--bs-btn-color);\n}\n.btn-link:hover {\n color: var(--bs-btn-hover-color);\n}\n.btn-lg, .btn-group-lg > .btn {\n --bs-btn-padding-y: 0.5rem;\n --bs-btn-padding-x: 1rem;\n --bs-btn-font-size: 1.25rem;\n --bs-btn-border-radius: var(--bs-border-radius-lg);\n}\n.btn-sm, .btn-group-sm > .btn {\n --bs-btn-padding-y: 0.25rem;\n --bs-btn-padding-x: 0.5rem;\n --bs-btn-font-size: 0.875rem;\n --bs-btn-border-radius: var(--bs-border-radius-sm);\n}\n.fade {\n -webkit-transition: opacity 0.15s linear;\n transition: opacity 0.15s linear;\n}\n@media (prefers-reduced-motion: reduce) {\n .fade {\n -webkit-transition: none;\n transition: none;\n }\n}\n.fade:not(.show) {\n opacity: 0;\n}\n.collapse:not(.show) {\n display: none;\n}\n.collapsing {\n height: 0;\n overflow: hidden;\n -webkit-transition: height 0.35s ease;\n transition: height 0.35s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .collapsing {\n -webkit-transition: none;\n transition: none;\n }\n}\n.collapsing.collapse-horizontal {\n width: 0;\n height: auto;\n -webkit-transition: width 0.35s ease;\n transition: width 0.35s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .collapsing.collapse-horizontal {\n -webkit-transition: none;\n transition: none;\n }\n}\n.dropup,\n.dropend,\n.dropdown,\n.dropstart,\n.dropup-center,\n.dropdown-center {\n position: relative;\n}\n.dropdown-toggle {\n white-space: nowrap;\n}\n.dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid;\n border-right: 0.3em solid transparent;\n border-bottom: 0;\n border-left: 0.3em solid transparent;\n}\n.dropdown-toggle:empty::after {\n margin-left: 0;\n}\n.dropdown-menu {\n --bs-dropdown-zindex: 1000;\n --bs-dropdown-min-width: 10rem;\n --bs-dropdown-padding-x: 0;\n --bs-dropdown-padding-y: 0.5rem;\n --bs-dropdown-spacer: 0.125rem;\n --bs-dropdown-font-size: 1rem;\n --bs-dropdown-color: var(--bs-body-color);\n --bs-dropdown-bg: var(--bs-body-bg);\n --bs-dropdown-border-color: var(--bs-border-color-translucent);\n --bs-dropdown-border-radius: var(--bs-border-radius);\n --bs-dropdown-border-width: var(--bs-border-width);\n --bs-dropdown-inner-border-radius: calc(var(--bs-border-radius) - var(--bs-border-width));\n --bs-dropdown-divider-bg: var(--bs-border-color-translucent);\n --bs-dropdown-divider-margin-y: 0.5rem;\n --bs-dropdown-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);\n --bs-dropdown-link-color: var(--bs-body-color);\n --bs-dropdown-link-hover-color: var(--bs-body-color);\n --bs-dropdown-link-hover-bg: var(--bs-tertiary-bg);\n --bs-dropdown-link-active-color: #fff;\n --bs-dropdown-link-active-bg: #0d6efd;\n --bs-dropdown-link-disabled-color: var(--bs-tertiary-color);\n --bs-dropdown-item-padding-x: 1rem;\n --bs-dropdown-item-padding-y: 0.25rem;\n --bs-dropdown-header-color: #6c757d;\n --bs-dropdown-header-padding-x: 1rem;\n --bs-dropdown-header-padding-y: 0.5rem;\n position: absolute;\n z-index: var(--bs-dropdown-zindex);\n display: none;\n min-width: var(--bs-dropdown-min-width);\n padding: var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);\n margin: 0;\n font-size: var(--bs-dropdown-font-size);\n color: var(--bs-dropdown-color);\n text-align: left;\n list-style: none;\n background-color: var(--bs-dropdown-bg);\n background-clip: padding-box;\n border: var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);\n border-radius: var(--bs-dropdown-border-radius);\n}\n.dropdown-menu[data-bs-popper] {\n top: 100%;\n left: 0;\n margin-top: var(--bs-dropdown-spacer);\n}\n.dropdown-menu-start {\n --bs-position: start;\n}\n.dropdown-menu-start[data-bs-popper] {\n right: auto;\n left: 0;\n}\n.dropdown-menu-end {\n --bs-position: end;\n}\n.dropdown-menu-end[data-bs-popper] {\n right: 0;\n left: auto;\n}\n@media (min-width: 576px) {\n .dropdown-menu-sm-start {\n --bs-position: start;\n }\n .dropdown-menu-sm-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n .dropdown-menu-sm-end {\n --bs-position: end;\n }\n .dropdown-menu-sm-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n@media (min-width: 768px) {\n .dropdown-menu-md-start {\n --bs-position: start;\n }\n .dropdown-menu-md-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n .dropdown-menu-md-end {\n --bs-position: end;\n }\n .dropdown-menu-md-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n@media (min-width: 992px) {\n .dropdown-menu-lg-start {\n --bs-position: start;\n }\n .dropdown-menu-lg-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n .dropdown-menu-lg-end {\n --bs-position: end;\n }\n .dropdown-menu-lg-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n@media (min-width: 1200px) {\n .dropdown-menu-xl-start {\n --bs-position: start;\n }\n .dropdown-menu-xl-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n .dropdown-menu-xl-end {\n --bs-position: end;\n }\n .dropdown-menu-xl-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n@media (min-width: 1400px) {\n .dropdown-menu-xxl-start {\n --bs-position: start;\n }\n .dropdown-menu-xxl-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n .dropdown-menu-xxl-end {\n --bs-position: end;\n }\n .dropdown-menu-xxl-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n.dropup .dropdown-menu[data-bs-popper] {\n top: auto;\n bottom: 100%;\n margin-top: 0;\n margin-bottom: var(--bs-dropdown-spacer);\n}\n.dropup .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0;\n border-right: 0.3em solid transparent;\n border-bottom: 0.3em solid;\n border-left: 0.3em solid transparent;\n}\n.dropup .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n.dropend .dropdown-menu[data-bs-popper] {\n top: 0;\n right: auto;\n left: 100%;\n margin-top: 0;\n margin-left: var(--bs-dropdown-spacer);\n}\n.dropend .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid transparent;\n border-right: 0;\n border-bottom: 0.3em solid transparent;\n border-left: 0.3em solid;\n}\n.dropend .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n.dropend .dropdown-toggle::after {\n vertical-align: 0;\n}\n.dropstart .dropdown-menu[data-bs-popper] {\n top: 0;\n right: 100%;\n left: auto;\n margin-top: 0;\n margin-right: var(--bs-dropdown-spacer);\n}\n.dropstart .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n}\n.dropstart .dropdown-toggle::after {\n display: none;\n}\n.dropstart .dropdown-toggle::before {\n display: inline-block;\n margin-right: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid transparent;\n border-right: 0.3em solid;\n border-bottom: 0.3em solid transparent;\n}\n.dropstart .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n.dropstart .dropdown-toggle::before {\n vertical-align: 0;\n}\n.dropdown-divider {\n height: 0;\n margin: var(--bs-dropdown-divider-margin-y) 0;\n overflow: hidden;\n border-top: 1px solid var(--bs-dropdown-divider-bg);\n opacity: 1;\n}\n.dropdown-item {\n display: block;\n width: 100%;\n padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);\n clear: both;\n font-weight: 400;\n color: var(--bs-dropdown-link-color);\n text-align: inherit;\n text-decoration: none;\n white-space: nowrap;\n background-color: transparent;\n border: 0;\n border-radius: var(--bs-dropdown-item-border-radius, 0);\n}\n.dropdown-item:hover, .dropdown-item:focus {\n color: var(--bs-dropdown-link-hover-color);\n background-color: var(--bs-dropdown-link-hover-bg);\n}\n.dropdown-item.active, .dropdown-item:active {\n color: var(--bs-dropdown-link-active-color);\n text-decoration: none;\n background-color: var(--bs-dropdown-link-active-bg);\n}\n.dropdown-item.disabled, .dropdown-item:disabled {\n color: var(--bs-dropdown-link-disabled-color);\n pointer-events: none;\n background-color: transparent;\n}\n.dropdown-menu.show {\n display: block;\n}\n.dropdown-header {\n display: block;\n padding: var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);\n margin-bottom: 0;\n font-size: 0.875rem;\n color: var(--bs-dropdown-header-color);\n white-space: nowrap;\n}\n.dropdown-item-text {\n display: block;\n padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);\n color: var(--bs-dropdown-link-color);\n}\n.dropdown-menu-dark {\n --bs-dropdown-color: #dee2e6;\n --bs-dropdown-bg: #343a40;\n --bs-dropdown-border-color: var(--bs-border-color-translucent);\n --bs-dropdown-box-shadow: ;\n --bs-dropdown-link-color: #dee2e6;\n --bs-dropdown-link-hover-color: #fff;\n --bs-dropdown-divider-bg: var(--bs-border-color-translucent);\n --bs-dropdown-link-hover-bg: rgba(255, 255, 255, 0.15);\n --bs-dropdown-link-active-color: #fff;\n --bs-dropdown-link-active-bg: #0d6efd;\n --bs-dropdown-link-disabled-color: #adb5bd;\n --bs-dropdown-header-color: #adb5bd;\n}\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: -webkit-inline-box;\n display: -ms-inline-flexbox;\n display: inline-flex;\n vertical-align: middle;\n}\n.btn-group > .btn,\n.btn-group-vertical > .btn {\n position: relative;\n -webkit-box-flex: 1;\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n}\n.btn-group > .btn-check:checked + .btn,\n.btn-group > .btn-check:focus + .btn,\n.btn-group > .btn:hover,\n.btn-group > .btn:focus,\n.btn-group > .btn:active,\n.btn-group > .btn.active,\n.btn-group-vertical > .btn-check:checked + .btn,\n.btn-group-vertical > .btn-check:focus + .btn,\n.btn-group-vertical > .btn:hover,\n.btn-group-vertical > .btn:focus,\n.btn-group-vertical > .btn:active,\n.btn-group-vertical > .btn.active {\n z-index: 1;\n}\n.btn-toolbar {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -webkit-box-pack: start;\n -ms-flex-pack: start;\n justify-content: flex-start;\n}\n.btn-toolbar .input-group {\n width: auto;\n}\n.btn-group {\n border-radius: var(--bs-border-radius);\n}\n.btn-group > :not(.btn-check:first-child) + .btn,\n.btn-group > .btn-group:not(:first-child) {\n margin-left: calc(var(--bs-border-width) * -1);\n}\n.btn-group > .btn:not(:last-child):not(.dropdown-toggle),\n.btn-group > .btn.dropdown-toggle-split:first-child,\n.btn-group > .btn-group:not(:last-child) > .btn {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.btn-group > .btn:nth-child(n+3),\n.btn-group > :not(.btn-check) + .btn,\n.btn-group > .btn-group:not(:first-child) > .btn {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.dropdown-toggle-split {\n padding-right: 0.5625rem;\n padding-left: 0.5625rem;\n}\n.dropdown-toggle-split::after, .dropup .dropdown-toggle-split::after, .dropend .dropdown-toggle-split::after {\n margin-left: 0;\n}\n.dropstart .dropdown-toggle-split::before {\n margin-right: 0;\n}\n.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {\n padding-right: 0.375rem;\n padding-left: 0.375rem;\n}\n.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {\n padding-right: 0.75rem;\n padding-left: 0.75rem;\n}\n.btn-group-vertical {\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n -webkit-box-align: start;\n -ms-flex-align: start;\n align-items: flex-start;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n}\n.btn-group-vertical > .btn,\n.btn-group-vertical > .btn-group {\n width: 100%;\n}\n.btn-group-vertical > .btn:not(:first-child),\n.btn-group-vertical > .btn-group:not(:first-child) {\n margin-top: calc(var(--bs-border-width) * -1);\n}\n.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),\n.btn-group-vertical > .btn-group:not(:last-child) > .btn {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn ~ .btn,\n.btn-group-vertical > .btn-group:not(:first-child) > .btn {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.nav {\n --bs-nav-link-padding-x: 1rem;\n --bs-nav-link-padding-y: 0.5rem;\n --bs-nav-link-font-weight: ;\n --bs-nav-link-color: var(--bs-link-color);\n --bs-nav-link-hover-color: var(--bs-link-hover-color);\n --bs-nav-link-disabled-color: var(--bs-secondary-color);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n.nav-link {\n display: block;\n padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);\n font-size: var(--bs-nav-link-font-size);\n font-weight: var(--bs-nav-link-font-weight);\n color: var(--bs-nav-link-color);\n text-decoration: none;\n background: none;\n border: 0;\n -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .nav-link {\n -webkit-transition: none;\n transition: none;\n }\n}\n.nav-link:hover, .nav-link:focus {\n color: var(--bs-nav-link-hover-color);\n}\n.nav-link:focus-visible {\n outline: 0;\n -webkit-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.nav-link.disabled {\n color: var(--bs-nav-link-disabled-color);\n pointer-events: none;\n cursor: default;\n}\n.nav-tabs {\n --bs-nav-tabs-border-width: var(--bs-border-width);\n --bs-nav-tabs-border-color: var(--bs-border-color);\n --bs-nav-tabs-border-radius: var(--bs-border-radius);\n --bs-nav-tabs-link-hover-border-color: var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);\n --bs-nav-tabs-link-active-color: var(--bs-emphasis-color);\n --bs-nav-tabs-link-active-bg: var(--bs-body-bg);\n --bs-nav-tabs-link-active-border-color: var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);\n border-bottom: var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color);\n}\n.nav-tabs .nav-link {\n margin-bottom: calc(-1 * var(--bs-nav-tabs-border-width));\n border: var(--bs-nav-tabs-border-width) solid transparent;\n border-top-left-radius: var(--bs-nav-tabs-border-radius);\n border-top-right-radius: var(--bs-nav-tabs-border-radius);\n}\n.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {\n isolation: isolate;\n border-color: var(--bs-nav-tabs-link-hover-border-color);\n}\n.nav-tabs .nav-link.disabled, .nav-tabs .nav-link:disabled {\n color: var(--bs-nav-link-disabled-color);\n background-color: transparent;\n border-color: transparent;\n}\n.nav-tabs .nav-link.active,\n.nav-tabs .nav-item.show .nav-link {\n color: var(--bs-nav-tabs-link-active-color);\n background-color: var(--bs-nav-tabs-link-active-bg);\n border-color: var(--bs-nav-tabs-link-active-border-color);\n}\n.nav-tabs .dropdown-menu {\n margin-top: calc(-1 * var(--bs-nav-tabs-border-width));\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.nav-pills {\n --bs-nav-pills-border-radius: var(--bs-border-radius);\n --bs-nav-pills-link-active-color: #fff;\n --bs-nav-pills-link-active-bg: #0d6efd;\n}\n.nav-pills .nav-link {\n border-radius: var(--bs-nav-pills-border-radius);\n}\n.nav-pills .nav-link:disabled {\n color: var(--bs-nav-link-disabled-color);\n background-color: transparent;\n border-color: transparent;\n}\n.nav-pills .nav-link.active,\n.nav-pills .show > .nav-link {\n color: var(--bs-nav-pills-link-active-color);\n background-color: var(--bs-nav-pills-link-active-bg);\n}\n.nav-underline {\n --bs-nav-underline-gap: 1rem;\n --bs-nav-underline-border-width: 0.125rem;\n --bs-nav-underline-link-active-color: var(--bs-emphasis-color);\n gap: var(--bs-nav-underline-gap);\n}\n.nav-underline .nav-link {\n padding-right: 0;\n padding-left: 0;\n border-bottom: var(--bs-nav-underline-border-width) solid transparent;\n}\n.nav-underline .nav-link:hover, .nav-underline .nav-link:focus {\n border-bottom-color: currentcolor;\n}\n.nav-underline .nav-link.active,\n.nav-underline .show > .nav-link {\n font-weight: 700;\n color: var(--bs-nav-underline-link-active-color);\n border-bottom-color: currentcolor;\n}\n.nav-fill > .nav-link,\n.nav-fill .nav-item {\n -webkit-box-flex: 1;\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n text-align: center;\n}\n.nav-justified > .nav-link,\n.nav-justified .nav-item {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n text-align: center;\n}\n.nav-fill .nav-item .nav-link,\n.nav-justified .nav-item .nav-link {\n width: 100%;\n}\n.tab-content > .tab-pane {\n display: none;\n}\n.tab-content > .active {\n display: block;\n}\n.navbar {\n --bs-navbar-padding-x: 0;\n --bs-navbar-padding-y: 0.5rem;\n --bs-navbar-color: rgba(var(--bs-emphasis-color-rgb), 0.65);\n --bs-navbar-hover-color: rgba(var(--bs-emphasis-color-rgb), 0.8);\n --bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), 0.3);\n --bs-navbar-active-color: rgba(var(--bs-emphasis-color-rgb), 1);\n --bs-navbar-brand-padding-y: 0.3125rem;\n --bs-navbar-brand-margin-end: 1rem;\n --bs-navbar-brand-font-size: 1.25rem;\n --bs-navbar-brand-color: rgba(var(--bs-emphasis-color-rgb), 1);\n --bs-navbar-brand-hover-color: rgba(var(--bs-emphasis-color-rgb), 1);\n --bs-navbar-nav-link-padding-x: 0.5rem;\n --bs-navbar-toggler-padding-y: 0.25rem;\n --bs-navbar-toggler-padding-x: 0.75rem;\n --bs-navbar-toggler-font-size: 1.25rem;\n --bs-navbar-toggler-icon-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n --bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.15);\n --bs-navbar-toggler-border-radius: var(--bs-border-radius);\n --bs-navbar-toggler-focus-width: 0.25rem;\n --bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;\n position: relative;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n padding: var(--bs-navbar-padding-y) var(--bs-navbar-padding-x);\n}\n.navbar > .container,\n.navbar > .container-fluid,\n.navbar > .container-sm,\n.navbar > .container-md,\n.navbar > .container-lg,\n.navbar > .container-xl,\n.navbar > .container-xxl {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: inherit;\n flex-wrap: inherit;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n}\n.navbar-brand {\n padding-top: var(--bs-navbar-brand-padding-y);\n padding-bottom: var(--bs-navbar-brand-padding-y);\n margin-right: var(--bs-navbar-brand-margin-end);\n font-size: var(--bs-navbar-brand-font-size);\n color: var(--bs-navbar-brand-color);\n text-decoration: none;\n white-space: nowrap;\n}\n.navbar-brand:hover, .navbar-brand:focus {\n color: var(--bs-navbar-brand-hover-color);\n}\n.navbar-nav {\n --bs-nav-link-padding-x: 0;\n --bs-nav-link-padding-y: 0.5rem;\n --bs-nav-link-font-weight: ;\n --bs-nav-link-color: var(--bs-navbar-color);\n --bs-nav-link-hover-color: var(--bs-navbar-hover-color);\n --bs-nav-link-disabled-color: var(--bs-navbar-disabled-color);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n.navbar-nav .nav-link.active, .navbar-nav .nav-link.show {\n color: var(--bs-navbar-active-color);\n}\n.navbar-nav .dropdown-menu {\n position: static;\n}\n.navbar-text {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n color: var(--bs-navbar-color);\n}\n.navbar-text a,\n.navbar-text a:hover,\n.navbar-text a:focus {\n color: var(--bs-navbar-active-color);\n}\n.navbar-collapse {\n -ms-flex-preferred-size: 100%;\n flex-basis: 100%;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n}\n.navbar-toggler {\n padding: var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);\n font-size: var(--bs-navbar-toggler-font-size);\n line-height: 1;\n color: var(--bs-navbar-color);\n background-color: transparent;\n border: var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);\n border-radius: var(--bs-navbar-toggler-border-radius);\n -webkit-transition: var(--bs-navbar-toggler-transition);\n transition: var(--bs-navbar-toggler-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .navbar-toggler {\n -webkit-transition: none;\n transition: none;\n }\n}\n.navbar-toggler:hover {\n text-decoration: none;\n}\n.navbar-toggler:focus {\n text-decoration: none;\n outline: 0;\n -webkit-box-shadow: 0 0 0 var(--bs-navbar-toggler-focus-width);\n box-shadow: 0 0 0 var(--bs-navbar-toggler-focus-width);\n}\n.navbar-toggler-icon {\n display: inline-block;\n width: 1.5em;\n height: 1.5em;\n vertical-align: middle;\n background-image: var(--bs-navbar-toggler-icon-bg);\n background-repeat: no-repeat;\n background-position: center;\n background-size: 100%;\n}\n.navbar-nav-scroll {\n max-height: var(--bs-scroll-height, 75vh);\n overflow-y: auto;\n}\n@media (min-width: 576px) {\n .navbar-expand-sm {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n -webkit-box-pack: start;\n -ms-flex-pack: start;\n justify-content: flex-start;\n }\n .navbar-expand-sm .navbar-nav {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .navbar-expand-sm .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-sm .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n }\n .navbar-expand-sm .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-sm .navbar-collapse {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n }\n .navbar-expand-sm .navbar-toggler {\n display: none;\n }\n .navbar-expand-sm .offcanvas {\n position: static;\n z-index: auto;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n -webkit-transform: none !important;\n transform: none !important;\n -webkit-transition: none;\n transition: none;\n }\n .navbar-expand-sm .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-sm .offcanvas .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 768px) {\n .navbar-expand-md {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n -webkit-box-pack: start;\n -ms-flex-pack: start;\n justify-content: flex-start;\n }\n .navbar-expand-md .navbar-nav {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .navbar-expand-md .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-md .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n }\n .navbar-expand-md .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-md .navbar-collapse {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n }\n .navbar-expand-md .navbar-toggler {\n display: none;\n }\n .navbar-expand-md .offcanvas {\n position: static;\n z-index: auto;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n -webkit-transform: none !important;\n transform: none !important;\n -webkit-transition: none;\n transition: none;\n }\n .navbar-expand-md .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-md .offcanvas .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 992px) {\n .navbar-expand-lg {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n -webkit-box-pack: start;\n -ms-flex-pack: start;\n justify-content: flex-start;\n }\n .navbar-expand-lg .navbar-nav {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .navbar-expand-lg .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-lg .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n }\n .navbar-expand-lg .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-lg .navbar-collapse {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n }\n .navbar-expand-lg .navbar-toggler {\n display: none;\n }\n .navbar-expand-lg .offcanvas {\n position: static;\n z-index: auto;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n -webkit-transform: none !important;\n transform: none !important;\n -webkit-transition: none;\n transition: none;\n }\n .navbar-expand-lg .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-lg .offcanvas .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 1200px) {\n .navbar-expand-xl {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n -webkit-box-pack: start;\n -ms-flex-pack: start;\n justify-content: flex-start;\n }\n .navbar-expand-xl .navbar-nav {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .navbar-expand-xl .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-xl .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n }\n .navbar-expand-xl .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-xl .navbar-collapse {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n }\n .navbar-expand-xl .navbar-toggler {\n display: none;\n }\n .navbar-expand-xl .offcanvas {\n position: static;\n z-index: auto;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n -webkit-transform: none !important;\n transform: none !important;\n -webkit-transition: none;\n transition: none;\n }\n .navbar-expand-xl .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-xl .offcanvas .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 1400px) {\n .navbar-expand-xxl {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n -webkit-box-pack: start;\n -ms-flex-pack: start;\n justify-content: flex-start;\n }\n .navbar-expand-xxl .navbar-nav {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .navbar-expand-xxl .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-xxl .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n }\n .navbar-expand-xxl .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-xxl .navbar-collapse {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n }\n .navbar-expand-xxl .navbar-toggler {\n display: none;\n }\n .navbar-expand-xxl .offcanvas {\n position: static;\n z-index: auto;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n -webkit-transform: none !important;\n transform: none !important;\n -webkit-transition: none;\n transition: none;\n }\n .navbar-expand-xxl .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-xxl .offcanvas .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n.navbar-expand {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n -webkit-box-pack: start;\n -ms-flex-pack: start;\n justify-content: flex-start;\n}\n.navbar-expand .navbar-nav {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n}\n.navbar-expand .navbar-nav .dropdown-menu {\n position: absolute;\n}\n.navbar-expand .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n}\n.navbar-expand .navbar-nav-scroll {\n overflow: visible;\n}\n.navbar-expand .navbar-collapse {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n}\n.navbar-expand .navbar-toggler {\n display: none;\n}\n.navbar-expand .offcanvas {\n position: static;\n z-index: auto;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n -webkit-transform: none !important;\n transform: none !important;\n -webkit-transition: none;\n transition: none;\n}\n.navbar-expand .offcanvas .offcanvas-header {\n display: none;\n}\n.navbar-expand .offcanvas .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n}\n.navbar-dark,\n.navbar[data-bs-theme=dark] {\n --bs-navbar-color: rgba(255, 255, 255, 0.55);\n --bs-navbar-hover-color: rgba(255, 255, 255, 0.75);\n --bs-navbar-disabled-color: rgba(255, 255, 255, 0.25);\n --bs-navbar-active-color: #fff;\n --bs-navbar-brand-color: #fff;\n --bs-navbar-brand-hover-color: #fff;\n --bs-navbar-toggler-border-color: rgba(255, 255, 255, 0.1);\n --bs-navbar-toggler-icon-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n}\n[data-bs-theme=dark] .navbar-toggler-icon {\n --bs-navbar-toggler-icon-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n}\n.card {\n --bs-card-spacer-y: 1rem;\n --bs-card-spacer-x: 1rem;\n --bs-card-title-spacer-y: 0.5rem;\n --bs-card-title-color: ;\n --bs-card-subtitle-color: ;\n --bs-card-border-width: var(--bs-border-width);\n --bs-card-border-color: var(--bs-border-color-translucent);\n --bs-card-border-radius: var(--bs-border-radius);\n --bs-card-box-shadow: ;\n --bs-card-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));\n --bs-card-cap-padding-y: 0.5rem;\n --bs-card-cap-padding-x: 1rem;\n --bs-card-cap-bg: rgba(var(--bs-body-color-rgb), 0.03);\n --bs-card-cap-color: ;\n --bs-card-height: ;\n --bs-card-color: ;\n --bs-card-bg: var(--bs-body-bg);\n --bs-card-img-overlay-padding: 1rem;\n --bs-card-group-margin: 0.75rem;\n position: relative;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n min-width: 0;\n height: var(--bs-card-height);\n color: var(--bs-body-color);\n word-wrap: break-word;\n background-color: var(--bs-card-bg);\n background-clip: border-box;\n border: var(--bs-card-border-width) solid var(--bs-card-border-color);\n border-radius: var(--bs-card-border-radius);\n}\n.card > hr {\n margin-right: 0;\n margin-left: 0;\n}\n.card > .list-group {\n border-top: inherit;\n border-bottom: inherit;\n}\n.card > .list-group:first-child {\n border-top-width: 0;\n border-top-left-radius: var(--bs-card-inner-border-radius);\n border-top-right-radius: var(--bs-card-inner-border-radius);\n}\n.card > .list-group:last-child {\n border-bottom-width: 0;\n border-bottom-right-radius: var(--bs-card-inner-border-radius);\n border-bottom-left-radius: var(--bs-card-inner-border-radius);\n}\n.card > .card-header + .list-group,\n.card > .list-group + .card-footer {\n border-top: 0;\n}\n.card-body {\n -webkit-box-flex: 1;\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n padding: var(--bs-card-spacer-y) var(--bs-card-spacer-x);\n color: var(--bs-card-color);\n}\n.card-title {\n margin-bottom: var(--bs-card-title-spacer-y);\n color: var(--bs-card-title-color);\n}\n.card-subtitle {\n margin-top: calc(-0.5 * var(--bs-card-title-spacer-y));\n margin-bottom: 0;\n color: var(--bs-card-subtitle-color);\n}\n.card-text:last-child {\n margin-bottom: 0;\n}\n.card-link + .card-link {\n margin-left: var(--bs-card-spacer-x);\n}\n.card-header {\n padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);\n margin-bottom: 0;\n color: var(--bs-card-cap-color);\n background-color: var(--bs-card-cap-bg);\n border-bottom: var(--bs-card-border-width) solid var(--bs-card-border-color);\n}\n.card-header:first-child {\n border-radius: var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0;\n}\n.card-footer {\n padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);\n color: var(--bs-card-cap-color);\n background-color: var(--bs-card-cap-bg);\n border-top: var(--bs-card-border-width) solid var(--bs-card-border-color);\n}\n.card-footer:last-child {\n border-radius: 0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius);\n}\n.card-header-tabs {\n margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));\n margin-bottom: calc(-1 * var(--bs-card-cap-padding-y));\n margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));\n border-bottom: 0;\n}\n.card-header-tabs .nav-link.active {\n background-color: var(--bs-card-bg);\n border-bottom-color: var(--bs-card-bg);\n}\n.card-header-pills {\n margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));\n margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));\n}\n.card-img-overlay {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n padding: var(--bs-card-img-overlay-padding);\n border-radius: var(--bs-card-inner-border-radius);\n}\n.card-img,\n.card-img-top,\n.card-img-bottom {\n width: 100%;\n}\n.card-img,\n.card-img-top {\n border-top-left-radius: var(--bs-card-inner-border-radius);\n border-top-right-radius: var(--bs-card-inner-border-radius);\n}\n.card-img,\n.card-img-bottom {\n border-bottom-right-radius: var(--bs-card-inner-border-radius);\n border-bottom-left-radius: var(--bs-card-inner-border-radius);\n}\n.card-group > .card {\n margin-bottom: var(--bs-card-group-margin);\n}\n@media (min-width: 576px) {\n .card-group {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-flow: row wrap;\n flex-flow: row wrap;\n }\n .card-group > .card {\n -webkit-box-flex: 1;\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n margin-bottom: 0;\n }\n .card-group > .card + .card {\n margin-left: 0;\n border-left: 0;\n }\n .card-group > .card:not(:last-child) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n .card-group > .card:not(:last-child) .card-img-top,\n .card-group > .card:not(:last-child) .card-header {\n border-top-right-radius: 0;\n }\n .card-group > .card:not(:last-child) .card-img-bottom,\n .card-group > .card:not(:last-child) .card-footer {\n border-bottom-right-radius: 0;\n }\n .card-group > .card:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n .card-group > .card:not(:first-child) .card-img-top,\n .card-group > .card:not(:first-child) .card-header {\n border-top-left-radius: 0;\n }\n .card-group > .card:not(:first-child) .card-img-bottom,\n .card-group > .card:not(:first-child) .card-footer {\n border-bottom-left-radius: 0;\n }\n}\n.accordion {\n --bs-accordion-color: var(--bs-body-color);\n --bs-accordion-bg: var(--bs-body-bg);\n --bs-accordion-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;\n --bs-accordion-border-color: var(--bs-border-color);\n --bs-accordion-border-width: var(--bs-border-width);\n --bs-accordion-border-radius: var(--bs-border-radius);\n --bs-accordion-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));\n --bs-accordion-btn-padding-x: 1.25rem;\n --bs-accordion-btn-padding-y: 1rem;\n --bs-accordion-btn-color: var(--bs-body-color);\n --bs-accordion-btn-bg: var(--bs-accordion-bg);\n --bs-accordion-btn-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\");\n --bs-accordion-btn-icon-width: 1.25rem;\n --bs-accordion-btn-icon-transform: rotate(-180deg);\n --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;\n --bs-accordion-btn-active-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23052c65'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\");\n --bs-accordion-btn-focus-border-color: #86b7fe;\n --bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n --bs-accordion-body-padding-x: 1.25rem;\n --bs-accordion-body-padding-y: 1rem;\n --bs-accordion-active-color: var(--bs-primary-text-emphasis);\n --bs-accordion-active-bg: var(--bs-primary-bg-subtle);\n}\n.accordion-button {\n position: relative;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n width: 100%;\n padding: var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);\n font-size: 1rem;\n color: var(--bs-accordion-btn-color);\n text-align: left;\n background-color: var(--bs-accordion-btn-bg);\n border: 0;\n border-radius: 0;\n overflow-anchor: none;\n -webkit-transition: var(--bs-accordion-transition);\n transition: var(--bs-accordion-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .accordion-button {\n -webkit-transition: none;\n transition: none;\n }\n}\n.accordion-button:not(.collapsed) {\n color: var(--bs-accordion-active-color);\n background-color: var(--bs-accordion-active-bg);\n -webkit-box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color);\n box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color);\n}\n.accordion-button:not(.collapsed)::after {\n background-image: var(--bs-accordion-btn-active-icon);\n -webkit-transform: var(--bs-accordion-btn-icon-transform);\n transform: var(--bs-accordion-btn-icon-transform);\n}\n.accordion-button::after {\n -ms-flex-negative: 0;\n flex-shrink: 0;\n width: var(--bs-accordion-btn-icon-width);\n height: var(--bs-accordion-btn-icon-width);\n margin-left: auto;\n content: \"\";\n background-image: var(--bs-accordion-btn-icon);\n background-repeat: no-repeat;\n background-size: var(--bs-accordion-btn-icon-width);\n -webkit-transition: var(--bs-accordion-btn-icon-transition);\n transition: var(--bs-accordion-btn-icon-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .accordion-button::after {\n -webkit-transition: none;\n transition: none;\n }\n}\n.accordion-button:hover {\n z-index: 2;\n}\n.accordion-button:focus {\n z-index: 3;\n border-color: var(--bs-accordion-btn-focus-border-color);\n outline: 0;\n -webkit-box-shadow: var(--bs-accordion-btn-focus-box-shadow);\n box-shadow: var(--bs-accordion-btn-focus-box-shadow);\n}\n.accordion-header {\n margin-bottom: 0;\n}\n.accordion-item {\n color: var(--bs-accordion-color);\n background-color: var(--bs-accordion-bg);\n border: var(--bs-accordion-border-width) solid var(--bs-accordion-border-color);\n}\n.accordion-item:first-of-type {\n border-top-left-radius: var(--bs-accordion-border-radius);\n border-top-right-radius: var(--bs-accordion-border-radius);\n}\n.accordion-item:first-of-type .accordion-button {\n border-top-left-radius: var(--bs-accordion-inner-border-radius);\n border-top-right-radius: var(--bs-accordion-inner-border-radius);\n}\n.accordion-item:not(:first-of-type) {\n border-top: 0;\n}\n.accordion-item:last-of-type {\n border-bottom-right-radius: var(--bs-accordion-border-radius);\n border-bottom-left-radius: var(--bs-accordion-border-radius);\n}\n.accordion-item:last-of-type .accordion-button.collapsed {\n border-bottom-right-radius: var(--bs-accordion-inner-border-radius);\n border-bottom-left-radius: var(--bs-accordion-inner-border-radius);\n}\n.accordion-item:last-of-type .accordion-collapse {\n border-bottom-right-radius: var(--bs-accordion-border-radius);\n border-bottom-left-radius: var(--bs-accordion-border-radius);\n}\n.accordion-body {\n padding: var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x);\n}\n.accordion-flush .accordion-collapse {\n border-width: 0;\n}\n.accordion-flush .accordion-item {\n border-right: 0;\n border-left: 0;\n border-radius: 0;\n}\n.accordion-flush .accordion-item:first-child {\n border-top: 0;\n}\n.accordion-flush .accordion-item:last-child {\n border-bottom: 0;\n}\n.accordion-flush .accordion-item .accordion-button, .accordion-flush .accordion-item .accordion-button.collapsed {\n border-radius: 0;\n}\n[data-bs-theme=dark] .accordion-button::after {\n --bs-accordion-btn-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\");\n --bs-accordion-btn-active-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\");\n}\n.breadcrumb {\n --bs-breadcrumb-padding-x: 0;\n --bs-breadcrumb-padding-y: 0;\n --bs-breadcrumb-margin-bottom: 1rem;\n --bs-breadcrumb-bg: ;\n --bs-breadcrumb-border-radius: ;\n --bs-breadcrumb-divider-color: var(--bs-secondary-color);\n --bs-breadcrumb-item-padding-x: 0.5rem;\n --bs-breadcrumb-item-active-color: var(--bs-secondary-color);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n padding: var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);\n margin-bottom: var(--bs-breadcrumb-margin-bottom);\n font-size: var(--bs-breadcrumb-font-size);\n list-style: none;\n background-color: var(--bs-breadcrumb-bg);\n border-radius: var(--bs-breadcrumb-border-radius);\n}\n.breadcrumb-item + .breadcrumb-item {\n padding-left: var(--bs-breadcrumb-item-padding-x);\n}\n.breadcrumb-item + .breadcrumb-item::before {\n float: left;\n padding-right: var(--bs-breadcrumb-item-padding-x);\n color: var(--bs-breadcrumb-divider-color);\n content: var(--bs-breadcrumb-divider, \"/\") /* rtl: var(--bs-breadcrumb-divider, \"/\") */;\n}\n.breadcrumb-item.active {\n color: var(--bs-breadcrumb-item-active-color);\n}\n.pagination {\n --bs-pagination-padding-x: 0.75rem;\n --bs-pagination-padding-y: 0.375rem;\n --bs-pagination-font-size: 1rem;\n --bs-pagination-color: var(--bs-link-color);\n --bs-pagination-bg: var(--bs-body-bg);\n --bs-pagination-border-width: var(--bs-border-width);\n --bs-pagination-border-color: var(--bs-border-color);\n --bs-pagination-border-radius: var(--bs-border-radius);\n --bs-pagination-hover-color: var(--bs-link-hover-color);\n --bs-pagination-hover-bg: var(--bs-tertiary-bg);\n --bs-pagination-hover-border-color: var(--bs-border-color);\n --bs-pagination-focus-color: var(--bs-link-hover-color);\n --bs-pagination-focus-bg: var(--bs-secondary-bg);\n --bs-pagination-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n --bs-pagination-active-color: #fff;\n --bs-pagination-active-bg: #0d6efd;\n --bs-pagination-active-border-color: #0d6efd;\n --bs-pagination-disabled-color: var(--bs-secondary-color);\n --bs-pagination-disabled-bg: var(--bs-secondary-bg);\n --bs-pagination-disabled-border-color: var(--bs-border-color);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n padding-left: 0;\n list-style: none;\n}\n.page-link {\n position: relative;\n display: block;\n padding: var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);\n font-size: var(--bs-pagination-font-size);\n color: var(--bs-pagination-color);\n text-decoration: none;\n background-color: var(--bs-pagination-bg);\n border: var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);\n -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .page-link {\n -webkit-transition: none;\n transition: none;\n }\n}\n.page-link:hover {\n z-index: 2;\n color: var(--bs-pagination-hover-color);\n background-color: var(--bs-pagination-hover-bg);\n border-color: var(--bs-pagination-hover-border-color);\n}\n.page-link:focus {\n z-index: 3;\n color: var(--bs-pagination-focus-color);\n background-color: var(--bs-pagination-focus-bg);\n outline: 0;\n -webkit-box-shadow: var(--bs-pagination-focus-box-shadow);\n box-shadow: var(--bs-pagination-focus-box-shadow);\n}\n.page-link.active, .active > .page-link {\n z-index: 3;\n color: var(--bs-pagination-active-color);\n background-color: var(--bs-pagination-active-bg);\n border-color: var(--bs-pagination-active-border-color);\n}\n.page-link.disabled, .disabled > .page-link {\n color: var(--bs-pagination-disabled-color);\n pointer-events: none;\n background-color: var(--bs-pagination-disabled-bg);\n border-color: var(--bs-pagination-disabled-border-color);\n}\n.page-item:not(:first-child) .page-link {\n margin-left: calc(var(--bs-border-width) * -1);\n}\n.page-item:first-child .page-link {\n border-top-left-radius: var(--bs-pagination-border-radius);\n border-bottom-left-radius: var(--bs-pagination-border-radius);\n}\n.page-item:last-child .page-link {\n border-top-right-radius: var(--bs-pagination-border-radius);\n border-bottom-right-radius: var(--bs-pagination-border-radius);\n}\n.pagination-lg {\n --bs-pagination-padding-x: 1.5rem;\n --bs-pagination-padding-y: 0.75rem;\n --bs-pagination-font-size: 1.25rem;\n --bs-pagination-border-radius: var(--bs-border-radius-lg);\n}\n.pagination-sm {\n --bs-pagination-padding-x: 0.5rem;\n --bs-pagination-padding-y: 0.25rem;\n --bs-pagination-font-size: 0.875rem;\n --bs-pagination-border-radius: var(--bs-border-radius-sm);\n}\n.badge {\n --bs-badge-padding-x: 0.65em;\n --bs-badge-padding-y: 0.35em;\n --bs-badge-font-size: 0.75em;\n --bs-badge-font-weight: 700;\n --bs-badge-color: #fff;\n --bs-badge-border-radius: var(--bs-border-radius);\n display: inline-block;\n padding: var(--bs-badge-padding-y) var(--bs-badge-padding-x);\n font-size: var(--bs-badge-font-size);\n font-weight: var(--bs-badge-font-weight);\n line-height: 1;\n color: var(--bs-badge-color);\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: var(--bs-badge-border-radius);\n}\n.badge:empty {\n display: none;\n}\n.btn .badge {\n position: relative;\n top: -1px;\n}\n.alert {\n --bs-alert-bg: transparent;\n --bs-alert-padding-x: 1rem;\n --bs-alert-padding-y: 1rem;\n --bs-alert-margin-bottom: 1rem;\n --bs-alert-color: inherit;\n --bs-alert-border-color: transparent;\n --bs-alert-border: var(--bs-border-width) solid var(--bs-alert-border-color);\n --bs-alert-border-radius: var(--bs-border-radius);\n --bs-alert-link-color: inherit;\n position: relative;\n padding: var(--bs-alert-padding-y) var(--bs-alert-padding-x);\n margin-bottom: var(--bs-alert-margin-bottom);\n color: var(--bs-alert-color);\n background-color: var(--bs-alert-bg);\n border: var(--bs-alert-border);\n border-radius: var(--bs-alert-border-radius);\n}\n.alert-heading {\n color: inherit;\n}\n.alert-link {\n font-weight: 700;\n color: var(--bs-alert-link-color);\n}\n.alert-dismissible {\n padding-right: 3rem;\n}\n.alert-dismissible .btn-close {\n position: absolute;\n top: 0;\n right: 0;\n z-index: 2;\n padding: 1.25rem 1rem;\n}\n.alert-primary {\n --bs-alert-color: var(--bs-primary-text-emphasis);\n --bs-alert-bg: var(--bs-primary-bg-subtle);\n --bs-alert-border-color: var(--bs-primary-border-subtle);\n --bs-alert-link-color: var(--bs-primary-text-emphasis);\n}\n.alert-secondary {\n --bs-alert-color: var(--bs-secondary-text-emphasis);\n --bs-alert-bg: var(--bs-secondary-bg-subtle);\n --bs-alert-border-color: var(--bs-secondary-border-subtle);\n --bs-alert-link-color: var(--bs-secondary-text-emphasis);\n}\n.alert-success {\n --bs-alert-color: var(--bs-success-text-emphasis);\n --bs-alert-bg: var(--bs-success-bg-subtle);\n --bs-alert-border-color: var(--bs-success-border-subtle);\n --bs-alert-link-color: var(--bs-success-text-emphasis);\n}\n.alert-info {\n --bs-alert-color: var(--bs-info-text-emphasis);\n --bs-alert-bg: var(--bs-info-bg-subtle);\n --bs-alert-border-color: var(--bs-info-border-subtle);\n --bs-alert-link-color: var(--bs-info-text-emphasis);\n}\n.alert-warning {\n --bs-alert-color: var(--bs-warning-text-emphasis);\n --bs-alert-bg: var(--bs-warning-bg-subtle);\n --bs-alert-border-color: var(--bs-warning-border-subtle);\n --bs-alert-link-color: var(--bs-warning-text-emphasis);\n}\n.alert-danger {\n --bs-alert-color: var(--bs-danger-text-emphasis);\n --bs-alert-bg: var(--bs-danger-bg-subtle);\n --bs-alert-border-color: var(--bs-danger-border-subtle);\n --bs-alert-link-color: var(--bs-danger-text-emphasis);\n}\n.alert-light {\n --bs-alert-color: var(--bs-light-text-emphasis);\n --bs-alert-bg: var(--bs-light-bg-subtle);\n --bs-alert-border-color: var(--bs-light-border-subtle);\n --bs-alert-link-color: var(--bs-light-text-emphasis);\n}\n.alert-dark {\n --bs-alert-color: var(--bs-dark-text-emphasis);\n --bs-alert-bg: var(--bs-dark-bg-subtle);\n --bs-alert-border-color: var(--bs-dark-border-subtle);\n --bs-alert-link-color: var(--bs-dark-text-emphasis);\n}\n@-webkit-keyframes progress-bar-stripes {\n 0% {\n background-position-x: 1rem;\n }\n}\n@keyframes progress-bar-stripes {\n 0% {\n background-position-x: 1rem;\n }\n}\n.progress,\n.progress-stacked {\n --bs-progress-height: 1rem;\n --bs-progress-font-size: 0.75rem;\n --bs-progress-bg: var(--bs-secondary-bg);\n --bs-progress-border-radius: var(--bs-border-radius);\n --bs-progress-box-shadow: var(--bs-box-shadow-inset);\n --bs-progress-bar-color: #fff;\n --bs-progress-bar-bg: #0d6efd;\n --bs-progress-bar-transition: width 0.6s ease;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n height: var(--bs-progress-height);\n overflow: hidden;\n font-size: var(--bs-progress-font-size);\n background-color: var(--bs-progress-bg);\n border-radius: var(--bs-progress-border-radius);\n}\n.progress-bar {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n overflow: hidden;\n color: var(--bs-progress-bar-color);\n text-align: center;\n white-space: nowrap;\n background-color: var(--bs-progress-bar-bg);\n -webkit-transition: var(--bs-progress-bar-transition);\n transition: var(--bs-progress-bar-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .progress-bar {\n -webkit-transition: none;\n transition: none;\n }\n}\n.progress-bar-striped {\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-size: var(--bs-progress-height) var(--bs-progress-height);\n}\n.progress-stacked > .progress {\n overflow: visible;\n}\n.progress-stacked > .progress > .progress-bar {\n width: 100%;\n}\n.progress-bar-animated {\n -webkit-animation: 1s linear infinite progress-bar-stripes;\n animation: 1s linear infinite progress-bar-stripes;\n}\n@media (prefers-reduced-motion: reduce) {\n .progress-bar-animated {\n -webkit-animation: none;\n animation: none;\n }\n}\n.list-group {\n --bs-list-group-color: var(--bs-body-color);\n --bs-list-group-bg: var(--bs-body-bg);\n --bs-list-group-border-color: var(--bs-border-color);\n --bs-list-group-border-width: var(--bs-border-width);\n --bs-list-group-border-radius: var(--bs-border-radius);\n --bs-list-group-item-padding-x: 1rem;\n --bs-list-group-item-padding-y: 0.5rem;\n --bs-list-group-action-color: var(--bs-secondary-color);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-tertiary-bg);\n --bs-list-group-action-active-color: var(--bs-body-color);\n --bs-list-group-action-active-bg: var(--bs-secondary-bg);\n --bs-list-group-disabled-color: var(--bs-secondary-color);\n --bs-list-group-disabled-bg: var(--bs-body-bg);\n --bs-list-group-active-color: #fff;\n --bs-list-group-active-bg: #0d6efd;\n --bs-list-group-active-border-color: #0d6efd;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n padding-left: 0;\n margin-bottom: 0;\n border-radius: var(--bs-list-group-border-radius);\n}\n.list-group-numbered {\n list-style-type: none;\n counter-reset: section;\n}\n.list-group-numbered > .list-group-item::before {\n content: counters(section, \".\") \". \";\n counter-increment: section;\n}\n.list-group-item-action {\n width: 100%;\n color: var(--bs-list-group-action-color);\n text-align: inherit;\n}\n.list-group-item-action:hover, .list-group-item-action:focus {\n z-index: 1;\n color: var(--bs-list-group-action-hover-color);\n text-decoration: none;\n background-color: var(--bs-list-group-action-hover-bg);\n}\n.list-group-item-action:active {\n color: var(--bs-list-group-action-active-color);\n background-color: var(--bs-list-group-action-active-bg);\n}\n.list-group-item {\n position: relative;\n display: block;\n padding: var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);\n color: var(--bs-list-group-color);\n text-decoration: none;\n background-color: var(--bs-list-group-bg);\n border: var(--bs-list-group-border-width) solid var(--bs-list-group-border-color);\n}\n.list-group-item:first-child {\n border-top-left-radius: inherit;\n border-top-right-radius: inherit;\n}\n.list-group-item:last-child {\n border-bottom-right-radius: inherit;\n border-bottom-left-radius: inherit;\n}\n.list-group-item.disabled, .list-group-item:disabled {\n color: var(--bs-list-group-disabled-color);\n pointer-events: none;\n background-color: var(--bs-list-group-disabled-bg);\n}\n.list-group-item.active {\n z-index: 2;\n color: var(--bs-list-group-active-color);\n background-color: var(--bs-list-group-active-bg);\n border-color: var(--bs-list-group-active-border-color);\n}\n.list-group-item + .list-group-item {\n border-top-width: 0;\n}\n.list-group-item + .list-group-item.active {\n margin-top: calc(-1 * var(--bs-list-group-border-width));\n border-top-width: var(--bs-list-group-border-width);\n}\n.list-group-horizontal {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n}\n.list-group-horizontal > .list-group-item:first-child:not(:last-child) {\n border-bottom-left-radius: var(--bs-list-group-border-radius);\n border-top-right-radius: 0;\n}\n.list-group-horizontal > .list-group-item:last-child:not(:first-child) {\n border-top-right-radius: var(--bs-list-group-border-radius);\n border-bottom-left-radius: 0;\n}\n.list-group-horizontal > .list-group-item.active {\n margin-top: 0;\n}\n.list-group-horizontal > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n}\n.list-group-horizontal > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n}\n@media (min-width: 576px) {\n .list-group-horizontal-sm {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .list-group-horizontal-sm > .list-group-item:first-child:not(:last-child) {\n border-bottom-left-radius: var(--bs-list-group-border-radius);\n border-top-right-radius: 0;\n }\n .list-group-horizontal-sm > .list-group-item:last-child:not(:first-child) {\n border-top-right-radius: var(--bs-list-group-border-radius);\n border-bottom-left-radius: 0;\n }\n .list-group-horizontal-sm > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-sm > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n }\n .list-group-horizontal-sm > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n }\n}\n@media (min-width: 768px) {\n .list-group-horizontal-md {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .list-group-horizontal-md > .list-group-item:first-child:not(:last-child) {\n border-bottom-left-radius: var(--bs-list-group-border-radius);\n border-top-right-radius: 0;\n }\n .list-group-horizontal-md > .list-group-item:last-child:not(:first-child) {\n border-top-right-radius: var(--bs-list-group-border-radius);\n border-bottom-left-radius: 0;\n }\n .list-group-horizontal-md > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-md > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n }\n .list-group-horizontal-md > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n }\n}\n@media (min-width: 992px) {\n .list-group-horizontal-lg {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .list-group-horizontal-lg > .list-group-item:first-child:not(:last-child) {\n border-bottom-left-radius: var(--bs-list-group-border-radius);\n border-top-right-radius: 0;\n }\n .list-group-horizontal-lg > .list-group-item:last-child:not(:first-child) {\n border-top-right-radius: var(--bs-list-group-border-radius);\n border-bottom-left-radius: 0;\n }\n .list-group-horizontal-lg > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-lg > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n }\n .list-group-horizontal-lg > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n }\n}\n@media (min-width: 1200px) {\n .list-group-horizontal-xl {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .list-group-horizontal-xl > .list-group-item:first-child:not(:last-child) {\n border-bottom-left-radius: var(--bs-list-group-border-radius);\n border-top-right-radius: 0;\n }\n .list-group-horizontal-xl > .list-group-item:last-child:not(:first-child) {\n border-top-right-radius: var(--bs-list-group-border-radius);\n border-bottom-left-radius: 0;\n }\n .list-group-horizontal-xl > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-xl > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n }\n .list-group-horizontal-xl > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n }\n}\n@media (min-width: 1400px) {\n .list-group-horizontal-xxl {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .list-group-horizontal-xxl > .list-group-item:first-child:not(:last-child) {\n border-bottom-left-radius: var(--bs-list-group-border-radius);\n border-top-right-radius: 0;\n }\n .list-group-horizontal-xxl > .list-group-item:last-child:not(:first-child) {\n border-top-right-radius: var(--bs-list-group-border-radius);\n border-bottom-left-radius: 0;\n }\n .list-group-horizontal-xxl > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-xxl > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n }\n .list-group-horizontal-xxl > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n }\n}\n.list-group-flush {\n border-radius: 0;\n}\n.list-group-flush > .list-group-item {\n border-width: 0 0 var(--bs-list-group-border-width);\n}\n.list-group-flush > .list-group-item:last-child {\n border-bottom-width: 0;\n}\n.list-group-item-primary {\n --bs-list-group-color: var(--bs-primary-text-emphasis);\n --bs-list-group-bg: var(--bs-primary-bg-subtle);\n --bs-list-group-border-color: var(--bs-primary-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-primary-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-primary-border-subtle);\n --bs-list-group-active-color: var(--bs-primary-bg-subtle);\n --bs-list-group-active-bg: var(--bs-primary-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-primary-text-emphasis);\n}\n.list-group-item-secondary {\n --bs-list-group-color: var(--bs-secondary-text-emphasis);\n --bs-list-group-bg: var(--bs-secondary-bg-subtle);\n --bs-list-group-border-color: var(--bs-secondary-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-secondary-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-secondary-border-subtle);\n --bs-list-group-active-color: var(--bs-secondary-bg-subtle);\n --bs-list-group-active-bg: var(--bs-secondary-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-secondary-text-emphasis);\n}\n.list-group-item-success {\n --bs-list-group-color: var(--bs-success-text-emphasis);\n --bs-list-group-bg: var(--bs-success-bg-subtle);\n --bs-list-group-border-color: var(--bs-success-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-success-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-success-border-subtle);\n --bs-list-group-active-color: var(--bs-success-bg-subtle);\n --bs-list-group-active-bg: var(--bs-success-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-success-text-emphasis);\n}\n.list-group-item-info {\n --bs-list-group-color: var(--bs-info-text-emphasis);\n --bs-list-group-bg: var(--bs-info-bg-subtle);\n --bs-list-group-border-color: var(--bs-info-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-info-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-info-border-subtle);\n --bs-list-group-active-color: var(--bs-info-bg-subtle);\n --bs-list-group-active-bg: var(--bs-info-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-info-text-emphasis);\n}\n.list-group-item-warning {\n --bs-list-group-color: var(--bs-warning-text-emphasis);\n --bs-list-group-bg: var(--bs-warning-bg-subtle);\n --bs-list-group-border-color: var(--bs-warning-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-warning-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-warning-border-subtle);\n --bs-list-group-active-color: var(--bs-warning-bg-subtle);\n --bs-list-group-active-bg: var(--bs-warning-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-warning-text-emphasis);\n}\n.list-group-item-danger {\n --bs-list-group-color: var(--bs-danger-text-emphasis);\n --bs-list-group-bg: var(--bs-danger-bg-subtle);\n --bs-list-group-border-color: var(--bs-danger-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-danger-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-danger-border-subtle);\n --bs-list-group-active-color: var(--bs-danger-bg-subtle);\n --bs-list-group-active-bg: var(--bs-danger-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-danger-text-emphasis);\n}\n.list-group-item-light {\n --bs-list-group-color: var(--bs-light-text-emphasis);\n --bs-list-group-bg: var(--bs-light-bg-subtle);\n --bs-list-group-border-color: var(--bs-light-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-light-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-light-border-subtle);\n --bs-list-group-active-color: var(--bs-light-bg-subtle);\n --bs-list-group-active-bg: var(--bs-light-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-light-text-emphasis);\n}\n.list-group-item-dark {\n --bs-list-group-color: var(--bs-dark-text-emphasis);\n --bs-list-group-bg: var(--bs-dark-bg-subtle);\n --bs-list-group-border-color: var(--bs-dark-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-dark-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-dark-border-subtle);\n --bs-list-group-active-color: var(--bs-dark-bg-subtle);\n --bs-list-group-active-bg: var(--bs-dark-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-dark-text-emphasis);\n}\n.btn-close {\n --bs-btn-close-color: #000;\n --bs-btn-close-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e\");\n --bs-btn-close-opacity: 0.5;\n --bs-btn-close-hover-opacity: 0.75;\n --bs-btn-close-focus-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n --bs-btn-close-focus-opacity: 1;\n --bs-btn-close-disabled-opacity: 0.25;\n --bs-btn-close-white-filter: invert(1) grayscale(100%) brightness(200%);\n -webkit-box-sizing: content-box;\n box-sizing: content-box;\n width: 1em;\n height: 1em;\n padding: 0.25em 0.25em;\n color: var(--bs-btn-close-color);\n background: transparent var(--bs-btn-close-bg) center/1em auto no-repeat;\n border: 0;\n border-radius: 0.375rem;\n opacity: var(--bs-btn-close-opacity);\n}\n.btn-close:hover {\n color: var(--bs-btn-close-color);\n text-decoration: none;\n opacity: var(--bs-btn-close-hover-opacity);\n}\n.btn-close:focus {\n outline: 0;\n -webkit-box-shadow: var(--bs-btn-close-focus-shadow);\n box-shadow: var(--bs-btn-close-focus-shadow);\n opacity: var(--bs-btn-close-focus-opacity);\n}\n.btn-close:disabled, .btn-close.disabled {\n pointer-events: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n opacity: var(--bs-btn-close-disabled-opacity);\n}\n.btn-close-white {\n -webkit-filter: var(--bs-btn-close-white-filter);\n filter: var(--bs-btn-close-white-filter);\n}\n[data-bs-theme=dark] .btn-close {\n -webkit-filter: var(--bs-btn-close-white-filter);\n filter: var(--bs-btn-close-white-filter);\n}\n.toast {\n --bs-toast-zindex: 1090;\n --bs-toast-padding-x: 0.75rem;\n --bs-toast-padding-y: 0.5rem;\n --bs-toast-spacing: 1.5rem;\n --bs-toast-max-width: 350px;\n --bs-toast-font-size: 0.875rem;\n --bs-toast-color: ;\n --bs-toast-bg: rgba(var(--bs-body-bg-rgb), 0.85);\n --bs-toast-border-width: var(--bs-border-width);\n --bs-toast-border-color: var(--bs-border-color-translucent);\n --bs-toast-border-radius: var(--bs-border-radius);\n --bs-toast-box-shadow: var(--bs-box-shadow);\n --bs-toast-header-color: var(--bs-secondary-color);\n --bs-toast-header-bg: rgba(var(--bs-body-bg-rgb), 0.85);\n --bs-toast-header-border-color: var(--bs-border-color-translucent);\n width: var(--bs-toast-max-width);\n max-width: 100%;\n font-size: var(--bs-toast-font-size);\n color: var(--bs-toast-color);\n pointer-events: auto;\n background-color: var(--bs-toast-bg);\n background-clip: padding-box;\n border: var(--bs-toast-border-width) solid var(--bs-toast-border-color);\n -webkit-box-shadow: var(--bs-toast-box-shadow);\n box-shadow: var(--bs-toast-box-shadow);\n border-radius: var(--bs-toast-border-radius);\n}\n.toast.showing {\n opacity: 0;\n}\n.toast:not(.show) {\n display: none;\n}\n.toast-container {\n --bs-toast-zindex: 1090;\n position: absolute;\n z-index: var(--bs-toast-zindex);\n width: -webkit-max-content;\n width: -moz-max-content;\n width: max-content;\n max-width: 100%;\n pointer-events: none;\n}\n.toast-container > :not(:last-child) {\n margin-bottom: var(--bs-toast-spacing);\n}\n.toast-header {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n padding: var(--bs-toast-padding-y) var(--bs-toast-padding-x);\n color: var(--bs-toast-header-color);\n background-color: var(--bs-toast-header-bg);\n background-clip: padding-box;\n border-bottom: var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);\n border-top-left-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));\n border-top-right-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));\n}\n.toast-header .btn-close {\n margin-right: calc(-0.5 * var(--bs-toast-padding-x));\n margin-left: var(--bs-toast-padding-x);\n}\n.toast-body {\n padding: var(--bs-toast-padding-x);\n word-wrap: break-word;\n}\n.modal {\n --bs-modal-zindex: 1055;\n --bs-modal-width: 500px;\n --bs-modal-padding: 1rem;\n --bs-modal-margin: 0.5rem;\n --bs-modal-color: ;\n --bs-modal-bg: var(--bs-body-bg);\n --bs-modal-border-color: var(--bs-border-color-translucent);\n --bs-modal-border-width: var(--bs-border-width);\n --bs-modal-border-radius: var(--bs-border-radius-lg);\n --bs-modal-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);\n --bs-modal-inner-border-radius: calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));\n --bs-modal-header-padding-x: 1rem;\n --bs-modal-header-padding-y: 1rem;\n --bs-modal-header-padding: 1rem 1rem;\n --bs-modal-header-border-color: var(--bs-border-color);\n --bs-modal-header-border-width: var(--bs-border-width);\n --bs-modal-title-line-height: 1.5;\n --bs-modal-footer-gap: 0.5rem;\n --bs-modal-footer-bg: ;\n --bs-modal-footer-border-color: var(--bs-border-color);\n --bs-modal-footer-border-width: var(--bs-border-width);\n position: fixed;\n top: 0;\n left: 0;\n z-index: var(--bs-modal-zindex);\n display: none;\n width: 100%;\n height: 100%;\n overflow-x: hidden;\n overflow-y: auto;\n outline: 0;\n}\n.modal-dialog {\n position: relative;\n width: auto;\n margin: var(--bs-modal-margin);\n pointer-events: none;\n}\n.modal.fade .modal-dialog {\n -webkit-transition: -webkit-transform 0.3s ease-out;\n transition: -webkit-transform 0.3s ease-out;\n transition: transform 0.3s ease-out;\n transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;\n -webkit-transform: translate(0, -50px);\n transform: translate(0, -50px);\n}\n@media (prefers-reduced-motion: reduce) {\n .modal.fade .modal-dialog {\n -webkit-transition: none;\n transition: none;\n }\n}\n.modal.show .modal-dialog {\n -webkit-transform: none;\n transform: none;\n}\n.modal.modal-static .modal-dialog {\n -webkit-transform: scale(1.02);\n transform: scale(1.02);\n}\n.modal-dialog-scrollable {\n height: calc(100% - var(--bs-modal-margin) * 2);\n}\n.modal-dialog-scrollable .modal-content {\n max-height: 100%;\n overflow: hidden;\n}\n.modal-dialog-scrollable .modal-body {\n overflow-y: auto;\n}\n.modal-dialog-centered {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n min-height: calc(100% - var(--bs-modal-margin) * 2);\n}\n.modal-content {\n position: relative;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n width: 100%;\n color: var(--bs-modal-color);\n pointer-events: auto;\n background-color: var(--bs-modal-bg);\n background-clip: padding-box;\n border: var(--bs-modal-border-width) solid var(--bs-modal-border-color);\n border-radius: var(--bs-modal-border-radius);\n outline: 0;\n}\n.modal-backdrop {\n --bs-backdrop-zindex: 1050;\n --bs-backdrop-bg: #000;\n --bs-backdrop-opacity: 0.5;\n position: fixed;\n top: 0;\n left: 0;\n z-index: var(--bs-backdrop-zindex);\n width: 100vw;\n height: 100vh;\n background-color: var(--bs-backdrop-bg);\n}\n.modal-backdrop.fade {\n opacity: 0;\n}\n.modal-backdrop.show {\n opacity: var(--bs-backdrop-opacity);\n}\n.modal-header {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n padding: var(--bs-modal-header-padding);\n border-bottom: var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);\n border-top-left-radius: var(--bs-modal-inner-border-radius);\n border-top-right-radius: var(--bs-modal-inner-border-radius);\n}\n.modal-header .btn-close {\n padding: calc(var(--bs-modal-header-padding-y) * 0.5) calc(var(--bs-modal-header-padding-x) * 0.5);\n margin: calc(-0.5 * var(--bs-modal-header-padding-y)) calc(-0.5 * var(--bs-modal-header-padding-x)) calc(-0.5 * var(--bs-modal-header-padding-y)) auto;\n}\n.modal-title {\n margin-bottom: 0;\n line-height: var(--bs-modal-title-line-height);\n}\n.modal-body {\n position: relative;\n -webkit-box-flex: 1;\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n padding: var(--bs-modal-padding);\n}\n.modal-footer {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: end;\n -ms-flex-pack: end;\n justify-content: flex-end;\n padding: calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * 0.5);\n background-color: var(--bs-modal-footer-bg);\n border-top: var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);\n border-bottom-right-radius: var(--bs-modal-inner-border-radius);\n border-bottom-left-radius: var(--bs-modal-inner-border-radius);\n}\n.modal-footer > * {\n margin: calc(var(--bs-modal-footer-gap) * 0.5);\n}\n@media (min-width: 576px) {\n .modal {\n --bs-modal-margin: 1.75rem;\n --bs-modal-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);\n }\n .modal-dialog {\n max-width: var(--bs-modal-width);\n margin-right: auto;\n margin-left: auto;\n }\n .modal-sm {\n --bs-modal-width: 300px;\n }\n}\n@media (min-width: 992px) {\n .modal-lg,\n .modal-xl {\n --bs-modal-width: 800px;\n }\n}\n@media (min-width: 1200px) {\n .modal-xl {\n --bs-modal-width: 1140px;\n }\n}\n.modal-fullscreen {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n}\n.modal-fullscreen .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n}\n.modal-fullscreen .modal-header,\n.modal-fullscreen .modal-footer {\n border-radius: 0;\n}\n.modal-fullscreen .modal-body {\n overflow-y: auto;\n}\n@media (max-width: 575.98px) {\n .modal-fullscreen-sm-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-sm-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-sm-down .modal-header,\n .modal-fullscreen-sm-down .modal-footer {\n border-radius: 0;\n }\n .modal-fullscreen-sm-down .modal-body {\n overflow-y: auto;\n }\n}\n@media (max-width: 767.98px) {\n .modal-fullscreen-md-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-md-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-md-down .modal-header,\n .modal-fullscreen-md-down .modal-footer {\n border-radius: 0;\n }\n .modal-fullscreen-md-down .modal-body {\n overflow-y: auto;\n }\n}\n@media (max-width: 991.98px) {\n .modal-fullscreen-lg-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-lg-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-lg-down .modal-header,\n .modal-fullscreen-lg-down .modal-footer {\n border-radius: 0;\n }\n .modal-fullscreen-lg-down .modal-body {\n overflow-y: auto;\n }\n}\n@media (max-width: 1199.98px) {\n .modal-fullscreen-xl-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-xl-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-xl-down .modal-header,\n .modal-fullscreen-xl-down .modal-footer {\n border-radius: 0;\n }\n .modal-fullscreen-xl-down .modal-body {\n overflow-y: auto;\n }\n}\n@media (max-width: 1399.98px) {\n .modal-fullscreen-xxl-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-xxl-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-xxl-down .modal-header,\n .modal-fullscreen-xxl-down .modal-footer {\n border-radius: 0;\n }\n .modal-fullscreen-xxl-down .modal-body {\n overflow-y: auto;\n }\n}\n.tooltip {\n --bs-tooltip-zindex: 1080;\n --bs-tooltip-max-width: 200px;\n --bs-tooltip-padding-x: 0.5rem;\n --bs-tooltip-padding-y: 0.25rem;\n --bs-tooltip-margin: ;\n --bs-tooltip-font-size: 0.875rem;\n --bs-tooltip-color: var(--bs-body-bg);\n --bs-tooltip-bg: var(--bs-emphasis-color);\n --bs-tooltip-border-radius: var(--bs-border-radius);\n --bs-tooltip-opacity: 0.9;\n --bs-tooltip-arrow-width: 0.8rem;\n --bs-tooltip-arrow-height: 0.4rem;\n z-index: var(--bs-tooltip-zindex);\n display: block;\n margin: var(--bs-tooltip-margin);\n font-family: var(--bs-font-sans-serif);\n font-style: normal;\n font-weight: 400;\n line-height: 1.5;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n white-space: normal;\n word-spacing: normal;\n line-break: auto;\n font-size: var(--bs-tooltip-font-size);\n word-wrap: break-word;\n opacity: 0;\n}\n.tooltip.show {\n opacity: var(--bs-tooltip-opacity);\n}\n.tooltip .tooltip-arrow {\n display: block;\n width: var(--bs-tooltip-arrow-width);\n height: var(--bs-tooltip-arrow-height);\n}\n.tooltip .tooltip-arrow::before {\n position: absolute;\n content: \"\";\n border-color: transparent;\n border-style: solid;\n}\n.bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow {\n bottom: calc(-1 * var(--bs-tooltip-arrow-height));\n}\n.bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before {\n top: -1px;\n border-width: var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;\n border-top-color: var(--bs-tooltip-bg);\n}\n/* rtl:begin:ignore */\n.bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow {\n left: calc(-1 * var(--bs-tooltip-arrow-height));\n width: var(--bs-tooltip-arrow-height);\n height: var(--bs-tooltip-arrow-width);\n}\n.bs-tooltip-end .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before {\n right: -1px;\n border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;\n border-right-color: var(--bs-tooltip-bg);\n}\n/* rtl:end:ignore */\n.bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow {\n top: calc(-1 * var(--bs-tooltip-arrow-height));\n}\n.bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before {\n bottom: -1px;\n border-width: 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);\n border-bottom-color: var(--bs-tooltip-bg);\n}\n/* rtl:begin:ignore */\n.bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow {\n right: calc(-1 * var(--bs-tooltip-arrow-height));\n width: var(--bs-tooltip-arrow-height);\n height: var(--bs-tooltip-arrow-width);\n}\n.bs-tooltip-start .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before {\n left: -1px;\n border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);\n border-left-color: var(--bs-tooltip-bg);\n}\n/* rtl:end:ignore */\n.tooltip-inner {\n max-width: var(--bs-tooltip-max-width);\n padding: var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);\n color: var(--bs-tooltip-color);\n text-align: center;\n background-color: var(--bs-tooltip-bg);\n border-radius: var(--bs-tooltip-border-radius);\n}\n.popover {\n --bs-popover-zindex: 1070;\n --bs-popover-max-width: 276px;\n --bs-popover-font-size: 0.875rem;\n --bs-popover-bg: var(--bs-body-bg);\n --bs-popover-border-width: var(--bs-border-width);\n --bs-popover-border-color: var(--bs-border-color-translucent);\n --bs-popover-border-radius: var(--bs-border-radius-lg);\n --bs-popover-inner-border-radius: calc(var(--bs-border-radius-lg) - var(--bs-border-width));\n --bs-popover-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);\n --bs-popover-header-padding-x: 1rem;\n --bs-popover-header-padding-y: 0.5rem;\n --bs-popover-header-font-size: 1rem;\n --bs-popover-header-color: inherit;\n --bs-popover-header-bg: var(--bs-secondary-bg);\n --bs-popover-body-padding-x: 1rem;\n --bs-popover-body-padding-y: 1rem;\n --bs-popover-body-color: var(--bs-body-color);\n --bs-popover-arrow-width: 1rem;\n --bs-popover-arrow-height: 0.5rem;\n --bs-popover-arrow-border: var(--bs-popover-border-color);\n z-index: var(--bs-popover-zindex);\n display: block;\n max-width: var(--bs-popover-max-width);\n font-family: var(--bs-font-sans-serif);\n font-style: normal;\n font-weight: 400;\n line-height: 1.5;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n white-space: normal;\n word-spacing: normal;\n line-break: auto;\n font-size: var(--bs-popover-font-size);\n word-wrap: break-word;\n background-color: var(--bs-popover-bg);\n background-clip: padding-box;\n border: var(--bs-popover-border-width) solid var(--bs-popover-border-color);\n border-radius: var(--bs-popover-border-radius);\n}\n.popover .popover-arrow {\n display: block;\n width: var(--bs-popover-arrow-width);\n height: var(--bs-popover-arrow-height);\n}\n.popover .popover-arrow::before, .popover .popover-arrow::after {\n position: absolute;\n display: block;\n content: \"\";\n border-color: transparent;\n border-style: solid;\n border-width: 0;\n}\n.bs-popover-top > .popover-arrow, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow {\n bottom: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));\n}\n.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before, .bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {\n border-width: var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;\n}\n.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before {\n bottom: 0;\n border-top-color: var(--bs-popover-arrow-border);\n}\n.bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {\n bottom: var(--bs-popover-border-width);\n border-top-color: var(--bs-popover-bg);\n}\n/* rtl:begin:ignore */\n.bs-popover-end > .popover-arrow, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow {\n left: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));\n width: var(--bs-popover-arrow-height);\n height: var(--bs-popover-arrow-width);\n}\n.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before, .bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {\n border-width: calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;\n}\n.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before {\n left: 0;\n border-right-color: var(--bs-popover-arrow-border);\n}\n.bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {\n left: var(--bs-popover-border-width);\n border-right-color: var(--bs-popover-bg);\n}\n/* rtl:end:ignore */\n.bs-popover-bottom > .popover-arrow, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow {\n top: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));\n}\n.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before, .bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {\n border-width: 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);\n}\n.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before {\n top: 0;\n border-bottom-color: var(--bs-popover-arrow-border);\n}\n.bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {\n top: var(--bs-popover-border-width);\n border-bottom-color: var(--bs-popover-bg);\n}\n.bs-popover-bottom .popover-header::before, .bs-popover-auto[data-popper-placement^=bottom] .popover-header::before {\n position: absolute;\n top: 0;\n left: 50%;\n display: block;\n width: var(--bs-popover-arrow-width);\n margin-left: calc(-0.5 * var(--bs-popover-arrow-width));\n content: \"\";\n border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-header-bg);\n}\n/* rtl:begin:ignore */\n.bs-popover-start > .popover-arrow, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow {\n right: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));\n width: var(--bs-popover-arrow-height);\n height: var(--bs-popover-arrow-width);\n}\n.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before, .bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {\n border-width: calc(var(--bs-popover-arrow-width) * 0.5) 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);\n}\n.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before {\n right: 0;\n border-left-color: var(--bs-popover-arrow-border);\n}\n.bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {\n right: var(--bs-popover-border-width);\n border-left-color: var(--bs-popover-bg);\n}\n/* rtl:end:ignore */\n.popover-header {\n padding: var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);\n margin-bottom: 0;\n font-size: var(--bs-popover-header-font-size);\n color: var(--bs-popover-header-color);\n background-color: var(--bs-popover-header-bg);\n border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-border-color);\n border-top-left-radius: var(--bs-popover-inner-border-radius);\n border-top-right-radius: var(--bs-popover-inner-border-radius);\n}\n.popover-header:empty {\n display: none;\n}\n.popover-body {\n padding: var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);\n color: var(--bs-popover-body-color);\n}\n.carousel {\n position: relative;\n}\n.carousel.pointer-event {\n -ms-touch-action: pan-y;\n touch-action: pan-y;\n}\n.carousel-inner {\n position: relative;\n width: 100%;\n overflow: hidden;\n}\n.carousel-inner::after {\n display: block;\n clear: both;\n content: \"\";\n}\n.carousel-item {\n position: relative;\n display: none;\n float: left;\n width: 100%;\n margin-right: -100%;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n -webkit-transition: -webkit-transform 0.6s ease-in-out;\n transition: -webkit-transform 0.6s ease-in-out;\n transition: transform 0.6s ease-in-out;\n transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-item {\n -webkit-transition: none;\n transition: none;\n }\n}\n.carousel-item.active,\n.carousel-item-next,\n.carousel-item-prev {\n display: block;\n}\n.carousel-item-next:not(.carousel-item-start),\n.active.carousel-item-end {\n -webkit-transform: translateX(100%);\n transform: translateX(100%);\n}\n.carousel-item-prev:not(.carousel-item-end),\n.active.carousel-item-start {\n -webkit-transform: translateX(-100%);\n transform: translateX(-100%);\n}\n.carousel-fade .carousel-item {\n opacity: 0;\n -webkit-transition-property: opacity;\n transition-property: opacity;\n -webkit-transform: none;\n transform: none;\n}\n.carousel-fade .carousel-item.active,\n.carousel-fade .carousel-item-next.carousel-item-start,\n.carousel-fade .carousel-item-prev.carousel-item-end {\n z-index: 1;\n opacity: 1;\n}\n.carousel-fade .active.carousel-item-start,\n.carousel-fade .active.carousel-item-end {\n z-index: 0;\n opacity: 0;\n -webkit-transition: opacity 0s 0.6s;\n transition: opacity 0s 0.6s;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-fade .active.carousel-item-start,\n .carousel-fade .active.carousel-item-end {\n -webkit-transition: none;\n transition: none;\n }\n}\n.carousel-control-prev,\n.carousel-control-next {\n position: absolute;\n top: 0;\n bottom: 0;\n z-index: 1;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n width: 15%;\n padding: 0;\n color: #fff;\n text-align: center;\n background: none;\n border: 0;\n opacity: 0.5;\n -webkit-transition: opacity 0.15s ease;\n transition: opacity 0.15s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-control-prev,\n .carousel-control-next {\n -webkit-transition: none;\n transition: none;\n }\n}\n.carousel-control-prev:hover, .carousel-control-prev:focus,\n.carousel-control-next:hover,\n.carousel-control-next:focus {\n color: #fff;\n text-decoration: none;\n outline: 0;\n opacity: 0.9;\n}\n.carousel-control-prev {\n left: 0;\n}\n.carousel-control-next {\n right: 0;\n}\n.carousel-control-prev-icon,\n.carousel-control-next-icon {\n display: inline-block;\n width: 2rem;\n height: 2rem;\n background-repeat: no-repeat;\n background-position: 50%;\n background-size: 100% 100%;\n}\n/* rtl:options: {\n \"autoRename\": true,\n \"stringMap\":[ {\n \"name\" : \"prev-next\",\n \"search\" : \"prev\",\n \"replace\" : \"next\"\n } ]\n} */\n.carousel-control-prev-icon {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e\");\n}\n.carousel-control-next-icon {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\");\n}\n.carousel-indicators {\n position: absolute;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 2;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n padding: 0;\n margin-right: 15%;\n margin-bottom: 1rem;\n margin-left: 15%;\n}\n.carousel-indicators [data-bs-target] {\n -webkit-box-sizing: content-box;\n box-sizing: content-box;\n -webkit-box-flex: 0;\n -ms-flex: 0 1 auto;\n flex: 0 1 auto;\n width: 30px;\n height: 3px;\n padding: 0;\n margin-right: 3px;\n margin-left: 3px;\n text-indent: -999px;\n cursor: pointer;\n background-color: #fff;\n background-clip: padding-box;\n border: 0;\n border-top: 10px solid transparent;\n border-bottom: 10px solid transparent;\n opacity: 0.5;\n -webkit-transition: opacity 0.6s ease;\n transition: opacity 0.6s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-indicators [data-bs-target] {\n -webkit-transition: none;\n transition: none;\n }\n}\n.carousel-indicators .active {\n opacity: 1;\n}\n.carousel-caption {\n position: absolute;\n right: 15%;\n bottom: 1.25rem;\n left: 15%;\n padding-top: 1.25rem;\n padding-bottom: 1.25rem;\n color: #fff;\n text-align: center;\n}\n.carousel-dark .carousel-control-prev-icon,\n.carousel-dark .carousel-control-next-icon {\n -webkit-filter: invert(1) grayscale(100);\n filter: invert(1) grayscale(100);\n}\n.carousel-dark .carousel-indicators [data-bs-target] {\n background-color: #000;\n}\n.carousel-dark .carousel-caption {\n color: #000;\n}\n[data-bs-theme=dark] .carousel .carousel-control-prev-icon,\n[data-bs-theme=dark] .carousel .carousel-control-next-icon, [data-bs-theme=dark].carousel .carousel-control-prev-icon,\n[data-bs-theme=dark].carousel .carousel-control-next-icon {\n -webkit-filter: invert(1) grayscale(100);\n filter: invert(1) grayscale(100);\n}\n[data-bs-theme=dark] .carousel .carousel-indicators [data-bs-target], [data-bs-theme=dark].carousel .carousel-indicators [data-bs-target] {\n background-color: #000;\n}\n[data-bs-theme=dark] .carousel .carousel-caption, [data-bs-theme=dark].carousel .carousel-caption {\n color: #000;\n}\n.spinner-grow,\n.spinner-border {\n display: inline-block;\n width: var(--bs-spinner-width);\n height: var(--bs-spinner-height);\n vertical-align: var(--bs-spinner-vertical-align);\n border-radius: 50%;\n -webkit-animation: var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name);\n animation: var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name);\n}\n@-webkit-keyframes spinner-border {\n to {\n -webkit-transform: rotate(360deg) /* rtl:ignore */;\n transform: rotate(360deg) /* rtl:ignore */;\n }\n}\n@keyframes spinner-border {\n to {\n -webkit-transform: rotate(360deg) /* rtl:ignore */;\n transform: rotate(360deg) /* rtl:ignore */;\n }\n}\n.spinner-border {\n --bs-spinner-width: 2rem;\n --bs-spinner-height: 2rem;\n --bs-spinner-vertical-align: -0.125em;\n --bs-spinner-border-width: 0.25em;\n --bs-spinner-animation-speed: 0.75s;\n --bs-spinner-animation-name: spinner-border;\n border: var(--bs-spinner-border-width) solid currentcolor;\n border-right-color: transparent;\n}\n.spinner-border-sm {\n --bs-spinner-width: 1rem;\n --bs-spinner-height: 1rem;\n --bs-spinner-border-width: 0.2em;\n}\n@-webkit-keyframes spinner-grow {\n 0% {\n -webkit-transform: scale(0);\n transform: scale(0);\n }\n 50% {\n opacity: 1;\n -webkit-transform: none;\n transform: none;\n }\n}\n@keyframes spinner-grow {\n 0% {\n -webkit-transform: scale(0);\n transform: scale(0);\n }\n 50% {\n opacity: 1;\n -webkit-transform: none;\n transform: none;\n }\n}\n.spinner-grow {\n --bs-spinner-width: 2rem;\n --bs-spinner-height: 2rem;\n --bs-spinner-vertical-align: -0.125em;\n --bs-spinner-animation-speed: 0.75s;\n --bs-spinner-animation-name: spinner-grow;\n background-color: currentcolor;\n opacity: 0;\n}\n.spinner-grow-sm {\n --bs-spinner-width: 1rem;\n --bs-spinner-height: 1rem;\n}\n@media (prefers-reduced-motion: reduce) {\n .spinner-border,\n .spinner-grow {\n --bs-spinner-animation-speed: 1.5s;\n }\n}\n.offcanvas, .offcanvas-xxl, .offcanvas-xl, .offcanvas-lg, .offcanvas-md, .offcanvas-sm {\n --bs-offcanvas-zindex: 1045;\n --bs-offcanvas-width: 400px;\n --bs-offcanvas-height: 30vh;\n --bs-offcanvas-padding-x: 1rem;\n --bs-offcanvas-padding-y: 1rem;\n --bs-offcanvas-color: var(--bs-body-color);\n --bs-offcanvas-bg: var(--bs-body-bg);\n --bs-offcanvas-border-width: var(--bs-border-width);\n --bs-offcanvas-border-color: var(--bs-border-color-translucent);\n --bs-offcanvas-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);\n --bs-offcanvas-transition: transform 0.3s ease-in-out;\n --bs-offcanvas-title-line-height: 1.5;\n}\n@media (max-width: 575.98px) {\n .offcanvas-sm {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n -webkit-transition: var(--bs-offcanvas-transition);\n transition: var(--bs-offcanvas-transition);\n }\n}\n@media (max-width: 575.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-sm {\n -webkit-transition: none;\n transition: none;\n }\n}\n@media (max-width: 575.98px) {\n .offcanvas-sm.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateX(-100%);\n transform: translateX(-100%);\n }\n .offcanvas-sm.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateX(100%);\n transform: translateX(100%);\n }\n .offcanvas-sm.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateY(-100%);\n transform: translateY(-100%);\n }\n .offcanvas-sm.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateY(100%);\n transform: translateY(100%);\n }\n .offcanvas-sm.showing, .offcanvas-sm.show:not(.hiding) {\n -webkit-transform: none;\n transform: none;\n }\n .offcanvas-sm.showing, .offcanvas-sm.hiding, .offcanvas-sm.show {\n visibility: visible;\n }\n}\n@media (min-width: 576px) {\n .offcanvas-sm {\n --bs-offcanvas-height: auto;\n --bs-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-sm .offcanvas-header {\n display: none;\n }\n .offcanvas-sm .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n@media (max-width: 767.98px) {\n .offcanvas-md {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n -webkit-transition: var(--bs-offcanvas-transition);\n transition: var(--bs-offcanvas-transition);\n }\n}\n@media (max-width: 767.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-md {\n -webkit-transition: none;\n transition: none;\n }\n}\n@media (max-width: 767.98px) {\n .offcanvas-md.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateX(-100%);\n transform: translateX(-100%);\n }\n .offcanvas-md.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateX(100%);\n transform: translateX(100%);\n }\n .offcanvas-md.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateY(-100%);\n transform: translateY(-100%);\n }\n .offcanvas-md.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateY(100%);\n transform: translateY(100%);\n }\n .offcanvas-md.showing, .offcanvas-md.show:not(.hiding) {\n -webkit-transform: none;\n transform: none;\n }\n .offcanvas-md.showing, .offcanvas-md.hiding, .offcanvas-md.show {\n visibility: visible;\n }\n}\n@media (min-width: 768px) {\n .offcanvas-md {\n --bs-offcanvas-height: auto;\n --bs-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-md .offcanvas-header {\n display: none;\n }\n .offcanvas-md .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n@media (max-width: 991.98px) {\n .offcanvas-lg {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n -webkit-transition: var(--bs-offcanvas-transition);\n transition: var(--bs-offcanvas-transition);\n }\n}\n@media (max-width: 991.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-lg {\n -webkit-transition: none;\n transition: none;\n }\n}\n@media (max-width: 991.98px) {\n .offcanvas-lg.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateX(-100%);\n transform: translateX(-100%);\n }\n .offcanvas-lg.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateX(100%);\n transform: translateX(100%);\n }\n .offcanvas-lg.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateY(-100%);\n transform: translateY(-100%);\n }\n .offcanvas-lg.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateY(100%);\n transform: translateY(100%);\n }\n .offcanvas-lg.showing, .offcanvas-lg.show:not(.hiding) {\n -webkit-transform: none;\n transform: none;\n }\n .offcanvas-lg.showing, .offcanvas-lg.hiding, .offcanvas-lg.show {\n visibility: visible;\n }\n}\n@media (min-width: 992px) {\n .offcanvas-lg {\n --bs-offcanvas-height: auto;\n --bs-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-lg .offcanvas-header {\n display: none;\n }\n .offcanvas-lg .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n@media (max-width: 1199.98px) {\n .offcanvas-xl {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n -webkit-transition: var(--bs-offcanvas-transition);\n transition: var(--bs-offcanvas-transition);\n }\n}\n@media (max-width: 1199.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-xl {\n -webkit-transition: none;\n transition: none;\n }\n}\n@media (max-width: 1199.98px) {\n .offcanvas-xl.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateX(-100%);\n transform: translateX(-100%);\n }\n .offcanvas-xl.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateX(100%);\n transform: translateX(100%);\n }\n .offcanvas-xl.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateY(-100%);\n transform: translateY(-100%);\n }\n .offcanvas-xl.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateY(100%);\n transform: translateY(100%);\n }\n .offcanvas-xl.showing, .offcanvas-xl.show:not(.hiding) {\n -webkit-transform: none;\n transform: none;\n }\n .offcanvas-xl.showing, .offcanvas-xl.hiding, .offcanvas-xl.show {\n visibility: visible;\n }\n}\n@media (min-width: 1200px) {\n .offcanvas-xl {\n --bs-offcanvas-height: auto;\n --bs-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-xl .offcanvas-header {\n display: none;\n }\n .offcanvas-xl .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n@media (max-width: 1399.98px) {\n .offcanvas-xxl {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n -webkit-transition: var(--bs-offcanvas-transition);\n transition: var(--bs-offcanvas-transition);\n }\n}\n@media (max-width: 1399.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-xxl {\n -webkit-transition: none;\n transition: none;\n }\n}\n@media (max-width: 1399.98px) {\n .offcanvas-xxl.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateX(-100%);\n transform: translateX(-100%);\n }\n .offcanvas-xxl.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateX(100%);\n transform: translateX(100%);\n }\n .offcanvas-xxl.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateY(-100%);\n transform: translateY(-100%);\n }\n .offcanvas-xxl.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateY(100%);\n transform: translateY(100%);\n }\n .offcanvas-xxl.showing, .offcanvas-xxl.show:not(.hiding) {\n -webkit-transform: none;\n transform: none;\n }\n .offcanvas-xxl.showing, .offcanvas-xxl.hiding, .offcanvas-xxl.show {\n visibility: visible;\n }\n}\n@media (min-width: 1400px) {\n .offcanvas-xxl {\n --bs-offcanvas-height: auto;\n --bs-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-xxl .offcanvas-header {\n display: none;\n }\n .offcanvas-xxl .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n.offcanvas {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n -webkit-transition: var(--bs-offcanvas-transition);\n transition: var(--bs-offcanvas-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .offcanvas {\n -webkit-transition: none;\n transition: none;\n }\n}\n.offcanvas.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateX(-100%);\n transform: translateX(-100%);\n}\n.offcanvas.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateX(100%);\n transform: translateX(100%);\n}\n.offcanvas.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateY(-100%);\n transform: translateY(-100%);\n}\n.offcanvas.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateY(100%);\n transform: translateY(100%);\n}\n.offcanvas.showing, .offcanvas.show:not(.hiding) {\n -webkit-transform: none;\n transform: none;\n}\n.offcanvas.showing, .offcanvas.hiding, .offcanvas.show {\n visibility: visible;\n}\n.offcanvas-backdrop {\n position: fixed;\n top: 0;\n left: 0;\n z-index: 1040;\n width: 100vw;\n height: 100vh;\n background-color: #000;\n}\n.offcanvas-backdrop.fade {\n opacity: 0;\n}\n.offcanvas-backdrop.show {\n opacity: 0.5;\n}\n.offcanvas-header {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);\n}\n.offcanvas-header .btn-close {\n padding: calc(var(--bs-offcanvas-padding-y) * 0.5) calc(var(--bs-offcanvas-padding-x) * 0.5);\n margin-top: calc(-0.5 * var(--bs-offcanvas-padding-y));\n margin-right: calc(-0.5 * var(--bs-offcanvas-padding-x));\n margin-bottom: calc(-0.5 * var(--bs-offcanvas-padding-y));\n}\n.offcanvas-title {\n margin-bottom: 0;\n line-height: var(--bs-offcanvas-title-line-height);\n}\n.offcanvas-body {\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);\n overflow-y: auto;\n}\n.placeholder {\n display: inline-block;\n min-height: 1em;\n vertical-align: middle;\n cursor: wait;\n background-color: currentcolor;\n opacity: 0.5;\n}\n.placeholder.btn::before {\n display: inline-block;\n content: \"\";\n}\n.placeholder-xs {\n min-height: 0.6em;\n}\n.placeholder-sm {\n min-height: 0.8em;\n}\n.placeholder-lg {\n min-height: 1.2em;\n}\n.placeholder-glow .placeholder {\n -webkit-animation: placeholder-glow 2s ease-in-out infinite;\n animation: placeholder-glow 2s ease-in-out infinite;\n}\n@-webkit-keyframes placeholder-glow {\n 50% {\n opacity: 0.2;\n }\n}\n@keyframes placeholder-glow {\n 50% {\n opacity: 0.2;\n }\n}\n.placeholder-wave {\n -webkit-mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);\n mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);\n -webkit-mask-size: 200% 100%;\n mask-size: 200% 100%;\n -webkit-animation: placeholder-wave 2s linear infinite;\n animation: placeholder-wave 2s linear infinite;\n}\n@-webkit-keyframes placeholder-wave {\n 100% {\n -webkit-mask-position: -200% 0%;\n mask-position: -200% 0%;\n }\n}\n@keyframes placeholder-wave {\n 100% {\n -webkit-mask-position: -200% 0%;\n mask-position: -200% 0%;\n }\n}\n.clearfix::after {\n display: block;\n clear: both;\n content: \"\";\n}\n.text-bg-primary {\n color: #fff !important;\n background-color: RGBA(13, 110, 253, var(--bs-bg-opacity, 1)) !important;\n}\n.text-bg-secondary {\n color: #fff !important;\n background-color: RGBA(108, 117, 125, var(--bs-bg-opacity, 1)) !important;\n}\n.text-bg-success {\n color: #fff !important;\n background-color: RGBA(25, 135, 84, var(--bs-bg-opacity, 1)) !important;\n}\n.text-bg-info {\n color: #000 !important;\n background-color: RGBA(13, 202, 240, var(--bs-bg-opacity, 1)) !important;\n}\n.text-bg-warning {\n color: #000 !important;\n background-color: RGBA(255, 193, 7, var(--bs-bg-opacity, 1)) !important;\n}\n.text-bg-danger {\n color: #fff !important;\n background-color: RGBA(220, 53, 69, var(--bs-bg-opacity, 1)) !important;\n}\n.text-bg-light {\n color: #000 !important;\n background-color: RGBA(248, 249, 250, var(--bs-bg-opacity, 1)) !important;\n}\n.text-bg-dark {\n color: #fff !important;\n background-color: RGBA(33, 37, 41, var(--bs-bg-opacity, 1)) !important;\n}\n.link-primary {\n color: RGBA(var(--bs-primary-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-primary:hover, .link-primary:focus {\n color: RGBA(10, 88, 202, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(10, 88, 202, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(10, 88, 202, var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-secondary {\n color: RGBA(var(--bs-secondary-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-secondary:hover, .link-secondary:focus {\n color: RGBA(86, 94, 100, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(86, 94, 100, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(86, 94, 100, var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-success {\n color: RGBA(var(--bs-success-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-success:hover, .link-success:focus {\n color: RGBA(20, 108, 67, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(20, 108, 67, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(20, 108, 67, var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-info {\n color: RGBA(var(--bs-info-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-info:hover, .link-info:focus {\n color: RGBA(61, 213, 243, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(61, 213, 243, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(61, 213, 243, var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-warning {\n color: RGBA(var(--bs-warning-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-warning:hover, .link-warning:focus {\n color: RGBA(255, 205, 57, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(255, 205, 57, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(255, 205, 57, var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-danger {\n color: RGBA(var(--bs-danger-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-danger:hover, .link-danger:focus {\n color: RGBA(176, 42, 55, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(176, 42, 55, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(176, 42, 55, var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-light {\n color: RGBA(var(--bs-light-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-light:hover, .link-light:focus {\n color: RGBA(249, 250, 251, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(249, 250, 251, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(249, 250, 251, var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-dark {\n color: RGBA(var(--bs-dark-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-dark:hover, .link-dark:focus {\n color: RGBA(26, 30, 33, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(26, 30, 33, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(26, 30, 33, var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-body-emphasis {\n color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-body-emphasis:hover, .link-body-emphasis:focus {\n color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 0.75)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important;\n text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important;\n}\n.focus-ring:focus {\n outline: 0;\n -webkit-box-shadow: var(--bs-focus-ring-x, 0) var(--bs-focus-ring-y, 0) var(--bs-focus-ring-blur, 0) var(--bs-focus-ring-width) var(--bs-focus-ring-color);\n box-shadow: var(--bs-focus-ring-x, 0) var(--bs-focus-ring-y, 0) var(--bs-focus-ring-blur, 0) var(--bs-focus-ring-width) var(--bs-focus-ring-color);\n}\n.icon-link {\n display: -webkit-inline-box;\n display: -ms-inline-flexbox;\n display: inline-flex;\n gap: 0.375rem;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));\n text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));\n text-underline-offset: 0.25em;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n}\n.icon-link > .bi {\n -ms-flex-negative: 0;\n flex-shrink: 0;\n width: 1em;\n height: 1em;\n fill: currentcolor;\n -webkit-transition: 0.2s ease-in-out transform;\n transition: 0.2s ease-in-out transform;\n}\n@media (prefers-reduced-motion: reduce) {\n .icon-link > .bi {\n -webkit-transition: none;\n transition: none;\n }\n}\n.icon-link-hover:hover > .bi, .icon-link-hover:focus-visible > .bi {\n -webkit-transform: var(--bs-icon-link-transform, translate3d(0.25em, 0, 0));\n transform: var(--bs-icon-link-transform, translate3d(0.25em, 0, 0));\n}\n.ratio {\n position: relative;\n width: 100%;\n}\n.ratio::before {\n display: block;\n padding-top: var(--bs-aspect-ratio);\n content: \"\";\n}\n.ratio > * {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n}\n.ratio-1x1 {\n --bs-aspect-ratio: 100%;\n}\n.ratio-4x3 {\n --bs-aspect-ratio: 75%;\n}\n.ratio-16x9 {\n --bs-aspect-ratio: 56.25%;\n}\n.ratio-21x9 {\n --bs-aspect-ratio: 42.8571428571%;\n}\n.fixed-top {\n position: fixed;\n top: 0;\n right: 0;\n left: 0;\n z-index: 1030;\n}\n.fixed-bottom {\n position: fixed;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1030;\n}\n.sticky-top {\n position: sticky;\n top: 0;\n z-index: 1020;\n}\n.sticky-bottom {\n position: sticky;\n bottom: 0;\n z-index: 1020;\n}\n@media (min-width: 576px) {\n .sticky-sm-top {\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-sm-bottom {\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 768px) {\n .sticky-md-top {\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-md-bottom {\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 992px) {\n .sticky-lg-top {\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-lg-bottom {\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 1200px) {\n .sticky-xl-top {\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-xl-bottom {\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 1400px) {\n .sticky-xxl-top {\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-xxl-bottom {\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n.hstack {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-item-align: stretch;\n align-self: stretch;\n}\n.vstack {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 1;\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n -ms-flex-item-align: stretch;\n align-self: stretch;\n}\n.visually-hidden,\n.visually-hidden-focusable:not(:focus):not(:focus-within) {\n width: 1px !important;\n height: 1px !important;\n padding: 0 !important;\n margin: -1px !important;\n overflow: hidden !important;\n clip: rect(0, 0, 0, 0) !important;\n white-space: nowrap !important;\n border: 0 !important;\n}\n.visually-hidden:not(caption),\n.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption) {\n position: absolute !important;\n}\n.stretched-link::after {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1;\n content: \"\";\n}\n.text-truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.vr {\n display: inline-block;\n -ms-flex-item-align: stretch;\n align-self: stretch;\n width: 1px;\n min-height: 1em;\n background-color: currentcolor;\n opacity: 0.25;\n}\n.align-baseline {\n vertical-align: baseline !important;\n}\n.align-top {\n vertical-align: top !important;\n}\n.align-middle {\n vertical-align: middle !important;\n}\n.align-bottom {\n vertical-align: bottom !important;\n}\n.align-text-bottom {\n vertical-align: text-bottom !important;\n}\n.align-text-top {\n vertical-align: text-top !important;\n}\n.float-start {\n float: left !important;\n}\n.float-end {\n float: right !important;\n}\n.float-none {\n float: none !important;\n}\n.object-fit-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n}\n.object-fit-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n}\n.object-fit-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n}\n.object-fit-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n}\n.object-fit-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n}\n.opacity-0 {\n opacity: 0 !important;\n}\n.opacity-25 {\n opacity: 0.25 !important;\n}\n.opacity-50 {\n opacity: 0.5 !important;\n}\n.opacity-75 {\n opacity: 0.75 !important;\n}\n.opacity-100 {\n opacity: 1 !important;\n}\n.overflow-auto {\n overflow: auto !important;\n}\n.overflow-hidden {\n overflow: hidden !important;\n}\n.overflow-visible {\n overflow: visible !important;\n}\n.overflow-scroll {\n overflow: scroll !important;\n}\n.overflow-x-auto {\n overflow-x: auto !important;\n}\n.overflow-x-hidden {\n overflow-x: hidden !important;\n}\n.overflow-x-visible {\n overflow-x: visible !important;\n}\n.overflow-x-scroll {\n overflow-x: scroll !important;\n}\n.overflow-y-auto {\n overflow-y: auto !important;\n}\n.overflow-y-hidden {\n overflow-y: hidden !important;\n}\n.overflow-y-visible {\n overflow-y: visible !important;\n}\n.overflow-y-scroll {\n overflow-y: scroll !important;\n}\n.d-inline {\n display: inline !important;\n}\n.d-inline-block {\n display: inline-block !important;\n}\n.d-block {\n display: block !important;\n}\n.d-grid {\n display: grid !important;\n}\n.d-inline-grid {\n display: inline-grid !important;\n}\n.d-table {\n display: table !important;\n}\n.d-table-row {\n display: table-row !important;\n}\n.d-table-cell {\n display: table-cell !important;\n}\n.d-flex {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n}\n.d-inline-flex {\n display: -webkit-inline-box !important;\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n}\n.d-none {\n display: none !important;\n}\n.shadow {\n -webkit-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;\n box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;\n}\n.shadow-sm {\n -webkit-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;\n box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;\n}\n.shadow-lg {\n -webkit-box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;\n box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;\n}\n.shadow-none {\n -webkit-box-shadow: none !important;\n box-shadow: none !important;\n}\n.focus-ring-primary {\n --bs-focus-ring-color: rgba(var(--bs-primary-rgb), var(--bs-focus-ring-opacity));\n}\n.focus-ring-secondary {\n --bs-focus-ring-color: rgba(var(--bs-secondary-rgb), var(--bs-focus-ring-opacity));\n}\n.focus-ring-success {\n --bs-focus-ring-color: rgba(var(--bs-success-rgb), var(--bs-focus-ring-opacity));\n}\n.focus-ring-info {\n --bs-focus-ring-color: rgba(var(--bs-info-rgb), var(--bs-focus-ring-opacity));\n}\n.focus-ring-warning {\n --bs-focus-ring-color: rgba(var(--bs-warning-rgb), var(--bs-focus-ring-opacity));\n}\n.focus-ring-danger {\n --bs-focus-ring-color: rgba(var(--bs-danger-rgb), var(--bs-focus-ring-opacity));\n}\n.focus-ring-light {\n --bs-focus-ring-color: rgba(var(--bs-light-rgb), var(--bs-focus-ring-opacity));\n}\n.focus-ring-dark {\n --bs-focus-ring-color: rgba(var(--bs-dark-rgb), var(--bs-focus-ring-opacity));\n}\n.position-static {\n position: static !important;\n}\n.position-relative {\n position: relative !important;\n}\n.position-absolute {\n position: absolute !important;\n}\n.position-fixed {\n position: fixed !important;\n}\n.position-sticky {\n position: sticky !important;\n}\n.top-0 {\n top: 0 !important;\n}\n.top-50 {\n top: 50% !important;\n}\n.top-100 {\n top: 100% !important;\n}\n.bottom-0 {\n bottom: 0 !important;\n}\n.bottom-50 {\n bottom: 50% !important;\n}\n.bottom-100 {\n bottom: 100% !important;\n}\n.start-0 {\n left: 0 !important;\n}\n.start-50 {\n left: 50% !important;\n}\n.start-100 {\n left: 100% !important;\n}\n.end-0 {\n right: 0 !important;\n}\n.end-50 {\n right: 50% !important;\n}\n.end-100 {\n right: 100% !important;\n}\n.translate-middle {\n -webkit-transform: translate(-50%, -50%) !important;\n transform: translate(-50%, -50%) !important;\n}\n.translate-middle-x {\n -webkit-transform: translateX(-50%) !important;\n transform: translateX(-50%) !important;\n}\n.translate-middle-y {\n -webkit-transform: translateY(-50%) !important;\n transform: translateY(-50%) !important;\n}\n.border {\n border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;\n}\n.border-0 {\n border: 0 !important;\n}\n.border-top {\n border-top: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;\n}\n.border-top-0 {\n border-top: 0 !important;\n}\n.border-end {\n border-right: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;\n}\n.border-end-0 {\n border-right: 0 !important;\n}\n.border-bottom {\n border-bottom: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;\n}\n.border-bottom-0 {\n border-bottom: 0 !important;\n}\n.border-start {\n border-left: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;\n}\n.border-start-0 {\n border-left: 0 !important;\n}\n.border-primary {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-primary-rgb), var(--bs-border-opacity)) !important;\n}\n.border-secondary {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-secondary-rgb), var(--bs-border-opacity)) !important;\n}\n.border-success {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-success-rgb), var(--bs-border-opacity)) !important;\n}\n.border-info {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-info-rgb), var(--bs-border-opacity)) !important;\n}\n.border-warning {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-warning-rgb), var(--bs-border-opacity)) !important;\n}\n.border-danger {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-danger-rgb), var(--bs-border-opacity)) !important;\n}\n.border-light {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-light-rgb), var(--bs-border-opacity)) !important;\n}\n.border-dark {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-dark-rgb), var(--bs-border-opacity)) !important;\n}\n.border-black {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-black-rgb), var(--bs-border-opacity)) !important;\n}\n.border-white {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-white-rgb), var(--bs-border-opacity)) !important;\n}\n.border-primary-subtle {\n border-color: var(--bs-primary-border-subtle) !important;\n}\n.border-secondary-subtle {\n border-color: var(--bs-secondary-border-subtle) !important;\n}\n.border-success-subtle {\n border-color: var(--bs-success-border-subtle) !important;\n}\n.border-info-subtle {\n border-color: var(--bs-info-border-subtle) !important;\n}\n.border-warning-subtle {\n border-color: var(--bs-warning-border-subtle) !important;\n}\n.border-danger-subtle {\n border-color: var(--bs-danger-border-subtle) !important;\n}\n.border-light-subtle {\n border-color: var(--bs-light-border-subtle) !important;\n}\n.border-dark-subtle {\n border-color: var(--bs-dark-border-subtle) !important;\n}\n.border-1 {\n border-width: 1px !important;\n}\n.border-2 {\n border-width: 2px !important;\n}\n.border-3 {\n border-width: 3px !important;\n}\n.border-4 {\n border-width: 4px !important;\n}\n.border-5 {\n border-width: 5px !important;\n}\n.border-opacity-10 {\n --bs-border-opacity: 0.1;\n}\n.border-opacity-25 {\n --bs-border-opacity: 0.25;\n}\n.border-opacity-50 {\n --bs-border-opacity: 0.5;\n}\n.border-opacity-75 {\n --bs-border-opacity: 0.75;\n}\n.border-opacity-100 {\n --bs-border-opacity: 1;\n}\n.w-25 {\n width: 25% !important;\n}\n.w-50 {\n width: 50% !important;\n}\n.w-75 {\n width: 75% !important;\n}\n.w-100 {\n width: 100% !important;\n}\n.w-auto {\n width: auto !important;\n}\n.mw-100 {\n max-width: 100% !important;\n}\n.vw-100 {\n width: 100vw !important;\n}\n.min-vw-100 {\n min-width: 100vw !important;\n}\n.h-25 {\n height: 25% !important;\n}\n.h-50 {\n height: 50% !important;\n}\n.h-75 {\n height: 75% !important;\n}\n.h-100 {\n height: 100% !important;\n}\n.h-auto {\n height: auto !important;\n}\n.mh-100 {\n max-height: 100% !important;\n}\n.vh-100 {\n height: 100vh !important;\n}\n.min-vh-100 {\n min-height: 100vh !important;\n}\n.flex-fill {\n -webkit-box-flex: 1 !important;\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n}\n.flex-row {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n}\n.flex-column {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n}\n.flex-row-reverse {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n}\n.flex-column-reverse {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n}\n.flex-grow-0 {\n -webkit-box-flex: 0 !important;\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n}\n.flex-grow-1 {\n -webkit-box-flex: 1 !important;\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n}\n.flex-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n}\n.flex-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n}\n.flex-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n}\n.flex-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n}\n.flex-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n}\n.justify-content-start {\n -webkit-box-pack: start !important;\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n}\n.justify-content-end {\n -webkit-box-pack: end !important;\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n}\n.justify-content-center {\n -webkit-box-pack: center !important;\n -ms-flex-pack: center !important;\n justify-content: center !important;\n}\n.justify-content-between {\n -webkit-box-pack: justify !important;\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n}\n.justify-content-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n}\n.justify-content-evenly {\n -webkit-box-pack: space-evenly !important;\n -ms-flex-pack: space-evenly !important;\n justify-content: space-evenly !important;\n}\n.align-items-start {\n -webkit-box-align: start !important;\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n}\n.align-items-end {\n -webkit-box-align: end !important;\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n}\n.align-items-center {\n -webkit-box-align: center !important;\n -ms-flex-align: center !important;\n align-items: center !important;\n}\n.align-items-baseline {\n -webkit-box-align: baseline !important;\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n}\n.align-items-stretch {\n -webkit-box-align: stretch !important;\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n}\n.align-content-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n}\n.align-content-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n}\n.align-content-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n}\n.align-content-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n}\n.align-content-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n}\n.align-content-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n}\n.align-self-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n}\n.align-self-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n}\n.align-self-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n}\n.align-self-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n}\n.align-self-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n}\n.align-self-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n}\n.order-first {\n -webkit-box-ordinal-group: 0 !important;\n -ms-flex-order: -1 !important;\n order: -1 !important;\n}\n.order-0 {\n -webkit-box-ordinal-group: 1 !important;\n -ms-flex-order: 0 !important;\n order: 0 !important;\n}\n.order-1 {\n -webkit-box-ordinal-group: 2 !important;\n -ms-flex-order: 1 !important;\n order: 1 !important;\n}\n.order-2 {\n -webkit-box-ordinal-group: 3 !important;\n -ms-flex-order: 2 !important;\n order: 2 !important;\n}\n.order-3 {\n -webkit-box-ordinal-group: 4 !important;\n -ms-flex-order: 3 !important;\n order: 3 !important;\n}\n.order-4 {\n -webkit-box-ordinal-group: 5 !important;\n -ms-flex-order: 4 !important;\n order: 4 !important;\n}\n.order-5 {\n -webkit-box-ordinal-group: 6 !important;\n -ms-flex-order: 5 !important;\n order: 5 !important;\n}\n.order-last {\n -webkit-box-ordinal-group: 7 !important;\n -ms-flex-order: 6 !important;\n order: 6 !important;\n}\n.m-0 {\n margin: 0 !important;\n}\n.m-1 {\n margin: 0.25rem !important;\n}\n.m-2 {\n margin: 0.5rem !important;\n}\n.m-3 {\n margin: 1rem !important;\n}\n.m-4 {\n margin: 1.5rem !important;\n}\n.m-5 {\n margin: 3rem !important;\n}\n.m-auto {\n margin: auto !important;\n}\n.mx-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n}\n.mx-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n}\n.mx-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n}\n.mx-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n}\n.mx-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n}\n.mx-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n}\n.mx-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n}\n.my-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n}\n.my-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n}\n.my-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n}\n.my-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n}\n.my-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n}\n.my-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n}\n.my-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n}\n.mt-0 {\n margin-top: 0 !important;\n}\n.mt-1 {\n margin-top: 0.25rem !important;\n}\n.mt-2 {\n margin-top: 0.5rem !important;\n}\n.mt-3 {\n margin-top: 1rem !important;\n}\n.mt-4 {\n margin-top: 1.5rem !important;\n}\n.mt-5 {\n margin-top: 3rem !important;\n}\n.mt-auto {\n margin-top: auto !important;\n}\n.me-0 {\n margin-right: 0 !important;\n}\n.me-1 {\n margin-right: 0.25rem !important;\n}\n.me-2 {\n margin-right: 0.5rem !important;\n}\n.me-3 {\n margin-right: 1rem !important;\n}\n.me-4 {\n margin-right: 1.5rem !important;\n}\n.me-5 {\n margin-right: 3rem !important;\n}\n.me-auto {\n margin-right: auto !important;\n}\n.mb-0 {\n margin-bottom: 0 !important;\n}\n.mb-1 {\n margin-bottom: 0.25rem !important;\n}\n.mb-2 {\n margin-bottom: 0.5rem !important;\n}\n.mb-3 {\n margin-bottom: 1rem !important;\n}\n.mb-4 {\n margin-bottom: 1.5rem !important;\n}\n.mb-5 {\n margin-bottom: 3rem !important;\n}\n.mb-auto {\n margin-bottom: auto !important;\n}\n.ms-0 {\n margin-left: 0 !important;\n}\n.ms-1 {\n margin-left: 0.25rem !important;\n}\n.ms-2 {\n margin-left: 0.5rem !important;\n}\n.ms-3 {\n margin-left: 1rem !important;\n}\n.ms-4 {\n margin-left: 1.5rem !important;\n}\n.ms-5 {\n margin-left: 3rem !important;\n}\n.ms-auto {\n margin-left: auto !important;\n}\n.p-0 {\n padding: 0 !important;\n}\n.p-1 {\n padding: 0.25rem !important;\n}\n.p-2 {\n padding: 0.5rem !important;\n}\n.p-3 {\n padding: 1rem !important;\n}\n.p-4 {\n padding: 1.5rem !important;\n}\n.p-5 {\n padding: 3rem !important;\n}\n.px-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n}\n.px-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n}\n.px-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n}\n.px-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n}\n.px-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n}\n.px-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n}\n.py-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n}\n.py-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n}\n.py-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n}\n.py-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n}\n.py-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n}\n.py-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n}\n.pt-0 {\n padding-top: 0 !important;\n}\n.pt-1 {\n padding-top: 0.25rem !important;\n}\n.pt-2 {\n padding-top: 0.5rem !important;\n}\n.pt-3 {\n padding-top: 1rem !important;\n}\n.pt-4 {\n padding-top: 1.5rem !important;\n}\n.pt-5 {\n padding-top: 3rem !important;\n}\n.pe-0 {\n padding-right: 0 !important;\n}\n.pe-1 {\n padding-right: 0.25rem !important;\n}\n.pe-2 {\n padding-right: 0.5rem !important;\n}\n.pe-3 {\n padding-right: 1rem !important;\n}\n.pe-4 {\n padding-right: 1.5rem !important;\n}\n.pe-5 {\n padding-right: 3rem !important;\n}\n.pb-0 {\n padding-bottom: 0 !important;\n}\n.pb-1 {\n padding-bottom: 0.25rem !important;\n}\n.pb-2 {\n padding-bottom: 0.5rem !important;\n}\n.pb-3 {\n padding-bottom: 1rem !important;\n}\n.pb-4 {\n padding-bottom: 1.5rem !important;\n}\n.pb-5 {\n padding-bottom: 3rem !important;\n}\n.ps-0 {\n padding-left: 0 !important;\n}\n.ps-1 {\n padding-left: 0.25rem !important;\n}\n.ps-2 {\n padding-left: 0.5rem !important;\n}\n.ps-3 {\n padding-left: 1rem !important;\n}\n.ps-4 {\n padding-left: 1.5rem !important;\n}\n.ps-5 {\n padding-left: 3rem !important;\n}\n.gap-0 {\n gap: 0 !important;\n}\n.gap-1 {\n gap: 0.25rem !important;\n}\n.gap-2 {\n gap: 0.5rem !important;\n}\n.gap-3 {\n gap: 1rem !important;\n}\n.gap-4 {\n gap: 1.5rem !important;\n}\n.gap-5 {\n gap: 3rem !important;\n}\n.row-gap-0 {\n row-gap: 0 !important;\n}\n.row-gap-1 {\n row-gap: 0.25rem !important;\n}\n.row-gap-2 {\n row-gap: 0.5rem !important;\n}\n.row-gap-3 {\n row-gap: 1rem !important;\n}\n.row-gap-4 {\n row-gap: 1.5rem !important;\n}\n.row-gap-5 {\n row-gap: 3rem !important;\n}\n.column-gap-0 {\n -moz-column-gap: 0 !important;\n -webkit-column-gap: 0 !important;\n column-gap: 0 !important;\n}\n.column-gap-1 {\n -moz-column-gap: 0.25rem !important;\n -webkit-column-gap: 0.25rem !important;\n column-gap: 0.25rem !important;\n}\n.column-gap-2 {\n -moz-column-gap: 0.5rem !important;\n -webkit-column-gap: 0.5rem !important;\n column-gap: 0.5rem !important;\n}\n.column-gap-3 {\n -moz-column-gap: 1rem !important;\n -webkit-column-gap: 1rem !important;\n column-gap: 1rem !important;\n}\n.column-gap-4 {\n -moz-column-gap: 1.5rem !important;\n -webkit-column-gap: 1.5rem !important;\n column-gap: 1.5rem !important;\n}\n.column-gap-5 {\n -moz-column-gap: 3rem !important;\n -webkit-column-gap: 3rem !important;\n column-gap: 3rem !important;\n}\n.font-monospace {\n font-family: var(--bs-font-monospace) !important;\n}\n.fs-1 {\n font-size: calc(1.375rem + 1.5vw) !important;\n}\n.fs-2 {\n font-size: calc(1.325rem + 0.9vw) !important;\n}\n.fs-3 {\n font-size: calc(1.3rem + 0.6vw) !important;\n}\n.fs-4 {\n font-size: calc(1.275rem + 0.3vw) !important;\n}\n.fs-5 {\n font-size: 1.25rem !important;\n}\n.fs-6 {\n font-size: 1rem !important;\n}\n.fst-italic {\n font-style: italic !important;\n}\n.fst-normal {\n font-style: normal !important;\n}\n.fw-lighter {\n font-weight: lighter !important;\n}\n.fw-light {\n font-weight: 300 !important;\n}\n.fw-normal {\n font-weight: 400 !important;\n}\n.fw-medium {\n font-weight: 500 !important;\n}\n.fw-semibold {\n font-weight: 600 !important;\n}\n.fw-bold {\n font-weight: 700 !important;\n}\n.fw-bolder {\n font-weight: bolder !important;\n}\n.lh-1 {\n line-height: 1 !important;\n}\n.lh-sm {\n line-height: 1.25 !important;\n}\n.lh-base {\n line-height: 1.5 !important;\n}\n.lh-lg {\n line-height: 2 !important;\n}\n.text-start {\n text-align: left !important;\n}\n.text-end {\n text-align: right !important;\n}\n.text-center {\n text-align: center !important;\n}\n.text-decoration-none {\n text-decoration: none !important;\n}\n.text-decoration-underline {\n text-decoration: underline !important;\n}\n.text-decoration-line-through {\n text-decoration: line-through !important;\n}\n.text-lowercase {\n text-transform: lowercase !important;\n}\n.text-uppercase {\n text-transform: uppercase !important;\n}\n.text-capitalize {\n text-transform: capitalize !important;\n}\n.text-wrap {\n white-space: normal !important;\n}\n.text-nowrap {\n white-space: nowrap !important;\n}\n/* rtl:begin:remove */\n.text-break {\n word-wrap: break-word !important;\n word-break: break-word !important;\n}\n/* rtl:end:remove */\n.text-primary {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important;\n}\n.text-secondary {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important;\n}\n.text-success {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important;\n}\n.text-info {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important;\n}\n.text-warning {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important;\n}\n.text-danger {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important;\n}\n.text-light {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important;\n}\n.text-dark {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important;\n}\n.text-black {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important;\n}\n.text-white {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important;\n}\n.text-body {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-body-color-rgb), var(--bs-text-opacity)) !important;\n}\n.text-muted {\n --bs-text-opacity: 1;\n color: var(--bs-secondary-color) !important;\n}\n.text-black-50 {\n --bs-text-opacity: 1;\n color: rgba(0, 0, 0, 0.5) !important;\n}\n.text-white-50 {\n --bs-text-opacity: 1;\n color: rgba(255, 255, 255, 0.5) !important;\n}\n.text-body-secondary {\n --bs-text-opacity: 1;\n color: var(--bs-secondary-color) !important;\n}\n.text-body-tertiary {\n --bs-text-opacity: 1;\n color: var(--bs-tertiary-color) !important;\n}\n.text-body-emphasis {\n --bs-text-opacity: 1;\n color: var(--bs-emphasis-color) !important;\n}\n.text-reset {\n --bs-text-opacity: 1;\n color: inherit !important;\n}\n.text-opacity-25 {\n --bs-text-opacity: 0.25;\n}\n.text-opacity-50 {\n --bs-text-opacity: 0.5;\n}\n.text-opacity-75 {\n --bs-text-opacity: 0.75;\n}\n.text-opacity-100 {\n --bs-text-opacity: 1;\n}\n.text-primary-emphasis {\n color: var(--bs-primary-text-emphasis) !important;\n}\n.text-secondary-emphasis {\n color: var(--bs-secondary-text-emphasis) !important;\n}\n.text-success-emphasis {\n color: var(--bs-success-text-emphasis) !important;\n}\n.text-info-emphasis {\n color: var(--bs-info-text-emphasis) !important;\n}\n.text-warning-emphasis {\n color: var(--bs-warning-text-emphasis) !important;\n}\n.text-danger-emphasis {\n color: var(--bs-danger-text-emphasis) !important;\n}\n.text-light-emphasis {\n color: var(--bs-light-text-emphasis) !important;\n}\n.text-dark-emphasis {\n color: var(--bs-dark-text-emphasis) !important;\n}\n.link-opacity-10 {\n --bs-link-opacity: 0.1;\n}\n.link-opacity-10-hover:hover {\n --bs-link-opacity: 0.1;\n}\n.link-opacity-25 {\n --bs-link-opacity: 0.25;\n}\n.link-opacity-25-hover:hover {\n --bs-link-opacity: 0.25;\n}\n.link-opacity-50 {\n --bs-link-opacity: 0.5;\n}\n.link-opacity-50-hover:hover {\n --bs-link-opacity: 0.5;\n}\n.link-opacity-75 {\n --bs-link-opacity: 0.75;\n}\n.link-opacity-75-hover:hover {\n --bs-link-opacity: 0.75;\n}\n.link-opacity-100 {\n --bs-link-opacity: 1;\n}\n.link-opacity-100-hover:hover {\n --bs-link-opacity: 1;\n}\n.link-offset-1 {\n text-underline-offset: 0.125em !important;\n}\n.link-offset-1-hover:hover {\n text-underline-offset: 0.125em !important;\n}\n.link-offset-2 {\n text-underline-offset: 0.25em !important;\n}\n.link-offset-2-hover:hover {\n text-underline-offset: 0.25em !important;\n}\n.link-offset-3 {\n text-underline-offset: 0.375em !important;\n}\n.link-offset-3-hover:hover {\n text-underline-offset: 0.375em !important;\n}\n.link-underline-primary {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important;\n}\n.link-underline-secondary {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important;\n}\n.link-underline-success {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important;\n}\n.link-underline-info {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important;\n}\n.link-underline-warning {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important;\n}\n.link-underline-danger {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important;\n}\n.link-underline-light {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important;\n}\n.link-underline-dark {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important;\n}\n.link-underline {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-underline-opacity-0 {\n --bs-link-underline-opacity: 0;\n}\n.link-underline-opacity-0-hover:hover {\n --bs-link-underline-opacity: 0;\n}\n.link-underline-opacity-10 {\n --bs-link-underline-opacity: 0.1;\n}\n.link-underline-opacity-10-hover:hover {\n --bs-link-underline-opacity: 0.1;\n}\n.link-underline-opacity-25 {\n --bs-link-underline-opacity: 0.25;\n}\n.link-underline-opacity-25-hover:hover {\n --bs-link-underline-opacity: 0.25;\n}\n.link-underline-opacity-50 {\n --bs-link-underline-opacity: 0.5;\n}\n.link-underline-opacity-50-hover:hover {\n --bs-link-underline-opacity: 0.5;\n}\n.link-underline-opacity-75 {\n --bs-link-underline-opacity: 0.75;\n}\n.link-underline-opacity-75-hover:hover {\n --bs-link-underline-opacity: 0.75;\n}\n.link-underline-opacity-100 {\n --bs-link-underline-opacity: 1;\n}\n.link-underline-opacity-100-hover:hover {\n --bs-link-underline-opacity: 1;\n}\n.bg-primary {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important;\n}\n.bg-secondary {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important;\n}\n.bg-success {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important;\n}\n.bg-info {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important;\n}\n.bg-warning {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important;\n}\n.bg-danger {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important;\n}\n.bg-light {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important;\n}\n.bg-dark {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important;\n}\n.bg-black {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important;\n}\n.bg-white {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important;\n}\n.bg-body {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-body-bg-rgb), var(--bs-bg-opacity)) !important;\n}\n.bg-transparent {\n --bs-bg-opacity: 1;\n background-color: transparent !important;\n}\n.bg-body-secondary {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-secondary-bg-rgb), var(--bs-bg-opacity)) !important;\n}\n.bg-body-tertiary {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-tertiary-bg-rgb), var(--bs-bg-opacity)) !important;\n}\n.bg-opacity-10 {\n --bs-bg-opacity: 0.1;\n}\n.bg-opacity-25 {\n --bs-bg-opacity: 0.25;\n}\n.bg-opacity-50 {\n --bs-bg-opacity: 0.5;\n}\n.bg-opacity-75 {\n --bs-bg-opacity: 0.75;\n}\n.bg-opacity-100 {\n --bs-bg-opacity: 1;\n}\n.bg-primary-subtle {\n background-color: var(--bs-primary-bg-subtle) !important;\n}\n.bg-secondary-subtle {\n background-color: var(--bs-secondary-bg-subtle) !important;\n}\n.bg-success-subtle {\n background-color: var(--bs-success-bg-subtle) !important;\n}\n.bg-info-subtle {\n background-color: var(--bs-info-bg-subtle) !important;\n}\n.bg-warning-subtle {\n background-color: var(--bs-warning-bg-subtle) !important;\n}\n.bg-danger-subtle {\n background-color: var(--bs-danger-bg-subtle) !important;\n}\n.bg-light-subtle {\n background-color: var(--bs-light-bg-subtle) !important;\n}\n.bg-dark-subtle {\n background-color: var(--bs-dark-bg-subtle) !important;\n}\n.bg-gradient {\n background-image: var(--bs-gradient) !important;\n}\n.user-select-all {\n -webkit-user-select: all !important;\n -moz-user-select: all !important;\n -ms-user-select: all !important;\n user-select: all !important;\n}\n.user-select-auto {\n -webkit-user-select: auto !important;\n -moz-user-select: auto !important;\n -ms-user-select: auto !important;\n user-select: auto !important;\n}\n.user-select-none {\n -webkit-user-select: none !important;\n -moz-user-select: none !important;\n -ms-user-select: none !important;\n user-select: none !important;\n}\n.pe-none {\n pointer-events: none !important;\n}\n.pe-auto {\n pointer-events: auto !important;\n}\n.rounded {\n border-radius: var(--bs-border-radius) !important;\n}\n.rounded-0 {\n border-radius: 0 !important;\n}\n.rounded-1 {\n border-radius: var(--bs-border-radius-sm) !important;\n}\n.rounded-2 {\n border-radius: var(--bs-border-radius) !important;\n}\n.rounded-3 {\n border-radius: var(--bs-border-radius-lg) !important;\n}\n.rounded-4 {\n border-radius: var(--bs-border-radius-xl) !important;\n}\n.rounded-5 {\n border-radius: var(--bs-border-radius-xxl) !important;\n}\n.rounded-circle {\n border-radius: 50% !important;\n}\n.rounded-pill {\n border-radius: var(--bs-border-radius-pill) !important;\n}\n.rounded-top {\n border-top-left-radius: var(--bs-border-radius) !important;\n border-top-right-radius: var(--bs-border-radius) !important;\n}\n.rounded-top-0 {\n border-top-left-radius: 0 !important;\n border-top-right-radius: 0 !important;\n}\n.rounded-top-1 {\n border-top-left-radius: var(--bs-border-radius-sm) !important;\n border-top-right-radius: var(--bs-border-radius-sm) !important;\n}\n.rounded-top-2 {\n border-top-left-radius: var(--bs-border-radius) !important;\n border-top-right-radius: var(--bs-border-radius) !important;\n}\n.rounded-top-3 {\n border-top-left-radius: var(--bs-border-radius-lg) !important;\n border-top-right-radius: var(--bs-border-radius-lg) !important;\n}\n.rounded-top-4 {\n border-top-left-radius: var(--bs-border-radius-xl) !important;\n border-top-right-radius: var(--bs-border-radius-xl) !important;\n}\n.rounded-top-5 {\n border-top-left-radius: var(--bs-border-radius-xxl) !important;\n border-top-right-radius: var(--bs-border-radius-xxl) !important;\n}\n.rounded-top-circle {\n border-top-left-radius: 50% !important;\n border-top-right-radius: 50% !important;\n}\n.rounded-top-pill {\n border-top-left-radius: var(--bs-border-radius-pill) !important;\n border-top-right-radius: var(--bs-border-radius-pill) !important;\n}\n.rounded-end {\n border-top-right-radius: var(--bs-border-radius) !important;\n border-bottom-right-radius: var(--bs-border-radius) !important;\n}\n.rounded-end-0 {\n border-top-right-radius: 0 !important;\n border-bottom-right-radius: 0 !important;\n}\n.rounded-end-1 {\n border-top-right-radius: var(--bs-border-radius-sm) !important;\n border-bottom-right-radius: var(--bs-border-radius-sm) !important;\n}\n.rounded-end-2 {\n border-top-right-radius: var(--bs-border-radius) !important;\n border-bottom-right-radius: var(--bs-border-radius) !important;\n}\n.rounded-end-3 {\n border-top-right-radius: var(--bs-border-radius-lg) !important;\n border-bottom-right-radius: var(--bs-border-radius-lg) !important;\n}\n.rounded-end-4 {\n border-top-right-radius: var(--bs-border-radius-xl) !important;\n border-bottom-right-radius: var(--bs-border-radius-xl) !important;\n}\n.rounded-end-5 {\n border-top-right-radius: var(--bs-border-radius-xxl) !important;\n border-bottom-right-radius: var(--bs-border-radius-xxl) !important;\n}\n.rounded-end-circle {\n border-top-right-radius: 50% !important;\n border-bottom-right-radius: 50% !important;\n}\n.rounded-end-pill {\n border-top-right-radius: var(--bs-border-radius-pill) !important;\n border-bottom-right-radius: var(--bs-border-radius-pill) !important;\n}\n.rounded-bottom {\n border-bottom-right-radius: var(--bs-border-radius) !important;\n border-bottom-left-radius: var(--bs-border-radius) !important;\n}\n.rounded-bottom-0 {\n border-bottom-right-radius: 0 !important;\n border-bottom-left-radius: 0 !important;\n}\n.rounded-bottom-1 {\n border-bottom-right-radius: var(--bs-border-radius-sm) !important;\n border-bottom-left-radius: var(--bs-border-radius-sm) !important;\n}\n.rounded-bottom-2 {\n border-bottom-right-radius: var(--bs-border-radius) !important;\n border-bottom-left-radius: var(--bs-border-radius) !important;\n}\n.rounded-bottom-3 {\n border-bottom-right-radius: var(--bs-border-radius-lg) !important;\n border-bottom-left-radius: var(--bs-border-radius-lg) !important;\n}\n.rounded-bottom-4 {\n border-bottom-right-radius: var(--bs-border-radius-xl) !important;\n border-bottom-left-radius: var(--bs-border-radius-xl) !important;\n}\n.rounded-bottom-5 {\n border-bottom-right-radius: var(--bs-border-radius-xxl) !important;\n border-bottom-left-radius: var(--bs-border-radius-xxl) !important;\n}\n.rounded-bottom-circle {\n border-bottom-right-radius: 50% !important;\n border-bottom-left-radius: 50% !important;\n}\n.rounded-bottom-pill {\n border-bottom-right-radius: var(--bs-border-radius-pill) !important;\n border-bottom-left-radius: var(--bs-border-radius-pill) !important;\n}\n.rounded-start {\n border-bottom-left-radius: var(--bs-border-radius) !important;\n border-top-left-radius: var(--bs-border-radius) !important;\n}\n.rounded-start-0 {\n border-bottom-left-radius: 0 !important;\n border-top-left-radius: 0 !important;\n}\n.rounded-start-1 {\n border-bottom-left-radius: var(--bs-border-radius-sm) !important;\n border-top-left-radius: var(--bs-border-radius-sm) !important;\n}\n.rounded-start-2 {\n border-bottom-left-radius: var(--bs-border-radius) !important;\n border-top-left-radius: var(--bs-border-radius) !important;\n}\n.rounded-start-3 {\n border-bottom-left-radius: var(--bs-border-radius-lg) !important;\n border-top-left-radius: var(--bs-border-radius-lg) !important;\n}\n.rounded-start-4 {\n border-bottom-left-radius: var(--bs-border-radius-xl) !important;\n border-top-left-radius: var(--bs-border-radius-xl) !important;\n}\n.rounded-start-5 {\n border-bottom-left-radius: var(--bs-border-radius-xxl) !important;\n border-top-left-radius: var(--bs-border-radius-xxl) !important;\n}\n.rounded-start-circle {\n border-bottom-left-radius: 50% !important;\n border-top-left-radius: 50% !important;\n}\n.rounded-start-pill {\n border-bottom-left-radius: var(--bs-border-radius-pill) !important;\n border-top-left-radius: var(--bs-border-radius-pill) !important;\n}\n.visible {\n visibility: visible !important;\n}\n.invisible {\n visibility: hidden !important;\n}\n.z-n1 {\n z-index: -1 !important;\n}\n.z-0 {\n z-index: 0 !important;\n}\n.z-1 {\n z-index: 1 !important;\n}\n.z-2 {\n z-index: 2 !important;\n}\n.z-3 {\n z-index: 3 !important;\n}\n@media (min-width: 576px) {\n .float-sm-start {\n float: left !important;\n }\n .float-sm-end {\n float: right !important;\n }\n .float-sm-none {\n float: none !important;\n }\n .object-fit-sm-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n }\n .object-fit-sm-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n }\n .object-fit-sm-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n }\n .object-fit-sm-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n }\n .object-fit-sm-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n }\n .d-sm-inline {\n display: inline !important;\n }\n .d-sm-inline-block {\n display: inline-block !important;\n }\n .d-sm-block {\n display: block !important;\n }\n .d-sm-grid {\n display: grid !important;\n }\n .d-sm-inline-grid {\n display: inline-grid !important;\n }\n .d-sm-table {\n display: table !important;\n }\n .d-sm-table-row {\n display: table-row !important;\n }\n .d-sm-table-cell {\n display: table-cell !important;\n }\n .d-sm-flex {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-sm-inline-flex {\n display: -webkit-inline-box !important;\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n .d-sm-none {\n display: none !important;\n }\n .flex-sm-fill {\n -webkit-box-flex: 1 !important;\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-sm-row {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-sm-column {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-sm-row-reverse {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-sm-column-reverse {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-sm-grow-0 {\n -webkit-box-flex: 0 !important;\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-sm-grow-1 {\n -webkit-box-flex: 1 !important;\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-sm-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-sm-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .flex-sm-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-sm-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-sm-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-sm-start {\n -webkit-box-pack: start !important;\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-sm-end {\n -webkit-box-pack: end !important;\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-sm-center {\n -webkit-box-pack: center !important;\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-sm-between {\n -webkit-box-pack: justify !important;\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-sm-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .justify-content-sm-evenly {\n -webkit-box-pack: space-evenly !important;\n -ms-flex-pack: space-evenly !important;\n justify-content: space-evenly !important;\n }\n .align-items-sm-start {\n -webkit-box-align: start !important;\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-sm-end {\n -webkit-box-align: end !important;\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-sm-center {\n -webkit-box-align: center !important;\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-sm-baseline {\n -webkit-box-align: baseline !important;\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-sm-stretch {\n -webkit-box-align: stretch !important;\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-sm-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-sm-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-sm-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-sm-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-sm-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-sm-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-sm-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-sm-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-sm-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-sm-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-sm-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-sm-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n .order-sm-first {\n -webkit-box-ordinal-group: 0 !important;\n -ms-flex-order: -1 !important;\n order: -1 !important;\n }\n .order-sm-0 {\n -webkit-box-ordinal-group: 1 !important;\n -ms-flex-order: 0 !important;\n order: 0 !important;\n }\n .order-sm-1 {\n -webkit-box-ordinal-group: 2 !important;\n -ms-flex-order: 1 !important;\n order: 1 !important;\n }\n .order-sm-2 {\n -webkit-box-ordinal-group: 3 !important;\n -ms-flex-order: 2 !important;\n order: 2 !important;\n }\n .order-sm-3 {\n -webkit-box-ordinal-group: 4 !important;\n -ms-flex-order: 3 !important;\n order: 3 !important;\n }\n .order-sm-4 {\n -webkit-box-ordinal-group: 5 !important;\n -ms-flex-order: 4 !important;\n order: 4 !important;\n }\n .order-sm-5 {\n -webkit-box-ordinal-group: 6 !important;\n -ms-flex-order: 5 !important;\n order: 5 !important;\n }\n .order-sm-last {\n -webkit-box-ordinal-group: 7 !important;\n -ms-flex-order: 6 !important;\n order: 6 !important;\n }\n .m-sm-0 {\n margin: 0 !important;\n }\n .m-sm-1 {\n margin: 0.25rem !important;\n }\n .m-sm-2 {\n margin: 0.5rem !important;\n }\n .m-sm-3 {\n margin: 1rem !important;\n }\n .m-sm-4 {\n margin: 1.5rem !important;\n }\n .m-sm-5 {\n margin: 3rem !important;\n }\n .m-sm-auto {\n margin: auto !important;\n }\n .mx-sm-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n .mx-sm-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n }\n .mx-sm-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n }\n .mx-sm-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n }\n .mx-sm-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n }\n .mx-sm-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n }\n .mx-sm-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n .my-sm-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-sm-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n }\n .my-sm-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n }\n .my-sm-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n }\n .my-sm-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n }\n .my-sm-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n }\n .my-sm-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-sm-0 {\n margin-top: 0 !important;\n }\n .mt-sm-1 {\n margin-top: 0.25rem !important;\n }\n .mt-sm-2 {\n margin-top: 0.5rem !important;\n }\n .mt-sm-3 {\n margin-top: 1rem !important;\n }\n .mt-sm-4 {\n margin-top: 1.5rem !important;\n }\n .mt-sm-5 {\n margin-top: 3rem !important;\n }\n .mt-sm-auto {\n margin-top: auto !important;\n }\n .me-sm-0 {\n margin-right: 0 !important;\n }\n .me-sm-1 {\n margin-right: 0.25rem !important;\n }\n .me-sm-2 {\n margin-right: 0.5rem !important;\n }\n .me-sm-3 {\n margin-right: 1rem !important;\n }\n .me-sm-4 {\n margin-right: 1.5rem !important;\n }\n .me-sm-5 {\n margin-right: 3rem !important;\n }\n .me-sm-auto {\n margin-right: auto !important;\n }\n .mb-sm-0 {\n margin-bottom: 0 !important;\n }\n .mb-sm-1 {\n margin-bottom: 0.25rem !important;\n }\n .mb-sm-2 {\n margin-bottom: 0.5rem !important;\n }\n .mb-sm-3 {\n margin-bottom: 1rem !important;\n }\n .mb-sm-4 {\n margin-bottom: 1.5rem !important;\n }\n .mb-sm-5 {\n margin-bottom: 3rem !important;\n }\n .mb-sm-auto {\n margin-bottom: auto !important;\n }\n .ms-sm-0 {\n margin-left: 0 !important;\n }\n .ms-sm-1 {\n margin-left: 0.25rem !important;\n }\n .ms-sm-2 {\n margin-left: 0.5rem !important;\n }\n .ms-sm-3 {\n margin-left: 1rem !important;\n }\n .ms-sm-4 {\n margin-left: 1.5rem !important;\n }\n .ms-sm-5 {\n margin-left: 3rem !important;\n }\n .ms-sm-auto {\n margin-left: auto !important;\n }\n .p-sm-0 {\n padding: 0 !important;\n }\n .p-sm-1 {\n padding: 0.25rem !important;\n }\n .p-sm-2 {\n padding: 0.5rem !important;\n }\n .p-sm-3 {\n padding: 1rem !important;\n }\n .p-sm-4 {\n padding: 1.5rem !important;\n }\n .p-sm-5 {\n padding: 3rem !important;\n }\n .px-sm-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n .px-sm-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n }\n .px-sm-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n }\n .px-sm-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n }\n .px-sm-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n }\n .px-sm-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n }\n .py-sm-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-sm-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n }\n .py-sm-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n }\n .py-sm-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n }\n .py-sm-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n }\n .py-sm-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n }\n .pt-sm-0 {\n padding-top: 0 !important;\n }\n .pt-sm-1 {\n padding-top: 0.25rem !important;\n }\n .pt-sm-2 {\n padding-top: 0.5rem !important;\n }\n .pt-sm-3 {\n padding-top: 1rem !important;\n }\n .pt-sm-4 {\n padding-top: 1.5rem !important;\n }\n .pt-sm-5 {\n padding-top: 3rem !important;\n }\n .pe-sm-0 {\n padding-right: 0 !important;\n }\n .pe-sm-1 {\n padding-right: 0.25rem !important;\n }\n .pe-sm-2 {\n padding-right: 0.5rem !important;\n }\n .pe-sm-3 {\n padding-right: 1rem !important;\n }\n .pe-sm-4 {\n padding-right: 1.5rem !important;\n }\n .pe-sm-5 {\n padding-right: 3rem !important;\n }\n .pb-sm-0 {\n padding-bottom: 0 !important;\n }\n .pb-sm-1 {\n padding-bottom: 0.25rem !important;\n }\n .pb-sm-2 {\n padding-bottom: 0.5rem !important;\n }\n .pb-sm-3 {\n padding-bottom: 1rem !important;\n }\n .pb-sm-4 {\n padding-bottom: 1.5rem !important;\n }\n .pb-sm-5 {\n padding-bottom: 3rem !important;\n }\n .ps-sm-0 {\n padding-left: 0 !important;\n }\n .ps-sm-1 {\n padding-left: 0.25rem !important;\n }\n .ps-sm-2 {\n padding-left: 0.5rem !important;\n }\n .ps-sm-3 {\n padding-left: 1rem !important;\n }\n .ps-sm-4 {\n padding-left: 1.5rem !important;\n }\n .ps-sm-5 {\n padding-left: 3rem !important;\n }\n .gap-sm-0 {\n gap: 0 !important;\n }\n .gap-sm-1 {\n gap: 0.25rem !important;\n }\n .gap-sm-2 {\n gap: 0.5rem !important;\n }\n .gap-sm-3 {\n gap: 1rem !important;\n }\n .gap-sm-4 {\n gap: 1.5rem !important;\n }\n .gap-sm-5 {\n gap: 3rem !important;\n }\n .row-gap-sm-0 {\n row-gap: 0 !important;\n }\n .row-gap-sm-1 {\n row-gap: 0.25rem !important;\n }\n .row-gap-sm-2 {\n row-gap: 0.5rem !important;\n }\n .row-gap-sm-3 {\n row-gap: 1rem !important;\n }\n .row-gap-sm-4 {\n row-gap: 1.5rem !important;\n }\n .row-gap-sm-5 {\n row-gap: 3rem !important;\n }\n .column-gap-sm-0 {\n -moz-column-gap: 0 !important;\n -webkit-column-gap: 0 !important;\n column-gap: 0 !important;\n }\n .column-gap-sm-1 {\n -moz-column-gap: 0.25rem !important;\n -webkit-column-gap: 0.25rem !important;\n column-gap: 0.25rem !important;\n }\n .column-gap-sm-2 {\n -moz-column-gap: 0.5rem !important;\n -webkit-column-gap: 0.5rem !important;\n column-gap: 0.5rem !important;\n }\n .column-gap-sm-3 {\n -moz-column-gap: 1rem !important;\n -webkit-column-gap: 1rem !important;\n column-gap: 1rem !important;\n }\n .column-gap-sm-4 {\n -moz-column-gap: 1.5rem !important;\n -webkit-column-gap: 1.5rem !important;\n column-gap: 1.5rem !important;\n }\n .column-gap-sm-5 {\n -moz-column-gap: 3rem !important;\n -webkit-column-gap: 3rem !important;\n column-gap: 3rem !important;\n }\n .text-sm-start {\n text-align: left !important;\n }\n .text-sm-end {\n text-align: right !important;\n }\n .text-sm-center {\n text-align: center !important;\n }\n}\n@media (min-width: 768px) {\n .float-md-start {\n float: left !important;\n }\n .float-md-end {\n float: right !important;\n }\n .float-md-none {\n float: none !important;\n }\n .object-fit-md-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n }\n .object-fit-md-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n }\n .object-fit-md-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n }\n .object-fit-md-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n }\n .object-fit-md-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n }\n .d-md-inline {\n display: inline !important;\n }\n .d-md-inline-block {\n display: inline-block !important;\n }\n .d-md-block {\n display: block !important;\n }\n .d-md-grid {\n display: grid !important;\n }\n .d-md-inline-grid {\n display: inline-grid !important;\n }\n .d-md-table {\n display: table !important;\n }\n .d-md-table-row {\n display: table-row !important;\n }\n .d-md-table-cell {\n display: table-cell !important;\n }\n .d-md-flex {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-md-inline-flex {\n display: -webkit-inline-box !important;\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n .d-md-none {\n display: none !important;\n }\n .flex-md-fill {\n -webkit-box-flex: 1 !important;\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-md-row {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-md-column {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-md-row-reverse {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-md-column-reverse {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-md-grow-0 {\n -webkit-box-flex: 0 !important;\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-md-grow-1 {\n -webkit-box-flex: 1 !important;\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-md-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-md-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .flex-md-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-md-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-md-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-md-start {\n -webkit-box-pack: start !important;\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-md-end {\n -webkit-box-pack: end !important;\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-md-center {\n -webkit-box-pack: center !important;\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-md-between {\n -webkit-box-pack: justify !important;\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-md-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .justify-content-md-evenly {\n -webkit-box-pack: space-evenly !important;\n -ms-flex-pack: space-evenly !important;\n justify-content: space-evenly !important;\n }\n .align-items-md-start {\n -webkit-box-align: start !important;\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-md-end {\n -webkit-box-align: end !important;\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-md-center {\n -webkit-box-align: center !important;\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-md-baseline {\n -webkit-box-align: baseline !important;\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-md-stretch {\n -webkit-box-align: stretch !important;\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-md-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-md-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-md-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-md-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-md-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-md-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-md-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-md-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-md-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-md-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-md-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-md-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n .order-md-first {\n -webkit-box-ordinal-group: 0 !important;\n -ms-flex-order: -1 !important;\n order: -1 !important;\n }\n .order-md-0 {\n -webkit-box-ordinal-group: 1 !important;\n -ms-flex-order: 0 !important;\n order: 0 !important;\n }\n .order-md-1 {\n -webkit-box-ordinal-group: 2 !important;\n -ms-flex-order: 1 !important;\n order: 1 !important;\n }\n .order-md-2 {\n -webkit-box-ordinal-group: 3 !important;\n -ms-flex-order: 2 !important;\n order: 2 !important;\n }\n .order-md-3 {\n -webkit-box-ordinal-group: 4 !important;\n -ms-flex-order: 3 !important;\n order: 3 !important;\n }\n .order-md-4 {\n -webkit-box-ordinal-group: 5 !important;\n -ms-flex-order: 4 !important;\n order: 4 !important;\n }\n .order-md-5 {\n -webkit-box-ordinal-group: 6 !important;\n -ms-flex-order: 5 !important;\n order: 5 !important;\n }\n .order-md-last {\n -webkit-box-ordinal-group: 7 !important;\n -ms-flex-order: 6 !important;\n order: 6 !important;\n }\n .m-md-0 {\n margin: 0 !important;\n }\n .m-md-1 {\n margin: 0.25rem !important;\n }\n .m-md-2 {\n margin: 0.5rem !important;\n }\n .m-md-3 {\n margin: 1rem !important;\n }\n .m-md-4 {\n margin: 1.5rem !important;\n }\n .m-md-5 {\n margin: 3rem !important;\n }\n .m-md-auto {\n margin: auto !important;\n }\n .mx-md-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n .mx-md-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n }\n .mx-md-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n }\n .mx-md-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n }\n .mx-md-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n }\n .mx-md-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n }\n .mx-md-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n .my-md-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-md-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n }\n .my-md-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n }\n .my-md-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n }\n .my-md-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n }\n .my-md-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n }\n .my-md-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-md-0 {\n margin-top: 0 !important;\n }\n .mt-md-1 {\n margin-top: 0.25rem !important;\n }\n .mt-md-2 {\n margin-top: 0.5rem !important;\n }\n .mt-md-3 {\n margin-top: 1rem !important;\n }\n .mt-md-4 {\n margin-top: 1.5rem !important;\n }\n .mt-md-5 {\n margin-top: 3rem !important;\n }\n .mt-md-auto {\n margin-top: auto !important;\n }\n .me-md-0 {\n margin-right: 0 !important;\n }\n .me-md-1 {\n margin-right: 0.25rem !important;\n }\n .me-md-2 {\n margin-right: 0.5rem !important;\n }\n .me-md-3 {\n margin-right: 1rem !important;\n }\n .me-md-4 {\n margin-right: 1.5rem !important;\n }\n .me-md-5 {\n margin-right: 3rem !important;\n }\n .me-md-auto {\n margin-right: auto !important;\n }\n .mb-md-0 {\n margin-bottom: 0 !important;\n }\n .mb-md-1 {\n margin-bottom: 0.25rem !important;\n }\n .mb-md-2 {\n margin-bottom: 0.5rem !important;\n }\n .mb-md-3 {\n margin-bottom: 1rem !important;\n }\n .mb-md-4 {\n margin-bottom: 1.5rem !important;\n }\n .mb-md-5 {\n margin-bottom: 3rem !important;\n }\n .mb-md-auto {\n margin-bottom: auto !important;\n }\n .ms-md-0 {\n margin-left: 0 !important;\n }\n .ms-md-1 {\n margin-left: 0.25rem !important;\n }\n .ms-md-2 {\n margin-left: 0.5rem !important;\n }\n .ms-md-3 {\n margin-left: 1rem !important;\n }\n .ms-md-4 {\n margin-left: 1.5rem !important;\n }\n .ms-md-5 {\n margin-left: 3rem !important;\n }\n .ms-md-auto {\n margin-left: auto !important;\n }\n .p-md-0 {\n padding: 0 !important;\n }\n .p-md-1 {\n padding: 0.25rem !important;\n }\n .p-md-2 {\n padding: 0.5rem !important;\n }\n .p-md-3 {\n padding: 1rem !important;\n }\n .p-md-4 {\n padding: 1.5rem !important;\n }\n .p-md-5 {\n padding: 3rem !important;\n }\n .px-md-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n .px-md-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n }\n .px-md-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n }\n .px-md-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n }\n .px-md-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n }\n .px-md-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n }\n .py-md-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-md-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n }\n .py-md-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n }\n .py-md-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n }\n .py-md-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n }\n .py-md-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n }\n .pt-md-0 {\n padding-top: 0 !important;\n }\n .pt-md-1 {\n padding-top: 0.25rem !important;\n }\n .pt-md-2 {\n padding-top: 0.5rem !important;\n }\n .pt-md-3 {\n padding-top: 1rem !important;\n }\n .pt-md-4 {\n padding-top: 1.5rem !important;\n }\n .pt-md-5 {\n padding-top: 3rem !important;\n }\n .pe-md-0 {\n padding-right: 0 !important;\n }\n .pe-md-1 {\n padding-right: 0.25rem !important;\n }\n .pe-md-2 {\n padding-right: 0.5rem !important;\n }\n .pe-md-3 {\n padding-right: 1rem !important;\n }\n .pe-md-4 {\n padding-right: 1.5rem !important;\n }\n .pe-md-5 {\n padding-right: 3rem !important;\n }\n .pb-md-0 {\n padding-bottom: 0 !important;\n }\n .pb-md-1 {\n padding-bottom: 0.25rem !important;\n }\n .pb-md-2 {\n padding-bottom: 0.5rem !important;\n }\n .pb-md-3 {\n padding-bottom: 1rem !important;\n }\n .pb-md-4 {\n padding-bottom: 1.5rem !important;\n }\n .pb-md-5 {\n padding-bottom: 3rem !important;\n }\n .ps-md-0 {\n padding-left: 0 !important;\n }\n .ps-md-1 {\n padding-left: 0.25rem !important;\n }\n .ps-md-2 {\n padding-left: 0.5rem !important;\n }\n .ps-md-3 {\n padding-left: 1rem !important;\n }\n .ps-md-4 {\n padding-left: 1.5rem !important;\n }\n .ps-md-5 {\n padding-left: 3rem !important;\n }\n .gap-md-0 {\n gap: 0 !important;\n }\n .gap-md-1 {\n gap: 0.25rem !important;\n }\n .gap-md-2 {\n gap: 0.5rem !important;\n }\n .gap-md-3 {\n gap: 1rem !important;\n }\n .gap-md-4 {\n gap: 1.5rem !important;\n }\n .gap-md-5 {\n gap: 3rem !important;\n }\n .row-gap-md-0 {\n row-gap: 0 !important;\n }\n .row-gap-md-1 {\n row-gap: 0.25rem !important;\n }\n .row-gap-md-2 {\n row-gap: 0.5rem !important;\n }\n .row-gap-md-3 {\n row-gap: 1rem !important;\n }\n .row-gap-md-4 {\n row-gap: 1.5rem !important;\n }\n .row-gap-md-5 {\n row-gap: 3rem !important;\n }\n .column-gap-md-0 {\n -moz-column-gap: 0 !important;\n -webkit-column-gap: 0 !important;\n column-gap: 0 !important;\n }\n .column-gap-md-1 {\n -moz-column-gap: 0.25rem !important;\n -webkit-column-gap: 0.25rem !important;\n column-gap: 0.25rem !important;\n }\n .column-gap-md-2 {\n -moz-column-gap: 0.5rem !important;\n -webkit-column-gap: 0.5rem !important;\n column-gap: 0.5rem !important;\n }\n .column-gap-md-3 {\n -moz-column-gap: 1rem !important;\n -webkit-column-gap: 1rem !important;\n column-gap: 1rem !important;\n }\n .column-gap-md-4 {\n -moz-column-gap: 1.5rem !important;\n -webkit-column-gap: 1.5rem !important;\n column-gap: 1.5rem !important;\n }\n .column-gap-md-5 {\n -moz-column-gap: 3rem !important;\n -webkit-column-gap: 3rem !important;\n column-gap: 3rem !important;\n }\n .text-md-start {\n text-align: left !important;\n }\n .text-md-end {\n text-align: right !important;\n }\n .text-md-center {\n text-align: center !important;\n }\n}\n@media (min-width: 992px) {\n .float-lg-start {\n float: left !important;\n }\n .float-lg-end {\n float: right !important;\n }\n .float-lg-none {\n float: none !important;\n }\n .object-fit-lg-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n }\n .object-fit-lg-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n }\n .object-fit-lg-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n }\n .object-fit-lg-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n }\n .object-fit-lg-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n }\n .d-lg-inline {\n display: inline !important;\n }\n .d-lg-inline-block {\n display: inline-block !important;\n }\n .d-lg-block {\n display: block !important;\n }\n .d-lg-grid {\n display: grid !important;\n }\n .d-lg-inline-grid {\n display: inline-grid !important;\n }\n .d-lg-table {\n display: table !important;\n }\n .d-lg-table-row {\n display: table-row !important;\n }\n .d-lg-table-cell {\n display: table-cell !important;\n }\n .d-lg-flex {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-lg-inline-flex {\n display: -webkit-inline-box !important;\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n .d-lg-none {\n display: none !important;\n }\n .flex-lg-fill {\n -webkit-box-flex: 1 !important;\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-lg-row {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-lg-column {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-lg-row-reverse {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-lg-column-reverse {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-lg-grow-0 {\n -webkit-box-flex: 0 !important;\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-lg-grow-1 {\n -webkit-box-flex: 1 !important;\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-lg-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-lg-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .flex-lg-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-lg-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-lg-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-lg-start {\n -webkit-box-pack: start !important;\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-lg-end {\n -webkit-box-pack: end !important;\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-lg-center {\n -webkit-box-pack: center !important;\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-lg-between {\n -webkit-box-pack: justify !important;\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-lg-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .justify-content-lg-evenly {\n -webkit-box-pack: space-evenly !important;\n -ms-flex-pack: space-evenly !important;\n justify-content: space-evenly !important;\n }\n .align-items-lg-start {\n -webkit-box-align: start !important;\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-lg-end {\n -webkit-box-align: end !important;\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-lg-center {\n -webkit-box-align: center !important;\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-lg-baseline {\n -webkit-box-align: baseline !important;\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-lg-stretch {\n -webkit-box-align: stretch !important;\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-lg-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-lg-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-lg-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-lg-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-lg-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-lg-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-lg-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-lg-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-lg-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-lg-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-lg-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-lg-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n .order-lg-first {\n -webkit-box-ordinal-group: 0 !important;\n -ms-flex-order: -1 !important;\n order: -1 !important;\n }\n .order-lg-0 {\n -webkit-box-ordinal-group: 1 !important;\n -ms-flex-order: 0 !important;\n order: 0 !important;\n }\n .order-lg-1 {\n -webkit-box-ordinal-group: 2 !important;\n -ms-flex-order: 1 !important;\n order: 1 !important;\n }\n .order-lg-2 {\n -webkit-box-ordinal-group: 3 !important;\n -ms-flex-order: 2 !important;\n order: 2 !important;\n }\n .order-lg-3 {\n -webkit-box-ordinal-group: 4 !important;\n -ms-flex-order: 3 !important;\n order: 3 !important;\n }\n .order-lg-4 {\n -webkit-box-ordinal-group: 5 !important;\n -ms-flex-order: 4 !important;\n order: 4 !important;\n }\n .order-lg-5 {\n -webkit-box-ordinal-group: 6 !important;\n -ms-flex-order: 5 !important;\n order: 5 !important;\n }\n .order-lg-last {\n -webkit-box-ordinal-group: 7 !important;\n -ms-flex-order: 6 !important;\n order: 6 !important;\n }\n .m-lg-0 {\n margin: 0 !important;\n }\n .m-lg-1 {\n margin: 0.25rem !important;\n }\n .m-lg-2 {\n margin: 0.5rem !important;\n }\n .m-lg-3 {\n margin: 1rem !important;\n }\n .m-lg-4 {\n margin: 1.5rem !important;\n }\n .m-lg-5 {\n margin: 3rem !important;\n }\n .m-lg-auto {\n margin: auto !important;\n }\n .mx-lg-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n .mx-lg-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n }\n .mx-lg-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n }\n .mx-lg-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n }\n .mx-lg-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n }\n .mx-lg-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n }\n .mx-lg-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n .my-lg-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-lg-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n }\n .my-lg-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n }\n .my-lg-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n }\n .my-lg-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n }\n .my-lg-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n }\n .my-lg-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-lg-0 {\n margin-top: 0 !important;\n }\n .mt-lg-1 {\n margin-top: 0.25rem !important;\n }\n .mt-lg-2 {\n margin-top: 0.5rem !important;\n }\n .mt-lg-3 {\n margin-top: 1rem !important;\n }\n .mt-lg-4 {\n margin-top: 1.5rem !important;\n }\n .mt-lg-5 {\n margin-top: 3rem !important;\n }\n .mt-lg-auto {\n margin-top: auto !important;\n }\n .me-lg-0 {\n margin-right: 0 !important;\n }\n .me-lg-1 {\n margin-right: 0.25rem !important;\n }\n .me-lg-2 {\n margin-right: 0.5rem !important;\n }\n .me-lg-3 {\n margin-right: 1rem !important;\n }\n .me-lg-4 {\n margin-right: 1.5rem !important;\n }\n .me-lg-5 {\n margin-right: 3rem !important;\n }\n .me-lg-auto {\n margin-right: auto !important;\n }\n .mb-lg-0 {\n margin-bottom: 0 !important;\n }\n .mb-lg-1 {\n margin-bottom: 0.25rem !important;\n }\n .mb-lg-2 {\n margin-bottom: 0.5rem !important;\n }\n .mb-lg-3 {\n margin-bottom: 1rem !important;\n }\n .mb-lg-4 {\n margin-bottom: 1.5rem !important;\n }\n .mb-lg-5 {\n margin-bottom: 3rem !important;\n }\n .mb-lg-auto {\n margin-bottom: auto !important;\n }\n .ms-lg-0 {\n margin-left: 0 !important;\n }\n .ms-lg-1 {\n margin-left: 0.25rem !important;\n }\n .ms-lg-2 {\n margin-left: 0.5rem !important;\n }\n .ms-lg-3 {\n margin-left: 1rem !important;\n }\n .ms-lg-4 {\n margin-left: 1.5rem !important;\n }\n .ms-lg-5 {\n margin-left: 3rem !important;\n }\n .ms-lg-auto {\n margin-left: auto !important;\n }\n .p-lg-0 {\n padding: 0 !important;\n }\n .p-lg-1 {\n padding: 0.25rem !important;\n }\n .p-lg-2 {\n padding: 0.5rem !important;\n }\n .p-lg-3 {\n padding: 1rem !important;\n }\n .p-lg-4 {\n padding: 1.5rem !important;\n }\n .p-lg-5 {\n padding: 3rem !important;\n }\n .px-lg-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n .px-lg-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n }\n .px-lg-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n }\n .px-lg-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n }\n .px-lg-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n }\n .px-lg-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n }\n .py-lg-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-lg-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n }\n .py-lg-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n }\n .py-lg-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n }\n .py-lg-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n }\n .py-lg-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n }\n .pt-lg-0 {\n padding-top: 0 !important;\n }\n .pt-lg-1 {\n padding-top: 0.25rem !important;\n }\n .pt-lg-2 {\n padding-top: 0.5rem !important;\n }\n .pt-lg-3 {\n padding-top: 1rem !important;\n }\n .pt-lg-4 {\n padding-top: 1.5rem !important;\n }\n .pt-lg-5 {\n padding-top: 3rem !important;\n }\n .pe-lg-0 {\n padding-right: 0 !important;\n }\n .pe-lg-1 {\n padding-right: 0.25rem !important;\n }\n .pe-lg-2 {\n padding-right: 0.5rem !important;\n }\n .pe-lg-3 {\n padding-right: 1rem !important;\n }\n .pe-lg-4 {\n padding-right: 1.5rem !important;\n }\n .pe-lg-5 {\n padding-right: 3rem !important;\n }\n .pb-lg-0 {\n padding-bottom: 0 !important;\n }\n .pb-lg-1 {\n padding-bottom: 0.25rem !important;\n }\n .pb-lg-2 {\n padding-bottom: 0.5rem !important;\n }\n .pb-lg-3 {\n padding-bottom: 1rem !important;\n }\n .pb-lg-4 {\n padding-bottom: 1.5rem !important;\n }\n .pb-lg-5 {\n padding-bottom: 3rem !important;\n }\n .ps-lg-0 {\n padding-left: 0 !important;\n }\n .ps-lg-1 {\n padding-left: 0.25rem !important;\n }\n .ps-lg-2 {\n padding-left: 0.5rem !important;\n }\n .ps-lg-3 {\n padding-left: 1rem !important;\n }\n .ps-lg-4 {\n padding-left: 1.5rem !important;\n }\n .ps-lg-5 {\n padding-left: 3rem !important;\n }\n .gap-lg-0 {\n gap: 0 !important;\n }\n .gap-lg-1 {\n gap: 0.25rem !important;\n }\n .gap-lg-2 {\n gap: 0.5rem !important;\n }\n .gap-lg-3 {\n gap: 1rem !important;\n }\n .gap-lg-4 {\n gap: 1.5rem !important;\n }\n .gap-lg-5 {\n gap: 3rem !important;\n }\n .row-gap-lg-0 {\n row-gap: 0 !important;\n }\n .row-gap-lg-1 {\n row-gap: 0.25rem !important;\n }\n .row-gap-lg-2 {\n row-gap: 0.5rem !important;\n }\n .row-gap-lg-3 {\n row-gap: 1rem !important;\n }\n .row-gap-lg-4 {\n row-gap: 1.5rem !important;\n }\n .row-gap-lg-5 {\n row-gap: 3rem !important;\n }\n .column-gap-lg-0 {\n -moz-column-gap: 0 !important;\n -webkit-column-gap: 0 !important;\n column-gap: 0 !important;\n }\n .column-gap-lg-1 {\n -moz-column-gap: 0.25rem !important;\n -webkit-column-gap: 0.25rem !important;\n column-gap: 0.25rem !important;\n }\n .column-gap-lg-2 {\n -moz-column-gap: 0.5rem !important;\n -webkit-column-gap: 0.5rem !important;\n column-gap: 0.5rem !important;\n }\n .column-gap-lg-3 {\n -moz-column-gap: 1rem !important;\n -webkit-column-gap: 1rem !important;\n column-gap: 1rem !important;\n }\n .column-gap-lg-4 {\n -moz-column-gap: 1.5rem !important;\n -webkit-column-gap: 1.5rem !important;\n column-gap: 1.5rem !important;\n }\n .column-gap-lg-5 {\n -moz-column-gap: 3rem !important;\n -webkit-column-gap: 3rem !important;\n column-gap: 3rem !important;\n }\n .text-lg-start {\n text-align: left !important;\n }\n .text-lg-end {\n text-align: right !important;\n }\n .text-lg-center {\n text-align: center !important;\n }\n}\n@media (min-width: 1200px) {\n .float-xl-start {\n float: left !important;\n }\n .float-xl-end {\n float: right !important;\n }\n .float-xl-none {\n float: none !important;\n }\n .object-fit-xl-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n }\n .object-fit-xl-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n }\n .object-fit-xl-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n }\n .object-fit-xl-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n }\n .object-fit-xl-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n }\n .d-xl-inline {\n display: inline !important;\n }\n .d-xl-inline-block {\n display: inline-block !important;\n }\n .d-xl-block {\n display: block !important;\n }\n .d-xl-grid {\n display: grid !important;\n }\n .d-xl-inline-grid {\n display: inline-grid !important;\n }\n .d-xl-table {\n display: table !important;\n }\n .d-xl-table-row {\n display: table-row !important;\n }\n .d-xl-table-cell {\n display: table-cell !important;\n }\n .d-xl-flex {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-xl-inline-flex {\n display: -webkit-inline-box !important;\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n .d-xl-none {\n display: none !important;\n }\n .flex-xl-fill {\n -webkit-box-flex: 1 !important;\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-xl-row {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-xl-column {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-xl-row-reverse {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-xl-column-reverse {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-xl-grow-0 {\n -webkit-box-flex: 0 !important;\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-xl-grow-1 {\n -webkit-box-flex: 1 !important;\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-xl-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-xl-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .flex-xl-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-xl-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-xl-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-xl-start {\n -webkit-box-pack: start !important;\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-xl-end {\n -webkit-box-pack: end !important;\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-xl-center {\n -webkit-box-pack: center !important;\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-xl-between {\n -webkit-box-pack: justify !important;\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-xl-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .justify-content-xl-evenly {\n -webkit-box-pack: space-evenly !important;\n -ms-flex-pack: space-evenly !important;\n justify-content: space-evenly !important;\n }\n .align-items-xl-start {\n -webkit-box-align: start !important;\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-xl-end {\n -webkit-box-align: end !important;\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-xl-center {\n -webkit-box-align: center !important;\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-xl-baseline {\n -webkit-box-align: baseline !important;\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-xl-stretch {\n -webkit-box-align: stretch !important;\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-xl-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-xl-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-xl-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-xl-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-xl-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-xl-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-xl-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-xl-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-xl-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-xl-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-xl-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-xl-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n .order-xl-first {\n -webkit-box-ordinal-group: 0 !important;\n -ms-flex-order: -1 !important;\n order: -1 !important;\n }\n .order-xl-0 {\n -webkit-box-ordinal-group: 1 !important;\n -ms-flex-order: 0 !important;\n order: 0 !important;\n }\n .order-xl-1 {\n -webkit-box-ordinal-group: 2 !important;\n -ms-flex-order: 1 !important;\n order: 1 !important;\n }\n .order-xl-2 {\n -webkit-box-ordinal-group: 3 !important;\n -ms-flex-order: 2 !important;\n order: 2 !important;\n }\n .order-xl-3 {\n -webkit-box-ordinal-group: 4 !important;\n -ms-flex-order: 3 !important;\n order: 3 !important;\n }\n .order-xl-4 {\n -webkit-box-ordinal-group: 5 !important;\n -ms-flex-order: 4 !important;\n order: 4 !important;\n }\n .order-xl-5 {\n -webkit-box-ordinal-group: 6 !important;\n -ms-flex-order: 5 !important;\n order: 5 !important;\n }\n .order-xl-last {\n -webkit-box-ordinal-group: 7 !important;\n -ms-flex-order: 6 !important;\n order: 6 !important;\n }\n .m-xl-0 {\n margin: 0 !important;\n }\n .m-xl-1 {\n margin: 0.25rem !important;\n }\n .m-xl-2 {\n margin: 0.5rem !important;\n }\n .m-xl-3 {\n margin: 1rem !important;\n }\n .m-xl-4 {\n margin: 1.5rem !important;\n }\n .m-xl-5 {\n margin: 3rem !important;\n }\n .m-xl-auto {\n margin: auto !important;\n }\n .mx-xl-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n .mx-xl-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n }\n .mx-xl-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n }\n .mx-xl-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n }\n .mx-xl-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n }\n .mx-xl-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n }\n .mx-xl-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n .my-xl-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-xl-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n }\n .my-xl-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n }\n .my-xl-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n }\n .my-xl-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n }\n .my-xl-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n }\n .my-xl-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-xl-0 {\n margin-top: 0 !important;\n }\n .mt-xl-1 {\n margin-top: 0.25rem !important;\n }\n .mt-xl-2 {\n margin-top: 0.5rem !important;\n }\n .mt-xl-3 {\n margin-top: 1rem !important;\n }\n .mt-xl-4 {\n margin-top: 1.5rem !important;\n }\n .mt-xl-5 {\n margin-top: 3rem !important;\n }\n .mt-xl-auto {\n margin-top: auto !important;\n }\n .me-xl-0 {\n margin-right: 0 !important;\n }\n .me-xl-1 {\n margin-right: 0.25rem !important;\n }\n .me-xl-2 {\n margin-right: 0.5rem !important;\n }\n .me-xl-3 {\n margin-right: 1rem !important;\n }\n .me-xl-4 {\n margin-right: 1.5rem !important;\n }\n .me-xl-5 {\n margin-right: 3rem !important;\n }\n .me-xl-auto {\n margin-right: auto !important;\n }\n .mb-xl-0 {\n margin-bottom: 0 !important;\n }\n .mb-xl-1 {\n margin-bottom: 0.25rem !important;\n }\n .mb-xl-2 {\n margin-bottom: 0.5rem !important;\n }\n .mb-xl-3 {\n margin-bottom: 1rem !important;\n }\n .mb-xl-4 {\n margin-bottom: 1.5rem !important;\n }\n .mb-xl-5 {\n margin-bottom: 3rem !important;\n }\n .mb-xl-auto {\n margin-bottom: auto !important;\n }\n .ms-xl-0 {\n margin-left: 0 !important;\n }\n .ms-xl-1 {\n margin-left: 0.25rem !important;\n }\n .ms-xl-2 {\n margin-left: 0.5rem !important;\n }\n .ms-xl-3 {\n margin-left: 1rem !important;\n }\n .ms-xl-4 {\n margin-left: 1.5rem !important;\n }\n .ms-xl-5 {\n margin-left: 3rem !important;\n }\n .ms-xl-auto {\n margin-left: auto !important;\n }\n .p-xl-0 {\n padding: 0 !important;\n }\n .p-xl-1 {\n padding: 0.25rem !important;\n }\n .p-xl-2 {\n padding: 0.5rem !important;\n }\n .p-xl-3 {\n padding: 1rem !important;\n }\n .p-xl-4 {\n padding: 1.5rem !important;\n }\n .p-xl-5 {\n padding: 3rem !important;\n }\n .px-xl-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n .px-xl-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n }\n .px-xl-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n }\n .px-xl-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n }\n .px-xl-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n }\n .px-xl-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n }\n .py-xl-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-xl-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n }\n .py-xl-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n }\n .py-xl-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n }\n .py-xl-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n }\n .py-xl-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n }\n .pt-xl-0 {\n padding-top: 0 !important;\n }\n .pt-xl-1 {\n padding-top: 0.25rem !important;\n }\n .pt-xl-2 {\n padding-top: 0.5rem !important;\n }\n .pt-xl-3 {\n padding-top: 1rem !important;\n }\n .pt-xl-4 {\n padding-top: 1.5rem !important;\n }\n .pt-xl-5 {\n padding-top: 3rem !important;\n }\n .pe-xl-0 {\n padding-right: 0 !important;\n }\n .pe-xl-1 {\n padding-right: 0.25rem !important;\n }\n .pe-xl-2 {\n padding-right: 0.5rem !important;\n }\n .pe-xl-3 {\n padding-right: 1rem !important;\n }\n .pe-xl-4 {\n padding-right: 1.5rem !important;\n }\n .pe-xl-5 {\n padding-right: 3rem !important;\n }\n .pb-xl-0 {\n padding-bottom: 0 !important;\n }\n .pb-xl-1 {\n padding-bottom: 0.25rem !important;\n }\n .pb-xl-2 {\n padding-bottom: 0.5rem !important;\n }\n .pb-xl-3 {\n padding-bottom: 1rem !important;\n }\n .pb-xl-4 {\n padding-bottom: 1.5rem !important;\n }\n .pb-xl-5 {\n padding-bottom: 3rem !important;\n }\n .ps-xl-0 {\n padding-left: 0 !important;\n }\n .ps-xl-1 {\n padding-left: 0.25rem !important;\n }\n .ps-xl-2 {\n padding-left: 0.5rem !important;\n }\n .ps-xl-3 {\n padding-left: 1rem !important;\n }\n .ps-xl-4 {\n padding-left: 1.5rem !important;\n }\n .ps-xl-5 {\n padding-left: 3rem !important;\n }\n .gap-xl-0 {\n gap: 0 !important;\n }\n .gap-xl-1 {\n gap: 0.25rem !important;\n }\n .gap-xl-2 {\n gap: 0.5rem !important;\n }\n .gap-xl-3 {\n gap: 1rem !important;\n }\n .gap-xl-4 {\n gap: 1.5rem !important;\n }\n .gap-xl-5 {\n gap: 3rem !important;\n }\n .row-gap-xl-0 {\n row-gap: 0 !important;\n }\n .row-gap-xl-1 {\n row-gap: 0.25rem !important;\n }\n .row-gap-xl-2 {\n row-gap: 0.5rem !important;\n }\n .row-gap-xl-3 {\n row-gap: 1rem !important;\n }\n .row-gap-xl-4 {\n row-gap: 1.5rem !important;\n }\n .row-gap-xl-5 {\n row-gap: 3rem !important;\n }\n .column-gap-xl-0 {\n -moz-column-gap: 0 !important;\n -webkit-column-gap: 0 !important;\n column-gap: 0 !important;\n }\n .column-gap-xl-1 {\n -moz-column-gap: 0.25rem !important;\n -webkit-column-gap: 0.25rem !important;\n column-gap: 0.25rem !important;\n }\n .column-gap-xl-2 {\n -moz-column-gap: 0.5rem !important;\n -webkit-column-gap: 0.5rem !important;\n column-gap: 0.5rem !important;\n }\n .column-gap-xl-3 {\n -moz-column-gap: 1rem !important;\n -webkit-column-gap: 1rem !important;\n column-gap: 1rem !important;\n }\n .column-gap-xl-4 {\n -moz-column-gap: 1.5rem !important;\n -webkit-column-gap: 1.5rem !important;\n column-gap: 1.5rem !important;\n }\n .column-gap-xl-5 {\n -moz-column-gap: 3rem !important;\n -webkit-column-gap: 3rem !important;\n column-gap: 3rem !important;\n }\n .text-xl-start {\n text-align: left !important;\n }\n .text-xl-end {\n text-align: right !important;\n }\n .text-xl-center {\n text-align: center !important;\n }\n}\n@media (min-width: 1400px) {\n .float-xxl-start {\n float: left !important;\n }\n .float-xxl-end {\n float: right !important;\n }\n .float-xxl-none {\n float: none !important;\n }\n .object-fit-xxl-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n }\n .object-fit-xxl-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n }\n .object-fit-xxl-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n }\n .object-fit-xxl-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n }\n .object-fit-xxl-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n }\n .d-xxl-inline {\n display: inline !important;\n }\n .d-xxl-inline-block {\n display: inline-block !important;\n }\n .d-xxl-block {\n display: block !important;\n }\n .d-xxl-grid {\n display: grid !important;\n }\n .d-xxl-inline-grid {\n display: inline-grid !important;\n }\n .d-xxl-table {\n display: table !important;\n }\n .d-xxl-table-row {\n display: table-row !important;\n }\n .d-xxl-table-cell {\n display: table-cell !important;\n }\n .d-xxl-flex {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-xxl-inline-flex {\n display: -webkit-inline-box !important;\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n .d-xxl-none {\n display: none !important;\n }\n .flex-xxl-fill {\n -webkit-box-flex: 1 !important;\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-xxl-row {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-xxl-column {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-xxl-row-reverse {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-xxl-column-reverse {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-xxl-grow-0 {\n -webkit-box-flex: 0 !important;\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-xxl-grow-1 {\n -webkit-box-flex: 1 !important;\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-xxl-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-xxl-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .flex-xxl-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-xxl-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-xxl-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-xxl-start {\n -webkit-box-pack: start !important;\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-xxl-end {\n -webkit-box-pack: end !important;\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-xxl-center {\n -webkit-box-pack: center !important;\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-xxl-between {\n -webkit-box-pack: justify !important;\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-xxl-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .justify-content-xxl-evenly {\n -webkit-box-pack: space-evenly !important;\n -ms-flex-pack: space-evenly !important;\n justify-content: space-evenly !important;\n }\n .align-items-xxl-start {\n -webkit-box-align: start !important;\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-xxl-end {\n -webkit-box-align: end !important;\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-xxl-center {\n -webkit-box-align: center !important;\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-xxl-baseline {\n -webkit-box-align: baseline !important;\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-xxl-stretch {\n -webkit-box-align: stretch !important;\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-xxl-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-xxl-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-xxl-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-xxl-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-xxl-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-xxl-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-xxl-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-xxl-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-xxl-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-xxl-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-xxl-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-xxl-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n .order-xxl-first {\n -webkit-box-ordinal-group: 0 !important;\n -ms-flex-order: -1 !important;\n order: -1 !important;\n }\n .order-xxl-0 {\n -webkit-box-ordinal-group: 1 !important;\n -ms-flex-order: 0 !important;\n order: 0 !important;\n }\n .order-xxl-1 {\n -webkit-box-ordinal-group: 2 !important;\n -ms-flex-order: 1 !important;\n order: 1 !important;\n }\n .order-xxl-2 {\n -webkit-box-ordinal-group: 3 !important;\n -ms-flex-order: 2 !important;\n order: 2 !important;\n }\n .order-xxl-3 {\n -webkit-box-ordinal-group: 4 !important;\n -ms-flex-order: 3 !important;\n order: 3 !important;\n }\n .order-xxl-4 {\n -webkit-box-ordinal-group: 5 !important;\n -ms-flex-order: 4 !important;\n order: 4 !important;\n }\n .order-xxl-5 {\n -webkit-box-ordinal-group: 6 !important;\n -ms-flex-order: 5 !important;\n order: 5 !important;\n }\n .order-xxl-last {\n -webkit-box-ordinal-group: 7 !important;\n -ms-flex-order: 6 !important;\n order: 6 !important;\n }\n .m-xxl-0 {\n margin: 0 !important;\n }\n .m-xxl-1 {\n margin: 0.25rem !important;\n }\n .m-xxl-2 {\n margin: 0.5rem !important;\n }\n .m-xxl-3 {\n margin: 1rem !important;\n }\n .m-xxl-4 {\n margin: 1.5rem !important;\n }\n .m-xxl-5 {\n margin: 3rem !important;\n }\n .m-xxl-auto {\n margin: auto !important;\n }\n .mx-xxl-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n .mx-xxl-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n }\n .mx-xxl-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n }\n .mx-xxl-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n }\n .mx-xxl-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n }\n .mx-xxl-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n }\n .mx-xxl-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n .my-xxl-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-xxl-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n }\n .my-xxl-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n }\n .my-xxl-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n }\n .my-xxl-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n }\n .my-xxl-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n }\n .my-xxl-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-xxl-0 {\n margin-top: 0 !important;\n }\n .mt-xxl-1 {\n margin-top: 0.25rem !important;\n }\n .mt-xxl-2 {\n margin-top: 0.5rem !important;\n }\n .mt-xxl-3 {\n margin-top: 1rem !important;\n }\n .mt-xxl-4 {\n margin-top: 1.5rem !important;\n }\n .mt-xxl-5 {\n margin-top: 3rem !important;\n }\n .mt-xxl-auto {\n margin-top: auto !important;\n }\n .me-xxl-0 {\n margin-right: 0 !important;\n }\n .me-xxl-1 {\n margin-right: 0.25rem !important;\n }\n .me-xxl-2 {\n margin-right: 0.5rem !important;\n }\n .me-xxl-3 {\n margin-right: 1rem !important;\n }\n .me-xxl-4 {\n margin-right: 1.5rem !important;\n }\n .me-xxl-5 {\n margin-right: 3rem !important;\n }\n .me-xxl-auto {\n margin-right: auto !important;\n }\n .mb-xxl-0 {\n margin-bottom: 0 !important;\n }\n .mb-xxl-1 {\n margin-bottom: 0.25rem !important;\n }\n .mb-xxl-2 {\n margin-bottom: 0.5rem !important;\n }\n .mb-xxl-3 {\n margin-bottom: 1rem !important;\n }\n .mb-xxl-4 {\n margin-bottom: 1.5rem !important;\n }\n .mb-xxl-5 {\n margin-bottom: 3rem !important;\n }\n .mb-xxl-auto {\n margin-bottom: auto !important;\n }\n .ms-xxl-0 {\n margin-left: 0 !important;\n }\n .ms-xxl-1 {\n margin-left: 0.25rem !important;\n }\n .ms-xxl-2 {\n margin-left: 0.5rem !important;\n }\n .ms-xxl-3 {\n margin-left: 1rem !important;\n }\n .ms-xxl-4 {\n margin-left: 1.5rem !important;\n }\n .ms-xxl-5 {\n margin-left: 3rem !important;\n }\n .ms-xxl-auto {\n margin-left: auto !important;\n }\n .p-xxl-0 {\n padding: 0 !important;\n }\n .p-xxl-1 {\n padding: 0.25rem !important;\n }\n .p-xxl-2 {\n padding: 0.5rem !important;\n }\n .p-xxl-3 {\n padding: 1rem !important;\n }\n .p-xxl-4 {\n padding: 1.5rem !important;\n }\n .p-xxl-5 {\n padding: 3rem !important;\n }\n .px-xxl-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n .px-xxl-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n }\n .px-xxl-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n }\n .px-xxl-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n }\n .px-xxl-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n }\n .px-xxl-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n }\n .py-xxl-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-xxl-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n }\n .py-xxl-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n }\n .py-xxl-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n }\n .py-xxl-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n }\n .py-xxl-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n }\n .pt-xxl-0 {\n padding-top: 0 !important;\n }\n .pt-xxl-1 {\n padding-top: 0.25rem !important;\n }\n .pt-xxl-2 {\n padding-top: 0.5rem !important;\n }\n .pt-xxl-3 {\n padding-top: 1rem !important;\n }\n .pt-xxl-4 {\n padding-top: 1.5rem !important;\n }\n .pt-xxl-5 {\n padding-top: 3rem !important;\n }\n .pe-xxl-0 {\n padding-right: 0 !important;\n }\n .pe-xxl-1 {\n padding-right: 0.25rem !important;\n }\n .pe-xxl-2 {\n padding-right: 0.5rem !important;\n }\n .pe-xxl-3 {\n padding-right: 1rem !important;\n }\n .pe-xxl-4 {\n padding-right: 1.5rem !important;\n }\n .pe-xxl-5 {\n padding-right: 3rem !important;\n }\n .pb-xxl-0 {\n padding-bottom: 0 !important;\n }\n .pb-xxl-1 {\n padding-bottom: 0.25rem !important;\n }\n .pb-xxl-2 {\n padding-bottom: 0.5rem !important;\n }\n .pb-xxl-3 {\n padding-bottom: 1rem !important;\n }\n .pb-xxl-4 {\n padding-bottom: 1.5rem !important;\n }\n .pb-xxl-5 {\n padding-bottom: 3rem !important;\n }\n .ps-xxl-0 {\n padding-left: 0 !important;\n }\n .ps-xxl-1 {\n padding-left: 0.25rem !important;\n }\n .ps-xxl-2 {\n padding-left: 0.5rem !important;\n }\n .ps-xxl-3 {\n padding-left: 1rem !important;\n }\n .ps-xxl-4 {\n padding-left: 1.5rem !important;\n }\n .ps-xxl-5 {\n padding-left: 3rem !important;\n }\n .gap-xxl-0 {\n gap: 0 !important;\n }\n .gap-xxl-1 {\n gap: 0.25rem !important;\n }\n .gap-xxl-2 {\n gap: 0.5rem !important;\n }\n .gap-xxl-3 {\n gap: 1rem !important;\n }\n .gap-xxl-4 {\n gap: 1.5rem !important;\n }\n .gap-xxl-5 {\n gap: 3rem !important;\n }\n .row-gap-xxl-0 {\n row-gap: 0 !important;\n }\n .row-gap-xxl-1 {\n row-gap: 0.25rem !important;\n }\n .row-gap-xxl-2 {\n row-gap: 0.5rem !important;\n }\n .row-gap-xxl-3 {\n row-gap: 1rem !important;\n }\n .row-gap-xxl-4 {\n row-gap: 1.5rem !important;\n }\n .row-gap-xxl-5 {\n row-gap: 3rem !important;\n }\n .column-gap-xxl-0 {\n -moz-column-gap: 0 !important;\n -webkit-column-gap: 0 !important;\n column-gap: 0 !important;\n }\n .column-gap-xxl-1 {\n -moz-column-gap: 0.25rem !important;\n -webkit-column-gap: 0.25rem !important;\n column-gap: 0.25rem !important;\n }\n .column-gap-xxl-2 {\n -moz-column-gap: 0.5rem !important;\n -webkit-column-gap: 0.5rem !important;\n column-gap: 0.5rem !important;\n }\n .column-gap-xxl-3 {\n -moz-column-gap: 1rem !important;\n -webkit-column-gap: 1rem !important;\n column-gap: 1rem !important;\n }\n .column-gap-xxl-4 {\n -moz-column-gap: 1.5rem !important;\n -webkit-column-gap: 1.5rem !important;\n column-gap: 1.5rem !important;\n }\n .column-gap-xxl-5 {\n -moz-column-gap: 3rem !important;\n -webkit-column-gap: 3rem !important;\n column-gap: 3rem !important;\n }\n .text-xxl-start {\n text-align: left !important;\n }\n .text-xxl-end {\n text-align: right !important;\n }\n .text-xxl-center {\n text-align: center !important;\n }\n}\n@media (min-width: 1200px) {\n .fs-1 {\n font-size: 2.5rem !important;\n }\n .fs-2 {\n font-size: 2rem !important;\n }\n .fs-3 {\n font-size: 1.75rem !important;\n }\n .fs-4 {\n font-size: 1.5rem !important;\n }\n}\n@media print {\n .d-print-inline {\n display: inline !important;\n }\n .d-print-inline-block {\n display: inline-block !important;\n }\n .d-print-block {\n display: block !important;\n }\n .d-print-grid {\n display: grid !important;\n }\n .d-print-inline-grid {\n display: inline-grid !important;\n }\n .d-print-table {\n display: table !important;\n }\n .d-print-table-row {\n display: table-row !important;\n }\n .d-print-table-cell {\n display: table-cell !important;\n }\n .d-print-flex {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-print-inline-flex {\n display: -webkit-inline-box !important;\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n .d-print-none {\n display: none !important;\n }\n}\n/*# sourceMappingURL=bootstrap.css.map */\n#app[data-v-3855d3c1] {\n font-family: Avenir, Helvetica, Arial, sans-serif;\n text-align: center;\n color: #2c3e50;\n margin-top: 60px;\n}\n.menu[data-v-3855d3c1] {\n margin-bottom: 20px;\n}\n.content[data-v-3855d3c1] {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-pack: distribute;\n justify-content: space-around;\n height: 90vh;\n}\n.editor-box[data-v-3855d3c1] {\n border: 5px solid #4b4a4a;\n padding: 20px;\n margin: 10px;\n width: 35%;\n border-radius: 10px;\n height: 80vh;\n /* overflow: hidden; */\n overflow: auto;\n}\n.svg-container[data-v-3855d3c1] {\n border: 5px solid #4b4a4a;\n padding: 20px;\n margin: 10px;\n width: 60%;\n border-radius: 10px;\n height: 80vh;\n overflow: hidden;\n position: relative;\n}\n.error[data-v-3855d3c1] {\n color: red;\n margin-top: 10px;\n}\n.my-select[data-v-3855d3c1] {\n padding: 10px;\n font-size: 16px;\n border-radius: 5px;\n border: 1px solid #ccc;\n margin-right: 20px;\n}\n.url-input[data-v-3855d3c1] {\n padding: 10px;\n font-size: 16px;\n border: 1px solid #ccc;\n width: 400px;\n overflow-x: auto;\n margin-left: 20px;\n}\npre[data-v-3855d3c1] {\n overflow-x: auto;\n overflow-y: auto;\n height: 100%;\n width: 100%;\n white-space: nowrap;\n}\n.svg-container input[data-v-3855d3c1] {\n position: absolute; /* input使用绝对定位 */\n top: 10px; /* 定位到顶部 */\n left: 140px; /* 定位到左侧 */\n}\n.svg-container label[data-v-3855d3c1] {\n font-weight: bold;\n position: absolute; /* input使用绝对定位 */\n top: 14px; /* 定位到顶部 */\n left: 20px; /* 定位到左侧 */\n}\nspan[data-v-3855d3c1] {\n text-align: left !important;\n}\n.tooltip[data-v-3855d3c1] {\n position: absolute;\n text-align: left;\n width: auto;\n height: auto;\n padding: 5px;\n font: 12px sans-serif;\n background: lightsteelblue;\n border: 0px;\n border-radius: 8px;\n pointer-events: none; /* 确保用户可以与下面的元素交互 */\n}\n\n.vjs-checkbox {\r\n position: absolute;\r\n left: -30px;\r\n color: #1f2d3d;\r\n -webkit-user-select: none;\r\n -moz-user-select: none;\r\n -ms-user-select: none;\r\n user-select: none\r\n}\r\n\r\n.vjs-checkbox.is-checked .vjs-checkbox__inner {\r\n background-color: #1890ff;\r\n border-color: #0076e4\r\n}\r\n\r\n.vjs-checkbox.is-checked .vjs-checkbox__inner:after {\r\n -webkit-transform: rotate(45deg) scaleY(1);\r\n transform: rotate(45deg) scaleY(1)\r\n}\r\n\r\n.vjs-checkbox .vjs-checkbox__inner {\r\n display: inline-block;\r\n position: relative;\r\n border: 1px solid #bfcbd9;\r\n -webkit-border-radius: 2px;\r\n border-radius: 2px;\r\n vertical-align: middle;\r\n -webkit-box-sizing: border-box;\r\n box-sizing: border-box;\r\n width: 16px;\r\n height: 16px;\r\n background-color: #fff;\r\n z-index: 1;\r\n cursor: pointer;\r\n -webkit-transition: border-color .25s cubic-bezier(.71, -.46, .29, 1.46), background-color .25s cubic-bezier(.71, -.46, .29, 1.46);\r\n -o-transition: border-color .25s cubic-bezier(.71, -.46, .29, 1.46), background-color .25s cubic-bezier(.71, -.46, .29, 1.46);\r\n transition: border-color .25s cubic-bezier(.71, -.46, .29, 1.46), background-color .25s cubic-bezier(.71, -.46, .29, 1.46)\r\n}\r\n\r\n.vjs-checkbox .vjs-checkbox__inner:after {\r\n -webkit-box-sizing: content-box;\r\n box-sizing: content-box;\r\n content: \"\";\r\n border: 2px solid #fff;\r\n border-left: 0;\r\n border-top: 0;\r\n height: 8px;\r\n left: 4px;\r\n position: absolute;\r\n top: 1px;\r\n -webkit-transform: rotate(45deg) scaleY(0);\r\n transform: rotate(45deg) scaleY(0);\r\n width: 4px;\r\n -webkit-transition: -webkit-transform .15s cubic-bezier(.71, -.46, .88, .6) .05s;\r\n transition: -webkit-transform .15s cubic-bezier(.71, -.46, .88, .6) .05s;\r\n -o-transition: transform .15s cubic-bezier(.71, -.46, .88, .6) .05s;\r\n transition: transform .15s cubic-bezier(.71, -.46, .88, .6) .05s;\r\n transition: transform .15s cubic-bezier(.71, -.46, .88, .6) .05s, -webkit-transform .15s cubic-bezier(.71, -.46, .88, .6) .05s;\r\n -webkit-transform-origin: center;\r\n transform-origin: center\r\n}\r\n\r\n.vjs-checkbox .vjs-checkbox__original {\r\n opacity: 0;\r\n outline: none;\r\n position: absolute;\r\n z-index: -1;\r\n top: 0;\r\n left: 0;\r\n right: 0;\r\n bottom: 0;\r\n margin: 0\r\n}\r\n\r\n.vjs-radio {\r\n position: absolute;\r\n left: -30px;\r\n color: #1f2d3d;\r\n -webkit-user-select: none;\r\n -moz-user-select: none;\r\n -ms-user-select: none;\r\n user-select: none\r\n}\r\n\r\n.vjs-radio.is-checked .vjs-radio__inner {\r\n background-color: #1890ff;\r\n border-color: #0076e4\r\n}\r\n\r\n.vjs-radio.is-checked .vjs-radio__inner:after {\r\n -webkit-transform: translate(-50%, -50%) scale(1);\r\n transform: translate(-50%, -50%) scale(1)\r\n}\r\n\r\n.vjs-radio .vjs-radio__inner {\r\n border: 1px solid #bfcbd9;\r\n -webkit-border-radius: 100%;\r\n border-radius: 100%;\r\n width: 16px;\r\n height: 16px;\r\n vertical-align: middle;\r\n background-color: #fff;\r\n position: relative;\r\n cursor: pointer;\r\n display: inline-block;\r\n -webkit-box-sizing: border-box;\r\n box-sizing: border-box\r\n}\r\n\r\n.vjs-radio .vjs-radio__inner:after {\r\n width: 4px;\r\n height: 4px;\r\n -webkit-border-radius: 100%;\r\n border-radius: 100%;\r\n background-color: #fff;\r\n content: \"\";\r\n position: absolute;\r\n left: 50%;\r\n top: 50%;\r\n -webkit-transform: translate(-50%, -50%) scale(0);\r\n transform: translate(-50%, -50%) scale(0);\r\n -webkit-transition: -webkit-transform .15s ease-in;\r\n transition: -webkit-transform .15s ease-in;\r\n -o-transition: transform .15s ease-in;\r\n transition: transform .15s ease-in;\r\n transition: transform .15s ease-in, -webkit-transform .15s ease-in\r\n}\r\n\r\n.vjs-radio .vjs-radio__original {\r\n opacity: 0;\r\n outline: none;\r\n position: absolute;\r\n z-index: -1;\r\n top: 0;\r\n left: 0;\r\n right: 0;\r\n bottom: 0;\r\n margin: 0\r\n}\r\n\r\n.vjs-tree {\r\n font-family: Monaco, Menlo, Consolas, Bitstream Vera Sans Mono, monospace;\r\n font-size: 14px;\r\n text-align: left;\r\n}\r\n\r\n.vjs-tree.is-root {\r\n position: relative\r\n}\r\n\r\n.vjs-tree.is-root.has-selectable-control {\r\n margin-left: 30px\r\n}\r\n\r\n.vjs-tree.is-mouseover {\r\n background-color: #e6f7ff\r\n}\r\n\r\n.vjs-tree.is-highlight-selected {\r\n background-color: #ccefff\r\n}\r\n\r\n.vjs-tree .vjs-tree__content {\r\n padding-left: 1em\r\n}\r\n\r\n.vjs-tree .vjs-tree__content.has-line {\r\n border-left: 1px dotted #bfcbd9\r\n}\r\n\r\n.vjs-tree .vjs-tree__brackets {\r\n cursor: pointer\r\n}\r\n\r\n.vjs-tree .vjs-tree__brackets:hover {\r\n color: #1890ff\r\n}\r\n\r\n.vjs-tree .vjs-comment {\r\n color: #bfcbd9\r\n}\r\n\r\n.vjs-tree .vjs-value__null {\r\n color: #ff4949\r\n}\r\n\r\n.vjs-tree .vjs-value__boolean,\r\n.vjs-tree .vjs-value__number {\r\n color: #1d8ce0\r\n}\r\n\r\n.vjs-tree .vjs-value__string {\r\n color: #13ce66\r\n}\r\n\r\n.vjs-tree .highlight-row {\r\n background: rgba(255, 0, 0, .08);\r\n border: 1px solid rgba(255, 0, 0, .36);\r\n padding: 2px;\r\n -webkit-border-radius: 2px;\r\n border-radius: 2px;\r\n -webkit-box-shadow: 1px 2px 5px -2px #ababab;\r\n box-shadow: 1px 2px 5px -2px #ababab\r\n}"]} \ No newline at end of file +{"version":3,"sources":["app.47bd9779ba3b9a7e86a34752feb2c41b.css"],"names":[],"mappings":"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c,CACd,QAAS,CACT,uCAAwC,CACxC,WACF,CACA,0CACE,YAAa,CACb,mBAAqB,CACrB,eAAgB,CAChB,eAAgB,CAChB,6BACF,CACA,OACE,gCACF,CACA,0BACE,OACE,gBACF,CACF,CACA,OACE,+BACF,CACA,0BACE,OACE,cACF,CACF,CACA,OACE,6BACF,CACA,0BACE,OACE,iBACF,CACF,CACA,OACE,+BACF,CACA,0BACE,OACE,gBACF,CACF,CACA,OACE,iBACF,CACA,OACE,cACF,CACA,EACE,YAAa,CACb,kBACF,CACA,YACE,wCAAyC,CACzC,gCAAiC,CACjC,WAAY,CACZ,qCAAsC,CACtC,6BACF,CACA,QACE,kBAAmB,CACnB,iBAAkB,CAClB,mBACF,CACA,MAEE,iBACF,CACA,SAGE,YAAa,CACb,kBACF,CACA,wBAIE,eACF,CACA,GACE,eACF,CACA,GACE,mBAAqB,CACrB,aACF,CACA,WACE,eACF,CACA,SAEE,kBACF,CACA,aACE,gBACF,CACA,WACE,eAAiB,CACjB,uCACF,CACA,QAEE,iBAAkB,CAClB,eAAiB,CACjB,aAAc,CACd,uBACF,CACA,IACE,aACF,CACA,IACE,SACF,CACA,EACE,6DAAgE,CAChE,yBACF,CACA,QACE,kDACF,CACA,4DACE,aAAc,CACd,oBACF,CACA,kBAIE,oCAAqC,CACrC,aACF,CACA,IACE,aAAc,CACd,YAAa,CACb,kBAAmB,CACnB,aAAc,CACd,gBACF,CACA,SACE,iBAAkB,CAClB,aAAc,CACd,iBACF,CACA,KACE,gBAAkB,CAClB,0BAA2B,CAC3B,oBACF,CACA,OACE,aACF,CACA,IACE,wBAA2B,CAC3B,gBAAkB,CAClB,uBAAwB,CACxB,qCAAsC,CACtC,oBACF,CACA,QACE,SAAU,CACV,aACF,CACA,OACE,eACF,CACA,QAEE,qBACF,CACA,MACE,mBAAoB,CACpB,wBACF,CACA,QACE,iBAAmB,CACnB,oBAAsB,CACtB,+BAAgC,CAChC,eACF,CACA,GACE,kBAAmB,CACnB,+BACF,CACA,2BAQE,cAAe,CAFf,oBAGF,CACA,MACE,oBACF,CACA,OACE,eACF,CACA,iCACE,SACF,CACA,sCAKE,QAAS,CACT,mBAAoB,CACpB,iBAAkB,CAClB,mBACF,CACA,cAEE,mBACF,CACA,cACE,cACF,CACA,OACE,gBACF,CACA,gBACE,SACF,CACA,0IACE,sBACF,CACA,gDAIE,yBACF,CACA,4GAIE,cACF,CACA,mBACE,SAAU,CACV,iBACF,CACA,SACE,eACF,CACA,SACE,WAAY,CACZ,SAAU,CACV,QAAS,CACT,QACF,CACA,OACE,UAAW,CACX,UAAW,CACX,SAAU,CACV,mBAAqB,CACrB,+BAAiC,CACjC,mBACF,CACA,0BACE,OACE,gBACF,CACF,CACA,SACE,UACF,CACA,+OAOE,SACF,CACA,4BACE,WACF,CACA,cACE,mBAAoB,CACpB,4BACF,CASA,4BACE,uBACF,CACA,+BACE,SACF,CACA,6BACE,YAAa,CACb,yBACF,CACA,uBACE,YAAa,CACb,yBACF,CACA,OACE,oBACF,CACA,OACE,QACF,CACA,QACE,iBAAkB,CAClB,cACF,CACA,SACE,uBACF,CACA,SACE,sBACF,CACA,MACE,iBAAkB,CAClB,eACF,CACA,WACE,gCAAiC,CACjC,eAAgB,CAChB,eACF,CACA,0BACE,WACE,cACF,CACF,CACA,WACE,gCAAiC,CACjC,eAAgB,CAChB,eACF,CACA,0BACE,WACE,gBACF,CACF,CACA,WACE,gCAAiC,CACjC,eAAgB,CAChB,eACF,CACA,0BACE,WACE,cACF,CACF,CACA,WACE,gCAAiC,CACjC,eAAgB,CAChB,eACF,CACA,0BACE,WACE,gBACF,CACF,CACA,WACE,gCAAiC,CACjC,eAAgB,CAChB,eACF,CACA,0BACE,WACE,cACF,CACF,CACA,WACE,gCAAiC,CACjC,eAAgB,CAChB,eACF,CACA,0BACE,WACE,gBACF,CACF,CAKA,4BACE,cAAe,CACf,eACF,CACA,kBACE,oBACF,CACA,mCACE,kBACF,CACA,YACE,gBAAkB,CAClB,wBACF,CACA,YACE,kBAAmB,CACnB,iBACF,CACA,wBACE,eACF,CACA,mBACE,gBAAiB,CACjB,kBAAmB,CACnB,gBAAkB,CAClB,aACF,CACA,0BACE,kBACF,CAKA,0BAHE,cAAe,CACf,WASF,CAPA,eACE,cAAgB,CAChB,kCAAmC,CACnC,0DAA2D,CAC3D,qCAGF,CACA,QACE,oBACF,CACA,YACE,mBAAqB,CACrB,aACF,CACA,gBACE,gBAAkB,CAClB,+BACF,CACA,mGAOE,oBAAqB,CACrB,eAAgB,CAChB,UAAW,CACX,0CAA6C,CAC7C,yCAA4C,CAC5C,iBAAkB,CAClB,gBACF,CACA,yBACE,yBACE,eACF,CACF,CACA,yBACE,uCACE,eACF,CACF,CACA,yBACE,qDACE,eACF,CACF,CACA,0BACE,mEACE,gBACF,CACF,CACA,0BACE,kFACE,gBACF,CACF,CACA,MACE,oBAAqB,CACrB,wBAAyB,CACzB,wBAAyB,CACzB,wBAAyB,CACzB,yBAA0B,CAC1B,0BACF,CACA,KACE,oBAAqB,CACrB,eAAgB,CAChB,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,cAAe,CACnB,sCAAyC,CACzC,0CAA6C,CAC7C,yCACF,CACA,OACE,mBAAoB,CAChB,aAAc,CAClB,UAAW,CACX,cAAe,CACf,0CAA6C,CAC7C,yCAA4C,CAC5C,6BACF,CACA,KACE,kBAAmB,CACf,eAAgB,CACZ,WACV,CACA,iBAIE,UACF,CACA,+BALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,cAIE,UACF,CACA,cAIE,SACF,CACA,4BALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,cAIE,oBACF,CACA,cAIE,SACF,CACA,4BALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,cAIE,SACF,CACA,cAIE,oBACF,CACA,wBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,UACF,CACA,OAIE,iBACF,CACA,cALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,OAIE,kBACF,CACA,OAIE,SACF,CACA,cALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,OAIE,kBACF,CACA,OAIE,kBACF,CACA,cALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,OAIE,SACF,CACA,OAIE,kBACF,CACA,cALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,OAIE,kBACF,CACA,OAIE,SACF,CACA,eALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,QAIE,kBACF,CACA,QAIE,kBACF,CACA,gBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,QAIE,UACF,CACA,UACE,uBACF,CACA,UACE,wBACF,CACA,UACE,eACF,CACA,UACE,wBACF,CACA,UACE,wBACF,CACA,UACE,eACF,CACA,UACE,wBACF,CACA,UACE,wBACF,CACA,UACE,eACF,CACA,WACE,wBACF,CACA,WACE,wBACF,CACA,WAEE,eACF,CACA,WAEE,eACF,CACA,WAEE,qBACF,CACA,WAEE,qBACF,CACA,WAEE,oBACF,CACA,WAEE,oBACF,CACA,WAEE,kBACF,CACA,WAEE,kBACF,CACA,WAEE,oBACF,CACA,WAEE,oBACF,CACA,WAEE,kBACF,CACA,WAEE,kBACF,CACA,yBACE,QACE,kBAAmB,CACf,eAAgB,CACZ,WACV,CACA,oBAIE,UACF,CACA,qCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,iBAIE,UACF,CACA,iBAIE,SACF,CACA,kCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,iBAIE,oBACF,CACA,iBAIE,SACF,CACA,kCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,iBAIE,SACF,CACA,iBAIE,oBACF,CACA,8BALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,aAIE,UACF,CACA,UAIE,iBACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,kBACF,CACA,UAIE,SACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,kBACF,CACA,UAIE,kBACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,SACF,CACA,UAIE,kBACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,kBACF,CACA,UAIE,SACF,CACA,qBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,WAIE,kBACF,CACA,WAIE,kBACF,CACA,sBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,WAIE,UACF,CACA,aACE,aACF,CACA,aACE,uBACF,CACA,aACE,wBACF,CACA,aACE,eACF,CACA,aACE,wBACF,CACA,aACE,wBACF,CACA,aACE,eACF,CACA,aACE,wBACF,CACA,aACE,wBACF,CACA,aACE,eACF,CACA,cACE,wBACF,CACA,cACE,wBACF,CACA,iBAEE,eACF,CACA,iBAEE,eACF,CACA,iBAEE,qBACF,CACA,iBAEE,qBACF,CACA,iBAEE,oBACF,CACA,iBAEE,oBACF,CACA,iBAEE,kBACF,CACA,iBAEE,kBACF,CACA,iBAEE,oBACF,CACA,iBAEE,oBACF,CACA,iBAEE,kBACF,CACA,iBAEE,kBACF,CACF,CACA,yBACE,QACE,kBAAmB,CACf,eAAgB,CACZ,WACV,CACA,oBAIE,UACF,CACA,qCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,iBAIE,UACF,CACA,iBAIE,SACF,CACA,kCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,iBAIE,oBACF,CACA,iBAIE,SACF,CACA,kCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,iBAIE,SACF,CACA,iBAIE,oBACF,CACA,8BALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,aAIE,UACF,CACA,UAIE,iBACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,kBACF,CACA,UAIE,SACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,kBACF,CACA,UAIE,kBACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,SACF,CACA,UAIE,kBACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,kBACF,CACA,UAIE,SACF,CACA,qBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,WAIE,kBACF,CACA,WAIE,kBACF,CACA,sBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,WAIE,UACF,CACA,aACE,aACF,CACA,aACE,uBACF,CACA,aACE,wBACF,CACA,aACE,eACF,CACA,aACE,wBACF,CACA,aACE,wBACF,CACA,aACE,eACF,CACA,aACE,wBACF,CACA,aACE,wBACF,CACA,aACE,eACF,CACA,cACE,wBACF,CACA,cACE,wBACF,CACA,iBAEE,eACF,CACA,iBAEE,eACF,CACA,iBAEE,qBACF,CACA,iBAEE,qBACF,CACA,iBAEE,oBACF,CACA,iBAEE,oBACF,CACA,iBAEE,kBACF,CACA,iBAEE,kBACF,CACA,iBAEE,oBACF,CACA,iBAEE,oBACF,CACA,iBAEE,kBACF,CACA,iBAEE,kBACF,CACF,CACA,yBACE,QACE,kBAAmB,CACf,eAAgB,CACZ,WACV,CACA,oBAIE,UACF,CACA,qCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,iBAIE,UACF,CACA,iBAIE,SACF,CACA,kCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,iBAIE,oBACF,CACA,iBAIE,SACF,CACA,kCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,iBAIE,SACF,CACA,iBAIE,oBACF,CACA,8BALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,aAIE,UACF,CACA,UAIE,iBACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,kBACF,CACA,UAIE,SACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,kBACF,CACA,UAIE,kBACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,SACF,CACA,UAIE,kBACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,kBACF,CACA,UAIE,SACF,CACA,qBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,WAIE,kBACF,CACA,WAIE,kBACF,CACA,sBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,WAIE,UACF,CACA,aACE,aACF,CACA,aACE,uBACF,CACA,aACE,wBACF,CACA,aACE,eACF,CACA,aACE,wBACF,CACA,aACE,wBACF,CACA,aACE,eACF,CACA,aACE,wBACF,CACA,aACE,wBACF,CACA,aACE,eACF,CACA,cACE,wBACF,CACA,cACE,wBACF,CACA,iBAEE,eACF,CACA,iBAEE,eACF,CACA,iBAEE,qBACF,CACA,iBAEE,qBACF,CACA,iBAEE,oBACF,CACA,iBAEE,oBACF,CACA,iBAEE,kBACF,CACA,iBAEE,kBACF,CACA,iBAEE,oBACF,CACA,iBAEE,oBACF,CACA,iBAEE,kBACF,CACA,iBAEE,kBACF,CACF,CACA,0BACE,QACE,kBAAmB,CACf,eAAgB,CACZ,WACV,CACA,oBAIE,UACF,CACA,qCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,iBAIE,UACF,CACA,iBAIE,SACF,CACA,kCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,iBAIE,oBACF,CACA,iBAIE,SACF,CACA,kCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,iBAIE,SACF,CACA,iBAIE,oBACF,CACA,8BALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,aAIE,UACF,CACA,UAIE,iBACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,kBACF,CACA,UAIE,SACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,kBACF,CACA,UAIE,kBACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,SACF,CACA,UAIE,kBACF,CACA,oBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,UAIE,kBACF,CACA,UAIE,SACF,CACA,qBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,WAIE,kBACF,CACA,WAIE,kBACF,CACA,sBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,WAIE,UACF,CACA,aACE,aACF,CACA,aACE,uBACF,CACA,aACE,wBACF,CACA,aACE,eACF,CACA,aACE,wBACF,CACA,aACE,wBACF,CACA,aACE,eACF,CACA,aACE,wBACF,CACA,aACE,wBACF,CACA,aACE,eACF,CACA,cACE,wBACF,CACA,cACE,wBACF,CACA,iBAEE,eACF,CACA,iBAEE,eACF,CACA,iBAEE,qBACF,CACA,iBAEE,qBACF,CACA,iBAEE,oBACF,CACA,iBAEE,oBACF,CACA,iBAEE,kBACF,CACA,iBAEE,kBACF,CACA,iBAEE,oBACF,CACA,iBAEE,oBACF,CACA,iBAEE,kBACF,CACA,iBAEE,kBACF,CACF,CACA,0BACE,SACE,kBAAmB,CACf,eAAgB,CACZ,WACV,CACA,qBAIE,UACF,CACA,uCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,kBAIE,UACF,CACA,kBAIE,SACF,CACA,oCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,kBAIE,oBACF,CACA,kBAIE,SACF,CACA,oCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,kBAIE,SACF,CACA,kBAIE,oBACF,CACA,gCALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,cAIE,UACF,CACA,WAIE,iBACF,CACA,sBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,WAIE,kBACF,CACA,WAIE,SACF,CACA,sBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,WAIE,kBACF,CACA,WAIE,kBACF,CACA,sBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,WAIE,SACF,CACA,WAIE,kBACF,CACA,sBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,WAIE,kBACF,CACA,WAIE,SACF,CACA,uBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,YAIE,kBACF,CACA,YAIE,kBACF,CACA,wBALE,kBAAmB,CACf,iBAAkB,CACd,aAQV,CALA,YAIE,UACF,CACA,cACE,aACF,CACA,cACE,uBACF,CACA,cACE,wBACF,CACA,cACE,eACF,CACA,cACE,wBACF,CACA,cACE,wBACF,CACA,cACE,eACF,CACA,cACE,wBACF,CACA,cACE,wBACF,CACA,cACE,eACF,CACA,eACE,wBACF,CACA,eACE,wBACF,CACA,mBAEE,eACF,CACA,mBAEE,eACF,CACA,mBAEE,qBACF,CACA,mBAEE,qBACF,CACA,mBAEE,oBACF,CACA,mBAEE,oBACF,CACA,mBAEE,kBACF,CACA,mBAEE,kBACF,CACA,mBAEE,oBACF,CACA,mBAEE,oBACF,CACA,mBAEE,kBACF,CACA,mBAEE,kBACF,CACF,CACA,OACE,6BAA8B,CAC9B,0BAA2B,CAC3B,8BAA+B,CAC/B,2BAA4B,CAC5B,qCAAsC,CACtC,+BAAgC,CAChC,8CAA+C,CAC/C,gCAAiC,CACjC,6CAA8C,CAC9C,sCAA0C,CAC1C,4CAA6C,CAC7C,oCAAwC,CACxC,2CAA4C,CAC5C,qCAAyC,CACzC,UAAW,CACX,kBAAmB,CACnB,kBAAmB,CACnB,yCACF,CACA,yBACE,aAAsB,CACtB,kFAAqF,CACrF,mCAAoC,CACpC,0CAA2C,CAC3C,gHAAmH,CAC3G,wGACV,CACA,aACE,sBACF,CACA,aACE,qBACF,CACA,qBACE,+CACF,CACA,aACE,gBACF,CACA,4BACE,cACF,CACA,gCACE,mBAAsC,CAAtC,0CAAsC,CAAtC,oBAAsC,CAAtC,uCACF,CACA,kCACE,wCAAsC,CAAtC,qBAAsC,CAAtC,yCAAsC,CAAtC,kBACF,CACA,oCACE,qBACF,CACA,qCACE,kBACF,CAKA,kGACE,mDAAoD,CACpD,6CACF,CACA,cACE,mDAAoD,CACpD,6CACF,CACA,8BACE,kDAAmD,CACnD,4CACF,CACA,eACE,qBAAsB,CACtB,qBAAsB,CACtB,+BAAgC,CAChC,6BAA8B,CAC9B,6BAA8B,CAC9B,4BAA6B,CAC7B,4BAA6B,CAC7B,2BAA4B,CAC5B,2BAGF,CACA,gCAHE,2BAA4B,CAC5B,yCAcF,CAZA,iBACE,qBAAsB,CACtB,qBAAsB,CACtB,+BAAgC,CAChC,6BAA8B,CAC9B,6BAA8B,CAC9B,4BAA6B,CAC7B,4BAA6B,CAC7B,2BAA4B,CAC5B,2BAGF,CACA,eACE,qBAAsB,CACtB,qBAAsB,CACtB,+BAAgC,CAChC,6BAA8B,CAC9B,6BAA8B,CAC9B,4BAA6B,CAC7B,4BAA6B,CAC7B,2BAA4B,CAC5B,2BAGF,CACA,2BAHE,2BAA4B,CAC5B,yCAcF,CAZA,YACE,qBAAsB,CACtB,qBAAsB,CACtB,+BAAgC,CAChC,6BAA8B,CAC9B,6BAA8B,CAC9B,4BAA6B,CAC7B,4BAA6B,CAC7B,2BAA4B,CAC5B,2BAGF,CACA,eACE,qBAAsB,CACtB,qBAAsB,CACtB,+BAAgC,CAChC,6BAA8B,CAC9B,6BAA8B,CAC9B,4BAA6B,CAC7B,4BAA6B,CAC7B,2BAA4B,CAC5B,2BAGF,CACA,6BAHE,2BAA4B,CAC5B,yCAcF,CAZA,cACE,qBAAsB,CACtB,qBAAsB,CACtB,+BAAgC,CAChC,6BAA8B,CAC9B,6BAA8B,CAC9B,4BAA6B,CAC7B,4BAA6B,CAC7B,2BAA4B,CAC5B,2BAGF,CACA,aACE,qBAAsB,CACtB,qBAAsB,CACtB,+BAAgC,CAChC,6BAA8B,CAC9B,6BAA8B,CAC9B,4BAA6B,CAC7B,4BAA6B,CAC7B,2BAA4B,CAC5B,2BAGF,CACA,yBAHE,2BAA4B,CAC5B,yCAcF,CAZA,YACE,qBAAsB,CACtB,qBAAsB,CACtB,+BAAgC,CAChC,6BAA8B,CAC9B,6BAA8B,CAC9B,4BAA6B,CAC7B,4BAA6B,CAC7B,2BAA4B,CAC5B,2BAGF,CACA,kBACE,eAAgB,CAChB,gCACF,CACA,4BACE,qBACE,eAAgB,CAChB,gCACF,CACF,CACA,4BACE,qBACE,eAAgB,CAChB,gCACF,CACF,CACA,4BACE,qBACE,eAAgB,CAChB,gCACF,CACF,CACA,6BACE,qBACE,eAAgB,CAChB,gCACF,CACF,CACA,6BACE,sBACE,eAAgB,CAChB,gCACF,CACF,CACA,YACE,mBACF,CACA,gBACE,kDAAoD,CACpD,qDAAuD,CACvD,eAAgB,CAChB,iBAAkB,CAClB,eACF,CACA,mBACE,gDAAkD,CAClD,mDAAqD,CACrD,iBACF,CACA,mBACE,iDAAmD,CACnD,oDAAsD,CACtD,iBACF,CACA,WACE,iBAAmB,CACnB,gBAAkB,CAClB,+BACF,CACA,cACE,aAAc,CACd,UAAW,CACX,sBAAyB,CACzB,cAAe,CACf,eAAgB,CAChB,eAAgB,CAChB,0BAA2B,CAC3B,kCAAmC,CACnC,2BAA4B,CAC5B,0DAA2D,CAC3D,uBAAwB,CACxB,oBAAqB,CACrB,eAAgB,CAChB,qCAAsC,CACtC,oFAAwF,CACxF,4EAAgF,CAChF,oEAAwE,CACxE,wGACF,CACA,uCACE,cACE,uBAAwB,CACxB,eACF,CACF,CACA,yBACE,eACF,CACA,wDACE,cACF,CACA,oBACE,0BAA2B,CAC3B,kCAAmC,CACnC,oBAAqB,CACrB,SAAU,CACV,oDAA0D,CAClD,4CACV,CACA,2CACE,cAAe,CACf,YAAa,CACb,QACF,CACA,qCACE,aAAc,CACd,SACF,CACA,gCACE,+BAAgC,CAChC,SACF,CACA,yCACE,+BAAgC,CAChC,SACF,CACA,qCACE,+BAAgC,CAChC,SACF,CACA,2BACE,+BAAgC,CAChC,SACF,CACA,uBACE,uCAAwC,CACxC,SACF,CACA,0CACE,sBAAyB,CACzB,uBAA0B,CAC1B,yBAA2B,CAC3B,wBAA0B,CAC1B,0BAA2B,CAC3B,sCAAuC,CACvC,mBAAoB,CAGpB,cAAe,CAFf,oBAAqB,CAGrB,8CAA+C,CAC/C,eAAgB,CAChB,qIAA6I,CAC7I,6IAAqJ,CACrJ,qIAA6I,CAC7I,6HAAqI,CACrI,iKACF,CACA,oCACE,sBAAyB,CACzB,uBAA0B,CAC1B,yBAA2B,CAC3B,wBAA0B,CAC1B,0BAA2B,CAC3B,sCAAuC,CACvC,mBAAoB,CAGpB,cAAe,CAFf,oBAAqB,CAGrB,8CAA+C,CAC/C,eAAgB,CAChB,6IAAqJ,CACrJ,qIAA6I,CAC7I,6HAAqI,CACrI,iKACF,CACA,uCACE,0CACE,uBAAwB,CACxB,eACF,CACA,oCACE,uBAAwB,CACxB,eACF,CACF,CACA,+EACE,uCACF,CACA,yEACE,uCACF,CACA,wBACE,aAAc,CACd,UAAW,CACX,iBAAmB,CACnB,eAAgB,CAChB,eAAgB,CAChB,0BAA2B,CAC3B,4BAA6B,CAC7B,mBAAyB,CACzB,+BAAsC,CAAtC,sDAAsC,CAAtC,gCAAsC,CAAtC,mDACF,CACA,8BACE,SACF,CACA,gFACE,eAAgB,CAChB,cACF,CACA,iBACE,yDAAmE,CACnE,oBAAuB,CACvB,iBAAmB,CACnB,wCACF,CACA,6CACE,oBAAuB,CACvB,qBAAwB,CACxB,wBAA0B,CAC1B,uBACF,CACA,uCACE,oBAAuB,CACvB,qBAAwB,CACxB,wBAA0B,CAC1B,uBACF,CACA,iBACE,wDAAiE,CACjE,kBAAoB,CACpB,iBAAkB,CAClB,wCACF,CACA,6CACE,kBAAoB,CACpB,mBAAqB,CACrB,uBAAwB,CACxB,sBACF,CACA,uCACE,kBAAoB,CACpB,mBAAqB,CACrB,uBAAwB,CACxB,sBACF,CACA,sBACE,0DACF,CACA,yBACE,yDACF,CACA,yBACE,wDACF,CACA,oBACE,UAAW,CACX,sDAAgE,CAChE,eACF,CACA,mDACE,cACF,CACA,uCACE,kBAAoB,CACpB,qCACF,CACA,0CACE,kBAAoB,CACpB,qCACF,CACA,oCACE,qDACF,CACA,oCACE,oDACF,CACA,aACE,qQAAwP,CACxP,aAAc,CACd,UAAW,CACX,sCAA0C,CAC1C,cAAe,CACf,eAAgB,CAChB,eAAgB,CAChB,0BAA2B,CAC3B,kCAAmC,CACnC,gFAAmF,CACnF,2BAA4B,CAC5B,uCAAyC,CACzC,yBAA0B,CAC1B,0DAA2D,CAC3D,qCAAsC,CACtC,oFAAwF,CACxF,4EAAgF,CAChF,oEAAwE,CACxE,wGAA8G,CAC9G,uBAAwB,CACxB,oBAAqB,CACrB,eACF,CACA,uCACE,aACE,uBAAwB,CACxB,eACF,CACF,CACA,mBACE,oBAAqB,CACrB,SAAU,CACV,oDAA0D,CAClD,4CACV,CACA,0DACE,oBAAsB,CACtB,qBACF,CACA,sBACE,uCACF,CACA,4BACE,iBAAkB,CAClB,sCACF,CACA,gBACE,kBAAoB,CACpB,qBAAuB,CACvB,kBAAoB,CACpB,iBAAmB,CACnB,wCACF,CACA,gBACE,iBAAmB,CACnB,oBAAsB,CACtB,iBAAkB,CAClB,iBAAkB,CAClB,wCACF,CACA,kCACE,qQACF,CACA,YACE,aAAc,CACd,iBAAkB,CAClB,kBAAmB,CACnB,qBACF,CACA,8BACE,UAAW,CACX,kBACF,CACA,oBACE,mBAAoB,CACpB,cAAe,CACf,gBACF,CACA,sCACE,WAAY,CACZ,mBAAoB,CACpB,aACF,CACA,kBACE,oCAAqC,CACrC,SAAU,CACV,UAAW,CACX,gBAAkB,CAClB,kBAAmB,CACnB,wCAAyC,CACzC,8CAA+C,CAC/C,2BAA4B,CAC5B,uBAA2B,CAC3B,uBAAwB,CACxB,0DAA2D,CAC3D,uBAAwB,CACxB,oBAAqB,CACrB,eAAgB,CAChB,gCAAiC,CACjC,kBAAmB,CACnB,wBACF,CACA,iCACE,mBACF,CACA,8BACE,iBACF,CACA,yBACE,8BAA+B,CACvB,sBACV,CACA,wBACE,oBAAqB,CACrB,SAAU,CACV,oDAA0D,CAClD,4CACV,CACA,0BACE,wBAAyB,CACzB,oBACF,CACA,yCACE,oQACF,CACA,sCACE,4KACF,CACA,+CACE,wBAAyB,CACzB,oBAAqB,CACrB,8PACF,CACA,2BACE,mBAAoB,CACpB,mBAAoB,CACZ,WAAY,CACpB,UACF,CACA,2FACE,cAAe,CACf,UACF,CACA,aACE,kBACF,CACA,+BACE,oLAA2K,CAC3K,SAAU,CACV,kBAAmB,CACnB,yCAA0C,CAC1C,qBAAgC,CAChC,iBAAkB,CAClB,uDAAyD,CACzD,+CACF,CACA,uCACE,+BACE,uBAAwB,CACxB,eACF,CACF,CACA,qCACE,0KACF,CACA,uCACE,wBAAiC,CACjC,uKACF,CACA,gCACE,mBAAoB,CACpB,cACF,CACA,kDACE,mBAAoB,CACpB,aACF,CACA,mBACE,oBAAqB,CACrB,iBACF,CACA,WACE,iBAAkB,CAClB,kBAAsB,CACtB,mBACF,CACA,mDACE,mBAAoB,CACpB,mBAAoB,CACZ,WAAY,CACpB,WACF,CACA,8EACE,0LACF,CACA,YACE,UAAW,CACX,aAAc,CACd,SAAU,CACV,4BAA6B,CAC7B,uBAAwB,CACxB,oBAAqB,CACrB,eACF,CACA,kBACE,SACF,CACA,wCACE,mEAA0E,CAClE,2DACV,CACA,oCACE,2DACF,CACA,8BACE,QACF,CACA,kCACE,UAAW,CACX,WAAY,CACZ,kBAAoB,CACpB,wBAAyB,CACzB,QAAS,CACT,kBAAmB,CACnB,8GAAoH,CACpH,sHAA4H,CAC5H,8GAAoH,CACpH,sGAA4G,CAC5G,0IAAkJ,CAClJ,uBAAwB,CACxB,eACF,CACA,uCACE,kCACE,uBAAwB,CACxB,eACF,CACF,CACA,yCACE,wBACF,CACA,2CACE,UAAW,CACX,YAAc,CACd,iBAAkB,CAClB,cAAe,CACf,sCAAuC,CACvC,wBAAyB,CACzB,kBACF,CACA,8BACE,UAAW,CACX,WAAY,CACZ,wBAAyB,CACzB,QAAS,CACT,kBAAmB,CACnB,sHAA4H,CAC5H,8GAAoH,CACpH,sGAA4G,CAC5G,0IAAkJ,CAClJ,oBAAqB,CACrB,eACF,CACA,uCACE,8BACE,uBAAwB,CACxB,eACF,CACF,CACA,qCACE,wBACF,CACA,8BACE,UAAW,CACX,YAAc,CACd,iBAAkB,CAClB,cAAe,CACf,sCAAuC,CACvC,wBAAyB,CACzB,kBACF,CACA,qBACE,mBACF,CACA,2CACE,0CACF,CACA,uCACE,0CACF,CACA,eACE,iBACF,CACA,gGAGE,8CAAuD,CACvD,kDAA2D,CAC3D,gBACF,CACA,qBACE,iBAAkB,CAClB,KAAM,CACN,MAAO,CACP,SAAU,CACV,WAAY,CACZ,mBAAqB,CACrB,eAAgB,CAChB,gBAAiB,CACjB,sBAAuB,CACvB,kBAAmB,CACnB,mBAAoB,CACpB,+CAAgD,CAChD,4BAA6B,CACrB,oBAAqB,CAC7B,4EAAgF,CAChF,oEAAwE,CACxE,4DAAgE,CAChE,8FACF,CACA,uCACE,qBACE,uBAAwB,CACxB,eACF,CACF,CACA,oEAEE,mBACF,CAIA,0HAEE,iBACF,CACA,wGAEE,iBACF,CACA,kHAEE,iBACF,CACA,8FAEE,iBACF,CACA,8HACE,oBAAqB,CACrB,sBACF,CACA,oMAGE,oBAAqB,CACrB,sBACF,CACA,sGAEE,oBAAqB,CACrB,sBACF,CACA,4BACE,oBAAqB,CACrB,sBACF,CACA,gEACE,wCAA2C,CAC3C,0DACF,CACA,mLAIE,wCAA2C,CAC3C,kEAAsE,CAC9D,0DACV,CACA,sEACE,iBAAkB,CAClB,kBAAoB,CACpB,UAAW,CACX,YAAa,CACb,UAAW,CACX,kCAAmC,CACnC,qCACF,CACA,2MAIE,iBAAkB,CAClB,kBAAoB,CACpB,UAAW,CACX,YAAa,CACb,UAAW,CACX,kCAAmC,CACnC,qCACF,CACA,oDACE,wCAA2C,CAC3C,kEAAsE,CAC9D,0DACV,CACA,6CACE,mBAAsC,CAAtC,0CAAsC,CAAtC,oBAAsC,CAAtC,uCACF,CACA,+BACE,aACF,CACA,qCACE,uCACF,CACA,aACE,iBAAkB,CAClB,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,cAAe,CACnB,yBAA0B,CACtB,sBAAuB,CACnB,mBAAoB,CAC5B,UACF,CACA,iFAGE,iBAAkB,CAClB,kBAAmB,CACf,iBAAkB,CACd,aAAc,CACtB,QAAS,CACT,WACF,CACA,0GAGE,SACF,CACA,kBACE,iBAAkB,CAClB,SACF,CACA,wBACE,SACF,CACA,kBACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,wBAAyB,CACrB,qBAAsB,CAClB,kBAAmB,CAC3B,sBAAyB,CACzB,cAAe,CACf,eAAgB,CAChB,eAAgB,CAChB,0BAA2B,CAC3B,iBAAkB,CAClB,kBAAmB,CACnB,sCAAuC,CACvC,0DAA2D,CAC3D,qCACF,CACA,kHAIE,kBAAoB,CACpB,iBAAkB,CAClB,wCACF,CACA,kHAIE,oBAAuB,CACvB,iBAAmB,CACnB,wCACF,CACA,0DAEE,kBACF,CAQA,iqBAIE,yBAA0B,CAC1B,4BACF,CACA,0IACE,2CAA8C,CAC9C,wBAAyB,CACzB,2BACF,CACA,uHAEE,wBAAyB,CACzB,2BACF,CACA,gBACE,YAAa,CACb,UAAW,CACX,iBAAmB,CACnB,gBAAkB,CAClB,gCACF,CACA,eACE,iBAAkB,CAClB,QAAS,CACT,SAAU,CACV,YAAa,CACb,cAAe,CACf,oBAAuB,CACvB,gBAAkB,CAClB,iBAAmB,CACnB,UAAW,CACX,kCAAmC,CACnC,qCACF,CACA,8HAIE,aACF,CACA,0DACE,8CAA+C,CAC/C,kCAAoC,CACpC,yQAA2P,CAC3P,2BAA4B,CAC5B,wDAA2D,CAC3D,2DACF,CACA,sEACE,8CAA+C,CAC/C,+DAAmE,CAC3D,uDACV,CACA,0EACE,kCAAoC,CACpC,6EACF,CACA,wDACE,8CACF,CACA,4NACE,iRAAmQ,CACnQ,sBAAuB,CACvB,4DAA+D,CAC/D,qEACF,CACA,oEACE,8CAA+C,CAC/C,+DAAmE,CAC3D,uDACV,CACA,sEACE,2BACF,CACA,kEACE,8CACF,CACA,kFACE,2CACF,CACA,8EACE,+DAAmE,CAC3D,uDACV,CACA,sGACE,gCACF,CACA,qDACE,gBACF,CACA,kVAKE,SACF,CACA,kBACE,YAAa,CACb,UAAW,CACX,iBAAmB,CACnB,gBAAkB,CAClB,kCACF,CACA,iBACE,iBAAkB,CAClB,QAAS,CACT,SAAU,CACV,YAAa,CACb,cAAe,CACf,oBAAuB,CACvB,gBAAkB,CAClB,iBAAmB,CACnB,UAAW,CACX,iCAAkC,CAClC,qCACF,CACA,8IAIE,aACF,CACA,8DACE,gDAAiD,CACjD,kCAAoC,CACpC,qUAA4U,CAC5U,2BAA4B,CAC5B,wDAA2D,CAC3D,2DACF,CACA,0EACE,gDAAiD,CACjD,8DAAkE,CAC1D,sDACV,CACA,8EACE,kCAAoC,CACpC,6EACF,CACA,4DACE,gDACF,CACA,oOACE,6UAAoV,CACpV,sBAAuB,CACvB,4DAA+D,CAC/D,qEACF,CACA,wEACE,gDAAiD,CACjD,8DAAkE,CAC1D,sDACV,CACA,0EACE,2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kD,CAClD,wFAAyF,CACzF,2DAA4D,CAC5D,qCAAsC,CACtC,uDAA2D,CAC3D,6CAA8C,CAC9C,mDAAoD,CACpD,iDAAkD,CAClD,oCAAqC,CACrC,oCAAqC,CACrC,0DAA2D,CAC3D,iCAAkC,CAClC,oCAAqC,CACrC,kCAAmC,CACnC,mCAAoC,CACpC,qCAAsC,CACtC,iBAAkB,CAClB,iCAAkC,CAClC,YAAa,CACb,sCAAuC,CACvC,iEAAkE,CAClE,QAAS,CACT,sCAAuC,CACvC,8BAA+B,CAC/B,eAAgB,CAChB,eAAgB,CAChB,sCAAuC,CACvC,2BAA4B,CAC5B,4EAA6E,CAC7E,8CACF,CACA,+BACE,QAAS,CACT,MAAO,CACP,oCACF,CACA,qBACE,mBACF,CACA,qCACE,UAAW,CACX,MACF,CACA,mBACE,iBACF,CACA,mCACE,OAAQ,CACR,SACF,CACA,yBACE,wBACE,mBACF,CACA,wCACE,UAAW,CACX,MACF,CACA,sBACE,iBACF,CACA,sCACE,OAAQ,CACR,SACF,CACF,CACA,yBACE,wBACE,mBACF,CACA,wCACE,UAAW,CACX,MACF,CACA,sBACE,iBACF,CACA,sCACE,OAAQ,CACR,SACF,CACF,CACA,yBACE,wBACE,mBACF,CACA,wCACE,UAAW,CACX,MACF,CACA,sBACE,iBACF,CACA,sCACE,OAAQ,CACR,SACF,CACF,CACA,0BACE,wBACE,mBACF,CACA,wCACE,UAAW,CACX,MACF,CACA,sBACE,iBACF,CACA,sCACE,OAAQ,CACR,SACF,CACF,CACA,0BACE,yBACE,mBACF,CACA,yCACE,UAAW,CACX,MACF,CACA,uBACE,iBACF,CACA,uCACE,OAAQ,CACR,SACF,CACF,CACA,uCACE,QAAS,CACT,WAAY,CACZ,YAAa,CACb,uCACF,CACA,+BACE,oBAAqB,CACrB,kBAAoB,CACpB,qBAAuB,CACvB,UAAW,CACX,YAAa,CACb,mCAAqC,CACrC,wBAA0B,CAC1B,kCACF,CACA,qCACE,aACF,CACA,wCACE,KAAM,CACN,UAAW,CACX,SAAU,CACV,YAAa,CACb,qCACF,CACA,gCACE,oBAAqB,CACrB,kBAAoB,CACpB,qBAAuB,CACvB,UAAW,CACX,iCAAmC,CACnC,cAAe,CACf,oCAAsC,CACtC,sBACF,CACA,sCACE,aACF,CACA,gCACE,gBACF,CACA,0CACE,KAAM,CACN,UAAW,CACX,SAAU,CACV,YAAa,CACb,sCACF,CACA,kCACE,oBAAqB,CACrB,kBAAoB,CACpB,qBAAuB,CACvB,UAAW,CAGX,YAFF,CAIA,mCACE,oBAAqB,CACrB,mBAAqB,CACrB,qBAAuB,CACvB,UAAW,CACX,iCAAmC,CACnC,uBAAyB,CACzB,oCACF,CACA,wCACE,aACF,CACA,mCACE,gBACF,CACA,kBACE,QAAS,CACT,4CAA6C,CAC7C,eAAgB,CAChB,kDAAmD,CACnD,SACF,CACA,eACE,aAAc,CACd,UAAW,CACX,2EAA4E,CAC5E,UAAW,CACX,eAAgB,CAChB,mCAAoC,CACpC,kBAAmB,CACnB,oBAAqB,CACrB,kBAAmB,CACnB,4BAA6B,CAC7B,QAAS,CACT,qDACF,CACA,0CACE,yCAA0C,CAC1C,iDACF,CACA,4CACE,0CAA2C,CAC3C,oBAAqB,CACrB,kDACF,CACA,gDACE,4CAA6C,CAC7C,mBAAoB,CACpB,4BACF,CACA,oBACE,aACF,CACA,iBACE,aAAc,CACd,+EAAgF,CAChF,eAAgB,CAChB,iBAAmB,CACnB,qCAAsC,CACtC,kBACF,CACA,oBACE,aAAc,CACd,2EAA4E,CAC5E,mCACF,CACA,oBACE,2BAA4B,CAC5B,wBAAyB,CACzB,6DAA8D,CAE9D,gCAAiC,CACjC,mCAAoC,CACpC,2DAA4D,CAC5D,gDAAsD,CACtD,oCAAqC,CACrC,oCAAqC,CACrC,yCAA0C,CAC1C,kCACF,CACA,+BAEE,iBAAkB,CAClB,0BAA2B,CAC3B,0BAA2B,CAC3B,mBAAoB,CACpB,qBACF,CACA,yCAEE,iBAAkB,CAClB,kBAAmB,CACf,iBAAkB,CACd,aACV,CACA,kXAYE,SACF,CACA,aACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,cAAe,CACnB,sBAAuB,CACnB,mBAAoB,CAChB,0BACV,CACA,0BACE,UACF,CACA,WACE,qCACF,CACA,qFAEE,2CACF,CACA,qJAGE,yBAA0B,CAC1B,4BACF,CACA,6GAGE,wBAAyB,CACzB,2BACF,CACA,uBACE,sBAAwB,CACxB,qBACF,CACA,wGACE,aACF,CACA,yCACE,cACF,CACA,yEACE,qBAAuB,CACvB,oBACF,CACA,yEACE,oBAAsB,CACtB,mBACF,CACA,oBACE,2BAA4B,CAC5B,4BAA6B,CACzB,yBAA0B,CACtB,qBAAsB,CAC9B,uBAAwB,CACpB,oBAAqB,CACjB,sBAAuB,CAC/B,uBAAwB,CACpB,oBAAqB,CACjB,sBACV,CACA,wDAEE,UACF,CACA,4FAEE,0CACF,CACA,qHAEE,4BAA6B,CAC7B,2BACF,CACA,oFAEE,wBAAyB,CACzB,yBACF,CACA,KACE,4BAA6B,CAC7B,8BAA+B,CAE/B,wCAAyC,CACzC,oDAAqD,CACrD,sDAAuD,CACvD,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,cAAe,CACnB,cAAe,CACf,eAAgB,CAChB,eACF,CACA,UACE,aAAc,CACd,iEAAkE,CAClE,sCAAuC,CACvC,0CAA2C,CAC3C,8BAA+B,CAC/B,oBAAqB,CACrB,eAAgB,CAChB,QAAS,CACT,yGAA+G,CAC/G,iGACF,CACA,uCACE,UACE,uBAAwB,CACxB,eACF,CACF,CACA,gCACE,oCACF,CACA,wBACE,SAAU,CACV,oDAA0D,CAClD,4CACV,CACA,mBACE,uCAAwC,CACxC,mBAAoB,CACpB,cACF,CACA,UACE,iDAAkD,CAClD,iDAAkD,CAClD,mDAAoD,CACpD,0GAA2G,CAC3G,wDAAyD,CACzD,8CAA+C,CAC/C,sGAAuG,CACvG,mFACF,CACA,oBACE,sDAAyD,CACzD,wDAAyD,CACzD,uDAAwD,CACxD,wDACF,CACA,oDACE,iBAAkB,CAClB,uDACF,CACA,0DACE,uCAAwC,CACxC,4BAA6B,CAC7B,wBACF,CACA,8DAEE,0CAA2C,CAC3C,kDAAmD,CACnD,wDACF,CACA,yBACE,mDAAsD,CACtD,wBAAyB,CACzB,yBACF,CACA,WACE,oDAAqD,CACrD,qCAAsC,CACtC,qCACF,CACA,qBACE,+CACF,CACA,8BACE,uCAAwC,CACxC,4BAA6B,CAC7B,wBACF,CACA,uDAEE,2CAA4C,CAC5C,mDACF,CACA,eACE,2BAA4B,CAC5B,wCAAyC,CACzC,6DAA8D,CAC9D,+BACF,CACA,yBACE,eAAgB,CAChB,cAAe,CACf,oEACF,CACA,8DACE,gCACF,CACA,+DAEE,eAAgB,CAChB,+CAAgD,CAChD,gCACF,CACA,wCAEE,kBAAmB,CACf,iBAAkB,CACd,aAAc,CACtB,iBACF,CACA,kDAEE,yBAA0B,CACtB,YAAa,CACjB,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,iBACF,CACA,iEAEE,UACF,CACA,uBACE,YACF,CACA,qBACE,aACF,CACA,QACE,uBAAwB,CACxB,4BAA6B,CAC7B,yDAA2D,CAC3D,8DAAgE,CAChE,iEAAmE,CACnE,6DAA+D,CAC/D,qCAAsC,CACtC,iCAAkC,CAClC,mCAAoC,CACpC,4DAA8D,CAC9D,kEAAoE,CACpE,qCAAsC,CACtC,qCAAsC,CACtC,qCAAsC,CACtC,qCAAsC,CACtC,oRAA2Q,CAC3Q,wEAA0E,CAC1E,yDAA0D,CAC1D,uCAAwC,CACxC,2DAA4D,CAC5D,iBAAkB,CAIlB,kBAAmB,CACf,cAAe,CAOnB,6DACF,CACA,mKAbE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CAGb,wBAAyB,CACrB,qBAAsB,CAClB,kBAAmB,CAC3B,wBAAyB,CACrB,qBAAsB,CAClB,6BAqBV,CAlBA,2JAUE,qBAAsB,CAClB,iBAON,CACA,cACE,4CAA6C,CAC7C,+CAAgD,CAChD,8CAA+C,CAC/C,0CAA2C,CAC3C,kCAAmC,CACnC,oBAAqB,CACrB,kBACF,CACA,wCACE,wCACF,CACA,YACE,yBAA0B,CAC1B,8BAA+B,CAE/B,0CAA2C,CAC3C,sDAAuD,CACvD,4DAA6D,CAC7D,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,2BAA4B,CAC5B,4BAA6B,CACzB,yBAA0B,CACtB,qBAAsB,CAC9B,cAAe,CACf,eAAgB,CAChB,eACF,CACA,wDACE,mCACF,CACA,2BACE,eACF,CACA,aACE,iBAAmB,CACnB,oBAAsB,CACtB,4BACF,CACA,yDAGE,mCACF,CACA,iBACE,4BAA6B,CACzB,eAAgB,CACpB,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,wBAAyB,CACrB,qBAAsB,CAClB,kBACV,CACA,gBACE,6EAA8E,CAC9E,4CAA6C,CAC7C,aAAc,CACd,4BAA6B,CAC7B,4BAA6B,CAC7B,yEAA0E,CAC1E,oDAAqD,CACrD,sDAAuD,CACvD,8CACF,CACA,uCACE,gBACE,uBAAwB,CACxB,eACF,CACF,CACA,sBACE,oBACF,CACA,sBACE,oBAAqB,CACrB,SAAU,CACV,6DAA8D,CACtD,qDACV,CACA,qBACE,oBAAqB,CACrB,WAAY,CACZ,YAAa,CACb,qBAAsB,CACtB,iDAAkD,CAClD,2BAA4B,CAC5B,uBAA2B,CAC3B,oBACF,CACA,mBACE,uCAAyC,CACzC,eACF,CACA,yBACE,kBACE,oBAAqB,CACjB,gBAAiB,CACrB,sBAAuB,CACnB,mBAAoB,CAChB,0BACV,CACA,8BACE,6BAA8B,CAC9B,4BAA6B,CACzB,sBAAuB,CACnB,kBACV,CACA,6CACE,iBACF,CACA,wCACE,iDAAkD,CAClD,gDACF,CACA,qCACE,gBACF,CACA,mCACE,6BAA+B,CAC/B,6BAA+B,CAC/B,sBAAwB,CACxB,4BAA6B,CACzB,eACN,CACA,kCACE,YACF,CACA,6BACE,eAAgB,CAChB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,oBAAsB,CACtB,qBAAuB,CACvB,4BAA8B,CAC9B,sCAAwC,CACxC,kBAAoB,CACpB,gCAAkC,CAC1B,wBAA0B,CAClC,uBAAwB,CACxB,eACF,CACA,+CACE,YACF,CACA,6CACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,SAAU,CACV,kBACF,CACF,CACA,yBACE,kBACE,oBAAqB,CACjB,gBAAiB,CACrB,sBAAuB,CACnB,mBAAoB,CAChB,0BACV,CACA,8BACE,6BAA8B,CAC9B,4BAA6B,CACzB,sBAAuB,CACnB,kBACV,CACA,6CACE,iBACF,CACA,wCACE,iDAAkD,CAClD,gDACF,CACA,qCACE,gBACF,CACA,mCACE,6BAA+B,CAC/B,6BAA+B,CAC/B,sBAAwB,CACxB,4BAA6B,CACzB,eACN,CACA,kCACE,YACF,CACA,6BACE,eAAgB,CAChB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,oBAAsB,CACtB,qBAAuB,CACvB,4BAA8B,CAC9B,sCAAwC,CACxC,kBAAoB,CACpB,gCAAkC,CAC1B,wBAA0B,CAClC,uBAAwB,CACxB,eACF,CACA,+CACE,YACF,CACA,6CACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,SAAU,CACV,kBACF,CACF,CACA,yBACE,kBACE,oBAAqB,CACjB,gBAAiB,CACrB,sBAAuB,CACnB,mBAAoB,CAChB,0BACV,CACA,8BACE,6BAA8B,CAC9B,4BAA6B,CACzB,sBAAuB,CACnB,kBACV,CACA,6CACE,iBACF,CACA,wCACE,iDAAkD,CAClD,gDACF,CACA,qCACE,gBACF,CACA,mCACE,6BAA+B,CAC/B,6BAA+B,CAC/B,sBAAwB,CACxB,4BAA6B,CACzB,eACN,CACA,kCACE,YACF,CACA,6BACE,eAAgB,CAChB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,oBAAsB,CACtB,qBAAuB,CACvB,4BAA8B,CAC9B,sCAAwC,CACxC,kBAAoB,CACpB,gCAAkC,CAC1B,wBAA0B,CAClC,uBAAwB,CACxB,eACF,CACA,+CACE,YACF,CACA,6CACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,SAAU,CACV,kBACF,CACF,CACA,0BACE,kBACE,oBAAqB,CACjB,gBAAiB,CACrB,sBAAuB,CACnB,mBAAoB,CAChB,0BACV,CACA,8BACE,6BAA8B,CAC9B,4BAA6B,CACzB,sBAAuB,CACnB,kBACV,CACA,6CACE,iBACF,CACA,wCACE,iDAAkD,CAClD,gDACF,CACA,qCACE,gBACF,CACA,mCACE,6BAA+B,CAC/B,6BAA+B,CAC/B,sBAAwB,CACxB,4BAA6B,CACzB,eACN,CACA,kCACE,YACF,CACA,6BACE,eAAgB,CAChB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,oBAAsB,CACtB,qBAAuB,CACvB,4BAA8B,CAC9B,sCAAwC,CACxC,kBAAoB,CACpB,gCAAkC,CAC1B,wBAA0B,CAClC,uBAAwB,CACxB,eACF,CACA,+CACE,YACF,CACA,6CACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,SAAU,CACV,kBACF,CACF,CACA,0BACE,mBACE,oBAAqB,CACjB,gBAAiB,CACrB,sBAAuB,CACnB,mBAAoB,CAChB,0BACV,CACA,+BACE,6BAA8B,CAC9B,4BAA6B,CACzB,sBAAuB,CACnB,kBACV,CACA,8CACE,iBACF,CACA,yCACE,iDAAkD,CAClD,gDACF,CACA,sCACE,gBACF,CACA,oCACE,6BAA+B,CAC/B,6BAA+B,CAC/B,sBAAwB,CACxB,4BAA6B,CACzB,eACN,CACA,mCACE,YACF,CACA,8BACE,eAAgB,CAChB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,oBAAsB,CACtB,qBAAuB,CACvB,4BAA8B,CAC9B,sCAAwC,CACxC,kBAAoB,CACpB,gCAAkC,CAC1B,wBAA0B,CAClC,uBAAwB,CACxB,eACF,CACA,gDACE,YACF,CACA,8CACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,SAAU,CACV,kBACF,CACF,CACA,eACE,oBAAqB,CACjB,gBAAiB,CACrB,sBAAuB,CACnB,mBAAoB,CAChB,0BACV,CACA,2BACE,6BAA8B,CAC9B,4BAA6B,CACzB,sBAAuB,CACnB,kBACV,CACA,0CACE,iBACF,CACA,qCACE,iDAAkD,CAClD,gDACF,CACA,kCACE,gBACF,CACA,gCACE,6BAA+B,CAC/B,6BAA+B,CAC/B,sBAAwB,CACxB,4BAA6B,CACzB,eACN,CACA,+BACE,YACF,CACA,0BACE,eAAgB,CAChB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,oBAAsB,CACtB,qBAAuB,CACvB,4BAA8B,CAC9B,sCAAwC,CACxC,kBAAoB,CACpB,gCAAkC,CAC1B,wBAA0B,CAClC,uBAAwB,CACxB,eACF,CACA,4CACE,YACF,CACA,0CACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,SAAU,CACV,kBACF,CACA,yCAEE,sCAA4C,CAC5C,4CAAkD,CAClD,+CAAqD,CACrD,6BAA8B,CAC9B,4BAA6B,CAC7B,kCAAmC,CACnC,oDAEF,CACA,mFAFE,uRAIF,CACA,MACE,uBAAwB,CACxB,uBAAwB,CACxB,+BAAgC,CAGhC,6CAA8C,CAC9C,yDAA0D,CAC1D,+CAAgD,CAEhD,oFAAuF,CACvF,8BAA+B,CAC/B,4BAA6B,CAC7B,oDAAsD,CAItD,8BAA+B,CAC/B,kCAAmC,CACnC,8BAA+B,CAC/B,iBAAkB,CAClB,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,2BAA4B,CAC5B,4BAA6B,CACzB,yBAA0B,CACtB,qBAAsB,CAC9B,WAAY,CACZ,4BAA6B,CAC7B,0BAA2B,CAC3B,oBAAqB,CACrB,kCAAmC,CACnC,0BAA2B,CAC3B,oEAAqE,CACrE,0CACF,CACA,SACE,cAAe,CACf,aACF,CACA,kBACE,kBAAmB,CACnB,qBACF,CACA,8BACE,kBAAmB,CACnB,yDAA0D,CAC1D,0DACF,CACA,6BACE,qBAAsB,CACtB,6DAA8D,CAC9D,4DACF,CACA,8DAEE,YACF,CACA,WACE,kBAAmB,CACf,iBAAkB,CACd,aAAc,CACtB,uDAAwD,CACxD,0BACF,CACA,YACE,2CAA4C,CAC5C,gCACF,CACA,eACE,mDAAsD,CAEtD,mCACF,CACA,qCAHE,eAKF,CACA,sBACE,mCACF,CACA,aACE,iEAAkE,CAClE,eAAgB,CAChB,8BAA+B,CAC/B,sCAAuC,CACvC,2EACF,CACA,yBACE,uFACF,CACA,aACE,iEAAkE,CAClE,8BAA+B,CAC/B,sCAAuC,CACvC,wEACF,CACA,wBACE,uFACF,CACA,kBACE,oDAAuD,CACvD,mDAAsD,CACtD,mDAAsD,CACtD,eACF,CACA,mCACE,kCAAmC,CACnC,qCACF,CACA,mBACE,oDAAuD,CACvD,mDACF,CACA,kBACE,iBAAkB,CAClB,KAAM,CACN,OAAQ,CACR,QAAS,CACT,MAAO,CACP,0CAA2C,CAC3C,gDACF,CACA,yCAGE,UACF,CACA,wBAEE,yDAA0D,CAC1D,0DACF,CACA,2BAEE,6DAA8D,CAC9D,4DACF,CACA,kBACE,yCACF,CACA,yBACE,YACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,6BAA8B,CAC9B,4BAA6B,CACzB,sBAAuB,CACnB,kBACV,CACA,kBACE,kBAAmB,CACf,eAAgB,CACZ,WAAY,CACpB,eACF,CACA,wBACE,aAAc,CACd,aACF,CACA,mCACE,yBAA0B,CAC1B,4BACF,CACA,iGAEE,yBACF,CACA,oGAEE,4BACF,CACA,oCACE,wBAAyB,CACzB,2BACF,CACA,mGAEE,wBACF,CACA,sGAEE,2BACF,CACF,CACA,WACE,yCAA0C,CAC1C,mCAAoC,CACpC,yKAA8K,CAC9K,kDAAmD,CACnD,kDAAmD,CACnD,oDAAqD,CACrD,yFAA4F,CAC5F,oCAAqC,CACrC,iCAAkC,CAClC,6CAA8C,CAC9C,4CAA6C,CAC7C,8SAAwS,CACxS,qCAAsC,CACtC,iDAAkD,CAClD,6DAA8D,CAC9D,qTAA+S,CAC/S,6CAA8C,CAC9C,uEAA2E,CAC3E,qCAAsC,CACtC,kCAAmC,CACnC,2DAA4D,CAC5D,oDACF,CACA,kBACE,iBAAkB,CAClB,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,wBAAyB,CACrB,qBAAsB,CAClB,kBAAmB,CAC3B,UAAW,CACX,2EAA4E,CAC5E,cAAe,CACf,mCAAoC,CACpC,eAAgB,CAChB,2CAA4C,CAC5C,QAAS,CACT,eAAgB,CAChB,oBAAqB,CACrB,iDAAkD,CAClD,yCACF,CACA,uCACE,kBACE,uBAAwB,CACxB,eACF,CACF,CACA,kCACE,sCAAuC,CACvC,8CAA+C,CAC/C,uGAA0G,CAClG,+FACV,CACA,wCACE,oDAAqD,CACrD,wDAAyD,CACjD,gDACV,CACA,wBACE,mBAAoB,CAChB,aAAc,CAClB,wCAAyC,CACzC,yCAA0C,CAC1C,gBAAiB,CACjB,UAAW,CACX,6CAA8C,CAC9C,2BAA4B,CAC5B,kDAAmD,CACnD,0DAA2D,CAC3D,kDACF,CACA,uCACE,wBACE,uBAAwB,CACxB,eACF,CACF,CACA,wBACE,SACF,CACA,wBACE,SAAU,CACV,uDAAwD,CACxD,SAAU,CACV,2DAA4D,CACpD,mDACV,CACA,kBACE,eACF,CACA,gBACE,+BAAgC,CAChC,uCAAwC,CACxC,8EACF,CACA,8BACE,wDAAyD,CACzD,yDACF,CACA,gDACE,8DAA+D,CAC/D,+DACF,CACA,oCACE,YACF,CACA,6BACE,4DAA6D,CAC7D,2DACF,CACA,yDACE,kEAAmE,CACnE,iEACF,CACA,iDACE,4DAA6D,CAC7D,2DACF,CACA,gBACE,6EACF,CACA,qCACE,cACF,CACA,iCACE,cAAe,CACf,aAAc,CACd,eACF,CACA,6CACE,YACF,CACA,4CACE,eACF,CACA,gHACE,eACF,CACA,6CACE,8SAAwS,CACxS,qTACF,CACA,YACE,2BAA4B,CAC5B,2BAA4B,CAC5B,kCAAmC,CAGnC,uDAAwD,CACxD,qCAAsC,CACtC,2DAA4D,CAC5D,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,cAAe,CACnB,qEAAsE,CACtE,gDAAiD,CACjD,wCAAyC,CACzC,eAAgB,CAChB,wCAAyC,CACzC,gDACF,CACA,kCACE,gDACF,CACA,yCACE,UAAW,CACX,iDAAkD,CAClD,wCAAyC,CACzC,wCACF,CACA,wBACE,4C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D,4CACF,CACA,uCACE,cACE,uBAAwB,CACxB,eACF,CACF,CACA,sBACE,qKAAqM,CACrM,mEACF,CACA,4BACE,gBACF,CACA,0CACE,UACF,CACA,uBACE,yDAA0D,CAClD,iDACV,CACA,uCACE,uBACE,sBAAuB,CACf,cACV,CACF,CACA,YACE,0CAA2C,CAC3C,oCAAqC,CACrC,mDAAoD,CACpD,mDAAoD,CACpD,qDAAsD,CACtD,mCAAoC,CACpC,qCAAsC,CACtC,sDAAuD,CACvD,2DAA4D,CAC5D,qDAAsD,CACtD,wDAAyD,CACzD,uDAAwD,CACxD,wDAAyD,CACzD,6CAA8C,CAC9C,iCAAkC,CAClC,iCAAkC,CAClC,2CAA4C,CAC5C,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,2BAA4B,CAC5B,4BAA6B,CACzB,yBAA0B,CACtB,qBAAsB,CAC9B,cAAe,CACf,eAAgB,CAChB,gDACF,CACA,qBACE,oBAAqB,CACrB,qBACF,CACA,6CACE,kCAAoC,CACpC,yBACF,CACA,wBACE,UAAW,CACX,uCAAwC,CACxC,kBACF,CACA,4DACE,SAAU,CACV,6CAA8C,CAC9C,oBAAqB,CACrB,qDACF,CACA,+BACE,8CAA+C,CAC/C,sDACF,CACA,iBACE,iBAAkB,CAClB,aAAc,CACd,+EAAgF,CAChF,gCAAiC,CACjC,oBAAqB,CACrB,wCAAyC,CACzC,gFACF,CACA,6BACE,8BAA+B,CAC/B,+BACF,CACA,4BACE,kCAAmC,CACnC,iCACF,CACA,oDACE,yCAA0C,CAC1C,mBAAoB,CACpB,iDACF,CACA,wBACE,SAAU,CACV,uCAAwC,CACxC,+CAAgD,CAChD,qDACF,CACA,kCACE,kBACF,CACA,yCACE,qDAAwD,CACxD,kDACF,CACA,uBACE,6BAA8B,CAC9B,4BAA6B,CACzB,sBAAuB,CACnB,kBACV,CACA,qEACE,4DAA6D,CAC7D,yBACF,CACA,qEACE,0DAA2D,CAC3D,2BACF,CACA,+CACE,YACF,CACA,yDACE,kDAAmD,CACnD,mBACF,CACA,gEACE,sDAAyD,CACzD,mDACF,CACA,yBACE,0BACE,6BAA8B,CAC9B,4BAA6B,CACzB,sBAAuB,CACnB,kBACV,CACA,wEACE,4DAA6D,CAC7D,yBACF,CACA,wEACE,0DAA2D,CAC3D,2BACF,CACA,kDACE,YACF,CACA,4DACE,kDAAmD,CACnD,mBACF,CACA,mEACE,sDAAyD,CACzD,mDACF,CACF,CACA,yBACE,0BACE,6BAA8B,CAC9B,4BAA6B,CACzB,sBAAuB,CACnB,kBACV,CACA,wEACE,4DAA6D,CAC7D,yBACF,CACA,wEACE,0DAA2D,CAC3D,2BACF,CACA,kDACE,YACF,CACA,4DACE,kDAAmD,CACnD,mBACF,CACA,mEACE,sDAAyD,CACzD,mDACF,CACF,CACA,yBACE,0BACE,6BAA8B,CAC9B,4BAA6B,CACzB,sBAAuB,CACnB,kBACV,CACA,wEACE,4DAA6D,CAC7D,yBACF,CACA,wEACE,0DAA2D,CAC3D,2BACF,CACA,kDACE,YACF,CACA,4DACE,kDAAmD,CACnD,mBACF,CACA,mEACE,sDAAyD,CACzD,mDACF,CACF,CACA,0BACE,0BACE,6BAA8B,CAC9B,4BAA6B,CACzB,sBAAuB,CACnB,kBACV,CACA,wEACE,4DAA6D,CAC7D,yBACF,CACA,wEACE,0DAA2D,CAC3D,2BACF,CACA,kDACE,YACF,CACA,4DACE,kDAAmD,CACnD,mBACF,CACA,mEACE,sDAAyD,CACzD,mDACF,CACF,CACA,0BACE,2BACE,6BAA8B,CAC9B,4BAA6B,CACzB,sBAAuB,CACnB,kBACV,CACA,yEACE,4DAA6D,CAC7D,yBACF,CACA,yEACE,0DAA2D,CAC3D,2BACF,CACA,mDACE,YACF,CACA,6DACE,kDAAmD,CACnD,mBACF,CACA,oEACE,sDAAyD,CACzD,mDACF,CACF,CACA,kBACE,eACF,CACA,mCACE,mBAAmD,CAAnD,qDAAmD,CAAnD,oBAAmD,CAAnD,kBACF,CACA,8CACE,qBACF,CACA,yBACE,qDAAsD,CACtD,8CAA+C,CAC/C,4DAA6D,CAC7D,2DAA4D,CAC5D,+DAAgE,CAChE,4DAA6D,CAC7D,gEAAiE,CACj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C/B,YAAa,CACb,UAAW,CACX,WAAY,CACZ,iBAAkB,CAClB,eAAgB,CAChB,SACF,CACA,cACE,iBAAkB,CAClB,UAAW,CACX,6BAA8B,CAC9B,mBACF,CACA,0BACE,iDAAmD,CACnD,yCAA2C,CAC3C,iCAAmC,CACnC,gEAAoE,CACpE,mCAAsC,CAC9B,2BACV,CACA,uCACE,0BACE,uBAAwB,CACxB,eACF,CACF,CACA,0BACE,sBAAuB,CACf,cACV,CACA,kCACE,6BAA8B,CACtB,qBACV,CACA,yBACE,4CACF,CACA,wCACE,eAAgB,CAChB,eACF,CACA,qCACE,eACF,CACA,uBAIE,wBAAyB,CACrB,qBAAsB,CAClB,kBAAmB,CAC3B,gDACF,CACA,sCARE,mBAAoB,CACpB,mBAAoB,CACpB,YAuBF,CAjBA,eACE,iBAAkB,CAIlB,2BAA4B,CAC5B,4BAA6B,CACzB,yBAA0B,CACtB,qBAAsB,CAC9B,UAAW,CACX,2BAA4B,CAC5B,mBAAoB,CACpB,mCAAoC,CACpC,2BAA4B,CAC5B,sEAAuE,CACvE,2CAA4C,CAC5C,SACF,CACA,gBACE,yBAA0B,CAC1B,qBAAsB,CACtB,yBAA0B,CAC1B,cAAe,CACf,KAAM,CACN,MAAO,CACP,iCAAkC,CAClC,WAAY,CACZ,YAAa,CACb,sCACF,CACA,qBACE,SACF,CACA,qBACE,kCACF,CACA,cACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,mBAAoB,CAChB,aAAc,CAClB,wBAAyB,CACrB,qBAAsB,CAClB,kBAAmB,CAC3B,wBAAyB,CACrB,qBAAsB,CAClB,6BAA8B,CACtC,sCAAuC,CACvC,2FAA4F,CAC5F,0DAA2D,CAC3D,2DACF,CACA,yBACE,6FAAkG,CAClG,+IACF,CACA,aACE,eAAgB,CAChB,6CACF,CACA,YACE,iBAAkB,CAClB,kBAAmB,CACf,iBAAkB,CACd,aAAc,CACtB,+BACF,CACA,cACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,mBAAoB,CAChB,aAAc,CAClB,kBAAmB,CACf,cAAe,CACnB,wBAAyB,CACrB,qBAAsB,CAClB,kBAAmB,CAC3B,oBAAqB,CACjB,iBAAkB,CACd,wBAAyB,CACjC,sEAAyE,CACzE,0CAA2C,CAC3C,wFAAyF,CACzF,8DAA+D,CAC/D,6DACF,CACA,gBACE,2CACF,CACA,yBACE,OACE,yBAA0B,CAC1B,oDACF,CACA,cACE,+BAAgC,CAChC,iBAAkB,CAClB,gBACF,CACA,UACE,sBACF,CACF,CACA,yBACE,oBAEE,sBACF,CACF,CACA,0BACE,UACE,uBACF,CACF,CACA,kBACE,WAAY,CACZ,cAAe,CACf,WAAY,CACZ,QACF,CACA,iCACE,WAAY,CACZ,QAAS,CACT,eACF,CACA,gEAEE,eACF,CACA,8BACE,eACF,CACA,4BACE,0BACE,WAAY,CACZ,cAAe,CACf,WAAY,CACZ,QACF,CACA,yCACE,WAAY,CACZ,QAAS,CACT,eACF,CACA,gFAEE,eACF,CACA,sCACE,eACF,CACF,CACA,4BACE,0BACE,WAAY,CACZ,cAAe,CACf,WAAY,CACZ,QACF,CACA,yCACE,WAAY,CACZ,QAAS,CACT,eACF,CACA,gFAEE,eACF,CACA,sCACE,eACF,CACF,CACA,4BACE,0BACE,WAAY,CACZ,cAAe,CACf,WAAY,CACZ,QACF,CACA,yCACE,WAAY,CACZ,QAAS,CACT,eACF,CACA,gFAEE,eACF,CACA,sCACE,eACF,CACF,CACA,6BACE,0BACE,WAAY,CACZ,cAAe,CACf,WAAY,CACZ,QACF,CACA,yCACE,WAAY,CACZ,QAAS,CACT,eACF,CACA,gFAEE,eACF,CACA,sCACE,eACF,CACF,CACA,6BACE,2BACE,WAAY,CACZ,cAAe,CACf,WAAY,CACZ,QACF,CACA,0CACE,WAAY,CACZ,QAAS,CACT,eACF,CACA,kFAEE,eACF,CACA,uCACE,eACF,CACF,CACA,SACE,wBAAyB,CACzB,4BAA6B,CAC7B,6BAA8B,CAC9B,8BAA+B,CAE/B,+BAAgC,CAChC,oCAAqC,CACrC,wCAAyC,CACzC,kDAAmD,CACnD,wBAAyB,CACzB,+BAAgC,CAChC,gCAAiC,CACjC,gCAAiC,CACjC,aAAc,CACd,+BAAgC,CAChC,qCAAsC,CACtC,iBAAkB,CAClB,eAAgB,CAChB,eAAgB,CAChB,eAAgB,CAChB,gBAAiB,CACjB,oBAAqB,CACrB,gBAAiB,CACjB,mBAAoB,CACpB,qBAAsB,CACtB,iBAAkB,CAClB,kBAAmB,CACnB,mBAAoB,CACpB,eAAgB,CAChB,qCAAsC,CACtC,oBAAqB,CACrB,SACF,CACA,cACE,iCACF,CACA,wBACE,aAAc,CACd,mCAAoC,CACpC,qCACF,CACA,+BACE,iBAAkB,CAClB,UAAW,CACX,wBAAyB,CACzB,kBACF,CACA,2FACE,8CACF,CACA,yGACE,QAAS,CACT,yDAAwF,CAAxF,qBAAwF,CAAxF,0DAAwF,CAAxF,+CAAwF,CACxF,qCACF,CAEA,6FACE,4CAA+C,CAC/C,oCAAqC,CACrC,oCACF,CACA,2GACE,UAAW,CACX,mBAAkI,CAAlI,2DAAkI,CAAlI,iDAAkI,CAAlI,wDAAkI,CAClI,uCACF,CAEA,iGACE,2CACF,CACA,+GACE,WAAY,CACZ,yDAAwF,CAAxF,kDAAwF,CAAxF,0DAAwF,CAAxF,kBAAwF,CACxF,wCACF,CAEA,8FACE,6CAAgD,CAChD,oCAAqC,CACrC,oCACF,CACA,4GACE,SAAU,CACV,gDAAkI,CAAlI,2DAAkI,CAAlI,oBAAkI,CAAlI,wDAAkI,CAClI,sCACF,CAEA,eACE,qCAAsC,CACtC,+DAAgE,CAChE,6BAA8B,CAC9B,iBAAkB,CAClB,qCAAsC,CACtC,6CACF,CACA,SACE,wBAAyB,CACzB,4BAA6B,CAC7B,+BAAgC,CAChC,iCAAkC,CAClC,gDAAiD,CACjD,4DAA6D,CAC7D,qDAAsD,CACtD,0FAA2F,CAC3F,sDAA0D,CAC1D,kCAAmC,CACnC,oCAAqC,CACrC,kCAAmC,CACnC,iCAAkC,CAClC,6CAA8C,CAC9C,gCAAiC,CACjC,gCAAiC,CACjC,4CAA6C,CAC7C,6BAA8B,CAC9B,gCAAiC,CACjC,wDAAyD,CACzD,gCAAiC,CACjC,aAAc,CACd,qCAAsC,CACtC,qCAAsC,CACtC,iBAAkB,CAClB,eAAgB,CAChB,eAAgB,CAChB,eAAgB,CAChB,gBAAiB,CACjB,oBAAqB,CACrB,gBAAiB,CACjB,mBAAoB,CACpB,qBAAsB,CACtB,iBAAkB,CAClB,kBAAmB,CACnB,mBAAoB,CACpB,eAAgB,CAChB,qCAAsC,CACtC,oBAAqB,CACrB,qCAAsC,CACtC,2BAA4B,CAC5B,0EAA2E,CAC3E,6CACF,CACA,wBACE,aAAc,CACd,mCAAoC,CACpC,qCACF,CACA,6DACE,iBAAkB,CAClB,aAAc,CACd,UAAW,CAGX,0BACF,CACA,2FACE,+EACF,CACA,gNACE,yDAAwF,CAAxF,qBAAwF,CAAxF,0DAAwF,CAAxF,+CACF,CACA,yGACE,QAAS,CACT,+CACF,CACA,uGACE,qCAAsC,CACtC,qCACF,CAEA,6FACE,6EAAkF,CAClF,oCAAqC,CACrC,oCACF,CACA,oNACE,mBAAkI,CAAlI,2DAAkI,CAAlI,iDAAkI,CAAlI,wDACF,CACA,2GACE,MAAO,CACP,iDACF,CACA,yGACE,mCAAoC,CACpC,uCACF,CAEA,iGACE,4EACF,CACA,4NACE,yDAAwF,CAAxF,kDAAwF,CAAxF,0DAAwF,CAAxF,kBACF,CACA,+GACE,KAAM,CACN,kDACF,CACA,6GACE,kCAAmC,CACnC,wCACF,CACA,iHACE,iBAAkB,CAClB,KAAM,CACN,QAAS,CACT,aAAc,CACd,mCAAoC,CACpC,oDAAuD,CACvD,UAAW,CACX,8EACF,CAEA,8FACE,8EAAmF,CACnF,oCAAqC,CACrC,oCACF,CACA,sNACE,gDAAkI,CAAlI,2DAAkI,CAAlI,oBAAkI,CAAlI,wDACF,CACA,4GACE,OAAQ,CACR,gDACF,CACA,0GACE,oCAAqC,CACrC,sCACF,CAEA,gBACE,6EAA8E,CAC9E,eAAgB,CAChB,4CAA6C,CAC7C,oCAAqC,CACrC,4CAA6C,CAC7C,iFAAkF,CAClF,4DAA6D,CAC7D,6DACF,CACA,sBACE,YACF,CACA,cACE,yEAA0E,CAC1E,kCACF,CACA,UACE,iBACF,CACA,wBACE,sBAAuB,CACnB,kBACN,CACA,gBACE,iBAAkB,CAClB,UAAW,CACX,eACF,CACA,sBACE,aAAc,CACd,UAAW,CACX,UACF,CACA,eACE,iBAAkB,CAClB,YAAa,CACb,UAAW,CACX,UAAW,CACX,kBAAmB,CACnB,kCAAmC,CACnC,0BAA2B,CAC3B,oDAAsD,CACtD,4CAA8C,CAC9C,oCAAsC,CACtC,sEACF,CACA,uCACE,eACE,uBAAwB,CACxB,eACF,CACF,CACA,8DAGE,aACF,CACA,wEAEE,kCAAmC,CAC3B,0BACV,CACA,wEAEE,mCAAoC,CAC5B,2BACV,CACA,8BACE,SAAU,CACV,mCAAoC,CACpC,2BAA4B,CAC5B,sBAAuB,CACf,cACV,CACA,iJAGE,SAAU,CACV,SACF,CACA,oFAEE,SAAU,CACV,SAAU,CACV,iCAAmC,CACnC,yBACF,CACA,uCACE,oFAEE,uBAAwB,CACxB,eACF,CACF,CACA,8CAEE,iBAAkB,CAClB,KAAM,CACN,QAAS,CACT,SAAU,CACV,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,wBAAyB,CACrB,qBAAsB,CAClB,kBAAmB,CAC3B,uBAAwB,CACpB,oBAAqB,CACjB,sBAAuB,CAC/B,SAAU,CACV,SAAU,CACV,UAAW,CACX,iBAAkB,CAClB,eAAgB,CAChB,QAAS,CACT,UAAY,CACZ,oCAAsC,CACtC,4BACF,CACA,uCACE,8CAEE,uBAAwB,CACxB,eACF,CACF,CACA,oHAGE,UAAW,CACX,oBAAqB,CACrB,SAAU,CACV,UACF,CACA,uBACE,MACF,CACA,uBACE,OACF,CACA,wDAEE,oBAAqB,CACrB,UAAW,CACX,WAAY,CACZ,2BAA4B,CAC5B,uBAAwB,CACxB,yBACF,CASA,4BACE,+QACF,CACA,4BACE,gRACF,CACA,qBACE,iBAAkB,CAClB,OAAQ,CACR,QAAS,CACT,MAAO,CACP,SAAU,CACV,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,uBAAwB,CACpB,oBAAqB,CACjB,sBAAuB,CAC/B,SAAU,CACV,gBAAiB,CACjB,kBAAmB,CACnB,eACF,CACA,sCACE,8BAA+B,CACvB,sBAAuB,CAC/B,kBAAmB,CACf,iBAAkB,CACd,aAAc,CACtB,UAAW,CACX,UAAW,CACX,SAAU,CACV,gBAAiB,CACjB,eAAgB,CAChB,kBAAmB,CACnB,cAAe,CACf,qBAAsB,CACtB,2BAA4B,CAC5B,QAAS,CACT,iCAAkC,CAClC,oCAAqC,CACrC,UAAY,CACZ,mCAAqC,CACrC,2BACF,CACA,uCACE,sCACE,uBAAwB,CACxB,eACF,CACF,CACA,6BACE,SACF,CACA,kBACE,iBAAkB,CAClB,SAAU,CACV,cAAe,CACf,QAAS,CACT,mBAAoB,CACpB,sBAAuB,CACvB,UAAW,CACX,iBACF,CACA,sFAEE,uCAAwC,CAChC,+BACV,CACA,qDACE,qBACF,CACA,iCACE,UACF,CACA,0OAGE,uCAAwC,CAChC,+BACV,CACA,yIACE,qBACF,CACA,iGACE,UACF,CACA,8BAEE,oBAAqB,CACrB,6BAA8B,CAC9B,+BAAgC,CAChC,+CAAgD,CAChD,iBAAkB,CAClB,oGAAqG,CAC7F,4FACV,CACA,kCACE,GACE,+BAAkD,CAC1C,uBACV,CACF,CACA,0BACE,GACE,+BAAkD,CAC1C,uBACV,CACF,CACA,gBACE,uBAAwB,CACxB,wBAAyB,CACzB,oCAAqC,CACrC,gCAAiC,CACjC,kCAAmC,CACnC,0CAA2C,CAE3C,2CAA+B,CAA/B,8BACF,CACA,mBACE,uBAAwB,CACxB,wBAAyB,CACzB,+BACF,CACA,gCACE,GACE,0BAA2B,CACnB,kBACV,CACA,IACE,SAAU,CACV,sBAAuB,CACf,cACV,CACF,CACA,wBACE,GACE,0BAA2B,CACnB,kBACV,CACA,IACE,SAAU,CACV,sBAAuB,CACf,cACV,CACF,CACA,cACE,uBAAwB,CACxB,wBAAyB,CACzB,oCAAqC,CACrC,kCAAmC,CACnC,wCAAyC,CACzC,6BAA8B,CAC9B,SACF,CACA,iBACE,uBAAwB,CACxB,wBACF,CACA,uCACE,8BAEE,iCACF,CACF,CACA,kFACE,0BAA2B,CAC3B,0BAA2B,CAC3B,0BAA2B,CAC3B,6BAA8B,CAC9B,6BAA8B,CAC9B,yCAA0C,CAC1C,mCAAoC,CACpC,kDAAmD,CACnD,8DAA+D,CAC/D,8DAAkE,CAClE,oDAAqD,CACrD,oCACF,CACA,4BACE,cACE,cAAe,CACf,QAAS,CACT,kCAAmC,CACnC,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,2BAA4B,CAC5B,4BAA6B,CACzB,yBAA0B,CACtB,qBAAsB,CAC9B,cAAe,CACf,+BAAgC,CAChC,iBAAkB,CAClB,uCAAwC,CACxC,2BAA4B,CAC5B,SAAU,CACV,iDAAkD,CAClD,yCACF,CACF,CACA,gEACE,cACE,uBAAwB,CACxB,eACF,CACF,CACA,4BACE,8BACE,KAAM,CACN,MAAO,CACP,+BAAgC,CAChC,oFAAqF,CACrF,mCAAoC,CAC5B,2BACV,CACA,4BACE,KAAM,CACN,OAAQ,CACR,+BAAgC,CAChC,mFAAoF,CACpF,kCAAmC,CAC3B,0BACV,CACA,4BACE,KAAM,CAKN,qFAAsF,CACtF,mCAAoC,CAC5B,2BACV,CACA,2DARE,OAAQ,CACR,MAAO,CACP,iCAAkC,CAClC,eAaF,CARA,+BAKE,kFAAmF,CACnF,kCAAmC,CAC3B,0BACV,CACA,sDACE,sBAAuB,CACf,cACV,CACA,8DACE,kBACF,CACF,CACA,yBACE,cACE,0BAA2B,CAC3B,6BAA8B,CAC9B,sCACF,CACA,gCACE,YACF,CACA,8BACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,SAAU,CACV,kBAAmB,CACnB,sCACF,CACF,CACA,4BACE,cACE,cAAe,CACf,QAAS,CACT,kCAAmC,CACnC,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,2BAA4B,CAC5B,4BAA6B,CACzB,yBAA0B,CACtB,qBAAsB,CAC9B,cAAe,CACf,+BAAgC,CAChC,iBAAkB,CAClB,uCAAwC,CACxC,2BAA4B,CAC5B,SAAU,CACV,iDAAkD,CAClD,yCACF,CACF,CACA,gEACE,cACE,uBAAwB,CACxB,eACF,CACF,CACA,4BACE,8BACE,KAAM,CACN,MAAO,CACP,+BAAgC,CAChC,oFAAqF,CACrF,mCAAoC,CAC5B,2BACV,CACA,4BACE,KAAM,CACN,OAAQ,CACR,+BAAgC,CAChC,mFAAoF,CACpF,kCAAmC,CAC3B,0BACV,CACA,4BACE,KAAM,CAKN,qFAAsF,CACtF,mCAAoC,CAC5B,2BACV,CACA,2DARE,OAAQ,CACR,MAAO,CACP,iCAAkC,CAClC,eAaF,CARA,+BAKE,kFAAmF,CACnF,kCAAmC,CAC3B,0BACV,CACA,sDACE,sBAAuB,CACf,cACV,CACA,8DACE,kBACF,CACF,CACA,yBACE,cACE,0BAA2B,CAC3B,6BAA8B,CAC9B,sCACF,CACA,gCACE,YACF,CACA,8BACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,SAAU,CACV,kBAAmB,CACnB,sCACF,CACF,CACA,4BACE,cACE,cAAe,CACf,QAAS,CACT,kCAAmC,CACnC,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,2BAA4B,CAC5B,4BAA6B,CACzB,yBAA0B,CACtB,qBAAsB,CAC9B,cAAe,CACf,+BAAgC,CAChC,iBAAkB,CAClB,uCAAwC,CACxC,2BAA4B,CAC5B,SAAU,CACV,iDAAkD,CAClD,yCACF,CACF,CACA,gEACE,cACE,uBAAwB,CACxB,eACF,CACF,CACA,4BACE,8BACE,KAAM,CACN,MAAO,CACP,+BAAgC,CAChC,oFAAqF,CACrF,mCAAoC,CAC5B,2BACV,CACA,4BACE,KAAM,CACN,OAAQ,CACR,+BAAgC,CAChC,mFAAoF,CACpF,kCAAmC,CAC3B,0BACV,CACA,4BACE,KAAM,CAKN,qFAAsF,CACtF,mCAAoC,CAC5B,2BACV,CACA,2DARE,OAAQ,CACR,MAAO,CACP,iCAAkC,CAClC,eAaF,CARA,+BAKE,kFAAmF,CACnF,kCAAmC,CAC3B,0BACV,CACA,sDACE,sBAAuB,CACf,cACV,CACA,8DACE,kBACF,CACF,CACA,yBACE,cACE,0BAA2B,CAC3B,6BAA8B,CAC9B,sCACF,CACA,gCACE,YACF,CACA,8BACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,SAAU,CACV,kBAAmB,CACnB,sCACF,CACF,CACA,6BACE,cACE,cAAe,CACf,QAAS,CACT,kCAAmC,CACnC,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,2BAA4B,CAC5B,4BAA6B,CACzB,yBAA0B,CACtB,qBAAsB,CAC9B,cAAe,CACf,+BAAgC,CAChC,iBAAkB,CAClB,uCAAwC,CACxC,2BAA4B,CAC5B,SAAU,CACV,iDAAkD,CAClD,yCACF,CACF,CACA,iEACE,cACE,uBAAwB,CACxB,eACF,CACF,CACA,6BACE,8BACE,KAAM,CACN,MAAO,CACP,+BAAgC,CAChC,oFAAqF,CACrF,mCAAoC,CAC5B,2BACV,CACA,4BACE,KAAM,CACN,OAAQ,CACR,+BAAgC,CAChC,mFAAoF,CACpF,kCAAmC,CAC3B,0BACV,CACA,4BACE,KAAM,CAKN,qFAAsF,CACtF,mCAAoC,CAC5B,2BACV,CACA,2DARE,OAAQ,CACR,MAAO,CACP,iCAAkC,CAClC,eAaF,CARA,+BAKE,kFAAmF,CACnF,kCAAmC,CAC3B,0BACV,CACA,sDACE,sBAAuB,CACf,cACV,CACA,8DACE,kBACF,CACF,CACA,0BACE,cACE,0BAA2B,CAC3B,6BAA8B,CAC9B,sCACF,CACA,gCACE,YACF,CACA,8BACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,SAAU,CACV,kBAAmB,CACnB,sCACF,CACF,CACA,6BACE,eACE,cAAe,CACf,QAAS,CACT,kCAAmC,CACnC,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,2BAA4B,CAC5B,4BAA6B,CACzB,yBAA0B,CACtB,qBAAsB,CAC9B,cAAe,CACf,+BAAgC,CAChC,iBAAkB,CAClB,uCAAwC,CACxC,2BAA4B,CAC5B,SAAU,CACV,iDAAkD,CAClD,yCACF,CACF,CACA,iEACE,eACE,uBAAwB,CACxB,eACF,CACF,CACA,6BACE,+BACE,KAAM,CACN,MAAO,CACP,+BAAgC,CAChC,oFAAqF,CACrF,mCAAoC,CAC5B,2BACV,CACA,6BACE,KAAM,CACN,OAAQ,CACR,+BAAgC,CAChC,mFAAoF,CACpF,kCAAmC,CAC3B,0BACV,CACA,6BACE,KAAM,CAKN,qFAAsF,CACtF,mCAAoC,CAC5B,2BACV,CACA,6DARE,OAAQ,CACR,MAAO,CACP,iCAAkC,CAClC,eAaF,CARA,gCAKE,kFAAmF,CACnF,kCAAmC,CAC3B,0BACV,CACA,wDACE,sBAAuB,CACf,cACV,CACA,iEACE,kBACF,CACF,CACA,0BACE,eACE,0BAA2B,CAC3B,6BAA8B,CAC9B,sCACF,CACA,iCACE,YACF,CACA,+BACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,SAAU,CACV,kBAAmB,CACnB,sCACF,CACF,CACA,WACE,cAAe,CACf,QAAS,CACT,kCAAmC,CACnC,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,2BAA4B,CAC5B,4BAA6B,CACzB,yBAA0B,CACtB,qBAAsB,CAC9B,cAAe,CACf,+BAAgC,CAChC,iBAAkB,CAClB,uCAAwC,CACxC,2BAA4B,CAC5B,SAAU,CACV,iDAAkD,CAClD,yCACF,CACA,uCACE,WACE,uBAAwB,CACxB,eACF,CACF,CACA,2BACE,KAAM,CACN,MAAO,CACP,+BAAgC,CAChC,oFAAqF,CACrF,mCAAoC,CAC5B,2BACV,CACA,yBACE,KAAM,CACN,OAAQ,CACR,+BAAgC,CAChC,mFAAoF,CACpF,kCAAmC,CAC3B,0BACV,CACA,yBACE,KAAM,CAKN,qFAAsF,CACtF,mCAAoC,CAC5B,2BACV,CACA,qDARE,OAAQ,CACR,MAAO,CACP,iCAAkC,CAClC,eAaF,CARA,4BAKE,kFAAmF,CACnF,kCAAmC,CAC3B,0BACV,CACA,gDACE,sBAAuB,CACf,cACV,CACA,qDACE,kBACF,CACA,oBACE,cAAe,CACf,KAAM,CACN,MAAO,CACP,YAAa,CACb,WAAY,CACZ,YAAa,CACb,qBACF,CACA,yBACE,SACF,CACA,yBACE,UACF,CACA,kBACE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CACb,wBAAyB,CACrB,qBAAsB,CAClB,kBAAmB,CAC3B,wBAAyB,CACrB,qBAAsB,CAClB,6BAA8B,CACtC,mEACF,CACA,6BACE,uFAA4F,CAC5F,mDAAsD,CACtD,qDAAwD,CACxD,sDACF,CACA,iBACE,eAAgB,CAChB,iDACF,CACA,gBACE,kBAAmB,CACf,mBAAoB,CAChB,WAAY,CACpB,mEAAoE,CACpE,eACF,CACA,aACE,oBAAqB,CACrB,cAAe,CACf,qBAAsB,CACtB,WAAY,CACZ,6BAA8B,CAC9B,UACF,CACA,wBACE,oBAAqB,CACrB,UACF,CACA,gBACE,eACF,CACA,gBACE,eACF,CACA,gBACE,gBACF,CACA,+BACE,0DAA2D,CACnD,kDACV,CACA,oCACE,IACE,UACF,CACF,CACA,4BACE,IACE,UACF,CACF,CACA,kBACE,+EAAuF,CACvF,uEAA+E,CAC/E,2BAA4B,CAC5B,mBAAoB,CACpB,qDAAsD,CAC9C,6CACV,CACA,oCACE,GACE,6BAA+B,CAC/B,qBACF,CACF,CACA,4BACE,GACE,6BAA+B,CAC/B,qBACF,CACF,CACA,gBACE,aAAc,CACd,UAAW,CACX,UACF,CACA,iBACE,oBAAsB,CACtB,kEACF,CACA,mBACE,oBAAsB,CACtB,mEACF,CACA,iBACE,oBAAsB,CACtB,iEACF,CACA,cACE,oBAAsB,CACtB,kEACF,CACA,iBACE,oBAAsB,CACtB,iEACF,CACA,gBACE,oBAAsB,CACtB,iEACF,CACA,eACE,oBAAsB,CACtB,mEACF,CACA,cACE,oBAAsB,CACtB,gEACF,CACA,cACE,oEAAwE,CACxE,sGAA0G,CAC1G,8FACF,CACA,wCACE,wDAA8D,CAC9D,0FAAgG,CAChG,kFACF,CACA,gBACE,sEAA0E,CAC1E,wGAA4G,CAC5G,gGACF,CACA,4CACE,wDAA8D,CAC9D,0FAAgG,CAChG,kFACF,CACA,cACE,oEAAwE,CACxE,sGAA0G,CAC1G,8FACF,CACA,wCACE,wDAA8D,CAC9D,0FAAgG,CAChG,kFACF,CACA,WACE,iEAAqE,CACrE,mGAAuG,CACvG,2FACF,CACA,kCACE,yDAA+D,CAC/D,2FAAiG,CACjG,mFACF,CACA,cACE,oEAAwE,CACxE,sGAA0G,CAC1G,8FACF,CACA,wCACE,yDAA+D,CAC/D,2FAAiG,CACjG,mFACF,CACA,aACE,mEAAuE,CACvE,qGAAyG,CACzG,6FACF,CACA,sCACE,wDAA8D,CAC9D,0FAAgG,CAChG,kFACF,CACA,YACE,kEAAsE,CACtE,oGAAwG,CACxG,4FACF,CACA,oCACE,0DAAgE,CAChE,4FAAkG,CAClG,oFACF,CACA,WACE,iEAAqE,CACrE,mGAAuG,CACvG,2FACF,CACA,kCACE,uDAA6D,CAC7D,yFAA+F,CAC/F,iFACF,CACA,oBACE,2EAA+E,CAC/E,6GAAiH,CACjH,qGACF,CACA,oDACE,6EAAkF,CAClF,+GAAoH,CACpH,uGACF,CACA,kBACE,SAAU,CACV,sJAA0J,CAClJ,8IACV,CACA,WACE,0BAA2B,CAC3B,0BAA2B,CAC3B,mBAAoB,CACpB,WAAa,CACb,wBAAyB,CACrB,qBAAsB,CAClB,kBAAmB,CAC3B,sFAA0F,CAC1F,8EAAkF,CAClF,2BAA6B,CAC7B,kCAAmC,CACnC,0BACF,CACA,eACE,mBAAoB,CAChB,aAAc,CAClB,SAAU,CACV,UAAW,CACX,iBAAkB,CAClB,4CAA8C,CAC9C,oCACF,CACA,uCACE,eACE,uBAAwB,CACxB,eACF,CACF,CACA,8DACE,sEAA2E,CACnE,8DACV,CACA,OACE,iBAAkB,CAClB,UACF,CACA,cACE,aAAc,CACd,kCAAmC,CACnC,UACF,CACA,SACE,iBAAkB,CAClB,KAAM,CACN,MAAO,CACP,UAAW,CACX,WACF,CACA,WACE,sBACF,CACA,WACE,qBACF,CACA,YACE,wBACF,CACA,YACE,gCACF,CACA,WAEE,KAIF,CACA,yBANE,cAAe,CAEf,OAAQ,CACR,MAAO,CACP,YAQF,CANA,cAGE,QAGF,CACA,YAEE,KAEF,CACA,2BAJE,eAAgB,CAEhB,YAMF,CAJA,eAEE,QAEF,CACA,yBACE,eACE,eAAgB,CAChB,KAAM,CACN,YACF,CACA,kBACE,eAAgB,CAChB,QAAS,CACT,YACF,CACF,CACA,yBACE,eACE,eAAgB,CAChB,KAAM,CACN,YACF,CACA,kBACE,eAAgB,CAChB,QAAS,CACT,YACF,CACF,CACA,yBACE,eACE,eAAgB,CAChB,KAAM,CACN,YACF,CACA,kBACE,eAAgB,CAChB,QAAS,CACT,YACF,CACF,CACA,0BACE,eACE,eAAgB,CAChB,KAAM,CACN,YACF,CACA,kBACE,eAAgB,CAChB,QAAS,CACT,YACF,CACF,CACA,0BACE,gBACE,eAAgB,CAChB,KAAM,CACN,YACF,CACA,mBACE,eAAgB,CAChB,QAAS,CACT,YACF,CACF,CACA,QAIE,6BAA8B,CAE1B,sBAAuB,CACnB,kBAAmB,CAC3B,wBAAyB,CACrB,qBAAsB,CAClB,kBAAmB,CAC3B,2BAEF,CACA,gBAbE,mBAAoB,CACpB,mBAAoB,CACpB,YAAa,CAEb,4BAA6B,CAOzB,kBAeN,CAbA,QAIE,kBAAmB,CACf,iBAAkB,CACd,aAAc,CACtB,2BAA4B,CAExB,yBAA0B,CACtB,qBAAsB,CAC9B,2BAEF,CACA,2EAEE,mBAAqB,CACrB,oBAAsB,CACtB,mBAAqB,CACrB,qBAAuB,CACvB,yBAA2B,CAC3B,4BAAiC,CACjC,4BAA8B,CAC9B,kBACF,CACA,qGAEE,2BACF,CACA,sBACE,iBAAkB,CAClB,KAAM,CACN,OAAQ,CACR,QAAS,CACT,MAAO,CACP,SAAU,CACV,UACF,CACA,eACE,eAAgB,CAChB,sBAAuB,CACvB,kBACF,CACA,IACE,oBAAqB,CACrB,2BAA4B,CACxB,kBAAmB,CACvB,SAAU,CACV,cAAe,CACf,6BAA8B,CAC9B,WACF,CACA,gBACE,iCACF,CACA,WACE,4BACF,CACA,cACE,+BACF,CACA,cACE,+BACF,CACA,mBACE,oCACF,CACA,gBACE,iCACF,CACA,aACE,oBACF,CACA,WACE,qBACF,CACA,YACE,oBACF,CACA,oBACE,+BAAiC,CACjC,4BACF,CACA,kBACE,6BAA+B,CAC/B,0BACF,CACA,iBACE,4BAA8B,CAC9B,yBACF,CACA,kBACE,kCAAoC,CACpC,+BACF,CACA,iBACE,4BAA8B,CAC9B,yBACF,CACA,WACE,mBACF,CACA,YACE,qBACF,CACA,YACE,oBACF,CACA,YACE,qBACF,CACA,aACE,mBACF,CACA,eACE,uBACF,CACA,iBACE,yBACF,CACA,kBACE,0BACF,CACA,iBACE,yBACF,CACA,iBACE,yBACF,CACA,mBACE,2BACF,CACA,oBACE,4BACF,CACA,mBACE,2BACF,CACA,iBACE,yBACF,CACA,mBACE,2BACF,CACA,oBACE,4BACF,CACA,mBACE,2BACF,CACA,UACE,wBACF,CACA,gBACE,8BACF,CACA,SACE,uBACF,CACA,QACE,sBACF,CACA,eACE,6BACF,CACA,SACE,uBACF,CACA,aACE,2BACF,CACA,cACE,4BACF,CACA,QACE,6BAA+B,CAC/B,6BAA+B,CAC/B,sBACF,CACA,eACE,oCAAsC,CACtC,oCAAsC,CACtC,6BACF,CACA,QACE,sBACF,CACA,QACE,yDAAgE,CACxD,iDACV,CACA,WACE,8DAAsE,CAC9D,sDACV,CACA,WACE,yDAA+D,CACvD,iDACV,CACA,aACE,iCAAmC,CAC3B,yBACV,CACA,oBACE,8EACF,CACA,sBACE,gFACF,CACA,oBACE,8EACF,CACA,iBACE,2EACF,CACA,oBACE,8EACF,CACA,mBACE,6EACF,CACA,kBACE,4EACF,CACA,iBACE,2EACF,CACA,iBACE,yBACF,CACA,mBACE,2BACF,CACA,mBACE,2BACF,CACA,gBACE,wBACF,CACA,iBACE,yBACF,CACA,OACE,eACF,CACA,QACE,iBACF,CACA,SACE,kBACF,CACA,UACE,kBACF,CACA,WACE,oBACF,CACA,YACE,qBACF,CACA,SACE,gBACF,CACA,UACE,kBACF,CACA,WACE,mBACF,CACA,OACE,iBACF,CACA,QACE,mBACF,CACA,SACE,oBACF,CACA,kBACE,gDAAmD,CAC3C,wCACV,CACA,oBACE,4CAA8C,CACtC,oCACV,CACA,oBACE,4CAA8C,CACtC,oCACV,CACA,QACE,qFACF,CACA,UACE,kBACF,CACA,YACE,yFACF,CACA,cACE,sBACF,CACA,YACE,2FACF,CACA,cACE,wBACF,CACA,eACE,4FACF,CACA,iBACE,yBACF,CACA,cACE,0FACF,CACA,gBACE,uBACF,CACA,gBACE,qBAAsB,CACtB,2EACF,CACA,kBACE,qBAAsB,CACtB,6EACF,CACA,gBACE,qBAAsB,CACtB,2EACF,CACA,aACE,qBAAsB,CACtB,wEACF,CACA,gBACE,qBAAsB,CACtB,2EACF,CACA,eACE,qBAAsB,CACtB,0EACF,CACA,cACE,qBAAsB,CACtB,yEACF,CACA,aACE,qBAAsB,CACtB,wEACF,CACA,cACE,qBAAsB,CACtB,yEACF,CACA,cACE,qBAAsB,CACtB,yEACF,CACA,uBACE,sDACF,CACA,yBACE,wDACF,CACA,uBACE,sDACF,CACA,oBACE,mDACF,CACA,uBACE,sDACF,CACA,sBACE,qDACF,CACA,qBACE,oDACF,CACA,oBACE,mDACF,CACA,UACE,0BACF,CACA,UACE,0BACF,CACA,UACE,0BACF,CACA,UACE,0BACF,CACA,UACE,0BACF,CACA,mBACE,uBACF,CACA,mBACE,wBACF,CACA,mBACE,uBACF,CACA,mBACE,wBACF,CACA,oBACE,qBACF,CACA,MACE,mBACF,CACA,MACE,mBACF,CACA,MACE,mBACF,CACA,OACE,oBACF,CACA,QACE,oBACF,CACA,QACE,wBACF,CACA,QACE,qBACF,CACA,YACE,yBACF,CACA,MACE,oBACF,CACA,MACE,oBACF,CACA,MACE,oBACF,CACA,OACE,qBACF,CACA,QACE,qBACF,CACA,QACE,yBACF,CACA,QACE,sBACF,CACA,YACE,0BACF,CACA,WACE,4BAA8B,CAC1B,2BAA6B,CACzB,uBACV,CACA,UACE,uCAAyC,CAErC,gCAAkC,CAC9B,4BACV,CACA,uBAJE,sCASF,CALA,aACE,qCAAuC,CAEnC,mCAAqC,CACjC,+BACV,CACA,kBACE,uCAAyC,CAErC,wCAA0C,CACtC,oCACV,CACA,uCAJE,uCASF,CALA,qBACE,qCAAuC,CAEnC,2CAA6C,CACzC,uCACV,CACA,aACE,4BAA8B,CAC1B,6BAA+B,CAC3B,qBACV,CACA,aACE,4BAA8B,CAC1B,6BAA+B,CAC3B,qBACV,CACA,eACE,6BAA+B,CAC3B,uBACN,CACA,eACE,6BAA+B,CAC3B,uBACN,CACA,WACE,4BAA8B,CAC1B,wBACN,CACA,aACE,8BAAgC,CAC5B,0BACN,CACA,mBACE,oCAAsC,CAClC,gCACN,CACA,uBACE,gCAAkC,CAC9B,6BAA+B,CAC3B,oCACV,CACA,qBACE,8BAAgC,CAC5B,2BAA6B,CACzB,kCACV,CACA,wBACE,iCAAmC,CAC/B,8BAAgC,CAC5B,gCACV,CACA,yBACE,kCAAoC,CAChC,+BAAiC,CAC7B,uCACV,CACA,wBACE,kCAAoC,CAChC,sCACN,CACA,wBACE,uCAAyC,CACrC,oCAAsC,CAClC,sCACV,CACA,mBACE,iCAAmC,CAC/B,8BAAgC,CAC5B,gCACV,CACA,iBACE,+BAAiC,CAC7B,4BAA8B,CAC1B,8BACV,CACA,oBACE,kCAAoC,CAChC,+BAAiC,CAC7B,4BACV,CACA,sBACE,oCAAsC,CAClC,iCAAmC,CAC/B,8BACV,CACA,qBACE,mCAAqC,CACjC,gCAAkC,CAC9B,6BACV,CACA,qBACE,kCAAoC,CAChC,kCACN,CACA,mBACE,gCAAkC,CAC9B,gCACN,CACA,sBACE,mCAAqC,CACjC,8BACN,CACA,uBACE,oCAAsC,CAClC,qCACN,CACA,sBACE,uCAAyC,CACrC,oCACN,CACA,uBACE,oCAAsC,CAClC,+BACN,CACA,iBACE,kCAAoC,CAChC,yBACN,CACA,kBACE,mCAAqC,CACjC,+BACN,CACA,gBACE,iCAAmC,CAC/B,6BACN,CACA,mBACE,oCAAsC,CAClC,2BACN,CACA,qBACE,sCAAwC,CACpC,6BACN,CACA,oBACE,qCAAuC,CACnC,4BACN,CACA,aACE,qCAAuC,CACnC,2BAA6B,CACzB,kBACV,CACA,SACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,SACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,SACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,SACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,SACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,SACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,KACE,kBACF,CACA,KACE,uBACF,CACA,KACE,sBACF,CACA,KACE,qBACF,CACA,KACE,uBACF,CACA,KACE,qBACF,CACA,QACE,qBACF,CACA,MACE,wBAA0B,CAC1B,uBACF,CACA,MACE,6BAAgC,CAChC,4BACF,CACA,MACE,4BAA+B,CAC/B,2BACF,CACA,MACE,2BAA6B,CAC7B,0BACF,CACA,MACE,6BAA+B,CAC/B,4BACF,CACA,MACE,2BAA6B,CAC7B,0BACF,CACA,SACE,2BAA6B,CAC7B,0BACF,CACA,MACE,sBAAwB,CACxB,yBACF,CACA,MACE,2BAA8B,CAC9B,8BACF,CACA,MACE,0BAA6B,CAC7B,6BACF,CACA,MACE,yBAA2B,CAC3B,4BACF,CACA,MACE,2BAA6B,CAC7B,8BACF,CACA,MACE,yBAA2B,CAC3B,4BACF,CACA,SACE,yBAA2B,CAC3B,4BACF,CACA,MACE,sBACF,CACA,MACE,2BACF,CACA,MACE,0BACF,CACA,MACE,yBACF,CACA,MACE,2BACF,CACA,MACE,yBACF,CACA,SACE,yBACF,CACA,MACE,wBACF,CACA,MACE,6BACF,CACA,MACE,4BACF,CACA,MACE,2BACF,CACA,MACE,6BACF,CACA,MACE,2BACF,CACA,SACE,2BACF,CACA,MACE,yBACF,CACA,MACE,8BACF,CACA,MACE,6BACF,CACA,MACE,4BACF,CACA,MACE,8BACF,CACA,MACE,4BACF,CACA,SACE,4BACF,CACA,MACE,uBACF,CACA,MACE,4BACF,CACA,MACE,2BACF,CACA,MACE,0BACF,CACA,MACE,4BACF,CACA,MACE,0BACF,CACA,SACE,0BACF,CACA,KACE,mBACF,CACA,KACE,wBACF,CACA,KACE,uBACF,CACA,KACE,sBACF,CACA,KACE,wBACF,CACA,KACE,sBACF,CACA,MACE,yBAA2B,CAC3B,wBACF,CACA,MACE,8BAAiC,CACjC,6BACF,CACA,MACE,6BAAgC,CAChC,4BACF,CACA,MACE,4BAA8B,CAC9B,2BACF,CACA,MACE,8BAAgC,CAChC,6BACF,CACA,MACE,4BAA8B,CAC9B,2BACF,CACA,MACE,uBAAyB,CACzB,0BACF,CACA,MACE,4BAA+B,CAC/B,+BACF,CACA,MACE,2BAA8B,CAC9B,8BACF,CACA,MACE,0BAA4B,CAC5B,6BACF,CACA,MACE,4BAA8B,CAC9B,+BACF,CACA,MACE,0BAA4B,CAC5B,6BACF,CACA,MACE,uBACF,CACA,MACE,4BACF,CACA,MACE,2BACF,CACA,MACE,0BACF,CACA,MACE,4BACF,CACA,MACE,0BACF,CACA,MACE,yBACF,CACA,MACE,8BACF,CACA,MACE,6BACF,CACA,MACE,4BACF,CACA,MACE,8BACF,CACA,MACE,4BACF,CACA,MACE,0BACF,CACA,MACE,+BACF,CACA,MACE,8BACF,CACA,MACE,6BACF,CACA,MACE,+BACF,CACA,MACE,6BACF,CACA,MACE,wBACF,CACA,MACE,6BACF,CACA,MACE,4BACF,CACA,MACE,2BACF,CACA,MACE,6BACF,CACA,MACE,2BACF,CACA,OACE,eACF,CACA,OACE,oBACF,CACA,OACE,mBACF,CACA,OACE,kBACF,CACA,OACE,oBACF,CACA,OACE,kBACF,CACA,WACE,mBACF,CACA,WACE,wBACF,CACA,WACE,uBACF,CACA,WACE,sBACF,CACA,WACE,wBACF,CACA,WACE,sBACF,CACA,cACE,2BAA6B,CAC7B,8BAAgC,CACxB,sBACV,CACA,cACE,gCAAmC,CACnC,mCAAsC,CAC9B,2BACV,CACA,cACE,+BAAkC,CAClC,kCAAqC,CAC7B,0BACV,CACA,cACE,8BAAgC,CAChC,iCAAmC,CAC3B,yBACV,CACA,cACE,gCAAkC,CAClC,mCAAqC,CAC7B,2BACV,CACA,cACE,8BAAgC,CAChC,iCAAmC,CAC3B,yBACV,CACA,gBACE,8CACF,CACA,MACE,0CACF,CACA,MACE,yCACF,CACA,MACE,uCACF,CACA,MACE,yCACF,CACA,MACE,2BACF,CACA,MACE,wBACF,CACA,YACE,2BACF,CACA,YACE,2BACF,CACA,YACE,6BACF,CACA,UACE,yBACF,CACA,WACE,yBACF,CACA,WACE,yBACF,CACA,aACE,yBACF,CACA,SACE,yBACF,CACA,WACE,4BACF,CACA,MACE,uBACF,CACA,OACE,0BACF,CACA,SACE,yBACF,CACA,OACE,uBACF,CACA,YACE,yBACF,CACA,UACE,0BACF,CACA,aACE,2BACF,CACA,sBACE,8BACF,CACA,2BACE,mCACF,CACA,8BACE,sCACF,CACA,gBACE,kCACF,CACA,gBACE,kCACF,CACA,iBACE,mCACF,CACA,WACE,4BACF,CACA,aACE,4BACF,CAEA,YACE,8BAAgC,CAChC,+BACF,CAEA,cACE,mBAAoB,CACpB,kEACF,CACA,gBACE,mBAAoB,CACpB,oEACF,CACA,cACE,mBAAoB,CACpB,kEACF,CACA,WACE,mBAAoB,CACpB,+DACF,CACA,cACE,mBAAoB,CACpB,kEACF,CACA,aACE,mBAAoB,CACpB,iEACF,CACA,YACE,mBAAoB,CACpB,gEACF,CACA,WACE,mBAAoB,CACpB,+DACF,CACA,YACE,mBAAoB,CACpB,gEACF,CACA,YACE,mBAAoB,CACpB,gEACF,CACA,WACE,mBAAoB,CACpB,qEACF,CACA,YACE,mBAAoB,CACpB,yCACF,CACA,eACE,mBAAoB,CACpB,8BACF,CACA,eACE,mBAAoB,CACpB,kCACF,CACA,qBACE,mBAAoB,CACpB,yCACF,CACA,oBACE,mBAAoB,CACpB,wCACF,CACA,oBACE,mBAAoB,CACpB,wCACF,CACA,YACE,mBAAoB,CACpB,uBACF,CACA,iBACE,sBACF,CACA,iBACE,qBACF,CACA,iBACE,sBACF,CACA,kBACE,mBACF,CACA,uBACE,+CACF,CACA,yBACE,iDACF,CACA,uBACE,+CACF,CACA,oBACE,4CACF,CACA,uBACE,+CACF,CACA,sBACE,8CACF,CACA,qBACE,6CACF,CACA,oBACE,4CACF,CAIA,8CACE,qBACF,CAIA,8CACE,sBACF,CAIA,8CACE,qBACF,CAIA,8CACE,sBACF,CAIA,gDACE,mBACF,CAIA,0CACE,sCACF,CAIA,0CACE,qCACF,CAIA,0CACE,sCACF,CACA,wBACE,6BAA8B,CAC9B,oGAAuG,CACvG,4FACF,CACA,0BACE,6BAA8B,CAC9B,sGAAyG,CACzG,8FACF,CACA,wBACE,6BAA8B,CAC9B,oGAAuG,CACvG,4FACF,CACA,qBACE,6BAA8B,CAC9B,iGAAoG,CACpG,yFACF,CACA,wBACE,6BAA8B,CAC9B,oGAAuG,CACvG,4FACF,CACA,uBACE,6BAA8B,CAC9B,mGAAsG,CACtG,2FACF,CACA,sBACE,6BAA8B,CAC9B,kGAAqG,CACrG,0FACF,CACA,qBACE,6BAA8B,CAC9B,iGAAoG,CACpG,yFACF,CACA,gBACE,6BAA8B,CAC9B,yGAA6G,CAC7G,iGACF,CAIA,gEACE,6BACF,CAIA,kEACE,+BACF,CAIA,kEACE,gCACF,CAIA,kEACE,+BACF,CAIA,kEACE,gCACF,CAIA,oEACE,6BACF,CACA,YACE,iBAAkB,CAClB,2EACF,CACA,cACE,iBAAkB,CAClB,6EACF,CACA,YACE,iBAAkB,CAClB,2EACF,CACA,SACE,iBAAkB,CAClB,wEACF,CACA,YACE,iBAAkB,CAClB,2EACF,CACA,WACE,iBAAkB,CAClB,0EACF,CACA,UACE,iBAAkB,CAClB,yEACF,CACA,SACE,iBAAkB,CAClB,wEACF,CACA,UACE,iBAAkB,CAClB,yEACF,CACA,UACE,iBAAkB,CAClB,yEACF,CACA,SACE,iBAAkB,CAClB,2EACF,CACA,gBACE,iBAAkB,CAClB,sCACF,CACA,mBACE,iBAAkB,CAClB,gFACF,CACA,kBACE,iBAAkB,CAClB,+EACF,CACA,eACE,mBACF,CACA,eACE,oBACF,CACA,eACE,mBACF,CACA,eACE,oBACF,CACA,gBACE,iBACF,CACA,mBACE,sDACF,CACA,qBACE,wDACF,CACA,mBACE,sDACF,CACA,gBACE,mDACF,CACA,mBACE,sDACF,CACA,kBACE,qDACF,CACA,iBACE,oDACF,CACA,gBACE,mDACF,CACA,aACE,6CACF,CACA,iBACE,iCAAmC,CACnC,8BAAgC,CAChC,6BAA+B,CAC3B,yBACN,CACA,kBACE,kCAAoC,CACpC,+BAAiC,CACjC,8BAAgC,CAC5B,0BACN,CACA,kBACE,kCAAoC,CACpC,+BAAiC,CACjC,8BAAgC,CAC5B,0BACN,CACA,SACE,6BACF,CACA,SACE,6BACF,CACA,SACE,+CACF,CACA,WACE,yBACF,CACA,WACE,kDACF,CACA,WACE,+CACF,CACA,WACE,kDACF,CACA,WACE,kDACF,CACA,WACE,mDACF,CACA,gBACE,2BACF,CACA,cACE,oDACF,CACA,aACE,wDAA0D,CAC1D,yDACF,CACA,eACE,kCAAoC,CACpC,mCACF,CACA,eACE,2DAA6D,CAC7D,4DACF,CACA,eACE,wDAA0D,CAC1D,yDACF,CACA,eACE,2DAA6D,CAC7D,4DACF,CACA,eACE,2DAA6D,CAC7D,4DACF,CACA,eACE,4DAA8D,CAC9D,6DACF,CACA,oBACE,oCAAsC,CACtC,qCACF,CACA,kBACE,6DAA+D,CAC/D,8DACF,CACA,aACE,yDAA2D,CAC3D,4DACF,CACA,eACE,mCAAqC,CACrC,sCACF,CACA,eACE,4DAA8D,CAC9D,+DACF,CACA,eACE,yDAA2D,CAC3D,4DACF,CACA,eACE,4DAA8D,CAC9D,+DACF,CACA,eACE,4DAA8D,CAC9D,+DACF,CACA,eACE,6DAA+D,CAC/D,gEACF,CACA,oBACE,qCAAuC,CACvC,wCACF,CACA,kBACE,8DAAgE,CAChE,iEACF,CACA,gBACE,4DAA8D,CAC9D,2DACF,CACA,kBACE,sCAAwC,CACxC,qCACF,CACA,kBACE,+DAAiE,CACjE,8DACF,CACA,kBACE,4DAA8D,CAC9D,2DACF,CACA,kBACE,+DAAiE,CACjE,8DACF,CACA,kBACE,+DAAiE,CACjE,8DACF,CACA,kBACE,gEAAkE,CAClE,+DACF,CACA,uBACE,wCAA0C,CAC1C,uCACF,CACA,qBACE,iEAAmE,CACnE,gEACF,CACA,eACE,2DAA6D,CAC7D,wDACF,CACA,iBACE,qCAAuC,CACvC,kCACF,CACA,iBACE,8DAAgE,CAChE,2DACF,CACA,iBACE,2DAA6D,CAC7D,wDACF,CACA,iBACE,8DAAgE,CAChE,2DACF,CACA,iBACE,8DAAgE,CAChE,2DACF,CACA,iBACE,+DAAiE,CACjE,4DACF,CACA,sBACE,uCAAyC,CACzC,oCACF,CACA,oBACE,gEAAkE,CAClE,6DACF,CACA,SACE,4BACF,CACA,WACE,2BACF,CACA,MACE,oBACF,CACA,KACE,mBACF,CACA,KACE,mBACF,CACA,KACE,mBACF,CACA,KACE,mBACF,CACA,yBACE,gBACE,oBACF,CACA,cACE,qBACF,CACA,eACE,oBACF,CACA,uBACE,+BAAiC,CACjC,4BACF,CACA,qBACE,6BAA+B,CAC/B,0BACF,CACA,oBACE,4BAA8B,CAC9B,yBACF,CACA,qBACE,kCAAoC,CACpC,+BACF,CACA,oBACE,4BAA8B,CAC9B,yBACF,CACA,aACE,wBACF,CACA,mBACE,8BACF,CACA,YACE,uBACF,CACA,WACE,sBACF,CACA,kBACE,6BACF,CACA,YACE,uBACF,CACA,gBACE,2BACF,CACA,iBACE,4BACF,CACA,WACE,6BAA+B,CAC/B,6BAA+B,CAC/B,sBACF,CACA,kBACE,oCAAsC,CACtC,oCAAsC,CACtC,6BACF,CACA,WACE,sBACF,CACA,cACE,4BAA8B,CAC1B,2BAA6B,CACzB,uBACV,CACA,aACE,uCAAyC,CAErC,gCAAkC,CAC9B,4BACV,CACA,6BAJE,sCASF,CALA,gBACE,qCAAuC,CAEnC,mCAAqC,CACjC,+BACV,CACA,qBACE,uCAAyC,CACzC,uCAAyC,CACrC,wCAA0C,CACtC,oCACV,CACA,wBACE,qCAAuC,CACvC,uCAAyC,CACrC,2CAA6C,CACzC,uCACV,CACA,gBACE,4BAA8B,CAC1B,6BAA+B,CAC3B,qBACV,CACA,gBACE,4BAA8B,CAC1B,6BAA+B,CAC3B,qBACV,CACA,kBACE,6BAA+B,CAC3B,uBACN,CACA,kBACE,6BAA+B,CAC3B,uBACN,CACA,cACE,4BAA8B,CAC1B,wBACN,CACA,gBACE,8BAAgC,CAC5B,0BACN,CACA,sBACE,oCAAsC,CAClC,gCACN,CACA,0BACE,gCAAkC,CAC9B,6BAA+B,CAC3B,oCACV,CACA,wBACE,8BAAgC,CAC5B,2BAA6B,CACzB,kCACV,CACA,2BACE,iCAAmC,CAC/B,8BAAgC,CAC5B,gCACV,CACA,4BACE,kCAAoC,CAChC,+BAAiC,CAC7B,uCACV,CACA,2BACE,kCAAoC,CAChC,sCACN,CACA,2BACE,uCAAyC,CACrC,oCAAsC,CAClC,sCACV,CACA,sBACE,iCAAmC,CAC/B,8BAAgC,CAC5B,gCACV,CACA,oBACE,+BAAiC,CAC7B,4BAA8B,CAC1B,8BACV,CACA,uBACE,kCAAoC,CAChC,+BAAiC,CAC7B,4BACV,CACA,yBACE,oCAAsC,CAClC,iCAAmC,CAC/B,8BACV,CACA,wBACE,mCAAqC,CACjC,gCAAkC,CAC9B,6BACV,CACA,wBACE,kCAAoC,CAChC,kCACN,CACA,sBACE,gCAAkC,CAC9B,gCACN,CACA,yBACE,mCAAqC,CACjC,8BACN,CACA,0BACE,oCAAsC,CAClC,qCACN,CACA,yBACE,uCAAyC,CACrC,oCACN,CACA,0BACE,oCAAsC,CAClC,+BACN,CACA,oBACE,kCAAoC,CAChC,yBACN,CACA,qBACE,mCAAqC,CACjC,+BACN,CACA,mBACE,iCAAmC,CAC/B,6BACN,CACA,sBACE,oCAAsC,CAClC,2BACN,CACA,wBACE,sCAAwC,CACpC,6BACN,CACA,uBACE,qCAAuC,CACnC,4BACN,CACA,gBACE,qCAAuC,CACnC,2BAA6B,CACzB,kBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,eACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,QACE,kBACF,CACA,QACE,uBACF,CACA,QACE,sBACF,CACA,QACE,qBACF,CACA,QACE,uBACF,CACA,QACE,qBACF,CACA,WACE,qBACF,CACA,SACE,wBAA0B,CAC1B,uBACF,CACA,SACE,6BAAgC,CAChC,4BACF,CACA,SACE,4BAA+B,CAC/B,2BACF,CACA,SACE,2BAA6B,CAC7B,0BACF,CACA,SACE,6BAA+B,CAC/B,4BACF,CACA,SACE,2BAA6B,CAC7B,0BACF,CACA,YACE,2BAA6B,CAC7B,0BACF,CACA,SACE,sBAAwB,CACxB,yBACF,CACA,SACE,2BAA8B,CAC9B,8BACF,CACA,SACE,0BAA6B,CAC7B,6BACF,CACA,SACE,yBAA2B,CAC3B,4BACF,CACA,SACE,2BAA6B,CAC7B,8BACF,CACA,SACE,yBAA2B,CAC3B,4BACF,CACA,YACE,yBAA2B,CAC3B,4BACF,CACA,SACE,sBACF,CACA,SACE,2BACF,CACA,SACE,0BACF,CACA,SACE,yBACF,CACA,SACE,2BACF,CACA,SACE,yBACF,CACA,YACE,yBACF,CACA,SACE,wBACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,6BACF,CACA,SACE,2BACF,CACA,YACE,2BACF,CACA,SACE,yBACF,CACA,SACE,8BACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,8BACF,CACA,SACE,4BACF,CACA,YACE,4BACF,CACA,SACE,uBACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,0BACF,CACA,SACE,4BACF,CACA,SACE,0BACF,CACA,YACE,0BACF,CACA,QACE,mBACF,CACA,QACE,wBACF,CACA,QACE,uBACF,CACA,QACE,sBACF,CACA,QACE,wBACF,CACA,QACE,sBACF,CACA,SACE,yBAA2B,CAC3B,wBACF,CACA,SACE,8BAAiC,CACjC,6BACF,CACA,SACE,6BAAgC,CAChC,4BACF,CACA,SACE,4BAA8B,CAC9B,2BACF,CACA,SACE,8BAAgC,CAChC,6BACF,CACA,SACE,4BAA8B,CAC9B,2BACF,CACA,SACE,uBAAyB,CACzB,0BACF,CACA,SACE,4BAA+B,CAC/B,+BACF,CACA,SACE,2BAA8B,CAC9B,8BACF,CACA,SACE,0BAA4B,CAC5B,6BACF,CACA,SACE,4BAA8B,CAC9B,+BACF,CACA,SACE,0BAA4B,CAC5B,6BACF,CACA,SACE,uBACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,0BACF,CACA,SACE,4BACF,CACA,SACE,0BACF,CACA,SACE,yBACF,CACA,SACE,8BACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,8BACF,CACA,SACE,4BACF,CACA,SACE,0BACF,CACA,SACE,+BACF,CACA,SACE,8BACF,CACA,SACE,6BACF,CACA,SACE,+BACF,CACA,SACE,6BACF,CACA,SACE,wBACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,6BACF,CACA,SACE,2BACF,CACA,UACE,eACF,CACA,UACE,oBACF,CACA,UACE,mBACF,CACA,UACE,kBACF,CACA,UACE,oBACF,CACA,UACE,kBACF,CACA,cACE,mBACF,CACA,cACE,wBACF,CACA,cACE,uBACF,CACA,cACE,sBACF,CACA,cACE,wBACF,CACA,cACE,sBACF,CACA,iBACE,2BAA6B,CAC7B,8BAAgC,CACxB,sBACV,CACA,iBACE,gCAAmC,CACnC,mCAAsC,CAC9B,2BACV,CACA,iBACE,+BAAkC,CAClC,kCAAqC,CAC7B,0BACV,CACA,iBACE,8BAAgC,CAChC,iCAAmC,CAC3B,yBACV,CACA,iBACE,gCAAkC,CAClC,mCAAqC,CAC7B,2BACV,CACA,iBACE,8BAAgC,CAChC,iCAAmC,CAC3B,yBACV,CACA,eACE,yBACF,CACA,aACE,0BACF,CACA,gBACE,2BACF,CACF,CACA,yBACE,gBACE,oBACF,CACA,cACE,qBACF,CACA,eACE,oBACF,CACA,uBACE,+BAAiC,CACjC,4BACF,CACA,qBACE,6BAA+B,CAC/B,0BACF,CACA,oBACE,4BAA8B,CAC9B,yBACF,CACA,qBACE,kCAAoC,CACpC,+BACF,CACA,oBACE,4BAA8B,CAC9B,yBACF,CACA,aACE,wBACF,CACA,mBACE,8BACF,CACA,YACE,uBACF,CACA,WACE,sBACF,CACA,kBACE,6BACF,CACA,YACE,uBACF,CACA,gBACE,2BACF,CACA,iBACE,4BACF,CACA,WACE,6BAA+B,CAC/B,6BAA+B,CAC/B,sBACF,CACA,kBACE,oCAAsC,CACtC,oCAAsC,CACtC,6BACF,CACA,WACE,sBACF,CACA,cACE,4BAA8B,CAC1B,2BAA6B,CACzB,uBACV,CACA,aACE,uCAAyC,CAErC,gCAAkC,CAC9B,4BACV,CACA,6BAJE,sCASF,CALA,gBACE,qCAAuC,CAEnC,mCAAqC,CACjC,+BACV,CACA,qBACE,uCAAyC,CACzC,uCAAyC,CACrC,wCAA0C,CACtC,oCACV,CACA,wBACE,qCAAuC,CACvC,uCAAyC,CACrC,2CAA6C,CACzC,uCACV,CACA,gBACE,4BAA8B,CAC1B,6BAA+B,CAC3B,qBACV,CACA,gBACE,4BAA8B,CAC1B,6BAA+B,CAC3B,qBACV,CACA,kBACE,6BAA+B,CAC3B,uBACN,CACA,kBACE,6BAA+B,CAC3B,uBACN,CACA,cACE,4BAA8B,CAC1B,wBACN,CACA,gBACE,8BAAgC,CAC5B,0BACN,CACA,sBACE,oCAAsC,CAClC,gCACN,CACA,0BACE,gCAAkC,CAC9B,6BAA+B,CAC3B,oCACV,CACA,wBACE,8BAAgC,CAC5B,2BAA6B,CACzB,kCACV,CACA,2BACE,iCAAmC,CAC/B,8BAAgC,CAC5B,gCACV,CACA,4BACE,kCAAoC,CAChC,+BAAiC,CAC7B,uCACV,CACA,2BACE,kCAAoC,CAChC,sCACN,CACA,2BACE,uCAAyC,CACrC,oCAAsC,CAClC,sCACV,CACA,sBACE,iCAAmC,CAC/B,8BAAgC,CAC5B,gCACV,CACA,oBACE,+BAAiC,CAC7B,4BAA8B,CAC1B,8BACV,CACA,uBACE,kCAAoC,CAChC,+BAAiC,CAC7B,4BACV,CACA,yBACE,oCAAsC,CAClC,iCAAmC,CAC/B,8BACV,CACA,wBACE,mCAAqC,CACjC,gCAAkC,CAC9B,6BACV,CACA,wBACE,kCAAoC,CAChC,kCACN,CACA,sBACE,gCAAkC,CAC9B,gCACN,CACA,yBACE,mCAAqC,CACjC,8BACN,CACA,0BACE,oCAAsC,CAClC,qCACN,CACA,yBACE,uCAAyC,CACrC,oCACN,CACA,0BACE,oCAAsC,CAClC,+BACN,CACA,oBACE,kCAAoC,CAChC,yBACN,CACA,qBACE,mCAAqC,CACjC,+BACN,CACA,mBACE,iCAAmC,CAC/B,6BACN,CACA,sBACE,oCAAsC,CAClC,2BACN,CACA,wBACE,sCAAwC,CACpC,6BACN,CACA,uBACE,qCAAuC,CACnC,4BACN,CACA,gBACE,qCAAuC,CACnC,2BAA6B,CACzB,kBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,eACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,QACE,kBACF,CACA,QACE,uBACF,CACA,QACE,sBACF,CACA,QACE,qBACF,CACA,QACE,uBACF,CACA,QACE,qBACF,CACA,WACE,qBACF,CACA,SACE,wBAA0B,CAC1B,uBACF,CACA,SACE,6BAAgC,CAChC,4BACF,CACA,SACE,4BAA+B,CAC/B,2BACF,CACA,SACE,2BAA6B,CAC7B,0BACF,CACA,SACE,6BAA+B,CAC/B,4BACF,CACA,SACE,2BAA6B,CAC7B,0BACF,CACA,YACE,2BAA6B,CAC7B,0BACF,CACA,SACE,sBAAwB,CACxB,yBACF,CACA,SACE,2BAA8B,CAC9B,8BACF,CACA,SACE,0BAA6B,CAC7B,6BACF,CACA,SACE,yBAA2B,CAC3B,4BACF,CACA,SACE,2BAA6B,CAC7B,8BACF,CACA,SACE,yBAA2B,CAC3B,4BACF,CACA,YACE,yBAA2B,CAC3B,4BACF,CACA,SACE,sBACF,CACA,SACE,2BACF,CACA,SACE,0BACF,CACA,SACE,yBACF,CACA,SACE,2BACF,CACA,SACE,yBACF,CACA,YACE,yBACF,CACA,SACE,wBACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,6BACF,CACA,SACE,2BACF,CACA,YACE,2BACF,CACA,SACE,yBACF,CACA,SACE,8BACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,8BACF,CACA,SACE,4BACF,CACA,YACE,4BACF,CACA,SACE,uBACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,0BACF,CACA,SACE,4BACF,CACA,SACE,0BACF,CACA,YACE,0BACF,CACA,QACE,mBACF,CACA,QACE,wBACF,CACA,QACE,uBACF,CACA,QACE,sBACF,CACA,QACE,wBACF,CACA,QACE,sBACF,CACA,SACE,yBAA2B,CAC3B,wBACF,CACA,SACE,8BAAiC,CACjC,6BACF,CACA,SACE,6BAAgC,CAChC,4BACF,CACA,SACE,4BAA8B,CAC9B,2BACF,CACA,SACE,8BAAgC,CAChC,6BACF,CACA,SACE,4BAA8B,CAC9B,2BACF,CACA,SACE,uBAAyB,CACzB,0BACF,CACA,SACE,4BAA+B,CAC/B,+BACF,CACA,SACE,2BAA8B,CAC9B,8BACF,CACA,SACE,0BAA4B,CAC5B,6BACF,CACA,SACE,4BAA8B,CAC9B,+BACF,CACA,SACE,0BAA4B,CAC5B,6BACF,CACA,SACE,uBACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,0BACF,CACA,SACE,4BACF,CACA,SACE,0BACF,CACA,SACE,yBACF,CACA,SACE,8BACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,8BACF,CACA,SACE,4BACF,CACA,SACE,0BACF,CACA,SACE,+BACF,CACA,SACE,8BACF,CACA,SACE,6BACF,CACA,SACE,+BACF,CACA,SACE,6BACF,CACA,SACE,wBACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,6BACF,CACA,SACE,2BACF,CACA,UACE,eACF,CACA,UACE,oBACF,CACA,UACE,mBACF,CACA,UACE,kBACF,CACA,UACE,oBACF,CACA,UACE,kBACF,CACA,cACE,mBACF,CACA,cACE,wBACF,CACA,cACE,uBACF,CACA,cACE,sBACF,CACA,cACE,wBACF,CACA,cACE,sBACF,CACA,iBACE,2BAA6B,CAC7B,8BAAgC,CACxB,sBACV,CACA,iBACE,gCAAmC,CACnC,mCAAsC,CAC9B,2BACV,CACA,iBACE,+BAAkC,CAClC,kCAAqC,CAC7B,0BACV,CACA,iBACE,8BAAgC,CAChC,iCAAmC,CAC3B,yBACV,CACA,iBACE,gCAAkC,CAClC,mCAAqC,CAC7B,2BACV,CACA,iBACE,8BAAgC,CAChC,iCAAmC,CAC3B,yBACV,CACA,eACE,yBACF,CACA,aACE,0BACF,CACA,gBACE,2BACF,CACF,CACA,yBACE,gBACE,oBACF,CACA,cACE,qBACF,CACA,eACE,oBACF,CACA,uBACE,+BAAiC,CACjC,4BACF,CACA,qBACE,6BAA+B,CAC/B,0BACF,CACA,oBACE,4BAA8B,CAC9B,yBACF,CACA,qBACE,kCAAoC,CACpC,+BACF,CACA,oBACE,4BAA8B,CAC9B,yBACF,CACA,aACE,wBACF,CACA,mBACE,8BACF,CACA,YACE,uBACF,CACA,WACE,sBACF,CACA,kBACE,6BACF,CACA,YACE,uBACF,CACA,gBACE,2BACF,CACA,iBACE,4BACF,CACA,WACE,6BAA+B,CAC/B,6BAA+B,CAC/B,sBACF,CACA,kBACE,oCAAsC,CACtC,oCAAsC,CACtC,6BACF,CACA,WACE,sBACF,CACA,cACE,4BAA8B,CAC1B,2BAA6B,CACzB,uBACV,CACA,aACE,uCAAyC,CAErC,gCAAkC,CAC9B,4BACV,CACA,6BAJE,sCASF,CALA,gBACE,qCAAuC,CAEnC,mCAAqC,CACjC,+BACV,CACA,qBACE,uCAAyC,CACzC,uCAAyC,CACrC,wCAA0C,CACtC,oCACV,CACA,wBACE,qCAAuC,CACvC,uCAAyC,CACrC,2CAA6C,CACzC,uCACV,CACA,gBACE,4BAA8B,CAC1B,6BAA+B,CAC3B,qBACV,CACA,gBACE,4BAA8B,CAC1B,6BAA+B,CAC3B,qBACV,CACA,kBACE,6BAA+B,CAC3B,uBACN,CACA,kBACE,6BAA+B,CAC3B,uBACN,CACA,cACE,4BAA8B,CAC1B,wBACN,CACA,gBACE,8BAAgC,CAC5B,0BACN,CACA,sBACE,oCAAsC,CAClC,gCACN,CACA,0BACE,gCAAkC,CAC9B,6BAA+B,CAC3B,oCACV,CACA,wBACE,8BAAgC,CAC5B,2BAA6B,CACzB,kCACV,CACA,2BACE,iCAAmC,CAC/B,8BAAgC,CAC5B,gCACV,CACA,4BACE,kCAAoC,CAChC,+BAAiC,CAC7B,uCACV,CACA,2BACE,kCAAoC,CAChC,sCACN,CACA,2BACE,uCAAyC,CACrC,oCAAsC,CAClC,sCACV,CACA,sBACE,iCAAmC,CAC/B,8BAAgC,CAC5B,gCACV,CACA,oBACE,+BAAiC,CAC7B,4BAA8B,CAC1B,8BACV,CACA,uBACE,kCAAoC,CAChC,+BAAiC,CAC7B,4BACV,CACA,yBACE,oCAAsC,CAClC,iCAAmC,CAC/B,8BACV,CACA,wBACE,mCAAqC,CACjC,gCAAkC,CAC9B,6BACV,CACA,wBACE,kCAAoC,CAChC,kCACN,CACA,sBACE,gCAAkC,CAC9B,gCACN,CACA,yBACE,mCAAqC,CACjC,8BACN,CACA,0BACE,oCAAsC,CAClC,qCACN,CACA,yBACE,uCAAyC,CACrC,oCACN,CACA,0BACE,oCAAsC,CAClC,+BACN,CACA,oBACE,kCAAoC,CAChC,yBACN,CACA,qBACE,mCAAqC,CACjC,+BACN,CACA,mBACE,iCAAmC,CAC/B,6BACN,CACA,sBACE,oCAAsC,CAClC,2BACN,CACA,wBACE,sCAAwC,CACpC,6BACN,CACA,uBACE,qCAAuC,CACnC,4BACN,CACA,gBACE,qCAAuC,CACnC,2BAA6B,CACzB,kBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,eACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,QACE,kBACF,CACA,QACE,uBACF,CACA,QACE,sBACF,CACA,QACE,qBACF,CACA,QACE,uBACF,CACA,QACE,qBACF,CACA,WACE,qBACF,CACA,SACE,wBAA0B,CAC1B,uBACF,CACA,SACE,6BAAgC,CAChC,4BACF,CACA,SACE,4BAA+B,CAC/B,2BACF,CACA,SACE,2BAA6B,CAC7B,0BACF,CACA,SACE,6BAA+B,CAC/B,4BACF,CACA,SACE,2BAA6B,CAC7B,0BACF,CACA,YACE,2BAA6B,CAC7B,0BACF,CACA,SACE,sBAAwB,CACxB,yBACF,CACA,SACE,2BAA8B,CAC9B,8BACF,CACA,SACE,0BAA6B,CAC7B,6BACF,CACA,SACE,yBAA2B,CAC3B,4BACF,CACA,SACE,2BAA6B,CAC7B,8BACF,CACA,SACE,yBAA2B,CAC3B,4BACF,CACA,YACE,yBAA2B,CAC3B,4BACF,CACA,SACE,sBACF,CACA,SACE,2BACF,CACA,SACE,0BACF,CACA,SACE,yBACF,CACA,SACE,2BACF,CACA,SACE,yBACF,CACA,YACE,yBACF,CACA,SACE,wBACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,6BACF,CACA,SACE,2BACF,CACA,YACE,2BACF,CACA,SACE,yBACF,CACA,SACE,8BACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,8BACF,CACA,SACE,4BACF,CACA,YACE,4BACF,CACA,SACE,uBACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,0BACF,CACA,SACE,4BACF,CACA,SACE,0BACF,CACA,YACE,0BACF,CACA,QACE,mBACF,CACA,QACE,wBACF,CACA,QACE,uBACF,CACA,QACE,sBACF,CACA,QACE,wBACF,CACA,QACE,sBACF,CACA,SACE,yBAA2B,CAC3B,wBACF,CACA,SACE,8BAAiC,CACjC,6BACF,CACA,SACE,6BAAgC,CAChC,4BACF,CACA,SACE,4BAA8B,CAC9B,2BACF,CACA,SACE,8BAAgC,CAChC,6BACF,CACA,SACE,4BAA8B,CAC9B,2BACF,CACA,SACE,uBAAyB,CACzB,0BACF,CACA,SACE,4BAA+B,CAC/B,+BACF,CACA,SACE,2BAA8B,CAC9B,8BACF,CACA,SACE,0BAA4B,CAC5B,6BACF,CACA,SACE,4BAA8B,CAC9B,+BACF,CACA,SACE,0BAA4B,CAC5B,6BACF,CACA,SACE,uBACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,0BACF,CACA,SACE,4BACF,CACA,SACE,0BACF,CACA,SACE,yBACF,CACA,SACE,8BACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,8BACF,CACA,SACE,4BACF,CACA,SACE,0BACF,CACA,SACE,+BACF,CACA,SACE,8BACF,CACA,SACE,6BACF,CACA,SACE,+BACF,CACA,SACE,6BACF,CACA,SACE,wBACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,6BACF,CACA,SACE,2BACF,CACA,UACE,eACF,CACA,UACE,oBACF,CACA,UACE,mBACF,CACA,UACE,kBACF,CACA,UACE,oBACF,CACA,UACE,kBACF,CACA,cACE,mBACF,CACA,cACE,wBACF,CACA,cACE,uBACF,CACA,cACE,sBACF,CACA,cACE,wBACF,CACA,cACE,sBACF,CACA,iBACE,2BAA6B,CAC7B,8BAAgC,CACxB,sBACV,CACA,iBACE,gCAAmC,CACnC,mCAAsC,CAC9B,2BACV,CACA,iBACE,+BAAkC,CAClC,kCAAqC,CAC7B,0BACV,CACA,iBACE,8BAAgC,CAChC,iCAAmC,CAC3B,yBACV,CACA,iBACE,gCAAkC,CAClC,mCAAqC,CAC7B,2BACV,CACA,iBACE,8BAAgC,CAChC,iCAAmC,CAC3B,yBACV,CACA,eACE,yBACF,CACA,aACE,0BACF,CACA,gBACE,2BACF,CACF,CACA,0BACE,gBACE,oBACF,CACA,cACE,qBACF,CACA,eACE,oBACF,CACA,uBACE,+BAAiC,CACjC,4BACF,CACA,qBACE,6BAA+B,CAC/B,0BACF,CACA,oBACE,4BAA8B,CAC9B,yBACF,CACA,qBACE,kCAAoC,CACpC,+BACF,CACA,oBACE,4BAA8B,CAC9B,yBACF,CACA,aACE,wBACF,CACA,mBACE,8BACF,CACA,YACE,uBACF,CACA,WACE,sBACF,CACA,kBACE,6BACF,CACA,YACE,uBACF,CACA,gBACE,2BACF,CACA,iBACE,4BACF,CACA,WACE,6BAA+B,CAC/B,6BAA+B,CAC/B,sBACF,CACA,kBACE,oCAAsC,CACtC,oCAAsC,CACtC,6BACF,CACA,WACE,sBACF,CACA,cACE,4BAA8B,CAC1B,2BAA6B,CACzB,uBACV,CACA,aACE,uCAAyC,CAErC,gCAAkC,CAC9B,4BACV,CACA,6BAJE,sCASF,CALA,gBACE,qCAAuC,CAEnC,mCAAqC,CACjC,+BACV,CACA,qBACE,uCAAyC,CACzC,uCAAyC,CACrC,wCAA0C,CACtC,oCACV,CACA,wBACE,qCAAuC,CACvC,uCAAyC,CACrC,2CAA6C,CACzC,uCACV,CACA,gBACE,4BAA8B,CAC1B,6BAA+B,CAC3B,qBACV,CACA,gBACE,4BAA8B,CAC1B,6BAA+B,CAC3B,qBACV,CACA,kBACE,6BAA+B,CAC3B,uBACN,CACA,kBACE,6BAA+B,CAC3B,uBACN,CACA,cACE,4BAA8B,CAC1B,wBACN,CACA,gBACE,8BAAgC,CAC5B,0BACN,CACA,sBACE,oCAAsC,CAClC,gCACN,CACA,0BACE,gCAAkC,CAC9B,6BAA+B,CAC3B,oCACV,CACA,wBACE,8BAAgC,CAC5B,2BAA6B,CACzB,kCACV,CACA,2BACE,iCAAmC,CAC/B,8BAAgC,CAC5B,gCACV,CACA,4BACE,kCAAoC,CAChC,+BAAiC,CAC7B,uCACV,CACA,2BACE,kCAAoC,CAChC,sCACN,CACA,2BACE,uCAAyC,CACrC,oCAAsC,CAClC,sCACV,CACA,sBACE,iCAAmC,CAC/B,8BAAgC,CAC5B,gCACV,CACA,oBACE,+BAAiC,CAC7B,4BAA8B,CAC1B,8BACV,CACA,uBACE,kCAAoC,CAChC,+BAAiC,CAC7B,4BACV,CACA,yBACE,oCAAsC,CAClC,iCAAmC,CAC/B,8BACV,CACA,wBACE,mCAAqC,CACjC,gCAAkC,CAC9B,6BACV,CACA,wBACE,kCAAoC,CAChC,kCACN,CACA,sBACE,gCAAkC,CAC9B,gCACN,CACA,yBACE,mCAAqC,CACjC,8BACN,CACA,0BACE,oCAAsC,CAClC,qCACN,CACA,yBACE,uCAAyC,CACrC,oCACN,CACA,0BACE,oCAAsC,CAClC,+BACN,CACA,oBACE,kCAAoC,CAChC,yBACN,CACA,qBACE,mCAAqC,CACjC,+BACN,CACA,mBACE,iCAAmC,CAC/B,6BACN,CACA,sBACE,oCAAsC,CAClC,2BACN,CACA,wBACE,sCAAwC,CACpC,6BACN,CACA,uBACE,qCAAuC,CACnC,4BACN,CACA,gBACE,qCAAuC,CACnC,2BAA6B,CACzB,kBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,YACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,eACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,QACE,kBACF,CACA,QACE,uBACF,CACA,QACE,sBACF,CACA,QACE,qBACF,CACA,QACE,uBACF,CACA,QACE,qBACF,CACA,WACE,qBACF,CACA,SACE,wBAA0B,CAC1B,uBACF,CACA,SACE,6BAAgC,CAChC,4BACF,CACA,SACE,4BAA+B,CAC/B,2BACF,CACA,SACE,2BAA6B,CAC7B,0BACF,CACA,SACE,6BAA+B,CAC/B,4BACF,CACA,SACE,2BAA6B,CAC7B,0BACF,CACA,YACE,2BAA6B,CAC7B,0BACF,CACA,SACE,sBAAwB,CACxB,yBACF,CACA,SACE,2BAA8B,CAC9B,8BACF,CACA,SACE,0BAA6B,CAC7B,6BACF,CACA,SACE,yBAA2B,CAC3B,4BACF,CACA,SACE,2BAA6B,CAC7B,8BACF,CACA,SACE,yBAA2B,CAC3B,4BACF,CACA,YACE,yBAA2B,CAC3B,4BACF,CACA,SACE,sBACF,CACA,SACE,2BACF,CACA,SACE,0BACF,CACA,SACE,yBACF,CACA,SACE,2BACF,CACA,SACE,yBACF,CACA,YACE,yBACF,CACA,SACE,wBACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,6BACF,CACA,SACE,2BACF,CACA,YACE,2BACF,CACA,SACE,yBACF,CACA,SACE,8BACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,8BACF,CACA,SACE,4BACF,CACA,YACE,4BACF,CACA,SACE,uBACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,0BACF,CACA,SACE,4BACF,CACA,SACE,0BACF,CACA,YACE,0BACF,CACA,QACE,mBACF,CACA,QACE,wBACF,CACA,QACE,uBACF,CACA,QACE,sBACF,CACA,QACE,wBACF,CACA,QACE,sBACF,CACA,SACE,yBAA2B,CAC3B,wBACF,CACA,SACE,8BAAiC,CACjC,6BACF,CACA,SACE,6BAAgC,CAChC,4BACF,CACA,SACE,4BAA8B,CAC9B,2BACF,CACA,SACE,8BAAgC,CAChC,6BACF,CACA,SACE,4BAA8B,CAC9B,2BACF,CACA,SACE,uBAAyB,CACzB,0BACF,CACA,SACE,4BAA+B,CAC/B,+BACF,CACA,SACE,2BAA8B,CAC9B,8BACF,CACA,SACE,0BAA4B,CAC5B,6BACF,CACA,SACE,4BAA8B,CAC9B,+BACF,CACA,SACE,0BAA4B,CAC5B,6BACF,CACA,SACE,uBACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,0BACF,CACA,SACE,4BACF,CACA,SACE,0BACF,CACA,SACE,yBACF,CACA,SACE,8BACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,8BACF,CACA,SACE,4BACF,CACA,SACE,0BACF,CACA,SACE,+BACF,CACA,SACE,8BACF,CACA,SACE,6BACF,CACA,SACE,+BACF,CACA,SACE,6BACF,CACA,SACE,wBACF,CACA,SACE,6BACF,CACA,SACE,4BACF,CACA,SACE,2BACF,CACA,SACE,6BACF,CACA,SACE,2BACF,CACA,UACE,eACF,CACA,UACE,oBACF,CACA,UACE,mBACF,CACA,UACE,kBACF,CACA,UACE,oBACF,CACA,UACE,kBACF,CACA,cACE,mBACF,CACA,cACE,wBACF,CACA,cACE,uBACF,CACA,cACE,sBACF,CACA,cACE,wBACF,CACA,cACE,sBACF,CACA,iBACE,2BAA6B,CAC7B,8BAAgC,CACxB,sBACV,CACA,iBACE,gCAAmC,CACnC,mCAAsC,CAC9B,2BACV,CACA,iBACE,+BAAkC,CAClC,kCAAqC,CAC7B,0BACV,CACA,iBACE,8BAAgC,CAChC,iCAAmC,CAC3B,yBACV,CACA,iBACE,gCAAkC,CAClC,mCAAqC,CAC7B,2BACV,CACA,iBACE,8BAAgC,CAChC,iCAAmC,CAC3B,yBACV,CACA,eACE,yBACF,CACA,aACE,0BACF,CACA,gBACE,2BACF,CACF,CACA,0BACE,iBACE,oBACF,CACA,eACE,qBACF,CACA,gBACE,oBACF,CACA,wBACE,+BAAiC,CACjC,4BACF,CACA,sBACE,6BAA+B,CAC/B,0BACF,CACA,qBACE,4BAA8B,CAC9B,yBACF,CACA,sBACE,kCAAoC,CACpC,+BACF,CACA,qBACE,4BAA8B,CAC9B,yBACF,CACA,cACE,wBACF,CACA,oBACE,8BACF,CACA,aACE,uBACF,CACA,YACE,sBACF,CACA,mBACE,6BACF,CACA,aACE,uBACF,CACA,iBACE,2BACF,CACA,kBACE,4BACF,CACA,YACE,6BAA+B,CAC/B,6BAA+B,CAC/B,sBACF,CACA,mBACE,oCAAsC,CACtC,oCAAsC,CACtC,6BACF,CACA,YACE,sBACF,CACA,eACE,4BAA8B,CAC1B,2BAA6B,CACzB,uBACV,CACA,cACE,uCAAyC,CAErC,gCAAkC,CAC9B,4BACV,CACA,+BAJE,sCASF,CALA,iBACE,qCAAuC,CAEnC,mCAAqC,CACjC,+BACV,CACA,sBACE,uCAAyC,CACzC,uCAAyC,CACrC,wCAA0C,CACtC,oCACV,CACA,yBACE,qCAAuC,CACvC,uCAAyC,CACrC,2CAA6C,CACzC,uCACV,CACA,iBACE,4BAA8B,CAC1B,6BAA+B,CAC3B,qBACV,CACA,iBACE,4BAA8B,CAC1B,6BAA+B,CAC3B,qBACV,CACA,mBACE,6BAA+B,CAC3B,uBACN,CACA,mBACE,6BAA+B,CAC3B,uBACN,CACA,eACE,4BAA8B,CAC1B,wBACN,CACA,iBACE,8BAAgC,CAC5B,0BACN,CACA,uBACE,oCAAsC,CAClC,gCACN,CACA,2BACE,gCAAkC,CAC9B,6BAA+B,CAC3B,oCACV,CACA,yBACE,8BAAgC,CAC5B,2BAA6B,CACzB,kCACV,CACA,4BACE,iCAAmC,CAC/B,8BAAgC,CAC5B,gCACV,CACA,6BACE,kCAAoC,CAChC,+BAAiC,CAC7B,uCACV,CACA,4BACE,kCAAoC,CAChC,sCACN,CACA,4BACE,uCAAyC,CACrC,oCAAsC,CAClC,sCACV,CACA,uBACE,iCAAmC,CAC/B,8BAAgC,CAC5B,gCACV,CACA,qBACE,+BAAiC,CAC7B,4BAA8B,CAC1B,8BACV,CACA,wBACE,kCAAoC,CAChC,+BAAiC,CAC7B,4BACV,CACA,0BACE,oCAAsC,CAClC,iCAAmC,CAC/B,8BACV,CACA,yBACE,mCAAqC,CACjC,gCAAkC,CAC9B,6BACV,CACA,yBACE,kCAAoC,CAChC,kCACN,CACA,uBACE,gCAAkC,CAC9B,gCACN,CACA,0BACE,mCAAqC,CACjC,8BACN,CACA,2BACE,oCAAsC,CAClC,qCACN,CACA,0BACE,uCAAyC,CACrC,oCACN,CACA,2BACE,oCAAsC,CAClC,+BACN,CACA,qBACE,kCAAoC,CAChC,yBACN,CACA,sBACE,mCAAqC,CACjC,+BACN,CACA,oBACE,iCAAmC,CAC/B,6BACN,CACA,uBACE,oCAAsC,CAClC,2BACN,CACA,yBACE,sCAAwC,CACpC,6BACN,CACA,wBACE,qCAAuC,CACnC,4BACN,CACA,iBACE,qCAAuC,CACnC,2BAA6B,CACzB,kBACV,CACA,aACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,aACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,aACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,aACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,aACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,aACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,gBACE,qCAAuC,CACnC,0BAA4B,CACxB,iBACV,CACA,SACE,kBACF,CACA,SACE,uBACF,CACA,SACE,sBACF,CACA,SACE,qBACF,CACA,SACE,uBACF,CACA,SACE,qBACF,CACA,YACE,qBACF,CACA,UACE,wBAA0B,CAC1B,uBACF,CACA,UACE,6BAAgC,CAChC,4BACF,CACA,UACE,4BAA+B,CAC/B,2BACF,CACA,UACE,2BAA6B,CAC7B,0BACF,CACA,UACE,6BAA+B,CAC/B,4BACF,CACA,UACE,2BAA6B,CAC7B,0BACF,CACA,aACE,2BAA6B,CAC7B,0BACF,CACA,UACE,sBAAwB,CACxB,yBACF,CACA,UACE,2BAA8B,CAC9B,8BACF,CACA,UACE,0BAA6B,CAC7B,6BACF,CACA,UACE,yBAA2B,CAC3B,4BACF,CACA,UACE,2BAA6B,CAC7B,8BACF,CACA,UACE,yBAA2B,CAC3B,4BACF,CACA,aACE,yBAA2B,CAC3B,4BACF,CACA,UACE,sBACF,CACA,UACE,2BACF,CACA,UACE,0BACF,CACA,UACE,yBACF,CACA,UACE,2BACF,CACA,UACE,yBACF,CACA,aACE,yBACF,CACA,UACE,wBACF,CACA,UACE,6BACF,CACA,UACE,4BACF,CACA,UACE,2BACF,CACA,UACE,6BACF,CACA,UACE,2BACF,CACA,aACE,2BACF,CACA,UACE,yBACF,CACA,UACE,8BACF,CACA,UACE,6BACF,CACA,UACE,4BACF,CACA,UACE,8BACF,CACA,UACE,4BACF,CACA,aACE,4BACF,CACA,UACE,uBACF,CACA,UACE,4BACF,CACA,UACE,2BACF,CACA,UACE,0BACF,CACA,UACE,4BACF,CACA,UACE,0BACF,CACA,aACE,0BACF,CACA,SACE,mBACF,CACA,SACE,wBACF,CACA,SACE,uBACF,CACA,SACE,sBACF,CACA,SACE,wBACF,CACA,SACE,sBACF,CACA,UACE,yBAA2B,CAC3B,wBACF,CACA,UACE,8BAAiC,CACjC,6BACF,CACA,UACE,6BAAgC,CAChC,4BACF,CACA,UACE,4BAA8B,CAC9B,2BACF,CACA,UACE,8BAAgC,CAChC,6BACF,CACA,UACE,4BAA8B,CAC9B,2BACF,CACA,UACE,uBAAyB,CACzB,0BACF,CACA,UACE,4BAA+B,CAC/B,+BACF,CACA,UACE,2BAA8B,CAC9B,8BACF,CACA,UACE,0BAA4B,CAC5B,6BACF,CACA,UACE,4BAA8B,CAC9B,+BACF,CACA,UACE,0BAA4B,CAC5B,6BACF,CACA,UACE,uBACF,CACA,UACE,4BACF,CACA,UACE,2BACF,CACA,UACE,0BACF,CACA,UACE,4BACF,CACA,UACE,0BACF,CACA,UACE,yBACF,CACA,UACE,8BACF,CACA,UACE,6BACF,CACA,UACE,4BACF,CACA,UACE,8BACF,CACA,UACE,4BACF,CACA,UACE,0BACF,CACA,UACE,+BACF,CACA,UACE,8BACF,CACA,UACE,6BACF,CACA,UACE,+BACF,CACA,UACE,6BACF,CACA,UACE,wBACF,CACA,UACE,6BACF,CACA,UACE,4BACF,CACA,UACE,2BACF,CACA,UACE,6BACF,CACA,UACE,2BACF,CACA,WACE,eACF,CACA,WACE,oBACF,CACA,WACE,mBACF,CACA,WACE,kBACF,CACA,WACE,oBACF,CACA,WACE,kBACF,CACA,eACE,mBACF,CACA,eACE,wBACF,CACA,eACE,uBACF,CACA,eACE,sBACF,CACA,eACE,wBACF,CACA,eACE,sBACF,CACA,kBACE,2BAA6B,CAC7B,8BAAgC,CACxB,sBACV,CACA,kBACE,gCAAmC,CACnC,mCAAsC,CAC9B,2BACV,CACA,kBACE,+BAAkC,CAClC,kCAAqC,CAC7B,0BACV,CACA,kBACE,8BAAgC,CAChC,iCAAmC,CAC3B,yBACV,CACA,kBACE,gCAAkC,CAClC,mCAAqC,CAC7B,2BACV,CACA,kBACE,8BAAgC,CAChC,iCAAmC,CAC3B,yBACV,CACA,gBACE,yBACF,CACA,cACE,0BACF,CACA,iBACE,2BACF,CACF,CACA,0BACE,MACE,0BACF,CACA,MACE,wBACF,CACA,MACE,2BACF,CACA,MACE,0BACF,CACF,CACA,aACE,gBACE,wBACF,CACA,sBACE,8BACF,CACA,eACE,uBACF,CACA,cACE,sBACF,CACA,qBACE,6BACF,CACA,eACE,uBACF,CACA,mBACE,2BACF,CACA,oBACE,4BACF,CACA,cACE,6BAA+B,CAC/B,6BAA+B,CAC/B,sBACF,CACA,qBACE,oCAAsC,CACtC,oCAAsC,CACtC,6BACF,CACA,cACE,sBACF,CACF,CAEA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","file":"app.47bd9779ba3b9a7e86a34752feb2c41b.css","sourcesContent":["@charset \"UTF-8\";\n/*!\n * Bootstrap v5.3.0 (https://getbootstrap.com/)\n * Copyright 2011-2023 The Bootstrap Authors\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n */\n:root,\n[data-bs-theme=light] {\n --bs-blue: #0d6efd;\n --bs-indigo: #6610f2;\n --bs-purple: #6f42c1;\n --bs-pink: #d63384;\n --bs-red: #dc3545;\n --bs-orange: #fd7e14;\n --bs-yellow: #ffc107;\n --bs-green: #198754;\n --bs-teal: #20c997;\n --bs-cyan: #0dcaf0;\n --bs-black: #000;\n --bs-white: #fff;\n --bs-gray: #6c757d;\n --bs-gray-dark: #343a40;\n --bs-gray-100: #f8f9fa;\n --bs-gray-200: #e9ecef;\n --bs-gray-300: #dee2e6;\n --bs-gray-400: #ced4da;\n --bs-gray-500: #adb5bd;\n --bs-gray-600: #6c757d;\n --bs-gray-700: #495057;\n --bs-gray-800: #343a40;\n --bs-gray-900: #212529;\n --bs-primary: #0d6efd;\n --bs-secondary: #6c757d;\n --bs-success: #198754;\n --bs-info: #0dcaf0;\n --bs-warning: #ffc107;\n --bs-danger: #dc3545;\n --bs-light: #f8f9fa;\n --bs-dark: #212529;\n --bs-primary-rgb: 13, 110, 253;\n --bs-secondary-rgb: 108, 117, 125;\n --bs-success-rgb: 25, 135, 84;\n --bs-info-rgb: 13, 202, 240;\n --bs-warning-rgb: 255, 193, 7;\n --bs-danger-rgb: 220, 53, 69;\n --bs-light-rgb: 248, 249, 250;\n --bs-dark-rgb: 33, 37, 41;\n --bs-primary-text-emphasis: #052c65;\n --bs-secondary-text-emphasis: #2b2f32;\n --bs-success-text-emphasis: #0a3622;\n --bs-info-text-emphasis: #055160;\n --bs-warning-text-emphasis: #664d03;\n --bs-danger-text-emphasis: #58151c;\n --bs-light-text-emphasis: #495057;\n --bs-dark-text-emphasis: #495057;\n --bs-primary-bg-subtle: #cfe2ff;\n --bs-secondary-bg-subtle: #e2e3e5;\n --bs-success-bg-subtle: #d1e7dd;\n --bs-info-bg-subtle: #cff4fc;\n --bs-warning-bg-subtle: #fff3cd;\n --bs-danger-bg-subtle: #f8d7da;\n --bs-light-bg-subtle: #fcfcfd;\n --bs-dark-bg-subtle: #ced4da;\n --bs-primary-border-subtle: #9ec5fe;\n --bs-secondary-border-subtle: #c4c8cb;\n --bs-success-border-subtle: #a3cfbb;\n --bs-info-border-subtle: #9eeaf9;\n --bs-warning-border-subtle: #ffe69c;\n --bs-danger-border-subtle: #f1aeb5;\n --bs-light-border-subtle: #e9ecef;\n --bs-dark-border-subtle: #adb5bd;\n --bs-white-rgb: 255, 255, 255;\n --bs-black-rgb: 0, 0, 0;\n --bs-font-sans-serif: system-ui, -apple-system, \"Segoe UI\", Roboto, \"Helvetica Neue\", \"Noto Sans\", \"Liberation Sans\", Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));\n --bs-body-font-family: var(--bs-font-sans-serif);\n --bs-body-font-size: 1rem;\n --bs-body-font-weight: 400;\n --bs-body-line-height: 1.5;\n --bs-body-color: #212529;\n --bs-body-color-rgb: 33, 37, 41;\n --bs-body-bg: #fff;\n --bs-body-bg-rgb: 255, 255, 255;\n --bs-emphasis-color: #000;\n --bs-emphasis-color-rgb: 0, 0, 0;\n --bs-secondary-color: rgba(33, 37, 41, 0.75);\n --bs-secondary-color-rgb: 33, 37, 41;\n --bs-secondary-bg: #e9ecef;\n --bs-secondary-bg-rgb: 233, 236, 239;\n --bs-tertiary-color: rgba(33, 37, 41, 0.5);\n --bs-tertiary-color-rgb: 33, 37, 41;\n --bs-tertiary-bg: #f8f9fa;\n --bs-tertiary-bg-rgb: 248, 249, 250;\n --bs-heading-color: inherit;\n --bs-link-color: #0d6efd;\n --bs-link-color-rgb: 13, 110, 253;\n --bs-link-decoration: underline;\n --bs-link-hover-color: #0a58ca;\n --bs-link-hover-color-rgb: 10, 88, 202;\n --bs-code-color: #d63384;\n --bs-highlight-bg: #fff3cd;\n --bs-border-width: 1px;\n --bs-border-style: solid;\n --bs-border-color: #dee2e6;\n --bs-border-color-translucent: rgba(0, 0, 0, 0.175);\n --bs-border-radius: 0.375rem;\n --bs-border-radius-sm: 0.25rem;\n --bs-border-radius-lg: 0.5rem;\n --bs-border-radius-xl: 1rem;\n --bs-border-radius-xxl: 2rem;\n --bs-border-radius-2xl: var(--bs-border-radius-xxl);\n --bs-border-radius-pill: 50rem;\n --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);\n --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);\n --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);\n --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);\n --bs-focus-ring-width: 0.25rem;\n --bs-focus-ring-opacity: 0.25;\n --bs-focus-ring-color: rgba(13, 110, 253, 0.25);\n --bs-form-valid-color: #198754;\n --bs-form-valid-border-color: #198754;\n --bs-form-invalid-color: #dc3545;\n --bs-form-invalid-border-color: #dc3545;\n}\n[data-bs-theme=dark] {\n color-scheme: dark;\n --bs-body-color: #adb5bd;\n --bs-body-color-rgb: 173, 181, 189;\n --bs-body-bg: #212529;\n --bs-body-bg-rgb: 33, 37, 41;\n --bs-emphasis-color: #fff;\n --bs-emphasis-color-rgb: 255, 255, 255;\n --bs-secondary-color: rgba(173, 181, 189, 0.75);\n --bs-secondary-color-rgb: 173, 181, 189;\n --bs-secondary-bg: #343a40;\n --bs-secondary-bg-rgb: 52, 58, 64;\n --bs-tertiary-color: rgba(173, 181, 189, 0.5);\n --bs-tertiary-color-rgb: 173, 181, 189;\n --bs-tertiary-bg: #2b3035;\n --bs-tertiary-bg-rgb: 43, 48, 53;\n --bs-primary-text-emphasis: #6ea8fe;\n --bs-secondary-text-emphasis: #a7acb1;\n --bs-success-text-emphasis: #75b798;\n --bs-info-text-emphasis: #6edff6;\n --bs-warning-text-emphasis: #ffda6a;\n --bs-danger-text-emphasis: #ea868f;\n --bs-light-text-emphasis: #f8f9fa;\n --bs-dark-text-emphasis: #dee2e6;\n --bs-primary-bg-subtle: #031633;\n --bs-secondary-bg-subtle: #161719;\n --bs-success-bg-subtle: #051b11;\n --bs-info-bg-subtle: #032830;\n --bs-warning-bg-subtle: #332701;\n --bs-danger-bg-subtle: #2c0b0e;\n --bs-light-bg-subtle: #343a40;\n --bs-dark-bg-subtle: #1a1d20;\n --bs-primary-border-subtle: #084298;\n --bs-secondary-border-subtle: #41464b;\n --bs-success-border-subtle: #0f5132;\n --bs-info-border-subtle: #087990;\n --bs-warning-border-subtle: #997404;\n --bs-danger-border-subtle: #842029;\n --bs-light-border-subtle: #495057;\n --bs-dark-border-subtle: #343a40;\n --bs-heading-color: inherit;\n --bs-link-color: #6ea8fe;\n --bs-link-hover-color: #8bb9fe;\n --bs-link-color-rgb: 110, 168, 254;\n --bs-link-hover-color-rgb: 139, 185, 254;\n --bs-code-color: #e685b5;\n --bs-border-color: #495057;\n --bs-border-color-translucent: rgba(255, 255, 255, 0.15);\n --bs-form-valid-color: #75b798;\n --bs-form-valid-border-color: #75b798;\n --bs-form-invalid-color: #ea868f;\n --bs-form-invalid-border-color: #ea868f;\n}\n*,\n*::before,\n*::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n@media (prefers-reduced-motion: no-preference) {\n :root {\n scroll-behavior: smooth;\n }\n}\nbody {\n margin: 0;\n font-family: var(--bs-body-font-family);\n font-size: var(--bs-body-font-size);\n font-weight: var(--bs-body-font-weight);\n line-height: var(--bs-body-line-height);\n color: var(--bs-body-color);\n text-align: var(--bs-body-text-align);\n background-color: var(--bs-body-bg);\n -webkit-text-size-adjust: 100%;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\nhr {\n margin: 1rem 0;\n color: inherit;\n border: 0;\n border-top: var(--bs-border-width) solid;\n opacity: 0.25;\n}\nh6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 {\n margin-top: 0;\n margin-bottom: 0.5rem;\n font-weight: 500;\n line-height: 1.2;\n color: var(--bs-heading-color);\n}\nh1, .h1 {\n font-size: calc(1.375rem + 1.5vw);\n}\n@media (min-width: 1200px) {\n h1, .h1 {\n font-size: 2.5rem;\n }\n}\nh2, .h2 {\n font-size: calc(1.325rem + 0.9vw);\n}\n@media (min-width: 1200px) {\n h2, .h2 {\n font-size: 2rem;\n }\n}\nh3, .h3 {\n font-size: calc(1.3rem + 0.6vw);\n}\n@media (min-width: 1200px) {\n h3, .h3 {\n font-size: 1.75rem;\n }\n}\nh4, .h4 {\n font-size: calc(1.275rem + 0.3vw);\n}\n@media (min-width: 1200px) {\n h4, .h4 {\n font-size: 1.5rem;\n }\n}\nh5, .h5 {\n font-size: 1.25rem;\n}\nh6, .h6 {\n font-size: 1rem;\n}\np {\n margin-top: 0;\n margin-bottom: 1rem;\n}\nabbr[title] {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n cursor: help;\n -webkit-text-decoration-skip-ink: none;\n text-decoration-skip-ink: none;\n}\naddress {\n margin-bottom: 1rem;\n font-style: normal;\n line-height: inherit;\n}\nol,\nul {\n padding-left: 2rem;\n}\nol,\nul,\ndl {\n margin-top: 0;\n margin-bottom: 1rem;\n}\nol ol,\nul ul,\nol ul,\nul ol {\n margin-bottom: 0;\n}\ndt {\n font-weight: 700;\n}\ndd {\n margin-bottom: 0.5rem;\n margin-left: 0;\n}\nblockquote {\n margin: 0 0 1rem;\n}\nb,\nstrong {\n font-weight: bolder;\n}\nsmall, .small {\n font-size: 0.875em;\n}\nmark, .mark {\n padding: 0.1875em;\n background-color: var(--bs-highlight-bg);\n}\nsub,\nsup {\n position: relative;\n font-size: 0.75em;\n line-height: 0;\n vertical-align: baseline;\n}\nsub {\n bottom: -0.25em;\n}\nsup {\n top: -0.5em;\n}\na {\n color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1));\n text-decoration: underline;\n}\na:hover {\n --bs-link-color-rgb: var(--bs-link-hover-color-rgb);\n}\na:not([href]):not([class]), a:not([href]):not([class]):hover {\n color: inherit;\n text-decoration: none;\n}\npre,\ncode,\nkbd,\nsamp {\n font-family: var(--bs-font-monospace);\n font-size: 1em;\n}\npre {\n display: block;\n margin-top: 0;\n margin-bottom: 1rem;\n overflow: auto;\n font-size: 0.875em;\n}\npre code {\n font-size: inherit;\n color: inherit;\n word-break: normal;\n}\ncode {\n font-size: 0.875em;\n color: var(--bs-code-color);\n word-wrap: break-word;\n}\na > code {\n color: inherit;\n}\nkbd {\n padding: 0.1875rem 0.375rem;\n font-size: 0.875em;\n color: var(--bs-body-bg);\n background-color: var(--bs-body-color);\n border-radius: 0.25rem;\n}\nkbd kbd {\n padding: 0;\n font-size: 1em;\n}\nfigure {\n margin: 0 0 1rem;\n}\nimg,\nsvg {\n vertical-align: middle;\n}\ntable {\n caption-side: bottom;\n border-collapse: collapse;\n}\ncaption {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n color: var(--bs-secondary-color);\n text-align: left;\n}\nth {\n text-align: inherit;\n text-align: -webkit-match-parent;\n}\nthead,\ntbody,\ntfoot,\ntr,\ntd,\nth {\n border-color: inherit;\n border-style: solid;\n border-width: 0;\n}\nlabel {\n display: inline-block;\n}\nbutton {\n border-radius: 0;\n}\nbutton:focus:not(:focus-visible) {\n outline: 0;\n}\ninput,\nbutton,\nselect,\noptgroup,\ntextarea {\n margin: 0;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\nbutton,\nselect {\n text-transform: none;\n}\n[role=button] {\n cursor: pointer;\n}\nselect {\n word-wrap: normal;\n}\nselect:disabled {\n opacity: 1;\n}\n[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator {\n display: none !important;\n}\nbutton,\n[type=button],\n[type=reset],\n[type=submit] {\n -webkit-appearance: button;\n}\nbutton:not(:disabled),\n[type=button]:not(:disabled),\n[type=reset]:not(:disabled),\n[type=submit]:not(:disabled) {\n cursor: pointer;\n}\n::-moz-focus-inner {\n padding: 0;\n border-style: none;\n}\ntextarea {\n resize: vertical;\n}\nfieldset {\n min-width: 0;\n padding: 0;\n margin: 0;\n border: 0;\n}\nlegend {\n float: left;\n width: 100%;\n padding: 0;\n margin-bottom: 0.5rem;\n font-size: calc(1.275rem + 0.3vw);\n line-height: inherit;\n}\n@media (min-width: 1200px) {\n legend {\n font-size: 1.5rem;\n }\n}\nlegend + * {\n clear: left;\n}\n::-webkit-datetime-edit-fields-wrapper,\n::-webkit-datetime-edit-text,\n::-webkit-datetime-edit-minute,\n::-webkit-datetime-edit-hour-field,\n::-webkit-datetime-edit-day-field,\n::-webkit-datetime-edit-month-field,\n::-webkit-datetime-edit-year-field {\n padding: 0;\n}\n::-webkit-inner-spin-button {\n height: auto;\n}\n[type=search] {\n outline-offset: -2px;\n -webkit-appearance: textfield;\n}\n/* rtl:raw:\n[type=\"tel\"],\n[type=\"url\"],\n[type=\"email\"],\n[type=\"number\"] {\n direction: ltr;\n}\n*/\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n::-webkit-color-swatch-wrapper {\n padding: 0;\n}\n::-webkit-file-upload-button {\n font: inherit;\n -webkit-appearance: button;\n}\n::file-selector-button {\n font: inherit;\n -webkit-appearance: button;\n}\noutput {\n display: inline-block;\n}\niframe {\n border: 0;\n}\nsummary {\n display: list-item;\n cursor: pointer;\n}\nprogress {\n vertical-align: baseline;\n}\n[hidden] {\n display: none !important;\n}\n.lead {\n font-size: 1.25rem;\n font-weight: 300;\n}\n.display-1 {\n font-size: calc(1.625rem + 4.5vw);\n font-weight: 300;\n line-height: 1.2;\n}\n@media (min-width: 1200px) {\n .display-1 {\n font-size: 5rem;\n }\n}\n.display-2 {\n font-size: calc(1.575rem + 3.9vw);\n font-weight: 300;\n line-height: 1.2;\n}\n@media (min-width: 1200px) {\n .display-2 {\n font-size: 4.5rem;\n }\n}\n.display-3 {\n font-size: calc(1.525rem + 3.3vw);\n font-weight: 300;\n line-height: 1.2;\n}\n@media (min-width: 1200px) {\n .display-3 {\n font-size: 4rem;\n }\n}\n.display-4 {\n font-size: calc(1.475rem + 2.7vw);\n font-weight: 300;\n line-height: 1.2;\n}\n@media (min-width: 1200px) {\n .display-4 {\n font-size: 3.5rem;\n }\n}\n.display-5 {\n font-size: calc(1.425rem + 2.1vw);\n font-weight: 300;\n line-height: 1.2;\n}\n@media (min-width: 1200px) {\n .display-5 {\n font-size: 3rem;\n }\n}\n.display-6 {\n font-size: calc(1.375rem + 1.5vw);\n font-weight: 300;\n line-height: 1.2;\n}\n@media (min-width: 1200px) {\n .display-6 {\n font-size: 2.5rem;\n }\n}\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n.list-inline {\n padding-left: 0;\n list-style: none;\n}\n.list-inline-item {\n display: inline-block;\n}\n.list-inline-item:not(:last-child) {\n margin-right: 0.5rem;\n}\n.initialism {\n font-size: 0.875em;\n text-transform: uppercase;\n}\n.blockquote {\n margin-bottom: 1rem;\n font-size: 1.25rem;\n}\n.blockquote > :last-child {\n margin-bottom: 0;\n}\n.blockquote-footer {\n margin-top: -1rem;\n margin-bottom: 1rem;\n font-size: 0.875em;\n color: #6c757d;\n}\n.blockquote-footer::before {\n content: \"\\2014\\A0\";\n}\n.img-fluid {\n max-width: 100%;\n height: auto;\n}\n.img-thumbnail {\n padding: 0.25rem;\n background-color: var(--bs-body-bg);\n border: var(--bs-border-width) solid var(--bs-border-color);\n border-radius: var(--bs-border-radius);\n max-width: 100%;\n height: auto;\n}\n.figure {\n display: inline-block;\n}\n.figure-img {\n margin-bottom: 0.5rem;\n line-height: 1;\n}\n.figure-caption {\n font-size: 0.875em;\n color: var(--bs-secondary-color);\n}\n.container,\n.container-fluid,\n.container-xxl,\n.container-xl,\n.container-lg,\n.container-md,\n.container-sm {\n --bs-gutter-x: 1.5rem;\n --bs-gutter-y: 0;\n width: 100%;\n padding-right: calc(var(--bs-gutter-x) * 0.5);\n padding-left: calc(var(--bs-gutter-x) * 0.5);\n margin-right: auto;\n margin-left: auto;\n}\n@media (min-width: 576px) {\n .container-sm, .container {\n max-width: 540px;\n }\n}\n@media (min-width: 768px) {\n .container-md, .container-sm, .container {\n max-width: 720px;\n }\n}\n@media (min-width: 992px) {\n .container-lg, .container-md, .container-sm, .container {\n max-width: 960px;\n }\n}\n@media (min-width: 1200px) {\n .container-xl, .container-lg, .container-md, .container-sm, .container {\n max-width: 1140px;\n }\n}\n@media (min-width: 1400px) {\n .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {\n max-width: 1320px;\n }\n}\n:root {\n --bs-breakpoint-xs: 0;\n --bs-breakpoint-sm: 576px;\n --bs-breakpoint-md: 768px;\n --bs-breakpoint-lg: 992px;\n --bs-breakpoint-xl: 1200px;\n --bs-breakpoint-xxl: 1400px;\n}\n.row {\n --bs-gutter-x: 1.5rem;\n --bs-gutter-y: 0;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n margin-top: calc(-1 * var(--bs-gutter-y));\n margin-right: calc(-0.5 * var(--bs-gutter-x));\n margin-left: calc(-0.5 * var(--bs-gutter-x));\n}\n.row > * {\n -ms-flex-negative: 0;\n flex-shrink: 0;\n width: 100%;\n max-width: 100%;\n padding-right: calc(var(--bs-gutter-x) * 0.5);\n padding-left: calc(var(--bs-gutter-x) * 0.5);\n margin-top: var(--bs-gutter-y);\n}\n.col {\n -webkit-box-flex: 1;\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n}\n.row-cols-auto > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n}\n.row-cols-1 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n}\n.row-cols-2 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n}\n.row-cols-3 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.3333333333%;\n}\n.row-cols-4 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n}\n.row-cols-5 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 20%;\n}\n.row-cols-6 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.6666666667%;\n}\n.col-auto {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n}\n.col-1 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 8.33333333%;\n}\n.col-2 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.66666667%;\n}\n.col-3 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n}\n.col-4 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.33333333%;\n}\n.col-5 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 41.66666667%;\n}\n.col-6 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n}\n.col-7 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 58.33333333%;\n}\n.col-8 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 66.66666667%;\n}\n.col-9 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 75%;\n}\n.col-10 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 83.33333333%;\n}\n.col-11 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 91.66666667%;\n}\n.col-12 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n}\n.offset-1 {\n margin-left: 8.33333333%;\n}\n.offset-2 {\n margin-left: 16.66666667%;\n}\n.offset-3 {\n margin-left: 25%;\n}\n.offset-4 {\n margin-left: 33.33333333%;\n}\n.offset-5 {\n margin-left: 41.66666667%;\n}\n.offset-6 {\n margin-left: 50%;\n}\n.offset-7 {\n margin-left: 58.33333333%;\n}\n.offset-8 {\n margin-left: 66.66666667%;\n}\n.offset-9 {\n margin-left: 75%;\n}\n.offset-10 {\n margin-left: 83.33333333%;\n}\n.offset-11 {\n margin-left: 91.66666667%;\n}\n.g-0,\n.gx-0 {\n --bs-gutter-x: 0;\n}\n.g-0,\n.gy-0 {\n --bs-gutter-y: 0;\n}\n.g-1,\n.gx-1 {\n --bs-gutter-x: 0.25rem;\n}\n.g-1,\n.gy-1 {\n --bs-gutter-y: 0.25rem;\n}\n.g-2,\n.gx-2 {\n --bs-gutter-x: 0.5rem;\n}\n.g-2,\n.gy-2 {\n --bs-gutter-y: 0.5rem;\n}\n.g-3,\n.gx-3 {\n --bs-gutter-x: 1rem;\n}\n.g-3,\n.gy-3 {\n --bs-gutter-y: 1rem;\n}\n.g-4,\n.gx-4 {\n --bs-gutter-x: 1.5rem;\n}\n.g-4,\n.gy-4 {\n --bs-gutter-y: 1.5rem;\n}\n.g-5,\n.gx-5 {\n --bs-gutter-x: 3rem;\n}\n.g-5,\n.gy-5 {\n --bs-gutter-y: 3rem;\n}\n@media (min-width: 576px) {\n .col-sm {\n -webkit-box-flex: 1;\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n }\n .row-cols-sm-auto > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-sm-1 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-sm-2 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-sm-3 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-sm-4 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-sm-5 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-sm-6 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-sm-auto {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .col-sm-1 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-sm-2 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-sm-3 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .col-sm-4 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-sm-5 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-sm-6 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .col-sm-7 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-sm-8 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-sm-9 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 75%;\n }\n .col-sm-10 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-sm-11 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-sm-12 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-sm-0 {\n margin-left: 0;\n }\n .offset-sm-1 {\n margin-left: 8.33333333%;\n }\n .offset-sm-2 {\n margin-left: 16.66666667%;\n }\n .offset-sm-3 {\n margin-left: 25%;\n }\n .offset-sm-4 {\n margin-left: 33.33333333%;\n }\n .offset-sm-5 {\n margin-left: 41.66666667%;\n }\n .offset-sm-6 {\n margin-left: 50%;\n }\n .offset-sm-7 {\n margin-left: 58.33333333%;\n }\n .offset-sm-8 {\n margin-left: 66.66666667%;\n }\n .offset-sm-9 {\n margin-left: 75%;\n }\n .offset-sm-10 {\n margin-left: 83.33333333%;\n }\n .offset-sm-11 {\n margin-left: 91.66666667%;\n }\n .g-sm-0,\n .gx-sm-0 {\n --bs-gutter-x: 0;\n }\n .g-sm-0,\n .gy-sm-0 {\n --bs-gutter-y: 0;\n }\n .g-sm-1,\n .gx-sm-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-sm-1,\n .gy-sm-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-sm-2,\n .gx-sm-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-sm-2,\n .gy-sm-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-sm-3,\n .gx-sm-3 {\n --bs-gutter-x: 1rem;\n }\n .g-sm-3,\n .gy-sm-3 {\n --bs-gutter-y: 1rem;\n }\n .g-sm-4,\n .gx-sm-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-sm-4,\n .gy-sm-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-sm-5,\n .gx-sm-5 {\n --bs-gutter-x: 3rem;\n }\n .g-sm-5,\n .gy-sm-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 768px) {\n .col-md {\n -webkit-box-flex: 1;\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n }\n .row-cols-md-auto > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-md-1 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-md-2 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-md-3 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-md-4 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-md-5 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-md-6 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-md-auto {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .col-md-1 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-md-2 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-md-3 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .col-md-4 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-md-5 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-md-6 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .col-md-7 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-md-8 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-md-9 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 75%;\n }\n .col-md-10 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-md-11 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-md-12 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-md-0 {\n margin-left: 0;\n }\n .offset-md-1 {\n margin-left: 8.33333333%;\n }\n .offset-md-2 {\n margin-left: 16.66666667%;\n }\n .offset-md-3 {\n margin-left: 25%;\n }\n .offset-md-4 {\n margin-left: 33.33333333%;\n }\n .offset-md-5 {\n margin-left: 41.66666667%;\n }\n .offset-md-6 {\n margin-left: 50%;\n }\n .offset-md-7 {\n margin-left: 58.33333333%;\n }\n .offset-md-8 {\n margin-left: 66.66666667%;\n }\n .offset-md-9 {\n margin-left: 75%;\n }\n .offset-md-10 {\n margin-left: 83.33333333%;\n }\n .offset-md-11 {\n margin-left: 91.66666667%;\n }\n .g-md-0,\n .gx-md-0 {\n --bs-gutter-x: 0;\n }\n .g-md-0,\n .gy-md-0 {\n --bs-gutter-y: 0;\n }\n .g-md-1,\n .gx-md-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-md-1,\n .gy-md-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-md-2,\n .gx-md-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-md-2,\n .gy-md-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-md-3,\n .gx-md-3 {\n --bs-gutter-x: 1rem;\n }\n .g-md-3,\n .gy-md-3 {\n --bs-gutter-y: 1rem;\n }\n .g-md-4,\n .gx-md-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-md-4,\n .gy-md-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-md-5,\n .gx-md-5 {\n --bs-gutter-x: 3rem;\n }\n .g-md-5,\n .gy-md-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 992px) {\n .col-lg {\n -webkit-box-flex: 1;\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n }\n .row-cols-lg-auto > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-lg-1 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-lg-2 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-lg-3 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-lg-4 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-lg-5 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-lg-6 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-lg-auto {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .col-lg-1 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-lg-2 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-lg-3 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .col-lg-4 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-lg-5 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-lg-6 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .col-lg-7 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-lg-8 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-lg-9 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 75%;\n }\n .col-lg-10 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-lg-11 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-lg-12 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-lg-0 {\n margin-left: 0;\n }\n .offset-lg-1 {\n margin-left: 8.33333333%;\n }\n .offset-lg-2 {\n margin-left: 16.66666667%;\n }\n .offset-lg-3 {\n margin-left: 25%;\n }\n .offset-lg-4 {\n margin-left: 33.33333333%;\n }\n .offset-lg-5 {\n margin-left: 41.66666667%;\n }\n .offset-lg-6 {\n margin-left: 50%;\n }\n .offset-lg-7 {\n margin-left: 58.33333333%;\n }\n .offset-lg-8 {\n margin-left: 66.66666667%;\n }\n .offset-lg-9 {\n margin-left: 75%;\n }\n .offset-lg-10 {\n margin-left: 83.33333333%;\n }\n .offset-lg-11 {\n margin-left: 91.66666667%;\n }\n .g-lg-0,\n .gx-lg-0 {\n --bs-gutter-x: 0;\n }\n .g-lg-0,\n .gy-lg-0 {\n --bs-gutter-y: 0;\n }\n .g-lg-1,\n .gx-lg-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-lg-1,\n .gy-lg-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-lg-2,\n .gx-lg-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-lg-2,\n .gy-lg-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-lg-3,\n .gx-lg-3 {\n --bs-gutter-x: 1rem;\n }\n .g-lg-3,\n .gy-lg-3 {\n --bs-gutter-y: 1rem;\n }\n .g-lg-4,\n .gx-lg-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-lg-4,\n .gy-lg-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-lg-5,\n .gx-lg-5 {\n --bs-gutter-x: 3rem;\n }\n .g-lg-5,\n .gy-lg-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 1200px) {\n .col-xl {\n -webkit-box-flex: 1;\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n }\n .row-cols-xl-auto > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-xl-1 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-xl-2 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-xl-3 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-xl-4 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-xl-5 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-xl-6 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-xl-auto {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .col-xl-1 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-xl-2 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-xl-3 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .col-xl-4 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-xl-5 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-xl-6 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .col-xl-7 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-xl-8 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-xl-9 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 75%;\n }\n .col-xl-10 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-xl-11 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-xl-12 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-xl-0 {\n margin-left: 0;\n }\n .offset-xl-1 {\n margin-left: 8.33333333%;\n }\n .offset-xl-2 {\n margin-left: 16.66666667%;\n }\n .offset-xl-3 {\n margin-left: 25%;\n }\n .offset-xl-4 {\n margin-left: 33.33333333%;\n }\n .offset-xl-5 {\n margin-left: 41.66666667%;\n }\n .offset-xl-6 {\n margin-left: 50%;\n }\n .offset-xl-7 {\n margin-left: 58.33333333%;\n }\n .offset-xl-8 {\n margin-left: 66.66666667%;\n }\n .offset-xl-9 {\n margin-left: 75%;\n }\n .offset-xl-10 {\n margin-left: 83.33333333%;\n }\n .offset-xl-11 {\n margin-left: 91.66666667%;\n }\n .g-xl-0,\n .gx-xl-0 {\n --bs-gutter-x: 0;\n }\n .g-xl-0,\n .gy-xl-0 {\n --bs-gutter-y: 0;\n }\n .g-xl-1,\n .gx-xl-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-xl-1,\n .gy-xl-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-xl-2,\n .gx-xl-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-xl-2,\n .gy-xl-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-xl-3,\n .gx-xl-3 {\n --bs-gutter-x: 1rem;\n }\n .g-xl-3,\n .gy-xl-3 {\n --bs-gutter-y: 1rem;\n }\n .g-xl-4,\n .gx-xl-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-xl-4,\n .gy-xl-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-xl-5,\n .gx-xl-5 {\n --bs-gutter-x: 3rem;\n }\n .g-xl-5,\n .gy-xl-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 1400px) {\n .col-xxl {\n -webkit-box-flex: 1;\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n }\n .row-cols-xxl-auto > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-xxl-1 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-xxl-2 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-xxl-3 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-xxl-4 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-xxl-5 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-xxl-6 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-xxl-auto {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .col-xxl-1 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-xxl-2 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-xxl-3 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .col-xxl-4 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-xxl-5 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-xxl-6 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .col-xxl-7 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-xxl-8 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-xxl-9 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 75%;\n }\n .col-xxl-10 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-xxl-11 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-xxl-12 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-xxl-0 {\n margin-left: 0;\n }\n .offset-xxl-1 {\n margin-left: 8.33333333%;\n }\n .offset-xxl-2 {\n margin-left: 16.66666667%;\n }\n .offset-xxl-3 {\n margin-left: 25%;\n }\n .offset-xxl-4 {\n margin-left: 33.33333333%;\n }\n .offset-xxl-5 {\n margin-left: 41.66666667%;\n }\n .offset-xxl-6 {\n margin-left: 50%;\n }\n .offset-xxl-7 {\n margin-left: 58.33333333%;\n }\n .offset-xxl-8 {\n margin-left: 66.66666667%;\n }\n .offset-xxl-9 {\n margin-left: 75%;\n }\n .offset-xxl-10 {\n margin-left: 83.33333333%;\n }\n .offset-xxl-11 {\n margin-left: 91.66666667%;\n }\n .g-xxl-0,\n .gx-xxl-0 {\n --bs-gutter-x: 0;\n }\n .g-xxl-0,\n .gy-xxl-0 {\n --bs-gutter-y: 0;\n }\n .g-xxl-1,\n .gx-xxl-1 {\n --bs-gutter-x: 0.25rem;\n }\n .g-xxl-1,\n .gy-xxl-1 {\n --bs-gutter-y: 0.25rem;\n }\n .g-xxl-2,\n .gx-xxl-2 {\n --bs-gutter-x: 0.5rem;\n }\n .g-xxl-2,\n .gy-xxl-2 {\n --bs-gutter-y: 0.5rem;\n }\n .g-xxl-3,\n .gx-xxl-3 {\n --bs-gutter-x: 1rem;\n }\n .g-xxl-3,\n .gy-xxl-3 {\n --bs-gutter-y: 1rem;\n }\n .g-xxl-4,\n .gx-xxl-4 {\n --bs-gutter-x: 1.5rem;\n }\n .g-xxl-4,\n .gy-xxl-4 {\n --bs-gutter-y: 1.5rem;\n }\n .g-xxl-5,\n .gx-xxl-5 {\n --bs-gutter-x: 3rem;\n }\n .g-xxl-5,\n .gy-xxl-5 {\n --bs-gutter-y: 3rem;\n }\n}\n.table {\n --bs-table-color-type: initial;\n --bs-table-bg-type: initial;\n --bs-table-color-state: initial;\n --bs-table-bg-state: initial;\n --bs-table-color: var(--bs-body-color);\n --bs-table-bg: var(--bs-body-bg);\n --bs-table-border-color: var(--bs-border-color);\n --bs-table-accent-bg: transparent;\n --bs-table-striped-color: var(--bs-body-color);\n --bs-table-striped-bg: rgba(0, 0, 0, 0.05);\n --bs-table-active-color: var(--bs-body-color);\n --bs-table-active-bg: rgba(0, 0, 0, 0.1);\n --bs-table-hover-color: var(--bs-body-color);\n --bs-table-hover-bg: rgba(0, 0, 0, 0.075);\n width: 100%;\n margin-bottom: 1rem;\n vertical-align: top;\n border-color: var(--bs-table-border-color);\n}\n.table > :not(caption) > * > * {\n padding: 0.5rem 0.5rem;\n color: var(--bs-table-color-state, var(--bs-table-color-type, var(--bs-table-color)));\n background-color: var(--bs-table-bg);\n border-bottom-width: var(--bs-border-width);\n -webkit-box-shadow: inset 0 0 0 9999px var(--bs-table-bg-state, var(--bs-table-bg-type, var(--bs-table-accent-bg)));\n box-shadow: inset 0 0 0 9999px var(--bs-table-bg-state, var(--bs-table-bg-type, var(--bs-table-accent-bg)));\n}\n.table > tbody {\n vertical-align: inherit;\n}\n.table > thead {\n vertical-align: bottom;\n}\n.table-group-divider {\n border-top: calc(var(--bs-border-width) * 2) solid currentcolor;\n}\n.caption-top {\n caption-side: top;\n}\n.table-sm > :not(caption) > * > * {\n padding: 0.25rem 0.25rem;\n}\n.table-bordered > :not(caption) > * {\n border-width: var(--bs-border-width) 0;\n}\n.table-bordered > :not(caption) > * > * {\n border-width: 0 var(--bs-border-width);\n}\n.table-borderless > :not(caption) > * > * {\n border-bottom-width: 0;\n}\n.table-borderless > :not(:first-child) {\n border-top-width: 0;\n}\n.table-striped > tbody > tr:nth-of-type(odd) > * {\n --bs-table-color-type: var(--bs-table-striped-color);\n --bs-table-bg-type: var(--bs-table-striped-bg);\n}\n.table-striped-columns > :not(caption) > tr > :nth-child(even) {\n --bs-table-color-type: var(--bs-table-striped-color);\n --bs-table-bg-type: var(--bs-table-striped-bg);\n}\n.table-active {\n --bs-table-color-state: var(--bs-table-active-color);\n --bs-table-bg-state: var(--bs-table-active-bg);\n}\n.table-hover > tbody > tr:hover > * {\n --bs-table-color-state: var(--bs-table-hover-color);\n --bs-table-bg-state: var(--bs-table-hover-bg);\n}\n.table-primary {\n --bs-table-color: #000;\n --bs-table-bg: #cfe2ff;\n --bs-table-border-color: #bacbe6;\n --bs-table-striped-bg: #c5d7f2;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #bacbe6;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #bfd1ec;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n.table-secondary {\n --bs-table-color: #000;\n --bs-table-bg: #e2e3e5;\n --bs-table-border-color: #cbccce;\n --bs-table-striped-bg: #d7d8da;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #cbccce;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #d1d2d4;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n.table-success {\n --bs-table-color: #000;\n --bs-table-bg: #d1e7dd;\n --bs-table-border-color: #bcd0c7;\n --bs-table-striped-bg: #c7dbd2;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #bcd0c7;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #c1d6cc;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n.table-info {\n --bs-table-color: #000;\n --bs-table-bg: #cff4fc;\n --bs-table-border-color: #badce3;\n --bs-table-striped-bg: #c5e8ef;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #badce3;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #bfe2e9;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n.table-warning {\n --bs-table-color: #000;\n --bs-table-bg: #fff3cd;\n --bs-table-border-color: #e6dbb9;\n --bs-table-striped-bg: #f2e7c3;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #e6dbb9;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #ece1be;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n.table-danger {\n --bs-table-color: #000;\n --bs-table-bg: #f8d7da;\n --bs-table-border-color: #dfc2c4;\n --bs-table-striped-bg: #eccccf;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #dfc2c4;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #e5c7ca;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n.table-light {\n --bs-table-color: #000;\n --bs-table-bg: #f8f9fa;\n --bs-table-border-color: #dfe0e1;\n --bs-table-striped-bg: #ecedee;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #dfe0e1;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #e5e6e7;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n.table-dark {\n --bs-table-color: #fff;\n --bs-table-bg: #212529;\n --bs-table-border-color: #373b3e;\n --bs-table-striped-bg: #2c3034;\n --bs-table-striped-color: #fff;\n --bs-table-active-bg: #373b3e;\n --bs-table-active-color: #fff;\n --bs-table-hover-bg: #323539;\n --bs-table-hover-color: #fff;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n.table-responsive {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n}\n@media (max-width: 575.98px) {\n .table-responsive-sm {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 767.98px) {\n .table-responsive-md {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 991.98px) {\n .table-responsive-lg {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 1199.98px) {\n .table-responsive-xl {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 1399.98px) {\n .table-responsive-xxl {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n.form-label {\n margin-bottom: 0.5rem;\n}\n.col-form-label {\n padding-top: calc(0.375rem + var(--bs-border-width));\n padding-bottom: calc(0.375rem + var(--bs-border-width));\n margin-bottom: 0;\n font-size: inherit;\n line-height: 1.5;\n}\n.col-form-label-lg {\n padding-top: calc(0.5rem + var(--bs-border-width));\n padding-bottom: calc(0.5rem + var(--bs-border-width));\n font-size: 1.25rem;\n}\n.col-form-label-sm {\n padding-top: calc(0.25rem + var(--bs-border-width));\n padding-bottom: calc(0.25rem + var(--bs-border-width));\n font-size: 0.875rem;\n}\n.form-text {\n margin-top: 0.25rem;\n font-size: 0.875em;\n color: var(--bs-secondary-color);\n}\n.form-control {\n display: block;\n width: 100%;\n padding: 0.375rem 0.75rem;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: var(--bs-body-color);\n background-color: var(--bs-body-bg);\n background-clip: padding-box;\n border: var(--bs-border-width) solid var(--bs-border-color);\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n border-radius: var(--bs-border-radius);\n -webkit-transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-control {\n -webkit-transition: none;\n transition: none;\n }\n}\n.form-control[type=file] {\n overflow: hidden;\n}\n.form-control[type=file]:not(:disabled):not([readonly]) {\n cursor: pointer;\n}\n.form-control:focus {\n color: var(--bs-body-color);\n background-color: var(--bs-body-bg);\n border-color: #86b7fe;\n outline: 0;\n -webkit-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.form-control::-webkit-date-and-time-value {\n min-width: 85px;\n height: 1.5em;\n margin: 0;\n}\n.form-control::-webkit-datetime-edit {\n display: block;\n padding: 0;\n}\n.form-control::-moz-placeholder {\n color: var(--bs-secondary-color);\n opacity: 1;\n}\n.form-control::-webkit-input-placeholder {\n color: var(--bs-secondary-color);\n opacity: 1;\n}\n.form-control::-ms-input-placeholder {\n color: var(--bs-secondary-color);\n opacity: 1;\n}\n.form-control::placeholder {\n color: var(--bs-secondary-color);\n opacity: 1;\n}\n.form-control:disabled {\n background-color: var(--bs-secondary-bg);\n opacity: 1;\n}\n.form-control::-webkit-file-upload-button {\n padding: 0.375rem 0.75rem;\n margin: -0.375rem -0.75rem;\n -webkit-margin-end: 0.75rem;\n margin-inline-end: 0.75rem;\n color: var(--bs-body-color);\n background-color: var(--bs-tertiary-bg);\n pointer-events: none;\n border-color: inherit;\n border-style: solid;\n border-width: 0;\n border-inline-end-width: var(--bs-border-width);\n border-radius: 0;\n -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n}\n.form-control::file-selector-button {\n padding: 0.375rem 0.75rem;\n margin: -0.375rem -0.75rem;\n -webkit-margin-end: 0.75rem;\n margin-inline-end: 0.75rem;\n color: var(--bs-body-color);\n background-color: var(--bs-tertiary-bg);\n pointer-events: none;\n border-color: inherit;\n border-style: solid;\n border-width: 0;\n border-inline-end-width: var(--bs-border-width);\n border-radius: 0;\n -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-control::-webkit-file-upload-button {\n -webkit-transition: none;\n transition: none;\n }\n .form-control::file-selector-button {\n -webkit-transition: none;\n transition: none;\n }\n}\n.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {\n background-color: var(--bs-secondary-bg);\n}\n.form-control:hover:not(:disabled):not([readonly])::file-selector-button {\n background-color: var(--bs-secondary-bg);\n}\n.form-control-plaintext {\n display: block;\n width: 100%;\n padding: 0.375rem 0;\n margin-bottom: 0;\n line-height: 1.5;\n color: var(--bs-body-color);\n background-color: transparent;\n border: solid transparent;\n border-width: var(--bs-border-width) 0;\n}\n.form-control-plaintext:focus {\n outline: 0;\n}\n.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {\n padding-right: 0;\n padding-left: 0;\n}\n.form-control-sm {\n min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n border-radius: var(--bs-border-radius-sm);\n}\n.form-control-sm::-webkit-file-upload-button {\n padding: 0.25rem 0.5rem;\n margin: -0.25rem -0.5rem;\n -webkit-margin-end: 0.5rem;\n margin-inline-end: 0.5rem;\n}\n.form-control-sm::file-selector-button {\n padding: 0.25rem 0.5rem;\n margin: -0.25rem -0.5rem;\n -webkit-margin-end: 0.5rem;\n margin-inline-end: 0.5rem;\n}\n.form-control-lg {\n min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n border-radius: var(--bs-border-radius-lg);\n}\n.form-control-lg::-webkit-file-upload-button {\n padding: 0.5rem 1rem;\n margin: -0.5rem -1rem;\n -webkit-margin-end: 1rem;\n margin-inline-end: 1rem;\n}\n.form-control-lg::file-selector-button {\n padding: 0.5rem 1rem;\n margin: -0.5rem -1rem;\n -webkit-margin-end: 1rem;\n margin-inline-end: 1rem;\n}\ntextarea.form-control {\n min-height: calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2));\n}\ntextarea.form-control-sm {\n min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));\n}\ntextarea.form-control-lg {\n min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));\n}\n.form-control-color {\n width: 3rem;\n height: calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2));\n padding: 0.375rem;\n}\n.form-control-color:not(:disabled):not([readonly]) {\n cursor: pointer;\n}\n.form-control-color::-moz-color-swatch {\n border: 0 !important;\n border-radius: var(--bs-border-radius);\n}\n.form-control-color::-webkit-color-swatch {\n border: 0 !important;\n border-radius: var(--bs-border-radius);\n}\n.form-control-color.form-control-sm {\n height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));\n}\n.form-control-color.form-control-lg {\n height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));\n}\n.form-select {\n --bs-form-select-bg-img: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e\");\n display: block;\n width: 100%;\n padding: 0.375rem 2.25rem 0.375rem 0.75rem;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: var(--bs-body-color);\n background-color: var(--bs-body-bg);\n background-image: var(--bs-form-select-bg-img), var(--bs-form-select-bg-icon, none);\n background-repeat: no-repeat;\n background-position: right 0.75rem center;\n background-size: 16px 12px;\n border: var(--bs-border-width) solid var(--bs-border-color);\n border-radius: var(--bs-border-radius);\n -webkit-transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-select {\n -webkit-transition: none;\n transition: none;\n }\n}\n.form-select:focus {\n border-color: #86b7fe;\n outline: 0;\n -webkit-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.form-select[multiple], .form-select[size]:not([size=\"1\"]) {\n padding-right: 0.75rem;\n background-image: none;\n}\n.form-select:disabled {\n background-color: var(--bs-secondary-bg);\n}\n.form-select:-moz-focusring {\n color: transparent;\n text-shadow: 0 0 0 var(--bs-body-color);\n}\n.form-select-sm {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n padding-left: 0.5rem;\n font-size: 0.875rem;\n border-radius: var(--bs-border-radius-sm);\n}\n.form-select-lg {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n padding-left: 1rem;\n font-size: 1.25rem;\n border-radius: var(--bs-border-radius-lg);\n}\n[data-bs-theme=dark] .form-select {\n --bs-form-select-bg-img: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23adb5bd' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e\");\n}\n.form-check {\n display: block;\n min-height: 1.5rem;\n padding-left: 1.5em;\n margin-bottom: 0.125rem;\n}\n.form-check .form-check-input {\n float: left;\n margin-left: -1.5em;\n}\n.form-check-reverse {\n padding-right: 1.5em;\n padding-left: 0;\n text-align: right;\n}\n.form-check-reverse .form-check-input {\n float: right;\n margin-right: -1.5em;\n margin-left: 0;\n}\n.form-check-input {\n --bs-form-check-bg: var(--bs-body-bg);\n width: 1em;\n height: 1em;\n margin-top: 0.25em;\n vertical-align: top;\n background-color: var(--bs-form-check-bg);\n background-image: var(--bs-form-check-bg-image);\n background-repeat: no-repeat;\n background-position: center;\n background-size: contain;\n border: var(--bs-border-width) solid var(--bs-border-color);\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n -webkit-print-color-adjust: exact;\n color-adjust: exact;\n print-color-adjust: exact;\n}\n.form-check-input[type=checkbox] {\n border-radius: 0.25em;\n}\n.form-check-input[type=radio] {\n border-radius: 50%;\n}\n.form-check-input:active {\n -webkit-filter: brightness(90%);\n filter: brightness(90%);\n}\n.form-check-input:focus {\n border-color: #86b7fe;\n outline: 0;\n -webkit-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.form-check-input:checked {\n background-color: #0d6efd;\n border-color: #0d6efd;\n}\n.form-check-input:checked[type=checkbox] {\n --bs-form-check-bg-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e\");\n}\n.form-check-input:checked[type=radio] {\n --bs-form-check-bg-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e\");\n}\n.form-check-input[type=checkbox]:indeterminate {\n background-color: #0d6efd;\n border-color: #0d6efd;\n --bs-form-check-bg-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e\");\n}\n.form-check-input:disabled {\n pointer-events: none;\n -webkit-filter: none;\n filter: none;\n opacity: 0.5;\n}\n.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {\n cursor: default;\n opacity: 0.5;\n}\n.form-switch {\n padding-left: 2.5em;\n}\n.form-switch .form-check-input {\n --bs-form-switch-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e\");\n width: 2em;\n margin-left: -2.5em;\n background-image: var(--bs-form-switch-bg);\n background-position: left center;\n border-radius: 2em;\n -webkit-transition: background-position 0.15s ease-in-out;\n transition: background-position 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-switch .form-check-input {\n -webkit-transition: none;\n transition: none;\n }\n}\n.form-switch .form-check-input:focus {\n --bs-form-switch-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e\");\n}\n.form-switch .form-check-input:checked {\n background-position: right center;\n --bs-form-switch-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e\");\n}\n.form-switch.form-check-reverse {\n padding-right: 2.5em;\n padding-left: 0;\n}\n.form-switch.form-check-reverse .form-check-input {\n margin-right: -2.5em;\n margin-left: 0;\n}\n.form-check-inline {\n display: inline-block;\n margin-right: 1rem;\n}\n.btn-check {\n position: absolute;\n clip: rect(0, 0, 0, 0);\n pointer-events: none;\n}\n.btn-check[disabled] + .btn, .btn-check:disabled + .btn {\n pointer-events: none;\n -webkit-filter: none;\n filter: none;\n opacity: 0.65;\n}\n[data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus) {\n --bs-form-switch-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255, 255, 255, 0.25%29'/%3e%3c/svg%3e\");\n}\n.form-range {\n width: 100%;\n height: 1.5rem;\n padding: 0;\n background-color: transparent;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n.form-range:focus {\n outline: 0;\n}\n.form-range:focus::-webkit-slider-thumb {\n -webkit-box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.form-range:focus::-moz-range-thumb {\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.form-range::-moz-focus-outer {\n border: 0;\n}\n.form-range::-webkit-slider-thumb {\n width: 1rem;\n height: 1rem;\n margin-top: -0.25rem;\n background-color: #0d6efd;\n border: 0;\n border-radius: 1rem;\n -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n -webkit-appearance: none;\n appearance: none;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-range::-webkit-slider-thumb {\n -webkit-transition: none;\n transition: none;\n }\n}\n.form-range::-webkit-slider-thumb:active {\n background-color: #b6d4fe;\n}\n.form-range::-webkit-slider-runnable-track {\n width: 100%;\n height: 0.5rem;\n color: transparent;\n cursor: pointer;\n background-color: var(--bs-tertiary-bg);\n border-color: transparent;\n border-radius: 1rem;\n}\n.form-range::-moz-range-thumb {\n width: 1rem;\n height: 1rem;\n background-color: #0d6efd;\n border: 0;\n border-radius: 1rem;\n -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n -moz-appearance: none;\n appearance: none;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-range::-moz-range-thumb {\n -webkit-transition: none;\n transition: none;\n }\n}\n.form-range::-moz-range-thumb:active {\n background-color: #b6d4fe;\n}\n.form-range::-moz-range-track {\n width: 100%;\n height: 0.5rem;\n color: transparent;\n cursor: pointer;\n background-color: var(--bs-tertiary-bg);\n border-color: transparent;\n border-radius: 1rem;\n}\n.form-range:disabled {\n pointer-events: none;\n}\n.form-range:disabled::-webkit-slider-thumb {\n background-color: var(--bs-secondary-color);\n}\n.form-range:disabled::-moz-range-thumb {\n background-color: var(--bs-secondary-color);\n}\n.form-floating {\n position: relative;\n}\n.form-floating > .form-control,\n.form-floating > .form-control-plaintext,\n.form-floating > .form-select {\n height: calc(3.5rem + calc(var(--bs-border-width) * 2));\n min-height: calc(3.5rem + calc(var(--bs-border-width) * 2));\n line-height: 1.25;\n}\n.form-floating > label {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 2;\n height: 100%;\n padding: 1rem 0.75rem;\n overflow: hidden;\n text-align: start;\n text-overflow: ellipsis;\n white-space: nowrap;\n pointer-events: none;\n border: var(--bs-border-width) solid transparent;\n -webkit-transform-origin: 0 0;\n transform-origin: 0 0;\n -webkit-transition: opacity 0.1s ease-in-out, -webkit-transform 0.1s ease-in-out;\n transition: opacity 0.1s ease-in-out, -webkit-transform 0.1s ease-in-out;\n transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out;\n transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out, -webkit-transform 0.1s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-floating > label {\n -webkit-transition: none;\n transition: none;\n }\n}\n.form-floating > .form-control,\n.form-floating > .form-control-plaintext {\n padding: 1rem 0.75rem;\n}\n.form-floating > .form-control::-moz-placeholder, .form-floating > .form-control-plaintext::-moz-placeholder {\n color: transparent;\n}\n.form-floating > .form-control::-webkit-input-placeholder,\n.form-floating > .form-control-plaintext::-webkit-input-placeholder {\n color: transparent;\n}\n.form-floating > .form-control::-moz-placeholder,\n.form-floating > .form-control-plaintext::-moz-placeholder {\n color: transparent;\n}\n.form-floating > .form-control::-ms-input-placeholder,\n.form-floating > .form-control-plaintext::-ms-input-placeholder {\n color: transparent;\n}\n.form-floating > .form-control::placeholder,\n.form-floating > .form-control-plaintext::placeholder {\n color: transparent;\n}\n.form-floating > .form-control:not(:-moz-placeholder-shown), .form-floating > .form-control-plaintext:not(:-moz-placeholder-shown) {\n padding-top: 1.625rem;\n padding-bottom: 0.625rem;\n}\n.form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown),\n.form-floating > .form-control-plaintext:focus,\n.form-floating > .form-control-plaintext:not(:placeholder-shown) {\n padding-top: 1.625rem;\n padding-bottom: 0.625rem;\n}\n.form-floating > .form-control:-webkit-autofill,\n.form-floating > .form-control-plaintext:-webkit-autofill {\n padding-top: 1.625rem;\n padding-bottom: 0.625rem;\n}\n.form-floating > .form-select {\n padding-top: 1.625rem;\n padding-bottom: 0.625rem;\n}\n.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label {\n color: rgba(var(--bs-body-color-rgb), 0.65);\n transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);\n}\n.form-floating > .form-control:focus ~ label,\n.form-floating > .form-control:not(:placeholder-shown) ~ label,\n.form-floating > .form-control-plaintext ~ label,\n.form-floating > .form-select ~ label {\n color: rgba(var(--bs-body-color-rgb), 0.65);\n -webkit-transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);\n transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);\n}\n.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label::after {\n position: absolute;\n inset: 1rem 0.375rem;\n z-index: -1;\n height: 1.5em;\n content: \"\";\n background-color: var(--bs-body-bg);\n border-radius: var(--bs-border-radius);\n}\n.form-floating > .form-control:focus ~ label::after,\n.form-floating > .form-control:not(:placeholder-shown) ~ label::after,\n.form-floating > .form-control-plaintext ~ label::after,\n.form-floating > .form-select ~ label::after {\n position: absolute;\n inset: 1rem 0.375rem;\n z-index: -1;\n height: 1.5em;\n content: \"\";\n background-color: var(--bs-body-bg);\n border-radius: var(--bs-border-radius);\n}\n.form-floating > .form-control:-webkit-autofill ~ label {\n color: rgba(var(--bs-body-color-rgb), 0.65);\n -webkit-transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);\n transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);\n}\n.form-floating > .form-control-plaintext ~ label {\n border-width: var(--bs-border-width) 0;\n}\n.form-floating > :disabled ~ label {\n color: #6c757d;\n}\n.form-floating > :disabled ~ label::after {\n background-color: var(--bs-secondary-bg);\n}\n.input-group {\n position: relative;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -webkit-box-align: stretch;\n -ms-flex-align: stretch;\n align-items: stretch;\n width: 100%;\n}\n.input-group > .form-control,\n.input-group > .form-select,\n.input-group > .form-floating {\n position: relative;\n -webkit-box-flex: 1;\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n width: 1%;\n min-width: 0;\n}\n.input-group > .form-control:focus,\n.input-group > .form-select:focus,\n.input-group > .form-floating:focus-within {\n z-index: 5;\n}\n.input-group .btn {\n position: relative;\n z-index: 2;\n}\n.input-group .btn:focus {\n z-index: 5;\n}\n.input-group-text {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n padding: 0.375rem 0.75rem;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: var(--bs-body-color);\n text-align: center;\n white-space: nowrap;\n background-color: var(--bs-tertiary-bg);\n border: var(--bs-border-width) solid var(--bs-border-color);\n border-radius: var(--bs-border-radius);\n}\n.input-group-lg > .form-control,\n.input-group-lg > .form-select,\n.input-group-lg > .input-group-text,\n.input-group-lg > .btn {\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n border-radius: var(--bs-border-radius-lg);\n}\n.input-group-sm > .form-control,\n.input-group-sm > .form-select,\n.input-group-sm > .input-group-text,\n.input-group-sm > .btn {\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n border-radius: var(--bs-border-radius-sm);\n}\n.input-group-lg > .form-select,\n.input-group-sm > .form-select {\n padding-right: 3rem;\n}\n.input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),\n.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3),\n.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-control,\n.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-select {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.input-group.has-validation > :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),\n.input-group.has-validation > .dropdown-toggle:nth-last-child(n+4),\n.input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-control,\n.input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-select {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {\n margin-left: calc(var(--bs-border-width) * -1);\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.input-group > .form-floating:not(:first-child) > .form-control,\n.input-group > .form-floating:not(:first-child) > .form-select {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.valid-feedback {\n display: none;\n width: 100%;\n margin-top: 0.25rem;\n font-size: 0.875em;\n color: var(--bs-form-valid-color);\n}\n.valid-tooltip {\n position: absolute;\n top: 100%;\n z-index: 5;\n display: none;\n max-width: 100%;\n padding: 0.25rem 0.5rem;\n margin-top: 0.1rem;\n font-size: 0.875rem;\n color: #fff;\n background-color: var(--bs-success);\n border-radius: var(--bs-border-radius);\n}\n.was-validated :valid ~ .valid-feedback,\n.was-validated :valid ~ .valid-tooltip,\n.is-valid ~ .valid-feedback,\n.is-valid ~ .valid-tooltip {\n display: block;\n}\n.was-validated .form-control:valid, .form-control.is-valid {\n border-color: var(--bs-form-valid-border-color);\n padding-right: calc(1.5em + 0.75rem);\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e\");\n background-repeat: no-repeat;\n background-position: right calc(0.375em + 0.1875rem) center;\n background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n.was-validated .form-control:valid:focus, .form-control.is-valid:focus {\n border-color: var(--bs-form-valid-border-color);\n -webkit-box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);\n}\n.was-validated textarea.form-control:valid, textarea.form-control.is-valid {\n padding-right: calc(1.5em + 0.75rem);\n background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);\n}\n.was-validated .form-select:valid, .form-select.is-valid {\n border-color: var(--bs-form-valid-border-color);\n}\n.was-validated .form-select:valid:not([multiple]):not([size]), .was-validated .form-select:valid:not([multiple])[size=\"1\"], .form-select.is-valid:not([multiple]):not([size]), .form-select.is-valid:not([multiple])[size=\"1\"] {\n --bs-form-select-bg-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e\");\n padding-right: 4.125rem;\n background-position: right 0.75rem center, center right 2.25rem;\n background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n.was-validated .form-select:valid:focus, .form-select.is-valid:focus {\n border-color: var(--bs-form-valid-border-color);\n -webkit-box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);\n}\n.was-validated .form-control-color:valid, .form-control-color.is-valid {\n width: calc(3rem + calc(1.5em + 0.75rem));\n}\n.was-validated .form-check-input:valid, .form-check-input.is-valid {\n border-color: var(--bs-form-valid-border-color);\n}\n.was-validated .form-check-input:valid:checked, .form-check-input.is-valid:checked {\n background-color: var(--bs-form-valid-color);\n}\n.was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus {\n -webkit-box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);\n}\n.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {\n color: var(--bs-form-valid-color);\n}\n.form-check-inline .form-check-input ~ .valid-feedback {\n margin-left: 0.5em;\n}\n.was-validated .input-group > .form-control:not(:focus):valid, .input-group > .form-control:not(:focus).is-valid,\n.was-validated .input-group > .form-select:not(:focus):valid,\n.input-group > .form-select:not(:focus).is-valid,\n.was-validated .input-group > .form-floating:not(:focus-within):valid,\n.input-group > .form-floating:not(:focus-within).is-valid {\n z-index: 3;\n}\n.invalid-feedback {\n display: none;\n width: 100%;\n margin-top: 0.25rem;\n font-size: 0.875em;\n color: var(--bs-form-invalid-color);\n}\n.invalid-tooltip {\n position: absolute;\n top: 100%;\n z-index: 5;\n display: none;\n max-width: 100%;\n padding: 0.25rem 0.5rem;\n margin-top: 0.1rem;\n font-size: 0.875rem;\n color: #fff;\n background-color: var(--bs-danger);\n border-radius: var(--bs-border-radius);\n}\n.was-validated :invalid ~ .invalid-feedback,\n.was-validated :invalid ~ .invalid-tooltip,\n.is-invalid ~ .invalid-feedback,\n.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n.was-validated .form-control:invalid, .form-control.is-invalid {\n border-color: var(--bs-form-invalid-border-color);\n padding-right: calc(1.5em + 0.75rem);\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e\");\n background-repeat: no-repeat;\n background-position: right calc(0.375em + 0.1875rem) center;\n background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {\n border-color: var(--bs-form-invalid-border-color);\n -webkit-box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);\n}\n.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {\n padding-right: calc(1.5em + 0.75rem);\n background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);\n}\n.was-validated .form-select:invalid, .form-select.is-invalid {\n border-color: var(--bs-form-invalid-border-color);\n}\n.was-validated .form-select:invalid:not([multiple]):not([size]), .was-validated .form-select:invalid:not([multiple])[size=\"1\"], .form-select.is-invalid:not([multiple]):not([size]), .form-select.is-invalid:not([multiple])[size=\"1\"] {\n --bs-form-select-bg-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e\");\n padding-right: 4.125rem;\n background-position: right 0.75rem center, center right 2.25rem;\n background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n.was-validated .form-select:invalid:focus, .form-select.is-invalid:focus {\n border-color: var(--bs-form-invalid-border-color);\n -webkit-box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);\n}\n.was-validated .form-control-color:invalid, .form-control-color.is-invalid {\n width: calc(3rem + calc(1.5em + 0.75rem));\n}\n.was-validated .form-check-input:invalid, .form-check-input.is-invalid {\n border-color: var(--bs-form-invalid-border-color);\n}\n.was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked {\n background-color: var(--bs-form-invalid-color);\n}\n.was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus {\n -webkit-box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);\n}\n.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {\n color: var(--bs-form-invalid-color);\n}\n.form-check-inline .form-check-input ~ .invalid-feedback {\n margin-left: 0.5em;\n}\n.was-validated .input-group > .form-control:not(:focus):invalid, .input-group > .form-control:not(:focus).is-invalid,\n.was-validated .input-group > .form-select:not(:focus):invalid,\n.input-group > .form-select:not(:focus).is-invalid,\n.was-validated .input-group > .form-floating:not(:focus-within):invalid,\n.input-group > .form-floating:not(:focus-within).is-invalid {\n z-index: 4;\n}\n.btn {\n --bs-btn-padding-x: 0.75rem;\n --bs-btn-padding-y: 0.375rem;\n --bs-btn-font-family: ;\n --bs-btn-font-size: 1rem;\n --bs-btn-font-weight: 400;\n --bs-btn-line-height: 1.5;\n --bs-btn-color: var(--bs-body-color);\n --bs-btn-bg: transparent;\n --bs-btn-border-width: var(--bs-border-width);\n --bs-btn-border-color: transparent;\n --bs-btn-border-radius: var(--bs-border-radius);\n --bs-btn-hover-border-color: transparent;\n --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);\n --bs-btn-disabled-opacity: 0.65;\n --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);\n display: inline-block;\n padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);\n font-family: var(--bs-btn-font-family);\n font-size: var(--bs-btn-font-size);\n font-weight: var(--bs-btn-font-weight);\n line-height: var(--bs-btn-line-height);\n color: var(--bs-btn-color);\n text-align: center;\n text-decoration: none;\n vertical-align: middle;\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);\n border-radius: var(--bs-btn-border-radius);\n background-color: var(--bs-btn-bg);\n -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .btn {\n -webkit-transition: none;\n transition: none;\n }\n}\n.btn:hover {\n color: var(--bs-btn-hover-color);\n background-color: var(--bs-btn-hover-bg);\n border-color: var(--bs-btn-hover-border-color);\n}\n.btn-check + .btn:hover {\n color: var(--bs-btn-color);\n background-color: var(--bs-btn-bg);\n border-color: var(--bs-btn-border-color);\n}\n.btn:focus-visible {\n color: var(--bs-btn-hover-color);\n background-color: var(--bs-btn-hover-bg);\n border-color: var(--bs-btn-hover-border-color);\n outline: 0;\n -webkit-box-shadow: var(--bs-btn-focus-box-shadow);\n box-shadow: var(--bs-btn-focus-box-shadow);\n}\n.btn-check:focus-visible + .btn {\n border-color: var(--bs-btn-hover-border-color);\n outline: 0;\n -webkit-box-shadow: var(--bs-btn-focus-box-shadow);\n box-shadow: var(--bs-btn-focus-box-shadow);\n}\n.btn-check:checked + .btn, :not(.btn-check) + .btn:active, .btn:first-child:active, .btn.active, .btn.show {\n color: var(--bs-btn-active-color);\n background-color: var(--bs-btn-active-bg);\n border-color: var(--bs-btn-active-border-color);\n}\n.btn-check:checked + .btn:focus-visible, :not(.btn-check) + .btn:active:focus-visible, .btn:first-child:active:focus-visible, .btn.active:focus-visible, .btn.show:focus-visible {\n -webkit-box-shadow: var(--bs-btn-focus-box-shadow);\n box-shadow: var(--bs-btn-focus-box-shadow);\n}\n.btn:disabled, .btn.disabled, fieldset:disabled .btn {\n color: var(--bs-btn-disabled-color);\n pointer-events: none;\n background-color: var(--bs-btn-disabled-bg);\n border-color: var(--bs-btn-disabled-border-color);\n opacity: var(--bs-btn-disabled-opacity);\n}\n.btn-primary {\n --bs-btn-color: #fff;\n --bs-btn-bg: #0d6efd;\n --bs-btn-border-color: #0d6efd;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #0b5ed7;\n --bs-btn-hover-border-color: #0a58ca;\n --bs-btn-focus-shadow-rgb: 49, 132, 253;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #0a58ca;\n --bs-btn-active-border-color: #0a53be;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #fff;\n --bs-btn-disabled-bg: #0d6efd;\n --bs-btn-disabled-border-color: #0d6efd;\n}\n.btn-secondary {\n --bs-btn-color: #fff;\n --bs-btn-bg: #6c757d;\n --bs-btn-border-color: #6c757d;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #5c636a;\n --bs-btn-hover-border-color: #565e64;\n --bs-btn-focus-shadow-rgb: 130, 138, 145;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #565e64;\n --bs-btn-active-border-color: #51585e;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #fff;\n --bs-btn-disabled-bg: #6c757d;\n --bs-btn-disabled-border-color: #6c757d;\n}\n.btn-success {\n --bs-btn-color: #fff;\n --bs-btn-bg: #198754;\n --bs-btn-border-color: #198754;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #157347;\n --bs-btn-hover-border-color: #146c43;\n --bs-btn-focus-shadow-rgb: 60, 153, 110;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #146c43;\n --bs-btn-active-border-color: #13653f;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #fff;\n --bs-btn-disabled-bg: #198754;\n --bs-btn-disabled-border-color: #198754;\n}\n.btn-info {\n --bs-btn-color: #000;\n --bs-btn-bg: #0dcaf0;\n --bs-btn-border-color: #0dcaf0;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #31d2f2;\n --bs-btn-hover-border-color: #25cff2;\n --bs-btn-focus-shadow-rgb: 11, 172, 204;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #3dd5f3;\n --bs-btn-active-border-color: #25cff2;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #000;\n --bs-btn-disabled-bg: #0dcaf0;\n --bs-btn-disabled-border-color: #0dcaf0;\n}\n.btn-warning {\n --bs-btn-color: #000;\n --bs-btn-bg: #ffc107;\n --bs-btn-border-color: #ffc107;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #ffca2c;\n --bs-btn-hover-border-color: #ffc720;\n --bs-btn-focus-shadow-rgb: 217, 164, 6;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #ffcd39;\n --bs-btn-active-border-color: #ffc720;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #000;\n --bs-btn-disabled-bg: #ffc107;\n --bs-btn-disabled-border-color: #ffc107;\n}\n.btn-danger {\n --bs-btn-color: #fff;\n --bs-btn-bg: #dc3545;\n --bs-btn-border-color: #dc3545;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #bb2d3b;\n --bs-btn-hover-border-color: #b02a37;\n --bs-btn-focus-shadow-rgb: 225, 83, 97;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #b02a37;\n --bs-btn-active-border-color: #a52834;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #fff;\n --bs-btn-disabled-bg: #dc3545;\n --bs-btn-disabled-border-color: #dc3545;\n}\n.btn-light {\n --bs-btn-color: #000;\n --bs-btn-bg: #f8f9fa;\n --bs-btn-border-color: #f8f9fa;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #d3d4d5;\n --bs-btn-hover-border-color: #c6c7c8;\n --bs-btn-focus-shadow-rgb: 211, 212, 213;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #c6c7c8;\n --bs-btn-active-border-color: #babbbc;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #000;\n --bs-btn-disabled-bg: #f8f9fa;\n --bs-btn-disabled-border-color: #f8f9fa;\n}\n.btn-dark {\n --bs-btn-color: #fff;\n --bs-btn-bg: #212529;\n --bs-btn-border-color: #212529;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #424649;\n --bs-btn-hover-border-color: #373b3e;\n --bs-btn-focus-shadow-rgb: 66, 70, 73;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #4d5154;\n --bs-btn-active-border-color: #373b3e;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #fff;\n --bs-btn-disabled-bg: #212529;\n --bs-btn-disabled-border-color: #212529;\n}\n.btn-outline-primary {\n --bs-btn-color: #0d6efd;\n --bs-btn-border-color: #0d6efd;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #0d6efd;\n --bs-btn-hover-border-color: #0d6efd;\n --bs-btn-focus-shadow-rgb: 13, 110, 253;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #0d6efd;\n --bs-btn-active-border-color: #0d6efd;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #0d6efd;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #0d6efd;\n --bs-gradient: none;\n}\n.btn-outline-secondary {\n --bs-btn-color: #6c757d;\n --bs-btn-border-color: #6c757d;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #6c757d;\n --bs-btn-hover-border-color: #6c757d;\n --bs-btn-focus-shadow-rgb: 108, 117, 125;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #6c757d;\n --bs-btn-active-border-color: #6c757d;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #6c757d;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #6c757d;\n --bs-gradient: none;\n}\n.btn-outline-success {\n --bs-btn-color: #198754;\n --bs-btn-border-color: #198754;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #198754;\n --bs-btn-hover-border-color: #198754;\n --bs-btn-focus-shadow-rgb: 25, 135, 84;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #198754;\n --bs-btn-active-border-color: #198754;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #198754;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #198754;\n --bs-gradient: none;\n}\n.btn-outline-info {\n --bs-btn-color: #0dcaf0;\n --bs-btn-border-color: #0dcaf0;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #0dcaf0;\n --bs-btn-hover-border-color: #0dcaf0;\n --bs-btn-focus-shadow-rgb: 13, 202, 240;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #0dcaf0;\n --bs-btn-active-border-color: #0dcaf0;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #0dcaf0;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #0dcaf0;\n --bs-gradient: none;\n}\n.btn-outline-warning {\n --bs-btn-color: #ffc107;\n --bs-btn-border-color: #ffc107;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #ffc107;\n --bs-btn-hover-border-color: #ffc107;\n --bs-btn-focus-shadow-rgb: 255, 193, 7;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #ffc107;\n --bs-btn-active-border-color: #ffc107;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #ffc107;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #ffc107;\n --bs-gradient: none;\n}\n.btn-outline-danger {\n --bs-btn-color: #dc3545;\n --bs-btn-border-color: #dc3545;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #dc3545;\n --bs-btn-hover-border-color: #dc3545;\n --bs-btn-focus-shadow-rgb: 220, 53, 69;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #dc3545;\n --bs-btn-active-border-color: #dc3545;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #dc3545;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #dc3545;\n --bs-gradient: none;\n}\n.btn-outline-light {\n --bs-btn-color: #f8f9fa;\n --bs-btn-border-color: #f8f9fa;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #f8f9fa;\n --bs-btn-hover-border-color: #f8f9fa;\n --bs-btn-focus-shadow-rgb: 248, 249, 250;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #f8f9fa;\n --bs-btn-active-border-color: #f8f9fa;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #f8f9fa;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #f8f9fa;\n --bs-gradient: none;\n}\n.btn-outline-dark {\n --bs-btn-color: #212529;\n --bs-btn-border-color: #212529;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #212529;\n --bs-btn-hover-border-color: #212529;\n --bs-btn-focus-shadow-rgb: 33, 37, 41;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #212529;\n --bs-btn-active-border-color: #212529;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #212529;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #212529;\n --bs-gradient: none;\n}\n.btn-link {\n --bs-btn-font-weight: 400;\n --bs-btn-color: var(--bs-link-color);\n --bs-btn-bg: transparent;\n --bs-btn-border-color: transparent;\n --bs-btn-hover-color: var(--bs-link-hover-color);\n --bs-btn-hover-border-color: transparent;\n --bs-btn-active-color: var(--bs-link-hover-color);\n --bs-btn-active-border-color: transparent;\n --bs-btn-disabled-color: #6c757d;\n --bs-btn-disabled-border-color: transparent;\n --bs-btn-box-shadow: 0 0 0 #000;\n --bs-btn-focus-shadow-rgb: 49, 132, 253;\n text-decoration: underline;\n}\n.btn-link:focus-visible {\n color: var(--bs-btn-color);\n}\n.btn-link:hover {\n color: var(--bs-btn-hover-color);\n}\n.btn-lg, .btn-group-lg > .btn {\n --bs-btn-padding-y: 0.5rem;\n --bs-btn-padding-x: 1rem;\n --bs-btn-font-size: 1.25rem;\n --bs-btn-border-radius: var(--bs-border-radius-lg);\n}\n.btn-sm, .btn-group-sm > .btn {\n --bs-btn-padding-y: 0.25rem;\n --bs-btn-padding-x: 0.5rem;\n --bs-btn-font-size: 0.875rem;\n --bs-btn-border-radius: var(--bs-border-radius-sm);\n}\n.fade {\n -webkit-transition: opacity 0.15s linear;\n transition: opacity 0.15s linear;\n}\n@media (prefers-reduced-motion: reduce) {\n .fade {\n -webkit-transition: none;\n transition: none;\n }\n}\n.fade:not(.show) {\n opacity: 0;\n}\n.collapse:not(.show) {\n display: none;\n}\n.collapsing {\n height: 0;\n overflow: hidden;\n -webkit-transition: height 0.35s ease;\n transition: height 0.35s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .collapsing {\n -webkit-transition: none;\n transition: none;\n }\n}\n.collapsing.collapse-horizontal {\n width: 0;\n height: auto;\n -webkit-transition: width 0.35s ease;\n transition: width 0.35s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .collapsing.collapse-horizontal {\n -webkit-transition: none;\n transition: none;\n }\n}\n.dropup,\n.dropend,\n.dropdown,\n.dropstart,\n.dropup-center,\n.dropdown-center {\n position: relative;\n}\n.dropdown-toggle {\n white-space: nowrap;\n}\n.dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid;\n border-right: 0.3em solid transparent;\n border-bottom: 0;\n border-left: 0.3em solid transparent;\n}\n.dropdown-toggle:empty::after {\n margin-left: 0;\n}\n.dropdown-menu {\n --bs-dropdown-zindex: 1000;\n --bs-dropdown-min-width: 10rem;\n --bs-dropdown-padding-x: 0;\n --bs-dropdown-padding-y: 0.5rem;\n --bs-dropdown-spacer: 0.125rem;\n --bs-dropdown-font-size: 1rem;\n --bs-dropdown-color: var(--bs-body-color);\n --bs-dropdown-bg: var(--bs-body-bg);\n --bs-dropdown-border-color: var(--bs-border-color-translucent);\n --bs-dropdown-border-radius: var(--bs-border-radius);\n --bs-dropdown-border-width: var(--bs-border-width);\n --bs-dropdown-inner-border-radius: calc(var(--bs-border-radius) - var(--bs-border-width));\n --bs-dropdown-divider-bg: var(--bs-border-color-translucent);\n --bs-dropdown-divider-margin-y: 0.5rem;\n --bs-dropdown-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);\n --bs-dropdown-link-color: var(--bs-body-color);\n --bs-dropdown-link-hover-color: var(--bs-body-color);\n --bs-dropdown-link-hover-bg: var(--bs-tertiary-bg);\n --bs-dropdown-link-active-color: #fff;\n --bs-dropdown-link-active-bg: #0d6efd;\n --bs-dropdown-link-disabled-color: var(--bs-tertiary-color);\n --bs-dropdown-item-padding-x: 1rem;\n --bs-dropdown-item-padding-y: 0.25rem;\n --bs-dropdown-header-color: #6c757d;\n --bs-dropdown-header-padding-x: 1rem;\n --bs-dropdown-header-padding-y: 0.5rem;\n position: absolute;\n z-index: var(--bs-dropdown-zindex);\n display: none;\n min-width: var(--bs-dropdown-min-width);\n padding: var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);\n margin: 0;\n font-size: var(--bs-dropdown-font-size);\n color: var(--bs-dropdown-color);\n text-align: left;\n list-style: none;\n background-color: var(--bs-dropdown-bg);\n background-clip: padding-box;\n border: var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);\n border-radius: var(--bs-dropdown-border-radius);\n}\n.dropdown-menu[data-bs-popper] {\n top: 100%;\n left: 0;\n margin-top: var(--bs-dropdown-spacer);\n}\n.dropdown-menu-start {\n --bs-position: start;\n}\n.dropdown-menu-start[data-bs-popper] {\n right: auto;\n left: 0;\n}\n.dropdown-menu-end {\n --bs-position: end;\n}\n.dropdown-menu-end[data-bs-popper] {\n right: 0;\n left: auto;\n}\n@media (min-width: 576px) {\n .dropdown-menu-sm-start {\n --bs-position: start;\n }\n .dropdown-menu-sm-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n .dropdown-menu-sm-end {\n --bs-position: end;\n }\n .dropdown-menu-sm-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n@media (min-width: 768px) {\n .dropdown-menu-md-start {\n --bs-position: start;\n }\n .dropdown-menu-md-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n .dropdown-menu-md-end {\n --bs-position: end;\n }\n .dropdown-menu-md-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n@media (min-width: 992px) {\n .dropdown-menu-lg-start {\n --bs-position: start;\n }\n .dropdown-menu-lg-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n .dropdown-menu-lg-end {\n --bs-position: end;\n }\n .dropdown-menu-lg-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n@media (min-width: 1200px) {\n .dropdown-menu-xl-start {\n --bs-position: start;\n }\n .dropdown-menu-xl-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n .dropdown-menu-xl-end {\n --bs-position: end;\n }\n .dropdown-menu-xl-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n@media (min-width: 1400px) {\n .dropdown-menu-xxl-start {\n --bs-position: start;\n }\n .dropdown-menu-xxl-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n .dropdown-menu-xxl-end {\n --bs-position: end;\n }\n .dropdown-menu-xxl-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n.dropup .dropdown-menu[data-bs-popper] {\n top: auto;\n bottom: 100%;\n margin-top: 0;\n margin-bottom: var(--bs-dropdown-spacer);\n}\n.dropup .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0;\n border-right: 0.3em solid transparent;\n border-bottom: 0.3em solid;\n border-left: 0.3em solid transparent;\n}\n.dropup .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n.dropend .dropdown-menu[data-bs-popper] {\n top: 0;\n right: auto;\n left: 100%;\n margin-top: 0;\n margin-left: var(--bs-dropdown-spacer);\n}\n.dropend .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid transparent;\n border-right: 0;\n border-bottom: 0.3em solid transparent;\n border-left: 0.3em solid;\n}\n.dropend .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n.dropend .dropdown-toggle::after {\n vertical-align: 0;\n}\n.dropstart .dropdown-menu[data-bs-popper] {\n top: 0;\n right: 100%;\n left: auto;\n margin-top: 0;\n margin-right: var(--bs-dropdown-spacer);\n}\n.dropstart .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n}\n.dropstart .dropdown-toggle::after {\n display: none;\n}\n.dropstart .dropdown-toggle::before {\n display: inline-block;\n margin-right: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid transparent;\n border-right: 0.3em solid;\n border-bottom: 0.3em solid transparent;\n}\n.dropstart .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n.dropstart .dropdown-toggle::before {\n vertical-align: 0;\n}\n.dropdown-divider {\n height: 0;\n margin: var(--bs-dropdown-divider-margin-y) 0;\n overflow: hidden;\n border-top: 1px solid var(--bs-dropdown-divider-bg);\n opacity: 1;\n}\n.dropdown-item {\n display: block;\n width: 100%;\n padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);\n clear: both;\n font-weight: 400;\n color: var(--bs-dropdown-link-color);\n text-align: inherit;\n text-decoration: none;\n white-space: nowrap;\n background-color: transparent;\n border: 0;\n border-radius: var(--bs-dropdown-item-border-radius, 0);\n}\n.dropdown-item:hover, .dropdown-item:focus {\n color: var(--bs-dropdown-link-hover-color);\n background-color: var(--bs-dropdown-link-hover-bg);\n}\n.dropdown-item.active, .dropdown-item:active {\n color: var(--bs-dropdown-link-active-color);\n text-decoration: none;\n background-color: var(--bs-dropdown-link-active-bg);\n}\n.dropdown-item.disabled, .dropdown-item:disabled {\n color: var(--bs-dropdown-link-disabled-color);\n pointer-events: none;\n background-color: transparent;\n}\n.dropdown-menu.show {\n display: block;\n}\n.dropdown-header {\n display: block;\n padding: var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);\n margin-bottom: 0;\n font-size: 0.875rem;\n color: var(--bs-dropdown-header-color);\n white-space: nowrap;\n}\n.dropdown-item-text {\n display: block;\n padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);\n color: var(--bs-dropdown-link-color);\n}\n.dropdown-menu-dark {\n --bs-dropdown-color: #dee2e6;\n --bs-dropdown-bg: #343a40;\n --bs-dropdown-border-color: var(--bs-border-color-translucent);\n --bs-dropdown-box-shadow: ;\n --bs-dropdown-link-color: #dee2e6;\n --bs-dropdown-link-hover-color: #fff;\n --bs-dropdown-divider-bg: var(--bs-border-color-translucent);\n --bs-dropdown-link-hover-bg: rgba(255, 255, 255, 0.15);\n --bs-dropdown-link-active-color: #fff;\n --bs-dropdown-link-active-bg: #0d6efd;\n --bs-dropdown-link-disabled-color: #adb5bd;\n --bs-dropdown-header-color: #adb5bd;\n}\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: -webkit-inline-box;\n display: -ms-inline-flexbox;\n display: inline-flex;\n vertical-align: middle;\n}\n.btn-group > .btn,\n.btn-group-vertical > .btn {\n position: relative;\n -webkit-box-flex: 1;\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n}\n.btn-group > .btn-check:checked + .btn,\n.btn-group > .btn-check:focus + .btn,\n.btn-group > .btn:hover,\n.btn-group > .btn:focus,\n.btn-group > .btn:active,\n.btn-group > .btn.active,\n.btn-group-vertical > .btn-check:checked + .btn,\n.btn-group-vertical > .btn-check:focus + .btn,\n.btn-group-vertical > .btn:hover,\n.btn-group-vertical > .btn:focus,\n.btn-group-vertical > .btn:active,\n.btn-group-vertical > .btn.active {\n z-index: 1;\n}\n.btn-toolbar {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -webkit-box-pack: start;\n -ms-flex-pack: start;\n justify-content: flex-start;\n}\n.btn-toolbar .input-group {\n width: auto;\n}\n.btn-group {\n border-radius: var(--bs-border-radius);\n}\n.btn-group > :not(.btn-check:first-child) + .btn,\n.btn-group > .btn-group:not(:first-child) {\n margin-left: calc(var(--bs-border-width) * -1);\n}\n.btn-group > .btn:not(:last-child):not(.dropdown-toggle),\n.btn-group > .btn.dropdown-toggle-split:first-child,\n.btn-group > .btn-group:not(:last-child) > .btn {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.btn-group > .btn:nth-child(n+3),\n.btn-group > :not(.btn-check) + .btn,\n.btn-group > .btn-group:not(:first-child) > .btn {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.dropdown-toggle-split {\n padding-right: 0.5625rem;\n padding-left: 0.5625rem;\n}\n.dropdown-toggle-split::after, .dropup .dropdown-toggle-split::after, .dropend .dropdown-toggle-split::after {\n margin-left: 0;\n}\n.dropstart .dropdown-toggle-split::before {\n margin-right: 0;\n}\n.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {\n padding-right: 0.375rem;\n padding-left: 0.375rem;\n}\n.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {\n padding-right: 0.75rem;\n padding-left: 0.75rem;\n}\n.btn-group-vertical {\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n -webkit-box-align: start;\n -ms-flex-align: start;\n align-items: flex-start;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n}\n.btn-group-vertical > .btn,\n.btn-group-vertical > .btn-group {\n width: 100%;\n}\n.btn-group-vertical > .btn:not(:first-child),\n.btn-group-vertical > .btn-group:not(:first-child) {\n margin-top: calc(var(--bs-border-width) * -1);\n}\n.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),\n.btn-group-vertical > .btn-group:not(:last-child) > .btn {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn ~ .btn,\n.btn-group-vertical > .btn-group:not(:first-child) > .btn {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.nav {\n --bs-nav-link-padding-x: 1rem;\n --bs-nav-link-padding-y: 0.5rem;\n --bs-nav-link-font-weight: ;\n --bs-nav-link-color: var(--bs-link-color);\n --bs-nav-link-hover-color: var(--bs-link-hover-color);\n --bs-nav-link-disabled-color: var(--bs-secondary-color);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n.nav-link {\n display: block;\n padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);\n font-size: var(--bs-nav-link-font-size);\n font-weight: var(--bs-nav-link-font-weight);\n color: var(--bs-nav-link-color);\n text-decoration: none;\n background: none;\n border: 0;\n -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .nav-link {\n -webkit-transition: none;\n transition: none;\n }\n}\n.nav-link:hover, .nav-link:focus {\n color: var(--bs-nav-link-hover-color);\n}\n.nav-link:focus-visible {\n outline: 0;\n -webkit-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.nav-link.disabled {\n color: var(--bs-nav-link-disabled-color);\n pointer-events: none;\n cursor: default;\n}\n.nav-tabs {\n --bs-nav-tabs-border-width: var(--bs-border-width);\n --bs-nav-tabs-border-color: var(--bs-border-color);\n --bs-nav-tabs-border-radius: var(--bs-border-radius);\n --bs-nav-tabs-link-hover-border-color: var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);\n --bs-nav-tabs-link-active-color: var(--bs-emphasis-color);\n --bs-nav-tabs-link-active-bg: var(--bs-body-bg);\n --bs-nav-tabs-link-active-border-color: var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);\n border-bottom: var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color);\n}\n.nav-tabs .nav-link {\n margin-bottom: calc(-1 * var(--bs-nav-tabs-border-width));\n border: var(--bs-nav-tabs-border-width) solid transparent;\n border-top-left-radius: var(--bs-nav-tabs-border-radius);\n border-top-right-radius: var(--bs-nav-tabs-border-radius);\n}\n.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {\n isolation: isolate;\n border-color: var(--bs-nav-tabs-link-hover-border-color);\n}\n.nav-tabs .nav-link.disabled, .nav-tabs .nav-link:disabled {\n color: var(--bs-nav-link-disabled-color);\n background-color: transparent;\n border-color: transparent;\n}\n.nav-tabs .nav-link.active,\n.nav-tabs .nav-item.show .nav-link {\n color: var(--bs-nav-tabs-link-active-color);\n background-color: var(--bs-nav-tabs-link-active-bg);\n border-color: var(--bs-nav-tabs-link-active-border-color);\n}\n.nav-tabs .dropdown-menu {\n margin-top: calc(-1 * var(--bs-nav-tabs-border-width));\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.nav-pills {\n --bs-nav-pills-border-radius: var(--bs-border-radius);\n --bs-nav-pills-link-active-color: #fff;\n --bs-nav-pills-link-active-bg: #0d6efd;\n}\n.nav-pills .nav-link {\n border-radius: var(--bs-nav-pills-border-radius);\n}\n.nav-pills .nav-link:disabled {\n color: var(--bs-nav-link-disabled-color);\n background-color: transparent;\n border-color: transparent;\n}\n.nav-pills .nav-link.active,\n.nav-pills .show > .nav-link {\n color: var(--bs-nav-pills-link-active-color);\n background-color: var(--bs-nav-pills-link-active-bg);\n}\n.nav-underline {\n --bs-nav-underline-gap: 1rem;\n --bs-nav-underline-border-width: 0.125rem;\n --bs-nav-underline-link-active-color: var(--bs-emphasis-color);\n gap: var(--bs-nav-underline-gap);\n}\n.nav-underline .nav-link {\n padding-right: 0;\n padding-left: 0;\n border-bottom: var(--bs-nav-underline-border-width) solid transparent;\n}\n.nav-underline .nav-link:hover, .nav-underline .nav-link:focus {\n border-bottom-color: currentcolor;\n}\n.nav-underline .nav-link.active,\n.nav-underline .show > .nav-link {\n font-weight: 700;\n color: var(--bs-nav-underline-link-active-color);\n border-bottom-color: currentcolor;\n}\n.nav-fill > .nav-link,\n.nav-fill .nav-item {\n -webkit-box-flex: 1;\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n text-align: center;\n}\n.nav-justified > .nav-link,\n.nav-justified .nav-item {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n text-align: center;\n}\n.nav-fill .nav-item .nav-link,\n.nav-justified .nav-item .nav-link {\n width: 100%;\n}\n.tab-content > .tab-pane {\n display: none;\n}\n.tab-content > .active {\n display: block;\n}\n.navbar {\n --bs-navbar-padding-x: 0;\n --bs-navbar-padding-y: 0.5rem;\n --bs-navbar-color: rgba(var(--bs-emphasis-color-rgb), 0.65);\n --bs-navbar-hover-color: rgba(var(--bs-emphasis-color-rgb), 0.8);\n --bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), 0.3);\n --bs-navbar-active-color: rgba(var(--bs-emphasis-color-rgb), 1);\n --bs-navbar-brand-padding-y: 0.3125rem;\n --bs-navbar-brand-margin-end: 1rem;\n --bs-navbar-brand-font-size: 1.25rem;\n --bs-navbar-brand-color: rgba(var(--bs-emphasis-color-rgb), 1);\n --bs-navbar-brand-hover-color: rgba(var(--bs-emphasis-color-rgb), 1);\n --bs-navbar-nav-link-padding-x: 0.5rem;\n --bs-navbar-toggler-padding-y: 0.25rem;\n --bs-navbar-toggler-padding-x: 0.75rem;\n --bs-navbar-toggler-font-size: 1.25rem;\n --bs-navbar-toggler-icon-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n --bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.15);\n --bs-navbar-toggler-border-radius: var(--bs-border-radius);\n --bs-navbar-toggler-focus-width: 0.25rem;\n --bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;\n position: relative;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n padding: var(--bs-navbar-padding-y) var(--bs-navbar-padding-x);\n}\n.navbar > .container,\n.navbar > .container-fluid,\n.navbar > .container-sm,\n.navbar > .container-md,\n.navbar > .container-lg,\n.navbar > .container-xl,\n.navbar > .container-xxl {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: inherit;\n flex-wrap: inherit;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n}\n.navbar-brand {\n padding-top: var(--bs-navbar-brand-padding-y);\n padding-bottom: var(--bs-navbar-brand-padding-y);\n margin-right: var(--bs-navbar-brand-margin-end);\n font-size: var(--bs-navbar-brand-font-size);\n color: var(--bs-navbar-brand-color);\n text-decoration: none;\n white-space: nowrap;\n}\n.navbar-brand:hover, .navbar-brand:focus {\n color: var(--bs-navbar-brand-hover-color);\n}\n.navbar-nav {\n --bs-nav-link-padding-x: 0;\n --bs-nav-link-padding-y: 0.5rem;\n --bs-nav-link-font-weight: ;\n --bs-nav-link-color: var(--bs-navbar-color);\n --bs-nav-link-hover-color: var(--bs-navbar-hover-color);\n --bs-nav-link-disabled-color: var(--bs-navbar-disabled-color);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n.navbar-nav .nav-link.active, .navbar-nav .nav-link.show {\n color: var(--bs-navbar-active-color);\n}\n.navbar-nav .dropdown-menu {\n position: static;\n}\n.navbar-text {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n color: var(--bs-navbar-color);\n}\n.navbar-text a,\n.navbar-text a:hover,\n.navbar-text a:focus {\n color: var(--bs-navbar-active-color);\n}\n.navbar-collapse {\n -ms-flex-preferred-size: 100%;\n flex-basis: 100%;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n}\n.navbar-toggler {\n padding: var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);\n font-size: var(--bs-navbar-toggler-font-size);\n line-height: 1;\n color: var(--bs-navbar-color);\n background-color: transparent;\n border: var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);\n border-radius: var(--bs-navbar-toggler-border-radius);\n -webkit-transition: var(--bs-navbar-toggler-transition);\n transition: var(--bs-navbar-toggler-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .navbar-toggler {\n -webkit-transition: none;\n transition: none;\n }\n}\n.navbar-toggler:hover {\n text-decoration: none;\n}\n.navbar-toggler:focus {\n text-decoration: none;\n outline: 0;\n -webkit-box-shadow: 0 0 0 var(--bs-navbar-toggler-focus-width);\n box-shadow: 0 0 0 var(--bs-navbar-toggler-focus-width);\n}\n.navbar-toggler-icon {\n display: inline-block;\n width: 1.5em;\n height: 1.5em;\n vertical-align: middle;\n background-image: var(--bs-navbar-toggler-icon-bg);\n background-repeat: no-repeat;\n background-position: center;\n background-size: 100%;\n}\n.navbar-nav-scroll {\n max-height: var(--bs-scroll-height, 75vh);\n overflow-y: auto;\n}\n@media (min-width: 576px) {\n .navbar-expand-sm {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n -webkit-box-pack: start;\n -ms-flex-pack: start;\n justify-content: flex-start;\n }\n .navbar-expand-sm .navbar-nav {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .navbar-expand-sm .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-sm .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n }\n .navbar-expand-sm .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-sm .navbar-collapse {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n }\n .navbar-expand-sm .navbar-toggler {\n display: none;\n }\n .navbar-expand-sm .offcanvas {\n position: static;\n z-index: auto;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n -webkit-transform: none !important;\n transform: none !important;\n -webkit-transition: none;\n transition: none;\n }\n .navbar-expand-sm .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-sm .offcanvas .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 768px) {\n .navbar-expand-md {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n -webkit-box-pack: start;\n -ms-flex-pack: start;\n justify-content: flex-start;\n }\n .navbar-expand-md .navbar-nav {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .navbar-expand-md .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-md .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n }\n .navbar-expand-md .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-md .navbar-collapse {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n }\n .navbar-expand-md .navbar-toggler {\n display: none;\n }\n .navbar-expand-md .offcanvas {\n position: static;\n z-index: auto;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n -webkit-transform: none !important;\n transform: none !important;\n -webkit-transition: none;\n transition: none;\n }\n .navbar-expand-md .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-md .offcanvas .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 992px) {\n .navbar-expand-lg {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n -webkit-box-pack: start;\n -ms-flex-pack: start;\n justify-content: flex-start;\n }\n .navbar-expand-lg .navbar-nav {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .navbar-expand-lg .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-lg .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n }\n .navbar-expand-lg .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-lg .navbar-collapse {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n }\n .navbar-expand-lg .navbar-toggler {\n display: none;\n }\n .navbar-expand-lg .offcanvas {\n position: static;\n z-index: auto;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n -webkit-transform: none !important;\n transform: none !important;\n -webkit-transition: none;\n transition: none;\n }\n .navbar-expand-lg .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-lg .offcanvas .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 1200px) {\n .navbar-expand-xl {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n -webkit-box-pack: start;\n -ms-flex-pack: start;\n justify-content: flex-start;\n }\n .navbar-expand-xl .navbar-nav {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .navbar-expand-xl .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-xl .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n }\n .navbar-expand-xl .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-xl .navbar-collapse {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n }\n .navbar-expand-xl .navbar-toggler {\n display: none;\n }\n .navbar-expand-xl .offcanvas {\n position: static;\n z-index: auto;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n -webkit-transform: none !important;\n transform: none !important;\n -webkit-transition: none;\n transition: none;\n }\n .navbar-expand-xl .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-xl .offcanvas .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 1400px) {\n .navbar-expand-xxl {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n -webkit-box-pack: start;\n -ms-flex-pack: start;\n justify-content: flex-start;\n }\n .navbar-expand-xxl .navbar-nav {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .navbar-expand-xxl .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-xxl .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n }\n .navbar-expand-xxl .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-xxl .navbar-collapse {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n }\n .navbar-expand-xxl .navbar-toggler {\n display: none;\n }\n .navbar-expand-xxl .offcanvas {\n position: static;\n z-index: auto;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n -webkit-transform: none !important;\n transform: none !important;\n -webkit-transition: none;\n transition: none;\n }\n .navbar-expand-xxl .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-xxl .offcanvas .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n.navbar-expand {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n -webkit-box-pack: start;\n -ms-flex-pack: start;\n justify-content: flex-start;\n}\n.navbar-expand .navbar-nav {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n}\n.navbar-expand .navbar-nav .dropdown-menu {\n position: absolute;\n}\n.navbar-expand .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n}\n.navbar-expand .navbar-nav-scroll {\n overflow: visible;\n}\n.navbar-expand .navbar-collapse {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n}\n.navbar-expand .navbar-toggler {\n display: none;\n}\n.navbar-expand .offcanvas {\n position: static;\n z-index: auto;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n -webkit-transform: none !important;\n transform: none !important;\n -webkit-transition: none;\n transition: none;\n}\n.navbar-expand .offcanvas .offcanvas-header {\n display: none;\n}\n.navbar-expand .offcanvas .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n}\n.navbar-dark,\n.navbar[data-bs-theme=dark] {\n --bs-navbar-color: rgba(255, 255, 255, 0.55);\n --bs-navbar-hover-color: rgba(255, 255, 255, 0.75);\n --bs-navbar-disabled-color: rgba(255, 255, 255, 0.25);\n --bs-navbar-active-color: #fff;\n --bs-navbar-brand-color: #fff;\n --bs-navbar-brand-hover-color: #fff;\n --bs-navbar-toggler-border-color: rgba(255, 255, 255, 0.1);\n --bs-navbar-toggler-icon-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n}\n[data-bs-theme=dark] .navbar-toggler-icon {\n --bs-navbar-toggler-icon-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n}\n.card {\n --bs-card-spacer-y: 1rem;\n --bs-card-spacer-x: 1rem;\n --bs-card-title-spacer-y: 0.5rem;\n --bs-card-title-color: ;\n --bs-card-subtitle-color: ;\n --bs-card-border-width: var(--bs-border-width);\n --bs-card-border-color: var(--bs-border-color-translucent);\n --bs-card-border-radius: var(--bs-border-radius);\n --bs-card-box-shadow: ;\n --bs-card-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));\n --bs-card-cap-padding-y: 0.5rem;\n --bs-card-cap-padding-x: 1rem;\n --bs-card-cap-bg: rgba(var(--bs-body-color-rgb), 0.03);\n --bs-card-cap-color: ;\n --bs-card-height: ;\n --bs-card-color: ;\n --bs-card-bg: var(--bs-body-bg);\n --bs-card-img-overlay-padding: 1rem;\n --bs-card-group-margin: 0.75rem;\n position: relative;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n min-width: 0;\n height: var(--bs-card-height);\n color: var(--bs-body-color);\n word-wrap: break-word;\n background-color: var(--bs-card-bg);\n background-clip: border-box;\n border: var(--bs-card-border-width) solid var(--bs-card-border-color);\n border-radius: var(--bs-card-border-radius);\n}\n.card > hr {\n margin-right: 0;\n margin-left: 0;\n}\n.card > .list-group {\n border-top: inherit;\n border-bottom: inherit;\n}\n.card > .list-group:first-child {\n border-top-width: 0;\n border-top-left-radius: var(--bs-card-inner-border-radius);\n border-top-right-radius: var(--bs-card-inner-border-radius);\n}\n.card > .list-group:last-child {\n border-bottom-width: 0;\n border-bottom-right-radius: var(--bs-card-inner-border-radius);\n border-bottom-left-radius: var(--bs-card-inner-border-radius);\n}\n.card > .card-header + .list-group,\n.card > .list-group + .card-footer {\n border-top: 0;\n}\n.card-body {\n -webkit-box-flex: 1;\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n padding: var(--bs-card-spacer-y) var(--bs-card-spacer-x);\n color: var(--bs-card-color);\n}\n.card-title {\n margin-bottom: var(--bs-card-title-spacer-y);\n color: var(--bs-card-title-color);\n}\n.card-subtitle {\n margin-top: calc(-0.5 * var(--bs-card-title-spacer-y));\n margin-bottom: 0;\n color: var(--bs-card-subtitle-color);\n}\n.card-text:last-child {\n margin-bottom: 0;\n}\n.card-link + .card-link {\n margin-left: var(--bs-card-spacer-x);\n}\n.card-header {\n padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);\n margin-bottom: 0;\n color: var(--bs-card-cap-color);\n background-color: var(--bs-card-cap-bg);\n border-bottom: var(--bs-card-border-width) solid var(--bs-card-border-color);\n}\n.card-header:first-child {\n border-radius: var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0;\n}\n.card-footer {\n padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);\n color: var(--bs-card-cap-color);\n background-color: var(--bs-card-cap-bg);\n border-top: var(--bs-card-border-width) solid var(--bs-card-border-color);\n}\n.card-footer:last-child {\n border-radius: 0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius);\n}\n.card-header-tabs {\n margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));\n margin-bottom: calc(-1 * var(--bs-card-cap-padding-y));\n margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));\n border-bottom: 0;\n}\n.card-header-tabs .nav-link.active {\n background-color: var(--bs-card-bg);\n border-bottom-color: var(--bs-card-bg);\n}\n.card-header-pills {\n margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));\n margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));\n}\n.card-img-overlay {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n padding: var(--bs-card-img-overlay-padding);\n border-radius: var(--bs-card-inner-border-radius);\n}\n.card-img,\n.card-img-top,\n.card-img-bottom {\n width: 100%;\n}\n.card-img,\n.card-img-top {\n border-top-left-radius: var(--bs-card-inner-border-radius);\n border-top-right-radius: var(--bs-card-inner-border-radius);\n}\n.card-img,\n.card-img-bottom {\n border-bottom-right-radius: var(--bs-card-inner-border-radius);\n border-bottom-left-radius: var(--bs-card-inner-border-radius);\n}\n.card-group > .card {\n margin-bottom: var(--bs-card-group-margin);\n}\n@media (min-width: 576px) {\n .card-group {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-flow: row wrap;\n flex-flow: row wrap;\n }\n .card-group > .card {\n -webkit-box-flex: 1;\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n margin-bottom: 0;\n }\n .card-group > .card + .card {\n margin-left: 0;\n border-left: 0;\n }\n .card-group > .card:not(:last-child) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n .card-group > .card:not(:last-child) .card-img-top,\n .card-group > .card:not(:last-child) .card-header {\n border-top-right-radius: 0;\n }\n .card-group > .card:not(:last-child) .card-img-bottom,\n .card-group > .card:not(:last-child) .card-footer {\n border-bottom-right-radius: 0;\n }\n .card-group > .card:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n .card-group > .card:not(:first-child) .card-img-top,\n .card-group > .card:not(:first-child) .card-header {\n border-top-left-radius: 0;\n }\n .card-group > .card:not(:first-child) .card-img-bottom,\n .card-group > .card:not(:first-child) .card-footer {\n border-bottom-left-radius: 0;\n }\n}\n.accordion {\n --bs-accordion-color: var(--bs-body-color);\n --bs-accordion-bg: var(--bs-body-bg);\n --bs-accordion-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;\n --bs-accordion-border-color: var(--bs-border-color);\n --bs-accordion-border-width: var(--bs-border-width);\n --bs-accordion-border-radius: var(--bs-border-radius);\n --bs-accordion-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));\n --bs-accordion-btn-padding-x: 1.25rem;\n --bs-accordion-btn-padding-y: 1rem;\n --bs-accordion-btn-color: var(--bs-body-color);\n --bs-accordion-btn-bg: var(--bs-accordion-bg);\n --bs-accordion-btn-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\");\n --bs-accordion-btn-icon-width: 1.25rem;\n --bs-accordion-btn-icon-transform: rotate(-180deg);\n --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;\n --bs-accordion-btn-active-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23052c65'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\");\n --bs-accordion-btn-focus-border-color: #86b7fe;\n --bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n --bs-accordion-body-padding-x: 1.25rem;\n --bs-accordion-body-padding-y: 1rem;\n --bs-accordion-active-color: var(--bs-primary-text-emphasis);\n --bs-accordion-active-bg: var(--bs-primary-bg-subtle);\n}\n.accordion-button {\n position: relative;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n width: 100%;\n padding: var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);\n font-size: 1rem;\n color: var(--bs-accordion-btn-color);\n text-align: left;\n background-color: var(--bs-accordion-btn-bg);\n border: 0;\n border-radius: 0;\n overflow-anchor: none;\n -webkit-transition: var(--bs-accordion-transition);\n transition: var(--bs-accordion-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .accordion-button {\n -webkit-transition: none;\n transition: none;\n }\n}\n.accordion-button:not(.collapsed) {\n color: var(--bs-accordion-active-color);\n background-color: var(--bs-accordion-active-bg);\n -webkit-box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color);\n box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color);\n}\n.accordion-button:not(.collapsed)::after {\n background-image: var(--bs-accordion-btn-active-icon);\n -webkit-transform: var(--bs-accordion-btn-icon-transform);\n transform: var(--bs-accordion-btn-icon-transform);\n}\n.accordion-button::after {\n -ms-flex-negative: 0;\n flex-shrink: 0;\n width: var(--bs-accordion-btn-icon-width);\n height: var(--bs-accordion-btn-icon-width);\n margin-left: auto;\n content: \"\";\n background-image: var(--bs-accordion-btn-icon);\n background-repeat: no-repeat;\n background-size: var(--bs-accordion-btn-icon-width);\n -webkit-transition: var(--bs-accordion-btn-icon-transition);\n transition: var(--bs-accordion-btn-icon-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .accordion-button::after {\n -webkit-transition: none;\n transition: none;\n }\n}\n.accordion-button:hover {\n z-index: 2;\n}\n.accordion-button:focus {\n z-index: 3;\n border-color: var(--bs-accordion-btn-focus-border-color);\n outline: 0;\n -webkit-box-shadow: var(--bs-accordion-btn-focus-box-shadow);\n box-shadow: var(--bs-accordion-btn-focus-box-shadow);\n}\n.accordion-header {\n margin-bottom: 0;\n}\n.accordion-item {\n color: var(--bs-accordion-color);\n background-color: var(--bs-accordion-bg);\n border: var(--bs-accordion-border-width) solid var(--bs-accordion-border-color);\n}\n.accordion-item:first-of-type {\n border-top-left-radius: var(--bs-accordion-border-radius);\n border-top-right-radius: var(--bs-accordion-border-radius);\n}\n.accordion-item:first-of-type .accordion-button {\n border-top-left-radius: var(--bs-accordion-inner-border-radius);\n border-top-right-radius: var(--bs-accordion-inner-border-radius);\n}\n.accordion-item:not(:first-of-type) {\n border-top: 0;\n}\n.accordion-item:last-of-type {\n border-bottom-right-radius: var(--bs-accordion-border-radius);\n border-bottom-left-radius: var(--bs-accordion-border-radius);\n}\n.accordion-item:last-of-type .accordion-button.collapsed {\n border-bottom-right-radius: var(--bs-accordion-inner-border-radius);\n border-bottom-left-radius: var(--bs-accordion-inner-border-radius);\n}\n.accordion-item:last-of-type .accordion-collapse {\n border-bottom-right-radius: var(--bs-accordion-border-radius);\n border-bottom-left-radius: var(--bs-accordion-border-radius);\n}\n.accordion-body {\n padding: var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x);\n}\n.accordion-flush .accordion-collapse {\n border-width: 0;\n}\n.accordion-flush .accordion-item {\n border-right: 0;\n border-left: 0;\n border-radius: 0;\n}\n.accordion-flush .accordion-item:first-child {\n border-top: 0;\n}\n.accordion-flush .accordion-item:last-child {\n border-bottom: 0;\n}\n.accordion-flush .accordion-item .accordion-button, .accordion-flush .accordion-item .accordion-button.collapsed {\n border-radius: 0;\n}\n[data-bs-theme=dark] .accordion-button::after {\n --bs-accordion-btn-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\");\n --bs-accordion-btn-active-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\");\n}\n.breadcrumb {\n --bs-breadcrumb-padding-x: 0;\n --bs-breadcrumb-padding-y: 0;\n --bs-breadcrumb-margin-bottom: 1rem;\n --bs-breadcrumb-bg: ;\n --bs-breadcrumb-border-radius: ;\n --bs-breadcrumb-divider-color: var(--bs-secondary-color);\n --bs-breadcrumb-item-padding-x: 0.5rem;\n --bs-breadcrumb-item-active-color: var(--bs-secondary-color);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n padding: var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);\n margin-bottom: var(--bs-breadcrumb-margin-bottom);\n font-size: var(--bs-breadcrumb-font-size);\n list-style: none;\n background-color: var(--bs-breadcrumb-bg);\n border-radius: var(--bs-breadcrumb-border-radius);\n}\n.breadcrumb-item + .breadcrumb-item {\n padding-left: var(--bs-breadcrumb-item-padding-x);\n}\n.breadcrumb-item + .breadcrumb-item::before {\n float: left;\n padding-right: var(--bs-breadcrumb-item-padding-x);\n color: var(--bs-breadcrumb-divider-color);\n content: var(--bs-breadcrumb-divider, \"/\") /* rtl: var(--bs-breadcrumb-divider, \"/\") */;\n}\n.breadcrumb-item.active {\n color: var(--bs-breadcrumb-item-active-color);\n}\n.pagination {\n --bs-pagination-padding-x: 0.75rem;\n --bs-pagination-padding-y: 0.375rem;\n --bs-pagination-font-size: 1rem;\n --bs-pagination-color: var(--bs-link-color);\n --bs-pagination-bg: var(--bs-body-bg);\n --bs-pagination-border-width: var(--bs-border-width);\n --bs-pagination-border-color: var(--bs-border-color);\n --bs-pagination-border-radius: var(--bs-border-radius);\n --bs-pagination-hover-color: var(--bs-link-hover-color);\n --bs-pagination-hover-bg: var(--bs-tertiary-bg);\n --bs-pagination-hover-border-color: var(--bs-border-color);\n --bs-pagination-focus-color: var(--bs-link-hover-color);\n --bs-pagination-focus-bg: var(--bs-secondary-bg);\n --bs-pagination-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n --bs-pagination-active-color: #fff;\n --bs-pagination-active-bg: #0d6efd;\n --bs-pagination-active-border-color: #0d6efd;\n --bs-pagination-disabled-color: var(--bs-secondary-color);\n --bs-pagination-disabled-bg: var(--bs-secondary-bg);\n --bs-pagination-disabled-border-color: var(--bs-border-color);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n padding-left: 0;\n list-style: none;\n}\n.page-link {\n position: relative;\n display: block;\n padding: var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);\n font-size: var(--bs-pagination-font-size);\n color: var(--bs-pagination-color);\n text-decoration: none;\n background-color: var(--bs-pagination-bg);\n border: var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);\n -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .page-link {\n -webkit-transition: none;\n transition: none;\n }\n}\n.page-link:hover {\n z-index: 2;\n color: var(--bs-pagination-hover-color);\n background-color: var(--bs-pagination-hover-bg);\n border-color: var(--bs-pagination-hover-border-color);\n}\n.page-link:focus {\n z-index: 3;\n color: var(--bs-pagination-focus-color);\n background-color: var(--bs-pagination-focus-bg);\n outline: 0;\n -webkit-box-shadow: var(--bs-pagination-focus-box-shadow);\n box-shadow: var(--bs-pagination-focus-box-shadow);\n}\n.page-link.active, .active > .page-link {\n z-index: 3;\n color: var(--bs-pagination-active-color);\n background-color: var(--bs-pagination-active-bg);\n border-color: var(--bs-pagination-active-border-color);\n}\n.page-link.disabled, .disabled > .page-link {\n color: var(--bs-pagination-disabled-color);\n pointer-events: none;\n background-color: var(--bs-pagination-disabled-bg);\n border-color: var(--bs-pagination-disabled-border-color);\n}\n.page-item:not(:first-child) .page-link {\n margin-left: calc(var(--bs-border-width) * -1);\n}\n.page-item:first-child .page-link {\n border-top-left-radius: var(--bs-pagination-border-radius);\n border-bottom-left-radius: var(--bs-pagination-border-radius);\n}\n.page-item:last-child .page-link {\n border-top-right-radius: var(--bs-pagination-border-radius);\n border-bottom-right-radius: var(--bs-pagination-border-radius);\n}\n.pagination-lg {\n --bs-pagination-padding-x: 1.5rem;\n --bs-pagination-padding-y: 0.75rem;\n --bs-pagination-font-size: 1.25rem;\n --bs-pagination-border-radius: var(--bs-border-radius-lg);\n}\n.pagination-sm {\n --bs-pagination-padding-x: 0.5rem;\n --bs-pagination-padding-y: 0.25rem;\n --bs-pagination-font-size: 0.875rem;\n --bs-pagination-border-radius: var(--bs-border-radius-sm);\n}\n.badge {\n --bs-badge-padding-x: 0.65em;\n --bs-badge-padding-y: 0.35em;\n --bs-badge-font-size: 0.75em;\n --bs-badge-font-weight: 700;\n --bs-badge-color: #fff;\n --bs-badge-border-radius: var(--bs-border-radius);\n display: inline-block;\n padding: var(--bs-badge-padding-y) var(--bs-badge-padding-x);\n font-size: var(--bs-badge-font-size);\n font-weight: var(--bs-badge-font-weight);\n line-height: 1;\n color: var(--bs-badge-color);\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: var(--bs-badge-border-radius);\n}\n.badge:empty {\n display: none;\n}\n.btn .badge {\n position: relative;\n top: -1px;\n}\n.alert {\n --bs-alert-bg: transparent;\n --bs-alert-padding-x: 1rem;\n --bs-alert-padding-y: 1rem;\n --bs-alert-margin-bottom: 1rem;\n --bs-alert-color: inherit;\n --bs-alert-border-color: transparent;\n --bs-alert-border: var(--bs-border-width) solid var(--bs-alert-border-color);\n --bs-alert-border-radius: var(--bs-border-radius);\n --bs-alert-link-color: inherit;\n position: relative;\n padding: var(--bs-alert-padding-y) var(--bs-alert-padding-x);\n margin-bottom: var(--bs-alert-margin-bottom);\n color: var(--bs-alert-color);\n background-color: var(--bs-alert-bg);\n border: var(--bs-alert-border);\n border-radius: var(--bs-alert-border-radius);\n}\n.alert-heading {\n color: inherit;\n}\n.alert-link {\n font-weight: 700;\n color: var(--bs-alert-link-color);\n}\n.alert-dismissible {\n padding-right: 3rem;\n}\n.alert-dismissible .btn-close {\n position: absolute;\n top: 0;\n right: 0;\n z-index: 2;\n padding: 1.25rem 1rem;\n}\n.alert-primary {\n --bs-alert-color: var(--bs-primary-text-emphasis);\n --bs-alert-bg: var(--bs-primary-bg-subtle);\n --bs-alert-border-color: var(--bs-primary-border-subtle);\n --bs-alert-link-color: var(--bs-primary-text-emphasis);\n}\n.alert-secondary {\n --bs-alert-color: var(--bs-secondary-text-emphasis);\n --bs-alert-bg: var(--bs-secondary-bg-subtle);\n --bs-alert-border-color: var(--bs-secondary-border-subtle);\n --bs-alert-link-color: var(--bs-secondary-text-emphasis);\n}\n.alert-success {\n --bs-alert-color: var(--bs-success-text-emphasis);\n --bs-alert-bg: var(--bs-success-bg-subtle);\n --bs-alert-border-color: var(--bs-success-border-subtle);\n --bs-alert-link-color: var(--bs-success-text-emphasis);\n}\n.alert-info {\n --bs-alert-color: var(--bs-info-text-emphasis);\n --bs-alert-bg: var(--bs-info-bg-subtle);\n --bs-alert-border-color: var(--bs-info-border-subtle);\n --bs-alert-link-color: var(--bs-info-text-emphasis);\n}\n.alert-warning {\n --bs-alert-color: var(--bs-warning-text-emphasis);\n --bs-alert-bg: var(--bs-warning-bg-subtle);\n --bs-alert-border-color: var(--bs-warning-border-subtle);\n --bs-alert-link-color: var(--bs-warning-text-emphasis);\n}\n.alert-danger {\n --bs-alert-color: var(--bs-danger-text-emphasis);\n --bs-alert-bg: var(--bs-danger-bg-subtle);\n --bs-alert-border-color: var(--bs-danger-border-subtle);\n --bs-alert-link-color: var(--bs-danger-text-emphasis);\n}\n.alert-light {\n --bs-alert-color: var(--bs-light-text-emphasis);\n --bs-alert-bg: var(--bs-light-bg-subtle);\n --bs-alert-border-color: var(--bs-light-border-subtle);\n --bs-alert-link-color: var(--bs-light-text-emphasis);\n}\n.alert-dark {\n --bs-alert-color: var(--bs-dark-text-emphasis);\n --bs-alert-bg: var(--bs-dark-bg-subtle);\n --bs-alert-border-color: var(--bs-dark-border-subtle);\n --bs-alert-link-color: var(--bs-dark-text-emphasis);\n}\n@-webkit-keyframes progress-bar-stripes {\n 0% {\n background-position-x: 1rem;\n }\n}\n@keyframes progress-bar-stripes {\n 0% {\n background-position-x: 1rem;\n }\n}\n.progress,\n.progress-stacked {\n --bs-progress-height: 1rem;\n --bs-progress-font-size: 0.75rem;\n --bs-progress-bg: var(--bs-secondary-bg);\n --bs-progress-border-radius: var(--bs-border-radius);\n --bs-progress-box-shadow: var(--bs-box-shadow-inset);\n --bs-progress-bar-color: #fff;\n --bs-progress-bar-bg: #0d6efd;\n --bs-progress-bar-transition: width 0.6s ease;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n height: var(--bs-progress-height);\n overflow: hidden;\n font-size: var(--bs-progress-font-size);\n background-color: var(--bs-progress-bg);\n border-radius: var(--bs-progress-border-radius);\n}\n.progress-bar {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n overflow: hidden;\n color: var(--bs-progress-bar-color);\n text-align: center;\n white-space: nowrap;\n background-color: var(--bs-progress-bar-bg);\n -webkit-transition: var(--bs-progress-bar-transition);\n transition: var(--bs-progress-bar-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .progress-bar {\n -webkit-transition: none;\n transition: none;\n }\n}\n.progress-bar-striped {\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-size: var(--bs-progress-height) var(--bs-progress-height);\n}\n.progress-stacked > .progress {\n overflow: visible;\n}\n.progress-stacked > .progress > .progress-bar {\n width: 100%;\n}\n.progress-bar-animated {\n -webkit-animation: 1s linear infinite progress-bar-stripes;\n animation: 1s linear infinite progress-bar-stripes;\n}\n@media (prefers-reduced-motion: reduce) {\n .progress-bar-animated {\n -webkit-animation: none;\n animation: none;\n }\n}\n.list-group {\n --bs-list-group-color: var(--bs-body-color);\n --bs-list-group-bg: var(--bs-body-bg);\n --bs-list-group-border-color: var(--bs-border-color);\n --bs-list-group-border-width: var(--bs-border-width);\n --bs-list-group-border-radius: var(--bs-border-radius);\n --bs-list-group-item-padding-x: 1rem;\n --bs-list-group-item-padding-y: 0.5rem;\n --bs-list-group-action-color: var(--bs-secondary-color);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-tertiary-bg);\n --bs-list-group-action-active-color: var(--bs-body-color);\n --bs-list-group-action-active-bg: var(--bs-secondary-bg);\n --bs-list-group-disabled-color: var(--bs-secondary-color);\n --bs-list-group-disabled-bg: var(--bs-body-bg);\n --bs-list-group-active-color: #fff;\n --bs-list-group-active-bg: #0d6efd;\n --bs-list-group-active-border-color: #0d6efd;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n padding-left: 0;\n margin-bottom: 0;\n border-radius: var(--bs-list-group-border-radius);\n}\n.list-group-numbered {\n list-style-type: none;\n counter-reset: section;\n}\n.list-group-numbered > .list-group-item::before {\n content: counters(section, \".\") \". \";\n counter-increment: section;\n}\n.list-group-item-action {\n width: 100%;\n color: var(--bs-list-group-action-color);\n text-align: inherit;\n}\n.list-group-item-action:hover, .list-group-item-action:focus {\n z-index: 1;\n color: var(--bs-list-group-action-hover-color);\n text-decoration: none;\n background-color: var(--bs-list-group-action-hover-bg);\n}\n.list-group-item-action:active {\n color: var(--bs-list-group-action-active-color);\n background-color: var(--bs-list-group-action-active-bg);\n}\n.list-group-item {\n position: relative;\n display: block;\n padding: var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);\n color: var(--bs-list-group-color);\n text-decoration: none;\n background-color: var(--bs-list-group-bg);\n border: var(--bs-list-group-border-width) solid var(--bs-list-group-border-color);\n}\n.list-group-item:first-child {\n border-top-left-radius: inherit;\n border-top-right-radius: inherit;\n}\n.list-group-item:last-child {\n border-bottom-right-radius: inherit;\n border-bottom-left-radius: inherit;\n}\n.list-group-item.disabled, .list-group-item:disabled {\n color: var(--bs-list-group-disabled-color);\n pointer-events: none;\n background-color: var(--bs-list-group-disabled-bg);\n}\n.list-group-item.active {\n z-index: 2;\n color: var(--bs-list-group-active-color);\n background-color: var(--bs-list-group-active-bg);\n border-color: var(--bs-list-group-active-border-color);\n}\n.list-group-item + .list-group-item {\n border-top-width: 0;\n}\n.list-group-item + .list-group-item.active {\n margin-top: calc(-1 * var(--bs-list-group-border-width));\n border-top-width: var(--bs-list-group-border-width);\n}\n.list-group-horizontal {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n}\n.list-group-horizontal > .list-group-item:first-child:not(:last-child) {\n border-bottom-left-radius: var(--bs-list-group-border-radius);\n border-top-right-radius: 0;\n}\n.list-group-horizontal > .list-group-item:last-child:not(:first-child) {\n border-top-right-radius: var(--bs-list-group-border-radius);\n border-bottom-left-radius: 0;\n}\n.list-group-horizontal > .list-group-item.active {\n margin-top: 0;\n}\n.list-group-horizontal > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n}\n.list-group-horizontal > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n}\n@media (min-width: 576px) {\n .list-group-horizontal-sm {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .list-group-horizontal-sm > .list-group-item:first-child:not(:last-child) {\n border-bottom-left-radius: var(--bs-list-group-border-radius);\n border-top-right-radius: 0;\n }\n .list-group-horizontal-sm > .list-group-item:last-child:not(:first-child) {\n border-top-right-radius: var(--bs-list-group-border-radius);\n border-bottom-left-radius: 0;\n }\n .list-group-horizontal-sm > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-sm > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n }\n .list-group-horizontal-sm > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n }\n}\n@media (min-width: 768px) {\n .list-group-horizontal-md {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .list-group-horizontal-md > .list-group-item:first-child:not(:last-child) {\n border-bottom-left-radius: var(--bs-list-group-border-radius);\n border-top-right-radius: 0;\n }\n .list-group-horizontal-md > .list-group-item:last-child:not(:first-child) {\n border-top-right-radius: var(--bs-list-group-border-radius);\n border-bottom-left-radius: 0;\n }\n .list-group-horizontal-md > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-md > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n }\n .list-group-horizontal-md > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n }\n}\n@media (min-width: 992px) {\n .list-group-horizontal-lg {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .list-group-horizontal-lg > .list-group-item:first-child:not(:last-child) {\n border-bottom-left-radius: var(--bs-list-group-border-radius);\n border-top-right-radius: 0;\n }\n .list-group-horizontal-lg > .list-group-item:last-child:not(:first-child) {\n border-top-right-radius: var(--bs-list-group-border-radius);\n border-bottom-left-radius: 0;\n }\n .list-group-horizontal-lg > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-lg > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n }\n .list-group-horizontal-lg > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n }\n}\n@media (min-width: 1200px) {\n .list-group-horizontal-xl {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .list-group-horizontal-xl > .list-group-item:first-child:not(:last-child) {\n border-bottom-left-radius: var(--bs-list-group-border-radius);\n border-top-right-radius: 0;\n }\n .list-group-horizontal-xl > .list-group-item:last-child:not(:first-child) {\n border-top-right-radius: var(--bs-list-group-border-radius);\n border-bottom-left-radius: 0;\n }\n .list-group-horizontal-xl > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-xl > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n }\n .list-group-horizontal-xl > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n }\n}\n@media (min-width: 1400px) {\n .list-group-horizontal-xxl {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .list-group-horizontal-xxl > .list-group-item:first-child:not(:last-child) {\n border-bottom-left-radius: var(--bs-list-group-border-radius);\n border-top-right-radius: 0;\n }\n .list-group-horizontal-xxl > .list-group-item:last-child:not(:first-child) {\n border-top-right-radius: var(--bs-list-group-border-radius);\n border-bottom-left-radius: 0;\n }\n .list-group-horizontal-xxl > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-xxl > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n }\n .list-group-horizontal-xxl > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n }\n}\n.list-group-flush {\n border-radius: 0;\n}\n.list-group-flush > .list-group-item {\n border-width: 0 0 var(--bs-list-group-border-width);\n}\n.list-group-flush > .list-group-item:last-child {\n border-bottom-width: 0;\n}\n.list-group-item-primary {\n --bs-list-group-color: var(--bs-primary-text-emphasis);\n --bs-list-group-bg: var(--bs-primary-bg-subtle);\n --bs-list-group-border-color: var(--bs-primary-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-primary-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-primary-border-subtle);\n --bs-list-group-active-color: var(--bs-primary-bg-subtle);\n --bs-list-group-active-bg: var(--bs-primary-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-primary-text-emphasis);\n}\n.list-group-item-secondary {\n --bs-list-group-color: var(--bs-secondary-text-emphasis);\n --bs-list-group-bg: var(--bs-secondary-bg-subtle);\n --bs-list-group-border-color: var(--bs-secondary-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-secondary-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-secondary-border-subtle);\n --bs-list-group-active-color: var(--bs-secondary-bg-subtle);\n --bs-list-group-active-bg: var(--bs-secondary-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-secondary-text-emphasis);\n}\n.list-group-item-success {\n --bs-list-group-color: var(--bs-success-text-emphasis);\n --bs-list-group-bg: var(--bs-success-bg-subtle);\n --bs-list-group-border-color: var(--bs-success-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-success-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-success-border-subtle);\n --bs-list-group-active-color: var(--bs-success-bg-subtle);\n --bs-list-group-active-bg: var(--bs-success-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-success-text-emphasis);\n}\n.list-group-item-info {\n --bs-list-group-color: var(--bs-info-text-emphasis);\n --bs-list-group-bg: var(--bs-info-bg-subtle);\n --bs-list-group-border-color: var(--bs-info-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-info-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-info-border-subtle);\n --bs-list-group-active-color: var(--bs-info-bg-subtle);\n --bs-list-group-active-bg: var(--bs-info-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-info-text-emphasis);\n}\n.list-group-item-warning {\n --bs-list-group-color: var(--bs-warning-text-emphasis);\n --bs-list-group-bg: var(--bs-warning-bg-subtle);\n --bs-list-group-border-color: var(--bs-warning-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-warning-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-warning-border-subtle);\n --bs-list-group-active-color: var(--bs-warning-bg-subtle);\n --bs-list-group-active-bg: var(--bs-warning-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-warning-text-emphasis);\n}\n.list-group-item-danger {\n --bs-list-group-color: var(--bs-danger-text-emphasis);\n --bs-list-group-bg: var(--bs-danger-bg-subtle);\n --bs-list-group-border-color: var(--bs-danger-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-danger-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-danger-border-subtle);\n --bs-list-group-active-color: var(--bs-danger-bg-subtle);\n --bs-list-group-active-bg: var(--bs-danger-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-danger-text-emphasis);\n}\n.list-group-item-light {\n --bs-list-group-color: var(--bs-light-text-emphasis);\n --bs-list-group-bg: var(--bs-light-bg-subtle);\n --bs-list-group-border-color: var(--bs-light-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-light-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-light-border-subtle);\n --bs-list-group-active-color: var(--bs-light-bg-subtle);\n --bs-list-group-active-bg: var(--bs-light-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-light-text-emphasis);\n}\n.list-group-item-dark {\n --bs-list-group-color: var(--bs-dark-text-emphasis);\n --bs-list-group-bg: var(--bs-dark-bg-subtle);\n --bs-list-group-border-color: var(--bs-dark-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-dark-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-dark-border-subtle);\n --bs-list-group-active-color: var(--bs-dark-bg-subtle);\n --bs-list-group-active-bg: var(--bs-dark-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-dark-text-emphasis);\n}\n.btn-close {\n --bs-btn-close-color: #000;\n --bs-btn-close-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e\");\n --bs-btn-close-opacity: 0.5;\n --bs-btn-close-hover-opacity: 0.75;\n --bs-btn-close-focus-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n --bs-btn-close-focus-opacity: 1;\n --bs-btn-close-disabled-opacity: 0.25;\n --bs-btn-close-white-filter: invert(1) grayscale(100%) brightness(200%);\n -webkit-box-sizing: content-box;\n box-sizing: content-box;\n width: 1em;\n height: 1em;\n padding: 0.25em 0.25em;\n color: var(--bs-btn-close-color);\n background: transparent var(--bs-btn-close-bg) center/1em auto no-repeat;\n border: 0;\n border-radius: 0.375rem;\n opacity: var(--bs-btn-close-opacity);\n}\n.btn-close:hover {\n color: var(--bs-btn-close-color);\n text-decoration: none;\n opacity: var(--bs-btn-close-hover-opacity);\n}\n.btn-close:focus {\n outline: 0;\n -webkit-box-shadow: var(--bs-btn-close-focus-shadow);\n box-shadow: var(--bs-btn-close-focus-shadow);\n opacity: var(--bs-btn-close-focus-opacity);\n}\n.btn-close:disabled, .btn-close.disabled {\n pointer-events: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n opacity: var(--bs-btn-close-disabled-opacity);\n}\n.btn-close-white {\n -webkit-filter: var(--bs-btn-close-white-filter);\n filter: var(--bs-btn-close-white-filter);\n}\n[data-bs-theme=dark] .btn-close {\n -webkit-filter: var(--bs-btn-close-white-filter);\n filter: var(--bs-btn-close-white-filter);\n}\n.toast {\n --bs-toast-zindex: 1090;\n --bs-toast-padding-x: 0.75rem;\n --bs-toast-padding-y: 0.5rem;\n --bs-toast-spacing: 1.5rem;\n --bs-toast-max-width: 350px;\n --bs-toast-font-size: 0.875rem;\n --bs-toast-color: ;\n --bs-toast-bg: rgba(var(--bs-body-bg-rgb), 0.85);\n --bs-toast-border-width: var(--bs-border-width);\n --bs-toast-border-color: var(--bs-border-color-translucent);\n --bs-toast-border-radius: var(--bs-border-radius);\n --bs-toast-box-shadow: var(--bs-box-shadow);\n --bs-toast-header-color: var(--bs-secondary-color);\n --bs-toast-header-bg: rgba(var(--bs-body-bg-rgb), 0.85);\n --bs-toast-header-border-color: var(--bs-border-color-translucent);\n width: var(--bs-toast-max-width);\n max-width: 100%;\n font-size: var(--bs-toast-font-size);\n color: var(--bs-toast-color);\n pointer-events: auto;\n background-color: var(--bs-toast-bg);\n background-clip: padding-box;\n border: var(--bs-toast-border-width) solid var(--bs-toast-border-color);\n -webkit-box-shadow: var(--bs-toast-box-shadow);\n box-shadow: var(--bs-toast-box-shadow);\n border-radius: var(--bs-toast-border-radius);\n}\n.toast.showing {\n opacity: 0;\n}\n.toast:not(.show) {\n display: none;\n}\n.toast-container {\n --bs-toast-zindex: 1090;\n position: absolute;\n z-index: var(--bs-toast-zindex);\n width: -webkit-max-content;\n width: -moz-max-content;\n width: max-content;\n max-width: 100%;\n pointer-events: none;\n}\n.toast-container > :not(:last-child) {\n margin-bottom: var(--bs-toast-spacing);\n}\n.toast-header {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n padding: var(--bs-toast-padding-y) var(--bs-toast-padding-x);\n color: var(--bs-toast-header-color);\n background-color: var(--bs-toast-header-bg);\n background-clip: padding-box;\n border-bottom: var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);\n border-top-left-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));\n border-top-right-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));\n}\n.toast-header .btn-close {\n margin-right: calc(-0.5 * var(--bs-toast-padding-x));\n margin-left: var(--bs-toast-padding-x);\n}\n.toast-body {\n padding: var(--bs-toast-padding-x);\n word-wrap: break-word;\n}\n.modal {\n --bs-modal-zindex: 1055;\n --bs-modal-width: 500px;\n --bs-modal-padding: 1rem;\n --bs-modal-margin: 0.5rem;\n --bs-modal-color: ;\n --bs-modal-bg: var(--bs-body-bg);\n --bs-modal-border-color: var(--bs-border-color-translucent);\n --bs-modal-border-width: var(--bs-border-width);\n --bs-modal-border-radius: var(--bs-border-radius-lg);\n --bs-modal-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);\n --bs-modal-inner-border-radius: calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));\n --bs-modal-header-padding-x: 1rem;\n --bs-modal-header-padding-y: 1rem;\n --bs-modal-header-padding: 1rem 1rem;\n --bs-modal-header-border-color: var(--bs-border-color);\n --bs-modal-header-border-width: var(--bs-border-width);\n --bs-modal-title-line-height: 1.5;\n --bs-modal-footer-gap: 0.5rem;\n --bs-modal-footer-bg: ;\n --bs-modal-footer-border-color: var(--bs-border-color);\n --bs-modal-footer-border-width: var(--bs-border-width);\n position: fixed;\n top: 0;\n left: 0;\n z-index: var(--bs-modal-zindex);\n display: none;\n width: 100%;\n height: 100%;\n overflow-x: hidden;\n overflow-y: auto;\n outline: 0;\n}\n.modal-dialog {\n position: relative;\n width: auto;\n margin: var(--bs-modal-margin);\n pointer-events: none;\n}\n.modal.fade .modal-dialog {\n -webkit-transition: -webkit-transform 0.3s ease-out;\n transition: -webkit-transform 0.3s ease-out;\n transition: transform 0.3s ease-out;\n transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;\n -webkit-transform: translate(0, -50px);\n transform: translate(0, -50px);\n}\n@media (prefers-reduced-motion: reduce) {\n .modal.fade .modal-dialog {\n -webkit-transition: none;\n transition: none;\n }\n}\n.modal.show .modal-dialog {\n -webkit-transform: none;\n transform: none;\n}\n.modal.modal-static .modal-dialog {\n -webkit-transform: scale(1.02);\n transform: scale(1.02);\n}\n.modal-dialog-scrollable {\n height: calc(100% - var(--bs-modal-margin) * 2);\n}\n.modal-dialog-scrollable .modal-content {\n max-height: 100%;\n overflow: hidden;\n}\n.modal-dialog-scrollable .modal-body {\n overflow-y: auto;\n}\n.modal-dialog-centered {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n min-height: calc(100% - var(--bs-modal-margin) * 2);\n}\n.modal-content {\n position: relative;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n width: 100%;\n color: var(--bs-modal-color);\n pointer-events: auto;\n background-color: var(--bs-modal-bg);\n background-clip: padding-box;\n border: var(--bs-modal-border-width) solid var(--bs-modal-border-color);\n border-radius: var(--bs-modal-border-radius);\n outline: 0;\n}\n.modal-backdrop {\n --bs-backdrop-zindex: 1050;\n --bs-backdrop-bg: #000;\n --bs-backdrop-opacity: 0.5;\n position: fixed;\n top: 0;\n left: 0;\n z-index: var(--bs-backdrop-zindex);\n width: 100vw;\n height: 100vh;\n background-color: var(--bs-backdrop-bg);\n}\n.modal-backdrop.fade {\n opacity: 0;\n}\n.modal-backdrop.show {\n opacity: var(--bs-backdrop-opacity);\n}\n.modal-header {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n padding: var(--bs-modal-header-padding);\n border-bottom: var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);\n border-top-left-radius: var(--bs-modal-inner-border-radius);\n border-top-right-radius: var(--bs-modal-inner-border-radius);\n}\n.modal-header .btn-close {\n padding: calc(var(--bs-modal-header-padding-y) * 0.5) calc(var(--bs-modal-header-padding-x) * 0.5);\n margin: calc(-0.5 * var(--bs-modal-header-padding-y)) calc(-0.5 * var(--bs-modal-header-padding-x)) calc(-0.5 * var(--bs-modal-header-padding-y)) auto;\n}\n.modal-title {\n margin-bottom: 0;\n line-height: var(--bs-modal-title-line-height);\n}\n.modal-body {\n position: relative;\n -webkit-box-flex: 1;\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n padding: var(--bs-modal-padding);\n}\n.modal-footer {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: end;\n -ms-flex-pack: end;\n justify-content: flex-end;\n padding: calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * 0.5);\n background-color: var(--bs-modal-footer-bg);\n border-top: var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);\n border-bottom-right-radius: var(--bs-modal-inner-border-radius);\n border-bottom-left-radius: var(--bs-modal-inner-border-radius);\n}\n.modal-footer > * {\n margin: calc(var(--bs-modal-footer-gap) * 0.5);\n}\n@media (min-width: 576px) {\n .modal {\n --bs-modal-margin: 1.75rem;\n --bs-modal-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);\n }\n .modal-dialog {\n max-width: var(--bs-modal-width);\n margin-right: auto;\n margin-left: auto;\n }\n .modal-sm {\n --bs-modal-width: 300px;\n }\n}\n@media (min-width: 992px) {\n .modal-lg,\n .modal-xl {\n --bs-modal-width: 800px;\n }\n}\n@media (min-width: 1200px) {\n .modal-xl {\n --bs-modal-width: 1140px;\n }\n}\n.modal-fullscreen {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n}\n.modal-fullscreen .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n}\n.modal-fullscreen .modal-header,\n.modal-fullscreen .modal-footer {\n border-radius: 0;\n}\n.modal-fullscreen .modal-body {\n overflow-y: auto;\n}\n@media (max-width: 575.98px) {\n .modal-fullscreen-sm-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-sm-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-sm-down .modal-header,\n .modal-fullscreen-sm-down .modal-footer {\n border-radius: 0;\n }\n .modal-fullscreen-sm-down .modal-body {\n overflow-y: auto;\n }\n}\n@media (max-width: 767.98px) {\n .modal-fullscreen-md-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-md-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-md-down .modal-header,\n .modal-fullscreen-md-down .modal-footer {\n border-radius: 0;\n }\n .modal-fullscreen-md-down .modal-body {\n overflow-y: auto;\n }\n}\n@media (max-width: 991.98px) {\n .modal-fullscreen-lg-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-lg-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-lg-down .modal-header,\n .modal-fullscreen-lg-down .modal-footer {\n border-radius: 0;\n }\n .modal-fullscreen-lg-down .modal-body {\n overflow-y: auto;\n }\n}\n@media (max-width: 1199.98px) {\n .modal-fullscreen-xl-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-xl-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-xl-down .modal-header,\n .modal-fullscreen-xl-down .modal-footer {\n border-radius: 0;\n }\n .modal-fullscreen-xl-down .modal-body {\n overflow-y: auto;\n }\n}\n@media (max-width: 1399.98px) {\n .modal-fullscreen-xxl-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-xxl-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-xxl-down .modal-header,\n .modal-fullscreen-xxl-down .modal-footer {\n border-radius: 0;\n }\n .modal-fullscreen-xxl-down .modal-body {\n overflow-y: auto;\n }\n}\n.tooltip {\n --bs-tooltip-zindex: 1080;\n --bs-tooltip-max-width: 200px;\n --bs-tooltip-padding-x: 0.5rem;\n --bs-tooltip-padding-y: 0.25rem;\n --bs-tooltip-margin: ;\n --bs-tooltip-font-size: 0.875rem;\n --bs-tooltip-color: var(--bs-body-bg);\n --bs-tooltip-bg: var(--bs-emphasis-color);\n --bs-tooltip-border-radius: var(--bs-border-radius);\n --bs-tooltip-opacity: 0.9;\n --bs-tooltip-arrow-width: 0.8rem;\n --bs-tooltip-arrow-height: 0.4rem;\n z-index: var(--bs-tooltip-zindex);\n display: block;\n margin: var(--bs-tooltip-margin);\n font-family: var(--bs-font-sans-serif);\n font-style: normal;\n font-weight: 400;\n line-height: 1.5;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n white-space: normal;\n word-spacing: normal;\n line-break: auto;\n font-size: var(--bs-tooltip-font-size);\n word-wrap: break-word;\n opacity: 0;\n}\n.tooltip.show {\n opacity: var(--bs-tooltip-opacity);\n}\n.tooltip .tooltip-arrow {\n display: block;\n width: var(--bs-tooltip-arrow-width);\n height: var(--bs-tooltip-arrow-height);\n}\n.tooltip .tooltip-arrow::before {\n position: absolute;\n content: \"\";\n border-color: transparent;\n border-style: solid;\n}\n.bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow {\n bottom: calc(-1 * var(--bs-tooltip-arrow-height));\n}\n.bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before {\n top: -1px;\n border-width: var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;\n border-top-color: var(--bs-tooltip-bg);\n}\n/* rtl:begin:ignore */\n.bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow {\n left: calc(-1 * var(--bs-tooltip-arrow-height));\n width: var(--bs-tooltip-arrow-height);\n height: var(--bs-tooltip-arrow-width);\n}\n.bs-tooltip-end .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before {\n right: -1px;\n border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;\n border-right-color: var(--bs-tooltip-bg);\n}\n/* rtl:end:ignore */\n.bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow {\n top: calc(-1 * var(--bs-tooltip-arrow-height));\n}\n.bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before {\n bottom: -1px;\n border-width: 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);\n border-bottom-color: var(--bs-tooltip-bg);\n}\n/* rtl:begin:ignore */\n.bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow {\n right: calc(-1 * var(--bs-tooltip-arrow-height));\n width: var(--bs-tooltip-arrow-height);\n height: var(--bs-tooltip-arrow-width);\n}\n.bs-tooltip-start .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before {\n left: -1px;\n border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);\n border-left-color: var(--bs-tooltip-bg);\n}\n/* rtl:end:ignore */\n.tooltip-inner {\n max-width: var(--bs-tooltip-max-width);\n padding: var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);\n color: var(--bs-tooltip-color);\n text-align: center;\n background-color: var(--bs-tooltip-bg);\n border-radius: var(--bs-tooltip-border-radius);\n}\n.popover {\n --bs-popover-zindex: 1070;\n --bs-popover-max-width: 276px;\n --bs-popover-font-size: 0.875rem;\n --bs-popover-bg: var(--bs-body-bg);\n --bs-popover-border-width: var(--bs-border-width);\n --bs-popover-border-color: var(--bs-border-color-translucent);\n --bs-popover-border-radius: var(--bs-border-radius-lg);\n --bs-popover-inner-border-radius: calc(var(--bs-border-radius-lg) - var(--bs-border-width));\n --bs-popover-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);\n --bs-popover-header-padding-x: 1rem;\n --bs-popover-header-padding-y: 0.5rem;\n --bs-popover-header-font-size: 1rem;\n --bs-popover-header-color: inherit;\n --bs-popover-header-bg: var(--bs-secondary-bg);\n --bs-popover-body-padding-x: 1rem;\n --bs-popover-body-padding-y: 1rem;\n --bs-popover-body-color: var(--bs-body-color);\n --bs-popover-arrow-width: 1rem;\n --bs-popover-arrow-height: 0.5rem;\n --bs-popover-arrow-border: var(--bs-popover-border-color);\n z-index: var(--bs-popover-zindex);\n display: block;\n max-width: var(--bs-popover-max-width);\n font-family: var(--bs-font-sans-serif);\n font-style: normal;\n font-weight: 400;\n line-height: 1.5;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n white-space: normal;\n word-spacing: normal;\n line-break: auto;\n font-size: var(--bs-popover-font-size);\n word-wrap: break-word;\n background-color: var(--bs-popover-bg);\n background-clip: padding-box;\n border: var(--bs-popover-border-width) solid var(--bs-popover-border-color);\n border-radius: var(--bs-popover-border-radius);\n}\n.popover .popover-arrow {\n display: block;\n width: var(--bs-popover-arrow-width);\n height: var(--bs-popover-arrow-height);\n}\n.popover .popover-arrow::before, .popover .popover-arrow::after {\n position: absolute;\n display: block;\n content: \"\";\n border-color: transparent;\n border-style: solid;\n border-width: 0;\n}\n.bs-popover-top > .popover-arrow, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow {\n bottom: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));\n}\n.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before, .bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {\n border-width: var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;\n}\n.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before {\n bottom: 0;\n border-top-color: var(--bs-popover-arrow-border);\n}\n.bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {\n bottom: var(--bs-popover-border-width);\n border-top-color: var(--bs-popover-bg);\n}\n/* rtl:begin:ignore */\n.bs-popover-end > .popover-arrow, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow {\n left: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));\n width: var(--bs-popover-arrow-height);\n height: var(--bs-popover-arrow-width);\n}\n.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before, .bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {\n border-width: calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;\n}\n.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before {\n left: 0;\n border-right-color: var(--bs-popover-arrow-border);\n}\n.bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {\n left: var(--bs-popover-border-width);\n border-right-color: var(--bs-popover-bg);\n}\n/* rtl:end:ignore */\n.bs-popover-bottom > .popover-arrow, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow {\n top: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));\n}\n.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before, .bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {\n border-width: 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);\n}\n.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before {\n top: 0;\n border-bottom-color: var(--bs-popover-arrow-border);\n}\n.bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {\n top: var(--bs-popover-border-width);\n border-bottom-color: var(--bs-popover-bg);\n}\n.bs-popover-bottom .popover-header::before, .bs-popover-auto[data-popper-placement^=bottom] .popover-header::before {\n position: absolute;\n top: 0;\n left: 50%;\n display: block;\n width: var(--bs-popover-arrow-width);\n margin-left: calc(-0.5 * var(--bs-popover-arrow-width));\n content: \"\";\n border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-header-bg);\n}\n/* rtl:begin:ignore */\n.bs-popover-start > .popover-arrow, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow {\n right: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));\n width: var(--bs-popover-arrow-height);\n height: var(--bs-popover-arrow-width);\n}\n.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before, .bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {\n border-width: calc(var(--bs-popover-arrow-width) * 0.5) 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);\n}\n.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before {\n right: 0;\n border-left-color: var(--bs-popover-arrow-border);\n}\n.bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {\n right: var(--bs-popover-border-width);\n border-left-color: var(--bs-popover-bg);\n}\n/* rtl:end:ignore */\n.popover-header {\n padding: var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);\n margin-bottom: 0;\n font-size: var(--bs-popover-header-font-size);\n color: var(--bs-popover-header-color);\n background-color: var(--bs-popover-header-bg);\n border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-border-color);\n border-top-left-radius: var(--bs-popover-inner-border-radius);\n border-top-right-radius: var(--bs-popover-inner-border-radius);\n}\n.popover-header:empty {\n display: none;\n}\n.popover-body {\n padding: var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);\n color: var(--bs-popover-body-color);\n}\n.carousel {\n position: relative;\n}\n.carousel.pointer-event {\n -ms-touch-action: pan-y;\n touch-action: pan-y;\n}\n.carousel-inner {\n position: relative;\n width: 100%;\n overflow: hidden;\n}\n.carousel-inner::after {\n display: block;\n clear: both;\n content: \"\";\n}\n.carousel-item {\n position: relative;\n display: none;\n float: left;\n width: 100%;\n margin-right: -100%;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n -webkit-transition: -webkit-transform 0.6s ease-in-out;\n transition: -webkit-transform 0.6s ease-in-out;\n transition: transform 0.6s ease-in-out;\n transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-item {\n -webkit-transition: none;\n transition: none;\n }\n}\n.carousel-item.active,\n.carousel-item-next,\n.carousel-item-prev {\n display: block;\n}\n.carousel-item-next:not(.carousel-item-start),\n.active.carousel-item-end {\n -webkit-transform: translateX(100%);\n transform: translateX(100%);\n}\n.carousel-item-prev:not(.carousel-item-end),\n.active.carousel-item-start {\n -webkit-transform: translateX(-100%);\n transform: translateX(-100%);\n}\n.carousel-fade .carousel-item {\n opacity: 0;\n -webkit-transition-property: opacity;\n transition-property: opacity;\n -webkit-transform: none;\n transform: none;\n}\n.carousel-fade .carousel-item.active,\n.carousel-fade .carousel-item-next.carousel-item-start,\n.carousel-fade .carousel-item-prev.carousel-item-end {\n z-index: 1;\n opacity: 1;\n}\n.carousel-fade .active.carousel-item-start,\n.carousel-fade .active.carousel-item-end {\n z-index: 0;\n opacity: 0;\n -webkit-transition: opacity 0s 0.6s;\n transition: opacity 0s 0.6s;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-fade .active.carousel-item-start,\n .carousel-fade .active.carousel-item-end {\n -webkit-transition: none;\n transition: none;\n }\n}\n.carousel-control-prev,\n.carousel-control-next {\n position: absolute;\n top: 0;\n bottom: 0;\n z-index: 1;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n width: 15%;\n padding: 0;\n color: #fff;\n text-align: center;\n background: none;\n border: 0;\n opacity: 0.5;\n -webkit-transition: opacity 0.15s ease;\n transition: opacity 0.15s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-control-prev,\n .carousel-control-next {\n -webkit-transition: none;\n transition: none;\n }\n}\n.carousel-control-prev:hover, .carousel-control-prev:focus,\n.carousel-control-next:hover,\n.carousel-control-next:focus {\n color: #fff;\n text-decoration: none;\n outline: 0;\n opacity: 0.9;\n}\n.carousel-control-prev {\n left: 0;\n}\n.carousel-control-next {\n right: 0;\n}\n.carousel-control-prev-icon,\n.carousel-control-next-icon {\n display: inline-block;\n width: 2rem;\n height: 2rem;\n background-repeat: no-repeat;\n background-position: 50%;\n background-size: 100% 100%;\n}\n/* rtl:options: {\n \"autoRename\": true,\n \"stringMap\":[ {\n \"name\" : \"prev-next\",\n \"search\" : \"prev\",\n \"replace\" : \"next\"\n } ]\n} */\n.carousel-control-prev-icon {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e\");\n}\n.carousel-control-next-icon {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\");\n}\n.carousel-indicators {\n position: absolute;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 2;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n padding: 0;\n margin-right: 15%;\n margin-bottom: 1rem;\n margin-left: 15%;\n}\n.carousel-indicators [data-bs-target] {\n -webkit-box-sizing: content-box;\n box-sizing: content-box;\n -webkit-box-flex: 0;\n -ms-flex: 0 1 auto;\n flex: 0 1 auto;\n width: 30px;\n height: 3px;\n padding: 0;\n margin-right: 3px;\n margin-left: 3px;\n text-indent: -999px;\n cursor: pointer;\n background-color: #fff;\n background-clip: padding-box;\n border: 0;\n border-top: 10px solid transparent;\n border-bottom: 10px solid transparent;\n opacity: 0.5;\n -webkit-transition: opacity 0.6s ease;\n transition: opacity 0.6s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-indicators [data-bs-target] {\n -webkit-transition: none;\n transition: none;\n }\n}\n.carousel-indicators .active {\n opacity: 1;\n}\n.carousel-caption {\n position: absolute;\n right: 15%;\n bottom: 1.25rem;\n left: 15%;\n padding-top: 1.25rem;\n padding-bottom: 1.25rem;\n color: #fff;\n text-align: center;\n}\n.carousel-dark .carousel-control-prev-icon,\n.carousel-dark .carousel-control-next-icon {\n -webkit-filter: invert(1) grayscale(100);\n filter: invert(1) grayscale(100);\n}\n.carousel-dark .carousel-indicators [data-bs-target] {\n background-color: #000;\n}\n.carousel-dark .carousel-caption {\n color: #000;\n}\n[data-bs-theme=dark] .carousel .carousel-control-prev-icon,\n[data-bs-theme=dark] .carousel .carousel-control-next-icon, [data-bs-theme=dark].carousel .carousel-control-prev-icon,\n[data-bs-theme=dark].carousel .carousel-control-next-icon {\n -webkit-filter: invert(1) grayscale(100);\n filter: invert(1) grayscale(100);\n}\n[data-bs-theme=dark] .carousel .carousel-indicators [data-bs-target], [data-bs-theme=dark].carousel .carousel-indicators [data-bs-target] {\n background-color: #000;\n}\n[data-bs-theme=dark] .carousel .carousel-caption, [data-bs-theme=dark].carousel .carousel-caption {\n color: #000;\n}\n.spinner-grow,\n.spinner-border {\n display: inline-block;\n width: var(--bs-spinner-width);\n height: var(--bs-spinner-height);\n vertical-align: var(--bs-spinner-vertical-align);\n border-radius: 50%;\n -webkit-animation: var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name);\n animation: var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name);\n}\n@-webkit-keyframes spinner-border {\n to {\n -webkit-transform: rotate(360deg) /* rtl:ignore */;\n transform: rotate(360deg) /* rtl:ignore */;\n }\n}\n@keyframes spinner-border {\n to {\n -webkit-transform: rotate(360deg) /* rtl:ignore */;\n transform: rotate(360deg) /* rtl:ignore */;\n }\n}\n.spinner-border {\n --bs-spinner-width: 2rem;\n --bs-spinner-height: 2rem;\n --bs-spinner-vertical-align: -0.125em;\n --bs-spinner-border-width: 0.25em;\n --bs-spinner-animation-speed: 0.75s;\n --bs-spinner-animation-name: spinner-border;\n border: var(--bs-spinner-border-width) solid currentcolor;\n border-right-color: transparent;\n}\n.spinner-border-sm {\n --bs-spinner-width: 1rem;\n --bs-spinner-height: 1rem;\n --bs-spinner-border-width: 0.2em;\n}\n@-webkit-keyframes spinner-grow {\n 0% {\n -webkit-transform: scale(0);\n transform: scale(0);\n }\n 50% {\n opacity: 1;\n -webkit-transform: none;\n transform: none;\n }\n}\n@keyframes spinner-grow {\n 0% {\n -webkit-transform: scale(0);\n transform: scale(0);\n }\n 50% {\n opacity: 1;\n -webkit-transform: none;\n transform: none;\n }\n}\n.spinner-grow {\n --bs-spinner-width: 2rem;\n --bs-spinner-height: 2rem;\n --bs-spinner-vertical-align: -0.125em;\n --bs-spinner-animation-speed: 0.75s;\n --bs-spinner-animation-name: spinner-grow;\n background-color: currentcolor;\n opacity: 0;\n}\n.spinner-grow-sm {\n --bs-spinner-width: 1rem;\n --bs-spinner-height: 1rem;\n}\n@media (prefers-reduced-motion: reduce) {\n .spinner-border,\n .spinner-grow {\n --bs-spinner-animation-speed: 1.5s;\n }\n}\n.offcanvas, .offcanvas-xxl, .offcanvas-xl, .offcanvas-lg, .offcanvas-md, .offcanvas-sm {\n --bs-offcanvas-zindex: 1045;\n --bs-offcanvas-width: 400px;\n --bs-offcanvas-height: 30vh;\n --bs-offcanvas-padding-x: 1rem;\n --bs-offcanvas-padding-y: 1rem;\n --bs-offcanvas-color: var(--bs-body-color);\n --bs-offcanvas-bg: var(--bs-body-bg);\n --bs-offcanvas-border-width: var(--bs-border-width);\n --bs-offcanvas-border-color: var(--bs-border-color-translucent);\n --bs-offcanvas-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);\n --bs-offcanvas-transition: transform 0.3s ease-in-out;\n --bs-offcanvas-title-line-height: 1.5;\n}\n@media (max-width: 575.98px) {\n .offcanvas-sm {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n -webkit-transition: var(--bs-offcanvas-transition);\n transition: var(--bs-offcanvas-transition);\n }\n}\n@media (max-width: 575.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-sm {\n -webkit-transition: none;\n transition: none;\n }\n}\n@media (max-width: 575.98px) {\n .offcanvas-sm.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateX(-100%);\n transform: translateX(-100%);\n }\n .offcanvas-sm.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateX(100%);\n transform: translateX(100%);\n }\n .offcanvas-sm.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateY(-100%);\n transform: translateY(-100%);\n }\n .offcanvas-sm.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateY(100%);\n transform: translateY(100%);\n }\n .offcanvas-sm.showing, .offcanvas-sm.show:not(.hiding) {\n -webkit-transform: none;\n transform: none;\n }\n .offcanvas-sm.showing, .offcanvas-sm.hiding, .offcanvas-sm.show {\n visibility: visible;\n }\n}\n@media (min-width: 576px) {\n .offcanvas-sm {\n --bs-offcanvas-height: auto;\n --bs-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-sm .offcanvas-header {\n display: none;\n }\n .offcanvas-sm .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n@media (max-width: 767.98px) {\n .offcanvas-md {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n -webkit-transition: var(--bs-offcanvas-transition);\n transition: var(--bs-offcanvas-transition);\n }\n}\n@media (max-width: 767.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-md {\n -webkit-transition: none;\n transition: none;\n }\n}\n@media (max-width: 767.98px) {\n .offcanvas-md.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateX(-100%);\n transform: translateX(-100%);\n }\n .offcanvas-md.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateX(100%);\n transform: translateX(100%);\n }\n .offcanvas-md.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateY(-100%);\n transform: translateY(-100%);\n }\n .offcanvas-md.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateY(100%);\n transform: translateY(100%);\n }\n .offcanvas-md.showing, .offcanvas-md.show:not(.hiding) {\n -webkit-transform: none;\n transform: none;\n }\n .offcanvas-md.showing, .offcanvas-md.hiding, .offcanvas-md.show {\n visibility: visible;\n }\n}\n@media (min-width: 768px) {\n .offcanvas-md {\n --bs-offcanvas-height: auto;\n --bs-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-md .offcanvas-header {\n display: none;\n }\n .offcanvas-md .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n@media (max-width: 991.98px) {\n .offcanvas-lg {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n -webkit-transition: var(--bs-offcanvas-transition);\n transition: var(--bs-offcanvas-transition);\n }\n}\n@media (max-width: 991.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-lg {\n -webkit-transition: none;\n transition: none;\n }\n}\n@media (max-width: 991.98px) {\n .offcanvas-lg.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateX(-100%);\n transform: translateX(-100%);\n }\n .offcanvas-lg.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateX(100%);\n transform: translateX(100%);\n }\n .offcanvas-lg.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateY(-100%);\n transform: translateY(-100%);\n }\n .offcanvas-lg.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateY(100%);\n transform: translateY(100%);\n }\n .offcanvas-lg.showing, .offcanvas-lg.show:not(.hiding) {\n -webkit-transform: none;\n transform: none;\n }\n .offcanvas-lg.showing, .offcanvas-lg.hiding, .offcanvas-lg.show {\n visibility: visible;\n }\n}\n@media (min-width: 992px) {\n .offcanvas-lg {\n --bs-offcanvas-height: auto;\n --bs-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-lg .offcanvas-header {\n display: none;\n }\n .offcanvas-lg .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n@media (max-width: 1199.98px) {\n .offcanvas-xl {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n -webkit-transition: var(--bs-offcanvas-transition);\n transition: var(--bs-offcanvas-transition);\n }\n}\n@media (max-width: 1199.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-xl {\n -webkit-transition: none;\n transition: none;\n }\n}\n@media (max-width: 1199.98px) {\n .offcanvas-xl.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateX(-100%);\n transform: translateX(-100%);\n }\n .offcanvas-xl.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateX(100%);\n transform: translateX(100%);\n }\n .offcanvas-xl.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateY(-100%);\n transform: translateY(-100%);\n }\n .offcanvas-xl.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateY(100%);\n transform: translateY(100%);\n }\n .offcanvas-xl.showing, .offcanvas-xl.show:not(.hiding) {\n -webkit-transform: none;\n transform: none;\n }\n .offcanvas-xl.showing, .offcanvas-xl.hiding, .offcanvas-xl.show {\n visibility: visible;\n }\n}\n@media (min-width: 1200px) {\n .offcanvas-xl {\n --bs-offcanvas-height: auto;\n --bs-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-xl .offcanvas-header {\n display: none;\n }\n .offcanvas-xl .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n@media (max-width: 1399.98px) {\n .offcanvas-xxl {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n -webkit-transition: var(--bs-offcanvas-transition);\n transition: var(--bs-offcanvas-transition);\n }\n}\n@media (max-width: 1399.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-xxl {\n -webkit-transition: none;\n transition: none;\n }\n}\n@media (max-width: 1399.98px) {\n .offcanvas-xxl.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateX(-100%);\n transform: translateX(-100%);\n }\n .offcanvas-xxl.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateX(100%);\n transform: translateX(100%);\n }\n .offcanvas-xxl.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateY(-100%);\n transform: translateY(-100%);\n }\n .offcanvas-xxl.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateY(100%);\n transform: translateY(100%);\n }\n .offcanvas-xxl.showing, .offcanvas-xxl.show:not(.hiding) {\n -webkit-transform: none;\n transform: none;\n }\n .offcanvas-xxl.showing, .offcanvas-xxl.hiding, .offcanvas-xxl.show {\n visibility: visible;\n }\n}\n@media (min-width: 1400px) {\n .offcanvas-xxl {\n --bs-offcanvas-height: auto;\n --bs-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-xxl .offcanvas-header {\n display: none;\n }\n .offcanvas-xxl .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n.offcanvas {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n -webkit-transition: var(--bs-offcanvas-transition);\n transition: var(--bs-offcanvas-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .offcanvas {\n -webkit-transition: none;\n transition: none;\n }\n}\n.offcanvas.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateX(-100%);\n transform: translateX(-100%);\n}\n.offcanvas.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateX(100%);\n transform: translateX(100%);\n}\n.offcanvas.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateY(-100%);\n transform: translateY(-100%);\n}\n.offcanvas.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\n -webkit-transform: translateY(100%);\n transform: translateY(100%);\n}\n.offcanvas.showing, .offcanvas.show:not(.hiding) {\n -webkit-transform: none;\n transform: none;\n}\n.offcanvas.showing, .offcanvas.hiding, .offcanvas.show {\n visibility: visible;\n}\n.offcanvas-backdrop {\n position: fixed;\n top: 0;\n left: 0;\n z-index: 1040;\n width: 100vw;\n height: 100vh;\n background-color: #000;\n}\n.offcanvas-backdrop.fade {\n opacity: 0;\n}\n.offcanvas-backdrop.show {\n opacity: 0.5;\n}\n.offcanvas-header {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);\n}\n.offcanvas-header .btn-close {\n padding: calc(var(--bs-offcanvas-padding-y) * 0.5) calc(var(--bs-offcanvas-padding-x) * 0.5);\n margin-top: calc(-0.5 * var(--bs-offcanvas-padding-y));\n margin-right: calc(-0.5 * var(--bs-offcanvas-padding-x));\n margin-bottom: calc(-0.5 * var(--bs-offcanvas-padding-y));\n}\n.offcanvas-title {\n margin-bottom: 0;\n line-height: var(--bs-offcanvas-title-line-height);\n}\n.offcanvas-body {\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);\n overflow-y: auto;\n}\n.placeholder {\n display: inline-block;\n min-height: 1em;\n vertical-align: middle;\n cursor: wait;\n background-color: currentcolor;\n opacity: 0.5;\n}\n.placeholder.btn::before {\n display: inline-block;\n content: \"\";\n}\n.placeholder-xs {\n min-height: 0.6em;\n}\n.placeholder-sm {\n min-height: 0.8em;\n}\n.placeholder-lg {\n min-height: 1.2em;\n}\n.placeholder-glow .placeholder {\n -webkit-animation: placeholder-glow 2s ease-in-out infinite;\n animation: placeholder-glow 2s ease-in-out infinite;\n}\n@-webkit-keyframes placeholder-glow {\n 50% {\n opacity: 0.2;\n }\n}\n@keyframes placeholder-glow {\n 50% {\n opacity: 0.2;\n }\n}\n.placeholder-wave {\n -webkit-mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);\n mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);\n -webkit-mask-size: 200% 100%;\n mask-size: 200% 100%;\n -webkit-animation: placeholder-wave 2s linear infinite;\n animation: placeholder-wave 2s linear infinite;\n}\n@-webkit-keyframes placeholder-wave {\n 100% {\n -webkit-mask-position: -200% 0%;\n mask-position: -200% 0%;\n }\n}\n@keyframes placeholder-wave {\n 100% {\n -webkit-mask-position: -200% 0%;\n mask-position: -200% 0%;\n }\n}\n.clearfix::after {\n display: block;\n clear: both;\n content: \"\";\n}\n.text-bg-primary {\n color: #fff !important;\n background-color: RGBA(13, 110, 253, var(--bs-bg-opacity, 1)) !important;\n}\n.text-bg-secondary {\n color: #fff !important;\n background-color: RGBA(108, 117, 125, var(--bs-bg-opacity, 1)) !important;\n}\n.text-bg-success {\n color: #fff !important;\n background-color: RGBA(25, 135, 84, var(--bs-bg-opacity, 1)) !important;\n}\n.text-bg-info {\n color: #000 !important;\n background-color: RGBA(13, 202, 240, var(--bs-bg-opacity, 1)) !important;\n}\n.text-bg-warning {\n color: #000 !important;\n background-color: RGBA(255, 193, 7, var(--bs-bg-opacity, 1)) !important;\n}\n.text-bg-danger {\n color: #fff !important;\n background-color: RGBA(220, 53, 69, var(--bs-bg-opacity, 1)) !important;\n}\n.text-bg-light {\n color: #000 !important;\n background-color: RGBA(248, 249, 250, var(--bs-bg-opacity, 1)) !important;\n}\n.text-bg-dark {\n color: #fff !important;\n background-color: RGBA(33, 37, 41, var(--bs-bg-opacity, 1)) !important;\n}\n.link-primary {\n color: RGBA(var(--bs-primary-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-primary:hover, .link-primary:focus {\n color: RGBA(10, 88, 202, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(10, 88, 202, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(10, 88, 202, var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-secondary {\n color: RGBA(var(--bs-secondary-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-secondary:hover, .link-secondary:focus {\n color: RGBA(86, 94, 100, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(86, 94, 100, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(86, 94, 100, var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-success {\n color: RGBA(var(--bs-success-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-success:hover, .link-success:focus {\n color: RGBA(20, 108, 67, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(20, 108, 67, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(20, 108, 67, var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-info {\n color: RGBA(var(--bs-info-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-info:hover, .link-info:focus {\n color: RGBA(61, 213, 243, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(61, 213, 243, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(61, 213, 243, var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-warning {\n color: RGBA(var(--bs-warning-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-warning:hover, .link-warning:focus {\n color: RGBA(255, 205, 57, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(255, 205, 57, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(255, 205, 57, var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-danger {\n color: RGBA(var(--bs-danger-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-danger:hover, .link-danger:focus {\n color: RGBA(176, 42, 55, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(176, 42, 55, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(176, 42, 55, var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-light {\n color: RGBA(var(--bs-light-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-light:hover, .link-light:focus {\n color: RGBA(249, 250, 251, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(249, 250, 251, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(249, 250, 251, var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-dark {\n color: RGBA(var(--bs-dark-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-dark:hover, .link-dark:focus {\n color: RGBA(26, 30, 33, var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(26, 30, 33, var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(26, 30, 33, var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-body-emphasis {\n color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 1)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-body-emphasis:hover, .link-body-emphasis:focus {\n color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 0.75)) !important;\n -webkit-text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important;\n text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important;\n}\n.focus-ring:focus {\n outline: 0;\n -webkit-box-shadow: var(--bs-focus-ring-x, 0) var(--bs-focus-ring-y, 0) var(--bs-focus-ring-blur, 0) var(--bs-focus-ring-width) var(--bs-focus-ring-color);\n box-shadow: var(--bs-focus-ring-x, 0) var(--bs-focus-ring-y, 0) var(--bs-focus-ring-blur, 0) var(--bs-focus-ring-width) var(--bs-focus-ring-color);\n}\n.icon-link {\n display: -webkit-inline-box;\n display: -ms-inline-flexbox;\n display: inline-flex;\n gap: 0.375rem;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));\n text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));\n text-underline-offset: 0.25em;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n}\n.icon-link > .bi {\n -ms-flex-negative: 0;\n flex-shrink: 0;\n width: 1em;\n height: 1em;\n fill: currentcolor;\n -webkit-transition: 0.2s ease-in-out transform;\n transition: 0.2s ease-in-out transform;\n}\n@media (prefers-reduced-motion: reduce) {\n .icon-link > .bi {\n -webkit-transition: none;\n transition: none;\n }\n}\n.icon-link-hover:hover > .bi, .icon-link-hover:focus-visible > .bi {\n -webkit-transform: var(--bs-icon-link-transform, translate3d(0.25em, 0, 0));\n transform: var(--bs-icon-link-transform, translate3d(0.25em, 0, 0));\n}\n.ratio {\n position: relative;\n width: 100%;\n}\n.ratio::before {\n display: block;\n padding-top: var(--bs-aspect-ratio);\n content: \"\";\n}\n.ratio > * {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n}\n.ratio-1x1 {\n --bs-aspect-ratio: 100%;\n}\n.ratio-4x3 {\n --bs-aspect-ratio: 75%;\n}\n.ratio-16x9 {\n --bs-aspect-ratio: 56.25%;\n}\n.ratio-21x9 {\n --bs-aspect-ratio: 42.8571428571%;\n}\n.fixed-top {\n position: fixed;\n top: 0;\n right: 0;\n left: 0;\n z-index: 1030;\n}\n.fixed-bottom {\n position: fixed;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1030;\n}\n.sticky-top {\n position: sticky;\n top: 0;\n z-index: 1020;\n}\n.sticky-bottom {\n position: sticky;\n bottom: 0;\n z-index: 1020;\n}\n@media (min-width: 576px) {\n .sticky-sm-top {\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-sm-bottom {\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 768px) {\n .sticky-md-top {\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-md-bottom {\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 992px) {\n .sticky-lg-top {\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-lg-bottom {\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 1200px) {\n .sticky-xl-top {\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-xl-bottom {\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 1400px) {\n .sticky-xxl-top {\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-xxl-bottom {\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n.hstack {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-item-align: stretch;\n align-self: stretch;\n}\n.vstack {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 1;\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n -ms-flex-item-align: stretch;\n align-self: stretch;\n}\n.visually-hidden,\n.visually-hidden-focusable:not(:focus):not(:focus-within) {\n width: 1px !important;\n height: 1px !important;\n padding: 0 !important;\n margin: -1px !important;\n overflow: hidden !important;\n clip: rect(0, 0, 0, 0) !important;\n white-space: nowrap !important;\n border: 0 !important;\n}\n.visually-hidden:not(caption),\n.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption) {\n position: absolute !important;\n}\n.stretched-link::after {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1;\n content: \"\";\n}\n.text-truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.vr {\n display: inline-block;\n -ms-flex-item-align: stretch;\n align-self: stretch;\n width: 1px;\n min-height: 1em;\n background-color: currentcolor;\n opacity: 0.25;\n}\n.align-baseline {\n vertical-align: baseline !important;\n}\n.align-top {\n vertical-align: top !important;\n}\n.align-middle {\n vertical-align: middle !important;\n}\n.align-bottom {\n vertical-align: bottom !important;\n}\n.align-text-bottom {\n vertical-align: text-bottom !important;\n}\n.align-text-top {\n vertical-align: text-top !important;\n}\n.float-start {\n float: left !important;\n}\n.float-end {\n float: right !important;\n}\n.float-none {\n float: none !important;\n}\n.object-fit-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n}\n.object-fit-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n}\n.object-fit-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n}\n.object-fit-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n}\n.object-fit-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n}\n.opacity-0 {\n opacity: 0 !important;\n}\n.opacity-25 {\n opacity: 0.25 !important;\n}\n.opacity-50 {\n opacity: 0.5 !important;\n}\n.opacity-75 {\n opacity: 0.75 !important;\n}\n.opacity-100 {\n opacity: 1 !important;\n}\n.overflow-auto {\n overflow: auto !important;\n}\n.overflow-hidden {\n overflow: hidden !important;\n}\n.overflow-visible {\n overflow: visible !important;\n}\n.overflow-scroll {\n overflow: scroll !important;\n}\n.overflow-x-auto {\n overflow-x: auto !important;\n}\n.overflow-x-hidden {\n overflow-x: hidden !important;\n}\n.overflow-x-visible {\n overflow-x: visible !important;\n}\n.overflow-x-scroll {\n overflow-x: scroll !important;\n}\n.overflow-y-auto {\n overflow-y: auto !important;\n}\n.overflow-y-hidden {\n overflow-y: hidden !important;\n}\n.overflow-y-visible {\n overflow-y: visible !important;\n}\n.overflow-y-scroll {\n overflow-y: scroll !important;\n}\n.d-inline {\n display: inline !important;\n}\n.d-inline-block {\n display: inline-block !important;\n}\n.d-block {\n display: block !important;\n}\n.d-grid {\n display: grid !important;\n}\n.d-inline-grid {\n display: inline-grid !important;\n}\n.d-table {\n display: table !important;\n}\n.d-table-row {\n display: table-row !important;\n}\n.d-table-cell {\n display: table-cell !important;\n}\n.d-flex {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n}\n.d-inline-flex {\n display: -webkit-inline-box !important;\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n}\n.d-none {\n display: none !important;\n}\n.shadow {\n -webkit-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;\n box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;\n}\n.shadow-sm {\n -webkit-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;\n box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;\n}\n.shadow-lg {\n -webkit-box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;\n box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;\n}\n.shadow-none {\n -webkit-box-shadow: none !important;\n box-shadow: none !important;\n}\n.focus-ring-primary {\n --bs-focus-ring-color: rgba(var(--bs-primary-rgb), var(--bs-focus-ring-opacity));\n}\n.focus-ring-secondary {\n --bs-focus-ring-color: rgba(var(--bs-secondary-rgb), var(--bs-focus-ring-opacity));\n}\n.focus-ring-success {\n --bs-focus-ring-color: rgba(var(--bs-success-rgb), var(--bs-focus-ring-opacity));\n}\n.focus-ring-info {\n --bs-focus-ring-color: rgba(var(--bs-info-rgb), var(--bs-focus-ring-opacity));\n}\n.focus-ring-warning {\n --bs-focus-ring-color: rgba(var(--bs-warning-rgb), var(--bs-focus-ring-opacity));\n}\n.focus-ring-danger {\n --bs-focus-ring-color: rgba(var(--bs-danger-rgb), var(--bs-focus-ring-opacity));\n}\n.focus-ring-light {\n --bs-focus-ring-color: rgba(var(--bs-light-rgb), var(--bs-focus-ring-opacity));\n}\n.focus-ring-dark {\n --bs-focus-ring-color: rgba(var(--bs-dark-rgb), var(--bs-focus-ring-opacity));\n}\n.position-static {\n position: static !important;\n}\n.position-relative {\n position: relative !important;\n}\n.position-absolute {\n position: absolute !important;\n}\n.position-fixed {\n position: fixed !important;\n}\n.position-sticky {\n position: sticky !important;\n}\n.top-0 {\n top: 0 !important;\n}\n.top-50 {\n top: 50% !important;\n}\n.top-100 {\n top: 100% !important;\n}\n.bottom-0 {\n bottom: 0 !important;\n}\n.bottom-50 {\n bottom: 50% !important;\n}\n.bottom-100 {\n bottom: 100% !important;\n}\n.start-0 {\n left: 0 !important;\n}\n.start-50 {\n left: 50% !important;\n}\n.start-100 {\n left: 100% !important;\n}\n.end-0 {\n right: 0 !important;\n}\n.end-50 {\n right: 50% !important;\n}\n.end-100 {\n right: 100% !important;\n}\n.translate-middle {\n -webkit-transform: translate(-50%, -50%) !important;\n transform: translate(-50%, -50%) !important;\n}\n.translate-middle-x {\n -webkit-transform: translateX(-50%) !important;\n transform: translateX(-50%) !important;\n}\n.translate-middle-y {\n -webkit-transform: translateY(-50%) !important;\n transform: translateY(-50%) !important;\n}\n.border {\n border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;\n}\n.border-0 {\n border: 0 !important;\n}\n.border-top {\n border-top: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;\n}\n.border-top-0 {\n border-top: 0 !important;\n}\n.border-end {\n border-right: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;\n}\n.border-end-0 {\n border-right: 0 !important;\n}\n.border-bottom {\n border-bottom: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;\n}\n.border-bottom-0 {\n border-bottom: 0 !important;\n}\n.border-start {\n border-left: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;\n}\n.border-start-0 {\n border-left: 0 !important;\n}\n.border-primary {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-primary-rgb), var(--bs-border-opacity)) !important;\n}\n.border-secondary {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-secondary-rgb), var(--bs-border-opacity)) !important;\n}\n.border-success {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-success-rgb), var(--bs-border-opacity)) !important;\n}\n.border-info {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-info-rgb), var(--bs-border-opacity)) !important;\n}\n.border-warning {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-warning-rgb), var(--bs-border-opacity)) !important;\n}\n.border-danger {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-danger-rgb), var(--bs-border-opacity)) !important;\n}\n.border-light {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-light-rgb), var(--bs-border-opacity)) !important;\n}\n.border-dark {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-dark-rgb), var(--bs-border-opacity)) !important;\n}\n.border-black {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-black-rgb), var(--bs-border-opacity)) !important;\n}\n.border-white {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-white-rgb), var(--bs-border-opacity)) !important;\n}\n.border-primary-subtle {\n border-color: var(--bs-primary-border-subtle) !important;\n}\n.border-secondary-subtle {\n border-color: var(--bs-secondary-border-subtle) !important;\n}\n.border-success-subtle {\n border-color: var(--bs-success-border-subtle) !important;\n}\n.border-info-subtle {\n border-color: var(--bs-info-border-subtle) !important;\n}\n.border-warning-subtle {\n border-color: var(--bs-warning-border-subtle) !important;\n}\n.border-danger-subtle {\n border-color: var(--bs-danger-border-subtle) !important;\n}\n.border-light-subtle {\n border-color: var(--bs-light-border-subtle) !important;\n}\n.border-dark-subtle {\n border-color: var(--bs-dark-border-subtle) !important;\n}\n.border-1 {\n border-width: 1px !important;\n}\n.border-2 {\n border-width: 2px !important;\n}\n.border-3 {\n border-width: 3px !important;\n}\n.border-4 {\n border-width: 4px !important;\n}\n.border-5 {\n border-width: 5px !important;\n}\n.border-opacity-10 {\n --bs-border-opacity: 0.1;\n}\n.border-opacity-25 {\n --bs-border-opacity: 0.25;\n}\n.border-opacity-50 {\n --bs-border-opacity: 0.5;\n}\n.border-opacity-75 {\n --bs-border-opacity: 0.75;\n}\n.border-opacity-100 {\n --bs-border-opacity: 1;\n}\n.w-25 {\n width: 25% !important;\n}\n.w-50 {\n width: 50% !important;\n}\n.w-75 {\n width: 75% !important;\n}\n.w-100 {\n width: 100% !important;\n}\n.w-auto {\n width: auto !important;\n}\n.mw-100 {\n max-width: 100% !important;\n}\n.vw-100 {\n width: 100vw !important;\n}\n.min-vw-100 {\n min-width: 100vw !important;\n}\n.h-25 {\n height: 25% !important;\n}\n.h-50 {\n height: 50% !important;\n}\n.h-75 {\n height: 75% !important;\n}\n.h-100 {\n height: 100% !important;\n}\n.h-auto {\n height: auto !important;\n}\n.mh-100 {\n max-height: 100% !important;\n}\n.vh-100 {\n height: 100vh !important;\n}\n.min-vh-100 {\n min-height: 100vh !important;\n}\n.flex-fill {\n -webkit-box-flex: 1 !important;\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n}\n.flex-row {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n}\n.flex-column {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n}\n.flex-row-reverse {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n}\n.flex-column-reverse {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n}\n.flex-grow-0 {\n -webkit-box-flex: 0 !important;\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n}\n.flex-grow-1 {\n -webkit-box-flex: 1 !important;\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n}\n.flex-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n}\n.flex-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n}\n.flex-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n}\n.flex-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n}\n.flex-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n}\n.justify-content-start {\n -webkit-box-pack: start !important;\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n}\n.justify-content-end {\n -webkit-box-pack: end !important;\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n}\n.justify-content-center {\n -webkit-box-pack: center !important;\n -ms-flex-pack: center !important;\n justify-content: center !important;\n}\n.justify-content-between {\n -webkit-box-pack: justify !important;\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n}\n.justify-content-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n}\n.justify-content-evenly {\n -webkit-box-pack: space-evenly !important;\n -ms-flex-pack: space-evenly !important;\n justify-content: space-evenly !important;\n}\n.align-items-start {\n -webkit-box-align: start !important;\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n}\n.align-items-end {\n -webkit-box-align: end !important;\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n}\n.align-items-center {\n -webkit-box-align: center !important;\n -ms-flex-align: center !important;\n align-items: center !important;\n}\n.align-items-baseline {\n -webkit-box-align: baseline !important;\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n}\n.align-items-stretch {\n -webkit-box-align: stretch !important;\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n}\n.align-content-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n}\n.align-content-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n}\n.align-content-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n}\n.align-content-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n}\n.align-content-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n}\n.align-content-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n}\n.align-self-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n}\n.align-self-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n}\n.align-self-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n}\n.align-self-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n}\n.align-self-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n}\n.align-self-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n}\n.order-first {\n -webkit-box-ordinal-group: 0 !important;\n -ms-flex-order: -1 !important;\n order: -1 !important;\n}\n.order-0 {\n -webkit-box-ordinal-group: 1 !important;\n -ms-flex-order: 0 !important;\n order: 0 !important;\n}\n.order-1 {\n -webkit-box-ordinal-group: 2 !important;\n -ms-flex-order: 1 !important;\n order: 1 !important;\n}\n.order-2 {\n -webkit-box-ordinal-group: 3 !important;\n -ms-flex-order: 2 !important;\n order: 2 !important;\n}\n.order-3 {\n -webkit-box-ordinal-group: 4 !important;\n -ms-flex-order: 3 !important;\n order: 3 !important;\n}\n.order-4 {\n -webkit-box-ordinal-group: 5 !important;\n -ms-flex-order: 4 !important;\n order: 4 !important;\n}\n.order-5 {\n -webkit-box-ordinal-group: 6 !important;\n -ms-flex-order: 5 !important;\n order: 5 !important;\n}\n.order-last {\n -webkit-box-ordinal-group: 7 !important;\n -ms-flex-order: 6 !important;\n order: 6 !important;\n}\n.m-0 {\n margin: 0 !important;\n}\n.m-1 {\n margin: 0.25rem !important;\n}\n.m-2 {\n margin: 0.5rem !important;\n}\n.m-3 {\n margin: 1rem !important;\n}\n.m-4 {\n margin: 1.5rem !important;\n}\n.m-5 {\n margin: 3rem !important;\n}\n.m-auto {\n margin: auto !important;\n}\n.mx-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n}\n.mx-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n}\n.mx-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n}\n.mx-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n}\n.mx-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n}\n.mx-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n}\n.mx-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n}\n.my-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n}\n.my-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n}\n.my-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n}\n.my-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n}\n.my-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n}\n.my-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n}\n.my-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n}\n.mt-0 {\n margin-top: 0 !important;\n}\n.mt-1 {\n margin-top: 0.25rem !important;\n}\n.mt-2 {\n margin-top: 0.5rem !important;\n}\n.mt-3 {\n margin-top: 1rem !important;\n}\n.mt-4 {\n margin-top: 1.5rem !important;\n}\n.mt-5 {\n margin-top: 3rem !important;\n}\n.mt-auto {\n margin-top: auto !important;\n}\n.me-0 {\n margin-right: 0 !important;\n}\n.me-1 {\n margin-right: 0.25rem !important;\n}\n.me-2 {\n margin-right: 0.5rem !important;\n}\n.me-3 {\n margin-right: 1rem !important;\n}\n.me-4 {\n margin-right: 1.5rem !important;\n}\n.me-5 {\n margin-right: 3rem !important;\n}\n.me-auto {\n margin-right: auto !important;\n}\n.mb-0 {\n margin-bottom: 0 !important;\n}\n.mb-1 {\n margin-bottom: 0.25rem !important;\n}\n.mb-2 {\n margin-bottom: 0.5rem !important;\n}\n.mb-3 {\n margin-bottom: 1rem !important;\n}\n.mb-4 {\n margin-bottom: 1.5rem !important;\n}\n.mb-5 {\n margin-bottom: 3rem !important;\n}\n.mb-auto {\n margin-bottom: auto !important;\n}\n.ms-0 {\n margin-left: 0 !important;\n}\n.ms-1 {\n margin-left: 0.25rem !important;\n}\n.ms-2 {\n margin-left: 0.5rem !important;\n}\n.ms-3 {\n margin-left: 1rem !important;\n}\n.ms-4 {\n margin-left: 1.5rem !important;\n}\n.ms-5 {\n margin-left: 3rem !important;\n}\n.ms-auto {\n margin-left: auto !important;\n}\n.p-0 {\n padding: 0 !important;\n}\n.p-1 {\n padding: 0.25rem !important;\n}\n.p-2 {\n padding: 0.5rem !important;\n}\n.p-3 {\n padding: 1rem !important;\n}\n.p-4 {\n padding: 1.5rem !important;\n}\n.p-5 {\n padding: 3rem !important;\n}\n.px-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n}\n.px-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n}\n.px-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n}\n.px-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n}\n.px-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n}\n.px-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n}\n.py-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n}\n.py-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n}\n.py-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n}\n.py-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n}\n.py-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n}\n.py-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n}\n.pt-0 {\n padding-top: 0 !important;\n}\n.pt-1 {\n padding-top: 0.25rem !important;\n}\n.pt-2 {\n padding-top: 0.5rem !important;\n}\n.pt-3 {\n padding-top: 1rem !important;\n}\n.pt-4 {\n padding-top: 1.5rem !important;\n}\n.pt-5 {\n padding-top: 3rem !important;\n}\n.pe-0 {\n padding-right: 0 !important;\n}\n.pe-1 {\n padding-right: 0.25rem !important;\n}\n.pe-2 {\n padding-right: 0.5rem !important;\n}\n.pe-3 {\n padding-right: 1rem !important;\n}\n.pe-4 {\n padding-right: 1.5rem !important;\n}\n.pe-5 {\n padding-right: 3rem !important;\n}\n.pb-0 {\n padding-bottom: 0 !important;\n}\n.pb-1 {\n padding-bottom: 0.25rem !important;\n}\n.pb-2 {\n padding-bottom: 0.5rem !important;\n}\n.pb-3 {\n padding-bottom: 1rem !important;\n}\n.pb-4 {\n padding-bottom: 1.5rem !important;\n}\n.pb-5 {\n padding-bottom: 3rem !important;\n}\n.ps-0 {\n padding-left: 0 !important;\n}\n.ps-1 {\n padding-left: 0.25rem !important;\n}\n.ps-2 {\n padding-left: 0.5rem !important;\n}\n.ps-3 {\n padding-left: 1rem !important;\n}\n.ps-4 {\n padding-left: 1.5rem !important;\n}\n.ps-5 {\n padding-left: 3rem !important;\n}\n.gap-0 {\n gap: 0 !important;\n}\n.gap-1 {\n gap: 0.25rem !important;\n}\n.gap-2 {\n gap: 0.5rem !important;\n}\n.gap-3 {\n gap: 1rem !important;\n}\n.gap-4 {\n gap: 1.5rem !important;\n}\n.gap-5 {\n gap: 3rem !important;\n}\n.row-gap-0 {\n row-gap: 0 !important;\n}\n.row-gap-1 {\n row-gap: 0.25rem !important;\n}\n.row-gap-2 {\n row-gap: 0.5rem !important;\n}\n.row-gap-3 {\n row-gap: 1rem !important;\n}\n.row-gap-4 {\n row-gap: 1.5rem !important;\n}\n.row-gap-5 {\n row-gap: 3rem !important;\n}\n.column-gap-0 {\n -moz-column-gap: 0 !important;\n -webkit-column-gap: 0 !important;\n column-gap: 0 !important;\n}\n.column-gap-1 {\n -moz-column-gap: 0.25rem !important;\n -webkit-column-gap: 0.25rem !important;\n column-gap: 0.25rem !important;\n}\n.column-gap-2 {\n -moz-column-gap: 0.5rem !important;\n -webkit-column-gap: 0.5rem !important;\n column-gap: 0.5rem !important;\n}\n.column-gap-3 {\n -moz-column-gap: 1rem !important;\n -webkit-column-gap: 1rem !important;\n column-gap: 1rem !important;\n}\n.column-gap-4 {\n -moz-column-gap: 1.5rem !important;\n -webkit-column-gap: 1.5rem !important;\n column-gap: 1.5rem !important;\n}\n.column-gap-5 {\n -moz-column-gap: 3rem !important;\n -webkit-column-gap: 3rem !important;\n column-gap: 3rem !important;\n}\n.font-monospace {\n font-family: var(--bs-font-monospace) !important;\n}\n.fs-1 {\n font-size: calc(1.375rem + 1.5vw) !important;\n}\n.fs-2 {\n font-size: calc(1.325rem + 0.9vw) !important;\n}\n.fs-3 {\n font-size: calc(1.3rem + 0.6vw) !important;\n}\n.fs-4 {\n font-size: calc(1.275rem + 0.3vw) !important;\n}\n.fs-5 {\n font-size: 1.25rem !important;\n}\n.fs-6 {\n font-size: 1rem !important;\n}\n.fst-italic {\n font-style: italic !important;\n}\n.fst-normal {\n font-style: normal !important;\n}\n.fw-lighter {\n font-weight: lighter !important;\n}\n.fw-light {\n font-weight: 300 !important;\n}\n.fw-normal {\n font-weight: 400 !important;\n}\n.fw-medium {\n font-weight: 500 !important;\n}\n.fw-semibold {\n font-weight: 600 !important;\n}\n.fw-bold {\n font-weight: 700 !important;\n}\n.fw-bolder {\n font-weight: bolder !important;\n}\n.lh-1 {\n line-height: 1 !important;\n}\n.lh-sm {\n line-height: 1.25 !important;\n}\n.lh-base {\n line-height: 1.5 !important;\n}\n.lh-lg {\n line-height: 2 !important;\n}\n.text-start {\n text-align: left !important;\n}\n.text-end {\n text-align: right !important;\n}\n.text-center {\n text-align: center !important;\n}\n.text-decoration-none {\n text-decoration: none !important;\n}\n.text-decoration-underline {\n text-decoration: underline !important;\n}\n.text-decoration-line-through {\n text-decoration: line-through !important;\n}\n.text-lowercase {\n text-transform: lowercase !important;\n}\n.text-uppercase {\n text-transform: uppercase !important;\n}\n.text-capitalize {\n text-transform: capitalize !important;\n}\n.text-wrap {\n white-space: normal !important;\n}\n.text-nowrap {\n white-space: nowrap !important;\n}\n/* rtl:begin:remove */\n.text-break {\n word-wrap: break-word !important;\n word-break: break-word !important;\n}\n/* rtl:end:remove */\n.text-primary {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important;\n}\n.text-secondary {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important;\n}\n.text-success {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important;\n}\n.text-info {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important;\n}\n.text-warning {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important;\n}\n.text-danger {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important;\n}\n.text-light {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important;\n}\n.text-dark {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important;\n}\n.text-black {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important;\n}\n.text-white {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important;\n}\n.text-body {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-body-color-rgb), var(--bs-text-opacity)) !important;\n}\n.text-muted {\n --bs-text-opacity: 1;\n color: var(--bs-secondary-color) !important;\n}\n.text-black-50 {\n --bs-text-opacity: 1;\n color: rgba(0, 0, 0, 0.5) !important;\n}\n.text-white-50 {\n --bs-text-opacity: 1;\n color: rgba(255, 255, 255, 0.5) !important;\n}\n.text-body-secondary {\n --bs-text-opacity: 1;\n color: var(--bs-secondary-color) !important;\n}\n.text-body-tertiary {\n --bs-text-opacity: 1;\n color: var(--bs-tertiary-color) !important;\n}\n.text-body-emphasis {\n --bs-text-opacity: 1;\n color: var(--bs-emphasis-color) !important;\n}\n.text-reset {\n --bs-text-opacity: 1;\n color: inherit !important;\n}\n.text-opacity-25 {\n --bs-text-opacity: 0.25;\n}\n.text-opacity-50 {\n --bs-text-opacity: 0.5;\n}\n.text-opacity-75 {\n --bs-text-opacity: 0.75;\n}\n.text-opacity-100 {\n --bs-text-opacity: 1;\n}\n.text-primary-emphasis {\n color: var(--bs-primary-text-emphasis) !important;\n}\n.text-secondary-emphasis {\n color: var(--bs-secondary-text-emphasis) !important;\n}\n.text-success-emphasis {\n color: var(--bs-success-text-emphasis) !important;\n}\n.text-info-emphasis {\n color: var(--bs-info-text-emphasis) !important;\n}\n.text-warning-emphasis {\n color: var(--bs-warning-text-emphasis) !important;\n}\n.text-danger-emphasis {\n color: var(--bs-danger-text-emphasis) !important;\n}\n.text-light-emphasis {\n color: var(--bs-light-text-emphasis) !important;\n}\n.text-dark-emphasis {\n color: var(--bs-dark-text-emphasis) !important;\n}\n.link-opacity-10 {\n --bs-link-opacity: 0.1;\n}\n.link-opacity-10-hover:hover {\n --bs-link-opacity: 0.1;\n}\n.link-opacity-25 {\n --bs-link-opacity: 0.25;\n}\n.link-opacity-25-hover:hover {\n --bs-link-opacity: 0.25;\n}\n.link-opacity-50 {\n --bs-link-opacity: 0.5;\n}\n.link-opacity-50-hover:hover {\n --bs-link-opacity: 0.5;\n}\n.link-opacity-75 {\n --bs-link-opacity: 0.75;\n}\n.link-opacity-75-hover:hover {\n --bs-link-opacity: 0.75;\n}\n.link-opacity-100 {\n --bs-link-opacity: 1;\n}\n.link-opacity-100-hover:hover {\n --bs-link-opacity: 1;\n}\n.link-offset-1 {\n text-underline-offset: 0.125em !important;\n}\n.link-offset-1-hover:hover {\n text-underline-offset: 0.125em !important;\n}\n.link-offset-2 {\n text-underline-offset: 0.25em !important;\n}\n.link-offset-2-hover:hover {\n text-underline-offset: 0.25em !important;\n}\n.link-offset-3 {\n text-underline-offset: 0.375em !important;\n}\n.link-offset-3-hover:hover {\n text-underline-offset: 0.375em !important;\n}\n.link-underline-primary {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important;\n}\n.link-underline-secondary {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important;\n}\n.link-underline-success {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important;\n}\n.link-underline-info {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important;\n}\n.link-underline-warning {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important;\n}\n.link-underline-danger {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important;\n}\n.link-underline-light {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important;\n}\n.link-underline-dark {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important;\n text-decoration-color: rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important;\n}\n.link-underline {\n --bs-link-underline-opacity: 1;\n -webkit-text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important;\n text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important;\n}\n.link-underline-opacity-0 {\n --bs-link-underline-opacity: 0;\n}\n.link-underline-opacity-0-hover:hover {\n --bs-link-underline-opacity: 0;\n}\n.link-underline-opacity-10 {\n --bs-link-underline-opacity: 0.1;\n}\n.link-underline-opacity-10-hover:hover {\n --bs-link-underline-opacity: 0.1;\n}\n.link-underline-opacity-25 {\n --bs-link-underline-opacity: 0.25;\n}\n.link-underline-opacity-25-hover:hover {\n --bs-link-underline-opacity: 0.25;\n}\n.link-underline-opacity-50 {\n --bs-link-underline-opacity: 0.5;\n}\n.link-underline-opacity-50-hover:hover {\n --bs-link-underline-opacity: 0.5;\n}\n.link-underline-opacity-75 {\n --bs-link-underline-opacity: 0.75;\n}\n.link-underline-opacity-75-hover:hover {\n --bs-link-underline-opacity: 0.75;\n}\n.link-underline-opacity-100 {\n --bs-link-underline-opacity: 1;\n}\n.link-underline-opacity-100-hover:hover {\n --bs-link-underline-opacity: 1;\n}\n.bg-primary {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important;\n}\n.bg-secondary {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important;\n}\n.bg-success {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important;\n}\n.bg-info {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important;\n}\n.bg-warning {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important;\n}\n.bg-danger {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important;\n}\n.bg-light {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important;\n}\n.bg-dark {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important;\n}\n.bg-black {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important;\n}\n.bg-white {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important;\n}\n.bg-body {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-body-bg-rgb), var(--bs-bg-opacity)) !important;\n}\n.bg-transparent {\n --bs-bg-opacity: 1;\n background-color: transparent !important;\n}\n.bg-body-secondary {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-secondary-bg-rgb), var(--bs-bg-opacity)) !important;\n}\n.bg-body-tertiary {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-tertiary-bg-rgb), var(--bs-bg-opacity)) !important;\n}\n.bg-opacity-10 {\n --bs-bg-opacity: 0.1;\n}\n.bg-opacity-25 {\n --bs-bg-opacity: 0.25;\n}\n.bg-opacity-50 {\n --bs-bg-opacity: 0.5;\n}\n.bg-opacity-75 {\n --bs-bg-opacity: 0.75;\n}\n.bg-opacity-100 {\n --bs-bg-opacity: 1;\n}\n.bg-primary-subtle {\n background-color: var(--bs-primary-bg-subtle) !important;\n}\n.bg-secondary-subtle {\n background-color: var(--bs-secondary-bg-subtle) !important;\n}\n.bg-success-subtle {\n background-color: var(--bs-success-bg-subtle) !important;\n}\n.bg-info-subtle {\n background-color: var(--bs-info-bg-subtle) !important;\n}\n.bg-warning-subtle {\n background-color: var(--bs-warning-bg-subtle) !important;\n}\n.bg-danger-subtle {\n background-color: var(--bs-danger-bg-subtle) !important;\n}\n.bg-light-subtle {\n background-color: var(--bs-light-bg-subtle) !important;\n}\n.bg-dark-subtle {\n background-color: var(--bs-dark-bg-subtle) !important;\n}\n.bg-gradient {\n background-image: var(--bs-gradient) !important;\n}\n.user-select-all {\n -webkit-user-select: all !important;\n -moz-user-select: all !important;\n -ms-user-select: all !important;\n user-select: all !important;\n}\n.user-select-auto {\n -webkit-user-select: auto !important;\n -moz-user-select: auto !important;\n -ms-user-select: auto !important;\n user-select: auto !important;\n}\n.user-select-none {\n -webkit-user-select: none !important;\n -moz-user-select: none !important;\n -ms-user-select: none !important;\n user-select: none !important;\n}\n.pe-none {\n pointer-events: none !important;\n}\n.pe-auto {\n pointer-events: auto !important;\n}\n.rounded {\n border-radius: var(--bs-border-radius) !important;\n}\n.rounded-0 {\n border-radius: 0 !important;\n}\n.rounded-1 {\n border-radius: var(--bs-border-radius-sm) !important;\n}\n.rounded-2 {\n border-radius: var(--bs-border-radius) !important;\n}\n.rounded-3 {\n border-radius: var(--bs-border-radius-lg) !important;\n}\n.rounded-4 {\n border-radius: var(--bs-border-radius-xl) !important;\n}\n.rounded-5 {\n border-radius: var(--bs-border-radius-xxl) !important;\n}\n.rounded-circle {\n border-radius: 50% !important;\n}\n.rounded-pill {\n border-radius: var(--bs-border-radius-pill) !important;\n}\n.rounded-top {\n border-top-left-radius: var(--bs-border-radius) !important;\n border-top-right-radius: var(--bs-border-radius) !important;\n}\n.rounded-top-0 {\n border-top-left-radius: 0 !important;\n border-top-right-radius: 0 !important;\n}\n.rounded-top-1 {\n border-top-left-radius: var(--bs-border-radius-sm) !important;\n border-top-right-radius: var(--bs-border-radius-sm) !important;\n}\n.rounded-top-2 {\n border-top-left-radius: var(--bs-border-radius) !important;\n border-top-right-radius: var(--bs-border-radius) !important;\n}\n.rounded-top-3 {\n border-top-left-radius: var(--bs-border-radius-lg) !important;\n border-top-right-radius: var(--bs-border-radius-lg) !important;\n}\n.rounded-top-4 {\n border-top-left-radius: var(--bs-border-radius-xl) !important;\n border-top-right-radius: var(--bs-border-radius-xl) !important;\n}\n.rounded-top-5 {\n border-top-left-radius: var(--bs-border-radius-xxl) !important;\n border-top-right-radius: var(--bs-border-radius-xxl) !important;\n}\n.rounded-top-circle {\n border-top-left-radius: 50% !important;\n border-top-right-radius: 50% !important;\n}\n.rounded-top-pill {\n border-top-left-radius: var(--bs-border-radius-pill) !important;\n border-top-right-radius: var(--bs-border-radius-pill) !important;\n}\n.rounded-end {\n border-top-right-radius: var(--bs-border-radius) !important;\n border-bottom-right-radius: var(--bs-border-radius) !important;\n}\n.rounded-end-0 {\n border-top-right-radius: 0 !important;\n border-bottom-right-radius: 0 !important;\n}\n.rounded-end-1 {\n border-top-right-radius: var(--bs-border-radius-sm) !important;\n border-bottom-right-radius: var(--bs-border-radius-sm) !important;\n}\n.rounded-end-2 {\n border-top-right-radius: var(--bs-border-radius) !important;\n border-bottom-right-radius: var(--bs-border-radius) !important;\n}\n.rounded-end-3 {\n border-top-right-radius: var(--bs-border-radius-lg) !important;\n border-bottom-right-radius: var(--bs-border-radius-lg) !important;\n}\n.rounded-end-4 {\n border-top-right-radius: var(--bs-border-radius-xl) !important;\n border-bottom-right-radius: var(--bs-border-radius-xl) !important;\n}\n.rounded-end-5 {\n border-top-right-radius: var(--bs-border-radius-xxl) !important;\n border-bottom-right-radius: var(--bs-border-radius-xxl) !important;\n}\n.rounded-end-circle {\n border-top-right-radius: 50% !important;\n border-bottom-right-radius: 50% !important;\n}\n.rounded-end-pill {\n border-top-right-radius: var(--bs-border-radius-pill) !important;\n border-bottom-right-radius: var(--bs-border-radius-pill) !important;\n}\n.rounded-bottom {\n border-bottom-right-radius: var(--bs-border-radius) !important;\n border-bottom-left-radius: var(--bs-border-radius) !important;\n}\n.rounded-bottom-0 {\n border-bottom-right-radius: 0 !important;\n border-bottom-left-radius: 0 !important;\n}\n.rounded-bottom-1 {\n border-bottom-right-radius: var(--bs-border-radius-sm) !important;\n border-bottom-left-radius: var(--bs-border-radius-sm) !important;\n}\n.rounded-bottom-2 {\n border-bottom-right-radius: var(--bs-border-radius) !important;\n border-bottom-left-radius: var(--bs-border-radius) !important;\n}\n.rounded-bottom-3 {\n border-bottom-right-radius: var(--bs-border-radius-lg) !important;\n border-bottom-left-radius: var(--bs-border-radius-lg) !important;\n}\n.rounded-bottom-4 {\n border-bottom-right-radius: var(--bs-border-radius-xl) !important;\n border-bottom-left-radius: var(--bs-border-radius-xl) !important;\n}\n.rounded-bottom-5 {\n border-bottom-right-radius: var(--bs-border-radius-xxl) !important;\n border-bottom-left-radius: var(--bs-border-radius-xxl) !important;\n}\n.rounded-bottom-circle {\n border-bottom-right-radius: 50% !important;\n border-bottom-left-radius: 50% !important;\n}\n.rounded-bottom-pill {\n border-bottom-right-radius: var(--bs-border-radius-pill) !important;\n border-bottom-left-radius: var(--bs-border-radius-pill) !important;\n}\n.rounded-start {\n border-bottom-left-radius: var(--bs-border-radius) !important;\n border-top-left-radius: var(--bs-border-radius) !important;\n}\n.rounded-start-0 {\n border-bottom-left-radius: 0 !important;\n border-top-left-radius: 0 !important;\n}\n.rounded-start-1 {\n border-bottom-left-radius: var(--bs-border-radius-sm) !important;\n border-top-left-radius: var(--bs-border-radius-sm) !important;\n}\n.rounded-start-2 {\n border-bottom-left-radius: var(--bs-border-radius) !important;\n border-top-left-radius: var(--bs-border-radius) !important;\n}\n.rounded-start-3 {\n border-bottom-left-radius: var(--bs-border-radius-lg) !important;\n border-top-left-radius: var(--bs-border-radius-lg) !important;\n}\n.rounded-start-4 {\n border-bottom-left-radius: var(--bs-border-radius-xl) !important;\n border-top-left-radius: var(--bs-border-radius-xl) !important;\n}\n.rounded-start-5 {\n border-bottom-left-radius: var(--bs-border-radius-xxl) !important;\n border-top-left-radius: var(--bs-border-radius-xxl) !important;\n}\n.rounded-start-circle {\n border-bottom-left-radius: 50% !important;\n border-top-left-radius: 50% !important;\n}\n.rounded-start-pill {\n border-bottom-left-radius: var(--bs-border-radius-pill) !important;\n border-top-left-radius: var(--bs-border-radius-pill) !important;\n}\n.visible {\n visibility: visible !important;\n}\n.invisible {\n visibility: hidden !important;\n}\n.z-n1 {\n z-index: -1 !important;\n}\n.z-0 {\n z-index: 0 !important;\n}\n.z-1 {\n z-index: 1 !important;\n}\n.z-2 {\n z-index: 2 !important;\n}\n.z-3 {\n z-index: 3 !important;\n}\n@media (min-width: 576px) {\n .float-sm-start {\n float: left !important;\n }\n .float-sm-end {\n float: right !important;\n }\n .float-sm-none {\n float: none !important;\n }\n .object-fit-sm-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n }\n .object-fit-sm-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n }\n .object-fit-sm-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n }\n .object-fit-sm-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n }\n .object-fit-sm-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n }\n .d-sm-inline {\n display: inline !important;\n }\n .d-sm-inline-block {\n display: inline-block !important;\n }\n .d-sm-block {\n display: block !important;\n }\n .d-sm-grid {\n display: grid !important;\n }\n .d-sm-inline-grid {\n display: inline-grid !important;\n }\n .d-sm-table {\n display: table !important;\n }\n .d-sm-table-row {\n display: table-row !important;\n }\n .d-sm-table-cell {\n display: table-cell !important;\n }\n .d-sm-flex {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-sm-inline-flex {\n display: -webkit-inline-box !important;\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n .d-sm-none {\n display: none !important;\n }\n .flex-sm-fill {\n -webkit-box-flex: 1 !important;\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-sm-row {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-sm-column {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-sm-row-reverse {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-sm-column-reverse {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-sm-grow-0 {\n -webkit-box-flex: 0 !important;\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-sm-grow-1 {\n -webkit-box-flex: 1 !important;\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-sm-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-sm-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .flex-sm-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-sm-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-sm-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-sm-start {\n -webkit-box-pack: start !important;\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-sm-end {\n -webkit-box-pack: end !important;\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-sm-center {\n -webkit-box-pack: center !important;\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-sm-between {\n -webkit-box-pack: justify !important;\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-sm-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .justify-content-sm-evenly {\n -webkit-box-pack: space-evenly !important;\n -ms-flex-pack: space-evenly !important;\n justify-content: space-evenly !important;\n }\n .align-items-sm-start {\n -webkit-box-align: start !important;\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-sm-end {\n -webkit-box-align: end !important;\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-sm-center {\n -webkit-box-align: center !important;\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-sm-baseline {\n -webkit-box-align: baseline !important;\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-sm-stretch {\n -webkit-box-align: stretch !important;\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-sm-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-sm-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-sm-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-sm-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-sm-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-sm-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-sm-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-sm-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-sm-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-sm-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-sm-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-sm-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n .order-sm-first {\n -webkit-box-ordinal-group: 0 !important;\n -ms-flex-order: -1 !important;\n order: -1 !important;\n }\n .order-sm-0 {\n -webkit-box-ordinal-group: 1 !important;\n -ms-flex-order: 0 !important;\n order: 0 !important;\n }\n .order-sm-1 {\n -webkit-box-ordinal-group: 2 !important;\n -ms-flex-order: 1 !important;\n order: 1 !important;\n }\n .order-sm-2 {\n -webkit-box-ordinal-group: 3 !important;\n -ms-flex-order: 2 !important;\n order: 2 !important;\n }\n .order-sm-3 {\n -webkit-box-ordinal-group: 4 !important;\n -ms-flex-order: 3 !important;\n order: 3 !important;\n }\n .order-sm-4 {\n -webkit-box-ordinal-group: 5 !important;\n -ms-flex-order: 4 !important;\n order: 4 !important;\n }\n .order-sm-5 {\n -webkit-box-ordinal-group: 6 !important;\n -ms-flex-order: 5 !important;\n order: 5 !important;\n }\n .order-sm-last {\n -webkit-box-ordinal-group: 7 !important;\n -ms-flex-order: 6 !important;\n order: 6 !important;\n }\n .m-sm-0 {\n margin: 0 !important;\n }\n .m-sm-1 {\n margin: 0.25rem !important;\n }\n .m-sm-2 {\n margin: 0.5rem !important;\n }\n .m-sm-3 {\n margin: 1rem !important;\n }\n .m-sm-4 {\n margin: 1.5rem !important;\n }\n .m-sm-5 {\n margin: 3rem !important;\n }\n .m-sm-auto {\n margin: auto !important;\n }\n .mx-sm-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n .mx-sm-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n }\n .mx-sm-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n }\n .mx-sm-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n }\n .mx-sm-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n }\n .mx-sm-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n }\n .mx-sm-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n .my-sm-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-sm-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n }\n .my-sm-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n }\n .my-sm-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n }\n .my-sm-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n }\n .my-sm-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n }\n .my-sm-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-sm-0 {\n margin-top: 0 !important;\n }\n .mt-sm-1 {\n margin-top: 0.25rem !important;\n }\n .mt-sm-2 {\n margin-top: 0.5rem !important;\n }\n .mt-sm-3 {\n margin-top: 1rem !important;\n }\n .mt-sm-4 {\n margin-top: 1.5rem !important;\n }\n .mt-sm-5 {\n margin-top: 3rem !important;\n }\n .mt-sm-auto {\n margin-top: auto !important;\n }\n .me-sm-0 {\n margin-right: 0 !important;\n }\n .me-sm-1 {\n margin-right: 0.25rem !important;\n }\n .me-sm-2 {\n margin-right: 0.5rem !important;\n }\n .me-sm-3 {\n margin-right: 1rem !important;\n }\n .me-sm-4 {\n margin-right: 1.5rem !important;\n }\n .me-sm-5 {\n margin-right: 3rem !important;\n }\n .me-sm-auto {\n margin-right: auto !important;\n }\n .mb-sm-0 {\n margin-bottom: 0 !important;\n }\n .mb-sm-1 {\n margin-bottom: 0.25rem !important;\n }\n .mb-sm-2 {\n margin-bottom: 0.5rem !important;\n }\n .mb-sm-3 {\n margin-bottom: 1rem !important;\n }\n .mb-sm-4 {\n margin-bottom: 1.5rem !important;\n }\n .mb-sm-5 {\n margin-bottom: 3rem !important;\n }\n .mb-sm-auto {\n margin-bottom: auto !important;\n }\n .ms-sm-0 {\n margin-left: 0 !important;\n }\n .ms-sm-1 {\n margin-left: 0.25rem !important;\n }\n .ms-sm-2 {\n margin-left: 0.5rem !important;\n }\n .ms-sm-3 {\n margin-left: 1rem !important;\n }\n .ms-sm-4 {\n margin-left: 1.5rem !important;\n }\n .ms-sm-5 {\n margin-left: 3rem !important;\n }\n .ms-sm-auto {\n margin-left: auto !important;\n }\n .p-sm-0 {\n padding: 0 !important;\n }\n .p-sm-1 {\n padding: 0.25rem !important;\n }\n .p-sm-2 {\n padding: 0.5rem !important;\n }\n .p-sm-3 {\n padding: 1rem !important;\n }\n .p-sm-4 {\n padding: 1.5rem !important;\n }\n .p-sm-5 {\n padding: 3rem !important;\n }\n .px-sm-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n .px-sm-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n }\n .px-sm-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n }\n .px-sm-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n }\n .px-sm-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n }\n .px-sm-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n }\n .py-sm-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-sm-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n }\n .py-sm-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n }\n .py-sm-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n }\n .py-sm-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n }\n .py-sm-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n }\n .pt-sm-0 {\n padding-top: 0 !important;\n }\n .pt-sm-1 {\n padding-top: 0.25rem !important;\n }\n .pt-sm-2 {\n padding-top: 0.5rem !important;\n }\n .pt-sm-3 {\n padding-top: 1rem !important;\n }\n .pt-sm-4 {\n padding-top: 1.5rem !important;\n }\n .pt-sm-5 {\n padding-top: 3rem !important;\n }\n .pe-sm-0 {\n padding-right: 0 !important;\n }\n .pe-sm-1 {\n padding-right: 0.25rem !important;\n }\n .pe-sm-2 {\n padding-right: 0.5rem !important;\n }\n .pe-sm-3 {\n padding-right: 1rem !important;\n }\n .pe-sm-4 {\n padding-right: 1.5rem !important;\n }\n .pe-sm-5 {\n padding-right: 3rem !important;\n }\n .pb-sm-0 {\n padding-bottom: 0 !important;\n }\n .pb-sm-1 {\n padding-bottom: 0.25rem !important;\n }\n .pb-sm-2 {\n padding-bottom: 0.5rem !important;\n }\n .pb-sm-3 {\n padding-bottom: 1rem !important;\n }\n .pb-sm-4 {\n padding-bottom: 1.5rem !important;\n }\n .pb-sm-5 {\n padding-bottom: 3rem !important;\n }\n .ps-sm-0 {\n padding-left: 0 !important;\n }\n .ps-sm-1 {\n padding-left: 0.25rem !important;\n }\n .ps-sm-2 {\n padding-left: 0.5rem !important;\n }\n .ps-sm-3 {\n padding-left: 1rem !important;\n }\n .ps-sm-4 {\n padding-left: 1.5rem !important;\n }\n .ps-sm-5 {\n padding-left: 3rem !important;\n }\n .gap-sm-0 {\n gap: 0 !important;\n }\n .gap-sm-1 {\n gap: 0.25rem !important;\n }\n .gap-sm-2 {\n gap: 0.5rem !important;\n }\n .gap-sm-3 {\n gap: 1rem !important;\n }\n .gap-sm-4 {\n gap: 1.5rem !important;\n }\n .gap-sm-5 {\n gap: 3rem !important;\n }\n .row-gap-sm-0 {\n row-gap: 0 !important;\n }\n .row-gap-sm-1 {\n row-gap: 0.25rem !important;\n }\n .row-gap-sm-2 {\n row-gap: 0.5rem !important;\n }\n .row-gap-sm-3 {\n row-gap: 1rem !important;\n }\n .row-gap-sm-4 {\n row-gap: 1.5rem !important;\n }\n .row-gap-sm-5 {\n row-gap: 3rem !important;\n }\n .column-gap-sm-0 {\n -moz-column-gap: 0 !important;\n -webkit-column-gap: 0 !important;\n column-gap: 0 !important;\n }\n .column-gap-sm-1 {\n -moz-column-gap: 0.25rem !important;\n -webkit-column-gap: 0.25rem !important;\n column-gap: 0.25rem !important;\n }\n .column-gap-sm-2 {\n -moz-column-gap: 0.5rem !important;\n -webkit-column-gap: 0.5rem !important;\n column-gap: 0.5rem !important;\n }\n .column-gap-sm-3 {\n -moz-column-gap: 1rem !important;\n -webkit-column-gap: 1rem !important;\n column-gap: 1rem !important;\n }\n .column-gap-sm-4 {\n -moz-column-gap: 1.5rem !important;\n -webkit-column-gap: 1.5rem !important;\n column-gap: 1.5rem !important;\n }\n .column-gap-sm-5 {\n -moz-column-gap: 3rem !important;\n -webkit-column-gap: 3rem !important;\n column-gap: 3rem !important;\n }\n .text-sm-start {\n text-align: left !important;\n }\n .text-sm-end {\n text-align: right !important;\n }\n .text-sm-center {\n text-align: center !important;\n }\n}\n@media (min-width: 768px) {\n .float-md-start {\n float: left !important;\n }\n .float-md-end {\n float: right !important;\n }\n .float-md-none {\n float: none !important;\n }\n .object-fit-md-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n }\n .object-fit-md-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n }\n .object-fit-md-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n }\n .object-fit-md-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n }\n .object-fit-md-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n }\n .d-md-inline {\n display: inline !important;\n }\n .d-md-inline-block {\n display: inline-block !important;\n }\n .d-md-block {\n display: block !important;\n }\n .d-md-grid {\n display: grid !important;\n }\n .d-md-inline-grid {\n display: inline-grid !important;\n }\n .d-md-table {\n display: table !important;\n }\n .d-md-table-row {\n display: table-row !important;\n }\n .d-md-table-cell {\n display: table-cell !important;\n }\n .d-md-flex {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-md-inline-flex {\n display: -webkit-inline-box !important;\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n .d-md-none {\n display: none !important;\n }\n .flex-md-fill {\n -webkit-box-flex: 1 !important;\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-md-row {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-md-column {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-md-row-reverse {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-md-column-reverse {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-md-grow-0 {\n -webkit-box-flex: 0 !important;\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-md-grow-1 {\n -webkit-box-flex: 1 !important;\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-md-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-md-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .flex-md-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-md-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-md-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-md-start {\n -webkit-box-pack: start !important;\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-md-end {\n -webkit-box-pack: end !important;\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-md-center {\n -webkit-box-pack: center !important;\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-md-between {\n -webkit-box-pack: justify !important;\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-md-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .justify-content-md-evenly {\n -webkit-box-pack: space-evenly !important;\n -ms-flex-pack: space-evenly !important;\n justify-content: space-evenly !important;\n }\n .align-items-md-start {\n -webkit-box-align: start !important;\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-md-end {\n -webkit-box-align: end !important;\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-md-center {\n -webkit-box-align: center !important;\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-md-baseline {\n -webkit-box-align: baseline !important;\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-md-stretch {\n -webkit-box-align: stretch !important;\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-md-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-md-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-md-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-md-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-md-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-md-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-md-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-md-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-md-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-md-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-md-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-md-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n .order-md-first {\n -webkit-box-ordinal-group: 0 !important;\n -ms-flex-order: -1 !important;\n order: -1 !important;\n }\n .order-md-0 {\n -webkit-box-ordinal-group: 1 !important;\n -ms-flex-order: 0 !important;\n order: 0 !important;\n }\n .order-md-1 {\n -webkit-box-ordinal-group: 2 !important;\n -ms-flex-order: 1 !important;\n order: 1 !important;\n }\n .order-md-2 {\n -webkit-box-ordinal-group: 3 !important;\n -ms-flex-order: 2 !important;\n order: 2 !important;\n }\n .order-md-3 {\n -webkit-box-ordinal-group: 4 !important;\n -ms-flex-order: 3 !important;\n order: 3 !important;\n }\n .order-md-4 {\n -webkit-box-ordinal-group: 5 !important;\n -ms-flex-order: 4 !important;\n order: 4 !important;\n }\n .order-md-5 {\n -webkit-box-ordinal-group: 6 !important;\n -ms-flex-order: 5 !important;\n order: 5 !important;\n }\n .order-md-last {\n -webkit-box-ordinal-group: 7 !important;\n -ms-flex-order: 6 !important;\n order: 6 !important;\n }\n .m-md-0 {\n margin: 0 !important;\n }\n .m-md-1 {\n margin: 0.25rem !important;\n }\n .m-md-2 {\n margin: 0.5rem !important;\n }\n .m-md-3 {\n margin: 1rem !important;\n }\n .m-md-4 {\n margin: 1.5rem !important;\n }\n .m-md-5 {\n margin: 3rem !important;\n }\n .m-md-auto {\n margin: auto !important;\n }\n .mx-md-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n .mx-md-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n }\n .mx-md-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n }\n .mx-md-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n }\n .mx-md-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n }\n .mx-md-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n }\n .mx-md-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n .my-md-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-md-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n }\n .my-md-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n }\n .my-md-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n }\n .my-md-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n }\n .my-md-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n }\n .my-md-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-md-0 {\n margin-top: 0 !important;\n }\n .mt-md-1 {\n margin-top: 0.25rem !important;\n }\n .mt-md-2 {\n margin-top: 0.5rem !important;\n }\n .mt-md-3 {\n margin-top: 1rem !important;\n }\n .mt-md-4 {\n margin-top: 1.5rem !important;\n }\n .mt-md-5 {\n margin-top: 3rem !important;\n }\n .mt-md-auto {\n margin-top: auto !important;\n }\n .me-md-0 {\n margin-right: 0 !important;\n }\n .me-md-1 {\n margin-right: 0.25rem !important;\n }\n .me-md-2 {\n margin-right: 0.5rem !important;\n }\n .me-md-3 {\n margin-right: 1rem !important;\n }\n .me-md-4 {\n margin-right: 1.5rem !important;\n }\n .me-md-5 {\n margin-right: 3rem !important;\n }\n .me-md-auto {\n margin-right: auto !important;\n }\n .mb-md-0 {\n margin-bottom: 0 !important;\n }\n .mb-md-1 {\n margin-bottom: 0.25rem !important;\n }\n .mb-md-2 {\n margin-bottom: 0.5rem !important;\n }\n .mb-md-3 {\n margin-bottom: 1rem !important;\n }\n .mb-md-4 {\n margin-bottom: 1.5rem !important;\n }\n .mb-md-5 {\n margin-bottom: 3rem !important;\n }\n .mb-md-auto {\n margin-bottom: auto !important;\n }\n .ms-md-0 {\n margin-left: 0 !important;\n }\n .ms-md-1 {\n margin-left: 0.25rem !important;\n }\n .ms-md-2 {\n margin-left: 0.5rem !important;\n }\n .ms-md-3 {\n margin-left: 1rem !important;\n }\n .ms-md-4 {\n margin-left: 1.5rem !important;\n }\n .ms-md-5 {\n margin-left: 3rem !important;\n }\n .ms-md-auto {\n margin-left: auto !important;\n }\n .p-md-0 {\n padding: 0 !important;\n }\n .p-md-1 {\n padding: 0.25rem !important;\n }\n .p-md-2 {\n padding: 0.5rem !important;\n }\n .p-md-3 {\n padding: 1rem !important;\n }\n .p-md-4 {\n padding: 1.5rem !important;\n }\n .p-md-5 {\n padding: 3rem !important;\n }\n .px-md-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n .px-md-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n }\n .px-md-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n }\n .px-md-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n }\n .px-md-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n }\n .px-md-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n }\n .py-md-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-md-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n }\n .py-md-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n }\n .py-md-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n }\n .py-md-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n }\n .py-md-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n }\n .pt-md-0 {\n padding-top: 0 !important;\n }\n .pt-md-1 {\n padding-top: 0.25rem !important;\n }\n .pt-md-2 {\n padding-top: 0.5rem !important;\n }\n .pt-md-3 {\n padding-top: 1rem !important;\n }\n .pt-md-4 {\n padding-top: 1.5rem !important;\n }\n .pt-md-5 {\n padding-top: 3rem !important;\n }\n .pe-md-0 {\n padding-right: 0 !important;\n }\n .pe-md-1 {\n padding-right: 0.25rem !important;\n }\n .pe-md-2 {\n padding-right: 0.5rem !important;\n }\n .pe-md-3 {\n padding-right: 1rem !important;\n }\n .pe-md-4 {\n padding-right: 1.5rem !important;\n }\n .pe-md-5 {\n padding-right: 3rem !important;\n }\n .pb-md-0 {\n padding-bottom: 0 !important;\n }\n .pb-md-1 {\n padding-bottom: 0.25rem !important;\n }\n .pb-md-2 {\n padding-bottom: 0.5rem !important;\n }\n .pb-md-3 {\n padding-bottom: 1rem !important;\n }\n .pb-md-4 {\n padding-bottom: 1.5rem !important;\n }\n .pb-md-5 {\n padding-bottom: 3rem !important;\n }\n .ps-md-0 {\n padding-left: 0 !important;\n }\n .ps-md-1 {\n padding-left: 0.25rem !important;\n }\n .ps-md-2 {\n padding-left: 0.5rem !important;\n }\n .ps-md-3 {\n padding-left: 1rem !important;\n }\n .ps-md-4 {\n padding-left: 1.5rem !important;\n }\n .ps-md-5 {\n padding-left: 3rem !important;\n }\n .gap-md-0 {\n gap: 0 !important;\n }\n .gap-md-1 {\n gap: 0.25rem !important;\n }\n .gap-md-2 {\n gap: 0.5rem !important;\n }\n .gap-md-3 {\n gap: 1rem !important;\n }\n .gap-md-4 {\n gap: 1.5rem !important;\n }\n .gap-md-5 {\n gap: 3rem !important;\n }\n .row-gap-md-0 {\n row-gap: 0 !important;\n }\n .row-gap-md-1 {\n row-gap: 0.25rem !important;\n }\n .row-gap-md-2 {\n row-gap: 0.5rem !important;\n }\n .row-gap-md-3 {\n row-gap: 1rem !important;\n }\n .row-gap-md-4 {\n row-gap: 1.5rem !important;\n }\n .row-gap-md-5 {\n row-gap: 3rem !important;\n }\n .column-gap-md-0 {\n -moz-column-gap: 0 !important;\n -webkit-column-gap: 0 !important;\n column-gap: 0 !important;\n }\n .column-gap-md-1 {\n -moz-column-gap: 0.25rem !important;\n -webkit-column-gap: 0.25rem !important;\n column-gap: 0.25rem !important;\n }\n .column-gap-md-2 {\n -moz-column-gap: 0.5rem !important;\n -webkit-column-gap: 0.5rem !important;\n column-gap: 0.5rem !important;\n }\n .column-gap-md-3 {\n -moz-column-gap: 1rem !important;\n -webkit-column-gap: 1rem !important;\n column-gap: 1rem !important;\n }\n .column-gap-md-4 {\n -moz-column-gap: 1.5rem !important;\n -webkit-column-gap: 1.5rem !important;\n column-gap: 1.5rem !important;\n }\n .column-gap-md-5 {\n -moz-column-gap: 3rem !important;\n -webkit-column-gap: 3rem !important;\n column-gap: 3rem !important;\n }\n .text-md-start {\n text-align: left !important;\n }\n .text-md-end {\n text-align: right !important;\n }\n .text-md-center {\n text-align: center !important;\n }\n}\n@media (min-width: 992px) {\n .float-lg-start {\n float: left !important;\n }\n .float-lg-end {\n float: right !important;\n }\n .float-lg-none {\n float: none !important;\n }\n .object-fit-lg-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n }\n .object-fit-lg-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n }\n .object-fit-lg-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n }\n .object-fit-lg-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n }\n .object-fit-lg-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n }\n .d-lg-inline {\n display: inline !important;\n }\n .d-lg-inline-block {\n display: inline-block !important;\n }\n .d-lg-block {\n display: block !important;\n }\n .d-lg-grid {\n display: grid !important;\n }\n .d-lg-inline-grid {\n display: inline-grid !important;\n }\n .d-lg-table {\n display: table !important;\n }\n .d-lg-table-row {\n display: table-row !important;\n }\n .d-lg-table-cell {\n display: table-cell !important;\n }\n .d-lg-flex {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-lg-inline-flex {\n display: -webkit-inline-box !important;\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n .d-lg-none {\n display: none !important;\n }\n .flex-lg-fill {\n -webkit-box-flex: 1 !important;\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-lg-row {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-lg-column {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-lg-row-reverse {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-lg-column-reverse {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-lg-grow-0 {\n -webkit-box-flex: 0 !important;\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-lg-grow-1 {\n -webkit-box-flex: 1 !important;\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-lg-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-lg-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .flex-lg-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-lg-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-lg-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-lg-start {\n -webkit-box-pack: start !important;\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-lg-end {\n -webkit-box-pack: end !important;\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-lg-center {\n -webkit-box-pack: center !important;\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-lg-between {\n -webkit-box-pack: justify !important;\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-lg-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .justify-content-lg-evenly {\n -webkit-box-pack: space-evenly !important;\n -ms-flex-pack: space-evenly !important;\n justify-content: space-evenly !important;\n }\n .align-items-lg-start {\n -webkit-box-align: start !important;\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-lg-end {\n -webkit-box-align: end !important;\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-lg-center {\n -webkit-box-align: center !important;\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-lg-baseline {\n -webkit-box-align: baseline !important;\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-lg-stretch {\n -webkit-box-align: stretch !important;\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-lg-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-lg-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-lg-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-lg-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-lg-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-lg-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-lg-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-lg-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-lg-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-lg-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-lg-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-lg-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n .order-lg-first {\n -webkit-box-ordinal-group: 0 !important;\n -ms-flex-order: -1 !important;\n order: -1 !important;\n }\n .order-lg-0 {\n -webkit-box-ordinal-group: 1 !important;\n -ms-flex-order: 0 !important;\n order: 0 !important;\n }\n .order-lg-1 {\n -webkit-box-ordinal-group: 2 !important;\n -ms-flex-order: 1 !important;\n order: 1 !important;\n }\n .order-lg-2 {\n -webkit-box-ordinal-group: 3 !important;\n -ms-flex-order: 2 !important;\n order: 2 !important;\n }\n .order-lg-3 {\n -webkit-box-ordinal-group: 4 !important;\n -ms-flex-order: 3 !important;\n order: 3 !important;\n }\n .order-lg-4 {\n -webkit-box-ordinal-group: 5 !important;\n -ms-flex-order: 4 !important;\n order: 4 !important;\n }\n .order-lg-5 {\n -webkit-box-ordinal-group: 6 !important;\n -ms-flex-order: 5 !important;\n order: 5 !important;\n }\n .order-lg-last {\n -webkit-box-ordinal-group: 7 !important;\n -ms-flex-order: 6 !important;\n order: 6 !important;\n }\n .m-lg-0 {\n margin: 0 !important;\n }\n .m-lg-1 {\n margin: 0.25rem !important;\n }\n .m-lg-2 {\n margin: 0.5rem !important;\n }\n .m-lg-3 {\n margin: 1rem !important;\n }\n .m-lg-4 {\n margin: 1.5rem !important;\n }\n .m-lg-5 {\n margin: 3rem !important;\n }\n .m-lg-auto {\n margin: auto !important;\n }\n .mx-lg-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n .mx-lg-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n }\n .mx-lg-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n }\n .mx-lg-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n }\n .mx-lg-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n }\n .mx-lg-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n }\n .mx-lg-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n .my-lg-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-lg-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n }\n .my-lg-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n }\n .my-lg-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n }\n .my-lg-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n }\n .my-lg-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n }\n .my-lg-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-lg-0 {\n margin-top: 0 !important;\n }\n .mt-lg-1 {\n margin-top: 0.25rem !important;\n }\n .mt-lg-2 {\n margin-top: 0.5rem !important;\n }\n .mt-lg-3 {\n margin-top: 1rem !important;\n }\n .mt-lg-4 {\n margin-top: 1.5rem !important;\n }\n .mt-lg-5 {\n margin-top: 3rem !important;\n }\n .mt-lg-auto {\n margin-top: auto !important;\n }\n .me-lg-0 {\n margin-right: 0 !important;\n }\n .me-lg-1 {\n margin-right: 0.25rem !important;\n }\n .me-lg-2 {\n margin-right: 0.5rem !important;\n }\n .me-lg-3 {\n margin-right: 1rem !important;\n }\n .me-lg-4 {\n margin-right: 1.5rem !important;\n }\n .me-lg-5 {\n margin-right: 3rem !important;\n }\n .me-lg-auto {\n margin-right: auto !important;\n }\n .mb-lg-0 {\n margin-bottom: 0 !important;\n }\n .mb-lg-1 {\n margin-bottom: 0.25rem !important;\n }\n .mb-lg-2 {\n margin-bottom: 0.5rem !important;\n }\n .mb-lg-3 {\n margin-bottom: 1rem !important;\n }\n .mb-lg-4 {\n margin-bottom: 1.5rem !important;\n }\n .mb-lg-5 {\n margin-bottom: 3rem !important;\n }\n .mb-lg-auto {\n margin-bottom: auto !important;\n }\n .ms-lg-0 {\n margin-left: 0 !important;\n }\n .ms-lg-1 {\n margin-left: 0.25rem !important;\n }\n .ms-lg-2 {\n margin-left: 0.5rem !important;\n }\n .ms-lg-3 {\n margin-left: 1rem !important;\n }\n .ms-lg-4 {\n margin-left: 1.5rem !important;\n }\n .ms-lg-5 {\n margin-left: 3rem !important;\n }\n .ms-lg-auto {\n margin-left: auto !important;\n }\n .p-lg-0 {\n padding: 0 !important;\n }\n .p-lg-1 {\n padding: 0.25rem !important;\n }\n .p-lg-2 {\n padding: 0.5rem !important;\n }\n .p-lg-3 {\n padding: 1rem !important;\n }\n .p-lg-4 {\n padding: 1.5rem !important;\n }\n .p-lg-5 {\n padding: 3rem !important;\n }\n .px-lg-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n .px-lg-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n }\n .px-lg-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n }\n .px-lg-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n }\n .px-lg-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n }\n .px-lg-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n }\n .py-lg-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-lg-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n }\n .py-lg-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n }\n .py-lg-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n }\n .py-lg-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n }\n .py-lg-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n }\n .pt-lg-0 {\n padding-top: 0 !important;\n }\n .pt-lg-1 {\n padding-top: 0.25rem !important;\n }\n .pt-lg-2 {\n padding-top: 0.5rem !important;\n }\n .pt-lg-3 {\n padding-top: 1rem !important;\n }\n .pt-lg-4 {\n padding-top: 1.5rem !important;\n }\n .pt-lg-5 {\n padding-top: 3rem !important;\n }\n .pe-lg-0 {\n padding-right: 0 !important;\n }\n .pe-lg-1 {\n padding-right: 0.25rem !important;\n }\n .pe-lg-2 {\n padding-right: 0.5rem !important;\n }\n .pe-lg-3 {\n padding-right: 1rem !important;\n }\n .pe-lg-4 {\n padding-right: 1.5rem !important;\n }\n .pe-lg-5 {\n padding-right: 3rem !important;\n }\n .pb-lg-0 {\n padding-bottom: 0 !important;\n }\n .pb-lg-1 {\n padding-bottom: 0.25rem !important;\n }\n .pb-lg-2 {\n padding-bottom: 0.5rem !important;\n }\n .pb-lg-3 {\n padding-bottom: 1rem !important;\n }\n .pb-lg-4 {\n padding-bottom: 1.5rem !important;\n }\n .pb-lg-5 {\n padding-bottom: 3rem !important;\n }\n .ps-lg-0 {\n padding-left: 0 !important;\n }\n .ps-lg-1 {\n padding-left: 0.25rem !important;\n }\n .ps-lg-2 {\n padding-left: 0.5rem !important;\n }\n .ps-lg-3 {\n padding-left: 1rem !important;\n }\n .ps-lg-4 {\n padding-left: 1.5rem !important;\n }\n .ps-lg-5 {\n padding-left: 3rem !important;\n }\n .gap-lg-0 {\n gap: 0 !important;\n }\n .gap-lg-1 {\n gap: 0.25rem !important;\n }\n .gap-lg-2 {\n gap: 0.5rem !important;\n }\n .gap-lg-3 {\n gap: 1rem !important;\n }\n .gap-lg-4 {\n gap: 1.5rem !important;\n }\n .gap-lg-5 {\n gap: 3rem !important;\n }\n .row-gap-lg-0 {\n row-gap: 0 !important;\n }\n .row-gap-lg-1 {\n row-gap: 0.25rem !important;\n }\n .row-gap-lg-2 {\n row-gap: 0.5rem !important;\n }\n .row-gap-lg-3 {\n row-gap: 1rem !important;\n }\n .row-gap-lg-4 {\n row-gap: 1.5rem !important;\n }\n .row-gap-lg-5 {\n row-gap: 3rem !important;\n }\n .column-gap-lg-0 {\n -moz-column-gap: 0 !important;\n -webkit-column-gap: 0 !important;\n column-gap: 0 !important;\n }\n .column-gap-lg-1 {\n -moz-column-gap: 0.25rem !important;\n -webkit-column-gap: 0.25rem !important;\n column-gap: 0.25rem !important;\n }\n .column-gap-lg-2 {\n -moz-column-gap: 0.5rem !important;\n -webkit-column-gap: 0.5rem !important;\n column-gap: 0.5rem !important;\n }\n .column-gap-lg-3 {\n -moz-column-gap: 1rem !important;\n -webkit-column-gap: 1rem !important;\n column-gap: 1rem !important;\n }\n .column-gap-lg-4 {\n -moz-column-gap: 1.5rem !important;\n -webkit-column-gap: 1.5rem !important;\n column-gap: 1.5rem !important;\n }\n .column-gap-lg-5 {\n -moz-column-gap: 3rem !important;\n -webkit-column-gap: 3rem !important;\n column-gap: 3rem !important;\n }\n .text-lg-start {\n text-align: left !important;\n }\n .text-lg-end {\n text-align: right !important;\n }\n .text-lg-center {\n text-align: center !important;\n }\n}\n@media (min-width: 1200px) {\n .float-xl-start {\n float: left !important;\n }\n .float-xl-end {\n float: right !important;\n }\n .float-xl-none {\n float: none !important;\n }\n .object-fit-xl-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n }\n .object-fit-xl-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n }\n .object-fit-xl-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n }\n .object-fit-xl-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n }\n .object-fit-xl-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n }\n .d-xl-inline {\n display: inline !important;\n }\n .d-xl-inline-block {\n display: inline-block !important;\n }\n .d-xl-block {\n display: block !important;\n }\n .d-xl-grid {\n display: grid !important;\n }\n .d-xl-inline-grid {\n display: inline-grid !important;\n }\n .d-xl-table {\n display: table !important;\n }\n .d-xl-table-row {\n display: table-row !important;\n }\n .d-xl-table-cell {\n display: table-cell !important;\n }\n .d-xl-flex {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-xl-inline-flex {\n display: -webkit-inline-box !important;\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n .d-xl-none {\n display: none !important;\n }\n .flex-xl-fill {\n -webkit-box-flex: 1 !important;\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-xl-row {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-xl-column {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-xl-row-reverse {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-xl-column-reverse {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-xl-grow-0 {\n -webkit-box-flex: 0 !important;\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-xl-grow-1 {\n -webkit-box-flex: 1 !important;\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-xl-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-xl-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .flex-xl-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-xl-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-xl-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-xl-start {\n -webkit-box-pack: start !important;\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-xl-end {\n -webkit-box-pack: end !important;\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-xl-center {\n -webkit-box-pack: center !important;\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-xl-between {\n -webkit-box-pack: justify !important;\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-xl-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .justify-content-xl-evenly {\n -webkit-box-pack: space-evenly !important;\n -ms-flex-pack: space-evenly !important;\n justify-content: space-evenly !important;\n }\n .align-items-xl-start {\n -webkit-box-align: start !important;\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-xl-end {\n -webkit-box-align: end !important;\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-xl-center {\n -webkit-box-align: center !important;\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-xl-baseline {\n -webkit-box-align: baseline !important;\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-xl-stretch {\n -webkit-box-align: stretch !important;\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-xl-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-xl-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-xl-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-xl-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-xl-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-xl-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-xl-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-xl-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-xl-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-xl-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-xl-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-xl-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n .order-xl-first {\n -webkit-box-ordinal-group: 0 !important;\n -ms-flex-order: -1 !important;\n order: -1 !important;\n }\n .order-xl-0 {\n -webkit-box-ordinal-group: 1 !important;\n -ms-flex-order: 0 !important;\n order: 0 !important;\n }\n .order-xl-1 {\n -webkit-box-ordinal-group: 2 !important;\n -ms-flex-order: 1 !important;\n order: 1 !important;\n }\n .order-xl-2 {\n -webkit-box-ordinal-group: 3 !important;\n -ms-flex-order: 2 !important;\n order: 2 !important;\n }\n .order-xl-3 {\n -webkit-box-ordinal-group: 4 !important;\n -ms-flex-order: 3 !important;\n order: 3 !important;\n }\n .order-xl-4 {\n -webkit-box-ordinal-group: 5 !important;\n -ms-flex-order: 4 !important;\n order: 4 !important;\n }\n .order-xl-5 {\n -webkit-box-ordinal-group: 6 !important;\n -ms-flex-order: 5 !important;\n order: 5 !important;\n }\n .order-xl-last {\n -webkit-box-ordinal-group: 7 !important;\n -ms-flex-order: 6 !important;\n order: 6 !important;\n }\n .m-xl-0 {\n margin: 0 !important;\n }\n .m-xl-1 {\n margin: 0.25rem !important;\n }\n .m-xl-2 {\n margin: 0.5rem !important;\n }\n .m-xl-3 {\n margin: 1rem !important;\n }\n .m-xl-4 {\n margin: 1.5rem !important;\n }\n .m-xl-5 {\n margin: 3rem !important;\n }\n .m-xl-auto {\n margin: auto !important;\n }\n .mx-xl-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n .mx-xl-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n }\n .mx-xl-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n }\n .mx-xl-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n }\n .mx-xl-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n }\n .mx-xl-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n }\n .mx-xl-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n .my-xl-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-xl-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n }\n .my-xl-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n }\n .my-xl-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n }\n .my-xl-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n }\n .my-xl-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n }\n .my-xl-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-xl-0 {\n margin-top: 0 !important;\n }\n .mt-xl-1 {\n margin-top: 0.25rem !important;\n }\n .mt-xl-2 {\n margin-top: 0.5rem !important;\n }\n .mt-xl-3 {\n margin-top: 1rem !important;\n }\n .mt-xl-4 {\n margin-top: 1.5rem !important;\n }\n .mt-xl-5 {\n margin-top: 3rem !important;\n }\n .mt-xl-auto {\n margin-top: auto !important;\n }\n .me-xl-0 {\n margin-right: 0 !important;\n }\n .me-xl-1 {\n margin-right: 0.25rem !important;\n }\n .me-xl-2 {\n margin-right: 0.5rem !important;\n }\n .me-xl-3 {\n margin-right: 1rem !important;\n }\n .me-xl-4 {\n margin-right: 1.5rem !important;\n }\n .me-xl-5 {\n margin-right: 3rem !important;\n }\n .me-xl-auto {\n margin-right: auto !important;\n }\n .mb-xl-0 {\n margin-bottom: 0 !important;\n }\n .mb-xl-1 {\n margin-bottom: 0.25rem !important;\n }\n .mb-xl-2 {\n margin-bottom: 0.5rem !important;\n }\n .mb-xl-3 {\n margin-bottom: 1rem !important;\n }\n .mb-xl-4 {\n margin-bottom: 1.5rem !important;\n }\n .mb-xl-5 {\n margin-bottom: 3rem !important;\n }\n .mb-xl-auto {\n margin-bottom: auto !important;\n }\n .ms-xl-0 {\n margin-left: 0 !important;\n }\n .ms-xl-1 {\n margin-left: 0.25rem !important;\n }\n .ms-xl-2 {\n margin-left: 0.5rem !important;\n }\n .ms-xl-3 {\n margin-left: 1rem !important;\n }\n .ms-xl-4 {\n margin-left: 1.5rem !important;\n }\n .ms-xl-5 {\n margin-left: 3rem !important;\n }\n .ms-xl-auto {\n margin-left: auto !important;\n }\n .p-xl-0 {\n padding: 0 !important;\n }\n .p-xl-1 {\n padding: 0.25rem !important;\n }\n .p-xl-2 {\n padding: 0.5rem !important;\n }\n .p-xl-3 {\n padding: 1rem !important;\n }\n .p-xl-4 {\n padding: 1.5rem !important;\n }\n .p-xl-5 {\n padding: 3rem !important;\n }\n .px-xl-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n .px-xl-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n }\n .px-xl-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n }\n .px-xl-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n }\n .px-xl-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n }\n .px-xl-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n }\n .py-xl-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-xl-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n }\n .py-xl-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n }\n .py-xl-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n }\n .py-xl-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n }\n .py-xl-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n }\n .pt-xl-0 {\n padding-top: 0 !important;\n }\n .pt-xl-1 {\n padding-top: 0.25rem !important;\n }\n .pt-xl-2 {\n padding-top: 0.5rem !important;\n }\n .pt-xl-3 {\n padding-top: 1rem !important;\n }\n .pt-xl-4 {\n padding-top: 1.5rem !important;\n }\n .pt-xl-5 {\n padding-top: 3rem !important;\n }\n .pe-xl-0 {\n padding-right: 0 !important;\n }\n .pe-xl-1 {\n padding-right: 0.25rem !important;\n }\n .pe-xl-2 {\n padding-right: 0.5rem !important;\n }\n .pe-xl-3 {\n padding-right: 1rem !important;\n }\n .pe-xl-4 {\n padding-right: 1.5rem !important;\n }\n .pe-xl-5 {\n padding-right: 3rem !important;\n }\n .pb-xl-0 {\n padding-bottom: 0 !important;\n }\n .pb-xl-1 {\n padding-bottom: 0.25rem !important;\n }\n .pb-xl-2 {\n padding-bottom: 0.5rem !important;\n }\n .pb-xl-3 {\n padding-bottom: 1rem !important;\n }\n .pb-xl-4 {\n padding-bottom: 1.5rem !important;\n }\n .pb-xl-5 {\n padding-bottom: 3rem !important;\n }\n .ps-xl-0 {\n padding-left: 0 !important;\n }\n .ps-xl-1 {\n padding-left: 0.25rem !important;\n }\n .ps-xl-2 {\n padding-left: 0.5rem !important;\n }\n .ps-xl-3 {\n padding-left: 1rem !important;\n }\n .ps-xl-4 {\n padding-left: 1.5rem !important;\n }\n .ps-xl-5 {\n padding-left: 3rem !important;\n }\n .gap-xl-0 {\n gap: 0 !important;\n }\n .gap-xl-1 {\n gap: 0.25rem !important;\n }\n .gap-xl-2 {\n gap: 0.5rem !important;\n }\n .gap-xl-3 {\n gap: 1rem !important;\n }\n .gap-xl-4 {\n gap: 1.5rem !important;\n }\n .gap-xl-5 {\n gap: 3rem !important;\n }\n .row-gap-xl-0 {\n row-gap: 0 !important;\n }\n .row-gap-xl-1 {\n row-gap: 0.25rem !important;\n }\n .row-gap-xl-2 {\n row-gap: 0.5rem !important;\n }\n .row-gap-xl-3 {\n row-gap: 1rem !important;\n }\n .row-gap-xl-4 {\n row-gap: 1.5rem !important;\n }\n .row-gap-xl-5 {\n row-gap: 3rem !important;\n }\n .column-gap-xl-0 {\n -moz-column-gap: 0 !important;\n -webkit-column-gap: 0 !important;\n column-gap: 0 !important;\n }\n .column-gap-xl-1 {\n -moz-column-gap: 0.25rem !important;\n -webkit-column-gap: 0.25rem !important;\n column-gap: 0.25rem !important;\n }\n .column-gap-xl-2 {\n -moz-column-gap: 0.5rem !important;\n -webkit-column-gap: 0.5rem !important;\n column-gap: 0.5rem !important;\n }\n .column-gap-xl-3 {\n -moz-column-gap: 1rem !important;\n -webkit-column-gap: 1rem !important;\n column-gap: 1rem !important;\n }\n .column-gap-xl-4 {\n -moz-column-gap: 1.5rem !important;\n -webkit-column-gap: 1.5rem !important;\n column-gap: 1.5rem !important;\n }\n .column-gap-xl-5 {\n -moz-column-gap: 3rem !important;\n -webkit-column-gap: 3rem !important;\n column-gap: 3rem !important;\n }\n .text-xl-start {\n text-align: left !important;\n }\n .text-xl-end {\n text-align: right !important;\n }\n .text-xl-center {\n text-align: center !important;\n }\n}\n@media (min-width: 1400px) {\n .float-xxl-start {\n float: left !important;\n }\n .float-xxl-end {\n float: right !important;\n }\n .float-xxl-none {\n float: none !important;\n }\n .object-fit-xxl-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n }\n .object-fit-xxl-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n }\n .object-fit-xxl-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n }\n .object-fit-xxl-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n }\n .object-fit-xxl-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n }\n .d-xxl-inline {\n display: inline !important;\n }\n .d-xxl-inline-block {\n display: inline-block !important;\n }\n .d-xxl-block {\n display: block !important;\n }\n .d-xxl-grid {\n display: grid !important;\n }\n .d-xxl-inline-grid {\n display: inline-grid !important;\n }\n .d-xxl-table {\n display: table !important;\n }\n .d-xxl-table-row {\n display: table-row !important;\n }\n .d-xxl-table-cell {\n display: table-cell !important;\n }\n .d-xxl-flex {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-xxl-inline-flex {\n display: -webkit-inline-box !important;\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n .d-xxl-none {\n display: none !important;\n }\n .flex-xxl-fill {\n -webkit-box-flex: 1 !important;\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-xxl-row {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-xxl-column {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-xxl-row-reverse {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-xxl-column-reverse {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-xxl-grow-0 {\n -webkit-box-flex: 0 !important;\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-xxl-grow-1 {\n -webkit-box-flex: 1 !important;\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-xxl-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-xxl-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .flex-xxl-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-xxl-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-xxl-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-xxl-start {\n -webkit-box-pack: start !important;\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-xxl-end {\n -webkit-box-pack: end !important;\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-xxl-center {\n -webkit-box-pack: center !important;\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-xxl-between {\n -webkit-box-pack: justify !important;\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-xxl-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .justify-content-xxl-evenly {\n -webkit-box-pack: space-evenly !important;\n -ms-flex-pack: space-evenly !important;\n justify-content: space-evenly !important;\n }\n .align-items-xxl-start {\n -webkit-box-align: start !important;\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-xxl-end {\n -webkit-box-align: end !important;\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-xxl-center {\n -webkit-box-align: center !important;\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-xxl-baseline {\n -webkit-box-align: baseline !important;\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-xxl-stretch {\n -webkit-box-align: stretch !important;\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-xxl-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-xxl-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-xxl-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-xxl-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-xxl-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-xxl-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-xxl-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-xxl-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-xxl-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-xxl-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-xxl-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-xxl-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n .order-xxl-first {\n -webkit-box-ordinal-group: 0 !important;\n -ms-flex-order: -1 !important;\n order: -1 !important;\n }\n .order-xxl-0 {\n -webkit-box-ordinal-group: 1 !important;\n -ms-flex-order: 0 !important;\n order: 0 !important;\n }\n .order-xxl-1 {\n -webkit-box-ordinal-group: 2 !important;\n -ms-flex-order: 1 !important;\n order: 1 !important;\n }\n .order-xxl-2 {\n -webkit-box-ordinal-group: 3 !important;\n -ms-flex-order: 2 !important;\n order: 2 !important;\n }\n .order-xxl-3 {\n -webkit-box-ordinal-group: 4 !important;\n -ms-flex-order: 3 !important;\n order: 3 !important;\n }\n .order-xxl-4 {\n -webkit-box-ordinal-group: 5 !important;\n -ms-flex-order: 4 !important;\n order: 4 !important;\n }\n .order-xxl-5 {\n -webkit-box-ordinal-group: 6 !important;\n -ms-flex-order: 5 !important;\n order: 5 !important;\n }\n .order-xxl-last {\n -webkit-box-ordinal-group: 7 !important;\n -ms-flex-order: 6 !important;\n order: 6 !important;\n }\n .m-xxl-0 {\n margin: 0 !important;\n }\n .m-xxl-1 {\n margin: 0.25rem !important;\n }\n .m-xxl-2 {\n margin: 0.5rem !important;\n }\n .m-xxl-3 {\n margin: 1rem !important;\n }\n .m-xxl-4 {\n margin: 1.5rem !important;\n }\n .m-xxl-5 {\n margin: 3rem !important;\n }\n .m-xxl-auto {\n margin: auto !important;\n }\n .mx-xxl-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n .mx-xxl-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n }\n .mx-xxl-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n }\n .mx-xxl-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n }\n .mx-xxl-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n }\n .mx-xxl-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n }\n .mx-xxl-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n .my-xxl-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-xxl-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n }\n .my-xxl-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n }\n .my-xxl-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n }\n .my-xxl-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n }\n .my-xxl-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n }\n .my-xxl-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-xxl-0 {\n margin-top: 0 !important;\n }\n .mt-xxl-1 {\n margin-top: 0.25rem !important;\n }\n .mt-xxl-2 {\n margin-top: 0.5rem !important;\n }\n .mt-xxl-3 {\n margin-top: 1rem !important;\n }\n .mt-xxl-4 {\n margin-top: 1.5rem !important;\n }\n .mt-xxl-5 {\n margin-top: 3rem !important;\n }\n .mt-xxl-auto {\n margin-top: auto !important;\n }\n .me-xxl-0 {\n margin-right: 0 !important;\n }\n .me-xxl-1 {\n margin-right: 0.25rem !important;\n }\n .me-xxl-2 {\n margin-right: 0.5rem !important;\n }\n .me-xxl-3 {\n margin-right: 1rem !important;\n }\n .me-xxl-4 {\n margin-right: 1.5rem !important;\n }\n .me-xxl-5 {\n margin-right: 3rem !important;\n }\n .me-xxl-auto {\n margin-right: auto !important;\n }\n .mb-xxl-0 {\n margin-bottom: 0 !important;\n }\n .mb-xxl-1 {\n margin-bottom: 0.25rem !important;\n }\n .mb-xxl-2 {\n margin-bottom: 0.5rem !important;\n }\n .mb-xxl-3 {\n margin-bottom: 1rem !important;\n }\n .mb-xxl-4 {\n margin-bottom: 1.5rem !important;\n }\n .mb-xxl-5 {\n margin-bottom: 3rem !important;\n }\n .mb-xxl-auto {\n margin-bottom: auto !important;\n }\n .ms-xxl-0 {\n margin-left: 0 !important;\n }\n .ms-xxl-1 {\n margin-left: 0.25rem !important;\n }\n .ms-xxl-2 {\n margin-left: 0.5rem !important;\n }\n .ms-xxl-3 {\n margin-left: 1rem !important;\n }\n .ms-xxl-4 {\n margin-left: 1.5rem !important;\n }\n .ms-xxl-5 {\n margin-left: 3rem !important;\n }\n .ms-xxl-auto {\n margin-left: auto !important;\n }\n .p-xxl-0 {\n padding: 0 !important;\n }\n .p-xxl-1 {\n padding: 0.25rem !important;\n }\n .p-xxl-2 {\n padding: 0.5rem !important;\n }\n .p-xxl-3 {\n padding: 1rem !important;\n }\n .p-xxl-4 {\n padding: 1.5rem !important;\n }\n .p-xxl-5 {\n padding: 3rem !important;\n }\n .px-xxl-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n .px-xxl-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n }\n .px-xxl-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n }\n .px-xxl-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n }\n .px-xxl-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n }\n .px-xxl-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n }\n .py-xxl-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-xxl-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n }\n .py-xxl-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n }\n .py-xxl-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n }\n .py-xxl-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n }\n .py-xxl-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n }\n .pt-xxl-0 {\n padding-top: 0 !important;\n }\n .pt-xxl-1 {\n padding-top: 0.25rem !important;\n }\n .pt-xxl-2 {\n padding-top: 0.5rem !important;\n }\n .pt-xxl-3 {\n padding-top: 1rem !important;\n }\n .pt-xxl-4 {\n padding-top: 1.5rem !important;\n }\n .pt-xxl-5 {\n padding-top: 3rem !important;\n }\n .pe-xxl-0 {\n padding-right: 0 !important;\n }\n .pe-xxl-1 {\n padding-right: 0.25rem !important;\n }\n .pe-xxl-2 {\n padding-right: 0.5rem !important;\n }\n .pe-xxl-3 {\n padding-right: 1rem !important;\n }\n .pe-xxl-4 {\n padding-right: 1.5rem !important;\n }\n .pe-xxl-5 {\n padding-right: 3rem !important;\n }\n .pb-xxl-0 {\n padding-bottom: 0 !important;\n }\n .pb-xxl-1 {\n padding-bottom: 0.25rem !important;\n }\n .pb-xxl-2 {\n padding-bottom: 0.5rem !important;\n }\n .pb-xxl-3 {\n padding-bottom: 1rem !important;\n }\n .pb-xxl-4 {\n padding-bottom: 1.5rem !important;\n }\n .pb-xxl-5 {\n padding-bottom: 3rem !important;\n }\n .ps-xxl-0 {\n padding-left: 0 !important;\n }\n .ps-xxl-1 {\n padding-left: 0.25rem !important;\n }\n .ps-xxl-2 {\n padding-left: 0.5rem !important;\n }\n .ps-xxl-3 {\n padding-left: 1rem !important;\n }\n .ps-xxl-4 {\n padding-left: 1.5rem !important;\n }\n .ps-xxl-5 {\n padding-left: 3rem !important;\n }\n .gap-xxl-0 {\n gap: 0 !important;\n }\n .gap-xxl-1 {\n gap: 0.25rem !important;\n }\n .gap-xxl-2 {\n gap: 0.5rem !important;\n }\n .gap-xxl-3 {\n gap: 1rem !important;\n }\n .gap-xxl-4 {\n gap: 1.5rem !important;\n }\n .gap-xxl-5 {\n gap: 3rem !important;\n }\n .row-gap-xxl-0 {\n row-gap: 0 !important;\n }\n .row-gap-xxl-1 {\n row-gap: 0.25rem !important;\n }\n .row-gap-xxl-2 {\n row-gap: 0.5rem !important;\n }\n .row-gap-xxl-3 {\n row-gap: 1rem !important;\n }\n .row-gap-xxl-4 {\n row-gap: 1.5rem !important;\n }\n .row-gap-xxl-5 {\n row-gap: 3rem !important;\n }\n .column-gap-xxl-0 {\n -moz-column-gap: 0 !important;\n -webkit-column-gap: 0 !important;\n column-gap: 0 !important;\n }\n .column-gap-xxl-1 {\n -moz-column-gap: 0.25rem !important;\n -webkit-column-gap: 0.25rem !important;\n column-gap: 0.25rem !important;\n }\n .column-gap-xxl-2 {\n -moz-column-gap: 0.5rem !important;\n -webkit-column-gap: 0.5rem !important;\n column-gap: 0.5rem !important;\n }\n .column-gap-xxl-3 {\n -moz-column-gap: 1rem !important;\n -webkit-column-gap: 1rem !important;\n column-gap: 1rem !important;\n }\n .column-gap-xxl-4 {\n -moz-column-gap: 1.5rem !important;\n -webkit-column-gap: 1.5rem !important;\n column-gap: 1.5rem !important;\n }\n .column-gap-xxl-5 {\n -moz-column-gap: 3rem !important;\n -webkit-column-gap: 3rem !important;\n column-gap: 3rem !important;\n }\n .text-xxl-start {\n text-align: left !important;\n }\n .text-xxl-end {\n text-align: right !important;\n }\n .text-xxl-center {\n text-align: center !important;\n }\n}\n@media (min-width: 1200px) {\n .fs-1 {\n font-size: 2.5rem !important;\n }\n .fs-2 {\n font-size: 2rem !important;\n }\n .fs-3 {\n font-size: 1.75rem !important;\n }\n .fs-4 {\n font-size: 1.5rem !important;\n }\n}\n@media print {\n .d-print-inline {\n display: inline !important;\n }\n .d-print-inline-block {\n display: inline-block !important;\n }\n .d-print-block {\n display: block !important;\n }\n .d-print-grid {\n display: grid !important;\n }\n .d-print-inline-grid {\n display: inline-grid !important;\n }\n .d-print-table {\n display: table !important;\n }\n .d-print-table-row {\n display: table-row !important;\n }\n .d-print-table-cell {\n display: table-cell !important;\n }\n .d-print-flex {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-print-inline-flex {\n display: -webkit-inline-box !important;\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n .d-print-none {\n display: none !important;\n }\n}\n/*# sourceMappingURL=bootstrap.css.map */\n#app[data-v-001c9dd8] {\n font-family: Avenir, Helvetica, Arial, sans-serif;\n text-align: center;\n color: #2c3e50;\n margin-top: 60px;\n}\n.menu[data-v-001c9dd8] {\n margin-bottom: 20px;\n}\n.content[data-v-001c9dd8] {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-pack: distribute;\n justify-content: space-around;\n height: 90vh;\n}\n.editor-box[data-v-001c9dd8] {\n border: 5px solid #4b4a4a;\n padding: 20px;\n margin: 10px;\n width: 35%;\n border-radius: 10px;\n height: 80vh;\n /* overflow: hidden; */\n overflow: auto;\n}\n.svg-container[data-v-001c9dd8] {\n border: 5px solid #4b4a4a;\n padding: 20px;\n margin: 10px;\n width: 60%;\n border-radius: 10px;\n height: 80vh;\n overflow: hidden;\n position: relative;\n}\n.error[data-v-001c9dd8] {\n color: red;\n margin-top: 10px;\n}\n.my-select[data-v-001c9dd8] {\n padding: 10px;\n font-size: 16px;\n border-radius: 5px;\n border: 1px solid #ccc;\n margin-right: 20px;\n}\n.url-input[data-v-001c9dd8] {\n padding: 10px;\n font-size: 16px;\n border: 1px solid #ccc;\n width: 400px;\n overflow-x: auto;\n margin-left: 20px;\n}\npre[data-v-001c9dd8] {\n overflow-x: auto;\n overflow-y: auto;\n height: 100%;\n width: 100%;\n white-space: nowrap;\n}\n.svg-container input[data-v-001c9dd8] {\n position: absolute; /* input使用绝对定位 */\n top: 10px; /* 定位到顶部 */\n left: 140px; /* 定位到左侧 */\n}\n.svg-container label[data-v-001c9dd8] {\n font-weight: bold;\n position: absolute; /* input使用绝对定位 */\n top: 14px; /* 定位到顶部 */\n left: 20px; /* 定位到左侧 */\n}\nspan[data-v-001c9dd8] {\n text-align: left !important;\n}\n.tooltip[data-v-001c9dd8] {\n position: absolute;\n text-align: left;\n width: auto;\n height: auto;\n padding: 5px;\n font: 12px sans-serif;\n background: lightsteelblue;\n border: 0px;\n border-radius: 8px;\n pointer-events: none; /* 确保用户可以与下面的元素交互 */\n}\n\n.vjs-checkbox {\r\n position: absolute;\r\n left: -30px;\r\n color: #1f2d3d;\r\n -webkit-user-select: none;\r\n -moz-user-select: none;\r\n -ms-user-select: none;\r\n user-select: none\r\n}\r\n\r\n.vjs-checkbox.is-checked .vjs-checkbox__inner {\r\n background-color: #1890ff;\r\n border-color: #0076e4\r\n}\r\n\r\n.vjs-checkbox.is-checked .vjs-checkbox__inner:after {\r\n -webkit-transform: rotate(45deg) scaleY(1);\r\n transform: rotate(45deg) scaleY(1)\r\n}\r\n\r\n.vjs-checkbox .vjs-checkbox__inner {\r\n display: inline-block;\r\n position: relative;\r\n border: 1px solid #bfcbd9;\r\n -webkit-border-radius: 2px;\r\n border-radius: 2px;\r\n vertical-align: middle;\r\n -webkit-box-sizing: border-box;\r\n box-sizing: border-box;\r\n width: 16px;\r\n height: 16px;\r\n background-color: #fff;\r\n z-index: 1;\r\n cursor: pointer;\r\n -webkit-transition: border-color .25s cubic-bezier(.71, -.46, .29, 1.46), background-color .25s cubic-bezier(.71, -.46, .29, 1.46);\r\n -o-transition: border-color .25s cubic-bezier(.71, -.46, .29, 1.46), background-color .25s cubic-bezier(.71, -.46, .29, 1.46);\r\n transition: border-color .25s cubic-bezier(.71, -.46, .29, 1.46), background-color .25s cubic-bezier(.71, -.46, .29, 1.46)\r\n}\r\n\r\n.vjs-checkbox .vjs-checkbox__inner:after {\r\n -webkit-box-sizing: content-box;\r\n box-sizing: content-box;\r\n content: \"\";\r\n border: 2px solid #fff;\r\n border-left: 0;\r\n border-top: 0;\r\n height: 8px;\r\n left: 4px;\r\n position: absolute;\r\n top: 1px;\r\n -webkit-transform: rotate(45deg) scaleY(0);\r\n transform: rotate(45deg) scaleY(0);\r\n width: 4px;\r\n -webkit-transition: -webkit-transform .15s cubic-bezier(.71, -.46, .88, .6) .05s;\r\n transition: -webkit-transform .15s cubic-bezier(.71, -.46, .88, .6) .05s;\r\n -o-transition: transform .15s cubic-bezier(.71, -.46, .88, .6) .05s;\r\n transition: transform .15s cubic-bezier(.71, -.46, .88, .6) .05s;\r\n transition: transform .15s cubic-bezier(.71, -.46, .88, .6) .05s, -webkit-transform .15s cubic-bezier(.71, -.46, .88, .6) .05s;\r\n -webkit-transform-origin: center;\r\n transform-origin: center\r\n}\r\n\r\n.vjs-checkbox .vjs-checkbox__original {\r\n opacity: 0;\r\n outline: none;\r\n position: absolute;\r\n z-index: -1;\r\n top: 0;\r\n left: 0;\r\n right: 0;\r\n bottom: 0;\r\n margin: 0\r\n}\r\n\r\n.vjs-radio {\r\n position: absolute;\r\n left: -30px;\r\n color: #1f2d3d;\r\n -webkit-user-select: none;\r\n -moz-user-select: none;\r\n -ms-user-select: none;\r\n user-select: none\r\n}\r\n\r\n.vjs-radio.is-checked .vjs-radio__inner {\r\n background-color: #1890ff;\r\n border-color: #0076e4\r\n}\r\n\r\n.vjs-radio.is-checked .vjs-radio__inner:after {\r\n -webkit-transform: translate(-50%, -50%) scale(1);\r\n transform: translate(-50%, -50%) scale(1)\r\n}\r\n\r\n.vjs-radio .vjs-radio__inner {\r\n border: 1px solid #bfcbd9;\r\n -webkit-border-radius: 100%;\r\n border-radius: 100%;\r\n width: 16px;\r\n height: 16px;\r\n vertical-align: middle;\r\n background-color: #fff;\r\n position: relative;\r\n cursor: pointer;\r\n display: inline-block;\r\n -webkit-box-sizing: border-box;\r\n box-sizing: border-box\r\n}\r\n\r\n.vjs-radio .vjs-radio__inner:after {\r\n width: 4px;\r\n height: 4px;\r\n -webkit-border-radius: 100%;\r\n border-radius: 100%;\r\n background-color: #fff;\r\n content: \"\";\r\n position: absolute;\r\n left: 50%;\r\n top: 50%;\r\n -webkit-transform: translate(-50%, -50%) scale(0);\r\n transform: translate(-50%, -50%) scale(0);\r\n -webkit-transition: -webkit-transform .15s ease-in;\r\n transition: -webkit-transform .15s ease-in;\r\n -o-transition: transform .15s ease-in;\r\n transition: transform .15s ease-in;\r\n transition: transform .15s ease-in, -webkit-transform .15s ease-in\r\n}\r\n\r\n.vjs-radio .vjs-radio__original {\r\n opacity: 0;\r\n outline: none;\r\n position: absolute;\r\n z-index: -1;\r\n top: 0;\r\n left: 0;\r\n right: 0;\r\n bottom: 0;\r\n margin: 0\r\n}\r\n\r\n.vjs-tree {\r\n font-family: Monaco, Menlo, Consolas, Bitstream Vera Sans Mono, monospace;\r\n font-size: 14px;\r\n text-align: left;\r\n}\r\n\r\n.vjs-tree.is-root {\r\n position: relative\r\n}\r\n\r\n.vjs-tree.is-root.has-selectable-control {\r\n margin-left: 30px\r\n}\r\n\r\n.vjs-tree.is-mouseover {\r\n background-color: #e6f7ff\r\n}\r\n\r\n.vjs-tree.is-highlight-selected {\r\n background-color: #ccefff\r\n}\r\n\r\n.vjs-tree .vjs-tree__content {\r\n padding-left: 1em\r\n}\r\n\r\n.vjs-tree .vjs-tree__content.has-line {\r\n border-left: 1px dotted #bfcbd9\r\n}\r\n\r\n.vjs-tree .vjs-tree__brackets {\r\n cursor: pointer\r\n}\r\n\r\n.vjs-tree .vjs-tree__brackets:hover {\r\n color: #1890ff\r\n}\r\n\r\n.vjs-tree .vjs-comment {\r\n color: #bfcbd9\r\n}\r\n\r\n.vjs-tree .vjs-value__null {\r\n color: #ff4949\r\n}\r\n\r\n.vjs-tree .vjs-value__boolean,\r\n.vjs-tree .vjs-value__number {\r\n color: #1d8ce0\r\n}\r\n\r\n.vjs-tree .vjs-value__string {\r\n color: #13ce66\r\n}\r\n\r\n.vjs-tree .highlight-row {\r\n background: rgba(255, 0, 0, .08);\r\n border: 1px solid rgba(255, 0, 0, .36);\r\n padding: 2px;\r\n -webkit-border-radius: 2px;\r\n border-radius: 2px;\r\n -webkit-box-shadow: 1px 2px 5px -2px #ababab;\r\n box-shadow: 1px 2px 5px -2px #ababab\r\n}"]} \ No newline at end of file diff --git a/static/js/app.25edb8e331688e58ba08.js b/static/js/app.25edb8e331688e58ba08.js deleted file mode 100644 index de09f4f..0000000 --- a/static/js/app.25edb8e331688e58ba08.js +++ /dev/null @@ -1,2 +0,0 @@ -webpackJsonp([1],{Jmt5:function(t,e){},NHnr:function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});r("Jmt5");var a=r("7+uW"),i=r("fZjL"),n=r.n(i),o=r("Dd8w"),l=r.n(o),s=r("Xxa5"),h=r.n(s),d=r("exGp"),c=r.n(d),u=r("Cx91"),g=r("mtWM"),p=r("5i7/"),f=r.n(p),y=(r("iMEU"),r("BO1k")),m=r.n(y),v=r("Zrlr"),x=r.n(v),b=r("wxAW"),w=r.n(b),N=r("YVj4"),_=r("kvU2"),E=r.n(_);function k(t){var e=new N.graphlib.Graph({compound:!0});if(e.setGraph({}),e.setDefaultEdgeLabel(function(){return{}}),"bf"in t)for(var r=0;r0||e.setEdge(Xr,Lr)}if("pof"in t)for(var Br=0;Br0||e.setEdge(Gr,jr)}if("pic"in t)for(var Ur=0;Ur0||e.setEdge(qr,Hr)}if("poc"in t)for(var Vr=0;Vr0||e.setEdge(Wr,$r)}if("pil"in t)for(var Yr=0;Yr0||e.setEdge(Kr,Zr)}if("pol"in t)for(var Qr=0;Qr0||e.setEdge(ta,ea)}e.nodes().filter(function(t){return t.startsWith("bf")}),e.nodes().filter(function(t){return t.startsWith("bc")}),e.nodes().filter(function(t){return t.startsWith("bl")}),e.nodes().filter(function(t){return t.startsWith("opo")}),e.nodes().filter(function(t){return t.startsWith("opi")});e.setGraph({ranksep:30,rankdir:"BT"}),N.layout(e);var ra={nodes:{},edges:[]};if(e.nodes().forEach(function(t){var r=e.node(t);ra.nodes[t]={x:r.x,y:r.y,width:r.width,height:r.height,label:r.label,type:r.type,value:r.value,body:r.body,condition:r.condition,body_if:r.body_if,body_else:r.body_else,pre:r.pre,post:r.post,metadata:r.metadata}}),e.edges().forEach(function(t,e){ra.edges.push({id:e,source:t.v,target:t.w})}),"bf"in t)for(var aa=function(e){var r="bf-"+e;if("pif"in t&&"pof"in t){var a=t.pof.find(function(t){return t.box===e+1}),i=t.pif.find(function(t){return t.box===e+1});ra.nodes[r].fullBox=!(!a||!i)}else ra.nodes[r].fullBox=!1},ia=0;ia=R.length-1&&(r=R.length-2),r<1&&(r=1);var a=R[r-1],i=R[r+1],n=Math.abs((i.y-a.y)/(i.x-a.x)),o=6*Math.pow((t.x-l+2)/p,.38);return t.y-Math.sqrt(1+Math.pow(n,2))*o}).y1(function(t){var e=t.x,r=L(R,D.invert(e));r>=R.length-1&&(r=R.length-2),r<1&&(r=1);var a=R[r-1],i=R[r+1],n=Math.abs((i.y-a.y)/(i.x-a.x)),o=6*Math.pow((t.x-l+2)/p,.38);return t.y+Math.sqrt(1+Math.pow(n,2))*o}).curve(u.c),j=u.a().x(function(t){return t.x}).y0(function(t){var e=t.x,r=B(J,X.invert(e));r>=J.length-1&&(r=J.length-2),r<1&&(r=1);var a=J[r-1],i=J[r+1],n=Math.abs((i.y-a.y)/(i.x-a.x)),o=6*Math.pow((t.x-l+2)/y,.38);return t.y-Math.sqrt(1+Math.pow(n,2))*o}).y1(function(t){var e=t.x,r=B(J,X.invert(e));r>=J.length-1&&(r=J.length-2),r<1&&(r=1);var a=J[r-1],i=J[r+1],n=Math.abs((i.y-a.y)/(i.x-a.x)),o=6*Math.pow((t.x-l+2)/y,.38);return t.y+Math.sqrt(1+Math.pow(n,2))*o}).curve(u.c);"down"===o&&(G=u.a().y(function(t){return t.y}).x0(function(t){var e=t.y,r=L(R,D.invert(e));r>=R.length-1&&(r=R.length-2),r<1&&(r=1);var a=R[r-1],i=R[r+1],n=Math.abs((i.x-a.x)/(i.y-a.y)),o=6*Math.pow((t.y-s+2)/f,.38);return t.x-Math.sqrt(1+Math.pow(n,2))*o}).x1(function(t){var e=t.y,r=L(R,D.invert(e));r>=R.length-1&&(r=R.length-2),r<1&&(r=1);var a=R[r-1],i=R[r+1],n=Math.abs((i.x-a.x)/(i.y-a.y)),o=6*Math.pow((t.y-s+2)/f,.38);return t.x+Math.sqrt(1+Math.pow(n,2))*o}).curve(u.c),j=u.a().y(function(t){return t.y}).x0(function(t){var e=t.y,r=B(J,X.invert(e));r>=J.length-1&&(r=J.length-2),r<1&&(r=1);var a=J[r-1],i=J[r+1],n=Math.abs((i.x-a.x)/(i.y-a.y)),o=6*Math.pow((t.y-s+2)/m,.38);return t.x-Math.sqrt(1+Math.pow(n,2))*o}).x1(function(t){var e=t.y,r=B(J,X.invert(e));r>=J.length-1&&(r=J.length-2),r<1&&(r=1);var a=J[r-1],i=J[r+1],n=Math.abs((i.x-a.x)/(i.y-a.y)),o=6*Math.pow((t.y-s+2)/m,.38);return t.x+Math.sqrt(1+Math.pow(n,2))*o}).curve(u.c));N.append("path").datum(_).attr("d",G).attr("id","path1").attr("fill",n),N.append("path").datum(E).attr("d",j).attr("id","path2").attr("fill",n);u.g("#boxid"+a).selectAll("rect").each(function(a,o){var l=u.g(this);if(l.attr("id")!==t){var s=l.attr("data-body");if(void 0!==s&&null!==s&&s===i.split("-")[1]){l.attr("data-opened",!0);var h=Number(l.attr("x"))+Number(l.attr("width")),d=Number(l.attr("y"))+Number(l.attr("height"))/2,c=Number(u.g("#"+e).attr("x"))+r[0],g=Number(u.g("#"+e).attr("y"))+r[1]+Number(u.g("#"+e).attr("height"))/2;N.append("circle").attr("cx",c).attr("cy",g).attr("r",7).attr("fill",n),N.append("line").attr("x1",h).attr("y1",d).attr("x2",c).attr("y2",g).attr("stroke-width",3).attr("stroke",n).attr("stroke-dasharray","5,5").attr("marker-end","url(#arrow)").attr("class","arrowLine")}}})}function J(t,e,r,a,i,n,o,l){var s=Number(u.g("#boxid"+a).select("#"+t).attr("x"))+Number(u.g("#boxid"+a).select("#"+t).attr("width")),h=Number(u.g("#boxid"+a).select("#"+t).attr("y"))+Number(u.g("#boxid"+a).select("#"+t).attr("height"))/2,d=Number(u.g("#"+e).attr("x"))+r[0],c=Number(u.g("#"+e).attr("x"))+r[0],g=Number(u.g("#"+e).attr("y"))+r[1],p=Number(u.g("#"+e).attr("y"))+Number(u.g("#"+e).attr("height"))+r[1],f=d-s,y=g-h,m=c-s,v=p-h,x={},b={},w={},N={};x.x=s+.375*f,x.y=h+.3*y,b.x=s+.75*.8*f,b.y=h+.75*y,w.x=s+.375*m,w.y=h+.3*v,N.x=s+.75*.8*m,N.y=h+.75*v,"down"===l&&(s=Number(u.g("#boxid"+a).select("#"+t).attr("x"))+Number(u.g("#boxid"+a).select("#"+t).attr("width"))/2,h=Number(u.g("#boxid"+a).select("#"+t).attr("y"))+Number(u.g("#boxid"+a).select("#"+t).attr("height")),d=Number(u.g("#"+e).attr("x"))+r[0],c=Number(u.g("#"+e).attr("x"))+r[0]+Number(u.g("#"+e).attr("width")),g=Number(u.g("#"+e).attr("y"))+r[1],p=Number(u.g("#"+e).attr("y"))+r[1],y=g-h,m=c-s,v=p-h,b={},w={},N={},(x={}).x=s+.375*(f=d-s),x.y=h+.3*y,b.x=s+.75*.8*f,b.y=h+.75*y,w.x=s+.375*m,w.y=h+.3*v,N.x=s+.75*.8*m,N.y=h+.75*v);var _=u.g("#"+o);_.attr("sourceid",t).attr("targetid",e).attr("locationTransform",r).attr("body_num_source",a).attr("body_num_target",i).attr("color",n);var E=[{x:s,y:h},{x:x.x,y:x.y},{x:b.x,y:b.y},{x:d,y:g+17}],k=[{x:s,y:h},{x:w.x,y:w.y},{x:N.x,y:N.y},{x:c,y:p-17}];"down"===l&&(E=[{x:s,y:h},{x:x.x,y:x.y},{x:b.x,y:b.y},{x:d+17,y:g}],k=[{x:s,y:h},{x:w.x,y:w.y},{x:N.x,y:N.y},{x:c-17,y:p}]);var M=u.e().x(function(t){return t.x}).y(function(t){return t.y}).curve(u.c),z=M(E),S=document.createElementNS("http://www.w3.org/2000/svg","path");S.setAttribute("d",z);var C=M(k),T=document.createElementNS("http://www.w3.org/2000/svg","path");T.setAttribute("d",C);for(var A=S.getTotalLength(),R=T.getTotalLength(),P=[],O=0;O<500;O++){var J=S.getPointAtLength(O*A/499);P.push({x:J.x,y:J.y})}for(var F=[],I=0;I<500;I++){var D=T.getPointAtLength(I*R/499);F.push({x:D.x,y:D.y})}var L=u.f().domain(u.d(E,function(t){return t.x})).range([0,f]),X=u.b(function(t){return t.x}).left,B=u.f().domain(u.d(k,function(t){return t.x})).range([0,f]),G=u.b(function(t){return t.x}).left;"down"===l&&(L=u.f().domain(u.d(E,function(t){return t.y})).range([0,y]),X=u.b(function(t){return t.y}).left,B=u.f().domain(u.d(k,function(t){return t.y})).range([0,y]),G=u.b(function(t){return t.y}).left);var j=u.a().x(function(t){return t.x}).y0(function(t){var e=t.x,r=X(P,L.invert(e));r>=P.length-1&&(r=P.length-2),r<1&&(r=1);var a=P[r-1],i=P[r+1],n=Math.abs((i.y-a.y)/(i.x-a.x)),o=6*Math.pow((t.x-s+2)/f,.38);return t.y-Math.sqrt(1+Math.pow(n,2))*o}).y1(function(t){var e=t.x,r=X(P,L.invert(e));r>=P.length-1&&(r=P.length-2),r<1&&(r=1);var a=P[r-1],i=P[r+1],n=Math.abs((i.y-a.y)/(i.x-a.x)),o=6*Math.pow((t.x-s+2)/f,.38);return t.y+Math.sqrt(1+Math.pow(n,2))*o}).curve(u.c),U=u.a().x(function(t){return t.x}).y0(function(t){var e=t.x,r=G(F,B.invert(e));r>=F.length-1&&(r=F.length-2),r<1&&(r=1);var a=F[r-1],i=F[r+1],n=Math.abs((i.y-a.y)/(i.x-a.x)),o=6*Math.pow((t.x-s+2)/f,.38);return t.y-Math.sqrt(1+Math.pow(n,2))*o}).y1(function(t){var e=t.x,r=G(F,B.invert(e));r>=F.length-1&&(r=F.length-2),r<1&&(r=1);var a=F[r-1],i=F[r+1],n=Math.abs((i.y-a.y)/(i.x-a.x)),o=6*Math.pow((t.x-s+2)/f,.38);return t.y+Math.sqrt(1+Math.pow(n,2))*o}).curve(u.c);"down"===l&&(j=u.a().y(function(t){return t.y}).x0(function(t){var e=t.y,r=X(P,L.invert(e));r>=P.length-1&&(r=P.length-2),r<1&&(r=1);var a=P[r-1],i=P[r+1],n=Math.abs((i.x-a.x)/(i.y-a.y)),o=6*Math.pow((t.y-h+2)/y,.38);return t.x-Math.sqrt(1+Math.pow(n,2))*o}).x1(function(t){var e=t.y,r=X(P,L.invert(e));r>=P.length-1&&(r=P.length-2),r<1&&(r=1);var a=P[r-1],i=P[r+1],n=Math.abs((i.x-a.x)/(i.y-a.y)),o=6*Math.pow((t.y-h+2)/y,.38);return t.x+Math.sqrt(1+Math.pow(n,2))*o}).curve(u.c),U=u.a().y(function(t){return t.y}).x0(function(t){var e=t.y,r=G(F,B.invert(e));r>=F.length-1&&(r=F.length-2),r<1&&(r=1);var a=F[r-1],i=F[r+1],n=Math.abs((i.x-a.x)/(i.y-a.y)),o=6*Math.pow((t.y-h+2)/v,.38);return t.x-Math.sqrt(1+Math.pow(n,2))*o}).x1(function(t){var e=t.y,r=G(F,B.invert(e));r>=F.length-1&&(r=F.length-2),r<1&&(r=1);var a=F[r-1],i=F[r+1],n=Math.abs((i.x-a.x)/(i.y-a.y)),o=6*Math.pow((t.y-h+2)/v,.38);return t.x+Math.sqrt(1+Math.pow(n,2))*o}).curve(u.c));_.select("#path1").datum(E).transition("transition10").duration(720).attr("d",j).attr("fill",n),_.select("#path2").datum(k).transition("transition11").duration(720).attr("d",U).attr("fill",n);u.g("#boxid"+a).selectAll("rect").each(function(a,o){var l=u.g(this);if(l.attr("id")!==t){var s=l.attr("data-body");if(void 0!==s&&null!==s&&s===i.split("-")[1]){var h=Number(l.attr("x"))+Number(l.attr("width")),d=Number(l.attr("y"))+Number(l.attr("height"))/2,c=Number(u.g("#"+e).attr("x"))+r[0],g=Number(u.g("#"+e).attr("y"))+r[1]+Number(u.g("#"+e).attr("height"))/2;_.select("circle").transition("transition12").duration(720).attr("cx",c).attr("cy",g).attr("r",7).attr("fill",n),_.select("line").transition("transition13").duration(720).attr("x1",h).attr("y1",d).attr("x2",c).attr("y2",g).attr("stroke-width",3).attr("stroke",n).attr("stroke-dasharray","5,5").attr("marker-end","url(#arrow)").attr("class","arrowLine")}}})}function F(t,e,r,a,i,n){var o="frame"+e,l=t[r][0]-t[e][0]-Number(u.g("#"+o).attr("width")),s=t[r][1]-t[e][1],h=Number(u.g("#"+o).attr("x"))+Number(u.g("#"+o).attr("width")),d=Number(u.g("#"+o).attr("y"))+Number(u.g("#"+o).attr("height"))/2,c=h+l,g=d+s;"down"===n&&(h=Number(u.g("#"+o).attr("x"))+Number(u.g("#"+o).attr("width"))/2,d=Number(u.g("#"+o).attr("y"))+Number(u.g("#"+o).attr("height")),c=h+(l=t[r][0]-t[e][0]),g=d+(s=t[r][1]-t[e][1]-Number(u.g("#"+o).attr("height"))));var p=u.g("svg").select("#sumGroup").append("g").attr("id","line"+String(e)+"_"+String(r)).attr("line-type","dashed").attr("class","drawer");p.append("defs").append("marker").attr("id","arrow").attr("markerWidth",5).attr("markerHeight",3.5).attr("refX",5).attr("refY",1.75).attr("orient","auto").append("path").attr("d","M0,0 L5,1.75 L0,3.5 Z").style("fill","gray"),p.append("line").attr("x1",h).attr("y1",d).attr("x2",c).attr("y2",g).attr("stroke-width",5).attr("stroke",a).attr("stroke-dasharray","5,5").attr("marker-end","url(#arrow)").attr("class","arrowLine");var f=(h+c)/2-45,y=(d+g)/2-5;p.append("text").attr("x",f).attr("y",y).text(i).style("font-size","30px").style("fill","black")}function I(t,e,r,a,i,n,o){var l="frame"+e,s=t[r][0]-t[e][0]-Number(u.g("#"+l).attr("width")),h=t[r][1]-t[e][1],d=Number(u.g("#"+l).attr("x"))+Number(u.g("#"+l).attr("width")),c=Number(u.g("#"+l).attr("y"))+Number(u.g("#"+l).attr("height"))/2,g=d+s,p=c+h;"down"===o&&(d=Number(u.g("#"+l).attr("x"))+Number(u.g("#"+l).attr("width"))/2,c=Number(u.g("#"+l).attr("y"))+Number(u.g("#"+l).attr("height")),g=d+(s=t[r][0]-t[e][0]),p=c+(h=t[r][1]-t[e][1]-Number(u.g("#"+l).attr("height"))));var f=u.g("svg").select("#sumGroup").select("#"+n);f.select("line").transition("transition14").duration(720).attr("x1",d).attr("y1",c).attr("x2",g).attr("y2",p).attr("stroke-width",5).attr("stroke",a).attr("stroke-dasharray","5,5").attr("marker-end","url(#arrow)").attr("class","arrowLine");var y=(d+g)/2-45,m=(c+p)/2-5;f.select("text").transition("transition15").duration(720).attr("x",y).attr("y",m).text(i).style("font-size","30px").style("fill","black")}function D(t,e){if(t.length!==e.length)return!1;for(var r=0;ra[i])return 1}return 0})):r.children=[e])})})}function B(t){var e={},r=[];u.h(".drawer").each(function(a,i){var n=u.g(this).attr("id").replace("boxid",""),o=u.g(this).attr("direction");if(2!==n.split("_").length){var l=n.split("-"),s=l[l.length-1];if("0"===s)e.name=Number(s),e.oName=n,e.path=l,e.size=[Number(u.g(this).attr("width"))+t,Number(u.g(this).attr("height"))],e.direction=o;else{var h={};h.name=Number(s),h.size=[Number(u.g(this).attr("width"))+t,Number(u.g(this).attr("height"))],h.path=l,h.oName=n,h.direction=o,r.push(h)}}});return r.sort(function(t,e){return t.path.length-e.path.length}),X(e,r),L(e,function(t){Array.isArray(t.size)&&(t._size||(t._size=t.size.slice()),t.size=t._size.slice().reverse())}),e}var G=r("Zx67"),j=r.n(G),U=r("zwoO"),H=r.n(U),q=r("Pf15"),V=r.n(q),W=r("woOf"),$=r.n(W),Y=r("u2KI"),Z=r.n(Y),K=r("0PjT"),Q=Z()({children:function(t){return t.children},nodeSize:function(t){return t.data.size},spacing:0});function tt(t){var e=$()({},Q,t);function r(t){var r=e[t];return"function"==typeof r?r:function(){return r}}function a(t){var e,a,o,l=n((e=i(),a=r("nodeSize"),o=r("spacing"),function(t){function e(t){x()(this,e);var r=H()(this,(e.__proto__||j()(e)).call(this,t));return $()(r,{x:0,y:0,relX:0,prelim:0,shift:0,change:0,lExt:r,lExtRelX:0,lThr:null,rExt:r,rExtRelX:0,rThr:null}),r}return V()(e,t),w()(e,[{key:"spacing",value:function(t){return o(this.data,t.data)}},{key:"update",value:function(){return et(this),rt(this),this}},{key:"size",get:function(){return a(this.data)}},{key:"x",get:function(){return this.data.x},set:function(t){this.data.x=t}},{key:"y",get:function(){return this.data.y},set:function(t){this.data.y=t}}]),e}(e)),t,function(t){return t.children});return l.update(),l.data}function i(){var t=r("nodeSize"),e=r("spacing");return function(r){function a(t){return x()(this,a),H()(this,(a.__proto__||j()(a)).call(this,t))}return V()(a,r),w()(a,[{key:"copy",value:function(){var t=n(this.constructor,this,function(t){return t.children});return t.each(function(t){return t.data=t.data.data}),t}},{key:"spacing",value:function(t){return e(this,t)}},{key:"size",get:function(){return t(this)}},{key:"nodes",get:function(){return this.descendants()}},{key:"xSize",get:function(){return this.size[0]}},{key:"ySize",get:function(){return this.size[1]}},{key:"top",get:function(){return this.y}},{key:"bottom",get:function(){return this.y+this.ySize}},{key:"left",get:function(){return this.x-this.xSize/2}},{key:"right",get:function(){return this.x+this.xSize/2}},{key:"root",get:function(){var t=this.ancestors();return t[t.length-1]}},{key:"numChildren",get:function(){return this.hasChildren?this.children.length:0}},{key:"hasChildren",get:function(){return!this.noChildren}},{key:"noChildren",get:function(){return null===this.children}},{key:"firstChild",get:function(){return this.hasChildren?this.children[0]:null}},{key:"lastChild",get:function(){return this.hasChildren?this.children[this.numChildren-1]:null}},{key:"extents",get:function(){return(this.children||[]).reduce(function(t,e){return a.maxExtents(t,e.extents)},this.nodeExtents)}},{key:"nodeExtents",get:function(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}}}],[{key:"maxExtents",value:function(t,e){return{top:Math.min(t.top,e.top),bottom:Math.max(t.bottom,e.bottom),left:Math.min(t.left,e.left),right:Math.max(t.right,e.right)}}}]),a}(K.a.prototype.constructor)}function n(t,e,r){return function e(a,i){var n=new t(a);$()(n,{parent:i,depth:null===i?0:i.depth+1,height:0,length:1});var o=r(a)||[];return n.children=0===o.length?null:o.map(function(t){return e(t,n)}),n.children&&$()(n,n.children.reduce(function(t,e){return{height:Math.max(t.height,e.height+1),length:t.length+e.length}},n)),n}(e,null)}return $()(a,{nodeSize:function(t){return arguments.length?(e.nodeSize=t,a):e.nodeSize},spacing:function(t){return arguments.length?(e.spacing=t,a):e.spacing},children:function(t){return arguments.length?(e.children=t,a):e.children},hierarchy:function(t,r){var a=void 0===r?e.children:r;return n(i(),t,a)},dump:function(t){var e=r("nodeSize");return function t(r){return function(a){var i=r+" ",n=r+" ",o=a.x,l=a.y,s=e(a),h=a.children||[],d=0===h.length?" ":","+i+"children: ["+n+h.map(t(n)).join(n)+i+"],"+r;return"{ size: ["+s.join(", ")+"],"+i+"x: "+o+", y: "+l+d+"},"}}("\n")(t)}}),a}var et=function t(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return e.y=r,(e.children||[]).reduce(function(r,a){var i=C()(r,2),n=i[0],o=i[1];t(a,e.y+e.ySize);var l=(0===n?a.lExt:a.rExt).bottom;return 0!==n&&it(e,n,o),[n+1,ut(l,n,o)]},[0,null]),at(e),ct(e),e},rt=function t(e,r,a){void 0===r&&(r=-e.relX-e.prelim,a=0);var i=r+e.relX;return e.relX=i+e.prelim-a,e.prelim=0,e.x=a+e.relX,(e.children||[]).forEach(function(r){return t(r,i,e.x)}),e},at=function(t){(t.children||[]).reduce(function(t,e){var r=C()(t,2),a=r[0],i=r[1],n=a+e.shift,o=i+n+e.change;return e.relX+=o,[n,o]},[0,0])},it=function(t,e,r){for(var a=t.children[e-1],i=t.children[e],n=a,o=a.relX,l=i,s=i.relX,h=!0;n&&l;){n.bottom>r.lowY&&(r=r.next);var d=o+n.prelim-(s+l.prelim)+n.xSize/2+l.xSize/2+n.spacing(l);(d>0||d<0&&h)&&(s+=d,nt(i,d),ot(t,e,r.index,d)),h=!1;var c=n.bottom,u=l.bottom;c<=u&&(n=st(n))&&(o+=n.relX),c>=u&&(l=lt(l))&&(s+=l.relX)}!n&&l?ht(t,e,l,s):n&&!l&&dt(t,e,n,o)},nt=function(t,e){t.relX+=e,t.lExtRelX+=e,t.rExtRelX+=e},ot=function(t,e,r,a){var i=t.children[e],n=e-r;if(n>1){var o=a/n;t.children[r+1].shift+=o,i.shift-=o,i.change-=a-o}},lt=function(t){return t.hasChildren?t.firstChild:t.lThr},st=function(t){return t.hasChildren?t.lastChild:t.rThr},ht=function(t,e,r,a){var i=t.firstChild,n=i.lExt,o=t.children[e];n.lThr=r;var l=a-r.relX-i.lExtRelX;n.relX+=l,n.prelim-=l,i.lExt=o.lExt,i.lExtRelX=o.lExtRelX},dt=function(t,e,r,a){var i=t.children[e],n=i.rExt,o=t.children[e-1];n.rThr=r;var l=a-r.relX-i.rExtRelX;n.relX+=l,n.prelim-=l,i.rExt=o.rExt,i.rExtRelX=o.rExtRelX},ct=function(t){if(t.hasChildren){var e=t.firstChild,r=t.lastChild,a=(e.prelim+e.relX-e.xSize/2+r.relX+r.prelim+r.xSize/2)/2;$()(t,{prelim:a,lExt:e.lExt,lExtRelX:e.lExtRelX,rExt:r.rExt,rExtRelX:r.rExtRelX})}},ut=function(t,e,r){for(;null!==r&&t>=r.lowY;)r=r.next;return{lowY:t,index:e,next:r}},gt=r("c/Tr"),pt=r.n(gt),ft=r("lHA8"),yt=r.n(ft);function mt(t){return function(t){var e={};do{var r=vt(t),a=[].concat(P()(r.right),P()(r.down),P()(r.mix)),i=a.reduce(function(t,e){return l()({},t,e)},{});if(_(e)){var n=k(e,i),o=!0,s=!1,h=void 0;try{for(var d,c=m()(n);!(o=(d=c.next()).done);o=!0){var u=d.value,g=i[u],p={};for(var f in e){var y=e[f];f.startsWith(u)&&(p[f]=y)}var v=xt(p),x=g[0]-v.x,b=g[1]-v.y;for(var w in e){var N=e[w];w.startsWith(u)&&(N[0]+=x,N[1]+=b)}}}catch(t){s=!0,h=t}finally{try{!o&&c.return&&c.return()}finally{if(s)throw h}}M(e,i)}else e=E()(i)}while("children"in t);return e;function _(t){for(var e in t)return!0;return!1}function k(t,e){var r=[];for(var a in t)t.hasOwnProperty(a)&&e.hasOwnProperty(a)&&r.push(a);return r}function M(t,e){for(var r in e)e.hasOwnProperty(r)&&!t.hasOwnProperty(r)&&(t[r]=e[r])}}(E()(t))}function vt(t){var e=new yt.a,r=new yt.a;!function t(e,r){e.parent=r;e.children&&e.children.forEach(function(r){return t(r,e)})}(t,null),function t(e,r,a){var i=!0;!function t(r){r.direction!==e.direction&&(i=!1);r.children&&r.children.forEach(t)}(e);if(i)return"right"===e.direction?null!==e.parent?r.add(e.parent):r.add(e):"down"===e.direction&&(e.parent,a.add(e.parent)),!0;e.children&&e.children.forEach(function(e){return t(e,r,a)});return!1}(t,e,r);var a=new yt.a,i=!0,n=!1,o=void 0;try{for(var s,h=m()(e);!(i=(s=h.next()).done);i=!0){var d=s.value;r.has(d)&&(a.add(d),e.delete(d),r.delete(d))}}catch(t){n=!0,o=t}finally{try{!i&&h.return&&h.return()}finally{if(n)throw o}}return{right:pt()(e).map(function(t){var e=E()(t);if(delete t.children,u(e),"down"===t.direction){var r=e.size[0];e.size[0]=e.size[1],e.size[1]=r}L(e,function(t){Array.isArray(t.size)&&(t.size[1]+=100)});var a=tt({spacing:80}),i=a(a.hierarchy(e));i.each(function(t){var e=t.x;t.x=t.y,t.y=e});var n={};i.each(function(t){n[t.data.oName]=[t.x,t.y-t.data.size[0]/2,t.data.size[1],1*t.data.size[0]]});var o=xt(n);return t._size=[o.width,o.height],t.size=[o.height,o.width],n}),down:pt()(r).map(function(t){var e=E()(t);if(delete t.children,c(e),L(e,function(t){Array.isArray(t.size)&&(t._size||(t._size=t.size.slice()),t.size=[t.size[1],t.size[0]])}),L(e,function(t){Array.isArray(t.size)&&(t.size[1]+=100)}),"down"===t.direction){var r=e.size[0];e.size[0]=e.size[1],e.size[1]=r}var a=tt({spacing:120}),i={};a(a.hierarchy(e)).each(function(t){i[t.data.oName]=[t.x-t.data.size[0]/2,t.y,1*t.data.size[0],t.data.size[1]]});var n=xt(i);return t._size=[n.width,n.height],t.size=[n.height,n.width],i}),mix:pt()(a).map(function(t){var e=E()(t);delete t.children;var r=E()(e);L(r,function(t){Array.isArray(t.size)&&(t._size||(t._size=t.size.slice()),t.size=[t.size[1],t.size[0]])}),L(r,function(t){Array.isArray(t.size)&&(t.size[1]+=100)}),L(e,function(t){Array.isArray(t.size)&&(t.size[1]+=100)}),c(r),u(e);var a=tt({spacing:120}),i=tt({spacing:80}),n=a.hierarchy(r),o=i.hierarchy(e);if("down"===t.direction){var s=e.size[0];e.size[0]=e.size[1],e.size[1]=s;var h=r.size[0];r.size[0]=r.size[1],r.size[1]=h}var d=a(n),g=a(o);g.each(function(t){var e=t.x;t.x=t.y,t.y=e});var p={};d.each(function(t){p[t.data.oName]=[t.x-t.data.size[0]/2,t.y,t.data.size[0],1*t.data.size[1]]});var f={};g.each(function(t){f[t.data.oName]=[t.x,t.y-t.data.size[0]/2,t.data.size[1],1*t.data.size[0]]});var y=f[t.oName][0]-p[t.oName][0],m=f[t.oName][1]-p[t.oName][1];for(var v in p)p[v][0]+=y,p[v][1]+=m;var x=l()({},f,p),b=xt(x);return t._size=[b.width,b.height],t.size=[b.height,b.width],x})};function c(t){t.children&&(t.children=t.children.filter(function(t){return"right"!==t.direction}),t.children.forEach(c))}function u(t){t.children&&(t.children=t.children.filter(function(t){return"down"!==t.direction}),t.children.forEach(u))}}function xt(t){var e=1/0,r=1/0,a=-1/0,i=-1/0;for(var n in t){var o=t[n],l=o[0],s=o[1],h=l,d=s,c=l+o[2],u=s+o[3];e=Math.min(e,h),r=Math.min(r,d),a=Math.max(a,c),i=Math.max(i,u)}return{x:e,y:r,width:a-e,height:i-r}}function bt(t,e,r,a,i,o,l){console.log(l,"direction");var s=u.g("#boxid"+String(r)).select("#"+String(a));if(o||"true"===s.attr("data-opened"))return u.g("#boxid"+String(r)).selectAll("[data-opened='true']").attr("data-opened","false"),void u.h(".drawer").each(function(t,a){var i=this,n=u.g(this).attr("id").replace("line","").replace("boxid",""),o=(String(r)+"-"+String(e)).split("-");if(2===n.split("_").length){var l=!1,s=n.split("_")[0],h=n.split("_")[1],d=s.split("-"),c=h.split("-");if(D(d,o))u.g(this).transition("transition1").duration(200).style("opacity",0).end().then(function(){u.g(i).remove()}),l=!0;else if(d.length>o.length){var g=d.slice(0,o.length);z()(g)===z()(o)&&(u.g(this).transition("transition2").duration(200).style("opacity",0).end().then(function(){u.g(i).remove()}),l=!0)}if(!l)if(D(c,o))u.g(this).transition("transition3").duration(200).style("opacity",0).end().then(function(){u.g(i).remove()});else if(c.length>o.length){var p=c.slice(0,o.length);z()(p)===z()(o)&&u.g(this).transition("transition4").duration(200).style("opacity",0).end().then(function(){u.g(i).remove()})}}else{var f=n.split("-");if(D(f,o))u.g(this).transition("transition5").duration(200).style("opacity",0).end().then(function(){u.g(i).remove()});else if(f.length>o.length){var y=f.slice(0,o.length);z()(y)===z()(o)&&u.g(this).transition("transition6").duration(200).style("opacity",0).end().then(function(){u.g(i).remove()})}}});r=String(r);var h=k(t[e-1]),d=String(r)+"-"+String(e);kt(h,t,d,l);var c,g=B(0);c=mt(g);n()(c);var p=c[d][0]-c[r][0],f=c[d][1]-c[r][1];O(a,"frame"+d,[p,f],r,d,i,l),u.h(".drawer").each(function(t,e){var r=u.g(this).attr("id").replace("boxid","");2!==r.split("_").length&&(r===d?(u.g(this).attr("transform","translate("+(c[r][0]+90)+","+(c[r][1]+675)+")").attr("opacity",0),u.g(this).transition("transition7").duration(920).style("opacity",1)):u.g(this).transition("transition8").duration(720).attr("transform","translate("+(c[r][0]+90)+","+(c[r][1]+675)+")"))}),u.h(".drawer").each(function(t,e){var r=u.g(this).attr("id").replace("boxid","");if(2===r.split("_").length)if("dashed"!==u.g(this).attr("line-type")){var a=r,i=r.replace("line","").split("_")[0],n=r.replace("line","").split("_")[1],o=u.g("#boxid"+i).attr("transform"),l=u.g("#boxid"+n).attr("transform");if(null!==o&&i!=d){var s,h=o.slice(10,-1).split(",").map(Number);s=[c[i][0]+90,c[i][1]+675];var g=[c[n][0]-c[i][0],c[n][1]-c[i][1]];if(h[1]!==s[1]||h[0]!==s[0]){var p=u.g(this).attr("sourceid"),f=u.g(this).attr("targetid"),y=u.g(this).attr("body_num_source"),m=u.g(this).attr("body_num_target");J(p,f,g,y,m,u.g(this).attr("color"),a,u.g("#boxid"+m).attr("direction"))}}if(null!==l&&n!=d){var v,x=l.slice(10,-1).split(",").map(Number),b=[c[n][0]-c[i][0],c[n][1]-c[i][1]];if(v=[c[n][0]+90,c[n][1]+675],x[1]!==v[1]||x[0]!==v[0]){var w=u.g(this).attr("sourceid"),N=u.g(this).attr("targetid"),_=u.g(this).attr("body_num_source"),E=u.g(this).attr("body_num_target");J(w,N,b,_,E,u.g(this).attr("color"),a,u.g("#boxid"+E).attr("direction"))}}r=(r=r.replace("line","")).split("_")[0],u.g(this).attr("transform","translate("+(c[r][0]+90)+","+(c[r][1]+675)+")").style("opacity",.38)}else{var k=r,M=r.replace("line","").split("_")[0],z=r.replace("line","").split("_")[1],S=u.g("#boxid"+M).attr("transform"),C=u.g("#boxid"+z).attr("transform");if(null!==S&&M!=d){var T,A=S.slice(10,-1).split(",").map(Number);if(T=[c[M][0]+90,c[M][1]+675],A[1]!==T[1]||A[0]!==T[0]){var R=u.g(this).select("text").text();I(c,M,z,"black",R,k)}}if(null!==C&&z!=d){var P,O=C.slice(10,-1).split(",").map(Number);if(P=[c[z][0]+90,c[z][1]+675],O[1]!==P[1]||O[0]!==P[0]){var F=u.g(this).select("text").text();I(c,M,z,"black",F,k)}}r=(r=r.replace("line","")).split("_")[0],u.g(this).transition("transition9").duration(720).attr("transform","translate("+(c[r][0]+90)+","+(c[r][1]+675)+")")}})}r("izJC");function wt(t,e,r,a,i,o,l,s,h){var d=u.g("#boxid"+String(i)).select("#"+String(o));if(s||"true"===d.attr("data-opened"))return u.g("#boxid"+String(i)).selectAll("[data-opened='true']").attr("data-opened","false"),void u.h(".drawer").each(function(t,r){var a=this,n=u.g(this).attr("id").replace("line","").replace("boxid",""),o=(String(i)+"-"+String(e)).split("-");if(2===n.split("_").length){var l=!1,s=n.split("_")[0],h=n.split("_")[1],d=s.split("-"),c=h.split("-");if(D(d,o))u.g(this).transition().duration(200).style("opacity",0).end().then(function(){u.g(a).remove()}),l=!0;else if(d.length>o.length){var g=d.slice(0,o.length);z()(g)===z()(o)&&(u.g(this).transition().duration(200).style("opacity",0).end().then(function(){u.g(a).remove()}),l=!0)}if(!l)if(D(c,o))u.g(this).transition().duration(200).style("opacity",0).end().then(function(){u.g(a).remove()});else if(c.length>o.length){var p=c.slice(0,o.length);z()(p)===z()(o)&&u.g(this).transition().duration(200).style("opacity",0).end().then(function(){u.g(a).remove()})}}else{var f=n.split("-");if(D(f,o))u.g(this).transition().duration(200).style("opacity",0).end().then(function(){u.g(a).remove()});else if(f.length>o.length){var y=f.slice(0,o.length);z()(y)===z()(o)&&u.g(this).transition().duration(200).style("opacity",0).end().then(function(){u.g(a).remove()})}}});i=String(i);var c=void 0,g=k(t[e-1]),p=k(t[r-1]);void 0!==a&&(c=k(t[a-1]));var f=String(i)+"-"+String(e),y=String(f)+"-"+String(r),m=String(f)+"-"+String(a);kt(g,t,f,h),kt(p,t,y,h),void 0!==a&&kt(c,t,m,h);var v,x=B(0);v=mt(x);n()(v);console.log(v),console.log();var b=v[f][0]-v[i][0],w=v[f][1]-v[i][1];O(o,"frame"+f,[b,w],i,f,l,h),F(v,f,y,"black","TRUE",h),void 0!==c&&F(v,f,m,"black","FALSE",h),u.h(".drawer").each(function(t,e){var r=u.g(this).attr("id").replace("boxid","");if(2===r.split("_").length)if("dashed"!==u.g(this).attr("line-type")){var a=r,i=r.replace("line","").split("_")[0],n=r.replace("line","").split("_")[1],o=u.g("#boxid"+i).attr("transform"),l=u.g("#boxid"+n).attr("transform");if(null!==o&&i!=f){var s,h=o.slice(10,-1).split(",").map(Number);s=[v[i][0]+90,v[i][1]+675];var d=[v[n][0]-v[i][0],v[n][1]-v[i][1]];if(h[1]!==s[1]||h[0]!==s[0]){var c=u.g(this).attr("sourceid"),g=u.g(this).attr("targetid"),p=(u.g(this).attr("locationTransform").split(","),u.g(this).attr("body_num_source")),x=u.g(this).attr("body_num_target");J(c,g,d,p,x,u.g(this).attr("color"),a,u.g("#boxid"+x).attr("direction"))}}if(null!==l&&n!=f){var b,w=l.slice(10,-1).split(",").map(Number);b=[v[n][0]+90,v[n][1]+675];var N=[v[n][0]-v[i][0],v[n][1]-v[i][1]];if(w[1]!==b[1]||w[0]!==b[0]){var _=u.g(this).attr("sourceid"),E=u.g(this).attr("targetid"),k=(u.g(this).attr("locationTransform").split(","),u.g(this).attr("body_num_source")),M=u.g(this).attr("body_num_target");J(_,E,N,k,M,u.g(this).attr("color"),a,u.g("#boxid"+M).attr("direction"))}}r=(r=r.replace("line","")).split("_")[0],u.g(this).attr("transform","translate("+(v[r][0]+90)+","+(v[r][1]+675)+")").style("opacity",.38)}else{var z=r,S=r.replace("line","").split("_")[0],C=r.replace("line","").split("_")[1],T=u.g("#boxid"+S).attr("transform"),A=u.g("#boxid"+C).attr("transform");if(null!==T&&S!=f){var R,P=T.slice(10,-1).split(",").map(Number);if(R=[v[S][0]+90,v[S][1]+675],P[1]!==R[1]||P[0]!==R[0]){var O=u.g(this).select("text").text(),F=u.g("#boxid"+C).attr("direction");I(v,S,C,"black",O,z,F)}}if(null!==A&&C!=f){var D,L=A.slice(10,-1).split(",").map(Number);if(D=[v[C][0]+90,v[C][1]+675],L[1]!==D[1]||L[0]!==D[0]){var X=u.g(this).select("text").text(),B=u.g("#boxid"+C).attr("direction");I(v,S,C,"black",X,z,B)}}r=(r=r.replace("line","")).split("_")[0],u.g(this).attr("transform","translate("+(v[r][0]+90)+","+(v[r][1]+675)+")")}else r===f||r===m||r===y?(u.g(this).attr("transform","translate("+(v[r][0]+90)+","+(v[r][1]+675)+")").attr("opacity",0),u.g(this).transition().duration(920).style("opacity",1)):u.g(this).transition().duration(720).attr("transform","translate("+(v[r][0]+90)+","+(v[r][1]+675)+")")})}function Nt(t,e,r,a,i,o,l,s,h,d){var c=u.g("#boxid"+String(o)).select("#"+String(l));if(h||"true"===c.attr("data-opened"))return u.g("#boxid"+String(o)).selectAll("[data-opened='true']").attr("data-opened","false"),void u.h(".drawer").each(function(t,r){var a=this,i=u.g(this).attr("id").replace("line","").replace("boxid",""),n=(String(o)+"-"+String(e)).split("-");if(2===i.split("_").length){var l=!1,s=i.split("_")[0],h=i.split("_")[1],d=s.split("-"),c=h.split("-");if(D(d,n))u.g(this).transition().duration(200).style("opacity",0).end().then(function(){u.g(a).remove()}),l=!0;else if(d.length>n.length){var g=d.slice(0,n.length);z()(g)===z()(n)&&(u.g(this).transition().duration(200).style("opacity",0).end().then(function(){u.g(a).remove()}),l=!0)}if(!l)if(D(c,n))u.g(this).transition().duration(200).style("opacity",0).end().then(function(){u.g(a).remove()});else if(c.length>n.length){var p=c.slice(0,n.length);z()(p)===z()(n)&&u.g(this).transition().duration(200).style("opacity",0).end().then(function(){u.g(a).remove()})}}else{var f=i.split("-");if(D(f,n))u.g(this).transition().duration(200).style("opacity",0).end().then(function(){u.g(a).remove()});else if(f.length>n.length){var y=f.slice(0,n.length);z()(y)===z()(n)&&u.g(this).transition().duration(200).style("opacity",0).end().then(function(){u.g(a).remove()})}}});o=String(o);var g=String(o)+"-"+String(e),p=String(g)+"-"+String(r),f=String(g)+"-"+String(a),y=String(g)+"-"+String(i);void 0!==e&&kt(k(t[e-1]),t,g,d),void 0!==r&&kt(k(t[r-1]),t,p,d),void 0!==a&&kt(k(t[a-1]),t,f,d),void 0!==i&&kt(k(t[i-1]),t,y,d);var m,v=B(100);m=mt(v);n()(m);console.log(m),console.log();var x=m[g][0]-m[o][0],b=m[g][1]-m[o][1];O(l,"frame"+g,[x,b],o,g,s,d),void 0!==r&&F(m,g,p,"black","PRE",d),void 0!==a&&F(m,g,f,"black","WHILE TRUE",d),void 0!==i&&F(m,g,y,"black","POST",d),u.h(".drawer").each(function(t,e){var r=u.g(this).attr("id").replace("boxid","");if(2===r.split("_").length)if("dashed"!==u.g(this).attr("line-type")){var a=r,i=r.replace("line","").split("_")[0],n=r.replace("line","").split("_")[1],o=u.g("#boxid"+i).attr("transform"),l=u.g("#boxid"+n).attr("transform");if(null!==o&&i!=g){var s,h=o.slice(10,-1).split(",").map(Number);s=[m[i][0]+90,m[i][1]+675];var d=[m[n][0]-m[i][0],m[n][1]-m[i][1]];if(h[1]!==s[1]||h[0]!==s[0]){var c=u.g(this).attr("sourceid"),v=u.g(this).attr("targetid"),x=(u.g(this).attr("locationTransform").split(","),u.g(this).attr("body_num_source")),b=u.g(this).attr("body_num_target");J(c,v,d,x,b,u.g(this).attr("color"),a,u.g("#boxid"+b).attr("direction"))}}if(null!==l&&n!=g){var w,N=l.slice(10,-1).split(",").map(Number);w=[m[n][0]+90,m[n][1]+675];var _=[m[n][0]-m[i][0],m[n][1]-m[i][1]];if(N[1]!==w[1]||N[0]!==w[0]){var E=u.g(this).attr("sourceid"),k=u.g(this).attr("targetid"),M=(u.g(this).attr("locationTransform").split(","),u.g(this).attr("body_num_source")),z=u.g(this).attr("body_num_target");J(E,k,_,M,z,u.g(this).attr("color"),a,u.g("#boxid"+z).attr("direction"))}}r=(r=r.replace("line","")).split("_")[0],u.g(this).attr("transform","translate("+(m[r][0]+90)+","+(m[r][1]+675)+")").style("opacity",.38)}else{var S=r,C=r.replace("line","").split("_")[0],T=r.replace("line","").split("_")[1],A=u.g("#boxid"+C).attr("transform"),R=u.g("#boxid"+T).attr("transform");if(null!==A&&C!=g){var P,O=A.slice(10,-1).split(",").map(Number);if(P=[m[C][0]+90,m[C][1]+675],O[1]!==P[1]||O[0]!==P[0]){var F=u.g(this).select("text").text(),D=u.g("#boxid"+T).attr("direction");I(m,C,T,"black",F,S,D)}}if(null!==R&&T!=g){var L,X=R.slice(10,-1).split(",").map(Number);if(L=[m[T][0]+90,m[T][1]+675],X[1]!==L[1]||X[0]!==L[0]){var B=u.g(this).select("text").text(),G=u.g("#boxid"+T).attr("direction");I(m,C,T,"black",B,S,G)}}r=(r=r.replace("line","")).split("_")[0],u.g(this).attr("transform","translate("+(m[r][0]+90)+","+(m[r][1]+675)+")")}else r===g||r===p||r===f||r===y?(u.g(this).attr("transform","translate("+(m[r][0]+90)+","+(m[r][1]+675)+")").attr("opacity",0),u.g(this).transition().duration(920).style("opacity",1)):u.g(this).transition().duration(720).attr("transform","translate("+(m[r][0]+90)+","+(m[r][1]+675)+")")})}var _t=null;function Et(){return _t}function kt(t,e,r){var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"right",i=u.g("#mainsvg").select("#sumGroup").append("g").attr("id","boxid"+String(r)).attr("class","drawer").attr("direction",a),n=t.nodes;console.log(t);var o=!1,l=!1,s=Math.min.apply(Math,P()(A()(t.nodes).map(function(t){return t.y}))),h=Math.max.apply(Math,P()(A()(t.nodes).map(function(t){return t.y})));for(var d in n){var c=n[d],g=d.split("-"),p=C()(g,2),f=p[0],y=(p[1],"opo"===f);"opi"===f&&c.y===s&&(l=!0),y&&c.y===h&&(o=!0)}for(var m in n){var v=m.split("-"),x=C()(v,2),b=x[0],w=(x[1],"opo"===b);"opi"===b&&(n[m].y=l?s:s-50-37),w&&(n[m].y=o?h:h+50+37)}var N=1/0,_=1/0;for(var E in n){var k=E.split("-"),M=C()(k,2);M[0],M[1];n[E].x7&&void 0!==arguments[7]?arguments[7]:"right",s=arguments.length>8&&void 0!==arguments[8]&&arguments[8],h=!1,d=null;void 0!==t.body&&(d=t.body);var c=l.x+l.width,g=l.y+l.height,p="right";c-(t.x+t.width/2)>g-(t.y+t.height/2-i)+120&&(p="down");var f=r.append("rect").attr("id",e).attr("x",t.x-t.width/2).attr("y",t.y-t.height/2+i).attr("width",t.width).attr("height",t.height-2*i).attr("rx",15).attr("ry",15).attr("data-body",d).attr("data-opened","neo").attr("data-clicked","false").style("fill","rgba(0, 0, 255, 0)").style("stroke",a).style("cursor","pointer").style("stroke-width",5);s&&f.style("stroke-dasharray","10, 5"),void 0!==t.label&&r.append("text").attr("x",t.x).attr("y",t.y).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","12px").text(t.label);var y=u.g("#tooltip"),m=Et().metadata_collection;void 0!==t.metadata&&r.append("text").attr("x",t.x+t.width/2-17).attr("y",t.y-t.height/2+i+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","15px").text(t.metadata).on("mouseover",function(e){var r=z()(m[t.metadata-1],null,2);y.style("opacity",.9).html("
"+r+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){y.style("opacity",0)}),void 0!==t.body&&f.on("click",function(){bt(n,t.body,o,e,a,h,p),h=!h,this.setAttribute("data-clicked",h.toString())})}function zt(t,e,r,a,i,n,o){var l=arguments.length>7&&void 0!==arguments[7]?arguments[7]:"right",s=arguments.length>8&&void 0!==arguments[8]&&arguments[8],h=null;void 0!==t.body&&(h=t.body),!0===s&&(console.log(t),console.log(t.body));var d=!1,c=l.x+l.width,g=l.y+l.height,p="right";c-(t.x+t.width/2)>g-(t.y+t.height/2-i)+120&&(p="down");var f=r.append("rect").attr("id",e).attr("x",t.x-t.width/2).attr("y",t.y-t.height/2-i).attr("width",t.width).attr("height",t.height).attr("rx",15).attr("ry",15).attr("data-body",h).attr("data-opened","neo").attr("data-clicked","false").style("fill","rgba(0, 0, 255, 0)").style("cursor","pointer").style("stroke",a).style("stroke-width",5);s&&f.style("stroke-dasharray","10, 5"),void 0!==t.label&&r.append("text").attr("x",t.x).attr("y",t.y-t.height/4-i/2).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","12px").text(t.label);var y=u.g("#tooltip"),m=Et().metadata_collection;void 0!==t.metadata&&r.append("text").attr("x",t.x+t.width/2-17).attr("y",t.y-t.height/2-i+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","15px").text(t.metadata).on("mouseover",function(e){var r=z()(m[t.metadata-1],null,2);y.style("opacity",.9).html("
"+r+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){y.style("opacity",0)}),void 0!==t.body&&f.on("click",function(){bt(n,t.body,o,e,a,d,p),d=!d,this.setAttribute("data-clicked",d.toString())})}function St(t,e,r,a,i,n,o,l){var s=!1,h=null;void 0!==t.condition&&(h=t.condition);var d=l.x+l.width,c=l.y+l.height,g="right";d-(t.x+t.width/2)>c-(t.y+t.height/2-i)+120&&(g="down");var p=r.append("rect").attr("id",e).attr("x",t.x-t.width/2).attr("y",t.y-t.height/2+i).attr("width",t.width).attr("height",t.height-2*i).attr("rx",15).attr("ry",15).attr("data-body",h).attr("data-clicked","false").style("fill","rgba(0, 0, 255, 0)").style("stroke",a).style("cursor","pointer").style("stroke-width",5);void 0!==t.label&&r.append("text").attr("x",t.x).attr("y",t.y).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","12px").text(t.label);var f=u.g("#tooltip"),y=Et().metadata_collection;void 0!==t.metadata&&r.append("text").attr("x",t.x+t.width/2-17).attr("y",t.y-t.height/2+i+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","15px").text(t.metadata).on("mouseover",function(e){var r=z()(y[t.metadata-1],null,2);f.style("opacity",.9).html("
"+r+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){f.style("opacity",0)}),void 0!==t.condition&&p.on("click",function(){wt(n,t.condition,t.body_if,t.body_else,o,e,a,s,g),s=!s,this.setAttribute("data-clicked",s.toString())})}function Ct(t,e,r,a,i,n,o,l){var s=null;void 0!==t.body&&(s=t.body);var h=!1,d=l.x+l.width,c=l.y+l.height,g="right";d-(t.x+t.width/2)>c-(t.y+t.height/2-i)+120&&(g="down");var p=r.append("rect").attr("id",e).attr("x",t.x-t.width/2).attr("y",t.y-t.height/2-i).attr("width",t.width).attr("height",t.height).attr("rx",15).attr("ry",15).attr("data-body",s).attr("data-clicked","false").style("fill","rgba(0, 0, 255, 0)").style("cursor","pointer").style("stroke",a).style("stroke-width",5);void 0!==t.label&&r.append("text").attr("x",t.x).attr("y",t.y-t.height/4-i/2).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","12px").text(t.label);var f=u.g("#tooltip"),y=Et().metadata_collection;void 0!==t.metadata&&r.append("text").attr("x",t.x+t.width/2-17).attr("y",t.y-t.height/2-i+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","15px").text(t.metadata).on("mouseover",function(e){var r=z()(y[t.metadata-1],null,2);f.style("opacity",.9).html("
"+r+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){f.style("opacity",0)}),void 0!==t.body&&p.on("click",function(){wt(n,t.condition,t.body_if,t.body_else,o,e,a,h,g),h=!h,this.setAttribute("data-clicked",h.toString())})}function Tt(t,e,r,a,i,n,o,l){var s=!1,h=null;void 0!==t.condition&&(h=t.condition);var d=l.x+l.width,c=l.y+l.height,g="right";d-(t.x+t.width/2)>c-(t.y+t.height/2-i)+120&&(g="down");var p=r.append("rect").attr("id",e).attr("x",t.x-t.width/2).attr("y",t.y-t.height/2+i).attr("width",t.width).attr("height",t.height-2*i).attr("rx",15).attr("ry",15).attr("data-body",h).attr("data-clicked","false").style("fill","rgba(0, 0, 255, 0)").style("stroke",a).style("cursor","pointer").style("stroke-width",5);void 0!==t.label&&r.append("text").attr("x",t.x).attr("y",t.y).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","12px").text(t.label);var f=u.g("#tooltip"),y=Et().metadata_collection;void 0!==t.metadata&&r.append("text").attr("x",t.x+t.width/2-17).attr("y",t.y-t.height/2+i+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","15px").text(t.metadata).on("mouseover",function(e){var r=z()(y[t.metadata-1],null,2);f.style("opacity",.9).html("
"+r+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){f.style("opacity",0)}),void 0!==t.condition&&p.on("click",function(){Nt(n,t.condition,t.pre,t.body,t.post,o,e,a,s,g),s=!s,this.setAttribute("data-clicked",s.toString())})}function At(t,e,r,a,i,n,o,l){var s=null;void 0!==t.body&&(s=t.body);var h=!1,d=l.x+l.width,c=l.y+l.height,g="right";d-(t.x+t.width/2)>c-(t.y+t.height/2-i)+120&&(g="down");var p=r.append("rect").attr("id",e).attr("x",t.x-t.width/2).attr("y",t.y-t.height/2-i).attr("width",t.width).attr("height",t.height).attr("rx",15).attr("ry",15).attr("data-body",s).attr("data-clicked","false").style("fill","rgba(0, 0, 255, 0)").style("cursor","pointer").style("stroke",a).style("stroke-width",5);void 0!==t.label&&r.append("text").attr("x",t.x).attr("y",t.y-t.height/4-i/2).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","12px").text(t.label);var f=u.g("#tooltip"),y=Et().metadata_collection;void 0!==t.metadata&&r.append("text").attr("x",t.x+t.width/2-17).attr("y",t.y-t.height/2-i+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","15px").text(t.metadata).on("mouseover",function(e){var r=z()(y[t.metadata-1],null,2);f.style("opacity",.9).html("
"+r+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){f.style("opacity",0)}),void 0!==t.body&&p.on("click",function(){Nt(n,t.body,o,e,a,h,g),h=!h,this.setAttribute("data-clicked",h.toString())})}function Rt(t,e,r,a,i){r.append("rect").attr("id",e).attr("x",t.x-t.width/2).attr("y",t.y-t.height/2+i).attr("width",t.width).attr("height",t.height-2*i).style("fill","none").style("stroke",a).style("stroke-width",2),void 0!==t.label&&r.append("text").attr("x",t.x).attr("y",t.y).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","12px").text(t.label);var n=u.g("#tooltip"),o=Et().metadata_collection;void 0!==t.metadata&&r.append("text").attr("x",t.x+t.width/2-17).attr("y",t.y-t.height/2+i+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","15px").text(t.metadata).on("mouseover",function(e){var r=z()(o[t.metadata-1],null,2);n.style("opacity",.9).html("
"+r+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){n.style("opacity",0)}),void 0!==t.value&&r.append("text").attr("x",t.x).attr("y",t.y).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","30px").text(t.value.value)}function Pt(t,e,r,a,i){r.append("rect").attr("id",e).attr("x",t.x-t.width/2).attr("y",t.y-t.height/2+i).attr("width",t.width).attr("height",t.height-2*i).style("fill","none").style("stroke",a).style("stroke-width",5),void 0!==t.label&&r.append("text").attr("x",t.x).attr("y",t.y).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","20px").text(t.label);var n=u.g("#tooltip"),o=Et().metadata_collection;void 0!==t.metadata&&r.append("text").attr("x",t.x+t.width/2-17).attr("y",t.y-t.height/2+i+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","15px").text(t.metadata).on("mouseover",function(e){var r=z()(o[t.metadata-1],null,2);n.style("opacity",.9).html("
"+r+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){n.style("opacity",0)}),void 0!==t.value&&r.append("text").attr("x",t.x).attr("y",t.y).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","30px").text(t.value.value)}function Ot(t,e,r,a,i){r.append("rect").attr("id",e).attr("x",t.x-t.width/2).attr("y",t.y-t.height/2-i).attr("width",t.width).attr("height",t.height).style("fill","none").style("stroke",a).style("stroke-width",5),void 0!==t.label&&r.append("text").attr("x",t.x).attr("y",t.y).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","12px").text(t.label);var n=u.g("#tooltip"),o=Et().metadata_collection;void 0!==t.metadata&&r.append("text").attr("x",t.x+t.width/2-17).attr("y",t.y-t.height/2-i+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","15px").text(t.metadata).on("mouseover",function(e){var r=z()(o[t.metadata-1],null,2);n.style("opacity",.9).html("
"+r+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){n.style("opacity",0)}),void 0!==t.value&&r.append("text").attr("x",t.x).attr("y",t.y).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","30px").text(t.value.value)}function Jt(t,e,r,a,i){r.append("rect").attr("id",e).attr("x",t.x-t.width/2+i/2).attr("y",t.y-t.height/2-i).attr("width",t.width-i).attr("height",t.height).style("fill","none").style("stroke",a).style("stroke-width",2),void 0!==t.label&&r.append("text").attr("x",t.x).attr("y",t.y).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","12px").text(t.label);var n=u.g("#tooltip"),o=Et().metadata_collection;void 0!==t.metadata&&r.append("text").attr("x",t.x+t.width/2-27).attr("y",t.y-t.height/2-i+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","15px").text(t.metadata).on("mouseover",function(e){var r=z()(o[t.metadata-1],null,2);n.style("opacity",.9).html("
"+r+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){n.style("opacity",0)}),void 0!==t.value&&r.append("text").attr("x",t.x).attr("y",t.y-1.2*i).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","30px").text(t.value.value)}function Ft(t,e,r,a){var i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"white";r.append("rect").attr("id",e).attr("x",t.x-t.width/2).attr("y",t.y-t.height/2).attr("width",t.width).attr("height",t.height).style("fill",i).style("stroke",a).style("stroke-width",2);var n=u.g("#tooltip"),o=Et().metadata_collection;void 0!==t.metadata&&r.append("text").attr("x",t.x+t.width/2-12).attr("y",t.y-t.height/2+12).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","15px").text(t.metadata).on("mouseover",function(e){var r=z()(o[t.metadata-1],null,2);n.style("opacity",.9).html("
"+r+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){n.style("opacity",0)}),void 0!==t.label&&r.append("text").attr("x",t.x).attr("y",t.y).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","27px").text(t.label)}function It(t,e,r,a,i,n,o,l){var s=arguments.length>8&&void 0!==arguments[8]&&arguments[8],h=arguments[9],d=t.insert("rect",":first-child").attr("id","frame"+l).attr("x",e.x-i).attr("y",e.y-i+n).attr("rx",15).attr("ry",15).attr("width",r-2*i).attr("height",a-2*i-2*n).style("fill","transparent").style("stroke",o).style("stroke-width",5).lower();s&&d.style("stroke-dasharray","10,5");var c=u.g("#tooltip"),g=Et().metadata_collection;void 0!==h.meta.metadata&&t.append("text").attr("x",e.x-i+(r-2*i)-17).attr("y",e.y-i+n+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","17px").text(h.meta.metadata).on("mouseover",function(t){var e=z()(g[h.meta.metadata-1],null,2);c.style("opacity",.9).html("
"+e+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){c.style("opacity",0)})}function Dt(t,e,r,a,i,n,o,l){var s=arguments.length>8&&void 0!==arguments[8]&&arguments[8],h=arguments[9],d=t.insert("rect",":first-child").attr("id","frame"+l).attr("x",e.x-i).attr("y",e.y-i-n/10).attr("rx",15).attr("ry",15).attr("width",r-2*i).attr("height",a-2*i-n).style("fill","transparent").style("stroke",o).style("stroke-width",5).lower(),c=u.g("#tooltip"),g=Et().metadata_collection;void 0!==h.meta.metadata&&t.append("text").attr("x",e.x-i+(r-2*i)-17).attr("y",e.y-i-n/10+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","17px").text(h.meta.metadata).on("mouseover",function(t){var e=z()(g[h.meta.metadata-1],null,2);c.style("opacity",.9).html("
"+e+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){c.style("opacity",0)}),s&&d.style("stroke-dasharray","10,5")}function Lt(t,e,r,a,i,n,o,l){var s=arguments.length>8&&void 0!==arguments[8]&&arguments[8],h=arguments[9],d=t.insert("rect",":first-child").attr("id","frame"+l).attr("x",e.x-i).attr("y",e.y-i+2*n).attr("rx",15).attr("ry",15).attr("width",r-2*i).attr("height",a-2*i-n).style("fill","transparent").style("stroke",o).style("stroke-width",5).lower(),c=u.g("#tooltip"),g=Et().metadata_collection;void 0!==h.meta.metadata&&t.append("text").attr("x",e.x-i+(r-2*i)-17).attr("y",e.y-i+10*n+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","17px").text(h.meta.metadata).on("mouseover",function(t){var e=z()(g[h.meta.metadata-1],null,2);c.style("opacity",.9).html("
"+e+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){c.style("opacity",0)}),s&&d.style("stroke-dasharray","10,5")}function Xt(t,e,r,a,i,n,o,l){var s=arguments.length>8&&void 0!==arguments[8]&&arguments[8],h=arguments[9];e.x!==1/0&&e.x!==-1/0||(e.x=100,e.y=100,r=200,a=200);var d=t.insert("rect",":first-child").attr("id","frame"+l).attr("x",e.x-i).attr("y",e.y-i).attr("rx",15).attr("ry",15).attr("width",r-2*i).attr("height",a-2*i).style("fill","transparent").style("stroke",o).style("stroke-width",5).lower(),c=u.g("#tooltip"),g=Et().metadata_collection;void 0!==h.meta.metadata&&t.append("text").attr("x",e.x-i+(r-2*i)-17).attr("y",e.y-i+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","17px").text(h.meta.metadata).on("mouseover",function(t){var e=z()(g[h.meta.metadata-1],null,2);c.style("opacity",.9).html("
"+e+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){c.style("opacity",0)}),s&&d.style("stroke-dasharray","10,5")}var Bt={name:"App",components:{VueJsonPretty:f.a},data:function(){return{skemaVersion:"",url:"",selectedDeep:3,possibleDepths:[1,2,3,4,5,6,7],startingFN:0,blockStyle:{backgroundColor:"rgba(255, 255, 120, 0)",height:"90vh",width:"100%"},selectedFile:null,selectedOption:null,gromet:null,path:"res",highlightedJson:null,selectedNode:null,highlightNode:null,routePair:{0:"0"},routePairC:{0:"0"},boxTypePair:{},options:[{text:"Clay1",value:"https://raw.githubusercontent.com/hconhisway/webcrawler/master/get_beta--Gromet-FN-auto2.json"},{text:"core_dynamics",value:"https://raw.githubusercontent.com/hconhisway/webcrawler/master/core_dynamics_pack2.json"},{text:"while1",value:"https://raw.githubusercontent.com/ml4ai/skema/adarshp/nom_error_handling/data/gromet/python/while1/FN_0.1.6/while1--Gromet-FN-auto.json"},{text:"cond1",value:"https://raw.githubusercontent.com/ml4ai/skema/adarshp/nom_error_handling/data/gromet/python/cond1/FN_0.1.6/cond1--Gromet-FN-auto.json"},{text:"fun1",value:"https://raw.githubusercontent.com/ml4ai/skema/main/data/gromet/python/fun1/FN_0.1.6/fun1--Gromet-FN-auto.json"},{text:"fun4",value:"https://raw.githubusercontent.com/ml4ai/skema/adarshp/nom_error_handling/data/gromet/python/fun4/FN_0.1.6/fun4--Gromet-FN-auto.json"},{text:"exp1",value:"https://raw.githubusercontent.com/ml4ai/skema/main/data/gromet/python/exp1/FN_0.1.6/exp1--Gromet-FN-auto.json"},{text:"exp2",value:"https://gist.githubusercontent.com/jastier/76f7566ac44265707d892a252d8f85ab/raw/2be498c5fb369635725e9e6b493732a5c181ac65/first_matlab.json"},{text:"exp3",value:"https://raw.githubusercontent.com/ml4ai/skema/main/data/gromet/python/exp3/FN_0.1.6/exp3--Gromet-FN-auto.json"},{text:"fun_default1",value:"https://raw.githubusercontent.com/ml4ai/skema/adarshp/nom_error_handling/data/gromet/python/fun_default1/FN_0.1.6/fun_default1--Gromet-FN-auto.json"},{text:"assign_operator1",value:"https://raw.githubusercontent.com/ml4ai/skema/main/data/gromet/python/assign_operator1/FN_0.1.6/assign_operator1--Gromet-FN-auto.json"}]}},mounted:function(){this.$refs.svgMoviz.addEventListener("mouseover",this.handleMouseOverDelegate)},beforeDestroy:function(){this.$refs.svgMoviz.removeEventListener("mouseover",this.handleMouseOverDelegate)},created:function(){var t=this;return c()(h.a.mark(function e(){var r,a;return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!(r=t.$route.query.gromet_url)){e.next=15;break}return e.prev=2,e.next=5,g.a.get(r);case 5:a=e.sent,t.gromet=a.data,t.skemaVersion=t.gromet.schema_version,t.processJson(),t.drawMoviz(),e.next=15;break;case 12:e.prev=12,e.t0=e.catch(2),console.error(e.t0);case 15:case"end":return e.stop()}},e,t,[[2,12]])}))()},methods:{drawMoviz:function(){u.h("g").remove();var t=u.g("svg");t.append("g").attr("id","sumGroup");var e=u.i().on("zoom",function(t){u.g("svg g").attr("transform",t.transform)});t.call(e);var r=this.gromet.modules[0];_t=r;var a=r.fn,i=r.fn_array,n=a;if(console.log(this.routePair),0!==this.startingFN){var o=i[this.startingFN-1].hi_there.replace("--- Click to visualize this FN --- ","").trim().replace(/^['"]+|['"]+$/g,""),l=o.split("-").map(Number),s=this.routePair[o].split("-").map(Number),h="0";kt(k(n),i,0);for(var d=0;d to visualize this FN --- 0"},this.highlightedJson.fn),this.getAllChildBody(this.highlightedJson.fn,"0","0");for(var t=0;t to visualize this FN --- "+o;this.routePair[o]=n,this.highlightedJson.fn_array[i]=l()({hi_there:s},this.highlightedJson.fn_array[i]),this.getAllChildBody(this.highlightedJson.fn_array[i],n,o)}},fetchData:function(){var t=this;return c()(h.a.mark(function e(){var r;return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,g.a.get(t.selectedOption);case 3:r=e.sent,t.gromet=r.data,t.skemaVersion=t.gromet.schema_version,t.processJson(),t.drawMoviz(),e.next=13;break;case 10:e.prev=10,e.t0=e.catch(0),console.error(e.t0);case 13:case"end":return e.stop()}},e,t,[[0,10]])}))()},triggerFileInput:function(){this.$refs.fileInput.click()},handleFileChange:function(t){var e=this;if(this.selectedFile=t.target.files[0],this.selectedFile){var r=new FileReader;r.onload=function(t){try{e.gromet=JSON.parse(t.target.result),e.skemaVersion=e.gromet.schema_version,e.processJson(),e.drawMoviz()}catch(t){console.error("Error parsing JSON:",t)}},r.readAsText(this.selectedFile)}},handleMouseOverDelegate:function(t){var e=t.target;if(e.id&&e.id.startsWith("frame")){var r=e.id.split("-").pop().match(/\d+$/);if(u.g("#mainsvg").selectAll("#highlightRect").remove(),this.selectedNode=r?r[0]:null,0===this.selectedNode||"0"===this.selectedNode?this.highlightNode=["res.fn"]:this.highlightNode=["res.fn_array["+(this.selectedNode-1)+"]"],null!==this.selectedNode){var a=e.width.baseVal.value+7,i=e.height.baseVal.value+7;u.g(e.parentNode).append("rect").attr("id","highlightRect").attr("x",e.x.baseVal.value-3.5).attr("y",e.y.baseVal.value-3.5).attr("rx",5).attr("ry",5).attr("width",a).attr("height",i).style("fill","none").style("stroke","red").style("stroke-width",38).style("stroke-opacity",.2)}}},jsonClick:function(){var t=event.target.textContent;if(t.startsWith('"--- Click to visualize this FN ---')&&n()(this.routePair).length>1){for(var e=t.replace("--- Click to visualize this FN --- ","").trim().replace(/^['"]+|['"]+$/g,""),r=e.split("-").map(Number),a=this.routePair[e].split("-").map(Number),i="0",o=0;o to visualize this FN --- ","").trim(),e=this.routePair[t.replace(/^['"]+|['"]+$/g,"")],r=e.split("-");r.pop();var a=r.join("-"),i="boxid"+a,n="line"+a+"_"+e;console.log(n),u.g("#sumGroup").selectChildren().each(function(){this.id===i?u.g(this).style("display",null):this.id===n&&u.g(this).style("display",null)})}else if(1===this.selectedNode){var o=this.gromet.modules[0].fn.hi_there.replace("--- Click to visualize this FN --- ","").trim(),l=this.routePair[o.replace(/^['"]+|['"]+$/g,"")],s=l.split("-");s.pop();var h=s.join("-"),d="boxid"+h,c="line"+h+"_"+l;console.log(c),u.g("#sumGroup").selectChildren().each(function(){this.id===d?u.g(this).style("display",null):this.id===c&&u.g(this).style("display",null)})}},submitUrl:function(){var t=this;return c()(h.a.mark(function e(){var r;return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,g.a.get(t.url);case 3:r=e.sent,t.gromet=r.data,t.skemaVersion=t.gromet.schema_version,t.processJson(),t.drawMoviz(),e.next=13;break;case 10:e.prev=10,e.t0=e.catch(0),console.error(e.t0);case 13:case"end":return e.stop()}},e,t,[[0,10]])}))()}}},Gt={render:function(){var t=this,e=t.$createElement,r=t._self._c||e;return r("div",{attrs:{id:"app"}},[r("div",{staticClass:"menu"},[t._v("\n Current Supported Skema Version:\n "),r("span",{staticStyle:{"white-space":"pre",color:"tomato","font-weight":"bold"}},[t._v("0.1.7 ")]),t._v(" "),r("select",{directives:[{name:"model",rawName:"v-model",value:t.selectedOption,expression:"selectedOption"}],staticClass:"my-select",attrs:{placeholder:"Select"},on:{change:[function(e){var r=Array.prototype.filter.call(e.target.options,function(t){return t.selected}).map(function(t){return"_value"in t?t._value:t.value});t.selectedOption=e.target.multiple?r:r[0]},t.fetchData]}},t._l(t.options,function(e){return r("option",{key:e.value,domProps:{value:e.value}},[t._v("\n "+t._s(e.text)+"\n ")])}),0),t._v(" "),r("input",{directives:[{name:"model",rawName:"v-model",value:t.url,expression:"url"}],staticClass:"url-input",attrs:{type:"text",placeholder:"Input URL of JSON file here."},domProps:{value:t.url},on:{input:function(e){e.target.composing||(t.url=e.target.value)}}}),t._v(" "),r("button",{on:{click:t.submitUrl}},[t._v("Submit")]),t._v(" "),r("input",{ref:"fileInput",staticStyle:{display:"none"},attrs:{type:"file"},on:{change:t.handleFileChange}}),t._v(" "),r("button",{staticClass:"btn btn-primary",style:{margin:"0 30px",backgroundColor:"tomato",color:"white",border:"none"},on:{click:t.triggerFileInput}},[t._v("\n Choose File\n ")]),t._v(" "),r("button",{staticClass:"btn btn-primary download-button",on:{click:t.downloadSVG}},[t._v("downloadSVG")]),t._v(" "),r("button",{staticClass:"btn btn-primary",style:{margin:"0 30px",backgroundColor:"green",color:"white",border:"none"},on:{click:t.showPreviousBox}},[t._v("\n Previous Box\n ")])]),t._v(" "),r("div",{staticClass:"content"},[r("div",{staticClass:"editor-box"},[r("label",{attrs:{for:"deep-select"}},[t._v("Select Display Depth: ")]),t._v(" "),r("select",{directives:[{name:"model",rawName:"v-model",value:t.selectedDeep,expression:"selectedDeep"}],attrs:{id:"deep-select"},on:{change:function(e){var r=Array.prototype.filter.call(e.target.options,function(t){return t.selected}).map(function(t){return"_value"in t?t._value:t.value});t.selectedDeep=e.target.multiple?r:r[0]}}},t._l(t.possibleDepths,function(e){return r("option",{key:e,domProps:{value:e}},[t._v("\n "+t._s(e)+"\n ")])}),0),t._v(" "),r("vue-json-pretty",{attrs:{data:t.highlightedJson,editable:!0,"highlight-array":t.highlightNode,deep:t.selectedDeep},nativeOn:{click:function(e){return t.jsonClick.apply(null,arguments)}}})],1),t._v(" "),r("div",{staticClass:"svg-container"},[r("div",{staticClass:"tooltip",staticStyle:{opacity:"0"},attrs:{id:"tooltip"}}),t._v(" "),r("label",{attrs:{for:"startingFN"}},[t._v("Initial #(Entry): ")]),t._v(" "),r("input",{directives:[{name:"model",rawName:"v-model",value:t.startingFN,expression:"startingFN"}],domProps:{value:t.startingFN},on:{keyup:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.drawMoviz.apply(null,arguments)},input:function(e){e.target.composing||(t.startingFN=e.target.value)}}}),t._v(" "),r("svg",{ref:"svgMoviz",attrs:{id:"mainsvg",width:"1200",height:"1000",overflow:"visible"}},[r("g",{attrs:{id:"sumGroup"}})])])])])},staticRenderFns:[]};var jt=r("VU/8")(Bt,Gt,!1,function(t){r("mz0+")},"data-v-3855d3c1",null).exports,Ut=r("/ocq");a.a.use(Ut.a);var Ht=new Ut.a({routes:[{path:"/",name:"Moviz",component:jt}],mode:"hash"});a.a.config.productionTip=!1,new a.a({el:"#app",router:Ht,components:{App:jt},template:""})},iMEU:function(t,e){},"mz0+":function(t,e){},"p+Xa":function(t,e){t.exports={name:"d3-flextree",version:"2.1.2",main:"build/d3-flextree.js",module:"index","jsnext:main":"index",author:{name:"Chris Maloney",url:"http://chrismaloney.org"},description:"Flexible tree layout algorithm that allows for variable node sizes.",keywords:["d3","d3-module","layout","tree","hierarchy","d3-hierarchy","plugin","d3-plugin","infovis","visualization","2d"],homepage:"https://github.com/klortho/d3-flextree",license:"WTFPL",repository:{type:"git",url:"https://github.com/klortho/d3-flextree.git"},scripts:{clean:"rm -rf build demo test","build:demo":"rollup -c --environment BUILD:demo","build:dev":"rollup -c --environment BUILD:dev","build:prod":"rollup -c --environment BUILD:prod","build:test":"rollup -c --environment BUILD:test",build:"rollup -c",lint:"eslint index.js src","test:main":"node test/bundle.js","test:browser":"node test/browser-tests.js",test:"npm-run-all test:*",prepare:"npm-run-all clean build lint test"},dependencies:{"d3-hierarchy":"^1.1.5"},devDependencies:{"babel-plugin-external-helpers":"^6.22.0","babel-preset-es2015-rollup":"^3.0.0",d3:"^4.13.0","d3-selection-multi":"^1.0.1",eslint:"^4.19.1",jsdom:"^11.6.2","npm-run-all":"^4.1.2",rollup:"^0.55.3","rollup-plugin-babel":"^2.7.1","rollup-plugin-commonjs":"^8.0.2","rollup-plugin-copy":"^0.2.3","rollup-plugin-json":"^2.3.0","rollup-plugin-node-resolve":"^3.0.2","rollup-plugin-uglify":"^3.0.0","uglify-es":"^3.3.9"}}}},["NHnr"]); -//# sourceMappingURL=app.25edb8e331688e58ba08.js.map \ No newline at end of file diff --git a/static/js/app.25edb8e331688e58ba08.js.map b/static/js/app.25edb8e331688e58ba08.js.map deleted file mode 100644 index 5af3866..0000000 --- a/static/js/app.25edb8e331688e58ba08.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///./src/utils/layout.js","webpack:///./src/utils/drawlines.js","webpack:///./src/utils/utilities.js","webpack:///./src/utils/flextree.js","webpack:///./src/utils/multitree.js","webpack:///./src/utils/click.js","webpack:///./src/utils/clickCond.js","webpack:///./src/utils/global.js","webpack:///./src/utils/drawBox.js","webpack:///src/App.vue","webpack:///./src/App.vue?f739","webpack:///./src/App.vue","webpack:///./src/router/index.js","webpack:///./src/main.js","webpack:///./node_modules/d3-flextree/package.json"],"names":["getBoxLayout","data","graph","dagre","Graph","compound","setGraph","setDefaultEdgeLabel","i","bf","length","node","nodeId","label","name","type","function_type","value","body","metadata","setNode","auxLabel","width","height","pif","setParent","box","pof","opo","opi","wff","edge","srcNodeId","src","tgtNodeId","tgt","hasNode","setEdge","WnodeId","WnodeId1","WnodeId2","wfopi","wfopo","wopio","bc","condition","body_if","body_else","pic","poc","wfc","wcf","wcc","wcopi","wcopo","bl","pre","post","pil","pol","wfl","wcl","wlopi","wll","wlf","wlc","wlopo","nodeID","auxID","predecessors","successors","nodes","filter","startsWith","ranksep","rankdir","layout","edges","forEach","x","y","push","id","source","v","target","w","_loop","bfNodeId","pofNode","find","pifNode","fullBox","_loop2","bcNodeId","pocNode","picNode","_loop3","blNodeId","polNode","pilNode","meta","b","identifier","UnionFind","elements","_this","this","classCallCheck_default","parent","e","parentX","parentY","drawLines","sourceid","targetid","locationTransform","body_num_source","body_num_target","color","direction","sourceX","Number","d3","select","attr","sourceY","targetX1","targetX2","targetY1","targetY2","dx1","dy1","dx2","dy2","controlPoint11","controlPoint12","controlPoint21","controlPoint22","g","append","String","data1","data2","lineGenerator","d","curve","pathString1","pathElement1","document","createElementNS","setAttribute","pathString2","pathElement2","totalLength1","getTotalLength","totalLength2","points1","point","getPointAtLength","points2","xScale1","domain","range","bisect1","left","xScale2","bisect2","area1","y0","xValue","indexOfNode","invert","pointBefore","pointAfter","slope","Math","abs","linewidth","pow","sqrt","y1","area2","x0","yValue","x1","datum","selectAll","each","currentNode","currentNodeBody","undefined","split","sourceXforSL","sourceYforSL","targetXforSL","targetYforSL","updateLines","lineID","transition","duration","drawLinesDashArrow","treeLayout","sourceID","targetID","sourceFrame","dx","dy","targetX","targetY","style","midX","midY","text","updateLinesDashArrow","arraysAreEqual","array1","array2","loopOverHierarchy","callback","children","c","_children","getChildren","hierarchies","childrens","console","log","element","zoomin","path","filterChild","item","hasOwnProperty","sort","a","aNums","oName","map","bNums","getHierarchy","spaceY","replace","routes","currentID","size","temp","Array","isArray","_size","slice","reverse","defaults","freeze_default","nodeSize","spacing","flextree","options","opts","assign_default","accessor","opt","tree","FlexNode","wtree","wrap","getFlexNode","_FlexNode","_class","_this2","possibleConstructorReturn_default","__proto__","get_prototype_of_default","call","relX","prelim","shift","change","lExt","lExtRelX","lThr","rExt","rExtRelX","rThr","inherits_default","createClass_default","key","oNode","layoutChildren","resolveX","get","set","update","_hierarchy$prototype$","constructor","descendants","ySize","xSize","ancs","ancestors","hasChildren","noChildren","numChildren","reduce","acc","kid","maxExtents","extents","nodeExtents","top","bottom","right","e0","e1","min","max","hierarchy","prototype","FlexClass","treeData","_wrap","depth","kidsData","kd","hl","arg","arguments","kids","dump","_dump","i0","i1","i2","kdumps","join","_acc","slicedToArray_default","lastLows","lowY","separate","updateLows","shiftChange","positionRoot","prevSum","sum","k","child","_acc2","lastShiftSum","lastChangeSum","shiftSum","changeSum","lows","lSib","curSubtree","rContour","rSumMods","lContour","lSumMods","isFirst","next","dist","moveSubtree","distributeExtra","index","rightBottom","leftBottom","nextRContour","nextLContour","setLThr","setRThr","subtree","distance","curSubtreeI","leftSibI","n","delta","firstChild","lastChild","diff","k0","kf","getMultiTree","subtrees","findAllSubtrees","currentLayout","toConsumableArray_default","down","mix","mergedCL","obj","extends_default","hasProperties","sharedNodes","getSharedKeys","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_step","_iterator","get_iterator_default","done","nodeL","childrenRect","keyPre","nodeLPre","oldBoundingBox","findBoundingBox","differenceX1","differenceY1","err","return","copyNonDuplicateProperties","cloneDeep","obj1","obj2","sharedKeys","processTree","root","parentNodesRight","set_default","parentNodesDown","setParents","dfs","isSameDirection","checkProperties","add","parentNodesMix","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_step2","_iterator2","has","delete","from_default","clone","removeDownChildren","clonex","flexLayout","newBoundingbox","removeRightChildren","cloneRight","cloneDown","flexLayoutDown","flexLayoutRight","treeDown","treeRight","cloneRightx","cloneDownx","treeDataDown","treeDataRight","treeLayoutDown","treeLayoutRight","differenceX","differenceY","mergedLayout","rectanglesObj","minX","Infinity","minY","maxX","maxY","rectangle","rectX","rectY","x2","y2","handleClick","fnS","body_num","clicked","openFlag","GID","deleteParts","deleteFlag","node1","node2","node1Parts","node2Parts","end","then","remove","firstNParts","stringify_default","GIDParts","newLabel","drawBox","keys_default","padding","sourceGID","targetGID","sourceTransString","targetTransString","newTransArray","transformArray","locationTransformForThis","a01","a02","a04","a05","line_label","handleClickCond","cond","layoutElse","layoutCond","layoutIf","newLabelCond","newLabelIf","newLabelElse","currentDirection","handleClickLoop","newLabelPre","newLabelBody","newLabelPost","gromet","getGromet","directionO","opoNodeFlag","opiNodeFlag","minValue","apply","values_default","maxValue","_nodeId$split","_nodeId$split2","isOpoNode","_nodeId$split3","_nodeId$split4","minXofAllNodes","minYofAllNodes","_key$split","_key$split2","bbox","shapes","isPofNode","isPifNode","isOpiNode","isPocNode","isPicNode","isPolNode","isPilNode","computeBoundingRectangle","realOuterBox","getOuterBox","_nodeId2$split","_nodeId2$split2","isBcNode","isBlNode","drawBFs_full","drawLiteral_full","drawLPrimitive_full","drawBFs_nfull","drawLiteral_nfull","drawLPrimitive_nfull","drawBCs_full","drawBCs_nfull","drawBLs_full","drawBLs_nfull","drawPorts","sourceNode","targetNode","sourceType","targetType","drawOuterBoxFull","drawOuterBoxBottom","drawOuterBoxTop","drawOuterBoxEmpty","getBBox","imported","node_body","outerRight","outerBottom","selection","tooltip","metadata_collection","on","formattedJson","html","toString","node_body_cond","fill","insert","lower","App","components","VueJsonPretty","vue_json_pretty_default","skemaVersion","url","selectedDeep","possibleDepths","startingFN","blockStyle","backgroundColor","selectedFile","selectedOption","highlightedJson","selectedNode","highlightNode","routePair","0","routePairC","boxTypePair","mounted","$refs","svgMoviz","addEventListener","handleMouseOverDelegate","beforeDestroy","removeEventListener","created","asyncToGenerator_default","regenerator_default","mark","_callee","grometUrl","response","_context","prev","$route","query","gromet_url","axios","sent","schema_version","processJson","drawMoviz","t0","error","stop","methods","svg","zoom","transform","graphData","modules","fn0","fn","fn_array","currentFN","trimmedNum","hi_there","trim","routeNumbers","altRouteNumbers","currentBox","boxId","triggerClickEvent","increasedWidth","increasedHeight","selectedBoxId","selectChildren","getAllChildBody","metadata_type","source_language","source_language_version","data_type","provenance","col_begin","col_end","code_file_reference_uid","_i","currentEntry","objJson","currentRoute","altRoute","currentNodeNum","newRoute","newAltRoute","clickPrompt","fetchData","_callee2","_context2","triggerFileInput","fileInput","click","handleFileChange","event","_this3","files","reader","FileReader","onload","JSON","parse","result","readAsText","numberMatch","pop","match","baseVal","parentNode","jsonClick","spanText","textContent","dispatch","downloadSVG","svgElement","getElementById","svgData","XMLSerializer","serializeToString","svgBlob","Blob","svgUrl","URL","createObjectURL","downloadLink","createElement","href","download","appendChild","removeChild","showPreviousBox","numbersString","partsNum","newTrimmedNum","PreSelectedBoxId","selectedLineId","_numbersString","_trimmedNum","_partsNum","_newTrimmedNum","_PreSelectedBoxId","_selectedLineId","submitUrl","_this4","_callee3","_context3","selectortype_template_index_0_src_App","render","_vm","_h","$createElement","_c","_self","attrs","staticClass","_v","staticStyle","white-space","font-weight","directives","rawName","expression","placeholder","$event","$$selectedVal","o","selected","_value","multiple","_l","option","domProps","_s","input","composing","ref","display","margin","border","for","num","editable","highlight-array","deep","nativeOn","opacity","keyup","indexOf","_k","keyCode","overflow","staticRenderFns","src_App","__webpack_require__","normalizeComponent","ssrContext","Vue","use","Router","router","component","mode","config","productionTip","el","template","module","exports","version","main","jsnext:main","author","description","keywords","homepage","license","repository","scripts","clean","build:demo","build:dev","build:prod","build:test","build","lint","test:main","test:browser","test","prepare","dependencies","d3-hierarchy","devDependencies","babel-plugin-external-helpers","babel-preset-es2015-rollup","d3-selection-multi","eslint","jsdom","npm-run-all","rollup","rollup-plugin-babel","rollup-plugin-commonjs","rollup-plugin-copy","rollup-plugin-json","rollup-plugin-node-resolve","rollup-plugin-uglify","uglify-es"],"mappings":"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","file":"static/js/app.25edb8e331688e58ba08.js","sourcesContent":["/* eslint-disable */\r\nimport * as dagre from 'dagre';\r\nimport cloneDeep from 'lodash/cloneDeep';\r\n\r\nexport function getBoxLayout(data) {\r\n let graph = new dagre.graphlib.Graph({ compound: true });\r\n graph.setGraph({});\r\n // eslint-disable-next-line\r\n graph.setDefaultEdgeLabel(() => { return {}; });\r\n // get bf for all\r\n if ('bf' in data) {\r\n for (let i = 0; i < data.bf.length; i += 1) {\r\n // eslint-disable-next-line\r\n const node = data.bf[i];\r\n const nodeId = `bf-${i}`;\r\n const label = node.name;\r\n const type = node.function_type;\r\n const value = node.value;\r\n const body = node.body;\r\n const metadata = node.metadata;\r\n graph.setNode(nodeId, { label, value, type, body,metadata });\r\n // add auxi node for each bf\r\n const auxLabel = 'aux';\r\n const width = 1;\r\n const height = 1;\r\n graph.setNode(`aux-${nodeId}`, { auxLabel, width, height });\r\n // graph.setParent(`aux-${nodeId}`, nodeId);\r\n }\r\n }\r\n\r\n // get pif\r\n if ('pif' in data) {\r\n for (let i = 0; i < data.pif.length; i += 1) {\r\n const node = data.pif[i];\r\n const nodeId = `pif-${i}`;\r\n const label = node.name;\r\n const width = 50;\r\n const height = 50;\r\n const metadata = node.metadata;\r\n graph.setNode(nodeId, { label, width, height, metadata });\r\n graph.setParent(nodeId, `bf-${node.box - 1}`);\r\n }\r\n }\r\n\r\n // get pof\r\n if ('pof' in data) {\r\n for (let i = 0; i < data.pof.length; i += 1) {\r\n const node = data.pof[i];\r\n const nodeId = `pof-${i}`;\r\n const label = node.name;\r\n const width = 50;\r\n const height = 50;\r\n const metadata = node.metadata;\r\n graph.setNode(nodeId, { label, width, height, metadata });\r\n graph.setParent(nodeId, `bf-${node.box - 1}`);\r\n }\r\n }\r\n\r\n // get opo\r\n if ('opo' in data) {\r\n for (let i = 0; i < data.opo.length; i += 1) {\r\n const node = data.opo[i];\r\n const nodeId = `opo-${i}`;\r\n const label = node.name;\r\n const width = 50;\r\n const height = 50;\r\n const metadata = node.metadata;\r\n graph.setNode(nodeId, { label, width, height, metadata });\r\n // graph.setParent(nodeId, `bf-${node.box - 1}`);\r\n }\r\n }\r\n\r\n // get opi\r\n if ('opi' in data) {\r\n for (let i = 0; i < data.opi.length; i += 1) {\r\n const node = data.opi[i];\r\n const nodeId = `opi-${i}`;\r\n const label = node.name;\r\n const width = 50;\r\n const height = 50;\r\n const metadata = node.metadata;\r\n graph.setNode(nodeId, { label, width, height, metadata });\r\n // graph.setParent(nodeId, `bf-${node.box - 1}`);\r\n }\r\n }\r\n\r\n // set edges wff\r\n if ('wff' in data) {\r\n for (let i = 0; i < data.wff.length; i += 1) {\r\n const edge = data.wff[i];\r\n const srcNodeId = `pif-${edge.src - 1}`;\r\n const tgtNodeId = `pof-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set edges wfopi\r\n if ('wfopi' in data) {\r\n for (let i = 0; i < data.wfopi.length; i += 1) {\r\n const edge = data.wfopi[i];\r\n const srcNodeId = `pif-${edge.src - 1}`;\r\n const tgtNodeId = `opi-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set edges wfopo\r\n if ('wfopo' in data) {\r\n for (let i = 0; i < data.wfopo.length; i += 1) {\r\n const edge = data.wfopo[i];\r\n const srcNodeId = `opo-${edge.src - 1}`;\r\n const tgtNodeId = `pof-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set edges wopio\r\n if ('wopio' in data) {\r\n for (let i = 0; i < data.wopio.length; i += 1) {\r\n const edge = data.wopio[i];\r\n const srcNodeId = `opo-${edge.src - 1}`;\r\n const tgtNodeId = `opi-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set bc\r\n if ('bc' in data) {\r\n for (let i = 0; i < data.bc.length; i += 1) {\r\n // eslint-disable-next-line\r\n const node = data.bc[i];\r\n const nodeId = `bc-${i}`;\r\n const label = node.name;\r\n const type = node.function_type;\r\n const value = node.value;\r\n const condition = node.condition;\r\n const body_if = node.body_if;\r\n const body_else = node.body_else;\r\n const metadata = node.metadata; \r\n graph.setNode(nodeId, { label, value, type, condition, body_if, body_else, metadata });\r\n // add auxi node for each bc\r\n const auxLabel = 'aux';\r\n const width = 1;\r\n const height = 1;\r\n graph.setNode(`aux-${nodeId}`, { auxLabel, width, height });\r\n // graph.setParent(`aux-${nodeId}`, nodeId);\r\n }\r\n }\r\n\r\n // set pic\r\n if ('pic' in data) {\r\n for (let i = 0; i < data.pic.length; i += 1) {\r\n const node = data.pic[i];\r\n const nodeId = `pic-${i}`;\r\n const label = node.name;\r\n const width = 50;\r\n const height = 50;\r\n const metadata = node.metadata;\r\n graph.setNode(nodeId, { label, width, height, metadata });\r\n graph.setParent(nodeId, `bc-${node.box - 1}`);\r\n }\r\n }\r\n\r\n // set poc\r\n if ('poc' in data) {\r\n for (let i = 0; i < data.poc.length; i += 1) {\r\n const node = data.poc[i];\r\n const nodeId = `poc-${i}`;\r\n const label = node.name;\r\n const width = 50;\r\n const height = 50;\r\n const metadata = node.metadata;\r\n graph.setNode(nodeId, { label, width, height, metadata });\r\n graph.setParent(nodeId, `bc-${node.box - 1}`);\r\n }\r\n }\r\n\r\n // set wfc\r\n if ('wfc' in data) {\r\n for (let i = 0; i < data.wfc.length; i += 1) {\r\n const edge = data.wfc[i];\r\n const srcNodeId = `pic-${edge.src - 1}`;\r\n const tgtNodeId = `pof-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set wcf\r\n if ('wcf' in data) {\r\n for (let i = 0; i < data.wcf.length; i += 1) {\r\n const edge = data.wcf[i];\r\n const srcNodeId = `pif-${edge.src - 1}`;\r\n const tgtNodeId = `poc-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set wcc\r\n if ('wcc' in data) {\r\n for (let i = 0; i < data.wcc.length; i += 1) {\r\n const edge = data.wcc[i];\r\n const srcNodeId = `pic-${edge.src - 1}`;\r\n const tgtNodeId = `poc-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set edges wcopi\r\n if ('wcopi' in data) {\r\n for (let i = 0; i < data.wcopi.length; i += 1) {\r\n const edge = data.wcopi[i];\r\n const srcNodeId = `pic-${edge.src - 1}`;\r\n const tgtNodeId = `opi-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set edges wcopo\r\n if ('wcopo' in data) {\r\n for (let i = 0; i < data.wcopo.length; i += 1) {\r\n const edge = data.wcopo[i];\r\n const srcNodeId = `opo-${edge.src - 1}`;\r\n const tgtNodeId = `poc-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n if ('bl' in data) {\r\n for (let i = 0; i < data.bl.length; i += 1) {\r\n // eslint-disable-next-line\r\n const node = data.bl[i];\r\n const nodeId = `bl-${i}`;\r\n const label = node.name;\r\n const type = node.function_type;\r\n const value = node.value;\r\n const condition = node.condition;\r\n const pre = node.pre;\r\n const body = node.body;\r\n const post = node.post;\r\n const metadata = node.metadata;\r\n graph.setNode(nodeId, { label, value, type, condition, pre, body, post, metadata });\r\n // add auxi node for each bl\r\n const auxLabel = 'aux';\r\n const width = 1;\r\n const height = 1;\r\n graph.setNode(`aux-${nodeId}`, { auxLabel, width, height });\r\n // graph.setParent(`aux-${nodeId}`, nodeId);\r\n }\r\n }\r\n\r\n // set pil\r\n if ('pil' in data) {\r\n for (let i = 0; i < data.pil.length; i += 1) {\r\n const node = data.pil[i];\r\n const nodeId = `pil-${i}`;\r\n const label = node.name;\r\n const width = 50;\r\n const height = 50;\r\n const metadata = node.metadata;\r\n graph.setNode(nodeId, { label, width, height, metadata });\r\n graph.setParent(nodeId, `bl-${node.box - 1}`);\r\n }\r\n }\r\n\r\n // set pol\r\n if ('pol' in data) {\r\n for (let i = 0; i < data.pol.length; i += 1) {\r\n const node = data.pol[i];\r\n const nodeId = `pol-${i}`;\r\n const label = node.name;\r\n const width = 50;\r\n const height = 50;\r\n const metadata = node.metadata;\r\n graph.setNode(nodeId, { label, width, height, metadata });\r\n graph.setParent(nodeId, `bl-${node.box - 1}`);\r\n }\r\n }\r\n\r\n // set wfl\r\n if ('wfl' in data) {\r\n for (let i = 0; i < data.wfl.length; i += 1) {\r\n const edge = data.wfl[i];\r\n const srcNodeId = `pil-${edge.src - 1}`;\r\n const tgtNodeId = `pof-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set wcl\r\n if ('wcl' in data) {\r\n for (let i = 0; i < data.wcl.length; i += 1) {\r\n const edge = data.wcl[i];\r\n const srcNodeId = `pil-${edge.src - 1}`;\r\n const tgtNodeId = `poc-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set wlopi\r\n if ('wlopi' in data) {\r\n for (let i = 0; i < data.wlopi.length; i += 1) {\r\n const edge = data.wlopi[i];\r\n const srcNodeId = `pil-${edge.src - 1}`;\r\n const tgtNodeId = `opi-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set wll\r\n if ('wll' in data) {\r\n for (let i = 0; i < data.wll.length; i += 1) {\r\n const edge = data.wll[i];\r\n const srcNodeId = `pil-${edge.src - 1}`;\r\n const tgtNodeId = `pol-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set wlf\r\n if ('wlf' in data) {\r\n for (let i = 0; i < data.wlf.length; i += 1) {\r\n const edge = data.wlf[i];\r\n const srcNodeId = `pif-${edge.src - 1}`;\r\n const tgtNodeId = `pol-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set wlc\r\n if ('wlc' in data) {\r\n for (let i = 0; i < data.wlc.length; i += 1) {\r\n const edge = data.wlc[i];\r\n const srcNodeId = `pic-${edge.src - 1}`;\r\n const tgtNodeId = `pol-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set wlopo\r\n if ('wlopo' in data) {\r\n for (let i = 0; i < data.wlopo.length; i += 1) {\r\n const edge = data.wlopo[i];\r\n const srcNodeId = `opo-${edge.src - 1}`;\r\n const tgtNodeId = `pol-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // add auxi edges\r\n if ('pif' in data) {\r\n for (let i = 0; i < data.pif.length; i += 1) {\r\n const nodeID = `pif-${i}`;\r\n const pifNode = data.pif[i];\r\n const auxID = `aux-bf-${pifNode.box - 1}`;\r\n const hasIncomingEdges = graph.predecessors(nodeID).length > 0;\r\n if (!hasIncomingEdges) {\r\n graph.setEdge(auxID, nodeID);\r\n }\r\n }\r\n }\r\n if ('pof' in data) {\r\n for (let i = 0; i < data.pof.length; i += 1) {\r\n const nodeID = `pof-${i}`;\r\n const pofNode = data.pof[i];\r\n const auxID = `aux-bf-${pofNode.box - 1}`;\r\n const hasOutgoingEdges = graph.successors(nodeID).length > 0;\r\n if (!hasOutgoingEdges) {\r\n graph.setEdge(nodeID, auxID);\r\n }\r\n }\r\n }\r\n if ('pic' in data) {\r\n for (let i = 0; i < data.pic.length; i += 1) {\r\n const nodeID = `pic-${i}`;\r\n const picNode = data.pic[i];\r\n const auxID = `aux-bc-${picNode.box - 1}`;\r\n const hasIncomingEdges = graph.predecessors(nodeID).length > 0;\r\n if (!hasIncomingEdges) {\r\n graph.setEdge(auxID, nodeID);\r\n }\r\n }\r\n }\r\n if ('poc' in data) {\r\n for (let i = 0; i < data.poc.length; i += 1) {\r\n const nodeID = `poc-${i}`;\r\n const pocNode = data.poc[i];\r\n const auxID = `aux-bc-${pocNode.box - 1}`;\r\n const hasOutgoingEdges = graph.successors(nodeID).length > 0;\r\n if (!hasOutgoingEdges) {\r\n graph.setEdge(nodeID, auxID);\r\n }\r\n }\r\n }\r\n if ('pil' in data) {\r\n for (let i = 0; i < data.pil.length; i += 1) {\r\n const nodeID = `pil-${i}`;\r\n const pilNode = data.pil[i];\r\n const auxID = `aux-bl-${pilNode.box - 1}`;\r\n const hasIncomingEdges = graph.predecessors(nodeID).length > 0;\r\n if (!hasIncomingEdges) {\r\n graph.setEdge(auxID, nodeID);\r\n }\r\n }\r\n }\r\n if ('pol' in data) {\r\n for (let i = 0; i < data.pol.length; i += 1) {\r\n const nodeID = `pol-${i}`;\r\n const polNode = data.pol[i];\r\n const auxID = `aux-bl-${polNode.box - 1}`;\r\n const hasOutgoingEdges = graph.successors(nodeID).length > 0;\r\n if (!hasOutgoingEdges) {\r\n graph.setEdge(nodeID, auxID);\r\n }\r\n }\r\n }\r\n const bfNodes = graph.nodes().filter(node => node.startsWith('bf'));\r\n const bcNodes = graph.nodes().filter(node => node.startsWith('bc'));\r\n const blNodes = graph.nodes().filter(node => node.startsWith('bl'));\r\n const opoNodes = graph.nodes().filter(node => node.startsWith('opo'));\r\n const opiNodes = graph.nodes().filter(node => node.startsWith('opi'));\r\n // const parentNodes = [...bcNodes, ...bfNodes, ...blNodes];\r\n // const graph_aux = cloneDeep(graph);\r\n // const superNodes = groupParentNodes(graph_aux, parentNodes);\r\n // if (Object.keys(superNodes).length>1) {\r\n // graph = graph_aux;\r\n // }\r\n // console.log(graph);\r\n // eslint-disable-next-line\r\n // console.log(graph);\r\n // execute layout calculation\r\n graph.setGraph({ ranksep: 30, rankdir: 'BT' });\r\n dagre.layout(graph);\r\n // console.log(superNodes);\r\n // if (Object.keys(superNodes).length>1000) {\r\n // arrangeSuperNodes(graph,superNodes);\r\n // }\r\n\r\n // get layout result\r\n const layout = {\r\n nodes: {},\r\n edges: [],\r\n };\r\n graph.nodes().forEach((nodeId) => {\r\n const node = graph.node(nodeId);\r\n layout.nodes[nodeId] = {\r\n x: node.x,\r\n y: node.y,\r\n width: node.width,\r\n height: node.height,\r\n label: node.label,\r\n type: node.type,\r\n value: node.value,\r\n body: node.body,\r\n condition: node.condition,\r\n body_if: node.body_if,\r\n body_else: node.body_else,\r\n pre: node.pre,\r\n post: node.post,\r\n metadata: node.metadata\r\n };\r\n });\r\n graph.edges().forEach((edge, i) => {\r\n layout.edges.push({\r\n id: i,\r\n source: edge.v,\r\n target: edge.w,\r\n });\r\n });\r\n // console.log(layout);\r\n // set attributes for bf\r\n if ('bf' in data) {\r\n for (let i = 0; i < data.bf.length; i += 1) {\r\n const bfNodeId = `bf-${i}`;\r\n if (('pif' in data) && ('pof' in data)) {\r\n const pofNode = data.pof.find(node => node.box === i + 1);\r\n const pifNode = data.pif.find(node => node.box === i + 1);\r\n if (pofNode && pifNode) {\r\n layout.nodes[bfNodeId].fullBox = true;\r\n } else {\r\n layout.nodes[bfNodeId].fullBox = false;\r\n }\r\n } else {\r\n layout.nodes[bfNodeId].fullBox = false;\r\n }\r\n }\r\n }\r\n if ('bc' in data) {\r\n for (let i = 0; i < data.bc.length; i += 1) {\r\n const bcNodeId = `bc-${i}`;\r\n if (('pic' in data) && ('poc' in data)) {\r\n const pocNode = data.poc.find(node => node.box === i + 1);\r\n const picNode = data.pic.find(node => node.box === i + 1);\r\n if (pocNode && picNode) {\r\n layout.nodes[bcNodeId].fullBox = true;\r\n } else {\r\n layout.nodes[bcNodeId].fullBox = false;\r\n }\r\n } else {\r\n layout.nodes[bcNodeId].fullBox = false;\r\n }\r\n }\r\n }\r\n if ('bl' in data) {\r\n for (let i = 0; i < data.bl.length; i += 1) {\r\n const blNodeId = `bl-${i}`;\r\n if (('pil' in data) && ('pol' in data)) {\r\n const polNode = data.pol.find(node => node.box === i + 1);\r\n const pilNode = data.pil.find(node => node.box === i + 1);\r\n if (polNode && pilNode) {\r\n layout.nodes[blNodeId].fullBox = true;\r\n } else {\r\n layout.nodes[blNodeId].fullBox = false;\r\n }\r\n } else {\r\n layout.nodes[blNodeId].fullBox = false;\r\n }\r\n }\r\n }\r\n\r\n // set meta data for layout\r\n layout.meta = {};\r\n layout.meta.name = data.b[0].name;\r\n layout.meta.identifier = `${data.b[0].function_type}-${data.b[0].metadata}`;\r\n layout.meta.type = data.b[0].function_type;\r\n layout.meta.metadata = data.b[0].metadata;\r\n return layout;\r\n}\r\n\r\nclass UnionFind {\r\n constructor(elements) {\r\n this.parent = {};\r\n elements.forEach(e => this.parent[e] = e);\r\n }\r\n\r\n find(x) {\r\n if(this.parent[x] !== x) {\r\n this.parent[x] = this.find(this.parent[x]);\r\n }\r\n return this.parent[x];\r\n }\r\n\r\n union(x, y) {\r\n const parentX = this.find(x);\r\n const parentY = this.find(y);\r\n if(parentX !== parentY) {\r\n this.parent[parentY] = parentX;\r\n }\r\n }\r\n}\r\n\r\nfunction isEdgeBetweenChildNodes(graph, parentNode1, parentNode2) {\r\n let nodes1 = [];\r\n let nodes2 = [];\r\n\r\n if (parentNode1.startsWith(\"opo\") || parentNode1.startsWith(\"opi\")) {\r\n nodes1.push(parentNode1);\r\n } else {\r\n nodes1 = graph.children(parentNode1);\r\n }\r\n\r\n if (parentNode2.startsWith(\"opo\") || parentNode2.startsWith(\"opi\")) {\r\n nodes2.push(parentNode2);\r\n } else {\r\n nodes2 = graph.children(parentNode2);\r\n }\r\n\r\n for (const node1 of nodes1) {\r\n for (const node2 of nodes2) {\r\n if (graph.edge(node1, node2) || graph.edge(node2, node1)) {\r\n return true;\r\n }\r\n }\r\n }\r\n\r\n return false;\r\n}\r\n\r\nfunction groupParentNodes(graph, parentNodes) {\r\n const uf = new UnionFind(parentNodes);\r\n for(let i = 0; i < parentNodes.length; i++) {\r\n for(let j = i+1; j < parentNodes.length; j++) {\r\n if(isEdgeBetweenChildNodes(graph, parentNodes[i], parentNodes[j])) {\r\n uf.union(parentNodes[i], parentNodes[j]);\r\n }\r\n }\r\n }\r\n const groups = {};\r\n parentNodes.forEach(node => {\r\n const root = uf.find(node);\r\n if(!groups[root]) {\r\n groups[root] = [];\r\n }\r\n groups[root].push(node);\r\n });\r\n\r\n let superNodeCounter = 0;\r\n const superNodes = {};\r\n let previousSuperNodeId = null;\r\n for (let root in groups) {\r\n const superNodeId = `aux-super-${superNodeCounter}`;\r\n const label = `aux-super`;\r\n const virtual = true;\r\n graph.setNode(superNodeId, { label, virtual });\r\n groups[root].forEach(node => graph.setParent(node, superNodeId));\r\n superNodes[superNodeId] = groups[root];\r\n \r\n // Now there is a bug of dagre, it can not set an edge between group nodes\r\n if (previousSuperNodeId) {\r\n // graph.setEdge(previousSuperNodeId, superNodeId);\r\n }\r\n previousSuperNodeId = superNodeId;\r\n superNodeCounter++;\r\n }\r\n\r\n return superNodes;\r\n}\r\n\r\nfunction adjustChildNodesPosition(graph, parentNodeId, deltaX, deltaY) {\r\n const children = graph.children(parentNodeId);\r\n children.forEach(childId => {\r\n const childNode = graph.node(childId);\r\n \r\n childNode.x += deltaX;\r\n childNode.y += deltaY;\r\n\r\n if (graph.children(childId).length>0){\r\n adjustChildNodesPosition(graph, childId, deltaX, deltaY);\r\n }\r\n\r\n if (childId.split('-')[0]===\"bf\") {\r\n // console.log(\"aux-\" + childId);\r\n adjustAuxNodesPosition(graph, \"aux-\" + childId, deltaX, deltaY);\r\n }\r\n\r\n if (childId.split('-')[0]===\"bc\") {\r\n // console.log(\"aux-\" + childId);\r\n adjustAuxNodesPosition(graph, \"aux-\" + childId, deltaX, deltaY);\r\n }\r\n\r\n if (childId.split('-')[0]===\"bl\") {\r\n // console.log(\"aux-\" + childId);\r\n adjustAuxNodesPosition(graph, \"aux-\" + childId, deltaX, deltaY);\r\n }\r\n });\r\n}\r\n\r\nfunction adjustAuxNodesPosition(graph, auxNodeId, deltaX, deltaY) {\r\n const auxNode = graph.node(auxNodeId);\r\n auxNode.x += deltaX;\r\n auxNode.y += deltaY;\r\n}\r\n\r\nfunction arrangeSuperNodes(graph, superNodes) {\r\n const nodeSpacing = 50; // 超级节点之间的间距\r\n let currentY = 0;\r\n console.log(graph);\r\n // 根据超级节点创建顺序进行排序\r\n const superNodeIds = Object.keys(superNodes);\r\n superNodeIds.sort((a, b) => parseInt(a.split('-')[2]) - parseInt(b.split('-')[2]));\r\n\r\n // 获取第一个超级节点,保持其位置不变\r\n const firstSuperNode = graph.node(superNodeIds[0]);\r\n const firstSuperNodeCenterX = firstSuperNode.x + 100;\r\n firstSuperNode.x += 100;\r\n currentY = firstSuperNode.y;\r\n adjustChildNodesPosition(graph, superNodeIds[0], 100, 0);\r\n\r\n // 从第二个超级节点开始遍历,调整其位置\r\n for (let i = 1; i < superNodeIds.length; i++) {\r\n \r\n const superNodeId = superNodeIds[i];\r\n const preSuperNode = graph.node(superNodeIds[i-1]);\r\n const superNode = graph.node(superNodeId);\r\n currentY += nodeSpacing + superNode.height / 2 + preSuperNode.height / 2;\r\n\r\n // 计算移动距离\r\n const deltaX = firstSuperNodeCenterX - superNode.x;\r\n const deltaY = currentY - superNode.y;\r\n\r\n // 将超级节点移动到新的中心点\r\n superNode.x += deltaX;\r\n superNode.y += deltaY;\r\n\r\n const moveFlag = false;\r\n // graph.children(superNodeId).forEach(childId => {\r\n // if (childId.split)\r\n // })\r\n // 更新超级节点的子节点的坐标\r\n adjustChildNodesPosition(graph, superNodeId, deltaX, deltaY);\r\n\r\n // 更新下一个超级节点的y坐标\r\n // currentY += superNode.height + nodeSpacing;\r\n }\r\n}\r\n\r\n\r\n\r\n// function isEdgeBetweenChildNodes(graph, parentNode1, parentNode2) {\r\n// // 获取父节点的子节点\r\n// const children1 = graph.children(parentNode1);\r\n// const children2 = graph.children(parentNode2);\r\n\r\n// // 遍历每一对子节点,检查它们之间是否存在边缘\r\n// for (const child1 of children1) {\r\n// for (const child2 of children2) {\r\n// if (graph.edge(child1, child2) || graph.edge(child2, child1)) {\r\n// // 如果找到了边缘,返回true\r\n// return true;\r\n// }\r\n// }\r\n// }\r\n\r\n// // 如果没有找到边缘,返回false\r\n// return false;\r\n// }\r\n\r\n// function groupParentNodesWithConnectedChildren(graph, parentNodeIds) {\r\n// // 为每个父节点创建一个集合\r\n// const sets = new Map(parentNodeIds.map(id => [id, new Set([id])]));\r\n\r\n// // 超级父节点计数器\r\n// let superParentCounter = 0;\r\n\r\n// // 对每一对父节点进行迭代\r\n// for (let i = 0; i < parentNodeIds.length; i++) {\r\n// for (let j = i + 1; j < parentNodeIds.length; j++) {\r\n// // 检查父节点的子节点之间是否存在连接\r\n// if (isEdgeBetweenChildNodes(graph, parentNodeIds[i], parentNodeIds[j])) {\r\n// // 如果存在连接,将这两个节点的集合合并\r\n// const set1 = sets.get(parentNodeIds[i]);\r\n// const set2 = sets.get(parentNodeIds[j]);\r\n\r\n// const newSet = new Set([...set1, ...set2]);\r\n\r\n// // 更新集合映射\r\n// newSet.forEach(id => sets.set(id, newSet));\r\n// }\r\n// }\r\n// }\r\n\r\n// // 创建超级父节点\r\n// const visited = new Set();\r\n// const superParentNodes = [];\r\n\r\n// sets.forEach((set, id) => {\r\n// // 忽略已经访问过的节点\r\n// if (visited.has(id)) return;\r\n\r\n// const superParentNodeId = `aux-super-${superParentCounter++}`;\r\n\r\n// // 设置超级父节点的子节点\r\n// set.forEach(id => {\r\n// graph.setParent(id, superParentNodeId);\r\n// visited.add(id);\r\n// });\r\n\r\n// superParentNodes.push(superParentNodeId);\r\n// });\r\n\r\n// return superParentNodes;\r\n// }\r\n\r\n\r\nexport function getTreeLayout(data) {\r\n const g = new dagre.graphlib.Graph({ compound: true });\r\n g.setGraph({});\r\n // eslint-disable-next-line\r\n g.setDefaultEdgeLabel(() => { return {}; });\r\n\r\n g.setGraph(data.graph);\r\n\r\n data.subgraphs.forEach((subgraph) => {\r\n const filteredAttributes = {};\r\n Object.keys(subgraph.attributes).forEach((key) => {\r\n if (key === 'label') {\r\n filteredAttributes[key] = subgraph.attributes[key];\r\n }\r\n });\r\n g.setNode(subgraph.name, filteredAttributes);\r\n subgraph.nodes.forEach((node) => {\r\n const filteredAttributesN = {};\r\n Object.keys(node.attributes).forEach((key) => {\r\n if (key === 'label') {\r\n filteredAttributesN[key] = node.attributes[key];\r\n }\r\n });\r\n g.setNode(node.name, filteredAttributesN);\r\n g.setParent(node.name, subgraph.name);\r\n });\r\n });\r\n\r\n data.edges.forEach((edge) => {\r\n g.setEdge(edge.source, edge.target);\r\n });\r\n\r\n dagre.layout(g);\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/utils/layout.js","/* eslint-disable */\r\nimport * as d3 from \"d3\";\r\n\r\nexport function drawLines(sourceid, targetid, locationTransform, body_num_source, body_num_target, color, direction) {\r\n // console.log(\"sourceid, \", sourceid);\r\n // console.log(\"targetid, \", targetid);\r\n // console.log(\"locationTransform, \", locationTransform);\r\n // console.log(\"body_num_source, \", body_num_source);\r\n // console.log(\"body_num_target, \", body_num_target);\r\n // console.log(\"color, \", color);\r\n \r\n // d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr(\"data-opened\", \"true\");\r\n let sourceX = Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('x')) + Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('width'));\r\n let sourceY = Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('y')) + Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('height')) / 2;\r\n let targetX1 = Number(d3.select(\"#\" + targetid).attr('x')) + locationTransform[0];\r\n let targetX2= Number(d3.select(\"#\" + targetid).attr('x')) + locationTransform[0];\r\n let targetY1 = Number(d3.select(\"#\" + targetid).attr('y')) + locationTransform[1];\r\n let targetY2 = Number(d3.select(\"#\" + targetid).attr('y')) + Number(d3.select(\"#\" + targetid).attr('height')) + locationTransform[1];\r\n let dx1 = targetX1 - sourceX;\r\n let dy1 = targetY1 - sourceY;\r\n let dx2 = targetX2 - sourceX;\r\n let dy2 = targetY2 - sourceY;\r\n let controlPoint11 = {};\r\n let controlPoint12 = {};\r\n let controlPoint21 = {};\r\n let controlPoint22 = {};\r\n controlPoint11.x = sourceX + 0.25 * 1.5 * dx1;\r\n controlPoint11.y = sourceY + 0.25 * 1.2 * dy1;\r\n controlPoint12.x = sourceX + 0.75 * 0.8 * dx1;\r\n controlPoint12.y = sourceY + 0.75 * 1.0 * dy1;\r\n controlPoint21.x = sourceX + 0.25 * 1.5 * dx2;\r\n controlPoint21.y = sourceY + 0.25 * 1.2 * dy2;\r\n controlPoint22.x = sourceX + 0.75 * 0.8 * dx2;\r\n controlPoint22.y = sourceY + 0.75 * 1.0 * dy2;\r\n\r\n if (direction === \"down\") {\r\n sourceX = Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('x')) + Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('width')) / 2;\r\n sourceY = Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('y')) + Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('height'));\r\n targetX1 = Number(d3.select(\"#\" + targetid).attr('x')) + locationTransform[0];\r\n targetX2= Number(d3.select(\"#\" + targetid).attr('x')) + locationTransform[0] + Number(d3.select(\"#\" + targetid).attr('width'));\r\n targetY1 = Number(d3.select(\"#\" + targetid).attr('y')) + locationTransform[1];\r\n targetY2 = Number(d3.select(\"#\" + targetid).attr('y')) + locationTransform[1];\r\n dx1 = targetX1 - sourceX;\r\n dy1 = targetY1 - sourceY;\r\n dx2 = targetX2 - sourceX;\r\n dy2 = targetY2 - sourceY;\r\n controlPoint11 = {};\r\n controlPoint12 = {};\r\n controlPoint21 = {};\r\n controlPoint22 = {};\r\n controlPoint11.x = sourceX + 0.25 * 1.5 * dx1;\r\n controlPoint11.y = sourceY + 0.25 * 1.2 * dy1;\r\n controlPoint12.x = sourceX + 0.75 * 0.8 * dx1;\r\n controlPoint12.y = sourceY + 0.75 * 1.0 * dy1;\r\n controlPoint21.x = sourceX + 0.25 * 1.5 * dx2;\r\n controlPoint21.y = sourceY + 0.25 * 1.2 * dy2;\r\n controlPoint22.x = sourceX + 0.75 * 0.8 * dx2;\r\n controlPoint22.y = sourceY + 0.75 * 1.0 * dy2;\r\n }\r\n \r\n const g = d3.select('svg').select('#sumGroup').append(\"g\").attr('id', 'line' + String(body_num_source) + '_' + String(body_num_target)).attr('class', 'drawer');\r\n \r\n const paddingL = 17;\r\n\r\n g.attr(\"sourceid\", sourceid)\r\n .attr(\"targetid\", targetid)\r\n .attr(\"locationTransform\", locationTransform)\r\n .attr(\"body_num_source\", body_num_source)\r\n .attr(\"body_num_target\", body_num_target)\r\n .attr(\"color\", color);\r\n\r\n let data1 = [\r\n {x: sourceX, y: sourceY},\r\n {x: controlPoint11.x, y: controlPoint11.y},\r\n {x: controlPoint12.x, y: controlPoint12.y},\r\n {x: targetX1, y: targetY1 + paddingL}\r\n ];\r\n\r\n let data2 = [\r\n {x: sourceX, y: sourceY},\r\n {x: controlPoint21.x, y: controlPoint21.y},\r\n {x: controlPoint22.x, y: controlPoint22.y},\r\n {x: targetX2, y: targetY2 - paddingL}\r\n ];\r\n\r\n if (direction===\"down\") {\r\n data1 = [\r\n {x: sourceX, y: sourceY},\r\n {x: controlPoint11.x, y: controlPoint11.y},\r\n {x: controlPoint12.x, y: controlPoint12.y},\r\n {x: targetX1 + paddingL, y: targetY1}\r\n ];\r\n \r\n data2 = [\r\n {x: sourceX, y: sourceY},\r\n {x: controlPoint21.x, y: controlPoint21.y},\r\n {x: controlPoint22.x, y: controlPoint22.y},\r\n {x: targetX2 - paddingL, y: targetY2}\r\n ];\r\n }\r\n let lineGenerator = d3.line()\r\n .x(function(d) { return d.x; })\r\n .y(function(d) { return d.y; })\r\n .curve(d3.curveBasis);\r\n \r\n let pathString1 = lineGenerator(data1);\r\n let pathElement1 = document.createElementNS('http://www.w3.org/2000/svg', 'path');\r\n pathElement1.setAttribute('d', pathString1);\r\n\r\n let pathString2 = lineGenerator(data2);\r\n let pathElement2 = document.createElementNS('http://www.w3.org/2000/svg', 'path');\r\n pathElement2.setAttribute('d', pathString2);\r\n \r\n let totalLength1 = pathElement1.getTotalLength();\r\n let totalLength2 = pathElement2.getTotalLength();\r\n\r\n const numPoints = 500;\r\n\r\n let points1 = [];\r\n for (let i = 0; i < numPoints; i++) {\r\n let point = pathElement1.getPointAtLength(i * totalLength1 / (numPoints - 1));\r\n points1.push({x: point.x, y: point.y});\r\n }\r\n\r\n let points2 = [];\r\n for (let i = 0; i < numPoints; i++) {\r\n let point = pathElement2.getPointAtLength(i * totalLength2 / (numPoints - 1));\r\n points2.push({x: point.x, y: point.y});\r\n }\r\n\r\n // 创建一个线性比例尺来对应x值\r\n let xScale1 = d3.scaleLinear()\r\n .domain(d3.extent(data1, function(d) { return d.x; }))\r\n .range([0, dx1]); // 假设width是你的SVG宽度\r\n\r\n // 根据x值找到相应的数据点\r\n let bisect1 = d3.bisector(function(d) { return d.x; }).left;\r\n\r\n // 创建一个线性比例尺来对应x值\r\n let xScale2 = d3.scaleLinear()\r\n .domain(d3.extent(data2, function(d) { return d.x; }))\r\n .range([0, dx1]); // 假设width是你的SVG宽度\r\n\r\n // 根据x值找到相应的数据点\r\n let bisect2 = d3.bisector(function(d) { return d.x; }).left;\r\n\r\n if (direction===\"down\") {\r\n // 创建一个线性比例尺来对应y值\r\n xScale1 = d3.scaleLinear()\r\n .domain(d3.extent(data1, function(d) { return d.y; }))\r\n .range([0, dy1]);\r\n\r\n // 根据y值找到相应的数据点\r\n bisect1 = d3.bisector(function(d) { return d.y; }).left;\r\n\r\n // 创建一个线性比例尺来对应y值\r\n xScale2 = d3.scaleLinear()\r\n .domain(d3.extent(data2, function(d) { return d.y; }))\r\n .range([0, dy1]);\r\n\r\n // 根据y值找到相应的数据点\r\n bisect2 = d3.bisector(function(d) { return d.y; }).left;\r\n }\r\n let area1 = d3.area()\r\n .x(function(d) { return d.x; })\r\n .y0( d => {\r\n const xValue = d.x;\r\n let indexOfNode = bisect1(points1, xScale1.invert(xValue));\r\n if(indexOfNode >= points1.length - 1) indexOfNode = points1.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points1[indexOfNode - 1];\r\n let pointAfter = points1[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.y - pointBefore.y) / (pointAfter.x - pointBefore.x));\r\n let linewidth = 6 * Math.pow(((d.x - sourceX + 2) / dx1), 0.38);\r\n return d.y - Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .y1( d => {\r\n const xValue = d.x;\r\n let indexOfNode = bisect1(points1, xScale1.invert(xValue));\r\n if(indexOfNode >= points1.length - 1) indexOfNode = points1.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points1[indexOfNode - 1];\r\n let pointAfter = points1[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.y - pointBefore.y) / (pointAfter.x - pointBefore.x));\r\n let linewidth = 6 * Math.pow(((d.x - sourceX + 2) / dx1), 0.38);\r\n return d.y + Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .curve(d3.curveBasis);\r\n\r\n let area2 = d3.area()\r\n .x(function(d) { return d.x; })\r\n .y0( d => {\r\n const xValue = d.x;\r\n let indexOfNode = bisect2(points2, xScale2.invert(xValue));\r\n if(indexOfNode >= points2.length - 1) indexOfNode = points2.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points2[indexOfNode - 1];\r\n let pointAfter = points2[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.y - pointBefore.y) / (pointAfter.x - pointBefore.x));\r\n let linewidth = 6 * Math.pow(((d.x - sourceX + 2) / dx2), 0.38);\r\n return d.y - Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .y1(d => {\r\n const xValue = d.x;\r\n let indexOfNode = bisect2(points2, xScale2.invert(xValue));\r\n if(indexOfNode >= points2.length - 1) indexOfNode = points2.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points2[indexOfNode - 1];\r\n let pointAfter = points2[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.y - pointBefore.y) / (pointAfter.x - pointBefore.x));\r\n let linewidth = 6 * Math.pow(((d.x - sourceX + 2) / dx2), 0.38);\r\n return d.y + Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .curve(d3.curveBasis);\r\n\r\n if (direction===\"down\") {\r\n area1 = d3.area()\r\n .y(function(d) { return d.y; })\r\n .x0( d => {\r\n const yValue = d.y;\r\n let indexOfNode = bisect1(points1, xScale1.invert(yValue));\r\n if(indexOfNode >= points1.length - 1) indexOfNode = points1.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points1[indexOfNode - 1];\r\n let pointAfter = points1[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.x - pointBefore.x) / (pointAfter.y - pointBefore.y));\r\n // let slope = 0;\r\n let linewidth = 6 * Math.pow(((d.y - sourceY + 2) / dy1), 0.38);\r\n return d.x - Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .x1( d => {\r\n const yValue = d.y;\r\n let indexOfNode = bisect1(points1, xScale1.invert(yValue));\r\n if(indexOfNode >= points1.length - 1) indexOfNode = points1.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points1[indexOfNode - 1];\r\n let pointAfter = points1[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.x - pointBefore.x) / (pointAfter.y - pointBefore.y));\r\n // let slope = 0;\r\n let linewidth = 6 * Math.pow(((d.y - sourceY + 2) / dy1), 0.38);\r\n return d.x + Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .curve(d3.curveBasis);\r\n\r\n area2 = d3.area()\r\n .y(function(d) { return d.y; })\r\n .x0( d => {\r\n const yValue = d.y;\r\n let indexOfNode = bisect2(points2, xScale2.invert(yValue));\r\n if(indexOfNode >= points2.length - 1) indexOfNode = points2.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points2[indexOfNode - 1];\r\n let pointAfter = points2[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.x - pointBefore.x) / (pointAfter.y - pointBefore.y));\r\n // let slope = 0;\r\n let linewidth = 6 * Math.pow(((d.y - sourceY + 2) / dy2), 0.38);\r\n return d.x - Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .x1(d => {\r\n const yValue = d.y;\r\n let indexOfNode = bisect2(points2, xScale2.invert(yValue));\r\n if(indexOfNode >= points2.length - 1) indexOfNode = points2.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points2[indexOfNode - 1];\r\n let pointAfter = points2[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.x - pointBefore.x) / (pointAfter.y - pointBefore.y));\r\n // let slope = 0;\r\n let linewidth = 6 * Math.pow(((d.y - sourceY + 2) / dy2), 0.38);\r\n return d.x + Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .curve(d3.curveBasis);\r\n }\r\n // console.log(area1,area2);\r\n\r\n let path1 = g.append(\"path\")\r\n .datum(data1)\r\n .attr(\"d\", area1)\r\n .attr('id', 'path1')\r\n .attr(\"fill\", color);\r\n \r\n let path2 = g.append(\"path\")\r\n .datum(data2)\r\n .attr(\"d\", area2)\r\n .attr('id', 'path2')\r\n .attr(\"fill\", color);\r\n\r\n d3.select(\"#boxid\" + body_num_source).selectAll(\"rect\").each(function(d,i){\r\n const currentNode = d3.select(this);\r\n const currentNodeId = currentNode.attr(\"id\");\r\n if (currentNodeId !== sourceid) {\r\n const currentNodeBody = currentNode.attr(\"data-body\");\r\n if (currentNodeBody !== undefined && currentNodeBody !== null && currentNodeBody === body_num_target.split('-')[1] ) {\r\n currentNode.attr(\"data-opened\", true);\r\n const sourceXforSL = Number(currentNode.attr('x')) + Number(currentNode.attr('width'));\r\n const sourceYforSL = Number(currentNode.attr('y')) + Number(currentNode.attr('height')) / 2;\r\n const targetXforSL= Number(d3.select(\"#\" + targetid).attr('x')) + locationTransform[0];\r\n const targetYforSL = Number(d3.select(\"#\" + targetid).attr('y')) + locationTransform[1] + Number(d3.select(\"#\" + targetid).attr('height')) / 2;\r\n g.append(\"circle\")\r\n .attr(\"cx\", targetXforSL)\r\n .attr(\"cy\", targetYforSL)\r\n .attr(\"r\", 7) // 设置圆的半径\r\n .attr(\"fill\", color); // 设置圆的颜色\r\n\r\n g.append(\"line\")\r\n .attr(\"x1\", sourceXforSL)\r\n .attr(\"y1\", sourceYforSL)\r\n .attr(\"x2\", targetXforSL)\r\n .attr(\"y2\", targetYforSL)\r\n .attr(\"stroke-width\", 3) // 设置线的宽度\r\n .attr(\"stroke\", color) // 设置线的颜色\r\n .attr(\"stroke-dasharray\", \"5,5\") // 设置线为虚线,\"5,5\"表示线段和间隔的长度\r\n .attr(\"marker-end\", \"url(#arrow)\") // 设置线的终点为箭头\r\n .attr(\"class\", \"arrowLine\");\r\n }\r\n }\r\n })\r\n\r\n }\r\n \r\nexport function updateLines(sourceid, targetid, locationTransform, body_num_source, body_num_target, color, lineID, direction) {\r\n // console.log(\"sourceid, \", sourceid);\r\n // console.log(\"targetid, \", targetid);\r\n // console.log(\"locationTransform, \", locationTransform);\r\n // console.log(\"body_num_source, \", body_num_source);\r\n // console.log(\"body_num_target, \", body_num_target);\r\n // console.log(\"color, \", color);\r\n\r\n let sourceX = Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('x')) + Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('width'));\r\n let sourceY = Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('y')) + Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('height')) / 2;\r\n let targetX1 = Number(d3.select(\"#\" + targetid).attr('x')) + locationTransform[0];\r\n let targetX2= Number(d3.select(\"#\" + targetid).attr('x')) + locationTransform[0];\r\n let targetY1 = Number(d3.select(\"#\" + targetid).attr('y')) + locationTransform[1];\r\n let targetY2 = Number(d3.select(\"#\" + targetid).attr('y')) + Number(d3.select(\"#\" + targetid).attr('height')) + locationTransform[1];\r\n let dx1 = targetX1 - sourceX;\r\n let dy1 = targetY1 - sourceY;\r\n let dx2 = targetX2 - sourceX;\r\n let dy2 = targetY2 - sourceY;\r\n let controlPoint11 = {};\r\n let controlPoint12 = {};\r\n let controlPoint21 = {};\r\n let controlPoint22 = {};\r\n controlPoint11.x = sourceX + 0.25 * 1.5 * dx1;\r\n controlPoint11.y = sourceY + 0.25 * 1.2 * dy1;\r\n controlPoint12.x = sourceX + 0.75 * 0.8 * dx1;\r\n controlPoint12.y = sourceY + 0.75 * 1.0 * dy1;\r\n controlPoint21.x = sourceX + 0.25 * 1.5 * dx2;\r\n controlPoint21.y = sourceY + 0.25 * 1.2 * dy2;\r\n controlPoint22.x = sourceX + 0.75 * 0.8 * dx2;\r\n controlPoint22.y = sourceY + 0.75 * 1.0 * dy2;\r\n if (direction === \"down\") {\r\n sourceX = Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('x')) + Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('width')) / 2;\r\n sourceY = Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('y')) + Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('height'));\r\n targetX1 = Number(d3.select(\"#\" + targetid).attr('x')) + locationTransform[0];\r\n targetX2= Number(d3.select(\"#\" + targetid).attr('x')) + locationTransform[0] + Number(d3.select(\"#\" + targetid).attr('width'));\r\n targetY1 = Number(d3.select(\"#\" + targetid).attr('y')) + locationTransform[1];\r\n targetY2 = Number(d3.select(\"#\" + targetid).attr('y')) + locationTransform[1];\r\n dx1 = targetX1 - sourceX;\r\n dy1 = targetY1 - sourceY;\r\n dx2 = targetX2 - sourceX;\r\n dy2 = targetY2 - sourceY;\r\n controlPoint11 = {};\r\n controlPoint12 = {};\r\n controlPoint21 = {};\r\n controlPoint22 = {};\r\n controlPoint11.x = sourceX + 0.25 * 1.5 * dx1;\r\n controlPoint11.y = sourceY + 0.25 * 1.2 * dy1;\r\n controlPoint12.x = sourceX + 0.75 * 0.8 * dx1;\r\n controlPoint12.y = sourceY + 0.75 * 1.0 * dy1;\r\n controlPoint21.x = sourceX + 0.25 * 1.5 * dx2;\r\n controlPoint21.y = sourceY + 0.25 * 1.2 * dy2;\r\n controlPoint22.x = sourceX + 0.75 * 0.8 * dx2;\r\n controlPoint22.y = sourceY + 0.75 * 1.0 * dy2;\r\n }\r\n const g = d3.select('#' + lineID);\r\n\r\n const paddingL = 17;\r\n\r\n g.attr(\"sourceid\", sourceid)\r\n .attr(\"targetid\", targetid)\r\n .attr(\"locationTransform\", locationTransform)\r\n .attr(\"body_num_source\", body_num_source)\r\n .attr(\"body_num_target\", body_num_target)\r\n .attr(\"color\", color);\r\n\r\n\r\n let data1 = [\r\n {x: sourceX, y: sourceY},\r\n {x: controlPoint11.x, y: controlPoint11.y},\r\n {x: controlPoint12.x, y: controlPoint12.y},\r\n {x: targetX1, y: targetY1 + paddingL}\r\n ];\r\n\r\n let data2 = [\r\n {x: sourceX, y: sourceY},\r\n {x: controlPoint21.x, y: controlPoint21.y},\r\n {x: controlPoint22.x, y: controlPoint22.y},\r\n {x: targetX2, y: targetY2 - paddingL}\r\n ];\r\n\r\n if (direction===\"down\") {\r\n data1 = [\r\n {x: sourceX, y: sourceY},\r\n {x: controlPoint11.x, y: controlPoint11.y},\r\n {x: controlPoint12.x, y: controlPoint12.y},\r\n {x: targetX1 + paddingL, y: targetY1}\r\n ];\r\n \r\n data2 = [\r\n {x: sourceX, y: sourceY},\r\n {x: controlPoint21.x, y: controlPoint21.y},\r\n {x: controlPoint22.x, y: controlPoint22.y},\r\n {x: targetX2 - paddingL, y: targetY2}\r\n ];\r\n }\r\n\r\n let lineGenerator = d3.line()\r\n .x(function(d) { return d.x; })\r\n .y(function(d) { return d.y; })\r\n .curve(d3.curveBasis);\r\n \r\n let pathString1 = lineGenerator(data1);\r\n let pathElement1 = document.createElementNS('http://www.w3.org/2000/svg', 'path');\r\n pathElement1.setAttribute('d', pathString1);\r\n\r\n let pathString2 = lineGenerator(data2);\r\n let pathElement2 = document.createElementNS('http://www.w3.org/2000/svg', 'path');\r\n pathElement2.setAttribute('d', pathString2);\r\n \r\n let totalLength1 = pathElement1.getTotalLength();\r\n let totalLength2 = pathElement2.getTotalLength();\r\n\r\n const numPoints = 500;\r\n\r\n let points1 = [];\r\n for (let i = 0; i < numPoints; i++) {\r\n let point = pathElement1.getPointAtLength(i * totalLength1 / (numPoints - 1));\r\n points1.push({x: point.x, y: point.y});\r\n }\r\n\r\n let points2 = [];\r\n for (let i = 0; i < numPoints; i++) {\r\n let point = pathElement2.getPointAtLength(i * totalLength2 / (numPoints - 1));\r\n points2.push({x: point.x, y: point.y});\r\n }\r\n\r\n // 创建一个线性比例尺来对应x值\r\n let xScale1 = d3.scaleLinear()\r\n .domain(d3.extent(data1, function(d) { return d.x; }))\r\n .range([0, dx1]); // 假设width是你的SVG宽度\r\n\r\n // 根据x值找到相应的数据点\r\n let bisect1 = d3.bisector(function(d) { return d.x; }).left;\r\n\r\n // 创建一个线性比例尺来对应x值\r\n let xScale2 = d3.scaleLinear()\r\n .domain(d3.extent(data2, function(d) { return d.x; }))\r\n .range([0, dx1]); // 假设width是你的SVG宽度\r\n\r\n // 根据x值找到相应的数据点\r\n let bisect2 = d3.bisector(function(d) { return d.x; }).left;\r\n\r\n if (direction===\"down\") {\r\n // 创建一个线性比例尺来对应y值\r\n xScale1 = d3.scaleLinear()\r\n .domain(d3.extent(data1, function(d) { return d.y; }))\r\n .range([0, dy1]);\r\n\r\n // 根据y值找到相应的数据点\r\n bisect1 = d3.bisector(function(d) { return d.y; }).left;\r\n\r\n // 创建一个线性比例尺来对应y值\r\n xScale2 = d3.scaleLinear()\r\n .domain(d3.extent(data2, function(d) { return d.y; }))\r\n .range([0, dy1]);\r\n\r\n // 根据y值找到相应的数据点\r\n bisect2 = d3.bisector(function(d) { return d.y; }).left;\r\n }\r\n let area1 = d3.area()\r\n .x(function(d) { return d.x; })\r\n .y0( d => {\r\n const xValue = d.x;\r\n let indexOfNode = bisect1(points1, xScale1.invert(xValue));\r\n if(indexOfNode >= points1.length - 1) indexOfNode = points1.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points1[indexOfNode - 1];\r\n let pointAfter = points1[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.y - pointBefore.y) / (pointAfter.x - pointBefore.x));\r\n let linewidth = 6 * Math.pow(((d.x - sourceX + 2) / dx1), 0.38);\r\n return d.y - Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .y1( d => {\r\n const xValue = d.x;\r\n let indexOfNode = bisect1(points1, xScale1.invert(xValue));\r\n if(indexOfNode >= points1.length - 1) indexOfNode = points1.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points1[indexOfNode - 1];\r\n let pointAfter = points1[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.y - pointBefore.y) / (pointAfter.x - pointBefore.x));\r\n let linewidth = 6 * Math.pow(((d.x - sourceX + 2) / dx1), 0.38);\r\n return d.y + Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .curve(d3.curveBasis);\r\n\r\n let area2 = d3.area()\r\n .x(function(d) { return d.x; })\r\n .y0( d => {\r\n const xValue = d.x;\r\n let indexOfNode = bisect2(points2, xScale2.invert(xValue));\r\n if(indexOfNode >= points2.length - 1) indexOfNode = points2.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points2[indexOfNode - 1];\r\n let pointAfter = points2[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.y - pointBefore.y) / (pointAfter.x - pointBefore.x));\r\n let linewidth = 6 * Math.pow(((d.x - sourceX + 2) / dx1), 0.38);\r\n return d.y - Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .y1(d => {\r\n const xValue = d.x;\r\n let indexOfNode = bisect2(points2, xScale2.invert(xValue));\r\n if(indexOfNode >= points2.length - 1) indexOfNode = points2.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points2[indexOfNode - 1];\r\n let pointAfter = points2[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.y - pointBefore.y) / (pointAfter.x - pointBefore.x));\r\n let linewidth = 6 * Math.pow(((d.x - sourceX + 2) / dx1), 0.38);\r\n return d.y + Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .curve(d3.curveBasis);\r\n\r\n if (direction===\"down\") {\r\n area1 = d3.area()\r\n .y(function(d) { return d.y; })\r\n .x0( d => {\r\n const yValue = d.y;\r\n let indexOfNode = bisect1(points1, xScale1.invert(yValue));\r\n if(indexOfNode >= points1.length - 1) indexOfNode = points1.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points1[indexOfNode - 1];\r\n let pointAfter = points1[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.x - pointBefore.x) / (pointAfter.y - pointBefore.y));\r\n // let slope = 0;\r\n let linewidth = 6 * Math.pow(((d.y - sourceY + 2) / dy1), 0.38);\r\n return d.x - Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .x1( d => {\r\n const yValue = d.y;\r\n let indexOfNode = bisect1(points1, xScale1.invert(yValue));\r\n if(indexOfNode >= points1.length - 1) indexOfNode = points1.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points1[indexOfNode - 1];\r\n let pointAfter = points1[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.x - pointBefore.x) / (pointAfter.y - pointBefore.y));\r\n // let slope = 0;\r\n let linewidth = 6 * Math.pow(((d.y - sourceY + 2) / dy1), 0.38);\r\n return d.x + Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .curve(d3.curveBasis);\r\n\r\n area2 = d3.area()\r\n .y(function(d) { return d.y; })\r\n .x0( d => {\r\n const yValue = d.y;\r\n let indexOfNode = bisect2(points2, xScale2.invert(yValue));\r\n if(indexOfNode >= points2.length - 1) indexOfNode = points2.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points2[indexOfNode - 1];\r\n let pointAfter = points2[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.x - pointBefore.x) / (pointAfter.y - pointBefore.y));\r\n // let slope = 0;\r\n let linewidth = 6 * Math.pow(((d.y - sourceY + 2) / dy2), 0.38);\r\n return d.x - Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .x1(d => {\r\n const yValue = d.y;\r\n let indexOfNode = bisect2(points2, xScale2.invert(yValue));\r\n if(indexOfNode >= points2.length - 1) indexOfNode = points2.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points2[indexOfNode - 1];\r\n let pointAfter = points2[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.x - pointBefore.x) / (pointAfter.y - pointBefore.y));\r\n // let slope = 0;\r\n let linewidth = 6 * Math.pow(((d.y - sourceY + 2) / dy2), 0.38);\r\n return d.x + Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .curve(d3.curveBasis);\r\n }\r\n let path1 = g.select(\"#path1\")\r\n .datum(data1)\r\n .transition('transition10')\r\n .duration(720)\r\n .attr(\"d\", area1)\r\n .attr(\"fill\", color);\r\n\r\n let path2 = g.select(\"#path2\")\r\n .datum(data2)\r\n .transition('transition11')\r\n .duration(720)\r\n .attr(\"d\", area2)\r\n .attr(\"fill\", color);\r\n\r\n d3.select(\"#boxid\" + body_num_source).selectAll(\"rect\").each(function(d,i){\r\n const currentNode = d3.select(this);\r\n const currentNodeId = currentNode.attr(\"id\");\r\n if (currentNodeId !== sourceid) {\r\n const currentNodeBody = currentNode.attr(\"data-body\");\r\n if (currentNodeBody !== undefined && currentNodeBody !== null && currentNodeBody === body_num_target.split('-')[1] ) {\r\n const sourceXforSL = Number(currentNode.attr('x')) + Number(currentNode.attr('width'));\r\n const sourceYforSL = Number(currentNode.attr('y')) + Number(currentNode.attr('height')) / 2;\r\n const targetXforSL= Number(d3.select(\"#\" + targetid).attr('x')) + locationTransform[0];\r\n const targetYforSL = Number(d3.select(\"#\" + targetid).attr('y')) + locationTransform[1] + Number(d3.select(\"#\" + targetid).attr('height')) / 2;\r\n g.select(\"circle\")\r\n .transition('transition12')\r\n .duration(720)\r\n .attr(\"cx\", targetXforSL)\r\n .attr(\"cy\", targetYforSL)\r\n .attr(\"r\", 7) // 设置圆的半径\r\n .attr(\"fill\", color); // 设置圆的颜色\r\n\r\n g.select(\"line\")\r\n .transition('transition13')\r\n .duration(720)\r\n .attr(\"x1\", sourceXforSL)\r\n .attr(\"y1\", sourceYforSL)\r\n .attr(\"x2\", targetXforSL)\r\n .attr(\"y2\", targetYforSL)\r\n .attr(\"stroke-width\", 3) // 设置线的宽度\r\n .attr(\"stroke\", color) // 设置线的颜色\r\n .attr(\"stroke-dasharray\", \"5,5\") // 设置线为虚线,\"5,5\"表示线段和间隔的长度\r\n .attr(\"marker-end\", \"url(#arrow)\") // 设置线的终点为箭头\r\n .attr(\"class\", \"arrowLine\");\r\n }\r\n }\r\n \r\n })\r\n}\r\n\r\nexport function drawLinesDashArrow(treeLayout, sourceID, targetID, color, label, direction) {\r\n // d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr(\"data-opened\", \"true\");\r\n const sourceFrame = \"frame\" + sourceID;\r\n const targetFrame = \"frame\" + targetID;\r\n let dx = treeLayout[targetID][0] - treeLayout[sourceID][0] - Number(d3.select(\"#\" + sourceFrame).attr('width'));\r\n let dy = treeLayout[targetID][1] - treeLayout[sourceID][1];\r\n let sourceX = Number(d3.select(\"#\" + sourceFrame).attr('x')) + Number(d3.select(\"#\" + sourceFrame).attr('width'));\r\n let sourceY = Number(d3.select(\"#\" + sourceFrame).attr('y')) + Number(d3.select(\"#\" + sourceFrame).attr('height')) / 2;\r\n let targetX = sourceX + dx;\r\n let targetY = sourceY + dy;\r\n if (direction===\"down\") {\r\n sourceX = Number(d3.select(\"#\" + sourceFrame).attr('x')) + Number(d3.select(\"#\" + sourceFrame).attr('width')) / 2;\r\n sourceY = Number(d3.select(\"#\" + sourceFrame).attr('y')) + Number(d3.select(\"#\" + sourceFrame).attr('height'));\r\n dx = treeLayout[targetID][0] - treeLayout[sourceID][0];\r\n dy = treeLayout[targetID][1] - treeLayout[sourceID][1] - Number(d3.select(\"#\" + sourceFrame).attr('height'));\r\n targetX = sourceX + dx;\r\n targetY = sourceY + dy;\r\n }\r\n const g = d3.select('svg').select('#sumGroup').append(\"g\").attr('id', 'line' + String(sourceID) + '_' + String(targetID)).attr(\"line-type\", \"dashed\").attr('class', 'drawer');\r\n const paddingL = 17;\r\n g.append(\"defs\")\r\n .append(\"marker\")\r\n .attr(\"id\", \"arrow\")\r\n .attr(\"markerWidth\", 5) // 原来的一半\r\n .attr(\"markerHeight\", 3.5) // 原来的一半\r\n .attr(\"refX\", 5) // 调整参考点以适应新的大小\r\n .attr(\"refY\", 1.75) // 调整参考点以适应新的大小\r\n .attr(\"orient\", \"auto\")\r\n .append(\"path\")\r\n .attr(\"d\", \"M0,0 L5,1.75 L0,3.5 Z\") // 缩小箭头的路径\r\n .style(\"fill\", \"gray\");\r\n g.append(\"line\")\r\n .attr(\"x1\", sourceX)\r\n .attr(\"y1\", sourceY)\r\n .attr(\"x2\", targetX)\r\n .attr(\"y2\", targetY)\r\n .attr(\"stroke-width\", 5) // 设置线的宽度\r\n .attr(\"stroke\", color) // 设置线的颜色\r\n .attr(\"stroke-dasharray\", \"5,5\") // 设置线为虚线,\"5,5\"表示线段和间隔的长度\r\n .attr(\"marker-end\", \"url(#arrow)\") // 设置线的终点为箭头\r\n .attr(\"class\", \"arrowLine\");\r\n let midX = (sourceX + targetX) / 2 - 45;\r\n let midY = (sourceY + targetY) / 2 - 5;\r\n g.append(\"text\")\r\n .attr(\"x\", midX)\r\n .attr(\"y\", midY)\r\n .text(label)\r\n .style(\"font-size\", \"30px\") // 设置字体大小\r\n .style(\"fill\", \"black\"); // 设置字体颜色\r\n}\r\n\r\nexport function updateLinesDashArrow(treeLayout, sourceID, targetID, color, label, lineID, direction) {\r\n // d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr(\"data-opened\", \"true\");\r\n let sourceFrame = \"frame\" + sourceID;\r\n let targetFrame = \"frame\" + targetID;\r\n let dx = treeLayout[targetID][0] - treeLayout[sourceID][0] - Number(d3.select(\"#\" + sourceFrame).attr('width'));\r\n let dy = treeLayout[targetID][1] - treeLayout[sourceID][1];\r\n let sourceX = Number(d3.select(\"#\" + sourceFrame).attr('x')) + Number(d3.select(\"#\" + sourceFrame).attr('width'));\r\n let sourceY = Number(d3.select(\"#\" + sourceFrame).attr('y')) + Number(d3.select(\"#\" + sourceFrame).attr('height')) / 2;\r\n let targetX = sourceX + dx;\r\n let targetY = sourceY + dy;\r\n if (direction===\"down\") {\r\n sourceX = Number(d3.select(\"#\" + sourceFrame).attr('x')) + Number(d3.select(\"#\" + sourceFrame).attr('width')) / 2;\r\n sourceY = Number(d3.select(\"#\" + sourceFrame).attr('y')) + Number(d3.select(\"#\" + sourceFrame).attr('height'));\r\n dx = treeLayout[targetID][0] - treeLayout[sourceID][0];\r\n dy = treeLayout[targetID][1] - treeLayout[sourceID][1] - Number(d3.select(\"#\" + sourceFrame).attr('height'));\r\n targetX = sourceX + dx;\r\n targetY = sourceY + dy;\r\n }\r\n const g = d3.select('svg').select('#sumGroup').select(\"#\" + lineID);\r\n g.select(\"line\")\r\n .transition('transition14')\r\n .duration(720)\r\n .attr(\"x1\", sourceX)\r\n .attr(\"y1\", sourceY)\r\n .attr(\"x2\", targetX)\r\n .attr(\"y2\", targetY)\r\n .attr(\"stroke-width\", 5) // 设置线的宽度\r\n .attr(\"stroke\", color) // 设置线的颜色\r\n .attr(\"stroke-dasharray\", \"5,5\") // 设置线为虚线,\"5,5\"表示线段和间隔的长度\r\n .attr(\"marker-end\", \"url(#arrow)\") // 设置线的终点为箭头\r\n .attr(\"class\", \"arrowLine\");\r\n let midX = (sourceX + targetX) / 2 - 45;\r\n let midY = (sourceY + targetY) / 2 - 5;\r\n g.select(\"text\")\r\n .transition('transition15')\r\n .duration(720)\r\n .attr(\"x\", midX)\r\n .attr(\"y\", midY)\r\n .text(label)\r\n .style(\"font-size\", \"30px\") // 设置字体大小\r\n .style(\"fill\", \"black\"); // 设置字体颜色\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/utils/drawlines.js","/* eslint-disable */\r\nimport * as d3 from \"d3\";\r\n\r\nexport function arraysAreEqual(array1, array2) {\r\n if (array1.length !== array2.length) {\r\n return false;\r\n }\r\n for (var i = 0; i < array1.length; i++) {\r\n if (array1[i] !== array2[i]) {\r\n return false;\r\n }\r\n }\r\n return true;\r\n}\r\n\r\nexport function loopOverHierarchy(d, callback) {\r\n callback(d);\r\n if (d.children) d.children.forEach(c => loopOverHierarchy(c, callback));\r\n if (d._children) d._children.forEach(c => loopOverHierarchy(c, callback));\r\n }\r\n\r\nfunction getChildren(hierarchies, childrens) {\r\n console.log(childrens);\r\n childrens.forEach(function(element){\r\n var children = hierarchies;\r\n var zoomin = 2;\r\n element.path.forEach(function(node){\r\n if (Number(node) !== 0) {\r\n if (zoomin <= element.path.length - 1) {\r\n // debugger\r\n const filterChild = children.children.filter(function(item){\r\n return Number(item.name) === Number(node);\r\n })[0]\r\n zoomin += 1\r\n children = filterChild;\r\n }\r\n else if (node === element.path[element.path.length - 1]) {\r\n // debugger\r\n if (children.hasOwnProperty(\"children\")) {\r\n children.children.push(element);\r\n sortByOName(children.children);\r\n } else {\r\n children.children = [ element ];\r\n }\r\n }\r\n }\r\n })\r\n})\r\n}\r\n\r\nexport function findChildrenAtSameLevel(arr) {\r\n const paths = {};\r\n\r\n for (let i = 0; i < arr.length; i++) {\r\n const path = arr[i];\r\n const lastIndex = path.lastIndexOf('-');\r\n\r\n if (lastIndex !== -1) {\r\n const parentPath = path.slice(0, lastIndex);\r\n\r\n if (!paths[parentPath]) {\r\n paths[parentPath] = [];\r\n }\r\n\r\n paths[parentPath].push(path);\r\n }\r\n }\r\n\r\n const similarPaths = Object.values(paths).filter(pathGroup => pathGroup.length > 1);\r\n\r\n return similarPaths;\r\n}\r\n\r\nfunction sortByOName(arr) {\r\n return arr.sort((a, b) => {\r\n const aNums = a.oName.split('-').map(Number);\r\n const bNums = b.oName.split('-').map(Number);\r\n\r\n // 根据数字依次进行比较\r\n for(let i = 0; i < aNums.length; i++) {\r\n if (aNums[i] < bNums[i]) {\r\n return -1;\r\n } else if (aNums[i] > bNums[i]) {\r\n return 1;\r\n }\r\n // 如果相等,继续比较下一个数字\r\n }\r\n\r\n // 如果所有数字都相等,返回0表示不需要改变顺序\r\n return 0;\r\n });\r\n}\r\n\r\nexport function autoTranslate() {\r\n let gs = d3.select('svg').selectAll('g');\r\n\r\n let tops = [], lefts = [], rights = [], bottoms = [];\r\n \r\n gs.each(function() {\r\n let rect = this.getBoundingClientRect();\r\n \r\n tops.push(rect.top);\r\n lefts.push(rect.left);\r\n rights.push(rect.right);\r\n bottoms.push(rect.bottom);\r\n });\r\n \r\n // 计算缩放前的矩形大小\r\n let initialWidth = Math.max(...rights) - Math.min(...lefts);\r\n let initialHeight = Math.max(...bottoms) - Math.min(...tops);\r\n \r\n // 设置你想要的矩形大小\r\n let desiredWidth = 2000; // 请替换为你想要的宽度\r\n let desiredHeight = 2000; // 请替换为你想要的高度\r\n \r\n // 计算缩放因子,这里使用相同的缩放因子以保持长宽比不变\r\n let scale = Math.min(desiredWidth / initialWidth, desiredHeight / initialHeight);\r\n \r\n // 应用缩放\r\n gs.attr('transform', (d, i, nodes) => {\r\n // 获取原有的 transform 值\r\n let originalTransform = d3.select(nodes[i]).attr('transform');\r\n let translateValues = originalTransform.match(/translate\\(([^)]+)\\)/);\r\n \r\n let originalX = 0, originalY = 0;\r\n \r\n if (translateValues) {\r\n [originalX, originalY] = translateValues[1].split(',').map(Number);\r\n }\r\n \r\n // 保持平移不变,应用缩放\r\n return `translate(${originalX}, ${originalY})`;\r\n });\r\n}\r\n\r\nexport function computeBoundingRectangle(shapes) {\r\n let minX = Infinity;\r\n let minY = Infinity;\r\n let maxX = -Infinity;\r\n let maxY = -Infinity;\r\n const ranksep = 37;\r\n \r\n for (const key in shapes) {\r\n const node = shapes[key];\r\n const [type, index] = key.split(\"-\");\r\n const isBfNode = (type === \"bf\");\r\n const isPofNode = (type === \"pof\");\r\n const isPifNode = (type === \"pif\");\r\n const isAuxNode = (type === \"aux\");\r\n const isOpoNode = (type === 'opo');\r\n const isOpiNode = (type === 'opi');\r\n const isBcNode = (type === \"bc\");\r\n const isPocNode = (type === \"poc\");\r\n const isPicNode = (type === \"pic\");\r\n const isBlNode = (type === \"bl\");\r\n const isPolNode = (type === \"pol\");\r\n const isPilNode = (type === \"pil\");\r\n if (isBfNode||isBcNode||isBlNode) {\r\n if(node.width===undefined || node.height===undefined){\r\n continue;\r\n }\r\n if (node.type == \"LITERAL\") {\r\n if (node.fullBox) {\r\n minX = Math.min(minX, node.x - node.width / 2);\r\n minY = Math.min(minY, node.y - node.height / 2 + ranksep);\r\n maxX = Math.max(maxX, node.x + node.width / 2);\r\n maxY = Math.max(maxY, node.y + node.height / 2 - ranksep);\r\n } else {\r\n minX = Math.min(minX, node.x - node.width / 2 + ranksep / 2);\r\n minY = Math.min(minY, node.y - node.height / 2 - ranksep);\r\n maxX = Math.max(maxX, node.x + node.width / 2 - ranksep / 2);\r\n maxY = Math.max(maxY, node.y + node.height / 2 - ranksep);\r\n }\r\n } else {\r\n if (node.fullBox) {\r\n minX = Math.min(minX, node.x - node.width / 2);\r\n minY = Math.min(minY, node.y - node.height / 2 + ranksep);\r\n maxX = Math.max(maxX, node.x + node.width / 2);\r\n maxY = Math.max(maxY, node.y + node.height / 2 - ranksep);\r\n } else {\r\n minX = Math.min(minX, node.x - node.width / 2);\r\n minY = Math.min(minY, node.y - node.height / 2 - ranksep);\r\n maxX = Math.max(maxX, node.x + node.width / 2);\r\n maxY = Math.max(maxY, node.y + node.height / 2 - ranksep);\r\n }\r\n }\r\n } else if (isPofNode || isPifNode || isOpiNode || isOpoNode || isPicNode || isPocNode || isPilNode || isPolNode) {\r\n minX = Math.min(minX, node.x - node.width / 2);\r\n minY = Math.min(minY, node.y - node.height / 2);\r\n maxX = Math.max(maxX, node.x + node.width / 2);\r\n maxY = Math.max(maxY, node.y + node.height / 2);\r\n }\r\n }\r\n return {\r\n x: minX,\r\n y: minY,\r\n width: maxX - minX,\r\n height: maxY - minY\r\n };\r\n}\r\n\r\nexport function getOuterBox(bbox, padding, ranksep, nodes) {\r\n let x;\r\n let y;\r\n let width;\r\n let height;\r\n if ('opo-0' in nodes && 'opi-0' in nodes){\r\n // full\r\n x = bbox.x - padding;\r\n y = bbox.y - padding + ranksep;\r\n width = bbox.width + 2 * padding;\r\n height = bbox.height + 2 * padding - 2* ranksep;\r\n } else if ('opo-0' in nodes && !('opi-0' in nodes)) {\r\n // bottom\r\n x = bbox.x - padding;\r\n y = bbox.y - padding - ranksep / 10;\r\n width = bbox.width + 2 * padding;\r\n height = bbox.height + 2 * padding - ranksep;\r\n } else if (!('opo-0' in nodes) && 'opi-0' in nodes) {\r\n // top\r\n x = bbox.x - padding;\r\n y = bbox.y - padding + ranksep * 2;\r\n width = bbox.width + 2 * padding;\r\n height = bbox.height + 2 * padding - ranksep;\r\n } else {\r\n // empty\r\n x = bbox.x - padding;\r\n y = bbox.y - padding;\r\n width = bbox.width + 2 * padding;\r\n height = bbox.height + 2 * padding;\r\n }\r\n return {\r\n x,\r\n y,\r\n width,\r\n height\r\n };\r\n}\r\n\r\nexport function getHierarchy(spaceY) {\r\n var hierarchies = {};\r\n const childrens = [];\r\n const gs = d3.selectAll('.drawer').each(function(d, i){\r\n const nodeID = d3.select(this).attr('id').replace(\"boxid\", \"\");\r\n const direction = d3.select(this).attr('direction');\r\n if (nodeID.split('_').length !== 2) {\r\n const routes = nodeID.split(\"-\");\r\n const currentID = routes[routes.length - 1];\r\n if (currentID==='0') {\r\n hierarchies.name = Number(currentID);\r\n hierarchies.oName = nodeID;\r\n hierarchies.path = routes;\r\n hierarchies.size = [Number(d3.select(this).attr('width')) + spaceY, Number(d3.select(this).attr('height'))];\r\n hierarchies.direction = direction;\r\n } else {\r\n const temp = {}\r\n temp.name = Number(currentID);\r\n temp.size = [Number(d3.select(this).attr('width')) + spaceY, Number(d3.select(this).attr('height'))];\r\n temp.path = routes;\r\n temp.oName = nodeID;\r\n temp.direction = direction;\r\n childrens.push(temp);\r\n }\r\n }\r\n })\r\n childrens.sort(function(a,b){\r\n return a.path.length - b.path.length;\r\n })\r\n getChildren(hierarchies, childrens);\r\n loopOverHierarchy(hierarchies, d => {\r\n if (Array.isArray(d.size)) {\r\n if (!d._size) d._size = d.size.slice();\r\n d.size = d._size.slice().reverse();\r\n }\r\n });\r\n return hierarchies;\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/utils/utilities.js","/* eslint-disable */\r\nimport {hierarchy} from 'd3-hierarchy';\r\n\r\nconst defaults = Object.freeze({\r\n children: data => data.children,\r\n nodeSize: node => node.data.size,\r\n spacing: 0,\r\n});\r\n\r\n// Create a layout function with customizable options. Per D3-style, the\r\n// options can be set at any time using setter methods. The layout function\r\n// will compute the tree node positions based on the options in effect at the\r\n// time it is called.\r\nexport default function flextree(options) {\r\n const opts = Object.assign({}, defaults, options);\r\n function accessor(name) {\r\n const opt = opts[name];\r\n return typeof opt === 'function' ? opt : () => opt;\r\n }\r\n\r\n function layout(tree) {\r\n const wtree = wrap(getWrapper(), tree, node=>node.children);\r\n wtree.update();\r\n return wtree.data;\r\n }\r\n\r\n function getFlexNode() {\r\n const nodeSize = accessor('nodeSize');\r\n const spacing = accessor('spacing');\r\n return class FlexNode extends hierarchy.prototype.constructor {\r\n constructor(data) {\r\n super(data);\r\n }\r\n copy() {\r\n const c = wrap(this.constructor, this, node=>node.children);\r\n c.each(node => node.data = node.data.data);\r\n return c;\r\n }\r\n get size() { return nodeSize(this); }\r\n spacing(oNode) { return spacing(this, oNode); }\r\n get nodes() { return this.descendants(); }\r\n get xSize() { return this.size[0]; }\r\n get ySize() { return this.size[1]; }\r\n get top() { return this.y; }\r\n get bottom() { return this.y + this.ySize; }\r\n get left() { return this.x - this.xSize / 2; }\r\n get right() { return this.x + this.xSize / 2; }\r\n get root() {\r\n const ancs = this.ancestors();\r\n return ancs[ancs.length - 1];\r\n }\r\n get numChildren() {\r\n return this.hasChildren ? this.children.length : 0;\r\n }\r\n get hasChildren() { return !this.noChildren; }\r\n get noChildren() { return this.children === null; }\r\n get firstChild() {\r\n return this.hasChildren ? this.children[0] : null;\r\n }\r\n get lastChild() {\r\n return this.hasChildren ? this.children[this.numChildren - 1] : null;\r\n }\r\n get extents() {\r\n return (this.children || []).reduce(\r\n (acc, kid) => FlexNode.maxExtents(acc, kid.extents),\r\n this.nodeExtents);\r\n }\r\n get nodeExtents() {\r\n return {\r\n top: this.top,\r\n bottom: this.bottom,\r\n left: this.left,\r\n right: this.right,\r\n };\r\n }\r\n static maxExtents(e0, e1) {\r\n return {\r\n top: Math.min(e0.top, e1.top),\r\n bottom: Math.max(e0.bottom, e1.bottom),\r\n left: Math.min(e0.left, e1.left),\r\n right: Math.max(e0.right, e1.right),\r\n };\r\n }\r\n };\r\n }\r\n\r\n function getWrapper() {\r\n const FlexNode = getFlexNode();\r\n const nodeSize = accessor('nodeSize');\r\n const spacing = accessor('spacing');\r\n return class extends FlexNode {\r\n constructor(data) {\r\n super(data);\r\n Object.assign(this, {\r\n x: 0, y: 0,\r\n relX: 0, prelim: 0, shift: 0, change: 0,\r\n lExt: this, lExtRelX: 0, lThr: null,\r\n rExt: this, rExtRelX: 0, rThr: null,\r\n });\r\n }\r\n get size() { return nodeSize(this.data); }\r\n spacing(oNode) { return spacing(this.data, oNode.data); }\r\n get x() { return this.data.x; }\r\n set x(v) { this.data.x = v; }\r\n get y() { return this.data.y; }\r\n set y(v) { this.data.y = v; }\r\n update() {\r\n layoutChildren(this);\r\n resolveX(this);\r\n return this;\r\n }\r\n };\r\n }\r\n\r\n function wrap(FlexClass, treeData, children) {\r\n const _wrap = (data, parent) => {\r\n const node = new FlexClass(data);\r\n Object.assign(node, {\r\n parent,\r\n depth: parent === null ? 0 : parent.depth + 1,\r\n height: 0,\r\n length: 1,\r\n });\r\n const kidsData = children(data) || [];\r\n node.children = kidsData.length === 0 ? null\r\n : kidsData.map(kd => _wrap(kd, node));\r\n if (node.children) {\r\n Object.assign(node, node.children.reduce(\r\n (hl, kid) => ({\r\n height: Math.max(hl.height, kid.height + 1),\r\n length: hl.length + kid.length,\r\n }), node\r\n ));\r\n }\r\n return node;\r\n };\r\n return _wrap(treeData, null);\r\n }\r\n\r\n\r\n Object.assign(layout, {\r\n nodeSize(arg) {\r\n return arguments.length ? (opts.nodeSize = arg, layout) : opts.nodeSize;\r\n },\r\n spacing(arg) {\r\n return arguments.length ? (opts.spacing = arg, layout) : opts.spacing;\r\n },\r\n children(arg) {\r\n return arguments.length ? (opts.children = arg, layout) : opts.children;\r\n },\r\n hierarchy(treeData, children) {\r\n const kids = typeof children === 'undefined' ? opts.children : children;\r\n return wrap(getFlexNode(), treeData, kids);\r\n },\r\n dump(tree) {\r\n const nodeSize = accessor('nodeSize');\r\n const _dump = i0 => node => {\r\n const i1 = i0 + ' ';\r\n const i2 = i0 + ' ';\r\n const {x, y} = node;\r\n const size = nodeSize(node);\r\n const kids = (node.children || []);\r\n const kdumps = (kids.length === 0) ? ' ' :\r\n `,${i1}children: [${i2}${kids.map(_dump(i2)).join(i2)}${i1}],${i0}`;\r\n return `{ size: [${size.join(', ')}],${i1}x: ${x}, y: ${y}${kdumps}},`;\r\n };\r\n return _dump('\\n')(tree);\r\n },\r\n });\r\n return layout;\r\n}\r\n\r\nconst layoutChildren = (w, y = 0) => {\r\n w.y = y;\r\n (w.children || []).reduce((acc, kid) => {\r\n const [i, lastLows] = acc;\r\n layoutChildren(kid, w.y + w.ySize);\r\n // The lowest vertical coordinate while extreme nodes still point\r\n // in current subtree.\r\n const lowY = (i === 0 ? kid.lExt : kid.rExt).bottom;\r\n if (i !== 0) separate(w, i, lastLows);\r\n const lows = updateLows(lowY, i, lastLows);\r\n return [i + 1, lows];\r\n }, [0, null]);\r\n shiftChange(w);\r\n positionRoot(w);\r\n return w;\r\n};\r\n\r\n// Resolves the relative coordinate properties - relX and prelim --\r\n// to set the final, absolute x coordinate for each node. This also sets\r\n// `prelim` to 0, so that `relX` for each node is its x-coordinate relative\r\n// to its parent.\r\nconst resolveX = (w, prevSum, parentX) => {\r\n // A call to resolveX without arguments is assumed to be for the root of\r\n // the tree. This will set the root's x-coord to zero.\r\n if (typeof prevSum === 'undefined') {\r\n prevSum = -w.relX - w.prelim;\r\n parentX = 0;\r\n }\r\n const sum = prevSum + w.relX;\r\n w.relX = sum + w.prelim - parentX;\r\n w.prelim = 0;\r\n w.x = parentX + w.relX;\r\n (w.children || []).forEach(k => resolveX(k, sum, w.x));\r\n return w;\r\n};\r\n\r\n// Process shift and change for all children, to add intermediate spacing to\r\n// each child's modifier.\r\nconst shiftChange = w => {\r\n (w.children || []).reduce((acc, child) => {\r\n const [lastShiftSum, lastChangeSum] = acc;\r\n const shiftSum = lastShiftSum + child.shift;\r\n const changeSum = lastChangeSum + shiftSum + child.change;\r\n child.relX += changeSum;\r\n return [shiftSum, changeSum];\r\n }, [0, 0]);\r\n};\r\n\r\n// Separates the latest child from its previous sibling\r\n/* eslint-disable complexity */\r\nconst separate = (w, i, lows) => {\r\n const lSib = w.children[i - 1];\r\n const curSubtree = w.children[i];\r\n let rContour = lSib;\r\n let rSumMods = lSib.relX;\r\n let lContour = curSubtree;\r\n let lSumMods = curSubtree.relX;\r\n let isFirst = true;\r\n while (rContour && lContour) {\r\n if (rContour.bottom > lows.lowY) lows = lows.next;\r\n // How far to the left of the right side of rContour is the left side\r\n // of lContour? First compute the center-to-center distance, then add\r\n // the \"spacing\"\r\n const dist =\r\n (rSumMods + rContour.prelim) - (lSumMods + lContour.prelim) +\r\n rContour.xSize / 2 + lContour.xSize / 2 +\r\n rContour.spacing(lContour);\r\n if (dist > 0 || (dist < 0 && isFirst)) {\r\n lSumMods += dist;\r\n // Move subtree by changing relX.\r\n moveSubtree(curSubtree, dist);\r\n distributeExtra(w, i, lows.index, dist);\r\n }\r\n isFirst = false;\r\n // Advance highest node(s) and sum(s) of modifiers\r\n const rightBottom = rContour.bottom;\r\n const leftBottom = lContour.bottom;\r\n if (rightBottom <= leftBottom) {\r\n rContour = nextRContour(rContour);\r\n if (rContour) rSumMods += rContour.relX;\r\n }\r\n if (rightBottom >= leftBottom) {\r\n lContour = nextLContour(lContour);\r\n if (lContour) lSumMods += lContour.relX;\r\n }\r\n }\r\n // Set threads and update extreme nodes. In the first case, the\r\n // current subtree is taller than the left siblings.\r\n if (!rContour && lContour) setLThr(w, i, lContour, lSumMods);\r\n // In the next case, the left siblings are taller than the current subtree\r\n else if (rContour && !lContour) setRThr(w, i, rContour, rSumMods);\r\n};\r\n/* eslint-enable complexity */\r\n\r\n// Move subtree by changing relX.\r\nconst moveSubtree = (subtree, distance) => {\r\n subtree.relX += distance;\r\n subtree.lExtRelX += distance;\r\n subtree.rExtRelX += distance;\r\n};\r\n\r\nconst distributeExtra = (w, curSubtreeI, leftSibI, dist) => {\r\n const curSubtree = w.children[curSubtreeI];\r\n const n = curSubtreeI - leftSibI;\r\n // Are there intermediate children?\r\n if (n > 1) {\r\n const delta = dist / n;\r\n w.children[leftSibI + 1].shift += delta;\r\n curSubtree.shift -= delta;\r\n curSubtree.change -= dist - delta;\r\n }\r\n};\r\n\r\nconst nextLContour = w => {\r\n return w.hasChildren ? w.firstChild : w.lThr;\r\n};\r\n\r\nconst nextRContour = w => {\r\n return w.hasChildren ? w.lastChild : w.rThr;\r\n};\r\n\r\nconst setLThr = (w, i, lContour, lSumMods) => {\r\n const firstChild = w.firstChild;\r\n const lExt = firstChild.lExt;\r\n const curSubtree = w.children[i];\r\n lExt.lThr = lContour;\r\n // Change relX so that the sum of modifier after following thread is correct.\r\n const diff = lSumMods - lContour.relX - firstChild.lExtRelX;\r\n lExt.relX += diff;\r\n // Change preliminary x coordinate so that the node does not move.\r\n lExt.prelim -= diff;\r\n // Update extreme node and its sum of modifiers.\r\n firstChild.lExt = curSubtree.lExt;\r\n firstChild.lExtRelX = curSubtree.lExtRelX;\r\n};\r\n\r\n// Mirror image of setLThr.\r\nconst setRThr = (w, i, rContour, rSumMods) => {\r\n const curSubtree = w.children[i];\r\n const rExt = curSubtree.rExt;\r\n const lSib = w.children[i - 1];\r\n rExt.rThr = rContour;\r\n const diff = rSumMods - rContour.relX - curSubtree.rExtRelX;\r\n rExt.relX += diff;\r\n rExt.prelim -= diff;\r\n curSubtree.rExt = lSib.rExt;\r\n curSubtree.rExtRelX = lSib.rExtRelX;\r\n};\r\n\r\n// Position root between children, taking into account their modifiers\r\nconst positionRoot = w => {\r\n if (w.hasChildren) {\r\n const k0 = w.firstChild;\r\n const kf = w.lastChild;\r\n const prelim = (k0.prelim + k0.relX - k0.xSize / 2 +\r\n kf.relX + kf.prelim + kf.xSize / 2 ) / 2;\r\n Object.assign(w, {\r\n prelim,\r\n lExt: k0.lExt, lExtRelX: k0.lExtRelX,\r\n rExt: kf.rExt, rExtRelX: kf.rExtRelX,\r\n });\r\n }\r\n};\r\n\r\n// Make/maintain a linked list of the indexes of left siblings and their\r\n// lowest vertical coordinate.\r\nconst updateLows = (lowY, index, lastLows) => {\r\n // Remove siblings that are hidden by the new subtree.\r\n while (lastLows !== null && lowY >= lastLows.lowY)\r\n lastLows = lastLows.next;\r\n // Prepend the new subtree.\r\n return {\r\n lowY,\r\n index,\r\n next: lastLows,\r\n };\r\n};\n\n\n// WEBPACK FOOTER //\n// ./src/utils/flextree.js","/* eslint-disable */\r\nimport { tree } from \"d3\";\r\nimport flextree from \"./flextree\";\r\nimport cloneDeep from 'lodash/cloneDeep';\r\nimport { layout } from \"dagre\";\r\nimport { loopOverHierarchy } from \"./utilities\";\r\n\r\nexport default function getMultiTree(hierarchies) {\r\n let hierarchies_copy = cloneDeep(hierarchies);\r\n const Layout = processTree(hierarchies_copy);\r\n return Layout;\r\n}\r\n\r\nfunction processTree(hierarchies) {\r\n let treeLayout = {};\r\n do {\r\n let subtrees = findAllSubtrees(hierarchies);\r\n let currentLayout = [...subtrees.right, ...subtrees.down, ...subtrees.mix];\r\n // console.log(currentLayout, \"current\");\r\n // console.log(treeLayout, \"currentT\");\r\n let mergedCL = currentLayout.reduce((acc, obj) => ({...acc, ...obj}), {});\r\n if (hasProperties(treeLayout)) {\r\n const sharedNodes = getSharedKeys(treeLayout, mergedCL);\r\n // console.log(sharedNodes)\r\n for (let key of sharedNodes) {\r\n const nodeL = mergedCL[key];\r\n const childrenRect = {};\r\n for (let keyPre in treeLayout) {\r\n const nodeLPre = treeLayout[keyPre];\r\n if (keyPre.startsWith(key)) {\r\n childrenRect[keyPre] = nodeLPre; \r\n }\r\n }\r\n const oldBoundingBox = findBoundingBox(childrenRect);\r\n // debugger\r\n // console.log(oldBoundingBox)\r\n // console.log(nodeL)\r\n const differenceX1 = nodeL[0] - oldBoundingBox.x;\r\n const differenceY1 = nodeL[1] - oldBoundingBox.y;\r\n for (let keyPre in treeLayout) {\r\n const nodeLPre = treeLayout[keyPre];\r\n if (keyPre.startsWith(key)) {\r\n nodeLPre[0] += differenceX1;\r\n nodeLPre[1] += differenceY1;\r\n }\r\n }\r\n }\r\n copyNonDuplicateProperties(treeLayout, mergedCL);\r\n } else {\r\n treeLayout = cloneDeep(mergedCL);\r\n }\r\n } while ('children' in hierarchies);\r\n // console.log(treeLayout, \"layout\")\r\n return treeLayout;\r\n function hasProperties(obj) {\r\n for (let key in obj) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n function getSharedKeys(obj1, obj2) {\r\n let sharedKeys = [];\r\n \r\n for (let key in obj1) {\r\n if (obj1.hasOwnProperty(key) && obj2.hasOwnProperty(key)) {\r\n sharedKeys.push(key);\r\n }\r\n }\r\n \r\n return sharedKeys;\r\n }\r\n function copyNonDuplicateProperties(obj1, obj2) {\r\n for (let key in obj2) {\r\n if (obj2.hasOwnProperty(key) && !obj1.hasOwnProperty(key)) {\r\n obj1[key] = obj2[key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n function findAllSubtrees(root) {\r\n let parentNodesRight = new Set();\r\n let parentNodesDown = new Set();\r\n const spacing = 100;\r\n setParents(root, null);\r\n dfs(root, parentNodesRight, parentNodesDown);\r\n const parentNodesMix = new Set();\r\n for (const item of parentNodesRight) {\r\n if (parentNodesDown.has(item)) {\r\n parentNodesMix.add(item);\r\n parentNodesRight.delete(item);\r\n parentNodesDown.delete(item);\r\n }\r\n }\r\n const result = {\r\n right: Array.from(parentNodesRight).map(node => {\r\n let clone = cloneDeep(node);\r\n delete node.children;\r\n removeDownChildren(clone);\r\n if (node.direction===\"down\") {\r\n const clonex = clone.size[0];\r\n clone.size[0] = clone.size[1];\r\n clone.size[1] = clonex;\r\n }\r\n loopOverHierarchy(clone, d => {\r\n if (Array.isArray(d.size)) {\r\n d.size[1] += spacing;\r\n }\r\n });\r\n const flexLayout = flextree({ spacing: 80 });\r\n const tree = flexLayout.hierarchy(clone);\r\n var treeData = flexLayout(tree);\r\n treeData.each(d => {\r\n const x = d.x;\r\n d.x = d.y;\r\n d.y = x;\r\n });\r\n var treeLayout = {};\r\n treeData.each(d => {\r\n treeLayout[d.data.oName] = [d.x, d.y - d.data.size[0] / 2, d.data.size[1], d.data.size[0] * 1];\r\n });\r\n const newBoundingbox = findBoundingBox(treeLayout);\r\n node._size = [newBoundingbox.width, newBoundingbox.height];\r\n node.size = [newBoundingbox.height, newBoundingbox.width];\r\n // console.log(treeLayout, \"test\");\r\n return treeLayout;\r\n }),\r\n down: Array.from(parentNodesDown).map(node => {\r\n let clone = cloneDeep(node);\r\n delete node.children;\r\n removeRightChildren(clone);\r\n loopOverHierarchy(clone, d => {\r\n if (Array.isArray(d.size)) {\r\n if (!d._size) d._size = d.size.slice();\r\n d.size = [d.size[1], d.size[0]];\r\n }\r\n });\r\n loopOverHierarchy(clone, d => {\r\n if (Array.isArray(d.size)) {\r\n d.size[1] += spacing;\r\n }\r\n });\r\n if (node.direction===\"down\") {\r\n const clonex = clone.size[0];\r\n clone.size[0] = clone.size[1];\r\n clone.size[1] = clonex;\r\n }\r\n const flexLayout = flextree({ spacing: 120 });\r\n const tree = flexLayout.hierarchy(clone);\r\n var treeData = flexLayout(tree);\r\n var treeLayout = {};\r\n treeData.each(d => {\r\n treeLayout[d.data.oName] = [d.x - d.data.size[0] / 2, d.y, d.data.size[0] * 1, d.data.size[1]];\r\n });\r\n const newBoundingbox = findBoundingBox(treeLayout);\r\n node._size = [newBoundingbox.width, newBoundingbox.height];\r\n node.size = [newBoundingbox.height, newBoundingbox.width];\r\n \r\n return treeLayout;\r\n }),\r\n mix: Array.from(parentNodesMix).map(node => {\r\n let cloneRight = cloneDeep(node);\r\n delete node.children;\r\n let cloneDown = cloneDeep(cloneRight);\r\n loopOverHierarchy(cloneDown, d => {\r\n if (Array.isArray(d.size)) {\r\n if (!d._size) d._size = d.size.slice();\r\n d.size = [d.size[1], d.size[0]];\r\n }\r\n });\r\n loopOverHierarchy(cloneDown, d => {\r\n if (Array.isArray(d.size)) {\r\n d.size[1] += spacing;\r\n }\r\n });\r\n loopOverHierarchy(cloneRight, d => {\r\n if (Array.isArray(d.size)) {\r\n d.size[1] += spacing;\r\n }\r\n });\r\n removeRightChildren(cloneDown);\r\n removeDownChildren(cloneRight);\r\n const flexLayoutDown = flextree({ spacing: 120 });\r\n const flexLayoutRight = flextree({ spacing: 80 });\r\n const treeDown = flexLayoutDown.hierarchy(cloneDown);\r\n const treeRight = flexLayoutRight.hierarchy(cloneRight);\r\n // if (node.direction===\"right\") {\r\n // const cloneDownx = cloneDown.size[0];\r\n // cloneDown.size[0] = cloneDown.size[1];\r\n // cloneDown.size[1] = cloneDownx;\r\n // }\r\n if (node.direction===\"down\") {\r\n const cloneRightx = cloneRight.size[0];\r\n cloneRight.size[0] = cloneRight.size[1];\r\n cloneRight.size[1] = cloneRightx;\r\n const cloneDownx = cloneDown.size[0];\r\n cloneDown.size[0] = cloneDown.size[1];\r\n cloneDown.size[1] = cloneDownx;\r\n }\r\n var treeDataDown = flexLayoutDown(treeDown);\r\n var treeDataRight = flexLayoutDown(treeRight);\r\n treeDataRight.each(d => {\r\n const x = d.x;\r\n d.x = d.y;\r\n d.y = x;\r\n });\r\n var treeLayoutDown = {};\r\n treeDataDown.each(d => {\r\n treeLayoutDown[d.data.oName] = [d.x - d.data.size[0] / 2, d.y, d.data.size[0], d.data.size[1] * 1];\r\n });\r\n var treeLayoutRight = {};\r\n treeDataRight.each(d => {\r\n treeLayoutRight[d.data.oName] = [d.x, d.y - d.data.size[0] / 2, d.data.size[1], d.data.size[0] * 1];\r\n });\r\n const differenceX = treeLayoutRight[node.oName][0] - treeLayoutDown[node.oName][0];\r\n const differenceY = treeLayoutRight[node.oName][1] - treeLayoutDown[node.oName][1];\r\n for (const key in treeLayoutDown) {\r\n treeLayoutDown[key][0] += differenceX;\r\n treeLayoutDown[key][1] += differenceY;\r\n }\r\n const mergedLayout = { ...treeLayoutRight, ...treeLayoutDown };\r\n const newBoundingbox = findBoundingBox(mergedLayout);\r\n node._size = [newBoundingbox.width, newBoundingbox.height];\r\n node.size = [newBoundingbox.height, newBoundingbox.width];\r\n // console.log(newBoundingbox, \"test\");\r\n return mergedLayout;\r\n }),\r\n };\r\n return result;\r\n\r\n function setParents(node, parent) {\r\n node.parent = parent;\r\n if (node.children) {\r\n node.children.forEach(child => setParents(child, node));\r\n }\r\n }\r\n\r\n function dfs(node, parentNodesRight, parentNodesDown) {\r\n let isSameDirection = true;\r\n \r\n checkProperties(node);\r\n \r\n if (isSameDirection) {\r\n if (node.direction === 'right') {\r\n if (node.parent!==null) {\r\n parentNodesRight.add(node.parent);\r\n } else {\r\n parentNodesRight.add(node);\r\n }\r\n } else if (node.direction === 'down') {\r\n if (node.parent!==null) {\r\n parentNodesDown.add(node.parent);\r\n } else {\r\n parentNodesDown.add(node.parent);\r\n }\r\n }\r\n return true;\r\n }\r\n \r\n if (node.children) {\r\n node.children.forEach(child => dfs(child, parentNodesRight, parentNodesDown));\r\n }\r\n \r\n return false;\r\n \r\n function checkProperties(currentNode) {\r\n if (currentNode.direction !== node.direction) {\r\n isSameDirection = false;\r\n }\r\n \r\n if (currentNode.children) {\r\n currentNode.children.forEach(checkProperties);\r\n }\r\n }\r\n }\r\n function removeRightChildren(node) {\r\n if (node.children) {\r\n node.children = node.children.filter(child => child.direction !== 'right');\r\n node.children.forEach(removeRightChildren);\r\n }\r\n }\r\n \r\n function removeDownChildren(node) {\r\n if (node.children) {\r\n node.children = node.children.filter(child => child.direction !== 'down');\r\n node.children.forEach(removeDownChildren);\r\n }\r\n }\r\n}\r\n\r\nfunction findBoundingBoxCentral(rectanglesObj) {\r\n let minX = Infinity;\r\n let minY = Infinity;\r\n let maxX = -Infinity;\r\n let maxY = -Infinity;\r\n\r\n for (let key in rectanglesObj) {\r\n let rectangle = rectanglesObj[key];\r\n let centerX = rectangle[0];\r\n let centerY = rectangle[1];\r\n let width = rectangle[2];\r\n let height = rectangle[3];\r\n\r\n let x1 = centerX - width / 2;\r\n let y1 = centerY - height / 2;\r\n let x2 = centerX + width / 2;\r\n let y2 = centerY + height / 2;\r\n\r\n minX = Math.min(minX, x1);\r\n minY = Math.min(minY, y1);\r\n maxX = Math.max(maxX, x2);\r\n maxY = Math.max(maxY, y2);\r\n }\r\n\r\n return {\r\n x: (minX + maxX) / 2,\r\n y: (minY + maxY) / 2,\r\n width: maxX - minX,\r\n height: maxY - minY\r\n };\r\n}\r\n\r\nfunction findBoundingBox(rectanglesObj) {\r\n let minX = Infinity;\r\n let minY = Infinity;\r\n let maxX = -Infinity;\r\n let maxY = -Infinity;\r\n\r\n for (let key in rectanglesObj) {\r\n let rectangle = rectanglesObj[key];\r\n let rectX = rectangle[0];\r\n let rectY = rectangle[1];\r\n let width = rectangle[2];\r\n let height = rectangle[3];\r\n\r\n let x1 = rectX;\r\n let y1 = rectY;\r\n let x2 = rectX + width;\r\n let y2 = rectY + height;\r\n\r\n minX = Math.min(minX, x1);\r\n minY = Math.min(minY, y1);\r\n maxX = Math.max(maxX, x2);\r\n maxY = Math.max(maxY, y2);\r\n }\r\n\r\n return {\r\n x: minX,\r\n y: minY,\r\n width: maxX - minX,\r\n height: maxY - minY\r\n };\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/utils/multitree.js","/* eslint-disable */\r\nimport { drawBox } from \"./drawBox\";\r\nimport { drawLines, updateLines, updateLinesDashArrow } from \"./drawlines\";\r\nimport { getBoxLayout, getTreeLayout } from \"./layout\";\r\nimport { arraysAreEqual, getHierarchy, findChildrenAtSameLevel, autoTranslate } from \"./utilities\";\r\nimport flextree from \"./flextree\";\r\nimport getMultiTree from \"./multitree\";\r\nimport * as d3 from \"d3\";\r\n\r\nexport function handleClick(fnS, body, body_num, sourceid, color, clicked, direction) {\r\n console.log(direction, \"direction\");\r\n const transitionTime1 = 920;\r\n const transitionTime2 = 720;\r\n const transitionTime3 = 200;\r\n const openFlag = d3.select(\"#boxid\" + String(body_num)).select(\"#\" + String(sourceid));\r\n // console.log(openFlag.attr(\"data-opened\"));\r\n if (clicked || openFlag.attr(\"data-opened\") === \"true\") {\r\n // openFlag.attr(\"data-opened\", \"false\");\r\n d3.select(\"#boxid\" + String(body_num)).selectAll(\"[data-opened='true']\").attr(\"data-opened\", \"false\");\r\n d3.selectAll('.drawer').each(function(d,i){\r\n let GID = d3.select(this).attr('id').replace('line', '').replace('boxid', '');\r\n const deleteLabel = String(body_num) + '-' + String(body);\r\n const deleteParts = deleteLabel.split('-');\r\n // delete edges\r\n if (GID.split('_').length === 2){\r\n let deleteFlag = false;\r\n const node1 = GID.split('_')[0];\r\n const node2 = GID.split('_')[1];\r\n const node1Parts = node1.split('-');\r\n const node2Parts = node2.split('-');\r\n if (arraysAreEqual(node1Parts, deleteParts)) {\r\n d3.select(this)\r\n .transition('transition1') // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n deleteFlag = true;\r\n } else if (node1Parts.length > deleteParts.length) {\r\n const firstNParts = node1Parts.slice(0, deleteParts.length);\r\n if (JSON.stringify(firstNParts) === JSON.stringify(deleteParts)) {\r\n d3.select(this)\r\n .transition('transition2') // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n deleteFlag = true;\r\n }\r\n }\r\n if (!deleteFlag) {\r\n if (arraysAreEqual(node2Parts, deleteParts)) {\r\n d3.select(this)\r\n .transition('transition3') // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n } else if (node2Parts.length > deleteParts.length) {\r\n const firstNParts = node2Parts.slice(0, deleteParts.length);\r\n if (JSON.stringify(firstNParts) === JSON.stringify(deleteParts)) {\r\n d3.select(this)\r\n .transition('transition4') // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n }\r\n }\r\n }\r\n } else { // delete nodes\r\n const GIDParts = GID.split('-');\r\n if (arraysAreEqual(GIDParts, deleteParts)) {\r\n d3.select(this)\r\n .transition('transition5') // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n } else if (GIDParts.length > deleteParts.length) {\r\n const firstNParts = GIDParts.slice(0, deleteParts.length);\r\n if (JSON.stringify(firstNParts) === JSON.stringify(deleteParts)) {\r\n d3.select(this)\r\n .transition('transition6') // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n }\r\n }\r\n }\r\n // console.log(GID);\r\n })\r\n return;\r\n }\r\n body_num = String(body_num);\r\n const layout = getBoxLayout(fnS[body-1]);\r\n const spaceX = 80;\r\n const spaceY = 0;\r\n const padding = 90;\r\n const newLabel = String(body_num) + '-' + String(body); // new body_num\r\n drawBox(layout, fnS, newLabel, direction);\r\n var hierarchies = getHierarchy(spaceY);\r\n var treeLayout = {};\r\n treeLayout = getMultiTree(hierarchies);\r\n // console.log(hierarchies, \"hierarchies\");\r\n // const flexLayout = flextree({ spacing: spaceX });\r\n // const tree = flexLayout.hierarchy(hierarchies);\r\n // var treeData = flexLayout(tree);\r\n // treeData.each(d => {\r\n // const x = d.x;\r\n // d.x = d.y;\r\n // d.y = x;\r\n // });\r\n // var treeLayout = {};\r\n // treeData.each(d => {\r\n // treeLayout[d.data.oName] = [d.x, d.y, d.data.size[1], d.data.size[0] * 1];\r\n // });\r\n const nodeNames = Object.keys(treeLayout);\r\n let differenceX = treeLayout[newLabel][0] - treeLayout[body_num][0];\r\n let differenceY = treeLayout[newLabel][1] - (treeLayout[body_num][1]);\r\n \r\n const locationTransform = [differenceX, differenceY];\r\n drawLines(sourceid, \"frame\" + newLabel, locationTransform, body_num, newLabel, color, direction);\r\n // console.log(locationTransform);\r\n d3.selectAll('.drawer').each(function(d, i){\r\n let nodeID = d3.select(this).attr('id').replace(\"boxid\", \"\");\r\n if (nodeID.split('_').length !==2) {\r\n if (nodeID === newLabel) {\r\n d3.select(this)\r\n .attr(\"transform\", `translate(${treeLayout[nodeID][0] + padding},${treeLayout[nodeID][1] + padding *7.5})`)\r\n .attr(\"opacity\", 0);\r\n d3.select(this)\r\n .transition('transition7')\r\n .duration(transitionTime1)\r\n .style(\"opacity\", 1);\r\n } else {\r\n d3.select(this)\r\n .transition('transition8')\r\n .duration(transitionTime2)\r\n .attr(\"transform\", `translate(${treeLayout[nodeID][0] + padding},${treeLayout[nodeID][1] + padding *7.5})`);\r\n }\r\n }\r\n })\r\n d3.selectAll('.drawer').each(function(d, i){\r\n let nodeID = d3.select(this).attr('id').replace(\"boxid\", \"\");\r\n if (nodeID.split('_').length === 2){\r\n if (d3.select(this).attr(\"line-type\") !== \"dashed\") {\r\n const lineID = nodeID;\r\n const sourceGID = nodeID.replace(\"line\", \"\").split('_')[0];\r\n const targetGID = nodeID.replace(\"line\", \"\").split('_')[1];\r\n const sourceTransString = d3.select(\"#boxid\" + sourceGID).attr('transform');\r\n const targetTransString = d3.select(\"#boxid\" + targetGID).attr('transform');\r\n if (sourceTransString!==null && sourceGID != newLabel){\r\n const translatePart = sourceTransString.slice(10, -1);\r\n const translateValues = translatePart.split(\",\");\r\n const transformArray = translateValues.map(Number);\r\n let newTransArray = [];\r\n newTransArray = [treeLayout[sourceGID][0] + padding, treeLayout[sourceGID][1] + padding *7.5];\r\n const locationTransformForThis = [treeLayout[targetGID][0] - treeLayout[sourceGID][0], treeLayout[targetGID][1] - (treeLayout[sourceGID][1])];\r\n if (transformArray[1]!==newTransArray[1] || transformArray[0]!==newTransArray[0]) {\r\n const a01 = d3.select(this).attr('sourceid');\r\n const a02 = d3.select(this).attr('targetid');\r\n const a04 = d3.select(this).attr('body_num_source');\r\n const a05 = d3.select(this).attr('body_num_target');\r\n const a06 = d3.select(this).attr('color');\r\n const currentDirection = d3.select(\"#boxid\" + a05).attr(\"direction\");\r\n updateLines(a01, a02, locationTransformForThis, a04, a05, a06, lineID, currentDirection);\r\n }\r\n }\r\n if (targetTransString!==null && targetGID != newLabel){\r\n const translatePart = targetTransString.slice(10, -1);\r\n const translateValues = translatePart.split(\",\");\r\n const transformArray = translateValues.map(Number);\r\n let newTransArray = [];\r\n const locationTransformForThis = [treeLayout[targetGID][0] - treeLayout[sourceGID][0], treeLayout[targetGID][1] - (treeLayout[sourceGID][1])];\r\n newTransArray = [treeLayout[targetGID][0] + padding, treeLayout[targetGID][1] + padding *7.5 ];\r\n if (transformArray[1]!==newTransArray[1] || transformArray[0]!==newTransArray[0]) {\r\n const a01 = d3.select(this).attr('sourceid');\r\n const a02 = d3.select(this).attr('targetid');\r\n const a04 = d3.select(this).attr('body_num_source');\r\n const a05 = d3.select(this).attr('body_num_target');\r\n const a06 = d3.select(this).attr('color');\r\n const currentDirection = d3.select(\"#boxid\" + a05).attr(\"direction\");\r\n updateLines(a01, a02, locationTransformForThis, a04, a05, a06, lineID, currentDirection);\r\n }\r\n }\r\n \r\n nodeID = nodeID.replace(\"line\", \"\");\r\n nodeID = nodeID.split('_')[0];\r\n d3.select(this)\r\n .attr(\"transform\", `translate(${treeLayout[nodeID][0] + padding},${treeLayout[nodeID][1] + padding *7.5 })`)\r\n .style(\"opacity\", 0.38);\r\n } else {\r\n const lineID = nodeID;\r\n const sourceGID = nodeID.replace(\"line\", \"\").split('_')[0];\r\n const targetGID = nodeID.replace(\"line\", \"\").split('_')[1];\r\n const sourceTransString = d3.select(\"#boxid\" + sourceGID).attr('transform');\r\n const targetTransString = d3.select(\"#boxid\" + targetGID).attr('transform');\r\n if (sourceTransString!==null && sourceGID != newLabel) {\r\n const translatePart = sourceTransString.slice(10, -1);\r\n const translateValues = translatePart.split(\",\");\r\n const transformArray = translateValues.map(Number);\r\n let newTransArray = [];\r\n newTransArray = [treeLayout[sourceGID][0] + padding, treeLayout[sourceGID][1] + padding *7.5];\r\n if (transformArray[1]!==newTransArray[1] || transformArray[0]!==newTransArray[0]) {\r\n const line_label = d3.select(this).select('text').text();\r\n updateLinesDashArrow(treeLayout, sourceGID, targetGID, \"black\", line_label, lineID);\r\n }\r\n }\r\n if (targetTransString!==null && targetGID != newLabel){\r\n const translatePart = targetTransString.slice(10, -1);\r\n const translateValues = translatePart.split(\",\");\r\n const transformArray = translateValues.map(Number);\r\n let newTransArray = [];\r\n newTransArray = [treeLayout[targetGID][0] + padding, treeLayout[targetGID][1] + padding *7.5];\r\n if (transformArray[1]!==newTransArray[1] || transformArray[0]!==newTransArray[0]) {\r\n const line_label = d3.select(this).select('text').text();\r\n updateLinesDashArrow(treeLayout, sourceGID, targetGID, \"black\", line_label, lineID);\r\n }\r\n }\r\n nodeID = nodeID.replace(\"line\", \"\");\r\n nodeID = nodeID.split('_')[0];\r\n d3.select(this)\r\n .transition('transition9')\r\n .duration(720)\r\n .attr(\"transform\", `translate(${treeLayout[nodeID][0] + padding},${treeLayout[nodeID][1] + padding *7.5})`);\r\n }\r\n }\r\n })\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/utils/click.js","/* eslint-disable */\r\nimport { drawBox } from \"./drawBox\";\r\nimport { drawLines, updateLines, drawLinesDashArrow, updateLinesDashArrow } from \"./drawlines\";\r\nimport { getBoxLayout, getTreeLayout } from \"./layout\";\r\nimport { arraysAreEqual, findChildrenAtSameLevel, autoTranslate, getHierarchy } from \"./utilities\";\r\nimport * as flextree from \"d3-flextree\"\r\nimport getMultiTree from \"./multitree\";\r\nimport * as d3 from \"d3\";\r\n\r\nexport function handleClickCond(fnS, cond, body_if, body_else, body_num, sourceid, color, clicked, direction) {\r\n const transitionTime1 = 920;\r\n const transitionTime2 = 720;\r\n const transitionTime3 = 200;\r\n const openFlag = d3.select(\"#boxid\" + String(body_num)).select(\"#\" + String(sourceid));\r\n if (clicked || openFlag.attr(\"data-opened\") === \"true\") {\r\n // openFlag.attr(\"data-opened\", \"false\");\r\n d3.select(\"#boxid\" + String(body_num)).selectAll(\"[data-opened='true']\").attr(\"data-opened\", \"false\");\r\n d3.selectAll('.drawer').each(function(d,i){\r\n let GID = d3.select(this).attr('id').replace('line', '').replace('boxid', '');\r\n const deleteLabel = String(body_num) + '-' + String(cond);\r\n const deleteParts = deleteLabel.split('-');\r\n // delete edges\r\n if (GID.split('_').length === 2){\r\n let deleteFlag = false;\r\n const node1 = GID.split('_')[0];\r\n const node2 = GID.split('_')[1];\r\n const node1Parts = node1.split('-');\r\n const node2Parts = node2.split('-');\r\n if (arraysAreEqual(node1Parts, deleteParts)) {\r\n d3.select(this)\r\n .transition() // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n deleteFlag = true;\r\n } else if (node1Parts.length > deleteParts.length) {\r\n const firstNParts = node1Parts.slice(0, deleteParts.length);\r\n if (JSON.stringify(firstNParts) === JSON.stringify(deleteParts)) {\r\n d3.select(this)\r\n .transition() // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n deleteFlag = true;\r\n }\r\n }\r\n if (!deleteFlag) {\r\n if (arraysAreEqual(node2Parts, deleteParts)) {\r\n d3.select(this)\r\n .transition() // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n } else if (node2Parts.length > deleteParts.length) {\r\n const firstNParts = node2Parts.slice(0, deleteParts.length);\r\n if (JSON.stringify(firstNParts) === JSON.stringify(deleteParts)) {\r\n d3.select(this)\r\n .transition() // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n }\r\n }\r\n }\r\n } else { // delete nodes\r\n const GIDParts = GID.split('-');\r\n if (arraysAreEqual(GIDParts, deleteParts)) {\r\n d3.select(this)\r\n .transition() // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n } else if (GIDParts.length > deleteParts.length) {\r\n const firstNParts = GIDParts.slice(0, deleteParts.length);\r\n if (JSON.stringify(firstNParts) === JSON.stringify(deleteParts)) {\r\n d3.select(this)\r\n .transition() // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n }\r\n }\r\n }\r\n // console.log(GID);\r\n })\r\n return;\r\n }\r\n body_num = String(body_num);\r\n let layoutElse;\r\n const layoutCond = getBoxLayout(fnS[cond-1]);\r\n const layoutIf = getBoxLayout(fnS[body_if-1]);\r\n if (body_else!==undefined) {\r\n layoutElse = getBoxLayout(fnS[body_else-1]);\r\n }\r\n const spaceX = 80;\r\n const spaceY = 0;\r\n const padding = 90;\r\n const newLabelCond = String(body_num) + '-' + String(cond); // new body_num for Cond\r\n const newLabelIf = String(newLabelCond) + '-' + String(body_if); // new body_num for if\r\n const newLabelElse = String(newLabelCond) + '-' + String(body_else); // new body_num for else\r\n drawBox(layoutCond, fnS, newLabelCond, direction);\r\n drawBox(layoutIf, fnS, newLabelIf, direction);\r\n if (body_else!==undefined) {\r\n drawBox(layoutElse, fnS, newLabelElse, direction);\r\n }\r\n var hierarchies = getHierarchy(spaceY);\r\n // const flexLayout = flextree.flextree({ spacing: spaceX });\r\n // console.log(hierarchies);\r\n // const tree = flexLayout.hierarchy(hierarchies);\r\n // var treeData = flexLayout(tree);\r\n // treeData.each(d => {\r\n // const x = d.x;\r\n // d.x = d.y;\r\n // d.y = x;\r\n // });\r\n // var treeLayout = {};\r\n // treeData.each(d => {\r\n // treeLayout[d.data.oName] = [d.x, d.y, d.data.size[1], d.data.size[0] * 1];\r\n // });\r\n var treeLayout = {};\r\n treeLayout = getMultiTree(hierarchies);\r\n const nodeNames = Object.keys(treeLayout);\r\n\r\n console.log(treeLayout);\r\n console.log()\r\n let differenceX = treeLayout[newLabelCond][0] - treeLayout[body_num][0];\r\n let differenceY = treeLayout[newLabelCond][1] - (treeLayout[body_num][1]);\r\n \r\n const locationTransform = [differenceX, differenceY];\r\n drawLines(sourceid, \"frame\" + newLabelCond, locationTransform, body_num, newLabelCond, color, direction);\r\n drawLinesDashArrow(treeLayout, newLabelCond, newLabelIf, \"black\", \"TRUE\", direction);\r\n if (layoutElse!==undefined) {\r\n drawLinesDashArrow(treeLayout, newLabelCond, newLabelElse, \"black\", \"FALSE\", direction);\r\n }\r\n \r\n // console.log(locationTransform);\r\n d3.selectAll('.drawer').each(function(d, i){\r\n let nodeID = d3.select(this).attr('id').replace(\"boxid\", \"\");\r\n if (nodeID.split('_').length === 2){\r\n if (d3.select(this).attr(\"line-type\") !== \"dashed\") {\r\n const lineID = nodeID;\r\n const sourceGID = nodeID.replace(\"line\", \"\").split('_')[0];\r\n const targetGID = nodeID.replace(\"line\", \"\").split('_')[1];\r\n const sourceTransString = d3.select(\"#boxid\" + sourceGID).attr('transform');\r\n const targetTransString = d3.select(\"#boxid\" + targetGID).attr('transform');\r\n if (sourceTransString!==null && sourceGID != newLabelCond){\r\n const translatePart = sourceTransString.slice(10, -1);\r\n const translateValues = translatePart.split(\",\");\r\n const transformArray = translateValues.map(Number);\r\n let newTransArray = [];\r\n newTransArray = [treeLayout[sourceGID][0] + padding, treeLayout[sourceGID][1] + padding *7.5];\r\n const locationTransformForThis = [treeLayout[targetGID][0] - treeLayout[sourceGID][0], treeLayout[targetGID][1] - (treeLayout[sourceGID][1] )];\r\n if (transformArray[1]!==newTransArray[1] || transformArray[0]!==newTransArray[0]) {\r\n const a01 = d3.select(this).attr('sourceid');\r\n const a02 = d3.select(this).attr('targetid');\r\n let a03 = d3.select(this).attr('locationTransform').split(',');\r\n const a04 = d3.select(this).attr('body_num_source');\r\n const a05 = d3.select(this).attr('body_num_target');\r\n const a06 = d3.select(this).attr('color');\r\n // const new03 = [Number(a03[0]) + newTransArray[0] - transformArray[0], Number(a03[1]) + newTransArray[1] - transformArray[1]];\r\n // d3.select(\"#\" + lineID).selectAll('*').remove();\r\n const currentDirection = d3.select(\"#boxid\" + a05).attr(\"direction\");\r\n updateLines(a01, a02, locationTransformForThis, a04, a05, a06, lineID, currentDirection);\r\n }\r\n }\r\n if (targetTransString!==null && targetGID != newLabelCond){\r\n const translatePart = targetTransString.slice(10, -1);\r\n const translateValues = translatePart.split(\",\");\r\n const transformArray = translateValues.map(Number);\r\n let newTransArray = [];\r\n newTransArray = [treeLayout[targetGID][0] + padding, treeLayout[targetGID][1] + padding *7.5 ];\r\n const locationTransformForThis = [treeLayout[targetGID][0] - treeLayout[sourceGID][0], treeLayout[targetGID][1] - (treeLayout[sourceGID][1])];\r\n if (transformArray[1]!==newTransArray[1] || transformArray[0]!==newTransArray[0]) {\r\n const a01 = d3.select(this).attr('sourceid');\r\n const a02 = d3.select(this).attr('targetid');\r\n let a03 = d3.select(this).attr('locationTransform').split(',');\r\n const a04 = d3.select(this).attr('body_num_source');\r\n const a05 = d3.select(this).attr('body_num_target');\r\n const a06 = d3.select(this).attr('color');\r\n // const new03 = [Number(a03[0]) + newTransArray[0] - transformArray[0], Number(a03[1]) + newTransArray[1] - transformArray[1]];\r\n // d3.select(\"#\" + lineID).selectAll('*').remove();\r\n const currentDirection = d3.select(\"#boxid\" + a05).attr(\"direction\");\r\n updateLines(a01, a02, locationTransformForThis, a04, a05, a06, lineID, currentDirection);\r\n }\r\n }\r\n \r\n nodeID = nodeID.replace(\"line\", \"\");\r\n nodeID = nodeID.split('_')[0];\r\n d3.select(this)\r\n .attr(\"transform\", `translate(${treeLayout[nodeID][0] + padding},${treeLayout[nodeID][1] + padding *7.5})`)\r\n .style(\"opacity\", 0.38);\r\n } else {\r\n const lineID = nodeID;\r\n const sourceGID = nodeID.replace(\"line\", \"\").split('_')[0];\r\n const targetGID = nodeID.replace(\"line\", \"\").split('_')[1];\r\n const sourceTransString = d3.select(\"#boxid\" + sourceGID).attr('transform');\r\n const targetTransString = d3.select(\"#boxid\" + targetGID).attr('transform');\r\n if (sourceTransString!==null && sourceGID != newLabelCond) {\r\n const translatePart = sourceTransString.slice(10, -1);\r\n const translateValues = translatePart.split(\",\");\r\n const transformArray = translateValues.map(Number);\r\n let newTransArray = [];\r\n newTransArray = [treeLayout[sourceGID][0] + padding, treeLayout[sourceGID][1] + padding *7.5 ];\r\n if (transformArray[1]!==newTransArray[1] || transformArray[0]!==newTransArray[0]) {\r\n const line_label = d3.select(this).select('text').text();\r\n const currentDirection = d3.select(\"#boxid\" + targetGID).attr(\"direction\");\r\n updateLinesDashArrow(treeLayout, sourceGID, targetGID, \"black\", line_label, lineID, currentDirection);\r\n }\r\n }\r\n if (targetTransString!==null && targetGID != newLabelCond){\r\n const translatePart = targetTransString.slice(10, -1);\r\n const translateValues = translatePart.split(\",\");\r\n const transformArray = translateValues.map(Number);\r\n let newTransArray = [];\r\n newTransArray = [treeLayout[targetGID][0] + padding, treeLayout[targetGID][1] + padding *7.5 ];\r\n if (transformArray[1]!==newTransArray[1] || transformArray[0]!==newTransArray[0]) {\r\n const line_label = d3.select(this).select('text').text();\r\n const currentDirection = d3.select(\"#boxid\" + targetGID).attr(\"direction\");\r\n updateLinesDashArrow(treeLayout, sourceGID, targetGID, \"black\", line_label, lineID, currentDirection);\r\n }\r\n }\r\n nodeID = nodeID.replace(\"line\", \"\");\r\n nodeID = nodeID.split('_')[0];\r\n d3.select(this)\r\n // .transition()\r\n // .duration(720)\r\n .attr(\"transform\", `translate(${treeLayout[nodeID][0] + padding},${treeLayout[nodeID][1] + padding *7.5 })`);\r\n }\r\n } else {\r\n if (nodeID === newLabelCond || nodeID === newLabelElse || nodeID === newLabelIf) {\r\n d3.select(this)\r\n .attr(\"transform\", `translate(${treeLayout[nodeID][0] + padding},${treeLayout[nodeID][1] + padding *7.5 })`)\r\n .attr(\"opacity\", 0);\r\n d3.select(this)\r\n .transition()\r\n .duration(transitionTime1)\r\n .style(\"opacity\", 1);\r\n } else {\r\n d3.select(this)\r\n .transition()\r\n .duration(transitionTime2)\r\n .attr(\"transform\", `translate(${treeLayout[nodeID][0] + padding},${treeLayout[nodeID][1] + padding *7.5 })`);\r\n }\r\n }\r\n }\r\n )\r\n // autoTranslate();\r\n}\r\n\r\nexport function handleClickLoop(fnS, cond, pre, body, post, body_num, sourceid, color, clicked, direction) {\r\n const transitionTime1 = 920;\r\n const transitionTime2 = 720;\r\n const transitionTime3 = 200;\r\n const openFlag = d3.select(\"#boxid\" + String(body_num)).select(\"#\" + String(sourceid));\r\n if (clicked || openFlag.attr(\"data-opened\") === \"true\") {\r\n // openFlag.attr(\"data-opened\", \"false\");\r\n d3.select(\"#boxid\" + String(body_num)).selectAll(\"[data-opened='true']\").attr(\"data-opened\", \"false\");\r\n d3.selectAll('.drawer').each(function(d,i){\r\n let GID = d3.select(this).attr('id').replace('line', '').replace('boxid', '');\r\n const deleteLabel = String(body_num) + '-' + String(cond);\r\n const deleteParts = deleteLabel.split('-');\r\n // delete edges\r\n if (GID.split('_').length === 2){\r\n let deleteFlag = false;\r\n const node1 = GID.split('_')[0];\r\n const node2 = GID.split('_')[1];\r\n const node1Parts = node1.split('-');\r\n const node2Parts = node2.split('-');\r\n if (arraysAreEqual(node1Parts, deleteParts)) {\r\n d3.select(this)\r\n .transition() // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n deleteFlag = true;\r\n } else if (node1Parts.length > deleteParts.length) {\r\n const firstNParts = node1Parts.slice(0, deleteParts.length);\r\n if (JSON.stringify(firstNParts) === JSON.stringify(deleteParts)) {\r\n d3.select(this)\r\n .transition() // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n deleteFlag = true;\r\n }\r\n }\r\n if (!deleteFlag) {\r\n if (arraysAreEqual(node2Parts, deleteParts)) {\r\n d3.select(this)\r\n .transition() // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n } else if (node2Parts.length > deleteParts.length) {\r\n const firstNParts = node2Parts.slice(0, deleteParts.length);\r\n if (JSON.stringify(firstNParts) === JSON.stringify(deleteParts)) {\r\n d3.select(this)\r\n .transition() // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n }\r\n }\r\n }\r\n } else { // delete nodes\r\n const GIDParts = GID.split('-');\r\n if (arraysAreEqual(GIDParts, deleteParts)) {\r\n d3.select(this)\r\n .transition() // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n } else if (GIDParts.length > deleteParts.length) {\r\n const firstNParts = GIDParts.slice(0, deleteParts.length);\r\n if (JSON.stringify(firstNParts) === JSON.stringify(deleteParts)) {\r\n d3.select(this)\r\n .transition() // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n }\r\n }\r\n }\r\n // console.log(GID);\r\n })\r\n return;\r\n }\r\n body_num = String(body_num);\r\n let layoutCond;\r\n let layoutPre;\r\n let layoutBody;\r\n let layoutPost;\r\n // const layoutPost = getBoxLayout(fnS[post-1]);\r\n const spaceX = 80;\r\n const spaceY = 100;\r\n const padding = 90;\r\n const newLabelCond = String(body_num) + '-' + String(cond); // new body_num for Cond\r\n const newLabelPre = String(newLabelCond) + '-' + String(pre); // new body_num for pre\r\n const newLabelBody = String(newLabelCond) + '-' + String(body); // new body_num for body\r\n const newLabelPost = String(newLabelCond) + '-' + String(post); // new body_num for post\r\n if (cond!==undefined) {\r\n layoutCond = getBoxLayout(fnS[cond-1]);\r\n drawBox(layoutCond, fnS, newLabelCond, direction);\r\n }\r\n if (pre!==undefined) {\r\n layoutPre = getBoxLayout(fnS[pre-1]);\r\n drawBox(layoutPre, fnS, newLabelPre, direction);\r\n }\r\n if (body!==undefined) {\r\n layoutBody = getBoxLayout(fnS[body-1]);\r\n drawBox(layoutBody, fnS, newLabelBody, direction);\r\n }\r\n if (post!==undefined) {\r\n layoutPost = getBoxLayout(fnS[post-1]);\r\n drawBox(layoutPost, fnS, newLabelPost, direction);\r\n }\r\n \r\n \r\n // drawBox(layoutPost, fnS, newLabelPost);\r\n var hierarchies = getHierarchy(spaceY);\r\n // const flexLayout = flextree.flextree({ spacing: spaceX });\r\n // console.log(hierarchies);\r\n // const tree = flexLayout.hierarchy(hierarchies);\r\n // var treeData = flexLayout(tree);\r\n // treeData.each(d => {\r\n // const x = d.x;\r\n // d.x = d.y;\r\n // d.y = x;\r\n // });\r\n // var treeLayout = {};\r\n // treeData.each(d => {\r\n // treeLayout[d.data.oName] = [d.x, d.y, d.data.size[1], d.data.size[0] * 1];\r\n // });\r\n var treeLayout = {};\r\n treeLayout = getMultiTree(hierarchies);\r\n const nodeNames = Object.keys(treeLayout);\r\n\r\n console.log(treeLayout);\r\n console.log()\r\n let differenceX = treeLayout[newLabelCond][0] - treeLayout[body_num][0];\r\n let differenceY = treeLayout[newLabelCond][1] - (treeLayout[body_num][1] );\r\n \r\n const locationTransform = [differenceX, differenceY];\r\n drawLines(sourceid, \"frame\" + newLabelCond, locationTransform, body_num, newLabelCond, color, direction);\r\n if (pre!==undefined) {\r\n drawLinesDashArrow(treeLayout, newLabelCond, newLabelPre, \"black\", \"PRE\", direction);\r\n }\r\n if (body!==undefined) {\r\n drawLinesDashArrow(treeLayout, newLabelCond, newLabelBody, \"black\", \"WHILE TRUE\", direction);\r\n }\r\n if (post!==undefined) {\r\n drawLinesDashArrow(treeLayout, newLabelCond, newLabelPost, \"black\", \"POST\", direction);\r\n }\r\n\r\n // console.log(locationTransform);\r\n d3.selectAll('.drawer').each(function(d, i){\r\n let nodeID = d3.select(this).attr('id').replace(\"boxid\", \"\");\r\n if (nodeID.split('_').length === 2){\r\n if (d3.select(this).attr(\"line-type\") !== \"dashed\") {\r\n const lineID = nodeID;\r\n const sourceGID = nodeID.replace(\"line\", \"\").split('_')[0];\r\n const targetGID = nodeID.replace(\"line\", \"\").split('_')[1];\r\n const sourceTransString = d3.select(\"#boxid\" + sourceGID).attr('transform');\r\n const targetTransString = d3.select(\"#boxid\" + targetGID).attr('transform');\r\n if (sourceTransString!==null && sourceGID != newLabelCond){\r\n const translatePart = sourceTransString.slice(10, -1);\r\n const translateValues = translatePart.split(\",\");\r\n const transformArray = translateValues.map(Number);\r\n let newTransArray = [];\r\n newTransArray = [treeLayout[sourceGID][0] + padding, treeLayout[sourceGID][1] + padding *7.5 ];\r\n const locationTransformForThis = [treeLayout[targetGID][0] - treeLayout[sourceGID][0], treeLayout[targetGID][1] - (treeLayout[sourceGID][1] )];\r\n if (transformArray[1]!==newTransArray[1] || transformArray[0]!==newTransArray[0]) {\r\n const a01 = d3.select(this).attr('sourceid');\r\n const a02 = d3.select(this).attr('targetid');\r\n let a03 = d3.select(this).attr('locationTransform').split(',');\r\n const a04 = d3.select(this).attr('body_num_source');\r\n const a05 = d3.select(this).attr('body_num_target');\r\n const a06 = d3.select(this).attr('color');\r\n // const new03 = [Number(a03[0]) + newTransArray[0] - transformArray[0], Number(a03[1]) + newTransArray[1] - transformArray[1]];\r\n // d3.select(\"#\" + lineID).selectAll('*').remove();\r\n const currentDirection = d3.select(\"#boxid\" + a05).attr(\"direction\");\r\n updateLines(a01, a02, locationTransformForThis, a04, a05, a06, lineID, currentDirection);\r\n }\r\n }\r\n if (targetTransString!==null && targetGID != newLabelCond){\r\n const translatePart = targetTransString.slice(10, -1);\r\n const translateValues = translatePart.split(\",\");\r\n const transformArray = translateValues.map(Number);\r\n let newTransArray = [];\r\n newTransArray = [treeLayout[targetGID][0] + padding, treeLayout[targetGID][1] + padding *7.5];\r\n const locationTransformForThis = [treeLayout[targetGID][0] - treeLayout[sourceGID][0], treeLayout[targetGID][1] - (treeLayout[sourceGID][1])];\r\n if (transformArray[1]!==newTransArray[1] || transformArray[0]!==newTransArray[0]) {\r\n const a01 = d3.select(this).attr('sourceid');\r\n const a02 = d3.select(this).attr('targetid');\r\n let a03 = d3.select(this).attr('locationTransform').split(',');\r\n const a04 = d3.select(this).attr('body_num_source');\r\n const a05 = d3.select(this).attr('body_num_target');\r\n const a06 = d3.select(this).attr('color');\r\n // const new03 = [Number(a03[0]) + newTransArray[0] - transformArray[0], Number(a03[1]) + newTransArray[1] - transformArray[1]];\r\n // d3.select(\"#\" + lineID).selectAll('*').remove();\r\n const currentDirection = d3.select(\"#boxid\" + a05).attr(\"direction\");\r\n updateLines(a01, a02, locationTransformForThis, a04, a05, a06, lineID, currentDirection);\r\n }\r\n }\r\n \r\n nodeID = nodeID.replace(\"line\", \"\");\r\n nodeID = nodeID.split('_')[0];\r\n d3.select(this)\r\n .attr(\"transform\", `translate(${treeLayout[nodeID][0] + padding},${treeLayout[nodeID][1] + padding *7.5 })`)\r\n .style(\"opacity\", 0.38);\r\n } else {\r\n const lineID = nodeID;\r\n const sourceGID = nodeID.replace(\"line\", \"\").split('_')[0];\r\n const targetGID = nodeID.replace(\"line\", \"\").split('_')[1];\r\n const sourceTransString = d3.select(\"#boxid\" + sourceGID).attr('transform');\r\n const targetTransString = d3.select(\"#boxid\" + targetGID).attr('transform');\r\n if (sourceTransString!==null && sourceGID != newLabelCond) {\r\n const translatePart = sourceTransString.slice(10, -1);\r\n const translateValues = translatePart.split(\",\");\r\n const transformArray = translateValues.map(Number);\r\n let newTransArray = [];\r\n newTransArray = [treeLayout[sourceGID][0] + padding, treeLayout[sourceGID][1] + padding *7.5 ];\r\n if (transformArray[1]!==newTransArray[1] || transformArray[0]!==newTransArray[0]) {\r\n const line_label = d3.select(this).select('text').text();\r\n const currentDirection = d3.select(\"#boxid\" + targetGID).attr(\"direction\");\r\n updateLinesDashArrow(treeLayout, sourceGID, targetGID, \"black\", line_label, lineID, currentDirection);\r\n }\r\n }\r\n if (targetTransString!==null && targetGID != newLabelCond){\r\n const translatePart = targetTransString.slice(10, -1);\r\n const translateValues = translatePart.split(\",\");\r\n const transformArray = translateValues.map(Number);\r\n let newTransArray = [];\r\n newTransArray = [treeLayout[targetGID][0] + padding, treeLayout[targetGID][1] + padding *7.5 ];\r\n if (transformArray[1]!==newTransArray[1] || transformArray[0]!==newTransArray[0]) {\r\n const line_label = d3.select(this).select('text').text();\r\n const currentDirection = d3.select(\"#boxid\" + targetGID).attr(\"direction\");\r\n updateLinesDashArrow(treeLayout, sourceGID, targetGID, \"black\", line_label, lineID, currentDirection);\r\n }\r\n }\r\n nodeID = nodeID.replace(\"line\", \"\");\r\n nodeID = nodeID.split('_')[0];\r\n d3.select(this)\r\n // .transition()\r\n // .duration(720)\r\n .attr(\"transform\", `translate(${treeLayout[nodeID][0] + padding},${treeLayout[nodeID][1] + padding *7.5 })`);\r\n }\r\n } else {\r\n if (nodeID === newLabelCond || nodeID === newLabelPre || nodeID === newLabelBody || nodeID === newLabelPost) {\r\n d3.select(this)\r\n .attr(\"transform\", `translate(${treeLayout[nodeID][0] + padding},${treeLayout[nodeID][1] + padding *7.5 })`)\r\n .attr(\"opacity\", 0);\r\n d3.select(this)\r\n .transition()\r\n .duration(transitionTime1)\r\n .style(\"opacity\", 1);\r\n } else {\r\n d3.select(this)\r\n .transition()\r\n .duration(transitionTime2)\r\n .attr(\"transform\", `translate(${treeLayout[nodeID][0] + padding},${treeLayout[nodeID][1] + padding *7.5 })`);\r\n }\r\n }\r\n }\r\n )\r\n // autoTranslate();\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/utils/clickCond.js","/* eslint-disable */\r\nlet gromet = null;\r\n\r\nexport function setGromet(data) {\r\n gromet = data;\r\n}\r\n\r\nexport function getGromet() {\r\n return gromet;\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/utils/global.js","/* eslint-disable */\r\nimport * as d3 from \"d3\";\r\nimport { handleClick } from \"./click\";\r\nimport { handleClickCond, handleClickLoop } from \"./clickCond\";\r\nimport { computeBoundingRectangle, getOuterBox } from \"./utilities\"\r\nimport { getGromet } from './global.js';\r\n\r\nexport function drawBox(layout, fnS, body_num, directionO = \"right\") {\r\n // console.log(this.$gromet)\r\n // 创建SVG元素\r\n // debugger\r\n const svg = d3.select(\"#mainsvg\").select(\"#sumGroup\");\r\n const g = svg.append(\"g\").attr('id', \"boxid\" + String(body_num)).attr(\"class\", \"drawer\").attr(\"direction\", directionO);\r\n const ranksep = 37;\r\n const padding = 22.5; // 设置padding的大小\r\n\r\n // 绘制节点\r\n const nodes = layout.nodes;\r\n console.log(layout)\r\n let opoNodeFlag = false;\r\n let opiNodeFlag = false;\r\n const minValue = Math.min(...Object.values(layout.nodes).map(obj => obj.y));\r\n const maxValue = Math.max(...Object.values(layout.nodes).map(obj => obj.y));\r\n for (const nodeId in nodes) {\r\n const node = nodes[nodeId];\r\n const [type, index] = nodeId.split(\"-\");\r\n const isOpoNode = (type === 'opo');\r\n const isOpiNode = (type === 'opi');\r\n if (isOpiNode) {\r\n if (node.y === minValue){\r\n // node.y = minValue - 50 - ranksep;\r\n opiNodeFlag = true;\r\n }\r\n }\r\n\r\n if (isOpoNode) {\r\n if (node.y === maxValue){\r\n // node.y = maxValue + 50 + ranksep;\r\n opoNodeFlag = true;\r\n }\r\n }\r\n }\r\n // console.log(nodes);\r\n for (const nodeId in nodes) {\r\n // const node = nodes[nodeId];\r\n const [type, index] = nodeId.split(\"-\");\r\n const isOpoNode = (type === 'opo');\r\n const isOpiNode = (type === 'opi');\r\n \r\n if (isOpiNode) {\r\n // debugger\r\n if (opiNodeFlag){\r\n nodes[nodeId].y = minValue;\r\n } else {\r\n nodes[nodeId].y = minValue - 50 - ranksep;\r\n }\r\n }\r\n if (isOpoNode) {\r\n if (opoNodeFlag){\r\n nodes[nodeId].y = maxValue;\r\n } else {\r\n nodes[nodeId].y = maxValue + 50 + ranksep;\r\n }\r\n }\r\n }\r\n \r\n\r\n // 获取 x 和 y 的最小值\r\n let minXofAllNodes = Infinity;\r\n let minYofAllNodes = Infinity;\r\n for (const key in nodes) {\r\n const [type, index] = key.split(\"-\");\r\n const isAuxNode = (type === \"aux\");\r\n // if (!isAuxNode) {\r\n if (nodes[key].x < minXofAllNodes) {\r\n minXofAllNodes = nodes[key].x;\r\n }\r\n if (nodes[key].y < minYofAllNodes) {\r\n minYofAllNodes = nodes[key].y;\r\n }\r\n // }\r\n }\r\n\r\n // 更新每一个子对象的 x 和 y 属性\r\n for (const key in nodes) {\r\n nodes[key].x = nodes[key].x - minXofAllNodes;\r\n nodes[key].y -= minYofAllNodes;\r\n }\r\n const bbox = computeBoundingRectangle(nodes);\r\n const realOuterBox = getOuterBox(bbox, padding, ranksep, nodes);\r\n // console.log(bbox,\"bbox\");\r\n // console.log(nodes);\r\n for (const nodeId in nodes) {\r\n const node = nodes[nodeId];\r\n const [type, index] = nodeId.split(\"-\");\r\n const isBfNode = (type === \"bf\");\r\n const isPofNode = (type === \"pof\");\r\n const isPifNode = (type === \"pif\");\r\n const isAuxNode = (type === \"aux\");\r\n const isOpoNode = (type === 'opo');\r\n const isOpiNode = (type === 'opi');\r\n const isBcNode = (type === \"bc\");\r\n const isPocNode = (type === \"poc\");\r\n const isPicNode = (type === \"pic\");\r\n const isBlNode = (type === \"bl\");\r\n const isPolNode = (type === \"pol\");\r\n const isPilNode = (type === \"pil\");\r\n \r\n if (isAuxNode) {\r\n continue; // 不绘制aux前缀的节点\r\n }\r\n const bboxO = bbox;\r\n if (isBfNode) {\r\n if (node.fullBox){\r\n if (node.type == \"FUNCTION\") {\r\n drawBFs_full(node, nodeId, g, \"green\", ranksep, fnS, body_num, realOuterBox);\r\n } else if (node.type == \"EXPRESSION\") {\r\n drawBFs_full(node, nodeId, g, \"purple\", ranksep, fnS, body_num, realOuterBox);\r\n } else if (node.type == \"LITERAL\") {\r\n drawLiteral_full(node, nodeId, g, \"red\", ranksep);\r\n } else if (node.type == \"LANGUAGE_PRIMITIVE\") {\r\n drawLPrimitive_full(node, nodeId, g, \"red\", ranksep);\r\n } else if (node.type == \"ABSTRACT\") {\r\n drawBFs_full(node, nodeId, g, \"yellow\", ranksep);\r\n } else if (node.type == \"IMPORTED\") {\r\n const imported = true;\r\n drawBFs_full(node, nodeId, g, \"gray\", ranksep, fnS, body_num, realOuterBox, imported);\r\n } else if (node.type == \"IMPORTED_METHOD\") {\r\n const imported = true;\r\n drawBFs_full(node, nodeId, g, \"purple\", ranksep, fnS, body_num, realOuterBox, imported);\r\n }\r\n } else {\r\n if (node.type == \"FUNCTION\") {\r\n drawBFs_nfull(node, nodeId, g, \"green\", ranksep, fnS, body_num, realOuterBox);\r\n } else if (node.type == \"EXPRESSION\") {\r\n drawBFs_nfull(node, nodeId, g, \"purple\", ranksep, fnS, body_num, realOuterBox);\r\n } else if (node.type == \"LITERAL\") {\r\n drawLiteral_nfull(node, nodeId, g, \"red\", ranksep);\r\n } else if (node.type == \"LANGUAGE_PRIMITIVE\") {\r\n drawLPrimitive_nfull(node, nodeId, g, \"red\", ranksep);\r\n } else if (node.type == \"ABSTRACT\") {\r\n drawBFs_nfull(node, nodeId, g, \"yellow\", ranksep);\r\n } else if (node.type == \"IMPORTED\") {\r\n const imported = true;\r\n drawBFs_nfull(node, nodeId, g, \"gray\", ranksep, fnS, body_num, realOuterBox, imported);\r\n } else if (node.type == \"IMPORTED_METHOD\") {\r\n const imported = true;\r\n drawBFs_nfull(node, nodeId, g, \"purple\", ranksep, fnS, body_num, realOuterBox, imported);\r\n }\r\n }\r\n } else if (isBcNode) {\r\n if (node.fullBox){\r\n drawBCs_full(node, nodeId, g, \"orange\", ranksep, fnS, body_num, realOuterBox);\r\n } else {\r\n drawBCs_nfull(node, nodeId, g, \"orange\", ranksep, fnS, body_num, realOuterBox);\r\n }\r\n } else if (isBlNode) {\r\n if (node.fullBox){\r\n drawBLs_full(node, nodeId, g, \"blue\", ranksep, fnS, body_num, realOuterBox);\r\n } else {\r\n drawBLs_nfull(node, nodeId, g, \"blue\", ranksep, fnS, body_num, realOuterBox);\r\n }\r\n }\r\n else if (isPofNode || isPifNode || isOpiNode || isOpoNode || isPicNode || isPocNode || isPilNode || isPolNode) {\r\n if (node.label===\"err\") {\r\n drawPorts(node, nodeId, g, \"red\", \"red\");\r\n } else {\r\n drawPorts(node, nodeId, g, \"black\");\r\n }\r\n }\r\n }\r\n // 绘制箭头\r\n g.append(\"defs\")\r\n .append(\"marker\")\r\n .attr(\"id\", \"arrowhead\")\r\n .attr(\"markerWidth\", 10)\r\n .attr(\"markerHeight\", 7)\r\n .attr(\"refX\", 10)\r\n .attr(\"refY\", 3.5)\r\n .attr(\"orient\", \"auto\")\r\n .append(\"path\")\r\n .attr(\"d\", \"M0,0 L10,3.5 L0,7 Z\")\r\n .style(\"fill\", \"gray\");\r\n \r\n // 绘制边\r\n const edges = layout.edges;\r\n edges.forEach((edge) => {\r\n const sourceNode = nodes[edge.source];\r\n const targetNode = nodes[edge.target];\r\n const sourceType = edge.source.split(\"-\")[0];\r\n const targetType = edge.target.split(\"-\")[0];\r\n const isAuxEdge = (sourceType === \"aux\" || targetType === \"aux\");\r\n\r\n if (!isAuxEdge) {\r\n g.append(\"line\")\r\n .attr(\"x1\", sourceNode.x)\r\n .attr(\"y1\", sourceNode.y - sourceNode.height / 2)\r\n .attr(\"x2\", targetNode.x)\r\n .attr(\"y2\", targetNode.y + targetNode.height / 2)\r\n .style(\"stroke\", \"gray\")\r\n .style(\"stroke-width\", 2.2)\r\n .attr(\"marker-end\", \"url(#arrowhead)\");\r\n }\r\n });\r\n\r\n // 调整SVG大小\r\n\r\n const width = bbox.width + padding * 4;\r\n const height = bbox.height + padding * 4;\r\n\r\n if ('opo-0' in nodes && 'opi-0' in nodes){\r\n if (layout.meta.type === \"MODULE\"){\r\n drawOuterBoxFull(g, bbox, width, height, padding, ranksep, \"gray\", body_num, false, layout);\r\n } else if (layout.meta.type === \"EXPRESSION\") {\r\n drawOuterBoxFull(g, bbox, width, height, padding, ranksep, \"purple\", body_num, false, layout);\r\n } else if (layout.meta.type === \"FUNCTION\") {\r\n drawOuterBoxFull(g, bbox, width, height, padding, ranksep, \"green\", body_num, false, layout);\r\n } else if (layout.meta.type === \"PREDICATE\") {\r\n drawOuterBoxFull(g, bbox, width, height, padding, ranksep, \"Magenta\", body_num, false, layout);\r\n } else if (layout.meta.type == \"ABSTRACT\") {\r\n drawOuterBoxFull(g, bbox, width, height, padding, ranksep, \"yellow\", body_num, false, layout);\r\n } else if (layout.meta.type === \"IMPORTED\") {\r\n const imported = true;\r\n drawOuterBoxFull(g, bbox, width, height, padding, ranksep, \"gray\", body_num, imported, layout);\r\n } else if (layout.meta.type === \"IMPORTED_METHOD\") {\r\n const imported = true;\r\n drawOuterBoxFull(g, bbox, width, height, padding, ranksep, \"purple\", body_num, imported, layout);\r\n }\r\n } else if ('opo-0' in nodes && !('opi-0' in nodes)) {\r\n if (layout.meta.type === \"MODULE\"){\r\n drawOuterBoxBottom(g, bbox, width, height, padding, ranksep, \"gray\", body_num, false, layout);\r\n } else if (layout.meta.type === \"EXPRESSION\") {\r\n drawOuterBoxBottom(g, bbox, width, height, padding, ranksep, \"purple\", body_num, false, layout);\r\n } else if (layout.meta.type === \"FUNCTION\") {\r\n drawOuterBoxBottom(g, bbox, width, height, padding, ranksep, \"green\", body_num, false, layout);\r\n } else if (layout.meta.type === \"PREDICATE\") {\r\n drawOuterBoxBottom(g, bbox, width, height, padding, ranksep, \"Magenta\", body_num, false, layout);\r\n } else if (layout.meta.type == \"ABSTRACT\") {\r\n drawOuterBoxBottom(g, bbox, width, height, padding, ranksep, \"yellow\", body_num, false, layout);\r\n } else if (layout.meta.type === \"IMPORTED\") {\r\n const imported = true;\r\n drawOuterBoxBottom(g, bbox, width, height, padding, ranksep, \"gray\", body_num, imported, layout);\r\n } else if (layout.meta.type === \"IMPORTED_METHOD\") {\r\n const imported = true;\r\n drawOuterBoxBottom(g, bbox, width, height, padding, ranksep, \"purple\", body_num, imported, layout);\r\n }\r\n } else if (!('opo-0' in nodes) && 'opi-0' in nodes) {\r\n if (layout.meta.type === \"MODULE\"){\r\n drawOuterBoxTop(g, bbox, width, height, padding, ranksep, \"gray\", body_num, false, layout);\r\n } else if (layout.meta.type === \"EXPRESSION\") {\r\n drawOuterBoxTop(g, bbox, width, height, padding, ranksep, \"purple\", body_num, false, layout);\r\n } else if (layout.meta.type === \"FUNCTION\") {\r\n drawOuterBoxTop(g, bbox, width, height, padding, ranksep, \"green\", body_num, false, layout);\r\n } else if (layout.meta.type === \"PREDICATE\") {\r\n drawOuterBoxTop(g, bbox, width, height, padding, ranksep, \"Magenta\", body_num, false, layout);\r\n } else if (layout.meta.type == \"ABSTRACT\") {\r\n drawOuterBoxTop(g, bbox, width, height, padding, ranksep, \"yellow\", body_num, false, layout);\r\n } else if (layout.meta.type === \"IMPORTED\") {\r\n const imported = true;\r\n drawOuterBoxTop(g, bbox, width, height, padding, ranksep, \"gray\", body_num, imported, layout);\r\n } else if (layout.meta.type === \"IMPORTED_METHOD\") {\r\n const imported = true;\r\n drawOuterBoxTop(g, bbox, width, height, padding, ranksep, \"purple\", body_num, imported, layout);\r\n }\r\n } else {\r\n if (layout.meta.type === \"MODULE\"){\r\n drawOuterBoxEmpty(g, bbox, width, height, padding, ranksep, \"gray\", body_num, false, layout);\r\n } else if (layout.meta.type === \"EXPRESSION\") {\r\n drawOuterBoxEmpty(g, bbox, width, height, padding, ranksep, \"purple\", body_num, false, layout);\r\n } else if (layout.meta.type === \"FUNCTION\") {\r\n drawOuterBoxEmpty(g, bbox, width, height, padding, ranksep, \"green\", body_num, false, layout);\r\n } else if (layout.meta.type === \"PREDICATE\") {\r\n drawOuterBoxEmpty(g, bbox, width, height, padding, ranksep, \"Magenta\", body_num, false, layout);\r\n } else if (layout.meta.type == \"ABSTRACT\") {\r\n drawOuterBoxEmpty(g, bbox, width, height, padding, ranksep, \"yellow\", body_num, false, layout);\r\n } else if (layout.meta.type === \"IMPORTED\") {\r\n const imported = true;\r\n drawOuterBoxEmpty(g, bbox, width, height, padding, ranksep, \"gray\", body_num, imported, layout);\r\n } else if (layout.meta.type === \"IMPORTED_METHOD\") {\r\n const imported = true;\r\n drawOuterBoxEmpty(g, bbox, width, height, padding, ranksep, \"purple\", body_num, imported, layout);\r\n }\r\n }\r\n g.attr(\"width\", g.node().getBBox().width)\r\n .attr(\"height\", g.node().getBBox().height)\r\n if (body_num === 0){\r\n g.attr(\"transform\", `translate(${padding * 4},${padding * 30 - g.node().getBBox().height / 2 * 1})`);\r\n }\r\n }\r\n\r\nfunction drawBFs_full(node, nodeId, g, color, ranksep, fnS, body_num, bbox=\"right\", imported=false) {\r\n let clicked = false;\r\n let node_body = null;\r\n if (node.body !== undefined) {\r\n node_body = node.body;\r\n }\r\n const outerRight = bbox.x + bbox.width;\r\n const outerBottom = bbox.y + bbox.height;\r\n const innerRight = node.x + node.width / 2;\r\n const innerBottom = node.y + node.height / 2 - ranksep;\r\n // console.log(outerRight, \"outerRight\");\r\n // console.log(outerBottom, \"outerBottom\");\r\n // console.log(innerBottom, \"innerBottom\");\r\n // console.log(innerRight, \"innerRight\");\r\n let direction = \"right\";\r\n if ( (outerRight - innerRight) > (outerBottom - innerBottom) + 120) {\r\n direction = \"down\";\r\n }\r\n const selection = g.append(\"rect\")\r\n .attr(\"id\", nodeId)\r\n .attr(\"x\", node.x - node.width / 2)\r\n .attr(\"y\", node.y - node.height / 2 + ranksep)\r\n .attr(\"width\", node.width)\r\n .attr(\"height\", node.height - ranksep * 2)\r\n .attr(\"rx\", 15)\r\n .attr(\"ry\", 15)\r\n .attr(\"data-body\", node_body)\r\n .attr(\"data-opened\", \"neo\")\r\n .attr(\"data-clicked\", \"false\")\r\n .style(\"fill\", \"rgba(0, 0, 255, 0)\")\r\n .style(\"stroke\", color)\r\n .style(\"cursor\", \"pointer\")\r\n .style(\"stroke-width\", 5);\r\n if (imported) {\r\n selection.style(\"stroke-dasharray\", \"10, 5\");\r\n }\r\n if (node.label !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"12px\")\r\n .text(node.label);\r\n }\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (node.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x + node.width / 2 - 17)\r\n .attr(\"y\", node.y - node.height / 2 + ranksep + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"15px\")\r\n .text(node.metadata)\r\n .on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[node.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });\r\n }\r\n if (node.body !== undefined) {\r\n selection.on(\"click\", function(){\r\n handleClick(fnS, node.body, body_num, nodeId, color, clicked, direction);\r\n clicked = !clicked;\r\n this.setAttribute(\"data-clicked\", clicked.toString());\r\n });\r\n }\r\n}\r\n\r\nfunction drawBFs_nfull(node, nodeId, g, color, ranksep, fnS, body_num, bbox = \"right\", imported = false) {\r\n let node_body = null;\r\n if (node.body !== undefined) {\r\n node_body = node.body;\r\n }\r\n if (imported===true) {\r\n console.log(node);\r\n console.log(node.body);\r\n }\r\n let clicked = false;\r\n const outerRight = bbox.x + bbox.width;\r\n const outerBottom = bbox.y + bbox.height;\r\n const innerRight = node.x + node.width / 2;\r\n const innerBottom = node.y + node.height / 2 - ranksep;\r\n let direction = \"right\";\r\n if ( (outerRight - innerRight) > (outerBottom - innerBottom) + 120) {\r\n direction = \"down\";\r\n }\r\n const selection = g.append(\"rect\")\r\n .attr(\"id\", nodeId)\r\n .attr(\"x\", node.x - node.width / 2)\r\n .attr(\"y\", node.y - node.height / 2 - ranksep)\r\n .attr(\"width\", node.width)\r\n .attr(\"height\", node.height)\r\n .attr(\"rx\", 15)\r\n .attr(\"ry\", 15)\r\n .attr(\"data-body\", node_body)\r\n .attr(\"data-opened\", \"neo\")\r\n .attr(\"data-clicked\", \"false\")\r\n .style(\"fill\", \"rgba(0, 0, 255, 0)\")\r\n .style(\"cursor\", \"pointer\")\r\n .style(\"stroke\", color)\r\n .style(\"stroke-width\", 5);\r\n if (imported) {\r\n selection.style(\"stroke-dasharray\", \"10, 5\");\r\n }\r\n if (node.label !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y - node.height / 4 - ranksep / 2)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"12px\")\r\n .text(node.label);\r\n }\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (node.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x + node.width / 2 - 17)\r\n .attr(\"y\", node.y - node.height / 2 - ranksep + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"15px\")\r\n .text(node.metadata)\r\n .on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[node.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });\r\n }\r\n if (node.body !== undefined) {\r\n selection.on(\"click\", function(){\r\n handleClick(fnS, node.body, body_num, nodeId, color, clicked, direction);\r\n clicked = !clicked;\r\n this.setAttribute(\"data-clicked\", clicked.toString());\r\n });\r\n }\r\n}\r\n\r\nfunction drawBCs_full(node, nodeId, g, color, ranksep, fnS, body_num, bbox) {\r\n let clicked = false;\r\n let node_body_cond = null;\r\n if (node.condition !== undefined) {\r\n node_body_cond = node.condition;\r\n }\r\n const outerRight = bbox.x + bbox.width;\r\n const outerBottom = bbox.y + bbox.height;\r\n const innerRight = node.x + node.width / 2;\r\n const innerBottom = node.y + node.height / 2 - ranksep;\r\n let direction = \"right\";\r\n if ( (outerRight - innerRight) > (outerBottom - innerBottom) + 120) {\r\n direction = \"down\";\r\n }\r\n const selection = g.append(\"rect\")\r\n .attr(\"id\", nodeId)\r\n .attr(\"x\", node.x - node.width / 2)\r\n .attr(\"y\", node.y - node.height / 2 + ranksep)\r\n .attr(\"width\", node.width)\r\n .attr(\"height\", node.height - ranksep * 2)\r\n .attr(\"rx\", 15)\r\n .attr(\"ry\", 15)\r\n .attr(\"data-body\", node_body_cond)\r\n .attr(\"data-clicked\", \"false\")\r\n .style(\"fill\", \"rgba(0, 0, 255, 0)\")\r\n .style(\"stroke\", color)\r\n .style(\"cursor\", \"pointer\")\r\n .style(\"stroke-width\", 5);\r\n if (node.label !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"12px\")\r\n .text(node.label);\r\n }\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (node.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x + node.width / 2 - 17)\r\n .attr(\"y\", node.y - node.height / 2 + ranksep + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"15px\")\r\n .text(node.metadata)\r\n .on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[node.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });;\r\n }\r\n if (node.condition !== undefined) {\r\n selection.on(\"click\", function(){\r\n handleClickCond(fnS, node.condition, node.body_if, node.body_else, body_num, nodeId, color, clicked, direction);\r\n clicked = !clicked;\r\n this.setAttribute(\"data-clicked\", clicked.toString());\r\n });\r\n }\r\n}\r\n\r\nfunction drawBCs_nfull(node, nodeId, g, color, ranksep, fnS, body_num, bbox) {\r\n let node_body = null;\r\n if (node.body !== undefined) {\r\n node_body = node.body;\r\n }\r\n let clicked = false;\r\n const outerRight = bbox.x + bbox.width;\r\n const outerBottom = bbox.y + bbox.height;\r\n const innerRight = node.x + node.width / 2;\r\n const innerBottom = node.y + node.height / 2 - ranksep;\r\n let direction = \"right\";\r\n if ( (outerRight - innerRight) > (outerBottom - innerBottom) + 120) {\r\n direction = \"down\";\r\n }\r\n const selection = g.append(\"rect\")\r\n .attr(\"id\", nodeId)\r\n .attr(\"x\", node.x - node.width / 2)\r\n .attr(\"y\", node.y - node.height / 2 - ranksep)\r\n .attr(\"width\", node.width)\r\n .attr(\"height\", node.height)\r\n .attr(\"rx\", 15)\r\n .attr(\"ry\", 15)\r\n .attr(\"data-body\", node_body)\r\n .attr(\"data-clicked\", \"false\")\r\n .style(\"fill\", \"rgba(0, 0, 255, 0)\")\r\n .style(\"cursor\", \"pointer\")\r\n .style(\"stroke\", color)\r\n .style(\"stroke-width\", 5);\r\n if (node.label !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y - node.height / 4 - ranksep / 2)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"12px\")\r\n .text(node.label);\r\n }\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (node.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x + node.width / 2 - 17)\r\n .attr(\"y\", node.y - node.height / 2 - ranksep + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"15px\")\r\n .text(node.metadata)\r\n .on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[node.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });;\r\n }\r\n if (node.body !== undefined) {\r\n selection.on(\"click\", function(){\r\n handleClickCond(fnS, node.condition, node.body_if, node.body_else, body_num, nodeId, color, clicked, direction);\r\n clicked = !clicked;\r\n this.setAttribute(\"data-clicked\", clicked.toString());\r\n });\r\n }\r\n}\r\n\r\nfunction drawBLs_full(node, nodeId, g, color, ranksep, fnS, body_num, bbox) {\r\n let clicked = false;\r\n let node_body_cond = null;\r\n if (node.condition !== undefined) {\r\n node_body_cond = node.condition;\r\n }\r\n const outerRight = bbox.x + bbox.width;\r\n const outerBottom = bbox.y + bbox.height;\r\n const innerRight = node.x + node.width / 2;\r\n const innerBottom = node.y + node.height / 2 - ranksep;\r\n let direction = \"right\";\r\n if ( (outerRight - innerRight) > (outerBottom - innerBottom) + 120) {\r\n direction = \"down\";\r\n }\r\n const selection = g.append(\"rect\")\r\n .attr(\"id\", nodeId)\r\n .attr(\"x\", node.x - node.width / 2)\r\n .attr(\"y\", node.y - node.height / 2 + ranksep)\r\n .attr(\"width\", node.width)\r\n .attr(\"height\", node.height - ranksep * 2)\r\n .attr(\"rx\", 15)\r\n .attr(\"ry\", 15)\r\n .attr(\"data-body\", node_body_cond)\r\n .attr(\"data-clicked\", \"false\")\r\n .style(\"fill\", \"rgba(0, 0, 255, 0)\")\r\n .style(\"stroke\", color)\r\n .style(\"cursor\", \"pointer\")\r\n .style(\"stroke-width\", 5);\r\n if (node.label !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"12px\")\r\n .text(node.label);\r\n }\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (node.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x + node.width / 2 - 17)\r\n .attr(\"y\", node.y - node.height / 2 + ranksep + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"15px\")\r\n .text(node.metadata)\r\n .on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[node.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });;\r\n }\r\n if (node.condition !== undefined) {\r\n selection.on(\"click\", function(){\r\n handleClickLoop(fnS, node.condition, node.pre, node.body, node.post, body_num, nodeId, color, clicked, direction);\r\n clicked = !clicked;\r\n this.setAttribute(\"data-clicked\", clicked.toString());\r\n });\r\n }\r\n}\r\n\r\nfunction drawBLs_nfull(node, nodeId, g, color, ranksep, fnS, body_num, bbox) {\r\n let node_body = null;\r\n if (node.body !== undefined) {\r\n node_body = node.body;\r\n }\r\n let clicked = false;\r\n const outerRight = bbox.x + bbox.width;\r\n const outerBottom = bbox.y + bbox.height;\r\n const innerRight = node.x + node.width / 2;\r\n const innerBottom = node.y + node.height / 2 - ranksep;\r\n let direction = \"right\";\r\n if ( (outerRight - innerRight) > (outerBottom - innerBottom) + 120) {\r\n direction = \"down\";\r\n }\r\n const selection = g.append(\"rect\")\r\n .attr(\"id\", nodeId)\r\n .attr(\"x\", node.x - node.width / 2)\r\n .attr(\"y\", node.y - node.height / 2 - ranksep)\r\n .attr(\"width\", node.width)\r\n .attr(\"height\", node.height)\r\n .attr(\"rx\", 15)\r\n .attr(\"ry\", 15)\r\n .attr(\"data-body\", node_body)\r\n .attr(\"data-clicked\", \"false\")\r\n .style(\"fill\", \"rgba(0, 0, 255, 0)\")\r\n .style(\"cursor\", \"pointer\")\r\n .style(\"stroke\", color)\r\n .style(\"stroke-width\", 5);\r\n if (node.label !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y - node.height / 4 - ranksep / 2)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"12px\")\r\n .text(node.label);\r\n }\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (node.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x + node.width / 2 - 17)\r\n .attr(\"y\", node.y - node.height / 2 - ranksep + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"15px\")\r\n .text(node.metadata).on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[node.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });;\r\n }\r\n if (node.body !== undefined) {\r\n selection.on(\"click\", function(){\r\n handleClickLoop(fnS, node.body, body_num, nodeId, color, clicked, direction);\r\n clicked = !clicked;\r\n this.setAttribute(\"data-clicked\", clicked.toString());\r\n });\r\n }\r\n}\r\n\r\nfunction drawLiteral_full(node, nodeId, g, color, ranksep) {\r\n g.append(\"rect\")\r\n .attr(\"id\", nodeId)\r\n .attr(\"x\", node.x - node.width / 2)\r\n .attr(\"y\", node.y - node.height / 2 + ranksep)\r\n .attr(\"width\", node.width)\r\n .attr(\"height\", node.height - ranksep * 2)\r\n .style(\"fill\", \"none\")\r\n .style(\"stroke\", color)\r\n .style(\"stroke-width\", 2);\r\n if (node.label !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"12px\")\r\n .text(node.label);\r\n }\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (node.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x + node.width / 2 - 17)\r\n .attr(\"y\", node.y - node.height / 2 + ranksep + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"15px\")\r\n .text(node.metadata).on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[node.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });;\r\n }\r\n if (node.value !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"30px\")\r\n .text(node.value.value);\r\n }\r\n}\r\n\r\nfunction drawLPrimitive_full(node, nodeId, g, color, ranksep) {\r\n g.append(\"rect\")\r\n .attr(\"id\", nodeId)\r\n .attr(\"x\", node.x - node.width / 2)\r\n .attr(\"y\", node.y - node.height / 2 + ranksep)\r\n .attr(\"width\", node.width)\r\n .attr(\"height\", node.height - ranksep * 2)\r\n .style(\"fill\", \"none\")\r\n .style(\"stroke\", color)\r\n .style(\"stroke-width\", 5);\r\n if (node.label !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"20px\")\r\n .text(node.label);\r\n }\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (node.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x + node.width / 2 - 17)\r\n .attr(\"y\", node.y - node.height / 2 + ranksep + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"15px\")\r\n .text(node.metadata).on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[node.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });;\r\n }\r\n if (node.value !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"30px\")\r\n .text(node.value.value);\r\n }\r\n}\r\n\r\nfunction drawLPrimitive_nfull(node, nodeId, g, color, ranksep) {\r\n g.append(\"rect\")\r\n .attr(\"id\", nodeId)\r\n .attr(\"x\", node.x - node.width / 2)\r\n .attr(\"y\", node.y - node.height / 2 - ranksep)\r\n .attr(\"width\", node.width)\r\n .attr(\"height\", node.height)\r\n .style(\"fill\", \"none\")\r\n .style(\"stroke\", color)\r\n .style(\"stroke-width\", 5);\r\n if (node.label !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"12px\")\r\n .text(node.label);\r\n }\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (node.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x + node.width / 2 - 17)\r\n .attr(\"y\", node.y - node.height / 2 - ranksep + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"15px\")\r\n .text(node.metadata).on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[node.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });;\r\n }\r\n if (node.value !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"30px\")\r\n .text(node.value.value);\r\n }\r\n}\r\n\r\nfunction drawLiteral_nfull(node, nodeId, g, color, ranksep) {\r\n g.append(\"rect\")\r\n .attr(\"id\", nodeId)\r\n .attr(\"x\", node.x - node.width / 2 + ranksep / 2)\r\n .attr(\"y\", node.y - node.height / 2 - ranksep)\r\n .attr(\"width\", node.width - ranksep)\r\n .attr(\"height\", node.height)\r\n .style(\"fill\", \"none\")\r\n .style(\"stroke\", color)\r\n .style(\"stroke-width\", 2);\r\n if (node.label !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"12px\")\r\n .text(node.label);\r\n }\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (node.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x + node.width / 2 - 27)\r\n .attr(\"y\", node.y - node.height / 2 - ranksep + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"15px\")\r\n .text(node.metadata).on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[node.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });;\r\n }\r\n if (node.value !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y - ranksep * 1.2)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"30px\")\r\n .text(node.value.value);\r\n }\r\n}\r\n\r\nfunction drawPorts(node, nodeId, g, color, fill=\"white\") {\r\n g.append(\"rect\")\r\n .attr(\"id\", nodeId)\r\n .attr(\"x\", node.x - node.width / 2)\r\n .attr(\"y\", node.y - node.height / 2)\r\n .attr(\"width\", node.width)\r\n .attr(\"height\", node.height)\r\n .style(\"fill\", fill)\r\n .style(\"stroke\", color)\r\n .style(\"stroke-width\", 2);\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (node.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x + node.width / 2 - 12)\r\n .attr(\"y\", node.y - node.height / 2 + 12 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"15px\")\r\n .text(node.metadata).on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[node.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });;\r\n }\r\n if (node.label !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"27px\")\r\n .text(node.label);\r\n }\r\n}\r\n\r\nfunction drawOuterBoxFull(g, bbox, width, height, padding, ranksep, color, body_num, imported=false, layout) {\r\n // 绘制外框\r\n const selection = g.insert(\"rect\", \":first-child\")\r\n .attr(\"id\", \"frame\" + body_num)\r\n .attr(\"x\", bbox.x - padding)\r\n .attr(\"y\", bbox.y - padding + ranksep)\r\n .attr(\"rx\", 15)\r\n .attr(\"ry\", 15)\r\n .attr(\"width\", width - padding * 2)\r\n .attr(\"height\", height - padding * 2 - ranksep * 2)\r\n .style(\"fill\", \"transparent\")\r\n .style(\"stroke\", color)\r\n .style(\"stroke-width\", 5)\r\n .lower();\r\n if (imported) {\r\n selection.style(\"stroke-dasharray\", \"10,5\");\r\n }\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (layout.meta.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", bbox.x - padding + (width - 2*padding) - 17)\r\n .attr(\"y\", bbox.y - padding + ranksep + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"17px\")\r\n .text(layout.meta.metadata).on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[layout.meta.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });;\r\n }\r\n}\r\n\r\nfunction drawOuterBoxBottom(g, bbox, width, height, padding, ranksep, color, body_num, imported=false, layout) {\r\n // 绘制外框\r\n const selection = g.insert(\"rect\", \":first-child\")\r\n .attr(\"id\", \"frame\" + body_num)\r\n .attr(\"x\", bbox.x - padding)\r\n .attr(\"y\", bbox.y - padding - ranksep / 10)\r\n .attr(\"rx\", 15)\r\n .attr(\"ry\", 15)\r\n .attr(\"width\", width - padding * 2)\r\n .attr(\"height\", height - padding * 2 - ranksep)\r\n .style(\"fill\", \"transparent\")\r\n .style(\"stroke\", color)\r\n .style(\"stroke-width\", 5)\r\n .lower();\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (layout.meta.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", bbox.x - padding + (width - 2*padding) - 17)\r\n .attr(\"y\", bbox.y - padding - ranksep / 10 + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"17px\")\r\n .text(layout.meta.metadata).on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[layout.meta.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });;\r\n }\r\n if (imported) {\r\n selection.style(\"stroke-dasharray\", \"10,5\");\r\n }\r\n}\r\n\r\nfunction drawOuterBoxTop(g, bbox, width, height, padding, ranksep, color, body_num, imported=false, layout) {\r\n // 绘制外框\r\n const selection = g.insert(\"rect\", \":first-child\")\r\n .attr(\"id\", \"frame\" + body_num)\r\n .attr(\"x\", bbox.x - padding)\r\n .attr(\"y\", bbox.y - padding + ranksep * 2)\r\n .attr(\"rx\", 15)\r\n .attr(\"ry\", 15)\r\n .attr(\"width\", width - padding * 2)\r\n .attr(\"height\", height - padding * 2 - ranksep)\r\n .style(\"fill\", \"transparent\")\r\n .style(\"stroke\", color)\r\n .style(\"stroke-width\", 5)\r\n .lower();\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (layout.meta.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", bbox.x - padding + (width - 2*padding) - 17)\r\n .attr(\"y\", bbox.y - padding + ranksep * 10 + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"17px\")\r\n .text(layout.meta.metadata).on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[layout.meta.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });;\r\n }\r\n if (imported) {\r\n selection.style(\"stroke-dasharray\", \"10,5\");\r\n }\r\n}\r\n\r\nfunction drawOuterBoxEmpty(g, bbox, width, height, padding, ranksep, color, body_num, imported=false, layout) {\r\n // 绘制外框\r\n if (bbox.x===Infinity || bbox.x === -Infinity){\r\n bbox.x = 100;\r\n bbox.y = 100;\r\n width = 200;\r\n height = 200;\r\n }\r\n const selection = g.insert(\"rect\", \":first-child\")\r\n .attr(\"id\", \"frame\" + body_num)\r\n .attr(\"x\", bbox.x - padding)\r\n .attr(\"y\", bbox.y - padding)\r\n .attr(\"rx\", 15)\r\n .attr(\"ry\", 15)\r\n .attr(\"width\", width - padding * 2)\r\n .attr(\"height\", height - padding * 2)\r\n .style(\"fill\", \"transparent\")\r\n .style(\"stroke\", color)\r\n .style(\"stroke-width\", 5)\r\n .lower();\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (layout.meta.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", bbox.x - padding + (width - 2*padding) - 17)\r\n .attr(\"y\", bbox.y - padding + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"17px\")\r\n .text(layout.meta.metadata).on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[layout.meta.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });;\r\n }\r\n if (imported) {\r\n selection.style(\"stroke-dasharray\", \"10,5\");\r\n }\r\n}\r\n \n\n\n// WEBPACK FOOTER //\n// ./src/utils/drawBox.js","\r\n\r\n\r\n\r\n\r\n\n\n\n// WEBPACK FOOTER //\n// src/App.vue","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"app\"}},[_c('div',{staticClass:\"menu\"},[_vm._v(\"\\n Current Supported Skema Version:\\n \"),_c('span',{staticStyle:{\"white-space\":\"pre\",\"color\":\"tomato\",\"font-weight\":\"bold\"}},[_vm._v(\"0.1.7 \")]),_vm._v(\" \"),_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.selectedOption),expression:\"selectedOption\"}],staticClass:\"my-select\",attrs:{\"placeholder\":\"Select\"},on:{\"change\":[function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.selectedOption=$event.target.multiple ? $$selectedVal : $$selectedVal[0]},_vm.fetchData]}},_vm._l((_vm.options),function(option){return _c('option',{key:option.value,domProps:{\"value\":option.value}},[_vm._v(\"\\n \"+_vm._s(option.text)+\"\\n \")])}),0),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.url),expression:\"url\"}],staticClass:\"url-input\",attrs:{\"type\":\"text\",\"placeholder\":\"Input URL of JSON file here.\"},domProps:{\"value\":(_vm.url)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.url=$event.target.value}}}),_vm._v(\" \"),_c('button',{on:{\"click\":_vm.submitUrl}},[_vm._v(\"Submit\")]),_vm._v(\" \"),_c('input',{ref:\"fileInput\",staticStyle:{\"display\":\"none\"},attrs:{\"type\":\"file\"},on:{\"change\":_vm.handleFileChange}}),_vm._v(\" \"),_c('button',{staticClass:\"btn btn-primary\",style:({ margin: '0 30px', backgroundColor: 'tomato', color: 'white', border: 'none' }),on:{\"click\":_vm.triggerFileInput}},[_vm._v(\"\\n Choose File\\n \")]),_vm._v(\" \"),_c('button',{staticClass:\"btn btn-primary download-button\",on:{\"click\":_vm.downloadSVG}},[_vm._v(\"downloadSVG\")]),_vm._v(\" \"),_c('button',{staticClass:\"btn btn-primary\",style:({ margin: '0 30px', backgroundColor: 'green', color: 'white', border: 'none' }),on:{\"click\":_vm.showPreviousBox}},[_vm._v(\"\\n Previous Box\\n \")])]),_vm._v(\" \"),_c('div',{staticClass:\"content\"},[_c('div',{staticClass:\"editor-box\"},[_c('label',{attrs:{\"for\":\"deep-select\"}},[_vm._v(\"Select Display Depth: \")]),_vm._v(\" \"),_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.selectedDeep),expression:\"selectedDeep\"}],attrs:{\"id\":\"deep-select\"},on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.selectedDeep=$event.target.multiple ? $$selectedVal : $$selectedVal[0]}}},_vm._l((_vm.possibleDepths),function(num){return _c('option',{key:num,domProps:{\"value\":num}},[_vm._v(\"\\n \"+_vm._s(num)+\"\\n \")])}),0),_vm._v(\" \"),_c('vue-json-pretty',{attrs:{\"data\":_vm.highlightedJson,\"editable\":true,\"highlight-array\":_vm.highlightNode,\"deep\":_vm.selectedDeep},nativeOn:{\"click\":function($event){return _vm.jsonClick.apply(null, arguments)}}})],1),_vm._v(\" \"),_c('div',{staticClass:\"svg-container\"},[_c('div',{staticClass:\"tooltip\",staticStyle:{\"opacity\":\"0\"},attrs:{\"id\":\"tooltip\"}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"startingFN\"}},[_vm._v(\"Initial #(Entry): \")]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.startingFN),expression:\"startingFN\"}],domProps:{\"value\":(_vm.startingFN)},on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }return _vm.drawMoviz.apply(null, arguments)},\"input\":function($event){if($event.target.composing){ return; }_vm.startingFN=$event.target.value}}}),_vm._v(\" \"),_c('svg',{ref:\"svgMoviz\",attrs:{\"id\":\"mainsvg\",\"width\":\"1200\",\"height\":\"1000\",\"overflow\":\"visible\"}},[_c('g',{attrs:{\"id\":\"sumGroup\"}})])])])])}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\nexport default esExports\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/vue-loader/lib/template-compiler?{\"id\":\"data-v-3855d3c1\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/App.vue\n// module id = null\n// module chunks = ","function injectStyle (ssrContext) {\n require(\"!!../node_modules/extract-text-webpack-plugin/dist/loader.js?{\\\"omit\\\":1,\\\"remove\\\":true}!vue-style-loader!css-loader?{\\\"sourceMap\\\":true}!../node_modules/vue-loader/lib/style-compiler/index?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-3855d3c1\\\",\\\"scoped\\\":true,\\\"hasInlineConfig\\\":false}!../node_modules/vue-loader/lib/selector?type=styles&index=0!./App.vue\")\n}\nvar normalizeComponent = require(\"!../node_modules/vue-loader/lib/component-normalizer\")\n/* script */\nexport * from \"!!babel-loader!../node_modules/vue-loader/lib/selector?type=script&index=0!./App.vue\"\nimport __vue_script__ from \"!!babel-loader!../node_modules/vue-loader/lib/selector?type=script&index=0!./App.vue\"\n/* template */\nimport __vue_template__ from \"!!../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-3855d3c1\\\",\\\"hasScoped\\\":true,\\\"transformToRequire\\\":{\\\"video\\\":[\\\"src\\\",\\\"poster\\\"],\\\"source\\\":\\\"src\\\",\\\"img\\\":\\\"src\\\",\\\"image\\\":\\\"xlink:href\\\"},\\\"buble\\\":{\\\"transforms\\\":{}}}!../node_modules/vue-loader/lib/selector?type=template&index=0!./App.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = \"data-v-3855d3c1\"\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_template__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/App.vue\n// module id = null\n// module chunks = ","import Vue from 'vue';\r\nimport Router from 'vue-router';\r\nimport App from '@/App';\r\n// import Moviz from '@/components/Moviz';\r\n\r\nVue.use(Router);\r\n\r\nexport default new Router({\r\n routes: [\r\n {\r\n // path: '/',\r\n // name: 'Moviz',\r\n // component: Moviz,\r\n path: '/',\r\n name: 'Moviz',\r\n component: App,\r\n },\r\n ],\r\n mode: 'hash',\r\n});\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/router/index.js","// The Vue build version to load with the `import` command\r\n// (runtime-only or standalone) has been set in webpack.base.conf with an alias.\r\nimport 'bootstrap/dist/css/bootstrap.css';\r\nimport Vue from 'vue';\r\nimport App from './App';\r\nimport router from './router';\r\n\r\nVue.config.productionTip = false;\r\n\r\n/* eslint-disable no-new */\r\nnew Vue({\r\n el: '#app',\r\n router,\r\n components: { App },\r\n template: '',\r\n});\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/main.js","module.exports = {\"name\":\"d3-flextree\",\"version\":\"2.1.2\",\"main\":\"build/d3-flextree.js\",\"module\":\"index\",\"jsnext:main\":\"index\",\"author\":{\"name\":\"Chris Maloney\",\"url\":\"http://chrismaloney.org\"},\"description\":\"Flexible tree layout algorithm that allows for variable node sizes.\",\"keywords\":[\"d3\",\"d3-module\",\"layout\",\"tree\",\"hierarchy\",\"d3-hierarchy\",\"plugin\",\"d3-plugin\",\"infovis\",\"visualization\",\"2d\"],\"homepage\":\"https://github.com/klortho/d3-flextree\",\"license\":\"WTFPL\",\"repository\":{\"type\":\"git\",\"url\":\"https://github.com/klortho/d3-flextree.git\"},\"scripts\":{\"clean\":\"rm -rf build demo test\",\"build:demo\":\"rollup -c --environment BUILD:demo\",\"build:dev\":\"rollup -c --environment BUILD:dev\",\"build:prod\":\"rollup -c --environment BUILD:prod\",\"build:test\":\"rollup -c --environment BUILD:test\",\"build\":\"rollup -c\",\"lint\":\"eslint index.js src\",\"test:main\":\"node test/bundle.js\",\"test:browser\":\"node test/browser-tests.js\",\"test\":\"npm-run-all test:*\",\"prepare\":\"npm-run-all clean build lint test\"},\"dependencies\":{\"d3-hierarchy\":\"^1.1.5\"},\"devDependencies\":{\"babel-plugin-external-helpers\":\"^6.22.0\",\"babel-preset-es2015-rollup\":\"^3.0.0\",\"d3\":\"^4.13.0\",\"d3-selection-multi\":\"^1.0.1\",\"eslint\":\"^4.19.1\",\"jsdom\":\"^11.6.2\",\"npm-run-all\":\"^4.1.2\",\"rollup\":\"^0.55.3\",\"rollup-plugin-babel\":\"^2.7.1\",\"rollup-plugin-commonjs\":\"^8.0.2\",\"rollup-plugin-copy\":\"^0.2.3\",\"rollup-plugin-json\":\"^2.3.0\",\"rollup-plugin-node-resolve\":\"^3.0.2\",\"rollup-plugin-uglify\":\"^3.0.0\",\"uglify-es\":\"^3.3.9\"}}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-flextree/package.json\n// module id = p+Xa\n// module chunks = 1"],"sourceRoot":""} \ No newline at end of file diff --git a/static/js/app.eac58d9146577b5c252e.js b/static/js/app.eac58d9146577b5c252e.js new file mode 100644 index 0000000..27db8db --- /dev/null +++ b/static/js/app.eac58d9146577b5c252e.js @@ -0,0 +1,2 @@ +webpackJsonp([1],{Jmt5:function(t,e){},NHnr:function(t,e,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});r("Jmt5");var i=r("7+uW"),a=r("fZjL"),n=r.n(a),o=r("Dd8w"),l=r.n(o),s=r("Xxa5"),h=r.n(s),d=r("exGp"),c=r.n(d),g=r("Cx91"),u=r("mtWM"),p=r("5i7/"),f=r.n(p),y=(r("iMEU"),r("BO1k")),m=r.n(y),v=r("Zrlr"),x=r.n(v),b=r("wxAW"),w=r.n(b),N=r("YVj4"),_=r("kvU2"),E=r.n(_);function k(t){var e=new N.graphlib.Graph({compound:!0});if(e.setGraph({}),e.setDefaultEdgeLabel(function(){return{}}),"bf"in t)for(var r=0;r0||e.setEdge(Br,Lr)}if("pof"in t)for(var Xr=0;Xr0||e.setEdge(Gr,jr)}if("pic"in t)for(var Ur=0;Ur0||e.setEdge(qr,Hr)}if("poc"in t)for(var Vr=0;Vr0||e.setEdge(Wr,$r)}if("pil"in t)for(var Zr=0;Zr0||e.setEdge(Kr,Yr)}if("pol"in t)for(var Qr=0;Qr0||e.setEdge(ti,ei)}e.nodes().filter(function(t){return t.startsWith("bf")}),e.nodes().filter(function(t){return t.startsWith("bc")}),e.nodes().filter(function(t){return t.startsWith("bl")}),e.nodes().filter(function(t){return t.startsWith("opo")}),e.nodes().filter(function(t){return t.startsWith("opi")});e.setGraph({ranksep:30,rankdir:"BT"}),N.layout(e);var ri={nodes:{},edges:[]};if(e.nodes().forEach(function(t){var r=e.node(t);ri.nodes[t]={x:r.x,y:r.y,width:r.width?r.width:100,height:r.height?r.height:100,label:r.label,type:r.type,value:r.value,body:r.body,condition:r.condition,body_if:r.body_if,body_else:r.body_else,pre:r.pre,post:r.post,metadata:r.metadata}}),e.edges().forEach(function(t,e){ri.edges.push({id:e,source:t.v,target:t.w})}),"bf"in t)for(var ii=function(e){var r="bf-"+e;if("pif"in t&&"pof"in t){var i=t.pof.find(function(t){return t.box===e+1}),a=t.pif.find(function(t){return t.box===e+1});ri.nodes[r].fullBox=!(!i||!a)}else ri.nodes[r].fullBox=!1},ai=0;ai=J.length-1&&(r=J.length-2),r<1&&(r=1);var i=J[r-1],a=J[r+1],n=Math.abs((a.y-i.y)/(a.x-i.x)),o=6*Math.pow((t.x-l+2)/p,.38);return t.y-Math.sqrt(1+Math.pow(n,2))*o}).y1(function(t){var e=t.x,r=L(J,D.invert(e));r>=J.length-1&&(r=J.length-2),r<1&&(r=1);var i=J[r-1],a=J[r+1],n=Math.abs((a.y-i.y)/(a.x-i.x)),o=6*Math.pow((t.x-l+2)/p,.38);return t.y+Math.sqrt(1+Math.pow(n,2))*o}).curve(g.c),j=g.a().x(function(t){return t.x}).y0(function(t){var e=t.x,r=X(O,B.invert(e));r>=O.length-1&&(r=O.length-2),r<1&&(r=1);var i=O[r-1],a=O[r+1],n=Math.abs((a.y-i.y)/(a.x-i.x)),o=6*Math.pow((t.x-l+2)/y,.38);return t.y-Math.sqrt(1+Math.pow(n,2))*o}).y1(function(t){var e=t.x,r=X(O,B.invert(e));r>=O.length-1&&(r=O.length-2),r<1&&(r=1);var i=O[r-1],a=O[r+1],n=Math.abs((a.y-i.y)/(a.x-i.x)),o=6*Math.pow((t.x-l+2)/y,.38);return t.y+Math.sqrt(1+Math.pow(n,2))*o}).curve(g.c);"down"===o&&(G=g.a().y(function(t){return t.y}).x0(function(t){var e=t.y,r=L(J,D.invert(e));r>=J.length-1&&(r=J.length-2),r<1&&(r=1);var i=J[r-1],a=J[r+1],n=Math.abs((a.x-i.x)/(a.y-i.y)),o=6*Math.pow((t.y-s+2)/f,.38);return t.x-Math.sqrt(1+Math.pow(n,2))*o}).x1(function(t){var e=t.y,r=L(J,D.invert(e));r>=J.length-1&&(r=J.length-2),r<1&&(r=1);var i=J[r-1],a=J[r+1],n=Math.abs((a.x-i.x)/(a.y-i.y)),o=6*Math.pow((t.y-s+2)/f,.38);return t.x+Math.sqrt(1+Math.pow(n,2))*o}).curve(g.c),j=g.a().y(function(t){return t.y}).x0(function(t){var e=t.y,r=X(O,B.invert(e));r>=O.length-1&&(r=O.length-2),r<1&&(r=1);var i=O[r-1],a=O[r+1],n=Math.abs((a.x-i.x)/(a.y-i.y)),o=6*Math.pow((t.y-s+2)/m,.38);return t.x-Math.sqrt(1+Math.pow(n,2))*o}).x1(function(t){var e=t.y,r=X(O,B.invert(e));r>=O.length-1&&(r=O.length-2),r<1&&(r=1);var i=O[r-1],a=O[r+1],n=Math.abs((a.x-i.x)/(a.y-i.y)),o=6*Math.pow((t.y-s+2)/m,.38);return t.x+Math.sqrt(1+Math.pow(n,2))*o}).curve(g.c));N.append("path").datum(_).attr("d",G).attr("id","path1").attr("fill",n),N.append("path").datum(E).attr("d",j).attr("id","path2").attr("fill",n);g.g("#boxid"+i).selectAll("rect").each(function(i,o){var l=g.g(this);if(l.attr("id")!==t){var s=l.attr("data-body");if(void 0!==s&&null!==s&&s===a.split("-")[1]){l.attr("data-opened",!0);var h=Number(l.attr("x"))+Number(l.attr("width")),d=Number(l.attr("y"))+Number(l.attr("height"))/2,c=Number(g.g("#"+e).attr("x"))+r[0],u=Number(g.g("#"+e).attr("y"))+r[1]+Number(g.g("#"+e).attr("height"))/2;N.append("circle").attr("cx",c).attr("cy",u).attr("r",7).attr("fill",n),N.append("line").attr("x1",h).attr("y1",d).attr("x2",c).attr("y2",u).attr("stroke-width",3).attr("stroke",n).attr("stroke-dasharray","5,5").attr("marker-end","url(#arrow)").attr("class","arrowLine")}}})}function O(t,e,r,i,a,n,o,l){var s=Number(g.g("#boxid"+i).select("#"+t).attr("x"))+Number(g.g("#boxid"+i).select("#"+t).attr("width")),h=Number(g.g("#boxid"+i).select("#"+t).attr("y"))+Number(g.g("#boxid"+i).select("#"+t).attr("height"))/2,d=Number(g.g("#"+e).attr("x"))+r[0],c=Number(g.g("#"+e).attr("x"))+r[0],u=Number(g.g("#"+e).attr("y"))+r[1],p=Number(g.g("#"+e).attr("y"))+Number(g.g("#"+e).attr("height"))+r[1],f=d-s,y=u-h,m=c-s,v=p-h,x={},b={},w={},N={};x.x=s+.375*f,x.y=h+.3*y,b.x=s+.75*.8*f,b.y=h+.75*y,w.x=s+.375*m,w.y=h+.3*v,N.x=s+.75*.8*m,N.y=h+.75*v,"down"===l&&(s=Number(g.g("#boxid"+i).select("#"+t).attr("x"))+Number(g.g("#boxid"+i).select("#"+t).attr("width"))/2,h=Number(g.g("#boxid"+i).select("#"+t).attr("y"))+Number(g.g("#boxid"+i).select("#"+t).attr("height")),d=Number(g.g("#"+e).attr("x"))+r[0],c=Number(g.g("#"+e).attr("x"))+r[0]+Number(g.g("#"+e).attr("width")),u=Number(g.g("#"+e).attr("y"))+r[1],p=Number(g.g("#"+e).attr("y"))+r[1],y=u-h,m=c-s,v=p-h,b={},w={},N={},(x={}).x=s+.375*(f=d-s),x.y=h+.3*y,b.x=s+.75*.8*f,b.y=h+.75*y,w.x=s+.375*m,w.y=h+.3*v,N.x=s+.75*.8*m,N.y=h+.75*v);var _=g.g("#"+o);_.attr("sourceid",t).attr("targetid",e).attr("locationTransform",r).attr("body_num_source",i).attr("body_num_target",a).attr("color",n);var E=[{x:s,y:h},{x:x.x,y:x.y},{x:b.x,y:b.y},{x:d,y:u+17}],k=[{x:s,y:h},{x:w.x,y:w.y},{x:N.x,y:N.y},{x:c,y:p-17}];"down"===l&&(E=[{x:s,y:h},{x:x.x,y:x.y},{x:b.x,y:b.y},{x:d+17,y:u}],k=[{x:s,y:h},{x:w.x,y:w.y},{x:N.x,y:N.y},{x:c-17,y:p}]);var z=g.e().x(function(t){return t.x}).y(function(t){return t.y}).curve(g.c),M=z(E),S=document.createElementNS("http://www.w3.org/2000/svg","path");S.setAttribute("d",M);var C=z(k),A=document.createElementNS("http://www.w3.org/2000/svg","path");A.setAttribute("d",C);for(var R=S.getTotalLength(),J=A.getTotalLength(),P=[],T=0;T<500;T++){var O=S.getPointAtLength(T*R/499);P.push({x:O.x,y:O.y})}for(var F=[],I=0;I<500;I++){var D=A.getPointAtLength(I*J/499);F.push({x:D.x,y:D.y})}var L=g.f().domain(g.d(E,function(t){return t.x})).range([0,f]),B=g.b(function(t){return t.x}).left,X=g.f().domain(g.d(k,function(t){return t.x})).range([0,f]),G=g.b(function(t){return t.x}).left;"down"===l&&(L=g.f().domain(g.d(E,function(t){return t.y})).range([0,y]),B=g.b(function(t){return t.y}).left,X=g.f().domain(g.d(k,function(t){return t.y})).range([0,y]),G=g.b(function(t){return t.y}).left);var j=g.a().x(function(t){return t.x}).y0(function(t){var e=t.x,r=B(P,L.invert(e));r>=P.length-1&&(r=P.length-2),r<1&&(r=1);var i=P[r-1],a=P[r+1],n=Math.abs((a.y-i.y)/(a.x-i.x)),o=6*Math.pow((t.x-s+2)/f,.38);return t.y-Math.sqrt(1+Math.pow(n,2))*o}).y1(function(t){var e=t.x,r=B(P,L.invert(e));r>=P.length-1&&(r=P.length-2),r<1&&(r=1);var i=P[r-1],a=P[r+1],n=Math.abs((a.y-i.y)/(a.x-i.x)),o=6*Math.pow((t.x-s+2)/f,.38);return t.y+Math.sqrt(1+Math.pow(n,2))*o}).curve(g.c),U=g.a().x(function(t){return t.x}).y0(function(t){var e=t.x,r=G(F,X.invert(e));r>=F.length-1&&(r=F.length-2),r<1&&(r=1);var i=F[r-1],a=F[r+1],n=Math.abs((a.y-i.y)/(a.x-i.x)),o=6*Math.pow((t.x-s+2)/f,.38);return t.y-Math.sqrt(1+Math.pow(n,2))*o}).y1(function(t){var e=t.x,r=G(F,X.invert(e));r>=F.length-1&&(r=F.length-2),r<1&&(r=1);var i=F[r-1],a=F[r+1],n=Math.abs((a.y-i.y)/(a.x-i.x)),o=6*Math.pow((t.x-s+2)/f,.38);return t.y+Math.sqrt(1+Math.pow(n,2))*o}).curve(g.c);"down"===l&&(j=g.a().y(function(t){return t.y}).x0(function(t){var e=t.y,r=B(P,L.invert(e));r>=P.length-1&&(r=P.length-2),r<1&&(r=1);var i=P[r-1],a=P[r+1],n=Math.abs((a.x-i.x)/(a.y-i.y)),o=6*Math.pow((t.y-h+2)/y,.38);return t.x-Math.sqrt(1+Math.pow(n,2))*o}).x1(function(t){var e=t.y,r=B(P,L.invert(e));r>=P.length-1&&(r=P.length-2),r<1&&(r=1);var i=P[r-1],a=P[r+1],n=Math.abs((a.x-i.x)/(a.y-i.y)),o=6*Math.pow((t.y-h+2)/y,.38);return t.x+Math.sqrt(1+Math.pow(n,2))*o}).curve(g.c),U=g.a().y(function(t){return t.y}).x0(function(t){var e=t.y,r=G(F,X.invert(e));r>=F.length-1&&(r=F.length-2),r<1&&(r=1);var i=F[r-1],a=F[r+1],n=Math.abs((a.x-i.x)/(a.y-i.y)),o=6*Math.pow((t.y-h+2)/v,.38);return t.x-Math.sqrt(1+Math.pow(n,2))*o}).x1(function(t){var e=t.y,r=G(F,X.invert(e));r>=F.length-1&&(r=F.length-2),r<1&&(r=1);var i=F[r-1],a=F[r+1],n=Math.abs((a.x-i.x)/(a.y-i.y)),o=6*Math.pow((t.y-h+2)/v,.38);return t.x+Math.sqrt(1+Math.pow(n,2))*o}).curve(g.c));_.select("#path1").datum(E).transition("transition10").duration(720).attr("d",j).attr("fill",n),_.select("#path2").datum(k).transition("transition11").duration(720).attr("d",U).attr("fill",n);g.g("#boxid"+i).selectAll("rect").each(function(i,o){var l=g.g(this);if(l.attr("id")!==t){var s=l.attr("data-body");if(void 0!==s&&null!==s&&s===a.split("-")[1]){var h=Number(l.attr("x"))+Number(l.attr("width")),d=Number(l.attr("y"))+Number(l.attr("height"))/2,c=Number(g.g("#"+e).attr("x"))+r[0],u=Number(g.g("#"+e).attr("y"))+r[1]+Number(g.g("#"+e).attr("height"))/2;_.select("circle").transition("transition12").duration(720).attr("cx",c).attr("cy",u).attr("r",7).attr("fill",n),_.select("line").transition("transition13").duration(720).attr("x1",h).attr("y1",d).attr("x2",c).attr("y2",u).attr("stroke-width",3).attr("stroke",n).attr("stroke-dasharray","5,5").attr("marker-end","url(#arrow)").attr("class","arrowLine")}}})}function F(t,e,r,i,a,n){var o="frame"+e,l=t[r][0]-t[e][0]-Number(g.g("#"+o).attr("width")),s=t[r][1]-t[e][1],h=Number(g.g("#"+o).attr("x"))+Number(g.g("#"+o).attr("width")),d=Number(g.g("#"+o).attr("y"))+Number(g.g("#"+o).attr("height"))/2,c=h+l,u=d+s;"down"===n&&(h=Number(g.g("#"+o).attr("x"))+Number(g.g("#"+o).attr("width"))/2,d=Number(g.g("#"+o).attr("y"))+Number(g.g("#"+o).attr("height")),c=h+(l=t[r][0]-t[e][0]),u=d+(s=t[r][1]-t[e][1]-Number(g.g("#"+o).attr("height"))));var p=g.g("svg").select("#sumGroup").append("g").attr("id","line"+String(e)+"_"+String(r)).attr("line-type","dashed").attr("class","drawer");p.append("defs").append("marker").attr("id","arrow").attr("markerWidth",5).attr("markerHeight",3.5).attr("refX",5).attr("refY",1.75).attr("orient","auto").append("path").attr("d","M0,0 L5,1.75 L0,3.5 Z").style("fill","gray"),p.append("line").attr("x1",h).attr("y1",d).attr("x2",c).attr("y2",u).attr("stroke-width",5).attr("stroke",i).attr("stroke-dasharray","5,5").attr("marker-end","url(#arrow)").attr("class","arrowLine");var f=(h+c)/2-45,y=(d+u)/2-5;p.append("text").attr("x",f).attr("y",y).text(a).style("font-size","30px").style("fill","black")}function I(t,e,r,i,a,n,o){var l="frame"+e,s=t[r][0]-t[e][0]-Number(g.g("#"+l).attr("width")),h=t[r][1]-t[e][1],d=Number(g.g("#"+l).attr("x"))+Number(g.g("#"+l).attr("width")),c=Number(g.g("#"+l).attr("y"))+Number(g.g("#"+l).attr("height"))/2,u=d+s,p=c+h;"down"===o&&(d=Number(g.g("#"+l).attr("x"))+Number(g.g("#"+l).attr("width"))/2,c=Number(g.g("#"+l).attr("y"))+Number(g.g("#"+l).attr("height")),u=d+(s=t[r][0]-t[e][0]),p=c+(h=t[r][1]-t[e][1]-Number(g.g("#"+l).attr("height"))));var f=g.g("svg").select("#sumGroup").select("#"+n);f.select("line").transition("transition14").duration(720).attr("x1",d).attr("y1",c).attr("x2",u).attr("y2",p).attr("stroke-width",5).attr("stroke",i).attr("stroke-dasharray","5,5").attr("marker-end","url(#arrow)").attr("class","arrowLine");var y=(d+u)/2-45,m=(c+p)/2-5;f.select("text").transition("transition15").duration(720).attr("x",y).attr("y",m).text(a).style("font-size","30px").style("fill","black")}function D(t,e){if(t.length!==e.length)return!1;for(var r=0;r57?a=t.x:(e=!0,t.x-60<0?r=!0:i[n-1].x=t.x-60)})):i.forEach(function(t,i){a=-999999,t.x-a>57?a=t.x:(e=!0,t.x-60<0?r=!0:t.x=a+60)});return console.log(i),i}function B(t,e){e(t),t.children&&t.children.forEach(function(t){return B(t,e)}),t._children&&t._children.forEach(function(t){return B(t,e)})}function X(t,e){console.log(e),e.forEach(function(e){var r=t,i=2;e.path.forEach(function(t){if(0!==Number(t))if(i<=e.path.length-1){var a=r.children.filter(function(e){return Number(e.name)===Number(t)})[0];i+=1,r=a}else t===e.path[e.path.length-1]&&(r.hasOwnProperty("children")?(r.children.push(e),r.children.sort(function(t,e){for(var r=t.oName.split("-").map(Number),i=e.oName.split("-").map(Number),a=0;ai[a])return 1}return 0})):r.children=[e])})})}function G(t){var e={},r=[];g.h(".drawer").each(function(i,a){var n=g.g(this).attr("id").replace("boxid",""),o=g.g(this).attr("direction");if(2!==n.split("_").length){var l=n.split("-"),s=l[l.length-1];if("0"===s)e.name=Number(s),e.oName=n,e.path=l,e.size=[Number(g.g(this).attr("width"))+t,Number(g.g(this).attr("height"))],e.direction=o;else{var h={};h.name=Number(s),h.size=[Number(g.g(this).attr("width"))+t,Number(g.g(this).attr("height"))],h.path=l,h.oName=n,h.direction=o,r.push(h)}}});return r.sort(function(t,e){return t.path.length-e.path.length}),X(e,r),B(e,function(t){Array.isArray(t.size)&&(t._size||(t._size=t.size.slice()),t.size=t._size.slice().reverse())}),e}var j=r("Zx67"),U=r.n(j),H=r("zwoO"),q=r.n(H),V=r("Pf15"),W=r.n(V),$=r("woOf"),Z=r.n($),Y=r("u2KI"),K=r.n(Y),Q=r("0PjT"),tt=K()({children:function(t){return t.children},nodeSize:function(t){return t.data.size},spacing:0});function et(t){var e=Z()({},tt,t);function r(t){var r=e[t];return"function"==typeof r?r:function(){return r}}function i(t){var e,i,o,l=n((e=a(),i=r("nodeSize"),o=r("spacing"),function(t){function e(t){x()(this,e);var r=q()(this,(e.__proto__||U()(e)).call(this,t));return Z()(r,{x:0,y:0,relX:0,prelim:0,shift:0,change:0,lExt:r,lExtRelX:0,lThr:null,rExt:r,rExtRelX:0,rThr:null}),r}return W()(e,t),w()(e,[{key:"spacing",value:function(t){return o(this.data,t.data)}},{key:"update",value:function(){return rt(this),it(this),this}},{key:"size",get:function(){return i(this.data)}},{key:"x",get:function(){return this.data.x},set:function(t){this.data.x=t}},{key:"y",get:function(){return this.data.y},set:function(t){this.data.y=t}}]),e}(e)),t,function(t){return t.children});return l.update(),l.data}function a(){var t=r("nodeSize"),e=r("spacing");return function(r){function i(t){return x()(this,i),q()(this,(i.__proto__||U()(i)).call(this,t))}return W()(i,r),w()(i,[{key:"copy",value:function(){var t=n(this.constructor,this,function(t){return t.children});return t.each(function(t){return t.data=t.data.data}),t}},{key:"spacing",value:function(t){return e(this,t)}},{key:"size",get:function(){return t(this)}},{key:"nodes",get:function(){return this.descendants()}},{key:"xSize",get:function(){return this.size[0]}},{key:"ySize",get:function(){return this.size[1]}},{key:"top",get:function(){return this.y}},{key:"bottom",get:function(){return this.y+this.ySize}},{key:"left",get:function(){return this.x-this.xSize/2}},{key:"right",get:function(){return this.x+this.xSize/2}},{key:"root",get:function(){var t=this.ancestors();return t[t.length-1]}},{key:"numChildren",get:function(){return this.hasChildren?this.children.length:0}},{key:"hasChildren",get:function(){return!this.noChildren}},{key:"noChildren",get:function(){return null===this.children}},{key:"firstChild",get:function(){return this.hasChildren?this.children[0]:null}},{key:"lastChild",get:function(){return this.hasChildren?this.children[this.numChildren-1]:null}},{key:"extents",get:function(){return(this.children||[]).reduce(function(t,e){return i.maxExtents(t,e.extents)},this.nodeExtents)}},{key:"nodeExtents",get:function(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}}}],[{key:"maxExtents",value:function(t,e){return{top:Math.min(t.top,e.top),bottom:Math.max(t.bottom,e.bottom),left:Math.min(t.left,e.left),right:Math.max(t.right,e.right)}}}]),i}(Q.a.prototype.constructor)}function n(t,e,r){return function e(i,a){var n=new t(i);Z()(n,{parent:a,depth:null===a?0:a.depth+1,height:0,length:1});var o=r(i)||[];return n.children=0===o.length?null:o.map(function(t){return e(t,n)}),n.children&&Z()(n,n.children.reduce(function(t,e){return{height:Math.max(t.height,e.height+1),length:t.length+e.length}},n)),n}(e,null)}return Z()(i,{nodeSize:function(t){return arguments.length?(e.nodeSize=t,i):e.nodeSize},spacing:function(t){return arguments.length?(e.spacing=t,i):e.spacing},children:function(t){return arguments.length?(e.children=t,i):e.children},hierarchy:function(t,r){var i=void 0===r?e.children:r;return n(a(),t,i)},dump:function(t){var e=r("nodeSize");return function t(r){return function(i){var a=r+" ",n=r+" ",o=i.x,l=i.y,s=e(i),h=i.children||[],d=0===h.length?" ":","+a+"children: ["+n+h.map(t(n)).join(n)+a+"],"+r;return"{ size: ["+s.join(", ")+"],"+a+"x: "+o+", y: "+l+d+"},"}}("\n")(t)}}),i}var rt=function t(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return e.y=r,(e.children||[]).reduce(function(r,i){var a=P()(r,2),n=a[0],o=a[1];t(i,e.y+e.ySize);var l=(0===n?i.lExt:i.rExt).bottom;return 0!==n&&nt(e,n,o),[n+1,ut(l,n,o)]},[0,null]),at(e),gt(e),e},it=function t(e,r,i){void 0===r&&(r=-e.relX-e.prelim,i=0);var a=r+e.relX;return e.relX=a+e.prelim-i,e.prelim=0,e.x=i+e.relX,(e.children||[]).forEach(function(r){return t(r,a,e.x)}),e},at=function(t){(t.children||[]).reduce(function(t,e){var r=P()(t,2),i=r[0],a=r[1],n=i+e.shift,o=a+n+e.change;return e.relX+=o,[n,o]},[0,0])},nt=function(t,e,r){for(var i=t.children[e-1],a=t.children[e],n=i,o=i.relX,l=a,s=a.relX,h=!0;n&&l;){n.bottom>r.lowY&&(r=r.next);var d=o+n.prelim-(s+l.prelim)+n.xSize/2+l.xSize/2+n.spacing(l);(d>0||d<0&&h)&&(s+=d,ot(a,d),lt(t,e,r.index,d)),h=!1;var c=n.bottom,g=l.bottom;c<=g&&(n=ht(n))&&(o+=n.relX),c>=g&&(l=st(l))&&(s+=l.relX)}!n&&l?dt(t,e,l,s):n&&!l&&ct(t,e,n,o)},ot=function(t,e){t.relX+=e,t.lExtRelX+=e,t.rExtRelX+=e},lt=function(t,e,r,i){var a=t.children[e],n=e-r;if(n>1){var o=i/n;t.children[r+1].shift+=o,a.shift-=o,a.change-=i-o}},st=function(t){return t.hasChildren?t.firstChild:t.lThr},ht=function(t){return t.hasChildren?t.lastChild:t.rThr},dt=function(t,e,r,i){var a=t.firstChild,n=a.lExt,o=t.children[e];n.lThr=r;var l=i-r.relX-a.lExtRelX;n.relX+=l,n.prelim-=l,a.lExt=o.lExt,a.lExtRelX=o.lExtRelX},ct=function(t,e,r,i){var a=t.children[e],n=a.rExt,o=t.children[e-1];n.rThr=r;var l=i-r.relX-a.rExtRelX;n.relX+=l,n.prelim-=l,a.rExt=o.rExt,a.rExtRelX=o.rExtRelX},gt=function(t){if(t.hasChildren){var e=t.firstChild,r=t.lastChild,i=(e.prelim+e.relX-e.xSize/2+r.relX+r.prelim+r.xSize/2)/2;Z()(t,{prelim:i,lExt:e.lExt,lExtRelX:e.lExtRelX,rExt:r.rExt,rExtRelX:r.rExtRelX})}},ut=function(t,e,r){for(;null!==r&&t>=r.lowY;)r=r.next;return{lowY:t,index:e,next:r}},pt=r("c/Tr"),ft=r.n(pt),yt=r("lHA8"),mt=r.n(yt);function vt(t){return function(t){var e={};do{var r=xt(t),i=[].concat(R()(r.right),R()(r.down),R()(r.mix)),a=i.reduce(function(t,e){return l()({},t,e)},{});if(_(e)){var n=k(e,a),o=!0,s=!1,h=void 0;try{for(var d,c=m()(n);!(o=(d=c.next()).done);o=!0){var g=d.value,u=a[g],p={};for(var f in e){var y=e[f];f.startsWith(g)&&(p[f]=y)}var v=bt(p),x=u[0]-v.x,b=u[1]-v.y;for(var w in e){var N=e[w];w.startsWith(g)&&(N[0]+=x,N[1]+=b)}}}catch(t){s=!0,h=t}finally{try{!o&&c.return&&c.return()}finally{if(s)throw h}}z(e,a)}else e=E()(a)}while("children"in t);return e;function _(t){for(var e in t)return!0;return!1}function k(t,e){var r=[];for(var i in t)t.hasOwnProperty(i)&&e.hasOwnProperty(i)&&r.push(i);return r}function z(t,e){for(var r in e)e.hasOwnProperty(r)&&!t.hasOwnProperty(r)&&(t[r]=e[r])}}(E()(t))}function xt(t){var e=new mt.a,r=new mt.a;!function t(e,r){e.parent=r;e.children&&e.children.forEach(function(r){return t(r,e)})}(t,null),function t(e,r,i){var a=!0;!function t(r){r.direction!==e.direction&&(a=!1);r.children&&r.children.forEach(t)}(e);if(a)return"right"===e.direction?null!==e.parent?r.add(e.parent):r.add(e):"down"===e.direction&&(e.parent,i.add(e.parent)),!0;e.children&&e.children.forEach(function(e){return t(e,r,i)});return!1}(t,e,r);var i=new mt.a,a=!0,n=!1,o=void 0;try{for(var s,h=m()(e);!(a=(s=h.next()).done);a=!0){var d=s.value;r.has(d)&&(i.add(d),e.delete(d),r.delete(d))}}catch(t){n=!0,o=t}finally{try{!a&&h.return&&h.return()}finally{if(n)throw o}}return{right:ft()(e).map(function(t){var e=E()(t);if(delete t.children,g(e),"down"===t.direction){var r=e.size[0];e.size[0]=e.size[1],e.size[1]=r}B(e,function(t){Array.isArray(t.size)&&(t.size[1]+=100)});var i=et({spacing:80}),a=i(i.hierarchy(e));a.each(function(t){var e=t.x;t.x=t.y,t.y=e});var n={};a.each(function(t){n[t.data.oName]=[t.x,t.y-t.data.size[0]/2,t.data.size[1],1*t.data.size[0]]});var o=bt(n);return t._size=[o.width,o.height],t.size=[o.height,o.width],n}),down:ft()(r).map(function(t){var e=E()(t);if(delete t.children,c(e),B(e,function(t){Array.isArray(t.size)&&(t._size||(t._size=t.size.slice()),t.size=[t.size[1],t.size[0]])}),B(e,function(t){Array.isArray(t.size)&&(t.size[1]+=100)}),"down"===t.direction){var r=e.size[0];e.size[0]=e.size[1],e.size[1]=r}var i=et({spacing:120}),a={};i(i.hierarchy(e)).each(function(t){a[t.data.oName]=[t.x-t.data.size[0]/2,t.y,1*t.data.size[0],t.data.size[1]]});var n=bt(a);return t._size=[n.width,n.height],t.size=[n.height,n.width],a}),mix:ft()(i).map(function(t){var e=E()(t);delete t.children;var r=E()(e);B(r,function(t){Array.isArray(t.size)&&(t._size||(t._size=t.size.slice()),t.size=[t.size[1],t.size[0]])}),B(r,function(t){Array.isArray(t.size)&&(t.size[1]+=100)}),B(e,function(t){Array.isArray(t.size)&&(t.size[1]+=100)}),c(r),g(e);var i=et({spacing:120}),a=et({spacing:80}),n=i.hierarchy(r),o=a.hierarchy(e);if("down"===t.direction){var s=e.size[0];e.size[0]=e.size[1],e.size[1]=s;var h=r.size[0];r.size[0]=r.size[1],r.size[1]=h}var d=i(n),u=i(o);u.each(function(t){var e=t.x;t.x=t.y,t.y=e});var p={};d.each(function(t){p[t.data.oName]=[t.x-t.data.size[0]/2,t.y,t.data.size[0],1*t.data.size[1]]});var f={};u.each(function(t){f[t.data.oName]=[t.x,t.y-t.data.size[0]/2,t.data.size[1],1*t.data.size[0]]});var y=f[t.oName][0]-p[t.oName][0],m=f[t.oName][1]-p[t.oName][1];for(var v in p)p[v][0]+=y,p[v][1]+=m;var x=l()({},f,p),b=bt(x);return t._size=[b.width,b.height],t.size=[b.height,b.width],x})};function c(t){t.children&&(t.children=t.children.filter(function(t){return"right"!==t.direction}),t.children.forEach(c))}function g(t){t.children&&(t.children=t.children.filter(function(t){return"down"!==t.direction}),t.children.forEach(g))}}function bt(t){var e=1/0,r=1/0,i=-1/0,a=-1/0;for(var n in t){var o=t[n],l=o[0],s=o[1],h=l,d=s,c=l+o[2],g=s+o[3];e=Math.min(e,h),r=Math.min(r,d),i=Math.max(i,c),a=Math.max(a,g)}return{x:e,y:r,width:i-e,height:a-r}}function wt(t,e,r,i,a,o,l){console.log(l,"direction");var s=g.g("#boxid"+String(r)).select("#"+String(i));if(o||"true"===s.attr("data-opened"))return g.g("#boxid"+String(r)).selectAll("[data-opened='true']").attr("data-opened","false"),void g.h(".drawer").each(function(t,i){var a=this,n=g.g(this).attr("id").replace("line","").replace("boxid",""),o=(String(r)+"-"+String(e)).split("-");if(2===n.split("_").length){var l=!1,s=n.split("_")[0],h=n.split("_")[1],d=s.split("-"),c=h.split("-");if(D(d,o))g.g(this).transition("transition1").duration(200).style("opacity",0).end().then(function(){g.g(a).remove()}),l=!0;else if(d.length>o.length){var u=d.slice(0,o.length);M()(u)===M()(o)&&(g.g(this).transition("transition2").duration(200).style("opacity",0).end().then(function(){g.g(a).remove()}),l=!0)}if(!l)if(D(c,o))g.g(this).transition("transition3").duration(200).style("opacity",0).end().then(function(){g.g(a).remove()});else if(c.length>o.length){var p=c.slice(0,o.length);M()(p)===M()(o)&&g.g(this).transition("transition4").duration(200).style("opacity",0).end().then(function(){g.g(a).remove()})}}else{var f=n.split("-");if(D(f,o))g.g(this).transition("transition5").duration(200).style("opacity",0).end().then(function(){g.g(a).remove()});else if(f.length>o.length){var y=f.slice(0,o.length);M()(y)===M()(o)&&g.g(this).transition("transition6").duration(200).style("opacity",0).end().then(function(){g.g(a).remove()})}}});r=String(r);var h=k(t[e-1]),d=String(r)+"-"+String(e);zt(h,t,d,l);var c,u=G(0);c=vt(u);n()(c);var p=c[d][0]-c[r][0],f=c[d][1]-c[r][1];T(i,"frame"+d,[p,f],r,d,a,l),g.h(".drawer").each(function(t,e){var r=g.g(this).attr("id").replace("boxid","");2!==r.split("_").length&&(r===d?(g.g(this).attr("transform","translate("+(c[r][0]+90)+","+(c[r][1]+675)+")").attr("opacity",0),g.g(this).transition("transition7").duration(920).style("opacity",1)):g.g(this).transition("transition8").duration(720).attr("transform","translate("+(c[r][0]+90)+","+(c[r][1]+675)+")"))}),g.h(".drawer").each(function(t,e){var r=g.g(this).attr("id").replace("boxid","");if(2===r.split("_").length)if("dashed"!==g.g(this).attr("line-type")){var i=r,a=r.replace("line","").split("_")[0],n=r.replace("line","").split("_")[1],o=g.g("#boxid"+a).attr("transform"),l=g.g("#boxid"+n).attr("transform");if(null!==o&&a!=d){var s,h=o.slice(10,-1).split(",").map(Number);s=[c[a][0]+90,c[a][1]+675];var u=[c[n][0]-c[a][0],c[n][1]-c[a][1]];if(h[1]!==s[1]||h[0]!==s[0]){var p=g.g(this).attr("sourceid"),f=g.g(this).attr("targetid"),y=g.g(this).attr("body_num_source"),m=g.g(this).attr("body_num_target");O(p,f,u,y,m,g.g(this).attr("color"),i,g.g("#boxid"+m).attr("direction"))}}if(null!==l&&n!=d){var v,x=l.slice(10,-1).split(",").map(Number),b=[c[n][0]-c[a][0],c[n][1]-c[a][1]];if(v=[c[n][0]+90,c[n][1]+675],x[1]!==v[1]||x[0]!==v[0]){var w=g.g(this).attr("sourceid"),N=g.g(this).attr("targetid"),_=g.g(this).attr("body_num_source"),E=g.g(this).attr("body_num_target");O(w,N,b,_,E,g.g(this).attr("color"),i,g.g("#boxid"+E).attr("direction"))}}r=(r=r.replace("line","")).split("_")[0],g.g(this).attr("transform","translate("+(c[r][0]+90)+","+(c[r][1]+675)+")").style("opacity",.38)}else{var k=r,z=r.replace("line","").split("_")[0],M=r.replace("line","").split("_")[1],S=g.g("#boxid"+z).attr("transform"),C=g.g("#boxid"+M).attr("transform");if(null!==S&&z!=d){var A,R=S.slice(10,-1).split(",").map(Number);if(A=[c[z][0]+90,c[z][1]+675],R[1]!==A[1]||R[0]!==A[0]){var J=g.g(this).select("text").text();I(c,z,M,"black",J,k)}}if(null!==C&&M!=d){var P,T=C.slice(10,-1).split(",").map(Number);if(P=[c[M][0]+90,c[M][1]+675],T[1]!==P[1]||T[0]!==P[0]){var F=g.g(this).select("text").text();I(c,z,M,"black",F,k)}}r=(r=r.replace("line","")).split("_")[0],g.g(this).transition("transition9").duration(720).attr("transform","translate("+(c[r][0]+90)+","+(c[r][1]+675)+")")}})}r("izJC");function Nt(t,e,r,i,a,o,l,s,h){var d=g.g("#boxid"+String(a)).select("#"+String(o));if(s||"true"===d.attr("data-opened"))return g.g("#boxid"+String(a)).selectAll("[data-opened='true']").attr("data-opened","false"),void g.h(".drawer").each(function(t,r){var i=this,n=g.g(this).attr("id").replace("line","").replace("boxid",""),o=(String(a)+"-"+String(e)).split("-");if(2===n.split("_").length){var l=!1,s=n.split("_")[0],h=n.split("_")[1],d=s.split("-"),c=h.split("-");if(D(d,o))g.g(this).transition().duration(200).style("opacity",0).end().then(function(){g.g(i).remove()}),l=!0;else if(d.length>o.length){var u=d.slice(0,o.length);M()(u)===M()(o)&&(g.g(this).transition().duration(200).style("opacity",0).end().then(function(){g.g(i).remove()}),l=!0)}if(!l)if(D(c,o))g.g(this).transition().duration(200).style("opacity",0).end().then(function(){g.g(i).remove()});else if(c.length>o.length){var p=c.slice(0,o.length);M()(p)===M()(o)&&g.g(this).transition().duration(200).style("opacity",0).end().then(function(){g.g(i).remove()})}}else{var f=n.split("-");if(D(f,o))g.g(this).transition().duration(200).style("opacity",0).end().then(function(){g.g(i).remove()});else if(f.length>o.length){var y=f.slice(0,o.length);M()(y)===M()(o)&&g.g(this).transition().duration(200).style("opacity",0).end().then(function(){g.g(i).remove()})}}});a=String(a);var c=void 0,u=k(t[e-1]),p=k(t[r-1]);void 0!==i&&(c=k(t[i-1]));var f=String(a)+"-"+String(e),y=String(f)+"-"+String(r),m=String(f)+"-"+String(i);zt(u,t,f,h),zt(p,t,y,h),void 0!==i&&zt(c,t,m,h);var v,x=G(0);v=vt(x);n()(v);console.log(v),console.log();var b=v[f][0]-v[a][0],w=v[f][1]-v[a][1];T(o,"frame"+f,[b,w],a,f,l,h),F(v,f,y,"black","TRUE",h),void 0!==c&&F(v,f,m,"black","FALSE",h),g.h(".drawer").each(function(t,e){var r=g.g(this).attr("id").replace("boxid","");if(2===r.split("_").length)if("dashed"!==g.g(this).attr("line-type")){var i=r,a=r.replace("line","").split("_")[0],n=r.replace("line","").split("_")[1],o=g.g("#boxid"+a).attr("transform"),l=g.g("#boxid"+n).attr("transform");if(null!==o&&a!=f){var s,h=o.slice(10,-1).split(",").map(Number);s=[v[a][0]+90,v[a][1]+675];var d=[v[n][0]-v[a][0],v[n][1]-v[a][1]];if(h[1]!==s[1]||h[0]!==s[0]){var c=g.g(this).attr("sourceid"),u=g.g(this).attr("targetid"),p=(g.g(this).attr("locationTransform").split(","),g.g(this).attr("body_num_source")),x=g.g(this).attr("body_num_target");O(c,u,d,p,x,g.g(this).attr("color"),i,g.g("#boxid"+x).attr("direction"))}}if(null!==l&&n!=f){var b,w=l.slice(10,-1).split(",").map(Number);b=[v[n][0]+90,v[n][1]+675];var N=[v[n][0]-v[a][0],v[n][1]-v[a][1]];if(w[1]!==b[1]||w[0]!==b[0]){var _=g.g(this).attr("sourceid"),E=g.g(this).attr("targetid"),k=(g.g(this).attr("locationTransform").split(","),g.g(this).attr("body_num_source")),z=g.g(this).attr("body_num_target");O(_,E,N,k,z,g.g(this).attr("color"),i,g.g("#boxid"+z).attr("direction"))}}r=(r=r.replace("line","")).split("_")[0],g.g(this).attr("transform","translate("+(v[r][0]+90)+","+(v[r][1]+675)+")").style("opacity",.38)}else{var M=r,S=r.replace("line","").split("_")[0],C=r.replace("line","").split("_")[1],A=g.g("#boxid"+S).attr("transform"),R=g.g("#boxid"+C).attr("transform");if(null!==A&&S!=f){var J,P=A.slice(10,-1).split(",").map(Number);if(J=[v[S][0]+90,v[S][1]+675],P[1]!==J[1]||P[0]!==J[0]){var T=g.g(this).select("text").text(),F=g.g("#boxid"+C).attr("direction");I(v,S,C,"black",T,M,F)}}if(null!==R&&C!=f){var D,L=R.slice(10,-1).split(",").map(Number);if(D=[v[C][0]+90,v[C][1]+675],L[1]!==D[1]||L[0]!==D[0]){var B=g.g(this).select("text").text(),X=g.g("#boxid"+C).attr("direction");I(v,S,C,"black",B,M,X)}}r=(r=r.replace("line","")).split("_")[0],g.g(this).attr("transform","translate("+(v[r][0]+90)+","+(v[r][1]+675)+")")}else r===f||r===m||r===y?(g.g(this).attr("transform","translate("+(v[r][0]+90)+","+(v[r][1]+675)+")").attr("opacity",0),g.g(this).transition().duration(920).style("opacity",1)):g.g(this).transition().duration(720).attr("transform","translate("+(v[r][0]+90)+","+(v[r][1]+675)+")")})}function _t(t,e,r,i,a,o,l,s,h,d){var c=g.g("#boxid"+String(o)).select("#"+String(l));if(h||"true"===c.attr("data-opened"))return g.g("#boxid"+String(o)).selectAll("[data-opened='true']").attr("data-opened","false"),void g.h(".drawer").each(function(t,r){var i=this,a=g.g(this).attr("id").replace("line","").replace("boxid",""),n=(String(o)+"-"+String(e)).split("-");if(2===a.split("_").length){var l=!1,s=a.split("_")[0],h=a.split("_")[1],d=s.split("-"),c=h.split("-");if(D(d,n))g.g(this).transition().duration(200).style("opacity",0).end().then(function(){g.g(i).remove()}),l=!0;else if(d.length>n.length){var u=d.slice(0,n.length);M()(u)===M()(n)&&(g.g(this).transition().duration(200).style("opacity",0).end().then(function(){g.g(i).remove()}),l=!0)}if(!l)if(D(c,n))g.g(this).transition().duration(200).style("opacity",0).end().then(function(){g.g(i).remove()});else if(c.length>n.length){var p=c.slice(0,n.length);M()(p)===M()(n)&&g.g(this).transition().duration(200).style("opacity",0).end().then(function(){g.g(i).remove()})}}else{var f=a.split("-");if(D(f,n))g.g(this).transition().duration(200).style("opacity",0).end().then(function(){g.g(i).remove()});else if(f.length>n.length){var y=f.slice(0,n.length);M()(y)===M()(n)&&g.g(this).transition().duration(200).style("opacity",0).end().then(function(){g.g(i).remove()})}}});o=String(o);var u=String(o)+"-"+String(e),p=String(u)+"-"+String(r),f=String(u)+"-"+String(i),y=String(u)+"-"+String(a);void 0!==e&&zt(k(t[e-1]),t,u,d),void 0!==r&&zt(k(t[r-1]),t,p,d),void 0!==i&&zt(k(t[i-1]),t,f,d),void 0!==a&&zt(k(t[a-1]),t,y,d);var m,v=G(100);m=vt(v);n()(m);console.log(m),console.log();var x=m[u][0]-m[o][0],b=m[u][1]-m[o][1];T(l,"frame"+u,[x,b],o,u,s,d),void 0!==r&&F(m,u,p,"black","PRE",d),void 0!==i&&F(m,u,f,"black","WHILE TRUE",d),void 0!==a&&F(m,u,y,"black","POST",d),g.h(".drawer").each(function(t,e){var r=g.g(this).attr("id").replace("boxid","");if(2===r.split("_").length)if("dashed"!==g.g(this).attr("line-type")){var i=r,a=r.replace("line","").split("_")[0],n=r.replace("line","").split("_")[1],o=g.g("#boxid"+a).attr("transform"),l=g.g("#boxid"+n).attr("transform");if(null!==o&&a!=u){var s,h=o.slice(10,-1).split(",").map(Number);s=[m[a][0]+90,m[a][1]+675];var d=[m[n][0]-m[a][0],m[n][1]-m[a][1]];if(h[1]!==s[1]||h[0]!==s[0]){var c=g.g(this).attr("sourceid"),v=g.g(this).attr("targetid"),x=(g.g(this).attr("locationTransform").split(","),g.g(this).attr("body_num_source")),b=g.g(this).attr("body_num_target");O(c,v,d,x,b,g.g(this).attr("color"),i,g.g("#boxid"+b).attr("direction"))}}if(null!==l&&n!=u){var w,N=l.slice(10,-1).split(",").map(Number);w=[m[n][0]+90,m[n][1]+675];var _=[m[n][0]-m[a][0],m[n][1]-m[a][1]];if(N[1]!==w[1]||N[0]!==w[0]){var E=g.g(this).attr("sourceid"),k=g.g(this).attr("targetid"),z=(g.g(this).attr("locationTransform").split(","),g.g(this).attr("body_num_source")),M=g.g(this).attr("body_num_target");O(E,k,_,z,M,g.g(this).attr("color"),i,g.g("#boxid"+M).attr("direction"))}}r=(r=r.replace("line","")).split("_")[0],g.g(this).attr("transform","translate("+(m[r][0]+90)+","+(m[r][1]+675)+")").style("opacity",.38)}else{var S=r,C=r.replace("line","").split("_")[0],A=r.replace("line","").split("_")[1],R=g.g("#boxid"+C).attr("transform"),J=g.g("#boxid"+A).attr("transform");if(null!==R&&C!=u){var P,T=R.slice(10,-1).split(",").map(Number);if(P=[m[C][0]+90,m[C][1]+675],T[1]!==P[1]||T[0]!==P[0]){var F=g.g(this).select("text").text(),D=g.g("#boxid"+A).attr("direction");I(m,C,A,"black",F,S,D)}}if(null!==J&&A!=u){var L,B=J.slice(10,-1).split(",").map(Number);if(L=[m[A][0]+90,m[A][1]+675],B[1]!==L[1]||B[0]!==L[0]){var X=g.g(this).select("text").text(),G=g.g("#boxid"+A).attr("direction");I(m,C,A,"black",X,S,G)}}r=(r=r.replace("line","")).split("_")[0],g.g(this).attr("transform","translate("+(m[r][0]+90)+","+(m[r][1]+675)+")")}else r===u||r===p||r===f||r===y?(g.g(this).attr("transform","translate("+(m[r][0]+90)+","+(m[r][1]+675)+")").attr("opacity",0),g.g(this).transition().duration(920).style("opacity",1)):g.g(this).transition().duration(720).attr("transform","translate("+(m[r][0]+90)+","+(m[r][1]+675)+")")})}var Et=null;function kt(){return Et}function zt(t,e,r){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"right",a=g.g("#mainsvg").select("#sumGroup").append("g").attr("id","boxid"+String(r)).attr("class","drawer").attr("direction",i),o=t.nodes;console.log(t);var l={},s={};for(var h in o){var d=o[h],c=h.split("-"),u=P()(c,2),p=u[0],f=(u[1],"opo"===p);"opi"===p&&(s[h]=d),f&&(l[h]=d)}console.log(s),console.log(l),n()(s).length>1&&(s=L(s)),n()(l).length>1&&(l=L(l));var y=!1,m=!1,v=Math.min.apply(Math,R()(C()(t.nodes).map(function(t){return t.y}))),x=Math.max.apply(Math,R()(C()(t.nodes).map(function(t){return t.y})));for(var b in o){var w=o[b],N=b.split("-"),_=P()(N,2),E=_[0],k=(_[1],"opo"===E);"opi"===E&&w.y===v&&(m=!0),k&&w.y===x&&(y=!0)}for(var z in o){var M=z.split("-"),S=P()(M,2),A=S[0],J=(S[1],"opo"===A);"opi"===A&&(o[z].y=m?v:v-50-37),J&&(o[z].y=y?x:x+50+37)}var T=1/0,O=1/0;for(var F in o){var I=F.split("-"),D=P()(I,2);D[0],D[1];o[F].x7&&void 0!==arguments[7]?arguments[7]:"right",s=arguments.length>8&&void 0!==arguments[8]&&arguments[8],h=!1,d=null;void 0!==t.body&&(d=t.body);var c=l.x+l.width,u=l.y+l.height,p="right";c-(t.x+t.width/2)>u-(t.y+t.height/2-a)+120&&(p="down");var f=r.append("rect").attr("id",e).attr("x",t.x-t.width/2).attr("y",t.y-t.height/2+a).attr("width",t.width).attr("height",t.height-2*a).attr("rx",15).attr("ry",15).attr("data-body",d).attr("data-opened","neo").attr("data-clicked","false").style("fill","rgba(0, 0, 255, 0)").style("stroke",i).style("cursor","pointer").style("stroke-width",5);s&&f.style("stroke-dasharray","10, 5"),void 0!==t.label&&r.append("text").attr("x",t.x).attr("y",t.y).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","12px").text(t.label);var y=g.g("#tooltip"),m=kt().metadata_collection;void 0!==t.metadata&&r.append("text").attr("x",t.x+t.width/2-17).attr("y",t.y-t.height/2+a+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","15px").text(t.metadata).on("mouseover",function(e){var r=M()(m[t.metadata-1],null,2);y.style("opacity",.9).html("
"+r+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){y.style("opacity",0)}),void 0!==t.body&&f.on("click",function(){wt(n,t.body,o,e,i,h,p),h=!h,this.setAttribute("data-clicked",h.toString())})}function St(t,e,r,i,a,n,o){var l=arguments.length>7&&void 0!==arguments[7]?arguments[7]:"right",s=arguments.length>8&&void 0!==arguments[8]&&arguments[8],h=null;void 0!==t.body&&(h=t.body),!0===s&&(console.log(t),console.log(t.body));var d=!1,c=l.x+l.width,u=l.y+l.height,p="right";c-(t.x+t.width/2)>u-(t.y+t.height/2-a)+120&&(p="down");var f=r.append("rect").attr("id",e).attr("x",t.x-t.width/2).attr("y",t.y-t.height/2-a).attr("width",t.width).attr("height",t.height).attr("rx",15).attr("ry",15).attr("data-body",h).attr("data-opened","neo").attr("data-clicked","false").style("fill","rgba(0, 0, 255, 0)").style("cursor","pointer").style("stroke",i).style("stroke-width",5);s&&f.style("stroke-dasharray","10, 5"),void 0!==t.label&&r.append("text").attr("x",t.x).attr("y",t.y-t.height/4-a/2).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","12px").text(t.label);var y=g.g("#tooltip"),m=kt().metadata_collection;void 0!==t.metadata&&r.append("text").attr("x",t.x+t.width/2-17).attr("y",t.y-t.height/2-a+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","15px").text(t.metadata).on("mouseover",function(e){var r=M()(m[t.metadata-1],null,2);y.style("opacity",.9).html("
"+r+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){y.style("opacity",0)}),void 0!==t.body&&f.on("click",function(){wt(n,t.body,o,e,i,d,p),d=!d,this.setAttribute("data-clicked",d.toString())})}function Ct(t,e,r,i,a,n,o,l){var s=!1,h=null;void 0!==t.condition&&(h=t.condition);var d=l.x+l.width,c=l.y+l.height,u="right";d-(t.x+t.width/2)>c-(t.y+t.height/2-a)+120&&(u="down");var p=r.append("rect").attr("id",e).attr("x",t.x-t.width/2).attr("y",t.y-t.height/2+a).attr("width",t.width).attr("height",t.height-2*a).attr("rx",15).attr("ry",15).attr("data-body",h).attr("data-clicked","false").style("fill","rgba(0, 0, 255, 0)").style("stroke",i).style("cursor","pointer").style("stroke-width",5);void 0!==t.label&&r.append("text").attr("x",t.x).attr("y",t.y).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","12px").text(t.label);var f=g.g("#tooltip"),y=kt().metadata_collection;void 0!==t.metadata&&r.append("text").attr("x",t.x+t.width/2-17).attr("y",t.y-t.height/2+a+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","15px").text(t.metadata).on("mouseover",function(e){var r=M()(y[t.metadata-1],null,2);f.style("opacity",.9).html("
"+r+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){f.style("opacity",0)}),void 0!==t.condition&&p.on("click",function(){Nt(n,t.condition,t.body_if,t.body_else,o,e,i,s,u),s=!s,this.setAttribute("data-clicked",s.toString())})}function At(t,e,r,i,a,n,o,l){var s=null;void 0!==t.body&&(s=t.body);var h=!1,d=l.x+l.width,c=l.y+l.height,u="right";d-(t.x+t.width/2)>c-(t.y+t.height/2-a)+120&&(u="down");var p=r.append("rect").attr("id",e).attr("x",t.x-t.width/2).attr("y",t.y-t.height/2-a).attr("width",t.width).attr("height",t.height).attr("rx",15).attr("ry",15).attr("data-body",s).attr("data-clicked","false").style("fill","rgba(0, 0, 255, 0)").style("cursor","pointer").style("stroke",i).style("stroke-width",5);void 0!==t.label&&r.append("text").attr("x",t.x).attr("y",t.y-t.height/4-a/2).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","12px").text(t.label);var f=g.g("#tooltip"),y=kt().metadata_collection;void 0!==t.metadata&&r.append("text").attr("x",t.x+t.width/2-17).attr("y",t.y-t.height/2-a+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","15px").text(t.metadata).on("mouseover",function(e){var r=M()(y[t.metadata-1],null,2);f.style("opacity",.9).html("
"+r+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){f.style("opacity",0)}),void 0!==t.body&&p.on("click",function(){Nt(n,t.condition,t.body_if,t.body_else,o,e,i,h,u),h=!h,this.setAttribute("data-clicked",h.toString())})}function Rt(t,e,r,i,a,n,o,l){var s=!1,h=null;void 0!==t.condition&&(h=t.condition);var d=l.x+l.width,c=l.y+l.height,u="right";d-(t.x+t.width/2)>c-(t.y+t.height/2-a)+120&&(u="down");var p=r.append("rect").attr("id",e).attr("x",t.x-t.width/2).attr("y",t.y-t.height/2+a).attr("width",t.width).attr("height",t.height-2*a).attr("rx",15).attr("ry",15).attr("data-body",h).attr("data-clicked","false").style("fill","rgba(0, 0, 255, 0)").style("stroke",i).style("cursor","pointer").style("stroke-width",5);void 0!==t.label&&r.append("text").attr("x",t.x).attr("y",t.y).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","12px").text(t.label);var f=g.g("#tooltip"),y=kt().metadata_collection;void 0!==t.metadata&&r.append("text").attr("x",t.x+t.width/2-17).attr("y",t.y-t.height/2+a+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","15px").text(t.metadata).on("mouseover",function(e){var r=M()(y[t.metadata-1],null,2);f.style("opacity",.9).html("
"+r+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){f.style("opacity",0)}),void 0!==t.condition&&p.on("click",function(){_t(n,t.condition,t.pre,t.body,t.post,o,e,i,s,u),s=!s,this.setAttribute("data-clicked",s.toString())})}function Jt(t,e,r,i,a,n,o,l){var s=null;void 0!==t.body&&(s=t.body);var h=!1,d=l.x+l.width,c=l.y+l.height,u="right";d-(t.x+t.width/2)>c-(t.y+t.height/2-a)+120&&(u="down");var p=r.append("rect").attr("id",e).attr("x",t.x-t.width/2).attr("y",t.y-t.height/2-a).attr("width",t.width).attr("height",t.height).attr("rx",15).attr("ry",15).attr("data-body",s).attr("data-clicked","false").style("fill","rgba(0, 0, 255, 0)").style("cursor","pointer").style("stroke",i).style("stroke-width",5);void 0!==t.label&&r.append("text").attr("x",t.x).attr("y",t.y-t.height/4-a/2).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","12px").text(t.label);var f=g.g("#tooltip"),y=kt().metadata_collection;void 0!==t.metadata&&r.append("text").attr("x",t.x+t.width/2-17).attr("y",t.y-t.height/2-a+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","15px").text(t.metadata).on("mouseover",function(e){var r=M()(y[t.metadata-1],null,2);f.style("opacity",.9).html("
"+r+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){f.style("opacity",0)}),void 0!==t.body&&p.on("click",function(){_t(n,t.body,o,e,i,h,u),h=!h,this.setAttribute("data-clicked",h.toString())})}function Pt(t,e,r,i,a){r.append("rect").attr("id",e).attr("x",t.x-t.width/2).attr("y",t.y-t.height/2+a).attr("width",t.width).attr("height",t.height-2*a).style("fill","none").style("stroke",i).style("stroke-width",2),void 0!==t.label&&r.append("text").attr("x",t.x).attr("y",t.y).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","12px").text(t.label);var n=g.g("#tooltip"),o=kt().metadata_collection;void 0!==t.metadata&&r.append("text").attr("x",t.x+t.width/2-17).attr("y",t.y-t.height/2+a+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","15px").text(t.metadata).on("mouseover",function(e){var r=M()(o[t.metadata-1],null,2);n.style("opacity",.9).html("
"+r+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){n.style("opacity",0)}),void 0!==t.value&&r.append("text").attr("x",t.x).attr("y",t.y).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","30px").text(t.value.value)}function Tt(t,e,r,i,a){r.append("rect").attr("id",e).attr("x",t.x-t.width/2).attr("y",t.y-t.height/2+a).attr("width",t.width).attr("height",t.height-2*a).style("fill","none").style("stroke",i).style("stroke-width",5),void 0!==t.label&&r.append("text").attr("x",t.x).attr("y",t.y).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","20px").text(t.label);var n=g.g("#tooltip"),o=kt().metadata_collection;void 0!==t.metadata&&r.append("text").attr("x",t.x+t.width/2-17).attr("y",t.y-t.height/2+a+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","15px").text(t.metadata).on("mouseover",function(e){var r=M()(o[t.metadata-1],null,2);n.style("opacity",.9).html("
"+r+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){n.style("opacity",0)}),void 0!==t.value&&r.append("text").attr("x",t.x).attr("y",t.y).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","30px").text(t.value.value)}function Ot(t,e,r,i,a){r.append("rect").attr("id",e).attr("x",t.x-t.width/2).attr("y",t.y-t.height/2-a).attr("width",t.width).attr("height",t.height).style("fill","none").style("stroke",i).style("stroke-width",5),void 0!==t.label&&r.append("text").attr("x",t.x).attr("y",t.y).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","12px").text(t.label);var n=g.g("#tooltip"),o=kt().metadata_collection;void 0!==t.metadata&&r.append("text").attr("x",t.x+t.width/2-17).attr("y",t.y-t.height/2-a+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","15px").text(t.metadata).on("mouseover",function(e){var r=M()(o[t.metadata-1],null,2);n.style("opacity",.9).html("
"+r+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){n.style("opacity",0)}),void 0!==t.value&&r.append("text").attr("x",t.x).attr("y",t.y).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","30px").text(t.value.value)}function Ft(t,e,r,i,a){r.append("rect").attr("id",e).attr("x",t.x-t.width/2+a/2).attr("y",t.y-t.height/2-a).attr("width",t.width-a).attr("height",t.height).style("fill","none").style("stroke",i).style("stroke-width",2),void 0!==t.label&&r.append("text").attr("x",t.x).attr("y",t.y).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","12px").text(t.label);var n=g.g("#tooltip"),o=kt().metadata_collection;void 0!==t.metadata&&r.append("text").attr("x",t.x+t.width/2-27).attr("y",t.y-t.height/2-a+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","15px").text(t.metadata).on("mouseover",function(e){var r=M()(o[t.metadata-1],null,2);n.style("opacity",.9).html("
"+r+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){n.style("opacity",0)}),void 0!==t.value&&r.append("text").attr("x",t.x).attr("y",t.y-1.2*a).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","30px").text(t.value.value)}function It(t,e,r,i){var a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"white";r.append("rect").attr("id",e).attr("x",t.x-t.width/2).attr("y",t.y-t.height/2).attr("width",t.width).attr("height",t.height).style("fill",a).style("stroke",i).style("stroke-width",2);var n=g.g("#tooltip"),o=kt().metadata_collection;void 0!==t.metadata&&r.append("text").attr("x",t.x+t.width/2-12).attr("y",t.y-t.height/2+12).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","15px").text(t.metadata).on("mouseover",function(e){var r=M()(o[t.metadata-1],null,2);n.style("opacity",.9).html("
"+r+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){n.style("opacity",0)}),void 0!==t.label&&r.append("text").attr("x",t.x).attr("y",t.y).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","27px").text(t.label)}function Dt(t,e,r,i,a,n,o,l){var s=arguments.length>8&&void 0!==arguments[8]&&arguments[8],h=arguments[9],d=t.insert("rect",":first-child").attr("id","frame"+l).attr("x",e.x-a).attr("y",e.y-a+n).attr("rx",15).attr("ry",15).attr("width",r-2*a).attr("height",i-2*a-2*n).style("fill","transparent").style("stroke",o).style("stroke-width",5).lower();s&&d.style("stroke-dasharray","10,5");var c=g.g("#tooltip"),u=kt().metadata_collection;void 0!==h.meta.metadata&&t.append("text").attr("x",e.x-a+(r-2*a)-17).attr("y",e.y-a+n+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","17px").text(h.meta.metadata).on("mouseover",function(t){var e=M()(u[h.meta.metadata-1],null,2);c.style("opacity",.9).html("
"+e+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){c.style("opacity",0)})}function Lt(t,e,r,i,a,n,o,l){var s=arguments.length>8&&void 0!==arguments[8]&&arguments[8],h=arguments[9],d=t.insert("rect",":first-child").attr("id","frame"+l).attr("x",e.x-a).attr("y",e.y-a-n/10).attr("rx",15).attr("ry",15).attr("width",r-2*a).attr("height",i-2*a-n).style("fill","transparent").style("stroke",o).style("stroke-width",5).lower(),c=g.g("#tooltip"),u=kt().metadata_collection;void 0!==h.meta.metadata&&t.append("text").attr("x",e.x-a+(r-2*a)-17).attr("y",e.y-a-n/10+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","17px").text(h.meta.metadata).on("mouseover",function(t){var e=M()(u[h.meta.metadata-1],null,2);c.style("opacity",.9).html("
"+e+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){c.style("opacity",0)}),s&&d.style("stroke-dasharray","10,5")}function Bt(t,e,r,i,a,n,o,l){var s=arguments.length>8&&void 0!==arguments[8]&&arguments[8],h=arguments[9],d=t.insert("rect",":first-child").attr("id","frame"+l).attr("x",e.x-a).attr("y",e.y-a+2*n).attr("rx",15).attr("ry",15).attr("width",r-2*a).attr("height",i-2*a-n).style("fill","transparent").style("stroke",o).style("stroke-width",5).lower(),c=g.g("#tooltip"),u=kt().metadata_collection;void 0!==h.meta.metadata&&t.append("text").attr("x",e.x-a+(r-2*a)-17).attr("y",e.y-a+10*n+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","17px").text(h.meta.metadata).on("mouseover",function(t){var e=M()(u[h.meta.metadata-1],null,2);c.style("opacity",.9).html("
"+e+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){c.style("opacity",0)}),s&&d.style("stroke-dasharray","10,5")}function Xt(t,e,r,i,a,n,o,l){var s=arguments.length>8&&void 0!==arguments[8]&&arguments[8],h=arguments[9];e.x!==1/0&&e.x!==-1/0||(e.x=100,e.y=100,r=200,i=200);var d=t.insert("rect",":first-child").attr("id","frame"+l).attr("x",e.x-a).attr("y",e.y-a).attr("rx",15).attr("ry",15).attr("width",r-2*a).attr("height",i-2*a).style("fill","transparent").style("stroke",o).style("stroke-width",5).lower(),c=g.g("#tooltip"),u=kt().metadata_collection;void 0!==h.meta.metadata&&t.append("text").attr("x",e.x-a+(r-2*a)-17).attr("y",e.y-a+17).attr("text-anchor","middle").attr("dominant-baseline","middle").style("font-size","17px").text(h.meta.metadata).on("mouseover",function(t){var e=M()(u[h.meta.metadata-1],null,2);c.style("opacity",.9).html("
"+e+"
").style("left","0px").style("top","70px")}).on("mouseout",function(t){c.style("opacity",0)}),s&&d.style("stroke-dasharray","10,5")}var Gt={name:"App",components:{VueJsonPretty:f.a},data:function(){return{skemaVersion:"",url:"",selectedDeep:3,possibleDepths:[1,2,3,4,5,6,7],startingFN:0,blockStyle:{backgroundColor:"rgba(255, 255, 120, 0)",height:"90vh",width:"100%"},selectedFile:null,selectedOption:null,gromet:null,path:"res",highlightedJson:null,selectedNode:null,highlightNode:null,routePair:{0:"0"},routePairC:{0:"0"},boxTypePair:{},options:[{text:"Clay1",value:"https://raw.githubusercontent.com/hconhisway/webcrawler/master/get_beta--Gromet-FN-auto2.json"},{text:"core_dynamics",value:"https://raw.githubusercontent.com/hconhisway/webcrawler/master/core_dynamics_pack2.json"},{text:"while1",value:"https://raw.githubusercontent.com/ml4ai/skema/adarshp/nom_error_handling/data/gromet/python/while1/FN_0.1.6/while1--Gromet-FN-auto.json"},{text:"cond1",value:"https://raw.githubusercontent.com/ml4ai/skema/adarshp/nom_error_handling/data/gromet/python/cond1/FN_0.1.6/cond1--Gromet-FN-auto.json"},{text:"fun1",value:"https://raw.githubusercontent.com/ml4ai/skema/main/data/gromet/python/fun1/FN_0.1.6/fun1--Gromet-FN-auto.json"},{text:"fun4",value:"https://raw.githubusercontent.com/ml4ai/skema/adarshp/nom_error_handling/data/gromet/python/fun4/FN_0.1.6/fun4--Gromet-FN-auto.json"},{text:"exp1",value:"https://raw.githubusercontent.com/ml4ai/skema/main/data/gromet/python/exp1/FN_0.1.6/exp1--Gromet-FN-auto.json"},{text:"exp2",value:"https://gist.githubusercontent.com/jastier/76f7566ac44265707d892a252d8f85ab/raw/2be498c5fb369635725e9e6b493732a5c181ac65/first_matlab.json"},{text:"exp3",value:"https://raw.githubusercontent.com/ml4ai/skema/main/data/gromet/python/exp3/FN_0.1.6/exp3--Gromet-FN-auto.json"},{text:"fun_default1",value:"https://raw.githubusercontent.com/ml4ai/skema/adarshp/nom_error_handling/data/gromet/python/fun_default1/FN_0.1.6/fun_default1--Gromet-FN-auto.json"},{text:"assign_operator1",value:"https://raw.githubusercontent.com/ml4ai/skema/main/data/gromet/python/assign_operator1/FN_0.1.6/assign_operator1--Gromet-FN-auto.json"}]}},mounted:function(){this.$refs.svgMoviz.addEventListener("mouseover",this.handleMouseOverDelegate)},beforeDestroy:function(){this.$refs.svgMoviz.removeEventListener("mouseover",this.handleMouseOverDelegate)},created:function(){var t=this;return c()(h.a.mark(function e(){var r,i;return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!(r=t.$route.query.gromet_url)){e.next=15;break}return e.prev=2,e.next=5,u.a.get(r);case 5:i=e.sent,t.gromet=i.data,t.skemaVersion=t.gromet.schema_version,t.processJson(),t.drawMoviz(),e.next=15;break;case 12:e.prev=12,e.t0=e.catch(2),console.error(e.t0);case 15:case"end":return e.stop()}},e,t,[[2,12]])}))()},methods:{drawMoviz:function(){g.h("g").remove();var t=g.g("svg");t.append("g").attr("id","sumGroup");var e=g.i().on("zoom",function(t){g.g("svg g").attr("transform",t.transform)});t.call(e);var r=this.gromet.modules[0];Et=r;var i=r.fn,a=r.fn_array,n=i;if(console.log(this.routePair),0!==this.startingFN){var o=a[this.startingFN-1].hi_there.replace("--- Click to visualize this FN --- ","").trim().replace(/^['"]+|['"]+$/g,""),l=o.split("-").map(Number),s=this.routePair[o].split("-").map(Number),h="0";zt(k(n),a,0);for(var d=0;d to visualize this FN --- 0"},this.highlightedJson.fn),this.getAllChildBody(this.highlightedJson.fn,"0","0");for(var t=0;t to visualize this FN --- "+o;this.routePair[o]=n,this.highlightedJson.fn_array[a]=l()({hi_there:s},this.highlightedJson.fn_array[a]),this.getAllChildBody(this.highlightedJson.fn_array[a],n,o)}if("bl"in t)for(var h=0;h to visualize this FN --- "+g;this.routePair[g]=c,this.highlightedJson.fn_array[d]=l()({hi_there:u},this.highlightedJson.fn_array[d]),this.getAllChildBody(this.highlightedJson.fn_array[d],c,g)}if("condition"in t.bl[h]){var p=t.bl[h].condition-1,f=e+"-"+(p+1),y=r+"-"+h,m="--- Click to visualize this FN --- "+y;this.routePair[y]=f,this.highlightedJson.fn_array[p]=l()({hi_there:m},this.highlightedJson.fn_array[p]),this.getAllChildBody(this.highlightedJson.fn_array[p],f,y)}}if("bc"in t)for(var v=0;v to visualize this FN --- "+w;this.routePair[w]=b,this.highlightedJson.fn_array[x]=l()({hi_there:N},this.highlightedJson.fn_array[x]),this.getAllChildBody(this.highlightedJson.fn_array[x],b,w)}if("condition"in t.bc[v]){var _=t.bc[v].condition-1,E=e+"-"+(_+1),k=r+"-"+v,z="--- Click to visualize this FN --- "+k;this.routePair[k]=E,this.highlightedJson.fn_array[_]=l()({hi_there:z},this.highlightedJson.fn_array[_]),this.getAllChildBody(this.highlightedJson.fn_array[_],E,k)}if("body_if"in t.bc[v]){var M=t.bc[v].body_if-1,S=e+"-"+(M+1),C=r+"-"+v,A="--- Click to visualize this FN --- "+C;this.routePair[C]=S,this.highlightedJson.fn_array[M]=l()({hi_there:A},this.highlightedJson.fn_array[M]),this.getAllChildBody(this.highlightedJson.fn_array[M],S,C)}if("body_else"in t.bc[v]){var R=t.bc[v].body_else-1,J=e+"-"+(R+1),P=r+"-"+v,T="--- Click to visualize this FN --- "+P;this.routePair[P]=J,this.highlightedJson.fn_array[R]=l()({hi_there:T},this.highlightedJson.fn_array[R]),this.getAllChildBody(this.highlightedJson.fn_array[R],J,P)}}},fetchData:function(){var t=this;return c()(h.a.mark(function e(){var r;return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,u.a.get(t.selectedOption);case 3:r=e.sent,t.gromet=r.data,t.skemaVersion=t.gromet.schema_version,t.processJson(),t.drawMoviz(),e.next=13;break;case 10:e.prev=10,e.t0=e.catch(0),console.error(e.t0);case 13:case"end":return e.stop()}},e,t,[[0,10]])}))()},triggerFileInput:function(){this.$refs.fileInput.click()},handleFileChange:function(t){var e=this;if(this.selectedFile=t.target.files[0],this.selectedFile){var r=new FileReader;r.onload=function(t){try{e.gromet=JSON.parse(t.target.result),e.skemaVersion=e.gromet.schema_version,e.processJson(),e.drawMoviz()}catch(t){console.error("Error parsing JSON:",t)}},r.readAsText(this.selectedFile)}},handleMouseOverDelegate:function(t){var e=t.target;if(e.id&&e.id.startsWith("frame")){var r=e.id.split("-").pop().match(/\d+$/);if(g.g("#mainsvg").selectAll("#highlightRect").remove(),this.selectedNode=r?r[0]:null,0===this.selectedNode||"0"===this.selectedNode?this.highlightNode=["res.fn"]:this.highlightNode=["res.fn_array["+(this.selectedNode-1)+"]"],null!==this.selectedNode){var i=e.width.baseVal.value+7,a=e.height.baseVal.value+7;g.g(e.parentNode).append("rect").attr("id","highlightRect").attr("x",e.x.baseVal.value-3.5).attr("y",e.y.baseVal.value-3.5).attr("rx",5).attr("ry",5).attr("width",i).attr("height",a).style("fill","none").style("stroke","red").style("stroke-width",38).style("stroke-opacity",.2)}}},jsonClick:function(){var t=event.target.textContent;if(t.startsWith('"--- Click to visualize this FN ---')&&n()(this.routePair).length>1){for(var e=t.replace("--- Click to visualize this FN --- ","").trim().replace(/^['"]+|['"]+$/g,""),r=e.split("-").map(Number),i=this.routePair[e].split("-").map(Number),a="0",o=0;o to visualize this FN --- ","").trim(),e=this.routePair[t.replace(/^['"]+|['"]+$/g,"")],r=e.split("-");r.pop();var i=r.join("-"),a="boxid"+i,n="line"+i+"_"+e;console.log(n),g.g("#sumGroup").selectChildren().each(function(){this.id===a?g.g(this).style("display",null):this.id===n&&g.g(this).style("display",null)})}else if(1===this.selectedNode){var o=this.gromet.modules[0].fn.hi_there.replace("--- Click to visualize this FN --- ","").trim(),l=this.routePair[o.replace(/^['"]+|['"]+$/g,"")],s=l.split("-");s.pop();var h=s.join("-"),d="boxid"+h,c="line"+h+"_"+l;console.log(c),g.g("#sumGroup").selectChildren().each(function(){this.id===d?g.g(this).style("display",null):this.id===c&&g.g(this).style("display",null)})}},submitUrl:function(){var t=this;return c()(h.a.mark(function e(){var r;return h.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,u.a.get(t.url);case 3:r=e.sent,t.gromet=r.data,t.skemaVersion=t.gromet.schema_version,t.processJson(),t.drawMoviz(),e.next=13;break;case 10:e.prev=10,e.t0=e.catch(0),console.error(e.t0);case 13:case"end":return e.stop()}},e,t,[[0,10]])}))()}}},jt={render:function(){var t=this,e=t.$createElement,r=t._self._c||e;return r("div",{attrs:{id:"app"}},[r("div",{staticClass:"menu"},[t._v("\n Current Supported Skema Version:\n "),r("span",{staticStyle:{"white-space":"pre",color:"tomato","font-weight":"bold"}},[t._v("0.1.7 ")]),t._v(" "),r("select",{directives:[{name:"model",rawName:"v-model",value:t.selectedOption,expression:"selectedOption"}],staticClass:"my-select",attrs:{placeholder:"Select"},on:{change:[function(e){var r=Array.prototype.filter.call(e.target.options,function(t){return t.selected}).map(function(t){return"_value"in t?t._value:t.value});t.selectedOption=e.target.multiple?r:r[0]},t.fetchData]}},t._l(t.options,function(e){return r("option",{key:e.value,domProps:{value:e.value}},[t._v("\n "+t._s(e.text)+"\n ")])}),0),t._v(" "),r("input",{directives:[{name:"model",rawName:"v-model",value:t.url,expression:"url"}],staticClass:"url-input",attrs:{type:"text",placeholder:"Input URL of JSON file here."},domProps:{value:t.url},on:{input:function(e){e.target.composing||(t.url=e.target.value)}}}),t._v(" "),r("button",{on:{click:t.submitUrl}},[t._v("Submit")]),t._v(" "),r("input",{ref:"fileInput",staticStyle:{display:"none"},attrs:{type:"file"},on:{change:t.handleFileChange}}),t._v(" "),r("button",{staticClass:"btn btn-primary",style:{margin:"0 30px",backgroundColor:"tomato",color:"white",border:"none"},on:{click:t.triggerFileInput}},[t._v("\n Choose File\n ")]),t._v(" "),r("button",{staticClass:"btn btn-primary download-button",on:{click:t.downloadSVG}},[t._v("downloadSVG")]),t._v(" "),r("button",{staticClass:"btn btn-primary",style:{margin:"0 30px",backgroundColor:"green",color:"white",border:"none"},on:{click:t.showPreviousBox}},[t._v("\n Parent Box\n ")])]),t._v(" "),r("div",{staticClass:"content"},[r("div",{staticClass:"editor-box"},[r("label",{attrs:{for:"deep-select"}},[t._v("Select Display Depth: ")]),t._v(" "),r("select",{directives:[{name:"model",rawName:"v-model",value:t.selectedDeep,expression:"selectedDeep"}],attrs:{id:"deep-select"},on:{change:function(e){var r=Array.prototype.filter.call(e.target.options,function(t){return t.selected}).map(function(t){return"_value"in t?t._value:t.value});t.selectedDeep=e.target.multiple?r:r[0]}}},t._l(t.possibleDepths,function(e){return r("option",{key:e,domProps:{value:e}},[t._v("\n "+t._s(e)+"\n ")])}),0),t._v(" "),r("vue-json-pretty",{attrs:{data:t.highlightedJson,editable:!0,"highlight-array":t.highlightNode,deep:t.selectedDeep},nativeOn:{click:function(e){return t.jsonClick.apply(null,arguments)}}})],1),t._v(" "),r("div",{staticClass:"svg-container"},[r("div",{staticClass:"tooltip",staticStyle:{opacity:"0"},attrs:{id:"tooltip"}}),t._v(" "),r("label",{attrs:{for:"startingFN"}},[t._v("Initial #(Entry): ")]),t._v(" "),r("input",{directives:[{name:"model",rawName:"v-model",value:t.startingFN,expression:"startingFN"}],domProps:{value:t.startingFN},on:{keyup:function(e){return!e.type.indexOf("key")&&t._k(e.keyCode,"enter",13,e.key,"Enter")?null:t.drawMoviz.apply(null,arguments)},input:function(e){e.target.composing||(t.startingFN=e.target.value)}}}),t._v(" "),r("svg",{ref:"svgMoviz",attrs:{id:"mainsvg",width:"1200",height:"1000",overflow:"visible"}},[r("g",{attrs:{id:"sumGroup"}})])])])])},staticRenderFns:[]};var Ut=r("VU/8")(Gt,jt,!1,function(t){r("tzZS")},"data-v-001c9dd8",null).exports,Ht=r("/ocq");i.a.use(Ht.a);var qt=new Ht.a({routes:[{path:"/",name:"Moviz",component:Ut}],mode:"hash"});i.a.config.productionTip=!1,new i.a({el:"#app",router:qt,components:{App:Ut},template:""})},iMEU:function(t,e){},"p+Xa":function(t,e){t.exports={name:"d3-flextree",version:"2.1.2",main:"build/d3-flextree.js",module:"index","jsnext:main":"index",author:{name:"Chris Maloney",url:"http://chrismaloney.org"},description:"Flexible tree layout algorithm that allows for variable node sizes.",keywords:["d3","d3-module","layout","tree","hierarchy","d3-hierarchy","plugin","d3-plugin","infovis","visualization","2d"],homepage:"https://github.com/klortho/d3-flextree",license:"WTFPL",repository:{type:"git",url:"https://github.com/klortho/d3-flextree.git"},scripts:{clean:"rm -rf build demo test","build:demo":"rollup -c --environment BUILD:demo","build:dev":"rollup -c --environment BUILD:dev","build:prod":"rollup -c --environment BUILD:prod","build:test":"rollup -c --environment BUILD:test",build:"rollup -c",lint:"eslint index.js src","test:main":"node test/bundle.js","test:browser":"node test/browser-tests.js",test:"npm-run-all test:*",prepare:"npm-run-all clean build lint test"},dependencies:{"d3-hierarchy":"^1.1.5"},devDependencies:{"babel-plugin-external-helpers":"^6.22.0","babel-preset-es2015-rollup":"^3.0.0",d3:"^4.13.0","d3-selection-multi":"^1.0.1",eslint:"^4.19.1",jsdom:"^11.6.2","npm-run-all":"^4.1.2",rollup:"^0.55.3","rollup-plugin-babel":"^2.7.1","rollup-plugin-commonjs":"^8.0.2","rollup-plugin-copy":"^0.2.3","rollup-plugin-json":"^2.3.0","rollup-plugin-node-resolve":"^3.0.2","rollup-plugin-uglify":"^3.0.0","uglify-es":"^3.3.9"}}},tzZS:function(t,e){}},["NHnr"]); +//# sourceMappingURL=app.eac58d9146577b5c252e.js.map \ No newline at end of file diff --git a/static/js/app.eac58d9146577b5c252e.js.map b/static/js/app.eac58d9146577b5c252e.js.map new file mode 100644 index 0000000..22ead99 --- /dev/null +++ b/static/js/app.eac58d9146577b5c252e.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack:///./src/utils/layout.js","webpack:///./src/utils/drawlines.js","webpack:///./src/utils/utilities.js","webpack:///./src/utils/flextree.js","webpack:///./src/utils/multitree.js","webpack:///./src/utils/click.js","webpack:///./src/utils/clickCond.js","webpack:///./src/utils/global.js","webpack:///./src/utils/drawBox.js","webpack:///src/App.vue","webpack:///./src/App.vue?a01f","webpack:///./src/App.vue","webpack:///./src/router/index.js","webpack:///./src/main.js","webpack:///./node_modules/d3-flextree/package.json"],"names":["getBoxLayout","data","graph","dagre","Graph","compound","setGraph","setDefaultEdgeLabel","i","bf","length","node","nodeId","label","name","type","function_type","value","body","metadata","setNode","auxLabel","width","height","pif","setParent","box","pof","opo","opi","wff","edge","srcNodeId","src","tgtNodeId","tgt","hasNode","setEdge","WnodeId","WnodeId1","WnodeId2","wfopi","wfopo","wopio","bc","condition","body_if","body_else","pic","poc","wfc","wcf","wcc","wcopi","wcopo","bl","pre","post","pil","pol","wfl","wcl","wlopi","wll","wlf","wlc","wlopo","nodeID","auxID","predecessors","successors","nodes","filter","startsWith","ranksep","rankdir","layout","edges","forEach","x","y","push","id","source","v","target","w","_loop","bfNodeId","pofNode","find","pifNode","fullBox","_loop2","bcNodeId","pocNode","picNode","_loop3","blNodeId","polNode","pilNode","meta","b","identifier","UnionFind","elements","_this","this","classCallCheck_default","parent","e","parentX","parentY","drawLines","sourceid","targetid","locationTransform","body_num_source","body_num_target","color","direction","sourceX","Number","d3","select","attr","sourceY","targetX1","targetX2","targetY1","targetY2","dx1","dy1","dx2","dy2","controlPoint11","controlPoint12","controlPoint21","controlPoint22","g","append","String","data1","data2","lineGenerator","d","curve","pathString1","pathElement1","document","createElementNS","setAttribute","pathString2","pathElement2","totalLength1","getTotalLength","totalLength2","points1","point","getPointAtLength","points2","xScale1","domain","range","bisect1","left","xScale2","bisect2","area1","y0","xValue","indexOfNode","invert","pointBefore","pointAfter","slope","Math","abs","linewidth","pow","sqrt","y1","area2","x0","yValue","x1","datum","selectAll","each","currentNode","currentNodeBody","undefined","split","sourceXforSL","sourceYforSL","targetXforSL","targetYforSL","updateLines","lineID","transition","duration","drawLinesDashArrow","treeLayout","sourceID","targetID","sourceFrame","dx","dy","targetX","targetY","style","midX","midY","text","updateLinesDashArrow","arraysAreEqual","array1","array2","relayoutPorts","nodesObject","overlap","leftLimit","values_default","console","log","sort","a","previousX","index","loopOverHierarchy","callback","children","c","_children","getChildren","hierarchies","childrens","element","zoomin","path","filterChild","item","hasOwnProperty","aNums","oName","map","bNums","getHierarchy","spaceY","replace","routes","currentID","size","temp","Array","isArray","_size","slice","reverse","defaults","freeze_default","nodeSize","spacing","flextree","options","opts","assign_default","accessor","opt","tree","FlexNode","wtree","wrap","getFlexNode","_FlexNode","_class","_this2","possibleConstructorReturn_default","__proto__","get_prototype_of_default","call","relX","prelim","shift","change","lExt","lExtRelX","lThr","rExt","rExtRelX","rThr","inherits_default","createClass_default","key","oNode","layoutChildren","resolveX","get","set","update","_hierarchy$prototype$","constructor","descendants","ySize","xSize","ancs","ancestors","hasChildren","noChildren","numChildren","reduce","acc","kid","maxExtents","extents","nodeExtents","top","bottom","right","e0","e1","min","max","hierarchy","prototype","FlexClass","treeData","_wrap","depth","kidsData","kd","hl","arg","arguments","kids","dump","_dump","i0","i1","i2","kdumps","join","_acc","slicedToArray_default","lastLows","lowY","separate","updateLows","shiftChange","positionRoot","prevSum","sum","k","child","_acc2","lastShiftSum","lastChangeSum","shiftSum","changeSum","lows","lSib","curSubtree","rContour","rSumMods","lContour","lSumMods","isFirst","next","dist","moveSubtree","distributeExtra","rightBottom","leftBottom","nextRContour","nextLContour","setLThr","setRThr","subtree","distance","curSubtreeI","leftSibI","n","delta","firstChild","lastChild","diff","k0","kf","getMultiTree","subtrees","findAllSubtrees","currentLayout","toConsumableArray_default","down","mix","mergedCL","obj","extends_default","hasProperties","sharedNodes","getSharedKeys","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_step","_iterator","get_iterator_default","done","nodeL","childrenRect","keyPre","nodeLPre","oldBoundingBox","findBoundingBox","differenceX1","differenceY1","err","return","copyNonDuplicateProperties","cloneDeep","obj1","obj2","sharedKeys","processTree","root","parentNodesRight","set_default","parentNodesDown","setParents","dfs","isSameDirection","checkProperties","add","parentNodesMix","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_step2","_iterator2","has","delete","from_default","clone","removeDownChildren","clonex","flexLayout","newBoundingbox","removeRightChildren","cloneRight","cloneDown","flexLayoutDown","flexLayoutRight","treeDown","treeRight","cloneRightx","cloneDownx","treeDataDown","treeDataRight","treeLayoutDown","treeLayoutRight","differenceX","differenceY","mergedLayout","rectanglesObj","minX","Infinity","minY","maxX","maxY","rectangle","rectX","rectY","x2","y2","handleClick","fnS","body_num","clicked","openFlag","GID","deleteParts","deleteFlag","node1","node2","node1Parts","node2Parts","end","then","remove","firstNParts","stringify_default","GIDParts","newLabel","drawBox","keys_default","padding","sourceGID","targetGID","sourceTransString","targetTransString","newTransArray","transformArray","locationTransformForThis","a01","a02","a04","a05","line_label","handleClickCond","cond","layoutElse","layoutCond","layoutIf","newLabelCond","newLabelIf","newLabelElse","currentDirection","handleClickLoop","newLabelPre","newLabelBody","newLabelPost","gromet","getGromet","directionO","opoNode","opiNode","_nodeId$split","_nodeId$split2","isOpoNode","opoNodeFlag","opiNodeFlag","minValue","apply","maxValue","_nodeId$split3","_nodeId$split4","_nodeId2$split","_nodeId2$split2","minXofAllNodes","minYofAllNodes","_key$split","_key$split2","bbox","shapes","isPofNode","isPifNode","isOpiNode","isPocNode","isPicNode","isPolNode","isPilNode","computeBoundingRectangle","realOuterBox","getOuterBox","_nodeId3$split","_nodeId3$split2","isBcNode","isBlNode","drawBFs_full","drawLiteral_full","drawLPrimitive_full","drawBFs_nfull","drawLiteral_nfull","drawLPrimitive_nfull","drawBCs_full","drawBCs_nfull","drawBLs_full","drawBLs_nfull","drawPorts","sourceNode","targetNode","sourceType","targetType","drawOuterBoxFull","drawOuterBoxBottom","drawOuterBoxTop","drawOuterBoxEmpty","getBBox","imported","node_body","outerRight","outerBottom","selection","tooltip","metadata_collection","on","formattedJson","html","toString","node_body_cond","fill","insert","lower","App","components","VueJsonPretty","vue_json_pretty_default","skemaVersion","url","selectedDeep","possibleDepths","startingFN","blockStyle","backgroundColor","selectedFile","selectedOption","highlightedJson","selectedNode","highlightNode","routePair","0","routePairC","boxTypePair","mounted","$refs","svgMoviz","addEventListener","handleMouseOverDelegate","beforeDestroy","removeEventListener","created","asyncToGenerator_default","regenerator_default","mark","_callee","grometUrl","response","_context","prev","$route","query","gromet_url","axios","sent","schema_version","processJson","drawMoviz","t0","error","stop","methods","svg","zoom","transform","graphData","modules","fn0","fn","fn_array","currentFN","trimmedNum","hi_there","trim","routeNumbers","altRouteNumbers","currentBox","boxId","triggerClickEvent","increasedWidth","increasedHeight","selectedBoxId","selectChildren","getAllChildBody","metadata_type","source_language","source_language_version","data_type","provenance","col_begin","col_end","code_file_reference_uid","_i","currentEntry","objJson","currentRoute","altRoute","currentNodeNum","newRoute","newAltRoute","clickPrompt","_i2","_currentNodeNum","_newRoute","_newAltRoute","_clickPrompt","_currentNodeNum2","_newRoute2","_newAltRoute2","_clickPrompt2","_i3","_currentNodeNum3","_newRoute3","_newAltRoute3","_clickPrompt3","_currentNodeNum4","_newRoute4","_newAltRoute4","_clickPrompt4","_currentNodeNum5","_newRoute5","_newAltRoute5","_clickPrompt5","_currentNodeNum6","_newRoute6","_newAltRoute6","_clickPrompt6","fetchData","_callee2","_context2","triggerFileInput","fileInput","click","handleFileChange","event","_this3","files","reader","FileReader","onload","JSON","parse","result","readAsText","numberMatch","pop","match","baseVal","parentNode","jsonClick","spanText","textContent","dispatch","downloadSVG","svgElement","getElementById","svgData","XMLSerializer","serializeToString","svgBlob","Blob","svgUrl","URL","createObjectURL","downloadLink","createElement","href","download","appendChild","removeChild","showPreviousBox","numbersString","partsNum","newTrimmedNum","PreSelectedBoxId","selectedLineId","_numbersString","_trimmedNum","_partsNum","_newTrimmedNum","_PreSelectedBoxId","_selectedLineId","submitUrl","_this4","_callee3","_context3","selectortype_template_index_0_src_App","render","_vm","_h","$createElement","_c","_self","attrs","staticClass","_v","staticStyle","white-space","font-weight","directives","rawName","expression","placeholder","$event","$$selectedVal","o","selected","_value","multiple","_l","option","domProps","_s","input","composing","ref","display","margin","border","for","num","editable","highlight-array","deep","nativeOn","opacity","keyup","indexOf","_k","keyCode","overflow","staticRenderFns","src_App","__webpack_require__","normalizeComponent","ssrContext","Vue","use","Router","router","component","mode","config","productionTip","el","template","module","exports","version","main","jsnext:main","author","description","keywords","homepage","license","repository","scripts","clean","build:demo","build:dev","build:prod","build:test","build","lint","test:main","test:browser","test","prepare","dependencies","d3-hierarchy","devDependencies","babel-plugin-external-helpers","babel-preset-es2015-rollup","d3-selection-multi","eslint","jsdom","npm-run-all","rollup","rollup-plugin-babel","rollup-plugin-commonjs","rollup-plugin-copy","rollup-plugin-json","rollup-plugin-node-resolve","rollup-plugin-uglify","uglify-es"],"mappings":"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","file":"static/js/app.eac58d9146577b5c252e.js","sourcesContent":["/* eslint-disable */\r\nimport * as dagre from 'dagre';\r\nimport cloneDeep from 'lodash/cloneDeep';\r\n\r\nexport function getBoxLayout(data) {\r\n let graph = new dagre.graphlib.Graph({ compound: true });\r\n graph.setGraph({});\r\n // eslint-disable-next-line\r\n graph.setDefaultEdgeLabel(() => { return {}; });\r\n // get bf for all\r\n if ('bf' in data) {\r\n for (let i = 0; i < data.bf.length; i += 1) {\r\n // eslint-disable-next-line\r\n const node = data.bf[i];\r\n const nodeId = `bf-${i}`;\r\n const label = node.name;\r\n const type = node.function_type;\r\n const value = node.value;\r\n const body = node.body;\r\n const metadata = node.metadata;\r\n graph.setNode(nodeId, { label, value, type, body,metadata });\r\n // add auxi node for each bf\r\n const auxLabel = 'aux';\r\n const width = 1;\r\n const height = 1;\r\n graph.setNode(`aux-${nodeId}`, { auxLabel, width, height });\r\n // graph.setParent(`aux-${nodeId}`, nodeId);\r\n }\r\n }\r\n\r\n // get pif\r\n if ('pif' in data) {\r\n for (let i = 0; i < data.pif.length; i += 1) {\r\n const node = data.pif[i];\r\n const nodeId = `pif-${i}`;\r\n const label = node.name;\r\n const width = 50;\r\n const height = 50;\r\n const metadata = node.metadata;\r\n graph.setNode(nodeId, { label, width, height, metadata });\r\n graph.setParent(nodeId, `bf-${node.box - 1}`);\r\n }\r\n }\r\n\r\n // get pof\r\n if ('pof' in data) {\r\n for (let i = 0; i < data.pof.length; i += 1) {\r\n const node = data.pof[i];\r\n const nodeId = `pof-${i}`;\r\n const label = node.name;\r\n const width = 50;\r\n const height = 50;\r\n const metadata = node.metadata;\r\n graph.setNode(nodeId, { label, width, height, metadata });\r\n graph.setParent(nodeId, `bf-${node.box - 1}`);\r\n }\r\n }\r\n\r\n // get opo\r\n if ('opo' in data) {\r\n for (let i = 0; i < data.opo.length; i += 1) {\r\n const node = data.opo[i];\r\n const nodeId = `opo-${i}`;\r\n const label = node.name;\r\n const width = 50;\r\n const height = 50;\r\n const metadata = node.metadata;\r\n graph.setNode(nodeId, { label, width, height, metadata });\r\n // graph.setParent(nodeId, `bf-${node.box - 1}`);\r\n }\r\n }\r\n\r\n // get opi\r\n if ('opi' in data) {\r\n for (let i = 0; i < data.opi.length; i += 1) {\r\n const node = data.opi[i];\r\n const nodeId = `opi-${i}`;\r\n const label = node.name;\r\n const width = 50;\r\n const height = 50;\r\n const metadata = node.metadata;\r\n graph.setNode(nodeId, { label, width, height, metadata });\r\n // graph.setParent(nodeId, `bf-${node.box - 1}`);\r\n }\r\n }\r\n\r\n // set edges wff\r\n if ('wff' in data) {\r\n for (let i = 0; i < data.wff.length; i += 1) {\r\n const edge = data.wff[i];\r\n const srcNodeId = `pif-${edge.src - 1}`;\r\n const tgtNodeId = `pof-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set edges wfopi\r\n if ('wfopi' in data) {\r\n for (let i = 0; i < data.wfopi.length; i += 1) {\r\n const edge = data.wfopi[i];\r\n const srcNodeId = `pif-${edge.src - 1}`;\r\n const tgtNodeId = `opi-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set edges wfopo\r\n if ('wfopo' in data) {\r\n for (let i = 0; i < data.wfopo.length; i += 1) {\r\n const edge = data.wfopo[i];\r\n const srcNodeId = `opo-${edge.src - 1}`;\r\n const tgtNodeId = `pof-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set edges wopio\r\n if ('wopio' in data) {\r\n for (let i = 0; i < data.wopio.length; i += 1) {\r\n const edge = data.wopio[i];\r\n const srcNodeId = `opo-${edge.src - 1}`;\r\n const tgtNodeId = `opi-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set bc\r\n if ('bc' in data) {\r\n for (let i = 0; i < data.bc.length; i += 1) {\r\n // eslint-disable-next-line\r\n const node = data.bc[i];\r\n const nodeId = `bc-${i}`;\r\n const label = node.name;\r\n const type = node.function_type;\r\n const value = node.value;\r\n const condition = node.condition;\r\n const body_if = node.body_if;\r\n const body_else = node.body_else;\r\n const metadata = node.metadata; \r\n graph.setNode(nodeId, { label, value, type, condition, body_if, body_else, metadata });\r\n // add auxi node for each bc\r\n const auxLabel = 'aux';\r\n const width = 1;\r\n const height = 1;\r\n graph.setNode(`aux-${nodeId}`, { auxLabel, width, height });\r\n // graph.setParent(`aux-${nodeId}`, nodeId);\r\n }\r\n }\r\n\r\n // set pic\r\n if ('pic' in data) {\r\n for (let i = 0; i < data.pic.length; i += 1) {\r\n const node = data.pic[i];\r\n const nodeId = `pic-${i}`;\r\n const label = node.name;\r\n const width = 50;\r\n const height = 50;\r\n const metadata = node.metadata;\r\n graph.setNode(nodeId, { label, width, height, metadata });\r\n graph.setParent(nodeId, `bc-${node.box - 1}`);\r\n }\r\n }\r\n\r\n // set poc\r\n if ('poc' in data) {\r\n for (let i = 0; i < data.poc.length; i += 1) {\r\n const node = data.poc[i];\r\n const nodeId = `poc-${i}`;\r\n const label = node.name;\r\n const width = 50;\r\n const height = 50;\r\n const metadata = node.metadata;\r\n graph.setNode(nodeId, { label, width, height, metadata });\r\n graph.setParent(nodeId, `bc-${node.box - 1}`);\r\n }\r\n }\r\n\r\n // set wfc\r\n if ('wfc' in data) {\r\n for (let i = 0; i < data.wfc.length; i += 1) {\r\n const edge = data.wfc[i];\r\n const srcNodeId = `pic-${edge.src - 1}`;\r\n const tgtNodeId = `pof-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set wcf\r\n if ('wcf' in data) {\r\n for (let i = 0; i < data.wcf.length; i += 1) {\r\n const edge = data.wcf[i];\r\n const srcNodeId = `pif-${edge.src - 1}`;\r\n const tgtNodeId = `poc-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set wcc\r\n if ('wcc' in data) {\r\n for (let i = 0; i < data.wcc.length; i += 1) {\r\n const edge = data.wcc[i];\r\n const srcNodeId = `pic-${edge.src - 1}`;\r\n const tgtNodeId = `poc-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set edges wcopi\r\n if ('wcopi' in data) {\r\n for (let i = 0; i < data.wcopi.length; i += 1) {\r\n const edge = data.wcopi[i];\r\n const srcNodeId = `pic-${edge.src - 1}`;\r\n const tgtNodeId = `opi-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set edges wcopo\r\n if ('wcopo' in data) {\r\n for (let i = 0; i < data.wcopo.length; i += 1) {\r\n const edge = data.wcopo[i];\r\n const srcNodeId = `opo-${edge.src - 1}`;\r\n const tgtNodeId = `poc-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n if ('bl' in data) {\r\n for (let i = 0; i < data.bl.length; i += 1) {\r\n // eslint-disable-next-line\r\n const node = data.bl[i];\r\n const nodeId = `bl-${i}`;\r\n const label = node.name;\r\n const type = node.function_type;\r\n const value = node.value;\r\n const condition = node.condition;\r\n const pre = node.pre;\r\n const body = node.body;\r\n const post = node.post;\r\n const metadata = node.metadata;\r\n graph.setNode(nodeId, { label, value, type, condition, pre, body, post, metadata });\r\n // add auxi node for each bl\r\n const auxLabel = 'aux';\r\n const width = 1;\r\n const height = 1;\r\n graph.setNode(`aux-${nodeId}`, { auxLabel, width, height });\r\n // graph.setParent(`aux-${nodeId}`, nodeId);\r\n }\r\n }\r\n\r\n // set pil\r\n if ('pil' in data) {\r\n for (let i = 0; i < data.pil.length; i += 1) {\r\n const node = data.pil[i];\r\n const nodeId = `pil-${i}`;\r\n const label = node.name;\r\n const width = 50;\r\n const height = 50;\r\n const metadata = node.metadata;\r\n graph.setNode(nodeId, { label, width, height, metadata });\r\n graph.setParent(nodeId, `bl-${node.box - 1}`);\r\n }\r\n }\r\n\r\n // set pol\r\n if ('pol' in data) {\r\n for (let i = 0; i < data.pol.length; i += 1) {\r\n const node = data.pol[i];\r\n const nodeId = `pol-${i}`;\r\n const label = node.name;\r\n const width = 50;\r\n const height = 50;\r\n const metadata = node.metadata;\r\n graph.setNode(nodeId, { label, width, height, metadata });\r\n graph.setParent(nodeId, `bl-${node.box - 1}`);\r\n }\r\n }\r\n\r\n // set wfl\r\n if ('wfl' in data) {\r\n for (let i = 0; i < data.wfl.length; i += 1) {\r\n const edge = data.wfl[i];\r\n const srcNodeId = `pil-${edge.src - 1}`;\r\n const tgtNodeId = `pof-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set wcl\r\n if ('wcl' in data) {\r\n for (let i = 0; i < data.wcl.length; i += 1) {\r\n const edge = data.wcl[i];\r\n const srcNodeId = `pil-${edge.src - 1}`;\r\n const tgtNodeId = `poc-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set wlopi\r\n if ('wlopi' in data) {\r\n for (let i = 0; i < data.wlopi.length; i += 1) {\r\n const edge = data.wlopi[i];\r\n const srcNodeId = `pil-${edge.src - 1}`;\r\n const tgtNodeId = `opi-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set wll\r\n if ('wll' in data) {\r\n for (let i = 0; i < data.wll.length; i += 1) {\r\n const edge = data.wll[i];\r\n const srcNodeId = `pil-${edge.src - 1}`;\r\n const tgtNodeId = `pol-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set wlf\r\n if ('wlf' in data) {\r\n for (let i = 0; i < data.wlf.length; i += 1) {\r\n const edge = data.wlf[i];\r\n const srcNodeId = `pif-${edge.src - 1}`;\r\n const tgtNodeId = `pol-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set wlc\r\n if ('wlc' in data) {\r\n for (let i = 0; i < data.wlc.length; i += 1) {\r\n const edge = data.wlc[i];\r\n const srcNodeId = `pic-${edge.src - 1}`;\r\n const tgtNodeId = `pol-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // set wlopo\r\n if ('wlopo' in data) {\r\n for (let i = 0; i < data.wlopo.length; i += 1) {\r\n const edge = data.wlopo[i];\r\n const srcNodeId = `opo-${edge.src - 1}`;\r\n const tgtNodeId = `pol-${edge.tgt - 1}`;\r\n if (graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId)) {\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if (graph.hasNode(srcNodeId) && !graph.hasNode(tgtNodeId)) {\r\n const WnodeId = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else if ((!graph.hasNode(srcNodeId) && graph.hasNode(tgtNodeId))) {\r\n const WnodeId = srcNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n } else {\r\n const WnodeId1 = srcNodeId;\r\n const WnodeId2 = tgtNodeId;\r\n const label = \"err\";\r\n const width = 50;\r\n const height = 50;\r\n graph.setNode(WnodeId1, { label, width, height});\r\n graph.setNode(WnodeId2, { label, width, height});\r\n graph.setEdge(srcNodeId, tgtNodeId);\r\n }\r\n }\r\n }\r\n\r\n // add auxi edges\r\n if ('pif' in data) {\r\n for (let i = 0; i < data.pif.length; i += 1) {\r\n const nodeID = `pif-${i}`;\r\n const pifNode = data.pif[i];\r\n const auxID = `aux-bf-${pifNode.box - 1}`;\r\n const hasIncomingEdges = graph.predecessors(nodeID).length > 0;\r\n if (!hasIncomingEdges) {\r\n graph.setEdge(auxID, nodeID);\r\n }\r\n }\r\n }\r\n if ('pof' in data) {\r\n for (let i = 0; i < data.pof.length; i += 1) {\r\n const nodeID = `pof-${i}`;\r\n const pofNode = data.pof[i];\r\n const auxID = `aux-bf-${pofNode.box - 1}`;\r\n const hasOutgoingEdges = graph.successors(nodeID).length > 0;\r\n if (!hasOutgoingEdges) {\r\n graph.setEdge(nodeID, auxID);\r\n }\r\n }\r\n }\r\n if ('pic' in data) {\r\n for (let i = 0; i < data.pic.length; i += 1) {\r\n const nodeID = `pic-${i}`;\r\n const picNode = data.pic[i];\r\n const auxID = `aux-bc-${picNode.box - 1}`;\r\n const hasIncomingEdges = graph.predecessors(nodeID).length > 0;\r\n if (!hasIncomingEdges) {\r\n graph.setEdge(auxID, nodeID);\r\n }\r\n }\r\n }\r\n if ('poc' in data) {\r\n for (let i = 0; i < data.poc.length; i += 1) {\r\n const nodeID = `poc-${i}`;\r\n const pocNode = data.poc[i];\r\n const auxID = `aux-bc-${pocNode.box - 1}`;\r\n const hasOutgoingEdges = graph.successors(nodeID).length > 0;\r\n if (!hasOutgoingEdges) {\r\n graph.setEdge(nodeID, auxID);\r\n }\r\n }\r\n }\r\n if ('pil' in data) {\r\n for (let i = 0; i < data.pil.length; i += 1) {\r\n const nodeID = `pil-${i}`;\r\n const pilNode = data.pil[i];\r\n const auxID = `aux-bl-${pilNode.box - 1}`;\r\n const hasIncomingEdges = graph.predecessors(nodeID).length > 0;\r\n if (!hasIncomingEdges) {\r\n graph.setEdge(auxID, nodeID);\r\n }\r\n }\r\n }\r\n if ('pol' in data) {\r\n for (let i = 0; i < data.pol.length; i += 1) {\r\n const nodeID = `pol-${i}`;\r\n const polNode = data.pol[i];\r\n const auxID = `aux-bl-${polNode.box - 1}`;\r\n const hasOutgoingEdges = graph.successors(nodeID).length > 0;\r\n if (!hasOutgoingEdges) {\r\n graph.setEdge(nodeID, auxID);\r\n }\r\n }\r\n }\r\n const bfNodes = graph.nodes().filter(node => node.startsWith('bf'));\r\n const bcNodes = graph.nodes().filter(node => node.startsWith('bc'));\r\n const blNodes = graph.nodes().filter(node => node.startsWith('bl'));\r\n const opoNodes = graph.nodes().filter(node => node.startsWith('opo'));\r\n const opiNodes = graph.nodes().filter(node => node.startsWith('opi'));\r\n // const parentNodes = [...bcNodes, ...bfNodes, ...blNodes];\r\n // const graph_aux = cloneDeep(graph);\r\n // const superNodes = groupParentNodes(graph_aux, parentNodes);\r\n // if (Object.keys(superNodes).length>1) {\r\n // graph = graph_aux;\r\n // }\r\n // console.log(graph);\r\n // eslint-disable-next-line\r\n // console.log(graph);\r\n // execute layout calculation\r\n graph.setGraph({ ranksep: 30, rankdir: 'BT' });\r\n dagre.layout(graph);\r\n // console.log(superNodes);\r\n // if (Object.keys(superNodes).length>1000) {\r\n // arrangeSuperNodes(graph,superNodes);\r\n // }\r\n\r\n // get layout result\r\n const layout = {\r\n nodes: {},\r\n edges: [],\r\n };\r\n graph.nodes().forEach((nodeId) => {\r\n const node = graph.node(nodeId);\r\n // if (node.height = undefined){\r\n // node.height = 100;\r\n // }\r\n // if (node.width = undefined){\r\n // node.width = 100;\r\n // }\r\n layout.nodes[nodeId] = {\r\n x: node.x,\r\n y: node.y,\r\n width: node.width?node.width:100,\r\n height: node.height?node.height:100,\r\n label: node.label,\r\n type: node.type,\r\n value: node.value,\r\n body: node.body,\r\n condition: node.condition,\r\n body_if: node.body_if,\r\n body_else: node.body_else,\r\n pre: node.pre,\r\n post: node.post,\r\n metadata: node.metadata\r\n };\r\n });\r\n graph.edges().forEach((edge, i) => {\r\n layout.edges.push({\r\n id: i,\r\n source: edge.v,\r\n target: edge.w,\r\n });\r\n });\r\n // console.log(layout);\r\n // set attributes for bf\r\n if ('bf' in data) {\r\n for (let i = 0; i < data.bf.length; i += 1) {\r\n const bfNodeId = `bf-${i}`;\r\n if (('pif' in data) && ('pof' in data)) {\r\n const pofNode = data.pof.find(node => node.box === i + 1);\r\n const pifNode = data.pif.find(node => node.box === i + 1);\r\n if (pofNode && pifNode) {\r\n layout.nodes[bfNodeId].fullBox = true;\r\n } else {\r\n layout.nodes[bfNodeId].fullBox = false;\r\n }\r\n } else {\r\n layout.nodes[bfNodeId].fullBox = false;\r\n }\r\n }\r\n }\r\n if ('bc' in data) {\r\n for (let i = 0; i < data.bc.length; i += 1) {\r\n const bcNodeId = `bc-${i}`;\r\n if (('pic' in data) && ('poc' in data)) {\r\n const pocNode = data.poc.find(node => node.box === i + 1);\r\n const picNode = data.pic.find(node => node.box === i + 1);\r\n if (pocNode && picNode) {\r\n layout.nodes[bcNodeId].fullBox = true;\r\n } else {\r\n layout.nodes[bcNodeId].fullBox = false;\r\n }\r\n } else {\r\n layout.nodes[bcNodeId].fullBox = false;\r\n }\r\n }\r\n }\r\n if ('bl' in data) {\r\n for (let i = 0; i < data.bl.length; i += 1) {\r\n const blNodeId = `bl-${i}`;\r\n if (('pil' in data) && ('pol' in data)) {\r\n const polNode = data.pol.find(node => node.box === i + 1);\r\n const pilNode = data.pil.find(node => node.box === i + 1);\r\n if (polNode && pilNode) {\r\n layout.nodes[blNodeId].fullBox = true;\r\n } else {\r\n layout.nodes[blNodeId].fullBox = false;\r\n }\r\n } else {\r\n layout.nodes[blNodeId].fullBox = false;\r\n }\r\n }\r\n }\r\n\r\n // set meta data for layout\r\n layout.meta = {};\r\n layout.meta.name = data.b[0].name;\r\n layout.meta.identifier = `${data.b[0].function_type}-${data.b[0].metadata}`;\r\n layout.meta.type = data.b[0].function_type;\r\n layout.meta.metadata = data.b[0].metadata;\r\n return layout;\r\n}\r\n\r\nclass UnionFind {\r\n constructor(elements) {\r\n this.parent = {};\r\n elements.forEach(e => this.parent[e] = e);\r\n }\r\n\r\n find(x) {\r\n if(this.parent[x] !== x) {\r\n this.parent[x] = this.find(this.parent[x]);\r\n }\r\n return this.parent[x];\r\n }\r\n\r\n union(x, y) {\r\n const parentX = this.find(x);\r\n const parentY = this.find(y);\r\n if(parentX !== parentY) {\r\n this.parent[parentY] = parentX;\r\n }\r\n }\r\n}\r\n\r\nfunction isEdgeBetweenChildNodes(graph, parentNode1, parentNode2) {\r\n let nodes1 = [];\r\n let nodes2 = [];\r\n\r\n if (parentNode1.startsWith(\"opo\") || parentNode1.startsWith(\"opi\")) {\r\n nodes1.push(parentNode1);\r\n } else {\r\n nodes1 = graph.children(parentNode1);\r\n }\r\n\r\n if (parentNode2.startsWith(\"opo\") || parentNode2.startsWith(\"opi\")) {\r\n nodes2.push(parentNode2);\r\n } else {\r\n nodes2 = graph.children(parentNode2);\r\n }\r\n\r\n for (const node1 of nodes1) {\r\n for (const node2 of nodes2) {\r\n if (graph.edge(node1, node2) || graph.edge(node2, node1)) {\r\n return true;\r\n }\r\n }\r\n }\r\n\r\n return false;\r\n}\r\n\r\nfunction groupParentNodes(graph, parentNodes) {\r\n const uf = new UnionFind(parentNodes);\r\n for(let i = 0; i < parentNodes.length; i++) {\r\n for(let j = i+1; j < parentNodes.length; j++) {\r\n if(isEdgeBetweenChildNodes(graph, parentNodes[i], parentNodes[j])) {\r\n uf.union(parentNodes[i], parentNodes[j]);\r\n }\r\n }\r\n }\r\n const groups = {};\r\n parentNodes.forEach(node => {\r\n const root = uf.find(node);\r\n if(!groups[root]) {\r\n groups[root] = [];\r\n }\r\n groups[root].push(node);\r\n });\r\n\r\n let superNodeCounter = 0;\r\n const superNodes = {};\r\n let previousSuperNodeId = null;\r\n for (let root in groups) {\r\n const superNodeId = `aux-super-${superNodeCounter}`;\r\n const label = `aux-super`;\r\n const virtual = true;\r\n graph.setNode(superNodeId, { label, virtual });\r\n groups[root].forEach(node => graph.setParent(node, superNodeId));\r\n superNodes[superNodeId] = groups[root];\r\n \r\n // Now there is a bug of dagre, it can not set an edge between group nodes\r\n if (previousSuperNodeId) {\r\n // graph.setEdge(previousSuperNodeId, superNodeId);\r\n }\r\n previousSuperNodeId = superNodeId;\r\n superNodeCounter++;\r\n }\r\n\r\n return superNodes;\r\n}\r\n\r\nfunction adjustChildNodesPosition(graph, parentNodeId, deltaX, deltaY) {\r\n const children = graph.children(parentNodeId);\r\n children.forEach(childId => {\r\n const childNode = graph.node(childId);\r\n \r\n childNode.x += deltaX;\r\n childNode.y += deltaY;\r\n\r\n if (graph.children(childId).length>0){\r\n adjustChildNodesPosition(graph, childId, deltaX, deltaY);\r\n }\r\n\r\n if (childId.split('-')[0]===\"bf\") {\r\n // console.log(\"aux-\" + childId);\r\n adjustAuxNodesPosition(graph, \"aux-\" + childId, deltaX, deltaY);\r\n }\r\n\r\n if (childId.split('-')[0]===\"bc\") {\r\n // console.log(\"aux-\" + childId);\r\n adjustAuxNodesPosition(graph, \"aux-\" + childId, deltaX, deltaY);\r\n }\r\n\r\n if (childId.split('-')[0]===\"bl\") {\r\n // console.log(\"aux-\" + childId);\r\n adjustAuxNodesPosition(graph, \"aux-\" + childId, deltaX, deltaY);\r\n }\r\n });\r\n}\r\n\r\nfunction adjustAuxNodesPosition(graph, auxNodeId, deltaX, deltaY) {\r\n const auxNode = graph.node(auxNodeId);\r\n auxNode.x += deltaX;\r\n auxNode.y += deltaY;\r\n}\r\n\r\nfunction arrangeSuperNodes(graph, superNodes) {\r\n const nodeSpacing = 50; // 超级节点之间的间距\r\n let currentY = 0;\r\n console.log(graph);\r\n // 根据超级节点创建顺序进行排序\r\n const superNodeIds = Object.keys(superNodes);\r\n superNodeIds.sort((a, b) => parseInt(a.split('-')[2]) - parseInt(b.split('-')[2]));\r\n\r\n // 获取第一个超级节点,保持其位置不变\r\n const firstSuperNode = graph.node(superNodeIds[0]);\r\n const firstSuperNodeCenterX = firstSuperNode.x + 100;\r\n firstSuperNode.x += 100;\r\n currentY = firstSuperNode.y;\r\n adjustChildNodesPosition(graph, superNodeIds[0], 100, 0);\r\n\r\n // 从第二个超级节点开始遍历,调整其位置\r\n for (let i = 1; i < superNodeIds.length; i++) {\r\n \r\n const superNodeId = superNodeIds[i];\r\n const preSuperNode = graph.node(superNodeIds[i-1]);\r\n const superNode = graph.node(superNodeId);\r\n currentY += nodeSpacing + superNode.height / 2 + preSuperNode.height / 2;\r\n\r\n // 计算移动距离\r\n const deltaX = firstSuperNodeCenterX - superNode.x;\r\n const deltaY = currentY - superNode.y;\r\n\r\n // 将超级节点移动到新的中心点\r\n superNode.x += deltaX;\r\n superNode.y += deltaY;\r\n\r\n const moveFlag = false;\r\n // graph.children(superNodeId).forEach(childId => {\r\n // if (childId.split)\r\n // })\r\n // 更新超级节点的子节点的坐标\r\n adjustChildNodesPosition(graph, superNodeId, deltaX, deltaY);\r\n\r\n // 更新下一个超级节点的y坐标\r\n // currentY += superNode.height + nodeSpacing;\r\n }\r\n}\r\n\r\n\r\n\r\n// function isEdgeBetweenChildNodes(graph, parentNode1, parentNode2) {\r\n// // 获取父节点的子节点\r\n// const children1 = graph.children(parentNode1);\r\n// const children2 = graph.children(parentNode2);\r\n\r\n// // 遍历每一对子节点,检查它们之间是否存在边缘\r\n// for (const child1 of children1) {\r\n// for (const child2 of children2) {\r\n// if (graph.edge(child1, child2) || graph.edge(child2, child1)) {\r\n// // 如果找到了边缘,返回true\r\n// return true;\r\n// }\r\n// }\r\n// }\r\n\r\n// // 如果没有找到边缘,返回false\r\n// return false;\r\n// }\r\n\r\n// function groupParentNodesWithConnectedChildren(graph, parentNodeIds) {\r\n// // 为每个父节点创建一个集合\r\n// const sets = new Map(parentNodeIds.map(id => [id, new Set([id])]));\r\n\r\n// // 超级父节点计数器\r\n// let superParentCounter = 0;\r\n\r\n// // 对每一对父节点进行迭代\r\n// for (let i = 0; i < parentNodeIds.length; i++) {\r\n// for (let j = i + 1; j < parentNodeIds.length; j++) {\r\n// // 检查父节点的子节点之间是否存在连接\r\n// if (isEdgeBetweenChildNodes(graph, parentNodeIds[i], parentNodeIds[j])) {\r\n// // 如果存在连接,将这两个节点的集合合并\r\n// const set1 = sets.get(parentNodeIds[i]);\r\n// const set2 = sets.get(parentNodeIds[j]);\r\n\r\n// const newSet = new Set([...set1, ...set2]);\r\n\r\n// // 更新集合映射\r\n// newSet.forEach(id => sets.set(id, newSet));\r\n// }\r\n// }\r\n// }\r\n\r\n// // 创建超级父节点\r\n// const visited = new Set();\r\n// const superParentNodes = [];\r\n\r\n// sets.forEach((set, id) => {\r\n// // 忽略已经访问过的节点\r\n// if (visited.has(id)) return;\r\n\r\n// const superParentNodeId = `aux-super-${superParentCounter++}`;\r\n\r\n// // 设置超级父节点的子节点\r\n// set.forEach(id => {\r\n// graph.setParent(id, superParentNodeId);\r\n// visited.add(id);\r\n// });\r\n\r\n// superParentNodes.push(superParentNodeId);\r\n// });\r\n\r\n// return superParentNodes;\r\n// }\r\n\r\n\r\nexport function getTreeLayout(data) {\r\n const g = new dagre.graphlib.Graph({ compound: true });\r\n g.setGraph({});\r\n // eslint-disable-next-line\r\n g.setDefaultEdgeLabel(() => { return {}; });\r\n\r\n g.setGraph(data.graph);\r\n\r\n data.subgraphs.forEach((subgraph) => {\r\n const filteredAttributes = {};\r\n Object.keys(subgraph.attributes).forEach((key) => {\r\n if (key === 'label') {\r\n filteredAttributes[key] = subgraph.attributes[key];\r\n }\r\n });\r\n g.setNode(subgraph.name, filteredAttributes);\r\n subgraph.nodes.forEach((node) => {\r\n const filteredAttributesN = {};\r\n Object.keys(node.attributes).forEach((key) => {\r\n if (key === 'label') {\r\n filteredAttributesN[key] = node.attributes[key];\r\n }\r\n });\r\n g.setNode(node.name, filteredAttributesN);\r\n g.setParent(node.name, subgraph.name);\r\n });\r\n });\r\n\r\n data.edges.forEach((edge) => {\r\n g.setEdge(edge.source, edge.target);\r\n });\r\n\r\n dagre.layout(g);\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/utils/layout.js","/* eslint-disable */\r\nimport * as d3 from \"d3\";\r\n\r\nexport function drawLines(sourceid, targetid, locationTransform, body_num_source, body_num_target, color, direction) {\r\n // console.log(\"sourceid, \", sourceid);\r\n // console.log(\"targetid, \", targetid);\r\n // console.log(\"locationTransform, \", locationTransform);\r\n // console.log(\"body_num_source, \", body_num_source);\r\n // console.log(\"body_num_target, \", body_num_target);\r\n // console.log(\"color, \", color);\r\n \r\n // d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr(\"data-opened\", \"true\");\r\n let sourceX = Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('x')) + Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('width'));\r\n let sourceY = Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('y')) + Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('height')) / 2;\r\n let targetX1 = Number(d3.select(\"#\" + targetid).attr('x')) + locationTransform[0];\r\n let targetX2= Number(d3.select(\"#\" + targetid).attr('x')) + locationTransform[0];\r\n let targetY1 = Number(d3.select(\"#\" + targetid).attr('y')) + locationTransform[1];\r\n let targetY2 = Number(d3.select(\"#\" + targetid).attr('y')) + Number(d3.select(\"#\" + targetid).attr('height')) + locationTransform[1];\r\n let dx1 = targetX1 - sourceX;\r\n let dy1 = targetY1 - sourceY;\r\n let dx2 = targetX2 - sourceX;\r\n let dy2 = targetY2 - sourceY;\r\n let controlPoint11 = {};\r\n let controlPoint12 = {};\r\n let controlPoint21 = {};\r\n let controlPoint22 = {};\r\n controlPoint11.x = sourceX + 0.25 * 1.5 * dx1;\r\n controlPoint11.y = sourceY + 0.25 * 1.2 * dy1;\r\n controlPoint12.x = sourceX + 0.75 * 0.8 * dx1;\r\n controlPoint12.y = sourceY + 0.75 * 1.0 * dy1;\r\n controlPoint21.x = sourceX + 0.25 * 1.5 * dx2;\r\n controlPoint21.y = sourceY + 0.25 * 1.2 * dy2;\r\n controlPoint22.x = sourceX + 0.75 * 0.8 * dx2;\r\n controlPoint22.y = sourceY + 0.75 * 1.0 * dy2;\r\n\r\n if (direction === \"down\") {\r\n sourceX = Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('x')) + Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('width')) / 2;\r\n sourceY = Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('y')) + Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('height'));\r\n targetX1 = Number(d3.select(\"#\" + targetid).attr('x')) + locationTransform[0];\r\n targetX2= Number(d3.select(\"#\" + targetid).attr('x')) + locationTransform[0] + Number(d3.select(\"#\" + targetid).attr('width'));\r\n targetY1 = Number(d3.select(\"#\" + targetid).attr('y')) + locationTransform[1];\r\n targetY2 = Number(d3.select(\"#\" + targetid).attr('y')) + locationTransform[1];\r\n dx1 = targetX1 - sourceX;\r\n dy1 = targetY1 - sourceY;\r\n dx2 = targetX2 - sourceX;\r\n dy2 = targetY2 - sourceY;\r\n controlPoint11 = {};\r\n controlPoint12 = {};\r\n controlPoint21 = {};\r\n controlPoint22 = {};\r\n controlPoint11.x = sourceX + 0.25 * 1.5 * dx1;\r\n controlPoint11.y = sourceY + 0.25 * 1.2 * dy1;\r\n controlPoint12.x = sourceX + 0.75 * 0.8 * dx1;\r\n controlPoint12.y = sourceY + 0.75 * 1.0 * dy1;\r\n controlPoint21.x = sourceX + 0.25 * 1.5 * dx2;\r\n controlPoint21.y = sourceY + 0.25 * 1.2 * dy2;\r\n controlPoint22.x = sourceX + 0.75 * 0.8 * dx2;\r\n controlPoint22.y = sourceY + 0.75 * 1.0 * dy2;\r\n }\r\n \r\n const g = d3.select('svg').select('#sumGroup').append(\"g\").attr('id', 'line' + String(body_num_source) + '_' + String(body_num_target)).attr('class', 'drawer');\r\n \r\n const paddingL = 17;\r\n\r\n g.attr(\"sourceid\", sourceid)\r\n .attr(\"targetid\", targetid)\r\n .attr(\"locationTransform\", locationTransform)\r\n .attr(\"body_num_source\", body_num_source)\r\n .attr(\"body_num_target\", body_num_target)\r\n .attr(\"color\", color);\r\n\r\n let data1 = [\r\n {x: sourceX, y: sourceY},\r\n {x: controlPoint11.x, y: controlPoint11.y},\r\n {x: controlPoint12.x, y: controlPoint12.y},\r\n {x: targetX1, y: targetY1 + paddingL}\r\n ];\r\n\r\n let data2 = [\r\n {x: sourceX, y: sourceY},\r\n {x: controlPoint21.x, y: controlPoint21.y},\r\n {x: controlPoint22.x, y: controlPoint22.y},\r\n {x: targetX2, y: targetY2 - paddingL}\r\n ];\r\n\r\n if (direction===\"down\") {\r\n data1 = [\r\n {x: sourceX, y: sourceY},\r\n {x: controlPoint11.x, y: controlPoint11.y},\r\n {x: controlPoint12.x, y: controlPoint12.y},\r\n {x: targetX1 + paddingL, y: targetY1}\r\n ];\r\n \r\n data2 = [\r\n {x: sourceX, y: sourceY},\r\n {x: controlPoint21.x, y: controlPoint21.y},\r\n {x: controlPoint22.x, y: controlPoint22.y},\r\n {x: targetX2 - paddingL, y: targetY2}\r\n ];\r\n }\r\n let lineGenerator = d3.line()\r\n .x(function(d) { return d.x; })\r\n .y(function(d) { return d.y; })\r\n .curve(d3.curveBasis);\r\n \r\n let pathString1 = lineGenerator(data1);\r\n let pathElement1 = document.createElementNS('http://www.w3.org/2000/svg', 'path');\r\n pathElement1.setAttribute('d', pathString1);\r\n\r\n let pathString2 = lineGenerator(data2);\r\n let pathElement2 = document.createElementNS('http://www.w3.org/2000/svg', 'path');\r\n pathElement2.setAttribute('d', pathString2);\r\n \r\n let totalLength1 = pathElement1.getTotalLength();\r\n let totalLength2 = pathElement2.getTotalLength();\r\n\r\n const numPoints = 500;\r\n\r\n let points1 = [];\r\n for (let i = 0; i < numPoints; i++) {\r\n let point = pathElement1.getPointAtLength(i * totalLength1 / (numPoints - 1));\r\n points1.push({x: point.x, y: point.y});\r\n }\r\n\r\n let points2 = [];\r\n for (let i = 0; i < numPoints; i++) {\r\n let point = pathElement2.getPointAtLength(i * totalLength2 / (numPoints - 1));\r\n points2.push({x: point.x, y: point.y});\r\n }\r\n\r\n // 创建一个线性比例尺来对应x值\r\n let xScale1 = d3.scaleLinear()\r\n .domain(d3.extent(data1, function(d) { return d.x; }))\r\n .range([0, dx1]); // 假设width是你的SVG宽度\r\n\r\n // 根据x值找到相应的数据点\r\n let bisect1 = d3.bisector(function(d) { return d.x; }).left;\r\n\r\n // 创建一个线性比例尺来对应x值\r\n let xScale2 = d3.scaleLinear()\r\n .domain(d3.extent(data2, function(d) { return d.x; }))\r\n .range([0, dx1]); // 假设width是你的SVG宽度\r\n\r\n // 根据x值找到相应的数据点\r\n let bisect2 = d3.bisector(function(d) { return d.x; }).left;\r\n\r\n if (direction===\"down\") {\r\n // 创建一个线性比例尺来对应y值\r\n xScale1 = d3.scaleLinear()\r\n .domain(d3.extent(data1, function(d) { return d.y; }))\r\n .range([0, dy1]);\r\n\r\n // 根据y值找到相应的数据点\r\n bisect1 = d3.bisector(function(d) { return d.y; }).left;\r\n\r\n // 创建一个线性比例尺来对应y值\r\n xScale2 = d3.scaleLinear()\r\n .domain(d3.extent(data2, function(d) { return d.y; }))\r\n .range([0, dy1]);\r\n\r\n // 根据y值找到相应的数据点\r\n bisect2 = d3.bisector(function(d) { return d.y; }).left;\r\n }\r\n let area1 = d3.area()\r\n .x(function(d) { return d.x; })\r\n .y0( d => {\r\n const xValue = d.x;\r\n let indexOfNode = bisect1(points1, xScale1.invert(xValue));\r\n if(indexOfNode >= points1.length - 1) indexOfNode = points1.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points1[indexOfNode - 1];\r\n let pointAfter = points1[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.y - pointBefore.y) / (pointAfter.x - pointBefore.x));\r\n let linewidth = 6 * Math.pow(((d.x - sourceX + 2) / dx1), 0.38);\r\n return d.y - Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .y1( d => {\r\n const xValue = d.x;\r\n let indexOfNode = bisect1(points1, xScale1.invert(xValue));\r\n if(indexOfNode >= points1.length - 1) indexOfNode = points1.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points1[indexOfNode - 1];\r\n let pointAfter = points1[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.y - pointBefore.y) / (pointAfter.x - pointBefore.x));\r\n let linewidth = 6 * Math.pow(((d.x - sourceX + 2) / dx1), 0.38);\r\n return d.y + Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .curve(d3.curveBasis);\r\n\r\n let area2 = d3.area()\r\n .x(function(d) { return d.x; })\r\n .y0( d => {\r\n const xValue = d.x;\r\n let indexOfNode = bisect2(points2, xScale2.invert(xValue));\r\n if(indexOfNode >= points2.length - 1) indexOfNode = points2.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points2[indexOfNode - 1];\r\n let pointAfter = points2[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.y - pointBefore.y) / (pointAfter.x - pointBefore.x));\r\n let linewidth = 6 * Math.pow(((d.x - sourceX + 2) / dx2), 0.38);\r\n return d.y - Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .y1(d => {\r\n const xValue = d.x;\r\n let indexOfNode = bisect2(points2, xScale2.invert(xValue));\r\n if(indexOfNode >= points2.length - 1) indexOfNode = points2.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points2[indexOfNode - 1];\r\n let pointAfter = points2[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.y - pointBefore.y) / (pointAfter.x - pointBefore.x));\r\n let linewidth = 6 * Math.pow(((d.x - sourceX + 2) / dx2), 0.38);\r\n return d.y + Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .curve(d3.curveBasis);\r\n\r\n if (direction===\"down\") {\r\n area1 = d3.area()\r\n .y(function(d) { return d.y; })\r\n .x0( d => {\r\n const yValue = d.y;\r\n let indexOfNode = bisect1(points1, xScale1.invert(yValue));\r\n if(indexOfNode >= points1.length - 1) indexOfNode = points1.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points1[indexOfNode - 1];\r\n let pointAfter = points1[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.x - pointBefore.x) / (pointAfter.y - pointBefore.y));\r\n // let slope = 0;\r\n let linewidth = 6 * Math.pow(((d.y - sourceY + 2) / dy1), 0.38);\r\n return d.x - Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .x1( d => {\r\n const yValue = d.y;\r\n let indexOfNode = bisect1(points1, xScale1.invert(yValue));\r\n if(indexOfNode >= points1.length - 1) indexOfNode = points1.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points1[indexOfNode - 1];\r\n let pointAfter = points1[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.x - pointBefore.x) / (pointAfter.y - pointBefore.y));\r\n // let slope = 0;\r\n let linewidth = 6 * Math.pow(((d.y - sourceY + 2) / dy1), 0.38);\r\n return d.x + Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .curve(d3.curveBasis);\r\n\r\n area2 = d3.area()\r\n .y(function(d) { return d.y; })\r\n .x0( d => {\r\n const yValue = d.y;\r\n let indexOfNode = bisect2(points2, xScale2.invert(yValue));\r\n if(indexOfNode >= points2.length - 1) indexOfNode = points2.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points2[indexOfNode - 1];\r\n let pointAfter = points2[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.x - pointBefore.x) / (pointAfter.y - pointBefore.y));\r\n // let slope = 0;\r\n let linewidth = 6 * Math.pow(((d.y - sourceY + 2) / dy2), 0.38);\r\n return d.x - Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .x1(d => {\r\n const yValue = d.y;\r\n let indexOfNode = bisect2(points2, xScale2.invert(yValue));\r\n if(indexOfNode >= points2.length - 1) indexOfNode = points2.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points2[indexOfNode - 1];\r\n let pointAfter = points2[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.x - pointBefore.x) / (pointAfter.y - pointBefore.y));\r\n // let slope = 0;\r\n let linewidth = 6 * Math.pow(((d.y - sourceY + 2) / dy2), 0.38);\r\n return d.x + Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .curve(d3.curveBasis);\r\n }\r\n // console.log(area1,area2);\r\n\r\n let path1 = g.append(\"path\")\r\n .datum(data1)\r\n .attr(\"d\", area1)\r\n .attr('id', 'path1')\r\n .attr(\"fill\", color);\r\n \r\n let path2 = g.append(\"path\")\r\n .datum(data2)\r\n .attr(\"d\", area2)\r\n .attr('id', 'path2')\r\n .attr(\"fill\", color);\r\n\r\n d3.select(\"#boxid\" + body_num_source).selectAll(\"rect\").each(function(d,i){\r\n const currentNode = d3.select(this);\r\n const currentNodeId = currentNode.attr(\"id\");\r\n if (currentNodeId !== sourceid) {\r\n const currentNodeBody = currentNode.attr(\"data-body\");\r\n if (currentNodeBody !== undefined && currentNodeBody !== null && currentNodeBody === body_num_target.split('-')[1] ) {\r\n currentNode.attr(\"data-opened\", true);\r\n const sourceXforSL = Number(currentNode.attr('x')) + Number(currentNode.attr('width'));\r\n const sourceYforSL = Number(currentNode.attr('y')) + Number(currentNode.attr('height')) / 2;\r\n const targetXforSL= Number(d3.select(\"#\" + targetid).attr('x')) + locationTransform[0];\r\n const targetYforSL = Number(d3.select(\"#\" + targetid).attr('y')) + locationTransform[1] + Number(d3.select(\"#\" + targetid).attr('height')) / 2;\r\n g.append(\"circle\")\r\n .attr(\"cx\", targetXforSL)\r\n .attr(\"cy\", targetYforSL)\r\n .attr(\"r\", 7) // 设置圆的半径\r\n .attr(\"fill\", color); // 设置圆的颜色\r\n\r\n g.append(\"line\")\r\n .attr(\"x1\", sourceXforSL)\r\n .attr(\"y1\", sourceYforSL)\r\n .attr(\"x2\", targetXforSL)\r\n .attr(\"y2\", targetYforSL)\r\n .attr(\"stroke-width\", 3) // 设置线的宽度\r\n .attr(\"stroke\", color) // 设置线的颜色\r\n .attr(\"stroke-dasharray\", \"5,5\") // 设置线为虚线,\"5,5\"表示线段和间隔的长度\r\n .attr(\"marker-end\", \"url(#arrow)\") // 设置线的终点为箭头\r\n .attr(\"class\", \"arrowLine\");\r\n }\r\n }\r\n })\r\n\r\n }\r\n \r\nexport function updateLines(sourceid, targetid, locationTransform, body_num_source, body_num_target, color, lineID, direction) {\r\n // console.log(\"sourceid, \", sourceid);\r\n // console.log(\"targetid, \", targetid);\r\n // console.log(\"locationTransform, \", locationTransform);\r\n // console.log(\"body_num_source, \", body_num_source);\r\n // console.log(\"body_num_target, \", body_num_target);\r\n // console.log(\"color, \", color);\r\n\r\n let sourceX = Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('x')) + Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('width'));\r\n let sourceY = Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('y')) + Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('height')) / 2;\r\n let targetX1 = Number(d3.select(\"#\" + targetid).attr('x')) + locationTransform[0];\r\n let targetX2= Number(d3.select(\"#\" + targetid).attr('x')) + locationTransform[0];\r\n let targetY1 = Number(d3.select(\"#\" + targetid).attr('y')) + locationTransform[1];\r\n let targetY2 = Number(d3.select(\"#\" + targetid).attr('y')) + Number(d3.select(\"#\" + targetid).attr('height')) + locationTransform[1];\r\n let dx1 = targetX1 - sourceX;\r\n let dy1 = targetY1 - sourceY;\r\n let dx2 = targetX2 - sourceX;\r\n let dy2 = targetY2 - sourceY;\r\n let controlPoint11 = {};\r\n let controlPoint12 = {};\r\n let controlPoint21 = {};\r\n let controlPoint22 = {};\r\n controlPoint11.x = sourceX + 0.25 * 1.5 * dx1;\r\n controlPoint11.y = sourceY + 0.25 * 1.2 * dy1;\r\n controlPoint12.x = sourceX + 0.75 * 0.8 * dx1;\r\n controlPoint12.y = sourceY + 0.75 * 1.0 * dy1;\r\n controlPoint21.x = sourceX + 0.25 * 1.5 * dx2;\r\n controlPoint21.y = sourceY + 0.25 * 1.2 * dy2;\r\n controlPoint22.x = sourceX + 0.75 * 0.8 * dx2;\r\n controlPoint22.y = sourceY + 0.75 * 1.0 * dy2;\r\n if (direction === \"down\") {\r\n sourceX = Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('x')) + Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('width')) / 2;\r\n sourceY = Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('y')) + Number(d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr('height'));\r\n targetX1 = Number(d3.select(\"#\" + targetid).attr('x')) + locationTransform[0];\r\n targetX2= Number(d3.select(\"#\" + targetid).attr('x')) + locationTransform[0] + Number(d3.select(\"#\" + targetid).attr('width'));\r\n targetY1 = Number(d3.select(\"#\" + targetid).attr('y')) + locationTransform[1];\r\n targetY2 = Number(d3.select(\"#\" + targetid).attr('y')) + locationTransform[1];\r\n dx1 = targetX1 - sourceX;\r\n dy1 = targetY1 - sourceY;\r\n dx2 = targetX2 - sourceX;\r\n dy2 = targetY2 - sourceY;\r\n controlPoint11 = {};\r\n controlPoint12 = {};\r\n controlPoint21 = {};\r\n controlPoint22 = {};\r\n controlPoint11.x = sourceX + 0.25 * 1.5 * dx1;\r\n controlPoint11.y = sourceY + 0.25 * 1.2 * dy1;\r\n controlPoint12.x = sourceX + 0.75 * 0.8 * dx1;\r\n controlPoint12.y = sourceY + 0.75 * 1.0 * dy1;\r\n controlPoint21.x = sourceX + 0.25 * 1.5 * dx2;\r\n controlPoint21.y = sourceY + 0.25 * 1.2 * dy2;\r\n controlPoint22.x = sourceX + 0.75 * 0.8 * dx2;\r\n controlPoint22.y = sourceY + 0.75 * 1.0 * dy2;\r\n }\r\n const g = d3.select('#' + lineID);\r\n\r\n const paddingL = 17;\r\n\r\n g.attr(\"sourceid\", sourceid)\r\n .attr(\"targetid\", targetid)\r\n .attr(\"locationTransform\", locationTransform)\r\n .attr(\"body_num_source\", body_num_source)\r\n .attr(\"body_num_target\", body_num_target)\r\n .attr(\"color\", color);\r\n\r\n\r\n let data1 = [\r\n {x: sourceX, y: sourceY},\r\n {x: controlPoint11.x, y: controlPoint11.y},\r\n {x: controlPoint12.x, y: controlPoint12.y},\r\n {x: targetX1, y: targetY1 + paddingL}\r\n ];\r\n\r\n let data2 = [\r\n {x: sourceX, y: sourceY},\r\n {x: controlPoint21.x, y: controlPoint21.y},\r\n {x: controlPoint22.x, y: controlPoint22.y},\r\n {x: targetX2, y: targetY2 - paddingL}\r\n ];\r\n\r\n if (direction===\"down\") {\r\n data1 = [\r\n {x: sourceX, y: sourceY},\r\n {x: controlPoint11.x, y: controlPoint11.y},\r\n {x: controlPoint12.x, y: controlPoint12.y},\r\n {x: targetX1 + paddingL, y: targetY1}\r\n ];\r\n \r\n data2 = [\r\n {x: sourceX, y: sourceY},\r\n {x: controlPoint21.x, y: controlPoint21.y},\r\n {x: controlPoint22.x, y: controlPoint22.y},\r\n {x: targetX2 - paddingL, y: targetY2}\r\n ];\r\n }\r\n\r\n let lineGenerator = d3.line()\r\n .x(function(d) { return d.x; })\r\n .y(function(d) { return d.y; })\r\n .curve(d3.curveBasis);\r\n \r\n let pathString1 = lineGenerator(data1);\r\n let pathElement1 = document.createElementNS('http://www.w3.org/2000/svg', 'path');\r\n pathElement1.setAttribute('d', pathString1);\r\n\r\n let pathString2 = lineGenerator(data2);\r\n let pathElement2 = document.createElementNS('http://www.w3.org/2000/svg', 'path');\r\n pathElement2.setAttribute('d', pathString2);\r\n \r\n let totalLength1 = pathElement1.getTotalLength();\r\n let totalLength2 = pathElement2.getTotalLength();\r\n\r\n const numPoints = 500;\r\n\r\n let points1 = [];\r\n for (let i = 0; i < numPoints; i++) {\r\n let point = pathElement1.getPointAtLength(i * totalLength1 / (numPoints - 1));\r\n points1.push({x: point.x, y: point.y});\r\n }\r\n\r\n let points2 = [];\r\n for (let i = 0; i < numPoints; i++) {\r\n let point = pathElement2.getPointAtLength(i * totalLength2 / (numPoints - 1));\r\n points2.push({x: point.x, y: point.y});\r\n }\r\n\r\n // 创建一个线性比例尺来对应x值\r\n let xScale1 = d3.scaleLinear()\r\n .domain(d3.extent(data1, function(d) { return d.x; }))\r\n .range([0, dx1]); // 假设width是你的SVG宽度\r\n\r\n // 根据x值找到相应的数据点\r\n let bisect1 = d3.bisector(function(d) { return d.x; }).left;\r\n\r\n // 创建一个线性比例尺来对应x值\r\n let xScale2 = d3.scaleLinear()\r\n .domain(d3.extent(data2, function(d) { return d.x; }))\r\n .range([0, dx1]); // 假设width是你的SVG宽度\r\n\r\n // 根据x值找到相应的数据点\r\n let bisect2 = d3.bisector(function(d) { return d.x; }).left;\r\n\r\n if (direction===\"down\") {\r\n // 创建一个线性比例尺来对应y值\r\n xScale1 = d3.scaleLinear()\r\n .domain(d3.extent(data1, function(d) { return d.y; }))\r\n .range([0, dy1]);\r\n\r\n // 根据y值找到相应的数据点\r\n bisect1 = d3.bisector(function(d) { return d.y; }).left;\r\n\r\n // 创建一个线性比例尺来对应y值\r\n xScale2 = d3.scaleLinear()\r\n .domain(d3.extent(data2, function(d) { return d.y; }))\r\n .range([0, dy1]);\r\n\r\n // 根据y值找到相应的数据点\r\n bisect2 = d3.bisector(function(d) { return d.y; }).left;\r\n }\r\n let area1 = d3.area()\r\n .x(function(d) { return d.x; })\r\n .y0( d => {\r\n const xValue = d.x;\r\n let indexOfNode = bisect1(points1, xScale1.invert(xValue));\r\n if(indexOfNode >= points1.length - 1) indexOfNode = points1.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points1[indexOfNode - 1];\r\n let pointAfter = points1[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.y - pointBefore.y) / (pointAfter.x - pointBefore.x));\r\n let linewidth = 6 * Math.pow(((d.x - sourceX + 2) / dx1), 0.38);\r\n return d.y - Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .y1( d => {\r\n const xValue = d.x;\r\n let indexOfNode = bisect1(points1, xScale1.invert(xValue));\r\n if(indexOfNode >= points1.length - 1) indexOfNode = points1.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points1[indexOfNode - 1];\r\n let pointAfter = points1[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.y - pointBefore.y) / (pointAfter.x - pointBefore.x));\r\n let linewidth = 6 * Math.pow(((d.x - sourceX + 2) / dx1), 0.38);\r\n return d.y + Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .curve(d3.curveBasis);\r\n\r\n let area2 = d3.area()\r\n .x(function(d) { return d.x; })\r\n .y0( d => {\r\n const xValue = d.x;\r\n let indexOfNode = bisect2(points2, xScale2.invert(xValue));\r\n if(indexOfNode >= points2.length - 1) indexOfNode = points2.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points2[indexOfNode - 1];\r\n let pointAfter = points2[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.y - pointBefore.y) / (pointAfter.x - pointBefore.x));\r\n let linewidth = 6 * Math.pow(((d.x - sourceX + 2) / dx1), 0.38);\r\n return d.y - Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .y1(d => {\r\n const xValue = d.x;\r\n let indexOfNode = bisect2(points2, xScale2.invert(xValue));\r\n if(indexOfNode >= points2.length - 1) indexOfNode = points2.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points2[indexOfNode - 1];\r\n let pointAfter = points2[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.y - pointBefore.y) / (pointAfter.x - pointBefore.x));\r\n let linewidth = 6 * Math.pow(((d.x - sourceX + 2) / dx1), 0.38);\r\n return d.y + Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .curve(d3.curveBasis);\r\n\r\n if (direction===\"down\") {\r\n area1 = d3.area()\r\n .y(function(d) { return d.y; })\r\n .x0( d => {\r\n const yValue = d.y;\r\n let indexOfNode = bisect1(points1, xScale1.invert(yValue));\r\n if(indexOfNode >= points1.length - 1) indexOfNode = points1.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points1[indexOfNode - 1];\r\n let pointAfter = points1[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.x - pointBefore.x) / (pointAfter.y - pointBefore.y));\r\n // let slope = 0;\r\n let linewidth = 6 * Math.pow(((d.y - sourceY + 2) / dy1), 0.38);\r\n return d.x - Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .x1( d => {\r\n const yValue = d.y;\r\n let indexOfNode = bisect1(points1, xScale1.invert(yValue));\r\n if(indexOfNode >= points1.length - 1) indexOfNode = points1.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points1[indexOfNode - 1];\r\n let pointAfter = points1[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.x - pointBefore.x) / (pointAfter.y - pointBefore.y));\r\n // let slope = 0;\r\n let linewidth = 6 * Math.pow(((d.y - sourceY + 2) / dy1), 0.38);\r\n return d.x + Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .curve(d3.curveBasis);\r\n\r\n area2 = d3.area()\r\n .y(function(d) { return d.y; })\r\n .x0( d => {\r\n const yValue = d.y;\r\n let indexOfNode = bisect2(points2, xScale2.invert(yValue));\r\n if(indexOfNode >= points2.length - 1) indexOfNode = points2.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points2[indexOfNode - 1];\r\n let pointAfter = points2[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.x - pointBefore.x) / (pointAfter.y - pointBefore.y));\r\n // let slope = 0;\r\n let linewidth = 6 * Math.pow(((d.y - sourceY + 2) / dy2), 0.38);\r\n return d.x - Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .x1(d => {\r\n const yValue = d.y;\r\n let indexOfNode = bisect2(points2, xScale2.invert(yValue));\r\n if(indexOfNode >= points2.length - 1) indexOfNode = points2.length - 2;\r\n if(indexOfNode < 1) indexOfNode = 1;\r\n let pointBefore = points2[indexOfNode - 1];\r\n let pointAfter = points2[indexOfNode + 1];\r\n let slope = Math.abs((pointAfter.x - pointBefore.x) / (pointAfter.y - pointBefore.y));\r\n // let slope = 0;\r\n let linewidth = 6 * Math.pow(((d.y - sourceY + 2) / dy2), 0.38);\r\n return d.x + Math.sqrt(1+slope**2) * linewidth;\r\n })\r\n .curve(d3.curveBasis);\r\n }\r\n let path1 = g.select(\"#path1\")\r\n .datum(data1)\r\n .transition('transition10')\r\n .duration(720)\r\n .attr(\"d\", area1)\r\n .attr(\"fill\", color);\r\n\r\n let path2 = g.select(\"#path2\")\r\n .datum(data2)\r\n .transition('transition11')\r\n .duration(720)\r\n .attr(\"d\", area2)\r\n .attr(\"fill\", color);\r\n\r\n d3.select(\"#boxid\" + body_num_source).selectAll(\"rect\").each(function(d,i){\r\n const currentNode = d3.select(this);\r\n const currentNodeId = currentNode.attr(\"id\");\r\n if (currentNodeId !== sourceid) {\r\n const currentNodeBody = currentNode.attr(\"data-body\");\r\n if (currentNodeBody !== undefined && currentNodeBody !== null && currentNodeBody === body_num_target.split('-')[1] ) {\r\n const sourceXforSL = Number(currentNode.attr('x')) + Number(currentNode.attr('width'));\r\n const sourceYforSL = Number(currentNode.attr('y')) + Number(currentNode.attr('height')) / 2;\r\n const targetXforSL= Number(d3.select(\"#\" + targetid).attr('x')) + locationTransform[0];\r\n const targetYforSL = Number(d3.select(\"#\" + targetid).attr('y')) + locationTransform[1] + Number(d3.select(\"#\" + targetid).attr('height')) / 2;\r\n g.select(\"circle\")\r\n .transition('transition12')\r\n .duration(720)\r\n .attr(\"cx\", targetXforSL)\r\n .attr(\"cy\", targetYforSL)\r\n .attr(\"r\", 7) // 设置圆的半径\r\n .attr(\"fill\", color); // 设置圆的颜色\r\n\r\n g.select(\"line\")\r\n .transition('transition13')\r\n .duration(720)\r\n .attr(\"x1\", sourceXforSL)\r\n .attr(\"y1\", sourceYforSL)\r\n .attr(\"x2\", targetXforSL)\r\n .attr(\"y2\", targetYforSL)\r\n .attr(\"stroke-width\", 3) // 设置线的宽度\r\n .attr(\"stroke\", color) // 设置线的颜色\r\n .attr(\"stroke-dasharray\", \"5,5\") // 设置线为虚线,\"5,5\"表示线段和间隔的长度\r\n .attr(\"marker-end\", \"url(#arrow)\") // 设置线的终点为箭头\r\n .attr(\"class\", \"arrowLine\");\r\n }\r\n }\r\n \r\n })\r\n}\r\n\r\nexport function drawLinesDashArrow(treeLayout, sourceID, targetID, color, label, direction) {\r\n // d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr(\"data-opened\", \"true\");\r\n const sourceFrame = \"frame\" + sourceID;\r\n const targetFrame = \"frame\" + targetID;\r\n let dx = treeLayout[targetID][0] - treeLayout[sourceID][0] - Number(d3.select(\"#\" + sourceFrame).attr('width'));\r\n let dy = treeLayout[targetID][1] - treeLayout[sourceID][1];\r\n let sourceX = Number(d3.select(\"#\" + sourceFrame).attr('x')) + Number(d3.select(\"#\" + sourceFrame).attr('width'));\r\n let sourceY = Number(d3.select(\"#\" + sourceFrame).attr('y')) + Number(d3.select(\"#\" + sourceFrame).attr('height')) / 2;\r\n let targetX = sourceX + dx;\r\n let targetY = sourceY + dy;\r\n if (direction===\"down\") {\r\n sourceX = Number(d3.select(\"#\" + sourceFrame).attr('x')) + Number(d3.select(\"#\" + sourceFrame).attr('width')) / 2;\r\n sourceY = Number(d3.select(\"#\" + sourceFrame).attr('y')) + Number(d3.select(\"#\" + sourceFrame).attr('height'));\r\n dx = treeLayout[targetID][0] - treeLayout[sourceID][0];\r\n dy = treeLayout[targetID][1] - treeLayout[sourceID][1] - Number(d3.select(\"#\" + sourceFrame).attr('height'));\r\n targetX = sourceX + dx;\r\n targetY = sourceY + dy;\r\n }\r\n const g = d3.select('svg').select('#sumGroup').append(\"g\").attr('id', 'line' + String(sourceID) + '_' + String(targetID)).attr(\"line-type\", \"dashed\").attr('class', 'drawer');\r\n const paddingL = 17;\r\n g.append(\"defs\")\r\n .append(\"marker\")\r\n .attr(\"id\", \"arrow\")\r\n .attr(\"markerWidth\", 5) // 原来的一半\r\n .attr(\"markerHeight\", 3.5) // 原来的一半\r\n .attr(\"refX\", 5) // 调整参考点以适应新的大小\r\n .attr(\"refY\", 1.75) // 调整参考点以适应新的大小\r\n .attr(\"orient\", \"auto\")\r\n .append(\"path\")\r\n .attr(\"d\", \"M0,0 L5,1.75 L0,3.5 Z\") // 缩小箭头的路径\r\n .style(\"fill\", \"gray\");\r\n g.append(\"line\")\r\n .attr(\"x1\", sourceX)\r\n .attr(\"y1\", sourceY)\r\n .attr(\"x2\", targetX)\r\n .attr(\"y2\", targetY)\r\n .attr(\"stroke-width\", 5) // 设置线的宽度\r\n .attr(\"stroke\", color) // 设置线的颜色\r\n .attr(\"stroke-dasharray\", \"5,5\") // 设置线为虚线,\"5,5\"表示线段和间隔的长度\r\n .attr(\"marker-end\", \"url(#arrow)\") // 设置线的终点为箭头\r\n .attr(\"class\", \"arrowLine\");\r\n let midX = (sourceX + targetX) / 2 - 45;\r\n let midY = (sourceY + targetY) / 2 - 5;\r\n g.append(\"text\")\r\n .attr(\"x\", midX)\r\n .attr(\"y\", midY)\r\n .text(label)\r\n .style(\"font-size\", \"30px\") // 设置字体大小\r\n .style(\"fill\", \"black\"); // 设置字体颜色\r\n}\r\n\r\nexport function updateLinesDashArrow(treeLayout, sourceID, targetID, color, label, lineID, direction) {\r\n // d3.select(\"#boxid\" + body_num_source).select(\"#\" + sourceid).attr(\"data-opened\", \"true\");\r\n let sourceFrame = \"frame\" + sourceID;\r\n let targetFrame = \"frame\" + targetID;\r\n let dx = treeLayout[targetID][0] - treeLayout[sourceID][0] - Number(d3.select(\"#\" + sourceFrame).attr('width'));\r\n let dy = treeLayout[targetID][1] - treeLayout[sourceID][1];\r\n let sourceX = Number(d3.select(\"#\" + sourceFrame).attr('x')) + Number(d3.select(\"#\" + sourceFrame).attr('width'));\r\n let sourceY = Number(d3.select(\"#\" + sourceFrame).attr('y')) + Number(d3.select(\"#\" + sourceFrame).attr('height')) / 2;\r\n let targetX = sourceX + dx;\r\n let targetY = sourceY + dy;\r\n if (direction===\"down\") {\r\n sourceX = Number(d3.select(\"#\" + sourceFrame).attr('x')) + Number(d3.select(\"#\" + sourceFrame).attr('width')) / 2;\r\n sourceY = Number(d3.select(\"#\" + sourceFrame).attr('y')) + Number(d3.select(\"#\" + sourceFrame).attr('height'));\r\n dx = treeLayout[targetID][0] - treeLayout[sourceID][0];\r\n dy = treeLayout[targetID][1] - treeLayout[sourceID][1] - Number(d3.select(\"#\" + sourceFrame).attr('height'));\r\n targetX = sourceX + dx;\r\n targetY = sourceY + dy;\r\n }\r\n const g = d3.select('svg').select('#sumGroup').select(\"#\" + lineID);\r\n g.select(\"line\")\r\n .transition('transition14')\r\n .duration(720)\r\n .attr(\"x1\", sourceX)\r\n .attr(\"y1\", sourceY)\r\n .attr(\"x2\", targetX)\r\n .attr(\"y2\", targetY)\r\n .attr(\"stroke-width\", 5) // 设置线的宽度\r\n .attr(\"stroke\", color) // 设置线的颜色\r\n .attr(\"stroke-dasharray\", \"5,5\") // 设置线为虚线,\"5,5\"表示线段和间隔的长度\r\n .attr(\"marker-end\", \"url(#arrow)\") // 设置线的终点为箭头\r\n .attr(\"class\", \"arrowLine\");\r\n let midX = (sourceX + targetX) / 2 - 45;\r\n let midY = (sourceY + targetY) / 2 - 5;\r\n g.select(\"text\")\r\n .transition('transition15')\r\n .duration(720)\r\n .attr(\"x\", midX)\r\n .attr(\"y\", midY)\r\n .text(label)\r\n .style(\"font-size\", \"30px\") // 设置字体大小\r\n .style(\"fill\", \"black\"); // 设置字体颜色\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/utils/drawlines.js","/* eslint-disable */\r\nimport * as d3 from \"d3\";\r\n\r\nexport function arraysAreEqual(array1, array2) {\r\n if (array1.length !== array2.length) {\r\n return false;\r\n }\r\n for (var i = 0; i < array1.length; i++) {\r\n if (array1[i] !== array2[i]) {\r\n return false;\r\n }\r\n }\r\n return true;\r\n}\r\n\r\nexport function relayoutPorts(nodesObject) {\r\n let overlap = false;\r\n let leftLimit = false;\r\n const nodes = Object.values(nodesObject);\r\n console.log(nodes);\r\n nodes.sort(function(a, b){\r\n return a.x - b.x;\r\n });\r\n let previousX = -999999;\r\n nodes.forEach(function(node, index){\r\n // if (node.x-previousX>54){\r\n // previousX = node.x;\r\n // } else {\r\n // overlap = true;\r\n // if (node.x - 55 < 0) {\r\n // leftLimit = true;\r\n // } else {\r\n // nodes[index-1].x = node.x - 55;\r\n // }\r\n // }\r\n if (node.x-previousX<57){\r\n overlap = true;\r\n } else {\r\n previousX = node.x;\r\n }\r\n })\r\n while (overlap==true) {\r\n overlap = false;\r\n if (leftLimit==false){\r\n previousX = -999999;\r\n nodes.forEach(function(node, index){\r\n if (node.x-previousX>57){\r\n previousX = node.x;\r\n } else {\r\n overlap = true;\r\n if (node.x - 60 < 0) {\r\n leftLimit = true;\r\n } else {\r\n nodes[index-1].x = node.x - 60;\r\n }\r\n }\r\n })\r\n } else {\r\n nodes.forEach(function(node, index){\r\n previousX = -999999;\r\n if (node.x-previousX>57){\r\n previousX = node.x;\r\n } else {\r\n overlap = true;\r\n if (node.x - 60 < 0) {\r\n leftLimit = true;\r\n } else {\r\n node.x = previousX + 60;\r\n }\r\n }\r\n })\r\n }\r\n }\r\n console.log(nodes)\r\n return nodes;\r\n}\r\n\r\nexport function loopOverHierarchy(d, callback) {\r\n callback(d);\r\n if (d.children) d.children.forEach(c => loopOverHierarchy(c, callback));\r\n if (d._children) d._children.forEach(c => loopOverHierarchy(c, callback));\r\n }\r\n\r\nfunction getChildren(hierarchies, childrens) {\r\n console.log(childrens);\r\n childrens.forEach(function(element){\r\n var children = hierarchies;\r\n var zoomin = 2;\r\n element.path.forEach(function(node){\r\n if (Number(node) !== 0) {\r\n if (zoomin <= element.path.length - 1) {\r\n // debugger\r\n const filterChild = children.children.filter(function(item){\r\n return Number(item.name) === Number(node);\r\n })[0]\r\n zoomin += 1\r\n children = filterChild;\r\n }\r\n else if (node === element.path[element.path.length - 1]) {\r\n // debugger\r\n if (children.hasOwnProperty(\"children\")) {\r\n children.children.push(element);\r\n sortByOName(children.children);\r\n } else {\r\n children.children = [ element ];\r\n }\r\n }\r\n }\r\n })\r\n})\r\n}\r\n\r\nexport function findChildrenAtSameLevel(arr) {\r\n const paths = {};\r\n\r\n for (let i = 0; i < arr.length; i++) {\r\n const path = arr[i];\r\n const lastIndex = path.lastIndexOf('-');\r\n\r\n if (lastIndex !== -1) {\r\n const parentPath = path.slice(0, lastIndex);\r\n\r\n if (!paths[parentPath]) {\r\n paths[parentPath] = [];\r\n }\r\n\r\n paths[parentPath].push(path);\r\n }\r\n }\r\n\r\n const similarPaths = Object.values(paths).filter(pathGroup => pathGroup.length > 1);\r\n\r\n return similarPaths;\r\n}\r\n\r\nfunction sortByOName(arr) {\r\n return arr.sort((a, b) => {\r\n const aNums = a.oName.split('-').map(Number);\r\n const bNums = b.oName.split('-').map(Number);\r\n\r\n // 根据数字依次进行比较\r\n for(let i = 0; i < aNums.length; i++) {\r\n if (aNums[i] < bNums[i]) {\r\n return -1;\r\n } else if (aNums[i] > bNums[i]) {\r\n return 1;\r\n }\r\n // 如果相等,继续比较下一个数字\r\n }\r\n\r\n // 如果所有数字都相等,返回0表示不需要改变顺序\r\n return 0;\r\n });\r\n}\r\n\r\nexport function autoTranslate() {\r\n let gs = d3.select('svg').selectAll('g');\r\n\r\n let tops = [], lefts = [], rights = [], bottoms = [];\r\n \r\n gs.each(function() {\r\n let rect = this.getBoundingClientRect();\r\n \r\n tops.push(rect.top);\r\n lefts.push(rect.left);\r\n rights.push(rect.right);\r\n bottoms.push(rect.bottom);\r\n });\r\n \r\n // 计算缩放前的矩形大小\r\n let initialWidth = Math.max(...rights) - Math.min(...lefts);\r\n let initialHeight = Math.max(...bottoms) - Math.min(...tops);\r\n \r\n // 设置你想要的矩形大小\r\n let desiredWidth = 2000; // 请替换为你想要的宽度\r\n let desiredHeight = 2000; // 请替换为你想要的高度\r\n \r\n // 计算缩放因子,这里使用相同的缩放因子以保持长宽比不变\r\n let scale = Math.min(desiredWidth / initialWidth, desiredHeight / initialHeight);\r\n \r\n // 应用缩放\r\n gs.attr('transform', (d, i, nodes) => {\r\n // 获取原有的 transform 值\r\n let originalTransform = d3.select(nodes[i]).attr('transform');\r\n let translateValues = originalTransform.match(/translate\\(([^)]+)\\)/);\r\n \r\n let originalX = 0, originalY = 0;\r\n \r\n if (translateValues) {\r\n [originalX, originalY] = translateValues[1].split(',').map(Number);\r\n }\r\n \r\n // 保持平移不变,应用缩放\r\n return `translate(${originalX}, ${originalY})`;\r\n });\r\n}\r\n\r\nexport function computeBoundingRectangle(shapes) {\r\n let minX = Infinity;\r\n let minY = Infinity;\r\n let maxX = -Infinity;\r\n let maxY = -Infinity;\r\n const ranksep = 37;\r\n \r\n for (const key in shapes) {\r\n const node = shapes[key];\r\n const [type, index] = key.split(\"-\");\r\n const isBfNode = (type === \"bf\");\r\n const isPofNode = (type === \"pof\");\r\n const isPifNode = (type === \"pif\");\r\n const isAuxNode = (type === \"aux\");\r\n const isOpoNode = (type === 'opo');\r\n const isOpiNode = (type === 'opi');\r\n const isBcNode = (type === \"bc\");\r\n const isPocNode = (type === \"poc\");\r\n const isPicNode = (type === \"pic\");\r\n const isBlNode = (type === \"bl\");\r\n const isPolNode = (type === \"pol\");\r\n const isPilNode = (type === \"pil\");\r\n if (isBfNode||isBcNode||isBlNode) {\r\n if(node.width===undefined || node.height===undefined){\r\n continue;\r\n }\r\n if (node.type == \"LITERAL\") {\r\n if (node.fullBox) {\r\n minX = Math.min(minX, node.x - node.width / 2);\r\n minY = Math.min(minY, node.y - node.height / 2 + ranksep);\r\n maxX = Math.max(maxX, node.x + node.width / 2);\r\n maxY = Math.max(maxY, node.y + node.height / 2 - ranksep);\r\n } else {\r\n minX = Math.min(minX, node.x - node.width / 2 + ranksep / 2);\r\n minY = Math.min(minY, node.y - node.height / 2 - ranksep);\r\n maxX = Math.max(maxX, node.x + node.width / 2 - ranksep / 2);\r\n maxY = Math.max(maxY, node.y + node.height / 2 - ranksep);\r\n }\r\n } else {\r\n if (node.fullBox) {\r\n minX = Math.min(minX, node.x - node.width / 2);\r\n minY = Math.min(minY, node.y - node.height / 2 + ranksep);\r\n maxX = Math.max(maxX, node.x + node.width / 2);\r\n maxY = Math.max(maxY, node.y + node.height / 2 - ranksep);\r\n } else {\r\n minX = Math.min(minX, node.x - node.width / 2);\r\n minY = Math.min(minY, node.y - node.height / 2 - ranksep);\r\n maxX = Math.max(maxX, node.x + node.width / 2);\r\n maxY = Math.max(maxY, node.y + node.height / 2 - ranksep);\r\n }\r\n }\r\n } else if (isPofNode || isPifNode || isOpiNode || isOpoNode || isPicNode || isPocNode || isPilNode || isPolNode) {\r\n minX = Math.min(minX, node.x - node.width / 2);\r\n minY = Math.min(minY, node.y - node.height / 2);\r\n maxX = Math.max(maxX, node.x + node.width / 2);\r\n maxY = Math.max(maxY, node.y + node.height / 2);\r\n }\r\n }\r\n return {\r\n x: minX,\r\n y: minY,\r\n width: maxX - minX,\r\n height: maxY - minY\r\n };\r\n}\r\n\r\nexport function getOuterBox(bbox, padding, ranksep, nodes) {\r\n let x;\r\n let y;\r\n let width;\r\n let height;\r\n if ('opo-0' in nodes && 'opi-0' in nodes){\r\n // full\r\n x = bbox.x - padding;\r\n y = bbox.y - padding + ranksep;\r\n width = bbox.width + 2 * padding;\r\n height = bbox.height + 2 * padding - 2* ranksep;\r\n } else if ('opo-0' in nodes && !('opi-0' in nodes)) {\r\n // bottom\r\n x = bbox.x - padding;\r\n y = bbox.y - padding - ranksep / 10;\r\n width = bbox.width + 2 * padding;\r\n height = bbox.height + 2 * padding - ranksep;\r\n } else if (!('opo-0' in nodes) && 'opi-0' in nodes) {\r\n // top\r\n x = bbox.x - padding;\r\n y = bbox.y - padding + ranksep * 2;\r\n width = bbox.width + 2 * padding;\r\n height = bbox.height + 2 * padding - ranksep;\r\n } else {\r\n // empty\r\n x = bbox.x - padding;\r\n y = bbox.y - padding;\r\n width = bbox.width + 2 * padding;\r\n height = bbox.height + 2 * padding;\r\n }\r\n return {\r\n x,\r\n y,\r\n width,\r\n height\r\n };\r\n}\r\n\r\nexport function getHierarchy(spaceY) {\r\n var hierarchies = {};\r\n const childrens = [];\r\n const gs = d3.selectAll('.drawer').each(function(d, i){\r\n const nodeID = d3.select(this).attr('id').replace(\"boxid\", \"\");\r\n const direction = d3.select(this).attr('direction');\r\n if (nodeID.split('_').length !== 2) {\r\n const routes = nodeID.split(\"-\");\r\n const currentID = routes[routes.length - 1];\r\n if (currentID==='0') {\r\n hierarchies.name = Number(currentID);\r\n hierarchies.oName = nodeID;\r\n hierarchies.path = routes;\r\n hierarchies.size = [Number(d3.select(this).attr('width')) + spaceY, Number(d3.select(this).attr('height'))];\r\n hierarchies.direction = direction;\r\n } else {\r\n const temp = {}\r\n temp.name = Number(currentID);\r\n temp.size = [Number(d3.select(this).attr('width')) + spaceY, Number(d3.select(this).attr('height'))];\r\n temp.path = routes;\r\n temp.oName = nodeID;\r\n temp.direction = direction;\r\n childrens.push(temp);\r\n }\r\n }\r\n })\r\n childrens.sort(function(a,b){\r\n return a.path.length - b.path.length;\r\n })\r\n getChildren(hierarchies, childrens);\r\n loopOverHierarchy(hierarchies, d => {\r\n if (Array.isArray(d.size)) {\r\n if (!d._size) d._size = d.size.slice();\r\n d.size = d._size.slice().reverse();\r\n }\r\n });\r\n return hierarchies;\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/utils/utilities.js","/* eslint-disable */\r\nimport {hierarchy} from 'd3-hierarchy';\r\n\r\nconst defaults = Object.freeze({\r\n children: data => data.children,\r\n nodeSize: node => node.data.size,\r\n spacing: 0,\r\n});\r\n\r\n// Create a layout function with customizable options. Per D3-style, the\r\n// options can be set at any time using setter methods. The layout function\r\n// will compute the tree node positions based on the options in effect at the\r\n// time it is called.\r\nexport default function flextree(options) {\r\n const opts = Object.assign({}, defaults, options);\r\n function accessor(name) {\r\n const opt = opts[name];\r\n return typeof opt === 'function' ? opt : () => opt;\r\n }\r\n\r\n function layout(tree) {\r\n const wtree = wrap(getWrapper(), tree, node=>node.children);\r\n wtree.update();\r\n return wtree.data;\r\n }\r\n\r\n function getFlexNode() {\r\n const nodeSize = accessor('nodeSize');\r\n const spacing = accessor('spacing');\r\n return class FlexNode extends hierarchy.prototype.constructor {\r\n constructor(data) {\r\n super(data);\r\n }\r\n copy() {\r\n const c = wrap(this.constructor, this, node=>node.children);\r\n c.each(node => node.data = node.data.data);\r\n return c;\r\n }\r\n get size() { return nodeSize(this); }\r\n spacing(oNode) { return spacing(this, oNode); }\r\n get nodes() { return this.descendants(); }\r\n get xSize() { return this.size[0]; }\r\n get ySize() { return this.size[1]; }\r\n get top() { return this.y; }\r\n get bottom() { return this.y + this.ySize; }\r\n get left() { return this.x - this.xSize / 2; }\r\n get right() { return this.x + this.xSize / 2; }\r\n get root() {\r\n const ancs = this.ancestors();\r\n return ancs[ancs.length - 1];\r\n }\r\n get numChildren() {\r\n return this.hasChildren ? this.children.length : 0;\r\n }\r\n get hasChildren() { return !this.noChildren; }\r\n get noChildren() { return this.children === null; }\r\n get firstChild() {\r\n return this.hasChildren ? this.children[0] : null;\r\n }\r\n get lastChild() {\r\n return this.hasChildren ? this.children[this.numChildren - 1] : null;\r\n }\r\n get extents() {\r\n return (this.children || []).reduce(\r\n (acc, kid) => FlexNode.maxExtents(acc, kid.extents),\r\n this.nodeExtents);\r\n }\r\n get nodeExtents() {\r\n return {\r\n top: this.top,\r\n bottom: this.bottom,\r\n left: this.left,\r\n right: this.right,\r\n };\r\n }\r\n static maxExtents(e0, e1) {\r\n return {\r\n top: Math.min(e0.top, e1.top),\r\n bottom: Math.max(e0.bottom, e1.bottom),\r\n left: Math.min(e0.left, e1.left),\r\n right: Math.max(e0.right, e1.right),\r\n };\r\n }\r\n };\r\n }\r\n\r\n function getWrapper() {\r\n const FlexNode = getFlexNode();\r\n const nodeSize = accessor('nodeSize');\r\n const spacing = accessor('spacing');\r\n return class extends FlexNode {\r\n constructor(data) {\r\n super(data);\r\n Object.assign(this, {\r\n x: 0, y: 0,\r\n relX: 0, prelim: 0, shift: 0, change: 0,\r\n lExt: this, lExtRelX: 0, lThr: null,\r\n rExt: this, rExtRelX: 0, rThr: null,\r\n });\r\n }\r\n get size() { return nodeSize(this.data); }\r\n spacing(oNode) { return spacing(this.data, oNode.data); }\r\n get x() { return this.data.x; }\r\n set x(v) { this.data.x = v; }\r\n get y() { return this.data.y; }\r\n set y(v) { this.data.y = v; }\r\n update() {\r\n layoutChildren(this);\r\n resolveX(this);\r\n return this;\r\n }\r\n };\r\n }\r\n\r\n function wrap(FlexClass, treeData, children) {\r\n const _wrap = (data, parent) => {\r\n const node = new FlexClass(data);\r\n Object.assign(node, {\r\n parent,\r\n depth: parent === null ? 0 : parent.depth + 1,\r\n height: 0,\r\n length: 1,\r\n });\r\n const kidsData = children(data) || [];\r\n node.children = kidsData.length === 0 ? null\r\n : kidsData.map(kd => _wrap(kd, node));\r\n if (node.children) {\r\n Object.assign(node, node.children.reduce(\r\n (hl, kid) => ({\r\n height: Math.max(hl.height, kid.height + 1),\r\n length: hl.length + kid.length,\r\n }), node\r\n ));\r\n }\r\n return node;\r\n };\r\n return _wrap(treeData, null);\r\n }\r\n\r\n\r\n Object.assign(layout, {\r\n nodeSize(arg) {\r\n return arguments.length ? (opts.nodeSize = arg, layout) : opts.nodeSize;\r\n },\r\n spacing(arg) {\r\n return arguments.length ? (opts.spacing = arg, layout) : opts.spacing;\r\n },\r\n children(arg) {\r\n return arguments.length ? (opts.children = arg, layout) : opts.children;\r\n },\r\n hierarchy(treeData, children) {\r\n const kids = typeof children === 'undefined' ? opts.children : children;\r\n return wrap(getFlexNode(), treeData, kids);\r\n },\r\n dump(tree) {\r\n const nodeSize = accessor('nodeSize');\r\n const _dump = i0 => node => {\r\n const i1 = i0 + ' ';\r\n const i2 = i0 + ' ';\r\n const {x, y} = node;\r\n const size = nodeSize(node);\r\n const kids = (node.children || []);\r\n const kdumps = (kids.length === 0) ? ' ' :\r\n `,${i1}children: [${i2}${kids.map(_dump(i2)).join(i2)}${i1}],${i0}`;\r\n return `{ size: [${size.join(', ')}],${i1}x: ${x}, y: ${y}${kdumps}},`;\r\n };\r\n return _dump('\\n')(tree);\r\n },\r\n });\r\n return layout;\r\n}\r\n\r\nconst layoutChildren = (w, y = 0) => {\r\n w.y = y;\r\n (w.children || []).reduce((acc, kid) => {\r\n const [i, lastLows] = acc;\r\n layoutChildren(kid, w.y + w.ySize);\r\n // The lowest vertical coordinate while extreme nodes still point\r\n // in current subtree.\r\n const lowY = (i === 0 ? kid.lExt : kid.rExt).bottom;\r\n if (i !== 0) separate(w, i, lastLows);\r\n const lows = updateLows(lowY, i, lastLows);\r\n return [i + 1, lows];\r\n }, [0, null]);\r\n shiftChange(w);\r\n positionRoot(w);\r\n return w;\r\n};\r\n\r\n// Resolves the relative coordinate properties - relX and prelim --\r\n// to set the final, absolute x coordinate for each node. This also sets\r\n// `prelim` to 0, so that `relX` for each node is its x-coordinate relative\r\n// to its parent.\r\nconst resolveX = (w, prevSum, parentX) => {\r\n // A call to resolveX without arguments is assumed to be for the root of\r\n // the tree. This will set the root's x-coord to zero.\r\n if (typeof prevSum === 'undefined') {\r\n prevSum = -w.relX - w.prelim;\r\n parentX = 0;\r\n }\r\n const sum = prevSum + w.relX;\r\n w.relX = sum + w.prelim - parentX;\r\n w.prelim = 0;\r\n w.x = parentX + w.relX;\r\n (w.children || []).forEach(k => resolveX(k, sum, w.x));\r\n return w;\r\n};\r\n\r\n// Process shift and change for all children, to add intermediate spacing to\r\n// each child's modifier.\r\nconst shiftChange = w => {\r\n (w.children || []).reduce((acc, child) => {\r\n const [lastShiftSum, lastChangeSum] = acc;\r\n const shiftSum = lastShiftSum + child.shift;\r\n const changeSum = lastChangeSum + shiftSum + child.change;\r\n child.relX += changeSum;\r\n return [shiftSum, changeSum];\r\n }, [0, 0]);\r\n};\r\n\r\n// Separates the latest child from its previous sibling\r\n/* eslint-disable complexity */\r\nconst separate = (w, i, lows) => {\r\n const lSib = w.children[i - 1];\r\n const curSubtree = w.children[i];\r\n let rContour = lSib;\r\n let rSumMods = lSib.relX;\r\n let lContour = curSubtree;\r\n let lSumMods = curSubtree.relX;\r\n let isFirst = true;\r\n while (rContour && lContour) {\r\n if (rContour.bottom > lows.lowY) lows = lows.next;\r\n // How far to the left of the right side of rContour is the left side\r\n // of lContour? First compute the center-to-center distance, then add\r\n // the \"spacing\"\r\n const dist =\r\n (rSumMods + rContour.prelim) - (lSumMods + lContour.prelim) +\r\n rContour.xSize / 2 + lContour.xSize / 2 +\r\n rContour.spacing(lContour);\r\n if (dist > 0 || (dist < 0 && isFirst)) {\r\n lSumMods += dist;\r\n // Move subtree by changing relX.\r\n moveSubtree(curSubtree, dist);\r\n distributeExtra(w, i, lows.index, dist);\r\n }\r\n isFirst = false;\r\n // Advance highest node(s) and sum(s) of modifiers\r\n const rightBottom = rContour.bottom;\r\n const leftBottom = lContour.bottom;\r\n if (rightBottom <= leftBottom) {\r\n rContour = nextRContour(rContour);\r\n if (rContour) rSumMods += rContour.relX;\r\n }\r\n if (rightBottom >= leftBottom) {\r\n lContour = nextLContour(lContour);\r\n if (lContour) lSumMods += lContour.relX;\r\n }\r\n }\r\n // Set threads and update extreme nodes. In the first case, the\r\n // current subtree is taller than the left siblings.\r\n if (!rContour && lContour) setLThr(w, i, lContour, lSumMods);\r\n // In the next case, the left siblings are taller than the current subtree\r\n else if (rContour && !lContour) setRThr(w, i, rContour, rSumMods);\r\n};\r\n/* eslint-enable complexity */\r\n\r\n// Move subtree by changing relX.\r\nconst moveSubtree = (subtree, distance) => {\r\n subtree.relX += distance;\r\n subtree.lExtRelX += distance;\r\n subtree.rExtRelX += distance;\r\n};\r\n\r\nconst distributeExtra = (w, curSubtreeI, leftSibI, dist) => {\r\n const curSubtree = w.children[curSubtreeI];\r\n const n = curSubtreeI - leftSibI;\r\n // Are there intermediate children?\r\n if (n > 1) {\r\n const delta = dist / n;\r\n w.children[leftSibI + 1].shift += delta;\r\n curSubtree.shift -= delta;\r\n curSubtree.change -= dist - delta;\r\n }\r\n};\r\n\r\nconst nextLContour = w => {\r\n return w.hasChildren ? w.firstChild : w.lThr;\r\n};\r\n\r\nconst nextRContour = w => {\r\n return w.hasChildren ? w.lastChild : w.rThr;\r\n};\r\n\r\nconst setLThr = (w, i, lContour, lSumMods) => {\r\n const firstChild = w.firstChild;\r\n const lExt = firstChild.lExt;\r\n const curSubtree = w.children[i];\r\n lExt.lThr = lContour;\r\n // Change relX so that the sum of modifier after following thread is correct.\r\n const diff = lSumMods - lContour.relX - firstChild.lExtRelX;\r\n lExt.relX += diff;\r\n // Change preliminary x coordinate so that the node does not move.\r\n lExt.prelim -= diff;\r\n // Update extreme node and its sum of modifiers.\r\n firstChild.lExt = curSubtree.lExt;\r\n firstChild.lExtRelX = curSubtree.lExtRelX;\r\n};\r\n\r\n// Mirror image of setLThr.\r\nconst setRThr = (w, i, rContour, rSumMods) => {\r\n const curSubtree = w.children[i];\r\n const rExt = curSubtree.rExt;\r\n const lSib = w.children[i - 1];\r\n rExt.rThr = rContour;\r\n const diff = rSumMods - rContour.relX - curSubtree.rExtRelX;\r\n rExt.relX += diff;\r\n rExt.prelim -= diff;\r\n curSubtree.rExt = lSib.rExt;\r\n curSubtree.rExtRelX = lSib.rExtRelX;\r\n};\r\n\r\n// Position root between children, taking into account their modifiers\r\nconst positionRoot = w => {\r\n if (w.hasChildren) {\r\n const k0 = w.firstChild;\r\n const kf = w.lastChild;\r\n const prelim = (k0.prelim + k0.relX - k0.xSize / 2 +\r\n kf.relX + kf.prelim + kf.xSize / 2 ) / 2;\r\n Object.assign(w, {\r\n prelim,\r\n lExt: k0.lExt, lExtRelX: k0.lExtRelX,\r\n rExt: kf.rExt, rExtRelX: kf.rExtRelX,\r\n });\r\n }\r\n};\r\n\r\n// Make/maintain a linked list of the indexes of left siblings and their\r\n// lowest vertical coordinate.\r\nconst updateLows = (lowY, index, lastLows) => {\r\n // Remove siblings that are hidden by the new subtree.\r\n while (lastLows !== null && lowY >= lastLows.lowY)\r\n lastLows = lastLows.next;\r\n // Prepend the new subtree.\r\n return {\r\n lowY,\r\n index,\r\n next: lastLows,\r\n };\r\n};\n\n\n// WEBPACK FOOTER //\n// ./src/utils/flextree.js","/* eslint-disable */\r\nimport { tree } from \"d3\";\r\nimport flextree from \"./flextree\";\r\nimport cloneDeep from 'lodash/cloneDeep';\r\nimport { layout } from \"dagre\";\r\nimport { loopOverHierarchy } from \"./utilities\";\r\n\r\nexport default function getMultiTree(hierarchies) {\r\n let hierarchies_copy = cloneDeep(hierarchies);\r\n const Layout = processTree(hierarchies_copy);\r\n return Layout;\r\n}\r\n\r\nfunction processTree(hierarchies) {\r\n let treeLayout = {};\r\n do {\r\n let subtrees = findAllSubtrees(hierarchies);\r\n let currentLayout = [...subtrees.right, ...subtrees.down, ...subtrees.mix];\r\n // console.log(currentLayout, \"current\");\r\n // console.log(treeLayout, \"currentT\");\r\n let mergedCL = currentLayout.reduce((acc, obj) => ({...acc, ...obj}), {});\r\n if (hasProperties(treeLayout)) {\r\n const sharedNodes = getSharedKeys(treeLayout, mergedCL);\r\n // console.log(sharedNodes)\r\n for (let key of sharedNodes) {\r\n const nodeL = mergedCL[key];\r\n const childrenRect = {};\r\n for (let keyPre in treeLayout) {\r\n const nodeLPre = treeLayout[keyPre];\r\n if (keyPre.startsWith(key)) {\r\n childrenRect[keyPre] = nodeLPre; \r\n }\r\n }\r\n const oldBoundingBox = findBoundingBox(childrenRect);\r\n // debugger\r\n // console.log(oldBoundingBox)\r\n // console.log(nodeL)\r\n const differenceX1 = nodeL[0] - oldBoundingBox.x;\r\n const differenceY1 = nodeL[1] - oldBoundingBox.y;\r\n for (let keyPre in treeLayout) {\r\n const nodeLPre = treeLayout[keyPre];\r\n if (keyPre.startsWith(key)) {\r\n nodeLPre[0] += differenceX1;\r\n nodeLPre[1] += differenceY1;\r\n }\r\n }\r\n }\r\n copyNonDuplicateProperties(treeLayout, mergedCL);\r\n } else {\r\n treeLayout = cloneDeep(mergedCL);\r\n }\r\n } while ('children' in hierarchies);\r\n // console.log(treeLayout, \"layout\")\r\n return treeLayout;\r\n function hasProperties(obj) {\r\n for (let key in obj) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n function getSharedKeys(obj1, obj2) {\r\n let sharedKeys = [];\r\n \r\n for (let key in obj1) {\r\n if (obj1.hasOwnProperty(key) && obj2.hasOwnProperty(key)) {\r\n sharedKeys.push(key);\r\n }\r\n }\r\n \r\n return sharedKeys;\r\n }\r\n function copyNonDuplicateProperties(obj1, obj2) {\r\n for (let key in obj2) {\r\n if (obj2.hasOwnProperty(key) && !obj1.hasOwnProperty(key)) {\r\n obj1[key] = obj2[key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n function findAllSubtrees(root) {\r\n let parentNodesRight = new Set();\r\n let parentNodesDown = new Set();\r\n const spacing = 100;\r\n setParents(root, null);\r\n dfs(root, parentNodesRight, parentNodesDown);\r\n const parentNodesMix = new Set();\r\n for (const item of parentNodesRight) {\r\n if (parentNodesDown.has(item)) {\r\n parentNodesMix.add(item);\r\n parentNodesRight.delete(item);\r\n parentNodesDown.delete(item);\r\n }\r\n }\r\n const result = {\r\n right: Array.from(parentNodesRight).map(node => {\r\n let clone = cloneDeep(node);\r\n delete node.children;\r\n removeDownChildren(clone);\r\n if (node.direction===\"down\") {\r\n const clonex = clone.size[0];\r\n clone.size[0] = clone.size[1];\r\n clone.size[1] = clonex;\r\n }\r\n loopOverHierarchy(clone, d => {\r\n if (Array.isArray(d.size)) {\r\n d.size[1] += spacing;\r\n }\r\n });\r\n const flexLayout = flextree({ spacing: 80 });\r\n const tree = flexLayout.hierarchy(clone);\r\n var treeData = flexLayout(tree);\r\n treeData.each(d => {\r\n const x = d.x;\r\n d.x = d.y;\r\n d.y = x;\r\n });\r\n var treeLayout = {};\r\n treeData.each(d => {\r\n treeLayout[d.data.oName] = [d.x, d.y - d.data.size[0] / 2, d.data.size[1], d.data.size[0] * 1];\r\n });\r\n const newBoundingbox = findBoundingBox(treeLayout);\r\n node._size = [newBoundingbox.width, newBoundingbox.height];\r\n node.size = [newBoundingbox.height, newBoundingbox.width];\r\n // console.log(treeLayout, \"test\");\r\n return treeLayout;\r\n }),\r\n down: Array.from(parentNodesDown).map(node => {\r\n let clone = cloneDeep(node);\r\n delete node.children;\r\n removeRightChildren(clone);\r\n loopOverHierarchy(clone, d => {\r\n if (Array.isArray(d.size)) {\r\n if (!d._size) d._size = d.size.slice();\r\n d.size = [d.size[1], d.size[0]];\r\n }\r\n });\r\n loopOverHierarchy(clone, d => {\r\n if (Array.isArray(d.size)) {\r\n d.size[1] += spacing;\r\n }\r\n });\r\n if (node.direction===\"down\") {\r\n const clonex = clone.size[0];\r\n clone.size[0] = clone.size[1];\r\n clone.size[1] = clonex;\r\n }\r\n const flexLayout = flextree({ spacing: 120 });\r\n const tree = flexLayout.hierarchy(clone);\r\n var treeData = flexLayout(tree);\r\n var treeLayout = {};\r\n treeData.each(d => {\r\n treeLayout[d.data.oName] = [d.x - d.data.size[0] / 2, d.y, d.data.size[0] * 1, d.data.size[1]];\r\n });\r\n const newBoundingbox = findBoundingBox(treeLayout);\r\n node._size = [newBoundingbox.width, newBoundingbox.height];\r\n node.size = [newBoundingbox.height, newBoundingbox.width];\r\n \r\n return treeLayout;\r\n }),\r\n mix: Array.from(parentNodesMix).map(node => {\r\n let cloneRight = cloneDeep(node);\r\n delete node.children;\r\n let cloneDown = cloneDeep(cloneRight);\r\n loopOverHierarchy(cloneDown, d => {\r\n if (Array.isArray(d.size)) {\r\n if (!d._size) d._size = d.size.slice();\r\n d.size = [d.size[1], d.size[0]];\r\n }\r\n });\r\n loopOverHierarchy(cloneDown, d => {\r\n if (Array.isArray(d.size)) {\r\n d.size[1] += spacing;\r\n }\r\n });\r\n loopOverHierarchy(cloneRight, d => {\r\n if (Array.isArray(d.size)) {\r\n d.size[1] += spacing;\r\n }\r\n });\r\n removeRightChildren(cloneDown);\r\n removeDownChildren(cloneRight);\r\n const flexLayoutDown = flextree({ spacing: 120 });\r\n const flexLayoutRight = flextree({ spacing: 80 });\r\n const treeDown = flexLayoutDown.hierarchy(cloneDown);\r\n const treeRight = flexLayoutRight.hierarchy(cloneRight);\r\n // if (node.direction===\"right\") {\r\n // const cloneDownx = cloneDown.size[0];\r\n // cloneDown.size[0] = cloneDown.size[1];\r\n // cloneDown.size[1] = cloneDownx;\r\n // }\r\n if (node.direction===\"down\") {\r\n const cloneRightx = cloneRight.size[0];\r\n cloneRight.size[0] = cloneRight.size[1];\r\n cloneRight.size[1] = cloneRightx;\r\n const cloneDownx = cloneDown.size[0];\r\n cloneDown.size[0] = cloneDown.size[1];\r\n cloneDown.size[1] = cloneDownx;\r\n }\r\n var treeDataDown = flexLayoutDown(treeDown);\r\n var treeDataRight = flexLayoutDown(treeRight);\r\n treeDataRight.each(d => {\r\n const x = d.x;\r\n d.x = d.y;\r\n d.y = x;\r\n });\r\n var treeLayoutDown = {};\r\n treeDataDown.each(d => {\r\n treeLayoutDown[d.data.oName] = [d.x - d.data.size[0] / 2, d.y, d.data.size[0], d.data.size[1] * 1];\r\n });\r\n var treeLayoutRight = {};\r\n treeDataRight.each(d => {\r\n treeLayoutRight[d.data.oName] = [d.x, d.y - d.data.size[0] / 2, d.data.size[1], d.data.size[0] * 1];\r\n });\r\n const differenceX = treeLayoutRight[node.oName][0] - treeLayoutDown[node.oName][0];\r\n const differenceY = treeLayoutRight[node.oName][1] - treeLayoutDown[node.oName][1];\r\n for (const key in treeLayoutDown) {\r\n treeLayoutDown[key][0] += differenceX;\r\n treeLayoutDown[key][1] += differenceY;\r\n }\r\n const mergedLayout = { ...treeLayoutRight, ...treeLayoutDown };\r\n const newBoundingbox = findBoundingBox(mergedLayout);\r\n node._size = [newBoundingbox.width, newBoundingbox.height];\r\n node.size = [newBoundingbox.height, newBoundingbox.width];\r\n // console.log(newBoundingbox, \"test\");\r\n return mergedLayout;\r\n }),\r\n };\r\n return result;\r\n\r\n function setParents(node, parent) {\r\n node.parent = parent;\r\n if (node.children) {\r\n node.children.forEach(child => setParents(child, node));\r\n }\r\n }\r\n\r\n function dfs(node, parentNodesRight, parentNodesDown) {\r\n let isSameDirection = true;\r\n \r\n checkProperties(node);\r\n \r\n if (isSameDirection) {\r\n if (node.direction === 'right') {\r\n if (node.parent!==null) {\r\n parentNodesRight.add(node.parent);\r\n } else {\r\n parentNodesRight.add(node);\r\n }\r\n } else if (node.direction === 'down') {\r\n if (node.parent!==null) {\r\n parentNodesDown.add(node.parent);\r\n } else {\r\n parentNodesDown.add(node.parent);\r\n }\r\n }\r\n return true;\r\n }\r\n \r\n if (node.children) {\r\n node.children.forEach(child => dfs(child, parentNodesRight, parentNodesDown));\r\n }\r\n \r\n return false;\r\n \r\n function checkProperties(currentNode) {\r\n if (currentNode.direction !== node.direction) {\r\n isSameDirection = false;\r\n }\r\n \r\n if (currentNode.children) {\r\n currentNode.children.forEach(checkProperties);\r\n }\r\n }\r\n }\r\n function removeRightChildren(node) {\r\n if (node.children) {\r\n node.children = node.children.filter(child => child.direction !== 'right');\r\n node.children.forEach(removeRightChildren);\r\n }\r\n }\r\n \r\n function removeDownChildren(node) {\r\n if (node.children) {\r\n node.children = node.children.filter(child => child.direction !== 'down');\r\n node.children.forEach(removeDownChildren);\r\n }\r\n }\r\n}\r\n\r\nfunction findBoundingBoxCentral(rectanglesObj) {\r\n let minX = Infinity;\r\n let minY = Infinity;\r\n let maxX = -Infinity;\r\n let maxY = -Infinity;\r\n\r\n for (let key in rectanglesObj) {\r\n let rectangle = rectanglesObj[key];\r\n let centerX = rectangle[0];\r\n let centerY = rectangle[1];\r\n let width = rectangle[2];\r\n let height = rectangle[3];\r\n\r\n let x1 = centerX - width / 2;\r\n let y1 = centerY - height / 2;\r\n let x2 = centerX + width / 2;\r\n let y2 = centerY + height / 2;\r\n\r\n minX = Math.min(minX, x1);\r\n minY = Math.min(minY, y1);\r\n maxX = Math.max(maxX, x2);\r\n maxY = Math.max(maxY, y2);\r\n }\r\n\r\n return {\r\n x: (minX + maxX) / 2,\r\n y: (minY + maxY) / 2,\r\n width: maxX - minX,\r\n height: maxY - minY\r\n };\r\n}\r\n\r\nfunction findBoundingBox(rectanglesObj) {\r\n let minX = Infinity;\r\n let minY = Infinity;\r\n let maxX = -Infinity;\r\n let maxY = -Infinity;\r\n\r\n for (let key in rectanglesObj) {\r\n let rectangle = rectanglesObj[key];\r\n let rectX = rectangle[0];\r\n let rectY = rectangle[1];\r\n let width = rectangle[2];\r\n let height = rectangle[3];\r\n\r\n let x1 = rectX;\r\n let y1 = rectY;\r\n let x2 = rectX + width;\r\n let y2 = rectY + height;\r\n\r\n minX = Math.min(minX, x1);\r\n minY = Math.min(minY, y1);\r\n maxX = Math.max(maxX, x2);\r\n maxY = Math.max(maxY, y2);\r\n }\r\n\r\n return {\r\n x: minX,\r\n y: minY,\r\n width: maxX - minX,\r\n height: maxY - minY\r\n };\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/utils/multitree.js","/* eslint-disable */\r\nimport { drawBox } from \"./drawBox\";\r\nimport { drawLines, updateLines, updateLinesDashArrow } from \"./drawlines\";\r\nimport { getBoxLayout, getTreeLayout } from \"./layout\";\r\nimport { arraysAreEqual, getHierarchy, findChildrenAtSameLevel, autoTranslate } from \"./utilities\";\r\nimport flextree from \"./flextree\";\r\nimport getMultiTree from \"./multitree\";\r\nimport * as d3 from \"d3\";\r\n\r\nexport function handleClick(fnS, body, body_num, sourceid, color, clicked, direction) {\r\n console.log(direction, \"direction\");\r\n const transitionTime1 = 920;\r\n const transitionTime2 = 720;\r\n const transitionTime3 = 200;\r\n const openFlag = d3.select(\"#boxid\" + String(body_num)).select(\"#\" + String(sourceid));\r\n // console.log(openFlag.attr(\"data-opened\"));\r\n if (clicked || openFlag.attr(\"data-opened\") === \"true\") {\r\n // openFlag.attr(\"data-opened\", \"false\");\r\n d3.select(\"#boxid\" + String(body_num)).selectAll(\"[data-opened='true']\").attr(\"data-opened\", \"false\");\r\n d3.selectAll('.drawer').each(function(d,i){\r\n let GID = d3.select(this).attr('id').replace('line', '').replace('boxid', '');\r\n const deleteLabel = String(body_num) + '-' + String(body);\r\n const deleteParts = deleteLabel.split('-');\r\n // delete edges\r\n if (GID.split('_').length === 2){\r\n let deleteFlag = false;\r\n const node1 = GID.split('_')[0];\r\n const node2 = GID.split('_')[1];\r\n const node1Parts = node1.split('-');\r\n const node2Parts = node2.split('-');\r\n if (arraysAreEqual(node1Parts, deleteParts)) {\r\n d3.select(this)\r\n .transition('transition1') // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n deleteFlag = true;\r\n } else if (node1Parts.length > deleteParts.length) {\r\n const firstNParts = node1Parts.slice(0, deleteParts.length);\r\n if (JSON.stringify(firstNParts) === JSON.stringify(deleteParts)) {\r\n d3.select(this)\r\n .transition('transition2') // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n deleteFlag = true;\r\n }\r\n }\r\n if (!deleteFlag) {\r\n if (arraysAreEqual(node2Parts, deleteParts)) {\r\n d3.select(this)\r\n .transition('transition3') // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n } else if (node2Parts.length > deleteParts.length) {\r\n const firstNParts = node2Parts.slice(0, deleteParts.length);\r\n if (JSON.stringify(firstNParts) === JSON.stringify(deleteParts)) {\r\n d3.select(this)\r\n .transition('transition4') // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n }\r\n }\r\n }\r\n } else { // delete nodes\r\n const GIDParts = GID.split('-');\r\n if (arraysAreEqual(GIDParts, deleteParts)) {\r\n d3.select(this)\r\n .transition('transition5') // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n } else if (GIDParts.length > deleteParts.length) {\r\n const firstNParts = GIDParts.slice(0, deleteParts.length);\r\n if (JSON.stringify(firstNParts) === JSON.stringify(deleteParts)) {\r\n d3.select(this)\r\n .transition('transition6') // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n }\r\n }\r\n }\r\n // console.log(GID);\r\n })\r\n return;\r\n }\r\n body_num = String(body_num);\r\n const layout = getBoxLayout(fnS[body-1]);\r\n const spaceX = 80;\r\n const spaceY = 0;\r\n const padding = 90;\r\n const newLabel = String(body_num) + '-' + String(body); // new body_num\r\n drawBox(layout, fnS, newLabel, direction);\r\n var hierarchies = getHierarchy(spaceY);\r\n var treeLayout = {};\r\n treeLayout = getMultiTree(hierarchies);\r\n // console.log(hierarchies, \"hierarchies\");\r\n // const flexLayout = flextree({ spacing: spaceX });\r\n // const tree = flexLayout.hierarchy(hierarchies);\r\n // var treeData = flexLayout(tree);\r\n // treeData.each(d => {\r\n // const x = d.x;\r\n // d.x = d.y;\r\n // d.y = x;\r\n // });\r\n // var treeLayout = {};\r\n // treeData.each(d => {\r\n // treeLayout[d.data.oName] = [d.x, d.y, d.data.size[1], d.data.size[0] * 1];\r\n // });\r\n const nodeNames = Object.keys(treeLayout);\r\n let differenceX = treeLayout[newLabel][0] - treeLayout[body_num][0];\r\n let differenceY = treeLayout[newLabel][1] - (treeLayout[body_num][1]);\r\n \r\n const locationTransform = [differenceX, differenceY];\r\n drawLines(sourceid, \"frame\" + newLabel, locationTransform, body_num, newLabel, color, direction);\r\n // console.log(locationTransform);\r\n d3.selectAll('.drawer').each(function(d, i){\r\n let nodeID = d3.select(this).attr('id').replace(\"boxid\", \"\");\r\n if (nodeID.split('_').length !==2) {\r\n if (nodeID === newLabel) {\r\n d3.select(this)\r\n .attr(\"transform\", `translate(${treeLayout[nodeID][0] + padding},${treeLayout[nodeID][1] + padding *7.5})`)\r\n .attr(\"opacity\", 0);\r\n d3.select(this)\r\n .transition('transition7')\r\n .duration(transitionTime1)\r\n .style(\"opacity\", 1);\r\n } else {\r\n d3.select(this)\r\n .transition('transition8')\r\n .duration(transitionTime2)\r\n .attr(\"transform\", `translate(${treeLayout[nodeID][0] + padding},${treeLayout[nodeID][1] + padding *7.5})`);\r\n }\r\n }\r\n })\r\n d3.selectAll('.drawer').each(function(d, i){\r\n let nodeID = d3.select(this).attr('id').replace(\"boxid\", \"\");\r\n if (nodeID.split('_').length === 2){\r\n if (d3.select(this).attr(\"line-type\") !== \"dashed\") {\r\n const lineID = nodeID;\r\n const sourceGID = nodeID.replace(\"line\", \"\").split('_')[0];\r\n const targetGID = nodeID.replace(\"line\", \"\").split('_')[1];\r\n const sourceTransString = d3.select(\"#boxid\" + sourceGID).attr('transform');\r\n const targetTransString = d3.select(\"#boxid\" + targetGID).attr('transform');\r\n if (sourceTransString!==null && sourceGID != newLabel){\r\n const translatePart = sourceTransString.slice(10, -1);\r\n const translateValues = translatePart.split(\",\");\r\n const transformArray = translateValues.map(Number);\r\n let newTransArray = [];\r\n newTransArray = [treeLayout[sourceGID][0] + padding, treeLayout[sourceGID][1] + padding *7.5];\r\n const locationTransformForThis = [treeLayout[targetGID][0] - treeLayout[sourceGID][0], treeLayout[targetGID][1] - (treeLayout[sourceGID][1])];\r\n if (transformArray[1]!==newTransArray[1] || transformArray[0]!==newTransArray[0]) {\r\n const a01 = d3.select(this).attr('sourceid');\r\n const a02 = d3.select(this).attr('targetid');\r\n const a04 = d3.select(this).attr('body_num_source');\r\n const a05 = d3.select(this).attr('body_num_target');\r\n const a06 = d3.select(this).attr('color');\r\n const currentDirection = d3.select(\"#boxid\" + a05).attr(\"direction\");\r\n updateLines(a01, a02, locationTransformForThis, a04, a05, a06, lineID, currentDirection);\r\n }\r\n }\r\n if (targetTransString!==null && targetGID != newLabel){\r\n const translatePart = targetTransString.slice(10, -1);\r\n const translateValues = translatePart.split(\",\");\r\n const transformArray = translateValues.map(Number);\r\n let newTransArray = [];\r\n const locationTransformForThis = [treeLayout[targetGID][0] - treeLayout[sourceGID][0], treeLayout[targetGID][1] - (treeLayout[sourceGID][1])];\r\n newTransArray = [treeLayout[targetGID][0] + padding, treeLayout[targetGID][1] + padding *7.5 ];\r\n if (transformArray[1]!==newTransArray[1] || transformArray[0]!==newTransArray[0]) {\r\n const a01 = d3.select(this).attr('sourceid');\r\n const a02 = d3.select(this).attr('targetid');\r\n const a04 = d3.select(this).attr('body_num_source');\r\n const a05 = d3.select(this).attr('body_num_target');\r\n const a06 = d3.select(this).attr('color');\r\n const currentDirection = d3.select(\"#boxid\" + a05).attr(\"direction\");\r\n updateLines(a01, a02, locationTransformForThis, a04, a05, a06, lineID, currentDirection);\r\n }\r\n }\r\n \r\n nodeID = nodeID.replace(\"line\", \"\");\r\n nodeID = nodeID.split('_')[0];\r\n d3.select(this)\r\n .attr(\"transform\", `translate(${treeLayout[nodeID][0] + padding},${treeLayout[nodeID][1] + padding *7.5 })`)\r\n .style(\"opacity\", 0.38);\r\n } else {\r\n const lineID = nodeID;\r\n const sourceGID = nodeID.replace(\"line\", \"\").split('_')[0];\r\n const targetGID = nodeID.replace(\"line\", \"\").split('_')[1];\r\n const sourceTransString = d3.select(\"#boxid\" + sourceGID).attr('transform');\r\n const targetTransString = d3.select(\"#boxid\" + targetGID).attr('transform');\r\n if (sourceTransString!==null && sourceGID != newLabel) {\r\n const translatePart = sourceTransString.slice(10, -1);\r\n const translateValues = translatePart.split(\",\");\r\n const transformArray = translateValues.map(Number);\r\n let newTransArray = [];\r\n newTransArray = [treeLayout[sourceGID][0] + padding, treeLayout[sourceGID][1] + padding *7.5];\r\n if (transformArray[1]!==newTransArray[1] || transformArray[0]!==newTransArray[0]) {\r\n const line_label = d3.select(this).select('text').text();\r\n updateLinesDashArrow(treeLayout, sourceGID, targetGID, \"black\", line_label, lineID);\r\n }\r\n }\r\n if (targetTransString!==null && targetGID != newLabel){\r\n const translatePart = targetTransString.slice(10, -1);\r\n const translateValues = translatePart.split(\",\");\r\n const transformArray = translateValues.map(Number);\r\n let newTransArray = [];\r\n newTransArray = [treeLayout[targetGID][0] + padding, treeLayout[targetGID][1] + padding *7.5];\r\n if (transformArray[1]!==newTransArray[1] || transformArray[0]!==newTransArray[0]) {\r\n const line_label = d3.select(this).select('text').text();\r\n updateLinesDashArrow(treeLayout, sourceGID, targetGID, \"black\", line_label, lineID);\r\n }\r\n }\r\n nodeID = nodeID.replace(\"line\", \"\");\r\n nodeID = nodeID.split('_')[0];\r\n d3.select(this)\r\n .transition('transition9')\r\n .duration(720)\r\n .attr(\"transform\", `translate(${treeLayout[nodeID][0] + padding},${treeLayout[nodeID][1] + padding *7.5})`);\r\n }\r\n }\r\n })\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/utils/click.js","/* eslint-disable */\r\nimport { drawBox } from \"./drawBox\";\r\nimport { drawLines, updateLines, drawLinesDashArrow, updateLinesDashArrow } from \"./drawlines\";\r\nimport { getBoxLayout, getTreeLayout } from \"./layout\";\r\nimport { arraysAreEqual, findChildrenAtSameLevel, autoTranslate, getHierarchy } from \"./utilities\";\r\nimport * as flextree from \"d3-flextree\"\r\nimport getMultiTree from \"./multitree\";\r\nimport * as d3 from \"d3\";\r\n\r\nexport function handleClickCond(fnS, cond, body_if, body_else, body_num, sourceid, color, clicked, direction) {\r\n const transitionTime1 = 920;\r\n const transitionTime2 = 720;\r\n const transitionTime3 = 200;\r\n const openFlag = d3.select(\"#boxid\" + String(body_num)).select(\"#\" + String(sourceid));\r\n if (clicked || openFlag.attr(\"data-opened\") === \"true\") {\r\n // openFlag.attr(\"data-opened\", \"false\");\r\n d3.select(\"#boxid\" + String(body_num)).selectAll(\"[data-opened='true']\").attr(\"data-opened\", \"false\");\r\n d3.selectAll('.drawer').each(function(d,i){\r\n let GID = d3.select(this).attr('id').replace('line', '').replace('boxid', '');\r\n const deleteLabel = String(body_num) + '-' + String(cond);\r\n const deleteParts = deleteLabel.split('-');\r\n // delete edges\r\n if (GID.split('_').length === 2){\r\n let deleteFlag = false;\r\n const node1 = GID.split('_')[0];\r\n const node2 = GID.split('_')[1];\r\n const node1Parts = node1.split('-');\r\n const node2Parts = node2.split('-');\r\n if (arraysAreEqual(node1Parts, deleteParts)) {\r\n d3.select(this)\r\n .transition() // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n deleteFlag = true;\r\n } else if (node1Parts.length > deleteParts.length) {\r\n const firstNParts = node1Parts.slice(0, deleteParts.length);\r\n if (JSON.stringify(firstNParts) === JSON.stringify(deleteParts)) {\r\n d3.select(this)\r\n .transition() // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n deleteFlag = true;\r\n }\r\n }\r\n if (!deleteFlag) {\r\n if (arraysAreEqual(node2Parts, deleteParts)) {\r\n d3.select(this)\r\n .transition() // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n } else if (node2Parts.length > deleteParts.length) {\r\n const firstNParts = node2Parts.slice(0, deleteParts.length);\r\n if (JSON.stringify(firstNParts) === JSON.stringify(deleteParts)) {\r\n d3.select(this)\r\n .transition() // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n }\r\n }\r\n }\r\n } else { // delete nodes\r\n const GIDParts = GID.split('-');\r\n if (arraysAreEqual(GIDParts, deleteParts)) {\r\n d3.select(this)\r\n .transition() // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n } else if (GIDParts.length > deleteParts.length) {\r\n const firstNParts = GIDParts.slice(0, deleteParts.length);\r\n if (JSON.stringify(firstNParts) === JSON.stringify(deleteParts)) {\r\n d3.select(this)\r\n .transition() // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n }\r\n }\r\n }\r\n // console.log(GID);\r\n })\r\n return;\r\n }\r\n body_num = String(body_num);\r\n let layoutElse;\r\n const layoutCond = getBoxLayout(fnS[cond-1]);\r\n const layoutIf = getBoxLayout(fnS[body_if-1]);\r\n if (body_else!==undefined) {\r\n layoutElse = getBoxLayout(fnS[body_else-1]);\r\n }\r\n const spaceX = 80;\r\n const spaceY = 0;\r\n const padding = 90;\r\n const newLabelCond = String(body_num) + '-' + String(cond); // new body_num for Cond\r\n const newLabelIf = String(newLabelCond) + '-' + String(body_if); // new body_num for if\r\n const newLabelElse = String(newLabelCond) + '-' + String(body_else); // new body_num for else\r\n drawBox(layoutCond, fnS, newLabelCond, direction);\r\n drawBox(layoutIf, fnS, newLabelIf, direction);\r\n if (body_else!==undefined) {\r\n drawBox(layoutElse, fnS, newLabelElse, direction);\r\n }\r\n var hierarchies = getHierarchy(spaceY);\r\n // const flexLayout = flextree.flextree({ spacing: spaceX });\r\n // console.log(hierarchies);\r\n // const tree = flexLayout.hierarchy(hierarchies);\r\n // var treeData = flexLayout(tree);\r\n // treeData.each(d => {\r\n // const x = d.x;\r\n // d.x = d.y;\r\n // d.y = x;\r\n // });\r\n // var treeLayout = {};\r\n // treeData.each(d => {\r\n // treeLayout[d.data.oName] = [d.x, d.y, d.data.size[1], d.data.size[0] * 1];\r\n // });\r\n var treeLayout = {};\r\n treeLayout = getMultiTree(hierarchies);\r\n const nodeNames = Object.keys(treeLayout);\r\n\r\n console.log(treeLayout);\r\n console.log()\r\n let differenceX = treeLayout[newLabelCond][0] - treeLayout[body_num][0];\r\n let differenceY = treeLayout[newLabelCond][1] - (treeLayout[body_num][1]);\r\n \r\n const locationTransform = [differenceX, differenceY];\r\n drawLines(sourceid, \"frame\" + newLabelCond, locationTransform, body_num, newLabelCond, color, direction);\r\n drawLinesDashArrow(treeLayout, newLabelCond, newLabelIf, \"black\", \"TRUE\", direction);\r\n if (layoutElse!==undefined) {\r\n drawLinesDashArrow(treeLayout, newLabelCond, newLabelElse, \"black\", \"FALSE\", direction);\r\n }\r\n \r\n // console.log(locationTransform);\r\n d3.selectAll('.drawer').each(function(d, i){\r\n let nodeID = d3.select(this).attr('id').replace(\"boxid\", \"\");\r\n if (nodeID.split('_').length === 2){\r\n if (d3.select(this).attr(\"line-type\") !== \"dashed\") {\r\n const lineID = nodeID;\r\n const sourceGID = nodeID.replace(\"line\", \"\").split('_')[0];\r\n const targetGID = nodeID.replace(\"line\", \"\").split('_')[1];\r\n const sourceTransString = d3.select(\"#boxid\" + sourceGID).attr('transform');\r\n const targetTransString = d3.select(\"#boxid\" + targetGID).attr('transform');\r\n if (sourceTransString!==null && sourceGID != newLabelCond){\r\n const translatePart = sourceTransString.slice(10, -1);\r\n const translateValues = translatePart.split(\",\");\r\n const transformArray = translateValues.map(Number);\r\n let newTransArray = [];\r\n newTransArray = [treeLayout[sourceGID][0] + padding, treeLayout[sourceGID][1] + padding *7.5];\r\n const locationTransformForThis = [treeLayout[targetGID][0] - treeLayout[sourceGID][0], treeLayout[targetGID][1] - (treeLayout[sourceGID][1] )];\r\n if (transformArray[1]!==newTransArray[1] || transformArray[0]!==newTransArray[0]) {\r\n const a01 = d3.select(this).attr('sourceid');\r\n const a02 = d3.select(this).attr('targetid');\r\n let a03 = d3.select(this).attr('locationTransform').split(',');\r\n const a04 = d3.select(this).attr('body_num_source');\r\n const a05 = d3.select(this).attr('body_num_target');\r\n const a06 = d3.select(this).attr('color');\r\n // const new03 = [Number(a03[0]) + newTransArray[0] - transformArray[0], Number(a03[1]) + newTransArray[1] - transformArray[1]];\r\n // d3.select(\"#\" + lineID).selectAll('*').remove();\r\n const currentDirection = d3.select(\"#boxid\" + a05).attr(\"direction\");\r\n updateLines(a01, a02, locationTransformForThis, a04, a05, a06, lineID, currentDirection);\r\n }\r\n }\r\n if (targetTransString!==null && targetGID != newLabelCond){\r\n const translatePart = targetTransString.slice(10, -1);\r\n const translateValues = translatePart.split(\",\");\r\n const transformArray = translateValues.map(Number);\r\n let newTransArray = [];\r\n newTransArray = [treeLayout[targetGID][0] + padding, treeLayout[targetGID][1] + padding *7.5 ];\r\n const locationTransformForThis = [treeLayout[targetGID][0] - treeLayout[sourceGID][0], treeLayout[targetGID][1] - (treeLayout[sourceGID][1])];\r\n if (transformArray[1]!==newTransArray[1] || transformArray[0]!==newTransArray[0]) {\r\n const a01 = d3.select(this).attr('sourceid');\r\n const a02 = d3.select(this).attr('targetid');\r\n let a03 = d3.select(this).attr('locationTransform').split(',');\r\n const a04 = d3.select(this).attr('body_num_source');\r\n const a05 = d3.select(this).attr('body_num_target');\r\n const a06 = d3.select(this).attr('color');\r\n // const new03 = [Number(a03[0]) + newTransArray[0] - transformArray[0], Number(a03[1]) + newTransArray[1] - transformArray[1]];\r\n // d3.select(\"#\" + lineID).selectAll('*').remove();\r\n const currentDirection = d3.select(\"#boxid\" + a05).attr(\"direction\");\r\n updateLines(a01, a02, locationTransformForThis, a04, a05, a06, lineID, currentDirection);\r\n }\r\n }\r\n \r\n nodeID = nodeID.replace(\"line\", \"\");\r\n nodeID = nodeID.split('_')[0];\r\n d3.select(this)\r\n .attr(\"transform\", `translate(${treeLayout[nodeID][0] + padding},${treeLayout[nodeID][1] + padding *7.5})`)\r\n .style(\"opacity\", 0.38);\r\n } else {\r\n const lineID = nodeID;\r\n const sourceGID = nodeID.replace(\"line\", \"\").split('_')[0];\r\n const targetGID = nodeID.replace(\"line\", \"\").split('_')[1];\r\n const sourceTransString = d3.select(\"#boxid\" + sourceGID).attr('transform');\r\n const targetTransString = d3.select(\"#boxid\" + targetGID).attr('transform');\r\n if (sourceTransString!==null && sourceGID != newLabelCond) {\r\n const translatePart = sourceTransString.slice(10, -1);\r\n const translateValues = translatePart.split(\",\");\r\n const transformArray = translateValues.map(Number);\r\n let newTransArray = [];\r\n newTransArray = [treeLayout[sourceGID][0] + padding, treeLayout[sourceGID][1] + padding *7.5 ];\r\n if (transformArray[1]!==newTransArray[1] || transformArray[0]!==newTransArray[0]) {\r\n const line_label = d3.select(this).select('text').text();\r\n const currentDirection = d3.select(\"#boxid\" + targetGID).attr(\"direction\");\r\n updateLinesDashArrow(treeLayout, sourceGID, targetGID, \"black\", line_label, lineID, currentDirection);\r\n }\r\n }\r\n if (targetTransString!==null && targetGID != newLabelCond){\r\n const translatePart = targetTransString.slice(10, -1);\r\n const translateValues = translatePart.split(\",\");\r\n const transformArray = translateValues.map(Number);\r\n let newTransArray = [];\r\n newTransArray = [treeLayout[targetGID][0] + padding, treeLayout[targetGID][1] + padding *7.5 ];\r\n if (transformArray[1]!==newTransArray[1] || transformArray[0]!==newTransArray[0]) {\r\n const line_label = d3.select(this).select('text').text();\r\n const currentDirection = d3.select(\"#boxid\" + targetGID).attr(\"direction\");\r\n updateLinesDashArrow(treeLayout, sourceGID, targetGID, \"black\", line_label, lineID, currentDirection);\r\n }\r\n }\r\n nodeID = nodeID.replace(\"line\", \"\");\r\n nodeID = nodeID.split('_')[0];\r\n d3.select(this)\r\n // .transition()\r\n // .duration(720)\r\n .attr(\"transform\", `translate(${treeLayout[nodeID][0] + padding},${treeLayout[nodeID][1] + padding *7.5 })`);\r\n }\r\n } else {\r\n if (nodeID === newLabelCond || nodeID === newLabelElse || nodeID === newLabelIf) {\r\n d3.select(this)\r\n .attr(\"transform\", `translate(${treeLayout[nodeID][0] + padding},${treeLayout[nodeID][1] + padding *7.5 })`)\r\n .attr(\"opacity\", 0);\r\n d3.select(this)\r\n .transition()\r\n .duration(transitionTime1)\r\n .style(\"opacity\", 1);\r\n } else {\r\n d3.select(this)\r\n .transition()\r\n .duration(transitionTime2)\r\n .attr(\"transform\", `translate(${treeLayout[nodeID][0] + padding},${treeLayout[nodeID][1] + padding *7.5 })`);\r\n }\r\n }\r\n }\r\n )\r\n // autoTranslate();\r\n}\r\n\r\nexport function handleClickLoop(fnS, cond, pre, body, post, body_num, sourceid, color, clicked, direction) {\r\n const transitionTime1 = 920;\r\n const transitionTime2 = 720;\r\n const transitionTime3 = 200;\r\n const openFlag = d3.select(\"#boxid\" + String(body_num)).select(\"#\" + String(sourceid));\r\n if (clicked || openFlag.attr(\"data-opened\") === \"true\") {\r\n // openFlag.attr(\"data-opened\", \"false\");\r\n d3.select(\"#boxid\" + String(body_num)).selectAll(\"[data-opened='true']\").attr(\"data-opened\", \"false\");\r\n d3.selectAll('.drawer').each(function(d,i){\r\n let GID = d3.select(this).attr('id').replace('line', '').replace('boxid', '');\r\n const deleteLabel = String(body_num) + '-' + String(cond);\r\n const deleteParts = deleteLabel.split('-');\r\n // delete edges\r\n if (GID.split('_').length === 2){\r\n let deleteFlag = false;\r\n const node1 = GID.split('_')[0];\r\n const node2 = GID.split('_')[1];\r\n const node1Parts = node1.split('-');\r\n const node2Parts = node2.split('-');\r\n if (arraysAreEqual(node1Parts, deleteParts)) {\r\n d3.select(this)\r\n .transition() // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n deleteFlag = true;\r\n } else if (node1Parts.length > deleteParts.length) {\r\n const firstNParts = node1Parts.slice(0, deleteParts.length);\r\n if (JSON.stringify(firstNParts) === JSON.stringify(deleteParts)) {\r\n d3.select(this)\r\n .transition() // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n deleteFlag = true;\r\n }\r\n }\r\n if (!deleteFlag) {\r\n if (arraysAreEqual(node2Parts, deleteParts)) {\r\n d3.select(this)\r\n .transition() // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n } else if (node2Parts.length > deleteParts.length) {\r\n const firstNParts = node2Parts.slice(0, deleteParts.length);\r\n if (JSON.stringify(firstNParts) === JSON.stringify(deleteParts)) {\r\n d3.select(this)\r\n .transition() // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n }\r\n }\r\n }\r\n } else { // delete nodes\r\n const GIDParts = GID.split('-');\r\n if (arraysAreEqual(GIDParts, deleteParts)) {\r\n d3.select(this)\r\n .transition() // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n } else if (GIDParts.length > deleteParts.length) {\r\n const firstNParts = GIDParts.slice(0, deleteParts.length);\r\n if (JSON.stringify(firstNParts) === JSON.stringify(deleteParts)) {\r\n d3.select(this)\r\n .transition() // 开始一个过渡\r\n .duration(transitionTime3) // 设置过渡的持续时间\r\n .style('opacity', 0) // 逐渐变透明\r\n .end()\r\n .then(() => {\r\n d3.select(this).remove();\r\n });\r\n }\r\n }\r\n }\r\n // console.log(GID);\r\n })\r\n return;\r\n }\r\n body_num = String(body_num);\r\n let layoutCond;\r\n let layoutPre;\r\n let layoutBody;\r\n let layoutPost;\r\n // const layoutPost = getBoxLayout(fnS[post-1]);\r\n const spaceX = 80;\r\n const spaceY = 100;\r\n const padding = 90;\r\n const newLabelCond = String(body_num) + '-' + String(cond); // new body_num for Cond\r\n const newLabelPre = String(newLabelCond) + '-' + String(pre); // new body_num for pre\r\n const newLabelBody = String(newLabelCond) + '-' + String(body); // new body_num for body\r\n const newLabelPost = String(newLabelCond) + '-' + String(post); // new body_num for post\r\n if (cond!==undefined) {\r\n layoutCond = getBoxLayout(fnS[cond-1]);\r\n drawBox(layoutCond, fnS, newLabelCond, direction);\r\n }\r\n if (pre!==undefined) {\r\n layoutPre = getBoxLayout(fnS[pre-1]);\r\n drawBox(layoutPre, fnS, newLabelPre, direction);\r\n }\r\n if (body!==undefined) {\r\n layoutBody = getBoxLayout(fnS[body-1]);\r\n drawBox(layoutBody, fnS, newLabelBody, direction);\r\n }\r\n if (post!==undefined) {\r\n layoutPost = getBoxLayout(fnS[post-1]);\r\n drawBox(layoutPost, fnS, newLabelPost, direction);\r\n }\r\n \r\n \r\n // drawBox(layoutPost, fnS, newLabelPost);\r\n var hierarchies = getHierarchy(spaceY);\r\n // const flexLayout = flextree.flextree({ spacing: spaceX });\r\n // console.log(hierarchies);\r\n // const tree = flexLayout.hierarchy(hierarchies);\r\n // var treeData = flexLayout(tree);\r\n // treeData.each(d => {\r\n // const x = d.x;\r\n // d.x = d.y;\r\n // d.y = x;\r\n // });\r\n // var treeLayout = {};\r\n // treeData.each(d => {\r\n // treeLayout[d.data.oName] = [d.x, d.y, d.data.size[1], d.data.size[0] * 1];\r\n // });\r\n var treeLayout = {};\r\n treeLayout = getMultiTree(hierarchies);\r\n const nodeNames = Object.keys(treeLayout);\r\n\r\n console.log(treeLayout);\r\n console.log()\r\n let differenceX = treeLayout[newLabelCond][0] - treeLayout[body_num][0];\r\n let differenceY = treeLayout[newLabelCond][1] - (treeLayout[body_num][1] );\r\n \r\n const locationTransform = [differenceX, differenceY];\r\n drawLines(sourceid, \"frame\" + newLabelCond, locationTransform, body_num, newLabelCond, color, direction);\r\n if (pre!==undefined) {\r\n drawLinesDashArrow(treeLayout, newLabelCond, newLabelPre, \"black\", \"PRE\", direction);\r\n }\r\n if (body!==undefined) {\r\n drawLinesDashArrow(treeLayout, newLabelCond, newLabelBody, \"black\", \"WHILE TRUE\", direction);\r\n }\r\n if (post!==undefined) {\r\n drawLinesDashArrow(treeLayout, newLabelCond, newLabelPost, \"black\", \"POST\", direction);\r\n }\r\n\r\n // console.log(locationTransform);\r\n d3.selectAll('.drawer').each(function(d, i){\r\n let nodeID = d3.select(this).attr('id').replace(\"boxid\", \"\");\r\n if (nodeID.split('_').length === 2){\r\n if (d3.select(this).attr(\"line-type\") !== \"dashed\") {\r\n const lineID = nodeID;\r\n const sourceGID = nodeID.replace(\"line\", \"\").split('_')[0];\r\n const targetGID = nodeID.replace(\"line\", \"\").split('_')[1];\r\n const sourceTransString = d3.select(\"#boxid\" + sourceGID).attr('transform');\r\n const targetTransString = d3.select(\"#boxid\" + targetGID).attr('transform');\r\n if (sourceTransString!==null && sourceGID != newLabelCond){\r\n const translatePart = sourceTransString.slice(10, -1);\r\n const translateValues = translatePart.split(\",\");\r\n const transformArray = translateValues.map(Number);\r\n let newTransArray = [];\r\n newTransArray = [treeLayout[sourceGID][0] + padding, treeLayout[sourceGID][1] + padding *7.5 ];\r\n const locationTransformForThis = [treeLayout[targetGID][0] - treeLayout[sourceGID][0], treeLayout[targetGID][1] - (treeLayout[sourceGID][1] )];\r\n if (transformArray[1]!==newTransArray[1] || transformArray[0]!==newTransArray[0]) {\r\n const a01 = d3.select(this).attr('sourceid');\r\n const a02 = d3.select(this).attr('targetid');\r\n let a03 = d3.select(this).attr('locationTransform').split(',');\r\n const a04 = d3.select(this).attr('body_num_source');\r\n const a05 = d3.select(this).attr('body_num_target');\r\n const a06 = d3.select(this).attr('color');\r\n // const new03 = [Number(a03[0]) + newTransArray[0] - transformArray[0], Number(a03[1]) + newTransArray[1] - transformArray[1]];\r\n // d3.select(\"#\" + lineID).selectAll('*').remove();\r\n const currentDirection = d3.select(\"#boxid\" + a05).attr(\"direction\");\r\n updateLines(a01, a02, locationTransformForThis, a04, a05, a06, lineID, currentDirection);\r\n }\r\n }\r\n if (targetTransString!==null && targetGID != newLabelCond){\r\n const translatePart = targetTransString.slice(10, -1);\r\n const translateValues = translatePart.split(\",\");\r\n const transformArray = translateValues.map(Number);\r\n let newTransArray = [];\r\n newTransArray = [treeLayout[targetGID][0] + padding, treeLayout[targetGID][1] + padding *7.5];\r\n const locationTransformForThis = [treeLayout[targetGID][0] - treeLayout[sourceGID][0], treeLayout[targetGID][1] - (treeLayout[sourceGID][1])];\r\n if (transformArray[1]!==newTransArray[1] || transformArray[0]!==newTransArray[0]) {\r\n const a01 = d3.select(this).attr('sourceid');\r\n const a02 = d3.select(this).attr('targetid');\r\n let a03 = d3.select(this).attr('locationTransform').split(',');\r\n const a04 = d3.select(this).attr('body_num_source');\r\n const a05 = d3.select(this).attr('body_num_target');\r\n const a06 = d3.select(this).attr('color');\r\n // const new03 = [Number(a03[0]) + newTransArray[0] - transformArray[0], Number(a03[1]) + newTransArray[1] - transformArray[1]];\r\n // d3.select(\"#\" + lineID).selectAll('*').remove();\r\n const currentDirection = d3.select(\"#boxid\" + a05).attr(\"direction\");\r\n updateLines(a01, a02, locationTransformForThis, a04, a05, a06, lineID, currentDirection);\r\n }\r\n }\r\n \r\n nodeID = nodeID.replace(\"line\", \"\");\r\n nodeID = nodeID.split('_')[0];\r\n d3.select(this)\r\n .attr(\"transform\", `translate(${treeLayout[nodeID][0] + padding},${treeLayout[nodeID][1] + padding *7.5 })`)\r\n .style(\"opacity\", 0.38);\r\n } else {\r\n const lineID = nodeID;\r\n const sourceGID = nodeID.replace(\"line\", \"\").split('_')[0];\r\n const targetGID = nodeID.replace(\"line\", \"\").split('_')[1];\r\n const sourceTransString = d3.select(\"#boxid\" + sourceGID).attr('transform');\r\n const targetTransString = d3.select(\"#boxid\" + targetGID).attr('transform');\r\n if (sourceTransString!==null && sourceGID != newLabelCond) {\r\n const translatePart = sourceTransString.slice(10, -1);\r\n const translateValues = translatePart.split(\",\");\r\n const transformArray = translateValues.map(Number);\r\n let newTransArray = [];\r\n newTransArray = [treeLayout[sourceGID][0] + padding, treeLayout[sourceGID][1] + padding *7.5 ];\r\n if (transformArray[1]!==newTransArray[1] || transformArray[0]!==newTransArray[0]) {\r\n const line_label = d3.select(this).select('text').text();\r\n const currentDirection = d3.select(\"#boxid\" + targetGID).attr(\"direction\");\r\n updateLinesDashArrow(treeLayout, sourceGID, targetGID, \"black\", line_label, lineID, currentDirection);\r\n }\r\n }\r\n if (targetTransString!==null && targetGID != newLabelCond){\r\n const translatePart = targetTransString.slice(10, -1);\r\n const translateValues = translatePart.split(\",\");\r\n const transformArray = translateValues.map(Number);\r\n let newTransArray = [];\r\n newTransArray = [treeLayout[targetGID][0] + padding, treeLayout[targetGID][1] + padding *7.5 ];\r\n if (transformArray[1]!==newTransArray[1] || transformArray[0]!==newTransArray[0]) {\r\n const line_label = d3.select(this).select('text').text();\r\n const currentDirection = d3.select(\"#boxid\" + targetGID).attr(\"direction\");\r\n updateLinesDashArrow(treeLayout, sourceGID, targetGID, \"black\", line_label, lineID, currentDirection);\r\n }\r\n }\r\n nodeID = nodeID.replace(\"line\", \"\");\r\n nodeID = nodeID.split('_')[0];\r\n d3.select(this)\r\n // .transition()\r\n // .duration(720)\r\n .attr(\"transform\", `translate(${treeLayout[nodeID][0] + padding},${treeLayout[nodeID][1] + padding *7.5 })`);\r\n }\r\n } else {\r\n if (nodeID === newLabelCond || nodeID === newLabelPre || nodeID === newLabelBody || nodeID === newLabelPost) {\r\n d3.select(this)\r\n .attr(\"transform\", `translate(${treeLayout[nodeID][0] + padding},${treeLayout[nodeID][1] + padding *7.5 })`)\r\n .attr(\"opacity\", 0);\r\n d3.select(this)\r\n .transition()\r\n .duration(transitionTime1)\r\n .style(\"opacity\", 1);\r\n } else {\r\n d3.select(this)\r\n .transition()\r\n .duration(transitionTime2)\r\n .attr(\"transform\", `translate(${treeLayout[nodeID][0] + padding},${treeLayout[nodeID][1] + padding *7.5 })`);\r\n }\r\n }\r\n }\r\n )\r\n // autoTranslate();\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/utils/clickCond.js","/* eslint-disable */\r\nlet gromet = null;\r\n\r\nexport function setGromet(data) {\r\n gromet = data;\r\n}\r\n\r\nexport function getGromet() {\r\n return gromet;\r\n}\n\n\n// WEBPACK FOOTER //\n// ./src/utils/global.js","/* eslint-disable */\r\nimport * as d3 from \"d3\";\r\nimport { handleClick } from \"./click\";\r\nimport { handleClickCond, handleClickLoop } from \"./clickCond\";\r\nimport { computeBoundingRectangle, getOuterBox, relayoutPorts } from \"./utilities\"\r\nimport { getGromet } from './global.js';\r\n\r\nexport function drawBox(layout, fnS, body_num, directionO = \"right\") {\r\n // console.log(this.$gromet)\r\n // 创建SVG元素\r\n // debugger\r\n const svg = d3.select(\"#mainsvg\").select(\"#sumGroup\");\r\n const g = svg.append(\"g\").attr('id', \"boxid\" + String(body_num)).attr(\"class\", \"drawer\").attr(\"direction\", directionO);\r\n const ranksep = 37;\r\n const padding = 22.5; // 设置padding的大小\r\n\r\n // 绘制节点\r\n const nodes = layout.nodes;\r\n\r\n console.log(layout)\r\n let opoNode = {};\r\n let opiNode = {};\r\n for (const nodeId in nodes) {\r\n const node = nodes[nodeId];\r\n const [type, index] = nodeId.split(\"-\");\r\n const isOpoNode = (type === 'opo');\r\n const isOpiNode = (type === 'opi');\r\n if (isOpiNode){\r\n opiNode[nodeId] = node;\r\n }\r\n if (isOpoNode){\r\n opoNode[nodeId] = node;\r\n }\r\n }\r\n console.log(opiNode);\r\n console.log(opoNode)\r\n if (Object.keys(opiNode).length>1){\r\n opiNode = relayoutPorts(opiNode);\r\n }\r\n if (Object.keys(opoNode).length>1){\r\n opoNode = relayoutPorts(opoNode);\r\n }\r\n \r\n let opoNodeFlag = false;\r\n let opiNodeFlag = false;\r\n const minValue = Math.min(...Object.values(layout.nodes).map(obj => obj.y));\r\n const maxValue = Math.max(...Object.values(layout.nodes).map(obj => obj.y));\r\n for (const nodeId in nodes) {\r\n const node = nodes[nodeId];\r\n const [type, index] = nodeId.split(\"-\");\r\n const isOpoNode = (type === 'opo');\r\n const isOpiNode = (type === 'opi');\r\n if (isOpiNode) {\r\n if (node.y === minValue){\r\n // node.y = minValue - 50 - ranksep;\r\n opiNodeFlag = true;\r\n }\r\n }\r\n\r\n if (isOpoNode) {\r\n if (node.y === maxValue){\r\n // node.y = maxValue + 50 + ranksep;\r\n opoNodeFlag = true;\r\n }\r\n }\r\n }\r\n // console.log(nodes);\r\n for (const nodeId in nodes) {\r\n // const node = nodes[nodeId];\r\n const [type, index] = nodeId.split(\"-\");\r\n const isOpoNode = (type === 'opo');\r\n const isOpiNode = (type === 'opi');\r\n \r\n if (isOpiNode) {\r\n // debugger\r\n if (opiNodeFlag){\r\n nodes[nodeId].y = minValue;\r\n } else {\r\n nodes[nodeId].y = minValue - 50 - ranksep;\r\n }\r\n }\r\n if (isOpoNode) {\r\n if (opoNodeFlag){\r\n nodes[nodeId].y = maxValue;\r\n } else {\r\n nodes[nodeId].y = maxValue + 50 + ranksep;\r\n }\r\n }\r\n }\r\n \r\n\r\n // 获取 x 和 y 的最小值\r\n let minXofAllNodes = Infinity;\r\n let minYofAllNodes = Infinity;\r\n for (const key in nodes) {\r\n const [type, index] = key.split(\"-\");\r\n const isAuxNode = (type === \"aux\");\r\n // if (!isAuxNode) {\r\n if (nodes[key].x < minXofAllNodes) {\r\n minXofAllNodes = nodes[key].x;\r\n }\r\n if (nodes[key].y < minYofAllNodes) {\r\n minYofAllNodes = nodes[key].y;\r\n }\r\n // }\r\n }\r\n\r\n // 更新每一个子对象的 x 和 y 属性\r\n for (const key in nodes) {\r\n nodes[key].x = nodes[key].x - minXofAllNodes;\r\n nodes[key].y -= minYofAllNodes;\r\n }\r\n const bbox = computeBoundingRectangle(nodes);\r\n const realOuterBox = getOuterBox(bbox, padding, ranksep, nodes);\r\n // console.log(bbox,\"bbox\");\r\n // console.log(nodes);\r\n for (const nodeId in nodes) {\r\n const node = nodes[nodeId];\r\n const [type, index] = nodeId.split(\"-\");\r\n const isBfNode = (type === \"bf\");\r\n const isPofNode = (type === \"pof\");\r\n const isPifNode = (type === \"pif\");\r\n const isAuxNode = (type === \"aux\");\r\n const isOpoNode = (type === 'opo');\r\n const isOpiNode = (type === 'opi');\r\n const isBcNode = (type === \"bc\");\r\n const isPocNode = (type === \"poc\");\r\n const isPicNode = (type === \"pic\");\r\n const isBlNode = (type === \"bl\");\r\n const isPolNode = (type === \"pol\");\r\n const isPilNode = (type === \"pil\");\r\n \r\n if (isAuxNode) {\r\n continue; // 不绘制aux前缀的节点\r\n }\r\n const bboxO = bbox;\r\n if (isBfNode) {\r\n if (node.fullBox){\r\n if (node.type == \"FUNCTION\") {\r\n drawBFs_full(node, nodeId, g, \"green\", ranksep, fnS, body_num, realOuterBox);\r\n } else if (node.type == \"EXPRESSION\") {\r\n drawBFs_full(node, nodeId, g, \"purple\", ranksep, fnS, body_num, realOuterBox);\r\n } else if (node.type == \"LITERAL\") {\r\n drawLiteral_full(node, nodeId, g, \"red\", ranksep);\r\n } else if (node.type == \"LANGUAGE_PRIMITIVE\") {\r\n drawLPrimitive_full(node, nodeId, g, \"red\", ranksep);\r\n } else if (node.type == \"ABSTRACT\") {\r\n drawBFs_full(node, nodeId, g, \"yellow\", ranksep);\r\n } else if (node.type == \"IMPORTED\") {\r\n const imported = true;\r\n drawBFs_full(node, nodeId, g, \"gray\", ranksep, fnS, body_num, realOuterBox, imported);\r\n } else if (node.type == \"IMPORTED_METHOD\") {\r\n const imported = true;\r\n drawBFs_full(node, nodeId, g, \"purple\", ranksep, fnS, body_num, realOuterBox, imported);\r\n }\r\n } else {\r\n if (node.type == \"FUNCTION\") {\r\n drawBFs_nfull(node, nodeId, g, \"green\", ranksep, fnS, body_num, realOuterBox);\r\n } else if (node.type == \"EXPRESSION\") {\r\n drawBFs_nfull(node, nodeId, g, \"purple\", ranksep, fnS, body_num, realOuterBox);\r\n } else if (node.type == \"LITERAL\") {\r\n drawLiteral_nfull(node, nodeId, g, \"red\", ranksep);\r\n } else if (node.type == \"LANGUAGE_PRIMITIVE\") {\r\n drawLPrimitive_nfull(node, nodeId, g, \"red\", ranksep);\r\n } else if (node.type == \"ABSTRACT\") {\r\n drawBFs_nfull(node, nodeId, g, \"yellow\", ranksep);\r\n } else if (node.type == \"IMPORTED\") {\r\n const imported = true;\r\n drawBFs_nfull(node, nodeId, g, \"gray\", ranksep, fnS, body_num, realOuterBox, imported);\r\n } else if (node.type == \"IMPORTED_METHOD\") {\r\n const imported = true;\r\n drawBFs_nfull(node, nodeId, g, \"purple\", ranksep, fnS, body_num, realOuterBox, imported);\r\n }\r\n }\r\n } else if (isBcNode) {\r\n if (node.fullBox){\r\n drawBCs_full(node, nodeId, g, \"orange\", ranksep, fnS, body_num, realOuterBox);\r\n } else {\r\n drawBCs_nfull(node, nodeId, g, \"orange\", ranksep, fnS, body_num, realOuterBox);\r\n }\r\n } else if (isBlNode) {\r\n if (node.fullBox){\r\n drawBLs_full(node, nodeId, g, \"blue\", ranksep, fnS, body_num, realOuterBox);\r\n } else {\r\n drawBLs_nfull(node, nodeId, g, \"blue\", ranksep, fnS, body_num, realOuterBox);\r\n }\r\n }\r\n else if (isPofNode || isPifNode || isOpiNode || isOpoNode || isPicNode || isPocNode || isPilNode || isPolNode) {\r\n if (node.label===\"err\") {\r\n drawPorts(node, nodeId, g, \"red\", \"red\");\r\n } else {\r\n drawPorts(node, nodeId, g, \"black\");\r\n }\r\n }\r\n }\r\n // 绘制箭头\r\n g.append(\"defs\")\r\n .append(\"marker\")\r\n .attr(\"id\", \"arrowhead\")\r\n .attr(\"markerWidth\", 10)\r\n .attr(\"markerHeight\", 7)\r\n .attr(\"refX\", 10)\r\n .attr(\"refY\", 3.5)\r\n .attr(\"orient\", \"auto\")\r\n .append(\"path\")\r\n .attr(\"d\", \"M0,0 L10,3.5 L0,7 Z\")\r\n .style(\"fill\", \"gray\");\r\n \r\n // 绘制边\r\n const edges = layout.edges;\r\n edges.forEach((edge) => {\r\n const sourceNode = nodes[edge.source];\r\n const targetNode = nodes[edge.target];\r\n const sourceType = edge.source.split(\"-\")[0];\r\n const targetType = edge.target.split(\"-\")[0];\r\n const isAuxEdge = (sourceType === \"aux\" || targetType === \"aux\");\r\n\r\n if (!isAuxEdge) {\r\n g.append(\"line\")\r\n .attr(\"x1\", sourceNode.x)\r\n .attr(\"y1\", sourceNode.y - sourceNode.height / 2)\r\n .attr(\"x2\", targetNode.x)\r\n .attr(\"y2\", targetNode.y + targetNode.height / 2)\r\n .style(\"stroke\", \"gray\")\r\n .style(\"stroke-width\", 2.2)\r\n .attr(\"marker-end\", \"url(#arrowhead)\");\r\n }\r\n });\r\n\r\n // 调整SVG大小\r\n\r\n const width = bbox.width + padding * 4;\r\n const height = bbox.height + padding * 4;\r\n\r\n if ('opo-0' in nodes && 'opi-0' in nodes){\r\n if (layout.meta.type === \"MODULE\"){\r\n drawOuterBoxFull(g, bbox, width, height, padding, ranksep, \"gray\", body_num, false, layout);\r\n } else if (layout.meta.type === \"EXPRESSION\") {\r\n drawOuterBoxFull(g, bbox, width, height, padding, ranksep, \"purple\", body_num, false, layout);\r\n } else if (layout.meta.type === \"FUNCTION\") {\r\n drawOuterBoxFull(g, bbox, width, height, padding, ranksep, \"green\", body_num, false, layout);\r\n } else if (layout.meta.type === \"PREDICATE\") {\r\n drawOuterBoxFull(g, bbox, width, height, padding, ranksep, \"Magenta\", body_num, false, layout);\r\n } else if (layout.meta.type == \"ABSTRACT\") {\r\n drawOuterBoxFull(g, bbox, width, height, padding, ranksep, \"yellow\", body_num, false, layout);\r\n } else if (layout.meta.type === \"IMPORTED\") {\r\n const imported = true;\r\n drawOuterBoxFull(g, bbox, width, height, padding, ranksep, \"gray\", body_num, imported, layout);\r\n } else if (layout.meta.type === \"IMPORTED_METHOD\") {\r\n const imported = true;\r\n drawOuterBoxFull(g, bbox, width, height, padding, ranksep, \"purple\", body_num, imported, layout);\r\n }\r\n } else if ('opo-0' in nodes && !('opi-0' in nodes)) {\r\n if (layout.meta.type === \"MODULE\"){\r\n drawOuterBoxBottom(g, bbox, width, height, padding, ranksep, \"gray\", body_num, false, layout);\r\n } else if (layout.meta.type === \"EXPRESSION\") {\r\n drawOuterBoxBottom(g, bbox, width, height, padding, ranksep, \"purple\", body_num, false, layout);\r\n } else if (layout.meta.type === \"FUNCTION\") {\r\n drawOuterBoxBottom(g, bbox, width, height, padding, ranksep, \"green\", body_num, false, layout);\r\n } else if (layout.meta.type === \"PREDICATE\") {\r\n drawOuterBoxBottom(g, bbox, width, height, padding, ranksep, \"Magenta\", body_num, false, layout);\r\n } else if (layout.meta.type == \"ABSTRACT\") {\r\n drawOuterBoxBottom(g, bbox, width, height, padding, ranksep, \"yellow\", body_num, false, layout);\r\n } else if (layout.meta.type === \"IMPORTED\") {\r\n const imported = true;\r\n drawOuterBoxBottom(g, bbox, width, height, padding, ranksep, \"gray\", body_num, imported, layout);\r\n } else if (layout.meta.type === \"IMPORTED_METHOD\") {\r\n const imported = true;\r\n drawOuterBoxBottom(g, bbox, width, height, padding, ranksep, \"purple\", body_num, imported, layout);\r\n }\r\n } else if (!('opo-0' in nodes) && 'opi-0' in nodes) {\r\n if (layout.meta.type === \"MODULE\"){\r\n drawOuterBoxTop(g, bbox, width, height, padding, ranksep, \"gray\", body_num, false, layout);\r\n } else if (layout.meta.type === \"EXPRESSION\") {\r\n drawOuterBoxTop(g, bbox, width, height, padding, ranksep, \"purple\", body_num, false, layout);\r\n } else if (layout.meta.type === \"FUNCTION\") {\r\n drawOuterBoxTop(g, bbox, width, height, padding, ranksep, \"green\", body_num, false, layout);\r\n } else if (layout.meta.type === \"PREDICATE\") {\r\n drawOuterBoxTop(g, bbox, width, height, padding, ranksep, \"Magenta\", body_num, false, layout);\r\n } else if (layout.meta.type == \"ABSTRACT\") {\r\n drawOuterBoxTop(g, bbox, width, height, padding, ranksep, \"yellow\", body_num, false, layout);\r\n } else if (layout.meta.type === \"IMPORTED\") {\r\n const imported = true;\r\n drawOuterBoxTop(g, bbox, width, height, padding, ranksep, \"gray\", body_num, imported, layout);\r\n } else if (layout.meta.type === \"IMPORTED_METHOD\") {\r\n const imported = true;\r\n drawOuterBoxTop(g, bbox, width, height, padding, ranksep, \"purple\", body_num, imported, layout);\r\n }\r\n } else {\r\n if (layout.meta.type === \"MODULE\"){\r\n drawOuterBoxEmpty(g, bbox, width, height, padding, ranksep, \"gray\", body_num, false, layout);\r\n } else if (layout.meta.type === \"EXPRESSION\") {\r\n drawOuterBoxEmpty(g, bbox, width, height, padding, ranksep, \"purple\", body_num, false, layout);\r\n } else if (layout.meta.type === \"FUNCTION\") {\r\n drawOuterBoxEmpty(g, bbox, width, height, padding, ranksep, \"green\", body_num, false, layout);\r\n } else if (layout.meta.type === \"PREDICATE\") {\r\n drawOuterBoxEmpty(g, bbox, width, height, padding, ranksep, \"Magenta\", body_num, false, layout);\r\n } else if (layout.meta.type == \"ABSTRACT\") {\r\n drawOuterBoxEmpty(g, bbox, width, height, padding, ranksep, \"yellow\", body_num, false, layout);\r\n } else if (layout.meta.type === \"IMPORTED\") {\r\n const imported = true;\r\n drawOuterBoxEmpty(g, bbox, width, height, padding, ranksep, \"gray\", body_num, imported, layout);\r\n } else if (layout.meta.type === \"IMPORTED_METHOD\") {\r\n const imported = true;\r\n drawOuterBoxEmpty(g, bbox, width, height, padding, ranksep, \"purple\", body_num, imported, layout);\r\n }\r\n }\r\n g.attr(\"width\", g.node().getBBox().width)\r\n .attr(\"height\", g.node().getBBox().height)\r\n if (body_num === 0){\r\n g.attr(\"transform\", `translate(${padding * 4},${padding * 30 - g.node().getBBox().height / 2 * 1})`);\r\n }\r\n }\r\n\r\nfunction drawBFs_full(node, nodeId, g, color, ranksep, fnS, body_num, bbox=\"right\", imported=false) {\r\n let clicked = false;\r\n let node_body = null;\r\n if (node.body !== undefined) {\r\n node_body = node.body;\r\n }\r\n const outerRight = bbox.x + bbox.width;\r\n const outerBottom = bbox.y + bbox.height;\r\n const innerRight = node.x + node.width / 2;\r\n const innerBottom = node.y + node.height / 2 - ranksep;\r\n // console.log(outerRight, \"outerRight\");\r\n // console.log(outerBottom, \"outerBottom\");\r\n // console.log(innerBottom, \"innerBottom\");\r\n // console.log(innerRight, \"innerRight\");\r\n let direction = \"right\";\r\n if ( (outerRight - innerRight) > (outerBottom - innerBottom) + 120) {\r\n direction = \"down\";\r\n }\r\n const selection = g.append(\"rect\")\r\n .attr(\"id\", nodeId)\r\n .attr(\"x\", node.x - node.width / 2)\r\n .attr(\"y\", node.y - node.height / 2 + ranksep)\r\n .attr(\"width\", node.width)\r\n .attr(\"height\", node.height - ranksep * 2)\r\n .attr(\"rx\", 15)\r\n .attr(\"ry\", 15)\r\n .attr(\"data-body\", node_body)\r\n .attr(\"data-opened\", \"neo\")\r\n .attr(\"data-clicked\", \"false\")\r\n .style(\"fill\", \"rgba(0, 0, 255, 0)\")\r\n .style(\"stroke\", color)\r\n .style(\"cursor\", \"pointer\")\r\n .style(\"stroke-width\", 5);\r\n if (imported) {\r\n selection.style(\"stroke-dasharray\", \"10, 5\");\r\n }\r\n if (node.label !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"12px\")\r\n .text(node.label);\r\n }\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (node.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x + node.width / 2 - 17)\r\n .attr(\"y\", node.y - node.height / 2 + ranksep + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"15px\")\r\n .text(node.metadata)\r\n .on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[node.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });\r\n }\r\n if (node.body !== undefined) {\r\n selection.on(\"click\", function(){\r\n handleClick(fnS, node.body, body_num, nodeId, color, clicked, direction);\r\n clicked = !clicked;\r\n this.setAttribute(\"data-clicked\", clicked.toString());\r\n });\r\n }\r\n}\r\n\r\nfunction drawBFs_nfull(node, nodeId, g, color, ranksep, fnS, body_num, bbox = \"right\", imported = false) {\r\n let node_body = null;\r\n if (node.body !== undefined) {\r\n node_body = node.body;\r\n }\r\n if (imported===true) {\r\n console.log(node);\r\n console.log(node.body);\r\n }\r\n let clicked = false;\r\n const outerRight = bbox.x + bbox.width;\r\n const outerBottom = bbox.y + bbox.height;\r\n const innerRight = node.x + node.width / 2;\r\n const innerBottom = node.y + node.height / 2 - ranksep;\r\n let direction = \"right\";\r\n if ( (outerRight - innerRight) > (outerBottom - innerBottom) + 120) {\r\n direction = \"down\";\r\n }\r\n const selection = g.append(\"rect\")\r\n .attr(\"id\", nodeId)\r\n .attr(\"x\", node.x - node.width / 2)\r\n .attr(\"y\", node.y - node.height / 2 - ranksep)\r\n .attr(\"width\", node.width)\r\n .attr(\"height\", node.height)\r\n .attr(\"rx\", 15)\r\n .attr(\"ry\", 15)\r\n .attr(\"data-body\", node_body)\r\n .attr(\"data-opened\", \"neo\")\r\n .attr(\"data-clicked\", \"false\")\r\n .style(\"fill\", \"rgba(0, 0, 255, 0)\")\r\n .style(\"cursor\", \"pointer\")\r\n .style(\"stroke\", color)\r\n .style(\"stroke-width\", 5);\r\n if (imported) {\r\n selection.style(\"stroke-dasharray\", \"10, 5\");\r\n }\r\n if (node.label !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y - node.height / 4 - ranksep / 2)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"12px\")\r\n .text(node.label);\r\n }\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (node.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x + node.width / 2 - 17)\r\n .attr(\"y\", node.y - node.height / 2 - ranksep + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"15px\")\r\n .text(node.metadata)\r\n .on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[node.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });\r\n }\r\n if (node.body !== undefined) {\r\n selection.on(\"click\", function(){\r\n handleClick(fnS, node.body, body_num, nodeId, color, clicked, direction);\r\n clicked = !clicked;\r\n this.setAttribute(\"data-clicked\", clicked.toString());\r\n });\r\n }\r\n}\r\n\r\nfunction drawBCs_full(node, nodeId, g, color, ranksep, fnS, body_num, bbox) {\r\n let clicked = false;\r\n let node_body_cond = null;\r\n if (node.condition !== undefined) {\r\n node_body_cond = node.condition;\r\n }\r\n const outerRight = bbox.x + bbox.width;\r\n const outerBottom = bbox.y + bbox.height;\r\n const innerRight = node.x + node.width / 2;\r\n const innerBottom = node.y + node.height / 2 - ranksep;\r\n let direction = \"right\";\r\n if ( (outerRight - innerRight) > (outerBottom - innerBottom) + 120) {\r\n direction = \"down\";\r\n }\r\n const selection = g.append(\"rect\")\r\n .attr(\"id\", nodeId)\r\n .attr(\"x\", node.x - node.width / 2)\r\n .attr(\"y\", node.y - node.height / 2 + ranksep)\r\n .attr(\"width\", node.width)\r\n .attr(\"height\", node.height - ranksep * 2)\r\n .attr(\"rx\", 15)\r\n .attr(\"ry\", 15)\r\n .attr(\"data-body\", node_body_cond)\r\n .attr(\"data-clicked\", \"false\")\r\n .style(\"fill\", \"rgba(0, 0, 255, 0)\")\r\n .style(\"stroke\", color)\r\n .style(\"cursor\", \"pointer\")\r\n .style(\"stroke-width\", 5);\r\n if (node.label !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"12px\")\r\n .text(node.label);\r\n }\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (node.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x + node.width / 2 - 17)\r\n .attr(\"y\", node.y - node.height / 2 + ranksep + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"15px\")\r\n .text(node.metadata)\r\n .on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[node.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });;\r\n }\r\n if (node.condition !== undefined) {\r\n selection.on(\"click\", function(){\r\n handleClickCond(fnS, node.condition, node.body_if, node.body_else, body_num, nodeId, color, clicked, direction);\r\n clicked = !clicked;\r\n this.setAttribute(\"data-clicked\", clicked.toString());\r\n });\r\n }\r\n}\r\n\r\nfunction drawBCs_nfull(node, nodeId, g, color, ranksep, fnS, body_num, bbox) {\r\n let node_body = null;\r\n if (node.body !== undefined) {\r\n node_body = node.body;\r\n }\r\n let clicked = false;\r\n const outerRight = bbox.x + bbox.width;\r\n const outerBottom = bbox.y + bbox.height;\r\n const innerRight = node.x + node.width / 2;\r\n const innerBottom = node.y + node.height / 2 - ranksep;\r\n let direction = \"right\";\r\n if ( (outerRight - innerRight) > (outerBottom - innerBottom) + 120) {\r\n direction = \"down\";\r\n }\r\n const selection = g.append(\"rect\")\r\n .attr(\"id\", nodeId)\r\n .attr(\"x\", node.x - node.width / 2)\r\n .attr(\"y\", node.y - node.height / 2 - ranksep)\r\n .attr(\"width\", node.width)\r\n .attr(\"height\", node.height)\r\n .attr(\"rx\", 15)\r\n .attr(\"ry\", 15)\r\n .attr(\"data-body\", node_body)\r\n .attr(\"data-clicked\", \"false\")\r\n .style(\"fill\", \"rgba(0, 0, 255, 0)\")\r\n .style(\"cursor\", \"pointer\")\r\n .style(\"stroke\", color)\r\n .style(\"stroke-width\", 5);\r\n if (node.label !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y - node.height / 4 - ranksep / 2)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"12px\")\r\n .text(node.label);\r\n }\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (node.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x + node.width / 2 - 17)\r\n .attr(\"y\", node.y - node.height / 2 - ranksep + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"15px\")\r\n .text(node.metadata)\r\n .on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[node.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });;\r\n }\r\n if (node.body !== undefined) {\r\n selection.on(\"click\", function(){\r\n handleClickCond(fnS, node.condition, node.body_if, node.body_else, body_num, nodeId, color, clicked, direction);\r\n clicked = !clicked;\r\n this.setAttribute(\"data-clicked\", clicked.toString());\r\n });\r\n }\r\n}\r\n\r\nfunction drawBLs_full(node, nodeId, g, color, ranksep, fnS, body_num, bbox) {\r\n let clicked = false;\r\n let node_body_cond = null;\r\n if (node.condition !== undefined) {\r\n node_body_cond = node.condition;\r\n }\r\n const outerRight = bbox.x + bbox.width;\r\n const outerBottom = bbox.y + bbox.height;\r\n const innerRight = node.x + node.width / 2;\r\n const innerBottom = node.y + node.height / 2 - ranksep;\r\n let direction = \"right\";\r\n if ( (outerRight - innerRight) > (outerBottom - innerBottom) + 120) {\r\n direction = \"down\";\r\n }\r\n const selection = g.append(\"rect\")\r\n .attr(\"id\", nodeId)\r\n .attr(\"x\", node.x - node.width / 2)\r\n .attr(\"y\", node.y - node.height / 2 + ranksep)\r\n .attr(\"width\", node.width)\r\n .attr(\"height\", node.height - ranksep * 2)\r\n .attr(\"rx\", 15)\r\n .attr(\"ry\", 15)\r\n .attr(\"data-body\", node_body_cond)\r\n .attr(\"data-clicked\", \"false\")\r\n .style(\"fill\", \"rgba(0, 0, 255, 0)\")\r\n .style(\"stroke\", color)\r\n .style(\"cursor\", \"pointer\")\r\n .style(\"stroke-width\", 5);\r\n if (node.label !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"12px\")\r\n .text(node.label);\r\n }\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (node.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x + node.width / 2 - 17)\r\n .attr(\"y\", node.y - node.height / 2 + ranksep + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"15px\")\r\n .text(node.metadata)\r\n .on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[node.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });;\r\n }\r\n if (node.condition !== undefined) {\r\n selection.on(\"click\", function(){\r\n handleClickLoop(fnS, node.condition, node.pre, node.body, node.post, body_num, nodeId, color, clicked, direction);\r\n clicked = !clicked;\r\n this.setAttribute(\"data-clicked\", clicked.toString());\r\n });\r\n }\r\n}\r\n\r\nfunction drawBLs_nfull(node, nodeId, g, color, ranksep, fnS, body_num, bbox) {\r\n let node_body = null;\r\n if (node.body !== undefined) {\r\n node_body = node.body;\r\n }\r\n let clicked = false;\r\n const outerRight = bbox.x + bbox.width;\r\n const outerBottom = bbox.y + bbox.height;\r\n const innerRight = node.x + node.width / 2;\r\n const innerBottom = node.y + node.height / 2 - ranksep;\r\n let direction = \"right\";\r\n if ( (outerRight - innerRight) > (outerBottom - innerBottom) + 120) {\r\n direction = \"down\";\r\n }\r\n const selection = g.append(\"rect\")\r\n .attr(\"id\", nodeId)\r\n .attr(\"x\", node.x - node.width / 2)\r\n .attr(\"y\", node.y - node.height / 2 - ranksep)\r\n .attr(\"width\", node.width)\r\n .attr(\"height\", node.height)\r\n .attr(\"rx\", 15)\r\n .attr(\"ry\", 15)\r\n .attr(\"data-body\", node_body)\r\n .attr(\"data-clicked\", \"false\")\r\n .style(\"fill\", \"rgba(0, 0, 255, 0)\")\r\n .style(\"cursor\", \"pointer\")\r\n .style(\"stroke\", color)\r\n .style(\"stroke-width\", 5);\r\n if (node.label !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y - node.height / 4 - ranksep / 2)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"12px\")\r\n .text(node.label);\r\n }\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (node.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x + node.width / 2 - 17)\r\n .attr(\"y\", node.y - node.height / 2 - ranksep + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"15px\")\r\n .text(node.metadata).on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[node.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });;\r\n }\r\n if (node.body !== undefined) {\r\n selection.on(\"click\", function(){\r\n handleClickLoop(fnS, node.body, body_num, nodeId, color, clicked, direction);\r\n clicked = !clicked;\r\n this.setAttribute(\"data-clicked\", clicked.toString());\r\n });\r\n }\r\n}\r\n\r\nfunction drawLiteral_full(node, nodeId, g, color, ranksep) {\r\n g.append(\"rect\")\r\n .attr(\"id\", nodeId)\r\n .attr(\"x\", node.x - node.width / 2)\r\n .attr(\"y\", node.y - node.height / 2 + ranksep)\r\n .attr(\"width\", node.width)\r\n .attr(\"height\", node.height - ranksep * 2)\r\n .style(\"fill\", \"none\")\r\n .style(\"stroke\", color)\r\n .style(\"stroke-width\", 2);\r\n if (node.label !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"12px\")\r\n .text(node.label);\r\n }\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (node.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x + node.width / 2 - 17)\r\n .attr(\"y\", node.y - node.height / 2 + ranksep + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"15px\")\r\n .text(node.metadata).on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[node.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });;\r\n }\r\n if (node.value !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"30px\")\r\n .text(node.value.value);\r\n }\r\n}\r\n\r\nfunction drawLPrimitive_full(node, nodeId, g, color, ranksep) {\r\n g.append(\"rect\")\r\n .attr(\"id\", nodeId)\r\n .attr(\"x\", node.x - node.width / 2)\r\n .attr(\"y\", node.y - node.height / 2 + ranksep)\r\n .attr(\"width\", node.width)\r\n .attr(\"height\", node.height - ranksep * 2)\r\n .style(\"fill\", \"none\")\r\n .style(\"stroke\", color)\r\n .style(\"stroke-width\", 5);\r\n if (node.label !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"20px\")\r\n .text(node.label);\r\n }\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (node.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x + node.width / 2 - 17)\r\n .attr(\"y\", node.y - node.height / 2 + ranksep + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"15px\")\r\n .text(node.metadata).on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[node.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });;\r\n }\r\n if (node.value !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"30px\")\r\n .text(node.value.value);\r\n }\r\n}\r\n\r\nfunction drawLPrimitive_nfull(node, nodeId, g, color, ranksep) {\r\n g.append(\"rect\")\r\n .attr(\"id\", nodeId)\r\n .attr(\"x\", node.x - node.width / 2)\r\n .attr(\"y\", node.y - node.height / 2 - ranksep)\r\n .attr(\"width\", node.width)\r\n .attr(\"height\", node.height)\r\n .style(\"fill\", \"none\")\r\n .style(\"stroke\", color)\r\n .style(\"stroke-width\", 5);\r\n if (node.label !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"12px\")\r\n .text(node.label);\r\n }\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (node.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x + node.width / 2 - 17)\r\n .attr(\"y\", node.y - node.height / 2 - ranksep + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"15px\")\r\n .text(node.metadata).on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[node.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });;\r\n }\r\n if (node.value !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"30px\")\r\n .text(node.value.value);\r\n }\r\n}\r\n\r\nfunction drawLiteral_nfull(node, nodeId, g, color, ranksep) {\r\n g.append(\"rect\")\r\n .attr(\"id\", nodeId)\r\n .attr(\"x\", node.x - node.width / 2 + ranksep / 2)\r\n .attr(\"y\", node.y - node.height / 2 - ranksep)\r\n .attr(\"width\", node.width - ranksep)\r\n .attr(\"height\", node.height)\r\n .style(\"fill\", \"none\")\r\n .style(\"stroke\", color)\r\n .style(\"stroke-width\", 2);\r\n if (node.label !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"12px\")\r\n .text(node.label);\r\n }\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (node.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x + node.width / 2 - 27)\r\n .attr(\"y\", node.y - node.height / 2 - ranksep + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"15px\")\r\n .text(node.metadata).on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[node.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });;\r\n }\r\n if (node.value !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y - ranksep * 1.2)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"30px\")\r\n .text(node.value.value);\r\n }\r\n}\r\n\r\nfunction drawPorts(node, nodeId, g, color, fill=\"white\") {\r\n g.append(\"rect\")\r\n .attr(\"id\", nodeId)\r\n .attr(\"x\", node.x - node.width / 2)\r\n .attr(\"y\", node.y - node.height / 2)\r\n .attr(\"width\", node.width)\r\n .attr(\"height\", node.height)\r\n .style(\"fill\", fill)\r\n .style(\"stroke\", color)\r\n .style(\"stroke-width\", 2);\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (node.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x + node.width / 2 - 12)\r\n .attr(\"y\", node.y - node.height / 2 + 12 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"15px\")\r\n .text(node.metadata).on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[node.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });;\r\n }\r\n if (node.label !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", node.x)\r\n .attr(\"y\", node.y)\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"27px\")\r\n .text(node.label);\r\n }\r\n}\r\n\r\nfunction drawOuterBoxFull(g, bbox, width, height, padding, ranksep, color, body_num, imported=false, layout) {\r\n // 绘制外框\r\n const selection = g.insert(\"rect\", \":first-child\")\r\n .attr(\"id\", \"frame\" + body_num)\r\n .attr(\"x\", bbox.x - padding)\r\n .attr(\"y\", bbox.y - padding + ranksep)\r\n .attr(\"rx\", 15)\r\n .attr(\"ry\", 15)\r\n .attr(\"width\", width - padding * 2)\r\n .attr(\"height\", height - padding * 2 - ranksep * 2)\r\n .style(\"fill\", \"transparent\")\r\n .style(\"stroke\", color)\r\n .style(\"stroke-width\", 5)\r\n .lower();\r\n if (imported) {\r\n selection.style(\"stroke-dasharray\", \"10,5\");\r\n }\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (layout.meta.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", bbox.x - padding + (width - 2*padding) - 17)\r\n .attr(\"y\", bbox.y - padding + ranksep + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"17px\")\r\n .text(layout.meta.metadata).on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[layout.meta.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });;\r\n }\r\n}\r\n\r\nfunction drawOuterBoxBottom(g, bbox, width, height, padding, ranksep, color, body_num, imported=false, layout) {\r\n // 绘制外框\r\n const selection = g.insert(\"rect\", \":first-child\")\r\n .attr(\"id\", \"frame\" + body_num)\r\n .attr(\"x\", bbox.x - padding)\r\n .attr(\"y\", bbox.y - padding - ranksep / 10)\r\n .attr(\"rx\", 15)\r\n .attr(\"ry\", 15)\r\n .attr(\"width\", width - padding * 2)\r\n .attr(\"height\", height - padding * 2 - ranksep)\r\n .style(\"fill\", \"transparent\")\r\n .style(\"stroke\", color)\r\n .style(\"stroke-width\", 5)\r\n .lower();\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (layout.meta.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", bbox.x - padding + (width - 2*padding) - 17)\r\n .attr(\"y\", bbox.y - padding - ranksep / 10 + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"17px\")\r\n .text(layout.meta.metadata).on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[layout.meta.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });;\r\n }\r\n if (imported) {\r\n selection.style(\"stroke-dasharray\", \"10,5\");\r\n }\r\n}\r\n\r\nfunction drawOuterBoxTop(g, bbox, width, height, padding, ranksep, color, body_num, imported=false, layout) {\r\n // 绘制外框\r\n const selection = g.insert(\"rect\", \":first-child\")\r\n .attr(\"id\", \"frame\" + body_num)\r\n .attr(\"x\", bbox.x - padding)\r\n .attr(\"y\", bbox.y - padding + ranksep * 2)\r\n .attr(\"rx\", 15)\r\n .attr(\"ry\", 15)\r\n .attr(\"width\", width - padding * 2)\r\n .attr(\"height\", height - padding * 2 - ranksep)\r\n .style(\"fill\", \"transparent\")\r\n .style(\"stroke\", color)\r\n .style(\"stroke-width\", 5)\r\n .lower();\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (layout.meta.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", bbox.x - padding + (width - 2*padding) - 17)\r\n .attr(\"y\", bbox.y - padding + ranksep * 10 + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"17px\")\r\n .text(layout.meta.metadata).on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[layout.meta.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });;\r\n }\r\n if (imported) {\r\n selection.style(\"stroke-dasharray\", \"10,5\");\r\n }\r\n}\r\n\r\nfunction drawOuterBoxEmpty(g, bbox, width, height, padding, ranksep, color, body_num, imported=false, layout) {\r\n // 绘制外框\r\n if (bbox.x===Infinity || bbox.x === -Infinity){\r\n bbox.x = 100;\r\n bbox.y = 100;\r\n width = 200;\r\n height = 200;\r\n }\r\n const selection = g.insert(\"rect\", \":first-child\")\r\n .attr(\"id\", \"frame\" + body_num)\r\n .attr(\"x\", bbox.x - padding)\r\n .attr(\"y\", bbox.y - padding)\r\n .attr(\"rx\", 15)\r\n .attr(\"ry\", 15)\r\n .attr(\"width\", width - padding * 2)\r\n .attr(\"height\", height - padding * 2)\r\n .style(\"fill\", \"transparent\")\r\n .style(\"stroke\", color)\r\n .style(\"stroke-width\", 5)\r\n .lower();\r\n var tooltip = d3.select(\"#tooltip\");\r\n const gromet = getGromet();\r\n const metadata_collection = gromet.metadata_collection;\r\n if (layout.meta.metadata !== undefined){\r\n g.append(\"text\") // 添加节点的label\r\n .attr(\"x\", bbox.x - padding + (width - 2*padding) - 17)\r\n .attr(\"y\", bbox.y - padding + 17 )\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"dominant-baseline\", \"middle\")\r\n .style(\"font-size\", \"17px\")\r\n .text(layout.meta.metadata).on(\"mouseover\", function(d) {\r\n var formattedJson = JSON.stringify(metadata_collection[layout.meta.metadata-1], null, 2);\r\n tooltip.style(\"opacity\", 0.9)\r\n .html(\"
\" + formattedJson + \"
\")\r\n .style(\"left\", \"0px\") // 在text宽度的基础上加上一些偏移\r\n .style(\"top\", \"70px\");\r\n })\r\n .on(\"mouseout\", function(d) {\r\n tooltip.style(\"opacity\", 0);\r\n });;\r\n }\r\n if (imported) {\r\n selection.style(\"stroke-dasharray\", \"10,5\");\r\n }\r\n}\r\n \n\n\n// WEBPACK FOOTER //\n// ./src/utils/drawBox.js","\r\n\r\n\r\n\r\n\r\n\n\n\n// WEBPACK FOOTER //\n// src/App.vue","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"app\"}},[_c('div',{staticClass:\"menu\"},[_vm._v(\"\\n Current Supported Skema Version:\\n \"),_c('span',{staticStyle:{\"white-space\":\"pre\",\"color\":\"tomato\",\"font-weight\":\"bold\"}},[_vm._v(\"0.1.7 \")]),_vm._v(\" \"),_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.selectedOption),expression:\"selectedOption\"}],staticClass:\"my-select\",attrs:{\"placeholder\":\"Select\"},on:{\"change\":[function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.selectedOption=$event.target.multiple ? $$selectedVal : $$selectedVal[0]},_vm.fetchData]}},_vm._l((_vm.options),function(option){return _c('option',{key:option.value,domProps:{\"value\":option.value}},[_vm._v(\"\\n \"+_vm._s(option.text)+\"\\n \")])}),0),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.url),expression:\"url\"}],staticClass:\"url-input\",attrs:{\"type\":\"text\",\"placeholder\":\"Input URL of JSON file here.\"},domProps:{\"value\":(_vm.url)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.url=$event.target.value}}}),_vm._v(\" \"),_c('button',{on:{\"click\":_vm.submitUrl}},[_vm._v(\"Submit\")]),_vm._v(\" \"),_c('input',{ref:\"fileInput\",staticStyle:{\"display\":\"none\"},attrs:{\"type\":\"file\"},on:{\"change\":_vm.handleFileChange}}),_vm._v(\" \"),_c('button',{staticClass:\"btn btn-primary\",style:({ margin: '0 30px', backgroundColor: 'tomato', color: 'white', border: 'none' }),on:{\"click\":_vm.triggerFileInput}},[_vm._v(\"\\n Choose File\\n \")]),_vm._v(\" \"),_c('button',{staticClass:\"btn btn-primary download-button\",on:{\"click\":_vm.downloadSVG}},[_vm._v(\"downloadSVG\")]),_vm._v(\" \"),_c('button',{staticClass:\"btn btn-primary\",style:({ margin: '0 30px', backgroundColor: 'green', color: 'white', border: 'none' }),on:{\"click\":_vm.showPreviousBox}},[_vm._v(\"\\n Parent Box\\n \")])]),_vm._v(\" \"),_c('div',{staticClass:\"content\"},[_c('div',{staticClass:\"editor-box\"},[_c('label',{attrs:{\"for\":\"deep-select\"}},[_vm._v(\"Select Display Depth: \")]),_vm._v(\" \"),_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.selectedDeep),expression:\"selectedDeep\"}],attrs:{\"id\":\"deep-select\"},on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.selectedDeep=$event.target.multiple ? $$selectedVal : $$selectedVal[0]}}},_vm._l((_vm.possibleDepths),function(num){return _c('option',{key:num,domProps:{\"value\":num}},[_vm._v(\"\\n \"+_vm._s(num)+\"\\n \")])}),0),_vm._v(\" \"),_c('vue-json-pretty',{attrs:{\"data\":_vm.highlightedJson,\"editable\":true,\"highlight-array\":_vm.highlightNode,\"deep\":_vm.selectedDeep},nativeOn:{\"click\":function($event){return _vm.jsonClick.apply(null, arguments)}}})],1),_vm._v(\" \"),_c('div',{staticClass:\"svg-container\"},[_c('div',{staticClass:\"tooltip\",staticStyle:{\"opacity\":\"0\"},attrs:{\"id\":\"tooltip\"}}),_vm._v(\" \"),_c('label',{attrs:{\"for\":\"startingFN\"}},[_vm._v(\"Initial #(Entry): \")]),_vm._v(\" \"),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.startingFN),expression:\"startingFN\"}],domProps:{\"value\":(_vm.startingFN)},on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }return _vm.drawMoviz.apply(null, arguments)},\"input\":function($event){if($event.target.composing){ return; }_vm.startingFN=$event.target.value}}}),_vm._v(\" \"),_c('svg',{ref:\"svgMoviz\",attrs:{\"id\":\"mainsvg\",\"width\":\"1200\",\"height\":\"1000\",\"overflow\":\"visible\"}},[_c('g',{attrs:{\"id\":\"sumGroup\"}})])])])])}\nvar staticRenderFns = []\nvar esExports = { render: render, staticRenderFns: staticRenderFns }\nexport default esExports\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/vue-loader/lib/template-compiler?{\"id\":\"data-v-001c9dd8\",\"hasScoped\":true,\"transformToRequire\":{\"video\":[\"src\",\"poster\"],\"source\":\"src\",\"img\":\"src\",\"image\":\"xlink:href\"},\"buble\":{\"transforms\":{}}}!./node_modules/vue-loader/lib/selector.js?type=template&index=0!./src/App.vue\n// module id = null\n// module chunks = ","function injectStyle (ssrContext) {\n require(\"!!../node_modules/extract-text-webpack-plugin/dist/loader.js?{\\\"omit\\\":1,\\\"remove\\\":true}!vue-style-loader!css-loader?{\\\"sourceMap\\\":true}!../node_modules/vue-loader/lib/style-compiler/index?{\\\"vue\\\":true,\\\"id\\\":\\\"data-v-001c9dd8\\\",\\\"scoped\\\":true,\\\"hasInlineConfig\\\":false}!../node_modules/vue-loader/lib/selector?type=styles&index=0!./App.vue\")\n}\nvar normalizeComponent = require(\"!../node_modules/vue-loader/lib/component-normalizer\")\n/* script */\nexport * from \"!!babel-loader!../node_modules/vue-loader/lib/selector?type=script&index=0!./App.vue\"\nimport __vue_script__ from \"!!babel-loader!../node_modules/vue-loader/lib/selector?type=script&index=0!./App.vue\"\n/* template */\nimport __vue_template__ from \"!!../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-001c9dd8\\\",\\\"hasScoped\\\":true,\\\"transformToRequire\\\":{\\\"video\\\":[\\\"src\\\",\\\"poster\\\"],\\\"source\\\":\\\"src\\\",\\\"img\\\":\\\"src\\\",\\\"image\\\":\\\"xlink:href\\\"},\\\"buble\\\":{\\\"transforms\\\":{}}}!../node_modules/vue-loader/lib/selector?type=template&index=0!./App.vue\"\n/* template functional */\nvar __vue_template_functional__ = false\n/* styles */\nvar __vue_styles__ = injectStyle\n/* scopeId */\nvar __vue_scopeId__ = \"data-v-001c9dd8\"\n/* moduleIdentifier (server only) */\nvar __vue_module_identifier__ = null\nvar Component = normalizeComponent(\n __vue_script__,\n __vue_template__,\n __vue_template_functional__,\n __vue_styles__,\n __vue_scopeId__,\n __vue_module_identifier__\n)\n\nexport default Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/App.vue\n// module id = null\n// module chunks = ","import Vue from 'vue';\r\nimport Router from 'vue-router';\r\nimport App from '@/App';\r\n// import Moviz from '@/components/Moviz';\r\n\r\nVue.use(Router);\r\n\r\nexport default new Router({\r\n routes: [\r\n {\r\n // path: '/',\r\n // name: 'Moviz',\r\n // component: Moviz,\r\n path: '/',\r\n name: 'Moviz',\r\n component: App,\r\n },\r\n ],\r\n mode: 'hash',\r\n});\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/router/index.js","// The Vue build version to load with the `import` command\r\n// (runtime-only or standalone) has been set in webpack.base.conf with an alias.\r\nimport 'bootstrap/dist/css/bootstrap.css';\r\nimport Vue from 'vue';\r\nimport App from './App';\r\nimport router from './router';\r\n\r\nVue.config.productionTip = false;\r\n\r\n/* eslint-disable no-new */\r\nnew Vue({\r\n el: '#app',\r\n router,\r\n components: { App },\r\n template: '',\r\n});\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/main.js","module.exports = {\"name\":\"d3-flextree\",\"version\":\"2.1.2\",\"main\":\"build/d3-flextree.js\",\"module\":\"index\",\"jsnext:main\":\"index\",\"author\":{\"name\":\"Chris Maloney\",\"url\":\"http://chrismaloney.org\"},\"description\":\"Flexible tree layout algorithm that allows for variable node sizes.\",\"keywords\":[\"d3\",\"d3-module\",\"layout\",\"tree\",\"hierarchy\",\"d3-hierarchy\",\"plugin\",\"d3-plugin\",\"infovis\",\"visualization\",\"2d\"],\"homepage\":\"https://github.com/klortho/d3-flextree\",\"license\":\"WTFPL\",\"repository\":{\"type\":\"git\",\"url\":\"https://github.com/klortho/d3-flextree.git\"},\"scripts\":{\"clean\":\"rm -rf build demo test\",\"build:demo\":\"rollup -c --environment BUILD:demo\",\"build:dev\":\"rollup -c --environment BUILD:dev\",\"build:prod\":\"rollup -c --environment BUILD:prod\",\"build:test\":\"rollup -c --environment BUILD:test\",\"build\":\"rollup -c\",\"lint\":\"eslint index.js src\",\"test:main\":\"node test/bundle.js\",\"test:browser\":\"node test/browser-tests.js\",\"test\":\"npm-run-all test:*\",\"prepare\":\"npm-run-all clean build lint test\"},\"dependencies\":{\"d3-hierarchy\":\"^1.1.5\"},\"devDependencies\":{\"babel-plugin-external-helpers\":\"^6.22.0\",\"babel-preset-es2015-rollup\":\"^3.0.0\",\"d3\":\"^4.13.0\",\"d3-selection-multi\":\"^1.0.1\",\"eslint\":\"^4.19.1\",\"jsdom\":\"^11.6.2\",\"npm-run-all\":\"^4.1.2\",\"rollup\":\"^0.55.3\",\"rollup-plugin-babel\":\"^2.7.1\",\"rollup-plugin-commonjs\":\"^8.0.2\",\"rollup-plugin-copy\":\"^0.2.3\",\"rollup-plugin-json\":\"^2.3.0\",\"rollup-plugin-node-resolve\":\"^3.0.2\",\"rollup-plugin-uglify\":\"^3.0.0\",\"uglify-es\":\"^3.3.9\"}}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/d3-flextree/package.json\n// module id = p+Xa\n// module chunks = 1"],"sourceRoot":""} \ No newline at end of file diff --git a/static/js/manifest.8bffe54c7880a341a260.js.map b/static/js/manifest.8bffe54c7880a341a260.js.map index 3583c35..fbf9377 100644 --- a/static/js/manifest.8bffe54c7880a341a260.js.map +++ b/static/js/manifest.8bffe54c7880a341a260.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///webpack/bootstrap 65d811eeeabf1cfe0f0f"],"names":["parentJsonpFunction","window","chunkIds","moreModules","executeModules","moduleId","chunkId","result","i","resolves","length","installedChunks","push","Object","prototype","hasOwnProperty","call","modules","shift","__webpack_require__","s","installedModules","2","exports","module","l","m","c","d","name","getter","o","defineProperty","configurable","enumerable","get","n","__esModule","object","property","p","oe","err","console","error"],"mappings":"aACA,IAAAA,EAAAC,OAAA,aACAA,OAAA,sBAAAC,EAAAC,EAAAC,GAIA,IADA,IAAAC,EAAAC,EAAAC,EAAAC,EAAA,EAAAC,KACQD,EAAAN,EAAAQ,OAAoBF,IAC5BF,EAAAJ,EAAAM,GACAG,EAAAL,IACAG,EAAAG,KAAAD,EAAAL,GAAA,IAEAK,EAAAL,GAAA,EAEA,IAAAD,KAAAF,EACAU,OAAAC,UAAAC,eAAAC,KAAAb,EAAAE,KACAY,EAAAZ,GAAAF,EAAAE,IAIA,IADAL,KAAAE,EAAAC,EAAAC,GACAK,EAAAC,QACAD,EAAAS,OAAAT,GAEA,GAAAL,EACA,IAAAI,EAAA,EAAYA,EAAAJ,EAAAM,OAA2BF,IACvCD,EAAAY,IAAAC,EAAAhB,EAAAI,IAGA,OAAAD,GAIA,IAAAc,KAGAV,GACAW,EAAA,GAIA,SAAAH,EAAAd,GAGA,GAAAgB,EAAAhB,GACA,OAAAgB,EAAAhB,GAAAkB,QAGA,IAAAC,EAAAH,EAAAhB,IACAG,EAAAH,EACAoB,GAAA,EACAF,YAUA,OANAN,EAAAZ,GAAAW,KAAAQ,EAAAD,QAAAC,IAAAD,QAAAJ,GAGAK,EAAAC,GAAA,EAGAD,EAAAD,QAKAJ,EAAAO,EAAAT,EAGAE,EAAAQ,EAAAN,EAGAF,EAAAS,EAAA,SAAAL,EAAAM,EAAAC,GACAX,EAAAY,EAAAR,EAAAM,IACAhB,OAAAmB,eAAAT,EAAAM,GACAI,cAAA,EACAC,YAAA,EACAC,IAAAL,KAMAX,EAAAiB,EAAA,SAAAZ,GACA,IAAAM,EAAAN,KAAAa,WACA,WAA2B,OAAAb,EAAA,SAC3B,WAAiC,OAAAA,GAEjC,OADAL,EAAAS,EAAAE,EAAA,IAAAA,GACAA,GAIAX,EAAAY,EAAA,SAAAO,EAAAC,GAAsD,OAAA1B,OAAAC,UAAAC,eAAAC,KAAAsB,EAAAC,IAGtDpB,EAAAqB,EAAA,iBAGArB,EAAAsB,GAAA,SAAAC,GAA8D,MAApBC,QAAAC,MAAAF,GAAoBA","file":"static/js/manifest.8bffe54c7880a341a260.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tvar parentJsonpFunction = window[\"webpackJsonp\"];\n \twindow[\"webpackJsonp\"] = function webpackJsonpCallback(chunkIds, moreModules, executeModules) {\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [], result;\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(chunkIds, moreModules, executeModules);\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n \t\tif(executeModules) {\n \t\t\tfor(i=0; i < executeModules.length; i++) {\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = executeModules[i]);\n \t\t\t}\n \t\t}\n \t\treturn result;\n \t};\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// objects to store loaded and loading chunks\n \tvar installedChunks = {\n \t\t2: 0\n \t};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/moviz-client/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 65d811eeeabf1cfe0f0f"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:///webpack/bootstrap ff1bc1733a963ea328f8"],"names":["parentJsonpFunction","window","chunkIds","moreModules","executeModules","moduleId","chunkId","result","i","resolves","length","installedChunks","push","Object","prototype","hasOwnProperty","call","modules","shift","__webpack_require__","s","installedModules","2","exports","module","l","m","c","d","name","getter","o","defineProperty","configurable","enumerable","get","n","__esModule","object","property","p","oe","err","console","error"],"mappings":"aACA,IAAAA,EAAAC,OAAA,aACAA,OAAA,sBAAAC,EAAAC,EAAAC,GAIA,IADA,IAAAC,EAAAC,EAAAC,EAAAC,EAAA,EAAAC,KACQD,EAAAN,EAAAQ,OAAoBF,IAC5BF,EAAAJ,EAAAM,GACAG,EAAAL,IACAG,EAAAG,KAAAD,EAAAL,GAAA,IAEAK,EAAAL,GAAA,EAEA,IAAAD,KAAAF,EACAU,OAAAC,UAAAC,eAAAC,KAAAb,EAAAE,KACAY,EAAAZ,GAAAF,EAAAE,IAIA,IADAL,KAAAE,EAAAC,EAAAC,GACAK,EAAAC,QACAD,EAAAS,OAAAT,GAEA,GAAAL,EACA,IAAAI,EAAA,EAAYA,EAAAJ,EAAAM,OAA2BF,IACvCD,EAAAY,IAAAC,EAAAhB,EAAAI,IAGA,OAAAD,GAIA,IAAAc,KAGAV,GACAW,EAAA,GAIA,SAAAH,EAAAd,GAGA,GAAAgB,EAAAhB,GACA,OAAAgB,EAAAhB,GAAAkB,QAGA,IAAAC,EAAAH,EAAAhB,IACAG,EAAAH,EACAoB,GAAA,EACAF,YAUA,OANAN,EAAAZ,GAAAW,KAAAQ,EAAAD,QAAAC,IAAAD,QAAAJ,GAGAK,EAAAC,GAAA,EAGAD,EAAAD,QAKAJ,EAAAO,EAAAT,EAGAE,EAAAQ,EAAAN,EAGAF,EAAAS,EAAA,SAAAL,EAAAM,EAAAC,GACAX,EAAAY,EAAAR,EAAAM,IACAhB,OAAAmB,eAAAT,EAAAM,GACAI,cAAA,EACAC,YAAA,EACAC,IAAAL,KAMAX,EAAAiB,EAAA,SAAAZ,GACA,IAAAM,EAAAN,KAAAa,WACA,WAA2B,OAAAb,EAAA,SAC3B,WAAiC,OAAAA,GAEjC,OADAL,EAAAS,EAAAE,EAAA,IAAAA,GACAA,GAIAX,EAAAY,EAAA,SAAAO,EAAAC,GAAsD,OAAA1B,OAAAC,UAAAC,eAAAC,KAAAsB,EAAAC,IAGtDpB,EAAAqB,EAAA,iBAGArB,EAAAsB,GAAA,SAAAC,GAA8D,MAApBC,QAAAC,MAAAF,GAAoBA","file":"static/js/manifest.8bffe54c7880a341a260.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tvar parentJsonpFunction = window[\"webpackJsonp\"];\n \twindow[\"webpackJsonp\"] = function webpackJsonpCallback(chunkIds, moreModules, executeModules) {\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [], result;\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(chunkIds, moreModules, executeModules);\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n \t\tif(executeModules) {\n \t\t\tfor(i=0; i < executeModules.length; i++) {\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = executeModules[i]);\n \t\t\t}\n \t\t}\n \t\treturn result;\n \t};\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// objects to store loaded and loading chunks\n \tvar installedChunks = {\n \t\t2: 0\n \t};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/moviz-client/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap ff1bc1733a963ea328f8"],"sourceRoot":""} \ No newline at end of file