.block--resource-hero-landing-v2{align-items:stretch;background-color:#f7f6ff;display:flex;min-height:790px;overflow:hidden;padding:96px 0 32px;position:relative;z-index:1}.block--resource-hero-landing-v2 .rhl-v2__bg{display:flex;inset:0;justify-content:center;overflow:hidden;position:absolute;z-index:0}.block--resource-hero-landing-v2 .rhl-v2__bg-photo,.block--resource-hero-landing-v2 .rhl-v2__bg-video{height:100%;max-width:1440px;-o-object-fit:cover;object-fit:cover;-o-object-position:center center;object-position:center center;width:100%}.block--resource-hero-landing-v2 .rhl-v2__bg:after{background:linear-gradient(90deg,#f7f6ff 0,#f7f6ff 45%,transparent 55%),linear-gradient(90deg,transparent 0,transparent 90%,#f7f6ff);content:"";height:100%;left:50%;max-width:1440px;pointer-events:none;position:absolute;top:0;transform:translateX(-50%);width:100%;z-index:1}.block--resource-hero-landing-v2 .rhl-v2__video-toggle{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:rgba(65,50,155,.5);border:0;border-radius:50%;bottom:1rem;color:#fff;cursor:pointer;display:inline-flex;height:33.6px;justify-content:center;position:absolute;right:1rem;transition:background-color .2s ease,transform .15s ease;width:33.6px;z-index:5}.block--resource-hero-landing-v2 .rhl-v2__video-toggle svg{fill:currentColor;height:16px;width:16px}.block--resource-hero-landing-v2 .rhl-v2__video-toggle:hover{background:rgba(65,50,155,.7)}.block--resource-hero-landing-v2 .rhl-v2__video-toggle:focus-visible{outline:2px solid #23004b;outline-offset:2px}.block--resource-hero-landing-v2 .rhl-v2__video-toggle:active{transform:scale(.95)}.block--resource-hero-landing-v2 .rhl-v2__left-frost-wrap{height:100%;left:0;overflow:hidden;pointer-events:none;position:absolute;top:0;width:100%;z-index:2}@media (max-width:767.98px){.block--resource-hero-landing-v2 .rhl-v2__left-frost-wrap{display:none}}.block--resource-hero-landing-v2 .rhl-v2__left-frost{aspect-ratio:1.225;backdrop-filter:blur(63.8px);-webkit-backdrop-filter:blur(63.8px);background:rgba(247,246,255,.1);clip-path:polygon(0 0,100% 0,96% 100%,0 100%);-webkit-clip-path:polygon(0 0,100% 0,96% 100%,0 100%);height:100%;position:absolute;right:50%;top:0;transform:translateX(132px);width:10000px}.block--resource-hero-landing-v2 .rhl-v2__right-shapes{height:100%;pointer-events:none;position:absolute;right:0;top:0;z-index:4}@media (max-width:767.98px){.block--resource-hero-landing-v2 .rhl-v2__right-shapes{display:none}}.block--resource-hero-landing-v2 .rhl-v2__frost{backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);-webkit-clip-path:polygon(55.1% 0,100% 0,45% 100%,0 100%);clip-path:polygon(55.1% 0,100% 0,45% 100%,0 100%);height:515px;position:absolute;right:-38rem;top:-68px;width:631px;will-change:transform}.block--resource-hero-landing-v2 .rhl-v2__frost svg{display:block;height:100%;width:100%}.block--resource-hero-landing-v2 .rhl-v2__content{align-items:flex-start;display:flex;flex-direction:column;gap:2rem;justify-content:space-between;margin-left:auto;margin-right:auto;max-width:1440px;padding-left:1.5rem;padding-right:1.5rem;position:relative;width:100%;z-index:3}@media (min-width:768px){.block--resource-hero-landing-v2 .rhl-v2__content{padding-left:3rem;padding-right:3rem}}@media (min-width:992px){.block--resource-hero-landing-v2 .rhl-v2__content{padding-left:6rem;padding-right:6rem}}.block--resource-hero-landing-v2 .rhl-v2__text{align-items:flex-start;display:flex;flex-direction:column;gap:24px;max-width:640px;text-align:left}.block--resource-hero-landing-v2 .rhl-v2__headline{font-family:Avenir LT Pro Bold,sans-serif;font-size:60px;line-height:1.05;margin:0;padding-bottom:.1em}.block--resource-hero-landing-v2 .rhl-v2__headline,.block--resource-hero-landing-v2 .rhl-v2__highlight{-webkit-text-fill-color:transparent;background:linear-gradient(168deg,#23004b 42.5%,#41329b 168%);-webkit-background-clip:text;background-clip:text}.block--resource-hero-landing-v2 .rhl-v2__highlight{position:relative;z-index:0}.block--resource-hero-landing-v2 .rhl-v2__highlight:before{background-color:#ffbe00;-webkit-clip-path:polygon(0 0,100% 0,100% 0,0 0);clip-path:polygon(0 0,100% 0,100% 0,0 0);content:"";height:.94em;left:-.05em;position:absolute;right:-.05em;top:.13em;transition:-webkit-clip-path .35s ease;transition:clip-path .35s ease;transition:clip-path .35s ease,-webkit-clip-path .35s ease;z-index:-1}.block--resource-hero-landing-v2 .rhl-v2__highlight:hover:before{-webkit-clip-path:polygon(0 0,100% 0,100% 100%,0 100%);clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}.block--resource-hero-landing-v2 .rhl-v2__body{color:#23004b;font-family:Avenir LT Pro Regular,sans-serif;font-size:28px;line-height:1.4;margin:0}.block--resource-hero-landing-v2 .rhl-v2__cards{display:flex;flex-wrap:wrap;gap:24px;width:100%}.block--resource-hero-landing-v2 .rhl-v2__card{background-color:#fff;border:1px solid rgba(130,140,225,.8);border-radius:4px;display:flex;flex:1 1 240px;flex-direction:column;gap:24px;justify-content:space-between;min-height:222px;min-width:0;padding:21px 22px;text-decoration:none;transition:background-color .3s ease,border-color .3s ease}.block--resource-hero-landing-v2 .rhl-v2__card,.block--resource-hero-landing-v2 .rhl-v2__card:active,.block--resource-hero-landing-v2 .rhl-v2__card:focus,.block--resource-hero-landing-v2 .rhl-v2__card:hover,.block--resource-hero-landing-v2 .rhl-v2__card:link,.block--resource-hero-landing-v2 .rhl-v2__card:visited{color:#23004b;text-decoration:none!important}.block--resource-hero-landing-v2 .rhl-v2__card:focus-visible{outline:2px solid #23004b;outline-offset:2px}.block--resource-hero-landing-v2 .rhl-v2__card:hover{background-color:#23004b;border-color:#23004b}.block--resource-hero-landing-v2 .rhl-v2__card:hover .rhl-v2__card-body,.block--resource-hero-landing-v2 .rhl-v2__card:hover .rhl-v2__card-title{color:#fff}.block--resource-hero-landing-v2 .rhl-v2__card:hover .rhl-v2__card-link{color:#ffbe00}.block--resource-hero-landing-v2 .rhl-v2__card-text{display:flex;flex-direction:column;gap:12px}.block--resource-hero-landing-v2 .rhl-v2__card-title{color:#23004b;font-family:Avenir LT Pro Bold,sans-serif;font-size:25px;line-height:32px;margin:0}.block--resource-hero-landing-v2 .rhl-v2__card-body{color:#23004b;font-family:Avenir LT Pro Regular,sans-serif;font-size:18px;line-height:22px;margin:0}.block--resource-hero-landing-v2 .rhl-v2__card-link{align-items:center;color:#23004b;display:inline-flex;font-family:Avenir LT Pro Medium,sans-serif;font-size:18px;gap:12px;line-height:1;transition:color .3s ease}.block--resource-hero-landing-v2 .rhl-v2__card-link .rhl-v2__card-arrow{flex-shrink:0;height:auto;width:29px}.block--resource-hero-landing-v2 .rhl-v2__lines{bottom:0;height:40px;left:50%;max-width:100%;opacity:.2;overflow:hidden;pointer-events:none;position:absolute;transform:translateX(-62%);width:750px;z-index:2}.block--resource-hero-landing-v2 .rhl-v2__lines img{display:block;height:auto;width:100%}@media (max-width:767px){.block--resource-hero-landing-v2 .rhl-v2__lines{display:none}}@media (max-width:991.98px){.block--resource-hero-landing-v2 .rhl-v2__headline{font-size:48px}.block--resource-hero-landing-v2 .rhl-v2__body{font-size:22px}}@media (max-width:767px){.block--resource-hero-landing-v2{align-items:center;flex-direction:column;overflow:hidden;padding:0 0 40px}.block--resource-hero-landing-v2 .rhl-v2__bg{flex-shrink:0;height:280px;inset:auto;justify-content:center;position:relative;width:100%}.block--resource-hero-landing-v2 .rhl-v2__bg-photo,.block--resource-hero-landing-v2 .rhl-v2__bg-video{max-width:100%}.block--resource-hero-landing-v2 .rhl-v2__bg:after{background:linear-gradient(180deg,transparent 0,transparent 55%,#f7f6ff),linear-gradient(90deg,#f7f6ff 0,transparent 40%);left:0;max-width:100%;transform:none}.block--resource-hero-landing-v2 .rhl-v2__right-shapes{height:280px}.block--resource-hero-landing-v2 .rhl-v2__frost{height:220px;right:-10rem;top:4px;width:280px}.block--resource-hero-landing-v2 .rhl-v2__left-frost{right:100%}.block--resource-hero-landing-v2 .rhl-v2__content{align-items:stretch;gap:2.5rem;padding:32px 20px 0}.block--resource-hero-landing-v2 .rhl-v2__text{gap:20px;max-width:100%}.block--resource-hero-landing-v2 .rhl-v2__headline{font-size:36px}.block--resource-hero-landing-v2 .rhl-v2__body{font-size:18px}.block--resource-hero-landing-v2 .rhl-v2__cards{flex-direction:column}.block--resource-hero-landing-v2 .rhl-v2__card{flex:1 1 auto;min-height:0}}@media (prefers-reduced-motion:reduce){.block--resource-hero-landing-v2 .rhl-v2__frost{will-change:auto}.block--resource-hero-landing-v2 .rhl-v2__highlight:before{transition:none}}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2tzL3Jlc291cmNlLWhlcm8tbGFuZGluZy1WMi9kaXN0L3N0eWxlLm1pbi5jc3MiLCJtYXBwaW5ncyI6IkFBS0EsaUNBSUUsb0JBTUEsd0JDTFcsQ0RGWCxhQU1BLGlCQVBBLGdCQU1BLG9CQVBBLGtCQVVBLFNBUEYsQ0FZRSw2Q0FLRSxhQUhBLFFBSUEsdUJBRkEsZ0JBSEEsa0JBRUEsU0FQSixDQWFFLHNHQUdFLFlBQ0EsaUJBQ0EscUNBQ0EsK0RBSkEsVUFQSixDQWdCRSxtREFVRSxvSUFDRSxDQVZGLFdBSUEsWUFEQSxTQUdBLGlCQUVBLG9CQVBBLGtCQUNBLE1BS0EsMkJBRkEsV0FpQkEsU0ExQkosQ0E4QkUsdURBTUUsbUJBSUEsNkRBQ0EsOEJBQ0EsU0FDQSxrQkFWQSxZQVdBLFdBQ0EsZUFWQSxvQkFJQSxjQUZBLHVCQU5BLGtCQUNBLFdBY0EseURBUkEsYUFKQSxTQWhCSixDQThCSSwyREFHRSxrQkFEQSxZQURBLFVBMUJOLENBK0JJLDZEQUNFLDZCQTdCTixDQWdDSSxxRUFDRSwwQkFDQSxrQkE5Qk4sQ0FpQ0ksOERBQ0Usb0JBL0JOLENBb0NFLDBEQUtFLFlBSEEsT0FJQSxnQkFFQSxvQkFQQSxrQkFFQSxNQUNBLFdBR0EsU0FqQ0osQ0VMSSw0QkYrQkYsMERBWUksWUFsQ0osQ0FDRixDQXFDRSxxREFNRSxtQkFHQSw2QkFDQSxxQ0FGQSxnQ0FHQSw4Q0FDQSxzREFQQSxZQUpBLGtCQUNBLFVBQ0EsTUFJQSw0QkFIQSxhQTNCSixDQXVDRSx1REFJRSxZQUVBLG9CQUxBLGtCQUNBLFFBQ0EsTUFFQSxTQXBDSixDRWhDSSw0QkYrREYsdURBVUksWUFyQ0osQ0FDRixDQXdDRSxnREFPRSwwQkFDQSxrQ0FDQSw0R0FKQSxhQUpBLGtCQUNBLGFBQ0EsVUFDQSxZQUVBLHFCQW5DSixDQXdDSSxvREFDRSxjQUVBLFlBREEsVUFyQ04sQ0E2Q0Usa0RBS0UsdUJBRkEsYUFDQSxzQkFNQSxTQURBLDhCQUlBLGlCQUNBLGtCQUhBLGlCQU9BLG9CQUNBLHFCQWxCQSxrQkFXQSxXQVZBLFNBaENKLENFakZJLHlCRitHRixrREFzQkksa0JBQ0Esa0JBaERKLENBQ0YsQ0V2RkkseUJGK0dGLGtEQTJCSSxrQkFDQSxrQkEvQ0osQ0FDRixDQWtERSwrQ0FHRSx1QkFGQSxhQUNBLHNCQUlBLFNBREEsZ0JBREEsZUE5Q0osQ0FvREUsbURBQ0UseUNDeEpVLENEeUpWLGVBQ0EsaUJBTUEsU0c1R0gsbUJIMERELENBc0RFLHVHQU5FLG9DQUhBLDhEQUNBLDZCQUNBLG9CQXZDSixDQThDRSxvREFDRSxrQkFDQSxTQWhESixDQXNESSwyREFPRSx3QkMxTkcsQ0Q0TkgsMEZBUkEsV0FLQSxhQUZBLFlBRkEsa0JBR0EsYUFGQSxVQU9BLGlJQUZBLFVBbEROLENBdURJLGlFQUNFLHFHQXJETixDQTBERSwrQ0FJRSxhQ2pRVyxDRDhQWCw0Q0NuTVMsQ0RvTVQsZUFDQSxnQkFFQSxRQXhESixDQThERSxnREFDRSxhQUNBLGVBQ0EsU0FDQSxVQTVESixDQStERSwrQ0FXRSxzQkFDQSxzQ0FDQSxrQkFSQSxhQUZBLGVBR0Esc0JBRUEsU0FEQSw4QkFFQSxpQkFMQSxZQU1BLGtCQUlBLHFCQUNBLDBEQS9ESixDQXlFSSwwVEFNRSxhQzlTUyxDRCtTVCw4QkE1RU4sQ0ErRUksNkRBQ0UsMEJBQ0Esa0JBN0VOLENBaUZJLHFEQUNFLHdCQ3pUUyxDRDBUVCxvQkEvRU4sQ0FpRk0saUpBRUUsVUEvRVIsQ0FrRk0sd0VBQ0UsYUFoRlIsQ0FxRkUsb0RBQ0UsYUFDQSxzQkFDQSxRQW5GSixDQXNGRSxxREFJRSxhQ2pWVyxDRDhVWCx5Q0NoUlUsQ0RpUlYsZUFDQSxpQkFFQSxRQXBGSixDQXVGRSxvREFJRSxhQ3pWVyxDRHNWWCw0Q0MzUlMsQ0Q0UlQsZUFDQSxpQkFFQSxRQXJGSixDQXdGRSxvREFFRSxtQkFLQSxhQ3BXVyxDRDhWWCxvQkFHQSwyQ0NyU1MsQ0RzU1QsZUFGQSxTQUdBLGNBRUEseUJBdEZKLENBd0ZJLHdFQUNFLGNBRUEsWUFEQSxVQXJGTixDQTZGRSxnREFFRSxTQUtBLFlBSkEsU0FHQSxlQUtBLFdBSEEsZ0JBRUEsb0JBVEEsa0JBR0EsMkJBQ0EsWUFJQSxTQXpGSixDQTZGSSxvREFDRSxjQUVBLFlBREEsVUExRk4sQ0E4RkkseUJBbkJGLGdEQW9CSSxZQTNGSixDQUNGLENFbE9JLDRCRm9VQSxtREFDRSxjQS9GSixDQWtHRSwrQ0FDRSxjQWhHSixDQUNGLENBc0dFLHlCQXZaRixpQ0F5WkksbUJBREEsc0JBR0EsZ0JBREEsZ0JBbEdGLENBcUdFLDZDQUtFLGNBREEsYUFGQSxXQUlBLHVCQUxBLGtCQUVBLFVBaEdKLENBc0dFLHNHQUVFLGNBcEdKLENBdUdFLG1EQUlFLHlIQUNFLENBSkYsT0FFQSxlQURBLGNBbkdKLENBbUhFLHVEQUNFLFlBakhKLENBb0hFLGdEQUlFLGFBSEEsYUFDQSxRQUNBLFdBakhKLENBcUhFLHFEQUNFLFVBbkhKLENBc0hFLGtEQUNFLG9CQUVBLFdBREEsbUJBbkhKLENBdUhFLCtDQUVFLFNBREEsY0FwSEosQ0F3SEUsbURBQ0UsY0F0SEosQ0F5SEUsK0NBQ0UsY0F2SEosQ0EwSEUsZ0RBQ0UscUJBeEhKLENBMkhFLCtDQUNFLGNBQ0EsWUF6SEosQ0FDRixDQStIRSx1Q0FDRSxnREFDRSxnQkE3SEosQ0FnSUUsMkRBQ0UsZUE5SEosQ0FDRixDIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vd2VibWVjaGFuaXgvLi9ibG9ja3MvcmVzb3VyY2UtaGVyby1sYW5kaW5nLVYyL3NyYy9fcmVzb3VyY2UtaGVyby1sYW5kaW5nLVYyLnNjc3MiLCJ3ZWJwYWNrOi8vd2VibWVjaGFuaXgvLi9zcmMvc2Nzcy9jdXN0b20vX2JyYW5kaW5nLnNjc3MiLCJ3ZWJwYWNrOi8vd2VibWVjaGFuaXgvLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIiwid2VicGFjazovL3dlYm1lY2hhbml4Ly4vc3JjL3Njc3MvY3VzdG9tL3BhcnRpYWxzL19ob3VzZS1taXhpbnMuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwiLi4vLi4vLi4vc3JjL3Njc3MvYmFyZS1icy1uZWNlc3NpdGllc1wiO1xuXG4vLyBBZGFwdGVkIGZyb20gbGFuZGluZy1wYWdlLWhlcm8tVjIuIFNhbWUgYmcvZmFkZS9mcm9zdC9saW5lIHN5c3RlbTsgQ1RBc1xuLy8gcmVwbGFjZWQgYnkgYSByb3cgb2YgbmF2IGNhcmRzICh3aGl0ZSBkZWZhdWx0LCBpbmstYmx1ZSBvbiBob3ZlcikuIElubmVyXG4vLyBlbGVtZW50cyB1c2UgdGhlIHNob3J0IGByaGwtdjJgIGFsaWFzLlxuLmJsb2NrLS1yZXNvdXJjZS1oZXJvLWxhbmRpbmctdjIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47IC8vIGNsaXAgbmVnYXRpdmVseS1wb3NpdGlvbmVkIHNoYXBlcyDigJQgcHJldmVudHMgaG9yaXpvbnRhbCBwYWdlIHNjcm9sbFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDsgLy8gbGV0IHRoZSBjb250ZW50IGNvbHVtbiBmaWxsIHRoZSBoZXJvIGhlaWdodCBzbyBjYXJkcyBjYW4gYm90dG9tLWFsaWduXG4gIC8vIFRhbGwgZW5vdWdoIHRoYXQgdGhlIGNvbnRlbnQgY29sdW1uIGV4Y2VlZHMgaXRzIG5hdHVyYWwgaGVpZ2h0LCBnaXZpbmdcbiAgLy8gYHNwYWNlLWJldHdlZW5gIHJvb20gdG8gcHVzaCB0aGUgY2FyZHMgZG93bi4gMzJweCBib3R0b20gcGFkZGluZyBzZXRzIHRoZVxuICAvLyBnYXAgYmV0d2VlbiB0aGUgY2FyZHMgYW5kIHRoZSBjb250YWluZXIncyBib3R0b20gZWRnZS5cbiAgcGFkZGluZzogOTZweCAwIDMycHg7XG4gIG1pbi1oZWlnaHQ6IDc5MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS01OyAvLyAjRjdGNkZGXG4gIHotaW5kZXg6IDE7XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09XG4gIC8vIEJBQ0tHUk9VTkQgTEFZRVJcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09XG4gIC5yaGwtdjJfX2JnIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaW5zZXQ6IDA7XG4gICAgei1pbmRleDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICAucmhsLXYyX19iZy1waG90byxcbiAgLnJobC12Ml9fYmctdmlkZW8ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDE0NDBweDtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIH1cblxuICAvLyBUd28gbGF5ZXJlZCBob3Jpem9udGFsIGdyYWRpZW50cyBmYWRlIHRoZSBiZyBpbWFnZSB0byAkcHJpbWFyeS01IGF0IHRoZVxuICAvLyBsZWZ0ICgw4oCTNTUlKSBhbmQgcmlnaHQgKDkw4oCTMTAwJSkgZWRnZXMuXG4gIC5yaGwtdjJfX2JnOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxNDQwcHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQ6XG4gICAgICBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAgIHRvIHJpZ2h0LFxuICAgICAgICAkcHJpbWFyeS01IDAlLFxuICAgICAgICAkcHJpbWFyeS01IDQ1JSxcbiAgICAgICAgdHJhbnNwYXJlbnQgNTUlXG4gICAgICApLFxuICAgICAgbGluZWFyLWdyYWRpZW50KFxuICAgICAgICB0byByaWdodCxcbiAgICAgICAgdHJhbnNwYXJlbnQgMCUsXG4gICAgICAgIHRyYW5zcGFyZW50IDkwJSxcbiAgICAgICAgJHByaW1hcnktNSAxMDAlXG4gICAgICApO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cblxuICAvLyAtLS0tLS0tLSBCYWNrZ3JvdW5kIHZpZGVvIHBsYXkvcGF1c2UgdG9nZ2xlIChXQ0FHIDIuMi4yKSAtLS0tLS0tLVxuICAucmhsLXYyX192aWRlby10b2dnbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMXJlbTtcbiAgICBib3R0b206IDFyZW07XG4gICAgei1pbmRleDogNTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAzMy42cHg7XG4gICAgaGVpZ2h0OiAzMy42cHg7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDY1LCA1MCwgMTU1LCAwLjUpO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLCB0cmFuc2Zvcm0gMC4xNXMgZWFzZTtcblxuICAgIHN2ZyB7XG4gICAgICB3aWR0aDogMTZweDtcbiAgICAgIGhlaWdodDogMTZweDtcbiAgICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoNjUsIDUwLCAxNTUsIDAuNyk7XG4gICAgfVxuXG4gICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgIG91dGxpbmU6IDJweCBzb2xpZCAkcHJpbWFyeS0xMDA7XG4gICAgICBvdXRsaW5lLW9mZnNldDogMnB4O1xuICAgIH1cblxuICAgICY6YWN0aXZlIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSk7XG4gICAgfVxuICB9XG5cbiAgLy8gLS0tLS0tLS0gTGVmdC1zaWRlIGZyb3N0ZWQgc2hhcGUgKE5PIHBhcmFsbGF4LCBOTyBib3JkZXIpIC0tLS0tLS0tXG4gIC5yaGwtdjJfX2xlZnQtZnJvc3Qtd3JhcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHotaW5kZXg6IDI7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICAvLyBIaWRlIGFsbCBkZWNvcmF0aXZlIHBhcmFsbGVsb2dyYW1zIG9uIG1vYmlsZS5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLnJobC12Ml9fbGVmdC1mcm9zdCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiA1MCU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAwMHB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBhc3BlY3QtcmF0aW86IDEuMjI1O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMzJweCk7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNDcsIDI0NiwgMjU1LCAwLjEpO1xuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig2My44cHgpO1xuICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDYzLjhweCk7XG4gICAgY2xpcC1wYXRoOiBwb2x5Z29uKDAgMCwgMTAwJSAwLCA5NiUgMTAwJSwgMCAxMDAlKTtcbiAgICAtd2Via2l0LWNsaXAtcGF0aDogcG9seWdvbigwIDAsIDEwMCUgMCwgOTYlIDEwMCUsIDAgMTAwJSk7XG4gIH1cblxuICAvLyAtLS0tLS0tLSBSaWdodC1zaWRlIGZyb3N0ZWQgcGFyYWxsZWxvZ3JhbSAod2l0aCBwYXJhbGxheCkgLS0tLS0tLS1cbiAgLnJobC12Ml9fcmlnaHQtc2hhcGVzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiA0O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgLy8gSGlkZSBhbGwgZGVjb3JhdGl2ZSBwYXJhbGxlbG9ncmFtcyBvbiBtb2JpbGUuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5yaGwtdjJfX2Zyb3N0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IC0zOHJlbTtcbiAgICB0b3A6IC02OHB4O1xuICAgIHdpZHRoOiA2MzFweDtcbiAgICBoZWlnaHQ6IDUxNXB4O1xuICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDJweCk7XG4gICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMnB4KTtcbiAgICBjbGlwLXBhdGg6IHBvbHlnb24oNTUuMSUgMCUsIDEwMCUgMCUsIDQ1JSAxMDAlLCAwJSAxMDAlKTtcblxuICAgIHN2ZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PVxuICAvLyBDT05URU5UIExBWUVSIOKAlCB0ZXh0ICh0b3AtbGVmdCkgdGhlbiBjYXJkcyByb3dcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09XG4gIC5yaGwtdjJfX2NvbnRlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAzO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAvLyBUZXh0IHBpbm5lZCB0byB0aGUgdG9wLCBjYXJkcyBwaW5uZWQgdG8gdGhlIGJvdHRvbSBvZiB0aGUgaGVyby4gYGdhcGBcbiAgICAvLyBpcyBvbmx5IGEgbWluaW11bSBzbyB0aGV5IG5ldmVyIGNvbGxpZGUgaWYgdGhlIGNvbnRlbnQgZXZlciBmaWxscyB0aGVcbiAgICAvLyBmdWxsIGhlaWdodC5cbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZ2FwOiAycmVtO1xuICAgIG1heC13aWR0aDogMTQ0MHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAvLyBDb25zdHJhaW4gdG8gMTQ0MCB3aXRoIHJlc3BvbnNpdmUgaG9yaXpvbnRhbCBwYWRkaW5nICh0aGVtZSBjb252ZW50aW9uLFxuICAgIC8vIG1hdGNoZXMgdGhlIEZpZ21hIH4xMDlweCBkZXNrdG9wIGluc2V0KS4gUmFtcHMgdXAgc28gdGV4dCArIGNhcmRzIHNpdFxuICAgIC8vIGluc2V0IGZyb20gdGhlIHZpZXdwb3J0IGVkZ2UgaW5zdGVhZCBvZiBmbHVzaCBhZ2FpbnN0IGl0LlxuICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgcGFkZGluZy1sZWZ0OiA2cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogNnJlbTtcbiAgICB9XG4gIH1cblxuICAucmhsLXYyX190ZXh0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBtYXgtd2lkdGg6IDY0MHB4O1xuICAgIGdhcDogMjRweDtcbiAgfVxuXG4gIC8vIEdyYWRpZW50IGhlYWRsaW5lXG4gIC5yaGwtdjJfX2hlYWRsaW5lIHtcbiAgICBmb250LWZhbWlseTogJGF2ZW5pci1ib2xkO1xuICAgIGZvbnQtc2l6ZTogNjBweDtcbiAgICBsaW5lLWhlaWdodDogMS4wNTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTY4ZGVnLCAkcHJpbWFyeS0xMDAgNDIuNSUsICRwcmltYXJ5LTUwIDE2OCUpO1xuICAgIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xuICAgIGJhY2tncm91bmQtY2xpcDogdGV4dDtcbiAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgQGluY2x1ZGUgdjItZ3JhZGllbnQtdGV4dC1kZXNjZW5kZXItcm9vbTtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvLyBHb2xkIGhpZ2hsaWdodCBiYXIgKG9wdGlvbmFsIFtbd29yZF1dIG1hcmt1cCkg4oCUIHNsaWRlcyBpbiBvbiBob3Zlci5cbiAgLnJobC12Ml9faGlnaGxpZ2h0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMDtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTY4ZGVnLCAkcHJpbWFyeS0xMDAgNDIuNSUsICRwcmltYXJ5LTUwIDE2OCUpO1xuICAgIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xuICAgIGJhY2tncm91bmQtY2xpcDogdGV4dDtcbiAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMC4xM2VtO1xuICAgICAgbGVmdDogLTAuMDVlbTtcbiAgICAgIHJpZ2h0OiAtMC4wNWVtO1xuICAgICAgaGVpZ2h0OiAwLjk0ZW07XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWdvbGQ7XG4gICAgICB6LWluZGV4OiAtMTtcbiAgICAgIGNsaXAtcGF0aDogcG9seWdvbigwIDAsIDEwMCUgMCwgMTAwJSAwLCAwIDApO1xuICAgICAgdHJhbnNpdGlvbjogY2xpcC1wYXRoIDAuMzVzIGVhc2U7XG4gICAgfVxuXG4gICAgJjpob3Zlcjo6YmVmb3JlIHtcbiAgICAgIGNsaXAtcGF0aDogcG9seWdvbigwIDAsIDEwMCUgMCwgMTAwJSAxMDAlLCAwIDEwMCUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEJvZHkgLyBzdWJoZWFkXG4gIC5yaGwtdjJfX2JvZHkge1xuICAgIGZvbnQtZmFtaWx5OiAkYXZlbmlyLXJlZztcbiAgICBmb250LXNpemU6IDI4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBjb2xvcjogJHByaW1hcnktMTAwO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PVxuICAvLyBOQVYgQ0FSRFMgKHdoaXRlIGRlZmF1bHQsIGluay1ibHVlIG9uIGhvdmVyKVxuICAvLyA9PT09PT09PT09PT09PT09PT09PT1cbiAgLnJobC12Ml9fY2FyZHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdhcDogMjRweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5yaGwtdjJfX2NhcmQge1xuICAgIC8vIGZsZXg6IDEgMSAyNDBweCBsZXRzIDQgY2FyZHMgc2l0IGluIGEgcm93IG9uIHdpZGUgdmlld3BvcnRzIGFuZCB3cmFwIHRvXG4gICAgLy8gMi11cCAvIDEtdXAgYXMgc3BhY2Ugc2hyaW5rcy4gbWluLXdpZHRoOjAga2VlcHMgbG9uZyB3b3JkcyBpbiBjaGVjay5cbiAgICBmbGV4OiAxIDEgMjQwcHg7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZ2FwOiAyNHB4O1xuICAgIG1pbi1oZWlnaHQ6IDIyMnB4O1xuICAgIHBhZGRpbmc6IDIxcHggMjJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTMwLCAxNDAsIDIyNSwgMC44KTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcyBlYXNlLCBib3JkZXItY29sb3IgMC4zcyBlYXNlO1xuXG4gICAgLy8gQ2FyZCBpcyBhbiA8YT47IG9wdCBpdHMgb3duIGNvbG9yL3VuZGVybGluZSBvdXQgb2YgdGhlIGdsb2JhbCBhbmNob3JcbiAgICAvLyBydWxlIChjaGlsZCBlbGVtZW50cyBzZXQgdGhlaXIgb3duIGNvbG9ycykuIFRoZSBnbG9iYWxcbiAgICAvLyBgYTpub3QoLmJ0biwgLmdmb3JtX2J1dHRvbi5nZm9ybV9idXR0b24sIC5idXR0b24sIC5hY2YtaWNvbik6aG92ZXJgXG4gICAgLy8gdW5kZXJsaW5lIHJ1bGUgY29tcGlsZXMgdG8gc3BlY2lmaWNpdHkgKDAsMywxKSDigJQgaGlnaGVyIHRoYW4gYW55XG4gICAgLy8gYmxvY2stc2NvcGVkIHNlbGVjdG9yIHdlIGNhbiByZWFzb25hYmx5IHdyaXRlIGhlcmUgKHRoZSBkb3VibGVkXG4gICAgLy8gYC5nZm9ybV9idXR0b24uZ2Zvcm1fYnV0dG9uYCBpbnNpZGUgOm5vdCgpIGlzIGEgc3BlY2lmaWNpdHkgaGFjaykg4oCUIHNvXG4gICAgLy8gYCFpbXBvcnRhbnRgIGlzIHRoZSBzdGFibGUgd2F5IHRvIGtlZXAgaXQgZnJvbSBmbGFzaGluZyBhbiB1bmRlcmxpbmVcbiAgICAvLyBhY3Jvc3MgdGhlIGNhcmQgdGV4dCBvbiBob3Zlci5cbiAgICAmLFxuICAgICY6bGluayxcbiAgICAmOnZpc2l0ZWQsXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS0xMDA7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgb3V0bGluZTogMnB4IHNvbGlkICRwcmltYXJ5LTEwMDtcbiAgICAgIG91dGxpbmUtb2Zmc2V0OiAycHg7XG4gICAgfVxuXG4gICAgLy8gLS0tLSBIb3Zlcjogd2hvbGUgY2FyZCBnb2VzIGRhcmsgLS0tLVxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktMTAwO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeS0xMDA7XG5cbiAgICAgIC5yaGwtdjJfX2NhcmQtdGl0bGUsXG4gICAgICAucmhsLXYyX19jYXJkLWJvZHkge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIH1cblxuICAgICAgLnJobC12Ml9fY2FyZC1saW5rIHtcbiAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktZ29sZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAucmhsLXYyX19jYXJkLXRleHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDEycHg7XG4gIH1cblxuICAucmhsLXYyX19jYXJkLXRpdGxlIHtcbiAgICBmb250LWZhbWlseTogJGF2ZW5pci1ib2xkO1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICBjb2xvcjogJHByaW1hcnktMTAwO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC5yaGwtdjJfX2NhcmQtYm9keSB7XG4gICAgZm9udC1mYW1pbHk6ICRhdmVuaXItcmVnO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICBjb2xvcjogJHByaW1hcnktMTAwO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC5yaGwtdjJfX2NhcmQtbGluayB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDEycHg7XG4gICAgZm9udC1mYW1pbHk6ICRhdmVuaXItbWVkO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogJHByaW1hcnktMTAwO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuM3MgZWFzZTtcblxuICAgIC5yaGwtdjJfX2NhcmQtYXJyb3cge1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICB3aWR0aDogMjlweDtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gTElORSBQQVRURVJOXG4gIC8vID09PT09PT09PT09PT09PT09PT09PVxuICAucmhsLXYyX19saW5lcyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC02MiUpO1xuICAgIHdpZHRoOiA3NTBweDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgei1pbmRleDogMjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBvcGFjaXR5OiAwLjI7XG5cbiAgICBpbWcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09XG4gIC8vIFJFU1BPTlNJVkVcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xuICAgIC5yaGwtdjJfX2hlYWRsaW5lIHtcbiAgICAgIGZvbnQtc2l6ZTogNDhweDtcbiAgICB9XG5cbiAgICAucmhsLXYyX19ib2R5IHtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICB9XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gTU9CSUxFIFNUQUNLICjiiaQ3NjdweClcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwIDAgNDBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgLnJobC12Ml9fYmcge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgaW5zZXQ6IGF1dG87XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMjgwcHg7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cblxuICAgIC5yaGwtdjJfX2JnLXBob3RvLFxuICAgIC5yaGwtdjJfX2JnLXZpZGVvIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAucmhsLXYyX19iZzo6YWZ0ZXIge1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6XG4gICAgICAgIGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgICB0byBib3R0b20sXG4gICAgICAgICAgdHJhbnNwYXJlbnQgMCUsXG4gICAgICAgICAgdHJhbnNwYXJlbnQgNTUlLFxuICAgICAgICAgICRwcmltYXJ5LTUgMTAwJVxuICAgICAgICApLFxuICAgICAgICBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAgICAgdG8gcmlnaHQsXG4gICAgICAgICAgJHByaW1hcnktNSAwJSxcbiAgICAgICAgICB0cmFuc3BhcmVudCA0MCVcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAucmhsLXYyX19yaWdodC1zaGFwZXMge1xuICAgICAgaGVpZ2h0OiAyODBweDtcbiAgICB9XG5cbiAgICAucmhsLXYyX19mcm9zdCB7XG4gICAgICByaWdodDogLTEwcmVtO1xuICAgICAgdG9wOiA0cHg7XG4gICAgICB3aWR0aDogMjgwcHg7XG4gICAgICBoZWlnaHQ6IDIyMHB4O1xuICAgIH1cblxuICAgIC5yaGwtdjJfX2xlZnQtZnJvc3Qge1xuICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgLnJobC12Ml9fY29udGVudCB7XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgIHBhZGRpbmc6IDMycHggMjBweCAwO1xuICAgICAgZ2FwOiAyLjVyZW07XG4gICAgfVxuXG4gICAgLnJobC12Ml9fdGV4dCB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBnYXA6IDIwcHg7XG4gICAgfVxuXG4gICAgLnJobC12Ml9faGVhZGxpbmUge1xuICAgICAgZm9udC1zaXplOiAzNnB4O1xuICAgIH1cblxuICAgIC5yaGwtdjJfX2JvZHkge1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgIH1cblxuICAgIC5yaGwtdjJfX2NhcmRzIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuXG4gICAgLnJobC12Ml9fY2FyZCB7XG4gICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09XG4gIC8vIE1PVElPTiBQUkVGRVJFTkNFU1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT1cbiAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAucmhsLXYyX19mcm9zdCB7XG4gICAgICB3aWxsLWNoYW5nZTogYXV0bztcbiAgICB9XG5cbiAgICAucmhsLXYyX19oaWdobGlnaHQ6OmJlZm9yZSB7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUHJpbWFyeVxuJGJsdWU6ICAgIFx0XHQjMzIwRkZGO1xuJGRhcmstYmx1ZTogICAgXHQjNDEzMjlCO1xuJGluay1ibHVlLTEwMDpcdCMyMzAwNEI7XG4kaW5rLWJsdWUtOTA6XHQjMjgwQTVGO1xuJGluay1ibHVlLTcwOlx0IzMyMTQ3ODtcbiRpbmstYmx1ZS01MDpcdCM0MTMyOUI7XG4kaW5rLWJsdWUtMzA6XHQjNUY1RkMzO1xuJGluay1ibHVlLTEwOlx0IzgyOENFMTtcbiRpbmstYmx1ZS04Olx0I0NERDFGMztcbiRpbmstYmx1ZS01Olx0I2Y3ZjZmZjtcbiRwcmltYXJ5Olx0ICBcdCRibHVlO1xuJHByaW1hcnktZGFyazogXHQkZGFyay1ibHVlO1xuJHByaW1hcnktMTAwOiBcdCRpbmstYmx1ZS0xMDA7XG4kcHJpbWFyeS05MDogXHQkaW5rLWJsdWUtOTA7XG4kcHJpbWFyeS03MDogXHQkaW5rLWJsdWUtNzA7XG4kcHJpbWFyeS01MDogXHQkaW5rLWJsdWUtNTA7XG4kcHJpbWFyeS0zMDogXHQkaW5rLWJsdWUtMzA7XG4kcHJpbWFyeS0xMDogXHQkaW5rLWJsdWUtMTA7XG4kcHJpbWFyeS04OiBcdCRpbmstYmx1ZS04O1xuJHByaW1hcnktNTogXHQkaW5rLWJsdWUtNTtcblxuXG4vLyBTZWNvbmRhcnlcbiRyZWQ6XHRcdFx0I0U2MUUyRDtcbiRicmlnaHQtYmx1ZTpcdCMzMjBGRkY7XG4kZ29sZDpcdFx0XHQjRkZCRTAwO1xuXG4kc2Vjb25kYXJ5LXJlZDpcdFx0JHJlZDtcbiRzZWNvbmRhcnktYmx1ZTpcdCRicmlnaHQtYmx1ZTtcbiRzZWNvbmRhcnktZ29sZDpcdCRnb2xkO1xuXG4vLyBOZXV0cmFsXG4kYmxhY2s6IFx0IzAwMDAwMDtcbiRkYXJrLWdyYXk6ICM3OTcyNzk7XG4kd2FybS1ncmF5Olx0I0I0QjRCOTtcbiRzbm93LWdyYXk6ICNGMEYwRjE7XG4kd2hpdGU6IFx0I0ZGRkZGRjtcblxuXG4vLyBFeHRyYXNcbiRjb2xvcnM6IChcblx0J3ByaW1hcnknXHRcdFx0OiAkcHJpbWFyeSxcblx0J3ByaW1hcnktZGFyaydcdFx0OiAkcHJpbWFyeS1kYXJrLFxuXHQncHJpbWFyeS0xMDAnIFx0XHQ6ICRwcmltYXJ5LTEwMCxcblx0J3ByaW1hcnktOTAnIFx0XHQ6ICRwcmltYXJ5LTkwLFxuXHQncHJpbWFyeS03MCcgXHRcdDogJHByaW1hcnktNzAsXG5cdCdwcmltYXJ5LTUwJyBcdFx0OiAkcHJpbWFyeS01MCxcblx0J3ByaW1hcnktMzAnIFx0XHQ6ICRwcmltYXJ5LTMwLFxuXHQncHJpbWFyeS0xMCcgXHRcdDogJHByaW1hcnktMTAsXG5cdCdwcmltYXJ5LTgnIFx0XHQ6ICRwcmltYXJ5LTgsXG5cdCdwcmltYXJ5LTUnIFx0XHQ6ICRwcmltYXJ5LTUsXG5cdCdyZWQnXHRcdFx0XHQ6ICRzZWNvbmRhcnktcmVkLFxuXHQnYnJpZ2h0LWJsdWUnXHRcdDogJHNlY29uZGFyeS1ibHVlLFxuXHQnZ29sZCdcdFx0XHRcdDogJHNlY29uZGFyeS1nb2xkLFxuXHQnd2FybS1ncmF5J1x0XHRcdDogJHdhcm0tZ3JheSxcblx0J2RhcmstZ3JheSdcdFx0XHQ6ICRkYXJrLWdyYXksXG5cdCdibGFjaydcdFx0XHRcdDogJGJsYWNrLFxuXHQnd2hpdGUnXHRcdFx0XHQ6ICR3aGl0ZVxuKTtcblxuLy8gU2FuLXNlcmlmIEZvbnRzXG4kYXZlbmlyLXJlZzogJ0F2ZW5pciBMVCBQcm8gUmVndWxhcicsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kYXZlbmlyLW1lZDogJ0F2ZW5pciBMVCBQcm8gTWVkaXVtJywgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRhdmVuaXItZGVtaTogJ0F2ZW5pciBMVCBQcm8gRGVtaScsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kYXZlbmlyLWJvbGQ6ICdBdmVuaXIgTFQgUHJvIEJvbGQnLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLyBTZXJpZiBGb250c1xuJGdlb3JnaWE6ICdHZW9yZ2lhJywgc2VyaWYgIWRlZmF1bHQ7IiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwgeHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQGlmIG5vdCAkbiB7XG4gICAgQGVycm9yIFwiYnJlYWtwb2ludCBgI3skbmFtZX1gIG5vdCBmb3VuZCBpbiBgI3skYnJlYWtwb2ludHN9YFwiO1xuICB9XG4gIEByZXR1cm4gaWYoJG4gPCBsZW5ndGgoJGJyZWFrcG9pbnQtbmFtZXMpLCBudGgoJGJyZWFrcG9pbnQtbmFtZXMsICRuICsgMSksIG51bGwpO1xufVxuXG4vLyBNaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE51bGwgZm9yIHRoZSBzbWFsbGVzdCAoZmlyc3QpIGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1taW4oc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC5cbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIHJlZHVjZWQgYnkgMC4wMnB4IHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZlxuLy8gYG1pbi1gIGFuZCBgbWF4LWAgcHJlZml4ZXMgYW5kIHZpZXdwb3J0cyB3aXRoIGZyYWN0aW9uYWwgd2lkdGhzLlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9tZWRpYXF1ZXJpZXMtNC8jbXEtbWluLW1heFxuLy8gVXNlcyAwLjAycHggcmF0aGVyIHRoYW4gMC4wMXB4IHRvIHdvcmsgYXJvdW5kIGEgY3VycmVudCByb3VuZGluZyBidWcgaW4gU2FmYXJpLlxuLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzgyNjFcbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1heChtZCwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1heCBhbmQgJG1heCA+IDAsICRtYXggLSAuMDIsIG51bGwpO1xufVxuXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluIGZyb250LlxuLy8gVXNlZnVsIGZvciBtYWtpbmcgcmVzcG9uc2l2ZSB1dGlsaXRpZXMuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgXCItc21cIlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcIlwiLCBcIi0jeyRuYW1lfVwiKTtcbn1cblxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1pbiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1heCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgdGhhdCBzcGFucyBtdWx0aXBsZSBicmVha3BvaW50IHdpZHRocy5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCR1cHBlciwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbG93ZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCR1cHBlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gTWVkaWEgYmV0d2VlbiB0aGUgYnJlYWtwb2ludCdzIG1pbmltdW0gYW5kIG1heGltdW0gd2lkdGhzLlxuLy8gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZCBubyBtYXhpbXVtIGZvciB0aGUgbGFyZ2VzdCBvbmUuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgb25seSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCwgbm90IHZpZXdwb3J0cyBhbnkgd2lkZXIgb3IgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46ICBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogIGJyZWFrcG9pbnQtbWF4KCRuZXh0LCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmV4dCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6bWF0aCc7XG5cbi8vIFNvbWUgaG91c2UgbWl4aW5zOlxuQGZ1bmN0aW9uIHVybEVuY29kZUNvbG9yKCRzdHJpbmcpe1xuXHRAaWYgdHlwZS1vZigkc3RyaW5nKSA9PSAnY29sb3Ine1xuXHRcdCRoZXg6IHN0ci1zbGljZShpZS1oZXgtc3RyKCRzdHJpbmcpLCA0KTtcblx0XHQkc3RyaW5nOiB1bnF1b3RlKFwiI3skaGV4fVwiKTtcblx0fVxuXHQkc3RyaW5nOiAnJTIzJyArICRzdHJpbmc7XG5cdEByZXR1cm4gJHN0cmluZztcbn1cbkBmdW5jdGlvbiBzdHJpcC11bml0KCR2YWx1ZSl7XG5cdEByZXR1cm4gbWF0aC5kaXYoJHZhbHVlLCAkdmFsdWUgKiAwICsgMSk7XG59XG5AbWl4aW4gZmx1aWQtdHlwZSgkbWluLXZ3LCAkbWF4LXZ3LCAkbWluLWZvbnQtc2l6ZSwgJG1heC1mb250LXNpemUpe1xuXHQkdTE6IHVuaXQoJG1pbi12dyk7XG5cdCR1MjogdW5pdCgkbWF4LXZ3KTtcblx0JHUzOiB1bml0KCRtaW4tZm9udC1zaXplKTtcblx0JHU0OiB1bml0KCRtYXgtZm9udC1zaXplKTtcblx0QGlmICR1MSA9PSAkdTIgYW5kICR1MSA9PSAkdTMgYW5kICR1MSA9PSAkdTR7XG5cdFx0Jntcblx0XHRcdGZvbnQtc2l6ZTogJG1pbi1mb250LXNpemU7XG5cdFx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWluLXZ3KXtcblx0XHRcdFx0Zm9udC1zaXplOiBjYWxjKCN7JG1pbi1mb250LXNpemV9ICsgI3tzdHJpcC11bml0KCRtYXgtZm9udC1zaXplIC0gJG1pbi1mb250LXNpemUpfSAqICgoMTAwdncgLSAjeyRtaW4tdnd9KSAvICN7c3RyaXAtdW5pdCgkbWF4LXZ3IC0gJG1pbi12dyl9KSk7XG5cdFx0XHR9XG5cdFx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWF4LXZ3KXtcblx0XHRcdFx0Zm9udC1zaXplOiAkbWF4LWZvbnQtc2l6ZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbi8vIOKUgOKUgOKUgCBWMiBzZWN0aW9uIHJoeXRobSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbi8vIFRoZSBzaW5nbGUgdmVydGljYWwgcGFkZGluZyB0b2tlbiBldmVyeSBWMiBzZWN0aW9uIGJsb2NrIHVzZXMuIEJlZm9yZSB0aGlzXG4vLyBleGlzdGVkLCAyNiBWMiBibG9ja3MgY2FycmllZCAxMyBkaWZmZXJlbnQgdG9wL2JvdHRvbSBwYWlyaW5ncyBzdGVwcGluZyBhdFxuLy8gdHdvIGRpZmZlcmVudCBicmVha3BvaW50czsgNDgg4oaSIDgwIGlzIHRoZSBtZWRpYW4gb2Ygd2hhdCB3YXMgYWxyZWFkeSB0aGVyZVxuLy8gYW5kIGltYWdlLWFuZC1pdGVtLWxpc3QtVjIgLyByZXNvdXJjZS1jYXJvdXNlbC1WMiAvIHNvY2lhbC1wcm9vZi12MiBhbHJlYWR5XG4vLyBtYXRjaGVkIGl0IGV4YWN0bHksIHNvIGl0IGlzIHRoZSBzbWFsbGVzdCB0b3RhbCBtb3ZlLlxuLy9cbi8vIFN0ZXBwaW5nIGF0IGBsZ2AgKG5vdCBgbWRgKSBpcyBkZWxpYmVyYXRlOiBpdCBsaW5lcyB0aGUgdmVydGljYWwgc3RlcCB1cCB3aXRoXG4vLyB0aGUgaG9yaXpvbnRhbCBndXR0ZXIgcmFtcCAoMS41cmVtIOKGkiA2cmVtIEBsZykgdGhhdCAxOSBibG9ja3MgYWxyZWFkeSB1c2UsIHNvXG4vLyBhIHNlY3Rpb24gY2hhbmdlcyBpdHMgc3BhY2luZyBpbiBvbmUgZGlyZWN0aW9uIGF0IG9uZSB3aWR0aC5cbi8vXG4vLyBgJHNpZGVzYCBsZXRzIGEgYmxvY2sgdGFrZSB0aGUgdG9rZW4gb24gb25lIGVkZ2Ugd2hpbGUgb3duaW5nIHRoZSBvdGhlciDigJRcbi8vIGNhcGFiaWxpdGllcy1WMiBuZWVkcyBpdHMgb3duIGJvdHRvbSAoaXQgcmVzZXJ2ZXMgNjBweCBmb3IgYW4gYWJzb2x1dGVseVxuLy8gcG9zaXRpb25lZCBlbGVtZW50KS4gQW55dGhpbmcgb3B0aW5nIG91dCBlbnRpcmVseSBqdXN0IGRvZXNuJ3QgaW5jbHVkZSB0aGlzLlxuJHYyLXNlY3Rpb24tcGFkZGluZy1zbTogNDhweDtcbiR2Mi1zZWN0aW9uLXBhZGRpbmctbGc6IDgwcHg7XG5cbkBtaXhpbiB2Mi1zZWN0aW9uLXBhZGRpbmcoJHNpZGVzOiBib3RoKSB7XG5cdEBpZiAkc2lkZXMgPT0gYm90aCBvciAkc2lkZXMgPT0gdG9wIHtcblx0XHRwYWRkaW5nLXRvcDogJHYyLXNlY3Rpb24tcGFkZGluZy1zbTtcblx0fVxuXHRAaWYgJHNpZGVzID09IGJvdGggb3IgJHNpZGVzID09IGJvdHRvbSB7XG5cdFx0cGFkZGluZy1ib3R0b206ICR2Mi1zZWN0aW9uLXBhZGRpbmctc207XG5cdH1cblxuXHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG5cdFx0QGlmICRzaWRlcyA9PSBib3RoIG9yICRzaWRlcyA9PSB0b3Age1xuXHRcdFx0cGFkZGluZy10b3A6ICR2Mi1zZWN0aW9uLXBhZGRpbmctbGc7XG5cdFx0fVxuXHRcdEBpZiAkc2lkZXMgPT0gYm90aCBvciAkc2lkZXMgPT0gYm90dG9tIHtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAkdjItc2VjdGlvbi1wYWRkaW5nLWxnO1xuXHRcdH1cblx0fVxufVxuLy8g4pSA4pSA4pSAIEdyYWRpZW50IHRleHQg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4vLyBEZXNjZW5kZXIgcm9vbSBmb3IgZ3JhZGllbnQtY2xpcHBlZCB0ZXh0LlxuLy9cbi8vIFYyIGhlYWRpbmdzIHRha2UgdGhlaXIgY29sb3VyIGZyb20gYSBncmFkaWVudCAqYmFja2dyb3VuZCogY2xpcHBlZCB0byB0aGVcbi8vIGdseXBocyAoYGJhY2tncm91bmQtY2xpcDogdGV4dGAgcGx1cyBhIHRyYW5zcGFyZW50IHRleHQgZmlsbCkuIEEgYmFja2dyb3VuZFxuLy8gb25seSBwYWludHMgaW5zaWRlIHRoZSBlbGVtZW50J3MgYm94LCBzbyBpbmsgaGFuZ2luZyBiZWxvdyB0aGF0IGJveCBoYXNcbi8vIG5vdGhpbmcgdG8gcGFpbnQgd2l0aCBhbmQgc2ltcGx5IGRpc2FwcGVhcnMuIEl0IGRvZXNuJ3QgcmVhZCBhcyBjbGlwcGVkIOKAlFxuLy8gdGhlIGJvdHRvbSBsb29wIG9mIGEgXCJnXCIgb3IgdGhlIHRhaWwgb2YgYSBcInlcIiBpcyBqdXN0IGFic2VudCDigJQgd2hpY2ggaXMgd2h5XG4vLyBpdCBnb2VzIHVubm90aWNlZCB1bnRpbCBhbiBlZGl0b3IgaGFwcGVucyB0byB0eXBlIG9uZSBvbnRvIHRoZSBsYXN0IGxpbmUuXG4vL1xuLy8gVGhlIG92ZXJoYW5nIGlzIGEgY29uc2VxdWVuY2Ugb2YgdGhlIHRpZ2h0IGVkaXRvcmlhbCBsaW5lLWhlaWdodHMgdGhlIGRlc2lnbnNcbi8vIHVzZS4gQXZlbmlyJ3MgZGVzY2VuZGVyIGluayByZWFjaGVzIDAuMjQwZW0gYmVsb3cgdGhlIGJhc2VsaW5lLCBzbyBjbGlwcGluZ1xuLy8gYmVnaW5zIHdoZXJldmVyIGxpbmUtaGVpZ2h0IGRyb3BzIGJlbG93IH4xLjE3NCwgYW5kIG5vIFYyIGhlYWRpbmcgaXMgYWJvdmVcbi8vIHRoYXQuIE9ubHkgdGhlIGZpbmFsIGxpbmUgaXMgZXZlciBhZmZlY3RlZDsgaW50ZXJpb3IgbGluZXMgc2l0IGluc2lkZSB0aGUgYm94LlxuLy9cbi8vIDAuMWVtIGNvdmVycyB0aGUgd29yc3QgY2FzZSAoOTBweCBoZWFkbGluZXMgYXQgbGluZS1oZWlnaHQgMSkgd2l0aCBoZWFkcm9vbS5cbi8vIEluIGVtIHNvIGl0IHRyYWNrcyBhIGhlYWRpbmcncyByZXNwb25zaXZlIHNpemVzIOKAlCBpbmNsdWRpbmcgY2xhbXAoKSDigJQgd2l0aG91dFxuLy8gcGVyLWJyZWFrcG9pbnQgb3ZlcnJpZGVzLiBSYWlzaW5nIGxpbmUtaGVpZ2h0IHBhc3QgfjEuMTc0IHdvdWxkIGFsc28gZml4IGl0LFxuLy8gYnV0IHRoYXQgbG9vc2VucyBldmVyeSBsaW5lIG9mIGEgbXVsdGktbGluZSBoZWFkaW5nIGJ5IDEwLTE3JSBhbmQgdGhlIHRpZ2h0XG4vLyBzZXR0aW5nIGlzIHRoZSBkZXNpZ24uXG4vL1xuLy8gT25seSB0aGUgYm90dG9tIG5lZWRzIGl0OiB0aGUgdGFsbGVzdCBpbmsgaW4gdGhlIGZhY2Ugc2l0cyB3ZWxsIGluc2lkZSB0aGVcbi8vIGxpbmUgYm94IHRvcCwgc28gYXNjZW5kZXJzIGFscmVhZHkgaGF2ZSBjbGVhcmFuY2UuXG4vL1xuLy8gT25lIHNpZGUgZWZmZWN0IHdvcnRoIGtub3dpbmc6IGJhY2tncm91bmQtb3JpZ2luIGlzIHRoZSBwYWRkaW5nIGJveCwgc28gdGhpc1xuLy8gbGVuZ3RoZW5zIHRoZSBncmFkaWVudCdzIHBhaW50aW5nIGFyZWEgYnkgdGhlIHNhbWUgMC4xZW0uIFRoZSByYW1wIHN0cmV0Y2hlc1xuLy8gd2l0aCBpdCBhbmQgdGhlIGNvbG91cnMgbGFuZCBtYXJnaW5hbGx5IGxvd2VyIOKAlCB1bmRlciAxMCUgb2YgdGhlIHJhbXAgb24gYVxuLy8gc2luZ2xlLWxpbmUgaGVhZGluZywgcHJvcG9ydGlvbmFsbHkgbGVzcyBhcyBsaW5lcyBhcmUgYWRkZWQuIERlbGliZXJhdGVseSBub3Rcbi8vIGNvbXBlbnNhdGVkIHdpdGggYSBuZWdhdGl2ZSBtYXJnaW4gaGVyZTogYSBibG9jayB0aGF0IHNldHMgbWFyZ2luLWJvdHRvbVxuLy8gYWZ0ZXIgdGhlIGluY2x1ZGUgd291bGQgc2lsZW50bHkgY2FuY2VsIGl0LlxuLy9cbi8vIFRoZSByb29tIGEgZ2l2ZW4gc2V0dGluZyBhY3R1YWxseSBuZWVkcywgaW4gZW0sIGlzXG4vL1xuLy8gICBpbmtfZGVzY2VudCAtIGZvbnRfZGVzY2VudCArIChjb250ZW50X2FyZWEgLSBsaW5lX2hlaWdodCkgLyAyXG4vL1xuLy8gd2hpY2ggZm9yIHRoZSB0aHJlZSBmYWNlcyBpbiBwbGF5IHB1dHMgdGhlIGNsaXBwaW5nIHRocmVzaG9sZCBhdFxuLy9cbi8vICAgQXZlbmlyIExUIFBybyBCb2xkICAgICBpbmsgMC4yNDAyICBkZXNjZW50IDAuMjcwMCAgY29udGVudCAxLjIzMjUgIGxoIDwgMS4xNzNcbi8vICAgQXZlbmlyIExUIFBybyBNZWRpdW0gICBpbmsgMC4yNDAyICBkZXNjZW50IDAuMjcwMCAgY29udGVudCAxLjIyMDAgIGxoIDwgMS4xNjBcbi8vICAgQXZlbmlyIE5leHQgICAgICAgICAgICBpbmsgMC4yNDAwICBkZXNjZW50IDAuMzY1MCAgY29udGVudCAxLjM2NTAgIGxoIDwgMS4xMTVcbi8vXG4vLyBBdmVuaXIgTmV4dCdzIGRlZXBlciBkZXNjZW50IG1ldHJpYyBidXlzIGl0IDAuMDZlbSBvZiBzbGFjayB0aGUgTFQgUHJvIGZhY2VzXG4vLyBkb24ndCBoYXZlLCB3aGljaCBpcyB3aHkgdGhlIHR3byBhY2NvcmRpb24gaGVhZGluZ3MgYXQgbGluZS1oZWlnaHQgMS4xNSBkb24ndFxuLy8gY2xpcCB3aGlsZSB0aGUgTFQgUHJvIGhlYWRpbmdzIGF0IDEuMTExIGRvLiAoQ2hlY2tlZCB0aGUgV2luZG93cyBmYWxsYmFjayB0b286XG4vLyBnZW5lcmljIHNhbnMtc2VyaWYgaXMgMC4yMjEyIC8gMC4yMzAwIC8gMS4xNTAwLCB0aHJlc2hvbGQgMS4xMzIsIGFsc28gY2xlYXIuKVxuLy9cbi8vICRyb29tIGV4aXN0cyBmb3IgdGhlIHNoYWxsb3cgdGllci4gRWxldmVuIDQ1cHgvNTBweCBoZWFkaW5ncyBvdmVyaGFuZyBieVxuLy8gMS40cHg7IHRoZSBkZWZhdWx0IDAuMWVtIHdvdWxkIGZpeCB0aGF0IGF0IGEgY29zdCBvZiA0LjVweCBvZiBleHRyYSBnYXBcbi8vIHVuZGVyIGVhY2ggb25lLCBzbyB0aGV5IHRha2UgMC4wNWVtIGluc3RlYWQg4oCUIDIuMjVweCwgc3RpbGwgNjAlIGhlYWRyb29tIG92ZXIgdGhlIDEuNHB4LFxuLy8gZm9yIGEgZ2FwIGNoYW5nZSB0aGF0IHN0YXlzIHVuZGVyIHRoZSAycHggdGhlIGluayBpdHNlbGYgb2NjdXBpZXMuIEFueXRoaW5nXG4vLyBkZWVwZXIgdGhhbiB+Mi41cHggc2hvdWxkIHRha2UgdGhlIGRlZmF1bHQuXG5AbWl4aW4gdjItZ3JhZGllbnQtdGV4dC1kZXNjZW5kZXItcm9vbSgkcm9vbTogMC4xZW0pIHtcblx0cGFkZGluZy1ib3R0b206ICRyb29tO1xufVxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/