/*!****************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/style.css ***!
  \****************************************************************************************************************/



#ui-id-1 {
    position: absolute;
}

:root {
    --sidebar-width: 260px; 
    scroll-behavior: smooth;
    color-scheme: dark;
    --ui-bg: #121417; 
    --ui-bg-glow: transparent; 
    --ui-surface: #1e2125; 
    --ui-surface-muted: #2d3239;
    --ui-surface-subtle: #3f454d;
 
    --ui-border: #2d3239;
    --ui-border-strong: #3f454d;
    
    --ui-text: #e2e8f0; 
    --ui-text-muted: #94a3b8; 
    --ui-text-muted-strong: #323944; 
    --ui-text-soft: #64748b;
    --ui-heading: #ffffff; 
    
   
    --ui-primary: #FFCC00; 
    --ui-primary-hover: #E6B800;
    
    --ui-accent: #3f454d;
    --ui-accent-soft: rgba(255, 204, 0, 0.12); 
    --ui-accent-ring: rgba(255, 204, 0, 0.3);
    
    
    --ui-success: #10B981; 
    --ui-warning: #E05624; 
    --ui-danger:  #EF4444; 
    --ui-info:    #0EA5E9; 
    
 
    --ui-nav-bg: #0a0b0d; 
    --ui-nav-surface: #15171a; 
    --ui-nav-surface-hover: #1e2125;
    --ui-nav-border: #1a1c20; 
    --ui-nav-text: #ffffff; 
    --ui-nav-text-muted: #a3a3a3; 
    
  
    --ui-shadow-soft: 0 12px 32px rgba(0, 0, 0, 0.3);
    --ui-shadow-md: 0 16px 40px rgba(0, 0, 0, 0.5);
    --ui-radius-sm: 8px;
    --ui-radius-md: 12px;
    --ui-radius-lg: 16px;
}


html {
    font-size: 16px;
}



body {
    font-family: "Open Sans", sans-serif;
  
    background-color: var(--ui-bg); 
    color: var(--ui-text);
}

a {
    color: var(--ui-text); 
    font-weight: 600;
    transition: all 0.2s ease-in-out;
}

a:hover {
    color: #d9a407; 
    text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "Nunito", sans-serif;
    color: var(--ui-heading);
}


#main {
    background-color: transparent;
    margin-top: 60px;
    padding: 20px 30px;
    transition: all 0.3s;
    overflow-x: auto;
}

@media (max-width: 1199px) {
    #main {
        padding: 0px !important;
    }
}


.pagetitle {
    margin-bottom: 10px;
}

.pagetitle h1 {
    font-size: 24px;
    margin-bottom: 0;
    font-weight: 600;
    color: var(--ui-heading);
}


.back-to-top {
    position: fixed;
    visibility: hidden;
    opacity: 0;
    right: 15px;
    bottom: 15px;
    z-index: 99999;
    background: linear-gradient(135deg, var(--ui-primary), var(--ui-accent));
    width: 40px;
    height: 40px;
    border-radius: 12px;
    box-shadow: 0 12px 24px rgba(140, 80, 27, 0.24);
    transition: all 0.4s;
}

.back-to-top i {
    font-size: 24px;
    color: #fff;
    line-height: 0;
}

.back-to-top:hover {
    background: linear-gradient(135deg, var(--ui-primary-hover), var(--ui-accent));
    color: #fff;
}

.back-to-top.active {
    visibility: visible;
    opacity: 1;
}





.dropdown-menu {
    border-radius: var(--ui-radius-md);
    padding: 10px 0;
    -webkit-animation-name: dropdown-animate;
    animation-name: dropdown-animate;
    -webkit-animation-duration: 0.2s;
    animation-duration: 0.2s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    border: 1px solid var(--ui-border);
    background-color: var(--ui-surface);
    box-shadow: var(--ui-shadow-md);
}

.dropdown-menu .dropdown-header,
.dropdown-menu .dropdown-footer {
    text-align: center;
    font-size: 15px;
    padding: 10px 25px;
}

.dropdown-menu .dropdown-footer a {
    color: var(--ui-text-muted);
    text-decoration: underline;
}

.dropdown-menu .dropdown-footer a:hover {
    text-decoration: none;
}

.dropdown-menu .dropdown-divider {
    color: var(--ui-border);
    margin: 0;
}

.dropdown-menu .dropdown-item {
    font-size: 14px;
    padding: 10px 15px;
    transition: 0.3s;
}

.dropdown-menu .dropdown-item i {
    margin-right: 10px;
    font-size: 18px;
    line-height: 0;
}

.dropdown-menu .dropdown-item:hover {
    background-color: var(--ui-surface-muted);
}

@media (min-width: 768px) {
    .dropdown-menu-arrow::before {
        content: "";
        width: 13px;
        height: 13px;
        background: var(--ui-surface);
        position: absolute;
        top: -7px;
        right: 20px;
        transform: rotate(45deg);
        border-top: 1px solid var(--ui-border);
        border-left: 1px solid var(--ui-border);
    }
}

@-webkit-keyframes dropdown-animate {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }

    0% {
        opacity: 0;
    }
}

@keyframes dropdown-animate {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }

    0% {
        opacity: 0;
    }
}


.bg-primary-light {
    background-color: #fdf2c5;
    border-color: #fdf2c5;
}

.bg-secondary-light {
    background-color: #e2e3e5;
    border-color: #e2e3e5;
}

.bg-success-light {
    background-color: #d1e7dd;
    border-color: #d1e7dd;
}

.bg-danger-light {
    background-color: #f8d7da;
    border-color: #f8d7da;
}

.bg-warning-light {
    background-color: #fff3cd;
    border-color: #fff3cd;
}

.bg-info-light {
    background-color: #cff4fc;
    border-color: #cff4fc;
}

.bg-dark-light {
    background-color: #d3d3d4;
    border-color: #d3d3d4;
}


.card {
    margin-bottom: 24px;
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius-lg);
    background-color: var(--ui-surface);
    box-shadow: var(--ui-shadow-soft);
}

.card-header,
.card-footer {
    border-color: var(--ui-border);
    background-color: transparent;
    color: var(--ui-text-muted);
    padding: 16px 20px;
}

.card-title {
    padding: 20px 0 15px 0;
    font-size: 18px;
    font-weight: 600;
    color: var(--ui-heading);
    font-family: "Poppins", sans-serif;
}

.card-title span {
    color: var(--ui-text-soft);
    font-size: 14px;
    font-weight: 400;
}

.card-body {
    padding: 0 20px 20px 20px;
}

.card-img-overlay {
    background-color: rgba(255, 255, 255, 0.72);
}


.alert-heading {
    font-weight: 500;
    font-family: "Poppins", sans-serif;
    font-size: 20px;
}


.btn-close {
    background-size: 25%;
}

.btn-close:focus {
    outline: 0;
    box-shadow: none;
}


.accordion-item {
    border: 1px solid var(--ui-border);
}

.accordion-button:focus {
    outline: 0;
    box-shadow: none;
}

.accordion-button:not(.collapsed) {
    color: var(--ui-heading);
    background-color: var(--ui-surface-muted);
}

.accordion-flush .accordion-button {
    padding: 15px 0;
    background: none;
    border: 0;
}

.accordion-flush .accordion-button:not(.collapsed) {
    box-shadow: none;
    color: var(--ui-primary);
}

.accordion-flush .accordion-body {
    padding: 0 0 15px 0;
    color: var(--ui-text-muted);
    font-size: 15px;
}


.breadcrumb {
    font-size: 14px;
    font-family: "Nunito", sans-serif;
    color: var(--ui-text-soft);
    font-weight: 600;
}

.breadcrumb a {
    color: var(--ui-text-soft);
    transition: 0.3s;
}

.breadcrumb a:hover {
    color: var(--ui-text-muted);
}

.breadcrumb .breadcrumb-item::before {
    color: var(--ui-text-soft);
}

.breadcrumb .active {
    color: var(--ui-text-muted);
    font-weight: 600;
}


.nav-tabs-bordered {
    border-bottom: 1px solid var(--ui-border);
}

.nav-tabs-bordered .nav-link {
    margin-bottom: -1px;
    border: none;
    color: var(--ui-text-muted);
    font-weight: 600;
}

.nav-tabs-bordered .nav-link:hover,
.nav-tabs-bordered .nav-link:focus {
    color: var(--ui-primary);
}

.nav-tabs-bordered .nav-link.active {
    background-color: transparent;
    color: var(--ui-heading);
    border-bottom: 2px solid var(--ui-accent);
}



.logo {
    display: flex;
    align-items: center;
    gap: 6px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    max-width: 100%;

}
.logo,
.logo:hover,
.logo:focus,
.logo span,
.logo span:hover,
.logo span:focus {
    text-decoration: none;
}

.logo img {
    max-height: 60px;
    height: auto;
    width: auto;
}


.logo span {
    font-size: 22px;
    font-weight: 700;
    color: var(--ui-nav-text);
    font-family: "Nunito", sans-serif;
    display: inline-block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 100%;
    text-decoration: none;
}


@media (min-width: 1200px) {
    .logo {
        width: 280px;
    }
}


@media (max-width: 1199.98px) {
    .logo {
        width: auto;
        max-width: 180px;
    }

    .logo img {
        max-height: 40px;
    }

    .logo span {
        font-size: 16px;
    }
}


@media (max-width: 575.98px) {
    .logo {
        max-width: 140px;
    }

    .logo span {
        font-size: 14px;
    }
}

.header {
    transition: all 0.5s;
    z-index: 997;
    height: 60px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
    background: var(--ui-nav-bg); 
    border-bottom: 1px solid var(--ui-nav-border);
    padding-left: 20px;
}
.header .search-form input {
    border: 1px solid var(--ui-nav-border);
    background-color: var(--ui-nav-surface);
    font-size: 14px;
    color: var(--ui-nav-text);
    padding: 9px 40px 9px 14px;
    border-radius: 8px; 
    transition: 0.3s;
    width: 100%;
}
.header .toggle-sidebar-btn {
    font-size: 30px;
    padding-left: 10px;
    cursor: pointer;
    color: var(--ui-nav-text);
    transition: color 0.2s ease;
}

.header .toggle-sidebar-btn:hover {
    color: var(--ui-primary);
}

.header .search-bar {
    min-width: 360px;
    padding: 0 20px;
}

@media (max-width: 1199px) {
    .header .search-bar {
        position: fixed;
        top: 60px;
        left: 0;
        right: 0;
        width: 100%;
        min-width: 0;
        padding: 12px 14px 14px;
        box-sizing: border-box;
        background: var(--ui-nav-bg);
        border-bottom: 1px solid var(--ui-nav-border);
        box-shadow: 0 16px 36px rgba(0, 0, 0, 0.35);
        z-index: 9999;
        transition: 0.3s;
        visibility: hidden;
        opacity: 0;
        pointer-events: none;
    }

    body.search-bar-open .header .search-bar {
        visibility: visible;
        opacity: 1;
        pointer-events: auto;
    }

    .header .search-bar-show {
        visibility: visible;
        opacity: 1;
        pointer-events: auto;
    }

    .header .search-form {
        display: grid;
        grid-template-columns: 42px minmax(0, 1fr);
        grid-template-areas:
            "label label"
            "button input";
        column-gap: 0.4rem;
        row-gap: 0.4rem;
        padding: 0.65rem 0.75rem;
        border: 1px solid var(--ui-nav-border);
        border-radius: 14px;
        background: var(--ui-nav-surface);
        align-items: center;
    }

    .header .search-bar-label {
        display: block;
        width: 100%;
        margin: 0 0 0.1rem;
        grid-area: label;
        color: var(--ui-nav-text-muted);
        font-size: 0.68rem;
        font-weight: 800;
        letter-spacing: 0.08em;
        text-transform: uppercase;
    }

    .header .search-form input {
        min-width: 0;
        width: 100%;
        grid-area: input;
        padding-right: 0.75rem;
    }

    .header .search-form button {
        width: 42px;
        height: 42px;
        margin-left: 0;
        border-radius: 10px;
        grid-area: button;
    }

    .header .search-form input.form-control {
        width: 100% !important;
    }

    .header .search-form button[type="submit"] {
        margin-left: 0;
        align-self: center;
    }
}

.header .search-form {
    width: 100%;
}

.header .search-form input {
    border: 1px solid rgba(255, 255, 255, 0.14);
    background-color: var(--ui-nav-surface);
    font-size: 14px;
    color: var(--ui-nav-text);
    padding: 9px 40px 9px 14px;
    border-radius: 8px; 
    transition: 0.3s;
    width: 100%;
}

.header .search-bar-label {
    display: none;
}

.header .search-form input:focus,
.header .search-form input:hover {
    outline: none;
    box-shadow: 0 0 0 4px var(--ui-accent-ring);
    border: 1px solid rgba(242, 195, 0, 0.5);
    background-color: var(--ui-nav-surface-hover);
}

.header .search-form input::placeholder {
    color: var(--ui-nav-text-muted);
}

.header .search-form button {
    border: 0;
    padding: 0;
    margin-left: -30px;
    background: none;
}

.header .search-form button i {
    color: var(--ui-nav-text-muted);
    transition: color 0.2s ease;
}

.header .search-form button:hover i {
    color: var(--ui-primary);
}



.header-nav ul {
    list-style: none;
}

.header-nav>ul {
    margin: 0;
    padding: 0;
}

.header-nav .nav-icon {
    font-size: 20px;
    color: var(--ui-nav-text);
    margin-right: 25px;
    position: relative;
    transition: 0.3s;
}

.header-nav .search-bar-toggle {
    touch-action: manipulation;
}

.header-nav .nav-icon:hover {
    color: var(--ui-primary);
}

.header-nav .nav-profile {
    color: #FFFFFF;
}

.header-nav .nav-profile img {
    max-height: 54px;
    margin-right: 2px;
}

.header-nav .nav-profile span {
    font-size: 14px;
    font-weight: 600;
    color: #f8fafc;
}

.header-nav .badge-number {
    position: absolute;
    inset: -2px -5px auto auto;
    font-weight: normal;
    font-size: 12px;
    padding: 3px 6px;
    background: var(--ui-primary);
    color: #2e2e2e;
    border: 1px solid rgba(0, 0, 0, 0.16);
    border-radius: 10px;
    font-weight: 700;
}

.header-nav .notifications {
    inset: 8px -15px auto auto !important;
}

.header-nav .notifications .notification-item {
    display: flex;
    align-items: center;
    padding: 15px 10px;
    transition: 0.3s;
}

.header-nav .notifications .notification-item i {
    margin: 0 20px 0 10px;
    font-size: 24px;
    color: var(--ui-primary);
}

.header-nav .notifications .notification-item h4 {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 5px;
    color: var(--ui-heading);
}

.header-nav .notifications .notification-item p {
    font-size: 13px;
    margin-bottom: 3px;
    color: var(--ui-text-muted);
}

.header-nav .notifications .notification-item:hover {
    background-color: var(--ui-surface-muted);
}

.header-nav .messages {
    inset: 8px -15px auto auto !important;
}

.header-nav .messages .message-item {
    padding: 15px 10px;
    transition: 0.3s;
}

.header-nav .messages .message-item a {
    display: flex;
}

.header-nav .messages .message-item img {
    margin: 0 20px 0 10px;
    max-height: 40px;
    border-radius: 50%;
    border: 2px solid rgba(191, 109, 36, 0.28);
}

.header-nav .messages .message-item h4 {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 5px;
    color: var(--ui-heading);
}

.header-nav .messages .message-item p {
    font-size: 13px;
    margin-bottom: 3px;
    color: var(--ui-text-muted);
}

.header-nav .messages .message-item:hover {
    background-color: var(--ui-surface-muted);
}

.header-nav .messages,
.header-nav .notifications,
.header-nav .profile {
    min-width: 240px;
    padding-bottom: 0;
    top: 8px !important;
    background-color: var(--ui-surface);
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius-md);
    box-shadow: var(--ui-shadow-md);
}

.header-nav .profile .dropdown-header h6 {
    font-size: 18px;
    margin-bottom: 0;
    font-weight: 600;
    color: var(--ui-heading);
}

.header-nav .profile .dropdown-header span {
    font-size: 14px;
    color: var(--ui-text-muted);
}

.header-nav .profile .dropdown-item {
    font-size: 14px;
    padding: 10px 15px;
    transition: 0.3s;
    color: var(--ui-text);
}

.header-nav .profile .dropdown-item i {
    margin-right: 10px;
    font-size: 18px;
    line-height: 0;
    color: var(--ui-primary);
    transition: 0.3s;
}

.header-nav .profile .dropdown-item:hover {
    background-color: var(--ui-surface-muted);
    color: var(--ui-heading);
}



.navbar-locale-switch.locale-select-shell {
    position: relative;
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    border: 1px solid var(--ui-border-strong);
    border-radius: 8px;
    background-color: var(--ui-nav-bg);
    box-shadow: inset 0 2px 4px rgba(0,0,0,0.15);
    cursor: pointer;
    transition: all 0.2s ease;
    overflow: visible;
}

.navbar-locale-switch .locale-select-label {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    gap: 0.38rem;
    padding: 0.15rem 1.45rem 0.15rem 0.55rem;
    color: var(--ui-text);
    font-size: 0.75rem;
    font-weight: 600;
    font-family: "Segoe UI", "Open Sans", sans-serif;
    line-height: 1.2;
    white-space: nowrap;
    overflow: visible;
    text-overflow: clip;
    pointer-events: none;
    max-width: none;
}

.navbar-locale-switch.locale-select-shell:hover {
    border-color: rgba(255, 204, 0, 0.4);
}

.navbar-locale-switch .locale-select-label::before {
    content: "";
    flex: 0 0 16px;
    width: 16px;
    height: 12px;
    border-radius: 2px;
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.14);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.navbar-locale-switch .locale-select-label::after {
    content: "";
    margin-left: auto;
    width: 7px;
    height: 7px;
    border-right: 1.8px solid rgba(226, 232, 240, 0.92);
    border-bottom: 1.8px solid rgba(226, 232, 240, 0.92);
    transform: rotate(45deg) translateY(-1px);
    transform-origin: center;
}

.navbar-locale-switch .locale-select-label[data-locale^="en"]::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 28 20%27%3E%3Crect width=%2728%27 height=%2720%27 fill=%27%23b22234%27/%3E%3Cpath d=%27M0 2h28M0 6h28M0 10h28M0 14h28M0 18h28%27 stroke=%27%23fff%27 stroke-width=%272%27/%3E%3Crect width=%2712%27 height=%2710%27 fill=%27%233c3b6e%27/%3E%3C/svg%3E");
}

.navbar-locale-switch .locale-select-label[data-locale^="es"]::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 28 20%27%3E%3Crect width=%2728%27 height=%2720%27 fill=%27%23c60b1e%27/%3E%3Crect y=%275%27 width=%2728%27 height=%2710%27 fill=%27%23ffc400%27/%3E%3C/svg%3E");
}

.navbar-locale-switch .locale-select-label[data-locale^="pt-br"]::before,
.navbar-locale-switch .locale-select-label[data-locale^="pt"]::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 28 20%27%3E%3Crect width=%2728%27 height=%2720%27 fill=%27%23009b3a%27/%3E%3Cpath d=%27M14 3 24 10 14 17 4 10Z%27 fill=%27%23ffdf00%27/%3E%3Ccircle cx=%2714%27 cy=%2710%27 r=%274.2%27 fill=%27%23002776%27/%3E%3C/svg%3E");
}

.navbar-locale-switch .locale-select-label[data-locale^="fr"]::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 28 20%27%3E%3Crect width=%2728%27 height=%2720%27 fill=%27%23fff%27/%3E%3Crect width=%279.33%27 height=%2720%27 fill=%27%230055a4%27/%3E%3Crect x=%2718.66%27 width=%279.34%27 height=%2720%27 fill=%27%23ef4135%27/%3E%3C/svg%3E");
}

.navbar-locale-switch .locale-select-label.is-disabled {
    opacity: 0.9;
}

.navbar-locale-switch.is-open .locale-select-label::after {
    transform: rotate(225deg) translateY(-1px);
}

.navbar-locale-switch .locale-select-menu {
    position: absolute;
    top: calc(100% + 0.36rem);
    left: 0;
    right: 0;
    display: none;
    padding: 0.32rem;
    border-radius: 12px;
    border: 1px solid var(--ui-border-strong);
    background: rgba(17, 25, 40, 0.98);
    box-shadow: 0 16px 28px rgba(0, 0, 0, 0.28);
    backdrop-filter: blur(12px);
    z-index: 1100;
}

.navbar-locale-switch.is-open .locale-select-menu {
    display: grid;
    gap: 0.18rem;
}

.navbar-locale-switch .locale-select-option {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    width: 100%;
    padding: 0.4rem 0.46rem;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: var(--ui-text);
    text-align: left;
    font-size: 0.76rem;
    font-weight: 700;
    white-space: nowrap;
    overflow: hidden;
}

.navbar-locale-switch .locale-select-option-text {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.navbar-locale-switch .locale-select-option:hover,
.navbar-locale-switch .locale-select-option.is-active {
    background: rgba(255, 204, 0, 0.12);
}

.navbar-locale-switch .locale-select-option-flag {
    flex: 0 0 16px;
    width: 16px;
    height: 12px;
    border-radius: 2px;
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.14);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.navbar-locale-switch .locale-select-option[data-locale^="en"] .locale-select-option-flag {
    background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 28 20%27%3E%3Crect width=%2728%27 height=%2720%27 fill=%27%23b22234%27/%3E%3Cpath d=%27M0 2h28M0 6h28M0 10h28M0 14h28M0 18h28%27 stroke=%27%23fff%27 stroke-width=%272%27/%3E%3Crect width=%2712%27 height=%2710%27 fill=%27%233c3b6e%27/%3E%3C/svg%3E");
}

.navbar-locale-switch .locale-select-option[data-locale^="es"] .locale-select-option-flag {
    background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 28 20%27%3E%3Crect width=%2728%27 height=%2720%27 fill=%27%23c60b1e%27/%3E%3Crect y=%275%27 width=%2728%27 height=%2710%27 fill=%27%23ffc400%27/%3E%3C/svg%3E");
}

.navbar-locale-switch .locale-select-option[data-locale^="pt-br"] .locale-select-option-flag,
.navbar-locale-switch .locale-select-option[data-locale^="pt"] .locale-select-option-flag {
    background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 28 20%27%3E%3Crect width=%2728%27 height=%2720%27 fill=%27%23009b3a%27/%3E%3Cpath d=%27M14 3 24 10 14 17 4 10Z%27 fill=%27%23ffdf00%27/%3E%3Ccircle cx=%2714%27 cy=%2710%27 r=%274.2%27 fill=%27%23002776%27/%3E%3C/svg%3E");
}

.navbar-locale-switch .locale-select-option[data-locale^="fr"] .locale-select-option-flag {
    background-image: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 28 20%27%3E%3Crect width=%2728%27 height=%2720%27 fill=%27%23fff%27/%3E%3Crect width=%279.33%27 height=%2720%27 fill=%27%230055a4%27/%3E%3Crect x=%2718.66%27 width=%279.34%27 height=%2720%27 fill=%27%23ef4135%27/%3E%3C/svg%3E");
}

.navbar-locale-switch #kit-locale-select.form-select-sm {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    opacity: 0 !important;
    pointer-events: none !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    border: 0 !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
}


.navbar-locale-switch #kit-locale-select.form-select-sm:hover {
    border-color: rgba(255, 204, 0, 0.4) !important;
}

.navbar-locale-switch #kit-locale-select.form-select-sm:focus {
  
    outline: none !important;
}


.navbar-locale-switch #kit-locale-select.form-select-sm option {
    background-color: var(--ui-surface) !important;
    color: var(--ui-text) !important;
    padding: 8px !important;
    font-size: 0.85rem !important;
}

@media (max-width: 768px) {
   .navbar-locale-switch {
        margin-right: 0.35rem !important;
    }
    .navbar-locale-switch #kit-locale-select.form-select-sm {
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;
        height: 100% !important;
        min-height: 100% !important;
    }
    .navbar-locale-switch.locale-select-shell {
        min-height: 32px;
        border-radius: 8px;
    }
    .navbar-locale-switch .locale-select-label {
        padding: 0 22px 0 8px;
        font-size: 0.75rem;
        font-weight: 800;
        gap: 0.34rem;
        overflow: hidden;
        text-overflow: clip;
        white-space: nowrap;
        max-width: 100%;
    }
    .navbar-locale-switch.locale-select-shell {
        width: 86px !important;
        min-width: 86px !important;
        max-width: 86px !important;
    }
    .navbar-locale-switch .locale-select-menu {
        max-width: min(160px, calc(100vw - 1rem));
        right: auto;
    }
    .navbar-locale-switch .locale-select-option {
        padding: 0.38rem 0.42rem;
        font-size: 0.72rem;
    }
    .navbar-locale-switch #kit-locale-select.form-select-sm option {
        color: #0f172a !important;
        font-size: 0.85rem !important;
        text-indent: 0 !important;
    }
.navbar-locale-switch::after {
        display: none !important;
    }

}



.sidebar {
    position: fixed;
    top: 60px;
    left: 0;
    bottom: 0;
    width: 300px;
    z-index: 996;
    padding: 20px 16px 24px;
    overflow-y: auto;
    
    background: var(--ui-nav-bg); 
    border-right: 1px solid var(--ui-nav-border);
    box-shadow: 4px 0 20px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease-in-out;
    scrollbar-width: thin;
    scrollbar-color: var(--ui-primary) transparent;
}

.sidebar::-webkit-scrollbar {
    width: 5px;
    height: 8px;
    background-color: transparent;
}

.sidebar::-webkit-scrollbar-thumb {
    background-color: rgba(242, 195, 0, 0.45);
    border-radius: 10px;
}


@media (max-width: 1199px) {
    .sidebar {
        left: -300px;
    }

    .toggle-sidebar .sidebar {
        left: 0;
    }
}

@media (min-width: 1200px) {

    #main,
    #footer {
        margin-left: 300px;
    }

    .toggle-sidebar #main,
    .toggle-sidebar #footer {
        margin-left: 0;
    }

    .toggle-sidebar .sidebar {
        left: -300px;
    }
}


.sidebar-nav {
    padding: 0;
    margin: 0;
    list-style: none;
}

.sidebar-nav li {
    list-style: none;
    margin: 0;
    padding: 0;
}

.sidebar-nav .nav-item {
    margin-bottom: 8px;
}

.sidebar-nav .nav-heading {
    font-size: 12px;
    text-transform: uppercase;
    color: var(--ui-nav-text-muted);
    font-weight: 600;
    letter-spacing: 0.08em;
    margin: 16px 0 8px 12px;
    padding-left: 0;
}




.sidebar-nav .nav-link i {
    font-size: 18px;
    margin-right: 12px;
    color: var(--ui-nav-text-muted);
}


.sidebar-nav .nav-link {
    display: flex;
    align-items: center;
    font-size: 15px;
    font-weight: 600;
    color: var(--ui-nav-text);
    background: transparent;
    border: 1px solid transparent;
    padding: 12px 14px;
    border-radius: 14px;
    transition: 0.3s;
}

.sidebar-nav .nav-link.collapsed {
    background-color: transparent;
}

.sidebar-nav .nav-link:not(.collapsed) {
    background: transparent;
    border-color: transparent;
    color: #ffffff;
    box-shadow: none;
}

.sidebar-nav .nav-link:not(.collapsed) i {
    color: #ffffff;
}

.sidebar-nav .nav-link .bi-chevron-down {
    margin-left: auto;
    transition: transform 0.2s ease-in-out;
}

.sidebar-nav .nav-link:not(.collapsed) .bi-chevron-down {
    transform: rotate(180deg);
}

.sidebar-nav .nav-link:hover,
.sidebar-nav .nav-link:focus {
    background-color: rgba(242, 187, 22, 0.12) !important;
    color: var(--ui-primary) !important; 
}

.sidebar-nav .nav-link:hover i,
.sidebar-nav .nav-link:focus i {
    color: var(--ui-primary) !important;
}


.sidebar-nav .nav-content a:hover,
.sidebar-nav .nav-content a.active {
    color: var(--ui-primary) !important;
    background-color: rgba(242, 187, 22, 0.05);
}


.sidebar-nav .nav-link:hover,
.sidebar-nav .nav-link:focus {
    background-color: rgba(242, 187, 22, 0.1); 
    color: var(--ui-primary);
}




.sidebar-nav .nav-content a.active i {
    background-color: var(--ui-primary); 
}




.sidebar-nav .nav-content {
    padding: 5px 0 0;
    margin: 0;
    list-style: none;
}

.sidebar-nav .nav-content a {
    display: flex;
    align-items: center;
    font-size: 14px;
    font-weight: 600;
    color: var(--ui-nav-text-muted);
    padding: 10px 12px 10px 40px;
    border-radius: 12px;
    transition: 0.3s;
    text-decoration: none;
}

.sidebar-nav .nav-content a i {
    font-size: 6px;
    margin-right: 10px;
    border-radius: 50%;
}


.sidebar-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.5); 
    z-index: 995; 
    display: none; 
}

.sidebar-open .sidebar-overlay {
    display: block;
}




.dashboard .filter {
    position: absolute;
    right: 0px;
    top: 15px;
}

.dashboard .filter .icon {
    color: #aab7cf;
    padding-right: 20px;
    padding-bottom: 5px;
    transition: 0.3s;
    font-size: 16px;
}

.dashboard .filter .icon:hover,
.dashboard .filter .icon:focus {
    color: #4154f1;
}

.dashboard .filter .dropdown-header {
    padding: 8px 15px;
}

.dashboard .filter .dropdown-header h6 {
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 1px;
    color: #aab7cf;
    margin-bottom: 0;
    padding: 0;
}

.dashboard .filter .dropdown-item {
    padding: 8px 15px;
}


.dashboard .info-card {
    padding-bottom: 10px;
}

.dashboard .info-card h6 {
    font-size: 28px;
    color: #012970;
    font-weight: 700;
    margin: 0;
    padding: 0;
}

.dashboard .card-icon {
    font-size: 32px;
    line-height: 0;
    width: 64px;
    height: 64px;
    flex-shrink: 0;
    flex-grow: 0;
}

.dashboard .sales-card .card-icon {
    color: #4154f1;
    background: #f6f6fe;
}

.dashboard .revenue-card .card-icon {
    color: #2eca6a;
    background: #e0f8e9;
}

.dashboard .customers-card .card-icon {
    color: #ff771d;
    background: #ffecdf;
}


.dashboard .activity {
    font-size: 14px;
}

.dashboard .activity .activity-item .activite-label {
    color: #888;
    position: relative;
    flex-shrink: 0;
    flex-grow: 0;
    min-width: 64px;
}

.dashboard .activity .activity-item .activite-label::before {
    content: "";
    position: absolute;
    right: -11px;
    width: 4px;
    top: 0;
    bottom: 0;
    background-color: #eceefe;
}

.dashboard .activity .activity-item .activity-badge {
    margin-top: 3px;
    z-index: 1;
    font-size: 11px;
    line-height: 0;
    border-radius: 50%;
    flex-shrink: 0;
    border: 3px solid #fff;
    flex-grow: 0;
}

.dashboard .activity .activity-item .activity-content {
    padding-left: 10px;
    padding-bottom: 20px;
}

.dashboard .activity .activity-item:first-child .activite-label::before {
    top: 5px;
}

.dashboard .activity .activity-item:last-child .activity-content {
    padding-bottom: 0;
}


.dashboard .news .post-item+.post-item {
    margin-top: 15px;
}

.dashboard .news img {
    width: 80px;
    float: left;
    border-radius: 5px;
}

.dashboard .news h4 {
    font-size: 15px;
    margin-left: 95px;
    font-weight: bold;
    margin-bottom: 5px;
}

.dashboard .news h4 a {
    color: #012970;
    transition: 0.3s;
}

.dashboard .news h4 a:hover {
    color: #4154f1;
}

.dashboard .news p {
    font-size: 14px;
    color: #777777;
    margin-left: 95px;
}


.dashboard .recent-sales {
    font-size: 14px;
}

.dashboard .recent-sales .table thead {
    background: #f6f6fe;
}

.dashboard .recent-sales .table thead th {
    border: 0;
}

.dashboard .recent-sales .dataTable-top {
    padding: 0 0 10px 0;
}

.dashboard .recent-sales .dataTable-bottom {
    padding: 10px 0 0 0;
}


.dashboard .top-selling {
    font-size: 14px;
}

.dashboard .top-selling .table thead {
    background: #f6f6fe;
}

.dashboard .top-selling .table thead th {
    border: 0;
}

.dashboard .top-selling .table tbody td {
    vertical-align: middle;
}

.dashboard .top-selling img {
    border-radius: 5px;
    max-width: 60px;
}


.iconslist {
    display: grid;
    max-width: 100%;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 1.25rem;
    padding-top: 15px;
}

.iconslist .icon {
    background-color: #fff;
    border-radius: 0.25rem;
    text-align: center;
    color: #012970;
    padding: 15px 0;
}

.iconslist i {
    margin: 0.25rem;
    font-size: 2.5rem;
}

.iconslist .label {
    font-family: var(--bs-font-monospace);
    display: inline-block;
    width: 100%;
    overflow: hidden;
    padding: 0.25rem;
    font-size: 12px;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #666;
}


.profile .profile-card img {
    max-width: 120px;
}

.profile .profile-card h2 {
    font-size: 24px;
    font-weight: 700;
    color: #2c384e;
    margin: 10px 0 0 0;
}

.profile .profile-card h3 {
    font-size: 18px;
}

.profile .profile-card .social-links a {
    font-size: 20px;
    display: inline-block;
    color: rgba(1, 41, 112, 0.5);
    line-height: 0;
    margin-right: 10px;
    transition: 0.3s;
}

.profile .profile-card .social-links a:hover {
    color: #012970;
}

.profile .profile-overview .row {
    margin-bottom: 20px;
    font-size: 15px;
}

.profile .profile-overview .card-title {
    color: #012970;
}

.profile .profile-overview .label {
    font-weight: 600;
    color: rgba(1, 41, 112, 0.6);
}

.profile .profile-edit label {
    font-weight: 600;
    color: rgba(1, 41, 112, 0.6);
}

.profile .profile-edit img {
    max-width: 120px;
}


.faq .basic h6 {
    font-size: 18px;
    font-weight: 600;
    color: #4154f1;
}

.faq .basic p {
    color: #6980aa;
}


.contact .info-box {
    padding: 28px 30px;
}

.contact .info-box i {
    font-size: 38px;
    line-height: 0;
    color: #4154f1;
}

.contact .info-box h3 {
    font-size: 20px;
    color: #012970;
    font-weight: 700;
    margin: 20px 0 10px 0;
}

.contact .info-box p {
    padding: 0;
    line-height: 24px;
    font-size: 14px;
    margin-bottom: 0;
}

.contact .php-email-form .error-message {
    display: none;
    color: #fff;
    background: #ed3c0d;
    text-align: left;
    padding: 15px;
    margin-bottom: 24px;
    font-weight: 600;
}

.contact .php-email-form .sent-message {
    display: none;
    color: #fff;
    background: #18d26e;
    text-align: center;
    padding: 15px;
    margin-bottom: 24px;
    font-weight: 600;
}

.contact .php-email-form .loading {
    display: none;
    background: #fff;
    text-align: center;
    padding: 15px;
    margin-bottom: 24px;
}

.contact .php-email-form .loading:before {
    content: "";
    display: inline-block;
    border-radius: 50%;
    width: 24px;
    height: 24px;
    margin: 0 10px -6px 0;
    border: 3px solid #18d26e;
    border-top-color: #eee;
    -webkit-animation: animate-loading 1s linear infinite;
    animation: animate-loading 1s linear infinite;
}

.contact .php-email-form input,
.contact .php-email-form textarea {
    border-radius: 0;
    box-shadow: none;
    font-size: 14px;
    border-radius: 0;
}

.contact .php-email-form input:focus,
.contact .php-email-form textarea:focus {
    border-color: #4154f1;
}

.contact .php-email-form input {
    padding: 10px 15px;
}

.contact .php-email-form textarea {
    padding: 12px 15px;
}

.contact .php-email-form button[type=submit] {
    background: #4154f1;
    border: 0;
    padding: 10px 30px;
    color: #fff;
    transition: 0.4s;
    border-radius: 4px;
}

.contact .php-email-form button[type=submit]:hover {
    background: #5969f3;
}

@-webkit-keyframes animate-loading {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

@keyframes animate-loading {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}


.error-404 {
    padding: 30px;
}

.error-404 h1 {
    font-size: 180px;
    font-weight: 700;
    color: #4154f1;
    margin-bottom: 0;
    line-height: 150px;
}

.error-404 h2 {
    font-size: 24px;
    font-weight: 700;
    color: #012970;
    margin-bottom: 30px;
}

.error-404 .btn {
    background: #51678f;
    color: #fff;
    padding: 8px 30px;
}

.error-404 .btn:hover {
    background: #3e4f6f;
}

@media (min-width: 992px) {
    .error-404 img {
        max-width: 50%;
    }
}


.footer {
    padding: 20px 0;
    font-size: 14px;
    transition: all 0.3s;
    border-top: 1px solid var(--ui-border);
}

.footer .copyright {
    text-align: center;
    color: var(--ui-text-muted);
}

.footer .credits {
    padding-top: 5px;
    text-align: center;
    font-size: 13px;
    color: var(--ui-text-soft);
}

input[type="checkbox"] {
    width: 18px;
    height: 18px;
    accent-color: var(--ui-primary);
    cursor: pointer;
}

input[type="checkbox"] {
    border: 2px solid var(--ui-primary);
    border-radius: 4px;
}


input[type="checkbox"]:hover {
    box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.16);
}

.text-principal {
    color: var(--ui-heading) !important;
}


input[type="checkbox"]:checked {
    outline: 2px solid var(--ui-primary);
    outline-offset: 1px;
    padding: 5px;
}

input,
textarea,
select {
    border: 1px solid var(--ui-border-strong) !important;
    border-radius: var(--ui-radius-sm);
    padding: 10px;
    font-size: 14px;
    color: var(--ui-text);
    background-color: var(--ui-surface);
}

input:focus,
textarea:focus,
select:focus {
    border-color: var(--ui-accent) !important;
    box-shadow: 0 0 0 4px var(--ui-accent-ring) !important;
    background-color: var(--ui-surface);
}





input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
    -webkit-text-fill-color: #ffffff !important;
    -webkit-box-shadow: 0 0 0px 1000px #121417 inset !important;
    box-shadow: 0 0 0px 1000px #121417 inset !important;
    border-color: inherit;
    transition: background-color 5000s ease-in-out 0s;
}

input:-webkit-autofill:focus {
    -webkit-box-shadow: 0 0 0px 1000px #121417 inset, 0 0 0 4px rgba(255, 204, 0, 0.1) !important;
    border-color: #FFCC00 !important;
}





.modal-content {
    background-color: var(--ui-surface) !important; 
    border: 1px solid var(--ui-border-strong) !important; 
    border-radius: var(--ui-radius-lg) !important;
    box-shadow: var(--ui-shadow-md) !important;
}

.ui-app-modal {
    overflow: hidden;
    border: 1px solid rgba(148, 163, 184, 0.18) !important;
    border-radius: 20px !important;
    background: linear-gradient(180deg, rgba(30, 33, 37, 0.98) 0%, rgba(20, 23, 27, 0.98) 100%) !important;
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45) !important;
}


.modal-header {
    border-bottom: 1px solid var(--ui-border) !important;
    background-color: var(--ui-nav-bg) !important; 
    padding: 1.2rem 1.5rem !important;
}

.ui-app-modal .modal-header {
    padding: 1rem 1.15rem !important;
    border-bottom: 1px solid rgba(148, 163, 184, 0.16) !important;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.03) 0%, rgba(255, 255, 255, 0.01) 100%) !important;
}

.modal-title {
    color: var(--ui-heading) !important;
    font-weight: 700 !important;
    font-size: 1.1rem !important;
}

.ui-app-modal .modal-title {
    color: var(--ui-heading) !important;
    font-size: 1rem !important;
    font-weight: 800 !important;
    letter-spacing: .01em;
}


.modal-body {
    color: var(--ui-text) !important;
    padding: 1.5rem !important;
}

.ui-app-modal .modal-body {
    padding: 0 !important;
  
}


.modal-footer {
    border-top: 1px solid var(--ui-border) !important;
    background-color: var(--ui-nav-bg) !important;
    padding: 1rem 1.5rem !important;
}

.ui-app-modal .modal-footer {
    padding: 0.9rem 1.15rem !important;
    border-top: 1px solid rgba(148, 163, 184, 0.16) !important;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.01) 0%, rgba(255, 255, 255, 0.02) 100%) !important;
}


.modal-body .form-control,
.modal-body .form-select {
    background-color: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid var(--ui-border-strong) !important;
    color: #ffffff !important;
}

.ui-app-modal .form-label {
    color: var(--ui-text-muted);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: .04em;
    margin-bottom: .35rem;
    text-transform: uppercase;
}

.ui-app-modal .form-control,
.ui-app-modal .form-select,
.ui-app-modal select {
    min-height: 42px !important;
    padding: 0.62rem 0.8rem !important;
    border-radius: 12px !important;
}

.ui-app-modal .input-group {
    align-items: stretch;
}

.ui-app-modal .input-group > .form-control,
.ui-app-modal .input-group > .form-select,
.ui-app-modal .input-group > select {
    border-radius: 12px !important;
}


.modal-header .btn-close {
    filter: invert(0.94) grayscale(100%) brightness(175%);
}

.modal .btn-close {
    width: 1.95rem;
    height: 1.95rem;
    padding: 0;
    margin-left: auto;
    flex: 0 0 auto;
    border: 1px solid rgba(255, 204, 0, 0.22);
    border-radius: 999px;
    background-color: rgba(255, 255, 255, 0.06);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 58% 58%;
    opacity: 1;
    box-shadow: none;
    transition: background-color 0.15s ease, border-color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
}

.modal .btn-close:hover,
.modal .btn-close:focus-visible {
    border-color: rgba(255, 255, 255, 0.22);
    background-color: rgba(255, 255, 255, 0.10);
    transform: translateY(-1px);
    box-shadow: 0 0 0 0.2rem rgba(255, 255, 255, 0.10);
}



.grupos-shell {
    padding-top: 0.25rem;
}

.grupos-header {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.grupos-title {
    margin: 0;
    color: var(--ui-heading);
    font-weight: 800;
}

.grupos-subtitle {
    margin: 0.2rem 0 0;
    color: var(--ui-text-muted);
    font-size: 0.92rem;
}

.grupos-toolbar-wrap {
    margin-top: 0.75rem;
}

.grupos-panel {
    margin-top: 0.45rem;
}

.grupos-panel .bootstrap-table .fixed-table-container {
    border-radius: 16px;
}

.grupos-panel .bootstrap-table .fixed-table-container tbody td:last-child {
    white-space: nowrap;
}

.grupos-panel .bootstrap-table .fixed-table-container tbody td:last-child .btn {
    min-width: 0;
}

.grupos-modal-dialog {
    max-width: 1180px;
}

.grupos-modal-content {
    overflow: hidden;
    border: 1px solid rgba(148, 163, 184, 0.18) !important;
    border-radius: 20px !important;
    background: linear-gradient(180deg, rgba(30, 33, 37, 0.98) 0%, rgba(20, 23, 27, 0.98) 100%) !important;
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45) !important;
}

.grupos-modal-header {
    padding: 1rem 1.25rem !important;
    border-bottom: 1px solid rgba(148, 163, 184, 0.16) !important;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.03) 0%, rgba(255, 255, 255, 0.01) 100%) !important;
}

.grupos-modal-body {
    padding: 1.25rem !important;
    background: radial-gradient(circle at top, rgba(255, 204, 0, 0.05), transparent 32%), var(--ui-surface);
}

.grupos-modal-body .form-label,
.grupos-modal-body .form-check-label {
    color: var(--ui-text-muted);
}

.grupos-modal-body .form-control,
.grupos-modal-body .form-select {
    min-height: 42px;
    border-radius: 12px;
}

.grupos-modal-card {
    border: 1px solid rgba(148, 163, 184, 0.16) !important;
    border-radius: 18px !important;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.025) 0%, rgba(255, 255, 255, 0.012) 100%) !important;
    box-shadow: var(--ui-shadow-soft);
}

.grupos-modal-card .card-body {
    padding: 1rem 1rem 1.1rem;
}

.grupos-modal-section-title {
    margin-bottom: 0.9rem;
}

.grupos-modal-section-title .card-title {
    color: var(--ui-heading);
    font-size: 1rem;
    font-weight: 800;
}

.grupos-modal-section-title p {
    margin-top: 0.1rem;
    color: var(--ui-text-muted);
    font-size: 0.84rem;
}

.grupos-modal-tabs {
    border-bottom-color: rgba(148, 163, 184, 0.16) !important;
}

.grupos-modal-tabs .nav-link {
    color: var(--ui-text-muted);
    background: rgba(255, 255, 255, 0.02);
    border-color: rgba(148, 163, 184, 0.16) !important;
    border-radius: 12px 12px 0 0;
    font-weight: 700;
}

.grupos-modal-tabs .nav-link.active {
    color: var(--ui-heading);
    background: var(--ui-surface);
    border-bottom-color: var(--ui-surface) !important;
}

.grupos-modal-tabs .nav-link:hover {
    color: var(--ui-heading);
}

.grupos-modal-tabs + .tab-content {
    padding-top: 0.75rem;
}

.grupos-modal-tabs + .tab-content .card {
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 16px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.02) 0%, rgba(255, 255, 255, 0.01) 100%);
    box-shadow: var(--ui-shadow-soft);
}

.grupos-modal-tabs + .tab-content .card-body {
    padding: 0.95rem;
}

.grupos-modal-tabs + .tab-content .grupos-permissions-card {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.018) 0%, rgba(255, 255, 255, 0.008) 100%);
}

.grupos-modal-tabs + .tab-content .grupos-permissions-table-wrap {
    overflow: hidden;
    border: 1px solid rgba(148, 163, 184, 0.14);
    border-radius: 14px;
}

.grupos-modal-tabs + .tab-content .table {
    margin-bottom: 0;
}

.grupos-modal-tabs + .tab-content .grupos-permissions-table {
    background: var(--ui-surface);
}

.grupos-modal-tabs + .tab-content .table thead th {
    color: var(--ui-text-muted);
    background: rgba(255, 255, 255, 0.02) !important;
    border-bottom: 1px solid rgba(148, 163, 184, 0.16);
}

.grupos-modal-tabs + .tab-content .grupos-permissions-table thead th,
.grupos-modal-tabs + .tab-content .grupos-permissions-table tbody td,
.grupos-modal-tabs + .tab-content .grupos-permissions-table tbody th {
    background: var(--ui-surface) !important;
    border-color: rgba(148, 163, 184, 0.12) !important;
}

.grupos-modal-tabs + .tab-content .grupos-permissions-table tbody tr:nth-child(even) td,
.grupos-modal-tabs + .tab-content .grupos-permissions-table tbody tr:nth-child(even) th {
    background: #24282d !important;
}

.grupos-modal-tabs + .tab-content .grupos-permissions-table tbody tr:hover td,
.grupos-modal-tabs + .tab-content .grupos-permissions-table tbody tr:hover th {
    background: #2b3036 !important;
}

.grupos-modal-tabs + .tab-content .table tbody td,
.grupos-modal-tabs + .tab-content .table tbody th {
    color: var(--ui-text);
}

.grupos-modal-tabs + .tab-content .grupos-permissions-table input[type="checkbox"] {
    accent-color: var(--ui-primary);
}

.grupos-modal-footer {
    border-top: 1px solid rgba(148, 163, 184, 0.16) !important;
}



.account-shell {
    padding-top: 0.25rem;
}

.account-header {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.account-title {
    margin: 0;
    color: var(--ui-heading);
    font-weight: 800;
}

.account-subtitle {
    margin: 0.2rem 0 0;
    color: var(--ui-text-muted);
    font-size: 0.92rem;
}

.account-content {
    padding-top: 0.5rem;
}

.account-setup-alert {
    border: 1px solid rgba(59, 130, 246, 0.18);
    border-left: 4px solid var(--ui-info);
    border-radius: 18px;
    background: linear-gradient(180deg, rgba(14, 165, 233, 0.08) 0%, rgba(30, 33, 37, 0.96) 100%);
    color: var(--ui-text);
    box-shadow: var(--ui-shadow-soft);
}

.account-setup-icon {
    color: var(--ui-info);
}

.account-setup-title {
    color: var(--ui-heading);
}

.account-setup-box {
    margin-top: 0.8rem;
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 16px;
    background: rgba(30, 33, 37, 0.88);
}

.account-setup-box p,
.account-setup-box li {
    color: var(--ui-text-muted);
}

.account-setup-box strong {
    color: var(--ui-heading);
}

.account-guide-item {
    line-height: 1.45;
}

.account-guide-input {
    display: inline-block;
    margin-right: 0.35rem;
    padding: 0.1rem 0.45rem;
    border-radius: 8px;
    background: rgba(15, 23, 42, 0.92);
    border: 1px solid rgba(148, 163, 184, 0.28);
    color: #f8fafc;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.02em;
}

.account-setup-hint {
    color: var(--ui-text-soft);
}

.account-payments-card {
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 18px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.025) 0%, rgba(255, 255, 255, 0.01) 100%);
    box-shadow: var(--ui-shadow-soft);
}

.account-payments-body {
    padding: 1.15rem;
}

.account-card-head {
    margin-bottom: 1rem;
}

.account-card-head .card-title {
    color: var(--ui-heading);
    font-weight: 800;
}

.account-card-head p {
    margin-top: 0.15rem;
    color: var(--ui-text-muted);
    font-size: 0.84rem;
}

.account-payments-card .form-label,
.account-payments-card .form-check-label {
    color: var(--ui-text-muted);
}

.account-payments-card .form-control,
.account-payments-card .form-select {
    min-height: 42px;
    border-radius: 12px;
}

.account-actions .btn {
    min-height: 40px;
    border-radius: 12px;
    font-weight: 700;
}

.account-preview-card {
    width: min(100%, 18rem);
    overflow: hidden;
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 18px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.03) 0%, rgba(255, 255, 255, 0.01) 100%);
    box-shadow: var(--ui-shadow-soft);
}

.account-preview-img {
    display: block;
    width: 100%;
    height: 230px;
    object-fit: cover;
    background: #121417;
}

.account-preview-caption {
    padding: 0.8rem 0.9rem;
    text-align: center;
    color: var(--ui-heading);
    font-weight: 700;
    border-top: 1px solid rgba(148, 163, 184, 0.12);
    background: rgba(30, 33, 37, 0.92);
}

.account-payments-card .form-control:focus,
.account-payments-card .form-select:focus {
    border-color: var(--ui-primary);
    box-shadow: 0 0 0 0.18rem var(--ui-accent-ring);
}

@media (max-width: 768px) {
    .account-payments-body {
        padding: 0.95rem;
    }

    .account-setup-alert {
        border-radius: 16px;
    }

    .account-preview-img {
        height: 180px;
    }
}



.trabajadores-shell {
    padding-top: 0.25rem;
}

.trabajadores-header {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.trabajadores-title {
    margin: 0;
    color: var(--ui-heading);
    font-weight: 800;
}

.trabajadores-subtitle {
    margin: 0.2rem 0 0;
    color: var(--ui-text-muted);
    font-size: 0.92rem;
}

.trabajadores-toolbar-wrap {
    margin-top: 0.75rem;
}

.trabajadores-panel {
    margin-top: 0.45rem;
    padding: 0.45rem;
}

.trabajadores-panel .bootstrap-table .fixed-table-container {
    border-radius: 16px;
}

.trabajadores-panel .bootstrap-table .fixed-table-container thead th,
.trabajadores-panel .bootstrap-table .fixed-table-container tbody td {
    padding-inline: 0.55rem;
}

.trabajadores-panel .bootstrap-table .fixed-table-container thead th .th-inner {
    font-size: 0.72rem;
    line-height: 1.1;
}

.trabajadores-panel .bootstrap-table .fixed-table-container tbody td {
    font-size: 0.9rem;
}

.trabajadores-panel .bootstrap-table .fixed-table-container tbody td img {
    max-width: 38px;
    max-height: 38px;
    border-radius: 10px;
    object-fit: cover;
}

.trabajadores-panel .bootstrap-table .fixed-table-container tbody td:last-child {
    white-space: nowrap;
}

.trabajadores-panel .bootstrap-table .fixed-table-container tbody td:last-child .btn {
    min-width: 0;
}

@media (max-width: 768px) {
    .trabajadores-panel {
        padding: 0.35rem;
    }

    .trabajadores-panel .bootstrap-table .fixed-table-container .table thead th.detail,
    .trabajadores-panel .bootstrap-table .fixed-table-container .table tbody > tr[data-index] > td:first-child {
        width: 42px !important;
        min-width: 42px;
        max-width: 42px;
    }

    .trabajadores-panel .bootstrap-table .fixed-table-container thead th,
    .trabajadores-panel .bootstrap-table .fixed-table-container tbody td {
        padding-inline: 0.45rem;
    }
}

@media (max-width: 768px) {
    .grupos-modal-dialog {
        max-width: 100%;
        margin: 0.75rem;
    }

    .grupos-modal-body {
        padding: 1rem !important;
    }

    .grupos-modal-card .card-body {
        padding: 0.85rem;
    }

    .grupos-modal-tabs .nav-link {
        font-size: 0.85rem;
    }
}



.profile-shell {
    padding-top: 0.25rem;
}

.profile-header {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.profile-title {
    margin: 0;
    color: var(--ui-heading);
    font-weight: 800;
}

.profile-subtitle {
    margin: 0.2rem 0 0;
    color: var(--ui-text-muted);
    font-size: 0.92rem;
}

.profile-card-shell {
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 20px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.025) 0%, rgba(255, 255, 255, 0.01) 100%);
    box-shadow: var(--ui-shadow-soft);
    overflow: hidden;
}

.profile-card-body {
    padding: 1.15rem;
}

.profile-top-grid {
    display: grid;
    grid-template-columns: minmax(240px, 320px) minmax(0, 1fr);
    gap: 1rem;
    align-items: stretch;
    margin-bottom: 1rem;
}

.profile-avatar-panel,
.profile-form-panel {
    min-width: 0;
}

.profile-avatar-frame {
    overflow: hidden;
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.02);
    box-shadow: var(--ui-shadow-soft);
}

.profile-avatar-img {
    display: block;
    width: 100%;
    min-height: 280px;
    object-fit: cover;
    background: #121417;
}

.profile-avatar-caption {
    padding: 0.85rem 0.95rem;
    text-align: center;
    color: var(--ui-heading);
    font-weight: 700;
    border-top: 1px solid rgba(148, 163, 184, 0.12);
    background: rgba(30, 33, 37, 0.92);
}

.profile-form-panel {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 1rem 1.1rem;
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 18px;
    background: radial-gradient(circle at top, rgba(255, 204, 0, 0.04), transparent 36%), rgba(30, 33, 37, 0.88);
}

.profile-card-title {
    margin: 0;
    color: var(--ui-heading);
    font-weight: 800;
}

.profile-card-subtitle {
    margin: 0.2rem 0 0;
    color: var(--ui-text-muted);
    font-size: 0.84rem;
}

.profile-form .form-label,
.profile-form .form-check-label {
    color: var(--ui-text-muted);
}

.profile-form .form-control,
.profile-form .form-select {
    min-height: 42px;
    border-radius: 12px;
}

.profile-form .form-control:focus,
.profile-form .form-select:focus {
    border-color: var(--ui-primary);
    box-shadow: 0 0 0 0.18rem var(--ui-accent-ring);
}

.profile-actions .btn {
    min-height: 40px;
    border-radius: 12px;
    font-weight: 700;
}

.profile-form #div_cargo {
    display: none;
}

@media (max-width: 992px) {
    .profile-top-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .profile-card-body {
        padding: 0.95rem;
    }

    .profile-avatar-img {
        min-height: 220px;
    }
}


.profile-shell-compact {
    max-width: 850px;
    margin: 0 auto;
}


.profile-compact-header {
    position: relative;
    background: var(--ui-nav-bg); 
    border: 1px solid var(--ui-border-strong);
    border-radius: 20px;
    padding: 2rem;
    display: flex;
    align-items: center;
    gap: 1.5rem;
    overflow: hidden;
    box-shadow: var(--ui-shadow-md);
}

.header-overlay {
    position: absolute;
    top: 0; left: 0; width: 100%; height: 5px;
    background: var(--ui-primary); 
}



.avatar-wrapper {
    position: relative;
    width: 90px;
    height: 90px;
}

.avatar-img-compact {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 18px;
    background: var(--ui-bg);
}

.avatar-edit-btn {
    position: absolute;
    bottom: -5px;
    right: -5px;
    background: var(--ui-primary);
    color: #000;
    width: 28px;
    height: 28px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8rem;
    cursor: pointer;
    border: 2px solid var(--ui-nav-bg);
}

.badge-industrial {
    background: var(--ui-accent-soft);
    color: var(--ui-primary);
    border: 1px solid var(--ui-primary);
    padding: 2px 10px;
    border-radius: 6px;
    font-size: 0.7rem;
    text-transform: uppercase;
    font-weight: 800;
}


.compact-section {
    background: var(--ui-surface); 
    border: 1px solid var(--ui-border-strong);
    border-radius: 16px;
    padding: 1.5rem;
}




.compact-label {
    font-size: 0.7rem;
    font-weight: 700;
    color: var(--ui-text-soft);
    text-transform: uppercase;
    margin-bottom: 0.4rem;
    display: block;
}

.compact-input, .compact-textarea {
    background: var(--ui-nav-bg) !important;
    border: 1px solid var(--ui-border) !important;
    color: #ffffff !important;
    border-radius: 10px !important;
    padding: 0.6rem 0.8rem !important;
    font-size: 0.9rem !important;
}

.compact-input:focus {
    border-color: var(--ui-primary) !important;
    box-shadow: 0 0 0 3px var(--ui-accent-ring) !important;
}

.compact-select,
.ui-compact-dropdown-scope .form-control,
.ui-compact-dropdown-scope .form-select,
.ui-compact-dropdown-scope select {
    min-height: 42px !important;
    padding: 0.62rem 0.8rem !important;
    border-radius: 12px !important;
    background: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid var(--ui-border-strong) !important;
    color: var(--ui-text) !important;
    box-shadow: none !important;
    color-scheme: dark;
}

.compact-select:focus,
.ui-compact-dropdown-scope .form-control:focus,
.ui-compact-dropdown-scope .form-select:focus,
.ui-compact-dropdown-scope select:focus {
    border-color: var(--ui-primary) !important;
    box-shadow: 0 0 0 3px var(--ui-accent-ring) !important;
}

.ui-compact-dropdown-scope .input-group {
    align-items: stretch;
}

.ui-compact-dropdown-scope .input-group > .form-control,
.ui-compact-dropdown-scope .input-group > .form-select,
.ui-compact-dropdown-scope .input-group > select {
    border-radius: 12px !important;
}

.ui-compact-dropdown-scope .ui-autocomplete {
    max-height: 280px;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 0.35rem;
    border: 1px solid rgba(148, 163, 184, 0.18);
    border-radius: 14px;
    background: var(--ui-surface);
    box-shadow: var(--ui-shadow-md);
    z-index: 4000;
}

.ui-compact-dropdown-scope .ui-autocomplete.ui-widget-content,
.ui-compact-dropdown-scope .ui-widget-content {
    background: linear-gradient(180deg, rgba(19, 24, 34, 0.98) 0%, rgba(14, 18, 27, 0.98) 100%) !important;
    border: 1px solid rgba(148, 163, 184, 0.22) !important;
    color: var(--ui-text) !important;
}

.ui-compact-dropdown-scope .ui-autocomplete .ui-menu-item-wrapper {
    padding: 0.55rem 0.7rem;
    border-radius: 10px;
    color: var(--ui-text);
}

.ui-compact-dropdown-scope .ui-autocomplete .ui-menu-item-wrapper:hover,
.ui-compact-dropdown-scope .ui-autocomplete .ui-menu-item-wrapper:focus,
.ui-compact-dropdown-scope .ui-autocomplete .ui-menu-item-wrapper.ui-state-active {
    background: rgba(255, 255, 255, 0.06) !important;
    color: var(--ui-heading) !important;
    border-color: transparent !important;
}

.ui-compact-dropdown-scope .ui-autocomplete .ui-menu-item-wrapper.ui-state-active,
.ui-compact-dropdown-scope .ui-autocomplete .ui-menu-item-wrapper.combo-option-selected {
    background: rgba(255, 204, 0, 0.12) !important;
    color: var(--ui-heading) !important;
}

.ui-compact-dropdown-scope .combo-autocomplete-item {
    gap: 0.55rem;
}

.ui-compact-dropdown-scope .combo-pill-selected {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: #1d5fb8;
    background: #dceaff;
    border: 1px solid #b9d5ff;
    border-radius: 999px;
    padding: 1px 6px;
}

.ui-compact-dropdown-scope .dropdown-menu,
.ui-compact-dropdown-scope .dropdown-menu.show,
.ui-compact-dropdown-scope .dropdown-menu[data-bs-popper] {
    background: linear-gradient(180deg, rgba(19, 24, 34, 0.98) 0%, rgba(14, 18, 27, 0.98) 100%) !important;
    border: 1px solid rgba(148, 163, 184, 0.22) !important;
    box-shadow: var(--ui-shadow-md) !important;
    color: var(--ui-text) !important;
}

.ui-compact-dropdown-scope .dropdown-menu .dropdown-header,
.ui-compact-dropdown-scope .dropdown-menu .dropdown-footer {
    color: var(--ui-text-muted) !important;
}

.ui-compact-dropdown-scope .dropdown-menu .dropdown-divider {
    border-top-color: rgba(148, 163, 184, 0.18) !important;
    opacity: 1 !important;
}

.ui-compact-dropdown-scope .dropdown-menu .dropdown-item {
    color: var(--ui-text) !important;
    background: transparent !important;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.ui-compact-dropdown-scope .dropdown-menu .dropdown-item:hover,
.ui-compact-dropdown-scope .dropdown-menu .dropdown-item:focus {
    background: rgba(255, 255, 255, 0.06) !important;
    color: var(--ui-heading) !important;
}

.ui-compact-dropdown-scope .dropdown-menu .dropdown-item.active,
.ui-compact-dropdown-scope .dropdown-menu .dropdown-item:active {
    background: rgba(255, 204, 0, 0.18) !important;
    color: var(--ui-heading) !important;
}

.ui-config-contrast-scope .form-label,
.ui-config-contrast-scope label,
.ui-config-contrast-scope .form-check-label {
    color: var(--ui-text-muted) !important;
}

.ui-config-contrast-scope .form-control,
.ui-config-contrast-scope .form-select,
.ui-config-contrast-scope input.form-control,
.ui-config-contrast-scope select.form-select,
.ui-config-contrast-scope textarea.form-control {
    background: rgba(255, 255, 255, 0.055) !important;
    border: 1px solid var(--ui-border-strong) !important;
    color: var(--ui-text) !important;
    box-shadow: none !important;
    color-scheme: dark;
}

.ui-config-contrast-scope .form-control:focus,
.ui-config-contrast-scope .form-select:focus,
.ui-config-contrast-scope textarea.form-control:focus {
    border-color: var(--ui-primary) !important;
    box-shadow: 0 0 0 3px var(--ui-accent-ring) !important;
}

.ui-config-contrast-scope .form-control::placeholder,
.ui-config-contrast-scope .form-select::placeholder {
    color: var(--ui-text-muted) !important;
    opacity: 1 !important;
}

.ui-config-contrast-scope .form-control::-webkit-input-placeholder,
.ui-config-contrast-scope .form-select::-webkit-input-placeholder,
.ui-config-contrast-scope .form-control::-moz-placeholder,
.ui-config-contrast-scope .form-select::-moz-placeholder,
.ui-config-contrast-scope .form-control:-ms-input-placeholder,
.ui-config-contrast-scope .form-select:-ms-input-placeholder {
    color: var(--ui-text-muted) !important;
    opacity: 1 !important;
}




.header-content {
    display: flex;
    align-items: center;
    justify-content: center; 
    gap: 2rem;
    z-index: 1;
    width: 100%;
}


.section-tag {
    font-size: 0.75rem;
    font-weight: 800;
    text-transform: uppercase;
    color: var(--ui-text-muted);
    letter-spacing: 0.05em;
    margin-bottom: 1.25rem;
    display: flex;
    align-items: center;
    justify-content: center; 
}


.compact-actions {
    display: flex;
    justify-content: center; 
    gap: 1.5rem;
    margin-top: 2rem;
}


.upload-banner {
    display: flex;
    align-items: center;
    justify-content: center; 
    background: rgba(255, 204, 0, 0.05);
    border: 1px dashed var(--ui-primary);
    padding: 1.5rem;
    border-radius: 12px;
    max-width: 500px;
    margin: 1.5rem auto 0; 
}


.btn-save-compact {
    background: var(--ui-primary) !important;
    color: #000 !important;
    font-weight: 800;
    min-width: 200px; 
    padding: 0.8rem;
    border-radius: 12px;
    text-transform: uppercase;
    border: none;
    transition: all 0.2s ease;
}

.btn-clear-compact {
    background: var(--ui-surface-muted) !important;
    color: var(--ui-text) !important;
    min-width: 150px;
    border: 1px solid var(--ui-border-strong);
    border-radius: 12px;
    transition: all 0.2s ease;
}


.ui-form-action-btn,
form .btn-outline-success,
form .btn-outline-secondary,
.btn-save-compact,
.btn-clear-compact {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    min-height: 38px;
    padding: 0.52rem 0.95rem;
    border-radius: 12px;
    font-weight: 800;
    letter-spacing: 0.02em;
    line-height: 1.05;
    text-transform: none;
    transition:
        transform 0.18s ease,
        box-shadow 0.18s ease,
        background-color 0.18s ease,
        border-color 0.18s ease,
        color 0.18s ease,
        filter 0.18s ease;
}

.ui-form-action-btn--save,
form .btn-outline-success,
.btn-save-compact {
    background: linear-gradient(180deg, rgba(255, 204, 0, 0.98) 0%, rgba(230, 184, 0, 0.94) 100%) !important;
    color: #111111 !important;
    border: 1px solid rgba(255, 204, 0, 0.42) !important;
    box-shadow: 0 10px 20px rgba(255, 204, 0, 0.16);
}

.ui-form-action-btn--save:hover,
form .btn-outline-success:hover,
.btn-save-compact:hover {
    transform: translateY(-1px);
    color: #111111 !important;
    border-color: rgba(255, 204, 0, 0.62) !important;
    box-shadow: 0 14px 24px rgba(255, 204, 0, 0.22);
    filter: brightness(1.02);
}

.ui-form-action-btn--save:focus-visible,
form .btn-outline-success:focus-visible,
.btn-save-compact:focus-visible {
    outline: none;
    box-shadow: 0 0 0 0.2rem rgba(255, 204, 0, 0.26), 0 10px 20px rgba(255, 204, 0, 0.16);
}

.ui-form-action-btn--clear,
form .btn-outline-secondary,
.btn-clear-compact {
    background: rgba(148, 163, 184, 0.08) !important;
    color: var(--ui-text) !important;
    border: 1px solid rgba(148, 163, 184, 0.24) !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.12);
}

.ui-form-action-btn--clear:hover,
form .btn-outline-secondary:hover,
.btn-clear-compact:hover {
    transform: translateY(-1px);
    color: var(--ui-heading) !important;
    border-color: rgba(255, 204, 0, 0.24) !important;
    background: rgba(255, 204, 0, 0.10) !important;
    box-shadow: 0 12px 22px rgba(15, 23, 42, 0.18);
}

.ui-form-action-btn--clear:focus-visible,
form .btn-outline-secondary:focus-visible,
.btn-clear-compact:focus-visible {
    outline: none;
    box-shadow: 0 0 0 0.2rem rgba(148, 163, 184, 0.18), 0 8px 18px rgba(15, 23, 42, 0.12);
}

@media (max-width: 768px) {
    .ui-form-action-btn,
    form .btn-outline-success,
    form .btn-outline-secondary,
    .btn-save-compact,
    .btn-clear-compact {
        min-height: 36px;
        padding: 0.44rem 0.8rem;
        border-radius: 10px;
        font-size: 0.78rem;
    }
}




.header-content-vertical {
    display: flex;
    flex-direction: column; 
    align-items: center;    
    justify-content: center;
    gap: 1.2rem;
    z-index: 1;
    width: 100%;
    text-align: center;
}


.avatar-wrapper-top {
    position: relative;
    width: 110px; 
    height: 110px;
}


.avatar-img-compact {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%; 
    border: 1px solid var(--ui-border-strong);
    background: var(--ui-bg);
    box-shadow: var(--ui-shadow-md);
}


.avatar-edit-btn {
    position: absolute;
    bottom: 5px;
    right: 5px;
    background: var(--ui-primary);
    color: #000;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 3px solid var(--ui-nav-bg);
    cursor: pointer;
    transition: transform 0.2s ease;
}

.avatar-edit-btn:hover {
    transform: scale(1.1);
}


.header-text-center h4 {
    font-size: 1.6rem;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}


.section-tag {
    justify-content: center; 
}


.compact-actions {
    display: flex;
    justify-content: center;
    gap: 1.5rem;
    margin-top: 2rem;
}




@media (max-width: 576px) {
    .profile-compact-header { flex-direction: column; text-align: center; }
    .header-content { flex-direction: column; }
    .compact-actions { flex-direction: column; }
}




.header-nav .nav-item.dropdown .dropdown-menu.notifications,
.header-nav .nav-item.dropdown .dropdown-menu.profile,
.header-nav .dropdown-menu {
    background-color: var(--ui-surface) !important; 
    border: 1px solid var(--ui-border-strong) !important;
    box-shadow: var(--ui-shadow-md) !important;
    padding: 0 !important; 
}


.header-nav .dropdown-menu .dropdown-header,
.header-nav .dropdown-menu .dropdown-footer {
    background-color: var(--ui-nav-bg) !important; 
    color: var(--ui-primary) !important; 
    font-weight: 800 !important;
    text-transform: uppercase !important;
    font-size: 11px !important;
    border-bottom: 1px solid var(--ui-border-strong) !important;
    padding: 15px !important;
}


.header-nav .dropdown-menu .dropdown-item {
    background-color: transparent !important;
    color: var(--ui-text) !important;
    padding: 12px 15px !important;
    border-bottom: 1px solid var(--ui-border) !important;
    display: flex !important;
    align-items: center !important;
    transition: all 0.2s ease !important;
}


.header-nav .dropdown-menu .dropdown-item:hover {
    background-color: var(--ui-accent-soft) !important; 
    color: var(--ui-primary) !important; 
}


.header-nav .dropdown-menu .dropdown-item.active {
    border-left: 4px solid var(--ui-primary) !important;
    background-color: var(--ui-accent-soft) !important;
}


.header-nav .dropdown-divider {
    margin: 0 !important;
    border-top: 1px solid var(--ui-border-strong) !important;
}



@media (max-width: 768px) {
    
    
    
    
    .detail-view td {
        background-color: var(--ui-bg) !important;
        padding: 10px !important;
    }

    .bg-dark-nav {
        background-color: var(--ui-nav-bg) !important; 
    }
}

@media (max-width: 992px) {
    
   
    

    
    .bootstrap-table tbody tr.detail-view td {
        display: table-cell !important;
        padding: 0 !important;
        background-color: var(--ui-bg) !important;
    }

    
    .bootstrap-table .fixed-table-container tbody td.detail,
    .bootstrap-table .fixed-table-container thead th.detail {
        display: table-cell !important;
        width: 45px !important;
        text-align: center;
        vertical-align: middle;
    }

    .detail-icon {
        color: var(--ui-primary) !important;
        font-size: 1.1rem;
    }
}

.bg-dark-nav {
    background-color: var(--ui-nav-bg) !important; 
}


.bootstrap-table .detail-view td {
    display: table-cell !important;
    padding: 0 !important;
    background-color: var(--ui-bg) !important; 
    border: none !important;
}


.detail-icon {
    color: var(--ui-primary) !important;
    font-size: 1.1rem;
}


.bg-dark-nav {
    background-color: var(--ui-nav-bg) !important; 
}


.bootstrap-table .detail-view td {
    display: table-cell !important;
    padding: 0 !important;
    background-color: var(--ui-bg) !important;
    border: none !important;
}


.detail-icon {
    color: var(--ui-primary) !important;
    font-size: 1.1rem;
}


.bg-dark-nav {
    background-color: var(--ui-nav-bg) !important; 
}




.detail-container-industrial {
    background-color: var(--ui-nav-bg) !important; 
    border-left: 3px solid var(--ui-primary); 
    padding: 12px 15px;
    margin: 5px 10px;
    border-radius: 0 8px 8px 0;
    box-shadow: inset 0 0 15px rgba(0,0,0,0.5);
}


.detail-header-industrial {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
    border-bottom: 1px solid var(--ui-border-strong);
    padding-bottom: 6px;
}

.detail-header-industrial i {
    color: var(--ui-primary);
    font-size: 0.9rem;
}

.detail-header-industrial span {
    color: var(--ui-primary);
    font-size: 0.65rem;
    font-weight: 800;
    letter-spacing: 1.5px;
}


.detail-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr); 
    gap: 10px;
}


.detail-item {
    display: flex;
    flex-direction: column;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    padding-bottom: 4px;
}

.detail-item label {
    font-size: 0.55rem !important;
    text-transform: uppercase;
    color: var(--ui-text-soft) !important; 
    font-weight: 700;
    margin-bottom: 1px;
    letter-spacing: 0.5px;
}

.detail-item .value {
    color: #ffffff;
    font-size: 0.82rem;
    font-weight: 500;
    word-break: break-word;
}


@media (max-width: 480px) {
    .detail-grid {
        grid-template-columns: 1fr;
    }
}


.bootstrap-table .detail-view td {
    background-color: transparent !important;
    padding: 0 !important;
}




.bootstrap-table .detail-view td {
    display: table-cell !important;
    padding: 0 !important;
    background-color: var(--ui-bg) !important;
    border: none !important;
}


.bootstrap-table .fixed-table-container tbody td.detail,
.bootstrap-table .fixed-table-container thead th.detail {
    display: table-cell !important;
    width: 45px !important;
    text-align: center;
    vertical-align: middle;
}


.detail-container-industrial {
    background-color: var(--ui-nav-bg) !important;
    border-left: 3px solid var(--ui-primary);
    padding: 12px 15px;
    margin: 5px 10px;
    border-radius: 0 8px 8px 0;
}

.detail-grid {
    display: grid;
    
    grid-template-columns: repeat(3, 1fr); 
    gap: 12px;
}


@media (max-width: 992px) {
    .detail-grid { grid-template-columns: repeat(2, 1fr); }
}


@media (max-width: 576px) {
    .detail-grid { grid-template-columns: 1fr; }
}

@media (max-width: 576px) {
    .detail-grid {
        grid-template-columns: 1fr !important; 
    }
}


@media (max-width: 768px) {
    
    .table-dark-industrial .btn-sm {
        width: 30px;
        height: 30px;
        padding: 0 !important;
        display: inline-flex;
        justify-content: center;
        align-items: center;
        border-radius: 4px;
        font-size: 0 !important; 
    }

    
    .table-dark-industrial .btn-sm i, 
    .table-dark-industrial .btn-sm span[class^="ri-"],
    .table-dark-industrial .btn-sm span[class^="bi-"] {
        font-size: 1.1rem !important;
        margin: 0 !important;
        display: inline-block;
    }

    
    .table-dark-industrial td:last-child {
        white-space: nowrap;
        width: 1%; 
    }
}




.detail-container-industrial {
    background: #2c3034 !important; 
    padding: 25px;
    margin: 10px;
    border-radius: 8px;
    border: none !important; 
}


.detail-grid-industrial {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 20px;
}


.detail-box {
    display: flex;
    flex-direction: column;
    gap: 5px;
}


.box-label {
    font-size: 0.65rem;
    text-transform: uppercase;
    color: #adb5bd !important; 
    font-weight: 700;
    letter-spacing: 0.5px;
}


.box-value {
    font-size: 1rem;
    color: #ffffff !important; 
    font-weight: 400;
}


.detail-icon {
    color: #FFCC00 !important; 
}


.fixed-table-footer {
    background-color: #1a1c1e !important;
    color: #ffffff !important;
    border-top: 1px solid #343a40 !important;
}




@media (max-width: 768px) {
    
    .table-dark-industrial .btn, 
    .table-dark-industrial .btn-sm {
        display: inline-flex !important;
        justify-content: center;
        align-items: center;
        width: 35px !important;  
        height: 35px !important;
        padding: 0 !important;
        font-size: 0 !important; 
        margin: 2px !important;
    }

    
    .table-dark-industrial .btn i, 
    .table-dark-industrial .btn span[class^="ri-"], 
    .table-dark-industrial .btn span[class^="bi-"] {
        font-size: 1.2rem !important; 
        margin: 0 !important;
        display: block !important;
    }

    .table-dark-industrial thead th .th-inner {
        font-size: 0.55rem !important; 
        font-weight: 700;
        text-transform: uppercase;
        
        
        white-space: nowrap !important;    
        overflow: hidden !important;        
        text-overflow: ellipsis !important; 
        
        
        max-width: 70px !important; 
        display: block !important;
        margin: 0 auto;
    }

    
    .table-dark-industrial thead th {
        padding: 5px 2px !important;
        vertical-align: middle;
        border-bottom: 1px solid #343a40 !important;
    }

    
    .table-dark-industrial thead th .sortable {
        background-image: none !important;
        padding-right: 0 !important;
    }
}


@media (max-width: 768px) {
    
    .bootstrap-table .fixed-table-body {
        overflow-x: auto !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important; 
        overscroll-behavior-x: contain; 
    }

    
    .table-dark-industrial tbody tr,
    .table-dark-industrial tbody td,
    .detail-container-industrial {
        touch-action: pan-x pan-y !important; 
    }

    
    .table-dark-industrial .btn,
    .table-dark-industrial .btn-sm {
        touch-action: manipulation !important;
    }
}




.table-dark-industrial td .btn,
.table-dark-industrial td .btn-sm,
.table-dark-industrial td a.btn {
    white-space: nowrap !important;    
    word-break: keep-all !important;   
    display: inline-flex !important;   
    align-items: center !important;    
    justify-content: center !important;
    gap: 6px !important;               
    flex-wrap: nowrap !important;      
    min-width: max-content !important; 
}


.table-dark-industrial td.cotizacion-col-url,
.table-dark-industrial td.factura-col-url {
    width: auto !important;
    min-width: 80px; 
}




.fixed-table-pagination .dropdown-menu {
    background-color: #1a1c1e !important; 
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5) !important;
}


.fixed-table-pagination .dropdown-menu .dropdown-item {
    color: #ffffff !important; 
    background-color: transparent !important;
    font-weight: 500;
    transition: all 0.2s ease;
}


.fixed-table-pagination .dropdown-menu .dropdown-item:hover,
.fixed-table-pagination .dropdown-menu .dropdown-item.active {
    background-color: #4c596c !important; 
    color: #ffffff !important;
}


.dropdown-menu,
.dropdown-menu.show,
.dropdown-menu[data-bs-popper] {
    background: var(--ui-surface) !important;
    border: 1px solid var(--ui-border-strong) !important;
    box-shadow: var(--ui-shadow-md) !important;
    color: var(--ui-text) !important;
}

.dropdown-menu .dropdown-header,
.dropdown-menu .dropdown-footer {
    color: var(--ui-text-muted) !important;
}

.dropdown-menu .dropdown-divider {
    border-top-color: var(--ui-border) !important;
    opacity: 1 !important;
}

.dropdown-menu .dropdown-item {
    background: transparent !important;
    color: var(--ui-text) !important;
    transition: background-color 0.25s ease, color 0.25s ease;
}

.dropdown-menu .dropdown-item:hover,
.dropdown-menu .dropdown-item:focus {
    background: var(--ui-accent-soft) !important;
    color: var(--ui-heading) !important;
}

.dropdown-menu .dropdown-item.active,
.dropdown-menu .dropdown-item:active {
    background: rgba(255, 204, 0, 0.18) !important;
    color: var(--ui-heading) !important;
}




#toast-container > div, 
.toast {
    background-color: #0d1117 !important; 
    color: #ffffff !important;
    border: 1px solid #1a202c !important; 
    border-left: 4px solid #0c99bc !important; 
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.6), 0 0 15px rgba(0, 243, 255, 0.15) !important;
    border-radius: 6px !important;
    opacity: 0.95 !important;
    padding: 15px 15px 15px 50px !important; 
}


#toast-container > div .toast-title,
.toast .toast-title {
    color: #f3fafa !important; 
    font-weight: 700 !important;
    font-size: 0.95rem !important;
    letter-spacing: 0.5px;
    margin-bottom: 4px;
}

#toast-container > div .toast-message,
.toast .toast-body {
    color: #e9f7ff !important;
    font-size: 0.85rem !important;
}

#toast-container > div .toast-close-button,
.toast .btn-close {
    color: #ffffff !important;
    text-shadow: none !important;
    opacity: 0.5 !important;
    transition: all 0.2s ease;
}

#toast-container > div .toast-close-button:hover,
.toast .btn-close:hover {
    opacity: 1 !important;
    color: #ff0055 !important; 
}


#toast-container > .toast-success { 
    border-left-color: #00ff88 !important; 
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.6), 0 0 15px rgba(0, 255, 136, 0.15) !important;
}
#toast-container > .toast-success .toast-title { color: #00ff88 !important; }

#toast-container > .toast-error { 
    border-left-color: #ff0055 !important; 
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.6), 0 0 15px rgba(255, 0, 85, 0.15) !important;
}
#toast-container > .toast-error .toast-title { color: #ff0055 !important; }

#toast-container > .toast-warning { 
    border-left-color: #ffbe00 !important; 
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.6), 0 0 15px rgba(255, 190, 0, 0.15) !important;
}
#toast-container > .toast-warning .toast-title { color: #ffbe00 !important; }




#toast-container > div, 
.toast {
    background-color: var(--ui-surface) !important; 
    color: var(--ui-text) !important;
    border: 1px solid var(--ui-border) !important; 
    border-left: 4px solid var(--ui-info) !important; 
    box-shadow: var(--ui-shadow-soft) !important;
    border-radius: var(--ui-radius-sm) !important;
    opacity: 0.98 !important;
    padding: 15px 15px 15px 50px !important; 
}

#toast-container > div .toast-title,
.toast .toast-title {
    color: var(--ui-heading) !important; 
    font-weight: 600 !important;
    font-size: 0.95rem !important;
    margin-bottom: 4px;
}


#toast-container > div .toast-message,
.toast .toast-body {
    color: var(--ui-text-muted) !important;
    font-size: 0.85rem !important;
}

#toast-container > div .toast-close-button,
.toast .btn-close {
    color: var(--ui-text-muted) !important;
    text-shadow: none !important;
    transition: color 0.2s ease;
}

#toast-container > div .toast-close-button:hover,
.toast .btn-close:hover {
    color: var(--ui-danger) !important; 
}


#toast-container > .toast-success { border-left-color: var(--ui-success) !important; }
#toast-container > .toast-error   { border-left-color: var(--ui-danger) !important; }
#toast-container > .toast-warning { border-left-color: var(--ui-warning) !important; }
#toast-container > .toast-info    { border-left-color: var(--ui-info) !important; }





.jconfirm .jconfirm-box {
    background-color: var(--ui-surface) !important; 
    border: 1px solid var(--ui-border-strong) !important; 
    box-shadow: var(--ui-shadow-md) !important;
    border-radius: var(--ui-radius-md) !important;
    color: var(--ui-text) !important;
}


.jconfirm .jconfirm-title-c {
    color: var(--ui-heading) !important;
    font-weight: 700 !important;
    font-size: 1.2rem !important;
    padding-bottom: 10px;
    text-shadow: none !important; 
}


.jconfirm .jconfirm-content {
    color: var(--ui-text-soft) !important;
    font-size: 15px !important;
}


.jconfirm .jconfirm-bg {
    
    background-color: rgba(18, 20, 23, 0.85) !important; 
}


.jconfirm .jconfirm-buttons {
    border-top: 1px solid var(--ui-border) !important; 
    padding-top: 15px !important;
    margin-top: 10px !important;
}


.jconfirm .jconfirm-buttons .btn {
    border-radius: var(--ui-radius-sm) !important;
    font-weight: 600 !important;
    text-transform: none !important; 
    margin-left: 10px !important;
}


.jconfirm .jconfirm-buttons .btn-default,
.jconfirm .jconfirm-buttons .btn-cancel {
    background-color: transparent !important;
    color: var(--ui-text) !important;
    border: 1px solid var(--ui-border-strong) !important;
}

.jconfirm .jconfirm-buttons .btn-default:hover,
.jconfirm .jconfirm-buttons .btn-cancel:hover {
    background-color: var(--ui-surface-muted) !important;
}

select option,
select optgroup {
    background-color: var(--ui-surface) !important; 
    color: var(--ui-text) !important; 
    padding: 10px !important;
}

select:focus > option:checked {
    background-color: var(--ui-primary) !important; 
    color: #000000 !important;
}




#formResetClave .form-control {
    background-color: var(--ui-nav-bg) !important;
    border: 1px solid var(--ui-border-strong) !important;
    color: var(--ui-text) !important;
    border-radius: 8px;
    padding: 12px 15px;
}

#formResetClave .form-control:focus {
    border-color: var(--ui-primary) !important;
    box-shadow: 0 0 0 4px var(--ui-accent-ring) !important;
}


#formResetClave .form-label {
    color: var(--ui-heading) !important; 
    font-weight: 700;
    text-transform: uppercase;
    font-size: 0.75rem;
    letter-spacing: 0.5px;
    margin-bottom: 8px;
}


#formResetClave .text-primary-accent {
    color: var(--ui-primary) !important;
    font-weight: bold;
}


#contador-expiracion {
    background: var(--ui-surface-muted);
    display: inline-block;
    padding: 10px 20px;
    border-radius: 50px;
    border: 1px solid var(--ui-primary);
    color: var(--ui-primary) !important;
    font-family: 'Courier New', monospace;
    font-weight: 800;
    margin-top: 10px;
}




.img-firma-ajustada {
    
    filter: invert(1) brightness(1.5) contrast(1.2);
    
    
    background-color: rgba(224, 215, 215, 0.03); 
    padding: 2px;
    transition: all 0.3s ease;
}

.img-firma-ajustada:hover {
    
    filter: invert(1) brightness(2);
    transform: scale(1.1);
}




.bootstrap-table .fixed-table-container thead th {
    background-color: var(--ui-nav-bg) !important; 
    padding: 0 !important; 
    vertical-align: middle;
    border-bottom: 2px solid var(--ui-border-strong) !important;
}


.bootstrap-table .fixed-table-container thead th .th-inner {
    padding: 8px 10px !important;
    font-size: 0.72rem !important; 
    font-weight: 800 !important;
    text-transform: uppercase !important; 
    letter-spacing: 0.05em !important;
    color: var(--ui-text-muted) !important;
    white-space: nowrap !important; 
}


.bootstrap-table .fixed-table-container thead th .sortable {
    padding-right: 25px !important;
    background-position: right 8px center !important;
}

@media (max-width: 768px) {
    .bootstrap-table .fixed-table-container thead th .th-inner {
        padding: 6px 4px !important;
        font-size: 0.65rem !important;
        letter-spacing: 0;
    }
    
  
    .bootstrap-table .fixed-table-container thead th .th-inner {
        max-width: 80px;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    .table-responsive,
    .tracking-users-wrap,
    .my-activity-events-wrap,
    .mod-activities-wrap,
    .detail-container-industrial {
        scrollbar-width: none !important; 
        -ms-overflow-style: none !important; 
    }

    
    .table-responsive::-webkit-scrollbar,
    .tracking-users-wrap::-webkit-scrollbar,
    .my-activity-events-wrap::-webkit-scrollbar,
    .mod-activities-wrap::-webkit-scrollbar,
    .detail-container-industrial::-webkit-scrollbar {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
    }
    .bootstrap-table tbody tr.detail-view td {
        max-width: 0 !important;
        padding: 0 !important;
        border: none !important;
    }

    
    
    .detail-container-industrial, 
    .detail-view .card-body,
    .detail-view .container-fluid {
        width: 100% !important;
        overflow-x: auto !important; 
        -webkit-overflow-scrolling: touch !important; 
        padding: 15px !important;
        box-sizing: border-box;
        
        
        scrollbar-width: none !important; 
        -ms-overflow-style: none !important; 
    }
    .detail-container-industrial::-webkit-scrollbar {
        display: none !important;
    }

    
    .detail-container-industrial .detail-grid,
    .detail-container-industrial table,
    .detail-view .row {
        min-width: 600px !important; 
        display: block; 
    }
}



.swal2-popup {
    background-color: var(--ui-nav-bg) !important;
    border: 1px solid var(--ui-border-strong) !important;
    border-radius: 16px !important;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.6) !important;
    padding: 2rem !important;
}


.swal2-title {
    color: var(--ui-heading) !important;
    font-size: 1.25rem !important;
    font-weight: 800 !important;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}


.swal2-html-container {
    color: var(--ui-text-soft) !important;
    font-size: 0.9rem !important;
}


.swal2-confirm {
    background-color: var(--ui-primary) !important; 
    color: #111111 !important; 
    font-weight: 700 !important;
    border-radius: 10px !important;
    text-transform: uppercase;
    font-size: 0.8rem !important;
    padding: 0.6rem 1.5rem !important;
}

.swal2-cancel {
    background-color: rgba(148, 163, 184, 0.1) !important;
    color: var(--ui-text) !important;
    border: 1px solid var(--ui-border) !important;
    border-radius: 10px !important;
    font-size: 0.8rem !important;
}


.swal2-icon.swal2-success {
    border-color: var(--ui-primary) !important;
    color: var(--ui-primary) !important;
}

.swal2-icon.swal2-success [class^='swal2-success-line'] {
    background-color: var(--ui-primary) !important;
}

.swal2-icon.swal2-success .swal2-success-ring {
    border: 4px solid rgba(255, 204, 0, 0.2) !important; 
}

.swal2-icon.swal2-error {
    border-color: var(--ui-danger) !important;
}

.swal2-icon.swal2-error [class^='swal2-x-mark-line'] {
    background-color: var(--ui-danger) !important;
}

input::placeholder {
    color: rgba(239, 234, 234, 0.492) !important;
    font-style: italic;
    font-size: 0.8rem;
}


.text-yellow {
    color: var(--ui-primary) !important;
   }


:root {
    
    --ui-font-xs: 0.75rem;  
    --ui-font-sm: 0.85rem;  
    --ui-font-md: 0.95rem;  
    --ui-font-lg: 1.05rem;  
    
    
    --ui-ctrl-h: 40px;      
    --ui-ctrl-h-lg: 46px;   
    
    --ui-gap-xs: 0.28rem;
    --ui-gap-sm: 0.4rem;
    --ui-gap-md: 0.55rem;
}
body {
    font-size: 14px;
    line-height: 1.35;
}

.ui-module-header,
.facturas-header,
.estimaciones-header,
.ordenes-header {
    padding: 0.5rem 0.65rem !important;
    margin-bottom: 0.6rem !important;
}

.ui-module-kicker,
.module-kicker {
    font-size: var(--ui-font-xs) !important;
    letter-spacing: 0.05em !important;
    margin-bottom: 0.12rem !important;
}

.ui-module-title {
    font-size: 1.02rem !important;
    line-height: 1.2 !important;
    margin-bottom: 0.1rem !important;
}

.ui-module-subtitle {
    font-size: var(--ui-font-sm) !important;
    margin-bottom: 0 !important;
    line-height: 1.3 !important;
}

.ui-module-panel,
.ui-table-fixed,
.ui-table-compact {
    padding: 0.62rem !important;
    border-radius: 12px !important;
}

.ui-module-toolbar {
    margin-bottom: 0.5rem !important;
}

.form-label,
label {
    font-size: var(--ui-font-xs) !important;
    margin-bottom: 0.22rem !important;
    letter-spacing: 0.035em;
}

.form-control,
.form-select,
input.form-control,
select.form-select,
textarea.form-control {
    min-height: var(--ui-ctrl-h) !important;
    padding: 0.34rem 0.52rem !important;
    font-size: var(--ui-font-md) !important;
    border-radius: 9px !important;
    line-height: 1.25 !important;
}

textarea.form-control {
    min-height: 84px !important;
}

.btn,
.btn-sm,
.btn-lg,
.ui-table-action-btn,
.ui-table-url-btn {
    min-height: var(--ui-ctrl-h) !important;
    padding: 0.32rem 0.62rem !important;
    font-size: var(--ui-font-sm) !important;
    border-radius: 9px !important;
    line-height: 1.1 !important;
    gap: var(--ui-gap-xs) !important;
}

.btn-lg {
    min-height: var(--ui-ctrl-h-lg) !important;
    font-size: var(--ui-font-md) !important;
}

.btn i,
.btn-sm i,
.ui-table-action-btn i,
.ui-table-url-btn i {
    font-size: 0.9em !important;
    line-height: 1 !important;
}
.bootstrap-table .fixed-table-toolbar,

.bootstrap-table .fixed-table-pagination {
    font-size: var(--ui-font-sm) !important;
}

.bootstrap-table .fixed-table-container thead th .th-inner {
    font-size: 0.64rem !important;
    padding: 5px 6px !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    letter-spacing: 0.03em !important;
}

.bootstrap-table .fixed-table-container tbody td {
    font-size: var(--ui-font-sm) !important;
    padding: 0.36rem 0.45rem !important;
    line-height: 1.25 !important;
    vertical-align: middle !important;
}

.dropdown-menu .dropdown-item {
    font-size: var(--ui-font-sm) !important;
    padding: 0.4rem 0.62rem !important;
}

.badge,
.service-badge {
    font-size: var(--ui-font-xs) !important;
    padding: 0.2rem 0.5rem !important;
}

.card .card-body {
    padding: 0.7rem !important;
}

@media (max-width: 768px) {
    body {
        font-size: 13px;
    }

    .ui-module-header,
    .facturas-header,
    .estimaciones-header,
    .ordenes-header {
        padding: 0.45rem 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }

    .ui-module-panel,
    .ui-table-fixed,
    .ui-table-compact {
        padding: 0.52rem !important;
    }

    .form-control,
    .form-select,
    .btn,
    .btn-sm,
    .ui-table-action-btn,
    .ui-table-url-btn {
        min-height: 32px !important;
    }

    .logo {
        max-width: 126px;
        gap: 0.3rem;
    }

    .logo img {
        max-height: 30px !important;
        width: auto;
    }

    .logo span {
        font-size: 12px !important;
    }

    .header-nav .nav-profile img {
        max-height: 34px !important;
        width: 34px;
        min-width: 34px;
        object-fit: cover;
    }

    .header-nav .nav-profile span {
        font-size: 12px !important;
    }

    .avatar-wrapper,
    .avatar-wrapper-top {
        width: 72px;
        height: 72px;
    }

    .avatar-img-compact {
        border-radius: 14px;
    }

    .workspace-logo-image,
    .business-logo,
    #companyLogo {
        max-width: 64px !important;
        max-height: 64px !important;
        width: 64px !important;
        height: 64px !important;
        object-fit: contain;
    }
}

@media (max-width: 480px) {
    .logo {
        max-width: 112px;
    }

    .logo img {
        max-height: 26px !important;
    }

    .logo span {
        font-size: 11px !important;
    }

    .header-nav .nav-profile img {
        max-height: 30px !important;
        width: 30px;
        min-width: 30px;
    }

    .workspace-logo-image,
    .business-logo,
    #companyLogo {
        max-width: 56px !important;
        max-height: 56px !important;
        width: 56px !important;
        height: 56px !important;
    }
}



.proyectos-panel .bootstrap-table .fixed-table-container thead th:last-child,
.proyectos-panel .bootstrap-table .fixed-table-container tbody td:last-child {
    width: 320px !important; 
    min-width: 320px !important;
    max-width: 320px !important;
    white-space: nowrap !important;
    text-align: center !important;
    vertical-align: middle !important;
}


.proyectos-panel .bootstrap-table .fixed-table-container tbody td:last-child > div,
.proyectos-panel .bootstrap-table .fixed-table-container tbody td:last-child .btn-group {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-wrap: nowrap !important; 
    gap: 0.4rem !important; 
    width: 100% !important;
}


.proyectos-panel .bootstrap-table .fixed-table-container tbody td:last-child .btn {
    margin: 0 !important;
    white-space: nowrap !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}


@media (min-width: 992px) {
    
    .proyectos-panel .bootstrap-table .fixed-table-container .fixed-table-header table,
    .proyectos-panel .bootstrap-table .fixed-table-container .fixed-table-body table,
    .proyectos-panel .bootstrap-table .fixed-table-container .table {
        table-layout: auto !important; 
        width: 100% !important;
        min-width: max-content !important; 
    }

    
    .proyectos-panel .bootstrap-table .fixed-table-container thead th .th-inner {
        white-space: nowrap !important;
        overflow: visible !important;
        text-overflow: clip !important;
        padding-left: 12px !important;
        padding-right: 25px !important; 
    }

    
    .proyectos-panel .bootstrap-table .fixed-table-container tbody td {
        white-space: nowrap !important;
        overflow: visible !important;
        text-overflow: clip !important;
    }

    
    .proyectos-panel .bootstrap-table .fixed-table-body {
        overflow-x: auto !important;
        overflow-y: hidden !important;
    }

    
    
}
.profile-avatar-img,
.avatar-img-compact {
    object-fit: contain !important; 
    background-color: var(--ui-bg) !important; 
}

.header-nav .nav-profile img {
    width: 38px !important;        
    height: 38px !important;       
    object-fit: cover !important;  
    border-radius: 50% !important; 
    margin-right: 8px !important;  
    background-color: var(--ui-surface-muted) !important; 
}




.fc {
    background: var(--ui-surface) !important;
    border: 1px solid var(--ui-border-strong) !important;
    border-radius: var(--ui-radius-lg) !important;
    padding: 1.5rem !important;
    box-shadow: var(--ui-shadow-md) !important;
    max-width: 1100px !important; 
    margin: 0 auto !important;    
    font-family: inherit;
}


.fc-theme-standard td, 
.fc-theme-standard th, 
.fc-theme-standard .fc-scrollgrid {
    border-color: var(--ui-border-strong) !important;
}


.fc .fc-col-header-cell {
    background: rgba(255, 255, 255, 0.02);
    padding: 0.5rem 0 !important;
    font-size: 0.75rem !important;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--ui-text-muted);
}


.fc .fc-daygrid-day-number {
    font-size: 0.85rem !important;
    font-weight: 600;
    color: var(--ui-text);
    padding: 8px !important;
}


.fc-event {
    background-color: rgba(255, 204, 0, 0.1) !important; 
    border: 1px solid rgba(255, 204, 0, 0.3) !important;
    border-radius: 6px !important;
    padding: 3px 6px !important;
    margin: 2px 4px !important;
    box-shadow: none !important;
    transition: transform 0.2s ease, border-color 0.2s ease;
}

.fc-event:hover {
    transform: translateY(-1px);
    border-color: var(--ui-primary) !important;
    cursor: pointer;
}

.fc-event .fc-event-main {
    color: var(--ui-heading) !important;
    font-size: 0.72rem !important;
    font-weight: 700;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}


.fc .fc-day-today {
    background: rgba(255, 204, 0, 0.04) !important;
}


.fc .fc-button-primary {
    background-color: var(--ui-surface-muted) !important;
    border-color: var(--ui-border-strong) !important;
    color: var(--ui-text) !important;
    text-transform: capitalize !important;
    border-radius: 8px !important;
    font-weight: 600 !important;
    font-size: 0.85rem !important;
    padding: 0.4rem 0.8rem !important;
    transition: all 0.2s ease;
    margin: 10px;
}

.fc .fc-button-primary:hover {
    background-color: rgba(255, 204, 0, 0.1) !important;
    border-color: var(--ui-primary) !important;
    color: var(--ui-primary) !important;
}

.fc .fc-button-primary:not(:disabled).fc-button-active, 
.fc .fc-button-primary:not(:disabled):active {
    background-color: var(--ui-primary) !important;
    color: #000 !important;
    border-color: var(--ui-primary) !important;
}


.fc .fc-toolbar-title {
    font-size: 1.25rem !important;
    font-weight: 800 !important;
    color: var(--ui-heading) !important;
    letter-spacing: 0.02em;
}


@media (max-width: 768px) {
    .fc {
        padding: 0.8rem !important;
    }
    .fc .fc-toolbar {
        flex-direction: column;
        gap: 0.8rem;
    }
}




.swal2-popup select,
.swal2-select,
.modal-body select {
    background-color: var(--ui-nav-bg) !important; 
    border: 1px solid var(--ui-border-strong) !important;
    color: var(--ui-text) !important; 
    border-radius: 10px !important;
    min-height: 44px !important;
    padding: 0.5rem 1rem !important;
    font-size: 0.95rem !important;
    width: 100% !important;
    margin-top: 0.4rem !important;
    margin-bottom: 1.2rem !important;
    box-shadow: inset 0 2px 4px rgba(0,0,0,0.2) !important; 
    transition: all 0.2s ease;
}


.swal2-popup select:focus,
.swal2-select:focus,
.modal-body select:focus {
    border-color: var(--ui-primary) !important;
    box-shadow: 0 0 0 3px var(--ui-accent-ring) !important;
    outline: none !important;
}


.swal2-popup select option,
.modal-body select option {
    background-color: var(--ui-surface) !important;
    color: var(--ui-text) !important;
    padding: 10px !important;
}


.swal2-html-container,
.modal-body .info-actividad {
    text-align: left !important; 
    font-size: 0.85rem !important;
    line-height: 1.6 !important;
    color: var(--ui-text-muted) !important;
}


.swal2-html-container strong,
.swal2-html-container b,
.modal-body strong {
    color: var(--ui-heading) !important;
    font-weight: 700 !important;
}


.swal2-html-container label,
.modal-body label {
    display: block;
    text-align: left;
    font-size: 0.75rem !important;
    font-weight: 800 !important;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--ui-text-soft) !important;
    margin-bottom: 0.2rem;
    margin-left: 0.5rem;
}


.swal2-actions {
    gap: 1rem !important;
    margin-top: 1.5rem !important;
}

.swal2-cancel,
.btn-cerrar-modal {
    background: rgba(148, 163, 184, 0.1) !important;
    border: 1px solid var(--ui-border-strong) !important;
    color: var(--ui-text) !important;
    border-radius: 10px !important;
    padding: 0.6rem 1.5rem !important;
    font-weight: 600 !important;
    transition: all 0.2s ease !important;
    min-height: 44px;
}

.swal2-cancel:hover,
.btn-cerrar-modal:hover {
    background: rgba(148, 163, 184, 0.2) !important;
    color: #fff !important;
    border-color: rgba(255, 204, 0, 0.3) !important;
}


@media (min-width: 992px) {
    
    .proyectos-panel .bootstrap-table .detail-view td {
        padding: 0 !important; 
    }

    
    .proyectos-panel .bootstrap-table .detail-view td > div,
    .proyectos-panel .bootstrap-table .detail-view .detail-container-industrial,
    .proyectos-panel .bootstrap-table .detail-view .detail-grid-industrial {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important; 
        justify-content: flex-start !important;
        align-items: stretch !important; 
        gap: 20px !important;
        width: 100% !important;
        padding: 25px 30px !important;
        box-sizing: border-box !important;
        overflow-x: auto !important; 
    }

    
    .proyectos-panel .bootstrap-table .detail-view td > div > div,
    .proyectos-panel .bootstrap-table .detail-view .detail-box {
        flex: 1 1 0 !important; 
        min-width: 220px !important; 
        margin: 0 !important; 
    }
}

@media (max-width: 768px) {
    
    .fc-daygrid-event {
        margin: 1px 2px !important;
        padding: 0 !important;
        border-radius: 4px !important;
        overflow: hidden !important; 
        border: 1px solid rgba(255, 255, 255, 0.05) !important;
    }

    
    .fc-event-main {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: flex-start !important;
        padding: 2px 4px !important;
        gap: 4px !important;
        width: 100% !important;
    }

    
    .fc-daygrid-event-dot {
        margin: 0 !important;
        border-width: 3px !important; 
        flex-shrink: 0 !important;
    }

    
    .fc-event-time {
        font-size: 0.55rem !important;
        font-weight: 800 !important;
        color: var(--ui-primary) !important;
        flex-shrink: 0 !important; 
        white-space: nowrap !important;
        margin: 0 !important;
    }

    
    .fc-event-title {
        font-size: 0.55rem !important;
        font-weight: 400 !important;
        white-space: nowrap !important; 
        overflow: hidden !important; 
        text-overflow: ellipsis !important; 
        flex-grow: 1 !important; 
        min-width: 0 !important; 
    }

 
    .fc-event-main-frame {
        display: flex !important;
        align-items: center !important;
        width: 100% !important;
        gap: 4px !important;
    }
    .footer {
        font-size: 0.7rem !important;
    }

    .proyectos-panel .bootstrap-table .fixed-table-container tbody td{
        font-size: 0.75rem !important;
    }
   
}

.modal-body .list-group,
.modal-body .bg-white,
.modal-body [id*="lista"],    
.modal-body [id*="list"] {    
    background-color: rgba(255, 255, 255, 0.035) !important; 
    border: 1px solid var(--ui-border-strong) !important;
    border-radius: 12px !important;
    color: var(--ui-text-soft) !important; 
    padding: 0.5rem !important;
    min-height: 48px;
    box-shadow: inset 0 2px 4px rgba(0,0,0,0.15) !important;
}


.modal-body .list-group-item,
.modal-body [id*="list"] div,
.modal-body [id*="lista"] div {
    background-color: rgba(255, 255, 255, 0.02) !important;
    border: 1px solid rgba(148, 163, 184, 0.12) !important;
    color: var(--ui-text) !important; 
    border-radius: 8px !important;
    margin-bottom: 0.35rem !important;
    padding: 0.45rem 0.8rem !important;
    display: flex;
    align-items: center;
    justify-content: space-between;
}


.modal-body .list-group-item:last-child {
    margin-bottom: 0 !important;
}




.modal-body .nav-tabs {
    border-bottom: 1px solid var(--ui-border-strong) !important;
    margin-bottom: 1.5rem !important;
}

.modal-body .nav-tabs .nav-link {
    color: var(--ui-text-muted) !important;
    border: none !important;
    border-bottom: 2px solid transparent !important;
    background: transparent !important;
    font-weight: 600 !important;
    padding: 0.75rem 1.5rem !important;
    transition: all 0.2s ease;
}

.modal-body .nav-tabs .nav-link:hover {
    color: var(--ui-heading) !important;
}

.modal-body .nav-tabs .nav-link.active {
    color: var(--ui-primary) !important;
    border-bottom: 2px solid var(--ui-primary) !important;
}


.modal-body .table-bordered,
.modal-body .table-bordered th,
.modal-body .table-bordered td {
    border: 1px solid var(--ui-border-strong) !important; 
}

.modal-body .table {
    border-radius: 12px !important;
    overflow: hidden !important;
    border-collapse: separate !important;
    border-spacing: 0;
}


.modal-body .table thead th {
    background-color: var(--ui-surface-muted) !important;
    color: var(--ui-text-muted) !important; 
    font-size: 0.75rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    padding: 1rem 0.8rem !important;
    text-align: center !important;
    vertical-align: middle !important;
    border-bottom: 2px solid var(--ui-border-strong) !important;
}


.modal-body .table tbody th { 
    background-color: var(--ui-surface) !important;
    color: var(--ui-text) !important; 
    font-weight: 600 !important;
    vertical-align: middle !important;
    text-align: left !important;
    padding-left: 1.5rem !important;
}


.modal-body .table tbody td {
    background-color: var(--ui-surface) !important;
    text-align: center !important;
    vertical-align: middle !important;
    padding: 0.8rem !important;
}


.modal-body .table tbody tr:nth-child(even) td,
.modal-body .table tbody tr:nth-child(even) th {
    background-color: rgba(255, 255, 255, 0.015) !important; 
}


.modal-body .table tbody tr:hover td,
.modal-body .table tbody tr:hover th {
    background-color: rgba(255, 204, 0, 0.05) !important; 
}


.modal-body .btn-warning, 
.modal-body .btn-outline-warning {
    background: var(--ui-primary) !important;
    color: #000 !important;
    border: none !important;
    font-weight: 800 !important;
    border-radius: 8px !important;
    padding: 0.4rem 1.2rem !important;
}

.modal-body .btn-secondary,
.modal-body .btn-outline-secondary {
    background: var(--ui-surface-muted) !important;
    color: var(--ui-text) !important;
    border: 1px solid var(--ui-border-strong) !important;
    font-weight: 600 !important;
    border-radius: 8px !important;
    padding: 0.4rem 1.2rem !important;
}

/*!*****************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/tables.css ***!
  \*****************************************************************************************************************/


.estilos_generales {
    width: 100%;
    max-width: 100%;
    margin: 0;
    border-collapse: separate;
    border-spacing: 0;
    background: transparent;
}

.bootstrap-table {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

.bootstrap-table .fixed-table-toolbar,
.bootstrap-table .fixed-table-pagination,
.bootstrap-table .fixed-table-container,
.bootstrap-table .fixed-table-header,
.bootstrap-table .fixed-table-body,
.bootstrap-table .fixed-table-footer {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

.bootstrap-table .fixed-table-container {
    overflow: hidden;
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 16px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.02) 0%, rgba(255, 255, 255, 0.01) 100%);
    box-shadow: var(--ui-shadow-soft);
}

.bootstrap-table .fixed-table-container .fixed-table-header {
    overflow: hidden;
    border-radius: 16px 16px 0 0;
}

.bootstrap-table .fixed-table-container .fixed-table-header table,
.bootstrap-table .fixed-table-container .fixed-table-body table,
.bootstrap-table .fixed-table-container .fixed-table-footer table {
    width: max-content;
    min-width: 100%;
    margin-inline: auto;
    table-layout: auto;
}

.bootstrap-table .fixed-table-container .table {
 table-layout: auto; 
    width: max-content;
    min-width: 100%;
   
    margin: 0 !important;
}

.bootstrap-table .fixed-table-body {
    background: var(--ui-surface);
    overflow-x: auto;
    overflow-y: auto;
}

.bootstrap-table .fixed-table-container thead th {
    padding: 0 !important;
    position: relative;
    vertical-align: middle;
    text-align: left !important;
    background: linear-gradient(180deg, rgba(15, 23, 42, 0.96) 0%, rgba(30, 41, 59, 0.96) 100%) !important;
    color: rgba(241, 245, 249, 0.95) !important;
    border-bottom: 1px solid rgba(148, 163, 184, 0.25) !important;
    border-left: 0 !important;
    border-right: 1px solid rgba(148, 163, 184, 0.12) !important;
    background-clip: padding-box;
}

.bootstrap-table .fixed-table-container thead th:first-child {
    border-top-left-radius: 16px;
}

.bootstrap-table .fixed-table-container thead th:last-child {
    border-top-right-radius: 16px;
}

.bootstrap-table .fixed-table-container thead th .th-inner {
    display: block !important;
    width: 100%;
    min-height: 44px;
    padding: 0.8rem 1.75rem 0.8rem 0.95rem !important;
    color: inherit !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    line-height: 1.2;
    letter-spacing: 0.06em !important;
    text-align: left !important;
    text-transform: uppercase !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    overflow-wrap: normal;
    word-break: normal;
}

.bootstrap-table .fixed-table-container thead th .sortable,
.bootstrap-table .fixed-table-container thead th .th-inner.sortable {
    padding-right: 1.75rem !important;
    background-position: right 0.62rem center !important;
    background-size: 0.78rem auto !important;
}

/* Evita que el icono de orden (flechas) se superponga al texto del encabezado */
.bootstrap-table .fixed-table-container thead th.sortable .th-inner,
.bootstrap-table .fixed-table-container thead th .th-inner.sortable,
.bootstrap-table .fixed-table-container thead th .sortable {
    position: relative;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    padding-right: 2.1rem !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    overflow-wrap: normal;
    word-break: normal;
    background-repeat: no-repeat !important;
    background-position: right 0.62rem center !important;
    background-size: 0.78rem auto !important;
}

/* Estados de orden activo mantienen separación estable */
.bootstrap-table .fixed-table-container thead th.asc .th-inner,
.bootstrap-table .fixed-table-container thead th.desc .th-inner,
.bootstrap-table .fixed-table-container thead th .th-inner.asc,
.bootstrap-table .fixed-table-container thead th .th-inner.desc {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    padding-right: 2.1rem !important;
    background-repeat: no-repeat !important;
    background-position: right 0.62rem center !important;
}

.bootstrap-table .fixed-table-container thead th:not(.detail)::before {
    content: "";
    position: absolute;
    inset: 18% auto 18% 0;
    width: 1px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(148, 163, 184, 0.08) 20%, rgba(148, 163, 184, 0.16) 50%, rgba(148, 163, 184, 0.08) 80%, rgba(255, 255, 255, 0) 100%);
    opacity: 0.9;
}

.bootstrap-table .fixed-table-container thead th:first-child::before {
    display: none;
}

.bootstrap-table .fixed-table-container thead th:hover {
    background: linear-gradient(180deg, rgba(30, 41, 59, 0.98) 0%, rgba(51, 65, 85, 0.98) 100%) !important;
    color: rgba(241, 245, 249, 0.95) !important;
}

.bootstrap-table .fixed-table-container thead th.detail .th-inner {
    min-height: 38px;
    padding-inline: 0 !important;
    text-align: center !important;
}

.bootstrap-table .fixed-table-container .table thead th.detail,
.bootstrap-table .fixed-table-container .table tbody > tr[data-index] > td:first-child {
    width: 46px;
    min-width: 46px;
    text-align: center;
}

.bootstrap-table .fixed-table-container tbody td {
    background: rgba(255, 255, 255, 0.04);
    color: var(--ui-text);
    font-size: 0.98rem;

    border-bottom: 1px solid rgba(148, 163, 184, 0.12);
    border-left: 0 !important;
    border-right: 1px solid rgba(148, 163, 184, 0.1);
    transition: background-color 0.2s ease, color 0.2s ease;
    white-space: nowrap; 
    overflow-wrap: normal; 
    word-break: normal; 
    overflow: hidden; 
    text-overflow: ellipsis; 
    line-height: 1.3 !important; 
    vertical-align: top !important;
}

.bootstrap-table .fixed-table-container tbody td > *,
.bootstrap-table .fixed-table-container tbody td .text-start,
.bootstrap-table .fixed-table-container tbody td .text-center,
.bootstrap-table .fixed-table-container tbody td .text-end,
.bootstrap-table .fixed-table-container tbody td .card-view,
.bootstrap-table .fixed-table-container tbody td .btn,
.bootstrap-table .fixed-table-container tbody td .btn-group,
.bootstrap-table .fixed-table-container tbody td .btn-toolbar,
.bootstrap-table .fixed-table-container tbody td a,
.bootstrap-table .fixed-table-container tbody td span,
.bootstrap-table .fixed-table-container tbody td div {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;

    text-overflow: ellipsis;
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
}

.bootstrap-table .fixed-table-container tbody td .btn,
.bootstrap-table .fixed-table-container tbody td .btn-group,
.bootstrap-table .fixed-table-container tbody td .btn-toolbar,
.bootstrap-table .fixed-table-container tbody td .btn span,
.bootstrap-table .fixed-table-container tbody td .btn i,
.bootstrap-table .fixed-table-container tbody td a.ui-table-url-btn,
.bootstrap-table .fixed-table-container tbody td a.ui-table-action-btn {
    overflow: visible;
    text-overflow: clip;
    white-space: nowrap;
}

.bootstrap-table .fixed-table-container tbody td a:not(.ui-table-url-btn):not(.ui-table-action-btn) {
    overflow: hidden;
    text-overflow: ellipsis;
}

.bootstrap-table .fixed-table-container tbody td .btn,
.bootstrap-table .fixed-table-container tbody td a {
    white-space: nowrap;
    word-break: normal;
    overflow-wrap: normal;
}

.bootstrap-table .fixed-table-container tbody td .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    max-width: 100%;
    gap: 0.3rem;
    line-height: 1.15;
    text-align: center;
}

.bootstrap-table .fixed-table-container tbody td .btn-group,
.bootstrap-table .fixed-table-container tbody td .btn-toolbar {
    display: inline-flex;
    flex-wrap: nowrap;
    gap: 0.3rem;
    max-width: 100%;
    overflow: visible;
}

.bootstrap-table .fixed-table-container tbody td .btn-group > .btn {
    flex: 0 1 auto;
}

.bootstrap-table .fixed-table-container tbody td .badge,
.bootstrap-table .fixed-table-container tbody td .ui-table-chip {
    max-width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.bootstrap-table .fixed-table-container tbody td .detail-icon {
    max-width: 100%;
}

.bootstrap-table .fixed-table-container tbody tr:nth-child(even) td {
    background: rgba(241, 245, 249, 0.5);
}

.bootstrap-table .fixed-table-container tbody tr:hover td {
    background: rgba(148, 163, 184, 0.18);
    color: var(--ui-text);
}

.bootstrap-table .fixed-table-container tbody tr:last-child td {
    border-bottom: 0;
}

.bootstrap-table .fixed-table-container tbody td:last-child {
    border-right: 0;
}

.bootstrap-table .fixed-table-container thead th:first-child,
.bootstrap-table .fixed-table-container tbody td:first-child {
    border-left: 0 !important;
}

.bootstrap-table .fixed-table-container tbody td,
.bootstrap-table .fixed-table-container tbody td > *,
.bootstrap-table .fixed-table-container tbody td .text-start,
.bootstrap-table .fixed-table-container tbody td .text-center,
.bootstrap-table .fixed-table-container tbody td .text-end,
.bootstrap-table .fixed-table-container tbody td .card-view {
    min-width: 0;
    max-width: 100%;
}

.bootstrap-table .fixed-table-body::-webkit-scrollbar {
    width: 14px;
    height: 12px;
}

.bootstrap-table .fixed-table-body::-webkit-scrollbar-thumb {
    background: rgba(255, 204, 0, 0.36);
    border-radius: 999px;
}

.bootstrap-table .fixed-table-body::-webkit-scrollbar-track {
    background: rgba(255, 204, 0, 0.10);
    border-radius: 999px;
}

.bootstrap-table .fixed-table-body::-webkit-scrollbar-thumb:hover {
    background: rgba(255, 204, 0, 0.52);
}

.bootstrap-table .fixed-table-body {
    scrollbar-width: auto;
    scrollbar-color: rgba(255, 204, 0, 0.42) rgba(255, 255, 255, 0.05);
}

.bootstrap-table .detail-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}

.bootstrap-table .detail-icon a,
.bootstrap-table .detail-icon .btn {
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    color: var(--ui-primary);
    transition: transform 0.18s ease, color 0.18s ease, background-color 0.18s ease;
}

.bootstrap-table .detail-icon a:hover,
.bootstrap-table .detail-icon .btn:hover {
    color: #111111;
    background: var(--ui-primary);
    transform: scale(1.04);
}

.bootstrap-table .fixed-table-body .no-records-found td,
.bootstrap-table .fixed-table-body .no-records-found .card-view {
    padding: 1.4rem 1rem;
    background: var(--ui-surface);
    color: var(--ui-text-muted);
    text-align: center;
    font-size: 0.92rem;
}

.bootstrap-table .card-views {
    width: 100%;
}

.bootstrap-table .card-view {
    padding: 0.72rem 0.85rem;
    border-bottom: 1px solid rgba(148, 163, 184, 0.12);
}

.bootstrap-table .card-view:last-child {
    border-bottom: 0;
}

.bootstrap-table .card-view .title {
    min-width: 0;
    font-size: 0.73rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--ui-text-soft);
}

.bootstrap-table .card-view .value {
    min-width: 0;
    color: var(--ui-text);
    overflow-wrap: break-word;
    word-break: normal;
}

.bootstrap-table .fixed-table-pagination {
    margin-top: 0.95rem;
}

.bootstrap-table .pagination-detail,
.bootstrap-table .pagination {
    align-items: center;
    font-size: 0.9rem;
    color: var(--ui-text-muted);
}

.bootstrap-table .pagination-detail {
    font-weight: 500;
}

.bootstrap-table .pagination {
    gap: 0.3rem;
}

.bootstrap-table .page-link,
.bootstrap-table .pagination .page-link {
    border-radius: 12px;
    border: 1px solid rgba(148, 163, 184, 0.16);
    color: var(--ui-text-muted);
    background: var(--ui-surface);
    box-shadow: none;
}

.bootstrap-table .page-item.active .page-link {
    background: var(--ui-primary);
    border-color: var(--ui-primary);
    color: #111111;
    font-weight: 700;
}

[id^="toolbar_"] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.65rem;
    width: 100%;
    max-width: 100%;
    padding: 0.35rem 0 1.15rem;
}

[id^="toolbar_"] > * {
    min-width: 0;
    max-width: 100%;
}

.bootstrap-table .fixed-table-toolbar {
    padding: 5px;
}

.bootstrap-table .fixed-table-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.7rem;
    flex-wrap: wrap;
}

.bootstrap-table .fixed-table-toolbar .columns,
.bootstrap-table .fixed-table-toolbar .search,
.bootstrap-table .fixed-table-toolbar .bs-bars {
    margin: 0;
}

.bootstrap-table .fixed-table-toolbar .bs-bars {
    order: 1;
    flex: 0 1 auto;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.bootstrap-table .fixed-table-toolbar .ui-toolbar-primary-inline {
    order: 0;
    display: flex;
    align-items: center;
    gap: 0.55rem;
    flex: 0 1 auto;
    min-width: 0;
    margin-left: auto;
}

.bootstrap-table .fixed-table-toolbar .search {
    order: 0;
    flex: 0 1 220px;
    width: clamp(190px, 22vw, 240px);
    min-width: 190px;
    max-width: 240px;
    margin-left: 0;
}

.bootstrap-table .fixed-table-toolbar .columns {
    order: 3;
    flex: 0 0 auto;
    margin-left: 0;
}

.bootstrap-table .fixed-table-toolbar .bs-bars .btn-group,
.bootstrap-table .fixed-table-toolbar .bs-bars > .btn-group-vertical,
.bootstrap-table .fixed-table-toolbar .bs-bars > div {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.65rem;
    justify-content: flex-start;
}

.bootstrap-table .fixed-table-toolbar #btn_nuevo {
    order: -10;
    background: linear-gradient(180deg, rgba(255, 204, 0, 0.98) 0%, rgba(255, 184, 0, 0.94) 100%);
    border-color: rgba(255, 204, 0, 0.45);
    color: #111111;
    font-weight: 800;
    box-shadow: 0 14px 26px rgba(255, 184, 0, 0.2);
}

.bootstrap-table .fixed-table-toolbar #btn_nuevo:hover,
.bootstrap-table .fixed-table-toolbar #btn_nuevo:focus {
    background: linear-gradient(180deg, rgba(255, 214, 64, 1) 0%, rgba(255, 193, 7, 0.96) 100%);
    border-color: rgba(255, 214, 64, 0.55);
    color: #111111;
}

.bootstrap-table .fixed-table-toolbar #btn_remove_all,
.bootstrap-table .fixed-table-toolbar #btn_estado_all {
    order: 20;
}


.bootstrap-table .fixed-table-toolbar #btn_remove_all:not(:disabled) {
    background: linear-gradient(180deg, rgba(220, 38, 38, 0.98) 0%, rgba(185, 28, 28, 0.96) 100%);
    border-color: rgba(248, 113, 113, 0.55);
    color: #ffffff;
}

.bootstrap-table .fixed-table-toolbar #btn_estado_all:not(:disabled) {
    background: linear-gradient(180deg, rgba(245, 158, 11, 0.98) 0%, rgba(217, 119, 6, 0.96) 100%);
    border-color: rgba(251, 191, 36, 0.56);
    color: #111111;
}

.bootstrap-table .fixed-table-toolbar #btn_remove_all:not(:disabled):hover,
.bootstrap-table .fixed-table-toolbar #btn_remove_all:not(:disabled):focus {
    background: linear-gradient(180deg, rgba(239, 68, 68, 1) 0%, rgba(220, 38, 38, 0.98) 100%);
    border-color: rgba(252, 165, 165, 0.62);
    color: #ffffff;
}

.bootstrap-table .fixed-table-toolbar #btn_estado_all:not(:disabled):hover,
.bootstrap-table .fixed-table-toolbar #btn_estado_all:not(:disabled):focus {
    background: linear-gradient(180deg, rgba(251, 191, 36, 0.98) 0%, rgba(245, 158, 11, 0.96) 100%);
    border-color: rgba(252, 211, 77, 0.62);
    color: #111111;
}

.bootstrap-table .fixed-table-toolbar .btn:disabled {
    opacity: 0.42;
    filter: grayscale(0.9) saturate(0.55);
    box-shadow: none;
    cursor: not-allowed;
}

.bootstrap-table .fixed-table-toolbar.toolbar-bulk-active .toolbar-bulk-button--active:not(:disabled) {
    opacity: 1 !important;
    filter: none !important;
    box-shadow: 0 12px 22px rgba(15, 23, 42, 0.2) !important;
}

.bootstrap-table .fixed-table-toolbar.toolbar-bulk-active #btn_remove_all.toolbar-bulk-button--active:not(:disabled) {
    background: linear-gradient(180deg, rgba(220, 38, 38, 0.98) 0%, rgba(185, 28, 28, 0.96) 100%) !important;
    border-color: rgba(248, 113, 113, 0.55) !important;
    color: #ffffff !important;
}

.bootstrap-table .fixed-table-toolbar.toolbar-bulk-active #btn_estado_all.toolbar-bulk-button--active:not(:disabled) {
    background: linear-gradient(180deg, rgba(245, 158, 11, 0.98) 0%, rgba(217, 119, 6, 0.96) 100%) !important;
    border-color: rgba(251, 191, 36, 0.56) !important;
    color: #111111 !important;
}

.bootstrap-table .fixed-table-toolbar.toolbar-bulk-idle .toolbar-bulk-button--idle:disabled {
    opacity: 0.34 !important;
    filter: grayscale(1) saturate(0.5) !important;
    background: rgba(148, 163, 184, 0.08) !important;
    border-color: rgba(148, 163, 184, 0.12) !important;
}

.bootstrap-table .fixed-table-toolbar .toolbar-bulk-button {
    transition: transform 0.2s ease, background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, opacity 0.2s ease, filter 0.2s ease, box-shadow 0.2s ease;
}

.bootstrap-table .fixed-table-toolbar .columns .btn {
    opacity: 0.92;
}

.bootstrap-table .fixed-table-toolbar .search input,
.bootstrap-table .fixed-table-toolbar .search .form-control {
    min-height: 40px;
    border-radius: 14px;
    border: 1px solid rgba(148, 163, 184, 0.16);
    background: var(--ui-surface);
    color: var(--ui-text);
    padding-inline: 0.9rem;
    box-shadow: none;
}

.bootstrap-table .fixed-table-toolbar .search input::placeholder,
.bootstrap-table .fixed-table-toolbar .search .form-control::placeholder {
    color: var(--ui-text-soft);
}

.bootstrap-table .fixed-table-toolbar .search input:focus,
.bootstrap-table .fixed-table-toolbar .search .form-control:focus {
    border-color: var(--ui-primary);
    box-shadow: 0 0 0 0.18rem var(--ui-accent-ring);
}

.bootstrap-table .fixed-table-toolbar .btn,
.bootstrap-table .fixed-table-pagination .btn,
.bootstrap-table .fixed-table-toolbar .btn-group > .btn,
.bootstrap-table .fixed-table-toolbar .columns .btn {
    min-height: 36px;
    border-radius: 11px;
    border: 1px solid rgba(148, 163, 184, 0.16);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.04) 0%, rgba(255, 255, 255, 0.02) 100%);
    color: var(--ui-text);
    font-weight: 600;
    padding: 0.42rem 0.72rem;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.12);
}

.bootstrap-table .fixed-table-toolbar .btn:hover,
.bootstrap-table .fixed-table-pagination .btn:hover,
.bootstrap-table .fixed-table-toolbar .columns .btn:hover {
    background: rgba(255, 204, 0, 0.12);
    border-color: rgba(255, 204, 0, 0.25);
    color: var(--ui-heading);
}

.bootstrap-table .fixed-table-toolbar .btn:focus,
.bootstrap-table .fixed-table-pagination .btn:focus,
.bootstrap-table .fixed-table-toolbar .columns .btn:focus {
    box-shadow: 0 0 0 0.18rem var(--ui-accent-ring);
}

@media (max-width: 768px) {
    .bootstrap-table .fixed-table-body tbody .ui-table-mobile-icon-only.ui-table-action-btn,
    .bootstrap-table .fixed-table-body tbody .ui-table-mobile-icon-only.ui-table-url-btn {
        width: 32px !important;
        min-width: 32px !important;
        max-width: 32px !important;
        height: 32px !important;
        min-height: 32px !important;
        padding: 0 !important;
        gap: 0 !important;
        justify-content: center !important;
        border-radius: 999px !important;
    }

    .bootstrap-table .fixed-table-body tbody .ui-table-mobile-icon-only .ui-table-action-label {
        display: none !important;
    }

    .bootstrap-table .fixed-table-body tbody .ui-table-mobile-icon-only i,
    .bootstrap-table .fixed-table-body tbody .ui-table-mobile-icon-only svg {
        margin: 0 !important;
    }

    .bootstrap-table .fixed-table-toolbar {
        justify-content: flex-start;
        align-items: center;
        gap: 0.24rem;
        flex-wrap: nowrap;
    }

    .bootstrap-table .fixed-table-toolbar .ui-toolbar-primary-inline,
    .bootstrap-table .fixed-table-toolbar .bs-bars,
    .bootstrap-table .fixed-table-toolbar .search,
    .bootstrap-table .fixed-table-toolbar .columns {
        flex: 0 1 auto;
        width: auto;
        min-width: 0;
        max-width: 100%;
        margin: 0 !important;
    }

    .bootstrap-table .fixed-table-toolbar .ui-toolbar-primary-inline {
        flex-wrap: wrap;
        gap: 0.3rem;
        overflow: visible;
    }

    .bootstrap-table .fixed-table-toolbar .bs-bars .btn-group,
    .bootstrap-table .fixed-table-toolbar .bs-bars > .btn-group-vertical,
    .bootstrap-table .fixed-table-toolbar .bs-bars > div,
    .bootstrap-table .fixed-table-toolbar .columns .btn-group,
    .bootstrap-table .fixed-table-toolbar .columns > .btn-group-vertical,
    .bootstrap-table .fixed-table-toolbar .columns > div {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        gap: 0.3rem;
        max-width: 100%;
    }

    .bootstrap-table .fixed-table-toolbar .search {
        position: relative;
        flex: 0 0 32px;
        width: 32px !important;
        min-width: 32px !important;
        max-width: 32px !important;
        height: 32px;
        min-height: 32px;
        overflow: hidden;
        border-radius: 999px;
        order: 99;
        transition: width 0.22s ease, max-width 0.22s ease, box-shadow 0.2s ease, border-color 0.2s ease;
    }

    .bootstrap-table .fixed-table-toolbar .search:focus-within {
        order: 100;
        width: clamp(150px, 42vw, 220px) !important;
        min-width: 150px !important;
        max-width: 100% !important;
        overflow: visible;
    }

    .bootstrap-table .fixed-table-toolbar .search input,
    .bootstrap-table .fixed-table-toolbar .search .form-control {
        position: absolute;
        inset: 0;
        opacity: 0;
        color: transparent !important;
        caret-color: transparent !important;
        padding: 0 !important;
        border: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
        pointer-events: auto;
    }

    .bootstrap-table .fixed-table-toolbar .search:focus-within input,
    .bootstrap-table .fixed-table-toolbar .search:focus-within .form-control,
    .bootstrap-table .fixed-table-toolbar .search input:focus,
    .bootstrap-table .fixed-table-toolbar .search .form-control:focus {
        position: relative;
        inset: auto;
        opacity: 1;
        color: var(--ui-text) !important;
        caret-color: var(--ui-text) !important;
        width: 100% !important;
        height: 32px;
        min-height: 32px;
        padding: 0.42rem 0.8rem 0.42rem 1.95rem !important;
        background: var(--ui-surface) !important;
        border: 1px solid rgba(148, 163, 184, 0.16) !important;
        border-radius: 999px;
        box-shadow: 0 0 0 0.18rem var(--ui-accent-ring) !important;
        outline: none;
    }

    .bootstrap-table .fixed-table-toolbar .search input::placeholder,
    .bootstrap-table .fixed-table-toolbar .search .form-control::placeholder {
        color: transparent !important;
    }

    .bootstrap-table .fixed-table-toolbar .search:focus-within input::placeholder,
    .bootstrap-table .fixed-table-toolbar .search:focus-within .form-control::placeholder {
        color: var(--ui-text-soft) !important;
    }

    .bootstrap-table .fixed-table-toolbar #btn_remove_all .toolbar-btn-label,
    .bootstrap-table .fixed-table-toolbar #btn_estado_all .toolbar-btn-label,
    .bootstrap-table .fixed-table-toolbar #btn_remove_all.toolbar-bulk-button .toolbar-btn-label,
    .bootstrap-table .fixed-table-toolbar #btn_estado_all.toolbar-bulk-button .toolbar-btn-label {
        display: none !important;
    }

    .bootstrap-table .fixed-table-toolbar #btn_remove_all,
    .bootstrap-table .fixed-table-toolbar #btn_estado_all {
        width: 32px !important;
        min-width: 32px !important;
        max-width: 32px !important;
        height: 32px !important;
        min-height: 32px !important;
        padding: 0 !important;
        gap: 0 !important;
        font-size: 0 !important;
        line-height: 1 !important;
        justify-content: center !important;
    }

    .bootstrap-table .fixed-table-toolbar #btn_remove_all i,
    .bootstrap-table .fixed-table-toolbar #btn_estado_all i {
        font-size: 0.92rem !important;
        line-height: 1 !important;
    }

    .bootstrap-table .fixed-table-toolbar #btn_remove_all:not(:disabled) {
        background: linear-gradient(180deg, rgba(220, 38, 38, 0.98) 0%, rgba(185, 28, 28, 0.96) 100%) !important;
        border-color: rgba(248, 113, 113, 0.5) !important;
        color: #ffffff !important;
    }

    .bootstrap-table .fixed-table-toolbar #btn_estado_all:not(:disabled) {
        background: linear-gradient(180deg, rgba(245, 158, 11, 0.98) 0%, rgba(217, 119, 6, 0.96) 100%) !important;
        border-color: rgba(251, 191, 36, 0.55) !important;
        color: #111111 !important;
    }
}


@media (min-width: 992px) {
    .bootstrap-table .fixed-table-container thead th .th-inner,
    .bootstrap-table .fixed-table-container thead th .th-inner.sortable,
    .bootstrap-table .fixed-table-container thead th .sortable {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        overflow-wrap: normal;
        word-break: normal;
        line-height: 1.05 !important;
    }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    .bootstrap-table .fixed-table-container thead th .th-inner {
        min-height: 34px !important;
        font-size: 0.60rem !important;
        letter-spacing: 0.045em !important;
        padding: 0.46rem 1.45rem 0.46rem 0.56rem !important;
    }
}

@media (min-width: 1200px) and (max-width: 1439.98px) {
    .bootstrap-table .fixed-table-container thead th .th-inner {
        min-height: 36px !important;
        font-size: 0.64rem !important;
        letter-spacing: 0.05em !important;
        padding: 0.52rem 1.55rem 0.52rem 0.62rem !important;
    }
}

@media (min-width: 1440px) and (max-width: 1919.98px) {
    .bootstrap-table .fixed-table-container thead th .th-inner {
        min-height: 38px !important;
        font-size: 0.67rem !important;
        letter-spacing: 0.055em !important;
        padding: 0.6rem 1.65rem 0.6rem 0.72rem !important;
    }
}

.bootstrap-table .fixed-table-toolbar .dropdown-menu {
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 16px;
    box-shadow: 0 18px 34px rgba(0, 0, 0, 0.28);
    padding: 0.45rem;
    background: var(--ui-surface);
}

.bootstrap-table .fixed-table-toolbar .dropdown-item {
    border-radius: 10px;
    padding: 0.45rem 0.7rem;
    color: var(--ui-text);
}


.bootstrap-table .fixed-table-toolbar .dropdown-item:hover {
    background: rgba(255, 204, 0, 0.1);
    color: var(--ui-heading);
}

.bootstrap-table .fixed-table-toolbar .keep-open .dropdown-toggle::after,
.bootstrap-table .fixed-table-toolbar .columns .dropdown-toggle::after {
    margin-left: 0.4rem;
}

.ui-module-header,
.facturas-header,
.estimaciones-header,
.ordenes-header {
    position: relative;
    overflow: hidden;
    margin: 0.4rem 0 1rem;
    padding: 1.15rem 1.15rem 1rem;
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 16px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.03) 0%, rgba(255, 255, 255, 0.015) 100%);
    box-shadow: var(--ui-shadow-soft);
}

.ui-module-header::before,
.facturas-header::before,
.estimaciones-header::before,
.ordenes-header::before {
    content: "";
    position: absolute;
    inset: 0 auto auto 0;
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, rgba(148, 163, 184, 0.75), rgba(255, 204, 0, 0.9));
}

.ui-module-header > *,
.facturas-header > *,
.estimaciones-header > *,
.ordenes-header > * {
    position: relative;
    z-index: 1;
}

.ui-module-kicker,
.module-kicker {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    max-width: 100%;
    flex: 0 0 auto;
    align-self: flex-start;
    gap: 0.35rem;
    margin-bottom: 0.45rem;
    padding: 0.25rem 0.65rem;
    border: 1px solid rgba(255, 204, 0, 0.18);
    border-radius: 999px;
    background: rgba(255, 204, 0, 0.08);
    color: var(--ui-primary);
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    white-space: nowrap;
}

.ui-module-title,
.facturas-title,
.estimaciones-title,
.ordenes-title {
    margin: 0;
    color: var(--ui-heading);
    font-size: clamp(1.08rem, 2.1vw, 1.55rem);
    font-weight: 800;
    letter-spacing: 0.02em;
}

.ui-module-subtitle,
.facturas-subtitle,
.estimaciones-subtitle,
.ordenes-subtitle {
    margin: 0.35rem 0 0;
    color: var(--ui-text-muted);
    font-size: 0.96rem;
}

.ui-module-toolbar,
.facturas-toolbar-wrap,
.estimaciones-toolbar-wrap,
.ordenes-toolbar-wrap {
    margin-bottom: 0.8rem;
    display: flex;
    justify-content: flex-end;
}

.ui-module-toolbar .btn,
.facturas-toolbar-wrap .btn,
.estimaciones-toolbar-wrap .btn,
.ordenes-toolbar-wrap .btn {
    border-radius: 0.65rem;
    font-weight: 600;
    box-shadow: 0 8px 16px rgba(15, 23, 42, 0.08);
}

.ui-module-panel,
.facturas-panel,
.ordenes-panel {
    position: relative;
     
    border-radius: 16px;
    
    box-shadow: var(--ui-shadow-soft);
}

.ui-module-panel--workspace,
.ordenes-panel--workspace {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.ui-table-url-btn {
    min-width: 96px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    padding: 0.34rem 0.6rem;
    border-radius: 0.8rem;
    border: 1px solid rgba(255, 204, 0, 0.22);
    background: rgba(255, 204, 0, 0.1);
    color: var(--ui-heading);
    font-weight: 700;
    white-space: nowrap;
    max-width: 100%;
    transition: transform 0.2s ease, background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}

.ui-table-url-btn:hover {
    background: rgba(255, 204, 0, 0.16);
    border-color: rgba(255, 204, 0, 0.3);
    color: #111111;
    transform: translateY(-1px);
    box-shadow: 0 8px 16px rgba(255, 204, 0, 0.08);
}

.ui-table-url-btn--icon {
    width: 36px;
    min-width: 36px;
    height: 36px;
    padding: 0;
    border-radius: 999px;
}

.ui-table-action-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.3rem;
    min-height: 36px;
    padding: 0.34rem 0.68rem;
    border-radius: 0.72rem;
    border: 1px solid rgba(148, 163, 184, 0.16);
    background: rgba(255, 255, 255, 0.03);
    color: var(--ui-text);
    min-width: max-content !important;
    line-height: 1;
    vertical-align: middle;
    white-space: nowrap;
    word-break: normal;
    overflow-wrap: normal;
    flex-wrap: nowrap;
    box-sizing: border-box;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
    transition: transform 0.2s ease, background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}

.ui-table-action-btn:hover {
    transform: translateY(-1px);
}

.ui-table-action-btn--primary {
    border-color: rgba(37, 99, 235, 0.22);
    background: rgba(37, 99, 235, 0.12);
    color: #bfd4ff;
}

.ui-table-action-btn--primary:hover {
    background: rgba(37, 99, 235, 0.18);
    color: #eaf2ff;
    box-shadow: 0 8px 16px rgba(37, 99, 235, 0.12);
}

.ui-table-action-btn--success {
    border-color: rgba(16, 185, 129, 0.22);
    background: rgba(16, 185, 129, 0.12);
    color: #a7f3d0;
}

.ui-table-action-btn--success:hover {
    background: rgba(16, 185, 129, 0.18);
    color: #d1fae5;
    box-shadow: 0 8px 16px rgba(16, 185, 129, 0.12);
}

.ui-table-action-btn--danger {
    border-color: rgba(239, 68, 68, 0.22);
    background: rgba(239, 68, 68, 0.12);
    color: #fecaca;
    font-weight: 700 !important;
}

.ui-table-action-btn--danger:hover {
    background: rgba(239, 68, 68, 0.18);
    color: #fee2e2;
    box-shadow: 0 8px 16px rgba(239, 68, 68, 0.12);
}

.ui-table-action-btn--neutral {
    border-color: rgba(148, 163, 184, 0.16);
    background: rgba(255, 255, 255, 0.03);
    color: var(--ui-text-muted);
}

.ui-table-action-btn--icon {
    width: 36px;
    min-width: 36px;
    height: 36px;
    padding: 0;
    border-radius: 999px;
}

.ui-table-action-btn--compact {
    min-width: 80px !important;
    min-height: 36px;
    padding: 0.3rem 0.58rem;
    gap: 0.25rem;
    border-radius: 0.72rem;
    font-size: 0.75rem;
    line-height: 1;
}

.ui-table-action-btn--compact i {
    font-size: 0.86rem;
    line-height: 1;
}

.ui-table-action-btn--compact span,
.ui-table-action-btn--compact:not(.ui-table-action-btn--icon) {
    font-weight: 700;
}

.ui-table-action-btn--compact.ui-table-action-btn--icon {
    width: 36px;
    min-width: 36px !important;
    height: 36px;
    padding: 0;
    border-radius: 999px;
}

.bootstrap-table .fixed-table-container tbody td .estado.ui-table-action-btn--compact {
    padding-inline: 0.62rem !important;
    border-radius: 999px !important;
    min-width: max-content !important;
}

.bootstrap-table .fixed-table-container tbody td .estado.ui-table-action-btn--compact {
    font-size: 0.72rem !important;
}

.bootstrap-table .fixed-table-container tbody td .ui-table-action-btn {
    white-space: nowrap;
    word-break: normal;
    overflow-wrap: normal;
}

.bootstrap-table .fixed-table-container tbody td .btn-primary,
.bootstrap-table .fixed-table-container tbody td .btn-success,
.bootstrap-table .fixed-table-container tbody td .btn-danger,
.bootstrap-table .fixed-table-container tbody td .btn-outline-primary,
.bootstrap-table .fixed-table-container tbody td .btn-outline-success,
.bootstrap-table .fixed-table-container tbody td .btn-outline-danger,
.bootstrap-table .fixed-table-container tbody td .btn-secondary,
.bootstrap-table .fixed-table-container tbody td .btn-light {
    max-width: 100%;
    white-space: nowrap;
    word-break: normal;
    overflow-wrap: normal;
}

.bootstrap-table .fixed-table-container tbody td .btn-outline-primary,
.bootstrap-table .fixed-table-container tbody td .btn-primary {
    border-color: rgba(37, 99, 235, 0.22);
}

.bootstrap-table .fixed-table-container tbody td .btn-outline-success,
.bootstrap-table .fixed-table-container tbody td .btn-success {
    border-color: rgba(16, 185, 129, 0.22);
}

.bootstrap-table .fixed-table-container tbody td .btn-danger,
.bootstrap-table .fixed-table-container tbody td .btn-outline-danger {
    border-color: rgba(239, 68, 68, 0.22);
}

.bootstrap-table .fixed-table-container tbody td .btn-light,
.bootstrap-table .fixed-table-container tbody td .btn-secondary {
    border-color: rgba(148, 163, 184, 0.16);
    background: rgba(255, 255, 255, 0.03);
    color: var(--ui-text);
}

.bootstrap-table .fixed-table-container tbody td .btn-light:hover,
.bootstrap-table .fixed-table-container tbody td .btn-secondary:hover,
.bootstrap-table .fixed-table-container tbody td .btn-outline-primary:hover,
.bootstrap-table .fixed-table-container tbody td .btn-outline-success:hover,
.bootstrap-table .fixed-table-container tbody td .btn-outline-danger:hover {
    background: rgba(255, 204, 0, 0.12);
    border-color: rgba(255, 204, 0, 0.24);
    color: var(--ui-heading);
}

.ui-table-fixed .fixed-table-container .fixed-table-header table,
.ui-table-fixed .fixed-table-container .fixed-table-body table,
.ui-table-fixed .fixed-table-container .fixed-table-footer table {
    table-layout: auto !important;
}

.ui-table-compact .fixed-table-container thead th {
    padding: 0 !important;
}

.ui-table-compact .fixed-table-container tbody td {
    padding: 0.42rem 0.46rem;
    font-size: 0.75rem;
}

.ui-table-compact .fixed-table-container .table thead th .th-inner {
    font-size: 0.69rem;
}

.ui-table-icon-btn {
    width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border-radius: 12px;
}

.ui-table-thumb {
    display: block;
    width: 100%;
    max-width: 100px;
    max-height: 56px;
    margin-inline: auto;
    object-fit: contain;
    border-radius: 10px;
    border: 1px solid rgba(148, 163, 184, 0.16);
    background: var(--ui-surface);
}

.ui-table-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    padding: 0.28rem 0.58rem;
    border-radius: 999px;
    border: 1px solid rgba(255, 204, 0, 0.22);
    background: rgba(255, 204, 0, 0.1);
    color: var(--ui-heading);
    font-size: 0.75rem;
    font-weight: 700;
    line-height: 1.2;
}

.badge-soft-danger {
    background-color: rgba(239, 68, 68, 0.12) !important;
    color: #f87171 !important;
    border: 1px solid rgba(239, 68, 68, 0.2) !important;
    font-weight: 600;
}

.badge-soft-success {
    background-color: rgba(16, 185, 129, 0.12) !important;
    color: #34d399 !important;
    border: 1px solid rgba(16, 185, 129, 0.2) !important;
    font-weight: 600;
}

.badge-soft-warning,
.badge-soft-due {
    background-color: rgba(255, 204, 0, 0.12) !important;
    color: var(--ui-primary) !important;
    border: 1px solid rgba(255, 204, 0, 0.18) !important;
    font-weight: 600;
}

.badge-soft-neutral {
    background-color: rgba(148, 163, 184, 0.14) !important;
    color: var(--ui-text-muted) !important;
    border: 1px solid rgba(148, 163, 184, 0.2) !important;
    font-weight: 600;
}

.ui-table-detail-panel {
    border-radius: 14px;
    background: linear-gradient(180deg, #24282d 0%, #202428 100%);
    padding: 0.8rem;
}

.ui-table-detail-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 0.7rem;
}

.ui-table-detail-item,
.gasto-detail-item {
    display: flex;
    flex-direction: row !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 0.75rem;
    padding: 0.55rem 0.65rem !important;
    border-radius: 10px;
    border: 1px solid rgba(148, 163, 184, 0.1);
    background: rgba(255, 255, 255, 0.015);
    text-align: left;
}

.ui-table-detail-item--full {
    grid-column: 1 / -1;
}

.ui-table-detail-item--statuscompact {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    justify-self: stretch;
    flex: 1 1 auto;
}

.ui-table-detail-label {
    font-size: 0.65rem !important;
    text-transform: uppercase;
    color: var(--ui-text-soft) !important;
    font-weight: 700;
    letter-spacing: 0.05em;
    margin-bottom: 0;
    text-align: left !important;
}
.ui-table-detail-text-wrapper,
.gasto-detail-text-wrapper {
    display: flex;
    flex-direction: column;
    align-items: flex-start !important; 
    gap: 2px;
    min-width: 0;
}
.ui-table-detail-value,
.gasto-detail-value {
    color: #ffffff;
    font-size: 0.92rem;
    font-weight: 500;
    word-break: break-word;
    white-space: normal !important; 
    text-align: left !important;
}

.gasto-detail-label-text {
    font-size: 0.65rem !important;
    text-transform: uppercase;
    color: var(--ui-text-soft) !important;
    font-weight: 700;
    letter-spacing: 0.05em;
    margin-bottom: 0;
    text-align: left !important;
}

.bootstrap-table .detail-view td {
    padding: 0 !important;
    background: linear-gradient(180deg, #24282d 0%, #202428 100%) !important;
    border-bottom: 1px solid var(--ui-border-strong) !important;
}



.table-dark-industrial th,
.table-dark-industrial td {
    vertical-align: middle !important;
}

.table-dark-industrial td {
    white-space: normal !important;
}

.fixed-table-container .table td.ui-table-col-operate {
    white-space: nowrap !important;
    overflow-x: auto;
}

.fixed-table-container .table td.ui-table-col-operate .ui-table-op-nowrap {
    display: inline-flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-start;
    gap: 0.35rem;
    white-space: nowrap;
}

.fixed-table-container .table td.ui-table-col-operate .ui-table-op-nowrap .btn,
.fixed-table-container .table td.ui-table-col-operate .ui-table-op-nowrap .ui-table-action-btn {
    flex: 0 0 auto;
}

.bootstrap-table .fixed-table-body {
    overflow-x: auto !important;
    scrollbar-width: 8px; 
}



.table-dark-industrial td {
    max-width: none;
    overflow: visible !important;
    text-overflow: clip !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
}



.table-dark-industrial {
    width: 100% !important;
    table-layout: auto !important; 
}



.bootstrap-table .fixed-table-container {
 
    overflow: visible !important;
    overflow: hidden !important; 
    border:1px solid rgb(255 255 255 / 25%);
    border-radius: 16px;
}

.bootstrap-table .fixed-table-container tbody td.factura-col-actions .btn-group,
.bootstrap-table .fixed-table-container tbody td.cotizacion-col-actions .btn-group,
.bootstrap-table .fixed-table-container tbody td.cotizacion-col-operations .btn-group,
.bootstrap-table .fixed-table-container tbody td.cambio-orden-col-operations .btn-group,
.bootstrap-table .fixed-table-container tbody td.cambio-orden-col-meta-actions .btn-group,
.bootstrap-table .fixed-table-container tbody td.gasto-col-operations .btn-group,
.bootstrap-table .fixed-table-container tbody td.gasto-col-operations-mobile .btn-group,
.bootstrap-table .fixed-table-container tbody td.factura-col-actions .btn-toolbar,
.bootstrap-table .fixed-table-container tbody td.cotizacion-col-actions .btn-toolbar,
.bootstrap-table .fixed-table-container tbody td.cotizacion-col-operations .btn-toolbar,
.bootstrap-table .fixed-table-container tbody td.cambio-orden-col-operations .btn-toolbar,
.bootstrap-table .fixed-table-container tbody td.cambio-orden-col-meta-actions .btn-toolbar,
.bootstrap-table .fixed-table-container tbody td.gasto-col-operations .btn-toolbar,
.bootstrap-table .fixed-table-container tbody td.gasto-col-operations-mobile .btn-toolbar,
.bootstrap-table .fixed-table-container tbody td.factura-col-actions .factura-estimado-actions-wrap,
.bootstrap-table .fixed-table-container tbody td.cotizacion-col-operations .factura-estimado-actions-wrap,
.bootstrap-table .fixed-table-container tbody td.cotizacion-col-actions .cotizacion-send-actions-wrap,
.bootstrap-table .fixed-table-container tbody td.cambio-orden-col-operations .cambio-orden-actions-wrap,
.bootstrap-table .fixed-table-container tbody td.cambio-orden-col-meta-actions .cambio-orden-actions-wrap,
.bootstrap-table .fixed-table-container tbody td.cambio-orden-col-meta-actions .cambio-orden-mobile-unified-actions,
.bootstrap-table .fixed-table-container tbody td.gasto-col-operations .cambio-orden-actions-wrap,
.bootstrap-table .fixed-table-container tbody td.gasto-col-operations-mobile .gasto-mobile-operation-buttons,
.bootstrap-table .fixed-table-container tbody td.gasto-col-operations-mobile .gasto-mobile-status-wrap {
    display: inline-flex !important;
    flex-wrap: nowrap !important;    
    width: 100% !important;
    max-width: none !important;
    overflow: visible !important;
    align-items: center !important;
    justify-content: center;
    margin-inline: auto !important;
}


.bootstrap-table .fixed-table-container thead th {
    vertical-align: middle !important;
}

.bootstrap-table .fixed-table-container thead th .th-inner {
display: block !important;
    width: 100%;
    
    
    white-space: normal !important; 
    
    
    
    overflow-wrap: anywhere !important; 
    word-break: break-word !important; 
    
    
    
    overflow: hidden !important; 
    text-overflow: clip !important;

    
    padding: 0.4rem 0.5rem !important; 
    line-height: 1.1 !important;
    text-align: center !important;
    min-height: 32px !important;
}

.bootstrap-table .fixed-table-container thead th .th-inner.sortable,
.bootstrap-table .fixed-table-container thead th .sortable {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    padding-right: 2.2rem !important;
    background-position: right 0.4rem center !important;
}




@media (min-width: 768px) {
    .bootstrap-table .fixed-table-container thead th.cotizacion-col-estimate-number,
    .bootstrap-table .fixed-table-container tbody td.cotizacion-col-estimate-number {
        min-width: 124px;
    }

    .bootstrap-table .fixed-table-container thead th.factura-col-number,
    .bootstrap-table .fixed-table-container tbody td.factura-col-number {
        min-width: 136px;
    }
}

@media (max-width: 767.98px) {
    .bootstrap-table .fixed-table-container thead th.cotizacion-col-estimate-number,
    .bootstrap-table .fixed-table-container tbody td.cotizacion-col-estimate-number {
        min-width: 102px;
    }

    .bootstrap-table .fixed-table-container thead th.factura-col-number,
    .bootstrap-table .fixed-table-container tbody td.factura-col-number {
        min-width: 110px;
    }
}

.bootstrap-table .fixed-table-container thead th.cotizacion-col-estimate-number .th-inner {
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
    hyphens: auto !important;
}

.bootstrap-table .fixed-table-container thead th.factura-col-number .th-inner {
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
    hyphens: auto !important;
}


.bootstrap-table .fixed-table-container thead th.factura-col-actions,
.bootstrap-table .fixed-table-container tbody td.factura-col-actions,
.bootstrap-table .fixed-table-container thead th.factura-col-meta-actions,
.bootstrap-table .fixed-table-container tbody td.factura-col-meta-actions,
.bootstrap-table .fixed-table-container thead th.cotizacion-col-operations,
.bootstrap-table .fixed-table-container tbody td.cotizacion-col-operations,
.bootstrap-table .fixed-table-container thead th.cambio-orden-col-operations,
.bootstrap-table .fixed-table-container tbody td.cambio-orden-col-operations,
.bootstrap-table .fixed-table-container thead th.gasto-col-operations,
.bootstrap-table .fixed-table-container tbody td.gasto-col-operations {
    text-align: center !important;
    white-space: nowrap !important;
    max-width: none !important;
    width: auto !important;
    padding-right: 15px !important;
}

.bootstrap-table .fixed-table-container thead th.factura-col-actions .th-inner,
.bootstrap-table .fixed-table-container thead th.factura-col-meta-actions .th-inner,
.bootstrap-table .fixed-table-container thead th.cotizacion-col-operations .th-inner,
.bootstrap-table .fixed-table-container thead th.cambio-orden-col-operations .th-inner,
.bootstrap-table .fixed-table-container thead th.gasto-col-operations .th-inner {
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
    min-width: 150px !important;
    width: 100% !important;
}

.bootstrap-table .fixed-table-container tbody td.factura-col-actions > *,
.bootstrap-table .fixed-table-container tbody td.factura-col-meta-actions > *,
.bootstrap-table .fixed-table-container tbody td.cotizacion-col-actions > *,
.bootstrap-table .fixed-table-container tbody td.cotizacion-col-operations > *,
.bootstrap-table .fixed-table-container tbody td.cambio-orden-col-operations > *,
.bootstrap-table .fixed-table-container tbody td.cambio-orden-col-meta-actions > *,
.bootstrap-table .fixed-table-container tbody td.gasto-col-operations > *,
.bootstrap-table .fixed-table-container tbody td.gasto-col-operations-mobile > * {
    max-width: none !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
}


.bootstrap-table .fixed-table-container .fixed-table-header table,
.bootstrap-table .fixed-table-container .fixed-table-body table,
.bootstrap-table .fixed-table-container .fixed-table-footer table,
.bootstrap-table .fixed-table-container .table {
    table-layout: auto !important;
    width: 100% !important;
    min-width: 100% !important;
}

.bootstrap-table .fixed-table-body {
    overflow-x: auto !important;
    overflow-y: hidden !important;
}

.bootstrap-table .fixed-table-container thead th .th-inner {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
}


@media (max-width: 768px) {
    
    .bootstrap-table,
    .bootstrap-table .fixed-table-toolbar,
    .bootstrap-table .fixed-table-container,
    .bootstrap-table .fixed-table-body,
    .bootstrap-table .fixed-table-pagination {
        max-width: 100vw;
    }

    .bootstrap-table .fixed-table-container {
        width: 100% !important;
    }

    .bootstrap-table .fixed-table-container .fixed-table-header table,
    .bootstrap-table .fixed-table-container .fixed-table-body table,
    .bootstrap-table .fixed-table-container .fixed-table-footer table,
    .bootstrap-table .fixed-table-container .table {
        table-layout: auto !important;
        width: 100% !important;
        min-width: 100% !important;
    }

    .bootstrap-table .fixed-table-body {
        overflow-x: auto !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch;
        max-height: clamp(320px, 68vh, 72vh);
       
    }

    .bootstrap-table .fixed-table-container .table thead th.detail,
    .bootstrap-table .fixed-table-container .table tbody > tr[data-index] > td:first-child {
      width: 26px !important;     
    min-width: 26px !important;
    padding: 0 !important;     
    text-align: center !important;
    }

  
    .bootstrap-table .fixed-table-container thead th {
        padding: 0 !important;
    }

    .bootstrap-table .fixed-table-container thead th .th-inner {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        white-space: normal !important;
        font-size: clamp(0.54rem, 1vw, 0.64rem) !important;
        padding: 3px 2px !important;
        min-height: 16px !important;
        text-transform: uppercase;
        letter-spacing: 0 !important;
        line-height: 1.2 !important;
        overflow: visible !important;
        text-overflow: clip !important;
        overflow-wrap: anywhere !important;
        word-break: break-word !important;
        writing-mode: horizontal-tb !important;
        text-orientation: mixed !important;
        transform: none !important;
    }

    .bootstrap-table .fixed-table-container thead th {
        min-height: 22px !important;
    }

    .bootstrap-table .fixed-table-container thead th .th-inner.sortable {
        padding-right: 1.4rem !important;
        background-position: right 2px center !important;
        background-size: 0.7rem auto !important;
    }

    .bootstrap-table .fixed-table-container thead th.cotizacion-col-select .th-inner,
    .bootstrap-table .fixed-table-container thead th.cotizacion-col-client .th-inner,
    .bootstrap-table .fixed-table-container thead th.cotizacion-col-actions .th-inner,
    .bootstrap-table .fixed-table-container thead th.gasto-col-select .th-inner,
    .bootstrap-table .fixed-table-container thead th.gasto-col-summary-mobile .th-inner,
    .bootstrap-table .fixed-table-container thead th.gasto-col-meta-mobile .th-inner {
        font-size: clamp(0.56rem, 1.9vw, 0.68rem) !important;
        justify-content: center !important;
        text-align: center !important;
        letter-spacing: 0.02em !important;
    }

    .bootstrap-table .fixed-table-container thead th.cotizacion-col-actions,
    .bootstrap-table .fixed-table-container tbody td.cotizacion-col-actions,
    .bootstrap-table .fixed-table-container thead th.cotizacion-col-operations,
    .bootstrap-table .fixed-table-container tbody td.cotizacion-col-operations {
        min-width: 96px !important;
    }

    .bootstrap-table .fixed-table-container thead th.cotizacion-col-actions .th-inner,
    .bootstrap-table .fixed-table-container thead th.cotizacion-col-operations .th-inner {
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: clip !important;
        line-height: 1.1 !important;
        justify-content: center !important;
        text-align: center !important;
        word-break: normal !important;
        overflow-wrap: break-word !important;
    }

    .bootstrap-table .fixed-table-container thead th.gasto-col-operations-mobile .th-inner {
        min-width: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        padding: 2px 4px !important;
        justify-content: center !important;
        overflow: visible !important;
        text-overflow: clip !important;
        white-space: normal !important;
        line-height: 1.1 !important;
        word-break: normal !important;
        overflow-wrap: break-word !important;
    }

    .bootstrap-table .fixed-table-container thead th.gasto-col-summary-mobile,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-summary-mobile {
        min-width: 220px !important;
    }

    .bootstrap-table .fixed-table-container thead th.gasto-col-operations-mobile,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations-mobile {
        width: auto !important;
        min-width: 128px !important;
        max-width: none !important;
        padding-left: 2px !important;
        padding-right: 2px !important;
        box-sizing: border-box;
    }

    
    .bootstrap-table .fixed-table-container tbody td {
        padding: 0.28rem 0.36rem !important;
        font-size: 0.7rem !important;
        min-height: 28px !important;
        height: auto !important;
        vertical-align: middle !important;
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: clip !important;
        word-break: break-word !important;
        overflow-wrap: anywhere !important;
    }

    .bootstrap-table .fixed-table-container tbody td > *,
    .bootstrap-table .fixed-table-container tbody td .text-start,
    .bootstrap-table .fixed-table-container tbody td .text-center,
    .bootstrap-table .fixed-table-container tbody td .text-end,
    .bootstrap-table .fixed-table-container tbody td .card-view,
    .bootstrap-table .fixed-table-container tbody td a,
    .bootstrap-table .fixed-table-container tbody td span,
    .bootstrap-table .fixed-table-container tbody td div {
        min-width: 0 !important;
        max-width: 100% !important;
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: clip !important;
        word-break: break-word !important;
        overflow-wrap: anywhere !important;
    }

    .bootstrap-table .fixed-table-container tbody td .btn {
        padding: 0.22rem 0.46rem !important;
        min-height: 26px;
        white-space: nowrap !important;
    }

    .bootstrap-table .fixed-table-container tbody td .estado,
    .bootstrap-table .fixed-table-container tbody td .estado.estado--mobile {
        width: auto !important;
        min-width: max-content !important;
        max-width: 100% !important;
        padding: 0.18rem 0.42rem !important;
        min-height: 26px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        white-space: nowrap !important;
        overflow: visible !important;
        text-overflow: clip !important;
        border-radius: 999px !important;
        font-size: 0.62rem !important;
        line-height: 1.05 !important;
    }

    .bootstrap-table .fixed-table-container tbody td.factura-col-actions .btn-group,
    .bootstrap-table .fixed-table-container tbody td.factura-col-meta-actions .btn-group,
    .bootstrap-table .fixed-table-container tbody td.cotizacion-col-actions .btn-group,
    .bootstrap-table .fixed-table-container tbody td.cotizacion-col-operations .btn-group,
    .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-operations .btn-group,
    .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-meta-actions .btn-group,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations .btn-group,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations-mobile .btn-group,
    .bootstrap-table .fixed-table-container tbody td.factura-col-actions .btn-toolbar,
    .bootstrap-table .fixed-table-container tbody td.factura-col-meta-actions .btn-toolbar,
    .bootstrap-table .fixed-table-container tbody td.cotizacion-col-actions .btn-toolbar,
    .bootstrap-table .fixed-table-container tbody td.cotizacion-col-operations .btn-toolbar,
    .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-operations .btn-toolbar,
    .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-meta-actions .btn-toolbar,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations .btn-toolbar,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations-mobile .btn-toolbar,
    .bootstrap-table .fixed-table-container tbody td.factura-col-actions .factura-estimado-actions-wrap,
    .bootstrap-table .fixed-table-container tbody td.factura-col-meta-actions .factura-estimado-actions-wrap,
    .bootstrap-table .fixed-table-container tbody td.cotizacion-col-operations .factura-estimado-actions-wrap,
    .bootstrap-table .fixed-table-container tbody td.cotizacion-col-actions .cotizacion-send-actions-wrap,
    .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-operations .cambio-orden-actions-wrap,
    .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-meta-actions .cambio-orden-actions-wrap,
    .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-meta-actions .cambio-orden-mobile-unified-actions,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations .cambio-orden-actions-wrap,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations-mobile .gasto-mobile-operation-buttons,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations-mobile .gasto-mobile-status-wrap {
        display: grid !important;
        grid-template-columns: repeat(2, max-content) !important;
        grid-auto-flow: row !important;
        gap: 0.22rem 0.28rem !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow: visible !important;
        align-items: center !important;
        justify-content: center !important;
        justify-items: center !important;
        margin-inline: auto !important;
    }

    .bootstrap-table .fixed-table-container tbody td.factura-col-actions .btn,
    .bootstrap-table .fixed-table-container tbody td.factura-col-meta-actions .btn,
    .bootstrap-table .fixed-table-container tbody td.cotizacion-col-actions .btn,
    .bootstrap-table .fixed-table-container tbody td.cotizacion-col-operations .btn,
    .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-operations .btn,
    .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-meta-actions .btn,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations .btn,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations-mobile .btn {
        justify-self: center !important;
        margin: 0 !important;
    }

    
    .bootstrap-table .fixed-table-container thead th.factura-col-actions .th-inner,
    .bootstrap-table .fixed-table-container thead th.factura-col-meta-actions .th-inner,
    .bootstrap-table .fixed-table-container thead th.cotizacion-col-operations .th-inner,
    .bootstrap-table .fixed-table-container thead th.cambio-orden-col-operations .th-inner,
    .bootstrap-table .fixed-table-container thead th.gasto-col-operations .th-inner {
        min-width: max-content !important;
        width: auto !important;
        max-width: none !important;
        padding: 2px 4px !important;
        justify-content: center !important;
        overflow: visible !important;
        text-overflow: clip !important;
    }

    .bootstrap-table .fixed-table-container thead th.factura-col-actions,
    .bootstrap-table .fixed-table-container tbody td.factura-col-actions,
    .bootstrap-table .fixed-table-container thead th.factura-col-meta-actions,
    .bootstrap-table .fixed-table-container tbody td.factura-col-meta-actions,
    .bootstrap-table .fixed-table-container thead th.cotizacion-col-operations,
    .bootstrap-table .fixed-table-container tbody td.cotizacion-col-operations,
    .bootstrap-table .fixed-table-container thead th.cambio-orden-col-operations,
    .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-operations,
    .bootstrap-table .fixed-table-container thead th.gasto-col-operations,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations {
        width: 1% !important;
        min-width: max-content !important;
        max-width: none !important;
        padding-left: 2px !important;
        padding-right: 2px !important;
        box-sizing: border-box;
    }

    .bootstrap-table .fixed-table-container tbody td.factura-col-actions,
    .bootstrap-table .fixed-table-container tbody td.factura-col-meta-actions,
    .bootstrap-table .fixed-table-container tbody td.cotizacion-col-actions,
    .bootstrap-table .fixed-table-container tbody td.cotizacion-col-operations,
    .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-operations,
    .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-meta-actions,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations-mobile {
        white-space: normal !important;
        text-align: center !important;
        vertical-align: middle !important;
    }

    .bootstrap-table .fixed-table-container tbody td.factura-col-actions .btn,
    .bootstrap-table .fixed-table-container tbody td.factura-col-meta-actions .btn,
    .bootstrap-table .fixed-table-container tbody td.cotizacion-col-operations .btn,
    .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-operations .btn,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations .btn,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations-mobile .btn {
        width: auto !important;
        min-width: max-content !important;
        height: auto !important;
        min-height: 28px !important;
        padding: 0.28rem 0.5rem !important;
        margin: 0 !important;
        border-radius: 7px !important;
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        font-size: 0.72rem !important;
        line-height: 1.05 !important;
        overflow: visible;
        white-space: nowrap !important;
    }

    .bootstrap-table .fixed-table-container tbody td.factura-col-actions .btn.ui-table-action-btn--icon,
    .bootstrap-table .fixed-table-container tbody td.factura-col-meta-actions .btn.ui-table-action-btn--icon,
    .bootstrap-table .fixed-table-container tbody td.cotizacion-col-operations .btn.ui-table-action-btn--icon,
    .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-operations .btn.ui-table-action-btn--icon,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations .btn.ui-table-action-btn--icon,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations-mobile .btn.ui-table-action-btn--icon,
    .bootstrap-table .fixed-table-container tbody td.factura-col-actions .btn.btn-movil-circular,
    .bootstrap-table .fixed-table-container tbody td.cotizacion-col-operations .btn.btn-movil-circular,
    .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-operations .btn.btn-movil-circular,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations .btn.btn-movil-circular,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations-mobile .btn.btn-movil-circular {
        width: 28px !important;
        min-width: 28px !important;
        height: 28px !important;
        min-height: 28px !important;
        padding: 0 !important;
        font-size: 0 !important;
        line-height: 0 !important;
        overflow: hidden;
    }

    .bootstrap-table .fixed-table-container tbody td.factura-col-actions .btn + .btn,
    .bootstrap-table .fixed-table-container tbody td.factura-col-meta-actions .btn + .btn,
    .bootstrap-table .fixed-table-container tbody td.cotizacion-col-operations .btn + .btn,
    .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-operations .btn + .btn,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations .btn + .btn,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations-mobile .btn + .btn {
        margin-left: 2px !important;
    }

    .bootstrap-table .fixed-table-container tbody td.factura-col-actions .btn i,
    .bootstrap-table .fixed-table-container tbody td.factura-col-meta-actions .btn i,
    .bootstrap-table .fixed-table-container tbody td.cotizacion-col-operations .btn i,
    .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-operations .btn i,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations .btn i,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations-mobile .btn i,
    .bootstrap-table .fixed-table-container tbody td.factura-col-actions .btn .bi,
    .bootstrap-table .fixed-table-container tbody td.factura-col-meta-actions .btn .bi,
    .bootstrap-table .fixed-table-container tbody td.cotizacion-col-operations .btn .bi,
    .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-operations .btn .bi,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations .btn .bi,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations-mobile .btn .bi,
    .bootstrap-table .fixed-table-container tbody td.factura-col-actions .btn .ri,
    .bootstrap-table .fixed-table-container tbody td.factura-col-meta-actions .btn .ri,
    .bootstrap-table .fixed-table-container tbody td.cotizacion-col-operations .btn .ri,
    .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-operations .btn .ri,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations .btn .ri,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations-mobile .btn .ri {
        font-size: 0.86rem !important;
        margin: 0 !important;
        line-height: 1 !important;
    }

    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations-mobile .estado,
    .bootstrap-table .fixed-table-container tbody td.gasto-col-operations-mobile .estado.estado--mobile {
        width: auto !important;
        min-width: max-content !important;
        max-width: none !important;
        padding: 0.18rem 0.42rem !important;
        min-height: 26px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        white-space: nowrap !important;
        overflow: visible !important;
        text-overflow: clip !important;
        border-radius: 999px !important;
        font-size: 0.62rem !important;
        line-height: 1.05 !important;
        font-weight: 700 !important;
    }

    
    [id^="toolbar_"] {
        display: flex;
        flex-wrap: nowrap !important;
        align-items: center;
        justify-content: flex-start;
        gap: 0.35rem;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        padding: 0.15rem 0 0.55rem;
    }

    [id^="toolbar_"]::-webkit-scrollbar {
        display: none;
    }

    [id^="toolbar_"] > * {
        flex: 0 1 auto;
        min-width: 0;
    }

    .bootstrap-table .fixed-table-toolbar {
        display: flex;
        flex-wrap: nowrap;
        align-items: center;
        justify-content: flex-start;
        gap: 0.24rem;
        overflow: visible;
    }

    .bootstrap-table .fixed-table-toolbar .columns,
    .bootstrap-table .fixed-table-toolbar .search,
    .bootstrap-table .fixed-table-toolbar .bs-bars {
        width: auto !important;
        min-width: 0 !important;
        max-width: 100%;
        margin: 0 !important;
    }

    .bootstrap-table .fixed-table-toolbar .ui-toolbar-primary-inline {
        display: flex;
        align-items: center;
        flex-wrap: nowrap;
        gap: 0.3rem;
        flex: 0 1 auto;
        min-width: 0;
        margin: 0 !important;
        overflow: visible;
    }

    .bootstrap-table .fixed-table-toolbar .bs-bars .btn-group,
    .bootstrap-table .fixed-table-toolbar .bs-bars > .btn-group-vertical,
    .bootstrap-table .fixed-table-toolbar .bs-bars > div,
    .bootstrap-table .fixed-table-toolbar .columns .btn-group,
    .bootstrap-table .fixed-table-toolbar .columns > .btn-group-vertical,
    .bootstrap-table .fixed-table-toolbar .columns > div {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        gap: 0.3rem;
        max-width: 100%;
    }

    .bootstrap-table .fixed-table-toolbar .search {
        position: relative;
        flex: 0 0 32px;
        width: 32px !important;
        min-width: 32px !important;
        max-width: 32px !important;
        height: 32px;
        min-height: 32px;
        overflow: hidden;
        border-radius: 999px;
        z-index: 10;
        order: 99;
        transition: width 0.22s ease, max-width 0.22s ease, border-color 0.2s ease, box-shadow 0.2s ease;
    }

    .bootstrap-table .fixed-table-toolbar .search:focus-within {
        order: 100;
        width: clamp(150px, 42vw, 220px) !important;
        min-width: 150px !important;
        max-width: 100% !important;
        overflow: visible;
    }

    .bootstrap-table .fixed-table-toolbar .search::before {
        content: "\F52A";
        font-family: bootstrap-icons;
        position: absolute;
        top: 50%;
        left: 0.72rem;
        transform: translateY(-50%);
        font-size: 0.9rem;
        color: var(--ui-text-muted);
        pointer-events: none;
        z-index: 2;
    }

    .bootstrap-table .fixed-table-toolbar .search input,
    .bootstrap-table .fixed-table-toolbar .search .form-control {
        position: absolute;
        inset: 0;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: 32px;
        min-height: 32px;
        padding: 0 !important;
        text-indent: 0 !important;
        color: transparent !important;
        caret-color: transparent !important;
        background: transparent !important;
        border: 0 !important;
        border-radius: 999px;
        cursor: text;
        box-shadow: none;
        font-size: 0.86rem;
        opacity: 0;
        pointer-events: auto;
    }

    .bootstrap-table .fixed-table-toolbar .search input::placeholder,
    .bootstrap-table .fixed-table-toolbar .search .form-control::placeholder {
        color: transparent !important;
    }

    .bootstrap-table .fixed-table-toolbar .search:focus-within input,
    .bootstrap-table .fixed-table-toolbar .search:focus-within .form-control,
    .bootstrap-table .fixed-table-toolbar .search input:focus,
    .bootstrap-table .fixed-table-toolbar .search .form-control:focus {
        position: relative;
        inset: auto;
        opacity: 1;
        width: 100% !important;
        min-height: 32px;
        height: 32px;
        padding: 0.42rem 0.8rem 0.42rem 1.95rem !important;
        background: var(--ui-surface) !important;
        border: 1px solid rgba(148, 163, 184, 0.16) !important;
        border-radius: 999px;
        border-color: var(--ui-primary) !important;
        box-shadow: 0 0 0 0.18rem var(--ui-accent-ring) !important;
        color: var(--ui-text) !important;
        caret-color: var(--ui-text) !important;
        outline: none;
    }

    .bootstrap-table .fixed-table-toolbar .search:focus-within input::placeholder,
    .bootstrap-table .fixed-table-toolbar .search:focus-within .form-control::placeholder {
        color: var(--ui-text-soft) !important;
    }

    .bootstrap-table .fixed-table-toolbar .btn,
    .bootstrap-table .fixed-table-toolbar .btn-group > .btn,
    .bootstrap-table .fixed-table-toolbar .columns .btn {
        width: auto !important;
        min-width: max-content;
        height: 32px;
        min-height: 32px;
        padding: 0.24rem 0.55rem !important;
        border-radius: 10px;
        font-size: 0.72rem !important;
        line-height: 1.05 !important;
        font-weight: 600;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 0.25rem;
        overflow: hidden;
        white-space: nowrap;
    }

    .bootstrap-table .fixed-table-toolbar .btn i,
    .bootstrap-table .fixed-table-toolbar .btn .bi,
    .bootstrap-table .fixed-table-toolbar .btn .ri {
        font-size: 0.88rem !important;
        margin: 0 !important;
        line-height: 1;
    }

    .bootstrap-table .fixed-table-toolbar .btn .caret,
    .bootstrap-table .fixed-table-toolbar .btn::after {
        font-size: 0.7rem !important;
        margin-left: 0 !important;
    }

    .bootstrap-table .fixed-table-toolbar .toolbar-bulk-button {
        justify-content: center;
    }

    .bootstrap-table .fixed-table-toolbar #btn_remove_all,
    .bootstrap-table .fixed-table-toolbar #btn_estado_all {
        width: 32px !important;
        min-width: 32px !important;
        max-width: 32px !important;
        height: 32px !important;
        min-height: 32px !important;
        padding: 0 !important;
        gap: 0 !important;
        font-size: 0 !important;
        line-height: 1 !important;
        justify-content: center !important;
    }

    .bootstrap-table .fixed-table-toolbar #btn_remove_all .toolbar-btn-label,
    .bootstrap-table .fixed-table-toolbar #btn_estado_all .toolbar-btn-label,
    .bootstrap-table .fixed-table-toolbar #btn_remove_all.toolbar-bulk-button .toolbar-btn-label,
    .bootstrap-table .fixed-table-toolbar #btn_estado_all.toolbar-bulk-button .toolbar-btn-label {
        display: none !important;
    }

    .bootstrap-table .fixed-table-toolbar #btn_remove_all i,
    .bootstrap-table .fixed-table-toolbar #btn_estado_all i {
        font-size: 0.9rem !important;
        line-height: 1 !important;
    }

    
    .ui-table-detail-panel {
        padding: 1rem !important;
        background: rgba(0, 0, 0, 0.1) !important;
    }

    .ui-table-detail-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    .ui-table-detail-item,
    .gasto-detail-item {
        flex-direction: row !important;
        align-items: flex-start !important;
        padding: 0.55rem 0.65rem !important;
    }
.bootstrap-table .detail-icon a,
.bootstrap-table .detail-icon .btn {
    width: 22px !important;     
    height: 22px !important;
    font-size: 10px !important; 
    line-height: 22px !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
}


.bootstrap-table .detail-icon {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
}
}

@media (max-width: 768px) {
    .bootstrap-table .fixed-table-container tbody td {
        font-size: 0.66rem !important;
        line-height: 1.08 !important;
    }

    .bootstrap-table .fixed-table-container tbody td > *,
    .bootstrap-table .fixed-table-container tbody td .text-start,
    .bootstrap-table .fixed-table-container tbody td .text-center,
    .bootstrap-table .fixed-table-container tbody td .text-end,
    .bootstrap-table .fixed-table-container tbody td .card-view,
    .bootstrap-table .fixed-table-container tbody td a:not(.btn),
    .bootstrap-table .fixed-table-container tbody td span:not(.badge):not(.estado),
    .bootstrap-table .fixed-table-container tbody td div:not(.btn-group):not(.dropdown-menu) {
        font-size: 0.66rem   !important;
        line-height: inherit !important;
    }

    #table_estimaciones + .bootstrap-table .fixed-table-container tbody td,
    #table_facturas + .bootstrap-table .fixed-table-container tbody td,
    #table_cambio_ordenes + .bootstrap-table .fixed-table-container tbody td {
        font-size: 0.64rem !important;
        line-height: 1.06 !important;
    }

    #table_estimaciones + .bootstrap-table .fixed-table-container tbody td .btn,
    #table_facturas + .bootstrap-table .fixed-table-container tbody td .btn,
    #table_cambio_ordenes + .bootstrap-table .fixed-table-container tbody td .btn,
    #table_estimaciones + .bootstrap-table .fixed-table-container tbody td .estado,
    #table_facturas + .bootstrap-table .fixed-table-container tbody td .estado,
    #table_cambio_ordenes + .bootstrap-table .fixed-table-container tbody td .estado {
        font-size: 0.62rem !important;
    }
}




/* Keep bootstrap-table native responsive behavior.
   Avoid forcing fixed/auto layouts and header truncation per breakpoint. */

#table_facturas + .bootstrap-table .fixed-table-container tbody td.factura-col-actions,
#table_facturas + .bootstrap-table .fixed-table-container tbody td.factura-col-meta-actions,
#table_estimaciones + .bootstrap-table .fixed-table-container tbody td.cotizacion-col-actions,
#table_estimaciones + .bootstrap-table .fixed-table-container tbody td.cotizacion-col-operations,
#table_estimaciones + .bootstrap-table .fixed-table-container tbody td.cotizacion-col-send,
#table_cambio_ordenes + .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-operations,
#table_cambio_ordenes + .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-meta-actions,
#table_gastos + .bootstrap-table .fixed-table-container tbody td.gasto-col-operations,
#table_gastos + .bootstrap-table .fixed-table-container tbody td.gasto-col-operations-mobile {
    text-align: center !important;
    vertical-align: middle !important;
}

#table_facturas + .bootstrap-table .fixed-table-container tbody td.factura-col-actions > *,
#table_facturas + .bootstrap-table .fixed-table-container tbody td.factura-col-meta-actions > *,
#table_estimaciones + .bootstrap-table .fixed-table-container tbody td.cotizacion-col-actions > *,
#table_estimaciones + .bootstrap-table .fixed-table-container tbody td.cotizacion-col-operations > *,
#table_estimaciones + .bootstrap-table .fixed-table-container tbody td.cotizacion-col-send > *,
#table_cambio_ordenes + .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-operations > *,
#table_cambio_ordenes + .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-meta-actions > *,
#table_gastos + .bootstrap-table .fixed-table-container tbody td.gasto-col-operations > *,
#table_gastos + .bootstrap-table .fixed-table-container tbody td.gasto-col-operations-mobile > *,
#table_facturas + .bootstrap-table .fixed-table-container tbody td .btn-group,
#table_facturas + .bootstrap-table .fixed-table-container tbody td .btn-toolbar,
#table_estimaciones + .bootstrap-table .fixed-table-container tbody td .btn-group,
#table_estimaciones + .bootstrap-table .fixed-table-container tbody td .btn-toolbar,
#table_cambio_ordenes + .bootstrap-table .fixed-table-container tbody td .btn-group,
#table_cambio_ordenes + .bootstrap-table .fixed-table-container tbody td .btn-toolbar,
#table_gastos + .bootstrap-table .fixed-table-container tbody td .btn-group,
#table_gastos + .bootstrap-table .fixed-table-container tbody td .btn-toolbar,
#table_facturas + .bootstrap-table .fixed-table-container tbody td .factura-estimado-actions-wrap,
#table_estimaciones + .bootstrap-table .fixed-table-container tbody td .cotizacion-send-actions-wrap,
#table_cambio_ordenes + .bootstrap-table .fixed-table-container tbody td .cambio-orden-actions-wrap,
#table_cambio_ordenes + .bootstrap-table .fixed-table-container tbody td .cambio-orden-mobile-unified-actions,
#table_gastos + .bootstrap-table .fixed-table-container tbody td .gasto-mobile-operation-buttons {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.32rem !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-inline: auto !important;
    flex-wrap: nowrap !important;
}

#table_facturas + .bootstrap-table .fixed-table-container tbody td .btn,
#table_estimaciones + .bootstrap-table .fixed-table-container tbody td .btn,
#table_cambio_ordenes + .bootstrap-table .fixed-table-container tbody td .btn,
#table_gastos + .bootstrap-table .fixed-table-container tbody td .btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

#table_cambio_ordenes + .bootstrap-table .fixed-table-container tbody td {
    vertical-align: middle !important; /* Override global 'top' alignment */
}

@media (min-width: 769px) {
    #table_cambio_ordenes + .bootstrap-table .fixed-table-container tbody td {
        font-size: 0.80rem !important; /* Compact font for desktop */
        padding-top: 0.5rem !important;
        padding-bottom: 0.5rem !important;
    }
}

#table_cambio_ordenes + .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-url,
#table_cambio_ordenes + .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-acceptance,
#table_cambio_ordenes + .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-status,
#table_cambio_ordenes + .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-actions,
#table_cambio_ordenes + .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-operations,
#table_cambio_ordenes + .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-meta-actions {
    text-align: center !important;
}

#table_cambio_ordenes + .bootstrap-table .fixed-table-container tbody td .ui-cell-content-wrapper {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .35rem;
}

@media (max-width: 768px) {
    #table_cambio_ordenes + .bootstrap-table .fixed-table-container tbody td.cambio-orden-col-meta-actions .cambio-orden-mobile-unified-column {
        display: flex;
        flex-direction: column; 
        align-items: center;
        justify-content: center;
        gap: 8px; 
        width: 100%; 
    }
}

@media (min-width: 992px) {
    #web-cotizaciones-root #table_items + .bootstrap-table .fixed-table-container .fixed-table-header table,
    #web-cotizaciones-root #table_items + .bootstrap-table .fixed-table-container .fixed-table-body table,
    #web-cotizaciones-root #table_items + .bootstrap-table .fixed-table-container .table {
        table-layout: auto !important;
        width: auto !important;
        min-width: 100% !important;
    }

    #web-cotizaciones-root #table_items + .bootstrap-table .fixed-table-container thead th.cotizacion-col-operations,
    #web-cotizaciones-root #table_items + .bootstrap-table .fixed-table-container tbody td.cotizacion-col-operations,
    #web-cotizaciones-root #table_items + .bootstrap-table .fixed-table-container thead th[data-field="acciones_secundarias"],
    #web-cotizaciones-root #table_items + .bootstrap-table .fixed-table-container tbody td[data-field="acciones_secundarias"] {
        width: 1% !important;
        min-width: 0 !important;
        max-width: fit-content !important;
        padding-left: 0.2rem !important;
        padding-right: 0.2rem !important;
        white-space: nowrap !important;
    }

    #web-cotizaciones-root #table_items + .bootstrap-table .fixed-table-container thead th.cotizacion-col-operations .th-inner,
    #web-cotizaciones-root #table_items + .bootstrap-table .fixed-table-container thead th[data-field="acciones_secundarias"] .th-inner {
        min-width: 0 !important;
        width: auto !important;
        max-width: none !important;
        padding-right: 0.2rem !important;
    }
}

/* ------------------------------------------------------------------
   Responsive Layout Guardrails (do not override bootstrap-table core)
   ------------------------------------------------------------------ */
.bootstrap-table .fixed-table-container .fixed-table-header table,
.bootstrap-table .fixed-table-container .fixed-table-body table,
.bootstrap-table .fixed-table-container .fixed-table-footer table,
.bootstrap-table .fixed-table-container .table {
    table-layout: auto !important;
    width: max-content !important;
    min-width: 100% !important;
}

.bootstrap-table .fixed-table-container {
    overflow: hidden !important;
}

.bootstrap-table .fixed-table-body {
    overflow-x: auto !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
}

.bootstrap-table .fixed-table-container thead th .th-inner,
.bootstrap-table .fixed-table-container thead th .th-inner.sortable,
.bootstrap-table .fixed-table-container thead th .sortable {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
    transform: none !important;
}

.bootstrap-table .fixed-table-container tbody td,
.bootstrap-table .fixed-table-container tbody td > * {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
}

/* Keep compact behavior only where we explicitly need one-line action buttons */
.bootstrap-table .fixed-table-container tbody td.ui-table-col-operate,
.bootstrap-table .fixed-table-container tbody td.ui-table-col-operate .ui-table-op-nowrap,
.bootstrap-table .fixed-table-container tbody td.ui-table-col-operate .ui-table-op-nowrap .btn,
.bootstrap-table .fixed-table-container tbody td.ui-table-col-operate .ui-table-op-nowrap .ui-table-action-btn {
    white-space: nowrap !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
}

/* Global normalization across all views:
   keep headers horizontal/compact and reserve nowrap only for action columns. */
.bootstrap-table .fixed-table-container thead th:not(.factura-col-actions):not(.factura-col-meta-actions):not(.cotizacion-col-actions):not(.cotizacion-col-operations):not(.cambio-orden-col-operations):not(.cambio-orden-col-meta-actions):not(.gasto-col-operations):not(.gasto-col-operations-mobile) .th-inner,
.bootstrap-table .fixed-table-container thead th:not(.factura-col-actions):not(.factura-col-meta-actions):not(.cotizacion-col-actions):not(.cotizacion-col-operations):not(.cambio-orden-col-operations):not(.cambio-orden-col-meta-actions):not(.gasto-col-operations):not(.gasto-col-operations-mobile) .th-inner.sortable,
.bootstrap-table .fixed-table-container thead th:not(.factura-col-actions):not(.factura-col-meta-actions):not(.cotizacion-col-actions):not(.cotizacion-col-operations):not(.cambio-orden-col-operations):not(.cambio-orden-col-meta-actions):not(.gasto-col-operations):not(.gasto-col-operations-mobile) .sortable {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
    transform: none !important;
    line-height: 1.2 !important;
}

.bootstrap-table .fixed-table-container tbody td:not(.ui-table-col-operate):not(.factura-col-actions):not(.factura-col-meta-actions):not(.cotizacion-col-actions):not(.cotizacion-col-operations):not(.cambio-orden-col-operations):not(.cambio-orden-col-meta-actions):not(.gasto-col-operations):not(.gasto-col-operations-mobile),
.bootstrap-table .fixed-table-container tbody td:not(.ui-table-col-operate):not(.factura-col-actions):not(.factura-col-meta-actions):not(.cotizacion-col-actions):not(.cotizacion-col-operations):not(.cambio-orden-col-operations):not(.cambio-orden-col-meta-actions):not(.gasto-col-operations):not(.gasto-col-operations-mobile) > * {
    white-space: nowrap !important;
    overflow: hidden !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
}

/* ------------------------------------------------------------------
   Table Visual Polish
   ------------------------------------------------------------------ */


.bootstrap-table .fixed-table-container .fixed-table-header {
    overflow: hidden;
    border-radius: 16px 16px 0 0;
    background: transparent !important;
    position: relative;
    z-index: 2;
}

.bootstrap-table .fixed-table-container .fixed-table-header::before {
    content: "";
    position: absolute;
    inset: -1.5px -1.5px 0 -1.5px;
    box-sizing: border-box;
    border: 1.5px solid rgba(255, 204, 0, 0.42);
    border-bottom: 0;
    border-radius: 16px 16px 0 0;
    pointer-events: none;
    z-index: 3;
}

.bootstrap-table .fixed-table-container thead th {
    border-bottom: 1px solid rgba(125, 146, 172, 0.42) !important;
    border-right: 1px solid rgba(125, 146, 172, 0.22) !important;
    border-top: 0 !important;
    box-shadow: none !important;
    background: linear-gradient(180deg, rgba(33, 35, 38, 0.98) 0%, rgba(46, 51, 58, 0.99) 100%) !important;
    color: rgba(241, 245, 249, 0.96) !important;
    background-clip: padding-box;
}

.bootstrap-table .fixed-table-container thead th:not(.detail)::before {
    display: none !important;
}

.bootstrap-table .fixed-table-container thead th:hover {
    background: linear-gradient(180deg, rgba(25, 27, 30, 0.99) 0%, rgba(52, 58, 66, 0.99) 100%) !important;
    color: rgba(255, 255, 255, 0.98) !important;
}

.bootstrap-table .fixed-table-container thead th:first-child {
    border-top-left-radius: 16px;
    border-left: 0 !important;
}

.bootstrap-table .fixed-table-container thead th:last-child {
    border-top-right-radius: 16px;
    border-right: 0 !important;
}

.bootstrap-table .fixed-table-container tbody td,
.bootstrap-table .fixed-table-container tfoot td {
    border-bottom: 1px solid rgba(241, 245, 249, 0.16) !important;
    border-right: 1px solid rgba(241, 245, 249, 0.12) !important;
    background: rgba(18, 20, 23, 0.98) !important;
}

.bootstrap-table .fixed-table-container tbody tr:nth-child(even) td {
    background: rgba(24, 27, 31, 0.98) !important;
}

.bootstrap-table .fixed-table-container tbody tr:hover td {
    background: linear-gradient(180deg, rgba(33, 35, 40, 0.86) 0%, rgba(45, 50, 57, 0.24) 100%) !important;
}

.bootstrap-table .fixed-table-container thead th:last-child,
.bootstrap-table .fixed-table-container tbody td:last-child,
.bootstrap-table .fixed-table-container tfoot td:last-child {
    border-right: 0 !important;
}

.bootstrap-table .fixed-table-container tbody tr:last-child td,
.bootstrap-table .fixed-table-container tfoot tr:last-child td {
    border-bottom-color: rgba(241, 245, 249, 0.18) !important;
}

/*!*****************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/vistas.css ***!
  \*****************************************************************************************************************/

.whatsapp-container {
    position: fixed;
    bottom: 20px;
    right: 15px;
    background-color: #25D366; 
    padding: 10px;
    border-radius: 5px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    z-index: 2; 
}


.telegram-container {
    position: fixed;
    bottom: 65px; 
    right: 16px;
    background-color: #0088cc; 
    padding: 12px;
    border-radius: 5px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    z-index: 1; 
}


.whatsapp-link, .telegram-link {
    text-decoration: none;
    color: #fff; 
    display: flex;
    align-items: center;
}


.whatsapp-icon, .telegram-icon {
    font-size: 24px; 
    margin-right: 10px;
    Color:#fff;
}


.whatsapp-text, .telegram-text {
    font-size:14px;
}

.whatsapp-text{
    color:#fff !important;
}


input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}


input[type="number"] {
    -moz-appearance: textfield;
}


.empresa {
    font-family: 'Bradley Hand ITC', cursive;
    font-size: 25px;
}

.idIngredientes {
    text-align: center;
    font-family: 'Roboto  Thin', cursive;
    font-size: 25px;
}

.idContenido {
    text-align: center;
    font-family: 'arial  Thin', cursive;
    font-size: 20px;

}

.bannerItem {
    display: block;
    width: 100%;
    height: 500px;
}
.bannerItem img {
    height: 100%;
    width: 100%;
}

.img-normalizada{
    width: 350px;
    height: 280px;
    border-radius: 10px;
    object-fit: cover;
}

.idPrecio {
    text-align: center;
    font-family: 'arial  Thin', cursive;
    font-size: 35px;
    animation: blink 1.5s infinite;
}









/*!**************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/app.css ***!
  \**************************************************************************************************************/




/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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QUMvL0VBO0lBQ0ksZUFBZTtJQUNmLFlBQVk7SUFDWixXQUFXO0lBQ1gseUJBQXlCO0lBQ3pCLGFBQWE7SUFDYixrQkFBa0I7SUFDbEIsdUNBQXVDO0lBQ3ZDLFVBQVU7QUFDZDs7O0FBR0E7SUFDSSxlQUFlO0lBQ2YsWUFBWTtJQUNaLFdBQVc7SUFDWCx5QkFBeUI7SUFDekIsYUFBYTtJQUNiLGtCQUFrQjtJQUNsQix1Q0FBdUM7SUFDdkMsVUFBVTtBQUNkOzs7QUFHQTtJQUNJLHFCQUFxQjtJQUNyQixXQUFXO0lBQ1gsYUFBYTtJQUNiLG1CQUFtQjtBQUN2Qjs7O0FBR0E7SUFDSSxlQUFlO0lBQ2Ysa0JBQWtCO0lBQ2xCLFVBQVU7QUFDZDs7O0FBR0E7SUFDSSxjQUFjO0FBQ2xCOztBQUVBO0lBQ0kscUJBQXFCO0FBQ3pCOzs7QUFHQTs7SUFFSSx3QkFBd0I7SUFDeEIsU0FBUztBQUNiOzs7QUFHQTtJQUNJLDBCQUEwQjtBQUM5Qjs7O0FBR0E7SUFDSSx3Q0FBd0M7SUFDeEMsZUFBZTtBQUNuQjs7QUFFQTtJQUNJLGtCQUFrQjtJQUNsQixvQ0FBb0M7SUFDcEMsZUFBZTtBQUNuQjs7QUFFQTtJQUNJLGtCQUFrQjtJQUNsQixtQ0FBbUM7SUFDbkMsZUFBZTs7QUFFbkI7O0FBRUE7SUFDSSxjQUFjO0lBQ2QsV0FBVztJQUNYLGFBQWE7QUFDakI7QUFDQTtJQUNJLFlBQVk7SUFDWixXQUFXO0FBQ2Y7O0FBRUE7SUFDSSxZQUFZO0lBQ1osYUFBYTtJQUNiLG1CQUFtQjtJQUNuQixpQkFBaUI7QUFDckI7O0FBRUE7SUFDSSxrQkFBa0I7SUFDbEIsbUNBQW1DO0lBQ25DLGVBQWU7SUFDZiw4QkFBOEI7QUFDbEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL3N0eWxlLmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL3RhYmxlcy5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy92aXN0YXMuY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIlxuXG5cbiN1aS1pZC0xIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbjpyb290IHtcbiAgICAtLXNpZGViYXItd2lkdGg6IDI2MHB4OyBcbiAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgICBjb2xvci1zY2hlbWU6IGRhcms7XG4gICAgLS11aS1iZzogIzEyMTQxNzsgXG4gICAgLS11aS1iZy1nbG93OiB0cmFuc3BhcmVudDsgXG4gICAgLS11aS1zdXJmYWNlOiAjMWUyMTI1OyBcbiAgICAtLXVpLXN1cmZhY2UtbXV0ZWQ6ICMyZDMyMzk7XG4gICAgLS11aS1zdXJmYWNlLXN1YnRsZTogIzNmNDU0ZDtcbiBcbiAgICAtLXVpLWJvcmRlcjogIzJkMzIzOTtcbiAgICAtLXVpLWJvcmRlci1zdHJvbmc6ICMzZjQ1NGQ7XG4gICAgXG4gICAgLS11aS10ZXh0OiAjZTJlOGYwOyBcbiAgICAtLXVpLXRleHQtbXV0ZWQ6ICM5NGEzYjg7IFxuICAgIC0tdWktdGV4dC1tdXRlZC1zdHJvbmc6ICMzMjM5NDQ7IFxuICAgIC0tdWktdGV4dC1zb2Z0OiAjNjQ3NDhiO1xuICAgIC0tdWktaGVhZGluZzogI2ZmZmZmZjsgXG4gICAgXG4gICBcbiAgICAtLXVpLXByaW1hcnk6ICNGRkNDMDA7IFxuICAgIC0tdWktcHJpbWFyeS1ob3ZlcjogI0U2QjgwMDtcbiAgICBcbiAgICAtLXVpLWFjY2VudDogIzNmNDU0ZDtcbiAgICAtLXVpLWFjY2VudC1zb2Z0OiByZ2JhKDI1NSwgMjA0LCAwLCAwLjEyKTsgXG4gICAgLS11aS1hY2NlbnQtcmluZzogcmdiYSgyNTUsIDIwNCwgMCwgMC4zKTtcbiAgICBcbiAgICBcbiAgICAtLXVpLXN1Y2Nlc3M6ICMxMEI5ODE7IFxuICAgIC0tdWktd2FybmluZzogI0UwNTYyNDsgXG4gICAgLS11aS1kYW5nZXI6ICAjRUY0NDQ0OyBcbiAgICAtLXVpLWluZm86ICAgICMwRUE1RTk7IFxuICAgIFxuIFxuICAgIC0tdWktbmF2LWJnOiAjMGEwYjBkOyBcbiAgICAtLXVpLW5hdi1zdXJmYWNlOiAjMTUxNzFhOyBcbiAgICAtLXVpLW5hdi1zdXJmYWNlLWhvdmVyOiAjMWUyMTI1O1xuICAgIC0tdWktbmF2LWJvcmRlcjogIzFhMWMyMDsgXG4gICAgLS11aS1uYXYtdGV4dDogI2ZmZmZmZjsgXG4gICAgLS11aS1uYXYtdGV4dC1tdXRlZDogI2EzYTNhMzsgXG4gICAgXG4gIFxuICAgIC0tdWktc2hhZG93LXNvZnQ6IDAgMTJweCAzMnB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgICAtLXVpLXNoYWRvdy1tZDogMCAxNnB4IDQwcHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgIC0tdWktcmFkaXVzLXNtOiA4cHg7XG4gICAgLS11aS1yYWRpdXMtbWQ6IDEycHg7XG4gICAgLS11aS1yYWRpdXMtbGc6IDE2cHg7XG59XG5cblxuaHRtbCB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xufVxuXG5cblxuYm9keSB7XG4gICAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIFxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpLWJnKTsgXG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQpO1xufVxuXG5hIHtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dCk7IFxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbmE6aG92ZXIge1xuICAgIGNvbG9yOiAjZDlhNDA3OyBcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gICAgZm9udC1mYW1pbHk6IFwiTnVuaXRvXCIsIHNhbnMtc2VyaWY7XG4gICAgY29sb3I6IHZhcigtLXVpLWhlYWRpbmcpO1xufVxuXG5cbiNtYWluIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgIHBhZGRpbmc6IDIwcHggMzBweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgI21haW4ge1xuICAgICAgICBwYWRkaW5nOiAwcHggIWltcG9ydGFudDtcbiAgICB9XG59XG5cblxuLnBhZ2V0aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLnBhZ2V0aXRsZSBoMSB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogdmFyKC0tdWktaGVhZGluZyk7XG59XG5cblxuLmJhY2stdG8tdG9wIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcmlnaHQ6IDE1cHg7XG4gICAgYm90dG9tOiAxNXB4O1xuICAgIHotaW5kZXg6IDk5OTk5O1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHZhcigtLXVpLXByaW1hcnkpLCB2YXIoLS11aS1hY2NlbnQpKTtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICBib3gtc2hhZG93OiAwIDEycHggMjRweCByZ2JhKDE0MCwgODAsIDI3LCAwLjI0KTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC40cztcbn1cblxuLmJhY2stdG8tdG9wIGkge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBsaW5lLWhlaWdodDogMDtcbn1cblxuLmJhY2stdG8tdG9wOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB2YXIoLS11aS1wcmltYXJ5LWhvdmVyKSwgdmFyKC0tdWktYWNjZW50KSk7XG4gICAgY29sb3I6ICNmZmY7XG59XG5cbi5iYWNrLXRvLXRvcC5hY3RpdmUge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgb3BhY2l0eTogMTtcbn1cblxuXG5cblxuXG4uZHJvcGRvd24tbWVudSB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tdWktcmFkaXVzLW1kKTtcbiAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZHJvcGRvd24tYW5pbWF0ZTtcbiAgICBhbmltYXRpb24tbmFtZTogZHJvcGRvd24tYW5pbWF0ZTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC4ycztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDAuMnM7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdWktYm9yZGVyKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aS1zdXJmYWNlKTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS11aS1zaGFkb3ctbWQpO1xufVxuXG4uZHJvcGRvd24tbWVudSAuZHJvcGRvd24taGVhZGVyLFxuLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWZvb3RlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBwYWRkaW5nOiAxMHB4IDI1cHg7XG59XG5cbi5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1mb290ZXIgYSB7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQtbXV0ZWQpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uZHJvcGRvd24tbWVudSAuZHJvcGRvd24tZm9vdGVyIGE6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWRpdmlkZXIge1xuICAgIGNvbG9yOiB2YXIoLS11aS1ib3JkZXIpO1xuICAgIG1hcmdpbjogMDtcbn1cblxuLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW0ge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgdHJhbnNpdGlvbjogMC4zcztcbn1cblxuLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW0gaSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogMDtcbn1cblxuLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW06aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpLXN1cmZhY2UtbXV0ZWQpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZHJvcGRvd24tbWVudS1hcnJvdzo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgd2lkdGg6IDEzcHg7XG4gICAgICAgIGhlaWdodDogMTNweDtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdWktc3VyZmFjZSk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtN3B4O1xuICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tdWktYm9yZGVyKTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS11aS1ib3JkZXIpO1xuICAgIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGRyb3Bkb3duLWFuaW1hdGUge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGRyb3Bkb3duLWFuaW1hdGUge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxufVxuXG5cbi5iZy1wcmltYXJ5LWxpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmRmMmM1O1xuICAgIGJvcmRlci1jb2xvcjogI2ZkZjJjNTtcbn1cblxuLmJnLXNlY29uZGFyeS1saWdodCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2UyZTNlNTtcbiAgICBib3JkZXItY29sb3I6ICNlMmUzZTU7XG59XG5cbi5iZy1zdWNjZXNzLWxpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDFlN2RkO1xuICAgIGJvcmRlci1jb2xvcjogI2QxZTdkZDtcbn1cblxuLmJnLWRhbmdlci1saWdodCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZDdkYTtcbiAgICBib3JkZXItY29sb3I6ICNmOGQ3ZGE7XG59XG5cbi5iZy13YXJuaW5nLWxpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmM2NkO1xuICAgIGJvcmRlci1jb2xvcjogI2ZmZjNjZDtcbn1cblxuLmJnLWluZm8tbGlnaHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjZmY0ZmM7XG4gICAgYm9yZGVyLWNvbG9yOiAjY2ZmNGZjO1xufVxuXG4uYmctZGFyay1saWdodCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2QzZDNkNDtcbiAgICBib3JkZXItY29sb3I6ICNkM2QzZDQ7XG59XG5cblxuLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdWktYm9yZGVyKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS11aS1yYWRpdXMtbGcpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpLXN1cmZhY2UpO1xuICAgIGJveC1zaGFkb3c6IHZhcigtLXVpLXNoYWRvdy1zb2Z0KTtcbn1cblxuLmNhcmQtaGVhZGVyLFxuLmNhcmQtZm9vdGVyIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXVpLWJvcmRlcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQtbXV0ZWQpO1xuICAgIHBhZGRpbmc6IDE2cHggMjBweDtcbn1cblxuLmNhcmQtdGl0bGUge1xuICAgIHBhZGRpbmc6IDIwcHggMCAxNXB4IDA7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6IHZhcigtLXVpLWhlYWRpbmcpO1xuICAgIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgc2Fucy1zZXJpZjtcbn1cblxuLmNhcmQtdGl0bGUgc3BhbiB7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQtc29mdCk7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5jYXJkLWJvZHkge1xuICAgIHBhZGRpbmc6IDAgMjBweCAyMHB4IDIwcHg7XG59XG5cbi5jYXJkLWltZy1vdmVybGF5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzIpO1xufVxuXG5cbi5hbGVydC1oZWFkaW5nIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtZmFtaWx5OiBcIlBvcHBpbnNcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDIwcHg7XG59XG5cblxuLmJ0bi1jbG9zZSB7XG4gICAgYmFja2dyb3VuZC1zaXplOiAyNSU7XG59XG5cbi5idG4tY2xvc2U6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuXG4uYWNjb3JkaW9uLWl0ZW0ge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXVpLWJvcmRlcik7XG59XG5cbi5hY2NvcmRpb24tYnV0dG9uOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5hY2NvcmRpb24tYnV0dG9uOm5vdCguY29sbGFwc2VkKSB7XG4gICAgY29sb3I6IHZhcigtLXVpLWhlYWRpbmcpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpLXN1cmZhY2UtbXV0ZWQpO1xufVxuXG4uYWNjb3JkaW9uLWZsdXNoIC5hY2NvcmRpb24tYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IDA7XG59XG5cbi5hY2NvcmRpb24tZmx1c2ggLmFjY29yZGlvbi1idXR0b246bm90KC5jb2xsYXBzZWQpIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGNvbG9yOiB2YXIoLS11aS1wcmltYXJ5KTtcbn1cblxuLmFjY29yZGlvbi1mbHVzaCAuYWNjb3JkaW9uLWJvZHkge1xuICAgIHBhZGRpbmc6IDAgMCAxNXB4IDA7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQtbXV0ZWQpO1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbn1cblxuXG4uYnJlYWRjcnVtYiB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtZmFtaWx5OiBcIk51bml0b1wiLCBzYW5zLXNlcmlmO1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0LXNvZnQpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5icmVhZGNydW1iIGEge1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0LXNvZnQpO1xuICAgIHRyYW5zaXRpb246IDAuM3M7XG59XG5cbi5icmVhZGNydW1iIGE6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0LW11dGVkKTtcbn1cblxuLmJyZWFkY3J1bWIgLmJyZWFkY3J1bWItaXRlbTo6YmVmb3JlIHtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dC1zb2Z0KTtcbn1cblxuLmJyZWFkY3J1bWIgLmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQtbXV0ZWQpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cblxuLm5hdi10YWJzLWJvcmRlcmVkIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tdWktYm9yZGVyKTtcbn1cblxuLm5hdi10YWJzLWJvcmRlcmVkIC5uYXYtbGluayB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTFweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQtbXV0ZWQpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5uYXYtdGFicy1ib3JkZXJlZCAubmF2LWxpbms6aG92ZXIsXG4ubmF2LXRhYnMtYm9yZGVyZWQgLm5hdi1saW5rOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tdWktcHJpbWFyeSk7XG59XG5cbi5uYXYtdGFicy1ib3JkZXJlZCAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogdmFyKC0tdWktaGVhZGluZyk7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLXVpLWFjY2VudCk7XG59XG5cblxuXG4ubG9nbyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogNnB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbn1cbi5sb2dvLFxuLmxvZ286aG92ZXIsXG4ubG9nbzpmb2N1cyxcbi5sb2dvIHNwYW4sXG4ubG9nbyBzcGFuOmhvdmVyLFxuLmxvZ28gc3Bhbjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ubG9nbyBpbWcge1xuICAgIG1heC1oZWlnaHQ6IDYwcHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xufVxuXG5cbi5sb2dvIHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiB2YXIoLS11aS1uYXYtdGV4dCk7XG4gICAgZm9udC1mYW1pbHk6IFwiTnVuaXRvXCIsIHNhbnMtc2VyaWY7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAubG9nbyB7XG4gICAgICAgIHdpZHRoOiAyODBweDtcbiAgICB9XG59XG5cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTkuOThweCkge1xuICAgIC5sb2dvIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogMTgwcHg7XG4gICAgfVxuXG4gICAgLmxvZ28gaW1nIHtcbiAgICAgICAgbWF4LWhlaWdodDogNDBweDtcbiAgICB9XG5cbiAgICAubG9nbyBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgIH1cbn1cblxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgICAubG9nbyB7XG4gICAgICAgIG1heC13aWR0aDogMTQwcHg7XG4gICAgfVxuXG4gICAgLmxvZ28gc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG59XG5cbi5oZWFkZXIge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuICAgIHotaW5kZXg6IDk5NztcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgYm94LXNoYWRvdzogMCA0cHggMjBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLW5hdi1iZyk7IFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS11aS1uYXYtYm9yZGVyKTtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG59XG4uaGVhZGVyIC5zZWFyY2gtZm9ybSBpbnB1dCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdWktbmF2LWJvcmRlcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdWktbmF2LXN1cmZhY2UpO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBjb2xvcjogdmFyKC0tdWktbmF2LXRleHQpO1xuICAgIHBhZGRpbmc6IDlweCA0MHB4IDlweCAxNHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDsgXG4gICAgdHJhbnNpdGlvbjogMC4zcztcbiAgICB3aWR0aDogMTAwJTtcbn1cbi5oZWFkZXIgLnRvZ2dsZS1zaWRlYmFyLWJ0biB7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY29sb3I6IHZhcigtLXVpLW5hdi10ZXh0KTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2U7XG59XG5cbi5oZWFkZXIgLnRvZ2dsZS1zaWRlYmFyLWJ0bjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLXVpLXByaW1hcnkpO1xufVxuXG4uaGVhZGVyIC5zZWFyY2gtYmFyIHtcbiAgICBtaW4td2lkdGg6IDM2MHB4O1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgIC5oZWFkZXIgLnNlYXJjaC1iYXIge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHRvcDogNjBweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIHBhZGRpbmc6IDEycHggMTRweCAxNHB4O1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1uYXYtYmcpO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tdWktbmF2LWJvcmRlcik7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMTZweCAzNnB4IHJnYmEoMCwgMCwgMCwgMC4zNSk7XG4gICAgICAgIHotaW5kZXg6IDk5OTk7XG4gICAgICAgIHRyYW5zaXRpb246IDAuM3M7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgYm9keS5zZWFyY2gtYmFyLW9wZW4gLmhlYWRlciAuc2VhcmNoLWJhciB7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgIH1cblxuICAgIC5oZWFkZXIgLnNlYXJjaC1iYXItc2hvdyB7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgIH1cblxuICAgIC5oZWFkZXIgLnNlYXJjaC1mb3JtIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA0MnB4IG1pbm1heCgwLCAxZnIpO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWFyZWFzOlxuICAgICAgICAgICAgXCJsYWJlbCBsYWJlbFwiXG4gICAgICAgICAgICBcImJ1dHRvbiBpbnB1dFwiO1xuICAgICAgICBjb2x1bW4tZ2FwOiAwLjRyZW07XG4gICAgICAgIHJvdy1nYXA6IDAuNHJlbTtcbiAgICAgICAgcGFkZGluZzogMC42NXJlbSAwLjc1cmVtO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS11aS1uYXYtYm9yZGVyKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTRweDtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdWktbmF2LXN1cmZhY2UpO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cblxuICAgIC5oZWFkZXIgLnNlYXJjaC1iYXItbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMCAwIDAuMXJlbTtcbiAgICAgICAgZ3JpZC1hcmVhOiBsYWJlbDtcbiAgICAgICAgY29sb3I6IHZhcigtLXVpLW5hdi10ZXh0LW11dGVkKTtcbiAgICAgICAgZm9udC1zaXplOiAwLjY4cmVtO1xuICAgICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wOGVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cblxuICAgIC5oZWFkZXIgLnNlYXJjaC1mb3JtIGlucHV0IHtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZ3JpZC1hcmVhOiBpbnB1dDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC43NXJlbTtcbiAgICB9XG5cbiAgICAuaGVhZGVyIC5zZWFyY2gtZm9ybSBidXR0b24ge1xuICAgICAgICB3aWR0aDogNDJweDtcbiAgICAgICAgaGVpZ2h0OiA0MnB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgZ3JpZC1hcmVhOiBidXR0b247XG4gICAgfVxuXG4gICAgLmhlYWRlciAuc2VhcmNoLWZvcm0gaW5wdXQuZm9ybS1jb250cm9sIHtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuaGVhZGVyIC5zZWFyY2gtZm9ybSBidXR0b25bdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgfVxufVxuXG4uaGVhZGVyIC5zZWFyY2gtZm9ybSB7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5oZWFkZXIgLnNlYXJjaC1mb3JtIGlucHV0IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpLW5hdi1zdXJmYWNlKTtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgY29sb3I6IHZhcigtLXVpLW5hdi10ZXh0KTtcbiAgICBwYWRkaW5nOiA5cHggNDBweCA5cHggMTRweDtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7IFxuICAgIHRyYW5zaXRpb246IDAuM3M7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5oZWFkZXIgLnNlYXJjaC1iYXItbGFiZWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5oZWFkZXIgLnNlYXJjaC1mb3JtIGlucHV0OmZvY3VzLFxuLmhlYWRlciAuc2VhcmNoLWZvcm0gaW5wdXQ6aG92ZXIge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgNHB4IHZhcigtLXVpLWFjY2VudC1yaW5nKTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI0MiwgMTk1LCAwLCAwLjUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpLW5hdi1zdXJmYWNlLWhvdmVyKTtcbn1cblxuLmhlYWRlciAuc2VhcmNoLWZvcm0gaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogdmFyKC0tdWktbmF2LXRleHQtbXV0ZWQpO1xufVxuXG4uaGVhZGVyIC5zZWFyY2gtZm9ybSBidXR0b24ge1xuICAgIGJvcmRlcjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAtMzBweDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4uaGVhZGVyIC5zZWFyY2gtZm9ybSBidXR0b24gaSB7XG4gICAgY29sb3I6IHZhcigtLXVpLW5hdi10ZXh0LW11dGVkKTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2U7XG59XG5cbi5oZWFkZXIgLnNlYXJjaC1mb3JtIGJ1dHRvbjpob3ZlciBpIHtcbiAgICBjb2xvcjogdmFyKC0tdWktcHJpbWFyeSk7XG59XG5cblxuXG4uaGVhZGVyLW5hdiB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmhlYWRlci1uYXY+dWwge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4uaGVhZGVyLW5hdiAubmF2LWljb24ge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBjb2xvcjogdmFyKC0tdWktbmF2LXRleHQpO1xuICAgIG1hcmdpbi1yaWdodDogMjVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdHJhbnNpdGlvbjogMC4zcztcbn1cblxuLmhlYWRlci1uYXYgLnNlYXJjaC1iYXItdG9nZ2xlIHtcbiAgICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbn1cblxuLmhlYWRlci1uYXYgLm5hdi1pY29uOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tdWktcHJpbWFyeSk7XG59XG5cbi5oZWFkZXItbmF2IC5uYXYtcHJvZmlsZSB7XG4gICAgY29sb3I6ICNGRkZGRkY7XG59XG5cbi5oZWFkZXItbmF2IC5uYXYtcHJvZmlsZSBpbWcge1xuICAgIG1heC1oZWlnaHQ6IDU0cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAycHg7XG59XG5cbi5oZWFkZXItbmF2IC5uYXYtcHJvZmlsZSBzcGFuIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogI2Y4ZmFmYztcbn1cblxuLmhlYWRlci1uYXYgLmJhZGdlLW51bWJlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGluc2V0OiAtMnB4IC01cHggYXV0byBhdXRvO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIHBhZGRpbmc6IDNweCA2cHg7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdWktcHJpbWFyeSk7XG4gICAgY29sb3I6ICMyZTJlMmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjE2KTtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5oZWFkZXItbmF2IC5ub3RpZmljYXRpb25zIHtcbiAgICBpbnNldDogOHB4IC0xNXB4IGF1dG8gYXV0byAhaW1wb3J0YW50O1xufVxuXG4uaGVhZGVyLW5hdiAubm90aWZpY2F0aW9ucyAubm90aWZpY2F0aW9uLWl0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAxNXB4IDEwcHg7XG4gICAgdHJhbnNpdGlvbjogMC4zcztcbn1cblxuLmhlYWRlci1uYXYgLm5vdGlmaWNhdGlvbnMgLm5vdGlmaWNhdGlvbi1pdGVtIGkge1xuICAgIG1hcmdpbjogMCAyMHB4IDAgMTBweDtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgY29sb3I6IHZhcigtLXVpLXByaW1hcnkpO1xufVxuXG4uaGVhZGVyLW5hdiAubm90aWZpY2F0aW9ucyAubm90aWZpY2F0aW9uLWl0ZW0gaDQge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICBjb2xvcjogdmFyKC0tdWktaGVhZGluZyk7XG59XG5cbi5oZWFkZXItbmF2IC5ub3RpZmljYXRpb25zIC5ub3RpZmljYXRpb24taXRlbSBwIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogM3B4O1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0LW11dGVkKTtcbn1cblxuLmhlYWRlci1uYXYgLm5vdGlmaWNhdGlvbnMgLm5vdGlmaWNhdGlvbi1pdGVtOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aS1zdXJmYWNlLW11dGVkKTtcbn1cblxuLmhlYWRlci1uYXYgLm1lc3NhZ2VzIHtcbiAgICBpbnNldDogOHB4IC0xNXB4IGF1dG8gYXV0byAhaW1wb3J0YW50O1xufVxuXG4uaGVhZGVyLW5hdiAubWVzc2FnZXMgLm1lc3NhZ2UtaXRlbSB7XG4gICAgcGFkZGluZzogMTVweCAxMHB4O1xuICAgIHRyYW5zaXRpb246IDAuM3M7XG59XG5cbi5oZWFkZXItbmF2IC5tZXNzYWdlcyAubWVzc2FnZS1pdGVtIGEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5oZWFkZXItbmF2IC5tZXNzYWdlcyAubWVzc2FnZS1pdGVtIGltZyB7XG4gICAgbWFyZ2luOiAwIDIwcHggMCAxMHB4O1xuICAgIG1heC1oZWlnaHQ6IDQwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoMTkxLCAxMDksIDM2LCAwLjI4KTtcbn1cblxuLmhlYWRlci1uYXYgLm1lc3NhZ2VzIC5tZXNzYWdlLWl0ZW0gaDQge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICBjb2xvcjogdmFyKC0tdWktaGVhZGluZyk7XG59XG5cbi5oZWFkZXItbmF2IC5tZXNzYWdlcyAubWVzc2FnZS1pdGVtIHAge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzcHg7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQtbXV0ZWQpO1xufVxuXG4uaGVhZGVyLW5hdiAubWVzc2FnZXMgLm1lc3NhZ2UtaXRlbTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdWktc3VyZmFjZS1tdXRlZCk7XG59XG5cbi5oZWFkZXItbmF2IC5tZXNzYWdlcyxcbi5oZWFkZXItbmF2IC5ub3RpZmljYXRpb25zLFxuLmhlYWRlci1uYXYgLnByb2ZpbGUge1xuICAgIG1pbi13aWR0aDogMjQwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgdG9wOiA4cHggIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aS1zdXJmYWNlKTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS11aS1ib3JkZXIpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXVpLXJhZGl1cy1tZCk7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tdWktc2hhZG93LW1kKTtcbn1cblxuLmhlYWRlci1uYXYgLnByb2ZpbGUgLmRyb3Bkb3duLWhlYWRlciBoNiB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogdmFyKC0tdWktaGVhZGluZyk7XG59XG5cbi5oZWFkZXItbmF2IC5wcm9maWxlIC5kcm9wZG93bi1oZWFkZXIgc3BhbiB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0LW11dGVkKTtcbn1cblxuLmhlYWRlci1uYXYgLnByb2ZpbGUgLmRyb3Bkb3duLWl0ZW0ge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgdHJhbnNpdGlvbjogMC4zcztcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dCk7XG59XG5cbi5oZWFkZXItbmF2IC5wcm9maWxlIC5kcm9wZG93bi1pdGVtIGkge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgY29sb3I6IHZhcigtLXVpLXByaW1hcnkpO1xuICAgIHRyYW5zaXRpb246IDAuM3M7XG59XG5cbi5oZWFkZXItbmF2IC5wcm9maWxlIC5kcm9wZG93bi1pdGVtOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aS1zdXJmYWNlLW11dGVkKTtcbiAgICBjb2xvcjogdmFyKC0tdWktaGVhZGluZyk7XG59XG5cblxuXG4ubmF2YmFyLWxvY2FsZS1zd2l0Y2gubG9jYWxlLXNlbGVjdC1zaGVsbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWluLWhlaWdodDogMzBweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS11aS1ib3JkZXItc3Ryb25nKTtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdWktbmF2LWJnKTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDJweCA0cHggcmdiYSgwLDAsMCwwLjE1KTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLm5hdmJhci1sb2NhbGUtc3dpdGNoIC5sb2NhbGUtc2VsZWN0LWxhYmVsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaW5zZXQ6IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC4zOHJlbTtcbiAgICBwYWRkaW5nOiAwLjE1cmVtIDEuNDVyZW0gMC4xNXJlbSAwLjU1cmVtO1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0KTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LWZhbWlseTogXCJTZWdvZSBVSVwiLCBcIk9wZW4gU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB0ZXh0LW92ZXJmbG93OiBjbGlwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIG1heC13aWR0aDogbm9uZTtcbn1cblxuLm5hdmJhci1sb2NhbGUtc3dpdGNoLmxvY2FsZS1zZWxlY3Qtc2hlbGw6aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDIwNCwgMCwgMC40KTtcbn1cblxuLm5hdmJhci1sb2NhbGUtc3dpdGNoIC5sb2NhbGUtc2VsZWN0LWxhYmVsOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZmxleDogMCAwIDE2cHg7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE0KTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xufVxuXG4ubmF2YmFyLWxvY2FsZS1zd2l0Y2ggLmxvY2FsZS1zZWxlY3QtbGFiZWw6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIHdpZHRoOiA3cHg7XG4gICAgaGVpZ2h0OiA3cHg7XG4gICAgYm9yZGVyLXJpZ2h0OiAxLjhweCBzb2xpZCByZ2JhKDIyNiwgMjMyLCAyNDAsIDAuOTIpO1xuICAgIGJvcmRlci1ib3R0b206IDEuOHB4IHNvbGlkIHJnYmEoMjI2LCAyMzIsIDI0MCwgMC45Mik7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZVkoLTFweCk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xufVxuXG4ubmF2YmFyLWxvY2FsZS1zd2l0Y2ggLmxvY2FsZS1zZWxlY3QtbGFiZWxbZGF0YS1sb2NhbGVePVwiZW5cIl06OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyOCAyMCclM0UlM0NyZWN0IHdpZHRoPScyOCcgaGVpZ2h0PScyMCcgZmlsbD0nJTIzYjIyMjM0Jy8lM0UlM0NwYXRoIGQ9J00wIDJoMjhNMCA2aDI4TTAgMTBoMjhNMCAxNGgyOE0wIDE4aDI4JyBzdHJva2U9JyUyM2ZmZicgc3Ryb2tlLXdpZHRoPScyJy8lM0UlM0NyZWN0IHdpZHRoPScxMicgaGVpZ2h0PScxMCcgZmlsbD0nJTIzM2MzYjZlJy8lM0UlM0Mvc3ZnJTNFXCIpO1xufVxuXG4ubmF2YmFyLWxvY2FsZS1zd2l0Y2ggLmxvY2FsZS1zZWxlY3QtbGFiZWxbZGF0YS1sb2NhbGVePVwiZXNcIl06OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyOCAyMCclM0UlM0NyZWN0IHdpZHRoPScyOCcgaGVpZ2h0PScyMCcgZmlsbD0nJTIzYzYwYjFlJy8lM0UlM0NyZWN0IHk9JzUnIHdpZHRoPScyOCcgaGVpZ2h0PScxMCcgZmlsbD0nJTIzZmZjNDAwJy8lM0UlM0Mvc3ZnJTNFXCIpO1xufVxuXG4ubmF2YmFyLWxvY2FsZS1zd2l0Y2ggLmxvY2FsZS1zZWxlY3QtbGFiZWxbZGF0YS1sb2NhbGVePVwicHQtYnJcIl06OmJlZm9yZSxcbi5uYXZiYXItbG9jYWxlLXN3aXRjaCAubG9jYWxlLXNlbGVjdC1sYWJlbFtkYXRhLWxvY2FsZV49XCJwdFwiXTo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDI4IDIwJyUzRSUzQ3JlY3Qgd2lkdGg9JzI4JyBoZWlnaHQ9JzIwJyBmaWxsPSclMjMwMDliM2EnLyUzRSUzQ3BhdGggZD0nTTE0IDMgMjQgMTAgMTQgMTcgNCAxMFonIGZpbGw9JyUyM2ZmZGYwMCcvJTNFJTNDY2lyY2xlIGN4PScxNCcgY3k9JzEwJyByPSc0LjInIGZpbGw9JyUyMzAwMjc3NicvJTNFJTNDL3N2ZyUzRVwiKTtcbn1cblxuLm5hdmJhci1sb2NhbGUtc3dpdGNoIC5sb2NhbGUtc2VsZWN0LWxhYmVsW2RhdGEtbG9jYWxlXj1cImZyXCJdOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjggMjAnJTNFJTNDcmVjdCB3aWR0aD0nMjgnIGhlaWdodD0nMjAnIGZpbGw9JyUyM2ZmZicvJTNFJTNDcmVjdCB3aWR0aD0nOS4zMycgaGVpZ2h0PScyMCcgZmlsbD0nJTIzMDA1NWE0Jy8lM0UlM0NyZWN0IHg9JzE4LjY2JyB3aWR0aD0nOS4zNCcgaGVpZ2h0PScyMCcgZmlsbD0nJTIzZWY0MTM1Jy8lM0UlM0Mvc3ZnJTNFXCIpO1xufVxuXG4ubmF2YmFyLWxvY2FsZS1zd2l0Y2ggLmxvY2FsZS1zZWxlY3QtbGFiZWwuaXMtZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDAuOTtcbn1cblxuLm5hdmJhci1sb2NhbGUtc3dpdGNoLmlzLW9wZW4gLmxvY2FsZS1zZWxlY3QtbGFiZWw6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyMjVkZWcpIHRyYW5zbGF0ZVkoLTFweCk7XG59XG5cbi5uYXZiYXItbG9jYWxlLXN3aXRjaCAubG9jYWxlLXNlbGVjdC1tZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBjYWxjKDEwMCUgKyAwLjM2cmVtKTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcGFkZGluZzogMC4zMnJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXVpLWJvcmRlci1zdHJvbmcpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMTcsIDI1LCA0MCwgMC45OCk7XG4gICAgYm94LXNoYWRvdzogMCAxNnB4IDI4cHggcmdiYSgwLCAwLCAwLCAwLjI4KTtcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTJweCk7XG4gICAgei1pbmRleDogMTEwMDtcbn1cblxuLm5hdmJhci1sb2NhbGUtc3dpdGNoLmlzLW9wZW4gLmxvY2FsZS1zZWxlY3QtbWVudSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBnYXA6IDAuMThyZW07XG59XG5cbi5uYXZiYXItbG9jYWxlLXN3aXRjaCAubG9jYWxlLXNlbGVjdC1vcHRpb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDAuNDVyZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMC40cmVtIDAuNDZyZW07XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dCk7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBmb250LXNpemU6IDAuNzZyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5uYXZiYXItbG9jYWxlLXN3aXRjaCAubG9jYWxlLXNlbGVjdC1vcHRpb24tdGV4dCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4ubmF2YmFyLWxvY2FsZS1zd2l0Y2ggLmxvY2FsZS1zZWxlY3Qtb3B0aW9uOmhvdmVyLFxuLm5hdmJhci1sb2NhbGUtc3dpdGNoIC5sb2NhbGUtc2VsZWN0LW9wdGlvbi5pcy1hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyMDQsIDAsIDAuMTIpO1xufVxuXG4ubmF2YmFyLWxvY2FsZS1zd2l0Y2ggLmxvY2FsZS1zZWxlY3Qtb3B0aW9uLWZsYWcge1xuICAgIGZsZXg6IDAgMCAxNnB4O1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIGhlaWdodDogMTJweDtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNCk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cblxuLm5hdmJhci1sb2NhbGUtc3dpdGNoIC5sb2NhbGUtc2VsZWN0LW9wdGlvbltkYXRhLWxvY2FsZV49XCJlblwiXSAubG9jYWxlLXNlbGVjdC1vcHRpb24tZmxhZyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyOCAyMCclM0UlM0NyZWN0IHdpZHRoPScyOCcgaGVpZ2h0PScyMCcgZmlsbD0nJTIzYjIyMjM0Jy8lM0UlM0NwYXRoIGQ9J00wIDJoMjhNMCA2aDI4TTAgMTBoMjhNMCAxNGgyOE0wIDE4aDI4JyBzdHJva2U9JyUyM2ZmZicgc3Ryb2tlLXdpZHRoPScyJy8lM0UlM0NyZWN0IHdpZHRoPScxMicgaGVpZ2h0PScxMCcgZmlsbD0nJTIzM2MzYjZlJy8lM0UlM0Mvc3ZnJTNFXCIpO1xufVxuXG4ubmF2YmFyLWxvY2FsZS1zd2l0Y2ggLmxvY2FsZS1zZWxlY3Qtb3B0aW9uW2RhdGEtbG9jYWxlXj1cImVzXCJdIC5sb2NhbGUtc2VsZWN0LW9wdGlvbi1mbGFnIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDI4IDIwJyUzRSUzQ3JlY3Qgd2lkdGg9JzI4JyBoZWlnaHQ9JzIwJyBmaWxsPSclMjNjNjBiMWUnLyUzRSUzQ3JlY3QgeT0nNScgd2lkdGg9JzI4JyBoZWlnaHQ9JzEwJyBmaWxsPSclMjNmZmM0MDAnLyUzRSUzQy9zdmclM0VcIik7XG59XG5cbi5uYXZiYXItbG9jYWxlLXN3aXRjaCAubG9jYWxlLXNlbGVjdC1vcHRpb25bZGF0YS1sb2NhbGVePVwicHQtYnJcIl0gLmxvY2FsZS1zZWxlY3Qtb3B0aW9uLWZsYWcsXG4ubmF2YmFyLWxvY2FsZS1zd2l0Y2ggLmxvY2FsZS1zZWxlY3Qtb3B0aW9uW2RhdGEtbG9jYWxlXj1cInB0XCJdIC5sb2NhbGUtc2VsZWN0LW9wdGlvbi1mbGFnIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDI4IDIwJyUzRSUzQ3JlY3Qgd2lkdGg9JzI4JyBoZWlnaHQ9JzIwJyBmaWxsPSclMjMwMDliM2EnLyUzRSUzQ3BhdGggZD0nTTE0IDMgMjQgMTAgMTQgMTcgNCAxMFonIGZpbGw9JyUyM2ZmZGYwMCcvJTNFJTNDY2lyY2xlIGN4PScxNCcgY3k9JzEwJyByPSc0LjInIGZpbGw9JyUyMzAwMjc3NicvJTNFJTNDL3N2ZyUzRVwiKTtcbn1cblxuLm5hdmJhci1sb2NhbGUtc3dpdGNoIC5sb2NhbGUtc2VsZWN0LW9wdGlvbltkYXRhLWxvY2FsZV49XCJmclwiXSAubG9jYWxlLXNlbGVjdC1vcHRpb24tZmxhZyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyOCAyMCclM0UlM0NyZWN0IHdpZHRoPScyOCcgaGVpZ2h0PScyMCcgZmlsbD0nJTIzZmZmJy8lM0UlM0NyZWN0IHdpZHRoPSc5LjMzJyBoZWlnaHQ9JzIwJyBmaWxsPSclMjMwMDU1YTQnLyUzRSUzQ3JlY3QgeD0nMTguNjYnIHdpZHRoPSc5LjM0JyBoZWlnaHQ9JzIwJyBmaWxsPSclMjNlZjQxMzUnLyUzRSUzQy9zdmclM0VcIik7XG59XG5cbi5uYXZiYXItbG9jYWxlLXN3aXRjaCAja2l0LWxvY2FsZS1zZWxlY3QuZm9ybS1zZWxlY3Qtc20ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIGluc2V0OiAwICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtaW4td2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtaW4taGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgb3BhY2l0eTogMCAhaW1wb3J0YW50O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lICFpbXBvcnRhbnQ7XG4gICAgYXBwZWFyYW5jZTogbm9uZSAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuXG4ubmF2YmFyLWxvY2FsZS1zd2l0Y2ggI2tpdC1sb2NhbGUtc2VsZWN0LmZvcm0tc2VsZWN0LXNtOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyMDQsIDAsIDAuNCkgIWltcG9ydGFudDtcbn1cblxuLm5hdmJhci1sb2NhbGUtc3dpdGNoICNraXQtbG9jYWxlLXNlbGVjdC5mb3JtLXNlbGVjdC1zbTpmb2N1cyB7XG4gIFxuICAgIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuXG4ubmF2YmFyLWxvY2FsZS1zd2l0Y2ggI2tpdC1sb2NhbGUtc2VsZWN0LmZvcm0tc2VsZWN0LXNtIG9wdGlvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdWktc3VyZmFjZSkgIWltcG9ydGFudDtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dCkgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiA4cHggIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDAuODVyZW0gIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAubmF2YmFyLWxvY2FsZS1zd2l0Y2gge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuMzVyZW0gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm5hdmJhci1sb2NhbGUtc3dpdGNoICNraXQtbG9jYWxlLXNlbGVjdC5mb3JtLXNlbGVjdC1zbSB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIG1pbi13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm5hdmJhci1sb2NhbGUtc3dpdGNoLmxvY2FsZS1zZWxlY3Qtc2hlbGwge1xuICAgICAgICBtaW4taGVpZ2h0OiAzMnB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgfVxuICAgIC5uYXZiYXItbG9jYWxlLXN3aXRjaCAubG9jYWxlLXNlbGVjdC1sYWJlbCB7XG4gICAgICAgIHBhZGRpbmc6IDAgMjJweCAwIDhweDtcbiAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgICBnYXA6IDAuMzRyZW07XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGNsaXA7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gICAgLm5hdmJhci1sb2NhbGUtc3dpdGNoLmxvY2FsZS1zZWxlY3Qtc2hlbGwge1xuICAgICAgICB3aWR0aDogODZweCAhaW1wb3J0YW50O1xuICAgICAgICBtaW4td2lkdGg6IDg2cHggIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOiA4NnB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5uYXZiYXItbG9jYWxlLXN3aXRjaCAubG9jYWxlLXNlbGVjdC1tZW51IHtcbiAgICAgICAgbWF4LXdpZHRoOiBtaW4oMTYwcHgsIGNhbGMoMTAwdncgLSAxcmVtKSk7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgICAubmF2YmFyLWxvY2FsZS1zd2l0Y2ggLmxvY2FsZS1zZWxlY3Qtb3B0aW9uIHtcbiAgICAgICAgcGFkZGluZzogMC4zOHJlbSAwLjQycmVtO1xuICAgICAgICBmb250LXNpemU6IDAuNzJyZW07XG4gICAgfVxuICAgIC5uYXZiYXItbG9jYWxlLXN3aXRjaCAja2l0LWxvY2FsZS1zZWxlY3QuZm9ybS1zZWxlY3Qtc20gb3B0aW9uIHtcbiAgICAgICAgY29sb3I6ICMwZjE3MmEgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAwLjg1cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtaW5kZW50OiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuLm5hdmJhci1sb2NhbGUtc3dpdGNoOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbn1cblxuXG5cbi5zaWRlYmFyIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiA2MHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiAzMDBweDtcbiAgICB6LWluZGV4OiA5OTY7XG4gICAgcGFkZGluZzogMjBweCAxNnB4IDI0cHg7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1uYXYtYmcpOyBcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS11aS1uYXYtYm9yZGVyKTtcbiAgICBib3gtc2hhZG93OiA0cHggMCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICBzY3JvbGxiYXItd2lkdGg6IHRoaW47XG4gICAgc2Nyb2xsYmFyLWNvbG9yOiB2YXIoLS11aS1wcmltYXJ5KSB0cmFuc3BhcmVudDtcbn1cblxuLnNpZGViYXI6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICB3aWR0aDogNXB4O1xuICAgIGhlaWdodDogOHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uc2lkZWJhcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQyLCAxOTUsIDAsIDAuNDUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG59XG5cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgIC5zaWRlYmFyIHtcbiAgICAgICAgbGVmdDogLTMwMHB4O1xuICAgIH1cblxuICAgIC50b2dnbGUtc2lkZWJhciAuc2lkZWJhciB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG5cbiAgICAjbWFpbixcbiAgICAjZm9vdGVyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDMwMHB4O1xuICAgIH1cblxuICAgIC50b2dnbGUtc2lkZWJhciAjbWFpbixcbiAgICAudG9nZ2xlLXNpZGViYXIgI2Zvb3RlciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC50b2dnbGUtc2lkZWJhciAuc2lkZWJhciB7XG4gICAgICAgIGxlZnQ6IC0zMDBweDtcbiAgICB9XG59XG5cblxuLnNpZGViYXItbmF2IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uc2lkZWJhci1uYXYgbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbi5zaWRlYmFyLW5hdiAubmF2LWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDhweDtcbn1cblxuLnNpZGViYXItbmF2IC5uYXYtaGVhZGluZyB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6IHZhcigtLXVpLW5hdi10ZXh0LW11dGVkKTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XG4gICAgbWFyZ2luOiAxNnB4IDAgOHB4IDEycHg7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG5cblxuXG4uc2lkZWJhci1uYXYgLm5hdi1saW5rIGkge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XG4gICAgY29sb3I6IHZhcigtLXVpLW5hdi10ZXh0LW11dGVkKTtcbn1cblxuXG4uc2lkZWJhci1uYXYgLm5hdi1saW5rIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6IHZhcigtLXVpLW5hdi10ZXh0KTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBwYWRkaW5nOiAxMnB4IDE0cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTRweDtcbiAgICB0cmFuc2l0aW9uOiAwLjNzO1xufVxuXG4uc2lkZWJhci1uYXYgLm5hdi1saW5rLmNvbGxhcHNlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5zaWRlYmFyLW5hdiAubmF2LWxpbms6bm90KC5jb2xsYXBzZWQpIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5zaWRlYmFyLW5hdiAubmF2LWxpbms6bm90KC5jb2xsYXBzZWQpIGkge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4uc2lkZWJhci1uYXYgLm5hdi1saW5rIC5iaS1jaGV2cm9uLWRvd24ge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2UtaW4tb3V0O1xufVxuXG4uc2lkZWJhci1uYXYgLm5hdi1saW5rOm5vdCguY29sbGFwc2VkKSAuYmktY2hldnJvbi1kb3duIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xufVxuXG4uc2lkZWJhci1uYXYgLm5hdi1saW5rOmhvdmVyLFxuLnNpZGViYXItbmF2IC5uYXYtbGluazpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNDIsIDE4NywgMjIsIDAuMTIpICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHZhcigtLXVpLXByaW1hcnkpICFpbXBvcnRhbnQ7IFxufVxuXG4uc2lkZWJhci1uYXYgLm5hdi1saW5rOmhvdmVyIGksXG4uc2lkZWJhci1uYXYgLm5hdi1saW5rOmZvY3VzIGkge1xuICAgIGNvbG9yOiB2YXIoLS11aS1wcmltYXJ5KSAhaW1wb3J0YW50O1xufVxuXG5cbi5zaWRlYmFyLW5hdiAubmF2LWNvbnRlbnQgYTpob3Zlcixcbi5zaWRlYmFyLW5hdiAubmF2LWNvbnRlbnQgYS5hY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS11aS1wcmltYXJ5KSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQyLCAxODcsIDIyLCAwLjA1KTtcbn1cblxuXG4uc2lkZWJhci1uYXYgLm5hdi1saW5rOmhvdmVyLFxuLnNpZGViYXItbmF2IC5uYXYtbGluazpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNDIsIDE4NywgMjIsIDAuMSk7IFxuICAgIGNvbG9yOiB2YXIoLS11aS1wcmltYXJ5KTtcbn1cblxuXG5cblxuLnNpZGViYXItbmF2IC5uYXYtY29udGVudCBhLmFjdGl2ZSBpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aS1wcmltYXJ5KTsgXG59XG5cblxuXG5cbi5zaWRlYmFyLW5hdiAubmF2LWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDVweCAwIDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5zaWRlYmFyLW5hdiAubmF2LWNvbnRlbnQgYSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiB2YXIoLS11aS1uYXYtdGV4dC1tdXRlZCk7XG4gICAgcGFkZGluZzogMTBweCAxMnB4IDEwcHggNDBweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgIHRyYW5zaXRpb246IDAuM3M7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uc2lkZWJhci1uYXYgLm5hdi1jb250ZW50IGEgaSB7XG4gICAgZm9udC1zaXplOiA2cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cblxuXG4uc2lkZWJhci1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpOyBcbiAgICB6LWluZGV4OiA5OTU7IFxuICAgIGRpc3BsYXk6IG5vbmU7IFxufVxuXG4uc2lkZWJhci1vcGVuIC5zaWRlYmFyLW92ZXJsYXkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5cblxuXG4uZGFzaGJvYXJkIC5maWx0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMHB4O1xuICAgIHRvcDogMTVweDtcbn1cblxuLmRhc2hib2FyZCAuZmlsdGVyIC5pY29uIHtcbiAgICBjb2xvcjogI2FhYjdjZjtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgdHJhbnNpdGlvbjogMC4zcztcbiAgICBmb250LXNpemU6IDE2cHg7XG59XG5cbi5kYXNoYm9hcmQgLmZpbHRlciAuaWNvbjpob3Zlcixcbi5kYXNoYm9hcmQgLmZpbHRlciAuaWNvbjpmb2N1cyB7XG4gICAgY29sb3I6ICM0MTU0ZjE7XG59XG5cbi5kYXNoYm9hcmQgLmZpbHRlciAuZHJvcGRvd24taGVhZGVyIHtcbiAgICBwYWRkaW5nOiA4cHggMTVweDtcbn1cblxuLmRhc2hib2FyZCAuZmlsdGVyIC5kcm9wZG93bi1oZWFkZXIgaDYge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICBjb2xvcjogI2FhYjdjZjtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbi5kYXNoYm9hcmQgLmZpbHRlciAuZHJvcGRvd24taXRlbSB7XG4gICAgcGFkZGluZzogOHB4IDE1cHg7XG59XG5cblxuLmRhc2hib2FyZCAuaW5mby1jYXJkIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbn1cblxuLmRhc2hib2FyZCAuaW5mby1jYXJkIGg2IHtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gICAgY29sb3I6ICMwMTI5NzA7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLmRhc2hib2FyZCAuY2FyZC1pY29uIHtcbiAgICBmb250LXNpemU6IDMycHg7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgd2lkdGg6IDY0cHg7XG4gICAgaGVpZ2h0OiA2NHB4O1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtZ3JvdzogMDtcbn1cblxuLmRhc2hib2FyZCAuc2FsZXMtY2FyZCAuY2FyZC1pY29uIHtcbiAgICBjb2xvcjogIzQxNTRmMTtcbiAgICBiYWNrZ3JvdW5kOiAjZjZmNmZlO1xufVxuXG4uZGFzaGJvYXJkIC5yZXZlbnVlLWNhcmQgLmNhcmQtaWNvbiB7XG4gICAgY29sb3I6ICMyZWNhNmE7XG4gICAgYmFja2dyb3VuZDogI2UwZjhlOTtcbn1cblxuLmRhc2hib2FyZCAuY3VzdG9tZXJzLWNhcmQgLmNhcmQtaWNvbiB7XG4gICAgY29sb3I6ICNmZjc3MWQ7XG4gICAgYmFja2dyb3VuZDogI2ZmZWNkZjtcbn1cblxuXG4uZGFzaGJvYXJkIC5hY3Rpdml0eSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4uZGFzaGJvYXJkIC5hY3Rpdml0eSAuYWN0aXZpdHktaXRlbSAuYWN0aXZpdGUtbGFiZWwge1xuICAgIGNvbG9yOiAjODg4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgbWluLXdpZHRoOiA2NHB4O1xufVxuXG4uZGFzaGJvYXJkIC5hY3Rpdml0eSAuYWN0aXZpdHktaXRlbSAuYWN0aXZpdGUtbGFiZWw6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IC0xMXB4O1xuICAgIHdpZHRoOiA0cHg7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlZWZlO1xufVxuXG4uZGFzaGJvYXJkIC5hY3Rpdml0eSAuYWN0aXZpdHktaXRlbSAuYWN0aXZpdHktYmFkZ2Uge1xuICAgIG1hcmdpbi10b3A6IDNweDtcbiAgICB6LWluZGV4OiAxO1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgYm9yZGVyOiAzcHggc29saWQgI2ZmZjtcbiAgICBmbGV4LWdyb3c6IDA7XG59XG5cbi5kYXNoYm9hcmQgLmFjdGl2aXR5IC5hY3Rpdml0eS1pdGVtIC5hY3Rpdml0eS1jb250ZW50IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG59XG5cbi5kYXNoYm9hcmQgLmFjdGl2aXR5IC5hY3Rpdml0eS1pdGVtOmZpcnN0LWNoaWxkIC5hY3Rpdml0ZS1sYWJlbDo6YmVmb3JlIHtcbiAgICB0b3A6IDVweDtcbn1cblxuLmRhc2hib2FyZCAuYWN0aXZpdHkgLmFjdGl2aXR5LWl0ZW06bGFzdC1jaGlsZCAuYWN0aXZpdHktY29udGVudCB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cblxuLmRhc2hib2FyZCAubmV3cyAucG9zdC1pdGVtKy5wb3N0LWl0ZW0ge1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG59XG5cbi5kYXNoYm9hcmQgLm5ld3MgaW1nIHtcbiAgICB3aWR0aDogODBweDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG59XG5cbi5kYXNoYm9hcmQgLm5ld3MgaDQge1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBtYXJnaW4tbGVmdDogOTVweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbi5kYXNoYm9hcmQgLm5ld3MgaDQgYSB7XG4gICAgY29sb3I6ICMwMTI5NzA7XG4gICAgdHJhbnNpdGlvbjogMC4zcztcbn1cblxuLmRhc2hib2FyZCAubmV3cyBoNCBhOmhvdmVyIHtcbiAgICBjb2xvcjogIzQxNTRmMTtcbn1cblxuLmRhc2hib2FyZCAubmV3cyBwIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgY29sb3I6ICM3Nzc3Nzc7XG4gICAgbWFyZ2luLWxlZnQ6IDk1cHg7XG59XG5cblxuLmRhc2hib2FyZCAucmVjZW50LXNhbGVzIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG59XG5cbi5kYXNoYm9hcmQgLnJlY2VudC1zYWxlcyAudGFibGUgdGhlYWQge1xuICAgIGJhY2tncm91bmQ6ICNmNmY2ZmU7XG59XG5cbi5kYXNoYm9hcmQgLnJlY2VudC1zYWxlcyAudGFibGUgdGhlYWQgdGgge1xuICAgIGJvcmRlcjogMDtcbn1cblxuLmRhc2hib2FyZCAucmVjZW50LXNhbGVzIC5kYXRhVGFibGUtdG9wIHtcbiAgICBwYWRkaW5nOiAwIDAgMTBweCAwO1xufVxuXG4uZGFzaGJvYXJkIC5yZWNlbnQtc2FsZXMgLmRhdGFUYWJsZS1ib3R0b20ge1xuICAgIHBhZGRpbmc6IDEwcHggMCAwIDA7XG59XG5cblxuLmRhc2hib2FyZCAudG9wLXNlbGxpbmcge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLmRhc2hib2FyZCAudG9wLXNlbGxpbmcgLnRhYmxlIHRoZWFkIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjZmNmZlO1xufVxuXG4uZGFzaGJvYXJkIC50b3Atc2VsbGluZyAudGFibGUgdGhlYWQgdGgge1xuICAgIGJvcmRlcjogMDtcbn1cblxuLmRhc2hib2FyZCAudG9wLXNlbGxpbmcgLnRhYmxlIHRib2R5IHRkIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uZGFzaGJvYXJkIC50b3Atc2VsbGluZyBpbWcge1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBtYXgtd2lkdGg6IDYwcHg7XG59XG5cblxuLmljb25zbGlzdCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgxODBweCwgMWZyKSk7XG4gICAgZ2FwOiAxLjI1cmVtO1xuICAgIHBhZGRpbmctdG9wOiAxNXB4O1xufVxuXG4uaWNvbnNsaXN0IC5pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAjMDEyOTcwO1xuICAgIHBhZGRpbmc6IDE1cHggMDtcbn1cblxuLmljb25zbGlzdCBpIHtcbiAgICBtYXJnaW46IDAuMjVyZW07XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG59XG5cbi5pY29uc2xpc3QgLmxhYmVsIHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tYnMtZm9udC1tb25vc3BhY2UpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDAuMjVyZW07XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgY29sb3I6ICM2NjY7XG59XG5cblxuLnByb2ZpbGUgLnByb2ZpbGUtY2FyZCBpbWcge1xuICAgIG1heC13aWR0aDogMTIwcHg7XG59XG5cbi5wcm9maWxlIC5wcm9maWxlLWNhcmQgaDIge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiAjMmMzODRlO1xuICAgIG1hcmdpbjogMTBweCAwIDAgMDtcbn1cblxuLnByb2ZpbGUgLnByb2ZpbGUtY2FyZCBoMyB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xufVxuXG4ucHJvZmlsZSAucHJvZmlsZS1jYXJkIC5zb2NpYWwtbGlua3MgYSB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb2xvcjogcmdiYSgxLCA0MSwgMTEyLCAwLjUpO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICB0cmFuc2l0aW9uOiAwLjNzO1xufVxuXG4ucHJvZmlsZSAucHJvZmlsZS1jYXJkIC5zb2NpYWwtbGlua3MgYTpob3ZlciB7XG4gICAgY29sb3I6ICMwMTI5NzA7XG59XG5cbi5wcm9maWxlIC5wcm9maWxlLW92ZXJ2aWV3IC5yb3cge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgZm9udC1zaXplOiAxNXB4O1xufVxuXG4ucHJvZmlsZSAucHJvZmlsZS1vdmVydmlldyAuY2FyZC10aXRsZSB7XG4gICAgY29sb3I6ICMwMTI5NzA7XG59XG5cbi5wcm9maWxlIC5wcm9maWxlLW92ZXJ2aWV3IC5sYWJlbCB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogcmdiYSgxLCA0MSwgMTEyLCAwLjYpO1xufVxuXG4ucHJvZmlsZSAucHJvZmlsZS1lZGl0IGxhYmVsIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiByZ2JhKDEsIDQxLCAxMTIsIDAuNik7XG59XG5cbi5wcm9maWxlIC5wcm9maWxlLWVkaXQgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEyMHB4O1xufVxuXG5cbi5mYXEgLmJhc2ljIGg2IHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogIzQxNTRmMTtcbn1cblxuLmZhcSAuYmFzaWMgcCB7XG4gICAgY29sb3I6ICM2OTgwYWE7XG59XG5cblxuLmNvbnRhY3QgLmluZm8tYm94IHtcbiAgICBwYWRkaW5nOiAyOHB4IDMwcHg7XG59XG5cbi5jb250YWN0IC5pbmZvLWJveCBpIHtcbiAgICBmb250LXNpemU6IDM4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgY29sb3I6ICM0MTU0ZjE7XG59XG5cbi5jb250YWN0IC5pbmZvLWJveCBoMyB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGNvbG9yOiAjMDEyOTcwO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbWFyZ2luOiAyMHB4IDAgMTBweCAwO1xufVxuXG4uY29udGFjdCAuaW5mby1ib3ggcCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNvbnRhY3QgLnBocC1lbWFpbC1mb3JtIC5lcnJvci1tZXNzYWdlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQ6ICNlZDNjMGQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmNvbnRhY3QgLnBocC1lbWFpbC1mb3JtIC5zZW50LW1lc3NhZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZDogIzE4ZDI2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMTVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5jb250YWN0IC5waHAtZW1haWwtZm9ybSAubG9hZGluZyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XG59XG5cbi5jb250YWN0IC5waHAtZW1haWwtZm9ybSAubG9hZGluZzpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB3aWR0aDogMjRweDtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gICAgbWFyZ2luOiAwIDEwcHggLTZweCAwO1xuICAgIGJvcmRlcjogM3B4IHNvbGlkICMxOGQyNmU7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogI2VlZTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogYW5pbWF0ZS1sb2FkaW5nIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgICBhbmltYXRpb246IGFuaW1hdGUtbG9hZGluZyAxcyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbi5jb250YWN0IC5waHAtZW1haWwtZm9ybSBpbnB1dCxcbi5jb250YWN0IC5waHAtZW1haWwtZm9ybSB0ZXh0YXJlYSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4uY29udGFjdCAucGhwLWVtYWlsLWZvcm0gaW5wdXQ6Zm9jdXMsXG4uY29udGFjdCAucGhwLWVtYWlsLWZvcm0gdGV4dGFyZWE6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogIzQxNTRmMTtcbn1cblxuLmNvbnRhY3QgLnBocC1lbWFpbC1mb3JtIGlucHV0IHtcbiAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG59XG5cbi5jb250YWN0IC5waHAtZW1haWwtZm9ybSB0ZXh0YXJlYSB7XG4gICAgcGFkZGluZzogMTJweCAxNXB4O1xufVxuXG4uY29udGFjdCAucGhwLWVtYWlsLWZvcm0gYnV0dG9uW3R5cGU9c3VibWl0XSB7XG4gICAgYmFja2dyb3VuZDogIzQxNTRmMTtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMTBweCAzMHB4O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRyYW5zaXRpb246IDAuNHM7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuXG4uY29udGFjdCAucGhwLWVtYWlsLWZvcm0gYnV0dG9uW3R5cGU9c3VibWl0XTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogIzU5NjlmMztcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGFuaW1hdGUtbG9hZGluZyB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgYW5pbWF0ZS1sb2FkaW5nIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIH1cbn1cblxuXG4uZXJyb3ItNDA0IHtcbiAgICBwYWRkaW5nOiAzMHB4O1xufVxuXG4uZXJyb3ItNDA0IGgxIHtcbiAgICBmb250LXNpemU6IDE4MHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6ICM0MTU0ZjE7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBsaW5lLWhlaWdodDogMTUwcHg7XG59XG5cbi5lcnJvci00MDQgaDIge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiAjMDEyOTcwO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5lcnJvci00MDQgLmJ0biB7XG4gICAgYmFja2dyb3VuZDogIzUxNjc4ZjtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBwYWRkaW5nOiA4cHggMzBweDtcbn1cblxuLmVycm9yLTQwNCAuYnRuOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjM2U0ZjZmO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAuZXJyb3ItNDA0IGltZyB7XG4gICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgIH1cbn1cblxuXG4uZm9vdGVyIHtcbiAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS11aS1ib3JkZXIpO1xufVxuXG4uZm9vdGVyIC5jb3B5cmlnaHQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dC1tdXRlZCk7XG59XG5cbi5mb290ZXIgLmNyZWRpdHMge1xuICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dC1zb2Z0KTtcbn1cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICB3aWR0aDogMThweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgYWNjZW50LWNvbG9yOiB2YXIoLS11aS1wcmltYXJ5KTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tdWktcHJpbWFyeSk7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuXG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpob3ZlciB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgNHB4IHJnYmEoMzcsIDk5LCAyMzUsIDAuMTYpO1xufVxuXG4udGV4dC1wcmluY2lwYWwge1xuICAgIGNvbG9yOiB2YXIoLS11aS1oZWFkaW5nKSAhaW1wb3J0YW50O1xufVxuXG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkIHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgdmFyKC0tdWktcHJpbWFyeSk7XG4gICAgb3V0bGluZS1vZmZzZXQ6IDFweDtcbiAgICBwYWRkaW5nOiA1cHg7XG59XG5cbmlucHV0LFxudGV4dGFyZWEsXG5zZWxlY3Qge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXVpLWJvcmRlci1zdHJvbmcpICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tdWktcmFkaXVzLXNtKTtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdWktc3VyZmFjZSk7XG59XG5cbmlucHV0OmZvY3VzLFxudGV4dGFyZWE6Zm9jdXMsXG5zZWxlY3Q6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tdWktYWNjZW50KSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCB2YXIoLS11aS1hY2NlbnQtcmluZykgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aS1zdXJmYWNlKTtcbn1cblxuXG5cblxuXG5pbnB1dDotd2Via2l0LWF1dG9maWxsLFxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbDpob3ZlciwgXG5pbnB1dDotd2Via2l0LWF1dG9maWxsOmZvY3VzLFxudGV4dGFyZWE6LXdlYmtpdC1hdXRvZmlsbCxcbnRleHRhcmVhOi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsXG50ZXh0YXJlYTotd2Via2l0LWF1dG9maWxsOmZvY3VzLFxuc2VsZWN0Oi13ZWJraXQtYXV0b2ZpbGwsXG5zZWxlY3Q6LXdlYmtpdC1hdXRvZmlsbDpob3ZlcixcbnNlbGVjdDotd2Via2l0LWF1dG9maWxsOmZvY3VzIHtcbiAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDBweCAxMDAwcHggIzEyMTQxNyBpbnNldCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IDAgMCAwcHggMTAwMHB4ICMxMjE0MTcgaW5zZXQgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciA1MDAwcyBlYXNlLWluLW91dCAwcztcbn1cblxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyB7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMHB4IDEwMDBweCAjMTIxNDE3IGluc2V0LCAwIDAgMCA0cHggcmdiYSgyNTUsIDIwNCwgMCwgMC4xKSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogI0ZGQ0MwMCAhaW1wb3J0YW50O1xufVxuXG5cblxuXG5cbi5tb2RhbC1jb250ZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aS1zdXJmYWNlKSAhaW1wb3J0YW50OyBcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS11aS1ib3JkZXItc3Ryb25nKSAhaW1wb3J0YW50OyBcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS11aS1yYWRpdXMtbGcpICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tdWktc2hhZG93LW1kKSAhaW1wb3J0YW50O1xufVxuXG4udWktYXBwLW1vZGFsIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTQ4LCAxNjMsIDE4NCwgMC4xOCkgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgzMCwgMzMsIDM3LCAwLjk4KSAwJSwgcmdiYSgyMCwgMjMsIDI3LCAwLjk4KSAxMDAlKSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IDAgMjRweCA2MHB4IHJnYmEoMCwgMCwgMCwgMC40NSkgIWltcG9ydGFudDtcbn1cblxuXG4ubW9kYWwtaGVhZGVyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tdWktYm9yZGVyKSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpLW5hdi1iZykgIWltcG9ydGFudDsgXG4gICAgcGFkZGluZzogMS4ycmVtIDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4udWktYXBwLW1vZGFsIC5tb2RhbC1oZWFkZXIge1xuICAgIHBhZGRpbmc6IDFyZW0gMS4xNXJlbSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDE0OCwgMTYzLCAxODQsIDAuMTYpICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAzKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAxKSAxMDAlKSAhaW1wb3J0YW50O1xufVxuXG4ubW9kYWwtdGl0bGUge1xuICAgIGNvbG9yOiB2YXIoLS11aS1oZWFkaW5nKSAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEuMXJlbSAhaW1wb3J0YW50O1xufVxuXG4udWktYXBwLW1vZGFsIC5tb2RhbC10aXRsZSB7XG4gICAgY29sb3I6IHZhcigtLXVpLWhlYWRpbmcpICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDgwMCAhaW1wb3J0YW50O1xuICAgIGxldHRlci1zcGFjaW5nOiAuMDFlbTtcbn1cblxuXG4ubW9kYWwtYm9keSB7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQpICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi51aS1hcHAtbW9kYWwgLm1vZGFsLWJvZHkge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgXG59XG5cblxuLm1vZGFsLWZvb3RlciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXVpLWJvcmRlcikgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aS1uYXYtYmcpICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMXJlbSAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnVpLWFwcC1tb2RhbCAubW9kYWwtZm9vdGVyIHtcbiAgICBwYWRkaW5nOiAwLjlyZW0gMS4xNXJlbSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDE0OCwgMTYzLCAxODQsIDAuMTYpICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAxKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAyKSAxMDAlKSAhaW1wb3J0YW50O1xufVxuXG5cbi5tb2RhbC1ib2R5IC5mb3JtLWNvbnRyb2wsXG4ubW9kYWwtYm9keSAuZm9ybS1zZWxlY3Qge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSkgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS11aS1ib3JkZXItc3Ryb25nKSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG59XG5cbi51aS1hcHAtbW9kYWwgLmZvcm0tbGFiZWwge1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0LW11dGVkKTtcbiAgICBmb250LXNpemU6IDAuNzJyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLjA0ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogLjM1cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi51aS1hcHAtbW9kYWwgLmZvcm0tY29udHJvbCxcbi51aS1hcHAtbW9kYWwgLmZvcm0tc2VsZWN0LFxuLnVpLWFwcC1tb2RhbCBzZWxlY3Qge1xuICAgIG1pbi1oZWlnaHQ6IDQycHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwLjYycmVtIDAuOHJlbSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHggIWltcG9ydGFudDtcbn1cblxuLnVpLWFwcC1tb2RhbCAuaW5wdXQtZ3JvdXAge1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xufVxuXG4udWktYXBwLW1vZGFsIC5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wsXG4udWktYXBwLW1vZGFsIC5pbnB1dC1ncm91cCA+IC5mb3JtLXNlbGVjdCxcbi51aS1hcHAtbW9kYWwgLmlucHV0LWdyb3VwID4gc2VsZWN0IHtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4ICFpbXBvcnRhbnQ7XG59XG5cblxuLm1vZGFsLWhlYWRlciAuYnRuLWNsb3NlIHtcbiAgICBmaWx0ZXI6IGludmVydCgwLjk0KSBncmF5c2NhbGUoMTAwJSkgYnJpZ2h0bmVzcygxNzUlKTtcbn1cblxuLm1vZGFsIC5idG4tY2xvc2Uge1xuICAgIHdpZHRoOiAxLjk1cmVtO1xuICAgIGhlaWdodDogMS45NXJlbTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyMDQsIDAsIDAuMjIpO1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNik7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiA1OCUgNTglO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLCB0cmFuc2Zvcm0gMC4xNXMgZWFzZSwgYm94LXNoYWRvdyAwLjE1cyBlYXNlO1xufVxuXG4ubW9kYWwgLmJ0bi1jbG9zZTpob3Zlcixcbi5tb2RhbCAuYnRuLWNsb3NlOmZvY3VzLXZpc2libGUge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIyKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEwKTtcbn1cblxuXG5cbi5ncnVwb3Mtc2hlbGwge1xuICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtO1xufVxuXG4uZ3J1cG9zLWhlYWRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMC4zNXJlbTtcbn1cblxuLmdydXBvcy10aXRsZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGNvbG9yOiB2YXIoLS11aS1oZWFkaW5nKTtcbiAgICBmb250LXdlaWdodDogODAwO1xufVxuXG4uZ3J1cG9zLXN1YnRpdGxlIHtcbiAgICBtYXJnaW46IDAuMnJlbSAwIDA7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQtbXV0ZWQpO1xuICAgIGZvbnQtc2l6ZTogMC45MnJlbTtcbn1cblxuLmdydXBvcy10b29sYmFyLXdyYXAge1xuICAgIG1hcmdpbi10b3A6IDAuNzVyZW07XG59XG5cbi5ncnVwb3MtcGFuZWwge1xuICAgIG1hcmdpbi10b3A6IDAuNDVyZW07XG59XG5cbi5ncnVwb3MtcGFuZWwgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHtcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xufVxuXG4uZ3J1cG9zLXBhbmVsIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZDpsYXN0LWNoaWxkIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uZ3J1cG9zLXBhbmVsIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZDpsYXN0LWNoaWxkIC5idG4ge1xuICAgIG1pbi13aWR0aDogMDtcbn1cblxuLmdydXBvcy1tb2RhbC1kaWFsb2cge1xuICAgIG1heC13aWR0aDogMTE4MHB4O1xufVxuXG4uZ3J1cG9zLW1vZGFsLWNvbnRlbnQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNDgsIDE2MywgMTg0LCAwLjE4KSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHggIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDMwLCAzMywgMzcsIDAuOTgpIDAlLCByZ2JhKDIwLCAyMywgMjcsIDAuOTgpIDEwMCUpICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogMCAyNHB4IDYwcHggcmdiYSgwLCAwLCAwLCAwLjQ1KSAhaW1wb3J0YW50O1xufVxuXG4uZ3J1cG9zLW1vZGFsLWhlYWRlciB7XG4gICAgcGFkZGluZzogMXJlbSAxLjI1cmVtICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTQ4LCAxNjMsIDE4NCwgMC4xNikgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDMpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDEpIDEwMCUpICFpbXBvcnRhbnQ7XG59XG5cbi5ncnVwb3MtbW9kYWwtYm9keSB7XG4gICAgcGFkZGluZzogMS4yNXJlbSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgdG9wLCByZ2JhKDI1NSwgMjA0LCAwLCAwLjA1KSwgdHJhbnNwYXJlbnQgMzIlKSwgdmFyKC0tdWktc3VyZmFjZSk7XG59XG5cbi5ncnVwb3MtbW9kYWwtYm9keSAuZm9ybS1sYWJlbCxcbi5ncnVwb3MtbW9kYWwtYm9keSAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQtbXV0ZWQpO1xufVxuXG4uZ3J1cG9zLW1vZGFsLWJvZHkgLmZvcm0tY29udHJvbCxcbi5ncnVwb3MtbW9kYWwtYm9keSAuZm9ybS1zZWxlY3Qge1xuICAgIG1pbi1oZWlnaHQ6IDQycHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcbn1cblxuLmdydXBvcy1tb2RhbC1jYXJkIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE0OCwgMTYzLCAxODQsIDAuMTYpICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMThweCAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMjUpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDEyKSAxMDAlKSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IHZhcigtLXVpLXNoYWRvdy1zb2Z0KTtcbn1cblxuLmdydXBvcy1tb2RhbC1jYXJkIC5jYXJkLWJvZHkge1xuICAgIHBhZGRpbmc6IDFyZW0gMXJlbSAxLjFyZW07XG59XG5cbi5ncnVwb3MtbW9kYWwtc2VjdGlvbi10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC45cmVtO1xufVxuXG4uZ3J1cG9zLW1vZGFsLXNlY3Rpb24tdGl0bGUgLmNhcmQtdGl0bGUge1xuICAgIGNvbG9yOiB2YXIoLS11aS1oZWFkaW5nKTtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbn1cblxuLmdydXBvcy1tb2RhbC1zZWN0aW9uLXRpdGxlIHAge1xuICAgIG1hcmdpbi10b3A6IDAuMXJlbTtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dC1tdXRlZCk7XG4gICAgZm9udC1zaXplOiAwLjg0cmVtO1xufVxuXG4uZ3J1cG9zLW1vZGFsLXRhYnMge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMTQ4LCAxNjMsIDE4NCwgMC4xNikgIWltcG9ydGFudDtcbn1cblxuLmdydXBvcy1tb2RhbC10YWJzIC5uYXYtbGluayB7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQtbXV0ZWQpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMik7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDE0OCwgMTYzLCAxODQsIDAuMTYpICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMTJweCAxMnB4IDAgMDtcbiAgICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uZ3J1cG9zLW1vZGFsLXRhYnMgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLXVpLWhlYWRpbmcpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLXN1cmZhY2UpO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLXVpLXN1cmZhY2UpICFpbXBvcnRhbnQ7XG59XG5cbi5ncnVwb3MtbW9kYWwtdGFicyAubmF2LWxpbms6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS11aS1oZWFkaW5nKTtcbn1cblxuLmdydXBvcy1tb2RhbC10YWJzICsgLnRhYi1jb250ZW50IHtcbiAgICBwYWRkaW5nLXRvcDogMC43NXJlbTtcbn1cblxuLmdydXBvcy1tb2RhbC10YWJzICsgLnRhYi1jb250ZW50IC5jYXJkIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE0OCwgMTYzLCAxODQsIDAuMTYpO1xuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAyKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAxKSAxMDAlKTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS11aS1zaGFkb3ctc29mdCk7XG59XG5cbi5ncnVwb3MtbW9kYWwtdGFicyArIC50YWItY29udGVudCAuY2FyZC1ib2R5IHtcbiAgICBwYWRkaW5nOiAwLjk1cmVtO1xufVxuXG4uZ3J1cG9zLW1vZGFsLXRhYnMgKyAudGFiLWNvbnRlbnQgLmdydXBvcy1wZXJtaXNzaW9ucy1jYXJkIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDE4KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAwOCkgMTAwJSk7XG59XG5cbi5ncnVwb3MtbW9kYWwtdGFicyArIC50YWItY29udGVudCAuZ3J1cG9zLXBlcm1pc3Npb25zLXRhYmxlLXdyYXAge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNDgsIDE2MywgMTg0LCAwLjE0KTtcbiAgICBib3JkZXItcmFkaXVzOiAxNHB4O1xufVxuXG4uZ3J1cG9zLW1vZGFsLXRhYnMgKyAudGFiLWNvbnRlbnQgLnRhYmxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZ3J1cG9zLW1vZGFsLXRhYnMgKyAudGFiLWNvbnRlbnQgLmdydXBvcy1wZXJtaXNzaW9ucy10YWJsZSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdWktc3VyZmFjZSk7XG59XG5cbi5ncnVwb3MtbW9kYWwtdGFicyArIC50YWItY29udGVudCAudGFibGUgdGhlYWQgdGgge1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0LW11dGVkKTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDIpICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTQ4LCAxNjMsIDE4NCwgMC4xNik7XG59XG5cbi5ncnVwb3MtbW9kYWwtdGFicyArIC50YWItY29udGVudCAuZ3J1cG9zLXBlcm1pc3Npb25zLXRhYmxlIHRoZWFkIHRoLFxuLmdydXBvcy1tb2RhbC10YWJzICsgLnRhYi1jb250ZW50IC5ncnVwb3MtcGVybWlzc2lvbnMtdGFibGUgdGJvZHkgdGQsXG4uZ3J1cG9zLW1vZGFsLXRhYnMgKyAudGFiLWNvbnRlbnQgLmdydXBvcy1wZXJtaXNzaW9ucy10YWJsZSB0Ym9keSB0aCB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdWktc3VyZmFjZSkgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMTQ4LCAxNjMsIDE4NCwgMC4xMikgIWltcG9ydGFudDtcbn1cblxuLmdydXBvcy1tb2RhbC10YWJzICsgLnRhYi1jb250ZW50IC5ncnVwb3MtcGVybWlzc2lvbnMtdGFibGUgdGJvZHkgdHI6bnRoLWNoaWxkKGV2ZW4pIHRkLFxuLmdydXBvcy1tb2RhbC10YWJzICsgLnRhYi1jb250ZW50IC5ncnVwb3MtcGVybWlzc2lvbnMtdGFibGUgdGJvZHkgdHI6bnRoLWNoaWxkKGV2ZW4pIHRoIHtcbiAgICBiYWNrZ3JvdW5kOiAjMjQyODJkICFpbXBvcnRhbnQ7XG59XG5cbi5ncnVwb3MtbW9kYWwtdGFicyArIC50YWItY29udGVudCAuZ3J1cG9zLXBlcm1pc3Npb25zLXRhYmxlIHRib2R5IHRyOmhvdmVyIHRkLFxuLmdydXBvcy1tb2RhbC10YWJzICsgLnRhYi1jb250ZW50IC5ncnVwb3MtcGVybWlzc2lvbnMtdGFibGUgdGJvZHkgdHI6aG92ZXIgdGgge1xuICAgIGJhY2tncm91bmQ6ICMyYjMwMzYgIWltcG9ydGFudDtcbn1cblxuLmdydXBvcy1tb2RhbC10YWJzICsgLnRhYi1jb250ZW50IC50YWJsZSB0Ym9keSB0ZCxcbi5ncnVwb3MtbW9kYWwtdGFicyArIC50YWItY29udGVudCAudGFibGUgdGJvZHkgdGgge1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0KTtcbn1cblxuLmdydXBvcy1tb2RhbC10YWJzICsgLnRhYi1jb250ZW50IC5ncnVwb3MtcGVybWlzc2lvbnMtdGFibGUgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBhY2NlbnQtY29sb3I6IHZhcigtLXVpLXByaW1hcnkpO1xufVxuXG4uZ3J1cG9zLW1vZGFsLWZvb3RlciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMTQ4LCAxNjMsIDE4NCwgMC4xNikgIWltcG9ydGFudDtcbn1cblxuXG5cbi5hY2NvdW50LXNoZWxsIHtcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbTtcbn1cblxuLmFjY291bnQtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiAwLjM1cmVtO1xufVxuXG4uYWNjb3VudC10aXRsZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGNvbG9yOiB2YXIoLS11aS1oZWFkaW5nKTtcbiAgICBmb250LXdlaWdodDogODAwO1xufVxuXG4uYWNjb3VudC1zdWJ0aXRsZSB7XG4gICAgbWFyZ2luOiAwLjJyZW0gMCAwO1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0LW11dGVkKTtcbiAgICBmb250LXNpemU6IDAuOTJyZW07XG59XG5cbi5hY2NvdW50LWNvbnRlbnQge1xuICAgIHBhZGRpbmctdG9wOiAwLjVyZW07XG59XG5cbi5hY2NvdW50LXNldHVwLWFsZXJ0IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDU5LCAxMzAsIDI0NiwgMC4xOCk7XG4gICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCB2YXIoLS11aS1pbmZvKTtcbiAgICBib3JkZXItcmFkaXVzOiAxOHB4O1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMTQsIDE2NSwgMjMzLCAwLjA4KSAwJSwgcmdiYSgzMCwgMzMsIDM3LCAwLjk2KSAxMDAlKTtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dCk7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tdWktc2hhZG93LXNvZnQpO1xufVxuXG4uYWNjb3VudC1zZXR1cC1pY29uIHtcbiAgICBjb2xvcjogdmFyKC0tdWktaW5mbyk7XG59XG5cbi5hY2NvdW50LXNldHVwLXRpdGxlIHtcbiAgICBjb2xvcjogdmFyKC0tdWktaGVhZGluZyk7XG59XG5cbi5hY2NvdW50LXNldHVwLWJveCB7XG4gICAgbWFyZ2luLXRvcDogMC44cmVtO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTQ4LCAxNjMsIDE4NCwgMC4xNik7XG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDMwLCAzMywgMzcsIDAuODgpO1xufVxuXG4uYWNjb3VudC1zZXR1cC1ib3ggcCxcbi5hY2NvdW50LXNldHVwLWJveCBsaSB7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQtbXV0ZWQpO1xufVxuXG4uYWNjb3VudC1zZXR1cC1ib3ggc3Ryb25nIHtcbiAgICBjb2xvcjogdmFyKC0tdWktaGVhZGluZyk7XG59XG5cbi5hY2NvdW50LWd1aWRlLWl0ZW0ge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ1O1xufVxuXG4uYWNjb3VudC1ndWlkZS1pbnB1dCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMC4zNXJlbTtcbiAgICBwYWRkaW5nOiAwLjFyZW0gMC40NXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgxNSwgMjMsIDQyLCAwLjkyKTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE0OCwgMTYzLCAxODQsIDAuMjgpO1xuICAgIGNvbG9yOiAjZjhmYWZjO1xuICAgIGZvbnQtc2l6ZTogMC43OHJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAyZW07XG59XG5cbi5hY2NvdW50LXNldHVwLWhpbnQge1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0LXNvZnQpO1xufVxuXG4uYWNjb3VudC1wYXltZW50cy1jYXJkIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE0OCwgMTYzLCAxODQsIDAuMTYpO1xuICAgIGJvcmRlci1yYWRpdXM6IDE4cHg7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAyNSkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMSkgMTAwJSk7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tdWktc2hhZG93LXNvZnQpO1xufVxuXG4uYWNjb3VudC1wYXltZW50cy1ib2R5IHtcbiAgICBwYWRkaW5nOiAxLjE1cmVtO1xufVxuXG4uYWNjb3VudC1jYXJkLWhlYWQge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5hY2NvdW50LWNhcmQtaGVhZCAuY2FyZC10aXRsZSB7XG4gICAgY29sb3I6IHZhcigtLXVpLWhlYWRpbmcpO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG59XG5cbi5hY2NvdW50LWNhcmQtaGVhZCBwIHtcbiAgICBtYXJnaW4tdG9wOiAwLjE1cmVtO1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0LW11dGVkKTtcbiAgICBmb250LXNpemU6IDAuODRyZW07XG59XG5cbi5hY2NvdW50LXBheW1lbnRzLWNhcmQgLmZvcm0tbGFiZWwsXG4uYWNjb3VudC1wYXltZW50cy1jYXJkIC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dC1tdXRlZCk7XG59XG5cbi5hY2NvdW50LXBheW1lbnRzLWNhcmQgLmZvcm0tY29udHJvbCxcbi5hY2NvdW50LXBheW1lbnRzLWNhcmQgLmZvcm0tc2VsZWN0IHtcbiAgICBtaW4taGVpZ2h0OiA0MnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG59XG5cbi5hY2NvdW50LWFjdGlvbnMgLmJ0biB7XG4gICAgbWluLWhlaWdodDogNDBweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5hY2NvdW50LXByZXZpZXctY2FyZCB7XG4gICAgd2lkdGg6IG1pbigxMDAlLCAxOHJlbSk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE0OCwgMTYzLCAxODQsIDAuMTYpO1xuICAgIGJvcmRlci1yYWRpdXM6IDE4cHg7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAzKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAxKSAxMDAlKTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS11aS1zaGFkb3ctc29mdCk7XG59XG5cbi5hY2NvdW50LXByZXZpZXctaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDIzMHB4O1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIGJhY2tncm91bmQ6ICMxMjE0MTc7XG59XG5cbi5hY2NvdW50LXByZXZpZXctY2FwdGlvbiB7XG4gICAgcGFkZGluZzogMC44cmVtIDAuOXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6IHZhcigtLXVpLWhlYWRpbmcpO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMTQ4LCAxNjMsIDE4NCwgMC4xMik7XG4gICAgYmFja2dyb3VuZDogcmdiYSgzMCwgMzMsIDM3LCAwLjkyKTtcbn1cblxuLmFjY291bnQtcGF5bWVudHMtY2FyZCAuZm9ybS1jb250cm9sOmZvY3VzLFxuLmFjY291bnQtcGF5bWVudHMtY2FyZCAuZm9ybS1zZWxlY3Q6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tdWktcHJpbWFyeSk7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMC4xOHJlbSB2YXIoLS11aS1hY2NlbnQtcmluZyk7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIC5hY2NvdW50LXBheW1lbnRzLWJvZHkge1xuICAgICAgICBwYWRkaW5nOiAwLjk1cmVtO1xuICAgIH1cblxuICAgIC5hY2NvdW50LXNldHVwLWFsZXJ0IHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgICB9XG5cbiAgICAuYWNjb3VudC1wcmV2aWV3LWltZyB7XG4gICAgICAgIGhlaWdodDogMTgwcHg7XG4gICAgfVxufVxuXG5cblxuLnRyYWJhamFkb3Jlcy1zaGVsbCB7XG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW07XG59XG5cbi50cmFiYWphZG9yZXMtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiAwLjM1cmVtO1xufVxuXG4udHJhYmFqYWRvcmVzLXRpdGxlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgY29sb3I6IHZhcigtLXVpLWhlYWRpbmcpO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG59XG5cbi50cmFiYWphZG9yZXMtc3VidGl0bGUge1xuICAgIG1hcmdpbjogMC4ycmVtIDAgMDtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dC1tdXRlZCk7XG4gICAgZm9udC1zaXplOiAwLjkycmVtO1xufVxuXG4udHJhYmFqYWRvcmVzLXRvb2xiYXItd3JhcCB7XG4gICAgbWFyZ2luLXRvcDogMC43NXJlbTtcbn1cblxuLnRyYWJhamFkb3Jlcy1wYW5lbCB7XG4gICAgbWFyZ2luLXRvcDogMC40NXJlbTtcbiAgICBwYWRkaW5nOiAwLjQ1cmVtO1xufVxuXG4udHJhYmFqYWRvcmVzLXBhbmVsIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB7XG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcbn1cblxuLnRyYWJhamFkb3Jlcy1wYW5lbCAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGgsXG4udHJhYmFqYWRvcmVzLXBhbmVsIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCB7XG4gICAgcGFkZGluZy1pbmxpbmU6IDAuNTVyZW07XG59XG5cbi50cmFiYWphZG9yZXMtcGFuZWwgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoIC50aC1pbm5lciB7XG4gICAgZm9udC1zaXplOiAwLjcycmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG59XG5cbi50cmFiYWphZG9yZXMtcGFuZWwgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIHtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbn1cblxuLnRyYWJhamFkb3Jlcy1wYW5lbCAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDM4cHg7XG4gICAgbWF4LWhlaWdodDogMzhweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4udHJhYmFqYWRvcmVzLXBhbmVsIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZDpsYXN0LWNoaWxkIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4udHJhYmFqYWRvcmVzLXBhbmVsIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZDpsYXN0LWNoaWxkIC5idG4ge1xuICAgIG1pbi13aWR0aDogMDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgLnRyYWJhamFkb3Jlcy1wYW5lbCB7XG4gICAgICAgIHBhZGRpbmc6IDAuMzVyZW07XG4gICAgfVxuXG4gICAgLnRyYWJhamFkb3Jlcy1wYW5lbCAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgLnRhYmxlIHRoZWFkIHRoLmRldGFpbCxcbiAgICAudHJhYmFqYWRvcmVzLXBhbmVsIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciAudGFibGUgdGJvZHkgPiB0cltkYXRhLWluZGV4XSA+IHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgd2lkdGg6IDQycHggIWltcG9ydGFudDtcbiAgICAgICAgbWluLXdpZHRoOiA0MnB4O1xuICAgICAgICBtYXgtd2lkdGg6IDQycHg7XG4gICAgfVxuXG4gICAgLnRyYWJhamFkb3Jlcy1wYW5lbCAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGgsXG4gICAgLnRyYWJhamFkb3Jlcy1wYW5lbCAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQge1xuICAgICAgICBwYWRkaW5nLWlubGluZTogMC40NXJlbTtcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIC5ncnVwb3MtbW9kYWwtZGlhbG9nIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDAuNzVyZW07XG4gICAgfVxuXG4gICAgLmdydXBvcy1tb2RhbC1ib2R5IHtcbiAgICAgICAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5ncnVwb3MtbW9kYWwtY2FyZCAuY2FyZC1ib2R5IHtcbiAgICAgICAgcGFkZGluZzogMC44NXJlbTtcbiAgICB9XG5cbiAgICAuZ3J1cG9zLW1vZGFsLXRhYnMgLm5hdi1saW5rIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjg1cmVtO1xuICAgIH1cbn1cblxuXG5cbi5wcm9maWxlLXNoZWxsIHtcbiAgICBwYWRkaW5nLXRvcDogMC4yNXJlbTtcbn1cblxuLnByb2ZpbGUtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiAwLjM1cmVtO1xufVxuXG4ucHJvZmlsZS10aXRsZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGNvbG9yOiB2YXIoLS11aS1oZWFkaW5nKTtcbiAgICBmb250LXdlaWdodDogODAwO1xufVxuXG4ucHJvZmlsZS1zdWJ0aXRsZSB7XG4gICAgbWFyZ2luOiAwLjJyZW0gMCAwO1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0LW11dGVkKTtcbiAgICBmb250LXNpemU6IDAuOTJyZW07XG59XG5cbi5wcm9maWxlLWNhcmQtc2hlbGwge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTQ4LCAxNjMsIDE4NCwgMC4xNik7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDI1KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAxKSAxMDAlKTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS11aS1zaGFkb3ctc29mdCk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnByb2ZpbGUtY2FyZC1ib2R5IHtcbiAgICBwYWRkaW5nOiAxLjE1cmVtO1xufVxuXG4ucHJvZmlsZS10b3AtZ3JpZCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgyNDBweCwgMzIwcHgpIG1pbm1heCgwLCAxZnIpO1xuICAgIGdhcDogMXJlbTtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4ucHJvZmlsZS1hdmF0YXItcGFuZWwsXG4ucHJvZmlsZS1mb3JtLXBhbmVsIHtcbiAgICBtaW4td2lkdGg6IDA7XG59XG5cbi5wcm9maWxlLWF2YXRhci1mcmFtZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE0OCwgMTYzLCAxODQsIDAuMTYpO1xuICAgIGJvcmRlci1yYWRpdXM6IDE4cHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAyKTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS11aS1zaGFkb3ctc29mdCk7XG59XG5cbi5wcm9maWxlLWF2YXRhci1pbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDI4MHB4O1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIGJhY2tncm91bmQ6ICMxMjE0MTc7XG59XG5cbi5wcm9maWxlLWF2YXRhci1jYXB0aW9uIHtcbiAgICBwYWRkaW5nOiAwLjg1cmVtIDAuOTVyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiB2YXIoLS11aS1oZWFkaW5nKTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDE0OCwgMTYzLCAxODQsIDAuMTIpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMzAsIDMzLCAzNywgMC45Mik7XG59XG5cbi5wcm9maWxlLWZvcm0tcGFuZWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAxcmVtIDEuMXJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE0OCwgMTYzLCAxODQsIDAuMTYpO1xuICAgIGJvcmRlci1yYWRpdXM6IDE4cHg7XG4gICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCB0b3AsIHJnYmEoMjU1LCAyMDQsIDAsIDAuMDQpLCB0cmFuc3BhcmVudCAzNiUpLCByZ2JhKDMwLCAzMywgMzcsIDAuODgpO1xufVxuXG4ucHJvZmlsZS1jYXJkLXRpdGxlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgY29sb3I6IHZhcigtLXVpLWhlYWRpbmcpO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG59XG5cbi5wcm9maWxlLWNhcmQtc3VidGl0bGUge1xuICAgIG1hcmdpbjogMC4ycmVtIDAgMDtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dC1tdXRlZCk7XG4gICAgZm9udC1zaXplOiAwLjg0cmVtO1xufVxuXG4ucHJvZmlsZS1mb3JtIC5mb3JtLWxhYmVsLFxuLnByb2ZpbGUtZm9ybSAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQtbXV0ZWQpO1xufVxuXG4ucHJvZmlsZS1mb3JtIC5mb3JtLWNvbnRyb2wsXG4ucHJvZmlsZS1mb3JtIC5mb3JtLXNlbGVjdCB7XG4gICAgbWluLWhlaWdodDogNDJweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xufVxuXG4ucHJvZmlsZS1mb3JtIC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4ucHJvZmlsZS1mb3JtIC5mb3JtLXNlbGVjdDpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS11aS1wcmltYXJ5KTtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAwLjE4cmVtIHZhcigtLXVpLWFjY2VudC1yaW5nKTtcbn1cblxuLnByb2ZpbGUtYWN0aW9ucyAuYnRuIHtcbiAgICBtaW4taGVpZ2h0OiA0MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLnByb2ZpbGUtZm9ybSAjZGl2X2NhcmdvIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAucHJvZmlsZS10b3AtZ3JpZCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgLnByb2ZpbGUtY2FyZC1ib2R5IHtcbiAgICAgICAgcGFkZGluZzogMC45NXJlbTtcbiAgICB9XG5cbiAgICAucHJvZmlsZS1hdmF0YXItaW1nIHtcbiAgICAgICAgbWluLWhlaWdodDogMjIwcHg7XG4gICAgfVxufVxuXG5cbi5wcm9maWxlLXNoZWxsLWNvbXBhY3Qge1xuICAgIG1heC13aWR0aDogODUwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG59XG5cblxuLnByb2ZpbGUtY29tcGFjdC1oZWFkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1uYXYtYmcpOyBcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS11aS1ib3JkZXItc3Ryb25nKTtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgIHBhZGRpbmc6IDJyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMS41cmVtO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm94LXNoYWRvdzogdmFyKC0tdWktc2hhZG93LW1kKTtcbn1cblxuLmhlYWRlci1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwOyBsZWZ0OiAwOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiA1cHg7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdWktcHJpbWFyeSk7IFxufVxuXG5cblxuLmF2YXRhci13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDkwcHg7XG4gICAgaGVpZ2h0OiA5MHB4O1xufVxuXG4uYXZhdGFyLWltZy1jb21wYWN0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMThweDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1iZyk7XG59XG5cbi5hdmF0YXItZWRpdC1idG4ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IC01cHg7XG4gICAgcmlnaHQ6IC01cHg7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdWktcHJpbWFyeSk7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgd2lkdGg6IDI4cHg7XG4gICAgaGVpZ2h0OiAyOHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAwLjhyZW07XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLXVpLW5hdi1iZyk7XG59XG5cbi5iYWRnZS1pbmR1c3RyaWFsIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1hY2NlbnQtc29mdCk7XG4gICAgY29sb3I6IHZhcigtLXVpLXByaW1hcnkpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXVpLXByaW1hcnkpO1xuICAgIHBhZGRpbmc6IDJweCAxMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBmb250LXNpemU6IDAuN3JlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG59XG5cblxuLmNvbXBhY3Qtc2VjdGlvbiB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdWktc3VyZmFjZSk7IFxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXVpLWJvcmRlci1zdHJvbmcpO1xuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gICAgcGFkZGluZzogMS41cmVtO1xufVxuXG5cblxuXG4uY29tcGFjdC1sYWJlbCB7XG4gICAgZm9udC1zaXplOiAwLjdyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dC1zb2Z0KTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNHJlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNvbXBhY3QtaW5wdXQsIC5jb21wYWN0LXRleHRhcmVhIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1uYXYtYmcpICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdWktYm9yZGVyKSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAuNnJlbSAwLjhyZW0gIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDAuOXJlbSAhaW1wb3J0YW50O1xufVxuXG4uY29tcGFjdC1pbnB1dDpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS11aS1wcmltYXJ5KSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCB2YXIoLS11aS1hY2NlbnQtcmluZykgIWltcG9ydGFudDtcbn1cblxuLmNvbXBhY3Qtc2VsZWN0LFxuLnVpLWNvbXBhY3QtZHJvcGRvd24tc2NvcGUgLmZvcm0tY29udHJvbCxcbi51aS1jb21wYWN0LWRyb3Bkb3duLXNjb3BlIC5mb3JtLXNlbGVjdCxcbi51aS1jb21wYWN0LWRyb3Bkb3duLXNjb3BlIHNlbGVjdCB7XG4gICAgbWluLWhlaWdodDogNDJweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAuNjJyZW0gMC44cmVtICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMTJweCAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSkgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS11aS1ib3JkZXItc3Ryb25nKSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0KSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBjb2xvci1zY2hlbWU6IGRhcms7XG59XG5cbi5jb21wYWN0LXNlbGVjdDpmb2N1cyxcbi51aS1jb21wYWN0LWRyb3Bkb3duLXNjb3BlIC5mb3JtLWNvbnRyb2w6Zm9jdXMsXG4udWktY29tcGFjdC1kcm9wZG93bi1zY29wZSAuZm9ybS1zZWxlY3Q6Zm9jdXMsXG4udWktY29tcGFjdC1kcm9wZG93bi1zY29wZSBzZWxlY3Q6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tdWktcHJpbWFyeSkgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggdmFyKC0tdWktYWNjZW50LXJpbmcpICFpbXBvcnRhbnQ7XG59XG5cbi51aS1jb21wYWN0LWRyb3Bkb3duLXNjb3BlIC5pbnB1dC1ncm91cCB7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG59XG5cbi51aS1jb21wYWN0LWRyb3Bkb3duLXNjb3BlIC5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wsXG4udWktY29tcGFjdC1kcm9wZG93bi1zY29wZSAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1zZWxlY3QsXG4udWktY29tcGFjdC1kcm9wZG93bi1zY29wZSAuaW5wdXQtZ3JvdXAgPiBzZWxlY3Qge1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHggIWltcG9ydGFudDtcbn1cblxuLnVpLWNvbXBhY3QtZHJvcGRvd24tc2NvcGUgLnVpLWF1dG9jb21wbGV0ZSB7XG4gICAgbWF4LWhlaWdodDogMjgwcHg7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgcGFkZGluZzogMC4zNXJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE0OCwgMTYzLCAxODQsIDAuMTgpO1xuICAgIGJvcmRlci1yYWRpdXM6IDE0cHg7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdWktc3VyZmFjZSk7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tdWktc2hhZG93LW1kKTtcbiAgICB6LWluZGV4OiA0MDAwO1xufVxuXG4udWktY29tcGFjdC1kcm9wZG93bi1zY29wZSAudWktYXV0b2NvbXBsZXRlLnVpLXdpZGdldC1jb250ZW50LFxuLnVpLWNvbXBhY3QtZHJvcGRvd24tc2NvcGUgLnVpLXdpZGdldC1jb250ZW50IHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDE5LCAyNCwgMzQsIDAuOTgpIDAlLCByZ2JhKDE0LCAxOCwgMjcsIDAuOTgpIDEwMCUpICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNDgsIDE2MywgMTg0LCAwLjIyKSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0KSAhaW1wb3J0YW50O1xufVxuXG4udWktY29tcGFjdC1kcm9wZG93bi1zY29wZSAudWktYXV0b2NvbXBsZXRlIC51aS1tZW51LWl0ZW0td3JhcHBlciB7XG4gICAgcGFkZGluZzogMC41NXJlbSAwLjdyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dCk7XG59XG5cbi51aS1jb21wYWN0LWRyb3Bkb3duLXNjb3BlIC51aS1hdXRvY29tcGxldGUgLnVpLW1lbnUtaXRlbS13cmFwcGVyOmhvdmVyLFxuLnVpLWNvbXBhY3QtZHJvcGRvd24tc2NvcGUgLnVpLWF1dG9jb21wbGV0ZSAudWktbWVudS1pdGVtLXdyYXBwZXI6Zm9jdXMsXG4udWktY29tcGFjdC1kcm9wZG93bi1zY29wZSAudWktYXV0b2NvbXBsZXRlIC51aS1tZW51LWl0ZW0td3JhcHBlci51aS1zdGF0ZS1hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNikgIWltcG9ydGFudDtcbiAgICBjb2xvcjogdmFyKC0tdWktaGVhZGluZykgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG5cbi51aS1jb21wYWN0LWRyb3Bkb3duLXNjb3BlIC51aS1hdXRvY29tcGxldGUgLnVpLW1lbnUtaXRlbS13cmFwcGVyLnVpLXN0YXRlLWFjdGl2ZSxcbi51aS1jb21wYWN0LWRyb3Bkb3duLXNjb3BlIC51aS1hdXRvY29tcGxldGUgLnVpLW1lbnUtaXRlbS13cmFwcGVyLmNvbWJvLW9wdGlvbi1zZWxlY3RlZCB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDIwNCwgMCwgMC4xMikgIWltcG9ydGFudDtcbiAgICBjb2xvcjogdmFyKC0tdWktaGVhZGluZykgIWltcG9ydGFudDtcbn1cblxuLnVpLWNvbXBhY3QtZHJvcGRvd24tc2NvcGUgLmNvbWJvLWF1dG9jb21wbGV0ZS1pdGVtIHtcbiAgICBnYXA6IDAuNTVyZW07XG59XG5cbi51aS1jb21wYWN0LWRyb3Bkb3duLXNjb3BlIC5jb21iby1waWxsLXNlbGVjdGVkIHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAuMDRlbTtcbiAgICBjb2xvcjogIzFkNWZiODtcbiAgICBiYWNrZ3JvdW5kOiAjZGNlYWZmO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNiOWQ1ZmY7XG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgcGFkZGluZzogMXB4IDZweDtcbn1cblxuLnVpLWNvbXBhY3QtZHJvcGRvd24tc2NvcGUgLmRyb3Bkb3duLW1lbnUsXG4udWktY29tcGFjdC1kcm9wZG93bi1zY29wZSAuZHJvcGRvd24tbWVudS5zaG93LFxuLnVpLWNvbXBhY3QtZHJvcGRvd24tc2NvcGUgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDE5LCAyNCwgMzQsIDAuOTgpIDAlLCByZ2JhKDE0LCAxOCwgMjcsIDAuOTgpIDEwMCUpICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNDgsIDE2MywgMTg0LCAwLjIyKSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IHZhcigtLXVpLXNoYWRvdy1tZCkgIWltcG9ydGFudDtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dCkgIWltcG9ydGFudDtcbn1cblxuLnVpLWNvbXBhY3QtZHJvcGRvd24tc2NvcGUgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWhlYWRlcixcbi51aS1jb21wYWN0LWRyb3Bkb3duLXNjb3BlIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1mb290ZXIge1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0LW11dGVkKSAhaW1wb3J0YW50O1xufVxuXG4udWktY29tcGFjdC1kcm9wZG93bi1zY29wZSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tZGl2aWRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogcmdiYSgxNDgsIDE2MywgMTg0LCAwLjE4KSAhaW1wb3J0YW50O1xuICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbn1cblxuLnVpLWNvbXBhY3QtZHJvcGRvd24tc2NvcGUgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW0ge1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0KSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UsIGNvbG9yIDAuMnMgZWFzZTtcbn1cblxuLnVpLWNvbXBhY3QtZHJvcGRvd24tc2NvcGUgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW06aG92ZXIsXG4udWktY29tcGFjdC1kcm9wZG93bi1zY29wZSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA2KSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB2YXIoLS11aS1oZWFkaW5nKSAhaW1wb3J0YW50O1xufVxuXG4udWktY29tcGFjdC1kcm9wZG93bi1zY29wZSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbS5hY3RpdmUsXG4udWktY29tcGFjdC1kcm9wZG93bi1zY29wZSAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbTphY3RpdmUge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyMDQsIDAsIDAuMTgpICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHZhcigtLXVpLWhlYWRpbmcpICFpbXBvcnRhbnQ7XG59XG5cbi51aS1jb25maWctY29udHJhc3Qtc2NvcGUgLmZvcm0tbGFiZWwsXG4udWktY29uZmlnLWNvbnRyYXN0LXNjb3BlIGxhYmVsLFxuLnVpLWNvbmZpZy1jb250cmFzdC1zY29wZSAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQtbXV0ZWQpICFpbXBvcnRhbnQ7XG59XG5cbi51aS1jb25maWctY29udHJhc3Qtc2NvcGUgLmZvcm0tY29udHJvbCxcbi51aS1jb25maWctY29udHJhc3Qtc2NvcGUgLmZvcm0tc2VsZWN0LFxuLnVpLWNvbmZpZy1jb250cmFzdC1zY29wZSBpbnB1dC5mb3JtLWNvbnRyb2wsXG4udWktY29uZmlnLWNvbnRyYXN0LXNjb3BlIHNlbGVjdC5mb3JtLXNlbGVjdCxcbi51aS1jb25maWctY29udHJhc3Qtc2NvcGUgdGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDU1KSAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXVpLWJvcmRlci1zdHJvbmcpICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQpICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yLXNjaGVtZTogZGFyaztcbn1cblxuLnVpLWNvbmZpZy1jb250cmFzdC1zY29wZSAuZm9ybS1jb250cm9sOmZvY3VzLFxuLnVpLWNvbmZpZy1jb250cmFzdC1zY29wZSAuZm9ybS1zZWxlY3Q6Zm9jdXMsXG4udWktY29uZmlnLWNvbnRyYXN0LXNjb3BlIHRleHRhcmVhLmZvcm0tY29udHJvbDpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS11aS1wcmltYXJ5KSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCB2YXIoLS11aS1hY2NlbnQtcmluZykgIWltcG9ydGFudDtcbn1cblxuLnVpLWNvbmZpZy1jb250cmFzdC1zY29wZSAuZm9ybS1jb250cm9sOjpwbGFjZWhvbGRlcixcbi51aS1jb25maWctY29udHJhc3Qtc2NvcGUgLmZvcm0tc2VsZWN0OjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQtbXV0ZWQpICFpbXBvcnRhbnQ7XG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xufVxuXG4udWktY29uZmlnLWNvbnRyYXN0LXNjb3BlIC5mb3JtLWNvbnRyb2w6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsXG4udWktY29uZmlnLWNvbnRyYXN0LXNjb3BlIC5mb3JtLXNlbGVjdDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbi51aS1jb25maWctY29udHJhc3Qtc2NvcGUgLmZvcm0tY29udHJvbDo6LW1vei1wbGFjZWhvbGRlcixcbi51aS1jb25maWctY29udHJhc3Qtc2NvcGUgLmZvcm0tc2VsZWN0OjotbW96LXBsYWNlaG9sZGVyLFxuLnVpLWNvbmZpZy1jb250cmFzdC1zY29wZSAuZm9ybS1jb250cm9sOi1tcy1pbnB1dC1wbGFjZWhvbGRlcixcbi51aS1jb25maWctY29udHJhc3Qtc2NvcGUgLmZvcm0tc2VsZWN0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQtbXV0ZWQpICFpbXBvcnRhbnQ7XG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xufVxuXG5cblxuXG4uaGVhZGVyLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgXG4gICAgZ2FwOiAycmVtO1xuICAgIHotaW5kZXg6IDE7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cblxuLnNlY3Rpb24tdGFnIHtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0LW11dGVkKTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyBcbn1cblxuXG4uY29tcGFjdC1hY3Rpb25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyBcbiAgICBnYXA6IDEuNXJlbTtcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xufVxuXG5cbi51cGxvYWQtYmFubmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IFxuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyMDQsIDAsIDAuMDUpO1xuICAgIGJvcmRlcjogMXB4IGRhc2hlZCB2YXIoLS11aS1wcmltYXJ5KTtcbiAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICAgIG1hcmdpbjogMS41cmVtIGF1dG8gMDsgXG59XG5cblxuLmJ0bi1zYXZlLWNvbXBhY3Qge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLXByaW1hcnkpICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogODAwO1xuICAgIG1pbi13aWR0aDogMjAwcHg7IFxuICAgIHBhZGRpbmc6IDAuOHJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG59XG5cbi5idG4tY2xlYXItY29tcGFjdCB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdWktc3VyZmFjZS1tdXRlZCkgIWltcG9ydGFudDtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dCkgIWltcG9ydGFudDtcbiAgICBtaW4td2lkdGg6IDE1MHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXVpLWJvcmRlci1zdHJvbmcpO1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbn1cblxuXG4udWktZm9ybS1hY3Rpb24tYnRuLFxuZm9ybSAuYnRuLW91dGxpbmUtc3VjY2VzcyxcbmZvcm0gLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSxcbi5idG4tc2F2ZS1jb21wYWN0LFxuLmJ0bi1jbGVhci1jb21wYWN0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGdhcDogMC40NXJlbTtcbiAgICBtaW4taGVpZ2h0OiAzOHB4O1xuICAgIHBhZGRpbmc6IDAuNTJyZW0gMC45NXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4wNTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgICB0cmFuc2Zvcm0gMC4xOHMgZWFzZSxcbiAgICAgICAgYm94LXNoYWRvdyAwLjE4cyBlYXNlLFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDAuMThzIGVhc2UsXG4gICAgICAgIGJvcmRlci1jb2xvciAwLjE4cyBlYXNlLFxuICAgICAgICBjb2xvciAwLjE4cyBlYXNlLFxuICAgICAgICBmaWx0ZXIgMC4xOHMgZWFzZTtcbn1cblxuLnVpLWZvcm0tYWN0aW9uLWJ0bi0tc2F2ZSxcbmZvcm0gLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MsXG4uYnRuLXNhdmUtY29tcGFjdCB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsIDIwNCwgMCwgMC45OCkgMCUsIHJnYmEoMjMwLCAxODQsIDAsIDAuOTQpIDEwMCUpICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICMxMTExMTEgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjA0LCAwLCAwLjQyKSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IDAgMTBweCAyMHB4IHJnYmEoMjU1LCAyMDQsIDAsIDAuMTYpO1xufVxuXG4udWktZm9ybS1hY3Rpb24tYnRuLS1zYXZlOmhvdmVyLFxuZm9ybSAuYnRuLW91dGxpbmUtc3VjY2Vzczpob3Zlcixcbi5idG4tc2F2ZS1jb21wYWN0OmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG4gICAgY29sb3I6ICMxMTExMTEgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyMDQsIDAsIDAuNjIpICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogMCAxNHB4IDI0cHggcmdiYSgyNTUsIDIwNCwgMCwgMC4yMik7XG4gICAgZmlsdGVyOiBicmlnaHRuZXNzKDEuMDIpO1xufVxuXG4udWktZm9ybS1hY3Rpb24tYnRuLS1zYXZlOmZvY3VzLXZpc2libGUsXG5mb3JtIC5idG4tb3V0bGluZS1zdWNjZXNzOmZvY3VzLXZpc2libGUsXG4uYnRuLXNhdmUtY29tcGFjdDpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDI1NSwgMjA0LCAwLCAwLjI2KSwgMCAxMHB4IDIwcHggcmdiYSgyNTUsIDIwNCwgMCwgMC4xNik7XG59XG5cbi51aS1mb3JtLWFjdGlvbi1idG4tLWNsZWFyLFxuZm9ybSAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LFxuLmJ0bi1jbGVhci1jb21wYWN0IHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDE0OCwgMTYzLCAxODQsIDAuMDgpICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQpICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNDgsIDE2MywgMTg0LCAwLjI0KSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IDAgOHB4IDE4cHggcmdiYSgxNSwgMjMsIDQyLCAwLjEyKTtcbn1cblxuLnVpLWZvcm0tYWN0aW9uLWJ0bi0tY2xlYXI6aG92ZXIsXG5mb3JtIC5idG4tb3V0bGluZS1zZWNvbmRhcnk6aG92ZXIsXG4uYnRuLWNsZWFyLWNvbXBhY3Q6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgICBjb2xvcjogdmFyKC0tdWktaGVhZGluZykgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyMDQsIDAsIDAuMjQpICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDIwNCwgMCwgMC4xMCkgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiAwIDEycHggMjJweCByZ2JhKDE1LCAyMywgNDIsIDAuMTgpO1xufVxuXG4udWktZm9ybS1hY3Rpb24tYnRuLS1jbGVhcjpmb2N1cy12aXNpYmxlLFxuZm9ybSAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmZvY3VzLXZpc2libGUsXG4uYnRuLWNsZWFyLWNvbXBhY3Q6Zm9jdXMtdmlzaWJsZSB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxNDgsIDE2MywgMTg0LCAwLjE4KSwgMCA4cHggMThweCByZ2JhKDE1LCAyMywgNDIsIDAuMTIpO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAudWktZm9ybS1hY3Rpb24tYnRuLFxuICAgIGZvcm0gLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MsXG4gICAgZm9ybSAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LFxuICAgIC5idG4tc2F2ZS1jb21wYWN0LFxuICAgIC5idG4tY2xlYXItY29tcGFjdCB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDM2cHg7XG4gICAgICAgIHBhZGRpbmc6IDAuNDRyZW0gMC44cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICBmb250LXNpemU6IDAuNzhyZW07XG4gICAgfVxufVxuXG5cblxuXG4uaGVhZGVyLWNvbnRlbnQtdmVydGljYWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgICAgXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiAxLjJyZW07XG4gICAgei1pbmRleDogMTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cblxuLmF2YXRhci13cmFwcGVyLXRvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMTBweDsgXG4gICAgaGVpZ2h0OiAxMTBweDtcbn1cblxuXG4uYXZhdGFyLWltZy1jb21wYWN0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlOyBcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS11aS1ib3JkZXItc3Ryb25nKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1iZyk7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tdWktc2hhZG93LW1kKTtcbn1cblxuXG4uYXZhdGFyLWVkaXQtYnRuIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiA1cHg7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1wcmltYXJ5KTtcbiAgICBjb2xvcjogIzAwMDtcbiAgICB3aWR0aDogMzJweDtcbiAgICBoZWlnaHQ6IDMycHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBib3JkZXI6IDNweCBzb2xpZCB2YXIoLS11aS1uYXYtYmcpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xufVxuXG4uYXZhdGFyLWVkaXQtYnRuOmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG59XG5cblxuLmhlYWRlci10ZXh0LWNlbnRlciBoNCB7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG5cbi5zZWN0aW9uLXRhZyB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IFxufVxuXG5cbi5jb21wYWN0LWFjdGlvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiAxLjVyZW07XG4gICAgbWFyZ2luLXRvcDogMnJlbTtcbn1cblxuXG5cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gICAgLnByb2ZpbGUtY29tcGFjdC1oZWFkZXIgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAuaGVhZGVyLWNvbnRlbnQgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgLmNvbXBhY3QtYWN0aW9ucyB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbn1cblxuXG5cblxuLmhlYWRlci1uYXYgLm5hdi1pdGVtLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51Lm5vdGlmaWNhdGlvbnMsXG4uaGVhZGVyLW5hdiAubmF2LWl0ZW0uZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUucHJvZmlsZSxcbi5oZWFkZXItbmF2IC5kcm9wZG93bi1tZW51IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aS1zdXJmYWNlKSAhaW1wb3J0YW50OyBcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS11aS1ib3JkZXItc3Ryb25nKSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IHZhcigtLXVpLXNoYWRvdy1tZCkgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IFxufVxuXG5cbi5oZWFkZXItbmF2IC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1oZWFkZXIsXG4uaGVhZGVyLW5hdiAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tZm9vdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aS1uYXYtYmcpICFpbXBvcnRhbnQ7IFxuICAgIGNvbG9yOiB2YXIoLS11aS1wcmltYXJ5KSAhaW1wb3J0YW50OyBcbiAgICBmb250LXdlaWdodDogODAwICFpbXBvcnRhbnQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMTFweCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS11aS1ib3JkZXItc3Ryb25nKSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDE1cHggIWltcG9ydGFudDtcbn1cblxuXG4uaGVhZGVyLW5hdiAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dCkgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAxMnB4IDE1cHggIWltcG9ydGFudDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tdWktYm9yZGVyKSAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAhaW1wb3J0YW50O1xufVxuXG5cbi5oZWFkZXItbmF2IC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1pdGVtOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aS1hY2NlbnQtc29mdCkgIWltcG9ydGFudDsgXG4gICAgY29sb3I6IHZhcigtLXVpLXByaW1hcnkpICFpbXBvcnRhbnQ7IFxufVxuXG5cbi5oZWFkZXItbmF2IC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1pdGVtLmFjdGl2ZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCB2YXIoLS11aS1wcmltYXJ5KSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpLWFjY2VudC1zb2Z0KSAhaW1wb3J0YW50O1xufVxuXG5cbi5oZWFkZXItbmF2IC5kcm9wZG93bi1kaXZpZGVyIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tdWktYm9yZGVyLXN0cm9uZykgIWltcG9ydGFudDtcbn1cblxuXG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIFxuICAgIFxuICAgIFxuICAgIFxuICAgIC5kZXRhaWwtdmlldyB0ZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpLWJnKSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmJnLWRhcmstbmF2IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdWktbmF2LWJnKSAhaW1wb3J0YW50OyBcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgIFxuICAgXG4gICAgXG5cbiAgICBcbiAgICAuYm9vdHN0cmFwLXRhYmxlIHRib2R5IHRyLmRldGFpbC12aWV3IHRkIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpLWJnKSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5kZXRhaWwsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoLmRldGFpbCB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDQ1cHggIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC5kZXRhaWwtaWNvbiB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS11aS1wcmltYXJ5KSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICB9XG59XG5cbi5iZy1kYXJrLW5hdiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdWktbmF2LWJnKSAhaW1wb3J0YW50OyBcbn1cblxuXG4uYm9vdHN0cmFwLXRhYmxlIC5kZXRhaWwtdmlldyB0ZCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aS1iZykgIWltcG9ydGFudDsgXG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG5cblxuLmRldGFpbC1pY29uIHtcbiAgICBjb2xvcjogdmFyKC0tdWktcHJpbWFyeSkgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEuMXJlbTtcbn1cblxuXG4uYmctZGFyay1uYXYge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpLW5hdi1iZykgIWltcG9ydGFudDsgXG59XG5cblxuLmJvb3RzdHJhcC10YWJsZSAuZGV0YWlsLXZpZXcgdGQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdWktYmcpICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG5cblxuLmRldGFpbC1pY29uIHtcbiAgICBjb2xvcjogdmFyKC0tdWktcHJpbWFyeSkgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEuMXJlbTtcbn1cblxuXG4uYmctZGFyay1uYXYge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpLW5hdi1iZykgIWltcG9ydGFudDsgXG59XG5cblxuXG5cbi5kZXRhaWwtY29udGFpbmVyLWluZHVzdHJpYWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpLW5hdi1iZykgIWltcG9ydGFudDsgXG4gICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCB2YXIoLS11aS1wcmltYXJ5KTsgXG4gICAgcGFkZGluZzogMTJweCAxNXB4O1xuICAgIG1hcmdpbjogNXB4IDEwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogMCA4cHggOHB4IDA7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDE1cHggcmdiYSgwLDAsMCwwLjUpO1xufVxuXG5cbi5kZXRhaWwtaGVhZGVyLWluZHVzdHJpYWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDhweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS11aS1ib3JkZXItc3Ryb25nKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNnB4O1xufVxuXG4uZGV0YWlsLWhlYWRlci1pbmR1c3RyaWFsIGkge1xuICAgIGNvbG9yOiB2YXIoLS11aS1wcmltYXJ5KTtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbn1cblxuLmRldGFpbC1oZWFkZXItaW5kdXN0cmlhbCBzcGFuIHtcbiAgICBjb2xvcjogdmFyKC0tdWktcHJpbWFyeSk7XG4gICAgZm9udC1zaXplOiAwLjY1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDEuNXB4O1xufVxuXG5cbi5kZXRhaWwtZ3JpZCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpOyBcbiAgICBnYXA6IDEwcHg7XG59XG5cblxuLmRldGFpbC1pdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7XG4gICAgcGFkZGluZy1ib3R0b206IDRweDtcbn1cblxuLmRldGFpbC1pdGVtIGxhYmVsIHtcbiAgICBmb250LXNpemU6IDAuNTVyZW0gIWltcG9ydGFudDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0LXNvZnQpICFpbXBvcnRhbnQ7IFxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMXB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbn1cblxuLmRldGFpbC1pdGVtIC52YWx1ZSB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgZm9udC1zaXplOiAwLjgycmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbn1cblxuXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAuZGV0YWlsLWdyaWQge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICB9XG59XG5cblxuLmJvb3RzdHJhcC10YWJsZSAuZGV0YWlsLXZpZXcgdGQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG5cblxuXG4uYm9vdHN0cmFwLXRhYmxlIC5kZXRhaWwtdmlldyB0ZCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aS1iZykgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZGV0YWlsLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoLmRldGFpbCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiA0NXB4ICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cblxuLmRldGFpbC1jb250YWluZXItaW5kdXN0cmlhbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdWktbmF2LWJnKSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1sZWZ0OiAzcHggc29saWQgdmFyKC0tdWktcHJpbWFyeSk7XG4gICAgcGFkZGluZzogMTJweCAxNXB4O1xuICAgIG1hcmdpbjogNXB4IDEwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogMCA4cHggOHB4IDA7XG59XG5cbi5kZXRhaWwtZ3JpZCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpOyBcbiAgICBnYXA6IDEycHg7XG59XG5cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gICAgLmRldGFpbC1ncmlkIHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTsgfVxufVxuXG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAgIC5kZXRhaWwtZ3JpZCB7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyOyB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAgIC5kZXRhaWwtZ3JpZCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyICFpbXBvcnRhbnQ7IFxuICAgIH1cbn1cblxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICBcbiAgICAudGFibGUtZGFyay1pbmR1c3RyaWFsIC5idG4tc20ge1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICBmb250LXNpemU6IDAgIWltcG9ydGFudDsgXG4gICAgfVxuXG4gICAgXG4gICAgLnRhYmxlLWRhcmstaW5kdXN0cmlhbCAuYnRuLXNtIGksIFxuICAgIC50YWJsZS1kYXJrLWluZHVzdHJpYWwgLmJ0bi1zbSBzcGFuW2NsYXNzXj1cInJpLVwiXSxcbiAgICAudGFibGUtZGFyay1pbmR1c3RyaWFsIC5idG4tc20gc3BhbltjbGFzc149XCJiaS1cIl0ge1xuICAgICAgICBmb250LXNpemU6IDEuMXJlbSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIFxuICAgIC50YWJsZS1kYXJrLWluZHVzdHJpYWwgdGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIHdpZHRoOiAxJTsgXG4gICAgfVxufVxuXG5cblxuXG4uZGV0YWlsLWNvbnRhaW5lci1pbmR1c3RyaWFsIHtcbiAgICBiYWNrZ3JvdW5kOiAjMmMzMDM0ICFpbXBvcnRhbnQ7IFxuICAgIHBhZGRpbmc6IDI1cHg7XG4gICAgbWFyZ2luOiAxMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDsgXG59XG5cblxuLmRldGFpbC1ncmlkLWluZHVzdHJpYWwge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyMjBweCwgMWZyKSk7XG4gICAgZ2FwOiAyMHB4O1xufVxuXG5cbi5kZXRhaWwtYm94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiA1cHg7XG59XG5cblxuLmJveC1sYWJlbCB7XG4gICAgZm9udC1zaXplOiAwLjY1cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6ICNhZGI1YmQgIWltcG9ydGFudDsgXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG59XG5cblxuLmJveC12YWx1ZSB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7IFxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cblxuLmRldGFpbC1pY29uIHtcbiAgICBjb2xvcjogI0ZGQ0MwMCAhaW1wb3J0YW50OyBcbn1cblxuXG4uZml4ZWQtdGFibGUtZm9vdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWExYzFlICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzM0M2E0MCAhaW1wb3J0YW50O1xufVxuXG5cblxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICBcbiAgICAudGFibGUtZGFyay1pbmR1c3RyaWFsIC5idG4sIFxuICAgIC50YWJsZS1kYXJrLWluZHVzdHJpYWwgLmJ0bi1zbSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB3aWR0aDogMzVweCAhaW1wb3J0YW50OyAgXG4gICAgICAgIGhlaWdodDogMzVweCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMCAhaW1wb3J0YW50OyBcbiAgICAgICAgbWFyZ2luOiAycHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBcbiAgICAudGFibGUtZGFyay1pbmR1c3RyaWFsIC5idG4gaSwgXG4gICAgLnRhYmxlLWRhcmstaW5kdXN0cmlhbCAuYnRuIHNwYW5bY2xhc3NePVwicmktXCJdLCBcbiAgICAudGFibGUtZGFyay1pbmR1c3RyaWFsIC5idG4gc3BhbltjbGFzc149XCJiaS1cIl0ge1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbSAhaW1wb3J0YW50OyBcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnRhYmxlLWRhcmstaW5kdXN0cmlhbCB0aGVhZCB0aCAudGgtaW5uZXIge1xuICAgICAgICBmb250LXNpemU6IDAuNTVyZW0gIWltcG9ydGFudDsgXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIFxuICAgICAgICBcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50OyAgICBcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50OyAgICAgICAgXG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzICFpbXBvcnRhbnQ7IFxuICAgICAgICBcbiAgICAgICAgXG4gICAgICAgIG1heC13aWR0aDogNzBweCAhaW1wb3J0YW50OyBcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuXG4gICAgXG4gICAgLnRhYmxlLWRhcmstaW5kdXN0cmlhbCB0aGVhZCB0aCB7XG4gICAgICAgIHBhZGRpbmc6IDVweCAycHggIWltcG9ydGFudDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMzNDNhNDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBcbiAgICAudGFibGUtZGFyay1pbmR1c3RyaWFsIHRoZWFkIHRoIC5zb3J0YWJsZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICBcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1ib2R5IHtcbiAgICAgICAgb3ZlcmZsb3cteDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaCAhaW1wb3J0YW50OyBcbiAgICAgICAgb3ZlcnNjcm9sbC1iZWhhdmlvci14OiBjb250YWluOyBcbiAgICB9XG5cbiAgICBcbiAgICAudGFibGUtZGFyay1pbmR1c3RyaWFsIHRib2R5IHRyLFxuICAgIC50YWJsZS1kYXJrLWluZHVzdHJpYWwgdGJvZHkgdGQsXG4gICAgLmRldGFpbC1jb250YWluZXItaW5kdXN0cmlhbCB7XG4gICAgICAgIHRvdWNoLWFjdGlvbjogcGFuLXggcGFuLXkgIWltcG9ydGFudDsgXG4gICAgfVxuXG4gICAgXG4gICAgLnRhYmxlLWRhcmstaW5kdXN0cmlhbCAuYnRuLFxuICAgIC50YWJsZS1kYXJrLWluZHVzdHJpYWwgLmJ0bi1zbSB7XG4gICAgICAgIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG5cblxuXG4udGFibGUtZGFyay1pbmR1c3RyaWFsIHRkIC5idG4sXG4udGFibGUtZGFyay1pbmR1c3RyaWFsIHRkIC5idG4tc20sXG4udGFibGUtZGFyay1pbmR1c3RyaWFsIHRkIGEuYnRuIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7ICAgIFxuICAgIHdvcmQtYnJlYWs6IGtlZXAtYWxsICFpbXBvcnRhbnQ7ICAgXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDsgICBcbiAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7ICAgIFxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgZ2FwOiA2cHggIWltcG9ydGFudDsgICAgICAgICAgICAgICBcbiAgICBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50OyAgICAgIFxuICAgIG1pbi13aWR0aDogbWF4LWNvbnRlbnQgIWltcG9ydGFudDsgXG59XG5cblxuLnRhYmxlLWRhcmstaW5kdXN0cmlhbCB0ZC5jb3RpemFjaW9uLWNvbC11cmwsXG4udGFibGUtZGFyay1pbmR1c3RyaWFsIHRkLmZhY3R1cmEtY29sLXVybCB7XG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtaW4td2lkdGg6IDgwcHg7IFxufVxuXG5cblxuXG4uZml4ZWQtdGFibGUtcGFnaW5hdGlvbiAuZHJvcGRvd24tbWVudSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzFhMWMxZSAhaW1wb3J0YW50OyBcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSkgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC41KSAhaW1wb3J0YW50O1xufVxuXG5cbi5maXhlZC10YWJsZS1wYWdpbmF0aW9uIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1pdGVtIHtcbiAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50OyBcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbn1cblxuXG4uZml4ZWQtdGFibGUtcGFnaW5hdGlvbiAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbTpob3Zlcixcbi5maXhlZC10YWJsZS1wYWdpbmF0aW9uIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1pdGVtLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRjNTk2YyAhaW1wb3J0YW50OyBcbiAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG5cbi5kcm9wZG93bi1tZW51LFxuLmRyb3Bkb3duLW1lbnUuc2hvdyxcbi5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdWktc3VyZmFjZSkgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS11aS1ib3JkZXItc3Ryb25nKSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IHZhcigtLXVpLXNoYWRvdy1tZCkgIWltcG9ydGFudDtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dCkgIWltcG9ydGFudDtcbn1cblxuLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWhlYWRlcixcbi5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1mb290ZXIge1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0LW11dGVkKSAhaW1wb3J0YW50O1xufVxuXG4uZHJvcGRvd24tbWVudSAuZHJvcGRvd24tZGl2aWRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tdWktYm9yZGVyKSAhaW1wb3J0YW50O1xuICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbn1cblxuLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW0ge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQpICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLCBjb2xvciAwLjI1cyBlYXNlO1xufVxuXG4uZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbTpob3Zlcixcbi5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1pdGVtOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1hY2NlbnQtc29mdCkgIWltcG9ydGFudDtcbiAgICBjb2xvcjogdmFyKC0tdWktaGVhZGluZykgIWltcG9ydGFudDtcbn1cblxuLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW0uYWN0aXZlLFxuLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW06YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjA0LCAwLCAwLjE4KSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB2YXIoLS11aS1oZWFkaW5nKSAhaW1wb3J0YW50O1xufVxuXG5cblxuXG4jdG9hc3QtY29udGFpbmVyID4gZGl2LCBcbi50b2FzdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBkMTExNyAhaW1wb3J0YW50OyBcbiAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMxYTIwMmMgIWltcG9ydGFudDsgXG4gICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAjMGM5OWJjICFpbXBvcnRhbnQ7IFxuICAgIGJveC1zaGFkb3c6IDAgNHB4IDE1cHggcmdiYSgwLCAwLCAwLCAwLjYpLCAwIDAgMTVweCByZ2JhKDAsIDI0MywgMjU1LCAwLjE1KSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDZweCAhaW1wb3J0YW50O1xuICAgIG9wYWNpdHk6IDAuOTUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAxNXB4IDE1cHggMTVweCA1MHB4ICFpbXBvcnRhbnQ7IFxufVxuXG5cbiN0b2FzdC1jb250YWluZXIgPiBkaXYgLnRvYXN0LXRpdGxlLFxuLnRvYXN0IC50b2FzdC10aXRsZSB7XG4gICAgY29sb3I6ICNmM2ZhZmEgIWltcG9ydGFudDsgXG4gICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMC45NXJlbSAhaW1wb3J0YW50O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG59XG5cbiN0b2FzdC1jb250YWluZXIgPiBkaXYgLnRvYXN0LW1lc3NhZ2UsXG4udG9hc3QgLnRvYXN0LWJvZHkge1xuICAgIGNvbG9yOiAjZTlmN2ZmICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAwLjg1cmVtICFpbXBvcnRhbnQ7XG59XG5cbiN0b2FzdC1jb250YWluZXIgPiBkaXYgLnRvYXN0LWNsb3NlLWJ1dHRvbixcbi50b2FzdCAuYnRuLWNsb3NlIHtcbiAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xuICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgb3BhY2l0eTogMC41ICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbn1cblxuI3RvYXN0LWNvbnRhaW5lciA+IGRpdiAudG9hc3QtY2xvc2UtYnV0dG9uOmhvdmVyLFxuLnRvYXN0IC5idG4tY2xvc2U6aG92ZXIge1xuICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICBjb2xvcjogI2ZmMDA1NSAhaW1wb3J0YW50OyBcbn1cblxuXG4jdG9hc3QtY29udGFpbmVyID4gLnRvYXN0LXN1Y2Nlc3MgeyBcbiAgICBib3JkZXItbGVmdC1jb2xvcjogIzAwZmY4OCAhaW1wb3J0YW50OyBcbiAgICBib3gtc2hhZG93OiAwIDRweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC42KSwgMCAwIDE1cHggcmdiYSgwLCAyNTUsIDEzNiwgMC4xNSkgIWltcG9ydGFudDtcbn1cbiN0b2FzdC1jb250YWluZXIgPiAudG9hc3Qtc3VjY2VzcyAudG9hc3QtdGl0bGUgeyBjb2xvcjogIzAwZmY4OCAhaW1wb3J0YW50OyB9XG5cbiN0b2FzdC1jb250YWluZXIgPiAudG9hc3QtZXJyb3IgeyBcbiAgICBib3JkZXItbGVmdC1jb2xvcjogI2ZmMDA1NSAhaW1wb3J0YW50OyBcbiAgICBib3gtc2hhZG93OiAwIDRweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC42KSwgMCAwIDE1cHggcmdiYSgyNTUsIDAsIDg1LCAwLjE1KSAhaW1wb3J0YW50O1xufVxuI3RvYXN0LWNvbnRhaW5lciA+IC50b2FzdC1lcnJvciAudG9hc3QtdGl0bGUgeyBjb2xvcjogI2ZmMDA1NSAhaW1wb3J0YW50OyB9XG5cbiN0b2FzdC1jb250YWluZXIgPiAudG9hc3Qtd2FybmluZyB7IFxuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAjZmZiZTAwICFpbXBvcnRhbnQ7IFxuICAgIGJveC1zaGFkb3c6IDAgNHB4IDE1cHggcmdiYSgwLCAwLCAwLCAwLjYpLCAwIDAgMTVweCByZ2JhKDI1NSwgMTkwLCAwLCAwLjE1KSAhaW1wb3J0YW50O1xufVxuI3RvYXN0LWNvbnRhaW5lciA+IC50b2FzdC13YXJuaW5nIC50b2FzdC10aXRsZSB7IGNvbG9yOiAjZmZiZTAwICFpbXBvcnRhbnQ7IH1cblxuXG5cblxuI3RvYXN0LWNvbnRhaW5lciA+IGRpdiwgXG4udG9hc3Qge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpLXN1cmZhY2UpICFpbXBvcnRhbnQ7IFxuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0KSAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXVpLWJvcmRlcikgIWltcG9ydGFudDsgXG4gICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCB2YXIoLS11aS1pbmZvKSAhaW1wb3J0YW50OyBcbiAgICBib3gtc2hhZG93OiB2YXIoLS11aS1zaGFkb3ctc29mdCkgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS11aS1yYWRpdXMtc20pICFpbXBvcnRhbnQ7XG4gICAgb3BhY2l0eTogMC45OCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDE1cHggMTVweCAxNXB4IDUwcHggIWltcG9ydGFudDsgXG59XG5cbiN0b2FzdC1jb250YWluZXIgPiBkaXYgLnRvYXN0LXRpdGxlLFxuLnRvYXN0IC50b2FzdC10aXRsZSB7XG4gICAgY29sb3I6IHZhcigtLXVpLWhlYWRpbmcpICFpbXBvcnRhbnQ7IFxuICAgIGZvbnQtd2VpZ2h0OiA2MDAgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDAuOTVyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG59XG5cblxuI3RvYXN0LWNvbnRhaW5lciA+IGRpdiAudG9hc3QtbWVzc2FnZSxcbi50b2FzdCAudG9hc3QtYm9keSB7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQtbXV0ZWQpICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAwLjg1cmVtICFpbXBvcnRhbnQ7XG59XG5cbiN0b2FzdC1jb250YWluZXIgPiBkaXYgLnRvYXN0LWNsb3NlLWJ1dHRvbixcbi50b2FzdCAuYnRuLWNsb3NlIHtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dC1tdXRlZCkgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZTtcbn1cblxuI3RvYXN0LWNvbnRhaW5lciA+IGRpdiAudG9hc3QtY2xvc2UtYnV0dG9uOmhvdmVyLFxuLnRvYXN0IC5idG4tY2xvc2U6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS11aS1kYW5nZXIpICFpbXBvcnRhbnQ7IFxufVxuXG5cbiN0b2FzdC1jb250YWluZXIgPiAudG9hc3Qtc3VjY2VzcyB7IGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS11aS1zdWNjZXNzKSAhaW1wb3J0YW50OyB9XG4jdG9hc3QtY29udGFpbmVyID4gLnRvYXN0LWVycm9yICAgeyBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tdWktZGFuZ2VyKSAhaW1wb3J0YW50OyB9XG4jdG9hc3QtY29udGFpbmVyID4gLnRvYXN0LXdhcm5pbmcgeyBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tdWktd2FybmluZykgIWltcG9ydGFudDsgfVxuI3RvYXN0LWNvbnRhaW5lciA+IC50b2FzdC1pbmZvICAgIHsgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLXVpLWluZm8pICFpbXBvcnRhbnQ7IH1cblxuXG5cblxuXG4uamNvbmZpcm0gLmpjb25maXJtLWJveCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdWktc3VyZmFjZSkgIWltcG9ydGFudDsgXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdWktYm9yZGVyLXN0cm9uZykgIWltcG9ydGFudDsgXG4gICAgYm94LXNoYWRvdzogdmFyKC0tdWktc2hhZG93LW1kKSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXVpLXJhZGl1cy1tZCkgIWltcG9ydGFudDtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dCkgIWltcG9ydGFudDtcbn1cblxuXG4uamNvbmZpcm0gLmpjb25maXJtLXRpdGxlLWMge1xuICAgIGNvbG9yOiB2YXIoLS11aS1oZWFkaW5nKSAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEuMnJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IFxufVxuXG5cbi5qY29uZmlybSAuamNvbmZpcm0tY29udGVudCB7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQtc29mdCkgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDE1cHggIWltcG9ydGFudDtcbn1cblxuXG4uamNvbmZpcm0gLmpjb25maXJtLWJnIHtcbiAgICBcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE4LCAyMCwgMjMsIDAuODUpICFpbXBvcnRhbnQ7IFxufVxuXG5cbi5qY29uZmlybSAuamNvbmZpcm0tYnV0dG9ucyB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXVpLWJvcmRlcikgIWltcG9ydGFudDsgXG4gICAgcGFkZGluZy10b3A6IDE1cHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tdG9wOiAxMHB4ICFpbXBvcnRhbnQ7XG59XG5cblxuLmpjb25maXJtIC5qY29uZmlybS1idXR0b25zIC5idG4ge1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXVpLXJhZGl1cy1zbSkgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNjAwICFpbXBvcnRhbnQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDsgXG4gICAgbWFyZ2luLWxlZnQ6IDEwcHggIWltcG9ydGFudDtcbn1cblxuXG4uamNvbmZpcm0gLmpjb25maXJtLWJ1dHRvbnMgLmJ0bi1kZWZhdWx0LFxuLmpjb25maXJtIC5qY29uZmlybS1idXR0b25zIC5idG4tY2FuY2VsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0KSAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXVpLWJvcmRlci1zdHJvbmcpICFpbXBvcnRhbnQ7XG59XG5cbi5qY29uZmlybSAuamNvbmZpcm0tYnV0dG9ucyAuYnRuLWRlZmF1bHQ6aG92ZXIsXG4uamNvbmZpcm0gLmpjb25maXJtLWJ1dHRvbnMgLmJ0bi1jYW5jZWw6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpLXN1cmZhY2UtbXV0ZWQpICFpbXBvcnRhbnQ7XG59XG5cbnNlbGVjdCBvcHRpb24sXG5zZWxlY3Qgb3B0Z3JvdXAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpLXN1cmZhY2UpICFpbXBvcnRhbnQ7IFxuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0KSAhaW1wb3J0YW50OyBcbiAgICBwYWRkaW5nOiAxMHB4ICFpbXBvcnRhbnQ7XG59XG5cbnNlbGVjdDpmb2N1cyA+IG9wdGlvbjpjaGVja2VkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aS1wcmltYXJ5KSAhaW1wb3J0YW50OyBcbiAgICBjb2xvcjogIzAwMDAwMCAhaW1wb3J0YW50O1xufVxuXG5cblxuXG4jZm9ybVJlc2V0Q2xhdmUgLmZvcm0tY29udHJvbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdWktbmF2LWJnKSAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXVpLWJvcmRlci1zdHJvbmcpICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQpICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIHBhZGRpbmc6IDEycHggMTVweDtcbn1cblxuI2Zvcm1SZXNldENsYXZlIC5mb3JtLWNvbnRyb2w6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tdWktcHJpbWFyeSkgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCA0cHggdmFyKC0tdWktYWNjZW50LXJpbmcpICFpbXBvcnRhbnQ7XG59XG5cblxuI2Zvcm1SZXNldENsYXZlIC5mb3JtLWxhYmVsIHtcbiAgICBjb2xvcjogdmFyKC0tdWktaGVhZGluZykgIWltcG9ydGFudDsgXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogOHB4O1xufVxuXG5cbiNmb3JtUmVzZXRDbGF2ZSAudGV4dC1wcmltYXJ5LWFjY2VudCB7XG4gICAgY29sb3I6IHZhcigtLXVpLXByaW1hcnkpICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cblxuI2NvbnRhZG9yLWV4cGlyYWNpb24ge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLXN1cmZhY2UtbXV0ZWQpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS11aS1wcmltYXJ5KTtcbiAgICBjb2xvcjogdmFyKC0tdWktcHJpbWFyeSkgIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogJ0NvdXJpZXIgTmV3JywgbW9ub3NwYWNlO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbn1cblxuXG5cblxuLmltZy1maXJtYS1hanVzdGFkYSB7XG4gICAgXG4gICAgZmlsdGVyOiBpbnZlcnQoMSkgYnJpZ2h0bmVzcygxLjUpIGNvbnRyYXN0KDEuMik7XG4gICAgXG4gICAgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMjQsIDIxNSwgMjE1LCAwLjAzKTsgXG4gICAgcGFkZGluZzogMnB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbi5pbWctZmlybWEtYWp1c3RhZGE6aG92ZXIge1xuICAgIFxuICAgIGZpbHRlcjogaW52ZXJ0KDEpIGJyaWdodG5lc3MoMik7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xufVxuXG5cblxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGgge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpLW5hdi1iZykgIWltcG9ydGFudDsgXG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50OyBcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB2YXIoLS11aS1ib3JkZXItc3Ryb25nKSAhaW1wb3J0YW50O1xufVxuXG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aCAudGgtaW5uZXIge1xuICAgIHBhZGRpbmc6IDhweCAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAwLjcycmVtICFpbXBvcnRhbnQ7IFxuICAgIGZvbnQtd2VpZ2h0OiA4MDAgIWltcG9ydGFudDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7IFxuICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW0gIWltcG9ydGFudDtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dC1tdXRlZCkgIWltcG9ydGFudDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7IFxufVxuXG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aCAuc29ydGFibGUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHggIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCA4cHggY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aCAudGgtaW5uZXIge1xuICAgICAgICBwYWRkaW5nOiA2cHggNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMC42NXJlbSAhaW1wb3J0YW50O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICB9XG4gICAgXG4gIFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aCAudGgtaW5uZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDgwcHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIH1cbiAgICAudGFibGUtcmVzcG9uc2l2ZSxcbiAgICAudHJhY2tpbmctdXNlcnMtd3JhcCxcbiAgICAubXktYWN0aXZpdHktZXZlbnRzLXdyYXAsXG4gICAgLm1vZC1hY3Rpdml0aWVzLXdyYXAsXG4gICAgLmRldGFpbC1jb250YWluZXItaW5kdXN0cmlhbCB7XG4gICAgICAgIHNjcm9sbGJhci13aWR0aDogbm9uZSAhaW1wb3J0YW50OyBcbiAgICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lICFpbXBvcnRhbnQ7IFxuICAgIH1cblxuICAgIFxuICAgIC50YWJsZS1yZXNwb25zaXZlOjotd2Via2l0LXNjcm9sbGJhcixcbiAgICAudHJhY2tpbmctdXNlcnMtd3JhcDo6LXdlYmtpdC1zY3JvbGxiYXIsXG4gICAgLm15LWFjdGl2aXR5LWV2ZW50cy13cmFwOjotd2Via2l0LXNjcm9sbGJhcixcbiAgICAubW9kLWFjdGl2aXRpZXMtd3JhcDo6LXdlYmtpdC1zY3JvbGxiYXIsXG4gICAgLmRldGFpbC1jb250YWluZXItaW5kdXN0cmlhbDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuYm9vdHN0cmFwLXRhYmxlIHRib2R5IHRyLmRldGFpbC12aWV3IHRkIHtcbiAgICAgICAgbWF4LXdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgXG4gICAgXG4gICAgLmRldGFpbC1jb250YWluZXItaW5kdXN0cmlhbCwgXG4gICAgLmRldGFpbC12aWV3IC5jYXJkLWJvZHksXG4gICAgLmRldGFpbC12aWV3IC5jb250YWluZXItZmx1aWQge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBvdmVyZmxvdy14OiBhdXRvICFpbXBvcnRhbnQ7IFxuICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2ggIWltcG9ydGFudDsgXG4gICAgICAgIHBhZGRpbmc6IDE1cHggIWltcG9ydGFudDtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgXG4gICAgICAgIFxuICAgICAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmUgIWltcG9ydGFudDsgXG4gICAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZSAhaW1wb3J0YW50OyBcbiAgICB9XG4gICAgLmRldGFpbC1jb250YWluZXItaW5kdXN0cmlhbDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgXG4gICAgLmRldGFpbC1jb250YWluZXItaW5kdXN0cmlhbCAuZGV0YWlsLWdyaWQsXG4gICAgLmRldGFpbC1jb250YWluZXItaW5kdXN0cmlhbCB0YWJsZSxcbiAgICAuZGV0YWlsLXZpZXcgLnJvdyB7XG4gICAgICAgIG1pbi13aWR0aDogNjAwcHggIWltcG9ydGFudDsgXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyBcbiAgICB9XG59XG5cblxuXG4uc3dhbDItcG9wdXAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpLW5hdi1iZykgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS11aS1ib3JkZXItc3Ryb25nKSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDE2cHggIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiAwIDIwcHggNDBweCByZ2JhKDAsIDAsIDAsIDAuNikgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAycmVtICFpbXBvcnRhbnQ7XG59XG5cblxuLnN3YWwyLXRpdGxlIHtcbiAgICBjb2xvcjogdmFyKC0tdWktaGVhZGluZykgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEuMjVyZW0gIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogODAwICFpbXBvcnRhbnQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xufVxuXG5cbi5zd2FsMi1odG1sLWNvbnRhaW5lciB7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQtc29mdCkgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDAuOXJlbSAhaW1wb3J0YW50O1xufVxuXG5cbi5zd2FsMi1jb25maXJtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aS1wcmltYXJ5KSAhaW1wb3J0YW50OyBcbiAgICBjb2xvcjogIzExMTExMSAhaW1wb3J0YW50OyBcbiAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweCAhaW1wb3J0YW50O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAwLjhyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwLjZyZW0gMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5zd2FsMi1jYW5jZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTQ4LCAxNjMsIDE4NCwgMC4xKSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0KSAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXVpLWJvcmRlcikgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAwLjhyZW0gIWltcG9ydGFudDtcbn1cblxuXG4uc3dhbDItaWNvbi5zd2FsMi1zdWNjZXNzIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXVpLXByaW1hcnkpICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHZhcigtLXVpLXByaW1hcnkpICFpbXBvcnRhbnQ7XG59XG5cbi5zd2FsMi1pY29uLnN3YWwyLXN1Y2Nlc3MgW2NsYXNzXj0nc3dhbDItc3VjY2Vzcy1saW5lJ10ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpLXByaW1hcnkpICFpbXBvcnRhbnQ7XG59XG5cbi5zd2FsMi1pY29uLnN3YWwyLXN1Y2Nlc3MgLnN3YWwyLXN1Y2Nlc3MtcmluZyB7XG4gICAgYm9yZGVyOiA0cHggc29saWQgcmdiYSgyNTUsIDIwNCwgMCwgMC4yKSAhaW1wb3J0YW50OyBcbn1cblxuLnN3YWwyLWljb24uc3dhbDItZXJyb3Ige1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tdWktZGFuZ2VyKSAhaW1wb3J0YW50O1xufVxuXG4uc3dhbDItaWNvbi5zd2FsMi1lcnJvciBbY2xhc3NePSdzd2FsMi14LW1hcmstbGluZSddIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aS1kYW5nZXIpICFpbXBvcnRhbnQ7XG59XG5cbmlucHV0OjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IHJnYmEoMjM5LCAyMzQsIDIzNCwgMC40OTIpICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xufVxuXG5cbi50ZXh0LXllbGxvdyB7XG4gICAgY29sb3I6IHZhcigtLXVpLXByaW1hcnkpICFpbXBvcnRhbnQ7XG4gICB9XG5cblxuOnJvb3Qge1xuICAgIFxuICAgIC0tdWktZm9udC14czogMC43NXJlbTsgIFxuICAgIC0tdWktZm9udC1zbTogMC44NXJlbTsgIFxuICAgIC0tdWktZm9udC1tZDogMC45NXJlbTsgIFxuICAgIC0tdWktZm9udC1sZzogMS4wNXJlbTsgIFxuICAgIFxuICAgIFxuICAgIC0tdWktY3RybC1oOiA0MHB4OyAgICAgIFxuICAgIC0tdWktY3RybC1oLWxnOiA0NnB4OyAgIFxuICAgIFxuICAgIC0tdWktZ2FwLXhzOiAwLjI4cmVtO1xuICAgIC0tdWktZ2FwLXNtOiAwLjRyZW07XG4gICAgLS11aS1nYXAtbWQ6IDAuNTVyZW07XG59XG5ib2R5IHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMzU7XG59XG5cbi51aS1tb2R1bGUtaGVhZGVyLFxuLmZhY3R1cmFzLWhlYWRlcixcbi5lc3RpbWFjaW9uZXMtaGVhZGVyLFxuLm9yZGVuZXMtaGVhZGVyIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC42NXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDAuNnJlbSAhaW1wb3J0YW50O1xufVxuXG4udWktbW9kdWxlLWtpY2tlcixcbi5tb2R1bGUta2lja2VyIHtcbiAgICBmb250LXNpemU6IHZhcigtLXVpLWZvbnQteHMpICFpbXBvcnRhbnQ7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDAuMTJyZW0gIWltcG9ydGFudDtcbn1cblxuLnVpLW1vZHVsZS10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjAycmVtICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMiAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDAuMXJlbSAhaW1wb3J0YW50O1xufVxuXG4udWktbW9kdWxlLXN1YnRpdGxlIHtcbiAgICBmb250LXNpemU6IHZhcigtLXVpLWZvbnQtc20pICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjMgIWltcG9ydGFudDtcbn1cblxuLnVpLW1vZHVsZS1wYW5lbCxcbi51aS10YWJsZS1maXhlZCxcbi51aS10YWJsZS1jb21wYWN0IHtcbiAgICBwYWRkaW5nOiAwLjYycmVtICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMTJweCAhaW1wb3J0YW50O1xufVxuXG4udWktbW9kdWxlLXRvb2xiYXIge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4uZm9ybS1sYWJlbCxcbmxhYmVsIHtcbiAgICBmb250LXNpemU6IHZhcigtLXVpLWZvbnQteHMpICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yMnJlbSAhaW1wb3J0YW50O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAzNWVtO1xufVxuXG4uZm9ybS1jb250cm9sLFxuLmZvcm0tc2VsZWN0LFxuaW5wdXQuZm9ybS1jb250cm9sLFxuc2VsZWN0LmZvcm0tc2VsZWN0LFxudGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgICBtaW4taGVpZ2h0OiB2YXIoLS11aS1jdHJsLWgpICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMC4zNHJlbSAwLjUycmVtICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiB2YXIoLS11aS1mb250LW1kKSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDlweCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1ICFpbXBvcnRhbnQ7XG59XG5cbnRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gICAgbWluLWhlaWdodDogODRweCAhaW1wb3J0YW50O1xufVxuXG4uYnRuLFxuLmJ0bi1zbSxcbi5idG4tbGcsXG4udWktdGFibGUtYWN0aW9uLWJ0bixcbi51aS10YWJsZS11cmwtYnRuIHtcbiAgICBtaW4taGVpZ2h0OiB2YXIoLS11aS1jdHJsLWgpICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMC4zMnJlbSAwLjYycmVtICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiB2YXIoLS11aS1mb250LXNtKSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDlweCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjEgIWltcG9ydGFudDtcbiAgICBnYXA6IHZhcigtLXVpLWdhcC14cykgIWltcG9ydGFudDtcbn1cblxuLmJ0bi1sZyB7XG4gICAgbWluLWhlaWdodDogdmFyKC0tdWktY3RybC1oLWxnKSAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tdWktZm9udC1tZCkgIWltcG9ydGFudDtcbn1cblxuLmJ0biBpLFxuLmJ0bi1zbSBpLFxuLnVpLXRhYmxlLWFjdGlvbi1idG4gaSxcbi51aS10YWJsZS11cmwtYnRuIGkge1xuICAgIGZvbnQtc2l6ZTogMC45ZW0gIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMSAhaW1wb3J0YW50O1xufVxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhcixcblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtcGFnaW5hdGlvbiB7XG4gICAgZm9udC1zaXplOiB2YXIoLS11aS1mb250LXNtKSAhaW1wb3J0YW50O1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGggLnRoLWlubmVyIHtcbiAgICBmb250LXNpemU6IDAuNjRyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiA1cHggNnB4ICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMSAhaW1wb3J0YW50O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXMgIWltcG9ydGFudDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wM2VtICFpbXBvcnRhbnQ7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCB7XG4gICAgZm9udC1zaXplOiB2YXIoLS11aS1mb250LXNtKSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAuMzZyZW0gMC40NXJlbSAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1ICFpbXBvcnRhbnQ7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50O1xufVxuXG4uZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS11aS1mb250LXNtKSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAuNHJlbSAwLjYycmVtICFpbXBvcnRhbnQ7XG59XG5cbi5iYWRnZSxcbi5zZXJ2aWNlLWJhZGdlIHtcbiAgICBmb250LXNpemU6IHZhcigtLXVpLWZvbnQteHMpICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMC4ycmVtIDAuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4uY2FyZCAuY2FyZC1ib2R5IHtcbiAgICBwYWRkaW5nOiAwLjdyZW0gIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICB9XG5cbiAgICAudWktbW9kdWxlLWhlYWRlcixcbiAgICAuZmFjdHVyYXMtaGVhZGVyLFxuICAgIC5lc3RpbWFjaW9uZXMtaGVhZGVyLFxuICAgIC5vcmRlbmVzLWhlYWRlciB7XG4gICAgICAgIHBhZGRpbmc6IDAuNDVyZW0gMC41cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC51aS1tb2R1bGUtcGFuZWwsXG4gICAgLnVpLXRhYmxlLWZpeGVkLFxuICAgIC51aS10YWJsZS1jb21wYWN0IHtcbiAgICAgICAgcGFkZGluZzogMC41MnJlbSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5mb3JtLWNvbnRyb2wsXG4gICAgLmZvcm0tc2VsZWN0LFxuICAgIC5idG4sXG4gICAgLmJ0bi1zbSxcbiAgICAudWktdGFibGUtYWN0aW9uLWJ0bixcbiAgICAudWktdGFibGUtdXJsLWJ0biB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDMycHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAubG9nbyB7XG4gICAgICAgIG1heC13aWR0aDogMTI2cHg7XG4gICAgICAgIGdhcDogMC4zcmVtO1xuICAgIH1cblxuICAgIC5sb2dvIGltZyB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDMwcHggIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuXG4gICAgLmxvZ28gc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5oZWFkZXItbmF2IC5uYXYtcHJvZmlsZSBpbWcge1xuICAgICAgICBtYXgtaGVpZ2h0OiAzNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAzNHB4O1xuICAgICAgICBtaW4td2lkdGg6IDM0cHg7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIH1cblxuICAgIC5oZWFkZXItbmF2IC5uYXYtcHJvZmlsZSBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmF2YXRhci13cmFwcGVyLFxuICAgIC5hdmF0YXItd3JhcHBlci10b3Age1xuICAgICAgICB3aWR0aDogNzJweDtcbiAgICAgICAgaGVpZ2h0OiA3MnB4O1xuICAgIH1cblxuICAgIC5hdmF0YXItaW1nLWNvbXBhY3Qge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxNHB4O1xuICAgIH1cblxuICAgIC53b3Jrc3BhY2UtbG9nby1pbWFnZSxcbiAgICAuYnVzaW5lc3MtbG9nbyxcbiAgICAjY29tcGFueUxvZ28ge1xuICAgICAgICBtYXgtd2lkdGg6IDY0cHggIWltcG9ydGFudDtcbiAgICAgICAgbWF4LWhlaWdodDogNjRweCAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogNjRweCAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IDY0cHggIWltcG9ydGFudDtcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgIC5sb2dvIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMTJweDtcbiAgICB9XG5cbiAgICAubG9nbyBpbWcge1xuICAgICAgICBtYXgtaGVpZ2h0OiAyNnB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmxvZ28gc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTFweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5oZWFkZXItbmF2IC5uYXYtcHJvZmlsZSBpbWcge1xuICAgICAgICBtYXgtaGVpZ2h0OiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICBtaW4td2lkdGg6IDMwcHg7XG4gICAgfVxuXG4gICAgLndvcmtzcGFjZS1sb2dvLWltYWdlLFxuICAgIC5idXNpbmVzcy1sb2dvLFxuICAgICNjb21wYW55TG9nbyB7XG4gICAgICAgIG1heC13aWR0aDogNTZweCAhaW1wb3J0YW50O1xuICAgICAgICBtYXgtaGVpZ2h0OiA1NnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiA1NnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogNTZweCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuXG5cbi5wcm95ZWN0b3MtcGFuZWwgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoOmxhc3QtY2hpbGQsXG4ucHJveWVjdG9zLXBhbmVsIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZDpsYXN0LWNoaWxkIHtcbiAgICB3aWR0aDogMzIwcHggIWltcG9ydGFudDsgXG4gICAgbWluLXdpZHRoOiAzMjBweCAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogMzIwcHggIWltcG9ydGFudDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50O1xufVxuXG5cbi5wcm95ZWN0b3MtcGFuZWwgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkOmxhc3QtY2hpbGQgPiBkaXYsXG4ucHJveWVjdG9zLXBhbmVsIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZDpsYXN0LWNoaWxkIC5idG4tZ3JvdXAge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDsgXG4gICAgZ2FwOiAwLjRyZW0gIWltcG9ydGFudDsgXG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuXG4ucHJveWVjdG9zLXBhbmVsIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZDpsYXN0LWNoaWxkIC5idG4ge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xufVxuXG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIFxuICAgIC5wcm95ZWN0b3MtcGFuZWwgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIC5maXhlZC10YWJsZS1oZWFkZXIgdGFibGUsXG4gICAgLnByb3llY3Rvcy1wYW5lbCAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgLmZpeGVkLXRhYmxlLWJvZHkgdGFibGUsXG4gICAgLnByb3llY3Rvcy1wYW5lbCAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgLnRhYmxlIHtcbiAgICAgICAgdGFibGUtbGF5b3V0OiBhdXRvICFpbXBvcnRhbnQ7IFxuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBtaW4td2lkdGg6IG1heC1jb250ZW50ICFpbXBvcnRhbnQ7IFxuICAgIH1cblxuICAgIFxuICAgIC5wcm95ZWN0b3MtcGFuZWwgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoIC50aC1pbm5lciB7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogY2xpcCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEycHggIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjVweCAhaW1wb3J0YW50OyBcbiAgICB9XG5cbiAgICBcbiAgICAucHJveWVjdG9zLXBhbmVsIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCB7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogY2xpcCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIFxuICAgIC5wcm95ZWN0b3MtcGFuZWwgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtYm9keSB7XG4gICAgICAgIG92ZXJmbG93LXg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgb3ZlcmZsb3cteTogaGlkZGVuICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgXG4gICAgXG59XG4ucHJvZmlsZS1hdmF0YXItaW1nLFxuLmF2YXRhci1pbWctY29tcGFjdCB7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbiAhaW1wb3J0YW50OyBcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aS1iZykgIWltcG9ydGFudDsgXG59XG5cbi5oZWFkZXItbmF2IC5uYXYtcHJvZmlsZSBpbWcge1xuICAgIHdpZHRoOiAzOHB4ICFpbXBvcnRhbnQ7ICAgICAgICBcbiAgICBoZWlnaHQ6IDM4cHggIWltcG9ydGFudDsgICAgICAgXG4gICAgb2JqZWN0LWZpdDogY292ZXIgIWltcG9ydGFudDsgIFxuICAgIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50OyBcbiAgICBtYXJnaW4tcmlnaHQ6IDhweCAhaW1wb3J0YW50OyAgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdWktc3VyZmFjZS1tdXRlZCkgIWltcG9ydGFudDsgXG59XG5cblxuXG5cbi5mYyB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdWktc3VyZmFjZSkgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS11aS1ib3JkZXItc3Ryb25nKSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXVpLXJhZGl1cy1sZykgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiB2YXIoLS11aS1zaGFkb3ctbWQpICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiAxMTAwcHggIWltcG9ydGFudDsgXG4gICAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDsgICAgXG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG59XG5cblxuLmZjLXRoZW1lLXN0YW5kYXJkIHRkLCBcbi5mYy10aGVtZS1zdGFuZGFyZCB0aCwgXG4uZmMtdGhlbWUtc3RhbmRhcmQgLmZjLXNjcm9sbGdyaWQge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tdWktYm9yZGVyLXN0cm9uZykgIWltcG9ydGFudDtcbn1cblxuXG4uZmMgLmZjLWNvbC1oZWFkZXItY2VsbCB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAyKTtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMCAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbSAhaW1wb3J0YW50O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dC1tdXRlZCk7XG59XG5cblxuLmZjIC5mYy1kYXlncmlkLWRheS1udW1iZXIge1xuICAgIGZvbnQtc2l6ZTogMC44NXJlbSAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQpO1xuICAgIHBhZGRpbmc6IDhweCAhaW1wb3J0YW50O1xufVxuXG5cbi5mYy1ldmVudCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDIwNCwgMCwgMC4xKSAhaW1wb3J0YW50OyBcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjA0LCAwLCAwLjMpICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogM3B4IDZweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMnB4IDRweCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlLCBib3JkZXItY29sb3IgMC4ycyBlYXNlO1xufVxuXG4uZmMtZXZlbnQ6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXVpLXByaW1hcnkpICFpbXBvcnRhbnQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uZmMtZXZlbnQgLmZjLWV2ZW50LW1haW4ge1xuICAgIGNvbG9yOiB2YXIoLS11aS1oZWFkaW5nKSAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMC43MnJlbSAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuXG5cbi5mYyAuZmMtZGF5LXRvZGF5IHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjA0LCAwLCAwLjA0KSAhaW1wb3J0YW50O1xufVxuXG5cbi5mYyAuZmMtYnV0dG9uLXByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpLXN1cmZhY2UtbXV0ZWQpICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS11aS1ib3JkZXItc3Ryb25nKSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0KSAhaW1wb3J0YW50O1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDYwMCAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMC44NXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAuNHJlbSAwLjhyZW0gIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuICAgIG1hcmdpbjogMTBweDtcbn1cblxuLmZjIC5mYy1idXR0b24tcHJpbWFyeTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDIwNCwgMCwgMC4xKSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tdWktcHJpbWFyeSkgIWltcG9ydGFudDtcbiAgICBjb2xvcjogdmFyKC0tdWktcHJpbWFyeSkgIWltcG9ydGFudDtcbn1cblxuLmZjIC5mYy1idXR0b24tcHJpbWFyeTpub3QoOmRpc2FibGVkKS5mYy1idXR0b24tYWN0aXZlLCBcbi5mYyAuZmMtYnV0dG9uLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aS1wcmltYXJ5KSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS11aS1wcmltYXJ5KSAhaW1wb3J0YW50O1xufVxuXG5cbi5mYyAuZmMtdG9vbGJhci10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDgwMCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB2YXIoLS11aS1oZWFkaW5nKSAhaW1wb3J0YW50O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAyZW07XG59XG5cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgLmZjIHtcbiAgICAgICAgcGFkZGluZzogMC44cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5mYyAuZmMtdG9vbGJhciB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogMC44cmVtO1xuICAgIH1cbn1cblxuXG5cblxuLnN3YWwyLXBvcHVwIHNlbGVjdCxcbi5zd2FsMi1zZWxlY3QsXG4ubW9kYWwtYm9keSBzZWxlY3Qge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpLW5hdi1iZykgIWltcG9ydGFudDsgXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdWktYm9yZGVyLXN0cm9uZykgIWltcG9ydGFudDtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dCkgIWltcG9ydGFudDsgXG4gICAgYm9yZGVyLXJhZGl1czogMTBweCAhaW1wb3J0YW50O1xuICAgIG1pbi1oZWlnaHQ6IDQ0cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbSAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMC45NXJlbSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXRvcDogMC40cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4ycmVtICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAycHggNHB4IHJnYmEoMCwwLDAsMC4yKSAhaW1wb3J0YW50OyBcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xufVxuXG5cbi5zd2FsMi1wb3B1cCBzZWxlY3Q6Zm9jdXMsXG4uc3dhbDItc2VsZWN0OmZvY3VzLFxuLm1vZGFsLWJvZHkgc2VsZWN0OmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXVpLXByaW1hcnkpICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHZhcigtLXVpLWFjY2VudC1yaW5nKSAhaW1wb3J0YW50O1xuICAgIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuXG4uc3dhbDItcG9wdXAgc2VsZWN0IG9wdGlvbixcbi5tb2RhbC1ib2R5IHNlbGVjdCBvcHRpb24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVpLXN1cmZhY2UpICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQpICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMTBweCAhaW1wb3J0YW50O1xufVxuXG5cbi5zd2FsMi1odG1sLWNvbnRhaW5lcixcbi5tb2RhbC1ib2R5IC5pbmZvLWFjdGl2aWRhZCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyBcbiAgICBmb250LXNpemU6IDAuODVyZW0gIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMS42ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQtbXV0ZWQpICFpbXBvcnRhbnQ7XG59XG5cblxuLnN3YWwyLWh0bWwtY29udGFpbmVyIHN0cm9uZyxcbi5zd2FsMi1odG1sLWNvbnRhaW5lciBiLFxuLm1vZGFsLWJvZHkgc3Ryb25nIHtcbiAgICBjb2xvcjogdmFyKC0tdWktaGVhZGluZykgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG59XG5cblxuLnN3YWwyLWh0bWwtY29udGFpbmVyIGxhYmVsLFxuLm1vZGFsLWJvZHkgbGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDgwMCAhaW1wb3J0YW50O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dC1zb2Z0KSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDAuMnJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xufVxuXG5cbi5zd2FsMi1hY3Rpb25zIHtcbiAgICBnYXA6IDFyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnN3YWwyLWNhbmNlbCxcbi5idG4tY2VycmFyLW1vZGFsIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDE0OCwgMTYzLCAxODQsIDAuMSkgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS11aS1ib3JkZXItc3Ryb25nKSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0KSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwLjZyZW0gMS41cmVtICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDYwMCAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgIWltcG9ydGFudDtcbiAgICBtaW4taGVpZ2h0OiA0NHB4O1xufVxuXG4uc3dhbDItY2FuY2VsOmhvdmVyLFxuLmJ0bi1jZXJyYXItbW9kYWw6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMTQ4LCAxNjMsIDE4NCwgMC4yKSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjA0LCAwLCAwLjMpICFpbXBvcnRhbnQ7XG59XG5cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgXG4gICAgLnByb3llY3Rvcy1wYW5lbCAuYm9vdHN0cmFwLXRhYmxlIC5kZXRhaWwtdmlldyB0ZCB7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDsgXG4gICAgfVxuXG4gICAgXG4gICAgLnByb3llY3Rvcy1wYW5lbCAuYm9vdHN0cmFwLXRhYmxlIC5kZXRhaWwtdmlldyB0ZCA+IGRpdixcbiAgICAucHJveWVjdG9zLXBhbmVsIC5ib290c3RyYXAtdGFibGUgLmRldGFpbC12aWV3IC5kZXRhaWwtY29udGFpbmVyLWluZHVzdHJpYWwsXG4gICAgLnByb3llY3Rvcy1wYW5lbCAuYm9vdHN0cmFwLXRhYmxlIC5kZXRhaWwtdmlldyAuZGV0YWlsLWdyaWQtaW5kdXN0cmlhbCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50O1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50OyBcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7IFxuICAgICAgICBnYXA6IDIwcHggIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMjVweCAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3ggIWltcG9ydGFudDtcbiAgICAgICAgb3ZlcmZsb3cteDogYXV0byAhaW1wb3J0YW50OyBcbiAgICB9XG5cbiAgICBcbiAgICAucHJveWVjdG9zLXBhbmVsIC5ib290c3RyYXAtdGFibGUgLmRldGFpbC12aWV3IHRkID4gZGl2ID4gZGl2LFxuICAgIC5wcm95ZWN0b3MtcGFuZWwgLmJvb3RzdHJhcC10YWJsZSAuZGV0YWlsLXZpZXcgLmRldGFpbC1ib3gge1xuICAgICAgICBmbGV4OiAxIDEgMCAhaW1wb3J0YW50OyBcbiAgICAgICAgbWluLXdpZHRoOiAyMjBweCAhaW1wb3J0YW50OyBcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IFxuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgXG4gICAgLmZjLWRheWdyaWQtZXZlbnQge1xuICAgICAgICBtYXJnaW46IDFweCAycHggIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHggIWltcG9ydGFudDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50OyBcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIFxuICAgIC5mYy1ldmVudC1tYWluIHtcbiAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDJweCA0cHggIWltcG9ydGFudDtcbiAgICAgICAgZ2FwOiA0cHggIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBcbiAgICAuZmMtZGF5Z3JpZC1ldmVudC1kb3Qge1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAzcHggIWltcG9ydGFudDsgXG4gICAgICAgIGZsZXgtc2hyaW5rOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgXG4gICAgLmZjLWV2ZW50LXRpbWUge1xuICAgICAgICBmb250LXNpemU6IDAuNTVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDgwMCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogdmFyKC0tdWktcHJpbWFyeSkgIWltcG9ydGFudDtcbiAgICAgICAgZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDsgXG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgXG4gICAgLmZjLWV2ZW50LXRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjU1cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50OyBcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50OyBcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXMgIWltcG9ydGFudDsgXG4gICAgICAgIGZsZXgtZ3JvdzogMSAhaW1wb3J0YW50OyBcbiAgICAgICAgbWluLXdpZHRoOiAwICFpbXBvcnRhbnQ7IFxuICAgIH1cblxuIFxuICAgIC5mYy1ldmVudC1tYWluLWZyYW1lIHtcbiAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIGdhcDogNHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5mb290ZXIge1xuICAgICAgICBmb250LXNpemU6IDAuN3JlbSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5wcm95ZWN0b3MtcGFuZWwgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRke1xuICAgICAgICBmb250LXNpemU6IDAuNzVyZW0gIWltcG9ydGFudDtcbiAgICB9XG4gICBcbn1cblxuLm1vZGFsLWJvZHkgLmxpc3QtZ3JvdXAsXG4ubW9kYWwtYm9keSAuYmctd2hpdGUsXG4ubW9kYWwtYm9keSBbaWQqPVwibGlzdGFcIl0sICAgIFxuLm1vZGFsLWJvZHkgW2lkKj1cImxpc3RcIl0geyAgICBcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDM1KSAhaW1wb3J0YW50OyBcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS11aS1ib3JkZXItc3Ryb25nKSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHggIWltcG9ydGFudDtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dC1zb2Z0KSAhaW1wb3J0YW50OyBcbiAgICBwYWRkaW5nOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgICBtaW4taGVpZ2h0OiA0OHB4O1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMnB4IDRweCByZ2JhKDAsMCwwLDAuMTUpICFpbXBvcnRhbnQ7XG59XG5cblxuLm1vZGFsLWJvZHkgLmxpc3QtZ3JvdXAtaXRlbSxcbi5tb2RhbC1ib2R5IFtpZCo9XCJsaXN0XCJdIGRpdixcbi5tb2RhbC1ib2R5IFtpZCo9XCJsaXN0YVwiXSBkaXYge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMikgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE0OCwgMTYzLCAxODQsIDAuMTIpICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQpICFpbXBvcnRhbnQ7IFxuICAgIGJvcmRlci1yYWRpdXM6IDhweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDAuMzVyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwLjQ1cmVtIDAuOHJlbSAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cblxuLm1vZGFsLWJvZHkgLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG5cblxuXG5cbi5tb2RhbC1ib2R5IC5uYXYtdGFicyB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXVpLWJvcmRlci1zdHJvbmcpICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5tb2RhbC1ib2R5IC5uYXYtdGFicyAubmF2LWxpbmsge1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0LW11dGVkKSAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDYwMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbn1cblxuLm1vZGFsLWJvZHkgLm5hdi10YWJzIC5uYXYtbGluazpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLXVpLWhlYWRpbmcpICFpbXBvcnRhbnQ7XG59XG5cbi5tb2RhbC1ib2R5IC5uYXYtdGFicyAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tdWktcHJpbWFyeSkgIWltcG9ydGFudDtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgdmFyKC0tdWktcHJpbWFyeSkgIWltcG9ydGFudDtcbn1cblxuXG4ubW9kYWwtYm9keSAudGFibGUtYm9yZGVyZWQsXG4ubW9kYWwtYm9keSAudGFibGUtYm9yZGVyZWQgdGgsXG4ubW9kYWwtYm9keSAudGFibGUtYm9yZGVyZWQgdGQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXVpLWJvcmRlci1zdHJvbmcpICFpbXBvcnRhbnQ7IFxufVxuXG4ubW9kYWwtYm9keSAudGFibGUge1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHggIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuXG5cbi5tb2RhbC1ib2R5IC50YWJsZSB0aGVhZCB0aCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdWktc3VyZmFjZS1tdXRlZCkgIWltcG9ydGFudDtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dC1tdXRlZCkgIWltcG9ydGFudDsgXG4gICAgZm9udC1zaXplOiAwLjc1cmVtICFpbXBvcnRhbnQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAxcmVtIDAuOHJlbSAhaW1wb3J0YW50O1xuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgdmFyKC0tdWktYm9yZGVyLXN0cm9uZykgIWltcG9ydGFudDtcbn1cblxuXG4ubW9kYWwtYm9keSAudGFibGUgdGJvZHkgdGggeyBcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11aS1zdXJmYWNlKSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0KSAhaW1wb3J0YW50OyBcbiAgICBmb250LXdlaWdodDogNjAwICFpbXBvcnRhbnQ7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50O1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbSAhaW1wb3J0YW50O1xufVxuXG5cbi5tb2RhbC1ib2R5IC50YWJsZSB0Ym9keSB0ZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdWktc3VyZmFjZSkgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMC44cmVtICFpbXBvcnRhbnQ7XG59XG5cblxuLm1vZGFsLWJvZHkgLnRhYmxlIHRib2R5IHRyOm50aC1jaGlsZChldmVuKSB0ZCxcbi5tb2RhbC1ib2R5IC50YWJsZSB0Ym9keSB0cjpudGgtY2hpbGQoZXZlbikgdGgge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMTUpICFpbXBvcnRhbnQ7IFxufVxuXG5cbi5tb2RhbC1ib2R5IC50YWJsZSB0Ym9keSB0cjpob3ZlciB0ZCxcbi5tb2RhbC1ib2R5IC50YWJsZSB0Ym9keSB0cjpob3ZlciB0aCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDIwNCwgMCwgMC4wNSkgIWltcG9ydGFudDsgXG59XG5cblxuLm1vZGFsLWJvZHkgLmJ0bi13YXJuaW5nLCBcbi5tb2RhbC1ib2R5IC5idG4tb3V0bGluZS13YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1wcmltYXJ5KSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDgwMCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDhweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAuNHJlbSAxLjJyZW0gIWltcG9ydGFudDtcbn1cblxuLm1vZGFsLWJvZHkgLmJ0bi1zZWNvbmRhcnksXG4ubW9kYWwtYm9keSAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS11aS1zdXJmYWNlLW11dGVkKSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0KSAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXVpLWJvcmRlci1zdHJvbmcpICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDYwMCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDhweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAuNHJlbSAxLjJyZW0gIWltcG9ydGFudDtcbn1cbiIsIlxuXG4uZXN0aWxvc19nZW5lcmFsZXMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1pbi13aWR0aDogMDtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhcixcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXBhZ2luYXRpb24sXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1oZWFkZXIsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1ib2R5LFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtZm9vdGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWluLXdpZHRoOiAwO1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNDgsIDE2MywgMTg0LCAwLjE2KTtcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMikgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMSkgMTAwJSk7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tdWktc2hhZG93LXNvZnQpO1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgLmZpeGVkLXRhYmxlLWhlYWRlciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4IDE2cHggMCAwO1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgLmZpeGVkLXRhYmxlLWhlYWRlciB0YWJsZSxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciAuZml4ZWQtdGFibGUtYm9keSB0YWJsZSxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciAuZml4ZWQtdGFibGUtZm9vdGVyIHRhYmxlIHtcbiAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgdGFibGUtbGF5b3V0OiBhdXRvO1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgLnRhYmxlIHtcbiB0YWJsZS1sYXlvdXQ6IGF1dG87IFxuICAgIHdpZHRoOiBtYXgtY29udGVudDtcbiAgICBtaW4td2lkdGg6IDEwMCU7XG4gICBcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtYm9keSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdWktc3VyZmFjZSk7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGgge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgxNSwgMjMsIDQyLCAwLjk2KSAwJSwgcmdiYSgzMCwgNDEsIDU5LCAwLjk2KSAxMDAlKSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiByZ2JhKDI0MSwgMjQ1LCAyNDksIDAuOTUpICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTQ4LCAxNjMsIDE4NCwgMC4yNSkgIWltcG9ydGFudDtcbiAgICBib3JkZXItbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMTQ4LCAxNjMsIDE4NCwgMC4xMikgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGg6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDE2cHg7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTZweDtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoIC50aC1pbm5lciB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiA0NHB4O1xuICAgIHBhZGRpbmc6IDAuOHJlbSAxLjc1cmVtIDAuOHJlbSAwLjk1cmVtICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDAuNzJyZW0gIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNmVtICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgb3ZlcmZsb3ctd3JhcDogbm9ybWFsO1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoIC5zb3J0YWJsZSxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aCAudGgtaW5uZXIuc29ydGFibGUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNzVyZW0gIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAwLjYycmVtIGNlbnRlciAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMC43OHJlbSBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi8qIEV2aXRhIHF1ZSBlbCBpY29ubyBkZSBvcmRlbiAoZmxlY2hhcykgc2Ugc3VwZXJwb25nYSBhbCB0ZXh0byBkZWwgZW5jYWJlemFkbyAqL1xuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoLnNvcnRhYmxlIC50aC1pbm5lcixcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aCAudGgtaW5uZXIuc29ydGFibGUsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGggLnNvcnRhYmxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3ggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyLjFyZW0gIWltcG9ydGFudDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgb3ZlcmZsb3ctd3JhcDogbm9ybWFsO1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0ICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMC42MnJlbSBjZW50ZXIgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDAuNzhyZW0gYXV0byAhaW1wb3J0YW50O1xufVxuXG4vKiBFc3RhZG9zIGRlIG9yZGVuIGFjdGl2byBtYW50aWVuZW4gc2VwYXJhY2nDs24gZXN0YWJsZSAqL1xuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoLmFzYyAudGgtaW5uZXIsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGguZGVzYyAudGgtaW5uZXIsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGggLnRoLWlubmVyLmFzYyxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aCAudGgtaW5uZXIuZGVzYyB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3ggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyLjFyZW0gIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0ICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMC42MnJlbSBjZW50ZXIgIWltcG9ydGFudDtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoOm5vdCguZGV0YWlsKTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogMTglIGF1dG8gMTglIDA7XG4gICAgd2lkdGg6IDFweDtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCByZ2JhKDE0OCwgMTYzLCAxODQsIDAuMDgpIDIwJSwgcmdiYSgxNDgsIDE2MywgMTg0LCAwLjE2KSA1MCUsIHJnYmEoMTQ4LCAxNjMsIDE4NCwgMC4wOCkgODAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpO1xuICAgIG9wYWNpdHk6IDAuOTtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoOmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aDpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgzMCwgNDEsIDU5LCAwLjk4KSAwJSwgcmdiYSg1MSwgNjUsIDg1LCAwLjk4KSAxMDAlKSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiByZ2JhKDI0MSwgMjQ1LCAyNDksIDAuOTUpICFpbXBvcnRhbnQ7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aC5kZXRhaWwgLnRoLWlubmVyIHtcbiAgICBtaW4taGVpZ2h0OiAzOHB4O1xuICAgIHBhZGRpbmctaW5saW5lOiAwICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciAudGFibGUgdGhlYWQgdGguZGV0YWlsLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIC50YWJsZSB0Ym9keSA+IHRyW2RhdGEtaW5kZXhdID4gdGQ6Zmlyc3QtY2hpbGQge1xuICAgIHdpZHRoOiA0NnB4O1xuICAgIG1pbi13aWR0aDogNDZweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA0KTtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dCk7XG4gICAgZm9udC1zaXplOiAwLjk4cmVtO1xuXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTQ4LCAxNjMsIDE4NCwgMC4xMik7XG4gICAgYm9yZGVyLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDE0OCwgMTYzLCAxODQsIDAuMSk7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UsIGNvbG9yIDAuMnMgZWFzZTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyBcbiAgICBvdmVyZmxvdy13cmFwOiBub3JtYWw7IFxuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDsgXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgXG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IFxuICAgIGxpbmUtaGVpZ2h0OiAxLjMgIWltcG9ydGFudDsgXG4gICAgdmVydGljYWwtYWxpZ246IHRvcCAhaW1wb3J0YW50O1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgPiAqLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC50ZXh0LXN0YXJ0LFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC50ZXh0LWNlbnRlcixcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCAudGV4dC1lbmQsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLmNhcmQtdmlldyxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCAuYnRuLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC5idG4tZ3JvdXAsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLmJ0bi10b29sYmFyLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIGEsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgc3Bhbixcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCBkaXYge1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3ctd3JhcDogbm9ybWFsO1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC5idG4sXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLmJ0bi1ncm91cCxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCAuYnRuLXRvb2xiYXIsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLmJ0biBzcGFuLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC5idG4gaSxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCBhLnVpLXRhYmxlLXVybC1idG4sXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgYS51aS10YWJsZS1hY3Rpb24tYnRuIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB0ZXh0LW92ZXJmbG93OiBjbGlwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCBhOm5vdCgudWktdGFibGUtdXJsLWJ0bik6bm90KC51aS10YWJsZS1hY3Rpb24tYnRuKSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC5idG4sXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgYSB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gICAgb3ZlcmZsb3ctd3JhcDogbm9ybWFsO1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLmJ0biB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgZ2FwOiAwLjNyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLmJ0bi1ncm91cCxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCAuYnRuLXRvb2xiYXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGdhcDogMC4zcmVtO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC5iYWRnZSxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCAudWktdGFibGUtY2hpcCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC5kZXRhaWwtaWNvbiB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdHI6bnRoLWNoaWxkKGV2ZW4pIHRkIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI0MSwgMjQ1LCAyNDksIDAuNSk7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0cjpob3ZlciB0ZCB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgxNDgsIDE2MywgMTg0LCAwLjE4KTtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dCk7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0cjpsYXN0LWNoaWxkIHRkIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQ6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGg6Zmlyc3QtY2hpbGQsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQ6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1sZWZ0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCA+ICosXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLnRleHQtc3RhcnQsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLnRleHQtY2VudGVyLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC50ZXh0LWVuZCxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCAuY2FyZC12aWV3IHtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1ib2R5Ojotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgd2lkdGg6IDE0cHg7XG4gICAgaGVpZ2h0OiAxMnB4O1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1ib2R5Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDIwNCwgMCwgMC4zNik7XG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWJvZHk6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjA0LCAwLCAwLjEwKTtcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtYm9keTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyMDQsIDAsIDAuNTIpO1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1ib2R5IHtcbiAgICBzY3JvbGxiYXItd2lkdGg6IGF1dG87XG4gICAgc2Nyb2xsYmFyLWNvbG9yOiByZ2JhKDI1NSwgMjA0LCAwLCAwLjQyKSByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5kZXRhaWwtaWNvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZGV0YWlsLWljb24gYSxcbi5ib290c3RyYXAtdGFibGUgLmRldGFpbC1pY29uIC5idG4ge1xuICAgIHdpZHRoOiAzNHB4O1xuICAgIGhlaWdodDogMzRweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICAgIGNvbG9yOiB2YXIoLS11aS1wcmltYXJ5KTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xOHMgZWFzZSwgY29sb3IgMC4xOHMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAwLjE4cyBlYXNlO1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5kZXRhaWwtaWNvbiBhOmhvdmVyLFxuLmJvb3RzdHJhcC10YWJsZSAuZGV0YWlsLWljb24gLmJ0bjpob3ZlciB7XG4gICAgY29sb3I6ICMxMTExMTE7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdWktcHJpbWFyeSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA0KTtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtYm9keSAubm8tcmVjb3Jkcy1mb3VuZCB0ZCxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWJvZHkgLm5vLXJlY29yZHMtZm91bmQgLmNhcmQtdmlldyB7XG4gICAgcGFkZGluZzogMS40cmVtIDFyZW07XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdWktc3VyZmFjZSk7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQtbXV0ZWQpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDAuOTJyZW07XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmNhcmQtdmlld3Mge1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5jYXJkLXZpZXcge1xuICAgIHBhZGRpbmc6IDAuNzJyZW0gMC44NXJlbTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgxNDgsIDE2MywgMTg0LCAwLjEyKTtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuY2FyZC12aWV3Omxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmNhcmQtdmlldyAudGl0bGUge1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBmb250LXNpemU6IDAuNzNyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQtc29mdCk7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmNhcmQtdmlldyAudmFsdWUge1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dCk7XG4gICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXBhZ2luYXRpb24ge1xuICAgIG1hcmdpbi10b3A6IDAuOTVyZW07XG59XG5cbi5ib290c3RyYXAtdGFibGUgLnBhZ2luYXRpb24tZGV0YWlsLFxuLmJvb3RzdHJhcC10YWJsZSAucGFnaW5hdGlvbiB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dC1tdXRlZCk7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLnBhZ2luYXRpb24tZGV0YWlsIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5wYWdpbmF0aW9uIHtcbiAgICBnYXA6IDAuM3JlbTtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAucGFnZS1saW5rLFxuLmJvb3RzdHJhcC10YWJsZSAucGFnaW5hdGlvbiAucGFnZS1saW5rIHtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTQ4LCAxNjMsIDE4NCwgMC4xNik7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQtbXV0ZWQpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLXN1cmZhY2UpO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLnBhZ2UtaXRlbS5hY3RpdmUgLnBhZ2UtbGluayB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdWktcHJpbWFyeSk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS11aS1wcmltYXJ5KTtcbiAgICBjb2xvcjogIzExMTExMTtcbiAgICBmb250LXdlaWdodDogNzAwO1xufVxuXG5baWRePVwidG9vbGJhcl9cIl0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAwLjY1cmVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwLjM1cmVtIDAgMS4xNXJlbTtcbn1cblxuW2lkXj1cInRvb2xiYXJfXCJdID4gKiB7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciB7XG4gICAgcGFkZGluZzogNXB4O1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGdhcDogMC43cmVtO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAuY29sdW1ucyxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLnNlYXJjaCxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmJzLWJhcnMge1xuICAgIG1hcmdpbjogMDtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAuYnMtYmFycyB7XG4gICAgb3JkZXI6IDE7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAudWktdG9vbGJhci1wcmltYXJ5LWlubGluZSB7XG4gICAgb3JkZXI6IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC41NXJlbTtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLnNlYXJjaCB7XG4gICAgb3JkZXI6IDA7XG4gICAgZmxleDogMCAxIDIyMHB4O1xuICAgIHdpZHRoOiBjbGFtcCgxOTBweCwgMjJ2dywgMjQwcHgpO1xuICAgIG1pbi13aWR0aDogMTkwcHg7XG4gICAgbWF4LXdpZHRoOiAyNDBweDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAuY29sdW1ucyB7XG4gICAgb3JkZXI6IDM7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmJzLWJhcnMgLmJ0bi1ncm91cCxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmJzLWJhcnMgPiAuYnRuLWdyb3VwLXZlcnRpY2FsLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAuYnMtYmFycyA+IGRpdiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBnYXA6IDAuNjVyZW07XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyICNidG5fbnVldm8ge1xuICAgIG9yZGVyOiAtMTA7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsIDIwNCwgMCwgMC45OCkgMCUsIHJnYmEoMjU1LCAxODQsIDAsIDAuOTQpIDEwMCUpO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDIwNCwgMCwgMC40NSk7XG4gICAgY29sb3I6ICMxMTExMTE7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICBib3gtc2hhZG93OiAwIDE0cHggMjZweCByZ2JhKDI1NSwgMTg0LCAwLCAwLjIpO1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyICNidG5fbnVldm86aG92ZXIsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyICNidG5fbnVldm86Zm9jdXMge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LCAyMTQsIDY0LCAxKSAwJSwgcmdiYSgyNTUsIDE5MywgNywgMC45NikgMTAwJSk7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjE0LCA2NCwgMC41NSk7XG4gICAgY29sb3I6ICMxMTExMTE7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgI2J0bl9yZW1vdmVfYWxsLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAjYnRuX2VzdGFkb19hbGwge1xuICAgIG9yZGVyOiAyMDtcbn1cblxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyICNidG5fcmVtb3ZlX2FsbDpub3QoOmRpc2FibGVkKSB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyMjAsIDM4LCAzOCwgMC45OCkgMCUsIHJnYmEoMTg1LCAyOCwgMjgsIDAuOTYpIDEwMCUpO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNDgsIDExMywgMTEzLCAwLjU1KTtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAjYnRuX2VzdGFkb19hbGw6bm90KDpkaXNhYmxlZCkge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjQ1LCAxNTgsIDExLCAwLjk4KSAwJSwgcmdiYSgyMTcsIDExOSwgNiwgMC45NikgMTAwJSk7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1MSwgMTkxLCAzNiwgMC41Nik7XG4gICAgY29sb3I6ICMxMTExMTE7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgI2J0bl9yZW1vdmVfYWxsOm5vdCg6ZGlzYWJsZWQpOmhvdmVyLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAjYnRuX3JlbW92ZV9hbGw6bm90KDpkaXNhYmxlZCk6Zm9jdXMge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjM5LCA2OCwgNjgsIDEpIDAlLCByZ2JhKDIyMCwgMzgsIDM4LCAwLjk4KSAxMDAlKTtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMjUyLCAxNjUsIDE2NSwgMC42Mik7XG4gICAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgI2J0bl9lc3RhZG9fYWxsOm5vdCg6ZGlzYWJsZWQpOmhvdmVyLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAjYnRuX2VzdGFkb19hbGw6bm90KDpkaXNhYmxlZCk6Zm9jdXMge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjUxLCAxOTEsIDM2LCAwLjk4KSAwJSwgcmdiYSgyNDUsIDE1OCwgMTEsIDAuOTYpIDEwMCUpO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTIsIDIxMSwgNzcsIDAuNjIpO1xuICAgIGNvbG9yOiAjMTExMTExO1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyIC5idG46ZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDAuNDI7XG4gICAgZmlsdGVyOiBncmF5c2NhbGUoMC45KSBzYXR1cmF0ZSgwLjU1KTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIudG9vbGJhci1idWxrLWFjdGl2ZSAudG9vbGJhci1idWxrLWJ1dHRvbi0tYWN0aXZlOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgZmlsdGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogMCAxMnB4IDIycHggcmdiYSgxNSwgMjMsIDQyLCAwLjIpICFpbXBvcnRhbnQ7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIudG9vbGJhci1idWxrLWFjdGl2ZSAjYnRuX3JlbW92ZV9hbGwudG9vbGJhci1idWxrLWJ1dHRvbi0tYWN0aXZlOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDIyMCwgMzgsIDM4LCAwLjk4KSAwJSwgcmdiYSgxODUsIDI4LCAyOCwgMC45NikgMTAwJSkgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMjQ4LCAxMTMsIDExMywgMC41NSkgIWltcG9ydGFudDtcbiAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyLnRvb2xiYXItYnVsay1hY3RpdmUgI2J0bl9lc3RhZG9fYWxsLnRvb2xiYXItYnVsay1idXR0b24tLWFjdGl2ZTpub3QoOmRpc2FibGVkKSB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNDUsIDE1OCwgMTEsIDAuOTgpIDAlLCByZ2JhKDIxNywgMTE5LCA2LCAwLjk2KSAxMDAlKSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTEsIDE5MSwgMzYsIDAuNTYpICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICMxMTExMTEgIWltcG9ydGFudDtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhci50b29sYmFyLWJ1bGstaWRsZSAudG9vbGJhci1idWxrLWJ1dHRvbi0taWRsZTpkaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogMC4zNCAhaW1wb3J0YW50O1xuICAgIGZpbHRlcjogZ3JheXNjYWxlKDEpIHNhdHVyYXRlKDAuNSkgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDE0OCwgMTYzLCAxODQsIDAuMDgpICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDE0OCwgMTYzLCAxODQsIDAuMTIpICFpbXBvcnRhbnQ7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLnRvb2xiYXItYnVsay1idXR0b24ge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLCBib3JkZXItY29sb3IgMC4ycyBlYXNlLCBjb2xvciAwLjJzIGVhc2UsIG9wYWNpdHkgMC4ycyBlYXNlLCBmaWx0ZXIgMC4ycyBlYXNlLCBib3gtc2hhZG93IDAuMnMgZWFzZTtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAuY29sdW1ucyAuYnRuIHtcbiAgICBvcGFjaXR5OiAwLjkyO1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyIC5zZWFyY2ggaW5wdXQsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyIC5zZWFyY2ggLmZvcm0tY29udHJvbCB7XG4gICAgbWluLWhlaWdodDogNDBweDtcbiAgICBib3JkZXItcmFkaXVzOiAxNHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTQ4LCAxNjMsIDE4NCwgMC4xNik7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdWktc3VyZmFjZSk7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQpO1xuICAgIHBhZGRpbmctaW5saW5lOiAwLjlyZW07XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAuc2VhcmNoIGlucHV0OjpwbGFjZWhvbGRlcixcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLnNlYXJjaCAuZm9ybS1jb250cm9sOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQtc29mdCk7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLnNlYXJjaCBpbnB1dDpmb2N1cyxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLnNlYXJjaCAuZm9ybS1jb250cm9sOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXVpLXByaW1hcnkpO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMThyZW0gdmFyKC0tdWktYWNjZW50LXJpbmcpO1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyIC5idG4sXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1wYWdpbmF0aW9uIC5idG4sXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyIC5idG4tZ3JvdXAgPiAuYnRuLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAuY29sdW1ucyAuYnRuIHtcbiAgICBtaW4taGVpZ2h0OiAzNnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDExcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNDgsIDE2MywgMTg0LCAwLjE2KTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDQpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDIpIDEwMCUpO1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0KTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHBhZGRpbmc6IDAuNDJyZW0gMC43MnJlbTtcbiAgICBib3gtc2hhZG93OiAwIDhweCAxOHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmJ0bjpob3Zlcixcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXBhZ2luYXRpb24gLmJ0bjpob3Zlcixcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmNvbHVtbnMgLmJ0bjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDIwNCwgMCwgMC4xMik7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjA0LCAwLCAwLjI1KTtcbiAgICBjb2xvcjogdmFyKC0tdWktaGVhZGluZyk7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmJ0bjpmb2N1cyxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXBhZ2luYXRpb24gLmJ0bjpmb2N1cyxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmNvbHVtbnMgLmJ0bjpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMC4xOHJlbSB2YXIoLS11aS1hY2NlbnQtcmluZyk7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWJvZHkgdGJvZHkgLnVpLXRhYmxlLW1vYmlsZS1pY29uLW9ubHkudWktdGFibGUtYWN0aW9uLWJ0bixcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1ib2R5IHRib2R5IC51aS10YWJsZS1tb2JpbGUtaWNvbi1vbmx5LnVpLXRhYmxlLXVybC1idG4ge1xuICAgICAgICB3aWR0aDogMzJweCAhaW1wb3J0YW50O1xuICAgICAgICBtaW4td2lkdGg6IDMycHggIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOiAzMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogMzJweCAhaW1wb3J0YW50O1xuICAgICAgICBtaW4taGVpZ2h0OiAzMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgZ2FwOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtYm9keSB0Ym9keSAudWktdGFibGUtbW9iaWxlLWljb24tb25seSAudWktdGFibGUtYWN0aW9uLWxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWJvZHkgdGJvZHkgLnVpLXRhYmxlLW1vYmlsZS1pY29uLW9ubHkgaSxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1ib2R5IHRib2R5IC51aS10YWJsZS1tb2JpbGUtaWNvbi1vbmx5IHN2ZyB7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogMC4yNHJlbTtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgfVxuXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAudWktdG9vbGJhci1wcmltYXJ5LWlubGluZSxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyIC5icy1iYXJzLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLnNlYXJjaCxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyIC5jb2x1bW5zIHtcbiAgICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAudWktdG9vbGJhci1wcmltYXJ5LWlubGluZSB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgZ2FwOiAwLjNyZW07XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmJzLWJhcnMgLmJ0bi1ncm91cCxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyIC5icy1iYXJzID4gLmJ0bi1ncm91cC12ZXJ0aWNhbCxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyIC5icy1iYXJzID4gZGl2LFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmNvbHVtbnMgLmJ0bi1ncm91cCxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyIC5jb2x1bW5zID4gLmJ0bi1ncm91cC12ZXJ0aWNhbCxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyIC5jb2x1bW5zID4gZGl2IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBnYXA6IDAuM3JlbTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLnNlYXJjaCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZmxleDogMCAwIDMycHg7XG4gICAgICAgIHdpZHRoOiAzMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1pbi13aWR0aDogMzJweCAhaW1wb3J0YW50O1xuICAgICAgICBtYXgtd2lkdGg6IDMycHggIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgICBtaW4taGVpZ2h0OiAzMnB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICAgICAgb3JkZXI6IDk5O1xuICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjIycyBlYXNlLCBtYXgtd2lkdGggMC4yMnMgZWFzZSwgYm94LXNoYWRvdyAwLjJzIGVhc2UsIGJvcmRlci1jb2xvciAwLjJzIGVhc2U7XG4gICAgfVxuXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAuc2VhcmNoOmZvY3VzLXdpdGhpbiB7XG4gICAgICAgIG9yZGVyOiAxMDA7XG4gICAgICAgIHdpZHRoOiBjbGFtcCgxNTBweCwgNDJ2dywgMjIwcHgpICFpbXBvcnRhbnQ7XG4gICAgICAgIG1pbi13aWR0aDogMTUwcHggIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLnNlYXJjaCBpbnB1dCxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyIC5zZWFyY2ggLmZvcm0tY29udHJvbCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICBjYXJldC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICB9XG5cbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyIC5zZWFyY2g6Zm9jdXMtd2l0aGluIGlucHV0LFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLnNlYXJjaDpmb2N1cy13aXRoaW4gLmZvcm0tY29udHJvbCxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyIC5zZWFyY2ggaW5wdXQ6Zm9jdXMsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAuc2VhcmNoIC5mb3JtLWNvbnRyb2w6Zm9jdXMge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGluc2V0OiBhdXRvO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBjb2xvcjogdmFyKC0tdWktdGV4dCkgIWltcG9ydGFudDtcbiAgICAgICAgY2FyZXQtY29sb3I6IHZhcigtLXVpLXRleHQpICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgbWluLWhlaWdodDogMzJweDtcbiAgICAgICAgcGFkZGluZzogMC40MnJlbSAwLjhyZW0gMC40MnJlbSAxLjk1cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLXN1cmZhY2UpICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTQ4LCAxNjMsIDE4NCwgMC4xNikgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMThyZW0gdmFyKC0tdWktYWNjZW50LXJpbmcpICFpbXBvcnRhbnQ7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAuc2VhcmNoIGlucHV0OjpwbGFjZWhvbGRlcixcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyIC5zZWFyY2ggLmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyIC5zZWFyY2g6Zm9jdXMtd2l0aGluIGlucHV0OjpwbGFjZWhvbGRlcixcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyIC5zZWFyY2g6Zm9jdXMtd2l0aGluIC5mb3JtLWNvbnRyb2w6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXVpLXRleHQtc29mdCkgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyICNidG5fcmVtb3ZlX2FsbCAudG9vbGJhci1idG4tbGFiZWwsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAjYnRuX2VzdGFkb19hbGwgLnRvb2xiYXItYnRuLWxhYmVsLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgI2J0bl9yZW1vdmVfYWxsLnRvb2xiYXItYnVsay1idXR0b24gLnRvb2xiYXItYnRuLWxhYmVsLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgI2J0bl9lc3RhZG9fYWxsLnRvb2xiYXItYnVsay1idXR0b24gLnRvb2xiYXItYnRuLWxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgI2J0bl9yZW1vdmVfYWxsLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgI2J0bl9lc3RhZG9fYWxsIHtcbiAgICAgICAgd2lkdGg6IDMycHggIWltcG9ydGFudDtcbiAgICAgICAgbWluLXdpZHRoOiAzMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1heC13aWR0aDogMzJweCAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IDMycHggIWltcG9ydGFudDtcbiAgICAgICAgbWluLWhlaWdodDogMzJweCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGdhcDogMCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDAgIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEgIWltcG9ydGFudDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyICNidG5fcmVtb3ZlX2FsbCBpLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgI2J0bl9lc3RhZG9fYWxsIGkge1xuICAgICAgICBmb250LXNpemU6IDAuOTJyZW0gIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyICNidG5fcmVtb3ZlX2FsbDpub3QoOmRpc2FibGVkKSB7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjIwLCAzOCwgMzgsIDAuOTgpIDAlLCByZ2JhKDE4NSwgMjgsIDI4LCAwLjk2KSAxMDAlKSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMjQ4LCAxMTMsIDExMywgMC41KSAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgI2J0bl9lc3RhZG9fYWxsOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNDUsIDE1OCwgMTEsIDAuOTgpIDAlLCByZ2JhKDIxNywgMTE5LCA2LCAwLjk2KSAxMDAlKSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMjUxLCAxOTEsIDM2LCAwLjU1KSAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogIzExMTExMSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGggLnRoLWlubmVyLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aCAudGgtaW5uZXIuc29ydGFibGUsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoIC5zb3J0YWJsZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgb3ZlcmZsb3ctd3JhcDogbm9ybWFsO1xuICAgICAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjA1ICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHtcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGggLnRoLWlubmVyIHtcbiAgICAgICAgbWluLWhlaWdodDogMzRweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDAuNjByZW0gIWltcG9ydGFudDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDQ1ZW0gIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMC40NnJlbSAxLjQ1cmVtIDAuNDZyZW0gMC41NnJlbSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkgYW5kIChtYXgtd2lkdGg6IDE0MzkuOThweCkge1xuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aCAudGgtaW5uZXIge1xuICAgICAgICBtaW4taGVpZ2h0OiAzNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMC42NHJlbSAhaW1wb3J0YW50O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wNWVtICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAuNTJyZW0gMS41NXJlbSAwLjUycmVtIDAuNjJyZW0gIWltcG9ydGFudDtcbiAgICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxNDQwcHgpIGFuZCAobWF4LXdpZHRoOiAxOTE5Ljk4cHgpIHtcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGggLnRoLWlubmVyIHtcbiAgICAgICAgbWluLWhlaWdodDogMzhweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDAuNjdyZW0gIWltcG9ydGFudDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDU1ZW0gIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMC42cmVtIDEuNjVyZW0gMC42cmVtIDAuNzJyZW0gIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmRyb3Bkb3duLW1lbnUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTQ4LCAxNjMsIDE4NCwgMC4xNik7XG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgICBib3gtc2hhZG93OiAwIDE4cHggMzRweCByZ2JhKDAsIDAsIDAsIDAuMjgpO1xuICAgIHBhZGRpbmc6IDAuNDVyZW07XG4gICAgYmFja2dyb3VuZDogdmFyKC0tdWktc3VyZmFjZSk7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmRyb3Bkb3duLWl0ZW0ge1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgcGFkZGluZzogMC40NXJlbSAwLjdyZW07XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQpO1xufVxuXG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmRyb3Bkb3duLWl0ZW06aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyMDQsIDAsIDAuMSk7XG4gICAgY29sb3I6IHZhcigtLXVpLWhlYWRpbmcpO1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyIC5rZWVwLW9wZW4gLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyIC5jb2x1bW5zIC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgICBtYXJnaW4tbGVmdDogMC40cmVtO1xufVxuXG4udWktbW9kdWxlLWhlYWRlcixcbi5mYWN0dXJhcy1oZWFkZXIsXG4uZXN0aW1hY2lvbmVzLWhlYWRlcixcbi5vcmRlbmVzLWhlYWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWFyZ2luOiAwLjRyZW0gMCAxcmVtO1xuICAgIHBhZGRpbmc6IDEuMTVyZW0gMS4xNXJlbSAxcmVtO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTQ4LCAxNjMsIDE4NCwgMC4xNik7XG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDMpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDE1KSAxMDAlKTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS11aS1zaGFkb3ctc29mdCk7XG59XG5cbi51aS1tb2R1bGUtaGVhZGVyOjpiZWZvcmUsXG4uZmFjdHVyYXMtaGVhZGVyOjpiZWZvcmUsXG4uZXN0aW1hY2lvbmVzLWhlYWRlcjo6YmVmb3JlLFxuLm9yZGVuZXMtaGVhZGVyOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGluc2V0OiAwIGF1dG8gYXV0byAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgxNDgsIDE2MywgMTg0LCAwLjc1KSwgcmdiYSgyNTUsIDIwNCwgMCwgMC45KSk7XG59XG5cbi51aS1tb2R1bGUtaGVhZGVyID4gKixcbi5mYWN0dXJhcy1oZWFkZXIgPiAqLFxuLmVzdGltYWNpb25lcy1oZWFkZXIgPiAqLFxuLm9yZGVuZXMtaGVhZGVyID4gKiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG59XG5cbi51aS1tb2R1bGUta2lja2VyLFxuLm1vZHVsZS1raWNrZXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICAgIGdhcDogMC4zNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjQ1cmVtO1xuICAgIHBhZGRpbmc6IDAuMjVyZW0gMC42NXJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjA0LCAwLCAwLjE4KTtcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjA0LCAwLCAwLjA4KTtcbiAgICBjb2xvcjogdmFyKC0tdWktcHJpbWFyeSk7XG4gICAgZm9udC1zaXplOiAwLjc2cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi51aS1tb2R1bGUtdGl0bGUsXG4uZmFjdHVyYXMtdGl0bGUsXG4uZXN0aW1hY2lvbmVzLXRpdGxlLFxuLm9yZGVuZXMtdGl0bGUge1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogdmFyKC0tdWktaGVhZGluZyk7XG4gICAgZm9udC1zaXplOiBjbGFtcCgxLjA4cmVtLCAyLjF2dywgMS41NXJlbSk7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xufVxuXG4udWktbW9kdWxlLXN1YnRpdGxlLFxuLmZhY3R1cmFzLXN1YnRpdGxlLFxuLmVzdGltYWNpb25lcy1zdWJ0aXRsZSxcbi5vcmRlbmVzLXN1YnRpdGxlIHtcbiAgICBtYXJnaW46IDAuMzVyZW0gMCAwO1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0LW11dGVkKTtcbiAgICBmb250LXNpemU6IDAuOTZyZW07XG59XG5cbi51aS1tb2R1bGUtdG9vbGJhcixcbi5mYWN0dXJhcy10b29sYmFyLXdyYXAsXG4uZXN0aW1hY2lvbmVzLXRvb2xiYXItd3JhcCxcbi5vcmRlbmVzLXRvb2xiYXItd3JhcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC44cmVtO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cblxuLnVpLW1vZHVsZS10b29sYmFyIC5idG4sXG4uZmFjdHVyYXMtdG9vbGJhci13cmFwIC5idG4sXG4uZXN0aW1hY2lvbmVzLXRvb2xiYXItd3JhcCAuYnRuLFxuLm9yZGVuZXMtdG9vbGJhci13cmFwIC5idG4ge1xuICAgIGJvcmRlci1yYWRpdXM6IDAuNjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBib3gtc2hhZG93OiAwIDhweCAxNnB4IHJnYmEoMTUsIDIzLCA0MiwgMC4wOCk7XG59XG5cbi51aS1tb2R1bGUtcGFuZWwsXG4uZmFjdHVyYXMtcGFuZWwsXG4ub3JkZW5lcy1wYW5lbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICBcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICAgIFxuICAgIGJveC1zaGFkb3c6IHZhcigtLXVpLXNoYWRvdy1zb2Z0KTtcbn1cblxuLnVpLW1vZHVsZS1wYW5lbC0td29ya3NwYWNlLFxuLm9yZGVuZXMtcGFuZWwtLXdvcmtzcGFjZSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OiBub25lO1xufVxuXG4udWktdGFibGUtdXJsLWJ0biB7XG4gICAgbWluLXdpZHRoOiA5NnB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiAwLjM1cmVtO1xuICAgIHBhZGRpbmc6IDAuMzRyZW0gMC42cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuOHJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjA0LCAwLCAwLjIyKTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjA0LCAwLCAwLjEpO1xuICAgIGNvbG9yOiB2YXIoLS11aS1oZWFkaW5nKTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLCBib3JkZXItY29sb3IgMC4ycyBlYXNlLCBjb2xvciAwLjJzIGVhc2UsIGJveC1zaGFkb3cgMC4ycyBlYXNlO1xufVxuXG4udWktdGFibGUtdXJsLWJ0bjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDIwNCwgMCwgMC4xNik7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjA0LCAwLCAwLjMpO1xuICAgIGNvbG9yOiAjMTExMTExO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgICBib3gtc2hhZG93OiAwIDhweCAxNnB4IHJnYmEoMjU1LCAyMDQsIDAsIDAuMDgpO1xufVxuXG4udWktdGFibGUtdXJsLWJ0bi0taWNvbiB7XG4gICAgd2lkdGg6IDM2cHg7XG4gICAgbWluLXdpZHRoOiAzNnB4O1xuICAgIGhlaWdodDogMzZweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xufVxuXG4udWktdGFibGUtYWN0aW9uLWJ0biB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBnYXA6IDAuM3JlbTtcbiAgICBtaW4taGVpZ2h0OiAzNnB4O1xuICAgIHBhZGRpbmc6IDAuMzRyZW0gMC42OHJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAwLjcycmVtO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTQ4LCAxNjMsIDE4NCwgMC4xNik7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAzKTtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dCk7XG4gICAgbWluLXdpZHRoOiBtYXgtY29udGVudCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gICAgb3ZlcmZsb3ctd3JhcDogbm9ybWFsO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDMpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLCBib3JkZXItY29sb3IgMC4ycyBlYXNlLCBjb2xvciAwLjJzIGVhc2UsIGJveC1zaGFkb3cgMC4ycyBlYXNlO1xufVxuXG4udWktdGFibGUtYWN0aW9uLWJ0bjpob3ZlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xufVxuXG4udWktdGFibGUtYWN0aW9uLWJ0bi0tcHJpbWFyeSB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDM3LCA5OSwgMjM1LCAwLjIyKTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDM3LCA5OSwgMjM1LCAwLjEyKTtcbiAgICBjb2xvcjogI2JmZDRmZjtcbn1cblxuLnVpLXRhYmxlLWFjdGlvbi1idG4tLXByaW1hcnk6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMzcsIDk5LCAyMzUsIDAuMTgpO1xuICAgIGNvbG9yOiAjZWFmMmZmO1xuICAgIGJveC1zaGFkb3c6IDAgOHB4IDE2cHggcmdiYSgzNywgOTksIDIzNSwgMC4xMik7XG59XG5cbi51aS10YWJsZS1hY3Rpb24tYnRuLS1zdWNjZXNzIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMTYsIDE4NSwgMTI5LCAwLjIyKTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDE2LCAxODUsIDEyOSwgMC4xMik7XG4gICAgY29sb3I6ICNhN2YzZDA7XG59XG5cbi51aS10YWJsZS1hY3Rpb24tYnRuLS1zdWNjZXNzOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDE2LCAxODUsIDEyOSwgMC4xOCk7XG4gICAgY29sb3I6ICNkMWZhZTU7XG4gICAgYm94LXNoYWRvdzogMCA4cHggMTZweCByZ2JhKDE2LCAxODUsIDEyOSwgMC4xMik7XG59XG5cbi51aS10YWJsZS1hY3Rpb24tYnRuLS1kYW5nZXIge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgyMzksIDY4LCA2OCwgMC4yMik7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyMzksIDY4LCA2OCwgMC4xMik7XG4gICAgY29sb3I6ICNmZWNhY2E7XG4gICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xufVxuXG4udWktdGFibGUtYWN0aW9uLWJ0bi0tZGFuZ2VyOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDIzOSwgNjgsIDY4LCAwLjE4KTtcbiAgICBjb2xvcjogI2ZlZTJlMjtcbiAgICBib3gtc2hhZG93OiAwIDhweCAxNnB4IHJnYmEoMjM5LCA2OCwgNjgsIDAuMTIpO1xufVxuXG4udWktdGFibGUtYWN0aW9uLWJ0bi0tbmV1dHJhbCB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDE0OCwgMTYzLCAxODQsIDAuMTYpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMyk7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQtbXV0ZWQpO1xufVxuXG4udWktdGFibGUtYWN0aW9uLWJ0bi0taWNvbiB7XG4gICAgd2lkdGg6IDM2cHg7XG4gICAgbWluLXdpZHRoOiAzNnB4O1xuICAgIGhlaWdodDogMzZweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xufVxuXG4udWktdGFibGUtYWN0aW9uLWJ0bi0tY29tcGFjdCB7XG4gICAgbWluLXdpZHRoOiA4MHB4ICFpbXBvcnRhbnQ7XG4gICAgbWluLWhlaWdodDogMzZweDtcbiAgICBwYWRkaW5nOiAwLjNyZW0gMC41OHJlbTtcbiAgICBnYXA6IDAuMjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMC43MnJlbTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi51aS10YWJsZS1hY3Rpb24tYnRuLS1jb21wYWN0IGkge1xuICAgIGZvbnQtc2l6ZTogMC44NnJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbn1cblxuLnVpLXRhYmxlLWFjdGlvbi1idG4tLWNvbXBhY3Qgc3Bhbixcbi51aS10YWJsZS1hY3Rpb24tYnRuLS1jb21wYWN0Om5vdCgudWktdGFibGUtYWN0aW9uLWJ0bi0taWNvbikge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi51aS10YWJsZS1hY3Rpb24tYnRuLS1jb21wYWN0LnVpLXRhYmxlLWFjdGlvbi1idG4tLWljb24ge1xuICAgIHdpZHRoOiAzNnB4O1xuICAgIG1pbi13aWR0aDogMzZweCAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogMzZweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLmVzdGFkby51aS10YWJsZS1hY3Rpb24tYnRuLS1jb21wYWN0IHtcbiAgICBwYWRkaW5nLWlubGluZTogMC42MnJlbSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4ICFpbXBvcnRhbnQ7XG4gICAgbWluLXdpZHRoOiBtYXgtY29udGVudCAhaW1wb3J0YW50O1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLmVzdGFkby51aS10YWJsZS1hY3Rpb24tYnRuLS1jb21wYWN0IHtcbiAgICBmb250LXNpemU6IDAuNzJyZW0gIWltcG9ydGFudDtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC51aS10YWJsZS1hY3Rpb24tYnRuIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgICBvdmVyZmxvdy13cmFwOiBub3JtYWw7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCAuYnRuLXByaW1hcnksXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLmJ0bi1zdWNjZXNzLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC5idG4tZGFuZ2VyLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC5idG4tb3V0bGluZS1wcmltYXJ5LFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC5idG4tb3V0bGluZS1zdWNjZXNzLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC5idG4tb3V0bGluZS1kYW5nZXIsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLmJ0bi1zZWNvbmRhcnksXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLmJ0bi1saWdodCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgd29yZC1icmVhazogbm9ybWFsO1xuICAgIG92ZXJmbG93LXdyYXA6IG5vcm1hbDtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC5idG4tb3V0bGluZS1wcmltYXJ5LFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC5idG4tcHJpbWFyeSB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDM3LCA5OSwgMjM1LCAwLjIyKTtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC5idG4tb3V0bGluZS1zdWNjZXNzLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC5idG4tc3VjY2VzcyB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDE2LCAxODUsIDEyOSwgMC4yMik7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCAuYnRuLWRhbmdlcixcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCAuYnRuLW91dGxpbmUtZGFuZ2VyIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMjM5LCA2OCwgNjgsIDAuMjIpO1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLmJ0bi1saWdodCxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCAuYnRuLXNlY29uZGFyeSB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDE0OCwgMTYzLCAxODQsIDAuMTYpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMyk7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQpO1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLmJ0bi1saWdodDpob3Zlcixcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCAuYnRuLXNlY29uZGFyeTpob3Zlcixcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCAuYnRuLW91dGxpbmUtcHJpbWFyeTpob3Zlcixcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCAuYnRuLW91dGxpbmUtc3VjY2Vzczpob3Zlcixcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCAuYnRuLW91dGxpbmUtZGFuZ2VyOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjA0LCAwLCAwLjEyKTtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyMDQsIDAsIDAuMjQpO1xuICAgIGNvbG9yOiB2YXIoLS11aS1oZWFkaW5nKTtcbn1cblxuLnVpLXRhYmxlLWZpeGVkIC5maXhlZC10YWJsZS1jb250YWluZXIgLmZpeGVkLXRhYmxlLWhlYWRlciB0YWJsZSxcbi51aS10YWJsZS1maXhlZCAuZml4ZWQtdGFibGUtY29udGFpbmVyIC5maXhlZC10YWJsZS1ib2R5IHRhYmxlLFxuLnVpLXRhYmxlLWZpeGVkIC5maXhlZC10YWJsZS1jb250YWluZXIgLmZpeGVkLXRhYmxlLWZvb3RlciB0YWJsZSB7XG4gICAgdGFibGUtbGF5b3V0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi51aS10YWJsZS1jb21wYWN0IC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGgge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLnVpLXRhYmxlLWNvbXBhY3QgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCB7XG4gICAgcGFkZGluZzogMC40MnJlbSAwLjQ2cmVtO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbn1cblxuLnVpLXRhYmxlLWNvbXBhY3QgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciAudGFibGUgdGhlYWQgdGggLnRoLWlubmVyIHtcbiAgICBmb250LXNpemU6IDAuNjlyZW07XG59XG5cbi51aS10YWJsZS1pY29uLWJ0biB7XG4gICAgd2lkdGg6IDM4cHg7XG4gICAgaGVpZ2h0OiAzOHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xufVxuXG4udWktdGFibGUtdGh1bWIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwcHg7XG4gICAgbWF4LWhlaWdodDogNTZweDtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE0OCwgMTYzLCAxODQsIDAuMTYpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXVpLXN1cmZhY2UpO1xufVxuXG4udWktdGFibGUtY2hpcCB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBnYXA6IDAuMzVyZW07XG4gICAgcGFkZGluZzogMC4yOHJlbSAwLjU4cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyMDQsIDAsIDAuMjIpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyMDQsIDAsIDAuMSk7XG4gICAgY29sb3I6IHZhcigtLXVpLWhlYWRpbmcpO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbi5iYWRnZS1zb2Z0LWRhbmdlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMzksIDY4LCA2OCwgMC4xMikgIWltcG9ydGFudDtcbiAgICBjb2xvcjogI2Y4NzE3MSAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjM5LCA2OCwgNjgsIDAuMikgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uYmFkZ2Utc29mdC1zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE2LCAxODUsIDEyOSwgMC4xMikgIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzM0ZDM5OSAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTYsIDE4NSwgMTI5LCAwLjIpICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmJhZGdlLXNvZnQtd2FybmluZyxcbi5iYWRnZS1zb2Z0LWR1ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDIwNCwgMCwgMC4xMikgIWltcG9ydGFudDtcbiAgICBjb2xvcjogdmFyKC0tdWktcHJpbWFyeSkgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjA0LCAwLCAwLjE4KSAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5iYWRnZS1zb2Z0LW5ldXRyYWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTQ4LCAxNjMsIDE4NCwgMC4xNCkgIWltcG9ydGFudDtcbiAgICBjb2xvcjogdmFyKC0tdWktdGV4dC1tdXRlZCkgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE0OCwgMTYzLCAxODQsIDAuMikgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuXG4udWktdGFibGUtZGV0YWlsLXBhbmVsIHtcbiAgICBib3JkZXItcmFkaXVzOiAxNHB4O1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICMyNDI4MmQgMCUsICMyMDI0MjggMTAwJSk7XG4gICAgcGFkZGluZzogMC44cmVtO1xufVxuXG4udWktdGFibGUtZGV0YWlsLWdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyMjBweCwgMWZyKSk7XG4gICAgZ2FwOiAwLjdyZW07XG59XG5cbi51aS10YWJsZS1kZXRhaWwtaXRlbSxcbi5nYXN0by1kZXRhaWwtaXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgICBnYXA6IDAuNzVyZW07XG4gICAgcGFkZGluZzogMC41NXJlbSAwLjY1cmVtICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE0OCwgMTYzLCAxODQsIDAuMSk7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAxNSk7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnVpLXRhYmxlLWRldGFpbC1pdGVtLS1mdWxsIHtcbiAgICBncmlkLWNvbHVtbjogMSAvIC0xO1xufVxuXG4udWktdGFibGUtZGV0YWlsLWl0ZW0tLXN0YXR1c2NvbXBhY3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAganVzdGlmeS1zZWxmOiBzdHJldGNoO1xuICAgIGZsZXg6IDEgMSBhdXRvO1xufVxuXG4udWktdGFibGUtZGV0YWlsLWxhYmVsIHtcbiAgICBmb250LXNpemU6IDAuNjVyZW0gIWltcG9ydGFudDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0LXNvZnQpICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xufVxuLnVpLXRhYmxlLWRldGFpbC10ZXh0LXdyYXBwZXIsXG4uZ2FzdG8tZGV0YWlsLXRleHQtd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IFxuICAgIGdhcDogMnB4O1xuICAgIG1pbi13aWR0aDogMDtcbn1cbi51aS10YWJsZS1kZXRhaWwtdmFsdWUsXG4uZ2FzdG8tZGV0YWlsLXZhbHVlIHtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBmb250LXNpemU6IDAuOTJyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWwgIWltcG9ydGFudDsgXG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xufVxuXG4uZ2FzdG8tZGV0YWlsLWxhYmVsLXRleHQge1xuICAgIGZvbnQtc2l6ZTogMC42NXJlbSAhaW1wb3J0YW50O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6IHZhcigtLXVpLXRleHQtc29mdCkgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmRldGFpbC12aWV3IHRkIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgIzI0MjgyZCAwJSwgIzIwMjQyOCAxMDAlKSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS11aS1ib3JkZXItc3Ryb25nKSAhaW1wb3J0YW50O1xufVxuXG5cblxuLnRhYmxlLWRhcmstaW5kdXN0cmlhbCB0aCxcbi50YWJsZS1kYXJrLWluZHVzdHJpYWwgdGQge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDtcbn1cblxuLnRhYmxlLWRhcmstaW5kdXN0cmlhbCB0ZCB7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50O1xufVxuXG4uZml4ZWQtdGFibGUtY29udGFpbmVyIC50YWJsZSB0ZC51aS10YWJsZS1jb2wtb3BlcmF0ZSB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbi5maXhlZC10YWJsZS1jb250YWluZXIgLnRhYmxlIHRkLnVpLXRhYmxlLWNvbC1vcGVyYXRlIC51aS10YWJsZS1vcC1ub3dyYXAge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIGdhcDogMC4zNXJlbTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uZml4ZWQtdGFibGUtY29udGFpbmVyIC50YWJsZSB0ZC51aS10YWJsZS1jb2wtb3BlcmF0ZSAudWktdGFibGUtb3Atbm93cmFwIC5idG4sXG4uZml4ZWQtdGFibGUtY29udGFpbmVyIC50YWJsZSB0ZC51aS10YWJsZS1jb2wtb3BlcmF0ZSAudWktdGFibGUtb3Atbm93cmFwIC51aS10YWJsZS1hY3Rpb24tYnRuIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtYm9keSB7XG4gICAgb3ZlcmZsb3cteDogYXV0byAhaW1wb3J0YW50O1xuICAgIHNjcm9sbGJhci13aWR0aDogOHB4OyBcbn1cblxuXG5cbi50YWJsZS1kYXJrLWluZHVzdHJpYWwgdGQge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgIHRleHQtb3ZlcmZsb3c6IGNsaXAgIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdy13cmFwOiBhbnl3aGVyZSAhaW1wb3J0YW50O1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQgIWltcG9ydGFudDtcbn1cblxuXG5cbi50YWJsZS1kYXJrLWluZHVzdHJpYWwge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgdGFibGUtbGF5b3V0OiBhdXRvICFpbXBvcnRhbnQ7IFxufVxuXG5cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHtcbiBcbiAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDsgXG4gICAgYm9yZGVyOjFweCBzb2xpZCByZ2IoMjU1IDI1NSAyNTUgLyAyNSUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5mYWN0dXJhLWNvbC1hY3Rpb25zIC5idG4tZ3JvdXAsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuY290aXphY2lvbi1jb2wtYWN0aW9ucyAuYnRuLWdyb3VwLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmNvdGl6YWNpb24tY29sLW9wZXJhdGlvbnMgLmJ0bi1ncm91cCxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jYW1iaW8tb3JkZW4tY29sLW9wZXJhdGlvbnMgLmJ0bi1ncm91cCxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jYW1iaW8tb3JkZW4tY29sLW1ldGEtYWN0aW9ucyAuYnRuLWdyb3VwLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmdhc3RvLWNvbC1vcGVyYXRpb25zIC5idG4tZ3JvdXAsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZ2FzdG8tY29sLW9wZXJhdGlvbnMtbW9iaWxlIC5idG4tZ3JvdXAsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZmFjdHVyYS1jb2wtYWN0aW9ucyAuYnRuLXRvb2xiYXIsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuY290aXphY2lvbi1jb2wtYWN0aW9ucyAuYnRuLXRvb2xiYXIsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuY290aXphY2lvbi1jb2wtb3BlcmF0aW9ucyAuYnRuLXRvb2xiYXIsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuY2FtYmlvLW9yZGVuLWNvbC1vcGVyYXRpb25zIC5idG4tdG9vbGJhcixcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jYW1iaW8tb3JkZW4tY29sLW1ldGEtYWN0aW9ucyAuYnRuLXRvb2xiYXIsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZ2FzdG8tY29sLW9wZXJhdGlvbnMgLmJ0bi10b29sYmFyLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmdhc3RvLWNvbC1vcGVyYXRpb25zLW1vYmlsZSAuYnRuLXRvb2xiYXIsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZmFjdHVyYS1jb2wtYWN0aW9ucyAuZmFjdHVyYS1lc3RpbWFkby1hY3Rpb25zLXdyYXAsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuY290aXphY2lvbi1jb2wtb3BlcmF0aW9ucyAuZmFjdHVyYS1lc3RpbWFkby1hY3Rpb25zLXdyYXAsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuY290aXphY2lvbi1jb2wtYWN0aW9ucyAuY290aXphY2lvbi1zZW5kLWFjdGlvbnMtd3JhcCxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jYW1iaW8tb3JkZW4tY29sLW9wZXJhdGlvbnMgLmNhbWJpby1vcmRlbi1hY3Rpb25zLXdyYXAsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuY2FtYmlvLW9yZGVuLWNvbC1tZXRhLWFjdGlvbnMgLmNhbWJpby1vcmRlbi1hY3Rpb25zLXdyYXAsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuY2FtYmlvLW9yZGVuLWNvbC1tZXRhLWFjdGlvbnMgLmNhbWJpby1vcmRlbi1tb2JpbGUtdW5pZmllZC1hY3Rpb25zLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmdhc3RvLWNvbC1vcGVyYXRpb25zIC5jYW1iaW8tb3JkZW4tYWN0aW9ucy13cmFwLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmdhc3RvLWNvbC1vcGVyYXRpb25zLW1vYmlsZSAuZ2FzdG8tbW9iaWxlLW9wZXJhdGlvbi1idXR0b25zLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmdhc3RvLWNvbC1vcGVyYXRpb25zLW1vYmlsZSAuZ2FzdG8tbW9iaWxlLXN0YXR1cy13cmFwIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xuICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7ICAgIFxuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWFyZ2luLWlubGluZTogYXV0byAhaW1wb3J0YW50O1xufVxuXG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aCB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50O1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGggLnRoLWlubmVyIHtcbmRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgXG4gICAgXG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50OyBcbiAgICBcbiAgICBcbiAgICBcbiAgICBvdmVyZmxvdy13cmFwOiBhbnl3aGVyZSAhaW1wb3J0YW50OyBcbiAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkICFpbXBvcnRhbnQ7IFxuICAgIFxuICAgIFxuICAgIFxuICAgIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDsgXG4gICAgdGV4dC1vdmVyZmxvdzogY2xpcCAhaW1wb3J0YW50O1xuXG4gICAgXG4gICAgcGFkZGluZzogMC40cmVtIDAuNXJlbSAhaW1wb3J0YW50OyBcbiAgICBsaW5lLWhlaWdodDogMS4xICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgbWluLWhlaWdodDogMzJweCAhaW1wb3J0YW50O1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGggLnRoLWlubmVyLnNvcnRhYmxlLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoIC5zb3J0YWJsZSB7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1vdmVyZmxvdzogY2xpcCAhaW1wb3J0YW50O1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyLjJyZW0gIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAwLjRyZW0gY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cblxuXG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aC5jb3RpemFjaW9uLWNvbC1lc3RpbWF0ZS1udW1iZXIsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmNvdGl6YWNpb24tY29sLWVzdGltYXRlLW51bWJlciB7XG4gICAgICAgIG1pbi13aWR0aDogMTI0cHg7XG4gICAgfVxuXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoLmZhY3R1cmEtY29sLW51bWJlcixcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZmFjdHVyYS1jb2wtbnVtYmVyIHtcbiAgICAgICAgbWluLXdpZHRoOiAxMzZweDtcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aC5jb3RpemFjaW9uLWNvbC1lc3RpbWF0ZS1udW1iZXIsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmNvdGl6YWNpb24tY29sLWVzdGltYXRlLW51bWJlciB7XG4gICAgICAgIG1pbi13aWR0aDogMTAycHg7XG4gICAgfVxuXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoLmZhY3R1cmEtY29sLW51bWJlcixcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZmFjdHVyYS1jb2wtbnVtYmVyIHtcbiAgICAgICAgbWluLXdpZHRoOiAxMTBweDtcbiAgICB9XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aC5jb3RpemFjaW9uLWNvbC1lc3RpbWF0ZS1udW1iZXIgLnRoLWlubmVyIHtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmUgIWltcG9ydGFudDtcbiAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkICFpbXBvcnRhbnQ7XG4gICAgaHlwaGVuczogYXV0byAhaW1wb3J0YW50O1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGguZmFjdHVyYS1jb2wtbnVtYmVyIC50aC1pbm5lciB7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93LXdyYXA6IGFueXdoZXJlICFpbXBvcnRhbnQ7XG4gICAgd29yZC1icmVhazogYnJlYWstd29yZCAhaW1wb3J0YW50O1xuICAgIGh5cGhlbnM6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGguZmFjdHVyYS1jb2wtYWN0aW9ucyxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5mYWN0dXJhLWNvbC1hY3Rpb25zLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoLmZhY3R1cmEtY29sLW1ldGEtYWN0aW9ucyxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5mYWN0dXJhLWNvbC1tZXRhLWFjdGlvbnMsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGguY290aXphY2lvbi1jb2wtb3BlcmF0aW9ucyxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jb3RpemFjaW9uLWNvbC1vcGVyYXRpb25zLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoLmNhbWJpby1vcmRlbi1jb2wtb3BlcmF0aW9ucyxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jYW1iaW8tb3JkZW4tY29sLW9wZXJhdGlvbnMsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGguZ2FzdG8tY29sLW9wZXJhdGlvbnMsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZ2FzdG8tY29sLW9wZXJhdGlvbnMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHggIWltcG9ydGFudDtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoLmZhY3R1cmEtY29sLWFjdGlvbnMgLnRoLWlubmVyLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoLmZhY3R1cmEtY29sLW1ldGEtYWN0aW9ucyAudGgtaW5uZXIsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGguY290aXphY2lvbi1jb2wtb3BlcmF0aW9ucyAudGgtaW5uZXIsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGguY2FtYmlvLW9yZGVuLWNvbC1vcGVyYXRpb25zIC50aC1pbm5lcixcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aC5nYXN0by1jb2wtb3BlcmF0aW9ucyAudGgtaW5uZXIge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgIHRleHQtb3ZlcmZsb3c6IGNsaXAgIWltcG9ydGFudDtcbiAgICBtaW4td2lkdGg6IDE1MHB4ICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmZhY3R1cmEtY29sLWFjdGlvbnMgPiAqLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmZhY3R1cmEtY29sLW1ldGEtYWN0aW9ucyA+ICosXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuY290aXphY2lvbi1jb2wtYWN0aW9ucyA+ICosXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuY290aXphY2lvbi1jb2wtb3BlcmF0aW9ucyA+ICosXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuY2FtYmlvLW9yZGVuLWNvbC1vcGVyYXRpb25zID4gKixcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jYW1iaW8tb3JkZW4tY29sLW1ldGEtYWN0aW9ucyA+ICosXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZ2FzdG8tY29sLW9wZXJhdGlvbnMgPiAqLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmdhc3RvLWNvbC1vcGVyYXRpb25zLW1vYmlsZSA+ICoge1xuICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1vdmVyZmxvdzogY2xpcCAhaW1wb3J0YW50O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbn1cblxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgLmZpeGVkLXRhYmxlLWhlYWRlciB0YWJsZSxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciAuZml4ZWQtdGFibGUtYm9keSB0YWJsZSxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciAuZml4ZWQtdGFibGUtZm9vdGVyIHRhYmxlLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIC50YWJsZSB7XG4gICAgdGFibGUtbGF5b3V0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtaW4td2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtYm9keSB7XG4gICAgb3ZlcmZsb3cteDogYXV0byAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGggLnRoLWlubmVyIHtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICB0ZXh0LW92ZXJmbG93OiBjbGlwICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmUgIWltcG9ydGFudDtcbiAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkICFpbXBvcnRhbnQ7XG59XG5cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgXG4gICAgLmJvb3RzdHJhcC10YWJsZSxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lcixcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1ib2R5LFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXBhZ2luYXRpb24ge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMHZ3O1xuICAgIH1cblxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIC5maXhlZC10YWJsZS1oZWFkZXIgdGFibGUsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIC5maXhlZC10YWJsZS1ib2R5IHRhYmxlLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciAuZml4ZWQtdGFibGUtZm9vdGVyIHRhYmxlLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciAudGFibGUge1xuICAgICAgICB0YWJsZS1sYXlvdXQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgbWluLXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtYm9keSB7XG4gICAgICAgIG92ZXJmbG93LXg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgICAgIG1heC1oZWlnaHQ6IGNsYW1wKDMyMHB4LCA2OHZoLCA3MnZoKTtcbiAgICAgICBcbiAgICB9XG5cbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgLnRhYmxlIHRoZWFkIHRoLmRldGFpbCxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgLnRhYmxlIHRib2R5ID4gdHJbZGF0YS1pbmRleF0gPiB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICB3aWR0aDogMjZweCAhaW1wb3J0YW50OyAgICAgXG4gICAgbWluLXdpZHRoOiAyNnB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50OyAgICAgXG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gIFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aCB7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGggLnRoLWlubmVyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgbWluLXdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMC41NHJlbSwgMXZ3LCAwLjY0cmVtKSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAzcHggMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDE2cHggIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMiAhaW1wb3J0YW50O1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBjbGlwICFpbXBvcnRhbnQ7XG4gICAgICAgIG92ZXJmbG93LXdyYXA6IGFueXdoZXJlICFpbXBvcnRhbnQ7XG4gICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQgIWltcG9ydGFudDtcbiAgICAgICAgd3JpdGluZy1tb2RlOiBob3Jpem9udGFsLXRiICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtb3JpZW50YXRpb246IG1peGVkICFpbXBvcnRhbnQ7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aCB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDIycHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGggLnRoLWlubmVyLnNvcnRhYmxlIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMS40cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDJweCBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAwLjdyZW0gYXV0byAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aC5jb3RpemFjaW9uLWNvbC1zZWxlY3QgLnRoLWlubmVyLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aC5jb3RpemFjaW9uLWNvbC1jbGllbnQgLnRoLWlubmVyLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aC5jb3RpemFjaW9uLWNvbC1hY3Rpb25zIC50aC1pbm5lcixcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGguZ2FzdG8tY29sLXNlbGVjdCAudGgtaW5uZXIsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoLmdhc3RvLWNvbC1zdW1tYXJ5LW1vYmlsZSAudGgtaW5uZXIsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoLmdhc3RvLWNvbC1tZXRhLW1vYmlsZSAudGgtaW5uZXIge1xuICAgICAgICBmb250LXNpemU6IGNsYW1wKDAuNTZyZW0sIDEuOXZ3LCAwLjY4cmVtKSAhaW1wb3J0YW50O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aC5jb3RpemFjaW9uLWNvbC1hY3Rpb25zLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jb3RpemFjaW9uLWNvbC1hY3Rpb25zLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aC5jb3RpemFjaW9uLWNvbC1vcGVyYXRpb25zLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jb3RpemFjaW9uLWNvbC1vcGVyYXRpb25zIHtcbiAgICAgICAgbWluLXdpZHRoOiA5NnB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoLmNvdGl6YWNpb24tY29sLWFjdGlvbnMgLnRoLWlubmVyLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aC5jb3RpemFjaW9uLWNvbC1vcGVyYXRpb25zIC50aC1pbm5lciB7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWwgIWltcG9ydGFudDtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogY2xpcCAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xICFpbXBvcnRhbnQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICAgICAgICB3b3JkLWJyZWFrOiBub3JtYWwgIWltcG9ydGFudDtcbiAgICAgICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aC5nYXN0by1jb2wtb3BlcmF0aW9ucy1tb2JpbGUgLnRoLWlubmVyIHtcbiAgICAgICAgbWluLXdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAycHggNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGNsaXAgIWltcG9ydGFudDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xICFpbXBvcnRhbnQ7XG4gICAgICAgIHdvcmQtYnJlYWs6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAgICAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoLmdhc3RvLWNvbC1zdW1tYXJ5LW1vYmlsZSxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZ2FzdG8tY29sLXN1bW1hcnktbW9iaWxlIHtcbiAgICAgICAgbWluLXdpZHRoOiAyMjBweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aC5nYXN0by1jb2wtb3BlcmF0aW9ucy1tb2JpbGUsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmdhc3RvLWNvbC1vcGVyYXRpb25zLW1vYmlsZSB7XG4gICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIG1pbi13aWR0aDogMTI4cHggIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDJweCAhaW1wb3J0YW50O1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIH1cblxuICAgIFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCB7XG4gICAgICAgIHBhZGRpbmc6IDAuMjhyZW0gMC4zNnJlbSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDAuN3JlbSAhaW1wb3J0YW50O1xuICAgICAgICBtaW4taGVpZ2h0OiAyOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlICFpbXBvcnRhbnQ7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWwgIWltcG9ydGFudDtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogY2xpcCAhaW1wb3J0YW50O1xuICAgICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkICFpbXBvcnRhbnQ7XG4gICAgICAgIG92ZXJmbG93LXdyYXA6IGFueXdoZXJlICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkID4gKixcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLnRleHQtc3RhcnQsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC50ZXh0LWNlbnRlcixcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLnRleHQtZW5kLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCAuY2FyZC12aWV3LFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCBhLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCBzcGFuLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCBkaXYge1xuICAgICAgICBtaW4td2lkdGg6IDAgIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWwgIWltcG9ydGFudDtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogY2xpcCAhaW1wb3J0YW50O1xuICAgICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkICFpbXBvcnRhbnQ7XG4gICAgICAgIG92ZXJmbG93LXdyYXA6IGFueXdoZXJlICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC5idG4ge1xuICAgICAgICBwYWRkaW5nOiAwLjIycmVtIDAuNDZyZW0gIWltcG9ydGFudDtcbiAgICAgICAgbWluLWhlaWdodDogMjZweDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCAuZXN0YWRvLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCAuZXN0YWRvLmVzdGFkby0tbW9iaWxlIHtcbiAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgbWluLXdpZHRoOiBtYXgtY29udGVudCAhaW1wb3J0YW50O1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMC4xOHJlbSAwLjQycmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDI2cHggIWltcG9ydGFudDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGNsaXAgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOTk5cHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAwLjYycmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjA1ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmZhY3R1cmEtY29sLWFjdGlvbnMgLmJ0bi1ncm91cCxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZmFjdHVyYS1jb2wtbWV0YS1hY3Rpb25zIC5idG4tZ3JvdXAsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmNvdGl6YWNpb24tY29sLWFjdGlvbnMgLmJ0bi1ncm91cCxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuY290aXphY2lvbi1jb2wtb3BlcmF0aW9ucyAuYnRuLWdyb3VwLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jYW1iaW8tb3JkZW4tY29sLW9wZXJhdGlvbnMgLmJ0bi1ncm91cCxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuY2FtYmlvLW9yZGVuLWNvbC1tZXRhLWFjdGlvbnMgLmJ0bi1ncm91cCxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZ2FzdG8tY29sLW9wZXJhdGlvbnMgLmJ0bi1ncm91cCxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZ2FzdG8tY29sLW9wZXJhdGlvbnMtbW9iaWxlIC5idG4tZ3JvdXAsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmZhY3R1cmEtY29sLWFjdGlvbnMgLmJ0bi10b29sYmFyLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5mYWN0dXJhLWNvbC1tZXRhLWFjdGlvbnMgLmJ0bi10b29sYmFyLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jb3RpemFjaW9uLWNvbC1hY3Rpb25zIC5idG4tdG9vbGJhcixcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuY290aXphY2lvbi1jb2wtb3BlcmF0aW9ucyAuYnRuLXRvb2xiYXIsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmNhbWJpby1vcmRlbi1jb2wtb3BlcmF0aW9ucyAuYnRuLXRvb2xiYXIsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmNhbWJpby1vcmRlbi1jb2wtbWV0YS1hY3Rpb25zIC5idG4tdG9vbGJhcixcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZ2FzdG8tY29sLW9wZXJhdGlvbnMgLmJ0bi10b29sYmFyLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5nYXN0by1jb2wtb3BlcmF0aW9ucy1tb2JpbGUgLmJ0bi10b29sYmFyLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5mYWN0dXJhLWNvbC1hY3Rpb25zIC5mYWN0dXJhLWVzdGltYWRvLWFjdGlvbnMtd3JhcCxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZmFjdHVyYS1jb2wtbWV0YS1hY3Rpb25zIC5mYWN0dXJhLWVzdGltYWRvLWFjdGlvbnMtd3JhcCxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuY290aXphY2lvbi1jb2wtb3BlcmF0aW9ucyAuZmFjdHVyYS1lc3RpbWFkby1hY3Rpb25zLXdyYXAsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmNvdGl6YWNpb24tY29sLWFjdGlvbnMgLmNvdGl6YWNpb24tc2VuZC1hY3Rpb25zLXdyYXAsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmNhbWJpby1vcmRlbi1jb2wtb3BlcmF0aW9ucyAuY2FtYmlvLW9yZGVuLWFjdGlvbnMtd3JhcCxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuY2FtYmlvLW9yZGVuLWNvbC1tZXRhLWFjdGlvbnMgLmNhbWJpby1vcmRlbi1hY3Rpb25zLXdyYXAsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmNhbWJpby1vcmRlbi1jb2wtbWV0YS1hY3Rpb25zIC5jYW1iaW8tb3JkZW4tbW9iaWxlLXVuaWZpZWQtYWN0aW9ucyxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZ2FzdG8tY29sLW9wZXJhdGlvbnMgLmNhbWJpby1vcmRlbi1hY3Rpb25zLXdyYXAsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmdhc3RvLWNvbC1vcGVyYXRpb25zLW1vYmlsZSAuZ2FzdG8tbW9iaWxlLW9wZXJhdGlvbi1idXR0b25zLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5nYXN0by1jb2wtb3BlcmF0aW9ucy1tb2JpbGUgLmdhc3RvLW1vYmlsZS1zdGF0dXMtd3JhcCB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQgIWltcG9ydGFudDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWF4LWNvbnRlbnQpICFpbXBvcnRhbnQ7XG4gICAgICAgIGdyaWQtYXV0by1mbG93OiByb3cgIWltcG9ydGFudDtcbiAgICAgICAgZ2FwOiAwLjIycmVtIDAuMjhyZW0gIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAganVzdGlmeS1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZmFjdHVyYS1jb2wtYWN0aW9ucyAuYnRuLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5mYWN0dXJhLWNvbC1tZXRhLWFjdGlvbnMgLmJ0bixcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuY290aXphY2lvbi1jb2wtYWN0aW9ucyAuYnRuLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jb3RpemFjaW9uLWNvbC1vcGVyYXRpb25zIC5idG4sXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmNhbWJpby1vcmRlbi1jb2wtb3BlcmF0aW9ucyAuYnRuLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jYW1iaW8tb3JkZW4tY29sLW1ldGEtYWN0aW9ucyAuYnRuLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5nYXN0by1jb2wtb3BlcmF0aW9ucyAuYnRuLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5nYXN0by1jb2wtb3BlcmF0aW9ucy1tb2JpbGUgLmJ0biB7XG4gICAgICAgIGp1c3RpZnktc2VsZjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aC5mYWN0dXJhLWNvbC1hY3Rpb25zIC50aC1pbm5lcixcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGguZmFjdHVyYS1jb2wtbWV0YS1hY3Rpb25zIC50aC1pbm5lcixcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGguY290aXphY2lvbi1jb2wtb3BlcmF0aW9ucyAudGgtaW5uZXIsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoLmNhbWJpby1vcmRlbi1jb2wtb3BlcmF0aW9ucyAudGgtaW5uZXIsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoLmdhc3RvLWNvbC1vcGVyYXRpb25zIC50aC1pbm5lciB7XG4gICAgICAgIG1pbi13aWR0aDogbWF4LWNvbnRlbnQgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDJweCA0cHggIWltcG9ydGFudDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogY2xpcCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aC5mYWN0dXJhLWNvbC1hY3Rpb25zLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5mYWN0dXJhLWNvbC1hY3Rpb25zLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aC5mYWN0dXJhLWNvbC1tZXRhLWFjdGlvbnMsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmZhY3R1cmEtY29sLW1ldGEtYWN0aW9ucyxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGguY290aXphY2lvbi1jb2wtb3BlcmF0aW9ucyxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuY290aXphY2lvbi1jb2wtb3BlcmF0aW9ucyxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGguY2FtYmlvLW9yZGVuLWNvbC1vcGVyYXRpb25zLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jYW1iaW8tb3JkZW4tY29sLW9wZXJhdGlvbnMsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoLmdhc3RvLWNvbC1vcGVyYXRpb25zLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5nYXN0by1jb2wtb3BlcmF0aW9ucyB7XG4gICAgICAgIHdpZHRoOiAxJSAhaW1wb3J0YW50O1xuICAgICAgICBtaW4td2lkdGg6IG1heC1jb250ZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDJweCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAycHggIWltcG9ydGFudDtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG5cbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZmFjdHVyYS1jb2wtYWN0aW9ucyxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZmFjdHVyYS1jb2wtbWV0YS1hY3Rpb25zLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jb3RpemFjaW9uLWNvbC1hY3Rpb25zLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jb3RpemFjaW9uLWNvbC1vcGVyYXRpb25zLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jYW1iaW8tb3JkZW4tY29sLW9wZXJhdGlvbnMsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmNhbWJpby1vcmRlbi1jb2wtbWV0YS1hY3Rpb25zLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5nYXN0by1jb2wtb3BlcmF0aW9ucyxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZ2FzdG8tY29sLW9wZXJhdGlvbnMtbW9iaWxlIHtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5mYWN0dXJhLWNvbC1hY3Rpb25zIC5idG4sXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmZhY3R1cmEtY29sLW1ldGEtYWN0aW9ucyAuYnRuLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jb3RpemFjaW9uLWNvbC1vcGVyYXRpb25zIC5idG4sXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmNhbWJpby1vcmRlbi1jb2wtb3BlcmF0aW9ucyAuYnRuLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5nYXN0by1jb2wtb3BlcmF0aW9ucyAuYnRuLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5nYXN0by1jb2wtb3BlcmF0aW9ucy1tb2JpbGUgLmJ0biB7XG4gICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIG1pbi13aWR0aDogbWF4LWNvbnRlbnQgIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDI4cHggIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMC4yOHJlbSAwLjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDdweCAhaW1wb3J0YW50O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAwLjcycmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjA1ICFpbXBvcnRhbnQ7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmZhY3R1cmEtY29sLWFjdGlvbnMgLmJ0bi51aS10YWJsZS1hY3Rpb24tYnRuLS1pY29uLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5mYWN0dXJhLWNvbC1tZXRhLWFjdGlvbnMgLmJ0bi51aS10YWJsZS1hY3Rpb24tYnRuLS1pY29uLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jb3RpemFjaW9uLWNvbC1vcGVyYXRpb25zIC5idG4udWktdGFibGUtYWN0aW9uLWJ0bi0taWNvbixcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuY2FtYmlvLW9yZGVuLWNvbC1vcGVyYXRpb25zIC5idG4udWktdGFibGUtYWN0aW9uLWJ0bi0taWNvbixcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZ2FzdG8tY29sLW9wZXJhdGlvbnMgLmJ0bi51aS10YWJsZS1hY3Rpb24tYnRuLS1pY29uLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5nYXN0by1jb2wtb3BlcmF0aW9ucy1tb2JpbGUgLmJ0bi51aS10YWJsZS1hY3Rpb24tYnRuLS1pY29uLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5mYWN0dXJhLWNvbC1hY3Rpb25zIC5idG4uYnRuLW1vdmlsLWNpcmN1bGFyLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jb3RpemFjaW9uLWNvbC1vcGVyYXRpb25zIC5idG4uYnRuLW1vdmlsLWNpcmN1bGFyLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jYW1iaW8tb3JkZW4tY29sLW9wZXJhdGlvbnMgLmJ0bi5idG4tbW92aWwtY2lyY3VsYXIsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmdhc3RvLWNvbC1vcGVyYXRpb25zIC5idG4uYnRuLW1vdmlsLWNpcmN1bGFyLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5nYXN0by1jb2wtb3BlcmF0aW9ucy1tb2JpbGUgLmJ0bi5idG4tbW92aWwtY2lyY3VsYXIge1xuICAgICAgICB3aWR0aDogMjhweCAhaW1wb3J0YW50O1xuICAgICAgICBtaW4td2lkdGg6IDI4cHggIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiAyOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDI4cHggIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDAgIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZmFjdHVyYS1jb2wtYWN0aW9ucyAuYnRuICsgLmJ0bixcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZmFjdHVyYS1jb2wtbWV0YS1hY3Rpb25zIC5idG4gKyAuYnRuLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jb3RpemFjaW9uLWNvbC1vcGVyYXRpb25zIC5idG4gKyAuYnRuLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jYW1iaW8tb3JkZW4tY29sLW9wZXJhdGlvbnMgLmJ0biArIC5idG4sXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmdhc3RvLWNvbC1vcGVyYXRpb25zIC5idG4gKyAuYnRuLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5nYXN0by1jb2wtb3BlcmF0aW9ucy1tb2JpbGUgLmJ0biArIC5idG4ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMnB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmZhY3R1cmEtY29sLWFjdGlvbnMgLmJ0biBpLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5mYWN0dXJhLWNvbC1tZXRhLWFjdGlvbnMgLmJ0biBpLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jb3RpemFjaW9uLWNvbC1vcGVyYXRpb25zIC5idG4gaSxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuY2FtYmlvLW9yZGVuLWNvbC1vcGVyYXRpb25zIC5idG4gaSxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZ2FzdG8tY29sLW9wZXJhdGlvbnMgLmJ0biBpLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5nYXN0by1jb2wtb3BlcmF0aW9ucy1tb2JpbGUgLmJ0biBpLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5mYWN0dXJhLWNvbC1hY3Rpb25zIC5idG4gLmJpLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5mYWN0dXJhLWNvbC1tZXRhLWFjdGlvbnMgLmJ0biAuYmksXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmNvdGl6YWNpb24tY29sLW9wZXJhdGlvbnMgLmJ0biAuYmksXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmNhbWJpby1vcmRlbi1jb2wtb3BlcmF0aW9ucyAuYnRuIC5iaSxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZ2FzdG8tY29sLW9wZXJhdGlvbnMgLmJ0biAuYmksXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmdhc3RvLWNvbC1vcGVyYXRpb25zLW1vYmlsZSAuYnRuIC5iaSxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZmFjdHVyYS1jb2wtYWN0aW9ucyAuYnRuIC5yaSxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZmFjdHVyYS1jb2wtbWV0YS1hY3Rpb25zIC5idG4gLnJpLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jb3RpemFjaW9uLWNvbC1vcGVyYXRpb25zIC5idG4gLnJpLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jYW1iaW8tb3JkZW4tY29sLW9wZXJhdGlvbnMgLmJ0biAucmksXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmdhc3RvLWNvbC1vcGVyYXRpb25zIC5idG4gLnJpLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5nYXN0by1jb2wtb3BlcmF0aW9ucy1tb2JpbGUgLmJ0biAucmkge1xuICAgICAgICBmb250LXNpemU6IDAuODZyZW0gIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmdhc3RvLWNvbC1vcGVyYXRpb25zLW1vYmlsZSAuZXN0YWRvLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5nYXN0by1jb2wtb3BlcmF0aW9ucy1tb2JpbGUgLmVzdGFkby5lc3RhZG8tLW1vYmlsZSB7XG4gICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIG1pbi13aWR0aDogbWF4LWNvbnRlbnQgIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAuMThyZW0gMC40MnJlbSAhaW1wb3J0YW50O1xuICAgICAgICBtaW4taGVpZ2h0OiAyNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBjbGlwICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMC42MnJlbSAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4wNSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgXG4gICAgW2lkXj1cInRvb2xiYXJfXCJdIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXAgIWltcG9ydGFudDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICBnYXA6IDAuMzVyZW07XG4gICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgICAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDAuMTVyZW0gMCAwLjU1cmVtO1xuICAgIH1cblxuICAgIFtpZF49XCJ0b29sYmFyX1wiXTo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIFtpZF49XCJ0b29sYmFyX1wiXSA+ICoge1xuICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgIH1cblxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICBnYXA6IDAuMjRyZW07XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmNvbHVtbnMsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAuc2VhcmNoLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmJzLWJhcnMge1xuICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBtaW4td2lkdGg6IDAgIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyIC51aS10b29sYmFyLXByaW1hcnktaW5saW5lIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIGdhcDogMC4zcmVtO1xuICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAuYnMtYmFycyAuYnRuLWdyb3VwLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmJzLWJhcnMgPiAuYnRuLWdyb3VwLXZlcnRpY2FsLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmJzLWJhcnMgPiBkaXYsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAuY29sdW1ucyAuYnRuLWdyb3VwLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmNvbHVtbnMgPiAuYnRuLWdyb3VwLXZlcnRpY2FsLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmNvbHVtbnMgPiBkaXYge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGdhcDogMC4zcmVtO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAuc2VhcmNoIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBmbGV4OiAwIDAgMzJweDtcbiAgICAgICAgd2lkdGg6IDMycHggIWltcG9ydGFudDtcbiAgICAgICAgbWluLXdpZHRoOiAzMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1heC13aWR0aDogMzJweCAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDMycHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgb3JkZXI6IDk5O1xuICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjIycyBlYXNlLCBtYXgtd2lkdGggMC4yMnMgZWFzZSwgYm9yZGVyLWNvbG9yIDAuMnMgZWFzZSwgYm94LXNoYWRvdyAwLjJzIGVhc2U7XG4gICAgfVxuXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAuc2VhcmNoOmZvY3VzLXdpdGhpbiB7XG4gICAgICAgIG9yZGVyOiAxMDA7XG4gICAgICAgIHdpZHRoOiBjbGFtcCgxNTBweCwgNDJ2dywgMjIwcHgpICFpbXBvcnRhbnQ7XG4gICAgICAgIG1pbi13aWR0aDogMTUwcHggIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLnNlYXJjaDo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcXEY1MkFcIjtcbiAgICAgICAgZm9udC1mYW1pbHk6IGJvb3RzdHJhcC1pY29ucztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogMC43MnJlbTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICAgICAgY29sb3I6IHZhcigtLXVpLXRleHQtbXV0ZWQpO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICB9XG5cbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyIC5zZWFyY2ggaW5wdXQsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAuc2VhcmNoIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGluc2V0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBtaW4td2lkdGg6IDAgIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgbWluLWhlaWdodDogMzJweDtcbiAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LWluZGVudDogMCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgY2FyZXQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICAgICAgY3Vyc29yOiB0ZXh0O1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBmb250LXNpemU6IDAuODZyZW07XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgIH1cblxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLnNlYXJjaCBpbnB1dDo6cGxhY2Vob2xkZXIsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAuc2VhcmNoIC5mb3JtLWNvbnRyb2w6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAuc2VhcmNoOmZvY3VzLXdpdGhpbiBpbnB1dCxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyIC5zZWFyY2g6Zm9jdXMtd2l0aGluIC5mb3JtLWNvbnRyb2wsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAuc2VhcmNoIGlucHV0OmZvY3VzLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLnNlYXJjaCAuZm9ybS1jb250cm9sOmZvY3VzIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBpbnNldDogYXV0bztcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgbWluLWhlaWdodDogMzJweDtcbiAgICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgICBwYWRkaW5nOiAwLjQycmVtIDAuOHJlbSAwLjQycmVtIDEuOTVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdWktc3VyZmFjZSkgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNDgsIDE2MywgMTg0LCAwLjE2KSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS11aS1wcmltYXJ5KSAhaW1wb3J0YW50O1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjE4cmVtIHZhcigtLXVpLWFjY2VudC1yaW5nKSAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogdmFyKC0tdWktdGV4dCkgIWltcG9ydGFudDtcbiAgICAgICAgY2FyZXQtY29sb3I6IHZhcigtLXVpLXRleHQpICFpbXBvcnRhbnQ7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAuc2VhcmNoOmZvY3VzLXdpdGhpbiBpbnB1dDo6cGxhY2Vob2xkZXIsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAuc2VhcmNoOmZvY3VzLXdpdGhpbiAuZm9ybS1jb250cm9sOjpwbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS11aS10ZXh0LXNvZnQpICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAuYnRuLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmJ0bi1ncm91cCA+IC5idG4sXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAuY29sdW1ucyAuYnRuIHtcbiAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgbWluLXdpZHRoOiBtYXgtY29udGVudDtcbiAgICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgICBtaW4taGVpZ2h0OiAzMnB4O1xuICAgICAgICBwYWRkaW5nOiAwLjI0cmVtIDAuNTVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgZm9udC1zaXplOiAwLjcycmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjA1ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAwLjI1cmVtO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cblxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmJ0biBpLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmJ0biAuYmksXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAuYnRuIC5yaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44OHJlbSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAuYnRuIC5jYXJldCxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyIC5idG46OmFmdGVyIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjdyZW0gIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyIC50b29sYmFyLWJ1bGstYnV0dG9uIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAjYnRuX3JlbW92ZV9hbGwsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAjYnRuX2VzdGFkb19hbGwge1xuICAgICAgICB3aWR0aDogMzJweCAhaW1wb3J0YW50O1xuICAgICAgICBtaW4td2lkdGg6IDMycHggIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOiAzMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogMzJweCAhaW1wb3J0YW50O1xuICAgICAgICBtaW4taGVpZ2h0OiAzMnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgZ2FwOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMCAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMSAhaW1wb3J0YW50O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIgI2J0bl9yZW1vdmVfYWxsIC50b29sYmFyLWJ0bi1sYWJlbCxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyICNidG5fZXN0YWRvX2FsbCAudG9vbGJhci1idG4tbGFiZWwsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAjYnRuX3JlbW92ZV9hbGwudG9vbGJhci1idWxrLWJ1dHRvbiAudG9vbGJhci1idG4tbGFiZWwsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAjYnRuX2VzdGFkb19hbGwudG9vbGJhci1idWxrLWJ1dHRvbiAudG9vbGJhci1idG4tbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtdG9vbGJhciAjYnRuX3JlbW92ZV9hbGwgaSxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS10b29sYmFyICNidG5fZXN0YWRvX2FsbCBpIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjlyZW0gIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBcbiAgICAudWktdGFibGUtZGV0YWlsLXBhbmVsIHtcbiAgICAgICAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSkgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAudWktdGFibGUtZGV0YWlsLWdyaWQge1xuICAgICAgICBkaXNwbGF5OiBncmlkICFpbXBvcnRhbnQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIG1pbm1heCgwLCAxZnIpKSAhaW1wb3J0YW50O1xuICAgICAgICBnYXA6IDhweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC51aS10YWJsZS1kZXRhaWwtaXRlbSxcbiAgICAuZ2FzdG8tZGV0YWlsLWl0ZW0ge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93ICFpbXBvcnRhbnQ7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAuNTVyZW0gMC42NXJlbSAhaW1wb3J0YW50O1xuICAgIH1cbi5ib290c3RyYXAtdGFibGUgLmRldGFpbC1pY29uIGEsXG4uYm9vdHN0cmFwLXRhYmxlIC5kZXRhaWwtaWNvbiAuYnRuIHtcbiAgICB3aWR0aDogMjJweCAhaW1wb3J0YW50OyAgICAgXG4gICAgaGVpZ2h0OiAyMnB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxMHB4ICFpbXBvcnRhbnQ7IFxuICAgIGxpbmUtaGVpZ2h0OiAyMnB4ICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cblxuLmJvb3RzdHJhcC10YWJsZSAuZGV0YWlsLWljb24ge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC42NnJlbSAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4wOCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCA+ICosXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC50ZXh0LXN0YXJ0LFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCAudGV4dC1jZW50ZXIsXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC50ZXh0LWVuZCxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLmNhcmQtdmlldyxcbiAgICAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgYTpub3QoLmJ0biksXG4gICAgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIHNwYW46bm90KC5iYWRnZSk6bm90KC5lc3RhZG8pLFxuICAgIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCBkaXY6bm90KC5idG4tZ3JvdXApOm5vdCguZHJvcGRvd24tbWVudSkge1xuICAgICAgICBmb250LXNpemU6IDAuNjZyZW0gICAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICN0YWJsZV9lc3RpbWFjaW9uZXMgKyAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQsXG4gICAgI3RhYmxlX2ZhY3R1cmFzICsgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLFxuICAgICN0YWJsZV9jYW1iaW9fb3JkZW5lcyArIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC42NHJlbSAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4wNiAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICN0YWJsZV9lc3RpbWFjaW9uZXMgKyAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLmJ0bixcbiAgICAjdGFibGVfZmFjdHVyYXMgKyAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLmJ0bixcbiAgICAjdGFibGVfY2FtYmlvX29yZGVuZXMgKyAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLmJ0bixcbiAgICAjdGFibGVfZXN0aW1hY2lvbmVzICsgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC5lc3RhZG8sXG4gICAgI3RhYmxlX2ZhY3R1cmFzICsgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC5lc3RhZG8sXG4gICAgI3RhYmxlX2NhbWJpb19vcmRlbmVzICsgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC5lc3RhZG8ge1xuICAgICAgICBmb250LXNpemU6IDAuNjJyZW0gIWltcG9ydGFudDtcbiAgICB9XG59XG5cblxuXG5cbi8qIEtlZXAgYm9vdHN0cmFwLXRhYmxlIG5hdGl2ZSByZXNwb25zaXZlIGJlaGF2aW9yLlxuICAgQXZvaWQgZm9yY2luZyBmaXhlZC9hdXRvIGxheW91dHMgYW5kIGhlYWRlciB0cnVuY2F0aW9uIHBlciBicmVha3BvaW50LiAqL1xuXG4jdGFibGVfZmFjdHVyYXMgKyAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZmFjdHVyYS1jb2wtYWN0aW9ucyxcbiN0YWJsZV9mYWN0dXJhcyArIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5mYWN0dXJhLWNvbC1tZXRhLWFjdGlvbnMsXG4jdGFibGVfZXN0aW1hY2lvbmVzICsgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmNvdGl6YWNpb24tY29sLWFjdGlvbnMsXG4jdGFibGVfZXN0aW1hY2lvbmVzICsgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmNvdGl6YWNpb24tY29sLW9wZXJhdGlvbnMsXG4jdGFibGVfZXN0aW1hY2lvbmVzICsgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmNvdGl6YWNpb24tY29sLXNlbmQsXG4jdGFibGVfY2FtYmlvX29yZGVuZXMgKyAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuY2FtYmlvLW9yZGVuLWNvbC1vcGVyYXRpb25zLFxuI3RhYmxlX2NhbWJpb19vcmRlbmVzICsgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmNhbWJpby1vcmRlbi1jb2wtbWV0YS1hY3Rpb25zLFxuI3RhYmxlX2dhc3RvcyArIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5nYXN0by1jb2wtb3BlcmF0aW9ucyxcbiN0YWJsZV9nYXN0b3MgKyAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuZ2FzdG8tY29sLW9wZXJhdGlvbnMtbW9iaWxlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlICFpbXBvcnRhbnQ7XG59XG5cbiN0YWJsZV9mYWN0dXJhcyArIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5mYWN0dXJhLWNvbC1hY3Rpb25zID4gKixcbiN0YWJsZV9mYWN0dXJhcyArIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5mYWN0dXJhLWNvbC1tZXRhLWFjdGlvbnMgPiAqLFxuI3RhYmxlX2VzdGltYWNpb25lcyArIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jb3RpemFjaW9uLWNvbC1hY3Rpb25zID4gKixcbiN0YWJsZV9lc3RpbWFjaW9uZXMgKyAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuY290aXphY2lvbi1jb2wtb3BlcmF0aW9ucyA+ICosXG4jdGFibGVfZXN0aW1hY2lvbmVzICsgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmNvdGl6YWNpb24tY29sLXNlbmQgPiAqLFxuI3RhYmxlX2NhbWJpb19vcmRlbmVzICsgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmNhbWJpby1vcmRlbi1jb2wtb3BlcmF0aW9ucyA+ICosXG4jdGFibGVfY2FtYmlvX29yZGVuZXMgKyAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuY2FtYmlvLW9yZGVuLWNvbC1tZXRhLWFjdGlvbnMgPiAqLFxuI3RhYmxlX2dhc3RvcyArIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5nYXN0by1jb2wtb3BlcmF0aW9ucyA+ICosXG4jdGFibGVfZ2FzdG9zICsgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmdhc3RvLWNvbC1vcGVyYXRpb25zLW1vYmlsZSA+ICosXG4jdGFibGVfZmFjdHVyYXMgKyAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLmJ0bi1ncm91cCxcbiN0YWJsZV9mYWN0dXJhcyArIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCAuYnRuLXRvb2xiYXIsXG4jdGFibGVfZXN0aW1hY2lvbmVzICsgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC5idG4tZ3JvdXAsXG4jdGFibGVfZXN0aW1hY2lvbmVzICsgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC5idG4tdG9vbGJhcixcbiN0YWJsZV9jYW1iaW9fb3JkZW5lcyArIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCAuYnRuLWdyb3VwLFxuI3RhYmxlX2NhbWJpb19vcmRlbmVzICsgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC5idG4tdG9vbGJhcixcbiN0YWJsZV9nYXN0b3MgKyAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLmJ0bi1ncm91cCxcbiN0YWJsZV9nYXN0b3MgKyAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLmJ0bi10b29sYmFyLFxuI3RhYmxlX2ZhY3R1cmFzICsgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC5mYWN0dXJhLWVzdGltYWRvLWFjdGlvbnMtd3JhcCxcbiN0YWJsZV9lc3RpbWFjaW9uZXMgKyAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLmNvdGl6YWNpb24tc2VuZC1hY3Rpb25zLXdyYXAsXG4jdGFibGVfY2FtYmlvX29yZGVuZXMgKyAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLmNhbWJpby1vcmRlbi1hY3Rpb25zLXdyYXAsXG4jdGFibGVfY2FtYmlvX29yZGVuZXMgKyAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLmNhbWJpby1vcmRlbi1tb2JpbGUtdW5pZmllZC1hY3Rpb25zLFxuI3RhYmxlX2dhc3RvcyArIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCAuZ2FzdG8tbW9iaWxlLW9wZXJhdGlvbi1idXR0b25zIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIGdhcDogMC4zMnJlbSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWlubGluZTogYXV0byAhaW1wb3J0YW50O1xuICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XG59XG5cbiN0YWJsZV9mYWN0dXJhcyArIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCAuYnRuLFxuI3RhYmxlX2VzdGltYWNpb25lcyArIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCAuYnRuLFxuI3RhYmxlX2NhbWJpb19vcmRlbmVzICsgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC5idG4sXG4jdGFibGVfZ2FzdG9zICsgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIC5idG4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG59XG5cbiN0YWJsZV9jYW1iaW9fb3JkZW5lcyArIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50OyAvKiBPdmVycmlkZSBnbG9iYWwgJ3RvcCcgYWxpZ25tZW50ICovXG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xuICAgICN0YWJsZV9jYW1iaW9fb3JkZW5lcyArIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44MHJlbSAhaW1wb3J0YW50OyAvKiBDb21wYWN0IGZvbnQgZm9yIGRlc2t0b3AgKi9cbiAgICAgICAgcGFkZGluZy10b3A6IDAuNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4jdGFibGVfY2FtYmlvX29yZGVuZXMgKyAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuY2FtYmlvLW9yZGVuLWNvbC11cmwsXG4jdGFibGVfY2FtYmlvX29yZGVuZXMgKyAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuY2FtYmlvLW9yZGVuLWNvbC1hY2NlcHRhbmNlLFxuI3RhYmxlX2NhbWJpb19vcmRlbmVzICsgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmNhbWJpby1vcmRlbi1jb2wtc3RhdHVzLFxuI3RhYmxlX2NhbWJpb19vcmRlbmVzICsgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLmNhbWJpby1vcmRlbi1jb2wtYWN0aW9ucyxcbiN0YWJsZV9jYW1iaW9fb3JkZW5lcyArIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jYW1iaW8tb3JkZW4tY29sLW9wZXJhdGlvbnMsXG4jdGFibGVfY2FtYmlvX29yZGVuZXMgKyAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuY2FtYmlvLW9yZGVuLWNvbC1tZXRhLWFjdGlvbnMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xufVxuXG4jdGFibGVfY2FtYmlvX29yZGVuZXMgKyAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgLnVpLWNlbGwtY29udGVudC13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGdhcDogLjM1cmVtO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAjdGFibGVfY2FtYmlvX29yZGVuZXMgKyAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQuY2FtYmlvLW9yZGVuLWNvbC1tZXRhLWFjdGlvbnMgLmNhbWJpby1vcmRlbi1tb2JpbGUtdW5pZmllZC1jb2x1bW4ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGdhcDogOHB4OyBcbiAgICAgICAgd2lkdGg6IDEwMCU7IFxuICAgIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgI3dlYi1jb3RpemFjaW9uZXMtcm9vdCAjdGFibGVfaXRlbXMgKyAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgLmZpeGVkLXRhYmxlLWhlYWRlciB0YWJsZSxcbiAgICAjd2ViLWNvdGl6YWNpb25lcy1yb290ICN0YWJsZV9pdGVtcyArIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciAuZml4ZWQtdGFibGUtYm9keSB0YWJsZSxcbiAgICAjd2ViLWNvdGl6YWNpb25lcy1yb290ICN0YWJsZV9pdGVtcyArIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciAudGFibGUge1xuICAgICAgICB0YWJsZS1sYXlvdXQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgbWluLXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgI3dlYi1jb3RpemFjaW9uZXMtcm9vdCAjdGFibGVfaXRlbXMgKyAuYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGguY290aXphY2lvbi1jb2wtb3BlcmF0aW9ucyxcbiAgICAjd2ViLWNvdGl6YWNpb25lcy1yb290ICN0YWJsZV9pdGVtcyArIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC5jb3RpemFjaW9uLWNvbC1vcGVyYXRpb25zLFxuICAgICN3ZWItY290aXphY2lvbmVzLXJvb3QgI3RhYmxlX2l0ZW1zICsgLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoW2RhdGEtZmllbGQ9XCJhY2Npb25lc19zZWN1bmRhcmlhc1wiXSxcbiAgICAjd2ViLWNvdGl6YWNpb25lcy1yb290ICN0YWJsZV9pdGVtcyArIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZFtkYXRhLWZpZWxkPVwiYWNjaW9uZXNfc2VjdW5kYXJpYXNcIl0ge1xuICAgICAgICB3aWR0aDogMSUgIWltcG9ydGFudDtcbiAgICAgICAgbWluLXdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIG1heC13aWR0aDogZml0LWNvbnRlbnQgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjJyZW0gIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC4ycmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAjd2ViLWNvdGl6YWNpb25lcy1yb290ICN0YWJsZV9pdGVtcyArIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aC5jb3RpemFjaW9uLWNvbC1vcGVyYXRpb25zIC50aC1pbm5lcixcbiAgICAjd2ViLWNvdGl6YWNpb25lcy1yb290ICN0YWJsZV9pdGVtcyArIC5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aFtkYXRhLWZpZWxkPVwiYWNjaW9uZXNfc2VjdW5kYXJpYXNcIl0gLnRoLWlubmVyIHtcbiAgICAgICAgbWluLXdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjJyZW0gIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgUmVzcG9uc2l2ZSBMYXlvdXQgR3VhcmRyYWlscyAoZG8gbm90IG92ZXJyaWRlIGJvb3RzdHJhcC10YWJsZSBjb3JlKVxuICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgLmZpeGVkLXRhYmxlLWhlYWRlciB0YWJsZSxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciAuZml4ZWQtdGFibGUtYm9keSB0YWJsZSxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciAuZml4ZWQtdGFibGUtZm9vdGVyIHRhYmxlLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIC50YWJsZSB7XG4gICAgdGFibGUtbGF5b3V0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IG1heC1jb250ZW50ICFpbXBvcnRhbnQ7XG4gICAgbWluLXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1ib2R5IHtcbiAgICBvdmVyZmxvdy14OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3cteTogYXV0byAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoIC50aC1pbm5lcixcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aCAudGgtaW5uZXIuc29ydGFibGUsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGggLnNvcnRhYmxlIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3ctd3JhcDogbm9ybWFsICFpbXBvcnRhbnQ7XG4gICAgd29yZC1icmVhazogbm9ybWFsICFpbXBvcnRhbnQ7XG4gICAgd3JpdGluZy1tb2RlOiBob3Jpem9udGFsLXRiICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1vcmllbnRhdGlvbjogbWl4ZWQgIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkID4gKiB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcyAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93LXdyYXA6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbCAhaW1wb3J0YW50O1xufVxuXG4vKiBLZWVwIGNvbXBhY3QgYmVoYXZpb3Igb25seSB3aGVyZSB3ZSBleHBsaWNpdGx5IG5lZWQgb25lLWxpbmUgYWN0aW9uIGJ1dHRvbnMgKi9cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC51aS10YWJsZS1jb2wtb3BlcmF0ZSxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC51aS10YWJsZS1jb2wtb3BlcmF0ZSAudWktdGFibGUtb3Atbm93cmFwLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkLnVpLXRhYmxlLWNvbC1vcGVyYXRlIC51aS10YWJsZS1vcC1ub3dyYXAgLmJ0bixcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZC51aS10YWJsZS1jb2wtb3BlcmF0ZSAudWktdGFibGUtb3Atbm93cmFwIC51aS10YWJsZS1hY3Rpb24tYnRuIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gICAgd29yZC1icmVhazogbm9ybWFsICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3ctd3JhcDogbm9ybWFsICFpbXBvcnRhbnQ7XG59XG5cbi8qIEdsb2JhbCBub3JtYWxpemF0aW9uIGFjcm9zcyBhbGwgdmlld3M6XG4gICBrZWVwIGhlYWRlcnMgaG9yaXpvbnRhbC9jb21wYWN0IGFuZCByZXNlcnZlIG5vd3JhcCBvbmx5IGZvciBhY3Rpb24gY29sdW1ucy4gKi9cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aDpub3QoLmZhY3R1cmEtY29sLWFjdGlvbnMpOm5vdCguZmFjdHVyYS1jb2wtbWV0YS1hY3Rpb25zKTpub3QoLmNvdGl6YWNpb24tY29sLWFjdGlvbnMpOm5vdCguY290aXphY2lvbi1jb2wtb3BlcmF0aW9ucyk6bm90KC5jYW1iaW8tb3JkZW4tY29sLW9wZXJhdGlvbnMpOm5vdCguY2FtYmlvLW9yZGVuLWNvbC1tZXRhLWFjdGlvbnMpOm5vdCguZ2FzdG8tY29sLW9wZXJhdGlvbnMpOm5vdCguZ2FzdG8tY29sLW9wZXJhdGlvbnMtbW9iaWxlKSAudGgtaW5uZXIsXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGg6bm90KC5mYWN0dXJhLWNvbC1hY3Rpb25zKTpub3QoLmZhY3R1cmEtY29sLW1ldGEtYWN0aW9ucyk6bm90KC5jb3RpemFjaW9uLWNvbC1hY3Rpb25zKTpub3QoLmNvdGl6YWNpb24tY29sLW9wZXJhdGlvbnMpOm5vdCguY2FtYmlvLW9yZGVuLWNvbC1vcGVyYXRpb25zKTpub3QoLmNhbWJpby1vcmRlbi1jb2wtbWV0YS1hY3Rpb25zKTpub3QoLmdhc3RvLWNvbC1vcGVyYXRpb25zKTpub3QoLmdhc3RvLWNvbC1vcGVyYXRpb25zLW1vYmlsZSkgLnRoLWlubmVyLnNvcnRhYmxlLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoOm5vdCguZmFjdHVyYS1jb2wtYWN0aW9ucyk6bm90KC5mYWN0dXJhLWNvbC1tZXRhLWFjdGlvbnMpOm5vdCguY290aXphY2lvbi1jb2wtYWN0aW9ucyk6bm90KC5jb3RpemFjaW9uLWNvbC1vcGVyYXRpb25zKTpub3QoLmNhbWJpby1vcmRlbi1jb2wtb3BlcmF0aW9ucyk6bm90KC5jYW1iaW8tb3JkZW4tY29sLW1ldGEtYWN0aW9ucyk6bm90KC5nYXN0by1jb2wtb3BlcmF0aW9ucyk6bm90KC5nYXN0by1jb2wtb3BlcmF0aW9ucy1tb2JpbGUpIC5zb3J0YWJsZSB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcyAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93LXdyYXA6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAgIHdyaXRpbmctbW9kZTogaG9yaXpvbnRhbC10YiAhaW1wb3J0YW50O1xuICAgIHRleHQtb3JpZW50YXRpb246IG1peGVkICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMiAhaW1wb3J0YW50O1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQ6bm90KC51aS10YWJsZS1jb2wtb3BlcmF0ZSk6bm90KC5mYWN0dXJhLWNvbC1hY3Rpb25zKTpub3QoLmZhY3R1cmEtY29sLW1ldGEtYWN0aW9ucyk6bm90KC5jb3RpemFjaW9uLWNvbC1hY3Rpb25zKTpub3QoLmNvdGl6YWNpb24tY29sLW9wZXJhdGlvbnMpOm5vdCguY2FtYmlvLW9yZGVuLWNvbC1vcGVyYXRpb25zKTpub3QoLmNhbWJpby1vcmRlbi1jb2wtbWV0YS1hY3Rpb25zKTpub3QoLmdhc3RvLWNvbC1vcGVyYXRpb25zKTpub3QoLmdhc3RvLWNvbC1vcGVyYXRpb25zLW1vYmlsZSksXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQ6bm90KC51aS10YWJsZS1jb2wtb3BlcmF0ZSk6bm90KC5mYWN0dXJhLWNvbC1hY3Rpb25zKTpub3QoLmZhY3R1cmEtY29sLW1ldGEtYWN0aW9ucyk6bm90KC5jb3RpemFjaW9uLWNvbC1hY3Rpb25zKTpub3QoLmNvdGl6YWNpb24tY29sLW9wZXJhdGlvbnMpOm5vdCguY2FtYmlvLW9yZGVuLWNvbC1vcGVyYXRpb25zKTpub3QoLmNhbWJpby1vcmRlbi1jb2wtbWV0YS1hY3Rpb25zKTpub3QoLmdhc3RvLWNvbC1vcGVyYXRpb25zKTpub3QoLmdhc3RvLWNvbC1vcGVyYXRpb25zLW1vYmlsZSkgPiAqIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93LXdyYXA6IG5vcm1hbCAhaW1wb3J0YW50O1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbCAhaW1wb3J0YW50O1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIFRhYmxlIFZpc3VhbCBQb2xpc2hcbiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciAuZml4ZWQtdGFibGUtaGVhZGVyIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJvcmRlci1yYWRpdXM6IDE2cHggMTZweCAwIDA7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIC5maXhlZC10YWJsZS1oZWFkZXI6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaW5zZXQ6IC0xLjVweCAtMS41cHggMCAtMS41cHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBib3JkZXI6IDEuNXB4IHNvbGlkIHJnYmEoMjU1LCAyMDQsIDAsIDAuNDIpO1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMTZweCAxNnB4IDAgMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB6LWluZGV4OiAzO1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGgge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDEyNSwgMTQ2LCAxNzIsIDAuNDIpICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgxMjUsIDE0NiwgMTcyLCAwLjIyKSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci10b3A6IDAgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgzMywgMzUsIDM4LCAwLjk4KSAwJSwgcmdiYSg0NiwgNTEsIDU4LCAwLjk5KSAxMDAlKSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiByZ2JhKDI0MSwgMjQ1LCAyNDksIDAuOTYpICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbn1cblxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoOm5vdCguZGV0YWlsKTo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aDpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNSwgMjcsIDMwLCAwLjk5KSAwJSwgcmdiYSg1MiwgNTgsIDY2LCAwLjk5KSAxMDAlKSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTgpICFpbXBvcnRhbnQ7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0aGVhZCB0aDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMTZweDtcbiAgICBib3JkZXItbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGg6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDE2cHg7XG4gICAgYm9yZGVyLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Zm9vdCB0ZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjQxLCAyNDUsIDI0OSwgMC4xNikgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDI0MSwgMjQ1LCAyNDksIDAuMTIpICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogcmdiYSgxOCwgMjAsIDIzLCAwLjk4KSAhaW1wb3J0YW50O1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdHI6bnRoLWNoaWxkKGV2ZW4pIHRkIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI0LCAyNywgMzEsIDAuOTgpICFpbXBvcnRhbnQ7XG59XG5cbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0cjpob3ZlciB0ZCB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgzMywgMzUsIDQwLCAwLjg2KSAwJSwgcmdiYSg0NSwgNTAsIDU3LCAwLjI0KSAxMDAlKSAhaW1wb3J0YW50O1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGhlYWQgdGg6bGFzdC1jaGlsZCxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZDpsYXN0LWNoaWxkLFxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRmb290IHRkOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yaWdodDogMCAhaW1wb3J0YW50O1xufVxuXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdHI6bGFzdC1jaGlsZCB0ZCxcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Zm9vdCB0cjpsYXN0LWNoaWxkIHRkIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDI0MSwgMjQ1LCAyNDksIDAuMTgpICFpbXBvcnRhbnQ7XG59XG4iLCJcbi53aGF0c2FwcC1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDIwcHg7XG4gICAgcmlnaHQ6IDE1cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI1RDM2NjsgXG4gICAgcGFkZGluZzogMTBweDtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIHotaW5kZXg6IDI7IFxufVxuXG5cbi50ZWxlZ3JhbS1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDY1cHg7IFxuICAgIHJpZ2h0OiAxNnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDg4Y2M7IFxuICAgIHBhZGRpbmc6IDEycHg7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICB6LWluZGV4OiAxOyBcbn1cblxuXG4ud2hhdHNhcHAtbGluaywgLnRlbGVncmFtLWxpbmsge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogI2ZmZjsgXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG5cbi53aGF0c2FwcC1pY29uLCAudGVsZWdyYW0taWNvbiB7XG4gICAgZm9udC1zaXplOiAyNHB4OyBcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgQ29sb3I6I2ZmZjtcbn1cblxuXG4ud2hhdHNhcHAtdGV4dCwgLnRlbGVncmFtLXRleHQge1xuICAgIGZvbnQtc2l6ZToxNHB4O1xufVxuXG4ud2hhdHNhcHAtdGV4dHtcbiAgICBjb2xvcjojZmZmICFpbXBvcnRhbnQ7XG59XG5cblxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG59XG5cblxuaW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XG4gICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG59XG5cblxuLmVtcHJlc2Ege1xuICAgIGZvbnQtZmFtaWx5OiAnQnJhZGxleSBIYW5kIElUQycsIGN1cnNpdmU7XG4gICAgZm9udC1zaXplOiAyNXB4O1xufVxuXG4uaWRJbmdyZWRpZW50ZXMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LWZhbWlseTogJ1JvYm90byAgVGhpbicsIGN1cnNpdmU7XG4gICAgZm9udC1zaXplOiAyNXB4O1xufVxuXG4uaWRDb250ZW5pZG8ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LWZhbWlseTogJ2FyaWFsICBUaGluJywgY3Vyc2l2ZTtcbiAgICBmb250LXNpemU6IDIwcHg7XG5cbn1cblxuLmJhbm5lckl0ZW0ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNTAwcHg7XG59XG4uYmFubmVySXRlbSBpbWcge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLmltZy1ub3JtYWxpemFkYXtcbiAgICB3aWR0aDogMzUwcHg7XG4gICAgaGVpZ2h0OiAyODBweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4uaWRQcmVjaW8ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LWZhbWlseTogJ2FyaWFsICBUaGluJywgY3Vyc2l2ZTtcbiAgICBmb250LXNpemU6IDM1cHg7XG4gICAgYW5pbWF0aW9uOiBibGluayAxLjVzIGluZmluaXRlO1xufVxuXG5cblxuXG5cblxuXG5cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/