.wp-block-accordion{box-sizing:border-box}.wp-block-accordion-item.is-open>.wp-block-accordion-heading .wp-block-accordion-heading__toggle-icon{transform:rotate(45deg)}@media (prefers-reduced-motion:no-preference){.wp-block-accordion-item{transition:grid-template-rows .3s ease-out}.wp-block-accordion-item>.wp-block-accordion-heading .wp-block-accordion-heading__toggle-icon{transition:transform .2s ease-in-out}}.wp-block-accordion-heading__toggle{align-items:center;background:none;border:none;color:inherit;cursor:pointer;display:flex;font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;overflow:hidden;padding:var(--wp--preset--spacing--20,1em) 0;text-align:inherit;text-decoration:inherit;text-transform:inherit;width:100%;word-spacing:inherit}.wp-block-accordion-heading__toggle:not(:focus-visible){outline:none}.wp-block-accordion-heading__toggle:hover .wp-block-accordion-heading__toggle-title{text-decoration:underline}.wp-block-accordion-heading__toggle-title{flex:1}.wp-block-accordion-heading__toggle-icon{align-items:center;display:flex;height:1.2em;justify-content:center;width:1.2em}.wp-block-accordion-panel[aria-hidden=true],.wp-block-accordion-panel[inert]{display:none;margin-block-start:0}.wp-block-archives{box-sizing:border-box}.wp-block-archives-dropdown label{display:block}.wp-block-avatar{line-height:0}.wp-block-avatar,.wp-block-avatar img{box-sizing:border-box}.wp-block-avatar.aligncenter{text-align:center}.wp-block-audio{box-sizing:border-box}.wp-block-audio :where(figcaption){margin-bottom:1em;margin-top:.5em}.wp-block-audio audio{min-width:300px;width:100%}.wp-block-breadcrumbs{box-sizing:border-box}.wp-block-breadcrumbs ol{flex-wrap:wrap;list-style:none}.wp-block-breadcrumbs li,.wp-block-breadcrumbs ol{align-items:center;display:flex;margin:0;padding:0}.wp-block-breadcrumbs li:not(:last-child):after{content:var(--separator,"/");margin:0 .5em;opacity:.7}.wp-block-breadcrumbs span{color:inherit}.wp-block-button__link{align-content:center;box-sizing:border-box;cursor:pointer;display:inline-block;height:100%;text-align:center;word-break:break-word}.wp-block-button__link.aligncenter{text-align:center}.wp-block-button__link.alignright{text-align:right}:where(.wp-block-button__link){border-radius:9999px;box-shadow:none;padding:calc(.667em + 2px) calc(1.333em + 2px);text-decoration:none}.wp-block-button[style*=text-decoration] .wp-block-button__link{text-decoration:inherit}.wp-block-buttons>.wp-block-button.has-custom-width{max-width:none}.wp-block-buttons>.wp-block-button.has-custom-width .wp-block-button__link{width:100%}.wp-block-buttons>.wp-block-button.has-custom-font-size .wp-block-button__link{font-size:inherit}.wp-block-buttons>.wp-block-button.wp-block-button__width-25{width:calc(25% - var(--wp--style--block-gap, .5em)*.75)}.wp-block-buttons>.wp-block-button.wp-block-button__width-50{width:calc(50% - var(--wp--style--block-gap, .5em)*.5)}.wp-block-buttons>.wp-block-button.wp-block-button__width-75{width:calc(75% - var(--wp--style--block-gap, .5em)*.25)}.wp-block-buttons>.wp-block-button.wp-block-button__width-100{flex-basis:100%;width:100%}.wp-block-buttons.is-vertical>.wp-block-button.wp-block-button__width-25{width:25%}.wp-block-buttons.is-vertical>.wp-block-button.wp-block-button__width-50{width:50%}.wp-block-buttons.is-vertical>.wp-block-button.wp-block-button__width-75{width:75%}.wp-block-button.is-style-squared,.wp-block-button__link.wp-block-button.is-style-squared{border-radius:0}.wp-block-button.no-border-radius,.wp-block-button__link.no-border-radius{border-radius:0!important}:root :where(.wp-block-button .wp-block-button__link.is-style-outline),:root :where(.wp-block-button.is-style-outline>.wp-block-button__link){border:2px solid;padding:.667em 1.333em}:root :where(.wp-block-button .wp-block-button__link.is-style-outline:not(.has-text-color)),:root :where(.wp-block-button.is-style-outline>.wp-block-button__link:not(.has-text-color)){color:currentColor}:root :where(.wp-block-button .wp-block-button__link.is-style-outline:not(.has-background)),:root :where(.wp-block-button.is-style-outline>.wp-block-button__link:not(.has-background)){background-color:initial;background-image:none}.wp-block-buttons{box-sizing:border-box}.wp-block-buttons.is-vertical{flex-direction:column}.wp-block-buttons.is-vertical>.wp-block-button:last-child{margin-bottom:0}.wp-block-buttons>.wp-block-button{display:inline-block;margin:0}.wp-block-buttons.is-content-justification-left{justify-content:flex-start}.wp-block-buttons.is-content-justification-left.is-vertical{align-items:flex-start}.wp-block-buttons.is-content-justification-center{justify-content:center}.wp-block-buttons.is-content-justification-center.is-vertical{align-items:center}.wp-block-buttons.is-content-justification-right{justify-content:flex-end}.wp-block-buttons.is-content-justification-right.is-vertical{align-items:flex-end}.wp-block-buttons.is-content-justification-space-between{justify-content:space-between}.wp-block-buttons.aligncenter{text-align:center}.wp-block-buttons:not(.is-content-justification-space-between,.is-content-justification-right,.is-content-justification-left,.is-content-justification-center) .wp-block-button.aligncenter{margin-left:auto;margin-right:auto;width:100%}.wp-block-buttons[style*=text-decoration] .wp-block-button,.wp-block-buttons[style*=text-decoration] .wp-block-button__link{text-decoration:inherit}.wp-block-buttons.has-custom-font-size .wp-block-button__link{font-size:inherit}.wp-block-buttons .wp-block-button__link{width:100%}.wp-block-button.aligncenter,.wp-block-calendar{text-align:center}.wp-block-calendar td,.wp-block-calendar th{border:1px solid;padding:.25em}.wp-block-calendar th{font-weight:400}.wp-block-calendar caption{background-color:inherit}.wp-block-calendar table{border-collapse:collapse;width:100%}.wp-block-calendar table.has-background th{background-color:inherit}.wp-block-calendar table.has-text-color th{color:inherit}.wp-block-calendar :where(table:not(.has-text-color)){color:#40464d}.wp-block-calendar :where(table:not(.has-text-color)) td,.wp-block-calendar :where(table:not(.has-text-color)) th{border-color:#ddd}:where(.wp-block-calendar table:not(.has-background) th){background:#ddd}.wp-block-categories{box-sizing:border-box}.wp-block-categories.alignleft{margin-right:2em}.wp-block-categories.alignright{margin-left:2em}.wp-block-categories.wp-block-categories-dropdown.aligncenter{text-align:center}.wp-block-categories .wp-block-categories__label{display:block;width:100%}.wp-block-code{box-sizing:border-box}.wp-block-code code{
  /*!rtl:begin:ignore*/direction:ltr;display:block;font-family:inherit;overflow-wrap:break-word;text-align:initial;white-space:pre-wrap
  /*!rtl:end:ignore*/}.wp-block-columns{box-sizing:border-box;display:flex;flex-wrap:wrap!important}@media (min-width:782px){.wp-block-columns{flex-wrap:nowrap!important}}.wp-block-columns{align-items:normal!important}.wp-block-columns.are-vertically-aligned-top{align-items:flex-start}.wp-block-columns.are-vertically-aligned-center{align-items:center}.wp-block-columns.are-vertically-aligned-bottom{align-items:flex-end}@media (max-width:781px){.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column{flex-basis:100%!important}}@media (min-width:782px){.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column{flex-basis:0;flex-grow:1}.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column[style*=flex-basis]{flex-grow:0}}.wp-block-columns.is-not-stacked-on-mobile{flex-wrap:nowrap!important}.wp-block-columns.is-not-stacked-on-mobile>.wp-block-column{flex-basis:0;flex-grow:1}.wp-block-columns.is-not-stacked-on-mobile>.wp-block-column[style*=flex-basis]{flex-grow:0}:where(.wp-block-columns){margin-bottom:1.75em}:where(.wp-block-columns.has-background){padding:1.25em 2.375em}.wp-block-column{flex-grow:1;min-width:0;overflow-wrap:break-word;word-break:break-word}.wp-block-column.is-vertically-aligned-top{align-self:flex-start}.wp-block-column.is-vertically-aligned-center{align-self:center}.wp-block-column.is-vertically-aligned-bottom{align-self:flex-end}.wp-block-column.is-vertically-aligned-stretch{align-self:stretch}.wp-block-column.is-vertically-aligned-bottom,.wp-block-column.is-vertically-aligned-center,.wp-block-column.is-vertically-aligned-top{width:100%}.wp-block-post-comments{box-sizing:border-box}.wp-block-post-comments .alignleft{float:left}.wp-block-post-comments .alignright{float:right}.wp-block-post-comments .navigation:after{clear:both;content:"";display:table}.wp-block-post-comments .commentlist{clear:both;list-style:none;margin:0;padding:0}.wp-block-post-comments .commentlist .comment{min-height:2.25em;padding-left:3.25em}.wp-block-post-comments .commentlist .comment p{font-size:1em;line-height:1.8;margin:1em 0}.wp-block-post-comments .commentlist .children{list-style:none;margin:0;padding:0}.wp-block-post-comments .comment-author{line-height:1.5}.wp-block-post-comments .comment-author .avatar{border-radius:1.5em;display:block;float:left;height:2.5em;margin-right:.75em;margin-top:.5em;width:2.5em}.wp-block-post-comments .comment-author cite{font-style:normal}.wp-block-post-comments .comment-meta{font-size:.875em;line-height:1.5}.wp-block-post-comments .comment-meta b{font-weight:400}.wp-block-post-comments .comment-meta .comment-awaiting-moderation{display:block;margin-bottom:1em;margin-top:1em}.wp-block-post-comments .comment-body .commentmetadata{font-size:.875em}.wp-block-post-comments .comment-form-author label,.wp-block-post-comments .comment-form-comment label,.wp-block-post-comments .comment-form-email label,.wp-block-post-comments .comment-form-url label{display:block;margin-bottom:.25em}.wp-block-post-comments .comment-form input:not([type=submit]):not([type=checkbox]),.wp-block-post-comments .comment-form textarea{box-sizing:border-box;display:block;width:100%}.wp-block-post-comments .comment-form-cookies-consent{display:flex;gap:.25em}.wp-block-post-comments .comment-form-cookies-consent #wp-comment-cookies-consent{margin-top:.35em}.wp-block-post-comments .comment-reply-title{margin-bottom:0}.wp-block-post-comments .comment-reply-title :where(small){font-size:var(--wp--preset--font-size--medium,smaller);margin-left:.5em}.wp-block-post-comments .reply{font-size:.875em;margin-bottom:1.4em}.wp-block-post-comments input:not([type=submit]),.wp-block-post-comments textarea{border:1px solid #949494;font-family:inherit;font-size:1em}.wp-block-post-comments input:not([type=submit]):not([type=checkbox]),.wp-block-post-comments textarea{padding:calc(.667em + 2px)}:where(.wp-block-post-comments input[type=submit]){border:none}.wp-block-comments{box-sizing:border-box}.wp-block-comments-pagination>.wp-block-comments-pagination-next,.wp-block-comments-pagination>.wp-block-comments-pagination-numbers,.wp-block-comments-pagination>.wp-block-comments-pagination-previous{font-size:inherit}.wp-block-comments-pagination .wp-block-comments-pagination-previous-arrow{display:inline-block;margin-right:1ch}.wp-block-comments-pagination .wp-block-comments-pagination-previous-arrow:not(.is-arrow-chevron){transform:scaleX(1)}.wp-block-comments-pagination .wp-block-comments-pagination-next-arrow{display:inline-block;margin-left:1ch}.wp-block-comments-pagination .wp-block-comments-pagination-next-arrow:not(.is-arrow-chevron){transform:scaleX(1)}.wp-block-comments-pagination.aligncenter{justify-content:center}.wp-block-comment-template{box-sizing:border-box;list-style:none;margin-bottom:0;max-width:100%;padding:0}.wp-block-comment-template li{clear:both}.wp-block-comment-template ol{list-style:none;margin-bottom:0;max-width:100%;padding-left:2rem}.wp-block-comment-template.alignleft{float:left}.wp-block-comment-template.aligncenter{margin-left:auto;margin-right:auto;width:fit-content}.wp-block-comment-template.alignright{float:right}.wp-block-comment-date{box-sizing:border-box}.comment-awaiting-moderation{display:block;font-size:.875em;line-height:1.5}.wp-block-comment-author-name,.wp-block-comment-content,.wp-block-comment-edit-link,.wp-block-comment-reply-link{box-sizing:border-box}.wp-block-cover,.wp-block-cover-image{align-items:center;background-position:50%;box-sizing:border-box;display:flex;justify-content:center;min-height:430px;overflow:hidden;overflow:clip;padding:1em;position:relative}.wp-block-cover .has-background-dim:not([class*=-background-color]),.wp-block-cover-image .has-background-dim:not([class*=-background-color]),.wp-block-cover-image.has-background-dim:not([class*=-background-color]),.wp-block-cover.has-background-dim:not([class*=-background-color]){background-color:#000}.wp-block-cover .has-background-dim.has-background-gradient,.wp-block-cover-image .has-background-dim.has-background-gradient{background-color:initial}.wp-block-cover-image.has-background-dim:before,.wp-block-cover.has-background-dim:before{background-color:inherit;content:""}.wp-block-cover .wp-block-cover__background,.wp-block-cover .wp-block-cover__gradient-background,.wp-block-cover-image .wp-block-cover__background,.wp-block-cover-image .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim:not(.has-background-gradient):before,.wp-block-cover.has-background-dim:not(.has-background-gradient):before{bottom:0;left:0;opacity:.5;position:absolute;right:0;top:0}.wp-block-cover-image.has-background-dim.has-background-dim-10 .wp-block-cover__background,.wp-block-cover-image.has-background-dim.has-background-dim-10 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-10:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-10 .wp-block-cover__background,.wp-block-cover.has-background-dim.has-background-dim-10 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-10:not(.has-background-gradient):before{opacity:.1}.wp-block-cover-image.has-background-dim.has-background-dim-20 .wp-block-cover__background,.wp-block-cover-image.has-background-dim.has-background-dim-20 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-20:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-20 .wp-block-cover__background,.wp-block-cover.has-background-dim.has-background-dim-20 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-20:not(.has-background-gradient):before{opacity:.2}.wp-block-cover-image.has-background-dim.has-background-dim-30 .wp-block-cover__background,.wp-block-cover-image.has-background-dim.has-background-dim-30 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-30:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-30 .wp-block-cover__background,.wp-block-cover.has-background-dim.has-background-dim-30 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-30:not(.has-background-gradient):before{opacity:.3}.wp-block-cover-image.has-background-dim.has-background-dim-40 .wp-block-cover__background,.wp-block-cover-image.has-background-dim.has-background-dim-40 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-40:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-40 .wp-block-cover__background,.wp-block-cover.has-background-dim.has-background-dim-40 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-40:not(.has-background-gradient):before{opacity:.4}.wp-block-cover-image.has-background-dim.has-background-dim-50 .wp-block-cover__background,.wp-block-cover-image.has-background-dim.has-background-dim-50 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-50:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-50 .wp-block-cover__background,.wp-block-cover.has-background-dim.has-background-dim-50 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-50:not(.has-background-gradient):before{opacity:.5}.wp-block-cover-image.has-background-dim.has-background-dim-60 .wp-block-cover__background,.wp-block-cover-image.has-background-dim.has-background-dim-60 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-60:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-60 .wp-block-cover__background,.wp-block-cover.has-background-dim.has-background-dim-60 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-60:not(.has-background-gradient):before{opacity:.6}.wp-block-cover-image.has-background-dim.has-background-dim-70 .wp-block-cover__background,.wp-block-cover-image.has-background-dim.has-background-dim-70 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-70:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-70 .wp-block-cover__background,.wp-block-cover.has-background-dim.has-background-dim-70 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-70:not(.has-background-gradient):before{opacity:.7}.wp-block-cover-image.has-background-dim.has-background-dim-80 .wp-block-cover__background,.wp-block-cover-image.has-background-dim.has-background-dim-80 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-80:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-80 .wp-block-cover__background,.wp-block-cover.has-background-dim.has-background-dim-80 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-80:not(.has-background-gradient):before{opacity:.8}.wp-block-cover-image.has-background-dim.has-background-dim-90 .wp-block-cover__background,.wp-block-cover-image.has-background-dim.has-background-dim-90 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-90:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-90 .wp-block-cover__background,.wp-block-cover.has-background-dim.has-background-dim-90 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-90:not(.has-background-gradient):before{opacity:.9}.wp-block-cover-image.has-background-dim.has-background-dim-100 .wp-block-cover__background,.wp-block-cover-image.has-background-dim.has-background-dim-100 .wp-block-cover__gradient-background,.wp-block-cover-image.has-background-dim.has-background-dim-100:not(.has-background-gradient):before,.wp-block-cover.has-background-dim.has-background-dim-100 .wp-block-cover__background,.wp-block-cover.has-background-dim.has-background-dim-100 .wp-block-cover__gradient-background,.wp-block-cover.has-background-dim.has-background-dim-100:not(.has-background-gradient):before{opacity:1}.wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-0,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-0,.wp-block-cover-image .wp-block-cover__background.has-background-dim.has-background-dim-0,.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-0{opacity:0}.wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-10,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-10,.wp-block-cover-image .wp-block-cover__background.has-background-dim.has-background-dim-10,.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-10{opacity:.1}.wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-20,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-20,.wp-block-cover-image .wp-block-cover__background.has-background-dim.has-background-dim-20,.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-20{opacity:.2}.wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-30,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-30,.wp-block-cover-image .wp-block-cover__background.has-background-dim.has-background-dim-30,.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-30{opacity:.3}.wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-40,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-40,.wp-block-cover-image .wp-block-cover__background.has-background-dim.has-background-dim-40,.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-40{opacity:.4}.wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-50,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-50,.wp-block-cover-image .wp-block-cover__background.has-background-dim.has-background-dim-50,.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-50{opacity:.5}.wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-60,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-60,.wp-block-cover-image .wp-block-cover__background.has-background-dim.has-background-dim-60,.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-60{opacity:.6}.wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-70,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-70,.wp-block-cover-image .wp-block-cover__background.has-background-dim.has-background-dim-70,.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-70{opacity:.7}.wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-80,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-80,.wp-block-cover-image .wp-block-cover__background.has-background-dim.has-background-dim-80,.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-80{opacity:.8}.wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-90,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-90,.wp-block-cover-image .wp-block-cover__background.has-background-dim.has-background-dim-90,.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-90{opacity:.9}.wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-100,.wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-100,.wp-block-cover-image .wp-block-cover__background.has-background-dim.has-background-dim-100,.wp-block-cover-image .wp-block-cover__gradient-background.has-background-dim.has-background-dim-100{opacity:1}.wp-block-cover-image.alignleft,.wp-block-cover-image.alignright,.wp-block-cover.alignleft,.wp-block-cover.alignright{max-width:420px;width:100%}.wp-block-cover-image.aligncenter,.wp-block-cover-image.alignleft,.wp-block-cover-image.alignright,.wp-block-cover.aligncenter,.wp-block-cover.alignleft,.wp-block-cover.alignright{display:flex}.wp-block-cover .wp-block-cover__inner-container,.wp-block-cover-image .wp-block-cover__inner-container{color:inherit;position:relative;width:100%}.wp-block-cover-image.is-position-top-left,.wp-block-cover.is-position-top-left{align-items:flex-start;justify-content:flex-start}.wp-block-cover-image.is-position-top-center,.wp-block-cover.is-position-top-center{align-items:flex-start;justify-content:center}.wp-block-cover-image.is-position-top-right,.wp-block-cover.is-position-top-right{align-items:flex-start;justify-content:flex-end}.wp-block-cover-image.is-position-center-left,.wp-block-cover.is-position-center-left{align-items:center;justify-content:flex-start}.wp-block-cover-image.is-position-center-center,.wp-block-cover.is-position-center-center{align-items:center;justify-content:center}.wp-block-cover-image.is-position-center-right,.wp-block-cover.is-position-center-right{align-items:center;justify-content:flex-end}.wp-block-cover-image.is-position-bottom-left,.wp-block-cover.is-position-bottom-left{align-items:flex-end;justify-content:flex-start}.wp-block-cover-image.is-position-bottom-center,.wp-block-cover.is-position-bottom-center{align-items:flex-end;justify-content:center}.wp-block-cover-image.is-position-bottom-right,.wp-block-cover.is-position-bottom-right{align-items:flex-end;justify-content:flex-end}.wp-block-cover-image.has-custom-content-position.has-custom-content-position .wp-block-cover__inner-container,.wp-block-cover.has-custom-content-position.has-custom-content-position .wp-block-cover__inner-container{margin:0}.wp-block-cover-image.has-custom-content-position.has-custom-content-position.is-position-bottom-left .wp-block-cover__inner-container,.wp-block-cover-image.has-custom-content-position.has-custom-content-position.is-position-bottom-right .wp-block-cover__inner-container,.wp-block-cover-image.has-custom-content-position.has-custom-content-position.is-position-center-left .wp-block-cover__inner-container,.wp-block-cover-image.has-custom-content-position.has-custom-content-position.is-position-center-right .wp-block-cover__inner-container,.wp-block-cover-image.has-custom-content-position.has-custom-content-position.is-position-top-left .wp-block-cover__inner-container,.wp-block-cover-image.has-custom-content-position.has-custom-content-position.is-position-top-right .wp-block-cover__inner-container,.wp-block-cover.has-custom-content-position.has-custom-content-position.is-position-bottom-left .wp-block-cover__inner-container,.wp-block-cover.has-custom-content-position.has-custom-content-position.is-position-bottom-right .wp-block-cover__inner-container,.wp-block-cover.has-custom-content-position.has-custom-content-position.is-position-center-left .wp-block-cover__inner-container,.wp-block-cover.has-custom-content-position.has-custom-content-position.is-position-center-right .wp-block-cover__inner-container,.wp-block-cover.has-custom-content-position.has-custom-content-position.is-position-top-left .wp-block-cover__inner-container,.wp-block-cover.has-custom-content-position.has-custom-content-position.is-position-top-right .wp-block-cover__inner-container{margin:0;width:auto}.wp-block-cover .wp-block-cover__image-background,.wp-block-cover video.wp-block-cover__video-background,.wp-block-cover-image .wp-block-cover__image-background,.wp-block-cover-image video.wp-block-cover__video-background{border:none;bottom:0;box-shadow:none;height:100%;left:0;margin:0;max-height:none;max-width:none;object-fit:cover;outline:none;padding:0;position:absolute;right:0;top:0;width:100%}.wp-block-cover-image.has-parallax,.wp-block-cover.has-parallax,.wp-block-cover__image-background.has-parallax,video.wp-block-cover__video-background.has-parallax{background-attachment:fixed;background-repeat:no-repeat;background-size:cover}@supports (-webkit-touch-callout:inherit){.wp-block-cover-image.has-parallax,.wp-block-cover.has-parallax,.wp-block-cover__image-background.has-parallax,video.wp-block-cover__video-background.has-parallax{background-attachment:scroll}}@media (prefers-reduced-motion:reduce){.wp-block-cover-image.has-parallax,.wp-block-cover.has-parallax,.wp-block-cover__image-background.has-parallax,video.wp-block-cover__video-background.has-parallax{background-attachment:scroll}}.wp-block-cover-image.is-repeated,.wp-block-cover.is-repeated,.wp-block-cover__image-background.is-repeated,video.wp-block-cover__video-background.is-repeated{background-repeat:repeat;background-size:auto}.wp-block-cover-image-text,.wp-block-cover-image-text a,.wp-block-cover-image-text a:active,.wp-block-cover-image-text a:focus,.wp-block-cover-image-text a:hover,.wp-block-cover-text,.wp-block-cover-text a,.wp-block-cover-text a:active,.wp-block-cover-text a:focus,.wp-block-cover-text a:hover,section.wp-block-cover-image h2,section.wp-block-cover-image h2 a,section.wp-block-cover-image h2 a:active,section.wp-block-cover-image h2 a:focus,section.wp-block-cover-image h2 a:hover{color:#fff}.wp-block-cover-image .wp-block-cover.has-left-content{justify-content:flex-start}.wp-block-cover-image .wp-block-cover.has-right-content{justify-content:flex-end}.wp-block-cover-image.has-left-content .wp-block-cover-image-text,.wp-block-cover.has-left-content .wp-block-cover-text,section.wp-block-cover-image.has-left-content>h2{margin-left:0;text-align:left}.wp-block-cover-image.has-right-content .wp-block-cover-image-text,.wp-block-cover.has-right-content .wp-block-cover-text,section.wp-block-cover-image.has-right-content>h2{margin-right:0;text-align:right}.wp-block-cover .wp-block-cover-text,.wp-block-cover-image .wp-block-cover-image-text,section.wp-block-cover-image>h2{font-size:2em;line-height:1.25;margin-bottom:0;max-width:840px;padding:.44em;text-align:center;z-index:1}:where(.wp-block-cover-image:not(.has-text-color)),:where(.wp-block-cover:not(.has-text-color)){color:#fff}:where(.wp-block-cover-image.is-light:not(.has-text-color)),:where(.wp-block-cover.is-light:not(.has-text-color)){color:#000}:root :where(.wp-block-cover h1:not(.has-text-color)),:root :where(.wp-block-cover h2:not(.has-text-color)),:root :where(.wp-block-cover h3:not(.has-text-color)),:root :where(.wp-block-cover h4:not(.has-text-color)),:root :where(.wp-block-cover h5:not(.has-text-color)),:root :where(.wp-block-cover h6:not(.has-text-color)),:root :where(.wp-block-cover p:not(.has-text-color)){color:inherit}body:not(.editor-styles-wrapper) .wp-block-cover:not(.wp-block-cover:has(.wp-block-cover__background+.wp-block-cover__inner-container)) .wp-block-cover__image-background,body:not(.editor-styles-wrapper) .wp-block-cover:not(.wp-block-cover:has(.wp-block-cover__background+.wp-block-cover__inner-container)) .wp-block-cover__video-background{z-index:0}body:not(.editor-styles-wrapper) .wp-block-cover:not(.wp-block-cover:has(.wp-block-cover__background+.wp-block-cover__inner-container)) .wp-block-cover__background,body:not(.editor-styles-wrapper) .wp-block-cover:not(.wp-block-cover:has(.wp-block-cover__background+.wp-block-cover__inner-container)) .wp-block-cover__gradient-background,body:not(.editor-styles-wrapper) .wp-block-cover:not(.wp-block-cover:has(.wp-block-cover__background+.wp-block-cover__inner-container)) .wp-block-cover__inner-container,body:not(.editor-styles-wrapper) .wp-block-cover:not(.wp-block-cover:has(.wp-block-cover__background+.wp-block-cover__inner-container)).has-background-dim:not(.has-background-gradient):before{z-index:1}.has-modal-open body:not(.editor-styles-wrapper) .wp-block-cover:not(.wp-block-cover:has(.wp-block-cover__background+.wp-block-cover__inner-container)) .wp-block-cover__inner-container{z-index:auto}.wp-block-details{box-sizing:border-box}.wp-block-details summary{cursor:pointer}.wp-block-embed.alignleft,.wp-block-embed.alignright,.wp-block[data-align=left]>[data-type="core/embed"],.wp-block[data-align=right]>[data-type="core/embed"]{max-width:360px;width:100%}.wp-block-embed.alignleft .wp-block-embed__wrapper,.wp-block-embed.alignright .wp-block-embed__wrapper,.wp-block[data-align=left]>[data-type="core/embed"] .wp-block-embed__wrapper,.wp-block[data-align=right]>[data-type="core/embed"] .wp-block-embed__wrapper{min-width:280px}.wp-block-cover .wp-block-embed{min-height:240px;min-width:320px}.wp-block-embed{overflow-wrap:break-word}.wp-block-embed :where(figcaption){margin-bottom:1em;margin-top:.5em}.wp-block-embed iframe{max-width:100%}.wp-block-embed__wrapper{position:relative}.wp-embed-responsive .wp-has-aspect-ratio .wp-block-embed__wrapper:before{content:"";display:block;padding-top:50%}.wp-embed-responsive .wp-has-aspect-ratio iframe{bottom:0;height:100%;left:0;position:absolute;right:0;top:0;width:100%}.wp-embed-responsive .wp-embed-aspect-21-9 .wp-block-embed__wrapper:before{padding-top:42.85%}.wp-embed-responsive .wp-embed-aspect-18-9 .wp-block-embed__wrapper:before{padding-top:50%}.wp-embed-responsive .wp-embed-aspect-16-9 .wp-block-embed__wrapper:before{padding-top:56.25%}.wp-embed-responsive .wp-embed-aspect-4-3 .wp-block-embed__wrapper:before{padding-top:75%}.wp-embed-responsive .wp-embed-aspect-1-1 .wp-block-embed__wrapper:before{padding-top:100%}.wp-embed-responsive .wp-embed-aspect-9-16 .wp-block-embed__wrapper:before{padding-top:177.77%}.wp-embed-responsive .wp-embed-aspect-1-2 .wp-block-embed__wrapper:before{padding-top:200%}.wp-block-file{box-sizing:border-box}.wp-block-file:not(.wp-element-button){font-size:.8em}.wp-block-file.aligncenter{text-align:center}.wp-block-file.alignright{text-align:right}.wp-block-file *+.wp-block-file__button{margin-left:.75em}:where(.wp-block-file){margin-bottom:1.5em}.wp-block-file__embed{margin-bottom:1em}:where(.wp-block-file__button){border-radius:2em;display:inline-block;padding:.5em 1em}:where(.wp-block-file__button):where(a):active,:where(.wp-block-file__button):where(a):focus,:where(.wp-block-file__button):where(a):hover,:where(.wp-block-file__button):where(a):visited{box-shadow:none;color:#fff;opacity:.85;text-decoration:none}.wp-block-form-input__label{display:flex;flex-direction:column;gap:.25em;margin-bottom:.5em;width:100%}.wp-block-form-input__label.is-label-inline{align-items:center;flex-direction:row;gap:.5em}.wp-block-form-input__label.is-label-inline .wp-block-form-input__label-content{margin-bottom:.5em}.wp-block-form-input__label:has(input[type=checkbox]){flex-direction:row;width:fit-content}.wp-block-form-input__label:has(input[type=checkbox]) .wp-block-form-input__label-content{margin:0}.wp-block-form-input__label:has(.wp-block-form-input__label-content+input[type=checkbox]){flex-direction:row-reverse}.wp-block-form-input__label-content{width:fit-content}:where(.wp-block-form-input__input){font-size:1em;margin-bottom:.5em;padding:0 .5em}:where(.wp-block-form-input__input)[type=date],:where(.wp-block-form-input__input)[type=datetime-local],:where(.wp-block-form-input__input)[type=datetime],:where(.wp-block-form-input__input)[type=email],:where(.wp-block-form-input__input)[type=month],:where(.wp-block-form-input__input)[type=number],:where(.wp-block-form-input__input)[type=password],:where(.wp-block-form-input__input)[type=search],:where(.wp-block-form-input__input)[type=tel],:where(.wp-block-form-input__input)[type=text],:where(.wp-block-form-input__input)[type=time],:where(.wp-block-form-input__input)[type=url],:where(.wp-block-form-input__input)[type=week]{border-style:solid;border-width:1px;line-height:2;min-height:2em}textarea.wp-block-form-input__input{min-height:10em}.blocks-gallery-grid:not(.has-nested-images),.wp-block-gallery:not(.has-nested-images){display:flex;flex-wrap:wrap;list-style-type:none;margin:0;padding:0}.blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-image,.blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-item,.wp-block-gallery:not(.has-nested-images) .blocks-gallery-image,.wp-block-gallery:not(.has-nested-images) .blocks-gallery-item{display:flex;flex-direction:column;flex-grow:1;justify-content:center;margin:0 1em 1em 0;position:relative;width:calc(50% - 1em)}.blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-image:nth-of-type(2n),.blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-item:nth-of-type(2n),.wp-block-gallery:not(.has-nested-images) .blocks-gallery-image:nth-of-type(2n),.wp-block-gallery:not(.has-nested-images) .blocks-gallery-item:nth-of-type(2n){margin-right:0}.blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-image figure,.blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-item figure,.wp-block-gallery:not(.has-nested-images) .blocks-gallery-image figure,.wp-block-gallery:not(.has-nested-images) .blocks-gallery-item figure{align-items:flex-end;display:flex;height:100%;justify-content:flex-start;margin:0}.blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-image img,.blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-item img,.wp-block-gallery:not(.has-nested-images) .blocks-gallery-image img,.wp-block-gallery:not(.has-nested-images) .blocks-gallery-item img{display:block;height:auto;max-width:100%;width:auto}.blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-image figcaption,.blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-item figcaption,.wp-block-gallery:not(.has-nested-images) .blocks-gallery-image figcaption,.wp-block-gallery:not(.has-nested-images) .blocks-gallery-item figcaption{background:linear-gradient(0deg,#000000b3,#0000004d 70%,#0000);bottom:0;box-sizing:border-box;color:#fff;font-size:.8em;margin:0;max-height:100%;overflow:auto;padding:3em .77em .7em;position:absolute;text-align:center;width:100%;z-index:2}.blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-image figcaption img,.blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-item figcaption img,.wp-block-gallery:not(.has-nested-images) .blocks-gallery-image figcaption img,.wp-block-gallery:not(.has-nested-images) .blocks-gallery-item figcaption img{display:inline}.blocks-gallery-grid:not(.has-nested-images) figcaption,.wp-block-gallery:not(.has-nested-images) figcaption{flex-grow:1}.blocks-gallery-grid:not(.has-nested-images).is-cropped .blocks-gallery-image a,.blocks-gallery-grid:not(.has-nested-images).is-cropped .blocks-gallery-image img,.blocks-gallery-grid:not(.has-nested-images).is-cropped .blocks-gallery-item a,.blocks-gallery-grid:not(.has-nested-images).is-cropped .blocks-gallery-item img,.wp-block-gallery:not(.has-nested-images).is-cropped .blocks-gallery-image a,.wp-block-gallery:not(.has-nested-images).is-cropped .blocks-gallery-image img,.wp-block-gallery:not(.has-nested-images).is-cropped .blocks-gallery-item a,.wp-block-gallery:not(.has-nested-images).is-cropped .blocks-gallery-item img{flex:1;height:100%;object-fit:cover;width:100%}.blocks-gallery-grid:not(.has-nested-images).columns-1 .blocks-gallery-image,.blocks-gallery-grid:not(.has-nested-images).columns-1 .blocks-gallery-item,.wp-block-gallery:not(.has-nested-images).columns-1 .blocks-gallery-image,.wp-block-gallery:not(.has-nested-images).columns-1 .blocks-gallery-item{margin-right:0;width:100%}@media (min-width:600px){.blocks-gallery-grid:not(.has-nested-images).columns-3 .blocks-gallery-image,.blocks-gallery-grid:not(.has-nested-images).columns-3 .blocks-gallery-item,.wp-block-gallery:not(.has-nested-images).columns-3 .blocks-gallery-image,.wp-block-gallery:not(.has-nested-images).columns-3 .blocks-gallery-item{margin-right:1em;width:calc(33.33333% - .66667em)}.blocks-gallery-grid:not(.has-nested-images).columns-4 .blocks-gallery-image,.blocks-gallery-grid:not(.has-nested-images).columns-4 .blocks-gallery-item,.wp-block-gallery:not(.has-nested-images).columns-4 .blocks-gallery-image,.wp-block-gallery:not(.has-nested-images).columns-4 .blocks-gallery-item{margin-right:1em;width:calc(25% - .75em)}.blocks-gallery-grid:not(.has-nested-images).columns-5 .blocks-gallery-image,.blocks-gallery-grid:not(.has-nested-images).columns-5 .blocks-gallery-item,.wp-block-gallery:not(.has-nested-images).columns-5 .blocks-gallery-image,.wp-block-gallery:not(.has-nested-images).columns-5 .blocks-gallery-item{margin-right:1em;width:calc(20% - .8em)}.blocks-gallery-grid:not(.has-nested-images).columns-6 .blocks-gallery-image,.blocks-gallery-grid:not(.has-nested-images).columns-6 .blocks-gallery-item,.wp-block-gallery:not(.has-nested-images).columns-6 .blocks-gallery-image,.wp-block-gallery:not(.has-nested-images).columns-6 .blocks-gallery-item{margin-right:1em;width:calc(16.66667% - .83333em)}.blocks-gallery-grid:not(.has-nested-images).columns-7 .blocks-gallery-image,.blocks-gallery-grid:not(.has-nested-images).columns-7 .blocks-gallery-item,.wp-block-gallery:not(.has-nested-images).columns-7 .blocks-gallery-image,.wp-block-gallery:not(.has-nested-images).columns-7 .blocks-gallery-item{margin-right:1em;width:calc(14.28571% - .85714em)}.blocks-gallery-grid:not(.has-nested-images).columns-8 .blocks-gallery-image,.blocks-gallery-grid:not(.has-nested-images).columns-8 .blocks-gallery-item,.wp-block-gallery:not(.has-nested-images).columns-8 .blocks-gallery-image,.wp-block-gallery:not(.has-nested-images).columns-8 .blocks-gallery-item{margin-right:1em;width:calc(12.5% - .875em)}.blocks-gallery-grid:not(.has-nested-images).columns-1 .blocks-gallery-image:nth-of-type(1n),.blocks-gallery-grid:not(.has-nested-images).columns-1 .blocks-gallery-item:nth-of-type(1n),.blocks-gallery-grid:not(.has-nested-images).columns-2 .blocks-gallery-image:nth-of-type(2n),.blocks-gallery-grid:not(.has-nested-images).columns-2 .blocks-gallery-item:nth-of-type(2n),.blocks-gallery-grid:not(.has-nested-images).columns-3 .blocks-gallery-image:nth-of-type(3n),.blocks-gallery-grid:not(.has-nested-images).columns-3 .blocks-gallery-item:nth-of-type(3n),.blocks-gallery-grid:not(.has-nested-images).columns-4 .blocks-gallery-image:nth-of-type(4n),.blocks-gallery-grid:not(.has-nested-images).columns-4 .blocks-gallery-item:nth-of-type(4n),.blocks-gallery-grid:not(.has-nested-images).columns-5 .blocks-gallery-image:nth-of-type(5n),.blocks-gallery-grid:not(.has-nested-images).columns-5 .blocks-gallery-item:nth-of-type(5n),.blocks-gallery-grid:not(.has-nested-images).columns-6 .blocks-gallery-image:nth-of-type(6n),.blocks-gallery-grid:not(.has-nested-images).columns-6 .blocks-gallery-item:nth-of-type(6n),.blocks-gallery-grid:not(.has-nested-images).columns-7 .blocks-gallery-image:nth-of-type(7n),.blocks-gallery-grid:not(.has-nested-images).columns-7 .blocks-gallery-item:nth-of-type(7n),.blocks-gallery-grid:not(.has-nested-images).columns-8 .blocks-gallery-image:nth-of-type(8n),.blocks-gallery-grid:not(.has-nested-images).columns-8 .blocks-gallery-item:nth-of-type(8n),.wp-block-gallery:not(.has-nested-images).columns-1 .blocks-gallery-image:nth-of-type(1n),.wp-block-gallery:not(.has-nested-images).columns-1 .blocks-gallery-item:nth-of-type(1n),.wp-block-gallery:not(.has-nested-images).columns-2 .blocks-gallery-image:nth-of-type(2n),.wp-block-gallery:not(.has-nested-images).columns-2 .blocks-gallery-item:nth-of-type(2n),.wp-block-gallery:not(.has-nested-images).columns-3 .blocks-gallery-image:nth-of-type(3n),.wp-block-gallery:not(.has-nested-images).columns-3 .blocks-gallery-item:nth-of-type(3n),.wp-block-gallery:not(.has-nested-images).columns-4 .blocks-gallery-image:nth-of-type(4n),.wp-block-gallery:not(.has-nested-images).columns-4 .blocks-gallery-item:nth-of-type(4n),.wp-block-gallery:not(.has-nested-images).columns-5 .blocks-gallery-image:nth-of-type(5n),.wp-block-gallery:not(.has-nested-images).columns-5 .blocks-gallery-item:nth-of-type(5n),.wp-block-gallery:not(.has-nested-images).columns-6 .blocks-gallery-image:nth-of-type(6n),.wp-block-gallery:not(.has-nested-images).columns-6 .blocks-gallery-item:nth-of-type(6n),.wp-block-gallery:not(.has-nested-images).columns-7 .blocks-gallery-image:nth-of-type(7n),.wp-block-gallery:not(.has-nested-images).columns-7 .blocks-gallery-item:nth-of-type(7n),.wp-block-gallery:not(.has-nested-images).columns-8 .blocks-gallery-image:nth-of-type(8n),.wp-block-gallery:not(.has-nested-images).columns-8 .blocks-gallery-item:nth-of-type(8n){margin-right:0}}.blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-image:last-child,.blocks-gallery-grid:not(.has-nested-images) .blocks-gallery-item:last-child,.wp-block-gallery:not(.has-nested-images) .blocks-gallery-image:last-child,.wp-block-gallery:not(.has-nested-images) .blocks-gallery-item:last-child{margin-right:0}.blocks-gallery-grid:not(.has-nested-images).alignleft,.blocks-gallery-grid:not(.has-nested-images).alignright,.wp-block-gallery:not(.has-nested-images).alignleft,.wp-block-gallery:not(.has-nested-images).alignright{max-width:420px;width:100%}.blocks-gallery-grid:not(.has-nested-images).aligncenter .blocks-gallery-item figure,.wp-block-gallery:not(.has-nested-images).aligncenter .blocks-gallery-item figure{justify-content:center}.wp-block-gallery:not(.is-cropped) .blocks-gallery-item{align-self:flex-start}figure.wp-block-gallery.has-nested-images{align-items:normal}.wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image){margin:0;width:calc(50% - var(--wp--style--unstable-gallery-gap, 16px)/2)}.wp-block-gallery.has-nested-images figure.wp-block-image{box-sizing:border-box;display:flex;flex-direction:column;flex-grow:1;justify-content:center;max-width:100%;position:relative}.wp-block-gallery.has-nested-images figure.wp-block-image>a,.wp-block-gallery.has-nested-images figure.wp-block-image>div{flex-direction:column;flex-grow:1;margin:0}.wp-block-gallery.has-nested-images figure.wp-block-image img{display:block;height:auto;max-width:100%!important;width:auto}.wp-block-gallery.has-nested-images figure.wp-block-image figcaption,.wp-block-gallery.has-nested-images figure.wp-block-image:has(figcaption):before{bottom:0;left:0;max-height:100%;position:absolute;right:0}.wp-block-gallery.has-nested-images figure.wp-block-image:has(figcaption):before{backdrop-filter:blur(3px);content:"";height:100%;-webkit-mask-image:linear-gradient(0deg,#000 20%,#0000);mask-image:linear-gradient(0deg,#000 20%,#0000);max-height:40%;pointer-events:none}.wp-block-gallery.has-nested-images figure.wp-block-image figcaption{box-sizing:border-box;color:#fff;font-size:13px;margin:0;overflow:auto;padding:1em;text-align:center;text-shadow:0 0 1.5px #000}.wp-block-gallery.has-nested-images figure.wp-block-image figcaption::-webkit-scrollbar{height:12px;width:12px}.wp-block-gallery.has-nested-images figure.wp-block-image figcaption::-webkit-scrollbar-track{background-color:initial}.wp-block-gallery.has-nested-images figure.wp-block-image figcaption::-webkit-scrollbar-thumb{background-clip:padding-box;background-color:initial;border:3px solid #0000;border-radius:8px}.wp-block-gallery.has-nested-images figure.wp-block-image figcaption:focus-within::-webkit-scrollbar-thumb,.wp-block-gallery.has-nested-images figure.wp-block-image figcaption:focus::-webkit-scrollbar-thumb,.wp-block-gallery.has-nested-images figure.wp-block-image figcaption:hover::-webkit-scrollbar-thumb{background-color:#fffc}.wp-block-gallery.has-nested-images figure.wp-block-image figcaption{scrollbar-color:#0000 #0000;scrollbar-gutter:stable both-edges;scrollbar-width:thin}.wp-block-gallery.has-nested-images figure.wp-block-image figcaption:focus,.wp-block-gallery.has-nested-images figure.wp-block-image figcaption:focus-within,.wp-block-gallery.has-nested-images figure.wp-block-image figcaption:hover{scrollbar-color:#fffc #0000}.wp-block-gallery.has-nested-images figure.wp-block-image figcaption{will-change:transform}@media (hover:none){.wp-block-gallery.has-nested-images figure.wp-block-image figcaption{scrollbar-color:#fffc #0000}}.wp-block-gallery.has-nested-images figure.wp-block-image figcaption{background:linear-gradient(0deg,#0006,#0000)}.wp-block-gallery.has-nested-images figure.wp-block-image figcaption img{display:inline}.wp-block-gallery.has-nested-images figure.wp-block-image figcaption a{color:inherit}.wp-block-gallery.has-nested-images figure.wp-block-image.has-custom-border img{box-sizing:border-box}.wp-block-gallery.has-nested-images figure.wp-block-image.has-custom-border>a,.wp-block-gallery.has-nested-images figure.wp-block-image.has-custom-border>div,.wp-block-gallery.has-nested-images figure.wp-block-image.is-style-rounded>a,.wp-block-gallery.has-nested-images figure.wp-block-image.is-style-rounded>div{flex:1 1 auto}.wp-block-gallery.has-nested-images figure.wp-block-image.has-custom-border figcaption,.wp-block-gallery.has-nested-images figure.wp-block-image.is-style-rounded figcaption{background:none;color:inherit;flex:initial;margin:0;padding:10px 10px 9px;position:relative;text-shadow:none}.wp-block-gallery.has-nested-images figure.wp-block-image.has-custom-border:before,.wp-block-gallery.has-nested-images figure.wp-block-image.is-style-rounded:before{content:none}.wp-block-gallery.has-nested-images figcaption{flex-basis:100%;flex-grow:1;text-align:center}.wp-block-gallery.has-nested-images:not(.is-cropped) figure.wp-block-image:not(#individual-image){margin-bottom:auto;margin-top:0}.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image){align-self:inherit}.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image)>a,.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image)>div:not(.components-drop-zone){display:flex}.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) a,.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) img{flex:1 0 0%;height:100%;object-fit:cover;width:100%}.wp-block-gallery.has-nested-images.columns-1 figure.wp-block-image:not(#individual-image){width:100%}@media (min-width:600px){.wp-block-gallery.has-nested-images.columns-3 figure.wp-block-image:not(#individual-image){width:calc(33.33333% - var(--wp--style--unstable-gallery-gap, 16px)*.66667)}.wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image){width:calc(25% - var(--wp--style--unstable-gallery-gap, 16px)*.75)}.wp-block-gallery.has-nested-images.columns-5 figure.wp-block-image:not(#individual-image){width:calc(20% - var(--wp--style--unstable-gallery-gap, 16px)*.8)}.wp-block-gallery.has-nested-images.columns-6 figure.wp-block-image:not(#individual-image){width:calc(16.66667% - var(--wp--style--unstable-gallery-gap, 16px)*.83333)}.wp-block-gallery.has-nested-images.columns-7 figure.wp-block-image:not(#individual-image){width:calc(14.28571% - var(--wp--style--unstable-gallery-gap, 16px)*.85714)}.wp-block-gallery.has-nested-images.columns-8 figure.wp-block-image:not(#individual-image){width:calc(12.5% - var(--wp--style--unstable-gallery-gap, 16px)*.875)}.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image){width:calc(33.33% - var(--wp--style--unstable-gallery-gap, 16px)*.66667)}.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):first-child:nth-last-child(2),.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):first-child:nth-last-child(2)~figure.wp-block-image:not(#individual-image){width:calc(50% - var(--wp--style--unstable-gallery-gap, 16px)*.5)}.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):first-child:last-child{width:100%}}.wp-block-gallery.has-nested-images.alignleft,.wp-block-gallery.has-nested-images.alignright{max-width:420px;width:100%}.wp-block-gallery.has-nested-images.aligncenter{justify-content:center}.wp-block-group{box-sizing:border-box}:where(.wp-block-group.wp-block-group-is-layout-constrained){position:relative}h1:where(.wp-block-heading).has-background,h2:where(.wp-block-heading).has-background,h3:where(.wp-block-heading).has-background,h4:where(.wp-block-heading).has-background,h5:where(.wp-block-heading).has-background,h6:where(.wp-block-heading).has-background{padding:1.25em 2.375em}h1.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h1.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h2.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h2.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h3.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h3.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h4.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h4.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h5.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h5.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]),h6.has-text-align-left[style*=writing-mode]:where([style*=vertical-lr]),h6.has-text-align-right[style*=writing-mode]:where([style*=vertical-rl]){rotate:180deg}.wp-block-image>a,.wp-block-image>figure>a{display:inline-block}.wp-block-image img{box-sizing:border-box;height:auto;max-width:100%;vertical-align:bottom}@media not (prefers-reduced-motion){.wp-block-image img.hide{visibility:hidden}.wp-block-image img.show{animation:show-content-image .4s}}.wp-block-image[style*=border-radius] img,.wp-block-image[style*=border-radius]>a{border-radius:inherit}.wp-block-image.has-custom-border img{box-sizing:border-box}.wp-block-image.aligncenter{text-align:center}.wp-block-image.alignfull>a,.wp-block-image.alignwide>a{width:100%}.wp-block-image.alignfull img,.wp-block-image.alignwide img{height:auto;width:100%}.wp-block-image .aligncenter,.wp-block-image .alignleft,.wp-block-image .alignright,.wp-block-image.aligncenter,.wp-block-image.alignleft,.wp-block-image.alignright{display:table}.wp-block-image .aligncenter>figcaption,.wp-block-image .alignleft>figcaption,.wp-block-image .alignright>figcaption,.wp-block-image.aligncenter>figcaption,.wp-block-image.alignleft>figcaption,.wp-block-image.alignright>figcaption{caption-side:bottom;display:table-caption}.wp-block-image .alignleft{float:left;margin:.5em 1em .5em 0}.wp-block-image .alignright{float:right;margin:.5em 0 .5em 1em}.wp-block-image .aligncenter{margin-left:auto;margin-right:auto}.wp-block-image :where(figcaption){margin-bottom:1em;margin-top:.5em}.wp-block-image.is-style-circle-mask img{border-radius:9999px}@supports ((-webkit-mask-image:none) or (mask-image:none)) or (-webkit-mask-image:none){.wp-block-image.is-style-circle-mask img{border-radius:0;-webkit-mask-image:url('data:image/svg+xml;utf8,<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><circle cx="50" cy="50" r="50"/></svg>');mask-image:url('data:image/svg+xml;utf8,<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg"><circle cx="50" cy="50" r="50"/></svg>');mask-mode:alpha;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain}}:root :where(.wp-block-image.is-style-rounded img,.wp-block-image .is-style-rounded img){border-radius:9999px}.wp-block-image figure{margin:0}.wp-lightbox-container{display:flex;flex-direction:column;position:relative}.wp-lightbox-container img{cursor:zoom-in}.wp-lightbox-container img:hover+button{opacity:1}.wp-lightbox-container button{align-items:center;backdrop-filter:blur(16px) saturate(180%);background-color:#5a5a5a40;border:none;border-radius:4px;cursor:zoom-in;display:flex;height:20px;justify-content:center;opacity:0;padding:0;position:absolute;right:16px;text-align:center;top:16px;width:20px;z-index:100}@media not (prefers-reduced-motion){.wp-lightbox-container button{transition:opacity .2s ease}}.wp-lightbox-container button:focus-visible{outline:3px auto #5a5a5a40;outline:3px auto -webkit-focus-ring-color;outline-offset:3px}.wp-lightbox-container button:hover{cursor:pointer;opacity:1}.wp-lightbox-container button:focus{opacity:1}.wp-lightbox-container button:focus,.wp-lightbox-container button:hover,.wp-lightbox-container button:not(:hover):not(:active):not(.has-background){background-color:#5a5a5a40;border:none}.wp-lightbox-overlay{box-sizing:border-box;cursor:zoom-out;height:100vh;left:0;overflow:hidden;position:fixed;top:0;visibility:hidden;width:100%;z-index:100000}.wp-lightbox-overlay .close-button{align-items:center;cursor:pointer;display:flex;justify-content:center;min-height:40px;min-width:40px;padding:0;position:absolute;right:calc(env(safe-area-inset-right) + 16px);top:calc(env(safe-area-inset-top) + 16px);z-index:5000000}.wp-lightbox-overlay .close-button:focus,.wp-lightbox-overlay .close-button:hover,.wp-lightbox-overlay .close-button:not(:hover):not(:active):not(.has-background){background:none;border:none}.wp-lightbox-overlay .lightbox-image-container{height:var(--wp--lightbox-container-height);left:50%;overflow:hidden;position:absolute;top:50%;transform:translate(-50%,-50%);transform-origin:top left;width:var(--wp--lightbox-container-width);z-index:9999999999}.wp-lightbox-overlay .wp-block-image{align-items:center;box-sizing:border-box;display:flex;height:100%;justify-content:center;margin:0;position:relative;transform-origin:0 0;width:100%;z-index:3000000}.wp-lightbox-overlay .wp-block-image img{height:var(--wp--lightbox-image-height);min-height:var(--wp--lightbox-image-height);min-width:var(--wp--lightbox-image-width);width:var(--wp--lightbox-image-width)}.wp-lightbox-overlay .wp-block-image figcaption{display:none}.wp-lightbox-overlay button{background:none;border:none}.wp-lightbox-overlay .scrim{background-color:#fff;height:100%;opacity:.9;position:absolute;width:100%;z-index:2000000}.wp-lightbox-overlay.active{visibility:visible}@media not (prefers-reduced-motion){.wp-lightbox-overlay.active{animation:turn-on-visibility .25s both}.wp-lightbox-overlay.active img{animation:turn-on-visibility .35s both}.wp-lightbox-overlay.show-closing-animation:not(.active){animation:turn-off-visibility .35s both}.wp-lightbox-overlay.show-closing-animation:not(.active) img{animation:turn-off-visibility .25s both}.wp-lightbox-overlay.zoom.active{animation:none;opacity:1;visibility:visible}.wp-lightbox-overlay.zoom.active .lightbox-image-container{animation:lightbox-zoom-in .4s}.wp-lightbox-overlay.zoom.active .lightbox-image-container img{animation:none}.wp-lightbox-overlay.zoom.active .scrim{animation:turn-on-visibility .4s forwards}.wp-lightbox-overlay.zoom.show-closing-animation:not(.active){animation:none}.wp-lightbox-overlay.zoom.show-closing-animation:not(.active) .lightbox-image-container{animation:lightbox-zoom-out .4s}.wp-lightbox-overlay.zoom.show-closing-animation:not(.active) .lightbox-image-container img{animation:none}.wp-lightbox-overlay.zoom.show-closing-animation:not(.active) .scrim{animation:turn-off-visibility .4s forwards}}@keyframes show-content-image{0%{visibility:hidden}99%{visibility:hidden}to{visibility:visible}}@keyframes turn-on-visibility{0%{opacity:0}to{opacity:1}}@keyframes turn-off-visibility{0%{opacity:1;visibility:visible}99%{opacity:0;visibility:visible}to{opacity:0;visibility:hidden}}@keyframes lightbox-zoom-in{0%{transform:translate(calc((-100vw + var(--wp--lightbox-scrollbar-width))/2 + var(--wp--lightbox-initial-left-position)),calc(-50vh + var(--wp--lightbox-initial-top-position))) scale(var(--wp--lightbox-scale))}to{transform:translate(-50%,-50%) scale(1)}}@keyframes lightbox-zoom-out{0%{transform:translate(-50%,-50%) scale(1);visibility:visible}99%{visibility:visible}to{transform:translate(calc((-100vw + var(--wp--lightbox-scrollbar-width))/2 + var(--wp--lightbox-initial-left-position)),calc(-50vh + var(--wp--lightbox-initial-top-position))) scale(var(--wp--lightbox-scale));visibility:hidden}}ol.wp-block-latest-comments{box-sizing:border-box;margin-left:0}:where(.wp-block-latest-comments:not([style*=line-height] .wp-block-latest-comments__comment)){line-height:1.1}:where(.wp-block-latest-comments:not([style*=line-height] .wp-block-latest-comments__comment-excerpt p)){line-height:1.8}.has-dates :where(.wp-block-latest-comments:not([style*=line-height])),.has-excerpts :where(.wp-block-latest-comments:not([style*=line-height])){line-height:1.5}.wp-block-latest-comments .wp-block-latest-comments{padding-left:0}.wp-block-latest-comments__comment{list-style:none;margin-bottom:1em}.has-avatars .wp-block-latest-comments__comment{list-style:none;min-height:2.25em}.has-avatars .wp-block-latest-comments__comment .wp-block-latest-comments__comment-excerpt,.has-avatars .wp-block-latest-comments__comment .wp-block-latest-comments__comment-meta{margin-left:3.25em}.wp-block-latest-comments__comment-excerpt p{font-size:.875em;margin:.36em 0 1.4em}.wp-block-latest-comments__comment-date{display:block;font-size:.75em}.wp-block-latest-comments .avatar,.wp-block-latest-comments__comment-avatar{border-radius:1.5em;display:block;float:left;height:2.5em;margin-right:.75em;width:2.5em}.wp-block-latest-comments[class*=-font-size] a,.wp-block-latest-comments[style*=font-size] a{font-size:inherit}.wp-block-latest-posts{box-sizing:border-box}.wp-block-latest-posts.alignleft{margin-right:2em}.wp-block-latest-posts.alignright{margin-left:2em}.wp-block-latest-posts.wp-block-latest-posts__list{list-style:none}.wp-block-latest-posts.wp-block-latest-posts__list li{clear:both;overflow-wrap:break-word}.wp-block-latest-posts.is-grid{display:flex;flex-wrap:wrap}.wp-block-latest-posts.is-grid li{margin:0 1.25em 1.25em 0;width:100%}@media (min-width:600px){.wp-block-latest-posts.columns-2 li{width:calc(50% - .625em)}.wp-block-latest-posts.columns-2 li:nth-child(2n){margin-right:0}.wp-block-latest-posts.columns-3 li{width:calc(33.33333% - .83333em)}.wp-block-latest-posts.columns-3 li:nth-child(3n){margin-right:0}.wp-block-latest-posts.columns-4 li{width:calc(25% - .9375em)}.wp-block-latest-posts.columns-4 li:nth-child(4n){margin-right:0}.wp-block-latest-posts.columns-5 li{width:calc(20% - 1em)}.wp-block-latest-posts.columns-5 li:nth-child(5n){margin-right:0}.wp-block-latest-posts.columns-6 li{width:calc(16.66667% - 1.04167em)}.wp-block-latest-posts.columns-6 li:nth-child(6n){margin-right:0}}:root :where(.wp-block-latest-posts.is-grid){padding:0}:root :where(.wp-block-latest-posts.wp-block-latest-posts__list){padding-left:0}.wp-block-latest-posts__post-author,.wp-block-latest-posts__post-date{display:block;font-size:.8125em}.wp-block-latest-posts__post-excerpt,.wp-block-latest-posts__post-full-content{margin-bottom:1em;margin-top:.5em}.wp-block-latest-posts__featured-image a{display:inline-block}.wp-block-latest-posts__featured-image img{height:auto;max-width:100%;width:auto}.wp-block-latest-posts__featured-image.alignleft{float:left;margin-right:1em}.wp-block-latest-posts__featured-image.alignright{float:right;margin-left:1em}.wp-block-latest-posts__featured-image.aligncenter{margin-bottom:1em;text-align:center}ol,ul{box-sizing:border-box}:root :where(.wp-block-list.has-background){padding:1.25em 2.375em}.wp-block-loginout{box-sizing:border-box}.wp-block-math{overflow-x:auto;overflow-y:hidden}.wp-block-media-text{box-sizing:border-box;
  /*!rtl:begin:ignore*/direction:ltr;
  /*!rtl:end:ignore*/display:grid;grid-template-columns:50% 1fr;grid-template-rows:auto}.wp-block-media-text.has-media-on-the-right{grid-template-columns:1fr 50%}.wp-block-media-text.is-vertically-aligned-top>.wp-block-media-text__content,.wp-block-media-text.is-vertically-aligned-top>.wp-block-media-text__media{align-self:start}.wp-block-media-text.is-vertically-aligned-center>.wp-block-media-text__content,.wp-block-media-text.is-vertically-aligned-center>.wp-block-media-text__media,.wp-block-media-text>.wp-block-media-text__content,.wp-block-media-text>.wp-block-media-text__media{align-self:center}.wp-block-media-text.is-vertically-aligned-bottom>.wp-block-media-text__content,.wp-block-media-text.is-vertically-aligned-bottom>.wp-block-media-text__media{align-self:end}.wp-block-media-text>.wp-block-media-text__media{
  /*!rtl:begin:ignore*/grid-column:1;grid-row:1;
  /*!rtl:end:ignore*/margin:0}.wp-block-media-text>.wp-block-media-text__content{direction:ltr;
  /*!rtl:begin:ignore*/grid-column:2;grid-row:1;
  /*!rtl:end:ignore*/padding:0 8%;word-break:break-word}.wp-block-media-text.has-media-on-the-right>.wp-block-media-text__media{
  /*!rtl:begin:ignore*/grid-column:2;grid-row:1
  /*!rtl:end:ignore*/}.wp-block-media-text.has-media-on-the-right>.wp-block-media-text__content{
  /*!rtl:begin:ignore*/grid-column:1;grid-row:1
  /*!rtl:end:ignore*/}.wp-block-media-text__media a{display:block}.wp-block-media-text__media img,.wp-block-media-text__media video{height:auto;max-width:unset;vertical-align:middle;width:100%}.wp-block-media-text.is-image-fill>.wp-block-media-text__media{background-size:cover;height:100%;min-height:250px}.wp-block-media-text.is-image-fill>.wp-block-media-text__media>a{display:block;height:100%}.wp-block-media-text.is-image-fill>.wp-block-media-text__media img{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border:0}.wp-block-media-text.is-image-fill-element>.wp-block-media-text__media{height:100%;min-height:250px;position:relative}.wp-block-media-text.is-image-fill-element>.wp-block-media-text__media>a{display:block;height:100%}.wp-block-media-text.is-image-fill-element>.wp-block-media-text__media img{height:100%;object-fit:cover;position:absolute;width:100%}@media (max-width:600px){.wp-block-media-text.is-stacked-on-mobile{grid-template-columns:100%!important}.wp-block-media-text.is-stacked-on-mobile>.wp-block-media-text__media{grid-column:1;grid-row:1}.wp-block-media-text.is-stacked-on-mobile>.wp-block-media-text__content{grid-column:1;grid-row:2}}.wp-block-navigation{position:relative}.wp-block-navigation ul{margin-bottom:0;margin-left:0;margin-top:0;padding-left:0}.wp-block-navigation ul,.wp-block-navigation ul li{list-style:none;padding:0}.wp-block-navigation .wp-block-navigation-item{align-items:center;display:flex;position:relative}.wp-block-navigation .wp-block-navigation-item .wp-block-navigation__submenu-container:empty{display:none}.wp-block-navigation .wp-block-navigation-item__content{display:block;z-index:1}.wp-block-navigation .wp-block-navigation-item__content.wp-block-navigation-item__content{color:inherit}.wp-block-navigation.has-text-decoration-underline .wp-block-navigation-item__content,.wp-block-navigation.has-text-decoration-underline .wp-block-navigation-item__content:active,.wp-block-navigation.has-text-decoration-underline .wp-block-navigation-item__content:focus{text-decoration:underline}.wp-block-navigation.has-text-decoration-line-through .wp-block-navigation-item__content,.wp-block-navigation.has-text-decoration-line-through .wp-block-navigation-item__content:active,.wp-block-navigation.has-text-decoration-line-through .wp-block-navigation-item__content:focus{text-decoration:line-through}.wp-block-navigation :where(a),.wp-block-navigation :where(a:active),.wp-block-navigation :where(a:focus){text-decoration:none}.wp-block-navigation .wp-block-navigation__submenu-icon{align-self:center;background-color:inherit;border:none;color:currentColor;display:inline-block;font-size:inherit;height:.6em;line-height:0;margin-left:.25em;padding:0;width:.6em}.wp-block-navigation .wp-block-navigation__submenu-icon svg{display:inline-block;stroke:currentColor;height:inherit;margin-top:.075em;width:inherit}.wp-block-navigation{--navigation-layout-justification-setting:flex-start;--navigation-layout-direction:row;--navigation-layout-wrap:wrap;--navigation-layout-justify:flex-start;--navigation-layout-align:center}.wp-block-navigation.is-vertical{--navigation-layout-direction:column;--navigation-layout-justify:initial;--navigation-layout-align:flex-start}.wp-block-navigation.no-wrap{--navigation-layout-wrap:nowrap}.wp-block-navigation.items-justified-center{--navigation-layout-justification-setting:center;--navigation-layout-justify:center}.wp-block-navigation.items-justified-center.is-vertical{--navigation-layout-align:center}.wp-block-navigation.items-justified-right{--navigation-layout-justification-setting:flex-end;--navigation-layout-justify:flex-end}.wp-block-navigation.items-justified-right.is-vertical{--navigation-layout-align:flex-end}.wp-block-navigation.items-justified-space-between{--navigation-layout-justification-setting:space-between;--navigation-layout-justify:space-between}.wp-block-navigation .has-child .wp-block-navigation__submenu-container{align-items:normal;background-color:inherit;color:inherit;display:flex;flex-direction:column;opacity:0;position:absolute;z-index:2}@media not (prefers-reduced-motion){.wp-block-navigation .has-child .wp-block-navigation__submenu-container{transition:opacity .1s linear}}.wp-block-navigation .has-child .wp-block-navigation__submenu-container{height:0;overflow:hidden;visibility:hidden;width:0}.wp-block-navigation .has-child .wp-block-navigation__submenu-container>.wp-block-navigation-item>.wp-block-navigation-item__content{display:flex;flex-grow:1;padding:.5em 1em}.wp-block-navigation .has-child .wp-block-navigation__submenu-container>.wp-block-navigation-item>.wp-block-navigation-item__content .wp-block-navigation__submenu-icon{margin-left:auto;margin-right:0}.wp-block-navigation .has-child .wp-block-navigation__submenu-container .wp-block-navigation-item__content{margin:0}.wp-block-navigation .has-child .wp-block-navigation__submenu-container{left:-1px;top:100%}@media (min-width:782px){.wp-block-navigation .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container{left:100%;top:-1px}.wp-block-navigation .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container:before{background:#0000;content:"";display:block;height:100%;position:absolute;right:100%;width:.5em}.wp-block-navigation .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-icon{margin-right:.25em}.wp-block-navigation .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-icon svg{transform:rotate(-90deg)}}.wp-block-navigation .has-child .wp-block-navigation-submenu__toggle[aria-expanded=true]~.wp-block-navigation__submenu-container,.wp-block-navigation .has-child:not(.open-on-click):hover>.wp-block-navigation__submenu-container,.wp-block-navigation .has-child:not(.open-on-click):not(.open-on-hover-click):focus-within>.wp-block-navigation__submenu-container{height:auto;min-width:200px;opacity:1;overflow:visible;visibility:visible;width:auto}.wp-block-navigation.has-background .has-child .wp-block-navigation__submenu-container{left:0;top:100%}@media (min-width:782px){.wp-block-navigation.has-background .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container{left:100%;top:0}}.wp-block-navigation-submenu{display:flex;position:relative}.wp-block-navigation-submenu .wp-block-navigation__submenu-icon svg{stroke:currentColor}button.wp-block-navigation-item__content{background-color:initial;border:none;color:currentColor;font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;text-align:left;text-transform:inherit}.wp-block-navigation-submenu__toggle{cursor:pointer}.wp-block-navigation-submenu__toggle[aria-expanded=true]+.wp-block-navigation__submenu-icon>svg,.wp-block-navigation-submenu__toggle[aria-expanded=true]>svg{transform:rotate(180deg)}.wp-block-navigation-item.open-on-click .wp-block-navigation-submenu__toggle{padding-left:0;padding-right:.85em}.wp-block-navigation-item.open-on-click .wp-block-navigation-submenu__toggle+.wp-block-navigation__submenu-icon{margin-left:-.6em;pointer-events:none}.wp-block-navigation-item.open-on-click button.wp-block-navigation-item__content:not(.wp-block-navigation-submenu__toggle){padding:0}.wp-block-navigation .wp-block-page-list,.wp-block-navigation__container,.wp-block-navigation__responsive-close,.wp-block-navigation__responsive-container,.wp-block-navigation__responsive-container-content,.wp-block-navigation__responsive-dialog{gap:inherit}:where(.wp-block-navigation.has-background .wp-block-navigation-item a:not(.wp-element-button)),:where(.wp-block-navigation.has-background .wp-block-navigation-submenu a:not(.wp-element-button)){padding:.5em 1em}:where(.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item a:not(.wp-element-button)),:where(.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-submenu a:not(.wp-element-button)),:where(.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-submenu button.wp-block-navigation-item__content),:where(.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-pages-list__item button.wp-block-navigation-item__content){padding:.5em 1em}.wp-block-navigation.items-justified-right .wp-block-navigation__container .has-child .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-right .wp-block-page-list>.has-child .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-space-between .wp-block-page-list>.has-child:last-child .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-space-between>.wp-block-navigation__container>.has-child:last-child .wp-block-navigation__submenu-container{left:auto;right:0}.wp-block-navigation.items-justified-right .wp-block-navigation__container .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-right .wp-block-page-list>.has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-space-between .wp-block-page-list>.has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-space-between>.wp-block-navigation__container>.has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container{left:-1px;right:-1px}@media (min-width:782px){.wp-block-navigation.items-justified-right .wp-block-navigation__container .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-right .wp-block-page-list>.has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-space-between .wp-block-page-list>.has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-space-between>.wp-block-navigation__container>.has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container{left:auto;right:100%}}.wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container{background-color:#fff;border:1px solid #00000026}.wp-block-navigation.has-background .wp-block-navigation__submenu-container{background-color:inherit}.wp-block-navigation:not(.has-text-color) .wp-block-navigation__submenu-container{color:#000}.wp-block-navigation__container{align-items:var(--navigation-layout-align,initial);display:flex;flex-direction:var(--navigation-layout-direction,initial);flex-wrap:var(--navigation-layout-wrap,wrap);justify-content:var(--navigation-layout-justify,initial);list-style:none;margin:0;padding-left:0}.wp-block-navigation__container .is-responsive{display:none}.wp-block-navigation__container:only-child,.wp-block-page-list:only-child{flex-grow:1}@keyframes overlay-menu__fade-in-animation{0%{opacity:0;transform:translateY(.5em)}to{opacity:1;transform:translateY(0)}}.wp-block-navigation__responsive-container{bottom:0;display:none;left:0;position:fixed;right:0;top:0}.wp-block-navigation__responsive-container :where(.wp-block-navigation-item a){color:inherit}.wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content{align-items:var(--navigation-layout-align,initial);display:flex;flex-direction:var(--navigation-layout-direction,initial);flex-wrap:var(--navigation-layout-wrap,wrap);justify-content:var(--navigation-layout-justify,initial)}.wp-block-navigation__responsive-container:not(.is-menu-open.is-menu-open){background-color:inherit!important;color:inherit!important}.wp-block-navigation__responsive-container.is-menu-open{background-color:inherit;display:flex;flex-direction:column}@media not (prefers-reduced-motion){.wp-block-navigation__responsive-container.is-menu-open{animation:overlay-menu__fade-in-animation .1s ease-out;animation-fill-mode:forwards}}.wp-block-navigation__responsive-container.is-menu-open{overflow:auto;padding:clamp(1rem,var(--wp--style--root--padding-top),20rem) clamp(1rem,var(--wp--style--root--padding-right),20rem) clamp(1rem,var(--wp--style--root--padding-bottom),20rem) clamp(1rem,var(--wp--style--root--padding-left),20rem);z-index:100000}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{align-items:var(--navigation-layout-justification-setting,inherit);display:flex;flex-direction:column;flex-wrap:nowrap;overflow:visible;padding-top:calc(2rem + 24px)}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-page-list{justify-content:flex-start}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-icon{display:none}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container{border:none;height:auto;min-width:200px;opacity:1;overflow:initial;padding-left:2rem;padding-right:2rem;position:static;visibility:visible;width:auto}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container{gap:inherit}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container{padding-top:var(--wp--style--block-gap,2em)}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content{padding:0}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-page-list{align-items:var(--navigation-layout-justification-setting,initial);display:flex;flex-direction:column}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item .wp-block-navigation__submenu-container,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container,.wp-block-navigation__responsive-container.is-menu-open .wp-block-page-list{background:#0000!important;color:inherit!important}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container{left:auto;right:auto}@media (min-width:600px){.wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open){background-color:inherit;display:block;position:relative;width:100%;z-index:auto}.wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) .wp-block-navigation__responsive-container-close{display:none}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container{left:0}}.wp-block-navigation:not(.has-background) .wp-block-navigation__responsive-container.is-menu-open{background-color:#fff}.wp-block-navigation:not(.has-text-color) .wp-block-navigation__responsive-container.is-menu-open{color:#000}.wp-block-navigation__toggle_button_label{font-size:1rem;font-weight:700}.wp-block-navigation__responsive-container-close,.wp-block-navigation__responsive-container-open{background:#0000;border:none;color:currentColor;cursor:pointer;margin:0;padding:0;text-transform:inherit;vertical-align:middle}.wp-block-navigation__responsive-container-close svg,.wp-block-navigation__responsive-container-open svg{fill:currentColor;display:block;height:24px;pointer-events:none;width:24px}.wp-block-navigation__responsive-container-open{display:flex}.wp-block-navigation__responsive-container-open.wp-block-navigation__responsive-container-open.wp-block-navigation__responsive-container-open{font-family:inherit;font-size:inherit;font-weight:inherit}@media (min-width:600px){.wp-block-navigation__responsive-container-open:not(.always-shown){display:none}}.wp-block-navigation__responsive-container-close{position:absolute;right:0;top:0;z-index:2}.wp-block-navigation__responsive-container-close.wp-block-navigation__responsive-container-close.wp-block-navigation__responsive-container-close{font-family:inherit;font-size:inherit;font-weight:inherit}.wp-block-navigation__responsive-close{width:100%}.has-modal-open .wp-block-navigation__responsive-close{margin-left:auto;margin-right:auto;max-width:var(--wp--style--global--wide-size,100%)}.wp-block-navigation__responsive-close:focus{outline:none}.is-menu-open .wp-block-navigation__responsive-close,.is-menu-open .wp-block-navigation__responsive-container-content,.is-menu-open .wp-block-navigation__responsive-dialog{box-sizing:border-box}.wp-block-navigation__responsive-dialog{position:relative}.has-modal-open .admin-bar .is-menu-open .wp-block-navigation__responsive-dialog{margin-top:46px}@media (min-width:782px){.has-modal-open .admin-bar .is-menu-open .wp-block-navigation__responsive-dialog{margin-top:32px}}html.has-modal-open{overflow:hidden}.wp-block-navigation .wp-block-navigation-item__label{overflow-wrap:break-word}.wp-block-navigation .wp-block-navigation-item__description{display:none}.link-ui-tools{outline:1px solid #f0f0f0;padding:8px}.link-ui-block-inserter{padding-top:8px}.link-ui-block-inserter__back{margin-left:8px;text-transform:uppercase}.wp-block-navigation .wp-block-page-list{align-items:var(--navigation-layout-align,initial);background-color:inherit;display:flex;flex-direction:var(--navigation-layout-direction,initial);flex-wrap:var(--navigation-layout-wrap,wrap);justify-content:var(--navigation-layout-justify,initial)}.wp-block-navigation .wp-block-navigation-item{background-color:inherit}.wp-block-page-list{box-sizing:border-box}.is-small-text{font-size:.875em}.is-regular-text{font-size:1em}.is-large-text{font-size:2.25em}.is-larger-text{font-size:3em}.has-drop-cap:not(:focus):first-letter{float:left;font-size:8.4em;font-style:normal;font-weight:100;line-height:.68;margin:.05em .1em 0 0;text-transform:uppercase}body.rtl .has-drop-cap:not(:focus):first-letter{float:none;margin-left:.1em}p.has-drop-cap.has-background{overflow:hidden}:root :where(p.has-background){padding:1.25em 2.375em}:where(p.has-text-color:not(.has-link-color)) a{color:inherit}p.has-text-align-left[style*="writing-mode:vertical-lr"],p.has-text-align-right[style*="writing-mode:vertical-rl"]{rotate:180deg}.wp-block-post-author{box-sizing:border-box;display:flex;flex-wrap:wrap}.wp-block-post-author__byline{font-size:.5em;margin-bottom:0;margin-top:0;width:100%}.wp-block-post-author__avatar{margin-right:1em}.wp-block-post-author__bio{font-size:.7em;margin-bottom:.7em}.wp-block-post-author__content{flex-basis:0;flex-grow:1}.wp-block-post-author__name{margin:0}.wp-block-post-author-biography{box-sizing:border-box}:where(.wp-block-post-comments-form input:not([type=submit])),:where(.wp-block-post-comments-form textarea){border:1px solid #949494;font-family:inherit;font-size:1em}:where(.wp-block-post-comments-form input:where(:not([type=submit]):not([type=checkbox]))),:where(.wp-block-post-comments-form textarea){padding:calc(.667em + 2px)}.wp-block-post-comments-form{box-sizing:border-box}.wp-block-post-comments-form[style*=font-weight] :where(.comment-reply-title){font-weight:inherit}.wp-block-post-comments-form[style*=font-family] :where(.comment-reply-title){font-family:inherit}.wp-block-post-comments-form[class*=-font-size] :where(.comment-reply-title),.wp-block-post-comments-form[style*=font-size] :where(.comment-reply-title){font-size:inherit}.wp-block-post-comments-form[style*=line-height] :where(.comment-reply-title){line-height:inherit}.wp-block-post-comments-form[style*=font-style] :where(.comment-reply-title){font-style:inherit}.wp-block-post-comments-form[style*=letter-spacing] :where(.comment-reply-title){letter-spacing:inherit}.wp-block-post-comments-form :where(input[type=submit]){box-shadow:none;cursor:pointer;display:inline-block;overflow-wrap:break-word;text-align:center}.wp-block-post-comments-form .comment-form input:not([type=submit]):not([type=checkbox]):not([type=hidden]),.wp-block-post-comments-form .comment-form textarea{box-sizing:border-box;display:block;width:100%}.wp-block-post-comments-form .comment-form-author label,.wp-block-post-comments-form .comment-form-email label,.wp-block-post-comments-form .comment-form-url label{display:block;margin-bottom:.25em}.wp-block-post-comments-form .comment-form-cookies-consent{display:flex;gap:.25em}.wp-block-post-comments-form .comment-form-cookies-consent #wp-comment-cookies-consent{margin-top:.35em}.wp-block-post-comments-form .comment-reply-title{margin-bottom:0}.wp-block-post-comments-form .comment-reply-title :where(small){font-size:var(--wp--preset--font-size--medium,smaller);margin-left:.5em}.wp-block-post-comments-count{box-sizing:border-box}.wp-block-post-content{display:flow-root}.wp-block-post-comments-link,.wp-block-post-date{box-sizing:border-box}:where(.wp-block-post-excerpt){box-sizing:border-box;margin-bottom:var(--wp--style--block-gap);margin-top:var(--wp--style--block-gap)}.wp-block-post-excerpt__excerpt{margin-bottom:0;margin-top:0}.wp-block-post-excerpt__more-text{margin-bottom:0;margin-top:var(--wp--style--block-gap)}.wp-block-post-excerpt__more-link{display:inline-block}.wp-block-post-featured-image{margin-left:0;margin-right:0}.wp-block-post-featured-image a{display:block;height:100%}.wp-block-post-featured-image :where(img){box-sizing:border-box;height:auto;max-width:100%;vertical-align:bottom;width:100%}.wp-block-post-featured-image.alignfull img,.wp-block-post-featured-image.alignwide img{width:100%}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim{background-color:#000;inset:0;position:absolute}.wp-block-post-featured-image{position:relative}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-gradient{background-color:initial}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-0{opacity:0}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-10{opacity:.1}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-20{opacity:.2}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-30{opacity:.3}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-40{opacity:.4}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-50{opacity:.5}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-60{opacity:.6}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-70{opacity:.7}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-80{opacity:.8}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-90{opacity:.9}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-100{opacity:1}.wp-block-post-featured-image:where(.alignleft,.alignright){width:100%}.wp-block-post-navigation-link .wp-block-post-navigation-link__arrow-previous{display:inline-block;margin-right:1ch}.wp-block-post-navigation-link .wp-block-post-navigation-link__arrow-previous:not(.is-arrow-chevron){transform:scaleX(1)}.wp-block-post-navigation-link .wp-block-post-navigation-link__arrow-next{display:inline-block;margin-left:1ch}.wp-block-post-navigation-link .wp-block-post-navigation-link__arrow-next:not(.is-arrow-chevron){transform:scaleX(1)}.wp-block-post-navigation-link.has-text-align-left[style*="writing-mode: vertical-lr"],.wp-block-post-navigation-link.has-text-align-right[style*="writing-mode: vertical-rl"]{rotate:180deg}.wp-block-post-terms{box-sizing:border-box}.wp-block-post-terms .wp-block-post-terms__separator{white-space:pre-wrap}.wp-block-post-time-to-read,.wp-block-post-title{box-sizing:border-box}.wp-block-post-title{word-break:break-word}.wp-block-post-title :where(a){display:inline-block;font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;text-decoration:inherit}.wp-block-post-author-name{box-sizing:border-box}.wp-block-preformatted{box-sizing:border-box;white-space:pre-wrap}:where(.wp-block-preformatted.has-background){padding:1.25em 2.375em}.wp-block-pullquote{box-sizing:border-box;margin:0 0 1em;overflow-wrap:break-word;padding:4em 0;text-align:center}.wp-block-pullquote blockquote,.wp-block-pullquote p{color:inherit}.wp-block-pullquote blockquote{margin:0}.wp-block-pullquote p{margin-top:0}.wp-block-pullquote p:last-child{margin-bottom:0}.wp-block-pullquote.alignleft,.wp-block-pullquote.alignright{max-width:420px}.wp-block-pullquote cite,.wp-block-pullquote footer{position:relative}.wp-block-pullquote .has-text-color a{color:inherit}.wp-block-pullquote.has-text-align-left blockquote{text-align:left}.wp-block-pullquote.has-text-align-right blockquote{text-align:right}.wp-block-pullquote.has-text-align-center blockquote{text-align:center}.wp-block-pullquote.is-style-solid-color{border:none}.wp-block-pullquote.is-style-solid-color blockquote{margin-left:auto;margin-right:auto;max-width:60%}.wp-block-pullquote.is-style-solid-color blockquote p{font-size:2em;margin-bottom:0;margin-top:0}.wp-block-pullquote.is-style-solid-color blockquote cite{font-style:normal;text-transform:none}.wp-block-pullquote :where(cite){color:inherit;display:block}.wp-block-post-template{box-sizing:border-box;list-style:none;margin-bottom:0;margin-top:0;max-width:100%;padding:0}.wp-block-post-template.is-flex-container{display:flex;flex-direction:row;flex-wrap:wrap;gap:1.25em}.wp-block-post-template.is-flex-container>li{margin:0;width:100%}@media (min-width:600px){.wp-block-post-template.is-flex-container.is-flex-container.columns-2>li{width:calc(50% - .625em)}.wp-block-post-template.is-flex-container.is-flex-container.columns-3>li{width:calc(33.33333% - .83333em)}.wp-block-post-template.is-flex-container.is-flex-container.columns-4>li{width:calc(25% - .9375em)}.wp-block-post-template.is-flex-container.is-flex-container.columns-5>li{width:calc(20% - 1em)}.wp-block-post-template.is-flex-container.is-flex-container.columns-6>li{width:calc(16.66667% - 1.04167em)}}@media (max-width:600px){.wp-block-post-template-is-layout-grid.wp-block-post-template-is-layout-grid.wp-block-post-template-is-layout-grid.wp-block-post-template-is-layout-grid{grid-template-columns:1fr}}.wp-block-post-template-is-layout-constrained>li>.alignright,.wp-block-post-template-is-layout-flow>li>.alignright{float:right;margin-inline-end:0;margin-inline-start:2em}.wp-block-post-template-is-layout-constrained>li>.alignleft,.wp-block-post-template-is-layout-flow>li>.alignleft{float:left;margin-inline-end:2em;margin-inline-start:0}.wp-block-post-template-is-layout-constrained>li>.aligncenter,.wp-block-post-template-is-layout-flow>li>.aligncenter{margin-inline-end:auto;margin-inline-start:auto}.wp-block-query-pagination.is-content-justification-space-between>.wp-block-query-pagination-next:last-of-type{margin-inline-start:auto}.wp-block-query-pagination.is-content-justification-space-between>.wp-block-query-pagination-previous:first-child{margin-inline-end:auto}.wp-block-query-pagination .wp-block-query-pagination-previous-arrow{display:inline-block;margin-right:1ch}.wp-block-query-pagination .wp-block-query-pagination-previous-arrow:not(.is-arrow-chevron){transform:scaleX(1)}.wp-block-query-pagination .wp-block-query-pagination-next-arrow{display:inline-block;margin-left:1ch}.wp-block-query-pagination .wp-block-query-pagination-next-arrow:not(.is-arrow-chevron){transform:scaleX(1)}.wp-block-query-pagination.aligncenter{justify-content:center}.wp-block-query-title,.wp-block-query-total,.wp-block-quote{box-sizing:border-box}.wp-block-quote{overflow-wrap:break-word}.wp-block-quote.is-large:where(:not(.is-style-plain)),.wp-block-quote.is-style-large:where(:not(.is-style-plain)){margin-bottom:1em;padding:0 1em}.wp-block-quote.is-large:where(:not(.is-style-plain)) p,.wp-block-quote.is-style-large:where(:not(.is-style-plain)) p{font-size:1.5em;font-style:italic;line-height:1.6}.wp-block-quote.is-large:where(:not(.is-style-plain)) cite,.wp-block-quote.is-large:where(:not(.is-style-plain)) footer,.wp-block-quote.is-style-large:where(:not(.is-style-plain)) cite,.wp-block-quote.is-style-large:where(:not(.is-style-plain)) footer{font-size:1.125em;text-align:right}.wp-block-quote>cite{display:block}.wp-block-read-more{display:block;width:fit-content}.wp-block-read-more:where(:not([style*=text-decoration])){text-decoration:none}.wp-block-read-more:where(:not([style*=text-decoration])):active,.wp-block-read-more:where(:not([style*=text-decoration])):focus{text-decoration:none}ul.wp-block-rss.alignleft{margin-right:2em}ul.wp-block-rss.alignright{margin-left:2em}ul.wp-block-rss.is-grid{display:flex;flex-wrap:wrap;padding:0}ul.wp-block-rss.is-grid li{margin:0 1em 1em 0;width:100%}@media (min-width:600px){ul.wp-block-rss.columns-2 li{width:calc(50% - 1em)}ul.wp-block-rss.columns-3 li{width:calc(33.33333% - 1em)}ul.wp-block-rss.columns-4 li{width:calc(25% - 1em)}ul.wp-block-rss.columns-5 li{width:calc(20% - 1em)}ul.wp-block-rss.columns-6 li{width:calc(16.66667% - 1em)}}.wp-block-rss__item-author,.wp-block-rss__item-publish-date{display:block;font-size:.8125em}.wp-block-rss{box-sizing:border-box;list-style:none;padding:0}.wp-block-search__button{margin-left:10px;word-break:normal}.wp-block-search__button.has-icon{line-height:0}.wp-block-search__button svg{height:1.25em;min-height:24px;min-width:24px;width:1.25em;fill:currentColor;vertical-align:text-bottom}:where(.wp-block-search__button){border:1px solid #ccc;padding:6px 10px}.wp-block-search__inside-wrapper{display:flex;flex:auto;flex-wrap:nowrap;max-width:100%}.wp-block-search__label{width:100%}.wp-block-search.wp-block-search__button-only .wp-block-search__button{box-sizing:border-box;display:flex;flex-shrink:0;justify-content:center;margin-left:0;max-width:100%}.wp-block-search.wp-block-search__button-only .wp-block-search__inside-wrapper{min-width:0!important;transition-property:width}.wp-block-search.wp-block-search__button-only .wp-block-search__input{flex-basis:100%;transition-duration:.3s}.wp-block-search.wp-block-search__button-only.wp-block-search__searchfield-hidden,.wp-block-search.wp-block-search__button-only.wp-block-search__searchfield-hidden .wp-block-search__inside-wrapper{overflow:hidden}.wp-block-search.wp-block-search__button-only.wp-block-search__searchfield-hidden .wp-block-search__input{border-left-width:0!important;border-right-width:0!important;flex-basis:0;flex-grow:0;margin:0;min-width:0!important;padding-left:0!important;padding-right:0!important;width:0!important}:where(.wp-block-search__input){appearance:none;border:1px solid #949494;flex-grow:1;font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin-left:0;margin-right:0;min-width:3rem;padding:8px;text-decoration:unset!important;text-transform:inherit}:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper){background-color:#fff;border:1px solid #949494;box-sizing:border-box;padding:4px}:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) .wp-block-search__input{border:none;border-radius:0;padding:0 4px}:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) .wp-block-search__input:focus{outline:none}:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) :where(.wp-block-search__button){padding:4px 8px}.wp-block-search.aligncenter .wp-block-search__inside-wrapper{margin:auto}.wp-block[data-align=right] .wp-block-search.wp-block-search__button-only .wp-block-search__inside-wrapper{float:right}.wp-block-separator{border:none;border-top:2px solid}:root :where(.wp-block-separator.is-style-dots){height:auto;line-height:1;text-align:center}:root :where(.wp-block-separator.is-style-dots):before{color:currentColor;content:"···";font-family:serif;font-size:1.5em;letter-spacing:2em;padding-left:2em}.wp-block-separator.is-style-dots{background:none!important;border:none!important}.wp-block-site-logo{box-sizing:border-box;line-height:0}.wp-block-site-logo a{display:inline-block;line-height:0}.wp-block-site-logo.is-default-size img{height:auto;width:120px}.wp-block-site-logo img{height:auto;max-width:100%}.wp-block-site-logo a,.wp-block-site-logo img{border-radius:inherit}.wp-block-site-logo.aligncenter{margin-left:auto;margin-right:auto;text-align:center}:root :where(.wp-block-site-logo.is-style-rounded){border-radius:9999px}.wp-block-site-tagline,.wp-block-site-title{box-sizing:border-box}.wp-block-site-title :where(a){color:inherit;font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;text-decoration:inherit}.wp-block-social-links{background:none;box-sizing:border-box;margin-left:0;padding-left:0;padding-right:0;text-indent:0}.wp-block-social-links .wp-social-link a,.wp-block-social-links .wp-social-link a:hover{border-bottom:0;box-shadow:none;text-decoration:none}.wp-block-social-links .wp-social-link svg{height:1em;width:1em}.wp-block-social-links .wp-social-link span:not(.screen-reader-text){font-size:.65em;margin-left:.5em;margin-right:.5em}.wp-block-social-links.has-small-icon-size{font-size:16px}.wp-block-social-links,.wp-block-social-links.has-normal-icon-size{font-size:24px}.wp-block-social-links.has-large-icon-size{font-size:36px}.wp-block-social-links.has-huge-icon-size{font-size:48px}.wp-block-social-links.aligncenter{display:flex;justify-content:center}.wp-block-social-links.alignright{justify-content:flex-end}.wp-block-social-link{border-radius:9999px;display:block}@media not (prefers-reduced-motion){.wp-block-social-link{transition:transform .1s ease}}.wp-block-social-link{height:auto}.wp-block-social-link a{align-items:center;display:flex;line-height:0}.wp-block-social-link:hover{transform:scale(1.1)}.wp-block-social-links .wp-block-social-link.wp-social-link{display:inline-block;margin:0;padding:0}.wp-block-social-links .wp-block-social-link.wp-social-link .wp-block-social-link-anchor,.wp-block-social-links .wp-block-social-link.wp-social-link .wp-block-social-link-anchor svg,.wp-block-social-links .wp-block-social-link.wp-social-link .wp-block-social-link-anchor:active,.wp-block-social-links .wp-block-social-link.wp-social-link .wp-block-social-link-anchor:hover,.wp-block-social-links .wp-block-social-link.wp-social-link .wp-block-social-link-anchor:visited{color:currentColor;fill:currentColor}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link{background-color:#f0f0f0;color:#444}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-amazon{background-color:#f90;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-bandcamp{background-color:#1ea0c3;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-behance{background-color:#0757fe;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-bluesky{background-color:#0a7aff;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-codepen{background-color:#1e1f26;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-deviantart{background-color:#02e49b;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-discord{background-color:#5865f2;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-dribbble{background-color:#e94c89;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-dropbox{background-color:#4280ff;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-etsy{background-color:#f45800;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-facebook{background-color:#0866ff;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-fivehundredpx{background-color:#000;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-flickr{background-color:#0461dd;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-foursquare{background-color:#e65678;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-github{background-color:#24292d;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-goodreads{background-color:#eceadd;color:#382110}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-google{background-color:#ea4434;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-gravatar{background-color:#1d4fc4;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-instagram{background-color:#f00075;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-lastfm{background-color:#e21b24;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-linkedin{background-color:#0d66c2;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-mastodon{background-color:#3288d4;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-medium{background-color:#000;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-meetup{background-color:#f6405f;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-patreon{background-color:#000;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-pinterest{background-color:#e60122;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-pocket{background-color:#ef4155;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-reddit{background-color:#ff4500;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-skype{background-color:#0478d7;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-snapchat{background-color:#fefc00;color:#fff;stroke:#000}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-soundcloud{background-color:#ff5600;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-spotify{background-color:#1bd760;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-telegram{background-color:#2aabee;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-threads{background-color:#000;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-tiktok{background-color:#000;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-tumblr{background-color:#011835;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-twitch{background-color:#6440a4;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-twitter{background-color:#1da1f2;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-vimeo{background-color:#1eb7ea;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-vk{background-color:#4680c2;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-wordpress{background-color:#3499cd;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-whatsapp{background-color:#25d366;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-x{background-color:#000;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-yelp{background-color:#d32422;color:#fff}:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link-youtube{background-color:red;color:#fff}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link{background:none}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link svg{height:1.25em;width:1.25em}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-amazon{color:#f90}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-bandcamp{color:#1ea0c3}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-behance{color:#0757fe}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-bluesky{color:#0a7aff}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-codepen{color:#1e1f26}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-deviantart{color:#02e49b}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-discord{color:#5865f2}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-dribbble{color:#e94c89}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-dropbox{color:#4280ff}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-etsy{color:#f45800}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-facebook{color:#0866ff}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-fivehundredpx{color:#000}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-flickr{color:#0461dd}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-foursquare{color:#e65678}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-github{color:#24292d}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-goodreads{color:#382110}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-google{color:#ea4434}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-gravatar{color:#1d4fc4}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-instagram{color:#f00075}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-lastfm{color:#e21b24}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-linkedin{color:#0d66c2}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-mastodon{color:#3288d4}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-medium{color:#000}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-meetup{color:#f6405f}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-patreon{color:#000}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-pinterest{color:#e60122}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-pocket{color:#ef4155}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-reddit{color:#ff4500}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-skype{color:#0478d7}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-snapchat{color:#fff;stroke:#000}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-soundcloud{color:#ff5600}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-spotify{color:#1bd760}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-telegram{color:#2aabee}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-threads{color:#000}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-tiktok{color:#000}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-tumblr{color:#011835}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-twitch{color:#6440a4}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-twitter{color:#1da1f2}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-vimeo{color:#1eb7ea}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-vk{color:#4680c2}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-whatsapp{color:#25d366}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-wordpress{color:#3499cd}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-x{color:#000}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-yelp{color:#d32422}:where(.wp-block-social-links.is-style-logos-only) .wp-social-link-youtube{color:red}.wp-block-social-links.is-style-pill-shape .wp-social-link{width:auto}:root :where(.wp-block-social-links .wp-social-link a){padding:.25em}:root :where(.wp-block-social-links.is-style-logos-only .wp-social-link a){padding:0}:root :where(.wp-block-social-links.is-style-pill-shape .wp-social-link a){padding-left:.6666666667em;padding-right:.6666666667em}.wp-block-social-links:not(.has-icon-color):not(.has-icon-background-color) .wp-social-link-snapchat .wp-block-social-link-label{color:#000}.wp-block-spacer{clear:both}.wp-block-tag-cloud{box-sizing:border-box}.wp-block-tag-cloud.aligncenter{justify-content:center;text-align:center}.wp-block-tag-cloud a{display:inline-block;margin-right:5px}.wp-block-tag-cloud span{display:inline-block;margin-left:5px;text-decoration:none}:root :where(.wp-block-tag-cloud.is-style-outline){display:flex;flex-wrap:wrap;gap:1ch}:root :where(.wp-block-tag-cloud.is-style-outline a){border:1px solid;font-size:unset!important;margin-right:0;padding:1ch 2ch;text-decoration:none!important}.wp-block-table{overflow-x:auto}.wp-block-table table{border-collapse:collapse;width:100%}.wp-block-table thead{border-bottom:3px solid}.wp-block-table tfoot{border-top:3px solid}.wp-block-table td,.wp-block-table th{border:1px solid;padding:.5em}.wp-block-table .has-fixed-layout{table-layout:fixed;width:100%}.wp-block-table .has-fixed-layout td,.wp-block-table .has-fixed-layout th{word-break:break-word}.wp-block-table.aligncenter,.wp-block-table.alignleft,.wp-block-table.alignright{display:table;width:auto}.wp-block-table.aligncenter td,.wp-block-table.aligncenter th,.wp-block-table.alignleft td,.wp-block-table.alignleft th,.wp-block-table.alignright td,.wp-block-table.alignright th{word-break:break-word}.wp-block-table .has-subtle-light-gray-background-color{background-color:#f3f4f5}.wp-block-table .has-subtle-pale-green-background-color{background-color:#e9fbe5}.wp-block-table .has-subtle-pale-blue-background-color{background-color:#e7f5fe}.wp-block-table .has-subtle-pale-pink-background-color{background-color:#fcf0ef}.wp-block-table.is-style-stripes{background-color:initial;border-collapse:inherit;border-spacing:0}.wp-block-table.is-style-stripes tbody tr:nth-child(odd){background-color:#f0f0f0}.wp-block-table.is-style-stripes.has-subtle-light-gray-background-color tbody tr:nth-child(odd){background-color:#f3f4f5}.wp-block-table.is-style-stripes.has-subtle-pale-green-background-color tbody tr:nth-child(odd){background-color:#e9fbe5}.wp-block-table.is-style-stripes.has-subtle-pale-blue-background-color tbody tr:nth-child(odd){background-color:#e7f5fe}.wp-block-table.is-style-stripes.has-subtle-pale-pink-background-color tbody tr:nth-child(odd){background-color:#fcf0ef}.wp-block-table.is-style-stripes td,.wp-block-table.is-style-stripes th{border-color:#0000}.wp-block-table.is-style-stripes{border-bottom:1px solid #f0f0f0}.wp-block-table .has-border-color td,.wp-block-table .has-border-color th,.wp-block-table .has-border-color tr,.wp-block-table .has-border-color>*{border-color:inherit}.wp-block-table table[style*=border-top-color] tr:first-child,.wp-block-table table[style*=border-top-color] tr:first-child td,.wp-block-table table[style*=border-top-color] tr:first-child th,.wp-block-table table[style*=border-top-color]>*,.wp-block-table table[style*=border-top-color]>* td,.wp-block-table table[style*=border-top-color]>* th{border-top-color:inherit}.wp-block-table table[style*=border-top-color] tr:not(:first-child){border-top-color:initial}.wp-block-table table[style*=border-right-color] td:last-child,.wp-block-table table[style*=border-right-color] th,.wp-block-table table[style*=border-right-color] tr,.wp-block-table table[style*=border-right-color]>*{border-right-color:inherit}.wp-block-table table[style*=border-bottom-color] tr:last-child,.wp-block-table table[style*=border-bottom-color] tr:last-child td,.wp-block-table table[style*=border-bottom-color] tr:last-child th,.wp-block-table table[style*=border-bottom-color]>*,.wp-block-table table[style*=border-bottom-color]>* td,.wp-block-table table[style*=border-bottom-color]>* th{border-bottom-color:inherit}.wp-block-table table[style*=border-bottom-color] tr:not(:last-child){border-bottom-color:initial}.wp-block-table table[style*=border-left-color] td:first-child,.wp-block-table table[style*=border-left-color] th,.wp-block-table table[style*=border-left-color] tr,.wp-block-table table[style*=border-left-color]>*{border-left-color:inherit}.wp-block-table table[style*=border-style] td,.wp-block-table table[style*=border-style] th,.wp-block-table table[style*=border-style] tr,.wp-block-table table[style*=border-style]>*{border-style:inherit}.wp-block-table table[style*=border-width] td,.wp-block-table table[style*=border-width] th,.wp-block-table table[style*=border-width] tr,.wp-block-table table[style*=border-width]>*{border-style:inherit;border-width:inherit}:root :where(.wp-block-table-of-contents){box-sizing:border-box}.wp-block-term-count{box-sizing:border-box}:where(.wp-block-term-description){box-sizing:border-box;margin-bottom:var(--wp--style--block-gap);margin-top:var(--wp--style--block-gap)}.wp-block-term-description p{margin-bottom:0;margin-top:0}.wp-block-term-name{box-sizing:border-box}.wp-block-term-template{box-sizing:border-box;list-style:none;margin-bottom:0;margin-top:0;max-width:100%;padding:0}.wp-block-text-columns,.wp-block-text-columns.aligncenter{display:flex}.wp-block-text-columns .wp-block-column{margin:0 1em;padding:0}.wp-block-text-columns .wp-block-column:first-child{margin-left:0}.wp-block-text-columns .wp-block-column:last-child{margin-right:0}.wp-block-text-columns.columns-2 .wp-block-column{width:50%}.wp-block-text-columns.columns-3 .wp-block-column{width:33.3333333333%}.wp-block-text-columns.columns-4 .wp-block-column{width:25%}pre.wp-block-verse{overflow:auto;white-space:pre-wrap}:where(pre.wp-block-verse){font-family:inherit}.wp-block-video{box-sizing:border-box}.wp-block-video video{height:auto;vertical-align:middle;width:100%}@supports (position:sticky){.wp-block-video [poster]{object-fit:cover}}.wp-block-video.aligncenter{text-align:center}.wp-block-video :where(figcaption){margin-bottom:1em;margin-top:.5em}.editor-styles-wrapper,.entry-content{counter-reset:footnotes}a[data-fn].fn{counter-increment:footnotes;display:inline-flex;font-size:smaller;text-decoration:none;text-indent:-9999999px;vertical-align:super}a[data-fn].fn:after{content:"[" counter(footnotes) "]";float:left;text-indent:0}:root{--wp-block-synced-color:#7a00df;--wp-block-synced-color--rgb:122,0,223;--wp-bound-block-color:var(--wp-block-synced-color);--wp-editor-canvas-background:#ddd;--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,160.5;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.wp-element-button{cursor:pointer}:root .has-very-light-gray-background-color{background-color:#eee}:root .has-very-dark-gray-background-color{background-color:#313131}:root .has-very-light-gray-color{color:#eee}:root .has-very-dark-gray-color{color:#313131}:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(135deg,#00d084,#0693e3)}:root .has-purple-crush-gradient-background{background:linear-gradient(135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .has-hazy-dawn-gradient-background{background:linear-gradient(135deg,#faaca8,#dad0ec)}:root .has-subdued-olive-gradient-background{background:linear-gradient(135deg,#fafae1,#67a671)}:root .has-atomic-cream-gradient-background{background:linear-gradient(135deg,#fdd79a,#004a59)}:root .has-nightshade-gradient-background{background:linear-gradient(135deg,#330968,#31cdcf)}:root .has-midnight-gradient-background{background:linear-gradient(135deg,#020381,#2874fc)}:root{--wp--preset--font-size--normal:16px;--wp--preset--font-size--huge:42px}.has-regular-font-size{font-size:1em}.has-larger-font-size{font-size:2.625em}.has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}.has-text-align-center{text-align:center}.has-text-align-left{text-align:left}.has-text-align-right{text-align:right}.has-fit-text{white-space:nowrap!important}#end-resizable-editor-section{display:none}.aligncenter{clear:both}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}.screen-reader-text{border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.screen-reader-text:focus{background-color:#ddd;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}html :where(.has-border-color){border-style:solid}html :where([style*=border-top-color]){border-top-style:solid}html :where([style*=border-right-color]){border-right-style:solid}html :where([style*=border-bottom-color]){border-bottom-style:solid}html :where([style*=border-left-color]){border-left-style:solid}html :where([style*=border-width]){border-style:solid}html :where([style*=border-top-width]){border-top-style:solid}html :where([style*=border-right-width]){border-right-style:solid}html :where([style*=border-bottom-width]){border-bottom-style:solid}html :where([style*=border-left-width]){border-left-style:solid}html :where(img[class*=wp-image-]){height:auto;max-width:100%}:where(figure){margin:0 0 1em}html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:var(--wp-admin--admin-bar--height,0px)}@media screen and (max-width:600px){html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:0px}}.wpcf7 .screen-reader-response{position:absolute;overflow:hidden;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;width:1px;margin:-1px;padding:0;border:0;word-wrap:normal!important}.wpcf7 .hidden-fields-container{display:none}.wpcf7 form .wpcf7-response-output{margin:2em .5em 1em;padding:.2em 1em;border:2px solid #00a0d2}.wpcf7 form.init .wpcf7-response-output,.wpcf7 form.resetting .wpcf7-response-output,.wpcf7 form.submitting .wpcf7-response-output{display:none}.wpcf7 form.sent .wpcf7-response-output{border-color:#46b450}.wpcf7 form.failed .wpcf7-response-output,.wpcf7 form.aborted .wpcf7-response-output{border-color:#dc3232}.wpcf7 form.spam .wpcf7-response-output{border-color:#f56e28}.wpcf7 form.invalid .wpcf7-response-output,.wpcf7 form.unaccepted .wpcf7-response-output,.wpcf7 form.payment-required .wpcf7-response-output{border-color:#ffb900}.wpcf7-form-control-wrap{position:relative}.wpcf7-not-valid-tip{color:#dc3232;font-size:1em;font-weight:400;display:block}.use-floating-validation-tip .wpcf7-not-valid-tip{position:relative;top:-2ex;left:1em;z-index:100;border:1px solid #dc3232;background:#fff;padding:.2em .8em;width:24em}.wpcf7-list-item{display:inline-block;margin:0 0 0 1em}.wpcf7-list-item-label::before,.wpcf7-list-item-label::after{content:" "}.wpcf7-spinner{visibility:hidden;display:inline-block;background-color:#23282d;opacity:.75;width:24px;height:24px;border:none;border-radius:100%;padding:0;margin:0 24px;position:relative}form.submitting .wpcf7-spinner{visibility:visible}.wpcf7-spinner::before{content:'';position:absolute;background-color:#fbfbfc;top:4px;left:4px;width:6px;height:6px;border:none;border-radius:100%;transform-origin:8px 8px;animation-name:spin;animation-duration:1000ms;animation-timing-function:linear;animation-iteration-count:infinite}@media (prefers-reduced-motion:reduce){.wpcf7-spinner::before{animation-name:blink;animation-duration:2000ms}}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}@keyframes blink{from{opacity:0}50%{opacity:1}to{opacity:0}}.wpcf7 [inert]{opacity:.5}.wpcf7 input[type="file"]{cursor:pointer}.wpcf7 input[type="file"]:disabled{cursor:default}.wpcf7 .wpcf7-submit:disabled{cursor:not-allowed}.wpcf7 input[type="url"],.wpcf7 input[type="email"],.wpcf7 input[type="tel"]{direction:ltr}.wpcf7-reflection>output{display:list-item;list-style:none}.wpcf7-reflection>output[hidden]{display:none}.lazy-hidden,.entry img.lazy-hidden,img.thumbnail.lazy-hidden{opacity:.2;background-color:#fff}figure.wp-block-image img.lazy-hidden{min-width:150px}.lazy-loaded{-webkit-transition:opacity 0.3s;-moz-transition:opacity 0.3s;-ms-transition:opacity 0.3s;-o-transition:opacity 0.3s;transition:opacity 0.3s;opacity:1!important}picture source[type="image/webp"]{display:block}.clear{clear:both}.nobr{white-space:nowrap}.lazy-hidden,.entry img.lazy-hidden,img.thumbnail.lazy-hidden{background-color:#fff}@media screen and (min-width: 769px){/*======================================
  Settings
======================================*/
/*======================================
  Sass Mixins and Functions
======================================*/
.selectric-wrapper {
  position: relative;
  cursor: pointer;
}

.selectric-responsive {
  width: 100%;
}

.selectric {
  border: 1px solid #DDD;
  border-radius: 0px;
  background: #F8F8F8;
  position: relative;
  overflow: hidden;
}

.selectric .label {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin: 0 38px 0 10px;
  font-size: 12px;
  line-height: 38px;
  color: #444;
  height: 38px;
  user-select: none;
}

.selectric .button {
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  width: 38px;
  height: 38px;
  line-height: 38px;
  background-color: #F8f8f8;
  color: #BBB;
  text-align: center;
  font: 0/0 a;
  *font: 20px/38px Lucida Sans Unicode, Arial Unicode MS, Arial;
}

.selectric .button:after {
  content: " ";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 0;
  height: 0;
  border: 4px solid transparent;
  border-top-color: #BBB;
  border-bottom: none;
}

.selectric-focus .selectric {
  border-color: #aaaaaa;
}

.selectric-hover .selectric {
  border-color: #c4c4c4;
}

.selectric-hover .selectric .button {
  color: #a2a2a2;
}

.selectric-hover .selectric .button:after {
  border-top-color: #a2a2a2;
}

.selectric-open {
  z-index: 9999;
}

.selectric-open .selectric {
  border-color: #c4c4c4;
}

.selectric-open .selectric-items {
  display: block;
}

.selectric-disabled {
  filter: alpha(opacity=50);
  opacity: 0.5;
  cursor: default;
  user-select: none;
}

.selectric-hide-select {
  position: relative;
  overflow: hidden;
  width: 0;
  height: 0;
}

.selectric-hide-select select {
  position: absolute;
  left: -100%;
}

.selectric-hide-select.selectric-is-native {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 10;
}

.selectric-hide-select.selectric-is-native select {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 100%;
  width: 100%;
  border: none;
  z-index: 1;
  box-sizing: border-box;
  opacity: 0;
}

.selectric-input {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 1px !important;
  height: 1px !important;
  outline: none !important;
  border: none !important;
  *font: 0/0 a !important;
  background: none !important;
}

.selectric-temp-show {
  position: absolute !important;
  visibility: hidden !important;
  display: block !important;
}

/* Items box */
.selectric-items {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  background: #F8F8F8;
  border: 1px solid #c4c4c4;
  z-index: -1;
  box-shadow: 0 0 10px -6px;
}

.selectric-items .selectric-scroll {
  height: 100%;
  overflow: auto;
}

.selectric-above .selectric-items {
  top: auto;
  bottom: 100%;
}

.selectric-items ul, .selectric-items li {
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: 12px;
  line-height: 20px;
  min-height: 20px;
}

.selectric-items li {
  display: block;
  padding: 10px;
  color: #666;
  cursor: pointer;
}

.selectric-items li.selected {
  background: #E0E0E0;
  color: #444;
}

.selectric-items li.highlighted {
  background: #D0D0D0;
  color: #444;
}

.selectric-items li:hover {
  background: #D5D5D5;
  color: #444;
}

.selectric-items .disabled {
  filter: alpha(opacity=50);
  opacity: 0.5;
  cursor: default !important;
  background: none !important;
  color: #666 !important;
  user-select: none;
}

.selectric-items .selectric-group .selectric-group-label {
  font-weight: bold;
  padding-left: 10px;
  cursor: default;
  user-select: none;
  background: none;
  color: #444;
}

.selectric-items .selectric-group.disabled li {
  filter: alpha(opacity=100);
  opacity: 1;
}

.selectric-items .selectric-group li {
  padding-left: 25px;
}

/*======================================
  Global resets
======================================*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  outline: none;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

body {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/*======================================
  Global styles
======================================*/
html {
  background: #ffffff;
  box-sizing: border-box;
}

*,
*:before,
*:after {
  box-sizing: inherit;
}

html,
button,
input,
select,
textarea {
  color: #8c8c8c;
}

a {
  text-decoration: none;
  font: inherit;
  color: inherit;
}

a:hover {
  text-decoration: none;
}

button {
  cursor: pointer;
}

a:focus,
button:focus,
a:active,
button:active {
  outline: none;
}

ul,
li {
  list-style: none;
}

ol,
ul {
  padding: 0;
  margin: 0;
}

img,
iframe,
video {
  vertical-align: middle;
}

.align-left {
  text-align: left;
}

.align-right {
  text-align: right;
}

.align-center {
  text-align: center;
}

.hidden {
  display: none;
}

.hideText {
  display: block;
  text-indent: 101%;
  overflow: hidden;
  white-space: nowrap;
}

/*======================================
  Grid
======================================*/
/*@include breakpoint2($min: xl, $max: "") {
  .hidden-fullhd {
    display: none !important;
  }
  .visible-fullhd {
    display: block !important;
  }
}
@include breakpoint2($min: lg, $max: xl) {
  .hidden-fullDesktop {
    display: none !important;
  }
  .visible-fullDesktop {
    display: block !important;
  }
}
@include breakpoint2($min: md, $max: lg) {
  .hidden-desktop {
    display: none !important;
  }
  .visible-desktop {
    display: block !important;
  }
}
@include breakpoint2($min: sm, $max: md) {
  .hidden-tablet {
    display: none !important;
  }
  .visible-tablet {
    display: block !important;
  }
}
@include breakpoint2($min: xs, $max: sm) {
  .hidden-phablets {
    display: none !important;
  }
  .visible-phablets {
    display: block !important;
  }
}
@include breakpoint2($min: "", $max: xs) {
  .hidden-phone {
    display: none !important;
  }
  .visible-phone {
    display: block !important;
  }
}*/
.container {
  max-width: 1256px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}

@media (max-width: 768px) {
  .container {
    padding-left: 15px;
    padding-right: 15px;
  }
}

/*.container-full {
  @include container-full;

  @include breakpoint2($min:'', $max:sm) {
    padding-left: 15px;
    padding-right: 15px;
  }
}

@include make-default-margin(mtop,10,top);
@include make-default-padding(ptop,10,top);

@include make-default-margin(mbottom,10,bottom);
@include make-default-padding(pbottom,10,bottom);

.fl { float: left; }
.fr { float: right; }

.center-block {
  margin-left: auto;
  margin-right: auto;
  float: none;
}*/
/*======================================
  Fonts
======================================*/
/*@font-face{ font-display:swap;
  font-family: 'fonte name';
  src: url('/wp-content/themes/adv-silva-campos/assets/fonts/fonte-name.eot');
  src: url('/wp-content/themes/adv-silva-campos/assets/fonts/fonte-name.eot?#iefix') format('embedded-opentype'),
       url('/wp-content/themes/adv-silva-campos/assets/fonts/fonte-name.woff') format('woff'),
       url('/wp-content/themes/adv-silva-campos/assets/fonts/fonte-name.ttf') format('truetype'),
       url('/wp-content/themes/adv-silva-campos/assets/fonts/fonte-name.svg#fonte-name') format('svg');
  font-weight: normal;
  font-style: normal;
 }*/
/* #### Generated By: http://font.download #### */
@font-face{ font-display:swap;
  font-family: "Satoshi Regular";
  font-style: normal;
  font-weight: normal;
  src: local("Satoshi Regular"), url("/wp-content/themes/adv-silva-campos/assets/fonts/Satoshi-Regular.woff") format("woff");
 }

@font-face{ font-display:swap;
  font-family: "Satoshi Italic";
  font-style: normal;
  font-weight: normal;
  src: local("Satoshi Italic"), url("/wp-content/themes/adv-silva-campos/assets/fonts/Satoshi-Italic.woff") format("woff");
 }

@font-face{ font-display:swap;
  font-family: "Satoshi Light";
  font-style: normal;
  font-weight: normal;
  src: local("Satoshi Light"), url("/wp-content/themes/adv-silva-campos/assets/fonts/Satoshi-Light.woff") format("woff");
 }

@font-face{ font-display:swap;
  font-family: "Satoshi Light Italic";
  font-style: normal;
  font-weight: normal;
  src: local("Satoshi Light Italic"), url("/wp-content/themes/adv-silva-campos/assets/fonts/Satoshi-LightItalic.woff") format("woff");
 }

@font-face{ font-display:swap;
  font-family: "Satoshi Medium";
  font-style: normal;
  font-weight: normal;
  src: local("Satoshi Medium"), url("/wp-content/themes/adv-silva-campos/assets/fonts/Satoshi-Medium.woff") format("woff");
 }

@font-face{ font-display:swap;
  font-family: "Satoshi Medium Italic";
  font-style: normal;
  font-weight: normal;
  src: local("Satoshi Medium Italic"), url("/wp-content/themes/adv-silva-campos/assets/fonts/Satoshi-MediumItalic.woff") format("woff");
 }

@font-face{ font-display:swap;
  font-family: "Satoshi Bold";
  font-style: normal;
  font-weight: normal;
  src: local("Satoshi Bold"), url("/wp-content/themes/adv-silva-campos/assets/fonts/Satoshi-Bold.woff") format("woff");
 }

@font-face{ font-display:swap;
  font-family: "Satoshi Bold Italic";
  font-style: normal;
  font-weight: normal;
  src: local("Satoshi Bold Italic"), url("/wp-content/themes/adv-silva-campos/assets/fonts/Satoshi-BoldItalic.woff") format("woff");
 }

@font-face{ font-display:swap;
  font-family: "Satoshi Black";
  font-style: normal;
  font-weight: normal;
  src: local("Satoshi Black"), url("/wp-content/themes/adv-silva-campos/assets/fonts/Satoshi-Black.woff") format("woff");
 }

@font-face{ font-display:swap;
  font-family: "Satoshi Black Italic";
  font-style: normal;
  font-weight: normal;
  src: local("Satoshi Black Italic"), url("/wp-content/themes/adv-silva-campos/assets/fonts/Satoshi-BlackItalic.woff") format("woff");
 }

body {
  font-family: "Ubuntu", sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Montserrat", sans-serif;
  font-weight: normal;
  margin: 0;
}

p {
  margin: 0;
}

/*======================================
  Keyframes
======================================*/
@keyframes bounce {
  from {
    transform: translateY(0px);
  }
  to {
    transform: translateY(-5px);
  }
}

@keyframes moveIt {
  0%,
  100% {
    transform: translate(-50%, 0) rotate(1deg);
  }
  50% {
    transform: translate(-50%, 0) rotate(-1deg);
  }
}

@keyframes float {
  0% {
    transform: translatey(0px);
  }
  50% {
    transform: translatey(-20px);
  }
  100% {
    transform: translatey(0px);
  }
}

/*======================================
  Main structure
======================================*/
body {
  background: #0a0a0a;
}

.revealheader,
.revealicon,
.reveal,
.revealfooter,
.revealslideleft,
.revealslideright,
.revealfade {
  visibility: hidden;
}

.bg-video {
  width: 100%;
  height: clamp(1px, 85.98726vw, 1080px);
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 0;
}

.bg-video video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

.bg-video::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 0;
  background: linear-gradient(0deg, #0a0a0a 0%, #0a0a0a 10%, rgba(10, 10, 10, 0) 100%);
}

header {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 100;
}

header .grid-header {
  display: grid;
  grid-template-columns: 1fr clamp(1px, 10.66879vw, 134px) 1fr;
  gap: clamp(1px, 5.17516vw, 65px);
  align-items: end;
  grid-template-areas: "left logo right";
  padding-top: clamp(1px, 1.27389vw, 16px);
  padding-right: 0;
  padding-bottom: clamp(1px, 1.27389vw, 16px);
  padding-left: 0;
}

header .grid-header .logo {
  grid-area: logo;
}

header .grid-header .logo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

header .grid-header .logo img.mobile {
  display: none;
}

header .grid-header .menu {
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 0.71656vw, 9px);
  padding-left: 0;
}

header .grid-header .menu.left {
  grid-area: left;
}

header .grid-header .menu.left ul {
  display: flex;
  align-items: center;
  justify-content: end;
  gap: clamp(1px, 1.27389vw, 16px);
}

header .grid-header .menu.right {
  grid-area: right;
}

header .grid-header .menu.right ul {
  display: flex;
  align-items: center;
  justify-content: start;
  gap: clamp(1px, 1.27389vw, 16px);
}

header .grid-header .menu ul li a {
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  padding-top: clamp(1px, 0.63694vw, 8px);
  padding-right: clamp(1px, 0.63694vw, 8px);
  padding-bottom: clamp(1px, 0.63694vw, 8px);
  padding-left: clamp(1px, 0.63694vw, 8px);
  font-family: "Satoshi Light";
  font-size: clamp(1px, 1.43312vw, 18px);
  font-weight: 400;
  line-height: 120%;
  text-align: left;
  color: #ffffff;
}

header .grid-header .menu ul li a:hover {
  color: #cdb370;
}

header .grid-header .btn-menu-mobile {
  display: none;
}

nav.menu-mobile {
  display: none;
}

main {
  position: relative;
}

main .icon-01 {
  width: clamp(1px, 12.02229vw, 151px);
  height: clamp(1px, 12.02229vw, 151px);
  position: absolute;
  top: clamp(1px, 17.83439vw, 224px);
  left: clamp(1px, 4.14013vw, 52px);
  z-index: 0;
  animation: float 6s ease-in-out infinite;
}

main .icon-01 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

main .icon-02 {
  width: clamp(1px, 8.99682vw, 113px);
  height: clamp(1px, 8.99682vw, 113px);
  position: absolute;
  top: clamp(1px, 43.63057vw, 548px);
  left: clamp(1px, 14.64968vw, 184px);
  z-index: 0;
  animation: float 4s ease-in-out infinite;
}

main .icon-02 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

main .icon-03 {
  width: clamp(1px, 11.94268vw, 150px);
  height: clamp(1px, 11.94268vw, 150px);
  position: absolute;
  top: clamp(1px, 15.92357vw, 200px);
  right: clamp(1px, 12.34076vw, 155px);
  z-index: 0;
  animation: float 7s ease-in-out infinite;
}

main .icon-03 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

main .icon-04 {
  width: clamp(1px, 8.28025vw, 104px);
  height: clamp(1px, 8.28025vw, 104px);
  position: absolute;
  top: clamp(1px, 46.17834vw, 580px);
  right: clamp(1px, 17.75478vw, 223px);
  z-index: 0;
  animation: float 5s ease-in-out infinite;
}

main .icon-04 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

main section {
  position: relative;
}

:root {
  --gradient: conic-gradient(
    from 90deg at 50% 50%,
    rgb(251, 55, 60),
    rgba(252, 114, 28, 1),
    rgba(255, 220, 0, 1),
    rgba(27, 206, 255, 1),
    rgba(42, 107, 255, 1),
    rgba(217, 41, 255, 1),
    rgba(255, 10, 92, 1)
  );
}

.card {
  --start: 0;
  position: relative;
  transition: border-color 0.3s ease-in-out;
  border-color: transparent;
}

.card:before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  border-radius: 10px;
  border: 2px solid transparent;
  background: var(--gradient);
  background-attachment: fixed;
  mask: linear-gradient(#0000, #0000), conic-gradient(from calc((var(--start) - (20 * 1.1)) * 1deg), #ffffff1f 0deg, white, #ffffff00 100deg);
  mask-composite: intersect;
  mask-clip: padding-box, border-box;
  opacity: 0;
  transition: 0.5s ease;
}

.card:hover {
  border-color: transparent !important;
}

.card:hover:before {
  opacity: 0.6;
}

.card .glow {
  pointer-events: none;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  filter: blur(14px);
}

.card .glow:before {
  position: absolute;
  content: "";
  width: 98%;
  height: 98%;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  border-radius: 14px;
  border: 15px solid transparent;
  background: var(--gradient);
  background-attachment: fixed;
  /* mask: linear-gradient(#0000, #0000), 
      conic-gradient(
        from calc(var(--start)  * 1deg), 
        #000 0deg, 
        #ffffff, 
        rgba(0, 0, 0, 0) 60deg
        ); */
  mask: linear-gradient(#0000, #0000), conic-gradient(from calc((var(--start) - (20 * 1.1)) * 1deg), #ffffff1f 0deg, white, #ffffff00 100deg);
  mask-composite: intersect;
  mask-clip: padding-box, border-box;
  opacity: 0;
  transition: 1s ease;
}

.card:hover > .glow::before {
  opacity: 1;
}

footer {
  padding-top: clamp(1px, 7.64331vw, 96px);
  padding-right: 0;
  padding-bottom: clamp(1px, 1.75159vw, 22px);
  padding-left: 0;
}

footer .grid-footer {
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 6.05096vw, 76px);
  padding-left: 0;
  border-bottom: 1px solid #262a3a;
  display: grid;
  grid-template-columns: clamp(1px, 14.01274vw, 176px) 1fr 1fr 1fr;
  gap: clamp(1px, 3.98089vw, 50px);
  align-items: start;
}

footer .grid-footer .logo a {
  display: block;
}

footer .grid-footer .logo a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

footer .grid-footer .item .title {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 1.43312vw, 18px);
  font-weight: 400;
  line-height: 150%;
  text-align: left;
  color: #ffffff;
  letter-spacing: 0.2px;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 1.91083vw, 24px);
  padding-left: 0;
}

footer .grid-footer .item ul.menu li a {
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  padding-top: clamp(1px, 0.55732vw, 7px);
  padding-right: 0;
  padding-bottom: clamp(1px, 0.55732vw, 7px);
  padding-left: 0;
  font-family: "Satoshi Light";
  font-size: clamp(1px, 1.27389vw, 16px);
  font-weight: 400;
  line-height: 150%;
  text-align: left;
  color: #ffffff;
  display: block;
}

footer .grid-footer .item ul.menu li a:hover {
  color: #cdb370;
}

footer .grid-footer .item ul.contact {
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 1.99045vw, 25px);
  padding-left: 0;
}

footer .grid-footer .item ul.contact li a {
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  display: flex;
  align-items: center;
  justify-content: start;
  gap: clamp(1px, 0.63694vw, 8px);
  padding-top: clamp(1px, 0.63694vw, 8px);
  padding-right: 0;
  padding-bottom: clamp(1px, 0.63694vw, 8px);
  padding-left: 0;
  font-family: "Satoshi Light";
  font-size: clamp(1px, 1.27389vw, 16px);
  font-weight: 400;
  line-height: 150%;
  text-align: left;
  color: #ffffff;
}

footer .grid-footer .item ul.contact li a .icon {
  width: clamp(1px, 1.59236vw, 20px);
  height: clamp(1px, 1.59236vw, 20px);
  fill: transparent;
}

footer .grid-footer .item ul.contact li a:hover {
  color: #cdb370;
}

footer .grid-footer .item .share {
  display: inline-flex;
  align-items: center;
  justify-content: start;
  gap: clamp(1px, 1.27389vw, 16px);
}

footer .grid-footer .item .share span {
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  font-family: "Satoshi Light";
  font-size: clamp(1px, 1.27389vw, 16px);
  font-weight: 400;
  line-height: 150%;
  text-align: left;
  color: #ffffff;
}

footer .grid-footer .item .share .icon-box {
  width: clamp(1px, 3.82166vw, 48px);
  height: clamp(1px, 3.82166vw, 48px);
  background-color: #262a3a;
  border-radius: clamp(1px, 0.79618vw, 10px);
  display: flex;
  align-items: center;
  justify-content: center;
}

footer .grid-footer .item .share .icon-box .icon {
  width: clamp(1px, 2.54777vw, 32px);
  height: clamp(1px, 2.54777vw, 32px);
  fill: #cdb370;
}

footer .grid-footer .item .share:hover span {
  color: #cdb370;
}

footer .grid-footer .item.first {
  padding-top: clamp(1px, 1.19427vw, 15px);
  padding-right: 0;
  padding-bottom: 0;
  padding-left: clamp(1px, 6.84713vw, 86px);
}

footer .grid-footer .item.second {
  padding-top: clamp(1px, 1.19427vw, 15px);
  padding-right: 0;
  padding-bottom: 0;
  padding-left: clamp(1px, 4.29936vw, 54px);
}

footer .grid-footer .item.third {
  padding-top: clamp(1px, 1.19427vw, 15px);
  padding-right: 0;
  padding-bottom: 0;
  padding-left: clamp(1px, 1.3535vw, 17px);
}

footer .copyright {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(1px, 0.79618vw, 10px);
  padding-top: clamp(1px, 2.54777vw, 32px);
  padding-right: 0;
  padding-bottom: clamp(1px, 2.54777vw, 32px);
  padding-left: 0;
}

footer .copyright p {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 1.27389vw, 16px);
  font-weight: 400;
  line-height: 150%;
  text-align: left;
  color: #ffffff;
}

footer .copyright p a:hover {
  color: #cdb370;
}

footer .copyright p a.upsites {
  display: inline-flex;
}

footer .copyright p a.upsites span {
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
}

footer .copyright p a.upsites span:hover {
  position: relative;
  top: -2px;
}

/*@include breakpoint2($min:xl, $max:'') {}
@include breakpoint2($min:lg, $max:xl) {}
@include breakpoint2($min:md, $max:lg) {}
@include breakpoint2($min:sm, $max:md) {}
@include breakpoint2($min:xs, $max:sm) {}
@include breakpoint2($min:'', $max:xs) {}*/
/*======================================
  Buttons
======================================*/
.btn {
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline;
}

/*======================================
  About
======================================*/
.about {
  border-top: 1px solid #262a3a;
  border-bottom: 1px solid #262a3a;
  padding-top: clamp(1px, 6.44904vw, 81px);
  padding-right: 0;
  padding-bottom: clamp(1px, 8.20064vw, 103px);
  padding-left: 0;
}

.about .grid-about {
  display: grid;
  grid-template-columns: clamp(1px, 24.68153vw, 310px) 1fr clamp(1px, 38.8535vw, 488px);
  gap: 0;
  align-items: start;
}

.about .grid-about .text {
  padding: 38px 0 0 0;
}

.about .grid-about .text .subtitle {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 1.11465vw, 14px);
  font-weight: 300;
  line-height: 115%;
  text-align: left;
  color: #9a9a9a;
  text-transform: uppercase;
  letter-spacing: 1.5px;
}

.about .grid-about .text .title {
  font-family: "Satoshi Bold";
  font-size: clamp(1px, 3.18471vw, 40px);
  font-weight: 700;
  line-height: 115%;
  text-align: left;
  color: #ffffff;
  padding-top: clamp(1px, 1.83121vw, 23px);
  padding-right: 0;
  padding-bottom: clamp(1px, 2.07006vw, 26px);
  padding-left: 0;
  background: radial-gradient(85.02% 140.62% at 22.75% 90.62%, #ffffff 0%, #cdb370 100%);
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.about .grid-about .text .description {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 1.59236vw, 20px);
  font-weight: 400;
  line-height: 150%;
  text-align: left;
  color: #9a9a9a;
  letter-spacing: 0.2px;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 4.85669vw, 61px);
  padding-left: 0;
}

.about .grid-about .text .btn {
  display: flex;
  align-items: center;
  justify-content: start;
  gap: clamp(1px, 1.27389vw, 16px);
}

.about .grid-about .text .btn .icon-box {
  width: clamp(1px, 3.82166vw, 48px);
  height: clamp(1px, 3.82166vw, 48px);
  background-color: rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.about .grid-about .text .btn .icon-box .icon {
  width: clamp(1px, 1.91083vw, 24px);
  height: clamp(1px, 1.91083vw, 24px);
  fill: transparent;
}

.about .grid-about .text .btn .icon-box img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
}

.about .grid-about .text .btn span {
  font-family: "Satoshi Bold";
  font-size: clamp(1px, 1.27389vw, 16px);
  font-weight: 700;
  line-height: 150%;
  text-align: left;
  color: #cdb370;
}

.about .grid-about .text .btn:hover span {
  text-decoration: underline;
}

.about .grid-about .image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
}

.about .grid-about .full-text {
  padding: 63px 0 0 0;
}

.about .grid-about .full-text .title {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 1.91083vw, 24px);
  font-weight: 300;
  line-height: 150%;
  text-align: left;
  color: #dedede;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 0.63694vw, 8px);
  padding-left: 0;
  letter-spacing: 0.3px;
}

.about .grid-about .full-text p {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 1.27389vw, 16px);
  font-weight: 400;
  line-height: 150%;
  text-align: left;
  color: #dedede;
  padding-top: clamp(1px, 0.95541vw, 12px);
  padding-right: 0;
  padding-bottom: clamp(1px, 0.95541vw, 12px);
  padding-left: 0;
  letter-spacing: 0.2px;
}

.about .grid-about .full-text .btn {
  display: none;
}

/*======================================
  Alert-box
======================================*/
.alert-box {
  padding-top: clamp(1px, 3.18471vw, 40px);
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
}

.alert-box .box {
  border: 1px solid rgba(255, 59, 59, 0.4);
  background: rgba(236, 21, 21, 0.05);
  width: 100%;
  position: relative;
  border-radius: clamp(1px, 1.59236vw, 20px);
  padding-top: clamp(1px, 7.88217vw, 99px);
  padding-right: 0;
  padding-bottom: clamp(1px, 7.88217vw, 99px);
  padding-left: 0;
}

.alert-box .box .icon-box {
  background-color: #0a0a0a;
  width: clamp(1px, 6.36943vw, 80px);
  height: clamp(1px, 6.36943vw, 80px);
  border-radius: clamp(1px, 1.59236vw, 20px);
  margin: 0 auto;
  border: 1px solid red;
  position: absolute;
  top: -41px;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 0;
}

@media (max-width: 768px) {
  .alert-box .box .icon-box {
    top: -3.26433vw;
  }
}

.alert-box .box .icon-box .internal {
  width: 100%;
  height: 100%;
  border: 3px solid #0a0a0a;
  border-radius: clamp(1px, 1.59236vw, 20px);
  background: rgba(236, 21, 21, 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
}

.alert-box .box .icon-box .internal img {
  width: clamp(1px, 4.4586vw, 56px);
  height: clamp(1px, 4.4586vw, 56px);
}

.alert-box .box .title {
  font-family: "Satoshi Bold";
  font-size: clamp(1px, 3.18471vw, 40px);
  font-weight: 700;
  line-height: 115%;
  text-align: center;
  color: #ffffff;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 1.27389vw, 16px);
  padding-left: 0;
  background: radial-gradient(85.02% 140.62% at 22.75% 90.62%, #ffffff 0%, #cdb370 100%);
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.alert-box .box .description {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 1.27389vw, 16px);
  font-weight: 400;
  line-height: 150%;
  text-align: center;
  color: #dedede;
  letter-spacing: 0.2px;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 3.18471vw, 40px);
  padding-left: 0;
}

.alert-box .box .btn {
  flex-shrink: 0;
  font-family: "Satoshi Bold";
  font-size: clamp(1px, 1.27389vw, 16px);
  font-weight: 700;
  line-height: 150%;
  text-align: left;
  color: #000e2b;
  width: clamp(1px, 16.64013vw, 209px);
  height: clamp(1px, 4.4586vw, 56px);
  border-radius: clamp(1px, 0.79618vw, 10px);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 0;
  margin-right: auto;
  margin-bottom: 0;
  margin-left: auto;
  background: linear-gradient(0deg, #cdb370, #cdb370), linear-gradient(92.38deg, #cdb370 1.99%, #d1ae52 99.26%);
  border: 1px solid #cdb370;
}

.alert-box .box .btn:hover {
  color: #cdb370;
  background: transparent;
}

/*======================================
  Key differentiators
======================================*/
.key-differentiators {
  padding-top: clamp(1px, 12.42038vw, 156px);
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  border-bottom: 1px solid #262a3a;
}

.key-differentiators .title {
  font-family: "Satoshi Bold";
  font-size: clamp(1px, 3.18471vw, 40px);
  font-weight: 700;
  line-height: 115%;
  text-align: center;
  color: #ffffff;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 3.18471vw, 40px);
  padding-left: 0;
  background: radial-gradient(85.02% 140.62% at 22.75% 90.62%, #ffffff 0%, #cdb370 100%);
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.key-differentiators .grid-list-box {
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 8.20064vw, 103px);
  padding-left: 0;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: clamp(1px, 1.91083vw, 24px);
  align-items: stretch;
}

.key-differentiators .grid-list-box .item {
  background: linear-gradient(180deg, rgba(38, 42, 58, 0.2) 0%, rgba(38, 42, 58, 0.4) 100%);
  border: 1px solid #262a3a;
  padding-top: clamp(1px, 2.54777vw, 32px);
  padding-right: clamp(1px, 1.59236vw, 20px);
  padding-bottom: clamp(1px, 3.74204vw, 47px);
  padding-left: clamp(1px, 1.59236vw, 20px);
  border-radius: clamp(1px, 0.79618vw, 10px);
}

.key-differentiators .grid-list-box .item .icon-box {
  width: clamp(1px, 2.54777vw, 32px);
  height: clamp(1px, 2.54777vw, 32px);
  margin-top: 0;
  margin-right: auto;
  margin-bottom: 0;
  margin-left: auto;
}

.key-differentiators .grid-list-box .item .icon-box img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
}

.key-differentiators .grid-list-box .item .title-box {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 1.27389vw, 16px);
  font-weight: 300;
  line-height: 150%;
  text-align: center;
  color: #ffffff;
  padding-top: clamp(1px, 1.19427vw, 15px);
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
}

/*======================================
  Clients
======================================*/
.clients {
  padding-top: clamp(1px, 8.28025vw, 104px);
  padding-right: 0;
  padding-bottom: clamp(1px, 1.67197vw, 21px);
  padding-left: 0;
  overflow: hidden;
}

.clients .box-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(1px, 0.79618vw, 10px);
  padding-top: 0;
  padding-right: clamp(1px, 0.55732vw, 7px);
  padding-bottom: clamp(1px, 4.4586vw, 56px);
  padding-left: 0;
}

.clients .box-title .title {
  font-family: "Satoshi Bold";
  font-size: clamp(1px, 3.18471vw, 40px);
  font-weight: 700;
  line-height: 115%;
  text-align: center;
  color: #ffffff;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  background: radial-gradient(85.02% 140.62% at 22.75% 90.62%, #ffffff 0%, #cdb370 100%);
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.clients .box-title .box-google {
  width: clamp(1px, 29.93631vw, 376px);
  height: clamp(1px, 4.93631vw, 62px);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1px, 0.79618vw, 10px);
  border-radius: clamp(1px, 0.79618vw, 10px);
  border: 1px solid rgba(38, 42, 58, 0.3);
  background: rgba(38, 42, 58, 0.2);
  backdrop-filter: blur(44px);
}

.clients .box-title .box-google .logo {
  width: clamp(1px, 5.89172vw, 74px);
  height: auto;
}

.clients .box-title .box-google .text {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 1.27389vw, 16px);
  font-weight: 400;
  line-height: 150%;
  text-align: center;
  color: #ffffff;
}

.clients .box-title .box-google .div {
  width: 1px;
  height: clamp(1px, 1.59236vw, 20px);
  background-color: rgba(255, 255, 255, 0.2);
  margin-top: 0;
  margin-right: clamp(1px, 0.47771vw, 6px);
  margin-bottom: 0;
  margin-left: clamp(1px, 0.47771vw, 6px);
}

.clients .box-title .box-google .rate {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 1.59236vw, 20px);
  font-weight: 400;
  line-height: 150%;
  text-align: center;
  color: #ffffff;
}

.clients .box-title .box-google .stars {
  width: clamp(1px, 7.96178vw, 100px);
  height: auto;
}

.clients .grid-list-box {
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 3.98089vw, 50px);
  padding-left: 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(1px, 2.54777vw, 32px);
  align-items: stretch;
}

.clients .grid-list-box .item {
  background: linear-gradient(180deg, rgba(38, 42, 58, 0.2) 0%, rgba(38, 42, 58, 0.4) 100%);
  border: 1px solid #262a3a;
  padding-top: clamp(1px, 2.54777vw, 32px);
  padding-right: clamp(1px, 1.59236vw, 20px);
  padding-bottom: clamp(1px, 2.46815vw, 31px);
  padding-left: clamp(1px, 1.59236vw, 20px);
  border-radius: clamp(1px, 0.79618vw, 10px);
}

.clients .grid-list-box .item .icon-box {
  width: clamp(1px, 7.96178vw, 100px);
  height: auto;
}

.clients .grid-list-box .item .icon-box img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
}

.clients .grid-list-box .item .description-box {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 1.59236vw, 20px);
  font-weight: 300;
  line-height: 150%;
  text-align: left;
  color: #ffffff;
  padding-top: clamp(1px, 2.54777vw, 32px);
  padding-right: 0;
  padding-bottom: clamp(1px, 2.46815vw, 31px);
  padding-left: 0;
}

.clients .grid-list-box .item .name {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 1.27389vw, 16px);
  font-weight: 300;
  line-height: 150%;
  text-align: left;
  color: #ffffff;
}

.clients .grid-list-video {
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 8.20064vw, 103px);
  padding-left: 0;
  margin: 0 -16px;
}

.clients .grid-list-video .slick-slide {
  padding: 0 16px;
}

.clients .grid-list-video .item {
  width: 100%;
  height: clamp(1px, 39.80892vw, 500px);
  border-radius: clamp(1px, 0.79618vw, 10px);
  overflow: hidden;
}

.clients .grid-list-video .item video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

.clients .grid-list-video .slick-dots {
  padding-top: clamp(1px, 1.27389vw, 16px);
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1px, 0.79618vw, 10px);
}

.clients .grid-list-video .slick-dots li button {
  font-size: 0;
  padding: 0;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: none;
  background-color: #cdb370;
  opacity: 0.5;
}

.clients .grid-list-video .slick-dots li.slick-active button {
  background-color: #cdb370;
  opacity: 1;
}

/*======================================
  Cta
======================================*/
.cta {
  padding-top: clamp(1px, 9.87261vw, 124px);
  padding-right: 0;
  padding-bottom: clamp(1px, 12.10191vw, 152px);
  padding-left: 0;
  background: #cdb370;
}

.cta .title {
  font-family: "Satoshi Bold";
  font-size: clamp(1px, 4.4586vw, 56px);
  font-weight: 700;
  line-height: 115%;
  text-align: center;
  color: #0a0a0a;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 3.82166vw, 48px);
  padding-left: 0;
}

.cta .box {
  width: clamp(1px, 61.78344vw, 776px);
  height: clamp(1px, 7.00637vw, 88px);
  border-radius: clamp(1px, 1.59236vw, 20px);
  margin-top: 0;
  margin-right: auto;
  margin-bottom: 0;
  margin-left: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1px, 2.54777vw, 32px);
  background: #000e2b;
}

.cta .box .icon-box {
  width: clamp(1px, 3.82166vw, 48px);
  height: clamp(1px, 3.82166vw, 48px);
  background-color: rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.cta .box .icon-box .icon {
  width: clamp(1px, 1.91083vw, 24px);
  height: clamp(1px, 1.91083vw, 24px);
  fill: transparent;
}

.cta .box .icon-box img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
}

.cta .box .text {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 1.27389vw, 16px);
  font-weight: 400;
  line-height: 150%;
  text-align: left;
  color: #ffffff;
  width: clamp(1px, 33.0414vw, 415px);
  letter-spacing: 0.2px;
}

.cta .box .btn {
  flex-shrink: 0;
  font-family: "Satoshi Bold";
  font-size: clamp(1px, 1.27389vw, 16px);
  font-weight: 700;
  line-height: 150%;
  text-align: left;
  color: #000e2b;
  width: clamp(1px, 16.87898vw, 212px);
  height: clamp(1px, 4.4586vw, 56px);
  border-radius: clamp(1px, 0.79618vw, 10px);
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(0deg, #cdb370, #cdb370), linear-gradient(92.38deg, #cdb370 1.99%, #d1ae52 99.26%);
  border: 1px solid #cdb370;
}

.cta .box .btn:hover {
  color: #cdb370;
  background: transparent;
}

/*======================================
  Service
======================================*/
.hero {
  padding-top: clamp(1px, 17.99363vw, 226px);
  padding-right: 0;
  padding-bottom: clamp(1px, 11.1465vw, 140px);
  padding-left: 0;
}

.hero .breadcrumb {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1px, 1.91083vw, 24px);
}

.hero .breadcrumb span {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 1.11465vw, 14px);
  font-weight: 400;
  line-height: 115%;
  text-align: center;
  color: #ffffff;
  letter-spacing: 1.6px;
  text-transform: uppercase;
}

.hero .breadcrumb .div {
  width: clamp(1px, 1.27389vw, 16px);
  height: clamp(1px, 1.27389vw, 16px);
}

.hero .breadcrumb .div .icon {
  width: clamp(1px, 1.27389vw, 16px);
  height: clamp(1px, 1.27389vw, 16px);
}

.hero .title {
  font-family: "Satoshi Bold";
  font-size: clamp(1px, 3.18471vw, 40px);
  font-weight: 400;
  line-height: 115%;
  text-align: center;
  color: #ffffff;
  padding-top: clamp(1px, 1.91083vw, 24px);
  padding-right: 0;
  padding-bottom: clamp(1px, 1.91083vw, 24px);
  padding-left: 0;
  background: radial-gradient(85.02% 140.62% at 22.75% 90.62%, #ffffff 0%, #cdb370 100%);
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.hero .description {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 1.43312vw, 18px);
  font-weight: 400;
  line-height: 150%;
  text-align: center;
  color: #ffffff;
  letter-spacing: 0.2px;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 6.36943vw, 80px);
  padding-left: 0;
}

.hero .grid-list-box {
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 8.28025vw, 104px);
  padding-left: 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(1px, 2.54777vw, 32px);
  align-items: stretch;
}

.hero .grid-list-box .item {
  background: linear-gradient(180deg, rgba(38, 42, 58, 0.2) 0%, rgba(38, 42, 58, 0.4) 100%);
  border: 1px solid #262a3a;
  padding-top: clamp(1px, 2.54777vw, 32px);
  padding-right: clamp(1px, 3.18471vw, 40px);
  padding-bottom: clamp(1px, 3.74204vw, 47px);
  padding-left: clamp(1px, 3.18471vw, 40px);
  border-radius: clamp(1px, 0.79618vw, 10px);
}

.hero .grid-list-box .item .icon-box {
  width: clamp(1px, 2.54777vw, 32px);
  height: clamp(1px, 2.54777vw, 32px);
  margin-top: 0;
  margin-right: auto;
  margin-bottom: 0;
  margin-left: auto;
}

.hero .grid-list-box .item .icon-box img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
}

.hero .grid-list-box .item .title-box {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 1.27389vw, 16px);
  font-weight: 300;
  line-height: 150%;
  text-align: center;
  color: #ffffff;
  padding-top: clamp(1px, 1.19427vw, 15px);
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  letter-spacing: 0.2px;
}

.hero .support {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 1.43312vw, 18px);
  font-weight: 400;
  line-height: 150%;
  text-align: center;
  color: #ffffff;
  letter-spacing: 0.2px;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 1.91083vw, 24px);
  padding-left: 0;
}

.hero .box {
  width: clamp(1px, 55.73248vw, 700px);
  height: clamp(1px, 7.00637vw, 88px);
  border-radius: clamp(1px, 1.59236vw, 20px);
  margin-top: 0;
  margin-right: auto;
  margin-bottom: 0;
  margin-left: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1px, 2.54777vw, 32px);
  background: linear-gradient(90deg, rgba(38, 42, 58, 0.6) 0%, rgba(38, 42, 58, 0) 100%);
  border: 1px solid;
  border-image-source: linear-gradient(0deg, #262a3a, #262a3a), linear-gradient(88.13deg, rgba(255, 255, 255, 0) 47.03%, rgba(255, 255, 255, 0.504808) 92.05%, rgba(255, 255, 255, 0) 99.84%);
}

.hero .box .icon-box {
  width: clamp(1px, 3.82166vw, 48px);
  height: clamp(1px, 3.82166vw, 48px);
  background-color: rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.hero .box .icon-box .icon {
  width: clamp(1px, 1.91083vw, 24px);
  height: clamp(1px, 1.91083vw, 24px);
  fill: transparent;
}

.hero .box .icon-box img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
}

.hero .box .text {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 1.27389vw, 16px);
  font-weight: 400;
  line-height: 150%;
  text-align: left;
  color: #ffffff;
  width: clamp(1px, 26.27389vw, 330px);
  letter-spacing: 0.2px;
}

.hero .box .btn {
  flex-shrink: 0;
  font-family: "Satoshi Bold";
  font-size: clamp(1px, 1.27389vw, 16px);
  font-weight: 700;
  line-height: 150%;
  text-align: left;
  color: #000e2b;
  width: clamp(1px, 16.87898vw, 212px);
  height: clamp(1px, 4.4586vw, 56px);
  border-radius: clamp(1px, 0.79618vw, 10px);
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(0deg, #cdb370, #cdb370), linear-gradient(92.38deg, #cdb370 1.99%, #d1ae52 99.26%);
  border: 1px solid #cdb370;
}

.hero .box .btn:hover {
  color: #cdb370;
  background: transparent;
}

.how-to-work {
  padding-top: clamp(1px, 9.23567vw, 116px);
  padding-right: 0;
  padding-bottom: clamp(1px, 9.55414vw, 120px);
  padding-left: 0;
}

.how-to-work .grid-howtowork {
  display: grid;
  grid-template-columns: clamp(1px, 47.13376vw, 592px) clamp(1px, 38.8535vw, 488px);
  gap: 0;
  align-items: start;
  justify-content: space-between;
}

.how-to-work .grid-howtowork .text {
  position: sticky;
  top: clamp(1px, 3.18471vw, 40px);
  left: 0;
  z-index: 1;
}

.how-to-work .grid-howtowork .text .title {
  font-family: "Satoshi Bold";
  font-size: clamp(1px, 3.18471vw, 40px);
  font-weight: 400;
  line-height: 115%;
  text-align: left;
  color: #ffffff;
  padding-top: clamp(1px, 1.91083vw, 24px);
  padding-right: 0;
  padding-bottom: clamp(1px, 1.91083vw, 24px);
  padding-left: 0;
  background: radial-gradient(85.02% 140.62% at 22.75% 90.62%, #ffffff 0%, #cdb370 100%);
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.how-to-work .grid-howtowork .text .description {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 1.27389vw, 16px);
  font-weight: 400;
  line-height: 150%;
  text-align: left;
  color: #ffffff;
  letter-spacing: 0.2px;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 5.09554vw, 64px);
  padding-left: 0;
}

.how-to-work .grid-howtowork .text .box {
  width: 100%;
  height: clamp(1px, 7.64331vw, 96px);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1px, 1.27389vw, 16px);
  padding-top: 0;
  padding-right: clamp(1px, 1.75159vw, 22px);
  padding-bottom: 0;
  padding-left: 0;
  border-radius: clamp(1px, 0.79618vw, 10px);
  background: linear-gradient(180deg, rgba(38, 42, 58, 0.2) 0%, rgba(38, 42, 58, 0.4) 100%);
}

.how-to-work .grid-howtowork .text .box .icon-box {
  width: clamp(1px, 3.82166vw, 48px);
  height: clamp(1px, 3.82166vw, 48px);
  background-color: rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.how-to-work .grid-howtowork .text .box .icon-box .icon {
  width: clamp(1px, 1.91083vw, 24px);
  height: clamp(1px, 1.91083vw, 24px);
  fill: transparent;
}

.how-to-work .grid-howtowork .text .box .icon-box img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
}

.how-to-work .grid-howtowork .text .box .text {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 1.27389vw, 16px);
  font-weight: 400;
  line-height: 150%;
  text-align: left;
  color: #ffffff;
  letter-spacing: 0.2px;
}

.how-to-work .grid-howtowork .boxs .box {
  width: 100%;
  height: 240px;
  border: 1px solid #262a3a;
  background-color: #0a0a0a;
  border-radius: clamp(1px, 0.79618vw, 10px);
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  gap: clamp(1px, 1.27389vw, 16px);
  padding-top: clamp(1px, 2.54777vw, 32px);
  padding-right: clamp(1px, 2.54777vw, 32px);
  padding-bottom: clamp(1px, 2.54777vw, 32px);
  padding-left: clamp(1px, 2.54777vw, 32px);
}

.how-to-work .grid-howtowork .boxs .box .icon-box {
  width: clamp(1px, 2.54777vw, 32px);
  height: clamp(1px, 2.54777vw, 32px);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
}

.how-to-work .grid-howtowork .boxs .box .icon-box img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
}

.how-to-work .grid-howtowork .boxs .box h3 {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 1.91083vw, 24px);
  font-weight: 400;
  line-height: 150%;
  text-align: center;
  color: #ffffff;
}

.how-to-work .grid-howtowork .boxs .box:nth-child(1) {
  margin-bottom: clamp(1px, 12.73885vw, 160px);
  position: sticky;
  top: clamp(1px, 3.18471vw, 40px);
  left: 0;
  z-index: 1;
}

.how-to-work .grid-howtowork .boxs .box:nth-child(2) {
  margin-bottom: clamp(1px, 9.55414vw, 120px);
  position: sticky;
  top: clamp(1px, 6.36943vw, 80px);
  left: 0;
  z-index: 2;
}

.how-to-work .grid-howtowork .boxs .box:nth-child(3) {
  margin-bottom: clamp(1px, 6.36943vw, 80px);
  position: sticky;
  top: clamp(1px, 9.55414vw, 120px);
  left: 0;
  z-index: 3;
}

.how-to-work .grid-howtowork .boxs .box:nth-child(4) {
  margin-bottom: clamp(1px, 3.18471vw, 40px);
  position: sticky;
  top: clamp(1px, 12.73885vw, 160px);
  left: 0;
  z-index: 4;
}

.how-to-work .grid-howtowork .boxs .box:nth-child(5) {
  margin-bottom: 0;
  position: sticky;
  top: clamp(1px, 15.92357vw, 200px);
  left: 0;
  z-index: 5;
}

.key-differentiators {
  padding-top: clamp(1px, 9.55414vw, 120px);
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
}

.key-differentiators .grid-list-box.quant-01 {
  grid-template-columns: repeat(1, 1fr);
}

.key-differentiators .grid-list-box.quant-02 {
  grid-template-columns: repeat(2, 1fr);
}

.key-differentiators .grid-list-box.quant-03 {
  grid-template-columns: repeat(3, 1fr);
}

.key-differentiators .grid-list-box.quant-04 {
  grid-template-columns: repeat(4, 1fr);
}

.key-differentiators .grid-list-box.quant-05 {
  grid-template-columns: repeat(5, 1fr);
}

.key-differentiators .grid-list-box.quant-06 {
  grid-template-columns: repeat(3, 1fr);
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5jc3MiLCJzb3VyY2VzIjpbInNlcnZpY2Uuc2NzcyIsImNvcmUvX3NldHRpbmdzLnNjc3MiLCJjb3JlL191dGlscy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL3NlbGVjdHJpYy9zcmMvc2VsZWN0cmljLnNjc3MiLCJjb3JlL19nbG9iYWwuc2NzcyIsImNvcmUvX2dyaWQuc2NzcyIsImNvcmUvX2ZvbnRzLnNjc3MiLCJjb3JlL19rZXlmcmFtZXMuc2NzcyIsImNvcmUvX3N0cnVjdHVyZS5zY3NzIiwibW9kdWxlcy9fYnV0dG9ucy5zY3NzIiwibW9kdWxlcy9fYWJvdXQuc2NzcyIsIm1vZHVsZXMvX2FsZXJ0LWJveC5zY3NzIiwibW9kdWxlcy9fa2V5LWRpZmZlcmVudGlhdG9ycy5zY3NzIiwibW9kdWxlcy9fY2xpZW50cy5zY3NzIiwibW9kdWxlcy9fY3RhLnNjc3MiLCJwYWdlcy9fc2VydmljZS5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIENvbmZpZ1xuQGltcG9ydCBcImNvcmUvc2V0dGluZ3NcIjtcbkBpbXBvcnQgXCJjb3JlL3V0aWxzXCI7XG5cbi8vIFZlbmRvclxuLy8gQGltcG9ydCBcInNsaWNrLWNhcm91c2VsL3NsaWNrL3NsaWNrLnNjc3NcIjtcbkBpbXBvcnQgXCJzZWxlY3RyaWMvc3JjL3NlbGVjdHJpYy5zY3NzXCI7XG5cbi8vIERlZmF1bHRzXG5AaW1wb3J0IFwiY29yZS9nbG9iYWxcIjtcbkBpbXBvcnQgXCJjb3JlL2dyaWRcIjtcbkBpbXBvcnQgXCJjb3JlL2ZvbnRzXCI7XG5AaW1wb3J0IFwiY29yZS9rZXlmcmFtZXNcIjtcblxuLy8gU3RydWN0dXJhbFxuQGltcG9ydCBcImNvcmUvc3RydWN0dXJlXCI7XG5cbi8vIE1vZHVsZXNcbkBpbXBvcnQgXCJtb2R1bGVzL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL2Fib3V0XCI7XG5AaW1wb3J0IFwibW9kdWxlcy9hbGVydC1ib3hcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL2tleS1kaWZmZXJlbnRpYXRvcnNcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL2NsaWVudHNcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL2N0YVwiO1xuXG4vLyBQYWdlc1xuQGltcG9ydCBcInBhZ2VzL3NlcnZpY2VcIjtcbiIsIi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgU2V0dGluZ3Ncbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuLy8gR3JpZFxuJGdyaWQtY29udGFpbmVyOiAxMjU2cHg7XG4kZ3JpZC1ndXR0ZXI6IDQwcHg7XG5cbi8vIE1lZGlhIHF1ZXJ5IGJyZWFrcG9pbnRzXG4kYnJlYWtwb2ludHM6IChcbiAgeHM6IDQ4MHB4LFxuICBzbTogNzY4cHgsXG4gIG1kOiA5OTRweCxcbiAgbGc6IDEyNTZweCxcbiAgeGw6IDE0NDBweFxuKTtcblxuLy8gRm9udHNcbiRmb250LW1haW46IFwiVWJ1bnR1XCIsIHNhbnMtc2VyaWY7XG4kZm9udC1hbHQ6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuJGZvbnQtYXdlc29tZTogXCJGb250QXdlc29tZVwiO1xuJGZvbnQtc2l6ZTogMTZweDtcbiRmb250LWNvbG9yOiAjOGM4YzhjO1xuXG4vLyBDb2xvcnNcbiRjb2xvci1ibGFjazogIzAwMDAwMDtcbiRjb2xvci13aGl0ZTogI2ZmZmZmZjtcbiRjb2xvci1ncmF5OiAjYjViNWI1O1xuJGNvbG9yLWRhcmstZ3JheTogIzMzMzMzMztcbiRjb2xvci1kYXJrLWJsdWU6ICMwMDBlMmI7XG4kY29sb3ItZ29sZDogI2NkYjM3MDtcblxuJGNvbG9yLWFxdWE6ICM3ZmRiZmY7XG4kY29sb3ItYmx1ZTogIzAwYTBjODtcbiRjb2xvci1mdWNoc2lhOiAjZjAxMmJlO1xuJGNvbG9yLWdyZWVuOiAjMDBiNDAwO1xuJGNvbG9yLWxpbWU6ICMwMWZmNzA7XG4kY29sb3ItbWFyb29uOiAjODUxNDRiO1xuJGNvbG9yLW5hdnk6ICMwMDFmM2Y7XG4kY29sb3Itb2xpdmU6ICMzZDk5NzA7XG4kY29sb3Itb3JhbmdlOiAjZmY1NDFkO1xuJGNvbG9yLXB1cnBsZTogIzJmMTkyZTtcbiRjb2xvci1yZWQ6ICNmZTAwMDA7XG4kY29sb3Itc2lsdmVyOiAjZGRkZGRkO1xuJGNvbG9yLXRlYWw6ICMzOWNjY2M7XG4kY29sb3IteWVsbG93OiAjZmZjODAxO1xuXG4kY29sb3ItZXJyb3I6ICRjb2xvci1yZWQ7XG4kY29sb3Itc3VjY2VzczogJGNvbG9yLWdyZWVuO1xuJGNvbG9yLWJhY2tncm91bmQ6ICRjb2xvci13aGl0ZTtcblxuLy8gTWFnbmlmaWMgUG9wdXBcbiRtZnAtaWZyYW1lLW1heC13aWR0aDogMTI4MHB4O1xuJG1mcC1pbmNsdWRlLWFycm93czogZmFsc2U7XG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgU2FzcyBNaXhpbnMgYW5kIEZ1bmN0aW9uc1xyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcblxyXG4vLyBDYWxjdWxhdGUgZW0gZnJvbSBmb250LXNpemVcclxuQGZ1bmN0aW9uIGVtKCRwaXhlbHMsICRjb250ZXh0OiAkZm9udC1zaXplKSB7XHJcbiAgQGlmICh1bml0bGVzcygkcGl4ZWxzKSkge1xyXG4gICAgJHBpeGVsczogJHBpeGVscyAqIDFweDtcclxuICB9XHJcbiAgQGlmICh1bml0bGVzcygkY29udGV4dCkpIHtcclxuICAgICRjb250ZXh0OiAkY29udGV4dCAqIDFweDtcclxuICB9XHJcbiAgQHJldHVybiAoJHBpeGVscyAvICRjb250ZXh0KSAqIDFlbTtcclxufVxyXG5cclxuLy8gQ2FsY3VsYXRlICUgZnJvbSBhIHZhbHVlXHJcbkBmdW5jdGlvbiBjYWxjLXBlcmNlbnQoJHRhcmdldCwgJGNvbnRhaW5lcikge1xyXG4gIEByZXR1cm4gKCR0YXJnZXQgLyAkY29udGFpbmVyKSAqIDEwMCU7XHJcbn1cclxuXHJcbi8vIFNob3J0Y3V0IGZvciBjYWxjLXBlcmNlbnQoKVxyXG5AZnVuY3Rpb24gY3AoJHRhcmdldCwgJGNvbnRhaW5lcikge1xyXG4gIEByZXR1cm4gY2FsYy1wZXJjZW50KCR0YXJnZXQsICRjb250YWluZXIpO1xyXG59XHJcblxyXG4vLyBDYWxjdWxhdGUgdncgZnJvbSBhIHZhbHVlXHJcbkBmdW5jdGlvbiBnZXQtdncteHMoJHRhcmdldCkge1xyXG4gICRicmVhazogbWFwLWdldCgkYnJlYWtwb2ludHMsIHhzKSAvIDFweDtcclxuICAkdnctY29udGV4dDogKCRicmVhayAqIDAuMDEpICogMXB4O1xyXG4gIEByZXR1cm4gKCR0YXJnZXQgLyAkdnctY29udGV4dCkgKiAxdnc7XHJcbn1cclxuXHJcbi8vIENhbGN1bGF0ZSB2dyBmcm9tIGEgdmFsdWVcclxuQGZ1bmN0aW9uIGdldC12dy1zbSgkdGFyZ2V0KSB7XHJcbiAgJGJyZWFrOiBtYXAtZ2V0KCRicmVha3BvaW50cywgc20pIC8gMXB4O1xyXG4gICR2dy1jb250ZXh0OiAoJGJyZWFrICogMC4wMSkgKiAxcHg7XHJcbiAgQHJldHVybiAoJHRhcmdldCAvICR2dy1jb250ZXh0KSAqIDF2dztcclxufVxyXG5cclxuLy8gQ2FsY3VsYXRlIHZ3IGZyb20gYSB2YWx1ZVxyXG5AZnVuY3Rpb24gZ2V0LXZ3LW1kKCR0YXJnZXQpIHtcclxuICAkYnJlYWs6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCBtZCkgLyAxcHg7XHJcbiAgJHZ3LWNvbnRleHQ6ICgkYnJlYWsgKiAwLjAxKSAqIDFweDtcclxuICBAcmV0dXJuICgkdGFyZ2V0IC8gJHZ3LWNvbnRleHQpICogMXZ3O1xyXG59XHJcblxyXG4vLyBDYWxjdWxhdGUgdncgZnJvbSBhIHZhbHVlXHJcbkBmdW5jdGlvbiBnZXQtdnctbGcoJHRhcmdldCkge1xyXG4gICRicmVhazogbWFwLWdldCgkYnJlYWtwb2ludHMsIGxnKSAvIDFweDtcclxuICAkdnctY29udGV4dDogKCRicmVhayAqIDAuMDEpICogMXB4O1xyXG4gIEByZXR1cm4gKCR0YXJnZXQgLyAkdnctY29udGV4dCkgKiAxdnc7XHJcbn1cclxuXHJcbi8vIENhbGN1bGF0ZSB2dyBmcm9tIGEgdmFsdWVcclxuQGZ1bmN0aW9uIGdldC12dy14bCgkdGFyZ2V0KSB7XHJcbiAgJGJyZWFrOiBtYXAtZ2V0KCRicmVha3BvaW50cywgeGwpIC8gMXB4O1xyXG4gICR2dy1jb250ZXh0OiAoJGJyZWFrICogMC4wMSkgKiAxcHg7XHJcbiAgQHJldHVybiAoJHRhcmdldCAvICR2dy1jb250ZXh0KSAqIDF2dztcclxufVxyXG5cclxuLy8gRnVuY3Rpb24gdG8gcmVtb3ZlIHVuaXQgZnJvbSBudW1iZXJcclxuQGZ1bmN0aW9uIHN0cmlwLXVuaXRzKCRudW1iZXIpIHtcclxuICBAcmV0dXJuICRudW1iZXIgLyAoJG51bWJlciAqIDAgKyAxKTtcclxufVxyXG5cclxuLy8gQ2FsY3VsYXRlIHZ3IGZyb20gYSB2YWx1ZVxyXG5AZnVuY3Rpb24gZ2V0LXZ3KCRicmVha3BvaW50LCAkaW5kZXgpIHtcclxuICAkYnJlYWs6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCkgLyAxcHg7XHJcbiAgJHZ3LWNvbnRleHQ6ICgkYnJlYWsgKiAwLjAxKSAqIDE7XHJcbiAgJG51bWI6ICRpbmRleCAqIDU7XHJcbiAgQHJldHVybiAoJG51bWIvJHZ3LWNvbnRleHQpICogMTtcclxufVxyXG5cclxuLy8gTWl4aW4gZm9yIGNvbG9yIG92ZXJsYXlcclxuQG1peGluIGNvcigkY29sb3IsICRvcGFjaXR5OiAwLjMpIHtcclxuICBiYWNrZ3JvdW5kOiAkY29sb3I7XHJcbiAgLyogVGhlIEZhbGxiYWNrICovXHJcbiAgYmFja2dyb3VuZDogcmdiYSgkY29sb3IsICRvcGFjaXR5KTtcclxufVxyXG5cclxuLy8gTWl4aW4gZm9yIGdyYWRpZW50IHRleHQgKi9cclxuQG1peGluIGdyYWRpZW50LWZvbnQoJGdyYWRpZW50OiByYWRpYWwtZ3JhZGllbnQoODUuMDIlIDE0MC42MiUgYXQgMjIuNzUlIDkwLjYyJSwgI2ZmZmZmZiAwJSwgI2NkYjM3MCAxMDAlKSkge1xyXG4gIGJhY2tncm91bmQ6ICRncmFkaWVudDtcclxuICBiYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XHJcbiAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4vLyBDYWxjdWxhdGUgY2xhbXAgZnJvbSBhIHZhbHVlXHJcbkBmdW5jdGlvbiBnZXQtY2xhbXAoJHRhcmdldCkge1xyXG4gIEByZXR1cm4gY2xhbXAoMXB4LCBnZXQtdnctbGcoJHRhcmdldCksICR0YXJnZXQpO1xyXG59XHJcblxyXG4vLyBDYWxjdWxhdGUgdncgZnJvbSBhIHZhbHVlXHJcbkBmdW5jdGlvbiBnZXQtdnctY2FsYygkYnJlYWtwb2ludCwgJGluZGV4LCAkdHlwZSwgJHRhcmdldCkge1xyXG4gICRicmVhazogbWFwLWdldCgkYnJlYWtwb2ludHMsICRicmVha3BvaW50KSAvIDFweDtcclxuICAkdnctY29udGV4dDogKCRicmVhayAqIDAuMDEpICogMXB4O1xyXG4gICR2YWw6ICgkdGFyZ2V0IC8gJHZ3LWNvbnRleHQpICogMXZ3O1xyXG4gIEByZXR1cm4gY2FsYygjeyRpbmRleH0gI3skdHlwZX0gI3skdmFsfSk7XHJcbn1cclxuXHJcbi8vIE1peGluIGZvciBvYmplY3QtZml0XHJcbkBtaXhpbiBvYmplY3QtZml0KCRmaXQ6IGNvdmVyLCAkcG9zaXRpb246IGNlbnRlciBjZW50ZXIpIHtcclxuICBAaW5jbHVkZSB3aWR0aCgkd2lkdGg6IDEwMCUpO1xyXG4gIEBpbmNsdWRlIGhlaWdodCgkaGVpZ2h0OiAxMDAlKTtcclxuICBvYmplY3QtZml0OiAkZml0O1xyXG4gIG9iamVjdC1wb3NpdGlvbjogJHBvc2l0aW9uO1xyXG59XHJcblxyXG4vLyBNaXhpbiBmb3IgY3Jvc3MtYnJvd3NlciBpbmxpbmUtYmxvY2tcclxuQG1peGluIGlubGluZS1ibG9jaygkYWxpZ246IFwidG9wXCIpIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgdmVydGljYWwtYWxpZ246ICN7JGFsaWdufTtcclxuICB6b29tOiAxO1xyXG4gICpkaXNwbGF5OiBpbmxpbmU7XHJcbn1cclxuXHJcbi8vIE1peGluIGZvciBGb250QXdlc29tZSBpY29uc1xyXG5AbWl4aW4gZm9udC1hd2Vzb21lKCRjb250ZW50OiBcIlxcZjEwN1wiLCAkc2l6ZTogMTZweCkge1xyXG4gIGNvbnRlbnQ6IFwiI3skY29udGVudH1cIjtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgY2xhbXAoMXB4LCBnZXQtdnctbGcoJHNpemUpLCAkc2l6ZSkgLyAxIEZvbnRBd2Vzb21lO1xyXG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xyXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbn1cclxuXHJcbi8vIE1peGluIGZvciBmbGV4Ym94XHJcbkBtaXhpbiBmbGV4KCR0eXBlOiBcIlwiLCAkZGlyZWN0aW9uOiBcIlwiLCAkYWxpZ246IFwiY2VudGVyXCIsICRqdXN0aWZ5OiBcIlwiLCAkZ2FwOiBcIlwiKSB7XHJcbiAgQGlmICgkdHlwZSE9IFwiXCIpIHtcclxuICAgIGRpc3BsYXk6ICR0eXBlICsgXCItZmxleFwiO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICB9XHJcbiAgYWxpZ24taXRlbXM6ICRhbGlnbjtcclxuICBAaWYgKCRkaXJlY3Rpb24hPSBcIlwiKSB7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcclxuICB9XHJcbiAgQGlmICgkanVzdGlmeSE9IFwiXCIpIHtcclxuICAgIGp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XHJcbiAgfVxyXG4gIEBpZiAoJGdhcCE9IFwiXCIpIHtcclxuICAgIEBpZiAoc3RyLWluZGV4KCN7JGdhcH0sIFwicHhcIikpIHtcclxuICAgICAgQGlmICgkZ2FwID4gMCkge1xyXG4gICAgICAgIGdhcDogY2xhbXAoMXB4LCBnZXQtdnctbGcoJGdhcCksICRnYXApO1xyXG4gICAgICB9IEBlbHNlIHtcclxuICAgICAgICBnYXA6ICRnYXA7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludDIoJG1pbjogXCJcIiwgJG1heDogc20pIHtcclxuICAgICAgICAgIGdhcDogZ2V0LXZ3LWxnKCRnYXApO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgIGdhcDogJGdhcDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIE1peGluIGZvciBmb250IHN0eWxlc1xyXG5AbWl4aW4gZm9udCgkZmFtaWx5OiAkZm9udC1tYWluLCAkc2l6ZTogJGZvbnQtc2l6ZSwgJHdlaWdodDogNDAwLCAkaGVpZ2h0OiAxMjAlLCAkYWxpZ246IGxlZnQsICRjb2xvcjogJGNvbG9yLWJsYWNrKSB7XHJcbiAgZm9udC1mYW1pbHk6ICRmYW1pbHk7XHJcbiAgQGlmIChzdHItaW5kZXgoI3skc2l6ZX0sIFwicHhcIikpIHtcclxuICAgIEBpZiAoJHNpemUgPiAwKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMXB4LCBnZXQtdnctbGcoJHNpemUpLCAkc2l6ZSk7XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgZm9udC1zaXplOiBnZXQtdnctbGcoJHNpemUpO1xyXG4gICAgfVxyXG4gIH0gQGVsc2Uge1xyXG4gICAgZm9udC1zaXplOiAkc2l6ZTtcclxuICB9XHJcbiAgZm9udC13ZWlnaHQ6ICR3ZWlnaHQ7XHJcbiAgQGlmIChzdHItaW5kZXgoI3skaGVpZ2h0fSwgXCJweFwiKSkge1xyXG4gICAgQGlmICgkaGVpZ2h0ID4gMCkge1xyXG4gICAgICBsaW5lLWhlaWdodDogY2xhbXAoMXB4LCBnZXQtdnctbGcoJGhlaWdodCksICRoZWlnaHQpO1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAkaGVpZ2h0O1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50MigkbWluOiBcIlwiLCAkbWF4OiBzbSkge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBnZXQtdnctbGcoJGhlaWdodCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9IEBlbHNlIHtcclxuICAgIGxpbmUtaGVpZ2h0OiAkaGVpZ2h0O1xyXG4gIH1cclxuICB0ZXh0LWFsaWduOiAkYWxpZ247XHJcbiAgY29sb3I6ICRjb2xvcjtcclxufVxyXG5cclxuLy8gTWl4aW4gZm9yIHBhZGRpbmdcclxuQG1peGluIHBhZGRpbmcoJHRvcDogXCJcIiwgJHJpZ2h0OiBcIlwiLCAkYm90dG9tOiBcIlwiLCAkbGVmdDogXCJcIiwgJGFsbDogXCJcIikge1xyXG4gIEBpZiAoJGFsbCE9IFwiXCIpIHtcclxuICAgIEBpZiAoc3RyLWluZGV4KCN7JGFsbH0sIFwicHhcIikpIHtcclxuICAgICAgQGlmICgkYWxsID4gMCkge1xyXG4gICAgICAgIG1hcmdpbjogY2xhbXAoMXB4LCBnZXQtdnctbGcoJGFsbCksICRhbGwpO1xyXG4gICAgICB9IEBlbHNlIHtcclxuICAgICAgICBtYXJnaW46IGNsYW1wKC0xMDAwcHgsIGdldC12dy1sZygkYWxsKSwgJGFsbCk7XHJcbiAgICAgIH1cclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICBtYXJnaW46ICRhbGw7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAaWYgKCR0b3AhPSBcIlwiKSB7XHJcbiAgICAgIEBpZiAoc3RyLWluZGV4KCN7JHRvcH0sIFwicHhcIikpIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogY2xhbXAoMXB4LCBnZXQtdnctbGcoJHRvcCksICR0b3ApO1xyXG4gICAgICB9IEBlbHNlIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogJHRvcDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGlmICgkcmlnaHQhPSBcIlwiKSB7XHJcbiAgICAgIEBpZiAoc3RyLWluZGV4KCN7JHJpZ2h0fSwgXCJweFwiKSkge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IGNsYW1wKDFweCwgZ2V0LXZ3LWxnKCRyaWdodCksICRyaWdodCk7XHJcbiAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRyaWdodDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGlmICgkYm90dG9tIT0gXCJcIikge1xyXG4gICAgICBAaWYgKHN0ci1pbmRleCgjeyRib3R0b219LCBcInB4XCIpKSB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IGNsYW1wKDFweCwgZ2V0LXZ3LWxnKCRib3R0b20pLCAkYm90dG9tKTtcclxuICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRib3R0b207XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIEBpZiAoJGxlZnQhPSBcIlwiKSB7XHJcbiAgICAgIEBpZiAoc3RyLWluZGV4KCN7JGxlZnR9LCBcInB4XCIpKSB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiBjbGFtcCgxcHgsIGdldC12dy1sZygkbGVmdCksICRsZWZ0KTtcclxuICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkbGVmdDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gTWl4aW4gZm9yIG1hcmdpblxyXG5AbWl4aW4gbWFyZ2luKCR0b3A6IFwiXCIsICRyaWdodDogXCJcIiwgJGJvdHRvbTogXCJcIiwgJGxlZnQ6IFwiXCIsICRhbGw6IFwiXCIpIHtcclxuICBAaWYgKCRhbGwhPSBcIlwiKSB7XHJcbiAgICBAaWYgKHN0ci1pbmRleCgjeyRhbGx9LCBcInB4XCIpKSB7XHJcbiAgICAgIEBpZiAoJGFsbCA+IDApIHtcclxuICAgICAgICBtYXJnaW46IGNsYW1wKDFweCwgZ2V0LXZ3LWxnKCRhbGwpLCAkYWxsKTtcclxuICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgbWFyZ2luOiAkYWxsO1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IFwiXCIsICRtYXg6IHNtKSB7XHJcbiAgICAgICAgICBtYXJnaW46IGdldC12dy1sZygkYWxsKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICBtYXJnaW46ICRhbGw7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAaWYgKCR0b3AhPSBcIlwiKSB7XHJcbiAgICAgIEBpZiAoc3RyLWluZGV4KCN7JHRvcH0sIFwicHhcIikpIHtcclxuICAgICAgICBAaWYgKCR0b3AgPiAwKSB7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiBjbGFtcCgxcHgsIGdldC12dy1sZygkdG9wKSwgJHRvcCk7XHJcbiAgICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiAkdG9wO1xyXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludDIoJG1pbjogXCJcIiwgJG1heDogc20pIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogZ2V0LXZ3LWxnKCR0b3ApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogJHRvcDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGlmICgkcmlnaHQhPSBcIlwiKSB7XHJcbiAgICAgIEBpZiAoc3RyLWluZGV4KCN7JHJpZ2h0fSwgXCJweFwiKSkge1xyXG4gICAgICAgIEBpZiAoJHJpZ2h0ID4gMCkge1xyXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiBjbGFtcCgxcHgsIGdldC12dy1sZygkcmlnaHQpLCAkcmlnaHQpO1xyXG4gICAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkcmlnaHQ7XHJcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50MigkbWluOiBcIlwiLCAkbWF4OiBzbSkge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGdldC12dy1sZygkcmlnaHQpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkcmlnaHQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIEBpZiAoJGJvdHRvbSE9IFwiXCIpIHtcclxuICAgICAgQGlmIChzdHItaW5kZXgoI3skYm90dG9tfSwgXCJweFwiKSkge1xyXG4gICAgICAgIEBpZiAoJGJvdHRvbSA+IDApIHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IGNsYW1wKDFweCwgZ2V0LXZ3LWxnKCRib3R0b20pLCAkYm90dG9tKTtcclxuICAgICAgICB9IEBlbHNlIHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRib3R0b207XHJcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50MigkbWluOiBcIlwiLCAkbWF4OiBzbSkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBnZXQtdnctbGcoJGJvdHRvbSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9IEBlbHNlIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAkYm90dG9tO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAaWYgKCRsZWZ0IT0gXCJcIikge1xyXG4gICAgICBAaWYgKHN0ci1pbmRleCgjeyRsZWZ0fSwgXCJweFwiKSkge1xyXG4gICAgICAgIEBpZiAoJGxlZnQgPiAwKSB7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogY2xhbXAoMXB4LCBnZXQtdnctbGcoJGxlZnQpLCAkbGVmdCk7XHJcbiAgICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogJGxlZnQ7XHJcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50MigkbWluOiBcIlwiLCAkbWF4OiBzbSkge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogZ2V0LXZ3LWxnKCRsZWZ0KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAkbGVmdDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gTWl4aW4gZm9yIGJvcmRlci1yYWRpdXNcclxuQG1peGluIGJvcmRlci1yYWRpdXMoJGFsbDogMCkge1xyXG4gIEBpZiAoJGFsbCE9IDApIHtcclxuICAgIEBpZiAoc3RyLWluZGV4KCN7JGFsbH0sIFwicHhcIikpIHtcclxuICAgICAgYm9yZGVyLXJhZGl1czogY2xhbXAoMXB4LCBnZXQtdnctbGcoJGFsbCksICRhbGwpO1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRhbGw7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBNaXhpbiBmb3IgcG9zaXRpb25cclxuQG1peGluIHBvc2l0aW9uKCR0eXBlOiByZWxhdGl2ZSwgJHRvcDogXCJcIiwgJHJpZ2h0OiBcIlwiLCAkYm90dG9tOiBcIlwiLCAkbGVmdDogXCJcIiwgJHotaW5kZXg6IFwiXCIpIHtcclxuICBwb3NpdGlvbjogJHR5cGU7XHJcbiAgQGlmICgkdG9wIT0gXCJcIikge1xyXG4gICAgQGlmIChzdHItaW5kZXgoI3skdG9wfSwgXCJweFwiKSkge1xyXG4gICAgICBAaWYgKCR0b3AgPiAwKSB7XHJcbiAgICAgICAgdG9wOiBjbGFtcCgxcHgsIGdldC12dy1sZygkdG9wKSwgJHRvcCk7XHJcbiAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgIHRvcDogJHRvcDtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50MigkbWluOiBcIlwiLCAkbWF4OiBzbSkge1xyXG4gICAgICAgICAgdG9wOiBnZXQtdnctbGcoJHRvcCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgdG9wOiAkdG9wO1xyXG4gICAgfVxyXG4gIH1cclxuICBAaWYgKCRyaWdodCE9IFwiXCIpIHtcclxuICAgIEBpZiAoc3RyLWluZGV4KCN7JHJpZ2h0fSwgXCJweFwiKSkge1xyXG4gICAgICBAaWYgKCRyaWdodCA+IDApIHtcclxuICAgICAgICByaWdodDogY2xhbXAoMXB4LCBnZXQtdnctbGcoJHJpZ2h0KSwgJHJpZ2h0KTtcclxuICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgcmlnaHQ6ICRyaWdodDtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50MigkbWluOiBcIlwiLCAkbWF4OiBzbSkge1xyXG4gICAgICAgICAgcmlnaHQ6IGdldC12dy1sZygkcmlnaHQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgIHJpZ2h0OiAkcmlnaHQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpZiAoJGJvdHRvbSE9IFwiXCIpIHtcclxuICAgIEBpZiAoc3RyLWluZGV4KCN7JGJvdHRvbX0sIFwicHhcIikpIHtcclxuICAgICAgQGlmICgkYm90dG9tID4gMCkge1xyXG4gICAgICAgIGJvdHRvbTogY2xhbXAoMXB4LCBnZXQtdnctbGcoJGJvdHRvbSksICRib3R0b20pO1xyXG4gICAgICB9IEBlbHNlIHtcclxuICAgICAgICBib3R0b206ICRib3R0b207XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludDIoJG1pbjogXCJcIiwgJG1heDogc20pIHtcclxuICAgICAgICAgIGJvdHRvbTogZ2V0LXZ3LWxnKCRib3R0b20pO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgIGJvdHRvbTogJGJvdHRvbTtcclxuICAgIH1cclxuICB9XHJcbiAgQGlmICgkbGVmdCE9IFwiXCIpIHtcclxuICAgIEBpZiAoc3RyLWluZGV4KCN7JGxlZnR9LCBcInB4XCIpKSB7XHJcbiAgICAgIEBpZiAoJGxlZnQgPiAwKSB7XHJcbiAgICAgICAgbGVmdDogY2xhbXAoMXB4LCBnZXQtdnctbGcoJGxlZnQpLCAkbGVmdCk7XHJcbiAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgIGxlZnQ6ICRsZWZ0O1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IFwiXCIsICRtYXg6IHNtKSB7XHJcbiAgICAgICAgICBsZWZ0OiBnZXQtdnctbGcoJGxlZnQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgIGxlZnQ6ICRsZWZ0O1xyXG4gICAgfVxyXG4gIH1cclxuICBAaWYgKCR6LWluZGV4IT0gXCJcIikge1xyXG4gICAgei1pbmRleDogJHotaW5kZXg7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBNaXhpbiBmb3Igd2lkdGhcclxuQG1peGluIHdpZHRoKCR3aWR0aDogMCkge1xyXG4gIEBpZiAoc3RyLWluZGV4KCN7JHdpZHRofSwgXCJweFwiKSkge1xyXG4gICAgd2lkdGg6IGNsYW1wKDFweCwgZ2V0LXZ3LWxnKCR3aWR0aCksICR3aWR0aCk7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICB3aWR0aDogJHdpZHRoO1xyXG4gIH1cclxufVxyXG5cclxuLy8gTWl4aW4gZm9yIGhlaWdodFxyXG5AbWl4aW4gaGVpZ2h0KCRoZWlnaHQ6IDApIHtcclxuICBAaWYgKHN0ci1pbmRleCgjeyRoZWlnaHR9LCBcInB4XCIpKSB7XHJcbiAgICBoZWlnaHQ6IGNsYW1wKDFweCwgZ2V0LXZ3LWxnKCRoZWlnaHQpLCAkaGVpZ2h0KTtcclxuICB9IEBlbHNlIHtcclxuICAgIGhlaWdodDogJGhlaWdodDtcclxuICB9XHJcbn1cclxuXHJcbi8vIE1peGluIHRvIGNyZWF0ZSBhIGdyaWRcclxuQG1peGluIGNvbHVtbnMoJHF1YW50OiByZXBlYXQoMTIsIDFmciksICRndXR0ZXI6IDIwLCAkYWxpZ246IHRvcCwgJHRlbXBsYXRlOiBcIlwiKSB7XHJcbiAgZGlzcGxheTogZ3JpZDtcclxuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6ICRxdWFudDtcclxuICBAaWYgKHN0ci1pbmRleCgjeyRndXR0ZXJ9LCBcInB4XCIpKSB7XHJcbiAgICBnYXA6IGNsYW1wKDFweCwgZ2V0LXZ3LWxnKCRndXR0ZXIpLCAkZ3V0dGVyKTtcclxuICB9IEBlbHNlIHtcclxuICAgIGdhcDogJGd1dHRlcjtcclxuICB9XHJcbiAgYWxpZ24taXRlbXM6ICRhbGlnbjtcclxuICBAaWYgKCR0ZW1wbGF0ZSE9IFwiXCIpIHtcclxuICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6ICR0ZW1wbGF0ZTtcclxuICB9XHJcbn1cclxuXHJcbi8vIE1peGluIHRvIGNyZWF0ZSBhIGdyaWQgY29udGFpbmVyXHJcbkBtaXhpbiBjb250YWluZXIge1xyXG4gIG1heC13aWR0aDogJGdyaWQtY29udGFpbmVyO1xyXG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gIG1hcmdpbi1yaWdodDogYXV0bztcclxuICBwYWRkaW5nLWxlZnQ6ICgkZ3JpZC1ndXR0ZXIgLyAyKTtcclxuICBwYWRkaW5nLXJpZ2h0OiAoJGdyaWQtZ3V0dGVyIC8gMik7XHJcbn1cclxuXHJcbi8vIE1peGluIHRvIGNyZWF0ZSBhIGdyaWQgY29udGFpbmVyXHJcbkBtaXhpbiBjb250YWluZXItZnVsbCB7XHJcbiAgbWF4LXdpZHRoOiAxODM0cHg7XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gIHBhZGRpbmctbGVmdDogKCRncmlkLWd1dHRlciAvIDIpO1xyXG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3JpZC1ndXR0ZXIgLyAyKTtcclxufVxyXG5cclxuLy8gYW5pbWF0ZVxyXG5AbWl4aW4gYW5pbWF0ZSgkdGltZTogMC41cywgJGVhc2U6IGVhc2UsICRkZWxheTogMHMpIHtcclxuICB0cmFuc2l0aW9uOiBhbGwgJHRpbWUgJGVhc2UgJGRlbGF5O1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsICR0aW1lICRlYXNlICRkZWxheTtcclxuICAtbW96LXRyYW5zaXRpb246IGFsbCAkdGltZSAkZWFzZSAkZGVsYXk7XHJcbn1cclxuXHJcbi8vIE1peGluIGZvciBtZWRpYSBxdWVyaWVzXHJcbkBtaXhpbiBicmVha3BvaW50MigkbWluOiBcIlwiLCAkbWF4OiBcIlwiKSB7XHJcbiAgQGlmIChtYXAtZ2V0KCRicmVha3BvaW50cywgJG1pbikgYW5kIG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbWF4KSkge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbWluKSArIDFweCkgYW5kIChtYXgtd2lkdGg6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbWF4KSkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9IEBlbHNlIGlmICRtaW49PSBcIlwiIHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG1heCkpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSBpZiAkbWF4PT0gXCJcIiB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRtaW4pKSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH0gQGVsc2Uge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtaW4pIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBNaXhpbiB0byBjcmVhdGUgYSBkZWZhdWx0IG1hcmdpblxyXG5AbWl4aW4gbWFrZS1kZWZhdWx0LW1hcmdpbigkcHJlZml4OiBcIm10b3BcIiwgJGxpbWl0OiAxMCwgJGRpcmVjdGlvbjogXCJ0b3BcIikge1xyXG4gIEBmb3IgJGluZGV4IGZyb20gMSB0aHJvdWdoICRsaW1pdCB7XHJcbiAgICAuI3skcHJlZml4fS0jeyRpbmRleCAqIDV9IHtcclxuICAgICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06ICN7JGluZGV4ICogNX1weDtcclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludDIoJG1pbjogbGcsICRtYXg6IHhsKSB7XHJcbiAgICBAZm9yICRpbmRleCBmcm9tIDEgdGhyb3VnaCAkbGltaXQge1xyXG4gICAgICAkcjogZ2V0LXZ3KHhsLCAkaW5kZXgpO1xyXG4gICAgICAuI3skcHJlZml4fS0jeyRpbmRleCAqIDV9IHtcclxuICAgICAgICBtYXJnaW4tI3skZGlyZWN0aW9ufTogI3skcn12dztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50MigkbWluOiBtZCwgJG1heDogbGcpIHtcclxuICAgIEBmb3IgJGluZGV4IGZyb20gMSB0aHJvdWdoICRsaW1pdCB7XHJcbiAgICAgICRyOiBnZXQtdncobGcsICRpbmRleCk7XHJcbiAgICAgIC4jeyRwcmVmaXh9LSN7JGluZGV4ICogNX0ge1xyXG4gICAgICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAjeyRyfXZ3O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IHNtLCAkbWF4OiBtZCkge1xyXG4gICAgQGZvciAkaW5kZXggZnJvbSAxIHRocm91Z2ggJGxpbWl0IHtcclxuICAgICAgJHI6IGdldC12dyhtZCwgJGluZGV4KTtcclxuICAgICAgLiN7JHByZWZpeH0tI3skaW5kZXggKiA1fSB7XHJcbiAgICAgICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06ICN7JHJ9dnc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludDIoJG1pbjogeHMsICRtYXg6IHNtKSB7XHJcbiAgICBAZm9yICRpbmRleCBmcm9tIDEgdGhyb3VnaCAkbGltaXQge1xyXG4gICAgICAkcjogZ2V0LXZ3KHNtLCAkaW5kZXgpO1xyXG4gICAgICAuI3skcHJlZml4fS0jeyRpbmRleCAqIDV9IHtcclxuICAgICAgICBtYXJnaW4tI3skZGlyZWN0aW9ufTogI3skcn12dztcclxuICAgICAgfVxyXG4gICAgICAubW9iaWxlLSN7JHByZWZpeH0tI3skaW5kZXggKiA1fSB7XHJcbiAgICAgICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06ICN7JHJ9dnc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludDIoJG1pbjogXCJcIiwgJG1heDogeHMpIHtcclxuICAgIEBmb3IgJGluZGV4IGZyb20gMSB0aHJvdWdoICRsaW1pdCB7XHJcbiAgICAgICRyOiBnZXQtdncoeHMsICRpbmRleCk7XHJcbiAgICAgIC4jeyRwcmVmaXh9LSN7JGluZGV4ICogNX0ge1xyXG4gICAgICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAjeyRyfXZ3O1xyXG4gICAgICB9XHJcbiAgICAgIC5tb2JpbGUtI3skcHJlZml4fS0jeyRpbmRleCAqIDV9IHtcclxuICAgICAgICBtYXJnaW4tI3skZGlyZWN0aW9ufTogI3skcn12dztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gTWl4aW4gdG8gY3JlYXRlIGEgZGVmYXVsdCBwYWRkaW5nXHJcbkBtaXhpbiBtYWtlLWRlZmF1bHQtcGFkZGluZygkcHJlZml4OiBcIm10b3BcIiwgJGxpbWl0OiAxMCwgJGRpcmVjdGlvbjogXCJ0b3BcIikge1xyXG4gIEBmb3IgJGluZGV4IGZyb20gMSB0aHJvdWdoICRsaW1pdCB7XHJcbiAgICAuI3skcHJlZml4fS0jeyRpbmRleCAqIDV9IHtcclxuICAgICAgcGFkZGluZy0jeyRkaXJlY3Rpb259OiAjeyRpbmRleCAqIDV9cHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IGxnLCAkbWF4OiB4bCkge1xyXG4gICAgQGZvciAkaW5kZXggZnJvbSAxIHRocm91Z2ggJGxpbWl0IHtcclxuICAgICAgJHI6IGdldC12dyh4bCwgJGluZGV4KTtcclxuICAgICAgLiN7JHByZWZpeH0tI3skaW5kZXggKiA1fSB7XHJcbiAgICAgICAgcGFkZGluZy0jeyRkaXJlY3Rpb259OiAjeyRyfXZ3O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IG1kLCAkbWF4OiBsZykge1xyXG4gICAgQGZvciAkaW5kZXggZnJvbSAxIHRocm91Z2ggJGxpbWl0IHtcclxuICAgICAgJHI6IGdldC12dyhsZywgJGluZGV4KTtcclxuICAgICAgLiN7JHByZWZpeH0tI3skaW5kZXggKiA1fSB7XHJcbiAgICAgICAgcGFkZGluZy0jeyRkaXJlY3Rpb259OiAjeyRyfXZ3O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IHNtLCAkbWF4OiBtZCkge1xyXG4gICAgQGZvciAkaW5kZXggZnJvbSAxIHRocm91Z2ggJGxpbWl0IHtcclxuICAgICAgJHI6IGdldC12dyhtZCwgJGluZGV4KTtcclxuICAgICAgLiN7JHByZWZpeH0tI3skaW5kZXggKiA1fSB7XHJcbiAgICAgICAgcGFkZGluZy0jeyRkaXJlY3Rpb259OiAjeyRyfXZ3O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IHhzLCAkbWF4OiBzbSkge1xyXG4gICAgQGZvciAkaW5kZXggZnJvbSAxIHRocm91Z2ggJGxpbWl0IHtcclxuICAgICAgJHI6IGdldC12dyhzbSwgJGluZGV4KTtcclxuICAgICAgLiN7JHByZWZpeH0tI3skaW5kZXggKiA1fSB7XHJcbiAgICAgICAgcGFkZGluZy0jeyRkaXJlY3Rpb259OiAjeyRyfXZ3O1xyXG4gICAgICB9XHJcbiAgICAgIC5tb2JpbGUtI3skcHJlZml4fS0jeyRpbmRleCAqIDV9IHtcclxuICAgICAgICBwYWRkaW5nLSN7JGRpcmVjdGlvbn06ICN7JHJ9dnc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludDIoJG1pbjogXCJcIiwgJG1heDogeHMpIHtcclxuICAgIEBmb3IgJGluZGV4IGZyb20gMSB0aHJvdWdoICRsaW1pdCB7XHJcbiAgICAgICRyOiBnZXQtdncoeHMsICRpbmRleCk7XHJcbiAgICAgIC4jeyRwcmVmaXh9LSN7JGluZGV4ICogNX0ge1xyXG4gICAgICAgIHBhZGRpbmctI3skZGlyZWN0aW9ufTogI3skcn12dztcclxuICAgICAgfVxyXG4gICAgICAubW9iaWxlLSN7JHByZWZpeH0tI3skaW5kZXggKiA1fSB7XHJcbiAgICAgICAgcGFkZGluZy0jeyRkaXJlY3Rpb259OiAjeyRyfXZ3O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGVhc2lseSB1c2UgYW4gU1ZHIGlubGluZSBpbiBDU1NcclxuLy8vIHdpdGhvdXQgZW5jb2RpbmcgaXQgdG8gYmFzZTY0LCBzYXZpbmcgYnl0ZXMuXHJcbi8vLyBJdCBhbHNvIGhlbHBzIHdpdGggYnJvd3NlciBzdXBwb3J0LlxyXG4vLy8gQSBzbWFsbCBmdW5jdGlvbiBhbGxvd2luZyBza2lwcGluZyBiYXNlNjQgZW5jb2RpbmdcclxuLy8vIGFuZCBzaW1wbHkgcGFzdGluZyB0aGUgU1ZHIG1hcmt1cCByaWdodCBpbiB0aGUgQ1NTLlxyXG4vLy8gQGF1dGhvciBKYWtvYiBFcmlrc2VuXHJcbi8vLyBAbGluayBodHRwOi8vY29kZXBlbi5pby9qYWtvYi1lL3Blbi9kb01vTUxcclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc3ZnIC0gU1ZHIGltYWdlIHRvIGVuY29kZVxyXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIEVuY29kZWQgU1ZHIGRhdGEgdXJpXHJcbkBmdW5jdGlvbiBzdmctdXJpKCRzdmcpIHtcclxuICAkZW5jb2RlZDogXCJcIjtcclxuICAkc2xpY2U6IDIwMDA7XHJcbiAgJGluZGV4OiAwO1xyXG4gICRsb29wczogY2VpbChzdHItbGVuZ3RoKCRzdmcpIC8gJHNsaWNlKTtcclxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRsb29wcyB7XHJcbiAgICAkY2h1bms6IHN0ci1zbGljZSgkc3ZnLCAkaW5kZXgsICRpbmRleCArICRzbGljZSAtIDEpO1xyXG4gICAgJGNodW5rOiBzdHItcmVwbGFjZSgkY2h1bmssICdcIicsIFwiJ1wiKTtcclxuICAgICRjaHVuazogc3RyLXJlcGxhY2UoJGNodW5rLCBcIjxcIiwgXCIlM0NcIik7XHJcbiAgICAkY2h1bms6IHN0ci1yZXBsYWNlKCRjaHVuaywgXCI+XCIsIFwiJTNFXCIpO1xyXG4gICAgJGNodW5rOiBzdHItcmVwbGFjZSgkY2h1bmssIFwiJlwiLCBcIiUyNlwiKTtcclxuICAgICRjaHVuazogc3RyLXJlcGxhY2UoJGNodW5rLCBcIiNcIiwgXCIlMjNcIik7XHJcbiAgICAkZW5jb2RlZDogI3skZW5jb2RlZH0jeyRjaHVua307XHJcbiAgICAkaW5kZXg6ICRpbmRleCArICRzbGljZTtcclxuICB9XHJcbiAgQHJldHVybiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCN7JGVuY29kZWR9XCIpO1xyXG59XHJcblxyXG4vLy8gUmVwbGFjZSBgJHNlYXJjaGAgd2l0aCBgJHJlcGxhY2VgIGluIGAkc3RyaW5nYFxyXG4vLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXHJcbi8vLyBAbGluayBodHRwOi8vc2Fzc21laXN0ZXIuY29tL2dpc3QvMWI0ZjJkYTU1Mjc4MzAwODhlNGRcclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc3RyaW5nIC0gSW5pdGlhbCBzdHJpbmdcclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VhcmNoIC0gU3Vic3RyaW5nIHRvIHJlcGxhY2VcclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkcmVwbGFjZSAoJycpIC0gTmV3IHZhbHVlXHJcbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gVXBkYXRlZCBzdHJpbmdcclxuQGZ1bmN0aW9uIHN0ci1yZXBsYWNlKCRzdHJpbmcsICRzZWFyY2gsICRyZXBsYWNlOiBcIlwiKSB7XHJcbiAgJGluZGV4OiBzdHItaW5kZXgoJHN0cmluZywgJHNlYXJjaCk7XHJcbiAgQGlmICRpbmRleCB7XHJcbiAgICBAcmV0dXJuIHN0ci1zbGljZSgkc3RyaW5nLCAxLCAkaW5kZXggLSAxKSArICRyZXBsYWNlICtcclxuICAgICAgc3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsICRpbmRleCArIHN0ci1sZW5ndGgoJHNlYXJjaCkpLCAkc2VhcmNoLCAkcmVwbGFjZSk7XHJcbiAgfVxyXG4gIEByZXR1cm4gJHN0cmluZztcclxufVxyXG4iLCIkc2VsZWN0cmljLW1haW4tY29sb3I6ICAgICAgI0RERCAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gQ29sb3IgdXNlZCBpbiBib3JkZXJcbiRzZWxlY3RyaWMtc2Vjb25kYXJ5LWNvbG9yOiAjQkJCICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBDb2xvciB1c2VkIGluIGJ1dHRvblxuJHNlbGVjdHJpYy10ZXh0LWNvbG9yOiAgICAgICM0NDQgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIENvbG9yIHVzZWQgaW4gbGFiZWxcbiRzZWxlY3RyaWMtYmctY29sb3I6ICAgICAgICAjRjhGOEY4ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBCYWNrZ3JvdW5kIGNvbG9yXG4kc2VsZWN0cmljLWJ0bi1iZy1jb2xvcjogICAgI0Y4ZjhmOCAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gQnV0dG9uIGJhY2tncm91bmQgY29sb3JcbiRzZWxlY3RyaWMtaGVpZ2h0OiAgICAgICAgICA0MHB4ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBPdXRlciBoZWlnaHRcbiRzZWxlY3RyaWMtc3BhY2luZzogICAgICAgICAxMHB4ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBMYWJlbCBsZWZ0IHBhZGRpbmdcbiRzZWxlY3RyaWMtYm9yZGVyLXdpZHRoOiAgICAxcHggIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBPdXRlciBib3JkZXIgd2lkdGhcbiRzZWxlY3RyaWMtYm9yZGVyLXJhZGl1czogICAwcHggIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBCb3JkZXIgcmFkaXVzXG4kc2VsZWN0cmljLWlubmVyLWhlaWdodDogICAgJHNlbGVjdHJpYy1oZWlnaHQgLSAoJHNlbGVjdHJpYy1ib3JkZXItd2lkdGggKiAyKSAhZGVmYXVsdDsgLy8gSW5uZXIgaGVpZ2h0XG4kc2VsZWN0cmljLWZvbnQtc2l6ZTogICAgICAgMTJweCAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gRm9udCBzaXplXG5cbi5zZWxlY3RyaWMtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uc2VsZWN0cmljLXJlc3BvbnNpdmUge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNlbGVjdHJpYyB7XG4gIGJvcmRlcjogJHNlbGVjdHJpYy1ib3JkZXItd2lkdGggc29saWQgJHNlbGVjdHJpYy1tYWluLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkc2VsZWN0cmljLWJvcmRlci1yYWRpdXM7XG4gIGJhY2tncm91bmQ6ICRzZWxlY3RyaWMtYmctY29sb3I7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAubGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICBtYXJnaW46IDAgJHNlbGVjdHJpYy1pbm5lci1oZWlnaHQgMCAkc2VsZWN0cmljLXNwYWNpbmc7XG4gICAgZm9udC1zaXplOiAkc2VsZWN0cmljLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJHNlbGVjdHJpYy1pbm5lci1oZWlnaHQ7XG4gICAgY29sb3I6ICRzZWxlY3RyaWMtdGV4dC1jb2xvcjtcbiAgICBoZWlnaHQ6ICRzZWxlY3RyaWMtaW5uZXItaGVpZ2h0O1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICB9XG5cbiAgLmJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogJHNlbGVjdHJpYy1pbm5lci1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkc2VsZWN0cmljLWlubmVyLWhlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJHNlbGVjdHJpYy1pbm5lci1oZWlnaHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNlbGVjdHJpYy1idG4tYmctY29sb3I7XG4gICAgY29sb3I6ICRzZWxlY3RyaWMtc2Vjb25kYXJ5LWNvbG9yO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250OiAwLzAgYTtcbiAgICAqZm9udDogMjBweC8jeyRzZWxlY3RyaWMtaW5uZXItaGVpZ2h0fSBMdWNpZGEgU2FucyBVbmljb2RlLCBBcmlhbCBVbmljb2RlIE1TLCBBcmlhbDtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIGJvcmRlcjogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHNlbGVjdHJpYy1zZWNvbmRhcnktY29sb3I7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uc2VsZWN0cmljLWZvY3VzIC5zZWxlY3RyaWMge1xuICBib3JkZXItY29sb3I6IGRhcmtlbigkc2VsZWN0cmljLW1haW4tY29sb3IsIDIwJSk7XG59XG5cbi5zZWxlY3RyaWMtaG92ZXIgLnNlbGVjdHJpYyB7XG4gIGJvcmRlci1jb2xvcjogZGFya2VuKCRzZWxlY3RyaWMtbWFpbi1jb2xvciwgMTAlKTtcblxuICAuYnV0dG9uIHtcbiAgICBjb2xvcjogZGFya2VuKCRzZWxlY3RyaWMtc2Vjb25kYXJ5LWNvbG9yLCAxMCUpO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oJHNlbGVjdHJpYy1zZWNvbmRhcnktY29sb3IsIDEwJSk7XG4gICAgfVxuICB9XG59XG5cbi5zZWxlY3RyaWMtb3BlbiB7XG4gIHotaW5kZXg6IDk5OTk7XG5cbiAgLnNlbGVjdHJpYyB7XG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJHNlbGVjdHJpYy1tYWluLWNvbG9yLCAxMCUpO1xuICB9XG5cbiAgLnNlbGVjdHJpYy1pdGVtcyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLnNlbGVjdHJpYy1kaXNhYmxlZCB7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT01MCk7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLnNlbGVjdHJpYy1oaWRlLXNlbGVjdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcblxuICBzZWxlY3Qge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtMTAwJTtcbiAgfVxuXG4gICYuc2VsZWN0cmljLWlzLW5hdGl2ZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiAxMDtcblxuICAgIHNlbGVjdCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gIH1cbn1cblxuLnNlbGVjdHJpYy1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB0b3A6IDAgIWltcG9ydGFudDtcbiAgbGVmdDogMCAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCkgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAqZm9udDogMC8wIGEgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uc2VsZWN0cmljLXRlbXAtc2hvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cblxuLyogSXRlbXMgYm94ICovXG4uc2VsZWN0cmljLWl0ZW1zIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQ6ICRzZWxlY3RyaWMtYmctY29sb3I7XG4gIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtlbigkc2VsZWN0cmljLW1haW4tY29sb3IsIDEwJSk7XG4gIHotaW5kZXg6IC0xO1xuICBib3gtc2hhZG93OiAwIDAgMTBweCAtNnB4O1xuXG4gIC5zZWxlY3RyaWMtc2Nyb2xsIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAuc2VsZWN0cmljLWFib3ZlICYge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDEwMCU7XG4gIH1cblxuICB1bCwgbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAkc2VsZWN0cmljLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICBtaW4taGVpZ2h0OiAyMHB4O1xuICB9XG5cbiAgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgY29sb3I6ICM2NjY7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJi5zZWxlY3RlZCB7XG4gICAgICBiYWNrZ3JvdW5kOiAjRTBFMEUwO1xuICAgICAgY29sb3I6ICM0NDQ7XG4gICAgfVxuXG4gICAgJi5oaWdobGlnaHRlZCB7XG4gICAgICBiYWNrZ3JvdW5kOiAjRDBEMEQwO1xuICAgICAgY29sb3I6ICM0NDQ7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjRDVENUQ1O1xuICAgICAgY29sb3I6ICM0NDQ7XG4gICAgfVxuICB9XG5cbiAgLmRpc2FibGVkIHtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9NTApO1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgICBjdXJzb3I6IGRlZmF1bHQgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICM2NjYgIWltcG9ydGFudDtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgfVxuXG4gIC5zZWxlY3RyaWMtZ3JvdXAge1xuICAgIC5zZWxlY3RyaWMtZ3JvdXAtbGFiZWwge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBjb2xvcjogIzQ0NDtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkIGxpIHtcbiAgICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT0xMDApO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgfVxuICB9XG59XG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgR2xvYmFsIHJlc2V0c1xyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcblxyXG5odG1sLFxyXG5ib2R5LFxyXG5kaXYsXHJcbnNwYW4sXHJcbmFwcGxldCxcclxub2JqZWN0LFxyXG5pZnJhbWUsXHJcbmgxLFxyXG5oMixcclxuaDMsXHJcbmg0LFxyXG5oNSxcclxuaDYsXHJcbnAsXHJcbmJsb2NrcXVvdGUsXHJcbnByZSxcclxuYSxcclxuYWJicixcclxuYWNyb255bSxcclxuYWRkcmVzcyxcclxuYmlnLFxyXG5jaXRlLFxyXG5jb2RlLFxyXG5kZWwsXHJcbmRmbixcclxuZW0sXHJcbmltZyxcclxuaW5zLFxyXG5rYmQsXHJcbnEsXHJcbnMsXHJcbnNhbXAsXHJcbnNtYWxsLFxyXG5zdHJpa2UsXHJcbnN0cm9uZyxcclxuc3ViLFxyXG5zdXAsXHJcbnR0LFxyXG52YXIsXHJcbmIsXHJcbnUsXHJcbmksXHJcbmNlbnRlcixcclxuZGwsXHJcbmR0LFxyXG5kZCxcclxub2wsXHJcbnVsLFxyXG5saSxcclxuZmllbGRzZXQsXHJcbmZvcm0sXHJcbmxhYmVsLFxyXG5sZWdlbmQsXHJcbnRhYmxlLFxyXG5jYXB0aW9uLFxyXG50Ym9keSxcclxudGZvb3QsXHJcbnRoZWFkLFxyXG50cixcclxudGgsXHJcbnRkLFxyXG5hcnRpY2xlLFxyXG5hc2lkZSxcclxuY2FudmFzLFxyXG5kZXRhaWxzLFxyXG5lbWJlZCxcclxuZmlndXJlLFxyXG5maWdjYXB0aW9uLFxyXG5mb290ZXIsXHJcbmhlYWRlcixcclxuaGdyb3VwLFxyXG5tZW51LFxyXG5uYXYsXHJcbm91dHB1dCxcclxucnVieSxcclxuc2VjdGlvbixcclxuc3VtbWFyeSxcclxudGltZSxcclxubWFyayxcclxuYXVkaW8sXHJcbnZpZGVvIHtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxuICBib3JkZXI6IDA7XHJcbiAgZm9udC1zaXplOiAxMDAlO1xyXG4gIGZvbnQ6IGluaGVyaXQ7XHJcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xyXG4gIG91dGxpbmU6IG5vbmU7XHJcbn1cclxuLyogSFRNTDUgZGlzcGxheS1yb2xlIHJlc2V0IGZvciBvbGRlciBicm93c2VycyAqL1xyXG5hcnRpY2xlLFxyXG5hc2lkZSxcclxuZGV0YWlscyxcclxuZmlnY2FwdGlvbixcclxuZmlndXJlLFxyXG5mb290ZXIsXHJcbmhlYWRlcixcclxuaGdyb3VwLFxyXG5tZW51LFxyXG5uYXYsXHJcbnNlY3Rpb24ge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcbmJvZHkge1xyXG4gIGxpbmUtaGVpZ2h0OiAxO1xyXG59XHJcbm9sLFxyXG51bCB7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxufVxyXG5ibG9ja3F1b3RlLFxyXG5xIHtcclxuICBxdW90ZXM6IG5vbmU7XHJcbn1cclxuYmxvY2txdW90ZTpiZWZvcmUsXHJcbmJsb2NrcXVvdGU6YWZ0ZXIsXHJcbnE6YmVmb3JlLFxyXG5xOmFmdGVyIHtcclxuICBjb250ZW50OiBcIlwiO1xyXG4gIGNvbnRlbnQ6IG5vbmU7XHJcbn1cclxudGFibGUge1xyXG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XHJcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XHJcbn1cclxuXHJcbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICBHbG9iYWwgc3R5bGVzXHJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cclxuaHRtbCB7XHJcbiAgYmFja2dyb3VuZDogJGNvbG9yLWJhY2tncm91bmQ7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG5cclxuKixcclxuKjpiZWZvcmUsXHJcbio6YWZ0ZXIge1xyXG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XHJcbn1cclxuXHJcbmh0bWwsXHJcbmJ1dHRvbixcclxuaW5wdXQsXHJcbnNlbGVjdCxcclxudGV4dGFyZWEge1xyXG4gIGNvbG9yOiAkZm9udC1jb2xvcjtcclxufVxyXG5cclxuYSB7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIC8vdHJhbnNpdGlvbjogY29sb3IgMC4ycztcclxuICBmb250OiBpbmhlcml0O1xyXG4gIGNvbG9yOiBpbmhlcml0O1xyXG5cclxuICAmOmhvdmVyIHtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbmJ1dHRvbiB7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG5hOmZvY3VzLFxyXG5idXR0b246Zm9jdXMsXHJcbmE6YWN0aXZlLFxyXG5idXR0b246YWN0aXZlIHtcclxuICBvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG51bCxcclxubGkge1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbn1cclxuXHJcbm9sLFxyXG51bCB7XHJcbiAgcGFkZGluZzogMDtcclxuICBtYXJnaW46IDA7XHJcbn1cclxuXHJcbmltZyxcclxuaWZyYW1lLFxyXG52aWRlbyB7XHJcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxufVxyXG5cclxuLmFsaWduLWxlZnQge1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuXHJcbi5hbGlnbi1yaWdodCB7XHJcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbn1cclxuXHJcbi5hbGlnbi1jZW50ZXIge1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLmhpZGRlbiB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG4uaGlkZVRleHQge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHRleHQtaW5kZW50OiAxMDElO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIEdyaWRcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi8qQGluY2x1ZGUgYnJlYWtwb2ludDIoJG1pbjogeGwsICRtYXg6IFwiXCIpIHtcbiAgLmhpZGRlbi1mdWxsaGQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAudmlzaWJsZS1mdWxsaGQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IGxnLCAkbWF4OiB4bCkge1xuICAuaGlkZGVuLWZ1bGxEZXNrdG9wIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnZpc2libGUtZnVsbERlc2t0b3Age1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IG1kLCAkbWF4OiBsZykge1xuICAuaGlkZGVuLWRlc2t0b3Age1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAudmlzaWJsZS1kZXNrdG9wIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5AaW5jbHVkZSBicmVha3BvaW50MigkbWluOiBzbSwgJG1heDogbWQpIHtcbiAgLmhpZGRlbi10YWJsZXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAudmlzaWJsZS10YWJsZXQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IHhzLCAkbWF4OiBzbSkge1xuICAuaGlkZGVuLXBoYWJsZXRzIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnZpc2libGUtcGhhYmxldHMge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IFwiXCIsICRtYXg6IHhzKSB7XG4gIC5oaWRkZW4tcGhvbmUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAudmlzaWJsZS1waG9uZSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufSovXG5cbi5jb250YWluZXIge1xuICBAaW5jbHVkZSBjb250YWluZXI7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludDIoJG1pbjogXCJcIiwgJG1heDogc20pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgfVxufVxuLyouY29udGFpbmVyLWZ1bGwge1xuICBAaW5jbHVkZSBjb250YWluZXItZnVsbDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50MigkbWluOicnLCAkbWF4OnNtKSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIH1cbn1cblxuQGluY2x1ZGUgbWFrZS1kZWZhdWx0LW1hcmdpbihtdG9wLDEwLHRvcCk7XG5AaW5jbHVkZSBtYWtlLWRlZmF1bHQtcGFkZGluZyhwdG9wLDEwLHRvcCk7XG5cbkBpbmNsdWRlIG1ha2UtZGVmYXVsdC1tYXJnaW4obWJvdHRvbSwxMCxib3R0b20pO1xuQGluY2x1ZGUgbWFrZS1kZWZhdWx0LXBhZGRpbmcocGJvdHRvbSwxMCxib3R0b20pO1xuXG4uZmwgeyBmbG9hdDogbGVmdDsgfVxuLmZyIHsgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5jZW50ZXItYmxvY2sge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBmbG9hdDogbm9uZTtcbn0qL1xuIiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBGb250c1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLypAZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdmb250ZSBuYW1lJztcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL2ZvbnRlLW5hbWUuZW90Jyk7XG4gIHNyYzogdXJsKCcuLi9mb250cy9mb250ZS1uYW1lLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgdXJsKCcuLi9mb250cy9mb250ZS1uYW1lLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICB1cmwoJy4uL2ZvbnRzL2ZvbnRlLW5hbWUudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgICAgIHVybCgnLi4vZm9udHMvZm9udGUtbmFtZS5zdmcjZm9udGUtbmFtZScpIGZvcm1hdCgnc3ZnJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn0qL1xuLyogIyMjIyBHZW5lcmF0ZWQgQnk6IGh0dHA6Ly9mb250LmRvd25sb2FkICMjIyMgKi9cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlNhdG9zaGkgUmVndWxhclwiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHNyYzpcbiAgICBsb2NhbChcIlNhdG9zaGkgUmVndWxhclwiKSxcbiAgICB1cmwoXCIuLi9mb250cy9TYXRvc2hpLVJlZ3VsYXIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiU2F0b3NoaSBJdGFsaWNcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBzcmM6XG4gICAgbG9jYWwoXCJTYXRvc2hpIEl0YWxpY1wiKSxcbiAgICB1cmwoXCIuLi9mb250cy9TYXRvc2hpLUl0YWxpYy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJTYXRvc2hpIExpZ2h0XCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgc3JjOlxuICAgIGxvY2FsKFwiU2F0b3NoaSBMaWdodFwiKSxcbiAgICB1cmwoXCIuLi9mb250cy9TYXRvc2hpLUxpZ2h0LndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlNhdG9zaGkgTGlnaHQgSXRhbGljXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgc3JjOlxuICAgIGxvY2FsKFwiU2F0b3NoaSBMaWdodCBJdGFsaWNcIiksXG4gICAgdXJsKFwiLi4vZm9udHMvU2F0b3NoaS1MaWdodEl0YWxpYy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJTYXRvc2hpIE1lZGl1bVwiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHNyYzpcbiAgICBsb2NhbChcIlNhdG9zaGkgTWVkaXVtXCIpLFxuICAgIHVybChcIi4uL2ZvbnRzL1NhdG9zaGktTWVkaXVtLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlNhdG9zaGkgTWVkaXVtIEl0YWxpY1wiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHNyYzpcbiAgICBsb2NhbChcIlNhdG9zaGkgTWVkaXVtIEl0YWxpY1wiKSxcbiAgICB1cmwoXCIuLi9mb250cy9TYXRvc2hpLU1lZGl1bUl0YWxpYy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJTYXRvc2hpIEJvbGRcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBzcmM6XG4gICAgbG9jYWwoXCJTYXRvc2hpIEJvbGRcIiksXG4gICAgdXJsKFwiLi4vZm9udHMvU2F0b3NoaS1Cb2xkLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlNhdG9zaGkgQm9sZCBJdGFsaWNcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBzcmM6XG4gICAgbG9jYWwoXCJTYXRvc2hpIEJvbGQgSXRhbGljXCIpLFxuICAgIHVybChcIi4uL2ZvbnRzL1NhdG9zaGktQm9sZEl0YWxpYy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJTYXRvc2hpIEJsYWNrXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgc3JjOlxuICAgIGxvY2FsKFwiU2F0b3NoaSBCbGFja1wiKSxcbiAgICB1cmwoXCIuLi9mb250cy9TYXRvc2hpLUJsYWNrLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlNhdG9zaGkgQmxhY2sgSXRhbGljXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgc3JjOlxuICAgIGxvY2FsKFwiU2F0b3NoaSBCbGFjayBJdGFsaWNcIiksXG4gICAgdXJsKFwiLi4vZm9udHMvU2F0b3NoaS1CbGFja0l0YWxpYy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5cbmJvZHkge1xuICBmb250LWZhbWlseTogJGZvbnQtbWFpbjtcbn1cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWFsdDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luOiAwO1xufVxuXG5wIHtcbiAgbWFyZ2luOiAwO1xufVxuIiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBLZXlmcmFtZXNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbkBrZXlmcmFtZXMgYm91bmNlIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1vdmVJdCB7XG4gIDAlLFxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKSByb3RhdGUoMWRlZyk7XG4gIH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKSByb3RhdGUoLTFkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmxvYXQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGV5KDBweCk7XG4gIH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZXkoLTIwcHgpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRleSgwcHgpO1xuICB9XG59XG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIE1haW4gc3RydWN0dXJlXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5cbi8vIGRpc3BsYXkgZ3JpZFxuLy8gQGluY2x1ZGUgY29sdW1ucyggJHF1YW50OiByZXBlYXQoNCwgMWZyKSwgJGd1dHRlcjogMTBweCwgJGFsaWduOiBjZW50ZXIsICR0ZW1wbGF0ZTogJycpO1xuXG4vLyBkaXNwbGF5IGZsZXhcbi8vIEBpbmNsdWRlIGZsZXgoJHR5cGU6IGlubGluZSwgJGRpcmVjdGlvbjogcm93LCAkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IGNlbnRlciwgJGdhcDogMTBweCk7XG5cbi8vIHBhZGRpbmdcbi8vIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogMCwgJHJpZ2h0OiAwLCAkYm90dG9tOiAwLCAkbGVmdDogMCk7XG5cbi8vIG1hcmdpblxuLy8gQGluY2x1ZGUgbWFyZ2luKCR0b3A6IDAsICRyaWdodDogMCwgJGJvdHRvbTogMCwgJGxlZnQ6IDApO1xuXG4vLyBmb250XG4vLyBAaW5jbHVkZSBmb250KCRmYW1pbHk6ICRmb250LW1haW4sICRzaXplOiAkZm9udC1zaXplLCAkd2VpZ2h0OiA0MDAsICRoZWlnaHQ6IDEyMCUsICRhbGlnbjogbGVmdCwgJGNvbG9yOiAkY29sb3ItYmxhY2spO1xuXG4vLyBwb3NpdGlvblxuLy8gQGluY2x1ZGUgcG9zaXRpb24oJHR5cGU6IHJlbGF0aXZlLCAkdG9wOiAwLCAkcmlnaHQ6IDAsICRib3R0b206IDAsICRsZWZ0OiAwLCAkei1pbmRleDogMCk7XG5cbmJvZHkge1xuICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICAvL2JhY2tncm91bmQ6ICMwYTBhMGEgdXJsKC4uL2ltYWdlcy9iZy5wbmcpIHRvcCBjZW50ZXIgbm8tcmVwZWF0O1xufVxuLnJldmVhbGhlYWRlcixcbi5yZXZlYWxpY29uLFxuLnJldmVhbCxcbi5yZXZlYWxmb290ZXIsXG4ucmV2ZWFsc2xpZGVsZWZ0LFxuLnJldmVhbHNsaWRlcmlnaHQsXG4ucmV2ZWFsZmFkZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLmJnLXZpZGVvIHtcbiAgd2lkdGg6IDEwMCU7XG4gIEBpbmNsdWRlIGhlaWdodCgkaGVpZ2h0OiAxMDgwcHgpO1xuICBAaW5jbHVkZSBwb3NpdGlvbigkdHlwZTogYWJzb2x1dGUsICR0b3A6IDAsICRyaWdodDogMCwgJGxlZnQ6IDAsICR6LWluZGV4OiAwKTtcbiAgdmlkZW8ge1xuICAgIEBpbmNsdWRlIG9iamVjdC1maXQoJGZpdDogY292ZXIsICRwb3NpdGlvbjogY2VudGVyIGNlbnRlcik7XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIEBpbmNsdWRlIHBvc2l0aW9uKCR0eXBlOiBhYnNvbHV0ZSwgJHRvcDogMCwgJHJpZ2h0OiAwLCAkYm90dG9tOiAwLCAkbGVmdDogMCwgJHotaW5kZXg6IDApO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgwZGVnLCByZ2JhKDEwLCAxMCwgMTAsIDEpIDAlLCByZ2JhKDEwLCAxMCwgMTAsIDEpIDEwJSwgcmdiYSgxMCwgMTAsIDEwLCAwKSAxMDAlKTtcbiAgfVxufVxuLy8gaGVhZGVyXG5oZWFkZXIge1xuICBAaW5jbHVkZSBwb3NpdGlvbigkdHlwZTogYWJzb2x1dGUsICR0b3A6IDAsICRyaWdodDogMCwgJGxlZnQ6IDAsICR6LWluZGV4OiAxMDApO1xuICAuZ3JpZC1oZWFkZXIge1xuICAgIEBpbmNsdWRlIGNvbHVtbnMoJHF1YW50OiAxZnIgZ2V0LWNsYW1wKDEzNHB4KSAxZnIsICRndXR0ZXI6IDY1cHgsICRhbGlnbjogZW5kLCAkdGVtcGxhdGU6IFwibGVmdCBsb2dvIHJpZ2h0XCIpO1xuICAgIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogMTZweCwgJHJpZ2h0OiAwLCAkYm90dG9tOiAxNnB4LCAkbGVmdDogMCk7XG4gICAgLmxvZ28ge1xuICAgICAgZ3JpZC1hcmVhOiBsb2dvO1xuICAgICAgaW1nIHtcbiAgICAgICAgQGluY2x1ZGUgb2JqZWN0LWZpdCgkZml0OiBjb3ZlciwgJHBvc2l0aW9uOiBjZW50ZXIgY2VudGVyKTtcbiAgICAgICAgJi5tb2JpbGUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLm1lbnUge1xuICAgICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAwLCAkcmlnaHQ6IDAsICRib3R0b206IDlweCwgJGxlZnQ6IDApO1xuICAgICAgJi5sZWZ0IHtcbiAgICAgICAgZ3JpZC1hcmVhOiBsZWZ0O1xuICAgICAgICB1bCB7XG4gICAgICAgICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IGVuZCwgJGdhcDogMTZweCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYucmlnaHQge1xuICAgICAgICBncmlkLWFyZWE6IHJpZ2h0O1xuICAgICAgICB1bCB7XG4gICAgICAgICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IHN0YXJ0LCAkZ2FwOiAxNnB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdWwge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBhbmltYXRlKCR0aW1lOiAwLjNzKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogOHB4LCAkcmlnaHQ6IDhweCwgJGJvdHRvbTogOHB4LCAkbGVmdDogOHB4KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAgICAgICAgICRmYW1pbHk6IFwiU2F0b3NoaSBMaWdodFwiLFxuICAgICAgICAgICAgICAkc2l6ZTogMThweCxcbiAgICAgICAgICAgICAgJHdlaWdodDogNDAwLFxuICAgICAgICAgICAgICAkaGVpZ2h0OiAxMjAlLFxuICAgICAgICAgICAgICAkYWxpZ246IGxlZnQsXG4gICAgICAgICAgICAgICRjb2xvcjogJGNvbG9yLXdoaXRlXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ29sZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmJ0bi1tZW51LW1vYmlsZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxubmF2Lm1lbnUtbW9iaWxlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi8vIGVuZCBoZWFkZXJcbi8vIG1haW5cbm1haW4ge1xuICAvL2JhY2tncm91bmQ6IHVybCguLi9pbWcvYmctdG9wLnBuZykgdG9wIGNlbnRlciBuby1yZXBlYXQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gaGVpZ2h0OiA1NTgwcHg7XG4gIC5pY29uLTAxIHtcbiAgICBAaW5jbHVkZSB3aWR0aCgkd2lkdGg6IDE1MXB4KTtcbiAgICBAaW5jbHVkZSBoZWlnaHQoJGhlaWdodDogMTUxcHgpO1xuICAgIEBpbmNsdWRlIHBvc2l0aW9uKCR0eXBlOiBhYnNvbHV0ZSwgJHRvcDogMjI0cHgsICRsZWZ0OiA1MnB4LCAkei1pbmRleDogMCk7XG4gICAgYW5pbWF0aW9uOiBmbG9hdCA2cyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbiAgICBpbWcge1xuICAgICAgQGluY2x1ZGUgb2JqZWN0LWZpdCgkZml0OiBjb3ZlciwgJHBvc2l0aW9uOiBjZW50ZXIgY2VudGVyKTtcbiAgICB9XG4gIH1cbiAgLmljb24tMDIge1xuICAgIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogMTEzcHgpO1xuICAgIEBpbmNsdWRlIGhlaWdodCgkaGVpZ2h0OiAxMTNweCk7XG4gICAgQGluY2x1ZGUgcG9zaXRpb24oJHR5cGU6IGFic29sdXRlLCAkdG9wOiA1NDhweCwgJGxlZnQ6IDE4NHB4LCAkei1pbmRleDogMCk7XG4gICAgYW5pbWF0aW9uOiBmbG9hdCA0cyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbiAgICBpbWcge1xuICAgICAgQGluY2x1ZGUgb2JqZWN0LWZpdCgkZml0OiBjb3ZlciwgJHBvc2l0aW9uOiBjZW50ZXIgY2VudGVyKTtcbiAgICB9XG4gIH1cbiAgLmljb24tMDMge1xuICAgIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogMTUwcHgpO1xuICAgIEBpbmNsdWRlIGhlaWdodCgkaGVpZ2h0OiAxNTBweCk7XG4gICAgQGluY2x1ZGUgcG9zaXRpb24oJHR5cGU6IGFic29sdXRlLCAkdG9wOiAyMDBweCwgJHJpZ2h0OiAxNTVweCwgJHotaW5kZXg6IDApO1xuICAgIGFuaW1hdGlvbjogZmxvYXQgN3MgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gICAgaW1nIHtcbiAgICAgIEBpbmNsdWRlIG9iamVjdC1maXQoJGZpdDogY292ZXIsICRwb3NpdGlvbjogY2VudGVyIGNlbnRlcik7XG4gICAgfVxuICB9XG4gIC5pY29uLTA0IHtcbiAgICBAaW5jbHVkZSB3aWR0aCgkd2lkdGg6IDEwNHB4KTtcbiAgICBAaW5jbHVkZSBoZWlnaHQoJGhlaWdodDogMTA0cHgpO1xuICAgIEBpbmNsdWRlIHBvc2l0aW9uKCR0eXBlOiBhYnNvbHV0ZSwgJHRvcDogNTgwcHgsICRyaWdodDogMjIzcHgsICR6LWluZGV4OiAwKTtcbiAgICBhbmltYXRpb246IGZsb2F0IDVzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xuICAgIGltZyB7XG4gICAgICBAaW5jbHVkZSBvYmplY3QtZml0KCRmaXQ6IGNvdmVyLCAkcG9zaXRpb246IGNlbnRlciBjZW50ZXIpO1xuICAgIH1cbiAgfVxuICBzZWN0aW9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbn1cbjpyb290IHtcbiAgLS1ncmFkaWVudDogY29uaWMtZ3JhZGllbnQoXG4gICAgZnJvbSA5MGRlZyBhdCA1MCUgNTAlLFxuICAgIHJnYigyNTEsIDU1LCA2MCksXG4gICAgcmdiYSgyNTIsIDExNCwgMjgsIDEpLFxuICAgIHJnYmEoMjU1LCAyMjAsIDAsIDEpLFxuICAgIHJnYmEoMjcsIDIwNiwgMjU1LCAxKSxcbiAgICByZ2JhKDQyLCAxMDcsIDI1NSwgMSksXG4gICAgcmdiYSgyMTcsIDQxLCAyNTUsIDEpLFxuICAgIHJnYmEoMjU1LCAxMCwgOTIsIDEpXG4gICk7XG59XG4uY2FyZCB7XG4gIC0tc3RhcnQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICY6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZ3JhZGllbnQpO1xuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gICAgbWFzazpcbiAgICAgIGxpbmVhci1ncmFkaWVudCgjMDAwMCwgIzAwMDApLFxuICAgICAgY29uaWMtZ3JhZGllbnQoZnJvbSBjYWxjKCh2YXIoLS1zdGFydCkgLSAoMjAgKiAxLjEpKSAqIDFkZWcpLCAjZmZmZmZmMWYgMGRlZywgd2hpdGUsICNmZmZmZmYwMCAxMDBkZWcpO1xuICAgIG1hc2stY29tcG9zaXRlOiBpbnRlcnNlY3Q7XG4gICAgbWFzay1jbGlwOiBwYWRkaW5nLWJveCwgYm9yZGVyLWJveDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgfVxuICAmOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgJjpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMC42O1xuICAgIH1cbiAgfVxuICAuZ2xvdyB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgZmlsdGVyOiBibHVyKDE0cHgpO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB3aWR0aDogOTglO1xuICAgICAgaGVpZ2h0OiA5OCU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTRweDtcbiAgICAgIGJvcmRlcjogMTVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyYWRpZW50KTtcbiAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gICAgICAvKiBtYXNrOiBsaW5lYXItZ3JhZGllbnQoIzAwMDAsICMwMDAwKSwgXG4gICAgICBjb25pYy1ncmFkaWVudChcbiAgICAgICAgZnJvbSBjYWxjKHZhcigtLXN0YXJ0KSAgKiAxZGVnKSwgXG4gICAgICAgICMwMDAgMGRlZywgXG4gICAgICAgICNmZmZmZmYsIFxuICAgICAgICByZ2JhKDAsIDAsIDAsIDApIDYwZGVnXG4gICAgICAgICk7ICovXG4gICAgICBtYXNrOlxuICAgICAgICBsaW5lYXItZ3JhZGllbnQoIzAwMDAsICMwMDAwKSxcbiAgICAgICAgY29uaWMtZ3JhZGllbnQoZnJvbSBjYWxjKCh2YXIoLS1zdGFydCkgLSAoMjAgKiAxLjEpKSAqIDFkZWcpLCAjZmZmZmZmMWYgMGRlZywgd2hpdGUsICNmZmZmZmYwMCAxMDBkZWcpO1xuICAgICAgbWFzay1jb21wb3NpdGU6IGludGVyc2VjdDtcbiAgICAgIG1hc2stY2xpcDogcGFkZGluZy1ib3gsIGJvcmRlci1ib3g7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjogMXMgZWFzZTtcbiAgICB9XG4gIH1cbn1cblxuLmNhcmQ6aG92ZXIgPiAuZ2xvdzo6YmVmb3JlIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLy8gZW5kIG1haW5cbi8vIGZvb3RlclxuZm9vdGVyIHtcbiAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiA5NnB4LCAkcmlnaHQ6IDAsICRib3R0b206IDIycHgsICRsZWZ0OiAwKTtcbiAgLmdyaWQtZm9vdGVyIHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDAsICRyaWdodDogMCwgJGJvdHRvbTogNzZweCwgJGxlZnQ6IDApO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMjYyYTNhO1xuICAgIEBpbmNsdWRlIGNvbHVtbnMoJHF1YW50OiBnZXQtY2xhbXAoMTc2cHgpIDFmciAxZnIgMWZyLCAkZ3V0dGVyOiA1MHB4LCAkYWxpZ246IHN0YXJ0LCAkdGVtcGxhdGU6IFwiXCIpO1xuICAgIC5sb2dvIHtcbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBAaW5jbHVkZSBvYmplY3QtZml0KCRmaXQ6IGNvdmVyLCAkcG9zaXRpb246IGNlbnRlciBjZW50ZXIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5pdGVtIHtcbiAgICAgIC50aXRsZSB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAgICAgJGZhbWlseTogXCJTYXRvc2hpIExpZ2h0XCIsXG4gICAgICAgICAgJHNpemU6IDE4cHgsXG4gICAgICAgICAgJHdlaWdodDogNDAwLFxuICAgICAgICAgICRoZWlnaHQ6IDE1MCUsXG4gICAgICAgICAgJGFsaWduOiBsZWZ0LFxuICAgICAgICAgICRjb2xvcjogJGNvbG9yLXdoaXRlXG4gICAgICAgICk7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjJweDtcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAwLCAkcmlnaHQ6IDAsICRib3R0b206IDI0cHgsICRsZWZ0OiAwKTtcbiAgICAgIH1cbiAgICAgIHVsLm1lbnUge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBhbmltYXRlKCR0aW1lOiAwLjNzKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogN3B4LCAkcmlnaHQ6IDAsICRib3R0b206IDdweCwgJGxlZnQ6IDApO1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udChcbiAgICAgICAgICAgICAgJGZhbWlseTogXCJTYXRvc2hpIExpZ2h0XCIsXG4gICAgICAgICAgICAgICRzaXplOiAxNnB4LFxuICAgICAgICAgICAgICAkd2VpZ2h0OiA0MDAsXG4gICAgICAgICAgICAgICRoZWlnaHQ6IDE1MCUsXG4gICAgICAgICAgICAgICRhbGlnbjogbGVmdCxcbiAgICAgICAgICAgICAgJGNvbG9yOiAkY29sb3Itd2hpdGVcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdvbGQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICB1bC5jb250YWN0IHtcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAwLCAkcmlnaHQ6IDAsICRib3R0b206IDI1cHgsICRsZWZ0OiAwKTtcbiAgICAgICAgbGkge1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgQGluY2x1ZGUgYW5pbWF0ZSgkdGltZTogMC4zcyk7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4KCRhbGlnbjogY2VudGVyLCAkanVzdGlmeTogc3RhcnQsICRnYXA6IDhweCk7XG4gICAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogMjBweCk7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGhlaWdodCgkaGVpZ2h0OiAyMHB4KTtcbiAgICAgICAgICAgICAgZmlsbDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDhweCwgJHJpZ2h0OiAwLCAkYm90dG9tOiA4cHgsICRsZWZ0OiAwKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAgICAgICAgICRmYW1pbHk6IFwiU2F0b3NoaSBMaWdodFwiLFxuICAgICAgICAgICAgICAkc2l6ZTogMTZweCxcbiAgICAgICAgICAgICAgJHdlaWdodDogNDAwLFxuICAgICAgICAgICAgICAkaGVpZ2h0OiAxNTAlLFxuICAgICAgICAgICAgICAkYWxpZ246IGxlZnQsXG4gICAgICAgICAgICAgICRjb2xvcjogJGNvbG9yLXdoaXRlXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ29sZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5zaGFyZSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgoJHR5cGU6IGlubGluZSwgJGFsaWduOiBjZW50ZXIsICRqdXN0aWZ5OiBzdGFydCwgJGdhcDogMTZweCk7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIEBpbmNsdWRlIGFuaW1hdGUoJHRpbWU6IDAuM3MpO1xuICAgICAgICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAgICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgTGlnaHRcIixcbiAgICAgICAgICAgICRzaXplOiAxNnB4LFxuICAgICAgICAgICAgJHdlaWdodDogNDAwLFxuICAgICAgICAgICAgJGhlaWdodDogMTUwJSxcbiAgICAgICAgICAgICRhbGlnbjogbGVmdCxcbiAgICAgICAgICAgICRjb2xvcjogJGNvbG9yLXdoaXRlXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgICAuaWNvbi1ib3gge1xuICAgICAgICAgIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogNDhweCk7XG4gICAgICAgICAgQGluY2x1ZGUgaGVpZ2h0KCRoZWlnaHQ6IDQ4cHgpO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyNjJhM2E7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYWxsOiAxMHB4KTtcbiAgICAgICAgICBAaW5jbHVkZSBmbGV4KCRhbGlnbjogY2VudGVyLCAkanVzdGlmeTogY2VudGVyKTtcbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBAaW5jbHVkZSB3aWR0aCgkd2lkdGg6IDMycHgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgaGVpZ2h0KCRoZWlnaHQ6IDMycHgpO1xuICAgICAgICAgICAgZmlsbDogJGNvbG9yLWdvbGQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1nb2xkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5maXJzdCB7XG4gICAgICAgIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogMTVweCwgJHJpZ2h0OiAwLCAkYm90dG9tOiAwLCAkbGVmdDogODZweCk7XG4gICAgICB9XG4gICAgICAmLnNlY29uZCB7XG4gICAgICAgIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogMTVweCwgJHJpZ2h0OiAwLCAkYm90dG9tOiAwLCAkbGVmdDogNTRweCk7XG4gICAgICB9XG4gICAgICAmLnRoaXJkIHtcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAxNXB4LCAkcmlnaHQ6IDAsICRib3R0b206IDAsICRsZWZ0OiAxN3B4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmNvcHlyaWdodCB7XG4gICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IHNwYWNlLWJldHdlZW4sICRnYXA6IDEwcHgpO1xuICAgIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogMzJweCwgJHJpZ2h0OiAwLCAkYm90dG9tOiAzMnB4LCAkbGVmdDogMCk7XG4gICAgcCB7XG4gICAgICBAaW5jbHVkZSBmb250KFxuICAgICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgTGlnaHRcIixcbiAgICAgICAgJHNpemU6IDE2cHgsXG4gICAgICAgICR3ZWlnaHQ6IDQwMCxcbiAgICAgICAgJGhlaWdodDogMTUwJSxcbiAgICAgICAgJGFsaWduOiBsZWZ0LFxuICAgICAgICAkY29sb3I6ICRjb2xvci13aGl0ZVxuICAgICAgKTtcbiAgICAgIGEge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLWdvbGQ7XG4gICAgICAgIH1cbiAgICAgICAgJi51cHNpdGVzIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFuaW1hdGUoJHRpbWU6IDAuM3MpO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgdG9wOiAtMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBlbmQgZm9vdGVyXG5cbi8vIGV4IG1lZGlhIHF1ZXJ5XG5cbi8qQGluY2x1ZGUgYnJlYWtwb2ludDIoJG1pbjp4bCwgJG1heDonJykge31cbkBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46bGcsICRtYXg6eGwpIHt9XG5AaW5jbHVkZSBicmVha3BvaW50MigkbWluOm1kLCAkbWF4OmxnKSB7fVxuQGluY2x1ZGUgYnJlYWtwb2ludDIoJG1pbjpzbSwgJG1heDptZCkge31cbkBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46eHMsICRtYXg6c20pIHt9XG5AaW5jbHVkZSBicmVha3BvaW50MigkbWluOicnLCAkbWF4OnhzKSB7fSovXG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIEJ1dHRvbnNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5idG4ge1xuXHRAaW5jbHVkZSBhbmltYXRlKCR0aW1lOiAwLjNzKTtcblx0QGluY2x1ZGUgaW5saW5lLWJsb2NrKCRhbGlnbjogbWlkZGxlKTtcbn1cbiIsIi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgQWJvdXRcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuLmFib3V0IHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMyNjJhM2E7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMjYyYTNhO1xuICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDgxcHgsICRyaWdodDogMCwgJGJvdHRvbTogMTAzcHgsICRsZWZ0OiAwKTtcbiAgLmdyaWQtYWJvdXQge1xuICAgIEBpbmNsdWRlIGNvbHVtbnMoJHF1YW50OiBnZXQtY2xhbXAoMzEwcHgpIDFmciBnZXQtY2xhbXAoNDg4cHgpLCAkZ3V0dGVyOiAwLCAkYWxpZ246IHN0YXJ0LCAkdGVtcGxhdGU6IFwiXCIpO1xuICAgIC50ZXh0IHtcbiAgICAgIHBhZGRpbmc6IDM4cHggMCAwIDA7XG4gICAgICAuc3VidGl0bGUge1xuICAgICAgICBAaW5jbHVkZSBmb250KFxuICAgICAgICAgICRmYW1pbHk6IFwiU2F0b3NoaSBMaWdodFwiLFxuICAgICAgICAgICRzaXplOiAxNHB4LFxuICAgICAgICAgICR3ZWlnaHQ6IDMwMCxcbiAgICAgICAgICAkaGVpZ2h0OiAxMTUlLFxuICAgICAgICAgICRhbGlnbjogbGVmdCxcbiAgICAgICAgICAkY29sb3I6ICM5YTlhOWFcbiAgICAgICAgKTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuNXB4O1xuICAgICAgfVxuICAgICAgLnRpdGxlIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udChcbiAgICAgICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgQm9sZFwiLFxuICAgICAgICAgICRzaXplOiA0MHB4LFxuICAgICAgICAgICR3ZWlnaHQ6IDcwMCxcbiAgICAgICAgICAkaGVpZ2h0OiAxMTUlLFxuICAgICAgICAgICRhbGlnbjogbGVmdCxcbiAgICAgICAgICAkY29sb3I6ICRjb2xvci13aGl0ZVxuICAgICAgICApO1xuICAgICAgICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDIzcHgsICRyaWdodDogMCwgJGJvdHRvbTogMjZweCwgJGxlZnQ6IDApO1xuICAgICAgICBAaW5jbHVkZSBncmFkaWVudC1mb250KCk7XG4gICAgICB9XG4gICAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICBAaW5jbHVkZSBmb250KFxuICAgICAgICAgICRmYW1pbHk6IFwiU2F0b3NoaSBMaWdodFwiLFxuICAgICAgICAgICRzaXplOiAyMHB4LFxuICAgICAgICAgICR3ZWlnaHQ6IDQwMCxcbiAgICAgICAgICAkaGVpZ2h0OiAxNTAlLFxuICAgICAgICAgICRhbGlnbjogbGVmdCxcbiAgICAgICAgICAkY29sb3I6ICM5YTlhOWFcbiAgICAgICAgKTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMnB4O1xuICAgICAgICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDAsICRyaWdodDogMCwgJGJvdHRvbTogNjFweCwgJGxlZnQ6IDApO1xuICAgICAgfVxuICAgICAgLmJ0biB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgoJGFsaWduOiBjZW50ZXIsICRqdXN0aWZ5OiBzdGFydCwgJGdhcDogMTZweCk7XG4gICAgICAgIC5pY29uLWJveCB7XG4gICAgICAgICAgQGluY2x1ZGUgd2lkdGgoJHdpZHRoOiA0OHB4KTtcbiAgICAgICAgICBAaW5jbHVkZSBoZWlnaHQoJGhlaWdodDogNDhweCk7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICBAaW5jbHVkZSBmbGV4KCRhbGlnbjogY2VudGVyLCAkanVzdGlmeTogY2VudGVyKTtcbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBAaW5jbHVkZSB3aWR0aCgkd2lkdGg6IDI0cHgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgaGVpZ2h0KCRoZWlnaHQ6IDI0cHgpO1xuICAgICAgICAgICAgZmlsbDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgfVxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBvYmplY3QtZml0KCRmaXQ6IGNvbnRhaW4sICRwb3NpdGlvbjogY2VudGVyIGNlbnRlcik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAgICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgQm9sZFwiLFxuICAgICAgICAgICAgJHNpemU6IDE2cHgsXG4gICAgICAgICAgICAkd2VpZ2h0OiA3MDAsXG4gICAgICAgICAgICAkaGVpZ2h0OiAxNTAlLFxuICAgICAgICAgICAgJGFsaWduOiBsZWZ0LFxuICAgICAgICAgICAgJGNvbG9yOiAkY29sb3ItZ29sZFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmltYWdlIHtcbiAgICAgIGltZyB7XG4gICAgICAgIEBpbmNsdWRlIG9iamVjdC1maXQoJGZpdDogY29udGFpbiwgJHBvc2l0aW9uOiBjZW50ZXIgY2VudGVyKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmZ1bGwtdGV4dCB7XG4gICAgICBwYWRkaW5nOiA2M3B4IDAgMCAwO1xuICAgICAgLnRpdGxlIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udChcbiAgICAgICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgTGlnaHRcIixcbiAgICAgICAgICAkc2l6ZTogMjRweCxcbiAgICAgICAgICAkd2VpZ2h0OiAzMDAsXG4gICAgICAgICAgJGhlaWdodDogMTUwJSxcbiAgICAgICAgICAkYWxpZ246IGxlZnQsXG4gICAgICAgICAgJGNvbG9yOiAjZGVkZWRlXG4gICAgICAgICk7XG4gICAgICAgIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogMCwgJHJpZ2h0OiAwLCAkYm90dG9tOiA4cHgsICRsZWZ0OiAwKTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuM3B4O1xuICAgICAgfVxuICAgICAgcCB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAgICAgJGZhbWlseTogXCJTYXRvc2hpIExpZ2h0XCIsXG4gICAgICAgICAgJHNpemU6IDE2cHgsXG4gICAgICAgICAgJHdlaWdodDogNDAwLFxuICAgICAgICAgICRoZWlnaHQ6IDE1MCUsXG4gICAgICAgICAgJGFsaWduOiBsZWZ0LFxuICAgICAgICAgICRjb2xvcjogI2RlZGVkZVxuICAgICAgICApO1xuICAgICAgICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDEycHgsICRyaWdodDogMCwgJGJvdHRvbTogMTJweCwgJGxlZnQ6IDApO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4ycHg7XG4gICAgICB9XG4gICAgICAuYnRuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgQWxlcnQtYm94XG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5cbi5hbGVydC1ib3gge1xuICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDQwcHgsICRyaWdodDogMCwgJGJvdHRvbTogMCwgJGxlZnQ6IDApO1xuICAuYm94IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgNTksIDU5LCAwLjQpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjM2LCAyMSwgMjEsIDAuMDUpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRhbGw6IDIwcHgpO1xuICAgIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogOTlweCwgJHJpZ2h0OiAwLCAkYm90dG9tOiA5OXB4LCAkbGVmdDogMCk7XG4gICAgLmljb24tYm94IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG4gICAgICBAaW5jbHVkZSB3aWR0aCgkd2lkdGg6IDgwcHgpO1xuICAgICAgQGluY2x1ZGUgaGVpZ2h0KCRoZWlnaHQ6IDgwcHgpO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYWxsOiAyMHB4KTtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgcmVkO1xuICAgICAgQGluY2x1ZGUgcG9zaXRpb24oJHR5cGU6IGFic29sdXRlLCAkdG9wOiAtNDFweCwgJHJpZ2h0OiAwLCAkYm90dG9tOiAwLCAkbGVmdDogMCwgJHotaW5kZXg6IDApO1xuICAgICAgLmludGVybmFsIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYm9yZGVyOiAzcHggc29saWQgIzBhMGEwYTtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYWxsOiAyMHB4KTtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyMzYsIDIxLCAyMSwgMC4yKTtcbiAgICAgICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IGNlbnRlcik7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgQGluY2x1ZGUgd2lkdGgoJHdpZHRoOiA1NnB4KTtcbiAgICAgICAgICBAaW5jbHVkZSBoZWlnaHQoJGhlaWdodDogNTZweCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnRpdGxlIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAgICRmYW1pbHk6IFwiU2F0b3NoaSBCb2xkXCIsXG4gICAgICAgICRzaXplOiA0MHB4LFxuICAgICAgICAkd2VpZ2h0OiA3MDAsXG4gICAgICAgICRoZWlnaHQ6IDExNSUsXG4gICAgICAgICRhbGlnbjogY2VudGVyLFxuICAgICAgICAkY29sb3I6ICRjb2xvci13aGl0ZVxuICAgICAgKTtcbiAgICAgIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogMCwgJHJpZ2h0OiAwLCAkYm90dG9tOiAxNnB4LCAkbGVmdDogMCk7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1mb250KCk7XG4gICAgfVxuICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICBAaW5jbHVkZSBmb250KFxuICAgICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgTGlnaHRcIixcbiAgICAgICAgJHNpemU6IDE2cHgsXG4gICAgICAgICR3ZWlnaHQ6IDQwMCxcbiAgICAgICAgJGhlaWdodDogMTUwJSxcbiAgICAgICAgJGFsaWduOiBjZW50ZXIsXG4gICAgICAgICRjb2xvcjogI2RlZGVkZVxuICAgICAgKTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjJweDtcbiAgICAgIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogMCwgJHJpZ2h0OiAwLCAkYm90dG9tOiA0MHB4LCAkbGVmdDogMCk7XG4gICAgfVxuICAgIC5idG4ge1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBAaW5jbHVkZSBmb250KFxuICAgICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgQm9sZFwiLFxuICAgICAgICAkc2l6ZTogMTZweCxcbiAgICAgICAgJHdlaWdodDogNzAwLFxuICAgICAgICAkaGVpZ2h0OiAxNTAlLFxuICAgICAgICAkYWxpZ246IGxlZnQsXG4gICAgICAgICRjb2xvcjogJGNvbG9yLWRhcmstYmx1ZVxuICAgICAgKTtcbiAgICAgIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogMjA5cHgpO1xuICAgICAgQGluY2x1ZGUgaGVpZ2h0KCRoZWlnaHQ6IDU2cHgpO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYWxsOiAxMHB4KTtcbiAgICAgIEBpbmNsdWRlIGZsZXgoJGFsaWduOiBjZW50ZXIsICRqdXN0aWZ5OiBjZW50ZXIpO1xuICAgICAgQGluY2x1ZGUgbWFyZ2luKCR0b3A6IDAsICRyaWdodDogYXV0bywgJGJvdHRvbTogMCwgJGxlZnQ6IGF1dG8pO1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsICNjZGIzNzAsICNjZGIzNzApLCBsaW5lYXItZ3JhZGllbnQoOTIuMzhkZWcsICNjZGIzNzAgMS45OSUsICNkMWFlNTIgOTkuMjYlKTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1nb2xkO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItZ29sZDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIEtleSBkaWZmZXJlbnRpYXRvcnNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuLmtleS1kaWZmZXJlbnRpYXRvcnMge1xuICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDE1NnB4LCAkcmlnaHQ6IDAsICRib3R0b206IDAsICRsZWZ0OiAwKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMyNjJhM2E7XG4gIC50aXRsZSB7XG4gICAgQGluY2x1ZGUgZm9udChcbiAgICAgICRmYW1pbHk6IFwiU2F0b3NoaSBCb2xkXCIsXG4gICAgICAkc2l6ZTogNDBweCxcbiAgICAgICR3ZWlnaHQ6IDcwMCxcbiAgICAgICRoZWlnaHQ6IDExNSUsXG4gICAgICAkYWxpZ246IGNlbnRlcixcbiAgICAgICRjb2xvcjogJGNvbG9yLXdoaXRlXG4gICAgKTtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDAsICRyaWdodDogMCwgJGJvdHRvbTogNDBweCwgJGxlZnQ6IDApO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWZvbnQoKTtcbiAgfVxuICAuZ3JpZC1saXN0LWJveCB7XG4gICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAwLCAkcmlnaHQ6IDAsICRib3R0b206IDEwM3B4LCAkbGVmdDogMCk7XG4gICAgQGluY2x1ZGUgY29sdW1ucygkcXVhbnQ6IHJlcGVhdCg1LCAxZnIpLCAkZ3V0dGVyOiAyNHB4LCAkYWxpZ246IHN0cmV0Y2gsICR0ZW1wbGF0ZTogXCJcIik7XG4gICAgLml0ZW0ge1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgzOCwgNDIsIDU4LCAwLjIpIDAlLCByZ2JhKDM4LCA0MiwgNTgsIDAuNCkgMTAwJSk7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjMjYyYTNhO1xuICAgICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAzMnB4LCAkcmlnaHQ6IDIwcHgsICRib3R0b206IDQ3cHgsICRsZWZ0OiAyMHB4KTtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGFsbDogMTBweCk7XG4gICAgICAuaWNvbi1ib3gge1xuICAgICAgICBAaW5jbHVkZSB3aWR0aCgkd2lkdGg6IDMycHgpO1xuICAgICAgICBAaW5jbHVkZSBoZWlnaHQoJGhlaWdodDogMzJweCk7XG4gICAgICAgIEBpbmNsdWRlIG1hcmdpbigkdG9wOiAwLCAkcmlnaHQ6IGF1dG8sICRib3R0b206IDAsICRsZWZ0OiBhdXRvKTtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBAaW5jbHVkZSBvYmplY3QtZml0KCRmaXQ6IGNvbnRhaW4sICRwb3NpdGlvbjogY2VudGVyIGNlbnRlcik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC50aXRsZS1ib3gge1xuICAgICAgICBAaW5jbHVkZSBmb250KFxuICAgICAgICAgICRmYW1pbHk6IFwiU2F0b3NoaSBMaWdodFwiLFxuICAgICAgICAgICRzaXplOiAxNnB4LFxuICAgICAgICAgICR3ZWlnaHQ6IDMwMCxcbiAgICAgICAgICAkaGVpZ2h0OiAxNTAlLFxuICAgICAgICAgICRhbGlnbjogY2VudGVyLFxuICAgICAgICAgICRjb2xvcjogJGNvbG9yLXdoaXRlXG4gICAgICAgICk7XG4gICAgICAgIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogMTVweCwgJHJpZ2h0OiAwLCAkYm90dG9tOiAwLCAkbGVmdDogMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIENsaWVudHNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuLmNsaWVudHMge1xuICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDEwNHB4LCAkcmlnaHQ6IDAsICRib3R0b206IDIxcHgsICRsZWZ0OiAwKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLmJveC10aXRsZSB7XG4gICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IHNwYWNlLWJldHdlZW4sICRnYXA6IDEwcHgpO1xuICAgIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogMCwgJHJpZ2h0OiA3cHgsICRib3R0b206IDU2cHgsICRsZWZ0OiAwKTtcbiAgICAudGl0bGUge1xuICAgICAgQGluY2x1ZGUgZm9udChcbiAgICAgICAgJGZhbWlseTogXCJTYXRvc2hpIEJvbGRcIixcbiAgICAgICAgJHNpemU6IDQwcHgsXG4gICAgICAgICR3ZWlnaHQ6IDcwMCxcbiAgICAgICAgJGhlaWdodDogMTE1JSxcbiAgICAgICAgJGFsaWduOiBjZW50ZXIsXG4gICAgICAgICRjb2xvcjogJGNvbG9yLXdoaXRlXG4gICAgICApO1xuICAgICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAwLCAkcmlnaHQ6IDAsICRib3R0b206IDAsICRsZWZ0OiAwKTtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWZvbnQoKTtcbiAgICB9XG4gICAgLmJveC1nb29nbGUge1xuICAgICAgQGluY2x1ZGUgd2lkdGgoJHdpZHRoOiAzNzZweCk7XG4gICAgICBAaW5jbHVkZSBoZWlnaHQoJGhlaWdodDogNjJweCk7XG4gICAgICBAaW5jbHVkZSBmbGV4KCRhbGlnbjogY2VudGVyLCAkanVzdGlmeTogY2VudGVyLCAkZ2FwOiAxMHB4KTtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGFsbDogMTBweCk7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM4LCA0MiwgNTgsIDAuMyk7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDM4LCA0MiwgNTgsIDAuMik7XG4gICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNDRweCk7XG4gICAgICAubG9nbyB7XG4gICAgICAgIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogNzRweCk7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIH1cbiAgICAgIC50ZXh0IHtcbiAgICAgICAgQGluY2x1ZGUgZm9udChcbiAgICAgICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgTGlnaHRcIixcbiAgICAgICAgICAkc2l6ZTogMTZweCxcbiAgICAgICAgICAkd2VpZ2h0OiA0MDAsXG4gICAgICAgICAgJGhlaWdodDogMTUwJSxcbiAgICAgICAgICAkYWxpZ246IGNlbnRlcixcbiAgICAgICAgICAkY29sb3I6ICRjb2xvci13aGl0ZVxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgLmRpdiB7XG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgIEBpbmNsdWRlIGhlaWdodCgkaGVpZ2h0OiAyMHB4KTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICAgICAgICBAaW5jbHVkZSBtYXJnaW4oJHRvcDogMCwgJHJpZ2h0OiA2cHgsICRib3R0b206IDAsICRsZWZ0OiA2cHgpO1xuICAgICAgfVxuICAgICAgLnJhdGUge1xuICAgICAgICBAaW5jbHVkZSBmb250KFxuICAgICAgICAgICRmYW1pbHk6IFwiU2F0b3NoaSBMaWdodFwiLFxuICAgICAgICAgICRzaXplOiAyMHB4LFxuICAgICAgICAgICR3ZWlnaHQ6IDQwMCxcbiAgICAgICAgICAkaGVpZ2h0OiAxNTAlLFxuICAgICAgICAgICRhbGlnbjogY2VudGVyLFxuICAgICAgICAgICRjb2xvcjogJGNvbG9yLXdoaXRlXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICAuc3RhcnMge1xuICAgICAgICBAaW5jbHVkZSB3aWR0aCgkd2lkdGg6IDEwMHB4KTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZ3JpZC1saXN0LWJveCB7XG4gICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAwLCAkcmlnaHQ6IDAsICRib3R0b206IDUwcHgsICRsZWZ0OiAwKTtcbiAgICBAaW5jbHVkZSBjb2x1bW5zKCRxdWFudDogcmVwZWF0KDMsIDFmciksICRndXR0ZXI6IDMycHgsICRhbGlnbjogc3RyZXRjaCwgJHRlbXBsYXRlOiBcIlwiKTtcbiAgICAuaXRlbSB7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDM4LCA0MiwgNTgsIDAuMikgMCUsIHJnYmEoMzgsIDQyLCA1OCwgMC40KSAxMDAlKTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMyNjJhM2E7XG4gICAgICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDMycHgsICRyaWdodDogMjBweCwgJGJvdHRvbTogMzFweCwgJGxlZnQ6IDIwcHgpO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYWxsOiAxMHB4KTtcbiAgICAgIC5pY29uLWJveCB7XG4gICAgICAgIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogMTAwcHgpO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgQGluY2x1ZGUgb2JqZWN0LWZpdCgkZml0OiBjb250YWluLCAkcG9zaXRpb246IGNlbnRlciBjZW50ZXIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZGVzY3JpcHRpb24tYm94IHtcbiAgICAgICAgQGluY2x1ZGUgZm9udChcbiAgICAgICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgTGlnaHRcIixcbiAgICAgICAgICAkc2l6ZTogMjBweCxcbiAgICAgICAgICAkd2VpZ2h0OiAzMDAsXG4gICAgICAgICAgJGhlaWdodDogMTUwJSxcbiAgICAgICAgICAkYWxpZ246IGxlZnQsXG4gICAgICAgICAgJGNvbG9yOiAkY29sb3Itd2hpdGVcbiAgICAgICAgKTtcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAzMnB4LCAkcmlnaHQ6IDAsICRib3R0b206IDMxcHgsICRsZWZ0OiAwKTtcbiAgICAgIH1cbiAgICAgIC5uYW1lIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udChcbiAgICAgICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgTGlnaHRcIixcbiAgICAgICAgICAkc2l6ZTogMTZweCxcbiAgICAgICAgICAkd2VpZ2h0OiAzMDAsXG4gICAgICAgICAgJGhlaWdodDogMTUwJSxcbiAgICAgICAgICAkYWxpZ246IGxlZnQsXG4gICAgICAgICAgJGNvbG9yOiAkY29sb3Itd2hpdGVcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmdyaWQtbGlzdC12aWRlbyB7XG4gICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAwLCAkcmlnaHQ6IDAsICRib3R0b206IDEwM3B4LCAkbGVmdDogMCk7XG4gICAgbWFyZ2luOiAwIC0xNnB4O1xuICAgIC5zbGljay1zbGlkZSB7XG4gICAgICBwYWRkaW5nOiAwIDE2cHg7XG4gICAgfVxuICAgIC5pdGVtIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgQGluY2x1ZGUgaGVpZ2h0KCRoZWlnaHQ6IDUwMHB4KTtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGFsbDogMTBweCk7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdmlkZW8ge1xuICAgICAgICBAaW5jbHVkZSBvYmplY3QtZml0KCRmaXQ6IGNvdmVyLCAkcG9zaXRpb246IGNlbnRlciBjZW50ZXIpO1xuICAgICAgfVxuICAgIH1cbiAgICAuc2xpY2stZG90cyB7XG4gICAgICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDE2cHgsICRyaWdodDogMCwgJGJvdHRvbTogMCwgJGxlZnQ6IDApO1xuICAgICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IGNlbnRlciwgJGdhcDogMTBweCk7XG4gICAgICBsaSB7XG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdvbGQ7XG4gICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICB9XG4gICAgICAgICYuc2xpY2stYWN0aXZlIHtcbiAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdvbGQ7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIEN0YVxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcblxyXG4uY3RhIHtcclxuICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDEyNHB4LCAkcmlnaHQ6IDAsICRib3R0b206IDE1MnB4LCAkbGVmdDogMCk7XHJcbiAgYmFja2dyb3VuZDogI2NkYjM3MDtcclxuICAudGl0bGUge1xyXG4gICAgQGluY2x1ZGUgZm9udCgkZmFtaWx5OiBcIlNhdG9zaGkgQm9sZFwiLCAkc2l6ZTogNTZweCwgJHdlaWdodDogNzAwLCAkaGVpZ2h0OiAxMTUlLCAkYWxpZ246IGNlbnRlciwgJGNvbG9yOiAjMGEwYTBhKTtcclxuICAgIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogMCwgJHJpZ2h0OiAwLCAkYm90dG9tOiA0OHB4LCAkbGVmdDogMCk7XHJcbiAgfVxyXG4gIC5ib3gge1xyXG4gICAgQGluY2x1ZGUgd2lkdGgoJHdpZHRoOiA3NzZweCk7XHJcbiAgICBAaW5jbHVkZSBoZWlnaHQoJGhlaWdodDogODhweCk7XHJcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRhbGw6IDIwcHgpO1xyXG4gICAgQGluY2x1ZGUgbWFyZ2luKCR0b3A6IDAsICRyaWdodDogYXV0bywgJGJvdHRvbTogMCwgJGxlZnQ6IGF1dG8pO1xyXG4gICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IGNlbnRlciwgJGdhcDogMzJweCk7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMDAwZTJiO1xyXG5cclxuICAgIC5pY29uLWJveCB7XHJcbiAgICAgIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogNDhweCk7XHJcbiAgICAgIEBpbmNsdWRlIGhlaWdodCgkaGVpZ2h0OiA0OHB4KTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgICBAaW5jbHVkZSBmbGV4KCRhbGlnbjogY2VudGVyLCAkanVzdGlmeTogY2VudGVyKTtcclxuICAgICAgLmljb24ge1xyXG4gICAgICAgIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogMjRweCk7XHJcbiAgICAgICAgQGluY2x1ZGUgaGVpZ2h0KCRoZWlnaHQ6IDI0cHgpO1xyXG4gICAgICAgIGZpbGw6IHRyYW5zcGFyZW50O1xyXG4gICAgICB9XHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgQGluY2x1ZGUgb2JqZWN0LWZpdCgkZml0OiBjb250YWluLCAkcG9zaXRpb246IGNlbnRlciBjZW50ZXIpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAudGV4dCB7XHJcbiAgICAgIEBpbmNsdWRlIGZvbnQoXHJcbiAgICAgICAgJGZhbWlseTogXCJTYXRvc2hpIExpZ2h0XCIsXHJcbiAgICAgICAgJHNpemU6IDE2cHgsXHJcbiAgICAgICAgJHdlaWdodDogNDAwLFxyXG4gICAgICAgICRoZWlnaHQ6IDE1MCUsXHJcbiAgICAgICAgJGFsaWduOiBsZWZ0LFxyXG4gICAgICAgICRjb2xvcjogJGNvbG9yLXdoaXRlXHJcbiAgICAgICk7XHJcbiAgICAgIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogNDE1cHgpO1xyXG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4ycHg7XHJcbiAgICB9XHJcbiAgICAuYnRuIHtcclxuICAgICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICAgIEBpbmNsdWRlIGZvbnQoXHJcbiAgICAgICAgJGZhbWlseTogXCJTYXRvc2hpIEJvbGRcIixcclxuICAgICAgICAkc2l6ZTogMTZweCxcclxuICAgICAgICAkd2VpZ2h0OiA3MDAsXHJcbiAgICAgICAgJGhlaWdodDogMTUwJSxcclxuICAgICAgICAkYWxpZ246IGxlZnQsXHJcbiAgICAgICAgJGNvbG9yOiAkY29sb3ItZGFyay1ibHVlXHJcbiAgICAgICk7XHJcbiAgICAgIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogMjEycHgpO1xyXG4gICAgICBAaW5jbHVkZSBoZWlnaHQoJGhlaWdodDogNTZweCk7XHJcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGFsbDogMTBweCk7XHJcbiAgICAgIEBpbmNsdWRlIGZsZXgoJGFsaWduOiBjZW50ZXIsICRqdXN0aWZ5OiBjZW50ZXIpO1xyXG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMGRlZywgI2NkYjM3MCwgI2NkYjM3MCksIGxpbmVhci1ncmFkaWVudCg5Mi4zOGRlZywgI2NkYjM3MCAxLjk5JSwgI2QxYWU1MiA5OS4yNiUpO1xyXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItZ29sZDtcclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1nb2xkO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgU2VydmljZVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuXG4uaGVybyB7XG4gIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogMjI2cHgsICRyaWdodDogMCwgJGJvdHRvbTogMTQwcHgsICRsZWZ0OiAwKTtcbiAgLmJyZWFkY3J1bWIge1xuICAgIEBpbmNsdWRlIGZsZXgoJGFsaWduOiBjZW50ZXIsICRqdXN0aWZ5OiBjZW50ZXIsICRnYXA6IDI0cHgpO1xuICAgIHNwYW4ge1xuICAgICAgQGluY2x1ZGUgZm9udChcbiAgICAgICAgJGZhbWlseTogXCJTYXRvc2hpIExpZ2h0XCIsXG4gICAgICAgICRzaXplOiAxNHB4LFxuICAgICAgICAkd2VpZ2h0OiA0MDAsXG4gICAgICAgICRoZWlnaHQ6IDExNSUsXG4gICAgICAgICRhbGlnbjogY2VudGVyLFxuICAgICAgICAkY29sb3I6ICRjb2xvci13aGl0ZVxuICAgICAgKTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxLjZweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuICAgIC5kaXYge1xuICAgICAgQGluY2x1ZGUgd2lkdGgoJHdpZHRoOiAxNnB4KTtcbiAgICAgIEBpbmNsdWRlIGhlaWdodCgkaGVpZ2h0OiAxNnB4KTtcbiAgICAgIC5pY29uIHtcbiAgICAgICAgQGluY2x1ZGUgd2lkdGgoJHdpZHRoOiAxNnB4KTtcbiAgICAgICAgQGluY2x1ZGUgaGVpZ2h0KCRoZWlnaHQ6IDE2cHgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAudGl0bGUge1xuICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgQm9sZFwiLFxuICAgICAgJHNpemU6IDQwcHgsXG4gICAgICAkd2VpZ2h0OiA0MDAsXG4gICAgICAkaGVpZ2h0OiAxMTUlLFxuICAgICAgJGFsaWduOiBjZW50ZXIsXG4gICAgICAkY29sb3I6ICRjb2xvci13aGl0ZVxuICAgICk7XG4gICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAyNHB4LCAkcmlnaHQ6IDAsICRib3R0b206IDI0cHgsICRsZWZ0OiAwKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1mb250KCk7XG4gIH1cbiAgLmRlc2NyaXB0aW9uIHtcbiAgICBAaW5jbHVkZSBmb250KFxuICAgICAgJGZhbWlseTogXCJTYXRvc2hpIExpZ2h0XCIsXG4gICAgICAkc2l6ZTogMThweCxcbiAgICAgICR3ZWlnaHQ6IDQwMCxcbiAgICAgICRoZWlnaHQ6IDE1MCUsXG4gICAgICAkYWxpZ246IGNlbnRlcixcbiAgICAgICRjb2xvcjogJGNvbG9yLXdoaXRlXG4gICAgKTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4ycHg7XG4gICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAwLCAkcmlnaHQ6IDAsICRib3R0b206IDgwcHgsICRsZWZ0OiAwKTtcbiAgfVxuXG4gIC5ncmlkLWxpc3QtYm94IHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDAsICRyaWdodDogMCwgJGJvdHRvbTogMTA0cHgsICRsZWZ0OiAwKTtcbiAgICBAaW5jbHVkZSBjb2x1bW5zKCRxdWFudDogcmVwZWF0KDMsIDFmciksICRndXR0ZXI6IDMycHgsICRhbGlnbjogc3RyZXRjaCwgJHRlbXBsYXRlOiBcIlwiKTtcbiAgICAuaXRlbSB7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDM4LCA0MiwgNTgsIDAuMikgMCUsIHJnYmEoMzgsIDQyLCA1OCwgMC40KSAxMDAlKTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMyNjJhM2E7XG4gICAgICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDMycHgsICRyaWdodDogNDBweCwgJGJvdHRvbTogNDdweCwgJGxlZnQ6IDQwcHgpO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYWxsOiAxMHB4KTtcbiAgICAgIC5pY29uLWJveCB7XG4gICAgICAgIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogMzJweCk7XG4gICAgICAgIEBpbmNsdWRlIGhlaWdodCgkaGVpZ2h0OiAzMnB4KTtcbiAgICAgICAgQGluY2x1ZGUgbWFyZ2luKCR0b3A6IDAsICRyaWdodDogYXV0bywgJGJvdHRvbTogMCwgJGxlZnQ6IGF1dG8pO1xuICAgICAgICBpbWcge1xuICAgICAgICAgIEBpbmNsdWRlIG9iamVjdC1maXQoJGZpdDogY29udGFpbiwgJHBvc2l0aW9uOiBjZW50ZXIgY2VudGVyKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnRpdGxlLWJveCB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAgICAgJGZhbWlseTogXCJTYXRvc2hpIExpZ2h0XCIsXG4gICAgICAgICAgJHNpemU6IDE2cHgsXG4gICAgICAgICAgJHdlaWdodDogMzAwLFxuICAgICAgICAgICRoZWlnaHQ6IDE1MCUsXG4gICAgICAgICAgJGFsaWduOiBjZW50ZXIsXG4gICAgICAgICAgJGNvbG9yOiAkY29sb3Itd2hpdGVcbiAgICAgICAgKTtcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAxNXB4LCAkcmlnaHQ6IDAsICRib3R0b206IDAsICRsZWZ0OiAwKTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zdXBwb3J0IHtcbiAgICBAaW5jbHVkZSBmb250KFxuICAgICAgJGZhbWlseTogXCJTYXRvc2hpIExpZ2h0XCIsXG4gICAgICAkc2l6ZTogMThweCxcbiAgICAgICR3ZWlnaHQ6IDQwMCxcbiAgICAgICRoZWlnaHQ6IDE1MCUsXG4gICAgICAkYWxpZ246IGNlbnRlcixcbiAgICAgICRjb2xvcjogJGNvbG9yLXdoaXRlXG4gICAgKTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4ycHg7XG4gICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAwLCAkcmlnaHQ6IDAsICRib3R0b206IDI0cHgsICRsZWZ0OiAwKTtcbiAgfVxuXG4gIC5ib3gge1xuICAgIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogNzAwcHgpO1xuICAgIEBpbmNsdWRlIGhlaWdodCgkaGVpZ2h0OiA4OHB4KTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRhbGw6IDIwcHgpO1xuICAgIEBpbmNsdWRlIG1hcmdpbigkdG9wOiAwLCAkcmlnaHQ6IGF1dG8sICRib3R0b206IDAsICRsZWZ0OiBhdXRvKTtcbiAgICBAaW5jbHVkZSBmbGV4KCRhbGlnbjogY2VudGVyLCAkanVzdGlmeTogY2VudGVyLCAkZ2FwOiAzMnB4KTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMzgsIDQyLCA1OCwgMC42KSAwJSwgcmdiYSgzOCwgNDIsIDU4LCAwKSAxMDAlKTtcbiAgICBib3JkZXI6IDFweCBzb2xpZDtcbiAgICBib3JkZXItaW1hZ2Utc291cmNlOlxuICAgICAgbGluZWFyLWdyYWRpZW50KDBkZWcsICMyNjJhM2EsICMyNjJhM2EpLFxuICAgICAgbGluZWFyLWdyYWRpZW50KFxuICAgICAgICA4OC4xM2RlZyxcbiAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSA0Ny4wMyUsXG4gICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41MDQ4MDgpIDkyLjA1JSxcbiAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSA5OS44NCVcbiAgICAgICk7XG5cbiAgICAuaWNvbi1ib3gge1xuICAgICAgQGluY2x1ZGUgd2lkdGgoJHdpZHRoOiA0OHB4KTtcbiAgICAgIEBpbmNsdWRlIGhlaWdodCgkaGVpZ2h0OiA0OHB4KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IGNlbnRlcik7XG4gICAgICAuaWNvbiB7XG4gICAgICAgIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogMjRweCk7XG4gICAgICAgIEBpbmNsdWRlIGhlaWdodCgkaGVpZ2h0OiAyNHB4KTtcbiAgICAgICAgZmlsbDogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgICBpbWcge1xuICAgICAgICBAaW5jbHVkZSBvYmplY3QtZml0KCRmaXQ6IGNvbnRhaW4sICRwb3NpdGlvbjogY2VudGVyIGNlbnRlcik7XG4gICAgICB9XG4gICAgfVxuICAgIC50ZXh0IHtcbiAgICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAgICRmYW1pbHk6IFwiU2F0b3NoaSBMaWdodFwiLFxuICAgICAgICAkc2l6ZTogMTZweCxcbiAgICAgICAgJHdlaWdodDogNDAwLFxuICAgICAgICAkaGVpZ2h0OiAxNTAlLFxuICAgICAgICAkYWxpZ246IGxlZnQsXG4gICAgICAgICRjb2xvcjogJGNvbG9yLXdoaXRlXG4gICAgICApO1xuICAgICAgQGluY2x1ZGUgd2lkdGgoJHdpZHRoOiAzMzBweCk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4ycHg7XG4gICAgfVxuICAgIC5idG4ge1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBAaW5jbHVkZSBmb250KFxuICAgICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgQm9sZFwiLFxuICAgICAgICAkc2l6ZTogMTZweCxcbiAgICAgICAgJHdlaWdodDogNzAwLFxuICAgICAgICAkaGVpZ2h0OiAxNTAlLFxuICAgICAgICAkYWxpZ246IGxlZnQsXG4gICAgICAgICRjb2xvcjogJGNvbG9yLWRhcmstYmx1ZVxuICAgICAgKTtcbiAgICAgIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogMjEycHgpO1xuICAgICAgQGluY2x1ZGUgaGVpZ2h0KCRoZWlnaHQ6IDU2cHgpO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYWxsOiAxMHB4KTtcbiAgICAgIEBpbmNsdWRlIGZsZXgoJGFsaWduOiBjZW50ZXIsICRqdXN0aWZ5OiBjZW50ZXIpO1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsICNjZGIzNzAsICNjZGIzNzApLCBsaW5lYXItZ3JhZGllbnQoOTIuMzhkZWcsICNjZGIzNzAgMS45OSUsICNkMWFlNTIgOTkuMjYlKTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1nb2xkO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItZ29sZDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5ob3ctdG8td29yayB7XG4gIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogMTE2cHgsICRyaWdodDogMCwgJGJvdHRvbTogMTIwcHgsICRsZWZ0OiAwKTtcbiAgLmdyaWQtaG93dG93b3JrIHtcbiAgICBAaW5jbHVkZSBjb2x1bW5zKCRxdWFudDogZ2V0LWNsYW1wKDU5MnB4KSBnZXQtY2xhbXAoNDg4cHgpLCAkZ3V0dGVyOiAwLCAkYWxpZ246IHN0YXJ0LCAkdGVtcGxhdGU6IFwiXCIpO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAudGV4dCB7XG4gICAgICAvL0BpbmNsdWRlIHBhZGRpbmcoJHRvcDogMjBweCwgJHJpZ2h0OiAwLCAkYm90dG9tOiAwLCAkbGVmdDogMCk7XG4gICAgICBAaW5jbHVkZSBwb3NpdGlvbigkdHlwZTogc3RpY2t5LCAkdG9wOiA0MHB4LCAkbGVmdDogMCwgJHotaW5kZXg6IDEpO1xuICAgICAgLmJveC10ZXh0IHtcbiAgICAgIH1cbiAgICAgIC50aXRsZSB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAgICAgJGZhbWlseTogXCJTYXRvc2hpIEJvbGRcIixcbiAgICAgICAgICAkc2l6ZTogNDBweCxcbiAgICAgICAgICAkd2VpZ2h0OiA0MDAsXG4gICAgICAgICAgJGhlaWdodDogMTE1JSxcbiAgICAgICAgICAkYWxpZ246IGxlZnQsXG4gICAgICAgICAgJGNvbG9yOiAkY29sb3Itd2hpdGVcbiAgICAgICAgKTtcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAyNHB4LCAkcmlnaHQ6IDAsICRib3R0b206IDI0cHgsICRsZWZ0OiAwKTtcbiAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtZm9udCgpO1xuICAgICAgfVxuICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udChcbiAgICAgICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgTGlnaHRcIixcbiAgICAgICAgICAkc2l6ZTogMTZweCxcbiAgICAgICAgICAkd2VpZ2h0OiA0MDAsXG4gICAgICAgICAgJGhlaWdodDogMTUwJSxcbiAgICAgICAgICAkYWxpZ246IGxlZnQsXG4gICAgICAgICAgJGNvbG9yOiAkY29sb3Itd2hpdGVcbiAgICAgICAgKTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMnB4O1xuICAgICAgICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDAsICRyaWdodDogMCwgJGJvdHRvbTogNjRweCwgJGxlZnQ6IDApO1xuICAgICAgfVxuICAgICAgLmJveCB7XG4gICAgICAgIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogMTAwJSk7XG4gICAgICAgIEBpbmNsdWRlIGhlaWdodCgkaGVpZ2h0OiA5NnB4KTtcbiAgICAgICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IGNlbnRlciwgJGdhcDogMTZweCk7XG4gICAgICAgIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogMCwgJHJpZ2h0OiAyMnB4LCAkYm90dG9tOiAwLCAkbGVmdDogMCk7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGFsbDogMTBweCk7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMzgsIDQyLCA1OCwgMC4yKSAwJSwgcmdiYSgzOCwgNDIsIDU4LCAwLjQpIDEwMCUpO1xuICAgICAgICAuaWNvbi1ib3gge1xuICAgICAgICAgIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogNDhweCk7XG4gICAgICAgICAgQGluY2x1ZGUgaGVpZ2h0KCRoZWlnaHQ6IDQ4cHgpO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IGNlbnRlcik7XG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgQGluY2x1ZGUgd2lkdGgoJHdpZHRoOiAyNHB4KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGhlaWdodCgkaGVpZ2h0OiAyNHB4KTtcbiAgICAgICAgICAgIGZpbGw6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgb2JqZWN0LWZpdCgkZml0OiBjb250YWluLCAkcG9zaXRpb246IGNlbnRlciBjZW50ZXIpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAudGV4dCB7XG4gICAgICAgICAgQGluY2x1ZGUgZm9udChcbiAgICAgICAgICAgICRmYW1pbHk6IFwiU2F0b3NoaSBMaWdodFwiLFxuICAgICAgICAgICAgJHNpemU6IDE2cHgsXG4gICAgICAgICAgICAkd2VpZ2h0OiA0MDAsXG4gICAgICAgICAgICAkaGVpZ2h0OiAxNTAlLFxuICAgICAgICAgICAgJGFsaWduOiBsZWZ0LFxuICAgICAgICAgICAgJGNvbG9yOiAkY29sb3Itd2hpdGVcbiAgICAgICAgICApO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjJweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuYm94cyB7XG4gICAgICAuYm94IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMjQwcHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMyNjJhM2E7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGFsbDogMTBweCk7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgoJGRpcmVjdGlvbjogY29sdW1uLCAkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IGNlbnRlciwgJGdhcDogMTZweCk7XG4gICAgICAgIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogMzJweCwgJHJpZ2h0OiAzMnB4LCAkYm90dG9tOiAzMnB4LCAkbGVmdDogMzJweCk7XG4gICAgICAgIC5pY29uLWJveCB7XG4gICAgICAgICAgQGluY2x1ZGUgd2lkdGgoJHdpZHRoOiAzMnB4KTtcbiAgICAgICAgICBAaW5jbHVkZSBoZWlnaHQoJGhlaWdodDogMzJweCk7XG4gICAgICAgICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IGNlbnRlcik7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG9iamVjdC1maXQoJGZpdDogY29udGFpbiwgJHBvc2l0aW9uOiBjZW50ZXIgY2VudGVyKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaDMge1xuICAgICAgICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAgICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgTGlnaHRcIixcbiAgICAgICAgICAgICRzaXplOiAyNHB4LFxuICAgICAgICAgICAgJHdlaWdodDogNDAwLFxuICAgICAgICAgICAgJGhlaWdodDogMTUwJSxcbiAgICAgICAgICAgICRhbGlnbjogY2VudGVyLFxuICAgICAgICAgICAgJGNvbG9yOiAkY29sb3Itd2hpdGVcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICBAaW5jbHVkZSBtYXJnaW4oJGJvdHRvbTogMTYwcHgpO1xuICAgICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKCR0eXBlOiBzdGlja3ksICR0b3A6IDQwcHgsICRsZWZ0OiAwLCAkei1pbmRleDogMSk7XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgIEBpbmNsdWRlIG1hcmdpbigkYm90dG9tOiAxMjBweCk7XG4gICAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oJHR5cGU6IHN0aWNreSwgJHRvcDogODBweCwgJGxlZnQ6IDAsICR6LWluZGV4OiAyKTtcbiAgICAgICAgfVxuICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgQGluY2x1ZGUgbWFyZ2luKCRib3R0b206IDgwcHgpO1xuICAgICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKCR0eXBlOiBzdGlja3ksICR0b3A6IDEyMHB4LCAkbGVmdDogMCwgJHotaW5kZXg6IDMpO1xuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgICBAaW5jbHVkZSBtYXJnaW4oJGJvdHRvbTogNDBweCk7XG4gICAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oJHR5cGU6IHN0aWNreSwgJHRvcDogMTYwcHgsICRsZWZ0OiAwLCAkei1pbmRleDogNCk7XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtY2hpbGQoNSkge1xuICAgICAgICAgIEBpbmNsdWRlIG1hcmdpbigkYm90dG9tOiAwKTtcbiAgICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbigkdHlwZTogc3RpY2t5LCAkdG9wOiAyMDBweCwgJGxlZnQ6IDAsICR6LWluZGV4OiA1KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ua2V5LWRpZmZlcmVudGlhdG9ycyB7XG4gIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogMTIwcHgsICRyaWdodDogMCwgJGJvdHRvbTogMCwgJGxlZnQ6IDApO1xuICAuZ3JpZC1saXN0LWJveC5xdWFudC0wMSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgfVxuICAuZ3JpZC1saXN0LWJveC5xdWFudC0wMiB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgfVxuICAuZ3JpZC1saXN0LWJveC5xdWFudC0wMyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgfVxuICAuZ3JpZC1saXN0LWJveC5xdWFudC0wNCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgfVxuICAuZ3JpZC1saXN0LWJveC5xdWFudC0wNSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNSwgMWZyKTtcbiAgfVxuICAuZ3JpZC1saXN0LWJveC5xdWFudC0wNiB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQ0FBOzt3Q0FFd0M7QUNGeEM7O3dDQUV3QztBQ1V4QyxBQUFBLGtCQUFrQixDQUFDO0VBQ2pCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE1BQU0sRUFBRSxPQUFPO0NBQ2hCOztBQUVELEFBQUEscUJBQXFCLENBQUM7RUFDcEIsS0FBSyxFQUFFLElBQUk7Q0FDWjs7QUFFRCxBQUFBLFVBQVUsQ0FBQztFQUNULE1BQU0sRUFmb0IsR0FBRyxDQWVHLEtBQUssQ0F0QlgsSUFBSTtFQXVCOUIsYUFBYSxFQWZhLEdBQUc7RUFnQjdCLFVBQVUsRUFyQmdCLE9BQU87RUFzQmpDLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLFFBQVEsRUFBRSxNQUFNO0NBNENqQjs7QUFqREQsQUFPRSxVQVBRLENBT1IsTUFBTSxDQUFDO0VBQ0wsT0FBTyxFQUFFLEtBQUs7RUFDZCxXQUFXLEVBQUUsTUFBTTtFQUNuQixRQUFRLEVBQUUsTUFBTTtFQUNoQixhQUFhLEVBQUUsUUFBUTtFQUN2QixNQUFNLEVBQUUsQ0FBQyxDQXhCZSxJQUFpRCxDQXdCdkMsQ0FBQyxDQTNCWCxJQUFJO0VBNEI1QixTQUFTLEVBeEJlLElBQUk7RUF5QjVCLFdBQVcsRUExQmEsSUFBaUQ7RUEyQnpFLEtBQUssRUFsQ21CLElBQUk7RUFtQzVCLE1BQU0sRUE1QmtCLElBQWlEO0VBNkJ6RSxXQUFXLEVBQUUsSUFBSTtDQUNsQjs7QUFsQkgsQUFvQkUsVUFwQlEsQ0FvQlIsT0FBTyxDQUFDO0VBQ04sT0FBTyxFQUFFLEtBQUs7RUFDZCxRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsQ0FBQztFQUNSLEdBQUcsRUFBRSxDQUFDO0VBQ04sS0FBSyxFQXJDbUIsSUFBaUQ7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 */

}@media screen and (max-width: 768.9px){/*======================================
  Settings
======================================*/
/*======================================
  Sass Mixins and Functions
======================================*/
.selectric-wrapper {
  position: relative;
  cursor: pointer;
}

.selectric-responsive {
  width: 100%;
}

.selectric {
  border: 1px solid #DDD;
  border-radius: 0px;
  background: #F8F8F8;
  position: relative;
  overflow: hidden;
}

.selectric .label {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin: 0 38px 0 10px;
  font-size: 12px;
  line-height: 38px;
  color: #444;
  height: 38px;
  user-select: none;
}

.selectric .button {
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  width: 38px;
  height: 38px;
  line-height: 38px;
  background-color: #F8f8f8;
  color: #BBB;
  text-align: center;
  font: 0/0 a;
  *font: 20px/38px Lucida Sans Unicode, Arial Unicode MS, Arial;
}

.selectric .button:after {
  content: " ";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 0;
  height: 0;
  border: 4px solid transparent;
  border-top-color: #BBB;
  border-bottom: none;
}

.selectric-focus .selectric {
  border-color: #aaaaaa;
}

.selectric-hover .selectric {
  border-color: #c4c4c4;
}

.selectric-hover .selectric .button {
  color: #a2a2a2;
}

.selectric-hover .selectric .button:after {
  border-top-color: #a2a2a2;
}

.selectric-open {
  z-index: 9999;
}

.selectric-open .selectric {
  border-color: #c4c4c4;
}

.selectric-open .selectric-items {
  display: block;
}

.selectric-disabled {
  filter: alpha(opacity=50);
  opacity: 0.5;
  cursor: default;
  user-select: none;
}

.selectric-hide-select {
  position: relative;
  overflow: hidden;
  width: 0;
  height: 0;
}

.selectric-hide-select select {
  position: absolute;
  left: -100%;
}

.selectric-hide-select.selectric-is-native {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 10;
}

.selectric-hide-select.selectric-is-native select {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 100%;
  width: 100%;
  border: none;
  z-index: 1;
  box-sizing: border-box;
  opacity: 0;
}

.selectric-input {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 1px !important;
  height: 1px !important;
  outline: none !important;
  border: none !important;
  *font: 0/0 a !important;
  background: none !important;
}

.selectric-temp-show {
  position: absolute !important;
  visibility: hidden !important;
  display: block !important;
}

/* Items box */
.selectric-items {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  background: #F8F8F8;
  border: 1px solid #c4c4c4;
  z-index: -1;
  box-shadow: 0 0 10px -6px;
}

.selectric-items .selectric-scroll {
  height: 100%;
  overflow: auto;
}

.selectric-above .selectric-items {
  top: auto;
  bottom: 100%;
}

.selectric-items ul, .selectric-items li {
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: 12px;
  line-height: 20px;
  min-height: 20px;
}

.selectric-items li {
  display: block;
  padding: 10px;
  color: #666;
  cursor: pointer;
}

.selectric-items li.selected {
  background: #E0E0E0;
  color: #444;
}

.selectric-items li.highlighted {
  background: #D0D0D0;
  color: #444;
}

.selectric-items li:hover {
  background: #D5D5D5;
  color: #444;
}

.selectric-items .disabled {
  filter: alpha(opacity=50);
  opacity: 0.5;
  cursor: default !important;
  background: none !important;
  color: #666 !important;
  user-select: none;
}

.selectric-items .selectric-group .selectric-group-label {
  font-weight: bold;
  padding-left: 10px;
  cursor: default;
  user-select: none;
  background: none;
  color: #444;
}

.selectric-items .selectric-group.disabled li {
  filter: alpha(opacity=100);
  opacity: 1;
}

.selectric-items .selectric-group li {
  padding-left: 25px;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/*======================================
  Global resets
======================================*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  outline: none;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

body {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/*======================================
  Global styles
======================================*/
html {
  background: #ffffff;
  box-sizing: border-box;
}

*,
*:before,
*:after {
  box-sizing: inherit;
}

html,
button,
input,
select,
textarea {
  color: #8c8c8c;
}

a {
  text-decoration: none;
  font: inherit;
  color: inherit;
}

a:hover {
  text-decoration: none;
}

button {
  cursor: pointer;
}

a:focus,
button:focus,
a:active,
button:active {
  outline: none;
}

ul,
li {
  list-style: none;
}

ol,
ul {
  padding: 0;
  margin: 0;
}

img,
iframe,
video {
  vertical-align: middle;
}

.align-left {
  text-align: left;
}

.align-right {
  text-align: right;
}

.align-center {
  text-align: center;
}

.hidden {
  display: none;
}

.hideText {
  display: block;
  text-indent: 101%;
  overflow: hidden;
  white-space: nowrap;
}

/*======================================
  Grid
======================================*/
/*@include breakpoint2($min: xl, $max: "") {
  .hidden-fullhd {
    display: none !important;
  }
  .visible-fullhd {
    display: block !important;
  }
}
@include breakpoint2($min: lg, $max: xl) {
  .hidden-fullDesktop {
    display: none !important;
  }
  .visible-fullDesktop {
    display: block !important;
  }
}
@include breakpoint2($min: md, $max: lg) {
  .hidden-desktop {
    display: none !important;
  }
  .visible-desktop {
    display: block !important;
  }
}
@include breakpoint2($min: sm, $max: md) {
  .hidden-tablet {
    display: none !important;
  }
  .visible-tablet {
    display: block !important;
  }
}
@include breakpoint2($min: xs, $max: sm) {
  .hidden-phablets {
    display: none !important;
  }
  .visible-phablets {
    display: block !important;
  }
}
@include breakpoint2($min: "", $max: xs) {
  .hidden-phone {
    display: none !important;
  }
  .visible-phone {
    display: block !important;
  }
}*/
.container {
  max-width: 1256px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}

@media (max-width: 768px) {
  .container {
    padding-left: 15px;
    padding-right: 15px;
  }
}

/*.container-full {
  @include container-full;

  @include breakpoint2($min:'', $max:sm) {
    padding-left: 15px;
    padding-right: 15px;
  }
}

@include make-default-margin(mtop,10,top);
@include make-default-padding(ptop,10,top);

@include make-default-margin(mbottom,10,bottom);
@include make-default-padding(pbottom,10,bottom);

.fl { float: left; }
.fr { float: right; }

.center-block {
  margin-left: auto;
  margin-right: auto;
  float: none;
}*/
/*======================================
  Fonts
======================================*/
/*@font-face{ font-display:swap;
  font-family: 'fonte name';
  src: url('/wp-content/themes/adv-silva-campos/assets/fonts/fonte-name.eot');
  src: url('/wp-content/themes/adv-silva-campos/assets/fonts/fonte-name.eot?#iefix') format('embedded-opentype'),
       url('/wp-content/themes/adv-silva-campos/assets/fonts/fonte-name.woff') format('woff'),
       url('/wp-content/themes/adv-silva-campos/assets/fonts/fonte-name.ttf') format('truetype'),
       url('/wp-content/themes/adv-silva-campos/assets/fonts/fonte-name.svg#fonte-name') format('svg');
  font-weight: normal;
  font-style: normal;
 }*/
/* #### Generated By: http://font.download #### */
@font-face{ font-display:swap;
  font-family: "Satoshi Regular";
  font-style: normal;
  font-weight: normal;
  src: local("Satoshi Regular"), url("/wp-content/themes/adv-silva-campos/assets/fonts/Satoshi-Regular.woff") format("woff");
 }

@font-face{ font-display:swap;
  font-family: "Satoshi Italic";
  font-style: normal;
  font-weight: normal;
  src: local("Satoshi Italic"), url("/wp-content/themes/adv-silva-campos/assets/fonts/Satoshi-Italic.woff") format("woff");
 }

@font-face{ font-display:swap;
  font-family: "Satoshi Light";
  font-style: normal;
  font-weight: normal;
  src: local("Satoshi Light"), url("/wp-content/themes/adv-silva-campos/assets/fonts/Satoshi-Light.woff") format("woff");
 }

@font-face{ font-display:swap;
  font-family: "Satoshi Light Italic";
  font-style: normal;
  font-weight: normal;
  src: local("Satoshi Light Italic"), url("/wp-content/themes/adv-silva-campos/assets/fonts/Satoshi-LightItalic.woff") format("woff");
 }

@font-face{ font-display:swap;
  font-family: "Satoshi Medium";
  font-style: normal;
  font-weight: normal;
  src: local("Satoshi Medium"), url("/wp-content/themes/adv-silva-campos/assets/fonts/Satoshi-Medium.woff") format("woff");
 }

@font-face{ font-display:swap;
  font-family: "Satoshi Medium Italic";
  font-style: normal;
  font-weight: normal;
  src: local("Satoshi Medium Italic"), url("/wp-content/themes/adv-silva-campos/assets/fonts/Satoshi-MediumItalic.woff") format("woff");
 }

@font-face{ font-display:swap;
  font-family: "Satoshi Bold";
  font-style: normal;
  font-weight: normal;
  src: local("Satoshi Bold"), url("/wp-content/themes/adv-silva-campos/assets/fonts/Satoshi-Bold.woff") format("woff");
 }

@font-face{ font-display:swap;
  font-family: "Satoshi Bold Italic";
  font-style: normal;
  font-weight: normal;
  src: local("Satoshi Bold Italic"), url("/wp-content/themes/adv-silva-campos/assets/fonts/Satoshi-BoldItalic.woff") format("woff");
 }

@font-face{ font-display:swap;
  font-family: "Satoshi Black";
  font-style: normal;
  font-weight: normal;
  src: local("Satoshi Black"), url("/wp-content/themes/adv-silva-campos/assets/fonts/Satoshi-Black.woff") format("woff");
 }

@font-face{ font-display:swap;
  font-family: "Satoshi Black Italic";
  font-style: normal;
  font-weight: normal;
  src: local("Satoshi Black Italic"), url("/wp-content/themes/adv-silva-campos/assets/fonts/Satoshi-BlackItalic.woff") format("woff");
 }

body {
  font-family: "Ubuntu", sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Montserrat", sans-serif;
  font-weight: normal;
  margin: 0;
}

p {
  margin: 0;
}

/*======================================
  Keyframes
======================================*/
@keyframes bounce {
  from {
    transform: translateY(0px);
  }
  to {
    transform: translateY(-5px);
  }
}

@keyframes moveIt {
  0%,
  100% {
    transform: translate(-50%, 0) rotate(1deg);
  }
  50% {
    transform: translate(-50%, 0) rotate(-1deg);
  }
}

@keyframes float {
  0% {
    transform: translatey(0px);
  }
  50% {
    transform: translatey(-20px);
  }
  100% {
    transform: translatey(0px);
  }
}

/*======================================
  Main structure
======================================*/
body {
  background: #0a0a0a;
}

.revealheader,
.revealicon,
.reveal,
.revealfooter,
.revealslideleft,
.revealslideright,
.revealfade {
  visibility: hidden;
}

.bg-video {
  width: 100%;
  height: clamp(1px, 225vw, 1080px);
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 0;
}

.bg-video video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

.bg-video::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 0;
  background: linear-gradient(0deg, #0a0a0a 0%, #0a0a0a 10%, rgba(10, 10, 10, 0) 100%);
}

#open-menu {
  margin-top: -0;
  display: block;
  position: relative;
  z-index: 102;
}

#open-menu .ani {
  cursor: pointer;
  display: flex;
  padding: 0;
}

#open-menu .ani .close,
#open-menu .ani #close {
  margin: 0 0 0 0;
  width: 9.11458vw;
  height: 9.11458vw;
}

#open-menu .ani .close .line,
#open-menu .ani #close .line {
  fill: none;
  stroke: #cdb370;
  stroke-width: 6;
  transition: stroke-dasharray 600ms cubic-bezier(0.4, 0, 0.2, 1), stroke-dashoffset 600ms cubic-bezier(0.4, 0, 0.2, 1);
}

#open-menu .ani .close .line1,
#open-menu .ani #close .line1 {
  stroke-dasharray: 60 207;
  stroke-width: 6;
}

#open-menu .ani .close .line2,
#open-menu .ani #close .line2 {
  stroke-dasharray: 60 60;
  stroke-width: 6;
}

#open-menu .ani .close .line3,
#open-menu .ani #close .line3 {
  stroke-dasharray: 60 207;
  stroke-width: 6;
}

#open-menu.opened .close .line1,
#open-menu.opened #close .line1 {
  stroke-dasharray: 90 207;
  stroke-dashoffset: -134;
  stroke-width: 6;
}

#open-menu.opened .close .line2,
#open-menu.opened #close .line2 {
  stroke-dasharray: 1 60;
  stroke-dashoffset: -30;
  stroke-width: 6;
}

#open-menu.opened .close .line3,
#open-menu.opened #close .line3 {
  stroke-dasharray: 90 207;
  stroke-dashoffset: -134;
  stroke-width: 6;
}

header {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 100;
}

header .grid-header {
  display: grid;
  grid-template-columns: 1fr clamp(1px, 20.83333vw, 100px) 1fr;
  gap: clamp(1px, 13.54167vw, 65px);
  align-items: end;
  grid-template-areas: "space logo menumobile";
  padding-top: clamp(1px, 3.33333vw, 16px);
  padding-right: 0;
  padding-bottom: clamp(1px, 3.33333vw, 16px);
  padding-left: 0;
}

header .grid-header .logo {
  grid-area: logo;
}

header .grid-header .logo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

header .grid-header .logo img.desktop {
  display: none;
}

header .grid-header .menu {
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 1.875vw, 9px);
  padding-left: 0;
  display: none;
}

header .grid-header .menu.left {
  grid-area: left;
}

header .grid-header .menu.left ul {
  display: flex;
  align-items: center;
  justify-content: end;
  gap: clamp(1px, 3.33333vw, 16px);
}

header .grid-header .menu.right {
  grid-area: right;
}

header .grid-header .menu.right ul {
  display: flex;
  align-items: center;
  justify-content: start;
  gap: clamp(1px, 3.33333vw, 16px);
}

header .grid-header .menu ul li a {
  padding-top: clamp(1px, 1.66667vw, 8px);
  padding-right: clamp(1px, 1.66667vw, 8px);
  padding-bottom: clamp(1px, 1.66667vw, 8px);
  padding-left: clamp(1px, 1.66667vw, 8px);
  font-family: "Satoshi Light";
  font-size: clamp(1px, 3.75vw, 18px);
  font-weight: 400;
  line-height: 120%;
  text-align: left;
  color: #ffffff;
}

header .grid-header .btn-menu-mobile {
  grid-area: menumobile;
  display: flex;
  align-items: center;
  justify-content: end;
}

nav.menu-mobile {
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: -101%;
  z-index: 1;
  padding-top: clamp(1px, 20.83333vw, 100px);
  padding-right: clamp(1px, 6.66667vw, 32px);
  padding-bottom: clamp(1px, 10vw, 48px);
  padding-left: clamp(1px, 6.66667vw, 32px);
  width: 100vw;
  height: 100%;
  background-color: #0a0a0a;
}

nav.menu-mobile .box {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: end;
  flex-direction: column;
  justify-content: end;
  gap: 0;
}

nav.menu-mobile ul {
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 18.33333vw, 88px);
  padding-left: 0;
}

nav.menu-mobile ul li {
  display: flex;
  align-items: end;
  justify-content: end;
  gap: 0;
}

nav.menu-mobile ul li a {
  font-family: "Satoshi Bold";
  font-size: clamp(1px, 5vw, 24px);
  font-weight: 400;
  line-height: 115%;
  text-align: right;
  color: #ffffff;
  padding-top: clamp(1px, 1.66667vw, 8px);
  padding-right: 0;
  padding-bottom: clamp(1px, 1.66667vw, 8px);
  padding-left: 0;
  display: inline-block;
}

nav.menu-mobile .btn {
  flex-shrink: 0;
  font-family: "Satoshi Bold";
  font-size: clamp(1px, 3.33333vw, 16px);
  font-weight: 700;
  line-height: 150%;
  text-align: left;
  color: #000e2b;
  width: 100%;
  max-width: 375px;
  height: clamp(1px, 11.66667vw, 56px);
  border-radius: clamp(1px, 2.08333vw, 10px);
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(0deg, #cdb370, #cdb370), linear-gradient(92.38deg, #cdb370 1.99%, #d1ae52 99.26%);
}

.menu-open {
  overflow: hidden;
}

.menu-open nav.menu-mobile {
  left: 0;
}

main {
  position: relative;
}

main .icon-01,
main .icon-02,
main .icon-03,
main .icon-04 {
  display: none;
}

:root {
  --gradient: conic-gradient(
    from 90deg at 50% 50%,
    rgb(251, 55, 60),
    rgba(252, 114, 28, 1),
    rgba(255, 220, 0, 1),
    rgba(27, 206, 255, 1),
    rgba(42, 107, 255, 1),
    rgba(217, 41, 255, 1),
    rgba(255, 10, 92, 1)
  );
}

.card {
  --start: 0;
  position: relative;
  transition: border-color 0.3s ease-in-out;
  border-color: transparent;
}

.card:before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  border-radius: 10px;
  border: 2px solid transparent;
  background: var(--gradient);
  background-attachment: fixed;
  mask: linear-gradient(#0000, #0000), conic-gradient(from calc((var(--start) - (20 * 1.1)) * 1deg), #ffffff1f 0deg, white, #ffffff00 100deg);
  mask-composite: intersect;
  mask-clip: padding-box, border-box;
  opacity: 0;
  transition: 0.5s ease;
}

.card:hover {
  border-color: transparent !important;
}

.card:hover:before {
  opacity: 0.6;
}

.card .glow {
  pointer-events: none;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  filter: blur(14px);
}

.card .glow:before {
  position: absolute;
  content: "";
  width: 98%;
  height: 98%;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  border-radius: 14px;
  border: 15px solid transparent;
  background: var(--gradient);
  background-attachment: fixed;
  /* mask: linear-gradient(#0000, #0000), 
      conic-gradient(
        from calc(var(--start)  * 1deg), 
        #000 0deg, 
        #ffffff, 
        rgba(0, 0, 0, 0) 60deg
        ); */
  mask: linear-gradient(#0000, #0000), conic-gradient(from calc((var(--start) - (20 * 1.1)) * 1deg), #ffffff1f 0deg, white, #ffffff00 100deg);
  mask-composite: intersect;
  mask-clip: padding-box, border-box;
  opacity: 0;
  transition: 1s ease;
}

.card:hover > .glow::before {
  opacity: 1;
}

footer {
  padding-top: clamp(1px, 20vw, 96px);
  padding-right: 0;
  padding-bottom: clamp(1px, 4.58333vw, 22px);
  padding-left: 0;
}

footer .grid-footer {
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 15.83333vw, 76px);
  padding-left: 0;
  border-bottom: 1px solid #262a3a;
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(1px, 11.66667vw, 56px);
  align-items: start;
}

footer .grid-footer .logo {
  width: clamp(1px, 36.66667vw, 176px);
  margin: 0 auto;
}

footer .grid-footer .logo a {
  display: block;
}

footer .grid-footer .logo a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

footer .grid-footer .item .title {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 3.75vw, 18px);
  font-weight: 400;
  line-height: 150%;
  text-align: left;
  color: #ffffff;
  letter-spacing: 0.2px;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 5vw, 24px);
  padding-left: 0;
}

footer .grid-footer .item ul.menu li a {
  padding-top: clamp(1px, 1.45833vw, 7px);
  padding-right: 0;
  padding-bottom: clamp(1px, 1.45833vw, 7px);
  padding-left: 0;
  font-family: "Satoshi Light";
  font-size: clamp(1px, 3.33333vw, 16px);
  font-weight: 400;
  line-height: 150%;
  text-align: left;
  color: #ffffff;
  display: block;
}

footer .grid-footer .item ul.contact {
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 5.20833vw, 25px);
  padding-left: 0;
}

footer .grid-footer .item ul.contact li a {
  display: flex;
  align-items: center;
  justify-content: start;
  gap: clamp(1px, 1.66667vw, 8px);
  padding-top: clamp(1px, 1.66667vw, 8px);
  padding-right: 0;
  padding-bottom: clamp(1px, 1.66667vw, 8px);
  padding-left: 0;
  font-family: "Satoshi Light";
  font-size: clamp(1px, 3.33333vw, 16px);
  font-weight: 400;
  line-height: 150%;
  text-align: left;
  color: #ffffff;
}

footer .grid-footer .item ul.contact li a .icon {
  width: clamp(1px, 4.16667vw, 20px);
  height: clamp(1px, 4.16667vw, 20px);
  fill: transparent;
}

footer .grid-footer .item .share {
  display: inline-flex;
  align-items: center;
  justify-content: start;
  gap: clamp(1px, 3.33333vw, 16px);
}

footer .grid-footer .item .share span {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 3.33333vw, 16px);
  font-weight: 400;
  line-height: 150%;
  text-align: left;
  color: #ffffff;
}

footer .grid-footer .item .share .icon-box {
  width: clamp(1px, 10vw, 48px);
  height: clamp(1px, 10vw, 48px);
  background-color: #262a3a;
  border-radius: clamp(1px, 2.08333vw, 10px);
  display: flex;
  align-items: center;
  justify-content: center;
}

footer .grid-footer .item .share .icon-box .icon {
  width: clamp(1px, 6.66667vw, 32px);
  height: clamp(1px, 6.66667vw, 32px);
  fill: #cdb370;
}

footer .copyright {
  display: flex;
  align-items: start;
  flex-direction: column;
  justify-content: space-between;
  gap: clamp(1px, 5vw, 24px);
  padding-top: clamp(1px, 6.66667vw, 32px);
  padding-right: 0;
  padding-bottom: clamp(1px, 6.66667vw, 32px);
  padding-left: 0;
}

footer .copyright p {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 3.33333vw, 16px);
  font-weight: 400;
  line-height: 150%;
  text-align: left;
  color: #ffffff;
}

footer .copyright p a:hover {
  color: #00b400;
}

footer .copyright p a.upsites {
  display: inline-flex;
}

footer .copyright p a.upsites span {
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
}

footer .copyright p a.upsites span:hover {
  position: relative;
  top: -2px;
}

/*======================================
  Buttons
======================================*/
.btn {
  transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  display: inline-block;
  vertical-align: middle;
  zoom: 1;
  *display: inline;
}

/*======================================
  About
======================================*/
.about {
  border-top: 1px solid #262a3a;
  border-bottom: 1px solid #262a3a;
  padding-top: clamp(1px, 16.875vw, 81px);
  padding-right: 0;
  padding-bottom: clamp(1px, 21.45833vw, 103px);
  padding-left: 0;
}

.about .grid-about {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(1px, 6.66667vw, 32px);
  align-items: start;
}

.about .grid-about .text .subtitle {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 2.91667vw, 14px);
  font-weight: 300;
  line-height: 115%;
  text-align: left;
  color: #9a9a9a;
  text-transform: uppercase;
  letter-spacing: 1.5px;
}

.about .grid-about .text .title {
  font-family: "Satoshi Bold";
  font-size: clamp(1px, 8.33333vw, 40px);
  font-weight: 700;
  line-height: 115%;
  text-align: left;
  color: #ffffff;
  padding-top: clamp(1px, 4.79167vw, 23px);
  padding-right: 0;
  padding-bottom: clamp(1px, 5.41667vw, 26px);
  padding-left: 0;
  background: radial-gradient(32.34% 59.21% at 65.99% 87.5%, #fbdf8d 0%, #c5ad63 100%);
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.about .grid-about .text .description {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 4.16667vw, 20px);
  font-weight: 400;
  line-height: 150%;
  text-align: left;
  color: #9a9a9a;
  letter-spacing: 0.2px;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 12.70833vw, 61px);
  padding-left: 0;
}

.about .grid-about .text .btn {
  display: none;
}

.about .grid-about .image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
}

.about .grid-about .full-text .title {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 5vw, 24px);
  font-weight: 300;
  line-height: 150%;
  text-align: left;
  color: #dedede;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 1.66667vw, 8px);
  padding-left: 0;
  letter-spacing: 0.3px;
}

.about .grid-about .full-text p {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 3.33333vw, 16px);
  font-weight: 400;
  line-height: 150%;
  text-align: left;
  color: #dedede;
  padding-top: clamp(1px, 2.5vw, 12px);
  padding-right: 0;
  padding-bottom: clamp(1px, 2.5vw, 12px);
  padding-left: 0;
  letter-spacing: 0.2px;
}

.about .grid-about .full-text .btn {
  margin-top: clamp(1px, 10vw, 48px);
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
  display: flex;
  align-items: center;
  justify-content: start;
  gap: clamp(1px, 3.33333vw, 16px);
}

.about .grid-about .full-text .btn .icon-box {
  width: clamp(1px, 10vw, 48px);
  height: clamp(1px, 10vw, 48px);
  background-color: rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.about .grid-about .full-text .btn .icon-box .icon {
  width: clamp(1px, 5vw, 24px);
  height: clamp(1px, 5vw, 24px);
  fill: transparent;
}

.about .grid-about .full-text .btn .icon-box img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
}

.about .grid-about .full-text .btn span {
  font-family: "Satoshi Bold";
  font-size: clamp(1px, 3.33333vw, 16px);
  font-weight: 700;
  line-height: 150%;
  text-align: left;
  color: #cdb370;
}

/*======================================
  Alert-box
======================================*/
.alert-box {
  padding-top: clamp(1px, 8.33333vw, 40px);
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
}

.alert-box .box {
  border: 1px solid rgba(255, 59, 59, 0.4);
  background: rgba(236, 21, 21, 0.05);
  width: 100%;
  position: relative;
  border-radius: clamp(1px, 4.16667vw, 20px);
  padding-top: clamp(1px, 20.625vw, 99px);
  padding-right: clamp(1px, 3.33333vw, 16px);
  padding-bottom: clamp(1px, 20.625vw, 99px);
  padding-left: clamp(1px, 3.33333vw, 16px);
}

.alert-box .box .icon-box {
  background-color: #0a0a0a;
  width: clamp(1px, 16.66667vw, 80px);
  height: clamp(1px, 16.66667vw, 80px);
  border-radius: clamp(1px, 4.16667vw, 20px);
  margin: 0 auto;
  border: 1px solid red;
  position: absolute;
  top: -41px;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 0;
}

@media (max-width: 768px) {
  .alert-box .box .icon-box {
    top: -8.54167vw;
  }
}

.alert-box .box .icon-box .internal {
  width: 100%;
  height: 100%;
  border: 3px solid #0a0a0a;
  border-radius: clamp(1px, 4.16667vw, 20px);
  background: rgba(236, 21, 21, 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
}

.alert-box .box .icon-box .internal img {
  width: clamp(1px, 11.66667vw, 56px);
  height: clamp(1px, 11.66667vw, 56px);
}

.alert-box .box .title {
  font-family: "Satoshi Bold";
  font-size: clamp(1px, 8.33333vw, 40px);
  font-weight: 700;
  line-height: 115%;
  text-align: center;
  color: #ffffff;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 3.33333vw, 16px);
  padding-left: 0;
  background: radial-gradient(32.34% 59.21% at 65.99% 87.5%, #fbdf8d 0%, #c5ad63 100%);
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.alert-box .box .description {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 3.33333vw, 16px);
  font-weight: 400;
  line-height: 150%;
  text-align: center;
  color: #dedede;
  letter-spacing: 0.2px;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 8.33333vw, 40px);
  padding-left: 0;
}

.alert-box .box .description br {
  display: none;
}

.alert-box .box .btn {
  flex-shrink: 0;
  font-family: "Satoshi Bold";
  font-size: clamp(1px, 3.33333vw, 16px);
  font-weight: 700;
  line-height: 150%;
  text-align: left;
  color: #000e2b;
  width: clamp(1px, 43.54167vw, 209px);
  height: clamp(1px, 11.66667vw, 56px);
  border-radius: clamp(1px, 2.08333vw, 10px);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 0;
  margin-right: auto;
  margin-bottom: 0;
  margin-left: auto;
  background: linear-gradient(0deg, #cdb370, #cdb370), linear-gradient(92.38deg, #cdb370 1.99%, #d1ae52 99.26%);
}

/*======================================
  Key differentiators
======================================*/
.key-differentiators {
  padding-top: clamp(1px, 32.5vw, 156px);
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  border-bottom: 1px solid #262a3a;
}

.key-differentiators .title {
  font-family: "Satoshi Bold";
  font-size: clamp(1px, 8.33333vw, 40px);
  font-weight: 700;
  line-height: 115%;
  text-align: center;
  color: #ffffff;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 8.33333vw, 40px);
  padding-left: 0;
  background: radial-gradient(32.34% 59.21% at 65.99% 87.5%, #fbdf8d 0%, #c5ad63 100%);
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.key-differentiators .grid-list-box {
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 21.45833vw, 103px);
  padding-left: 0;
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(1px, 5vw, 24px);
  align-items: stretch;
}

.key-differentiators .grid-list-box .item {
  background: linear-gradient(180deg, rgba(38, 42, 58, 0.2) 0%, rgba(38, 42, 58, 0.4) 100%);
  border: 1px solid #262a3a;
  padding-top: clamp(1px, 6.66667vw, 32px);
  padding-right: clamp(1px, 4.16667vw, 20px);
  padding-bottom: clamp(1px, 9.79167vw, 47px);
  padding-left: clamp(1px, 4.16667vw, 20px);
  border-radius: clamp(1px, 2.08333vw, 10px);
}

.key-differentiators .grid-list-box .item .icon-box {
  width: clamp(1px, 6.66667vw, 32px);
  height: clamp(1px, 6.66667vw, 32px);
  margin-top: 0;
  margin-right: auto;
  margin-bottom: 0;
  margin-left: auto;
}

.key-differentiators .grid-list-box .item .icon-box img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
}

.key-differentiators .grid-list-box .item .title-box {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 3.33333vw, 16px);
  font-weight: 300;
  line-height: 150%;
  text-align: center;
  color: #ffffff;
  padding-top: clamp(1px, 3.125vw, 15px);
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
}

.key-differentiators .grid-list-box .item .title-box br {
  display: none;
}

/*======================================
  Clients
======================================*/
.clients {
  padding-top: clamp(1px, 21.66667vw, 104px);
  padding-right: 0;
  padding-bottom: clamp(1px, 4.375vw, 21px);
  padding-left: 0;
  overflow: hidden;
}

.clients .box-title {
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: space-between;
  gap: clamp(1px, 5vw, 24px);
  padding-top: 0;
  padding-right: clamp(1px, 1.45833vw, 7px);
  padding-bottom: clamp(1px, 11.66667vw, 56px);
  padding-left: 0;
}

.clients .box-title .title {
  font-family: "Satoshi Bold";
  font-size: clamp(1px, 6.66667vw, 32px);
  font-weight: 700;
  line-height: 115%;
  text-align: center;
  color: #ffffff;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  background: radial-gradient(32.34% 59.21% at 65.99% 87.5%, #fbdf8d 0%, #c5ad63 100%);
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.clients .box-title .box-google {
  width: clamp(1px, 78.33333vw, 376px);
  height: clamp(1px, 12.91667vw, 62px);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1px, 2.08333vw, 10px);
  border-radius: clamp(1px, 2.08333vw, 10px);
  border: 1px solid rgba(38, 42, 58, 0.3);
  background: rgba(38, 42, 58, 0.2);
  backdrop-filter: blur(44px);
}

.clients .box-title .box-google .logo {
  width: clamp(1px, 15.41667vw, 74px);
  height: auto;
}

.clients .box-title .box-google .text {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 3.33333vw, 16px);
  font-weight: 400;
  line-height: 150%;
  text-align: center;
  color: #ffffff;
}

.clients .box-title .box-google .div {
  width: 1px;
  height: clamp(1px, 4.16667vw, 20px);
  background-color: rgba(255, 255, 255, 0.2);
  margin-top: 0;
  margin-right: clamp(1px, 1.25vw, 6px);
  margin-bottom: 0;
  margin-left: clamp(1px, 1.25vw, 6px);
}

.clients .box-title .box-google .rate {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 4.16667vw, 20px);
  font-weight: 400;
  line-height: 150%;
  text-align: center;
  color: #ffffff;
}

.clients .box-title .box-google .stars {
  width: clamp(1px, 20.83333vw, 100px);
  height: auto;
}

.clients .grid-list-box {
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 21.45833vw, 103px);
  padding-left: 0;
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(1px, 6.66667vw, 32px);
  align-items: stretch;
}

.clients .grid-list-box .item {
  background: linear-gradient(180deg, rgba(38, 42, 58, 0.2) 0%, rgba(38, 42, 58, 0.4) 100%);
  border: 1px solid #262a3a;
  padding-top: clamp(1px, 6.66667vw, 32px);
  padding-right: clamp(1px, 4.16667vw, 20px);
  padding-bottom: clamp(1px, 6.45833vw, 31px);
  padding-left: clamp(1px, 4.16667vw, 20px);
  border-radius: clamp(1px, 2.08333vw, 10px);
}

.clients .grid-list-box .item .icon-box {
  width: clamp(1px, 20.83333vw, 100px);
  height: auto;
}

.clients .grid-list-box .item .icon-box img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
}

.clients .grid-list-box .item .description-box {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 4.16667vw, 20px);
  font-weight: 300;
  line-height: 150%;
  text-align: left;
  color: #ffffff;
  padding-top: clamp(1px, 6.66667vw, 32px);
  padding-right: 0;
  padding-bottom: clamp(1px, 6.45833vw, 31px);
  padding-left: 0;
}

.clients .grid-list-box .item .name {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 3.33333vw, 16px);
  font-weight: 300;
  line-height: 150%;
  text-align: left;
  color: #ffffff;
}

.clients .grid-list-video {
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 21.45833vw, 103px);
  padding-left: 0;
  margin: 0 -16px;
}

.clients .grid-list-video .slick-slide {
  padding: 0 16px;
}

.clients .grid-list-video .item {
  width: 100%;
  height: clamp(1px, 135.41667vw, 650px);
  border-radius: clamp(1px, 2.08333vw, 10px);
  overflow: hidden;
}

.clients .grid-list-video .item video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

.clients .grid-list-video .slick-dots {
  padding-top: clamp(1px, 3.33333vw, 16px);
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1px, 2.08333vw, 10px);
}

.clients .grid-list-video .slick-dots li button {
  font-size: 0;
  padding: 0;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: none;
  background-color: #cdb370;
  opacity: 0.5;
}

.clients .grid-list-video .slick-dots li.slick-active button {
  background-color: #cdb370;
  opacity: 1;
}

/*======================================
  Cta
======================================*/
.cta {
  padding-top: clamp(1px, 25.83333vw, 124px);
  padding-right: 0;
  padding-bottom: clamp(1px, 31.66667vw, 152px);
  padding-left: 0;
  background: #cdb370;
}

.cta .title {
  font-family: "Satoshi Bold";
  font-size: clamp(1px, 8.33333vw, 40px);
  font-weight: 700;
  line-height: 115%;
  text-align: center;
  color: #0a0a0a;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 10vw, 48px);
  padding-left: 0;
}

.cta .box {
  width: 100%;
  height: auto;
  border-radius: clamp(1px, 4.16667vw, 20px);
  margin-top: 0;
  margin-right: auto;
  margin-bottom: 0;
  margin-left: auto;
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  gap: clamp(1px, 5vw, 24px);
  padding-top: clamp(1px, 3.33333vw, 16px);
  padding-right: clamp(1px, 3.33333vw, 16px);
  padding-bottom: clamp(1px, 3.33333vw, 16px);
  padding-left: clamp(1px, 3.33333vw, 16px);
  background: #000e2b;
}

.cta .box .icon-box {
  display: none;
}

.cta .box .text {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 3.33333vw, 16px);
  font-weight: 400;
  line-height: 150%;
  text-align: center;
  color: #ffffff;
  width: clamp(1px, 86.45833vw, 415px);
  letter-spacing: 0.2px;
}

.cta .box .text b,
.cta .box .text strong {
  font-weight: 700;
  font-family: "Satoshi Bold";
}

.cta .box .btn {
  flex-shrink: 0;
  font-family: "Satoshi Bold";
  font-size: clamp(1px, 3.33333vw, 16px);
  font-weight: 700;
  line-height: 150%;
  text-align: left;
  color: #000e2b;
  width: 100%;
  height: clamp(1px, 11.66667vw, 56px);
  border-radius: clamp(1px, 2.08333vw, 10px);
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(0deg, #cdb370, #cdb370), linear-gradient(92.38deg, #cdb370 1.99%, #d1ae52 99.26%);
}

/*======================================
  Service
======================================*/
.hero {
  padding-top: clamp(1px, 31.25vw, 150px);
  padding-right: 0;
  padding-bottom: clamp(1px, 29.16667vw, 140px);
  padding-left: 0;
}

.hero .breadcrumb {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1px, 5vw, 24px);
}

.hero .breadcrumb span {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 2.91667vw, 14px);
  font-weight: 400;
  line-height: 115%;
  text-align: center;
  color: #ffffff;
  letter-spacing: 1.6px;
  text-transform: uppercase;
}

.hero .breadcrumb .div {
  width: clamp(1px, 3.33333vw, 16px);
  height: clamp(1px, 3.33333vw, 16px);
}

.hero .breadcrumb .div .icon {
  width: clamp(1px, 3.33333vw, 16px);
  height: clamp(1px, 3.33333vw, 16px);
}

.hero .title {
  font-family: "Satoshi Bold";
  font-size: clamp(1px, 6.66667vw, 32px);
  font-weight: 400;
  line-height: 115%;
  text-align: center;
  color: #ffffff;
  padding-top: clamp(1px, 5vw, 24px);
  padding-right: 0;
  padding-bottom: clamp(1px, 5vw, 24px);
  padding-left: 0;
  background: radial-gradient(32.34% 59.21% at 65.99% 87.5%, #fbdf8d 0%, #c5ad63 100%);
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.hero .title br {
  display: none;
}

.hero .description {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 3.75vw, 18px);
  font-weight: 400;
  line-height: 150%;
  text-align: center;
  color: #ffffff;
  letter-spacing: 0.2px;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 16.66667vw, 80px);
  padding-left: 0;
}

.hero .grid-list-box {
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 21.66667vw, 104px);
  padding-left: 0;
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(1px, 6.66667vw, 32px);
  align-items: stretch;
}

.hero .grid-list-box .item {
  background: linear-gradient(180deg, rgba(38, 42, 58, 0.2) 0%, rgba(38, 42, 58, 0.4) 100%);
  border: 1px solid #262a3a;
  padding-top: clamp(1px, 6.66667vw, 32px);
  padding-right: clamp(1px, 8.33333vw, 40px);
  padding-bottom: clamp(1px, 9.79167vw, 47px);
  padding-left: clamp(1px, 8.33333vw, 40px);
  border-radius: clamp(1px, 2.08333vw, 10px);
}

.hero .grid-list-box .item .icon-box {
  width: clamp(1px, 6.66667vw, 32px);
  height: clamp(1px, 6.66667vw, 32px);
  margin-top: 0;
  margin-right: auto;
  margin-bottom: 0;
  margin-left: auto;
}

.hero .grid-list-box .item .icon-box img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
}

.hero .grid-list-box .item .title-box {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 3.33333vw, 16px);
  font-weight: 300;
  line-height: 150%;
  text-align: center;
  color: #ffffff;
  padding-top: clamp(1px, 3.125vw, 15px);
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  letter-spacing: 0.2px;
}

.hero .support {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 3.75vw, 18px);
  font-weight: 400;
  line-height: 150%;
  text-align: center;
  color: #ffffff;
  letter-spacing: 0.2px;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 5vw, 24px);
  padding-left: 0;
}

.hero .support br {
  display: none;
}

.hero .box {
  width: 100%;
  height: auto;
  border-radius: clamp(1px, 4.16667vw, 20px);
  margin-top: 0;
  margin-right: auto;
  margin-bottom: 0;
  margin-left: auto;
  display: flex;
  align-items: start;
  flex-direction: column;
  justify-content: center;
  gap: clamp(1px, 3.33333vw, 16px);
  padding-top: clamp(1px, 3.33333vw, 16px);
  padding-right: clamp(1px, 3.33333vw, 16px);
  padding-bottom: clamp(1px, 3.33333vw, 16px);
  padding-left: clamp(1px, 3.33333vw, 16px);
  background: linear-gradient(90deg, rgba(38, 42, 58, 0.6) 0%, rgba(38, 42, 58, 0) 100%);
  border: 1px solid;
  border-image-source: linear-gradient(0deg, #262a3a, #262a3a), linear-gradient(88.13deg, rgba(255, 255, 255, 0) 47.03%, rgba(255, 255, 255, 0.504808) 92.05%, rgba(255, 255, 255, 0) 99.84%);
}

.hero .box .icon-box {
  display: none;
}

.hero .box .text {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 3.33333vw, 16px);
  font-weight: 400;
  line-height: 150%;
  text-align: left;
  color: #ffffff;
  width: clamp(1px, 68.75vw, 330px);
  letter-spacing: 0.2px;
}

.hero .box .btn {
  flex-shrink: 0;
  font-family: "Satoshi Bold";
  font-size: clamp(1px, 3.33333vw, 16px);
  font-weight: 700;
  line-height: 150%;
  text-align: left;
  color: #000e2b;
  width: 100%;
  height: clamp(1px, 11.66667vw, 56px);
  border-radius: clamp(1px, 2.08333vw, 10px);
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(0deg, #cdb370, #cdb370), linear-gradient(92.38deg, #cdb370 1.99%, #d1ae52 99.26%);
}

.how-to-work {
  padding-top: clamp(1px, 24.16667vw, 116px);
  padding-right: 0;
  padding-bottom: clamp(1px, 25vw, 120px);
  padding-left: 0;
}

.how-to-work .grid-howtowork {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(1px, 13.33333vw, 64px);
  align-items: start;
  justify-content: space-between;
}

.how-to-work .grid-howtowork .text .title {
  font-family: "Satoshi Bold";
  font-size: clamp(1px, 8.33333vw, 40px);
  font-weight: 400;
  line-height: 115%;
  text-align: left;
  color: #ffffff;
  padding-top: clamp(1px, 5vw, 24px);
  padding-right: 0;
  padding-bottom: clamp(1px, 5vw, 24px);
  padding-left: 0;
  background: radial-gradient(32.34% 59.21% at 65.99% 87.5%, #fbdf8d 0%, #c5ad63 100%);
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.how-to-work .grid-howtowork .text .description {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 3.33333vw, 16px);
  font-weight: 400;
  line-height: 150%;
  text-align: left;
  color: #ffffff;
  letter-spacing: 0.2px;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: clamp(1px, 13.33333vw, 64px);
  padding-left: 0;
}

.how-to-work .grid-howtowork .text .description br {
  display: none;
}

.how-to-work .grid-howtowork .text .box {
  width: 100%;
  height: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1px, 3.33333vw, 16px);
  padding-top: clamp(1px, 3.33333vw, 16px);
  padding-right: clamp(1px, 3.33333vw, 16px);
  padding-bottom: clamp(1px, 3.33333vw, 16px);
  padding-left: clamp(1px, 3.33333vw, 16px);
  border-radius: clamp(1px, 2.08333vw, 10px);
  background: linear-gradient(180deg, rgba(38, 42, 58, 0.2) 0%, rgba(38, 42, 58, 0.4) 100%);
}

.how-to-work .grid-howtowork .text .box .icon-box {
  display: none;
}

.how-to-work .grid-howtowork .text .box .text {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 3.33333vw, 16px);
  font-weight: 400;
  line-height: 150%;
  text-align: left;
  color: #ffffff;
  letter-spacing: 0.2px;
}

.how-to-work .grid-howtowork .text .box .text br {
  display: none;
}

.how-to-work .grid-howtowork .boxs {
  position: relative;
}

.how-to-work .grid-howtowork .boxs .box {
  width: 100%;
  height: 240px;
  border: 1px solid #262a3a;
  background-color: #0a0a0a;
  border-radius: clamp(1px, 2.08333vw, 10px);
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  gap: clamp(1px, 3.33333vw, 16px);
  padding-top: clamp(1px, 6.66667vw, 32px);
  padding-right: clamp(1px, 6.66667vw, 32px);
  padding-bottom: clamp(1px, 6.66667vw, 32px);
  padding-left: clamp(1px, 6.66667vw, 32px);
}

.how-to-work .grid-howtowork .boxs .box .icon-box {
  width: clamp(1px, 6.66667vw, 32px);
  height: clamp(1px, 6.66667vw, 32px);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
}

.how-to-work .grid-howtowork .boxs .box .icon-box img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
}

.how-to-work .grid-howtowork .boxs .box h3 {
  font-family: "Satoshi Light";
  font-size: clamp(1px, 5vw, 24px);
  font-weight: 400;
  line-height: 150%;
  text-align: center;
  color: #ffffff;
}

.how-to-work .grid-howtowork .boxs .box:nth-child(1) {
  margin-bottom: clamp(1px, 33.33333vw, 160px);
  position: sticky;
  top: clamp(1px, 8.33333vw, 40px);
  left: 0;
  z-index: 1;
}

.how-to-work .grid-howtowork .boxs .box:nth-child(2) {
  margin-bottom: clamp(1px, 25vw, 120px);
  position: sticky;
  top: clamp(1px, 16.66667vw, 80px);
  left: 0;
  z-index: 2;
}

.how-to-work .grid-howtowork .boxs .box:nth-child(3) {
  margin-bottom: clamp(1px, 16.66667vw, 80px);
  position: sticky;
  top: clamp(1px, 25vw, 120px);
  left: 0;
  z-index: 3;
}

.how-to-work .grid-howtowork .boxs .box:nth-child(4) {
  margin-bottom: clamp(1px, 8.33333vw, 40px);
  position: sticky;
  top: clamp(1px, 33.33333vw, 160px);
  left: 0;
  z-index: 4;
}

.how-to-work .grid-howtowork .boxs .box:nth-child(5) {
  margin-bottom: 0;
  position: sticky;
  top: clamp(1px, 41.66667vw, 200px);
  left: 0;
  z-index: 5;
}

.key-differentiators {
  padding-top: clamp(1px, 25vw, 120px);
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
}

.key-differentiators .grid-list-box {
  grid-template-columns: repeat(1, 1fr);
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1tb2JpbGUuY3NzIiwic291cmNlcyI6WyJzZXJ2aWNlLW1vYmlsZS5zY3NzIiwiY29yZS9fc2V0dGluZ3Muc2NzcyIsImNvcmUvbW9iaWxlL191dGlscy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL3NlbGVjdHJpYy9zcmMvc2VsZWN0cmljLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvc2xpY2stY2Fyb3VzZWwvc2xpY2svc2xpY2suc2NzcyIsImNvcmUvX2dsb2JhbC5zY3NzIiwiY29yZS9fZ3JpZC5zY3NzIiwiY29yZS9fZm9udHMuc2NzcyIsImNvcmUvX2tleWZyYW1lcy5zY3NzIiwiY29yZS9tb2JpbGUvX3N0cnVjdHVyZS5zY3NzIiwibW9kdWxlcy9tb2JpbGUvX2J1dHRvbnMuc2NzcyIsIm1vZHVsZXMvbW9iaWxlL19hYm91dC5zY3NzIiwibW9kdWxlcy9tb2JpbGUvX2FsZXJ0LWJveC5zY3NzIiwibW9kdWxlcy9tb2JpbGUvX2tleS1kaWZmZXJlbnRpYXRvcnMuc2NzcyIsIm1vZHVsZXMvbW9iaWxlL19jbGllbnRzLnNjc3MiLCJtb2R1bGVzL21vYmlsZS9fY3RhLnNjc3MiLCJwYWdlcy9tb2JpbGUvX3NlcnZpY2Uuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb25maWdcbkBpbXBvcnQgXCJjb3JlL3NldHRpbmdzXCI7XG5AaW1wb3J0IFwiY29yZS9tb2JpbGUvdXRpbHNcIjtcblxuLy8gVmVuZG9yXG5AaW1wb3J0IFwic2VsZWN0cmljL3NyYy9zZWxlY3RyaWMuc2Nzc1wiO1xuQGltcG9ydCBcInNsaWNrLWNhcm91c2VsL3NsaWNrL3NsaWNrLnNjc3NcIjtcblxuLy8gRGVmYXVsdHNcbkBpbXBvcnQgXCJjb3JlL2dsb2JhbFwiO1xuQGltcG9ydCBcImNvcmUvZ3JpZFwiO1xuQGltcG9ydCBcImNvcmUvZm9udHNcIjtcbkBpbXBvcnQgXCJjb3JlL2tleWZyYW1lc1wiO1xuXG4vLyBTdHJ1Y3R1cmFsXG5AaW1wb3J0IFwiY29yZS9tb2JpbGUvc3RydWN0dXJlXCI7XG5cbi8vIE1vZHVsZXNcbkBpbXBvcnQgXCJtb2R1bGVzL21vYmlsZS9idXR0b25zXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9tb2JpbGUvYWJvdXRcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL21vYmlsZS9hbGVydC1ib3hcIjtcbkBpbXBvcnQgXCJtb2R1bGVzL21vYmlsZS9rZXktZGlmZmVyZW50aWF0b3JzXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9tb2JpbGUvY2xpZW50c1wiO1xuQGltcG9ydCBcIm1vZHVsZXMvbW9iaWxlL2N0YVwiO1xuXG4vLyBQYWdlc1xuQGltcG9ydCBcInBhZ2VzL21vYmlsZS9zZXJ2aWNlXCI7XG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIFNldHRpbmdzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5cbi8vIEdyaWRcbiRncmlkLWNvbnRhaW5lcjogMTI1NnB4O1xuJGdyaWQtZ3V0dGVyOiA0MHB4O1xuXG4vLyBNZWRpYSBxdWVyeSBicmVha3BvaW50c1xuJGJyZWFrcG9pbnRzOiAoXG4gIHhzOiA0ODBweCxcbiAgc206IDc2OHB4LFxuICBtZDogOTk0cHgsXG4gIGxnOiAxMjU2cHgsXG4gIHhsOiAxNDQwcHhcbik7XG5cbi8vIEZvbnRzXG4kZm9udC1tYWluOiBcIlVidW50dVwiLCBzYW5zLXNlcmlmO1xuJGZvbnQtYWx0OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiRmb250LWF3ZXNvbWU6IFwiRm9udEF3ZXNvbWVcIjtcbiRmb250LXNpemU6IDE2cHg7XG4kZm9udC1jb2xvcjogIzhjOGM4YztcblxuLy8gQ29sb3JzXG4kY29sb3ItYmxhY2s6ICMwMDAwMDA7XG4kY29sb3Itd2hpdGU6ICNmZmZmZmY7XG4kY29sb3ItZ3JheTogI2I1YjViNTtcbiRjb2xvci1kYXJrLWdyYXk6ICMzMzMzMzM7XG4kY29sb3ItZGFyay1ibHVlOiAjMDAwZTJiO1xuJGNvbG9yLWdvbGQ6ICNjZGIzNzA7XG5cbiRjb2xvci1hcXVhOiAjN2ZkYmZmO1xuJGNvbG9yLWJsdWU6ICMwMGEwYzg7XG4kY29sb3ItZnVjaHNpYTogI2YwMTJiZTtcbiRjb2xvci1ncmVlbjogIzAwYjQwMDtcbiRjb2xvci1saW1lOiAjMDFmZjcwO1xuJGNvbG9yLW1hcm9vbjogIzg1MTQ0YjtcbiRjb2xvci1uYXZ5OiAjMDAxZjNmO1xuJGNvbG9yLW9saXZlOiAjM2Q5OTcwO1xuJGNvbG9yLW9yYW5nZTogI2ZmNTQxZDtcbiRjb2xvci1wdXJwbGU6ICMyZjE5MmU7XG4kY29sb3ItcmVkOiAjZmUwMDAwO1xuJGNvbG9yLXNpbHZlcjogI2RkZGRkZDtcbiRjb2xvci10ZWFsOiAjMzljY2NjO1xuJGNvbG9yLXllbGxvdzogI2ZmYzgwMTtcblxuJGNvbG9yLWVycm9yOiAkY29sb3ItcmVkO1xuJGNvbG9yLXN1Y2Nlc3M6ICRjb2xvci1ncmVlbjtcbiRjb2xvci1iYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGU7XG5cbi8vIE1hZ25pZmljIFBvcHVwXG4kbWZwLWlmcmFtZS1tYXgtd2lkdGg6IDEyODBweDtcbiRtZnAtaW5jbHVkZS1hcnJvd3M6IGZhbHNlO1xuIiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIFNhc3MgTWl4aW5zIGFuZCBGdW5jdGlvbnNcclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG5cclxuLy8gQ2FsY3VsYXRlIGVtIGZyb20gZm9udC1zaXplXHJcbkBmdW5jdGlvbiBlbSgkcGl4ZWxzLCAkY29udGV4dDogJGZvbnQtc2l6ZSkge1xyXG4gIEBpZiAodW5pdGxlc3MoJHBpeGVscykpIHtcclxuICAgICRwaXhlbHM6ICRwaXhlbHMgKiAxcHg7XHJcbiAgfVxyXG4gIEBpZiAodW5pdGxlc3MoJGNvbnRleHQpKSB7XHJcbiAgICAkY29udGV4dDogJGNvbnRleHQgKiAxcHg7XHJcbiAgfVxyXG4gIEByZXR1cm4gKCRwaXhlbHMgLyAkY29udGV4dCkgKiAxZW07XHJcbn1cclxuXHJcbi8vIENhbGN1bGF0ZSAlIGZyb20gYSB2YWx1ZVxyXG5AZnVuY3Rpb24gY2FsYy1wZXJjZW50KCR0YXJnZXQsICRjb250YWluZXIpIHtcclxuICBAcmV0dXJuICgkdGFyZ2V0IC8gJGNvbnRhaW5lcikgKiAxMDAlO1xyXG59XHJcblxyXG4vLyBTaG9ydGN1dCBmb3IgY2FsYy1wZXJjZW50KClcclxuQGZ1bmN0aW9uIGNwKCR0YXJnZXQsICRjb250YWluZXIpIHtcclxuICBAcmV0dXJuIGNhbGMtcGVyY2VudCgkdGFyZ2V0LCAkY29udGFpbmVyKTtcclxufVxyXG5cclxuLy8gQ2FsY3VsYXRlIHZ3IGZyb20gYSB2YWx1ZVxyXG5AZnVuY3Rpb24gZ2V0LXZ3LXhzKCR0YXJnZXQpIHtcclxuICAkYnJlYWs6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCB4cykgLyAxcHg7XHJcbiAgJHZ3LWNvbnRleHQ6ICgkYnJlYWsgKiAwLjAxKSAqIDFweDtcclxuICBAcmV0dXJuICgkdGFyZ2V0IC8gJHZ3LWNvbnRleHQpICogMXZ3O1xyXG59XHJcblxyXG4vLyBDYWxjdWxhdGUgdncgZnJvbSBhIHZhbHVlXHJcbkBmdW5jdGlvbiBnZXQtdnctc20oJHRhcmdldCkge1xyXG4gICRicmVhazogbWFwLWdldCgkYnJlYWtwb2ludHMsIHNtKSAvIDFweDtcclxuICAkdnctY29udGV4dDogKCRicmVhayAqIDAuMDEpICogMXB4O1xyXG4gIEByZXR1cm4gKCR0YXJnZXQgLyAkdnctY29udGV4dCkgKiAxdnc7XHJcbn1cclxuXHJcbi8vIENhbGN1bGF0ZSB2dyBmcm9tIGEgdmFsdWVcclxuQGZ1bmN0aW9uIGdldC12dy1tZCgkdGFyZ2V0KSB7XHJcbiAgJGJyZWFrOiBtYXAtZ2V0KCRicmVha3BvaW50cywgbWQpIC8gMXB4O1xyXG4gICR2dy1jb250ZXh0OiAoJGJyZWFrICogMC4wMSkgKiAxcHg7XHJcbiAgQHJldHVybiAoJHRhcmdldCAvICR2dy1jb250ZXh0KSAqIDF2dztcclxufVxyXG5cclxuLy8gQ2FsY3VsYXRlIHZ3IGZyb20gYSB2YWx1ZVxyXG5AZnVuY3Rpb24gZ2V0LXZ3LWxnKCR0YXJnZXQpIHtcclxuICAkYnJlYWs6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCBsZykgLyAxcHg7XHJcbiAgJHZ3LWNvbnRleHQ6ICgkYnJlYWsgKiAwLjAxKSAqIDFweDtcclxuICBAcmV0dXJuICgkdGFyZ2V0IC8gJHZ3LWNvbnRleHQpICogMXZ3O1xyXG59XHJcblxyXG4vLyBDYWxjdWxhdGUgdncgZnJvbSBhIHZhbHVlXHJcbkBmdW5jdGlvbiBnZXQtdncteGwoJHRhcmdldCkge1xyXG4gICRicmVhazogbWFwLWdldCgkYnJlYWtwb2ludHMsIHhsKSAvIDFweDtcclxuICAkdnctY29udGV4dDogKCRicmVhayAqIDAuMDEpICogMXB4O1xyXG4gIEByZXR1cm4gKCR0YXJnZXQgLyAkdnctY29udGV4dCkgKiAxdnc7XHJcbn1cclxuXHJcbi8vIEZ1bmN0aW9uIHRvIHJlbW92ZSB1bml0IGZyb20gbnVtYmVyXHJcbkBmdW5jdGlvbiBzdHJpcC11bml0cygkbnVtYmVyKSB7XHJcbiAgQHJldHVybiAkbnVtYmVyIC8gKCRudW1iZXIgKiAwICsgMSk7XHJcbn1cclxuXHJcbi8vIENhbGN1bGF0ZSB2dyBmcm9tIGEgdmFsdWVcclxuQGZ1bmN0aW9uIGdldC12dygkYnJlYWtwb2ludCwgJGluZGV4KSB7XHJcbiAgJGJyZWFrOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGJyZWFrcG9pbnQpIC8gMXB4O1xyXG4gICR2dy1jb250ZXh0OiAoJGJyZWFrICogMC4wMSkgKiAxO1xyXG4gICRudW1iOiAkaW5kZXggKiA1O1xyXG4gIEByZXR1cm4gKCRudW1iLyR2dy1jb250ZXh0KSAqIDE7XHJcbn1cclxuXHJcbi8vIE1peGluIGZvciBhIGNvbG9yIHdpdGggb3BhY2l0eVxyXG5AbWl4aW4gY29yKCRjb2xvciwgJG9wYWNpdHk6IDAuMykge1xyXG4gIGJhY2tncm91bmQ6ICRjb2xvcjtcclxuICAvKiBUaGUgRmFsbGJhY2sgKi9cclxuICBiYWNrZ3JvdW5kOiByZ2JhKCRjb2xvciwgJG9wYWNpdHkpO1xyXG59XHJcblxyXG4vLyBNaXhpbiBmb3IgYSBncmFkaWVudCBmb250XHJcbkBtaXhpbiBncmFkaWVudC1mb250KCRncmFkaWVudDogcmFkaWFsLWdyYWRpZW50KDMyLjM0JSA1OS4yMSUgYXQgNjUuOTklIDg3LjUlLCAjZmJkZjhkIDAlLCAjYzVhZDYzIDEwMCUpKSB7XHJcbiAgYmFja2dyb3VuZDogJGdyYWRpZW50O1xyXG4gIGJhY2tncm91bmQtY2xpcDogdGV4dDtcclxuICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuXHJcbi8vIENhbGN1bGF0ZSBjbGFtcCBmcm9tIGEgdmFsdWVcclxuQGZ1bmN0aW9uIGdldC1jbGFtcCgkdGFyZ2V0KSB7XHJcbiAgQHJldHVybiBjbGFtcCgxcHgsIGdldC12dy14cygkdGFyZ2V0KSwgJHRhcmdldCk7XHJcbn1cclxuXHJcbi8vIENhbGN1bGF0ZSB2dyBmcm9tIGEgdmFsdWVcclxuQGZ1bmN0aW9uIGdldC12dy1jYWxjKCRicmVha3BvaW50LCAkaW5kZXgsICR0eXBlLCAkdGFyZ2V0KSB7XHJcbiAgJGJyZWFrOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGJyZWFrcG9pbnQpIC8gMXB4O1xyXG4gICR2dy1jb250ZXh0OiAoJGJyZWFrICogMC4wMSkgKiAxcHg7XHJcbiAgJHZhbDogKCR0YXJnZXQgLyAkdnctY29udGV4dCkgKiAxdnc7XHJcbiAgQHJldHVybiBjYWxjKCN7JGluZGV4fSAjeyR0eXBlfSAjeyR2YWx9KTtcclxufVxyXG5cclxuLy8gTWl4aW4gZm9yIG9iamVjdC1maXRcclxuQG1peGluIG9iamVjdC1maXQoJGZpdDogY292ZXIsICRwb3NpdGlvbjogY2VudGVyIGNlbnRlcikge1xyXG4gIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogMTAwJSk7XHJcbiAgQGluY2x1ZGUgaGVpZ2h0KCRoZWlnaHQ6IDEwMCUpO1xyXG4gIG9iamVjdC1maXQ6ICRmaXQ7XHJcbiAgb2JqZWN0LXBvc2l0aW9uOiAkcG9zaXRpb247XHJcbn1cclxuXHJcbi8vIE1peGluIGZvciBjcm9zcy1icm93c2VyIGlubGluZS1ibG9ja1xyXG5AbWl4aW4gaW5saW5lLWJsb2NrKCRhbGlnbjogXCJ0b3BcIikge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB2ZXJ0aWNhbC1hbGlnbjogI3skYWxpZ259O1xyXG4gIHpvb206IDE7XHJcbiAgKmRpc3BsYXk6IGlubGluZTtcclxufVxyXG5cclxuLy8gTWl4aW4gZm9yIEZvbnRBd2Vzb21lIGljb25zXHJcbkBtaXhpbiBmb250LWF3ZXNvbWUoJGNvbnRlbnQ6IFwiXFxmMTA3XCIsICRzaXplOiAxNnB4KSB7XHJcbiAgY29udGVudDogXCIjeyRjb250ZW50fVwiO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCBjbGFtcCgxcHgsIGdldC12dy14cygkc2l6ZSksICRzaXplKSAvIDEgRm9udEF3ZXNvbWU7XHJcbiAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XHJcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxufVxyXG5cclxuLy8gTWl4aW4gZm9yIGZsZXhib3hcclxuQG1peGluIGZsZXgoJHR5cGU6IFwiXCIsICRkaXJlY3Rpb246IFwiXCIsICRhbGlnbjogXCJjZW50ZXJcIiwgJGp1c3RpZnk6IFwiXCIsICRnYXA6IFwiXCIpIHtcclxuICBAaWYgKCR0eXBlIT0gXCJcIikge1xyXG4gICAgZGlzcGxheTogJHR5cGUgKyBcIi1mbGV4XCI7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gIH1cclxuICBhbGlnbi1pdGVtczogJGFsaWduO1xyXG4gIEBpZiAoJGRpcmVjdGlvbiE9IFwiXCIpIHtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xyXG4gIH1cclxuICBAaWYgKCRqdXN0aWZ5IT0gXCJcIikge1xyXG4gICAganVzdGlmeS1jb250ZW50OiAkanVzdGlmeTtcclxuICB9XHJcbiAgQGlmICgkZ2FwIT0gXCJcIikge1xyXG4gICAgQGlmIChzdHItaW5kZXgoI3skZ2FwfSwgXCJweFwiKSkge1xyXG4gICAgICBAaWYgKCRnYXAgPiAwKSB7XHJcbiAgICAgICAgZ2FwOiBjbGFtcCgxcHgsIGdldC12dy14cygkZ2FwKSwgJGdhcCk7XHJcbiAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgIGdhcDogJGdhcDtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50MigkbWluOiBcIlwiLCAkbWF4OiBzbSkge1xyXG4gICAgICAgICAgZ2FwOiBnZXQtdncteHMoJGdhcCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgZ2FwOiAkZ2FwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gTWl4aW4gZm9yIGZvbnRcclxuQG1peGluIGZvbnQoJGZhbWlseTogJGZvbnQtbWFpbiwgJHNpemU6ICRmb250LXNpemUsICR3ZWlnaHQ6IDQwMCwgJGhlaWdodDogMTIwJSwgJGFsaWduOiBsZWZ0LCAkY29sb3I6ICRjb2xvci1ibGFjaykge1xyXG4gIGZvbnQtZmFtaWx5OiAkZmFtaWx5O1xyXG4gIEBpZiAoc3RyLWluZGV4KCN7JHNpemV9LCBcInB4XCIpKSB7XHJcbiAgICBAaWYgKCRzaXplID4gMCkge1xyXG4gICAgICBmb250LXNpemU6IGNsYW1wKDFweCwgZ2V0LXZ3LXhzKCRzaXplKSwgJHNpemUpO1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogZ2V0LXZ3LXhzKCRzaXplKTtcclxuICAgIH1cclxuICB9IEBlbHNlIHtcclxuICAgIGZvbnQtc2l6ZTogJHNpemU7XHJcbiAgfVxyXG4gIGZvbnQtd2VpZ2h0OiAkd2VpZ2h0O1xyXG4gIEBpZiAoc3RyLWluZGV4KCN7JGhlaWdodH0sIFwicHhcIikpIHtcclxuICAgIEBpZiAoJGhlaWdodCA+IDApIHtcclxuICAgICAgbGluZS1oZWlnaHQ6IGNsYW1wKDFweCwgZ2V0LXZ3LXhzKCRoZWlnaHQpLCAkaGVpZ2h0KTtcclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICBsaW5lLWhlaWdodDogJGhlaWdodDtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludDIoJG1pbjogXCJcIiwgJG1heDogc20pIHtcclxuICAgICAgICBsaW5lLWhlaWdodDogZ2V0LXZ3LXhzKCRoZWlnaHQpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBsaW5lLWhlaWdodDogJGhlaWdodDtcclxuICB9XHJcbiAgdGV4dC1hbGlnbjogJGFsaWduO1xyXG4gIGNvbG9yOiAkY29sb3I7XHJcbn1cclxuXHJcbi8vIE1peGluIGZvciBwYWRkaW5nXHJcbkBtaXhpbiBwYWRkaW5nKCR0b3A6IFwiXCIsICRyaWdodDogXCJcIiwgJGJvdHRvbTogXCJcIiwgJGxlZnQ6IFwiXCIsICRhbGw6IFwiXCIpIHtcclxuICBAaWYgKCRhbGwhPSBcIlwiKSB7XHJcbiAgICBAaWYgKHN0ci1pbmRleCgjeyRhbGx9LCBcInB4XCIpKSB7XHJcbiAgICAgIEBpZiAoJGFsbCA+IDApIHtcclxuICAgICAgICBtYXJnaW46IGNsYW1wKDFweCwgZ2V0LXZ3LXhzKCRhbGwpLCAkYWxsKTtcclxuICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgbWFyZ2luOiBjbGFtcCgtMTAwMHB4LCBnZXQtdncteHMoJGFsbCksICRhbGwpO1xyXG4gICAgICB9XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgbWFyZ2luOiAkYWxsO1xyXG4gICAgfVxyXG4gIH0gQGVsc2Uge1xyXG4gICAgQGlmICgkdG9wIT0gXCJcIikge1xyXG4gICAgICBAaWYgKHN0ci1pbmRleCgjeyR0b3B9LCBcInB4XCIpKSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IGNsYW1wKDFweCwgZ2V0LXZ3LXhzKCR0b3ApLCAkdG9wKTtcclxuICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6ICR0b3A7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIEBpZiAoJHJpZ2h0IT0gXCJcIikge1xyXG4gICAgICBAaWYgKHN0ci1pbmRleCgjeyRyaWdodH0sIFwicHhcIikpIHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiBjbGFtcCgxcHgsIGdldC12dy14cygkcmlnaHQpLCAkcmlnaHQpO1xyXG4gICAgICB9IEBlbHNlIHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkcmlnaHQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIEBpZiAoJGJvdHRvbSE9IFwiXCIpIHtcclxuICAgICAgQGlmIChzdHItaW5kZXgoI3skYm90dG9tfSwgXCJweFwiKSkge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiBjbGFtcCgxcHgsIGdldC12dy14cygkYm90dG9tKSwgJGJvdHRvbSk7XHJcbiAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkYm90dG9tO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAaWYgKCRsZWZ0IT0gXCJcIikge1xyXG4gICAgICBAaWYgKHN0ci1pbmRleCgjeyRsZWZ0fSwgXCJweFwiKSkge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogY2xhbXAoMXB4LCBnZXQtdncteHMoJGxlZnQpLCAkbGVmdCk7XHJcbiAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogJGxlZnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIE1peGluIGZvciBtYXJnaW5cclxuQG1peGluIG1hcmdpbigkdG9wOiBcIlwiLCAkcmlnaHQ6IFwiXCIsICRib3R0b206IFwiXCIsICRsZWZ0OiBcIlwiLCAkYWxsOiBcIlwiKSB7XHJcbiAgQGlmICgkYWxsIT0gXCJcIikge1xyXG4gICAgQGlmIChzdHItaW5kZXgoI3skYWxsfSwgXCJweFwiKSkge1xyXG4gICAgICBAaWYgKCRhbGwgPiAwKSB7XHJcbiAgICAgICAgbWFyZ2luOiBjbGFtcCgxcHgsIGdldC12dy14cygkYWxsKSwgJGFsbCk7XHJcbiAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgIG1hcmdpbjogJGFsbDtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50MigkbWluOiBcIlwiLCAkbWF4OiBzbSkge1xyXG4gICAgICAgICAgbWFyZ2luOiBnZXQtdncteHMoJGFsbCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgbWFyZ2luOiAkYWxsO1xyXG4gICAgfVxyXG4gIH0gQGVsc2Uge1xyXG4gICAgQGlmICgkdG9wIT0gXCJcIikge1xyXG4gICAgICBAaWYgKHN0ci1pbmRleCgjeyR0b3B9LCBcInB4XCIpKSB7XHJcbiAgICAgICAgQGlmICgkdG9wID4gMCkge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogY2xhbXAoMXB4LCBnZXQtdncteHMoJHRvcCksICR0b3ApO1xyXG4gICAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogJHRvcDtcclxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IFwiXCIsICRtYXg6IHNtKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGdldC12dy14cygkdG9wKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgIG1hcmdpbi10b3A6ICR0b3A7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIEBpZiAoJHJpZ2h0IT0gXCJcIikge1xyXG4gICAgICBAaWYgKHN0ci1pbmRleCgjeyRyaWdodH0sIFwicHhcIikpIHtcclxuICAgICAgICBAaWYgKCRyaWdodCA+IDApIHtcclxuICAgICAgICAgIG1hcmdpbi1yaWdodDogY2xhbXAoMXB4LCBnZXQtdncteHMoJHJpZ2h0KSwgJHJpZ2h0KTtcclxuICAgICAgICB9IEBlbHNlIHtcclxuICAgICAgICAgIG1hcmdpbi1yaWdodDogJHJpZ2h0O1xyXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludDIoJG1pbjogXCJcIiwgJG1heDogc20pIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBnZXQtdncteHMoJHJpZ2h0KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogJHJpZ2h0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAaWYgKCRib3R0b20hPSBcIlwiKSB7XHJcbiAgICAgIEBpZiAoc3RyLWluZGV4KCN7JGJvdHRvbX0sIFwicHhcIikpIHtcclxuICAgICAgICBAaWYgKCRib3R0b20gPiAwKSB7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjbGFtcCgxcHgsIGdldC12dy14cygkYm90dG9tKSwgJGJvdHRvbSk7XHJcbiAgICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkYm90dG9tO1xyXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludDIoJG1pbjogXCJcIiwgJG1heDogc20pIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogZ2V0LXZ3LXhzKCRib3R0b20pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGJvdHRvbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGlmICgkbGVmdCE9IFwiXCIpIHtcclxuICAgICAgQGlmIChzdHItaW5kZXgoI3skbGVmdH0sIFwicHhcIikpIHtcclxuICAgICAgICBAaWYgKCRsZWZ0ID4gMCkge1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IGNsYW1wKDFweCwgZ2V0LXZ3LXhzKCRsZWZ0KSwgJGxlZnQpO1xyXG4gICAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6ICRsZWZ0O1xyXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludDIoJG1pbjogXCJcIiwgJG1heDogc20pIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGdldC12dy14cygkbGVmdCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9IEBlbHNlIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogJGxlZnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIE1peGluIGZvciBib3JkZXItcmFkaXVzXHJcbkBtaXhpbiBib3JkZXItcmFkaXVzKCRhbGw6IDApIHtcclxuICBAaWYgKCRhbGwhPSAwKSB7XHJcbiAgICBAaWYgKHN0ci1pbmRleCgjeyRhbGx9LCBcInB4XCIpKSB7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IGNsYW1wKDFweCwgZ2V0LXZ3LXhzKCRhbGwpLCAkYWxsKTtcclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAkYWxsO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gTWl4aW4gZm9yIHBvc2l0aW9uXHJcbkBtaXhpbiBwb3NpdGlvbigkdHlwZTogcmVsYXRpdmUsICR0b3A6IFwiXCIsICRyaWdodDogXCJcIiwgJGJvdHRvbTogXCJcIiwgJGxlZnQ6IFwiXCIsICR6LWluZGV4OiBcIlwiKSB7XHJcbiAgcG9zaXRpb246ICR0eXBlO1xyXG4gIEBpZiAoJHRvcCE9IFwiXCIpIHtcclxuICAgIEBpZiAoc3RyLWluZGV4KCN7JHRvcH0sIFwicHhcIikpIHtcclxuICAgICAgQGlmICgkdG9wID4gMCkge1xyXG4gICAgICAgIHRvcDogY2xhbXAoMXB4LCBnZXQtdncteHMoJHRvcCksICR0b3ApO1xyXG4gICAgICB9IEBlbHNlIHtcclxuICAgICAgICB0b3A6ICR0b3A7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludDIoJG1pbjogXCJcIiwgJG1heDogc20pIHtcclxuICAgICAgICAgIHRvcDogZ2V0LXZ3LXhzKCR0b3ApO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgIHRvcDogJHRvcDtcclxuICAgIH1cclxuICB9XHJcbiAgQGlmICgkcmlnaHQhPSBcIlwiKSB7XHJcbiAgICBAaWYgKHN0ci1pbmRleCgjeyRyaWdodH0sIFwicHhcIikpIHtcclxuICAgICAgQGlmICgkcmlnaHQgPiAwKSB7XHJcbiAgICAgICAgcmlnaHQ6IGNsYW1wKDFweCwgZ2V0LXZ3LXhzKCRyaWdodCksICRyaWdodCk7XHJcbiAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgIHJpZ2h0OiAkcmlnaHQ7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludDIoJG1pbjogXCJcIiwgJG1heDogc20pIHtcclxuICAgICAgICAgIHJpZ2h0OiBnZXQtdncteHMoJHJpZ2h0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICByaWdodDogJHJpZ2h0O1xyXG4gICAgfVxyXG4gIH1cclxuICBAaWYgKCRib3R0b20hPSBcIlwiKSB7XHJcbiAgICBAaWYgKHN0ci1pbmRleCgjeyRib3R0b219LCBcInB4XCIpKSB7XHJcbiAgICAgIEBpZiAoJGJvdHRvbSA+IDApIHtcclxuICAgICAgICBib3R0b206IGNsYW1wKDFweCwgZ2V0LXZ3LXhzKCRib3R0b20pLCAkYm90dG9tKTtcclxuICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgYm90dG9tOiAkYm90dG9tO1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IFwiXCIsICRtYXg6IHNtKSB7XHJcbiAgICAgICAgICBib3R0b206IGdldC12dy14cygkYm90dG9tKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICBib3R0b206ICRib3R0b207XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpZiAoJGxlZnQhPSBcIlwiKSB7XHJcbiAgICBAaWYgKHN0ci1pbmRleCgjeyRsZWZ0fSwgXCJweFwiKSkge1xyXG4gICAgICBAaWYgKCRsZWZ0ID4gMCkge1xyXG4gICAgICAgIGxlZnQ6IGNsYW1wKDFweCwgZ2V0LXZ3LXhzKCRsZWZ0KSwgJGxlZnQpO1xyXG4gICAgICB9IEBlbHNlIHtcclxuICAgICAgICBsZWZ0OiAkbGVmdDtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50MigkbWluOiBcIlwiLCAkbWF4OiBzbSkge1xyXG4gICAgICAgICAgbGVmdDogZ2V0LXZ3LXhzKCRsZWZ0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICBsZWZ0OiAkbGVmdDtcclxuICAgIH1cclxuICB9XHJcbiAgQGlmICgkei1pbmRleCE9IFwiXCIpIHtcclxuICAgIHotaW5kZXg6ICR6LWluZGV4O1xyXG4gIH1cclxufVxyXG5cclxuLy8gTWl4aW4gZm9yIHdpZHRoXHJcbkBtaXhpbiB3aWR0aCgkd2lkdGg6IDApIHtcclxuICBAaWYgKHN0ci1pbmRleCgjeyR3aWR0aH0sIFwicHhcIikpIHtcclxuICAgIHdpZHRoOiBjbGFtcCgxcHgsIGdldC12dy14cygkd2lkdGgpLCAkd2lkdGgpO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgd2lkdGg6ICR3aWR0aDtcclxuICB9XHJcbn1cclxuXHJcbi8vIE1peGluIGZvciBoZWlnaHRcclxuQG1peGluIGhlaWdodCgkaGVpZ2h0OiAwKSB7XHJcbiAgQGlmIChzdHItaW5kZXgoI3skaGVpZ2h0fSwgXCJweFwiKSkge1xyXG4gICAgaGVpZ2h0OiBjbGFtcCgxcHgsIGdldC12dy14cygkaGVpZ2h0KSwgJGhlaWdodCk7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBoZWlnaHQ6ICRoZWlnaHQ7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBNaXhpbiB0byBjcmVhdGUgYSBncmlkXHJcbkBtaXhpbiBjb2x1bW5zKCRxdWFudDogcmVwZWF0KDEyLCAxZnIpLCAkZ3V0dGVyOiAyMCwgJGFsaWduOiB0b3AsICR0ZW1wbGF0ZTogXCJcIikge1xyXG4gIGRpc3BsYXk6IGdyaWQ7XHJcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAkcXVhbnQ7XHJcbiAgQGlmIChzdHItaW5kZXgoI3skZ3V0dGVyfSwgXCJweFwiKSkge1xyXG4gICAgZ2FwOiBjbGFtcCgxcHgsIGdldC12dy14cygkZ3V0dGVyKSwgJGd1dHRlcik7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBnYXA6ICRndXR0ZXI7XHJcbiAgfVxyXG4gIGFsaWduLWl0ZW1zOiAkYWxpZ247XHJcbiAgQGlmICgkdGVtcGxhdGUhPSBcIlwiKSB7XHJcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiAkdGVtcGxhdGU7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBNaXhpbiB0byBjcmVhdGUgYSBncmlkIGNvbnRhaW5lclxyXG5AbWl4aW4gY29udGFpbmVyIHtcclxuICBtYXgtd2lkdGg6ICRncmlkLWNvbnRhaW5lcjtcclxuICBtYXJnaW4tbGVmdDogYXV0bztcclxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgcGFkZGluZy1sZWZ0OiAoJGdyaWQtZ3V0dGVyIC8gMik7XHJcbiAgcGFkZGluZy1yaWdodDogKCRncmlkLWd1dHRlciAvIDIpO1xyXG59XHJcblxyXG4vLyBNaXhpbiB0byBjcmVhdGUgYSBncmlkIGNvbnRhaW5lclxyXG5AbWl4aW4gY29udGFpbmVyLWZ1bGwge1xyXG4gIG1heC13aWR0aDogMTgzNHB4O1xyXG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gIG1hcmdpbi1yaWdodDogYXV0bztcclxuICBwYWRkaW5nLWxlZnQ6ICgkZ3JpZC1ndXR0ZXIgLyAyKTtcclxuICBwYWRkaW5nLXJpZ2h0OiAoJGdyaWQtZ3V0dGVyIC8gMik7XHJcbn1cclxuXHJcbi8vIGFuaW1hdGVcclxuQG1peGluIGFuaW1hdGUoJHRpbWU6IDAuNXMsICRlYXNlOiBlYXNlLCAkZGVsYXk6IDBzKSB7XHJcbiAgdHJhbnNpdGlvbjogYWxsICR0aW1lICRlYXNlICRkZWxheTtcclxuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAkdGltZSAkZWFzZSAkZGVsYXk7XHJcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgJHRpbWUgJGVhc2UgJGRlbGF5O1xyXG59XHJcblxyXG4vLyBNaXhpbiBmb3IgbWVkaWEgcXVlcmllc1xyXG5AbWl4aW4gYnJlYWtwb2ludDIoJG1pbjogXCJcIiwgJG1heDogXCJcIikge1xyXG4gIEBpZiAobWFwLWdldCgkYnJlYWtwb2ludHMsICRtaW4pIGFuZCBtYXAtZ2V0KCRicmVha3BvaW50cywgJG1heCkpIHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG1pbikgKyAxcHgpIGFuZCAobWF4LXdpZHRoOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG1heCkpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSBpZiAkbWluPT0gXCJcIiB7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRtYXgpKSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH0gQGVsc2UgaWYgJG1heD09IFwiXCIge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbWluKSkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9IEBlbHNlIHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWluKSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gTWl4aW4gdG8gY3JlYXRlIGEgZGVmYXVsdCBtYXJnaW5cclxuQG1peGluIG1ha2UtZGVmYXVsdC1tYXJnaW4oJHByZWZpeDogXCJtdG9wXCIsICRsaW1pdDogMTAsICRkaXJlY3Rpb246IFwidG9wXCIpIHtcclxuICBAZm9yICRpbmRleCBmcm9tIDEgdGhyb3VnaCAkbGltaXQge1xyXG4gICAgLiN7JHByZWZpeH0tI3skaW5kZXggKiA1fSB7XHJcbiAgICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAjeyRpbmRleCAqIDV9cHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IGxnLCAkbWF4OiB4bCkge1xyXG4gICAgQGZvciAkaW5kZXggZnJvbSAxIHRocm91Z2ggJGxpbWl0IHtcclxuICAgICAgJHI6IGdldC12dyh4bCwgJGluZGV4KTtcclxuICAgICAgLiN7JHByZWZpeH0tI3skaW5kZXggKiA1fSB7XHJcbiAgICAgICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06ICN7JHJ9dnc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludDIoJG1pbjogbWQsICRtYXg6IGxnKSB7XHJcbiAgICBAZm9yICRpbmRleCBmcm9tIDEgdGhyb3VnaCAkbGltaXQge1xyXG4gICAgICAkcjogZ2V0LXZ3KGxnLCAkaW5kZXgpO1xyXG4gICAgICAuI3skcHJlZml4fS0jeyRpbmRleCAqIDV9IHtcclxuICAgICAgICBtYXJnaW4tI3skZGlyZWN0aW9ufTogI3skcn12dztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50MigkbWluOiBzbSwgJG1heDogbWQpIHtcclxuICAgIEBmb3IgJGluZGV4IGZyb20gMSB0aHJvdWdoICRsaW1pdCB7XHJcbiAgICAgICRyOiBnZXQtdncobWQsICRpbmRleCk7XHJcbiAgICAgIC4jeyRwcmVmaXh9LSN7JGluZGV4ICogNX0ge1xyXG4gICAgICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAjeyRyfXZ3O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IHhzLCAkbWF4OiBzbSkge1xyXG4gICAgQGZvciAkaW5kZXggZnJvbSAxIHRocm91Z2ggJGxpbWl0IHtcclxuICAgICAgJHI6IGdldC12dyhzbSwgJGluZGV4KTtcclxuICAgICAgLiN7JHByZWZpeH0tI3skaW5kZXggKiA1fSB7XHJcbiAgICAgICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06ICN7JHJ9dnc7XHJcbiAgICAgIH1cclxuICAgICAgLm1vYmlsZS0jeyRwcmVmaXh9LSN7JGluZGV4ICogNX0ge1xyXG4gICAgICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAjeyRyfXZ3O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IFwiXCIsICRtYXg6IHhzKSB7XHJcbiAgICBAZm9yICRpbmRleCBmcm9tIDEgdGhyb3VnaCAkbGltaXQge1xyXG4gICAgICAkcjogZ2V0LXZ3KHhzLCAkaW5kZXgpO1xyXG4gICAgICAuI3skcHJlZml4fS0jeyRpbmRleCAqIDV9IHtcclxuICAgICAgICBtYXJnaW4tI3skZGlyZWN0aW9ufTogI3skcn12dztcclxuICAgICAgfVxyXG4gICAgICAubW9iaWxlLSN7JHByZWZpeH0tI3skaW5kZXggKiA1fSB7XHJcbiAgICAgICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06ICN7JHJ9dnc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIE1peGluIHRvIGNyZWF0ZSBhIGRlZmF1bHQgcGFkZGluZ1xyXG5AbWl4aW4gbWFrZS1kZWZhdWx0LXBhZGRpbmcoJHByZWZpeDogXCJtdG9wXCIsICRsaW1pdDogMTAsICRkaXJlY3Rpb246IFwidG9wXCIpIHtcclxuICBAZm9yICRpbmRleCBmcm9tIDEgdGhyb3VnaCAkbGltaXQge1xyXG4gICAgLiN7JHByZWZpeH0tI3skaW5kZXggKiA1fSB7XHJcbiAgICAgIHBhZGRpbmctI3skZGlyZWN0aW9ufTogI3skaW5kZXggKiA1fXB4O1xyXG4gICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50MigkbWluOiBsZywgJG1heDogeGwpIHtcclxuICAgIEBmb3IgJGluZGV4IGZyb20gMSB0aHJvdWdoICRsaW1pdCB7XHJcbiAgICAgICRyOiBnZXQtdncoeGwsICRpbmRleCk7XHJcbiAgICAgIC4jeyRwcmVmaXh9LSN7JGluZGV4ICogNX0ge1xyXG4gICAgICAgIHBhZGRpbmctI3skZGlyZWN0aW9ufTogI3skcn12dztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50MigkbWluOiBtZCwgJG1heDogbGcpIHtcclxuICAgIEBmb3IgJGluZGV4IGZyb20gMSB0aHJvdWdoICRsaW1pdCB7XHJcbiAgICAgICRyOiBnZXQtdncobGcsICRpbmRleCk7XHJcbiAgICAgIC4jeyRwcmVmaXh9LSN7JGluZGV4ICogNX0ge1xyXG4gICAgICAgIHBhZGRpbmctI3skZGlyZWN0aW9ufTogI3skcn12dztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50MigkbWluOiBzbSwgJG1heDogbWQpIHtcclxuICAgIEBmb3IgJGluZGV4IGZyb20gMSB0aHJvdWdoICRsaW1pdCB7XHJcbiAgICAgICRyOiBnZXQtdncobWQsICRpbmRleCk7XHJcbiAgICAgIC4jeyRwcmVmaXh9LSN7JGluZGV4ICogNX0ge1xyXG4gICAgICAgIHBhZGRpbmctI3skZGlyZWN0aW9ufTogI3skcn12dztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50MigkbWluOiB4cywgJG1heDogc20pIHtcclxuICAgIEBmb3IgJGluZGV4IGZyb20gMSB0aHJvdWdoICRsaW1pdCB7XHJcbiAgICAgICRyOiBnZXQtdncoc20sICRpbmRleCk7XHJcbiAgICAgIC4jeyRwcmVmaXh9LSN7JGluZGV4ICogNX0ge1xyXG4gICAgICAgIHBhZGRpbmctI3skZGlyZWN0aW9ufTogI3skcn12dztcclxuICAgICAgfVxyXG4gICAgICAubW9iaWxlLSN7JHByZWZpeH0tI3skaW5kZXggKiA1fSB7XHJcbiAgICAgICAgcGFkZGluZy0jeyRkaXJlY3Rpb259OiAjeyRyfXZ3O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IFwiXCIsICRtYXg6IHhzKSB7XHJcbiAgICBAZm9yICRpbmRleCBmcm9tIDEgdGhyb3VnaCAkbGltaXQge1xyXG4gICAgICAkcjogZ2V0LXZ3KHhzLCAkaW5kZXgpO1xyXG4gICAgICAuI3skcHJlZml4fS0jeyRpbmRleCAqIDV9IHtcclxuICAgICAgICBwYWRkaW5nLSN7JGRpcmVjdGlvbn06ICN7JHJ9dnc7XHJcbiAgICAgIH1cclxuICAgICAgLm1vYmlsZS0jeyRwcmVmaXh9LSN7JGluZGV4ICogNX0ge1xyXG4gICAgICAgIHBhZGRpbmctI3skZGlyZWN0aW9ufTogI3skcn12dztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8vIEhlbHBlciBmdW5jdGlvbiB0byBlYXNpbHkgdXNlIGFuIFNWRyBpbmxpbmUgaW4gQ1NTXHJcbi8vLyB3aXRob3V0IGVuY29kaW5nIGl0IHRvIGJhc2U2NCwgc2F2aW5nIGJ5dGVzLlxyXG4vLy8gSXQgYWxzbyBoZWxwcyB3aXRoIGJyb3dzZXIgc3VwcG9ydC5cclxuLy8vIEEgc21hbGwgZnVuY3Rpb24gYWxsb3dpbmcgc2tpcHBpbmcgYmFzZTY0IGVuY29kaW5nXHJcbi8vLyBhbmQgc2ltcGx5IHBhc3RpbmcgdGhlIFNWRyBtYXJrdXAgcmlnaHQgaW4gdGhlIENTUy5cclxuLy8vIEBhdXRob3IgSmFrb2IgRXJpa3NlblxyXG4vLy8gQGxpbmsgaHR0cDovL2NvZGVwZW4uaW8vamFrb2ItZS9wZW4vZG9Nb01MXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHN2ZyAtIFNWRyBpbWFnZSB0byBlbmNvZGVcclxuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBFbmNvZGVkIFNWRyBkYXRhIHVyaVxyXG5AZnVuY3Rpb24gc3ZnLXVyaSgkc3ZnKSB7XHJcbiAgJGVuY29kZWQ6IFwiXCI7XHJcbiAgJHNsaWNlOiAyMDAwO1xyXG4gICRpbmRleDogMDtcclxuICAkbG9vcHM6IGNlaWwoc3RyLWxlbmd0aCgkc3ZnKSAvICRzbGljZSk7XHJcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkbG9vcHMge1xyXG4gICAgJGNodW5rOiBzdHItc2xpY2UoJHN2ZywgJGluZGV4LCAkaW5kZXggKyAkc2xpY2UgLSAxKTtcclxuICAgICRjaHVuazogc3RyLXJlcGxhY2UoJGNodW5rLCAnXCInLCBcIidcIik7XHJcbiAgICAkY2h1bms6IHN0ci1yZXBsYWNlKCRjaHVuaywgXCI8XCIsIFwiJTNDXCIpO1xyXG4gICAgJGNodW5rOiBzdHItcmVwbGFjZSgkY2h1bmssIFwiPlwiLCBcIiUzRVwiKTtcclxuICAgICRjaHVuazogc3RyLXJlcGxhY2UoJGNodW5rLCBcIiZcIiwgXCIlMjZcIik7XHJcbiAgICAkY2h1bms6IHN0ci1yZXBsYWNlKCRjaHVuaywgXCIjXCIsIFwiJTIzXCIpO1xyXG4gICAgJGVuY29kZWQ6ICN7JGVuY29kZWR9I3skY2h1bmt9O1xyXG4gICAgJGluZGV4OiAkaW5kZXggKyAkc2xpY2U7XHJcbiAgfVxyXG4gIEByZXR1cm4gdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwjeyRlbmNvZGVkfVwiKTtcclxufVxyXG5cclxuLy8vIFJlcGxhY2UgYCRzZWFyY2hgIHdpdGggYCRyZXBsYWNlYCBpbiBgJHN0cmluZ2BcclxuLy8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxyXG4vLy8gQGxpbmsgaHR0cDovL3Nhc3NtZWlzdGVyLmNvbS9naXN0LzFiNGYyZGE1NTI3ODMwMDg4ZTRkXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHN0cmluZyAtIEluaXRpYWwgc3RyaW5nXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlYXJjaCAtIFN1YnN0cmluZyB0byByZXBsYWNlXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHJlcGxhY2UgKCcnKSAtIE5ldyB2YWx1ZVxyXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIFVwZGF0ZWQgc3RyaW5nXHJcbkBmdW5jdGlvbiBzdHItcmVwbGFjZSgkc3RyaW5nLCAkc2VhcmNoLCAkcmVwbGFjZTogXCJcIikge1xyXG4gICRpbmRleDogc3RyLWluZGV4KCRzdHJpbmcsICRzZWFyY2gpO1xyXG4gIEBpZiAkaW5kZXgge1xyXG4gICAgQHJldHVybiBzdHItc2xpY2UoJHN0cmluZywgMSwgJGluZGV4IC0gMSkgKyAkcmVwbGFjZSArXHJcbiAgICAgIHN0ci1yZXBsYWNlKHN0ci1zbGljZSgkc3RyaW5nLCAkaW5kZXggKyBzdHItbGVuZ3RoKCRzZWFyY2gpKSwgJHNlYXJjaCwgJHJlcGxhY2UpO1xyXG4gIH1cclxuICBAcmV0dXJuICRzdHJpbmc7XHJcbn1cclxuIiwiJHNlbGVjdHJpYy1tYWluLWNvbG9yOiAgICAgICNEREQgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIENvbG9yIHVzZWQgaW4gYm9yZGVyXG4kc2VsZWN0cmljLXNlY29uZGFyeS1jb2xvcjogI0JCQiAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gQ29sb3IgdXNlZCBpbiBidXR0b25cbiRzZWxlY3RyaWMtdGV4dC1jb2xvcjogICAgICAjNDQ0ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBDb2xvciB1c2VkIGluIGxhYmVsXG4kc2VsZWN0cmljLWJnLWNvbG9yOiAgICAgICAgI0Y4RjhGOCAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gQmFja2dyb3VuZCBjb2xvclxuJHNlbGVjdHJpYy1idG4tYmctY29sb3I6ICAgICNGOGY4ZjggIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEJ1dHRvbiBiYWNrZ3JvdW5kIGNvbG9yXG4kc2VsZWN0cmljLWhlaWdodDogICAgICAgICAgNDBweCAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gT3V0ZXIgaGVpZ2h0XG4kc2VsZWN0cmljLXNwYWNpbmc6ICAgICAgICAgMTBweCAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gTGFiZWwgbGVmdCBwYWRkaW5nXG4kc2VsZWN0cmljLWJvcmRlci13aWR0aDogICAgMXB4ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gT3V0ZXIgYm9yZGVyIHdpZHRoXG4kc2VsZWN0cmljLWJvcmRlci1yYWRpdXM6ICAgMHB4ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gQm9yZGVyIHJhZGl1c1xuJHNlbGVjdHJpYy1pbm5lci1oZWlnaHQ6ICAgICRzZWxlY3RyaWMtaGVpZ2h0IC0gKCRzZWxlY3RyaWMtYm9yZGVyLXdpZHRoICogMikgIWRlZmF1bHQ7IC8vIElubmVyIGhlaWdodFxuJHNlbGVjdHJpYy1mb250LXNpemU6ICAgICAgIDEycHggIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEZvbnQgc2l6ZVxuXG4uc2VsZWN0cmljLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnNlbGVjdHJpYy1yZXNwb25zaXZlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zZWxlY3RyaWMge1xuICBib3JkZXI6ICRzZWxlY3RyaWMtYm9yZGVyLXdpZHRoIHNvbGlkICRzZWxlY3RyaWMtbWFpbi1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJHNlbGVjdHJpYy1ib3JkZXItcmFkaXVzO1xuICBiYWNrZ3JvdW5kOiAkc2VsZWN0cmljLWJnLWNvbG9yO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLmxhYmVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgbWFyZ2luOiAwICRzZWxlY3RyaWMtaW5uZXItaGVpZ2h0IDAgJHNlbGVjdHJpYy1zcGFjaW5nO1xuICAgIGZvbnQtc2l6ZTogJHNlbGVjdHJpYy1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRzZWxlY3RyaWMtaW5uZXItaGVpZ2h0O1xuICAgIGNvbG9yOiAkc2VsZWN0cmljLXRleHQtY29sb3I7XG4gICAgaGVpZ2h0OiAkc2VsZWN0cmljLWlubmVyLWhlaWdodDtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgfVxuXG4gIC5idXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6ICRzZWxlY3RyaWMtaW5uZXItaGVpZ2h0O1xuICAgIGhlaWdodDogJHNlbGVjdHJpYy1pbm5lci1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRzZWxlY3RyaWMtaW5uZXItaGVpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3RyaWMtYnRuLWJnLWNvbG9yO1xuICAgIGNvbG9yOiAkc2VsZWN0cmljLXNlY29uZGFyeS1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udDogMC8wIGE7XG4gICAgKmZvbnQ6IDIwcHgvI3skc2VsZWN0cmljLWlubmVyLWhlaWdodH0gTHVjaWRhIFNhbnMgVW5pY29kZSwgQXJpYWwgVW5pY29kZSBNUywgQXJpYWw7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBib3JkZXI6IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRzZWxlY3RyaWMtc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLnNlbGVjdHJpYy1mb2N1cyAuc2VsZWN0cmljIHtcbiAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJHNlbGVjdHJpYy1tYWluLWNvbG9yLCAyMCUpO1xufVxuXG4uc2VsZWN0cmljLWhvdmVyIC5zZWxlY3RyaWMge1xuICBib3JkZXItY29sb3I6IGRhcmtlbigkc2VsZWN0cmljLW1haW4tY29sb3IsIDEwJSk7XG5cbiAgLmJ1dHRvbiB7XG4gICAgY29sb3I6IGRhcmtlbigkc2VsZWN0cmljLXNlY29uZGFyeS1jb2xvciwgMTAlKTtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRzZWxlY3RyaWMtc2Vjb25kYXJ5LWNvbG9yLCAxMCUpO1xuICAgIH1cbiAgfVxufVxuXG4uc2VsZWN0cmljLW9wZW4ge1xuICB6LWluZGV4OiA5OTk5O1xuXG4gIC5zZWxlY3RyaWMge1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRzZWxlY3RyaWMtbWFpbi1jb2xvciwgMTAlKTtcbiAgfVxuXG4gIC5zZWxlY3RyaWMtaXRlbXMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5zZWxlY3RyaWMtZGlzYWJsZWQge1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9NTApO1xuICBvcGFjaXR5OiAwLjU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi5zZWxlY3RyaWMtaGlkZS1zZWxlY3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG5cbiAgc2VsZWN0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogLTEwMCU7XG4gIH1cblxuICAmLnNlbGVjdHJpYy1pcy1uYXRpdmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgei1pbmRleDogMTA7XG5cbiAgICBzZWxlY3Qge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICB9XG59XG5cbi5zZWxlY3RyaWMtaW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgKmZvbnQ6IDAvMCBhICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnNlbGVjdHJpYy10ZW1wLXNob3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi8qIEl0ZW1zIGJveCAqL1xuLnNlbGVjdHJpYy1pdGVtcyB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiAkc2VsZWN0cmljLWJnLWNvbG9yO1xuICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZW4oJHNlbGVjdHJpYy1tYWluLWNvbG9yLCAxMCUpO1xuICB6LWluZGV4OiAtMTtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggLTZweDtcblxuICAuc2VsZWN0cmljLXNjcm9sbCB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG5cbiAgLnNlbGVjdHJpYy1hYm92ZSAmIHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAxMDAlO1xuICB9XG5cbiAgdWwsIGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogJHNlbGVjdHJpYy1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgbWluLWhlaWdodDogMjBweDtcbiAgfVxuXG4gIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIGNvbG9yOiAjNjY2O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICYuc2VsZWN0ZWQge1xuICAgICAgYmFja2dyb3VuZDogI0UwRTBFMDtcbiAgICAgIGNvbG9yOiAjNDQ0O1xuICAgIH1cblxuICAgICYuaGlnaGxpZ2h0ZWQge1xuICAgICAgYmFja2dyb3VuZDogI0QwRDBEMDtcbiAgICAgIGNvbG9yOiAjNDQ0O1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogI0Q1RDVENTtcbiAgICAgIGNvbG9yOiAjNDQ0O1xuICAgIH1cbiAgfVxuXG4gIC5kaXNhYmxlZCB7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTUwKTtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgY3Vyc29yOiBkZWZhdWx0ICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjNjY2ICFpbXBvcnRhbnQ7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIH1cblxuICAuc2VsZWN0cmljLWdyb3VwIHtcbiAgICAuc2VsZWN0cmljLWdyb3VwLWxhYmVsIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgY29sb3I6ICM0NDQ7XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCBsaSB7XG4gICAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MTAwKTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgIH1cbiAgfVxufVxuIiwiLyogU2xpZGVyICovXG5cbi5zbGljay1zbGlkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uc2xpY2stbGlzdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAmLmRyYWdnaW5nIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBjdXJzb3I6IGhhbmQ7XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICB9XG5cbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cbn1cbi5zbGljay1zbGlkZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAmLnNsaWNrLWxvYWRpbmcgaW1nIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgJi5kcmFnZ2luZyBpbWcge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG5cbiAgICAuc2xpY2staW5pdGlhbGl6ZWQgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxuXG4gICAgLnNsaWNrLXZlcnRpY2FsICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICB9XG59XG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuIiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIEdsb2JhbCByZXNldHNcclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG5cclxuaHRtbCxcclxuYm9keSxcclxuZGl2LFxyXG5zcGFuLFxyXG5hcHBsZXQsXHJcbm9iamVjdCxcclxuaWZyYW1lLFxyXG5oMSxcclxuaDIsXHJcbmgzLFxyXG5oNCxcclxuaDUsXHJcbmg2LFxyXG5wLFxyXG5ibG9ja3F1b3RlLFxyXG5wcmUsXHJcbmEsXHJcbmFiYnIsXHJcbmFjcm9ueW0sXHJcbmFkZHJlc3MsXHJcbmJpZyxcclxuY2l0ZSxcclxuY29kZSxcclxuZGVsLFxyXG5kZm4sXHJcbmVtLFxyXG5pbWcsXHJcbmlucyxcclxua2JkLFxyXG5xLFxyXG5zLFxyXG5zYW1wLFxyXG5zbWFsbCxcclxuc3RyaWtlLFxyXG5zdHJvbmcsXHJcbnN1Yixcclxuc3VwLFxyXG50dCxcclxudmFyLFxyXG5iLFxyXG51LFxyXG5pLFxyXG5jZW50ZXIsXHJcbmRsLFxyXG5kdCxcclxuZGQsXHJcbm9sLFxyXG51bCxcclxubGksXHJcbmZpZWxkc2V0LFxyXG5mb3JtLFxyXG5sYWJlbCxcclxubGVnZW5kLFxyXG50YWJsZSxcclxuY2FwdGlvbixcclxudGJvZHksXHJcbnRmb290LFxyXG50aGVhZCxcclxudHIsXHJcbnRoLFxyXG50ZCxcclxuYXJ0aWNsZSxcclxuYXNpZGUsXHJcbmNhbnZhcyxcclxuZGV0YWlscyxcclxuZW1iZWQsXHJcbmZpZ3VyZSxcclxuZmlnY2FwdGlvbixcclxuZm9vdGVyLFxyXG5oZWFkZXIsXHJcbmhncm91cCxcclxubWVudSxcclxubmF2LFxyXG5vdXRwdXQsXHJcbnJ1YnksXHJcbnNlY3Rpb24sXHJcbnN1bW1hcnksXHJcbnRpbWUsXHJcbm1hcmssXHJcbmF1ZGlvLFxyXG52aWRlbyB7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGZvbnQtc2l6ZTogMTAwJTtcclxuICBmb250OiBpbmhlcml0O1xyXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcclxuICBvdXRsaW5lOiBub25lO1xyXG59XHJcbi8qIEhUTUw1IGRpc3BsYXktcm9sZSByZXNldCBmb3Igb2xkZXIgYnJvd3NlcnMgKi9cclxuYXJ0aWNsZSxcclxuYXNpZGUsXHJcbmRldGFpbHMsXHJcbmZpZ2NhcHRpb24sXHJcbmZpZ3VyZSxcclxuZm9vdGVyLFxyXG5oZWFkZXIsXHJcbmhncm91cCxcclxubWVudSxcclxubmF2LFxyXG5zZWN0aW9uIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5ib2R5IHtcclxuICBsaW5lLWhlaWdodDogMTtcclxufVxyXG5vbCxcclxudWwge1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbn1cclxuYmxvY2txdW90ZSxcclxucSB7XHJcbiAgcXVvdGVzOiBub25lO1xyXG59XHJcbmJsb2NrcXVvdGU6YmVmb3JlLFxyXG5ibG9ja3F1b3RlOmFmdGVyLFxyXG5xOmJlZm9yZSxcclxucTphZnRlciB7XHJcbiAgY29udGVudDogXCJcIjtcclxuICBjb250ZW50OiBub25lO1xyXG59XHJcbnRhYmxlIHtcclxuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG4gIGJvcmRlci1zcGFjaW5nOiAwO1xyXG59XHJcblxyXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgR2xvYmFsIHN0eWxlc1xyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcbmh0bWwge1xyXG4gIGJhY2tncm91bmQ6ICRjb2xvci1iYWNrZ3JvdW5kO1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbn1cclxuXHJcbiosXHJcbio6YmVmb3JlLFxyXG4qOmFmdGVyIHtcclxuICBib3gtc2l6aW5nOiBpbmhlcml0O1xyXG59XHJcblxyXG5odG1sLFxyXG5idXR0b24sXHJcbmlucHV0LFxyXG5zZWxlY3QsXHJcbnRleHRhcmVhIHtcclxuICBjb2xvcjogJGZvbnQtY29sb3I7XHJcbn1cclxuXHJcbmEge1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAvL3RyYW5zaXRpb246IGNvbG9yIDAuMnM7XHJcbiAgZm9udDogaW5oZXJpdDtcclxuICBjb2xvcjogaW5oZXJpdDtcclxuXHJcbiAgJjpob3ZlciB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG5idXR0b24ge1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuYTpmb2N1cyxcclxuYnV0dG9uOmZvY3VzLFxyXG5hOmFjdGl2ZSxcclxuYnV0dG9uOmFjdGl2ZSB7XHJcbiAgb3V0bGluZTogbm9uZTtcclxufVxyXG5cclxudWwsXHJcbmxpIHtcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG59XHJcblxyXG5vbCxcclxudWwge1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgbWFyZ2luOiAwO1xyXG59XHJcblxyXG5pbWcsXHJcbmlmcmFtZSxcclxudmlkZW8ge1xyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbn1cclxuXHJcbi5hbGlnbi1sZWZ0IHtcclxuICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG59XHJcblxyXG4uYWxpZ24tcmlnaHQge1xyXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xyXG59XHJcblxyXG4uYWxpZ24tY2VudGVyIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5oaWRkZW4ge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuLmhpZGVUZXh0IHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICB0ZXh0LWluZGVudDogMTAxJTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuIiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBHcmlkXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4vKkBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IHhsLCAkbWF4OiBcIlwiKSB7XG4gIC5oaWRkZW4tZnVsbGhkIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnZpc2libGUtZnVsbGhkIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5AaW5jbHVkZSBicmVha3BvaW50MigkbWluOiBsZywgJG1heDogeGwpIHtcbiAgLmhpZGRlbi1mdWxsRGVza3RvcCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC52aXNpYmxlLWZ1bGxEZXNrdG9wIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5AaW5jbHVkZSBicmVha3BvaW50MigkbWluOiBtZCwgJG1heDogbGcpIHtcbiAgLmhpZGRlbi1kZXNrdG9wIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnZpc2libGUtZGVza3RvcCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuQGluY2x1ZGUgYnJlYWtwb2ludDIoJG1pbjogc20sICRtYXg6IG1kKSB7XG4gIC5oaWRkZW4tdGFibGV0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnZpc2libGUtdGFibGV0IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5AaW5jbHVkZSBicmVha3BvaW50MigkbWluOiB4cywgJG1heDogc20pIHtcbiAgLmhpZGRlbi1waGFibGV0cyB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC52aXNpYmxlLXBoYWJsZXRzIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5AaW5jbHVkZSBicmVha3BvaW50MigkbWluOiBcIlwiLCAkbWF4OiB4cykge1xuICAuaGlkZGVuLXBob25lIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnZpc2libGUtcGhvbmUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn0qL1xuXG4uY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgY29udGFpbmVyO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQyKCRtaW46IFwiXCIsICRtYXg6IHNtKSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIH1cbn1cbi8qLmNvbnRhaW5lci1mdWxsIHtcbiAgQGluY2x1ZGUgY29udGFpbmVyLWZ1bGw7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludDIoJG1pbjonJywgJG1heDpzbSkge1xuICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICB9XG59XG5cbkBpbmNsdWRlIG1ha2UtZGVmYXVsdC1tYXJnaW4obXRvcCwxMCx0b3ApO1xuQGluY2x1ZGUgbWFrZS1kZWZhdWx0LXBhZGRpbmcocHRvcCwxMCx0b3ApO1xuXG5AaW5jbHVkZSBtYWtlLWRlZmF1bHQtbWFyZ2luKG1ib3R0b20sMTAsYm90dG9tKTtcbkBpbmNsdWRlIG1ha2UtZGVmYXVsdC1wYWRkaW5nKHBib3R0b20sMTAsYm90dG9tKTtcblxuLmZsIHsgZmxvYXQ6IGxlZnQ7IH1cbi5mciB7IGZsb2F0OiByaWdodDsgfVxuXG4uY2VudGVyLWJsb2NrIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgZmxvYXQ6IG5vbmU7XG59Ki9cbiIsIi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgRm9udHNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi8qQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnZm9udGUgbmFtZSc7XG4gIHNyYzogdXJsKCcuLi9mb250cy9mb250ZS1uYW1lLmVvdCcpO1xuICBzcmM6IHVybCgnLi4vZm9udHMvZm9udGUtbmFtZS5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgIHVybCgnLi4vZm9udHMvZm9udGUtbmFtZS53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgdXJsKCcuLi9mb250cy9mb250ZS1uYW1lLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICAgICB1cmwoJy4uL2ZvbnRzL2ZvbnRlLW5hbWUuc3ZnI2ZvbnRlLW5hbWUnKSBmb3JtYXQoJ3N2ZycpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59Ki9cbi8qICMjIyMgR2VuZXJhdGVkIEJ5OiBodHRwOi8vZm9udC5kb3dubG9hZCAjIyMjICovXG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJTYXRvc2hpIFJlZ3VsYXJcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBzcmM6XG4gICAgbG9jYWwoXCJTYXRvc2hpIFJlZ3VsYXJcIiksXG4gICAgdXJsKFwiLi4vZm9udHMvU2F0b3NoaS1SZWd1bGFyLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlNhdG9zaGkgSXRhbGljXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgc3JjOlxuICAgIGxvY2FsKFwiU2F0b3NoaSBJdGFsaWNcIiksXG4gICAgdXJsKFwiLi4vZm9udHMvU2F0b3NoaS1JdGFsaWMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiU2F0b3NoaSBMaWdodFwiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHNyYzpcbiAgICBsb2NhbChcIlNhdG9zaGkgTGlnaHRcIiksXG4gICAgdXJsKFwiLi4vZm9udHMvU2F0b3NoaS1MaWdodC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJTYXRvc2hpIExpZ2h0IEl0YWxpY1wiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHNyYzpcbiAgICBsb2NhbChcIlNhdG9zaGkgTGlnaHQgSXRhbGljXCIpLFxuICAgIHVybChcIi4uL2ZvbnRzL1NhdG9zaGktTGlnaHRJdGFsaWMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiU2F0b3NoaSBNZWRpdW1cIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBzcmM6XG4gICAgbG9jYWwoXCJTYXRvc2hpIE1lZGl1bVwiKSxcbiAgICB1cmwoXCIuLi9mb250cy9TYXRvc2hpLU1lZGl1bS53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJTYXRvc2hpIE1lZGl1bSBJdGFsaWNcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBzcmM6XG4gICAgbG9jYWwoXCJTYXRvc2hpIE1lZGl1bSBJdGFsaWNcIiksXG4gICAgdXJsKFwiLi4vZm9udHMvU2F0b3NoaS1NZWRpdW1JdGFsaWMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiU2F0b3NoaSBCb2xkXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgc3JjOlxuICAgIGxvY2FsKFwiU2F0b3NoaSBCb2xkXCIpLFxuICAgIHVybChcIi4uL2ZvbnRzL1NhdG9zaGktQm9sZC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJTYXRvc2hpIEJvbGQgSXRhbGljXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgc3JjOlxuICAgIGxvY2FsKFwiU2F0b3NoaSBCb2xkIEl0YWxpY1wiKSxcbiAgICB1cmwoXCIuLi9mb250cy9TYXRvc2hpLUJvbGRJdGFsaWMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiU2F0b3NoaSBCbGFja1wiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHNyYzpcbiAgICBsb2NhbChcIlNhdG9zaGkgQmxhY2tcIiksXG4gICAgdXJsKFwiLi4vZm9udHMvU2F0b3NoaS1CbGFjay53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJTYXRvc2hpIEJsYWNrIEl0YWxpY1wiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHNyYzpcbiAgICBsb2NhbChcIlNhdG9zaGkgQmxhY2sgSXRhbGljXCIpLFxuICAgIHVybChcIi4uL2ZvbnRzL1NhdG9zaGktQmxhY2tJdGFsaWMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuXG5ib2R5IHtcbiAgZm9udC1mYW1pbHk6ICRmb250LW1haW47XG59XG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1hbHQ7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbjogMDtcbn1cblxucCB7XG4gIG1hcmdpbjogMDtcbn1cbiIsIi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgS2V5ZnJhbWVzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5Aa2V5ZnJhbWVzIGJvdW5jZSB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBtb3ZlSXQge1xuICAwJSxcbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCkgcm90YXRlKDFkZWcpO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCkgcm90YXRlKC0xZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZsb2F0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRleSgwcHgpO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGV5KC0yMHB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZXkoMHB4KTtcbiAgfVxufVxuIiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBNYWluIHN0cnVjdHVyZVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuXG5ib2R5IHtcbiAgYmFja2dyb3VuZDogIzBhMGEwYTtcbiAgLy8gYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9iZy5wbmcpIHRvcCBjZW50ZXIgbm8tcmVwZWF0O1xufVxuLnJldmVhbGhlYWRlcixcbi5yZXZlYWxpY29uLFxuLnJldmVhbCxcbi5yZXZlYWxmb290ZXIsXG4ucmV2ZWFsc2xpZGVsZWZ0LFxuLnJldmVhbHNsaWRlcmlnaHQsXG4ucmV2ZWFsZmFkZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLmJnLXZpZGVvIHtcbiAgd2lkdGg6IDEwMCU7XG4gIEBpbmNsdWRlIGhlaWdodCgkaGVpZ2h0OiAxMDgwcHgpO1xuICBAaW5jbHVkZSBwb3NpdGlvbigkdHlwZTogYWJzb2x1dGUsICR0b3A6IDAsICRyaWdodDogMCwgJGxlZnQ6IDAsICR6LWluZGV4OiAwKTtcbiAgdmlkZW8ge1xuICAgIEBpbmNsdWRlIG9iamVjdC1maXQoJGZpdDogY292ZXIsICRwb3NpdGlvbjogY2VudGVyIGNlbnRlcik7XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIEBpbmNsdWRlIHBvc2l0aW9uKCR0eXBlOiBhYnNvbHV0ZSwgJHRvcDogMCwgJHJpZ2h0OiAwLCAkYm90dG9tOiAwLCAkbGVmdDogMCwgJHotaW5kZXg6IDApO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgwZGVnLCByZ2JhKDEwLCAxMCwgMTAsIDEpIDAlLCByZ2JhKDEwLCAxMCwgMTAsIDEpIDEwJSwgcmdiYSgxMCwgMTAsIDEwLCAwKSAxMDAlKTtcbiAgfVxufVxuI29wZW4tbWVudSB7XG4gIG1hcmdpbi10b3A6IC0wO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxMDI7XG4gIC5hbmkge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgc3ZnIHtcbiAgICB9XG4gICAgLmNsb3NlLFxuICAgICNjbG9zZSB7XG4gICAgICBtYXJnaW46IDAgMCAwIDA7XG4gICAgICB3aWR0aDogZ2V0LXZ3LXNtKDcwcHgpO1xuICAgICAgaGVpZ2h0OiBnZXQtdnctc20oNzBweCk7XG4gICAgICAubGluZSB7XG4gICAgICAgIGZpbGw6IG5vbmU7XG4gICAgICAgIHN0cm9rZTogJGNvbG9yLWdvbGQ7XG4gICAgICAgIHN0cm9rZS13aWR0aDogNjtcbiAgICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgICBzdHJva2UtZGFzaGFycmF5IDYwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSksXG4gICAgICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQgNjAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgICAgIH1cbiAgICAgIC5saW5lMSB7XG4gICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDYwIDIwNztcbiAgICAgICAgc3Ryb2tlLXdpZHRoOiA2O1xuICAgICAgfVxuICAgICAgLmxpbmUyIHtcbiAgICAgICAgc3Ryb2tlLWRhc2hhcnJheTogNjAgNjA7XG4gICAgICAgIHN0cm9rZS13aWR0aDogNjtcbiAgICAgIH1cbiAgICAgIC5saW5lMyB7XG4gICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDYwIDIwNztcbiAgICAgICAgc3Ryb2tlLXdpZHRoOiA2O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLm9wZW5lZCB7XG4gICAgLmNsb3NlLFxuICAgICNjbG9zZSB7XG4gICAgICAubGluZTEge1xuICAgICAgICBzdHJva2UtZGFzaGFycmF5OiA5MCAyMDc7XG4gICAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAtMTM0O1xuICAgICAgICBzdHJva2Utd2lkdGg6IDY7XG4gICAgICB9XG4gICAgICAubGluZTIge1xuICAgICAgICBzdHJva2UtZGFzaGFycmF5OiAxIDYwO1xuICAgICAgICBzdHJva2UtZGFzaG9mZnNldDogLTMwO1xuICAgICAgICBzdHJva2Utd2lkdGg6IDY7XG4gICAgICB9XG4gICAgICAubGluZTMge1xuICAgICAgICBzdHJva2UtZGFzaGFycmF5OiA5MCAyMDc7XG4gICAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAtMTM0O1xuICAgICAgICBzdHJva2Utd2lkdGg6IDY7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIGhlYWRlclxuaGVhZGVyIHtcbiAgQGluY2x1ZGUgcG9zaXRpb24oJHR5cGU6IGFic29sdXRlLCAkdG9wOiAwLCAkcmlnaHQ6IDAsICRsZWZ0OiAwLCAkei1pbmRleDogMTAwKTtcbiAgLmdyaWQtaGVhZGVyIHtcbiAgICBAaW5jbHVkZSBjb2x1bW5zKCRxdWFudDogMWZyIGdldC1jbGFtcCgxMDBweCkgMWZyLCAkZ3V0dGVyOiA2NXB4LCAkYWxpZ246IGVuZCwgJHRlbXBsYXRlOiBcInNwYWNlIGxvZ28gbWVudW1vYmlsZVwiKTtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDE2cHgsICRyaWdodDogMCwgJGJvdHRvbTogMTZweCwgJGxlZnQ6IDApO1xuICAgIC5sb2dvIHtcbiAgICAgIGdyaWQtYXJlYTogbG9nbztcbiAgICAgIGltZyB7XG4gICAgICAgIEBpbmNsdWRlIG9iamVjdC1maXQoJGZpdDogY292ZXIsICRwb3NpdGlvbjogY2VudGVyIGNlbnRlcik7XG4gICAgICAgICYuZGVza3RvcCB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAubWVudSB7XG4gICAgICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDAsICRyaWdodDogMCwgJGJvdHRvbTogOXB4LCAkbGVmdDogMCk7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgJi5sZWZ0IHtcbiAgICAgICAgZ3JpZC1hcmVhOiBsZWZ0O1xuICAgICAgICB1bCB7XG4gICAgICAgICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IGVuZCwgJGdhcDogMTZweCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYucmlnaHQge1xuICAgICAgICBncmlkLWFyZWE6IHJpZ2h0O1xuICAgICAgICB1bCB7XG4gICAgICAgICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IHN0YXJ0LCAkZ2FwOiAxNnB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdWwge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDhweCwgJHJpZ2h0OiA4cHgsICRib3R0b206IDhweCwgJGxlZnQ6IDhweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250KFxuICAgICAgICAgICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgTGlnaHRcIixcbiAgICAgICAgICAgICAgJHNpemU6IDE4cHgsXG4gICAgICAgICAgICAgICR3ZWlnaHQ6IDQwMCxcbiAgICAgICAgICAgICAgJGhlaWdodDogMTIwJSxcbiAgICAgICAgICAgICAgJGFsaWduOiBsZWZ0LFxuICAgICAgICAgICAgICAkY29sb3I6ICRjb2xvci13aGl0ZVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmJ0bi1tZW51LW1vYmlsZSB7XG4gICAgICBncmlkLWFyZWE6IG1lbnVtb2JpbGU7XG4gICAgICBAaW5jbHVkZSBmbGV4KCRhbGlnbjogY2VudGVyLCAkanVzdGlmeTogZW5kKTtcbiAgICB9XG4gIH1cbn1cbm5hdi5tZW51LW1vYmlsZSB7XG4gIEBpbmNsdWRlIGFuaW1hdGUoJHRpbWU6IDAuM3MpO1xuICBAaW5jbHVkZSBwb3NpdGlvbigkdHlwZTogYWJzb2x1dGUsICR0b3A6IDAsICRyaWdodDogMCwgJGJvdHRvbTogMCwgJGxlZnQ6IC0xMDElLCAkei1pbmRleDogMSk7XG4gIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogMTAwcHgsICRyaWdodDogMzJweCwgJGJvdHRvbTogNDhweCwgJGxlZnQ6IDMycHgpO1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbiAgLmJveCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIEBpbmNsdWRlIGZsZXgoJGRpcmVjdGlvbjogY29sdW1uLCAkYWxpZ246IGVuZCwgJGp1c3RpZnk6IGVuZCwgJGdhcDogMCk7XG4gIH1cbiAgdWwge1xuICAgIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogMCwgJHJpZ2h0OiAwLCAkYm90dG9tOiA4OHB4LCAkbGVmdDogMCk7XG4gICAgbGkge1xuICAgICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGVuZCwgJGp1c3RpZnk6IGVuZCwgJGdhcDogMCk7XG4gICAgICBhIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udChcbiAgICAgICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgQm9sZFwiLFxuICAgICAgICAgICRzaXplOiAyNHB4LFxuICAgICAgICAgICR3ZWlnaHQ6IDQwMCxcbiAgICAgICAgICAkaGVpZ2h0OiAxMTUlLFxuICAgICAgICAgICRhbGlnbjogcmlnaHQsXG4gICAgICAgICAgJGNvbG9yOiAkY29sb3Itd2hpdGVcbiAgICAgICAgKTtcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiA4cHgsICRyaWdodDogMCwgJGJvdHRvbTogOHB4LCAkbGVmdDogMCk7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmJ0biB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgQGluY2x1ZGUgZm9udChcbiAgICAgICRmYW1pbHk6IFwiU2F0b3NoaSBCb2xkXCIsXG4gICAgICAkc2l6ZTogMTZweCxcbiAgICAgICR3ZWlnaHQ6IDcwMCxcbiAgICAgICRoZWlnaHQ6IDE1MCUsXG4gICAgICAkYWxpZ246IGxlZnQsXG4gICAgICAkY29sb3I6ICRjb2xvci1kYXJrLWJsdWVcbiAgICApO1xuICAgIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogMTAwJSk7XG4gICAgbWF4LXdpZHRoOiAzNzVweDtcbiAgICBAaW5jbHVkZSBoZWlnaHQoJGhlaWdodDogNTZweCk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYWxsOiAxMHB4KTtcbiAgICBAaW5jbHVkZSBmbGV4KCRhbGlnbjogY2VudGVyLCAkanVzdGlmeTogY2VudGVyKTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMGRlZywgI2NkYjM3MCwgI2NkYjM3MCksIGxpbmVhci1ncmFkaWVudCg5Mi4zOGRlZywgI2NkYjM3MCAxLjk5JSwgI2QxYWU1MiA5OS4yNiUpO1xuICB9XG59XG4ubWVudS1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbmF2Lm1lbnUtbW9iaWxlIHtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG4vLyBlbmQgaGVhZGVyXG4vLyBtYWluXG5tYWluIHtcbiAgLy9iYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2JnLXRvcC5wbmcpIHRvcCBjZW50ZXIgbm8tcmVwZWF0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIGhlaWdodDogNTU4MHB4O1xuICAuaWNvbi0wMSxcbiAgLmljb24tMDIsXG4gIC5pY29uLTAzLFxuICAuaWNvbi0wNCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuOnJvb3Qge1xuICAtLWdyYWRpZW50OiBjb25pYy1ncmFkaWVudChcbiAgICBmcm9tIDkwZGVnIGF0IDUwJSA1MCUsXG4gICAgcmdiKDI1MSwgNTUsIDYwKSxcbiAgICByZ2JhKDI1MiwgMTE0LCAyOCwgMSksXG4gICAgcmdiYSgyNTUsIDIyMCwgMCwgMSksXG4gICAgcmdiYSgyNywgMjA2LCAyNTUsIDEpLFxuICAgIHJnYmEoNDIsIDEwNywgMjU1LCAxKSxcbiAgICByZ2JhKDIxNywgNDEsIDI1NSwgMSksXG4gICAgcmdiYSgyNTUsIDEwLCA5MiwgMSlcbiAgKTtcbn1cbi5jYXJkIHtcbiAgLS1zdGFydDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4zcyBlYXNlLWluLW91dDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgJjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmFkaWVudCk7XG4gICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgICBtYXNrOlxuICAgICAgbGluZWFyLWdyYWRpZW50KCMwMDAwLCAjMDAwMCksXG4gICAgICBjb25pYy1ncmFkaWVudChmcm9tIGNhbGMoKHZhcigtLXN0YXJ0KSAtICgyMCAqIDEuMSkpICogMWRlZyksICNmZmZmZmYxZiAwZGVnLCB3aGl0ZSwgI2ZmZmZmZjAwIDEwMGRlZyk7XG4gICAgbWFzay1jb21wb3NpdGU6IGludGVyc2VjdDtcbiAgICBtYXNrLWNsaXA6IHBhZGRpbmctYm94LCBib3JkZXItYm94O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICB9XG4gICY6aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBvcGFjaXR5OiAwLjY7XG4gICAgfVxuICB9XG4gIC5nbG93IHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICBmaWx0ZXI6IGJsdXIoMTRweCk7XG4gICAgJjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHdpZHRoOiA5OCU7XG4gICAgICBoZWlnaHQ6IDk4JTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICBib3JkZXItcmFkaXVzOiAxNHB4O1xuICAgICAgYm9yZGVyOiAxNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JhZGllbnQpO1xuICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgICAgIC8qIG1hc2s6IGxpbmVhci1ncmFkaWVudCgjMDAwMCwgIzAwMDApLCBcbiAgICAgIGNvbmljLWdyYWRpZW50KFxuICAgICAgICBmcm9tIGNhbGModmFyKC0tc3RhcnQpICAqIDFkZWcpLCBcbiAgICAgICAgIzAwMCAwZGVnLCBcbiAgICAgICAgI2ZmZmZmZiwgXG4gICAgICAgIHJnYmEoMCwgMCwgMCwgMCkgNjBkZWdcbiAgICAgICAgKTsgKi9cbiAgICAgIG1hc2s6XG4gICAgICAgIGxpbmVhci1ncmFkaWVudCgjMDAwMCwgIzAwMDApLFxuICAgICAgICBjb25pYy1ncmFkaWVudChmcm9tIGNhbGMoKHZhcigtLXN0YXJ0KSAtICgyMCAqIDEuMSkpICogMWRlZyksICNmZmZmZmYxZiAwZGVnLCB3aGl0ZSwgI2ZmZmZmZjAwIDEwMGRlZyk7XG4gICAgICBtYXNrLWNvbXBvc2l0ZTogaW50ZXJzZWN0O1xuICAgICAgbWFzay1jbGlwOiBwYWRkaW5nLWJveCwgYm9yZGVyLWJveDtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2l0aW9uOiAxcyBlYXNlO1xuICAgIH1cbiAgfVxufVxuXG4uY2FyZDpob3ZlciA+IC5nbG93OjpiZWZvcmUge1xuICBvcGFjaXR5OiAxO1xufVxuLy8gZW5kIG1haW5cbi8vIGZvb3RlclxuZm9vdGVyIHtcbiAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiA5NnB4LCAkcmlnaHQ6IDAsICRib3R0b206IDIycHgsICRsZWZ0OiAwKTtcbiAgLmdyaWQtZm9vdGVyIHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDAsICRyaWdodDogMCwgJGJvdHRvbTogNzZweCwgJGxlZnQ6IDApO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMjYyYTNhO1xuICAgIEBpbmNsdWRlIGNvbHVtbnMoJHF1YW50OiAxZnIsICRndXR0ZXI6IDU2cHgsICRhbGlnbjogc3RhcnQsICR0ZW1wbGF0ZTogXCJcIik7XG4gICAgLmxvZ28ge1xuICAgICAgQGluY2x1ZGUgd2lkdGgoJHdpZHRoOiAxNzZweCk7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBAaW5jbHVkZSBvYmplY3QtZml0KCRmaXQ6IGNvdmVyLCAkcG9zaXRpb246IGNlbnRlciBjZW50ZXIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5pdGVtIHtcbiAgICAgIC50aXRsZSB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAgICAgJGZhbWlseTogXCJTYXRvc2hpIExpZ2h0XCIsXG4gICAgICAgICAgJHNpemU6IDE4cHgsXG4gICAgICAgICAgJHdlaWdodDogNDAwLFxuICAgICAgICAgICRoZWlnaHQ6IDE1MCUsXG4gICAgICAgICAgJGFsaWduOiBsZWZ0LFxuICAgICAgICAgICRjb2xvcjogJGNvbG9yLXdoaXRlXG4gICAgICAgICk7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjJweDtcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAwLCAkcmlnaHQ6IDAsICRib3R0b206IDI0cHgsICRsZWZ0OiAwKTtcbiAgICAgIH1cbiAgICAgIHVsLm1lbnUge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDdweCwgJHJpZ2h0OiAwLCAkYm90dG9tOiA3cHgsICRsZWZ0OiAwKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAgICAgICAgICRmYW1pbHk6IFwiU2F0b3NoaSBMaWdodFwiLFxuICAgICAgICAgICAgICAkc2l6ZTogMTZweCxcbiAgICAgICAgICAgICAgJHdlaWdodDogNDAwLFxuICAgICAgICAgICAgICAkaGVpZ2h0OiAxNTAlLFxuICAgICAgICAgICAgICAkYWxpZ246IGxlZnQsXG4gICAgICAgICAgICAgICRjb2xvcjogJGNvbG9yLXdoaXRlXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICB1bC5jb250YWN0IHtcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAwLCAkcmlnaHQ6IDAsICRib3R0b206IDI1cHgsICRsZWZ0OiAwKTtcbiAgICAgICAgbGkge1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IHN0YXJ0LCAkZ2FwOiA4cHgpO1xuICAgICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSB3aWR0aCgkd2lkdGg6IDIwcHgpO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBoZWlnaHQoJGhlaWdodDogMjBweCk7XG4gICAgICAgICAgICAgIGZpbGw6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiA4cHgsICRyaWdodDogMCwgJGJvdHRvbTogOHB4LCAkbGVmdDogMCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250KFxuICAgICAgICAgICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgTGlnaHRcIixcbiAgICAgICAgICAgICAgJHNpemU6IDE2cHgsXG4gICAgICAgICAgICAgICR3ZWlnaHQ6IDQwMCxcbiAgICAgICAgICAgICAgJGhlaWdodDogMTUwJSxcbiAgICAgICAgICAgICAgJGFsaWduOiBsZWZ0LFxuICAgICAgICAgICAgICAkY29sb3I6ICRjb2xvci13aGl0ZVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5zaGFyZSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgoJHR5cGU6IGlubGluZSwgJGFsaWduOiBjZW50ZXIsICRqdXN0aWZ5OiBzdGFydCwgJGdhcDogMTZweCk7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAgICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgTGlnaHRcIixcbiAgICAgICAgICAgICRzaXplOiAxNnB4LFxuICAgICAgICAgICAgJHdlaWdodDogNDAwLFxuICAgICAgICAgICAgJGhlaWdodDogMTUwJSxcbiAgICAgICAgICAgICRhbGlnbjogbGVmdCxcbiAgICAgICAgICAgICRjb2xvcjogJGNvbG9yLXdoaXRlXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgICAuaWNvbi1ib3gge1xuICAgICAgICAgIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogNDhweCk7XG4gICAgICAgICAgQGluY2x1ZGUgaGVpZ2h0KCRoZWlnaHQ6IDQ4cHgpO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyNjJhM2E7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYWxsOiAxMHB4KTtcbiAgICAgICAgICBAaW5jbHVkZSBmbGV4KCRhbGlnbjogY2VudGVyLCAkanVzdGlmeTogY2VudGVyKTtcbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBAaW5jbHVkZSB3aWR0aCgkd2lkdGg6IDMycHgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgaGVpZ2h0KCRoZWlnaHQ6IDMycHgpO1xuICAgICAgICAgICAgZmlsbDogJGNvbG9yLWdvbGQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5jb3B5cmlnaHQge1xuICAgIEBpbmNsdWRlIGZsZXgoJGRpcmVjdGlvbjogY29sdW1uLCAkYWxpZ246IHN0YXJ0LCAkanVzdGlmeTogc3BhY2UtYmV0d2VlbiwgJGdhcDogMjRweCk7XG4gICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAzMnB4LCAkcmlnaHQ6IDAsICRib3R0b206IDMycHgsICRsZWZ0OiAwKTtcbiAgICBwIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAgICRmYW1pbHk6IFwiU2F0b3NoaSBMaWdodFwiLFxuICAgICAgICAkc2l6ZTogMTZweCxcbiAgICAgICAgJHdlaWdodDogNDAwLFxuICAgICAgICAkaGVpZ2h0OiAxNTAlLFxuICAgICAgICAkYWxpZ246IGxlZnQsXG4gICAgICAgICRjb2xvcjogJGNvbG9yLXdoaXRlXG4gICAgICApO1xuICAgICAgYSB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JlZW47XG4gICAgICAgIH1cbiAgICAgICAgJi51cHNpdGVzIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGFuaW1hdGUoJHRpbWU6IDAuM3MpO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgdG9wOiAtMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBlbmQgZm9vdGVyXG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIEJ1dHRvbnNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5idG4ge1xuXHRAaW5jbHVkZSBhbmltYXRlKCR0aW1lOiAwLjNzKTtcblx0QGluY2x1ZGUgaW5saW5lLWJsb2NrKCRhbGlnbjogbWlkZGxlKTtcbn1cbiIsIi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgQWJvdXRcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuLmFib3V0IHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMyNjJhM2E7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMjYyYTNhO1xuICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDgxcHgsICRyaWdodDogMCwgJGJvdHRvbTogMTAzcHgsICRsZWZ0OiAwKTtcbiAgLmdyaWQtYWJvdXQge1xuICAgIEBpbmNsdWRlIGNvbHVtbnMoJHF1YW50OiAxZnIsICRndXR0ZXI6IDMycHgsICRhbGlnbjogc3RhcnQsICR0ZW1wbGF0ZTogXCJcIik7XG4gICAgLnRleHQge1xuICAgICAgLnN1YnRpdGxlIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udChcbiAgICAgICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgTGlnaHRcIixcbiAgICAgICAgICAkc2l6ZTogMTRweCxcbiAgICAgICAgICAkd2VpZ2h0OiAzMDAsXG4gICAgICAgICAgJGhlaWdodDogMTE1JSxcbiAgICAgICAgICAkYWxpZ246IGxlZnQsXG4gICAgICAgICAgJGNvbG9yOiAjOWE5YTlhXG4gICAgICAgICk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAxLjVweDtcbiAgICAgIH1cbiAgICAgIC50aXRsZSB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAgICAgJGZhbWlseTogXCJTYXRvc2hpIEJvbGRcIixcbiAgICAgICAgICAkc2l6ZTogNDBweCxcbiAgICAgICAgICAkd2VpZ2h0OiA3MDAsXG4gICAgICAgICAgJGhlaWdodDogMTE1JSxcbiAgICAgICAgICAkYWxpZ246IGxlZnQsXG4gICAgICAgICAgJGNvbG9yOiAkY29sb3Itd2hpdGVcbiAgICAgICAgKTtcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAyM3B4LCAkcmlnaHQ6IDAsICRib3R0b206IDI2cHgsICRsZWZ0OiAwKTtcbiAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtZm9udCgpO1xuICAgICAgfVxuICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udChcbiAgICAgICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgTGlnaHRcIixcbiAgICAgICAgICAkc2l6ZTogMjBweCxcbiAgICAgICAgICAkd2VpZ2h0OiA0MDAsXG4gICAgICAgICAgJGhlaWdodDogMTUwJSxcbiAgICAgICAgICAkYWxpZ246IGxlZnQsXG4gICAgICAgICAgJGNvbG9yOiAjOWE5YTlhXG4gICAgICAgICk7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjJweDtcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAwLCAkcmlnaHQ6IDAsICRib3R0b206IDYxcHgsICRsZWZ0OiAwKTtcbiAgICAgIH1cbiAgICAgIC5idG4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICAuaW1hZ2Uge1xuICAgICAgaW1nIHtcbiAgICAgICAgQGluY2x1ZGUgb2JqZWN0LWZpdCgkZml0OiBjb250YWluLCAkcG9zaXRpb246IGNlbnRlciBjZW50ZXIpO1xuICAgICAgfVxuICAgIH1cbiAgICAuZnVsbC10ZXh0IHtcbiAgICAgIC50aXRsZSB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAgICAgJGZhbWlseTogXCJTYXRvc2hpIExpZ2h0XCIsXG4gICAgICAgICAgJHNpemU6IDI0cHgsXG4gICAgICAgICAgJHdlaWdodDogMzAwLFxuICAgICAgICAgICRoZWlnaHQ6IDE1MCUsXG4gICAgICAgICAgJGFsaWduOiBsZWZ0LFxuICAgICAgICAgICRjb2xvcjogI2RlZGVkZVxuICAgICAgICApO1xuICAgICAgICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDAsICRyaWdodDogMCwgJGJvdHRvbTogOHB4LCAkbGVmdDogMCk7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjNweDtcbiAgICAgIH1cbiAgICAgIHAge1xuICAgICAgICBAaW5jbHVkZSBmb250KFxuICAgICAgICAgICRmYW1pbHk6IFwiU2F0b3NoaSBMaWdodFwiLFxuICAgICAgICAgICRzaXplOiAxNnB4LFxuICAgICAgICAgICR3ZWlnaHQ6IDQwMCxcbiAgICAgICAgICAkaGVpZ2h0OiAxNTAlLFxuICAgICAgICAgICRhbGlnbjogbGVmdCxcbiAgICAgICAgICAkY29sb3I6ICNkZWRlZGVcbiAgICAgICAgKTtcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAxMnB4LCAkcmlnaHQ6IDAsICRib3R0b206IDEycHgsICRsZWZ0OiAwKTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMnB4O1xuICAgICAgfVxuICAgICAgLmJ0biB7XG4gICAgICAgIEBpbmNsdWRlIG1hcmdpbigkdG9wOiA0OHB4LCAkcmlnaHQ6IDAsICRib3R0b206IDAsICRsZWZ0OiAwKTtcbiAgICAgICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IHN0YXJ0LCAkZ2FwOiAxNnB4KTtcbiAgICAgICAgLmljb24tYm94IHtcbiAgICAgICAgICBAaW5jbHVkZSB3aWR0aCgkd2lkdGg6IDQ4cHgpO1xuICAgICAgICAgIEBpbmNsdWRlIGhlaWdodCgkaGVpZ2h0OiA0OHB4KTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgIEBpbmNsdWRlIGZsZXgoJGFsaWduOiBjZW50ZXIsICRqdXN0aWZ5OiBjZW50ZXIpO1xuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogMjRweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBoZWlnaHQoJGhlaWdodDogMjRweCk7XG4gICAgICAgICAgICBmaWxsOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICB9XG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG9iamVjdC1maXQoJGZpdDogY29udGFpbiwgJHBvc2l0aW9uOiBjZW50ZXIgY2VudGVyKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgQGluY2x1ZGUgZm9udChcbiAgICAgICAgICAgICRmYW1pbHk6IFwiU2F0b3NoaSBCb2xkXCIsXG4gICAgICAgICAgICAkc2l6ZTogMTZweCxcbiAgICAgICAgICAgICR3ZWlnaHQ6IDcwMCxcbiAgICAgICAgICAgICRoZWlnaHQ6IDE1MCUsXG4gICAgICAgICAgICAkYWxpZ246IGxlZnQsXG4gICAgICAgICAgICAkY29sb3I6ICRjb2xvci1nb2xkXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBBbGVydC1ib3hcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuLmFsZXJ0LWJveCB7XG4gIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogNDBweCwgJHJpZ2h0OiAwLCAkYm90dG9tOiAwLCAkbGVmdDogMCk7XG4gIC5ib3gge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCA1OSwgNTksIDAuNCk7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyMzYsIDIxLCAyMSwgMC4wNSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGFsbDogMjBweCk7XG4gICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiA5OXB4LCAkcmlnaHQ6IDE2cHgsICRib3R0b206IDk5cHgsICRsZWZ0OiAxNnB4KTtcbiAgICAuaWNvbi1ib3gge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbiAgICAgIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogODBweCk7XG4gICAgICBAaW5jbHVkZSBoZWlnaHQoJGhlaWdodDogODBweCk7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRhbGw6IDIwcHgpO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCByZWQ7XG4gICAgICBAaW5jbHVkZSBwb3NpdGlvbigkdHlwZTogYWJzb2x1dGUsICR0b3A6IC00MXB4LCAkcmlnaHQ6IDAsICRib3R0b206IDAsICRsZWZ0OiAwLCAkei1pbmRleDogMCk7XG4gICAgICAuaW50ZXJuYWwge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBib3JkZXI6IDNweCBzb2xpZCAjMGEwYTBhO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRhbGw6IDIwcHgpO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDIzNiwgMjEsIDIxLCAwLjIpO1xuICAgICAgICBAaW5jbHVkZSBmbGV4KCRhbGlnbjogY2VudGVyLCAkanVzdGlmeTogY2VudGVyKTtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBAaW5jbHVkZSB3aWR0aCgkd2lkdGg6IDU2cHgpO1xuICAgICAgICAgIEBpbmNsdWRlIGhlaWdodCgkaGVpZ2h0OiA1NnB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAudGl0bGUge1xuICAgICAgQGluY2x1ZGUgZm9udChcbiAgICAgICAgJGZhbWlseTogXCJTYXRvc2hpIEJvbGRcIixcbiAgICAgICAgJHNpemU6IDQwcHgsXG4gICAgICAgICR3ZWlnaHQ6IDcwMCxcbiAgICAgICAgJGhlaWdodDogMTE1JSxcbiAgICAgICAgJGFsaWduOiBjZW50ZXIsXG4gICAgICAgICRjb2xvcjogJGNvbG9yLXdoaXRlXG4gICAgICApO1xuICAgICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAwLCAkcmlnaHQ6IDAsICRib3R0b206IDE2cHgsICRsZWZ0OiAwKTtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWZvbnQoKTtcbiAgICB9XG4gICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAgICRmYW1pbHk6IFwiU2F0b3NoaSBMaWdodFwiLFxuICAgICAgICAkc2l6ZTogMTZweCxcbiAgICAgICAgJHdlaWdodDogNDAwLFxuICAgICAgICAkaGVpZ2h0OiAxNTAlLFxuICAgICAgICAkYWxpZ246IGNlbnRlcixcbiAgICAgICAgJGNvbG9yOiAjZGVkZWRlXG4gICAgICApO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMnB4O1xuICAgICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAwLCAkcmlnaHQ6IDAsICRib3R0b206IDQwcHgsICRsZWZ0OiAwKTtcbiAgICAgIGJyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmJ0biB7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAgICRmYW1pbHk6IFwiU2F0b3NoaSBCb2xkXCIsXG4gICAgICAgICRzaXplOiAxNnB4LFxuICAgICAgICAkd2VpZ2h0OiA3MDAsXG4gICAgICAgICRoZWlnaHQ6IDE1MCUsXG4gICAgICAgICRhbGlnbjogbGVmdCxcbiAgICAgICAgJGNvbG9yOiAkY29sb3ItZGFyay1ibHVlXG4gICAgICApO1xuICAgICAgQGluY2x1ZGUgd2lkdGgoJHdpZHRoOiAyMDlweCk7XG4gICAgICBAaW5jbHVkZSBoZWlnaHQoJGhlaWdodDogNTZweCk7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRhbGw6IDEwcHgpO1xuICAgICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IGNlbnRlcik7XG4gICAgICBAaW5jbHVkZSBtYXJnaW4oJHRvcDogMCwgJHJpZ2h0OiBhdXRvLCAkYm90dG9tOiAwLCAkbGVmdDogYXV0byk7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMGRlZywgI2NkYjM3MCwgI2NkYjM3MCksIGxpbmVhci1ncmFkaWVudCg5Mi4zOGRlZywgI2NkYjM3MCAxLjk5JSwgI2QxYWU1MiA5OS4yNiUpO1xuICAgIH1cbiAgfVxufVxuIiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBLZXkgZGlmZmVyZW50aWF0b3JzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5cbi5rZXktZGlmZmVyZW50aWF0b3JzIHtcbiAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAxNTZweCwgJHJpZ2h0OiAwLCAkYm90dG9tOiAwLCAkbGVmdDogMCk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMjYyYTNhO1xuICAudGl0bGUge1xuICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgQm9sZFwiLFxuICAgICAgJHNpemU6IDQwcHgsXG4gICAgICAkd2VpZ2h0OiA3MDAsXG4gICAgICAkaGVpZ2h0OiAxMTUlLFxuICAgICAgJGFsaWduOiBjZW50ZXIsXG4gICAgICAkY29sb3I6ICRjb2xvci13aGl0ZVxuICAgICk7XG4gICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAwLCAkcmlnaHQ6IDAsICRib3R0b206IDQwcHgsICRsZWZ0OiAwKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1mb250KCk7XG4gIH1cbiAgLmdyaWQtbGlzdC1ib3gge1xuICAgIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogMCwgJHJpZ2h0OiAwLCAkYm90dG9tOiAxMDNweCwgJGxlZnQ6IDApO1xuICAgIEBpbmNsdWRlIGNvbHVtbnMoJHF1YW50OiAxZnIsICRndXR0ZXI6IDI0cHgsICRhbGlnbjogc3RyZXRjaCwgJHRlbXBsYXRlOiBcIlwiKTtcbiAgICAuaXRlbSB7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDM4LCA0MiwgNTgsIDAuMikgMCUsIHJnYmEoMzgsIDQyLCA1OCwgMC40KSAxMDAlKTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMyNjJhM2E7XG4gICAgICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDMycHgsICRyaWdodDogMjBweCwgJGJvdHRvbTogNDdweCwgJGxlZnQ6IDIwcHgpO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYWxsOiAxMHB4KTtcbiAgICAgIC5pY29uLWJveCB7XG4gICAgICAgIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogMzJweCk7XG4gICAgICAgIEBpbmNsdWRlIGhlaWdodCgkaGVpZ2h0OiAzMnB4KTtcbiAgICAgICAgQGluY2x1ZGUgbWFyZ2luKCR0b3A6IDAsICRyaWdodDogYXV0bywgJGJvdHRvbTogMCwgJGxlZnQ6IGF1dG8pO1xuICAgICAgICBpbWcge1xuICAgICAgICAgIEBpbmNsdWRlIG9iamVjdC1maXQoJGZpdDogY29udGFpbiwgJHBvc2l0aW9uOiBjZW50ZXIgY2VudGVyKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnRpdGxlLWJveCB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAgICAgJGZhbWlseTogXCJTYXRvc2hpIExpZ2h0XCIsXG4gICAgICAgICAgJHNpemU6IDE2cHgsXG4gICAgICAgICAgJHdlaWdodDogMzAwLFxuICAgICAgICAgICRoZWlnaHQ6IDE1MCUsXG4gICAgICAgICAgJGFsaWduOiBjZW50ZXIsXG4gICAgICAgICAgJGNvbG9yOiAkY29sb3Itd2hpdGVcbiAgICAgICAgKTtcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAxNXB4LCAkcmlnaHQ6IDAsICRib3R0b206IDAsICRsZWZ0OiAwKTtcbiAgICAgICAgYnIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgQ2xpZW50c1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuXG4uY2xpZW50cyB7XG4gIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogMTA0cHgsICRyaWdodDogMCwgJGJvdHRvbTogMjFweCwgJGxlZnQ6IDApO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAuYm94LXRpdGxlIHtcbiAgICBAaW5jbHVkZSBmbGV4KCRkaXJlY3Rpb246IGNvbHVtbiwgJGFsaWduOiBjZW50ZXIsICRqdXN0aWZ5OiBzcGFjZS1iZXR3ZWVuLCAkZ2FwOiAyNHB4KTtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDAsICRyaWdodDogN3B4LCAkYm90dG9tOiA1NnB4LCAkbGVmdDogMCk7XG4gICAgLnRpdGxlIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAgICRmYW1pbHk6IFwiU2F0b3NoaSBCb2xkXCIsXG4gICAgICAgICRzaXplOiAzMnB4LFxuICAgICAgICAkd2VpZ2h0OiA3MDAsXG4gICAgICAgICRoZWlnaHQ6IDExNSUsXG4gICAgICAgICRhbGlnbjogY2VudGVyLFxuICAgICAgICAkY29sb3I6ICRjb2xvci13aGl0ZVxuICAgICAgKTtcbiAgICAgIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogMCwgJHJpZ2h0OiAwLCAkYm90dG9tOiAwLCAkbGVmdDogMCk7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1mb250KCk7XG4gICAgfVxuICAgIC5ib3gtZ29vZ2xlIHtcbiAgICAgIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogMzc2cHgpO1xuICAgICAgQGluY2x1ZGUgaGVpZ2h0KCRoZWlnaHQ6IDYycHgpO1xuICAgICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IGNlbnRlciwgJGdhcDogMTBweCk7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRhbGw6IDEwcHgpO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgzOCwgNDIsIDU4LCAwLjMpO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgzOCwgNDIsIDU4LCAwLjIpO1xuICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDQ0cHgpO1xuICAgICAgLmxvZ28ge1xuICAgICAgICBAaW5jbHVkZSB3aWR0aCgkd2lkdGg6IDc0cHgpO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgICAudGV4dCB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAgICAgJGZhbWlseTogXCJTYXRvc2hpIExpZ2h0XCIsXG4gICAgICAgICAgJHNpemU6IDE2cHgsXG4gICAgICAgICAgJHdlaWdodDogNDAwLFxuICAgICAgICAgICRoZWlnaHQ6IDE1MCUsXG4gICAgICAgICAgJGFsaWduOiBjZW50ZXIsXG4gICAgICAgICAgJGNvbG9yOiAkY29sb3Itd2hpdGVcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIC5kaXYge1xuICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICBAaW5jbHVkZSBoZWlnaHQoJGhlaWdodDogMjBweCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgICAgICAgQGluY2x1ZGUgbWFyZ2luKCR0b3A6IDAsICRyaWdodDogNnB4LCAkYm90dG9tOiAwLCAkbGVmdDogNnB4KTtcbiAgICAgIH1cbiAgICAgIC5yYXRlIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udChcbiAgICAgICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgTGlnaHRcIixcbiAgICAgICAgICAkc2l6ZTogMjBweCxcbiAgICAgICAgICAkd2VpZ2h0OiA0MDAsXG4gICAgICAgICAgJGhlaWdodDogMTUwJSxcbiAgICAgICAgICAkYWxpZ246IGNlbnRlcixcbiAgICAgICAgICAkY29sb3I6ICRjb2xvci13aGl0ZVxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgLnN0YXJzIHtcbiAgICAgICAgQGluY2x1ZGUgd2lkdGgoJHdpZHRoOiAxMDBweCk7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmdyaWQtbGlzdC1ib3gge1xuICAgIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogMCwgJHJpZ2h0OiAwLCAkYm90dG9tOiAxMDNweCwgJGxlZnQ6IDApO1xuICAgIEBpbmNsdWRlIGNvbHVtbnMoJHF1YW50OiAxZnIsICRndXR0ZXI6IDMycHgsICRhbGlnbjogc3RyZXRjaCwgJHRlbXBsYXRlOiBcIlwiKTtcbiAgICAuaXRlbSB7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDM4LCA0MiwgNTgsIDAuMikgMCUsIHJnYmEoMzgsIDQyLCA1OCwgMC40KSAxMDAlKTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMyNjJhM2E7XG4gICAgICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDMycHgsICRyaWdodDogMjBweCwgJGJvdHRvbTogMzFweCwgJGxlZnQ6IDIwcHgpO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYWxsOiAxMHB4KTtcbiAgICAgIC5pY29uLWJveCB7XG4gICAgICAgIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogMTAwcHgpO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgQGluY2x1ZGUgb2JqZWN0LWZpdCgkZml0OiBjb250YWluLCAkcG9zaXRpb246IGNlbnRlciBjZW50ZXIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZGVzY3JpcHRpb24tYm94IHtcbiAgICAgICAgQGluY2x1ZGUgZm9udChcbiAgICAgICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgTGlnaHRcIixcbiAgICAgICAgICAkc2l6ZTogMjBweCxcbiAgICAgICAgICAkd2VpZ2h0OiAzMDAsXG4gICAgICAgICAgJGhlaWdodDogMTUwJSxcbiAgICAgICAgICAkYWxpZ246IGxlZnQsXG4gICAgICAgICAgJGNvbG9yOiAkY29sb3Itd2hpdGVcbiAgICAgICAgKTtcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAzMnB4LCAkcmlnaHQ6IDAsICRib3R0b206IDMxcHgsICRsZWZ0OiAwKTtcbiAgICAgIH1cbiAgICAgIC5uYW1lIHtcbiAgICAgICAgQGluY2x1ZGUgZm9udChcbiAgICAgICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgTGlnaHRcIixcbiAgICAgICAgICAkc2l6ZTogMTZweCxcbiAgICAgICAgICAkd2VpZ2h0OiAzMDAsXG4gICAgICAgICAgJGhlaWdodDogMTUwJSxcbiAgICAgICAgICAkYWxpZ246IGxlZnQsXG4gICAgICAgICAgJGNvbG9yOiAkY29sb3Itd2hpdGVcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmdyaWQtbGlzdC12aWRlbyB7XG4gICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAwLCAkcmlnaHQ6IDAsICRib3R0b206IDEwM3B4LCAkbGVmdDogMCk7XG4gICAgbWFyZ2luOiAwIC0xNnB4O1xuICAgIC5zbGljay1zbGlkZSB7XG4gICAgICBwYWRkaW5nOiAwIDE2cHg7XG4gICAgfVxuICAgIC5pdGVtIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgQGluY2x1ZGUgaGVpZ2h0KCRoZWlnaHQ6IDY1MHB4KTtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGFsbDogMTBweCk7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdmlkZW8ge1xuICAgICAgICBAaW5jbHVkZSBvYmplY3QtZml0KCRmaXQ6IGNvdmVyLCAkcG9zaXRpb246IGNlbnRlciBjZW50ZXIpO1xuICAgICAgfVxuICAgIH1cbiAgICAuc2xpY2stZG90cyB7XG4gICAgICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDE2cHgsICRyaWdodDogMCwgJGJvdHRvbTogMCwgJGxlZnQ6IDApO1xuICAgICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IGNlbnRlciwgJGdhcDogMTBweCk7XG4gICAgICBsaSB7XG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdvbGQ7XG4gICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICB9XG4gICAgICAgICYuc2xpY2stYWN0aXZlIHtcbiAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdvbGQ7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gIEN0YVxyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcblxyXG4uY3RhIHtcclxuICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDEyNHB4LCAkcmlnaHQ6IDAsICRib3R0b206IDE1MnB4LCAkbGVmdDogMCk7XHJcbiAgYmFja2dyb3VuZDogI2NkYjM3MDtcclxuICAudGl0bGUge1xyXG4gICAgQGluY2x1ZGUgZm9udCgkZmFtaWx5OiBcIlNhdG9zaGkgQm9sZFwiLCAkc2l6ZTogNDBweCwgJHdlaWdodDogNzAwLCAkaGVpZ2h0OiAxMTUlLCAkYWxpZ246IGNlbnRlciwgJGNvbG9yOiAjMGEwYTBhKTtcclxuICAgIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogMCwgJHJpZ2h0OiAwLCAkYm90dG9tOiA0OHB4LCAkbGVmdDogMCk7XHJcbiAgfVxyXG4gIC5ib3gge1xyXG4gICAgQGluY2x1ZGUgd2lkdGgoJHdpZHRoOiAxMDAlKTtcclxuICAgIEBpbmNsdWRlIGhlaWdodCgkaGVpZ2h0OiBhdXRvKTtcclxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGFsbDogMjBweCk7XHJcbiAgICBAaW5jbHVkZSBtYXJnaW4oJHRvcDogMCwgJHJpZ2h0OiBhdXRvLCAkYm90dG9tOiAwLCAkbGVmdDogYXV0byk7XHJcbiAgICBAaW5jbHVkZSBmbGV4KCRkaXJlY3Rpb246IGNvbHVtbiwgJGFsaWduOiBjZW50ZXIsICRqdXN0aWZ5OiBjZW50ZXIsICRnYXA6IDI0cHgpO1xyXG4gICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAxNnB4LCAkcmlnaHQ6IDE2cHgsICRib3R0b206IDE2cHgsICRsZWZ0OiAxNnB4KTtcclxuICAgIGJhY2tncm91bmQ6ICMwMDBlMmI7XHJcblxyXG4gICAgLmljb24tYm94IHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICAgIC50ZXh0IHtcclxuICAgICAgQGluY2x1ZGUgZm9udChcclxuICAgICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgTGlnaHRcIixcclxuICAgICAgICAkc2l6ZTogMTZweCxcclxuICAgICAgICAkd2VpZ2h0OiA0MDAsXHJcbiAgICAgICAgJGhlaWdodDogMTUwJSxcclxuICAgICAgICAkYWxpZ246IGNlbnRlcixcclxuICAgICAgICAkY29sb3I6ICRjb2xvci13aGl0ZVxyXG4gICAgICApO1xyXG4gICAgICBAaW5jbHVkZSB3aWR0aCgkd2lkdGg6IDQxNXB4KTtcclxuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMnB4O1xyXG4gICAgICBiLFxyXG4gICAgICBzdHJvbmcge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiU2F0b3NoaSBCb2xkXCI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5idG4ge1xyXG4gICAgICBmbGV4LXNocmluazogMDtcclxuICAgICAgQGluY2x1ZGUgZm9udChcclxuICAgICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgQm9sZFwiLFxyXG4gICAgICAgICRzaXplOiAxNnB4LFxyXG4gICAgICAgICR3ZWlnaHQ6IDcwMCxcclxuICAgICAgICAkaGVpZ2h0OiAxNTAlLFxyXG4gICAgICAgICRhbGlnbjogbGVmdCxcclxuICAgICAgICAkY29sb3I6ICRjb2xvci1kYXJrLWJsdWVcclxuICAgICAgKTtcclxuICAgICAgQGluY2x1ZGUgd2lkdGgoJHdpZHRoOiAxMDAlKTtcclxuICAgICAgQGluY2x1ZGUgaGVpZ2h0KCRoZWlnaHQ6IDU2cHgpO1xyXG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRhbGw6IDEwcHgpO1xyXG4gICAgICBAaW5jbHVkZSBmbGV4KCRhbGlnbjogY2VudGVyLCAkanVzdGlmeTogY2VudGVyKTtcclxuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsICNjZGIzNzAsICNjZGIzNzApLCBsaW5lYXItZ3JhZGllbnQoOTIuMzhkZWcsICNjZGIzNzAgMS45OSUsICNkMWFlNTIgOTkuMjYlKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBTZXJ2aWNlXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5cbi5oZXJvIHtcbiAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAxNTBweCwgJHJpZ2h0OiAwLCAkYm90dG9tOiAxNDBweCwgJGxlZnQ6IDApO1xuICAuYnJlYWRjcnVtYiB7XG4gICAgQGluY2x1ZGUgZmxleCgkYWxpZ246IGNlbnRlciwgJGp1c3RpZnk6IGNlbnRlciwgJGdhcDogMjRweCk7XG4gICAgc3BhbiB7XG4gICAgICBAaW5jbHVkZSBmb250KFxuICAgICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgTGlnaHRcIixcbiAgICAgICAgJHNpemU6IDE0cHgsXG4gICAgICAgICR3ZWlnaHQ6IDQwMCxcbiAgICAgICAgJGhlaWdodDogMTE1JSxcbiAgICAgICAgJGFsaWduOiBjZW50ZXIsXG4gICAgICAgICRjb2xvcjogJGNvbG9yLXdoaXRlXG4gICAgICApO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuNnB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG4gICAgLmRpdiB7XG4gICAgICBAaW5jbHVkZSB3aWR0aCgkd2lkdGg6IDE2cHgpO1xuICAgICAgQGluY2x1ZGUgaGVpZ2h0KCRoZWlnaHQ6IDE2cHgpO1xuICAgICAgLmljb24ge1xuICAgICAgICBAaW5jbHVkZSB3aWR0aCgkd2lkdGg6IDE2cHgpO1xuICAgICAgICBAaW5jbHVkZSBoZWlnaHQoJGhlaWdodDogMTZweCk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC50aXRsZSB7XG4gICAgQGluY2x1ZGUgZm9udChcbiAgICAgICRmYW1pbHk6IFwiU2F0b3NoaSBCb2xkXCIsXG4gICAgICAkc2l6ZTogMzJweCxcbiAgICAgICR3ZWlnaHQ6IDQwMCxcbiAgICAgICRoZWlnaHQ6IDExNSUsXG4gICAgICAkYWxpZ246IGNlbnRlcixcbiAgICAgICRjb2xvcjogJGNvbG9yLXdoaXRlXG4gICAgKTtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDI0cHgsICRyaWdodDogMCwgJGJvdHRvbTogMjRweCwgJGxlZnQ6IDApO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWZvbnQoKTtcbiAgICBiciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuICAuZGVzY3JpcHRpb24ge1xuICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgTGlnaHRcIixcbiAgICAgICRzaXplOiAxOHB4LFxuICAgICAgJHdlaWdodDogNDAwLFxuICAgICAgJGhlaWdodDogMTUwJSxcbiAgICAgICRhbGlnbjogY2VudGVyLFxuICAgICAgJGNvbG9yOiAkY29sb3Itd2hpdGVcbiAgICApO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjJweDtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDAsICRyaWdodDogMCwgJGJvdHRvbTogODBweCwgJGxlZnQ6IDApO1xuICB9XG5cbiAgLmdyaWQtbGlzdC1ib3gge1xuICAgIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogMCwgJHJpZ2h0OiAwLCAkYm90dG9tOiAxMDRweCwgJGxlZnQ6IDApO1xuICAgIEBpbmNsdWRlIGNvbHVtbnMoJHF1YW50OiAxZnIsICRndXR0ZXI6IDMycHgsICRhbGlnbjogc3RyZXRjaCwgJHRlbXBsYXRlOiBcIlwiKTtcbiAgICAuaXRlbSB7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDM4LCA0MiwgNTgsIDAuMikgMCUsIHJnYmEoMzgsIDQyLCA1OCwgMC40KSAxMDAlKTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMyNjJhM2E7XG4gICAgICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDMycHgsICRyaWdodDogNDBweCwgJGJvdHRvbTogNDdweCwgJGxlZnQ6IDQwcHgpO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYWxsOiAxMHB4KTtcbiAgICAgIC5pY29uLWJveCB7XG4gICAgICAgIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogMzJweCk7XG4gICAgICAgIEBpbmNsdWRlIGhlaWdodCgkaGVpZ2h0OiAzMnB4KTtcbiAgICAgICAgQGluY2x1ZGUgbWFyZ2luKCR0b3A6IDAsICRyaWdodDogYXV0bywgJGJvdHRvbTogMCwgJGxlZnQ6IGF1dG8pO1xuICAgICAgICBpbWcge1xuICAgICAgICAgIEBpbmNsdWRlIG9iamVjdC1maXQoJGZpdDogY29udGFpbiwgJHBvc2l0aW9uOiBjZW50ZXIgY2VudGVyKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnRpdGxlLWJveCB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAgICAgJGZhbWlseTogXCJTYXRvc2hpIExpZ2h0XCIsXG4gICAgICAgICAgJHNpemU6IDE2cHgsXG4gICAgICAgICAgJHdlaWdodDogMzAwLFxuICAgICAgICAgICRoZWlnaHQ6IDE1MCUsXG4gICAgICAgICAgJGFsaWduOiBjZW50ZXIsXG4gICAgICAgICAgJGNvbG9yOiAkY29sb3Itd2hpdGVcbiAgICAgICAgKTtcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAxNXB4LCAkcmlnaHQ6IDAsICRib3R0b206IDAsICRsZWZ0OiAwKTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zdXBwb3J0IHtcbiAgICBAaW5jbHVkZSBmb250KFxuICAgICAgJGZhbWlseTogXCJTYXRvc2hpIExpZ2h0XCIsXG4gICAgICAkc2l6ZTogMThweCxcbiAgICAgICR3ZWlnaHQ6IDQwMCxcbiAgICAgICRoZWlnaHQ6IDE1MCUsXG4gICAgICAkYWxpZ246IGNlbnRlcixcbiAgICAgICRjb2xvcjogJGNvbG9yLXdoaXRlXG4gICAgKTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4ycHg7XG4gICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAwLCAkcmlnaHQ6IDAsICRib3R0b206IDI0cHgsICRsZWZ0OiAwKTtcbiAgICBiciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5ib3gge1xuICAgIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogMTAwJSk7XG4gICAgQGluY2x1ZGUgaGVpZ2h0KCRoZWlnaHQ6IGF1dG8pO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGFsbDogMjBweCk7XG4gICAgQGluY2x1ZGUgbWFyZ2luKCR0b3A6IDAsICRyaWdodDogYXV0bywgJGJvdHRvbTogMCwgJGxlZnQ6IGF1dG8pO1xuICAgIEBpbmNsdWRlIGZsZXgoJGRpcmVjdGlvbjogY29sdW1uLCAkYWxpZ246IHN0YXJ0LCAkanVzdGlmeTogY2VudGVyLCAkZ2FwOiAxNnB4KTtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDE2cHgsICRyaWdodDogMTZweCwgJGJvdHRvbTogMTZweCwgJGxlZnQ6IDE2cHgpO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgzOCwgNDIsIDU4LCAwLjYpIDAlLCByZ2JhKDM4LCA0MiwgNTgsIDApIDEwMCUpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICAgIGJvcmRlci1pbWFnZS1zb3VyY2U6XG4gICAgICBsaW5lYXItZ3JhZGllbnQoMGRlZywgIzI2MmEzYSwgIzI2MmEzYSksXG4gICAgICBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAgIDg4LjEzZGVnLFxuICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDQ3LjAzJSxcbiAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUwNDgwOCkgOTIuMDUlLFxuICAgICAgICByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDk5Ljg0JVxuICAgICAgKTtcblxuICAgIC5pY29uLWJveCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAudGV4dCB7XG4gICAgICBAaW5jbHVkZSBmb250KFxuICAgICAgICAkZmFtaWx5OiBcIlNhdG9zaGkgTGlnaHRcIixcbiAgICAgICAgJHNpemU6IDE2cHgsXG4gICAgICAgICR3ZWlnaHQ6IDQwMCxcbiAgICAgICAgJGhlaWdodDogMTUwJSxcbiAgICAgICAgJGFsaWduOiBsZWZ0LFxuICAgICAgICAkY29sb3I6ICRjb2xvci13aGl0ZVxuICAgICAgKTtcbiAgICAgIEBpbmNsdWRlIHdpZHRoKCR3aWR0aDogMzMwcHgpO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMnB4O1xuICAgIH1cbiAgICAuYnRuIHtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgQGluY2x1ZGUgZm9udChcbiAgICAgICAgJGZhbWlseTogXCJTYXRvc2hpIEJvbGRcIixcbiAgICAgICAgJHNpemU6IDE2cHgsXG4gICAgICAgICR3ZWlnaHQ6IDcwMCxcbiAgICAgICAgJGhlaWdodDogMTUwJSxcbiAgICAgICAgJGFsaWduOiBsZWZ0LFxuICAgICAgICAkY29sb3I6ICRjb2xvci1kYXJrLWJsdWVcbiAgICAgICk7XG4gICAgICBAaW5jbHVkZSB3aWR0aCgkd2lkdGg6IDEwMCUpO1xuICAgICAgQGluY2x1ZGUgaGVpZ2h0KCRoZWlnaHQ6IDU2cHgpO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYWxsOiAxMHB4KTtcbiAgICAgIEBpbmNsdWRlIGZsZXgoJGFsaWduOiBjZW50ZXIsICRqdXN0aWZ5OiBjZW50ZXIpO1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsICNjZGIzNzAsICNjZGIzNzApLCBsaW5lYXItZ3JhZGllbnQoOTIuMzhkZWcsICNjZGIzNzAgMS45OSUsICNkMWFlNTIgOTkuMjYlKTtcbiAgICB9XG4gIH1cbn1cblxuLmhvdy10by13b3JrIHtcbiAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAxMTZweCwgJHJpZ2h0OiAwLCAkYm90dG9tOiAxMjBweCwgJGxlZnQ6IDApO1xuICAuZ3JpZC1ob3d0b3dvcmsge1xuICAgIEBpbmNsdWRlIGNvbHVtbnMoJHF1YW50OiAxZnIsICRndXR0ZXI6IDY0cHgsICRhbGlnbjogc3RhcnQsICR0ZW1wbGF0ZTogXCJcIik7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIC50ZXh0IHtcbiAgICAgIC5ib3gtdGV4dCB7XG4gICAgICB9XG4gICAgICAudGl0bGUge1xuICAgICAgICBAaW5jbHVkZSBmb250KFxuICAgICAgICAgICRmYW1pbHk6IFwiU2F0b3NoaSBCb2xkXCIsXG4gICAgICAgICAgJHNpemU6IDQwcHgsXG4gICAgICAgICAgJHdlaWdodDogNDAwLFxuICAgICAgICAgICRoZWlnaHQ6IDExNSUsXG4gICAgICAgICAgJGFsaWduOiBsZWZ0LFxuICAgICAgICAgICRjb2xvcjogJGNvbG9yLXdoaXRlXG4gICAgICAgICk7XG4gICAgICAgIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogMjRweCwgJHJpZ2h0OiAwLCAkYm90dG9tOiAyNHB4LCAkbGVmdDogMCk7XG4gICAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWZvbnQoKTtcbiAgICAgIH1cbiAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIGZvbnQoXG4gICAgICAgICAgJGZhbWlseTogXCJTYXRvc2hpIExpZ2h0XCIsXG4gICAgICAgICAgJHNpemU6IDE2cHgsXG4gICAgICAgICAgJHdlaWdodDogNDAwLFxuICAgICAgICAgICRoZWlnaHQ6IDE1MCUsXG4gICAgICAgICAgJGFsaWduOiBsZWZ0LFxuICAgICAgICAgICRjb2xvcjogJGNvbG9yLXdoaXRlXG4gICAgICAgICk7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjJweDtcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAwLCAkcmlnaHQ6IDAsICRib3R0b206IDY0cHgsICRsZWZ0OiAwKTtcbiAgICAgICAgYnIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5ib3gge1xuICAgICAgICBAaW5jbHVkZSB3aWR0aCgkd2lkdGg6IDEwMCUpO1xuICAgICAgICBAaW5jbHVkZSBoZWlnaHQoJGhlaWdodDogYXV0byk7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgoJGFsaWduOiBjZW50ZXIsICRqdXN0aWZ5OiBjZW50ZXIsICRnYXA6IDE2cHgpO1xuICAgICAgICBAaW5jbHVkZSBwYWRkaW5nKCR0b3A6IDE2cHgsICRyaWdodDogMTZweCwgJGJvdHRvbTogMTZweCwgJGxlZnQ6IDE2cHgpO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRhbGw6IDEwcHgpO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDM4LCA0MiwgNTgsIDAuMikgMCUsIHJnYmEoMzgsIDQyLCA1OCwgMC40KSAxMDAlKTtcbiAgICAgICAgLmljb24tYm94IHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIC50ZXh0IHtcbiAgICAgICAgICBAaW5jbHVkZSBmb250KFxuICAgICAgICAgICAgJGZhbWlseTogXCJTYXRvc2hpIExpZ2h0XCIsXG4gICAgICAgICAgICAkc2l6ZTogMTZweCxcbiAgICAgICAgICAgICR3ZWlnaHQ6IDQwMCxcbiAgICAgICAgICAgICRoZWlnaHQ6IDE1MCUsXG4gICAgICAgICAgICAkYWxpZ246IGxlZnQsXG4gICAgICAgICAgICAkY29sb3I6ICRjb2xvci13aGl0ZVxuICAgICAgICAgICk7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMnB4O1xuICAgICAgICAgIGJyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5ib3hzIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIC5ib3gge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAyNDBweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzI2MmEzYTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYWxsOiAxMHB4KTtcbiAgICAgICAgQGluY2x1ZGUgZmxleCgkZGlyZWN0aW9uOiBjb2x1bW4sICRhbGlnbjogY2VudGVyLCAkanVzdGlmeTogY2VudGVyLCAkZ2FwOiAxNnB4KTtcbiAgICAgICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAzMnB4LCAkcmlnaHQ6IDMycHgsICRib3R0b206IDMycHgsICRsZWZ0OiAzMnB4KTtcbiAgICAgICAgLmljb24tYm94IHtcbiAgICAgICAgICBAaW5jbHVkZSB3aWR0aCgkd2lkdGg6IDMycHgpO1xuICAgICAgICAgIEBpbmNsdWRlIGhlaWdodCgkaGVpZ2h0OiAzMnB4KTtcbiAgICAgICAgICBAaW5jbHVkZSBmbGV4KCRhbGlnbjogY2VudGVyLCAkanVzdGlmeTogY2VudGVyKTtcbiAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgb2JqZWN0LWZpdCgkZml0OiBjb250YWluLCAkcG9zaXRpb246IGNlbnRlciBjZW50ZXIpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBoMyB7XG4gICAgICAgICAgQGluY2x1ZGUgZm9udChcbiAgICAgICAgICAgICRmYW1pbHk6IFwiU2F0b3NoaSBMaWdodFwiLFxuICAgICAgICAgICAgJHNpemU6IDI0cHgsXG4gICAgICAgICAgICAkd2VpZ2h0OiA0MDAsXG4gICAgICAgICAgICAkaGVpZ2h0OiAxNTAlLFxuICAgICAgICAgICAgJGFsaWduOiBjZW50ZXIsXG4gICAgICAgICAgICAkY29sb3I6ICRjb2xvci13aGl0ZVxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgIEBpbmNsdWRlIG1hcmdpbigkYm90dG9tOiAxNjBweCk7XG4gICAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oJHR5cGU6IHN0aWNreSwgJHRvcDogNDBweCwgJGxlZnQ6IDAsICR6LWluZGV4OiAxKTtcbiAgICAgICAgfVxuICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgQGluY2x1ZGUgbWFyZ2luKCRib3R0b206IDEyMHB4KTtcbiAgICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbigkdHlwZTogc3RpY2t5LCAkdG9wOiA4MHB4LCAkbGVmdDogMCwgJHotaW5kZXg6IDIpO1xuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICBAaW5jbHVkZSBtYXJnaW4oJGJvdHRvbTogODBweCk7XG4gICAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oJHR5cGU6IHN0aWNreSwgJHRvcDogMTIwcHgsICRsZWZ0OiAwLCAkei1pbmRleDogMyk7XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICAgIEBpbmNsdWRlIG1hcmdpbigkYm90dG9tOiA0MHB4KTtcbiAgICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbigkdHlwZTogc3RpY2t5LCAkdG9wOiAxNjBweCwgJGxlZnQ6IDAsICR6LWluZGV4OiA0KTtcbiAgICAgICAgfVxuICAgICAgICAmOm50aC1jaGlsZCg1KSB7XG4gICAgICAgICAgQGluY2x1ZGUgbWFyZ2luKCRib3R0b206IDApO1xuICAgICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKCR0eXBlOiBzdGlja3ksICR0b3A6IDIwMHB4LCAkbGVmdDogMCwgJHotaW5kZXg6IDUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5rZXktZGlmZmVyZW50aWF0b3JzIHtcbiAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAxMjBweCwgJHJpZ2h0OiAwLCAkYm90dG9tOiAwLCAkbGVmdDogMCk7XG4gIC5ncmlkLWxpc3QtYm94IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFDQUE7O3dDQUV3QztBQ0Z4Qzs7d0NBRXdDO0FDVXhDLEFBQUEsa0JBQWtCLENBQUM7RUFDakIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsTUFBTSxFQUFFLE9BQU87Q0FDaEI7O0FBRUQsQUFBQSxxQkFBcUIsQ0FBQztFQUNwQixLQUFLLEVBQUUsSUFBSTtDQUNaOztBQUVELEFBQUEsVUFBVSxDQUFDO0VBQ1QsTUFBTSxFQWZvQixHQUFHLENBZUcsS0FBSyxDQXRCWCxJQUFJO0VBdUI5QixhQUFhLEVBZmEsR0FBRztFQWdCN0IsVUFBVSxFQXJCZ0IsT0FBTztFQXNCakMsUUFBUSxFQUFFLFFBQVE7RUFDbEIsUUFBUSxFQUFFLE1BQU07Q0E0Q2pCOztBQWpERCxBQU9FLFVBUFEsQ0FPUixNQUFNLENBQUM7RUFDTCxPQUFPLEVBQUUsS0FBSztFQUNkLFdBQVcsRUFBRSxNQUFNO0VBQ25CLFFBQVEsRUFBRSxNQUFNO0VBQ2hCLGFBQWEsRUFBRSxRQUFRO0VBQ3ZCLE1BQU0sRUFBRSxDQUFDLENBeEJlLElBQWlELENBd0J2QyxDQUFDLENBM0JYLElBQUk7RUE0QjVCLFNBQVMsRUF4QmUsSUFBSTtFQXlCNUIsV0FBVyxFQTFCYSxJQUFpRDtFQTJCekUsS0FBSyxFQWxDbUIsSUFBSTtFQW1DNUIsTUFBTSxFQTVCa0IsSUFBaUQ7RUE2QnpFLFdBQVcsRUFBRSxJQUFJO0NBQ2xC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 */

}