wiki-grav/themes/quark/css-compiled/theme.css
2022-04-24 14:32:58 +02:00

407 lines
81 KiB
CSS

html { height: 100%; }
#body-wrapper .container { padding: 2rem 0 2rem; }
.header-fixed #body-wrapper { padding-top: 4rem; }
.header-fixed .hero + #start > #body-wrapper { padding-top: 0; }
section.section { padding-left: 1rem; padding-right: 1rem; position: relative; }
.overlay-light, .overlay-dark, .overlay-light-gradient, .overlay-dark-gradient { z-index: 0; }
.hero { display: -ms-flexbox; display: flex; -ms-flex-align: center; align-items: center; -ms-flex-pack: center; justify-content: center; padding-top: 6rem; padding-bottom: 7rem; background-size: cover; background-position: center; }
.hero h1 { color: #242931; font-size: 4rem; }
.hero h2 { color: rgba(36, 41, 49, 0.8); font-size: 2.5rem; }
.hero.hero-fullscreen { min-height: 100vh; }
.hero.hero-large { min-height: 500px; }
.hero.hero-medium { min-height: 400px; }
.hero.hero-small { min-height: 110px; }
.hero.hero-tiny { min-height: 8rem; }
.header-fixed .hero { background-position: 50% 0; }
@media (max-width: 840px) { .hero h1 { font-size: 3rem; }
.hero h2 { font-size: 1.75rem; } }
@media (max-width: 600px) { .hero h1 { font-size: 2rem; }
.hero h2 { font-size: 1.25rem; } }
.hero.text-light h1 { color: #fff; }
.hero.text-light h2 { color: rgba(255, 255, 255, 0.8); }
.hero p { font-size: .9rem; font-weight: 300; }
.hero #to-start { display: inline-block; position: absolute; bottom: 10px; font-size: 2rem; cursor: pointer; }
.image-overlay { position: absolute; top: 0; bottom: 0; left: 0; right: 0; z-index: -1; }
.overlay-light .image-overlay { background: rgba(255, 255, 255, 0.4); }
.overlay-light-gradient .image-overlay { background: linear-gradient(to bottom, rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 0.2)); }
.overlay-dark .image-overlay { background: rgba(0, 0, 0, 0.4); }
.overlay-dark-gradient .image-overlay { background: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.2)); }
html { font-size: 16px; }
@media screen and (min-width: 480px) { html { font-size: calc(16px + 4 * ((100vw - 480px) / 800)); } }
@media screen and (min-width: 1280px) { html { font-size: 20px; } }
h1, h2, h3, h4, h5, h6 { margin-top: 2rem; font-family: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif; color: #3a414e; }
h1, .h1 { font-size: 3rem; }
h2, .h2 { font-size: 1.8rem; }
h6, .h6 { font-weight: 400; }
.title-center h1, .title-center h2 { text-align: center; }
.title-h1h2 h1 { font-weight: 100; margin-bottom: 0; line-height: 1.1; }
.title-h1h2 h1 strong, .title-h1h2 h1 bold { font-weight: 400; }
.title-h1h2 h1 + h2 { line-height: 1.1; margin-top: 0; }
.title-h1h2 h1 + h2, .title-center h1 + h2 { margin-bottom: 50px; font-weight: 700; }
a:focus { outline: none !important; box-shadow: none !important; }
img { max-width: 100%; }
.table table { border-spacing: 0; border-collapse: collapse; width: 100%; }
pre code, pre.xdebug-var-dump { background: #fafafa; display: block; padding: 1rem !important; line-height: 1.5; color: inherit; border-radius: 2px; overflow-x: auto; }
pre[class*="language-"] code { border-radius: inherit; padding: 0 !important; overflow-x: initial; }
pre code:not(.hljs):not([class*="language-"]) { background: #f8f8f8; }
i.fa.fa-heart.pulse, i.fa.fa-heart-o.pulse { color: #920; }
b, strong { font-weight: 700; }
.heavy { font-weight: 700; }
.light { font-weight: 200; }
.text-light { color: rgba(255, 255, 255, 0.8); }
.text-light h1, .text-light h2, .text-light h3, .text-light h4, .text-light h5, .text-light h6 { color: rgba(255, 255, 255, 0.9); }
#error { text-align: center; position: relative; margin-top: 5rem; }
#error .icon { font-size: 50px; }
#messages { margin-bottom: 1rem; }
#messages .icon { font-size: 1rem; }
ul, ol { margin-left: 1.6rem; }
ul ul, ul ol, ol ul, ol ol { margin-left: 1.6rem; }
ul { list-style: disc outside; }
ol { list-style: decimal outside; }
.notices { margin: 1.5rem 0; }
.notices p { margin: 1rem 0; }
form { /** Reset some defaults for Quark Theme **/ }
form .button-wrapper { margin-top: 0.75rem; margin-bottom: 1rem; }
form span.required { color: #e85600; font-weight: 700; font-size: 1.2rem; }
form .form-input[type=range] { -webkit-appearance: slider-horizontal; -moz-appearance: slider-horizontal; appearance: slider-horizontal; }
form .form-input[type=range]:focus { box-shadow: none; border: none; }
form .form-group:not(.form-field-toggleable) .checkboxes { display: inherit; }
form .form-group:not(.form-field-toggleable) .checkboxes label { display: inherit; padding: 0.1rem 0.4rem 0.1rem 1.2rem; margin: inherit; }
form .form-group:not(.form-field-toggleable) .checkboxes label:before { display: none; }
#grav-login > form { margin: 2rem auto 0; max-width: 350px; }
#grav-login .form-label { display: none; }
#grav-login .form-data { margin: 1rem 0; }
#grav-login .form-input { text-align: center; }
#grav-login .button-wrapper { text-align: right; }
#grav-login .button-wrapper .form-data.rememberme { margin: 0; float: left; }
#grav-login .login-form button[type="submit"] { background: #3085EE; border-color: #227ded; color: #fff; }
#grav-login .login-form button[type="submit"]:focus, #grav-login .login-form button[type="submit"]:hover { background: #1877ec; border-color: #1370e3; color: #fff; }
#grav-login .login-form button[type="submit"]:active, #grav-login .login-form button[type="submit"].active { background: #1372e7; border-color: #126bd9; color: #fff; }
#grav-login .twofa-form button[type="submit"]:first-child { background: #3085EE; border-color: #227ded; color: #fff; float: right; margin-left: 4px; }
#grav-login .twofa-form button[type="submit"]:first-child:focus, #grav-login .twofa-form button[type="submit"]:first-child:hover { background: #1877ec; border-color: #1370e3; color: #fff; }
#grav-login .twofa-form button[type="submit"]:first-child:active, #grav-login .twofa-form button[type="submit"]:first-child.active { background: #1372e7; border-color: #126bd9; color: #fff; }
.mobile-container { position: absolute; top: 40%; left: 0; margin: 0 auto; z-index: 2; }
.mobile-logo svg, .mobile-logo img { height: 42px; margin-top: .7rem; margin-left: 1.4rem; }
.mobile-logo svg path, .mobile-logo img path { fill: #fff; }
.mobile-menu { display: none; top: 0; right: 0; z-index: 3; }
.header-fixed .mobile-menu { position: fixed; }
@media (max-width: 840px) { .mobile-menu { display: block; } }
.mobile-menu .button_container { position: absolute; top: 1.3rem; right: 1rem; height: 24px; width: 28px; cursor: pointer; z-index: 100; transition: opacity .25s ease, top 0.5s ease; }
.mobile-menu .button_container:hover { opacity: .7; }
.mobile-menu .button_container.active { position: fixed; }
.mobile-menu .button_container.active .top { transform: translateY(8px) translateX(0) rotate(45deg); background: #FFF; }
.mobile-menu .button_container.active .middle { opacity: 0; background: #FFF; }
.mobile-menu .button_container.active .bottom { transform: translateY(-8px) translateX(0) rotate(-45deg); background: #FFF; }
.mobile-menu .button_container span { background: #3085EE; border: none; height: 4px; width: 100%; position: absolute; top: 0; left: 0; transition: all .35s ease; cursor: pointer; }
.mobile-menu .button_container span:nth-of-type(2) { top: 8px; }
.mobile-menu .button_container span:nth-of-type(3) { top: 16px; }
.overlay { position: fixed; background: #000; top: 0; left: 0; width: 100%; height: 0%; opacity: 0; visibility: hidden; transition: opacity .35s, visibility .35s, height .35s; }
.overlay.open { opacity: .95; visibility: visible; height: 100%; }
.overlay nav { position: relative; margin: 0 auto; text-align: center; }
.overlay-menu { height: calc(100% - 90px); overflow-y: scroll; }
.overlay-menu > .tree { text-align: left; }
.treemenu.treemenu-root { margin: 1rem; }
.treemenu li { list-style: none; margin: 0 0 1px; padding: 5px 0; line-height: 1.2rem; background: rgba(102, 113, 137, 0.1); }
.treemenu li a { display: block; margin-left: 1.2rem; font-size: 1rem; }
.treemenu li a:hover, .treemenu li a:focus, .treemenu li a.active { color: #3e8def !important; text-decoration: none; }
.treemenu ul { margin: 0 0 0 1rem; }
.treemenu .toggler { cursor: pointer; vertical-align: top; font-size: 1.1rem; line-height: 1rem; padding-left: 5px; float: left; }
.treemenu .toggler:before { display: inline-block; margin-right: 2pt; }
.treemenu li.tree-empty > .toggler { opacity: 0.3; cursor: default; }
.treemenu li.tree-empty > .toggler:before { content: "\2022"; }
.treemenu li.tree-closed > .toggler:before { content: "+"; }
.treemenu li.tree-opened > .toggler:before { content: "\2212"; }
.mobile-nav-open { overflow-y: hidden; }
.default-animation, #header, #header .navbar-section, #header .logo svg, #header .logo img, .modular-features.small .feature-icon i, .modular-features .feature-icon { transition: all 0.5s ease; }
.pulse { animation-name: pulse_animation; animation-duration: 2000ms; transform-origin: 70% 70%; animation-iteration-count: infinite; animation-timing-function: linear; }
@keyframes pulse_animation { 0% { transform: scale(1); }
30% { transform: scale(1); }
40% { transform: scale(1.08); }
50% { transform: scale(1); }
60% { transform: scale(1); }
70% { transform: scale(1.05); }
80% { transform: scale(1); }
100% { transform: scale(1); } }
#header { width: 100%; height: 4rem; border-bottom: 1px solid rgba(172, 179, 194, 0.2); font-size: 0.7rem; font-weight: 700; background: #fff; color: #454d5d; }
#header a { color: #454d5d; }
#header .logo svg path { fill: #222; }
.header-dark #header:not(.scrolled) { background: #222; color: #fff; }
.header-dark #header:not(.scrolled) a { color: rgba(255, 255, 255, 0.7) !important; }
.header-dark #header:not(.scrolled) a.active { color: #fff !important; }
.header-dark #header:not(.scrolled) .dropmenu ul ul a { color: #454d5d !important; }
.header-dark #header:not(.scrolled) .logo svg path { fill: #fff; }
.header-dark.header-transparent #header:not(.scrolled) { background: rgba(0, 0, 0, 0.05); }
.header-transparent #header:not(.scrolled) { background: rgba(255, 255, 255, 0.05); }
#header .navbar-section { height: 4rem; }
@media (max-width: 840px) { #header .navbar-section { margin-right: 2rem; } }
@media (max-width: 840px) { #header .navbar-section.desktop-menu { display: none; } }
#header .logo svg, #header .logo img { height: 42px; display: inherit; }
.header-fixed #header { position: fixed; top: 0; z-index: 2; }
body.header-fixed.header-animated #header.scrolled { height: 2.3rem; }
body.header-fixed.header-animated #header.scrolled .navbar-section { height: 2.3rem; }
body.header-fixed.header-animated #header.scrolled .logo svg, body.header-fixed.header-animated #header.scrolled .logo img { height: 28px; }
body.header-fixed.header-animated #header.scrolled ~ .mobile-menu .button_container { top: 0.5rem; }
.login-status-wrapper { white-space: nowrap; }
body.sticky-footer { height: 100%; min-height: 100vh; display: -ms-flexbox; display: flex; -ms-flex-direction: column; flex-direction: column; }
body.sticky-footer #page-wrapper { -ms-flex: 1 0 auto; flex: 1 0 auto; }
#footer { color: #acb3c2; padding: 1rem 1rem 0; text-align: center; }
@media (max-width: 840px) { .dropmenu { display: none; } }
.dropmenu ul { white-space: nowrap; margin: 0; display: -ms-flexbox; display: flex; }
.dropmenu ul li { position: relative; margin: 0; }
.dropmenu ul li a { text-decoration: none; padding: 7px 30px 7px 20px; display: block; }
.dropmenu ul li a:hover, .dropmenu ul li a:focus, .dropmenu ul li a.active { color: #3085EE !important; }
.dropmenu ul li a:before { content: '\f107'; font-family: 'FontAwesome'; display: inline-block; vertical-align: middle; float: right; margin-right: -20px; }
.dropmenu ul li a:only-child { padding-right: 20px; }
.dropmenu ul li a:only-child:before { content: ''; }
.dropmenu ul li:hover > ul { display: block; visibility: visible; }
.dropmenu ul ul li a:before { content: '\f105'; }
.dropmenu ul ul { position: absolute; top: 100%; list-style: none; background: #fff; box-shadow: 0 3px 5px rgba(0, 0, 0, 0.1); visibility: hidden; }
.dropmenu ul ul ul { position: absolute; left: 100%; top: 0; }
.dropmenu > ul > li { display: inline-block; }
.dropmenu.animated ul li { transition: background .7s, color 0.5s; }
.dropmenu.animated ul li:hover > ul { opacity: 1; transform: translateY(0); }
.dropmenu.animated ul ul { transition: transform .3s, opacity .5s; opacity: 0; transform: translateY(-10px); }
/** Extra columns spacing **/
.extra-spacing:not(.col-12), :not(.col12) > .e-content { padding-right: 1rem; }
@media (max-width: 840px) { .extra-spacing:not(.col-12), :not(.col12) > .e-content { padding-right: 0; } }
/** Breadcrumbs styling **/
#breadcrumbs { padding-left: 0; display: -ms-flexbox; display: flex; -ms-flex-align: center; align-items: center; margin-top: -1rem; margin-bottom: 1rem; }
#breadcrumbs i { display: none; }
#breadcrumbs span, #breadcrumbs a { padding: 0 0.5rem; }
#breadcrumbs span:first-child, #breadcrumbs a:first-child { padding-left: 0; }
#breadcrumbs span:not(:first-child)::before, #breadcrumbs a:not(:first-child)::before { color: #e7e9ed; content: "/"; padding-right: 1rem; }
/** Blog Listing **/
.blog-listing .bricklayer-column { padding-left: 0px; padding-right: 25px; }
.blog-listing .card { margin-bottom: 25px; border: 0; box-shadow: 0 10px 45px -9px rgba(0, 0, 0, 0.1); }
.blog-listing .card-footer { text-align: right; }
.blog-listing .blog-date { font-size: 13px; }
/** Blog Item **/
.content-title { margin-bottom: 2rem; }
.content-title h2 { margin-bottom: 0.5rem; }
.label { font-size: 12px; text-transform: uppercase; }
/** Pagination **/
ul.pagination { -ms-flex-pack: center; justify-content: center; }
.prev-next { margin-top: 4rem; }
/** Sidebar specific tweaks **/
#sidebar ul.related-pages { box-shadow: none; padding: 0; z-index: 1; }
#sidebar ul.related-pages li { border-bottom: 1px solid #e7e9ed; }
#sidebar ul.related-pages li:last-child { border-bottom: 0; }
#sidebar ul.archives { list-style: none; margin-left: 0; }
#sidebar ul.archives .label { vertical-align: text-top; }
.modular-hero #to-start { bottom: 3.5rem; }
.modular-features { text-align: center; }
.modular-features.offset-box .frame-box { margin: -3rem -1.4rem 3rem; padding: 1rem 1rem; background: #fff; box-shadow: 0 0 75px 0 rgba(69, 77, 93, 0.1); }
.modular-features.small .columns { margin-top: -1rem; }
.modular-features.small .column:hover .feature-icon i { color: #3085EE; }
.modular-features.small .feature-icon { display: block; -ms-flex-pack: left; justify-content: left; }
.modular-features.small .feature-icon i { position: relative; display: inherit; font-size: 70px; margin: 0 auto 1rem; transform: none; left: auto; top: auto; color: #acb3c2; }
.modular-features.small .feature-icon h6 { text-transform: none; }
.modular-features .frame-box { padding: 3rem 0; }
.modular-features .frame-box > p { max-width: 600px; margin-left: auto; margin-right: auto; }
.modular-features .column { padding: 1rem; }
.modular-features .column:hover .feature-icon { color: #acb3c2; }
.modular-features .column:hover .feature-icon h6 { color: #3085EE; }
.modular-features .column:hover .feature-content { color: #667189; }
.modular-features .feature-icon { font-size: 130px; height: 100px; color: #e7e9ed; display: -ms-flexbox; display: flex; -ms-flex-align: center; align-items: center; -ms-flex-pack: center; justify-content: center; position: relative; margin: 1rem 0; }
.modular-features .feature-icon i { position: absolute; left: 50%; top: 50%; transform: translateX(-50%) translateY(-50%); }
.modular-features .feature-icon h6 { background: #fff; line-height: 1; z-index: 1; text-transform: uppercase; font-weight: 600; margin: 0; display: block; color: #667189; }
.modular-features .feature-content { color: #acb3c2; }
.modular-text { padding-top: 4rem; padding-bottom: 4rem; }
.modular-text .columns.left { -ms-flex-direction: row-reverse; flex-direction: row-reverse; }
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUuY3NzIiwic291cmNlcyI6WyJ0aGVtZS5zY3NzIiwidGhlbWUvX3ZhcmlhYmxlcy5zY3NzIiwic3BlY3RyZS9fdmFyaWFibGVzLnNjc3MiLCJzcGVjdHJlL19taXhpbnMuc2NzcyIsInNwZWN0cmUvbWl4aW5zL19hdmF0YXIuc2NzcyIsInNwZWN0cmUvbWl4aW5zL19idXR0b24uc2NzcyIsInNwZWN0cmUvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwic3BlY3RyZS9taXhpbnMvX2NvbG9yLnNjc3MiLCJzcGVjdHJlL21peGlucy9fbGFiZWwuc2NzcyIsInNwZWN0cmUvbWl4aW5zL19wb3NpdGlvbi5zY3NzIiwic3BlY3RyZS9taXhpbnMvX3NoYWRvdy5zY3NzIiwic3BlY3RyZS9taXhpbnMvX3RleHQuc2NzcyIsInNwZWN0cmUvbWl4aW5zL190b2FzdC5zY3NzIiwidGhlbWUvX2ZvbnRzLnNjc3MiLCJ0aGVtZS9fbWl4aW5zLnNjc3MiLCJ0aGVtZS9fZnJhbWV3b3JrLnNjc3MiLCJ0aGVtZS9fdHlwb2dyYXBoeS5zY3NzIiwidGhlbWUvX2Zvcm1zLnNjc3MiLCJ0aGVtZS9fbW9iaWxlLnNjc3MiLCJ0aGVtZS9fYW5pbWF0aW9uLnNjc3MiLCJ0aGVtZS9faGVhZGVyLnNjc3MiLCJ0aGVtZS9fZm9vdGVyLnNjc3MiLCJ0aGVtZS9fbWVudS5zY3NzIiwidGhlbWUvX2Jsb2cuc2NzcyIsInRoZW1lL19vbmVwYWdlLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29yZSB2YXJpYWJsZXMgYW5kIG1peGluc1xuQGltcG9ydCAndGhlbWUvdmFyaWFibGVzJztcbkBpbXBvcnQgJ3NwZWN0cmUvdmFyaWFibGVzJztcbkBpbXBvcnQgJ3NwZWN0cmUvbWl4aW5zJztcblxuQGltcG9ydCAndGhlbWUvZm9udHMnO1xuQGltcG9ydCAndGhlbWUvbWl4aW5zJztcbkBpbXBvcnQgJ3RoZW1lL2ZyYW1ld29yayc7XG5AaW1wb3J0ICd0aGVtZS90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJ3RoZW1lL2Zvcm1zJztcbkBpbXBvcnQgJ3RoZW1lL21vYmlsZSc7XG5AaW1wb3J0ICd0aGVtZS9hbmltYXRpb24nO1xuXG5AaW1wb3J0ICd0aGVtZS9oZWFkZXInO1xuQGltcG9ydCAndGhlbWUvZm9vdGVyJztcbkBpbXBvcnQgJ3RoZW1lL21lbnUnO1xuXG4vLyBFeHRyYSBTa2VsZXRvbiBTdHlsaW5nXG5AaW1wb3J0ICd0aGVtZS9ibG9nJztcbkBpbXBvcnQgJ3RoZW1lL29uZXBhZ2UnO1xuXG4iLCIvLyBTcGVjdHJlIE92ZXJyaWRlc1xuJHByaW1hcnktY29sb3I6ICMzMDg1RUUgIWRlZmF1bHQ7XG4kZGFyay1jb2xvcjogIzQ1NGQ1ZCAhZGVmYXVsdDtcbiRsaWdodC1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcbiRncmF5LWNvbG9yOiBsaWdodGVuKCRkYXJrLWNvbG9yLCA0MCUpICFkZWZhdWx0O1xuJGdyYXktY29sb3ItZGFyazogZGFya2VuKCRncmF5LWNvbG9yLCAyNSUpICFkZWZhdWx0O1xuJGJvcmRlci1jb2xvcjogbGlnaHRlbigkZGFyay1jb2xvciwgNjAlKSAhZGVmYXVsdDtcbiRiZy1jb2xvcjogbGlnaHRlbigkZGFyay1jb2xvciwgNjYlKSAhZGVmYXVsdDtcbiRib2R5LWZvbnQtY29sb3I6IGxpZ2h0ZW4oJGRhcmstY29sb3IsIDUlKSAhZGVmYXVsdDtcblxuLy8gTGF5b3V0XG4kaG9yaXotcGFkZGluZzogMXJlbTtcbiR2ZXJ0LXBhZGRpbmc6IDJyZW0gMCAycmVtO1xuXG4vLyBGb250c1xuJG1pbi1yZXNwb25zaXZlLWZvbnQtc2l6ZTogMTZweDtcblxuLy8gSGVhZGVyXG4kaGVhZGVyLWhlaWdodC1sYXJnZTogNHJlbTtcbiRoZWFkZXItaGVpZ2h0LXNtYWxsOiAyLjNyZW07XG4kaGVhZGVyLWNvbG9yLWRhcms6ICMyMjI7XG4kaGVhZGVyLXRleHQtbGlnaHQ6ICRsaWdodC1jb2xvcjtcbiRoZWFkZXItdGV4dC1kYXJrOiBkYXJrZW4oJGRhcmstY29sb3IsIDE1JSk7XG5cbi8vIERyb3Bkb3duIE1lbnVcbiRkcm9wbWVudS1iZzogJGxpZ2h0LWNvbG9yO1xuJGRyb3BtZW51LWhvdmVyLXRleHQ6ICRwcmltYXJ5LWNvbG9yO1xuJGRyb3BtZW51LWhvcml6LXBhZGRpbmc6IDIwcHg7XG4kZHJvcG1lbnUtdmVydC1wYWRkaW5nOiA3cHg7XG4kZHJvcG1lbnUtY2hpbGQtcGFkZGluZzogMTBweDtcbiRkcm9wbWVudS1zaGFkb3c6IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG5cbi8vIE1vYmlsZSBNZW51XG4kbW9iaWxlLWNvbG9yLW1haW46ICRwcmltYXJ5LWNvbG9yO1xuJG1vYmlsZS1jb2xvci1hY3RpdmU6ICNGRkY7XG4kbW9iaWxlLWNvbG9yLWxpbms6ICNGRkY7XG4kbW9iaWxlLWJ1dHRvbi1oZWlnaHQ6IDI0cHg7XG4kbW9iaWxlLWJ1dHRvbi13aWR0aDogMjhweDsiLCIvLyBDb3JlIHZhcmlhYmxlc1xuJHZlcnNpb246IFwiMC41LjhcIjtcblxuLy8gQ29yZSBmZWF0dXJlc1xuJHJ0bDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIENvcmUgY29sb3JzXG4kcHJpbWFyeS1jb2xvcjogIzU3NTVkOSAhZGVmYXVsdDtcbiRwcmltYXJ5LWNvbG9yLWRhcms6IGRhcmtlbigkcHJpbWFyeS1jb2xvciwgMyUpICFkZWZhdWx0O1xuJHByaW1hcnktY29sb3ItbGlnaHQ6IGxpZ2h0ZW4oJHByaW1hcnktY29sb3IsIDMlKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktY29sb3I6IGxpZ2h0ZW4oJHByaW1hcnktY29sb3IsIDM3LjUlKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktY29sb3ItZGFyazogZGFya2VuKCRzZWNvbmRhcnktY29sb3IsIDMlKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktY29sb3ItbGlnaHQ6IGxpZ2h0ZW4oJHNlY29uZGFyeS1jb2xvciwgMyUpICFkZWZhdWx0O1xuXG4vLyBHcmF5IGNvbG9yc1xuJGRhcmstY29sb3I6ICMzMDM3NDIgIWRlZmF1bHQ7XG4kbGlnaHQtY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS1jb2xvcjogbGlnaHRlbigkZGFyay1jb2xvciwgNTUlKSAhZGVmYXVsdDtcbiRncmF5LWNvbG9yLWRhcms6IGRhcmtlbigkZ3JheS1jb2xvciwgMzAlKSAhZGVmYXVsdDtcbiRncmF5LWNvbG9yLWxpZ2h0OiBsaWdodGVuKCRncmF5LWNvbG9yLCAyMCUpICFkZWZhdWx0O1xuXG4kYm9yZGVyLWNvbG9yOiBsaWdodGVuKCRkYXJrLWNvbG9yLCA2NSUpICFkZWZhdWx0O1xuJGJvcmRlci1jb2xvci1kYXJrOiBkYXJrZW4oJGJvcmRlci1jb2xvciwgMTAlKSAhZGVmYXVsdDtcbiRib3JkZXItY29sb3ItbGlnaHQ6IGxpZ2h0ZW4oJGJvcmRlci1jb2xvciwgOCUpICFkZWZhdWx0O1xuJGJnLWNvbG9yOiBsaWdodGVuKCRkYXJrLWNvbG9yLCA3NSUpICFkZWZhdWx0O1xuJGJnLWNvbG9yLWRhcms6IGRhcmtlbigkYmctY29sb3IsIDMlKSAhZGVmYXVsdDtcbiRiZy1jb2xvci1saWdodDogJGxpZ2h0LWNvbG9yICFkZWZhdWx0O1xuXG4vLyBDb250cm9sIGNvbG9yc1xuJHN1Y2Nlc3MtY29sb3I6ICMzMmI2NDMgIWRlZmF1bHQ7XG4kd2FybmluZy1jb2xvcjogI2ZmYjcwMCAhZGVmYXVsdDtcbiRlcnJvci1jb2xvcjogI2U4NTYwMCAhZGVmYXVsdDtcblxuLy8gT3RoZXIgY29sb3JzXG4kY29kZS1jb2xvcjogI2Q3M2U0OCAhZGVmYXVsdDtcbiRoaWdobGlnaHQtY29sb3I6ICNmZmU5YjMgIWRlZmF1bHQ7XG4kYm9keS1iZzogJGJnLWNvbG9yLWxpZ2h0ICFkZWZhdWx0O1xuJGJvZHktZm9udC1jb2xvcjogbGlnaHRlbigkZGFyay1jb2xvciwgNSUpICFkZWZhdWx0O1xuJGxpbmstY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJGxpbmstY29sb3ItZGFyazogZGFya2VuKCRsaW5rLWNvbG9yLCAxMCUpICFkZWZhdWx0O1xuJGxpbmstY29sb3ItbGlnaHQ6IGxpZ2h0ZW4oJGxpbmstY29sb3IsIDEwJSkgIWRlZmF1bHQ7XG5cbi8vIEZvbnRzXG4vLyBDcmVkaXQ6IGh0dHBzOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTUvMTEvdXNpbmctc3lzdGVtLXVpLWZvbnRzLXByYWN0aWNhbC1ndWlkZS9cbiRiYXNlLWZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBzeXN0ZW0tdWksIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8gIWRlZmF1bHQ7XG4kbW9uby1mb250LWZhbWlseTogXCJTRiBNb25vXCIsIFwiU2Vnb2UgVUkgTW9ub1wiLCBcIlJvYm90byBNb25vXCIsIE1lbmxvLCBDb3VyaWVyLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4kZmFsbGJhY2stZm9udC1mYW1pbHk6IFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRjamstemgtaGFucy1mb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHksIFwiUGluZ0ZhbmcgU0NcIiwgXCJIaXJhZ2lubyBTYW5zIEdCXCIsIFwiTWljcm9zb2Z0IFlhSGVpXCIsICRmYWxsYmFjay1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjamstemgtaGFudC1mb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHksIFwiUGluZ0ZhbmcgVENcIiwgXCJIaXJhZ2lubyBTYW5zIENOU1wiLCBcIk1pY3Jvc29mdCBKaGVuZ0hlaVwiLCAkZmFsbGJhY2stZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY2prLWpwLWZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseSwgXCJIaXJhZ2lubyBTYW5zXCIsIFwiSGlyYWdpbm8gS2FrdSBHb3RoaWMgUHJvXCIsIFwiWXUgR290aGljXCIsIFl1R290aGljLCBNZWlyeW8sICRmYWxsYmFjay1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjamsta28tZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5LCBcIk1hbGd1biBHb3RoaWNcIiwgJGZhbGxiYWNrLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGJvZHktZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5LCAkZmFsbGJhY2stZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbi8vIFVuaXQgc2l6ZXNcbiR1bml0LW86IC4wNXJlbSAhZGVmYXVsdDtcbiR1bml0LWg6IC4xcmVtICFkZWZhdWx0O1xuJHVuaXQtMTogLjJyZW0gIWRlZmF1bHQ7XG4kdW5pdC0yOiAuNHJlbSAhZGVmYXVsdDtcbiR1bml0LTM6IC42cmVtICFkZWZhdWx0O1xuJHVuaXQtNDogLjhyZW0gIWRlZmF1bHQ7XG4kdW5pdC01OiAxcmVtICFkZWZhdWx0O1xuJHVuaXQtNjogMS4ycmVtICFkZWZhdWx0O1xuJHVuaXQtNzogMS40cmVtICFkZWZhdWx0O1xuJHVuaXQtODogMS42cmVtICFkZWZhdWx0O1xuJHVuaXQtOTogMS44cmVtICFkZWZhdWx0O1xuJHVuaXQtMTA6IDJyZW0gIWRlZmF1bHQ7XG4kdW5pdC0xMjogMi40cmVtICFkZWZhdWx0O1xuJHVuaXQtMTY6IDMuMnJlbSAhZGVmYXVsdDtcblxuLy8gRm9udCBzaXplc1xuJGh0bWwtZm9udC1zaXplOiAyMHB4ICFkZWZhdWx0O1xuJGh0bWwtbGluZS1oZWlnaHQ6IDEuNSAhZGVmYXVsdDtcbiRmb250LXNpemU6IC44cmVtICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1zbTogLjdyZW0gIWRlZmF1bHQ7XG4kZm9udC1zaXplLWxnOiAuOXJlbSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodDogMS4ycmVtICFkZWZhdWx0O1xuXG4vLyBTaXplc1xuJGxheW91dC1zcGFjaW5nOiAkdW5pdC0yICFkZWZhdWx0O1xuJGxheW91dC1zcGFjaW5nLXNtOiAkdW5pdC0xICFkZWZhdWx0O1xuJGxheW91dC1zcGFjaW5nLWxnOiAkdW5pdC00ICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXM6ICR1bml0LWggIWRlZmF1bHQ7XG4kYm9yZGVyLXdpZHRoOiAkdW5pdC1vICFkZWZhdWx0O1xuJGJvcmRlci13aWR0aC1sZzogJHVuaXQtaCAhZGVmYXVsdDtcbiRjb250cm9sLXNpemU6ICR1bml0LTkgIWRlZmF1bHQ7XG4kY29udHJvbC1zaXplLXNtOiAkdW5pdC03ICFkZWZhdWx0O1xuJGNvbnRyb2wtc2l6ZS1sZzogJHVuaXQtMTAgIWRlZmF1bHQ7XG4kY29udHJvbC1wYWRkaW5nLXg6ICR1bml0LTIgIWRlZmF1bHQ7XG4kY29udHJvbC1wYWRkaW5nLXgtc206ICR1bml0LTIgKiAuNzUgIWRlZmF1bHQ7XG4kY29udHJvbC1wYWRkaW5nLXgtbGc6ICR1bml0LTIgKiAxLjUgIWRlZmF1bHQ7XG4kY29udHJvbC1wYWRkaW5nLXk6ICgkY29udHJvbC1zaXplIC0gJGxpbmUtaGVpZ2h0KSAvIDIgLSAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNvbnRyb2wtcGFkZGluZy15LXNtOiAoJGNvbnRyb2wtc2l6ZS1zbSAtICRsaW5lLWhlaWdodCkgLyAyIC0gJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjb250cm9sLXBhZGRpbmcteS1sZzogKCRjb250cm9sLXNpemUtbGcgLSAkbGluZS1oZWlnaHQpIC8gMiAtICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY29udHJvbC1pY29uLXNpemU6IC44cmVtICFkZWZhdWx0O1xuXG4kY29udHJvbC13aWR0aC14czogMTgwcHggIWRlZmF1bHQ7XG4kY29udHJvbC13aWR0aC1zbTogMzIwcHggIWRlZmF1bHQ7XG4kY29udHJvbC13aWR0aC1tZDogNjQwcHggIWRlZmF1bHQ7XG4kY29udHJvbC13aWR0aC1sZzogOTYwcHggIWRlZmF1bHQ7XG4kY29udHJvbC13aWR0aC14bDogMTI4MHB4ICFkZWZhdWx0O1xuXG4vLyBSZXNwb25zaXZlIGJyZWFrcG9pbnRzXG4kc2l6ZS14czogNDgwcHggIWRlZmF1bHQ7XG4kc2l6ZS1zbTogNjAwcHggIWRlZmF1bHQ7XG4kc2l6ZS1tZDogODQwcHggIWRlZmF1bHQ7XG4kc2l6ZS1sZzogOTYwcHggIWRlZmF1bHQ7XG4kc2l6ZS14bDogMTI4MHB4ICFkZWZhdWx0O1xuJHNpemUtMng6IDE0NDBweCAhZGVmYXVsdDtcblxuJHJlc3BvbnNpdmUtYnJlYWtwb2ludDogJHNpemUteHMgIWRlZmF1bHQ7XG5cbi8vIFotaW5kZXhcbiR6aW5kZXgtMDogMSAhZGVmYXVsdDtcbiR6aW5kZXgtMTogMTAwICFkZWZhdWx0O1xuJHppbmRleC0yOiAyMDAgIWRlZmF1bHQ7XG4kemluZGV4LTM6IDMwMCAhZGVmYXVsdDtcbiR6aW5kZXgtNDogNDAwICFkZWZhdWx0O1xuIiwiLy8gTWl4aW5zXG5AaW1wb3J0IFwibWl4aW5zL2F2YXRhclwiO1xuQGltcG9ydCBcIm1peGlucy9idXR0b25cIjtcbkBpbXBvcnQgXCJtaXhpbnMvY2xlYXJmaXhcIjtcbkBpbXBvcnQgXCJtaXhpbnMvY29sb3JcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGFiZWxcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcG9zaXRpb25cIjtcbkBpbXBvcnQgXCJtaXhpbnMvc2hhZG93XCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdG9hc3RcIjsiLCIvLyBBdmF0YXIgbWl4aW5cbkBtaXhpbiBhdmF0YXItYmFzZSgkc2l6ZTogJHVuaXQtOCkge1xuICBmb250LXNpemU6ICRzaXplIC8gMjtcbiAgaGVpZ2h0OiAkc2l6ZTtcbiAgd2lkdGg6ICRzaXplO1xufVxuIiwiLy8gQnV0dG9uIHZhcmlhbnQgbWl4aW5cbkBtaXhpbiBidXR0b24tdmFyaWFudCgkY29sb3I6ICRwcmltYXJ5LWNvbG9yKSB7XG4gIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAzJSk7XG4gIGNvbG9yOiAkbGlnaHQtY29sb3I7XG4gICY6Zm9jdXMge1xuICAgIEBpbmNsdWRlIGNvbnRyb2wtc2hhZG93KCRjb2xvcik7XG4gIH1cbiAgJjpmb2N1cyxcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogZGFya2VuKCRjb2xvciwgMiUpO1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRjb2xvciwgNSUpO1xuICAgIGNvbG9yOiAkbGlnaHQtY29sb3I7XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJGNvbG9yLCA3JSk7XG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICAgIGNvbG9yOiAkbGlnaHQtY29sb3I7XG4gIH1cbiAgJi5sb2FkaW5nIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkbGlnaHQtY29sb3I7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJGxpZ2h0LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkY29sb3I6ICRwcmltYXJ5LWNvbG9yKSB7XG4gIGJhY2tncm91bmQ6ICRsaWdodC1jb2xvcjtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gIGNvbG9yOiAkY29sb3I7XG4gICY6Zm9jdXMge1xuICAgIEBpbmNsdWRlIGNvbnRyb2wtc2hhZG93KCRjb2xvcik7XG4gIH1cbiAgJjpmb2N1cyxcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogbGlnaHRlbigkY29sb3IsIDUwJSk7XG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAyJSk7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICBib3JkZXItY29sb3I6IGRhcmtlbigkY29sb3IsIDUlKTtcbiAgICBjb2xvcjogJGxpZ2h0LWNvbG9yO1xuICB9XG4gICYubG9hZGluZyB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yO1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENsZWFyZml4IG1peGluXG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICB9XG59XG4iLCIvLyBCYWNrZ3JvdW5kIGNvbG9yIHV0aWxpdHkgbWl4aW5cbkBtaXhpbiBiZy1jb2xvci12YXJpYW50KCRuYW1lOiBcIi5iZy1wcmltYXJ5XCIsICRjb2xvcjogJHByaW1hcnktY29sb3IpIHtcbiAgI3skbmFtZX0ge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvciAhaW1wb3J0YW50O1xuXG4gICAgQGlmIChsaWdodG5lc3MoJGNvbG9yKSA8IDYwKSB7XG4gICAgICBjb2xvcjogJGxpZ2h0LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4vLyBUZXh0IGNvbG9yIHV0aWxpdHkgbWl4aW5cbkBtaXhpbiB0ZXh0LWNvbG9yLXZhcmlhbnQoJG5hbWU6IFwiLnRleHQtcHJpbWFyeVwiLCAkY29sb3I6ICRwcmltYXJ5LWNvbG9yKSB7XG4gICN7JG5hbWV9IHtcbiAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cblxuICBhI3skbmFtZX0ge1xuICAgICY6Zm9jdXMsXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgNSUpO1xuICAgIH1cbiAgICAmOnZpc2l0ZWQge1xuICAgICAgY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLCA1JSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBMYWJlbCBiYXNlIHN0eWxlXG5AbWl4aW4gbGFiZWwtYmFzZSgpIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBwYWRkaW5nOiAuMXJlbSAuMnJlbTtcbn1cblxuQG1peGluIGxhYmVsLXZhcmlhbnQoJGNvbG9yOiAkbGlnaHQtY29sb3IsICRiZy1jb2xvcjogJHByaW1hcnktY29sb3IpIHtcbiAgYmFja2dyb3VuZDogJGJnLWNvbG9yO1xuICBjb2xvcjogJGNvbG9yO1xufVxuIiwiLy8gTWFyZ2luIHV0aWxpdHkgbWl4aW5cbkBtaXhpbiBtYXJnaW4tdmFyaWFudCgkaWQ6IDEsICRzaXplOiAkdW5pdC0xKSB7XG4gIC5tLSN7JGlkfSB7XG4gICAgbWFyZ2luOiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1iLSN7JGlkfSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNpemUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5tbC0jeyRpZH0ge1xuICAgIG1hcmdpbi1sZWZ0OiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1yLSN7JGlkfSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm10LSN7JGlkfSB7XG4gICAgbWFyZ2luLXRvcDogJHNpemUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teC0jeyRpZH0ge1xuICAgIG1hcmdpbi1sZWZ0OiAkc2l6ZSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1yaWdodDogJHNpemUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5teS0jeyRpZH0ge1xuICAgIG1hcmdpbi1ib3R0b206ICRzaXplICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXRvcDogJHNpemUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyBQYWRkaW5nIHV0aWxpdHkgbWl4aW5cbkBtaXhpbiBwYWRkaW5nLXZhcmlhbnQoJGlkOiAxLCAkc2l6ZTogJHVuaXQtMSkge1xuICAucC0jeyRpZH0ge1xuICAgIHBhZGRpbmc6ICRzaXplICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGItI3skaWR9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNpemUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wbC0jeyRpZH0ge1xuICAgIHBhZGRpbmctbGVmdDogJHNpemUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wci0jeyRpZH0ge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRzaXplICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucHQtI3skaWR9IHtcbiAgICBwYWRkaW5nLXRvcDogJHNpemUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5weC0jeyRpZH0ge1xuICAgIHBhZGRpbmctbGVmdDogJHNpemUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG4gIFxuICAucHktI3skaWR9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNpemUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXRvcDogJHNpemUgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLy8gQ29tcG9uZW50IGZvY3VzIHNoYWRvd1xuQG1peGluIGNvbnRyb2wtc2hhZG93KCRjb2xvcjogJHByaW1hcnktY29sb3IpIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgLjFyZW0gcmdiYSgkY29sb3IsIC4yKTtcbn1cblxuLy8gU2hhZG93IG1peGluXG5AbWl4aW4gc2hhZG93LXZhcmlhbnQoJG9mZnNldCkge1xuICBib3gtc2hhZG93OiAwICRvZmZzZXQgKCRvZmZzZXQgKyAuMDVyZW0pICogMiByZ2JhKCRkYXJrLWNvbG9yLCAuMyk7XG59XG4iLCIvLyBUZXh0IEVsbGlwc2lzXG5AbWl4aW4gdGV4dC1lbGxpcHNpcygpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBUb2FzdCB2YXJpYW50IG1peGluXG5AbWl4aW4gdG9hc3QtdmFyaWFudCgkY29sb3I6ICRkYXJrLWNvbG9yKSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoJGNvbG9yLCAuOTUpO1xuICBib3JkZXItY29sb3I6ICRjb2xvcjtcbn1cbiIsIiR0aXRsZS1mb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHksICRmYWxsYmFjay1mb250LWZhbWlseSAhZGVmYXVsdDsiLCJAbWl4aW4gYnJlYWtwb2ludCgkcG9pbnQpIHtcbiAgQGlmICRwb2ludCA9PSAyeCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6JHNpemUtMngpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkcG9pbnQgPT0geGwge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2l6ZS14bCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gIH0gQGVsc2UgaWYgJHBvaW50ID09IGxnIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNpemUtbGcpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkcG9pbnQgPT0gbWQge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2l6ZS1tZCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRwb2ludCA9PSBzbSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzaXplLXNtKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJHBvaW50ID09IHhzIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNpemUteHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSAgQGVsc2Uge1xuICAgIEB3YXJuIFwiQnJlYWtwb2ludCBtaXhpbiBzdXBwb3J0czogeHMsIHNtLCBtZCwgbGcsIHhsLCAyeFwiO1xuICB9XG59XG5cbkBtaXhpbiB2ZXJ0aWNhbC1hbGlnbigkcG9zaXRpb246IHJlbGF0aXZlKSB7XG4gIHBvc2l0aW9uOiAkcG9zaXRpb247XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbkBtaXhpbiBidXR0b24tcHJpbWFyeSgpIHtcbiAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gIGJvcmRlci1jb2xvcjogJHByaW1hcnktY29sb3ItZGFyaztcbiAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgJjpmb2N1cyxcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogZGFya2VuKCRwcmltYXJ5LWNvbG9yLWRhcmssIDIlKTtcbiAgICBib3JkZXItY29sb3I6IGRhcmtlbigkcHJpbWFyeS1jb2xvci1kYXJrLCA1JSk7XG4gICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgfVxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6IGRhcmtlbigkcHJpbWFyeS1jb2xvci1kYXJrLCA0JSk7XG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJHByaW1hcnktY29sb3ItZGFyaywgNyUpO1xuICAgIGNvbG9yOiAkbGlnaHQtY29sb3I7XG4gIH1cbn1cblxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJHZhbHVlKSB7XG4gIEByZXR1cm4gJHZhbHVlIC8gKCR2YWx1ZSAqIDAgKyAxKTtcbn1cblxuQG1peGluIGZsdWlkLXR5cGUoJG1pbi12dywgJG1heC12dywgJG1pbi1mb250LXNpemUsICRtYXgtZm9udC1zaXplKSB7XG4gICR1MTogdW5pdCgkbWluLXZ3KTtcbiAgJHUyOiB1bml0KCRtYXgtdncpO1xuICAkdTM6IHVuaXQoJG1pbi1mb250LXNpemUpO1xuICAkdTQ6IHVuaXQoJG1heC1mb250LXNpemUpO1xuXG4gIEBpZiAkdTEgPT0gJHUyIGFuZCAkdTEgPT0gJHUzIGFuZCAkdTEgPT0gJHU0IHtcbiAgICAmIHtcbiAgICAgIGZvbnQtc2l6ZTogJG1pbi1mb250LXNpemU7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWluLXZ3KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2FsYygjeyRtaW4tZm9udC1zaXplfSArICN7c3RyaXAtdW5pdCgkbWF4LWZvbnQtc2l6ZSAtICRtaW4tZm9udC1zaXplKX0gKiAoKDEwMHZ3IC0gI3skbWluLXZ3fSkgLyAje3N0cmlwLXVuaXQoJG1heC12dyAtICRtaW4tdncpfSkpO1xuICAgICAgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1heC12dykge1xuICAgICAgICBmb250LXNpemU6ICRtYXgtZm9udC1zaXplO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiaHRtbCB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuI2JvZHktd3JhcHBlciB7XG4gIC5jb250YWluZXIge1xuICAgIHBhZGRpbmc6ICR2ZXJ0LXBhZGRpbmc7XG4gIH1cblxuICAvLyBGaXhlZCBIZWFkZXIgc29sdXRpb25cbiAgLmhlYWRlci1maXhlZCAmIHtcbiAgICBwYWRkaW5nLXRvcDogJGhlYWRlci1oZWlnaHQtbGFyZ2U7XG4gIH1cbn1cblxuLmhlYWRlci1maXhlZCB7XG4gIC5oZXJvICsgI3N0YXJ0ID4gI2JvZHktd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbn1cblxuc2VjdGlvbi5zZWN0aW9uIHtcbiAgcGFkZGluZy1sZWZ0OiAkaG9yaXotcGFkZGluZztcbiAgcGFkZGluZy1yaWdodDogJGhvcml6LXBhZGRpbmc7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLm92ZXJsYXktbGlnaHQsIC5vdmVybGF5LWRhcmssIC5vdmVybGF5LWxpZ2h0LWdyYWRpZW50LCAub3ZlcmxheS1kYXJrLWdyYWRpZW50IHtcbiAgei1pbmRleDogMDtcbn1cblxuLy8gSGVyb1xuLmhlcm8ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICBwYWRkaW5nLXRvcDogNnJlbTtcbiAgcGFkZGluZy1ib3R0b206IDdyZW07XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcblxuICBoMSB7XG4gICAgY29sb3I6ICRoZWFkZXItdGV4dC1kYXJrO1xuICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgfVxuXG4gIGgyIHtcbiAgICBjb2xvcjogcmdiYSgkaGVhZGVyLXRleHQtZGFyaywgMC44KTtcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgfVxuXG4gICYuaGVyby1mdWxsc2NyZWVuIHtcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgfVxuXG4gICYuaGVyby1sYXJnZSB7XG4gICAgbWluLWhlaWdodDogNTAwcHg7XG4gIH1cblxuICAmLmhlcm8tbWVkaXVtIHtcbiAgICBtaW4taGVpZ2h0OiA0MDBweDtcbiAgfVxuXG4gICYuaGVyby1zbWFsbCB7XG4gICAgbWluLWhlaWdodDogMTEwcHg7XG4gIH1cblxuICAmLmhlcm8tdGlueSB7XG4gICAgbWluLWhlaWdodDogOHJlbTtcbiAgfVxuICBcbiAgLmhlYWRlci1maXhlZCAmIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMDtcbiAgfVxuXG4gIC8vJi5wYXJhbGxheCB7XG4gIC8vICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICAvL31cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1kKSB7XG4gICAgaDEge1xuICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgIH1cbiAgICBoMiB7XG4gICAgICBmb250LXNpemU6IDEuNzVyZW07XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbSkge1xuICAgIGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICB9XG4gICAgaDIge1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIH1cbiAgfVxuXG5cbiAgJi50ZXh0LWxpZ2h0IHtcbiAgICBoMSB7XG4gICAgICBjb2xvcjogJGhlYWRlci10ZXh0LWxpZ2h0O1xuICAgIH1cbiAgICBoMiB7XG4gICAgICBjb2xvcjogcmdiYSgkaGVhZGVyLXRleHQtbGlnaHQsIDAuOCk7XG4gICAgfVxuICB9XG5cbiAgcCB7XG4gICAgZm9udC1zaXplOiAuOXJlbTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICB9XG5cbiAgI3RvLXN0YXJ0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMTBweDtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbi8vIE92ZXJsYXlcbi5pbWFnZS1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IC0xO1xuXG4gIC5vdmVybGF5LWxpZ2h0ICYge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoI2ZmZiwgMC40KTtcbiAgfVxuXG4gIC5vdmVybGF5LWxpZ2h0LWdyYWRpZW50ICYge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoI2ZmZiwwLjUpLCByZ2JhKCNmZmYsMC4yKSk7XG4gIH1cblxuICAub3ZlcmxheS1kYXJrICYge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoIzAwMCwgMC40KTtcbiAgfVxuXG4gIC5vdmVybGF5LWRhcmstZ3JhZGllbnQgJiB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgjMDAwLDAuNSksIHJnYmEoIzAwMCwwLjIpKTtcbiAgfVxufVxuXG5cblxuXG5cblxuXG5cblxuIiwiaHRtbCB7XG4gIEBpbmNsdWRlIGZsdWlkLXR5cGUoJHNpemUteHMsICRzaXplLXhsLCAkbWluLXJlc3BvbnNpdmUtZm9udC1zaXplLCAkaHRtbC1mb250LXNpemUpO1xufVxuXG4vLyBIZWFkZXIgT3ZlcnJpZGVzXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbiAgZm9udC1mYW1pbHk6ICR0aXRsZS1mb250LWZhbWlseTtcbiAgY29sb3I6IGRhcmtlbigkYm9keS1mb250LWNvbG9yLCAxMCUpO1xufVxuXG5oMSwgLmgxIHtcbiAgZm9udC1zaXplOiAzcmVtO1xufVxuXG5oMiwgLmgyIHtcbiAgZm9udC1zaXplOiAxLjhyZW07XG59XG5cbmg2LCAuaDYge1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4udGl0bGUtY2VudGVyIHtcbiAgaDEsIGgyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLnRpdGxlLWgxaDIge1xuICBoMSAge1xuICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuXG4gICAgc3Ryb25nLCBib2xkIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuICB9XG4gIGgxICsgaDIge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG59XG5cbi8vIFR5cG9ncmFwaHkgSGludHNcbi50aXRsZS1oMWgyLCAudGl0bGUtY2VudGVyIHtcbiAgaDEgKyBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG59XG5cbmE6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4vLyBUYWJsZXNcbi50YWJsZSB0YWJsZSB7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuXG4vLyBDb2RlYmxvY2tzXG5wcmUgY29kZSwgcHJlLnhkZWJ1Zy12YXItZHVtcHtcbiAgYmFja2dyb3VuZDogI2ZhZmFmYTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDFyZW0gIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxucHJlW2NsYXNzKj1cImxhbmd1YWdlLVwiXSB7XG4gIGNvZGUge1xuICAgIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93LXg6IGluaXRpYWw7XG4gIH1cbn1cblxucHJlIHtcbiAgY29kZTpub3QoLmhsanMpOm5vdChbY2xhc3MqPVwibGFuZ3VhZ2UtXCJdKSB7XG4gICAgYmFja2dyb3VuZDogI2Y4ZjhmODtcbiAgfVxufVxuXG4vLyBJY29uIFR3ZWFrc1xuaS5mYSB7XG5cblxuICAmLmZhLWhlYXJ0LCAmLmZhLWhlYXJ0LW8ge1xuICAgICYucHVsc2Uge1xuICAgICAgY29sb3I6ICM5MjBcbiAgICB9XG4gIH1cbn1cblxuLy8gRm9udCBXZWlnaHRzXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLmhlYXZ5IHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLmxpZ2h0IHtcbiAgZm9udC13ZWlnaHQ6IDIwMDtcbn1cblxuLy8gQ29sb3JzXG4udGV4dC1saWdodCB7XG4gIGNvbG9yOiByZ2JhKCRsaWdodC1jb2xvciwgMC44KTtcblxuICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgICBjb2xvcjogcmdiYSgkbGlnaHQtY29sb3IsIDAuOSk7XG4gIH1cbn1cblxuLy8gRXJyb3IgY29uZmlndXJhdGlvblxuI2Vycm9yIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IDVyZW07XG5cbiAgLmljb24ge1xuICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgfVxufVxuXG4vLyBNZXNzYWdlc1xuI21lc3NhZ2VzIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAuaWNvbiB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG5cbi8vIExpc3RzXG51bCxcbm9sIHtcbiAgbWFyZ2luLWxlZnQ6ICR1bml0LTg7XG5cbiAgdWwsXG4gIG9sIHtcbiAgICBtYXJnaW4tbGVmdDogJHVuaXQtODtcbiAgfVxufVxuXG51bCB7XG4gIGxpc3Qtc3R5bGU6IGRpc2Mgb3V0c2lkZTtcbn1cblxub2wge1xuICBsaXN0LXN0eWxlOiBkZWNpbWFsIG91dHNpZGU7XG59XG5cbi8vIE5vdGljZXNcbi5ub3RpY2VzIHtcbiAgbWFyZ2luOiAxLjVyZW0gMDtcbiAgcCB7XG4gICAgbWFyZ2luOiAxcmVtIDA7XG4gIH1cbn1cblxuXG4iLCJmb3JtIHtcbiAgLmJ1dHRvbi13cmFwcGVyIHtcbiAgICBtYXJnaW4tdG9wOiAwLjc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cblxuICBzcGFuLnJlcXVpcmVkIHtcbiAgICBjb2xvcjogJGVycm9yLWNvbG9yO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gIH1cblxuICAuZm9ybS1pbnB1dFt0eXBlPXJhbmdlXSB7XG4gICAgYXBwZWFyYW5jZTogc2xpZGVyLWhvcml6b250YWw7XG4gICAgJjpmb2N1cyB7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBSZXNldCBzb21lIGRlZmF1bHRzIGZvciBRdWFyayBUaGVtZSAqKi9cbiAgLmZvcm0tZ3JvdXA6bm90KC5mb3JtLWZpZWxkLXRvZ2dsZWFibGUpIHtcbiAgICAuY2hlY2tib3hlcyB7XG4gICAgICBkaXNwbGF5OiBpbmhlcml0O1xuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGluaGVyaXQ7XG4gICAgICAgIHBhZGRpbmc6ICgoJGNvbnRyb2wtc2l6ZS1zbSAtICRsaW5lLWhlaWdodCkgLyAyKSAkY29udHJvbC1wYWRkaW5nLXggKCgkY29udHJvbC1zaXplLXNtIC0gJGxpbmUtaGVpZ2h0KSAvIDIpICgkY29udHJvbC1pY29uLXNpemUgKyAkY29udHJvbC1wYWRkaW5nLXgpO1xuICAgICAgICBtYXJnaW46IGluaGVyaXQ7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuXG4jZ3Jhdi1sb2dpbiB7XG5cbiAgPiBmb3JtIHtcbiAgICBtYXJnaW46IDJyZW0gYXV0byAwO1xuICAgIG1heC13aWR0aDogMzUwcHg7XG4gIH1cbiAgLmZvcm0tbGFiZWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmZvcm0tZGF0YSB7XG4gICAgbWFyZ2luOiAxcmVtIDA7XG4gIH1cbiAgLmZvcm0taW5wdXQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAuYnV0dG9uLXdyYXBwZXIge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgLmZvcm0tZGF0YS5yZW1lbWJlcm1lIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgfVxuXG4gIC5sb2dpbi1mb3JtIHtcbiAgICBidXR0b25bdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tcHJpbWFyeTtcbiAgICB9XG4gIH1cblxuICAudHdvZmEtZm9ybSB7XG4gICAgYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl06Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXByaW1hcnk7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBtYXJnaW4tbGVmdDogNHB4O1xuICAgIH1cbiAgfVxufVxuIiwiLm1vYmlsZS1jb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIC8vd2lkdGg6IDEwMCU7XG4gIC8vaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDQwJTtcbiAgbGVmdDogMDtcbiAgbWFyZ2luOiAgMCBhdXRvO1xuICB6LWluZGV4OiAyO1xufVxuXG4ubW9iaWxlLWxvZ28ge1xuICBzdmcsIGltZyB7XG4gICAgaGVpZ2h0OiA0MnB4O1xuICAgIG1hcmdpbi10b3A6IC43cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAxLjRyZW07XG5cbiAgICBwYXRoIHtcbiAgICAgIGZpbGw6ICRsaWdodC1jb2xvcjtcbiAgICB9XG5cbiAgfVxufVxuXG4vLyBIYW1idXJnZXIgTWVudVxuLm1vYmlsZS1tZW51IHtcblxuICBkaXNwbGF5OiBub25lO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAzO1xuXG4gIC5oZWFkZXItZml4ZWQgJiB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZCkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLmJ1dHRvbl9jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEuM3JlbTtcbiAgICByaWdodDogJGhvcml6LXBhZGRpbmc7XG4gICAgaGVpZ2h0OiAkbW9iaWxlLWJ1dHRvbi1oZWlnaHQ7XG4gICAgd2lkdGg6ICRtb2JpbGUtYnV0dG9uLXdpZHRoO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB6LWluZGV4OiAxMDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzIGVhc2UsIHRvcCAwLjVzIGVhc2U7XG5cbiAgICAkYmFyLW9mZnNldDogJG1vYmlsZS1idXR0b24taGVpZ2h0IC8gMztcblxuICAgICY6aG92ZXIge1xuICAgICAgb3BhY2l0eTogLjc7XG4gICAgfVxuXG4gICAgJi5hY3RpdmUge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuXG4gICAgICAudG9wIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRiYXItb2Zmc2V0KSB0cmFuc2xhdGVYKDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIGJhY2tncm91bmQ6ICRtb2JpbGUtY29sb3ItYWN0aXZlO1xuICAgICAgfVxuICAgICAgLm1pZGRsZSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6ICRtb2JpbGUtY29sb3ItYWN0aXZlO1xuICAgICAgfVxuXG4gICAgICAuYm90dG9tIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0oJGJhci1vZmZzZXQpKSB0cmFuc2xhdGVYKDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkbW9iaWxlLWNvbG9yLWFjdGl2ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgIGJhY2tncm91bmQ6ICRtb2JpbGUtY29sb3ItbWFpbjtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGhlaWdodDogNHB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdHJhbnNpdGlvbjogIGFsbCAuMzVzIGVhc2U7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICY6bnRoLW9mLXR5cGUoMikge1xuICAgICAgICB0b3A6ICRiYXItb2Zmc2V0O1xuICAgICAgfVxuXG4gICAgICAmOm50aC1vZi10eXBlKDMpIHtcbiAgICAgICAgdG9wOiAkYmFyLW9mZnNldCAqIDI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDAlO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjM1cywgdmlzaWJpbGl0eSAuMzVzLCBoZWlnaHQgLjM1cztcblxuICAmLm9wZW4ge1xuICAgIG9wYWNpdHk6IC45NTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIGhlaWdodDogMTAwJTtcblxuICB9XG4gIG5hdiB7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5vdmVybGF5LW1lbnUge1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDkwcHgpO1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG5cbiAgJiA+IC50cmVlIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG5cblxuLnRyZWVtZW51IHtcblxuICAmLnRyZWVtZW51LXJvb3Qge1xuICAgIG1hcmdpbjogMXJlbTtcbiAgfVxuXG4gIGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMCAwIDFweDtcbiAgICBwYWRkaW5nOiA1cHggMDtcbiAgICBsaW5lLWhlaWdodDogMS4ycmVtO1xuXG4gICAgYmFja2dyb3VuZDogcmdiYSgkZ3JheS1jb2xvci1kYXJrLDAuMSk7XG5cbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6IDEuMnJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcblxuICAgICAgJjpob3ZlciwgJjpmb2N1cywgJi5hY3RpdmUge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3ItbGlnaHQgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHVsIHtcbiAgICBtYXJnaW46IDAgMCAwIDFyZW07XG4gIH1cblxuICAudG9nZ2xlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDFyZW07XG4gICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IG1hcmdpbi1yaWdodDogMnB0O1xuICAgIH1cbiAgfVxuXG4gIGxpLnRyZWUtZW1wdHkgID4gLnRvZ2dsZXIge1xuICAgIG9wYWNpdHk6IDAuMzsgY3Vyc29yOiBkZWZhdWx0O1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXDIwMjJcIjtcbiAgICB9XG4gIH1cblxuICBsaS50cmVlLWNsb3NlZCA+IC50b2dnbGVyOmJlZm9yZSB7XG4gICAgY29udGVudDogXCIrXCI7XG4gIH1cblxuICBsaS50cmVlLW9wZW5lZCA+IC50b2dnbGVyOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXDIyMTJcIjtcbiAgfVxufVxuXG4ubW9iaWxlLW5hdi1vcGVuIHtcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xufVxuIiwiLmRlZmF1bHQtYW5pbWF0aW9uIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbn1cblxuLy8gUHVsc2UgQW5pbWF0aW9uXG4ucHVsc2Uge1xuICBhbmltYXRpb24tbmFtZTogcHVsc2VfYW5pbWF0aW9uO1xuICBhbmltYXRpb24tZHVyYXRpb246IDIwMDBtcztcbiAgdHJhbnNmb3JtLW9yaWdpbjo3MCUgNzAlO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xufVxuXG5Aa2V5ZnJhbWVzIHB1bHNlX2FuaW1hdGlvbiB7XG4gIDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuICAzMCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG4gIDQwJSB7IHRyYW5zZm9ybTogc2NhbGUoMS4wOCk7IH1cbiAgNTAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuICA2MCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG4gIDcwJSB7IHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7IH1cbiAgODAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuICAxMDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxufVxuIiwiI2hlYWRlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRoZWFkZXItaGVpZ2h0LWxhcmdlO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgkZ3JheS1jb2xvciwgMC4yKTtcbiAgQGV4dGVuZCAuZGVmYXVsdC1hbmltYXRpb247XG5cbiAgZm9udC1zaXplOiAwLjdyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG5cbiAgYmFja2dyb3VuZDogJGxpZ2h0LWNvbG9yO1xuICBjb2xvcjogJGRhcmstY29sb3I7XG5cbiAgYSB7XG4gICAgY29sb3I6ICRkYXJrLWNvbG9yO1xuICB9XG5cbiAgLmxvZ28gc3ZnIHBhdGgge1xuICAgIGZpbGw6ICRoZWFkZXItY29sb3ItZGFyaztcbiAgfVxuXG4gIC5oZWFkZXItZGFyayAmOm5vdCguc2Nyb2xsZWQpIHtcbiAgICBiYWNrZ3JvdW5kOiAkaGVhZGVyLWNvbG9yLWRhcms7XG4gICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiByZ2JhKCRsaWdodC1jb2xvciwgMC43KSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBhLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJGxpZ2h0LWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5kcm9wbWVudSB1bCB1bCBhIHtcbiAgICAgICAgY29sb3I6ICRkYXJrLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5sb2dvIHN2ZyBwYXRoIHtcbiAgICAgIGZpbGw6ICRsaWdodC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAuaGVhZGVyLWRhcmsuaGVhZGVyLXRyYW5zcGFyZW50ICY6bm90KC5zY3JvbGxlZCkge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoIzAwMCwgMC4wNSk7XG4gIH1cblxuICAuaGVhZGVyLXRyYW5zcGFyZW50ICY6bm90KC5zY3JvbGxlZCkge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoI2ZmZiwgMC4wNSk7XG4gICAgLy9ib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubmF2YmFyLXNlY3Rpb24ge1xuICAgIGhlaWdodDogJGhlYWRlci1oZWlnaHQtbGFyZ2U7XG4gICAgQGV4dGVuZCAuZGVmYXVsdC1hbmltYXRpb247XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1kKSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDJyZW07XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1zZWN0aW9uLmRlc2t0b3AtbWVudSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZCkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAubG9nbyB7XG4gICAgc3ZnLCBpbWcge1xuICAgICAgaGVpZ2h0OiA0MnB4O1xuICAgICAgZGlzcGxheTogaW5oZXJpdDtcbiAgICAgIEBleHRlbmQgLmRlZmF1bHQtYW5pbWF0aW9uO1xuICAgIH1cbiAgfVxuXG4gIC8vIEZpeGVkIEhlYWRlciBzb2x1dGlvblxuICAuaGVhZGVyLWZpeGVkICYge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMjtcbiAgfVxufVxuXG4vLyBBbmltYXRlIEZpeGVkIEhlYWRlclxuYm9keS5oZWFkZXItZml4ZWQuaGVhZGVyLWFuaW1hdGVkIHtcbiAgI2hlYWRlci5zY3JvbGxlZCB7XG4gICAgaGVpZ2h0OiAkaGVhZGVyLWhlaWdodC1zbWFsbDtcblxuICAgIC5uYXZiYXItc2VjdGlvbiB7XG4gICAgICBoZWlnaHQ6ICRoZWFkZXItaGVpZ2h0LXNtYWxsO1xuICAgIH1cblxuICAgIC5sb2dvIHtcbiAgICAgIHN2ZywgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiAyOHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIH4gLm1vYmlsZS1tZW51IC5idXR0b25fY29udGFpbmVyIHtcbiAgICAgIHRvcDogMC41cmVtO1xuICAgIH1cbiAgfVxufVxuXG4ubG9naW4tc3RhdHVzLXdyYXBwZXIge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLy8gU3RpY2t5IEZvb3RlciBzb2x1dGlvblxuYm9keS5zdGlja3ktZm9vdGVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAjcGFnZS13cmFwcGVyIHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxufVxuXG4jZm9vdGVyIHtcbiAgY29sb3I6ICNhY2IzYzI7XG4gIHBhZGRpbmc6IDFyZW0gJGhvcml6LXBhZGRpbmcgMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufSIsIi5kcm9wbWVudSB7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICB1bCB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBtYXJnaW46IDA7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgIGxpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbjogMDtcblxuICAgICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgcGFkZGluZzogJGRyb3BtZW51LXZlcnQtcGFkZGluZyAoJGRyb3BtZW51LWhvcml6LXBhZGRpbmcgKyAkZHJvcG1lbnUtY2hpbGQtcGFkZGluZykgJGRyb3BtZW51LXZlcnQtcGFkZGluZyAkZHJvcG1lbnUtaG9yaXotcGFkZGluZztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgJjpob3ZlciwgJjpmb2N1cywgJi5hY3RpdmUge1xuICAgICAgICAgIGNvbG9yOiAkZHJvcG1lbnUtaG92ZXItdGV4dCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6ICdcXGYxMDcnO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0gKDIgKiRkcm9wbWVudS1jaGlsZC1wYWRkaW5nKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6b25seS1jaGlsZCB7XG4gICAgICAgICAgLy9iYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRkcm9wbWVudS1ob3Jpei1wYWRkaW5nO1xuXG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICAmID4gdWwge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICB1bCBsaSBhOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFxmMTA1JztcbiAgICB9XG5cbiAgICB1bCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgYmFja2dyb3VuZDogJGRyb3BtZW51LWJnO1xuICAgICAgYm94LXNoYWRvdzogJGRyb3BtZW51LXNoYWRvdztcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAgICAgdWwge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG4gICYgPiB1bCA+IGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cblxuICAvLyBBbmltYXRpb24gb3B0aW9uc1xuICAmLmFuaW1hdGVkIHtcbiAgICB1bCBsaSB7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC43cywgY29sb3IgMC41cztcbiAgICB9XG5cbiAgICB1bCBsaTpob3ZlciA+IHVsIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxuXG4gICAgdWwgdWwge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcywgb3BhY2l0eSAuNXM7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgICB9XG4gIH1cbn0iLCIvKiogRXh0cmEgY29sdW1ucyBzcGFjaW5nICoqL1xuLmV4dHJhLXNwYWNpbmc6bm90KC5jb2wtMTIpLCA6bm90KC5jb2wxMikgPiAuZS1jb250ZW50IHtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1kKSB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuXG4vKiogQnJlYWRjcnVtYnMgc3R5bGluZyAqKi9cbiNicmVhZGNydW1icyB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogLTFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG5cblxuICBpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgc3BhbiwgYSB7XG4gICAgcGFkZGluZzogMCAwLjVyZW07XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgc3BhbiwgYSB7XG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKTo6YmVmb3JlIHtcbiAgICAgIGNvbG9yOiAjZTdlOWVkO1xuICAgICAgY29udGVudDogXCIvXCI7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICAgIH1cbiAgfVxufVxuXG4vKiogQmxvZyBMaXN0aW5nICoqL1xuLmJsb2ctbGlzdGluZyB7XG5cbiAgLmJyaWNrbGF5ZXItY29sdW1uIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuXG4gIH1cbiAgLmNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMTBweCA0NXB4IC05cHggcmdiYSgwLDAsMCwwLjEpO1xuICB9XG5cbiAgLmNhcmQtZm9vdGVyIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuXG4gIC5ibG9nLWRhdGUge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgfVxuXG4gIC5sYWJlbCB7XG5cbiAgfVxufVxuXG4vKiogQmxvZyBJdGVtICoqL1xuLmNvbnRlbnQtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gIGgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIH1cbn1cblxuLmxhYmVsIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4vKiogUGFnaW5hdGlvbiAqKi9cbnVsLnBhZ2luYXRpb24ge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnByZXYtbmV4dCB7XG4gIG1hcmdpbi10b3A6IDRyZW07XG59XG5cbi8qKiBTaWRlYmFyIHNwZWNpZmljIHR3ZWFrcyAqKi9cbiNzaWRlYmFyIHtcblxuICB1bC5yZWxhdGVkLXBhZ2VzIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgei1pbmRleDogMTtcblxuICAgIGxpIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG4gIHVsLmFyY2hpdmVzIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgLmxhYmVsIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDtcbiAgICB9XG4gIH1cbn1cbiIsIi5tb2R1bGFyLWhlcm8ge1xuICAjdG8tc3RhcnQge1xuICAgIGJvdHRvbTogMy41cmVtO1xuICB9XG59XG5cbi5tb2R1bGFyLWZlYXR1cmVzIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICYub2Zmc2V0LWJveCB7XG4gICAgLmZyYW1lLWJveCB7XG4gICAgICBtYXJnaW46IC0zcmVtICgtMXJlbSAtICRsYXlvdXQtc3BhY2luZykgM3JlbTtcbiAgICAgIHBhZGRpbmc6IDFyZW0gMXJlbTtcbiAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1jb2xvcjtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCA3NXB4IDAgcmdiYSgkZGFyay1jb2xvciwgMC4xKTtcbiAgICB9XG4gIH1cblxuICAmLnNtYWxsIHtcblxuICAgIC5jb2x1bW5zIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xcmVtO1xuICAgIH1cblxuICAgIC5jb2x1bW46aG92ZXIge1xuICAgICAgLmZlYXR1cmUtaWNvbiBpIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5mZWF0dXJlLWljb24ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGxlZnQ7XG5cblxuICAgICAgaSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogaW5oZXJpdDtcbiAgICAgICAgZm9udC1zaXplOiA3MHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0byAxcmVtO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgY29sb3I6ICRncmF5LWNvbG9yO1xuICAgICAgICBAZXh0ZW5kIC5kZWZhdWx0LWFuaW1hdGlvbjtcblxuICAgICAgfVxuICAgICAgaDYge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZnJhbWUtYm94IHtcbiAgICBwYWRkaW5nOiAzcmVtIDA7XG5cbiAgICA+IHAge1xuICAgICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIC5jb2x1bW4ge1xuICAgIHBhZGRpbmc6IDFyZW07XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIC5mZWF0dXJlLWljb24ge1xuICAgICAgICBjb2xvcjogJGdyYXktY29sb3I7XG4gICAgICAgIGg2IHtcbiAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5mZWF0dXJlLWNvbnRlbnQge1xuICAgICAgICBjb2xvcjogJGdyYXktY29sb3ItZGFyaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZmVhdHVyZS1pY29uIHtcbiAgICBmb250LXNpemU6IDEzMHB4O1xuICAgIGhlaWdodDogMTAwcHg7XG4gICAgY29sb3I6ICRncmF5LWNvbG9yLWxpZ2h0O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAxcmVtIDA7XG4gICAgQGV4dGVuZCAuZGVmYXVsdC1hbmltYXRpb247XG5cbiAgICBpIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuXG4gICAgaDYge1xuICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LWNvbG9yO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbG9yOiAkZ3JheS1jb2xvci1kYXJrO1xuICAgIH1cbiAgfVxuXG4gIC5mZWF0dXJlLWNvbnRlbnQge1xuICAgIGNvbG9yOiAkZ3JheS1jb2xvcjtcbiAgfVxufVxuXG4ubW9kdWxhci10ZXh0IHtcbiAgcGFkZGluZy10b3A6IDRyZW07XG4gIHBhZGRpbmctYm90dG9tOiA0cmVtO1xuXG4gIC5jb2x1bW5zLmxlZnQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgfVxufSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQWVBQSxBQUFBLElBQUksQ0FBQyxFQUNILE1BQU0sRUFBRSxJQUFJLEdBQ2I7O0FBRUQsQUFDRSxhQURXLENBQ1gsVUFBVSxDQUFDLEVBQ1QsT0FBTyxFZE1JLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxHY0x2Qjs7QUFHRCxBQUFBLGFBQWEsQ0FOZixhQUFhLENBTUssRUFDZCxXQUFXLEVkT08sSUFBSSxHY052Qjs7QUFHSCxBQUNFLGFBRFcsQ0FDWCxLQUFLLEdBQUcsTUFBTSxHQUFHLGFBQWEsQ0FBQyxFQUM3QixXQUFXLEVBQUUsQ0FBQyxHQUNmOztBQUdILEFBQUEsT0FBTyxBQUFBLFFBQVEsQ0FBQyxFQUNkLFlBQVksRWRYRSxJQUFJLEVjWWxCLGFBQWEsRWRaQyxJQUFJLEVjYWxCLFFBQVEsRUFBRSxRQUFRLEdBQ25COztBQUVELEFBQUEsY0FBYyxFQUFFLGFBQWEsRUFBRSx1QkFBdUIsRUFBRSxzQkFBc0IsQ0FBQyxFQUM3RSxPQUFPLEVBQUUsQ0FBQyxHQUNYOztBQUdELEFBQUEsS0FBSyxDQUFDLEVBQ0osT0FBTyxFQUFFLElBQUksRUFDYixXQUFXLEVBQUUsTUFBTSxFQUNuQixlQUFlLEVBQUUsTUFBTSxFQUV2QixXQUFXLEVBQUUsSUFBSSxFQUNqQixjQUFjLEVBQUUsSUFBSSxFQUNwQixlQUFlLEVBQUUsS0FBSyxFQUN0QixtQkFBbUIsRUFBRSxNQUFNLEdBZ0Y1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 */