﻿@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    src: local("Montserrat Regular"), local("Montserrat-Regular"), url("../../fonts/montserrat-v12-latin-regular.woff2") format("woff2"), url("../../fonts/montserrat-v12-latin-regular.woff") format("woff");
    /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

.wg-text--red {
    color: #d04435;
}

html {
    font-size: 0.75rem;
    scroll-behavior: smooth;
}

body {
    font-family: "Montserrat", sans-serif;
    color: #233845;
}

a {
    color: #00A0AF;
    cursor: pointer;
}

.wg-accordion__toggle {
    display: flex;
    justify-content: space-between;
    padding: .75rem 1rem;
    border-bottom: 1px solid #ddd;
    cursor: pointer;
}

    .wg-accordion__toggle .wg-accordion__icon {
        transform: rotate(180deg);
    }

    .wg-accordion__toggle.closed .wg-accordion__icon {
        transform: rotate(0);
    }

.wg-accordion__toggle--category {
    color: #89c440;
}

h5.wg-accordion__toggle {
    border-bottom: none;
    margin-bottom: 0;
    padding: 0;
}

.wg-alert {
    padding: 1rem 1.25rem;
    border-radius: 0;
    border: 0;
}

.wg-alert-small {
    margin-bottom: 0;
}

.wg-alert--success,
.level--success {
    background-color: #f1f8e8;
    fill: #89c440;
    border-left: 3px solid #89c440;
}

    .wg-alert--success .wg-row__item-text,
    .wg-alert--success .wg-alert__message-text,
    .level--success .wg-row__item-text,
    .level--success .wg-alert__message-text {
        color: #7cb337;
    }

.wg-alert--error {
    color: #d04435;
}

.wg-alert--error,
.level--error,
.field-validation-error {
    background-color: #f9e8e6;
    fill: #d04435;
    border-left: 3px solid #d04435;
}

    .wg-alert--error .wg-row__item-text,
    .wg-alert--error .wg-alert__message-text,
    .level--error .wg-row__item-text,
    .level--error .wg-alert__message-text,
    .field-validation-error .wg-row__item-text,
    .field-validation-error .wg-alert__message-text {
        color: #be3b2d;
    }

.wg-alert--warning {
    color: #ee7b17;
}

.wg-alert--warning,
.level--warning {
    background-color: #fdecde;
    fill: #f29b50;
    border-left: 3px solid #f29b50;
}

    .wg-alert--warning .wg-row__item-text,
    .wg-alert--warning .wg-alert__message-text,
    .level--warning .wg-row__item-text,
    .level--warning .wg-alert__message-text {
        color: #ee7b17;
    }

.wg-alert--info {
    color: #2d62be;
}

.wg-alert--info,
.level--info {
    background-color: #e6edf9;
    fill: #356dd0;
    border-left: 3px solid #356dd0;
}

    .wg-alert--info .wg-row__item-text, .wg-alert--info .wg-alert__message-text,
    .level--info .wg-row__item-text,
    .level--info .wg-alert__message-text {
        color: #2d62be;
    }

.wg-alert--debug {
    color: #618295;
}

.wg-alert--debug,
.level--debug {
    background-color: #eaeaea;
    fill: #849faf;
    border-left: 3px solid #849faf;
}

    .wg-alert--debug .wg-row__item-text,
    .level--debug .wg-row__item-text {
        color: #618295;
    }

.wg-alert__message-icon {
    position: absolute;
    top: 11px;
    left: -9px;
    z-index: 1;
}

.wg-button-wrap {
    display: flex;
    margin: 1rem 0 2rem 0;
}

    .wg-button-wrap > * + * {
        margin-left: 1rem;
    }

.wg-button-wrap-right {
    justify-content: flex-end;
    display: flex;
    margin: 1rem 0 1rem 0;
}

    .wg-button-wrap-right > * + * {
        margin-left: 1rem;
    }

.wg-btn {
    padding: .75rem 1.25rem;
    line-height: 1;
    border: 0;
    transition: color ease-in-out 0.2s;
}

    .wg-btn:hover {
        color: white;
    }

    .wg-btn.disabled, .wg-btn[disabled] {
        cursor: not-allowed;
    }

.wg-btn--green {
    background-color: #89c440;
    color: #fff;
}

    .wg-btn--green:hover {
        background-color: #6ea031;
        color: white;
    }

    .wg-btn--green:focus {
        box-shadow: 0 0 0 0.2rem rgba(137, 196, 64, 0.5);
    }

.wg-btn--teal {
    background-color: #00A0AF;
    color: #fff;
}

    .wg-btn--teal:hover {
        background-color: #00717c;
        color: #fff;
    }

    .wg-btn--teal:focus {
        box-shadow: 0 0 0 0.2rem rgba(53, 207, 199, 0.5);
    }

    .wg-btn--teal.disabled, .wg-btn--teal[disabled], .wg-btn--teal.disabled:hover, .wg-btn--teal[disabled]:hover {
        background-color: #83a8ac;
        cursor: not-allowed;
    }

.wg-btn--purple {
    background-color: #894c92;
    color: #fff;
}

    .wg-btn--purple:hover {
        background-color: #6a3b70;
        color: #fff;
    }

    .wg-btn--purple:focus {
        box-shadow: 0 0 0 0.2rem rgba(137, 76, 146, 0.5);
    }

    .wg-btn--purple.disabled, .wg-btn--purple[disabled], .wg-btn--purple.disabled:hover, .wg-btn--purple[disabled]:hover {
        background-color: #afafaf;
        cursor: not-allowed;
    }

.wg-btn--grey {
    background-color: #849faf;
    color: #fff;
}

    .wg-btn--grey:hover {
        background-color: #65879b;
        color: #fff;
    }

    .wg-btn--grey:focus {
        box-shadow: 0 0 0 0.2rem rgba(132, 159, 175, 0.5);
    }

    .wg-btn--grey.disabled, .wg-btn--grey[disabled], .wg-btn--grey.disabled:hover, .wg-btn--grey[disabled]:hover {
        background-color: #d9d9d9;
        cursor: not-allowed;
    }

.wg-btn--red {
    background-color: #d04435;
    color: #fff;
}

    .wg-btn--red:hover {
        background-color: #a93528;
        color: #fff;
    }

    .wg-btn--red:focus {
        box-shadow: 0 0 0 0.2rem rgba(208, 68, 53, 0.5);
    }

    .wg-btn--red.disabled, .wg-btn--red[disabled], .wg-btn--red.disabled:hover, .wg-btn--red[disabled]:hover {
        background-color: #c2c2c2;
        cursor: not-allowed;
    }

.wg-btn--black {
    background-color: #000000;
    color: #ffffff;
}

    .wg-btn--black:hover {
        background-color: #333333;
        color: #ffffff;
    }

    .wg-btn--black:focus {
        box-shadow: 0 0 0 0.2rem rgba(0, 0, 0, 0.5);
    }

    .wg-btn--black.disabled, .wg-btn--black[disabled], .wg-btn--black.disabled:hover, .wg-btn--black[disabled]:hover {
        background-color: #c2c2c2;
        cursor: not-allowed;
    }

.wg-btn + .wg-btn {
    margin-left: 1rem;
}

.wg-btn-outline--red {
    border-color: #d04435;
    fill: #d04435;
    background-color: #f9e8e6;
}

.wg-btn-outline--green {
    border-color: #89c440;
    fill: #89c440;
    background-color: #f1f8e8;
}

.wg-btn--icon {
    padding: 0px;
    background: transparent;
}

    .wg-btn--icon:hover {
        filter: invert(26%) sepia(97%) saturate(2354%) hue-rotate(215deg) brightness(96%) contrast(107%);
    }

    .wg-btn--icon:focus {
        box-shadow: none;
        outline: none;
    }

    .wg-btn--icon > img {
        width: 1.5rem;
        height: 1.5rem;
    }

.wg-controls-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.wg-control__text {
    white-space: nowrap;
    width: 80px;
    margin-left: 1rem;
}

.wg-control__text_outline {
    white-space: nowrap;
    width: 80px;
    margin-left: 1rem;
    outline: 1px solid #00A0AF;
    text-align: center;
    border-radius: 0.25rem;
    align-content: center;
}

.wg-dropdown {
    position: inherit;
}

.wg-dropdown-menu {
    background-color: #233845;
}

.wg-dropdown-item {
    color: white;
    transition: color ease-in-out 0.2s;
}

    .wg-dropdown-item:hover {
        background-color: transparent;
        color: #35cfc7;
    }

.wg-dropdown-toggle {
    display: flex;
    align-items: center;
    padding: 0;
}

    .wg-dropdown-toggle::after {
        margin-left: .5rem;
    }

.wg-main-menu__inner {
    display: inline-flex;
    flex-wrap: wrap;
    min-width: calc(100vw - 243px);
}

    .wg-main-menu__inner > div {
        flex-basis: 140px;
    }

.wg-flex-table--bordered .wg-flex-table__row + .wg-flex-table__row {
    border-top: 1px solid #dee2e6;
}

.wg-flex-table__row {
    display: flex;
    align-items: center;
}

.wg-flex-table__row--heading {
    border-bottom: 2px solid #ddd;
    font-weight: bold;
    margin-bottom: 0.5rem;
}

.wg-flex-table__row > * {
    padding: .25rem;
}

.wg-flex-table__body {
    max-height: 500px;
    overflow-y: auto;
}

.wg-footer {
    font-size: 12px;
    border-top: 1px solid #ced4da;
    padding: 1rem;
    display: flex;
    justify-content: space-between;
}

@media (max-width: 768px) {
    .wg-footer {
        display: block;
        text-align: center;
    }
}

.wg-form__label {
    font-weight: 700;
    margin-bottom: 0.25rem;
}

.wg-form__label--required:after {
    content: '*';
    display: inline-block;
    font-size: 1.1rem;
    font-weight: 700;
    padding-left: 0.5rem;
}

.wg-form__control--tall {
    height: calc(1.5em + 0.75rem + 10px);
}

.wg-form__control:focus {
    border-color: rgba(53, 207, 199, 0.5);
    box-shadow: 0 0 0 0.2rem rgba(53, 207, 199, 0.25);
}

.wg-form__control.invalid-input {
    border-color: rgba(208, 68, 53, 0.5);
    box-shadow: 0 0 0 0.2rem rgba(208, 68, 53, 0.25);
}

.wg-form-control-plaintext {
    min-height: 34px;
}

.wg-form-control-plaintext-wrap {
    height: 150px;
    overflow-y: auto;
    border: 1px solid #ced4da;
    padding: 0.375rem 0.75rem;
}

.wg-form__control--stacked + .wg-form__control--stacked {
    margin-top: .5rem;
}

.wg-form__control--compact {
    line-height: 1;
    height: auto;
    padding: .25rem;
}

textarea.wg-form__control {
    min-height: 150px;
}

.wg-form__switch {
    display: inline-block;
    height: 34px;
    position: relative;
    width: 60px;
    margin-bottom: 0;
}

    .wg-form__switch input {
        display: none;
    }

.wg-form__switch-slider {
    background-color: #ccc;
    bottom: 0;
    cursor: pointer;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transition: .4s;
    border-radius: 34px;
}

    .wg-form__switch-slider:before {
        background-color: #fff;
        bottom: 4px;
        content: "";
        height: 26px;
        left: 4px;
        position: absolute;
        transition: .4s;
        width: 26px;
        border-radius: 50%;
    }

input:checked + .wg-form__switch-slider {
    background-color: #5DDB3D;
}

    input:checked + .wg-form__switch-slider:before {
        transform: translateX(26px);
    }

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
input[type=number] {
    -moz-appearance: textfield;
}

.wg-kp-slider {
    margin: 0 1rem;
}

.wg-kp-slider__selection {
    margin-bottom: 1rem;
}

.wg-kp-slider__min-and-max {
    display: flex;
    margin-top: 1rem;
    justify-content: space-between;
}

.wg-kp-slider__text {
    display: flex;
    align-items: center;
}

    .wg-kp-slider__text > * + * {
        margin-left: 1rem;
    }

.wg-kp-slider__slider {
    flex-grow: 1;
}

.wg-kp-slider .ui-slider-handle {
    background: #00A0AF;
    width: 2.4rem;
    height: 2.4rem;
}

.wg-kp-slider .ui-corner-all {
    border-radius: 6px;
}

.wg-kp-slider .ui-slider-horizontal .ui-slider-handle {
    top: -.9rem;
    margin-left: -1.2rem;
}

main {
    min-height: calc(100vh - 87px);
    position: relative;
}

.wg-map-container {
    height: calc(100vh - 87px);
}

@media (max-width: 768px) {
    main {
        min-height: calc(100vh - 103px);
    }

    .wg-map-container {
        height: calc(100vh - 103px);
    }
}

.wg-layout__page-logo {
    background-image: url(../../../../images/branding/teal-abstract.svg);
    background-size: cover;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
}

.wg-heading__block {
    padding: 1rem 1.5rem;
    background-color: #eaeaea;
    font-size: 2rem;
}

@supports not (mix-blend-mode: multiply) {
    .wg-layout__page-logo {
        background-image: url(../../../../images/branding/teal-abstract.png);
    }
}

.wg-section + .wg-section {
    margin-top: 2rem;
}

.wg-results-div + .wg-results-div {
    margin-top: 2rem;
    border-top: 1px solid #ccc;
    padding-top: 2rem;
}

.wg-text-block {
    line-height: 1.75;
}

.wg-flex-row {
    display: flex;
    align-items: center;
}

    .wg-flex-row > * + * {
        margin-left: .5rem;
    }

.wg-legend {
    display: flex;
    margin-bottom: 1rem;
}

.wg-legend__item {
    padding: .5rem 1rem;
}

    .wg-legend__item + .wg-legend__item {
        margin-left: 1rem;
    }

.wg-loader {
    position: fixed;
    display: flex;
    height: 100vh;
    width: 100vw;
    pointer-events: none;
    z-index: 1;
    justify-content: center;
    background-color: rgba(255, 255, 255, 0.5);
    top: 0;
    left: 0;
}

.wg-loader__icon {
    width: 100px;
    display: flex;
    margin: auto;
}

.wg-loader__icon-section {
    flex-basis: 100%;
    display: flex;
}

.wg-loader__circle {
    width: 80%;
    height: 0;
    margin: 20%;
    padding-top: 60%;
    border-radius: 100%;
    animation: pulsedelay 1.4s infinite ease-in-out both;
}

.wg-loader__circle--green {
    background-color: #89c440;
    animation-delay: -0.4s;
}

.wg-loader__circle--teal {
    background-color: #35cfc7;
    animation-delay: -0.2s;
}

.wg-loader__circle--purple {
    background-color: #894c92;
}

@keyframes pulsedelay {
    0%, 80%, 100% {
        transform: scale(0.6);
    }

    40% {
        transform: scale(1);
    }
}

.wg-icon--24 {
    width: 24px;
    height: 24px;
    cursor: pointer;
    transition: opacity 0.2s ease-in-out;
}

    .wg-icon--24:hover {
        opacity: .8;
    }

.wg-icon--16 {
    width: 16px;
    height: 16px;
    cursor: pointer;
    transition: opacity 0.2s ease-in-out;
}

    .wg-icon--16:hover {
        opacity: .8;
    }

.wg-icon--no-pointer {
    cursor: default;
}

.wg-icon--lightgrey {
    fill: #d6d6d6;
}

.wg-icon--green {
    fill: #89c440;
}

.wg-icon--teal {
    fill: #35cfc7;
}

.wg-icon--darkteal {
    fill: #00A0AF;
}

.wg-icon--bluegrey {
    fill: #738C99;
}

.wg-icon--darkblue {
    fill: #233845;
}

.wg-icon--midgrey {
    fill: #849faf;
}

.wg-icon--red {
    fill: #d04435;
}

.wg-icon--amber {
    fill: #f29b50;
}

.wg-icon--midblue {
    fill: #356dd0;
}

.wg-icon--yellow {
    fill: #EFE63F;
}

.wg-modal__mask {
    position: fixed;
    z-index: 9998;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    transition: opacity 0.2s ease-in-out;
    background-color: rgba(0, 0, 0, 0.2);
    margin: 0;
}

.wg-modal__container {
    width: 600px;
    margin-top: 4rem;
    background-color: #fff;
    border: 1px solid rgba(0, 0, 0, 0.2);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.33);
    transition: all .3s ease;
}

.wg-modal__footer {
    display: flex;
    justify-content: space-between;
    border-top: 1px solid #dee2e6;
    padding-top: 1rem;
}

.modal-enter .wg-modal__container,
.modal-leave-active .container {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}

.wg-modal-dialog--lg {
    width: 80%;
    max-width: 80%;
}

.wg-mvc-grid {
    width: 100%;
    min-height: 90px;
}

    .wg-mvc-grid th {
        background-color: #eaeaea;
    }

    .wg-mvc-grid th,
    .wg-mvc-grid td {
        border: 1px solid #eaeaea;
    }

    .wg-mvc-grid tr:hover td {
        background-color: rgba(53, 207, 199, 0.1);
    }

    .wg-mvc-grid .mvc-grid-pager .disabled,
    .wg-mvc-grid .mvc-grid-pager .disabled:focus,
    .wg-mvc-grid .mvc-grid-pager .disabled:hover {
        background-color: #eaeaea;
    }

    .wg-mvc-grid .mvc-grid-pager button {
        border-color: #eaeaea;
        border-radius: 0.25rem;
    }

    .wg-mvc-grid .mvc-grid-pager .active,
    .wg-mvc-grid .mvc-grid-pager .active:focus,
    .wg-mvc-grid .mvc-grid-pager .active:hover {
        background-color: #00A0AF;
        border-color: #00A0AF;
    }

    .wg-mvc-grid .wg-mvc-grid-guid-filter {
        min-width: 20em;
    }

    .wg-mvc-grid .mvc-grid-sort::before,
    .wg-mvc-grid .mvc-grid-sort::after {
        opacity: .25;
    }

    .wg-mvc-grid .mvc-grid-pager {
        display: flex;
        align-items: center;
        margin-bottom: 2rem;
    }

    .wg-mvc-grid .mvc-grid-page-buttons {
        margin-left: auto;
    }

    .wg-mvc-grid .checkbox-cell {
        width: 32px;
    }

    .wg-mvc-grid .icon-dropdown-cell {
        width: 50px;
    }

    .wg-mvc-grid .icon-cell {
        width: 44px;
    }

.wg-mvc-grid-popup {
    z-index: 9999;
}

    .wg-mvc-grid-popup .mvc-grid-value,
    .wg-mvc-grid-popup .mvc-grid-method,
    .wg-mvc-grid-popup .mvc-grid-operator {
        font-size: 1rem;
    }

        .wg-mvc-grid-popup .mvc-grid-value:focus,
        .wg-mvc-grid-popup .mvc-grid-method:focus,
        .wg-mvc-grid-popup .mvc-grid-operator:focus {
            border-color: rgba(53, 207, 199, 0.5);
            box-shadow: 0 0 0 0.2rem rgba(53, 207, 199, 0.25);
            outline: 0;
        }

    .wg-mvc-grid-popup .popup-actions {
        display: flex;
        justify-content: space-between;
    }

    .wg-mvc-grid-popup .mvc-grid-apply,
    .wg-mvc-grid-popup .mvc-grid-cancel {
        padding: 0.25em 1rem;
        margin: 0;
        min-width: auto;
    }

    .wg-mvc-grid-popup .mvc-grid-cancel {
        background-color: #849faf;
        border-color: #849faf;
    }

.wg-tabs--vertical {
    flex-direction: column;
    margin: 0;
    padding: 0;
    list-style: none;
    width: 250px;
}

.wg-tabs--horizontal {
    display: flex;
    flex-direction: row;
    margin: 0;
    padding: 0;
    list-style: none;
}

.wg-tab__item {
    list-style: none;
    position: relative;
}

    .wg-tab__item a {
        padding: 1rem 1.25rem;
        display: flex;
        justify-content: space-between;
        word-break: break-word;
        border: 1px solid #ddd;
        background-color: #f9f9f9;
        text-decoration: none;
        color: #333;
    }

        .wg-tab__item a.active {
            background-color: #fff;
            z-index: 2;
            position: relative;
            margin-right: -1px;
            border-bottom: none;
        }

.tab-content {
    border-top: none;
    padding: 1rem;
    width: 100%;
    background-color: #fff;
    margin-top: -1px;
}

.wg-tab__message-icon {
    position: absolute;
    top: 14px;
    left: -9px;
    z-index: 1;
}

.wg-navbar {
    box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.05);
    background-color: #233845;
    padding: .5rem 2.1rem;
}

    .wg-navbar a.wg-nav-link {
        color: white;
        transition: color ease-in-out 0.2s;
    }

        .wg-navbar a.wg-nav-link:hover {
            color: #35cfc7;
        }

    .wg-navbar .wg-navbar-toggler {
        padding: 0;
        border: 0;
    }

    .wg-navbar .wg-navbar-toggler-icon {
        background-image: url("../../images/icons/icon_menu.svg");
    }

    .wg-navbar img {
        height: 27px;
    }

.wg-navbar__brand {
    width: 88px;
    height: 30px;
    margin-right: 0;
    padding: 0;
    flex-shrink: 0;
}

.wg-page-header {
    margin: 2.5rem 0;
}

    .wg-page-header:after {
        content: "";
        border-bottom: 1px solid #2dbdb6;
        width: 130px;
        height: 0;
        display: block;
        margin-top: 1rem;
    }

.wg-page-header__subtext {
    display: block;
    font-size: 16px;
    margin-top: 1rem;
    color: #849faf;
}

.wg-pagination {
    margin-bottom: 0;
    padding-top: 1rem;
}

    .wg-pagination .page-link {
        background-color: transparent;
        border: 0;
    }

.wg-row {
    display: flex;
    padding: .75rem 1rem;
    position: relative;
    justify-content: space-between;
}

.wg-row--align-left {
    justify-content: flex-start;
    align-items: center;
}

.wg-row--height-4 {
    min-height: 4rem;
}

.wg-row--align-center {
    align-items: center;
}

.wg-row--no-pad-lr {
    padding-left: 0;
    padding-right: 0;
}

.wg-row > * + * {
    margin-left: 1rem;
}

.wg-row__sub-row {
    display: flex;
    flex-grow: 1;
    justify-content: space-between;
}

.wg-row__item--large {
    flex-grow: 1;
}

.wg-row__item--full {
    width: 100%;
    margin: 0;
}

.wg-row + .wg-row {
    border-top: 1px solid #dee2e6;
}

.wg-row__message-icon {
    position: absolute;
    top: 10px;
    left: -9px;
}

.wg-row--column {
    flex-direction: column;
}

    .wg-row--column > * + * {
        margin-left: 0;
        margin-top: .25rem;
    }

.wg-row__icon-wrap--16 {
    flex-shrink: 0;
    width: 16px;
}

.wg-row__icon-wrap--24 {
    flex-shrink: 0;
    width: 24px;
}

.wg-subnavbar {
    display: flex;
    padding: .5rem 1rem;
}

.select2-container .select2-selection--single.wg-select2-container {
    height: calc(1.5em + 0.75rem + 2px);
}

.select2-container--default .select2-selection--single.wg-select2-container {
    border-color: #ced4da;
}

    .select2-container--default .select2-selection--single.wg-select2-container .select2-selection__rendered {
        line-height: 34px;
    }

    .select2-container--default .select2-selection--single.wg-select2-container .select2-selection__arrow {
        height: 34px;
    }

.wg-select2-dropdown.select2-dropdown,
.select2-container--default .wg-select2-dropdown .select2-search--dropdown .select2-search__field {
    border-color: #ced4da;
}

    .select2-container--default .wg-select2-dropdown .select2-search--dropdown .select2-search__field:focus {
        border-color: #35cfc7;
        box-shadow: 0 0 0 0.2rem rgba(53, 207, 199, 0.25);
        outline: 0;
    }

.select2-container--default .wg-select2-dropdown .select2-results__option--highlighted[aria-selected] {
    background-color: rgba(53, 207, 199, 0.15);
    color: #233845;
}

.select2-container:focus {
    border-color: #35cfc7;
    box-shadow: 0 0 0 0.2rem rgba(53, 207, 199, 0.25);
    outline: 0;
}

.select2-container .select2-selection--single {
    height: auto !important;
    padding: 5px 0;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: normal !important;
}

.select2-container .select2-selection--single .select2-selection__rendered {
    white-space: normal !important;
}

.wg-table {
    padding-top: .25rem;
}

    .wg-table.scrollable {
        width: 100%;
    }

        .wg-table.scrollable tbody {
            display: block;
            max-height: 20rem;
            overflow-y: scroll;
        }

        .wg-table.scrollable th, .wg-table.scrollable td {
            border: 1px solid #dee2e6;
        }

        .wg-table.scrollable thead, .wg-table.scrollable tbody tr {
            display: table;
            width: 100%;
            table-layout: fixed;
        }

        .wg-table.scrollable thead {
            width: calc( 100% - 1em);
        }

    .wg-table td {
        vertical-align: middle;
    }

    .wg-table thead td {
        vertical-align: bottom;
        border-bottom: 2px solid #dee2e6;
    }

    .wg-table td.min {
        width: 1%;
        white-space: nowrap;
    }

    .wg-table.table-hover tbody tr:hover,
    .wg-table .table-hover tbody tr:hover th,
    .wg-table .table-hover tbody tr:hover td {
        background-color: rgba(53, 207, 199, 0.15);
    }

    .wg-table .form-control:focus {
        border-color: #35cfc7;
        box-shadow: 0 0 0 0.2rem rgba(53, 207, 199, 0.25);
    }

.wg-table__actions {
    margin-bottom: 1rem;
    display: flex;
}

    .wg-table__actions > * + * {
        margin-lefT: 1rem;
    }

/* Sticky table head */
.wg-sticky-table-head {
    position: relative;
}

    .wg-sticky-table-head thead tr:first-child th {
        position: sticky;
        top: 0;
        background: #efefef;
    }

    .wg-sticky-table-head thead tr:last-child th {
        position: sticky;
        top: 85px;
        background: #efefef;
    }

    .wg-sticky-table-head thead th::after {
        content: '';
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        border-bottom: 1px solid #ccc;
    }

.wg-table__header-content {
    display: flex;
    justify-content: space-between;
}

.wg-table__header-form {
    display: flex;
    align-items: center;
    align-self: flex-end;
}

    .wg-table__header-form > * {
        margin: 0 0 0 0.25rem;
    }

.wg-table__icon-cell {
    width: 42px;
}

.wg-table__checkbox-cell {
    width: 32px;
}

.wg-table--compact td, .wg-table--compact th {
    padding: 0.25rem;
}

.wg-table--big-stripes tbody:nth-child(even) {
    background: #daf6f5;
}

.wg-table__text-link {
    white-space: nowrap;
}

    .wg-table__text-link + .wg-table__text-link {
        margin-top: .25rem;
    }

.hide-repeated-header {
    visibility: hidden;
}

.wg-table__row-highlighted td {
    background-color: #FFFFBF;
}

.wg-table-cell-removed {
    background-color: rgba(137, 196, 64, 0.3);
}

.wg-table-cell-modified {
    background-color: rgba(242, 155, 80, 0.3);
}

.wg-table-cell-added {
    background-color: rgba(208, 68, 53, 0.3);
}

.wg-text-and-icon {
    display: flex;
    align-items: center;
    width: max-content;
    color: inherit;
    cursor: pointer;
}

.wg-text-and-icon--red {
    color: #d04435;
    fill: #d04435;
}

.wg-text-and-icon--grey {
    color: #849faf;
    fill: #849faf;
}

.wg-text-and-icon--amber {
    color: #f29b50;
    fill: #f29b50;
}

.wg-text-and-icon > * + * {
    margin-left: 0.5rem;
}

.wg-text-and-icon__icon {
    width: 18px;
    height: 18px;
}

.wg-text-and-icon__text {
    line-height: 1;
    font-size: 12px;
}

.fl-scrolls {
    overflow: auto;
    position: fixed;
}

    .fl-scrolls div {
        overflow: hidden;
        pointer-events: none;
    }

        .fl-scrolls div:before {
            content: "\A0";
        }

    .fl-scrolls, .fl-scrolls div {
        font-size: 1px;
        line-height: 0;
        margin: 0;
        padding: 0;
    }

.fl-scrolls-hidden div:before {
    content: "\A0\A0";
}

.fl-scrolls-viewport {
    position: relative;
}

.fl-scrolls-body {
    overflow: auto;
}

.fl-scrolls-viewport .fl-scrolls {
    position: absolute;
}

.fl-scrolls-hoverable .fl-scrolls {
    opacity: 0;
    transition: opacity .5s .3s;
}

.fl-scrolls-hoverable:hover .fl-scrolls {
    opacity: 1;
}

.fl-scrolls:not([data-orientation]), .fl-scrolls[data-orientation=horizontal] {
    bottom: 0;
    min-height: 17px;
}

    .fl-scrolls:not([data-orientation]) div, .fl-scrolls[data-orientation=horizontal] div {
        height: 1px;
    }

.fl-scrolls-hidden.fl-scrolls:not([data-orientation]), .fl-scrolls-hidden.fl-scrolls[data-orientation=horizontal] {
    bottom: 9999px;
}

.fl-scrolls-viewport .fl-scrolls:not([data-orientation]), .fl-scrolls-viewport .fl-scrolls[data-orientation=horizontal] {
    left: 0;
}

.fl-scrolls[data-orientation=vertical] {
    right: 0;
    min-width: 17px;
}

    .fl-scrolls[data-orientation=vertical] div {
        width: 1px;
    }

.fl-scrolls-hidden.fl-scrolls[data-orientation=vertical] {
    right: 9999px;
}

.fl-scrolls-viewport .fl-scrolls[data-orientation=vertical] {
    top: 0;
}

[v-cloak] {
    display: none;
}

.wg-u-is-hidden {
    display: none;
}

.wg-u-nowrap {
    white-space: nowrap;
}

.wg-u-pre-line {
    white-space: pre-line;
}

.u-info-box {
    background: #eee;
    padding: 1rem;
    margin-top: 1rem;
}

.wg-u-flex-1 {
    flex-grow: 1;
}

.wg-u-width-10 {
    min-width: 10%;
    width: 10%;
}

.wg-u-width-40 {
    min-width: 40%;
    width: 40%;
}

.wg-u-width-50 {
    min-width: 50%;
    width: 50%;
}

.wg-u-width-80 {
    min-width: 80%;
    width: 80%;
}

.wg-u-width-200 {
    min-width: 200px;
    width: 200px;
}

.wg-u-width-120 {
    min-width: 120px;
    width: 120px;
}

.wg-u-width-100 {
    min-width: 100px;
    width: 100px;
}

.wg-u-width-70 {
    min-width: 70px;
    width: 70px;
}

.wg-u-height-50vh {
    height: 50vh;
    min-height: 50vh;
}

.wg-u-height-70vh {
    height: 70vh;
    min-height: 70vh;
}

.wg-u-background-light-red {
    background-color: rgba(208, 68, 53, 0.3);
}

.wg-u-background-light-amber {
    background-color: rgba(242, 155, 80, 0.3);
}

.wg-u-background-light-green {
    background-color: rgba(137, 196, 64, 0.3);
}

.wg-u-background-light-blue {
    background-color: #e6edf9;
}

.wg-mockup-page:before {
    position: fixed;
    content: 'demonstration';
    background: red;
    color: white;
    z-index: 1;
    bottom: -35px;
    right: -67px;
    padding: 1rem;
    transform: rotate(-45deg);
    text-align: center;
    width: 180px;
    transform-origin: left;
}

.wg-u-table-fixed {
    table-layout: fixed;
}

.projectFilterButton {
    height: 15px;
    width: 15px;
    border-radius: 50%;
    display: inline-block;
}

.esri-widget.transparent {
    background-color: transparent;
    border-width: 0px;
}

@media print {
    .col-sm-9 {
        max-width: 100%;
        flex: 0 0 100%;
    }

    @page {
        size: auto;
    }
}

.page-item.active .page-link {
    background-color: #89c440;
    border-color: #89c440;
}

.tooltip {
    font-family: inherit;
}

.tooltip-inner {
    max-width: 300px;
    text-align: left;
    font-size: 1rem;
    padding: 1rem;
    background-color: #233845;
    white-space: pre-wrap;
}

.bs-tooltip-top .arrow::before,
.bs-tooltip-auto[x-placement^="top"] .arrow::before {
    border-top-color: #233845;
}

.bg-grey {
    background-color: #eaeaea;
}

.dropdown-menu {
    z-index: 1002;
}

.dropdown-menu-scrollable {
    max-height: 400px;
    overflow-y: auto;
}

.dropdown-menu li {
    position: relative;
}

.dropdown-menu .submenu {
    display: none;
    position: absolute;
    left: 100%;
    top: -7px;
}

.dropdown-menu .submenu-left {
    right: 100%;
    left: auto;
}

.dropdown-menu > li:hover {
    background-color: #f1f1f1;
}

    .dropdown-menu > li:hover > .submenu {
        display: block;
    }

.dropdown-menu.bg-dark .dropdown-item {
    color: #fff;
}

    .dropdown-menu.bg-dark .dropdown-item:focus,
    .dropdown-menu.bg-dark .dropdown-item:hover {
        color: #233845;
    }

*.no-hover-style:hover {
    background-color: transparent;
}

.dropdown-divider {
    border-color: #ced4da;
}

.navbar-dark .navbar-nav .nav-link {
    color: #eaeaea;
}

.dropdown-item.active, .dropdown-item:active {
    background-color: #00A0AF;
}

.modal-footer {
    justify-content: space-between;
}

.validation-summary-errors ul,
.validation-summary-errors li {
    padding: 0;
    margin: 0;
    list-style-type: none;
}

.input-validation-error {
    border-color: #d04435;
}

.field-validation-error {
    display: block;
    padding: 1rem 1.25rem;
}

.design-data-table .table-responsive::-webkit-scrollbar {
    width: 12px;
}

.design-data-table .table-responsive::-webkit-scrollbar-thumb {
    background-color: #888;
    border-radius: 10px;
}

    .design-data-table .table-responsive::-webkit-scrollbar-thumb:hover {
        background-color: #555;
    }

.design-data-table .table th,
.design-data-table .table td {
    border: 1px solid #dee2e6;
}

.design-data-table .table thead th {
    border-color: white;
}

.wg-truncate-text {
    max-width: 200px;
    white-space: normal;
    overflow-wrap: break-word;
    word-break: break-word;
}

.wg-navbar-notification-container {
    text-align: left;
    display: flex;
    align-items: inherit;
    justify-content: left;
    color: white;
    background: inherit;
    border-radius: 5px;
    font-size: 10px;
    padding: 5px;
}

.connector-line-error-text {
    color: red;
    font-size: 0.85rem;
    margin-top: 4px;
}

.connector-line-table-wrapper {
    max-height: 400px;
    overflow-y: auto;
    display: block;
    height: 400px;
}

.connector-line-color-box {
    width: 28px;
    height: 28px;
    cursor: pointer;
    border-radius: 0.25rem;
}

.connector-line-color-picker-wrapper {
    position: relative;
}

.connector-line-color-input {
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    width: 20px;
    height: 20px;
    cursor: pointer;
}

.connector-line-dropdown-selected {
    cursor: pointer;
}

.connector-line-dropdown-options {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    border: 2px solid #ccc;
    z-index: 10;
    max-height: 200px;
    overflow-y: auto;
    background-color: white;
}

    .connector-line-dropdown-options div:hover {
        background-color: #e0e0e0;
        cursor: pointer;
    }

.connector-line-dropdown-option {
    padding: 5px;
    cursor: pointer;
}

.connector-line-dropdown-icon {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1rem;
    color: #333;
    pointer-events: none;
    display: inline-block;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 6px solid #555;
    border-radius: 6px;
}

.connector-line-dropdown-disabled {
    background-color: #e9ecef !important;
    color: #999;
    pointer-events: none;
}

.connector-line-footer-button-group {
    display: flex;
    justify-content: flex-end;
    padding-top: 15px;
    gap: 10px;
    margin-right: 6px;
}

.comment-box {
    width: 100%;
    border: 1px solid #ddd;
    padding: 12px;
    background-color: #F5F5F5;
}

    .comment-box label {
        font-weight: bold;
        display: block;
        margin-bottom: 8px;
    }

    .comment-box textarea {
        width: 100%;
        height: 120px;
        padding: 8px;
        border: 1px solid #ccc;
        resize: none;
        font-size: 14px;
    }

.header-row {
    display: flex;
    border-bottom: 1px solid #ddd;
}

.design-container {
    padding: 30px;
    background: #fff;
    width: 100%;
}

.calcrun-input-group {
    margin-bottom: 20px;
}

.calcrun-input-label {
    font-weight: bold;
    display: block;
    margin-bottom: 8px;
}

/*# sourceMappingURL=data:application/json;base64,ewoJInZlcnNpb24iOiAzLAoJImZpbGUiOiAiU3R5bGVzL3dnLXN0eWxlLmNzcyIsCgkic291cmNlcyI6IFsKCQkiU3R5bGVzL3dnLXN0eWxlLnNjc3MiLAoJCSJTdHlsZXMvX3ZhcmlhYmxlcy5zY3NzIiwKCQkiU3R5bGVzL19mb250cy5zY3NzIiwKCQkiU3R5bGVzL193Zy1iYXNlLnNjc3MiLAoJCSJTdHlsZXMvX3dnLWFjY29yZGlvbi5zY3NzIiwKCQkiU3R5bGVzL193Zy1hbGVydC5zY3NzIiwKCQkiU3R5bGVzL193Zy1idG4uc2NzcyIsCgkJIlN0eWxlcy9fd2ctY29udHJvbHMtcm93LnNjc3MiLAoJCSJTdHlsZXMvX3dnLWRyb3Bkb3duLnNjc3MiLAoJCSJTdHlsZXMvX3dnLWZsZXgtdGFibGUuc2NzcyIsCgkJIlN0eWxlcy9fd2ctZm9vdGVyLnNjc3MiLAoJCSJTdHlsZXMvX3dnLWZvcm0uc2NzcyIsCgkJIlN0eWxlcy9fd2cta3Atc2xpZGVyLnNjc3MiLAoJCSJTdHlsZXMvX3dnLWxheW91dC5zY3NzIiwKCQkiU3R5bGVzL193Zy1sZWdlbmQuc2NzcyIsCgkJIlN0eWxlcy9fd2ctbG9hZGVyLnNjc3MiLAoJCSJTdHlsZXMvX3dnLWljb24uc2NzcyIsCgkJIlN0eWxlcy9fd2ctbW9kYWwuc2NzcyIsCgkJIlN0eWxlcy9fd2ctbXZjLWdyaWQuc2NzcyIsCgkJIlN0eWxlcy9fd2ctbmF2LXRhYnMtdmVydGljYWwuc2NzcyIsCgkJIlN0eWxlcy9fd2ctbmF2YmFyLnNjc3MiLAoJCSJTdHlsZXMvX3dnLXBhZ2UtaGVhZGVyLnNjc3MiLAoJCSJTdHlsZXMvX3dnLXBhZ2luYXRpb24uc2NzcyIsCgkJIlN0eWxlcy9fd2ctcm93LnNjc3MiLAoJCSJTdHlsZXMvX3dnLXN1Ym5hdmJhci5zY3NzIiwKCQkiU3R5bGVzL193Zy1zZWxlY3QyLnNjc3MiLAoJCSJTdHlsZXMvX3dnLXRhYmxlLnNjc3MiLAoJCSJTdHlsZXMvX3dnLXRleHQtYW5kLWljb24uc2NzcyIsCgkJIlN0eWxlcy9fZmwtc2Nyb2xscy5zY3NzIiwKCQkiU3R5bGVzL19oZWxwZXJzLnNjc3MiLAoJCSJTdHlsZXMvX3ByaW50LnNjc3MiLAoJCSJTdHlsZXMvX292ZXJyaWRlcy5zY3NzIgoJXSwKCSJuYW1lcyI6IFtdLAoJIm1hcHBpbmdzIjogIkFFWUEsVUFBVTtFQUNOLFdBQVcsRUFBRSxZQUFZO0VBQ3pCLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLEdBQUcsRUFBRSwyQkFBMkIsRUFBRSwyQkFBMkIsRUFBRSxrREFBa0QsQ0FBQyxlQUFlLEVBQ2pJLGlEQUFpRCxDQUFDLGNBQWM7RUFBRSxpREFBaUQ7O0FBR3ZILEFBQUEsYUFBYSxDQUFDO0VBQ1YsS0FBSyxFRElFLE9BQW9CLEdDSDlCOztBQ1JELEFBQUEsSUFBSSxDQUFDO0VBQ0QsU0FBUyxFRmtCRCxPQUFPLEdFakJsQjs7QUFFRCxBQUFBLElBQUksQ0FBQztFQUNELFdBQVcsRUZhRixZQUFZLEVBQUUsVUFBVTtFRVpqQyxLQUFLLEVGVEksT0FBTyxHRVVuQjs7QUFFRCxBQUFBLENBQUMsQ0FBQztFQUNFLEtBQUssRUZSVyxPQUFPO0VFU3ZCLE1BQU0sRUFBRSxPQUNaLEdBQUU7O0FDWkYsQUFBQSxxQkFBcUIsQ0FBQztFQUNsQixPQUFPLEVBQUUsSUFBSTtFQUNiLGVBQWUsRUFBRSxhQUFhO0VBQzlCLE9BQU8sRUFBRSxXQUFXO0VBQ3BCLGFBQWEsRUFBRSxHQUFHLENBQUMsS0FBSyxDSE1YLElBQUk7RUdMakIsTUFBTSxFQUFFLE9BQ1osR0FBRTs7QUFFRixBQUFzQixxQkFBRCxDQUFDLG1CQUFtQixDQUFDO0VBQ3RDLFNBQVMsRUFBRSxjQUFjLEdBQzVCOztBQUVELEFBQTZCLHFCQUFSLEFBQUEsT0FBTyxDQUFDLG1CQUFtQixDQUFDO0VBQzdDLFNBQVMsRUFBRSxTQUFTLEdBQ3ZCOztBQUVELEFBQUEsK0JBQStCLENBQUM7RUFDNUIsS0FBSyxFSGpCSSxPQUFxQixHR2tCakM7O0FBRUQsQUFBQSxFQUFFLEFBQUEscUJBQXFCLENBQUM7RUFDcEIsYUFBYSxFQUFFLElBQUk7RUFDbkIsYUFBYSxFQUFFLENBQUM7RUFDaEIsT0FBTyxFQUFFLENBQUMsR0FDYjs7QUN0QkQsQUFBQSxTQUFTLENBQUM7RUFDTixPQUFPLEVBQUUsWUFBWTtFQUNyQixhQUFhLEVBQUUsQ0FBQztFQUNoQixNQUFNLEVBQUUsQ0FDWixHQUFFOztBQUVGLEFBQUEsZUFBZSxDQUFDO0VBQ1osYUFBYSxFQUFFLENBQ25CLEdBQUU7O0FBRUYsQUFBQSxrQkFBa0I7QUFDbEIsQUFBQSxlQUFlLENBQUM7RUFDWixnQkFBZ0IsRUFBRSxPQUF5QjtFQUMzQyxJQUFJLEVKZkssT0FBcUI7RUlnQjlCLFdBQVcsRUFBRSxHQUFHLENBQUMsS0FBSyxDSmhCYixPQUFxQixHSXNCakM7RUFWRCxBQU1JLGtCQU5jLENBTWQsa0JBQWtCO0VBTnRCLEFBT0ksa0JBUGMsQ0FPZCx1QkFBdUI7RUFOM0IsQUFLSSxlQUxXLENBS1gsa0JBQWtCO0VBTHRCLEFBTUksZUFOVyxDQU1YLHVCQUF1QixDQUFDO0lBQ3BCLEtBQUssRUFBRSxPQUF1QixHQUNqQzs7QUFHTCxBQUFBLGdCQUFnQixDQUFDO0VBQ2IsS0FBSyxFSmRFLE9BQW9CLEdJZTlCOztBQUVELEFBQUEsZ0JBQWdCO0FBQ2hCLEFBQUEsYUFBYTtBQUNiLEFBQUEsdUJBQXVCLENBQUM7RUFDcEIsZ0JBQWdCLEVBQUUsT0FBdUI7RUFDekMsSUFBSSxFSnJCRyxPQUFvQjtFSXNCM0IsV0FBVyxFQUFFLEdBQUcsQ0FBQyxLQUFLLENKdEJmLE9BQW9CLEdJNEI5QjtFQVhELEFBT0ksZ0JBUFksQ0FPWixrQkFBa0I7RUFQdEIsQUFRSSxnQkFSWSxDQVFaLHVCQUF1QjtFQVAzQixBQU1JLGFBTlMsQ0FNVCxrQkFBa0I7RUFOdEIsQUFPSSxhQVBTLENBT1QsdUJBQXVCO0VBTjNCLEFBS0ksdUJBTG1CLENBS25CLGtCQUFrQjtFQUx0QixBQU1JLHVCQU5tQixDQU1uQix1QkFBdUIsQ0FBQztJQUNwQixLQUFLLEVBQUUsT0FBcUIsR0FDL0I7O0FBR0wsQUFBQSxrQkFBa0IsQ0FBQztFQUNmLEtBQUssRUFBRSxPQUF3QixHQUNsQzs7QUFFRCxBQUFBLGtCQUFrQjtBQUNsQixBQUFBLGVBQWUsQ0FBQztFQUNaLGdCQUFnQixFQUFFLE9BQXlCO0VBQzNDLElBQUksRUpsQ0ssT0FBaUI7RUltQzFCLFdBQVcsRUFBRSxHQUFHLENBQUMsS0FBSyxDSm5DYixPQUFpQixHSXlDN0I7RUFWRCxBQU1JLGtCQU5jLENBTWQsa0JBQWtCO0VBTnRCLEFBT0ksa0JBUGMsQ0FPZCx1QkFBdUI7RUFOM0IsQUFLSSxlQUxXLENBS1gsa0JBQWtCO0VBTHRCLEFBTUksZUFOVyxDQU1YLHVCQUF1QixDQUFDO0lBQ3BCLEtBQUssRUFBRSxPQUF3QixHQUNsQzs7QUFHTCxBQUFBLGVBQWUsQ0FBQztFQUNaLEtBQUssRUFBRSxPQUEwQixHQUNwQzs7QUFHRCxBQUFBLGVBQWU7QUFDZixBQUFBLFlBQVksQ0FBQztFQUNULGdCQUFnQixFQUFFLE9BQTRCO0VBQzlDLElBQUksRUpsRVEsT0FBc0I7RUltRWxDLFdBQVcsRUFBRSxHQUFHLENBQUMsS0FBSyxDSm5FVixPQUFzQixHSXdFckM7RUFURCxBQU1JLGVBTlcsQ0FNWCxrQkFBa0IsRUFOdEIsQUFNd0IsZUFOVCxDQU1TLHVCQUF1QjtFQUwvQyxBQUtJLFlBTFEsQ0FLUixrQkFBa0I7RUFMdEIsQUFLd0IsWUFMWixDQUtZLHVCQUF1QixDQUFDO0lBQ3hDLEtBQUssRUFBRSxPQUEwQixHQUNwQzs7QUFHTCxBQUFBLGdCQUFnQixDQUFDO0VBQ2IsS0FBSyxFQUFFLE9BQTBCLEdBQ3BDOztBQUVELEFBQUEsZ0JBQWdCO0FBQ2hCLEFBQUEsYUFBYSxDQUFDO0VBQ1YsZ0JBQWdCLEVKdEVGLE9BQU87RUl1RXJCLElBQUksRUoxRU8sT0FBTztFSTJFbEIsV0FBVyxFQUFFLEdBQUcsQ0FBQyxLQUFLLENKM0VYLE9BQU8sR0lnRnJCO0VBVEQsQUFNSSxnQkFOWSxDQU1aLGtCQUFrQjtFQUx0QixBQUtJLGFBTFMsQ0FLVCxrQkFBa0IsQ0FBQztJQUNmLEtBQUssRUFBRSxPQUEwQixHQUNwQzs7QUFHTCxBQUFBLHVCQUF1QixDQUFDO0VBQ3BCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxJQUFJO0VBQ1QsSUFBSSxFQUFFLElBQUk7RUFDVixPQUFPLEVBQUUsQ0FBQyxHQUNiOztBQzNGRCxBQUFBLGVBQWUsQ0FBQztFQUNaLE9BQU8sRUFBRSxJQUFJO0VBQ2IsTUFBTSxFQUFFLGFBQWEsR0FLeEI7RUFQRCxBQUlVLGVBSkssR0FJVCxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ0osV0FBVyxFQUFFLElBQ2pCLEdBQUU7O0FBR04sQUFBQSxPQUFPLENBQUM7RUFDSixPQUFPLEVBQUUsY0FBYztFQUN2QixXQUFXLEVBQUUsQ0FBQztFQUNkLE1BQU0sRUFBRSxDQUFDO0VBQ1QsVUFBVSxFQUFFLEtBQUssQ0xVRixXQUFXLENBRFYsSUFBRyxHS0N0QjtFQWRELEFBTUksT0FORyxBQU1ILE1BQU8sQ0FBQztJQUNKLEtBQUssRUFBRSxLQUFLLEdBQ2Y7RUFSTCxBQVVJLE9BVkcsQUFVSCxTQUFVLEVBVmQsQUFXSSxPQVhHLENBV0gsQUFBQSxRQUFFLEFBQUEsRUFBVTtJQUNSLE1BQU0sRUFBRSxXQUNaLEdBQUU7O0FBR04sQUFBQSxjQUFjLENBQUM7RUFDWCxnQkFBZ0IsRUw1QlAsT0FBcUI7RUs2QjlCLEtBQUssRUFBRSxJQUFJLEdBV2Q7RUFiRCxBQUlJLGNBSlUsQUFJVixNQUFPLENBQUM7SUFDSixnQkFBZ0IsRUFBRSxPQUF3QjtJQUMxQyxLQUFLLEVBQUUsS0FBSyxHQUNmO0VBUEwsQUFTSSxjQVRVLEFBU1YsTUFBTyxDQUFDO0lBQ0osVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0xyQ25CLHVCQUFxQixHS3NDN0I7O0FBSUwsQUFBQSxhQUFhLENBQUM7RUFDVixnQkFBZ0IsRUx6Q0EsT0FBTztFSzBDdkIsS0FBSyxFQUFFLElBQUksR0FrQmQ7RUFwQkQsQUFJSSxhQUpTLEFBSVQsTUFBTyxDQUFDO0lBQ0osZ0JBQWdCLEVBQUUsT0FBK0I7SUFDakQsS0FBSyxFQUFFLElBQUksR0FDZDtFQVBMLEFBU0ksYUFUUyxBQVNULE1BQU8sQ0FBQztJQUNKLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENMbkRwQix1QkFBTyxHS29EZDtFQVhMLEFBYUksYUFiUyxBQWFULFNBQVUsRUFiZCxBQWNJLGFBZFMsQ0FjVCxBQUFBLFFBQUUsQUFBQSxHQWROLEFBZUksYUFmUyxBQWVULFNBQVUsQUFBQSxNQUFNLEVBZnBCLEFBZ0JJLGFBaEJTLENBZ0JULEFBQUEsUUFBRSxBQUFBLENBQVMsTUFBTSxDQUFDO0lBQ2QsZ0JBQWdCLEVBQUUsT0FBaUQ7SUFDbkUsTUFBTSxFQUFFLFdBQ1osR0FBRTs7QUFHTixBQUFBLGVBQWUsQ0FBQztFQUNaLGdCQUFnQixFTDlETixPQUFPO0VLK0RqQixLQUFLLEVBQUUsSUFBSSxHQWtCZDtFQXBCRCxBQUlJLGVBSlcsQUFJWCxNQUFPLENBQUM7SUFDSixnQkFBZ0IsRUFBRSxPQUF5QjtJQUMzQyxLQUFLLEVBQUUsSUFBSSxHQUNkO0VBUEwsQUFTSSxlQVRXLEFBU1gsTUFBTyxDQUFDO0lBQ0osVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0x2RWxCLHVCQUFPLEdLd0VoQjtFQVhMLEFBYUksZUFiVyxBQWFYLFNBQVUsRUFiZCxBQWNJLGVBZFcsQ0FjWCxBQUFBLFFBQUUsQUFBQSxHQWROLEFBZUksZUFmVyxBQWVYLFNBQVUsQUFBQSxNQUFNLEVBZnBCLEFBZ0JJLGVBaEJXLENBZ0JYLEFBQUEsUUFBRSxBQUFBLENBQVMsTUFBTSxDQUFDO0lBQ2QsZ0JBQWdCLEVBQUUsT0FBMkM7SUFDN0QsTUFBTSxFQUFFLFdBQ1osR0FBRTs7QUFHTixBQUFBLGFBQWEsQ0FBQztFQUNWLGdCQUFnQixFTGpGTCxPQUFPO0VLa0ZsQixLQUFLLEVBQUUsSUFBSSxHQWtCZDtFQXBCRCxBQUlJLGFBSlMsQUFJVCxNQUFPLENBQUM7SUFDSixnQkFBZ0IsRUFBRSxPQUEwQjtJQUM1QyxLQUFLLEVBQUUsSUFBSSxHQUNkO0VBUEwsQUFTSSxhQVRTLEFBU1QsTUFBTyxDQUFDO0lBQ0osVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0wxRmpCLHdCQUFPLEdLMkZqQjtFQVhMLEFBYUksYUFiUyxBQWFULFNBQVUsRUFiZCxBQWNJLGFBZFMsQ0FjVCxBQUFBLFFBQUUsQUFBQSxHQWROLEFBZUksYUFmUyxBQWVULFNBQVUsQUFBQSxNQUFNLEVBZnBCLEFBZ0JJLGFBaEJTLENBZ0JULEFBQUEsUUFBRSxBQUFBLENBQVMsTUFBTSxDQUFDO0lBQ2QsZ0JBQWdCLEVBQUUsT0FBNEM7SUFDOUQsTUFBTSxFQUFFLFdBQ1osR0FBRTs7QUFHTixBQUFBLFlBQVksQ0FBQztFQUNULGdCQUFnQixFTGxHVCxPQUFvQjtFS21HM0IsS0FBSyxFQUFFLElBQUksR0FrQmQ7RUFwQkQsQUFJSSxZQUpRLEFBSVIsTUFBTyxDQUFDO0lBQ0osZ0JBQWdCLEVBQUUsT0FBc0I7SUFDeEMsS0FBSyxFQUFFLElBQUksR0FDZDtFQVBMLEFBU0ksWUFUUSxBQVNSLE1BQU8sQ0FBQztJQUNKLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENMM0dyQixzQkFBb0IsR0s0RzFCO0VBWEwsQUFhSSxZQWJRLEFBYVIsU0FBVSxFQWJkLEFBY0ksWUFkUSxDQWNSLEFBQUEsUUFBRSxBQUFBLEdBZE4sQUFlSSxZQWZRLEFBZVIsU0FBVSxBQUFBLE1BQU0sRUFmcEIsQUFnQkksWUFoQlEsQ0FnQlIsQUFBQSxRQUFFLEFBQUEsQ0FBUyxNQUFNLENBQUM7SUFDZCxnQkFBZ0IsRUFBRSxPQUF3QztJQUMxRCxNQUFNLEVBQUUsV0FDWixHQUFFOztBQUdOLEFBQVUsT0FBSCxHQUFHLE9BQU8sQ0FBQztFQUNkLFdBQVcsRUFBRSxJQUNqQixHQUFFOztBQUdGLEFBQUEsb0JBQW9CLENBQUM7RUFDakIsWUFBWSxFTDdITCxPQUFvQjtFSzhIM0IsSUFBSSxFTDlIRyxPQUFvQjtFSytIM0IsZ0JBQWdCLEVBQUUsT0FBdUIsR0FDNUM7O0FBRUQsQUFBQSxzQkFBc0IsQ0FBQztFQUNuQixZQUFZLEVMOUlILE9BQXFCO0VLK0k5QixJQUFJLEVML0lLLE9BQXFCO0VLZ0o5QixnQkFBZ0IsRUFBRSxPQUF5QixHQUM5Qzs7QUFFRCxBQUFBLGFBQWEsQ0FBQztFQUNWLE9BQU8sRUFBRSxHQUFHO0VBQ1osVUFBVSxFQUFFLFdBQVcsR0FlMUI7RUFqQkQsQUFJSSxhQUpTLEFBSVQsTUFBTyxDQUFDO0lBQ0osTUFBTSxFQUFFLFdBQVcsQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLGtCQUFrQixDQUFDLGVBQWUsQ0FBQyxjQUFjLEdBQ25HO0VBTkwsQUFRSSxhQVJTLEFBUVQsTUFBTyxDQUFDO0lBQ0osVUFBVSxFQUFFLElBQUk7SUFDaEIsT0FBTyxFQUFFLElBQUksR0FDaEI7RUFYTCxBQWFRLGFBYkssR0FhTCxHQUFHLENBQUM7SUFDSixLQUFLLEVBQUUsTUFBTTtJQUNiLE1BQU0sRUFBRSxNQUFNLEdBQ2pCOztBQ2xLTCxBQUFBLGdCQUFnQixDQUFDO0VBQ2IsT0FBTyxFQUFFLElBQUk7RUFDYixlQUFlLEVBQUUsYUFBYTtFQUM5QixXQUFXLEVBQUUsTUFDakIsR0FBRTs7QUFFRixBQUFBLGlCQUFpQixDQUFDO0VBQ2QsV0FBVyxFQUFFLE1BQU07RUFDbkIsS0FBSyxFQUFFLElBQUk7RUFDWCxXQUFXLEVBQUUsSUFDakIsR0FBRTs7QUNWRixBQUFBLFlBQVksQ0FBQztFQUNULFFBQVEsRUFBRSxPQUNkLEdBQUU7O0FBRUYsQUFBQSxpQkFBaUIsQ0FBQztFQUNkLGdCQUFnQixFUFJILE9BQU8sR09TdkI7O0FBRUQsQUFBQSxpQkFBaUIsQ0FBQztFQUNkLEtBQUssRUFBRSxLQUFLO0VBQ1osVUFBVSxFQUFFLEtBQUssQ1BjRixXQUFXLENBRFYsSUFBRyxHT1p0Qjs7QUFFRCxBQUFBLGlCQUFpQixBQUFBLE1BQU0sQ0FBQztFQUNwQixnQkFBZ0IsRUFBRSxXQUFXO0VBQzdCLEtBQUssRVBmRyxPQUFPLEdPZ0JsQjs7QUFFRCxBQUFBLG1CQUFtQixDQUFDO0VBQ2hCLE9BQU8sRUFBRSxJQUFJO0VBQ2IsV0FBVyxFQUFFLE1BQU07RUFDbkIsT0FBTyxFQUFFLENBQUMsR0FLYjtFQVJELEFBS0ksbUJBTGUsQUFLZixPQUFRLENBQUM7SUFDTCxXQUFXLEVBQUUsS0FDakIsR0FBRTs7QUFHTixBQUFBLG9CQUFvQixDQUFDO0VBQ2pCLE9BQU8sRUFBRSxXQUFXO0VBQ3BCLFNBQVMsRUFBRSxJQUFJO0VBQ2YsU0FBUyxFQUFFLG1CQUFtQixHQUNqQzs7QUFFRCxBQUF1QixvQkFBSCxHQUFHLEdBQUcsQ0FBQztFQUN2QixVQUFVLEVBQUUsS0FDaEIsR0FBRTs7QUNuQ0YsQUFBK0Msd0JBQXZCLENBQUMsbUJBQW1CLEdBQUcsbUJBQW1CLENBQUM7RUFDL0QsVUFBVSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENSQ0wsT0FBTyxHUUExQjs7QUFFRCxBQUFBLG1CQUFtQixDQUFDO0VBQ2hCLE9BQU8sRUFBRSxJQUFJO0VBQ2IsV0FBVyxFQUFFLE1BQU0sR0FDdEI7O0FBRUQsQUFBQSw0QkFBNEIsQ0FBQztFQUN6QixhQUFhLEVBQUUsR0FBRyxDQUFDLEtBQUssQ1JGWCxJQUFJO0VRR2pCLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLGFBQWEsRUFBRSxNQUNuQixHQUFFOztBQUVGLEFBQXNCLG1CQUFILEdBQUcsQ0FBQyxDQUFDO0VBQ3BCLE9BQU8sRUFBRSxNQUFNLEdBQ2xCOztBQUVELEFBQUEsb0JBQW9CLENBQUM7RUFDakIsVUFBVSxFQUFFLEtBQUs7RUFDakIsVUFBVSxFQUFFLElBQ2hCLEdBQUU7O0FDdkJGLEFBQUEsVUFBVSxDQUFDO0VBQ1AsU0FBUyxFVGtCSyxJQUFJO0VTakJsQixVQUFVLEVBQUUsR0FBRyxDQUFDLEtBQUssQ1RLVixPQUFPO0VTSmxCLE9BQU8sRUFBRSxJQUFJO0VBQ2IsT0FBTyxFQUFFLElBQUk7RUFDYixlQUFlLEVBQUUsYUFBYSxHQUNqQzs7QUFFRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFDcEIsQUFBQSxVQUFVLENBQUM7SUFDUCxPQUFPLEVBQUUsS0FBSztJQUNkLFVBQVUsRUFBRSxNQUNoQixHQUFFOztBQ1pOLEFBQUEsZUFBZSxDQUFDO0VBQ1osV0FBVyxFQUFFLEdBQUc7RUFDaEIsYUFBYSxFQUFFLE9BQ25CLEdBQUU7O0FBRUYsQUFDSSx5QkFEcUIsQUFDckIsTUFBTyxDQUFDO0VBQ0osT0FBTyxFQUFFLEdBQUc7RUFDWixPQUFPLEVBQUUsWUFBWTtFQUNyQixTQUFTLEVBQUUsTUFBTTtFQUNqQixXQUFXLEVBQUUsR0FBRztFQUNoQixZQUFZLEVBQUUsTUFBTSxHQUN2Qjs7QUFHTCxBQUFBLHVCQUF1QixDQUFDO0VBQ3BCLE1BQU0sRUFBRSw0QkFBNEIsR0FDdkM7O0FBRUQsQUFBQSxpQkFBaUIsQUFBQSxNQUFNLENBQUM7RUFDcEIsWUFBWSxFVnBCSix1QkFBTztFVXFCZixVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDVnJCaEIsd0JBQU8sR1VzQmxCOztBQUVELEFBQUEsaUJBQWlCLEFBQUEsY0FBYyxDQUFDO0VBQzVCLFlBQVksRVZmTCxzQkFBb0I7RVVnQjNCLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENWaEJqQix1QkFBb0IsR1VpQjlCOztBQUVELEFBQUEsMEJBQTBCLENBQUM7RUFDdkIsVUFBVSxFQUFFLElBQ2hCLEdBQUU7O0FBRUYsQUFBQSwrQkFBK0IsQ0FBQztFQUM1QixNQUFNLEVBQUUsS0FBSztFQUNiLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLE1BQU0sRUFBRSxHQUFHLENBQUMsS0FBSyxDVjdCTixPQUFPO0VVOEJsQixPQUFPLEVBQUUsZ0JBQ2IsR0FBRTs7QUFFRixBQUE2QiwwQkFBSCxHQUFHLDBCQUEwQixDQUFDO0VBQ3BELFVBQVUsRUFBRSxLQUNoQixHQUFFOztBQUVGLEFBQUEsMEJBQTBCLENBQUM7RUFDdkIsV0FBVyxFQUFFLENBQUM7RUFDZCxNQUFNLEVBQUUsSUFBSTtFQUNaLE9BQU8sRUFBRSxNQUNiLEdBQUU7O0FBRUYsQUFBQSxRQUFRLEFBQUEsaUJBQWlCLENBQUM7RUFDdEIsVUFBVSxFQUFFLEtBQ2hCLEdBQUU7O0FBSUYsQUFBQSxnQkFBZ0IsQ0FBQztFQUNiLE9BQU8sRUFBRSxZQUFZO0VBQ3JCLE1BQU0sRUFBRSxJQUFJO0VBQ1osUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLElBQUk7RUFDWCxhQUFhLEVBQUUsQ0FDbkIsR0FBRTs7QUFFRixBQUFpQixnQkFBRCxDQUFDLEtBQUssQ0FBQztFQUNuQixPQUFPLEVBQUUsSUFBSSxHQUNoQjs7QUFFRCxBQUFBLHVCQUF1QixDQUFDO0VBQ3BCLGdCQUFnQixFQUFFLElBQUk7RUFDdEIsTUFBTSxFQUFFLENBQUM7RUFDVCxNQUFNLEVBQUUsT0FBTztFQUNmLElBQUksRUFBRSxDQUFDO0VBQ1AsUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLENBQUM7RUFDUixHQUFHLEVBQUUsQ0FBQztFQUNOLFVBQVUsRUFBRSxHQUFHO0VBQ2YsYUFBYSxFQUFFLElBQUksR0FDdEI7O0FBRUQsQUFBQSx1QkFBdUIsQUFBQSxPQUFPLENBQUM7RUFDM0IsZ0JBQWdCLEVBQUUsSUFBSTtFQUN0QixNQUFNLEVBQUUsR0FBRztFQUNYLE9BQU8sRUFBRSxFQUFFO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixJQUFJLEVBQUUsR0FBRztFQUNULFFBQVEsRUFBRSxRQUFRO0VBQ2xCLFVBQVUsRUFBRSxHQUFHO0VBQ2YsS0FBSyxFQUFFLElBQUk7RUFDWCxhQUFhLEVBQUUsR0FBRyxHQUNyQjs7QUFFRCxBQUFnQixLQUFYLEFBQUEsUUFBUSxHQUFHLHVCQUF1QixDQUFDO0VBQ3BDLGdCQUFnQixFQUFFLE9BQU8sR0FDNUI7O0FBRUQsQUFBZ0IsS0FBWCxBQUFBLFFBQVEsR0FBRyx1QkFBdUIsQUFBQSxPQUFPLENBQUM7RUFDM0MsU0FBUyxFQUFFLGdCQUFnQixHQUM5Qjs7QUFHRCxpQ0FBaUM7QUFDakMsQUFBQSxLQUFLLEFBQUEsMkJBQTJCO0FBQ2hDLEFBQUEsS0FBSyxBQUFBLDJCQUEyQixDQUFDO0VBQzdCLGtCQUFrQixFQUFFLElBQUk7RUFDeEIsTUFBTSxFQUFFLENBQUMsR0FDWjs7QUFDRCxhQUFhO0FBQ2IsQUFBQSxLQUFLLENBQUEsQUFBQSxJQUFDLENBQUQsTUFBQyxBQUFBLEVBQWE7RUFDZixlQUFlLEVBQUUsU0FBUyxHQUM3Qjs7QUNuSEQsQUFBQSxhQUFhLENBQUM7RUFDVixNQUFNLEVBQUUsTUFDWixHQUFFOztBQUVGLEFBQUEsd0JBQXdCLENBQUM7RUFDckIsYUFBYSxFQUFFLElBQ25CLEdBQUU7O0FBRUYsQUFBQSwwQkFBMEIsQ0FBQztFQUN2QixPQUFPLEVBQUUsSUFBSTtFQUNiLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLGVBQWUsRUFBRSxhQUNyQixHQUFFOztBQUVGLEFBQUEsbUJBQW1CLENBQUM7RUFDaEIsT0FBTyxFQUFFLElBQUk7RUFDYixXQUFXLEVBQUUsTUFDakIsR0FBRTs7QUFFRixBQUEwQixtQkFBUCxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7RUFDeEIsV0FBVyxFQUFFLElBQ2pCLEdBQUU7O0FBRUYsQUFBQSxxQkFBcUIsQ0FBQztFQUNsQixTQUFTLEVBQUUsQ0FDZixHQUFFOztBQUVGLEFBQWMsYUFBRCxDQUFDLGlCQUFpQixDQUFDO0VBQzVCLFVBQVUsRVh0Qk0sT0FBTztFV3VCdkIsS0FBSyxFQUFFLE1BQU07RUFDYixNQUFNLEVBQUUsTUFBTSxHQUNqQjs7QUFFRCxBQUFjLGFBQUQsQ0FBQyxjQUFjLENBQUM7RUFDekIsYUFBYSxFQUFFLEdBQ25CLEdBQUU7O0FBRUYsQUFBb0MsYUFBdkIsQ0FBQyxxQkFBcUIsQ0FBQyxpQkFBaUIsQ0FBQztFQUNsRCxHQUFHLEVBQUUsTUFBTTtFQUNYLFdBQVcsRUFBRSxPQUFPLEdBQ3ZCOztBQ25DRCxBQUFBLElBQUksQ0FBQztFQUNELFVBQVUsRUFBRSxrQkFBa0I7RUFDOUIsUUFBUSxFQUFFLFFBQ2QsR0FBRTs7QUFFRixBQUFBLGlCQUFpQixDQUFDO0VBQ2QsTUFBTSxFQUFFLGtCQUFrQixHQUM3Qjs7QUFFRCxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7RUFDcEIsQUFBQSxJQUFJLENBQUM7SUFDRCxVQUFVLEVBQUUsbUJBQW1CLEdBQ2xDO0VBRUQsQUFBQSxpQkFBaUIsQ0FBQztJQUNkLE1BQU0sRUFBRSxtQkFBbUIsR0FDOUI7O0FBR0wsQUFBQSxxQkFBcUIsQ0FBQztFQUNsQixnQkFBZ0IsRUFBRSwrQ0FBK0M7RUFDakUsZUFBZSxFQUFFLEtBQUs7RUFDdEIsaUJBQWlCLEVBQUUsU0FBUztFQUM1QixRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsQ0FBQztFQUNOLEtBQUssRUFBRSxDQUFDO0VBQ1IsTUFBTSxFQUFFLENBQUM7RUFDVCxJQUFJLEVBQUUsQ0FBQztFQUNQLEtBQUssRUFBRSxJQUFJLEdBQ2Q7O0FBRUQsQUFBQSxrQkFBa0IsQ0FBQztFQUNmLE9BQU8sRUFBRSxXQUFXO0VBQ3BCLGdCQUFnQixFQUFFLE9BQU87RUFDekIsU0FBUyxFQUFFLElBQUksR0FDbEI7O0FBRXVDLFNBQUMsQ0FBRCxHQUFDLEVBQTFCLGNBQWMsRUFBRSxRQUFRO0VBQ25DLEFBQUEscUJBQXFCLENBQUM7SUFDbEIsZ0JBQWdCLEVBQUUsK0NBQStDLEdBQ3BFOztBQUdMLEFBQWMsV0FBSCxHQUFHLFdBQVcsQ0FBQztFQUN0QixVQUFVLEVBQUUsSUFDaEIsR0FBRTs7QUFFRixBQUFrQixlQUFILEdBQUcsZUFBZSxDQUFDO0VBQzlCLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLFVBQVUsRUFBRSxjQUFjO0VBQzFCLFdBQVcsRUFBRSxJQUNqQixHQUFFOztBQUVGLEFBQUEsY0FBYyxDQUFDO0VBQ1gsV0FBVyxFQUFFLElBQ2pCLEdBQUU7O0FBRUYsQUFBQSxZQUFZLENBQUM7RUFDVCxPQUFPLEVBQUUsSUFBSTtFQUNiLFdBQVcsRUFBRSxNQUNqQixHQUFFOztBQUVGLEFBQW1CLFlBQVAsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0VBQ2pCLFdBQVcsRUFBRSxLQUNqQixHQUFFOztBQ2hFRixBQUFBLFVBQVUsQ0FBQztFQUNQLE9BQU8sRUFBRSxJQUFJO0VBQ2IsYUFBYSxFQUFFLElBQ25CLEdBQUU7O0FBR0YsQUFBQSxnQkFBZ0IsQ0FBQztFQUNiLE9BQU8sRUFBRSxVQUNiLEdBQUU7O0FBRUYsQUFBbUIsZ0JBQUgsR0FBRyxnQkFBZ0IsQ0FBQztFQUNoQyxXQUFXLEVBQUUsSUFDakIsR0FBRTs7QUNkRixBQUFBLFVBQVUsQ0FBQztFQUNQLFFBQVEsRUFBRSxLQUFLO0VBQ2YsT0FBTyxFQUFFLElBQUk7RUFDYixNQUFNLEVBQUUsS0FBSztFQUNiLEtBQUssRUFBRSxLQUFLO0VBQ1osY0FBYyxFQUFFLElBQUk7RUFDcEIsT0FBTyxFQUFFLENBQUM7RUFDVixlQUFlLEVBQUUsTUFBTTtFQUN2QixnQkFBZ0IsRUFBRSx3QkFBd0I7RUFDMUMsR0FBRyxFQUFFLENBQUM7RUFDTixJQUFJLEVBQUUsQ0FDVixHQUFFOztBQUdGLEFBQUEsZ0JBQWdCLENBQUM7RUFDYixLQUFLLEVBQUUsS0FBSztFQUNaLE9BQU8sRUFBRSxJQUFJO0VBQ2IsTUFBTSxFQUFFLElBQ1osR0FBRTs7QUFFRixBQUFBLHdCQUF3QixDQUFDO0VBQ3JCLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLE9BQU8sRUFBRSxJQUFJLEdBQ2hCOztBQUVELEFBQUEsa0JBQWtCLENBQUM7RUFDZixLQUFLLEVBQUUsR0FBRztFQUNWLE1BQU0sRUFBRSxDQUFDO0VBQ1QsTUFBTSxFQUFFLEdBQUc7RUFDWCxXQUFXLEVBQUUsR0FBRztFQUNoQixhQUFhLEVBQUUsSUFBSTtFQUNuQixTQUFTLEVBQUUseUNBQXlDLEdBQ3ZEOztBQUVELEFBQUEseUJBQXlCLENBQUM7RUFDdEIsZ0JBQWdCLEVkbENQLE9BQXFCO0VjbUM5QixlQUFlLEVBQUUsS0FBSyxHQUN6Qjs7QUFFRCxBQUFBLHdCQUF3QixDQUFDO0VBQ3JCLGdCQUFnQixFZHRDUixPQUFPO0VjdUNmLGVBQWUsRUFBRSxLQUFLLEdBQ3pCOztBQUVELEFBQUEsMEJBQTBCLENBQUM7RUFDdkIsZ0JBQWdCLEVkekNOLE9BQU8sR2MwQ3BCOztBQUVELFVBQVUsQ0FBVixVQUFVO0VBQ04sQUFBQSxFQUFFLEVBQUUsQUFBQSxHQUFHLEVBQUUsQUFBQSxJQUFJO0lBQ1QsU0FBUyxFQUFFLFVBQVU7RUFHekIsQUFBQSxHQUFHO0lBQ0MsU0FBUyxFQUFFLFFBQVU7O0FDcEQ3QixBQUFBLFlBQVksQ0FBQztFQUNULEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixNQUFNLEVBQUUsT0FBTztFQUNmLFVBQVUsRUFBRSxPQUFPLENmbUJILElBQUcsQ0FDSixXQUFXLEdlZjdCO0VBVEQsQUFNSSxZQU5RLEFBTVIsTUFBTyxDQUFDO0lBQ0osT0FBTyxFQUFFLEVBQUUsR0FDZDs7QUFHTCxBQUFBLFlBQVksQ0FBQztFQUNULEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixNQUFNLEVBQUUsT0FBTztFQUNmLFVBQVUsRUFBRSxPQUFPLENmUUgsSUFBRyxDQUNKLFdBQVcsR2VKN0I7RUFURCxBQU1JLFlBTlEsQUFNUixNQUFPLENBQUM7SUFDSixPQUFPLEVBQUUsRUFBRSxHQUNkOztBQUdMLEFBQUEsb0JBQW9CLENBQUM7RUFDakIsTUFBTSxFQUFFLE9BQ1osR0FBRTs7QUFFRixBQUFBLG1CQUFtQixDQUFDO0VBQ2hCLElBQUksRWZ2QlMsT0FBTyxHZXdCdkI7O0FBRUQsQUFBQSxlQUFlLENBQUM7RUFDWixJQUFJLEVmaENLLE9BQXFCLEdlaUNqQzs7QUFFRCxBQUFBLGNBQWMsQ0FBQztFQUNYLElBQUksRWZuQ0ksT0FBTyxHZW9DbEI7O0FBRUQsQUFBQSxrQkFBa0IsQ0FBQztFQUNmLElBQUksRWZ0Q1ksT0FBTyxHZXVDMUI7O0FBRUQsQUFBQSxrQkFBa0IsQ0FBQztFQUNmLElBQUksRWZyQ1EsT0FBTyxHZXNDdEI7O0FBRUQsQUFBQSxrQkFBa0IsQ0FBQztFQUNmLElBQUksRWZsRFMsT0FBTyxHZW1EdkI7O0FBRUQsQUFBQSxpQkFBaUIsQ0FBQztFQUNkLElBQUksRWY5Q08sT0FBTyxHZStDckI7O0FBRUQsQUFBQSxhQUFhLENBQUM7RUFDVixJQUFJLEVmN0NHLE9BQW9CLEdlOEM5Qjs7QUFFRCxBQUFBLGVBQWUsQ0FBQztFQUNaLElBQUksRWY5Q0ssT0FBaUIsR2UrQzdCOztBQUVELEFBQUEsaUJBQWlCLENBQUM7RUFDZCxJQUFJLEVmakVRLE9BQXNCLEdla0VyQzs7QUFFRCxBQUFBLGdCQUFnQixDQUFDO0VBQ2IsSUFBSSxFZnhEQyxPQUFPLEdleURmOztBQ25FRCxBQUFBLGVBQWUsQ0FBQztFQUNaLFFBQVEsRUFBRSxLQUFLO0VBQ2YsT0FBTyxFQUFFLElBQUk7RUFDYixHQUFHLEVBQUUsQ0FBQztFQUNOLElBQUksRUFBRSxDQUFDO0VBQ1AsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLE9BQU8sRUFBRSxJQUFJO0VBQ2IsZUFBZSxFQUFFLE1BQU07RUFDdkIsV0FBVyxFQUFFLFVBQVU7RUFDdkIsVUFBVSxFQUFFLE9BQU8sQ2hCWUgsSUFBRyxDQUNKLFdBQVc7RWdCWjFCLGdCQUFnQixFaEJFSyxrQkFBYztFZ0JEbkMsTUFBTSxFQUFFLENBQ1osR0FBRTs7QUFFRixBQUFBLG9CQUFvQixDQUFDO0VBQ2pCLEtBQUssRUFBRSxLQUFLO0VBQ1osVUFBVSxFQUFFLElBQUk7RUFDaEIsZ0JBQWdCLEVBQUUsSUFBSTtFQUN0QixNQUFNLEVBQUUsR0FBRyxDQUFDLEtBQUssQ0FBQyxrQkFBa0I7RUFDcEMsVUFBVSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLG1CQUFrQjtFQUN4QyxVQUFVLEVBQUUsWUFBWSxHQUMzQjs7QUFFRCxBQUFBLGlCQUFpQixDQUFDO0VBQ2QsT0FBTyxFQUFFLElBQUk7RUFDYixlQUFlLEVBQUUsYUFBYTtFQUM5QixVQUFVLEVBQUUsaUJBQWlCO0VBQzdCLFdBQVcsRUFBRSxJQUNqQixHQUFFOztBQUVGLEFBQWEsWUFBRCxDQUFDLG9CQUFvQjtBQUNqQyxBQUFvQixtQkFBRCxDQUFDLFVBQVUsQ0FBQztFQUMzQixpQkFBaUIsRUFBRSxVQUFVO0VBQzdCLFNBQVMsRUFBRSxVQUFVLEdBQ3hCOztBQUVELEFBQUEsb0JBQW9CLENBQUM7RUFDakIsS0FBSyxFQUFFLEdBQUc7RUFDVixTQUFTLEVBQUUsR0FDZixHQUFFOztBQ3hDRixBQUFBLFlBQVksQ0FBQztFQUNULEtBQUssRUFBRSxJQUFJO0VBQ1gsVUFBVSxFQUFFLElBQUksR0ErRG5CO0VBakVELEFBSUksWUFKUSxDQUlSLEVBQUUsQ0FBQztJQUNDLGdCQUFnQixFakJFTixPQUFPLEdpQkRwQjtFQU5MLEFBUUksWUFSUSxDQVFSLEVBQUU7RUFSTixBQVNJLFlBVFEsQ0FTUixFQUFFLENBQUM7SUFDQyxNQUFNLEVBQUUsR0FBRyxDQUFDLEtBQUssQ2pCSFAsT0FBTyxHaUJJcEI7RUFYTCxBQWFhLFlBYkQsQ0FhUixFQUFFLEFBQUEsTUFBTSxDQUFDLEVBQUUsQ0FBQztJQUNSLGdCQUFnQixFakJmWix1QkFBTyxHaUJnQmQ7RUFmTCxBQWlCb0IsWUFqQlIsQ0FpQlIsZUFBZSxDQUFDLFNBQVM7RUFqQjdCLEFBa0JvQixZQWxCUixDQWtCUixlQUFlLENBQUMsU0FBUyxBQUFBLE1BQU07RUFsQm5DLEFBbUJvQixZQW5CUixDQW1CUixlQUFlLENBQUMsU0FBUyxBQUFBLE1BQU0sQ0FBQztJQUM1QixnQkFBZ0IsRWpCYk4sT0FBTyxHaUJjcEI7RUFyQkwsQUF1Qm9CLFlBdkJSLENBdUJSLGVBQWUsQ0FBQyxNQUFNLENBQUM7SUFDbkIsWUFBWSxFakJqQkYsT0FBTztJaUJrQmpCLGFBQWEsRUFBRSxPQUNuQixHQUFFO0VBMUJOLEFBNEJvQixZQTVCUixDQTRCUixlQUFlLENBQUMsT0FBTztFQTVCM0IsQUE2Qm9CLFlBN0JSLENBNkJSLGVBQWUsQ0FBQyxPQUFPLEFBQUEsTUFBTTtFQTdCakMsQUE4Qm9CLFlBOUJSLENBOEJSLGVBQWUsQ0FBQyxPQUFPLEFBQUEsTUFBTSxDQUFDO0lBQzFCLGdCQUFnQixFakIvQkosT0FBTztJaUJnQ25CLFlBQVksRWpCaENBLE9BQU8sR2lCaUN0QjtFQWpDTCxBQW1DSSxZQW5DUSxDQW1DUix3QkFBd0IsQ0FBQztJQUNyQixTQUFTLEVBQUUsSUFBSSxHQUNsQjtFQXJDTCxBQXVDSSxZQXZDUSxDQXVDUixjQUFjLEFBQUEsUUFBUTtFQXZDMUIsQUF3Q0ksWUF4Q1EsQ0F3Q1IsY0FBYyxBQUFBLE9BQU8sQ0FBQztJQUNsQixPQUFPLEVBQUUsR0FDYixHQUFFO0VBMUNOLEFBNENJLFlBNUNRLENBNENSLGVBQWUsQ0FBQztJQUNaLE9BQU8sRUFBRSxJQUFJO0lBQ2IsV0FBVyxFQUFFLE1BQU07SUFDbkIsYUFBYSxFQUFFLElBQUksR0FDdEI7RUFoREwsQUFrREksWUFsRFEsQ0FrRFIsc0JBQXNCLENBQUM7SUFDbkIsV0FBVyxFQUFFLElBQUksR0FDcEI7RUFwREwsQUFzREksWUF0RFEsQ0FzRFIsY0FBYyxDQUFDO0lBQ1gsS0FBSyxFQUFFLElBQUksR0FDZDtFQXhETCxBQTBESSxZQTFEUSxDQTBEUixtQkFBbUIsQ0FBQztJQUNoQixLQUFLLEVBQUUsSUFBSSxHQUNkO0VBNURMLEFBOERJLFlBOURRLENBOERSLFVBQVUsQ0FBQztJQUNQLEtBQUssRUFBRSxJQUFJLEdBQ2Q7O0FBR0wsQUFBQSxrQkFBa0IsQ0FBQztFQUVmLE9BQU8sRUFBRSxJQUFJLEdBZ0NoQjtFQWxDRCxBQUlJLGtCQUpjLENBSWQsZUFBZTtFQUpuQixBQUtJLGtCQUxjLENBS2QsZ0JBQWdCO0VBTHBCLEFBTUksa0JBTmMsQ0FNZCxrQkFBa0IsQ0FBRTtJQUNoQixTQUFTLEVBQUUsSUFDZixHQUFFO0VBUk4sQUFVSSxrQkFWYyxDQVVkLGVBQWUsQUFBQSxNQUFNO0VBVnpCLEFBV0ksa0JBWGMsQ0FXZCxnQkFBZ0IsQUFBQSxNQUFNO0VBWDFCLEFBWUksa0JBWmMsQ0FZZCxrQkFBa0IsQUFBQSxNQUFNLENBQUM7SUFDckIsWUFBWSxFakJqRlIsdUJBQU87SWlCa0ZYLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENqQmxGcEIsd0JBQU87SWlCbUZYLE9BQU8sRUFBRSxDQUNiLEdBQUU7RUFoQk4sQUFrQkksa0JBbEJjLENBa0JkLGNBQWMsQ0FBQztJQUNYLE9BQU8sRUFBRSxJQUFJO0lBQ2IsZUFBZSxFQUFFLGFBQWEsR0FDakM7RUFyQkwsQUF1Qkksa0JBdkJjLENBdUJkLGVBQWU7RUF2Qm5CLEFBd0JJLGtCQXhCYyxDQXdCZCxnQkFBZ0IsQ0FBQztJQUNiLE9BQU8sRUFBRSxXQUFXO0lBQ3BCLE1BQU0sRUFBRSxDQUFDO0lBQ1QsU0FBUyxFQUFFLElBQUksR0FDbEI7RUE1QkwsQUE4Qkksa0JBOUJjLENBOEJkLGdCQUFnQixDQUFDO0lBQ2IsZ0JBQWdCLEVqQjlGVCxPQUFPO0lpQitGZCxZQUFZLEVqQi9GTCxPQUFPLEdpQmdHakI7O0FDcEdMLEFBQUEsa0JBQWtCLENBQUM7RUFDZixjQUFjLEVBQUUsTUFBTTtFQUN0QixNQUFNLEVBQUUsQ0FBQztFQUNULE9BQU8sRUFBRSxDQUFDO0VBQ1YsVUFBVSxFQUFFLElBQUk7RUFDaEIsS0FBSyxFQUFFLEtBQUssR0FDZjs7QUFFRCxBQUFBLGFBQWEsQ0FBQztFQUNWLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLGFBQWEsRUFBRSxHQUNuQixHQUFFOztBQUVGLEFBQWMsYUFBRCxDQUFDLENBQUMsQ0FBQztFQUNaLE9BQU8sRUFBRSxZQUFZO0VBQ3JCLE9BQU8sRUFBRSxJQUFJO0VBQ2IsZUFBZSxFQUFFLGFBQWE7RUFDOUIsU0FBUyxFQUFFLEtBQUs7RUFDaEIsVUFBVSxFQUFFLFNBQVM7RUFDckIsTUFBTSxFQUFFLGVBQ1osR0FBRTs7QUFFRixBQUFjLGFBQUQsQ0FBQyxDQUFDLEFBQUEsT0FBTyxDQUFDO0VBQ25CLFdBQVcsRUFBRSxHQUFHLENBQUMsS0FBSyxDbEJoQlQsSUFBSTtFa0JpQmpCLFVBQVUsRUFBRSxHQUFHLENBQUMsS0FBSyxDbEJqQlIsSUFBSTtFa0JrQmpCLGFBQWEsRUFBRSxHQUFHLENBQUMsS0FBSyxDbEJsQlgsSUFBSTtFa0JtQmpCLFlBQVksRUFBRSxjQUFjO0VBQzVCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLFlBQVksRUFBRSxJQUFJLEdBQ3JCOztBQUVELEFBQUEsWUFBWSxDQUFDO0VBQ1QsV0FBVyxFQUFFLEdBQUcsQ0FBQyxLQUFLLENsQnpCVCxJQUFJO0VrQjBCakIsV0FBVyxFQUFFLEdBQUc7RUFDaEIsWUFBWSxFQUFFLElBQUk7RUFDbEIsS0FBSyxFQUFFLElBQ1gsR0FBRTs7QUFFRixBQUFBLHFCQUFxQixDQUFDO0VBQ2xCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxJQUFJO0VBQ1QsSUFBSSxFQUFFLElBQUk7RUFDVixPQUFPLEVBQUUsQ0FDYixHQUFFOztBQzVDRixBQUFBLFVBQVUsQ0FBQztFQUNQLFVBQVUsRUFBRSxDQUFDLENBQUMsT0FBTSxDQUFDLE9BQU0sQ0FBQyxtQkFBa0I7RUFDOUMsZ0JBQWdCLEVuQk5ILE9BQU87RW1CT3BCLE9BQU8sRUFBRSxZQUFZLEdBeUJ4QjtFQTVCRCxBQU1JLFVBTk0sQ0FNTixDQUFDLEFBQUEsWUFBWSxDQUFDO0lBQ1YsS0FBSyxFQUFFLEtBQUs7SUFDWixVQUFVLEVBQUUsS0FBSyxDbkJlTixXQUFXLENBRFYsSUFBRyxHbUJibEI7RUFUTCxBQVdJLFVBWE0sQ0FXTixDQUFDLEFBQUEsWUFBWSxBQUFBLE1BQU0sQ0FBQztJQUNoQixLQUFLLEVuQmJELE9BQU8sR21CY2Q7RUFiTCxBQWVJLFVBZk0sQ0FlTixrQkFBa0IsQ0FBQztJQUNmLE9BQU8sRUFBRSxDQUFDO0lBQ1YsTUFBTSxFQUFFLENBQ1osR0FBRTtFQWxCTixBQW9CSSxVQXBCTSxDQW9CTix1QkFBdUIsQ0FBQztJQUNwQixnQkFBZ0IsRUFBRSxvQ0FBb0MsR0FDekQ7RUF0QkwsQUF3QkksVUF4Qk0sQ0F3Qk4sR0FBRyxDQUFDO0lBQ0EsTUFBTSxFQUFFLElBQ1osR0FBRTs7QUFJTixBQUFBLGlCQUFpQixDQUFDO0VBQ2QsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLFlBQVksRUFBRSxDQUFDO0VBQ2YsT0FBTyxFQUFFLENBQ2IsR0FBRTs7QUNwQ0YsQUFBQSxlQUFlLENBQUM7RUFDWixNQUFNLEVBQUUsUUFBUSxHQUNuQjs7QUFFRCxBQUFBLGVBQWUsQUFBQSxNQUFNLENBQUM7RUFDbEIsT0FBTyxFQUFFLEVBQUU7RUFDWCxhQUFhLEVBQUUsaUJBQWlCO0VBQ2hDLEtBQUssRUFBRSxLQUFLO0VBQ1osTUFBTSxFQUFFLENBQUM7RUFDVCxPQUFPLEVBQUUsS0FBSztFQUNkLFVBQVUsRUFBRSxJQUFJLEdBQ25COztBQUVELEFBQUEsd0JBQXdCLENBQUM7RUFDckIsT0FBTyxFQUFFLEtBQUs7RUFDZCxTQUFTLEVBQUUsSUFBSTtFQUNmLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLEtBQUssRXBCWk0sT0FBTyxHb0JhckI7O0FDbEJELEFBQUEsY0FBYyxDQUFDO0VBQ1gsYUFBYSxFQUFFLENBQUM7RUFDaEIsV0FBVyxFQUFFLElBQUksR0FNcEI7RUFSRCxBQUlJLGNBSlUsQ0FJVixVQUFVLENBQUM7SUFDUCxnQkFBZ0IsRUFBRSxXQUFXO0lBQzdCLE1BQU0sRUFBRSxDQUNaLEdBQUU7O0FDUE4sQUFBQSxPQUFPLENBQUM7RUFDSixPQUFPLEVBQUUsSUFBSTtFQUNiLE9BQU8sRUFBRSxXQUFXO0VBQ3BCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLGVBQWUsRUFBRSxhQUFhLEdBQ2pDOztBQUVELEFBQUEsbUJBQW1CLENBQUM7RUFDaEIsZUFBZSxFQUFFLFVBQVU7RUFDM0IsV0FBVyxFQUFFLE1BQ2pCLEdBQUU7O0FBRUYsQUFBQSxpQkFBaUIsQ0FBQztFQUNkLFVBQVUsRUFBRSxJQUFJLEdBQ25COztBQUVELEFBQUEscUJBQXFCLENBQUM7RUFDbEIsV0FBVyxFQUFFLE1BQ2pCLEdBQUU7O0FBRUYsQUFBQSxrQkFBa0IsQ0FBQztFQUNmLFlBQVksRUFBRSxDQUFDO0VBQ2YsYUFBYSxFQUFFLENBQ25CLEdBQUU7O0FBRUYsQUFBYyxPQUFQLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztFQUNaLFdBQVcsRUFBRSxJQUFJLEdBQ3BCOztBQUVELEFBQUEsZ0JBQWdCLENBQUM7RUFDYixPQUFPLEVBQUUsSUFBSTtFQUNiLFNBQVMsRUFBRSxDQUFDO0VBQ1osZUFBZSxFQUFFLGFBQ3JCLEdBQUU7O0FBRUYsQUFBQSxvQkFBb0IsQ0FBQztFQUNqQixTQUFTLEVBQUUsQ0FDZixHQUFFOztBQUVGLEFBQUEsbUJBQW1CLENBQUM7RUFDaEIsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsQ0FDWixHQUFFOztBQUVGLEFBQVUsT0FBSCxHQUFHLE9BQU8sQ0FBQztFQUNkLFVBQVUsRUFBRSxHQUFHLENBQUMsS0FBSyxDdEIxQ0wsT0FBTyxHc0IyQzFCOztBQUVELEFBQUEscUJBQXFCLENBQUM7RUFDbEIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLElBQUk7RUFDVCxJQUFJLEVBQUUsSUFBSSxHQUNiOztBQUVELEFBQUEsZUFBZSxDQUFDO0VBQ1osY0FBYyxFQUFFLE1BQ3BCLEdBQUU7O0FBRUYsQUFBc0IsZUFBUCxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7RUFDcEIsV0FBVyxFQUFFLENBQUM7RUFDZCxVQUFVLEVBQUUsTUFDaEIsR0FBRTs7QUFFRixBQUFBLHNCQUFzQixDQUFDO0VBQ25CLFdBQVcsRUFBRSxDQUFDO0VBQ2QsS0FBSyxFQUFFLElBQ1gsR0FBRTs7QUFFRixBQUFBLHNCQUFzQixDQUFDO0VBQ25CLFdBQVcsRUFBRSxDQUFDO0VBQ2QsS0FBSyxFQUFFLElBQ1gsR0FBRTs7QUN0RUYsQUFBQSxhQUFhLENBQUM7RUFDVixVQUFVLEV2Qk1JLE9BQU87RXVCTHJCLE9BQU8sRUFBRSxJQUFJO0VBQ2IsT0FBTyxFQUFFLFVBQ2IsR0FBRTs7QUNQRixBQUFtQixrQkFBRCxDQUFDLDBCQUEwQixBQUFBLHFCQUFxQixDQUFDO0VBQy9ELE1BQU0sRUFBRSwyQkFBMkIsR0FDdEM7O0FBRUQsQUFBNEIsMkJBQUQsQ0FBQywwQkFBMEIsQUFBQSxxQkFBcUIsQ0FBQztFQUN4RSxZQUFZLEV4QklELE9BQU8sR3dCSHJCOztBQUVELEFBQTRFLDJCQUFqRCxDQUFDLDBCQUEwQixBQUFBLHFCQUFxQixDQUFDLDRCQUE0QixDQUFDO0VBQ3JHLFdBQVcsRUFBRSxJQUNqQixHQUFFOztBQUVGLEFBQTRFLDJCQUFqRCxDQUFDLDBCQUEwQixBQUFBLHFCQUFxQixDQUFDLHlCQUF5QixDQUFDO0VBQ2xHLE1BQU0sRUFBRSxJQUNaLEdBQUU7O0FBRUYsQUFBQSxvQkFBb0IsQUFBQSxpQkFBaUI7QUFDckMsQUFBMkUsMkJBQWhELENBQUMsb0JBQW9CLENBQUMseUJBQXlCLENBQUMsc0JBQXNCLENBQUM7RUFDOUYsWUFBWSxFeEJURCxPQUFPLEd3QlVyQjs7QUFFRCxBQUEyRSwyQkFBaEQsQ0FBQyxvQkFBb0IsQ0FBQyx5QkFBeUIsQ0FBQyxzQkFBc0IsQUFBQSxNQUFNLENBQUM7RUFDcEcsWUFBWSxFeEJwQkosT0FBTztFd0JxQmYsVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ3hCckJoQix3QkFBTztFd0JzQmYsT0FBTyxFQUFFLENBQ2IsR0FBRTs7QUFHRixBQUFpRCwyQkFBdEIsQ0FBQyxvQkFBb0IsQ0FBQyxxQ0FBcUMsQ0FBQSxBQUFBLGFBQUMsQUFBQSxFQUFlO0VBQ2xHLGdCQUFnQixFeEIzQlIsd0JBQU87RXdCNEJmLEtBQUssRXhCaENJLE9BQU8sR3dCaUNuQjs7QUFFRCxBQUFBLGtCQUFrQixBQUFBLE1BQU0sQ0FBQztFQUNyQixZQUFZLEV4QmhDSixPQUFPO0V3QmlDZixVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDeEJqQ2hCLHdCQUFPO0V3QmtDZixPQUFPLEVBQUUsQ0FDYixHQUFFOztBQUVGLEFBQW1CLGtCQUFELENBQUMsMEJBQTBCLENBQUM7RUFDMUMsTUFBTSxFQUFFLGVBQWU7RUFDdkIsT0FBTyxFQUFFLEtBQUssR0FDakI7O0FBRUQsQUFBdUQsMkJBQTVCLENBQUMsMEJBQTBCLENBQUMsNEJBQTRCLENBQUM7RUFDaEYsV0FBVyxFQUFFLGlCQUFpQixHQUNqQzs7QUFFRCxBQUE4QyxrQkFBNUIsQ0FBQywwQkFBMEIsQ0FBQyw0QkFBNEIsQ0FBQztFQUN2RSxXQUFXLEVBQUUsaUJBQWlCLEdBQ2pDOztBQy9DRCxBQUFBLFNBQVMsQ0FBQztFQUNOLFdBQVcsRUFBRSxNQUNqQixHQUFFOztBQUVGLEFBQUEsU0FBUyxBQUFBLFdBQVcsQ0FBQztFQUNqQixLQUFLLEVBQUUsSUFBSSxHQUNkOztBQUNELEFBQXFCLFNBQVosQUFBQSxXQUFXLENBQUMsS0FBSyxDQUFDO0VBQ3ZCLE9BQU8sRUFBRSxLQUFLO0VBQ2QsVUFBVSxFQUFFLEtBQUs7RUFDakIsVUFBVSxFQUFFLE1BQU0sR0FDckI7O0FBQ0QsQUFBcUIsU0FBWixBQUFBLFdBQVcsQ0FBQyxFQUFFLEVBQUUsQUFBcUIsU0FBWixBQUFBLFdBQVcsQ0FBQyxFQUFFLENBQUM7RUFDN0MsTUFBTSxFQUFFLGlCQUFpQixHQUM1Qjs7QUFDRCxBQUFxQixTQUFaLEFBQUEsV0FBVyxDQUFDLEtBQUssRUFBRSxBQUEyQixTQUFsQixBQUFBLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO0VBQ3RELE9BQU8sRUFBRSxLQUFLO0VBQ2QsS0FBSyxFQUFFLElBQUk7RUFDWCxZQUFZLEVBQUUsS0FBSyxHQUN0Qjs7QUFDRCxBQUFxQixTQUFaLEFBQUEsV0FBVyxDQUFDLEtBQUssQ0FBQztFQUN2QixLQUFLLEVBQUUsaUJBQWtCLEdBQzVCOztBQUVELEFBQVUsU0FBRCxDQUFDLEVBQUUsQ0FBQztFQUNULGNBQWMsRUFBRSxNQUNwQixHQUFFOztBQUVGLEFBQWdCLFNBQVAsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO0VBQ2YsY0FBYyxFQUFFLE1BQU07RUFDdEIsYUFBYSxFQUFFLGlCQUFpQixHQUNuQzs7QUFFRCxBQUFXLFNBQUYsQ0FBRSxFQUFFLEFBQUEsSUFBSSxDQUFDO0VBQ2QsS0FBSyxFQUFFLEVBQUU7RUFDVCxXQUFXLEVBQUUsTUFBTSxHQUN0Qjs7QUFFRCxBQUE0QixTQUFuQixBQUFBLFlBQVksQ0FBQyxLQUFLLENBQUMsRUFBRSxBQUFBLE1BQU07QUFDcEMsQUFBc0MsU0FBN0IsQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLEVBQUUsQUFBQSxNQUFNLENBQUMsRUFBRTtBQUN4QyxBQUFzQyxTQUE3QixDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsRUFBRSxBQUFBLE1BQU0sQ0FBQyxFQUFFLENBQUM7RUFDckMsZ0JBQWdCLEV6QjFDUix3QkFBTyxHeUIyQ2xCOztBQUVELEFBQVUsU0FBRCxDQUFDLGFBQWEsQUFBQSxNQUFNLENBQUM7RUFDMUIsWUFBWSxFekI5Q0osT0FBTztFeUIrQ2YsVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ3pCL0NoQix3QkFBTyxHeUJnRGxCOztBQUVELEFBQUEsa0JBQWtCLENBQUM7RUFDZixhQUFhLEVBQUUsSUFBSTtFQUNuQixPQUFPLEVBQUUsSUFBSSxHQUNoQjs7QUFFRCxBQUF5QixrQkFBUCxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7RUFDdkIsV0FBVyxFQUFFLElBQ2pCLEdBQUU7O0FBRUYsdUJBQXVCO0FBQ3ZCLEFBQUEscUJBQXFCLENBQUM7RUFDbEIsUUFBUSxFQUFFLFFBQ2QsR0FBRTs7QUFFRixBQUEyQyxxQkFBdEIsQ0FBQyxLQUFLLENBQUMsRUFBRSxBQUFBLFlBQVksQ0FBQyxFQUFFLENBQUM7RUFDMUMsUUFBUSxFQUFFLE1BQU07RUFDaEIsR0FBRyxFQUFFLENBQUM7RUFDTixVQUFVLEVBQUUsT0FBTyxHQUN0Qjs7QUFFRCxBQUEwQyxxQkFBckIsQ0FBQyxLQUFLLENBQUMsRUFBRSxBQUFBLFdBQVcsQ0FBQyxFQUFFLENBQUM7RUFDekMsUUFBUSxFQUFFLE1BQU07RUFDaEIsR0FBRyxFQUFFLElBQUk7RUFDVCxVQUFVLEVBQUUsT0FBTyxHQUN0Qjs7QUFFRCxBQUE0QixxQkFBUCxDQUFDLEtBQUssQ0FBQyxFQUFFLEFBQUEsT0FBTyxDQUFDO0VBQ2xDLE9BQU8sRUFBRSxFQUFFO0VBQ1gsUUFBUSxFQUFFLFFBQVE7RUFDbEIsSUFBSSxFQUFFLENBQUM7RUFDUCxNQUFNLEVBQUUsQ0FBQztFQUNULEtBQUssRUFBRSxJQUFJO0VBQ1gsYUFBYSxFQUFFLGNBQWMsR0FDaEM7O0FBRUQsQUFBQSx5QkFBeUIsQ0FBQztFQUN0QixPQUFPLEVBQUUsSUFBSTtFQUNiLGVBQWUsRUFBRSxhQUNyQixHQUFFOztBQUVGLEFBQUEsc0JBQXNCLENBQUM7RUFDbkIsT0FBTyxFQUFFLElBQUk7RUFDYixXQUFXLEVBQUUsTUFBTTtFQUNuQixVQUFVLEVBQUUsUUFDaEIsR0FBRTs7QUFFRixBQUF5QixzQkFBSCxHQUFHLENBQUMsQ0FBQztFQUN2QixNQUFNLEVBQUUsYUFBYSxHQUV4Qjs7QUFFRCxBQUFBLG9CQUFvQixDQUFDO0VBQ2pCLEtBQUssRUFBRSxJQUNYLEdBQUU7O0FBRUYsQUFBQSx3QkFBd0IsQ0FBQztFQUNyQixLQUFLLEVBQUUsSUFDWCxHQUFFOztBQUVGLEFBRUksa0JBRmMsQ0FFZCxFQUFFLEVBRk4sQUFFUSxrQkFGVSxDQUVWLEVBQUUsQ0FBQztFQUNILE9BQU8sRUFBRSxPQUNiLEdBQUU7O0FBR04sQUFBdUIsc0JBQUQsQ0FBQyxLQUFLLEFBQUEsVUFBVyxDQUFBLEFBQUEsSUFBSSxFQUFFO0VBQ3pDLFVBQVUsRUFBRSxPQUF3QixHQUN2Qzs7QUFFRCxBQUFBLG9CQUFvQixDQUFDO0VBQ2pCLFdBQVcsRUFBRSxNQUFNLEdBQ3RCOztBQUVELEFBQXVCLG9CQUFILEdBQUcsb0JBQW9CLENBQUM7RUFDeEMsVUFBVSxFQUFFLE1BQ2hCLEdBQUU7O0FBRUYsQUFBQSxxQkFBcUIsQ0FBQztFQUNsQixVQUFVLEVBQUUsTUFBTSxHQUNyQjs7QUFFRCxBQUEyQiwwQkFBRCxDQUFDLEVBQUUsQ0FBQztFQUMxQixnQkFBZ0IsRUFBRSxPQUFPLEdBQzVCOztBQUVELEFBQUEsc0JBQXNCLENBQUM7RUFDbkIsZ0JBQWdCLEV6QjFJUCx1QkFBcUIsR3lCMklqQzs7QUFFRCxBQUFBLHVCQUF1QixDQUFDO0VBQ3BCLGdCQUFnQixFekJoSVAsdUJBQWlCLEd5QmlJN0I7O0FBRUQsQUFBQSxvQkFBb0IsQ0FBQztFQUNqQixnQkFBZ0IsRXpCdklULHNCQUFvQixHeUJ3STlCOztBQ25KRCxBQUFBLGlCQUFpQixDQUFDO0VBQ2QsT0FBTyxFQUFFLElBQUk7RUFDYixXQUFXLEVBQUUsTUFBTTtFQUNuQixLQUFLLEVBQUUsV0FBVztFQUNsQixLQUFLLEVBQUUsT0FBTztFQUNkLE1BQU0sRUFBRSxPQUFPLEdBQ2xCOztBQUVELEFBQUEsc0JBQXNCLENBQUM7RUFDbkIsS0FBSyxFMUJFRSxPQUFvQjtFMEJEM0IsSUFBSSxFMUJDRyxPQUFvQixHMEJBOUI7O0FBRUQsQUFBQSx1QkFBdUIsQ0FBQztFQUNwQixLQUFLLEUxQlJNLE9BQU87RTBCU2xCLElBQUksRTFCVE8sT0FBTyxHMEJVckI7O0FBRUQsQUFBQSx3QkFBd0IsQ0FBQztFQUNyQixLQUFLLEUxQkxJLE9BQWlCO0UwQk0xQixJQUFJLEUxQk5LLE9BQWlCLEcwQk83Qjs7QUFFRCxBQUF3QixpQkFBUCxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7RUFDdEIsV0FBVyxFQUFFLE1BQ2pCLEdBQUU7O0FBRUYsQUFBQSx1QkFBdUIsQ0FBQztFQUNwQixLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxJQUFJLEdBQ2Y7O0FBRUQsQUFBQSx1QkFBdUIsQ0FBQztFQUNwQixXQUFXLEVBQUUsQ0FBQztFQUNkLFNBQVMsRUFBRSxJQUNmLEdBQUU7O0FDakRGLEFBQUEsV0FBVyxDQUFDO0VBQ1IsUUFBUSxFQUFFLElBQUk7RUFDZCxRQUFRLEVBQUUsS0FDZCxHQUFFOztBQUVGLEFBQVksV0FBRCxDQUFDLEdBQUcsQ0FBQztFQUNaLFFBQVEsRUFBRSxNQUFNO0VBQ2hCLGNBQWMsRUFBRSxJQUNwQixHQUFFOztBQUVGLEFBQVksV0FBRCxDQUFDLEdBQUcsQUFBQSxPQUFPLENBQUM7RUFDbkIsT0FBTyxFQUFFLEtBQ2IsR0FBRTs7QUFFRixBQUFBLFdBQVcsRUFBRSxBQUFZLFdBQUQsQ0FBQyxHQUFHLENBQUM7RUFDekIsU0FBUyxFQUFFLEdBQUc7RUFDZCxXQUFXLEVBQUUsQ0FBQztFQUNkLE1BQU0sRUFBRSxDQUFDO0VBQ1QsT0FBTyxFQUFFLENBQ2IsR0FBRTs7QUFFRixBQUFtQixrQkFBRCxDQUFDLEdBQUcsQUFBQSxPQUFPLENBQUM7RUFDMUIsT0FBTyxFQUFFLFFBQ2IsR0FBRTs7QUFFRixBQUFBLG9CQUFvQixDQUFDO0VBQ2pCLFFBQVEsRUFBRSxRQUNkLEdBQUU7O0FBRUYsQUFBQSxnQkFBZ0IsQ0FBQztFQUNiLFFBQVEsRUFBRSxJQUNkLEdBQUU7O0FBRUYsQUFBcUIsb0JBQUQsQ0FBQyxXQUFXLENBQUM7RUFDN0IsUUFBUSxFQUFFLFFBQ2QsR0FBRTs7QUFFRixBQUFzQixxQkFBRCxDQUFDLFdBQVcsQ0FBQztFQUM5QixPQUFPLEVBQUUsQ0FBQztFQUNWLFVBQVUsRUFBRSxlQUNoQixHQUFFOztBQUVGLEFBQTRCLHFCQUFQLEFBQUEsTUFBTSxDQUFDLFdBQVcsQ0FBQztFQUNwQyxPQUFPLEVBQUUsQ0FDYixHQUFFOztBQUVGLEFBQUEsV0FBVyxBQUFBLElBQUssRUFBQSxBQUFBLEFBQUEsZ0JBQUMsQUFBQSxJQUFvQixBQUFBLFdBQVcsQ0FBQSxBQUFBLGdCQUFDLENBQUQsVUFBQyxBQUFBLEVBQTZCO0VBQzFFLE1BQU0sRUFBRSxDQUFDO0VBQ1QsVUFBVSxFQUFFLElBQ2hCLEdBQUU7O0FBRUYsQUFBb0MsV0FBekIsQUFBQSxJQUFLLEVBQUEsQUFBQSxBQUFBLGdCQUFDLEFBQUEsR0FBbUIsR0FBRyxFQUFFLEFBQXlDLFdBQTlCLENBQUEsQUFBQSxnQkFBQyxDQUFELFVBQUMsQUFBQSxFQUE2QixHQUFHLENBQUM7RUFDbEYsTUFBTSxFQUFFLEdBQ1osR0FBRTs7QUFFRixBQUFBLGtCQUFrQixBQUFBLFdBQVcsQUFBQSxJQUFLLEVBQUEsQUFBQSxBQUFBLGdCQUFDLEFBQUEsSUFBb0IsQUFBQSxrQkFBa0IsQUFBQSxXQUFXLENBQUEsQUFBQSxnQkFBQyxDQUFELFVBQUMsQUFBQSxFQUE2QjtFQUM5RyxNQUFNLEVBQUUsTUFDWixHQUFFOztBQUVGLEFBQXFCLG9CQUFELENBQUMsV0FBVyxBQUFBLElBQUssRUFBQSxBQUFBLEFBQUEsZ0JBQUMsQUFBQSxJQUFvQixBQUFxQixvQkFBRCxDQUFDLFdBQVcsQ0FBQSxBQUFBLGdCQUFDLENBQUQsVUFBQyxBQUFBLEVBQTZCO0VBQ3BILElBQUksRUFBRSxDQUNWLEdBQUU7O0FBRUYsQUFBQSxXQUFXLENBQUEsQUFBQSxnQkFBQyxDQUFELFFBQUMsQUFBQSxFQUEyQjtFQUNuQyxLQUFLLEVBQUUsQ0FBQztFQUNSLFNBQVMsRUFBRSxJQUNmLEdBQUU7O0FBRUYsQUFBdUMsV0FBNUIsQ0FBQSxBQUFBLGdCQUFDLENBQUQsUUFBQyxBQUFBLEVBQTJCLEdBQUcsQ0FBQztFQUN2QyxLQUFLLEVBQUUsR0FDWCxHQUFFOztBQUVGLEFBQUEsa0JBQWtCLEFBQUEsV0FBVyxDQUFBLEFBQUEsZ0JBQUMsQ0FBRCxRQUFDLEFBQUEsRUFBMkI7RUFDckQsS0FBSyxFQUFFLE1BQ1gsR0FBRTs7QUFFRixBQUFxQixvQkFBRCxDQUFDLFdBQVcsQ0FBQSxBQUFBLGdCQUFDLENBQUQsUUFBQyxBQUFBLEVBQTJCO0VBQ3hELEdBQUcsRUFBRSxDQUNULEdBQUU7O0NDbkVGLEFBQUEsQUFBQSxPQUFDLEFBQUEsRUFBUztFQUNOLE9BQU8sRUFBRSxJQUFJLEdBQ2hCOztBQUVELEFBQUEsZUFBZSxDQUFDO0VBQ1osT0FBTyxFQUFFLElBQ2IsR0FBRTs7QUFFRixBQUFBLFlBQVksQ0FBQztFQUNULFdBQVcsRUFBRSxNQUNqQixHQUFFOztBQUVGLEFBQUEsY0FBYyxDQUFDO0VBQ1gsV0FBVyxFQUFFLFFBQ2pCLEdBQUU7O0FBRUYsQUFBQSxXQUFXLENBQUM7RUFDUixVQUFVLEVBQUUsSUFBSTtFQUNoQixPQUFPLEVBQUUsSUFBSTtFQUNiLFVBQVUsRUFBRSxJQUNoQixHQUFFOztBQUVGLEFBQUEsWUFBWSxDQUFDO0VBQ1QsU0FBUyxFQUFFLENBQ2YsR0FBRTs7QUFFRixBQUFBLGNBQWMsQ0FBQztFQUNYLFNBQVMsRUFBRSxHQUFHO0VBQ2QsS0FBSyxFQUFFLEdBQ1gsR0FBRTs7QUFFRixBQUFBLGNBQWMsQ0FBQztFQUNYLFNBQVMsRUFBRSxHQUFHO0VBQ2QsS0FBSyxFQUFFLEdBQ1gsR0FBRTs7QUFFRixBQUFBLGNBQWMsQ0FBQztFQUNYLFNBQVMsRUFBRSxHQUFHO0VBQ2QsS0FBSyxFQUFFLEdBQ1gsR0FBRTs7QUFFRixBQUFBLGNBQWMsQ0FBQztFQUNYLFNBQVMsRUFBRSxHQUFHO0VBQ2QsS0FBSyxFQUFFLEdBQ1gsR0FBRTs7QUFFRixBQUFBLGVBQWUsQ0FBQztFQUNaLFNBQVMsRUFBRSxLQUFLO0VBQ2hCLEtBQUssRUFBRSxLQUNYLEdBQUU7O0FBRUYsQUFBQSxlQUFlLENBQUM7RUFDWixTQUFTLEVBQUUsS0FBSztFQUNoQixLQUFLLEVBQUUsS0FDWCxHQUFFOztBQUVGLEFBQUEsZUFBZSxDQUFDO0VBQ1osU0FBUyxFQUFFLEtBQUs7RUFDaEIsS0FBSyxFQUFFLEtBQ1gsR0FBRTs7QUFFRixBQUFBLGNBQWMsQ0FBQztFQUNYLFNBQVMsRUFBRSxJQUFJO0VBQ2YsS0FBSyxFQUFFLElBQ1gsR0FBRTs7QUFFRixBQUFBLGlCQUFpQixDQUFDO0VBQ2QsTUFBTSxFQUFFLElBQUk7RUFDWixVQUFVLEVBQUUsSUFBSSxHQUNuQjs7QUFFRCxBQUFBLGlCQUFpQixDQUFDO0VBQ2QsTUFBTSxFQUFFLElBQUk7RUFDWixVQUFVLEVBQUUsSUFBSSxHQUNuQjs7QUFFRCxBQUFBLDBCQUEwQixDQUFDO0VBQ3ZCLGdCQUFnQixFNUIvRFQsc0JBQW9CLEc0QmdFOUI7O0FBRUQsQUFBQSw0QkFBNEIsQ0FBQztFQUN6QixnQkFBZ0IsRTVCaEVQLHVCQUFpQixHNEJpRTdCOztBQUVELEFBQUEsNEJBQTRCLENBQUM7RUFDekIsZ0JBQWdCLEU1QmxGUCx1QkFBcUIsRzRCbUZqQzs7QUFFRCxBQUFBLDJCQUEyQixDQUFDO0VBQ3hCLGdCQUFnQixFQUFFLE9BQTRCLEdBQ2pEOztBQUVELEFBQUEsZUFBZSxBQUFBLE9BQU8sQ0FBQztFQUNuQixRQUFRLEVBQUUsS0FBSztFQUNmLE9BQU8sRUFBRSxlQUFlO0VBQ3hCLFVBQVUsRUFBRSxHQUFHO0VBQ2YsS0FBSyxFQUFFLEtBQUs7RUFDWixPQUFPLEVBQUUsQ0FBQztFQUNWLE1BQU0sRUFBRSxLQUFLO0VBQ2IsS0FBSyxFQUFFLEtBQUs7RUFDWixPQUFPLEVBQUUsSUFBSTtFQUNiLFNBQVMsRUFBRSxjQUFjO0VBQ3pCLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLEtBQUssRUFBRSxLQUFLO0VBQ1osZ0JBQWdCLEVBQUUsSUFBSSxHQUN6Qjs7QUFFRCxBQUFBLGlCQUFpQixDQUFDO0VBQ2QsWUFBWSxFQUFFLEtBQ2xCLEdBQUU7O0FBRUYsQUFBQSxvQkFBb0IsQ0FBQztFQUNqQixNQUFNLEVBQUUsSUFBSTtFQUNaLEtBQUssRUFBRSxJQUFJO0VBQ1gsYUFBYSxFQUFFLEdBQUc7RUFDbEIsT0FBTyxFQUFFLFlBQVksR0FDeEI7O0FBRUQsQUFBQSxZQUFZLEFBQUEsWUFBWSxDQUFDO0VBQ3JCLGdCQUFnQixFQUFFLFdBQWE7RUFDL0IsWUFBWSxFQUFDLEdBQUcsR0FDbkI7O0FDM0hELE1BQU0sQ0FBQyxLQUFLO0VBQ1IsQUFBQSxTQUFTLENBQUM7SUFDTixTQUFTLEVBQUUsSUFBSTtJQUNmLElBQUksRUFBRSxRQUFRLEdBQ2pCO0VBRUQsS0FBSztJQUNELElBQUksRUFBRSxJQUFJOztBQ0dsQixBQUFrQixVQUFSLEFBQUEsT0FBTyxDQUFDLFVBQVUsQ0FBQztFQUN6QixnQkFBZ0IsRTlCTlAsT0FBcUI7RThCTzlCLFlBQVksRTlCUEgsT0FBcUIsRzhCUWpDOztBQUlELEFBQUEsUUFBUSxDQUFDO0VBQ0wsV0FBVyxFQUFFLE9BQ2pCLEdBQUU7O0FBRUYsQUFBQSxjQUFjLENBQUM7RUFDWCxTQUFTLEVBQUUsS0FBSztFQUNoQixVQUFVLEVBQUUsSUFBSTtFQUNoQixTQUFTLEVBQUUsSUFBSTtFQUNmLE9BQU8sRUFBRSxJQUFJO0VBQ2IsZ0JBQWdCLEU5QnZCSCxPQUFPO0U4QndCcEIsV0FBVyxFQUFFLFFBQVEsR0FDeEI7O0FBRUQsQUFBZ0IsZUFBRCxDQUFDLE1BQU0sQUFBQSxRQUFRO0FBQzlCLEFBQXFDLGdCQUFyQixDQUFBLEFBQUEsV0FBQyxFQUFhLEtBQUssQUFBbEIsRUFBb0IsTUFBTSxBQUFBLFFBQVEsQ0FBQztFQUNoRCxnQkFBZ0IsRTlCN0JILE9BQU8sRzhCOEJ2Qjs7QUFFRCxBQUFBLFFBQVEsQ0FBQztFQUNMLGdCQUFnQixFOUJ0QkYsT0FBTyxHOEJ1QnhCOztBQUdELEFBQUEsY0FBYyxDQUFDO0VBQ1gsT0FBTyxFQUFFLElBQUksR0FDaEI7O0FBRUQsQUFBQSx5QkFBeUIsQ0FBQztFQUN0QixVQUFVLEVBQUUsS0FBSztFQUNqQixVQUFVLEVBQUUsSUFBSSxHQUNuQjs7QUFFRCxBQUFlLGNBQUQsQ0FBQyxFQUFFLENBQUM7RUFDZCxRQUFRLEVBQUUsUUFBUSxHQUNyQjs7QUFFRCxBQUFlLGNBQUQsQ0FBQyxRQUFRLENBQUM7RUFDcEIsT0FBTyxFQUFFLElBQUk7RUFDYixRQUFRLEVBQUUsUUFBUTtFQUNsQixJQUFJLEVBQUUsSUFBSTtFQUNWLEdBQUcsRUFBRSxJQUFJLEdBQ1o7O0FBRUQsQUFBZSxjQUFELENBQUMsYUFBYSxDQUFDO0VBQ3pCLEtBQUssRUFBRSxJQUFJO0VBQ1gsSUFBSSxFQUFFLElBQUksR0FDYjs7QUFFRCxBQUFpQixjQUFILEdBQUcsRUFBRSxBQUFBLE1BQU0sQ0FBQztFQUN0QixnQkFBZ0IsRUFBRSxPQUN0QixHQUFFOztBQUVGLEFBQTRCLGNBQWQsR0FBRyxFQUFFLEFBQUEsTUFBTSxHQUFHLFFBQVEsQ0FBQztFQUNqQyxPQUFPLEVBQUUsS0FBSyxHQUNqQjs7QUFFRCxBQUF1QixjQUFULEFBQUEsUUFBUSxDQUFDLGNBQWMsQ0FBQztFQUNsQyxLQUFLLEVBQUUsSUFDWCxHQUFFOztBQUVGLEFBQXVCLGNBQVQsQUFBQSxRQUFRLENBQUMsY0FBYyxBQUFBLE1BQU07QUFDM0MsQUFBdUIsY0FBVCxBQUFBLFFBQVEsQ0FBQyxjQUFjLEFBQUEsTUFBTSxDQUFDO0VBQ3hDLEtBQUssRTlCNUVRLE9BQU8sRzhCNkV2Qjs7QUFFRCxBQUFBLENBQUMsQUFBQSxlQUFlLEFBQUEsTUFBTSxDQUFDO0VBQ25CLGdCQUFnQixFQUFFLFdBQ3RCLEdBQUU7O0FBRUYsQUFBQSxpQkFBaUIsQ0FBQztFQUNkLFlBQVksRTlCMUVELE9BQU8sRzhCMkVyQjs7QUFFRCxBQUF5QixZQUFiLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQztFQUMvQixLQUFLLEU5QjdFUyxPQUFPLEc4QjhFeEI7O0FBR0QsQUFBQSxjQUFjLEFBQUEsT0FBTyxFQUFFLEFBQUEsY0FBYyxBQUFBLE9BQU8sQ0FBQztFQUN6QyxnQkFBZ0IsRTlCekZBLE9BQU8sRzhCMEYxQjs7QUFHRCxBQUFBLGFBQWEsQ0FBQztFQUNWLGVBQWUsRUFBRSxhQUNyQixHQUFFOztBQUdGLEFBQTJCLDBCQUFELENBQUMsRUFBRTtBQUM3QixBQUEyQiwwQkFBRCxDQUFDLEVBQUUsQ0FBQztFQUMxQixPQUFPLEVBQUUsQ0FBQztFQUNWLE1BQU0sRUFBRSxDQUFDO0VBQ1QsZUFBZSxFQUFFLElBQ3JCLEdBQUU7O0FBRUYsQUFBQSx1QkFBdUIsQ0FBQztFQUNwQixZQUFZLEU5QmpHTCxPQUFvQixHOEJrRzlCOztBQUVELEFBQUEsdUJBQXVCLENBQUM7RUFDcEIsT0FBTyxFQUFFLEtBQUs7RUFDZCxPQUFPLEVBQUUsWUFDYixHQUFFIgp9 */ /* Scoped overrides for InputForm to remove/tone-down separators */
#vueInputForm .js-subcat .wg-row + .wg-row {
    border-top: none; /* removes the 1px grey line between .wg-row items inside subcategories */
}

.wg-main-menu__inner {
    display: inline-flex;
    flex-wrap: wrap;
    min-width: 0; /* allow the flex container to shrink */
    max-width: calc(100vw - 243px); /* never exceed the viewport width minus sidebar */
    box-sizing: border-box; /* include padding/border in width calculations */
    overflow-x: auto; /* keep content contained — scroll if necessary */
}

.wg-flex-1 {
    flex: 1;
}

/* Topbar: breadcrumb left, project menu bar right */
.wg-topbar {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 0rem 1rem;
    box-sizing: border-box;
    background: #eaeaea;
    gap: 0.75rem;
}

/* left area: breadcrumb — uses remaining space and will ellipsize if too long */
.wg-topbar__left {
    flex: 1 1 auto;
    min-width: 0; /* allow child to shrink inside flex */
    overflow: hidden;
}

    .wg-topbar__left > * {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        display: block;
    }

/* right area: project menu — fixed to right and won't push layout */
.wg-topbar__right {
    flex: 0 0 auto;
    margin-left: auto;
    display: flex;
    align-items: center;
}

/* Responsive: stack on very small screens */
@media (max-width: 767.98px) {
    .wg-topbar {
        flex-direction: column;
        align-items: stretch;
    }

    .wg-topbar__right {
        margin-left: 0;
        margin-top: 0.5rem;
        justify-content: flex-end;
    }
}


.wg-breadcrumb-nav .breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .5rem;
    background: transparent;
    padding: .5rem 0;
    margin: 0;
}

.wg-breadcrumb-nav .breadcrumb-item {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 60ch;
}

    .wg-breadcrumb-nav .breadcrumb-item + .breadcrumb-item::before {
        content: var(--bs-breadcrumb-divider, "/");
        color: #999;
        padding: 0 .5rem;
    }

.wg-breadcrumb-nav a.text-teal {
    color: #00A0AF;
    text-decoration: none;
}

    .wg-breadcrumb-nav a.text-teal:hover {
        text-decoration: underline;
    }

@media (max-width: 767.98px) {
    .wg-breadcrumb-nav .breadcrumb {
        gap: .25rem;
    }
    /* Components modal: make wider and show 6 columns per row */
    #componentsModal .modal-dialog {
        width: 90vw;
        max-width: 1400px; /* increase modal max width */
    }

    #componentsModal .modal-content {
        overflow: visible; /* allow children to overflow vertically if needed */
    }

    /* Target the modal's main menu layout only (do not change global .wg-main-menu__inner) */
    #componentsModal .wg-main-menu__inner {
        min-width: 0; /* allow it to shrink inside the modal */
        max-width: 100%;
        box-sizing: border-box;
        gap: 1rem; /* keep existing spacing */
        padding: 1rem 1.25rem; /* visually match previous modal padding */
    }

        /* 6 items per row inside the modal */
        #componentsModal .wg-main-menu__inner > .wg-main-menu__group {
            flex: 0 0 calc((100% - 5rem) / 6); /* account for five gaps of 1rem between 6 columns */
            max-width: calc((100% - 5rem) / 6);
            box-sizing: border-box;
            min-width: 120px; /* prevents columns collapsing to unusably small widths */
        }

    /* Responsive fallbacks */
    @media (max-width: 1199.98px) {
        /* At medium widths, show 4 columns */
        #componentsModal .wg-main-menu__inner > .wg-main-menu__group {
            flex: 0 0 calc((100% - 3rem) / 4);
            max-width: calc((100% - 3rem) / 4);
        }
    }

    @media (max-width: 767.98px) {
        /* Mobile: stack 1 per row and keep modal usable */
        #componentsModal .modal-dialog {
            width: 95vw;
            max-width: 95vw;
        }

        #componentsModal .wg-main-menu__inner > .wg-main-menu__group {
            flex: 0 0 100%;
            max-width: 100%;
        }
    }
}

.wg-dropdown-menu-left {
    top: 36px !important;
    left: 110px !important;
    transform: translateX(-100%) !important;
}

.wg-side-panel {
    position: sticky;
    background-color: #f4f4f4;
    border: 1px solid #ccc;
    box-sizing: border-box;
    margin-top: 2.5rem;
    padding: 10px;
    z-index: 1;
    max-height: 65vh;
    overflow-x: auto;
    top: 15em;
}

.wg-dd-top {
    background-color: #FFFFFF;
    position: sticky;
    top: 0;
    z-index: 5;
}

.wg-dd-actions {
    position: sticky;
    top: 10em;
    z-index: 3;
}

.wg-calc-inputs {
    position: sticky;
    top: 0;
    z-index: 1;
}

.wg-dd-side-panel {
    position: sticky;
    background-color: #f4f4f4;
    border: 1px solid #ccc;
    box-sizing: border-box;
    margin-top: 2.5rem;
    padding: 10px;
    padding-top:0;
    z-index: 2;
    max-height: 65vh;
    overflow-x: auto;
    top: 12em;
}

.wg-dd-metadata-panel {
    position: sticky;
    background-color: #f4f4f4;
    border: 1px solid #ccc;
    box-sizing: border-box;
    margin-top: 2.5rem;
    padding: 10px;
    z-index: 2;
    max-height: 65vh;
    overflow-x: auto;
    min-height: 50vh;
    top: 27em;
}

.wg-calc-info-panel {
    position: sticky;
    box-sizing: border-box;
    margin-top: 2.5rem;
    z-index: 2;
    max-height: 65vh;
    overflow-x: auto;
    min-height: 50vh;
    top: 15em;
}

.wg-section-row {
    display: flex;
    padding: .50rem 1rem;
    position: relative;
    justify-content: space-between;
    align-items: center;
}

.wg-calc-keyrange-scroll {
    max-height: 272px;
    overflow-y: auto;
}


.component-grid-side-tabcontent {
    background: #f5f7f8;
    border-radius: .25rem;
    padding: .75rem;
}

.component-grid-side-section-title {
    font-weight: bold;
    color: #333;
    margin-bottom: 1rem;
    margin-top: .5rem;
}

.component-grid-side-tab-card {
    background: #fff;
    border: 1px solid #e7ecef;
    border-radius: .25rem;
    padding: .75rem;
    margin-bottom: .75rem;
}

.component-grid-side-tab-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

    .component-grid-side-tab-list li {
        display: flex;
        align-items: center;
        padding: .25rem 0;
    }

.highlight {
    background-color: #d0f0ff;
}

.wg-tab-container.component-grid-side-tab .nav-link.active,
.wg-tab-container.component-grid-side-tab .nav-item.show .nav-link {
    background-color: #f5f7f8;
    border-color: #f5f7f8;
}
.wg-btn-link {
    color: #00A0AF;
}

.wg-highlight-yellow {
    background-color: #FFFFBF;
}

.wg-section-target {
    scroll-margin-top: 15em;
}

.wg-tree-summary {
    list-style: none;
    cursor: pointer;
    user-select: none;
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0.5rem;
    padding-top: 0;
}

    .wg-tree-summary::marker {
        content: "";
    }

.wg-tree-icon {
    display: inline-flex;
    width: 16px;
    height: 16px;
    transition: transform 0.2s ease;
    transform: rotate(-90deg);
}

.wg-tree-node[open] > .wg-tree-summary .wg-tree-icon {
    transform: rotate(0deg);
}

.wg-tree-node > ul {
    margin-left: 13px;
    padding-left: 2rem;
    border-left: 1px dashed #cfcfcf;
}

.wg-tree--item {
    position: relative;
    display: block;
    padding:  0.25rem;
    background-color: transparent;
    border: 0px;
}

.wg-tree-header {
    position: sticky;
    top: 0;
    z-index: 5;
    background: #f4f4f4;
    padding: 1rem .25rem;
}

.wg-tree-toggle-all {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border: 0;
    background: transparent;
    padding: 0;
    cursor: pointer;
    color: inherit;
    font: inherit;
    user-select: none;
}

    .wg-tree-toggle-all:focus,
    .wg-tree-toggle-all:focus-visible,
    .wg-tree-toggle-all:active {
        outline: none;
        box-shadow: none;
    }

    .wg-tree-toggle-all .wg-tree-icon {
        display: inline-flex;
        width: 16px;
        height: 16px;
        transition: transform 0.2s ease;
        transform: rotate(-90deg); 
    }

    .wg-tree-toggle-all[aria-expanded="true"] .wg-tree-icon {
        transform: rotate(0deg);
    }

.wg-section-scroll {
    scroll-margin-top: 300px;
}

.wg-scroll-modern {
    overflow-y: auto;
    scrollbar-width: thin; 
    scrollbar-color: #c1c1c1 transparent;
}

    .wg-scroll-modern::-webkit-scrollbar {
        width: 8px;
    }

    .wg-scroll-modern::-webkit-scrollbar-track {
        background: transparent;
    }

    .wg-scroll-modern::-webkit-scrollbar-thumb {
        background-color: #c1c1c1;
        border-radius: 8px;
        border: 2px solid transparent;
        background-clip: content-box;
    }

        .wg-scroll-modern::-webkit-scrollbar-thumb:hover {
            background-color: #a0a0a0;
        }


.wg-text-underline {
    text-decoration: underline;
}
.wg-calc-details-panel-info {
    font-weight: bold;
    float: right
}

.modal-fullscreen {
    width: 98vw;
    max-width: 98vw;
    height: 98vh;
    margin: 0;
    padding: 0;
}
    .modal-fullscreen .modal-content {
        height: 98vh;
        border-radius: 0;
    }

.modal.show .modal-dialog.modal-center-screen {
    position: fixed; 
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%) !important; 
    margin: 0 !important;
}


.manual-child-backdrop {
    position: fixed;
    inset: 0; 
    background: rgba(0, 0, 0, 0.5);
    z-index: 1060;
}

.modal.bootbox-manual {
    z-index: 1070;
}

.wg-cursor-pointer {
    cursor: pointer;
}