/*!**********************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/React/Releve/index.css ***!
  \**********************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap);
/*!**************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/app.css ***!
  \**************************************************************************************************************/
html {
    min-height: 100%;
}

body {
    min-height: 100vh;
    background-color: whitesmoke;
    margin: 0 !important;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
}
/*************************BODY*******************************/
.container-login {
    height: 100%;
    margin-top: 18vh;
    text-align: center;
}
a {
    text-decoration: none;
}
/************************************************************/
/************************* NAV ******************************/
.side-nav {
    margin-top: 80px;
}
.wrapper {
    text-align: center;
}
/************************************************************/
/************************BANNER******************************/
.banner {
    position: fixed;
    top: 0;
    width: 100%;
    height: 5em !important;
    background: deepskyblue;
    color: black;
    padding: 2vh 0 0 5vh;
    overflow:hidden;
    z-index: 100;
    /*display: table-cell;*/
    vertical-align: middle;
}
#banner_text {
    font-size: x-large;
    height: auto;
}
/************************************************************/
/*************************BODY*******************************/
.main-container {
    /*margin-top: 65px;*/
    margin-left: 10px;
    padding: 20px;
    height: 100% !important;
    /*background-image: url("../../public/images/Leconome-Gris-light.png");*/
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-attachment: fixed;
    background-size: 40%;
    font-weight: bold;
}

.btn-primary {
    background: #00BFFF !important;
}

.cadre_login {
    background: #00BFFF !important;
    padding: 3px;
    border-radius: 25px;
    width: 50%;
    margin: auto;
}

.cadre_login h1, label {
    color: black;
    font-weight: bold;
}

.cadre_login input {
    width: 150% !important;
}

.btn-green {
    background: #32CD32 !important;
}
/************************************************************/
/*************************Listes*****************************/
.tab_list thead {
    background: dodgerblue;
    color: whitesmoke;
}
.tab_list th{
    width: 100vh;
    border: 1px solid dodgerblue;
    text-align: center;
}
/************************************************************/
/*************************Forms******************************/
form {
    width: 96%;
    margin: auto;
}
/************************************************************/
/*************************Content****************************/
.main-container h2 {
    margin: 15px 0 15px 0;
}
/************************************************************/
/***********************Commandes****************************/
.recapitulatif_commande {
    border-color: #566573;
    padding: 10px;
}
.recapitulatif_commande h3 {
    text-align: center;
}
.liste_categorie_new_commande {
    border-color: forestgreen;
    border-style: ridge;
    margin-bottom: 10px;
    padding: 10px;
}
.liste_categorie_new_commande h3 {
    text-align: center;
}
.liste_produits th {
    padding-right: 5px;
}
.liste_produits td {
    padding-right: 5px;
}
/************************************************************/
/*********************produits recap*************************/
input[type="number"] {
    -webkit-appearance: textfield;
    -moz-appearance: textfield;
    appearance: textfield;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
}

.number-input {
    border: 2px solid #ddd;
    display: inline-flex;
}

.number-input,
.number-input * {
    box-sizing: border-box;
}

.number-input button {
    outline:none;
    -webkit-appearance: none;
    background-color: transparent;
    border: none;
    align-items: center;
    justify-content: center;
    width: 1rem;
    height: 1rem;
    cursor: pointer;
    margin: 0;
    position: relative;
}

.number-input button:before,
.number-input button:after {
    display: inline-block;
    position: absolute;
    content: '';
    width: 1rem;
    height: 2px;
    background-color: #212121;
    transform: translate(-50%, -50%);
}
.number-input button.plus:after {
    transform: translate(-50%, -50%) rotate(90deg);
}

.number-input input[type=number] {
    font-family: sans-serif;
    max-width: 3rem;
    padding: .5rem;
    border: solid #ddd;
    border-width: 0 2px;
    font-size: 1rem;
    height: 1rem;
    text-align: center;
}

.newProduct {
    border: 1px solid #333333;
    margin: 10px 0;
    padding: 5px;
}

/*.dataTables_wrapper {
    z-index: -1;
}*/

/************************************************************/
/************************Releves*****************************/
.frigo {
    background-color: #00BFFF;
    padding: 3vh;
    border-radius: 25px;
}

/********* fieldsets ************/
fieldset {
    margin-bottom: 1em !important;
    border: 2px solid deepskyblue !important;
    padding:1em !important;
    border-radius: 10px;
    background-color: lightblue;
}

legend {
    padding: 1px 10px !important;
    float:none;
    width:auto;
}

.row {
    margin-right: 0 !important;
    margin-left: 0 !important;
}

.font-red {
    color : red !important;
}

.font-grey {
    color : grey;
}

.blocs-superviseur {
    margin-bottom: 1em;
    font-style: italic;
    color: red;
}

.selected {
    background-color: springgreen; /* vert clair bootstrap */ /* vert plus foncé */
    transition: all 0.2s ease-in-out;
}

.text-left-visualisation {
    text-align: left !important;
}

.font-green {
    color: green;
}

.card-hover {
    transition: all 0.3s ease;
    border-radius: 8px;
}

.card-hover:hover {
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1) !important;
}

.line-clamp-2 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.line-clamp-3 {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.left-border-indicator {
    transition: all 0.3s ease;
}

.empty-state {
    padding: 3rem 1rem;
}

/* Dans app.css - ajouter à la fin */

/* Correction pour garantir la visibilité du bouton retour */
.back-btn {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
    z-index: 1000 !important;
}

/* Surcharger les styles conflictuels pour la page login */
body .login-container .back-btn {
    position: absolute !important;
    top: 20px !important;
    left: 20px !important;
}

/*.input-group {
    flex-wrap: nowrap !important;
}

.input-group > .btn,
.input-group > .form-control {
    flex: 0 0 auto;
}*/
/* Style pour les selects dans AG Grid */
.ag-theme-alpine .ag-cell .form-select-sm {
    padding: 0.25rem 2rem 0.25rem 0.5rem;
    font-size: 0.875rem;
    line-height: 1.5;
    border-radius: 0.25rem;
    transition: all 0.15s ease;
}

.ag-theme-alpine .ag-cell .form-select-sm:focus {
    border-color: #86b7fe;
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

.ag-theme-alpine .ag-cell .form-select-sm option {
    color: #212529;
    background-color: white;
}

.ag-theme-alpine .ag-cell .form-select-sm option:hover {
    background-color: #f8f9fa;
}

@media (max-width: 1024px) {
    html {
        font-size: 14px; /* base plus compacte (Bootstrap suit le rem) */
    }
    .main-container {
        margin-left: 0;
        padding: 10px;
    }
    /* Titres un peu moins grands */
    h1, .h1 { font-size: 1.5rem; }
    h2, .h2 { font-size: 1.25rem; }
    h3, .h3 { font-size: 1.1rem; }
    /* Bootstrap: réduire l’“encombrement” */
    .btn {
        padding: 0.25rem 0.5rem;
        font-size: 0.9rem;
    }
    .breadcrumb {
        padding: 0.5rem 0.75rem !important;
        margin-bottom: 0.5rem !important;
    }
    .table > :not(caption) > * > * {
        padding: 0.35rem 0.35rem;
    }
    /* Bannière: éviter qu’elle prenne trop de place */
    #banner_text {
        font-size: 1.1rem;
    }
}

@media (max-width: 640px) {
    html {
        font-size: 13px;
    }
    .main-container {
        padding: 8px;
    }
    .btn {
        padding: 0.22rem 0.45rem;
        font-size: 0.88rem;
    }
}

/* =========================================================
   Site vitrine premium
   ========================================================= */

:root {
    --site-bg: #0b1220;
    --site-surface: rgba(255, 255, 255, 0.08);
    --site-surface-strong: rgba(255, 255, 255, 0.12);
    --site-border: rgba(255, 255, 255, 0.14);
    --site-text: #eaf1ff;
    --site-muted: rgba(234, 241, 255, 0.76);
    --site-accent: #7dd3fc;
    --site-accent-2: #8b5cf6;
    --site-shadow: 0 20px 60px rgba(3, 10, 24, 0.28);
}

body {
    min-height: 100vh;
    background:
            radial-gradient(circle at top left, rgba(125, 211, 252, 0.18), transparent 28%),
            radial-gradient(circle at top right, rgba(139, 92, 246, 0.14), transparent 24%),
            linear-gradient(180deg, #f8fbff 0%, #f3f7fc 100%);
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
    color: #102033;
}

.navbar-site {
    background: rgba(10, 18, 32, 0.78);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.navbar-site .nav-link {
    color: rgba(255, 255, 255, 0.84);
    font-weight: 500;
    letter-spacing: 0.01em;
}

.navbar-site .nav-link:hover,
.navbar-site .nav-link:focus {
    color: #ffffff;
}

.site-logo {
    max-height: 48px;
    width: auto;
}

.hero {
    position: relative;
    overflow: hidden;
    padding: 6rem 0 5rem;
    background:
            linear-gradient(135deg, rgba(10, 18, 32, 0.96), rgba(17, 26, 46, 0.94)),
            radial-gradient(circle at 20% 20%, rgba(125, 211, 252, 0.22), transparent 28%),
            radial-gradient(circle at 80% 0%, rgba(139, 92, 246, 0.18), transparent 26%);
    color: var(--site-text);
}

.hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px);
    background-size: 44px 44px;
    opacity: 0.28;
    pointer-events: none;
}

.hero-title {
    font-size: clamp(2.4rem, 5vw, 4.3rem);
    line-height: 1.03;
    letter-spacing: -0.03em;
    font-weight: 800;
    margin-bottom: 1rem;
}

.hero-subtitle {
    font-size: 1.08rem;
    line-height: 1.8;
    color: var(--site-muted);
    max-width: 60ch;
}

.eyebrow,
.section-tag,
.hero-chip {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    text-transform: uppercase;
    letter-spacing: .14em;
    font-size: .74rem;
    font-weight: 700;
}

.eyebrow,
.section-tag {
    color: var(--site-accent);
    margin-bottom: 1rem;
}

.hero-trial-badge {
    display: inline-flex;
    align-items: center;
    padding: .7rem 1rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.12);
    box-shadow: var(--site-shadow);
    color: #fff;
    font-weight: 600;
}

.btn-site-primary,
.btn-site-outline {
    padding: .85rem 1.25rem;
    border-radius: 999px;
    font-weight: 700;
    letter-spacing: .01em;
    transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease, border-color .18s ease;
}

.btn-site-primary {
    background: linear-gradient(135deg, var(--site-accent), var(--site-accent-2));
    border: 0;
    color: white;
    box-shadow: 0 12px 30px rgba(125, 211, 252, 0.22);
}

.btn-site-primary:hover {
    transform: translateY(-1px);
    color: white;
    box-shadow: 0 16px 36px rgba(125, 211, 252, 0.28);
}

.btn-site-outline {
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.22);
    color: white;
}

.btn-site-outline:hover {
    transform: translateY(-1px);
    color: white;
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(255, 255, 255, 0.32);
}

.hero-visual-wrap {
    position: relative;
    min-height: 520px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.hero-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(2px);
    opacity: .9;
}

.hero-orb-one {
    width: 180px;
    height: 180px;
    background: radial-gradient(circle, rgba(125, 211, 252, 0.45), rgba(125, 211, 252, 0.05));
    top: 18px;
    right: 14px;
}

.hero-orb-two {
    width: 220px;
    height: 220px;
    background: radial-gradient(circle, rgba(139, 92, 246, 0.34), rgba(139, 92, 246, 0.04));
    bottom: 10px;
    left: 4px;
}

.hero-panel,
.card-premium,
.statement-box,
.cta-panel,
.quote-box {
    border: 1px solid var(--site-border);
    box-shadow: var(--site-shadow);
}

.hero-panel {
    position: relative;
    z-index: 1;
    width: min(100%, 460px);
    padding: 1.4rem;
    border-radius: 28px;
    background: linear-gradient(180deg, rgba(255,255,255,0.12), rgba(255,255,255,0.08));
    backdrop-filter: blur(22px);
    -webkit-backdrop-filter: blur(22px);
    color: white;
}

.hero-chip {
    margin-bottom: .85rem;
    color: var(--site-accent);
}

.hero-panel-title {
    font-size: 1.65rem;
    line-height: 1.15;
    font-weight: 800;
    margin-bottom: 1rem;
}

.hero-chips {
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
    margin-bottom: 1rem;
}

.hero-mini-chip {
    padding: .4rem .75rem;
    border-radius: 999px;
    background: rgba(255,255,255,0.1);
    border: 1px solid rgba(255,255,255,0.1);
    font-size: .86rem;
    font-weight: 600;
}

.hero-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: .95rem;
}

.hero-list li {
    padding: .95rem 1rem;
    border-radius: 18px;
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(255,255,255,0.08);
    color: var(--site-muted);
}

.hero-list strong {
    display: block;
    color: #fff;
    margin-bottom: .2rem;
}

.section {
    padding: 5.5rem 0;
}

.section-muted {
    background:
            radial-gradient(circle at 20% 0%, rgba(125, 211, 252, 0.08), transparent 32%),
            linear-gradient(180deg, #ffffff 0%, #f7faff 100%);
}

.section-title {
    font-size: clamp(1.8rem, 3vw, 3rem);
    font-weight: 800;
    letter-spacing: -0.02em;
    margin-bottom: .8rem;
}

.section-intro {
    max-width: 70ch;
    color: #5b6778;
    line-height: 1.8;
}

.statement-box,
.cta-panel,
.quote-box,
.card-premium {
    background: rgba(255, 255, 255, 0.86);
    border-radius: 26px;
    padding: 1.6rem;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.card-premium {
    position: relative;
    height: 100%;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.card-premium:hover {
    transform: translateY(-4px);
    border-color: rgba(125, 211, 252, 0.35);
    box-shadow: 0 22px 50px rgba(13, 28, 46, 0.12);
}

.card-premium h3 {
    font-size: 1.25rem;
    font-weight: 800;
    margin: 1rem 0 .6rem;
    letter-spacing: -0.01em;
}

.card-premium p {
    color: #5b6778;
    line-height: 1.75;
    margin-bottom: 0;
}

.card-visual {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: .5rem;
}

.card-number {
    font-size: .85rem;
    font-weight: 800;
    letter-spacing: .14em;
    color: rgba(15, 23, 42, 0.42);
}

.card-icon-wrap {
    width: 56px;
    height: 56px;
    border-radius: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, rgba(125, 211, 252, 0.16), rgba(139, 92, 246, 0.14));
    color: #0f172a;
}

.benefit-icon-wrap,
.process-icon-wrap {
    margin-bottom: .3rem;
}

.card-svg-icon {
    width: 26px;
    height: 26px;
}

.statement-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: .8rem;
}

.statement-list li {
    position: relative;
    padding-left: 1.4rem;
    color: #415065;
    line-height: 1.65;
}

.statement-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: .7rem;
    width: .55rem;
    height: .55rem;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--site-accent), var(--site-accent-2));
    box-shadow: 0 0 0 4px rgba(125, 211, 252, 0.12);
}

.quote-box blockquote {
    font-size: 1.35rem;
    font-weight: 700;
    line-height: 1.6;
    color: #12213a;
    margin: 0;
}

.quote-signature {
    margin-top: 1rem;
    color: #637086;
    font-weight: 600;
}

.cta-panel {
    background:
            linear-gradient(135deg, rgba(10, 18, 32, 0.98), rgba(22, 33, 57, 0.95)),
            radial-gradient(circle at top left, rgba(125, 211, 252, 0.16), transparent 28%);
    color: white;
    padding: 2.4rem;
}

.cta-panel .section-intro {
    color: rgba(255, 255, 255, 0.78);
}

.cta-panel .section-title {
    color: white;
}

.hero-haccp {
    background:
            linear-gradient(135deg, rgba(8, 25, 36, 0.97), rgba(15, 33, 54, 0.95)),
            radial-gradient(circle at 20% 20%, rgba(56, 189, 248, 0.20), transparent 28%),
            radial-gradient(circle at 80% 0%, rgba(20, 184, 166, 0.16), transparent 26%);
}

@media (max-width: 991.98px) {
    .hero {
        padding: 4.5rem 0 4rem;
    }

    .hero-visual-wrap {
        min-height: auto;
        padding-top: 1rem;
    }

    .hero-panel {
        width: 100%;
    }
}

@media (max-width: 767.98px) {
    .section {
        padding: 4rem 0;
    }

    .statement-box,
    .cta-panel,
    .quote-box,
    .card-premium {
        border-radius: 20px;
        padding: 1.25rem;
    }

    .hero-title {
        font-size: clamp(2rem, 11vw, 3rem);
    }

    .hero-subtitle {
        font-size: 1rem;
    }
}

/*!*******************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/commande.css ***!
  \*******************************************************************************************************************/
.tabs .list {
    padding: 0;
    border-bottom: 1px solid black;
    display: flex;
    list-style: none;
    margin: 0;
}

.tabs .tab {
    border: 1px solid black;
    padding: 10px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    cursor: pointer;
}

.tabs .tab.actif {
    background-color: lightgrey;
    cursor: default;
}

.tabs .contents {
    padding: 10px;
}

.tabs .content {
    display: none;
}

.tabs .content.show {
    display: initial;
}

.sousCategorie {
    margin-bottom: 5px;
}

#sousCategoriesBlock {
    margin-bottom: 10px;
    margin-top: 10px;
}

.recap {
    position: fixed;
    top: 11em !important;
    right: 8em;
    z-index: 10;
}

.visualisation {
    border-left: 1px solid #dee2e6;
    background-color: #f8f9fa;
}

.detail-commande {
    display: flex;
    flex-direction: column;
}

.ag-theme-alpine {
    border-radius: 0.375rem;
    overflow: hidden;
}

.h-75 {
    height: 75% !important;
}

.container-fluid-commande {
    min-height: 100vh;
}

.orders-table-card {
    background: rgba(255, 255, 255, 0.94);
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 24px;
    box-shadow: 0 22px 55px rgba(15, 23, 42, 0.10);
    overflow: hidden;
    backdrop-filter: blur(12px);
}

.orders-table-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 18px 22px;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    background:
            radial-gradient(circle at top left, rgba(8, 117, 225, 0.12), transparent 34%),
            linear-gradient(135deg, #ffffff 0%, #f6faff 100%);
}

.orders-table-header h3 {
    margin: 0;
    color: #111827;
    font-size: 1.08rem;
    font-weight: 900;
    letter-spacing: -0.02em;
}

.orders-table-header p {
    margin: 4px 0 0;
    color: #64748b;
    font-size: 0.78rem;
    font-weight: 600;
}

.orders-count-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: max-content;
    padding: 8px 13px;
    border-radius: 999px;
    background: linear-gradient(135deg, #eaf4ff 0%, #ffffff 100%);
    color: #0875e1;
    border: 1px solid rgba(8, 117, 225, 0.16);
    font-size: 0.76rem;
    font-weight: 900;
    box-shadow: 0 8px 18px rgba(8, 117, 225, 0.08);
}

.orders-toolbar {
    padding: 14px 18px 4px;
    background: rgba(248, 250, 252, 0.68);
}

.orders-search-wrapper {
    position: relative;
    display: flex;
    align-items: center;
    max-width: 520px;
}

.orders-search-icon {
    position: absolute;
    left: 15px;
    color: #0875e1;
    font-size: 0.92rem;
    pointer-events: none;
}

.orders-search-input {
    width: 100%;
    min-height: 42px;
    padding: 10px 44px 10px 42px;
    border: 1px solid rgba(8, 117, 225, 0.16);
    border-radius: 999px;
    background:
            linear-gradient(135deg, rgba(255, 255, 255, 0.96) 0%, rgba(246, 250, 255, 0.96) 100%);
    color: #111827;
    font-size: 0.84rem;
    font-weight: 700;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.055);
    transition:
            border-color 0.18s ease,
            box-shadow 0.18s ease,
            background 0.18s ease;
}

.orders-search-input::placeholder {
    color: #94a3b8;
    font-weight: 600;
}

.orders-search-input:focus {
    outline: none;
    border-color: #0875e1;
    background: #ffffff;
    box-shadow:
            0 0 0 4px rgba(8, 117, 225, 0.12),
            0 12px 24px rgba(15, 23, 42, 0.08);
}

.orders-search-clear {
    position: absolute;
    right: 9px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 27px;
    height: 27px;
    border: none;
    border-radius: 999px;
    background: rgba(15, 23, 42, 0.06);
    color: #64748b;
    cursor: pointer;
    transition:
            background 0.18s ease,
            color 0.18s ease,
            transform 0.18s ease;
}

.orders-search-clear:hover {
    background: rgba(8, 117, 225, 0.12);
    color: #0875e1;
    transform: scale(1.05);
}

.orders-table-responsive {
    overflow-x: auto;
    padding: 10px 12px 14px;
}

.orders-table {
    width: 100%;
    min-width: 920px;
    border-collapse: separate;
    border-spacing: 0 9px;
}

.orders-table thead th {
    padding: 10px 14px;
    color: #64748b;
    font-size: 0.70rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.055em;
    border: none;
    background: transparent;
    white-space: nowrap;
}

.orders-sort-button {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 0;
    border: none;
    background: transparent;
    color: inherit;
    font: inherit;
    font-weight: 900;
    text-transform: inherit;
    letter-spacing: inherit;
    cursor: pointer;
}

.orders-sort-button span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    border-radius: 999px;
    background: rgba(8, 117, 225, 0.08);
    color: #0875e1;
    font-size: 0.68rem;
    line-height: 1;
}

.orders-sort-button:hover {
    color: #0875e1;
}

.orders-table tbody tr {
    background: #ffffff;
    border-radius: 18px;
    box-shadow: 0 5px 16px rgba(15, 23, 42, 0.055);
    transition:
            transform 0.18s ease,
            box-shadow 0.18s ease,
            background 0.18s ease;
    cursor: pointer;
}

.orders-table tbody tr:hover {
    transform: translateY(-2px);
    background: #f9fcff;
    box-shadow: 0 14px 30px rgba(8, 117, 225, 0.13);
}

.orders-table tbody tr.is-selected {
    background: linear-gradient(135deg, #dff0ff 0%, #f2f8ff 100%);
    box-shadow:
            inset 4px 0 0 #0875e1,
            0 14px 32px rgba(8, 117, 225, 0.17);
}

.orders-table tbody td {
    padding: 14px;
    border: none;
    vertical-align: middle;
    color: #111827;
    font-size: 0.86rem;
}

.orders-table tbody td:first-child {
    width: 44px;
    border-top-left-radius: 18px;
    border-bottom-left-radius: 18px;
}

.orders-table tbody td:last-child {
    border-top-right-radius: 18px;
    border-bottom-right-radius: 18px;
}

.order-selection-dot {
    width: 18px;
    height: 18px;
    border: 2px solid rgba(8, 117, 225, 0.25);
    border-radius: 999px;
    background: #ffffff;
    box-shadow: inset 0 0 0 3px #ffffff;
    cursor: pointer;
    transition:
            border-color 0.18s ease,
            background 0.18s ease,
            transform 0.18s ease;
}

.order-selection-dot:hover,
.order-selection-dot.is-active {
    border-color: #0875e1;
    background: #0875e1;
    transform: scale(1.08);
}

.order-detail-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid rgba(8, 117, 225, 0.18);
    border-radius: 999px;
    background:
            radial-gradient(circle at top left, rgba(8, 117, 225, 0.16), transparent 50%),
            #ffffff;
    color: #0875e1;
    cursor: pointer;
    box-shadow: 0 7px 16px rgba(8, 117, 225, 0.10);
    transition:
            transform 0.18s ease,
            box-shadow 0.18s ease,
            background 0.18s ease,
            color 0.18s ease,
            border-color 0.18s ease;
}

.order-detail-button:hover {
    transform: translateY(-1px) scale(1.04);
    border-color: rgba(8, 117, 225, 0.38);
    background: linear-gradient(135deg, #0875e1 0%, #0b8cff 100%);
    color: #ffffff;
    box-shadow: 0 12px 25px rgba(8, 117, 225, 0.22);
}

.order-date-main,
.order-supplier-main,
.order-amount-main {
    display: block;
    color: #111827;
    font-weight: 900;
    line-height: 1.2;
}

.order-date-sub {
    display: block;
    margin-top: 4px;
    color: #64748b;
    font-size: 0.72rem;
    font-weight: 700;
}

.order-amount-main {
    color: #0875e1;
    font-size: 0.98rem;
    white-space: nowrap;
}

.order-suppliers-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.order-supplier-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 8px 10px;
    border: 1px solid rgba(15, 23, 42, 0.06);
    border-radius: 15px;
    background: rgba(248, 250, 252, 0.82);
}

.order-status-dot-label {
    position: relative;
    display: inline-flex;
    align-items: center;
    margin-top: 4px;
    padding-left: 14px;
    color: #64748b;
    font-size: 0.68rem;
    font-weight: 800;
}

.order-status-dot-label::before {
    content: "";
    position: absolute;
    left: 0;
    width: 7px;
    height: 7px;
    border-radius: 999px;
    background: currentColor;
}

.order-status-select {
    min-width: 182px;
    appearance: none;
    border: 1px solid rgba(8, 117, 225, 0.18);
    border-radius: 999px;
    padding: 8px 34px 8px 13px;
    color: #0369a1;
    font-size: 0.74rem;
    font-weight: 900;
    cursor: pointer;
    background:
            linear-gradient(45deg, transparent 50%, currentColor 50%) right 15px center / 6px 6px no-repeat,
            linear-gradient(135deg, #eff6ff 0%, #ffffff 100%);
    box-shadow: 0 6px 15px rgba(15, 23, 42, 0.07);
    transition:
            box-shadow 0.18s ease,
            transform 0.18s ease,
            border-color 0.18s ease;
}

.order-status-select:hover:not(:disabled) {
    transform: translateY(-1px);
    border-color: rgba(8, 117, 225, 0.38);
    box-shadow: 0 10px 23px rgba(15, 23, 42, 0.11);
}

.order-status-select:focus {
    outline: none;
    border-color: #0875e1;
    box-shadow: 0 0 0 4px rgba(8, 117, 225, 0.14);
}

.order-status-select:disabled {
    cursor: not-allowed;
    opacity: 0.86;
}

.order-status-select.status-received,
.order-status-dot-label.status-received,
.order-global-status.status-received {
    color: #047857;
}

.order-status-select.status-received {
    border-color: rgba(4, 120, 87, 0.18);
    background:
            linear-gradient(45deg, transparent 50%, currentColor 50%) right 15px center / 6px 6px no-repeat,
            linear-gradient(135deg, #ecfdf5 0%, #ffffff 100%);
}

.order-status-select.status-partial,
.order-status-dot-label.status-partial,
.order-global-status.status-partial {
    color: #b45309;
}

.order-status-select.status-partial {
    border-color: rgba(180, 83, 9, 0.20);
    background:
            linear-gradient(45deg, transparent 50%, currentColor 50%) right 15px center / 6px 6px no-repeat,
            linear-gradient(135deg, #fffbeb 0%, #ffffff 100%);
}

.order-status-select.status-pending,
.order-status-dot-label.status-pending,
.order-global-status.status-pending {
    color: #0369a1;
}

.order-status-select.status-pending {
    border-color: rgba(3, 105, 161, 0.20);
    background:
            linear-gradient(45deg, transparent 50%, currentColor 50%) right 15px center / 6px 6px no-repeat,
            linear-gradient(135deg, #eff6ff 0%, #ffffff 100%);
}

.order-status-select.status-treated,
.order-status-dot-label.status-treated,
.order-global-status.status-treated {
    color: #4338ca;
}

.order-status-select.status-treated {
    border-color: rgba(67, 56, 202, 0.20);
    background:
            linear-gradient(45deg, transparent 50%, currentColor 50%) right 15px center / 6px 6px no-repeat,
            linear-gradient(135deg, #eef2ff 0%, #ffffff 100%);
}

.order-global-status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 110px;
    padding: 7px 12px;
    border-radius: 999px;
    background: #ffffff;
    box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.08);
    font-size: 0.72rem;
    font-weight: 900;
    white-space: nowrap;
}

.order-global-status::before {
    content: "";
    width: 7px;
    height: 7px;
    margin-right: 7px;
    border-radius: 999px;
    background: currentColor;
    filter: brightness(0.8);
}

.orders-empty-state {
    padding: 28px;
    color: #64748b;
    text-align: center;
    font-weight: 700;
}

.orders-pagination {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 14px 4px 2px;
}

.orders-pagination-info {
    color: #64748b;
    font-size: 0.78rem;
    font-weight: 700;
}

.orders-pagination-info strong {
    color: #111827;
    font-weight: 900;
}

.orders-pagination-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    flex-wrap: wrap;
}

.orders-page-size {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin: 0;
    color: #64748b;
    font-size: 0.76rem;
    font-weight: 800;
}

.orders-page-size select {
    min-height: 34px;
    padding: 6px 28px 6px 10px;
    border: 1px solid rgba(8, 117, 225, 0.16);
    border-radius: 999px;
    background: #ffffff;
    color: #111827;
    font-size: 0.78rem;
    font-weight: 900;
    cursor: pointer;
    box-shadow: 0 5px 13px rgba(15, 23, 42, 0.055);
}

.orders-page-size select:focus {
    outline: none;
    border-color: #0875e1;
    box-shadow: 0 0 0 4px rgba(8, 117, 225, 0.12);
}

.orders-page-button,
.orders-page-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    border: 1px solid rgba(8, 117, 225, 0.14);
    border-radius: 999px;
    background: #ffffff;
    color: #334155;
    font-size: 0.76rem;
    font-weight: 900;
    cursor: pointer;
    box-shadow: 0 5px 13px rgba(15, 23, 42, 0.055);
    transition:
            transform 0.18s ease,
            box-shadow 0.18s ease,
            color 0.18s ease,
            border-color 0.18s ease,
            background 0.18s ease;
}

.orders-page-button {
    gap: 6px;
    padding: 7px 12px;
}

.orders-page-number {
    width: 34px;
    padding: 0;
}

.orders-page-button:hover:not(:disabled),
.orders-page-number:hover:not(.is-active) {
    transform: translateY(-1px);
    border-color: rgba(8, 117, 225, 0.35);
    color: #0875e1;
    box-shadow: 0 9px 20px rgba(8, 117, 225, 0.12);
}

.orders-page-button:disabled {
    cursor: not-allowed;
    opacity: 0.45;
    box-shadow: none;
}

.orders-page-number.is-active {
    border-color: #0875e1;
    background: linear-gradient(135deg, #0875e1 0%, #0b8cff 100%);
    color: #ffffff;
    box-shadow: 0 10px 22px rgba(8, 117, 225, 0.24);
}

.orders-page-numbers {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.orders-page-ellipsis {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    color: #94a3b8;
    font-size: 0.84rem;
    font-weight: 900;
}

.commande-detail-modal {
    position: fixed;
    inset: 0;
    z-index: 1080;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 26px;
}

.commande-detail-modal-backdrop {
    position: absolute;
    inset: 0;
    background:
            radial-gradient(circle at top, rgba(8, 117, 225, 0.24), transparent 38%),
            rgba(15, 23, 42, 0.66);
    backdrop-filter: blur(8px);
}

.commande-detail-modal-dialog {
    position: relative;
    z-index: 1;
    width: min(1280px, 100%);
    max-height: calc(100vh - 52px);
    animation: commandeModalIn 0.18s ease-out;
}

.commande-detail-modal-content {
    display: flex;
    flex-direction: column;
    max-height: calc(100vh - 52px);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.38);
    border-radius: 26px;
    background: rgba(255, 255, 255, 0.97);
    box-shadow: 0 28px 80px rgba(15, 23, 42, 0.34);
}

.commande-detail-modal-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 18px 22px;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    background:
            radial-gradient(circle at top left, rgba(8, 117, 225, 0.13), transparent 34%),
            linear-gradient(135deg, #ffffff 0%, #f6faff 100%);
}

.commande-detail-modal-kicker {
    display: block;
    margin-bottom: 3px;
    color: #0875e1;
    font-size: 0.72rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.07em;
}

.commande-detail-modal-header h3 {
    margin: 0;
    color: #111827;
    font-size: 1.22rem;
    font-weight: 950;
    letter-spacing: -0.025em;
}

.commande-detail-modal-close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border: none;
    border-radius: 999px;
    background: rgba(15, 23, 42, 0.06);
    color: #475569;
    cursor: pointer;
    transition:
            transform 0.18s ease,
            background 0.18s ease,
            color 0.18s ease;
}

.commande-detail-modal-close:hover {
    transform: rotate(90deg);
    background: rgba(220, 38, 38, 0.10);
    color: #dc2626;
}

.commande-detail-modal-body {
    padding: 18px;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: rgba(8, 117, 225, 0.42) rgba(226, 232, 240, 0.9);
}

.commande-detail-modal-body::-webkit-scrollbar {
    width: 9px;
}

.commande-detail-modal-body::-webkit-scrollbar-track {
    background: rgba(226, 232, 240, 0.9);
    border-radius: 999px;
}

.commande-detail-modal-body::-webkit-scrollbar-thumb {
    background: rgba(8, 117, 225, 0.42);
    border-radius: 999px;
}

.commande-detail-modal-body::-webkit-scrollbar-thumb:hover {
    background: rgba(8, 117, 225, 0.62);
}

.commande-detail-modal-body .detail-commande {
    height: auto !important;
    min-height: 0;
}

.commande-detail-modal-body .commande-header {
    margin-bottom: 16px !important;
}

.commande-detail-modal-body .elements-commande {
    overflow: visible;
    max-height: none;
    min-height: 0;
    font-size: 0.86rem;
    line-height: 1.45;
}

.commande-detail-modal-body .elements-commande .table {
    font-size: 0.84rem;
    line-height: 1.45;
}

.commande-detail-modal-body .elements-commande .table th {
    padding: 9px 8px;
    color: #64748b;
    font-size: 0.70rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    white-space: nowrap;
}

.commande-detail-modal-body .elements-commande .table td {
    padding: 9px 8px;
    vertical-align: top;
    overflow-wrap: anywhere;
}

.commande-detail-modal-body .elements-commande .bg-light {
    background:
            radial-gradient(circle at top left, rgba(8, 117, 225, 0.08), transparent 42%),
            #f8fafc !important;
    border: 1px solid rgba(15, 23, 42, 0.06);
}

body.modal-open {
    overflow: hidden;
}

@keyframes commandeModalIn {
    from {
        opacity: 0;
        transform: translateY(12px) scale(0.985);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@media (max-width: 992px) {
    .container-fluid-commande {
        height: auto;
    }

    .orders-table-card {
        border-radius: 20px;
    }

    .orders-table-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .orders-table {
        min-width: 820px;
    }

    .order-supplier-row {
        align-items: flex-start;
        flex-direction: column;
    }

    .order-status-select {
        width: 100%;
        min-width: 0;
    }

    .orders-pagination {
        align-items: flex-start;
        flex-direction: column;
    }

    .orders-pagination-actions {
        justify-content: flex-start;
        width: 100%;
    }
}

@media (max-width: 768px) {
    .orders-toolbar {
        padding: 12px 14px 2px;
    }

    .orders-search-wrapper {
        max-width: none;
    }

    .orders-search-input {
        font-size: 0.78rem;
    }

    .commande-detail-modal {
        padding: 12px;
    }

    .commande-detail-modal-dialog {
        max-height: calc(100vh - 24px);
    }

    .commande-detail-modal-content {
        max-height: calc(100vh - 24px);
        border-radius: 20px;
    }

    .commande-detail-modal-header {
        padding: 15px 16px;
    }

    .commande-detail-modal-header h3 {
        font-size: 1.02rem;
    }

    .commande-detail-modal-body {
        padding: 12px;
    }

    .commande-detail-modal-body .elements-commande .table {
        font-size: 0.78rem;
    }
}

@media (max-width: 576px) {
    .orders-page-numbers {
        order: 3;
        width: 100%;
        flex-wrap: wrap;
    }

    .orders-page-button {
        flex: 1;
    }
}

.orders-summary-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(160px, 1fr));
    gap: 14px;
    margin-bottom: 18px;
}

.orders-summary-card {
    display: flex;
    align-items: center;
    gap: 13px;
    min-height: 82px;
    padding: 15px 16px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 22px;
    background:
            radial-gradient(circle at top left, rgba(8, 117, 225, 0.10), transparent 38%),
            rgba(255, 255, 255, 0.94);
    box-shadow: 0 14px 34px rgba(15, 23, 42, 0.075);
    cursor: pointer;
    text-align: left;
    transition:
            transform 0.18s ease,
            box-shadow 0.18s ease,
            border-color 0.18s ease,
            background 0.18s ease;
}

.orders-summary-card:hover,
.orders-summary-card.is-active {
    transform: translateY(-2px);
    border-color: rgba(8, 117, 225, 0.30);
    box-shadow: 0 18px 40px rgba(8, 117, 225, 0.14);
}

.orders-summary-card.is-active {
    background:
            radial-gradient(circle at top left, rgba(8, 117, 225, 0.16), transparent 40%),
            linear-gradient(135deg, #ffffff 0%, #f4f9ff 100%);
}

.orders-summary-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    border-radius: 16px;
    font-size: 1.1rem;
}

.orders-summary-icon.summary-total {
    color: #0875e1;
    background: #eaf4ff;
}

.orders-summary-icon.summary-pending {
    color: #0369a1;
    background: #eff6ff;
}

.orders-summary-icon.summary-partial {
    color: #b45309;
    background: #fffbeb;
}

.orders-summary-icon.summary-finalized {
    color: #047857;
    background: #ecfdf5;
}

.orders-summary-card strong {
    display: block;
    color: #111827;
    font-size: 1.32rem;
    font-weight: 950;
    line-height: 1;
}

.orders-summary-card small {
    display: block;
    margin-top: 5px;
    color: #64748b;
    font-size: 0.75rem;
    font-weight: 800;
}

.orders-toolbar {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.orders-supplier-search-wrapper {
    max-width: 360px;
}

.orders-reset-filters {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 42px;
    padding: 9px 13px;
    border: 1px solid rgba(15, 23, 42, 0.10);
    border-radius: 999px;
    background: #ffffff;
    color: #64748b;
    font-size: 0.78rem;
    font-weight: 900;
    cursor: pointer;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.055);
    transition:
            transform 0.18s ease,
            color 0.18s ease,
            border-color 0.18s ease,
            box-shadow 0.18s ease;
}

.orders-reset-filters:hover {
    transform: translateY(-1px);
    color: #0875e1;
    border-color: rgba(8, 117, 225, 0.24);
    box-shadow: 0 12px 24px rgba(8, 117, 225, 0.10);
}

.orders-toast {
    position: fixed;
    top: 82px;
    right: 24px;
    z-index: 1110;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    max-width: min(420px, calc(100vw - 32px));
    padding: 13px 16px;
    border-radius: 18px;
    background: #ffffff;
    color: #111827;
    font-size: 0.84rem;
    font-weight: 800;
    box-shadow: 0 22px 50px rgba(15, 23, 42, 0.22);
    animation: ordersToastIn 0.22s ease-out;
}

.orders-toast-success {
    border: 1px solid rgba(4, 120, 87, 0.16);
}

.orders-toast-danger {
    border: 1px solid rgba(220, 38, 38, 0.16);
}

.orders-toast-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    flex: 0 0 26px;
    border-radius: 999px;
}

.orders-toast-success .orders-toast-icon {
    color: #047857;
    background: #ecfdf5;
}

.orders-toast-danger .orders-toast-icon {
    color: #dc2626;
    background: #fef2f2;
}

.orders-table tbody tr.is-updated {
    animation: orderRowUpdated 1.35s ease-out;
}

@keyframes ordersToastIn {
    from {
        opacity: 0;
        transform: translateY(-8px) scale(0.98);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@keyframes orderRowUpdated {
    0% {
        box-shadow:
                inset 4px 0 0 #22c55e,
                0 0 0 0 rgba(34, 197, 94, 0.34),
                0 14px 32px rgba(34, 197, 94, 0.18);
        background: #ecfdf5;
    }

    100% {
        box-shadow: 0 5px 16px rgba(15, 23, 42, 0.055);
        background: #ffffff;
    }
}

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

    .orders-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    .orders-search-wrapper,
    .orders-supplier-search-wrapper {
        max-width: none;
        width: 100%;
    }

    .orders-reset-filters {
        justify-content: center;
        width: fit-content;
    }
}

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

    .orders-toast {
        top: 72px;
        right: 12px;
        left: 12px;
        max-width: none;
    }
}

.container-fluid-avoir {
    min-height: 100vh;
}

.avoirs-table-card {
    border-radius: 24px;
}

.avoirs-table-header {
    background:
            radial-gradient(circle at top left, rgba(16, 185, 129, 0.12), transparent 34%),
            linear-gradient(135deg, #ffffff 0%, #f6fffb 100%);
}

.avoirs-table {
    min-width: 980px;
}

.avoir-detail-button {
    color: #059669;
    border-color: rgba(5, 150, 105, 0.18);
    box-shadow: 0 7px 16px rgba(5, 150, 105, 0.10);
}

.avoir-detail-button:hover {
    border-color: rgba(5, 150, 105, 0.38);
    background: linear-gradient(135deg, #059669 0%, #10b981 100%);
    color: #ffffff;
    box-shadow: 0 12px 25px rgba(5, 150, 105, 0.22);
}

.avoir-status-select.status-treated {
    color: #047857;
    border-color: rgba(4, 120, 87, 0.18);
    background:
            linear-gradient(45deg, transparent 50%, currentColor 50%) right 15px center / 6px 6px no-repeat,
            linear-gradient(135deg, #ecfdf5 0%, #ffffff 100%);
}

.avoir-status-select.status-pending {
    color: #b45309;
    border-color: rgba(180, 83, 9, 0.20);
    background:
            linear-gradient(45deg, transparent 50%, currentColor 50%) right 15px center / 6px 6px no-repeat,
            linear-gradient(135deg, #fffbeb 0%, #ffffff 100%);
}

.avoir-ref-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    max-width: 180px;
    padding: 7px 11px;
    border-radius: 999px;
    background: #f8fafc;
    color: #334155;
    border: 1px solid rgba(15, 23, 42, 0.08);
    font-size: 0.76rem;
    font-weight: 900;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.avoir-detail-modal-header {
    background:
            radial-gradient(circle at top left, rgba(16, 185, 129, 0.14), transparent 34%),
            linear-gradient(135deg, #ffffff 0%, #f6fffb 100%);
}

.avoir-detail-modal-header .commande-detail-modal-kicker {
    color: #059669;
}

.avoir-detail-modal-body .detail-avoir {
    height: auto !important;
}

.avoir-header {
    background:
            radial-gradient(circle at top left, rgba(255, 255, 255, 0.20), transparent 34%),
            linear-gradient(135deg, #059669 0%, #10b981 100%) !important;
    border: none;
    box-shadow: 0 14px 30px rgba(5, 150, 105, 0.18);
}

.avoir-header h4 {
    font-size: 1.1rem;
    font-weight: 950;
}

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

.avoir-detail-card {
    padding: 14px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 18px;
    background:
            radial-gradient(circle at top left, rgba(16, 185, 129, 0.07), transparent 42%),
            #ffffff;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06);
}

.avoir-detail-card-title {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #64748b;
    font-size: 0.72rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.avoir-detail-card-title i {
    color: #059669;
}

.avoir-detail-card-value {
    margin-top: 8px;
    color: #111827;
    font-size: 0.95rem;
    font-weight: 900;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.avoir-detail-section {
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 20px;
    background: #ffffff;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06);
    overflow: hidden;
}

.avoir-detail-section-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 13px 15px;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    background: #f8fafc;
}

.avoir-detail-section-header h6 {
    margin: 0;
    color: #111827;
    font-size: 0.9rem;
    font-weight: 950;
}

.avoir-detail-section-header span {
    display: inline-flex;
    align-items: center;
    padding: 6px 10px;
    border-radius: 999px;
    background: #ecfdf5;
    color: #047857;
    font-size: 0.72rem;
    font-weight: 900;
}

.avoir-description-box {
    min-height: 110px;
    padding: 15px;
    color: #334155;
    font-size: 0.88rem;
    font-weight: 600;
    line-height: 1.55;
    white-space: pre-wrap;
}

.orders-summary-card.is-readonly {
    cursor: default;
}

.orders-summary-card.is-readonly:hover {
    transform: none;
}

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

    .avoirs-table {
        min-width: 900px;
    }
}

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

    .avoir-detail-section-header {
        align-items: flex-start;
        flex-direction: column;
    }
}

.stock-page {
    padding-bottom: 40px;
}

.stock-hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 22px;
    padding: 20px 22px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 24px;
    background:
            radial-gradient(circle at top left, rgba(8, 117, 225, 0.13), transparent 34%),
            linear-gradient(135deg, rgba(255,255,255,0.96) 0%, rgba(246,250,255,0.96) 100%);
    box-shadow: 0 18px 45px rgba(15, 23, 42, 0.08);
}

.stock-hero h1 {
    margin: 0;
    color: #111827;
    font-weight: 950;
    letter-spacing: -0.025em;
}

.stock-hero p {
    margin: 5px 0 0;
    color: #64748b;
    font-size: 0.88rem;
    font-weight: 600;
}

.stock-page .card {
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    border-radius: 24px !important;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 22px 55px rgba(15, 23, 42, 0.10) !important;
    backdrop-filter: blur(12px);
}

.stock-page .card-header {
    background:
            radial-gradient(circle at top left, rgba(8, 117, 225, 0.10), transparent 34%),
            linear-gradient(135deg, #ffffff 0%, #f6faff 100%) !important;
}

.stock-page .nav-pills {
    border: 1px solid rgba(15, 23, 42, 0.07);
    border-radius: 18px !important;
    background: rgba(248, 250, 252, 0.9) !important;
}

.stock-page .nav-pills .nav-link {
    display: inline-flex;
    align-items: center;
    border-radius: 14px !important;
    font-weight: 900;
    font-size: 0.82rem;
}

.stock-page .nav-pills .nav-link.active {
    background: linear-gradient(135deg, #0875e1 0%, #0b8cff 100%) !important;
    box-shadow: 0 10px 22px rgba(8, 117, 225, 0.22) !important;
}

.stock-page .btn {
    font-weight: 850;
}

.stock-page .btn-primary {
    border: none;
    background: linear-gradient(135deg, #0875e1 0%, #0b8cff 100%);
    box-shadow: 0 12px 24px rgba(8, 117, 225, 0.18);
}

.stock-page .btn-outline-secondary,
.stock-page .btn-outline-primary {
    border-radius: 999px;
}

.stock-page .list-group {
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    border-radius: 20px !important;
    box-shadow: 0 14px 30px rgba(15, 23, 42, 0.06) !important;
}

.stock-page .list-group-item {
    font-size: 0.82rem;
    font-weight: 800;
}

.stock-page .list-group-item.bg-primary {
    background: linear-gradient(135deg, #0875e1 0%, #0b8cff 100%) !important;
}

.stock-page .table-responsive {
    border: 1px solid rgba(15, 23, 42, 0.07);
    border-radius: 20px;
    background: #ffffff;
    box-shadow: 0 14px 30px rgba(15, 23, 42, 0.06);
    padding: 10px;
}

.stock-page table.table {
    margin-bottom: 0;
    font-size: 0.84rem;
}

.stock-page table.table thead {
    color: #64748b;
    font-size: 0.70rem;
    letter-spacing: 0.04em;
}

.stock-page table.table th {
    padding: 10px 12px;
    white-space: nowrap;
}

.stock-page table.table td {
    padding: 10px 12px;
    vertical-align: middle;
}

.stock-page table.table tbody tr {
    transition: background 0.18s ease, transform 0.18s ease;
}

.stock-page table.table tbody tr:hover {
    background: #f9fcff;
}

.stock-page .input-group {
    border-color: rgba(8, 117, 225, 0.14) !important;
    border-radius: 999px !important;
}

.stock-page .input-group .btn,
.stock-page .input-group .form-control {
    font-size: 0.80rem;
}

.stock-page .alert {
    border: none;
    border-radius: 18px !important;
    font-weight: 800;
}

@media (max-width: 768px) {
    .stock-hero {
        align-items: flex-start;
        flex-direction: column;
    }

    .stock-page .card-header .d-flex {
        align-items: stretch !important;
    }

    .stock-page .nav-pills {
        width: 100%;
        overflow-x: auto;
        flex-wrap: nowrap;
    }
}

.app-page-hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin: 18px 0 22px;
    padding: 20px 22px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 24px;
    background:
            radial-gradient(circle at top left, rgba(8, 117, 225, 0.13), transparent 34%),
            linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(246, 250, 255, 0.98) 100%);
    box-shadow: 0 18px 45px rgba(15, 23, 42, 0.08);
    backdrop-filter: blur(12px);
}

.app-page-hero-content {
    display: flex;
    align-items: center;
    gap: 15px;
    min-width: 0;
}

.app-page-hero-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 54px;
    height: 54px;
    flex: 0 0 54px;
    border-radius: 18px;
    background:
            radial-gradient(circle at top left, rgba(255, 255, 255, 0.34), transparent 45%),
            linear-gradient(135deg, #0875e1 0%, #0b8cff 100%);
    color: #ffffff;
    box-shadow: 0 14px 28px rgba(8, 117, 225, 0.24);
}

.app-page-hero-icon i {
    color: #ffffff;
    font-size: 1.45rem;
}

.app-page-hero-kicker {
    margin-bottom: 3px;
    color: #0875e1;
    font-size: 0.72rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.app-page-hero h1 {
    margin: 0;
    color: #111827;
    font-size: 1.55rem;
    font-weight: 950;
    letter-spacing: -0.035em;
    line-height: 1.15;
}

.app-page-hero p {
    margin: 5px 0 0;
    color: #64748b;
    font-size: 0.88rem;
    font-weight: 650;
}

.app-page-hero-actions {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex-wrap: wrap;
}

.app-page-hero-actions .btn {
    border-radius: 999px;
    font-size: 0.84rem;
    font-weight: 900;
    padding: 10px 15px;
}

.app-page-hero-actions .btn-primary {
    border: none;
    background: linear-gradient(135deg, #0875e1 0%, #0b8cff 100%);
    box-shadow: 0 12px 24px rgba(8, 117, 225, 0.18);
}

.app-page-hero-success {
    background:
            radial-gradient(circle at top left, rgba(16, 185, 129, 0.14), transparent 34%),
            linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(240, 253, 250, 0.98) 100%);
}

.app-page-hero-success .app-page-hero-icon {
    background:
            radial-gradient(circle at top left, rgba(255, 255, 255, 0.34), transparent 45%),
            linear-gradient(135deg, #059669 0%, #10b981 100%);
    box-shadow: 0 14px 28px rgba(5, 150, 105, 0.24);
}

.app-page-hero-success .app-page-hero-kicker {
    color: #059669;
}

.app-page-hero-warning {
    background:
            radial-gradient(circle at top left, rgba(245, 158, 11, 0.16), transparent 34%),
            linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(255, 251, 235, 0.98) 100%);
}

.app-page-hero-warning .app-page-hero-icon {
    background:
            radial-gradient(circle at top left, rgba(255, 255, 255, 0.34), transparent 45%),
            linear-gradient(135deg, #d97706 0%, #f59e0b 100%);
    box-shadow: 0 14px 28px rgba(245, 158, 11, 0.24);
}

.app-page-hero-warning .app-page-hero-kicker {
    color: #d97706;
}

.app-page-hero-purple {
    background:
            radial-gradient(circle at top left, rgba(168, 85, 247, 0.14), transparent 34%),
            linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(250, 245, 255, 0.98) 100%);
}

.app-page-hero-purple .app-page-hero-icon {
    background:
            radial-gradient(circle at top left, rgba(255, 255, 255, 0.34), transparent 45%),
            linear-gradient(135deg, #7c3aed 0%, #a855f7 100%);
    box-shadow: 0 14px 28px rgba(124, 58, 237, 0.24);
}

.app-page-hero-purple .app-page-hero-kicker {
    color: #7c3aed;
}

.app-page-hero-cyan {
    background:
            radial-gradient(circle at top left, rgba(14, 165, 233, 0.15), transparent 34%),
            linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(240, 249, 255, 0.98) 100%);
}

.app-page-hero-cyan .app-page-hero-icon {
    background:
            radial-gradient(circle at top left, rgba(255, 255, 255, 0.34), transparent 45%),
            linear-gradient(135deg, #0284c7 0%, #0ea5e9 100%);
    box-shadow: 0 14px 28px rgba(14, 165, 233, 0.24);
}

.app-page-hero-cyan .app-page-hero-kicker {
    color: #0284c7;
}

@media (max-width: 768px) {
    .app-page-hero {
        align-items: flex-start;
        flex-direction: column;
        padding: 16px;
        border-radius: 20px;
    }

    .app-page-hero-content {
        align-items: flex-start;
    }

    .app-page-hero-icon {
        width: 46px;
        height: 46px;
        flex-basis: 46px;
        border-radius: 16px;
    }

    .app-page-hero h1 {
        font-size: 1.28rem;
    }

    .app-page-hero-actions {
        width: 100%;
        justify-content: flex-start;
    }

    .app-page-hero-actions .btn {
        width: 100%;
        justify-content: center;
    }
}

.stock-dashboard {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.stock-summary-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(170px, 1fr));
    gap: 14px;
}

.stock-summary-card {
    display: flex;
    align-items: center;
    gap: 13px;
    min-height: 86px;
    padding: 15px 16px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 22px;
    background:
            radial-gradient(circle at top left, rgba(8, 117, 225, 0.10), transparent 38%),
            rgba(255, 255, 255, 0.94);
    box-shadow: 0 14px 34px rgba(15, 23, 42, 0.075);
    text-align: left;
    cursor: pointer;
    transition:
            transform 0.18s ease,
            box-shadow 0.18s ease,
            border-color 0.18s ease,
            background 0.18s ease;
}

.stock-summary-card:hover,
.stock-summary-card.is-active {
    transform: translateY(-2px);
    border-color: rgba(8, 117, 225, 0.30);
    box-shadow: 0 18px 40px rgba(8, 117, 225, 0.14);
}

.stock-summary-card.is-active {
    background:
            radial-gradient(circle at top left, rgba(8, 117, 225, 0.16), transparent 40%),
            linear-gradient(135deg, #ffffff 0%, #f4f9ff 100%);
}

.stock-summary-card.stock-summary-readonly {
    cursor: default;
}

.stock-summary-card.stock-summary-readonly:hover {
    transform: none;
}

.stock-summary-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    border-radius: 16px;
    font-size: 1.1rem;
}

.stock-summary-food {
    color: #047857;
    background: #ecfdf5;
}

.stock-summary-drink {
    color: #0369a1;
    background: #eff6ff;
}

.stock-summary-nm {
    color: #7c3aed;
    background: #f5f3ff;
}

.stock-summary-total {
    color: #b45309;
    background: #fffbeb;
}

.stock-summary-card strong {
    display: block;
    color: #111827;
    font-size: 1.22rem;
    font-weight: 950;
    line-height: 1;
}

.stock-summary-card small {
    display: block;
    margin-top: 5px;
    color: #64748b;
    font-size: 0.75rem;
    font-weight: 800;
}

.stock-main-card {
    transition:
            box-shadow 0.18s ease,
            border-color 0.18s ease,
            background 0.18s ease;
}

.stock-main-card.is-saved {
    animation: stockSavedPulse 1.35s ease-out;
}

.stock-filter-bar {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 16px;
}

.stock-search-wrapper {
    position: relative;
    display: flex;
    align-items: center;
    width: min(520px, 100%);
}

.stock-search-icon {
    position: absolute;
    left: 15px;
    color: #0875e1;
    pointer-events: none;
}

.stock-search-input {
    width: 100%;
    min-height: 42px;
    padding: 10px 44px 10px 42px;
    border: 1px solid rgba(8, 117, 225, 0.16);
    border-radius: 999px;
    background:
            linear-gradient(135deg, rgba(255, 255, 255, 0.96) 0%, rgba(246, 250, 255, 0.96) 100%);
    color: #111827;
    font-size: 0.84rem;
    font-weight: 700;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.055);
    transition:
            border-color 0.18s ease,
            box-shadow 0.18s ease,
            background 0.18s ease;
}

.stock-search-input::placeholder {
    color: #94a3b8;
    font-weight: 600;
}

.stock-search-input:focus {
    outline: none;
    border-color: #0875e1;
    background: #ffffff;
    box-shadow:
            0 0 0 4px rgba(8, 117, 225, 0.12),
            0 12px 24px rgba(15, 23, 42, 0.08);
}

.stock-search-clear {
    position: absolute;
    right: 9px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 27px;
    height: 27px;
    border: none;
    border-radius: 999px;
    background: rgba(15, 23, 42, 0.06);
    color: #64748b;
    cursor: pointer;
    transition:
            background 0.18s ease,
            color 0.18s ease,
            transform 0.18s ease;
}

.stock-search-clear:hover {
    background: rgba(8, 117, 225, 0.12);
    color: #0875e1;
    transform: scale(1.05);
}

.stock-toast-message {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 16px;
    padding: 13px 16px;
    border-radius: 18px;
    background: #ffffff;
    color: #111827;
    font-size: 0.84rem;
    font-weight: 850;
    box-shadow: 0 16px 34px rgba(15, 23, 42, 0.12);
    animation: stockToastIn 0.22s ease-out;
}

.stock-toast-success {
    border: 1px solid rgba(4, 120, 87, 0.16);
}

.stock-toast-danger {
    border: 1px solid rgba(220, 38, 38, 0.16);
}

.stock-toast-info {
    border: 1px solid rgba(8, 117, 225, 0.16);
}

.stock-toast-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    border-radius: 999px;
}

.stock-toast-success .stock-toast-icon {
    color: #047857;
    background: #ecfdf5;
}

.stock-toast-danger .stock-toast-icon {
    color: #dc2626;
    background: #fef2f2;
}

.stock-toast-info .stock-toast-icon {
    color: #0875e1;
    background: #eaf4ff;
}

.stock-page .table-responsive {
    overflow: auto;
}

.stock-page table.table tbody tr {
    border-radius: 14px;
}

.stock-page table.table tbody td:first-child {
    font-weight: 850;
}

.stock-page table.table tfoot tr {
    border-top: 1px solid rgba(15, 23, 42, 0.08);
}

.stock-page .input-group {
    background: #ffffff;
}

.stock-page .input-group .form-control:focus {
    box-shadow: none;
}

.stock-page .border-dashed {
    border-style: dashed !important;
}

@keyframes stockToastIn {
    from {
        opacity: 0;
        transform: translateY(-6px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes stockSavedPulse {
    0% {
        box-shadow:
                inset 0 0 0 2px rgba(34, 197, 94, 0.32),
                0 22px 55px rgba(34, 197, 94, 0.14) !important;
        background: #ecfdf5;
    }

    100% {
        box-shadow: 0 22px 55px rgba(15, 23, 42, 0.10) !important;
        background: rgba(255, 255, 255, 0.94);
    }
}

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

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

    .stock-summary-card {
        min-height: 78px;
    }
}

.planning-team-card,
.planning-calendar-card {
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 22px 55px rgba(15, 23, 42, 0.10);
    overflow: hidden;
    backdrop-filter: blur(12px);
}

.planning-team-header,
.planning-calendar-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 16px 18px;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    background:
            radial-gradient(circle at top left, rgba(168, 85, 247, 0.12), transparent 34%),
            linear-gradient(135deg, #ffffff 0%, #faf5ff 100%);
}

.planning-section-kicker {
    display: block;
    margin-bottom: 3px;
    color: #7c3aed;
    font-size: 0.70rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.075em;
}

.planning-team-header h2,
.planning-current-period h2,
.planning-hours-header h2 {
    margin: 0;
    color: #111827;
    font-size: 1.05rem;
    font-weight: 950;
    letter-spacing: -0.025em;
}

.planning-team-header p,
.planning-current-period p {
    margin: 4px 0 0;
    color: #64748b;
    font-size: 0.78rem;
    font-weight: 700;
}

.planning-team-count {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 12px;
    border-radius: 999px;
    background: #f5f3ff;
    color: #7c3aed;
    font-size: 0.80rem;
    font-weight: 950;
}

.planning-team-body {
    display: grid;
    grid-template-columns: minmax(260px, 420px) 1fr;
    gap: 18px;
    padding: 18px;
}

.planning-employee-form {
    display: grid;
    grid-template-columns: 1fr 1fr auto;
    gap: 10px;
    align-items: center;
}

.planning-input-wrapper,
.planning-date-input-wrapper {
    position: relative;
}

.planning-input-wrapper i,
.planning-date-input-wrapper i {
    position: absolute;
    left: 13px;
    top: 50%;
    color: #7c3aed;
    transform: translateY(-50%);
    pointer-events: none;
}

.planning-input,
.planning-date-input {
    width: 100%;
    min-height: 40px;
    padding: 9px 13px 9px 38px;
    border: 1px solid rgba(124, 58, 237, 0.16);
    border-radius: 999px;
    background: linear-gradient(135deg, #ffffff 0%, #fbf8ff 100%);
    color: #111827;
    font-size: 0.82rem;
    font-weight: 750;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.055);
}

.planning-input:focus,
.planning-date-input:focus {
    outline: none;
    border-color: #7c3aed;
    box-shadow: 0 0 0 4px rgba(124, 58, 237, 0.12);
}

.planning-add-employee-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 40px;
    padding: 9px 14px;
    border: none;
    border-radius: 999px;
    background: linear-gradient(135deg, #7c3aed 0%, #a855f7 100%);
    color: #ffffff;
    font-size: 0.82rem;
    font-weight: 900;
    box-shadow: 0 12px 24px rgba(124, 58, 237, 0.18);
}

.planning-employees-list {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 9px;
}

.planning-employee-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 9px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 999px;
    background: #ffffff;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.06);
}

.planning-employee-color,
.planning-grid-employee-color,
.planning-hours-color {
    display: inline-block;
    width: 10px;
    height: 10px;
    flex: 0 0 10px;
    border-radius: 999px;
}

.planning-employee-name {
    color: #111827;
    font-size: 0.78rem;
    font-weight: 800;
    text-transform: capitalize;
}

.planning-employee-delete {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border: none;
    border-radius: 999px;
    background: #fef2f2;
    color: #dc2626;
    font-size: 0.68rem;
}

.planning-empty-inline {
    color: #64748b;
    font-size: 0.82rem;
    font-weight: 700;
}

.planning-view-toggle,
.planning-nav-group,
.planning-export-group {
    display: inline-flex;
    align-items: center;
    padding: 4px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.86);
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.055);
}

.planning-view-toggle button,
.planning-nav-group button,
.planning-export-group button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 34px;
    padding: 7px 12px;
    border: none;
    border-radius: 999px;
    background: transparent;
    color: #64748b;
    font-size: 0.76rem;
    font-weight: 900;
}

.planning-view-toggle button.is-active {
    background: linear-gradient(135deg, #7c3aed 0%, #a855f7 100%);
    color: #ffffff;
    box-shadow: 0 10px 20px rgba(124, 58, 237, 0.18);
}

.planning-toolbar-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 10px;
}

.planning-calendar-body {
    padding: 18px;
}

.planning-current-period {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 14px;
}

.planning-help-badge,
.planning-rule-badge {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 11px;
    border-radius: 999px;
    background: #f5f3ff;
    color: #7c3aed;
    font-size: 0.72rem;
    font-weight: 900;
}

.planning-resource-grid,
.planning-week-view {
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 20px;
    background: #ffffff;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.60);
}

.planning-grid-employee-header {
    padding: 10px 12px;
    border-right: 1px solid rgba(15, 23, 42, 0.08);
    background: #f8fafc;
    color: #64748b;
    font-size: 0.72rem;
    font-weight: 950;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.planning-grid-hour {
    padding: 10px 8px;
    border-right: 1px solid rgba(15, 23, 42, 0.06);
    text-align: center;
    background: #f8fafc;
}

.planning-grid-row {
    border-bottom: 1px solid rgba(15, 23, 42, 0.06);
}

.planning-grid-employee-cell {
    padding: 10px 12px;
    border-right: 1px solid rgba(15, 23, 42, 0.08);
    background: #ffffff;
}

.planning-grid-employee {
    display: flex;
    align-items: center;
    gap: 9px;
}

.planning-grid-employee-name {
    color: #111827;
    font-size: 0.80rem;
    font-weight: 800;
    text-transform: capitalize;
}

.planning-grid-cell {
    border-right: 1px solid rgba(15, 23, 42, 0.055);
    transition: background 0.12s ease;
}

.planning-grid-cell.is-selected {
    background: rgba(124, 58, 237, 0.12);
}

.planning-grid-cell.is-past {
    background: rgba(148, 163, 184, 0.06);
}

.planning-week-day-title {
    margin-bottom: 8px;
    color: #111827;
    font-size: 0.86rem;
    font-weight: 950;
    text-transform: capitalize;
}

.planning-hours-card {
    margin-top: 18px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 20px;
    background: #ffffff;
    box-shadow: 0 14px 30px rgba(15, 23, 42, 0.06);
    overflow: hidden;
}

.planning-hours-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 14px 16px;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    background: #f8fafc;
}

.planning-hours-table {
    font-size: 0.84rem;
}

.planning-hours-table th {
    color: #64748b;
    font-size: 0.72rem;
    font-weight: 950;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.planning-hours-table td,
.planning-hours-table th {
    padding: 10px 14px;
}

.planning-hours-table tfoot th {
    color: #111827;
    background: #f8fafc;
}

@media (max-width: 992px) {
    .planning-team-body {
        grid-template-columns: 1fr;
    }

    .planning-employee-form {
        grid-template-columns: 1fr;
    }

    .planning-calendar-toolbar {
        align-items: flex-start;
        flex-direction: column;
    }

    .planning-toolbar-actions {
        justify-content: flex-start;
        width: 100%;
    }
}

@media (max-width: 576px) {
    .planning-current-period,
    .planning-hours-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .planning-view-toggle,
    .planning-nav-group,
    .planning-export-group {
        width: 100%;
        justify-content: center;
        flex-wrap: wrap;
    }

    .planning-date-input-wrapper {
        width: 100%;
    }
}

.planning-week-summary {
    display: grid;
    grid-template-columns: 1fr;
    gap: 14px;
}

.planning-week-summary-card {
    overflow: hidden;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 16px 36px rgba(15, 23, 42, 0.075);
}

.planning-week-summary-card.is-today {
    border-color: rgba(124, 58, 237, 0.28);
    box-shadow:
            inset 4px 0 0 #7c3aed,
            0 18px 40px rgba(124, 58, 237, 0.12);
}

.planning-week-summary-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 15px 17px;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    background:
            radial-gradient(circle at top left, rgba(168, 85, 247, 0.10), transparent 34%),
            linear-gradient(135deg, #ffffff 0%, #faf5ff 100%);
}

.planning-week-summary-header h3 {
    margin: 0;
    color: #111827;
    font-size: 1rem;
    font-weight: 950;
    text-transform: capitalize;
    letter-spacing: -0.02em;
}

.planning-week-summary-meta {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.planning-week-summary-meta span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 11px;
    border-radius: 999px;
    background: #f5f3ff;
    color: #7c3aed;
    font-size: 0.72rem;
    font-weight: 900;
    white-space: nowrap;
}

.planning-week-summary-body {
    padding: 12px 14px;
}

.planning-week-shifts {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.planning-week-shift-color {
    width: 10px;
    height: 10px;
    border-radius: 999px;
}

.planning-week-shift-employee {
    color: #111827;
    font-size: 0.84rem;
    font-weight: 800;
    text-transform: capitalize;
}

.planning-week-shift-hours {
    padding: 6px 10px;
    border-radius: 999px;
    background: #f8fafc;
    color: #334155;
    font-size: 0.76rem;
    font-weight: 900;
    white-space: nowrap;
}

.planning-week-empty {
    padding: 18px;
    border: 1px dashed rgba(124, 58, 237, 0.20);
    border-radius: 18px;
    background: #faf5ff;
    color: #7c3aed;
    font-size: 0.82rem;
    font-weight: 850;
    text-align: center;
}

.planning-week-summary-footer {
    display: flex;
    justify-content: flex-end;
    padding: 0 14px 14px;
}

.planning-edit-day-button {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 34px;
    padding: 7px 12px;
    border: 1px solid rgba(124, 58, 237, 0.16);
    border-radius: 999px;
    background: #ffffff;
    color: #7c3aed;
    font-size: 0.76rem;
    font-weight: 900;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.055);
    transition:
            transform 0.18s ease,
            box-shadow 0.18s ease,
            background 0.18s ease,
            color 0.18s ease;
}

.planning-edit-day-button:hover {
    transform: translateY(-1px);
    background: linear-gradient(135deg, #7c3aed 0%, #a855f7 100%);
    color: #ffffff;
    box-shadow: 0 12px 24px rgba(124, 58, 237, 0.18);
}

@media (max-width: 768px) {
    .planning-week-summary-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .planning-week-summary-meta {
        justify-content: flex-start;
    }

    .planning-week-shift {
        grid-template-columns: 12px 1fr;
    }

    .planning-week-shift-hours {
        grid-column: 2;
        width: fit-content;
    }

    .planning-week-summary-footer {
        justify-content: stretch;
    }

    .planning-edit-day-button {
        width: 100%;
        justify-content: center;
    }
}

.planning-week-employee-row {
    display: grid;
    grid-template-columns: minmax(170px, 240px) 1fr;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
    border: 1px solid rgba(15, 23, 42, 0.07);
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.045);
}

.planning-week-employee-identity {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

.planning-week-employee-slots {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    flex-wrap: wrap;
}

.planning-week-employee-row .planning-week-shift-employee {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.planning-week-employee-row .planning-week-shift-hours {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

@media (max-width: 768px) {
    .planning-week-employee-row {
        grid-template-columns: 1fr;
        align-items: flex-start;
    }

    .planning-week-employee-slots {
        justify-content: flex-start;
        padding-left: 20px;
    }
}

.planning-disabled-employee-badge {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    margin-left: 8px;
    padding: 3px 7px;
    border-radius: 999px;
    background: #f1f5f9;
    color: #64748b;
    border: 1px solid rgba(100, 116, 139, 0.16);
    font-size: 0.62rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.035em;
}

.planning-grid-row:has(.planning-disabled-employee-badge) .planning-grid-employee-cell {
    background: #f8fafc;
}

.planning-grid-row:has(.planning-disabled-employee-badge) .planning-grid-cell {
    background: rgba(148, 163, 184, 0.035);
}

.mercuriale-dashboard,
.mercuriale-page-content {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.mercuriale-summary-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(180px, 1fr));
    gap: 14px;
}

.mercuriale-summary-card,
.mercuriale-panel,
.mercuriale-products-card {
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 22px 55px rgba(15, 23, 42, 0.10);
    overflow: hidden;
    backdrop-filter: blur(12px);
}

.mercuriale-summary-card {
    display: flex;
    align-items: center;
    gap: 13px;
    min-height: 86px;
    padding: 15px 16px;
    box-shadow: 0 14px 34px rgba(15, 23, 42, 0.075);
}

.mercuriale-summary-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    border-radius: 16px;
    font-size: 1.1rem;
}

.summary-categories {
    color: #059669;
    background: #ecfdf5;
}

.summary-subcategories {
    color: #0875e1;
    background: #eaf4ff;
}

.summary-active {
    color: #7c3aed;
    background: #f5f3ff;
}

.mercuriale-summary-card strong {
    display: block;
    color: #111827;
    font-size: 1.12rem;
    font-weight: 950;
    line-height: 1.15;
}

.mercuriale-summary-card small {
    display: block;
    margin-top: 5px;
    color: #64748b;
    font-size: 0.75rem;
    font-weight: 800;
}

.mercuriale-panel-header,
.mercuriale-products-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 16px 18px;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    background:
            radial-gradient(circle at top left, rgba(16, 185, 129, 0.12), transparent 34%),
            linear-gradient(135deg, #ffffff 0%, #f0fdfa 100%);
}

.mercuriale-kicker {
    display: block;
    margin-bottom: 3px;
    color: #059669;
    font-size: 0.70rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.075em;
}

.mercuriale-panel-header h2,
.mercuriale-products-header h2 {
    margin: 0;
    color: #111827;
    font-size: 1.05rem;
    font-weight: 950;
    letter-spacing: -0.025em;
}

.mercuriale-panel-header p,
.mercuriale-products-header p {
    margin: 4px 0 0;
    color: #64748b;
    font-size: 0.78rem;
    font-weight: 700;
}

.mercuriale-panel-body {
    padding: 18px;
}

.mercuriale-category-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
    gap: 12px;
}

.mercuriale-category-card {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 78px;
    padding: 14px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 20px;
    background: #ffffff;
    text-align: left;
    cursor: pointer;
    box-shadow: 0 12px 26px rgba(15, 23, 42, 0.065);
    transition:
            transform 0.18s ease,
            box-shadow 0.18s ease,
            border-color 0.18s ease,
            background 0.18s ease;
}

.mercuriale-category-card:hover,
.mercuriale-category-card.is-active {
    transform: translateY(-2px);
    border-color: rgba(5, 150, 105, 0.30);
    background:
            radial-gradient(circle at top left, rgba(16, 185, 129, 0.10), transparent 42%),
            #ffffff;
    box-shadow: 0 18px 36px rgba(5, 150, 105, 0.12);
}

.mercuriale-category-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    border-radius: 16px;
    background: #ecfdf5;
    color: #059669;
}

.mercuriale-category-card strong {
    display: block;
    color: #111827;
    font-size: 0.90rem;
    font-weight: 950;
}

.mercuriale-category-card small {
    display: block;
    margin-top: 4px;
    color: #64748b;
    font-size: 0.72rem;
    font-weight: 750;
}

.mercuriale-subcategory-section {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.mercuriale-subcategory-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.mercuriale-subcategory-pill {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 36px;
    padding: 8px 12px;
    border: 1px solid rgba(5, 150, 105, 0.18);
    border-radius: 999px;
    background: #ffffff;
    color: #047857;
    font-size: 0.78rem;
    font-weight: 900;
    cursor: pointer;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.055);
    transition:
            transform 0.18s ease,
            box-shadow 0.18s ease,
            background 0.18s ease,
            color 0.18s ease;
}

.mercuriale-subcategory-pill:hover,
.mercuriale-subcategory-pill.is-active {
    transform: translateY(-1px);
    background: linear-gradient(135deg, #059669 0%, #10b981 100%);
    color: #ffffff;
    box-shadow: 0 12px 24px rgba(5, 150, 105, 0.18);
}

.mercuriale-loading-state,
.mercuriale-empty-state {
    padding: 34px 18px;
    border: 1px dashed rgba(16, 185, 129, 0.24);
    border-radius: 22px;
    background:
            radial-gradient(circle at top, rgba(16, 185, 129, 0.08), transparent 36%),
            rgba(255, 255, 255, 0.92);
    color: #64748b;
    text-align: center;
    font-size: 0.86rem;
    font-weight: 800;
}

.mercuriale-empty-state i {
    color: #94a3b8;
    font-size: 2.7rem;
    margin-bottom: 10px;
}

.mercuriale-empty-state h3 {
    margin: 0 0 6px;
    color: #111827;
    font-size: 1rem;
    font-weight: 950;
}

.mercuriale-empty-state p {
    margin: 0;
    color: #64748b;
}

.mercuriale-spinner {
    display: inline-flex;
    width: 22px;
    height: 22px;
    margin-right: 8px;
    border: 3px solid rgba(16, 185, 129, 0.20);
    border-top-color: #10b981;
    border-radius: 999px;
    vertical-align: middle;
    animation: mercurialeSpin 0.8s linear infinite;
}

.mercuriale-products-stats {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

.mercuriale-stat-pill {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 11px;
    border: 1px solid rgba(5, 150, 105, 0.14);
    border-radius: 999px;
    background: #ffffff;
    color: #047857;
    font-size: 0.72rem;
    font-weight: 900;
    cursor: pointer;
}

.mercuriale-stat-pill strong {
    font-size: 0.76rem;
}

.mercuriale-stat-pill.is-active {
    background: #ecfdf5;
    border-color: rgba(5, 150, 105, 0.28);
}

.mercuriale-stat-pill.is-warning {
    color: #b45309;
    border-color: rgba(180, 83, 9, 0.16);
}

.mercuriale-stat-pill.is-warning.is-active {
    background: #fffbeb;
}

.mercuriale-products-toolbar {
    padding: 14px 16px 4px;
    background: rgba(248, 250, 252, 0.68);
}

.mercuriale-search-wrapper {
    position: relative;
    width: min(560px, 100%);
}

.mercuriale-search-wrapper i {
    position: absolute;
    left: 15px;
    top: 50%;
    color: #059669;
    transform: translateY(-50%);
}

.mercuriale-search-wrapper input {
    width: 100%;
    min-height: 42px;
    padding: 10px 44px 10px 42px;
    border: 1px solid rgba(5, 150, 105, 0.16);
    border-radius: 999px;
    background: linear-gradient(135deg, #ffffff 0%, #f6fffb 100%);
    color: #111827;
    font-size: 0.84rem;
    font-weight: 700;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.055);
}

.mercuriale-search-wrapper input:focus {
    outline: none;
    border-color: #059669;
    box-shadow: 0 0 0 4px rgba(5, 150, 105, 0.12);
}

.mercuriale-search-wrapper button {
    position: absolute;
    right: 9px;
    top: 50%;
    width: 27px;
    height: 27px;
    border: none;
    border-radius: 999px;
    background: rgba(15, 23, 42, 0.06);
    color: #64748b;
    transform: translateY(-50%);
}

.mercuriale-table-responsive {
    overflow-x: auto;
    padding: 10px 12px 4px;
}

.mercuriale-table {
    width: 100%;
    min-width: 920px;
    border-collapse: separate;
    border-spacing: 0 8px;
}

.mercuriale-table thead th {
    padding: 10px 14px;
    color: #64748b;
    font-size: 0.70rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.055em;
    white-space: nowrap;
}

.mercuriale-table thead button {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 0;
    border: none;
    background: transparent;
    color: inherit;
    font: inherit;
    cursor: pointer;
}

.mercuriale-table thead button span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    border-radius: 999px;
    background: rgba(5, 150, 105, 0.08);
    color: #059669;
    font-size: 0.68rem;
}

.mercuriale-table tbody tr {
    background: #ffffff;
    box-shadow: 0 5px 16px rgba(15, 23, 42, 0.055);
    transition:
            transform 0.18s ease,
            box-shadow 0.18s ease;
}

.mercuriale-table tbody tr:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 30px rgba(5, 150, 105, 0.12);
}

.mercuriale-table tbody td {
    padding: 13px 14px;
    color: #111827;
    font-size: 0.84rem;
    vertical-align: middle;
}

.mercuriale-table tbody td:first-child {
    border-top-left-radius: 16px;
    border-bottom-left-radius: 16px;
}

.mercuriale-table tbody td:last-child {
    border-top-right-radius: 16px;
    border-bottom-right-radius: 16px;
}

.mercuriale-product-name {
    display: block;
    color: #111827;
    font-weight: 950;
}

.mercuriale-product-ref {
    display: block;
    margin-top: 3px;
    color: #64748b;
    font-size: 0.72rem;
    font-weight: 750;
}

.mercuriale-muted-cell,
.mercuriale-brand-cell {
    color: #334155;
    font-weight: 800;
}

.mercuriale-small-badge,
.mercuriale-price-badge,
.mercuriale-status-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    font-size: 0.74rem;
    font-weight: 900;
    white-space: nowrap;
}

.mercuriale-small-badge {
    padding: 6px 9px;
    background: #f8fafc;
    color: #334155;
    border: 1px solid rgba(15, 23, 42, 0.08);
}

.mercuriale-price-badge {
    padding: 7px 11px;
    background: #ecfdf5;
    color: #047857;
    border: 1px solid rgba(4, 120, 87, 0.14);
}

.mercuriale-status-badge {
    gap: 6px;
    padding: 7px 11px;
}

.mercuriale-status-badge.is-available {
    background: #ecfdf5;
    color: #047857;
    border: 1px solid rgba(4, 120, 87, 0.14);
}

.mercuriale-status-badge.is-rupture {
    background: #fffbeb;
    color: #b45309;
    border: 1px solid rgba(180, 83, 9, 0.16);
}

.mercuriale-pagination {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 14px 16px 16px;
}

.mercuriale-pagination-info {
    color: #64748b;
    font-size: 0.78rem;
    font-weight: 800;
}

.mercuriale-pagination-info strong {
    color: #111827;
    font-weight: 950;
}

.mercuriale-pagination-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.mercuriale-pagination-actions label {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin: 0;
    color: #64748b;
    font-size: 0.76rem;
    font-weight: 850;
}

.mercuriale-pagination-actions select,
.mercuriale-pagination-actions button {
    min-height: 34px;
    border: 1px solid rgba(5, 150, 105, 0.16);
    border-radius: 999px;
    background: #ffffff;
    color: #334155;
    font-size: 0.76rem;
    font-weight: 900;
    box-shadow: 0 5px 13px rgba(15, 23, 42, 0.055);
}

.mercuriale-pagination-actions select {
    padding: 6px 28px 6px 10px;
}

.mercuriale-pagination-actions button {
    padding: 7px 12px;
}

.mercuriale-pagination-actions button:disabled {
    cursor: not-allowed;
    opacity: 0.45;
}

@keyframes mercurialeSpin {
    to {
        transform: rotate(360deg);
    }
}

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

    .mercuriale-panel-header,
    .mercuriale-products-header,
    .mercuriale-pagination {
        align-items: flex-start;
        flex-direction: column;
    }

    .mercuriale-products-stats {
        justify-content: flex-start;
    }
}

.commande-new-dashboard {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.commande-new-summary-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(170px, 1fr));
    gap: 14px;
}

.commande-new-summary-card,
.commande-new-panel,
.commande-products-card {
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 22px 55px rgba(15, 23, 42, 0.10);
    overflow: hidden;
    backdrop-filter: blur(12px);
}

.commande-new-summary-card {
    display: flex;
    align-items: center;
    gap: 13px;
    min-height: 86px;
    padding: 15px 16px;
    box-shadow: 0 14px 34px rgba(15, 23, 42, 0.075);
}

.commande-new-summary-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    border-radius: 16px;
    font-size: 1.1rem;
}

.commande-new-summary-icon.summary-categories {
    color: #0875e1;
    background: #eaf4ff;
}

.commande-new-summary-icon.summary-subcategories {
    color: #7c3aed;
    background: #f5f3ff;
}

.commande-new-summary-icon.summary-cart {
    color: #047857;
    background: #ecfdf5;
}

.commande-new-summary-icon.summary-total {
    color: #b45309;
    background: #fffbeb;
}

.commande-new-summary-card strong {
    display: block;
    color: #111827;
    font-size: 1.12rem;
    font-weight: 950;
    line-height: 1.15;
}

.commande-new-summary-card small {
    display: block;
    margin-top: 5px;
    color: #64748b;
    font-size: 0.75rem;
    font-weight: 800;
}

.commande-new-panel-header,
.commande-products-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 16px 18px;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    background:
            radial-gradient(circle at top left, rgba(8, 117, 225, 0.12), transparent 34%),
            linear-gradient(135deg, #ffffff 0%, #f6faff 100%);
}

.commande-new-kicker {
    display: block;
    margin-bottom: 3px;
    color: #0875e1;
    font-size: 0.70rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.075em;
}

.commande-new-panel-header h2,
.commande-products-header h2 {
    margin: 0;
    color: #111827;
    font-size: 1.05rem;
    font-weight: 950;
    letter-spacing: -0.025em;
}

.commande-new-panel-header p,
.commande-products-header p {
    margin: 4px 0 0;
    color: #64748b;
    font-size: 0.78rem;
    font-weight: 700;
}

.commande-new-panel-body {
    padding: 18px;
}

.commande-new-cart-button {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 40px;
    padding: 9px 14px;
    border: none;
    border-radius: 999px;
    background: linear-gradient(135deg, #f59e0b 0%, #f97316 100%);
    color: #ffffff;
    font-size: 0.82rem;
    font-weight: 950;
    box-shadow: 0 12px 24px rgba(249, 115, 22, 0.18);
}

.commande-new-cart-button span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 22px;
    height: 22px;
    padding: 0 7px;
    border-radius: 999px;
    background: #ffffff;
    color: #f97316;
    font-size: 0.72rem;
    font-weight: 950;
}

.commande-new-category-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
    gap: 12px;
}

.commande-new-category-card {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 78px;
    padding: 14px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 20px;
    background: #ffffff;
    text-align: left;
    cursor: pointer;
    box-shadow: 0 12px 26px rgba(15, 23, 42, 0.065);
    transition:
            transform 0.18s ease,
            box-shadow 0.18s ease,
            border-color 0.18s ease,
            background 0.18s ease;
}

.commande-new-category-card:hover,
.commande-new-category-card.is-active {
    transform: translateY(-2px);
    border-color: rgba(8, 117, 225, 0.30);
    background:
            radial-gradient(circle at top left, rgba(8, 117, 225, 0.10), transparent 42%),
            #ffffff;
    box-shadow: 0 18px 36px rgba(8, 117, 225, 0.12);
}

.commande-new-category-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    border-radius: 16px;
    background: #eaf4ff;
    color: #0875e1;
}

.commande-new-category-card strong {
    display: block;
    color: #111827;
    font-size: 0.90rem;
    font-weight: 950;
}

.commande-new-category-card small {
    display: block;
    margin-top: 4px;
    color: #64748b;
    font-size: 0.72rem;
    font-weight: 750;
}

.commande-new-subcategory-section {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.commande-new-subcategory-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.commande-new-subcategory-pill {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 36px;
    padding: 8px 12px;
    border: 1px solid rgba(8, 117, 225, 0.18);
    border-radius: 999px;
    background: #ffffff;
    color: #0875e1;
    font-size: 0.78rem;
    font-weight: 900;
    cursor: pointer;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.055);
    transition:
            transform 0.18s ease,
            box-shadow 0.18s ease,
            background 0.18s ease,
            color 0.18s ease;
}

.commande-new-subcategory-pill:hover,
.commande-new-subcategory-pill.is-active {
    transform: translateY(-1px);
    background: linear-gradient(135deg, #0875e1 0%, #0b8cff 100%);
    color: #ffffff;
    box-shadow: 0 12px 24px rgba(8, 117, 225, 0.18);
}

.commande-new-loading-state,
.commande-new-empty-state {
    padding: 34px 18px;
    border: 1px dashed rgba(8, 117, 225, 0.24);
    border-radius: 22px;
    background:
            radial-gradient(circle at top, rgba(8, 117, 225, 0.08), transparent 36%),
            rgba(255, 255, 255, 0.92);
    color: #64748b;
    text-align: center;
    font-size: 0.86rem;
    font-weight: 800;
}

.commande-new-empty-state i {
    color: #94a3b8;
    font-size: 2.7rem;
    margin-bottom: 10px;
}

.commande-new-empty-state h3 {
    margin: 0 0 6px;
    color: #111827;
    font-size: 1rem;
    font-weight: 950;
}

.commande-new-empty-state p {
    margin: 0;
    color: #64748b;
}

.commande-new-spinner {
    display: inline-flex;
    width: 22px;
    height: 22px;
    margin-right: 8px;
    border: 3px solid rgba(8, 117, 225, 0.20);
    border-top-color: #0875e1;
    border-radius: 999px;
    vertical-align: middle;
    animation: commandeNewSpin 0.8s linear infinite;
}

.commande-products-stats {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

.commande-stat-pill {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 11px;
    border: 1px solid rgba(8, 117, 225, 0.14);
    border-radius: 999px;
    background: #ffffff;
    color: #0875e1;
    font-size: 0.72rem;
    font-weight: 900;
    cursor: pointer;
}

.commande-stat-pill.is-active {
    background: #eaf4ff;
    border-color: rgba(8, 117, 225, 0.28);
}

.commande-stat-pill.is-warning {
    color: #b45309;
    border-color: rgba(180, 83, 9, 0.16);
}

.commande-stat-pill.is-warning.is-active {
    background: #fffbeb;
}

.commande-stat-pill.is-cart {
    color: #047857;
    border-color: rgba(4, 120, 87, 0.16);
}

.commande-stat-pill.is-cart.is-active {
    background: #ecfdf5;
}

.commande-products-toolbar {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    padding: 14px 16px 4px;
    background: rgba(248, 250, 252, 0.68);
}

.commande-search-wrapper {
    position: relative;
    width: min(560px, 100%);
}

.commande-search-wrapper i,
.commande-supplier-filter i {
    position: absolute;
    left: 15px;
    top: 50%;
    color: #0875e1;
    transform: translateY(-50%);
}

.commande-search-wrapper input,
.commande-supplier-filter select {
    width: 100%;
    min-height: 42px;
    padding: 10px 44px 10px 42px;
    border: 1px solid rgba(8, 117, 225, 0.16);
    border-radius: 999px;
    background: linear-gradient(135deg, #ffffff 0%, #f6faff 100%);
    color: #111827;
    font-size: 0.84rem;
    font-weight: 700;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.055);
}

.commande-search-wrapper input:focus,
.commande-supplier-filter select:focus {
    outline: none;
    border-color: #0875e1;
    box-shadow: 0 0 0 4px rgba(8, 117, 225, 0.12);
}

.commande-search-wrapper button {
    position: absolute;
    right: 9px;
    top: 50%;
    width: 27px;
    height: 27px;
    border: none;
    border-radius: 999px;
    background: rgba(15, 23, 42, 0.06);
    color: #64748b;
    transform: translateY(-50%);
}

.commande-supplier-filter {
    position: relative;
    width: min(300px, 100%);
    margin: 0;
}

.commande-table-responsive {
    overflow-x: auto;
    padding: 10px 12px 4px;
}

.commande-products-table {
    width: 100%;
    min-width: 1180px;
    border-collapse: separate;
    border-spacing: 0 8px;
}

.commande-products-table thead th {
    padding: 10px 14px;
    color: #64748b;
    font-size: 0.70rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.055em;
    white-space: nowrap;
}

.commande-products-table thead button {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 0;
    border: none;
    background: transparent;
    color: inherit;
    font: inherit;
    cursor: pointer;
}

.commande-products-table thead button span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    border-radius: 999px;
    background: rgba(8, 117, 225, 0.08);
    color: #0875e1;
    font-size: 0.68rem;
}

.commande-products-table tbody tr {
    background: #ffffff;
    box-shadow: 0 5px 16px rgba(15, 23, 42, 0.055);
    transition:
            transform 0.18s ease,
            box-shadow 0.18s ease,
            background 0.18s ease;
}

.commande-products-table tbody tr:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 30px rgba(8, 117, 225, 0.12);
}

.commande-products-table tbody tr.is-in-cart {
    background: linear-gradient(135deg, #ecfdf5 0%, #ffffff 100%);
    box-shadow:
            inset 4px 0 0 #10b981,
            0 10px 24px rgba(16, 185, 129, 0.12);
}

.commande-products-table tbody td {
    padding: 13px 14px;
    color: #111827;
    font-size: 0.84rem;
    vertical-align: middle;
}

.commande-products-table tbody td:first-child {
    border-top-left-radius: 16px;
    border-bottom-left-radius: 16px;
}

.commande-products-table tbody td:last-child {
    border-top-right-radius: 16px;
    border-bottom-right-radius: 16px;
}

.commande-cart-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid rgba(8, 117, 225, 0.18);
    border-radius: 999px;
    background: #ffffff;
    color: #0875e1;
    cursor: pointer;
    box-shadow: 0 7px 16px rgba(8, 117, 225, 0.10);
}

.commande-cart-toggle.is-active {
    border-color: rgba(16, 185, 129, 0.28);
    background: #ecfdf5;
    color: #047857;
}

.commande-cart-toggle:disabled {
    cursor: not-allowed;
    opacity: 0.45;
}

.commande-product-name,
.commande-supplier-cell {
    display: block;
    color: #111827;
    font-weight: 950;
}

.commande-product-ref {
    display: block;
    margin-top: 3px;
    color: #64748b;
    font-size: 0.72rem;
    font-weight: 750;
}

.commande-muted-cell,
.commande-brand-cell {
    color: #334155;
    font-weight: 800;
}

.commande-small-badge,
.commande-price-badge,
.commande-status-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    font-size: 0.74rem;
    font-weight: 900;
    white-space: nowrap;
}

.commande-small-badge {
    padding: 6px 9px;
    background: #f8fafc;
    color: #334155;
    border: 1px solid rgba(15, 23, 42, 0.08);
}

.commande-price-badge {
    padding: 7px 11px;
    background: #eaf4ff;
    color: #0875e1;
    border: 1px solid rgba(8, 117, 225, 0.14);
}

.commande-status-badge {
    gap: 6px;
    padding: 7px 11px;
}

.commande-status-badge.is-available {
    background: #ecfdf5;
    color: #047857;
    border: 1px solid rgba(4, 120, 87, 0.14);
}

.commande-status-badge.is-rupture {
    background: #fffbeb;
    color: #b45309;
    border: 1px solid rgba(180, 83, 9, 0.16);
}

.commande-avis-actions {
    display: flex;
    align-items: center;
    gap: 6px;
}

.commande-avis-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 999px;
    background: #ffffff;
    cursor: pointer;
}

.commande-avis-btn img {
    width: 18px;
    height: 18px;
}

.commande-avis-btn.is-up {
    background: #ecfdf5;
    border-color: rgba(4, 120, 87, 0.18);
}

.commande-avis-btn.is-down {
    background: #fef2f2;
    border-color: rgba(220, 38, 38, 0.18);
}

.commande-pagination {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 14px 16px 16px;
}

.commande-pagination-info {
    color: #64748b;
    font-size: 0.78rem;
    font-weight: 800;
}

.commande-pagination-info strong {
    color: #111827;
    font-weight: 950;
}

.commande-pagination-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.commande-pagination-actions label {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin: 0;
    color: #64748b;
    font-size: 0.76rem;
    font-weight: 850;
}

.commande-pagination-actions select,
.commande-pagination-actions button {
    min-height: 34px;
    border: 1px solid rgba(8, 117, 225, 0.16);
    border-radius: 999px;
    background: #ffffff;
    color: #334155;
    font-size: 0.76rem;
    font-weight: 900;
    box-shadow: 0 5px 13px rgba(15, 23, 42, 0.055);
}

.commande-pagination-actions select {
    padding: 6px 28px 6px 10px;
}

.commande-pagination-actions button {
    padding: 7px 12px;
}

.commande-pagination-actions button:disabled {
    cursor: not-allowed;
    opacity: 0.45;
}

@keyframes commandeNewSpin {
    to {
        transform: rotate(360deg);
    }
}

@media (max-width: 992px) {
    .commande-new-summary-grid {
        grid-template-columns: repeat(2, minmax(170px, 1fr));
    }

    .commande-new-panel-header,
    .commande-products-header,
    .commande-pagination {
        align-items: flex-start;
        flex-direction: column;
    }

    .commande-products-stats {
        justify-content: flex-start;
    }
}

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

    .commande-new-cart-button,
    .commande-search-wrapper,
    .commande-supplier-filter {
        width: 100%;
    }
}

.produit-nm-page {
    padding-bottom: 42px;
}

.produit-nm-dashboard {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.produit-nm-summary-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(170px, 1fr));
    gap: 14px;
}

.produit-nm-summary-card,
.produit-nm-card,
.produit-nm-help-card {
    overflow: hidden;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 22px 55px rgba(15, 23, 42, 0.10);
    backdrop-filter: blur(12px);
}

.produit-nm-summary-card {
    display: flex;
    align-items: center;
    gap: 13px;
    min-height: 86px;
    padding: 15px 16px;
    box-shadow: 0 14px 34px rgba(15, 23, 42, 0.075);
}

.produit-nm-summary-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    border-radius: 16px;
    font-size: 1.1rem;
}

.produit-nm-summary-icon.summary-lines {
    color: #7c3aed;
    background: #f5f3ff;
}

.produit-nm-summary-icon.summary-completed {
    color: #047857;
    background: #ecfdf5;
}

.produit-nm-summary-icon.summary-quantity {
    color: #0875e1;
    background: #eaf4ff;
}

.produit-nm-summary-icon.summary-value {
    color: #b45309;
    background: #fffbeb;
}

.produit-nm-summary-card strong {
    display: block;
    color: #111827;
    font-size: 1.16rem;
    font-weight: 950;
    line-height: 1.15;
}

.produit-nm-summary-card small {
    display: block;
    margin-top: 5px;
    color: #64748b;
    font-size: 0.75rem;
    font-weight: 800;
}

.produit-nm-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 320px;
    gap: 20px;
    align-items: start;
}

.produit-nm-card-header,
.produit-nm-help-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 18px 20px;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    background:
            radial-gradient(circle at top left, rgba(124, 58, 237, 0.13), transparent 34%),
            linear-gradient(135deg, #ffffff 0%, #faf5ff 100%);
}

.produit-nm-kicker,
.produit-nm-help-header span {
    display: block;
    margin-bottom: 3px;
    color: #7c3aed;
    font-size: 0.70rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.075em;
}

.produit-nm-card-header h2,
.produit-nm-help-header h2 {
    margin: 0;
    color: #111827;
    font-size: 1.10rem;
    font-weight: 950;
    letter-spacing: -0.025em;
}

.produit-nm-card-header p {
    margin: 4px 0 0;
    color: #64748b;
    font-size: 0.80rem;
    font-weight: 700;
}

.produit-nm-back-button {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 38px;
    padding: 8px 13px;
    border: 1px solid rgba(124, 58, 237, 0.16);
    border-radius: 999px;
    background: #ffffff;
    color: #7c3aed;
    text-decoration: none;
    font-size: 0.78rem;
    font-weight: 900;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.055);
}

.produit-nm-card-body {
    padding: 20px;
}

.produit-nm-alert {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 16px;
    padding: 13px 16px;
    border-radius: 18px;
    background: #ffffff;
    color: #111827;
    font-size: 0.84rem;
    font-weight: 850;
    box-shadow: 0 16px 34px rgba(15, 23, 42, 0.12);
}

.produit-nm-alert-error {
    border: 1px solid rgba(220, 38, 38, 0.16);
    color: #dc2626;
    background: #fef2f2;
}

.produit-nm-lines {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.produit-nm-lines-header {
    display: grid;
    grid-template-columns: minmax(240px, 1.7fr) 130px 160px 140px 70px;
    gap: 10px;
    padding: 0 12px 4px 54px;
    color: #64748b;
    font-size: 0.70rem;
    font-weight: 950;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.produit-nm-line {
    display: grid;
    grid-template-columns: 34px minmax(240px, 1.7fr) 130px 160px 140px 44px;
    align-items: center;
    gap: 10px;
    padding: 12px;
    border: 1px solid rgba(15, 23, 42, 0.07);
    border-radius: 20px;
    background: #ffffff;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.055);
}

.produit-nm-line-index {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 999px;
    background: #f5f3ff;
    color: #7c3aed;
    font-size: 0.72rem;
    font-weight: 950;
}

.produit-nm-input-wrapper {
    position: relative;
}

.produit-nm-input-wrapper i {
    position: absolute;
    left: 13px;
    top: 50%;
    color: #7c3aed;
    transform: translateY(-50%);
    pointer-events: none;
}

.produit-nm-input-wrapper input {
    width: 100%;
    min-height: 40px;
    padding: 9px 13px 9px 38px;
    border: 1px solid rgba(124, 58, 237, 0.16);
    border-radius: 999px;
    background: linear-gradient(135deg, #ffffff 0%, #fbf8ff 100%);
    color: #111827;
    font-size: 0.82rem;
    font-weight: 750;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.055);
}

.produit-nm-input-wrapper input:focus {
    outline: none;
    border-color: #7c3aed;
    box-shadow: 0 0 0 4px rgba(124, 58, 237, 0.12);
}

.produit-nm-line-total {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 8px 11px;
    border-radius: 999px;
    background: #fffbeb;
    color: #b45309;
    border: 1px solid rgba(180, 83, 9, 0.16);
    font-size: 0.80rem;
    font-weight: 950;
    white-space: nowrap;
}

.produit-nm-delete-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border: 1px solid rgba(220, 38, 38, 0.16);
    border-radius: 999px;
    background: #ffffff;
    color: #dc2626;
    cursor: pointer;
}

.produit-nm-delete-button:disabled {
    cursor: not-allowed;
    opacity: 0.45;
}

.produit-nm-add-line-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 42px;
    border: 1px dashed rgba(124, 58, 237, 0.30);
    border-radius: 18px;
    background: #faf5ff;
    color: #7c3aed;
    font-size: 0.84rem;
    font-weight: 950;
    cursor: pointer;
}

.produit-nm-card-footer {
    padding: 18px 20px;
    border-top: 1px solid rgba(15, 23, 42, 0.08);
    background: #ffffff;
}

.produit-nm-save-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    width: 100%;
    min-height: 46px;
    border: none;
    border-radius: 999px;
    background: linear-gradient(135deg, #7c3aed 0%, #a855f7 100%);
    color: #ffffff;
    font-size: 0.88rem;
    font-weight: 950;
    box-shadow: 0 14px 28px rgba(124, 58, 237, 0.22);
}

.produit-nm-save-button:disabled {
    cursor: wait;
    opacity: 0.75;
}

.produit-nm-spinner {
    width: 18px;
    height: 18px;
    border: 3px solid rgba(255, 255, 255, 0.35);
    border-top-color: #ffffff;
    border-radius: 999px;
    animation: produitNmSpin 0.8s linear infinite;
}

.produit-nm-help-card {
    position: sticky;
    top: 92px;
}

.produit-nm-help-body {
    padding: 16px;
}

.produit-nm-help-body ul {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.produit-nm-help-body li {
    display: flex;
    gap: 10px;
    padding: 12px;
    border-radius: 18px;
    background: #f8fafc;
    color: #475569;
    font-size: 0.78rem;
    font-weight: 750;
    line-height: 1.45;
}

.produit-nm-help-body i {
    color: #7c3aed;
    flex: 0 0 auto;
    margin-top: 1px;
}

@keyframes produitNmSpin {
    to {
        transform: rotate(360deg);
    }
}

@media (max-width: 1200px) {
    .produit-nm-layout {
        grid-template-columns: 1fr;
    }

    .produit-nm-help-card {
        position: static;
    }
}

@media (max-width: 992px) {
    .produit-nm-summary-grid {
        grid-template-columns: repeat(2, minmax(170px, 1fr));
    }

    .produit-nm-lines-header {
        display: none;
    }

    .produit-nm-line {
        grid-template-columns: 34px 1fr;
    }

    .produit-nm-input-wrapper,
    .produit-nm-line-total,
    .produit-nm-delete-button {
        grid-column: 2;
    }

    .produit-nm-delete-button {
        width: 100%;
    }
}

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

    .produit-nm-card-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .produit-nm-back-button {
        width: 100%;
        justify-content: center;
    }
}

.app-home-page {
    padding-bottom: 42px;
}

.home-blocks-wrapper,
.home-dashboard {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.home-summary-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(180px, 1fr));
    gap: 14px;
}

.home-summary-card,
.home-modules-card {
    overflow: hidden;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 22px 55px rgba(15, 23, 42, 0.10);
    backdrop-filter: blur(12px);
}

.home-summary-card {
    display: flex;
    align-items: center;
    gap: 13px;
    min-height: 86px;
    padding: 15px 16px;
    box-shadow: 0 14px 34px rgba(15, 23, 42, 0.075);
}

.home-summary-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    border-radius: 16px;
    font-size: 1.1rem;
}

.home-summary-icon.summary-modules {
    color: #0875e1;
    background: #eaf4ff;
}

.home-summary-icon.summary-categories {
    color: #7c3aed;
    background: #f5f3ff;
}

.home-summary-card strong {
    display: block;
    color: #111827;
    font-size: 1.16rem;
    font-weight: 950;
    line-height: 1.15;
    text-transform: capitalize;
}

.home-summary-card small {
    display: block;
    margin-top: 5px;
    color: #64748b;
    font-size: 0.75rem;
    font-weight: 800;
}

.home-modules-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 18px 20px;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    background:
            radial-gradient(circle at top left, rgba(8, 117, 225, 0.12), transparent 34%),
            linear-gradient(135deg, #ffffff 0%, #f6faff 100%);
}

.home-kicker {
    display: block;
    margin-bottom: 3px;
    color: #0875e1;
    font-size: 0.70rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.075em;
}

.home-modules-header h2 {
    margin: 0;
    color: #111827;
    font-size: 1.10rem;
    font-weight: 950;
    letter-spacing: -0.025em;
}

.home-modules-header p {
    margin: 4px 0 0;
    color: #64748b;
    font-size: 0.80rem;
    font-weight: 700;
}

.home-count-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: max-content;
    padding: 8px 12px;
    border-radius: 999px;
    background: #eaf4ff;
    color: #0875e1;
    border: 1px solid rgba(8, 117, 225, 0.16);
    font-size: 0.76rem;
    font-weight: 950;
}

.home-toolbar {
    padding: 14px 16px 4px;
    background: rgba(248, 250, 252, 0.68);
}

.home-search-wrapper {
    position: relative;
    width: min(520px, 100%);
}

.home-search-wrapper i {
    position: absolute;
    left: 15px;
    top: 50%;
    color: #0875e1;
    transform: translateY(-50%);
    pointer-events: none;
}

.home-search-wrapper input {
    width: 100%;
    min-height: 42px;
    padding: 10px 44px 10px 42px;
    border: 1px solid rgba(8, 117, 225, 0.16);
    border-radius: 999px;
    background:
            linear-gradient(135deg, rgba(255, 255, 255, 0.96) 0%, rgba(246, 250, 255, 0.96) 100%);
    color: #111827;
    font-size: 0.84rem;
    font-weight: 700;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.055);
}

.home-search-wrapper input:focus {
    outline: none;
    border-color: #0875e1;
    background: #ffffff;
    box-shadow:
            0 0 0 4px rgba(8, 117, 225, 0.12),
            0 12px 24px rgba(15, 23, 42, 0.08);
}

.home-search-wrapper button {
    position: absolute;
    right: 9px;
    top: 50%;
    width: 27px;
    height: 27px;
    border: none;
    border-radius: 999px;
    background: rgba(15, 23, 42, 0.06);
    color: #64748b;
    transform: translateY(-50%);
}

.home-modules-body {
    padding: 18px;
}

.home-blocks-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(235px, 1fr));
    gap: 14px;
}

.home-block-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 210px;
    padding: 16px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 22px;
    background:
            radial-gradient(circle at top left, color-mix(in srgb, var(--module-color) 13%, transparent), transparent 42%),
            #ffffff;
    color: inherit;
    text-decoration: none;
    box-shadow: 0 14px 34px rgba(15, 23, 42, 0.075);
    transition:
            transform 0.18s ease,
            box-shadow 0.18s ease,
            border-color 0.18s ease;
}

.home-block-card:hover {
    transform: translateY(-4px);
    border-color: color-mix(in srgb, var(--module-color) 32%, transparent);
    color: inherit;
    text-decoration: none;
    box-shadow: 0 22px 48px rgba(15, 23, 42, 0.13);
}

.home-block-category {
    position: absolute;
    top: 12px;
    right: 12px;
    padding: 6px 9px;
    border-radius: 999px;
    background: var(--module-bg);
    color: var(--module-color);
    border: 1px solid color-mix(in srgb, var(--module-color) 16%, transparent);
    font-size: 0.66rem;
    font-weight: 950;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.home-block-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    margin-bottom: 14px;
    border-radius: 17px;
    background: var(--module-bg);
    color: var(--module-color);
    font-size: 1.25rem;
}

.home-block-content {
    flex: 1;
}

.home-block-content h3 {
    margin: 0 0 8px;
    color: #111827;
    font-size: 1rem;
    font-weight: 950;
    letter-spacing: -0.015em;
}

.home-block-content p {
    margin: 0;
    color: #64748b;
    font-size: 0.80rem;
    font-weight: 700;
    line-height: 1.45;
}

.home-block-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: 16px;
    padding-top: 13px;
    border-top: 1px solid rgba(15, 23, 42, 0.08);
    color: var(--module-color);
    font-size: 0.78rem;
    font-weight: 950;
}

.home-block-footer i {
    font-size: 1.15rem;
}

.home-loading-state,
.home-empty-state,
.home-alert {
    padding: 42px 20px;
    border: 1px dashed rgba(8, 117, 225, 0.24);
    border-radius: 24px;
    background:
            radial-gradient(circle at top, rgba(8, 117, 225, 0.08), transparent 36%),
            rgba(255, 255, 255, 0.92);
    text-align: center;
    box-shadow: 0 16px 38px rgba(15, 23, 42, 0.06);
}

.home-empty-state i {
    color: #94a3b8;
    font-size: 3rem;
    margin-bottom: 12px;
}

.home-empty-state h3 {
    margin: 0 0 8px;
    color: #111827;
    font-size: 1.05rem;
    font-weight: 950;
}

.home-empty-state p,
.home-loading-state p {
    margin: 0;
    color: #64748b;
    font-size: 0.86rem;
    font-weight: 700;
}

.home-loading-spinner {
    width: 36px;
    height: 36px;
    margin: 0 auto 14px;
    border: 3px solid rgba(8, 117, 225, 0.20);
    border-top-color: #0875e1;
    border-radius: 999px;
    animation: homeSpin 0.8s linear infinite;
}

.home-alert-error {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    border-color: rgba(220, 38, 38, 0.18);
    color: #dc2626;
    background: #fef2f2;
    font-weight: 850;
}

@keyframes homeSpin {
    to {
        transform: rotate(360deg);
    }
}

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

    .home-modules-header {
        align-items: flex-start;
        flex-direction: column;
    }
}

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

    .home-block-card {
        min-height: 180px;
    }
}

.blocs-pills-wrapper {
    margin: 10px 0 18px;
}

.blocs-pills-list {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.blocs-pill-link {
    text-decoration: none;
}

.blocs-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    padding: 7px 12px;
    border-radius: 999px;
    background: linear-gradient(135deg, #0875e1 0%, #0b8cff 100%);
    color: #ffffff;
    border: 1px solid rgba(8, 117, 225, 0.22);
    font-size: 0.74rem;
    font-weight: 900;
    box-shadow: 0 8px 18px rgba(8, 117, 225, 0.16);
    transition:
            transform 0.18s ease,
            box-shadow 0.18s ease,
            background 0.18s ease;
}

.blocs-pill:hover {
    transform: translateY(-1px);
    color: #ffffff;
    box-shadow: 0 12px 24px rgba(8, 117, 225, 0.22);
}

.avoir-group-items {
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-width: 420px;
}

.avoir-group-item {
    display: grid;
    grid-template-columns: minmax(190px, 1fr) auto;
    gap: 12px;
    align-items: center;
    padding: 9px 10px;
    border: 1px solid rgba(15, 23, 42, 0.06);
    border-radius: 16px;
    background: rgba(248, 250, 252, 0.86);
    transition:
            background 0.18s ease,
            border-color 0.18s ease,
            box-shadow 0.18s ease;
}

.avoir-group-item:hover,
.avoir-group-item.is-selected {
    background: #ffffff;
    border-color: rgba(5, 150, 105, 0.22);
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.075);
}

.avoir-group-item-main {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

.avoir-group-item-title {
    display: block;
    color: #111827;
    font-size: 0.82rem;
    font-weight: 950;
    line-height: 1.2;
}

.avoir-group-item-subtitle {
    display: block;
    margin-top: 3px;
    color: #64748b;
    font-size: 0.70rem;
    font-weight: 750;
}

.avoir-group-item-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 9px;
}

.avoir-group-item-actions .order-amount-main {
    font-size: 0.82rem;
}

.avoir-group-item-actions .order-status-select {
    min-width: 138px;
    padding-top: 7px;
    padding-bottom: 7px;
}

@media (max-width: 992px) {
    .avoir-group-item {
        grid-template-columns: 1fr;
    }

    .avoir-group-item-actions {
        justify-content: flex-start;
        flex-wrap: wrap;
        padding-left: 44px;
    }
}

.commande-weight-badge,
.mercuriale-weight-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 7px 11px;
    border-radius: 999px;
    background: #f5f3ff;
    color: #7c3aed;
    border: 1px solid rgba(124, 58, 237, 0.14);
    font-size: 0.74rem;
    font-weight: 900;
    white-space: nowrap;
}

.produit-nm-line.produit-nm-line-v2 {
    display: grid;
    grid-template-columns:
        42px
        minmax(150px, 180px)
        minmax(320px, 2.2fr)
        minmax(110px, 125px)
        minmax(130px, 145px)
        minmax(130px, 145px)
        minmax(130px, 145px)
        44px;
    align-items: center;
    gap: 10px;
}

.produit-nm-line.produit-nm-line-v2.is-produit-achete {
    grid-template-columns:
        42px
        minmax(150px, 180px)
        minmax(380px, 2.6fr)
        minmax(110px, 125px)
        minmax(125px, 140px)
        minmax(125px, 140px)
        44px;
}

.produit-nm-type-wrapper select {
    width: 100%;
    min-height: 38px;
    padding: 8px 34px 8px 38px;
    border: none;
    border-radius: 999px;
    background:
            linear-gradient(45deg, transparent 50%, currentColor 50%) right 15px center / 6px 6px no-repeat,
            linear-gradient(135deg, #f5f3ff 0%, #ffffff 100%);
    color: #4c1d95;
    font-size: 0.78rem;
    font-weight: 900;
    appearance: none;
    cursor: pointer;
}

.produit-nm-type-wrapper select:focus {
    outline: none;
}

.produit-nm-line-v2 .produit-nm-input-wrapper {
    min-width: 0;
}

.produit-nm-line-v2 .produit-nm-input-wrapper input,
.produit-nm-line-v2 .produit-nm-input-wrapper select {
    min-width: 0;
}

.produit-nm-denomination-wrapper input {
    font-size: 0.9rem;
    font-weight: 850;
}

.produit-nm-line-v2 .produit-nm-line-total {
    min-width: 0;
}

.stock-denomination-cell {
    min-width: 320px;
    max-width: 560px;
    white-space: normal;
    line-height: 1.35;
    font-size: 0.92rem;
}

.stock-preparation-denomination-header {
    min-width: 360px;
}

.stock-preparation-denomination-cell {
    min-width: 360px;
    max-width: 640px;
    white-space: normal;
    line-height: 1.35;
    font-size: 0.94rem;
    font-weight: 900;
}

@media (max-width: 1280px) {
    .produit-nm-line.produit-nm-line-v2,
    .produit-nm-line.produit-nm-line-v2.is-produit-achete {
        grid-template-columns: 42px repeat(2, minmax(0, 1fr));
    }

    .produit-nm-line-v2 .produit-nm-line-index {
        grid-row: span 3;
        align-self: start;
    }

    .produit-nm-line-v2 .denomination {
        grid-column: span 2;
    }

    .produit-nm-line-v2 .produit-nm-delete-button {
        width: 100%;
    }
}

@media (max-width: 992px) {
    .stock-denomination-cell {
        min-width: 240px;
        max-width: none;
    }

    .stock-preparation-denomination-cell {
        min-width: 260px;
        max-width: none;
    }

    .stock-preparation-denomination-header {
        min-width: 260px;
    }
}

@media (max-width: 768px) {
    .produit-nm-line.produit-nm-line-v2,
    .produit-nm-line.produit-nm-line-v2.is-produit-achete {
        grid-template-columns: 34px 1fr;
    }

    .produit-nm-line-v2 .produit-nm-line-index {
        grid-row: auto;
        align-self: center;
    }

    .produit-nm-line-v2 .produit-nm-input-wrapper,
    .produit-nm-line-v2 .produit-nm-line-total,
    .produit-nm-line-v2 .produit-nm-delete-button {
        grid-column: 2;
    }

    .produit-nm-line-v2 .denomination {
        grid-column: 2;
    }

    .produit-nm-line-v2 .produit-nm-delete-button {
        width: 100%;
    }
}

/*!****************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./vendor/symfony/ux-toggle-password/assets/dist/style.min.css ***!
  \****************************************************************************************************************************************************/
.toggle-password-container{position:relative}.toggle-password-icon{width:1rem;height:1rem}.toggle-password-button{background-color:#0000;border:none;flex-direction:row;place-items:center;column-gap:.25rem;height:1rem;font-size:.875rem;line-height:1.25rem;display:flex;position:absolute;top:-1.25rem;right:.5rem}

/*!*************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/React/Avoir/AvoirForm.css ***!
  \*************************************************************************************************************************/
.avoir-form-container {
    min-height: 100vh;
    background-color: #f8f9fa;
}

.avoir-form .section-form {
    background: #ffffff;
    border-radius: 8px;
    padding: 25px;
    margin-bottom: 25px;
    border-left: 4px solid #007bff;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    transition: box-shadow 0.3s ease;
}

.avoir-form .section-form:hover {
    box-shadow: 0 4px 8px rgba(0,0,0,0.15);
}

.avoir-form .section-form h3 {
    color: #495057;
    margin-bottom: 20px;
    font-size: 1.3rem;
    border-bottom: 2px solid #e9ecef;
    padding-bottom: 10px;
    font-weight: 600;
}

.avoir-form .form-group {
    margin-bottom: 1.5rem;
}

.avoir-form .form-group label {
    font-weight: 600;
    color: #495057;
    margin-bottom: 0.5rem;
    display: block;
}

.avoir-form .form-group label.required::after {
    content: " *";
    color: #dc3545;
}

.avoir-form .form-control {
    border: 2px solid #e9ecef;
    border-radius: 6px;
    padding: 10px 12px;
    font-size: 14px;
    transition: all 0.15s ease-in-out;
}

.avoir-form .form-control:focus {
    border-color: #007bff;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
    outline: none;
}

.avoir-form .form-control.is-invalid {
    border-color: #dc3545;
}

.avoir-form .form-control.is-invalid:focus {
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.avoir-form .invalid-feedback {
    display: block;
    width: 100%;
    margin-top: 0.25rem;
    font-size: 0.875em;
    color: #dc3545;
}

.avoir-form .btn {
    padding: 12px 30px;
    border-radius: 6px;
    font-weight: 600;
    font-size: 16px;
    border: none;
    cursor: pointer;
    transition: all 0.3s ease;
    min-width: 140px;
}

.avoir-form .btn-primary {
    background: linear-gradient(135deg, #007bff 0%, #0056b3 100%);
    color: white;
}

.avoir-form .btn-primary:hover:not(:disabled) {
    background: linear-gradient(135deg, #0056b3 0%, #004085 100%);
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0, 123, 255, 0.3);
}

.avoir-form .btn-secondary {
    background: linear-gradient(135deg, #6c757d 0%, #545b62 100%);
    color: white;
}

.avoir-form .btn-secondary:hover:not(:disabled) {
    background: linear-gradient(135deg, #545b62 0%, #3d4348 100%);
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(108, 117, 125, 0.3);
}

.avoir-form .btn:disabled {
    opacity: 0.6;
    cursor: not-allowed;
    transform: none !important;
}

.avoir-form .alert {
    border-radius: 8px;
    border: none;
    padding: 15px 20px;
    font-weight: 500;
}

.avoir-form .alert-success {
    background: linear-gradient(135deg, #d4edda 0%, #c3e6cb 100%);
    color: #155724;
    border-left: 4px solid #28a745;
}

.avoir-form .alert-danger {
    background: linear-gradient(135deg, #f8d7da 0%, #f1b0b7 100%);
    color: #721c24;
    border-left: 4px solid #dc3545;
}

.avoir-form .breadcrumb {
    background-color: transparent;
    padding: 0;
    margin-bottom: 2rem;
}

.avoir-form .breadcrumb-item a {
    color: #007bff;
    text-decoration: none;
}

.avoir-form .breadcrumb-item a:hover {
    color: #0056b3;
    text-decoration: underline;
}

.avoir-form .breadcrumb-item.active {
    color: #6c757d;
}

.avoir-form .list-group-item {
    border: 1px solid #e9ecef;
    border-radius: 4px;
    margin-bottom: 5px;
}

.avoir-form .badge {
    font-size: 0.75em;
}

/* Responsive */
@media (max-width: 768px) {
    .avoir-form .section-form {
        padding: 15px;
        margin-bottom: 20px;
    }

    .avoir-form .section-form h3 {
        font-size: 1.1rem;
    }

    .avoir-form .btn {
        padding: 10px 20px;
        font-size: 14px;
        min-width: 120px;
    }

    .avoir-form .container {
        padding: 0 15px;
    }
}

/* Animation de chargement */
@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.avoir-form .spinner-border {
    animation: spin 0.75s linear infinite;
    display: inline-block;
}

/*!*************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/React/Releve/components/UI/Button.css ***!
  \*************************************************************************************************************************************/
/* components/UI/Button.css */
.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-family: inherit;
    font-weight: 500;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
}

.btn:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Variantes */
.btn-default {
    background: #f3f4f6;
    color: #374151;
}

.btn-default:hover:not(:disabled) {
    background: #e5e7eb;
}

.btn-primary {
    background: #3b82f6;
    color: white;
}

.btn-primary:hover:not(:disabled) {
    background: #2563eb;
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.2);
}

.btn-secondary {
    background: #10b981;
    color: white;
}

.btn-secondary:hover:not(:disabled) {
    background: #059669;
}

/* Tailles */
.btn-small {
    padding: 6px 12px;
    font-size: 0.875rem;
}

.btn-medium {
    padding: 10px 20px;
    font-size: 0.875rem;
}

.btn-large {
    padding: 12px 24px;
    font-size: 1rem;
}

/* État loading */
.btn-loading {
    position: relative;
}

.btn-spinner {
    animation: spin 1s linear infinite;
}

@keyframes spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

/* Icon */
.btn-icon {
    flex-shrink: 0;
}

/*!*********************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/React/Releve/components/Calendar/Calendar.css ***!
  \*********************************************************************************************************************************************/
/* components/Calendar/CalendarTracabilite.css */
.calendar {
    background: white;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1);
    height: fit-content;
}

.calendar-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 24px;
}

.calendar-title {
    font-size: 1.25rem;
    font-weight: 600;
    color: #1f2937;
    margin: 0;
}

.calendar-controls {
    display: flex;
    gap: 8px;
}

.calendar-weekdays {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 8px;
    margin-bottom: 16px;
}

.calendar-weekday {
    text-align: center;
    font-size: 0.875rem;
    font-weight: 500;
    color: #6b7280;
    padding: 8px 0;
}

.calendar-grid {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 8px;
}

.calendar-day {
    aspect-ratio: 1;
    border: none;
    border-radius: 8px;
    background: transparent;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.calendar-day-current {
    color: #374151;
}

.calendar-day-other {
    color: #9ca3af;
    opacity: 0.5;
    cursor: default;
}

.calendar-day-current:hover:not(.calendar-day-selected) {
    background: #f3f4f6;
}

.calendar-day-today {
    background: #eff6ff;
    border: 1px solid #bfdbfe;
    color: #1d4ed8;
}

.calendar-day-selected {
    background: #3b82f6;
    color: white;
    font-weight: 600;
}

.day-number {
    z-index: 1;
}

.today-indicator {
    position: absolute;
    top: 4px;
    right: 4px;
    width: 6px;
    height: 6px;
    background: #3b82f6;
    border-radius: 50%;
}

.data-indicator {
    position: absolute;
    bottom: 4px;
    left: 50%;
    transform: translateX(-50%);
    width: 6px;
    height: 6px;
    background: #10b981;
    border-radius: 50%;
}

.record-indicator {
    position: absolute;
    bottom: 4px;
    left: 50%;
    transform: translateX(-50%);
    width: 4px;
    height: 4px;
    background: #9ca3af;
    border-radius: 50%;
    border: 1px solid #e5e7eb;
}

.calendar-legend {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 24px;
    padding-top: 24px;
    border-top: 1px solid #e5e7eb;
}

.legend-item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.75rem;
    color: #6b7280;
}

.legend-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
}

.legend-dot.selected {
    background: #3b82f6;
}

.legend-dot.has-data {
    background: #10b981;
}

.legend-dot.has-record {
    background: #9ca3af;
    border: 1px solid #e5e7eb;
}

/*!***********************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/React/Releve/components/FrigoCard/FrigoCard.css ***!
  \***********************************************************************************************************************************************/
/* components/FrigoCard/FrigoCard.css */
.frigo-card {
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 16px;
    transition: all 0.2s ease;
    position: relative;
}

.frigo-card:hover {
    border-color: #3b82f6;
    box-shadow: 0 4px 12px rgba(59, 130, 246, 0.1);
}

.frigo-card-new {
    border-color: #3b82f6;
    background: linear-gradient(135deg, #f8fafc 0%, #f0f9ff 100%);
}

.frigo-card-critical {
    border-color: #ef4444;
    background: linear-gradient(135deg, #fef2f2 0%, #fee2e2 100%);
}

.frigo-card-compact {
    padding: 12px;
}

.frigo-card-readonly {
    opacity: 0.9;
    background: #f9fafb;
}

.readonly-overlay {
    position: absolute;
    top: 8px;
    right: 8px;
    background: rgba(255, 255, 255, 0.9);
    border-radius: 50%;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #6b7280;
    z-index: 2;
}

.frigo-card-compact .readonly-overlay {
    top: 4px;
    right: 4px;
    width: 20px;
    height: 20px;
}

.frigo-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 12px;
}

.frigo-card-compact .frigo-header {
    margin-bottom: 8px;
}

.frigo-title {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1;
    min-width: 0;
}

.frigo-icon {
    color: #3b82f6;
    flex-shrink: 0;
}

.frigo-card-critical .frigo-icon {
    color: #ef4444;
}

.frigo-card-compact .frigo-icon {
    width: 16px;
    height: 16px;
}

.frigo-name {
    font-size: 1rem;
    font-weight: 600;
    color: #1f2937;
    margin: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.frigo-card-compact .frigo-name {
    font-size: 0.875rem;
}

.frigo-name-input {
    font-size: 1rem;
    font-weight: 600;
    color: #1f2937;
    background: transparent;
    border: none;
    border-bottom: 2px solid #3b82f6;
    padding: 4px 0;
    outline: none;
    width: 100%;
    max-width: 200px;
}

.frigo-card-compact .frigo-name-input {
    font-size: 0.875rem;
    max-width: 150px;
}

.frigo-name-input-compact {
    max-width: 120px !important;
}

.frigo-name-input:focus {
    border-color: #1d4ed8;
}

.frigo-name-input-error {
    border-color: #ef4444;
}

.frigo-header-right {
    display: flex;
    gap: 4px;
}

.frigo-badge {
    padding: 2px 8px;
    background: #dbeafe;
    color: #1d4ed8;
    border-radius: 9999px;
    font-size: 0.75rem;
    font-weight: 500;
    white-space: nowrap;
}

.frigo-card-compact .frigo-badge {
    font-size: 0.625rem;
    padding: 1px 6px;
}

.frigo-badge.critical {
    background: #fee2e2;
    color: #dc2626;
}

.frigo-badge.existing {
    background: #d1fae5;
    color: #065f46;
}

.frigo-fields {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-bottom: 8px;
}

.frigo-card-compact .frigo-fields {
    gap: 8px;
}

.temperature-field {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.field-label {
    font-size: 0.75rem;
    font-weight: 500;
    color: #6b7280;
    text-transform: uppercase;
}

.temperature-input-container {
    position: relative;
    display: flex;
    align-items: center;
}

.temperature-input {
    width: 100%;
    padding: 8px 28px 8px 8px;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    font-size: 0.875rem;
    color: #1f2937;
    background: white;
    transition: all 0.2s ease;
    font-family: inherit;
    text-align: right;
}

.frigo-card-compact .temperature-input {
    padding: 6px 24px 6px 6px;
    font-size: 0.75rem;
}

.temperature-input:focus {
    outline: none;
    border-color: #3b82f6;
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.1);
}

.temperature-input-error {
    border-color: #ef4444;
    background: #fef2f2;
}

.temperature-input-warning {
    border-color: #f59e0b;
    background: #fffbeb;
}

.temperature-input-readonly {
    background: #f3f4f6 !important;
    cursor: not-allowed !important;
    color: #6b7280 !important;
    border-color: #e5e7eb !important;
}

.temperature-input:disabled {
    background: #f9fafb;
    cursor: not-allowed;
    opacity: 0.7;
}

.temperature-unit {
    position: absolute;
    right: 8px;
    font-size: 0.75rem;
    color: #6b7280;
    pointer-events: none;
}

.frigo-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid #e5e7eb;
}

.frigo-status {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 0.75rem;
    color: #059669;
}

.status-icon {
    color: #10b981;
}

.frigo-card-compact .frigo-status {
    font-size: 0.625rem;
}

.frigo-readonly-notice {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 0.625rem;
    color: #6b7280;
    padding: 2px 6px;
    background: #f3f4f6;
    border-radius: 4px;
}

/*!***************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/React/Releve/components/Stats/Stats.css ***!
  \***************************************************************************************************************************************/
/* components/Stats/Stats.css */
.stats-container {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-top: 24px;
}

@media (max-width: 768px) {
    .stats-container {
        grid-template-columns: 1fr;
    }
}

.stats-card {
    background: white;
    border-radius: var(--radius-lg);
    padding: 20px;
    box-shadow: var(--shadow-md);
    display: flex;
    align-items: center;
    gap: 16px;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.stats-card:hover {
    box-shadow: var(--shadow-lg);
}

.stats-icon {
    width: 56px;
    height: 56px;
    border-radius: var(--radius-lg);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.stats-icon.today {
    background: #dbeafe;
    color: #1d4ed8;
}

.stats-icon.completion {
    background: #d1fae5;
    color: #059669;
}

.stats-icon.temperature {
    background: #fef3c7;
    color: #d97706;
}

.stats-content {
    flex: 1;
    min-width: 0;
}

.stats-title {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-secondary);
    margin: 0 0 4px 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.stats-value {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0;
}

.stats-completion {
    display: flex;
    align-items: baseline;
    gap: 4px;
    margin-bottom: 4px;
}

.completion-value {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-primary);
}

.completion-percent {
    font-size: 0.875rem;
    color: var(--text-secondary);
    font-weight: 500;
}

.completion-badge {
    display: inline-block;
    padding: 2px 8px;
    background: #10b981;
    color: white;
    border-radius: 9999px;
    font-size: 0.75rem;
    font-weight: 500;
}

.stats-temp {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 4px;
}

.temp-value {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-primary);
}

.temp-trend {
    margin-top: 2px;
}

.temp-trend.up {
    color: #ef4444;
}

.temp-trend.down {
    color: #3b82f6;
}

.critical-warning {
    font-size: 0.75rem;
    color: var(--danger);
    font-weight: 500;
    background: #fef2f2;
    padding: 2px 8px;
    border-radius: var(--radius-sm);
    display: inline-block;
}

/*!*********************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/React/Releve/components/UI/LoadingSpinner.css ***!
  \*********************************************************************************************************************************************/
/* components/UI/LoadingSpinner.css */
.spinner {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.spinner-circle {
    border-radius: 50%;
    border: 2px solid transparent;
    border-top-color: #3b82f6;
    animation: spin 1s linear infinite;
}

.spinner-small .spinner-circle {
    width: 20px;
    height: 20px;
    border-width: 2px;
}

.spinner-medium .spinner-circle {
    width: 32px;
    height: 32px;
    border-width: 3px;
}

.spinner-large .spinner-circle {
    width: 48px;
    height: 48px;
    border-width: 4px;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/*!************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/React/Releve/components/UI/Alert.css ***!
  \************************************************************************************************************************************/
/* components/UI/Alert.css */
.alert {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 16px;
    border-radius: var(--radius-md);
    margin-bottom: 20px;
    border: 1px solid transparent;
}

.alert-info {
    background: #eff6ff;
    border-color: #bfdbfe;
    color: #1e40af;
}

.alert-success {
    background: #d1fae5;
    border-color: #a7f3d0;
    color: #065f46;
}

.alert-warning {
    background: #fef3c7;
    border-color: #fde68a;
    color: #92400e;
}

.alert-error {
    background: #fee2e2;
    border-color: #fecaca;
    color: #991b1b;
}

.alert-icon {
    flex-shrink: 0;
    margin-top: 2px;
}

.alert-content {
    flex: 1;
}

.alert-title {
    font-size: 0.875rem;
    font-weight: 600;
    margin: 0 0 4px 0;
}

.alert-message {
    font-size: 0.875rem;
    margin: 0;
    line-height: 1.5;
}

.alert-close {
    background: none;
    border: none;
    padding: 4px;
    cursor: pointer;
    color: inherit;
    opacity: 0.7;
    transition: opacity 0.2s ease;
    flex-shrink: 0;
    border-radius: var(--radius-sm);
}

.alert-close:hover {
    opacity: 1;
    background: rgba(0, 0, 0, 0.1);
}

.alert-close:focus {
    outline: 2px solid currentColor;
    outline-offset: 2px;
}

/*!**************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/React/Releve/index.css (1) ***!
  \**************************************************************************************************************************/
:root {
    --primary: #3b82f6;
    --primary-hover: #2563eb;
    --secondary: #10b981;
    --danger: #ef4444;
    --warning: #f59e0b;
    --background: #f9fafb;
    --surface: #ffffff;
    --text-primary: #1f2937;
    --text-secondary: #6b7280;
    --text-tertiary: #9ca3af;
    --border: #e5e7eb;
    --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    --shadow-lg: 0 10px 25px -5px rgba(0, 0, 0, 0.1);
    --radius-sm: 4px;
    --radius-md: 8px;
    --radius-lg: 12px;
    --radius-xl: 16px;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    font-size: 16px;
}

body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    background-color: var(--background);
    color: var(--text-primary);
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    min-height: 100vh;
}

.app {
    min-height: 100vh;
    padding: 0 24px 24px;
    margin: 0 auto;
}

/* Layout */
.app-grid {
    display: grid;
    grid-template-columns: 380px 1fr;
    gap: 32px;
    margin-top: 32px;
}

@media (max-width: 1024px) {
    .app {
        padding: 0 12px 12px;
    }

    .app-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    /* En 1 colonne, on enlève le sticky pour éviter que le calendrier recouvre le contenu */
    .calendar-section {
        position: static;
        top: auto;
        align-self: auto;
    }
}

/* Header */
.app-header {
    margin-top: 0;
}

.header-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 16px;
}

.app-title {
    font-size: 2rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 12px;
}

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

.app-subtitle {
    font-size: 1rem;
    color: var(--text-secondary);
    margin-top: 4px;
}

/* Date indicator */
.date-indicator {
    flex-shrink: 0;
}

.date-display {
    display: flex;
    align-items: center;
    gap: 8px;
}

.date-icon {
    color: var(--primary);
}

.current-date {
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.today-badge {
    background: var(--primary);
    color: white;
    padding: 2px 8px;
    border-radius: 9999px;
    font-size: 0.75rem;
    font-weight: 500;
}

.past-date-notice {
    color: var(--text-secondary);
    font-size: 0.875rem;
    font-weight: 400;
}

/* Content */
.content-card {
    background: var(--surface);
    border-radius: var(--radius-xl);
    padding: 32px;
    box-shadow: var(--shadow-lg);
}

.content-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 32px;
    flex-wrap: wrap;
    gap: 16px;
}

.content-title {
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 4px;
}

.content-subtitle {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.readonly-notice {
    color: var(--text-secondary);
    font-style: italic;
}

.header-actions {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}

.unsaved-indicator {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 12px;
    background: #fef3c7;
    color: #92400e;
    border-radius: var(--radius-md);
    font-size: 0.875rem;
}

/* Grid */
.frigos-grid.compact {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 12px;
    margin-top: 24px;
}

@media (max-width: 768px) {
    .frigos-grid.compact {
        grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    }
}

/* Add section */
.add-section {
    margin-bottom: 24px;
}

.warning-text {
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin-top: 8px;
    display: flex;
    align-items: center;
    gap: 4px;
}

.warning-icon {
    color: var(--danger);
}

/* Empty state */
.empty-state {
    text-align: center;
    padding: 48px 24px;
    background: var(--surface);
    border: 2px dashed var(--border);
    border-radius: var(--radius-lg);
    margin-top: 24px;
}

.empty-icon {
    color: var(--text-tertiary);
    margin-bottom: 16px;
}

.empty-title {
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 8px;
}

.empty-description {
    color: var(--text-secondary);
    margin-bottom: 24px;
}

/* Loading */
.loading-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 64px;
    gap: 16px;
}

/* Calendar section */
.calendar-section {
    position: sticky;
    top: 20px;
    align-self: flex-start;
}

@media (max-width: 1024px) {
    .app-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .calendar-section {
        position: static !important;
        top: auto !important;
        align-self: auto !important;
        width: 100%;
        z-index: auto !important;
    }

    .content-section {
        position: relative;
        z-index: 0;
    }
}

.calendar-header-with-refresh {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.calendar-actions {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 8px;
}

.preloading-indicator {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.75rem;
    color: var(--text-secondary);
}

/* Utilities */
.text-center {
    text-align: center;
}

.mt-4 {
    margin-top: 1rem;
}

.mb-4 {
    margin-bottom: 1rem;
}

/* Responsive */
@media (max-width: 640px) {
    .header-content {
        flex-direction: column;
        align-items: stretch;
    }

    .app-title {
        font-size: 1.5rem;
    }

    .current-date {
        font-size: 1rem;
    }

    .content-header {
        flex-direction: column;
    }

    .header-actions {
        width: 100%;
        justify-content: flex-end;
    }
}

/* Focus styles */
*:focus {
    outline: 2px solid var(--primary);
    outline-offset: 2px;
}

*:focus:not(:focus-visible) {
    outline: none;
}

/* Button disabled */
.btn:disabled {
    opacity: 0.5;
    cursor: not-allowed;
    transform: none !important;
    box-shadow: none !important;
}

.releve-premium-header {
    margin-top: 0;
    padding: 20px 22px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 24px;
    background:
            radial-gradient(circle at top left, rgba(14, 165, 233, 0.15), transparent 34%),
            linear-gradient(135deg, rgba(255, 255, 255, 0.97) 0%, rgba(240, 249, 255, 0.97) 100%);
    box-shadow: 0 18px 45px rgba(15, 23, 42, 0.08);
    backdrop-filter: blur(12px);
}

.releve-premium-header .header-content {
    align-items: center;
    gap: 18px;
}

.releve-header-main {
    display: flex;
    align-items: center;
    gap: 15px;
    min-width: 0;
}

.releve-header-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 54px;
    height: 54px;
    flex: 0 0 54px;
    border-radius: 18px;
    background:
            radial-gradient(circle at top left, rgba(255, 255, 255, 0.34), transparent 45%),
            linear-gradient(135deg, #0284c7 0%, #0ea5e9 100%);
    color: #ffffff;
    box-shadow: 0 14px 28px rgba(14, 165, 233, 0.24);
}

.releve-header-kicker {
    margin-bottom: 3px;
    color: #0284c7;
    font-size: 0.72rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.releve-premium-header .app-title {
    margin: 0;
    color: #111827;
    font-size: 1.55rem;
    font-weight: 950;
    letter-spacing: -0.035em;
    line-height: 1.15;
}

.releve-premium-header .app-subtitle {
    margin-top: 5px;
    color: #64748b;
    font-size: 0.88rem;
    font-weight: 650;
}

.releve-header-side {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    flex-wrap: wrap;
}

.releve-premium-header .date-indicator {
    padding: 10px 13px;
    border: 1px solid rgba(14, 165, 233, 0.14);
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.82);
    box-shadow: 0 10px 22px rgba(15, 23, 42, 0.06);
}

.releve-premium-header .date-display {
    align-items: flex-start;
    gap: 9px;
}

.releve-premium-header .date-icon {
    margin-top: 2px;
    color: #0284c7;
}

.releve-date-label {
    display: block;
    margin-bottom: 2px;
    color: #64748b;
    font-size: 0.68rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.releve-premium-header .current-date {
    margin: 0;
    color: #111827;
    font-size: 0.95rem;
    font-weight: 900;
    line-height: 1.25;
}

.releve-date-badges {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    margin-top: 8px;
}

.releve-premium-header .today-badge,
.releve-premium-header .past-date-notice,
.releve-unsaved-badge {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 9px;
    border-radius: 999px;
    font-size: 0.70rem;
    font-weight: 900;
    line-height: 1;
}

.releve-premium-header .today-badge {
    background: #ecfdf5;
    color: #047857;
    border: 1px solid rgba(4, 120, 87, 0.16);
}

.releve-premium-header .past-date-notice {
    background: #f8fafc;
    color: #64748b;
    border: 1px solid rgba(15, 23, 42, 0.08);
    font-style: normal;
}

.releve-unsaved-badge {
    background: #fffbeb;
    color: #b45309;
    border: 1px solid rgba(180, 83, 9, 0.16);
}

.releve-premium-header .btn,
.releve-premium-header button {
    border-radius: 999px;
    font-weight: 900;
}

.releve-premium-header button {
    box-shadow: 0 10px 22px rgba(15, 23, 42, 0.08);
}

/* Harmonisation des cartes principales de la page relevés */
.app .content-card {
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 22px 55px rgba(15, 23, 42, 0.10);
}

.app .content-header {
    padding-bottom: 18px;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    margin-bottom: 22px;
}

.app .content-title {
    color: #111827;
    font-weight: 950;
    letter-spacing: -0.02em;
}

.app .content-subtitle {
    color: #64748b;
    font-weight: 650;
}

.app .unsaved-indicator {
    border: 1px solid rgba(180, 83, 9, 0.16);
    border-radius: 999px;
    background: #fffbeb;
    color: #b45309;
    font-weight: 900;
}

.app .empty-state {
    border-radius: 24px;
    background:
            radial-gradient(circle at top, rgba(14, 165, 233, 0.08), transparent 36%),
            rgba(255, 255, 255, 0.92);
}

@media (max-width: 1024px) {
    .releve-premium-header .header-content {
        align-items: stretch;
        flex-direction: column;
    }

    .releve-header-side {
        justify-content: flex-start;
    }
}

@media (max-width: 640px) {
    .releve-premium-header {
        padding: 16px;
        border-radius: 20px;
    }

    .releve-header-main {
        align-items: flex-start;
    }

    .releve-header-icon {
        width: 46px;
        height: 46px;
        flex-basis: 46px;
        border-radius: 16px;
    }

    .releve-premium-header .app-title {
        font-size: 1.28rem;
    }

    .releve-header-side {
        align-items: stretch;
        flex-direction: column;
    }

    .releve-premium-header .date-indicator {
        width: 100%;
    }
}

.app .releve-premium-header,
.releve-premium-header {
    margin-top: 0 !important;
    padding: 20px 22px !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    border-radius: 24px !important;
    background:
            radial-gradient(circle at top left, rgba(14, 165, 233, 0.15), transparent 34%),
            linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(240, 249, 255, 0.98) 100%) !important;
    color: #111827 !important;
    box-shadow: 0 18px 45px rgba(15, 23, 42, 0.08) !important;
    backdrop-filter: blur(12px);
}

.app .releve-premium-header *,
.releve-premium-header * {
    color: inherit;
}

.app .releve-premium-header .app-title,
.releve-premium-header .app-title {
    color: #111827 !important;
}

.app .releve-premium-header .app-subtitle,
.releve-premium-header .app-subtitle {
    color: #64748b !important;
}

.app .releve-premium-header .releve-header-kicker,
.releve-premium-header .releve-header-kicker {
    color: #0284c7 !important;
}

.app .releve-premium-header .releve-header-icon,
.releve-premium-header .releve-header-icon {
    color: #ffffff !important;
    background:
            radial-gradient(circle at top left, rgba(255, 255, 255, 0.34), transparent 45%),
            linear-gradient(135deg, #0284c7 0%, #0ea5e9 100%) !important;
}

.app .releve-premium-header .releve-header-icon svg,
.releve-premium-header .releve-header-icon svg {
    color: #ffffff !important;
    stroke: #ffffff !important;
}

.app .releve-premium-header .date-indicator,
.releve-premium-header .date-indicator {
    background: rgba(255, 255, 255, 0.88) !important;
    border: 1px solid rgba(14, 165, 233, 0.14) !important;
    color: #111827 !important;
}

.app .releve-premium-header .date-icon,
.releve-premium-header .date-icon {
    color: #0284c7 !important;
    stroke: #0284c7 !important;
}

.app .releve-premium-header .releve-date-label,
.releve-premium-header .releve-date-label {
    color: #64748b !important;
}

.app .releve-premium-header .current-date,
.releve-premium-header .current-date {
    color: #111827 !important;
}

.app .releve-premium-header .today-badge,
.releve-premium-header .today-badge {
    background: #ecfdf5 !important;
    color: #047857 !important;
    border: 1px solid rgba(4, 120, 87, 0.16) !important;
}

.app .releve-premium-header .past-date-notice,
.releve-premium-header .past-date-notice {
    background: #f8fafc !important;
    color: #64748b !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
}

.app .releve-premium-header .releve-unsaved-badge,
.releve-premium-header .releve-unsaved-badge {
    background: #fffbeb !important;
    color: #b45309 !important;
    border: 1px solid rgba(180, 83, 9, 0.16) !important;
}

.app .releve-premium-header .releve-unsaved-badge svg,
.releve-premium-header .releve-unsaved-badge svg {
    color: #b45309 !important;
    stroke: #b45309 !important;
}


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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QUVJLGdEQUFnRDtJQUNoRCxxREFBcUQ7SUFDckQseUJBQXlCO0FBQzdCOztBQUVBOztJQUVJLHlCQUF5QjtJQUN6QiwwQkFBMEI7QUFDOUI7O0FBRUE7O0lBRUkseUJBQXlCO0FBQzdCOztBQUVBOztJQUVJLHlCQUF5QjtBQUM3Qjs7QUFFQTs7SUFFSSw4QkFBOEI7SUFDOUIseUJBQXlCO0lBQ3pCLG1EQUFtRDtBQUN2RDs7QUFFQTs7SUFFSSw4QkFBOEI7SUFDOUIseUJBQXlCO0lBQ3pCLG1EQUFtRDtBQUN2RDs7QUFFQTs7SUFFSSw4QkFBOEI7SUFDOUIseUJBQXlCO0lBQ3pCLG1EQUFtRDtBQUN2RDs7QUFFQTs7SUFFSSx5QkFBeUI7SUFDekIsMEJBQTBCO0FBQzlCIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9hcHAuY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvY29tbWFuZGUuY3NzIiwid2VicGFjazovLy8uL3ZlbmRvci9zeW1mb255L3V4LXRvZ2dsZS1wYXNzd29yZC9hc3NldHMvZGlzdC9zdHlsZS5taW4uY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9SZWFjdC9Bdm9pci9Bdm9pckZvcm0uY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9SZWFjdC9SZWxldmUvY29tcG9uZW50cy9VSS9CdXR0b24uY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9SZWFjdC9SZWxldmUvY29tcG9uZW50cy9DYWxlbmRhci9DYWxlbmRhci5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL1JlYWN0L1JlbGV2ZS9jb21wb25lbnRzL0ZyaWdvQ2FyZC9Gcmlnb0NhcmQuY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9SZWFjdC9SZWxldmUvY29tcG9uZW50cy9TdGF0cy9TdGF0cy5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL1JlYWN0L1JlbGV2ZS9jb21wb25lbnRzL1VJL0xvYWRpbmdTcGlubmVyLmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvUmVhY3QvUmVsZXZlL2NvbXBvbmVudHMvVUkvQWxlcnQuY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9SZWFjdC9SZWxldmUvaW5kZXguY3NzIl0sInNvdXJjZXNDb250ZW50IjpbImh0bWwge1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG59XG5cbmJvZHkge1xuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlc21va2U7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKkJPRFkqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLmNvbnRhaW5lci1sb2dpbiB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDE4dmg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqIE5BViAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uc2lkZS1uYXYge1xuICAgIG1hcmdpbi10b3A6IDgwcHg7XG59XG4ud3JhcHBlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKipCQU5ORVIqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uYmFubmVyIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNWVtICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogZGVlcHNreWJsdWU7XG4gICAgY29sb3I6IGJsYWNrO1xuICAgIHBhZGRpbmc6IDJ2aCAwIDAgNXZoO1xuICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICB6LWluZGV4OiAxMDA7XG4gICAgLypkaXNwbGF5OiB0YWJsZS1jZWxsOyovXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbiNiYW5uZXJfdGV4dCB7XG4gICAgZm9udC1zaXplOiB4LWxhcmdlO1xuICAgIGhlaWdodDogYXV0bztcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKkJPRFkqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLm1haW4tY29udGFpbmVyIHtcbiAgICAvKm1hcmdpbi10b3A6IDY1cHg7Ki9cbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIC8qYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vcHVibGljL2ltYWdlcy9MZWNvbm9tZS1HcmlzLWxpZ2h0LnBuZ1wiKTsqL1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICAgIGJhY2tncm91bmQtc2l6ZTogNDAlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uYnRuLXByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6ICMwMEJGRkYgIWltcG9ydGFudDtcbn1cblxuLmNhZHJlX2xvZ2luIHtcbiAgICBiYWNrZ3JvdW5kOiAjMDBCRkZGICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogM3B4O1xuICAgIGJvcmRlci1yYWRpdXM6IDI1cHg7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBtYXJnaW46IGF1dG87XG59XG5cbi5jYWRyZV9sb2dpbiBoMSwgbGFiZWwge1xuICAgIGNvbG9yOiBibGFjaztcbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLmNhZHJlX2xvZ2luIGlucHV0IHtcbiAgICB3aWR0aDogMTUwJSAhaW1wb3J0YW50O1xufVxuXG4uYnRuLWdyZWVuIHtcbiAgICBiYWNrZ3JvdW5kOiAjMzJDRDMyICFpbXBvcnRhbnQ7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKipMaXN0ZXMqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi50YWJfbGlzdCB0aGVhZCB7XG4gICAgYmFja2dyb3VuZDogZG9kZ2VyYmx1ZTtcbiAgICBjb2xvcjogd2hpdGVzbW9rZTtcbn1cbi50YWJfbGlzdCB0aHtcbiAgICB3aWR0aDogMTAwdmg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgZG9kZ2VyYmx1ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKipGb3JtcyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbmZvcm0ge1xuICAgIHdpZHRoOiA5NiU7XG4gICAgbWFyZ2luOiBhdXRvO1xufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqQ29udGVudCoqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4ubWFpbi1jb250YWluZXIgaDIge1xuICAgIG1hcmdpbjogMTVweCAwIDE1cHggMDtcbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKipDb21tYW5kZXMqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnJlY2FwaXR1bGF0aWZfY29tbWFuZGUge1xuICAgIGJvcmRlci1jb2xvcjogIzU2NjU3MztcbiAgICBwYWRkaW5nOiAxMHB4O1xufVxuLnJlY2FwaXR1bGF0aWZfY29tbWFuZGUgaDMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5saXN0ZV9jYXRlZ29yaWVfbmV3X2NvbW1hbmRlIHtcbiAgICBib3JkZXItY29sb3I6IGZvcmVzdGdyZWVuO1xuICAgIGJvcmRlci1zdHlsZTogcmlkZ2U7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBwYWRkaW5nOiAxMHB4O1xufVxuLmxpc3RlX2NhdGVnb3JpZV9uZXdfY29tbWFuZGUgaDMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5saXN0ZV9wcm9kdWl0cyB0aCB7XG4gICAgcGFkZGluZy1yaWdodDogNXB4O1xufVxuLmxpc3RlX3Byb2R1aXRzIHRkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKnByb2R1aXRzIHJlY2FwKioqKioqKioqKioqKioqKioqKioqKioqKi9cbmlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAgIGFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbn1cblxuaW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi5udW1iZXItaW5wdXQge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICNkZGQ7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG59XG5cbi5udW1iZXItaW5wdXQsXG4ubnVtYmVyLWlucHV0ICoge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5udW1iZXItaW5wdXQgYnV0dG9uIHtcbiAgICBvdXRsaW5lOm5vbmU7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAxcmVtO1xuICAgIGhlaWdodDogMXJlbTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLm51bWJlci1pbnB1dCBidXR0b246YmVmb3JlLFxuLm51bWJlci1pbnB1dCBidXR0b246YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogJyc7XG4gICAgd2lkdGg6IDFyZW07XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIxMjEyMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cbi5udW1iZXItaW5wdXQgYnV0dG9uLnBsdXM6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSg5MGRlZyk7XG59XG5cbi5udW1iZXItaW5wdXQgaW5wdXRbdHlwZT1udW1iZXJdIHtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgICBtYXgtd2lkdGg6IDNyZW07XG4gICAgcGFkZGluZzogLjVyZW07XG4gICAgYm9yZGVyOiBzb2xpZCAjZGRkO1xuICAgIGJvcmRlci13aWR0aDogMCAycHg7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGhlaWdodDogMXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5uZXdQcm9kdWN0IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMzMzMzMzO1xuICAgIG1hcmdpbjogMTBweCAwO1xuICAgIHBhZGRpbmc6IDVweDtcbn1cblxuLyouZGF0YVRhYmxlc193cmFwcGVyIHtcbiAgICB6LWluZGV4OiAtMTtcbn0qL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKlJlbGV2ZXMqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5mcmlnbyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwQkZGRjtcbiAgICBwYWRkaW5nOiAzdmg7XG4gICAgYm9yZGVyLXJhZGl1czogMjVweDtcbn1cblxuLyoqKioqKioqKiBmaWVsZHNldHMgKioqKioqKioqKioqL1xuZmllbGRzZXQge1xuICAgIG1hcmdpbi1ib3R0b206IDFlbSAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIGRlZXBza3libHVlICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzoxZW0gIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0Ymx1ZTtcbn1cblxubGVnZW5kIHtcbiAgICBwYWRkaW5nOiAxcHggMTBweCAhaW1wb3J0YW50O1xuICAgIGZsb2F0Om5vbmU7XG4gICAgd2lkdGg6YXV0bztcbn1cblxuLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbn1cblxuLmZvbnQtcmVkIHtcbiAgICBjb2xvciA6IHJlZCAhaW1wb3J0YW50O1xufVxuXG4uZm9udC1ncmV5IHtcbiAgICBjb2xvciA6IGdyZXk7XG59XG5cbi5ibG9jcy1zdXBlcnZpc2V1ciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBjb2xvcjogcmVkO1xufVxuXG4uc2VsZWN0ZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHNwcmluZ2dyZWVuOyAvKiB2ZXJ0IGNsYWlyIGJvb3RzdHJhcCAqLyAvKiB2ZXJ0IHBsdXMgZm9uY8OpICovXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbi50ZXh0LWxlZnQtdmlzdWFsaXNhdGlvbiB7XG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xufVxuXG4uZm9udC1ncmVlbiB7XG4gICAgY29sb3I6IGdyZWVuO1xufVxuXG4uY2FyZC1ob3ZlciB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG59XG5cbi5jYXJkLWhvdmVyOmhvdmVyIHtcbiAgICBib3gtc2hhZG93OiAwIDRweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC4xKSAhaW1wb3J0YW50O1xufVxuXG4ubGluZS1jbGFtcC0yIHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDI7XG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ubGluZS1jbGFtcC0zIHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDM7XG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ubGVmdC1ib3JkZXItaW5kaWNhdG9yIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xufVxuXG4uZW1wdHktc3RhdGUge1xuICAgIHBhZGRpbmc6IDNyZW0gMXJlbTtcbn1cblxuLyogRGFucyBhcHAuY3NzIC0gYWpvdXRlciDDoCBsYSBmaW4gKi9cblxuLyogQ29ycmVjdGlvbiBwb3VyIGdhcmFudGlyIGxhIHZpc2liaWxpdMOpIGR1IGJvdXRvbiByZXRvdXIgKi9cbi5iYWNrLWJ0biB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHotaW5kZXg6IDEwMDAgIWltcG9ydGFudDtcbn1cblxuLyogU3VyY2hhcmdlciBsZXMgc3R5bGVzIGNvbmZsaWN0dWVscyBwb3VyIGxhIHBhZ2UgbG9naW4gKi9cbmJvZHkgLmxvZ2luLWNvbnRhaW5lciAuYmFjay1idG4ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIHRvcDogMjBweCAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IDIwcHggIWltcG9ydGFudDtcbn1cblxuLyouaW5wdXQtZ3JvdXAge1xuICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XG59XG5cbi5pbnB1dC1ncm91cCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbn0qL1xuLyogU3R5bGUgcG91ciBsZXMgc2VsZWN0cyBkYW5zIEFHIEdyaWQgKi9cbi5hZy10aGVtZS1hbHBpbmUgLmFnLWNlbGwgLmZvcm0tc2VsZWN0LXNtIHtcbiAgICBwYWRkaW5nOiAwLjI1cmVtIDJyZW0gMC4yNXJlbSAwLjVyZW07XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7XG59XG5cbi5hZy10aGVtZS1hbHBpbmUgLmFnLWNlbGwgLmZvcm0tc2VsZWN0LXNtOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICM4NmI3ZmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KTtcbn1cblxuLmFnLXRoZW1lLWFscGluZSAuYWctY2VsbCAuZm9ybS1zZWxlY3Qtc20gb3B0aW9uIHtcbiAgICBjb2xvcjogIzIxMjUyOTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbn1cblxuLmFnLXRoZW1lLWFscGluZSAuYWctY2VsbCAuZm9ybS1zZWxlY3Qtc20gb3B0aW9uOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgaHRtbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDsgLyogYmFzZSBwbHVzIGNvbXBhY3RlIChCb290c3RyYXAgc3VpdCBsZSByZW0pICovXG4gICAgfVxuICAgIC5tYWluLWNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgIH1cbiAgICAvKiBUaXRyZXMgdW4gcGV1IG1vaW5zIGdyYW5kcyAqL1xuICAgIGgxLCAuaDEgeyBmb250LXNpemU6IDEuNXJlbTsgfVxuICAgIGgyLCAuaDIgeyBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgICBoMywgLmgzIHsgZm9udC1zaXplOiAxLjFyZW07IH1cbiAgICAvKiBCb290c3RyYXA6IHLDqWR1aXJlIGzigJnigJxlbmNvbWJyZW1lbnTigJ0gKi9cbiAgICAuYnRuIHtcbiAgICAgICAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgIH1cbiAgICAuYnJlYWRjcnVtYiB7XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAudGFibGUgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xuICAgICAgICBwYWRkaW5nOiAwLjM1cmVtIDAuMzVyZW07XG4gICAgfVxuICAgIC8qIEJhbm5pw6hyZTogw6l2aXRlciBxdeKAmWVsbGUgcHJlbm5lIHRyb3AgZGUgcGxhY2UgKi9cbiAgICAjYmFubmVyX3RleHQge1xuICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2NDBweCkge1xuICAgIGh0bWwge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgfVxuICAgIC5tYWluLWNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmc6IDhweDtcbiAgICB9XG4gICAgLmJ0biB7XG4gICAgICAgIHBhZGRpbmc6IDAuMjJyZW0gMC40NXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAwLjg4cmVtO1xuICAgIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBTaXRlIHZpdHJpbmUgcHJlbWl1bVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbjpyb290IHtcbiAgICAtLXNpdGUtYmc6ICMwYjEyMjA7XG4gICAgLS1zaXRlLXN1cmZhY2U6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCk7XG4gICAgLS1zaXRlLXN1cmZhY2Utc3Ryb25nOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTIpO1xuICAgIC0tc2l0ZS1ib3JkZXI6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNCk7XG4gICAgLS1zaXRlLXRleHQ6ICNlYWYxZmY7XG4gICAgLS1zaXRlLW11dGVkOiByZ2JhKDIzNCwgMjQxLCAyNTUsIDAuNzYpO1xuICAgIC0tc2l0ZS1hY2NlbnQ6ICM3ZGQzZmM7XG4gICAgLS1zaXRlLWFjY2VudC0yOiAjOGI1Y2Y2O1xuICAgIC0tc2l0ZS1zaGFkb3c6IDAgMjBweCA2MHB4IHJnYmEoMywgMTAsIDI0LCAwLjI4KTtcbn1cblxuYm9keSB7XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgYmFja2dyb3VuZDpcbiAgICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgdG9wIGxlZnQsIHJnYmEoMTI1LCAyMTEsIDI1MiwgMC4xOCksIHRyYW5zcGFyZW50IDI4JSksXG4gICAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IHRvcCByaWdodCwgcmdiYSgxMzksIDkyLCAyNDYsIDAuMTQpLCB0cmFuc3BhcmVudCAyNCUpLFxuICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgI2Y4ZmJmZiAwJSwgI2YzZjdmYyAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBjb2xvcjogIzEwMjAzMztcbn1cblxuLm5hdmJhci1zaXRlIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDEwLCAxOCwgMzIsIDAuNzgpO1xuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxOHB4KTtcbiAgICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxOHB4KTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTtcbn1cblxuLm5hdmJhci1zaXRlIC5uYXYtbGluayB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NCk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMWVtO1xufVxuXG4ubmF2YmFyLXNpdGUgLm5hdi1saW5rOmhvdmVyLFxuLm5hdmJhci1zaXRlIC5uYXYtbGluazpmb2N1cyB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi5zaXRlLWxvZ28ge1xuICAgIG1heC1oZWlnaHQ6IDQ4cHg7XG4gICAgd2lkdGg6IGF1dG87XG59XG5cbi5oZXJvIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nOiA2cmVtIDAgNXJlbTtcbiAgICBiYWNrZ3JvdW5kOlxuICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmdiYSgxMCwgMTgsIDMyLCAwLjk2KSwgcmdiYSgxNywgMjYsIDQ2LCAwLjk0KSksXG4gICAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDIwJSAyMCUsIHJnYmEoMTI1LCAyMTEsIDI1MiwgMC4yMiksIHRyYW5zcGFyZW50IDI4JSksXG4gICAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDgwJSAwJSwgcmdiYSgxMzksIDkyLCAyNDYsIDAuMTgpLCB0cmFuc3BhcmVudCAyNiUpO1xuICAgIGNvbG9yOiB2YXIoLS1zaXRlLXRleHQpO1xufVxuXG4uaGVybzo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogMDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQocmdiYSgyNTUsMjU1LDI1NSwwLjAzKSAxcHgsIHRyYW5zcGFyZW50IDFweCksXG4gICAgbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDI1NSwyNTUsMjU1LDAuMDMpIDFweCwgdHJhbnNwYXJlbnQgMXB4KTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDQ0cHggNDRweDtcbiAgICBvcGFjaXR5OiAwLjI4O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uaGVyby10aXRsZSB7XG4gICAgZm9udC1zaXplOiBjbGFtcCgyLjRyZW0sIDV2dywgNC4zcmVtKTtcbiAgICBsaW5lLWhlaWdodDogMS4wMztcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcbiAgICBmb250LXdlaWdodDogODAwO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5oZXJvLXN1YnRpdGxlIHtcbiAgICBmb250LXNpemU6IDEuMDhyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuODtcbiAgICBjb2xvcjogdmFyKC0tc2l0ZS1tdXRlZCk7XG4gICAgbWF4LXdpZHRoOiA2MGNoO1xufVxuXG4uZXllYnJvdyxcbi5zZWN0aW9uLXRhZyxcbi5oZXJvLWNoaXAge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAuNXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAuMTRlbTtcbiAgICBmb250LXNpemU6IC43NHJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uZXllYnJvdyxcbi5zZWN0aW9uLXRhZyB7XG4gICAgY29sb3I6IHZhcigtLXNpdGUtYWNjZW50KTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4uaGVyby10cmlhbC1iYWRnZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAuN3JlbSAxcmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEyKTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS1zaXRlLXNoYWRvdyk7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmJ0bi1zaXRlLXByaW1hcnksXG4uYnRuLXNpdGUtb3V0bGluZSB7XG4gICAgcGFkZGluZzogLjg1cmVtIDEuMjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLjAxZW07XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4xOHMgZWFzZSwgYm94LXNoYWRvdyAuMThzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgLjE4cyBlYXNlLCBib3JkZXItY29sb3IgLjE4cyBlYXNlO1xufVxuXG4uYnRuLXNpdGUtcHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgdmFyKC0tc2l0ZS1hY2NlbnQpLCB2YXIoLS1zaXRlLWFjY2VudC0yKSk7XG4gICAgYm9yZGVyOiAwO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBib3gtc2hhZG93OiAwIDEycHggMzBweCByZ2JhKDEyNSwgMjExLCAyNTIsIDAuMjIpO1xufVxuXG4uYnRuLXNpdGUtcHJpbWFyeTpob3ZlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBib3gtc2hhZG93OiAwIDE2cHggMzZweCByZ2JhKDEyNSwgMjExLCAyNTIsIDAuMjgpO1xufVxuXG4uYnRuLXNpdGUtb3V0bGluZSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIyKTtcbiAgICBjb2xvcjogd2hpdGU7XG59XG5cbi5idG4tc2l0ZS1vdXRsaW5lOmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCk7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzIpO1xufVxuXG4uaGVyby12aXN1YWwtd3JhcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1pbi1oZWlnaHQ6IDUyMHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmhlcm8tb3JiIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGZpbHRlcjogYmx1cigycHgpO1xuICAgIG9wYWNpdHk6IC45O1xufVxuXG4uaGVyby1vcmItb25lIHtcbiAgICB3aWR0aDogMTgwcHg7XG4gICAgaGVpZ2h0OiAxODBweDtcbiAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCByZ2JhKDEyNSwgMjExLCAyNTIsIDAuNDUpLCByZ2JhKDEyNSwgMjExLCAyNTIsIDAuMDUpKTtcbiAgICB0b3A6IDE4cHg7XG4gICAgcmlnaHQ6IDE0cHg7XG59XG5cbi5oZXJvLW9yYi10d28ge1xuICAgIHdpZHRoOiAyMjBweDtcbiAgICBoZWlnaHQ6IDIyMHB4O1xuICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsIHJnYmEoMTM5LCA5MiwgMjQ2LCAwLjM0KSwgcmdiYSgxMzksIDkyLCAyNDYsIDAuMDQpKTtcbiAgICBib3R0b206IDEwcHg7XG4gICAgbGVmdDogNHB4O1xufVxuXG4uaGVyby1wYW5lbCxcbi5jYXJkLXByZW1pdW0sXG4uc3RhdGVtZW50LWJveCxcbi5jdGEtcGFuZWwsXG4ucXVvdGUtYm94IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1zaXRlLWJvcmRlcik7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tc2l0ZS1zaGFkb3cpO1xufVxuXG4uaGVyby1wYW5lbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgd2lkdGg6IG1pbigxMDAlLCA0NjBweCk7XG4gICAgcGFkZGluZzogMS40cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDI4cHg7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsMjU1LDI1NSwwLjEyKSwgcmdiYSgyNTUsMjU1LDI1NSwwLjA4KSk7XG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDIycHgpO1xuICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDIycHgpO1xuICAgIGNvbG9yOiB3aGl0ZTtcbn1cblxuLmhlcm8tY2hpcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogLjg1cmVtO1xuICAgIGNvbG9yOiB2YXIoLS1zaXRlLWFjY2VudCk7XG59XG5cbi5oZXJvLXBhbmVsLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDEuNjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4uaGVyby1jaGlwcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZ2FwOiAuNTVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLmhlcm8tbWluaS1jaGlwIHtcbiAgICBwYWRkaW5nOiAuNHJlbSAuNzVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwwLjEpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsMC4xKTtcbiAgICBmb250LXNpemU6IC44NnJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uaGVyby1saXN0IHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ2FwOiAuOTVyZW07XG59XG5cbi5oZXJvLWxpc3QgbGkge1xuICAgIHBhZGRpbmc6IC45NXJlbSAxcmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDE4cHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwwLjA4KTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDAuMDgpO1xuICAgIGNvbG9yOiB2YXIoLS1zaXRlLW11dGVkKTtcbn1cblxuLmhlcm8tbGlzdCBzdHJvbmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIG1hcmdpbi1ib3R0b206IC4ycmVtO1xufVxuXG4uc2VjdGlvbiB7XG4gICAgcGFkZGluZzogNS41cmVtIDA7XG59XG5cbi5zZWN0aW9uLW11dGVkIHtcbiAgICBiYWNrZ3JvdW5kOlxuICAgICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCAyMCUgMCUsIHJnYmEoMTI1LCAyMTEsIDI1MiwgMC4wOCksIHRyYW5zcGFyZW50IDMyJSksXG4gICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjZmZmZmZmIDAlLCAjZjdmYWZmIDEwMCUpO1xufVxuXG4uc2VjdGlvbi10aXRsZSB7XG4gICAgZm9udC1zaXplOiBjbGFtcCgxLjhyZW0sIDN2dywgM3JlbSk7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAuOHJlbTtcbn1cblxuLnNlY3Rpb24taW50cm8ge1xuICAgIG1heC13aWR0aDogNzBjaDtcbiAgICBjb2xvcjogIzViNjc3ODtcbiAgICBsaW5lLWhlaWdodDogMS44O1xufVxuXG4uc3RhdGVtZW50LWJveCxcbi5jdGEtcGFuZWwsXG4ucXVvdGUtYm94LFxuLmNhcmQtcHJlbWl1bSB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg2KTtcbiAgICBib3JkZXItcmFkaXVzOiAyNnB4O1xuICAgIHBhZGRpbmc6IDEuNnJlbTtcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG4gICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG59XG5cbi5jYXJkLXByZW1pdW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4xOHMgZWFzZSwgYm94LXNoYWRvdyAuMThzIGVhc2UsIGJvcmRlci1jb2xvciAuMThzIGVhc2U7XG59XG5cbi5jYXJkLXByZW1pdW06aG92ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNHB4KTtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMTI1LCAyMTEsIDI1MiwgMC4zNSk7XG4gICAgYm94LXNoYWRvdzogMCAyMnB4IDUwcHggcmdiYSgxMywgMjgsIDQ2LCAwLjEyKTtcbn1cblxuLmNhcmQtcHJlbWl1bSBoMyB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgbWFyZ2luOiAxcmVtIDAgLjZyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG59XG5cbi5jYXJkLXByZW1pdW0gcCB7XG4gICAgY29sb3I6ICM1YjY3Nzg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNzU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtdmlzdWFsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIG1hcmdpbi1ib3R0b206IC41cmVtO1xufVxuXG4uY2FyZC1udW1iZXIge1xuICAgIGZvbnQtc2l6ZTogLjg1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC4xNGVtO1xuICAgIGNvbG9yOiByZ2JhKDE1LCAyMywgNDIsIDAuNDIpO1xufVxuXG4uY2FyZC1pY29uLXdyYXAge1xuICAgIHdpZHRoOiA1NnB4O1xuICAgIGhlaWdodDogNTZweDtcbiAgICBib3JkZXItcmFkaXVzOiAxOHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmdiYSgxMjUsIDIxMSwgMjUyLCAwLjE2KSwgcmdiYSgxMzksIDkyLCAyNDYsIDAuMTQpKTtcbiAgICBjb2xvcjogIzBmMTcyYTtcbn1cblxuLmJlbmVmaXQtaWNvbi13cmFwLFxuLnByb2Nlc3MtaWNvbi13cmFwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAuM3JlbTtcbn1cblxuLmNhcmQtc3ZnLWljb24ge1xuICAgIHdpZHRoOiAyNnB4O1xuICAgIGhlaWdodDogMjZweDtcbn1cblxuLnN0YXRlbWVudC1saXN0IHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ2FwOiAuOHJlbTtcbn1cblxuLnN0YXRlbWVudC1saXN0IGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjRyZW07XG4gICAgY29sb3I6ICM0MTUwNjU7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjU7XG59XG5cbi5zdGF0ZW1lbnQtbGlzdCBsaTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogLjdyZW07XG4gICAgd2lkdGg6IC41NXJlbTtcbiAgICBoZWlnaHQ6IC41NXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgdmFyKC0tc2l0ZS1hY2NlbnQpLCB2YXIoLS1zaXRlLWFjY2VudC0yKSk7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgNHB4IHJnYmEoMTI1LCAyMTEsIDI1MiwgMC4xMik7XG59XG5cbi5xdW90ZS1ib3ggYmxvY2txdW90ZSB7XG4gICAgZm9udC1zaXplOiAxLjM1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICBjb2xvcjogIzEyMjEzYTtcbiAgICBtYXJnaW46IDA7XG59XG5cbi5xdW90ZS1zaWduYXR1cmUge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgY29sb3I6ICM2MzcwODY7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmN0YS1wYW5lbCB7XG4gICAgYmFja2dyb3VuZDpcbiAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHJnYmEoMTAsIDE4LCAzMiwgMC45OCksIHJnYmEoMjIsIDMzLCA1NywgMC45NSkpLFxuICAgICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCB0b3AgbGVmdCwgcmdiYSgxMjUsIDIxMSwgMjUyLCAwLjE2KSwgdHJhbnNwYXJlbnQgMjglKTtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgcGFkZGluZzogMi40cmVtO1xufVxuXG4uY3RhLXBhbmVsIC5zZWN0aW9uLWludHJvIHtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc4KTtcbn1cblxuLmN0YS1wYW5lbCAuc2VjdGlvbi10aXRsZSB7XG4gICAgY29sb3I6IHdoaXRlO1xufVxuXG4uaGVyby1oYWNjcCB7XG4gICAgYmFja2dyb3VuZDpcbiAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHJnYmEoOCwgMjUsIDM2LCAwLjk3KSwgcmdiYSgxNSwgMzMsIDU0LCAwLjk1KSksXG4gICAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDIwJSAyMCUsIHJnYmEoNTYsIDE4OSwgMjQ4LCAwLjIwKSwgdHJhbnNwYXJlbnQgMjglKSxcbiAgICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgODAlIDAlLCByZ2JhKDIwLCAxODQsIDE2NiwgMC4xNiksIHRyYW5zcGFyZW50IDI2JSk7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAgIC5oZXJvIHtcbiAgICAgICAgcGFkZGluZzogNC41cmVtIDAgNHJlbTtcbiAgICB9XG5cbiAgICAuaGVyby12aXN1YWwtd3JhcCB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgIH1cblxuICAgIC5oZXJvLXBhbmVsIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgICAuc2VjdGlvbiB7XG4gICAgICAgIHBhZGRpbmc6IDRyZW0gMDtcbiAgICB9XG5cbiAgICAuc3RhdGVtZW50LWJveCxcbiAgICAuY3RhLXBhbmVsLFxuICAgIC5xdW90ZS1ib3gsXG4gICAgLmNhcmQtcHJlbWl1bSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICAgIHBhZGRpbmc6IDEuMjVyZW07XG4gICAgfVxuXG4gICAgLmhlcm8tdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IGNsYW1wKDJyZW0sIDExdncsIDNyZW0pO1xuICAgIH1cblxuICAgIC5oZXJvLXN1YnRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgIH1cbn1cbiIsIi50YWJzIC5saXN0IHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgYmxhY2s7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIG1hcmdpbjogMDtcclxufVxyXG5cclxuLnRhYnMgLnRhYiB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjaztcclxuICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA1cHg7XHJcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNXB4O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4udGFicyAudGFiLmFjdGlmIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0Z3JleTtcclxuICAgIGN1cnNvcjogZGVmYXVsdDtcclxufVxyXG5cclxuLnRhYnMgLmNvbnRlbnRzIHtcclxuICAgIHBhZGRpbmc6IDEwcHg7XHJcbn1cclxuXHJcbi50YWJzIC5jb250ZW50IHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi50YWJzIC5jb250ZW50LnNob3cge1xyXG4gICAgZGlzcGxheTogaW5pdGlhbDtcclxufVxyXG5cclxuLnNvdXNDYXRlZ29yaWUge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG59XHJcblxyXG4jc291c0NhdGVnb3JpZXNCbG9jayB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgbWFyZ2luLXRvcDogMTBweDtcclxufVxyXG5cclxuLnJlY2FwIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHRvcDogMTFlbSAhaW1wb3J0YW50O1xyXG4gICAgcmlnaHQ6IDhlbTtcclxuICAgIHotaW5kZXg6IDEwO1xyXG59XHJcblxyXG4udmlzdWFsaXNhdGlvbiB7XHJcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNkZWUyZTY7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xyXG59XHJcblxyXG4uZGV0YWlsLWNvbW1hbmRlIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG4uYWctdGhlbWUtYWxwaW5lIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLmgtNzUge1xyXG4gICAgaGVpZ2h0OiA3NSUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmNvbnRhaW5lci1mbHVpZC1jb21tYW5kZSB7XHJcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcclxufVxyXG5cclxuLm9yZGVycy10YWJsZS1jYXJkIHtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45NCk7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE1LCAyMywgNDIsIDAuMDgpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMjRweDtcclxuICAgIGJveC1zaGFkb3c6IDAgMjJweCA1NXB4IHJnYmEoMTUsIDIzLCA0MiwgMC4xMCk7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEycHgpO1xyXG59XHJcblxyXG4ub3JkZXJzLXRhYmxlLWhlYWRlciB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIGdhcDogMTZweDtcclxuICAgIHBhZGRpbmc6IDE4cHggMjJweDtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDE1LCAyMywgNDIsIDAuMDgpO1xyXG4gICAgYmFja2dyb3VuZDpcclxuICAgICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCB0b3AgbGVmdCwgcmdiYSg4LCAxMTcsIDIyNSwgMC4xMiksIHRyYW5zcGFyZW50IDM0JSksXHJcbiAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmZmZmZmYgMCUsICNmNmZhZmYgMTAwJSk7XHJcbn1cclxuXHJcbi5vcmRlcnMtdGFibGUtaGVhZGVyIGgzIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGNvbG9yOiAjMTExODI3O1xyXG4gICAgZm9udC1zaXplOiAxLjA4cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xyXG59XHJcblxyXG4ub3JkZXJzLXRhYmxlLWhlYWRlciBwIHtcclxuICAgIG1hcmdpbjogNHB4IDAgMDtcclxuICAgIGNvbG9yOiAjNjQ3NDhiO1xyXG4gICAgZm9udC1zaXplOiAwLjc4cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxufVxyXG5cclxuLm9yZGVycy1jb3VudC1iYWRnZSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIG1pbi13aWR0aDogbWF4LWNvbnRlbnQ7XHJcbiAgICBwYWRkaW5nOiA4cHggMTNweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2VhZjRmZiAwJSwgI2ZmZmZmZiAxMDAlKTtcclxuICAgIGNvbG9yOiAjMDg3NWUxO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSg4LCAxMTcsIDIyNSwgMC4xNik7XHJcbiAgICBmb250LXNpemU6IDAuNzZyZW07XHJcbiAgICBmb250LXdlaWdodDogOTAwO1xyXG4gICAgYm94LXNoYWRvdzogMCA4cHggMThweCByZ2JhKDgsIDExNywgMjI1LCAwLjA4KTtcclxufVxyXG5cclxuLm9yZGVycy10b29sYmFyIHtcclxuICAgIHBhZGRpbmc6IDE0cHggMThweCA0cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI0OCwgMjUwLCAyNTIsIDAuNjgpO1xyXG59XHJcblxyXG4ub3JkZXJzLXNlYXJjaC13cmFwcGVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgbWF4LXdpZHRoOiA1MjBweDtcclxufVxyXG5cclxuLm9yZGVycy1zZWFyY2gtaWNvbiB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiAxNXB4O1xyXG4gICAgY29sb3I6ICMwODc1ZTE7XHJcbiAgICBmb250LXNpemU6IDAuOTJyZW07XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG5cclxuLm9yZGVycy1zZWFyY2gtaW5wdXQge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtaW4taGVpZ2h0OiA0MnB4O1xyXG4gICAgcGFkZGluZzogMTBweCA0NHB4IDEwcHggNDJweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoOCwgMTE3LCAyMjUsIDAuMTYpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICBiYWNrZ3JvdW5kOlxyXG4gICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTYpIDAlLCByZ2JhKDI0NiwgMjUwLCAyNTUsIDAuOTYpIDEwMCUpO1xyXG4gICAgY29sb3I6ICMxMTE4Mjc7XHJcbiAgICBmb250LXNpemU6IDAuODRyZW07XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgYm94LXNoYWRvdzogMCA4cHggMThweCByZ2JhKDE1LCAyMywgNDIsIDAuMDU1KTtcclxuICAgIHRyYW5zaXRpb246XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvciAwLjE4cyBlYXNlLFxyXG4gICAgICAgICAgICBib3gtc2hhZG93IDAuMThzIGVhc2UsXHJcbiAgICAgICAgICAgIGJhY2tncm91bmQgMC4xOHMgZWFzZTtcclxufVxyXG5cclxuLm9yZGVycy1zZWFyY2gtaW5wdXQ6OnBsYWNlaG9sZGVyIHtcclxuICAgIGNvbG9yOiAjOTRhM2I4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxufVxyXG5cclxuLm9yZGVycy1zZWFyY2gtaW5wdXQ6Zm9jdXMge1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgIGJvcmRlci1jb2xvcjogIzA4NzVlMTtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XHJcbiAgICBib3gtc2hhZG93OlxyXG4gICAgICAgICAgICAwIDAgMCA0cHggcmdiYSg4LCAxMTcsIDIyNSwgMC4xMiksXHJcbiAgICAgICAgICAgIDAgMTJweCAyNHB4IHJnYmEoMTUsIDIzLCA0MiwgMC4wOCk7XHJcbn1cclxuXHJcbi5vcmRlcnMtc2VhcmNoLWNsZWFyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiA5cHg7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIHdpZHRoOiAyN3B4O1xyXG4gICAgaGVpZ2h0OiAyN3B4O1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDE1LCAyMywgNDIsIDAuMDYpO1xyXG4gICAgY29sb3I6ICM2NDc0OGI7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB0cmFuc2l0aW9uOlxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kIDAuMThzIGVhc2UsXHJcbiAgICAgICAgICAgIGNvbG9yIDAuMThzIGVhc2UsXHJcbiAgICAgICAgICAgIHRyYW5zZm9ybSAwLjE4cyBlYXNlO1xyXG59XHJcblxyXG4ub3JkZXJzLXNlYXJjaC1jbGVhcjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDgsIDExNywgMjI1LCAwLjEyKTtcclxuICAgIGNvbG9yOiAjMDg3NWUxO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcclxufVxyXG5cclxuLm9yZGVycy10YWJsZS1yZXNwb25zaXZlIHtcclxuICAgIG92ZXJmbG93LXg6IGF1dG87XHJcbiAgICBwYWRkaW5nOiAxMHB4IDEycHggMTRweDtcclxufVxyXG5cclxuLm9yZGVycy10YWJsZSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1pbi13aWR0aDogOTIwcHg7XHJcbiAgICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xyXG4gICAgYm9yZGVyLXNwYWNpbmc6IDAgOXB4O1xyXG59XHJcblxyXG4ub3JkZXJzLXRhYmxlIHRoZWFkIHRoIHtcclxuICAgIHBhZGRpbmc6IDEwcHggMTRweDtcclxuICAgIGNvbG9yOiAjNjQ3NDhiO1xyXG4gICAgZm9udC1zaXplOiAwLjcwcmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNTVlbTtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLm9yZGVycy1zb3J0LWJ1dHRvbiB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXA6IDZweDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgZm9udDogaW5oZXJpdDtcclxuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcclxuICAgIGxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4ub3JkZXJzLXNvcnQtYnV0dG9uIHNwYW4ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBtaW4td2lkdGg6IDE4cHg7XHJcbiAgICBoZWlnaHQ6IDE4cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoOCwgMTE3LCAyMjUsIDAuMDgpO1xyXG4gICAgY29sb3I6ICMwODc1ZTE7XHJcbiAgICBmb250LXNpemU6IDAuNjhyZW07XHJcbiAgICBsaW5lLWhlaWdodDogMTtcclxufVxyXG5cclxuLm9yZGVycy1zb3J0LWJ1dHRvbjpob3ZlciB7XHJcbiAgICBjb2xvcjogIzA4NzVlMTtcclxufVxyXG5cclxuLm9yZGVycy10YWJsZSB0Ym9keSB0ciB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMThweDtcclxuICAgIGJveC1zaGFkb3c6IDAgNXB4IDE2cHggcmdiYSgxNSwgMjMsIDQyLCAwLjA1NSk7XHJcbiAgICB0cmFuc2l0aW9uOlxyXG4gICAgICAgICAgICB0cmFuc2Zvcm0gMC4xOHMgZWFzZSxcclxuICAgICAgICAgICAgYm94LXNoYWRvdyAwLjE4cyBlYXNlLFxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kIDAuMThzIGVhc2U7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5vcmRlcnMtdGFibGUgdGJvZHkgdHI6aG92ZXIge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xyXG4gICAgYmFja2dyb3VuZDogI2Y5ZmNmZjtcclxuICAgIGJveC1zaGFkb3c6IDAgMTRweCAzMHB4IHJnYmEoOCwgMTE3LCAyMjUsIDAuMTMpO1xyXG59XHJcblxyXG4ub3JkZXJzLXRhYmxlIHRib2R5IHRyLmlzLXNlbGVjdGVkIHtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNkZmYwZmYgMCUsICNmMmY4ZmYgMTAwJSk7XHJcbiAgICBib3gtc2hhZG93OlxyXG4gICAgICAgICAgICBpbnNldCA0cHggMCAwICMwODc1ZTEsXHJcbiAgICAgICAgICAgIDAgMTRweCAzMnB4IHJnYmEoOCwgMTE3LCAyMjUsIDAuMTcpO1xyXG59XHJcblxyXG4ub3JkZXJzLXRhYmxlIHRib2R5IHRkIHtcclxuICAgIHBhZGRpbmc6IDE0cHg7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgY29sb3I6ICMxMTE4Mjc7XHJcbiAgICBmb250LXNpemU6IDAuODZyZW07XHJcbn1cclxuXHJcbi5vcmRlcnMtdGFibGUgdGJvZHkgdGQ6Zmlyc3QtY2hpbGQge1xyXG4gICAgd2lkdGg6IDQ0cHg7XHJcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxOHB4O1xyXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMThweDtcclxufVxyXG5cclxuLm9yZGVycy10YWJsZSB0Ym9keSB0ZDpsYXN0LWNoaWxkIHtcclxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxOHB4O1xyXG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDE4cHg7XHJcbn1cclxuXHJcbi5vcmRlci1zZWxlY3Rpb24tZG90IHtcclxuICAgIHdpZHRoOiAxOHB4O1xyXG4gICAgaGVpZ2h0OiAxOHB4O1xyXG4gICAgYm9yZGVyOiAycHggc29saWQgcmdiYSg4LCAxMTcsIDIyNSwgMC4yNSk7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XHJcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAzcHggI2ZmZmZmZjtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHRyYW5zaXRpb246XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvciAwLjE4cyBlYXNlLFxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kIDAuMThzIGVhc2UsXHJcbiAgICAgICAgICAgIHRyYW5zZm9ybSAwLjE4cyBlYXNlO1xyXG59XHJcblxyXG4ub3JkZXItc2VsZWN0aW9uLWRvdDpob3ZlcixcclxuLm9yZGVyLXNlbGVjdGlvbi1kb3QuaXMtYWN0aXZlIHtcclxuICAgIGJvcmRlci1jb2xvcjogIzA4NzVlMTtcclxuICAgIGJhY2tncm91bmQ6ICMwODc1ZTE7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDgpO1xyXG59XHJcblxyXG4ub3JkZXItZGV0YWlsLWJ1dHRvbiB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIHdpZHRoOiAzNHB4O1xyXG4gICAgaGVpZ2h0OiAzNHB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSg4LCAxMTcsIDIyNSwgMC4xOCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGJhY2tncm91bmQ6XHJcbiAgICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgdG9wIGxlZnQsIHJnYmEoOCwgMTE3LCAyMjUsIDAuMTYpLCB0cmFuc3BhcmVudCA1MCUpLFxyXG4gICAgICAgICAgICAjZmZmZmZmO1xyXG4gICAgY29sb3I6ICMwODc1ZTE7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBib3gtc2hhZG93OiAwIDdweCAxNnB4IHJnYmEoOCwgMTE3LCAyMjUsIDAuMTApO1xyXG4gICAgdHJhbnNpdGlvbjpcclxuICAgICAgICAgICAgdHJhbnNmb3JtIDAuMThzIGVhc2UsXHJcbiAgICAgICAgICAgIGJveC1zaGFkb3cgMC4xOHMgZWFzZSxcclxuICAgICAgICAgICAgYmFja2dyb3VuZCAwLjE4cyBlYXNlLFxyXG4gICAgICAgICAgICBjb2xvciAwLjE4cyBlYXNlLFxyXG4gICAgICAgICAgICBib3JkZXItY29sb3IgMC4xOHMgZWFzZTtcclxufVxyXG5cclxuLm9yZGVyLWRldGFpbC1idXR0b246aG92ZXIge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpIHNjYWxlKDEuMDQpO1xyXG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDgsIDExNywgMjI1LCAwLjM4KTtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMwODc1ZTEgMCUsICMwYjhjZmYgMTAwJSk7XHJcbiAgICBjb2xvcjogI2ZmZmZmZjtcclxuICAgIGJveC1zaGFkb3c6IDAgMTJweCAyNXB4IHJnYmEoOCwgMTE3LCAyMjUsIDAuMjIpO1xyXG59XHJcblxyXG4ub3JkZXItZGF0ZS1tYWluLFxyXG4ub3JkZXItc3VwcGxpZXItbWFpbixcclxuLm9yZGVyLWFtb3VudC1tYWluIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgY29sb3I6ICMxMTE4Mjc7XHJcbiAgICBmb250LXdlaWdodDogOTAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcclxufVxyXG5cclxuLm9yZGVyLWRhdGUtc3ViIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luLXRvcDogNHB4O1xyXG4gICAgY29sb3I6ICM2NDc0OGI7XHJcbiAgICBmb250LXNpemU6IDAuNzJyZW07XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG59XHJcblxyXG4ub3JkZXItYW1vdW50LW1haW4ge1xyXG4gICAgY29sb3I6ICMwODc1ZTE7XHJcbiAgICBmb250LXNpemU6IDAuOThyZW07XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4ub3JkZXItc3VwcGxpZXJzLWxpc3Qge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBnYXA6IDhweDtcclxufVxyXG5cclxuLm9yZGVyLXN1cHBsaWVyLXJvdyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIGdhcDogMTJweDtcclxuICAgIHBhZGRpbmc6IDhweCAxMHB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNSwgMjMsIDQyLCAwLjA2KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI0OCwgMjUwLCAyNTIsIDAuODIpO1xyXG59XHJcblxyXG4ub3JkZXItc3RhdHVzLWRvdC1sYWJlbCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBtYXJnaW4tdG9wOiA0cHg7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDE0cHg7XHJcbiAgICBjb2xvcjogIzY0NzQ4YjtcclxuICAgIGZvbnQtc2l6ZTogMC42OHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XHJcbn1cclxuXHJcbi5vcmRlci1zdGF0dXMtZG90LWxhYmVsOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogN3B4O1xyXG4gICAgaGVpZ2h0OiA3cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcclxufVxyXG5cclxuLm9yZGVyLXN0YXR1cy1zZWxlY3Qge1xyXG4gICAgbWluLXdpZHRoOiAxODJweDtcclxuICAgIGFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDgsIDExNywgMjI1LCAwLjE4KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xyXG4gICAgcGFkZGluZzogOHB4IDM0cHggOHB4IDEzcHg7XHJcbiAgICBjb2xvcjogIzAzNjlhMTtcclxuICAgIGZvbnQtc2l6ZTogMC43NHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kOlxyXG4gICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoNDVkZWcsIHRyYW5zcGFyZW50IDUwJSwgY3VycmVudENvbG9yIDUwJSkgcmlnaHQgMTVweCBjZW50ZXIgLyA2cHggNnB4IG5vLXJlcGVhdCxcclxuICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2VmZjZmZiAwJSwgI2ZmZmZmZiAxMDAlKTtcclxuICAgIGJveC1zaGFkb3c6IDAgNnB4IDE1cHggcmdiYSgxNSwgMjMsIDQyLCAwLjA3KTtcclxuICAgIHRyYW5zaXRpb246XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3cgMC4xOHMgZWFzZSxcclxuICAgICAgICAgICAgdHJhbnNmb3JtIDAuMThzIGVhc2UsXHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvciAwLjE4cyBlYXNlO1xyXG59XHJcblxyXG4ub3JkZXItc3RhdHVzLXNlbGVjdDpob3Zlcjpub3QoOmRpc2FibGVkKSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XHJcbiAgICBib3JkZXItY29sb3I6IHJnYmEoOCwgMTE3LCAyMjUsIDAuMzgpO1xyXG4gICAgYm94LXNoYWRvdzogMCAxMHB4IDIzcHggcmdiYSgxNSwgMjMsIDQyLCAwLjExKTtcclxufVxyXG5cclxuLm9yZGVyLXN0YXR1cy1zZWxlY3Q6Zm9jdXMge1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgIGJvcmRlci1jb2xvcjogIzA4NzVlMTtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCByZ2JhKDgsIDExNywgMjI1LCAwLjE0KTtcclxufVxyXG5cclxuLm9yZGVyLXN0YXR1cy1zZWxlY3Q6ZGlzYWJsZWQge1xyXG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxuICAgIG9wYWNpdHk6IDAuODY7XHJcbn1cclxuXHJcbi5vcmRlci1zdGF0dXMtc2VsZWN0LnN0YXR1cy1yZWNlaXZlZCxcclxuLm9yZGVyLXN0YXR1cy1kb3QtbGFiZWwuc3RhdHVzLXJlY2VpdmVkLFxyXG4ub3JkZXItZ2xvYmFsLXN0YXR1cy5zdGF0dXMtcmVjZWl2ZWQge1xyXG4gICAgY29sb3I6ICMwNDc4NTc7XHJcbn1cclxuXHJcbi5vcmRlci1zdGF0dXMtc2VsZWN0LnN0YXR1cy1yZWNlaXZlZCB7XHJcbiAgICBib3JkZXItY29sb3I6IHJnYmEoNCwgMTIwLCA4NywgMC4xOCk7XHJcbiAgICBiYWNrZ3JvdW5kOlxyXG4gICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoNDVkZWcsIHRyYW5zcGFyZW50IDUwJSwgY3VycmVudENvbG9yIDUwJSkgcmlnaHQgMTVweCBjZW50ZXIgLyA2cHggNnB4IG5vLXJlcGVhdCxcclxuICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2VjZmRmNSAwJSwgI2ZmZmZmZiAxMDAlKTtcclxufVxyXG5cclxuLm9yZGVyLXN0YXR1cy1zZWxlY3Quc3RhdHVzLXBhcnRpYWwsXHJcbi5vcmRlci1zdGF0dXMtZG90LWxhYmVsLnN0YXR1cy1wYXJ0aWFsLFxyXG4ub3JkZXItZ2xvYmFsLXN0YXR1cy5zdGF0dXMtcGFydGlhbCB7XHJcbiAgICBjb2xvcjogI2I0NTMwOTtcclxufVxyXG5cclxuLm9yZGVyLXN0YXR1cy1zZWxlY3Quc3RhdHVzLXBhcnRpYWwge1xyXG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDE4MCwgODMsIDksIDAuMjApO1xyXG4gICAgYmFja2dyb3VuZDpcclxuICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCB0cmFuc3BhcmVudCA1MCUsIGN1cnJlbnRDb2xvciA1MCUpIHJpZ2h0IDE1cHggY2VudGVyIC8gNnB4IDZweCBuby1yZXBlYXQsXHJcbiAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmZmZiZWIgMCUsICNmZmZmZmYgMTAwJSk7XHJcbn1cclxuXHJcbi5vcmRlci1zdGF0dXMtc2VsZWN0LnN0YXR1cy1wZW5kaW5nLFxyXG4ub3JkZXItc3RhdHVzLWRvdC1sYWJlbC5zdGF0dXMtcGVuZGluZyxcclxuLm9yZGVyLWdsb2JhbC1zdGF0dXMuc3RhdHVzLXBlbmRpbmcge1xyXG4gICAgY29sb3I6ICMwMzY5YTE7XHJcbn1cclxuXHJcbi5vcmRlci1zdGF0dXMtc2VsZWN0LnN0YXR1cy1wZW5kaW5nIHtcclxuICAgIGJvcmRlci1jb2xvcjogcmdiYSgzLCAxMDUsIDE2MSwgMC4yMCk7XHJcbiAgICBiYWNrZ3JvdW5kOlxyXG4gICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoNDVkZWcsIHRyYW5zcGFyZW50IDUwJSwgY3VycmVudENvbG9yIDUwJSkgcmlnaHQgMTVweCBjZW50ZXIgLyA2cHggNnB4IG5vLXJlcGVhdCxcclxuICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2VmZjZmZiAwJSwgI2ZmZmZmZiAxMDAlKTtcclxufVxyXG5cclxuLm9yZGVyLXN0YXR1cy1zZWxlY3Quc3RhdHVzLXRyZWF0ZWQsXHJcbi5vcmRlci1zdGF0dXMtZG90LWxhYmVsLnN0YXR1cy10cmVhdGVkLFxyXG4ub3JkZXItZ2xvYmFsLXN0YXR1cy5zdGF0dXMtdHJlYXRlZCB7XHJcbiAgICBjb2xvcjogIzQzMzhjYTtcclxufVxyXG5cclxuLm9yZGVyLXN0YXR1cy1zZWxlY3Quc3RhdHVzLXRyZWF0ZWQge1xyXG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDY3LCA1NiwgMjAyLCAwLjIwKTtcclxuICAgIGJhY2tncm91bmQ6XHJcbiAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCg0NWRlZywgdHJhbnNwYXJlbnQgNTAlLCBjdXJyZW50Q29sb3IgNTAlKSByaWdodCAxNXB4IGNlbnRlciAvIDZweCA2cHggbm8tcmVwZWF0LFxyXG4gICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZWVmMmZmIDAlLCAjZmZmZmZmIDEwMCUpO1xyXG59XHJcblxyXG4ub3JkZXItZ2xvYmFsLXN0YXR1cyB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIG1pbi13aWR0aDogMTEwcHg7XHJcbiAgICBwYWRkaW5nOiA3cHggMTJweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcclxuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCByZ2JhKDE1LCAyMywgNDIsIDAuMDgpO1xyXG4gICAgZm9udC1zaXplOiAwLjcycmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi5vcmRlci1nbG9iYWwtc3RhdHVzOjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIHdpZHRoOiA3cHg7XHJcbiAgICBoZWlnaHQ6IDdweDtcclxuICAgIG1hcmdpbi1yaWdodDogN3B4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XHJcbiAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMC44KTtcclxufVxyXG5cclxuLm9yZGVycy1lbXB0eS1zdGF0ZSB7XHJcbiAgICBwYWRkaW5nOiAyOHB4O1xyXG4gICAgY29sb3I6ICM2NDc0OGI7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG59XHJcblxyXG4ub3JkZXJzLXBhZ2luYXRpb24ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBnYXA6IDE0cHg7XHJcbiAgICBwYWRkaW5nOiAxNHB4IDRweCAycHg7XHJcbn1cclxuXHJcbi5vcmRlcnMtcGFnaW5hdGlvbi1pbmZvIHtcclxuICAgIGNvbG9yOiAjNjQ3NDhiO1xyXG4gICAgZm9udC1zaXplOiAwLjc4cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxufVxyXG5cclxuLm9yZGVycy1wYWdpbmF0aW9uLWluZm8gc3Ryb25nIHtcclxuICAgIGNvbG9yOiAjMTExODI3O1xyXG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcclxufVxyXG5cclxuLm9yZGVycy1wYWdpbmF0aW9uLWFjdGlvbnMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgZ2FwOiA4cHg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbn1cclxuXHJcbi5vcmRlcnMtcGFnZS1zaXplIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogN3B4O1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgY29sb3I6ICM2NDc0OGI7XHJcbiAgICBmb250LXNpemU6IDAuNzZyZW07XHJcbiAgICBmb250LXdlaWdodDogODAwO1xyXG59XHJcblxyXG4ub3JkZXJzLXBhZ2Utc2l6ZSBzZWxlY3Qge1xyXG4gICAgbWluLWhlaWdodDogMzRweDtcclxuICAgIHBhZGRpbmc6IDZweCAyOHB4IDZweCAxMHB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSg4LCAxMTcsIDIyNSwgMC4xNik7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XHJcbiAgICBjb2xvcjogIzExMTgyNztcclxuICAgIGZvbnQtc2l6ZTogMC43OHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBib3gtc2hhZG93OiAwIDVweCAxM3B4IHJnYmEoMTUsIDIzLCA0MiwgMC4wNTUpO1xyXG59XHJcblxyXG4ub3JkZXJzLXBhZ2Utc2l6ZSBzZWxlY3Q6Zm9jdXMge1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgIGJvcmRlci1jb2xvcjogIzA4NzVlMTtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCByZ2JhKDgsIDExNywgMjI1LCAwLjEyKTtcclxufVxyXG5cclxuLm9yZGVycy1wYWdlLWJ1dHRvbixcclxuLm9yZGVycy1wYWdlLW51bWJlciB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIG1pbi1oZWlnaHQ6IDM0cHg7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDgsIDExNywgMjI1LCAwLjE0KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcclxuICAgIGNvbG9yOiAjMzM0MTU1O1xyXG4gICAgZm9udC1zaXplOiAwLjc2cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGJveC1zaGFkb3c6IDAgNXB4IDEzcHggcmdiYSgxNSwgMjMsIDQyLCAwLjA1NSk7XHJcbiAgICB0cmFuc2l0aW9uOlxyXG4gICAgICAgICAgICB0cmFuc2Zvcm0gMC4xOHMgZWFzZSxcclxuICAgICAgICAgICAgYm94LXNoYWRvdyAwLjE4cyBlYXNlLFxyXG4gICAgICAgICAgICBjb2xvciAwLjE4cyBlYXNlLFxyXG4gICAgICAgICAgICBib3JkZXItY29sb3IgMC4xOHMgZWFzZSxcclxuICAgICAgICAgICAgYmFja2dyb3VuZCAwLjE4cyBlYXNlO1xyXG59XHJcblxyXG4ub3JkZXJzLXBhZ2UtYnV0dG9uIHtcclxuICAgIGdhcDogNnB4O1xyXG4gICAgcGFkZGluZzogN3B4IDEycHg7XHJcbn1cclxuXHJcbi5vcmRlcnMtcGFnZS1udW1iZXIge1xyXG4gICAgd2lkdGg6IDM0cHg7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4ub3JkZXJzLXBhZ2UtYnV0dG9uOmhvdmVyOm5vdCg6ZGlzYWJsZWQpLFxyXG4ub3JkZXJzLXBhZ2UtbnVtYmVyOmhvdmVyOm5vdCguaXMtYWN0aXZlKSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XHJcbiAgICBib3JkZXItY29sb3I6IHJnYmEoOCwgMTE3LCAyMjUsIDAuMzUpO1xyXG4gICAgY29sb3I6ICMwODc1ZTE7XHJcbiAgICBib3gtc2hhZG93OiAwIDlweCAyMHB4IHJnYmEoOCwgMTE3LCAyMjUsIDAuMTIpO1xyXG59XHJcblxyXG4ub3JkZXJzLXBhZ2UtYnV0dG9uOmRpc2FibGVkIHtcclxuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcbiAgICBvcGFjaXR5OiAwLjQ1O1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxufVxyXG5cclxuLm9yZGVycy1wYWdlLW51bWJlci5pcy1hY3RpdmUge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAjMDg3NWUxO1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzA4NzVlMSAwJSwgIzBiOGNmZiAxMDAlKTtcclxuICAgIGNvbG9yOiAjZmZmZmZmO1xyXG4gICAgYm94LXNoYWRvdzogMCAxMHB4IDIycHggcmdiYSg4LCAxMTcsIDIyNSwgMC4yNCk7XHJcbn1cclxuXHJcbi5vcmRlcnMtcGFnZS1udW1iZXJzIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogNnB4O1xyXG59XHJcblxyXG4ub3JkZXJzLXBhZ2UtZWxsaXBzaXMge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBtaW4td2lkdGg6IDE4cHg7XHJcbiAgICBjb2xvcjogIzk0YTNiODtcclxuICAgIGZvbnQtc2l6ZTogMC44NHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1kZXRhaWwtbW9kYWwge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgaW5zZXQ6IDA7XHJcbiAgICB6LWluZGV4OiAxMDgwO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IDI2cHg7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1kZXRhaWwtbW9kYWwtYmFja2Ryb3Age1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgaW5zZXQ6IDA7XHJcbiAgICBiYWNrZ3JvdW5kOlxyXG4gICAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IHRvcCwgcmdiYSg4LCAxMTcsIDIyNSwgMC4yNCksIHRyYW5zcGFyZW50IDM4JSksXHJcbiAgICAgICAgICAgIHJnYmEoMTUsIDIzLCA0MiwgMC42Nik7XHJcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoOHB4KTtcclxufVxyXG5cclxuLmNvbW1hbmRlLWRldGFpbC1tb2RhbC1kaWFsb2cge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMTtcclxuICAgIHdpZHRoOiBtaW4oMTI4MHB4LCAxMDAlKTtcclxuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSA1MnB4KTtcclxuICAgIGFuaW1hdGlvbjogY29tbWFuZGVNb2RhbEluIDAuMThzIGVhc2Utb3V0O1xyXG59XHJcblxyXG4uY29tbWFuZGUtZGV0YWlsLW1vZGFsLWNvbnRlbnQge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNTJweCk7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM4KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDI2cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTcpO1xyXG4gICAgYm94LXNoYWRvdzogMCAyOHB4IDgwcHggcmdiYSgxNSwgMjMsIDQyLCAwLjM0KTtcclxufVxyXG5cclxuLmNvbW1hbmRlLWRldGFpbC1tb2RhbC1oZWFkZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBnYXA6IDE4cHg7XHJcbiAgICBwYWRkaW5nOiAxOHB4IDIycHg7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgxNSwgMjMsIDQyLCAwLjA4KTtcclxuICAgIGJhY2tncm91bmQ6XHJcbiAgICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgdG9wIGxlZnQsIHJnYmEoOCwgMTE3LCAyMjUsIDAuMTMpLCB0cmFuc3BhcmVudCAzNCUpLFxyXG4gICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZmZmZmZmIDAlLCAjZjZmYWZmIDEwMCUpO1xyXG59XHJcblxyXG4uY29tbWFuZGUtZGV0YWlsLW1vZGFsLWtpY2tlciB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbi1ib3R0b206IDNweDtcclxuICAgIGNvbG9yOiAjMDg3NWUxO1xyXG4gICAgZm9udC1zaXplOiAwLjcycmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wN2VtO1xyXG59XHJcblxyXG4uY29tbWFuZGUtZGV0YWlsLW1vZGFsLWhlYWRlciBoMyB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBjb2xvcjogIzExMTgyNztcclxuICAgIGZvbnQtc2l6ZTogMS4yMnJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5NTA7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDI1ZW07XHJcbn1cclxuXHJcbi5jb21tYW5kZS1kZXRhaWwtbW9kYWwtY2xvc2Uge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB3aWR0aDogMzhweDtcclxuICAgIGhlaWdodDogMzhweDtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgxNSwgMjMsIDQyLCAwLjA2KTtcclxuICAgIGNvbG9yOiAjNDc1NTY5O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdHJhbnNpdGlvbjpcclxuICAgICAgICAgICAgdHJhbnNmb3JtIDAuMThzIGVhc2UsXHJcbiAgICAgICAgICAgIGJhY2tncm91bmQgMC4xOHMgZWFzZSxcclxuICAgICAgICAgICAgY29sb3IgMC4xOHMgZWFzZTtcclxufVxyXG5cclxuLmNvbW1hbmRlLWRldGFpbC1tb2RhbC1jbG9zZTpob3ZlciB7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDIyMCwgMzgsIDM4LCAwLjEwKTtcclxuICAgIGNvbG9yOiAjZGMyNjI2O1xyXG59XHJcblxyXG4uY29tbWFuZGUtZGV0YWlsLW1vZGFsLWJvZHkge1xyXG4gICAgcGFkZGluZzogMThweDtcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgICBzY3JvbGxiYXItd2lkdGg6IHRoaW47XHJcbiAgICBzY3JvbGxiYXItY29sb3I6IHJnYmEoOCwgMTE3LCAyMjUsIDAuNDIpIHJnYmEoMjI2LCAyMzIsIDI0MCwgMC45KTtcclxufVxyXG5cclxuLmNvbW1hbmRlLWRldGFpbC1tb2RhbC1ib2R5Ojotd2Via2l0LXNjcm9sbGJhciB7XHJcbiAgICB3aWR0aDogOXB4O1xyXG59XHJcblxyXG4uY29tbWFuZGUtZGV0YWlsLW1vZGFsLWJvZHk6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMjI2LCAyMzIsIDI0MCwgMC45KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xyXG59XHJcblxyXG4uY29tbWFuZGUtZGV0YWlsLW1vZGFsLWJvZHk6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoOCwgMTE3LCAyMjUsIDAuNDIpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1kZXRhaWwtbW9kYWwtYm9keTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSg4LCAxMTcsIDIyNSwgMC42Mik7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1kZXRhaWwtbW9kYWwtYm9keSAuZGV0YWlsLWNvbW1hbmRlIHtcclxuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgbWluLWhlaWdodDogMDtcclxufVxyXG5cclxuLmNvbW1hbmRlLWRldGFpbC1tb2RhbC1ib2R5IC5jb21tYW5kZS1oZWFkZXIge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTZweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uY29tbWFuZGUtZGV0YWlsLW1vZGFsLWJvZHkgLmVsZW1lbnRzLWNvbW1hbmRlIHtcclxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gICAgbWF4LWhlaWdodDogbm9uZTtcclxuICAgIG1pbi1oZWlnaHQ6IDA7XHJcbiAgICBmb250LXNpemU6IDAuODZyZW07XHJcbiAgICBsaW5lLWhlaWdodDogMS40NTtcclxufVxyXG5cclxuLmNvbW1hbmRlLWRldGFpbC1tb2RhbC1ib2R5IC5lbGVtZW50cy1jb21tYW5kZSAudGFibGUge1xyXG4gICAgZm9udC1zaXplOiAwLjg0cmVtO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNDU7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1kZXRhaWwtbW9kYWwtYm9keSAuZWxlbWVudHMtY29tbWFuZGUgLnRhYmxlIHRoIHtcclxuICAgIHBhZGRpbmc6IDlweCA4cHg7XHJcbiAgICBjb2xvcjogIzY0NzQ4YjtcclxuICAgIGZvbnQtc2l6ZTogMC43MHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDRlbTtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1kZXRhaWwtbW9kYWwtYm9keSAuZWxlbWVudHMtY29tbWFuZGUgLnRhYmxlIHRkIHtcclxuICAgIHBhZGRpbmc6IDlweCA4cHg7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1kZXRhaWwtbW9kYWwtYm9keSAuZWxlbWVudHMtY29tbWFuZGUgLmJnLWxpZ2h0IHtcclxuICAgIGJhY2tncm91bmQ6XHJcbiAgICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgdG9wIGxlZnQsIHJnYmEoOCwgMTE3LCAyMjUsIDAuMDgpLCB0cmFuc3BhcmVudCA0MiUpLFxyXG4gICAgICAgICAgICAjZjhmYWZjICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE1LCAyMywgNDIsIDAuMDYpO1xyXG59XHJcblxyXG5ib2R5Lm1vZGFsLW9wZW4ge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuQGtleWZyYW1lcyBjb21tYW5kZU1vZGFsSW4ge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTJweCkgc2NhbGUoMC45ODUpO1xyXG4gICAgfVxyXG5cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSBzY2FsZSgxKTtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XHJcbiAgICAuY29udGFpbmVyLWZsdWlkLWNvbW1hbmRlIHtcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICB9XHJcblxyXG4gICAgLm9yZGVycy10YWJsZS1jYXJkIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5vcmRlcnMtdGFibGUtaGVhZGVyIHtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgfVxyXG5cclxuICAgIC5vcmRlcnMtdGFibGUge1xyXG4gICAgICAgIG1pbi13aWR0aDogODIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLm9yZGVyLXN1cHBsaWVyLXJvdyB7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIH1cclxuXHJcbiAgICAub3JkZXItc3RhdHVzLXNlbGVjdCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWluLXdpZHRoOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5vcmRlcnMtcGFnaW5hdGlvbiB7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIH1cclxuXHJcbiAgICAub3JkZXJzLXBhZ2luYXRpb24tYWN0aW9ucyB7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgIC5vcmRlcnMtdG9vbGJhciB7XHJcbiAgICAgICAgcGFkZGluZzogMTJweCAxNHB4IDJweDtcclxuICAgIH1cclxuXHJcbiAgICAub3JkZXJzLXNlYXJjaC13cmFwcGVyIHtcclxuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLm9yZGVycy1zZWFyY2gtaW5wdXQge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMC43OHJlbTtcclxuICAgIH1cclxuXHJcbiAgICAuY29tbWFuZGUtZGV0YWlsLW1vZGFsIHtcclxuICAgICAgICBwYWRkaW5nOiAxMnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jb21tYW5kZS1kZXRhaWwtbW9kYWwtZGlhbG9nIHtcclxuICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMjRweCk7XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbW1hbmRlLWRldGFpbC1tb2RhbC1jb250ZW50IHtcclxuICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMjRweCk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAuY29tbWFuZGUtZGV0YWlsLW1vZGFsLWhlYWRlciB7XHJcbiAgICAgICAgcGFkZGluZzogMTVweCAxNnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jb21tYW5kZS1kZXRhaWwtbW9kYWwtaGVhZGVyIGgzIHtcclxuICAgICAgICBmb250LXNpemU6IDEuMDJyZW07XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbW1hbmRlLWRldGFpbC1tb2RhbC1ib2R5IHtcclxuICAgICAgICBwYWRkaW5nOiAxMnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jb21tYW5kZS1kZXRhaWwtbW9kYWwtYm9keSAuZWxlbWVudHMtY29tbWFuZGUgLnRhYmxlIHtcclxuICAgICAgICBmb250LXNpemU6IDAuNzhyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgLm9yZGVycy1wYWdlLW51bWJlcnMge1xyXG4gICAgICAgIG9yZGVyOiAzO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIH1cclxuXHJcbiAgICAub3JkZXJzLXBhZ2UtYnV0dG9uIHtcclxuICAgICAgICBmbGV4OiAxO1xyXG4gICAgfVxyXG59XHJcblxyXG4ub3JkZXJzLXN1bW1hcnktZ3JpZCB7XHJcbiAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgbWlubWF4KDE2MHB4LCAxZnIpKTtcclxuICAgIGdhcDogMTRweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDE4cHg7XHJcbn1cclxuXHJcbi5vcmRlcnMtc3VtbWFyeS1jYXJkIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZ2FwOiAxM3B4O1xyXG4gICAgbWluLWhlaWdodDogODJweDtcclxuICAgIHBhZGRpbmc6IDE1cHggMTZweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTUsIDIzLCA0MiwgMC4wOCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiAyMnB4O1xyXG4gICAgYmFja2dyb3VuZDpcclxuICAgICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCB0b3AgbGVmdCwgcmdiYSg4LCAxMTcsIDIyNSwgMC4xMCksIHRyYW5zcGFyZW50IDM4JSksXHJcbiAgICAgICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45NCk7XHJcbiAgICBib3gtc2hhZG93OiAwIDE0cHggMzRweCByZ2JhKDE1LCAyMywgNDIsIDAuMDc1KTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB0cmFuc2l0aW9uOlxyXG4gICAgICAgICAgICB0cmFuc2Zvcm0gMC4xOHMgZWFzZSxcclxuICAgICAgICAgICAgYm94LXNoYWRvdyAwLjE4cyBlYXNlLFxyXG4gICAgICAgICAgICBib3JkZXItY29sb3IgMC4xOHMgZWFzZSxcclxuICAgICAgICAgICAgYmFja2dyb3VuZCAwLjE4cyBlYXNlO1xyXG59XHJcblxyXG4ub3JkZXJzLXN1bW1hcnktY2FyZDpob3ZlcixcclxuLm9yZGVycy1zdW1tYXJ5LWNhcmQuaXMtYWN0aXZlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcclxuICAgIGJvcmRlci1jb2xvcjogcmdiYSg4LCAxMTcsIDIyNSwgMC4zMCk7XHJcbiAgICBib3gtc2hhZG93OiAwIDE4cHggNDBweCByZ2JhKDgsIDExNywgMjI1LCAwLjE0KTtcclxufVxyXG5cclxuLm9yZGVycy1zdW1tYXJ5LWNhcmQuaXMtYWN0aXZlIHtcclxuICAgIGJhY2tncm91bmQ6XHJcbiAgICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgdG9wIGxlZnQsIHJnYmEoOCwgMTE3LCAyMjUsIDAuMTYpLCB0cmFuc3BhcmVudCA0MCUpLFxyXG4gICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZmZmZmZmIDAlLCAjZjRmOWZmIDEwMCUpO1xyXG59XHJcblxyXG4ub3JkZXJzLXN1bW1hcnktaWNvbiB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIHdpZHRoOiA0MnB4O1xyXG4gICAgaGVpZ2h0OiA0MnB4O1xyXG4gICAgZmxleDogMCAwIDQycHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xyXG4gICAgZm9udC1zaXplOiAxLjFyZW07XHJcbn1cclxuXHJcbi5vcmRlcnMtc3VtbWFyeS1pY29uLnN1bW1hcnktdG90YWwge1xyXG4gICAgY29sb3I6ICMwODc1ZTE7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZWFmNGZmO1xyXG59XHJcblxyXG4ub3JkZXJzLXN1bW1hcnktaWNvbi5zdW1tYXJ5LXBlbmRpbmcge1xyXG4gICAgY29sb3I6ICMwMzY5YTE7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZWZmNmZmO1xyXG59XHJcblxyXG4ub3JkZXJzLXN1bW1hcnktaWNvbi5zdW1tYXJ5LXBhcnRpYWwge1xyXG4gICAgY29sb3I6ICNiNDUzMDk7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmYmViO1xyXG59XHJcblxyXG4ub3JkZXJzLXN1bW1hcnktaWNvbi5zdW1tYXJ5LWZpbmFsaXplZCB7XHJcbiAgICBjb2xvcjogIzA0Nzg1NztcclxuICAgIGJhY2tncm91bmQ6ICNlY2ZkZjU7XHJcbn1cclxuXHJcbi5vcmRlcnMtc3VtbWFyeS1jYXJkIHN0cm9uZyB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGNvbG9yOiAjMTExODI3O1xyXG4gICAgZm9udC1zaXplOiAxLjMycmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDk1MDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG59XHJcblxyXG4ub3JkZXJzLXN1bW1hcnktY2FyZCBzbWFsbCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbi10b3A6IDVweDtcclxuICAgIGNvbG9yOiAjNjQ3NDhiO1xyXG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcclxufVxyXG5cclxuLm9yZGVycy10b29sYmFyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZ2FwOiAxMHB4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG59XHJcblxyXG4ub3JkZXJzLXN1cHBsaWVyLXNlYXJjaC13cmFwcGVyIHtcclxuICAgIG1heC13aWR0aDogMzYwcHg7XHJcbn1cclxuXHJcbi5vcmRlcnMtcmVzZXQtZmlsdGVycyB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXA6IDdweDtcclxuICAgIG1pbi1oZWlnaHQ6IDQycHg7XHJcbiAgICBwYWRkaW5nOiA5cHggMTNweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTUsIDIzLCA0MiwgMC4xMCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XHJcbiAgICBjb2xvcjogIzY0NzQ4YjtcclxuICAgIGZvbnQtc2l6ZTogMC43OHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBib3gtc2hhZG93OiAwIDhweCAxOHB4IHJnYmEoMTUsIDIzLCA0MiwgMC4wNTUpO1xyXG4gICAgdHJhbnNpdGlvbjpcclxuICAgICAgICAgICAgdHJhbnNmb3JtIDAuMThzIGVhc2UsXHJcbiAgICAgICAgICAgIGNvbG9yIDAuMThzIGVhc2UsXHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvciAwLjE4cyBlYXNlLFxyXG4gICAgICAgICAgICBib3gtc2hhZG93IDAuMThzIGVhc2U7XHJcbn1cclxuXHJcbi5vcmRlcnMtcmVzZXQtZmlsdGVyczpob3ZlciB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XHJcbiAgICBjb2xvcjogIzA4NzVlMTtcclxuICAgIGJvcmRlci1jb2xvcjogcmdiYSg4LCAxMTcsIDIyNSwgMC4yNCk7XHJcbiAgICBib3gtc2hhZG93OiAwIDEycHggMjRweCByZ2JhKDgsIDExNywgMjI1LCAwLjEwKTtcclxufVxyXG5cclxuLm9yZGVycy10b2FzdCB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDgycHg7XHJcbiAgICByaWdodDogMjRweDtcclxuICAgIHotaW5kZXg6IDExMTA7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXA6IDEwcHg7XHJcbiAgICBtYXgtd2lkdGg6IG1pbig0MjBweCwgY2FsYygxMDB2dyAtIDMycHgpKTtcclxuICAgIHBhZGRpbmc6IDEzcHggMTZweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDE4cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xyXG4gICAgY29sb3I6ICMxMTE4Mjc7XHJcbiAgICBmb250LXNpemU6IDAuODRyZW07XHJcbiAgICBmb250LXdlaWdodDogODAwO1xyXG4gICAgYm94LXNoYWRvdzogMCAyMnB4IDUwcHggcmdiYSgxNSwgMjMsIDQyLCAwLjIyKTtcclxuICAgIGFuaW1hdGlvbjogb3JkZXJzVG9hc3RJbiAwLjIycyBlYXNlLW91dDtcclxufVxyXG5cclxuLm9yZGVycy10b2FzdC1zdWNjZXNzIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoNCwgMTIwLCA4NywgMC4xNik7XHJcbn1cclxuXHJcbi5vcmRlcnMtdG9hc3QtZGFuZ2VyIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjIwLCAzOCwgMzgsIDAuMTYpO1xyXG59XHJcblxyXG4ub3JkZXJzLXRvYXN0LWljb24ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB3aWR0aDogMjZweDtcclxuICAgIGhlaWdodDogMjZweDtcclxuICAgIGZsZXg6IDAgMCAyNnB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbn1cclxuXHJcbi5vcmRlcnMtdG9hc3Qtc3VjY2VzcyAub3JkZXJzLXRvYXN0LWljb24ge1xyXG4gICAgY29sb3I6ICMwNDc4NTc7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZWNmZGY1O1xyXG59XHJcblxyXG4ub3JkZXJzLXRvYXN0LWRhbmdlciAub3JkZXJzLXRvYXN0LWljb24ge1xyXG4gICAgY29sb3I6ICNkYzI2MjY7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmVmMmYyO1xyXG59XHJcblxyXG4ub3JkZXJzLXRhYmxlIHRib2R5IHRyLmlzLXVwZGF0ZWQge1xyXG4gICAgYW5pbWF0aW9uOiBvcmRlclJvd1VwZGF0ZWQgMS4zNXMgZWFzZS1vdXQ7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgb3JkZXJzVG9hc3RJbiB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOHB4KSBzY2FsZSgwLjk4KTtcclxuICAgIH1cclxuXHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgc2NhbGUoMSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgb3JkZXJSb3dVcGRhdGVkIHtcclxuICAgIDAlIHtcclxuICAgICAgICBib3gtc2hhZG93OlxyXG4gICAgICAgICAgICAgICAgaW5zZXQgNHB4IDAgMCAjMjJjNTVlLFxyXG4gICAgICAgICAgICAgICAgMCAwIDAgMCByZ2JhKDM0LCAxOTcsIDk0LCAwLjM0KSxcclxuICAgICAgICAgICAgICAgIDAgMTRweCAzMnB4IHJnYmEoMzQsIDE5NywgOTQsIDAuMTgpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNlY2ZkZjU7XHJcbiAgICB9XHJcblxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCA1cHggMTZweCByZ2JhKDE1LCAyMywgNDIsIDAuMDU1KTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcclxuICAgIC5vcmRlcnMtc3VtbWFyeS1ncmlkIHtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMTYwcHgsIDFmcikpO1xyXG4gICAgfVxyXG5cclxuICAgIC5vcmRlcnMtdG9vbGJhciB7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIH1cclxuXHJcbiAgICAub3JkZXJzLXNlYXJjaC13cmFwcGVyLFxyXG4gICAgLm9yZGVycy1zdXBwbGllci1zZWFyY2gtd3JhcHBlciB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5vcmRlcnMtcmVzZXQtZmlsdGVycyB7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcclxuICAgIC5vcmRlcnMtc3VtbWFyeS1ncmlkIHtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuICAgIH1cclxuXHJcbiAgICAub3JkZXJzLXRvYXN0IHtcclxuICAgICAgICB0b3A6IDcycHg7XHJcbiAgICAgICAgcmlnaHQ6IDEycHg7XHJcbiAgICAgICAgbGVmdDogMTJweDtcclxuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jb250YWluZXItZmx1aWQtYXZvaXIge1xyXG4gICAgbWluLWhlaWdodDogMTAwdmg7XHJcbn1cclxuXHJcbi5hdm9pcnMtdGFibGUtY2FyZCB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAyNHB4O1xyXG59XHJcblxyXG4uYXZvaXJzLXRhYmxlLWhlYWRlciB7XHJcbiAgICBiYWNrZ3JvdW5kOlxyXG4gICAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IHRvcCBsZWZ0LCByZ2JhKDE2LCAxODUsIDEyOSwgMC4xMiksIHRyYW5zcGFyZW50IDM0JSksXHJcbiAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmZmZmZmYgMCUsICNmNmZmZmIgMTAwJSk7XHJcbn1cclxuXHJcbi5hdm9pcnMtdGFibGUge1xyXG4gICAgbWluLXdpZHRoOiA5ODBweDtcclxufVxyXG5cclxuLmF2b2lyLWRldGFpbC1idXR0b24ge1xyXG4gICAgY29sb3I6ICMwNTk2Njk7XHJcbiAgICBib3JkZXItY29sb3I6IHJnYmEoNSwgMTUwLCAxMDUsIDAuMTgpO1xyXG4gICAgYm94LXNoYWRvdzogMCA3cHggMTZweCByZ2JhKDUsIDE1MCwgMTA1LCAwLjEwKTtcclxufVxyXG5cclxuLmF2b2lyLWRldGFpbC1idXR0b246aG92ZXIge1xyXG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDUsIDE1MCwgMTA1LCAwLjM4KTtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMwNTk2NjkgMCUsICMxMGI5ODEgMTAwJSk7XHJcbiAgICBjb2xvcjogI2ZmZmZmZjtcclxuICAgIGJveC1zaGFkb3c6IDAgMTJweCAyNXB4IHJnYmEoNSwgMTUwLCAxMDUsIDAuMjIpO1xyXG59XHJcblxyXG4uYXZvaXItc3RhdHVzLXNlbGVjdC5zdGF0dXMtdHJlYXRlZCB7XHJcbiAgICBjb2xvcjogIzA0Nzg1NztcclxuICAgIGJvcmRlci1jb2xvcjogcmdiYSg0LCAxMjAsIDg3LCAwLjE4KTtcclxuICAgIGJhY2tncm91bmQ6XHJcbiAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCg0NWRlZywgdHJhbnNwYXJlbnQgNTAlLCBjdXJyZW50Q29sb3IgNTAlKSByaWdodCAxNXB4IGNlbnRlciAvIDZweCA2cHggbm8tcmVwZWF0LFxyXG4gICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZWNmZGY1IDAlLCAjZmZmZmZmIDEwMCUpO1xyXG59XHJcblxyXG4uYXZvaXItc3RhdHVzLXNlbGVjdC5zdGF0dXMtcGVuZGluZyB7XHJcbiAgICBjb2xvcjogI2I0NTMwOTtcclxuICAgIGJvcmRlci1jb2xvcjogcmdiYSgxODAsIDgzLCA5LCAwLjIwKTtcclxuICAgIGJhY2tncm91bmQ6XHJcbiAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCg0NWRlZywgdHJhbnNwYXJlbnQgNTAlLCBjdXJyZW50Q29sb3IgNTAlKSByaWdodCAxNXB4IGNlbnRlciAvIDZweCA2cHggbm8tcmVwZWF0LFxyXG4gICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZmZmYmViIDAlLCAjZmZmZmZmIDEwMCUpO1xyXG59XHJcblxyXG4uYXZvaXItcmVmLWJhZGdlIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgbWF4LXdpZHRoOiAxODBweDtcclxuICAgIHBhZGRpbmc6IDdweCAxMXB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZjhmYWZjO1xyXG4gICAgY29sb3I6ICMzMzQxNTU7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE1LCAyMywgNDIsIDAuMDgpO1xyXG4gICAgZm9udC1zaXplOiAwLjc2cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbn1cclxuXHJcbi5hdm9pci1kZXRhaWwtbW9kYWwtaGVhZGVyIHtcclxuICAgIGJhY2tncm91bmQ6XHJcbiAgICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgdG9wIGxlZnQsIHJnYmEoMTYsIDE4NSwgMTI5LCAwLjE0KSwgdHJhbnNwYXJlbnQgMzQlKSxcclxuICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2ZmZmZmZiAwJSwgI2Y2ZmZmYiAxMDAlKTtcclxufVxyXG5cclxuLmF2b2lyLWRldGFpbC1tb2RhbC1oZWFkZXIgLmNvbW1hbmRlLWRldGFpbC1tb2RhbC1raWNrZXIge1xyXG4gICAgY29sb3I6ICMwNTk2Njk7XHJcbn1cclxuXHJcbi5hdm9pci1kZXRhaWwtbW9kYWwtYm9keSAuZGV0YWlsLWF2b2lyIHtcclxuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uYXZvaXItaGVhZGVyIHtcclxuICAgIGJhY2tncm91bmQ6XHJcbiAgICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgdG9wIGxlZnQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yMCksIHRyYW5zcGFyZW50IDM0JSksXHJcbiAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMwNTk2NjkgMCUsICMxMGI5ODEgMTAwJSkgIWltcG9ydGFudDtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJveC1zaGFkb3c6IDAgMTRweCAzMHB4IHJnYmEoNSwgMTUwLCAxMDUsIDAuMTgpO1xyXG59XHJcblxyXG4uYXZvaXItaGVhZGVyIGg0IHtcclxuICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDk1MDtcclxufVxyXG5cclxuLmF2b2lyLWRldGFpbC1ncmlkIHtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCBtaW5tYXgoMTUwcHgsIDFmcikpO1xyXG4gICAgZ2FwOiAxMnB4O1xyXG59XHJcblxyXG4uYXZvaXItZGV0YWlsLWNhcmQge1xyXG4gICAgcGFkZGluZzogMTRweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTUsIDIzLCA0MiwgMC4wOCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxOHB4O1xyXG4gICAgYmFja2dyb3VuZDpcclxuICAgICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCB0b3AgbGVmdCwgcmdiYSgxNiwgMTg1LCAxMjksIDAuMDcpLCB0cmFuc3BhcmVudCA0MiUpLFxyXG4gICAgICAgICAgICAjZmZmZmZmO1xyXG4gICAgYm94LXNoYWRvdzogMCAxMHB4IDI0cHggcmdiYSgxNSwgMjMsIDQyLCAwLjA2KTtcclxufVxyXG5cclxuLmF2b2lyLWRldGFpbC1jYXJkLXRpdGxlIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZ2FwOiA4cHg7XHJcbiAgICBjb2xvcjogIzY0NzQ4YjtcclxuICAgIGZvbnQtc2l6ZTogMC43MnJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDRlbTtcclxufVxyXG5cclxuLmF2b2lyLWRldGFpbC1jYXJkLXRpdGxlIGkge1xyXG4gICAgY29sb3I6ICMwNTk2Njk7XHJcbn1cclxuXHJcbi5hdm9pci1kZXRhaWwtY2FyZC12YWx1ZSB7XHJcbiAgICBtYXJnaW4tdG9wOiA4cHg7XHJcbiAgICBjb2xvcjogIzExMTgyNztcclxuICAgIGZvbnQtc2l6ZTogMC45NXJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbiAgICBsaW5lLWhlaWdodDogMS4zNTtcclxuICAgIG92ZXJmbG93LXdyYXA6IGFueXdoZXJlO1xyXG59XHJcblxyXG4uYXZvaXItZGV0YWlsLXNlY3Rpb24ge1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNSwgMjMsIDQyLCAwLjA4KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xyXG4gICAgYm94LXNoYWRvdzogMCAxMHB4IDI0cHggcmdiYSgxNSwgMjMsIDQyLCAwLjA2KTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5hdm9pci1kZXRhaWwtc2VjdGlvbi1oZWFkZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBnYXA6IDEycHg7XHJcbiAgICBwYWRkaW5nOiAxM3B4IDE1cHg7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgxNSwgMjMsIDQyLCAwLjA4KTtcclxuICAgIGJhY2tncm91bmQ6ICNmOGZhZmM7XHJcbn1cclxuXHJcbi5hdm9pci1kZXRhaWwtc2VjdGlvbi1oZWFkZXIgaDYge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgY29sb3I6ICMxMTE4Mjc7XHJcbiAgICBmb250LXNpemU6IDAuOXJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5NTA7XHJcbn1cclxuXHJcbi5hdm9pci1kZXRhaWwtc2VjdGlvbi1oZWFkZXIgc3BhbiB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiA2cHggMTBweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xyXG4gICAgYmFja2dyb3VuZDogI2VjZmRmNTtcclxuICAgIGNvbG9yOiAjMDQ3ODU3O1xyXG4gICAgZm9udC1zaXplOiAwLjcycmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcclxufVxyXG5cclxuLmF2b2lyLWRlc2NyaXB0aW9uLWJveCB7XHJcbiAgICBtaW4taGVpZ2h0OiAxMTBweDtcclxuICAgIHBhZGRpbmc6IDE1cHg7XHJcbiAgICBjb2xvcjogIzMzNDE1NTtcclxuICAgIGZvbnQtc2l6ZTogMC44OHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBsaW5lLWhlaWdodDogMS41NTtcclxuICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcclxufVxyXG5cclxuLm9yZGVycy1zdW1tYXJ5LWNhcmQuaXMtcmVhZG9ubHkge1xyXG4gICAgY3Vyc29yOiBkZWZhdWx0O1xyXG59XHJcblxyXG4ub3JkZXJzLXN1bW1hcnktY2FyZC5pcy1yZWFkb25seTpob3ZlciB7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xyXG4gICAgLmF2b2lyLWRldGFpbC1ncmlkIHtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMTUwcHgsIDFmcikpO1xyXG4gICAgfVxyXG5cclxuICAgIC5hdm9pcnMtdGFibGUge1xyXG4gICAgICAgIG1pbi13aWR0aDogOTAwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgLmF2b2lyLWRldGFpbC1ncmlkIHtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuICAgIH1cclxuXHJcbiAgICAuYXZvaXItZGV0YWlsLXNlY3Rpb24taGVhZGVyIHtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgfVxyXG59XHJcblxyXG4uc3RvY2stcGFnZSB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcclxufVxyXG5cclxuLnN0b2NrLWhlcm8ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBnYXA6IDE4cHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyMnB4O1xyXG4gICAgcGFkZGluZzogMjBweCAyMnB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNSwgMjMsIDQyLCAwLjA4KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDI0cHg7XHJcbiAgICBiYWNrZ3JvdW5kOlxyXG4gICAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IHRvcCBsZWZ0LCByZ2JhKDgsIDExNywgMjI1LCAwLjEzKSwgdHJhbnNwYXJlbnQgMzQlKSxcclxuICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmdiYSgyNTUsMjU1LDI1NSwwLjk2KSAwJSwgcmdiYSgyNDYsMjUwLDI1NSwwLjk2KSAxMDAlKTtcclxuICAgIGJveC1zaGFkb3c6IDAgMThweCA0NXB4IHJnYmEoMTUsIDIzLCA0MiwgMC4wOCk7XHJcbn1cclxuXHJcbi5zdG9jay1oZXJvIGgxIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGNvbG9yOiAjMTExODI3O1xyXG4gICAgZm9udC13ZWlnaHQ6IDk1MDtcclxuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMjVlbTtcclxufVxyXG5cclxuLnN0b2NrLWhlcm8gcCB7XHJcbiAgICBtYXJnaW46IDVweCAwIDA7XHJcbiAgICBjb2xvcjogIzY0NzQ4YjtcclxuICAgIGZvbnQtc2l6ZTogMC44OHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuXHJcbi5zdG9jay1wYWdlIC5jYXJkIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTUsIDIzLCA0MiwgMC4wOCkgIWltcG9ydGFudDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDI0cHggIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45NCk7XHJcbiAgICBib3gtc2hhZG93OiAwIDIycHggNTVweCByZ2JhKDE1LCAyMywgNDIsIDAuMTApICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTJweCk7XHJcbn1cclxuXHJcbi5zdG9jay1wYWdlIC5jYXJkLWhlYWRlciB7XHJcbiAgICBiYWNrZ3JvdW5kOlxyXG4gICAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IHRvcCBsZWZ0LCByZ2JhKDgsIDExNywgMjI1LCAwLjEwKSwgdHJhbnNwYXJlbnQgMzQlKSxcclxuICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2ZmZmZmZiAwJSwgI2Y2ZmFmZiAxMDAlKSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uc3RvY2stcGFnZSAubmF2LXBpbGxzIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTUsIDIzLCA0MiwgMC4wNyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxOHB4ICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI0OCwgMjUwLCAyNTIsIDAuOSkgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnN0b2NrLXBhZ2UgLm5hdi1waWxscyAubmF2LWxpbmsge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTRweCAhaW1wb3J0YW50O1xyXG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgIGZvbnQtc2l6ZTogMC44MnJlbTtcclxufVxyXG5cclxuLnN0b2NrLXBhZ2UgLm5hdi1waWxscyAubmF2LWxpbmsuYWN0aXZlIHtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMwODc1ZTEgMCUsICMwYjhjZmYgMTAwJSkgIWltcG9ydGFudDtcclxuICAgIGJveC1zaGFkb3c6IDAgMTBweCAyMnB4IHJnYmEoOCwgMTE3LCAyMjUsIDAuMjIpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5zdG9jay1wYWdlIC5idG4ge1xyXG4gICAgZm9udC13ZWlnaHQ6IDg1MDtcclxufVxyXG5cclxuLnN0b2NrLXBhZ2UgLmJ0bi1wcmltYXJ5IHtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMwODc1ZTEgMCUsICMwYjhjZmYgMTAwJSk7XHJcbiAgICBib3gtc2hhZG93OiAwIDEycHggMjRweCByZ2JhKDgsIDExNywgMjI1LCAwLjE4KTtcclxufVxyXG5cclxuLnN0b2NrLXBhZ2UgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSxcclxuLnN0b2NrLXBhZ2UgLmJ0bi1vdXRsaW5lLXByaW1hcnkge1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbn1cclxuXHJcbi5zdG9jay1wYWdlIC5saXN0LWdyb3VwIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTUsIDIzLCA0MiwgMC4wOCkgIWltcG9ydGFudDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDIwcHggIWltcG9ydGFudDtcclxuICAgIGJveC1zaGFkb3c6IDAgMTRweCAzMHB4IHJnYmEoMTUsIDIzLCA0MiwgMC4wNikgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnN0b2NrLXBhZ2UgLmxpc3QtZ3JvdXAtaXRlbSB7XHJcbiAgICBmb250LXNpemU6IDAuODJyZW07XHJcbiAgICBmb250LXdlaWdodDogODAwO1xyXG59XHJcblxyXG4uc3RvY2stcGFnZSAubGlzdC1ncm91cC1pdGVtLmJnLXByaW1hcnkge1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzA4NzVlMSAwJSwgIzBiOGNmZiAxMDAlKSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uc3RvY2stcGFnZSAudGFibGUtcmVzcG9uc2l2ZSB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE1LCAyMywgNDIsIDAuMDcpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XHJcbiAgICBib3gtc2hhZG93OiAwIDE0cHggMzBweCByZ2JhKDE1LCAyMywgNDIsIDAuMDYpO1xyXG4gICAgcGFkZGluZzogMTBweDtcclxufVxyXG5cclxuLnN0b2NrLXBhZ2UgdGFibGUudGFibGUge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIGZvbnQtc2l6ZTogMC44NHJlbTtcclxufVxyXG5cclxuLnN0b2NrLXBhZ2UgdGFibGUudGFibGUgdGhlYWQge1xyXG4gICAgY29sb3I6ICM2NDc0OGI7XHJcbiAgICBmb250LXNpemU6IDAuNzByZW07XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xyXG59XHJcblxyXG4uc3RvY2stcGFnZSB0YWJsZS50YWJsZSB0aCB7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDEycHg7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4uc3RvY2stcGFnZSB0YWJsZS50YWJsZSB0ZCB7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDEycHg7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG59XHJcblxyXG4uc3RvY2stcGFnZSB0YWJsZS50YWJsZSB0Ym9keSB0ciB7XHJcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMThzIGVhc2UsIHRyYW5zZm9ybSAwLjE4cyBlYXNlO1xyXG59XHJcblxyXG4uc3RvY2stcGFnZSB0YWJsZS50YWJsZSB0Ym9keSB0cjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZjlmY2ZmO1xyXG59XHJcblxyXG4uc3RvY2stcGFnZSAuaW5wdXQtZ3JvdXAge1xyXG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDgsIDExNywgMjI1LCAwLjE0KSAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHggIWltcG9ydGFudDtcclxufVxyXG5cclxuLnN0b2NrLXBhZ2UgLmlucHV0LWdyb3VwIC5idG4sXHJcbi5zdG9jay1wYWdlIC5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sIHtcclxuICAgIGZvbnQtc2l6ZTogMC44MHJlbTtcclxufVxyXG5cclxuLnN0b2NrLXBhZ2UgLmFsZXJ0IHtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDE4cHggIWltcG9ydGFudDtcclxuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgLnN0b2NrLWhlcm8ge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICB9XHJcblxyXG4gICAgLnN0b2NrLXBhZ2UgLmNhcmQtaGVhZGVyIC5kLWZsZXgge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLnN0b2NrLXBhZ2UgLm5hdi1waWxscyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcclxuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcclxuICAgIH1cclxufVxyXG5cclxuLmFwcC1wYWdlLWhlcm8ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBnYXA6IDE4cHg7XHJcbiAgICBtYXJnaW46IDE4cHggMCAyMnB4O1xyXG4gICAgcGFkZGluZzogMjBweCAyMnB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNSwgMjMsIDQyLCAwLjA4KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDI0cHg7XHJcbiAgICBiYWNrZ3JvdW5kOlxyXG4gICAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IHRvcCBsZWZ0LCByZ2JhKDgsIDExNywgMjI1LCAwLjEzKSwgdHJhbnNwYXJlbnQgMzQlKSxcclxuICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk4KSAwJSwgcmdiYSgyNDYsIDI1MCwgMjU1LCAwLjk4KSAxMDAlKTtcclxuICAgIGJveC1zaGFkb3c6IDAgMThweCA0NXB4IHJnYmEoMTUsIDIzLCA0MiwgMC4wOCk7XHJcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTJweCk7XHJcbn1cclxuXHJcbi5hcHAtcGFnZS1oZXJvLWNvbnRlbnQge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXA6IDE1cHg7XHJcbiAgICBtaW4td2lkdGg6IDA7XHJcbn1cclxuXHJcbi5hcHAtcGFnZS1oZXJvLWljb24ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB3aWR0aDogNTRweDtcclxuICAgIGhlaWdodDogNTRweDtcclxuICAgIGZsZXg6IDAgMCA1NHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMThweDtcclxuICAgIGJhY2tncm91bmQ6XHJcbiAgICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgdG9wIGxlZnQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNCksIHRyYW5zcGFyZW50IDQ1JSksXHJcbiAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMwODc1ZTEgMCUsICMwYjhjZmYgMTAwJSk7XHJcbiAgICBjb2xvcjogI2ZmZmZmZjtcclxuICAgIGJveC1zaGFkb3c6IDAgMTRweCAyOHB4IHJnYmEoOCwgMTE3LCAyMjUsIDAuMjQpO1xyXG59XHJcblxyXG4uYXBwLXBhZ2UtaGVyby1pY29uIGkge1xyXG4gICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICBmb250LXNpemU6IDEuNDVyZW07XHJcbn1cclxuXHJcbi5hcHAtcGFnZS1oZXJvLWtpY2tlciB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzcHg7XHJcbiAgICBjb2xvcjogIzA4NzVlMTtcclxuICAgIGZvbnQtc2l6ZTogMC43MnJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcclxufVxyXG5cclxuLmFwcC1wYWdlLWhlcm8gaDEge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgY29sb3I6ICMxMTE4Mjc7XHJcbiAgICBmb250LXNpemU6IDEuNTVyZW07XHJcbiAgICBmb250LXdlaWdodDogOTUwO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAzNWVtO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7XHJcbn1cclxuXHJcbi5hcHAtcGFnZS1oZXJvIHAge1xyXG4gICAgbWFyZ2luOiA1cHggMCAwO1xyXG4gICAgY29sb3I6ICM2NDc0OGI7XHJcbiAgICBmb250LXNpemU6IDAuODhyZW07XHJcbiAgICBmb250LXdlaWdodDogNjUwO1xyXG59XHJcblxyXG4uYXBwLXBhZ2UtaGVyby1hY3Rpb25zIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICBnYXA6IDEwcHg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbn1cclxuXHJcbi5hcHAtcGFnZS1oZXJvLWFjdGlvbnMgLmJ0biB7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGZvbnQtc2l6ZTogMC44NHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XHJcbn1cclxuXHJcbi5hcHAtcGFnZS1oZXJvLWFjdGlvbnMgLmJ0bi1wcmltYXJ5IHtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMwODc1ZTEgMCUsICMwYjhjZmYgMTAwJSk7XHJcbiAgICBib3gtc2hhZG93OiAwIDEycHggMjRweCByZ2JhKDgsIDExNywgMjI1LCAwLjE4KTtcclxufVxyXG5cclxuLmFwcC1wYWdlLWhlcm8tc3VjY2VzcyB7XHJcbiAgICBiYWNrZ3JvdW5kOlxyXG4gICAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IHRvcCBsZWZ0LCByZ2JhKDE2LCAxODUsIDEyOSwgMC4xNCksIHRyYW5zcGFyZW50IDM0JSksXHJcbiAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45OCkgMCUsIHJnYmEoMjQwLCAyNTMsIDI1MCwgMC45OCkgMTAwJSk7XHJcbn1cclxuXHJcbi5hcHAtcGFnZS1oZXJvLXN1Y2Nlc3MgLmFwcC1wYWdlLWhlcm8taWNvbiB7XHJcbiAgICBiYWNrZ3JvdW5kOlxyXG4gICAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IHRvcCBsZWZ0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzQpLCB0cmFuc3BhcmVudCA0NSUpLFxyXG4gICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMDU5NjY5IDAlLCAjMTBiOTgxIDEwMCUpO1xyXG4gICAgYm94LXNoYWRvdzogMCAxNHB4IDI4cHggcmdiYSg1LCAxNTAsIDEwNSwgMC4yNCk7XHJcbn1cclxuXHJcbi5hcHAtcGFnZS1oZXJvLXN1Y2Nlc3MgLmFwcC1wYWdlLWhlcm8ta2lja2VyIHtcclxuICAgIGNvbG9yOiAjMDU5NjY5O1xyXG59XHJcblxyXG4uYXBwLXBhZ2UtaGVyby13YXJuaW5nIHtcclxuICAgIGJhY2tncm91bmQ6XHJcbiAgICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgdG9wIGxlZnQsIHJnYmEoMjQ1LCAxNTgsIDExLCAwLjE2KSwgdHJhbnNwYXJlbnQgMzQlKSxcclxuICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk4KSAwJSwgcmdiYSgyNTUsIDI1MSwgMjM1LCAwLjk4KSAxMDAlKTtcclxufVxyXG5cclxuLmFwcC1wYWdlLWhlcm8td2FybmluZyAuYXBwLXBhZ2UtaGVyby1pY29uIHtcclxuICAgIGJhY2tncm91bmQ6XHJcbiAgICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgdG9wIGxlZnQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNCksIHRyYW5zcGFyZW50IDQ1JSksXHJcbiAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNkOTc3MDYgMCUsICNmNTllMGIgMTAwJSk7XHJcbiAgICBib3gtc2hhZG93OiAwIDE0cHggMjhweCByZ2JhKDI0NSwgMTU4LCAxMSwgMC4yNCk7XHJcbn1cclxuXHJcbi5hcHAtcGFnZS1oZXJvLXdhcm5pbmcgLmFwcC1wYWdlLWhlcm8ta2lja2VyIHtcclxuICAgIGNvbG9yOiAjZDk3NzA2O1xyXG59XHJcblxyXG4uYXBwLXBhZ2UtaGVyby1wdXJwbGUge1xyXG4gICAgYmFja2dyb3VuZDpcclxuICAgICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCB0b3AgbGVmdCwgcmdiYSgxNjgsIDg1LCAyNDcsIDAuMTQpLCB0cmFuc3BhcmVudCAzNCUpLFxyXG4gICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTgpIDAlLCByZ2JhKDI1MCwgMjQ1LCAyNTUsIDAuOTgpIDEwMCUpO1xyXG59XHJcblxyXG4uYXBwLXBhZ2UtaGVyby1wdXJwbGUgLmFwcC1wYWdlLWhlcm8taWNvbiB7XHJcbiAgICBiYWNrZ3JvdW5kOlxyXG4gICAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IHRvcCBsZWZ0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzQpLCB0cmFuc3BhcmVudCA0NSUpLFxyXG4gICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjN2MzYWVkIDAlLCAjYTg1NWY3IDEwMCUpO1xyXG4gICAgYm94LXNoYWRvdzogMCAxNHB4IDI4cHggcmdiYSgxMjQsIDU4LCAyMzcsIDAuMjQpO1xyXG59XHJcblxyXG4uYXBwLXBhZ2UtaGVyby1wdXJwbGUgLmFwcC1wYWdlLWhlcm8ta2lja2VyIHtcclxuICAgIGNvbG9yOiAjN2MzYWVkO1xyXG59XHJcblxyXG4uYXBwLXBhZ2UtaGVyby1jeWFuIHtcclxuICAgIGJhY2tncm91bmQ6XHJcbiAgICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgdG9wIGxlZnQsIHJnYmEoMTQsIDE2NSwgMjMzLCAwLjE1KSwgdHJhbnNwYXJlbnQgMzQlKSxcclxuICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk4KSAwJSwgcmdiYSgyNDAsIDI0OSwgMjU1LCAwLjk4KSAxMDAlKTtcclxufVxyXG5cclxuLmFwcC1wYWdlLWhlcm8tY3lhbiAuYXBwLXBhZ2UtaGVyby1pY29uIHtcclxuICAgIGJhY2tncm91bmQ6XHJcbiAgICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgdG9wIGxlZnQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNCksIHRyYW5zcGFyZW50IDQ1JSksXHJcbiAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMwMjg0YzcgMCUsICMwZWE1ZTkgMTAwJSk7XHJcbiAgICBib3gtc2hhZG93OiAwIDE0cHggMjhweCByZ2JhKDE0LCAxNjUsIDIzMywgMC4yNCk7XHJcbn1cclxuXHJcbi5hcHAtcGFnZS1oZXJvLWN5YW4gLmFwcC1wYWdlLWhlcm8ta2lja2VyIHtcclxuICAgIGNvbG9yOiAjMDI4NGM3O1xyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgIC5hcHAtcGFnZS1oZXJvIHtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIHBhZGRpbmc6IDE2cHg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAuYXBwLXBhZ2UtaGVyby1jb250ZW50IHtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgIH1cclxuXHJcbiAgICAuYXBwLXBhZ2UtaGVyby1pY29uIHtcclxuICAgICAgICB3aWR0aDogNDZweDtcclxuICAgICAgICBoZWlnaHQ6IDQ2cHg7XHJcbiAgICAgICAgZmxleC1iYXNpczogNDZweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5hcHAtcGFnZS1oZXJvIGgxIHtcclxuICAgICAgICBmb250LXNpemU6IDEuMjhyZW07XHJcbiAgICB9XHJcblxyXG4gICAgLmFwcC1wYWdlLWhlcm8tYWN0aW9ucyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgfVxyXG5cclxuICAgIC5hcHAtcGFnZS1oZXJvLWFjdGlvbnMgLmJ0biB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zdG9jay1kYXNoYm9hcmQge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBnYXA6IDE4cHg7XHJcbn1cclxuXHJcbi5zdG9jay1zdW1tYXJ5LWdyaWQge1xyXG4gICAgZGlzcGxheTogZ3JpZDtcclxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIG1pbm1heCgxNzBweCwgMWZyKSk7XHJcbiAgICBnYXA6IDE0cHg7XHJcbn1cclxuXHJcbi5zdG9jay1zdW1tYXJ5LWNhcmQge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXA6IDEzcHg7XHJcbiAgICBtaW4taGVpZ2h0OiA4NnB4O1xyXG4gICAgcGFkZGluZzogMTVweCAxNnB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNSwgMjMsIDQyLCAwLjA4KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDIycHg7XHJcbiAgICBiYWNrZ3JvdW5kOlxyXG4gICAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IHRvcCBsZWZ0LCByZ2JhKDgsIDExNywgMjI1LCAwLjEwKSwgdHJhbnNwYXJlbnQgMzglKSxcclxuICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk0KTtcclxuICAgIGJveC1zaGFkb3c6IDAgMTRweCAzNHB4IHJnYmEoMTUsIDIzLCA0MiwgMC4wNzUpO1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHRyYW5zaXRpb246XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybSAwLjE4cyBlYXNlLFxyXG4gICAgICAgICAgICBib3gtc2hhZG93IDAuMThzIGVhc2UsXHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvciAwLjE4cyBlYXNlLFxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kIDAuMThzIGVhc2U7XHJcbn1cclxuXHJcbi5zdG9jay1zdW1tYXJ5LWNhcmQ6aG92ZXIsXHJcbi5zdG9jay1zdW1tYXJ5LWNhcmQuaXMtYWN0aXZlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcclxuICAgIGJvcmRlci1jb2xvcjogcmdiYSg4LCAxMTcsIDIyNSwgMC4zMCk7XHJcbiAgICBib3gtc2hhZG93OiAwIDE4cHggNDBweCByZ2JhKDgsIDExNywgMjI1LCAwLjE0KTtcclxufVxyXG5cclxuLnN0b2NrLXN1bW1hcnktY2FyZC5pcy1hY3RpdmUge1xyXG4gICAgYmFja2dyb3VuZDpcclxuICAgICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCB0b3AgbGVmdCwgcmdiYSg4LCAxMTcsIDIyNSwgMC4xNiksIHRyYW5zcGFyZW50IDQwJSksXHJcbiAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmZmZmZmYgMCUsICNmNGY5ZmYgMTAwJSk7XHJcbn1cclxuXHJcbi5zdG9jay1zdW1tYXJ5LWNhcmQuc3RvY2stc3VtbWFyeS1yZWFkb25seSB7XHJcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbn1cclxuXHJcbi5zdG9jay1zdW1tYXJ5LWNhcmQuc3RvY2stc3VtbWFyeS1yZWFkb25seTpob3ZlciB7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbn1cclxuXHJcbi5zdG9jay1zdW1tYXJ5LWljb24ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB3aWR0aDogNDRweDtcclxuICAgIGhlaWdodDogNDRweDtcclxuICAgIGZsZXg6IDAgMCA0NHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcclxuICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xyXG59XHJcblxyXG4uc3RvY2stc3VtbWFyeS1mb29kIHtcclxuICAgIGNvbG9yOiAjMDQ3ODU3O1xyXG4gICAgYmFja2dyb3VuZDogI2VjZmRmNTtcclxufVxyXG5cclxuLnN0b2NrLXN1bW1hcnktZHJpbmsge1xyXG4gICAgY29sb3I6ICMwMzY5YTE7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZWZmNmZmO1xyXG59XHJcblxyXG4uc3RvY2stc3VtbWFyeS1ubSB7XHJcbiAgICBjb2xvcjogIzdjM2FlZDtcclxuICAgIGJhY2tncm91bmQ6ICNmNWYzZmY7XHJcbn1cclxuXHJcbi5zdG9jay1zdW1tYXJ5LXRvdGFsIHtcclxuICAgIGNvbG9yOiAjYjQ1MzA5O1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZmJlYjtcclxufVxyXG5cclxuLnN0b2NrLXN1bW1hcnktY2FyZCBzdHJvbmcge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBjb2xvcjogIzExMTgyNztcclxuICAgIGZvbnQtc2l6ZTogMS4yMnJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5NTA7XHJcbiAgICBsaW5lLWhlaWdodDogMTtcclxufVxyXG5cclxuLnN0b2NrLXN1bW1hcnktY2FyZCBzbWFsbCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbi10b3A6IDVweDtcclxuICAgIGNvbG9yOiAjNjQ3NDhiO1xyXG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcclxufVxyXG5cclxuLnN0b2NrLW1haW4tY2FyZCB7XHJcbiAgICB0cmFuc2l0aW9uOlxyXG4gICAgICAgICAgICBib3gtc2hhZG93IDAuMThzIGVhc2UsXHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvciAwLjE4cyBlYXNlLFxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kIDAuMThzIGVhc2U7XHJcbn1cclxuXHJcbi5zdG9jay1tYWluLWNhcmQuaXMtc2F2ZWQge1xyXG4gICAgYW5pbWF0aW9uOiBzdG9ja1NhdmVkUHVsc2UgMS4zNXMgZWFzZS1vdXQ7XHJcbn1cclxuXHJcbi5zdG9jay1maWx0ZXItYmFyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZ2FwOiAxMHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcclxufVxyXG5cclxuLnN0b2NrLXNlYXJjaC13cmFwcGVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgd2lkdGg6IG1pbig1MjBweCwgMTAwJSk7XHJcbn1cclxuXHJcbi5zdG9jay1zZWFyY2gtaWNvbiB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiAxNXB4O1xyXG4gICAgY29sb3I6ICMwODc1ZTE7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG5cclxuLnN0b2NrLXNlYXJjaC1pbnB1dCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1pbi1oZWlnaHQ6IDQycHg7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDQ0cHggMTBweCA0MnB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSg4LCAxMTcsIDIyNSwgMC4xNik7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGJhY2tncm91bmQ6XHJcbiAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45NikgMCUsIHJnYmEoMjQ2LCAyNTAsIDI1NSwgMC45NikgMTAwJSk7XHJcbiAgICBjb2xvcjogIzExMTgyNztcclxuICAgIGZvbnQtc2l6ZTogMC44NHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBib3gtc2hhZG93OiAwIDhweCAxOHB4IHJnYmEoMTUsIDIzLCA0MiwgMC4wNTUpO1xyXG4gICAgdHJhbnNpdGlvbjpcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yIDAuMThzIGVhc2UsXHJcbiAgICAgICAgICAgIGJveC1zaGFkb3cgMC4xOHMgZWFzZSxcclxuICAgICAgICAgICAgYmFja2dyb3VuZCAwLjE4cyBlYXNlO1xyXG59XHJcblxyXG4uc3RvY2stc2VhcmNoLWlucHV0OjpwbGFjZWhvbGRlciB7XHJcbiAgICBjb2xvcjogIzk0YTNiODtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuXHJcbi5zdG9jay1zZWFyY2gtaW5wdXQ6Zm9jdXMge1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgIGJvcmRlci1jb2xvcjogIzA4NzVlMTtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XHJcbiAgICBib3gtc2hhZG93OlxyXG4gICAgICAgICAgICAwIDAgMCA0cHggcmdiYSg4LCAxMTcsIDIyNSwgMC4xMiksXHJcbiAgICAgICAgICAgIDAgMTJweCAyNHB4IHJnYmEoMTUsIDIzLCA0MiwgMC4wOCk7XHJcbn1cclxuXHJcbi5zdG9jay1zZWFyY2gtY2xlYXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IDlweDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgd2lkdGg6IDI3cHg7XHJcbiAgICBoZWlnaHQ6IDI3cHg7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMTUsIDIzLCA0MiwgMC4wNik7XHJcbiAgICBjb2xvcjogIzY0NzQ4YjtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHRyYW5zaXRpb246XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQgMC4xOHMgZWFzZSxcclxuICAgICAgICAgICAgY29sb3IgMC4xOHMgZWFzZSxcclxuICAgICAgICAgICAgdHJhbnNmb3JtIDAuMThzIGVhc2U7XHJcbn1cclxuXHJcbi5zdG9jay1zZWFyY2gtY2xlYXI6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSg4LCAxMTcsIDIyNSwgMC4xMik7XHJcbiAgICBjb2xvcjogIzA4NzVlMTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XHJcbn1cclxuXHJcbi5zdG9jay10b2FzdC1tZXNzYWdlIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZ2FwOiAxMHB4O1xyXG4gICAgbWFyZ2luOiAxNnB4O1xyXG4gICAgcGFkZGluZzogMTNweCAxNnB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMThweDtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XHJcbiAgICBjb2xvcjogIzExMTgyNztcclxuICAgIGZvbnQtc2l6ZTogMC44NHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA4NTA7XHJcbiAgICBib3gtc2hhZG93OiAwIDE2cHggMzRweCByZ2JhKDE1LCAyMywgNDIsIDAuMTIpO1xyXG4gICAgYW5pbWF0aW9uOiBzdG9ja1RvYXN0SW4gMC4yMnMgZWFzZS1vdXQ7XHJcbn1cclxuXHJcbi5zdG9jay10b2FzdC1zdWNjZXNzIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoNCwgMTIwLCA4NywgMC4xNik7XHJcbn1cclxuXHJcbi5zdG9jay10b2FzdC1kYW5nZXIge1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyMjAsIDM4LCAzOCwgMC4xNik7XHJcbn1cclxuXHJcbi5zdG9jay10b2FzdC1pbmZvIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoOCwgMTE3LCAyMjUsIDAuMTYpO1xyXG59XHJcblxyXG4uc3RvY2stdG9hc3QtaWNvbiB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIHdpZHRoOiAyOHB4O1xyXG4gICAgaGVpZ2h0OiAyOHB4O1xyXG4gICAgZmxleDogMCAwIDI4cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxufVxyXG5cclxuLnN0b2NrLXRvYXN0LXN1Y2Nlc3MgLnN0b2NrLXRvYXN0LWljb24ge1xyXG4gICAgY29sb3I6ICMwNDc4NTc7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZWNmZGY1O1xyXG59XHJcblxyXG4uc3RvY2stdG9hc3QtZGFuZ2VyIC5zdG9jay10b2FzdC1pY29uIHtcclxuICAgIGNvbG9yOiAjZGMyNjI2O1xyXG4gICAgYmFja2dyb3VuZDogI2ZlZjJmMjtcclxufVxyXG5cclxuLnN0b2NrLXRvYXN0LWluZm8gLnN0b2NrLXRvYXN0LWljb24ge1xyXG4gICAgY29sb3I6ICMwODc1ZTE7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZWFmNGZmO1xyXG59XHJcblxyXG4uc3RvY2stcGFnZSAudGFibGUtcmVzcG9uc2l2ZSB7XHJcbiAgICBvdmVyZmxvdzogYXV0bztcclxufVxyXG5cclxuLnN0b2NrLXBhZ2UgdGFibGUudGFibGUgdGJvZHkgdHIge1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTRweDtcclxufVxyXG5cclxuLnN0b2NrLXBhZ2UgdGFibGUudGFibGUgdGJvZHkgdGQ6Zmlyc3QtY2hpbGQge1xyXG4gICAgZm9udC13ZWlnaHQ6IDg1MDtcclxufVxyXG5cclxuLnN0b2NrLXBhZ2UgdGFibGUudGFibGUgdGZvb3QgdHIge1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMTUsIDIzLCA0MiwgMC4wOCk7XHJcbn1cclxuXHJcbi5zdG9jay1wYWdlIC5pbnB1dC1ncm91cCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xyXG59XHJcblxyXG4uc3RvY2stcGFnZSAuaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbDpmb2N1cyB7XHJcbiAgICBib3gtc2hhZG93OiBub25lO1xyXG59XHJcblxyXG4uc3RvY2stcGFnZSAuYm9yZGVyLWRhc2hlZCB7XHJcbiAgICBib3JkZXItc3R5bGU6IGRhc2hlZCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHN0b2NrVG9hc3RJbiB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTtcclxuICAgIH1cclxuXHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc3RvY2tTYXZlZFB1bHNlIHtcclxuICAgIDAlIHtcclxuICAgICAgICBib3gtc2hhZG93OlxyXG4gICAgICAgICAgICAgICAgaW5zZXQgMCAwIDAgMnB4IHJnYmEoMzQsIDE5NywgOTQsIDAuMzIpLFxyXG4gICAgICAgICAgICAgICAgMCAyMnB4IDU1cHggcmdiYSgzNCwgMTk3LCA5NCwgMC4xNCkgIWltcG9ydGFudDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZWNmZGY1O1xyXG4gICAgfVxyXG5cclxuICAgIDEwMCUge1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMjJweCA1NXB4IHJnYmEoMTUsIDIzLCA0MiwgMC4xMCkgIWltcG9ydGFudDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTQpO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcclxuICAgIC5zdG9jay1zdW1tYXJ5LWdyaWQge1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIG1pbm1heCgxNzBweCwgMWZyKSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgLnN0b2NrLXN1bW1hcnktZ3JpZCB7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcbiAgICB9XHJcblxyXG4gICAgLnN0b2NrLXN1bW1hcnktY2FyZCB7XHJcbiAgICAgICAgbWluLWhlaWdodDogNzhweDtcclxuICAgIH1cclxufVxyXG5cclxuLnBsYW5uaW5nLXRlYW0tY2FyZCxcclxuLnBsYW5uaW5nLWNhbGVuZGFyLWNhcmQge1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNSwgMjMsIDQyLCAwLjA4KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDI0cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTQpO1xyXG4gICAgYm94LXNoYWRvdzogMCAyMnB4IDU1cHggcmdiYSgxNSwgMjMsIDQyLCAwLjEwKTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTJweCk7XHJcbn1cclxuXHJcbi5wbGFubmluZy10ZWFtLWhlYWRlcixcclxuLnBsYW5uaW5nLWNhbGVuZGFyLXRvb2xiYXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBnYXA6IDE4cHg7XHJcbiAgICBwYWRkaW5nOiAxNnB4IDE4cHg7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgxNSwgMjMsIDQyLCAwLjA4KTtcclxuICAgIGJhY2tncm91bmQ6XHJcbiAgICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgdG9wIGxlZnQsIHJnYmEoMTY4LCA4NSwgMjQ3LCAwLjEyKSwgdHJhbnNwYXJlbnQgMzQlKSxcclxuICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2ZmZmZmZiAwJSwgI2ZhZjVmZiAxMDAlKTtcclxufVxyXG5cclxuLnBsYW5uaW5nLXNlY3Rpb24ta2lja2VyIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogM3B4O1xyXG4gICAgY29sb3I6ICM3YzNhZWQ7XHJcbiAgICBmb250LXNpemU6IDAuNzByZW07XHJcbiAgICBmb250LXdlaWdodDogOTAwO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGxldHRlci1zcGFjaW5nOiAwLjA3NWVtO1xyXG59XHJcblxyXG4ucGxhbm5pbmctdGVhbS1oZWFkZXIgaDIsXHJcbi5wbGFubmluZy1jdXJyZW50LXBlcmlvZCBoMixcclxuLnBsYW5uaW5nLWhvdXJzLWhlYWRlciBoMiB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBjb2xvcjogIzExMTgyNztcclxuICAgIGZvbnQtc2l6ZTogMS4wNXJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5NTA7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDI1ZW07XHJcbn1cclxuXHJcbi5wbGFubmluZy10ZWFtLWhlYWRlciBwLFxyXG4ucGxhbm5pbmctY3VycmVudC1wZXJpb2QgcCB7XHJcbiAgICBtYXJnaW46IDRweCAwIDA7XHJcbiAgICBjb2xvcjogIzY0NzQ4YjtcclxuICAgIGZvbnQtc2l6ZTogMC43OHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbn1cclxuXHJcbi5wbGFubmluZy10ZWFtLWNvdW50IHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogN3B4O1xyXG4gICAgcGFkZGluZzogOHB4IDEycHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGJhY2tncm91bmQ6ICNmNWYzZmY7XHJcbiAgICBjb2xvcjogIzdjM2FlZDtcclxuICAgIGZvbnQtc2l6ZTogMC44MHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5NTA7XHJcbn1cclxuXHJcbi5wbGFubmluZy10ZWFtLWJvZHkge1xyXG4gICAgZGlzcGxheTogZ3JpZDtcclxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDI2MHB4LCA0MjBweCkgMWZyO1xyXG4gICAgZ2FwOiAxOHB4O1xyXG4gICAgcGFkZGluZzogMThweDtcclxufVxyXG5cclxuLnBsYW5uaW5nLWVtcGxveWVlLWZvcm0ge1xyXG4gICAgZGlzcGxheTogZ3JpZDtcclxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciBhdXRvO1xyXG4gICAgZ2FwOiAxMHB4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxuLnBsYW5uaW5nLWlucHV0LXdyYXBwZXIsXHJcbi5wbGFubmluZy1kYXRlLWlucHV0LXdyYXBwZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4ucGxhbm5pbmctaW5wdXQtd3JhcHBlciBpLFxyXG4ucGxhbm5pbmctZGF0ZS1pbnB1dC13cmFwcGVyIGkge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogMTNweDtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgY29sb3I6ICM3YzNhZWQ7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG5cclxuLnBsYW5uaW5nLWlucHV0LFxyXG4ucGxhbm5pbmctZGF0ZS1pbnB1dCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1pbi1oZWlnaHQ6IDQwcHg7XHJcbiAgICBwYWRkaW5nOiA5cHggMTNweCA5cHggMzhweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTI0LCA1OCwgMjM3LCAwLjE2KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2ZmZmZmZiAwJSwgI2ZiZjhmZiAxMDAlKTtcclxuICAgIGNvbG9yOiAjMTExODI3O1xyXG4gICAgZm9udC1zaXplOiAwLjgycmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDc1MDtcclxuICAgIGJveC1zaGFkb3c6IDAgOHB4IDE4cHggcmdiYSgxNSwgMjMsIDQyLCAwLjA1NSk7XHJcbn1cclxuXHJcbi5wbGFubmluZy1pbnB1dDpmb2N1cyxcclxuLnBsYW5uaW5nLWRhdGUtaW5wdXQ6Zm9jdXMge1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgIGJvcmRlci1jb2xvcjogIzdjM2FlZDtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCByZ2JhKDEyNCwgNTgsIDIzNywgMC4xMik7XHJcbn1cclxuXHJcbi5wbGFubmluZy1hZGQtZW1wbG95ZWUtYnRuIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgZ2FwOiA3cHg7XHJcbiAgICBtaW4taGVpZ2h0OiA0MHB4O1xyXG4gICAgcGFkZGluZzogOXB4IDE0cHg7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICM3YzNhZWQgMCUsICNhODU1ZjcgMTAwJSk7XHJcbiAgICBjb2xvcjogI2ZmZmZmZjtcclxuICAgIGZvbnQtc2l6ZTogMC44MnJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbiAgICBib3gtc2hhZG93OiAwIDEycHggMjRweCByZ2JhKDEyNCwgNTgsIDIzNywgMC4xOCk7XHJcbn1cclxuXHJcbi5wbGFubmluZy1lbXBsb3llZXMtbGlzdCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGdhcDogOXB4O1xyXG59XHJcblxyXG4ucGxhbm5pbmctZW1wbG95ZWUtcGlsbCB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXA6IDhweDtcclxuICAgIHBhZGRpbmc6IDhweCA5cHg7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE1LCAyMywgNDIsIDAuMDgpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xyXG4gICAgYm94LXNoYWRvdzogMCA4cHggMThweCByZ2JhKDE1LCAyMywgNDIsIDAuMDYpO1xyXG59XHJcblxyXG4ucGxhbm5pbmctZW1wbG95ZWUtY29sb3IsXHJcbi5wbGFubmluZy1ncmlkLWVtcGxveWVlLWNvbG9yLFxyXG4ucGxhbm5pbmctaG91cnMtY29sb3Ige1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgd2lkdGg6IDEwcHg7XHJcbiAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICBmbGV4OiAwIDAgMTBweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xyXG59XHJcblxyXG4ucGxhbm5pbmctZW1wbG95ZWUtbmFtZSB7XHJcbiAgICBjb2xvcjogIzExMTgyNztcclxuICAgIGZvbnQtc2l6ZTogMC43OHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcclxufVxyXG5cclxuLnBsYW5uaW5nLWVtcGxveWVlLWRlbGV0ZSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIHdpZHRoOiAyMnB4O1xyXG4gICAgaGVpZ2h0OiAyMnB4O1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmVmMmYyO1xyXG4gICAgY29sb3I6ICNkYzI2MjY7XHJcbiAgICBmb250LXNpemU6IDAuNjhyZW07XHJcbn1cclxuXHJcbi5wbGFubmluZy1lbXB0eS1pbmxpbmUge1xyXG4gICAgY29sb3I6ICM2NDc0OGI7XHJcbiAgICBmb250LXNpemU6IDAuODJyZW07XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG59XHJcblxyXG4ucGxhbm5pbmctdmlldy10b2dnbGUsXHJcbi5wbGFubmluZy1uYXYtZ3JvdXAsXHJcbi5wbGFubmluZy1leHBvcnQtZ3JvdXAge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgcGFkZGluZzogNHB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNSwgMjMsIDQyLCAwLjA4KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg2KTtcclxuICAgIGJveC1zaGFkb3c6IDAgOHB4IDE4cHggcmdiYSgxNSwgMjMsIDQyLCAwLjA1NSk7XHJcbn1cclxuXHJcbi5wbGFubmluZy12aWV3LXRvZ2dsZSBidXR0b24sXHJcbi5wbGFubmluZy1uYXYtZ3JvdXAgYnV0dG9uLFxyXG4ucGxhbm5pbmctZXhwb3J0LWdyb3VwIGJ1dHRvbiB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGdhcDogN3B4O1xyXG4gICAgbWluLWhlaWdodDogMzRweDtcclxuICAgIHBhZGRpbmc6IDdweCAxMnB4O1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgIGNvbG9yOiAjNjQ3NDhiO1xyXG4gICAgZm9udC1zaXplOiAwLjc2cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcclxufVxyXG5cclxuLnBsYW5uaW5nLXZpZXctdG9nZ2xlIGJ1dHRvbi5pcy1hY3RpdmUge1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzdjM2FlZCAwJSwgI2E4NTVmNyAxMDAlKTtcclxuICAgIGNvbG9yOiAjZmZmZmZmO1xyXG4gICAgYm94LXNoYWRvdzogMCAxMHB4IDIwcHggcmdiYSgxMjQsIDU4LCAyMzcsIDAuMTgpO1xyXG59XHJcblxyXG4ucGxhbm5pbmctdG9vbGJhci1hY3Rpb25zIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGdhcDogMTBweDtcclxufVxyXG5cclxuLnBsYW5uaW5nLWNhbGVuZGFyLWJvZHkge1xyXG4gICAgcGFkZGluZzogMThweDtcclxufVxyXG5cclxuLnBsYW5uaW5nLWN1cnJlbnQtcGVyaW9kIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIGdhcDogMTRweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDE0cHg7XHJcbn1cclxuXHJcbi5wbGFubmluZy1oZWxwLWJhZGdlLFxyXG4ucGxhbm5pbmctcnVsZS1iYWRnZSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXA6IDdweDtcclxuICAgIHBhZGRpbmc6IDdweCAxMXB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZjVmM2ZmO1xyXG4gICAgY29sb3I6ICM3YzNhZWQ7XHJcbiAgICBmb250LXNpemU6IDAuNzJyZW07XHJcbiAgICBmb250LXdlaWdodDogOTAwO1xyXG59XHJcblxyXG4ucGxhbm5pbmctcmVzb3VyY2UtZ3JpZCxcclxuLnBsYW5uaW5nLXdlZWstdmlldyB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE1LCAyMywgNDIsIDAuMDgpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XHJcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYwKTtcclxufVxyXG5cclxuLnBsYW5uaW5nLWdyaWQtZW1wbG95ZWUtaGVhZGVyIHtcclxuICAgIHBhZGRpbmc6IDEwcHggMTJweDtcclxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMTUsIDIzLCA0MiwgMC4wOCk7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZjhmYWZjO1xyXG4gICAgY29sb3I6ICM2NDc0OGI7XHJcbiAgICBmb250LXNpemU6IDAuNzJyZW07XHJcbiAgICBmb250LXdlaWdodDogOTUwO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGxldHRlci1zcGFjaW5nOiAwLjA0ZW07XHJcbn1cclxuXHJcbi5wbGFubmluZy1ncmlkLWhvdXIge1xyXG4gICAgcGFkZGluZzogMTBweCA4cHg7XHJcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDE1LCAyMywgNDIsIDAuMDYpO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZDogI2Y4ZmFmYztcclxufVxyXG5cclxuLnBsYW5uaW5nLWdyaWQtcm93IHtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDE1LCAyMywgNDIsIDAuMDYpO1xyXG59XHJcblxyXG4ucGxhbm5pbmctZ3JpZC1lbXBsb3llZS1jZWxsIHtcclxuICAgIHBhZGRpbmc6IDEwcHggMTJweDtcclxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMTUsIDIzLCA0MiwgMC4wOCk7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xyXG59XHJcblxyXG4ucGxhbm5pbmctZ3JpZC1lbXBsb3llZSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogOXB4O1xyXG59XHJcblxyXG4ucGxhbm5pbmctZ3JpZC1lbXBsb3llZS1uYW1lIHtcclxuICAgIGNvbG9yOiAjMTExODI3O1xyXG4gICAgZm9udC1zaXplOiAwLjgwcmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xyXG59XHJcblxyXG4ucGxhbm5pbmctZ3JpZC1jZWxsIHtcclxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMTUsIDIzLCA0MiwgMC4wNTUpO1xyXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjEycyBlYXNlO1xyXG59XHJcblxyXG4ucGxhbm5pbmctZ3JpZC1jZWxsLmlzLXNlbGVjdGVkIHtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMTI0LCA1OCwgMjM3LCAwLjEyKTtcclxufVxyXG5cclxuLnBsYW5uaW5nLWdyaWQtY2VsbC5pcy1wYXN0IHtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMTQ4LCAxNjMsIDE4NCwgMC4wNik7XHJcbn1cclxuXHJcbi5wbGFubmluZy13ZWVrLWRheS10aXRsZSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7XHJcbiAgICBjb2xvcjogIzExMTgyNztcclxuICAgIGZvbnQtc2l6ZTogMC44NnJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5NTA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcclxufVxyXG5cclxuLnBsYW5uaW5nLWhvdXJzLWNhcmQge1xyXG4gICAgbWFyZ2luLXRvcDogMThweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTUsIDIzLCA0MiwgMC4wOCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcclxuICAgIGJveC1zaGFkb3c6IDAgMTRweCAzMHB4IHJnYmEoMTUsIDIzLCA0MiwgMC4wNik7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4ucGxhbm5pbmctaG91cnMtaGVhZGVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgZ2FwOiAxNHB4O1xyXG4gICAgcGFkZGluZzogMTRweCAxNnB4O1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTUsIDIzLCA0MiwgMC4wOCk7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZjhmYWZjO1xyXG59XHJcblxyXG4ucGxhbm5pbmctaG91cnMtdGFibGUge1xyXG4gICAgZm9udC1zaXplOiAwLjg0cmVtO1xyXG59XHJcblxyXG4ucGxhbm5pbmctaG91cnMtdGFibGUgdGgge1xyXG4gICAgY29sb3I6ICM2NDc0OGI7XHJcbiAgICBmb250LXNpemU6IDAuNzJyZW07XHJcbiAgICBmb250LXdlaWdodDogOTUwO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGxldHRlci1zcGFjaW5nOiAwLjA0ZW07XHJcbn1cclxuXHJcbi5wbGFubmluZy1ob3Vycy10YWJsZSB0ZCxcclxuLnBsYW5uaW5nLWhvdXJzLXRhYmxlIHRoIHtcclxuICAgIHBhZGRpbmc6IDEwcHggMTRweDtcclxufVxyXG5cclxuLnBsYW5uaW5nLWhvdXJzLXRhYmxlIHRmb290IHRoIHtcclxuICAgIGNvbG9yOiAjMTExODI3O1xyXG4gICAgYmFja2dyb3VuZDogI2Y4ZmFmYztcclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XHJcbiAgICAucGxhbm5pbmctdGVhbS1ib2R5IHtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuICAgIH1cclxuXHJcbiAgICAucGxhbm5pbmctZW1wbG95ZWUtZm9ybSB7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcbiAgICB9XHJcblxyXG4gICAgLnBsYW5uaW5nLWNhbGVuZGFyLXRvb2xiYXIge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICB9XHJcblxyXG4gICAgLnBsYW5uaW5nLXRvb2xiYXItYWN0aW9ucyB7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcclxuICAgIC5wbGFubmluZy1jdXJyZW50LXBlcmlvZCxcclxuICAgIC5wbGFubmluZy1ob3Vycy1oZWFkZXIge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICB9XHJcblxyXG4gICAgLnBsYW5uaW5nLXZpZXctdG9nZ2xlLFxyXG4gICAgLnBsYW5uaW5nLW5hdi1ncm91cCxcclxuICAgIC5wbGFubmluZy1leHBvcnQtZ3JvdXAge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIH1cclxuXHJcbiAgICAucGxhbm5pbmctZGF0ZS1pbnB1dC13cmFwcGVyIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxufVxyXG5cclxuLnBsYW5uaW5nLXdlZWstc3VtbWFyeSB7XHJcbiAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcbiAgICBnYXA6IDE0cHg7XHJcbn1cclxuXHJcbi5wbGFubmluZy13ZWVrLXN1bW1hcnktY2FyZCB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNSwgMjMsIDQyLCAwLjA4KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDIycHg7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTYpO1xyXG4gICAgYm94LXNoYWRvdzogMCAxNnB4IDM2cHggcmdiYSgxNSwgMjMsIDQyLCAwLjA3NSk7XHJcbn1cclxuXHJcbi5wbGFubmluZy13ZWVrLXN1bW1hcnktY2FyZC5pcy10b2RheSB7XHJcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMTI0LCA1OCwgMjM3LCAwLjI4KTtcclxuICAgIGJveC1zaGFkb3c6XHJcbiAgICAgICAgICAgIGluc2V0IDRweCAwIDAgIzdjM2FlZCxcclxuICAgICAgICAgICAgMCAxOHB4IDQwcHggcmdiYSgxMjQsIDU4LCAyMzcsIDAuMTIpO1xyXG59XHJcblxyXG4ucGxhbm5pbmctd2Vlay1zdW1tYXJ5LWhlYWRlciB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIGdhcDogMTRweDtcclxuICAgIHBhZGRpbmc6IDE1cHggMTdweDtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDE1LCAyMywgNDIsIDAuMDgpO1xyXG4gICAgYmFja2dyb3VuZDpcclxuICAgICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCB0b3AgbGVmdCwgcmdiYSgxNjgsIDg1LCAyNDcsIDAuMTApLCB0cmFuc3BhcmVudCAzNCUpLFxyXG4gICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZmZmZmZmIDAlLCAjZmFmNWZmIDEwMCUpO1xyXG59XHJcblxyXG4ucGxhbm5pbmctd2Vlay1zdW1tYXJ5LWhlYWRlciBoMyB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBjb2xvcjogIzExMTgyNztcclxuICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5NTA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcclxuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xyXG59XHJcblxyXG4ucGxhbm5pbmctd2Vlay1zdW1tYXJ5LW1ldGEge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXA6IDhweDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbn1cclxuXHJcbi5wbGFubmluZy13ZWVrLXN1bW1hcnktbWV0YSBzcGFuIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogN3B4O1xyXG4gICAgcGFkZGluZzogN3B4IDExcHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGJhY2tncm91bmQ6ICNmNWYzZmY7XHJcbiAgICBjb2xvcjogIzdjM2FlZDtcclxuICAgIGZvbnQtc2l6ZTogMC43MnJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4ucGxhbm5pbmctd2Vlay1zdW1tYXJ5LWJvZHkge1xyXG4gICAgcGFkZGluZzogMTJweCAxNHB4O1xyXG59XHJcblxyXG4ucGxhbm5pbmctd2Vlay1zaGlmdHMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBnYXA6IDhweDtcclxufVxyXG5cclxuLnBsYW5uaW5nLXdlZWstc2hpZnQtY29sb3Ige1xyXG4gICAgd2lkdGg6IDEwcHg7XHJcbiAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxufVxyXG5cclxuLnBsYW5uaW5nLXdlZWstc2hpZnQtZW1wbG95ZWUge1xyXG4gICAgY29sb3I6ICMxMTE4Mjc7XHJcbiAgICBmb250LXNpemU6IDAuODRyZW07XHJcbiAgICBmb250LXdlaWdodDogODAwO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XHJcbn1cclxuXHJcbi5wbGFubmluZy13ZWVrLXNoaWZ0LWhvdXJzIHtcclxuICAgIHBhZGRpbmc6IDZweCAxMHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZjhmYWZjO1xyXG4gICAgY29sb3I6ICMzMzQxNTU7XHJcbiAgICBmb250LXNpemU6IDAuNzZyZW07XHJcbiAgICBmb250LXdlaWdodDogOTAwO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLnBsYW5uaW5nLXdlZWstZW1wdHkge1xyXG4gICAgcGFkZGluZzogMThweDtcclxuICAgIGJvcmRlcjogMXB4IGRhc2hlZCByZ2JhKDEyNCwgNTgsIDIzNywgMC4yMCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxOHB4O1xyXG4gICAgYmFja2dyb3VuZDogI2ZhZjVmZjtcclxuICAgIGNvbG9yOiAjN2MzYWVkO1xyXG4gICAgZm9udC1zaXplOiAwLjgycmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDg1MDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLnBsYW5uaW5nLXdlZWstc3VtbWFyeS1mb290ZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICBwYWRkaW5nOiAwIDE0cHggMTRweDtcclxufVxyXG5cclxuLnBsYW5uaW5nLWVkaXQtZGF5LWJ1dHRvbiB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXA6IDdweDtcclxuICAgIG1pbi1oZWlnaHQ6IDM0cHg7XHJcbiAgICBwYWRkaW5nOiA3cHggMTJweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTI0LCA1OCwgMjM3LCAwLjE2KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcclxuICAgIGNvbG9yOiAjN2MzYWVkO1xyXG4gICAgZm9udC1zaXplOiAwLjc2cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgIGJveC1zaGFkb3c6IDAgOHB4IDE4cHggcmdiYSgxNSwgMjMsIDQyLCAwLjA1NSk7XHJcbiAgICB0cmFuc2l0aW9uOlxyXG4gICAgICAgICAgICB0cmFuc2Zvcm0gMC4xOHMgZWFzZSxcclxuICAgICAgICAgICAgYm94LXNoYWRvdyAwLjE4cyBlYXNlLFxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kIDAuMThzIGVhc2UsXHJcbiAgICAgICAgICAgIGNvbG9yIDAuMThzIGVhc2U7XHJcbn1cclxuXHJcbi5wbGFubmluZy1lZGl0LWRheS1idXR0b246aG92ZXIge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzdjM2FlZCAwJSwgI2E4NTVmNyAxMDAlKTtcclxuICAgIGNvbG9yOiAjZmZmZmZmO1xyXG4gICAgYm94LXNoYWRvdzogMCAxMnB4IDI0cHggcmdiYSgxMjQsIDU4LCAyMzcsIDAuMTgpO1xyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgIC5wbGFubmluZy13ZWVrLXN1bW1hcnktaGVhZGVyIHtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgfVxyXG5cclxuICAgIC5wbGFubmluZy13ZWVrLXN1bW1hcnktbWV0YSB7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgfVxyXG5cclxuICAgIC5wbGFubmluZy13ZWVrLXNoaWZ0IHtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDEycHggMWZyO1xyXG4gICAgfVxyXG5cclxuICAgIC5wbGFubmluZy13ZWVrLXNoaWZ0LWhvdXJzIHtcclxuICAgICAgICBncmlkLWNvbHVtbjogMjtcclxuICAgICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLnBsYW5uaW5nLXdlZWstc3VtbWFyeS1mb290ZXIge1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3RyZXRjaDtcclxuICAgIH1cclxuXHJcbiAgICAucGxhbm5pbmctZWRpdC1kYXktYnV0dG9uIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIH1cclxufVxyXG5cclxuLnBsYW5uaW5nLXdlZWstZW1wbG95ZWUtcm93IHtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgxNzBweCwgMjQwcHgpIDFmcjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXA6IDEycHg7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDEycHg7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE1LCAyMywgNDIsIDAuMDcpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XHJcbiAgICBib3gtc2hhZG93OiAwIDhweCAxOHB4IHJnYmEoMTUsIDIzLCA0MiwgMC4wNDUpO1xyXG59XHJcblxyXG4ucGxhbm5pbmctd2Vlay1lbXBsb3llZS1pZGVudGl0eSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogMTBweDtcclxuICAgIG1pbi13aWR0aDogMDtcclxufVxyXG5cclxuLnBsYW5uaW5nLXdlZWstZW1wbG95ZWUtc2xvdHMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgZ2FwOiA4cHg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbn1cclxuXHJcbi5wbGFubmluZy13ZWVrLWVtcGxveWVlLXJvdyAucGxhbm5pbmctd2Vlay1zaGlmdC1lbXBsb3llZSB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4ucGxhbm5pbmctd2Vlay1lbXBsb3llZS1yb3cgLnBsYW5uaW5nLXdlZWstc2hpZnQtaG91cnMge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgLnBsYW5uaW5nLXdlZWstZW1wbG95ZWUtcm93IHtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgIH1cclxuXHJcbiAgICAucGxhbm5pbmctd2Vlay1lbXBsb3llZS1zbG90cyB7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgIH1cclxufVxyXG5cclxuLnBsYW5uaW5nLWRpc2FibGVkLWVtcGxveWVlLWJhZGdlIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHdpZHRoOiBmaXQtY29udGVudDtcclxuICAgIG1hcmdpbi1sZWZ0OiA4cHg7XHJcbiAgICBwYWRkaW5nOiAzcHggN3B4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZjFmNWY5O1xyXG4gICAgY29sb3I6ICM2NDc0OGI7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEwMCwgMTE2LCAxMzksIDAuMTYpO1xyXG4gICAgZm9udC1zaXplOiAwLjYycmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMzVlbTtcclxufVxyXG5cclxuLnBsYW5uaW5nLWdyaWQtcm93OmhhcygucGxhbm5pbmctZGlzYWJsZWQtZW1wbG95ZWUtYmFkZ2UpIC5wbGFubmluZy1ncmlkLWVtcGxveWVlLWNlbGwge1xyXG4gICAgYmFja2dyb3VuZDogI2Y4ZmFmYztcclxufVxyXG5cclxuLnBsYW5uaW5nLWdyaWQtcm93OmhhcygucGxhbm5pbmctZGlzYWJsZWQtZW1wbG95ZWUtYmFkZ2UpIC5wbGFubmluZy1ncmlkLWNlbGwge1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgxNDgsIDE2MywgMTg0LCAwLjAzNSk7XHJcbn1cclxuXHJcbi5tZXJjdXJpYWxlLWRhc2hib2FyZCxcclxuLm1lcmN1cmlhbGUtcGFnZS1jb250ZW50IHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgZ2FwOiAxOHB4O1xyXG59XHJcblxyXG4ubWVyY3VyaWFsZS1zdW1tYXJ5LWdyaWQge1xyXG4gICAgZGlzcGxheTogZ3JpZDtcclxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIG1pbm1heCgxODBweCwgMWZyKSk7XHJcbiAgICBnYXA6IDE0cHg7XHJcbn1cclxuXHJcbi5tZXJjdXJpYWxlLXN1bW1hcnktY2FyZCxcclxuLm1lcmN1cmlhbGUtcGFuZWwsXHJcbi5tZXJjdXJpYWxlLXByb2R1Y3RzLWNhcmQge1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNSwgMjMsIDQyLCAwLjA4KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDI0cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTQpO1xyXG4gICAgYm94LXNoYWRvdzogMCAyMnB4IDU1cHggcmdiYSgxNSwgMjMsIDQyLCAwLjEwKTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTJweCk7XHJcbn1cclxuXHJcbi5tZXJjdXJpYWxlLXN1bW1hcnktY2FyZCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogMTNweDtcclxuICAgIG1pbi1oZWlnaHQ6IDg2cHg7XHJcbiAgICBwYWRkaW5nOiAxNXB4IDE2cHg7XHJcbiAgICBib3gtc2hhZG93OiAwIDE0cHggMzRweCByZ2JhKDE1LCAyMywgNDIsIDAuMDc1KTtcclxufVxyXG5cclxuLm1lcmN1cmlhbGUtc3VtbWFyeS1pY29uIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgd2lkdGg6IDQ0cHg7XHJcbiAgICBoZWlnaHQ6IDQ0cHg7XHJcbiAgICBmbGV4OiAwIDAgNDRweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XHJcbiAgICBmb250LXNpemU6IDEuMXJlbTtcclxufVxyXG5cclxuLnN1bW1hcnktY2F0ZWdvcmllcyB7XHJcbiAgICBjb2xvcjogIzA1OTY2OTtcclxuICAgIGJhY2tncm91bmQ6ICNlY2ZkZjU7XHJcbn1cclxuXHJcbi5zdW1tYXJ5LXN1YmNhdGVnb3JpZXMge1xyXG4gICAgY29sb3I6ICMwODc1ZTE7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZWFmNGZmO1xyXG59XHJcblxyXG4uc3VtbWFyeS1hY3RpdmUge1xyXG4gICAgY29sb3I6ICM3YzNhZWQ7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZjVmM2ZmO1xyXG59XHJcblxyXG4ubWVyY3VyaWFsZS1zdW1tYXJ5LWNhcmQgc3Ryb25nIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgY29sb3I6ICMxMTE4Mjc7XHJcbiAgICBmb250LXNpemU6IDEuMTJyZW07XHJcbiAgICBmb250LXdlaWdodDogOTUwO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7XHJcbn1cclxuXHJcbi5tZXJjdXJpYWxlLXN1bW1hcnktY2FyZCBzbWFsbCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbi10b3A6IDVweDtcclxuICAgIGNvbG9yOiAjNjQ3NDhiO1xyXG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcclxufVxyXG5cclxuLm1lcmN1cmlhbGUtcGFuZWwtaGVhZGVyLFxyXG4ubWVyY3VyaWFsZS1wcm9kdWN0cy1oZWFkZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBnYXA6IDE0cHg7XHJcbiAgICBwYWRkaW5nOiAxNnB4IDE4cHg7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgxNSwgMjMsIDQyLCAwLjA4KTtcclxuICAgIGJhY2tncm91bmQ6XHJcbiAgICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgdG9wIGxlZnQsIHJnYmEoMTYsIDE4NSwgMTI5LCAwLjEyKSwgdHJhbnNwYXJlbnQgMzQlKSxcclxuICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2ZmZmZmZiAwJSwgI2YwZmRmYSAxMDAlKTtcclxufVxyXG5cclxuLm1lcmN1cmlhbGUta2lja2VyIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogM3B4O1xyXG4gICAgY29sb3I6ICMwNTk2Njk7XHJcbiAgICBmb250LXNpemU6IDAuNzByZW07XHJcbiAgICBmb250LXdlaWdodDogOTAwO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGxldHRlci1zcGFjaW5nOiAwLjA3NWVtO1xyXG59XHJcblxyXG4ubWVyY3VyaWFsZS1wYW5lbC1oZWFkZXIgaDIsXHJcbi5tZXJjdXJpYWxlLXByb2R1Y3RzLWhlYWRlciBoMiB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBjb2xvcjogIzExMTgyNztcclxuICAgIGZvbnQtc2l6ZTogMS4wNXJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5NTA7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDI1ZW07XHJcbn1cclxuXHJcbi5tZXJjdXJpYWxlLXBhbmVsLWhlYWRlciBwLFxyXG4ubWVyY3VyaWFsZS1wcm9kdWN0cy1oZWFkZXIgcCB7XHJcbiAgICBtYXJnaW46IDRweCAwIDA7XHJcbiAgICBjb2xvcjogIzY0NzQ4YjtcclxuICAgIGZvbnQtc2l6ZTogMC43OHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbn1cclxuXHJcbi5tZXJjdXJpYWxlLXBhbmVsLWJvZHkge1xyXG4gICAgcGFkZGluZzogMThweDtcclxufVxyXG5cclxuLm1lcmN1cmlhbGUtY2F0ZWdvcnktZ3JpZCB7XHJcbiAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyMTBweCwgMWZyKSk7XHJcbiAgICBnYXA6IDEycHg7XHJcbn1cclxuXHJcbi5tZXJjdXJpYWxlLWNhdGVnb3J5LWNhcmQge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXA6IDEycHg7XHJcbiAgICBtaW4taGVpZ2h0OiA3OHB4O1xyXG4gICAgcGFkZGluZzogMTRweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTUsIDIzLCA0MiwgMC4wOCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBib3gtc2hhZG93OiAwIDEycHggMjZweCByZ2JhKDE1LCAyMywgNDIsIDAuMDY1KTtcclxuICAgIHRyYW5zaXRpb246XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybSAwLjE4cyBlYXNlLFxyXG4gICAgICAgICAgICBib3gtc2hhZG93IDAuMThzIGVhc2UsXHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvciAwLjE4cyBlYXNlLFxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kIDAuMThzIGVhc2U7XHJcbn1cclxuXHJcbi5tZXJjdXJpYWxlLWNhdGVnb3J5LWNhcmQ6aG92ZXIsXHJcbi5tZXJjdXJpYWxlLWNhdGVnb3J5LWNhcmQuaXMtYWN0aXZlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcclxuICAgIGJvcmRlci1jb2xvcjogcmdiYSg1LCAxNTAsIDEwNSwgMC4zMCk7XHJcbiAgICBiYWNrZ3JvdW5kOlxyXG4gICAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IHRvcCBsZWZ0LCByZ2JhKDE2LCAxODUsIDEyOSwgMC4xMCksIHRyYW5zcGFyZW50IDQyJSksXHJcbiAgICAgICAgICAgICNmZmZmZmY7XHJcbiAgICBib3gtc2hhZG93OiAwIDE4cHggMzZweCByZ2JhKDUsIDE1MCwgMTA1LCAwLjEyKTtcclxufVxyXG5cclxuLm1lcmN1cmlhbGUtY2F0ZWdvcnktaWNvbiB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIHdpZHRoOiA0MnB4O1xyXG4gICAgaGVpZ2h0OiA0MnB4O1xyXG4gICAgZmxleDogMCAwIDQycHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xyXG4gICAgYmFja2dyb3VuZDogI2VjZmRmNTtcclxuICAgIGNvbG9yOiAjMDU5NjY5O1xyXG59XHJcblxyXG4ubWVyY3VyaWFsZS1jYXRlZ29yeS1jYXJkIHN0cm9uZyB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGNvbG9yOiAjMTExODI3O1xyXG4gICAgZm9udC1zaXplOiAwLjkwcmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDk1MDtcclxufVxyXG5cclxuLm1lcmN1cmlhbGUtY2F0ZWdvcnktY2FyZCBzbWFsbCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbi10b3A6IDRweDtcclxuICAgIGNvbG9yOiAjNjQ3NDhiO1xyXG4gICAgZm9udC1zaXplOiAwLjcycmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDc1MDtcclxufVxyXG5cclxuLm1lcmN1cmlhbGUtc3ViY2F0ZWdvcnktc2VjdGlvbiB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGdhcDogMTZweDtcclxufVxyXG5cclxuLm1lcmN1cmlhbGUtc3ViY2F0ZWdvcnktcGlsbHMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGdhcDogOHB4O1xyXG59XHJcblxyXG4ubWVyY3VyaWFsZS1zdWJjYXRlZ29yeS1waWxsIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogN3B4O1xyXG4gICAgbWluLWhlaWdodDogMzZweDtcclxuICAgIHBhZGRpbmc6IDhweCAxMnB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSg1LCAxNTAsIDEwNSwgMC4xOCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XHJcbiAgICBjb2xvcjogIzA0Nzg1NztcclxuICAgIGZvbnQtc2l6ZTogMC43OHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBib3gtc2hhZG93OiAwIDhweCAxOHB4IHJnYmEoMTUsIDIzLCA0MiwgMC4wNTUpO1xyXG4gICAgdHJhbnNpdGlvbjpcclxuICAgICAgICAgICAgdHJhbnNmb3JtIDAuMThzIGVhc2UsXHJcbiAgICAgICAgICAgIGJveC1zaGFkb3cgMC4xOHMgZWFzZSxcclxuICAgICAgICAgICAgYmFja2dyb3VuZCAwLjE4cyBlYXNlLFxyXG4gICAgICAgICAgICBjb2xvciAwLjE4cyBlYXNlO1xyXG59XHJcblxyXG4ubWVyY3VyaWFsZS1zdWJjYXRlZ29yeS1waWxsOmhvdmVyLFxyXG4ubWVyY3VyaWFsZS1zdWJjYXRlZ29yeS1waWxsLmlzLWFjdGl2ZSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMDU5NjY5IDAlLCAjMTBiOTgxIDEwMCUpO1xyXG4gICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICBib3gtc2hhZG93OiAwIDEycHggMjRweCByZ2JhKDUsIDE1MCwgMTA1LCAwLjE4KTtcclxufVxyXG5cclxuLm1lcmN1cmlhbGUtbG9hZGluZy1zdGF0ZSxcclxuLm1lcmN1cmlhbGUtZW1wdHktc3RhdGUge1xyXG4gICAgcGFkZGluZzogMzRweCAxOHB4O1xyXG4gICAgYm9yZGVyOiAxcHggZGFzaGVkIHJnYmEoMTYsIDE4NSwgMTI5LCAwLjI0KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDIycHg7XHJcbiAgICBiYWNrZ3JvdW5kOlxyXG4gICAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IHRvcCwgcmdiYSgxNiwgMTg1LCAxMjksIDAuMDgpLCB0cmFuc3BhcmVudCAzNiUpLFxyXG4gICAgICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTIpO1xyXG4gICAgY29sb3I6ICM2NDc0OGI7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBmb250LXNpemU6IDAuODZyZW07XHJcbiAgICBmb250LXdlaWdodDogODAwO1xyXG59XHJcblxyXG4ubWVyY3VyaWFsZS1lbXB0eS1zdGF0ZSBpIHtcclxuICAgIGNvbG9yOiAjOTRhM2I4O1xyXG4gICAgZm9udC1zaXplOiAyLjdyZW07XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG59XHJcblxyXG4ubWVyY3VyaWFsZS1lbXB0eS1zdGF0ZSBoMyB7XHJcbiAgICBtYXJnaW46IDAgMCA2cHg7XHJcbiAgICBjb2xvcjogIzExMTgyNztcclxuICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5NTA7XHJcbn1cclxuXHJcbi5tZXJjdXJpYWxlLWVtcHR5LXN0YXRlIHAge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgY29sb3I6ICM2NDc0OGI7XHJcbn1cclxuXHJcbi5tZXJjdXJpYWxlLXNwaW5uZXIge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICB3aWR0aDogMjJweDtcclxuICAgIGhlaWdodDogMjJweDtcclxuICAgIG1hcmdpbi1yaWdodDogOHB4O1xyXG4gICAgYm9yZGVyOiAzcHggc29saWQgcmdiYSgxNiwgMTg1LCAxMjksIDAuMjApO1xyXG4gICAgYm9yZGVyLXRvcC1jb2xvcjogIzEwYjk4MTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIGFuaW1hdGlvbjogbWVyY3VyaWFsZVNwaW4gMC44cyBsaW5lYXIgaW5maW5pdGU7XHJcbn1cclxuXHJcbi5tZXJjdXJpYWxlLXByb2R1Y3RzLXN0YXRzIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgZ2FwOiA4cHg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG59XHJcblxyXG4ubWVyY3VyaWFsZS1zdGF0LXBpbGwge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZ2FwOiA3cHg7XHJcbiAgICBwYWRkaW5nOiA3cHggMTFweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoNSwgMTUwLCAxMDUsIDAuMTQpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xyXG4gICAgY29sb3I6ICMwNDc4NTc7XHJcbiAgICBmb250LXNpemU6IDAuNzJyZW07XHJcbiAgICBmb250LXdlaWdodDogOTAwO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4ubWVyY3VyaWFsZS1zdGF0LXBpbGwgc3Ryb25nIHtcclxuICAgIGZvbnQtc2l6ZTogMC43NnJlbTtcclxufVxyXG5cclxuLm1lcmN1cmlhbGUtc3RhdC1waWxsLmlzLWFjdGl2ZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZWNmZGY1O1xyXG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDUsIDE1MCwgMTA1LCAwLjI4KTtcclxufVxyXG5cclxuLm1lcmN1cmlhbGUtc3RhdC1waWxsLmlzLXdhcm5pbmcge1xyXG4gICAgY29sb3I6ICNiNDUzMDk7XHJcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMTgwLCA4MywgOSwgMC4xNik7XHJcbn1cclxuXHJcbi5tZXJjdXJpYWxlLXN0YXQtcGlsbC5pcy13YXJuaW5nLmlzLWFjdGl2ZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmYmViO1xyXG59XHJcblxyXG4ubWVyY3VyaWFsZS1wcm9kdWN0cy10b29sYmFyIHtcclxuICAgIHBhZGRpbmc6IDE0cHggMTZweCA0cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI0OCwgMjUwLCAyNTIsIDAuNjgpO1xyXG59XHJcblxyXG4ubWVyY3VyaWFsZS1zZWFyY2gtd3JhcHBlciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB3aWR0aDogbWluKDU2MHB4LCAxMDAlKTtcclxufVxyXG5cclxuLm1lcmN1cmlhbGUtc2VhcmNoLXdyYXBwZXIgaSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiAxNXB4O1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBjb2xvcjogIzA1OTY2OTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxufVxyXG5cclxuLm1lcmN1cmlhbGUtc2VhcmNoLXdyYXBwZXIgaW5wdXQge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtaW4taGVpZ2h0OiA0MnB4O1xyXG4gICAgcGFkZGluZzogMTBweCA0NHB4IDEwcHggNDJweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoNSwgMTUwLCAxMDUsIDAuMTYpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZmZmZmZmIDAlLCAjZjZmZmZiIDEwMCUpO1xyXG4gICAgY29sb3I6ICMxMTE4Mjc7XHJcbiAgICBmb250LXNpemU6IDAuODRyZW07XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgYm94LXNoYWRvdzogMCA4cHggMThweCByZ2JhKDE1LCAyMywgNDIsIDAuMDU1KTtcclxufVxyXG5cclxuLm1lcmN1cmlhbGUtc2VhcmNoLXdyYXBwZXIgaW5wdXQ6Zm9jdXMge1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgIGJvcmRlci1jb2xvcjogIzA1OTY2OTtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCByZ2JhKDUsIDE1MCwgMTA1LCAwLjEyKTtcclxufVxyXG5cclxuLm1lcmN1cmlhbGUtc2VhcmNoLXdyYXBwZXIgYnV0dG9uIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiA5cHg7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIHdpZHRoOiAyN3B4O1xyXG4gICAgaGVpZ2h0OiAyN3B4O1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDE1LCAyMywgNDIsIDAuMDYpO1xyXG4gICAgY29sb3I6ICM2NDc0OGI7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbn1cclxuXHJcbi5tZXJjdXJpYWxlLXRhYmxlLXJlc3BvbnNpdmUge1xyXG4gICAgb3ZlcmZsb3cteDogYXV0bztcclxuICAgIHBhZGRpbmc6IDEwcHggMTJweCA0cHg7XHJcbn1cclxuXHJcbi5tZXJjdXJpYWxlLXRhYmxlIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWluLXdpZHRoOiA5MjBweDtcclxuICAgIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XHJcbiAgICBib3JkZXItc3BhY2luZzogMCA4cHg7XHJcbn1cclxuXHJcbi5tZXJjdXJpYWxlLXRhYmxlIHRoZWFkIHRoIHtcclxuICAgIHBhZGRpbmc6IDEwcHggMTRweDtcclxuICAgIGNvbG9yOiAjNjQ3NDhiO1xyXG4gICAgZm9udC1zaXplOiAwLjcwcmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNTVlbTtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi5tZXJjdXJpYWxlLXRhYmxlIHRoZWFkIGJ1dHRvbiB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXA6IDZweDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgZm9udDogaW5oZXJpdDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLm1lcmN1cmlhbGUtdGFibGUgdGhlYWQgYnV0dG9uIHNwYW4ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBtaW4td2lkdGg6IDE4cHg7XHJcbiAgICBoZWlnaHQ6IDE4cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoNSwgMTUwLCAxMDUsIDAuMDgpO1xyXG4gICAgY29sb3I6ICMwNTk2Njk7XHJcbiAgICBmb250LXNpemU6IDAuNjhyZW07XHJcbn1cclxuXHJcbi5tZXJjdXJpYWxlLXRhYmxlIHRib2R5IHRyIHtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XHJcbiAgICBib3gtc2hhZG93OiAwIDVweCAxNnB4IHJnYmEoMTUsIDIzLCA0MiwgMC4wNTUpO1xyXG4gICAgdHJhbnNpdGlvbjpcclxuICAgICAgICAgICAgdHJhbnNmb3JtIDAuMThzIGVhc2UsXHJcbiAgICAgICAgICAgIGJveC1zaGFkb3cgMC4xOHMgZWFzZTtcclxufVxyXG5cclxuLm1lcmN1cmlhbGUtdGFibGUgdGJvZHkgdHI6aG92ZXIge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xyXG4gICAgYm94LXNoYWRvdzogMCAxNHB4IDMwcHggcmdiYSg1LCAxNTAsIDEwNSwgMC4xMik7XHJcbn1cclxuXHJcbi5tZXJjdXJpYWxlLXRhYmxlIHRib2R5IHRkIHtcclxuICAgIHBhZGRpbmc6IDEzcHggMTRweDtcclxuICAgIGNvbG9yOiAjMTExODI3O1xyXG4gICAgZm9udC1zaXplOiAwLjg0cmVtO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxufVxyXG5cclxuLm1lcmN1cmlhbGUtdGFibGUgdGJvZHkgdGQ6Zmlyc3QtY2hpbGQge1xyXG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMTZweDtcclxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDE2cHg7XHJcbn1cclxuXHJcbi5tZXJjdXJpYWxlLXRhYmxlIHRib2R5IHRkOmxhc3QtY2hpbGQge1xyXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDE2cHg7XHJcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMTZweDtcclxufVxyXG5cclxuLm1lcmN1cmlhbGUtcHJvZHVjdC1uYW1lIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgY29sb3I6ICMxMTE4Mjc7XHJcbiAgICBmb250LXdlaWdodDogOTUwO1xyXG59XHJcblxyXG4ubWVyY3VyaWFsZS1wcm9kdWN0LXJlZiB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbi10b3A6IDNweDtcclxuICAgIGNvbG9yOiAjNjQ3NDhiO1xyXG4gICAgZm9udC1zaXplOiAwLjcycmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDc1MDtcclxufVxyXG5cclxuLm1lcmN1cmlhbGUtbXV0ZWQtY2VsbCxcclxuLm1lcmN1cmlhbGUtYnJhbmQtY2VsbCB7XHJcbiAgICBjb2xvcjogIzMzNDE1NTtcclxuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XHJcbn1cclxuXHJcbi5tZXJjdXJpYWxlLXNtYWxsLWJhZGdlLFxyXG4ubWVyY3VyaWFsZS1wcmljZS1iYWRnZSxcclxuLm1lcmN1cmlhbGUtc3RhdHVzLWJhZGdlIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICBmb250LXNpemU6IDAuNzRyZW07XHJcbiAgICBmb250LXdlaWdodDogOTAwO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLm1lcmN1cmlhbGUtc21hbGwtYmFkZ2Uge1xyXG4gICAgcGFkZGluZzogNnB4IDlweDtcclxuICAgIGJhY2tncm91bmQ6ICNmOGZhZmM7XHJcbiAgICBjb2xvcjogIzMzNDE1NTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTUsIDIzLCA0MiwgMC4wOCk7XHJcbn1cclxuXHJcbi5tZXJjdXJpYWxlLXByaWNlLWJhZGdlIHtcclxuICAgIHBhZGRpbmc6IDdweCAxMXB4O1xyXG4gICAgYmFja2dyb3VuZDogI2VjZmRmNTtcclxuICAgIGNvbG9yOiAjMDQ3ODU3O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSg0LCAxMjAsIDg3LCAwLjE0KTtcclxufVxyXG5cclxuLm1lcmN1cmlhbGUtc3RhdHVzLWJhZGdlIHtcclxuICAgIGdhcDogNnB4O1xyXG4gICAgcGFkZGluZzogN3B4IDExcHg7XHJcbn1cclxuXHJcbi5tZXJjdXJpYWxlLXN0YXR1cy1iYWRnZS5pcy1hdmFpbGFibGUge1xyXG4gICAgYmFja2dyb3VuZDogI2VjZmRmNTtcclxuICAgIGNvbG9yOiAjMDQ3ODU3O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSg0LCAxMjAsIDg3LCAwLjE0KTtcclxufVxyXG5cclxuLm1lcmN1cmlhbGUtc3RhdHVzLWJhZGdlLmlzLXJ1cHR1cmUge1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZmJlYjtcclxuICAgIGNvbG9yOiAjYjQ1MzA5O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxODAsIDgzLCA5LCAwLjE2KTtcclxufVxyXG5cclxuLm1lcmN1cmlhbGUtcGFnaW5hdGlvbiB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIGdhcDogMTRweDtcclxuICAgIHBhZGRpbmc6IDE0cHggMTZweCAxNnB4O1xyXG59XHJcblxyXG4ubWVyY3VyaWFsZS1wYWdpbmF0aW9uLWluZm8ge1xyXG4gICAgY29sb3I6ICM2NDc0OGI7XHJcbiAgICBmb250LXNpemU6IDAuNzhyZW07XHJcbiAgICBmb250LXdlaWdodDogODAwO1xyXG59XHJcblxyXG4ubWVyY3VyaWFsZS1wYWdpbmF0aW9uLWluZm8gc3Ryb25nIHtcclxuICAgIGNvbG9yOiAjMTExODI3O1xyXG4gICAgZm9udC13ZWlnaHQ6IDk1MDtcclxufVxyXG5cclxuLm1lcmN1cmlhbGUtcGFnaW5hdGlvbi1hY3Rpb25zIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgZ2FwOiA4cHg7XHJcbn1cclxuXHJcbi5tZXJjdXJpYWxlLXBhZ2luYXRpb24tYWN0aW9ucyBsYWJlbCB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXA6IDdweDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGNvbG9yOiAjNjQ3NDhiO1xyXG4gICAgZm9udC1zaXplOiAwLjc2cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDg1MDtcclxufVxyXG5cclxuLm1lcmN1cmlhbGUtcGFnaW5hdGlvbi1hY3Rpb25zIHNlbGVjdCxcclxuLm1lcmN1cmlhbGUtcGFnaW5hdGlvbi1hY3Rpb25zIGJ1dHRvbiB7XHJcbiAgICBtaW4taGVpZ2h0OiAzNHB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSg1LCAxNTAsIDEwNSwgMC4xNik7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XHJcbiAgICBjb2xvcjogIzMzNDE1NTtcclxuICAgIGZvbnQtc2l6ZTogMC43NnJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbiAgICBib3gtc2hhZG93OiAwIDVweCAxM3B4IHJnYmEoMTUsIDIzLCA0MiwgMC4wNTUpO1xyXG59XHJcblxyXG4ubWVyY3VyaWFsZS1wYWdpbmF0aW9uLWFjdGlvbnMgc2VsZWN0IHtcclxuICAgIHBhZGRpbmc6IDZweCAyOHB4IDZweCAxMHB4O1xyXG59XHJcblxyXG4ubWVyY3VyaWFsZS1wYWdpbmF0aW9uLWFjdGlvbnMgYnV0dG9uIHtcclxuICAgIHBhZGRpbmc6IDdweCAxMnB4O1xyXG59XHJcblxyXG4ubWVyY3VyaWFsZS1wYWdpbmF0aW9uLWFjdGlvbnMgYnV0dG9uOmRpc2FibGVkIHtcclxuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcbiAgICBvcGFjaXR5OiAwLjQ1O1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIG1lcmN1cmlhbGVTcGluIHtcclxuICAgIHRvIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcclxuICAgIC5tZXJjdXJpYWxlLXN1bW1hcnktZ3JpZCB7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcbiAgICB9XHJcblxyXG4gICAgLm1lcmN1cmlhbGUtcGFuZWwtaGVhZGVyLFxyXG4gICAgLm1lcmN1cmlhbGUtcHJvZHVjdHMtaGVhZGVyLFxyXG4gICAgLm1lcmN1cmlhbGUtcGFnaW5hdGlvbiB7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIH1cclxuXHJcbiAgICAubWVyY3VyaWFsZS1wcm9kdWN0cy1zdGF0cyB7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgfVxyXG59XHJcblxyXG4uY29tbWFuZGUtbmV3LWRhc2hib2FyZCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGdhcDogMThweDtcclxufVxyXG5cclxuLmNvbW1hbmRlLW5ldy1zdW1tYXJ5LWdyaWQge1xyXG4gICAgZGlzcGxheTogZ3JpZDtcclxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIG1pbm1heCgxNzBweCwgMWZyKSk7XHJcbiAgICBnYXA6IDE0cHg7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1uZXctc3VtbWFyeS1jYXJkLFxyXG4uY29tbWFuZGUtbmV3LXBhbmVsLFxyXG4uY29tbWFuZGUtcHJvZHVjdHMtY2FyZCB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE1LCAyMywgNDIsIDAuMDgpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMjRweDtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45NCk7XHJcbiAgICBib3gtc2hhZG93OiAwIDIycHggNTVweCByZ2JhKDE1LCAyMywgNDIsIDAuMTApO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMnB4KTtcclxufVxyXG5cclxuLmNvbW1hbmRlLW5ldy1zdW1tYXJ5LWNhcmQge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXA6IDEzcHg7XHJcbiAgICBtaW4taGVpZ2h0OiA4NnB4O1xyXG4gICAgcGFkZGluZzogMTVweCAxNnB4O1xyXG4gICAgYm94LXNoYWRvdzogMCAxNHB4IDM0cHggcmdiYSgxNSwgMjMsIDQyLCAwLjA3NSk7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1uZXctc3VtbWFyeS1pY29uIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgd2lkdGg6IDQ0cHg7XHJcbiAgICBoZWlnaHQ6IDQ0cHg7XHJcbiAgICBmbGV4OiAwIDAgNDRweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XHJcbiAgICBmb250LXNpemU6IDEuMXJlbTtcclxufVxyXG5cclxuLmNvbW1hbmRlLW5ldy1zdW1tYXJ5LWljb24uc3VtbWFyeS1jYXRlZ29yaWVzIHtcclxuICAgIGNvbG9yOiAjMDg3NWUxO1xyXG4gICAgYmFja2dyb3VuZDogI2VhZjRmZjtcclxufVxyXG5cclxuLmNvbW1hbmRlLW5ldy1zdW1tYXJ5LWljb24uc3VtbWFyeS1zdWJjYXRlZ29yaWVzIHtcclxuICAgIGNvbG9yOiAjN2MzYWVkO1xyXG4gICAgYmFja2dyb3VuZDogI2Y1ZjNmZjtcclxufVxyXG5cclxuLmNvbW1hbmRlLW5ldy1zdW1tYXJ5LWljb24uc3VtbWFyeS1jYXJ0IHtcclxuICAgIGNvbG9yOiAjMDQ3ODU3O1xyXG4gICAgYmFja2dyb3VuZDogI2VjZmRmNTtcclxufVxyXG5cclxuLmNvbW1hbmRlLW5ldy1zdW1tYXJ5LWljb24uc3VtbWFyeS10b3RhbCB7XHJcbiAgICBjb2xvcjogI2I0NTMwOTtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZiZWI7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1uZXctc3VtbWFyeS1jYXJkIHN0cm9uZyB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGNvbG9yOiAjMTExODI3O1xyXG4gICAgZm9udC1zaXplOiAxLjEycmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDk1MDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjE1O1xyXG59XHJcblxyXG4uY29tbWFuZGUtbmV3LXN1bW1hcnktY2FyZCBzbWFsbCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbi10b3A6IDVweDtcclxuICAgIGNvbG9yOiAjNjQ3NDhiO1xyXG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcclxufVxyXG5cclxuLmNvbW1hbmRlLW5ldy1wYW5lbC1oZWFkZXIsXHJcbi5jb21tYW5kZS1wcm9kdWN0cy1oZWFkZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBnYXA6IDE0cHg7XHJcbiAgICBwYWRkaW5nOiAxNnB4IDE4cHg7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgxNSwgMjMsIDQyLCAwLjA4KTtcclxuICAgIGJhY2tncm91bmQ6XHJcbiAgICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgdG9wIGxlZnQsIHJnYmEoOCwgMTE3LCAyMjUsIDAuMTIpLCB0cmFuc3BhcmVudCAzNCUpLFxyXG4gICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZmZmZmZmIDAlLCAjZjZmYWZmIDEwMCUpO1xyXG59XHJcblxyXG4uY29tbWFuZGUtbmV3LWtpY2tlciB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbi1ib3R0b206IDNweDtcclxuICAgIGNvbG9yOiAjMDg3NWUxO1xyXG4gICAgZm9udC1zaXplOiAwLjcwcmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNzVlbTtcclxufVxyXG5cclxuLmNvbW1hbmRlLW5ldy1wYW5lbC1oZWFkZXIgaDIsXHJcbi5jb21tYW5kZS1wcm9kdWN0cy1oZWFkZXIgaDIge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgY29sb3I6ICMxMTE4Mjc7XHJcbiAgICBmb250LXNpemU6IDEuMDVyZW07XHJcbiAgICBmb250LXdlaWdodDogOTUwO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyNWVtO1xyXG59XHJcblxyXG4uY29tbWFuZGUtbmV3LXBhbmVsLWhlYWRlciBwLFxyXG4uY29tbWFuZGUtcHJvZHVjdHMtaGVhZGVyIHAge1xyXG4gICAgbWFyZ2luOiA0cHggMCAwO1xyXG4gICAgY29sb3I6ICM2NDc0OGI7XHJcbiAgICBmb250LXNpemU6IDAuNzhyZW07XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG59XHJcblxyXG4uY29tbWFuZGUtbmV3LXBhbmVsLWJvZHkge1xyXG4gICAgcGFkZGluZzogMThweDtcclxufVxyXG5cclxuLmNvbW1hbmRlLW5ldy1jYXJ0LWJ1dHRvbiB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXA6IDhweDtcclxuICAgIG1pbi1oZWlnaHQ6IDQwcHg7XHJcbiAgICBwYWRkaW5nOiA5cHggMTRweDtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2Y1OWUwYiAwJSwgI2Y5NzMxNiAxMDAlKTtcclxuICAgIGNvbG9yOiAjZmZmZmZmO1xyXG4gICAgZm9udC1zaXplOiAwLjgycmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDk1MDtcclxuICAgIGJveC1zaGFkb3c6IDAgMTJweCAyNHB4IHJnYmEoMjQ5LCAxMTUsIDIyLCAwLjE4KTtcclxufVxyXG5cclxuLmNvbW1hbmRlLW5ldy1jYXJ0LWJ1dHRvbiBzcGFuIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgbWluLXdpZHRoOiAyMnB4O1xyXG4gICAgaGVpZ2h0OiAyMnB4O1xyXG4gICAgcGFkZGluZzogMCA3cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XHJcbiAgICBjb2xvcjogI2Y5NzMxNjtcclxuICAgIGZvbnQtc2l6ZTogMC43MnJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5NTA7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1uZXctY2F0ZWdvcnktZ3JpZCB7XHJcbiAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyMTBweCwgMWZyKSk7XHJcbiAgICBnYXA6IDEycHg7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1uZXctY2F0ZWdvcnktY2FyZCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogMTJweDtcclxuICAgIG1pbi1oZWlnaHQ6IDc4cHg7XHJcbiAgICBwYWRkaW5nOiAxNHB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNSwgMjMsIDQyLCAwLjA4KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGJveC1zaGFkb3c6IDAgMTJweCAyNnB4IHJnYmEoMTUsIDIzLCA0MiwgMC4wNjUpO1xyXG4gICAgdHJhbnNpdGlvbjpcclxuICAgICAgICAgICAgdHJhbnNmb3JtIDAuMThzIGVhc2UsXHJcbiAgICAgICAgICAgIGJveC1zaGFkb3cgMC4xOHMgZWFzZSxcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yIDAuMThzIGVhc2UsXHJcbiAgICAgICAgICAgIGJhY2tncm91bmQgMC4xOHMgZWFzZTtcclxufVxyXG5cclxuLmNvbW1hbmRlLW5ldy1jYXRlZ29yeS1jYXJkOmhvdmVyLFxyXG4uY29tbWFuZGUtbmV3LWNhdGVnb3J5LWNhcmQuaXMtYWN0aXZlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcclxuICAgIGJvcmRlci1jb2xvcjogcmdiYSg4LCAxMTcsIDIyNSwgMC4zMCk7XHJcbiAgICBiYWNrZ3JvdW5kOlxyXG4gICAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IHRvcCBsZWZ0LCByZ2JhKDgsIDExNywgMjI1LCAwLjEwKSwgdHJhbnNwYXJlbnQgNDIlKSxcclxuICAgICAgICAgICAgI2ZmZmZmZjtcclxuICAgIGJveC1zaGFkb3c6IDAgMThweCAzNnB4IHJnYmEoOCwgMTE3LCAyMjUsIDAuMTIpO1xyXG59XHJcblxyXG4uY29tbWFuZGUtbmV3LWNhdGVnb3J5LWljb24ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB3aWR0aDogNDJweDtcclxuICAgIGhlaWdodDogNDJweDtcclxuICAgIGZsZXg6IDAgMCA0MnB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcclxuICAgIGJhY2tncm91bmQ6ICNlYWY0ZmY7XHJcbiAgICBjb2xvcjogIzA4NzVlMTtcclxufVxyXG5cclxuLmNvbW1hbmRlLW5ldy1jYXRlZ29yeS1jYXJkIHN0cm9uZyB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGNvbG9yOiAjMTExODI3O1xyXG4gICAgZm9udC1zaXplOiAwLjkwcmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDk1MDtcclxufVxyXG5cclxuLmNvbW1hbmRlLW5ldy1jYXRlZ29yeS1jYXJkIHNtYWxsIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luLXRvcDogNHB4O1xyXG4gICAgY29sb3I6ICM2NDc0OGI7XHJcbiAgICBmb250LXNpemU6IDAuNzJyZW07XHJcbiAgICBmb250LXdlaWdodDogNzUwO1xyXG59XHJcblxyXG4uY29tbWFuZGUtbmV3LXN1YmNhdGVnb3J5LXNlY3Rpb24ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBnYXA6IDE2cHg7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1uZXctc3ViY2F0ZWdvcnktcGlsbHMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGdhcDogOHB4O1xyXG59XHJcblxyXG4uY29tbWFuZGUtbmV3LXN1YmNhdGVnb3J5LXBpbGwge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZ2FwOiA3cHg7XHJcbiAgICBtaW4taGVpZ2h0OiAzNnB4O1xyXG4gICAgcGFkZGluZzogOHB4IDEycHg7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDgsIDExNywgMjI1LCAwLjE4KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcclxuICAgIGNvbG9yOiAjMDg3NWUxO1xyXG4gICAgZm9udC1zaXplOiAwLjc4cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGJveC1zaGFkb3c6IDAgOHB4IDE4cHggcmdiYSgxNSwgMjMsIDQyLCAwLjA1NSk7XHJcbiAgICB0cmFuc2l0aW9uOlxyXG4gICAgICAgICAgICB0cmFuc2Zvcm0gMC4xOHMgZWFzZSxcclxuICAgICAgICAgICAgYm94LXNoYWRvdyAwLjE4cyBlYXNlLFxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kIDAuMThzIGVhc2UsXHJcbiAgICAgICAgICAgIGNvbG9yIDAuMThzIGVhc2U7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1uZXctc3ViY2F0ZWdvcnktcGlsbDpob3ZlcixcclxuLmNvbW1hbmRlLW5ldy1zdWJjYXRlZ29yeS1waWxsLmlzLWFjdGl2ZSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMDg3NWUxIDAlLCAjMGI4Y2ZmIDEwMCUpO1xyXG4gICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICBib3gtc2hhZG93OiAwIDEycHggMjRweCByZ2JhKDgsIDExNywgMjI1LCAwLjE4KTtcclxufVxyXG5cclxuLmNvbW1hbmRlLW5ldy1sb2FkaW5nLXN0YXRlLFxyXG4uY29tbWFuZGUtbmV3LWVtcHR5LXN0YXRlIHtcclxuICAgIHBhZGRpbmc6IDM0cHggMThweDtcclxuICAgIGJvcmRlcjogMXB4IGRhc2hlZCByZ2JhKDgsIDExNywgMjI1LCAwLjI0KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDIycHg7XHJcbiAgICBiYWNrZ3JvdW5kOlxyXG4gICAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IHRvcCwgcmdiYSg4LCAxMTcsIDIyNSwgMC4wOCksIHRyYW5zcGFyZW50IDM2JSksXHJcbiAgICAgICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45Mik7XHJcbiAgICBjb2xvcjogIzY0NzQ4YjtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGZvbnQtc2l6ZTogMC44NnJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1uZXctZW1wdHktc3RhdGUgaSB7XHJcbiAgICBjb2xvcjogIzk0YTNiODtcclxuICAgIGZvbnQtc2l6ZTogMi43cmVtO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxufVxyXG5cclxuLmNvbW1hbmRlLW5ldy1lbXB0eS1zdGF0ZSBoMyB7XHJcbiAgICBtYXJnaW46IDAgMCA2cHg7XHJcbiAgICBjb2xvcjogIzExMTgyNztcclxuICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5NTA7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1uZXctZW1wdHktc3RhdGUgcCB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBjb2xvcjogIzY0NzQ4YjtcclxufVxyXG5cclxuLmNvbW1hbmRlLW5ldy1zcGlubmVyIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgd2lkdGg6IDIycHg7XHJcbiAgICBoZWlnaHQ6IDIycHg7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDtcclxuICAgIGJvcmRlcjogM3B4IHNvbGlkIHJnYmEoOCwgMTE3LCAyMjUsIDAuMjApO1xyXG4gICAgYm9yZGVyLXRvcC1jb2xvcjogIzA4NzVlMTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIGFuaW1hdGlvbjogY29tbWFuZGVOZXdTcGluIDAuOHMgbGluZWFyIGluZmluaXRlO1xyXG59XHJcblxyXG4uY29tbWFuZGUtcHJvZHVjdHMtc3RhdHMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBnYXA6IDhweDtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1zdGF0LXBpbGwge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZ2FwOiA3cHg7XHJcbiAgICBwYWRkaW5nOiA3cHggMTFweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoOCwgMTE3LCAyMjUsIDAuMTQpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xyXG4gICAgY29sb3I6ICMwODc1ZTE7XHJcbiAgICBmb250LXNpemU6IDAuNzJyZW07XHJcbiAgICBmb250LXdlaWdodDogOTAwO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uY29tbWFuZGUtc3RhdC1waWxsLmlzLWFjdGl2ZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZWFmNGZmO1xyXG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDgsIDExNywgMjI1LCAwLjI4KTtcclxufVxyXG5cclxuLmNvbW1hbmRlLXN0YXQtcGlsbC5pcy13YXJuaW5nIHtcclxuICAgIGNvbG9yOiAjYjQ1MzA5O1xyXG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDE4MCwgODMsIDksIDAuMTYpO1xyXG59XHJcblxyXG4uY29tbWFuZGUtc3RhdC1waWxsLmlzLXdhcm5pbmcuaXMtYWN0aXZlIHtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZiZWI7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1zdGF0LXBpbGwuaXMtY2FydCB7XHJcbiAgICBjb2xvcjogIzA0Nzg1NztcclxuICAgIGJvcmRlci1jb2xvcjogcmdiYSg0LCAxMjAsIDg3LCAwLjE2KTtcclxufVxyXG5cclxuLmNvbW1hbmRlLXN0YXQtcGlsbC5pcy1jYXJ0LmlzLWFjdGl2ZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZWNmZGY1O1xyXG59XHJcblxyXG4uY29tbWFuZGUtcHJvZHVjdHMtdG9vbGJhciB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZ2FwOiAxMHB4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgcGFkZGluZzogMTRweCAxNnB4IDRweDtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMjQ4LCAyNTAsIDI1MiwgMC42OCk7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1zZWFyY2gtd3JhcHBlciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB3aWR0aDogbWluKDU2MHB4LCAxMDAlKTtcclxufVxyXG5cclxuLmNvbW1hbmRlLXNlYXJjaC13cmFwcGVyIGksXHJcbi5jb21tYW5kZS1zdXBwbGllci1maWx0ZXIgaSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiAxNXB4O1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBjb2xvcjogIzA4NzVlMTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxufVxyXG5cclxuLmNvbW1hbmRlLXNlYXJjaC13cmFwcGVyIGlucHV0LFxyXG4uY29tbWFuZGUtc3VwcGxpZXItZmlsdGVyIHNlbGVjdCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1pbi1oZWlnaHQ6IDQycHg7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDQ0cHggMTBweCA0MnB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSg4LCAxMTcsIDIyNSwgMC4xNik7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmZmZmZmYgMCUsICNmNmZhZmYgMTAwJSk7XHJcbiAgICBjb2xvcjogIzExMTgyNztcclxuICAgIGZvbnQtc2l6ZTogMC44NHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBib3gtc2hhZG93OiAwIDhweCAxOHB4IHJnYmEoMTUsIDIzLCA0MiwgMC4wNTUpO1xyXG59XHJcblxyXG4uY29tbWFuZGUtc2VhcmNoLXdyYXBwZXIgaW5wdXQ6Zm9jdXMsXHJcbi5jb21tYW5kZS1zdXBwbGllci1maWx0ZXIgc2VsZWN0OmZvY3VzIHtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICBib3JkZXItY29sb3I6ICMwODc1ZTE7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYSg4LCAxMTcsIDIyNSwgMC4xMik7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1zZWFyY2gtd3JhcHBlciBidXR0b24ge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IDlweDtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgd2lkdGg6IDI3cHg7XHJcbiAgICBoZWlnaHQ6IDI3cHg7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMTUsIDIzLCA0MiwgMC4wNik7XHJcbiAgICBjb2xvcjogIzY0NzQ4YjtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxufVxyXG5cclxuLmNvbW1hbmRlLXN1cHBsaWVyLWZpbHRlciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB3aWR0aDogbWluKDMwMHB4LCAxMDAlKTtcclxuICAgIG1hcmdpbjogMDtcclxufVxyXG5cclxuLmNvbW1hbmRlLXRhYmxlLXJlc3BvbnNpdmUge1xyXG4gICAgb3ZlcmZsb3cteDogYXV0bztcclxuICAgIHBhZGRpbmc6IDEwcHggMTJweCA0cHg7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1wcm9kdWN0cy10YWJsZSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1pbi13aWR0aDogMTE4MHB4O1xyXG4gICAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcclxuICAgIGJvcmRlci1zcGFjaW5nOiAwIDhweDtcclxufVxyXG5cclxuLmNvbW1hbmRlLXByb2R1Y3RzLXRhYmxlIHRoZWFkIHRoIHtcclxuICAgIHBhZGRpbmc6IDEwcHggMTRweDtcclxuICAgIGNvbG9yOiAjNjQ3NDhiO1xyXG4gICAgZm9udC1zaXplOiAwLjcwcmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNTVlbTtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1wcm9kdWN0cy10YWJsZSB0aGVhZCBidXR0b24ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZ2FwOiA2cHg7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgIGZvbnQ6IGluaGVyaXQ7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1wcm9kdWN0cy10YWJsZSB0aGVhZCBidXR0b24gc3BhbiB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIG1pbi13aWR0aDogMThweDtcclxuICAgIGhlaWdodDogMThweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSg4LCAxMTcsIDIyNSwgMC4wOCk7XHJcbiAgICBjb2xvcjogIzA4NzVlMTtcclxuICAgIGZvbnQtc2l6ZTogMC42OHJlbTtcclxufVxyXG5cclxuLmNvbW1hbmRlLXByb2R1Y3RzLXRhYmxlIHRib2R5IHRyIHtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XHJcbiAgICBib3gtc2hhZG93OiAwIDVweCAxNnB4IHJnYmEoMTUsIDIzLCA0MiwgMC4wNTUpO1xyXG4gICAgdHJhbnNpdGlvbjpcclxuICAgICAgICAgICAgdHJhbnNmb3JtIDAuMThzIGVhc2UsXHJcbiAgICAgICAgICAgIGJveC1zaGFkb3cgMC4xOHMgZWFzZSxcclxuICAgICAgICAgICAgYmFja2dyb3VuZCAwLjE4cyBlYXNlO1xyXG59XHJcblxyXG4uY29tbWFuZGUtcHJvZHVjdHMtdGFibGUgdGJvZHkgdHI6aG92ZXIge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xyXG4gICAgYm94LXNoYWRvdzogMCAxNHB4IDMwcHggcmdiYSg4LCAxMTcsIDIyNSwgMC4xMik7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1wcm9kdWN0cy10YWJsZSB0Ym9keSB0ci5pcy1pbi1jYXJ0IHtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNlY2ZkZjUgMCUsICNmZmZmZmYgMTAwJSk7XHJcbiAgICBib3gtc2hhZG93OlxyXG4gICAgICAgICAgICBpbnNldCA0cHggMCAwICMxMGI5ODEsXHJcbiAgICAgICAgICAgIDAgMTBweCAyNHB4IHJnYmEoMTYsIDE4NSwgMTI5LCAwLjEyKTtcclxufVxyXG5cclxuLmNvbW1hbmRlLXByb2R1Y3RzLXRhYmxlIHRib2R5IHRkIHtcclxuICAgIHBhZGRpbmc6IDEzcHggMTRweDtcclxuICAgIGNvbG9yOiAjMTExODI3O1xyXG4gICAgZm9udC1zaXplOiAwLjg0cmVtO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxufVxyXG5cclxuLmNvbW1hbmRlLXByb2R1Y3RzLXRhYmxlIHRib2R5IHRkOmZpcnN0LWNoaWxkIHtcclxuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDE2cHg7XHJcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAxNnB4O1xyXG59XHJcblxyXG4uY29tbWFuZGUtcHJvZHVjdHMtdGFibGUgdGJvZHkgdGQ6bGFzdC1jaGlsZCB7XHJcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTZweDtcclxuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxNnB4O1xyXG59XHJcblxyXG4uY29tbWFuZGUtY2FydC10b2dnbGUge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB3aWR0aDogMzRweDtcclxuICAgIGhlaWdodDogMzRweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoOCwgMTE3LCAyMjUsIDAuMTgpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xyXG4gICAgY29sb3I6ICMwODc1ZTE7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBib3gtc2hhZG93OiAwIDdweCAxNnB4IHJnYmEoOCwgMTE3LCAyMjUsIDAuMTApO1xyXG59XHJcblxyXG4uY29tbWFuZGUtY2FydC10b2dnbGUuaXMtYWN0aXZlIHtcclxuICAgIGJvcmRlci1jb2xvcjogcmdiYSgxNiwgMTg1LCAxMjksIDAuMjgpO1xyXG4gICAgYmFja2dyb3VuZDogI2VjZmRmNTtcclxuICAgIGNvbG9yOiAjMDQ3ODU3O1xyXG59XHJcblxyXG4uY29tbWFuZGUtY2FydC10b2dnbGU6ZGlzYWJsZWQge1xyXG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxuICAgIG9wYWNpdHk6IDAuNDU7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1wcm9kdWN0LW5hbWUsXHJcbi5jb21tYW5kZS1zdXBwbGllci1jZWxsIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgY29sb3I6ICMxMTE4Mjc7XHJcbiAgICBmb250LXdlaWdodDogOTUwO1xyXG59XHJcblxyXG4uY29tbWFuZGUtcHJvZHVjdC1yZWYge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW4tdG9wOiAzcHg7XHJcbiAgICBjb2xvcjogIzY0NzQ4YjtcclxuICAgIGZvbnQtc2l6ZTogMC43MnJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3NTA7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1tdXRlZC1jZWxsLFxyXG4uY29tbWFuZGUtYnJhbmQtY2VsbCB7XHJcbiAgICBjb2xvcjogIzMzNDE1NTtcclxuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1zbWFsbC1iYWRnZSxcclxuLmNvbW1hbmRlLXByaWNlLWJhZGdlLFxyXG4uY29tbWFuZGUtc3RhdHVzLWJhZGdlIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICBmb250LXNpemU6IDAuNzRyZW07XHJcbiAgICBmb250LXdlaWdodDogOTAwO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLmNvbW1hbmRlLXNtYWxsLWJhZGdlIHtcclxuICAgIHBhZGRpbmc6IDZweCA5cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZjhmYWZjO1xyXG4gICAgY29sb3I6ICMzMzQxNTU7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE1LCAyMywgNDIsIDAuMDgpO1xyXG59XHJcblxyXG4uY29tbWFuZGUtcHJpY2UtYmFkZ2Uge1xyXG4gICAgcGFkZGluZzogN3B4IDExcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZWFmNGZmO1xyXG4gICAgY29sb3I6ICMwODc1ZTE7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDgsIDExNywgMjI1LCAwLjE0KTtcclxufVxyXG5cclxuLmNvbW1hbmRlLXN0YXR1cy1iYWRnZSB7XHJcbiAgICBnYXA6IDZweDtcclxuICAgIHBhZGRpbmc6IDdweCAxMXB4O1xyXG59XHJcblxyXG4uY29tbWFuZGUtc3RhdHVzLWJhZGdlLmlzLWF2YWlsYWJsZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZWNmZGY1O1xyXG4gICAgY29sb3I6ICMwNDc4NTc7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDQsIDEyMCwgODcsIDAuMTQpO1xyXG59XHJcblxyXG4uY29tbWFuZGUtc3RhdHVzLWJhZGdlLmlzLXJ1cHR1cmUge1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZmJlYjtcclxuICAgIGNvbG9yOiAjYjQ1MzA5O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxODAsIDgzLCA5LCAwLjE2KTtcclxufVxyXG5cclxuLmNvbW1hbmRlLWF2aXMtYWN0aW9ucyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogNnB4O1xyXG59XHJcblxyXG4uY29tbWFuZGUtYXZpcy1idG4ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB3aWR0aDogMzBweDtcclxuICAgIGhlaWdodDogMzBweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTUsIDIzLCA0MiwgMC4wOCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1hdmlzLWJ0biBpbWcge1xyXG4gICAgd2lkdGg6IDE4cHg7XHJcbiAgICBoZWlnaHQ6IDE4cHg7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1hdmlzLWJ0bi5pcy11cCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZWNmZGY1O1xyXG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDQsIDEyMCwgODcsIDAuMTgpO1xyXG59XHJcblxyXG4uY29tbWFuZGUtYXZpcy1idG4uaXMtZG93biB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmVmMmYyO1xyXG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDIyMCwgMzgsIDM4LCAwLjE4KTtcclxufVxyXG5cclxuLmNvbW1hbmRlLXBhZ2luYXRpb24ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBnYXA6IDE0cHg7XHJcbiAgICBwYWRkaW5nOiAxNHB4IDE2cHggMTZweDtcclxufVxyXG5cclxuLmNvbW1hbmRlLXBhZ2luYXRpb24taW5mbyB7XHJcbiAgICBjb2xvcjogIzY0NzQ4YjtcclxuICAgIGZvbnQtc2l6ZTogMC43OHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1wYWdpbmF0aW9uLWluZm8gc3Ryb25nIHtcclxuICAgIGNvbG9yOiAjMTExODI3O1xyXG4gICAgZm9udC13ZWlnaHQ6IDk1MDtcclxufVxyXG5cclxuLmNvbW1hbmRlLXBhZ2luYXRpb24tYWN0aW9ucyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGdhcDogOHB4O1xyXG59XHJcblxyXG4uY29tbWFuZGUtcGFnaW5hdGlvbi1hY3Rpb25zIGxhYmVsIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogN3B4O1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgY29sb3I6ICM2NDc0OGI7XHJcbiAgICBmb250LXNpemU6IDAuNzZyZW07XHJcbiAgICBmb250LXdlaWdodDogODUwO1xyXG59XHJcblxyXG4uY29tbWFuZGUtcGFnaW5hdGlvbi1hY3Rpb25zIHNlbGVjdCxcclxuLmNvbW1hbmRlLXBhZ2luYXRpb24tYWN0aW9ucyBidXR0b24ge1xyXG4gICAgbWluLWhlaWdodDogMzRweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoOCwgMTE3LCAyMjUsIDAuMTYpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xyXG4gICAgY29sb3I6ICMzMzQxNTU7XHJcbiAgICBmb250LXNpemU6IDAuNzZyZW07XHJcbiAgICBmb250LXdlaWdodDogOTAwO1xyXG4gICAgYm94LXNoYWRvdzogMCA1cHggMTNweCByZ2JhKDE1LCAyMywgNDIsIDAuMDU1KTtcclxufVxyXG5cclxuLmNvbW1hbmRlLXBhZ2luYXRpb24tYWN0aW9ucyBzZWxlY3Qge1xyXG4gICAgcGFkZGluZzogNnB4IDI4cHggNnB4IDEwcHg7XHJcbn1cclxuXHJcbi5jb21tYW5kZS1wYWdpbmF0aW9uLWFjdGlvbnMgYnV0dG9uIHtcclxuICAgIHBhZGRpbmc6IDdweCAxMnB4O1xyXG59XHJcblxyXG4uY29tbWFuZGUtcGFnaW5hdGlvbi1hY3Rpb25zIGJ1dHRvbjpkaXNhYmxlZCB7XHJcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xyXG4gICAgb3BhY2l0eTogMC40NTtcclxufVxyXG5cclxuQGtleWZyYW1lcyBjb21tYW5kZU5ld1NwaW4ge1xyXG4gICAgdG8ge1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xyXG4gICAgLmNvbW1hbmRlLW5ldy1zdW1tYXJ5LWdyaWQge1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIG1pbm1heCgxNzBweCwgMWZyKSk7XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbW1hbmRlLW5ldy1wYW5lbC1oZWFkZXIsXHJcbiAgICAuY29tbWFuZGUtcHJvZHVjdHMtaGVhZGVyLFxyXG4gICAgLmNvbW1hbmRlLXBhZ2luYXRpb24ge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbW1hbmRlLXByb2R1Y3RzLXN0YXRzIHtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xyXG4gICAgLmNvbW1hbmRlLW5ldy1zdW1tYXJ5LWdyaWQge1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG4gICAgfVxyXG5cclxuICAgIC5jb21tYW5kZS1uZXctY2FydC1idXR0b24sXHJcbiAgICAuY29tbWFuZGUtc2VhcmNoLXdyYXBwZXIsXHJcbiAgICAuY29tbWFuZGUtc3VwcGxpZXItZmlsdGVyIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxufVxyXG5cclxuLnByb2R1aXQtbm0tcGFnZSB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNDJweDtcclxufVxyXG5cclxuLnByb2R1aXQtbm0tZGFzaGJvYXJkIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgZ2FwOiAxOHB4O1xyXG59XHJcblxyXG4ucHJvZHVpdC1ubS1zdW1tYXJ5LWdyaWQge1xyXG4gICAgZGlzcGxheTogZ3JpZDtcclxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIG1pbm1heCgxNzBweCwgMWZyKSk7XHJcbiAgICBnYXA6IDE0cHg7XHJcbn1cclxuXHJcbi5wcm9kdWl0LW5tLXN1bW1hcnktY2FyZCxcclxuLnByb2R1aXQtbm0tY2FyZCxcclxuLnByb2R1aXQtbm0taGVscC1jYXJkIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE1LCAyMywgNDIsIDAuMDgpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMjRweDtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45NCk7XHJcbiAgICBib3gtc2hhZG93OiAwIDIycHggNTVweCByZ2JhKDE1LCAyMywgNDIsIDAuMTApO1xyXG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEycHgpO1xyXG59XHJcblxyXG4ucHJvZHVpdC1ubS1zdW1tYXJ5LWNhcmQge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXA6IDEzcHg7XHJcbiAgICBtaW4taGVpZ2h0OiA4NnB4O1xyXG4gICAgcGFkZGluZzogMTVweCAxNnB4O1xyXG4gICAgYm94LXNoYWRvdzogMCAxNHB4IDM0cHggcmdiYSgxNSwgMjMsIDQyLCAwLjA3NSk7XHJcbn1cclxuXHJcbi5wcm9kdWl0LW5tLXN1bW1hcnktaWNvbiB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIHdpZHRoOiA0NHB4O1xyXG4gICAgaGVpZ2h0OiA0NHB4O1xyXG4gICAgZmxleDogMCAwIDQ0cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xyXG4gICAgZm9udC1zaXplOiAxLjFyZW07XHJcbn1cclxuXHJcbi5wcm9kdWl0LW5tLXN1bW1hcnktaWNvbi5zdW1tYXJ5LWxpbmVzIHtcclxuICAgIGNvbG9yOiAjN2MzYWVkO1xyXG4gICAgYmFja2dyb3VuZDogI2Y1ZjNmZjtcclxufVxyXG5cclxuLnByb2R1aXQtbm0tc3VtbWFyeS1pY29uLnN1bW1hcnktY29tcGxldGVkIHtcclxuICAgIGNvbG9yOiAjMDQ3ODU3O1xyXG4gICAgYmFja2dyb3VuZDogI2VjZmRmNTtcclxufVxyXG5cclxuLnByb2R1aXQtbm0tc3VtbWFyeS1pY29uLnN1bW1hcnktcXVhbnRpdHkge1xyXG4gICAgY29sb3I6ICMwODc1ZTE7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZWFmNGZmO1xyXG59XHJcblxyXG4ucHJvZHVpdC1ubS1zdW1tYXJ5LWljb24uc3VtbWFyeS12YWx1ZSB7XHJcbiAgICBjb2xvcjogI2I0NTMwOTtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZiZWI7XHJcbn1cclxuXHJcbi5wcm9kdWl0LW5tLXN1bW1hcnktY2FyZCBzdHJvbmcge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBjb2xvcjogIzExMTgyNztcclxuICAgIGZvbnQtc2l6ZTogMS4xNnJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5NTA7XHJcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcclxufVxyXG5cclxuLnByb2R1aXQtbm0tc3VtbWFyeS1jYXJkIHNtYWxsIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gICAgY29sb3I6ICM2NDc0OGI7XHJcbiAgICBmb250LXNpemU6IDAuNzVyZW07XHJcbiAgICBmb250LXdlaWdodDogODAwO1xyXG59XHJcblxyXG4ucHJvZHVpdC1ubS1sYXlvdXQge1xyXG4gICAgZGlzcGxheTogZ3JpZDtcclxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDFmcikgMzIwcHg7XHJcbiAgICBnYXA6IDIwcHg7XHJcbiAgICBhbGlnbi1pdGVtczogc3RhcnQ7XHJcbn1cclxuXHJcbi5wcm9kdWl0LW5tLWNhcmQtaGVhZGVyLFxyXG4ucHJvZHVpdC1ubS1oZWxwLWhlYWRlciB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIGdhcDogMTRweDtcclxuICAgIHBhZGRpbmc6IDE4cHggMjBweDtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDE1LCAyMywgNDIsIDAuMDgpO1xyXG4gICAgYmFja2dyb3VuZDpcclxuICAgICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCB0b3AgbGVmdCwgcmdiYSgxMjQsIDU4LCAyMzcsIDAuMTMpLCB0cmFuc3BhcmVudCAzNCUpLFxyXG4gICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZmZmZmZmIDAlLCAjZmFmNWZmIDEwMCUpO1xyXG59XHJcblxyXG4ucHJvZHVpdC1ubS1raWNrZXIsXHJcbi5wcm9kdWl0LW5tLWhlbHAtaGVhZGVyIHNwYW4ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzcHg7XHJcbiAgICBjb2xvcjogIzdjM2FlZDtcclxuICAgIGZvbnQtc2l6ZTogMC43MHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDc1ZW07XHJcbn1cclxuXHJcbi5wcm9kdWl0LW5tLWNhcmQtaGVhZGVyIGgyLFxyXG4ucHJvZHVpdC1ubS1oZWxwLWhlYWRlciBoMiB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBjb2xvcjogIzExMTgyNztcclxuICAgIGZvbnQtc2l6ZTogMS4xMHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5NTA7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDI1ZW07XHJcbn1cclxuXHJcbi5wcm9kdWl0LW5tLWNhcmQtaGVhZGVyIHAge1xyXG4gICAgbWFyZ2luOiA0cHggMCAwO1xyXG4gICAgY29sb3I6ICM2NDc0OGI7XHJcbiAgICBmb250LXNpemU6IDAuODByZW07XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG59XHJcblxyXG4ucHJvZHVpdC1ubS1iYWNrLWJ1dHRvbiB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXA6IDdweDtcclxuICAgIG1pbi1oZWlnaHQ6IDM4cHg7XHJcbiAgICBwYWRkaW5nOiA4cHggMTNweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTI0LCA1OCwgMjM3LCAwLjE2KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcclxuICAgIGNvbG9yOiAjN2MzYWVkO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgZm9udC1zaXplOiAwLjc4cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgIGJveC1zaGFkb3c6IDAgOHB4IDE4cHggcmdiYSgxNSwgMjMsIDQyLCAwLjA1NSk7XHJcbn1cclxuXHJcbi5wcm9kdWl0LW5tLWNhcmQtYm9keSB7XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG59XHJcblxyXG4ucHJvZHVpdC1ubS1hbGVydCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogMTBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XHJcbiAgICBwYWRkaW5nOiAxM3B4IDE2cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxOHB4O1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcclxuICAgIGNvbG9yOiAjMTExODI3O1xyXG4gICAgZm9udC1zaXplOiAwLjg0cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDg1MDtcclxuICAgIGJveC1zaGFkb3c6IDAgMTZweCAzNHB4IHJnYmEoMTUsIDIzLCA0MiwgMC4xMik7XHJcbn1cclxuXHJcbi5wcm9kdWl0LW5tLWFsZXJ0LWVycm9yIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjIwLCAzOCwgMzgsIDAuMTYpO1xyXG4gICAgY29sb3I6ICNkYzI2MjY7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmVmMmYyO1xyXG59XHJcblxyXG4ucHJvZHVpdC1ubS1saW5lcyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGdhcDogMTBweDtcclxufVxyXG5cclxuLnByb2R1aXQtbm0tbGluZXMtaGVhZGVyIHtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgyNDBweCwgMS43ZnIpIDEzMHB4IDE2MHB4IDE0MHB4IDcwcHg7XHJcbiAgICBnYXA6IDEwcHg7XHJcbiAgICBwYWRkaW5nOiAwIDEycHggNHB4IDU0cHg7XHJcbiAgICBjb2xvcjogIzY0NzQ4YjtcclxuICAgIGZvbnQtc2l6ZTogMC43MHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5NTA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcclxufVxyXG5cclxuLnByb2R1aXQtbm0tbGluZSB7XHJcbiAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAzNHB4IG1pbm1heCgyNDBweCwgMS43ZnIpIDEzMHB4IDE2MHB4IDE0MHB4IDQ0cHg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZ2FwOiAxMHB4O1xyXG4gICAgcGFkZGluZzogMTJweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTUsIDIzLCA0MiwgMC4wNyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcclxuICAgIGJveC1zaGFkb3c6IDAgMTBweCAyNHB4IHJnYmEoMTUsIDIzLCA0MiwgMC4wNTUpO1xyXG59XHJcblxyXG4ucHJvZHVpdC1ubS1saW5lLWluZGV4IHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgd2lkdGg6IDM0cHg7XHJcbiAgICBoZWlnaHQ6IDM0cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGJhY2tncm91bmQ6ICNmNWYzZmY7XHJcbiAgICBjb2xvcjogIzdjM2FlZDtcclxuICAgIGZvbnQtc2l6ZTogMC43MnJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5NTA7XHJcbn1cclxuXHJcbi5wcm9kdWl0LW5tLWlucHV0LXdyYXBwZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4ucHJvZHVpdC1ubS1pbnB1dC13cmFwcGVyIGkge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogMTNweDtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgY29sb3I6ICM3YzNhZWQ7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG5cclxuLnByb2R1aXQtbm0taW5wdXQtd3JhcHBlciBpbnB1dCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1pbi1oZWlnaHQ6IDQwcHg7XHJcbiAgICBwYWRkaW5nOiA5cHggMTNweCA5cHggMzhweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTI0LCA1OCwgMjM3LCAwLjE2KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2ZmZmZmZiAwJSwgI2ZiZjhmZiAxMDAlKTtcclxuICAgIGNvbG9yOiAjMTExODI3O1xyXG4gICAgZm9udC1zaXplOiAwLjgycmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDc1MDtcclxuICAgIGJveC1zaGFkb3c6IDAgOHB4IDE4cHggcmdiYSgxNSwgMjMsIDQyLCAwLjA1NSk7XHJcbn1cclxuXHJcbi5wcm9kdWl0LW5tLWlucHV0LXdyYXBwZXIgaW5wdXQ6Zm9jdXMge1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgIGJvcmRlci1jb2xvcjogIzdjM2FlZDtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCByZ2JhKDEyNCwgNTgsIDIzNywgMC4xMik7XHJcbn1cclxuXHJcbi5wcm9kdWl0LW5tLWxpbmUtdG90YWwge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBtaW4taGVpZ2h0OiAzOHB4O1xyXG4gICAgcGFkZGluZzogOHB4IDExcHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZiZWI7XHJcbiAgICBjb2xvcjogI2I0NTMwOTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTgwLCA4MywgOSwgMC4xNik7XHJcbiAgICBmb250LXNpemU6IDAuODByZW07XHJcbiAgICBmb250LXdlaWdodDogOTUwO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLnByb2R1aXQtbm0tZGVsZXRlLWJ1dHRvbiB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIHdpZHRoOiAzOHB4O1xyXG4gICAgaGVpZ2h0OiAzOHB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyMjAsIDM4LCAzOCwgMC4xNik7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XHJcbiAgICBjb2xvcjogI2RjMjYyNjtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLnByb2R1aXQtbm0tZGVsZXRlLWJ1dHRvbjpkaXNhYmxlZCB7XHJcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xyXG4gICAgb3BhY2l0eTogMC40NTtcclxufVxyXG5cclxuLnByb2R1aXQtbm0tYWRkLWxpbmUtYnV0dG9uIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgZ2FwOiA4cHg7XHJcbiAgICBtaW4taGVpZ2h0OiA0MnB4O1xyXG4gICAgYm9yZGVyOiAxcHggZGFzaGVkIHJnYmEoMTI0LCA1OCwgMjM3LCAwLjMwKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDE4cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmFmNWZmO1xyXG4gICAgY29sb3I6ICM3YzNhZWQ7XHJcbiAgICBmb250LXNpemU6IDAuODRyZW07XHJcbiAgICBmb250LXdlaWdodDogOTUwO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4ucHJvZHVpdC1ubS1jYXJkLWZvb3RlciB7XHJcbiAgICBwYWRkaW5nOiAxOHB4IDIwcHg7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgxNSwgMjMsIDQyLCAwLjA4KTtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XHJcbn1cclxuXHJcbi5wcm9kdWl0LW5tLXNhdmUtYnV0dG9uIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgZ2FwOiA5cHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1pbi1oZWlnaHQ6IDQ2cHg7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICM3YzNhZWQgMCUsICNhODU1ZjcgMTAwJSk7XHJcbiAgICBjb2xvcjogI2ZmZmZmZjtcclxuICAgIGZvbnQtc2l6ZTogMC44OHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5NTA7XHJcbiAgICBib3gtc2hhZG93OiAwIDE0cHggMjhweCByZ2JhKDEyNCwgNTgsIDIzNywgMC4yMik7XHJcbn1cclxuXHJcbi5wcm9kdWl0LW5tLXNhdmUtYnV0dG9uOmRpc2FibGVkIHtcclxuICAgIGN1cnNvcjogd2FpdDtcclxuICAgIG9wYWNpdHk6IDAuNzU7XHJcbn1cclxuXHJcbi5wcm9kdWl0LW5tLXNwaW5uZXIge1xyXG4gICAgd2lkdGg6IDE4cHg7XHJcbiAgICBoZWlnaHQ6IDE4cHg7XHJcbiAgICBib3JkZXI6IDNweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzUpO1xyXG4gICAgYm9yZGVyLXRvcC1jb2xvcjogI2ZmZmZmZjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xyXG4gICAgYW5pbWF0aW9uOiBwcm9kdWl0Tm1TcGluIDAuOHMgbGluZWFyIGluZmluaXRlO1xyXG59XHJcblxyXG4ucHJvZHVpdC1ubS1oZWxwLWNhcmQge1xyXG4gICAgcG9zaXRpb246IHN0aWNreTtcclxuICAgIHRvcDogOTJweDtcclxufVxyXG5cclxuLnByb2R1aXQtbm0taGVscC1ib2R5IHtcclxuICAgIHBhZGRpbmc6IDE2cHg7XHJcbn1cclxuXHJcbi5wcm9kdWl0LW5tLWhlbHAtYm9keSB1bCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGdhcDogMTJweDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG59XHJcblxyXG4ucHJvZHVpdC1ubS1oZWxwLWJvZHkgbGkge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGdhcDogMTBweDtcclxuICAgIHBhZGRpbmc6IDEycHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxOHB4O1xyXG4gICAgYmFja2dyb3VuZDogI2Y4ZmFmYztcclxuICAgIGNvbG9yOiAjNDc1NTY5O1xyXG4gICAgZm9udC1zaXplOiAwLjc4cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDc1MDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjQ1O1xyXG59XHJcblxyXG4ucHJvZHVpdC1ubS1oZWxwLWJvZHkgaSB7XHJcbiAgICBjb2xvcjogIzdjM2FlZDtcclxuICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgbWFyZ2luLXRvcDogMXB4O1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHByb2R1aXRObVNwaW4ge1xyXG4gICAgdG8ge1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHtcclxuICAgIC5wcm9kdWl0LW5tLWxheW91dCB7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcbiAgICB9XHJcblxyXG4gICAgLnByb2R1aXQtbm0taGVscC1jYXJkIHtcclxuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcclxuICAgIC5wcm9kdWl0LW5tLXN1bW1hcnktZ3JpZCB7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDE3MHB4LCAxZnIpKTtcclxuICAgIH1cclxuXHJcbiAgICAucHJvZHVpdC1ubS1saW5lcy1oZWFkZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLnByb2R1aXQtbm0tbGluZSB7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAzNHB4IDFmcjtcclxuICAgIH1cclxuXHJcbiAgICAucHJvZHVpdC1ubS1pbnB1dC13cmFwcGVyLFxyXG4gICAgLnByb2R1aXQtbm0tbGluZS10b3RhbCxcclxuICAgIC5wcm9kdWl0LW5tLWRlbGV0ZS1idXR0b24ge1xyXG4gICAgICAgIGdyaWQtY29sdW1uOiAyO1xyXG4gICAgfVxyXG5cclxuICAgIC5wcm9kdWl0LW5tLWRlbGV0ZS1idXR0b24ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcclxuICAgIC5wcm9kdWl0LW5tLXN1bW1hcnktZ3JpZCB7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcbiAgICB9XHJcblxyXG4gICAgLnByb2R1aXQtbm0tY2FyZC1oZWFkZXIge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICB9XHJcblxyXG4gICAgLnByb2R1aXQtbm0tYmFjay1idXR0b24ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYXBwLWhvbWUtcGFnZSB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNDJweDtcclxufVxyXG5cclxuLmhvbWUtYmxvY2tzLXdyYXBwZXIsXHJcbi5ob21lLWRhc2hib2FyZCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGdhcDogMThweDtcclxufVxyXG5cclxuLmhvbWUtc3VtbWFyeS1ncmlkIHtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCBtaW5tYXgoMTgwcHgsIDFmcikpO1xyXG4gICAgZ2FwOiAxNHB4O1xyXG59XHJcblxyXG4uaG9tZS1zdW1tYXJ5LWNhcmQsXHJcbi5ob21lLW1vZHVsZXMtY2FyZCB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNSwgMjMsIDQyLCAwLjA4KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDI0cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTQpO1xyXG4gICAgYm94LXNoYWRvdzogMCAyMnB4IDU1cHggcmdiYSgxNSwgMjMsIDQyLCAwLjEwKTtcclxuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMnB4KTtcclxufVxyXG5cclxuLmhvbWUtc3VtbWFyeS1jYXJkIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZ2FwOiAxM3B4O1xyXG4gICAgbWluLWhlaWdodDogODZweDtcclxuICAgIHBhZGRpbmc6IDE1cHggMTZweDtcclxuICAgIGJveC1zaGFkb3c6IDAgMTRweCAzNHB4IHJnYmEoMTUsIDIzLCA0MiwgMC4wNzUpO1xyXG59XHJcblxyXG4uaG9tZS1zdW1tYXJ5LWljb24ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB3aWR0aDogNDRweDtcclxuICAgIGhlaWdodDogNDRweDtcclxuICAgIGZsZXg6IDAgMCA0NHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcclxuICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xyXG59XHJcblxyXG4uaG9tZS1zdW1tYXJ5LWljb24uc3VtbWFyeS1tb2R1bGVzIHtcclxuICAgIGNvbG9yOiAjMDg3NWUxO1xyXG4gICAgYmFja2dyb3VuZDogI2VhZjRmZjtcclxufVxyXG5cclxuLmhvbWUtc3VtbWFyeS1pY29uLnN1bW1hcnktY2F0ZWdvcmllcyB7XHJcbiAgICBjb2xvcjogIzdjM2FlZDtcclxuICAgIGJhY2tncm91bmQ6ICNmNWYzZmY7XHJcbn1cclxuXHJcbi5ob21lLXN1bW1hcnktY2FyZCBzdHJvbmcge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBjb2xvcjogIzExMTgyNztcclxuICAgIGZvbnQtc2l6ZTogMS4xNnJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5NTA7XHJcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xyXG59XHJcblxyXG4uaG9tZS1zdW1tYXJ5LWNhcmQgc21hbGwge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICBjb2xvcjogIzY0NzQ4YjtcclxuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XHJcbn1cclxuXHJcbi5ob21lLW1vZHVsZXMtaGVhZGVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgZ2FwOiAxNHB4O1xyXG4gICAgcGFkZGluZzogMThweCAyMHB4O1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTUsIDIzLCA0MiwgMC4wOCk7XHJcbiAgICBiYWNrZ3JvdW5kOlxyXG4gICAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IHRvcCBsZWZ0LCByZ2JhKDgsIDExNywgMjI1LCAwLjEyKSwgdHJhbnNwYXJlbnQgMzQlKSxcclxuICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2ZmZmZmZiAwJSwgI2Y2ZmFmZiAxMDAlKTtcclxufVxyXG5cclxuLmhvbWUta2lja2VyIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogM3B4O1xyXG4gICAgY29sb3I6ICMwODc1ZTE7XHJcbiAgICBmb250LXNpemU6IDAuNzByZW07XHJcbiAgICBmb250LXdlaWdodDogOTAwO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGxldHRlci1zcGFjaW5nOiAwLjA3NWVtO1xyXG59XHJcblxyXG4uaG9tZS1tb2R1bGVzLWhlYWRlciBoMiB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBjb2xvcjogIzExMTgyNztcclxuICAgIGZvbnQtc2l6ZTogMS4xMHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5NTA7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDI1ZW07XHJcbn1cclxuXHJcbi5ob21lLW1vZHVsZXMtaGVhZGVyIHAge1xyXG4gICAgbWFyZ2luOiA0cHggMCAwO1xyXG4gICAgY29sb3I6ICM2NDc0OGI7XHJcbiAgICBmb250LXNpemU6IDAuODByZW07XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG59XHJcblxyXG4uaG9tZS1jb3VudC1iYWRnZSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIG1pbi13aWR0aDogbWF4LWNvbnRlbnQ7XHJcbiAgICBwYWRkaW5nOiA4cHggMTJweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xyXG4gICAgYmFja2dyb3VuZDogI2VhZjRmZjtcclxuICAgIGNvbG9yOiAjMDg3NWUxO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSg4LCAxMTcsIDIyNSwgMC4xNik7XHJcbiAgICBmb250LXNpemU6IDAuNzZyZW07XHJcbiAgICBmb250LXdlaWdodDogOTUwO1xyXG59XHJcblxyXG4uaG9tZS10b29sYmFyIHtcclxuICAgIHBhZGRpbmc6IDE0cHggMTZweCA0cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI0OCwgMjUwLCAyNTIsIDAuNjgpO1xyXG59XHJcblxyXG4uaG9tZS1zZWFyY2gtd3JhcHBlciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB3aWR0aDogbWluKDUyMHB4LCAxMDAlKTtcclxufVxyXG5cclxuLmhvbWUtc2VhcmNoLXdyYXBwZXIgaSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiAxNXB4O1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBjb2xvcjogIzA4NzVlMTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG4uaG9tZS1zZWFyY2gtd3JhcHBlciBpbnB1dCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1pbi1oZWlnaHQ6IDQycHg7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDQ0cHggMTBweCA0MnB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSg4LCAxMTcsIDIyNSwgMC4xNik7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGJhY2tncm91bmQ6XHJcbiAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45NikgMCUsIHJnYmEoMjQ2LCAyNTAsIDI1NSwgMC45NikgMTAwJSk7XHJcbiAgICBjb2xvcjogIzExMTgyNztcclxuICAgIGZvbnQtc2l6ZTogMC44NHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBib3gtc2hhZG93OiAwIDhweCAxOHB4IHJnYmEoMTUsIDIzLCA0MiwgMC4wNTUpO1xyXG59XHJcblxyXG4uaG9tZS1zZWFyY2gtd3JhcHBlciBpbnB1dDpmb2N1cyB7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgYm9yZGVyLWNvbG9yOiAjMDg3NWUxO1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcclxuICAgIGJveC1zaGFkb3c6XHJcbiAgICAgICAgICAgIDAgMCAwIDRweCByZ2JhKDgsIDExNywgMjI1LCAwLjEyKSxcclxuICAgICAgICAgICAgMCAxMnB4IDI0cHggcmdiYSgxNSwgMjMsIDQyLCAwLjA4KTtcclxufVxyXG5cclxuLmhvbWUtc2VhcmNoLXdyYXBwZXIgYnV0dG9uIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiA5cHg7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIHdpZHRoOiAyN3B4O1xyXG4gICAgaGVpZ2h0OiAyN3B4O1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDE1LCAyMywgNDIsIDAuMDYpO1xyXG4gICAgY29sb3I6ICM2NDc0OGI7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbn1cclxuXHJcbi5ob21lLW1vZHVsZXMtYm9keSB7XHJcbiAgICBwYWRkaW5nOiAxOHB4O1xyXG59XHJcblxyXG4uaG9tZS1ibG9ja3MtZ3JpZCB7XHJcbiAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoMjM1cHgsIDFmcikpO1xyXG4gICAgZ2FwOiAxNHB4O1xyXG59XHJcblxyXG4uaG9tZS1ibG9jay1jYXJkIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgbWluLWhlaWdodDogMjEwcHg7XHJcbiAgICBwYWRkaW5nOiAxNnB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNSwgMjMsIDQyLCAwLjA4KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDIycHg7XHJcbiAgICBiYWNrZ3JvdW5kOlxyXG4gICAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IHRvcCBsZWZ0LCBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tbW9kdWxlLWNvbG9yKSAxMyUsIHRyYW5zcGFyZW50KSwgdHJhbnNwYXJlbnQgNDIlKSxcclxuICAgICAgICAgICAgI2ZmZmZmZjtcclxuICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgYm94LXNoYWRvdzogMCAxNHB4IDM0cHggcmdiYSgxNSwgMjMsIDQyLCAwLjA3NSk7XHJcbiAgICB0cmFuc2l0aW9uOlxyXG4gICAgICAgICAgICB0cmFuc2Zvcm0gMC4xOHMgZWFzZSxcclxuICAgICAgICAgICAgYm94LXNoYWRvdyAwLjE4cyBlYXNlLFxyXG4gICAgICAgICAgICBib3JkZXItY29sb3IgMC4xOHMgZWFzZTtcclxufVxyXG5cclxuLmhvbWUtYmxvY2stY2FyZDpob3ZlciB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTRweCk7XHJcbiAgICBib3JkZXItY29sb3I6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1tb2R1bGUtY29sb3IpIDMyJSwgdHJhbnNwYXJlbnQpO1xyXG4gICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBib3gtc2hhZG93OiAwIDIycHggNDhweCByZ2JhKDE1LCAyMywgNDIsIDAuMTMpO1xyXG59XHJcblxyXG4uaG9tZS1ibG9jay1jYXRlZ29yeSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDEycHg7XHJcbiAgICByaWdodDogMTJweDtcclxuICAgIHBhZGRpbmc6IDZweCA5cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLW1vZHVsZS1iZyk7XHJcbiAgICBjb2xvcjogdmFyKC0tbW9kdWxlLWNvbG9yKTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1tb2R1bGUtY29sb3IpIDE2JSwgdHJhbnNwYXJlbnQpO1xyXG4gICAgZm9udC1zaXplOiAwLjY2cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDk1MDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xyXG59XHJcblxyXG4uaG9tZS1ibG9jay1pY29uIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgd2lkdGg6IDQ4cHg7XHJcbiAgICBoZWlnaHQ6IDQ4cHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxNHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTdweDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLW1vZHVsZS1iZyk7XHJcbiAgICBjb2xvcjogdmFyKC0tbW9kdWxlLWNvbG9yKTtcclxuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcclxufVxyXG5cclxuLmhvbWUtYmxvY2stY29udGVudCB7XHJcbiAgICBmbGV4OiAxO1xyXG59XHJcblxyXG4uaG9tZS1ibG9jay1jb250ZW50IGgzIHtcclxuICAgIG1hcmdpbjogMCAwIDhweDtcclxuICAgIGNvbG9yOiAjMTExODI3O1xyXG4gICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDk1MDtcclxuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMTVlbTtcclxufVxyXG5cclxuLmhvbWUtYmxvY2stY29udGVudCBwIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGNvbG9yOiAjNjQ3NDhiO1xyXG4gICAgZm9udC1zaXplOiAwLjgwcmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjQ1O1xyXG59XHJcblxyXG4uaG9tZS1ibG9jay1mb290ZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBnYXA6IDEwcHg7XHJcbiAgICBtYXJnaW4tdG9wOiAxNnB4O1xyXG4gICAgcGFkZGluZy10b3A6IDEzcHg7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgxNSwgMjMsIDQyLCAwLjA4KTtcclxuICAgIGNvbG9yOiB2YXIoLS1tb2R1bGUtY29sb3IpO1xyXG4gICAgZm9udC1zaXplOiAwLjc4cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDk1MDtcclxufVxyXG5cclxuLmhvbWUtYmxvY2stZm9vdGVyIGkge1xyXG4gICAgZm9udC1zaXplOiAxLjE1cmVtO1xyXG59XHJcblxyXG4uaG9tZS1sb2FkaW5nLXN0YXRlLFxyXG4uaG9tZS1lbXB0eS1zdGF0ZSxcclxuLmhvbWUtYWxlcnQge1xyXG4gICAgcGFkZGluZzogNDJweCAyMHB4O1xyXG4gICAgYm9yZGVyOiAxcHggZGFzaGVkIHJnYmEoOCwgMTE3LCAyMjUsIDAuMjQpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMjRweDtcclxuICAgIGJhY2tncm91bmQ6XHJcbiAgICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgdG9wLCByZ2JhKDgsIDExNywgMjI1LCAwLjA4KSwgdHJhbnNwYXJlbnQgMzYlKSxcclxuICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkyKTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGJveC1zaGFkb3c6IDAgMTZweCAzOHB4IHJnYmEoMTUsIDIzLCA0MiwgMC4wNik7XHJcbn1cclxuXHJcbi5ob21lLWVtcHR5LXN0YXRlIGkge1xyXG4gICAgY29sb3I6ICM5NGEzYjg7XHJcbiAgICBmb250LXNpemU6IDNyZW07XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG59XHJcblxyXG4uaG9tZS1lbXB0eS1zdGF0ZSBoMyB7XHJcbiAgICBtYXJnaW46IDAgMCA4cHg7XHJcbiAgICBjb2xvcjogIzExMTgyNztcclxuICAgIGZvbnQtc2l6ZTogMS4wNXJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5NTA7XHJcbn1cclxuXHJcbi5ob21lLWVtcHR5LXN0YXRlIHAsXHJcbi5ob21lLWxvYWRpbmctc3RhdGUgcCB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBjb2xvcjogIzY0NzQ4YjtcclxuICAgIGZvbnQtc2l6ZTogMC44NnJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbn1cclxuXHJcbi5ob21lLWxvYWRpbmctc3Bpbm5lciB7XHJcbiAgICB3aWR0aDogMzZweDtcclxuICAgIGhlaWdodDogMzZweDtcclxuICAgIG1hcmdpbjogMCBhdXRvIDE0cHg7XHJcbiAgICBib3JkZXI6IDNweCBzb2xpZCByZ2JhKDgsIDExNywgMjI1LCAwLjIwKTtcclxuICAgIGJvcmRlci10b3AtY29sb3I6ICMwODc1ZTE7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGFuaW1hdGlvbjogaG9tZVNwaW4gMC44cyBsaW5lYXIgaW5maW5pdGU7XHJcbn1cclxuXHJcbi5ob21lLWFsZXJ0LWVycm9yIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBnYXA6IDEycHg7XHJcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMjIwLCAzOCwgMzgsIDAuMTgpO1xyXG4gICAgY29sb3I6ICNkYzI2MjY7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmVmMmYyO1xyXG4gICAgZm9udC13ZWlnaHQ6IDg1MDtcclxufVxyXG5cclxuQGtleWZyYW1lcyBob21lU3BpbiB7XHJcbiAgICB0byB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XHJcbiAgICAuaG9tZS1zdW1tYXJ5LWdyaWQge1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG4gICAgfVxyXG5cclxuICAgIC5ob21lLW1vZHVsZXMtaGVhZGVyIHtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcclxuICAgIC5ob21lLWJsb2Nrcy1ncmlkIHtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuICAgIH1cclxuXHJcbiAgICAuaG9tZS1ibG9jay1jYXJkIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiAxODBweDtcclxuICAgIH1cclxufVxyXG5cclxuLmJsb2NzLXBpbGxzLXdyYXBwZXIge1xyXG4gICAgbWFyZ2luOiAxMHB4IDAgMThweDtcclxufVxyXG5cclxuLmJsb2NzLXBpbGxzLWxpc3Qge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBnYXA6IDhweDtcclxufVxyXG5cclxuLmJsb2NzLXBpbGwtbGluayB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbn1cclxuXHJcbi5ibG9jcy1waWxsIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgbWluLWhlaWdodDogMzBweDtcclxuICAgIHBhZGRpbmc6IDdweCAxMnB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMDg3NWUxIDAlLCAjMGI4Y2ZmIDEwMCUpO1xyXG4gICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDgsIDExNywgMjI1LCAwLjIyKTtcclxuICAgIGZvbnQtc2l6ZTogMC43NHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbiAgICBib3gtc2hhZG93OiAwIDhweCAxOHB4IHJnYmEoOCwgMTE3LCAyMjUsIDAuMTYpO1xyXG4gICAgdHJhbnNpdGlvbjpcclxuICAgICAgICAgICAgdHJhbnNmb3JtIDAuMThzIGVhc2UsXHJcbiAgICAgICAgICAgIGJveC1zaGFkb3cgMC4xOHMgZWFzZSxcclxuICAgICAgICAgICAgYmFja2dyb3VuZCAwLjE4cyBlYXNlO1xyXG59XHJcblxyXG4uYmxvY3MtcGlsbDpob3ZlciB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XHJcbiAgICBjb2xvcjogI2ZmZmZmZjtcclxuICAgIGJveC1zaGFkb3c6IDAgMTJweCAyNHB4IHJnYmEoOCwgMTE3LCAyMjUsIDAuMjIpO1xyXG59XHJcblxyXG4uYXZvaXItZ3JvdXAtaXRlbXMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBnYXA6IDhweDtcclxuICAgIG1pbi13aWR0aDogNDIwcHg7XHJcbn1cclxuXHJcbi5hdm9pci1ncm91cC1pdGVtIHtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgxOTBweCwgMWZyKSBhdXRvO1xyXG4gICAgZ2FwOiAxMnB4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IDlweCAxMHB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNSwgMjMsIDQyLCAwLjA2KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI0OCwgMjUwLCAyNTIsIDAuODYpO1xyXG4gICAgdHJhbnNpdGlvbjpcclxuICAgICAgICAgICAgYmFja2dyb3VuZCAwLjE4cyBlYXNlLFxyXG4gICAgICAgICAgICBib3JkZXItY29sb3IgMC4xOHMgZWFzZSxcclxuICAgICAgICAgICAgYm94LXNoYWRvdyAwLjE4cyBlYXNlO1xyXG59XHJcblxyXG4uYXZvaXItZ3JvdXAtaXRlbTpob3ZlcixcclxuLmF2b2lyLWdyb3VwLWl0ZW0uaXMtc2VsZWN0ZWQge1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcclxuICAgIGJvcmRlci1jb2xvcjogcmdiYSg1LCAxNTAsIDEwNSwgMC4yMik7XHJcbiAgICBib3gtc2hhZG93OiAwIDEwcHggMjRweCByZ2JhKDE1LCAyMywgNDIsIDAuMDc1KTtcclxufVxyXG5cclxuLmF2b2lyLWdyb3VwLWl0ZW0tbWFpbiB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogMTBweDtcclxuICAgIG1pbi13aWR0aDogMDtcclxufVxyXG5cclxuLmF2b2lyLWdyb3VwLWl0ZW0tdGl0bGUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBjb2xvcjogIzExMTgyNztcclxuICAgIGZvbnQtc2l6ZTogMC44MnJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5NTA7XHJcbiAgICBsaW5lLWhlaWdodDogMS4yO1xyXG59XHJcblxyXG4uYXZvaXItZ3JvdXAtaXRlbS1zdWJ0aXRsZSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbi10b3A6IDNweDtcclxuICAgIGNvbG9yOiAjNjQ3NDhiO1xyXG4gICAgZm9udC1zaXplOiAwLjcwcmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDc1MDtcclxufVxyXG5cclxuLmF2b2lyLWdyb3VwLWl0ZW0tYWN0aW9ucyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICBnYXA6IDlweDtcclxufVxyXG5cclxuLmF2b2lyLWdyb3VwLWl0ZW0tYWN0aW9ucyAub3JkZXItYW1vdW50LW1haW4ge1xyXG4gICAgZm9udC1zaXplOiAwLjgycmVtO1xyXG59XHJcblxyXG4uYXZvaXItZ3JvdXAtaXRlbS1hY3Rpb25zIC5vcmRlci1zdGF0dXMtc2VsZWN0IHtcclxuICAgIG1pbi13aWR0aDogMTM4cHg7XHJcbiAgICBwYWRkaW5nLXRvcDogN3B4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDdweDtcclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XHJcbiAgICAuYXZvaXItZ3JvdXAtaXRlbSB7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcbiAgICB9XHJcblxyXG4gICAgLmF2b2lyLWdyb3VwLWl0ZW0tYWN0aW9ucyB7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDQ0cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jb21tYW5kZS13ZWlnaHQtYmFkZ2UsXHJcbi5tZXJjdXJpYWxlLXdlaWdodC1iYWRnZSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IDdweCAxMXB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZjVmM2ZmO1xyXG4gICAgY29sb3I6ICM3YzNhZWQ7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEyNCwgNTgsIDIzNywgMC4xNCk7XHJcbiAgICBmb250LXNpemU6IDAuNzRyZW07XHJcbiAgICBmb250LXdlaWdodDogOTAwO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLnByb2R1aXQtbm0tbGluZS5wcm9kdWl0LW5tLWxpbmUtdjIge1xyXG4gICAgZGlzcGxheTogZ3JpZDtcclxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczpcclxuICAgICAgICA0MnB4XHJcbiAgICAgICAgbWlubWF4KDE1MHB4LCAxODBweClcclxuICAgICAgICBtaW5tYXgoMzIwcHgsIDIuMmZyKVxyXG4gICAgICAgIG1pbm1heCgxMTBweCwgMTI1cHgpXHJcbiAgICAgICAgbWlubWF4KDEzMHB4LCAxNDVweClcclxuICAgICAgICBtaW5tYXgoMTMwcHgsIDE0NXB4KVxyXG4gICAgICAgIG1pbm1heCgxMzBweCwgMTQ1cHgpXHJcbiAgICAgICAgNDRweDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXA6IDEwcHg7XHJcbn1cclxuXHJcbi5wcm9kdWl0LW5tLWxpbmUucHJvZHVpdC1ubS1saW5lLXYyLmlzLXByb2R1aXQtYWNoZXRlIHtcclxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczpcclxuICAgICAgICA0MnB4XHJcbiAgICAgICAgbWlubWF4KDE1MHB4LCAxODBweClcclxuICAgICAgICBtaW5tYXgoMzgwcHgsIDIuNmZyKVxyXG4gICAgICAgIG1pbm1heCgxMTBweCwgMTI1cHgpXHJcbiAgICAgICAgbWlubWF4KDEyNXB4LCAxNDBweClcclxuICAgICAgICBtaW5tYXgoMTI1cHgsIDE0MHB4KVxyXG4gICAgICAgIDQ0cHg7XHJcbn1cclxuXHJcbi5wcm9kdWl0LW5tLXR5cGUtd3JhcHBlciBzZWxlY3Qge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtaW4taGVpZ2h0OiAzOHB4O1xyXG4gICAgcGFkZGluZzogOHB4IDM0cHggOHB4IDM4cHg7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGJhY2tncm91bmQ6XHJcbiAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCg0NWRlZywgdHJhbnNwYXJlbnQgNTAlLCBjdXJyZW50Q29sb3IgNTAlKSByaWdodCAxNXB4IGNlbnRlciAvIDZweCA2cHggbm8tcmVwZWF0LFxyXG4gICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZjVmM2ZmIDAlLCAjZmZmZmZmIDEwMCUpO1xyXG4gICAgY29sb3I6ICM0YzFkOTU7XHJcbiAgICBmb250LXNpemU6IDAuNzhyZW07XHJcbiAgICBmb250LXdlaWdodDogOTAwO1xyXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLnByb2R1aXQtbm0tdHlwZS13cmFwcGVyIHNlbGVjdDpmb2N1cyB7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG4ucHJvZHVpdC1ubS1saW5lLXYyIC5wcm9kdWl0LW5tLWlucHV0LXdyYXBwZXIge1xyXG4gICAgbWluLXdpZHRoOiAwO1xyXG59XHJcblxyXG4ucHJvZHVpdC1ubS1saW5lLXYyIC5wcm9kdWl0LW5tLWlucHV0LXdyYXBwZXIgaW5wdXQsXHJcbi5wcm9kdWl0LW5tLWxpbmUtdjIgLnByb2R1aXQtbm0taW5wdXQtd3JhcHBlciBzZWxlY3Qge1xyXG4gICAgbWluLXdpZHRoOiAwO1xyXG59XHJcblxyXG4ucHJvZHVpdC1ubS1kZW5vbWluYXRpb24td3JhcHBlciBpbnB1dCB7XHJcbiAgICBmb250LXNpemU6IDAuOXJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA4NTA7XHJcbn1cclxuXHJcbi5wcm9kdWl0LW5tLWxpbmUtdjIgLnByb2R1aXQtbm0tbGluZS10b3RhbCB7XHJcbiAgICBtaW4td2lkdGg6IDA7XHJcbn1cclxuXHJcbi5zdG9jay1kZW5vbWluYXRpb24tY2VsbCB7XHJcbiAgICBtaW4td2lkdGg6IDMyMHB4O1xyXG4gICAgbWF4LXdpZHRoOiA1NjBweDtcclxuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XHJcbiAgICBsaW5lLWhlaWdodDogMS4zNTtcclxuICAgIGZvbnQtc2l6ZTogMC45MnJlbTtcclxufVxyXG5cclxuLnN0b2NrLXByZXBhcmF0aW9uLWRlbm9taW5hdGlvbi1oZWFkZXIge1xyXG4gICAgbWluLXdpZHRoOiAzNjBweDtcclxufVxyXG5cclxuLnN0b2NrLXByZXBhcmF0aW9uLWRlbm9taW5hdGlvbi1jZWxsIHtcclxuICAgIG1pbi13aWR0aDogMzYwcHg7XHJcbiAgICBtYXgtd2lkdGg6IDY0MHB4O1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjM1O1xyXG4gICAgZm9udC1zaXplOiAwLjk0cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDEyODBweCkge1xyXG4gICAgLnByb2R1aXQtbm0tbGluZS5wcm9kdWl0LW5tLWxpbmUtdjIsXHJcbiAgICAucHJvZHVpdC1ubS1saW5lLnByb2R1aXQtbm0tbGluZS12Mi5pcy1wcm9kdWl0LWFjaGV0ZSB7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA0MnB4IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7XHJcbiAgICB9XHJcblxyXG4gICAgLnByb2R1aXQtbm0tbGluZS12MiAucHJvZHVpdC1ubS1saW5lLWluZGV4IHtcclxuICAgICAgICBncmlkLXJvdzogc3BhbiAzO1xyXG4gICAgICAgIGFsaWduLXNlbGY6IHN0YXJ0O1xyXG4gICAgfVxyXG5cclxuICAgIC5wcm9kdWl0LW5tLWxpbmUtdjIgLmRlbm9taW5hdGlvbiB7XHJcbiAgICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gMjtcclxuICAgIH1cclxuXHJcbiAgICAucHJvZHVpdC1ubS1saW5lLXYyIC5wcm9kdWl0LW5tLWRlbGV0ZS1idXR0b24ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcclxuICAgIC5zdG9jay1kZW5vbWluYXRpb24tY2VsbCB7XHJcbiAgICAgICAgbWluLXdpZHRoOiAyNDBweDtcclxuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLnN0b2NrLXByZXBhcmF0aW9uLWRlbm9taW5hdGlvbi1jZWxsIHtcclxuICAgICAgICBtaW4td2lkdGg6IDI2MHB4O1xyXG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAuc3RvY2stcHJlcGFyYXRpb24tZGVub21pbmF0aW9uLWhlYWRlciB7XHJcbiAgICAgICAgbWluLXdpZHRoOiAyNjBweDtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAucHJvZHVpdC1ubS1saW5lLnByb2R1aXQtbm0tbGluZS12MixcclxuICAgIC5wcm9kdWl0LW5tLWxpbmUucHJvZHVpdC1ubS1saW5lLXYyLmlzLXByb2R1aXQtYWNoZXRlIHtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDM0cHggMWZyO1xyXG4gICAgfVxyXG5cclxuICAgIC5wcm9kdWl0LW5tLWxpbmUtdjIgLnByb2R1aXQtbm0tbGluZS1pbmRleCB7XHJcbiAgICAgICAgZ3JpZC1yb3c6IGF1dG87XHJcbiAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC5wcm9kdWl0LW5tLWxpbmUtdjIgLnByb2R1aXQtbm0taW5wdXQtd3JhcHBlcixcclxuICAgIC5wcm9kdWl0LW5tLWxpbmUtdjIgLnByb2R1aXQtbm0tbGluZS10b3RhbCxcclxuICAgIC5wcm9kdWl0LW5tLWxpbmUtdjIgLnByb2R1aXQtbm0tZGVsZXRlLWJ1dHRvbiB7XHJcbiAgICAgICAgZ3JpZC1jb2x1bW46IDI7XHJcbiAgICB9XHJcblxyXG4gICAgLnByb2R1aXQtbm0tbGluZS12MiAuZGVub21pbmF0aW9uIHtcclxuICAgICAgICBncmlkLWNvbHVtbjogMjtcclxuICAgIH1cclxuXHJcbiAgICAucHJvZHVpdC1ubS1saW5lLXYyIC5wcm9kdWl0LW5tLWRlbGV0ZS1idXR0b24ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG59XHJcbiIsIi50b2dnbGUtcGFzc3dvcmQtY29udGFpbmVye3Bvc2l0aW9uOnJlbGF0aXZlfS50b2dnbGUtcGFzc3dvcmQtaWNvbnt3aWR0aDoxcmVtO2hlaWdodDoxcmVtfS50b2dnbGUtcGFzc3dvcmQtYnV0dG9ue2JhY2tncm91bmQtY29sb3I6IzAwMDA7Ym9yZGVyOm5vbmU7ZmxleC1kaXJlY3Rpb246cm93O3BsYWNlLWl0ZW1zOmNlbnRlcjtjb2x1bW4tZ2FwOi4yNXJlbTtoZWlnaHQ6MXJlbTtmb250LXNpemU6Ljg3NXJlbTtsaW5lLWhlaWdodDoxLjI1cmVtO2Rpc3BsYXk6ZmxleDtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LTEuMjVyZW07cmlnaHQ6LjVyZW19XHJcbiIsIi5hdm9pci1mb3JtLWNvbnRhaW5lciB7XHJcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XHJcbn1cclxuXHJcbi5hdm9pci1mb3JtIC5zZWN0aW9uLWZvcm0ge1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcclxuICAgIHBhZGRpbmc6IDI1cHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xyXG4gICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAjMDA3YmZmO1xyXG4gICAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoMCwwLDAsMC4xKTtcclxuICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4zcyBlYXNlO1xyXG59XHJcblxyXG4uYXZvaXItZm9ybSAuc2VjdGlvbi1mb3JtOmhvdmVyIHtcclxuICAgIGJveC1zaGFkb3c6IDAgNHB4IDhweCByZ2JhKDAsMCwwLDAuMTUpO1xyXG59XHJcblxyXG4uYXZvaXItZm9ybSAuc2VjdGlvbi1mb3JtIGgzIHtcclxuICAgIGNvbG9yOiAjNDk1MDU3O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNlOWVjZWY7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuXHJcbi5hdm9pci1mb3JtIC5mb3JtLWdyb3VwIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcclxufVxyXG5cclxuLmF2b2lyLWZvcm0gLmZvcm0tZ3JvdXAgbGFiZWwge1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIGNvbG9yOiAjNDk1MDU3O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5hdm9pci1mb3JtIC5mb3JtLWdyb3VwIGxhYmVsLnJlcXVpcmVkOjphZnRlciB7XHJcbiAgICBjb250ZW50OiBcIiAqXCI7XHJcbiAgICBjb2xvcjogI2RjMzU0NTtcclxufVxyXG5cclxuLmF2b2lyLWZvcm0gLmZvcm0tY29udHJvbCB7XHJcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjZTllY2VmO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xyXG4gICAgcGFkZGluZzogMTBweCAxMnB4O1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2UtaW4tb3V0O1xyXG59XHJcblxyXG4uYXZvaXItZm9ybSAuZm9ybS1jb250cm9sOmZvY3VzIHtcclxuICAgIGJvcmRlci1jb2xvcjogIzAwN2JmZjtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDAsIDEyMywgMjU1LCAwLjI1KTtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbn1cclxuXHJcbi5hdm9pci1mb3JtIC5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZCB7XHJcbiAgICBib3JkZXItY29sb3I6ICNkYzM1NDU7XHJcbn1cclxuXHJcbi5hdm9pci1mb3JtIC5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZDpmb2N1cyB7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMjAsIDUzLCA2OSwgMC4yNSk7XHJcbn1cclxuXHJcbi5hdm9pci1mb3JtIC5pbnZhbGlkLWZlZWRiYWNrIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xyXG4gICAgZm9udC1zaXplOiAwLjg3NWVtO1xyXG4gICAgY29sb3I6ICNkYzM1NDU7XHJcbn1cclxuXHJcbi5hdm9pci1mb3JtIC5idG4ge1xyXG4gICAgcGFkZGluZzogMTJweCAzMHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XHJcbiAgICBtaW4td2lkdGg6IDE0MHB4O1xyXG59XHJcblxyXG4uYXZvaXItZm9ybSAuYnRuLXByaW1hcnkge1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzAwN2JmZiAwJSwgIzAwNTZiMyAxMDAlKTtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuLmF2b2lyLWZvcm0gLmJ0bi1wcmltYXJ5OmhvdmVyOm5vdCg6ZGlzYWJsZWQpIHtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMwMDU2YjMgMCUsICMwMDQwODUgMTAwJSk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XHJcbiAgICBib3gtc2hhZG93OiAwIDRweCA4cHggcmdiYSgwLCAxMjMsIDI1NSwgMC4zKTtcclxufVxyXG5cclxuLmF2b2lyLWZvcm0gLmJ0bi1zZWNvbmRhcnkge1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzZjNzU3ZCAwJSwgIzU0NWI2MiAxMDAlKTtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuLmF2b2lyLWZvcm0gLmJ0bi1zZWNvbmRhcnk6aG92ZXI6bm90KDpkaXNhYmxlZCkge1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzU0NWI2MiAwJSwgIzNkNDM0OCAxMDAlKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcclxuICAgIGJveC1zaGFkb3c6IDAgNHB4IDhweCByZ2JhKDEwOCwgMTE3LCAxMjUsIDAuMyk7XHJcbn1cclxuXHJcbi5hdm9pci1mb3JtIC5idG46ZGlzYWJsZWQge1xyXG4gICAgb3BhY2l0eTogMC42O1xyXG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxuICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uYXZvaXItZm9ybSAuYWxlcnQge1xyXG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgcGFkZGluZzogMTVweCAyMHB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLmF2b2lyLWZvcm0gLmFsZXJ0LXN1Y2Nlc3Mge1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2Q0ZWRkYSAwJSwgI2MzZTZjYiAxMDAlKTtcclxuICAgIGNvbG9yOiAjMTU1NzI0O1xyXG4gICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAjMjhhNzQ1O1xyXG59XHJcblxyXG4uYXZvaXItZm9ybSAuYWxlcnQtZGFuZ2VyIHtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmOGQ3ZGEgMCUsICNmMWIwYjcgMTAwJSk7XHJcbiAgICBjb2xvcjogIzcyMWMyNDtcclxuICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgI2RjMzU0NTtcclxufVxyXG5cclxuLmF2b2lyLWZvcm0gLmJyZWFkY3J1bWIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcclxufVxyXG5cclxuLmF2b2lyLWZvcm0gLmJyZWFkY3J1bWItaXRlbSBhIHtcclxuICAgIGNvbG9yOiAjMDA3YmZmO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG59XHJcblxyXG4uYXZvaXItZm9ybSAuYnJlYWRjcnVtYi1pdGVtIGE6aG92ZXIge1xyXG4gICAgY29sb3I6ICMwMDU2YjM7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxufVxyXG5cclxuLmF2b2lyLWZvcm0gLmJyZWFkY3J1bWItaXRlbS5hY3RpdmUge1xyXG4gICAgY29sb3I6ICM2Yzc1N2Q7XHJcbn1cclxuXHJcbi5hdm9pci1mb3JtIC5saXN0LWdyb3VwLWl0ZW0ge1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2U5ZWNlZjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxufVxyXG5cclxuLmF2b2lyLWZvcm0gLmJhZGdlIHtcclxuICAgIGZvbnQtc2l6ZTogMC43NWVtO1xyXG59XHJcblxyXG4vKiBSZXNwb25zaXZlICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgLmF2b2lyLWZvcm0gLnNlY3Rpb24tZm9ybSB7XHJcbiAgICAgICAgcGFkZGluZzogMTVweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5hdm9pci1mb3JtIC5zZWN0aW9uLWZvcm0gaDMge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xyXG4gICAgfVxyXG5cclxuICAgIC5hdm9pci1mb3JtIC5idG4ge1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgbWluLXdpZHRoOiAxMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAuYXZvaXItZm9ybSAuY29udGFpbmVyIHtcclxuICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIEFuaW1hdGlvbiBkZSBjaGFyZ2VtZW50ICovXHJcbkBrZXlmcmFtZXMgc3BpbiB7XHJcbiAgICAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XHJcbiAgICAxMDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfVxyXG59XHJcblxyXG4uYXZvaXItZm9ybSAuc3Bpbm5lci1ib3JkZXIge1xyXG4gICAgYW5pbWF0aW9uOiBzcGluIDAuNzVzIGxpbmVhciBpbmZpbml0ZTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxufVxyXG4iLCIvKiBjb21wb25lbnRzL1VJL0J1dHRvbi5jc3MgKi9cclxuLmJ0biB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGdhcDogOHB4O1xyXG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi5idG46ZGlzYWJsZWQge1xyXG4gICAgb3BhY2l0eTogMC41O1xyXG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxufVxyXG5cclxuLyogVmFyaWFudGVzICovXHJcbi5idG4tZGVmYXVsdCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZjNmNGY2O1xyXG4gICAgY29sb3I6ICMzNzQxNTE7XHJcbn1cclxuXHJcbi5idG4tZGVmYXVsdDpob3Zlcjpub3QoOmRpc2FibGVkKSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZTVlN2ViO1xyXG59XHJcblxyXG4uYnRuLXByaW1hcnkge1xyXG4gICAgYmFja2dyb3VuZDogIzNiODJmNjtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuLmJ0bi1wcmltYXJ5OmhvdmVyOm5vdCg6ZGlzYWJsZWQpIHtcclxuICAgIGJhY2tncm91bmQ6ICMyNTYzZWI7XHJcbiAgICBib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEoMzcsIDk5LCAyMzUsIDAuMik7XHJcbn1cclxuXHJcbi5idG4tc2Vjb25kYXJ5IHtcclxuICAgIGJhY2tncm91bmQ6ICMxMGI5ODE7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbn1cclxuXHJcbi5idG4tc2Vjb25kYXJ5OmhvdmVyOm5vdCg6ZGlzYWJsZWQpIHtcclxuICAgIGJhY2tncm91bmQ6ICMwNTk2Njk7XHJcbn1cclxuXHJcbi8qIFRhaWxsZXMgKi9cclxuLmJ0bi1zbWFsbCB7XHJcbiAgICBwYWRkaW5nOiA2cHggMTJweDtcclxuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XHJcbn1cclxuXHJcbi5idG4tbWVkaXVtIHtcclxuICAgIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XHJcbn1cclxuXHJcbi5idG4tbGFyZ2Uge1xyXG4gICAgcGFkZGluZzogMTJweCAyNHB4O1xyXG4gICAgZm9udC1zaXplOiAxcmVtO1xyXG59XHJcblxyXG4vKiDDiXRhdCBsb2FkaW5nICovXHJcbi5idG4tbG9hZGluZyB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5idG4tc3Bpbm5lciB7XHJcbiAgICBhbmltYXRpb246IHNwaW4gMXMgbGluZWFyIGluZmluaXRlO1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHNwaW4ge1xyXG4gICAgZnJvbSB7IHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XHJcbiAgICB0byB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cclxufVxyXG5cclxuLyogSWNvbiAqL1xyXG4uYnRuLWljb24ge1xyXG4gICAgZmxleC1zaHJpbms6IDA7XHJcbn1cclxuIiwiLyogY29tcG9uZW50cy9DYWxlbmRhci9DYWxlbmRhclRyYWNhYmlsaXRlLmNzcyAqL1xyXG4uY2FsZW5kYXIge1xyXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xyXG4gICAgcGFkZGluZzogMjRweDtcclxuICAgIGJveC1zaGFkb3c6IDAgMTBweCAyNXB4IC01cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG4gICAgaGVpZ2h0OiBmaXQtY29udGVudDtcclxufVxyXG5cclxuLmNhbGVuZGFyLWhlYWRlciB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XHJcbn1cclxuXHJcbi5jYWxlbmRhci10aXRsZSB7XHJcbiAgICBmb250LXNpemU6IDEuMjVyZW07XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgY29sb3I6ICMxZjI5Mzc7XHJcbiAgICBtYXJnaW46IDA7XHJcbn1cclxuXHJcbi5jYWxlbmRhci1jb250cm9scyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZ2FwOiA4cHg7XHJcbn1cclxuXHJcbi5jYWxlbmRhci13ZWVrZGF5cyB7XHJcbiAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNywgMWZyKTtcclxuICAgIGdhcDogOHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcclxufVxyXG5cclxuLmNhbGVuZGFyLXdlZWtkYXkge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICBjb2xvcjogIzZiNzI4MDtcclxuICAgIHBhZGRpbmc6IDhweCAwO1xyXG59XHJcblxyXG4uY2FsZW5kYXItZ3JpZCB7XHJcbiAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNywgMWZyKTtcclxuICAgIGdhcDogOHB4O1xyXG59XHJcblxyXG4uY2FsZW5kYXItZGF5IHtcclxuICAgIGFzcGVjdC1yYXRpbzogMTtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLmNhbGVuZGFyLWRheS1jdXJyZW50IHtcclxuICAgIGNvbG9yOiAjMzc0MTUxO1xyXG59XHJcblxyXG4uY2FsZW5kYXItZGF5LW90aGVyIHtcclxuICAgIGNvbG9yOiAjOWNhM2FmO1xyXG4gICAgb3BhY2l0eTogMC41O1xyXG4gICAgY3Vyc29yOiBkZWZhdWx0O1xyXG59XHJcblxyXG4uY2FsZW5kYXItZGF5LWN1cnJlbnQ6aG92ZXI6bm90KC5jYWxlbmRhci1kYXktc2VsZWN0ZWQpIHtcclxuICAgIGJhY2tncm91bmQ6ICNmM2Y0ZjY7XHJcbn1cclxuXHJcbi5jYWxlbmRhci1kYXktdG9kYXkge1xyXG4gICAgYmFja2dyb3VuZDogI2VmZjZmZjtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNiZmRiZmU7XHJcbiAgICBjb2xvcjogIzFkNGVkODtcclxufVxyXG5cclxuLmNhbGVuZGFyLWRheS1zZWxlY3RlZCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjM2I4MmY2O1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxufVxyXG5cclxuLmRheS1udW1iZXIge1xyXG4gICAgei1pbmRleDogMTtcclxufVxyXG5cclxuLnRvZGF5LWluZGljYXRvciB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDRweDtcclxuICAgIHJpZ2h0OiA0cHg7XHJcbiAgICB3aWR0aDogNnB4O1xyXG4gICAgaGVpZ2h0OiA2cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjM2I4MmY2O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG59XHJcblxyXG4uZGF0YS1pbmRpY2F0b3Ige1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYm90dG9tOiA0cHg7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgICB3aWR0aDogNnB4O1xyXG4gICAgaGVpZ2h0OiA2cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMTBiOTgxO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG59XHJcblxyXG4ucmVjb3JkLWluZGljYXRvciB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBib3R0b206IDRweDtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgIHdpZHRoOiA0cHg7XHJcbiAgICBoZWlnaHQ6IDRweDtcclxuICAgIGJhY2tncm91bmQ6ICM5Y2EzYWY7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTVlN2ViO1xyXG59XHJcblxyXG4uY2FsZW5kYXItbGVnZW5kIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgZ2FwOiAxMnB4O1xyXG4gICAgbWFyZ2luLXRvcDogMjRweDtcclxuICAgIHBhZGRpbmctdG9wOiAyNHB4O1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlNWU3ZWI7XHJcbn1cclxuXHJcbi5sZWdlbmQtaXRlbSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogOHB4O1xyXG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xyXG4gICAgY29sb3I6ICM2YjcyODA7XHJcbn1cclxuXHJcbi5sZWdlbmQtZG90IHtcclxuICAgIHdpZHRoOiA4cHg7XHJcbiAgICBoZWlnaHQ6IDhweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxufVxyXG5cclxuLmxlZ2VuZC1kb3Quc2VsZWN0ZWQge1xyXG4gICAgYmFja2dyb3VuZDogIzNiODJmNjtcclxufVxyXG5cclxuLmxlZ2VuZC1kb3QuaGFzLWRhdGEge1xyXG4gICAgYmFja2dyb3VuZDogIzEwYjk4MTtcclxufVxyXG5cclxuLmxlZ2VuZC1kb3QuaGFzLXJlY29yZCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjOWNhM2FmO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2U1ZTdlYjtcclxufVxyXG4iLCIvKiBjb21wb25lbnRzL0ZyaWdvQ2FyZC9Gcmlnb0NhcmQuY3NzICovXHJcbi5mcmlnby1jYXJkIHtcclxuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2U1ZTdlYjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XHJcbiAgICBwYWRkaW5nOiAxNnB4O1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLmZyaWdvLWNhcmQ6aG92ZXIge1xyXG4gICAgYm9yZGVyLWNvbG9yOiAjM2I4MmY2O1xyXG4gICAgYm94LXNoYWRvdzogMCA0cHggMTJweCByZ2JhKDU5LCAxMzAsIDI0NiwgMC4xKTtcclxufVxyXG5cclxuLmZyaWdvLWNhcmQtbmV3IHtcclxuICAgIGJvcmRlci1jb2xvcjogIzNiODJmNjtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmOGZhZmMgMCUsICNmMGY5ZmYgMTAwJSk7XHJcbn1cclxuXHJcbi5mcmlnby1jYXJkLWNyaXRpY2FsIHtcclxuICAgIGJvcmRlci1jb2xvcjogI2VmNDQ0NDtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmZWYyZjIgMCUsICNmZWUyZTIgMTAwJSk7XHJcbn1cclxuXHJcbi5mcmlnby1jYXJkLWNvbXBhY3Qge1xyXG4gICAgcGFkZGluZzogMTJweDtcclxufVxyXG5cclxuLmZyaWdvLWNhcmQtcmVhZG9ubHkge1xyXG4gICAgb3BhY2l0eTogMC45O1xyXG4gICAgYmFja2dyb3VuZDogI2Y5ZmFmYjtcclxufVxyXG5cclxuLnJlYWRvbmx5LW92ZXJsYXkge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiA4cHg7XHJcbiAgICByaWdodDogOHB4O1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgd2lkdGg6IDI0cHg7XHJcbiAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgY29sb3I6ICM2YjcyODA7XHJcbiAgICB6LWluZGV4OiAyO1xyXG59XHJcblxyXG4uZnJpZ28tY2FyZC1jb21wYWN0IC5yZWFkb25seS1vdmVybGF5IHtcclxuICAgIHRvcDogNHB4O1xyXG4gICAgcmlnaHQ6IDRweDtcclxuICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgaGVpZ2h0OiAyMHB4O1xyXG59XHJcblxyXG4uZnJpZ28taGVhZGVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgIG1hcmdpbi1ib3R0b206IDEycHg7XHJcbn1cclxuXHJcbi5mcmlnby1jYXJkLWNvbXBhY3QgLmZyaWdvLWhlYWRlciB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7XHJcbn1cclxuXHJcbi5mcmlnby10aXRsZSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogOHB4O1xyXG4gICAgZmxleDogMTtcclxuICAgIG1pbi13aWR0aDogMDtcclxufVxyXG5cclxuLmZyaWdvLWljb24ge1xyXG4gICAgY29sb3I6ICMzYjgyZjY7XHJcbiAgICBmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLmZyaWdvLWNhcmQtY3JpdGljYWwgLmZyaWdvLWljb24ge1xyXG4gICAgY29sb3I6ICNlZjQ0NDQ7XHJcbn1cclxuXHJcbi5mcmlnby1jYXJkLWNvbXBhY3QgLmZyaWdvLWljb24ge1xyXG4gICAgd2lkdGg6IDE2cHg7XHJcbiAgICBoZWlnaHQ6IDE2cHg7XHJcbn1cclxuXHJcbi5mcmlnby1uYW1lIHtcclxuICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBjb2xvcjogIzFmMjkzNztcclxuICAgIG1hcmdpbjogMDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi5mcmlnby1jYXJkLWNvbXBhY3QgLmZyaWdvLW5hbWUge1xyXG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcclxufVxyXG5cclxuLmZyaWdvLW5hbWUtaW5wdXQge1xyXG4gICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIGNvbG9yOiAjMWYyOTM3O1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzNiODJmNjtcclxuICAgIHBhZGRpbmc6IDRweCAwO1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWF4LXdpZHRoOiAyMDBweDtcclxufVxyXG5cclxuLmZyaWdvLWNhcmQtY29tcGFjdCAuZnJpZ28tbmFtZS1pbnB1dCB7XHJcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xyXG4gICAgbWF4LXdpZHRoOiAxNTBweDtcclxufVxyXG5cclxuLmZyaWdvLW5hbWUtaW5wdXQtY29tcGFjdCB7XHJcbiAgICBtYXgtd2lkdGg6IDEyMHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5mcmlnby1uYW1lLWlucHV0OmZvY3VzIHtcclxuICAgIGJvcmRlci1jb2xvcjogIzFkNGVkODtcclxufVxyXG5cclxuLmZyaWdvLW5hbWUtaW5wdXQtZXJyb3Ige1xyXG4gICAgYm9yZGVyLWNvbG9yOiAjZWY0NDQ0O1xyXG59XHJcblxyXG4uZnJpZ28taGVhZGVyLXJpZ2h0IHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBnYXA6IDRweDtcclxufVxyXG5cclxuLmZyaWdvLWJhZGdlIHtcclxuICAgIHBhZGRpbmc6IDJweCA4cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZGJlYWZlO1xyXG4gICAgY29sb3I6ICMxZDRlZDg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTk5cHg7XHJcbiAgICBmb250LXNpemU6IDAuNzVyZW07XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLmZyaWdvLWNhcmQtY29tcGFjdCAuZnJpZ28tYmFkZ2Uge1xyXG4gICAgZm9udC1zaXplOiAwLjYyNXJlbTtcclxuICAgIHBhZGRpbmc6IDFweCA2cHg7XHJcbn1cclxuXHJcbi5mcmlnby1iYWRnZS5jcml0aWNhbCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmVlMmUyO1xyXG4gICAgY29sb3I6ICNkYzI2MjY7XHJcbn1cclxuXHJcbi5mcmlnby1iYWRnZS5leGlzdGluZyB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZDFmYWU1O1xyXG4gICAgY29sb3I6ICMwNjVmNDY7XHJcbn1cclxuXHJcbi5mcmlnby1maWVsZHMge1xyXG4gICAgZGlzcGxheTogZ3JpZDtcclxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcclxuICAgIGdhcDogMTJweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDhweDtcclxufVxyXG5cclxuLmZyaWdvLWNhcmQtY29tcGFjdCAuZnJpZ28tZmllbGRzIHtcclxuICAgIGdhcDogOHB4O1xyXG59XHJcblxyXG4udGVtcGVyYXR1cmUtZmllbGQge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBnYXA6IDRweDtcclxufVxyXG5cclxuLmZpZWxkLWxhYmVsIHtcclxuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICBjb2xvcjogIzZiNzI4MDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuXHJcbi50ZW1wZXJhdHVyZS1pbnB1dC1jb250YWluZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi50ZW1wZXJhdHVyZS1pbnB1dCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBhZGRpbmc6IDhweCAyOHB4IDhweCA4cHg7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZDFkNWRiO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xyXG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcclxuICAgIGNvbG9yOiAjMWYyOTM3O1xyXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XHJcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcclxufVxyXG5cclxuLmZyaWdvLWNhcmQtY29tcGFjdCAudGVtcGVyYXR1cmUtaW5wdXQge1xyXG4gICAgcGFkZGluZzogNnB4IDI0cHggNnB4IDZweDtcclxuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcclxufVxyXG5cclxuLnRlbXBlcmF0dXJlLWlucHV0OmZvY3VzIHtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICBib3JkZXItY29sb3I6ICMzYjgyZjY7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMCAycHggcmdiYSg1OSwgMTMwLCAyNDYsIDAuMSk7XHJcbn1cclxuXHJcbi50ZW1wZXJhdHVyZS1pbnB1dC1lcnJvciB7XHJcbiAgICBib3JkZXItY29sb3I6ICNlZjQ0NDQ7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmVmMmYyO1xyXG59XHJcblxyXG4udGVtcGVyYXR1cmUtaW5wdXQtd2FybmluZyB7XHJcbiAgICBib3JkZXItY29sb3I6ICNmNTllMGI7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmYmViO1xyXG59XHJcblxyXG4udGVtcGVyYXR1cmUtaW5wdXQtcmVhZG9ubHkge1xyXG4gICAgYmFja2dyb3VuZDogI2YzZjRmNiAhaW1wb3J0YW50O1xyXG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZCAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6ICM2YjcyODAgIWltcG9ydGFudDtcclxuICAgIGJvcmRlci1jb2xvcjogI2U1ZTdlYiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udGVtcGVyYXR1cmUtaW5wdXQ6ZGlzYWJsZWQge1xyXG4gICAgYmFja2dyb3VuZDogI2Y5ZmFmYjtcclxuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcbiAgICBvcGFjaXR5OiAwLjc7XHJcbn1cclxuXHJcbi50ZW1wZXJhdHVyZS11bml0IHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiA4cHg7XHJcbiAgICBmb250LXNpemU6IDAuNzVyZW07XHJcbiAgICBjb2xvcjogIzZiNzI4MDtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG4uZnJpZ28tZm9vdGVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgbWFyZ2luLXRvcDogOHB4O1xyXG4gICAgcGFkZGluZy10b3A6IDhweDtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTVlN2ViO1xyXG59XHJcblxyXG4uZnJpZ28tc3RhdHVzIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZ2FwOiA0cHg7XHJcbiAgICBmb250LXNpemU6IDAuNzVyZW07XHJcbiAgICBjb2xvcjogIzA1OTY2OTtcclxufVxyXG5cclxuLnN0YXR1cy1pY29uIHtcclxuICAgIGNvbG9yOiAjMTBiOTgxO1xyXG59XHJcblxyXG4uZnJpZ28tY2FyZC1jb21wYWN0IC5mcmlnby1zdGF0dXMge1xyXG4gICAgZm9udC1zaXplOiAwLjYyNXJlbTtcclxufVxyXG5cclxuLmZyaWdvLXJlYWRvbmx5LW5vdGljZSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogNHB4O1xyXG4gICAgZm9udC1zaXplOiAwLjYyNXJlbTtcclxuICAgIGNvbG9yOiAjNmI3MjgwO1xyXG4gICAgcGFkZGluZzogMnB4IDZweDtcclxuICAgIGJhY2tncm91bmQ6ICNmM2Y0ZjY7XHJcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbn1cclxuIiwiLyogY29tcG9uZW50cy9TdGF0cy9TdGF0cy5jc3MgKi9cclxuLnN0YXRzLWNvbnRhaW5lciB7XHJcbiAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcclxuICAgIGdhcDogMjBweDtcclxuICAgIG1hcmdpbi10b3A6IDI0cHg7XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgLnN0YXRzLWNvbnRhaW5lciB7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zdGF0cy1jYXJkIHtcclxuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWxnKTtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICBib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctbWQpO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXA6IDE2cHg7XHJcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlLCBib3gtc2hhZG93IDAuMnMgZWFzZTtcclxufVxyXG5cclxuLnN0YXRzLWNhcmQ6aG92ZXIge1xyXG4gICAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LWxnKTtcclxufVxyXG5cclxuLnN0YXRzLWljb24ge1xyXG4gICAgd2lkdGg6IDU2cHg7XHJcbiAgICBoZWlnaHQ6IDU2cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbGcpO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4uc3RhdHMtaWNvbi50b2RheSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZGJlYWZlO1xyXG4gICAgY29sb3I6ICMxZDRlZDg7XHJcbn1cclxuXHJcbi5zdGF0cy1pY29uLmNvbXBsZXRpb24ge1xyXG4gICAgYmFja2dyb3VuZDogI2QxZmFlNTtcclxuICAgIGNvbG9yOiAjMDU5NjY5O1xyXG59XHJcblxyXG4uc3RhdHMtaWNvbi50ZW1wZXJhdHVyZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmVmM2M3O1xyXG4gICAgY29sb3I6ICNkOTc3MDY7XHJcbn1cclxuXHJcbi5zdGF0cy1jb250ZW50IHtcclxuICAgIGZsZXg6IDE7XHJcbiAgICBtaW4td2lkdGg6IDA7XHJcbn1cclxuXHJcbi5zdGF0cy10aXRsZSB7XHJcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeSk7XHJcbiAgICBtYXJnaW46IDAgMCA0cHggMDtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbn1cclxuXHJcbi5zdGF0cy12YWx1ZSB7XHJcbiAgICBmb250LXNpemU6IDEuNXJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5KTtcclxuICAgIG1hcmdpbjogMDtcclxufVxyXG5cclxuLnN0YXRzLWNvbXBsZXRpb24ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcclxuICAgIGdhcDogNHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNHB4O1xyXG59XHJcblxyXG4uY29tcGxldGlvbi12YWx1ZSB7XHJcbiAgICBmb250LXNpemU6IDEuNXJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5KTtcclxufVxyXG5cclxuLmNvbXBsZXRpb24tcGVyY2VudCB7XHJcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5KTtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbn1cclxuXHJcbi5jb21wbGV0aW9uLWJhZGdlIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHBhZGRpbmc6IDJweCA4cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMTBiOTgxO1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5OXB4O1xyXG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLnN0YXRzLXRlbXAge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXA6IDhweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDRweDtcclxufVxyXG5cclxuLnRlbXAtdmFsdWUge1xyXG4gICAgZm9udC1zaXplOiAxLjVyZW07XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeSk7XHJcbn1cclxuXHJcbi50ZW1wLXRyZW5kIHtcclxuICAgIG1hcmdpbi10b3A6IDJweDtcclxufVxyXG5cclxuLnRlbXAtdHJlbmQudXAge1xyXG4gICAgY29sb3I6ICNlZjQ0NDQ7XHJcbn1cclxuXHJcbi50ZW1wLXRyZW5kLmRvd24ge1xyXG4gICAgY29sb3I6ICMzYjgyZjY7XHJcbn1cclxuXHJcbi5jcml0aWNhbC13YXJuaW5nIHtcclxuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcclxuICAgIGNvbG9yOiB2YXIoLS1kYW5nZXIpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIGJhY2tncm91bmQ6ICNmZWYyZjI7XHJcbiAgICBwYWRkaW5nOiAycHggOHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXNtKTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxufVxyXG4iLCIvKiBjb21wb25lbnRzL1VJL0xvYWRpbmdTcGlubmVyLmNzcyAqL1xyXG4uc3Bpbm5lciB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLnNwaW5uZXItY2lyY2xlIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyLXRvcC1jb2xvcjogIzNiODJmNjtcclxuICAgIGFuaW1hdGlvbjogc3BpbiAxcyBsaW5lYXIgaW5maW5pdGU7XHJcbn1cclxuXHJcbi5zcGlubmVyLXNtYWxsIC5zcGlubmVyLWNpcmNsZSB7XHJcbiAgICB3aWR0aDogMjBweDtcclxuICAgIGhlaWdodDogMjBweDtcclxuICAgIGJvcmRlci13aWR0aDogMnB4O1xyXG59XHJcblxyXG4uc3Bpbm5lci1tZWRpdW0gLnNwaW5uZXItY2lyY2xlIHtcclxuICAgIHdpZHRoOiAzMnB4O1xyXG4gICAgaGVpZ2h0OiAzMnB4O1xyXG4gICAgYm9yZGVyLXdpZHRoOiAzcHg7XHJcbn1cclxuXHJcbi5zcGlubmVyLWxhcmdlIC5zcGlubmVyLWNpcmNsZSB7XHJcbiAgICB3aWR0aDogNDhweDtcclxuICAgIGhlaWdodDogNDhweDtcclxuICAgIGJvcmRlci13aWR0aDogNHB4O1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHNwaW4ge1xyXG4gICAgMCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxyXG4gICAgMTAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cclxufVxyXG4iLCIvKiBjb21wb25lbnRzL1VJL0FsZXJ0LmNzcyAqL1xyXG4uYWxlcnQge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgZ2FwOiAxMnB4O1xyXG4gICAgcGFkZGluZzogMTZweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tZCk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbn1cclxuXHJcbi5hbGVydC1pbmZvIHtcclxuICAgIGJhY2tncm91bmQ6ICNlZmY2ZmY7XHJcbiAgICBib3JkZXItY29sb3I6ICNiZmRiZmU7XHJcbiAgICBjb2xvcjogIzFlNDBhZjtcclxufVxyXG5cclxuLmFsZXJ0LXN1Y2Nlc3Mge1xyXG4gICAgYmFja2dyb3VuZDogI2QxZmFlNTtcclxuICAgIGJvcmRlci1jb2xvcjogI2E3ZjNkMDtcclxuICAgIGNvbG9yOiAjMDY1ZjQ2O1xyXG59XHJcblxyXG4uYWxlcnQtd2FybmluZyB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmVmM2M3O1xyXG4gICAgYm9yZGVyLWNvbG9yOiAjZmRlNjhhO1xyXG4gICAgY29sb3I6ICM5MjQwMGU7XHJcbn1cclxuXHJcbi5hbGVydC1lcnJvciB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmVlMmUyO1xyXG4gICAgYm9yZGVyLWNvbG9yOiAjZmVjYWNhO1xyXG4gICAgY29sb3I6ICM5OTFiMWI7XHJcbn1cclxuXHJcbi5hbGVydC1pY29uIHtcclxuICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgbWFyZ2luLXRvcDogMnB4O1xyXG59XHJcblxyXG4uYWxlcnQtY29udGVudCB7XHJcbiAgICBmbGV4OiAxO1xyXG59XHJcblxyXG4uYWxlcnQtdGl0bGUge1xyXG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBtYXJnaW46IDAgMCA0cHggMDtcclxufVxyXG5cclxuLmFsZXJ0LW1lc3NhZ2Uge1xyXG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbn1cclxuXHJcbi5hbGVydC1jbG9zZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgcGFkZGluZzogNHB4O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcclxuICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXNtKTtcclxufVxyXG5cclxuLmFsZXJ0LWNsb3NlOmhvdmVyIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbn1cclxuXHJcbi5hbGVydC1jbG9zZTpmb2N1cyB7XHJcbiAgICBvdXRsaW5lOiAycHggc29saWQgY3VycmVudENvbG9yO1xyXG4gICAgb3V0bGluZS1vZmZzZXQ6IDJweDtcclxufVxyXG4iLCJAaW1wb3J0IHVybCgnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1JbnRlcjp3Z2h0QDMwMDs0MDA7NTAwOzYwMDs3MDAmZGlzcGxheT1zd2FwJyk7XHJcblxyXG46cm9vdCB7XHJcbiAgICAtLXByaW1hcnk6ICMzYjgyZjY7XHJcbiAgICAtLXByaW1hcnktaG92ZXI6ICMyNTYzZWI7XHJcbiAgICAtLXNlY29uZGFyeTogIzEwYjk4MTtcclxuICAgIC0tZGFuZ2VyOiAjZWY0NDQ0O1xyXG4gICAgLS13YXJuaW5nOiAjZjU5ZTBiO1xyXG4gICAgLS1iYWNrZ3JvdW5kOiAjZjlmYWZiO1xyXG4gICAgLS1zdXJmYWNlOiAjZmZmZmZmO1xyXG4gICAgLS10ZXh0LXByaW1hcnk6ICMxZjI5Mzc7XHJcbiAgICAtLXRleHQtc2Vjb25kYXJ5OiAjNmI3MjgwO1xyXG4gICAgLS10ZXh0LXRlcnRpYXJ5OiAjOWNhM2FmO1xyXG4gICAgLS1ib3JkZXI6ICNlNWU3ZWI7XHJcbiAgICAtLXNoYWRvdy1zbTogMCAxcHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjA1KTtcclxuICAgIC0tc2hhZG93LW1kOiAwIDRweCA2cHggLTFweCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbiAgICAtLXNoYWRvdy1sZzogMCAxMHB4IDI1cHggLTVweCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbiAgICAtLXJhZGl1cy1zbTogNHB4O1xyXG4gICAgLS1yYWRpdXMtbWQ6IDhweDtcclxuICAgIC0tcmFkaXVzLWxnOiAxMnB4O1xyXG4gICAgLS1yYWRpdXMteGw6IDE2cHg7XHJcbn1cclxuXHJcbioge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbn1cclxuXHJcbmh0bWwge1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG59XHJcblxyXG5ib2R5IHtcclxuICAgIGZvbnQtZmFtaWx5OiAnSW50ZXInLCAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsICdTZWdvZSBVSScsIFJvYm90bywgc2Fucy1zZXJpZjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQpO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeSk7XHJcbiAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgbWluLWhlaWdodDogMTAwdmg7XHJcbn1cclxuXHJcbi5hcHAge1xyXG4gICAgbWluLWhlaWdodDogMTAwdmg7XHJcbiAgICBwYWRkaW5nOiAwIDI0cHggMjRweDtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG59XHJcblxyXG4vKiBMYXlvdXQgKi9cclxuLmFwcC1ncmlkIHtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDM4MHB4IDFmcjtcclxuICAgIGdhcDogMzJweDtcclxuICAgIG1hcmdpbi10b3A6IDMycHg7XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuICAgIC5hcHAge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMTJweCAxMnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5hcHAtZ3JpZCB7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XHJcbiAgICAgICAgZ2FwOiAxNnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC8qIEVuIDEgY29sb25uZSwgb24gZW5sw6h2ZSBsZSBzdGlja3kgcG91ciDDqXZpdGVyIHF1ZSBsZSBjYWxlbmRyaWVyIHJlY291dnJlIGxlIGNvbnRlbnUgKi9cclxuICAgIC5jYWxlbmRhci1zZWN0aW9uIHtcclxuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICAgIHRvcDogYXV0bztcclxuICAgICAgICBhbGlnbi1zZWxmOiBhdXRvO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBIZWFkZXIgKi9cclxuLmFwcC1oZWFkZXIge1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxufVxyXG5cclxuLmhlYWRlci1jb250ZW50IHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgZ2FwOiAxNnB4O1xyXG59XHJcblxyXG4uYXBwLXRpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogMnJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5KTtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZ2FwOiAxMnB4O1xyXG59XHJcblxyXG4uaGVhZGVyLWljb24ge1xyXG4gICAgY29sb3I6IHZhcigtLXByaW1hcnkpO1xyXG59XHJcblxyXG4uYXBwLXN1YnRpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeSk7XHJcbiAgICBtYXJnaW4tdG9wOiA0cHg7XHJcbn1cclxuXHJcbi8qIERhdGUgaW5kaWNhdG9yICovXHJcbi5kYXRlLWluZGljYXRvciB7XHJcbiAgICBmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLmRhdGUtZGlzcGxheSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogOHB4O1xyXG59XHJcblxyXG4uZGF0ZS1pY29uIHtcclxuICAgIGNvbG9yOiB2YXIoLS1wcmltYXJ5KTtcclxufVxyXG5cclxuLmN1cnJlbnQtZGF0ZSB7XHJcbiAgICBmb250LXNpemU6IDEuMjVyZW07XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeSk7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogOHB4O1xyXG59XHJcblxyXG4udG9kYXktYmFkZ2Uge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tcHJpbWFyeSk7XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbiAgICBwYWRkaW5nOiAycHggOHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5OXB4O1xyXG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLnBhc3QtZGF0ZS1ub3RpY2Uge1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5KTtcclxuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG59XHJcblxyXG4vKiBDb250ZW50ICovXHJcbi5jb250ZW50LWNhcmQge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tc3VyZmFjZSk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMteGwpO1xyXG4gICAgcGFkZGluZzogMzJweDtcclxuICAgIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1sZyk7XHJcbn1cclxuXHJcbi5jb250ZW50LWhlYWRlciB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzMnB4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgZ2FwOiAxNnB4O1xyXG59XHJcblxyXG4uY29udGVudC10aXRsZSB7XHJcbiAgICBmb250LXNpemU6IDEuMjVyZW07XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeSk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA0cHg7XHJcbn1cclxuXHJcbi5jb250ZW50LXN1YnRpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnkpO1xyXG59XHJcblxyXG4ucmVhZG9ubHktbm90aWNlIHtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeSk7XHJcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuXHJcbi5oZWFkZXItYWN0aW9ucyB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogMTZweDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxufVxyXG5cclxuLnVuc2F2ZWQtaW5kaWNhdG9yIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZ2FwOiA2cHg7XHJcbiAgICBwYWRkaW5nOiA4cHggMTJweDtcclxuICAgIGJhY2tncm91bmQ6ICNmZWYzYzc7XHJcbiAgICBjb2xvcjogIzkyNDAwZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tZCk7XHJcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xyXG59XHJcblxyXG4vKiBHcmlkICovXHJcbi5mcmlnb3MtZ3JpZC5jb21wYWN0IHtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgyMDBweCwgMWZyKSk7XHJcbiAgICBnYXA6IDEycHg7XHJcbiAgICBtYXJnaW4tdG9wOiAyNHB4O1xyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgIC5mcmlnb3MtZ3JpZC5jb21wYWN0IHtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgxNjBweCwgMWZyKSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIEFkZCBzZWN0aW9uICovXHJcbi5hZGQtc2VjdGlvbiB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xyXG59XHJcblxyXG4ud2FybmluZy10ZXh0IHtcclxuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeSk7XHJcbiAgICBtYXJnaW4tdG9wOiA4cHg7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogNHB4O1xyXG59XHJcblxyXG4ud2FybmluZy1pY29uIHtcclxuICAgIGNvbG9yOiB2YXIoLS1kYW5nZXIpO1xyXG59XHJcblxyXG4vKiBFbXB0eSBzdGF0ZSAqL1xyXG4uZW1wdHktc3RhdGUge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgcGFkZGluZzogNDhweCAyNHB4O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tc3VyZmFjZSk7XHJcbiAgICBib3JkZXI6IDJweCBkYXNoZWQgdmFyKC0tYm9yZGVyKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1sZyk7XHJcbiAgICBtYXJnaW4tdG9wOiAyNHB4O1xyXG59XHJcblxyXG4uZW1wdHktaWNvbiB7XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC10ZXJ0aWFyeSk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xyXG59XHJcblxyXG4uZW1wdHktdGl0bGUge1xyXG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnkpO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogOHB4O1xyXG59XHJcblxyXG4uZW1wdHktZGVzY3JpcHRpb24ge1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5KTtcclxuICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XHJcbn1cclxuXHJcbi8qIExvYWRpbmcgKi9cclxuLmxvYWRpbmctY29udGFpbmVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgcGFkZGluZzogNjRweDtcclxuICAgIGdhcDogMTZweDtcclxufVxyXG5cclxuLyogQ2FsZW5kYXIgc2VjdGlvbiAqL1xyXG4uY2FsZW5kYXItc2VjdGlvbiB7XHJcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xyXG4gICAgdG9wOiAyMHB4O1xyXG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xyXG4gICAgLmFwcC1ncmlkIHtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuICAgICAgICBnYXA6IDE2cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmNhbGVuZGFyLXNlY3Rpb24ge1xyXG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcclxuICAgICAgICB0b3A6IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgICBhbGlnbi1zZWxmOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgei1pbmRleDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC5jb250ZW50LXNlY3Rpb24ge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY2FsZW5kYXItaGVhZGVyLXdpdGgtcmVmcmVzaCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGdhcDogMTZweDtcclxufVxyXG5cclxuLmNhbGVuZGFyLWFjdGlvbnMge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiAwIDhweDtcclxufVxyXG5cclxuLnByZWxvYWRpbmctaW5kaWNhdG9yIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZ2FwOiA4cHg7XHJcbiAgICBmb250LXNpemU6IDAuNzVyZW07XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnkpO1xyXG59XHJcblxyXG4vKiBVdGlsaXRpZXMgKi9cclxuLnRleHQtY2VudGVyIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLm10LTQge1xyXG4gICAgbWFyZ2luLXRvcDogMXJlbTtcclxufVxyXG5cclxuLm1iLTQge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxufVxyXG5cclxuLyogUmVzcG9uc2l2ZSAqL1xyXG5AbWVkaWEgKG1heC13aWR0aDogNjQwcHgpIHtcclxuICAgIC5oZWFkZXItY29udGVudCB7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcclxuICAgIH1cclxuXHJcbiAgICAuYXBwLXRpdGxlIHtcclxuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcclxuICAgIH1cclxuXHJcbiAgICAuY3VycmVudC1kYXRlIHtcclxuICAgICAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbnRlbnQtaGVhZGVyIHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgfVxyXG5cclxuICAgIC5oZWFkZXItYWN0aW9ucyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgIH1cclxufVxyXG5cclxuLyogRm9jdXMgc3R5bGVzICovXHJcbio6Zm9jdXMge1xyXG4gICAgb3V0bGluZTogMnB4IHNvbGlkIHZhcigtLXByaW1hcnkpO1xyXG4gICAgb3V0bGluZS1vZmZzZXQ6IDJweDtcclxufVxyXG5cclxuKjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbn1cclxuXHJcbi8qIEJ1dHRvbiBkaXNhYmxlZCAqL1xyXG4uYnRuOmRpc2FibGVkIHtcclxuICAgIG9wYWNpdHk6IDAuNTtcclxuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcclxuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnJlbGV2ZS1wcmVtaXVtLWhlYWRlciB7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgcGFkZGluZzogMjBweCAyMnB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNSwgMjMsIDQyLCAwLjA4KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDI0cHg7XHJcbiAgICBiYWNrZ3JvdW5kOlxyXG4gICAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IHRvcCBsZWZ0LCByZ2JhKDE0LCAxNjUsIDIzMywgMC4xNSksIHRyYW5zcGFyZW50IDM0JSksXHJcbiAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45NykgMCUsIHJnYmEoMjQwLCAyNDksIDI1NSwgMC45NykgMTAwJSk7XHJcbiAgICBib3gtc2hhZG93OiAwIDE4cHggNDVweCByZ2JhKDE1LCAyMywgNDIsIDAuMDgpO1xyXG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEycHgpO1xyXG59XHJcblxyXG4ucmVsZXZlLXByZW1pdW0taGVhZGVyIC5oZWFkZXItY29udGVudCB7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZ2FwOiAxOHB4O1xyXG59XHJcblxyXG4ucmVsZXZlLWhlYWRlci1tYWluIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZ2FwOiAxNXB4O1xyXG4gICAgbWluLXdpZHRoOiAwO1xyXG59XHJcblxyXG4ucmVsZXZlLWhlYWRlci1pY29uIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgd2lkdGg6IDU0cHg7XHJcbiAgICBoZWlnaHQ6IDU0cHg7XHJcbiAgICBmbGV4OiAwIDAgNTRweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDE4cHg7XHJcbiAgICBiYWNrZ3JvdW5kOlxyXG4gICAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IHRvcCBsZWZ0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzQpLCB0cmFuc3BhcmVudCA0NSUpLFxyXG4gICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMDI4NGM3IDAlLCAjMGVhNWU5IDEwMCUpO1xyXG4gICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICBib3gtc2hhZG93OiAwIDE0cHggMjhweCByZ2JhKDE0LCAxNjUsIDIzMywgMC4yNCk7XHJcbn1cclxuXHJcbi5yZWxldmUtaGVhZGVyLWtpY2tlciB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzcHg7XHJcbiAgICBjb2xvcjogIzAyODRjNztcclxuICAgIGZvbnQtc2l6ZTogMC43MnJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcclxufVxyXG5cclxuLnJlbGV2ZS1wcmVtaXVtLWhlYWRlciAuYXBwLXRpdGxlIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGNvbG9yOiAjMTExODI3O1xyXG4gICAgZm9udC1zaXplOiAxLjU1cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDk1MDtcclxuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMzVlbTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjE1O1xyXG59XHJcblxyXG4ucmVsZXZlLXByZW1pdW0taGVhZGVyIC5hcHAtc3VidGl0bGUge1xyXG4gICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gICAgY29sb3I6ICM2NDc0OGI7XHJcbiAgICBmb250LXNpemU6IDAuODhyZW07XHJcbiAgICBmb250LXdlaWdodDogNjUwO1xyXG59XHJcblxyXG4ucmVsZXZlLWhlYWRlci1zaWRlIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgIGdhcDogMTJweDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxufVxyXG5cclxuLnJlbGV2ZS1wcmVtaXVtLWhlYWRlciAuZGF0ZS1pbmRpY2F0b3Ige1xyXG4gICAgcGFkZGluZzogMTBweCAxM3B4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNCwgMTY1LCAyMzMsIDAuMTQpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44Mik7XHJcbiAgICBib3gtc2hhZG93OiAwIDEwcHggMjJweCByZ2JhKDE1LCAyMywgNDIsIDAuMDYpO1xyXG59XHJcblxyXG4ucmVsZXZlLXByZW1pdW0taGVhZGVyIC5kYXRlLWRpc3BsYXkge1xyXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICBnYXA6IDlweDtcclxufVxyXG5cclxuLnJlbGV2ZS1wcmVtaXVtLWhlYWRlciAuZGF0ZS1pY29uIHtcclxuICAgIG1hcmdpbi10b3A6IDJweDtcclxuICAgIGNvbG9yOiAjMDI4NGM3O1xyXG59XHJcblxyXG4ucmVsZXZlLWRhdGUtbGFiZWwge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7XHJcbiAgICBjb2xvcjogIzY0NzQ4YjtcclxuICAgIGZvbnQtc2l6ZTogMC42OHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcclxufVxyXG5cclxuLnJlbGV2ZS1wcmVtaXVtLWhlYWRlciAuY3VycmVudC1kYXRlIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGNvbG9yOiAjMTExODI3O1xyXG4gICAgZm9udC1zaXplOiAwLjk1cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xyXG59XHJcblxyXG4ucmVsZXZlLWRhdGUtYmFkZ2VzIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZ2FwOiA2cHg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBtYXJnaW4tdG9wOiA4cHg7XHJcbn1cclxuXHJcbi5yZWxldmUtcHJlbWl1bS1oZWFkZXIgLnRvZGF5LWJhZGdlLFxyXG4ucmVsZXZlLXByZW1pdW0taGVhZGVyIC5wYXN0LWRhdGUtbm90aWNlLFxyXG4ucmVsZXZlLXVuc2F2ZWQtYmFkZ2Uge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZ2FwOiA1cHg7XHJcbiAgICBwYWRkaW5nOiA1cHggOXB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICBmb250LXNpemU6IDAuNzByZW07XHJcbiAgICBmb250LXdlaWdodDogOTAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IDE7XHJcbn1cclxuXHJcbi5yZWxldmUtcHJlbWl1bS1oZWFkZXIgLnRvZGF5LWJhZGdlIHtcclxuICAgIGJhY2tncm91bmQ6ICNlY2ZkZjU7XHJcbiAgICBjb2xvcjogIzA0Nzg1NztcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoNCwgMTIwLCA4NywgMC4xNik7XHJcbn1cclxuXHJcbi5yZWxldmUtcHJlbWl1bS1oZWFkZXIgLnBhc3QtZGF0ZS1ub3RpY2Uge1xyXG4gICAgYmFja2dyb3VuZDogI2Y4ZmFmYztcclxuICAgIGNvbG9yOiAjNjQ3NDhiO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNSwgMjMsIDQyLCAwLjA4KTtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxufVxyXG5cclxuLnJlbGV2ZS11bnNhdmVkLWJhZGdlIHtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZiZWI7XHJcbiAgICBjb2xvcjogI2I0NTMwOTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTgwLCA4MywgOSwgMC4xNik7XHJcbn1cclxuXHJcbi5yZWxldmUtcHJlbWl1bS1oZWFkZXIgLmJ0bixcclxuLnJlbGV2ZS1wcmVtaXVtLWhlYWRlciBidXR0b24ge1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICBmb250LXdlaWdodDogOTAwO1xyXG59XHJcblxyXG4ucmVsZXZlLXByZW1pdW0taGVhZGVyIGJ1dHRvbiB7XHJcbiAgICBib3gtc2hhZG93OiAwIDEwcHggMjJweCByZ2JhKDE1LCAyMywgNDIsIDAuMDgpO1xyXG59XHJcblxyXG4vKiBIYXJtb25pc2F0aW9uIGRlcyBjYXJ0ZXMgcHJpbmNpcGFsZXMgZGUgbGEgcGFnZSByZWxldsOpcyAqL1xyXG4uYXBwIC5jb250ZW50LWNhcmQge1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNSwgMjMsIDQyLCAwLjA4KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDI0cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTYpO1xyXG4gICAgYm94LXNoYWRvdzogMCAyMnB4IDU1cHggcmdiYSgxNSwgMjMsIDQyLCAwLjEwKTtcclxufVxyXG5cclxuLmFwcCAuY29udGVudC1oZWFkZXIge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDE4cHg7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgxNSwgMjMsIDQyLCAwLjA4KTtcclxuICAgIG1hcmdpbi1ib3R0b206IDIycHg7XHJcbn1cclxuXHJcbi5hcHAgLmNvbnRlbnQtdGl0bGUge1xyXG4gICAgY29sb3I6ICMxMTE4Mjc7XHJcbiAgICBmb250LXdlaWdodDogOTUwO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XHJcbn1cclxuXHJcbi5hcHAgLmNvbnRlbnQtc3VidGl0bGUge1xyXG4gICAgY29sb3I6ICM2NDc0OGI7XHJcbiAgICBmb250LXdlaWdodDogNjUwO1xyXG59XHJcblxyXG4uYXBwIC51bnNhdmVkLWluZGljYXRvciB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE4MCwgODMsIDksIDAuMTYpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmYmViO1xyXG4gICAgY29sb3I6ICNiNDUzMDk7XHJcbiAgICBmb250LXdlaWdodDogOTAwO1xyXG59XHJcblxyXG4uYXBwIC5lbXB0eS1zdGF0ZSB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAyNHB4O1xyXG4gICAgYmFja2dyb3VuZDpcclxuICAgICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCB0b3AsIHJnYmEoMTQsIDE2NSwgMjMzLCAwLjA4KSwgdHJhbnNwYXJlbnQgMzYlKSxcclxuICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkyKTtcclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xyXG4gICAgLnJlbGV2ZS1wcmVtaXVtLWhlYWRlciAuaGVhZGVyLWNvbnRlbnQge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICB9XHJcblxyXG4gICAgLnJlbGV2ZS1oZWFkZXItc2lkZSB7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNjQwcHgpIHtcclxuICAgIC5yZWxldmUtcHJlbWl1bS1oZWFkZXIge1xyXG4gICAgICAgIHBhZGRpbmc6IDE2cHg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAucmVsZXZlLWhlYWRlci1tYWluIHtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgIH1cclxuXHJcbiAgICAucmVsZXZlLWhlYWRlci1pY29uIHtcclxuICAgICAgICB3aWR0aDogNDZweDtcclxuICAgICAgICBoZWlnaHQ6IDQ2cHg7XHJcbiAgICAgICAgZmxleC1iYXNpczogNDZweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5yZWxldmUtcHJlbWl1bS1oZWFkZXIgLmFwcC10aXRsZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjI4cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIC5yZWxldmUtaGVhZGVyLXNpZGUge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICB9XHJcblxyXG4gICAgLnJlbGV2ZS1wcmVtaXVtLWhlYWRlciAuZGF0ZS1pbmRpY2F0b3Ige1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYXBwIC5yZWxldmUtcHJlbWl1bS1oZWFkZXIsXHJcbi5yZWxldmUtcHJlbWl1bS1oZWFkZXIge1xyXG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xyXG4gICAgcGFkZGluZzogMjBweCAyMnB4ICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE1LCAyMywgNDIsIDAuMDgpICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItcmFkaXVzOiAyNHB4ICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZ3JvdW5kOlxyXG4gICAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IHRvcCBsZWZ0LCByZ2JhKDE0LCAxNjUsIDIzMywgMC4xNSksIHRyYW5zcGFyZW50IDM0JSksXHJcbiAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45OCkgMCUsIHJnYmEoMjQwLCAyNDksIDI1NSwgMC45OCkgMTAwJSkgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjMTExODI3ICFpbXBvcnRhbnQ7XHJcbiAgICBib3gtc2hhZG93OiAwIDE4cHggNDVweCByZ2JhKDE1LCAyMywgNDIsIDAuMDgpICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTJweCk7XHJcbn1cclxuXHJcbi5hcHAgLnJlbGV2ZS1wcmVtaXVtLWhlYWRlciAqLFxyXG4ucmVsZXZlLXByZW1pdW0taGVhZGVyICoge1xyXG4gICAgY29sb3I6IGluaGVyaXQ7XHJcbn1cclxuXHJcbi5hcHAgLnJlbGV2ZS1wcmVtaXVtLWhlYWRlciAuYXBwLXRpdGxlLFxyXG4ucmVsZXZlLXByZW1pdW0taGVhZGVyIC5hcHAtdGl0bGUge1xyXG4gICAgY29sb3I6ICMxMTE4MjcgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmFwcCAucmVsZXZlLXByZW1pdW0taGVhZGVyIC5hcHAtc3VidGl0bGUsXHJcbi5yZWxldmUtcHJlbWl1bS1oZWFkZXIgLmFwcC1zdWJ0aXRsZSB7XHJcbiAgICBjb2xvcjogIzY0NzQ4YiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uYXBwIC5yZWxldmUtcHJlbWl1bS1oZWFkZXIgLnJlbGV2ZS1oZWFkZXIta2lja2VyLFxyXG4ucmVsZXZlLXByZW1pdW0taGVhZGVyIC5yZWxldmUtaGVhZGVyLWtpY2tlciB7XHJcbiAgICBjb2xvcjogIzAyODRjNyAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uYXBwIC5yZWxldmUtcHJlbWl1bS1oZWFkZXIgLnJlbGV2ZS1oZWFkZXItaWNvbixcclxuLnJlbGV2ZS1wcmVtaXVtLWhlYWRlciAucmVsZXZlLWhlYWRlci1pY29uIHtcclxuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZ3JvdW5kOlxyXG4gICAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IHRvcCBsZWZ0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzQpLCB0cmFuc3BhcmVudCA0NSUpLFxyXG4gICAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMDI4NGM3IDAlLCAjMGVhNWU5IDEwMCUpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5hcHAgLnJlbGV2ZS1wcmVtaXVtLWhlYWRlciAucmVsZXZlLWhlYWRlci1pY29uIHN2ZyxcclxuLnJlbGV2ZS1wcmVtaXVtLWhlYWRlciAucmVsZXZlLWhlYWRlci1pY29uIHN2ZyB7XHJcbiAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xyXG4gICAgc3Ryb2tlOiAjZmZmZmZmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5hcHAgLnJlbGV2ZS1wcmVtaXVtLWhlYWRlciAuZGF0ZS1pbmRpY2F0b3IsXHJcbi5yZWxldmUtcHJlbWl1bS1oZWFkZXIgLmRhdGUtaW5kaWNhdG9yIHtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44OCkgIWltcG9ydGFudDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTQsIDE2NSwgMjMzLCAwLjE0KSAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6ICMxMTE4MjcgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmFwcCAucmVsZXZlLXByZW1pdW0taGVhZGVyIC5kYXRlLWljb24sXHJcbi5yZWxldmUtcHJlbWl1bS1oZWFkZXIgLmRhdGUtaWNvbiB7XHJcbiAgICBjb2xvcjogIzAyODRjNyAhaW1wb3J0YW50O1xyXG4gICAgc3Ryb2tlOiAjMDI4NGM3ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5hcHAgLnJlbGV2ZS1wcmVtaXVtLWhlYWRlciAucmVsZXZlLWRhdGUtbGFiZWwsXHJcbi5yZWxldmUtcHJlbWl1bS1oZWFkZXIgLnJlbGV2ZS1kYXRlLWxhYmVsIHtcclxuICAgIGNvbG9yOiAjNjQ3NDhiICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5hcHAgLnJlbGV2ZS1wcmVtaXVtLWhlYWRlciAuY3VycmVudC1kYXRlLFxyXG4ucmVsZXZlLXByZW1pdW0taGVhZGVyIC5jdXJyZW50LWRhdGUge1xyXG4gICAgY29sb3I6ICMxMTE4MjcgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmFwcCAucmVsZXZlLXByZW1pdW0taGVhZGVyIC50b2RheS1iYWRnZSxcclxuLnJlbGV2ZS1wcmVtaXVtLWhlYWRlciAudG9kYXktYmFkZ2Uge1xyXG4gICAgYmFja2dyb3VuZDogI2VjZmRmNSAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6ICMwNDc4NTcgIWltcG9ydGFudDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoNCwgMTIwLCA4NywgMC4xNikgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmFwcCAucmVsZXZlLXByZW1pdW0taGVhZGVyIC5wYXN0LWRhdGUtbm90aWNlLFxyXG4ucmVsZXZlLXByZW1pdW0taGVhZGVyIC5wYXN0LWRhdGUtbm90aWNlIHtcclxuICAgIGJhY2tncm91bmQ6ICNmOGZhZmMgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjNjQ3NDhiICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE1LCAyMywgNDIsIDAuMDgpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5hcHAgLnJlbGV2ZS1wcmVtaXVtLWhlYWRlciAucmVsZXZlLXVuc2F2ZWQtYmFkZ2UsXHJcbi5yZWxldmUtcHJlbWl1bS1oZWFkZXIgLnJlbGV2ZS11bnNhdmVkLWJhZGdlIHtcclxuICAgIGJhY2tncm91bmQ6ICNmZmZiZWIgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjYjQ1MzA5ICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE4MCwgODMsIDksIDAuMTYpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5hcHAgLnJlbGV2ZS1wcmVtaXVtLWhlYWRlciAucmVsZXZlLXVuc2F2ZWQtYmFkZ2Ugc3ZnLFxyXG4ucmVsZXZlLXByZW1pdW0taGVhZGVyIC5yZWxldmUtdW5zYXZlZC1iYWRnZSBzdmcge1xyXG4gICAgY29sb3I6ICNiNDUzMDkgIWltcG9ydGFudDtcclxuICAgIHN0cm9rZTogI2I0NTMwOSAhaW1wb3J0YW50O1xyXG59XHJcbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/