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

:root {
    --gp-primary-color: #bf3027;
    --eco-primary-color: #00a388;
}

.bg-gp-primary {
    background: var(--gp-primary-color);
}

.bg-eco-primary {
    background: var(--eco-primary-color);
}

.text-gp-primary {
    color: var(--gp-primary-color);
}

.text-hidden {
    opacity: 0 !important;
}

.list-group-item-link:hover {
    background: #cfe2ff;
}

.bg-black-20 {
    background: rgb(0 0 0 / 20%);
}

.help-red {
    color: red;
}

/**
POSITIONS
 */

.justify-self-center {
    justify-self: center;
}

.object-position-top {
    object-position: top;
}

.pagination {
    justify-content: center;
}

.grid-title {
    grid-column: 1 / -1;
}

.grid-fill {
    grid-column: 1 / -1;
}

.d-flex h1 {
    margin: 0;
}

.action-buttons {
    grid-column: span 2;
}

/**
WIDTH
 */

.input-qte {
    width: 5em;
}

.linkable-accessoires .input-qte {
    width: 3em;
}

.w-45px {
    width: 45px;
}

.w-stretch {
    width: stretch !important;
}

/**
HEIGHT
 */
.mh-20em {
    max-height: 20em;
}

.mh-13em {
    max-height: 13em;
}


/**
SIZES
 */
.smaller {
    font-size: 0.675em;
}

/**
BUTTONS
 */

.btn-outline-success.disabled {
    border: none !important;
    opacity: initial !important;
}

.content-half > div,
.content-half > .btn {
    flex: 1 0 50%;
}

/**
TABLES
 */
.table-fixed {
    table-layout: fixed;
}

td.word-break {
    word-break: break-all;
}

.form-label {
    position: relative;
}
.form-label.required::after {
    content: " *";
    color: red;
    position: absolute;
    top: -0.2em;
    right: -0.6em;
    font-size: 1.6em;
}



/**
STRUCTURE
 */

html,
body {
    height: 100vh;
}

body {
    display: grid;
    grid-template-columns: 100vw;
    grid-template-rows: repeat(4, auto) 1fr auto;
}

.span-2 {
    grid-column: span 2;
}

.span-3 {
    grid-column: span 3;
}

/**
FOOTER
 */

.footer-inner {
    grid-template-columns: 1fr;
}

footer h2 {
    font-size: 1rem;
}

footer p,
footer a {
    font-size: 0.8rem;
}

@media (min-width: 768px) {
    .footer-inner {
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: auto auto 1fr;
        grid-template-areas:
            "about about"
            "contact network"
            "contact newsletter";
        gap: 1em;
    }

    .about-us {
        grid-area: about;
    }

    .contact-info {
        grid-area: contact;
    }

    .social-network {
        grid-area: network;
    }

    .newsletter {
        grid-area: newsletter;
    }
}

@media (min-width: 992px) {

    .footer-inner {
        grid-template-columns: 2fr 1fr 1fr;
        grid-template-rows: auto 1fr;
        grid-template-areas:
            "about contact network"
            "about contact newsletter";
        gap: 1em 1.5em;
    }
}

@media (min-width: 1200px) {
    footer h2 {
        font-size: 1.5rem;
    }

    footer p,
    footer a .text {
        font-size: 0.9rem;
    }
}


/**
CARD PAPIER
 */

.card-papier-wrapper {
    display: grid;
    gap: 1.2em;
}

.card-papier h5 {
    font-size: 1.10rem;
}

.card-papier .card-text {
    grid-template-columns: auto 1fr;
}

@media (min-width: 992px) {

    .card-papier-wrapper {
        grid-template-columns: repeat(auto-fill, minmax(22em, 1fr));
    }
}


/**
CARD BUREAUTIQUE
 */

.card-bureautique-wrapper {
    display: grid;
    gap: 1.2em;
}

.card-bureautique img {
    height: 8em;
    object-fit: contain;
}

.card-bureautique h2 {
    font-size: 1.10rem;
}

.card-bureautique .card-text {
    grid-template-columns: auto 1fr;
}

@media (min-width: 992px) {

    .card-bureautique-wrapper {
        grid-template-columns: repeat(auto-fill, minmax(22em, 1fr));
    }
}


/**
CARD ADRESSE
 */

.adresse-entreprise .meta {
    flex: 0;
}

/**
NAVBAR
 */
.navbar-brand .small-logo {
    width: 8.4em;
}

.navbar-search {
    flex-basis: 24em; /*25em;*/ /*35em;*/

}

#main-menu .navbar {
    overflow-x: scroll;
}

#main-menu .nav-link {
    white-space: nowrap;
}

.input-qte {
    text-align: center;
}

.input-qte::placeholder {
    color: var(--bs-gray-500);
}


/**
    PROMOTIONS
 */

#promotions article {
    grid-template-columns: repeat(3, 1fr);
    grid-template-areas:
            "reference-wrapper prix-regular-wrapper prix-promo-wrapper"
            "description-wrapper description-wrapper description-wrapper"
            "action-buttons action-buttons action-buttons";
}

#promotions .reference-wrapper {
    grid-area: reference-wrapper;
}

#promotions .prix-regular-wrapper {
    grid-area: prix-regular-wrapper;
}

#promotions .prix-promo-wrapper {
    grid-area: prix-promo-wrapper;
}

#promotions .description-wrapper {
    grid-area: description-wrapper;
}

#promotions .action-buttons {
    grid-area: action-buttons;
    justify-self: center;
}

#promotions article {
    border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color);
}


@media (min-width: 992px) {

    #promotions .items-header,
    #promotions article {
        grid-template-columns: 7em 1fr 7em 7em 19em;
    }

    #promotions article {
        grid-template-areas: "reference-wrapper description-wrapper prix-regular-wrapper prix-promo-wrapper action-buttons";
        border-top: none;
    }

    #promotions .action-buttons {
        width: -webkit-fill-available;
        justify-self: start;
    }

    #promotions form {
        width: -webkit-fill-available;
    }
}


/**
AFFICHAGE DES PAPIERS
 */

.papier-inner {
    border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color);
}

.caracteristique-wrapper {
    border-bottom: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color);
}

.caracteristique-wrapper:nth-child(even) {
    border-left: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color);
}


@media (min-width: 992px) {

    .papier-inner {
        border-top: none;
    }

    .caracteristique-wrapper {
        border: none;
    }

    .caracteristique-wrapper:nth-child(even) {
        border-left: none;
    }
}


/**
AFFHICHAGE DES ARTICLES BUREAUTIQUE
 */

.bureautique-item.card .item-first-photo {
    height: 10em;
    object-fit: contain;
}

.bureautique-item.card .card-text {
    grid-template-columns: auto 1fr;
    gap: 0 1em;
}

.bureautique-item.card .card-text .label {
    font-size: smaller;
}

.bureautique-item.card .card-meta {
    grid-template-columns: auto 1fr;
    gap: 0.3em 1em;
    font-size: smaller;
}

.bureautique-item .action-buttons>a {
    flex-basis: 100%;
}


@media (min-width: 992px) {

    .bureautique-item.card .item-first-photo {
        height: 13em;
        max-width: 100%;
        object-fit: contain;
    }

}


/**
AFFICHAGE D'UN SEUL ARTICLE BUREAUTIQUE
 */

#article-synthese {
    grid-template-areas: "article-title" "article-carousel" "synthese-group" "article-dispo" "input-cart";
    align-items: start;
}

.article-title {
    grid-area: article-title;
}

.synthese-group {
    grid-area: synthese-group
}

#item-carousel {
    grid-area: article-carousel;
}

.article-codes {
    margin-left: auto;
    margin-right: auto;
    width: fit-content;
    grid-template-columns: auto 1fr;
    gap: 0.2em 1em;
}

.dispo {
    grid-area: article-dispo;
}

.input-cart {
    grid-area: input-cart;
}

.article-specifications-content {
    grid-template-columns: 1fr 1fr;
    gap: 0.4em 0.5em;
}

.article-pdfs a {
    width: fit-content;
}

.article-sibling img {
    width: calc(100% - 2rem);
    margin: 1rem;
    height: 15em;
    object-fit: contain;
}

@media (min-width: 768px) {

    #article-synthese {
        grid-template-columns: repeat(2, 1fr);
        grid-template-areas:
                "article-carousel article-title"
                "article-carousel synthese-group"
                "article-carousel article-dispo"
                "article-carousel input-cart";
    }

    .carousel-item img {
        height: 22rem;
        object-fit: contain;
    }
}

@media (min-width: 992px) {

    .carousel-item img {
        height: 25rem;
         object-fit: contain;
    }

    .article-details {
        grid-template-columns: 20rem 1fr;
        grid-template-areas:
                ". details-title"
                ". article-pdfs"
                "description-title article-description-content"
                "specifications-title article-specifications-content";
        gap: 1.3em 0;
    }

    .article-details h2 {
        grid-area: details-title;
    }

    .article-pdfs {
        grid-area: article-pdfs;
    }

    .description-title {
        grid-area: description-title;
    }

    .article-description-content {
        grid-area: article-description-content;
    }

    .specifications-title {
        grid-area: specifications-title;
    }

    .article-specifications-content {
        grid-area: article-specifications-content;
        grid-template-columns: auto 1fr;
        gap: 0 1em;
    }

}



/**
ACCESSOIRES
 */

#active-categories .card {
    /*height: 10em;*/
}

#active-categories .card img {
    height: 9.8em;
    object-fit: contain;
}

.accessoire-inner {
    /*border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color);*/
    gap: 0.2em;
}

.accessoire-inner .caracteristique-wrapper {
    flex: 0 1 45%;
    border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color);
}

.accessoire-image.card-img-top {
    height: 13rem;
    object-fit: contain;
}

.accessoire-no-image.card-img-top {
    height: 13rem;
    object-fit: contain;
}

.accessoires-description {
    height: 3.9rem;
}

.create-accessory-image {
    height: 6rem;
    object-fit: contain;
    max-width: none !important;
}

.description {
    font-size: 0.9em;
    line-height: 1.1;
}

@media (min-width: 768px) {
    .accessoire-category .accessoire-image {
        width: 16rem;
    }
}

@media (min-width: 992px) {
    .accessoire-category .accessoire-image {
        width: 19rem;
    }

    .accessoire-inner {
        border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color);
    }

    .accessoire-inner .caracteristique-wrapper {
        flex: unset;
        border: none;
    }

    #accessoires form {
        width: -webkit-fill-available;
    }

    #accessoires form[name='add_item_to_cart_form'] {
        width: -webkit-fit-content;
    }
}


/**
SINGLE ACCESSOIRE
 */

#accessoire-synthese {
    grid-template-columns: auto;
    grid-template-areas: "accessoire-title" "accessoire-photo" "accessoire-description" "synthese-group" "input-cart";
    align-items: start;
    gap: 1em 3em;
    justify-items: center;
}

#accessoire-synthese.no-photo {
    grid-template-columns: 1fr;
    grid-template-areas: "accessoire-title" "accessoire-description" "synthese-group" "input-cart";
    align-items: start;
    gap: 1em 0;
    justify-items: center;
}

#accessoire-title {
    grid-area: accessoire-title;
}

#accessoire-photo {
    grid-area: accessoire-photo;
}

#accessoire-description {
    grid-area: accessoire-description;
}

#accessoire-synthese-group {
    grid-area: synthese-group;
}

#accessoire-synthese .input-cart {
    grid-area: input-cart;
}

.accessoire-codes {
    margin-left: auto;
    margin-right: auto;
    width: fit-content;
    grid-template-columns: auto 1fr;
    gap: 0.2em 1em;
}

#accessoire-photo img {
    height: auto;
    width: 100%;
}

.linked-accessoire-photo img {
    height: 8em;
    width: 100%;
    object-fit: contain;
}

.linked-accessoire-codes {
    grid-template-columns: auto 1fr;
    gap: 0.2em 1em;
    font-size: 0.8em;
}


@media (min-width: 768px) {

    #accessoire-synthese.no-photo {
        width: auto;
        margin-left: auto;
        margin-right: auto;
        grid-template-columns: auto;
        grid-template-areas:
                "accessoire-title"
                "accessoire-description"
                "synthese-group"
                "input-cart"
        ;
        gap: 1em 0;
    }

    #accessoire-synthese {
        width: auto;
        margin-left: auto;
        margin-right: auto;
        grid-template-columns: repeat(2, 1fr);
        /*grid-template-rows: auto 1fr;*/
        grid-template-areas:
                "accessoire-title accessoire-title"
                "accessoire-description accessoire-description"
                "accessoire-photo synthese-group"
                /*"accessoire-photo article-dispo"*/
                "accessoire-photo input-cart"
        ;
    }

    #accessoire-photo img {
        height: 20em;
        width: 100%;
        object-fit: contain;
    }
}


/**
RECHERCHES
 */

#count-search-papiers {
    background: var(--gp-primary-color);
}

.result-search {
    grid-template-columns: auto 1fr;
    gap: 0 1em;
}


/**
LOGIN
 */

.login-card .card-img {
    height: 30em;
    object-fit: cover;
}

.inactives-images .login-card .card-img {
    height: 14.6em;
}

.login-card .update-button {
    position: absolute;
    right: 1rem;
}

.current-login-image img {
    height: 15rem;
}


/**
ADRESSES DES ENTREPRISES
 */

.card.adresse-entreprise .card-text {
    margin: 0;
}

.card.adresse-entreprise .card-footer a {
    font-size: small;
}


/**
CART
 */

.cart-item {
    grid-template-columns: 1fr;
    grid-template-areas:
            "image"
            "description"
            "reference"
            "quantite"
            "prices"
            "actions"
    ;
}

.cart-item.has-image {
    grid-template-columns: 4fr 6fr;
    grid-template-areas:
            "image description"
            "image reference"
            "image quantite"
            "prices prices"
            "actions actions"
;
}

.cart-item-image {
    grid-area: image;
}

#cart-header .description,
.cart-item-description {
    grid-area: description;
}

#cart-header .reference,
.cart-item-reference {
    grid-area: reference;
}

#cart-header .prices,
.cart-item-prices {
    grid-area: prices;
}

#cart-header .quantite,
.cart-item-quantite {
    grid-area: quantite;
}

#cart-header .actions,
.cart-item-actions {
    grid-area: actions;
}

.cart-item-image img {
    width: 100%;
    max-height: 7rem;
    object-fit: contain;
}

@media (min-width: 768px) {

    .cart-item {
        grid-template-columns: 1fr auto;
        grid-template-areas:
            "description reference"
            "prices actions"
    ;
    }

    .cart-item.has-image {
        grid-template-columns: 9em 1fr auto;
        grid-template-areas:
            "image description description"
            "image reference reference"
            "image prices actions"
    ;
    }

    .cart-item-description {
        flex: auto;
    }

    .display-order .cart-item-prices,
    .display-order .cart-item-actions {
        flex: 45%;
    }
}

@media (min-width: 992px) {

    .commande {
        border: 1px solid lightgrey;
        padding: 0.8em;
        border-radius: 6px;
    }

    #cart-header,
    .cart-item {
        grid-template-columns: 9em 31em 1fr 2fr 1fr;
        grid-template-areas: "description description reference prices actions";
    }

    .cart-item.has-image {
        grid-template-columns: 9em 31em 1fr 2fr 1fr;
        grid-template-areas: "image description reference prices actions";
    }
    
    .display-order .cart-item-image {
        flex: 0 0 5em;
    }

    /*.cart-item-description {*/
    /*    flex: 0 0 33em;*/
    /*}*/

    .display-order .cart-item-reference,
    .display-order #cart-header .reference {
        flex: 0 0 13em;
    }

    .display-order .cart-item-quantite,
    .display-order #cart-header .quantite{
        flex: 0 0 4.5em;
    }

    .display-order .cart-item-prices,
    .display-order #cart-header .prices {
        flex: 0 0 22em;
        gap: 0 0.5em;
    }

    .display-order .cart-item-actions,
    .display-order #cart-header .actions{
        flex: 0 0 15.5em;
    }

}


/**
CART CONVERT POINTS
 */

#convert-points-content .value {
    flex: 0 0 5em;
}

#points-to-use-form .alert.alert-danger {
    margin-bottom: 0;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}



@media (min-width: 768px) {

    #points-to-use-inner {
        grid-template-columns: 1fr auto;
        grid-template-areas:
            "label widgets"
            "message message"
            "error error";
    }

    #points-to-use-group .label {
        grid-area: label;
    }

    #points-to-use-group .widgets {
        grid-area: widgets;
    }

    #points-to-use-group .message {
        grid-area: message;
    }

    #points-to-use-group .form-error {
        grid-area: error;
        place-self: end;
    }
}

@media (min-width: 992px) {

    #convert-points-content {
        grid-template-columns: repeat(2, 1fr);
        grid-template-areas:
            "current-balance current-total-ttc"
            "points-to-use amount-converted"
            "points-acquired new-total-ttc"
            "new-balance ."
            "convert-points-action convert-points-action";
    }

    #current-balance-group {
        grid-area: current-balance;
    }

    #current-total-ttc-group {
        grid-area: current-total-ttc;
    }

    #points-to-use-group {
        grid-area: points-to-use;
    }

    #amount-converted-group {
        grid-area: amount-converted;
    }

    #new-total-ttc-group {
        grid-area: new-total-ttc;
    }

    #points-acquired-group {
        grid-area: points-acquired;
    }

    #new-balance-group {
        grid-area: new-balance;
    }

    .convert-points-action-buttons {
        grid-area: convert-points-action;
    }

    #points-to-use-group .label {
        flex: 1 0 auto;
    }

    #points-to-use-group .form-control {
        font-weight: 0.9em;
        line-height: 1;
    }

    #points-to-use-inner {
        grid-template-columns: auto auto;
    }

    #points-to-use-group .form-error {
        place-self: center;
    }

}

.commande ~ .commande {
    margin-top: 1.2em;
}

.commande .titre-commande {
    font-size: 1.35rem;
    font-variant: all-small-caps;
}

.list-group-item .text,
.list-group-item .text:active,
.list-group-item .text:hover,
.list-group-item .text:focus,
.list-group-item .text:visited {
    /*background: red;*/
}

.handle {
    cursor: move;
}

.noselect {
    -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
    -khtml-user-select: none; /* Konqueror HTML */
    -moz-user-select: none; /* Old versions of Firefox */
    -ms-user-select: none; /* Internet Explorer/Edge */
    user-select: none; /* Non-prefixed version, currently supported by Chrome, Edge, Opera and Firefox */
}

/**
UPDATE CATEGORY
 */
.update-category-image {
    height: 15em;
    width: auto;
    max-width: 100%;
    object-fit: contain;
}

/**
UPDATE SETTINGS
 */

/*.update-settings {*/
/*    grid-template-columns: 1fr 23em 6em repeat(2, auto);*/
/*    gap: 2em;*/
/*    align-items: center;*/
/*}*/

form[name="setting"] {
    height: 100%;
}
.setting-card-body {
    height: 100%;
    display: grid;
    grid-template-rows: repeat(4, auto) 1fr;
    align-content: start;
}

.setting-actif-submit {
    align-self: end;
}

/**
ADMIN PAPIERS
 */

/*form[name="papier"] .form-label {*/
/*    margin-bottom: 0.2rem;*/
/*}*/

form[name="papier"] input[type="text"] {
    min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width)* 2));
    padding: 0.25rem 0.5rem;
    font-size: 0.845rem; /* la valeur initiale est 0.875rem */
    border-radius: var(--bs-border-radius-sm);
}

form[name="papier"] select {
    min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width)* 2));
    padding: 0.25rem 1.7rem 0.25rem 0.5rem;
    font-size: 0.845rem; /* la valeur initiale est 0.875rem */
    border-radius: var(--bs-border-radius-sm);
}

form[name="papier"] .form-check {
    margin: 0;
}

form[name="papier"] .form-check-label {
    font-size: 0.845rem;
}

#siblings-update-papier .list-group-item {
    grid-template-columns: repeat(3, 1fr);
}

#siblings-update-papier .prix-client {
    justify-self: end;
}

#siblings-update-papier .list-group-item div:last-child {
    grid-column: span 3;
}

.card-slide {
    position: relative;
}

.card-slide-image {
    height: 109px;
    object-fit: cover;
}

.card-slide .update-button,
.card-slide .reactivate-button {
}

.slide-current-image {
    width: 100%;
    height: 160px;
    object-fit: cover;
}

@media (min-width: 768px) {
    .card-slide-image {
        height: 174px;
    }
}

@media (min-width: 992px) {
    .card-slide-image {
        height: 189px;
    }

    #sortable-slides .card-slide-image {
        height: 5.5rem;
    }
}

form[name="maintenance_banner"] .alert {
    margin-bottom: 0;
    padding: 0.6rem 2.6rem;
}

/**
SYNTHÈSE ENTREPRISE
 */
.grid-adresses {
    grid-template-areas:
        "label-facturation"
        "adresse-facturation"
        "label-livraison"
        "adresse-livraison";
}

.label-facturation {
    grid-area: label-facturation;
}

.label-livraison {
    grid-area: label-livraison;
}

.adresse-facturation {
    grid-area: adresse-facturation;
}

.adresse-livraison {
    grid-area: adresse-livraison;
}

@media (min-width: 768px) {
    .grid-adresses {
        grid-template-areas:
            "label-facturation label-livraison"
            "adresse-facturation adresse-livraison";
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 992px) {
    .grid-adresses {
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: auto 1fr;
    }
}

#secondary-carousel a {
    height: 10em;
    text-align: center;
}

#secondary-carousel a img {
    height: 100%;
    object-fit: contain;
}

/**
FAVOURITES
 */

.favourite-image {
    height: 8em;
    object-fit: contain;
}


/**
SEO
 */

.seo {
    grid-template-columns: auto 1fr;
    gap: 0 1em;
    /*color: #2ECC71;*/
}


.tableau-grid {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 1em;
}

.tableau-grid .main {
    grid-column: 1 / -1;
}

.tableau-grid .sub {
    grid-column: 2 / 3;
}

.accessoire .content {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 0.5em 1em;
}

/*.unselected-accessoire .content .label {*/
/*    padding: 0.25rem 0.5rem;*/
/*}*/

/*.unselected-accessoire .content .value {*/
/*    padding: 0.5rem 0.25rem 0.5rem 0.5rem;*/
/*}*/

.row-separator {
    grid-column: 1 / -1;
    border-bottom: 1px solid #cccdce;
    height: 0;
}


/*
EDITORIAL
 */
.editorial-post-card img {
    height: 15em;
}

#admin-single-editorial-post img,
#single-editorial-post img,
#update-editorial-post .preview-image img {
    height: 20rem;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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QUEwQjtBQUM5Qjs7QUFFQTtJQUNJLDhCQUE4QjtBQUNsQzs7QUFFQTtJQUNJLDRCQUE0QjtBQUNoQzs7QUFFQTtJQUNJO1FBQ0k7O21EQUUyQztRQUMzQyxxQ0FBcUM7SUFDekM7QUFDSjs7QUFFQTtJQUNJO1FBQ0kscUNBQXFDO1FBQ3JDLDRCQUE0QjtJQUNoQztBQUNKOztBQUVBO0lBQ0ksWUFBWTtJQUNaLGtCQUFrQjtBQUN0Qjs7QUFFQTtJQUNJLFlBQVk7SUFDWixtQkFBbUI7QUFDdkI7O0FBRUE7O0VBRUU7O0FBRUY7SUFDSSxXQUFXO0lBQ1gsbUJBQW1CO0FBQ3ZCOzs7QUFHQTs7RUFFRTs7QUFFRjtJQUNJLCtCQUErQjtJQUMvQixVQUFVO0lBQ1Ysa0JBQWtCO0FBQ3RCOzs7QUFHQTtJQUNJLGFBQWE7SUFDYiw4QkFBOEI7SUFDOUIsUUFBUTtBQUNaOztBQUVBO0lBQ0ksbUJBQW1CO0FBQ3ZCOztBQUVBO0lBQ0ksa0JBQWtCO0FBQ3RCOztBQUVBO0lBQ0ksYUFBYTtJQUNiLCtCQUErQjtJQUMvQixtQkFBbUI7SUFDbkIsY0FBYztBQUNsQjs7QUFFQSwyQ0FBMkM7QUFDM0MsK0JBQStCO0FBQy9CLElBQUk7O0FBRUosMkNBQTJDO0FBQzNDLDZDQUE2QztBQUM3QyxJQUFJOztBQUVKO0lBQ0ksbUJBQW1CO0lBQ25CLGdDQUFnQztJQUNoQyxTQUFTO0FBQ2I7OztBQUdBOztFQUVFO0FBQ0Y7SUFDSSxZQUFZO0FBQ2hCOztBQUVBOzs7SUFHSSxhQUFhO0FBQ2pCLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL21haW4uY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuQ09MT1JTXG4gKi9cblxuOnJvb3Qge1xuICAgIC0tZ3AtcHJpbWFyeS1jb2xvcjogI2JmMzAyNztcbiAgICAtLWVjby1wcmltYXJ5LWNvbG9yOiAjMDBhMzg4O1xufVxuXG4uYmctZ3AtcHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZ3AtcHJpbWFyeS1jb2xvcik7XG59XG5cbi5iZy1lY28tcHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZWNvLXByaW1hcnktY29sb3IpO1xufVxuXG4udGV4dC1ncC1wcmltYXJ5IHtcbiAgICBjb2xvcjogdmFyKC0tZ3AtcHJpbWFyeS1jb2xvcik7XG59XG5cbi50ZXh0LWhpZGRlbiB7XG4gICAgb3BhY2l0eTogMCAhaW1wb3J0YW50O1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLWxpbms6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICNjZmUyZmY7XG59XG5cbi5iZy1ibGFjay0yMCB7XG4gICAgYmFja2dyb3VuZDogcmdiKDAgMCAwIC8gMjAlKTtcbn1cblxuLmhlbHAtcmVkIHtcbiAgICBjb2xvcjogcmVkO1xufVxuXG4vKipcblBPU0lUSU9OU1xuICovXG5cbi5qdXN0aWZ5LXNlbGYtY2VudGVyIHtcbiAgICBqdXN0aWZ5LXNlbGY6IGNlbnRlcjtcbn1cblxuLm9iamVjdC1wb3NpdGlvbi10b3Age1xuICAgIG9iamVjdC1wb3NpdGlvbjogdG9wO1xufVxuXG4ucGFnaW5hdGlvbiB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5ncmlkLXRpdGxlIHtcbiAgICBncmlkLWNvbHVtbjogMSAvIC0xO1xufVxuXG4uZ3JpZC1maWxsIHtcbiAgICBncmlkLWNvbHVtbjogMSAvIC0xO1xufVxuXG4uZC1mbGV4IGgxIHtcbiAgICBtYXJnaW46IDA7XG59XG5cbi5hY3Rpb24tYnV0dG9ucyB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMjtcbn1cblxuLyoqXG5XSURUSFxuICovXG5cbi5pbnB1dC1xdGUge1xuICAgIHdpZHRoOiA1ZW07XG59XG5cbi5saW5rYWJsZS1hY2Nlc3NvaXJlcyAuaW5wdXQtcXRlIHtcbiAgICB3aWR0aDogM2VtO1xufVxuXG4udy00NXB4IHtcbiAgICB3aWR0aDogNDVweDtcbn1cblxuLnctc3RyZXRjaCB7XG4gICAgd2lkdGg6IHN0cmV0Y2ggIWltcG9ydGFudDtcbn1cblxuLyoqXG5IRUlHSFRcbiAqL1xuLm1oLTIwZW0ge1xuICAgIG1heC1oZWlnaHQ6IDIwZW07XG59XG5cbi5taC0xM2VtIHtcbiAgICBtYXgtaGVpZ2h0OiAxM2VtO1xufVxuXG5cbi8qKlxuU0laRVNcbiAqL1xuLnNtYWxsZXIge1xuICAgIGZvbnQtc2l6ZTogMC42NzVlbTtcbn1cblxuLyoqXG5CVVRUT05TXG4gKi9cblxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MuZGlzYWJsZWQge1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIG9wYWNpdHk6IGluaXRpYWwgIWltcG9ydGFudDtcbn1cblxuLmNvbnRlbnQtaGFsZiA+IGRpdixcbi5jb250ZW50LWhhbGYgPiAuYnRuIHtcbiAgICBmbGV4OiAxIDAgNTAlO1xufVxuXG4vKipcblRBQkxFU1xuICovXG4udGFibGUtZml4ZWQge1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG59XG5cbnRkLndvcmQtYnJlYWsge1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbn1cblxuLmZvcm0tbGFiZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5mb3JtLWxhYmVsLnJlcXVpcmVkOjphZnRlciB7XG4gICAgY29udGVudDogXCIgKlwiO1xuICAgIGNvbG9yOiByZWQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTAuMmVtO1xuICAgIHJpZ2h0OiAtMC42ZW07XG4gICAgZm9udC1zaXplOiAxLjZlbTtcbn1cblxuXG5cbi8qKlxuU1RSVUNUVVJFXG4gKi9cblxuaHRtbCxcbmJvZHkge1xuICAgIGhlaWdodDogMTAwdmg7XG59XG5cbmJvZHkge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxMDB2dztcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCg0LCBhdXRvKSAxZnIgYXV0bztcbn1cblxuLnNwYW4tMiB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMjtcbn1cblxuLnNwYW4tMyB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMztcbn1cblxuLyoqXG5GT09URVJcbiAqL1xuXG4uZm9vdGVyLWlubmVyIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbn1cblxuZm9vdGVyIGgyIHtcbiAgICBmb250LXNpemU6IDFyZW07XG59XG5cbmZvb3RlciBwLFxuZm9vdGVyIGEge1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZm9vdGVyLWlubmVyIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIGF1dG8gMWZyO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWFyZWFzOlxuICAgICAgICAgICAgXCJhYm91dCBhYm91dFwiXG4gICAgICAgICAgICBcImNvbnRhY3QgbmV0d29ya1wiXG4gICAgICAgICAgICBcImNvbnRhY3QgbmV3c2xldHRlclwiO1xuICAgICAgICBnYXA6IDFlbTtcbiAgICB9XG5cbiAgICAuYWJvdXQtdXMge1xuICAgICAgICBncmlkLWFyZWE6IGFib3V0O1xuICAgIH1cblxuICAgIC5jb250YWN0LWluZm8ge1xuICAgICAgICBncmlkLWFyZWE6IGNvbnRhY3Q7XG4gICAgfVxuXG4gICAgLnNvY2lhbC1uZXR3b3JrIHtcbiAgICAgICAgZ3JpZC1hcmVhOiBuZXR3b3JrO1xuICAgIH1cblxuICAgIC5uZXdzbGV0dGVyIHtcbiAgICAgICAgZ3JpZC1hcmVhOiBuZXdzbGV0dGVyO1xuICAgIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG5cbiAgICAuZm9vdGVyLWlubmVyIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyZnIgMWZyIDFmcjtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIDFmcjtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczpcbiAgICAgICAgICAgIFwiYWJvdXQgY29udGFjdCBuZXR3b3JrXCJcbiAgICAgICAgICAgIFwiYWJvdXQgY29udGFjdCBuZXdzbGV0dGVyXCI7XG4gICAgICAgIGdhcDogMWVtIDEuNWVtO1xuICAgIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIGZvb3RlciBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIH1cblxuICAgIGZvb3RlciBwLFxuICAgIGZvb3RlciBhIC50ZXh0IHtcbiAgICAgICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgfVxufVxuXG5cbi8qKlxuQ0FSRCBQQVBJRVJcbiAqL1xuXG4uY2FyZC1wYXBpZXItd3JhcHBlciB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBnYXA6IDEuMmVtO1xufVxuXG4uY2FyZC1wYXBpZXIgaDUge1xuICAgIGZvbnQtc2l6ZTogMS4xMHJlbTtcbn1cblxuLmNhcmQtcGFwaWVyIC5jYXJkLXRleHQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byAxZnI7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuXG4gICAgLmNhcmQtcGFwaWVyLXdyYXBwZXIge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgyMmVtLCAxZnIpKTtcbiAgICB9XG59XG5cblxuLyoqXG5DQVJEIEJVUkVBVVRJUVVFXG4gKi9cblxuLmNhcmQtYnVyZWF1dGlxdWUtd3JhcHBlciB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBnYXA6IDEuMmVtO1xufVxuXG4uY2FyZC1idXJlYXV0aXF1ZSBpbWcge1xuICAgIGhlaWdodDogOGVtO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG59XG5cbi5jYXJkLWJ1cmVhdXRpcXVlIGgyIHtcbiAgICBmb250LXNpemU6IDEuMTByZW07XG59XG5cbi5jYXJkLWJ1cmVhdXRpcXVlIC5jYXJkLXRleHQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byAxZnI7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuXG4gICAgLmNhcmQtYnVyZWF1dGlxdWUtd3JhcHBlciB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDIyZW0sIDFmcikpO1xuICAgIH1cbn1cblxuXG4vKipcbkNBUkQgQURSRVNTRVxuICovXG5cbi5hZHJlc3NlLWVudHJlcHJpc2UgLm1ldGEge1xuICAgIGZsZXg6IDA7XG59XG5cbi8qKlxuTkFWQkFSXG4gKi9cbi5uYXZiYXItYnJhbmQgLnNtYWxsLWxvZ28ge1xuICAgIHdpZHRoOiA4LjRlbTtcbn1cblxuLm5hdmJhci1zZWFyY2gge1xuICAgIGZsZXgtYmFzaXM6IDI0ZW07IC8qMjVlbTsqLyAvKjM1ZW07Ki9cblxufVxuXG4jbWFpbi1tZW51IC5uYXZiYXIge1xuICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbn1cblxuI21haW4tbWVudSAubmF2LWxpbmsge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5pbnB1dC1xdGUge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmlucHV0LXF0ZTo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiB2YXIoLS1icy1ncmF5LTUwMCk7XG59XG5cblxuLyoqXG4gICAgUFJPTU9USU9OU1xuICovXG5cbiNwcm9tb3Rpb25zIGFydGljbGUge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczpcbiAgICAgICAgICAgIFwicmVmZXJlbmNlLXdyYXBwZXIgcHJpeC1yZWd1bGFyLXdyYXBwZXIgcHJpeC1wcm9tby13cmFwcGVyXCJcbiAgICAgICAgICAgIFwiZGVzY3JpcHRpb24td3JhcHBlciBkZXNjcmlwdGlvbi13cmFwcGVyIGRlc2NyaXB0aW9uLXdyYXBwZXJcIlxuICAgICAgICAgICAgXCJhY3Rpb24tYnV0dG9ucyBhY3Rpb24tYnV0dG9ucyBhY3Rpb24tYnV0dG9uc1wiO1xufVxuXG4jcHJvbW90aW9ucyAucmVmZXJlbmNlLXdyYXBwZXIge1xuICAgIGdyaWQtYXJlYTogcmVmZXJlbmNlLXdyYXBwZXI7XG59XG5cbiNwcm9tb3Rpb25zIC5wcml4LXJlZ3VsYXItd3JhcHBlciB7XG4gICAgZ3JpZC1hcmVhOiBwcml4LXJlZ3VsYXItd3JhcHBlcjtcbn1cblxuI3Byb21vdGlvbnMgLnByaXgtcHJvbW8td3JhcHBlciB7XG4gICAgZ3JpZC1hcmVhOiBwcml4LXByb21vLXdyYXBwZXI7XG59XG5cbiNwcm9tb3Rpb25zIC5kZXNjcmlwdGlvbi13cmFwcGVyIHtcbiAgICBncmlkLWFyZWE6IGRlc2NyaXB0aW9uLXdyYXBwZXI7XG59XG5cbiNwcm9tb3Rpb25zIC5hY3Rpb24tYnV0dG9ucyB7XG4gICAgZ3JpZC1hcmVhOiBhY3Rpb24tYnV0dG9ucztcbiAgICBqdXN0aWZ5LXNlbGY6IGNlbnRlcjtcbn1cblxuI3Byb21vdGlvbnMgYXJ0aWNsZSB7XG4gICAgYm9yZGVyOiB2YXIoLS1icy1ib3JkZXItd2lkdGgpIHZhcigtLWJzLWJvcmRlci1zdHlsZSkgdmFyKC0tYnMtYm9yZGVyLWNvbG9yKTtcbn1cblxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcblxuICAgICNwcm9tb3Rpb25zIC5pdGVtcy1oZWFkZXIsXG4gICAgI3Byb21vdGlvbnMgYXJ0aWNsZSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogN2VtIDFmciA3ZW0gN2VtIDE5ZW07XG4gICAgfVxuXG4gICAgI3Byb21vdGlvbnMgYXJ0aWNsZSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwicmVmZXJlbmNlLXdyYXBwZXIgZGVzY3JpcHRpb24td3JhcHBlciBwcml4LXJlZ3VsYXItd3JhcHBlciBwcml4LXByb21vLXdyYXBwZXIgYWN0aW9uLWJ1dHRvbnNcIjtcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICB9XG5cbiAgICAjcHJvbW90aW9ucyAuYWN0aW9uLWJ1dHRvbnMge1xuICAgICAgICB3aWR0aDogLXdlYmtpdC1maWxsLWF2YWlsYWJsZTtcbiAgICAgICAganVzdGlmeS1zZWxmOiBzdGFydDtcbiAgICB9XG5cbiAgICAjcHJvbW90aW9ucyBmb3JtIHtcbiAgICAgICAgd2lkdGg6IC13ZWJraXQtZmlsbC1hdmFpbGFibGU7XG4gICAgfVxufVxuXG5cbi8qKlxuQUZGSUNIQUdFIERFUyBQQVBJRVJTXG4gKi9cblxuLnBhcGllci1pbm5lciB7XG4gICAgYm9yZGVyOiB2YXIoLS1icy1ib3JkZXItd2lkdGgpIHZhcigtLWJzLWJvcmRlci1zdHlsZSkgdmFyKC0tYnMtYm9yZGVyLWNvbG9yKTtcbn1cblxuLmNhcmFjdGVyaXN0aXF1ZS13cmFwcGVyIHtcbiAgICBib3JkZXItYm90dG9tOiB2YXIoLS1icy1ib3JkZXItd2lkdGgpIHZhcigtLWJzLWJvcmRlci1zdHlsZSkgdmFyKC0tYnMtYm9yZGVyLWNvbG9yKTtcbn1cblxuLmNhcmFjdGVyaXN0aXF1ZS13cmFwcGVyOm50aC1jaGlsZChldmVuKSB7XG4gICAgYm9yZGVyLWxlZnQ6IHZhcigtLWJzLWJvcmRlci13aWR0aCkgdmFyKC0tYnMtYm9yZGVyLXN0eWxlKSB2YXIoLS1icy1ib3JkZXItY29sb3IpO1xufVxuXG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuXG4gICAgLnBhcGllci1pbm5lciB7XG4gICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgfVxuXG4gICAgLmNhcmFjdGVyaXN0aXF1ZS13cmFwcGVyIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgIH1cblxuICAgIC5jYXJhY3RlcmlzdGlxdWUtd3JhcHBlcjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICB9XG59XG5cblxuLyoqXG5BRkZISUNIQUdFIERFUyBBUlRJQ0xFUyBCVVJFQVVUSVFVRVxuICovXG5cbi5idXJlYXV0aXF1ZS1pdGVtLmNhcmQgLml0ZW0tZmlyc3QtcGhvdG8ge1xuICAgIGhlaWdodDogMTBlbTtcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xufVxuXG4uYnVyZWF1dGlxdWUtaXRlbS5jYXJkIC5jYXJkLXRleHQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byAxZnI7XG4gICAgZ2FwOiAwIDFlbTtcbn1cblxuLmJ1cmVhdXRpcXVlLWl0ZW0uY2FyZCAuY2FyZC10ZXh0IC5sYWJlbCB7XG4gICAgZm9udC1zaXplOiBzbWFsbGVyO1xufVxuXG4uYnVyZWF1dGlxdWUtaXRlbS5jYXJkIC5jYXJkLW1ldGEge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byAxZnI7XG4gICAgZ2FwOiAwLjNlbSAxZW07XG4gICAgZm9udC1zaXplOiBzbWFsbGVyO1xufVxuXG4uYnVyZWF1dGlxdWUtaXRlbSAuYWN0aW9uLWJ1dHRvbnM+YSB7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbn1cblxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcblxuICAgIC5idXJlYXV0aXF1ZS1pdGVtLmNhcmQgLml0ZW0tZmlyc3QtcGhvdG8ge1xuICAgICAgICBoZWlnaHQ6IDEzZW07XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICB9XG5cbn1cblxuXG4vKipcbkFGRklDSEFHRSBEJ1VOIFNFVUwgQVJUSUNMRSBCVVJFQVVUSVFVRVxuICovXG5cbiNhcnRpY2xlLXN5bnRoZXNlIHtcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImFydGljbGUtdGl0bGVcIiBcImFydGljbGUtY2Fyb3VzZWxcIiBcInN5bnRoZXNlLWdyb3VwXCIgXCJhcnRpY2xlLWRpc3BvXCIgXCJpbnB1dC1jYXJ0XCI7XG4gICAgYWxpZ24taXRlbXM6IHN0YXJ0O1xufVxuXG4uYXJ0aWNsZS10aXRsZSB7XG4gICAgZ3JpZC1hcmVhOiBhcnRpY2xlLXRpdGxlO1xufVxuXG4uc3ludGhlc2UtZ3JvdXAge1xuICAgIGdyaWQtYXJlYTogc3ludGhlc2UtZ3JvdXBcbn1cblxuI2l0ZW0tY2Fyb3VzZWwge1xuICAgIGdyaWQtYXJlYTogYXJ0aWNsZS1jYXJvdXNlbDtcbn1cblxuLmFydGljbGUtY29kZXMge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIDFmcjtcbiAgICBnYXA6IDAuMmVtIDFlbTtcbn1cblxuLmRpc3BvIHtcbiAgICBncmlkLWFyZWE6IGFydGljbGUtZGlzcG87XG59XG5cbi5pbnB1dC1jYXJ0IHtcbiAgICBncmlkLWFyZWE6IGlucHV0LWNhcnQ7XG59XG5cbi5hcnRpY2xlLXNwZWNpZmljYXRpb25zLWNvbnRlbnQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICBnYXA6IDAuNGVtIDAuNWVtO1xufVxuXG4uYXJ0aWNsZS1wZGZzIGEge1xuICAgIHdpZHRoOiBmaXQtY29udGVudDtcbn1cblxuLmFydGljbGUtc2libGluZyBpbWcge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAycmVtKTtcbiAgICBtYXJnaW46IDFyZW07XG4gICAgaGVpZ2h0OiAxNWVtO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuXG4gICAgI2FydGljbGUtc3ludGhlc2Uge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWFyZWFzOlxuICAgICAgICAgICAgICAgIFwiYXJ0aWNsZS1jYXJvdXNlbCBhcnRpY2xlLXRpdGxlXCJcbiAgICAgICAgICAgICAgICBcImFydGljbGUtY2Fyb3VzZWwgc3ludGhlc2UtZ3JvdXBcIlxuICAgICAgICAgICAgICAgIFwiYXJ0aWNsZS1jYXJvdXNlbCBhcnRpY2xlLWRpc3BvXCJcbiAgICAgICAgICAgICAgICBcImFydGljbGUtY2Fyb3VzZWwgaW5wdXQtY2FydFwiO1xuICAgIH1cblxuICAgIC5jYXJvdXNlbC1pdGVtIGltZyB7XG4gICAgICAgIGhlaWdodDogMjJyZW07XG4gICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcblxuICAgIC5jYXJvdXNlbC1pdGVtIGltZyB7XG4gICAgICAgIGhlaWdodDogMjVyZW07XG4gICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgIH1cblxuICAgIC5hcnRpY2xlLWRldGFpbHMge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDIwcmVtIDFmcjtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczpcbiAgICAgICAgICAgICAgICBcIi4gZGV0YWlscy10aXRsZVwiXG4gICAgICAgICAgICAgICAgXCIuIGFydGljbGUtcGRmc1wiXG4gICAgICAgICAgICAgICAgXCJkZXNjcmlwdGlvbi10aXRsZSBhcnRpY2xlLWRlc2NyaXB0aW9uLWNvbnRlbnRcIlxuICAgICAgICAgICAgICAgIFwic3BlY2lmaWNhdGlvbnMtdGl0bGUgYXJ0aWNsZS1zcGVjaWZpY2F0aW9ucy1jb250ZW50XCI7XG4gICAgICAgIGdhcDogMS4zZW0gMDtcbiAgICB9XG5cbiAgICAuYXJ0aWNsZS1kZXRhaWxzIGgyIHtcbiAgICAgICAgZ3JpZC1hcmVhOiBkZXRhaWxzLXRpdGxlO1xuICAgIH1cblxuICAgIC5hcnRpY2xlLXBkZnMge1xuICAgICAgICBncmlkLWFyZWE6IGFydGljbGUtcGRmcztcbiAgICB9XG5cbiAgICAuZGVzY3JpcHRpb24tdGl0bGUge1xuICAgICAgICBncmlkLWFyZWE6IGRlc2NyaXB0aW9uLXRpdGxlO1xuICAgIH1cblxuICAgIC5hcnRpY2xlLWRlc2NyaXB0aW9uLWNvbnRlbnQge1xuICAgICAgICBncmlkLWFyZWE6IGFydGljbGUtZGVzY3JpcHRpb24tY29udGVudDtcbiAgICB9XG5cbiAgICAuc3BlY2lmaWNhdGlvbnMtdGl0bGUge1xuICAgICAgICBncmlkLWFyZWE6IHNwZWNpZmljYXRpb25zLXRpdGxlO1xuICAgIH1cblxuICAgIC5hcnRpY2xlLXNwZWNpZmljYXRpb25zLWNvbnRlbnQge1xuICAgICAgICBncmlkLWFyZWE6IGFydGljbGUtc3BlY2lmaWNhdGlvbnMtY29udGVudDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIDFmcjtcbiAgICAgICAgZ2FwOiAwIDFlbTtcbiAgICB9XG5cbn1cblxuXG5cbi8qKlxuQUNDRVNTT0lSRVNcbiAqL1xuXG4jYWN0aXZlLWNhdGVnb3JpZXMgLmNhcmQge1xuICAgIC8qaGVpZ2h0OiAxMGVtOyovXG59XG5cbiNhY3RpdmUtY2F0ZWdvcmllcyAuY2FyZCBpbWcge1xuICAgIGhlaWdodDogOS44ZW07XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbn1cblxuLmFjY2Vzc29pcmUtaW5uZXIge1xuICAgIC8qYm9yZGVyOiB2YXIoLS1icy1ib3JkZXItd2lkdGgpIHZhcigtLWJzLWJvcmRlci1zdHlsZSkgdmFyKC0tYnMtYm9yZGVyLWNvbG9yKTsqL1xuICAgIGdhcDogMC4yZW07XG59XG5cbi5hY2Nlc3NvaXJlLWlubmVyIC5jYXJhY3RlcmlzdGlxdWUtd3JhcHBlciB7XG4gICAgZmxleDogMCAxIDQ1JTtcbiAgICBib3JkZXI6IHZhcigtLWJzLWJvcmRlci13aWR0aCkgdmFyKC0tYnMtYm9yZGVyLXN0eWxlKSB2YXIoLS1icy1ib3JkZXItY29sb3IpO1xufVxuXG4uYWNjZXNzb2lyZS1pbWFnZS5jYXJkLWltZy10b3Age1xuICAgIGhlaWdodDogMTNyZW07XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbn1cblxuLmFjY2Vzc29pcmUtbm8taW1hZ2UuY2FyZC1pbWctdG9wIHtcbiAgICBoZWlnaHQ6IDEzcmVtO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG59XG5cbi5hY2Nlc3NvaXJlcy1kZXNjcmlwdGlvbiB7XG4gICAgaGVpZ2h0OiAzLjlyZW07XG59XG5cbi5jcmVhdGUtYWNjZXNzb3J5LWltYWdlIHtcbiAgICBoZWlnaHQ6IDZyZW07XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmRlc2NyaXB0aW9uIHtcbiAgICBmb250LXNpemU6IDAuOWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5hY2Nlc3NvaXJlLWNhdGVnb3J5IC5hY2Nlc3NvaXJlLWltYWdlIHtcbiAgICAgICAgd2lkdGg6IDE2cmVtO1xuICAgIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgLmFjY2Vzc29pcmUtY2F0ZWdvcnkgLmFjY2Vzc29pcmUtaW1hZ2Uge1xuICAgICAgICB3aWR0aDogMTlyZW07XG4gICAgfVxuXG4gICAgLmFjY2Vzc29pcmUtaW5uZXIge1xuICAgICAgICBib3JkZXI6IHZhcigtLWJzLWJvcmRlci13aWR0aCkgdmFyKC0tYnMtYm9yZGVyLXN0eWxlKSB2YXIoLS1icy1ib3JkZXItY29sb3IpO1xuICAgIH1cblxuICAgIC5hY2Nlc3NvaXJlLWlubmVyIC5jYXJhY3RlcmlzdGlxdWUtd3JhcHBlciB7XG4gICAgICAgIGZsZXg6IHVuc2V0O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgfVxuXG4gICAgI2FjY2Vzc29pcmVzIGZvcm0ge1xuICAgICAgICB3aWR0aDogLXdlYmtpdC1maWxsLWF2YWlsYWJsZTtcbiAgICB9XG5cbiAgICAjYWNjZXNzb2lyZXMgZm9ybVtuYW1lPSdhZGRfaXRlbV90b19jYXJ0X2Zvcm0nXSB7XG4gICAgICAgIHdpZHRoOiAtd2Via2l0LWZpdC1jb250ZW50O1xuICAgIH1cbn1cblxuXG4vKipcblNJTkdMRSBBQ0NFU1NPSVJFXG4gKi9cblxuI2FjY2Vzc29pcmUtc3ludGhlc2Uge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0bztcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImFjY2Vzc29pcmUtdGl0bGVcIiBcImFjY2Vzc29pcmUtcGhvdG9cIiBcImFjY2Vzc29pcmUtZGVzY3JpcHRpb25cIiBcInN5bnRoZXNlLWdyb3VwXCIgXCJpbnB1dC1jYXJ0XCI7XG4gICAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICAgIGdhcDogMWVtIDNlbTtcbiAgICBqdXN0aWZ5LWl0ZW1zOiBjZW50ZXI7XG59XG5cbiNhY2Nlc3NvaXJlLXN5bnRoZXNlLm5vLXBob3RvIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImFjY2Vzc29pcmUtdGl0bGVcIiBcImFjY2Vzc29pcmUtZGVzY3JpcHRpb25cIiBcInN5bnRoZXNlLWdyb3VwXCIgXCJpbnB1dC1jYXJ0XCI7XG4gICAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICAgIGdhcDogMWVtIDA7XG4gICAganVzdGlmeS1pdGVtczogY2VudGVyO1xufVxuXG4jYWNjZXNzb2lyZS10aXRsZSB7XG4gICAgZ3JpZC1hcmVhOiBhY2Nlc3NvaXJlLXRpdGxlO1xufVxuXG4jYWNjZXNzb2lyZS1waG90byB7XG4gICAgZ3JpZC1hcmVhOiBhY2Nlc3NvaXJlLXBob3RvO1xufVxuXG4jYWNjZXNzb2lyZS1kZXNjcmlwdGlvbiB7XG4gICAgZ3JpZC1hcmVhOiBhY2Nlc3NvaXJlLWRlc2NyaXB0aW9uO1xufVxuXG4jYWNjZXNzb2lyZS1zeW50aGVzZS1ncm91cCB7XG4gICAgZ3JpZC1hcmVhOiBzeW50aGVzZS1ncm91cDtcbn1cblxuI2FjY2Vzc29pcmUtc3ludGhlc2UgLmlucHV0LWNhcnQge1xuICAgIGdyaWQtYXJlYTogaW5wdXQtY2FydDtcbn1cblxuLmFjY2Vzc29pcmUtY29kZXMge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIDFmcjtcbiAgICBnYXA6IDAuMmVtIDFlbTtcbn1cblxuI2FjY2Vzc29pcmUtcGhvdG8gaW1nIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5saW5rZWQtYWNjZXNzb2lyZS1waG90byBpbWcge1xuICAgIGhlaWdodDogOGVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG59XG5cbi5saW5rZWQtYWNjZXNzb2lyZS1jb2RlcyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIDFmcjtcbiAgICBnYXA6IDAuMmVtIDFlbTtcbiAgICBmb250LXNpemU6IDAuOGVtO1xufVxuXG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuXG4gICAgI2FjY2Vzc29pcmUtc3ludGhlc2Uubm8tcGhvdG8ge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWFyZWFzOlxuICAgICAgICAgICAgICAgIFwiYWNjZXNzb2lyZS10aXRsZVwiXG4gICAgICAgICAgICAgICAgXCJhY2Nlc3NvaXJlLWRlc2NyaXB0aW9uXCJcbiAgICAgICAgICAgICAgICBcInN5bnRoZXNlLWdyb3VwXCJcbiAgICAgICAgICAgICAgICBcImlucHV0LWNhcnRcIlxuICAgICAgICA7XG4gICAgICAgIGdhcDogMWVtIDA7XG4gICAgfVxuXG4gICAgI2FjY2Vzc29pcmUtc3ludGhlc2Uge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgICAgLypncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gMWZyOyovXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgICAgICAgICAgICAgXCJhY2Nlc3NvaXJlLXRpdGxlIGFjY2Vzc29pcmUtdGl0bGVcIlxuICAgICAgICAgICAgICAgIFwiYWNjZXNzb2lyZS1kZXNjcmlwdGlvbiBhY2Nlc3NvaXJlLWRlc2NyaXB0aW9uXCJcbiAgICAgICAgICAgICAgICBcImFjY2Vzc29pcmUtcGhvdG8gc3ludGhlc2UtZ3JvdXBcIlxuICAgICAgICAgICAgICAgIC8qXCJhY2Nlc3NvaXJlLXBob3RvIGFydGljbGUtZGlzcG9cIiovXG4gICAgICAgICAgICAgICAgXCJhY2Nlc3NvaXJlLXBob3RvIGlucHV0LWNhcnRcIlxuICAgICAgICA7XG4gICAgfVxuXG4gICAgI2FjY2Vzc29pcmUtcGhvdG8gaW1nIHtcbiAgICAgICAgaGVpZ2h0OiAyMGVtO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICB9XG59XG5cblxuLyoqXG5SRUNIRVJDSEVTXG4gKi9cblxuI2NvdW50LXNlYXJjaC1wYXBpZXJzIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncC1wcmltYXJ5LWNvbG9yKTtcbn1cblxuLnJlc3VsdC1zZWFyY2gge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byAxZnI7XG4gICAgZ2FwOiAwIDFlbTtcbn1cblxuXG4vKipcbkxPR0lOXG4gKi9cblxuLmxvZ2luLWNhcmQgLmNhcmQtaW1nIHtcbiAgICBoZWlnaHQ6IDMwZW07XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbi5pbmFjdGl2ZXMtaW1hZ2VzIC5sb2dpbi1jYXJkIC5jYXJkLWltZyB7XG4gICAgaGVpZ2h0OiAxNC42ZW07XG59XG5cbi5sb2dpbi1jYXJkIC51cGRhdGUtYnV0dG9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDFyZW07XG59XG5cbi5jdXJyZW50LWxvZ2luLWltYWdlIGltZyB7XG4gICAgaGVpZ2h0OiAxNXJlbTtcbn1cblxuXG4vKipcbkFEUkVTU0VTIERFUyBFTlRSRVBSSVNFU1xuICovXG5cbi5jYXJkLmFkcmVzc2UtZW50cmVwcmlzZSAuY2FyZC10ZXh0IHtcbiAgICBtYXJnaW46IDA7XG59XG5cbi5jYXJkLmFkcmVzc2UtZW50cmVwcmlzZSAuY2FyZC1mb290ZXIgYSB7XG4gICAgZm9udC1zaXplOiBzbWFsbDtcbn1cblxuXG4vKipcbkNBUlRcbiAqL1xuXG4uY2FydC1pdGVtIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOlxuICAgICAgICAgICAgXCJpbWFnZVwiXG4gICAgICAgICAgICBcImRlc2NyaXB0aW9uXCJcbiAgICAgICAgICAgIFwicmVmZXJlbmNlXCJcbiAgICAgICAgICAgIFwicXVhbnRpdGVcIlxuICAgICAgICAgICAgXCJwcmljZXNcIlxuICAgICAgICAgICAgXCJhY3Rpb25zXCJcbiAgICA7XG59XG5cbi5jYXJ0LWl0ZW0uaGFzLWltYWdlIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDRmciA2ZnI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczpcbiAgICAgICAgICAgIFwiaW1hZ2UgZGVzY3JpcHRpb25cIlxuICAgICAgICAgICAgXCJpbWFnZSByZWZlcmVuY2VcIlxuICAgICAgICAgICAgXCJpbWFnZSBxdWFudGl0ZVwiXG4gICAgICAgICAgICBcInByaWNlcyBwcmljZXNcIlxuICAgICAgICAgICAgXCJhY3Rpb25zIGFjdGlvbnNcIlxuO1xufVxuXG4uY2FydC1pdGVtLWltYWdlIHtcbiAgICBncmlkLWFyZWE6IGltYWdlO1xufVxuXG4jY2FydC1oZWFkZXIgLmRlc2NyaXB0aW9uLFxuLmNhcnQtaXRlbS1kZXNjcmlwdGlvbiB7XG4gICAgZ3JpZC1hcmVhOiBkZXNjcmlwdGlvbjtcbn1cblxuI2NhcnQtaGVhZGVyIC5yZWZlcmVuY2UsXG4uY2FydC1pdGVtLXJlZmVyZW5jZSB7XG4gICAgZ3JpZC1hcmVhOiByZWZlcmVuY2U7XG59XG5cbiNjYXJ0LWhlYWRlciAucHJpY2VzLFxuLmNhcnQtaXRlbS1wcmljZXMge1xuICAgIGdyaWQtYXJlYTogcHJpY2VzO1xufVxuXG4jY2FydC1oZWFkZXIgLnF1YW50aXRlLFxuLmNhcnQtaXRlbS1xdWFudGl0ZSB7XG4gICAgZ3JpZC1hcmVhOiBxdWFudGl0ZTtcbn1cblxuI2NhcnQtaGVhZGVyIC5hY3Rpb25zLFxuLmNhcnQtaXRlbS1hY3Rpb25zIHtcbiAgICBncmlkLWFyZWE6IGFjdGlvbnM7XG59XG5cbi5jYXJ0LWl0ZW0taW1hZ2UgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiA3cmVtO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuXG4gICAgLmNhcnQtaXRlbSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIGF1dG87XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgICAgICAgICBcImRlc2NyaXB0aW9uIHJlZmVyZW5jZVwiXG4gICAgICAgICAgICBcInByaWNlcyBhY3Rpb25zXCJcbiAgICA7XG4gICAgfVxuXG4gICAgLmNhcnQtaXRlbS5oYXMtaW1hZ2Uge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDllbSAxZnIgYXV0bztcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczpcbiAgICAgICAgICAgIFwiaW1hZ2UgZGVzY3JpcHRpb24gZGVzY3JpcHRpb25cIlxuICAgICAgICAgICAgXCJpbWFnZSByZWZlcmVuY2UgcmVmZXJlbmNlXCJcbiAgICAgICAgICAgIFwiaW1hZ2UgcHJpY2VzIGFjdGlvbnNcIlxuICAgIDtcbiAgICB9XG5cbiAgICAuY2FydC1pdGVtLWRlc2NyaXB0aW9uIHtcbiAgICAgICAgZmxleDogYXV0bztcbiAgICB9XG5cbiAgICAuZGlzcGxheS1vcmRlciAuY2FydC1pdGVtLXByaWNlcyxcbiAgICAuZGlzcGxheS1vcmRlciAuY2FydC1pdGVtLWFjdGlvbnMge1xuICAgICAgICBmbGV4OiA0NSU7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcblxuICAgIC5jb21tYW5kZSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGxpZ2h0Z3JleTtcbiAgICAgICAgcGFkZGluZzogMC44ZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICB9XG5cbiAgICAjY2FydC1oZWFkZXIsXG4gICAgLmNhcnQtaXRlbSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogOWVtIDMxZW0gMWZyIDJmciAxZnI7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwiZGVzY3JpcHRpb24gZGVzY3JpcHRpb24gcmVmZXJlbmNlIHByaWNlcyBhY3Rpb25zXCI7XG4gICAgfVxuXG4gICAgLmNhcnQtaXRlbS5oYXMtaW1hZ2Uge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDllbSAzMWVtIDFmciAyZnIgMWZyO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImltYWdlIGRlc2NyaXB0aW9uIHJlZmVyZW5jZSBwcmljZXMgYWN0aW9uc1wiO1xuICAgIH1cbiAgICBcbiAgICAuZGlzcGxheS1vcmRlciAuY2FydC1pdGVtLWltYWdlIHtcbiAgICAgICAgZmxleDogMCAwIDVlbTtcbiAgICB9XG5cbiAgICAvKi5jYXJ0LWl0ZW0tZGVzY3JpcHRpb24geyovXG4gICAgLyogICAgZmxleDogMCAwIDMzZW07Ki9cbiAgICAvKn0qL1xuXG4gICAgLmRpc3BsYXktb3JkZXIgLmNhcnQtaXRlbS1yZWZlcmVuY2UsXG4gICAgLmRpc3BsYXktb3JkZXIgI2NhcnQtaGVhZGVyIC5yZWZlcmVuY2Uge1xuICAgICAgICBmbGV4OiAwIDAgMTNlbTtcbiAgICB9XG5cbiAgICAuZGlzcGxheS1vcmRlciAuY2FydC1pdGVtLXF1YW50aXRlLFxuICAgIC5kaXNwbGF5LW9yZGVyICNjYXJ0LWhlYWRlciAucXVhbnRpdGV7XG4gICAgICAgIGZsZXg6IDAgMCA0LjVlbTtcbiAgICB9XG5cbiAgICAuZGlzcGxheS1vcmRlciAuY2FydC1pdGVtLXByaWNlcyxcbiAgICAuZGlzcGxheS1vcmRlciAjY2FydC1oZWFkZXIgLnByaWNlcyB7XG4gICAgICAgIGZsZXg6IDAgMCAyMmVtO1xuICAgICAgICBnYXA6IDAgMC41ZW07XG4gICAgfVxuXG4gICAgLmRpc3BsYXktb3JkZXIgLmNhcnQtaXRlbS1hY3Rpb25zLFxuICAgIC5kaXNwbGF5LW9yZGVyICNjYXJ0LWhlYWRlciAuYWN0aW9uc3tcbiAgICAgICAgZmxleDogMCAwIDE1LjVlbTtcbiAgICB9XG5cbn1cblxuXG4vKipcbkNBUlQgQ09OVkVSVCBQT0lOVFNcbiAqL1xuXG4jY29udmVydC1wb2ludHMtY29udGVudCAudmFsdWUge1xuICAgIGZsZXg6IDAgMCA1ZW07XG59XG5cbiNwb2ludHMtdG8tdXNlLWZvcm0gLmFsZXJ0LmFsZXJ0LWRhbmdlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG59XG5cblxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcblxuICAgICNwb2ludHMtdG8tdXNlLWlubmVyIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgYXV0bztcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczpcbiAgICAgICAgICAgIFwibGFiZWwgd2lkZ2V0c1wiXG4gICAgICAgICAgICBcIm1lc3NhZ2UgbWVzc2FnZVwiXG4gICAgICAgICAgICBcImVycm9yIGVycm9yXCI7XG4gICAgfVxuXG4gICAgI3BvaW50cy10by11c2UtZ3JvdXAgLmxhYmVsIHtcbiAgICAgICAgZ3JpZC1hcmVhOiBsYWJlbDtcbiAgICB9XG5cbiAgICAjcG9pbnRzLXRvLXVzZS1ncm91cCAud2lkZ2V0cyB7XG4gICAgICAgIGdyaWQtYXJlYTogd2lkZ2V0cztcbiAgICB9XG5cbiAgICAjcG9pbnRzLXRvLXVzZS1ncm91cCAubWVzc2FnZSB7XG4gICAgICAgIGdyaWQtYXJlYTogbWVzc2FnZTtcbiAgICB9XG5cbiAgICAjcG9pbnRzLXRvLXVzZS1ncm91cCAuZm9ybS1lcnJvciB7XG4gICAgICAgIGdyaWQtYXJlYTogZXJyb3I7XG4gICAgICAgIHBsYWNlLXNlbGY6IGVuZDtcbiAgICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuXG4gICAgI2NvbnZlcnQtcG9pbnRzLWNvbnRlbnQge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWFyZWFzOlxuICAgICAgICAgICAgXCJjdXJyZW50LWJhbGFuY2UgY3VycmVudC10b3RhbC10dGNcIlxuICAgICAgICAgICAgXCJwb2ludHMtdG8tdXNlIGFtb3VudC1jb252ZXJ0ZWRcIlxuICAgICAgICAgICAgXCJwb2ludHMtYWNxdWlyZWQgbmV3LXRvdGFsLXR0Y1wiXG4gICAgICAgICAgICBcIm5ldy1iYWxhbmNlIC5cIlxuICAgICAgICAgICAgXCJjb252ZXJ0LXBvaW50cy1hY3Rpb24gY29udmVydC1wb2ludHMtYWN0aW9uXCI7XG4gICAgfVxuXG4gICAgI2N1cnJlbnQtYmFsYW5jZS1ncm91cCB7XG4gICAgICAgIGdyaWQtYXJlYTogY3VycmVudC1iYWxhbmNlO1xuICAgIH1cblxuICAgICNjdXJyZW50LXRvdGFsLXR0Yy1ncm91cCB7XG4gICAgICAgIGdyaWQtYXJlYTogY3VycmVudC10b3RhbC10dGM7XG4gICAgfVxuXG4gICAgI3BvaW50cy10by11c2UtZ3JvdXAge1xuICAgICAgICBncmlkLWFyZWE6IHBvaW50cy10by11c2U7XG4gICAgfVxuXG4gICAgI2Ftb3VudC1jb252ZXJ0ZWQtZ3JvdXAge1xuICAgICAgICBncmlkLWFyZWE6IGFtb3VudC1jb252ZXJ0ZWQ7XG4gICAgfVxuXG4gICAgI25ldy10b3RhbC10dGMtZ3JvdXAge1xuICAgICAgICBncmlkLWFyZWE6IG5ldy10b3RhbC10dGM7XG4gICAgfVxuXG4gICAgI3BvaW50cy1hY3F1aXJlZC1ncm91cCB7XG4gICAgICAgIGdyaWQtYXJlYTogcG9pbnRzLWFjcXVpcmVkO1xuICAgIH1cblxuICAgICNuZXctYmFsYW5jZS1ncm91cCB7XG4gICAgICAgIGdyaWQtYXJlYTogbmV3LWJhbGFuY2U7XG4gICAgfVxuXG4gICAgLmNvbnZlcnQtcG9pbnRzLWFjdGlvbi1idXR0b25zIHtcbiAgICAgICAgZ3JpZC1hcmVhOiBjb252ZXJ0LXBvaW50cy1hY3Rpb247XG4gICAgfVxuXG4gICAgI3BvaW50cy10by11c2UtZ3JvdXAgLmxhYmVsIHtcbiAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgfVxuXG4gICAgI3BvaW50cy10by11c2UtZ3JvdXAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAwLjllbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuXG4gICAgI3BvaW50cy10by11c2UtaW5uZXIge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0bztcbiAgICB9XG5cbiAgICAjcG9pbnRzLXRvLXVzZS1ncm91cCAuZm9ybS1lcnJvciB7XG4gICAgICAgIHBsYWNlLXNlbGY6IGNlbnRlcjtcbiAgICB9XG5cbn1cblxuLmNvbW1hbmRlIH4gLmNvbW1hbmRlIHtcbiAgICBtYXJnaW4tdG9wOiAxLjJlbTtcbn1cblxuLmNvbW1hbmRlIC50aXRyZS1jb21tYW5kZSB7XG4gICAgZm9udC1zaXplOiAxLjM1cmVtO1xuICAgIGZvbnQtdmFyaWFudDogYWxsLXNtYWxsLWNhcHM7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0gLnRleHQsXG4ubGlzdC1ncm91cC1pdGVtIC50ZXh0OmFjdGl2ZSxcbi5saXN0LWdyb3VwLWl0ZW0gLnRleHQ6aG92ZXIsXG4ubGlzdC1ncm91cC1pdGVtIC50ZXh0OmZvY3VzLFxuLmxpc3QtZ3JvdXAtaXRlbSAudGV4dDp2aXNpdGVkIHtcbiAgICAvKmJhY2tncm91bmQ6IHJlZDsqL1xufVxuXG4uaGFuZGxlIHtcbiAgICBjdXJzb3I6IG1vdmU7XG59XG5cbi5ub3NlbGVjdCB7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lOyAvKiBpT1MgU2FmYXJpICovXG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsgLyogU2FmYXJpICovXG4gICAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lOyAvKiBLb25xdWVyb3IgSFRNTCAqL1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7IC8qIE9sZCB2ZXJzaW9ucyBvZiBGaXJlZm94ICovXG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lOyAvKiBJbnRlcm5ldCBFeHBsb3Jlci9FZGdlICovXG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7IC8qIE5vbi1wcmVmaXhlZCB2ZXJzaW9uLCBjdXJyZW50bHkgc3VwcG9ydGVkIGJ5IENocm9tZSwgRWRnZSwgT3BlcmEgYW5kIEZpcmVmb3ggKi9cbn1cblxuLyoqXG5VUERBVEUgQ0FURUdPUllcbiAqL1xuLnVwZGF0ZS1jYXRlZ29yeS1pbWFnZSB7XG4gICAgaGVpZ2h0OiAxNWVtO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xufVxuXG4vKipcblVQREFURSBTRVRUSU5HU1xuICovXG5cbi8qLnVwZGF0ZS1zZXR0aW5ncyB7Ki9cbi8qICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDIzZW0gNmVtIHJlcGVhdCgyLCBhdXRvKTsqL1xuLyogICAgZ2FwOiAyZW07Ki9cbi8qICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7Ki9cbi8qfSovXG5cbmZvcm1bbmFtZT1cInNldHRpbmdcIl0ge1xuICAgIGhlaWdodDogMTAwJTtcbn1cbi5zZXR0aW5nLWNhcmQtYm9keSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoNCwgYXV0bykgMWZyO1xuICAgIGFsaWduLWNvbnRlbnQ6IHN0YXJ0O1xufVxuXG4uc2V0dGluZy1hY3RpZi1zdWJtaXQge1xuICAgIGFsaWduLXNlbGY6IGVuZDtcbn1cblxuLyoqXG5BRE1JTiBQQVBJRVJTXG4gKi9cblxuLypmb3JtW25hbWU9XCJwYXBpZXJcIl0gLmZvcm0tbGFiZWwgeyovXG4vKiAgICBtYXJnaW4tYm90dG9tOiAwLjJyZW07Ki9cbi8qfSovXG5cbmZvcm1bbmFtZT1cInBhcGllclwiXSBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgbWluLWhlaWdodDogY2FsYygxLjVlbSArIDAuNXJlbSArIGNhbGModmFyKC0tYnMtYm9yZGVyLXdpZHRoKSogMikpO1xuICAgIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICAgIGZvbnQtc2l6ZTogMC44NDVyZW07IC8qIGxhIHZhbGV1ciBpbml0aWFsZSBlc3QgMC44NzVyZW0gKi9cbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuZm9ybVtuYW1lPVwicGFwaWVyXCJdIHNlbGVjdCB7XG4gICAgbWluLWhlaWdodDogY2FsYygxLjVlbSArIDAuNXJlbSArIGNhbGModmFyKC0tYnMtYm9yZGVyLXdpZHRoKSogMikpO1xuICAgIHBhZGRpbmc6IDAuMjVyZW0gMS43cmVtIDAuMjVyZW0gMC41cmVtO1xuICAgIGZvbnQtc2l6ZTogMC44NDVyZW07IC8qIGxhIHZhbGV1ciBpbml0aWFsZSBlc3QgMC44NzVyZW0gKi9cbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1icy1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuZm9ybVtuYW1lPVwicGFwaWVyXCJdIC5mb3JtLWNoZWNrIHtcbiAgICBtYXJnaW46IDA7XG59XG5cbmZvcm1bbmFtZT1cInBhcGllclwiXSAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgZm9udC1zaXplOiAwLjg0NXJlbTtcbn1cblxuI3NpYmxpbmdzLXVwZGF0ZS1wYXBpZXIgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbn1cblxuI3NpYmxpbmdzLXVwZGF0ZS1wYXBpZXIgLnByaXgtY2xpZW50IHtcbiAgICBqdXN0aWZ5LXNlbGY6IGVuZDtcbn1cblxuI3NpYmxpbmdzLXVwZGF0ZS1wYXBpZXIgLmxpc3QtZ3JvdXAtaXRlbSBkaXY6bGFzdC1jaGlsZCB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMztcbn1cblxuLmNhcmQtc2xpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNhcmQtc2xpZGUtaW1hZ2Uge1xuICAgIGhlaWdodDogMTA5cHg7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbi5jYXJkLXNsaWRlIC51cGRhdGUtYnV0dG9uLFxuLmNhcmQtc2xpZGUgLnJlYWN0aXZhdGUtYnV0dG9uIHtcbn1cblxuLnNsaWRlLWN1cnJlbnQtaW1hZ2Uge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTYwcHg7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5jYXJkLXNsaWRlLWltYWdlIHtcbiAgICAgICAgaGVpZ2h0OiAxNzRweDtcbiAgICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC5jYXJkLXNsaWRlLWltYWdlIHtcbiAgICAgICAgaGVpZ2h0OiAxODlweDtcbiAgICB9XG5cbiAgICAjc29ydGFibGUtc2xpZGVzIC5jYXJkLXNsaWRlLWltYWdlIHtcbiAgICAgICAgaGVpZ2h0OiA1LjVyZW07XG4gICAgfVxufVxuXG5mb3JtW25hbWU9XCJtYWludGVuYW5jZV9iYW5uZXJcIl0gLmFsZXJ0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IDAuNnJlbSAyLjZyZW07XG59XG5cbi8qKlxuU1lOVEjDiFNFIEVOVFJFUFJJU0VcbiAqL1xuLmdyaWQtYWRyZXNzZXMge1xuICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgICAgIFwibGFiZWwtZmFjdHVyYXRpb25cIlxuICAgICAgICBcImFkcmVzc2UtZmFjdHVyYXRpb25cIlxuICAgICAgICBcImxhYmVsLWxpdnJhaXNvblwiXG4gICAgICAgIFwiYWRyZXNzZS1saXZyYWlzb25cIjtcbn1cblxuLmxhYmVsLWZhY3R1cmF0aW9uIHtcbiAgICBncmlkLWFyZWE6IGxhYmVsLWZhY3R1cmF0aW9uO1xufVxuXG4ubGFiZWwtbGl2cmFpc29uIHtcbiAgICBncmlkLWFyZWE6IGxhYmVsLWxpdnJhaXNvbjtcbn1cblxuLmFkcmVzc2UtZmFjdHVyYXRpb24ge1xuICAgIGdyaWQtYXJlYTogYWRyZXNzZS1mYWN0dXJhdGlvbjtcbn1cblxuLmFkcmVzc2UtbGl2cmFpc29uIHtcbiAgICBncmlkLWFyZWE6IGFkcmVzc2UtbGl2cmFpc29uO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZ3JpZC1hZHJlc3NlcyB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgICAgICAgICBcImxhYmVsLWZhY3R1cmF0aW9uIGxhYmVsLWxpdnJhaXNvblwiXG4gICAgICAgICAgICBcImFkcmVzc2UtZmFjdHVyYXRpb24gYWRyZXNzZS1saXZyYWlzb25cIjtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC5ncmlkLWFkcmVzc2VzIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIDFmcjtcbiAgICB9XG59XG5cbiNzZWNvbmRhcnktY2Fyb3VzZWwgYSB7XG4gICAgaGVpZ2h0OiAxMGVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuI3NlY29uZGFyeS1jYXJvdXNlbCBhIGltZyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG59XG5cbi8qKlxuRkFWT1VSSVRFU1xuICovXG5cbi5mYXZvdXJpdGUtaW1hZ2Uge1xuICAgIGhlaWdodDogOGVtO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG59XG5cblxuLyoqXG5TRU9cbiAqL1xuXG4uc2VvIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMWZyO1xuICAgIGdhcDogMCAxZW07XG4gICAgLypjb2xvcjogIzJFQ0M3MTsqL1xufVxuXG5cbi50YWJsZWF1LWdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMmZyO1xuICAgIGdhcDogMWVtO1xufVxuXG4udGFibGVhdS1ncmlkIC5tYWluIHtcbiAgICBncmlkLWNvbHVtbjogMSAvIC0xO1xufVxuXG4udGFibGVhdS1ncmlkIC5zdWIge1xuICAgIGdyaWQtY29sdW1uOiAyIC8gMztcbn1cblxuLmFjY2Vzc29pcmUgLmNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIDFmcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC41ZW0gMWVtO1xufVxuXG4vKi51bnNlbGVjdGVkLWFjY2Vzc29pcmUgLmNvbnRlbnQgLmxhYmVsIHsqL1xuLyogICAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07Ki9cbi8qfSovXG5cbi8qLnVuc2VsZWN0ZWQtYWNjZXNzb2lyZSAuY29udGVudCAudmFsdWUgeyovXG4vKiAgICBwYWRkaW5nOiAwLjVyZW0gMC4yNXJlbSAwLjVyZW0gMC41cmVtOyovXG4vKn0qL1xuXG4ucm93LXNlcGFyYXRvciB7XG4gICAgZ3JpZC1jb2x1bW46IDEgLyAtMTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjY2RjZTtcbiAgICBoZWlnaHQ6IDA7XG59XG5cblxuLypcbkVESVRPUklBTFxuICovXG4uZWRpdG9yaWFsLXBvc3QtY2FyZCBpbWcge1xuICAgIGhlaWdodDogMTVlbTtcbn1cblxuI2FkbWluLXNpbmdsZS1lZGl0b3JpYWwtcG9zdCBpbWcsXG4jc2luZ2xlLWVkaXRvcmlhbC1wb3N0IGltZyxcbiN1cGRhdGUtZWRpdG9yaWFsLXBvc3QgLnByZXZpZXctaW1hZ2UgaW1nIHtcbiAgICBoZWlnaHQ6IDIwcmVtO1xufSJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/