/*!****************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/style.css ***!
  \****************************************************************************************************************/
/**
* Template Name: NiceAdmin
* Template URL: https://bootstrapmade.com/nice-admin-bootstrap-admin-html-template/
* Updated: Apr 20 2024 with Bootstrap v5.3.3
* Author: BootstrapMade.com
* License: https://bootstrapmade.com/license/
*/

/*--------------------------------------------------------------
# General
--------------------------------------------------------------*/
:root {
    scroll-behavior: smooth;
}

body {
    font-family: "Open Sans", sans-serif;
    background: #202634;
}

a {
    color: #4154f1;
    text-decoration: none;
}

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

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "Nunito", sans-serif;
}

/*--------------------------------------------------------------
# Main
--------------------------------------------------------------*/
#main {
    background-color: #202634;
    margin-top: 60px;
    padding: 20px 30px;
    transition: all 0.3s;
}

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

/*--------------------------------------------------------------
# Page Title
--------------------------------------------------------------*/
.pagetitle {
    margin-bottom: 10px;
}

.pagetitle h1 {
    font-size: 24px;
    margin-bottom: 0;
    font-weight: 600;
    color: #012970;
}

/*--------------------------------------------------------------
# Back to top button
--------------------------------------------------------------*/
.back-to-top {
    position: fixed;
    visibility: hidden;
    opacity: 0;
    right: 15px;
    bottom: 15px;
    z-index: 99999;
    background: #4154f1;
    width: 40px;
    height: 40px;
    border-radius: 4px;
    transition: all 0.4s;
}

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

.back-to-top:hover {
    background: #6776f4;
    color: #fff;
}

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

/*--------------------------------------------------------------
# Override some default Bootstrap stylings
--------------------------------------------------------------*/
/* Dropdown menus */
.dropdown-menu {
    border-radius: 4px;
    padding: 10px 0;
    animation-name: dropdown-animate;
    animation-duration: 0.2s;
    animation-fill-mode: both;
    border: 0;
    box-shadow: 0 5px 30px 0 rgba(82, 63, 105, 0.2);
}

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

.dropdown-menu .dropdown-footer a {
    color: #444444;
    text-decoration: underline;
}

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

.dropdown-menu .dropdown-divider {
    color: #a5c5fe;
    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: #f6f9ff;
}

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

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

    100% {
        opacity: 1;
    }

    0% {
        opacity: 0;
    }
}

/* Light Backgrounds */
.bg-primary-light {
    background-color: #cfe2ff;
    border-color: #cfe2ff;
}

.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 */
.card {
    margin-bottom: 30px;
    border: none;
    border-radius: 5px;
    box-shadow: 0px 0 30px rgba(1, 41, 112, 0.1);
}

.card-header,
.card-footer {
    border-color: #ebeef4;
    background-color: #fff;
    color: #798eb3;
    padding: 15px;
}

.card-title {
    padding: 20px 0 15px 0;
    font-size: 18px;
    font-weight: 500;
    color: #012970;
    font-family: "Poppins", sans-serif;
}

.card-title span {
    color: #899bbd;
    font-size: 14px;
    font-weight: 400;
}

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

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

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

/* Close Button */
.btn-close {
    background-size: 25%;
}

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

/* Accordion */
.accordion-item {
    border: 1px solid #ebeef4;
}

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

.accordion-button:not(.collapsed) {
    color: #012970;
    background-color: #f6f9ff;
}

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

.accordion-flush .accordion-button:not(.collapsed) {
    box-shadow: none;
    color: #4154f1;
}

.accordion-flush .accordion-body {
    padding: 0 0 15px 0;
    color: #3e4f6f;
    font-size: 15px;
}

/* Breadcrumbs */
.breadcrumb {
    font-size: 14px;
    font-family: "Nunito", sans-serif;
    color: #899bbd;
    font-weight: 600;
}

.breadcrumb a {
    color: #899bbd;
    transition: 0.3s;
}

.breadcrumb a:hover {
    color: #51678f;
}

.breadcrumb .breadcrumb-item::before {
    color: #899bbd;
}

.breadcrumb .active {
    color: #51678f;
    font-weight: 600;
}

/* Bordered Tabs */
.nav-tabs-bordered {
    border-bottom: 2px solid #ebeef4;
}

.nav-tabs-bordered .nav-link {
    margin-bottom: -2px;
    border: none;
    color: #2c384e;
}

.nav-tabs-bordered .nav-link:hover,
.nav-tabs-bordered .nav-link:focus {
    color: #4154f1;
}

.nav-tabs-bordered .nav-link.active {
    background-color: #fff;
    color: #4154f1;
    border-bottom: 2px solid #4154f1;
}

/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/
/* Estilos del logo */
.logo {
    line-height: 1;
}

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

.logo img {
    max-height: 50px;
    margin-right: 6px;
}

.logo span {
    font-size: 28px;
    font-weight: 600;
    color: #ffffff; /* Blanco para el texto del logo */
    font-family: "Arial", sans-serif;
}

/* Cabecera */
.header {
    transition: all 0.5s;
    z-index: 997;
    height: 60px;
    box-shadow: 0px 4px 15px rgba(0, 0, 0, 0.2);
    background-color: #293042; /* Azul oscuro para la cabecera */
    padding-left: 20px;
}

/* Botón del sidebar */
.header .toggle-sidebar-btn {
    font-size: 32px;
    padding-left: 10px;
    cursor: pointer;
    color: #ffffff; /* Blanco para el icono */
}

/* Barra de búsqueda */
.header .search-bar {
    min-width: 360px;
    padding: 0 20px;
    background: #293042;
}

#buscaruta::placeholder {
    color: white;
    opacity: 1; /* Asegura que el color se vea bien en algunos navegadores */
}
@media (max-width: 1199px) {
    .header .search-bar {
        position: fixed;
        top: 50px;
        left: 0;
        right: 0;
        padding: 20px;
        box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.3);
        background: #202634; /* Azul más oscuro */
        z-index: 9999;
        transition: 0.3s;
        visibility: hidden;
        opacity: 0;
    }

    .header .search-bar-show {
        top: 60px;
        visibility: visible;
        opacity: 1;
    }
}

/* Formulario de búsqueda */
.header .search-form {
    width: 100%;
}

.header .search-form input {
    border: 1px solid rgba(255, 255, 255, 0.3); /* Borde blanco suave */
    font-size: 14px;
    color: #ffffff; /* Blanco para el texto */
    background-color: #293042; /* Azul oscuro para el fondo */
    padding: 7px 38px 7px 8px;
    border-radius: 4px;
    transition: 0.3s;
    width: 100%;
}

.header .search-form input:focus,
.header .search-form input:hover {
    outline: none;
    box-shadow: 0 0 10px 0 rgba(255, 255, 255, 0.2); /* Sombra suave blanca */
    border: 1px solid #ffffff; /* Borde blanco brillante al enfocarse */
}

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

.header .search-form button i {
    color: #ffffff; /* Blanco para el icono */
}


/*--------------------------------------------------------------
# Sidebar
--------------------------------------------------------------*/
/* ===== Estilos de la barra lateral ===== */
.sidebar {
    position: fixed;
    top: 60px;
    left: 0;
    bottom: 0;
    width: 280px;
    z-index: 996;
    transition: all 0.3s ease-in-out;
    padding: 20px;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: #293042 transparent;
    background-color: #202634;
    border-right: 2px solid #ffffff; /* Borde blanco para diferenciar */
    border-radius: 0 15px 15px 0;
}


@media (max-width: 1199px) {
    .sidebar {
        left: -300px; /* Oculta la barra lateral en pantallas pequeñas */
    }
}

/* ===== Estilos para el scrollbar ===== */
.sidebar::-webkit-scrollbar {
    width: 6px;
    background-color: #202634;
}

.sidebar::-webkit-scrollbar-thumb {
    background-color: #293042;
    border-radius: 10px;
}

@media (min-width: 1200px) {
    #main,
    #footer {
        margin-left: 300px; /* Ajusta el margen del contenido principal para hacer espacio para la barra lateral */
    }
}

@media (max-width: 1199px) {
    .toggle-sidebar .sidebar {
        left: 0; /* Muestra la barra lateral en pantallas pequeñas cuando se activa el toggle */
    }
}

@media (min-width: 1200px) {
    .toggle-sidebar #main,
    .toggle-sidebar #footer {
        margin-left: 0; /* Restablece el margen cuando se oculta la barra lateral */
    }

    .toggle-sidebar .sidebar {
        left: -300px; /* Oculta la barra lateral cuando se activa el toggle en pantallas grandes */
    }
}


/* ===== Navegación de la barra lateral ===== */
.sidebar-nav {
    padding: 0;
    margin: 0;
    list-style: none;
}

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

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

/* ===== Encabezados de la barra lateral ===== */
.sidebar-nav .nav-heading {
    font-size: 14px;
    text-transform: uppercase;
    color: #ffffff;
    padding: 12px;
    font-weight: bold;
    letter-spacing: 1px;
    background: rgba(255, 255, 255, 0.1);
    border-left: 4px solid #ffffff; /* Borde blanco para diferenciar */
    border-radius: 6px;
}

/* ===== Enlaces de la barra lateral ===== */
.sidebar-nav .nav-link {
    display: flex;
    align-items: center;
    padding: 14px 22px;
    color: #ffffff;
    background: #293042;
    border-radius: 8px;
    transition: all 0.3s ease-in-out;
    font-size: 16px;
    font-weight: 600;
    border: 2px solid transparent; /* Agrega un borde inicial */
}

.sidebar-nav .nav-link i {
    font-size: 18px;
    margin-right: 12px;
    color: #ffffff;
}

/* ===== Efectos al pasar el mouse ===== */
.sidebar-nav .nav-link:hover {
    color: #ffffff;
    background: #3b485a;
    transform: scale(1.05);
    border: 2px solid #ffffff; /* Borde blanco al pasar el mouse */
}

/* ===== Subenlaces ===== */
.sidebar-nav .nav-content a {
    display: block;
    padding: 10px 22px;
    color: #ffffff;
    background: #293042;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 600;
    border: 2px solid transparent; /* Evita movimientos al aplicar hover */
}

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

/* ===== Enlaces activos y al pasar el mouse ===== */
.sidebar-nav .nav-content a:hover,
.sidebar-nav .nav-content a.active {
    color: #ffffff;
    background: #3b485a;
    border: 2px solid #ffffff; /* Borde blanco en el activo */
}

.sidebar-nav .nav-content a.active i {
    background-color: #3b485a;
}

/* ===== Separadores ===== */
.sidebar-divider {
    height: 2px;
    background: rgba(255, 255, 255, 0.3);
    margin: 12px 0;
    border-radius: 2px;
}

/*--------------------------------------------------------------
# Header Nav
--------------------------------------------------------------*/
.header-nav ul {
    list-style: none;
}

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

.header-nav .nav-icon {
    font-size: 22px;
    color: #ffffff; /* Blanco */
    margin-right: 25px;
    position: relative;
}

.header-nav .nav-profile {
    color: #ffffff; /* Blanco */
}

.header-nav .nav-profile img {
    max-height: 36px;
}

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

.header-nav .badge-number {
    position: absolute;
    inset: -2px -5px auto auto;
    font-weight: normal;
    font-size: 12px;
    padding: 3px 6px;
    background-color: #293042; /* Azul oscuro */
    color: #ffffff; /* Blanco */
    border-radius: 5px;
}

.header-nav .notifications {
    inset: 8px -15px auto auto !important;
    background-color: #202634; /* Azul más oscuro */
    color: #ffffff; /* Blanco */
}

.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: #ffffff; /* Blanco */
}

.header-nav .notifications .notification-item h4 {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 5px;
    color: #ffffff; /* Blanco */
}

.header-nav .notifications .notification-item p {
    font-size: 13px;
    margin-bottom: 3px;
    color: #b0b3b8; /* Gris claro */
}

.header-nav .notifications .notification-item:hover {
    background-color: #293042; /* Azul oscuro */
}

.header-nav .messages {
    inset: 8px -15px auto auto !important;
    background-color: #202634; /* Azul más oscuro */
    color: #ffffff; /* Blanco */
}

.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;
}

.header-nav .messages .message-item h4 {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 5px;
    color: #ffffff; /* Blanco */
}

.header-nav .messages .message-item p {
    font-size: 13px;
    margin-bottom: 3px;
    color: #b0b3b8; /* Gris claro */
}

.header-nav .messages .message-item:hover {
    background-color: #293042; /* Azul oscuro */
}

.header-nav .profile {
    min-width: 240px;
    padding-bottom: 0;
    top: 8px !important;
    background-color: #202634; /* Azul más oscuro */
    color: #ffffff; /* Blanco */
}

.header-nav .profile .dropdown-header h6 {
    font-size: 18px;
    margin-bottom: 0;
    font-weight: 600;
    color: #ffffff; /* Blanco */
}

.header-nav .profile .dropdown-header span {
    font-size: 14px;
    color: #b0b3b8; /* Gris claro */
}

.header-nav .profile .dropdown-item {
    font-size: 14px;
    padding: 10px 15px;
    transition: 0.3s;
    color: #ffffff; /* Blanco */
}

.header-nav .profile .dropdown-item i {
    margin-right: 10px;
    font-size: 18px;
    line-height: 0;
    color: #ffffff; /* Blanco */
}

.header-nav .profile .dropdown-item:hover {
    background-color: #293042; /* Azul oscuro */
}



/*--------------------------------------------------------------
# Dashboard
--------------------------------------------------------------*/
/* Filter dropdown */
.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;
}

/* Info Cards */
.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;
}

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

.dashboard .activity .activity-item .activite-label {
    color: #000;
    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: #000;
}

.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;
}

/* News & Updates */
.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;
}

/* Recent Sales */
.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;
}

/* Top Selling */
.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;
}

/*--------------------------------------------------------------
# Icons list page
--------------------------------------------------------------*/
.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: #000;
}

/*--------------------------------------------------------------
# Profie Page
--------------------------------------------------------------*/
.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;
}

/*--------------------------------------------------------------
# F.A.Q Page
--------------------------------------------------------------*/
.faq .basic h6 {
    font-size: 18px;
    font-weight: 600;
    color: #4154f1;
}

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

/*--------------------------------------------------------------
# Contact
--------------------------------------------------------------*/
.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;
    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;
}

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

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

/*--------------------------------------------------------------
# Error 404
--------------------------------------------------------------*/
.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
--------------------------------------------------------------*/
.footer {
    padding: 20px 0;
    font-size: 14px;
    transition: all 0.3s;
    border-top: 1px solid #fff;
}

.footer .copyright {
    text-align: center;
    color: #fff;
}

.footer .credits {
    padding-top: 5px;
    text-align: center;
    font-size: 13px;
    color: #fff;
}

input, textarea, select {
    border: 1.5px solid var(--bs-dark) !important;
    border-radius: 6px;
    padding: 10px;
    font-size: 14px;
    color: var(--bs-dark);
    background-color: var(--bs-light);
    transition: all 0.3s ease-in-out;
}

input:focus, textarea:focus, select:focus {
    border-color: var(--bs-primary) !important;
    box-shadow: 0 0 6px rgba(13, 110, 253, 0.5) !important; /* Color primario con transparencia */
    background-color: var(--bs-white);
    transform: scale(1.07); /* Hace que el input crezca un poco */
}
/*!*****************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/tables.css ***!
  \*****************************************************************************************************************/
/* Estilos para la tabla dentro del modal */
.estilos_generales {
    margin: auto; /* Centra la tabla horizontalmente */
    width: 90%; /* Ancho máximo de la tabla */
    border-collapse: collapse; /* Combina los bordes de las celdas */
    font-family: 'Roboto', Arial, sans-serif; /* Tipo de fuente para toda la tabla */
    background: #293042; /* Fondo transparente */
    color: white; /* Texto en color blanco */
}

/* Estilos para las celdas del encabezado */
.estilos_generales th {
    font-size: 15px;
    font-weight: bold;
    padding: 12px 13px;
    background: #293042; /* Fondo transparente para los encabezados */
    color: white; /* Texto en color blanco */
}

/* Estilos para las celdas de datos */
.estilos_generales td {
    padding: 8px; /* Espaciado interno dentro de las celdas de datos */
    font-size: 13px; /* Tamaño de la fuente para las celdas de datos */
    background: #293042; /* Fondo transparente para las celdas */
    color: white; /* Texto en color blanco */
}

.color{
    color: white !important;
}

#titulo-consulta {
    color: white; /* O cualquier otro color */
}

.page-list {
    color: white; /* O cualquier otro color */
}

.pagination-info {
    color: white; /* O cualquier otro color */
}

/* Ocultar los controles de número en Chrome, Safari, Edge y Opera */
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Ocultar los controles de número en Firefox */
input[type="number"] {
    -moz-appearance: textfield;
}

.fixed-table-toolbar .btn-custom {
    background-color: #293042 !important;
    color: white !important;
    border-color: transparent !important;
}

.fixed-table-toolbar .btn-custom:hover,
.fixed-table-toolbar .btn-custom:focus,
.fixed-table-toolbar .btn-custom:active {
    background-color: #202634 !important;
    color: white !important;
    box-shadow: none !important;
}

.fixed-table-toolbar .btn-custom:disabled {
    background-color: #293042 !important;
    color: rgba(255, 255, 255, 0.7) !important;
    cursor: not-allowed !important;
}


.btn-custom-text {
    background-color: #293042 !important; /* Asegura que el color se aplique */
    color: white !important;
    border-color: transparent; /* Evita bordes oscuros */
}

.btn-custom-text:hover,
.btn-custom-text:focus,
.btn-custom-text:active {
    background-color: #202634 !important;
    color: white !important;
    box-shadow: none !important; /* Elimina el efecto de sombreado */
}

.btn-custom-text:disabled {
    background-color: #505b71 !important; /* Color más claro para deshabilitados */
    color: rgba(255, 255, 255, 0.7) !important;
    cursor: not-allowed;
}

/*#btn_nuevo::before {*/
/*    content: "\f055";*/
/*    font-family: "Font Awesome 5 Free", sans-serif;*/
/*    font-weight: 900;*/
/*    margin-right: 5px;*/
/*}*/

/*#btn_nuevo::after {*/
/*    content: " Nuevo";*/
/*}*/

/*!* Botón Eliminar Registros *!*/
/*#btn_remove_all::before {*/
/*    content: "\f1f8"; !* Ícono de basura *!*/
/*    font-family: "Font Awesome 5 Free", sans-serif;*/
/*    font-weight: 900;*/
/*    margin-right: 5px;*/
/*}*/

/*#btn_remove_all::after {*/
/*    content: "Eliminar Registros";*/
/*}*/

/*!* Botón Cambiar Estado de Registros *!*/
/*#btn_estado_all::before {*/
/*    content: "\f362"; !* Ícono de intercambio *!*/
/*    font-family: "Font Awesome 5 Free", sans-serif;*/
/*    font-weight: 900;*/
/*    margin-right: 5px;*/
/*}*/

/*#btn_estado_all::after {*/
/*    content: "Cambiar Estado";*/
/*}*/

/*#btn_carga_masiva::before {*/
/*    content: "\f1c3"; !* Ícono de archivo Excel *!*/
/*    font-family: "Font Awesome 5 Free", sans-serif;*/
/*    font-weight: 900;*/
/*    margin-right: 5px;*/
/*}*/

/*#btn_carga_masiva::after {*/
/*    content: "Carga Masiva";*/
/*}*/

/*!* Botón Descargar Ejemplo Carga Masiva *!*/
/*#btn_descargar_excel::before {*/
/*    content: "\f019"; !* Ícono de descarga *!*/
/*    font-family: "Font Awesome 5 Free", sans-serif;*/
/*    font-weight: 900;*/
/*    margin-right: 5px;*/
/*}*/

/*#btn_descargar_excel::after {*/
/*    content: "Descargar Ejemplo";*/
/*}*/

/*!* Botón Nuevo *!*/
/*#btn_nuevo::before {*/
/*    content: "\f055"; !* Ícono de más *!*/
/*    font-family: "Font Awesome 5 Free", sans-serif;*/
/*    font-weight: 900;*/
/*    margin-right: 5px;*/
/*}*/

/*#btn_nuevo::after {*/
/*    content: "Nuevo";*/
/*}*/

/*#btn_nuevo_cierre_caja::before {*/
/*    content: "\f2f2"; !* Ícono de caja registradora *!*/
/*    font-family: "Font Awesome 5 Free", sans-serif;*/
/*    font-weight: 900;*/
/*    margin-right: 5px;*/
/*}*/

/*#btn_nuevo_cierre_caja::after {*/
/*    content: " Cierre de Caja";*/
/*}*/

/*#btn_abrir_caja::before {*/
/*    content: "\f2f1"; !* Ícono de caja abierta *!*/
/*    font-family: "Font Awesome 5 Free", sans-serif;*/
/*    font-weight: 900;*/
/*    margin-right: 5px;*/
/*}*/

/*#btn_abrir_caja::after {*/
/*    content: " Abrir Caja";*/
/*}*/

/*#btn_abrir_caja,*/
/*#btn_nuevo_cierre_caja,*/
/*#btn_nuevo,*/
/*#btn_remove_all,*/
/*#btn_estado_all,*/
/*#btn_carga_masiva,*/
/*#btn_descargar_excel {*/
/*    font-size: 12px; !* Tamaño del texto *!*/
/*    padding: 10px 15px; !* Espaciado interno para mejor visualización *!*/
/*}*/


/*#btn_abrir_caja::before,*/
/*#btn_nuevo_cierre_caja::before,*/
/*#btn_nuevo::before,*/
/*#btn_remove_all::before,*/
/*#btn_estado_all::before,*/
/*#btn_carga_masiva::before,*/
/*#btn_descargar_excel::before {*/
/*    font-size: 12px; !* Tamaño del ícono *!*/
/*}*/


/*!*****************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/vistas.css ***!
  \*****************************************************************************************************************/
/* Estilos para el contenedor de WhatsApp */
.whatsapp-container {
    position: fixed;
    bottom: 20px;
    right: 15px;
    background-color: #25D366; /* Color de fondo de WhatsApp */
    padding: 10px;
    border-radius: 5px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    z-index: 2; /* Asegura que WhatsApp esté encima de Telegram */
}

/* Estilos para el contenedor de Telegram */
.telegram-container {
    position: fixed;
    bottom: 65px; /* Ajusta la posición para que esté debajo de WhatsApp */
    right: 16px;
    background-color: #0088cc; /* Color de fondo de Telegram */
    padding: 12px;
    border-radius: 5px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    z-index: 1; /* Asegura que Telegram esté debajo de WhatsApp */
}

/* Estilos para el enlace de WhatsApp y Telegram */
.whatsapp-link, .telegram-link {
    text-decoration: none;
    color: #fff; /* Color del texto */
    display: flex;
    align-items: center;
}

/* Estilos para el ícono de WhatsApp y Telegram */
.whatsapp-icon, .telegram-icon {
    font-size: 24px; /* Tamaño del ícono */
    margin-right: 10px;
    Color:#fff;
}

/* Estilos para el texto de WhatsApp y Telegram */
.whatsapp-text, .telegram-text {
    font-size:14px;
}

.whatsapp-text{
    color:#fff !important;
}

/* Ocultar los controles de número en Chrome, Safari, Edge y Opera */
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Ocultar los controles de número en Firefox */
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;
}

@keyframes blink {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0;
    }
}
/*!**************************************************************************************************************!*\
  !*** 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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QUFDdkI7O0FBRUEsaURBQWlEO0FBQ2pEO0lBQ0ksZUFBZSxFQUFFLHFCQUFxQjtJQUN0QyxrQkFBa0I7SUFDbEIsVUFBVTtBQUNkOztBQUVBLGlEQUFpRDtBQUNqRDtJQUNJLGNBQWM7QUFDbEI7O0FBRUE7SUFDSSxxQkFBcUI7QUFDekI7O0FBRUEsb0VBQW9FO0FBQ3BFOztJQUVJLHdCQUF3QjtJQUN4QixTQUFTO0FBQ2I7O0FBRUEsK0NBQStDO0FBQy9DO0lBQ0ksMEJBQTBCO0FBQzlCOzs7QUFHQTtJQUNJLHdDQUF3QztJQUN4QyxlQUFlO0FBQ25COztBQUVBO0lBQ0ksa0JBQWtCO0lBQ2xCLG9DQUFvQztJQUNwQyxlQUFlO0FBQ25COztBQUVBO0lBQ0ksa0JBQWtCO0lBQ2xCLG1DQUFtQztJQUNuQyxlQUFlOztBQUVuQjs7QUFFQTtJQUNJLGNBQWM7SUFDZCxXQUFXO0lBQ1gsYUFBYTtBQUNqQjtBQUNBO0lBQ0ksWUFBWTtJQUNaLFdBQVc7QUFDZjs7QUFFQTtJQUNJLFlBQVk7SUFDWixhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLGlCQUFpQjtBQUNyQjs7QUFFQTtJQUNJLGtCQUFrQjtJQUNsQixtQ0FBbUM7SUFDbkMsZUFBZTtJQUNmLDhCQUE4QjtBQUNsQzs7QUFFQTtJQUNJO1FBQ0ksVUFBVTtJQUNkO0lBQ0E7UUFDSSxVQUFVO0lBQ2Q7QUFDSixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9zdHlsZS5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy90YWJsZXMuY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvdmlzdGFzLmNzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiogVGVtcGxhdGUgTmFtZTogTmljZUFkbWluXG4qIFRlbXBsYXRlIFVSTDogaHR0cHM6Ly9ib290c3RyYXBtYWRlLmNvbS9uaWNlLWFkbWluLWJvb3RzdHJhcC1hZG1pbi1odG1sLXRlbXBsYXRlL1xuKiBVcGRhdGVkOiBBcHIgMjAgMjAyNCB3aXRoIEJvb3RzdHJhcCB2NS4zLjNcbiogQXV0aG9yOiBCb290c3RyYXBNYWRlLmNvbVxuKiBMaWNlbnNlOiBodHRwczovL2Jvb3RzdHJhcG1hZGUuY29tL2xpY2Vuc2UvXG4qL1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIEdlbmVyYWxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbjpyb290IHtcbiAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbn1cblxuYm9keSB7XG4gICAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gICAgYmFja2dyb3VuZDogIzIwMjYzNDtcbn1cblxuYSB7XG4gICAgY29sb3I6ICM0MTU0ZjE7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5hOmhvdmVyIHtcbiAgICBjb2xvcjogIzcxN2ZmNTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gICAgZm9udC1mYW1pbHk6IFwiTnVuaXRvXCIsIHNhbnMtc2VyaWY7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgTWFpblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuI21haW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMDI2MzQ7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICBwYWRkaW5nOiAyMHB4IDMwcHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAjbWFpbiB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIFBhZ2UgVGl0bGVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5wYWdldGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi5wYWdldGl0bGUgaDEge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6ICMwMTI5NzA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgQmFjayB0byB0b3AgYnV0dG9uXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uYmFjay10by10b3Age1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgb3BhY2l0eTogMDtcbiAgICByaWdodDogMTVweDtcbiAgICBib3R0b206IDE1cHg7XG4gICAgei1pbmRleDogOTk5OTk7XG4gICAgYmFja2dyb3VuZDogIzQxNTRmMTtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjRzO1xufVxuXG4uYmFjay10by10b3AgaSB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xufVxuXG4uYmFjay10by10b3A6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICM2Nzc2ZjQ7XG4gICAgY29sb3I6ICNmZmY7XG59XG5cbi5iYWNrLXRvLXRvcC5hY3RpdmUge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgb3BhY2l0eTogMTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBPdmVycmlkZSBzb21lIGRlZmF1bHQgQm9vdHN0cmFwIHN0eWxpbmdzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiBEcm9wZG93biBtZW51cyAqL1xuLmRyb3Bkb3duLW1lbnUge1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGRyb3Bkb3duLWFuaW1hdGU7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjJzO1xuICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgNXB4IDMwcHggMCByZ2JhKDgyLCA2MywgMTA1LCAwLjIpO1xufVxuXG4uZHJvcGRvd24tbWVudSAuZHJvcGRvd24taGVhZGVyLFxuLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWZvb3RlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBwYWRkaW5nOiAxMHB4IDI1cHg7XG59XG5cbi5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1mb290ZXIgYSB7XG4gICAgY29sb3I6ICM0NDQ0NDQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1mb290ZXIgYTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uZHJvcGRvd24tbWVudSAuZHJvcGRvd24tZGl2aWRlciB7XG4gICAgY29sb3I6ICNhNWM1ZmU7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4uZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICB0cmFuc2l0aW9uOiAwLjNzO1xufVxuXG4uZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbSBpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xufVxuXG4uZHJvcGRvd24tbWVudSAuZHJvcGRvd24taXRlbTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjlmZjtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmRyb3Bkb3duLW1lbnUtYXJyb3c6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHdpZHRoOiAxM3B4O1xuICAgICAgICBoZWlnaHQ6IDEzcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtN3B4O1xuICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2VhZWRmMTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZWFlZGYxO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBkcm9wZG93bi1hbmltYXRlIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbn1cblxuLyogTGlnaHQgQmFja2dyb3VuZHMgKi9cbi5iZy1wcmltYXJ5LWxpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2ZlMmZmO1xuICAgIGJvcmRlci1jb2xvcjogI2NmZTJmZjtcbn1cblxuLmJnLXNlY29uZGFyeS1saWdodCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2UyZTNlNTtcbiAgICBib3JkZXItY29sb3I6ICNlMmUzZTU7XG59XG5cbi5iZy1zdWNjZXNzLWxpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDFlN2RkO1xuICAgIGJvcmRlci1jb2xvcjogI2QxZTdkZDtcbn1cblxuLmJnLWRhbmdlci1saWdodCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZDdkYTtcbiAgICBib3JkZXItY29sb3I6ICNmOGQ3ZGE7XG59XG5cbi5iZy13YXJuaW5nLWxpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmM2NkO1xuICAgIGJvcmRlci1jb2xvcjogI2ZmZjNjZDtcbn1cblxuLmJnLWluZm8tbGlnaHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjZmY0ZmM7XG4gICAgYm9yZGVyLWNvbG9yOiAjY2ZmNGZjO1xufVxuXG4uYmctZGFyay1saWdodCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2QzZDNkNDtcbiAgICBib3JkZXItY29sb3I6ICNkM2QzZDQ7XG59XG5cbi8qIENhcmQgKi9cbi5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgYm94LXNoYWRvdzogMHB4IDAgMzBweCByZ2JhKDEsIDQxLCAxMTIsIDAuMSk7XG59XG5cbi5jYXJkLWhlYWRlcixcbi5jYXJkLWZvb3RlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAjZWJlZWY0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgY29sb3I6ICM3OThlYjM7XG4gICAgcGFkZGluZzogMTVweDtcbn1cblxuLmNhcmQtdGl0bGUge1xuICAgIHBhZGRpbmc6IDIwcHggMCAxNXB4IDA7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgY29sb3I6ICMwMTI5NzA7XG4gICAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBzYW5zLXNlcmlmO1xufVxuXG4uY2FyZC10aXRsZSBzcGFuIHtcbiAgICBjb2xvcjogIzg5OWJiZDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuLmNhcmQtYm9keSB7XG4gICAgcGFkZGluZzogMCAyMHB4IDIwcHggMjBweDtcbn1cblxuLmNhcmQtaW1nLW92ZXJsYXkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcbn1cblxuLyogQWxlcnRzICovXG4uYWxlcnQtaGVhZGluZyB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAyMHB4O1xufVxuXG4vKiBDbG9zZSBCdXR0b24gKi9cbi5idG4tY2xvc2Uge1xuICAgIGJhY2tncm91bmQtc2l6ZTogMjUlO1xufVxuXG4uYnRuLWNsb3NlOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIEFjY29yZGlvbiAqL1xuLmFjY29yZGlvbi1pdGVtIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZWJlZWY0O1xufVxuXG4uYWNjb3JkaW9uLWJ1dHRvbjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xufVxuXG4uYWNjb3JkaW9uLWJ1dHRvbjpub3QoLmNvbGxhcHNlZCkge1xuICAgIGNvbG9yOiAjMDEyOTcwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY5ZmY7XG59XG5cbi5hY2NvcmRpb24tZmx1c2ggLmFjY29yZGlvbi1idXR0b24ge1xuICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlcjogMDtcbn1cblxuLmFjY29yZGlvbi1mbHVzaCAuYWNjb3JkaW9uLWJ1dHRvbjpub3QoLmNvbGxhcHNlZCkge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgY29sb3I6ICM0MTU0ZjE7XG59XG5cbi5hY2NvcmRpb24tZmx1c2ggLmFjY29yZGlvbi1ib2R5IHtcbiAgICBwYWRkaW5nOiAwIDAgMTVweCAwO1xuICAgIGNvbG9yOiAjM2U0ZjZmO1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbn1cblxuLyogQnJlYWRjcnVtYnMgKi9cbi5icmVhZGNydW1iIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgZm9udC1mYW1pbHk6IFwiTnVuaXRvXCIsIHNhbnMtc2VyaWY7XG4gICAgY29sb3I6ICM4OTliYmQ7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmJyZWFkY3J1bWIgYSB7XG4gICAgY29sb3I6ICM4OTliYmQ7XG4gICAgdHJhbnNpdGlvbjogMC4zcztcbn1cblxuLmJyZWFkY3J1bWIgYTpob3ZlciB7XG4gICAgY29sb3I6ICM1MTY3OGY7XG59XG5cbi5icmVhZGNydW1iIC5icmVhZGNydW1iLWl0ZW06OmJlZm9yZSB7XG4gICAgY29sb3I6ICM4OTliYmQ7XG59XG5cbi5icmVhZGNydW1iIC5hY3RpdmUge1xuICAgIGNvbG9yOiAjNTE2NzhmO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi8qIEJvcmRlcmVkIFRhYnMgKi9cbi5uYXYtdGFicy1ib3JkZXJlZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNlYmVlZjQ7XG59XG5cbi5uYXYtdGFicy1ib3JkZXJlZCAubmF2LWxpbmsge1xuICAgIG1hcmdpbi1ib3R0b206IC0ycHg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGNvbG9yOiAjMmMzODRlO1xufVxuXG4ubmF2LXRhYnMtYm9yZGVyZWQgLm5hdi1saW5rOmhvdmVyLFxuLm5hdi10YWJzLWJvcmRlcmVkIC5uYXYtbGluazpmb2N1cyB7XG4gICAgY29sb3I6ICM0MTU0ZjE7XG59XG5cbi5uYXYtdGFicy1ib3JkZXJlZCAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGNvbG9yOiAjNDE1NGYxO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjNDE1NGYxO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIEhlYWRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRXN0aWxvcyBkZWwgbG9nbyAqL1xuLmxvZ28ge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgLmxvZ28ge1xuICAgICAgICB3aWR0aDogMjgwcHg7XG4gICAgfVxufVxuXG4ubG9nbyBpbWcge1xuICAgIG1heC1oZWlnaHQ6IDUwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG59XG5cbi5sb2dvIHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiAjZmZmZmZmOyAvKiBCbGFuY28gcGFyYSBlbCB0ZXh0byBkZWwgbG9nbyAqL1xuICAgIGZvbnQtZmFtaWx5OiBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG59XG5cbi8qIENhYmVjZXJhICovXG4uaGVhZGVyIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICB6LWluZGV4OiA5OTc7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICAgIGJveC1zaGFkb3c6IDBweCA0cHggMTVweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI5MzA0MjsgLyogQXp1bCBvc2N1cm8gcGFyYSBsYSBjYWJlY2VyYSAqL1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbn1cblxuLyogQm90w7NuIGRlbCBzaWRlYmFyICovXG4uaGVhZGVyIC50b2dnbGUtc2lkZWJhci1idG4ge1xuICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGNvbG9yOiAjZmZmZmZmOyAvKiBCbGFuY28gcGFyYSBlbCBpY29ubyAqL1xufVxuXG4vKiBCYXJyYSBkZSBiw7pzcXVlZGEgKi9cbi5oZWFkZXIgLnNlYXJjaC1iYXIge1xuICAgIG1pbi13aWR0aDogMzYwcHg7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIGJhY2tncm91bmQ6ICMyOTMwNDI7XG59XG5cbiNidXNjYXJ1dGE6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgb3BhY2l0eTogMTsgLyogQXNlZ3VyYSBxdWUgZWwgY29sb3Igc2UgdmVhIGJpZW4gZW4gYWxndW5vcyBuYXZlZ2Fkb3JlcyAqL1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgIC5oZWFkZXIgLnNlYXJjaC1iYXIge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHRvcDogNTBweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggMTVweCAwcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMjAyNjM0OyAvKiBBenVsIG3DoXMgb3NjdXJvICovXG4gICAgICAgIHotaW5kZXg6IDk5OTk7XG4gICAgICAgIHRyYW5zaXRpb246IDAuM3M7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICAuaGVhZGVyIC5zZWFyY2gtYmFyLXNob3cge1xuICAgICAgICB0b3A6IDYwcHg7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxufVxuXG4vKiBGb3JtdWxhcmlvIGRlIGLDunNxdWVkYSAqL1xuLmhlYWRlciAuc2VhcmNoLWZvcm0ge1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4uaGVhZGVyIC5zZWFyY2gtZm9ybSBpbnB1dCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpOyAvKiBCb3JkZSBibGFuY28gc3VhdmUgKi9cbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgY29sb3I6ICNmZmZmZmY7IC8qIEJsYW5jbyBwYXJhIGVsIHRleHRvICovXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI5MzA0MjsgLyogQXp1bCBvc2N1cm8gcGFyYSBlbCBmb25kbyAqL1xuICAgIHBhZGRpbmc6IDdweCAzOHB4IDdweCA4cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIHRyYW5zaXRpb246IDAuM3M7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5oZWFkZXIgLnNlYXJjaC1mb3JtIGlucHV0OmZvY3VzLFxuLmhlYWRlciAuc2VhcmNoLWZvcm0gaW5wdXQ6aG92ZXIge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogMCAwIDEwcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7IC8qIFNvbWJyYSBzdWF2ZSBibGFuY2EgKi9cbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmZmZmOyAvKiBCb3JkZSBibGFuY28gYnJpbGxhbnRlIGFsIGVuZm9jYXJzZSAqL1xufVxuXG4uaGVhZGVyIC5zZWFyY2gtZm9ybSBidXR0b24ge1xuICAgIGJvcmRlcjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAtMzBweDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4uaGVhZGVyIC5zZWFyY2gtZm9ybSBidXR0b24gaSB7XG4gICAgY29sb3I6ICNmZmZmZmY7IC8qIEJsYW5jbyBwYXJhIGVsIGljb25vICovXG59XG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBTaWRlYmFyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiA9PT09PSBFc3RpbG9zIGRlIGxhIGJhcnJhIGxhdGVyYWwgPT09PT0gKi9cbi5zaWRlYmFyIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiA2MHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiAyODBweDtcbiAgICB6LWluZGV4OiA5OTY7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIHNjcm9sbGJhci13aWR0aDogdGhpbjtcbiAgICBzY3JvbGxiYXItY29sb3I6ICMyOTMwNDIgdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIwMjYzNDtcbiAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAjZmZmZmZmOyAvKiBCb3JkZSBibGFuY28gcGFyYSBkaWZlcmVuY2lhciAqL1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMTVweCAxNXB4IDA7XG59XG5cblxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgIC5zaWRlYmFyIHtcbiAgICAgICAgbGVmdDogLTMwMHB4OyAvKiBPY3VsdGEgbGEgYmFycmEgbGF0ZXJhbCBlbiBwYW50YWxsYXMgcGVxdWXDsWFzICovXG4gICAgfVxufVxuXG4vKiA9PT09PSBFc3RpbG9zIHBhcmEgZWwgc2Nyb2xsYmFyID09PT09ICovXG4uc2lkZWJhcjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIHdpZHRoOiA2cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIwMjYzNDtcbn1cblxuLnNpZGViYXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjkzMDQyO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAjbWFpbixcbiAgICAjZm9vdGVyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDMwMHB4OyAvKiBBanVzdGEgZWwgbWFyZ2VuIGRlbCBjb250ZW5pZG8gcHJpbmNpcGFsIHBhcmEgaGFjZXIgZXNwYWNpbyBwYXJhIGxhIGJhcnJhIGxhdGVyYWwgKi9cbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAudG9nZ2xlLXNpZGViYXIgLnNpZGViYXIge1xuICAgICAgICBsZWZ0OiAwOyAvKiBNdWVzdHJhIGxhIGJhcnJhIGxhdGVyYWwgZW4gcGFudGFsbGFzIHBlcXVlw7FhcyBjdWFuZG8gc2UgYWN0aXZhIGVsIHRvZ2dsZSAqL1xuICAgIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIC50b2dnbGUtc2lkZWJhciAjbWFpbixcbiAgICAudG9nZ2xlLXNpZGViYXIgI2Zvb3RlciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwOyAvKiBSZXN0YWJsZWNlIGVsIG1hcmdlbiBjdWFuZG8gc2Ugb2N1bHRhIGxhIGJhcnJhIGxhdGVyYWwgKi9cbiAgICB9XG5cbiAgICAudG9nZ2xlLXNpZGViYXIgLnNpZGViYXIge1xuICAgICAgICBsZWZ0OiAtMzAwcHg7IC8qIE9jdWx0YSBsYSBiYXJyYSBsYXRlcmFsIGN1YW5kbyBzZSBhY3RpdmEgZWwgdG9nZ2xlIGVuIHBhbnRhbGxhcyBncmFuZGVzICovXG4gICAgfVxufVxuXG5cbi8qID09PT09IE5hdmVnYWNpw7NuIGRlIGxhIGJhcnJhIGxhdGVyYWwgPT09PT0gKi9cbi5zaWRlYmFyLW5hdiB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLnNpZGViYXItbmF2IGxpIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uc2lkZWJhci1uYXYgLm5hdi1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4vKiA9PT09PSBFbmNhYmV6YWRvcyBkZSBsYSBiYXJyYSBsYXRlcmFsID09PT09ICovXG4uc2lkZWJhci1uYXYgLm5hdi1oZWFkaW5nIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBwYWRkaW5nOiAxMnB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgI2ZmZmZmZjsgLyogQm9yZGUgYmxhbmNvIHBhcmEgZGlmZXJlbmNpYXIgKi9cbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG59XG5cbi8qID09PT09IEVubGFjZXMgZGUgbGEgYmFycmEgbGF0ZXJhbCA9PT09PSAqL1xuLnNpZGViYXItbmF2IC5uYXYtbGluayB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IDE0cHggMjJweDtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBiYWNrZ3JvdW5kOiAjMjkzMDQyO1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDsgLyogQWdyZWdhIHVuIGJvcmRlIGluaWNpYWwgKi9cbn1cblxuLnNpZGViYXItbmF2IC5uYXYtbGluayBpIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICAgIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4vKiA9PT09PSBFZmVjdG9zIGFsIHBhc2FyIGVsIG1vdXNlID09PT09ICovXG4uc2lkZWJhci1uYXYgLm5hdi1saW5rOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBiYWNrZ3JvdW5kOiAjM2I0ODVhO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgYm9yZGVyOiAycHggc29saWQgI2ZmZmZmZjsgLyogQm9yZGUgYmxhbmNvIGFsIHBhc2FyIGVsIG1vdXNlICovXG59XG5cbi8qID09PT09IFN1YmVubGFjZXMgPT09PT0gKi9cbi5zaWRlYmFyLW5hdiAubmF2LWNvbnRlbnQgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMTBweCAyMnB4O1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGJhY2tncm91bmQ6ICMyOTMwNDI7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50OyAvKiBFdml0YSBtb3ZpbWllbnRvcyBhbCBhcGxpY2FyIGhvdmVyICovXG59XG5cbi5zaWRlYmFyLW5hdiAubmF2LWNvbnRlbnQgYSBpIHtcbiAgICBmb250LXNpemU6IDZweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuXG4vKiA9PT09PSBFbmxhY2VzIGFjdGl2b3MgeSBhbCBwYXNhciBlbCBtb3VzZSA9PT09PSAqL1xuLnNpZGViYXItbmF2IC5uYXYtY29udGVudCBhOmhvdmVyLFxuLnNpZGViYXItbmF2IC5uYXYtY29udGVudCBhLmFjdGl2ZSB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYmFja2dyb3VuZDogIzNiNDg1YTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmZmZmOyAvKiBCb3JkZSBibGFuY28gZW4gZWwgYWN0aXZvICovXG59XG5cbi5zaWRlYmFyLW5hdiAubmF2LWNvbnRlbnQgYS5hY3RpdmUgaSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNiNDg1YTtcbn1cblxuLyogPT09PT0gU2VwYXJhZG9yZXMgPT09PT0gKi9cbi5zaWRlYmFyLWRpdmlkZXIge1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbiAgICBtYXJnaW46IDEycHggMDtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgSGVhZGVyIE5hdlxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmhlYWRlci1uYXYgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5oZWFkZXItbmF2ID4gdWwge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4uaGVhZGVyLW5hdiAubmF2LWljb24ge1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICBjb2xvcjogI2ZmZmZmZjsgLyogQmxhbmNvICovXG4gICAgbWFyZ2luLXJpZ2h0OiAyNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmhlYWRlci1uYXYgLm5hdi1wcm9maWxlIHtcbiAgICBjb2xvcjogI2ZmZmZmZjsgLyogQmxhbmNvICovXG59XG5cbi5oZWFkZXItbmF2IC5uYXYtcHJvZmlsZSBpbWcge1xuICAgIG1heC1oZWlnaHQ6IDM2cHg7XG59XG5cbi5oZWFkZXItbmF2IC5uYXYtcHJvZmlsZSBzcGFuIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmhlYWRlci1uYXYgLmJhZGdlLW51bWJlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGluc2V0OiAtMnB4IC01cHggYXV0byBhdXRvO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIHBhZGRpbmc6IDNweCA2cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI5MzA0MjsgLyogQXp1bCBvc2N1cm8gKi9cbiAgICBjb2xvcjogI2ZmZmZmZjsgLyogQmxhbmNvICovXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xufVxuXG4uaGVhZGVyLW5hdiAubm90aWZpY2F0aW9ucyB7XG4gICAgaW5zZXQ6IDhweCAtMTVweCBhdXRvIGF1dG8gIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjAyNjM0OyAvKiBBenVsIG3DoXMgb3NjdXJvICovXG4gICAgY29sb3I6ICNmZmZmZmY7IC8qIEJsYW5jbyAqL1xufVxuXG4uaGVhZGVyLW5hdiAubm90aWZpY2F0aW9ucyAubm90aWZpY2F0aW9uLWl0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAxNXB4IDEwcHg7XG4gICAgdHJhbnNpdGlvbjogMC4zcztcbn1cblxuLmhlYWRlci1uYXYgLm5vdGlmaWNhdGlvbnMgLm5vdGlmaWNhdGlvbi1pdGVtIGkge1xuICAgIG1hcmdpbjogMCAyMHB4IDAgMTBweDtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgY29sb3I6ICNmZmZmZmY7IC8qIEJsYW5jbyAqL1xufVxuXG4uaGVhZGVyLW5hdiAubm90aWZpY2F0aW9ucyAubm90aWZpY2F0aW9uLWl0ZW0gaDQge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICBjb2xvcjogI2ZmZmZmZjsgLyogQmxhbmNvICovXG59XG5cbi5oZWFkZXItbmF2IC5ub3RpZmljYXRpb25zIC5ub3RpZmljYXRpb24taXRlbSBwIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogM3B4O1xuICAgIGNvbG9yOiAjYjBiM2I4OyAvKiBHcmlzIGNsYXJvICovXG59XG5cbi5oZWFkZXItbmF2IC5ub3RpZmljYXRpb25zIC5ub3RpZmljYXRpb24taXRlbTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI5MzA0MjsgLyogQXp1bCBvc2N1cm8gKi9cbn1cblxuLmhlYWRlci1uYXYgLm1lc3NhZ2VzIHtcbiAgICBpbnNldDogOHB4IC0xNXB4IGF1dG8gYXV0byAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMDI2MzQ7IC8qIEF6dWwgbcOhcyBvc2N1cm8gKi9cbiAgICBjb2xvcjogI2ZmZmZmZjsgLyogQmxhbmNvICovXG59XG5cbi5oZWFkZXItbmF2IC5tZXNzYWdlcyAubWVzc2FnZS1pdGVtIHtcbiAgICBwYWRkaW5nOiAxNXB4IDEwcHg7XG4gICAgdHJhbnNpdGlvbjogMC4zcztcbn1cblxuLmhlYWRlci1uYXYgLm1lc3NhZ2VzIC5tZXNzYWdlLWl0ZW0gYSB7XG4gICAgZGlzcGxheTogZmxleDtcbn1cblxuLmhlYWRlci1uYXYgLm1lc3NhZ2VzIC5tZXNzYWdlLWl0ZW0gaW1nIHtcbiAgICBtYXJnaW46IDAgMjBweCAwIDEwcHg7XG4gICAgbWF4LWhlaWdodDogNDBweDtcbn1cblxuLmhlYWRlci1uYXYgLm1lc3NhZ2VzIC5tZXNzYWdlLWl0ZW0gaDQge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICBjb2xvcjogI2ZmZmZmZjsgLyogQmxhbmNvICovXG59XG5cbi5oZWFkZXItbmF2IC5tZXNzYWdlcyAubWVzc2FnZS1pdGVtIHAge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzcHg7XG4gICAgY29sb3I6ICNiMGIzYjg7IC8qIEdyaXMgY2xhcm8gKi9cbn1cblxuLmhlYWRlci1uYXYgLm1lc3NhZ2VzIC5tZXNzYWdlLWl0ZW06aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyOTMwNDI7IC8qIEF6dWwgb3NjdXJvICovXG59XG5cbi5oZWFkZXItbmF2IC5wcm9maWxlIHtcbiAgICBtaW4td2lkdGg6IDI0MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHRvcDogOHB4ICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIwMjYzNDsgLyogQXp1bCBtw6FzIG9zY3VybyAqL1xuICAgIGNvbG9yOiAjZmZmZmZmOyAvKiBCbGFuY28gKi9cbn1cblxuLmhlYWRlci1uYXYgLnByb2ZpbGUgLmRyb3Bkb3duLWhlYWRlciBoNiB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogI2ZmZmZmZjsgLyogQmxhbmNvICovXG59XG5cbi5oZWFkZXItbmF2IC5wcm9maWxlIC5kcm9wZG93bi1oZWFkZXIgc3BhbiB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGNvbG9yOiAjYjBiM2I4OyAvKiBHcmlzIGNsYXJvICovXG59XG5cbi5oZWFkZXItbmF2IC5wcm9maWxlIC5kcm9wZG93bi1pdGVtIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgIHRyYW5zaXRpb246IDAuM3M7XG4gICAgY29sb3I6ICNmZmZmZmY7IC8qIEJsYW5jbyAqL1xufVxuXG4uaGVhZGVyLW5hdiAucHJvZmlsZSAuZHJvcGRvd24taXRlbSBpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIGNvbG9yOiAjZmZmZmZmOyAvKiBCbGFuY28gKi9cbn1cblxuLmhlYWRlci1uYXYgLnByb2ZpbGUgLmRyb3Bkb3duLWl0ZW06aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyOTMwNDI7IC8qIEF6dWwgb3NjdXJvICovXG59XG5cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIERhc2hib2FyZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRmlsdGVyIGRyb3Bkb3duICovXG4uZGFzaGJvYXJkIC5maWx0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMHB4O1xuICAgIHRvcDogMTVweDtcbn1cblxuLmRhc2hib2FyZCAuZmlsdGVyIC5pY29uIHtcbiAgICBjb2xvcjogI2FhYjdjZjtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgdHJhbnNpdGlvbjogMC4zcztcbiAgICBmb250LXNpemU6IDE2cHg7XG59XG5cbi5kYXNoYm9hcmQgLmZpbHRlciAuaWNvbjpob3Zlcixcbi5kYXNoYm9hcmQgLmZpbHRlciAuaWNvbjpmb2N1cyB7XG4gICAgY29sb3I6ICM0MTU0ZjE7XG59XG5cbi5kYXNoYm9hcmQgLmZpbHRlciAuZHJvcGRvd24taGVhZGVyIHtcbiAgICBwYWRkaW5nOiA4cHggMTVweDtcbn1cblxuLmRhc2hib2FyZCAuZmlsdGVyIC5kcm9wZG93bi1oZWFkZXIgaDYge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICBjb2xvcjogI2FhYjdjZjtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbi5kYXNoYm9hcmQgLmZpbHRlciAuZHJvcGRvd24taXRlbSB7XG4gICAgcGFkZGluZzogOHB4IDE1cHg7XG59XG5cbi8qIEluZm8gQ2FyZHMgKi9cbi5kYXNoYm9hcmQgLmluZm8tY2FyZCB7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG59XG5cbi5kYXNoYm9hcmQgLmluZm8tY2FyZCBoNiB7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICAgIGNvbG9yOiAjMDEyOTcwO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbi5kYXNoYm9hcmQgLmNhcmQtaWNvbiB7XG4gICAgZm9udC1zaXplOiAzMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIHdpZHRoOiA2NHB4O1xuICAgIGhlaWdodDogNjRweDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWdyb3c6IDA7XG59XG5cbi5kYXNoYm9hcmQgLnNhbGVzLWNhcmQgLmNhcmQtaWNvbiB7XG4gICAgY29sb3I6ICM0MTU0ZjE7XG4gICAgYmFja2dyb3VuZDogI2Y2ZjZmZTtcbn1cblxuLmRhc2hib2FyZCAucmV2ZW51ZS1jYXJkIC5jYXJkLWljb24ge1xuICAgIGNvbG9yOiAjMmVjYTZhO1xuICAgIGJhY2tncm91bmQ6ICNlMGY4ZTk7XG59XG5cbi5kYXNoYm9hcmQgLmN1c3RvbWVycy1jYXJkIC5jYXJkLWljb24ge1xuICAgIGNvbG9yOiAjZmY3NzFkO1xuICAgIGJhY2tncm91bmQ6ICNmZmVjZGY7XG59XG5cbi8qIEFjdGl2aXR5ICovXG4uZGFzaGJvYXJkIC5hY3Rpdml0eSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4uZGFzaGJvYXJkIC5hY3Rpdml0eSAuYWN0aXZpdHktaXRlbSAuYWN0aXZpdGUtbGFiZWwge1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgbWluLXdpZHRoOiA2NHB4O1xufVxuXG4uZGFzaGJvYXJkIC5hY3Rpdml0eSAuYWN0aXZpdHktaXRlbSAuYWN0aXZpdGUtbGFiZWw6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IC0xMXB4O1xuICAgIHdpZHRoOiA0cHg7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xufVxuXG4uZGFzaGJvYXJkIC5hY3Rpdml0eSAuYWN0aXZpdHktaXRlbSAuYWN0aXZpdHktYmFkZ2Uge1xuICAgIG1hcmdpbi10b3A6IDNweDtcbiAgICB6LWluZGV4OiAxO1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgYm9yZGVyOiAzcHggc29saWQgI2ZmZjtcbiAgICBmbGV4LWdyb3c6IDA7XG59XG5cbi5kYXNoYm9hcmQgLmFjdGl2aXR5IC5hY3Rpdml0eS1pdGVtIC5hY3Rpdml0eS1jb250ZW50IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG59XG5cbi5kYXNoYm9hcmQgLmFjdGl2aXR5IC5hY3Rpdml0eS1pdGVtOmZpcnN0LWNoaWxkIC5hY3Rpdml0ZS1sYWJlbDo6YmVmb3JlIHtcbiAgICB0b3A6IDVweDtcbn1cblxuLmRhc2hib2FyZCAuYWN0aXZpdHkgLmFjdGl2aXR5LWl0ZW06bGFzdC1jaGlsZCAuYWN0aXZpdHktY29udGVudCB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbi8qIE5ld3MgJiBVcGRhdGVzICovXG4uZGFzaGJvYXJkIC5uZXdzIC5wb3N0LWl0ZW0rLnBvc3QtaXRlbSB7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcbn1cblxuLmRhc2hib2FyZCAubmV3cyBpbWcge1xuICAgIHdpZHRoOiA4MHB4O1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbn1cblxuLmRhc2hib2FyZCAubmV3cyBoNCB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIG1hcmdpbi1sZWZ0OiA5NXB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLmRhc2hib2FyZCAubmV3cyBoNCBhIHtcbiAgICBjb2xvcjogIzAxMjk3MDtcbiAgICB0cmFuc2l0aW9uOiAwLjNzO1xufVxuXG4uZGFzaGJvYXJkIC5uZXdzIGg0IGE6aG92ZXIge1xuICAgIGNvbG9yOiAjNDE1NGYxO1xufVxuXG4uZGFzaGJvYXJkIC5uZXdzIHAge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBjb2xvcjogIzc3Nzc3NztcbiAgICBtYXJnaW4tbGVmdDogOTVweDtcbn1cblxuLyogUmVjZW50IFNhbGVzICovXG4uZGFzaGJvYXJkIC5yZWNlbnQtc2FsZXMge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLmRhc2hib2FyZCAucmVjZW50LXNhbGVzIC50YWJsZSB0aGVhZCB7XG4gICAgYmFja2dyb3VuZDogI2Y2ZjZmZTtcbn1cblxuLmRhc2hib2FyZCAucmVjZW50LXNhbGVzIC50YWJsZSB0aGVhZCB0aCB7XG4gICAgYm9yZGVyOiAwO1xufVxuXG4uZGFzaGJvYXJkIC5yZWNlbnQtc2FsZXMgLmRhdGFUYWJsZS10b3Age1xuICAgIHBhZGRpbmc6IDAgMCAxMHB4IDA7XG59XG5cbi5kYXNoYm9hcmQgLnJlY2VudC1zYWxlcyAuZGF0YVRhYmxlLWJvdHRvbSB7XG4gICAgcGFkZGluZzogMTBweCAwIDAgMDtcbn1cblxuLyogVG9wIFNlbGxpbmcgKi9cbi5kYXNoYm9hcmQgLnRvcC1zZWxsaW5nIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG59XG5cbi5kYXNoYm9hcmQgLnRvcC1zZWxsaW5nIC50YWJsZSB0aGVhZCB7XG4gICAgYmFja2dyb3VuZDogI2Y2ZjZmZTtcbn1cblxuLmRhc2hib2FyZCAudG9wLXNlbGxpbmcgLnRhYmxlIHRoZWFkIHRoIHtcbiAgICBib3JkZXI6IDA7XG59XG5cbi5kYXNoYm9hcmQgLnRvcC1zZWxsaW5nIC50YWJsZSB0Ym9keSB0ZCB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLmRhc2hib2FyZCAudG9wLXNlbGxpbmcgaW1nIHtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgbWF4LXdpZHRoOiA2MHB4O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIEljb25zIGxpc3QgcGFnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmljb25zbGlzdCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgxODBweCwgMWZyKSk7XG4gICAgZ2FwOiAxLjI1cmVtO1xuICAgIHBhZGRpbmctdG9wOiAxNXB4O1xufVxuXG4uaWNvbnNsaXN0IC5pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAjMDEyOTcwO1xuICAgIHBhZGRpbmc6IDE1cHggMDtcbn1cblxuLmljb25zbGlzdCBpIHtcbiAgICBtYXJnaW46IDAuMjVyZW07XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG59XG5cbi5pY29uc2xpc3QgLmxhYmVsIHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tYnMtZm9udC1tb25vc3BhY2UpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDAuMjVyZW07XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgY29sb3I6ICMwMDA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiMgUHJvZmllIFBhZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5wcm9maWxlIC5wcm9maWxlLWNhcmQgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEyMHB4O1xufVxuXG4ucHJvZmlsZSAucHJvZmlsZS1jYXJkIGgyIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBjb2xvcjogIzJjMzg0ZTtcbiAgICBtYXJnaW46IDEwcHggMCAwIDA7XG59XG5cbi5wcm9maWxlIC5wcm9maWxlLWNhcmQgaDMge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbn1cblxuLnByb2ZpbGUgLnByb2ZpbGUtY2FyZCAuc29jaWFsLWxpbmtzIGEge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29sb3I6IHJnYmEoMSwgNDEsIDExMiwgMC41KTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgdHJhbnNpdGlvbjogMC4zcztcbn1cblxuLnByb2ZpbGUgLnByb2ZpbGUtY2FyZCAuc29jaWFsLWxpbmtzIGE6aG92ZXIge1xuICAgIGNvbG9yOiAjMDEyOTcwO1xufVxuXG4ucHJvZmlsZSAucHJvZmlsZS1vdmVydmlldyAucm93IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbn1cblxuLnByb2ZpbGUgLnByb2ZpbGUtb3ZlcnZpZXcgLmNhcmQtdGl0bGUge1xuICAgIGNvbG9yOiAjMDEyOTcwO1xufVxuXG4ucHJvZmlsZSAucHJvZmlsZS1vdmVydmlldyAubGFiZWwge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6IHJnYmEoMSwgNDEsIDExMiwgMC42KTtcbn1cblxuLnByb2ZpbGUgLnByb2ZpbGUtZWRpdCBsYWJlbCB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogcmdiYSgxLCA0MSwgMTEyLCAwLjYpO1xufVxuXG4ucHJvZmlsZSAucHJvZmlsZS1lZGl0IGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMjBweDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBGLkEuUSBQYWdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZmFxIC5iYXNpYyBoNiB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6ICM0MTU0ZjE7XG59XG5cbi5mYXEgLmJhc2ljIHAge1xuICAgIGNvbG9yOiAjNjk4MGFhO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIENvbnRhY3Rcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5jb250YWN0IC5pbmZvLWJveCB7XG4gICAgcGFkZGluZzogMjhweCAzMHB4O1xufVxuXG4uY29udGFjdCAuaW5mby1ib3ggaSB7XG4gICAgZm9udC1zaXplOiAzOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIGNvbG9yOiAjNDE1NGYxO1xufVxuXG4uY29udGFjdCAuaW5mby1ib3ggaDMge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBjb2xvcjogIzAxMjk3MDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIG1hcmdpbjogMjBweCAwIDEwcHggMDtcbn1cblxuLmNvbnRhY3QgLmluZm8tYm94IHAge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jb250YWN0IC5waHAtZW1haWwtZm9ybSAuZXJyb3ItbWVzc2FnZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kOiAjZWQzYzBkO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcGFkZGluZzogMTVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5jb250YWN0IC5waHAtZW1haWwtZm9ybSAuc2VudC1tZXNzYWdlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQ6ICMxOGQyNmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjRweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uY29udGFjdCAucGhwLWVtYWlsLWZvcm0gLmxvYWRpbmcge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMTVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xufVxuXG4uY29udGFjdCAucGhwLWVtYWlsLWZvcm0gLmxvYWRpbmc6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIG1hcmdpbjogMCAxMHB4IC02cHggMDtcbiAgICBib3JkZXI6IDNweCBzb2xpZCAjMThkMjZlO1xuICAgIGJvcmRlci10b3AtY29sb3I6ICNlZWU7XG4gICAgYW5pbWF0aW9uOiBhbmltYXRlLWxvYWRpbmcgMXMgbGluZWFyIGluZmluaXRlO1xufVxuXG4uY29udGFjdCAucGhwLWVtYWlsLWZvcm0gaW5wdXQsXG4uY29udGFjdCAucGhwLWVtYWlsLWZvcm0gdGV4dGFyZWEge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLmNvbnRhY3QgLnBocC1lbWFpbC1mb3JtIGlucHV0OmZvY3VzLFxuLmNvbnRhY3QgLnBocC1lbWFpbC1mb3JtIHRleHRhcmVhOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICM0MTU0ZjE7XG59XG5cbi5jb250YWN0IC5waHAtZW1haWwtZm9ybSBpbnB1dCB7XG4gICAgcGFkZGluZzogMTBweCAxNXB4O1xufVxuXG4uY29udGFjdCAucGhwLWVtYWlsLWZvcm0gdGV4dGFyZWEge1xuICAgIHBhZGRpbmc6IDEycHggMTVweDtcbn1cblxuLmNvbnRhY3QgLnBocC1lbWFpbC1mb3JtIGJ1dHRvblt0eXBlPXN1Ym1pdF0ge1xuICAgIGJhY2tncm91bmQ6ICM0MTU0ZjE7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDEwcHggMzBweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0cmFuc2l0aW9uOiAwLjRzO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbn1cblxuLmNvbnRhY3QgLnBocC1lbWFpbC1mb3JtIGJ1dHRvblt0eXBlPXN1Ym1pdF06aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICM1OTY5ZjM7XG59XG5cbkBrZXlmcmFtZXMgYW5pbWF0ZS1sb2FkaW5nIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIyBFcnJvciA0MDRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5lcnJvci00MDQge1xuICAgIHBhZGRpbmc6IDMwcHg7XG59XG5cbi5lcnJvci00MDQgaDEge1xuICAgIGZvbnQtc2l6ZTogMTgwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBjb2xvcjogIzQxNTRmMTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxNTBweDtcbn1cblxuLmVycm9yLTQwNCBoMiB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6ICMwMTI5NzA7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuLmVycm9yLTQwNCAuYnRuIHtcbiAgICBiYWNrZ3JvdW5kOiAjNTE2NzhmO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDhweCAzMHB4O1xufVxuXG4uZXJyb3ItNDA0IC5idG46aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICMzZTRmNmY7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC5lcnJvci00MDQgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jIEZvb3RlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmZvb3RlciB7XG4gICAgcGFkZGluZzogMjBweCAwO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2ZmZjtcbn1cblxuLmZvb3RlciAuY29weXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICNmZmY7XG59XG5cbi5mb290ZXIgLmNyZWRpdHMge1xuICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBjb2xvcjogI2ZmZjtcbn1cblxuaW5wdXQsIHRleHRhcmVhLCBzZWxlY3Qge1xuICAgIGJvcmRlcjogMS41cHggc29saWQgdmFyKC0tYnMtZGFyaykgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgY29sb3I6IHZhcigtLWJzLWRhcmspO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWxpZ2h0KTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cblxuaW5wdXQ6Zm9jdXMsIHRleHRhcmVhOmZvY3VzLCBzZWxlY3Q6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtcHJpbWFyeSkgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiAwIDAgNnB4IHJnYmEoMTMsIDExMCwgMjUzLCAwLjUpICFpbXBvcnRhbnQ7IC8qIENvbG9yIHByaW1hcmlvIGNvbiB0cmFuc3BhcmVuY2lhICovXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtd2hpdGUpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNyk7IC8qIEhhY2UgcXVlIGVsIGlucHV0IGNyZXpjYSB1biBwb2NvICovXG59IiwiLyogRXN0aWxvcyBwYXJhIGxhIHRhYmxhIGRlbnRybyBkZWwgbW9kYWwgKi9cbi5lc3RpbG9zX2dlbmVyYWxlcyB7XG4gICAgbWFyZ2luOiBhdXRvOyAvKiBDZW50cmEgbGEgdGFibGEgaG9yaXpvbnRhbG1lbnRlICovXG4gICAgd2lkdGg6IDkwJTsgLyogQW5jaG8gbcOheGltbyBkZSBsYSB0YWJsYSAqL1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IC8qIENvbWJpbmEgbG9zIGJvcmRlcyBkZSBsYXMgY2VsZGFzICovXG4gICAgZm9udC1mYW1pbHk6ICdSb2JvdG8nLCBBcmlhbCwgc2Fucy1zZXJpZjsgLyogVGlwbyBkZSBmdWVudGUgcGFyYSB0b2RhIGxhIHRhYmxhICovXG4gICAgYmFja2dyb3VuZDogIzI5MzA0MjsgLyogRm9uZG8gdHJhbnNwYXJlbnRlICovXG4gICAgY29sb3I6IHdoaXRlOyAvKiBUZXh0byBlbiBjb2xvciBibGFuY28gKi9cbn1cblxuLyogRXN0aWxvcyBwYXJhIGxhcyBjZWxkYXMgZGVsIGVuY2FiZXphZG8gKi9cbi5lc3RpbG9zX2dlbmVyYWxlcyB0aCB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHBhZGRpbmc6IDEycHggMTNweDtcbiAgICBiYWNrZ3JvdW5kOiAjMjkzMDQyOyAvKiBGb25kbyB0cmFuc3BhcmVudGUgcGFyYSBsb3MgZW5jYWJlemFkb3MgKi9cbiAgICBjb2xvcjogd2hpdGU7IC8qIFRleHRvIGVuIGNvbG9yIGJsYW5jbyAqL1xufVxuXG4vKiBFc3RpbG9zIHBhcmEgbGFzIGNlbGRhcyBkZSBkYXRvcyAqL1xuLmVzdGlsb3NfZ2VuZXJhbGVzIHRkIHtcbiAgICBwYWRkaW5nOiA4cHg7IC8qIEVzcGFjaWFkbyBpbnRlcm5vIGRlbnRybyBkZSBsYXMgY2VsZGFzIGRlIGRhdG9zICovXG4gICAgZm9udC1zaXplOiAxM3B4OyAvKiBUYW1hw7FvIGRlIGxhIGZ1ZW50ZSBwYXJhIGxhcyBjZWxkYXMgZGUgZGF0b3MgKi9cbiAgICBiYWNrZ3JvdW5kOiAjMjkzMDQyOyAvKiBGb25kbyB0cmFuc3BhcmVudGUgcGFyYSBsYXMgY2VsZGFzICovXG4gICAgY29sb3I6IHdoaXRlOyAvKiBUZXh0byBlbiBjb2xvciBibGFuY28gKi9cbn1cblxuLmNvbG9ye1xuICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4jdGl0dWxvLWNvbnN1bHRhIHtcbiAgICBjb2xvcjogd2hpdGU7IC8qIE8gY3VhbHF1aWVyIG90cm8gY29sb3IgKi9cbn1cblxuLnBhZ2UtbGlzdCB7XG4gICAgY29sb3I6IHdoaXRlOyAvKiBPIGN1YWxxdWllciBvdHJvIGNvbG9yICovXG59XG5cbi5wYWdpbmF0aW9uLWluZm8ge1xuICAgIGNvbG9yOiB3aGl0ZTsgLyogTyBjdWFscXVpZXIgb3RybyBjb2xvciAqL1xufVxuXG4vKiBPY3VsdGFyIGxvcyBjb250cm9sZXMgZGUgbsO6bWVybyBlbiBDaHJvbWUsIFNhZmFyaSwgRWRnZSB5IE9wZXJhICovXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbn1cblxuLyogT2N1bHRhciBsb3MgY29udHJvbGVzIGRlIG7Dum1lcm8gZW4gRmlyZWZveCAqL1xuaW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XG4gICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG59XG5cbi5maXhlZC10YWJsZS10b29sYmFyIC5idG4tY3VzdG9tIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjkzMDQyICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuXG4uZml4ZWQtdGFibGUtdG9vbGJhciAuYnRuLWN1c3RvbTpob3Zlcixcbi5maXhlZC10YWJsZS10b29sYmFyIC5idG4tY3VzdG9tOmZvY3VzLFxuLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmJ0bi1jdXN0b206YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjAyNjM0ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uZml4ZWQtdGFibGUtdG9vbGJhciAuYnRuLWN1c3RvbTpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI5MzA0MiAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNykgIWltcG9ydGFudDtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkICFpbXBvcnRhbnQ7XG59XG5cblxuLmJ0bi1jdXN0b20tdGV4dCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI5MzA0MiAhaW1wb3J0YW50OyAvKiBBc2VndXJhIHF1ZSBlbCBjb2xvciBzZSBhcGxpcXVlICovXG4gICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgLyogRXZpdGEgYm9yZGVzIG9zY3Vyb3MgKi9cbn1cblxuLmJ0bi1jdXN0b20tdGV4dDpob3Zlcixcbi5idG4tY3VzdG9tLXRleHQ6Zm9jdXMsXG4uYnRuLWN1c3RvbS10ZXh0OmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIwMjYzNCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgLyogRWxpbWluYSBlbCBlZmVjdG8gZGUgc29tYnJlYWRvICovXG59XG5cbi5idG4tY3VzdG9tLXRleHQ6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1MDViNzEgIWltcG9ydGFudDsgLyogQ29sb3IgbcOhcyBjbGFybyBwYXJhIGRlc2hhYmlsaXRhZG9zICovXG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KSAhaW1wb3J0YW50O1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi8qI2J0bl9udWV2bzo6YmVmb3JlIHsqL1xuLyogICAgY29udGVudDogXCJcXGYwNTVcIjsqL1xuLyogICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiLCBzYW5zLXNlcmlmOyovXG4vKiAgICBmb250LXdlaWdodDogOTAwOyovXG4vKiAgICBtYXJnaW4tcmlnaHQ6IDVweDsqL1xuLyp9Ki9cblxuLyojYnRuX251ZXZvOjphZnRlciB7Ki9cbi8qICAgIGNvbnRlbnQ6IFwiIE51ZXZvXCI7Ki9cbi8qfSovXG5cbi8qISogQm90w7NuIEVsaW1pbmFyIFJlZ2lzdHJvcyAqISovXG4vKiNidG5fcmVtb3ZlX2FsbDo6YmVmb3JlIHsqL1xuLyogICAgY29udGVudDogXCJcXGYxZjhcIjsgISogw41jb25vIGRlIGJhc3VyYSAqISovXG4vKiAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCIsIHNhbnMtc2VyaWY7Ki9cbi8qICAgIGZvbnQtd2VpZ2h0OiA5MDA7Ki9cbi8qICAgIG1hcmdpbi1yaWdodDogNXB4OyovXG4vKn0qL1xuXG4vKiNidG5fcmVtb3ZlX2FsbDo6YWZ0ZXIgeyovXG4vKiAgICBjb250ZW50OiBcIkVsaW1pbmFyIFJlZ2lzdHJvc1wiOyovXG4vKn0qL1xuXG4vKiEqIEJvdMOzbiBDYW1iaWFyIEVzdGFkbyBkZSBSZWdpc3Ryb3MgKiEqL1xuLyojYnRuX2VzdGFkb19hbGw6OmJlZm9yZSB7Ki9cbi8qICAgIGNvbnRlbnQ6IFwiXFxmMzYyXCI7ICEqIMONY29ubyBkZSBpbnRlcmNhbWJpbyAqISovXG4vKiAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCIsIHNhbnMtc2VyaWY7Ki9cbi8qICAgIGZvbnQtd2VpZ2h0OiA5MDA7Ki9cbi8qICAgIG1hcmdpbi1yaWdodDogNXB4OyovXG4vKn0qL1xuXG4vKiNidG5fZXN0YWRvX2FsbDo6YWZ0ZXIgeyovXG4vKiAgICBjb250ZW50OiBcIkNhbWJpYXIgRXN0YWRvXCI7Ki9cbi8qfSovXG5cbi8qI2J0bl9jYXJnYV9tYXNpdmE6OmJlZm9yZSB7Ki9cbi8qICAgIGNvbnRlbnQ6IFwiXFxmMWMzXCI7ICEqIMONY29ubyBkZSBhcmNoaXZvIEV4Y2VsICohKi9cbi8qICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIiwgc2Fucy1zZXJpZjsqL1xuLyogICAgZm9udC13ZWlnaHQ6IDkwMDsqL1xuLyogICAgbWFyZ2luLXJpZ2h0OiA1cHg7Ki9cbi8qfSovXG5cbi8qI2J0bl9jYXJnYV9tYXNpdmE6OmFmdGVyIHsqL1xuLyogICAgY29udGVudDogXCJDYXJnYSBNYXNpdmFcIjsqL1xuLyp9Ki9cblxuLyohKiBCb3TDs24gRGVzY2FyZ2FyIEVqZW1wbG8gQ2FyZ2EgTWFzaXZhICohKi9cbi8qI2J0bl9kZXNjYXJnYXJfZXhjZWw6OmJlZm9yZSB7Ki9cbi8qICAgIGNvbnRlbnQ6IFwiXFxmMDE5XCI7ICEqIMONY29ubyBkZSBkZXNjYXJnYSAqISovXG4vKiAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCIsIHNhbnMtc2VyaWY7Ki9cbi8qICAgIGZvbnQtd2VpZ2h0OiA5MDA7Ki9cbi8qICAgIG1hcmdpbi1yaWdodDogNXB4OyovXG4vKn0qL1xuXG4vKiNidG5fZGVzY2FyZ2FyX2V4Y2VsOjphZnRlciB7Ki9cbi8qICAgIGNvbnRlbnQ6IFwiRGVzY2FyZ2FyIEVqZW1wbG9cIjsqL1xuLyp9Ki9cblxuLyohKiBCb3TDs24gTnVldm8gKiEqL1xuLyojYnRuX251ZXZvOjpiZWZvcmUgeyovXG4vKiAgICBjb250ZW50OiBcIlxcZjA1NVwiOyAhKiDDjWNvbm8gZGUgbcOhcyAqISovXG4vKiAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCIsIHNhbnMtc2VyaWY7Ki9cbi8qICAgIGZvbnQtd2VpZ2h0OiA5MDA7Ki9cbi8qICAgIG1hcmdpbi1yaWdodDogNXB4OyovXG4vKn0qL1xuXG4vKiNidG5fbnVldm86OmFmdGVyIHsqL1xuLyogICAgY29udGVudDogXCJOdWV2b1wiOyovXG4vKn0qL1xuXG4vKiNidG5fbnVldm9fY2llcnJlX2NhamE6OmJlZm9yZSB7Ki9cbi8qICAgIGNvbnRlbnQ6IFwiXFxmMmYyXCI7ICEqIMONY29ubyBkZSBjYWphIHJlZ2lzdHJhZG9yYSAqISovXG4vKiAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCIsIHNhbnMtc2VyaWY7Ki9cbi8qICAgIGZvbnQtd2VpZ2h0OiA5MDA7Ki9cbi8qICAgIG1hcmdpbi1yaWdodDogNXB4OyovXG4vKn0qL1xuXG4vKiNidG5fbnVldm9fY2llcnJlX2NhamE6OmFmdGVyIHsqL1xuLyogICAgY29udGVudDogXCIgQ2llcnJlIGRlIENhamFcIjsqL1xuLyp9Ki9cblxuLyojYnRuX2FicmlyX2NhamE6OmJlZm9yZSB7Ki9cbi8qICAgIGNvbnRlbnQ6IFwiXFxmMmYxXCI7ICEqIMONY29ubyBkZSBjYWphIGFiaWVydGEgKiEqL1xuLyogICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiLCBzYW5zLXNlcmlmOyovXG4vKiAgICBmb250LXdlaWdodDogOTAwOyovXG4vKiAgICBtYXJnaW4tcmlnaHQ6IDVweDsqL1xuLyp9Ki9cblxuLyojYnRuX2FicmlyX2NhamE6OmFmdGVyIHsqL1xuLyogICAgY29udGVudDogXCIgQWJyaXIgQ2FqYVwiOyovXG4vKn0qL1xuXG4vKiNidG5fYWJyaXJfY2FqYSwqL1xuLyojYnRuX251ZXZvX2NpZXJyZV9jYWphLCovXG4vKiNidG5fbnVldm8sKi9cbi8qI2J0bl9yZW1vdmVfYWxsLCovXG4vKiNidG5fZXN0YWRvX2FsbCwqL1xuLyojYnRuX2NhcmdhX21hc2l2YSwqL1xuLyojYnRuX2Rlc2Nhcmdhcl9leGNlbCB7Ki9cbi8qICAgIGZvbnQtc2l6ZTogMTJweDsgISogVGFtYcOxbyBkZWwgdGV4dG8gKiEqL1xuLyogICAgcGFkZGluZzogMTBweCAxNXB4OyAhKiBFc3BhY2lhZG8gaW50ZXJubyBwYXJhIG1lam9yIHZpc3VhbGl6YWNpw7NuICohKi9cbi8qfSovXG5cblxuLyojYnRuX2FicmlyX2NhamE6OmJlZm9yZSwqL1xuLyojYnRuX251ZXZvX2NpZXJyZV9jYWphOjpiZWZvcmUsKi9cbi8qI2J0bl9udWV2bzo6YmVmb3JlLCovXG4vKiNidG5fcmVtb3ZlX2FsbDo6YmVmb3JlLCovXG4vKiNidG5fZXN0YWRvX2FsbDo6YmVmb3JlLCovXG4vKiNidG5fY2FyZ2FfbWFzaXZhOjpiZWZvcmUsKi9cbi8qI2J0bl9kZXNjYXJnYXJfZXhjZWw6OmJlZm9yZSB7Ki9cbi8qICAgIGZvbnQtc2l6ZTogMTJweDsgISogVGFtYcOxbyBkZWwgw61jb25vICohKi9cbi8qfSovXG5cbiIsIi8qIEVzdGlsb3MgcGFyYSBlbCBjb250ZW5lZG9yIGRlIFdoYXRzQXBwICovXG4ud2hhdHNhcHAtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYm90dG9tOiAyMHB4O1xuICAgIHJpZ2h0OiAxNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyNUQzNjY7IC8qIENvbG9yIGRlIGZvbmRvIGRlIFdoYXRzQXBwICovXG4gICAgcGFkZGluZzogMTBweDtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIHotaW5kZXg6IDI7IC8qIEFzZWd1cmEgcXVlIFdoYXRzQXBwIGVzdMOpIGVuY2ltYSBkZSBUZWxlZ3JhbSAqL1xufVxuXG4vKiBFc3RpbG9zIHBhcmEgZWwgY29udGVuZWRvciBkZSBUZWxlZ3JhbSAqL1xuLnRlbGVncmFtLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJvdHRvbTogNjVweDsgLyogQWp1c3RhIGxhIHBvc2ljacOzbiBwYXJhIHF1ZSBlc3TDqSBkZWJham8gZGUgV2hhdHNBcHAgKi9cbiAgICByaWdodDogMTZweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA4OGNjOyAvKiBDb2xvciBkZSBmb25kbyBkZSBUZWxlZ3JhbSAqL1xuICAgIHBhZGRpbmc6IDEycHg7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICB6LWluZGV4OiAxOyAvKiBBc2VndXJhIHF1ZSBUZWxlZ3JhbSBlc3TDqSBkZWJham8gZGUgV2hhdHNBcHAgKi9cbn1cblxuLyogRXN0aWxvcyBwYXJhIGVsIGVubGFjZSBkZSBXaGF0c0FwcCB5IFRlbGVncmFtICovXG4ud2hhdHNhcHAtbGluaywgLnRlbGVncmFtLWxpbmsge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogI2ZmZjsgLyogQ29sb3IgZGVsIHRleHRvICovXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4vKiBFc3RpbG9zIHBhcmEgZWwgw61jb25vIGRlIFdoYXRzQXBwIHkgVGVsZWdyYW0gKi9cbi53aGF0c2FwcC1pY29uLCAudGVsZWdyYW0taWNvbiB7XG4gICAgZm9udC1zaXplOiAyNHB4OyAvKiBUYW1hw7FvIGRlbCDDrWNvbm8gKi9cbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgQ29sb3I6I2ZmZjtcbn1cblxuLyogRXN0aWxvcyBwYXJhIGVsIHRleHRvIGRlIFdoYXRzQXBwIHkgVGVsZWdyYW0gKi9cbi53aGF0c2FwcC10ZXh0LCAudGVsZWdyYW0tdGV4dCB7XG4gICAgZm9udC1zaXplOjE0cHg7XG59XG5cbi53aGF0c2FwcC10ZXh0e1xuICAgIGNvbG9yOiNmZmYgIWltcG9ydGFudDtcbn1cblxuLyogT2N1bHRhciBsb3MgY29udHJvbGVzIGRlIG7Dum1lcm8gZW4gQ2hyb21lLCBTYWZhcmksIEVkZ2UgeSBPcGVyYSAqL1xuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG59XG5cbi8qIE9jdWx0YXIgbG9zIGNvbnRyb2xlcyBkZSBuw7ptZXJvIGVuIEZpcmVmb3ggKi9cbmlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xuICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xufVxuXG5cbi5lbXByZXNhIHtcbiAgICBmb250LWZhbWlseTogJ0JyYWRsZXkgSGFuZCBJVEMnLCBjdXJzaXZlO1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbn1cblxuLmlkSW5ncmVkaWVudGVzIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1mYW1pbHk6ICdSb2JvdG8gIFRoaW4nLCBjdXJzaXZlO1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbn1cblxuLmlkQ29udGVuaWRvIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1mYW1pbHk6ICdhcmlhbCAgVGhpbicsIGN1cnNpdmU7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuXG59XG5cbi5iYW5uZXJJdGVtIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDUwMHB4O1xufVxuLmJhbm5lckl0ZW0gaW1nIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5pbWctbm9ybWFsaXphZGF7XG4gICAgd2lkdGg6IDM1MHB4O1xuICAgIGhlaWdodDogMjgwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cblxuLmlkUHJlY2lvIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1mYW1pbHk6ICdhcmlhbCAgVGhpbicsIGN1cnNpdmU7XG4gICAgZm9udC1zaXplOiAzNXB4O1xuICAgIGFuaW1hdGlvbjogYmxpbmsgMS41cyBpbmZpbml0ZTtcbn1cblxuQGtleWZyYW1lcyBibGluayB7XG4gICAgMCUsIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgICA1MCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbn0iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/