@font-face {
    font-family: 'DuranGo';
    font-style: normal;
    font-weight: 400;
    src: url("/res/font_durango.ttf") format('truetype');
    font-display: swap;
}

@font-face {
    font-family: 'Nunito';
    font-style: normal;
    font-weight: 400;
    src: local('Nunito Regular'), local('Nunito-Regular'), url("/res/font_nunito.woff2") format('woff2');
    font-display: swap;
}

* {
    padding: 0;
    margin: 0;
    font-family: DuranGo, serif;
}

body,
html {
    width: 100%;
    max-width: 100%;
    min-height: 100vh;
    overflow-x: hidden;
}


/** We change the base font-size depending on the user's screen size. **/

html {
    font-size: 13px
}

@media (min-width: 320px) {
    html {
        font-size: calc( 13px + 3 * ((100vw - 320px) / 880));
    }
}

@media (min-width: 1200px) {
    html {
        font-size: 16px
    }
}

body {
    font-size: 0.8rem;
}

body,
body.webp.gradient-background,
body.webp .gradient-background,
body.no-webp.gradient-background,
body.no-webp .gradient-background {
    background-color: rgb(32, 41, 48);
    background-image: linear-gradient(to bottom right, rgb(28, 34, 40), rgb(41, 54, 64));
}

body.webp.wood-background,
body.webp .wood-background {
    background: rgb(32, 41, 48) url("/res/wood_background.webp") repeat;
    background-size: 35vmin;
}

body.no-webp.wood-background,
body.no-webp .wood-background {
    background: rgb(32, 41, 48) url("/res/wood_background.png") repeat;
    background-size: 35vmin;
}

body.webp.plain-wood-background,
body.webp .plain-wood-background {
    background: rgb(32, 41, 48) url("/res/plain_wood_background.webp") repeat;
    background-size: 35vmin;
}

body.no-webp.plain-wood-background,
body.no-webp .plain-wood-background {
    background: rgb(32, 41, 48) url("/res/plain_wood_background.png") repeat;
    background-size: 35vmin;
}

body.webp.simple-background,
body.webp .simple-background {
    background: rgb(32, 41, 48) url("/res/home_background.webp") repeat;
    background-size: 35vmin;
}

body.no-webp.simple-background,
body.no-webp .simple-background {
    background: rgb(32, 41, 48) url("/res/home_background.png") repeat;
    background-size: 35vmin;
}

img,
#content img {
    height: auto;
    /* Stops showing the alt text if the image doesn't load */
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

.highlight-shadow,
.shadow {
    filter: drop-shadow(6px 6px 12px rgba(0, 0, 0, 0.4));
}

.highlight-shadow:hover {
    filter: drop-shadow(6px 6px 12px rgba(255, 255, 255, 0.1));
}

.text-shadow {
    text-shadow: 6px 6px 12px rgba(0, 0, 0, 0.4);
}

.text-button {
    display: inline;
    border: 3px solid white;
    border-radius: 1vh;
    padding: 0.5vh 2vh;
    margin-bottom: 3vh;
    font-family: Nunito, sans-serif;
    font-size: 5vh;
    color: white;
    cursor: pointer;
    background-color: rgba(0, 0, 0, 0.8);
    transition: background-color 0.1s ease-in-out;
}

.text-button:hover {
    background-color: rgba(0, 0, 0, 1);
    transition: background-color 0.1s ease-in-out;
}

.centre-text {
    display: block;
    text-align: center;
}


/** This file contains the CSS for styling the footer of the website. **/

#footer,
#footer-full-width {
    display: block;
    background: #151A1F;
    box-shadow: 0 0 10px 5px rgba(0, 0, 0, 1);
    z-index: 1;
}

#footer {
    box-sizing: border-box;
    max-width: 87%;
    padding: 0.5em;
    margin-top: 1em;
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
    font-size: 1.5em;
    text-align: left;
}

#footer-links {
    display: inline-block;
    margin: 0.4em;
    line-height: 40px;
}

#footer-social-icons {
    float: right;
    margin-top: 0.2em;
    margin-right: 0.4em;
}

@media only screen and (max-width: 1020px) {
    #footer-social-icons {
        content-visibility: hidden !important;
    }
}

#footer a.link,
#footer span.copyright {
    color: #bbbbbb;
    font-family: Nunito, sans-serif;
    font-size: 0.85em;
    margin-right: 1em;
    vertical-align: middle;
}

#footer span.copyright {
    color: #999999;
}

#footer a {
    text-decoration: none;
}

#footer a.link:hover {
    color: #999999;
}

#footer a.social-icon {
    margin-left: 0.5em;
    line-height: 0;
}


/* The twitter logo is oddly sized. */

#footer a.social-icon.twitter-icon img {
    margin-bottom: 4px;
    margin-right: -4px;
}


/** CSS for when the footer should take up the full width of the page. **/

#footer-full-width {
    width: 100%;
}

#footer-full-width #footer {
    display: inline-block;
    background: none;
    box-shadow: none;
    width: 100%;
    margin: 0;
    padding-bottom: 0.25em;
}


/** This file contains the CSS for styling the header of the website. **/

#header,
#header-full-width {
    display: block;
    background: #151A1F;
    box-shadow: 0 0 10px 5px rgba(0, 0, 0, 1);
    z-index: 1;
}

#header {
    box-sizing: border-box;
    max-width: 87%;
    padding: 0.5em;
    padding-top: 0;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 1em;
    font-size: 1.5em;
    text-align: left;
}

#header-logo {
    display: inline-block;
    margin-top: 8px;
    line-height: 40px;
}

#header-links {
    display: inline-block;
    margin-top: 0.5em;
    margin-left: 2em;
}

#header a {
    line-height: 48px;
    text-decoration: none;
}

#header a.link {
    color: #bbbbbb;
    font-family: Nunito, sans-serif;
    font-size: 1.1em;
    margin-right: 1em;
    vertical-align: middle;
}

#header a.link:hover {
    color: #999999;
    text-decoration: underline;
}

#header img,
#header span {
    display: inline-block;
    vertical-align: middle;
}

#header img {
    vertical-align: middle;
    height: 48px;
    width: auto;
}

#header span {
    margin-left: 0.26em;
    margin-bottom: -0.3em;
    font-size: 2em;
    color: white;
}


/** CSS for when the header should take up the full width of the page. **/

#header-full-width {
    width: 100%;
}

#header-full-width #header {
    display: inline-block;
    background: none;
    box-shadow: none;
    width: 100%;
    margin: 0;
}

a.twitter-share,
#content a.twitter-share {
    position: relative;
    display: inline-block;
    height: 1.5em;
    padding: 0.05em 0.6em;
    border-radius: 0.3em;
    background-color: #1b95e0;
    color: white;
    font-size: 0.9em;
    font-family: Nunito, sans-serif;
    vertical-align: middle;
}

a.twitter-share:hover,
a.twitter-share:active,
a.twitter-share:focus,
#content a.twitter-share:focus,
#content a.twitter-share:hover,
#content a.twitter-share:active {
    background-color: #0c7abf;
}

a.twitter-share span,
#content a.twitter-share span {
    position: relative;
    top: -0.02em;
}

a.twitter-share i,
#content a.twitter-share i {
    position: relative;
    display: inline-block;
    top: 0.16em;
    width: 1em;
    height: 1em;
    margin-right: 0.33em;
    background-image: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2072%2072%22%3E%3Cpath%20fill%3D%22none%22%20d%3D%22M0%200h72v72H0z%22%2F%3E%3Cpath%20class%3D%22icon%22%20fill%3D%22%23fff%22%20d%3D%22M68.812%2015.14c-2.348%201.04-4.87%201.744-7.52%202.06%202.704-1.62%204.78-4.186%205.757-7.243-2.53%201.5-5.33%202.592-8.314%203.176C56.35%2010.59%2052.948%209%2049.182%209c-7.23%200-13.092%205.86-13.092%2013.093%200%201.026.118%202.02.338%202.98C25.543%2024.527%2015.9%2019.318%209.44%2011.396c-1.125%201.936-1.77%204.184-1.77%206.58%200%204.543%202.312%208.552%205.824%2010.9-2.146-.07-4.165-.658-5.93-1.64-.002.056-.002.11-.002.163%200%206.345%204.513%2011.638%2010.504%2012.84-1.1.298-2.256.457-3.45.457-.845%200-1.666-.078-2.464-.23%201.667%205.2%206.5%208.985%2012.23%209.09-4.482%203.51-10.13%205.605-16.26%205.605-1.055%200-2.096-.06-3.122-.184%205.794%203.717%2012.676%205.882%2020.067%205.882%2024.083%200%2037.25-19.95%2037.25-37.25%200-.565-.013-1.133-.038-1.693%202.558-1.847%204.778-4.15%206.532-6.774z%22%2F%3E%3C%2Fsvg%3E);
}

iframe {
    /** IFrames are used for embedded YouTube videos. **/
    max-width: 100%;
    border: 0;
    margin-top: 0.2em;
    margin-bottom: 0.2em;
}

body {
    display: flex;
    flex-direction: column;
}

#content,
#call-to-action,
#header,
#footer {
    display: block;
    flex-shrink: 0;
    box-sizing: border-box;
    width: 100%;
    max-width: 87%;
}

#footer {
    margin-top: auto;
}

#content,
#call-to-action {
    padding: 0.5em;
    padding-left: 1.5em;
    padding-right: 1.5em;
    margin: 1em;
    margin-top: 0;
    margin-left: auto;
    margin-right: auto;
    font-family: Nunito, sans-serif;
    font-size: 1.4em;
    background-color: rgb(32, 41, 48);
    box-shadow: 0 0 10px 5px rgba(0, 0, 0, 1);
    color: white;
}

#content * {
    font-family: Nunito, sans-serif;
    font-size: 1em;
    line-height: 1.6em;
    text-decoration: none;
}

#content .article-links {
    font-size: 0.9em;
}

#content .article-links .article-back-link {
    display: inline-block;
    float: left;
    margin-bottom: 0.3em;
}

#content .article-links .twitter-share {
    display: inline-block;
    float: right;
    margin-top: 0.2em;
    margin-bottom: 0.3em;
    font-size: 0.85em;
}

#content h1,
#content h2,
#content h3,
#content hr {
    clear: both;
}

#content h1 {
    margin-top: 0.2em;
    margin-bottom: 0.15em;
    font-size: 1.5em;
}

#content h2 {
    margin-top: 1em;
    margin-bottom: 0.1em;
    font-size: 1.5em;
}

#content h3 {
    text-decoration: underline;
    font-size: 1.2em;
}

#content h1,
#content h1 a,
#content h2,
#content h2 a,
#content h3,
#content h3 a {
    color: white;
}

#content h2,
#content h2 a {
    font-family: DuranGo, serif;
}

#content hr {
    margin-bottom: 0.6em;
}

#content p {
    font-size: 1em;
    margin-bottom: 0.8em;
}

#content ul,
#content ol {
    list-style-position: outside;
    margin-left: 1em;
    margin-bottom: 0.8em;
    font-size: 0.9em;
}

#content ul ul {
    font-size: 1em;
    margin-top: 0.2em;
    margin-left: 2em;
}

#content ul li,
#content ol li {
    margin-bottom: 0.2em;
}

#content ul ul li {
    margin-bottom: 0;
}

#content a {
    color: #3692e7;
}

#content a:hover {
    color: #57aeff;
}

#content p.list-title {
    margin-bottom: 0.3em;
}

#content strong {
    text-decoration: underline;
    margin-right: 0.75vh;
}

#content .list-of-links :not(h2) a {
    display: block;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    font-size: 1.2em;
    vertical-align: middle;
}

#content .list-of-links :not(h2) a img.icon {
    display: inline;
    width: 0.9em;
    height: auto;
}

#content .list-of-links :not(h2) a span {
    text-decoration: underline;
}

#content table {
    margin-bottom: 1em;
}

#content table,
#content th,
#content td {
    border: 1px solid white;
    border-collapse: collapse;
}

#content th,
#content td {
    padding: 0.5em;
}

#call-to-action {
    background: #202930;
    text-align: center;
    padding: 1em;
    padding-top: 1.2em;
    color: white;
}

#call-to-action h2 {
    margin-bottom: 0.3em;
}

#call-to-action p {
    font-family: Nunito, sans-serif;
    margin-bottom: 0.8em;
}

#call-to-action .play canvas {
    width: 40%;
    min-width: 200px;
    filter: drop-shadow(0 0 20px rgba(0, 0, 0, 0.6));
}

#call-to-action .play:hover canvas {
    filter: drop-shadow(0 0 12px rgba(255, 255, 255, 0.4));
}

.ranking {
    text-transform: uppercase;
    text-align: center;
    font-size: 2.2vh !important;
}

@media (max-width: 740px) {
    .ranking {
        font-size: 1.9vh !important;
    }
}

@media (max-width: 580px) {
    .ranking {
        font-size: 1.6vh !important;
    }
}

@media (max-width: 420px) {
    .ranking {
        font-size: 1.3vh !important;
    }
}

.ranking thead {
    background-color: #f3bd20;
}


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