/*!**************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/app.css ***!
  \**************************************************************************************************************/
:root{
    --blanc-fixe: #FFFFFF;
    --noir-fixe: #000000;

    --vert:#80C18E;
    --vert-sapin:#148049;

    --bleu:#47BCC6;
    --bleu-2: #aadde4;

    --gris:#C1C1C1;
    --gris-2: #d6d6d6;

    --erreur: crimson;
    --erreur-2: #f3667f;

    --radius: 10px;
    --scale-grow: 1.05;
    --animation-duration: .5s;

    --font-family-base: "Raleway";
    --font-size: 16px;
    --letter-spacing: 0px;
    --line-height: 1.5;
}

:root[data-theme="light"] {
    --blanc: #FFFFFF;
    --noir: #000000;
    --noir-lo: #171717;
    --blanc-lo: #f8f8f8;
    --vert-alt:#80C18E;
    --vert-sapin-alt:#148049;

}
:root[data-theme="dark"] {
    --blanc: #000000;
    --noir: #FFFFFF;
    --noir-lo: #f8f8f8;
    --blanc-lo: #171717;
    --vert-alt:#148049;
    --vert-sapin-alt:#80C18E;
}

::selection{
    background: var(--noir);
    color: var(--blanc);
}

svg{
    pointer-events: none;
}

/* Scrollbar */
* {
    position: relative;
    scrollbar-width: auto;
    scrollbar-color: var(--vert-alt) var(--blanc-lo);
    transition:
            background-color var(--animation-duration),
            color var(--animation-duration),
            scale var(--animation-duration),
            opacity var(--animation-duration)
    ;
}
*::-webkit-scrollbar {
    width: 16px;
}
*::-webkit-scrollbar-track {
    background: var(--blanc-lo);
}
*::-webkit-scrollbar-thumb {
    background-color: var(--vert-alt);
    border-radius: 10px;
    border: 3px solid transparent;
}


@font-face {
    font-family: 'Raleway';
    src: url(/build/fonts/Raleway-VariableFont_wght.d8040b0c.ttf) format("truetype");
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'OpenDyslexic';
    src: url(/build/fonts/OpenDyslexic-Regular.59a86b21.otf) format("opentype");
    font-weight: 400;
    font-style: normal;
}

html {
        font-size: var(--font-size)
}

body{
    background: var(--blanc-lo);
    color: var(--noir);
    margin: 0;
    padding: 0;
}

*{
    box-sizing: border-box;
    font-family: var(--font-family-base),sans-serif;
    letter-spacing: var(--letter-spacing);
    line-height: var(--line-height);
}

*:focus-visible,
*:focus-visible + .mic-btn,
.drop-container:has(input:focus-visible) {
    outline: none !important;
    border-color: var(--vert-sapin) !important;
    box-shadow: 0 0 2px 3px rgba(20, 128, 73, 0.4) !important;
}



main{
    margin: 0;
    padding: 5vh 5vw 5vh 10vw;
}


/* Titres */

h1{
    color: var(--vert-sapin);
    text-transform: uppercase;
    display: flex;
    justify-content: space-between;
}
h1 button, h1 a{
    position: relative;
    background: transparent;
    border-radius: var(--radius);
    border: none;
    font-size: 1.2em;
    color: inherit !important;
}
h1 button:hover, h1 a:hover{
    scale: var(--scale-grow) !important;
    color: var(--vert) !important;
}

h2{
    background: var(--vert) ;
    color: var(--noir-fixe);
    border-radius: var(--radius);
    padding: 10px ;
    font-size: var(--font-size);
    text-transform: uppercase;
}

.close-space{
    justify-content: left;
    gap: 10px;
}


/* Classes sur l'accessibilité */
.body-no-scroll {
    overflow: hidden;
    height: 100vh;
}

.underline-links header a:not(.btn),
.underline-links main a:not(.btn),
.underline-links #modal a:not(.btn)
{
    background: yellow !important;
    color: var(--noir-fixe) !important;
}

.no-animations * {
    animation: none !important;
    transition: none !important;
}

.gray-hues * {
    filter: grayscale(1);
}

#reading-line {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 5px;
    background: var(--noir);
    pointer-events: none;
    z-index: 1100;
    transition: top 0.05s linear;
}
#reading-line:before,
#reading-line:after
{
    content: '';
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background: var(--erreur);
}

#reading-line:before{
    top: -2px;
}
#reading-line:after{
    bottom: -2px;
}

.big-cursor-off, .big-cursor-off * {
    cursor: auto !important;
}
.big-cursor-off a,
.big-cursor-off button,
.big-cursor-off button *
{
    cursor: pointer !important;
}

.cursor-pointer, .cursor-pointer *{
    cursor: pointer !important;
}

/* Boutons */
.btn {
    background-color: var(--vert-sapin);
    color: var(--blanc);
    border: none;
    padding: 10px !important;
    border-radius: var(--radius);
    font-size: 1rem;
    font-weight: bold;
    text-decoration: none;
    &:hover {
        background-color: var(--vert);
        scale: var(--scale-grow);
        border-radius: var(--radius);
    }
}

.btn-red{
    background: var(--erreur);
}
.btn-red:hover{
    background: var(--erreur-2);
}
.btn-blue{
    background: var(--bleu);
}
.btn-blue:hover{
    background: var(--bleu-2);
}
.btn-inactive{
    opacity: .2 !important;
}
.btn-inactive:hover{
    scale: 1 !important;
}

/* liens */
main a{
    padding: 10px;
    border-radius: var(--radius);
    color: var(--noir);
    text-decoration: none;
}
main a:not(.btn):hover{
    scale: var(--scale-grow);
    color: var(--bleu);
}


/* Messages informations */

.error-message {
    color: var(--erreur);
    margin-top: 0.25rem;
}

.info-message {
    background-color: var(--gris);
    color: var(--noir-fixe);
    padding: 0.75rem;
    border-radius: 0.5rem;
    margin-bottom: 1rem;
}

/* Tooltips */
.tooltip{
    opacity: 0;
    pointer-events: none;
    position: absolute;
    z-index: 1101;
    padding: 10px !important;
    border-radius: var(--radius);
    background: var(--noir-lo) !important;
    color: var(--blanc);
    width: auto;
    max-width: 100%;
}
.tooltip[data-active="true"], .tooltip:hover{
    opacity: 1;
}

.tooltip:before{
    content: 'Note : ';
    font-weight: bold;
}

.tooltip::after {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    pointer-events: none;
    border-style: solid;
    border-width: 0 10px 20px 10px;
    border-color: transparent transparent var(--noir-lo) transparent;
}

.tooltip-top::after {
    bottom: -2px;
}

.tooltip-bottom::after {
    top: -2px;
}

.tooltip-left::after {
    right: -6px;
}
.tooltip-right::after {
    left: -6px;
}

.tooltip-top.tooltip-left::after {
    transform: rotate(20deg);
}
.tooltip-bottom.tooltip-left::after {
    transform: rotate(160deg);
}
.tooltip-top.tooltip-right::after {
    transform: rotate(-20deg);
}
.tooltip-bottom.tooltip-right::after {
    transform: rotate(-160deg);
}




/* Header */
header{
    box-sizing: border-box;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: var(--blanc);
    color: var(--noir);
    height: calc(20px + min(4vw, 7.5vh));
    padding: 10px 2vw 10px 7vw;

    @media screen and (max-width: 800px){
        box-sizing: initial;
        height: clamp(40px, 10vh, 70px);
    }
}

header img{
    pointer-events: none;
    height: clamp(30px, 8vh, 60px);
}
@media screen and (min-width: 801px) {
    .short-logo {
        display: none;
    }
}

@media screen and (max-width: 800px) {
    .full-logo {
        display: none;
    }
}

@media screen and (max-width:599px) {
    .user-name {
        display: none;
    }
}
.menu-btn{
    margin-right: 20px;
    background: transparent;
    overflow: hidden;
    border-radius: var(--radius);
    border: none;
    font-size: 30px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.menu-btn span{
    font-size: 12px;
}
.menu-btn {
    color: var(--vert-sapin-alt);
}
.menu-btn:hover {
    color: var(--vert-alt);
    scale: var(--scale-grow);
}

.profile-section{
    display: flex;
    align-items: center;
    position: relative;
    padding-left: 20px;
    border-left: 2px solid var(--gris);
}

.profile-img{
    margin-left: 10px;
    position: relative;
    height: clamp(30px, 8vh, 60px);
    aspect-ratio: 1/1;
    border-radius: 100%;
    font-size: clamp(20px, 6vh, 50px);
    overflow: hidden;
    border:none;
    display: flex;
    align-items: end;
    justify-content: center;
    background: var(--bleu);
}

.profile-btn{
    background: transparent;
    border: none;
    font-size: 2vw;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    color: var(--noir);
}
.profile-btn:hover .chevron{
    scale: var(--scale-grow);
    color: var(--gris);
}

/* menu principal */

.sidebar-menu{
    position: fixed;
    top: 0;
    left: 0;
    background: var(--vert-alt);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    padding: 10px 0;
    height: 100vh;
    z-index: 900;
    width: 5vw;

    nav{
        display: flex;
        flex-direction: column;
        justify-content: center;
        gap: 10px;
    }

    a, button {
        position: relative;
        border:none;
        width: min(4vw, 7.5vh);
        font-size: 2vw;
        aspect-ratio: 1/1;
        display: flex;
        justify-content: center;
        align-items: center;
        background: var(--vert-sapin-alt);
        padding: 0;
        border-radius: var(--radius);
        color: var(--blanc);
        box-shadow: rgba(0, 0, 0, 0.06) 0px 2px 4px 0px inset;

        svg:not(.svg-inline--fa){
            width: 65%;
            height: 65%;
            path{
                fill: var(--blanc);
            }
        }

        &:hover {
            background: var(--gris);
        }
    }
}

@media screen and (min-width: 801px) {
    .sidebar-menu a:hover:after,
    .sidebar-menu button:hover:after
    {
        position: absolute;
        content: attr(data-menu);
        z-index: 9999;
        top: 50%;
        left: 4.5vw;
        font-size: 1.3rem;

        text-wrap: nowrap;
        transform: translate(0, -50%);
        background: var(--vert-alt);
        border-bottom-right-radius: 100px;
        border-top-right-radius: 100px;
        padding: 10px 30px 10px 10px;
        display: flex;
        align-items: center;
        box-shadow: rgba(0, 0, 0, 0.15) 1.95px 1.95px 2.6px;
    }
    .sidebar-menu a,
    .sidebar-menu button{
        max-width: 9vh;
        max-height: calc(10vh - 15px);
    }
    .menu-btn{
        display: none;
    }
    .profile-section{
        border: none;
    }
}

@media screen and (max-width: 800px) {
    body:has(.menu-visible){
        overflow: hidden;
        height: 100vh;
    }
    main, header{
        padding-left: 5vw;
    }
    .sidebar-menu {
        top: calc(clamp(40px, 10vh, 70px) + 20px);
        width: 100vw;
        height: 0;
        padding: 0;
        overflow: auto;
        visibility: hidden;
        transition: height 0.3s ease;
    }

    .menu-visible {
        height: calc(100vh - clamp(40px, 10vh, 70px) - 20px);
        visibility: visible;
    }

    .sidebar-menu nav{
        flex-direction: row;
        flex-wrap: wrap;
        gap: 5vw;
        padding: 10vh 5vw;
    }
    .sidebar-menu a,
    .sidebar-menu button
    {
        position: relative;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 20px;
        min-width: 100px;
        width: calc(var(--font-size) * 12);
        font-size: 50px;
        text-transform: uppercase;
        text-decoration: none;
    }
    .sidebar-menu a:after,
    .sidebar-menu button:after
    {
        position: relative;
        content: attr(data-menu);
        font-size: var(--font-size);
        text-align: center;
    }
}


/* cartes */

.card {
    box-sizing: border-box;
    position: relative;
    font-weight: bold;
    border-radius: var(--radius);
    padding: 20px;
    background: linear-gradient(to bottom right, var(--blanc), var(--blanc-lo));
}

.card *:not(.illustration-card){
    z-index: 2;
}
.card h2{
    position: relative;
    background: rgba(255, 255, 255, 0.2);
    padding: 10px 20px;
    font-size: 1.2rem;
    font-weight: bold;
    letter-spacing: max(2px, var(--letter-spacing) );
}
.card .liste{
    position: relative;
    list-style: none;
    padding: 10px;
    margin: 0;
    flex: 1 1 300px;
    color: var(--blanc)
}
.card .liste li:not(:last-of-type){
    margin-bottom: 1em;
}
.card .liste li strong {
    font-size: 2rem;
    padding-right: 10px;
}
.illustration-card{
    z-index: 1;
    position: absolute;
    bottom: 10px;
    right: 10px;
    font-size: 10vw;
}
.card.bg-vert .illustration-card{
    color: var(--vert-sapin);
    opacity: .1;
}
.card.bg-bleu .illustration-card{
    color: var(--bleu-2);
    opacity: .1;
}

/* Affichage des grilles d'information (ul) */

.info-section {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
}

.infos-group {
    list-style: none;
    padding: 10px;
    margin: 0;
    flex: 1 1 300px;
}

.infos-group li {
    display: flex;
    margin-bottom: 10px;
    gap: 20px;
    align-items: baseline;
    font-weight: bold;
}

.infos-group li strong {
    display: inline-block;
    width: 150px;
    text-wrap: wrap;
    font-weight: bold !important;
}

.infos-group li span {
    flex: 1;
    font-weight: lighter;
}

/* Badges */
.badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: var(--radius);
    position: relative;
    color: var(--blanc);
}

.large-badge{
    color: var(--blanc) !important;
    border-radius: 100px;
    padding: 2px 5px;
    text-wrap: nowrap;
}


/* Classes outils divers */

.d-none{
    display: none !important;
}
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    border: 0;
}

.mgt-5{
    margin-top: 5vh !important;
}
.mgb-5{
    margin-bottom: 5vh !important;
}
.text-nowrap{
    text-wrap: nowrap;
}
.center {
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
}
.flex-wrap-bloc{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}

.flex-column{
    display: flex;
    flex-direction: column;
}
.flex-row{
    display: flex;
    flex-direction: row;
}

.flex-1{
    flex: 1;
}
.flex-2{
    flex: 2;
}
.gap-20{
    gap: 20px;
}

.bg-vert{
    background: var(--vert);
}
.bg-vert-sapin{
    background: var(--vert-sapin);
}
.bg-bleu{
    background: var(--bleu);
}
.bg-blanc{
    background: var(--blanc) !important;
}
.bg-rouge{
    background: #f2dadc;
    color: var(--noir-fixe);
    border: 1px solid var(--erreur);
}
.bg-error{
    background: var(--erreur);
    color: var(--noir-fixe);
    border: 1px solid var(--erreur);
}
.bg-orange{
    background: orangered !important;
}
.bg-gris{
    background: var(--gris)
}


.color-blanc{
    color: var(--blanc) !important;
}
.color-noir{
    color: var(--noir) !important;
}
.color-bleu{
    color: var(--bleu) !important;
}
.color-vert{
    color: var(--vert) !important;
}
.color-vert-sapin{
    color: var(--vert-sapin) !important;
}
.color-gris{
    color: var(--gris) !important;
}
.color-red{
    color: var(--erreur) !important;
}


.phone {
    letter-spacing: 0.05em !important;
    font-variant-numeric: tabular-nums !important;
    white-space: nowrap !important;
}
.chevron-updown{
    padding-right: 10px;
}
.min-w-70{
    min-width: 70vw !important;
}
.max-100{
    position: relative;
    width: 80vw !important;
}

.text-center{
    text-align: center;
}
.font-size-value{
    font-size: 1.3em !important;
}

.short-filter-bloc{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 2vw;
    margin-bottom: 5vh;
}
.short-filter-bloc > *{
    min-width: 200px;
    flex: 1;
}

.filters-count{
    position: absolute;
    bottom: 0;
    right: -10px;
    background: var(--bleu);
    border-radius: 50%;
    width: 30px;
    font-size: 20px;
    aspect-ratio: 1/1;
    opacity: 1;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    color: var(--blanc);
}
.filters {
    position: relative;
    flex: 0 0 max(250px, 25vw);
    padding: 1rem;
    border-radius: 8px;
}
.filters-list{
    position: relative;
    width: 100%;
    justify-content: space-between;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
.filter{
    flex: 1;
    min-width: 300px;
    max-width: 100%;
    width: auto;
    overflow-x: hidden;
}
.filter-name{
    display: block;
}
.filters h1{
    font-size: calc(var(--font-size) + 4px);
}
.filters h2{
    border-top: 1px solid var(--gris);
    background: transparent ;
    border-radius: 0;
    padding: 10px 0 0;
    color: var(--noir);
}
.filters h2:not(:first-of-type){
    border-top: 1px dashed var(--gris);
    margin-top:20px;
}

.no-caps{
    text-transform: lowercase !important;
    *{
        text-transform: lowercase !important;
    }
}

#psycom {
    display: inline-block;
    width: 150px;
    aspect-ratio: 149/79;
    background: url(/build/images/Logo-Psycom.edfbb410.png);
}


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