/*! normalize.css simplified version*/pre{font-family:monospace,monospace;font-size:1em}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;cursor:pointer}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{padding:0}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}:root{--transition-timing-function: ease-in-out;--transition-speed: .2s}@media(prefers-reduced-motion: reduce){:root{--transition-timing-function: linear;--transition-speed: 0s}}@media(prefers-reduced-motion: no-preference){:root{scroll-behavior:smooth}}*,*::before,*::after{box-sizing:border-box}*:focus{outline:4px solid var(--wp--preset--color--primary) !important}::selection{color:var(--wp--preset--color--light);background:var(--wp--preset--color--secondary)}::-moz-selection{color:var(--wp--preset--color--light);background:var(--wp--preset--color--secondary)}html{font-size:1rem;line-height:1.5;-webkit-text-size-adjust:100%}@media(min-width: 992px){body{font-size:var(--wp--preset--font-size--medium);line-height:1.5}}body.using-mouse :focus{outline:none !important}#wpadminbar{position:fixed}a:focus,button:focus,input:focus,select:focus,textarea:focus{outline:none}html.user-tab-nav a:focus,html.user-tab-nav button:focus,html.user-tab-nav input:focus,html.user-tab-nav select:focus,html.user-tab-nav textarea:focus{outline:2px solid blue;outline-offset:0}input,select,textarea{max-width:100%}figure{margin:0}img,svg{height:auto;max-width:100%;vertical-align:middle}nav ul{padding:0;margin:0;list-style:none}nav li{display:inline-block}nav li>a{text-decoration:none}.texture-bg{background-image:url("../images/texture/texture.png");background-repeat:repeat;background-size:300px}.screen-reader-text,.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){width:1px !important;height:1px !important;padding:0 !important;position:absolute !important;margin:-1px !important;white-space:nowrap !important;border:0 !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important}a.skip-link{width:1px;height:1px;position:absolute;z-index:-999;top:auto;left:-999px;overflow:hidden}a.skip-link:focus,a.skip-link:active{width:150px;height:auto;padding:5px;z-index:999;top:20px;left:20px;margin:0;font-size:1rem;text-align:center;color:#fff;border:2px solid #ff0;border-radius:8px;background-color:#000;overflow:auto}[hidden]{display:none}h1,h2,h3,h4,h5,h6{font-family:var(--wp--preset--font-family--heading-font);text-transform:uppercase}h1:only-child,h2:only-child,h3:only-child,h4:only-child,h5:only-child,h6:only-child{margin-bottom:0}@media(min-width: 992px){h1,.h1{font-size:3.25rem;line-height:1.05}}@media(min-width: 992px){h2,.h2{font-size:2.25rem;line-height:1.1}}@media(min-width: 992px){h3,.h3{font-size:1.5rem;line-height:1.15}}@media(min-width: 992px){h4,.h4{font-size:1.25rem;line-height:1.25}}@media(min-width: 992px){h5,.h5{font-size:1rem;line-height:1.1875}}@media(min-width: 992px){h6,.h6{font-size:0.875rem;line-height:1.2142857143}}a img{border:0}p{color:var(--wp--preset--color--color-1)}p:last-child{margin-bottom:0}strong{font-weight:bolder}.page-content ul:not([class]) ul,.page-content ul:not([class]) ol,.acf-block ul:not([class]) ul,.acf-block ul:not([class]) ol,.editor-rich-text ul ul,.editor-rich-text ul ol,ol ul,ol ol{margin:0}hr{box-sizing:content-box;height:0;margin-top:1.875rem;margin-bottom:1.875rem;border-top:1px solid var(--wp--preset--color--dark)}@media(min-width: 768px){hr{margin-top:calc(var(--wp--preset--spacing--medium) / 16)rem;margin-bottom:calc(var(--wp--preset--spacing--medium) / 16)rem}}.wp-caption{width:auto !important}.wp-caption figure{width:auto !important;margin:0}.alignleft,.wp-block-image .alignleft{float:left;margin:0 var(--wp--custom--media-spacing) var(--wp--custom--media-spacing) 0}.alignright,.wp-block-image .alignright{float:right;margin:0 0 var(--wp--custom--media-spacing) var(--wp--custom--media-spacing)}.alignnone,.wp-block-image .alignnone{display:inline-block;max-width:100%}.aligncenter,.wp-block-image .aligncenter{clear:both;margin:var(--wp--custom--media-spacing) auto;text-align:center}.has-text-uppercase{text-transform:uppercase}.is-content-justification-top-center{align-items:flex-start;justify-content:center}.is-content-justification-top-left{align-items:flex-start;justify-content:flex-start}.is-content-justification-top-right{align-items:flex-start;justify-content:flex-end}.is-content-justification-center-center{align-items:center;justify-content:center}.is-content-justification-center-left{align-items:center;justify-content:flex-start}.is-content-justification-center-right{align-items:center;justify-content:flex-end}.is-content-justification-bottom-center{align-items:flex-end;justify-content:center}.is-content-justification-bottom-left{align-items:flex-end;justify-content:flex-start}.is-content-justification-bottom-right{align-items:flex-end;justify-content:flex-end}.container{width:100%;padding:0 1.25rem;margin:0 auto;max-width:calc(var(--wp--style--global--wide-size) + 1.25rem*2)}.container.container--full{max-width:100%}.d-flex{display:flex}.row{display:flex;flex-wrap:wrap;margin-right:-1.25rem;margin-left:-1.25rem}.row.justify-content-end{justify-content:flex-end}.row.justify-content-center{justify-content:center}.row.justify-content-between{justify-content:space-between}.row.justify-content-evenly{justify-content:space-evenly}.row.align-items-center{align-items:center}.col{flex-basis:0;flex-grow:1;flex-shrink:1;padding:0 1.25rem}[class*=col-]{flex-grow:0;flex-shrink:0;padding:0 1.25rem}.col-1{flex-basis:8.3333333333%;max-width:8.3333333333%}.col-2{flex-basis:16.6666666667%;max-width:16.6666666667%}.col-3{flex-basis:25%;max-width:25%}.col-4{flex-basis:33.3333333333%;max-width:33.3333333333%}.col-5{flex-basis:41.6666666667%;max-width:41.6666666667%}.col-6{flex-basis:50%;max-width:50%}.col-7{flex-basis:58.3333333333%;max-width:58.3333333333%}.col-8{flex-basis:66.6666666667%;max-width:66.6666666667%}.col-9{flex-basis:75%;max-width:75%}.col-10{flex-basis:83.3333333333%;max-width:83.3333333333%}.col-11{flex-basis:91.6666666667%;max-width:91.6666666667%}.col-12{flex-basis:100%;max-width:100%}@media(min-width: 768px){.col-md-1{flex-basis:8.3333333333%;max-width:8.3333333333%}}@media(min-width: 768px){.col-md-2{flex-basis:16.6666666667%;max-width:16.6666666667%}}@media(min-width: 768px){.col-md-3{flex-basis:25%;max-width:25%}}@media(min-width: 768px){.col-md-4{flex-basis:33.3333333333%;max-width:33.3333333333%}}@media(min-width: 768px){.col-md-5{flex-basis:41.6666666667%;max-width:41.6666666667%}}@media(min-width: 768px){.col-md-6{flex-basis:50%;max-width:50%}}@media(min-width: 768px){.col-md-7{flex-basis:58.3333333333%;max-width:58.3333333333%}}@media(min-width: 768px){.col-md-8{flex-basis:66.6666666667%;max-width:66.6666666667%}}@media(min-width: 768px){.col-md-9{flex-basis:75%;max-width:75%}}@media(min-width: 768px){.col-md-10{flex-basis:83.3333333333%;max-width:83.3333333333%}}@media(min-width: 768px){.col-md-11{flex-basis:91.6666666667%;max-width:91.6666666667%}}@media(min-width: 768px){.col-md-12{flex-basis:100%;max-width:100%}}@media(min-width: 992px){.col-lg-1{flex-basis:8.3333333333%;max-width:8.3333333333%}}@media(min-width: 992px){.col-lg-2{flex-basis:16.6666666667%;max-width:16.6666666667%}}@media(min-width: 992px){.col-lg-3{flex-basis:25%;max-width:25%}}@media(min-width: 992px){.col-lg-4{flex-basis:33.3333333333%;max-width:33.3333333333%}}@media(min-width: 992px){.col-lg-5{flex-basis:41.6666666667%;max-width:41.6666666667%}}@media(min-width: 992px){.col-lg-6{flex-basis:50%;max-width:50%}}@media(min-width: 992px){.col-lg-7{flex-basis:58.3333333333%;max-width:58.3333333333%}}@media(min-width: 992px){.col-lg-8{flex-basis:66.6666666667%;max-width:66.6666666667%}}@media(min-width: 992px){.col-lg-9{flex-basis:75%;max-width:75%}}@media(min-width: 992px){.col-lg-10{flex-basis:83.3333333333%;max-width:83.3333333333%}}@media(min-width: 992px){.col-lg-11{flex-basis:91.6666666667%;max-width:91.6666666667%}}@media(min-width: 992px){.col-lg-12{flex-basis:100%;max-width:100%}}@media(min-width: 1200px){.col-xl-1{flex-basis:8.3333333333%;max-width:8.3333333333%}}@media(min-width: 1200px){.col-xl-2{flex-basis:16.6666666667%;max-width:16.6666666667%}}@media(min-width: 1200px){.col-xl-3{flex-basis:25%;max-width:25%}}@media(min-width: 1200px){.col-xl-4{flex-basis:33.3333333333%;max-width:33.3333333333%}}@media(min-width: 1200px){.col-xl-5{flex-basis:41.6666666667%;max-width:41.6666666667%}}@media(min-width: 1200px){.col-xl-6{flex-basis:50%;max-width:50%}}@media(min-width: 1200px){.col-xl-7{flex-basis:58.3333333333%;max-width:58.3333333333%}}@media(min-width: 1200px){.col-xl-8{flex-basis:66.6666666667%;max-width:66.6666666667%}}@media(min-width: 1200px){.col-xl-9{flex-basis:75%;max-width:75%}}@media(min-width: 1200px){.col-xl-10{flex-basis:83.3333333333%;max-width:83.3333333333%}}@media(min-width: 1200px){.col-xl-11{flex-basis:91.6666666667%;max-width:91.6666666667%}}@media(min-width: 1200px){.col-xl-12{flex-basis:100%;max-width:100%}}#page-loader{display:none;width:100%;height:100%;position:fixed;z-index:100000000;top:0;left:0;opacity:0;transition:opacity .25s ease-in-out,background-color .25s ease-in-out}#page-loader.visible{display:block}#page-loader.visible .page-loader--red{-webkit-transform:translateY(-100%);-ms-transform:translateY(-100%);transform:translateY(-100%);animation-name:loader;animation-duration:2.9s;animation-delay:.3s}#page-loader.visible .page-loader--yellow{-webkit-transform:translateY(-100%);-ms-transform:translateY(-100%);transform:translateY(-100%);animation-name:loader;animation-duration:2.1s;animation-delay:.6s}#page-loader.show{opacity:1}#page-loader.image .page-loader--img{opacity:1}.page-loader--img{position:absolute;top:0;left:0;right:0;bottom:0;z-index:0;opacity:0;transition:opacity .25s ease-in-out}.page-loader--img img{width:100%;height:100%;object-fit:cover}.page-loader--red{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1;background-color:var(--wp--preset--color--primary)}.page-loader--yellow{position:fixed;top:0;left:0;right:0;bottom:0;z-index:2;background-color:var(--wp--preset--color--secondary)}@keyframes loader{0%{transform:translateY(100%)}40%{transform:translateY(0%)}60%{transform:translateY(0%)}100%{transform:translateY(-100%)}}.block-spacing--pt{padding-top:2.5rem}@media(min-width: 768px){.block-spacing--pt{padding-top:var(--wp--preset--spacing--medium)}}.block-spacing--pb{padding-bottom:2.5rem}@media(min-width: 768px){.block-spacing--pb{padding-bottom:var(--wp--preset--spacing--medium)}}.block-spacing--mt{margin-top:1.875rem}@media(min-width: 768px){.block-spacing--mt{margin-top:var(--wp--preset--spacing--medium)}}.block-spacing--mb{margin-bottom:1.875rem}@media(min-width: 768px){.block-spacing--mb{margin-bottom:var(--wp--preset--spacing--medium)}}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0cy9jc3MvX19nbG9iYWwvX25vcm1hbGl6ZS5zY3NzIiwiYXNzZXRzL2Nzcy9fX2dsb2JhbC9fZ2VuZXJhbC5zY3NzIiwiYXNzZXRzL2Nzcy9fX3NldHRpbmdzL192YXJpYWJsZXMuc2NzcyIsImFzc2V0cy9jc3MvX19zZXR0aW5ncy9faW5jbHVkZS1tZWRpYS5zY3NzIiwiYXNzZXRzL2Nzcy9fX2dsb2JhbC9fYWNjZXNzaWJpbGl0eS5zY3NzIiwiYXNzZXRzL2Nzcy9fX2dsb2JhbC9fdHlwb2dyYXBoeS5zY3NzIiwiYXNzZXRzL2Nzcy9fX3NldHRpbmdzL19taXhpbnMuc2NzcyIsImFzc2V0cy9jc3MvX19nbG9iYWwvX3dwLnNjc3MiLCJhc3NldHMvY3NzL19fZ2xvYmFsL19ncmlkLnNjc3MiLCJhc3NldHMvY3NzL19fZ2xvYmFsL19sb2FkZXIuc2NzcyIsImFzc2V0cy9jc3MvX19nbG9iYWwvX3NwYWNpbmdzLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0NBQ0EsSUFDQyxnQ0FDQSxjQUdELGNBR0MsZ0NBQ0EsY0FHRCxNQUNDLGNBR0QsUUFFQyxjQUNBLGNBQ0Esa0JBQ0Esd0JBR0QsSUFDQyxlQUdELElBQ0MsV0FHRCxzQ0FLQyxvQkFDQSxlQUNBLGlCQUNBLFNBR0QsY0FFQyxvQkFHRCxnREFJQywwQkFDQSxlQUdELHdIQUlDLGtCQUNBLFVBR0QsNEdBSUMsOEJBR0QsU0FDQywyQkFHRCxPQUNDLFVBR0QsU0FDQyx3QkFHRCxrRkFFQyxZQUdELGNBQ0MsNkJBQ0Esb0JBR0QseUNBQ0Msd0JBR0QsNkJBQ0MsMEJBQ0EsYUFHRCxRQUNDLGNBR0QsUUFDQyxrQkM1R0QsTUFDQywwQ0FFQSx3QkFDQSx1Q0FKRCxNQUtFLHFDQUVBLHdCQUVELDhDQVRELE1BVUUsd0JBSUYscUJBR0Msc0JBR0QsUUFDQywrREFHRCxZQUNDLE1DT2MsZ0NETGQsV0NZa0Isb0NEVm5CLGlCQUNDLE1DRWMsMkNBT0ksb0NESm5CLEtBQ0MsZUFDQSxn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QyxzQlBzaUJBLHlCT3ZpQkQsbUJBSUUsZVJRTyxvQ1FMVCxtQkFDQyxvQlAraEJBLHlCT2hpQkQsbUJBSUUsV1JJTSxvQ1FEUixtQkFDQyx1QlB3aEJBLHlCT3poQkQsbUJBSUUsY1JITSIsImZpbGUiOiJhc3NldHMvY3NzL3N0eWxlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qISBub3JtYWxpemUuY3NzIHNpbXBsaWZpZWQgdmVyc2lvbiovXG5wcmUge1xuXHRmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG5cdGZvbnQtc2l6ZTogMWVtO1xufVxuXG5jb2RlLFxua2JkLFxuc2FtcCB7XG5cdGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcblx0Zm9udC1zaXplOiAxZW07XG59XG5cbnNtYWxsIHtcblx0Zm9udC1zaXplOiA4MCU7XG59XG5cbnN1YixcbnN1cCB7XG5cdGZvbnQtc2l6ZTogNzUlO1xuXHRsaW5lLWhlaWdodDogMDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG5cdGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcblx0dG9wOiAtMC41ZW07XG59XG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG5cdGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuXHRmb250LXNpemU6IDEwMCU7XG5cdGxpbmUtaGVpZ2h0OiAxLjE1O1xuXHRtYXJnaW46IDA7XG59XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG5cdHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG59XG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcblx0Ym9yZGVyLXN0eWxlOiBub25lO1xuXHRwYWRkaW5nOiAwO1xufVxuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG5cdG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuZmllbGRzZXQge1xuXHRwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG5cbmxlZ2VuZCB7XG5cdHBhZGRpbmc6IDA7XG59XG5cbnByb2dyZXNzIHtcblx0dmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcblx0aGVpZ2h0OiBhdXRvO1xufVxuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuXHRvdXRsaW5lLW9mZnNldDogLTJweDtcbn1cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcblx0Zm9udDogaW5oZXJpdDtcbn1cblxuZGV0YWlscyB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuXG5zdW1tYXJ5IHtcblx0ZGlzcGxheTogbGlzdC1pdGVtO1xufSIsIjpyb290IHtcblx0LS10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG5cblx0LS10cmFuc2l0aW9uLXNwZWVkOiAuMnM7XG5cdEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG5cdFx0LS10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuXG5cdFx0LS10cmFuc2l0aW9uLXNwZWVkOiAwcztcblx0fVxuXHRAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcblx0XHRzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcblx0fVxufVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4qOmZvY3VzIHtcblx0b3V0bGluZTogNHB4IHNvbGlkICRjb2xvci0tcHJpbWFyeSAhaW1wb3J0YW50O1xufVxuXG46OnNlbGVjdGlvbiB7XG5cdGNvbG9yOiAkY29sb3ItLXRleHQtbGlnaHQ7XG5cblx0YmFja2dyb3VuZDogJGNvbG9yLS1zZWNvbmRhcnk7XG59XG46Oi1tb3otc2VsZWN0aW9uIHtcblx0Y29sb3I6ICRjb2xvci0tdGV4dC1saWdodDtcblxuXHRiYWNrZ3JvdW5kOiAkY29sb3ItLXNlY29uZGFyeTtcbn1cblxuaHRtbCB7XG5cdGZvbnQtc2l6ZTogMXJlbTtcblx0bGluZS1oZWlnaHQ6IDEuNTtcblx0LXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xufVxuXG5ib2R5IHtcblx0QGluY2x1ZGUgbWVkaWEoJz49bGcnKSB7XG5cdFx0Zm9udC1zaXplOiAkZm9udC1zaXplLWRlc2t0b3A7XG5cdFx0bGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1kZXNrdG9wO1xuXHR9XG5cblx0Ji51c2luZy1tb3VzZSA6Zm9jdXMge1xuXHRcdG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcblx0fVxuXG59XG5cbiN3cGFkbWluYmFyIHtcblx0cG9zaXRpb246IGZpeGVkO1xufVxuXG5hLFxuYnV0dG9uLFxuaW5wdXQsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmU6IG5vbmU7XG5cblx0XHRodG1sLnVzZXItdGFiLW5hdiAmIHtcblx0XHRcdG91dGxpbmU6ICRvdXRsaW5lO1xuXHRcdFx0b3V0bGluZS1vZmZzZXQ6IDA7XG5cdFx0fVxuXHR9XG59XG5cbmlucHV0LFxuc2VsZWN0LFxudGV4dGFyZWEge1xuXHRtYXgtd2lkdGg6IDEwMCU7XG59XG5cbmZpZ3VyZSB7XG5cdG1hcmdpbjogMDtcbn1cblxuaW1nLFxuc3ZnIHtcblx0aGVpZ2h0OiBhdXRvO1xuXHRtYXgtd2lkdGg6IDEwMCU7XG5cblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxubmF2IHtcblx0dWwge1xuXHRcdHBhZGRpbmc6IDA7XG5cblx0XHRtYXJnaW46IDA7XG5cblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHR9XG5cdGxpIHsgXG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdD4gYSB7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0fVxuXHR9XG59XG5cbi8vIFRleHR1cmUgb24gc29tZSBzZWN0aW9uc1xuLnRleHR1cmUtYmcge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL3RleHR1cmUvdGV4dHVyZS5wbmcnKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMzAwcHg7XG59XG4iLCIvLyogQlJFQUtQT0lOVFMgKi8vXG4kYnJlYWtwb2ludHM6ICh4czogMzc1cHgsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQ0MHB4LCBtYXg6IDE5MjBweCk7XG5cbi8vKiBDT05UQUlORVIgd2lkdGggdmFyaWFibGVzICovL1xuJGNvbnRhaW5lcjogdmFyKC0td3AtLXN0eWxlLS1nbG9iYWwtLXdpZGUtc2l6ZSk7IC8vIHRoZW1lLmpzb24gc2V0dGluZ3MubGF5b3V0XG4kY29udGFpbmVyLXBhZGRpbmc6IDIwOyAvL3RoZW1lLmpzb24gc2V0dGluZy5jdXN0b20uYmFzZVBhZGRpbmdcblxuLy8qIEZPTlRTICovL1xuJGZvbnQtYmFzZTogdmFyKC0td3AtLXByZXNldC0tZm9udC1mYW1pbHktLWJhc2UtZm9udCk7IC8vdGhlbWUuanNvbiBzZXR0aW5nLnR5cG9ncmFwaHkuZm9udEZhbWlsaWVzXG4kZm9udC1oZWFkaW5nOiB2YXIoLS13cC0tcHJlc2V0LS1mb250LWZhbWlseS0taGVhZGluZy1mb250KTsgLy90aGVtZS5qc29uIHNldHRpbmcudHlwb2dyYXBoeS5mb250RmFtaWxpZXNcblxuJGZvbnQtc2l6ZS1kZXNrdG9wOiB2YXIoLS13cC0tcHJlc2V0LS1mb250LXNpemUtLW1lZGl1bSk7Ly90aGVtZS5qc29uIHNldHRpbmcudHlwb2dyYXBoeS5mb250U2l6ZXNcbiRsaW5lLWhlaWdodC1kZXNrdG9wOiAxLjU7XG5cbi8vIFNldCBNb2JpbGUgZm9udC1zaXplIC8gbGluZS1oZWlnaHQgc3R5bGVzIGluIHRoZW1lLmpzb24gc3R5bGVzLnR5cG9ncmFwaHlcblxuLy8qIFNQQUNJTkdTICovL1xuXG4vLyBCbG9jayBTcGFjaW5nc1xuJHNwYWNpbmctbW9iaWxlOiA0MDsgLy90aGVtZS5qc29uIHNldHRpbmcuc3BhY2luZy5zcGFjaW5nU2l6ZXNcbiRzcGFjaW5nOiB2YXIoLS13cC0tcHJlc2V0LS1zcGFjaW5nLS1tZWRpdW0pO1xuXG4kbWFyZ2luLW1vYmlsZTogMzA7IC8vdGhlbWUuanNvbiBzZXR0aW5nLnNwYWNpbmcuc3BhY2luZ1NpemVzXG4kbWFyZ2luOiB2YXIoLS13cC0tcHJlc2V0LS1zcGFjaW5nLS1tZWRpdW0pO1xuXG4vLyBNZWRpYSBTcGFjaW5nXG4kbWVkaWEtbWFyZ2luOiB2YXIoLS13cC0tY3VzdG9tLS1tZWRpYS1zcGFjaW5nKTsgLy90aGVtZS5qc29uIHNldHRpbmcuY3VzdG9tLm1lZGlhU3BhY2luZzsgLy9weFxuXG4vLyogQ09MT1JTICovL1xuXG4vLyBCYXNlIENvbG9yc1xuJGNvbG9yLS1kYXJrOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tZGFyayk7IC8vdGhlbWUuanNvbiBzZXR0aW5nLmNvbG9yXG4kY29sb3ItLWxpZ2h0OiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tbGlnaHQpOyAvL3RoZW1lLmpzb24gc2V0dGluZy5jb2xvclxuJGNvbG9yLS1ibGFjazogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLWJsYWNrKTsgLy90aGVtZS5qc29uIHNldHRpbmcuY29sb3JcblxuLy8gTWFpbiBDb2xvcnNcbiRjb2xvci0tcHJpbWFyeTogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLXByaW1hcnkpOyAvL3RoZW1lLmpzb24gc2V0dGluZy5jb2xvclxuJGNvbG9yLS1wcmltYXJ5LWRhcms6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1wcmltYXJ5LWRhcmspOyAvL3RoZW1lLmpzb24gc2V0dGluZy5jb2xvclxuXG4kY29sb3ItLXNlY29uZGFyeTogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLXNlY29uZGFyeSk7IC8vdGhlbWUuanNvbiBzZXR0aW5nLmNvbG9yXG5cbi8vIE90aGVyIENvbG9yc1xuJGNvbG9yLS0xOiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tY29sb3ItMSk7IC8vdGhlbWUuanNvbiBzZXR0aW5nLmNvbG9yXG4kY29sb3ItLTI6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1jb2xvci0yKTsgLy90aGVtZS5qc29uIHNldHRpbmcuY29sb3JcbiRjb2xvci0tMzogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLWNvbG9yLTMpOyAvL3RoZW1lLmpzb24gc2V0dGluZy5jb2xvclxuJGNvbG9yLS00OiB2YXIoLS13cC0tcHJlc2V0LS1jb2xvci0tY29sb3ItNCk7IC8vdGhlbWUuanNvbiBzZXR0aW5nLmNvbG9yXG4kY29sb3ItLTU6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1jb2xvci01KTsgLy90aGVtZS5qc29uIHNldHRpbmcuY29sb3JcbiRjb2xvci0tNjogdmFyKC0td3AtLXByZXNldC0tY29sb3ItLWNvbG9yLTYpOyAvL3RoZW1lLmpzb24gc2V0dGluZy5jb2xvclxuXG4vLyBFbGVtZW50cyBDb2xvcnNcbiRjb2xvci0tYmc6IHZhcigtLXdwLS1wcmVzZXQtLWNvbG9yLS1iZyk7IC8vdGhlbWUuanNvbiBzZXR0aW5nLmNvbG9yXG4kY29sb3ItLWJvZHk6ICRjb2xvci0tbGlnaHQ7XG4kY29sb3ItLWJvcmRlcjogJGNvbG9yLS1kYXJrO1xuXG4vLyBUaGVtZSBUZXh0IENvbG9yc1xuJGNvbG9yLS10ZXh0OiAkY29sb3ItLWRhcms7XG4kY29sb3ItLXRleHQtbGlnaHQ6ICRjb2xvci0tbGlnaHQ7XG4kY29sb3ItLWxpbms6ICRjb2xvci0tcHJpbWFyeTtcbiRjb2xvci0tbGluay1ob3ZlcjogJGNvbG9yLS1kYXJrO1xuXG4vLyogT1RIRVIgKi8vXG5cbi8vIFRyYW5zaXRpb25zXG4kdHJhbnMtc3BlZWQ6IHZhcigtLXRyYW5zaXRpb24tc3BlZWQpO1xuJHRyYW5zLWZ1bmM6IHZhcigtLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKTtcblxuLy8gT3V0bGluZVxuJG91dGxpbmU6IDJweCBzb2xpZCBibHVlOyIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8gICAgIF8gICAgICAgICAgICBfICAgICAgICAgICBfICAgICAgICAgICAgICAgICAgICAgICAgICAgXyBfXG4vLyAgICAoXykgICAgICAgICAgfCB8ICAgICAgICAgfCB8ICAgICAgICAgICAgICAgICAgICAgICAgIHwgKF8pXG4vLyAgICAgXyBfIF9fICAgX19ffCB8XyAgIF8gIF9ffCB8IF9fXyAgIF8gX18gX19fICAgX19fICBfX3wgfF8gIF9fIF9cbi8vICAgIHwgfCAnXyBcXCAvIF9ffCB8IHwgfCB8LyBfYCB8LyBfIFxcIHwgJ18gYCBfIFxcIC8gXyBcXC8gX2AgfCB8LyBfYCB8XG4vLyAgICB8IHwgfCB8IHwgKF9ffCB8IHxffCB8IChffCB8ICBfXy8gfCB8IHwgfCB8IHwgIF9fLyAoX3wgfCB8IChffCB8XG4vLyAgICB8X3xffCB8X3xcXF9fX3xffFxcX18sX3xcXF9fLF98XFxfX198IHxffCB8X3wgfF98XFxfX198XFxfXyxffF98XFxfXyxffFxuLy9cbi8vICAgICAgU2ltcGxlLCBlbGVnYW50IGFuZCBtYWludGFpbmFibGUgbWVkaWEgcXVlcmllcyBpbiBTYXNzXG4vLyAgICAgICAgICAgICAgICAgICAgICAgIHYxLjQuOVxuLy9cbi8vICAgICAgICAgICAgICAgIGh0dHA6Ly9pbmNsdWRlLW1lZGlhLmNvbVxuLy9cbi8vICAgICAgICAgQXV0aG9yczogRWR1YXJkbyBCb3VjYXMgKEBlZHVhcmRvYm91Y2FzKVxuLy8gICAgICAgICAgICAgICAgICBIdWdvIEdpcmF1ZGVsIChAaHVnb2dpcmF1ZGVsKVxuLy9cbi8vICAgICAgVGhpcyBwcm9qZWN0IGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgTUlUIGxpY2Vuc2VcblxuXG4vLy8vXG4vLy8gaW5jbHVkZS1tZWRpYSBsaWJyYXJ5IHB1YmxpYyBjb25maWd1cmF0aW9uXG4vLy8gQGF1dGhvciBFZHVhcmRvIEJvdWNhc1xuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8vXG5cblxuLy8vXG4vLy8gQ3JlYXRlcyBhIGxpc3Qgb2YgZ2xvYmFsIGJyZWFrcG9pbnRzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHNpbmdsZSBicmVha3BvaW50IHdpdGggdGhlIGxhYmVsIGBwaG9uZWBcbi8vLyAgJGJyZWFrcG9pbnRzOiAoJ3Bob25lJzogMzIwcHgpO1xuLy8vXG4kYnJlYWtwb2ludHM6IChcblx0J3Bob25lJzogMzIwcHgsXG5cdCd0YWJsZXQnOiA3NjhweCxcblx0J2Rlc2t0b3AnOiAxMDI0cHhcbikgIWRlZmF1bHQ7XG5cblxuLy8vXG4vLy8gQ3JlYXRlcyBhIGxpc3Qgb2Ygc3RhdGljIGV4cHJlc3Npb25zIG9yIG1lZGlhIHR5cGVzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHNpbmdsZSBtZWRpYSB0eXBlIChzY3JlZW4pXG4vLy8gICRtZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nOiAnc2NyZWVuJyk7XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHN0YXRpYyBleHByZXNzaW9uIHdpdGggbG9naWNhbCBkaXNqdW5jdGlvbiAoT1Igb3BlcmF0b3IpXG4vLy8gICRtZWRpYS1leHByZXNzaW9uczogKFxuLy8vICAgICdyZXRpbmEyeCc6ICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJ1xuLy8vICApO1xuLy8vXG4kbWVkaWEtZXhwcmVzc2lvbnM6IChcblx0J3NjcmVlbic6ICdzY3JlZW4nLFxuXHQncHJpbnQnOiAncHJpbnQnLFxuXHQnaGFuZGhlbGQnOiAnaGFuZGhlbGQnLFxuXHQnbGFuZHNjYXBlJzogJyhvcmllbnRhdGlvbjogbGFuZHNjYXBlKScsXG5cdCdwb3J0cmFpdCc6ICcob3JpZW50YXRpb246IHBvcnRyYWl0KScsXG5cdCdyZXRpbmEyeCc6ICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLCAobWluLXJlc29sdXRpb246IDJkcHB4KScsXG5cdCdyZXRpbmEzeCc6ICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzKSwgKG1pbi1yZXNvbHV0aW9uOiAzNTBkcGkpLCAobWluLXJlc29sdXRpb246IDNkcHB4KSdcbikgIWRlZmF1bHQ7XG5cblxuLy8vXG4vLy8gRGVmaW5lcyBhIG51bWJlciB0byBiZSBhZGRlZCBvciBzdWJ0cmFjdGVkIGZyb20gZWFjaCB1bml0IHdoZW4gZGVjbGFyaW5nIGJyZWFrcG9pbnRzIHdpdGggZXhjbHVzaXZlIGludGVydmFsc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEludGVydmFsIGZvciBwaXhlbHMgaXMgZGVmaW5lZCBhcyBgMWAgYnkgZGVmYXVsdFxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPjEyOHB4Jykge31cbi8vL1xuLy8vICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiAxMjlweCkge31cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBJbnRlcnZhbCBmb3IgZW1zIGlzIGRlZmluZWQgYXMgYDAuMDFgIGJ5IGRlZmF1bHRcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz4yMGVtJykge31cbi8vL1xuLy8vICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiAyMC4wMWVtKSB7fVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEludGVydmFsIGZvciByZW1zIGlzIGRlZmluZWQgYXMgYDAuMWAgYnkgZGVmYXVsdCwgdG8gYmUgdXNlZCB3aXRoIGBmb250LXNpemU6IDYyLjUlO2Bcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz4yLjByZW0nKSB7fVxuLy8vXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IDIuMXJlbSkge31cbi8vL1xuJHVuaXQtaW50ZXJ2YWxzOiAoXG5cdCdweCc6IDEsXG5cdCdlbSc6IDAuMDEsXG5cdCdyZW0nOiAwLjEsXG5cdCcnOiAwXG4pICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBEZWZpbmVzIHdoZXRoZXIgc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllcyBpcyBhdmFpbGFibGUsIHVzZWZ1bCBmb3IgY3JlYXRpbmcgc2VwYXJhdGUgc3R5bGVzaGVldHNcbi8vLyBmb3IgYnJvd3NlcnMgdGhhdCBkb24ndCBzdXBwb3J0IG1lZGlhIHF1ZXJpZXMuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gRGlzYWJsZXMgc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllc1xuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICAuZm9vIHtcbi8vLyAgICBjb2xvcjogdG9tYXRvO1xuLy8vICB9XG4vLy9cbiRpbS1tZWRpYS1zdXBwb3J0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBTZWxlY3RzIHdoaWNoIGJyZWFrcG9pbnQgdG8gZW11bGF0ZSB3aGVuIHN1cHBvcnQgZm9yIG1lZGlhIHF1ZXJpZXMgaXMgZGlzYWJsZWQuIE1lZGlhIHF1ZXJpZXMgdGhhdCBzdGFydCBhdCBvclxuLy8vIGludGVyY2VwdCB0aGUgYnJlYWtwb2ludCB3aWxsIGJlIGRpc3BsYXllZCwgYW55IG90aGVycyB3aWxsIGJlIGlnbm9yZWQuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludFxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICAuZm9vIHtcbi8vLyAgICBjb2xvcjogdG9tYXRvO1xuLy8vICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIE5PVCBzaG93IGJlY2F1c2UgaXQgZG9lcyBub3QgaW50ZXJjZXB0IHRoZSBkZXNrdG9wIGJyZWFrcG9pbnRcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ3RhYmxldCc7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gIC8qIE5vIG91dHB1dCAqL1xuLy8vXG4kaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBTZWxlY3RzIHdoaWNoIG1lZGlhIGV4cHJlc3Npb25zIGFyZSBhbGxvd2VkIGluIGFuIGV4cHJlc3Npb24gZm9yIGl0IHRvIGJlIHVzZWQgd2hlbiBtZWRpYSBxdWVyaWVzXG4vLy8gYXJlIG5vdCBzdXBwb3J0ZWQuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludCBhbmQgY29udGFpbnMgb25seSBhY2NlcHRlZCBtZWRpYSBleHByZXNzaW9uc1xuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XG4vLy8gICRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nKTtcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0JywgJ3NjcmVlbicpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgIC5mb28ge1xuLy8vICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBOT1Qgc2hvdyBiZWNhdXNlIGl0IGludGVyY2VwdHMgdGhlIHN0YXRpYyBicmVha3BvaW50IGJ1dCBjb250YWlucyBhIG1lZGlhIGV4cHJlc3Npb24gdGhhdCBpcyBub3QgYWNjZXB0ZWRcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnO1xuLy8vICAkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJyk7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcsICdyZXRpbmEyeCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogTm8gb3V0cHV0ICovXG4vLy9cbiRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nLCAncG9ydHJhaXQnLCAnbGFuZHNjYXBlJykgIWRlZmF1bHQ7XG5cbi8vLy9cbi8vLyBDcm9zcy1lbmdpbmUgbG9nZ2luZyBlbmdpbmVcbi8vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLy9cblxuXG4vLy9cbi8vLyBMb2cgYSBtZXNzYWdlIGVpdGhlciB3aXRoIGBAZXJyb3JgIGlmIHN1cHBvcnRlZFxuLy8vIGVsc2Ugd2l0aCBgQHdhcm5gLCB1c2luZyBgZmVhdHVyZS1leGlzdHMoJ2F0LWVycm9yJylgXG4vLy8gdG8gZGV0ZWN0IHN1cHBvcnQuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lc3NhZ2UgLSBNZXNzYWdlIHRvIGxvZ1xuLy8vXG5AZnVuY3Rpb24gaW0tbG9nKCRtZXNzYWdlKSB7XG5cdEBpZiBmZWF0dXJlLWV4aXN0cygnYXQtZXJyb3InKSB7XG5cdFx0QGVycm9yICRtZXNzYWdlO1xuXHR9IEBlbHNlIHtcblx0XHRAd2FybiAkbWVzc2FnZTtcblx0XHQkXzogbm9vcCgpO1xuXHR9XG5cblx0QHJldHVybiAkbWVzc2FnZTtcbn1cblxuXG4vLy9cbi8vLyBXcmFwcGVyIG1peGluIGZvciB0aGUgbG9nIGZ1bmN0aW9uIHNvIGl0IGNhbiBiZSB1c2VkIHdpdGggYSBtb3JlIGZyaWVuZGx5XG4vLy8gQVBJIHRoYW4gYEBpZiBpbS1sb2coJy4uJykge31gIG9yIGAkXzogaW0tbG9nKCcuLicpYC4gQmFzaWNhbGx5LCB1c2UgdGhlIGZ1bmN0aW9uXG4vLy8gd2l0aGluIGZ1bmN0aW9ucyBiZWNhdXNlIGl0IGlzIG5vdCBwb3NzaWJsZSB0byBpbmNsdWRlIGEgbWl4aW4gaW4gYSBmdW5jdGlvblxuLy8vIGFuZCB1c2UgdGhlIG1peGluIGV2ZXJ5d2hlcmUgZWxzZSBiZWNhdXNlIGl0J3MgbXVjaCBtb3JlIGVsZWdhbnQuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lc3NhZ2UgLSBNZXNzYWdlIHRvIGxvZ1xuLy8vXG5AbWl4aW4gbG9nKCRtZXNzYWdlKSB7XG5cdEBpZiBpbS1sb2coJG1lc3NhZ2UpIHt9XG59XG5cblxuLy8vXG4vLy8gRnVuY3Rpb24gd2l0aCBubyBgQHJldHVybmAgY2FsbGVkIG5leHQgdG8gYEB3YXJuYCBpbiBTYXNzIDMuM1xuLy8vIHRvIHRyaWdnZXIgYSBjb21waWxpbmcgZXJyb3IgYW5kIHN0b3AgdGhlIHByb2Nlc3MuXG4vLy9cbkBmdW5jdGlvbiBub29wKCkge31cblxuLy8vXG4vLy8gRGV0ZXJtaW5lcyB3aGV0aGVyIGEgbGlzdCBvZiBjb25kaXRpb25zIGlzIGludGVyY2VwdGVkIGJ5IHRoZSBzdGF0aWMgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEBwYXJhbSB7QXJnbGlzdH0gICAkY29uZGl0aW9ucyAgLSBNZWRpYSBxdWVyeSBjb25kaXRpb25zXG4vLy9cbi8vLyBAcmV0dXJuIHtCb29sZWFufSAtIFJldHVybnMgdHJ1ZSBpZiB0aGUgY29uZGl0aW9ucyBhcmUgaW50ZXJjZXB0ZWQgYnkgdGhlIHN0YXRpYyBicmVha3BvaW50XG4vLy9cbkBmdW5jdGlvbiBpbS1pbnRlcmNlcHRzLXN0YXRpYy1icmVha3BvaW50KCRjb25kaXRpb25zLi4uKSB7XG5cdCRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQpO1xuXG5cdEBpZiBub3QgJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUge1xuXHRcdEBpZiBpbS1sb2coJ2AjeyRpbS1uby1tZWRpYS1icmVha3BvaW50fWAgaXMgbm90IGEgdmFsaWQgYnJlYWtwb2ludC4nKSB7fVxuXHR9XG5cblx0QGVhY2ggJGNvbmRpdGlvbiBpbiAkY29uZGl0aW9ucyB7XG5cdFx0QGlmIG5vdCBtYXAtaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRjb25kaXRpb24pIHtcblx0XHRcdCRvcGVyYXRvcjogZ2V0LWV4cHJlc3Npb24tb3BlcmF0b3IoJGNvbmRpdGlvbik7XG5cdFx0XHQkcHJlZml4OiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKTtcblx0XHRcdCR2YWx1ZTogZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGNvbmRpdGlvbiwgJG9wZXJhdG9yKTtcblxuXHRcdFx0QGlmICgkcHJlZml4ID09ICdtYXgnIGFuZCAkdmFsdWUgPD0gJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUpIG9yXG5cdFx0XHRcdFx0KCRwcmVmaXggPT0gJ21pbicgYW5kICR2YWx1ZSA+ICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlKSB7XG5cdFx0XHRcdEByZXR1cm4gZmFsc2U7XG5cdFx0XHR9XG5cdFx0fSBAZWxzZSBpZiBub3QgaW5kZXgoJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zLCAkY29uZGl0aW9uKSB7XG5cdFx0XHRAcmV0dXJuIGZhbHNlO1xuXHRcdH1cblx0fVxuXG5cdEByZXR1cm4gdHJ1ZTtcbn1cblxuLy8vL1xuLy8vIFBhcnNpbmcgZW5naW5lXG4vLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8vXG5cblxuLy8vXG4vLy8gR2V0IG9wZXJhdG9yIG9mIGFuIGV4cHJlc3Npb25cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBvcGVyYXRvciBmcm9tXG4vLy9cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gQW55IG9mIGA+PWAsIGA+YCwgYDw9YCwgYDxgLCBg4omlYCwgYOKJpGBcbi8vL1xuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLW9wZXJhdG9yKCRleHByZXNzaW9uKSB7XG5cdEBlYWNoICRvcGVyYXRvciBpbiAoJz49JywgJz4nLCAnPD0nLCAnPCcsICfiiaUnLCAn4omkJykge1xuXHRcdEBpZiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xuXHRcdFx0QHJldHVybiAkb3BlcmF0b3I7XG5cdFx0fVxuXHR9XG5cblx0Ly8gSXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbnNpZGUgYSBmdW5jdGlvbiwgc28gd2UgaGF2ZSB0b1xuXHQvLyByZWx5IG9uIHRoZSBgaW0tbG9nKC4uKWAgZnVuY3Rpb24gcmF0aGVyIHRoYW4gdGhlIGBsb2coLi4pYCBtaXhpbi4gQmVjYXVzZVxuXHQvLyBmdW5jdGlvbnMgY2Fubm90IGJlIGNhbGxlZCBhbnl3aGVyZSBpbiBTYXNzLCB3ZSBuZWVkIHRvIGhhY2sgdGhlIGNhbGwgaW5cblx0Ly8gYSBkdW1teSB2YXJpYWJsZSwgc3VjaCBhcyBgJF9gLiBJZiBhbnlib2R5IGV2ZXIgcmFpc2UgYSBzY29waW5nIGlzc3VlIHdpdGhcblx0Ly8gU2FzcyAzLjMsIGNoYW5nZSB0aGlzIGxpbmUgaW4gYEBpZiBpbS1sb2coLi4pIHt9YCBpbnN0ZWFkLlxuXHQkXzogaW0tbG9nKCdObyBvcGVyYXRvciBmb3VuZCBpbiBgI3skZXhwcmVzc2lvbn1gLicpO1xufVxuXG5cbi8vL1xuLy8vIEdldCBkaW1lbnNpb24gb2YgYW4gZXhwcmVzc2lvbiwgYmFzZWQgb24gYSBmb3VuZCBvcGVyYXRvclxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRleHByZXNzaW9uIC0gRXhwcmVzc2lvbiB0byBleHRyYWN0IGRpbWVuc2lvbiBmcm9tXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yIGZyb20gYCRleHByZXNzaW9uYFxuLy8vXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIGB3aWR0aGAgb3IgYGhlaWdodGAgKG9yIHBvdGVudGlhbGx5IGFueXRoaW5nIGVsc2UpXG4vLy9cbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1kaW1lbnNpb24oJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xuXHQkb3BlcmF0b3ItaW5kZXg6IHN0ci1pbmRleCgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcblx0JHBhcnNlZC1kaW1lbnNpb246IHN0ci1zbGljZSgkZXhwcmVzc2lvbiwgMCwgJG9wZXJhdG9yLWluZGV4IC0gMSk7XG5cdCRkaW1lbnNpb246ICd3aWR0aCc7XG5cblx0QGlmIHN0ci1sZW5ndGgoJHBhcnNlZC1kaW1lbnNpb24pID4gMCB7XG5cdFx0JGRpbWVuc2lvbjogJHBhcnNlZC1kaW1lbnNpb247XG5cdH1cblxuXHRAcmV0dXJuICRkaW1lbnNpb247XG59XG5cblxuLy8vXG4vLy8gR2V0IGRpbWVuc2lvbiBwcmVmaXggYmFzZWQgb24gYW4gb3BlcmF0b3Jcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvclxuLy8vXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIGBtaW5gIG9yIGBtYXhgXG4vLy9cbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKSB7XG5cdEByZXR1cm4gaWYoaW5kZXgoKCc8JywgJzw9JywgJ+KJpCcpLCAkb3BlcmF0b3IpLCAnbWF4JywgJ21pbicpO1xufVxuXG5cbi8vL1xuLy8vIEdldCB2YWx1ZSBvZiBhbiBleHByZXNzaW9uLCBiYXNlZCBvbiBhIGZvdW5kIG9wZXJhdG9yXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIGV4dHJhY3QgdmFsdWUgZnJvbVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvciBmcm9tIGAkZXhwcmVzc2lvbmBcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gLSBBIG51bWVyaWMgdmFsdWVcbi8vL1xuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLXZhbHVlKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpIHtcblx0JG9wZXJhdG9yLWluZGV4OiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XG5cdCR2YWx1ZTogc3RyLXNsaWNlKCRleHByZXNzaW9uLCAkb3BlcmF0b3ItaW5kZXggKyBzdHItbGVuZ3RoKCRvcGVyYXRvcikpO1xuXG5cdEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuXHRcdCR2YWx1ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICR2YWx1ZSk7XG5cdH0gQGVsc2Uge1xuXHRcdCR2YWx1ZTogdG8tbnVtYmVyKCR2YWx1ZSk7XG5cdH1cblxuXHQkaW50ZXJ2YWw6IG1hcC1nZXQoJHVuaXQtaW50ZXJ2YWxzLCB1bml0KCR2YWx1ZSkpO1xuXG5cdEBpZiBub3QgJGludGVydmFsIHtcblx0XHQvLyBJdCBpcyBub3QgcG9zc2libGUgdG8gaW5jbHVkZSBhIG1peGluIGluc2lkZSBhIGZ1bmN0aW9uLCBzbyB3ZSBoYXZlIHRvXG5cdFx0Ly8gcmVseSBvbiB0aGUgYGltLWxvZyguLilgIGZ1bmN0aW9uIHJhdGhlciB0aGFuIHRoZSBgbG9nKC4uKWAgbWl4aW4uIEJlY2F1c2Vcblx0XHQvLyBmdW5jdGlvbnMgY2Fubm90IGJlIGNhbGxlZCBhbnl3aGVyZSBpbiBTYXNzLCB3ZSBuZWVkIHRvIGhhY2sgdGhlIGNhbGwgaW5cblx0XHQvLyBhIGR1bW15IHZhcmlhYmxlLCBzdWNoIGFzIGAkX2AuIElmIGFueWJvZHkgZXZlciByYWlzZSBhIHNjb3BpbmcgaXNzdWUgd2l0aFxuXHRcdC8vIFNhc3MgMy4zLCBjaGFuZ2UgdGhpcyBsaW5lIGluIGBAaWYgaW0tbG9nKC4uKSB7fWAgaW5zdGVhZC5cblx0XHQkXzogaW0tbG9nKCdVbmtub3duIHVuaXQgYCN7dW5pdCgkdmFsdWUpfWAuJyk7XG5cdH1cblxuXHRAaWYgJG9wZXJhdG9yID09ICc+JyB7XG5cdFx0JHZhbHVlOiAkdmFsdWUgKyAkaW50ZXJ2YWw7XG5cdH0gQGVsc2UgaWYgJG9wZXJhdG9yID09ICc8JyB7XG5cdFx0JHZhbHVlOiAkdmFsdWUgLSAkaW50ZXJ2YWw7XG5cdH1cblxuXHRAcmV0dXJuICR2YWx1ZTtcbn1cblxuXG4vLy9cbi8vLyBQYXJzZSBhbiBleHByZXNzaW9uIHRvIHJldHVybiBhIHZhbGlkIG1lZGlhLXF1ZXJ5IGV4cHJlc3Npb25cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gcGFyc2Vcbi8vL1xuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBWYWxpZCBtZWRpYSBxdWVyeVxuLy8vXG5AZnVuY3Rpb24gcGFyc2UtZXhwcmVzc2lvbigkZXhwcmVzc2lvbikge1xuXHQvLyBJZiBpdCBpcyBwYXJ0IG9mICRtZWRpYS1leHByZXNzaW9ucywgaXQgaGFzIG5vIG9wZXJhdG9yXG5cdC8vIHRoZW4gdGhlcmUgaXMgbm8gbmVlZCB0byBnbyBhbnkgZnVydGhlciwganVzdCByZXR1cm4gdGhlIHZhbHVlXG5cdEBpZiBtYXAtaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRleHByZXNzaW9uKSB7XG5cdFx0QHJldHVybiBtYXAtZ2V0KCRtZWRpYS1leHByZXNzaW9ucywgJGV4cHJlc3Npb24pO1xuXHR9XG5cblx0JG9wZXJhdG9yOiBnZXQtZXhwcmVzc2lvbi1vcGVyYXRvcigkZXhwcmVzc2lvbik7XG5cdCRkaW1lbnNpb246IGdldC1leHByZXNzaW9uLWRpbWVuc2lvbigkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcblx0JHByZWZpeDogZ2V0LWV4cHJlc3Npb24tcHJlZml4KCRvcGVyYXRvcik7XG5cdCR2YWx1ZTogZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XG5cblx0QHJldHVybiAnKCN7JHByZWZpeH0tI3skZGltZW5zaW9ufTogI3skdmFsdWV9KSc7XG59XG5cbi8vL1xuLy8vIFNsaWNlIGAkbGlzdGAgYmV0d2VlbiBgJHN0YXJ0YCBhbmQgYCRlbmRgIGluZGV4ZXNcbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtMaXN0fSAkbGlzdCAtIExpc3QgdG8gc2xpY2Vcbi8vLyBAcGFyYW0ge051bWJlcn0gJHN0YXJ0IFsxXSAtIFN0YXJ0IGluZGV4XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRlbmQgW2xlbmd0aCgkbGlzdCldIC0gRW5kIGluZGV4XG4vLy9cbi8vLyBAcmV0dXJuIHtMaXN0fSBTbGljZWQgbGlzdFxuLy8vXG5AZnVuY3Rpb24gc2xpY2UoJGxpc3QsICRzdGFydDogMSwgJGVuZDogbGVuZ3RoKCRsaXN0KSkge1xuXHRAaWYgbGVuZ3RoKCRsaXN0KSA8IDEgb3IgJHN0YXJ0ID4gJGVuZCB7XG5cdFx0QHJldHVybiAoKTtcblx0fVxuXG5cdCRyZXN1bHQ6ICgpO1xuXG5cdEBmb3IgJGkgZnJvbSAkc3RhcnQgdGhyb3VnaCAkZW5kIHtcblx0XHQkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgbnRoKCRsaXN0LCAkaSkpO1xuXHR9XG5cblx0QHJldHVybiAkcmVzdWx0O1xufVxuXG4vLy8vXG4vLy8gU3RyaW5nIHRvIG51bWJlciBjb252ZXJ0ZXJcbi8vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLy9cblxuXG4vLy9cbi8vLyBDYXN0cyBhIHN0cmluZyBpbnRvIGEgbnVtYmVyXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZyB8IE51bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gYmUgcGFyc2VkXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9XG4vLy9cbkBmdW5jdGlvbiB0by1udW1iZXIoJHZhbHVlKSB7XG5cdEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuXHRcdEByZXR1cm4gJHZhbHVlO1xuXHR9IEBlbHNlIGlmIHR5cGUtb2YoJHZhbHVlKSAhPSAnc3RyaW5nJyB7XG5cdFx0JF86IGltLWxvZygnVmFsdWUgZm9yIGB0by1udW1iZXJgIHNob3VsZCBiZSBhIG51bWJlciBvciBhIHN0cmluZy4nKTtcblx0fVxuXG5cdCRmaXJzdC1jaGFyYWN0ZXI6IHN0ci1zbGljZSgkdmFsdWUsIDEsIDEpO1xuXHQkcmVzdWx0OiAwO1xuXHQkZGlnaXRzOiAwO1xuXHQkbWludXM6ICgkZmlyc3QtY2hhcmFjdGVyID09ICctJyk7XG5cdCRudW1iZXJzOiAoJzAnOiAwLCAnMSc6IDEsICcyJzogMiwgJzMnOiAzLCAnNCc6IDQsICc1JzogNSwgJzYnOiA2LCAnNyc6IDcsICc4JzogOCwgJzknOiA5KTtcblxuXHQvLyBSZW1vdmUgKy8tIHNpZ24gaWYgcHJlc2VudCBhdCBmaXJzdCBjaGFyYWN0ZXJcblx0QGlmICgkZmlyc3QtY2hhcmFjdGVyID09ICcrJyBvciAkZmlyc3QtY2hhcmFjdGVyID09ICctJykge1xuXHRcdCR2YWx1ZTogc3RyLXNsaWNlKCR2YWx1ZSwgMik7XG5cdH1cblxuXHRAZm9yICRpIGZyb20gMSB0aHJvdWdoIHN0ci1sZW5ndGgoJHZhbHVlKSB7XG5cdFx0JGNoYXJhY3Rlcjogc3RyLXNsaWNlKCR2YWx1ZSwgJGksICRpKTtcblxuXHRcdEBpZiBub3QgKGluZGV4KG1hcC1rZXlzKCRudW1iZXJzKSwgJGNoYXJhY3Rlcikgb3IgJGNoYXJhY3RlciA9PSAnLicpIHtcblx0XHRcdEByZXR1cm4gdG8tbGVuZ3RoKGlmKCRtaW51cywgLSRyZXN1bHQsICRyZXN1bHQpLCBzdHItc2xpY2UoJHZhbHVlLCAkaSkpXG5cdFx0fVxuXG5cdFx0QGlmICRjaGFyYWN0ZXIgPT0gJy4nIHtcblx0XHRcdCRkaWdpdHM6IDE7XG5cdFx0fSBAZWxzZSBpZiAkZGlnaXRzID09IDAge1xuXHRcdFx0JHJlc3VsdDogJHJlc3VsdCAqIDEwICsgbWFwLWdldCgkbnVtYmVycywgJGNoYXJhY3Rlcik7XG5cdFx0fSBAZWxzZSB7XG5cdFx0XHQkZGlnaXRzOiAkZGlnaXRzICogMTA7XG5cdFx0XHQkcmVzdWx0OiAkcmVzdWx0ICsgbWFwLWdldCgkbnVtYmVycywgJGNoYXJhY3RlcikgLyAkZGlnaXRzO1xuXHRcdH1cblx0fVxuXG5cdEByZXR1cm4gaWYoJG1pbnVzLCAtJHJlc3VsdCwgJHJlc3VsdCk7XG59XG5cblxuLy8vXG4vLy8gQWRkIGAkdW5pdGAgdG8gYCR2YWx1ZWBcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBWYWx1ZSB0byBhZGQgdW5pdCB0b1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkdW5pdCAtIFN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGUgdW5pdFxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfSAtIGAkdmFsdWVgIGV4cHJlc3NlZCBpbiBgJHVuaXRgXG4vLy9cbkBmdW5jdGlvbiB0by1sZW5ndGgoJHZhbHVlLCAkdW5pdCkge1xuXHQkdW5pdHM6ICgncHgnOiAxcHgsICdjbSc6IDFjbSwgJ21tJzogMW1tLCAnJSc6IDElLCAnY2gnOiAxY2gsICdwYyc6IDFwYywgJ2luJzogMWluLCAnZW0nOiAxZW0sICdyZW0nOiAxcmVtLCAncHQnOiAxcHQsICdleCc6IDFleCwgJ3Z3JzogMXZ3LCAndmgnOiAxdmgsICd2bWluJzogMXZtaW4sICd2bWF4JzogMXZtYXgpO1xuXG5cdEBpZiBub3QgaW5kZXgobWFwLWtleXMoJHVuaXRzKSwgJHVuaXQpIHtcblx0XHQkXzogaW0tbG9nKCdJbnZhbGlkIHVuaXQgYCN7JHVuaXR9YC4nKTtcblx0fVxuXG5cdEByZXR1cm4gJHZhbHVlICogbWFwLWdldCgkdW5pdHMsICR1bml0KTtcbn1cblxuLy8vXG4vLy8gVGhpcyBtaXhpbiBhaW1zIGF0IHJlZGVmaW5pbmcgdGhlIGNvbmZpZ3VyYXRpb24ganVzdCBmb3IgdGhlIHNjb3BlIG9mXG4vLy8gdGhlIGNhbGwuIEl0IGlzIGhlbHBmdWwgd2hlbiBoYXZpbmcgYSBjb21wb25lbnQgbmVlZGluZyBhbiBleHRlbmRlZFxuLy8vIGNvbmZpZ3VyYXRpb24gc3VjaCBhcyBjdXN0b20gYnJlYWtwb2ludHMgKHJlZmVycmVkIHRvIGFzIHR3ZWFrcG9pbnRzKVxuLy8vIGZvciBpbnN0YW5jZS5cbi8vL1xuLy8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICR0d2Vha3BvaW50cyBbKCldIC0gTWFwIG9mIHR3ZWFrcG9pbnRzIHRvIGJlIG1lcmdlZCB3aXRoIGAkYnJlYWtwb2ludHNgXG4vLy8gQHBhcmFtIHtNYXB9ICR0d2Vhay1tZWRpYS1leHByZXNzaW9ucyBbKCldIC0gTWFwIG9mIHR3ZWFrZWQgbWVkaWEgZXhwcmVzc2lvbnMgdG8gYmUgbWVyZ2VkIHdpdGggYCRtZWRpYS1leHByZXNzaW9uYFxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEV4dGVuZCB0aGUgZ2xvYmFsIGJyZWFrcG9pbnRzIHdpdGggYSB0d2Vha3BvaW50XG4vLy8gIEBpbmNsdWRlIG1lZGlhLWNvbnRleHQoKCdjdXN0b20nOiA2NzhweCkpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIEBpbmNsdWRlIG1lZGlhKCc+cGhvbmUnLCAnPD1jdXN0b20nKSB7XG4vLy8gICAgICAgLy8gLi4uXG4vLy8gICAgICB9XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gRXh0ZW5kIHRoZSBnbG9iYWwgbWVkaWEgZXhwcmVzc2lvbnMgd2l0aCBhIGN1c3RvbSBvbmVcbi8vLyAgQGluY2x1ZGUgbWVkaWEtY29udGV4dCgkdHdlYWstbWVkaWEtZXhwcmVzc2lvbnM6ICgnYWxsJzogJ2FsbCcpKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBAaW5jbHVkZSBtZWRpYSgnYWxsJywgJz5waG9uZScpIHtcbi8vLyAgICAgICAvLyAuLi5cbi8vLyAgICAgIH1cbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgYm90aCBjb25maWd1cmF0aW9uIG1hcHNcbi8vLyAgQGluY2x1ZGUgbWVkaWEtY29udGV4dCgoJ2N1c3RvbSc6IDY3OHB4KSwgKCdhbGwnOiAnYWxsJykpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIEBpbmNsdWRlIG1lZGlhKCdhbGwnLCAnPnBob25lJywgJzw9Y3VzdG9tJykge1xuLy8vICAgICAgIC8vIC4uLlxuLy8vICAgICAgfVxuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG5AbWl4aW4gbWVkaWEtY29udGV4dCgkdHdlYWtwb2ludHM6ICgpLCAkdHdlYWstbWVkaWEtZXhwcmVzc2lvbnM6ICgpKSB7XG5cdC8vIFNhdmUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cblx0JGdsb2JhbC1icmVha3BvaW50czogJGJyZWFrcG9pbnRzO1xuXHQkZ2xvYmFsLW1lZGlhLWV4cHJlc3Npb25zOiAkbWVkaWEtZXhwcmVzc2lvbnM7XG5cblx0Ly8gVXBkYXRlIGdsb2JhbCBjb25maWd1cmF0aW9uXG5cdCRicmVha3BvaW50czogbWFwLW1lcmdlKCRicmVha3BvaW50cywgJHR3ZWFrcG9pbnRzKSAhZ2xvYmFsO1xuXHQkbWVkaWEtZXhwcmVzc2lvbnM6IG1hcC1tZXJnZSgkbWVkaWEtZXhwcmVzc2lvbnMsICR0d2Vhay1tZWRpYS1leHByZXNzaW9ucykgIWdsb2JhbDtcblxuXHRAY29udGVudDtcblxuXHQvLyBSZXN0b3JlIGdsb2JhbCBjb25maWd1cmF0aW9uXG5cdCRicmVha3BvaW50czogJGdsb2JhbC1icmVha3BvaW50cyAhZ2xvYmFsO1xuXHQkbWVkaWEtZXhwcmVzc2lvbnM6ICRnbG9iYWwtbWVkaWEtZXhwcmVzc2lvbnMgIWdsb2JhbDtcbn1cblxuLy8vL1xuLy8vIGluY2x1ZGUtbWVkaWEgcHVibGljIGV4cG9zZWQgQVBJXG4vLy8gQGF1dGhvciBFZHVhcmRvIEJvdWNhc1xuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8vXG5cblxuLy8vXG4vLy8gR2VuZXJhdGVzIGEgbWVkaWEgcXVlcnkgYmFzZWQgb24gYSBsaXN0IG9mIGNvbmRpdGlvbnNcbi8vL1xuLy8vIEBwYXJhbSB7QXJnbGlzdH0gICAkY29uZGl0aW9ucyAgLSBNZWRpYSBxdWVyeSBjb25kaXRpb25zXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBhIHNpbmdsZSBzZXQgYnJlYWtwb2ludFxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPnBob25lJykgeyB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCB0d28gc2V0IGJyZWFrcG9pbnRzXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+cGhvbmUnLCAnPD10YWJsZXQnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIGN1c3RvbSB2YWx1ZXNcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49MzU4cHgnLCAnPDg1MHB4JykgeyB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBzZXQgYnJlYWtwb2ludHMgd2l0aCBjdXN0b20gdmFsdWVzXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+ZGVza3RvcCcsICc8PTEzNTBweCcpIHsgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggYSBzdGF0aWMgZXhwcmVzc2lvblxuLy8vICBAaW5jbHVkZSBtZWRpYSgncmV0aW5hMngnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBNaXhpbmcgZXZlcnl0aGluZ1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj0zNTBweCcsICc8dGFibGV0JywgJ3JldGluYTN4JykgeyB9XG4vLy9cbkBtaXhpbiBtZWRpYSgkY29uZGl0aW9ucy4uLikge1xuXHRAaWYgKCRpbS1tZWRpYS1zdXBwb3J0IGFuZCBsZW5ndGgoJGNvbmRpdGlvbnMpID09IDApIG9yXG5cdFx0XHQobm90ICRpbS1tZWRpYS1zdXBwb3J0IGFuZCBpbS1pbnRlcmNlcHRzLXN0YXRpYy1icmVha3BvaW50KCRjb25kaXRpb25zLi4uKSkge1xuXHRcdEBjb250ZW50O1xuXHR9IEBlbHNlIGlmICgkaW0tbWVkaWEtc3VwcG9ydCBhbmQgbGVuZ3RoKCRjb25kaXRpb25zKSA+IDApIHtcblx0XHRAbWVkaWEgI3t1bnF1b3RlKHBhcnNlLWV4cHJlc3Npb24obnRoKCRjb25kaXRpb25zLCAxKSkpfSB7XG5cdFx0XHQvLyBSZWN1cnNpdmUgY2FsbFxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoc2xpY2UoJGNvbmRpdGlvbnMsIDIpLi4uKSB7XG5cdFx0XHRcdEBjb250ZW50O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIiwiLnNjcmVlbi1yZWFkZXItdGV4dCxcbi52aXN1YWxseS1oaWRkZW4sXG4udmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZTpub3QoOmZvY3VzKTpub3QoOmZvY3VzLXdpdGhpbikge1xuXHR3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG5cdGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG5cdHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblxuXHRwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcblx0bWFyZ2luOiAtMXB4ICFpbXBvcnRhbnQ7XG5cblx0d2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xuXG5cdGJvcmRlcjogMCAhaW1wb3J0YW50O1xuXHRvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG5cdGNsaXA6IHJlY3QoMCwgMCwgMCwgMCkgIWltcG9ydGFudDtcbn1cbmEuc2tpcC1saW5rIHtcblx0d2lkdGg6IDFweDtcblx0aGVpZ2h0OiAxcHg7XG5cblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR6LWluZGV4OiAtOTk5O1xuXHR0b3A6IGF1dG87XG5cdGxlZnQ6IC05OTlweDtcblxuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuYS5za2lwLWxpbms6Zm9jdXMsXG5hLnNraXAtbGluazphY3RpdmUge1xuXHR3aWR0aDogMTUwcHg7XG5cdGhlaWdodDogYXV0bztcblx0cGFkZGluZzogNXB4O1xuXG5cdHotaW5kZXg6IDk5OTtcblx0dG9wOiAyMHB4O1xuXHRsZWZ0OiAyMHB4O1xuXHRtYXJnaW46IDA7XG5cblx0Zm9udC1zaXplOiByZW0oMTYpO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGNvbG9yOiAjRkZGO1xuXG5cdGJvcmRlcjogMnB4IHNvbGlkIHllbGxvdztcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuXHRvdmVyZmxvdzogYXV0bztcbn1cblxuW2hpZGRlbl0ge1xuXHRkaXNwbGF5OiBub25lO1xufSIsIi8vIEJhc2UgZ2xvYmFsIHN0eWxlcyBtb3ZlZCB0byB0aGVtZS5qc29uXG5cbi8vIEhlYWRpbmdzIC8vXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuXHRmb250LWZhbWlseTogJGZvbnQtaGVhZGluZztcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuXHQmOm9ubHktY2hpbGQge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdH1cbn1cblxuaDEsIC5oMSB7XG5cdEBpbmNsdWRlIG1lZGlhKCc+PWxnJykge1xuXHRcdEBpbmNsdWRlIGZvbnQoNTIsIDU0LjYpO1xuXHR9XG59XG5cbmgyLCAuaDIge1xuXHRAaW5jbHVkZSBtZWRpYSgnPj1sZycpIHtcblx0XHRAaW5jbHVkZSBmb250KDM2LCAzOS42KTtcblx0fVxufVxuXG5oMywgLmgzIHtcblx0QGluY2x1ZGUgbWVkaWEoJz49bGcnKSB7XG5cdFx0QGluY2x1ZGUgZm9udCgyNCwgMjcuNik7XG5cdH1cbn1cblxuaDQsIC5oNCB7XG5cdEBpbmNsdWRlIG1lZGlhKCc+PWxnJykge1xuXHRcdEBpbmNsdWRlIGZvbnQoMjAsIDI1KTtcblx0fVxufVxuXG5oNSwgLmg1IHtcblx0QGluY2x1ZGUgbWVkaWEoJz49bGcnKSB7XG5cdFx0QGluY2x1ZGUgZm9udCgxNiwgMTkpO1xuXHR9XG59XG5cbmg2LCAuaDYge1xuXHRAaW5jbHVkZSBtZWRpYSgnPj1sZycpIHtcblx0XHRAaW5jbHVkZSBmb250KDE0LCAxNyk7XG5cdH1cbn1cblxuLy8gTWFpbiBFbGVtZW50cyAvL1xuYSB7XG5cdC8vICY6bm90KFtjbGFzc10pIHtcblx0Ly8gXHRAaW5jbHVkZSBsaW5rKCk7XG5cdC8vIH1cblxuXHRpbWcge1xuXHRcdGJvcmRlcjogMDtcblx0fVxufVxuXG5wIHtcblx0Y29sb3I6ICRjb2xvci0tMTtcblxuXHQmOmxhc3QtY2hpbGQge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdH1cbn1cblxuc3Ryb25nIHtcblx0Zm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLnBhZ2UtY29udGVudCB1bDpub3QoW2NsYXNzXSksXG4uYWNmLWJsb2NrIHVsOm5vdChbY2xhc3NdKSxcbi5lZGl0b3ItcmljaC10ZXh0IHVsLFxub2wge1xuXHR1bCxcblx0b2wge1xuXHRcdG1hcmdpbjogMDtcblx0fVxufVxuXG5ociB7XG5cdGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuXG5cdGhlaWdodDogMDtcblxuXHRtYXJnaW4tdG9wOiByZW0oJG1hcmdpbi1tb2JpbGUpO1xuXHRtYXJnaW4tYm90dG9tOiByZW0oJG1hcmdpbi1tb2JpbGUpO1xuXG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3ItLXRleHQ7XG5cblx0QGluY2x1ZGUgbWVkaWEoJz49bWQnKSB7XG5cdFx0bWFyZ2luLXRvcDogcmVtKCRtYXJnaW4pO1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbSgkbWFyZ2luKTtcblx0fVxufVxuIiwiLy9cbi8vIE1JWElOU1xuLy9cbkBtaXhpbiBjZiB7XG5cdCY6YmVmb3JlLFxuXHQmOmFmdGVyIHtcblx0XHRjb250ZW50OiAnJztcblxuXHRcdGRpc3BsYXk6IHRhYmxlO1xuXHR9XG5cblx0JjphZnRlciB7XG5cdFx0Y2xlYXI6IGJvdGg7XG5cdH1cbn1cblxuQGZ1bmN0aW9uIHZ3LXNpemUoJHMsICR3OiAxNDQwKSB7XG5cdEByZXR1cm4gKCRzIC8gJHcpICogMTAwICsgdnc7XG59XG5cbkBmdW5jdGlvbiByZW0oJHNpemVWYWx1ZTogMTYpIHtcblx0QHJldHVybiBjYWxjKCRzaXplVmFsdWUgLyAxNikgKyByZW07XG59XG5cbkBmdW5jdGlvbiByZWwoJHNpemUsICRyZWwpIHtcblx0QHJldHVybiBjYWxjKCRzaXplIC8gJHJlbCk7XG59XG5cbkBmdW5jdGlvbiBlbSgkc2l6ZSwgJHJlbCkge1xuXHRAcmV0dXJuIHJlbCgkc2l6ZSwgJHJlbCkgKiAxZW07XG59XG5cbkBtaXhpbiBvYmplY3QtZml0LWNvdmVyKCkge1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXG5cdG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG5AbWl4aW4gbGluZS1oZWlnaHQoJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0OiAwKSB7XG5cdEBpZiAkbGluZS1oZWlnaHQgIT0gMCB7XG5cdFx0QGlmICRsaW5lLWhlaWdodCA8IDEwIHtcblx0XHRcdGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG5cdFx0fVxuXHRcdEBlbHNlIHtcblx0XHRcdGxpbmUtaGVpZ2h0OiBjYWxjKCRsaW5lLWhlaWdodCAvICRmb250LXNpemUpO1xuXHRcdH1cblx0fVxufVxuXG5AbWl4aW4gbGV0dGVyLXNwYWNpbmcoJGZvbnQtc2l6ZSwgJGxldHRlci1zcGFjaW5nOiAwKSB7XG5cdEBpZiAkbGV0dGVyLXNwYWNpbmcgIT0gMCB7XG5cdFx0QGlmICRsZXR0ZXItc3BhY2luZyA8IDEwIHtcblx0XHRcdGxldHRlci1zcGFjaW5nOiByZW0oJGxldHRlci1zcGFjaW5nKTtcblx0XHR9XG5cdFx0QGVsc2Uge1xuXHRcdFx0bGV0dGVyLXNwYWNpbmc6IHJlbSgoJGZvbnQtc2l6ZSAqICRsZXR0ZXItc3BhY2luZykgLyAxMDAwKTtcblx0XHR9XG5cdH1cbn1cblxuQG1peGluIGZvbnQoJGZvbnQtc2l6ZS1tYXAsICRsaW5lLWhlaWdodDogMCwgJGxldHRlci1zcGFjaW5nOiAwKSB7XG5cdEBpZiB0eXBlLW9mKCRmb250LXNpemUtbWFwKSA9PSAnbWFwJyB7XG5cdFx0QGVhY2ggJGJyZWFrcG9pbnQsICRmb250LXNpemUgaW4gJGZvbnQtc2l6ZS1tYXAge1xuXHRcdFx0QGlmICRicmVha3BvaW50ID09IG51bGwge1xuXHRcdFx0XHRmb250LXNpemU6IHJlbSgkZm9udC1zaXplKTtcblxuXHRcdFx0XHRAaW5jbHVkZSBsaW5lLWhlaWdodChtYXAtZ2V0KCRmb250LXNpemUtbWFwLCBudGgobWFwLWtleXMoJGZvbnQtc2l6ZS1tYXApLCAtMSkpLCAkbGluZS1oZWlnaHQpO1xuXHRcdFx0XHRAaW5jbHVkZSBsZXR0ZXItc3BhY2luZyhtYXAtZ2V0KCRmb250LXNpemUtbWFwLCBudGgobWFwLWtleXMoJGZvbnQtc2l6ZS1tYXApLCAtMSkpLCAkbGV0dGVyLXNwYWNpbmcpO1xuXHRcdFx0fVxuXHRcdFx0QGVsc2Uge1xuXHRcdFx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGJyZWFrcG9pbnQpKSB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiByZW0oJGZvbnQtc2l6ZSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblx0QGVsc2Uge1xuXHRcdGZvbnQtc2l6ZTogcmVtKCRmb250LXNpemUtbWFwKTtcblxuXHRcdEBpbmNsdWRlIGxpbmUtaGVpZ2h0KCRmb250LXNpemUtbWFwLCAkbGluZS1oZWlnaHQpO1xuXHRcdEBpbmNsdWRlIGxldHRlci1zcGFjaW5nKCRmb250LXNpemUtbWFwLCAkbGV0dGVyLXNwYWNpbmcpO1xuXHR9XG59XG5cbkBtaXhpbiBzY3JvbGxiYXItaGlkZGVuKCkge1xuXHRvdmVyZmxvdy15OiBhdXRvO1xuXG5cdHNjcm9sbGJhci13aWR0aDogbm9uZTtcblxuXHQmOjotd2Via2l0LXNjcm9sbGJhciB7XG5cdFx0d2lkdGg6IDA7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuXG4vLyBAbWl4aW4gc2Nyb2xsYmFyKCkge1xuLy8gXHQkY29sb3Itc2Nyb2xsYmFyOiAkY29sb3ItLXByaW1hcnk7XG4vLyBcdCRjb2xvci1zY3JvbGxiYXItYmc6ICNGRkZGRkY7XG5cbi8vIFx0c2Nyb2xsYmFyLXdpZHRoOiB0aGluO1xuLy8gXHRzY3JvbGxiYXItY29sb3I6ICRjb2xvci1zY3JvbGxiYXIgJGNvbG9yLXNjcm9sbGJhci1iZztcblxuLy8gXHQmOjotd2Via2l0LXNjcm9sbGJhciB7XG4vLyBcdFx0d2lkdGg6IHJlbSg4KTtcbi8vIFx0XHRoZWlnaHQ6IHJlbSg4KTtcbi8vIFx0fVxuLy8gXHQmOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4vLyBcdFx0YmFja2dyb3VuZDogJGNvbG9yLXNjcm9sbGJhci1iZztcbi8vIFx0fVxuLy8gXHQmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4vLyBcdFx0Ym9yZGVyOiAwO1xuLy8gXHRcdGJvcmRlci1yYWRpdXM6IDA7XG4vLyBcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNjcm9sbGJhcjtcbi8vIFx0fVxuLy8gfSIsIi53cC1jYXB0aW9uIHtcblx0d2lkdGg6IGF1dG8gIWltcG9ydGFudDtcblx0ZmlndXJlIHtcblx0XHR3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuXG5cdFx0bWFyZ2luOiAwO1xuXHR9XG59XG5cbi5hbGlnbmxlZnQsXG4ud3AtYmxvY2staW1hZ2UgLmFsaWdubGVmdCB7XG5cdGZsb2F0OiBsZWZ0O1xuXHRtYXJnaW46IDAgJG1lZGlhLW1hcmdpbiAkbWVkaWEtbWFyZ2luIDA7XG59XG5cbi5hbGlnbnJpZ2h0LFxuLndwLWJsb2NrLWltYWdlIC5hbGlnbnJpZ2h0IHtcblx0ZmxvYXQ6IHJpZ2h0O1xuXHRtYXJnaW46IDAgMCAkbWVkaWEtbWFyZ2luICRtZWRpYS1tYXJnaW47XG59XG5cbi5hbGlnbm5vbmUsXG4ud3AtYmxvY2staW1hZ2UgLmFsaWdubm9uZSB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuXHRtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5hbGlnbmNlbnRlcixcbi53cC1ibG9jay1pbWFnZSAuYWxpZ25jZW50ZXIge1xuXHRjbGVhcjogYm90aDtcblxuXHRtYXJnaW46ICRtZWRpYS1tYXJnaW4gYXV0bztcblxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5oYXMtdGV4dC11cHBlcmNhc2Uge1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uaXMtY29udGVudC1qdXN0aWZpY2F0aW9uIHtcblx0Ji10b3AtY2VudGVyIHtcblx0XHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0fVxuXHQmLXRvcC1sZWZ0IHtcblx0XHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdH1cblx0Ji10b3AtcmlnaHQge1xuXHRcdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdH1cblx0Ji1jZW50ZXItY2VudGVyIHtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHR9XG5cdCYtY2VudGVyLWxlZnQge1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXHR9XG5cdCYtY2VudGVyLXJpZ2h0IHtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdH1cblx0Ji1ib3R0b20tY2VudGVyIHtcblx0XHRhbGlnbi1pdGVtczogZmxleC1lbmQ7XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdH1cblx0Ji1ib3R0b20tbGVmdCB7XG5cdFx0YWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0fVxuXHQmLWJvdHRvbS1yaWdodCB7XG5cdFx0YWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdH1cbn1cbiIsIi5jb250YWluZXIge1xuXHR3aWR0aDogMTAwJTtcblx0cGFkZGluZzogMCByZW0oJGNvbnRhaW5lci1wYWRkaW5nKTtcblx0bWFyZ2luOiAwIGF1dG87XG5cdG1heC13aWR0aDogY2FsYygkY29udGFpbmVyICsgcmVtKCRjb250YWluZXItcGFkZGluZykgKiAyKTtcbn1cblxuLmNvbnRhaW5lci5jb250YWluZXItLWZ1bGwge1xuXHRtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5kLWZsZXgge1xuXHRkaXNwbGF5OiBmbGV4O1xufVxuLnJvdyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtd3JhcDogd3JhcDtcblxuXHRtYXJnaW4tcmlnaHQ6IHJlbSgkY29udGFpbmVyLXBhZGRpbmcgKiAtMSk7XG5cdG1hcmdpbi1sZWZ0OiByZW0oJGNvbnRhaW5lci1wYWRkaW5nICogLTEpO1xuXG5cdCYuanVzdGlmeS1jb250ZW50LWVuZCB7XG5cdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblx0fVxuXHQmLmp1c3RpZnktY29udGVudC1jZW50ZXIge1xuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHR9XG5cdCYuanVzdGlmeS1jb250ZW50LWJldHdlZW4ge1xuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0fVxuXHQmLmp1c3RpZnktY29udGVudC1ldmVubHkge1xuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5O1xuXHR9XG5cdCYuYWxpZ24taXRlbXMtY2VudGVyIHtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHR9XG59XG5cbi5jb2wge1xuXHRmbGV4LWJhc2lzOiAwO1xuXHRmbGV4LWdyb3c6IDE7XG5cdGZsZXgtc2hyaW5rOiAxO1xuXG5cdHBhZGRpbmc6IDAgcmVtKCRjb250YWluZXItcGFkZGluZyk7XG59XG5cbltjbGFzcyo9J2NvbC0nXSB7XG5cdGZsZXgtZ3JvdzogMDtcblx0ZmxleC1zaHJpbms6IDA7XG5cblx0cGFkZGluZzogMCByZW0oJGNvbnRhaW5lci1wYWRkaW5nKTtcbn1cblxuQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAxMiB7XG5cdC5jb2wtI3skaX0ge1xuXHRcdGZsZXgtYmFzaXM6IGNhbGMoJGkgLyAxMikgKiAxMDAlO1xuXG5cdFx0bWF4LXdpZHRoOiBjYWxjKCRpIC8gMTIpICogMTAwJTtcblx0fVxufVxuXG4vLyBUYWJsZXRcbkBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMTIge1xuXHQuY29sLW1kLSN7JGl9IHtcblx0XHRAaW5jbHVkZSBtZWRpYSgnPj1tZCcpIHtcblx0XHRcdGZsZXgtYmFzaXM6IGNhbGMoJGkgLyAxMikgKiAxMDAlO1xuXG5cdFx0XHRtYXgtd2lkdGg6IGNhbGMoJGkgLyAxMikgKiAxMDAlO1xuXHRcdH1cblx0fVxufVxuXG4vLyBTbWFsbCBEZXNrdG9wXG5AZm9yICRpIGZyb20gMSB0aHJvdWdoIDEyIHtcblx0LmNvbC1sZy0jeyRpfSB7XG5cdFx0QGluY2x1ZGUgbWVkaWEoJz49bGcnKSB7XG5cdFx0XHRmbGV4LWJhc2lzOiBjYWxjKCRpIC8gMTIpICogMTAwJTtcblxuXHRcdFx0bWF4LXdpZHRoOiBjYWxjKCRpIC8gMTIpICogMTAwJTtcblx0XHR9XG5cdH1cbn1cblxuLy8gRGVza3RvcFxuQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAxMiB7XG5cdC5jb2wteGwtI3skaX0ge1xuXHRcdEBpbmNsdWRlIG1lZGlhKCc+PXhsJykge1xuXHRcdFx0ZmxleC1iYXNpczogY2FsYygkaSAvIDEyKSAqIDEwMCU7XG5cblx0XHRcdG1heC13aWR0aDogY2FsYygkaSAvIDEyKSAqIDEwMCU7XG5cdFx0fVxuXHR9XG59IiwiI3BhZ2UtbG9hZGVyIHtcblx0ZGlzcGxheTogbm9uZTtcblxuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0ei1pbmRleDogMTAwMDAwMDAwO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cblx0b3BhY2l0eTogMDtcblxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuXG5cdCYudmlzaWJsZSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cblx0XHQucGFnZS1sb2FkZXItLXJlZCB7XG5cdFx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG5cdFx0XHQtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG5cdFx0XHRhbmltYXRpb24tbmFtZTogbG9hZGVyO1xuICBcdFx0XHRhbmltYXRpb24tZHVyYXRpb246IDIuOXM7XG5cdFx0XHRhbmltYXRpb24tZGVsYXk6IDAuM3M7XG5cdFx0fVxuXG5cdFx0LnBhZ2UtbG9hZGVyLS15ZWxsb3cge1xuXHRcdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuXHRcdFx0LW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuXHRcdFx0YW5pbWF0aW9uLW5hbWU6IGxvYWRlcjtcblx0XHRcdGFuaW1hdGlvbi1kdXJhdGlvbjogMi4xcztcblx0XHRcdGFuaW1hdGlvbi1kZWxheTogMC42cztcblx0XHR9XG5cdH1cblxuXHQmLnNob3cge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblxuXHQmLmltYWdlIHtcblx0XHQucGFnZS1sb2FkZXItLWltZyB7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdH1cblx0fVxufVxuXG4ucGFnZS1sb2FkZXIge1xuXHQmLS1pbWcge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuXG4gICAgICAgIHotaW5kZXg6IDA7XG5cblx0XHRvcGFjaXR5OiAwO1xuXG5cdFx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLWluLW91dDtcblxuXHRcdGltZyB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblxuXHRcdFx0b2JqZWN0LWZpdDogY292ZXI7XG5cdFx0fVxuXHR9XG5cblx0Ji0tcmVkIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG5cbiAgICAgICAgei1pbmRleDogMTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItLXByaW1hcnk7XG5cdH1cblxuICAgICYtLXllbGxvdyB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuXG4gICAgICAgIHotaW5kZXg6IDI7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLS1zZWNvbmRhcnk7XG5cdH1cbn1cblxuQGtleWZyYW1lcyBsb2FkZXIge1xuXHQwJSB7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuXHR9XG5cblx0NDAlIHtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuXHR9XG5cblx0NjAlIHtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuXHR9XG5cblx0MTAwJSB7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcblx0fVxufVxuIiwiLmJsb2NrLXNwYWNpbmcge1xuXHQmLS1wdCB7XG5cdFx0cGFkZGluZy10b3A6IHJlbSgkc3BhY2luZy1tb2JpbGUpO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJz49bWQnKSB7XG5cdFx0XHRwYWRkaW5nLXRvcDogJHNwYWNpbmc7XG5cdFx0fVxuXHR9XG5cdCYtLXBiIHtcblx0XHRwYWRkaW5nLWJvdHRvbTogcmVtKCRzcGFjaW5nLW1vYmlsZSk7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgnPj1tZCcpIHtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAkc3BhY2luZztcblx0XHR9XG5cdH1cblx0Ji0tbXQge1xuXHRcdG1hcmdpbi10b3A6IHJlbSgkbWFyZ2luLW1vYmlsZSk7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgnPj1tZCcpIHtcblx0XHRcdG1hcmdpbi10b3A6ICRtYXJnaW47XG5cdFx0fVxuXHR9XG5cdCYtLW1iIHtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0oJG1hcmdpbi1tb2JpbGUpO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJz49bWQnKSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAkbWFyZ2luO1xuXHRcdH1cblx0fVxufVxuIl19 */
