:root{--pwd--ldnav--button-size:1.75rem}.ldnav-loaded .nav-main__list-item,.ldnav-loaded .nav-main__sub-list-item,.ldnav-loaded .nav-main__sub-list:not([hidden]),.ldnav-loaded .nav-mobile__menu:not([hidden]),button.nav-main__sub-button{display:-ms-flexbox;display:flex}.ldnav-loaded .nav-main__list-item,.ldnav-loaded .nav-main__sub-list-item,button.nav-main__sub-button,button.nav-mobile__button{-ms-flex-align:center;align-items:center}.ldnav-loaded .nav-main__list-item,.ldnav-loaded .nav-main__sub-list-item{-ms-flex-wrap:wrap;flex-wrap:wrap;position:relative}button.nav-main__sub-button,button.nav-mobile__button{border:0;font-size:inherit}.ldnav-loaded .nav-main__sub-list,.ldnav-loaded .nav-mobile__menu{background-color:var(--pwd--background-color);-ms-flex-direction:column;flex-direction:column;left:-14px;margin-top:0;position:absolute;text-align:left;top:100%;width:100%;z-index:1000}.ldnav-loaded .nav-main__sub-list .nav-main__list-item,.ldnav-loaded .nav-mobile__menu .nav-main__list-item{margin-bottom:0;margin-right:0}.ldnav-loaded .nav-main__sub-list .nav-main__link,.ldnav-loaded .nav-mobile__menu .nav-main__link{-ms-flex-positive:1;flex-grow:1;margin:0;min-width:0}.ldnav-loaded .nav-main__sub-list .nav-main__sub-button,.ldnav-loaded .nav-mobile__menu .nav-main__sub-button{margin:.5rem}.ldnav-loaded .nav-main__sub-list .nav-main__sub-list,.ldnav-loaded .nav-mobile__menu .nav-main__sub-list{border-bottom:0;border-left:0;border-right:0;-ms-flex:0 0 100%;flex:0 0 100%;margin-top:0;max-width:100%;min-width:0;position:static;width:auto;z-index:inherit}.ldnav-loaded .nav-mobile__menu{left:auto;right:0;top:100%}.ldnav-loaded .nav-mobile__menu .nav-main__link:focus{box-shadow:inset 0 0 0 6px #fff;outline:2px solid var(--pwd--outline--color,#000);outline-offset:-4px}.ldnav-loaded .nav-mobile__menu .nav-main__sub-button{--pwd--button--color-background:transparent}.nav-main__sub-button-icon,.nav-mobile__button-icon{-ms-flex-negative:0;flex-shrink:0;height:auto}.ldnav-loaded .nav-main__sub-list{max-width:21.875rem;width:100vw}button.nav-main__sub-button{--pwd--button--color:var(--pwd--color--theme-1);--pwd--button--color--hover:var(--pwd--background-color);--pwd--button--color-background:var(--pwd--background-color);--pwd--button--color-background--hover:var(--pwd--color--theme-1);-ms-flex-pack:center;border-radius:50%;height:var(--pwd--ldnav--button-size);justify-content:center;margin-left:10px;min-height:0;min-width:0;padding:5px;width:var(--pwd--ldnav--button-size)}.nav-main__sub-button-icon{width:87.5%}.nav-mobile-parent{-ms-flex-item-align:center;align-self:center;-ms-flex-pack:end;justify-content:flex-end}button.nav-mobile__button{background-color:transparent;border-radius:4px;color:var(--pwd--color--theme-1);-moz-column-gap:.5rem;column-gap:.5rem;font-size:1rem;padding:6px 12px}button.nav-mobile__button[aria-expanded=true] svg{color:#d53f34}.nav-mobile__button-icon{width:1.25em}.nav-main__sub-list,[aria-expanded=false] .path-close,[aria-expanded=true] .path-open{display:none}@supports(display:grid){.ldnav-loaded .nav-main__list-item,.ldnav-loaded .nav-main__sub-list-item{display:grid;grid-template-columns:1fr auto}.ldnav-loaded .nav-main__list-item>.nav-main__sub-list,.ldnav-loaded .nav-main__sub-list-item>.nav-main__sub-list{grid-column:1/3}.ldnav-loaded .nav-mobile__menu:not([hidden]){display:block}}@media(max-width:767.98px){button.nav-mobile__button{display:-ms-flexbox;display:flex}.nav-mobile__item--cloned{display:none!important}}@media(min-width:992px){.nav-mobile__button,.nav-mobile__menu{display:none!important}}@media(any-pointer:coarse){.ldnav-loaded button.nav-main__sub-button{position:relative}.ldnav-loaded button.nav-main__sub-button:after{background:transparent;border-radius:100%;content:"";height:var(--pwd--target-size--big);min-width:var(--pwd--target-size--big);position:absolute;width:var(--pwd--target-size--big)}}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL2Fzc2V0cy9zdHlsZXMvY29tcG9uZW50cy9saW5rLWRpc2Nsb3N1cmUtbmF2LXdpZGdldC5zY3NzIiwiLi4vYXNzZXRzL3N0eWxlcy9jb21tb24vX21peGlucy5zY3NzIiwiLi4vYXNzZXRzL3N0eWxlcy92ZW5kb3IvYm9vdHN0cmFwL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFVQSxNQUNDLGlDQUFBLENBR0Qsb01BS0MsbUJBQUEsQ0FBQSxZQUFBLENBR0QsZ0lBSUMscUJBQUEsQ0FBQSxrQkFBQSxDQUdELDBFQVFFLGtCQUFBLENBQUEsY0FBQSxDQU5ELGlCQUFBLENBVUQsc0RBR0MsUUFBQSxDQURBLGlCQUNBLENBR0Qsa0VBU0MsNkNBQUEsQ0FOQSx5QkFBQSxDQUFBLHFCQUFBLENBT0EsVUFBQSxDQUpBLFlBQUEsQ0FKQSxpQkFBQSxDQUtBLGVBQUEsQ0FIQSxRQUFBLENBQ0EsVUFBQSxDQUdBLFlBRUEsQ0FFQSw0R0FDQyxlQUFBLENBQ0EsY0FBQSxDQUdELGtHQUNDLG1CQUFBLENBQUEsV0FBQSxDQUVBLFFBQUEsQ0FEQSxXQUNBLENBR0QsOEdBQ0MsWUFBQSxDQUdELDBHQVNDLGVBQUEsQ0FGQSxhQUFBLENBQ0EsY0FBQSxDQU5BLGlCQUFBLENBQUEsYUFBQSxDQUdBLFlBQUEsQ0FEQSxjQUFBLENBREEsV0FBQSxDQU9BLGVBQUEsQ0FUQSxVQUFBLENBS0EsZUFJQSxDQUlGLGdDQUNDLFNBQUEsQ0FDQSxPQUFBLENBQ0EsUUFBQSxDQzBEQyxzREFHQywrQkFBQSxDQUZBLGlEQUFBLENBQ0EsbUJBQ0EsQ0R2REYsc0RBQ0MsMkNBQUEsQ0FJRixvREFFQyxtQkFBQSxDQUFBLGFBQUEsQ0FDQSxXQUFBLENBR0Qsa0NBRUMsbUJBQUEsQ0FEQSxXQUNBLENBR0QsNEJBQ0MsK0NBQUEsQ0FDQSx3REFBQSxDQUNBLDREQUFBLENBQ0EsaUVBQUEsQ0FFQSxvQkFBQSxDQVFBLGlCQUFBLENBTkEscUNBQUEsQ0FGQSxzQkFBQSxDQUtBLGdCQUFBLENBREEsWUFBQSxDQURBLFdBQUEsQ0FHQSxXQUFBLENBTEEsb0NBT0EsQ0FHRCwyQkFDQyxXQUFBLENBR0QsbUJBQ0MsMEJBQUEsQ0FBQSxpQkFBQSxDQUNBLGlCQUFBLENBQUEsd0JBQUEsQ0FHRCwwQkFLQyw0QkFBQSxDQURBLGlCQUFBLENBRUEsZ0NBQUEsQ0FKQSxxQkFBQSxDQUFBLGdCQUFBLENBREEsY0FBQSxDQUVBLGdCQUdBLENBR0Msa0RBQ0MsYUFBQSxDQUtILHlCQUNDLFlBQUEsQ0FHRCxzRkFHQyxZQUFBLENBS0Qsd0JBRUUsMEVBRUMsWUFBQSxDQUNBLDhCQUFBLENBRUEsa0hBQ0MsZUFBQSxDQUlGLDhDQUNDLGFBQUEsQ0FBQSxDRTFHQywyQkZnSEgsMEJBQ0MsbUJBQUEsQ0FBQSxZQUFBLENBR0QsMEJBQ0Msc0JBQUEsQ0FBQSxDRWxJRSx3QkZ1SUgsc0NBRUMsc0JBQUEsQ0FBQSxDQVlGLDJCQUNDLDBDQUNDLGlCQUFBLENBRUEsZ0RBR0Msc0JBQUEsQ0FJQSxrQkFBQSxDQU5BLFVBQUEsQ0FLQSxtQ0FBQSxDQURBLHNDQUFBLENBSEEsaUJBQUEsQ0FFQSxrQ0FHQSxDQUFBIiwiZmlsZSI6ImNvbXBvbmVudHMvbGluay1kaXNjbG9zdXJlLW5hdi13aWRnZXQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLy8gPT0gUFdEIFdQIFNhc3MgRnJhbWV3b3JrID09XG4vLyBMaW5rICsgZGlzY2xvc3VyZSBuYXZpZ2F0aW9uIHdpZGdldCBzdHlsZXNcblxuQHVzZSBcInNhc3M6Y29sb3JcIjtcbkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuQGltcG9ydCBcIi4uL2NvbW1vbi9jb21tb24tYXNzZXRzXCI7XG5AaW1wb3J0IFwiLi4vY29tbW9uL21peGluc1wiO1xuQGltcG9ydCBcIi4uL2NvbW1vbi9taXhpbnNcIjtcblxuOnJvb3Qge1xuXHQtLXB3ZC0tbGRuYXYtLWJ1dHRvbi1zaXplOiAje3B4LXRvLXJlbSgyOCl9O1xufVxuXG5idXR0b24ubmF2LW1haW5fX3N1Yi1idXR0b24sXG4ubGRuYXYtbG9hZGVkIC5uYXYtbWFpbl9fbGlzdC1pdGVtLFxuLmxkbmF2LWxvYWRlZCAubmF2LW1haW5fX3N1Yi1saXN0LWl0ZW0sXG4ubGRuYXYtbG9hZGVkIC5uYXYtbW9iaWxlX19tZW51Om5vdChbaGlkZGVuXSksXG4ubGRuYXYtbG9hZGVkIC5uYXYtbWFpbl9fc3ViLWxpc3Q6bm90KFtoaWRkZW5dKSB7XG5cdGRpc3BsYXk6IGZsZXg7XG59XG5cbmJ1dHRvbi5uYXYtbW9iaWxlX19idXR0b24sXG5idXR0b24ubmF2LW1haW5fX3N1Yi1idXR0b24sXG4ubGRuYXYtbG9hZGVkIC5uYXYtbWFpbl9fbGlzdC1pdGVtLFxuLmxkbmF2LWxvYWRlZCAubmF2LW1haW5fX3N1Yi1saXN0LWl0ZW0ge1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4ubGRuYXYtbG9hZGVkIC5uYXYtbWFpbl9fbGlzdC1pdGVtLFxuLmxkbmF2LWxvYWRlZCAubmF2LW1haW5fX3N1Yi1saXN0LWl0ZW0ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5sZG5hdi1sb2FkZWQge1xuXHQubmF2LW1haW5fX2xpc3QtaXRlbSxcblx0Lm5hdi1tYWluX19zdWItbGlzdC1pdGVtIHtcblx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdH1cbn1cblxuYnV0dG9uLm5hdi1tb2JpbGVfX2J1dHRvbixcbmJ1dHRvbi5uYXYtbWFpbl9fc3ViLWJ1dHRvbiB7XG5cdGZvbnQtc2l6ZTogaW5oZXJpdDtcblx0Ym9yZGVyOiAwO1xufVxuXG4ubGRuYXYtbG9hZGVkIC5uYXYtbW9iaWxlX19tZW51LFxuLmxkbmF2LWxvYWRlZCAubmF2LW1haW5fX3N1Yi1saXN0IHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHR0b3A6IDEwMCU7XG5cdHdpZHRoOiAxMDAlO1xuXHRtYXJnaW4tdG9wOiAwO1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHR6LWluZGV4OiAxMDAwO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wd2QtLWJhY2tncm91bmQtY29sb3IpO1xuXHRsZWZ0OiAtMTRweDtcblxuXHQubmF2LW1haW5fX2xpc3QtaXRlbSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdH1cblxuXHQubmF2LW1haW5fX2xpbmsge1xuXHRcdGZsZXgtZ3JvdzogMTtcblx0XHRtaW4td2lkdGg6IDA7XG5cdFx0bWFyZ2luOiAwO1xuXHR9XG5cblx0Lm5hdi1tYWluX19zdWItYnV0dG9uIHtcblx0XHRtYXJnaW46IC41cmVtO1xuXHR9XG5cblx0Lm5hdi1tYWluX19zdWItbGlzdCB7XG5cdFx0d2lkdGg6IGF1dG87XG5cdFx0ZmxleDogMCAwIDEwMCU7XG5cdFx0bWluLXdpZHRoOiAwO1xuXHRcdG1heC13aWR0aDogMTAwJTtcblx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdHotaW5kZXg6IGluaGVyaXQ7XG5cdFx0Ym9yZGVyLWxlZnQ6IDA7XG5cdFx0Ym9yZGVyLXJpZ2h0OiAwO1xuXHRcdGJvcmRlci1ib3R0b206IDA7XG5cdFx0cG9zaXRpb246IHN0YXRpYztcblx0fVxufVxuXG4ubGRuYXYtbG9hZGVkIC5uYXYtbW9iaWxlX19tZW51IHtcblx0bGVmdDogaW5pdGlhbDtcblx0cmlnaHQ6IDA7XG5cdHRvcDogMTAwJTtcblxuXHQubmF2LW1haW5fX2xpbmsge1xuXHRcdEBpbmNsdWRlIHB3ZC1mb2N1cy1zdHlsZSh0cnVlKTtcblx0fVxuXG5cdC5uYXYtbWFpbl9fc3ViLWJ1dHRvbiB7XG5cdFx0LS1wd2QtLWJ1dHRvbi0tY29sb3ItYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdH1cbn1cblxuLm5hdi1tYWluX19zdWItYnV0dG9uLWljb24sXG4ubmF2LW1vYmlsZV9fYnV0dG9uLWljb24ge1xuXHRmbGV4LXNocmluazogMDtcblx0aGVpZ2h0OiBhdXRvO1xufVxuXG4ubGRuYXYtbG9hZGVkIC5uYXYtbWFpbl9fc3ViLWxpc3Qge1xuXHR3aWR0aDogMTAwdnc7XG5cdG1heC13aWR0aDogcHgtdG8tcmVtKDM1MCk7XG59XG5cbmJ1dHRvbi5uYXYtbWFpbl9fc3ViLWJ1dHRvbiB7XG5cdC0tcHdkLS1idXR0b24tLWNvbG9yOiB2YXIoLS1wd2QtLWNvbG9yLS10aGVtZS0xKTtcblx0LS1wd2QtLWJ1dHRvbi0tY29sb3ItLWhvdmVyOiB2YXIoLS1wd2QtLWJhY2tncm91bmQtY29sb3IpO1xuXHQtLXB3ZC0tYnV0dG9uLS1jb2xvci1iYWNrZ3JvdW5kOiB2YXIoLS1wd2QtLWJhY2tncm91bmQtY29sb3IpO1xuXHQtLXB3ZC0tYnV0dG9uLS1jb2xvci1iYWNrZ3JvdW5kLS1ob3ZlcjogdmFyKC0tcHdkLS1jb2xvci0tdGhlbWUtMSk7XG5cblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdHdpZHRoOiB2YXIoLS1wd2QtLWxkbmF2LS1idXR0b24tc2l6ZSk7XG5cdGhlaWdodDogdmFyKC0tcHdkLS1sZG5hdi0tYnV0dG9uLXNpemUpO1xuXHRtaW4td2lkdGg6IDA7XG5cdG1pbi1oZWlnaHQ6IDA7XG5cdG1hcmdpbi1sZWZ0OiAxMHB4O1xuXHRwYWRkaW5nOiA1cHg7XG5cdC8vIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXB3ZC0tY29sb3ItLXRoZW1lLTEpO1xuXHRib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi5uYXYtbWFpbl9fc3ViLWJ1dHRvbi1pY29uIHtcblx0d2lkdGg6IDg3LjUlO1xufVxuXG4ubmF2LW1vYmlsZS1wYXJlbnQge1xuXHRhbGlnbi1zZWxmOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbmJ1dHRvbi5uYXYtbW9iaWxlX19idXR0b24ge1xuXHRmb250LXNpemU6IDFyZW07XG5cdGNvbHVtbi1nYXA6IHB4LXRvLXJlbSg4KTtcblx0cGFkZGluZzogNnB4IDEycHg7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdGNvbG9yOiB2YXIoLS1wd2QtLWNvbG9yLS10aGVtZS0xKTtcblxuXHQmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIHtcblx0XHRzdmcge1xuXHRcdFx0Y29sb3I6ICNENTNGMzQ7XG5cdFx0fVxuXHR9XG59XG5cbi5uYXYtbW9iaWxlX19idXR0b24taWNvbiB7XG5cdHdpZHRoOiBtYXRoLmRpdigyMCwgMTYpICogMWVtO1xufVxuXG4ubmF2LW1haW5fX3N1Yi1saXN0LFxuW2FyaWEtZXhwYW5kZWQ9XCJmYWxzZVwiXSAucGF0aC1jbG9zZSxcblthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSAucGF0aC1vcGVuIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLy8gVGhpcyBtYWtlcyBsb25nIGxpbmsgdGV4dCBoeXBoZW5hdGlvbiBhbmQgd3JhcHBpbmcgd29yay5cbi8vIFdpdGhvdXQgdGhpcywgd3JhcHBpbmcgbG9uZyB0ZXh0cyB3b24ndCB3b3JrIGFuZCB0aGUgbGF5b3V0IHdpbGwgY2FuIGJyZWFrLlxuQHN1cHBvcnRzIChkaXNwbGF5OiBncmlkKSB7XG5cdC5sZG5hdi1sb2FkZWQge1xuXHRcdC5uYXYtbWFpbl9fbGlzdC1pdGVtLFxuXHRcdC5uYXYtbWFpbl9fc3ViLWxpc3QtaXRlbSB7XG5cdFx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgYXV0bztcblxuXHRcdFx0PiAubmF2LW1haW5fX3N1Yi1saXN0IHtcblx0XHRcdFx0Z3JpZC1jb2x1bW46IDEgLyAzO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5uYXYtbW9iaWxlX19tZW51Om5vdChbaGlkZGVuXSkge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0fVxuXHR9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuXHRidXR0b24ubmF2LW1vYmlsZV9fYnV0dG9uIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHR9XG5cblx0Lm5hdi1tb2JpbGVfX2l0ZW0tLWNsb25lZCB7XG5cdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHR9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcblx0Lm5hdi1tb2JpbGVfX21lbnUsXG5cdC5uYXYtbW9iaWxlX19idXR0b24ge1xuXHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblx0fVxufVxuXG4vLyBFbnN1cmUgdGhhdCB0aGUgc2l6ZSBvZiB0aGUgdGFyZ2V0IGZvciBwb2ludGVyIGlucHV0c1xuLy8gaXMgYXQgbGVhc3QgNDQgYnkgNDQgQ1NTIHBpeGVscyBmb3IgdXNlcnMgd2l0aCBsaW1pdGVkXG4vLyBhY2N1cmFjeSBwb2ludGluZyBkZXZpY2UgKGllLiB0b3VjaHNjcmVlbikuXG4vLyBEbyB0aGlzIGJ5IGFkZGluZyBhIHRyYW5zcGFyZW50IGFmdGVyLWVsZW1lbnQsIHNvIHRoYXRcbi8vIHZpc3VhbGx5IHRoZSBidXR0b24gc3RpbGwgbG9va3MgbGlrZSB0aGUgZmlnbWEgbGF5b3V0LlxuLy8gaHR0cHM6Ly93d3cudzMub3JnL1RSL1dDQUcyMS8jdGFyZ2V0LXNpemVcbi8vIGh0dHBzOi8vd2ViLmRldi9hY2Nlc3NpYmxlLXRhcC10YXJnZXRzXG4vLyBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9DU1MvQG1lZGlhL2FueS1wb2ludGVyXG5AbWVkaWEgKGFueS1wb2ludGVyOiBjb2Fyc2UpIHtcblx0LmxkbmF2LWxvYWRlZCBidXR0b24ubmF2LW1haW5fX3N1Yi1idXR0b24ge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXHRcdFx0d2lkdGg6IHZhcigtLXB3ZC0tdGFyZ2V0LXNpemUtLWJpZyk7XG5cdFx0XHRtaW4td2lkdGg6IHZhcigtLXB3ZC0tdGFyZ2V0LXNpemUtLWJpZyk7XG5cdFx0XHRoZWlnaHQ6IHZhcigtLXB3ZC0tdGFyZ2V0LXNpemUtLWJpZyk7XG5cdFx0XHRib3JkZXItcmFkaXVzOiAxMDAlO1xuXHRcdH1cblx0fVxufVxuIiwiLy8gUFdEIFdQIFNhc3MgRnJhbWV3b3JrIC8gTWl4aW5zXG5cbkB1c2UgXCJzYXNzOmNvbG9yXCI7XG5AdXNlIFwic2FzczptYXRoXCI7XG5cbi8vIEJvb3RzdHJhcCBtaXhpbnNcbi8vIGh0dHA6Ly9nZXRib290c3RyYXAuY29tXG5cbkBpbXBvcnQgXCIuLi92ZW5kb3IvYm9vdHN0cmFwL21peGlucy9icmVha3BvaW50c1wiO1xuQGltcG9ydCBcIi4uL3ZlbmRvci9ib290c3RyYXAvbWl4aW5zL2dyaWRcIjtcbkBpbXBvcnQgXCIuLi92ZW5kb3IvYm9vdHN0cmFwL21peGlucy9jbGVhcmZpeFwiO1xuXG4vLyBIeXBoZW5hdGlvbiB3aXRoIGZhbGxiYWNrXG4vLyAnb3ZlcmZsb3ctd3JhcCcgaXMgZmFsbGJhY2sgZm9yIGJyb3dzZXJzIHdoaWNoIGRvbid0IHN1cHBvcnQgaHlwaGVuYXRpb24gb3IgY2FuJ3QgaHlwaGVuYXRlIHRleHRcbkBtaXhpbiBwd2QtaHlwaGVucygpIHtcblx0b3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcblx0aHlwaGVuczogYXV0bztcbn1cblxuLy8gRGVmYXVsdCBibG9jayBjb250ZW50IGFsaWdubWVudCBzdHlsZXNcbi8vXG4vLyBAcGFyYW0gYm9vbCAkZWRpdG9yIFdoZXRlciB0byBsb2FkIGVkaXRvciBzcGVjaWZpYyBzdHlsZXNcbkBtaXhpbiBwd2QtYWxpZ25tZW50LXN0eWxlcygkZWRpdG9yOiBmYWxzZSkge1xuXHQkYm9keS1zZWxlY3RvcjogXCJib2R5XCI7XG5cdCRwcmVmaXg6IFwiXCI7XG5cblx0QGlmICgkZWRpdG9yKSB7XG5cdFx0JGJvZHktc2VsZWN0b3I6IFwiLmVkaXRvci1zdHlsZXMtd3JhcHBlclwiO1xuXHRcdCRwcmVmaXg6ICRib2R5LXNlbGVjdG9yO1xuXHR9XG5cblx0QGlmICgkZWRpdG9yKSB7XG5cdFx0I3skYm9keS1zZWxlY3Rvcn0gPiAuaXMtcm9vdC1jb250YWluZXIsXG5cdFx0I3skcHJlZml4fSAuZWRpdC1wb3N0LXZpc3VhbC1lZGl0b3JfX3Bvc3QtdGl0bGUtd3JhcHBlcixcblx0XHQjeyRwcmVmaXh9IC53cC1ibG9jay1ncm91cC5hbGlnbmZ1bGwsXG5cdFx0I3skcHJlZml4fSAud3AtYmxvY2stZ3JvdXAuaGFzLWJhY2tncm91bmQsXG5cdFx0I3skcHJlZml4fSAud3AtYmxvY2stY292ZXIuYWxpZ25mdWxsLFxuXHRcdCN7JHByZWZpeH0gLmlzLXJvb3QtY29udGFpbmVyIC53cC1ibG9ja1tkYXRhLWFsaWduPVwiZnVsbFwiXSA+IC53cC1ibG9jay1ncm91cCxcblx0XHQjeyRwcmVmaXh9IC5pcy1yb290LWNvbnRhaW5lciAud3AtYmxvY2tbZGF0YS1hbGlnbj1cImZ1bGxcIl0gPiAud3AtYmxvY2stY292ZXIge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiB2YXIoLS1wd2QtLXdpZHRoLS1zcGFjaW5nLW91dGVyKTtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IHZhcigtLXB3ZC0td2lkdGgtLXNwYWNpbmctb3V0ZXIpO1xuXHRcdH1cblx0fSBAZWxzZSB7XG5cdFx0I3skcHJlZml4fSAubWFpbi1jb250ZW50LWFyZWEsXG5cdFx0I3skcHJlZml4fSAud3AtYmxvY2stZ3JvdXAuYWxpZ25mdWxsLFxuXHRcdCN7JHByZWZpeH0gLndwLWJsb2NrLWdyb3VwLmhhcy1iYWNrZ3JvdW5kLFxuXHRcdCN7JHByZWZpeH0gLndwLWJsb2NrLWNvdmVyLmFsaWduZnVsbCB7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IHZhcigtLXB3ZC0td2lkdGgtLXNwYWNpbmctb3V0ZXIpO1xuXHRcdFx0cGFkZGluZy1yaWdodDogdmFyKC0tcHdkLS13aWR0aC0tc3BhY2luZy1vdXRlcik7XG5cdFx0fVxuXHR9XG5cblx0QGlmICgkZWRpdG9yKSB7XG5cdFx0I3skYm9keS1zZWxlY3Rvcn0gPiAuaXMtcm9vdC1jb250YWluZXIgPiAud3AtYmxvY2stY292ZXIsXG5cdFx0I3skYm9keS1zZWxlY3Rvcn0gPiAuaXMtcm9vdC1jb250YWluZXIgPiAud3AtYmxvY2stdGVtcGxhdGUtcGFydCA+IC53cC1ibG9jay1ncm91cC5oYXMtYmFja2dyb3VuZCxcblx0XHQjeyRib2R5LXNlbGVjdG9yfSA+IC5pcy1yb290LWNvbnRhaW5lciA+IC53cC1ibG9jay10ZW1wbGF0ZS1wYXJ0ID4gLndwLWJsb2NrLWNvdmVyLFxuXHRcdCN7JHByZWZpeH0gLmlzLXJvb3QtY29udGFpbmVyLmJsb2NrLWVkaXRvci1ibG9jay1saXN0X19sYXlvdXQgLmFsaWduZnVsbCxcblx0XHQjeyRwcmVmaXh9IC5pcy1yb290LWNvbnRhaW5lciAud3AtYmxvY2tbZGF0YS1hbGlnbj1cImZ1bGxcIl0ge1xuXHRcdFx0d2lkdGg6IHVuc2V0O1xuXHRcdFx0bWF4LXdpZHRoOiBub25lO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IGNhbGModmFyKC0tcHdkLS13aWR0aC0tc3BhY2luZy1vdXRlcikgKiAtMSkgIWltcG9ydGFudDtcblx0XHRcdG1hcmdpbi1yaWdodDogY2FsYyh2YXIoLS1wd2QtLXdpZHRoLS1zcGFjaW5nLW91dGVyKSAqIC0xKSAhaW1wb3J0YW50O1xuXHRcdH1cblx0fSBAZWxzZSB7XG5cdFx0I3skcHJlZml4fSAubWFpbi1jb250ZW50LWFyZWEgLmFsaWduZnVsbCxcblx0XHQjeyRwcmVmaXh9IC5tYWluLWNvbnRlbnQtYXJlYSA+IC53cC1ibG9jay1ncm91cC5oYXMtYmFja2dyb3VuZCxcblx0XHQjeyRwcmVmaXh9IC5tYWluLWNvbnRlbnQtYXJlYSA+IC53cC1ibG9jay1jb3ZlciB7XG5cdFx0XHR3aWR0aDogdW5zZXQ7XG5cdFx0XHRtYXgtd2lkdGg6IG5vbmU7XG5cdFx0XHRtYXJnaW4tbGVmdDogY2FsYyh2YXIoLS1wd2QtLXdpZHRoLS1zcGFjaW5nLW91dGVyKSAqIC0xKSAhaW1wb3J0YW50O1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiBjYWxjKHZhcigtLXB3ZC0td2lkdGgtLXNwYWNpbmctb3V0ZXIpICogLTEpICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cblx0QGlmICgkZWRpdG9yKSB7XG5cdFx0I3skcHJlZml4fSAuaXMtcm9vdC1jb250YWluZXIgLmFsaWdud2lkZSxcblx0XHQjeyRwcmVmaXh9IC5pcy1yb290LWNvbnRhaW5lciAud3AtYmxvY2tbZGF0YS1hbGlnbj1cIndpZGVcIl0ge1xuXHRcdFx0bWF4LXdpZHRoOiB2YXIoLS1wd2QtLXdpZHRoLS1jb250ZW50LS13aWRlKTtcblx0XHR9XG5cdH0gQGVsc2Uge1xuXHRcdCN7JHByZWZpeH0gLm1haW4tY29udGVudC1hcmVhIC5hbGlnbndpZGUge1xuXHRcdFx0bWF4LXdpZHRoOiB2YXIoLS1wd2QtLXdpZHRoLS1jb250ZW50LS13aWRlKTtcblx0XHR9XG5cdH1cblxuXHRAaWYgKCRlZGl0b3IpIHtcblx0XHQjeyRwcmVmaXh9IC5pcy1yb290LWNvbnRhaW5lciAud3AtYmxvY2tbZGF0YS1hbGlnbj1cImZ1bGxcIl0gPiAqOm5vdCgud3AtYmxvY2stZ3JvdXApIC5hbGlnbmZ1bGwsXG5cdFx0I3skcHJlZml4fSAuaXMtcm9vdC1jb250YWluZXIgLndwLWJsb2NrW2RhdGEtYWxpZ249XCJmdWxsXCJdID4gKjpub3QoLndwLWJsb2NrLWdyb3VwKSAud3AtYmxvY2tbZGF0YS1hbGlnbj1cImZ1bGxcIl0sXG5cdFx0I3skcHJlZml4fSAuaXMtcm9vdC1jb250YWluZXIgLndwLWJsb2NrLWNvbHVtbnMgLndwLWJsb2NrLWNvbHVtbiAuYWxpZ25mdWxsLFxuXHRcdCN7JHByZWZpeH0gLmlzLXJvb3QtY29udGFpbmVyIC53cC1ibG9jay1jb2x1bW5zIC53cC1ibG9jay1jb2x1bW4gLndwLWJsb2NrW2RhdGEtYWxpZ249XCJmdWxsXCJdIHtcblx0XHRcdHdpZHRoOiBpbmhlcml0O1xuXHRcdFx0bWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcblx0XHRcdG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuXHRcdH1cblx0fSBAZWxzZSB7XG5cdFx0Ly8gQmxvY2tzIGluc2lkZSBjb2x1bW5zIGRvbid0IGhhdmUgbmVnYXRpdmUgbWFyZ2luc1xuXHRcdCN7JHByZWZpeH0gLm1haW4tY29udGVudC1hcmVhIC53cC1ibG9jay1jb2x1bW5zIC53cC1ibG9jay1jb2x1bW4gLmFsaWduZnVsbCxcblx0XHQvLyBXZSBhbHNvIHdhbnQgdG8gYXZvaWQgc3RhY2tpbmcgbmVnYXRpdmUgbWFyZ2luc1xuXHRcdCN7JHByZWZpeH0gLm1haW4tY29udGVudC1hcmVhIC5hbGlnbmZ1bGw6bm90KC53cC1ibG9jay1ncm91cCkgLmFsaWduZnVsbCB7XG5cdFx0XHR3aWR0aDogaW5oZXJpdDtcblx0XHRcdG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcblx0XHR9XG5cdH1cblxuXHRAaWYgKCRlZGl0b3IpIHtcblx0XHQvLyBSZXNldCBBQ0YgYmxvY2sgd2lkdGggYmVjYXVzZSB0aGUgYmxvY2tzIGhhdmUgZGlmZmVyZW50XG5cdFx0Ly8gRE9NIHN0cnVjdHVyZSBpbiBlZGl0b3Jcblx0XHQjeyRib2R5LXNlbGVjdG9yfSAuYmxvY2stZWRpdG9yLWJsb2NrLWxpc3RfX2xheW91dC5pcy1yb290LWNvbnRhaW5lciBbY2xhc3MqPVwid3AtYmxvY2stYWNmXCJdIHtcblx0XHRcdG1heC13aWR0aDogbm9uZTtcblx0XHRcdHdpZHRoOiB1bnNldDtcblx0XHR9XG5cblx0XHQvLyBCbG9ja3MgaW5zaWRlIEFDRiBibG9jayBwcmV2aWV3IGVsZW1lbnQgZG9uJ3QgaGF2ZSBuZWdhdGl2ZSBtYXJnaW5zXG5cdFx0I3skYm9keS1zZWxlY3Rvcn0gLmlzLXJvb3QtY29udGFpbmVyIC5hY2YtYmxvY2stcHJldmlldyAuYWxpZ25mdWxsIHtcblx0XHRcdG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcblx0XHR9XG5cdH1cbn1cblxuLy8gRGVmYXVsdCBibG9jayB2ZXJ0aWNhbCBzcGFjaW5nXG5AbWl4aW4gcHdkLWJsb2NrLXNwYWNpbmcoKSB7XG5cdD4gKiB7XG5cdFx0bWFyZ2luLWJvdHRvbTogdmFyKC0tcHdkLS1ibG9jay0tc3BhY2luZy0tbWFyZ2luLWJvdHRvbSwgMCk7XG5cdH1cblxuXHQ+ICogKyAqIHtcblx0XHRtYXJnaW4tdG9wOiB2YXIoLS1wd2QtLWJsb2NrLS1zcGFjaW5nLS1tYXJnaW4tdG9wLCAycmVtKTtcblx0fVxufVxuXG4vLyBBIOKAmHVuaXZlcnNhbOKAmSBmb2N1cyBpbmRpY2F0b3Jcbi8vIGh0dHBzOi8vd3d3LnNhcmFzb3VlaWRhbi5jb20vYmxvZy9mb2N1cy1pbmRpY2F0b3JzL1xuLy9cbi8vIEBwYXJhbSBib29sICAgJGluc2V0ICAgICAgICAgIFdoZXRlciB0byBkaXNwbGF5IHNoYWRvdyBhcyBpbm5lciBzaGFkb3cuIERlZmF1bHQgZmFsc2UuXG4vLyBAcGFyYW0gc3RyaW5nICRwc2V1ZG9fY2xhc3NlcyBMaXN0IG9mIHBzZXVkbyBjbGFzc2VzLCBzZXBhcmF0ZWQgd2l0aCBzcGFjZSwgdGhlIHN0eWxlIGlzIGFwcGxpZWQgdG8uIERlZmF1bHQgXCJmb2N1c1wiLlxuQG1peGluIHB3ZC1mb2N1cy1zdHlsZSgkaW5zZXQ6IGZhbHNlLCAkcHNldWRvX2NsYXNzZXM6IGZvY3VzKSB7XG5cdCRpbnNldC12YWx1ZTogXCJcIjtcblx0JG91dGxpbmUtc2l6ZTogMnB4O1xuXHQkc2hhZG93LXNpemU6ICRvdXRsaW5lLXNpemUgKiAzO1xuXHQkb3V0bGluZS1vZmZzZXQ6ICRvdXRsaW5lLXNpemU7XG5cblx0QGlmICgkaW5zZXQpIHtcblx0XHQkaW5zZXQtdmFsdWU6IGluc2V0O1xuXHRcdCRvdXRsaW5lLW9mZnNldDogJG91dGxpbmUtc2l6ZSAqIDIgKiAtMTtcblx0fVxuXG5cdEBlYWNoICRwc2V1ZG9fY2xhc3MgaW4gJHBzZXVkb19jbGFzc2VzIHtcblx0XHQmOiN7JHBzZXVkb19jbGFzc30ge1xuXHRcdFx0b3V0bGluZTogJG91dGxpbmUtc2l6ZSBzb2xpZCB2YXIoLS1wd2QtLW91dGxpbmUtLWNvbG9yLCAjMDAwMDAwKTtcblx0XHRcdG91dGxpbmUtb2Zmc2V0OiAkb3V0bGluZS1vZmZzZXQ7XG5cdFx0XHRib3gtc2hhZG93OiAjeyRpbnNldC12YWx1ZX0gMCAwIDAgJHNoYWRvdy1zaXplICNmZmZmZmY7XG5cdFx0fVxuXHR9XG59XG5cbi8vIEN1c3RvbSBDU1MgZmx1aWQgZ3JpZCBtaXhpblxuLy8gRmx1aWQgZ3JpZCB3aGljaCBmaWxscyBhcyBtYW55IGNvbHVtbnMgcGVyIHJvdyBhcyBpdCBwb3NzaWJseSBjYW4gaW4gdGhlIGFtb3VudCBvZiBhdmFpbGFibGUgc3BhY2UgaW4gdGhlIGxheW91dCBjb250YWluZXIuXG4vLyBNYXhpbXVtIGFtb3VudCBvZiBjb2x1bW5zIHBlciByb3cgaXMgY29udHJvbGxlZCB3aXRoIHRoZSBtaW5pbXVtIGNvbHVtbiB3aWR0aC5cbi8vIFNlZTogaHR0cHM6Ly93d3cuc21hc2hpbmdtYWdhemluZS5jb20vMjAyNC8wNS9tb2Rlcm4tY3NzLWxheW91dHMtbm8tZnJhbWV3b3JrLW5lZWRlZC8jZmx1aWQtZ3JpZFxuLy9cbi8vIENTUyBjdXN0b20gcHJvcGVydGllcyB5b3UgY2FuIHVzZSB0byBhZGp1c3QgZmx1aWQgZ3JpZCBzZXR0aW5ncy4gVGhlIGN1c3RvbSBwcm9wZXJ0aWVzIHRha2UgcHJlY2VkZW5jZSBvdmVyIG1peGluIHBhcmFtZXRlcnMuXG4vLyAtLXB3ZC0tZmx1aWQtZ3JpZC0tZ2FwLS1jb2x1bW4gICAgICAgR3JpZCBnYXBcbi8vIC0tcHdkLS1mbHVpZC1ncmlkLS1nYXAtLXJvdyAgICAgICAgICBHcmlkIHJvdyBnYXBcbi8vIC0tcHdkLS1mbHVpZC1ncmlkLS1jb2x1bW4tLW1pbi13aWR0aCBHcmlkIGNvbHVtbiBtaW5pbXVtIHdpZHRoXG4vL1xuLy8gQHBhcmFtIHN0cmluZyAkZ2FwLWNvbHVtbiAgICAgICBPcHRpb25hbC4gR3JpZCBjb2x1bW4gZ2FwLiBEZWZhdWx0IHZhbHVlIGlzIFwiLS1wd2QtLWdyaWQtLXdpZHRoLS1nYXBcIiBDU1MgY3VzdG9tIHByb3BlcnR5IHZhbHVlLlxuLy8gQHBhcmFtIHN0cmluZyAkZ2FwLXJvdyAgICAgICAgICBPcHRpb25hbC4gR3JpZCByb3cgZ2FwLiBEZWZhdWx0IHZhbHVlIGlzIFwiLS1wd2QtLWdyaWQtLXdpZHRoLS1nYXBcIiBDU1MgY3VzdG9tIHByb3BlcnR5IHZhbHVlLlxuLy8gQHBhcmFtIHN0cmluZyAkY29sdW1uLW1pbi13aWR0aCBPcHRpb25hbC4gR3JpZCBjb2x1bW4gbWluaW11bSB3aWR0aC5cbkBtaXhpbiBwd2QtZmx1aWQtZ3JpZCgkZ2FwLWNvbHVtbjogXCJcIiwgJGdhcC1yb3c6IFwiXCIsICRjb2x1bW4tbWluLXdpZHRoOiBweC10by1yZW0oMjYwKSkge1xuXHQkZ2FwLWNvbHVtbi1kZWZhdWx0OiB2YXIoLS1wd2QtLWdyaWQtLXdpZHRoLS1nYXAsIDMwcHgpO1xuXHQkZ2FwLXJvdy1kZWZhdWx0OiB2YXIoLS1fZmx1aWQtZ3JpZC0tZ2FwLS1jb2x1bW4pO1xuXG5cdEBpZiAkZ2FwLWNvbHVtbiAhPSBcIlwiIHtcblx0XHQkZ2FwLWNvbHVtbi1kZWZhdWx0OiAkZ2FwLWNvbHVtbjtcblx0fVxuXG5cdEBpZiAoJGdhcC1yb3cgIT0gXCJcIikge1xuXHRcdCRnYXAtcm93LWRlZmF1bHQ6ICRnYXAtcm93O1xuXHR9XG5cblx0LS1fZmx1aWQtZ3JpZC0tZ2FwLS1jb2x1bW46IHZhcigtLXB3ZC0tZmx1aWQtZ3JpZC0tZ2FwLS1jb2x1bW4sICN7JGdhcC1jb2x1bW4tZGVmYXVsdH0pO1xuXHQtLV9mbHVpZC1ncmlkLS1nYXAtLXJvdzogdmFyKC0tcHdkLS1mbHVpZC1ncmlkLS1nYXAtLXJvdywgI3skZ2FwLXJvdy1kZWZhdWx0fSk7XG5cdC0tX2ZsdWlkLWdyaWQtLWNvbHVtbi0tbWluLXdpZHRoOiB2YXIoLS1wd2QtLWZsdWlkLWdyaWQtLWNvbHVtbi0tbWluLXdpZHRoLCAjeyRjb2x1bW4tbWluLXdpZHRofSk7XG5cblx0ZGlzcGxheTogZ3JpZCAhaW1wb3J0YW50O1xuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KG1pbih2YXIoLS1fZmx1aWQtZ3JpZC0tY29sdW1uLS1taW4td2lkdGgpLCAxMDAlKSwgMWZyKSk7XG5cdGdhcDogdmFyKC0tX2ZsdWlkLWdyaWQtLWdhcC0tcm93KSB2YXIoLS1fZmx1aWQtZ3JpZC0tZ2FwLS1jb2x1bW4pO1xufVxuXG4vLyBTZXQgbWluaW11bSB0YXJnZXQgc2l6ZSB0byBwYXNzIFdDQUcgMi4yIFNDIDIuNS44IChBQSlcbi8vIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9XQ0FHMjIvI3RhcmdldC1zaXplLW1pbmltdW1cbkBtaXhpbiBwd2QtbWluLXRhcmdldC1zaXplIHtcblx0bWluLXdpZHRoOiB2YXIoLS1wd2QtLXRhcmdldC1zaXplKTtcblx0bWluLWhlaWdodDogdmFyKC0tcHdkLS10YXJnZXQtc2l6ZSk7XG59XG5cbi8qKlxuICogaWNvbiBsaW5rcyBoZWxwZXJzXG4gKi9cbkBtaXhpbiBsaW5rLXdpdGgtaWNvbiB7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRAaW5jbHVkZSBwd2QtbWluLXRhcmdldC1zaXplKCk7XG5cblx0c3ZnLFxuXHRpbWcge1xuXHRcdG1pbi13aWR0aDogMS4xMjVyZW07XG5cdFx0d2lkdGg6IDEuMTI1cmVtO1xuXHRcdGhlaWdodDogMS4xMjVyZW07XG5cdFx0bWFyZ2luLXJpZ2h0OiAwLjc1cmVtO1xuXHRcdHRyYW5zaXRpb246IDAuMnMgZWFzZS1pbi1vdXQ7XG5cdH1cbn1cblxuQG1peGluIGxpbmstd2l0aC1pY29uLXJpZ2h0IHtcblx0QGluY2x1ZGUgbGluay13aXRoLWljb247XG5cblx0c3ZnLFxuXHRpbWcge1xuXHRcdG1hcmdpbi1yaWdodDogaW5pdGlhbDtcblx0XHRtYXJnaW4tbGVmdDogMC43NXJlbTtcblx0fVxufVxuXG4vKipcbiAqXHRTdHlsZXMgZm9yIGRlZmF1bHQgd3Agc2VhcmNoZm9ybS5cbiAqIFVzZWQgZm9yIGV4YW1wbGUgaW4gbW9iaWxlIG5hdiwgZGVza3RvcCBzZWFyY2ggZmllbGQsIDQwNCB0ZW1wbGF0ZS5cbiAqL1xuLy8gXCJjb21wYWN0XCIgc2VhcmNoIGZvcm0sIHN1Ym1pdCBidXR0b24gaW50ZWdyYXRlZCBpbnRvIHRoZSBzZWFyY2ggYmFyIChtb2JpbGUgbmF2IHNlYXJjaCAvIGRlc2t0b3AgaGVhZGVyIHNlYXJjaCAvIDQwNClcbkBtaXhpbiBzZWFyY2gtZm9ybS1jb21wYWN0IHtcblx0ZGlzcGxheTogZmxleDtcblx0Y29sdW1uLWdhcDogM3B4O1xuXHRwYWRkaW5nOiAwO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXB3ZC0taW5wdXQtdGV4dC0tYm9yZGVyLWNvbG9yKTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcHdkLS1pbnB1dC10ZXh0LS1ib3JkZXItcmFkaXVzKTtcblx0YmFja2dyb3VuZDogdmFyKC0tcHdkLS1iYWNrZ3JvdW5kLWNvbG9yKTtcblxuXHQqIHtcblx0XHRAaW5jbHVkZSBwd2QtZm9jdXMtc3R5bGUodHJ1ZSk7XG5cdH1cblxuXHRsYWJlbCxcblx0aW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcblx0aW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG5cdFx0Ym9yZGVyOiBub25lO1xuXHR9XG5cblx0bGFiZWwge1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cblxuXHQuc2VhcmNoLWlucHV0LWljb24ge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHRpbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcblx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xuXHRcdG1heC13aWR0aDogbm9uZTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdH1cblxuXHRidXR0b25bdHlwZT1cInN1Ym1pdFwiXSB7XG5cdFx0LS1wd2QtLWJ1dHRvbi0tY29sb3I6IHZhcigtLXB3ZC0tY29sb3ItLXRoZW1lLTEpO1xuXHRcdC0tcHdkLS1idXR0b24tLWNvbG9yLS1ob3ZlcjogdmFyKC0tcHdkLS1iYWNrZ3JvdW5kLWNvbG9yKTtcblx0XHQtLXB3ZC0tYnV0dG9uLS1jb2xvci1iYWNrZ3JvdW5kOiB2YXIoLS1wd2QtLWJhY2tncm91bmQtY29sb3IpO1xuXHRcdC0tcHdkLS1idXR0b24tLWNvbG9yLWJhY2tncm91bmQtLWhvdmVyOiB2YXIoLS1wd2QtLWNvbG9yLS10aGVtZS0xKTtcblxuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRmbGV4LXNocmluazogMDtcblx0XHR3aWR0aDogcHgtdG8tcmVtKDQ0KTtcblx0XHRoZWlnaHQ6IHB4LXRvLXJlbSg0NCk7XG5cdFx0cGFkZGluZzogMTBweDtcblx0XHRtYXJnaW46IDA7XG5cblx0XHRzdmcge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0fVxuXHR9XG59XG5cbi8vIHNlYXJjaCBmb3JtIHdpdGhvdXQgc3VibWl0IGJ1dHRvbiAoZmlsdGVycyAvIHNpdGUgc2VhcmNoKVxuQG1peGluIHNlYXJjaC1mb3JtLXNlcGFyYXRlIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC13cmFwOiB3cmFwO1xuXHRhbGlnbi1pdGVtczogZmxleC1lbmQ7XG5cdGdhcDogdmFyKC0tcHdkLS1tYXJnaW4pIGNhbGMoMC41ICogdmFyKC0tcHdkLS1tYXJnaW4pKTtcblxuXHQmID4gbGFiZWwge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRtYXgtd2lkdGg6IHB4LXRvLXJlbSg0ODApO1xuXG5cdFx0LnNlYXJjaC1pbnB1dC1sYWJlbCB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwLjVyZW07XG5cdFx0fVxuXG5cdFx0LnNlYXJjaC1pbnB1dC1pY29uIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0bGVmdDogMXJlbTtcblx0XHRcdGJvdHRvbTogMXJlbTtcblx0XHRcdHdpZHRoOiAxLjM3NXJlbTtcblx0XHR9XG5cdH1cblxuXHRpbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcblx0XHRtYXgtd2lkdGg6IG5vbmU7XG5cdFx0cGFkZGluZy1sZWZ0OiAyLjg3NXJlbTsgLy9jYWxjKDFyZW0gKyAje3B4LXRvLXJlbSgyMil9ICsgMTBweCk7XG5cdH1cblxuXHQuc2VhcmNoLXN1Ym1pdC1pY29uIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG59XG5cbi8qKlxuICpcdGJ1dHRvbnNcbiAqL1xuQG1peGluIGJ1dHRvbi10aGVtZS0xLWxpZ2h0IHtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1wd2QtLWNvbG9yLS10aGVtZS0xLWxpZ2h0KTtcblx0cGFkZGluZzogMC4zMTI1cmVtIDAuNXJlbTtcblx0Zm9udC1zaXplOiBweC10by1yZW0oMTYpO1xuXHRjb2xvcjogdmFyKC0tcHdkLS1saW5rLS1jb2xvcik7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdHRleHQtdHJhbnNmb3JtOiBub25lO1xuXHRtYXJnaW4tdG9wOiAwLjVyZW07XG5cdG1hcmdpbi1ib3R0b206IDAuNXJlbTtcblx0bWFyZ2luLXJpZ2h0OiAwLjVyZW07XG5cdHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG5cdGJvcmRlci1yYWRpdXM6IDA7XG5cdGxpbmUtaGVpZ2h0OiAxLjU7XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyxcblx0JjphY3RpdmUsXG5cdCYuYWN0aXZlIHtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1wd2QtLWNvbG9yLS10aGVtZS0xLWxpZ2h0KTtcblx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHRjb2xvcjogdmFyKC0tcHdkLS1saW5rLS1jb2xvcik7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdG91dGxpbmU6IG5vbmU7XG5cdH1cbn1cblxuQG1peGluIGJ1dHRvbi1ib3JkZXItdGhlbWUtMSB7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tcHdkLS1jb2xvci0tdGhlbWUtMSk7XG5cdHBhZGRpbmc6IDAuNXJlbSAwLjgxMjVyZW07XG5cdGZvbnQtc2l6ZTogcHgtdG8tcmVtKDE2KTtcblx0Y29sb3I6IHZhcigtLXB3ZC0tbGluay0tY29sb3IpO1xuXHRmb250LXdlaWdodDogbm9ybWFsO1xuXHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblx0bWFyZ2luLXRvcDogMC41cmVtO1xuXHRtYXJnaW4tYm90dG9tOiAwLjVyZW07XG5cdG1hcmdpbi1yaWdodDogMC41cmVtO1xuXHR3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuXHRib3JkZXItcmFkaXVzOiAwO1xuXHRsaW5lLWhlaWdodDogMS41O1xuXG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMsXG5cdCY6YWN0aXZlLFxuXHQmLmFjdGl2ZSB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0Y29sb3I6IHZhcigtLXB3ZC0tbGluay0tY29sb3IpO1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRvdXRsaW5lOiBub25lO1xuXHR9XG59XG5cbi8qKlxuICpcdHN0eWxlcyBmb3IgbmF0aXZlIGNoZWNrYm94L3JhZGlvIGlucHV0c1xuICovXG5AbWl4aW4gY2hlY2tib3gtcmFkaW8tc3R5bGUge1xuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblxuXHRpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG5cdGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG5cdFx0d2lkdGg6IDEuNXJlbTtcblx0XHRtaW4td2lkdGg6IDEuNXJlbTtcblx0XHRoZWlnaHQ6IDEuNXJlbTtcblx0XHRtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcblxuXHRcdCY6aG92ZXIsXG5cdFx0Jjpmb2N1cyxcblx0XHQmOmFjdGl2ZSB7XG5cdFx0XHQmICsgLm5hbWUsXG5cdFx0XHQmICsgbGFiZWwge1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLyoqXG4gKlx0Y3VzdG9tIHNlbGVjdCBzdHlsZVxuICovXG5AbWl4aW4gY3VzdG9tLXNlbGVjdC1zdHlsZSB7XG5cdC5zZWxlY3QtY29udGFpbmVyIHtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1wd2QtLWNvbG9yLS1ncmV5LWxpZ2h0KTtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcHdkLS1pbnB1dC10ZXh0LS1ib3JkZXItcmFkaXVzKTtcblxuXHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vaW1hZ2VzL2ljb24tY2hldnJvbi5zdmdcIik7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG5cdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0YmFja2dyb3VuZC1zaXplOiAxMDAlO1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG5cdFx0XHR0b3A6IDUwJTtcblx0XHRcdHJpZ2h0OiAxcmVtO1xuXHRcdFx0d2lkdGg6IDFyZW07XG5cdFx0XHRoZWlnaHQ6IDFyZW07XG5cdFx0XHRtYXJnaW4tdG9wOiAtMC41cmVtO1xuXHRcdH1cblxuXHRcdHNlbGVjdCB7XG5cdFx0XHRhcHBlYXJhbmNlOiBub25lO1xuXHRcdFx0YmFja2dyb3VuZDogdmFyKC0tcHdkLS1pbnB1dC1iYWNrZ3JvdW5kLWNvbG9yLCAjZmZmKTtcblx0XHRcdGNvbG9yOiB2YXIoLS1wd2QtLWNvbG9yKTtcblx0XHRcdHRyYW5zaXRpb246IDAuMXMgZWFzZS1pbi1vdXQ7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdHBhZGRpbmc6IHZhcigtLXB3ZC0taW5wdXQtdGV4dC0tcGFkZGluZyk7IC8vIFwic3luY1wiIHBhZGRpbmcgd2l0aCB0ZXh0IGlucHV0IGZpZWxkc1xuXHRcdFx0cGFkZGluZy1yaWdodDogMi41cmVtOyAvLyBtYWtlIHJvb20gZm9yIFwiY2hldnJvblwiXG5cblx0XHRcdG9wdGlvbiB7XG5cdFx0XHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0XHR9XG5cblx0XHRcdCY6aG92ZXIsXG5cdFx0XHQmOmFjdGl2ZSB7XG5cdFx0XHRcdGJhY2tncm91bmQ6IGNvbG9yLmFkanVzdCgjRjJGMkYyLCAkbGlnaHRuZXNzOiAtMTAlKTtcblx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRuICE9IG51bGwgYW5kICRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIGxhcmdlc3QgKGxhc3QpIGJyZWFrcG9pbnQuXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyBjYWxjdWxhdGVkIGFzIHRoZSBtaW5pbXVtIG9mIHRoZSBuZXh0IG9uZSBsZXNzIDAuMDJweFxuLy8gdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEByZXR1cm4gaWYoJG5leHQsIGJyZWFrcG9pbnQtbWluKCRuZXh0LCAkYnJlYWtwb2ludHMpIC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiJdfQ== */
