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.hero-fullscreen { height: 100vh; }

.hero.hero-large { height: 500px; }

.hero.hero-medium { height: 400px; }

.hero.hero-small { height: 110px; }

.hero.hero-tiny { height: 8rem; }

.header-fixed .hero { background-position: 50% 0; }

.hero h1 { color: #242931; font-size: 4rem !important; }

.hero h2 { color: rgba(36, 41, 49, 0.8); font-size: 2.5rem !important; }

.hero h1 + h2 { margin-top: -45px !important; }

.hero.text-light h1 { color: #fff; }

.hero.text-light h2 { color: rgba(255, 255, 255, 0.8); }

.hero p { font-size: 130%; 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)); }

.title-center h1, .title-center h2 { text-align: center; }

.title-h1h2 h1 { font-weight: 100; }

.title-h1h2 h1 strong, .title-h1h2 h1 bold { font-weight: 400; }

.title-h1h2 h1 + h2, .title-center h1 + h2 { margin-top: -35px; margin-bottom: 50px; font-weight: 700; }

a:focus { outline: none !important; }

img { max-width: 100%; }

pre:not(.phpdebugbar-widgets-code-block) code { background: #f8f8f8; display: block; padding: 1rem !important; line-height: 1.5; color: inherit; border-radius: 2px; overflow-x: auto; }

pre.xdebug-var-dump { background: #f8f8f8; display: block; padding: 1rem !important; line-height: 1.5; color: inherit; border-radius: 2px; overflow-x: auto; }

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: 120%; }

.notices { margin: 1.5rem 0; }

.notices p { margin: 1rem 0; }

form .button-wrapper { margin-top: 0.75rem; margin-bottom: 1rem; }

form span.required { color: #e85600; font-weight: 700; font-size: 150%; }

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; }

.mobile-container { position: absolute; top: 40%; left: 0; margin: 0 auto; z-index: 2; }

.mobile-logo svg { max-width: 150px; margin-top: 1rem; margin-left: 1.4rem; }

.mobile-logo svg 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: 1rem; right: 1rem; height: 27px; width: 35px; 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(11px) translateX(0) rotate(45deg); background: #FFF; }

.mobile-menu .button_container.active .middle { opacity: 0; background: #FFF; }

.mobile-menu .button_container.active .bottom { transform: translateY(-11px) translateX(0) rotate(-45deg); background: #FFF; }

.mobile-menu .button_container span { background: #3085EE; border: none; height: 5px; width: 100%; position: absolute; top: 0; left: 0; transition: all .35s ease; cursor: pointer; }

.mobile-menu .button_container span:nth-of-type(2) { top: 11px; }

.mobile-menu .button_container span:nth-of-type(3) { top: 22px; }

.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: #4893f0 !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, #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; }

#header .logo svg { width: 150px; 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 { width: 100px; }

body.header-fixed.header-animated #header.scrolled ~ .mobile-menu .button_container { top: 0.5rem; }

.login-status-wrapper { white-space: nowrap; }

.login-status-wrapper .icon { font-size: 120%; }

body.sticky-footer { min-height: 100%; display: -ms-flexbox; display: flex; -ms-flex-direction: column; flex-direction: column; }

body.sticky-footer #page-wrapper { -ms-flex: 1; flex: 1; }

#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; }

#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: #f6f6f8; 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; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUuY3NzIiwic291cmNlcyI6WyJ0aGVtZS5zY3NzIiwic3BlY3RyZS9fdmFyaWFibGVzLnNjc3MiLCJzcGVjdHJlL19taXhpbnMuc2NzcyIsInNwZWN0cmUvbWl4aW5zL19hdmF0YXIuc2NzcyIsInNwZWN0cmUvbWl4aW5zL19idXR0b24uc2NzcyIsInNwZWN0cmUvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwic3BlY3RyZS9taXhpbnMvX2NvbG9yLnNjc3MiLCJzcGVjdHJlL21peGlucy9fbGFiZWwuc2NzcyIsInNwZWN0cmUvbWl4aW5zL19wb3NpdGlvbi5zY3NzIiwic3BlY3RyZS9taXhpbnMvX3NoYWRvdy5zY3NzIiwic3BlY3RyZS9taXhpbnMvX3RleHQuc2NzcyIsInNwZWN0cmUvbWl4aW5zL190b2FzdC5zY3NzIiwic3BlY3RyZS9taXhpbnMvX3RyYW5zaXRpb24uc2NzcyIsInRoZW1lL192YXJpYWJsZXMuc2NzcyIsInRoZW1lL19taXhpbnMuc2NzcyIsInRoZW1lL19mcmFtZXdvcmsuc2NzcyIsInRoZW1lL190eXBvZ3JhcGh5LnNjc3MiLCJ0aGVtZS9fZm9ybXMuc2NzcyIsInRoZW1lL19tb2JpbGUuc2NzcyIsInRoZW1lL19hbmltYXRpb24uc2NzcyIsInRoZW1lL19oZWFkZXIuc2NzcyIsInRoZW1lL19mb290ZXIuc2NzcyIsInRoZW1lL19tZW51LnNjc3MiLCJ0aGVtZS9fYmxvZy5zY3NzIiwidGhlbWUvX29uZXBhZ2Uuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3JlIHZhcmlhYmxlcyBhbmQgbWl4aW5zXG5AaW1wb3J0ICdzcGVjdHJlL3ZhcmlhYmxlcyc7XG5AaW1wb3J0ICdzcGVjdHJlL21peGlucyc7XG5cbkBpbXBvcnQgJ3RoZW1lL3ZhcmlhYmxlcyc7XG5AaW1wb3J0ICd0aGVtZS9taXhpbnMnO1xuQGltcG9ydCAndGhlbWUvZnJhbWV3b3JrJztcbkBpbXBvcnQgJ3RoZW1lL3R5cG9ncmFwaHknO1xuQGltcG9ydCAndGhlbWUvZm9ybXMnO1xuQGltcG9ydCAndGhlbWUvbW9iaWxlJztcbkBpbXBvcnQgJ3RoZW1lL2FuaW1hdGlvbic7XG5cbkBpbXBvcnQgJ3RoZW1lL2hlYWRlcic7XG5AaW1wb3J0ICd0aGVtZS9mb290ZXInO1xuQGltcG9ydCAndGhlbWUvbWVudSc7XG5cbi8vIEV4dHJhIFNrZWxldG9uIFN0eWxpbmdcbkBpbXBvcnQgJ3RoZW1lL2Jsb2cnO1xuQGltcG9ydCAndGhlbWUvb25lcGFnZSc7XG5cbiIsIi8vIENvcmUgdmFyaWFibGVzXG4kdmVyc2lvbjogXCIwLjUuMFwiO1xuXG4vLyBDb3JlIGNvbG9yc1xuJHByaW1hcnktY29sb3I6ICMzMDg1RUUgIWRlZmF1bHQ7XG4kcHJpbWFyeS1jb2xvci1kYXJrOiBkYXJrZW4oJHByaW1hcnktY29sb3IsIDUlKSAhZGVmYXVsdDtcbiRwcmltYXJ5LWNvbG9yLWxpZ2h0OiBsaWdodGVuKCRwcmltYXJ5LWNvbG9yLCA1JSkgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LWNvbG9yOiBsaWdodGVuKCRwcmltYXJ5LWNvbG9yLCAzNy41JSkgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LWNvbG9yLWRhcms6IGRhcmtlbigkc2Vjb25kYXJ5LWNvbG9yLCAzJSkgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LWNvbG9yLWxpZ2h0OiBsaWdodGVuKCRzZWNvbmRhcnktY29sb3IsIDMlKSAhZGVmYXVsdDtcblxuLy8gR3JheSBjb2xvcnNcbiRkYXJrLWNvbG9yOiAjNDU0ZDVkICFkZWZhdWx0O1xuJGxpZ2h0LWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuJGdyYXktY29sb3I6IGxpZ2h0ZW4oJGRhcmstY29sb3IsIDQwJSkgIWRlZmF1bHQ7XG4kZ3JheS1jb2xvci1kYXJrOiBkYXJrZW4oJGdyYXktY29sb3IsIDI1JSkgIWRlZmF1bHQ7XG4kZ3JheS1jb2xvci1saWdodDogbGlnaHRlbigkZ3JheS1jb2xvciwgMjUlKSAhZGVmYXVsdDtcblxuJGJvcmRlci1jb2xvcjogbGlnaHRlbigkZGFyay1jb2xvciwgNjAlKSAhZGVmYXVsdDtcbiRib3JkZXItY29sb3ItZGFyazogZGFya2VuKCRib3JkZXItY29sb3IsIDEwJSkgIWRlZmF1bHQ7XG4kYmctY29sb3I6IGxpZ2h0ZW4oJGRhcmstY29sb3IsIDY2JSkgIWRlZmF1bHQ7XG4kYmctY29sb3ItZGFyazogZGFya2VuKCRiZy1jb2xvciwgMyUpICFkZWZhdWx0O1xuJGJnLWNvbG9yLWxpZ2h0OiAkbGlnaHQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vIENvbnRyb2wgY29sb3JzXG4kc3VjY2Vzcy1jb2xvcjogIzMyYjY0MyAhZGVmYXVsdDtcbiR3YXJuaW5nLWNvbG9yOiAjZmZiNzAwICFkZWZhdWx0O1xuJGVycm9yLWNvbG9yOiAjZTg1NjAwICFkZWZhdWx0O1xuXG4vLyBPdGhlciBjb2xvcnNcbiRjb2RlLWNvbG9yOiAjZTA2ODcwICFkZWZhdWx0O1xuJGhpZ2hsaWdodC1jb2xvcjogI2ZmZTliMyAhZGVmYXVsdDtcbiRib2R5LWJnOiAkYmctY29sb3ItbGlnaHQgIWRlZmF1bHQ7XG4kYm9keS1mb250LWNvbG9yOiBsaWdodGVuKCRkYXJrLWNvbG9yLCA1JSkgIWRlZmF1bHQ7XG4kbGluay1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kbGluay1jb2xvci1kYXJrOiBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSkgIWRlZmF1bHQ7XG5cbi8vIEZvbnRzXG4vLyBDcmVkaXQ6IGh0dHBzOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTUvMTEvdXNpbmctc3lzdGVtLXVpLWZvbnRzLXByYWN0aWNhbC1ndWlkZS9cbiRiYXNlLWZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBzeXN0ZW0tdWksIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8gIWRlZmF1bHQ7XG4kbW9uby1mb250LWZhbWlseTogXCJTRiBNb25vXCIsIFwiU2Vnb2UgVUkgTW9ub1wiLCBcIlJvYm90byBNb25vXCIsIE1lbmxvLCBDb3VyaWVyLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4kZmFsbGJhY2stZm9udC1mYW1pbHk6IFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRjamstemgtZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5LCBcIlBpbmdGYW5nIFNDXCIsIFwiSGlyYWdpbm8gU2FucyBHQlwiLCBcIk1pY3Jvc29mdCBZYUhlaVwiLCAkZmFsbGJhY2stZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY2prLWpwLWZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseSwgXCJIaXJhZ2lubyBTYW5zXCIsIFwiSGlyYWdpbm8gS2FrdSBHb3RoaWMgUHJvXCIsIFwiWXUgR290aGljXCIsIFl1R290aGljLCBNZWlyeW8sICRmYWxsYmFjay1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjamsta28tZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5LCBcIk1hbGd1biBHb3RoaWNcIiwgJGZhbGxiYWNrLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGJvZHktZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5LCAkZmFsbGJhY2stZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kdGl0bGUtZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5LCAkZmFsbGJhY2stZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbi8vIFVuaXQgc2l6ZXNcbiR1bml0LW86IC4wNXJlbSAhZGVmYXVsdDtcbiR1bml0LWg6IC4xcmVtICFkZWZhdWx0O1xuJHVuaXQtMTogLjJyZW0gIWRlZmF1bHQ7XG4kdW5pdC0yOiAuNHJlbSAhZGVmYXVsdDtcbiR1bml0LTM6IC42cmVtICFkZWZhdWx0O1xuJHVuaXQtNDogLjhyZW0gIWRlZmF1bHQ7XG4kdW5pdC01OiAxcmVtICFkZWZhdWx0O1xuJHVuaXQtNjogMS4ycmVtICFkZWZhdWx0O1xuJHVuaXQtNzogMS40cmVtICFkZWZhdWx0O1xuJHVuaXQtODogMS42cmVtICFkZWZhdWx0O1xuJHVuaXQtOTogMS44cmVtICFkZWZhdWx0O1xuJHVuaXQtMTA6IDJyZW0gIWRlZmF1bHQ7XG4kdW5pdC0xMjogMi40cmVtICFkZWZhdWx0O1xuJHVuaXQtMTY6IDMuMnJlbSAhZGVmYXVsdDtcblxuLy8gRm9udCBzaXplc1xuJGh0bWwtZm9udC1zaXplOiAyMHB4ICFkZWZhdWx0O1xuJGh0bWwtbGluZS1oZWlnaHQ6IDEuNSAhZGVmYXVsdDtcbiRmb250LXNpemU6IC44cmVtICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1zbTogLjdyZW0gIWRlZmF1bHQ7XG4kZm9udC1zaXplLWxnOiAuOXJlbSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodDogMXJlbSAhZGVmYXVsdDtcblxuLy8gU2l6ZXNcbiRsYXlvdXQtc3BhY2luZzogJHVuaXQtMiAhZGVmYXVsdDtcbiRsYXlvdXQtc3BhY2luZy1zbTogJHVuaXQtMSAhZGVmYXVsdDtcbiRsYXlvdXQtc3BhY2luZy1sZzogJHVuaXQtNCAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzOiAkdW5pdC1oICFkZWZhdWx0O1xuJGJvcmRlci13aWR0aDogJHVuaXQtbyAhZGVmYXVsdDtcbiRib3JkZXItd2lkdGgtbGc6ICR1bml0LWggIWRlZmF1bHQ7XG4kY29udHJvbC1zaXplOiAkdW5pdC05ICFkZWZhdWx0O1xuJGNvbnRyb2wtc2l6ZS1zbTogJHVuaXQtNyAhZGVmYXVsdDtcbiRjb250cm9sLXNpemUtbGc6ICR1bml0LTEwICFkZWZhdWx0O1xuJGNvbnRyb2wtcGFkZGluZy14OiAkdW5pdC0yICFkZWZhdWx0O1xuJGNvbnRyb2wtcGFkZGluZy14LXNtOiAkdW5pdC0yICogLjc1ICFkZWZhdWx0O1xuJGNvbnRyb2wtcGFkZGluZy14LWxnOiAkdW5pdC0yICogMS41ICFkZWZhdWx0O1xuJGNvbnRyb2wtcGFkZGluZy15OiAoJGNvbnRyb2wtc2l6ZSAtICRsaW5lLWhlaWdodCkgLyAyIC0gJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjb250cm9sLXBhZGRpbmcteS1zbTogKCRjb250cm9sLXNpemUtc20gLSAkbGluZS1oZWlnaHQpIC8gMiAtICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY29udHJvbC1wYWRkaW5nLXktbGc6ICgkY29udHJvbC1zaXplLWxnIC0gJGxpbmUtaGVpZ2h0KSAvIDIgLSAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNvbnRyb2wtaWNvbi1zaXplOiAuOHJlbSAhZGVmYXVsdDtcblxuJGNvbnRyb2wtd2lkdGgteHM6IDE4MHB4ICFkZWZhdWx0O1xuJGNvbnRyb2wtd2lkdGgtc206IDMyMHB4ICFkZWZhdWx0O1xuJGNvbnRyb2wtd2lkdGgtbWQ6IDY0MHB4ICFkZWZhdWx0O1xuJGNvbnRyb2wtd2lkdGgtbGc6IDk2MHB4ICFkZWZhdWx0O1xuJGNvbnRyb2wtd2lkdGgteGw6IDEyODBweCAhZGVmYXVsdDtcblxuLy8gUmVzcG9uc2l2ZSBicmVha3BvaW50c1xuJHNpemUteHM6IDQ4MHB4ICFkZWZhdWx0O1xuJHNpemUtc206IDYwMHB4ICFkZWZhdWx0O1xuJHNpemUtbWQ6IDg0MHB4ICFkZWZhdWx0O1xuJHNpemUtbGc6IDk2MHB4ICFkZWZhdWx0O1xuJHNpemUteGw6IDEyODBweCAhZGVmYXVsdDtcbiRzaXplLTJ4OiAxNDQwcHggIWRlZmF1bHQ7XG5cbiRyZXNwb25zaXZlLWJyZWFrcG9pbnQ6ICRzaXplLXhzICFkZWZhdWx0O1xuXG4vLyBaLWluZGV4XG4kemluZGV4LTA6IDEgIWRlZmF1bHQ7XG4kemluZGV4LTE6IDEwMCAhZGVmYXVsdDtcbiR6aW5kZXgtMjogMjAwICFkZWZhdWx0O1xuJHppbmRleC0zOiAzMDAgIWRlZmF1bHQ7XG4kemluZGV4LTQ6IDQwMCAhZGVmYXVsdDtcbiIsIi8vIE1peGluc1xuQGltcG9ydCBcIm1peGlucy9hdmF0YXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYnV0dG9uXCI7XG5AaW1wb3J0IFwibWl4aW5zL2NsZWFyZml4XCI7XG5AaW1wb3J0IFwibWl4aW5zL2NvbG9yXCI7XG5AaW1wb3J0IFwibWl4aW5zL2xhYmVsXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Bvc2l0aW9uXCI7XG5AaW1wb3J0IFwibWl4aW5zL3NoYWRvd1wiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0XCI7XG5AaW1wb3J0IFwibWl4aW5zL3RvYXN0XCI7XG5AaW1wb3J0IFwibWl4aW5zL3RyYW5zaXRpb25cIjtcbiIsIi8vIEF2YXRhciBtaXhpblxuQG1peGluIGF2YXRhci1iYXNlKCRzaXplOiAkdW5pdC04KSB7XG4gIGZvbnQtc2l6ZTogJHNpemUgLyAyO1xuICBoZWlnaHQ6ICRzaXplO1xuICB3aWR0aDogJHNpemU7XG59XG4iLCIvLyBCdXR0b24gdmFyaWFudCBtaXhpblxuQG1peGluIGJ1dHRvbi12YXJpYW50KCRjb2xvcjogJHByaW1hcnktY29sb3IpIHtcbiAgYmFja2dyb3VuZDogJGNvbG9yO1xuICBib3JkZXItY29sb3I6IGRhcmtlbigkY29sb3IsIDMlKTtcbiAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgJjpmb2N1cyB7XG4gICAgQGluY2x1ZGUgY29udHJvbC1zaGFkb3coJGNvbG9yKTtcbiAgfVxuICAmOmZvY3VzLFxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJGNvbG9yLCAyJSk7XG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCA1JSk7XG4gICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgfVxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6IGRhcmtlbigkY29sb3IsIDclKTtcbiAgICBib3JkZXItY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgfVxuICAmLmxvYWRpbmcge1xuICAgIEBleHRlbmQgLmJ0bi1wcmltYXJ5LmxvYWRpbmc7XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJGNvbG9yOiAkcHJpbWFyeS1jb2xvcikge1xuICBiYWNrZ3JvdW5kOiAkbGlnaHQtY29sb3I7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICBjb2xvcjogJGNvbG9yO1xuICAmOmZvY3VzIHtcbiAgICBAaW5jbHVkZSBjb250cm9sLXNoYWRvdygkY29sb3IpO1xuICB9XG4gICY6Zm9jdXMsXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IGxpZ2h0ZW4oJGNvbG9yLCA1MCUpO1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRjb2xvciwgMiUpO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCA1JSk7XG4gICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgfVxuICAmLmxvYWRpbmcge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvcjtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG59XG4iLCIvLyBDbGVhcmZpeCBtaXhpblxuQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgfVxufVxuIiwiLy8gQmFja2dyb3VuZCBjb2xvciB1dGlsaXR5IG1peGluXG5AbWl4aW4gYmctY29sb3ItdmFyaWFudCgkbmFtZTogXCIuYmctcHJpbWFyeVwiLCAkY29sb3I6ICRwcmltYXJ5LWNvbG9yKSB7XG4gICN7JG5hbWV9IHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG5cbiAgICBAaWYgKGxpZ2h0bmVzcygkY29sb3IpIDwgNjApIHtcbiAgICAgIGNvbG9yOiAkbGlnaHQtY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi8vIFRleHQgY29sb3IgdXRpbGl0eSBtaXhpblxuQG1peGluIHRleHQtY29sb3ItdmFyaWFudCgkbmFtZTogXCIudGV4dC1wcmltYXJ5XCIsICRjb2xvcjogJHByaW1hcnktY29sb3IpIHtcbiAgI3skbmFtZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICBhI3skbmFtZX0ge1xuICAgICY6Zm9jdXMsXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgNSUpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gTGFiZWwgYmFzZSBzdHlsZVxuQG1peGluIGxhYmVsLWJhc2UoKSB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBwYWRkaW5nOiAuMXJlbSAuMTVyZW07XG59XG5cbkBtaXhpbiBsYWJlbC12YXJpYW50KCRjb2xvcjogJGxpZ2h0LWNvbG9yLCAkYmctY29sb3I6ICRwcmltYXJ5LWNvbG9yKSB7XG4gIGJhY2tncm91bmQ6ICRiZy1jb2xvcjtcbiAgY29sb3I6ICRjb2xvcjtcbn1cbiIsIi8vIE1hcmdpbiB1dGlsaXR5IG1peGluXG5AbWl4aW4gbWFyZ2luLXZhcmlhbnQoJGlkOiAxLCAkc2l6ZTogJHVuaXQtMSkge1xuICAubS0jeyRpZH0ge1xuICAgIG1hcmdpbjogJHNpemU7XG4gIH1cblxuICAubWItI3skaWR9IHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc2l6ZTtcbiAgfVxuXG4gIC5tbC0jeyRpZH0ge1xuICAgIG1hcmdpbi1sZWZ0OiAkc2l6ZTtcbiAgfVxuXG4gIC5tci0jeyRpZH0ge1xuICAgIG1hcmdpbi1yaWdodDogJHNpemU7XG4gIH1cblxuICAubXQtI3skaWR9IHtcbiAgICBtYXJnaW4tdG9wOiAkc2l6ZTtcbiAgfVxuXG4gIC5teC0jeyRpZH0ge1xuICAgIG1hcmdpbi1sZWZ0OiAkc2l6ZTtcbiAgICBtYXJnaW4tcmlnaHQ6ICRzaXplO1xuICB9XG5cbiAgLm15LSN7JGlkfSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNpemU7XG4gICAgbWFyZ2luLXRvcDogJHNpemU7XG4gIH1cbn1cblxuLy8gUGFkZGluZyB1dGlsaXR5IG1peGluXG5AbWl4aW4gcGFkZGluZy12YXJpYW50KCRpZDogMSwgJHNpemU6ICR1bml0LTEpIHtcbiAgLnAtI3skaWR9IHtcbiAgICBwYWRkaW5nOiAkc2l6ZTtcbiAgfVxuXG4gIC5wYi0jeyRpZH0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAkc2l6ZTtcbiAgfVxuXG4gIC5wbC0jeyRpZH0ge1xuICAgIHBhZGRpbmctbGVmdDogJHNpemU7XG4gIH1cblxuICAucHItI3skaWR9IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkc2l6ZTtcbiAgfVxuXG4gIC5wdC0jeyRpZH0ge1xuICAgIHBhZGRpbmctdG9wOiAkc2l6ZTtcbiAgfVxuXG4gIC5weC0jeyRpZH0ge1xuICAgIHBhZGRpbmctbGVmdDogJHNpemU7XG4gICAgcGFkZGluZy1yaWdodDogJHNpemU7XG4gIH1cbiAgXG4gIC5weS0jeyRpZH0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAkc2l6ZTtcbiAgICBwYWRkaW5nLXRvcDogJHNpemU7XG4gIH1cbn1cbiIsIi8vIENvbXBvbmVudCBmb2N1cyBzaGFkb3dcbkBtaXhpbiBjb250cm9sLXNoYWRvdygkY29sb3I6ICRwcmltYXJ5LWNvbG9yKSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIC4xcmVtIHJnYmEoJGNvbG9yLCAuMik7XG59XG5cbi8vIFNoYWRvdyBtaXhpblxuQG1peGluIHNoYWRvdy12YXJpYW50KCRvZmZzZXQpIHtcbiAgYm94LXNoYWRvdzogMCAkb2Zmc2V0ICgkb2Zmc2V0ICsgLjA1cmVtKSAqIDIgcmdiYSgkZGFyay1jb2xvciwgLjMpO1xufVxuIiwiLy8gVGV4dCBFbGxpcHNpc1xuQG1peGluIHRleHQtZWxsaXBzaXMoKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLy8gVG9hc3QgdmFyaWFudCBtaXhpblxuQG1peGluIHRvYXN0LXZhcmlhbnQoJGNvbG9yOiAkZGFyay1jb2xvcikge1xuICBiYWNrZ3JvdW5kOiByZ2JhKCRjb2xvciwgLjkpO1xuICBib3JkZXItY29sb3I6ICRjb2xvcjtcbn1cbiIsIi8vIENvbXBvbmVudCB0cmFuc2l0aW9uXG5AbWl4aW4gY29udHJvbC10cmFuc2l0aW9uKCkge1xuICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2U7XG59XG4iLCIvLyBMYXlvdXRcbiRob3Jpei1wYWRkaW5nOiAxcmVtO1xuJHZlcnQtcGFkZGluZzogMnJlbSAwIDJyZW07XG5cbi8vIEhlYWRlclxuJGhlYWRlci1oZWlnaHQtbGFyZ2U6IDRyZW07XG4kaGVhZGVyLWhlaWdodC1zbWFsbDogMi4zcmVtO1xuJGhlYWRlci1jb2xvci1kYXJrOiAjMjIyO1xuJGhlYWRlci10ZXh0LWxpZ2h0OiAkbGlnaHQtY29sb3I7XG4kaGVhZGVyLXRleHQtZGFyazogZGFya2VuKCRkYXJrLWNvbG9yLCAxNSUpO1xuXG4vLyBEcm9wZG93biBNZW51XG4kZHJvcG1lbnUtYmc6ICRsaWdodC1jb2xvcjtcbiRkcm9wbWVudS1ob3Zlci10ZXh0OiAkcHJpbWFyeS1jb2xvcjtcbiRkcm9wbWVudS1ob3Jpei1wYWRkaW5nOiAyMHB4O1xuJGRyb3BtZW51LXZlcnQtcGFkZGluZzogN3B4O1xuJGRyb3BtZW51LWNoaWxkLXBhZGRpbmc6IDEwcHg7XG4kZHJvcG1lbnUtc2hhZG93OiAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuXG4vLyBNb2JpbGUgTWVudVxuJG1vYmlsZS1jb2xvci1tYWluOiAkcHJpbWFyeS1jb2xvcjtcbiRtb2JpbGUtY29sb3ItYWN0aXZlOiAjRkZGO1xuJG1vYmlsZS1jb2xvci1saW5rOiAjRkZGO1xuJG1vYmlsZS1idXR0b24taGVpZ2h0OiAyN3B4O1xuJG1vYmlsZS1idXR0b24td2lkdGg6IDM1cHg7IiwiQG1peGluIGJyZWFrcG9pbnQoJHBvaW50KSB7XG4gIEBpZiAkcG9pbnQgPT0gMngge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiRzaXplLTJ4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJHBvaW50ID09IHhsIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNpemUteGwpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICB9IEBlbHNlIGlmICRwb2ludCA9PSBsZyB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzaXplLWxnKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJHBvaW50ID09IG1kIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNpemUtbWQpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkcG9pbnQgPT0gc20ge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2l6ZS1zbSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRwb2ludCA9PSB4cyB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzaXplLXhzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gIEBlbHNlIHtcbiAgICBAd2FybiBcIkJyZWFrcG9pbnQgbWl4aW4gc3VwcG9ydHM6IHhzLCBzbSwgbWQsIGxnLCB4bCwgMnhcIjtcbiAgfVxufVxuXG5AbWl4aW4gdmVydGljYWwtYWxpZ24oJHBvc2l0aW9uOiByZWxhdGl2ZSkge1xuICBwb3NpdGlvbjogJHBvc2l0aW9uO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuIiwiaHRtbCB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuI2JvZHktd3JhcHBlciB7XG4gIC5jb250YWluZXIge1xuICAgIHBhZGRpbmc6ICR2ZXJ0LXBhZGRpbmc7XG4gIH1cblxuICAvLyBGaXhlZCBIZWFkZXIgc29sdXRpb25cbiAgLmhlYWRlci1maXhlZCAmIHtcbiAgICBwYWRkaW5nLXRvcDogJGhlYWRlci1oZWlnaHQtbGFyZ2U7XG4gIH1cbn1cblxuLmhlYWRlci1maXhlZCB7XG4gIC5oZXJvICsgI3N0YXJ0ID4gI2JvZHktd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbn1cblxuc2VjdGlvbi5zZWN0aW9uIHtcbiAgcGFkZGluZy1sZWZ0OiAkaG9yaXotcGFkZGluZztcbiAgcGFkZGluZy1yaWdodDogJGhvcml6LXBhZGRpbmc7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLm92ZXJsYXktbGlnaHQsIC5vdmVybGF5LWRhcmssIC5vdmVybGF5LWxpZ2h0LWdyYWRpZW50LCAub3ZlcmxheS1kYXJrLWdyYWRpZW50IHtcbiAgei1pbmRleDogMDtcbn1cblxuLy8gSGVyb1xuLmhlcm8ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICBwYWRkaW5nLXRvcDogNnJlbTtcbiAgcGFkZGluZy1ib3R0b206IDdyZW07XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcblxuICAmLmhlcm8tZnVsbHNjcmVlbiB7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgfVxuXG4gICYuaGVyby1sYXJnZSB7XG4gICAgaGVpZ2h0OiA1MDBweDtcbiAgfVxuXG4gICYuaGVyby1tZWRpdW0ge1xuICAgIGhlaWdodDogNDAwcHg7XG4gIH1cblxuICAmLmhlcm8tc21hbGwge1xuICAgIGhlaWdodDogMTEwcHg7XG4gIH1cblxuICAmLmhlcm8tdGlueSB7XG4gICAgaGVpZ2h0OiA4cmVtO1xuICB9XG4gIFxuICAuaGVhZGVyLWZpeGVkICYge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSAwO1xuICB9XG5cbiAgLy8mLnBhcmFsbGF4IHtcbiAgLy8gIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gIC8vfVxuXG4gIGgxIHtcbiAgICBjb2xvcjogJGhlYWRlci10ZXh0LWRhcms7XG4gICAgZm9udC1zaXplOiA0cmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICBoMiB7XG4gICAgY29sb3I6IHJnYmEoJGhlYWRlci10ZXh0LWRhcmssIDAuOCk7XG4gICAgZm9udC1zaXplOiAyLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIGgxICsgaDIge1xuICAgIG1hcmdpbi10b3A6IC00NXB4ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAmLnRleHQtbGlnaHQge1xuICAgIGgxIHtcbiAgICAgIGNvbG9yOiAkaGVhZGVyLXRleHQtbGlnaHQ7XG4gICAgfVxuICAgIGgyIHtcbiAgICAgIGNvbG9yOiByZ2JhKCRoZWFkZXItdGV4dC1saWdodCwgMC44KTtcbiAgICB9XG4gIH1cblxuICBwIHtcbiAgICBmb250LXNpemU6IDEzMCU7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgfVxuXG4gICN0by1zdGFydCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDEwcHg7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG4vLyBPdmVybGF5XG4uaW1hZ2Utb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAtMTtcblxuICAub3ZlcmxheS1saWdodCAmIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKCNmZmYsIDAuNCk7XG4gIH1cblxuICAub3ZlcmxheS1saWdodC1ncmFkaWVudCAmIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKCNmZmYsMC41KSwgcmdiYSgjZmZmLDAuMikpO1xuICB9XG5cbiAgLm92ZXJsYXktZGFyayAmIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKCMwMDAsIDAuNCk7XG4gIH1cblxuICAub3ZlcmxheS1kYXJrLWdyYWRpZW50ICYge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoIzAwMCwwLjUpLCByZ2JhKCMwMDAsMC4yKSk7XG4gIH1cbn1cblxuXG5cblxuXG5cblxuXG5cbiIsIi50aXRsZS1jZW50ZXIge1xuICBoMSwgaDIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4udGl0bGUtaDFoMiB7XG4gIGgxICB7XG4gICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICBzdHJvbmcsIGJvbGQge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIH1cbiAgfVxuXG59XG5cbi8vIFR5cG9ncmFwaHkgSGludHNcbi50aXRsZS1oMWgyLCAudGl0bGUtY2VudGVyIHtcbiAgaDEgKyBoMiB7XG4gICAgbWFyZ2luLXRvcDogLTM1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG59XG5cbmE6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbmltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuXG4vLyBDb2RlYmxvY2tzXG5wcmU6bm90KC5waHBkZWJ1Z2Jhci13aWRnZXRzLWNvZGUtYmxvY2spIHtcbiAgY29kZSB7XG4gICAgYmFja2dyb3VuZDogI2Y4ZjhmODtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgfVxufVxuXG5wcmUueGRlYnVnLXZhci1kdW1wIHtcbiAgYmFja2dyb3VuZDogI2Y4ZjhmODtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDFyZW0gIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxuLy8gSWNvbiBUd2Vha3NcbmkuZmEge1xuXG5cbiAgJi5mYS1oZWFydCwgJi5mYS1oZWFydC1vIHtcbiAgICAmLnB1bHNlIHtcbiAgICAgIGNvbG9yOiAjOTIwXG4gICAgfVxuICB9XG59XG5cbi8vIEZvbnQgV2VpZ2h0c1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5oZWF2eSB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5saWdodCB7XG4gIGZvbnQtd2VpZ2h0OiAyMDA7XG59XG5cbi8vIENvbG9yc1xuLnRleHQtbGlnaHQge1xuICBjb2xvcjogcmdiYSgkbGlnaHQtY29sb3IsIDAuOCk7XG5cbiAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgY29sb3I6IHJnYmEoJGxpZ2h0LWNvbG9yLCAwLjkpO1xuICB9XG59XG5cbi8vIEVycm9yIGNvbmZpZ3VyYXRpb25cbiNlcnJvciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiA1cmVtO1xuXG4gIC5pY29uIHtcbiAgICBmb250LXNpemU6IDUwcHg7XG4gIH1cbn1cblxuLy8gTWVzc2FnZXNcbiNtZXNzYWdlcyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG5cbiAgLmljb24ge1xuICAgIGZvbnQtc2l6ZTogMTIwJTtcbiAgfVxufVxuXG4vLyBOb3RpY2VzXG4ubm90aWNlcyB7XG4gIG1hcmdpbjogMS41cmVtIDA7XG4gIHAge1xuICAgIG1hcmdpbjogMXJlbSAwO1xuICB9XG59XG5cbiIsImZvcm0ge1xuICAuYnV0dG9uLXdyYXBwZXIge1xuICAgIG1hcmdpbi10b3A6IDAuNzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxuXG4gIHNwYW4ucmVxdWlyZWQge1xuICAgIGNvbG9yOiAkZXJyb3ItY29sb3I7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IDE1MCU7XG4gIH1cblxuICAuZm9ybS1pbnB1dFt0eXBlPXJhbmdlXSB7XG4gICAgYXBwZWFyYW5jZTogc2xpZGVyLWhvcml6b250YWw7XG4gICAgJjpmb2N1cyB7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgIH1cbiAgfVxufSIsIi5tb2JpbGUtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICAvL3dpZHRoOiAxMDAlO1xuICAvL2hlaWdodDogMTAwJTtcbiAgdG9wOiA0MCU7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbjogIDAgYXV0bztcbiAgei1pbmRleDogMjtcbn1cblxuLm1vYmlsZS1sb2dvIHtcbiAgc3ZnIHtcbiAgICBtYXgtd2lkdGg6IDE1MHB4O1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDEuNHJlbTtcblxuICAgIHBhdGgge1xuICAgICAgZmlsbDogJGxpZ2h0LWNvbG9yO1xuICAgIH1cblxuICB9XG59XG5cbi8vIEhhbWJ1cmdlciBNZW51XG4ubW9iaWxlLW1lbnUge1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDM7XG5cbiAgLmhlYWRlci1maXhlZCAmIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1kKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuYnV0dG9uX2NvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMXJlbTtcbiAgICByaWdodDogJGhvcml6LXBhZGRpbmc7XG4gICAgaGVpZ2h0OiAkbW9iaWxlLWJ1dHRvbi1oZWlnaHQ7XG4gICAgd2lkdGg6ICRtb2JpbGUtYnV0dG9uLXdpZHRoO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB6LWluZGV4OiAxMDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzIGVhc2UsIHRvcCAwLjVzIGVhc2U7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IC43O1xuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcblxuICAgICAgLnRvcCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMXB4KSB0cmFuc2xhdGVYKDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIGJhY2tncm91bmQ6ICRtb2JpbGUtY29sb3ItYWN0aXZlO1xuICAgICAgfVxuICAgICAgLm1pZGRsZSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6ICRtb2JpbGUtY29sb3ItYWN0aXZlO1xuICAgICAgfVxuXG4gICAgICAuYm90dG9tIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMXB4KSB0cmFuc2xhdGVYKDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkbW9iaWxlLWNvbG9yLWFjdGl2ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgIGJhY2tncm91bmQ6ICRtb2JpbGUtY29sb3ItbWFpbjtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGhlaWdodDogNXB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdHJhbnNpdGlvbjogIGFsbCAuMzVzIGVhc2U7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICY6bnRoLW9mLXR5cGUoMikge1xuICAgICAgICB0b3A6IDExcHg7XG4gICAgICB9XG5cbiAgICAgICY6bnRoLW9mLXR5cGUoMykge1xuICAgICAgICB0b3A6IDIycHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDAlO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjM1cywgdmlzaWJpbGl0eSAuMzVzLCBoZWlnaHQgLjM1cztcblxuICAmLm9wZW4ge1xuICAgIG9wYWNpdHk6IC45NTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIGhlaWdodDogMTAwJTtcblxuICB9XG4gIG5hdiB7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5vdmVybGF5LW1lbnUge1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDkwcHgpO1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG5cbiAgJiA+IC50cmVlIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG5cblxuLnRyZWVtZW51IHtcblxuICAmLnRyZWVtZW51LXJvb3Qge1xuICAgIG1hcmdpbjogMXJlbTtcbiAgfVxuXG4gIGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMCAwIDFweDtcbiAgICBwYWRkaW5nOiA1cHggMDtcbiAgICBsaW5lLWhlaWdodDogMS4ycmVtO1xuXG4gICAgYmFja2dyb3VuZDogcmdiYSgkZ3JheS1jb2xvci1kYXJrLDAuMSk7XG5cbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6IDEuMnJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcblxuICAgICAgJjpob3ZlciwgJjpmb2N1cywgJi5hY3RpdmUge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3ItbGlnaHQgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHVsIHtcbiAgICBtYXJnaW46IDAgMCAwIDFyZW07XG4gIH1cblxuICAudG9nZ2xlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDFyZW07XG4gICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IG1hcmdpbi1yaWdodDogMnB0O1xuICAgIH1cbiAgfVxuXG4gIGxpLnRyZWUtZW1wdHkgID4gLnRvZ2dsZXIge1xuICAgIG9wYWNpdHk6IDAuMzsgY3Vyc29yOiBkZWZhdWx0O1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXDIwMjJcIjtcbiAgICB9XG4gIH1cblxuICBsaS50cmVlLWNsb3NlZCA+IC50b2dnbGVyOmJlZm9yZSB7XG4gICAgY29udGVudDogXCIrXCI7XG4gIH1cblxuICBsaS50cmVlLW9wZW5lZCA+IC50b2dnbGVyOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXDIyMTJcIjtcbiAgfVxufVxuXG4ubW9iaWxlLW5hdi1vcGVuIHtcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xufVxuIiwiLmRlZmF1bHQtYW5pbWF0aW9uIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbn1cblxuLy8gUHVsc2UgQW5pbWF0aW9uXG4ucHVsc2Uge1xuICBhbmltYXRpb24tbmFtZTogcHVsc2VfYW5pbWF0aW9uO1xuICBhbmltYXRpb24tZHVyYXRpb246IDIwMDBtcztcbiAgdHJhbnNmb3JtLW9yaWdpbjo3MCUgNzAlO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xufVxuXG5Aa2V5ZnJhbWVzIHB1bHNlX2FuaW1hdGlvbiB7XG4gIDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuICAzMCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG4gIDQwJSB7IHRyYW5zZm9ybTogc2NhbGUoMS4wOCk7IH1cbiAgNTAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuICA2MCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG4gIDcwJSB7IHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7IH1cbiAgODAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuICAxMDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxufVxuIiwiI2hlYWRlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRoZWFkZXItaGVpZ2h0LWxhcmdlO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgkZ3JheS1jb2xvciwgMC4yKTtcbiAgQGV4dGVuZCAuZGVmYXVsdC1hbmltYXRpb247XG5cbiAgZm9udC1zaXplOiAwLjdyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG5cbiAgYmFja2dyb3VuZDogJGxpZ2h0LWNvbG9yO1xuICBjb2xvcjogJGRhcmstY29sb3I7XG5cbiAgYSB7XG4gICAgY29sb3I6ICRkYXJrLWNvbG9yO1xuICB9XG5cbiAgLmxvZ28gc3ZnIHBhdGgge1xuICAgIGZpbGw6ICRoZWFkZXItY29sb3ItZGFyaztcbiAgfVxuXG4gIC5oZWFkZXItZGFyayAmOm5vdCguc2Nyb2xsZWQpIHtcbiAgICBiYWNrZ3JvdW5kOiAkaGVhZGVyLWNvbG9yLWRhcms7XG4gICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiByZ2JhKCRsaWdodC1jb2xvciwgMC43KSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBhLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJGxpZ2h0LWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5kcm9wbWVudSB1bCB1bCBhIHtcbiAgICAgICAgY29sb3I6ICRkYXJrLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5sb2dvIHN2ZyBwYXRoIHtcbiAgICAgIGZpbGw6ICRsaWdodC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAuaGVhZGVyLWRhcmsuaGVhZGVyLXRyYW5zcGFyZW50ICY6bm90KC5zY3JvbGxlZCkge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoIzAwMCwgMC4wNSk7XG4gIH1cblxuICAuaGVhZGVyLXRyYW5zcGFyZW50ICY6bm90KC5zY3JvbGxlZCkge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoI2ZmZiwgMC4wNSk7XG4gICAgLy9ib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubmF2YmFyLXNlY3Rpb24ge1xuICAgIGhlaWdodDogJGhlYWRlci1oZWlnaHQtbGFyZ2U7XG4gICAgQGV4dGVuZCAuZGVmYXVsdC1hbmltYXRpb247XG4gIH1cblxuICAubG9nbyBzdmcge1xuICAgIHdpZHRoOiAxNTBweDtcbiAgICBkaXNwbGF5OiBpbmhlcml0O1xuXG4gICAgQGV4dGVuZCAuZGVmYXVsdC1hbmltYXRpb247XG4gIH1cblxuICAvLyBGaXhlZCBIZWFkZXIgc29sdXRpb25cbiAgLmhlYWRlci1maXhlZCAmIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDI7XG4gIH1cbn1cblxuLy8gQW5pbWF0ZSBGaXhlZCBIZWFkZXJcbmJvZHkuaGVhZGVyLWZpeGVkLmhlYWRlci1hbmltYXRlZCB7XG4gICNoZWFkZXIuc2Nyb2xsZWQge1xuICAgIGhlaWdodDogJGhlYWRlci1oZWlnaHQtc21hbGw7XG5cbiAgICAubmF2YmFyLXNlY3Rpb24ge1xuICAgICAgaGVpZ2h0OiAkaGVhZGVyLWhlaWdodC1zbWFsbDtcbiAgICB9XG5cbiAgICAubG9nbyBzdmcge1xuICAgICAgd2lkdGg6IDEwMHB4O1xuICAgIH1cblxuICAgIH4gLm1vYmlsZS1tZW51IC5idXR0b25fY29udGFpbmVyIHtcbiAgICAgIHRvcDogMC41cmVtO1xuICAgIH1cbiAgfVxufVxuXG4ubG9naW4tc3RhdHVzLXdyYXBwZXIge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIC5pY29uIHtcbiAgICBmb250LXNpemU6IDEyMCU7XG4gIH1cbn0iLCIvLyBTdGlja3kgRm9vdGVyIHNvbHV0aW9uXG5ib2R5LnN0aWNreS1mb290ZXIge1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICNwYWdlLXdyYXBwZXIge1xuICAgIGZsZXg6IDE7XG4gIH1cbn1cblxuI2Zvb3RlciB7XG4gIGNvbG9yOiAjYWNiM2MyO1xuICBwYWRkaW5nOiAxcmVtICRob3Jpei1wYWRkaW5nIDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn0iLCIuZHJvcG1lbnUge1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWQpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgdWwge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW46IDA7XG5cbiAgICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6ICRkcm9wbWVudS12ZXJ0LXBhZGRpbmcgKCRkcm9wbWVudS1ob3Jpei1wYWRkaW5nICsgJGRyb3BtZW51LWNoaWxkLXBhZGRpbmcpICRkcm9wbWVudS12ZXJ0LXBhZGRpbmcgJGRyb3BtZW51LWhvcml6LXBhZGRpbmc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICY6aG92ZXIsICY6Zm9jdXMsICYuYWN0aXZlIHtcbiAgICAgICAgICBjb2xvcjogJGRyb3BtZW51LWhvdmVyLXRleHQgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiAnXFxmMTA3JztcbiAgICAgICAgICBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJztcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtICgyICokZHJvcG1lbnUtY2hpbGQtcGFkZGluZyk7XG4gICAgICAgIH1cblxuICAgICAgICAmOm9ubHktY2hpbGQge1xuICAgICAgICAgIC8vYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkZHJvcG1lbnUtaG9yaXotcGFkZGluZztcblxuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgJiA+IHVsIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgdWwgbGkgYTpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcZjEwNSc7XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxMDAlO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6ICRkcm9wbWVudS1iZztcbiAgICAgIGJveC1zaGFkb3c6ICRkcm9wbWVudS1zaGFkb3c7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgICAgIHVsIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuICAmID4gdWwgPiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG5cbiAgLy8gQW5pbWF0aW9uIG9wdGlvbnNcbiAgJi5hbmltYXRlZCB7XG4gICAgdWwgbGkge1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuN3MsIGNvbG9yIDAuNXM7XG4gICAgfVxuXG4gICAgdWwgbGk6aG92ZXIgPiB1bCB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cblxuICAgIHVsIHVsIHtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MsIG9wYWNpdHkgLjVzO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgfVxuICB9XG59IiwiLyoqIEV4dHJhIGNvbHVtbnMgc3BhY2luZyAqKi9cbi5leHRyYS1zcGFjaW5nOm5vdCguY29sLTEyKSwgOm5vdCguY29sMTIpID4gLmUtY29udGVudCB7XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZCkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cblxuLyoqIEJyZWFkY3J1bWJzIHN0eWxpbmcgKiovXG4jYnJlYWRjcnVtYnMge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IC0xcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG5cbiAgaSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIHNwYW4sIGEge1xuICAgIHBhZGRpbmc6IDAgMC41cmVtO1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIHNwYW4sIGEge1xuICAgICY6bm90KDpmaXJzdC1jaGlsZCk6OmJlZm9yZSB7XG4gICAgICBjb2xvcjogI2U3ZTllZDtcbiAgICAgIGNvbnRlbnQ6IFwiL1wiO1xuICAgICAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLyoqIEJsb2cgTGlzdGluZyAqKi9cbi5ibG9nLWxpc3Rpbmcge1xuXG4gIC5icmlja2xheWVyLWNvbHVtbiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcblxuICB9XG4gIC5jYXJkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgIGJvcmRlcjogMDtcbiAgICBib3gtc2hhZG93OiAwIDEwcHggNDVweCAtOXB4IHJnYmEoMCwwLDAsMC4xKTtcbiAgfVxuXG4gIC5jYXJkLWZvb3RlciB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cblxuICAuYmxvZy1kYXRlIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gIH1cblxuICAubGFiZWwge1xuXG4gIH1cbn1cblxuLyoqIEJsb2cgSXRlbSAqKi9cbi5jb250ZW50LXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICB9XG59XG5cbi5sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLyoqIFBhZ2luYXRpb24gKiovXG51bC5wYWdpbmF0aW9uIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5wcmV2LW5leHQge1xuICBtYXJnaW4tdG9wOiA0cmVtO1xufVxuXG4vKiogU2lkZWJhciBzcGVjaWZpYyB0d2Vha3MgKiovXG4jc2lkZWJhciB7XG5cbiAgdWwucmVsYXRlZC1wYWdlcyB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgbGkge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cblxuICB9XG5cbiAgdWwuYXJjaGl2ZXMge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICAubGFiZWwge1xuICAgICAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wO1xuICAgIH1cbiAgfVxufSIsIiNtb2R1bGFyLWhlcm8ge1xuICAjdG8tc3RhcnQge1xuICAgIGJvdHRvbTogMy41cmVtO1xuICB9XG59XG5cbiNtb2R1bGFyLWZlYXR1cmVzIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICYub2Zmc2V0LWJveCB7XG4gICAgLmZyYW1lLWJveCB7XG4gICAgICBtYXJnaW46IC0zcmVtICgtMXJlbSAtICRsYXlvdXQtc3BhY2luZykgM3JlbTtcbiAgICAgIHBhZGRpbmc6IDFyZW0gMXJlbTtcbiAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1jb2xvcjtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCA3NXB4IDAgcmdiYSgkZGFyay1jb2xvciwgMC4xKTtcbiAgICB9XG4gIH1cblxuICAmLnNtYWxsIHtcblxuICAgIC5jb2x1bW5zIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xcmVtO1xuICAgIH1cblxuICAgIC5jb2x1bW46aG92ZXIge1xuICAgICAgLmZlYXR1cmUtaWNvbiBpIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5mZWF0dXJlLWljb24ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGxlZnQ7XG5cblxuICAgICAgaSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogaW5oZXJpdDtcbiAgICAgICAgZm9udC1zaXplOiA3MHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0byAxcmVtO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgY29sb3I6ICRncmF5LWNvbG9yO1xuICAgICAgICBAZXh0ZW5kIC5kZWZhdWx0LWFuaW1hdGlvbjtcblxuICAgICAgfVxuICAgICAgaDYge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZnJhbWUtYm94IHtcbiAgICBwYWRkaW5nOiAzcmVtIDA7XG5cbiAgICA+IHAge1xuICAgICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIC5jb2x1bW4ge1xuICAgIHBhZGRpbmc6IDFyZW07XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIC5mZWF0dXJlLWljb24ge1xuICAgICAgICBjb2xvcjogJGdyYXktY29sb3I7XG4gICAgICAgIGg2IHtcbiAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5mZWF0dXJlLWNvbnRlbnQge1xuICAgICAgICBjb2xvcjogJGdyYXktY29sb3ItZGFyaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZmVhdHVyZS1pY29uIHtcbiAgICBmb250LXNpemU6IDEzMHB4O1xuICAgIGhlaWdodDogMTAwcHg7XG4gICAgY29sb3I6ICRncmF5LWNvbG9yLWxpZ2h0O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAxcmVtIDA7XG4gICAgQGV4dGVuZCAuZGVmYXVsdC1hbmltYXRpb247XG5cbiAgICBpIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuXG4gICAgaDYge1xuICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LWNvbG9yO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbG9yOiAkZ3JheS1jb2xvci1kYXJrO1xuICAgIH1cbiAgfVxuXG4gIC5mZWF0dXJlLWNvbnRlbnQge1xuICAgIGNvbG9yOiAkZ3JheS1jb2xvcjtcbiAgfVxufVxuXG4jbW9kdWxhci10ZXh0IHtcbiAgcGFkZGluZy10b3A6IDRyZW07XG4gIHBhZGRpbmctYm90dG9tOiA0cmVtO1xufSJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQWVBQSxBQUFBLElBQUksQ0FBQyxFQUNILE1BQU0sRUFBRSxJQUFJLEdBQ2I7O0FBRUQsQUFDRSxhQURXLENBQ1gsVUFBVSxDQUFDLEVBQ1QsT0FBTyxFRkpJLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxHRUt2Qjs7QUFHRCxBQUFjLGFBQUQsQ0FOZixhQUFhLENBTUssRUFDZCxXQUFXLEVGTk8sSUFBSSxHRU92Qjs7QUFHSCxBQUNtQixhQUROLENBQ1gsS0FBSyxHQUFHLE1BQU0sR0FBRyxhQUFhLENBQUMsRUFDN0IsV0FBVyxFQUFFLENBQUMsR0FDZjs7QUFHSCxBQUFBLE9BQU8sQUFBQSxRQUFRLENBQUMsRUFDZCxZQUFZLEVGckJFLElBQUksRUVzQmxCLGFBQWEsRUZ0QkMsSUFBSSxFRXVCbEIsUUFBUSxFQUFFLFFBQVEsR0FDbkI7O0FBRUQsQUFBQSxjQUFjLEVBQUUsQUFBQSxhQUFhLEVBQUUsQUFBQSx1QkFBdUIsRUFBRSxBQUFBLHNCQUFzQixDQUFDLEVBQzdFLE9BQU8sRUFBRSxDQUFDLEdBQ1g7O0FBR0QsQUFBQSxLQUFLLENBQUMsRUFDSixPQUFPLEVBQUUsSUFBSSxFQUNiLFdBQVcsRUFBRSxNQUFNLEVBQ25CLGVBQWUsRUFBRSxNQUFNLEVBRXZCLFdBQVcsRUFBRSxJ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 */
