.sctn.accordion .accordion-v2__panel:before{content:"";height:1px;width:98%;margin-left:auto;margin-right:auto;display:block;background-color:var(--color-bg);margin-bottom:var(--space-md)}
article{border-radius:var(--radius-lg);padding:var(--space-md);position:relative}article .preview-thumbnail img{display:block;overflow:hidden;width:100%;height:230px;object-fit:contain;transition:transform .4s ease,filter .4s ease}article:hover .preview-thumbnail img{transform:scale(1.1);filter:brightness(1.05)}article a{text-decoration:none}article .post-meta{font-size:var(--text-sm)}.post-cat{padding:5px 10px;border-radius:50px;font-size:var(--text-xs);position:absolute;top:2%;right:2%;z-index:1;display:inline-block;margin-right:.5rem}.post-cat.category-human-resources{background-color:var(--color-orange-light)}.post-cat.category-personal{background-color:var(--color-orange-light)}.post-cat.category-recruiting{background-color:var(--color-orange-light)}.post-cat.category-warenwirtschaft{background-color:var(--color-green-light)}.post-cat.category-kontakte-abrechnung{background-color:var(--color-green-light)}.post-cat.category-zeiterfassung{background-color:var(--color-blue-light)}.post-cat.category-ticketsystem{background-color:var(--color-blue-light)}.post-cat.category-projektmanagement{background-color:var(--color-blue-light)}
.sctn.content .icon{width:3.125rem;height:3.125rem}.sctn.content .jobs .job .arrow{transition:all .3s ease-in-out}.sctn.content .jobs .job:hover{text-decoration:underline}.sctn.content .jobs .job:hover .arrow{transform:translateX(3px)}
.cards .card{box-shadow:none;display:grid;grid-template-columns:auto;grid-template-rows:auto 1fr}.cards .card[card-color=bg-blue-normal] .text-component ul li::before{background-color:var(--color-blue-normal)}.cards .card[card-color=bg-green-normal] .text-component ul li::before{background-color:var(--color-green-normal)}.cards .card[card-color=bg-orange-normal] .text-component ul li::before{background-color:var(--color-orange-normal)}.cards .card-content{border-color:var(--color-contrast-lower);display:grid;grid-template-rows:1fr auto}.cards .card-content .icon{width:35px;height:35px;border-radius:6px;padding:10px}.cards .card-content .icon svg{width:100%;height:100%}.cards .card-content img{min-height:350px}.cards .card-content .text-component ul{list-style:none;padding-left:0}.cards .card-content .text-component ul li{position:relative;padding-left:var(--space-md);margin-bottom:var(--space-xs)}.cards .card-content .text-component ul li::before{content:"";position:absolute;left:0;top:6px;width:15px;height:15px;border-radius:50%;background-size:7px;background-position:center center;background-repeat:no-repeat;background-image:url("data:image/svg+xml;utf8,<?xml version='1.0' encoding='utf-8'?><svg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'  version='1.1' id='Capa_1' viewBox='0 0 78.369 78.369' xml:space='preserve' fill='%23fff'><g><path d='M78.049,19.015L29.458,67.606c-0.428,0.428-1.121,0.428-1.548,0L0.32,40.015c-0.427-0.426-0.427-1.119,0-1.547l6.704-6.704   c0.428-0.427,1.121-0.427,1.548,0l20.113,20.112l41.113-41.113c0.429-0.427,1.12-0.427,1.548,0l6.703,6.704   C78.477,17.894,78.477,18.586,78.049,19.015z'></path></g></svg>")}.cards .card .card-background{opacity:.5}.cards[data-view=default] .card{min-height:12rem}.cards[data-view=default] svg{fill:var(--color-white)}
.sctn.cta>.container:first-of-type{height:100%}.sctn.cta .cta{background-repeat:no-repeat}@media not all and (min-width:64rem){.sctn.cta .cta{background-position:left bottom!important;background-size:19vw!important}}
.feature li{padding-bottom:var(--space-sm)}.feature div[feature-color=bg-blue-normal] .text-component ul li::before{background-color:var(--color-blue-normal)}.feature div[feature-color=bg-green-normal] .text-component ul li::before{background-color:var(--color-green-normal)}.feature div[feature-color=bg-orange-normal] .text-component ul li::before{background-color:var(--color-orange-normal)}.feature .icon{width:50px;height:50px;border-radius:6px;padding:10px}.feature .icon svg{width:100%;height:100%}.feature .text-component ul{list-style:none;padding-left:0}.feature .text-component ul li{position:relative;padding-left:var(--space-md)}.feature .text-component ul li::before{content:"";position:absolute;left:0;top:6px;width:15px;height:15px;border-radius:50%;background-size:7px;background-position:center center;background-repeat:no-repeat;background-image:url("data:image/svg+xml;utf8,<?xml version='1.0' encoding='utf-8'?><svg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'  version='1.1' id='Capa_1' viewBox='0 0 78.369 78.369' xml:space='preserve' fill='%23fff'><g><path d='M78.049,19.015L29.458,67.606c-0.428,0.428-1.121,0.428-1.548,0L0.32,40.015c-0.427-0.426-0.427-1.119,0-1.547l6.704-6.704   c0.428-0.427,1.121-0.427,1.548,0l20.113,20.112l41.113-41.113c0.429-0.427,1.12-0.427,1.548,0l6.703,6.704   C78.477,17.894,78.477,18.586,78.049,19.015z'></path></g></svg>")}

.hero-logo{margin-left:auto;margin-right:auto;width:100%;max-width:var(--max-width-2xs)}

:root{--slideshow-height:280px;--slideshow-fade-transition-duration:0.25s;--slideshow-slide-transition-duration:0.35s;--slideshow-prx-transition-duration:0.5s;--slideshow-btn-width:1.6em;--slideshow-btn-height:3.2em;--slideshow-btn-icon-size:1.6em;--slideshow-btn-offset:var(--space-xs)}@media(min-width:48rem){:root{--slideshow-height:480px}}@media(min-width:64rem){:root{--slideshow-height:580px}}@media(min-width:80rem){:root{--slideshow-height:680px}}.slideshow__item{display:flex;align-items:center;justify-content:center;height:var(--slideshow-height);background-size:cover;background-repeat:no-repeat;background-position:center center}.slideshow__item:focus{outline:0}.slideshow--ratio-16\:9 .slideshow__item{height:0;padding-bottom:56.25%}.slideshow--ratio-4\:3 .slideshow__item{height:0;padding-bottom:75%}.slideshow--ratio-1\:1 .slideshow__item{height:0;padding-bottom:100%}.slideshow{position:relative;z-index:1;overflow:hidden}.slideshow__content{overflow:hidden;border-radius:var(--radius-lg)}.slideshow__item{position:absolute;z-index:1;top:0;left:0;width:100%;visibility:hidden}.slideshow__item--selected{position:relative;z-index:3;visibility:visible}.slideshow--transition-fade .slideshow__item{opacity:0;transition:opacity 0s var(--slideshow-fade-transition-duration),visibility 0s var(--slideshow-fade-transition-duration)}.slideshow--transition-fade .slideshow__item--selected{opacity:1;transition:opacity var(--slideshow-fade-transition-duration)}.slideshow--transition-slide .slideshow__item{animation-duration:var(--slideshow-slide-transition-duration);animation-fill-mode:forwards;animation-timing-function:var(--ease-out)}.slideshow--transition-slide .slideshow__item>*{visibility:hidden}.slideshow--transition-slide .slideshow__item:not(.slideshow__item--selected) *{transition:none}.slideshow--transition-slide .slideshow__item--selected>*{visibility:visible}.slideshow--transition-slide .slideshow__item--slide-in-left{animation-name:slide-in-left}.slideshow--transition-slide .slideshow__item--slide-in-right{animation-name:slide-in-right}.slideshow--transition-slide .slideshow__item--slide-out-left{animation-name:slide-out-left}.slideshow--transition-slide .slideshow__item--slide-out-right{animation-name:slide-out-right}.slideshow--transition-slide .slideshow__item--slide-out-left,.slideshow--transition-slide .slideshow__item--slide-out-right{z-index:2}.slideshow--transition-slide .slideshow__item--slide-out-left.slideshow__item--selected,.slideshow--transition-slide .slideshow__item--slide-out-right.slideshow__item--selected{z-index:3}.slideshow--transition-slide .slideshow__item--slide-out-left>*,.slideshow--transition-slide .slideshow__item--slide-out-right>*{visibility:visible}@keyframes slide-in-left{0%{visibility:visible;transform:translateX(-100%)}100%{transform:translateX(0)}}@keyframes slide-in-right{0%{visibility:visible;transform:translateX(100%)}100%{transform:translateX(0)}}@keyframes slide-out-left{0%{visibility:visible;transform:translateX(0)}100%{transform:translateX(100%)}}@keyframes slide-out-right{0%{visibility:visible;transform:translateX(0)}100%{transform:translateX(-100%)}}.slideshow--transition-prx .slideshow__item{animation-duration:var(--slideshow-prx-transition-duration);animation-fill-mode:forwards;animation-timing-function:var(--ease-out)}.slideshow--transition-prx .slideshow__item>*{visibility:hidden}.slideshow--transition-prx .slideshow__item--selected>*{visibility:visible}.slideshow--transition-prx .slideshow__item--prx-in-left{animation-name:prx-in-left}.slideshow--transition-prx .slideshow__item--prx-in-right{animation-name:prx-in-right}.slideshow--transition-prx .slideshow__item--prx-out-left{animation-name:prx-out-left}.slideshow--transition-prx .slideshow__item--prx-out-right{animation-name:prx-out-right}.slideshow--transition-prx .slideshow__item--prx-out-left,.slideshow--transition-prx .slideshow__item--prx-out-right{z-index:2}.slideshow--transition-prx .slideshow__item--prx-out-left.slideshow__item--selected,.slideshow--transition-prx .slideshow__item--prx-out-right.slideshow__item--selected{z-index:3}.slideshow--transition-prx .slideshow__item--prx-out-left>*,.slideshow--transition-prx .slideshow__item--prx-out-right>*{visibility:visible}@keyframes prx-in-left{0%{visibility:visible;transform:translateX(-100%)}100%{transform:translateX(0)}}@keyframes prx-in-right{0%{visibility:visible;transform:translateX(100%)}100%{transform:translateX(0)}}@keyframes prx-out-left{0%{opacity:1;visibility:visible;transform:translateX(0)}100%{opacity:.3;transform:translateX(40%)}}@keyframes prx-out-right{0%{opacity:1;visibility:visible;transform:translateX(0)}100%{opacity:.3;transform:translateX(-40%)}}.slideshow[data-swipe=on] .slideshow__content{user-select:none}.slideshow[data-swipe=on] .slideshow__content img{pointer-events:none}.slideshow__control{display:none}.slideshow[data-controls=hover] .slideshow__control{opacity:0;transition:opacity .3s}.slideshow[data-controls=hover]:hover .slideshow__control{opacity:1}.slideshow[data-swipe=on] .slideshow__control{display:none}.slideshow__control{display:block;position:absolute;z-index:4;top:50%;transform:translateY(-50%)}.slideshow__control:first-of-type{left:var(--slideshow-btn-offset)}.slideshow__control:last-of-type{right:var(--slideshow-btn-offset)}@media(min-width:64rem){.slideshow[data-swipe=on] .slideshow__control{display:block}}.slideshow__btn{margin:var(--space-lg);display:block;background-color:hsla(var(--color-black-h),var(--color-black-s),var(--color-black-l),.75);border-radius:var(--radius-md);cursor:pointer;transition:background .2s,transform .2s;padding:var(--space-2xs)}.slideshow__btn:hover{background-color:hsla(var(--color-white-h),var(--color-white-s),var(--color-white-l),.85)}.slideshow__btn:hover .icon{color:var(--color-bg)}.slideshow:not(.slideshow--is-animating) .slideshow__btn:active{transform:translateY(2px)}.slideshow__btn .icon{fill:#eaeaea;border-radius:var(--radius-sm);display:block;width:var(--slideshow-btn-icon-size);height:var(--slideshow-btn-icon-size);margin:0 auto;transition:color .2s;color:var(--color-white)}@supports(grid-area:auto){.slideshow__btn{background-color:#fff}.slideshow__btn .icon{color:var(--color-contrast-higher)}}.slideshow__navigation{position:absolute;z-index:4;bottom:0;width:100%;height:32px;display:flex;justify-content:center;align-items:center;background:rgba(0,0,0,0)}.slideshow__nav-item{display:inline-block;margin:0 var(--space-3xs)}.slideshow__nav-item button{display:block;position:relative;font-size:8px;color:var(--color-contrast-high);height:1em;width:1em;border-radius:50%;background-color:currentColor;opacity:.4;cursor:pointer;transition:background .3s}.slideshow__nav-item button::before{content:"";position:absolute;top:calc(50% - .5em);left:calc(50% - .5em);height:1em;width:1em;font-size:14px;border-radius:inherit;border:1px solid var(--color-contrast-high);opacity:0;transform:scale(0);transition:.3s}.slideshow__nav-item button:focus{outline:0}.slideshow__nav-item button:focus::before{opacity:1;transform:scale(1)}.slideshow__nav-item--selected button{opacity:1}@media(min-width:64rem){.slideshow__navigation{height:20px;background-color:#fff;border-radius:50px;width:auto;left:50%;transform:translateX(-50%);bottom:30px;padding-left:var(--space-2xs);padding-right:var(--space-2xs)}.slideshow__nav-item button{font-size:10px}.slideshow__nav-item button::before{font-size:16px}}
.tabs{border-radius:40px;padding:var(--space-lg)}.tabs__control{text-decoration:none;color:var(--color-black);border-radius:100rem;padding:var(--space-2xs);font-size:var(--text-sm)}.tabs__control:focus{outline:2px solid hsla(var(--color-black-h),var(--color-black-s),var(--color-black-l),.1);outline-offset:2px}.tabs__control:hover{color:var(--color-contrast-high)}.tabs__control[aria-selected=false]{background-color:rgba(0,0,0,0)}.tabs__control[aria-selected=true]{color:var(--color-contrast-high);z-index:2;opacity:1;width:100%;height:4px;transition:all .3s;inset:auto auto -1% 0}

.usp .card{background-color:var(--color-white);border-radius:var(--radius-lg);box-shadow:none}.usp div.icon{width:3rem;height:3rem;background-color:var(--color-bg-darker)}.usp div.icon svg{font-size:2rem;fill:var(--color-white)}.usp .icon.color-primary svg{fill:var(--color-primary)}.usp .text-component p{font-size:var(--text-base);line-height:var(--body-line-height);min-height:calc(var(--body-line-height)*var(--text-base)*2)}
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFjY29yZGlvbi9zY3NzL2FjY29yZGlvbi5zY3NzIiwiYXJjaGl2ZS9zY3NzL2FyY2hpdmUuc2NzcyIsImNvbnRlbnQvc2Nzcy9jb250ZW50LnNjc3MiLCJjYXJkcy9zY3NzL2NhcmRzLnNjc3MiLCJjdGEvc2Nzcy9jdGEuc2NzcyIsIi4uL3Nhc3MvY29keWZyYW1lL2Jhc2UvX2NvbmZpZy5zY3NzIiwiZmVhdHVyZS9zY3NzL2ZlYXR1cmUuc2NzcyIsIi4uL2Zvcm0uY3NzIiwiaGVyby9zY3NzL2hlcm8uc2NzcyIsIi4uL3ByaWNpbmcuY3NzIiwic2xpZGVyL3Njc3Mvc2xpZGVyLnNjc3MiLCJ0YWJzL3Njc3MvdGFicy5zY3NzIiwiLi4vdGVzdGltb25pYWwuY3NzIiwidXNwL3Njc3MvdXNwLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRVEsNENBQ0ksUUFBQSxHQUNBLE9BQUEsSUFDQSxNQUFBLElBQ0EsWUFBQSxLQUNBLGFBQUEsS0FDQSxRQUFBLE1BQ0EsaUJBQUEsZ0JBQ0EsY0FBQTtBQ1ZWLFFBRUUsY0FBQSxpQkFDQSxRQUFBLGdCQUNBLFNBQUEsU0FHSSwrQkFDSSxRQUFBLE1BQ0EsU0FBQSxPQUNBLE1BQUEsS0FDQSxPQUFBLE1BQ0EsV0FBQSxRQUNBLFdBQUEsVUFBQSxJQUFBLElBQUEsQ0FBQSxPQUFBLElBQUEsS0FLWixxQ0FDSSxVQUFBLFdBQ0EsT0FBQSxpQkFHQSxVQUNJLGdCQUFBLEtBR0osbUJBQ0ksVUFBQSxlQWdCUixVQUNFLFFBQUEsSUFBQSxLQUNBLGNBQUEsS0FDQSxVQUFBLGVBQ0EsU0FBQSxTQUNBLElBQUEsR0FDQSxNQUFBLEdBQ0EsUUFBQSxFQUNBLFFBQUEsYUFDQSxhQUFBLE1BR0UsbUNBQ0UsaUJBeEJjLDBCQXVCaEIsNEJBQ0UsaUJBeEJjLDBCQXVCaEIsOEJBQ0UsaUJBeEJjLDBCQXVCaEIsbUNBQ0UsaUJBeEJjLHlCQXVCaEIsdUNBQ0UsaUJBeEJjLHlCQXVCaEIsaUNBQ0UsaUJBeEJjLHdCQXVCaEIs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QUE7QUN6YlIsTUFDRSxjQUFBLEtBQ0EsUUFBQSxnQkFJRixlQUNFLGdCQUFBLEtBQ0EsTUFBQSxtQkFDRCxjQUFBLE9BQ0MsUUFBQSxpQkFDQSxVQUFBLGVBR0EscUJBQ0UsUUFBQSxJQUFBLE1BQUEsd0VBQ0EsZUFBQSxJQUdGLHFCQUNFLE1BQUEsMkJBTUosb0NBQ0UsaUJBQUEsY0FHRixtQ0FDRSxNQUFBLDJCQUVFLFFBQUEsRUFDQSxRQUFBLEVBRUEsTUFBQSxLQUNBLE9BQUEsSUFDQSxXQUFBLElBQUEsSUFFQSxNQUFBLEtBQUEsS0FBQSxJQUFBO0FDcERKO0FDRUksV0FDSSxpQkFBQSxtQkFDQSxjQUFBLGlCQUNBLFdBQUEsS0FJSixjQUNJLE1BQUEsS0FDQSxPQUFBLEtBQ0EsaUJBQUEsdUJBRUEsa0JBQ0ksVUFBQSxLQUNBLEtBQUEsbUJBSVIsNkJBQ0ksS0FBQSxxQkFJQSx1QkFDSSxVQUFBLGlCQUNBLFlBQUEsd0JBQ0EsV0FBQSIsImZpbGUiOiJjb21wb25lbnRzLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi5zY3RuLmFjY29yZGlvbiB7XG4gICAgLmFjY29yZGlvbi12Ml9fcGFuZWwge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgICB3aWR0aDogOTglO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnKTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLW1kKTtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIgIGFydGljbGUge1xuXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWxnKTtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS1tZCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5wcmV2aWV3LXRodW1ibmFpbCB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMjMwcHg7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNHMgZWFzZSwgZmlsdGVyIDAuNHMgZWFzZTtcblxuICAgICAgICB9XG4gICAgfVxuXG4mOmhvdmVyIC5wcmV2aWV3LXRodW1ibmFpbCBpbWcge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMS4wNSk7XG4gIH1cbiAgICBcbiAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgIC5wb3N0LW1ldGEge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXRleHQtc20pO1xuICAgIH1cblxufVxuXG4gICRjYXRlZ29yeS1jb2xvcnM6IChcbiAgaHVtYW4tcmVzb3VyY2VzOiB2YXIoLS1jb2xvci1vcmFuZ2UtbGlnaHQpLFxuICBwZXJzb25hbDogdmFyKC0tY29sb3Itb3JhbmdlLWxpZ2h0KSxcbiAgcmVjcnVpdGluZzogdmFyKC0tY29sb3Itb3JhbmdlLWxpZ2h0KSxcbiAgd2FyZW53aXJ0c2NoYWZ0OiB2YXIoLS1jb2xvci1ncmVlbi1saWdodCksXG4gIGtvbnRha3RlLWFicmVjaG51bmc6IHZhcigtLWNvbG9yLWdyZWVuLWxpZ2h0KSxcbiAgemVpdGVyZmFzc3VuZzogdmFyKC0tY29sb3ItYmx1ZS1saWdodCksXG4gIHRpY2tldHN5c3RlbTogdmFyKC0tY29sb3ItYmx1ZS1saWdodCksXG4gIHByb2pla3RtYW5hZ2VtZW50OiB2YXIoLS1jb2xvci1ibHVlLWxpZ2h0KVxuKTtcblxuLnBvc3QtY2F0IHtcbiAgcGFkZGluZzogNXB4IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gIGZvbnQtc2l6ZTogdmFyKC0tdGV4dC14cyk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOjIlOyAgXG4gIHJpZ2h0OiAyJTsgXG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG5cbiAgQGVhY2ggJHNsdWcsICRjb2xvciBpbiAkY2F0ZWdvcnktY29sb3JzIHtcbiAgICAmLmNhdGVnb3J5LSN7JHNsdWd9IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cbn0iLCIuc2N0bi5jb250ZW50IHsgICAgXG4gICAgLmljb24ge1xuICAgICAgICB3aWR0aDogMy4xMjVyZW07XG4gICAgICAgIGhlaWdodDogMy4xMjVyZW07XG4gICAgfVxuXG4gICAgLmpvYnMge1xuICAgICAgICAuam9iIHtcbiAgICAgICAgICAgIC5hcnJvdyB7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgLmFycm93IHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNweCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi5jYXJkcyB7XG4gICAgLmNhcmQge1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG87XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byAxZnI7XG5cbiAgICAgICAgJltjYXJkLWNvbG9yPVwiYmctYmx1ZS1ub3JtYWxcIl0ge1xuICAgICAgICAgICAgLnRleHQtY29tcG9uZW50IHtcbiAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmx1ZS1ub3JtYWwpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICZbY2FyZC1jb2xvcj1cImJnLWdyZWVuLW5vcm1hbFwiXSB7XG4gICAgICAgICAgICAudGV4dC1jb21wb25lbnQge1xuICAgICAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmVlbi1ub3JtYWwpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICZbY2FyZC1jb2xvcj1cImJnLW9yYW5nZS1ub3JtYWxcIl0ge1xuICAgICAgICAgICAgLnRleHQtY29tcG9uZW50IHtcbiAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itb3JhbmdlLW5vcm1hbCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLWNvbnRlbnQge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1jb250cmFzdC1sb3dlcik7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnIgYXV0bztcblxuICAgICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweDtcblxuICAgICAgICAgICAgICAgIHN2Z3tcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMzUwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50ZXh0LWNvbXBvbmVudCB7XG4gICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjZS1tZCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS14cyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA3cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDw/eG1sIHZlcnNpb249JzEuMCcgZW5jb2Rpbmc9J3V0Zi04Jz8+PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHhtbG5zOnhsaW5rPSdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rJyAgdmVyc2lvbj0nMS4xJyBpZD0nQ2FwYV8xJyB2aWV3Qm94PScwIDAgNzguMzY5IDc4LjM2OScgeG1sOnNwYWNlPSdwcmVzZXJ2ZScgZmlsbD0nJTIzZmZmJz48Zz48cGF0aCBkPSdNNzguMDQ5LDE5LjAxNUwyOS40NTgsNjcuNjA2Yy0wLjQyOCwwLjQyOC0xLjEyMSwwLjQyOC0xLjU0OCwwTDAuMzIsNDAuMDE1Yy0wLjQyNy0wLjQyNi0wLjQyNy0xLjExOSwwLTEuNTQ3bDYuNzA0LTYuNzA0ICAgYzAuNDI4LTAuNDI3LDEuMTIxLTAuNDI3LDEuNTQ4LDBsMjAuMTEzLDIwLjExMmw0MS4xMTMtNDEuMTEzYzAuNDI5LTAuNDI3LDEuMTItMC40MjcsMS41NDgsMGw2LjcwMyw2LjcwNCAgIEM3OC40NzcsMTcuODk0LDc4LjQ3NywxOC41ODYsNzguMDQ5LDE5LjAxNXonPjwvcGF0aD48L2c+PC9zdmc+XCIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYgLmNhcmQtYmFja2dyb3VuZCB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmW2RhdGEtdmlldz1cImRlZmF1bHRcIl0ge1xuICAgICAgICAuY2FyZCB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxMnJlbTtcbiAgICAgICAgfVxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgZmlsbDogdmFyKC0tY29sb3Itd2hpdGUpO1xuICAgICAgICB9XG4gICAgfVxufSIsIkB1c2UgJy4vLi4vLi4vLi4vc2Fzcy9jb2R5ZnJhbWUvYmFzZS9jb25maWcnIGFzICo7XG5cbi5zY3RuLmN0YSB7XG4gICAgLy8gbWluLWhlaWdodDogMzRyZW07XG5cbiAgICA+IC5jb250YWluZXI6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICAuY3RhIHtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblxuICAgICAgICBAaW5jbHVkZSBtYXgtd2lkdGgobWQpe1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBib3R0b20gIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTl2dyAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxufSIsIkB1c2UgJ3Nhc3M6bWF0aCc7XG5AdXNlICdzYXNzOnN0cmluZyc7XG5AdXNlICdzYXNzOmxpc3QnO1xuQHVzZSAnc2FzczptYXAnO1xuQHVzZSAnc2FzczptZXRhJztcblxuLy8gZnVuY3Rpb25zXG5AZnVuY3Rpb24gc3RyLXJlbW92ZS13aGl0ZXNwYWNlKCRzdHIpIHtcbiAgQHdoaWxlIChzdHJpbmcuaW5kZXgoJHN0ciwgJyAnKSAhPSBudWxsKSB7XG4gICAgJGluZGV4OiBzdHJpbmcuaW5kZXgoJHN0ciwgJyAnKTtcbiAgICAkc3RyOiBcIiN7c3RyaW5nLnNsaWNlKCRzdHIsIDAsICRpbmRleCAtIDEpfSN7c3RyaW5nLnNsaWNlKCRzdHIsICRpbmRleCArIDEpfVwiO1xuICB9XG4gIEByZXR1cm4gJHN0cjtcbn1cblxuQGZ1bmN0aW9uIHN0ci1yZXBsYWNlKCRzdHJpbmcsICRzZWFyY2gsICRyZXBsYWNlOiAnJykge1xuICAkaW5kZXg6IHN0cmluZy5pbmRleCgkc3RyaW5nLCAkc2VhcmNoKTtcbiAgQGlmICRpbmRleCB7XG4gICAgQHJldHVybiBzdHJpbmcuc2xpY2UoJHN0cmluZywgMSwgJGluZGV4IC0gMSkgKyAkcmVwbGFjZSArIHN0ci1yZXBsYWNlKHN0cmluZy5zbGljZSgkc3RyaW5nLCAkaW5kZXggKyBzdHJpbmcubGVuZ3RoKCRzZWFyY2gpKSwgJHNlYXJjaCwgJHJlcGxhY2UpO1xuICB9XG4gIEByZXR1cm4gJHN0cmluZztcbn1cblxuQGZ1bmN0aW9uIGdldC1oc2wtdmFsdWVzKCRoc2wpIHtcbiAgJGluZGV4LTE6IHN0cmluZy5pbmRleCgkaHNsLCBcIixcIik7XG4gICRodWU6IHN0cmluZy5zbGljZSgkaHNsLCAxLCAkaW5kZXgtMSAtIDEpO1xuICAkbGlzdDogKCN7JGh1ZX0pO1xuICAkcmVtYWluaW5nOiBzdHJpbmcuc2xpY2UoJGhzbCwgJGluZGV4LTEgKyAxLCAtMSk7XG4gICRpbmRleC0yOiBzdHJpbmcuaW5kZXgoJHJlbWFpbmluZywgXCIsXCIpO1xuICAkc2F0dXJhdGlvbjogc3RyLXJlbW92ZS13aGl0ZXNwYWNlKHN0cmluZy5zbGljZSgkcmVtYWluaW5nLCAxLCAkaW5kZXgtMiAtIDEpKTtcbiAgJGxpc3Q6IGxpc3QuYXBwZW5kKCRsaXN0LCAjeyRzYXR1cmF0aW9ufSk7XG4gICRyZW1haW5pbmc6IHN0ci1yZW1vdmUtd2hpdGVzcGFjZShzdHJpbmcuc2xpY2UoJHJlbWFpbmluZywgJGluZGV4LTIgKyAxLCAtMSkpO1xuICAkbGlzdDogbGlzdC5hcHBlbmQoJGxpc3QsICN7JHJlbWFpbmluZ30pO1xuICBAcmV0dXJuICRsaXN0O1xufVxuXG4vLyByZXR1cm4gY29sb3Igd2l0aCBkaWZmZXJlbnQgb3BhY2l0eSB2YWx1ZVxuQGZ1bmN0aW9uIGFscGhhKCRjb2xvciwgJGFscGhhKSB7XG4gICRjb2xvcjogc3RyLXJlcGxhY2UoJGNvbG9yLCAndmFyKCcpO1xuICAkY29sb3I6IHN0ci1yZXBsYWNlKCRjb2xvciwgJyknKTtcbiAgJGNvbG9yLWg6IHZhcigjeyRjb2xvcisnLWgnfSk7XG4gICRjb2xvci1zOiB2YXIoI3skY29sb3IrJy1zJ30pO1xuICAkY29sb3ItbDogdmFyKCN7JGNvbG9yKyctbCd9KTtcbiAgQHJldHVybiBoc2xhKCRjb2xvci1oLCAkY29sb3ItcywgJGNvbG9yLWwsICRhbHBoYSk7XG59XG5cbi8vIHJldHVybiBjb2xvciB3aXRoIGRpZmZlcmVudCBsaWdodG5lc3MgdmFsdWVcbkBmdW5jdGlvbiBsaWdodG5lc3MoJGNvbG9yLCAkbGlnaHRuZXNzLW11bHRpcGxpZXIpIHtcbiAgJGNvbG9yOiBzdHItcmVwbGFjZSgkY29sb3IsICd2YXIoJyk7XG4gICRjb2xvcjogc3RyLXJlcGxhY2UoJGNvbG9yLCAnKScpO1xuICAkY29sb3ItaDogdmFyKCN7JGNvbG9yKyctaCd9KTtcbiAgJGNvbG9yLXM6IHZhcigjeyRjb2xvcisnLXMnfSk7XG4gICRjb2xvci1sOiB2YXIoI3skY29sb3IrJy1sJ30pO1xuICBAcmV0dXJuIGhzbCgkY29sb3ItaCwgJGNvbG9yLXMsIGNhbGMoI3skY29sb3ItbH0gKiAjeyRsaWdodG5lc3MtbXVsdGlwbGllcn0pKTtcbn1cblxuLy8gbW9kaWZ5IGNvbG9yIEhTTEEgdmFsdWVzXG5AZnVuY3Rpb24gYWRqdXN0LWhzbGEoJGNvbG9yLCAkaHVlLW11bHRpcGxpZXI6IDEsICRzYXR1cmF0aW9uLW11bHRpcGxpZXI6IDEsICRsaWdodG5lc3MtbXVsdGlwbGllcjogMSwgJGFscGhhOiAxKSB7XG4gICRjb2xvcjogc3RyLXJlcGxhY2UoJGNvbG9yLCAndmFyKCcpO1xuICAkY29sb3I6IHN0ci1yZXBsYWNlKCRjb2xvciwgJyknKTtcbiAgJGNvbG9yLWg6IHZhcigjeyRjb2xvcisnLWgnfSk7XG4gICRjb2xvci1zOiB2YXIoI3skY29sb3IrJy1zJ30pO1xuICAkY29sb3ItbDogdmFyKCN7JGNvbG9yKyctbCd9KTtcbiAgQHJldHVybiBoc2xhKGNhbGMoI3skY29sb3ItaH0gKiAjeyRodWUtbXVsdGlwbGllcn0pLCBjYWxjKCN7JGNvbG9yLXN9ICogI3skc2F0dXJhdGlvbi1tdWx0aXBsaWVyfSksIGNhbGMoI3skY29sb3ItbH0gKiAjeyRsaWdodG5lc3MtbXVsdGlwbGllcn0pLCAkYWxwaGEpO1xufVxuXG5AZnVuY3Rpb24gdG8tbnVtYmVyKCR2YWx1ZSkge1xuICBAaWYgbWV0YS50eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9IEBlbHNlIGlmIG1ldGEudHlwZS1vZigkdmFsdWUpICE9ICdzdHJpbmcnIHtcbiAgICAkXzogbG9nKCdWYWx1ZSBmb3IgYHRvLW51bWJlcmAgc2hvdWxkIGJlIGEgbnVtYmVyIG9yIGEgc3RyaW5nLicpO1xuICB9XG4gIFxuICAkcmVzdWx0OiAwO1xuICAkZGlnaXRzOiAwO1xuICAkbWludXM6IHN0cmluZy5zbGljZSgkdmFsdWUsIDEsIDEpID09ICctJztcbiAgJG51bWJlcnM6ICgnMCc6IDAsICcxJzogMSwgJzInOiAyLCAnMyc6IDMsICc0JzogNCwgJzUnOiA1LCAnNic6IDYsICc3JzogNywgJzgnOiA4LCAnOSc6IDkpO1xuICBcbiAgQGZvciAkaSBmcm9tIGlmKCRtaW51cywgMiwgMSkgdGhyb3VnaCBzdHJpbmcubGVuZ3RoKCR2YWx1ZSkge1xuICAgICRjaGFyYWN0ZXI6IHN0cmluZy5zbGljZSgkdmFsdWUsICRpLCAkaSk7XG4gICAgXG4gICAgQGlmIG5vdCAobGlzdC5pbmRleChtYXAua2V5cygkbnVtYmVycyksICRjaGFyYWN0ZXIpIG9yICRjaGFyYWN0ZXIgPT0gJy4nKSB7XG4gICAgICBAcmV0dXJuIHRvLWxlbmd0aChpZigkbWludXMsIC0kcmVzdWx0LCAkcmVzdWx0KSwgc3RyaW5nLnNsaWNlKCR2YWx1ZSwgJGkpKVxuICAgIH1cbiAgICBcbiAgICBAaWYgJGNoYXJhY3RlciA9PSAnLicge1xuICAgICAgJGRpZ2l0czogMTsgXG4gICAgfSBAZWxzZSBpZiAkZGlnaXRzID09IDAge1xuICAgICAgJHJlc3VsdDogJHJlc3VsdCAqIDEwICsgbWFwLmdldCgkbnVtYmVycywgJGNoYXJhY3Rlcik7ICBcbiAgICB9IEBlbHNlIHtcbiAgICAgICRkaWdpdHM6ICRkaWdpdHMgKiAxMDtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKyBtYXRoLmRpdihtYXAuZ2V0KCRudW1iZXJzLCAkY2hhcmFjdGVyKSwgJGRpZ2l0cyk7XG4gICAgfVxuICB9XG4gIFxuICBAcmV0dXJuIGlmKCRtaW51cywgLSRyZXN1bHQsICRyZXN1bHQpOztcbn1cblxuQGZ1bmN0aW9uIHRvLWxlbmd0aCgkdmFsdWUsICR1bml0KSB7XG4gICR1bml0czogKCdweCc6IDFweCwgJ2NtJzogMWNtLCAnbW0nOiAxbW0sICclJzogMSUsICdjaCc6IDFjaCwgJ3BjJzogMXBjLCAnaW4nOiAxaW4sICdlbSc6IDFlbSwgJ3JlbSc6IDFyZW0sICdwdCc6IDFwdCwgJ2V4JzogMWV4LCAndncnOiAxdncsICd2aCc6IDF2aCwgJ3ZtaW4nOiAxdm1pbiwgJ3ZtYXgnOiAxdm1heCk7XG4gIFxuICBAaWYgbm90IGxpc3QuaW5kZXgobWFwLmtleXMoJHVuaXRzKSwgJHVuaXQpIHtcbiAgICAkXzogbG9nKCdJbnZhbGlkIHVuaXQgYCN7JHVuaXR9YC4nKTtcbiAgfVxuICBcbiAgQHJldHVybiAkdmFsdWUgKiBtYXAuZ2V0KCR1bml0cywgJHVuaXQpO1xufVxuXG4vLyBkZWZpbmUgSFNMIGNvbG9yIHZhcmlhYmxlXG5AbWl4aW4gZGVmaW5lLWhzbC1jb2xvcigkY29sb3IsICRodWUsICRzYXR1cmF0aW9uLCAkbGlnaHRuZXNzKSB7XG4gICN7JGNvbG9yfS1oOiAjeyRodWV9OyN7JGNvbG9yfS1zOiAjeyRzYXR1cmF0aW9ufTsjeyRjb2xvcn0tbDogI3skbGlnaHRuZXNzfTsjeyRjb2xvcn06IGhzbCh2YXIoI3skY29sb3J9LWgpLCB2YXIoI3skY29sb3J9LXMpLCB2YXIoI3skY29sb3J9LWwpKTtcbn1cblxuLy8gYWRkIGEgcHJlZml4IHRvIGFsbCB0aGUgdXRpbGl0eSBjbGFzc2VzXG4kdXRpbC1wcmVmaXg6ICcnICFkZWZhdWx0O1xuXG4vLyBicmVha3BvaW50c1xuJGJyZWFrcG9pbnRzOiAoXG4gICd4cyc6ICczMnJlbScsXG4gICdzbSc6ICc0OHJlbScsXG4gICdtZCc6ICc2NHJlbScsXG4gICdsZyc6ICc4MHJlbScsXG4gICd4bCc6ICc5MHJlbSdcbikgIWRlZmF1bHQ7XG5cbkBtaXhpbiBtaW4td2lkdGgoJGJyZWFrcG9pbnQpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6IG1hcC5nZXQoJG1hcDogJGJyZWFrcG9pbnRzLCAka2V5OiAkYnJlYWtwb2ludCkpIHsgQGNvbnRlbnQ7IH1cbn1cblxuQG1peGluIG1heC13aWR0aCgkYnJlYWtwb2ludCkge1xuICBAbWVkaWEgbm90IGFsbCBhbmQgKG1pbi13aWR0aDogbWFwLmdldCgkbWFwOiAkYnJlYWtwb2ludHMsICRrZXk6ICRicmVha3BvaW50KSkgeyBAY29udGVudDsgfVxufVxuXG4vLyBncmlkXG4kZ3JpZC1jb2x1bW5zOiAxMiAhZGVmYXVsdDtcblxuLy8gc3BhY2luZ1xuJHNwYWNpbmc6IChcbiAgJ2ZsdWlkJzogKFxuICAgICdAc20nOiAoXG4gICAgICAnNHhzJzogJzAuMTI1cmVtJyxcbiAgICAgICczeHMnOiAnMC4yNXJlbScsXG4gICAgICAnMnhzJzogJzAuNXJlbScsXG4gICAgICAneHMnOiAnMC43NXJlbScsXG4gICAgICAnc20nOiAnMXJlbScsXG4gICAgICAnbWQnOiAnMS41cmVtJyxcbiAgICAgICdsZyc6ICcyLjI1cmVtJyxcbiAgICAgICd4bCc6ICczLjVyZW0nLFxuICAgICAgJzJ4bCc6ICc1Ljc1cmVtJyxcbiAgICAgICczeGwnOiAnOS4yNXJlbScsXG4gICAgICAnNHhsJzogJzE1cmVtJyxcbiAgICApLFxuICAgICdAbGcnOiAoXG4gICAgICAnNHhzJzogJzAuMTI1cmVtJyxcbiAgICAgICczeHMnOiAnMC4yNXJlbScsXG4gICAgICAnMnhzJzogJzAuNXJlbScsXG4gICAgICAneHMnOiAnMC43NXJlbScsXG4gICAgICAnc20nOiAnMXJlbScsXG4gICAgICAnbWQnOiAnMS43NXJlbScsXG4gICAgICAnbGcnOiAnMi4yNXJlbScsXG4gICAgICAneGwnOiAnNXJlbScsXG4gICAgICAnMnhsJzogJzhyZW0nLFxuICAgICAgJzN4bCc6ICcxMi4yNXJlbScsXG4gICAgICAnNHhsJzogJzIwcmVtJyxcbiAgICApXG4gIClcbikgIWRlZmF1bHQ7XG5cbi8vIGZvbnQtZmFtaWx5XG4kZm9udC1mYW1pbHk6IChcbiAgJ3ByaW1hcnknOiAnc3lzdGVtLXVpLCBzYW5zLXNlcmlmJ1xuKSAhZGVmYXVsdDtcblxuLy8gZm9udC1zaXplXG4kZm9udC1zaXplOiAoXG4gICdmbHVpZCc6IChcbiAgICAnQHNtJzogKFxuICAgICAgJ3hzJzogJzAuNzVyZW0nLFxuICAgICAgJ3NtJzogJzAuODc1cmVtJyxcbiAgICAgICdiYXNlJzogJzFyZW0nLFxuICAgICAgJ21kJzogJzEuMjVyZW0nLFxuICAgICAgJ2xnJzogJzEuMzc1cmVtJyxcbiAgICAgICd4bCc6ICcxLjc1cmVtJyxcbiAgICAgICcyeGwnOiAnMnJlbScsXG4gICAgICAnM3hsJzogJzIuMzc1cmVtJyxcbiAgICAgICc0eGwnOiAnM3JlbScsXG4gICAgKSxcbiAgICAnQGxnJzogKFxuICAgICAgJ3hzJzogJzAuNzVyZW0nLFxuICAgICAgJ3NtJzogJzAuODc1cmVtJyxcbiAgICAgICdiYXNlJzogJzFyZW0nLFxuICAgICAgJ21kJzogJzEuMjVyZW0nLFxuICAgICAgJ2xnJzogJzEuMzc1cmVtJyxcbiAgICAgICd4bCc6ICcxLjc1cmVtJyxcbiAgICAgICcyeGwnOiAnMnJlbScsXG4gICAgICAnM3hsJzogJzIuMzc1cmVtJyxcbiAgICAgICc0eGwnOiAnMy42MjVyZW0nLFxuICAgIClcbiAgKVxuKSAhZGVmYXVsdDtcblxuLy8gbGluZS1oZWlnaHRcbiRsaW5lLWhlaWdodDogKFxuICAneHMnOiAnMS4zMzMnLFxuICAnc20nOiAnMS4zNTcnLFxuICAnYmFzZSc6ICcxLjYyNScsXG4gICdtZCc6ICcxLjQnLFxuICAnbGcnOiAnMS4zMTgnLFxuICAneGwnOiAnMS4zMjEnLFxuICAnMnhsJzogJzEuMzQ0JyxcbiAgJzN4bCc6ICcxLjMxNScsXG4pICFkZWZhdWx0O1xuXG4vLyBjb2xvcnNcbiRjb2xvcnM6IChcbiAgJ2RlZmF1bHQnOiAoXG4gICAgJ2JsdWUnOiAoXG4gICAgICAnbm9ybWFsJzogJzIyNiwgMTAwJSwgODIlJyxcbiAgICAgICdsaWdodCc6ICcyMjgsIDc4JSwgOTMlJ1xuICAgICksXG4gICAgJ29yYW5nZSc6IChcbiAgICAgICdub3JtYWwnOiAnMzAsIDg3JSwgNjIlJyxcbiAgICAgICdsaWdodCc6ICcyOCwgODUlLCA4NCUnXG4gICAgKSxcbiAgICAnZ3JlZW4nOiAoXG4gICAgICAnbm9ybWFsJzogJzE0MywgMzYlLCA2NSUnLFxuICAgICAgJ2xpZ2h0JzogJzE0MywgNDYlLCA4MiUnXG4gICAgKSxcbiAgICAncHJpbWFyeSc6IChcbiAgICAgICdkYXJrZXInOiAnMjUwLCA4NCUsIDM4JScsXG4gICAgICAnZGFyayc6ICcyNTAsIDg0JSwgNDYlJyxcbiAgICAgICdiYXNlJzogJzI1MCwgODQlLCA1NCUnLFxuICAgICAgJ2xpZ2h0JzogJzI1MCwgODQlLCA2MCUnLFxuICAgICAgJ2xpZ2h0ZXInOiAnMjUwLCA4NCUsIDY3JSdcbiAgICApLFxuICAgICdhY2NlbnQnOiAoXG4gICAgICAnZGFya2VyJzogJzM0MiwgODklLCAzOCUnLFxuICAgICAgJ2RhcmsnOiAnMzQyLCA4OSUsIDQzJScsXG4gICAgICAnYmFzZSc6ICczNDIsIDg5JSwgNDglJyxcbiAgICAgICdsaWdodCc6ICczNDIsIDg5JSwgNTYlJyxcbiAgICAgICdsaWdodGVyJzogJzM0MiwgODklLCA2MiUnXG4gICAgKSxcbiAgICAnYmxhY2snOiAoXG4gICAgICAnZGVmYXVsdCc6ICcxODAsIDI5JSwgMyUnLFxuICAgICAgJ2Jhc2UnOiAnMjMwLCAxMyUsIDklJyxcbiAgICAgICdmb250JzogJzAsIDAlLCA4JScsXG4gICAgICAnaGVhZGxpbmUnOiAnMCwgMCUsIDI0JSdcbiAgICApLFxuICAgICd3aGl0ZSc6IChcbiAgICAgICdiYXNlJzogJzAsIDAlLCAxMDAlJ1xuICAgICksXG4gICAgJ3dhcm5pbmcnOiAoXG4gICAgICAnZGFya2VyJzogJzM1LCA3OSUsIDQ4JScsXG4gICAgICAnZGFyayc6ICczNSwgNzklLCA1NiUnLFxuICAgICAgJ2Jhc2UnOiAnMzUsIDc5JSwgNjYlJyxcbiAgICAgICdsaWdodCc6ICczNSwgNzklLCA3NCUnLFxuICAgICAgJ2xpZ2h0ZXInOiAnMzUsIDc5JSwgODIlJ1xuICAgICksXG4gICAgJ3N1Y2Nlc3MnOiAoXG4gICAgICAnZGFya2VyJzogJzE3MCwgNzglLCAyNiUnLFxuICAgICAgJ2RhcmsnOiAnMTcwLCA3OCUsIDMxJScsXG4gICAgICAnYmFzZSc6ICcxNzAsIDc4JSwgMzYlJyxcbiAgICAgICdsaWdodCc6ICcxNzAsIDc4JSwgNDIlJyxcbiAgICAgICdsaWdodGVyJzogJzE3MCwgNzglLCA0NyUnXG4gICAgKSxcbiAgICAnZXJyb3InOiAoXG4gICAgICAnZGFya2VyJzogJzM0MiwgODklLCAzOCUnLFxuICAgICAgJ2RhcmsnOiAnMzQyLCA4OSUsIDQzJScsXG4gICAgICAnYmFzZSc6ICczNDIsIDg5JSwgNDglJyxcbiAgICAgICdsaWdodCc6ICczNDIsIDg5JSwgNTYlJyxcbiAgICAgICdsaWdodGVyJzogJzM0MiwgODklLCA2MiUnXG4gICAgKSxcbiAgICAnYmcnOiAoXG4gICAgICAnZGFya2VyJzogJzAsIDAlLCA4NyUnLFxuICAgICAgJ2RhcmsnOiAnMjQwLCA0JSwgOTUlJyxcbiAgICAgICdiYXNlJzogJzAsIDAlLCA5NyUnLFxuICAgICAgJ2xpZ2h0JzogJzAsIDAlLCAxMDAlJyxcbiAgICAgICdsaWdodGVyJzogJzAsIDAlLCAxMDAlJ1xuICAgICksXG4gICAgJ2NvbnRyYXN0JzogKFxuICAgICAgJ2xvd2VyJzogJzI0MCwgNCUsIDg1JScsXG4gICAgICAnbG93JzogJzI0MCwgNCUsIDY1JScsXG4gICAgICAnbWVkaXVtJzogJzAsIDAlLCAzNiUnLFxuICAgICAgJ2hpZ2gnOiAnMjMwLCA3JSwgMjMlJyxcbiAgICAgICdoaWdoZXInOiAnMjMwLCAxMyUsIDklJ1xuICAgIClcbiAgKSxcbiAgJ2RhcmsnOiAoXG4gICAgJ3ByaW1hcnknOiAoXG4gICAgICAnZGFya2VyJzogJzI1MCwgMTAwJSwgNjAlJyxcbiAgICAgICdkYXJrJzogJzI1MCwgMTAwJSwgNjQlJyxcbiAgICAgICdiYXNlJzogJzI1MCwgMTAwJSwgNjklJyxcbiAgICAgICdsaWdodCc6ICcyNTAsIDEwMCUsIDcyJScsXG4gICAgICAnbGlnaHRlcic6ICcyNTAsIDEwMCUsIDc2JSdcbiAgICApLFxuICAgICdhY2NlbnQnOiAoXG4gICAgICAnZGFya2VyJzogJzM0MiwgOTIlLCA0MSUnLFxuICAgICAgJ2RhcmsnOiAnMzQyLCA5MiUsIDQ3JScsXG4gICAgICAnYmFzZSc6ICczNDIsIDkyJSwgNTQlJyxcbiAgICAgICdsaWdodCc6ICczNDIsIDkyJSwgNjAlJyxcbiAgICAgICdsaWdodGVyJzogJzM0MiwgOTIlLCA2NSUnXG4gICAgKSxcbiAgICAnYmxhY2snOiAoXG4gICAgICAnYmFzZSc6ICcyMzAsIDEzJSwgOSUnXG4gICAgKSxcbiAgICAnd2hpdGUnOiAoXG4gICAgICAnYmFzZSc6ICcwLCAwJSwgMTAwJSdcbiAgICApLFxuICAgICd3YXJuaW5nJzogKFxuICAgICAgJ2Rhcmtlcic6ICczNSwgNzklLCA0OCUnLFxuICAgICAgJ2RhcmsnOiAnMzUsIDc5JSwgNTYlJyxcbiAgICAgICdiYXNlJzogJzM1LCA3OSUsIDY2JScsXG4gICAgICAnbGlnaHQnOiAnMzUsIDc5JSwgNzQlJyxcbiAgICAgICdsaWdodGVyJzogJzM1LCA3OSUsIDgyJSdcbiAgICApLFxuICAgICdzdWNjZXNzJzogKFxuICAgICAgJ2Rhcmtlcic6ICcxNzAsIDc4JSwgMjYlJyxcbiAgICAgICdkYXJrJzogJzE3MCwgNzglLCAzMSUnLFxuICAgICAgJ2Jhc2UnOiAnMTcwLCA3OCUsIDM2JScsXG4gICAgICAnbGlnaHQnOiAnMTcwLCA3OCUsIDQyJScsXG4gICAgICAnbGlnaHRlcic6ICcxNzAsIDc4JSwgNDclJ1xuICAgICksXG4gICAgJ2Vycm9yJzogKFxuICAgICAgJ2Rhcmtlcic6ICczNDIsIDkyJSwgNDElJyxcbiAgICAgICdkYXJrJzogJzM0MiwgOTIlLCA0NyUnLFxuICAgICAgJ2Jhc2UnOiAnMzQyLCA5MiUsIDU0JScsXG4gICAgICAnbGlnaHQnOiAnMzQyLCA5MiUsIDYwJScsXG4gICAgICAnbGlnaHRlcic6ICczNDIsIDkyJSwgNjUlJ1xuICAgICksXG4gICAgJ2JnJzogKFxuICAgICAgJ2Rhcmtlcic6ICcyMzIsIDclLCA4JScsXG4gICAgICAnZGFyayc6ICcyMzMsIDglLCAxMSUnLFxuICAgICAgJ2Jhc2UnOiAnMjMyLCAxMSUsIDE1JScsXG4gICAgICAnbGlnaHQnOiAnMjMzLCA4JSwgMTklJyxcbiAgICAgICdsaWdodGVyJzogJzIzMiwgNyUsIDIyJSdcbiAgICApLFxuICAgICdjb250cmFzdCc6IChcbiAgICAgICdsb3dlcic6ICcyNDAsIDYlLCAyNiUnLFxuICAgICAgJ2xvdyc6ICcyNDAsIDMlLCA0MSUnLFxuICAgICAgJ21lZGl1bSc6ICcyMzEsIDMlLCA1NyUnLFxuICAgICAgJ2hpZ2gnOiAnMjQwLCA1JSwgODIlJyxcbiAgICAgICdoaWdoZXInOiAnMjQwLCAxMDAlLCA5OSUnXG4gICAgKVxuICApXG4pICFkZWZhdWx0O1xuXG4kZ3JhZGllbnRzOiAoKSAhZGVmYXVsdDtcblxuLy8gYXNwZWN0LXJhdGlvXG4kYXNwZWN0LXJhdGlvOiAoMTYgOSwgMyAyLCA0IDMsIDUgNCwgMSAxLCA0IDUsIDMgNCwgMiAzLCA5IDE2KSAhZGVmYXVsdDtcblxuLy8gbWVkaWEtd3JhcHBlclxuJG1lZGlhLXdyYXBwZXI6ICgxNiA5LCAzIDIsIDQgMywgMSAxKSAhZGVmYXVsdDtcblxuLy8gd2lkdGhcbiR3aWR0aDogKFxuICAnNHhzJzogJzAuMjVyZW0nLFxuICAnM3hzJzogJzAuNXJlbScsXG4gICcyeHMnOiAnMC43NXJlbScsXG4gICd4cyc6ICcxcmVtJyxcbiAgJ3NtJzogJzEuNXJlbScsXG4gICdtZCc6ICcycmVtJyxcbiAgJ2xnJzogJzNyZW0nLFxuICAneGwnOiAnNHJlbScsXG4gICcyeGwnOiAnNnJlbScsXG4gICczeGwnOiAnOHJlbScsXG4gICc0eGwnOiAnMTZyZW0nLFxuICAwOiAnMCcsXG4gIDEwXFwlOiAnMTAlJyxcbiAgMjBcXCU6ICcyMCUnLFxuICAyNVxcJTogJzI1JScsXG4gIDMwXFwlOiAnMzAlJyxcbiAgMzNcXCU6ICczMyUnLFxuICA0MFxcJTogJzQwJScsXG4gIDUwXFwlOiAnNTAlJyxcbiAgNjBcXCU6ICc2MCUnLFxuICA3MFxcJTogJzcwJScsXG4gIDc1XFwlOiAnNzUlJyxcbiAgODBcXCU6ICc4MCUnLFxuICA5MFxcJTogJzkwJScsXG4gIDEwMFxcJTogJzEwMCUnXG4pICFkZWZhdWx0O1xuXG4vLyBoZWlnaHRcbiRoZWlnaHQ6IChcbiAgJzR4cyc6ICcwLjI1cmVtJyxcbiAgJzN4cyc6ICcwLjVyZW0nLFxuICAnMnhzJzogJzAuNzVyZW0nLFxuICAneHMnOiAnMXJlbScsXG4gICdzbSc6ICcxLjVyZW0nLFxuICAnbWQnOiAnMnJlbScsXG4gICdsZyc6ICczcmVtJyxcbiAgJ3hsJzogJzRyZW0nLFxuICAnMnhsJzogJzZyZW0nLFxuICAnM3hsJzogJzhyZW0nLFxuICAnNHhsJzogJzE2cmVtJyxcbiAgMDogJzAnLFxuICAxMFxcJTogJzEwJScsXG4gIDIwXFwlOiAnMjAlJyxcbiAgMjVcXCU6ICcyNSUnLFxuICAzMFxcJTogJzMwJScsXG4gIDMzXFwlOiAnMzMlJyxcbiAgNDBcXCU6ICc0MCUnLFxuICA1MFxcJTogJzUwJScsXG4gIDYwXFwlOiAnNjAlJyxcbiAgNzBcXCU6ICc3MCUnLFxuICA3NVxcJTogJzc1JScsXG4gIDgwXFwlOiAnODAlJyxcbiAgOTBcXCU6ICc5MCUnLFxuICAxMDBcXCU6ICcxMDAlJ1xuKSAhZGVmYXVsdDtcblxuLy8gbWF4LXdpZHRoXG4kbWF4LXdpZHRoOiAoXG4gICczeHMnOiAnMjByZW0nLFxuICAnMnhzJzogJzI2cmVtJyxcbiAgJ3hzJzogJzMycmVtJyxcbiAgJ3NtJzogJzQ4cmVtJyxcbiAgJ21kJzogJzY0cmVtJyxcbiAgJ2xnJzogJzgwcmVtJyxcbiAgJ3hsJzogJzkwcmVtJyxcbiAgJzJ4bCc6ICcxMjByZW0nXG4pICFkZWZhdWx0O1xuXG4kY29udGFpbmVyLW1hcmdpbi14OiB2YXIoLS1zcGFjZS1tZCkgIWRlZmF1bHQ7XG5cbi8vIGJveC1zaGFkb3dcbiRib3gtc2hhZG93OiAoXG4gICdyaW5nJzogJzAgMCAwIDFweCBoc2xhKHZhcigtLWNvbG9yLWJsYWNrLWgpLCB2YXIoLS1jb2xvci1ibGFjay1zKSwgdmFyKC0tY29sb3ItYmxhY2stbCksIDAuMDUpJyxcbiAgJ3hzJzogJzAgMCAwIDFweCBoc2xhKHZhcigtLWNvbG9yLWJsYWNrLWgpLCB2YXIoLS1jb2xvci1ibGFjay1zKSwgdmFyKC0tY29sb3ItYmxhY2stbCksIDAuMDIpLCAwIDFweCAzcHggLTFweCBoc2xhKHZhcigtLWNvbG9yLWJsYWNrLWgpLCB2YXIoLS1jb2xvci1ibGFjay1zKSwgdmFyKC0tY29sb3ItYmxhY2stbCksIDAuMiknLFxuICAnc20nOiAnMCAwLjNweCAwLjRweCBoc2xhKHZhcigtLWNvbG9yLWJsYWNrLWgpLCB2YXIoLS1jb2xvci1ibGFjay1zKSwgdmFyKC0tY29sb3ItYmxhY2stbCksIDAuMDIpLCAwIDAuOXB4IDEuNXB4IGhzbGEodmFyKC0tY29sb3ItYmxhY2staCksIHZhcigtLWNvbG9yLWJsYWNrLXMpLCB2YXIoLS1jb2xvci1ibGFjay1sKSwgMC4wNDUpLCAwIDMuNXB4IDZweCBoc2xhKHZhcigtLWNvbG9yLWJsYWNrLWgpLCB2YXIoLS1jb2xvci1ibGFjay1zKSwgdmFyKC0tY29sb3ItYmxhY2stbCksIDAuMDkpJyxcbiAgJ21kJzogJzAgMC45cHggMS4yNXB4IGhzbGEodmFyKC0tY29sb3ItYmxhY2staCksIHZhcigtLWNvbG9yLWJsYWNrLXMpLCB2YXIoLS1jb2xvci1ibGFjay1sKSwgMC4wMjUpLCAwIDNweCA1cHggaHNsYSh2YXIoLS1jb2xvci1ibGFjay1oKSwgdmFyKC0tY29sb3ItYmxhY2stcyksIHZhcigtLWNvbG9yLWJsYWNrLWwpLCAwLjA1KSwgMCAxMnB4IDIwcHggaHNsYSh2YXIoLS1jb2xvci1ibGFjay1oKSwgdmFyKC0tY29sb3ItYmxhY2stcyksIHZhcigtLWNvbG9yLWJsYWNrLWwpLCAwLjA5KScsXG4gICdsZyc6ICcwIDEuMnB4IDEuOXB4IC0xcHggaHNsYSh2YXIoLS1jb2xvci1ibGFjay1oKSwgdmFyKC0tY29sb3ItYmxhY2stcyksIHZhcigtLWNvbG9yLWJsYWNrLWwpLCAwLjAxKSwgMCAzcHggNXB4IC0xcHggaHNsYSh2YXIoLS1jb2xvci1ibGFjay1oKSwgdmFyKC0tY29sb3ItYmxhY2stcyksIHZhcigtLWNvbG9yLWJsYWNrLWwpLCAwLjAxNSksIDAgOHB4IDE1cHggLTFweCBoc2xhKHZhcigtLWNvbG9yLWJsYWNrLWgpLCB2YXIoLS1jb2xvci1ibGFjay1zKSwgdmFyKC0tY29sb3ItYmxhY2stbCksIDAuMDUpLCAwIDI4cHggNDBweCAtMXB4IGhzbGEodmFyKC0tY29sb3ItYmxhY2staCksIHZhcigtLWNvbG9yLWJsYWNrLXMpLCB2YXIoLS1jb2xvci1ibGFjay1sKSwgMC4xKScsXG4gICd4bCc6ICcwIDEuNXB4IDIuMXB4IC02cHggaHNsYSh2YXIoLS1jb2xvci1ibGFjay1oKSwgdmFyKC0tY29sb3ItYmxhY2stcyksIHZhcigtLWNvbG9yLWJsYWNrLWwpLCAwLjAwOSksIDAgMy42cHggNS4ycHggLTZweCBoc2xhKHZhcigtLWNvbG9yLWJsYWNrLWgpLCB2YXIoLS1jb2xvci1ibGFjay1zKSwgdmFyKC0tY29sb3ItYmxhY2stbCksIDAuMDExNSksIDAgNy4zcHggMTAuNnB4IC02cHggaHNsYSh2YXIoLS1jb2xvci1ibGFjay1oKSwgdmFyKC0tY29sb3ItYmxhY2stcyksIHZhcigtLWNvbG9yLWJsYWNrLWwpLCAwLjAxMjUpLCAwIDE2LjJweCAyMS45cHggLTZweCBoc2xhKHZhcigtLWNvbG9yLWJsYWNrLWgpLCB2YXIoLS1jb2xvci1ibGFjay1zKSwgdmFyKC0tY29sb3ItYmxhY2stbCksIDAuMDI1KSwgMCA0NnB4IDYwcHggLTZweCBoc2xhKHZhcigtLWNvbG9yLWJsYWNrLWgpLCB2YXIoLS1jb2xvci1ibGFjay1zKSwgdmFyKC0tY29sb3ItYmxhY2stbCksIDAuMTUpJ1xuKSAhZGVmYXVsdDtcblxuLy8gaW5uZXItZ2xvd1xuJGlubmVyLWdsb3c6IChcbiAgJ2dsb3cnOiAnaW5zZXQgMCAwIDAuNXB4IDFweCBoc2xhKHZhcigtLWNvbG9yLXdoaXRlLWgpLCB2YXIoLS1jb2xvci13aGl0ZS1zKSwgdmFyKC0tY29sb3Itd2hpdGUtbCksIDAuMDc1KScsXG4gICdnbG93LXRvcCc6ICdpbnNldCAwIDFweCAwLjVweCBoc2xhKHZhcigtLWNvbG9yLXdoaXRlLWgpLCB2YXIoLS1jb2xvci13aGl0ZS1zKSwgdmFyKC0tY29sb3Itd2hpdGUtbCksIDAuMDc1KSdcbikgIWRlZmF1bHQ7XG5cbi8vIGJvcmRlci1yYWRpdXNcbiRib3JkZXItcmFkaXVzOiAoXG4gICdzbSc6ICcwLjE4NzVlbScsXG4gICdtZCc6ICcwLjM3NWVtJyxcbiAgJ2xnJzogJzAuNzVlbScsXG4gICAnZnVsbCc6ICc1MGVtJ1xuKSAhZGVmYXVsdDtcblxuLy8gei1pbmRleFxuJHotaW5kZXg6IChcbiAgJ2hlYWRlcic6ICczJyxcbiAgJ3BvcG92ZXInOiAnNScsXG4gICdmaXhlZC1lbGVtZW50JzogJzEwJyxcbiAgJ292ZXJsYXknOiAnMTUnXG4pICFkZWZhdWx0O1xuXG4vLyByZXNldCB1c2VyIGFnZW50IHN0eWxlXG5AbWl4aW4gcmVzZXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vIGFjY2Vzc2liaWxpdHkg4oaSIGhpZGVcbkBtaXhpbiBzckhpZGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xufVxuXG4vLyBhY2Nlc3NpYmlsaXR5IOKGkiBzaG93XG5AbWl4aW4gc3JTaG93IHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgY2xpcDogYXV0bztcbiAgY2xpcC1wYXRoOiBub25lO1xufVxuXG4vLyBlZGl0IGZvbnQgcmVuZGVyaW5nXG5AbWl4aW4gZm9udFNtb290aCB7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4vLyB0cmlhbmdsZVxuQG1peGluIHRyaWFuZ2xlICgkZGlyZWN0aW9uOiB1cCwgJHdpZHRoOiAxMnB4LCAkY29sb3I6IHJlZCkge1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcblxuICBAaWYoICRkaXJlY3Rpb24gPT0gbGVmdCApIHtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6ICRjb2xvcjtcbiAgfSBAZWxzZSBpZiggJGRpcmVjdGlvbiA9PSByaWdodCApIHtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogJGNvbG9yO1xuICB9IEBlbHNlIGlmKCAkZGlyZWN0aW9uID09IGRvd24gKSB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yO1xuICB9IEBlbHNlIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8gYnJlYWtwb2ludCAoZGVwcmVjYXRlZCDihpIgdXNlIHRoZSBtaW4td2lkdGggbWl4aW4pXG5AbWl4aW4gYnJlYWtwb2ludCgkYnJlYWtwb2ludCwgJGxvZ2ljOiBmYWxzZSkge1xuICBAaWYoICRsb2dpYyApIHtcbiAgICBAbWVkaWEgI3skbG9naWN9IGFuZCAobWluLXdpZHRoOiBtYXAuZ2V0KCRtYXA6ICRicmVha3BvaW50cywgJGtleTogJGJyZWFrcG9pbnQpKSB7IEBjb250ZW50OyB9XG4gIH0gQGVsc2Uge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiBtYXAuZ2V0KCRtYXA6ICRicmVha3BvaW50cywgJGtleTogJGJyZWFrcG9pbnQpKSB7IEBjb250ZW50OyB9XG4gIH1cbn1cblxuLy8gZGVmaW5lIEhTTCBjb2xvciB2YXJpYWJsZXMgKGRlcHJlY2F0ZWQg4oaSIHVzZSB0aGUgZGVmaW5lLWhzbC1jb2xvciBtaXhpbilcbkBtaXhpbiBkZWZpbmVDb2xvckhTTCgkY29sb3IsICRodWUsICRzYXR1cmF0aW9uLCAkbGlnaHRuZXNzKSB7XG4gICN7JGNvbG9yfTogdW5xdW90ZShcImhzbCgjeyRodWV9LCAjeyRzYXR1cmF0aW9ufSwgI3skbGlnaHRuZXNzfSlcIik7I3skY29sb3J9LWg6ICN7JGh1ZX07I3skY29sb3J9LXM6ICN7JHNhdHVyYXRpb259OyN7JGNvbG9yfS1sOiAjeyRsaWdodG5lc3N9O1xufVxuXG4vLyBtb2RpZnkgY29sb3IgSFNMQSB2YWx1ZXMgKGRlcHJlY2F0ZWQg4oaSIHVzZSB0aGUgYWRqdXN0LWhzbGEgbWl4aW4pXG5AZnVuY3Rpb24gYWRqdXN0SFNMQSgkY29sb3IsICRodWUtbXVsdGlwbGllcjogMSwgJHNhdHVyYXRpb24tbXVsdGlwbGllcjogMSwgJGxpZ2h0bmVzcy1tdWx0aXBsaWVyOiAxLCAkYWxwaGE6IDEpIHtcbiAgJGNvbG9yOiBzdHItcmVwbGFjZSgkY29sb3IsICd2YXIoJyk7XG4gICRjb2xvcjogc3RyLXJlcGxhY2UoJGNvbG9yLCAnKScpO1xuICAkY29sb3ItaDogdmFyKCN7JGNvbG9yKyctaCd9KTtcbiAgJGNvbG9yLXM6IHZhcigjeyRjb2xvcisnLXMnfSk7XG4gICRjb2xvci1sOiB2YXIoI3skY29sb3IrJy1sJ30pO1xuICBAcmV0dXJuIGhzbGEoY2FsYygjeyRjb2xvci1ofSAqICN7JGh1ZS1tdWx0aXBsaWVyfSksIGNhbGMoI3skY29sb3Itc30gKiAjeyRzYXR1cmF0aW9uLW11bHRpcGxpZXJ9KSwgY2FsYygjeyRjb2xvci1sfSAqICN7JGxpZ2h0bmVzcy1tdWx0aXBsaWVyfSksICRhbHBoYSk7XG59XG5cbi8vIGxpbmUtaGVpZ2h0IGNyb3AgKGRlcHJlY2F0ZWQpXG5AbWl4aW4gbGhDcm9wKCRsaW5lLWhlaWdodCwgJGNhcGl0YWwtbGV0dGVyOiAxKSB7XG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHdpZHRoOiAwO1xuICAgIG1hcmdpbi10b3A6IGNhbGMoKCN7JGNhcGl0YWwtbGV0dGVyfSAtICN7JGxpbmUtaGVpZ2h0fSkgKiAwLjVlbSk7XG4gIH1cbn0iLCIuZmVhdHVyZSB7XG4gICAgbGl7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjZS1zbSk7XG4gICAgfVxuICAgIGRpdltmZWF0dXJlLWNvbG9yPVwiYmctYmx1ZS1ub3JtYWxcIl0ge1xuICAgICAgICAudGV4dC1jb21wb25lbnQge1xuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsdWUtbm9ybWFsKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBkaXZbZmVhdHVyZS1jb2xvcj1cImJnLWdyZWVuLW5vcm1hbFwiXSB7XG4gICAgICAgIC50ZXh0LWNvbXBvbmVudCB7XG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZ3JlZW4tbm9ybWFsKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBkaXZbZmVhdHVyZS1jb2xvcj1cImJnLW9yYW5nZS1ub3JtYWxcIl0ge1xuICAgICAgICAudGV4dC1jb21wb25lbnQge1xuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLW9yYW5nZS1ub3JtYWwpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmljb24ge1xuICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG5cbiAgICAgICAgc3Zne1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGV4dC1jb21wb25lbnQge1xuICAgICAgICB1bCB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UtbWQpO1xuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogNnB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogN3B4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8P3htbCB2ZXJzaW9uPScxLjAnIGVuY29kaW5nPSd1dGYtOCc/PjxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB4bWxuczp4bGluaz0naHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluaycgIHZlcnNpb249JzEuMScgaWQ9J0NhcGFfMScgdmlld0JveD0nMCAwIDc4LjM2OSA3OC4zNjknIHhtbDpzcGFjZT0ncHJlc2VydmUnIGZpbGw9JyUyM2ZmZic+PGc+PHBhdGggZD0nTTc4LjA0OSwxOS4wMTVMMjkuNDU4LDY3LjYwNmMtMC40MjgsMC40MjgtMS4xMjEsMC40MjgtMS41NDgsMEwwLjMyLDQwLjAxNWMtMC40MjctMC40MjYtMC40MjctMS4xMTksMC0xLjU0N2w2LjcwNC02LjcwNCAgIGMwLjQyOC0wLjQyNywxLjEyMS0wLjQyNywxLjU0OCwwbDIwLjExMywyMC4xMTJsNDEuMTEzLTQxLjExM2MwLjQyOS0wLjQyNywxLjEyLTAuNDI3LDEuNTQ4LDBsNi43MDMsNi43MDQgICBDNzguNDc3LDE3Ljg5NCw3OC40NzcsMTguNTg2LDc4LjA0OSwxOS4wMTV6Jz48L3BhdGg+PC9nPjwvc3ZnPlwiKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IixudWxsLCJAdXNlICcuLy4uLy4uLy4uL3Nhc3MvY29keWZyYW1lL2Jhc2UvY29uZmlnJyBhcyAqO1xuXG4uaGVybyB7XG4gICAgJi1sb2dve1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS1tYXgtd2lkdGgtMnhzKTtcbiAgICB9XG59IixudWxsLCJAdXNlICcuLy4uLy4uLy4uL3Nhc3MvY29keWZyYW1lL2Jhc2UvY29uZmlnJyBhcyAqO1xuLy8gLS0tIOKGkSB1cGRhdGUgdGhpcyBwYXRoIGlmIHlvdSdyZSBpbXBvcnRpbmcgQ29keUZyYW1lIGFzIG5wbSBtb2R1bGVcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gXG5cbkZpbGUjOiBfMl9zbGlkZXNob3dcblRpdGxlOiBTbGlkZXNob3dcbkRlc2NyOiBTaG93IGEgY29sbGVjdGlvbiBvZiBpdGVtcyBvbmUgYXQgYSB0aW1lXG5Vc2FnZTogY29keWhvdXNlLmNvL2xpY2Vuc2VcblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbjpyb290IHtcbiAgLS1zbGlkZXNob3ctaGVpZ2h0OiAyODBweDtcblxuICAvLyB0cmFuc2l0aW9uc1xuICAtLXNsaWRlc2hvdy1mYWRlLXRyYW5zaXRpb24tZHVyYXRpb246IDAuMjVzOyAvLyBmYWRlIGVmZmVjdCB0cmFuc2l0aW9uIGR1cmF0aW9uXG4gIC0tc2xpZGVzaG93LXNsaWRlLXRyYW5zaXRpb24tZHVyYXRpb246IDAuMzVzOyAvLyBzbGlkZSBlZmZlY3QgdHJhbnNpdGlvbiBkdXJhdGlvblxuICAtLXNsaWRlc2hvdy1wcngtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC41czsgLy8gcGFyYWxsYXggZWZmZWN0IHRyYW5zaXRpb24gZHVyYXRpb25cblxuICAvLyBjb250cm9sc1xuICAtLXNsaWRlc2hvdy1idG4td2lkdGg6IDEuNmVtOyBcbiAgLS1zbGlkZXNob3ctYnRuLWhlaWdodDogMy4yZW07XG4gIC0tc2xpZGVzaG93LWJ0bi1pY29uLXNpemU6IDEuNmVtO1xuICAtLXNsaWRlc2hvdy1idG4tb2Zmc2V0OiB2YXIoLS1zcGFjZS14cyk7IC8vIGdhcCBiZXR3ZWVuIGJ1dHRvbiBhbmQgc2xpZGVzaG93IGVkZ2VzXG5cbiAgQGluY2x1ZGUgbWluLXdpZHRoKHNtKSB7XG4gICAgLS1zbGlkZXNob3ctaGVpZ2h0OiA0ODBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1pbi13aWR0aChtZCkge1xuICAgIC0tc2xpZGVzaG93LWhlaWdodDogNTgwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBtaW4td2lkdGgobGcpIHtcbiAgICAtLXNsaWRlc2hvdy1oZWlnaHQ6IDY4MHB4O1xuICB9XG59XG5cbi8vIHNsaWRlXG4uc2xpZGVzaG93X19pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGhlaWdodDogdmFyKC0tc2xpZGVzaG93LWhlaWdodCk7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxufVxuXG4vLyBzZXQgYSBmaXhlZCByYXRpbyBmb3IgdGhlIHNsaWRlc1xuLnNsaWRlc2hvdy0tcmF0aW8tMTZcXDo5IC5zbGlkZXNob3dfX2l0ZW0geyBcbiAgaGVpZ2h0OiAwO1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlOyAvLyAxNjo5IGFzcGVjdCByYXRpb1xufVxuXG4uc2xpZGVzaG93LS1yYXRpby00XFw6MyAuc2xpZGVzaG93X19pdGVtIHsgXG4gIGhlaWdodDogMDtcbiAgcGFkZGluZy1ib3R0b206IDc1JTsgLy8gNDozIGFzcGVjdCByYXRpb1xufVxuXG4uc2xpZGVzaG93LS1yYXRpby0xXFw6MSAuc2xpZGVzaG93X19pdGVtIHsgXG4gIGhlaWdodDogMDtcbiAgcGFkZGluZy1ib3R0b206IDEwMCU7IC8vIDE6MSBhc3BlY3QgcmF0aW9cbn1cblxuLy8gc2xpZGVzaG93IGJhc2ljIHN0eWxlXG4uc2xpZGVzaG93IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uc2xpZGVzaG93X19jb250ZW50IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWxnKTtcbn1cblxuLnNsaWRlc2hvd19faXRlbSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGVzaG93X19pdGVtLS1zZWxlY3RlZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMztcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLy8gZmFkZS1pbiBhbmltYXRpb25cbi5zbGlkZXNob3ctLXRyYW5zaXRpb24tZmFkZSAuc2xpZGVzaG93X19pdGVtIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwcyB2YXIoLS1zbGlkZXNob3ctZmFkZS10cmFuc2l0aW9uLWR1cmF0aW9uKSwgdmlzaWJpbGl0eSAwcyB2YXIoLS1zbGlkZXNob3ctZmFkZS10cmFuc2l0aW9uLWR1cmF0aW9uKTtcbn1cblxuLnNsaWRlc2hvdy0tdHJhbnNpdGlvbi1mYWRlIC5zbGlkZXNob3dfX2l0ZW0tLXNlbGVjdGVkIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS1zbGlkZXNob3ctZmFkZS10cmFuc2l0aW9uLWR1cmF0aW9uKTtcbn1cblxuLy8gc2xpZGUtaW4gYW5pbWF0aW9uXG4uc2xpZGVzaG93LS10cmFuc2l0aW9uLXNsaWRlIC5zbGlkZXNob3dfX2l0ZW0ge1xuICBhbmltYXRpb24tZHVyYXRpb246IHZhcigtLXNsaWRlc2hvdy1zbGlkZS10cmFuc2l0aW9uLWR1cmF0aW9uKTtcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IHZhcigtLWVhc2Utb3V0KTtcblxuICA+ICogeyAvLyBoaWRlIGNvbnRlbnQgb2Ygbm90LXZpc2libGUgaXRlbXMgc28gdGhhdCB0aGV5IGFyZSBub3QgZm9jdXNhYmxlIFxuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxufSBcblxuLnNsaWRlc2hvdy0tdHJhbnNpdGlvbi1zbGlkZSAuc2xpZGVzaG93X19pdGVtOm5vdCguc2xpZGVzaG93X19pdGVtLS1zZWxlY3RlZCkgKiB7XG4gIHRyYW5zaXRpb246IG5vbmU7XG59XG5cbi5zbGlkZXNob3ctLXRyYW5zaXRpb24tc2xpZGUgLnNsaWRlc2hvd19faXRlbS0tc2VsZWN0ZWQgPiAqIHsgLy8gc2hvdyBjb250ZW50IG9mIHNlbGVjdGVkIGl0ZW0gXG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbi5zbGlkZXNob3ctLXRyYW5zaXRpb24tc2xpZGUgLnNsaWRlc2hvd19faXRlbS0tc2xpZGUtaW4tbGVmdCB7IC8vIHZpc2libGUgaXRlbSAtIGVudGVyIGZyb20gbGVmdCB0byByaWdodFxuICBhbmltYXRpb24tbmFtZTogc2xpZGUtaW4tbGVmdDtcbn1cblxuLnNsaWRlc2hvdy0tdHJhbnNpdGlvbi1zbGlkZSAuc2xpZGVzaG93X19pdGVtLS1zbGlkZS1pbi1yaWdodCB7IC8vIHZpc2libGUgaXRlbSAtIGVudGVyIGZyb20gcmlnaHQgdG8gbGVmdFxuICBhbmltYXRpb24tbmFtZTogc2xpZGUtaW4tcmlnaHQ7XG59XG5cbi5zbGlkZXNob3ctLXRyYW5zaXRpb24tc2xpZGUgLnNsaWRlc2hvd19faXRlbS0tc2xpZGUtb3V0LWxlZnQgeyAvLyBsZWF2aW5nIGl0ZW0gLSBsZWF2ZSBmcm9tIGxlZnQgdG8gcmlnaHRcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlLW91dC1sZWZ0O1xufVxuXG4uc2xpZGVzaG93LS10cmFuc2l0aW9uLXNsaWRlIC5zbGlkZXNob3dfX2l0ZW0tLXNsaWRlLW91dC1yaWdodCB7IC8vIGxlYXZpbmcgaXRlbSAtIGxlYXZlIGZyb20gcmlnaHQgdG8gbGVmdFxuICBhbmltYXRpb24tbmFtZTogc2xpZGUtb3V0LXJpZ2h0O1xufVxuXG4uc2xpZGVzaG93LS10cmFuc2l0aW9uLXNsaWRlIC5zbGlkZXNob3dfX2l0ZW0tLXNsaWRlLW91dC1sZWZ0LCBcbi5zbGlkZXNob3ctLXRyYW5zaXRpb24tc2xpZGUgLnNsaWRlc2hvd19faXRlbS0tc2xpZGUtb3V0LXJpZ2h0IHtcbiAgei1pbmRleDogMjtcblxuICAmLnNsaWRlc2hvd19faXRlbS0tc2VsZWN0ZWQge1xuICAgIHotaW5kZXg6IDM7IC8vIGZpeCBidWcgb24gYnJvd3NlcnMgbm90IHN1cHBvcnRpbmcgQ1NTIGFuaW1hdGlvbnNcbiAgfVxuXG4gID4gKiB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlLWluLWxlZnQge1xuICAwJSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlLWluLXJpZ2h0IHtcbiAgMCUge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlLW91dC1sZWZ0IHtcbiAgMCUge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlLW91dC1yaWdodCB7XG4gIDAlIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICB9XG59XG5cbi8vIHBhcmFsbGF4IGFuaW1hdGlvbiBcbi5zbGlkZXNob3ctLXRyYW5zaXRpb24tcHJ4IC5zbGlkZXNob3dfX2l0ZW0ge1xuICBhbmltYXRpb24tZHVyYXRpb246IHZhcigtLXNsaWRlc2hvdy1wcngtdHJhbnNpdGlvbi1kdXJhdGlvbik7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiB2YXIoLS1lYXNlLW91dCk7XG5cbiAgPiAqIHsgLy8gaGlkZSBjb250ZW50IG9mIG5vdC12aXNpYmxlIGl0ZW1zIHNvIHRoYXQgdGhleSBhcmUgbm90IGZvY3VzYWJsZSBcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbn0gXG5cbi5zbGlkZXNob3ctLXRyYW5zaXRpb24tcHJ4IC5zbGlkZXNob3dfX2l0ZW0tLXNlbGVjdGVkID4gKiB7IC8vIHNob3cgY29udGVudCBvZiBzZWxlY3RlZCBpdGVtIFxuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4uc2xpZGVzaG93LS10cmFuc2l0aW9uLXByeCAuc2xpZGVzaG93X19pdGVtLS1wcngtaW4tbGVmdCB7IC8vIHZpc2libGUgaXRlbSAtIGVudGVyIGZyb20gbGVmdCB0byByaWdodFxuICBhbmltYXRpb24tbmFtZTogcHJ4LWluLWxlZnQ7XG59XG5cbi5zbGlkZXNob3ctLXRyYW5zaXRpb24tcHJ4IC5zbGlkZXNob3dfX2l0ZW0tLXByeC1pbi1yaWdodCB7IC8vIHZpc2libGUgaXRlbSAtIGVudGVyIGZyb20gcmlnaHQgdG8gbGVmdFxuICBhbmltYXRpb24tbmFtZTogcHJ4LWluLXJpZ2h0O1xufVxuXG4uc2xpZGVzaG93LS10cmFuc2l0aW9uLXByeCAuc2xpZGVzaG93X19pdGVtLS1wcngtb3V0LWxlZnQgeyAvLyBsZWF2aW5nIGl0ZW0gLSBsZWF2ZSBmcm9tIGxlZnQgdG8gcmlnaHRcbiAgYW5pbWF0aW9uLW5hbWU6IHByeC1vdXQtbGVmdDtcbn1cblxuLnNsaWRlc2hvdy0tdHJhbnNpdGlvbi1wcnggLnNsaWRlc2hvd19faXRlbS0tcHJ4LW91dC1yaWdodCB7IC8vIGxlYXZpbmcgaXRlbSAtIGxlYXZlIGZyb20gcmlnaHQgdG8gbGVmdFxuICBhbmltYXRpb24tbmFtZTogcHJ4LW91dC1yaWdodDtcbn1cblxuLnNsaWRlc2hvdy0tdHJhbnNpdGlvbi1wcnggLnNsaWRlc2hvd19faXRlbS0tcHJ4LW91dC1sZWZ0LCBcbi5zbGlkZXNob3ctLXRyYW5zaXRpb24tcHJ4IC5zbGlkZXNob3dfX2l0ZW0tLXByeC1vdXQtcmlnaHQge1xuICB6LWluZGV4OiAyO1xuXG4gICYuc2xpZGVzaG93X19pdGVtLS1zZWxlY3RlZCB7XG4gICAgei1pbmRleDogMzsgLy8gZml4IGJ1ZyBvbiBicm93c2VycyBub3Qgc3VwcG9ydGluZyBDU1MgYW5pbWF0aW9uc1xuICB9XG5cbiAgPiAqIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcHJ4LWluLWxlZnQge1xuICAwJSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHByeC1pbi1yaWdodCB7XG4gIDAlIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBwcngtb3V0LWxlZnQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwLjM7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDQwJSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBwcngtb3V0LXJpZ2h0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMC4zO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNDAlKTtcbiAgfVxufVxuXG5cbi8vIHRvdWNoIHN3aXBlIGVuYWJsZWRcbi5zbGlkZXNob3dbZGF0YS1zd2lwZT1cIm9uXCJdIC5zbGlkZXNob3dfX2NvbnRlbnQge1xuICB1c2VyLXNlbGVjdDogbm9uZTtcblxuICBpbWcge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG59XG5cbi8vIHNsaWRlc2hvdyBhcnJvdyBjb250cm9sc1xuLnNsaWRlc2hvd19fY29udHJvbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zbGlkZXNob3dbZGF0YS1jb250cm9scz1cImhvdmVyXCJdIC5zbGlkZXNob3dfX2NvbnRyb2wge1xuICBvcGFjaXR5OiAwOyAvLyBoaWRlIGFycm93c1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zcztcbn1cblxuLnNsaWRlc2hvd1tkYXRhLWNvbnRyb2xzPVwiaG92ZXJcIl06aG92ZXIgLnNsaWRlc2hvd19fY29udHJvbCB7XG4gIG9wYWNpdHk6IDE7IC8vIHNob3cgYXJyb3dzIG9uIGhvdmVyXG59XG5cbi5zbGlkZXNob3dbZGF0YS1zd2lwZT1cIm9uXCJdIC5zbGlkZXNob3dfX2NvbnRyb2wge1xuICBkaXNwbGF5OiBub25lOyAvLyBoaWRlIGFycm93cyBvbiBtb2JpbGUgaWYgc3dpcGUgaXMgZW5hYmxlZFxufVxuXG4uc2xpZGVzaG93X19jb250cm9sIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogNDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblxuICAmOmZpcnN0LW9mLXR5cGUge1xuICAgIGxlZnQ6IHZhcigtLXNsaWRlc2hvdy1idG4tb2Zmc2V0KTtcbiAgfVxuXG4gICY6bGFzdC1vZi10eXBlIHtcbiAgICByaWdodDogdmFyKC0tc2xpZGVzaG93LWJ0bi1vZmZzZXQpO1xuICB9XG59XG5cbkBpbmNsdWRlIG1pbi13aWR0aChtZCkge1xuICAuc2xpZGVzaG93W2RhdGEtc3dpcGU9XCJvblwiXSAuc2xpZGVzaG93X19jb250cm9sIHtcbiAgICBkaXNwbGF5OiBibG9jazsgLy8gc2hvdyBhcnJvdyBjb250cm9sc1xuICB9XG59XG5cbi5zbGlkZXNob3dfX2J0biB7XG4gIG1hcmdpbjogdmFyKC0tc3BhY2UtbGcpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogYWxwaGEodmFyKC0tY29sb3ItYmxhY2spLCAwLjc1KTsgLy8gSUUgZmFsbGJhY2tcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW1kKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4ycywgdHJhbnNmb3JtIDAuMnM7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTJ4cyk7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogYWxwaGEodmFyKC0tY29sb3Itd2hpdGUpLCAwLjg1KTtcblxuICAgIC5pY29uIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1iZyk7XG4gICAgfVxuICB9XG4gIFxuICAuc2xpZGVzaG93Om5vdCguc2xpZGVzaG93LS1pcy1hbmltYXRpbmcpICY6YWN0aXZlIHsgLy8gYWN0aXZlIGVmZmVjdFxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgycHgpO1xuICB9XG4gIFxuICAuaWNvbiB7XG4gICAgZmlsbDogI0VBRUFFQTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtc20pO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IHZhcigtLXNsaWRlc2hvdy1idG4taWNvbi1zaXplKTtcbiAgICBoZWlnaHQ6IHZhcigtLXNsaWRlc2hvdy1idG4taWNvbi1zaXplKTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAuMnM7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXdoaXRlKTsgLy8gSUUgZmFsbGJhY2tcbiAgfVxuXG4gIEBzdXBwb3J0cyAoZ3JpZC1hcmVhOiBhdXRvKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IC8vIGJ1dHRvbiBjb2xvclxuICBcbiAgICAuaWNvbiB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItY29udHJhc3QtaGlnaGVyKTsgLy8gaWNvbiBjb2xvclxuICAgIH1cbiAgfVxufVxuXG4vLyBzbGlkZXNob3cgbmF2aWdhdGlvblxuLnNsaWRlc2hvd19fbmF2aWdhdGlvbiB7IC8vIGNyZWF0ZWQgaW4gSlNcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiA0O1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDMycHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLnNsaWRlc2hvd19fbmF2LWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8vIGZsZXggZmFsbGJhY2tcbiAgbWFyZ2luOiAwIHZhcigtLXNwYWNlLTN4cyk7XG5cbiAgYnV0dG9uIHsgLy8gZG90XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQtc2l6ZTogOHB4OyAvLyBkb3Qgc2l6ZVxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1jb250cmFzdC1oaWdoKTsgLy8gZG90IGNvbG9yXG4gICAgaGVpZ2h0OiAxZW07XG4gICAgd2lkdGg6IDFlbTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICAgIG9wYWNpdHk6IDAuNDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuM3M7XG5cbiAgICAmOjpiZWZvcmUgeyAvLyBmb2N1cyBjaXJjbGVcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiBjYWxjKDUwJSAtIDAuNWVtKTtcbiAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gMC41ZW0pO1xuICAgICAgaGVpZ2h0OiAxZW07XG4gICAgICB3aWR0aDogMWVtO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWNvbnRyYXN0LWhpZ2gpO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgICB0cmFuc2l0aW9uOiAwLjNzO1xuICAgIH1cbiAgICBcbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5zbGlkZXNob3dfX25hdi1pdGVtLS1zZWxlY3RlZCBidXR0b24ge1xuICBvcGFjaXR5OiAxO1xufVxuXG5AaW5jbHVkZSBtaW4td2lkdGgobWQpIHtcbiAgLnNsaWRlc2hvd19fbmF2aWdhdGlvbiB7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICBib3R0b206IDMwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjZS0yeHMpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNlLTJ4cyk7XG4gIH1cblxuICAuc2xpZGVzaG93X19uYXYtaXRlbSB7XG4gICAgYnV0dG9uIHtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDsgLy8gZG90IHNpemVcblxuICAgICAgJjo6YmVmb3JlIHsgLy8gZm9jdXMgY2lyY2xlXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCJAdXNlICcuLy4uLy4uLy4uL3Nhc3MvY29keWZyYW1lL2Jhc2UvY29uZmlnJyBhcyAqO1xuLy8gLS0tIOKGkSB1cGRhdGUgdGhpcyBwYXRoIGlmIHlvdSdyZSBpbXBvcnRpbmcgQ29keUZyYW1lIGFzIG5wbSBtb2R1bGVcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gXG5cbkZpbGUjOiBfMV90YWJzXG5UaXRsZTogVGFic1xuRGVzY3I6IEEgbGlzdCBvZiBjb250ZW50IHNlY3Rpb25zIChwYW5lbHMpLCBhY2Nlc3NpYmxlIG9uZSBhdCBhIHRpbWUgdXNpbmcgY29udHJvbCBsYWJlbHNcblVzYWdlOiBjb2R5aG91c2UuY28vbGljZW5zZVxuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4udGFicyB7XG4gIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLWxnKTtcbiBcbn1cblxuLnRhYnNfX2NvbnRyb2wge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gYm9yZGVyLXJhZGl1czogMTAwcmVtO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0yeHMpO1xuICBmb250LXNpemU6IHZhcigtLXRleHQtc20pO1xuICBcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgYWxwaGEodmFyKC0tY29sb3ItYmxhY2spLCAwLjEpO1xuICAgIG91dGxpbmUtb2Zmc2V0OiAycHg7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItY29udHJhc3QtaGlnaCk7XG4gICBcbiAgICBcbiAgfVxufVxuXG4udGFic19fY29udHJvbFthcmlhLXNlbGVjdGVkPVwiZmFsc2VcIl17XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4udGFic19fY29udHJvbFthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1jb250cmFzdC1oaWdoKTtcbiAgICBcbiAgICB6LWluZGV4OiAyO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcztcbiAgIFxuICAgIGluc2V0OiBhdXRvIGF1dG8gLTElIDAlO1xufVxuXG4iLG51bGwsIi51c3Age1xuXG4gICAgLmNhcmQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1sZyk7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgXG5cbiAgICB9XG4gICAgZGl2Lmljb24ge1xuICAgICAgICB3aWR0aDogM3JlbTtcbiAgICAgICAgaGVpZ2h0OiAzcmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1kYXJrZXIpO1xuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1jb2xvci13aGl0ZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaWNvbi5jb2xvci1wcmltYXJ5IHN2Z3tcbiAgICAgICAgZmlsbDogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgfVxuXG4gICAgLnRleHQtY29tcG9uZW50IHtcbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLXRleHQtYmFzZSk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tYm9keS1saW5lLWhlaWdodCk7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiBjYWxjKHZhcigtLWJvZHktbGluZS1oZWlnaHQpKnZhcigtLXRleHQtYmFzZSkqMik7XG4gICAgICAgIH1cbiAgICB9XG5cblxufSJdfQ== */