/*!***************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/theme/breadcrumb.css ***!
  \***************************************************************************************************************************/
nav[aria-label='Breadcrumb'] {
    position: sticky;
    top: 45px;
    background: var(--background-alt);
    padding-top: 8px;
    padding-bottom: 2px;
    z-index: 0;

    & ol {
        padding-bottom: 0;
        margin-top: 0;
        display: flex;
        flex-wrap: wrap;
        list-style: none;
        padding-left: 0;

        & li:not(:last-child)::after {
            content: "/";
            margin-left: 0.25em;
            margin-right: 0.25em;
        }

        & li:last-child {
            padding-left: 8px;
        }

        & li a {
            padding: 8px;
        }
    }
}
/*!***********************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/theme/footer.css ***!
  \***********************************************************************************************************************/
footer {
    background-color: var(--background-alt);
    text-align: center;
    font-size: .75rem;
    width: auto;
    grid-area: footer;
    place-self: center stretch;

    border-top: var(--border-style);

    & ul {
        display: flex;
        justify-content: center;

        & li {
            list-style: none;
            padding: 1rem;

            & a {
                text-decoration: none;
            }
        }
    }
}
/*!***********************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/theme/header.css ***!
  \***********************************************************************************************************************/
header[role="banner"] {
    grid-area: header;
    border-bottom: var(--border-style);
    position: sticky;
    top: 0;
    background-color: var(--background-alt);
    z-index: 5;
    height: 80px;

    & > * {
        margin: 0;
        padding: 0;
    }

    & ul {
        display: flex;
        padding-left: 24px;

        & li {
            list-style: none;
            margin-right: 1rem;

            & a {
                display: block;
                text-decoration: none;
                padding: 1rem;
                border: solid 1px var(--background-alt);

                &.active {
                    background-color: var(--background-alt);
                    border: solid 1px var(--border);
                }

                &:hover {
                    border: solid 1px var(--border);
                }
            }
        }
    }
}

header[role="banner"] + H1 {
    text-align: center;
    font-size: 2em;
}

@media screen and (width <= 640px) {
    header[role="banner"] + H1 {
        text-align: center;
        font-size: 4em;
    }
}
/*!*********************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/theme/root.css ***!
  \*********************************************************************************************************************/
:root {
    --background-body: #1a1e25;
    --background: #1f232b;
    --background-alt: #252932;
    --selection: #6b8fa3;
    --text-main: #d4d9e0;
    --text-bright: #f0f4f8;
    --text-muted: #9ca6b2;
    --links: #7eb3d3;
    --focus: #8ba8bfab;
    --border: #4a5568;
    --code: #d9b38c;
    --button-base: #1a1e25;
    --button-hover: #14171d;
    --form-text: #f0f4f8;
    --variable: #c97ec4;
    --highlight: #d4b86a;
    --border-radius: 0.25rem;
    --border-style: solid 1px var(--border);
}

::selection {
    background-color: var(--selection);
    color: var(--text-bright);
}


html {
    height: 100%;
}

body {
    padding: 0;
    margin: 0;
    min-height: 100%;
    max-width: 100%;

    background-color: var(--background-alt);
    color: var(--text-main);

    display: grid;
    grid-template-columns: [h1] 250px [sidebar] 250px [main] 1fr ;
    grid-template-rows: [header] auto [main] 1fr [footer] auto;
    grid-template-areas:
        "h1 header header"
        "sidebar main main"
        "footer footer footer";

    @media screen and (width <= 640px) {
        & {
            grid-template-columns: 1fr;
            grid-template-rows: [header] auto [main] auto [sidebar] auto [footer] auto;
            grid-template-areas:
        "header"
        "h1"
        "sidebar"
        "main"
        "footer";
        }

        & > h1:nth-child(1) {
            text-align: center;
            font-size: 3rem;
        }
    }
}

a {
    color: var(--links);

    &:visited {
        color: var(--variable);
    }
}

p {
    line-height: 1.75rem;
}

#top-anchor > h1:nth-child(1) {
    grid-area: h1;
    text-shadow: 0 2px 3px rgba(0,0,0, .50);
}
/*!**************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/theme/section-complementary.css ***!
  \**************************************************************************************************************************************/
section[role="complementary"] {
    grid-area: sidebar;
    background-color: var(--background-alt);
    padding: 1rem;
    text-align: center;

    & > * {
        padding: 0.5rem;
        margin: 0;
    }

    & #photos-wam {
        min-width: 200px;
        min-height: 200px;
        display: block;
        background-image: url(/build/images/wam.81aa2ac0.jpg);
        background-size: 200px;
        background-repeat: no-repeat;
        clip-path: circle(100px at center);

        @media screen and (width <= 640px) {
            & {
                min-width: 512px;
                min-height: 512px;
                background-size: auto;
                background-position-y: -512px;
                clip-path: circle(220px at center);
            }
        }
    }
}

.display-mobile {
    display: none;

    @media screen and (width <= 640px) {
        display: block;
    }
}
.display-desktop {
    display: block;
    @media screen and (width <= 640px) {
        display: none;
    }
}


@keyframes transform-clip-path-start {
    0% {
        clip-path: circle(45%);
    }

    100% {
        clip-path: circle(0%);
    }
}

@keyframes transform-mask {
    0% {
        background-position-y: 0;
    }

    100% {
        background-position-y: -200px;
    }
}

@keyframes transform-clip-path-end {
    0% {
        clip-path: circle(0%);
    }

    100% {
        clip-path: circle(45%);
    }
}
/*!*****************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/theme/section-main.css ***!
  \*****************************************************************************************************************************/
section[role="main"] {
    grid-area: main;
    background-color: var(--background-alt);
    padding: 1rem;

    & > * {
        padding: 0.5rem;
        margin: 0;
    }

    @media screen and (width <= 640px) {
        & > h1:nth-child(1) {
            font-size: 1.5rem;
        }
    }
}
/*!***************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/theme/pagination.css ***!
  \***************************************************************************************************************************/
ul[aria-label='pagination'] {
    display: flex;
    justify-content: center;
    list-style: none; /* remove list bullets */
    padding: 8px;
}

ul[aria-label='pagination'] li {
    min-width: 30px;
    text-align: center;
    display: block; /* let links fill the list item */
    padding: 8px 12px;
    text-decoration: none;
    margin: 0 4px;
    border-radius: 5px;
    border: 1px solid var(--border);
    background-color: var(--background-alt);
}

ul[aria-label='pagination'] li[aria-current='true'] {
    background-color: var(--background-alt);
    border-color: var(--focus);
}

ul[aria-label='pagination'] li:hover:not([aria-current='true']) {
    background-color: var(--background-alt);
    border-color: var(--focus);
}

@media (max-width: 1100px) {
    ul[aria-label='pagination'] li.hidden-mobile {
        display: none;
    }
}
/*!***************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/theme/blog/style.css ***!
  \***************************************************************************************************************************/
section[role="main"] .smaller {
    font-size: smaller;
    padding-top: 0;
}
/*!*************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/theme/jh/style.css ***!
  \*************************************************************************************************************************/
section[role="main"] {
    & .projets {
        margin-left: 2rem;
    }
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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Z0JBQzdCLGtDQUFrQztZQUN0QztRQUNKO0lBQ0o7QUFDSjs7QUFFQTtJQUNJLGFBQWE7O0lBRWI7UUFDSSxjQUFjO0lBQ2xCO0FBQ0o7QUFDQTtJQUNJLGNBQWM7SUFDZDtRQUNJLGFBQWE7SUFDakI7QUFDSjs7O0FBR0E7SUFDSTtRQUNJLHNCQUFzQjtJQUMxQjs7SUFFQTtRQUNJLHFCQUFxQjtJQUN6QjtBQUNKOztBQUVBO0lBQ0k7UUFDSSx3QkFBd0I7SUFDNUI7O0lBRUE7UUFDSSw2QkFBNkI7SUFDakM7QUFDSjs7QUFFQTtJQUNJO1FBQ0kscUJBQXFCO0lBQ3pCOztJQUVBO1FBQ0ksc0JBQXNCO0lBQzFCO0FBQ0osQzs7OztBQzNFQTtJQUNJLGVBQWU7SUFDZix1Q0FBdUM7SUFDdkMsYUFBYTs7SUFFYjtRQUNJLGVBQWU7UUFDZixTQUFTO0lBQ2I7O0lBRUE7UUFDSTtZQUNJLGlCQUFpQjtRQUNyQjtJQUNKO0FBQ0osQzs7OztBQ2ZBO0lBQ0ksYUFBYTtJQUNiLHVCQUF1QjtJQUN2QixnQkFBZ0IsRUFBRSx3QkFBd0I7SUFDMUMsWUFBWTtBQUNoQjs7QUFFQTtJQUNJLGVBQWU7SUFDZixrQkFBa0I7SUFDbEIsY0FBYyxFQUFFLGlDQUFpQztJQUNqRCxpQkFBaUI7SUFDakIscUJBQXFCO0lBQ3JCLGFBQWE7SUFDYixrQkFBa0I7SUFDbEIsK0JBQStCO0lBQy9CLHVDQUF1QztBQUMzQzs7QUFFQTtJQUNJLHVDQUF1QztJQUN2QywwQkFBMEI7QUFDOUI7O0FBRUE7SUFDSSx1Q0FBdUM7SUFDdkMsMEJBQTBCO0FBQzlCOztBQUVBO0lBQ0k7UUFDSSxhQUFhO0lBQ2pCO0FBQ0osQzs7OztBQ2pDQTtJQUNJLGtCQUFrQjtJQUNsQixjQUFjO0FBQ2xCLEM7Ozs7QUNIQTtJQUNJO1FBQ0ksaUJBQWlCO0lBQ3JCO0FBQ0osQyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvdGhlbWUvYnJlYWRjcnVtYi5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy90aGVtZS9mb290ZXIuY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvdGhlbWUvaGVhZGVyLmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL3RoZW1lL3Jvb3QuY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvdGhlbWUvc2VjdGlvbi1jb21wbGVtZW50YXJ5LmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL3RoZW1lL3NlY3Rpb24tbWFpbi5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy90aGVtZS9wYWdpbmF0aW9uLmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL3RoZW1lL2Jsb2cvc3R5bGUuY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvdGhlbWUvamgvc3R5bGUuY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIm5hdlthcmlhLWxhYmVsPSdCcmVhZGNydW1iJ10ge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiA0NXB4O1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtYWx0KTtcbiAgICBwYWRkaW5nLXRvcDogOHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAycHg7XG4gICAgei1pbmRleDogMDtcblxuICAgICYgb2wge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgICAgICAgJiBsaTpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIi9cIjtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjI1ZW07XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuMjVlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYgbGkgYSB7XG4gICAgICAgICAgICBwYWRkaW5nOiA4cHg7XG4gICAgICAgIH1cbiAgICB9XG59IiwiZm9vdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLWFsdCk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogLjc1cmVtO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGdyaWQtYXJlYTogZm9vdGVyO1xuICAgIHBsYWNlLXNlbGY6IGNlbnRlciBzdHJldGNoO1xuXG4gICAgYm9yZGVyLXRvcDogdmFyKC0tYm9yZGVyLXN0eWxlKTtcblxuICAgICYgdWwge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAmIGxpIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xuXG4gICAgICAgICAgICAmIGEge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCJoZWFkZXJbcm9sZT1cImJhbm5lclwiXSB7XG4gICAgZ3JpZC1hcmVhOiBoZWFkZXI7XG4gICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tYm9yZGVyLXN0eWxlKTtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLWFsdCk7XG4gICAgei1pbmRleDogNTtcbiAgICBoZWlnaHQ6IDgwcHg7XG5cbiAgICAmID4gKiB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAmIHVsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNHB4O1xuXG4gICAgICAgICYgbGkge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcblxuICAgICAgICAgICAgJiBhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IHNvbGlkIDFweCB2YXIoLS1iYWNrZ3JvdW5kLWFsdCk7XG5cbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtYWx0KTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggdmFyKC0tYm9yZGVyKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggdmFyKC0tYm9yZGVyKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmhlYWRlcltyb2xlPVwiYmFubmVyXCJdICsgSDEge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKHdpZHRoIDw9IDY0MHB4KSB7XG4gICAgaGVhZGVyW3JvbGU9XCJiYW5uZXJcIl0gKyBIMSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiA0ZW07XG4gICAgfVxufSIsIjpyb290IHtcbiAgICAtLWJhY2tncm91bmQtYm9keTogIzFhMWUyNTtcbiAgICAtLWJhY2tncm91bmQ6ICMxZjIzMmI7XG4gICAgLS1iYWNrZ3JvdW5kLWFsdDogIzI1MjkzMjtcbiAgICAtLXNlbGVjdGlvbjogIzZiOGZhMztcbiAgICAtLXRleHQtbWFpbjogI2Q0ZDllMDtcbiAgICAtLXRleHQtYnJpZ2h0OiAjZjBmNGY4O1xuICAgIC0tdGV4dC1tdXRlZDogIzljYTZiMjtcbiAgICAtLWxpbmtzOiAjN2ViM2QzO1xuICAgIC0tZm9jdXM6ICM4YmE4YmZhYjtcbiAgICAtLWJvcmRlcjogIzRhNTU2ODtcbiAgICAtLWNvZGU6ICNkOWIzOGM7XG4gICAgLS1idXR0b24tYmFzZTogIzFhMWUyNTtcbiAgICAtLWJ1dHRvbi1ob3ZlcjogIzE0MTcxZDtcbiAgICAtLWZvcm0tdGV4dDogI2YwZjRmODtcbiAgICAtLXZhcmlhYmxlOiAjYzk3ZWM0O1xuICAgIC0taGlnaGxpZ2h0OiAjZDRiODZhO1xuICAgIC0tYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgICAtLWJvcmRlci1zdHlsZTogc29saWQgMXB4IHZhcigtLWJvcmRlcik7XG59XG5cbjo6c2VsZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zZWxlY3Rpb24pO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWJyaWdodCk7XG59XG5cblxuaHRtbCB7XG4gICAgaGVpZ2h0OiAxMDAlO1xufVxuXG5ib2R5IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtYWx0KTtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1tYWluKTtcblxuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBbaDFdIDI1MHB4IFtzaWRlYmFyXSAyNTBweCBbbWFpbl0gMWZyIDtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IFtoZWFkZXJdIGF1dG8gW21haW5dIDFmciBbZm9vdGVyXSBhdXRvO1xuICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgICAgIFwiaDEgaGVhZGVyIGhlYWRlclwiXG4gICAgICAgIFwic2lkZWJhciBtYWluIG1haW5cIlxuICAgICAgICBcImZvb3RlciBmb290ZXIgZm9vdGVyXCI7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAod2lkdGggPD0gNjQwcHgpIHtcbiAgICAgICAgJiB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogW2hlYWRlcl0gYXV0byBbbWFpbl0gYXV0byBbc2lkZWJhcl0gYXV0byBbZm9vdGVyXSBhdXRvO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczpcbiAgICAgICAgXCJoZWFkZXJcIlxuICAgICAgICBcImgxXCJcbiAgICAgICAgXCJzaWRlYmFyXCJcbiAgICAgICAgXCJtYWluXCJcbiAgICAgICAgXCJmb290ZXJcIjtcbiAgICAgICAgfVxuXG4gICAgICAgICYgPiBoMTpudGgtY2hpbGQoMSkge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5hIHtcbiAgICBjb2xvcjogdmFyKC0tbGlua3MpO1xuXG4gICAgJjp2aXNpdGVkIHtcbiAgICAgICAgY29sb3I6IHZhcigtLXZhcmlhYmxlKTtcbiAgICB9XG59XG5cbnAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjc1cmVtO1xufVxuXG4jdG9wLWFuY2hvciA+IGgxOm50aC1jaGlsZCgxKSB7XG4gICAgZ3JpZC1hcmVhOiBoMTtcbiAgICB0ZXh0LXNoYWRvdzogMCAycHggM3B4IHJnYmEoMCwwLDAsIC41MCk7XG59Iiwic2VjdGlvbltyb2xlPVwiY29tcGxlbWVudGFyeVwiXSB7XG4gICAgZ3JpZC1hcmVhOiBzaWRlYmFyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtYWx0KTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICYgPiAqIHtcbiAgICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgJiAjcGhvdG9zLXdhbSB7XG4gICAgICAgIG1pbi13aWR0aDogMjAwcHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDIwMHB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvcHVibGljL2ltYWdlcy93YW0uanBnJyk7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjAwcHg7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGNsaXAtcGF0aDogY2lyY2xlKDEwMHB4IGF0IGNlbnRlcik7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKHdpZHRoIDw9IDY0MHB4KSB7XG4gICAgICAgICAgICAmIHtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDUxMnB4O1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDUxMnB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0bztcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IC01MTJweDtcbiAgICAgICAgICAgICAgICBjbGlwLXBhdGg6IGNpcmNsZSgyMjBweCBhdCBjZW50ZXIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZGlzcGxheS1tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAod2lkdGggPD0gNjQwcHgpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxufVxuLmRpc3BsYXktZGVza3RvcCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKHdpZHRoIDw9IDY0MHB4KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG5cbkBrZXlmcmFtZXMgdHJhbnNmb3JtLWNsaXAtcGF0aC1zdGFydCB7XG4gICAgMCUge1xuICAgICAgICBjbGlwLXBhdGg6IGNpcmNsZSg0NSUpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBjbGlwLXBhdGg6IGNpcmNsZSgwJSk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHRyYW5zZm9ybS1tYXNrIHtcbiAgICAwJSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogMDtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiAtMjAwcHg7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHRyYW5zZm9ybS1jbGlwLXBhdGgtZW5kIHtcbiAgICAwJSB7XG4gICAgICAgIGNsaXAtcGF0aDogY2lyY2xlKDAlKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgY2xpcC1wYXRoOiBjaXJjbGUoNDUlKTtcbiAgICB9XG59Iiwic2VjdGlvbltyb2xlPVwibWFpblwiXSB7XG4gICAgZ3JpZC1hcmVhOiBtYWluO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtYWx0KTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuXG4gICAgJiA+ICoge1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAod2lkdGggPD0gNjQwcHgpIHtcbiAgICAgICAgJiA+IGgxOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn0iLCJ1bFthcmlhLWxhYmVsPSdwYWdpbmF0aW9uJ10ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgLyogcmVtb3ZlIGxpc3QgYnVsbGV0cyAqL1xuICAgIHBhZGRpbmc6IDhweDtcbn1cblxudWxbYXJpYS1sYWJlbD0ncGFnaW5hdGlvbiddIGxpIHtcbiAgICBtaW4td2lkdGg6IDMwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGRpc3BsYXk6IGJsb2NrOyAvKiBsZXQgbGlua3MgZmlsbCB0aGUgbGlzdCBpdGVtICovXG4gICAgcGFkZGluZzogOHB4IDEycHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG1hcmdpbjogMCA0cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1hbHQpO1xufVxuXG51bFthcmlhLWxhYmVsPSdwYWdpbmF0aW9uJ10gbGlbYXJpYS1jdXJyZW50PSd0cnVlJ10ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtYWx0KTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWZvY3VzKTtcbn1cblxudWxbYXJpYS1sYWJlbD0ncGFnaW5hdGlvbiddIGxpOmhvdmVyOm5vdChbYXJpYS1jdXJyZW50PSd0cnVlJ10pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLWFsdCk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1mb2N1cyk7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTAwcHgpIHtcbiAgICB1bFthcmlhLWxhYmVsPSdwYWdpbmF0aW9uJ10gbGkuaGlkZGVuLW1vYmlsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufSIsInNlY3Rpb25bcm9sZT1cIm1haW5cIl0gLnNtYWxsZXIge1xuICAgIGZvbnQtc2l6ZTogc21hbGxlcjtcbiAgICBwYWRkaW5nLXRvcDogMDtcbn0iLCJzZWN0aW9uW3JvbGU9XCJtYWluXCJdIHtcbiAgICAmIC5wcm9qZXRzIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDJyZW07XG4gICAgfVxufSJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/