@-webkit-keyframes pulse{0%{transform:scale(1)}3.3%{transform:scale(1.1)}16.5%{transform:scale(1)}33%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes pulse{0%{transform:scale(1)}3.3%{transform:scale(1.1)}16.5%{transform:scale(1)}33%{transform:scale(1.1)}to{transform:scale(1)}}:root{--button__size--font:1.125rem;--button__size--line-height:1.125rem}.button__outline,.button__primary,.button__secondary,.cpt-overview-module.wp-block-button,.cpt-overview-module.wp-block-button.is-style-outline{align-items:center;display:inline-flex;font-family:inherit;line-height:1;background:var(--color__secondary-darker);cursor:pointer;font-family:Saar1450 Text,sans-serif;font-weight:700;font-size:var(--button__size--font);line-height:var(--button__size--line-height);border-radius:1.25rem;padding:.75rem 1.3125rem .75rem .75rem;height:auto}.button__outline[disabled],.button__primary[disabled],.button__secondary[disabled],.cpt-overview-module.wp-block-button.disabled,.cpt-overview-module.wp-block-button.is-style-outline[disabled],.cpt-overview-module.wp-block-button[disabled],.disabled.button__outline,.disabled.button__primary,.disabled.button__secondary,.disabled.cpt-overview-module.wp-block-button.is-style-outline{cursor:default;opacity:.5}.button__outline:not(.has-no-icon):before,.button__primary:not(.has-no-icon):before,.button__secondary:not(.has-no-icon):before,.cpt-overview-module.wp-block-button.is-style-outline:not(.has-no-icon):before,.cpt-overview-module.wp-block-button:not(.has-no-icon):before{content:">";display:inline-block;margin-right:.8125rem}@media (hover:hover){.button__outline:hover,.button__primary:hover,.button__secondary:hover,.cpt-overview-module.wp-block-button.is-style-outline:hover,.cpt-overview-module.wp-block-button:hover{color:var(--color__white);background:var(--color__primary);border-color:var(--color__primary)}}.button__primary{background:var(--color__primary);color:var(--color__white);border-color:var(--color__primary)}@media (hover:hover){.button__primary:not([disabled]):not(.disabled):hover{color:var(--color__white);background:var(--color__secondary);border-color:var(--color__secondary)}}.button__secondary{background:var(--color__secondary);color:var(--color__white);border-color:var(--color__secondary)}@media (hover:hover){.button__secondary:not([disabled]):not(.disabled):hover{color:var(--color__white);background:var(--color__primary);border-color:var(--color__primary)}}.button__outline,.cpt-overview-module.wp-block-button.is-style-outline{color:var(--color__secondary);background:transparent;border-color:var(--color__secondary)}@media (hover:hover){.button__outline:not([disabled]):not(.disabled):hover,.cpt-overview-module.wp-block-button.is-style-outline:not([disabled]):not(.disabled):hover{color:var(--color__white);background:var(--color__secondary);border-color:var(--color__secondary)}}.rahmenprogramm-module__item-content--credit{margin-top:calc(1.25rem*var(--responsive-spaces-fix))}.rahmenprogramm-module__title{margin-bottom:calc(clamp(3.625rem, calc(1.72115rem + 5.28846vw), 5rem)*var(--responsive-spaces-fix))}.rahmenprogramm-module__list{list-style:none;padding:0;margin:0;display:grid;grid-gap:calc(var(--grid__gap)*2) var(--grid__gap);grid-template-columns:1fr}.rahmenprogramm-module__list-item--trigger{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;padding:0;margin:0;width:100%;text-align:left;font:inherit;color:inherit;display:grid;grid-template-columns:1fr;grid-template-areas:"image" "title" "description"}@media (hover:hover){.rahmenprogramm-module__list-item--trigger{cursor:pointer}.rahmenprogramm-module__list-item--trigger:hover .rahmenprogramm-module__list-item--read-more-label{color:var(--color__links--hover)}.rahmenprogramm-module__list-item--trigger:hover .rahmenprogramm-module__list-item--image{transform:scale(1.05)}}.rahmenprogramm-module__list-item--trigger:focus-visible{outline:.125rem solid var(--color__secondary-darker);outline-offset:.25rem}.rahmenprogramm-module__list-item--image-wrapper{grid-area:image;margin-bottom:1.875rem;aspect-ratio:3/2;width:100%;display:flex;align-items:center;justify-content:center;background:var(--color__white);overflow:hidden}.rahmenprogramm-module__list-item--image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform var(--animation__duration) var(--animation__timing-function)}.rahmenprogramm-module__list-item--title{grid-area:title;color:var(--color__primary);margin-bottom:1.875rem}.rahmenprogramm-module__list-item--no-teaser .rahmenprogramm-module__list-item--title{margin-bottom:0}.rahmenprogramm-module__list-item--description{grid-area:description;color:var(--color__primary)}.rahmenprogramm-module__list-item--description p:last-child{margin-bottom:0}.rahmenprogramm-module__list-item--read-more-label{display:block;margin-top:.4375rem;color:var(--color__secondary-darker);font-family:var(--font__heading);transition:color var(--animation__duration) var(--animation__timing-function) 0s}.rahmenprogramm-module__list-item--read-more-label:before{content:"+";margin-right:.375rem}.rahmenprogramm-module__lightbox{display:none;position:fixed;inset:0;z-index:9999;align-items:center;justify-content:center;padding:var(--container-padding);opacity:0;transition:opacity var(--animation__duration) var(--animation__timing-function)}.rahmenprogramm-module__lightbox.is-open{display:flex;opacity:1}.rahmenprogramm-module__lightbox--backdrop{position:absolute;inset:0;background:rgba(0,0,0,.65);border:0;cursor:pointer}.rahmenprogramm-module__lightbox--container{position:relative;display:flex;flex-direction:row;align-items:flex-start;width:100%;max-width:50rem;max-height:90vh}.rahmenprogramm-module__lightbox--dialog{position:relative;flex:1 1 auto;min-height:0;min-width:0;max-height:90vh;background:var(--color__white);width:100%;overflow-y:auto;padding:2.5rem;transform:translateY(1rem);transition:transform var(--animation__duration) var(--animation__timing-function)}.rahmenprogramm-module__lightbox.is-open .rahmenprogramm-module__lightbox--dialog{transform:translateY(0)}.rahmenprogramm-module__lightbox--close{order:1;align-self:flex-start;flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:auto;height:auto;margin-left:.75rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;cursor:pointer;font-size:3.5rem;line-height:1;color:var(--color__white);padding:0;transition:opacity var(--animation__duration) var(--animation__timing-function)}@media (hover:hover){.rahmenprogramm-module__lightbox--close:hover{opacity:.7}}.rahmenprogramm-module__lightbox--close:focus-visible{outline:.125rem solid var(--color__white);outline-offset:.125rem}.rahmenprogramm-module__lightbox--body{color:var(--color__primary)}.rahmenprogramm-module__item-content--figure{margin:0 0 1.5rem}.rahmenprogramm-module__item-content--image{display:block;width:100%;height:auto;aspect-ratio:3/2;-o-object-fit:cover;object-fit:cover}.rahmenprogramm-module__item-content--credit{margin-bottom:0;font-size:.8125rem;color:var(--color__secondary-darker)}.rahmenprogramm-module__item-content--title{color:var(--color__primary);margin-top:0}@media (min-width:48em){.rahmenprogramm-module__list{grid-template-columns:1fr 1fr}}@media (min-width:62em){.rahmenprogramm-module__list{grid-template-columns:1fr 1fr 1fr}}@media (prefers-reduced-motion:reduce){.rahmenprogramm-module__lightbox,.rahmenprogramm-module__lightbox--dialog,.rahmenprogramm-module__list-item--image{transition:none}}body.rahmenprogramm-lightbox-open,html.rahmenprogramm-lightbox-open{overflow:hidden}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3Njc3MvMS10b29scy9hbmltYXRpb24ucHVsc2Uuc2NzcyIsIi4uL3Njc3MvMS10b29scy9wbGFjZWhvbGRlci5idXR0b24uc2NzcyIsIi4uL3Njc3MvMC1zZXR0aW5ncy9mdW5jdGlvbnMuc2NzcyIsInJhaG1lbnByb2dyYW1tL3JhaG1lbnByb2dyYW1tLnNjc3MiLCIuLi9zY3NzLzEtdG9vbHMvcGxhY2Vob2xkZXIuc3BhY2VzLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEseUJBQ0UsR0FDRSxrQkFBbUIsQ0FFckIsS0FDRSxvQkFBcUIsQ0FFdkIsTUFDRSxrQkFBbUIsQ0FFckIsSUFDRSxvQkFBcUIsQ0FFdkIsR0FDRSxrQkFBbUIsQ0FBQSxDQWR2QixpQkFDRSxHQUNFLGtCQUFtQixDQUVyQixLQUNFLG9CQUFxQixDQUV2QixNQUNFLGtCQUFtQixDQUVyQixJQUNFLG9CQUFxQixDQUV2QixHQUNFLGtCQUFtQixDQUFBLENDTnZCLE1BRUksNkJBQXFCLENBQ3JCLG9DQUE0QixDQVFoQyxnSkFFSSxrQkFBbUIsQ0FDbkIsbUJBQW9CLENBQ3BCLG1CQUFvQixDQUNwQixhQUFjLENBQ2QseUNBQTBDLENBQzFDLGNBQWUsQ0FDZixvQ0FBd0MsQ0FDeEMsZUFBZ0IsQ0FDaEIsbUNBQW9DLENBQ3BDLDRDQUE2QyxDQUc3QyxxQkMxQmlFLENENEJqRSxzQ0M1QmlFLENEK0JqRSxXQUFZLENBRVosK1hBRUksY0FBZSxDQUNmLFVBQVksQ0FJWiw2UUFDSSxXQUFZLENBQ1osb0JBQXFCLENBQ3JCLHFCQzNDeUQsQ0QrQ2pFLHFCQUNJLDhLQUNJLHlCQUEwQixDQUMxQixnQ0FBaUMsQ0FDakMsa0NBQW1DLENBQ3RDLENBSVQsaUJBRUksZ0NBQWlDLENBQ2pDLHlCQUEwQixDQUMxQixrQ0FBbUMsQ0FFbkMscUJBRVEsc0RBQ0kseUJBQTBCLENBQzFCLGtDQUFtQyxDQUNuQyxvQ0FBcUMsQ0FDeEMsQ0FLYixtQkFFSSxrQ0FBbUMsQ0FDbkMseUJB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QWlCLENBR25CLDZDQUVFLGVBQWdCLENBQ2hCLGtCQUFvQixDQUNwQixvQ0FBcUMsQ0FHdkMsNENBQ0UsMkJBQTRCLENBQzVCLFlBQWEsQ0FJakIsd0JBOU9BLDZCQWdQSSw2QkFBOEIsQ0FDL0IsQ0FHSCx3QkFwUEEsNkJBc1BJLGlDQUFrQyxDQUNuQyxDQUdILHVDQUNFLG1IQUdFLGVBQWdCLENBQ2pCLENBT0wsb0VBRUUsZUFBZ0IiLCJmaWxlIjoicmFobWVucHJvZ3JhbW0vcmFobWVucHJvZ3JhbW0ubWluLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBrZXlmcmFtZXMgcHVsc2Uge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuICAzLjMlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gIH1cbiAgMTYuNSUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbiAgMzMlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuIiwiQGltcG9ydCBcIi4uLzAtc2V0dGluZ3MvZnVuY3Rpb25zXCI7XG5cbi8qKlxuICogQnV0dG9uIHN0eWxlc1xuICpcbiAqIERlZmluZSBnbG9iYWwgYnV0dG9uIHN0eWxlc1xuICovXG5cbjpyb290e1xuICAgIC8vIC0tYnV0dG9uX19zaXplLS1oZWlnaHQ6IDEuODc1cmVtO1xuICAgIC0tYnV0dG9uX19zaXplLS1mb250OiAje3JlbSgxOCl9O1xuICAgIC0tYnV0dG9uX19zaXplLS1saW5lLWhlaWdodDogI3tyZW0oMTgpfTtcblxuICBAbWVkaWEgKC0tZGVza3RvcCkge1xuICAgIC8vIC0tYnV0dG9uX19zaXplLS1oZWlnaHQ6IDIuNXJlbTtcbiAgICAvLyAtLWJ1dHRvbl9fc2l6ZS0tZm9udDogMS4xMjVyZW07XG4gIH1cbn1cblxuJWJ1dHRvbixcbi5jcHQtb3ZlcnZpZXctbW9kdWxlLndwLWJsb2NrLWJ1dHRvbiB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvcl9fc2Vjb25kYXJ5LWRhcmtlcik7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtZmFtaWx5OiBcIlNhYXIxNDUwIFRleHRcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tYnV0dG9uX19zaXplLS1mb250KTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tYnV0dG9uX19zaXplLS1saW5lLWhlaWdodCk7XG4gICAgLy8gaGVpZ2h0OiB2YXIoLS1idXR0b25fX3NpemUtLWhlaWdodCk7XG4gICAgLy8gYm9yZGVyLXJhZGl1czogMS4yNXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiByZW0oMjApO1xuICAgIC8vIHBhZGRpbmc6IDAuNjI1cmVtIDFyZW07XG4gICAgcGFkZGluZzogcmVtKDEyKSByZW0oMjEpIHJlbSgxMikgcmVtKDEyKTsgXG4gICAgLy8gbWluLXdpZHRoOiAxNC42ODc1cmVtO1xuICAgIC8vIGJvcmRlcjogMC4wNjI1cmVtIHNvbGlkIHZhcigtLWNvbG9yX19zZWNvbmRhcnkpO1xuICAgIGhlaWdodDogYXV0bztcblxuICAgICZbZGlzYWJsZWRdLFxuICAgICYuZGlzYWJsZWR7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgb3BhY2l0eTogMC41O1xuICAgIH1cblxuICAgICY6bm90KC5oYXMtbm8taWNvbil7XG4gICAgICAgICY6OmJlZm9yZXtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICc+JztcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtKDEzKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3JfX3doaXRlKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yX19wcmltYXJ5KTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3JfX3ByaW1hcnkpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4lYnV0dG9uLS1wcmltYXJ5IHtcbiAgICBAZXh0ZW5kICVidXR0b247XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3JfX3ByaW1hcnkpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvcl9fd2hpdGUpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3JfX3ByaW1hcnkpO1xuXG4gICAgQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgICAgICAgJjpub3QoW2Rpc2FibGVkXSk6bm90KC5kaXNhYmxlZCl7XG4gICAgICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvcl9fd2hpdGUpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yX19zZWNvbmRhcnkpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3JfX3NlY29uZGFyeSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiVidXR0b24tLXNlY29uZGFyeSB7XG4gICAgQGV4dGVuZCAlYnV0dG9uO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yX19zZWNvbmRhcnkpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvcl9fd2hpdGUpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3JfX3NlY29uZGFyeSk7XG5cbiAgICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICAgICAgICAmOm5vdChbZGlzYWJsZWRdKTpub3QoLmRpc2FibGVkKXtcbiAgICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yX193aGl0ZSk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3JfX3ByaW1hcnkpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3JfX3ByaW1hcnkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4lYnV0dG9uLS1vdXRsaW5lLFxuLmNwdC1vdmVydmlldy1tb2R1bGUud3AtYmxvY2stYnV0dG9uLmlzLXN0eWxlLW91dGxpbmUge1xuICAgIEBleHRlbmQgJWJ1dHRvbjtcbiAgICBjb2xvcjogdmFyKC0tY29sb3JfX3NlY29uZGFyeSk7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvcl9fc2Vjb25kYXJ5KTtcblxuICAgIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gICAgICAgICY6bm90KFtkaXNhYmxlZF0pOm5vdCguZGlzYWJsZWQpe1xuICAgICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3JfX3doaXRlKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvcl9fc2Vjb25kYXJ5KTtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yX19zZWNvbmRhcnkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4lYnV0dG9uLS1wc2V1ZG8tYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3JfX3NlY29uZGFyeSk7XG5cbiAgICBAbWVkaWEgKGhvdmVyOiBob3Zlcikge1xuICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLmJ1dHRvbntcbiAgICAmX19wcmltYXJ5e1xuICAgICAgICBAZXh0ZW5kICVidXR0b24tLXByaW1hcnk7XG4gICAgfVxuICAgICZfX3NlY29uZGFyeXtcbiAgICAgICAgQGV4dGVuZCAlYnV0dG9uLS1zZWNvbmRhcnk7XG4gICAgfVxuICAgICZfX291dGxpbmV7XG4gICAgICAgIEBleHRlbmQgJWJ1dHRvbi0tb3V0bGluZTtcbiAgICB9XG59IiwiJGh0bWwtZm9udC1zaXplOiAxNnB4O1xuXG5AZnVuY3Rpb24gc3RyaXBVbml0KCR2YWx1ZSkge1xuICAgIEByZXR1cm4gJHZhbHVlIC8gKCR2YWx1ZSAqIDAgKyAxKTtcbn1cblxuQGZ1bmN0aW9uIHJlbSgkcHhWYWx1ZSkge1xuICAgIEByZXR1cm4gI3tzdHJpcFVuaXQoJHB4VmFsdWUpIC8gc3RyaXBVbml0KCRodG1sLWZvbnQtc2l6ZSl9cmVtO1xufVxuXG5AZnVuY3Rpb24gcmVsKCRtaW5Gb250VmFsdWUsICRtYXhGb250VmFsdWUsICRtaW5XaWR0aFZhbHVlLCAkbWF4V2lkdGhWYWx1ZSkge1xuICAgIEByZXR1cm4gKCRtYXhGb250VmFsdWUgLSAkbWluRm9udFZhbHVlKSAvICgkbWF4V2lkdGhWYWx1ZSAtICRtaW5XaWR0aFZhbHVlKTtcbn1cbkBmdW5jdGlvbiBpbnRlcigkbWluRm9udFZhbHVlLCAkbWF4Rm9udFZhbHVlLCAkbWluV2lkdGhWYWx1ZSwgJG1heFdpZHRoVmFsdWUpIHtcbiAgICBAcmV0dXJuICggKC0xICogJG1pbldpZHRoVmFsdWUpICogcmVsKCRtaW5Gb250VmFsdWUsICRtYXhGb250VmFsdWUsICRtaW5XaWR0aFZhbHVlLCAkbWF4V2lkdGhWYWx1ZSkgKyAkbWluRm9udFZhbHVlKSAvICN7c3RyaXBVbml0KCRodG1sLWZvbnQtc2l6ZSl9O1xufVxuQGZ1bmN0aW9uIHByZWZWYWx1ZSgkbWluRm9udFZhbHVlLCAkbWF4Rm9udFZhbHVlLCAkbWluV2lkdGhWYWx1ZSwgJG1heFdpZHRoVmFsdWUpIHtcbiAgICBAcmV0dXJuIGNhbGMoXG4gICAgICAgICN7aW50ZXIoJG1pbkZvbnRWYWx1ZSwgJG1heEZvbnRWYWx1ZSwgJG1pbldpZHRoVmFsdWUsICRtYXhXaWR0aFZhbHVlKX1yZW0gK1xuICAgICAgICAje3JlbCgkbWluRm9udFZhbHVlLCAkbWF4Rm9udFZhbHVlLCAkbWluV2lkdGhWYWx1ZSwgJG1heFdpZHRoVmFsdWUpICogMTAwfXZ3XG4gICAgKTtcbn1cbkBmdW5jdGlvbiBjYWxjQ2xhbXAoJG1pbkZvbnRWYWx1ZSwgJG1heEZvbnRWYWx1ZSwgJG1pbldpZHRoVmFsdWUsICRtYXhXaWR0aFZhbHVlKSB7XG4gICAgQHJldHVybiBjbGFtcCgje3JlbSgkbWluRm9udFZhbHVlKX0sICN7cHJlZlZhbHVlKCRtaW5Gb250VmFsdWUsICRtYXhGb250VmFsdWUsICRtaW5XaWR0aFZhbHVlLCAkbWF4V2lkdGhWYWx1ZSl9LCAje3JlbSgkbWF4Rm9udFZhbHVlKX0pO1xufSIsIkBpbXBvcnQgXCIuLi8uLi9zY3NzLzAtc2V0dGluZ3MvX3ZhcmlhYmxlcy5zY3NzXCI7XG5AaW1wb3J0IFwiLi4vLi4vc2Nzcy8wLXNldHRpbmdzL2N1c3RvbS1tZWRpYS1xdWVyaWVzLnNjc3NcIjtcbkBpbXBvcnQgXCIuLi8uLi9zY3NzLzAtc2V0dGluZ3MvZnVuY3Rpb25zLnNjc3NcIjtcbkBpbXBvcnQgXCIvYnVkZHkvc2FhcmlzLXRlY2hub2xvZ3ktc2FhcmxhbmQvd2ViL2FwcC90aGVtZXMvc2Fhci10ZWNobm9sb2d5L3Jlc291cmNlcy9zY3NzLzEtdG9vbHMvYW5pbWF0aW9uLnB1bHNlLnNjc3NcIjtcbkBpbXBvcnQgXCIvYnVkZHkvc2FhcmlzLXRlY2hub2xvZ3ktc2FhcmxhbmQvd2ViL2FwcC90aGVtZXMvc2Fhci10ZWNobm9sb2d5L3Jlc291cmNlcy9zY3NzLzEtdG9vbHMvbWl4aW4uZmx1aWQtdHlwZS5zY3NzXCI7XG5AaW1wb3J0IFwiL2J1ZGR5L3NhYXJpcy10ZWNobm9sb2d5LXNhYXJsYW5kL3dlYi9hcHAvdGhlbWVzL3NhYXItdGVjaG5vbG9neS9yZXNvdXJjZXMvc2Nzcy8xLXRvb2xzL21peGluLmZvbnQtZmFjZS5zY3NzXCI7XG5AaW1wb3J0IFwiL2J1ZGR5L3NhYXJpcy10ZWNobm9sb2d5LXNhYXJsYW5kL3dlYi9hcHAvdGhlbWVzL3NhYXItdGVjaG5vbG9neS9yZXNvdXJjZXMvc2Nzcy8xLXRvb2xzL21peGluLmZvbnQtd2VpZ2h0LnNjc3NcIjtcbkBpbXBvcnQgXCIvYnVkZHkvc2FhcmlzLXRlY2hub2xvZ3ktc2FhcmxhbmQvd2ViL2FwcC90aGVtZXMvc2Fhci10ZWNobm9sb2d5L3Jlc291cmNlcy9zY3NzLzEtdG9vbHMvcGxhY2Vob2xkZXIuYnV0dG9uLnNjc3NcIjtcbkBpbXBvcnQgXCIvYnVkZHkvc2FhcmlzLXRlY2hub2xvZ3ktc2FhcmxhbmQvd2ViL2FwcC90aGVtZXMvc2Fhci10ZWNobm9sb2d5L3Jlc291cmNlcy9zY3NzLzEtdG9vbHMvcGxhY2Vob2xkZXIuY29udGFpbmVyLnNjc3NcIjtcbkBpbXBvcnQgXCIvYnVkZHkvc2FhcmlzLXRlY2hub2xvZ3ktc2FhcmxhbmQvd2ViL2FwcC90aGVtZXMvc2Fhci10ZWNobm9sb2d5L3Jlc291cmNlcy9zY3NzLzEtdG9vbHMvcGxhY2Vob2xkZXIuY29weS5zY3NzXCI7XG5AaW1wb3J0IFwiL2J1ZGR5L3NhYXJpcy10ZWNobm9sb2d5LXNhYXJsYW5kL3dlYi9hcHAvdGhlbWVzL3NhYXItdGVjaG5vbG9neS9yZXNvdXJjZXMvc2Nzcy8xLXRvb2xzL3BsYWNlaG9sZGVyLmdyaWQuc2Nzc1wiO1xuQGltcG9ydCBcIi9idWRkeS9zYWFyaXMtdGVjaG5vbG9neS1zYWFybGFuZC93ZWIvYXBwL3RoZW1lcy9zYWFyLXRlY2hub2xvZ3kvcmVzb3VyY2VzL3Njc3MvMS10b29scy9wbGFjZWhvbGRlci5oZWFkaW5ncy5zY3NzXCI7XG5AaW1wb3J0IFwiL2J1ZGR5L3NhYXJpcy10ZWNobm9sb2d5LXNhYXJsYW5kL3dlYi9hcHAvdGhlbWVzL3NhYXItdGVjaG5vbG9neS9yZXNvdXJjZXMvc2Nzcy8xLXRvb2xzL3BsYWNlaG9sZGVyLnNwYWNlcy5zY3NzXCI7XG5cbi5yYWhtZW5wcm9ncmFtbS1tb2R1bGUge1xuICAmX190aXRsZSB7XG4gICAgQGV4dGVuZCAlbWFyZ2luX19ib3R0b20tLW1lZGl1bTtcbiAgfSBcblxuICAmX19saXN0IHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1nYXA6IGNhbGMoMiAqIHZhcigtLWdyaWRfX2dhcCkpIHZhcigtLWdyaWRfX2dhcCk7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG5cbiAgICAmLWl0ZW0ge1xuICAgICAgLy8gUmVzZXQgdGhlIGJ1dHRvbiBzbyB0aGUgd2hvbGUgdGlsZSBiZWhhdmVzIGxpa2UgdGhlIGZvcm1lciBDUFQgbGluay5cbiAgICAgICYtLXRyaWdnZXIge1xuICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczpcbiAgICAgICAgICBcImltYWdlXCJcbiAgICAgICAgICBcInRpdGxlXCJcbiAgICAgICAgICBcImRlc2NyaXB0aW9uXCI7IFxuXG4gICAgICAgIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAucmFobWVucHJvZ3JhbW0tbW9kdWxlIHtcbiAgICAgICAgICAgICAgJl9fbGlzdC1pdGVtIHtcbiAgICAgICAgICAgICAgICAmLS1yZWFkLW1vcmUtbGFiZWwge1xuICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yX19saW5rcy0taG92ZXIpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYtLWltYWdlIHtcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgICBvdXRsaW5lOiAwLjEyNXJlbSBzb2xpZCB2YXIoLS1jb2xvcl9fc2Vjb25kYXJ5LWRhcmtlcik7XG4gICAgICAgICAgb3V0bGluZS1vZmZzZXQ6IDAuMjVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0taW1hZ2Utd3JhcHBlciB7XG4gICAgICAgIGdyaWQtYXJlYTogaW1hZ2U7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xuICAgICAgICBhc3BlY3QtcmF0aW86IDMgLyAyO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yX193aGl0ZSk7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB9XG5cbiAgICAgICYtLWltYWdlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS1hbmltYXRpb25fX2R1cmF0aW9uKVxuICAgICAgICAgIHZhcigtLWFuaW1hdGlvbl9fdGltaW5nLWZ1bmN0aW9uKTtcbiAgICAgIH1cblxuICAgICAgJi0tdGl0bGUge1xuICAgICAgICBncmlkLWFyZWE6IHRpdGxlO1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3JfX3ByaW1hcnkpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbiAgICAgIH1cblxuICAgICAgLy8gTm8gdGVhc2VyIHRleHQ6IGRyb3AgdGhlIGhlYWRsaW5lJ3MgYm90dG9tIHNwYWNpbmcgc28gdGhlXG4gICAgICAvLyBcInJlYWQgbW9yZVwiIGxhYmVsIHNpdHMgZGlyZWN0bHkgYmVuZWF0aCB0aGUgdGl0bGUuXG4gICAgICAmLS1uby10ZWFzZXIgJi0tdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuXG4gICAgICAmLS1kZXNjcmlwdGlvbiB7XG4gICAgICAgIGdyaWQtYXJlYTogZGVzY3JpcHRpb247XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvcl9fcHJpbWFyeSk7XG5cbiAgICAgICAgcDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLXJlYWQtbW9yZS1sYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0oNyk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvcl9fc2Vjb25kYXJ5LWRhcmtlcik7XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250X19oZWFkaW5nKTtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tYW5pbWF0aW9uX19kdXJhdGlvbilcbiAgICAgICAgICB2YXIoLS1hbmltYXRpb25fX3RpbWluZy1mdW5jdGlvbikgMHM7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBcIitcIjtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuICAvLyBMaWdodGJveFxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4gICZfX2xpZ2h0Ym94IHtcbiAgICAvLyBGdWxseSByZW1vdmVkIGZyb20gbGF5b3V0IHdoaWxlIGNsb3NlZCBzbyBpdCBjYW4gbmV2ZXIgYWRkIGEgc2Nyb2xsYmFyLlxuICAgIC8vIChBIGNsYXNzIHNlbGVjdG9yIHdvdWxkIG90aGVyd2lzZSBiZWF0IHRoZSBVQSBbaGlkZGVuXSBydWxlLilcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBpbnNldDogMDtcbiAgICB6LWluZGV4OiA5OTk5O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcGFkZGluZzogdmFyKC0tY29udGFpbmVyLXBhZGRpbmcpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS1hbmltYXRpb25fX2R1cmF0aW9uKVxuICAgICAgdmFyKC0tYW5pbWF0aW9uX190aW1pbmctZnVuY3Rpb24pO1xuXG4gICAgJi5pcy1vcGVuIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgICYtLWJhY2tkcm9wIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGluc2V0OiAwO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjY1KTtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAvLyBXcmFwcyB0aGUgY2xvc2UgYnV0dG9uICsgZGlhbG9nIHNvIHRoZSBYIHNpdHMgb3V0c2lkZSAodG8gdGhlIHJpZ2h0XG4gICAgLy8gb2YpIHRoZSBkaWFsb2cgYm94LCBsZXR0aW5nIHRoZSBkaWFsb2cga2VlcCBlcXVhbCBwYWRkaW5nIG9uIGFsbFxuICAgIC8vIHNpZGVzIHdoaWxlIHNhdmluZyB2ZXJ0aWNhbCBzcGFjZSBvbiBzbWFsbCBzY3JlZW5zLlxuICAgICYtLWNvbnRhaW5lciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDUwcmVtO1xuICAgICAgbWF4LWhlaWdodDogOTB2aDtcbiAgICB9XG5cbiAgICAmLS1kaWFsb2cge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgbWF4LWhlaWdodDogOTB2aDtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yX193aGl0ZSk7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICBwYWRkaW5nOiAyLjVyZW07XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMXJlbSk7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tYW5pbWF0aW9uX19kdXJhdGlvbilcbiAgICAgICAgdmFyKC0tYW5pbWF0aW9uX190aW1pbmctZnVuY3Rpb24pO1xuICAgIH1cblxuICAgICYuaXMtb3BlbiAmLS1kaWFsb2cge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cblxuICAgICYtLWNsb3NlIHtcbiAgICAgIC8vIFNpdHMgdG8gdGhlIHJpZ2h0IG9mIHRoZSBkaWFsb2cgYm94LCBzbyBpdCBuZXZlciBvdmVybGFwcyB0aGVcbiAgICAgIC8vIGNvbnRlbnQsIHRoZSBkaWFsb2cga2VlcHMgZXZlbiBwYWRkaW5nIGFsbCBhcm91bmQsIGFuZCBubyB2ZXJ0aWNhbFxuICAgICAgLy8gc3BhY2UgaXMgbG9zdCBhYm92ZSB0aGUgZGlhbG9nIG9uIHNtYWxsIHNjcmVlbnMuXG4gICAgICBvcmRlcjogMTtcbiAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjc1cmVtO1xuICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAvLyBTaXplZCBzbyB0aGUgw5cgZ2x5cGggaXRzZWxmIHJlbmRlcnMgYXQgfjQwcHggdGFsbC5cbiAgICAgIGZvbnQtc2l6ZTogMy41cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3JfX3doaXRlKTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLWFuaW1hdGlvbl9fZHVyYXRpb24pXG4gICAgICAgIHZhcigtLWFuaW1hdGlvbl9fdGltaW5nLWZ1bmN0aW9uKTtcblxuICAgICAgQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgIG91dGxpbmU6IDAuMTI1cmVtIHNvbGlkIHZhcigtLWNvbG9yX193aGl0ZSk7XG4gICAgICAgIG91dGxpbmUtb2Zmc2V0OiAwLjEyNXJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1ib2R5IHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvcl9fcHJpbWFyeSk7XG4gICAgfVxuICB9XG5cbiAgJl9faXRlbS1jb250ZW50IHtcbiAgICAmLS1maWd1cmUge1xuICAgICAgbWFyZ2luOiAwIDAgMS41cmVtO1xuICAgIH1cblxuICAgICYtLWltYWdlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBhc3BlY3QtcmF0aW86IDMgLyAyO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgfVxuXG4gICAgJi0tY3JlZGl0IHtcbiAgICAgIEBleHRlbmQgJW1hcmdpbl9fdG9wLS14eHNtYWxsO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yX19zZWNvbmRhcnktZGFya2VyKTtcbiAgICB9XG5cbiAgICAmLS10aXRsZSB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3JfX3ByaW1hcnkpO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgKC0tdGFibGV0KSB7XG4gICAgJl9fbGlzdCB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhICgtLWRlc2t0b3ApIHtcbiAgICAmX19saXN0IHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAmX19saXN0LWl0ZW0tLWltYWdlLFxuICAgICZfX2xpZ2h0Ym94LFxuICAgICZfX2xpZ2h0Ym94LS1kaWFsb2cge1xuICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLy8gTG9jayBiYWNrZ3JvdW5kIHNjcm9sbCB3aGlsZSBhIGxpZ2h0Ym94IGlzIG9wZW4uIFRoZSB0aGVtZSBzY3JvbGxzIG9uIDxodG1sPixcbi8vIHNvIHRoZSBjbGFzcyBtdXN0IGxvY2sgdGhlIHJvb3QgZWxlbWVudCwgbm90IGp1c3QgPGJvZHk+IOKAlCBvdGhlcndpc2UgdGhlIHBhZ2Vcbi8vIHNjcm9sbGJhciBzdGF5cyBuZXh0IHRvIHRoZSBkaWFsb2cgc2Nyb2xsYmFyIChkb3VibGUgc2Nyb2xsYmFyKS5cbmh0bWwucmFobWVucHJvZ3JhbW0tbGlnaHRib3gtb3BlbixcbmJvZHkucmFobWVucHJvZ3JhbW0tbGlnaHRib3gtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4iLCIkYm94U3BhY2VzOiBtYXJnaW4sIHBhZGRpbmc7XG4kcG9zaXRpb25zOiB0b3AsIHJpZ2h0LCBib3R0b20sIGxlZnQsIGhvcml6b250YWwsIHZlcnRpY2FsO1xuXG5AZWFjaCAkYm94U3BhY2UgaW4gJGJveFNwYWNlcyB7XG4gICAgJSN7JGJveFNwYWNlfXtcbiAgICAgICAgQGVhY2ggJHNwYWNlTmFtZSwgJHNwYWNlVmFsdWUgaW4gJHNwYWNlcyB7XG4gICAgICAgICAgICAmLS0jeyRzcGFjZU5hbWV9e1xuICAgICAgICAgICAgICAgICN7JGJveFNwYWNlfTogY2FsYyggI3skc3BhY2VWYWx1ZX0gKiB2YXIoLS1yZXNwb25zaXZlLXNwYWNlcy1maXgpICk7XG5cbiAgICAgICAgICAgICAgICAmLW5lZ2F0aXZle1xuICAgICAgICAgICAgICAgICAgICAjeyRib3hTcGFjZX06IGNhbGMoIC0xICogI3skc3BhY2VWYWx1ZX0gKiB2YXIoLS1yZXNwb25zaXZlLXNwYWNlcy1maXgpICk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGlmICRhbGxvdy1pbXBvcnRhbnQge1xuICAgICAgICAgICAgICAgICAgICAmXFwhaW1wb3J0YW50e1xuICAgICAgICAgICAgICAgICAgICAgICAgI3skYm94U3BhY2V9OiBjYWxjKCAjeyRzcGFjZVZhbHVlfSAqIHZhcigtLXJlc3BvbnNpdmUtc3BhY2VzLWZpeCkgKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJHBvc2l0aW9uIGluICRwb3NpdGlvbnMge1xuICAgICAgICAgICAgJl9fI3skcG9zaXRpb259e1xuICAgICAgICAgICAgICAgIEBpZiAkcG9zaXRpb24gPT0gaG9yaXpvbnRhbCB7XG4gICAgICAgICAgICAgICAgICAgIEBlYWNoICRzcGFjZU5hbWUsICRzcGFjZVZhbHVlIGluICRzcGFjZXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgJi0tI3skc3BhY2VOYW1lfXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjeyRib3hTcGFjZX0tdG9wOiBjYWxjKCAjeyRzcGFjZVZhbHVlfSAqIHZhcigtLXJlc3BvbnNpdmUtc3BhY2VzLWZpeCkgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjeyRib3hTcGFjZX0tYm90dG9tOiBjYWxjKCAjeyRzcGFjZVZhbHVlfSAqIHZhcigtLXJlc3BvbnNpdmUtc3BhY2VzLWZpeCkgKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYtbmVnYXRpdmV7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICN7JGJveFNwYWNlfS10b3A6IGNhbGMoIC0xICogI3skc3BhY2VWYWx1ZX0gKiB2YXIoLS1yZXNwb25zaXZlLXNwYWNlcy1maXgpICk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICN7JGJveFNwYWNlfS1ib3R0b206IGNhbGMoIC0xICogI3skc3BhY2VWYWx1ZX0gKiB2YXIoLS1yZXNwb25zaXZlLXNwYWNlcy1maXgpICk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmICRhbGxvdy1pbXBvcnRhbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmXFwhaW1wb3J0YW50e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI3skYm94U3BhY2V9LXRvcDogY2FsYyggI3skc3BhY2VWYWx1ZX0gKiB2YXIoLS1yZXNwb25zaXZlLXNwYWNlcy1maXgpICkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICN7JGJveFNwYWNlfS1ib3R0b206IGNhbGMoICN7JHNwYWNlVmFsdWV9ICogdmFyKC0tcmVzcG9uc2l2ZS1zcGFjZXMtZml4KSApICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHZlcnRpY2FsIHtcbiAgICAgICAgICAgICAgICAgICAgQGVhY2ggJHNwYWNlTmFtZSwgJHNwYWNlVmFsdWUgaW4gJHNwYWNlcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmLS0jeyRzcGFjZU5hbWV9e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICN7JGJveFNwYWNlfS1sZWZ0OiBjYWxjKCAjeyRzcGFjZVZhbHVlfSAqIHZhcigtLXJlc3BvbnNpdmUtc3BhY2VzLWZpeCkgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjeyRib3hTcGFjZX0tcmlnaHQ6IGNhbGMoICN7JHNwYWNlVmFsdWV9ICogdmFyKC0tcmVzcG9uc2l2ZS1zcGFjZXMtZml4KSApO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi1uZWdhdGl2ZXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI3skYm94U3BhY2V9LWxlZnQ6IGNhbGMoIC0xICogI3skc3BhY2VWYWx1ZX0gKiB2YXIoLS1yZXNwb25zaXZlLXNwYWNlcy1maXgpICk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICN7JGJveFNwYWNlfS1yaWdodDogY2FsYyggLTEgKiAjeyRzcGFjZVZhbHVlfSAqIHZhcigtLXJlc3BvbnNpdmUtc3BhY2VzLWZpeCkgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgJGFsbG93LWltcG9ydGFudCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZcXCFpbXBvcnRhbnR7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjeyRib3hTcGFjZX0tbGVmdDogY2FsYyggI3skc3BhY2VWYWx1ZX0gKiB2YXIoLS1yZXNwb25zaXZlLXNwYWNlcy1maXgpICkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICN7JGJveFNwYWNlfS1yaWdodDogY2FsYyggI3skc3BhY2VWYWx1ZX0gKiB2YXIoLS1yZXNwb25zaXZlLXNwYWNlcy1maXgpICkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIEBlYWNoICRzcGFjZU5hbWUsICRzcGFjZVZhbHVlIGluICRzcGFjZXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgJi0tI3skc3BhY2VOYW1lfXtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjeyRib3hTcGFjZX0tI3skcG9zaXRpb259OiBjYWxjKCAjeyRzcGFjZVZhbHVlfSAqIHZhcigtLXJlc3BvbnNpdmUtc3BhY2VzLWZpeCkgKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYtbmVnYXRpdmV7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICN7JGJveFNwYWNlfS0jeyRwb3NpdGlvbn06IGNhbGMoIC0xICogI3skc3BhY2VWYWx1ZX0gKiB2YXIoLS1yZXNwb25zaXZlLXNwYWNlcy1maXgpICk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmICRhbGxvdy1pbXBvcnRhbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmXFwhaW1wb3J0YW50e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI3skYm94U3BhY2V9LSN7JHBvc2l0aW9ufTogY2FsYyggI3skc3BhY2VWYWx1ZX0gKiB2YXIoLS1yZXNwb25zaXZlLXNwYWNlcy1maXgpICkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iXX0= */
