:root{--navy:#0e1c31;--navy-mid:#3a475e;--navy-muted:#77849e;--cyan:#00d2ff;--cyan-dim:#47d6ff;--teal:#29fcf3;--surface:#fcf9f8;--surface-low:#f6f3f2;--surface-mid:#eaeaea;--on-surface:#1c1b1b;--on-muted:#44474d;--font-headline:"Manrope",sans-serif;--font-body:"Inter",sans-serif;--radius-sm:0.5rem;--radius-md:1rem;--radius-lg:1.5rem;--radius-xl:2rem;--shadow-tonal:0 4px 40px rgba(0,0,0,.04)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--surface);color:var(--on-surface);font-family:var(--font-body);-webkit-font-smoothing:antialiased;line-height:1.6}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.container{margin-inline:auto;max-width:1280px;padding-inline:clamp(1.5rem,5vw,2.5rem)}.material-symbols-outlined{font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24;vertical-align:middle}.tech-grid{background-image:radial-gradient(circle,#3a475e 1px,transparent 0);background-size:32px 32px;opacity:.15;pointer-events:none}.tonal-shadow{box-shadow:var(--shadow-tonal)}.led-glow{box-shadow:0 0 8px rgba(41,252,243,.5)}.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}.reveal.visible{opacity:1;transform:translateY(0)}.delay-1{transition-delay:.1s}.delay-2{transition-delay:.2s}.delay-3{transition-delay:.3s}.delay-4{transition-delay:.4s}.hover-scale{display:inline-block;transition:transform .2s ease}.hover-scale:hover{transform:scale(1.02)}.hover-scale:active{transform:scale(.98)}.nav{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:hsla(0,0%,100%,.72);box-shadow:var(--shadow-tonal);position:fixed;top:0;width:100%;z-index:50}.nav__inner{align-items:center;display:flex;justify-content:space-between;padding-block:1rem}.nav__logo{color:var(--navy);font-family:var(--font-headline);font-size:1.5rem;font-weight:900;letter-spacing:-.04em}.nav__links{display:flex;gap:2rem;list-style:none}.nav__links a{color:var(--navy-mid);font-family:var(--font-headline);font-weight:700;transition:color .2s}.nav__links a.active,.nav__links a:hover{color:var(--cyan)}.nav__cta{background:var(--cyan);border-radius:var(--radius-sm);color:var(--navy);font-family:var(--font-headline);font-weight:700;padding:.625rem 1.5rem}.nav__toggle{background:none;border:none;color:var(--navy);cursor:pointer;display:none;padding:.5rem}.nav__toggle .material-symbols-outlined{font-size:1.75rem!important}.mobile-menu{inset:0;pointer-events:none;position:fixed;visibility:hidden;z-index:100}.mobile-menu.is-open{pointer-events:auto;visibility:visible}.mobile-menu__overlay{backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:rgba(14,28,49,.4);inset:0;opacity:0;position:absolute;transition:opacity .3s ease}.mobile-menu.is-open .mobile-menu__overlay{opacity:1}.mobile-menu__content{background:var(--surface);bottom:0;box-shadow:-8px 0 32px rgba(0,0,0,.1);display:flex;flex-direction:column;max-width:320px;position:absolute;right:0;top:0;transform:translateX(100%);transition:transform .4s cubic-bezier(.16,1,.3,1);width:85%}.mobile-menu.is-open .mobile-menu__content{transform:translateX(0)}.mobile-menu__header{align-items:center;border-bottom:1px solid var(--surface-mid);display:flex;justify-content:space-between;padding:1.25rem 1.5rem}.mobile-menu__close{background:none;border:none;color:var(--navy-muted);cursor:pointer;margin-right:-.5rem;padding:.5rem}.mobile-menu__links{display:flex;flex-direction:column;gap:1.5rem;list-style:none;padding:1.5rem}.mobile-menu__links a{color:var(--navy);display:block;font-family:var(--font-headline);font-size:1.25rem;font-weight:700;transition:color .2s}.mobile-menu__links a.active,.mobile-menu__links a:hover{color:var(--cyan)}.mobile-menu__footer{border-top:1px solid var(--surface-mid);margin-top:auto;padding:1.5rem}.mobile-menu__footer .btn-primary{display:block;text-align:center;width:100%}@media (max-width:767px){.nav__cta,.nav__links{display:none}.nav__toggle{display:block}}.hero{align-items:center;background:var(--navy);display:flex;min-height:100svh;overflow:hidden;padding-top:5rem;position:relative}.hero__grid-bg{inset:0;position:absolute}.hero__gradient{background:linear-gradient(270deg,rgba(58,71,94,.2),transparent);height:100%;pointer-events:none;position:absolute;right:0;top:0;width:50%}.hero__inner{align-items:center;display:grid;gap:3rem;grid-template-columns:1fr;padding-block:6rem;position:relative}@media (min-width:1024px){.hero__inner{grid-template-columns:7fr 5fr}}.hero__eyebrow{color:var(--cyan);display:block;font-size:.75rem;letter-spacing:.15em;margin-bottom:1.5rem;text-transform:uppercase}.hero__heading{color:#fff;font-family:var(--font-headline);font-size:clamp(2.75rem,7vw,4.5rem);font-weight:800;letter-spacing:-.03em;line-height:1.1;margin-bottom:1.5rem}.hero__heading span{color:var(--cyan)}.hero__body{color:var(--navy-muted);font-size:clamp(1rem,2vw,1.2rem);line-height:1.7;margin-bottom:2.5rem;max-width:36rem}.btn-primary{background:var(--cyan);border-radius:var(--radius-sm);color:var(--navy);font-family:var(--font-headline);font-size:1.125rem;font-weight:700;padding:1rem 2rem}.hero__card-wrap{display:none;justify-content:center}@media (min-width:1024px){.hero__card-wrap{display:flex}}.hero__card{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:rgba(58,71,94,.3);border:1px solid hsla(0,0%,100%,.1);border-radius:var(--radius-xl);padding:2.5rem;position:relative;width:22rem}.hero__card-glow{background:rgba(41,252,243,.08);border-radius:50%;filter:blur(40px);inset:-1.5rem;pointer-events:none;position:absolute;transition:background .4s}.hero__card:hover .hero__card-glow{background:rgba(41,252,243,.16)}.status-list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem}.status-item{align-items:center;background:hsla(0,0%,100%,.05);border-radius:var(--radius-sm);display:flex;gap:.75rem;padding:.75rem 1rem}.status-dot{background:var(--teal);border-radius:50%;flex-shrink:0;height:8px;width:8px}.status-icon{color:var(--cyan);font-size:1.25rem!important}.status-label{color:#fff;font-size:.875rem}.status-footer{color:var(--navy-muted);font-size:.625rem;letter-spacing:.12em;text-align:center;text-transform:uppercase}.about{background:var(--surface);padding-block:6rem}.about__inner{align-items:center;display:grid;gap:4rem;grid-template-columns:1fr}@media (min-width:768px){.about__inner{grid-template-columns:1fr 1fr}}.section-eyebrow{color:var(--cyan-dim);display:block;font-size:.75rem;letter-spacing:.15em;margin-bottom:1rem;text-transform:uppercase}.section-heading{color:var(--navy);font-family:var(--font-headline);font-size:clamp(2rem,4vw,2.75rem);font-weight:800;letter-spacing:-.03em;line-height:1.2;margin-bottom:2rem}.about__body{color:var(--on-muted);display:flex;flex-direction:column;gap:1.25rem;line-height:1.8}.about__body strong{color:var(--navy)}.about__badges{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2.5rem}.badge{align-items:center;background:var(--surface-low);border-radius:var(--radius-md);box-shadow:var(--shadow-tonal);display:flex;gap:.75rem;padding:.75rem 1.25rem}.badge__icon{color:var(--cyan-dim);font-size:1.25rem!important}.badge__title{color:var(--navy);font-family:var(--font-headline);font-size:.875rem;font-weight:700}.badge__sub{color:var(--on-muted);font-size:.75rem}.mission-card{background:var(--surface-low);border-radius:var(--radius-xl);overflow:hidden;padding:2.5rem;position:relative}.mission-card__bg-icon{color:var(--navy-mid);font-size:6rem!important;opacity:.1;position:absolute;right:1rem;top:1rem}.mission-card__icon-wrap{align-items:center;background:var(--navy);border-radius:var(--radius-md);box-shadow:0 8px 24px rgba(0,0,0,.15);display:flex;height:4rem;justify-content:center;margin-bottom:2rem;width:4rem}.mission-card__icon-wrap .material-symbols-outlined{color:var(--teal);font-size:2rem!important}.mission-card__heading{color:var(--navy);font-family:var(--font-headline);font-size:1.5rem;font-weight:700;margin-bottom:.75rem}.mission-card__body{color:var(--on-muted);line-height:1.8;margin-bottom:1.5rem}.checklist{display:flex;flex-direction:column;gap:.75rem;list-style:none}.checklist li{align-items:flex-start;color:var(--on-muted);display:flex;font-size:.875rem;gap:.75rem}.checklist .material-symbols-outlined{color:var(--cyan);flex-shrink:0;font-size:1rem!important;margin-top:2px}.services{background:var(--surface-low);padding-block:6rem}.section-intro{margin-bottom:5rem;text-align:center}.section-intro p{color:var(--on-muted);margin-inline:auto;max-width:40rem}.services__grid{display:grid;gap:1.25rem;grid-template-columns:1fr}@media (min-width:600px){.services__grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.services__grid{grid-template-columns:repeat(4,1fr)}}.service-card{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-tonal);padding:2rem;transition:transform .3s ease}.service-card:hover{transform:scale(1.02)}.service-card>.material-symbols-outlined{color:var(--navy-mid);display:block;font-size:2rem!important;margin-bottom:1.25rem;transition:color .2s}.service-card:hover>.material-symbols-outlined{color:var(--cyan)}.service-card h3{color:var(--navy);font-family:var(--font-headline);font-size:.9375rem;font-weight:700;margin-bottom:.5rem}.service-card p{color:var(--on-muted);font-size:.875rem;line-height:1.7}.service-card--featured{background:var(--navy);overflow:hidden;position:relative}.service-card--featured .tech-grid{inset:0;opacity:.25;position:absolute}.service-card--featured .card-content{position:relative;z-index:1}.service-card--featured .card-content .material-symbols-outlined{color:var(--teal)!important;display:block;font-size:2rem!important;margin-bottom:1.25rem}.service-card--featured h3{color:#fff;font-family:var(--font-headline);font-size:.9375rem;font-weight:700;margin-bottom:.5rem}.service-card--featured p{color:var(--navy-muted);font-size:.875rem;line-height:1.7}.projects{background:var(--surface);padding-block:6rem}.projects__grid{display:grid;gap:1.5rem;grid-template-columns:1fr}@media (min-width:768px){.projects__grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.projects__grid{grid-template-columns:repeat(3,1fr)}}.project-card{background:var(--surface-low);border-radius:var(--radius-lg);box-shadow:var(--shadow-tonal);display:flex;flex-direction:column;overflow:hidden;transition:transform .3s ease}.project-card:hover{transform:scale(1.02)}.project-card__image{align-items:center;background-color:var(--surface-mid);display:flex;height:14rem;justify-content:center}.project-card__image .material-symbols-outlined{color:var(--navy-muted);font-size:3.5rem!important;opacity:.4}.project-card__content{display:flex;flex:1;flex-direction:column;padding:1.5rem}.project-card__title{color:var(--navy);font-family:var(--font-headline);font-size:1.125rem;font-weight:700;margin-bottom:.5rem}.project-card__desc{color:var(--on-muted);flex:1;font-size:.875rem;line-height:1.7;margin-bottom:1.5rem}.project-card__location{align-items:center;align-self:flex-start;background:var(--surface);border-radius:var(--radius-md);box-shadow:0 2px 12px rgba(0,0,0,.03);display:inline-flex;gap:.5rem;padding:.5rem 1rem}.project-card__location .badge__icon{color:var(--cyan-dim);font-size:1.25rem!important}.project-card__location .badge__title{color:var(--navy);font-family:var(--font-headline);font-size:.8125rem;font-weight:700}.cta{background:var(--navy);overflow:hidden;padding-block:7rem;position:relative;text-align:center}.cta__grid-bg{inset:0;position:absolute}.cta__fade{background:linear-gradient(0deg,rgba(0,0,0,.2),transparent);bottom:0;height:50%;left:0;pointer-events:none;position:absolute;width:100%}.cta__inner{margin-inline:auto;max-width:48rem;position:relative}.cta__eyebrow{color:var(--cyan);display:block;font-size:.75rem;letter-spacing:.15em;margin-bottom:1.5rem;text-transform:uppercase}.cta__heading{color:#fff;font-family:var(--font-headline);font-size:clamp(2rem,5vw,3.25rem);font-weight:800;letter-spacing:-.03em;line-height:1.15;margin-bottom:1.5rem}.cta__body{color:var(--navy-muted);font-size:1.125rem;line-height:1.8;margin-bottom:3rem}.btn-cta{background:var(--cyan);border-radius:var(--radius-sm);box-shadow:0 8px 32px rgba(0,210,255,.2);color:var(--navy);font-family:var(--font-headline);font-size:1.25rem;font-weight:700;padding:1.25rem 2.5rem}.footer{background:var(--surface);border-top:1px solid var(--surface-mid)}.footer__main{display:grid;gap:2.5rem;grid-template-columns:1fr;padding-block:4rem}@media (min-width:768px){.footer__main{grid-template-columns:repeat(3,1fr)}}.footer__brand-name{color:var(--navy);font-family:var(--font-headline);font-size:1.25rem;font-weight:900;letter-spacing:-.04em;margin-bottom:1rem;text-transform:uppercase}.footer__brand-text{color:var(--on-muted);font-size:.875rem;line-height:1.8;margin-bottom:1rem}.systems-chip{align-items:center;background:var(--surface-low);border-radius:9999px;display:inline-flex;gap:.5rem;padding:.375rem .75rem}.systems-dot{background:var(--teal);border-radius:50%;flex-shrink:0;height:8px;width:8px}.systems-label{font-size:.625rem;letter-spacing:.1em}.footer__col-heading,.systems-label{color:var(--navy);font-weight:700;text-transform:uppercase}.footer__col-heading{font-family:var(--font-headline);font-size:.8125rem;letter-spacing:.12em;margin-bottom:1.5rem}.footer__links{display:flex;flex-direction:column;gap:.75rem}.footer__links a{align-items:center;color:var(--on-muted);display:flex;font-size:.875rem;gap:.5rem;transition:color .2s}.footer__links a:hover{color:var(--cyan)}.footer__links .material-symbols-outlined{font-size:1rem!important}.footer__bottom{border-top:1px solid var(--surface-mid);padding-block:1.5rem;text-align:center}.footer__copyright{color:var(--on-muted);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.floating-chat{align-items:center;background:#00b2ff;border-radius:50%;bottom:1.5rem;box-shadow:0 4px 12px rgba(0,178,255,.4);color:#fff;display:flex;height:3.5rem;justify-content:center;position:fixed;right:1.5rem;transition:transform .3s cubic-bezier(.175,.885,.32,1.275);width:3.5rem;z-index:40}.floating-chat:hover{transform:scale(1.1)}.floating-chat svg{fill:currentColor;height:1.75rem;width:1.75rem}
/*# sourceMappingURL=data:application/json;base64,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RHRCLHdCQUVGLENBS0EsZUFVRSxrQkFBbUIsQ0FKbkIsa0JBQW1CLENBRW5CLGlCQUFrQixDQU5sQixhQUFjLENBVWQsd0NBQTZDLENBTDdDLFVBQVcsQ0FFWCxZQUFhLENBSmIsYUFBYyxDQU1kLHNCQUF1QixDQVZ2QixjQUFlLENBRWYsWUFBYSxDQVdiLDBEQUFrRSxDQVZsRSxZQUFhLENBU2IsVUFFRixDQUVBLHFCQUNFLG9CQUNGLENBRUEsbUJBR0UsaUJBQWtCLENBRGxCLGNBQWUsQ0FEZixhQUdGIiwiZmlsZSI6InN0eWxlcy5taW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiICAgIC8qIOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkFxuICAgREVTSUdOIFRPS0VOU1xu4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQICovXG4gICAgOnJvb3Qge1xuICAgICAgLS1uYXZ5OiAjMEUxQzMxO1xuICAgICAgLS1uYXZ5LW1pZDogIzNBNDc1RTtcbiAgICAgIC0tbmF2eS1tdXRlZDogIzc3ODQ5RTtcbiAgICAgIC0tY3lhbjogIzAwRDJGRjtcbiAgICAgIC0tY3lhbi1kaW06ICM0N0Q2RkY7XG4gICAgICAtLXRlYWw6ICMyOUZDRjM7XG4gICAgICAtLXN1cmZhY2U6ICNGQ0Y5Rjg7XG4gICAgICAtLXN1cmZhY2UtbG93OiAjRjZGM0YyO1xuICAgICAgLS1zdXJmYWNlLW1pZDogI0VBRUFFQTtcbiAgICAgIC0tb24tc3VyZmFjZTogIzFDMUIxQjtcbiAgICAgIC0tb24tbXV0ZWQ6ICM0NDQ3NEQ7XG5cbiAgICAgIC0tZm9udC1oZWFkbGluZTogJ01hbnJvcGUnLCBzYW5zLXNlcmlmO1xuICAgICAgLS1mb250LWJvZHk6ICdJbnRlcicsIHNhbnMtc2VyaWY7XG5cbiAgICAgIC0tcmFkaXVzLXNtOiAwLjVyZW07XG4gICAgICAtLXJhZGl1cy1tZDogMXJlbTtcbiAgICAgIC0tcmFkaXVzLWxnOiAxLjVyZW07XG4gICAgICAtLXJhZGl1cy14bDogMnJlbTtcbiAgICAgIC0tc2hhZG93LXRvbmFsOiAwIDRweCA0MHB4IHJnYmEoMCwgMCwgMCwgMC4wNCk7XG4gICAgfVxuXG4gICAgLyog4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQXG4gICBSRVNFVCAmIEJBU0VcbuKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkCAqL1xuICAgICosXG4gICAgKjo6YmVmb3JlLFxuICAgICo6OmFmdGVyIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIGh0bWwge1xuICAgICAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG4gICAgfVxuXG4gICAgYm9keSB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zdXJmYWNlKTtcbiAgICAgIGNvbG9yOiB2YXIoLS1vbi1zdXJmYWNlKTtcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWJvZHkpO1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgIH1cblxuICAgIGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC8qIOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkFxuICAgVVRJTElUSUVTXG7ilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZAgKi9cbiAgICAuY29udGFpbmVyIHtcbiAgICAgIG1heC13aWR0aDogMTI4MHB4O1xuICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICAgIHBhZGRpbmctaW5saW5lOiBjbGFtcCgxLjVyZW0sIDV2dywgMi41cmVtKTtcbiAgICB9XG5cbiAgICAubWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCB7XG4gICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ0ZJTEwnIDAsICd3Z2h0JyA0MDAsICdHUkFEJyAwLCAnb3BzeicgMjQ7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC50ZWNoLWdyaWQge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgIzNBNDc1RSAxcHgsIHRyYW5zcGFyZW50IDFweCk7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDMycHggMzJweDtcbiAgICAgIG9wYWNpdHk6IDAuMTU7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG5cbiAgICAudG9uYWwtc2hhZG93IHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy10b25hbCk7XG4gICAgfVxuXG4gICAgLmxlZC1nbG93IHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCA4cHggcmdiYSg0MSwgMjUyLCAyNDMsIDAuNSk7XG4gICAgfVxuXG4gICAgLyogU2Nyb2xsIHJldmVhbCAqL1xuICAgIC5yZXZlYWwge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNHB4KTtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC42cyBlYXNlLCB0cmFuc2Zvcm0gMC42cyBlYXNlO1xuICAgIH1cblxuICAgIC5yZXZlYWwudmlzaWJsZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cblxuICAgIC5kZWxheS0xIHtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG4gICAgfVxuXG4gICAgLmRlbGF5LTIge1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4ycztcbiAgICB9XG5cbiAgICAuZGVsYXktMyB7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjNzO1xuICAgIH1cblxuICAgIC5kZWxheS00IHtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuNHM7XG4gICAgfVxuXG4gICAgLyogSG92ZXIgc2NhbGUgKi9cbiAgICAuaG92ZXItc2NhbGUge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAuaG92ZXItc2NhbGU6aG92ZXIge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAyKTtcbiAgICB9XG5cbiAgICAuaG92ZXItc2NhbGU6YWN0aXZlIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC45OCk7XG4gICAgfVxuXG4gICAgLyog4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQXG4gICBOQVZcbuKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkCAqL1xuICAgIC5uYXYge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB6LWluZGV4OiA1MDtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43Mik7XG4gICAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTZweCk7XG4gICAgICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxNnB4KTtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy10b25hbCk7XG4gICAgfVxuXG4gICAgLm5hdl9faW5uZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBwYWRkaW5nLWJsb2NrOiAxcmVtO1xuICAgIH1cblxuICAgIC5uYXZfX2xvZ28ge1xuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGxpbmUpO1xuICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgY29sb3I6IHZhcigtLW5hdnkpO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA0ZW07XG4gICAgfVxuXG4gICAgLm5hdl9fbGlua3Mge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGdhcDogMnJlbTtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgfVxuXG4gICAgLm5hdl9fbGlua3MgYSB7XG4gICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1oZWFkbGluZSk7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgY29sb3I6IHZhcigtLW5hdnktbWlkKTtcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMnM7XG4gICAgfVxuXG4gICAgLm5hdl9fbGlua3MgYTpob3ZlcixcbiAgICAubmF2X19saW5rcyBhLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogdmFyKC0tY3lhbik7XG4gICAgfVxuXG4gICAgLm5hdl9fY3RhIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWN5YW4pO1xuICAgICAgY29sb3I6IHZhcigtLW5hdnkpO1xuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGxpbmUpO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIHBhZGRpbmc6IDAuNjI1cmVtIDEuNXJlbTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSk7XG4gICAgfVxuXG4gICAgLm5hdl9fdG9nZ2xlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgY29sb3I6IHZhcigtLW5hdnkpO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgIH1cblxuICAgIC5uYXZfX3RvZ2dsZSAubWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCB7XG4gICAgICBmb250LXNpemU6IDEuNzVyZW0gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAubW9iaWxlLW1lbnUge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgaW5zZXQ6IDA7XG4gICAgICB6LWluZGV4OiAxMDA7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAubW9iaWxlLW1lbnUuaXMtb3BlbiB7XG4gICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLm1vYmlsZS1tZW51X19vdmVybGF5IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGluc2V0OiAwO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgxNCwgMjgsIDQ5LCAwLjQpO1xuICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDRweCk7XG4gICAgICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cig0cHgpO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlO1xuICAgIH1cblxuICAgIC5tb2JpbGUtbWVudS5pcy1vcGVuIC5tb2JpbGUtbWVudV9fb3ZlcmxheSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgIC5tb2JpbGUtbWVudV9fY29udGVudCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiA4NSU7XG4gICAgICBtYXgtd2lkdGg6IDMyMHB4O1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tc3VyZmFjZSk7XG4gICAgICBib3gtc2hhZG93OiAtOHB4IDAgMzJweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC40cyBjdWJpYy1iZXppZXIoMC4xNiwgMSwgMC4zLCAxKTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cblxuICAgIC5tb2JpbGUtbWVudS5pcy1vcGVuIC5tb2JpbGUtbWVudV9fY29udGVudCB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgfVxuXG4gICAgLm1vYmlsZS1tZW51X19oZWFkZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBwYWRkaW5nOiAxLjI1cmVtIDEuNXJlbTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1zdXJmYWNlLW1pZCk7XG4gICAgfVxuXG4gICAgLm1vYmlsZS1tZW51X19jbG9zZSB7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgY29sb3I6IHZhcigtLW5hdnktbXV0ZWQpO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC41cmVtO1xuICAgIH1cblxuICAgIC5tb2JpbGUtbWVudV9fbGlua3Mge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDEuNXJlbTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgZ2FwOiAxLjVyZW07XG4gICAgfVxuXG4gICAgLm1vYmlsZS1tZW51X19saW5rcyBhIHtcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWhlYWRsaW5lKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICBjb2xvcjogdmFyKC0tbmF2eSk7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMnM7XG4gICAgfVxuXG4gICAgLm1vYmlsZS1tZW51X19saW5rcyBhOmhvdmVyLFxuICAgIC5tb2JpbGUtbWVudV9fbGlua3MgYS5hY3RpdmUge1xuICAgICAgY29sb3I6IHZhcigtLWN5YW4pO1xuICAgIH1cblxuICAgIC5tb2JpbGUtbWVudV9fZm9vdGVyIHtcbiAgICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tc3VyZmFjZS1taWQpO1xuICAgIH1cblxuICAgIC5tb2JpbGUtbWVudV9fZm9vdGVyIC5idG4tcHJpbWFyeSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLm5hdl9fbGlua3Mge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAubmF2X19jdGEge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAubmF2X190b2dnbGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKiDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZBcbiAgIEhFUk9cbuKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkCAqL1xuICAgIC5oZXJvIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMHN2aDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgcGFkZGluZy10b3A6IDVyZW07XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tbmF2eSk7XG4gICAgfVxuXG4gICAgLmhlcm9fX2dyaWQtYmcge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaW5zZXQ6IDA7XG4gICAgfVxuXG4gICAgLmhlcm9fX2dyYWRpZW50IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCByZ2JhKDU4LCA3MSwgOTQsIDAuMiksIHRyYW5zcGFyZW50KTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgIC5oZXJvX19pbm5lciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICBnYXA6IDNyZW07XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgcGFkZGluZy1ibG9jazogNnJlbTtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuaGVyb19faW5uZXIge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDdmciA1ZnI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhlcm9fX2V5ZWJyb3cge1xuICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMTVlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBjb2xvcjogdmFyKC0tY3lhbik7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICB9XG5cbiAgICAuaGVyb19faGVhZGluZyB7XG4gICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1oZWFkbGluZSk7XG4gICAgICBmb250LXNpemU6IGNsYW1wKDIuNzVyZW0sIDd2dywgNC41cmVtKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICB9XG5cbiAgICAuaGVyb19faGVhZGluZyBzcGFuIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jeWFuKTtcbiAgICB9XG5cbiAgICAuaGVyb19fYm9keSB7XG4gICAgICBjb2xvcjogdmFyKC0tbmF2eS1tdXRlZCk7XG4gICAgICBmb250LXNpemU6IGNsYW1wKDFyZW0sIDJ2dywgMS4ycmVtKTtcbiAgICAgIG1heC13aWR0aDogMzZyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS43O1xuICAgIH1cblxuICAgIC5idG4tcHJpbWFyeSB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jeWFuKTtcbiAgICAgIGNvbG9yOiB2YXIoLS1uYXZ5KTtcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWhlYWRsaW5lKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgcGFkZGluZzogMXJlbSAycmVtO1xuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXNtKTtcbiAgICB9XG5cbiAgICAvKiBIZXJvIHN0YXR1cyBjYXJkICovXG4gICAgLmhlcm9fX2NhcmQtd3JhcCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLmhlcm9fX2NhcmQtd3JhcCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhlcm9fX2NhcmQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSg1OCwgNzEsIDk0LCAwLjMwKTtcbiAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMnB4KTtcbiAgICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEycHgpO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEwKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy14bCk7XG4gICAgICBwYWRkaW5nOiAyLjVyZW07XG4gICAgICB3aWR0aDogMjJyZW07XG4gICAgfVxuXG4gICAgLmhlcm9fX2NhcmQtZ2xvdyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBpbnNldDogLTEuNXJlbTtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoNDEsIDI1MiwgMjQzLCAwLjA4KTtcbiAgICAgIGZpbHRlcjogYmx1cig0MHB4KTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjRzO1xuICAgIH1cblxuICAgIC5oZXJvX19jYXJkOmhvdmVyIC5oZXJvX19jYXJkLWdsb3cge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSg0MSwgMjUyLCAyNDMsIDAuMTYpO1xuICAgIH1cblxuICAgIC5zdGF0dXMtbGlzdCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGdhcDogMC43NXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgfVxuXG4gICAgLnN0YXR1cy1pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZ2FwOiAwLjc1cmVtO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSk7XG4gICAgICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gICAgfVxuXG4gICAgLnN0YXR1cy1kb3Qge1xuICAgICAgd2lkdGg6IDhweDtcbiAgICAgIGhlaWdodDogOHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tdGVhbCk7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICB9XG5cbiAgICAuc3RhdHVzLWljb24ge1xuICAgICAgY29sb3I6IHZhcigtLWN5YW4pO1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnN0YXR1cy1sYWJlbCB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgfVxuXG4gICAgLnN0YXR1cy1mb290ZXIge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZm9udC1zaXplOiAwLjYyNXJlbTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjEyZW07XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgY29sb3I6IHZhcigtLW5hdnktbXV0ZWQpO1xuICAgIH1cblxuICAgIC8qIOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkFxuICAgQUJPVVRcbuKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkCAqL1xuICAgIC5hYm91dCB7XG4gICAgICBwYWRkaW5nLWJsb2NrOiA2cmVtO1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tc3VyZmFjZSk7XG4gICAgfVxuXG4gICAgLmFib3V0X19pbm5lciB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICBnYXA6IDRyZW07XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLmFib3V0X19pbm5lciB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VjdGlvbi1leWVicm93IHtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjE1ZW07XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgY29sb3I6IHZhcigtLWN5YW4tZGltKTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG5cbiAgICAuc2VjdGlvbi1oZWFkaW5nIHtcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWhlYWRsaW5lKTtcbiAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMnJlbSwgNHZ3LCAyLjc1cmVtKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICBjb2xvcjogdmFyKC0tbmF2eSk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIH1cblxuICAgIC5hYm91dF9fYm9keSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGdhcDogMS4yNXJlbTtcbiAgICAgIGNvbG9yOiB2YXIoLS1vbi1tdXRlZCk7XG4gICAgICBsaW5lLWhlaWdodDogMS44O1xuICAgIH1cblxuICAgIC5hYm91dF9fYm9keSBzdHJvbmcge1xuICAgICAgY29sb3I6IHZhcigtLW5hdnkpO1xuICAgIH1cblxuICAgIC5hYm91dF9fYmFkZ2VzIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBnYXA6IDFyZW07XG4gICAgICBtYXJnaW4tdG9wOiAyLjVyZW07XG4gICAgfVxuXG4gICAgLmJhZGdlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZ2FwOiAwLjc1cmVtO1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tc3VyZmFjZS1sb3cpO1xuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW1kKTtcbiAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMS4yNXJlbTtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy10b25hbCk7XG4gICAgfVxuXG4gICAgLmJhZGdlX19pY29uIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jeWFuLWRpbSk7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW0gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuYmFkZ2VfX3RpdGxlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWhlYWRsaW5lKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogdmFyKC0tbmF2eSk7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIH1cblxuICAgIC5iYWRnZV9fc3ViIHtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgIGNvbG9yOiB2YXIoLS1vbi1tdXRlZCk7XG4gICAgfVxuXG4gICAgLm1pc3Npb24tY2FyZCB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zdXJmYWNlLWxvdyk7XG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMteGwpO1xuICAgICAgcGFkZGluZzogMi41cmVtO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAubWlzc2lvbi1jYXJkX19iZy1pY29uIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMXJlbTtcbiAgICAgIHJpZ2h0OiAxcmVtO1xuICAgICAgZm9udC1zaXplOiA2cmVtICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogdmFyKC0tbmF2eS1taWQpO1xuICAgICAgb3BhY2l0eTogMC4xO1xuICAgIH1cblxuICAgIC5taXNzaW9uLWNhcmRfX2ljb24td3JhcCB7XG4gICAgICB3aWR0aDogNHJlbTtcbiAgICAgIGhlaWdodDogNHJlbTtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLW5hdnkpO1xuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW1kKTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgYm94LXNoYWRvdzogMCA4cHggMjRweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgIH1cblxuICAgIC5taXNzaW9uLWNhcmRfX2ljb24td3JhcCAubWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCB7XG4gICAgICBjb2xvcjogdmFyKC0tdGVhbCk7XG4gICAgICBmb250LXNpemU6IDJyZW0gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAubWlzc2lvbi1jYXJkX19oZWFkaW5nIHtcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWhlYWRsaW5lKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIGNvbG9yOiB2YXIoLS1uYXZ5KTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gICAgfVxuXG4gICAgLm1pc3Npb24tY2FyZF9fYm9keSB7XG4gICAgICBjb2xvcjogdmFyKC0tb24tbXV0ZWQpO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuODtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICB9XG5cbiAgICAuY2hlY2tsaXN0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgZ2FwOiAwLjc1cmVtO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG5cbiAgICAuY2hlY2tsaXN0IGxpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIGdhcDogMC43NXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBjb2xvcjogdmFyKC0tb24tbXV0ZWQpO1xuICAgIH1cblxuICAgIC5jaGVja2xpc3QgLm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQge1xuICAgICAgY29sb3I6IHZhcigtLWN5YW4pO1xuICAgICAgZm9udC1zaXplOiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICB9XG5cbiAgICAvKiDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZBcbiAgIFNFUlZJQ0VTXG7ilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZAgKi9cbiAgICAuc2VydmljZXMge1xuICAgICAgcGFkZGluZy1ibG9jazogNnJlbTtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLXN1cmZhY2UtbG93KTtcbiAgICB9XG5cbiAgICAuc2VjdGlvbi1pbnRybyB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cmVtO1xuICAgIH1cblxuICAgIC5zZWN0aW9uLWludHJvIHAge1xuICAgICAgY29sb3I6IHZhcigtLW9uLW11dGVkKTtcbiAgICAgIG1heC13aWR0aDogNDByZW07XG4gICAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgIH1cblxuICAgIC5zZXJ2aWNlc19fZ3JpZCB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICBnYXA6IDEuMjVyZW07XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XG4gICAgICAuc2VydmljZXNfX2dyaWQge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5zZXJ2aWNlc19fZ3JpZCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNlcnZpY2UtY2FyZCB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zdXJmYWNlKTtcbiAgICAgIHBhZGRpbmc6IDJyZW07XG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbGcpO1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LXRvbmFsKTtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XG4gICAgfVxuXG4gICAgLnNlcnZpY2UtY2FyZDpob3ZlciB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDIpO1xuICAgIH1cblxuICAgIC5zZXJ2aWNlLWNhcmQ+Lm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQge1xuICAgICAgZm9udC1zaXplOiAycmVtICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogdmFyKC0tbmF2eS1taWQpO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4ycztcbiAgICB9XG5cbiAgICAuc2VydmljZS1jYXJkOmhvdmVyPi5tYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jeWFuKTtcbiAgICB9XG5cbiAgICAuc2VydmljZS1jYXJkIGgzIHtcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWhlYWRsaW5lKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICAgIGNvbG9yOiB2YXIoLS1uYXZ5KTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICB9XG5cbiAgICAuc2VydmljZS1jYXJkIHAge1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIGNvbG9yOiB2YXIoLS1vbi1tdXRlZCk7XG4gICAgICBsaW5lLWhlaWdodDogMS43O1xuICAgIH1cblxuICAgIC5zZXJ2aWNlLWNhcmQtLWZlYXR1cmVkIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLW5hdnkpO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuc2VydmljZS1jYXJkLS1mZWF0dXJlZCAudGVjaC1ncmlkIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGluc2V0OiAwO1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICB9XG5cbiAgICAuc2VydmljZS1jYXJkLS1mZWF0dXJlZCAuY2FyZC1jb250ZW50IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuXG4gICAgLnNlcnZpY2UtY2FyZC0tZmVhdHVyZWQgLmNhcmQtY29udGVudCAubWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCB7XG4gICAgICBjb2xvcjogdmFyKC0tdGVhbCkgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbSAhaW1wb3J0YW50O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICAgIH1cblxuICAgIC5zZXJ2aWNlLWNhcmQtLWZlYXR1cmVkIGgzIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGxpbmUpO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgIH1cblxuICAgIC5zZXJ2aWNlLWNhcmQtLWZlYXR1cmVkIHAge1xuICAgICAgY29sb3I6IHZhcigtLW5hdnktbXV0ZWQpO1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjc7XG4gICAgfVxuXG4gICAgLyog4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQXG4gICBQUk9KRUNUIEdBTExFUllcbuKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkCAqL1xuICAgIC5wcm9qZWN0cyB7XG4gICAgICBwYWRkaW5nLWJsb2NrOiA2cmVtO1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tc3VyZmFjZSk7XG4gICAgfVxuXG4gICAgLnByb2plY3RzX19ncmlkIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgIGdhcDogMS41cmVtO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLnByb2plY3RzX19ncmlkIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAucHJvamVjdHNfX2dyaWQge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9qZWN0LWNhcmQge1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tc3VyZmFjZS1sb3cpO1xuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWxnKTtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy10b25hbCk7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cblxuICAgIC5wcm9qZWN0LWNhcmQ6aG92ZXIge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAyKTtcbiAgICB9XG5cbiAgICAucHJvamVjdC1jYXJkX19pbWFnZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zdXJmYWNlLW1pZCk7XG4gICAgICBoZWlnaHQ6IDE0cmVtO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAucHJvamVjdC1jYXJkX19pbWFnZSAubWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCB7XG4gICAgICBmb250LXNpemU6IDMuNXJlbSAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6IHZhcigtLW5hdnktbXV0ZWQpO1xuICAgICAgb3BhY2l0eTogMC40O1xuICAgIH1cblxuICAgIC5wcm9qZWN0LWNhcmRfX2NvbnRlbnQge1xuICAgICAgcGFkZGluZzogMS41cmVtO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBmbGV4OiAxO1xuICAgIH1cblxuICAgIC5wcm9qZWN0LWNhcmRfX3RpdGxlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWhlYWRsaW5lKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgY29sb3I6IHZhcigtLW5hdnkpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgIH1cblxuICAgIC5wcm9qZWN0LWNhcmRfX2Rlc2Mge1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIGNvbG9yOiB2YXIoLS1vbi1tdXRlZCk7XG4gICAgICBsaW5lLWhlaWdodDogMS43O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgZmxleDogMTtcbiAgICB9XG5cbiAgICAucHJvamVjdC1jYXJkX19sb2NhdGlvbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBnYXA6IDAuNXJlbTtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLXN1cmZhY2UpO1xuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW1kKTtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICAgICAgYm94LXNoYWRvdzogMCAycHggMTJweCByZ2JhKDAsIDAsIDAsIDAuMDMpO1xuICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICB9XG5cbiAgICAucHJvamVjdC1jYXJkX19sb2NhdGlvbiAuYmFkZ2VfX2ljb24ge1xuICAgICAgY29sb3I6IHZhcigtLWN5YW4tZGltKTtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5wcm9qZWN0LWNhcmRfX2xvY2F0aW9uIC5iYWRnZV9fdGl0bGUge1xuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGxpbmUpO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiB2YXIoLS1uYXZ5KTtcbiAgICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICAgIH1cblxuICAgIC8qIOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkFxuICAgQ1RBXG7ilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZAgKi9cbiAgICAuY3RhIHtcbiAgICAgIHBhZGRpbmctYmxvY2s6IDdyZW07XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1uYXZ5KTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLmN0YV9fZ3JpZC1iZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBpbnNldDogMDtcbiAgICB9XG5cbiAgICAuY3RhX19mYWRlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogNTAlO1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgcmdiYSgwLCAwLCAwLCAwLjIpLCB0cmFuc3BhcmVudCk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG5cbiAgICAuY3RhX19pbm5lciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXgtd2lkdGg6IDQ4cmVtO1xuICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICB9XG5cbiAgICAuY3RhX19leWVicm93IHtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjE1ZW07XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgY29sb3I6IHZhcigtLWN5YW4pO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgfVxuXG4gICAgLmN0YV9faGVhZGluZyB7XG4gICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1oZWFkbGluZSk7XG4gICAgICBmb250LXNpemU6IGNsYW1wKDJyZW0sIDV2dywgMy4yNXJlbSk7XG4gICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgIH1cblxuICAgIC5jdGFfX2JvZHkge1xuICAgICAgY29sb3I6IHZhcigtLW5hdnktbXV0ZWQpO1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICAgIH1cblxuICAgIC5idG4tY3RhIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWN5YW4pO1xuICAgICAgY29sb3I6IHZhcigtLW5hdnkpO1xuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGxpbmUpO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgIHBhZGRpbmc6IDEuMjVyZW0gMi41cmVtO1xuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXNtKTtcbiAgICAgIGJveC1zaGFkb3c6IDAgOHB4IDMycHggcmdiYSgwLCAyMTAsIDI1NSwgMC4yKTtcbiAgICB9XG5cbiAgICAvKiDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZBcbiAgIEZPT1RFUlxu4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQICovXG4gICAgLmZvb3RlciB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zdXJmYWNlKTtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1zdXJmYWNlLW1pZCk7XG4gICAgfVxuXG4gICAgLmZvb3Rlcl9fbWFpbiB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICBnYXA6IDIuNXJlbTtcbiAgICAgIHBhZGRpbmctYmxvY2s6IDRyZW07XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAuZm9vdGVyX19tYWluIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9vdGVyX19icmFuZC1uYW1lIHtcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWhlYWRsaW5lKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICBjb2xvcjogdmFyKC0tbmF2eSk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDRlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cblxuICAgIC5mb290ZXJfX2JyYW5kLXRleHQge1xuICAgICAgY29sb3I6IHZhcigtLW9uLW11dGVkKTtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS44O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG5cbiAgICAuc3lzdGVtcy1jaGlwIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGdhcDogMC41cmVtO1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tc3VyZmFjZS1sb3cpO1xuICAgICAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDk5OTlweDtcbiAgICB9XG5cbiAgICAuc3lzdGVtcy1kb3Qge1xuICAgICAgd2lkdGg6IDhweDtcbiAgICAgIGhlaWdodDogOHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tdGVhbCk7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICB9XG5cbiAgICAuc3lzdGVtcy1sYWJlbCB7XG4gICAgICBmb250LXNpemU6IDAuNjI1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiB2YXIoLS1uYXZ5KTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG4gICAgfVxuXG4gICAgLmZvb3Rlcl9fY29sLWhlYWRpbmcge1xuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGxpbmUpO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICAgICAgY29sb3I6IHZhcigtLW5hdnkpO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjEyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgfVxuXG4gICAgLmZvb3Rlcl9fbGlua3Mge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBnYXA6IDAuNzVyZW07XG4gICAgfVxuXG4gICAgLmZvb3Rlcl9fbGlua3MgYSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGdhcDogMC41cmVtO1xuICAgICAgY29sb3I6IHZhcigtLW9uLW11dGVkKTtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzO1xuICAgIH1cblxuICAgIC5mb290ZXJfX2xpbmtzIGE6aG92ZXIge1xuICAgICAgY29sb3I6IHZhcigtLWN5YW4pO1xuICAgIH1cblxuICAgIC5mb290ZXJfX2xpbmtzIC5tYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5mb290ZXJfX2JvdHRvbSB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tc3VyZmFjZS1taWQpO1xuICAgICAgcGFkZGluZy1ibG9jazogMS41cmVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIC5mb290ZXJfX2NvcHlyaWdodCB7XG4gICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICBjb2xvcjogdmFyKC0tb24tbXV0ZWQpO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XG4gICAgfVxuXG4gICAgLyog4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQXG4gICBGTE9BVElORyBDT05UQUNUXG7ilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZAgKi9cbiAgICAuZmxvYXRpbmctY2hhdCB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICBib3R0b206IDEuNXJlbTtcbiAgICAgIHJpZ2h0OiAxLjVyZW07XG4gICAgICB3aWR0aDogMy41cmVtO1xuICAgICAgaGVpZ2h0OiAzLjVyZW07XG4gICAgICBiYWNrZ3JvdW5kOiAjMDBCMkZGO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYm94LXNoYWRvdzogMCA0cHggMTJweCByZ2JhKDAsIDE3OCwgMjU1LCAwLjQpO1xuICAgICAgei1pbmRleDogNDA7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxLjI3NSk7XG4gICAgfVxuXG4gICAgLmZsb2F0aW5nLWNoYXQ6aG92ZXIge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgIH1cblxuICAgIC5mbG9hdGluZy1jaGF0IHN2ZyB7XG4gICAgICB3aWR0aDogMS43NXJlbTtcbiAgICAgIGhlaWdodDogMS43NXJlbTtcbiAgICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgICB9Il19 */