﻿:root{--govuk-breakpoint-mobile: 20rem;--govuk-breakpoint-tablet: 40.0625rem;--govuk-breakpoint-desktop: 48.0625rem}:root{--govuk-frontend-version: "6.4.0"}:root{--govuk-brand-colour: #1d70b8;--govuk-text-colour: #0b0c0c;--govuk-inverse-text-colour: #ffffff;--govuk-template-background-colour: #f4f8fb;--govuk-body-background-colour: #ffffff;--govuk-print-text-colour: #000000;--govuk-secondary-text-colour: #484949;--govuk-focus-colour: #ffdd00;--govuk-focus-text-colour: #0b0c0c;--govuk-error-colour: #ca3535;--govuk-success-colour: #0f7a52;--govuk-border-colour: #cecece;--govuk-input-border-colour: #0b0c0c;--govuk-hover-colour: #cecece;--govuk-link-colour: #1a65a6;--govuk-link-visited-colour: #54319f;--govuk-link-hover-colour: #0f385c;--govuk-link-active-colour: #0b0c0c;--govuk-surface-background-colour: #f4f8fb;--govuk-surface-text-colour: #0b0c0c;--govuk-surface-border-colour: #8eb8dc}@media print{:root{--govuk-text-colour: var(--govuk-print-text-colour, #000000)}}.govuk-link{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:underline;text-decoration-thickness:max(1px, .0625rem);text-underline-offset:.1578em}/*! Copyright (c) 2011 by Margaret Calvert & Henrik Kubel. All rights reserved. The font has been customised for exclusive use on gov.uk. This cut is not commercially available. */@font-face{font-family:"GDS Transport";font-style:normal;font-weight:normal;font-display:fallback;src:url("/assets/fonts/light-94a07e06a1-v2.woff2") format("woff2"),url("/assets/fonts/light-f591b13f7d-v2.woff") format("woff")}@font-face{font-family:"GDS Transport";font-style:normal;font-weight:bold;font-display:fallback;src:url("/assets/fonts/bold-b542beb274-v2.woff2") format("woff2"),url("/assets/fonts/bold-affa96571d-v2.woff") format("woff")}@media print{.govuk-link{font-family:sans-serif}}.govuk-link:hover{text-decoration-thickness:max(3px, .1875rem, .12em);-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;-webkit-text-decoration-skip:none;text-decoration-skip:none}.govuk-link:focus{outline:3px solid rgba(0,0,0,0);color:var(--govuk-focus-text-colour, #0b0c0c);background-color:var(--govuk-focus-colour, #ffdd00);box-shadow:0 -2px var(--govuk-focus-colour, #ffdd00),0 4px var(--govuk-focus-text-colour, #0b0c0c);text-decoration:none}@supports not (text-wrap: balance){.govuk-link:focus{-webkit-box-decoration-break:clone;box-decoration-break:clone}}.govuk-link:link{color:var(--govuk-link-colour, #1a65a6)}.govuk-link:visited{color:var(--govuk-link-visited-colour, #54319f)}.govuk-link:hover{color:var(--govuk-link-hover-colour, #0f385c)}.govuk-link:active{color:var(--govuk-link-active-colour, #0b0c0c)}.govuk-link:focus{color:var(--govuk-focus-text-colour, #0b0c0c)}@media print{[href^="/"].govuk-link::after,[href^="http://"].govuk-link::after,[href^="https://"].govuk-link::after{content:" (" attr(href) ")";font-size:90%;word-wrap:break-word}}.govuk-link--muted:link,.govuk-link--muted:visited{color:var(--govuk-secondary-text-colour, #484949)}.govuk-link--muted:hover,.govuk-link--muted:active{color:var(--govuk-text-colour, #0b0c0c)}.govuk-link--muted:focus{color:var(--govuk-focus-text-colour, #0b0c0c)}.govuk-link--text-colour:link,.govuk-link--text-colour:visited,.govuk-link--text-colour:active{color:var(--govuk-text-colour, #0b0c0c)}.govuk-link--text-colour:focus{color:var(--govuk-focus-text-colour, #0b0c0c)}.govuk-link--inverse:link,.govuk-link--inverse:visited{color:var(--govuk-inverse-text-colour, #ffffff)}.govuk-link--inverse:focus{color:var(--govuk-focus-text-colour, #0b0c0c)}.govuk-link--no-underline:not(:hover):not(:active){text-decoration:none}.govuk-link--no-visited-state:link{color:var(--govuk-link-colour, #1a65a6)}.govuk-link--no-visited-state:visited{color:var(--govuk-link-colour, #1a65a6)}.govuk-link--no-visited-state:hover{color:var(--govuk-link-hover-colour, #0f385c)}.govuk-link--no-visited-state:active{color:var(--govuk-link-active-colour, #0b0c0c)}.govuk-link--no-visited-state:focus{color:var(--govuk-focus-text-colour, #0b0c0c)}.govuk-link-image{display:inline-block;line-height:0;text-decoration:none}.govuk-link-image:focus{outline:3px solid rgba(0,0,0,0);box-shadow:0 0 0 4px var(--govuk-focus-colour, #ffdd00),0 0 0 8px var(--govuk-focus-text-colour, #0b0c0c)}.govuk-heading-xl{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:2rem;line-height:1.09375;display:block;margin-top:0;color:var(--govuk-text-colour, #0b0c0c);margin-bottom:30px}@media print{.govuk-heading-xl{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-heading-xl{font-size:3rem;line-height:1.0416666667}}@media print{.govuk-heading-xl{font-size:32pt;line-height:1.15}}@media(min-width: 40.0625em){.govuk-heading-xl{margin-bottom:50px}}.govuk-heading-l{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:1.6875rem;line-height:1.1111111111;display:block;margin-top:0;color:var(--govuk-text-colour, #0b0c0c);margin-bottom:20px}@media print{.govuk-heading-l{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-heading-l{font-size:2.25rem;line-height:1.1111111111}}@media print{.govuk-heading-l{font-size:24pt;line-height:1.05}}@media(min-width: 40.0625em){.govuk-heading-l{margin-bottom:30px}}.govuk-heading-m{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:1.3125rem;line-height:1.1904761905;display:block;margin-top:0;color:var(--govuk-text-colour, #0b0c0c);margin-bottom:15px}@media print{.govuk-heading-m{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-heading-m{font-size:1.5rem;line-height:1.25}}@media print{.govuk-heading-m{font-size:18pt;line-height:1.15}}@media(min-width: 40.0625em){.govuk-heading-m{margin-bottom:20px}}.govuk-heading-s{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:1.1875rem;line-height:1.3157894737;display:block;margin-top:0;color:var(--govuk-text-colour, #0b0c0c);margin-bottom:15px}@media print{.govuk-heading-s{font-family:sans-serif}}@media print{.govuk-heading-s{font-size:14pt;line-height:1.15}}@media(min-width: 40.0625em){.govuk-heading-s{margin-bottom:20px}}.govuk-caption-xl{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.3125rem;line-height:1.1904761905;display:block;margin-bottom:5px;color:var(--govuk-secondary-text-colour, #484949)}@media print{.govuk-caption-xl{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-caption-xl{font-size:1.6875rem;line-height:1.1111111111}}@media print{.govuk-caption-xl{font-size:18pt;line-height:1.15}}.govuk-caption-l{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.3125rem;line-height:1.1904761905;display:block;margin-bottom:5px;color:var(--govuk-secondary-text-colour, #484949)}@media print{.govuk-caption-l{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-caption-l{font-size:1.5rem;line-height:1.25}}@media print{.govuk-caption-l{font-size:18pt;line-height:1.15}}@media(min-width: 40.0625em){.govuk-caption-l{margin-bottom:0}}.govuk-caption-m{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1.3157894737;display:block;color:var(--govuk-secondary-text-colour, #484949)}@media print{.govuk-caption-m{font-family:sans-serif}}@media print{.govuk-caption-m{font-size:14pt;line-height:1.15}}.govuk-body-lead,.govuk-body-l{margin-top:0;color:var(--govuk-text-colour, #0b0c0c);font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.3125rem;line-height:1.1904761905;margin-bottom:20px}@media print{.govuk-body-lead,.govuk-body-l{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-body-lead,.govuk-body-l{font-size:1.5rem;line-height:1.25}}@media print{.govuk-body-lead,.govuk-body-l{font-size:18pt;line-height:1.15}}@media(min-width: 40.0625em){.govuk-body-lead,.govuk-body-l{margin-bottom:30px}}.govuk-body,.govuk-body-m{margin-top:0;color:var(--govuk-text-colour, #0b0c0c);font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1.3157894737;margin-bottom:15px}@media print{.govuk-body,.govuk-body-m{font-family:sans-serif}}@media print{.govuk-body,.govuk-body-m{font-size:14pt;line-height:1.15}}@media(min-width: 40.0625em){.govuk-body,.govuk-body-m{margin-bottom:20px}}.govuk-body-s{margin-top:0;color:var(--govuk-text-colour, #0b0c0c);font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1rem;line-height:1.25;margin-bottom:15px}@media print{.govuk-body-s{font-family:sans-serif}}@media print{.govuk-body-s{font-size:14pt;line-height:1.2}}@media(min-width: 40.0625em){.govuk-body-s{margin-bottom:20px}}.govuk-body-l+.govuk-heading-l,.govuk-body-lead+.govuk-heading-l{padding-top:5px}@media(min-width: 40.0625em){.govuk-body-l+.govuk-heading-l,.govuk-body-lead+.govuk-heading-l{padding-top:10px}}.govuk-body-m+.govuk-heading-l,.govuk-body+.govuk-heading-l,.govuk-body-s+.govuk-heading-l,.govuk-list+.govuk-heading-l{padding-top:15px}@media(min-width: 40.0625em){.govuk-body-m+.govuk-heading-l,.govuk-body+.govuk-heading-l,.govuk-body-s+.govuk-heading-l,.govuk-list+.govuk-heading-l{padding-top:20px}}.govuk-body-m+.govuk-heading-m,.govuk-body+.govuk-heading-m,.govuk-body-s+.govuk-heading-m,.govuk-list+.govuk-heading-m,.govuk-body-m+.govuk-heading-s,.govuk-body+.govuk-heading-s,.govuk-body-s+.govuk-heading-s,.govuk-list+.govuk-heading-s{padding-top:5px}@media(min-width: 40.0625em){.govuk-body-m+.govuk-heading-m,.govuk-body+.govuk-heading-m,.govuk-body-s+.govuk-heading-m,.govuk-list+.govuk-heading-m,.govuk-body-m+.govuk-heading-s,.govuk-body+.govuk-heading-s,.govuk-body-s+.govuk-heading-s,.govuk-list+.govuk-heading-s{padding-top:10px}}.govuk-list{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1.3157894737;margin-top:0;margin-bottom:15px;padding-left:0;list-style-type:none;color:var(--govuk-text-colour, #0b0c0c)}@media print{.govuk-list{font-family:sans-serif}}@media print{.govuk-list{font-size:14pt;line-height:1.15}}@media(min-width: 40.0625em){.govuk-list{margin-bottom:20px}}.govuk-list .govuk-list{margin-top:10px}.govuk-list>li{margin-bottom:5px}.govuk-list--bullet{padding-left:20px;list-style-type:disc}.govuk-list--number{padding-left:20px;list-style-type:decimal}.govuk-list--bullet>li,.govuk-list--number>li{margin-bottom:0}@media(min-width: 40.0625em){.govuk-list--bullet>li,.govuk-list--number>li{margin-bottom:5px}}.govuk-list--spaced>li{margin-bottom:10px}@media(min-width: 40.0625em){.govuk-list--spaced>li{margin-bottom:15px}}.govuk-section-break{margin:0;border:0}.govuk-section-break--xl{margin-top:30px;margin-bottom:30px}@media(min-width: 40.0625em){.govuk-section-break--xl{margin-top:50px}}@media(min-width: 40.0625em){.govuk-section-break--xl{margin-bottom:50px}}.govuk-section-break--l{margin-top:20px;margin-bottom:20px}@media(min-width: 40.0625em){.govuk-section-break--l{margin-top:30px}}@media(min-width: 40.0625em){.govuk-section-break--l{margin-bottom:30px}}.govuk-section-break--m{margin-top:15px;margin-bottom:15px}@media(min-width: 40.0625em){.govuk-section-break--m{margin-top:20px}}@media(min-width: 40.0625em){.govuk-section-break--m{margin-bottom:20px}}.govuk-section-break--visible{border-bottom:1px solid;border-bottom-color:var(--govuk-border-colour, #cecece)}.govuk-button-group{margin-bottom:5px;display:flex;flex-direction:column;align-items:center}@media(min-width: 40.0625em){.govuk-button-group{margin-bottom:15px}}.govuk-button-group .govuk-link{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1;display:inline-block;max-width:100%;margin-top:5px;margin-bottom:20px;text-align:center}@media print{.govuk-button-group .govuk-link{font-family:sans-serif}}@media print{.govuk-button-group .govuk-link{font-size:14pt;line-height:19px}}.govuk-button-group .govuk-button{margin-bottom:17px}@media(min-width: 40.0625em){.govuk-button-group{flex-direction:row;flex-wrap:wrap;align-items:baseline;margin-right:-15px}.govuk-button-group .govuk-button,.govuk-button-group .govuk-link{margin-right:15px}.govuk-button-group .govuk-link{text-align:left}}.govuk-form-group{margin-bottom:20px}.govuk-form-group::after{content:"";display:block;clear:both}@media(min-width: 40.0625em){.govuk-form-group{margin-bottom:30px}}.govuk-form-group .govuk-form-group:last-of-type{margin-bottom:0}.govuk-form-group--error{padding-left:15px;border-left:5px solid;border-left-color:var(--govuk-error-colour, #ca3535)}.govuk-form-group--error .govuk-form-group{padding:0;border:0}.govuk-grid-row{margin-right:-15px;margin-left:-15px}.govuk-grid-row::after{content:"";display:block;clear:both}.govuk-grid-column-one-quarter{box-sizing:border-box;width:100%;padding:0 15px}@media(min-width: 40.0625em){.govuk-grid-column-one-quarter{width:25%;float:left}}.govuk-grid-column-one-third{box-sizing:border-box;width:100%;padding:0 15px}@media(min-width: 40.0625em){.govuk-grid-column-one-third{width:33.3333333333%;float:left}}.govuk-grid-column-one-half{box-sizing:border-box;width:100%;padding:0 15px}@media(min-width: 40.0625em){.govuk-grid-column-one-half{width:50%;float:left}}.govuk-grid-column-two-thirds{box-sizing:border-box;width:100%;padding:0 15px}@media(min-width: 40.0625em){.govuk-grid-column-two-thirds{width:66.6666666667%;float:left}}.govuk-grid-column-three-quarters{box-sizing:border-box;width:100%;padding:0 15px}@media(min-width: 40.0625em){.govuk-grid-column-three-quarters{width:75%;float:left}}.govuk-grid-column-full{box-sizing:border-box;width:100%;padding:0 15px}@media(min-width: 40.0625em){.govuk-grid-column-full{width:100%;float:left}}.govuk-grid-column-one-quarter-from-desktop{box-sizing:border-box;padding:0 15px}@media(min-width: 48.0625em){.govuk-grid-column-one-quarter-from-desktop{width:25%;float:left}}.govuk-grid-column-one-third-from-desktop{box-sizing:border-box;padding:0 15px}@media(min-width: 48.0625em){.govuk-grid-column-one-third-from-desktop{width:33.3333333333%;float:left}}.govuk-grid-column-one-half-from-desktop{box-sizing:border-box;padding:0 15px}@media(min-width: 48.0625em){.govuk-grid-column-one-half-from-desktop{width:50%;float:left}}.govuk-grid-column-two-thirds-from-desktop{box-sizing:border-box;padding:0 15px}@media(min-width: 48.0625em){.govuk-grid-column-two-thirds-from-desktop{width:66.6666666667%;float:left}}.govuk-grid-column-three-quarters-from-desktop{box-sizing:border-box;padding:0 15px}@media(min-width: 48.0625em){.govuk-grid-column-three-quarters-from-desktop{width:75%;float:left}}.govuk-grid-column-full-from-desktop{box-sizing:border-box;padding:0 15px}@media(min-width: 48.0625em){.govuk-grid-column-full-from-desktop{width:100%;float:left}}.govuk-main-wrapper{display:block;padding-top:20px;padding-bottom:20px}@media(min-width: 40.0625em){.govuk-main-wrapper{padding-top:40px;padding-bottom:40px}}.govuk-main-wrapper--auto-spacing:first-child,.govuk-main-wrapper--l{padding-top:30px}@media(min-width: 40.0625em){.govuk-main-wrapper--auto-spacing:first-child,.govuk-main-wrapper--l{padding-top:50px}}.govuk-template{background-color:var(--govuk-template-background-colour, #f4f8fb);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}@supports(position: -webkit-sticky) or (position: sticky){.govuk-template{scroll-padding-top:60px}.govuk-template:not(:has(.govuk-exit-this-page)){scroll-padding-top:0}}@media screen{.govuk-template{overflow-y:scroll}}.govuk-template__body{margin:0;background-color:var(--govuk-body-background-colour, #ffffff)}.govuk-width-container{max-width:960px;margin-right:15px;margin-left:15px}@supports(margin: max(calc(0px))){.govuk-width-container{margin-right:max(15px, calc(15px + env(safe-area-inset-right)));margin-left:max(15px, calc(15px + env(safe-area-inset-left)))}}@media(min-width: 40.0625em){.govuk-width-container{margin-right:30px;margin-left:30px}@supports(margin: max(calc(0px))){.govuk-width-container{margin-right:max(30px, calc(15px + env(safe-area-inset-right)));margin-left:max(30px, calc(15px + env(safe-area-inset-left)))}}}@media(min-width: 1020px){.govuk-width-container{margin-right:auto;margin-left:auto}@supports(margin: max(calc(0px))){.govuk-width-container{margin-right:auto;margin-left:auto}}}.govuk-accordion{margin-bottom:20px}@media(min-width: 40.0625em){.govuk-accordion{margin-bottom:30px}}.govuk-accordion__section{padding-top:15px}.govuk-accordion__section-heading{margin-top:0;margin-bottom:0;padding-top:15px;padding-bottom:15px}.govuk-accordion__section-button{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:1.3125rem;line-height:1.1904761905;display:block;margin-bottom:0;padding-top:15px;color:var(--govuk-text-colour, #0b0c0c)}@media print{.govuk-accordion__section-button{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-accordion__section-button{font-size:1.5rem;line-height:1.25}}@media print{.govuk-accordion__section-button{font-size:18pt;line-height:1.15}}.govuk-accordion__section-content>:last-child{margin-bottom:0}.govuk-frontend-supported .govuk-accordion{border-bottom:1px solid;border-bottom-color:var(--govuk-border-colour, #cecece)}.govuk-frontend-supported .govuk-accordion__section{padding-top:0}.govuk-frontend-supported .govuk-accordion__section-content{display:none;padding-top:15px;padding-bottom:30px}@media(min-width: 40.0625em){.govuk-frontend-supported .govuk-accordion__section-content{padding-bottom:50px}}.govuk-frontend-supported .govuk-accordion__section-content[hidden]{padding-top:0;padding-bottom:0}@supports(content-visibility: hidden){.govuk-frontend-supported .govuk-accordion__section-content[hidden]{content-visibility:hidden;display:inherit}}.govuk-frontend-supported .govuk-accordion__section--expanded .govuk-accordion__section-content{display:block}.govuk-frontend-supported .govuk-accordion__show-all{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1.3157894737;position:relative;z-index:1;margin-bottom:9px;padding:5px 2px 5px 0;border-width:0;color:var(--govuk-link-colour, #1a65a6);background:none;cursor:pointer;-webkit-appearance:none}@media print{.govuk-frontend-supported .govuk-accordion__show-all{font-family:sans-serif}}@media print{.govuk-frontend-supported .govuk-accordion__show-all{font-size:14pt;line-height:1.15}}@media(min-width: 40.0625em){.govuk-frontend-supported .govuk-accordion__show-all{margin-bottom:14px}}.govuk-frontend-supported .govuk-accordion__show-all::-moz-focus-inner{padding:0;border:0}.govuk-frontend-supported .govuk-accordion__show-all:hover{color:#0b0c0c;background:#f3f3f3;box-shadow:0 -2px #f3f3f3,0 4px #f3f3f3}.govuk-frontend-supported .govuk-accordion__show-all:hover .govuk-accordion__section-toggle-text{color:#0b0c0c}.govuk-frontend-supported .govuk-accordion__show-all:hover .govuk-accordion-nav__chevron{color:#0b0c0c;background:#0b0c0c}.govuk-frontend-supported .govuk-accordion__show-all:hover .govuk-accordion-nav__chevron::after{color:#f3f3f3}.govuk-frontend-supported .govuk-accordion__show-all:focus{outline:3px solid rgba(0,0,0,0);color:var(--govuk-focus-text-colour, #0b0c0c);background-color:var(--govuk-focus-colour, #ffdd00);box-shadow:0 -2px var(--govuk-focus-colour, #ffdd00),0 4px var(--govuk-focus-text-colour, #0b0c0c);text-decoration:none}@supports not (text-wrap: balance){.govuk-frontend-supported .govuk-accordion__show-all:focus{-webkit-box-decoration-break:clone;box-decoration-break:clone}}.govuk-frontend-supported .govuk-accordion__show-all:focus .govuk-accordion-nav__chevron{background:#0b0c0c}.govuk-frontend-supported .govuk-accordion__show-all:focus .govuk-accordion-nav__chevron::after{color:var(--govuk-focus-colour, #ffdd00)}.govuk-frontend-supported .govuk-accordion__section-heading{padding:0}.govuk-frontend-supported .govuk-accordion-nav__chevron{box-sizing:border-box;display:inline-block;position:relative;width:1.25rem;height:1.25rem;border:.0625rem solid;border-radius:50%;vertical-align:middle}.govuk-frontend-supported .govuk-accordion-nav__chevron::after{content:"";box-sizing:border-box;display:block;position:absolute;bottom:.3125rem;left:.375rem;width:.375rem;height:.375rem;transform:rotate(-45deg);border-top:.125rem solid;border-right:.125rem solid}.govuk-frontend-supported .govuk-accordion-nav__chevron--down{transform:rotate(180deg)}.govuk-frontend-supported .govuk-accordion__section-button{width:100%;padding:10px 0 0;border:0;border-top:1px solid;border-bottom:10px solid rgba(0,0,0,0);border-top-color:var(--govuk-border-colour, #cecece);color:var(--govuk-text-colour, #0b0c0c);background:none;text-align:left;cursor:pointer;-webkit-appearance:none}@media(min-width: 40.0625em){.govuk-frontend-supported .govuk-accordion__section-button{padding-bottom:10px}}.govuk-frontend-supported .govuk-accordion__section-button:active{color:var(--govuk-link-active-colour, #0b0c0c);background:none}.govuk-frontend-supported .govuk-accordion__section-button:hover{color:#0b0c0c;background:#f3f3f3}.govuk-frontend-supported .govuk-accordion__section-button:hover .govuk-accordion__section-toggle-text{color:#0b0c0c}.govuk-frontend-supported .govuk-accordion__section-button:hover .govuk-accordion-nav__chevron{color:#0b0c0c;background:#0b0c0c}.govuk-frontend-supported .govuk-accordion__section-button:hover .govuk-accordion-nav__chevron::after{color:#f3f3f3}.govuk-frontend-supported .govuk-accordion__section-button:focus{outline:0}.govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion__section-heading-text-focus,.govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion__section-summary-focus,.govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion__section-toggle-focus{outline:3px solid rgba(0,0,0,0);color:var(--govuk-focus-text-colour, #0b0c0c);background-color:var(--govuk-focus-colour, #ffdd00);box-shadow:0 -2px var(--govuk-focus-colour, #ffdd00),0 4px var(--govuk-focus-text-colour, #0b0c0c);text-decoration:none}@supports not (text-wrap: balance){.govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion__section-heading-text-focus,.govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion__section-summary-focus,.govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion__section-toggle-focus{-webkit-box-decoration-break:clone;box-decoration-break:clone}}.govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion-nav__chevron{color:#0b0c0c;background:#0b0c0c}.govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion-nav__chevron::after{color:var(--govuk-focus-colour, #ffdd00)}.govuk-frontend-supported .govuk-accordion__section-button::-moz-focus-inner{padding:0;border:0}.govuk-frontend-supported .govuk-accordion__section--expanded .govuk-accordion__section-button{padding-bottom:15px;border-bottom:0}@media(min-width: 40.0625em){.govuk-frontend-supported .govuk-accordion__section--expanded .govuk-accordion__section-button{padding-bottom:20px}}.govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion__section-toggle-focus{padding-bottom:3px}@media(min-width: 48.0625em){.govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion__section-toggle-focus{padding-bottom:2px}}.govuk-frontend-supported .govuk-accordion__section-toggle,.govuk-frontend-supported .govuk-accordion__section-heading-text,.govuk-frontend-supported .govuk-accordion__section-summary{display:block;margin-bottom:13px}.govuk-frontend-supported .govuk-accordion__section-toggle .govuk-accordion__section-heading-text-focus,.govuk-frontend-supported .govuk-accordion__section-toggle .govuk-accordion__section-summary-focus,.govuk-frontend-supported .govuk-accordion__section-toggle .govuk-accordion__section-toggle-focus,.govuk-frontend-supported .govuk-accordion__section-heading-text .govuk-accordion__section-heading-text-focus,.govuk-frontend-supported .govuk-accordion__section-heading-text .govuk-accordion__section-summary-focus,.govuk-frontend-supported .govuk-accordion__section-heading-text .govuk-accordion__section-toggle-focus,.govuk-frontend-supported .govuk-accordion__section-summary .govuk-accordion__section-heading-text-focus,.govuk-frontend-supported .govuk-accordion__section-summary .govuk-accordion__section-summary-focus,.govuk-frontend-supported .govuk-accordion__section-summary .govuk-accordion__section-toggle-focus{display:inline}.govuk-frontend-supported .govuk-accordion__section-toggle{font-size:1.1875rem;line-height:1.3157894737;font-weight:400;color:var(--govuk-link-colour, #1a65a6)}@media print{.govuk-frontend-supported .govuk-accordion__section-toggle{font-size:14pt;line-height:1.15}}.govuk-frontend-supported .govuk-accordion__show-all-text,.govuk-frontend-supported .govuk-accordion__section-toggle-text{margin-left:5px;vertical-align:middle}@media screen and (forced-colors: active){.govuk-frontend-supported .govuk-accordion__show-all:hover .govuk-accordion-nav__chevron,.govuk-frontend-supported .govuk-accordion__section-button:hover .govuk-accordion-nav__chevron{background-color:rgba(0,0,0,0)}.govuk-frontend-supported .govuk-accordion__show-all:focus .govuk-accordion__section-heading-text-focus,.govuk-frontend-supported .govuk-accordion__show-all:focus .govuk-accordion__section-summary-focus,.govuk-frontend-supported .govuk-accordion__show-all:focus .govuk-accordion__section-toggle-focus,.govuk-frontend-supported .govuk-accordion__show-all:focus .govuk-accordion-nav__chevron,.govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion__section-heading-text-focus,.govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion__section-summary-focus,.govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion__section-toggle-focus,.govuk-frontend-supported .govuk-accordion__section-button:focus .govuk-accordion-nav__chevron{background:rgba(0,0,0,0);background-color:rgba(0,0,0,0)}}@media(hover: none){.govuk-frontend-supported .govuk-accordion__section-header:hover{border-top-color:var(--govuk-border-colour, #cecece);box-shadow:inset 0 3px 0 0 var(--govuk-link-colour, #1a65a6)}.govuk-frontend-supported .govuk-accordion__section-header:hover .govuk-accordion__section-button{border-top-color:var(--govuk-border-colour, #cecece)}}.govuk-back-link{font-size:1rem;line-height:1.25;font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:underline;text-decoration-thickness:max(1px, .0625rem);text-underline-offset:.1578em;display:inline-block;position:relative;margin-top:15px;margin-bottom:15px;padding-left:.875em}@media print{.govuk-back-link{font-size:14pt;line-height:1.2}}@media print{.govuk-back-link{font-family:sans-serif}}.govuk-back-link:hover{text-decoration-thickness:max(3px, .1875rem, .12em);-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;-webkit-text-decoration-skip:none;text-decoration-skip:none}.govuk-back-link:focus{outline:3px solid rgba(0,0,0,0);color:var(--govuk-focus-text-colour, #0b0c0c);background-color:var(--govuk-focus-colour, #ffdd00);box-shadow:0 -2px var(--govuk-focus-colour, #ffdd00),0 4px var(--govuk-focus-text-colour, #0b0c0c);text-decoration:none}@supports not (text-wrap: balance){.govuk-back-link:focus{-webkit-box-decoration-break:clone;box-decoration-break:clone}}.govuk-back-link:link,.govuk-back-link:visited,.govuk-back-link:active{color:var(--govuk-text-colour, #0b0c0c)}.govuk-back-link:focus{color:var(--govuk-focus-text-colour, #0b0c0c)}.govuk-back-link::before{content:"";display:block;position:absolute;top:0;bottom:0;left:.1875em;width:.4375em;height:.4375em;margin:auto 0;transform:rotate(225deg);border:solid;border-width:1px 1px 0 0;border-color:var(--govuk-secondary-text-colour, #484949)}@supports(border-width: max(0px)){.govuk-back-link::before{border-width:max(1px, 0.0625em) max(1px, 0.0625em) 0 0;font-size:max(16px, 1em)}}.govuk-back-link:focus::before{border-color:var(--govuk-focus-text-colour, #0b0c0c)}.govuk-back-link::after{content:"";position:absolute;top:-14px;right:0;bottom:-14px;left:0}.govuk-back-link--inverse:link,.govuk-back-link--inverse:visited{color:var(--govuk-inverse-text-colour, #ffffff)}.govuk-back-link--inverse:focus{color:var(--govuk-focus-text-colour, #0b0c0c)}.govuk-back-link--inverse::before{border-color:currentcolor}.govuk-breadcrumbs{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1rem;line-height:1.25;margin-top:15px;margin-bottom:10px;color:var(--govuk-text-colour, #0b0c0c)}@media print{.govuk-breadcrumbs{font-family:sans-serif}}@media print{.govuk-breadcrumbs{font-size:14pt;line-height:1.2}}.govuk-breadcrumbs__list{margin:0;padding:0;list-style-type:none}.govuk-breadcrumbs__list::after{content:"";display:block;clear:both}.govuk-breadcrumbs__list-item{display:inline-block;position:relative;margin-bottom:5px;margin-left:.625em;padding-left:.9784375em;float:left}.govuk-breadcrumbs__list-item::before{content:"";display:block;position:absolute;top:0;bottom:0;left:-.206875em;width:.4375em;height:.4375em;margin:auto 0;transform:rotate(45deg);border:solid;border-width:1px 1px 0 0;border-color:var(--govuk-secondary-text-colour, #484949)}@supports(border-width: max(0px)){.govuk-breadcrumbs__list-item::before{border-width:max(1px, 0.0625em) max(1px, 0.0625em) 0 0;font-size:max(16px, 1em)}}.govuk-breadcrumbs__list-item:first-child{margin-left:0;padding-left:0}.govuk-breadcrumbs__list-item:first-child::before{content:none;display:none}.govuk-breadcrumbs__link{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:underline;text-decoration-thickness:max(1px, .0625rem);text-underline-offset:.1578em}@media print{.govuk-breadcrumbs__link{font-family:sans-serif}}.govuk-breadcrumbs__link:hover{text-decoration-thickness:max(3px, .1875rem, .12em);-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;-webkit-text-decoration-skip:none;text-decoration-skip:none}.govuk-breadcrumbs__link:focus{outline:3px solid rgba(0,0,0,0);color:var(--govuk-focus-text-colour, #0b0c0c);background-color:var(--govuk-focus-colour, #ffdd00);box-shadow:0 -2px var(--govuk-focus-colour, #ffdd00),0 4px var(--govuk-focus-text-colour, #0b0c0c);text-decoration:none}@supports not (text-wrap: balance){.govuk-breadcrumbs__link:focus{-webkit-box-decoration-break:clone;box-decoration-break:clone}}.govuk-breadcrumbs__link:link,.govuk-breadcrumbs__link:visited,.govuk-breadcrumbs__link:active{color:var(--govuk-text-colour, #0b0c0c)}.govuk-breadcrumbs__link:focus{color:var(--govuk-focus-text-colour, #0b0c0c)}@media(max-width: 40.0525em){.govuk-breadcrumbs--collapse-on-mobile .govuk-breadcrumbs__list-item{display:none}.govuk-breadcrumbs--collapse-on-mobile .govuk-breadcrumbs__list-item:first-child,.govuk-breadcrumbs--collapse-on-mobile .govuk-breadcrumbs__list-item:last-child{display:inline-block}.govuk-breadcrumbs--collapse-on-mobile .govuk-breadcrumbs__list-item::before{top:.375em;margin:0}.govuk-breadcrumbs--collapse-on-mobile .govuk-breadcrumbs__list{display:flex}}.govuk-breadcrumbs--inverse{--govuk-text-colour: var(--govuk-inverse-text-colour, #ffffff)}.govuk-breadcrumbs--inverse .govuk-breadcrumbs__list-item::before{border-color:currentcolor}.govuk-button{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1;box-sizing:border-box;display:inline-block;position:relative;width:100%;margin-top:0;margin-right:0;margin-left:0;margin-bottom:22px;padding:8px 10px 7px;border:2px solid rgba(0,0,0,0);border-radius:0;color:#fff;background-color:#0f7a52;box-shadow:0 2px 0 #083d29;text-align:center;vertical-align:top;cursor:pointer;-webkit-appearance:none}@media print{.govuk-button{font-family:sans-serif}}@media print{.govuk-button{font-size:14pt;line-height:19px}}@media(min-width: 40.0625em){.govuk-button{margin-bottom:32px}}@media(min-width: 40.0625em){.govuk-button{width:auto}}.govuk-button:link,.govuk-button:visited,.govuk-button:active,.govuk-button:hover{color:#fff;text-decoration:none}.govuk-button::-moz-focus-inner{padding:0;border:0}.govuk-button:hover{background-color:#0b5c3e}.govuk-button:active{top:2px}.govuk-button:focus{border-color:var(--govuk-focus-colour, #ffdd00);outline:3px solid rgba(0,0,0,0);box-shadow:inset 0 0 0 1px var(--govuk-focus-colour, #ffdd00)}.govuk-button:focus:not(:active):not(:hover){border-color:var(--govuk-focus-colour, #ffdd00);color:var(--govuk-focus-text-colour, #0b0c0c);background-color:var(--govuk-focus-colour, #ffdd00);box-shadow:0 2px 0 var(--govuk-focus-text-colour, #0b0c0c)}.govuk-button::before{content:"";display:block;position:absolute;top:-2px;right:-2px;bottom:-4px;left:-2px;background:rgba(0,0,0,0)}.govuk-button:active::before{top:-4px}.govuk-button[disabled]{opacity:.5}.govuk-button[disabled]:hover{background-color:#0f7a52;cursor:not-allowed}.govuk-button[disabled]:active{top:0;box-shadow:0 2px 0 #083d29}.govuk-button--secondary{background-color:#f3f3f3;box-shadow:0 2px 0 #858686}.govuk-button--secondary,.govuk-button--secondary:link,.govuk-button--secondary:visited,.govuk-button--secondary:active,.govuk-button--secondary:hover{color:#0b0c0c}.govuk-button--secondary:hover{background-color:#cecece}.govuk-button--secondary:hover[disabled]{background-color:#f3f3f3}.govuk-button--warning{background-color:#ca3535;box-shadow:0 2px 0 #651b1b}.govuk-button--warning,.govuk-button--warning:link,.govuk-button--warning:visited,.govuk-button--warning:active,.govuk-button--warning:hover{color:#fff}.govuk-button--warning:hover{background-color:#982828}.govuk-button--warning:hover[disabled]{background-color:#ca3535}.govuk-button--inverse{background-color:#fff;box-shadow:0 2px 0 #0f385c}.govuk-button--inverse,.govuk-button--inverse:link,.govuk-button--inverse:visited,.govuk-button--inverse:active,.govuk-button--inverse:hover{color:var(--govuk-brand-colour, #1d70b8)}.govuk-button--inverse:hover{background-color:#f4f8fb}.govuk-button--inverse:hover[disabled]{background-color:#fff}.govuk-button--start{font-weight:700;font-size:1.3125rem;line-height:1;display:inline-flex;justify-content:center;min-height:auto}@media(min-width: 40.0625em){.govuk-button--start{font-size:1.5rem;line-height:1}}@media print{.govuk-button--start{font-size:18pt;line-height:1}}.govuk-button__start-icon{flex-shrink:0;align-self:center;margin-left:5px;vertical-align:middle;forced-color-adjust:auto}@media(min-width: 48.0625em){.govuk-button__start-icon{margin-left:10px}}.govuk-error-message{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:1.1875rem;line-height:1.3157894737;display:block;margin-top:0;margin-bottom:15px;clear:both;color:var(--govuk-error-colour, #ca3535)}@media print{.govuk-error-message{font-family:sans-serif}}@media print{.govuk-error-message{font-size:14pt;line-height:1.15}}.govuk-hint{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1.3157894737;margin-bottom:15px;color:var(--govuk-secondary-text-colour, #484949)}@media print{.govuk-hint{font-family:sans-serif}}@media print{.govuk-hint{font-size:14pt;line-height:1.15}}.govuk-label:not(.govuk-label--m):not(.govuk-label--l):not(.govuk-label--xl)+.govuk-hint{margin-bottom:10px}.govuk-fieldset__legend:not(.govuk-fieldset__legend--m):not(.govuk-fieldset__legend--l):not(.govuk-fieldset__legend--xl)+.govuk-hint{margin-bottom:10px}.govuk-fieldset__legend+.govuk-hint{margin-top:-5px}.govuk-label{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1.3157894737;display:block;margin-bottom:5px;color:var(--govuk-text-colour, #0b0c0c)}@media print{.govuk-label{font-family:sans-serif}}@media print{.govuk-label{font-size:14pt;line-height:1.15}}.govuk-label--xl,.govuk-label--l,.govuk-label--m{font-weight:700;margin-bottom:15px}.govuk-label--xl{font-size:2rem;line-height:1.09375}@media(min-width: 40.0625em){.govuk-label--xl{font-size:3rem;line-height:1.0416666667}}@media print{.govuk-label--xl{font-size:32pt;line-height:1.15}}.govuk-label--l{font-size:1.6875rem;line-height:1.1111111111}@media(min-width: 40.0625em){.govuk-label--l{font-size:2.25rem;line-height:1.1111111111}}@media print{.govuk-label--l{font-size:24pt;line-height:1.05}}.govuk-label--m{font-size:1.3125rem;line-height:1.1904761905}@media(min-width: 40.0625em){.govuk-label--m{font-size:1.5rem;line-height:1.25}}@media print{.govuk-label--m{font-size:18pt;line-height:1.15}}.govuk-label--s{font-weight:700}.govuk-label-wrapper{margin:0}.govuk-textarea{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1.25;box-sizing:border-box;display:block;width:100%;min-height:40px;margin-bottom:20px;padding:5px;resize:vertical;border:2px solid;border-radius:0;border-color:var(--govuk-input-border-colour, #0b0c0c);-webkit-appearance:none}@media print{.govuk-textarea{font-family:sans-serif}}@media print{.govuk-textarea{font-size:14pt;line-height:1.25}}@media(min-width: 40.0625em){.govuk-textarea{margin-bottom:30px}}.govuk-textarea:focus{outline:3px solid;outline-color:var(--govuk-focus-colour, #ffdd00);outline-offset:0;box-shadow:inset 0 0 0 2px var(--govuk-input-border-colour, #0b0c0c)}.govuk-textarea:disabled{opacity:.5;color:inherit;background-color:rgba(0,0,0,0);cursor:not-allowed}.govuk-textarea--error{border-color:var(--govuk-error-colour, #ca3535)}.govuk-textarea--error:focus{border-color:var(--govuk-input-border-colour, #0b0c0c)}.govuk-character-count{margin-bottom:20px}@media(min-width: 40.0625em){.govuk-character-count{margin-bottom:30px}}.govuk-character-count .govuk-form-group,.govuk-character-count .govuk-textarea{margin-bottom:5px}.govuk-character-count .govuk-textarea--error:focus{border-color:var(--govuk-error-colour, #ca3535);box-shadow:inset 0 0 0 2px var(--govuk-error-colour, #ca3535)}.govuk-character-count__message{font-variant-numeric:tabular-nums;margin-top:0;margin-bottom:0}.govuk-character-count__message::after{content:"​"}.govuk-character-count__message--disabled{visibility:hidden}.govuk-fieldset{min-width:0;margin:0;padding:0;border:0}.govuk-fieldset::after{content:"";display:block;clear:both}@supports not (caret-color: auto){.govuk-fieldset,x:-moz-any-link{display:table-cell}}.govuk-fieldset__legend{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1.3157894737;box-sizing:border-box;display:table;max-width:100%;margin-bottom:10px;padding:0;color:var(--govuk-text-colour, #0b0c0c);white-space:normal}@media print{.govuk-fieldset__legend{font-family:sans-serif}}@media print{.govuk-fieldset__legend{font-size:14pt;line-height:1.15}}.govuk-fieldset__legend--xl,.govuk-fieldset__legend--l,.govuk-fieldset__legend--m{font-weight:700;margin-bottom:15px}.govuk-fieldset__legend--xl{font-size:2rem;line-height:1.09375}@media(min-width: 40.0625em){.govuk-fieldset__legend--xl{font-size:3rem;line-height:1.0416666667}}@media print{.govuk-fieldset__legend--xl{font-size:32pt;line-height:1.15}}.govuk-fieldset__legend--l{font-size:1.6875rem;line-height:1.1111111111}@media(min-width: 40.0625em){.govuk-fieldset__legend--l{font-size:2.25rem;line-height:1.1111111111}}@media print{.govuk-fieldset__legend--l{font-size:24pt;line-height:1.05}}.govuk-fieldset__legend--m{font-size:1.3125rem;line-height:1.1904761905}@media(min-width: 40.0625em){.govuk-fieldset__legend--m{font-size:1.5rem;line-height:1.25}}@media print{.govuk-fieldset__legend--m{font-size:18pt;line-height:1.15}}.govuk-fieldset__legend--s{font-weight:700}.govuk-fieldset__heading{margin:0;font-size:inherit;font-weight:inherit}.govuk-checkboxes__item{display:flex;position:relative;flex-wrap:wrap;margin-bottom:10px}.govuk-checkboxes__item:last-child,.govuk-checkboxes__item:last-of-type{margin-bottom:0}.govuk-checkboxes__input{z-index:1;width:44px;height:44px;margin:0;opacity:0;cursor:pointer}.govuk-checkboxes__label{align-self:center;max-width:calc(100% - 74px);margin-bottom:0;padding:7px 15px;cursor:pointer;touch-action:manipulation}.govuk-checkboxes__label::before{content:"";box-sizing:border-box;position:absolute;top:2px;left:2px;width:40px;height:40px;border:2px solid currentcolor;background:rgba(0,0,0,0)}.govuk-checkboxes__label::after{content:"";box-sizing:border-box;position:absolute;top:13px;left:10px;width:23px;height:12px;transform:rotate(-45deg);border:solid;border-width:0 0 5px 5px;border-top-color:rgba(0,0,0,0);opacity:0;background:rgba(0,0,0,0)}.govuk-checkboxes__hint{display:block;width:100%;margin-top:-5px;padding-right:15px;padding-left:59px}.govuk-label:not(.govuk-label--m):not(.govuk-label--l):not(.govuk-label--xl)+.govuk-checkboxes__hint{margin-bottom:0}.govuk-checkboxes__input:focus+.govuk-checkboxes__label::before{border-width:4px;outline:3px solid rgba(0,0,0,0);outline-offset:1px;box-shadow:0 0 0 3px var(--govuk-focus-colour, #ffdd00)}@media screen and (forced-colors: active),(-ms-high-contrast: active){.govuk-checkboxes__input:focus+.govuk-checkboxes__label::before{outline-color:Highlight}}.govuk-checkboxes__input:checked+.govuk-checkboxes__label::after{opacity:1}.govuk-checkboxes__input:disabled,.govuk-checkboxes__input:disabled+.govuk-checkboxes__label{cursor:not-allowed}.govuk-checkboxes__input:disabled+.govuk-checkboxes__label,.govuk-checkboxes__input:disabled~.govuk-hint{opacity:.5}.govuk-checkboxes__divider{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1.3157894737;width:40px;margin-bottom:10px;color:var(--govuk-text-colour, #0b0c0c);text-align:center}@media print{.govuk-checkboxes__divider{font-family:sans-serif}}@media print{.govuk-checkboxes__divider{font-size:14pt;line-height:1.15}}.govuk-checkboxes__conditional{margin-bottom:15px;margin-left:20px;padding-left:35px;border-left:4px solid;border-left-color:var(--govuk-border-colour, #cecece)}@media(min-width: 40.0625em){.govuk-checkboxes__conditional{margin-bottom:20px}}.govuk-frontend-supported .govuk-checkboxes__conditional--hidden{display:none}.govuk-checkboxes__conditional>:last-child{margin-bottom:0}.govuk-checkboxes--small .govuk-checkboxes__item{margin-bottom:0}.govuk-checkboxes--small .govuk-checkboxes__input{margin-left:-10px}.govuk-checkboxes--small .govuk-checkboxes__label{max-width:calc(
        100% - 50px
      );padding-left:1px}.govuk-checkboxes--small .govuk-checkboxes__label::before{top:10px;left:0;width:24px;height:24px}.govuk-checkboxes--small .govuk-checkboxes__label::after{top:17px;left:6px;width:12px;height:6.5px;border-width:0 0 3px 3px}.govuk-checkboxes--small .govuk-checkboxes__hint{padding-left:34px}.govuk-checkboxes--small .govuk-checkboxes__conditional{margin-left:10px;padding-left:20px}.govuk-checkboxes--small .govuk-checkboxes__divider{width:24px;margin-bottom:5px}.govuk-checkboxes--small .govuk-checkboxes__input:not(:disabled):hover+.govuk-checkboxes__label::before{outline:3px dashed rgba(0,0,0,0);outline-offset:1px;box-shadow:0 0 0 10px var(--govuk-hover-colour, #cecece)}.govuk-checkboxes--small .govuk-checkboxes__input:focus:hover+.govuk-checkboxes__label::before{box-shadow:0 0 0 3px var(--govuk-focus-colour, #ffdd00),0 0 0 10px var(--govuk-hover-colour, #cecece)}@media screen and (forced-colors: active),(-ms-high-contrast: active){.govuk-checkboxes--small .govuk-checkboxes__input:focus:hover+.govuk-checkboxes__label::before{outline-color:Highlight}}@media(hover: none),(pointer: coarse){.govuk-checkboxes--small .govuk-checkboxes__input:not(:disabled):hover+.govuk-checkboxes__label::before{box-shadow:initial}.govuk-checkboxes--small .govuk-checkboxes__input:focus:hover+.govuk-checkboxes__label::before{box-shadow:0 0 0 3px var(--govuk-focus-colour, #ffdd00)}}.govuk-cookie-banner{padding-top:20px;border-bottom:10px solid rgba(0,0,0,0);color:var(--govuk-surface-text-colour, #0b0c0c);background-color:var(--govuk-surface-background-colour, #f4f8fb)}.govuk-cookie-banner[hidden]{display:none}.govuk-cookie-banner__message{margin-bottom:-10px}.govuk-cookie-banner__message[hidden]{display:none}.govuk-cookie-banner__message:focus{outline:none}.govuk-input{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1.3157894737;box-sizing:border-box;width:100%;height:2.5rem;margin-top:0;padding:5px;border:2px solid;border-radius:0;border-color:var(--govuk-input-border-colour, #0b0c0c);-webkit-appearance:none;appearance:none}@media print{.govuk-input{font-family:sans-serif}}@media print{.govuk-input{font-size:14pt;line-height:1.15}}.govuk-input:focus{outline:3px solid;outline-color:var(--govuk-focus-colour, #ffdd00);outline-offset:0;box-shadow:inset 0 0 0 2px var(--govuk-input-border-colour, #0b0c0c)}.govuk-input:disabled{opacity:.5;color:inherit;background-color:rgba(0,0,0,0);cursor:not-allowed}.govuk-input::-webkit-outer-spin-button,.govuk-input::-webkit-inner-spin-button{margin:0;-webkit-appearance:none}.govuk-input[type=number]{-moz-appearance:textfield}.govuk-input--error{border-color:var(--govuk-error-colour, #ca3535)}.govuk-input--error:focus{border-color:var(--govuk-input-border-colour, #0b0c0c)}.govuk-input--extra-letter-spacing{font-variant-numeric:tabular-nums;letter-spacing:.05em}.govuk-input--width-30{max-width:29.5em}.govuk-input--width-20{max-width:20.5em}.govuk-input--width-10{max-width:11.5em}.govuk-input--width-5{max-width:5.5em}.govuk-input--width-4{max-width:4.5em}.govuk-input--width-3{max-width:3.75em}.govuk-input--width-2{max-width:2.75em}.govuk-input__wrapper{display:flex}.govuk-input__wrapper .govuk-input{flex:0 1 auto}.govuk-input__wrapper .govuk-input:focus{z-index:1}@media(max-width: 19.99em){.govuk-input__wrapper{display:block}.govuk-input__wrapper .govuk-input{max-width:100%}}.govuk-input__prefix,.govuk-input__suffix{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1.3157894737;box-sizing:border-box;display:flex;flex:0 0 auto;align-items:center;justify-content:center;min-width:2.5rem;height:2.5rem;padding:5px;border:2px solid;border-color:var(--govuk-input-border-colour, #0b0c0c);color:var(--govuk-text-colour, #0b0c0c);background-color:#f3f3f3;text-align:center;white-space:nowrap;cursor:default}@media print{.govuk-input__prefix,.govuk-input__suffix{font-family:sans-serif}}@media print{.govuk-input__prefix,.govuk-input__suffix{font-size:14pt;line-height:1.15}}@media(max-width: 19.99em){.govuk-input__prefix,.govuk-input__suffix{display:block;height:100%;white-space:normal}}@media(max-width: 19.99em){.govuk-input__prefix{border-bottom:0}}@media(min-width: 20em){.govuk-input__prefix{border-right:0}}@media(max-width: 19.99em){.govuk-input__suffix{border-top:0}}@media(min-width: 20em){.govuk-input__suffix{border-left:0}}.govuk-date-input{font-size:0}.govuk-date-input::after{content:"";display:block;clear:both}.govuk-date-input__item{display:inline-block;margin-right:20px;margin-bottom:0;vertical-align:bottom}.govuk-date-input__label{display:block}.govuk-date-input__input{margin-bottom:0}.govuk-details{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1.3157894737;margin-bottom:20px;display:block;color:var(--govuk-text-colour, #0b0c0c)}@media print{.govuk-details{font-family:sans-serif}}@media print{.govuk-details{font-size:14pt;line-height:1.15}}@media(min-width: 40.0625em){.govuk-details{margin-bottom:30px}}.govuk-details__summary{display:block}.govuk-details[open] .govuk-details__summary{margin-bottom:5px}.govuk-details__summary-text>:first-child{margin-top:0}.govuk-details__summary-text>:only-child,.govuk-details__summary-text>:last-child{margin-bottom:0}.govuk-details__text{padding-top:15px;padding-bottom:15px;padding-left:20px}.govuk-details__text p{margin-top:0;margin-bottom:20px}.govuk-details__text>:last-child{margin-bottom:0}@media screen\0 {.govuk-details{border-left:10px solid;border-left-color:var(--govuk-border-colour, #cecece)}.govuk-details__summary{margin-top:15px}.govuk-details__summary-text{font-weight:700;margin-bottom:15px;padding-left:20px}}@media screen\0  and (min-width: 40.0625em){.govuk-details__summary-text{margin-bottom:20px}}@supports not (-ms-ime-align: auto){.govuk-details__summary{position:relative;width:-webkit-fit-content;width:fit-content;padding-left:25px;color:var(--govuk-link-colour, #1a65a6);cursor:pointer}.govuk-details__summary:hover{color:var(--govuk-link-hover-colour, #0f385c)}.govuk-details__summary:focus{outline:3px solid rgba(0,0,0,0);color:var(--govuk-focus-text-colour, #0b0c0c);background-color:var(--govuk-focus-colour, #ffdd00);box-shadow:0 -2px var(--govuk-focus-colour, #ffdd00),0 4px var(--govuk-focus-text-colour, #0b0c0c);text-decoration:none}@supports not (text-wrap: balance){.govuk-details__summary:focus{-webkit-box-decoration-break:clone;box-decoration-break:clone}}.govuk-details__summary-text{text-decoration:underline;text-decoration-thickness:max(1px, .0625rem);text-underline-offset:.1578em}.govuk-details__summary:hover .govuk-details__summary-text{text-decoration-thickness:max(3px, .1875rem, .12em);-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;-webkit-text-decoration-skip:none;text-decoration-skip:none}.govuk-details__summary:focus .govuk-details__summary-text{text-decoration:none}.govuk-details__summary::-webkit-details-marker{display:none}.govuk-details__summary::before{content:"";position:absolute;top:-1px;bottom:0;left:0;margin:auto;display:block;width:0;height:0;border-style:solid;border-color:rgba(0,0,0,0);-webkit-clip-path:polygon(0% 0%, 100% 50%, 0% 100%);clip-path:polygon(0% 0%, 100% 50%, 0% 100%);border-width:7px 0 7px 12.124px;border-left-color:inherit}.govuk-details[open]>.govuk-details__summary::before{display:block;width:0;height:0;border-style:solid;border-color:rgba(0,0,0,0);-webkit-clip-path:polygon(0% 0%, 50% 100%, 100% 0%);clip-path:polygon(0% 0%, 50% 100%, 100% 0%);border-width:12.124px 7px 0 7px;border-top-color:inherit}.govuk-details__text{border-left:5px solid;border-left-color:var(--govuk-border-colour, #cecece)}}.govuk-error-summary{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1.3157894737;padding:15px;margin-bottom:30px;border:5px solid;border-color:var(--govuk-error-colour, #ca3535);color:var(--govuk-text-colour, #0b0c0c)}@media print{.govuk-error-summary{font-family:sans-serif}}@media print{.govuk-error-summary{font-size:14pt;line-height:1.15}}@media(min-width: 40.0625em){.govuk-error-summary{padding:20px}}@media(min-width: 40.0625em){.govuk-error-summary{margin-bottom:50px}}.govuk-error-summary:focus{outline:3px solid;outline-color:var(--govuk-focus-colour, #ffdd00)}.govuk-error-summary__title{font-size:1.3125rem;line-height:1.1904761905;font-weight:700;margin-top:0;margin-bottom:15px}@media(min-width: 40.0625em){.govuk-error-summary__title{font-size:1.5rem;line-height:1.25}}@media print{.govuk-error-summary__title{font-size:18pt;line-height:1.15}}@media(min-width: 40.0625em){.govuk-error-summary__title{margin-bottom:20px}}.govuk-error-summary__body p{margin-bottom:0}.govuk-error-summary__body>*+*{margin-top:15px}@media(min-width: 40.0625em){.govuk-error-summary__body>*+*{margin-top:20px}}.govuk-error-summary__body>:last-child{margin-bottom:5px}.govuk-error-summary__list{margin-bottom:0}.govuk-error-summary__list li:last-child{margin-bottom:0}.govuk-error-summary__list a{font-weight:700;font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:underline;text-decoration-thickness:max(1px, .0625rem);text-underline-offset:.1578em}@media print{.govuk-error-summary__list a{font-family:sans-serif}}.govuk-error-summary__list a:hover{text-decoration-thickness:max(3px, .1875rem, .12em);-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;-webkit-text-decoration-skip:none;text-decoration-skip:none}.govuk-error-summary__list a:focus{outline:3px solid rgba(0,0,0,0);color:var(--govuk-focus-text-colour, #0b0c0c);background-color:var(--govuk-focus-colour, #ffdd00);box-shadow:0 -2px var(--govuk-focus-colour, #ffdd00),0 4px var(--govuk-focus-text-colour, #0b0c0c);text-decoration:none}@supports not (text-wrap: balance){.govuk-error-summary__list a:focus{-webkit-box-decoration-break:clone;box-decoration-break:clone}}.govuk-error-summary__list a:link,.govuk-error-summary__list a:visited{color:var(--govuk-error-colour, #ca3535)}.govuk-error-summary__list a:hover{color:#651b1b}.govuk-error-summary__list a:active{color:var(--govuk-error-colour, #ca3535)}.govuk-error-summary__list a:focus{color:var(--govuk-focus-text-colour, #0b0c0c)}.govuk-exit-this-page{margin-bottom:30px;position:-webkit-sticky;position:sticky;z-index:1000;top:0;left:0;width:100%}@media(min-width: 40.0625em){.govuk-exit-this-page{margin-bottom:50px}}@media(min-width: 40.0625em){.govuk-exit-this-page{display:inline-block;right:0;left:auto;width:auto;float:right}}.govuk-exit-this-page__button{margin-bottom:0}.govuk-exit-this-page__indicator{padding:10px;display:none;padding-bottom:0;pointer-events:none;color:inherit;line-height:0;text-align:center}.govuk-exit-this-page__indicator--visible{display:block}.govuk-exit-this-page__indicator-light{box-sizing:border-box;display:inline-block;width:.75em;height:.75em;margin:0 .125em;border-width:2px;border-style:solid;border-radius:50%;border-color:currentcolor}.govuk-exit-this-page__indicator-light--on{border-width:.375em}@media only print{.govuk-exit-this-page{display:none}}.govuk-exit-this-page-overlay{position:fixed;z-index:9999;top:0;right:0;bottom:0;left:0;color:CanvasText;background-color:Canvas}.govuk-exit-this-page-hide-content *{display:none !important}.govuk-exit-this-page-hide-content .govuk-exit-this-page-overlay{display:block !important}.govuk-file-upload{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1.3157894737;max-width:100%;margin-left:-5px;padding:5px;color:var(--govuk-text-colour, #0b0c0c)}@media print{.govuk-file-upload{font-family:sans-serif}}@media print{.govuk-file-upload{font-size:14pt;line-height:1.15}}.govuk-file-upload::-webkit-file-upload-button{color:inherit;font:inherit;-webkit-appearance:button}.govuk-file-upload:focus{outline:3px solid;outline-color:var(--govuk-focus-colour, #ffdd00);box-shadow:inset 0 0 0 4px var(--govuk-input-border-colour, #0b0c0c)}.govuk-file-upload:focus-within{outline:3px solid;outline-color:var(--govuk-focus-colour, #ffdd00);box-shadow:inset 0 0 0 4px var(--govuk-input-border-colour, #0b0c0c)}.govuk-file-upload:disabled{opacity:.5;cursor:not-allowed}.govuk-file-upload-wrapper,.govuk-drop-zone{display:block;position:relative;z-index:0;background-color:var(--govuk-body-background-colour, #ffffff)}.govuk-file-upload-wrapper--disabled{cursor:not-allowed}.govuk-file-upload-button__pseudo-button{flex-shrink:0;width:auto;margin-right:10px;margin-bottom:3px}.govuk-file-upload-button__instruction{margin-top:7px;margin-bottom:0;text-align:left}.govuk-file-upload-button__status{display:block;margin-bottom:10px;padding:15px 10px;color:#fff;background-color:#1d70b8;text-align:left;word-wrap:break-word;overflow-wrap:break-word}.govuk-file-upload-button__pseudo-button-container{display:flex;flex-wrap:wrap;align-items:baseline}.govuk-file-upload-button{width:100%;padding:18px;border:2px solid #cecece;background-color:#fff;cursor:pointer}@media(min-width: 40.0625em){.govuk-file-upload-button{padding:23px}}.govuk-form-group--error .govuk-file-upload-button{border-style:solid;border-color:var(--govuk-error-colour, #ca3535)}.govuk-file-upload-button .govuk-file-upload-button__pseudo-button{background-color:#f3f3f3}.govuk-file-upload-button:hover{border-style:dashed;border-color:#858686}.govuk-file-upload-button:hover .govuk-file-upload-button__pseudo-button{background-color:#cecece}.govuk-file-upload-button:hover .govuk-file-upload-button__status{background-color:#1d70b8}.govuk-file-upload-button:active,.govuk-file-upload-button:focus{border:2px solid #0b0c0c;outline:3px solid;outline-color:var(--govuk-focus-colour, #ffdd00);outline-offset:0;background-color:#f3f3f3;box-shadow:inset 0 0 0 2px}.govuk-file-upload-button:active .govuk-file-upload-button__pseudo-button,.govuk-file-upload-button:focus .govuk-file-upload-button__pseudo-button{background-color:var(--govuk-focus-colour, #ffdd00);box-shadow:0 2px 0 #0b0c0c}.govuk-file-upload-button:active:hover .govuk-file-upload-button__pseudo-button,.govuk-file-upload-button:focus:hover .govuk-file-upload-button__pseudo-button{border-color:var(--govuk-focus-colour, #ffdd00);outline:3px solid rgba(0,0,0,0);background-color:#cecece;box-shadow:inset 0 0 0 1px var(--govuk-focus-colour, #ffdd00)}.govuk-file-upload-button--empty{border-style:dashed;background-color:#fff}.govuk-file-upload-button--empty .govuk-file-upload-button__pseudo-button{background-color:#f3f3f3}.govuk-file-upload-button--empty .govuk-file-upload-button__status{color:#0b0c0c;background-color:#d2e2f1}.govuk-file-upload-button--empty:hover,.govuk-file-upload-button--empty:focus,.govuk-file-upload-button--empty:active{background-color:#f3f3f3}.govuk-file-upload-button--empty:hover .govuk-file-upload-button__status,.govuk-file-upload-button--empty:focus .govuk-file-upload-button__status,.govuk-file-upload-button--empty:active .govuk-file-upload-button__status{background-color:#d2e2f1}.govuk-file-upload-button--dragging{border-style:solid;border-color:#0b0c0c}.govuk-file-upload-button--dragging.govuk-file-upload-button--empty{background-color:#f3f3f3}.govuk-file-upload-button:disabled{pointer-events:none;opacity:.5;background-color:#fff}.govuk-file-upload-button:disabled .govuk-file-upload-button__pseudo-button{background-color:#f3f3f3}.govuk-file-upload-button:disabled .govuk-file-upload-button__status{background-color:#d2e2f1}.govuk-footer{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1.3157894737;padding-top:25px;padding-bottom:15px;border-top:10px solid;border-top-color:var(--govuk-brand-colour, #1d70b8);color:var(--govuk-surface-text-colour, #0b0c0c);background:var(--govuk-template-background-colour, #f4f8fb)}@media print{.govuk-footer{font-family:sans-serif}}@media print{.govuk-footer{font-size:14pt;line-height:1.15}}@media(min-width: 40.0625em){.govuk-footer{padding-top:40px}}@media(min-width: 40.0625em){.govuk-footer{padding-bottom:25px}}.govuk-footer__crown{margin-bottom:25px}.govuk-footer__link{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:underline;text-decoration-thickness:max(1px, .0625rem);text-underline-offset:.1578em}@media print{.govuk-footer__link{font-family:sans-serif}}.govuk-footer__link:hover{text-decoration-thickness:max(3px, .1875rem, .12em);-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;-webkit-text-decoration-skip:none;text-decoration-skip:none}.govuk-footer__link:focus{outline:3px solid rgba(0,0,0,0);color:var(--govuk-focus-text-colour, #0b0c0c);background-color:var(--govuk-focus-colour, #ffdd00);box-shadow:0 -2px var(--govuk-focus-colour, #ffdd00),0 4px var(--govuk-focus-text-colour, #0b0c0c);text-decoration:none}@supports not (text-wrap: balance){.govuk-footer__link:focus{-webkit-box-decoration-break:clone;box-decoration-break:clone}}.govuk-footer__link:link{color:var(--govuk-link-colour, #1a65a6)}.govuk-footer__link:visited{color:var(--govuk-link-visited-colour, #54319f)}.govuk-footer__link:hover{color:var(--govuk-link-hover-colour, #0f385c)}.govuk-footer__link:active{color:var(--govuk-link-active-colour, #0b0c0c)}.govuk-footer__link:focus{color:var(--govuk-focus-text-colour, #0b0c0c)}.govuk-footer__section-break{margin:0;margin-bottom:30px;border:0;border-bottom-width:1px;border-bottom-style:solid;border-bottom-color:var(--govuk-surface-border-colour, #8eb8dc)}@media(min-width: 40.0625em){.govuk-footer__section-break{margin-bottom:50px}}.govuk-footer__meta{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:center;margin-right:-15px;margin-left:-15px}.govuk-footer__meta-item{margin-right:15px;margin-bottom:25px;margin-left:15px}.govuk-footer__meta-item--grow{flex:1}@media(max-width: 40.0525em){.govuk-footer__meta-item--grow{flex-basis:320px}}.govuk-footer__licence-logo{display:inline-block;margin-right:10px;vertical-align:top;forced-color-adjust:auto}@media(max-width: 48.0525em){.govuk-footer__licence-logo{margin-bottom:15px}}.govuk-footer__licence-description{display:inline-block;text-wrap:balance}.govuk-footer__copyright-logo:link,.govuk-footer__copyright-logo:visited,.govuk-footer__copyright-logo:active{color:var(--govuk-text-colour, #0b0c0c)}.govuk-footer__copyright-logo:focus{color:var(--govuk-focus-text-colour, #0b0c0c)}.govuk-footer__copyright-logo::before{content:"";display:block;width:100%;padding-top:112px;background-image:url("/assets/images/govuk-crest.svg");background-repeat:no-repeat;background-position:50% 0%;background-size:125px 102px;text-align:center;white-space:nowrap}@supports(-webkit-mask-position: initial) or (mask-position: initial){.govuk-footer__copyright-logo::before{background:currentcolor;-webkit-mask-image:url("/assets/images/govuk-crest.svg");mask-image:url("/assets/images/govuk-crest.svg");-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:50% 0%;mask-position:50% 0%;-webkit-mask-size:125px 102px;mask-size:125px 102px}@media screen and (forced-colors: active){.govuk-footer__copyright-logo::before{background:linktext}}}.govuk-footer__inline-list{margin-top:0;margin-bottom:15px;padding:0}.govuk-footer__inline-list:last-child{margin-bottom:0}.govuk-footer__meta-custom{margin-bottom:20px}.govuk-footer__meta-custom:last-child{margin-bottom:0}.govuk-footer__inline-list-item{display:inline-block;margin-right:15px;margin-bottom:5px}.govuk-footer__heading{margin-bottom:30px;padding-bottom:20px;border-bottom-width:1px;border-bottom-style:solid;border-bottom-color:var(--govuk-surface-border-colour, #8eb8dc)}@media(max-width: 40.0525em){.govuk-footer__heading{padding-bottom:10px}}.govuk-footer__navigation{margin-right:-15px;margin-left:-15px}.govuk-footer__navigation::after{content:"";display:block;clear:both}.govuk-footer__section{display:inline-block;margin-bottom:30px;vertical-align:top}.govuk-footer__list{column-gap:30px;margin:0;padding:0;list-style:none}@media(min-width: 48.0625em){.govuk-footer__list--columns-2{column-count:2}.govuk-footer__list--columns-3{column-count:3}}.govuk-footer__list-item{margin-bottom:15px}@media(min-width: 40.0625em){.govuk-footer__list-item{margin-bottom:20px}}.govuk-footer__list-item:last-child{margin-bottom:0}.govuk-generic-header{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1rem;line-height:1;border-bottom:1px solid rgba(0,0,0,0);--govuk-text-colour: #ffffff;color:var(--govuk-text-colour, #0b0c0c);background:#0b0c0c}@media print{.govuk-generic-header{font-family:sans-serif}}@media print{.govuk-generic-header{font-size:14pt;line-height:1}}@media print{.govuk-generic-header{border-bottom-width:0;--govuk-text-colour: inherit;background:rgba(0,0,0,0)}}.govuk-generic-header__container--full-width{padding:0 15px}.govuk-generic-header__logo{padding-top:15px;padding-bottom:15px}.govuk-generic-header__homepage-link{display:inline;margin-right:10px;font-size:30px;text-decoration:none}.govuk-generic-header__homepage-link:link,.govuk-generic-header__homepage-link:visited,.govuk-generic-header__homepage-link:active{color:var(--govuk-text-colour, #0b0c0c)}.govuk-generic-header__homepage-link:focus{color:var(--govuk-focus-text-colour, #0b0c0c)}.govuk-generic-header__homepage-link:link,.govuk-generic-header__homepage-link:visited{text-decoration:none}.govuk-generic-header__homepage-link:hover,.govuk-generic-header__homepage-link:active{margin-bottom:-3px;border-bottom:3px solid}.govuk-generic-header__homepage-link:focus{margin-bottom:0;border-bottom:0;outline:3px solid rgba(0,0,0,0);color:var(--govuk-focus-text-colour, #0b0c0c);background-color:var(--govuk-focus-colour, #ffdd00);box-shadow:0 -2px var(--govuk-focus-colour, #ffdd00),0 4px var(--govuk-focus-text-colour, #0b0c0c);text-decoration:none}@supports not (text-wrap: balance){.govuk-generic-header__homepage-link:focus{-webkit-box-decoration-break:clone;box-decoration-break:clone}}@media print{.govuk-generic-header__homepage-link:link,.govuk-generic-header__homepage-link:visited{color:var(--govuk-text-colour, #0b0c0c)}.govuk-generic-header__homepage-link::after{content:""}}.govuk-generic-header__homepage-link>*{vertical-align:top}.govuk-header{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1rem;line-height:1;border-bottom:1px solid rgba(0,0,0,0);--govuk-text-colour: var(--govuk-inverse-text-colour, #ffffff);color:var(--govuk-text-colour, #0b0c0c);background:var(--govuk-brand-colour, #1d70b8)}@media print{.govuk-header{font-family:sans-serif}}@media print{.govuk-header{font-size:14pt;line-height:1}}@media print{.govuk-header{border-bottom-width:0;--govuk-text-colour: inherit;background:rgba(0,0,0,0)}}.govuk-header__container--full-width{padding:0 15px}.govuk-header__logo{padding-top:16px;padding-bottom:12px}.govuk-header__homepage-link{display:inline;margin-right:10px;font-size:30px;text-decoration:none;word-spacing:-0.375rem}.govuk-header__homepage-link:link,.govuk-header__homepage-link:visited,.govuk-header__homepage-link:active{color:var(--govuk-text-colour, #0b0c0c)}.govuk-header__homepage-link:focus{color:var(--govuk-focus-text-colour, #0b0c0c)}.govuk-header__homepage-link:link,.govuk-header__homepage-link:visited{text-decoration:none}.govuk-header__homepage-link:hover,.govuk-header__homepage-link:active{margin-bottom:-3px;border-bottom:3px solid}.govuk-header__homepage-link:focus{margin-bottom:0;border-bottom:0;outline:3px solid rgba(0,0,0,0);color:var(--govuk-focus-text-colour, #0b0c0c);background-color:var(--govuk-focus-colour, #ffdd00);box-shadow:0 -2px var(--govuk-focus-colour, #ffdd00),0 4px var(--govuk-focus-text-colour, #0b0c0c);text-decoration:none}@supports not (text-wrap: balance){.govuk-header__homepage-link:focus{-webkit-box-decoration-break:clone;box-decoration-break:clone}}@media print{.govuk-header__homepage-link:link,.govuk-header__homepage-link:visited{color:var(--govuk-text-colour, #0b0c0c)}.govuk-header__homepage-link::after{content:""}}.govuk-header__homepage-link>*{word-spacing:0}.govuk-header__logotype{display:inline-block;position:relative;top:-3px;margin-right:.4375rem;margin-bottom:2px;fill:currentcolor;vertical-align:top}@media(forced-colors: active){.govuk-header__logotype{color:linktext;forced-color-adjust:none}}.govuk-header__logotype:last-child{margin-right:0}.govuk-logo-dot{fill:#00ffe0}@media print{.govuk-logo-dot{fill:currentcolor}}@media(forced-colors: active){.govuk-logo-dot{fill:currentcolor}}:focus .govuk-logo-dot{fill:currentcolor}.govuk-header__product-name{display:inline-table;margin-bottom:-0.0625rem;font-size:1.9375rem;letter-spacing:-0.015em;vertical-align:top;forced-color-adjust:none}@media screen and (forced-colors: active){.govuk-header__product-name{color:LinkText;background:rgba(0,0,0,0)}}@media print{@-moz-document url-prefix(){.govuk-header__product-name{margin-top:2px}}}.govuk-inset-text{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1.3157894737;padding:15px;margin-top:20px;margin-bottom:20px;clear:both;border-left:10px solid;border-left-color:var(--govuk-border-colour, #cecece);color:var(--govuk-text-colour, #0b0c0c)}@media print{.govuk-inset-text{font-family:sans-serif}}@media print{.govuk-inset-text{font-size:14pt;line-height:1.15}}@media(min-width: 40.0625em){.govuk-inset-text{margin-top:30px}}@media(min-width: 40.0625em){.govuk-inset-text{margin-bottom:30px}}.govuk-inset-text>:first-child{margin-top:0}.govuk-inset-text>:only-child,.govuk-inset-text>:last-child{margin-bottom:0}.govuk-notification-banner{--_govuk-notification-banner-colour: var(--govuk-brand-colour, #1d70b8);--_govuk-notification-banner-title-text-colour: var(--govuk-inverse-text-colour, #ffffff);font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1.3157894737;margin-bottom:30px;border:5px solid;border-color:var(--_govuk-notification-banner-colour)}@media print{.govuk-notification-banner{font-family:sans-serif}}@media print{.govuk-notification-banner{font-size:14pt;line-height:1.15}}@media(min-width: 40.0625em){.govuk-notification-banner{margin-bottom:50px}}.govuk-notification-banner:focus{outline:3px solid;outline-color:var(--govuk-focus-colour, #ffdd00)}.govuk-notification-banner__header{padding:2px 15px 5px;border-bottom:1px solid rgba(0,0,0,0);color:var(--_govuk-notification-banner-title-text-colour);background-color:var(--_govuk-notification-banner-colour)}@media(min-width: 40.0625em){.govuk-notification-banner__header{padding:2px 20px 5px}}.govuk-notification-banner__title{font-size:1.1875rem;line-height:1.3157894737;font-weight:700;margin:0;padding:0}@media print{.govuk-notification-banner__title{font-size:14pt;line-height:1.15}}.govuk-notification-banner__content{padding:15px;color:var(--govuk-text-colour, #0b0c0c);background-color:var(--govuk-body-background-colour, #ffffff)}@media(min-width: 40.0625em){.govuk-notification-banner__content{padding:20px}}.govuk-notification-banner__content>*{box-sizing:border-box;max-width:605px}.govuk-notification-banner__content>:last-child{margin-bottom:0}.govuk-notification-banner__heading{font-size:1.3125rem;line-height:1.1904761905;font-weight:700;margin:0 0 15px;padding:0}@media(min-width: 40.0625em){.govuk-notification-banner__heading{font-size:1.5rem;line-height:1.25}}@media print{.govuk-notification-banner__heading{font-size:18pt;line-height:1.15}}.govuk-notification-banner__link{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:underline;text-decoration-thickness:max(1px, .0625rem);text-underline-offset:.1578em}@media print{.govuk-notification-banner__link{font-family:sans-serif}}.govuk-notification-banner__link:hover{text-decoration-thickness:max(3px, .1875rem, .12em);-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;-webkit-text-decoration-skip:none;text-decoration-skip:none}.govuk-notification-banner__link:focus{outline:3px solid rgba(0,0,0,0);color:var(--govuk-focus-text-colour, #0b0c0c);background-color:var(--govuk-focus-colour, #ffdd00);box-shadow:0 -2px var(--govuk-focus-colour, #ffdd00),0 4px var(--govuk-focus-text-colour, #0b0c0c);text-decoration:none}@supports not (text-wrap: balance){.govuk-notification-banner__link:focus{-webkit-box-decoration-break:clone;box-decoration-break:clone}}.govuk-notification-banner__link:link{color:var(--govuk-link-colour, #1a65a6)}.govuk-notification-banner__link:visited{color:var(--govuk-link-colour, #1a65a6)}.govuk-notification-banner__link:hover{color:var(--govuk-link-hover-colour, #0f385c)}.govuk-notification-banner__link:active{color:var(--govuk-link-active-colour, #0b0c0c)}.govuk-notification-banner__link:focus{color:var(--govuk-focus-text-colour, #0b0c0c)}.govuk-notification-banner--success{--_govuk-notification-banner-colour: var(--govuk-success-colour, #0f7a52)}.govuk-notification-banner--success .govuk-notification-banner__link:link,.govuk-notification-banner--success .govuk-notification-banner__link:visited{color:var(--govuk-success-colour, #0f7a52)}.govuk-notification-banner--success .govuk-notification-banner__link:hover{color:#083d29}.govuk-notification-banner--success .govuk-notification-banner__link:active{color:var(--govuk-success-colour, #0f7a52)}.govuk-notification-banner--success .govuk-notification-banner__link:focus{color:var(--govuk-focus-text-colour, #0b0c0c)}.govuk-pagination{margin-bottom:20px;display:flex;flex-direction:column;flex-wrap:wrap;align-items:center}@media(min-width: 40.0625em){.govuk-pagination{margin-bottom:30px}}@media(min-width: 40.0625em){.govuk-pagination{flex-direction:row;align-items:flex-start}}.govuk-pagination__list{margin:0;padding:0;list-style:none}.govuk-pagination__item,.govuk-pagination__next,.govuk-pagination__prev{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1.3157894737;box-sizing:border-box;position:relative;min-width:45px;min-height:45px;padding:10px 15px;float:left}@media print{.govuk-pagination__item,.govuk-pagination__next,.govuk-pagination__prev{font-family:sans-serif}}@media print{.govuk-pagination__item,.govuk-pagination__next,.govuk-pagination__prev{font-size:14pt;line-height:1.15}}.govuk-pagination__item:hover,.govuk-pagination__next:hover,.govuk-pagination__prev:hover{background-color:#f3f3f3}.govuk-pagination__item{display:none;text-align:center}@media(min-width: 40.0625em){.govuk-pagination__item{display:block}}.govuk-pagination__prev,.govuk-pagination__next{font-weight:700}.govuk-pagination__prev .govuk-pagination__link,.govuk-pagination__next .govuk-pagination__link{display:flex;align-items:center}.govuk-pagination__prev{padding-left:0}.govuk-pagination__next{padding-right:0}.govuk-pagination__item--current,.govuk-pagination__item--ellipsis,.govuk-pagination__item:first-child,.govuk-pagination__item:last-child{display:block}.govuk-pagination__item--current{font-weight:700;outline:1px solid rgba(0,0,0,0);background-color:var(--govuk-link-colour, #1a65a6)}.govuk-pagination__item--current:hover{background-color:var(--govuk-link-colour, #1a65a6)}.govuk-pagination__item--current .govuk-pagination__link:link,.govuk-pagination__item--current .govuk-pagination__link:visited{color:var(--govuk-inverse-text-colour, #ffffff)}.govuk-pagination__item--current .govuk-pagination__link:focus{color:var(--govuk-focus-text-colour, #0b0c0c)}.govuk-pagination__item--ellipsis{font-weight:700;color:var(--govuk-secondary-text-colour, #484949)}.govuk-pagination__item--ellipsis:hover{background-color:rgba(0,0,0,0)}.govuk-pagination__link{display:block;min-width:15px}@media screen{.govuk-pagination__link::after{content:"";position:absolute;top:0;right:0;bottom:0;left:0}}.govuk-pagination__link:hover .govuk-pagination__link-title--decorated,.govuk-pagination__link:active .govuk-pagination__link-title--decorated{text-decoration:underline;text-decoration-thickness:max(1px, .0625rem);text-underline-offset:.1578em}.govuk-pagination__link:hover .govuk-pagination__link-label,.govuk-pagination__link:hover .govuk-pagination__link-title--decorated,.govuk-pagination__link:active .govuk-pagination__link-label,.govuk-pagination__link:active .govuk-pagination__link-title--decorated{text-decoration-thickness:max(3px, .1875rem, .12em);-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;-webkit-text-decoration-skip:none;text-decoration-skip:none}.govuk-pagination__link:focus .govuk-pagination__icon{color:var(--govuk-focus-text-colour, #0b0c0c)}.govuk-pagination__link:focus .govuk-pagination__link-label{text-decoration:none}.govuk-pagination__link:focus .govuk-pagination__link-title--decorated{text-decoration:none}.govuk-pagination__link-title{text-decoration-thickness:inherit}.govuk-pagination__link-label{font-weight:400;text-decoration:underline;text-decoration-thickness:max(1px, .0625rem);text-underline-offset:.1578em;display:inline-block}.govuk-pagination__icon{width:.9375rem;height:.8125rem;color:var(--govuk-secondary-text-colour, #484949);fill:currentcolor;forced-color-adjust:auto}.govuk-pagination__icon--prev{margin-right:15px}.govuk-pagination__icon--next{margin-left:15px}.govuk-pagination--block{display:block}.govuk-pagination--block .govuk-pagination__next,.govuk-pagination--block .govuk-pagination__prev{padding-left:0;float:none}.govuk-pagination--block .govuk-pagination__next .govuk-pagination__link,.govuk-pagination--block .govuk-pagination__prev .govuk-pagination__link{display:inline-block}.govuk-pagination--block .govuk-pagination__next{padding-right:15px}.govuk-pagination--block .govuk-pagination__prev+.govuk-pagination__next{border-top:1px solid;border-top-color:var(--govuk-border-colour, #cecece)}.govuk-pagination--block .govuk-pagination__link-title::after{content:"";display:block}.govuk-pagination--block .govuk-pagination__link{padding-left:30px;text-align:left}.govuk-pagination--block .govuk-pagination__link:not(:focus){text-decoration:none}.govuk-pagination--block .govuk-pagination__icon{margin-top:.326em;margin-left:-30px;float:left}.govuk-panel{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.6875rem;line-height:1.1111111111;box-sizing:border-box;margin-bottom:15px;padding:35px;border:5px solid rgba(0,0,0,0);color:var(--govuk-text-colour, #0b0c0c);text-align:center}@media print{.govuk-panel{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-panel{font-size:2.25rem;line-height:1.1111111111}}@media print{.govuk-panel{font-size:24pt;line-height:1.05}}@media(max-width: 40.0525em){.govuk-panel{padding:15px;word-wrap:break-word;overflow-wrap:break-word}}.govuk-panel__title{font-size:2rem;line-height:1.09375;font-weight:700;margin-top:0;margin-bottom:30px}@media(min-width: 40.0625em){.govuk-panel__title{font-size:3rem;line-height:1.0416666667}}@media print{.govuk-panel__title{font-size:32pt;line-height:1.15}}.govuk-panel__title:last-child,.govuk-panel__body>:last-child,.govuk-panel__actions>:last-child{margin-bottom:0}@media(min-width: 40.0625em){.govuk-panel__actions>.govuk-button-group:last-child{margin-bottom:-10px}}.govuk-panel__body:not(:last-child){margin-bottom:40px}.govuk-panel--confirmation{--govuk-text-colour: var(--govuk-inverse-text-colour, #ffffff);background:var(--govuk-success-colour, #0f7a52)}.govuk-panel--interruption{--govuk-text-colour: var(--govuk-inverse-text-colour, #ffffff);background:var(--govuk-brand-colour, #1d70b8);text-align:left}.govuk-panel--interruption .govuk-panel__title{font-size:1.6875rem;line-height:1.1111111111;margin-bottom:15px}@media(min-width: 40.0625em){.govuk-panel--interruption .govuk-panel__title{font-size:2.25rem;line-height:1.1111111111}}@media print{.govuk-panel--interruption .govuk-panel__title{font-size:24pt;line-height:1.05}}@media print{.govuk-panel{--govuk-text-colour: inherit;border-color:currentcolor;background:none}}@media(min-width: 20em){.govuk-password-input__wrapper{flex-direction:row;align-items:flex-start}}.govuk-password-input__input::-ms-reveal{display:none}.govuk-password-input__toggle{margin-top:5px;margin-bottom:0}.govuk-password-input__toggle[hidden]{display:none}@media(min-width: 20em){.govuk-password-input__toggle{flex-basis:5em;flex-shrink:0;width:auto;margin-top:0;margin-left:5px}}.govuk-tag{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1.3157894737;color:#0f385c;background-color:#d2e2f1;display:inline-block;max-width:160px;margin-top:-2px;margin-bottom:-3px;padding-top:2px;padding-right:8px;padding-bottom:3px;padding-left:8px;border-radius:1px;text-decoration:none;overflow-wrap:break-word}@media print{.govuk-tag{font-family:sans-serif}}@media print{.govuk-tag{font-size:14pt;line-height:1.15}}@media screen and (forced-colors: active){.govuk-tag{font-weight:bold}}.govuk-tag--green{color:#083d29;background-color:#cfe4dc}.govuk-tag--purple{color:#2a1950;background-color:#ddd6ec}.govuk-tag--red{color:#651b1b;background-color:#f4d7d7}.govuk-tag--orange{color:#7a3c1c;background-color:#fde4d7}.govuk-tag--teal{color:#0b4144;background-color:#d0e6e7}.govuk-tag--magenta{color:#651b3e;background-color:#f4d7e5}.govuk-tag--yellow{color:#7a3c1c;background-color:#ffee80}.govuk-tag--grey{color:#0b0c0c;background-color:#cecece}.govuk-tag--turquoise{color:#0b4144;background-color:#d0e6e7}.govuk-tag--pink{color:#651b3e;background-color:#f4d7e5}.govuk-phase-banner{padding-top:10px;padding-bottom:10px;border-bottom:1px solid;border-bottom-color:var(--govuk-border-colour, #cecece)}.govuk-width-container .govuk-phase-banner.govuk-width-container{margin-right:0;margin-left:0}.govuk-phase-banner__content{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1rem;line-height:1.25;display:table;margin:0;color:var(--govuk-text-colour, #0b0c0c)}@media print{.govuk-phase-banner__content{font-family:sans-serif}}@media print{.govuk-phase-banner__content{font-size:14pt;line-height:1.2}}.govuk-phase-banner__content__tag{font-size:1rem;line-height:1.25;margin-right:15px}@media print{.govuk-phase-banner__content__tag{font-size:14pt;line-height:1.2}}@media(min-width: 40.0625em){.govuk-phase-banner__content__tag{margin-right:10px}}.govuk-phase-banner__text{display:table-cell;vertical-align:middle}.govuk-radios__item{display:flex;position:relative;flex-wrap:wrap;margin-bottom:10px}.govuk-radios__item:last-child,.govuk-radios__item:last-of-type{margin-bottom:0}.govuk-radios__input{z-index:1;width:44px;height:44px;margin:0;opacity:0;cursor:pointer}.govuk-radios__label{align-self:center;max-width:calc(
      100% - 74px
    );margin-bottom:0;padding:7px 15px;cursor:pointer;touch-action:manipulation}.govuk-radios__label::before{content:"";box-sizing:border-box;position:absolute;top:2px;left:2px;width:40px;height:40px;border:2px solid currentcolor;border-radius:50%;background:rgba(0,0,0,0)}.govuk-radios__label::after{content:"";position:absolute;top:12px;left:12px;width:0;height:0;border:10px solid currentcolor;border-radius:50%;opacity:0;background:currentcolor}.govuk-radios__hint{display:block;width:100%;margin-top:-5px;padding-right:15px;padding-left:59px}.govuk-label:not(.govuk-label--m):not(.govuk-label--l):not(.govuk-label--xl)+.govuk-radios__hint{margin-bottom:0}.govuk-radios__input:focus+.govuk-radios__label::before{border-width:4px;outline:3px solid rgba(0,0,0,0);outline-offset:1px;box-shadow:0 0 0 4px var(--govuk-focus-colour, #ffdd00)}@media screen and (forced-colors: active),(-ms-high-contrast: active){.govuk-radios__input:focus+.govuk-radios__label::before{outline-color:Highlight}}.govuk-radios__input:checked+.govuk-radios__label::after{opacity:1}.govuk-radios__input:disabled,.govuk-radios__input:disabled+.govuk-radios__label{cursor:not-allowed}.govuk-radios__input:disabled+.govuk-radios__label,.govuk-radios__input:disabled~.govuk-hint{opacity:.5}@media(min-width: 40.0625em){.govuk-radios--inline{display:flex;flex-wrap:wrap;align-items:flex-start}.govuk-radios--inline .govuk-radios__item{margin-right:20px}}.govuk-radios__divider{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1.3157894737;width:40px;margin-bottom:10px;color:var(--govuk-text-colour, #0b0c0c);text-align:center}@media print{.govuk-radios__divider{font-family:sans-serif}}@media print{.govuk-radios__divider{font-size:14pt;line-height:1.15}}.govuk-radios__conditional{margin-bottom:15px;margin-left:20px;padding-left:35px;border-left:4px solid;border-left-color:var(--govuk-border-colour, #cecece)}@media(min-width: 40.0625em){.govuk-radios__conditional{margin-bottom:20px}}.govuk-frontend-supported .govuk-radios__conditional--hidden{display:none}.govuk-radios__conditional>:last-child{margin-bottom:0}.govuk-radios--small .govuk-radios__item{margin-bottom:0}.govuk-radios--small .govuk-radios__input{margin-left:-10px}.govuk-radios--small .govuk-radios__label{max-width:calc(
        100% - 50px
      );padding-left:1px}.govuk-radios--small .govuk-radios__label::before{top:10px;left:0;width:24px;height:24px}.govuk-radios--small .govuk-radios__label::after{top:17px;left:7px;border-width:5px}.govuk-radios--small .govuk-radios__hint{padding-left:34px}.govuk-radios--small .govuk-radios__conditional{margin-left:10px;padding-left:20px}.govuk-radios--small .govuk-radios__divider{width:24px;margin-bottom:5px}.govuk-radios--small .govuk-radios__input:not(:disabled):hover+.govuk-radios__label::before{outline:4px dashed rgba(0,0,0,0);outline-offset:1px;box-shadow:0 0 0 10px var(--govuk-hover-colour, #cecece)}.govuk-radios--small .govuk-radios__input:focus:hover+.govuk-radios__label::before{box-shadow:0 0 0 4px var(--govuk-focus-colour, #ffdd00),0 0 0 10px var(--govuk-hover-colour, #cecece)}@media screen and (forced-colors: active),(-ms-high-contrast: active){.govuk-radios--small .govuk-radios__input:focus:hover+.govuk-radios__label::before{outline-color:Highlight}}@media(hover: none),(pointer: coarse){.govuk-radios--small .govuk-radios__input:not(:disabled):hover+.govuk-radios__label::before{box-shadow:initial}.govuk-radios--small .govuk-radios__input:focus:hover+.govuk-radios__label::before{box-shadow:0 0 0 4px var(--govuk-focus-colour, #ffdd00)}}.govuk-select{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1.25;box-sizing:border-box;min-width:11.5em;max-width:100%;height:2.5rem;padding:5px;border:2px solid;border-color:var(--govuk-input-border-colour, #0b0c0c);color:var(--govuk-text-colour, #0b0c0c);background-color:#fff}@media print{.govuk-select{font-family:sans-serif}}@media print{.govuk-select{font-size:14pt;line-height:1.25}}.govuk-select:focus{outline:3px solid;outline-color:var(--govuk-focus-colour, #ffdd00);outline-offset:0;box-shadow:inset 0 0 0 2px var(--govuk-input-border-colour, #0b0c0c)}.govuk-select:disabled{opacity:.5;color:inherit;cursor:not-allowed}.govuk-select--error{border-color:var(--govuk-error-colour, #ca3535)}.govuk-select--error:focus{border-color:var(--govuk-input-border-colour, #0b0c0c)}.govuk-service-navigation{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1.3157894737;border-bottom-width:1px;border-bottom-style:solid;border-bottom-color:var(--govuk-surface-border-colour, #8eb8dc);--govuk-text-colour: var(--govuk-surface-text-colour, #0b0c0c);color:var(--govuk-text-colour, #0b0c0c);background-color:var(--govuk-surface-background-colour, #f4f8fb)}@media print{.govuk-service-navigation{font-family:sans-serif}}@media print{.govuk-service-navigation{font-size:14pt;line-height:1.15}}.govuk-service-navigation__container{display:flex;flex-direction:column;align-items:start}@media(min-width: 40.0625em){.govuk-service-navigation__container{flex-direction:row;flex-wrap:wrap}}.govuk-service-navigation__item,.govuk-service-navigation__service-name{position:relative;margin:10px 0;border-width:0;border-style:solid;border-color:var(--govuk-link-colour, #1a65a6)}@media(min-width: 40.0625em){.govuk-service-navigation__item,.govuk-service-navigation__service-name{display:inline-block;margin-top:0;margin-bottom:0;padding:15px 0;line-height:1.5263157895}.govuk-service-navigation__item:not(:last-child),.govuk-service-navigation__service-name:not(:last-child){margin-right:20px}}@media(min-width: 40.0625em)and (min-width: 40.0625em){.govuk-service-navigation__item:not(:last-child),.govuk-service-navigation__service-name:not(:last-child){margin-right:30px}}.govuk-service-navigation__service-name+.govuk-service-navigation__wrapper .govuk-service-navigation__list:first-child .govuk-service-navigation__item:first-child,.govuk-service-navigation__service-name+.govuk-service-navigation__wrapper .govuk-service-navigation__toggle[hidden]+.govuk-service-navigation__list .govuk-service-navigation__item:first-child{margin-top:0}@media(max-width: 40.0525em){.govuk-service-navigation__item--active{margin-left:-15px;padding-left:10px;border-left-width:5px}}@media(min-width: 40.0625em){.govuk-service-navigation__item--active{padding-bottom:10px;border-bottom-width:5px}}.govuk-service-navigation__link{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:underline;text-decoration-thickness:max(1px, .0625rem);text-underline-offset:.1578em}@media print{.govuk-service-navigation__link{font-family:sans-serif}}.govuk-service-navigation__link:hover{text-decoration-thickness:max(3px, .1875rem, .12em);-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;-webkit-text-decoration-skip:none;text-decoration-skip:none}.govuk-service-navigation__link:focus{outline:3px solid rgba(0,0,0,0);color:var(--govuk-focus-text-colour, #0b0c0c);background-color:var(--govuk-focus-colour, #ffdd00);box-shadow:0 -2px var(--govuk-focus-colour, #ffdd00),0 4px var(--govuk-focus-text-colour, #0b0c0c);text-decoration:none}@supports not (text-wrap: balance){.govuk-service-navigation__link:focus{-webkit-box-decoration-break:clone;box-decoration-break:clone}}.govuk-service-navigation__link:not(:hover):not(:active){text-decoration:none}.govuk-service-navigation__link:link{color:var(--govuk-link-colour, #1a65a6)}.govuk-service-navigation__link:visited{color:var(--govuk-link-colour, #1a65a6)}.govuk-service-navigation__link:hover{color:var(--govuk-link-hover-colour, #0f385c)}.govuk-service-navigation__link:active{color:var(--govuk-link-active-colour, #0b0c0c)}.govuk-service-navigation__link:focus{color:var(--govuk-focus-text-colour, #0b0c0c)}.govuk-service-navigation__service-name{font-weight:700}.govuk-service-navigation__service-name .govuk-service-navigation__link:link,.govuk-service-navigation__service-name .govuk-service-navigation__link:visited,.govuk-service-navigation__service-name .govuk-service-navigation__link:active{color:var(--govuk-text-colour, #0b0c0c)}.govuk-service-navigation__service-name .govuk-service-navigation__link:focus{color:var(--govuk-focus-text-colour, #0b0c0c)}.govuk-service-navigation__wrapper{flex-grow:1}.govuk-service-navigation__toggle{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:1.1875rem;line-height:1.3157894737;display:inline-flex;align-items:center;margin:10px 0;padding:0;border:0;color:var(--govuk-link-colour, #1a65a6);background:none;word-break:break-all;cursor:pointer}@media print{.govuk-service-navigation__toggle{font-family:sans-serif}}@media print{.govuk-service-navigation__toggle{font-size:14pt;line-height:1.15}}.govuk-service-navigation__toggle:focus{outline:3px solid rgba(0,0,0,0);color:var(--govuk-focus-text-colour, #0b0c0c);background-color:var(--govuk-focus-colour, #ffdd00);box-shadow:0 -2px var(--govuk-focus-colour, #ffdd00),0 4px var(--govuk-focus-text-colour, #0b0c0c);text-decoration:none}@supports not (text-wrap: balance){.govuk-service-navigation__toggle:focus{-webkit-box-decoration-break:clone;box-decoration-break:clone}}.govuk-service-navigation__toggle::after{display:inline-block;width:0;height:0;border-style:solid;border-color:rgba(0,0,0,0);-webkit-clip-path:polygon(0% 0%, 50% 100%, 100% 0%);clip-path:polygon(0% 0%, 50% 100%, 100% 0%);border-width:8.66px 5px 0 5px;border-top-color:inherit;content:"";margin-left:5px}.govuk-service-navigation__toggle[aria-expanded=true]::after{display:inline-block;width:0;height:0;border-style:solid;border-color:rgba(0,0,0,0);-webkit-clip-path:polygon(50% 0%, 0% 100%, 100% 100%);clip-path:polygon(50% 0%, 0% 100%, 100% 100%);border-width:0 5px 8.66px;border-bottom-color:inherit}.govuk-service-navigation__toggle[hidden]{display:none}.govuk-service-navigation__service-name+.govuk-service-navigation__wrapper .govuk-service-navigation__toggle{margin-top:0}.govuk-service-navigation__list{margin:0;margin-bottom:15px;padding:0;list-style:none}@media(min-width: 40.0625em){.govuk-service-navigation__list{display:flex;flex-wrap:wrap;margin-bottom:0}}@media screen and (min-width: 40.0625em)and (min-width: 0\0 ){.govuk-service-navigation__list{display:block}}.govuk-service-navigation__active-fallback{font-weight:inherit}.govuk-service-navigation--inverse{border-bottom:none;--govuk-text-colour: var(--govuk-inverse-text-colour, #ffffff);background-color:var(--govuk-brand-colour, #1d70b8)}.govuk-service-navigation--inverse .govuk-width-container{border-width:1px 0;border-style:solid;border-color:var(--govuk-surface-border-colour, #8eb8dc)}.govuk-service-navigation--inverse .govuk-service-navigation__container{margin-top:-1px}.govuk-service-navigation--inverse .govuk-service-navigation__item,.govuk-service-navigation--inverse .govuk-service-navigation__service-name{border-color:currentcolor}.govuk-service-navigation--inverse .govuk-service-navigation__link:link,.govuk-service-navigation--inverse .govuk-service-navigation__link:visited,.govuk-service-navigation--inverse .govuk-service-navigation__link:active{color:var(--govuk-text-colour, #0b0c0c)}.govuk-service-navigation--inverse .govuk-service-navigation__link:focus{color:var(--govuk-focus-text-colour, #0b0c0c)}.govuk-service-navigation--inverse .govuk-service-navigation__toggle:not(:focus){color:currentcolor}.govuk-skip-link{text-decoration:underline;text-decoration-thickness:max(1px, .0625rem);text-underline-offset:.1578em;font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1rem;line-height:1.25;display:block;padding:10px 15px}.govuk-skip-link:not(:active):not(:focus):not(.\:focus){position:absolute !important;width:1px !important;height:1px !important;margin:0 !important;padding:0 !important;overflow:hidden !important;clip:rect(0 0 0 0) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;border:0 !important;white-space:nowrap !important;-webkit-user-select:none;-ms-user-select:none;user-select:none}.govuk-skip-link:link,.govuk-skip-link:visited,.govuk-skip-link:active{color:var(--govuk-text-colour, #0b0c0c)}.govuk-skip-link:focus{color:var(--govuk-focus-text-colour, #0b0c0c)}@media print{.govuk-skip-link{font-family:sans-serif}}@media print{.govuk-skip-link{font-size:14pt;line-height:1.2}}@supports(padding: max(calc(0px))){.govuk-skip-link{padding-right:max(15px, calc(15px + env(safe-area-inset-right)));padding-left:max(15px, calc(15px + env(safe-area-inset-left)))}}.govuk-skip-link:focus{outline:3px solid;outline-color:var(--govuk-focus-colour, #ffdd00);outline-offset:0;background-color:var(--govuk-focus-colour, #ffdd00)}@media(forced-colors: active){.govuk-skip-link:focus{outline-offset:-3px}}.govuk-skip-link-focused-element:focus{outline:none}.govuk-summary-list{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1.3157894737;color:var(--govuk-text-colour, #0b0c0c);margin:0;margin-bottom:20px}@media print{.govuk-summary-list{font-family:sans-serif}}@media print{.govuk-summary-list{font-size:14pt;line-height:1.15}}@media(min-width: 40.0625em){.govuk-summary-list{display:table;width:100%;table-layout:fixed;border-collapse:collapse}}@media(min-width: 40.0625em){.govuk-summary-list{margin-bottom:30px}}.govuk-summary-list__row{border-bottom:1px solid;border-bottom-color:var(--govuk-border-colour, #cecece)}@media(max-width: 40.0525em){.govuk-summary-list__row{margin-bottom:15px}}@media(min-width: 40.0625em){.govuk-summary-list__row{display:table-row}}.govuk-summary-list__row:not(.govuk-summary-list__row--no-actions)>:last-child{padding-right:0}@media(min-width: 40.0625em){.govuk-summary-list__row--no-actions::after{content:"";display:table-cell;width:20%}}.govuk-summary-list__key,.govuk-summary-list__value,.govuk-summary-list__actions{margin:0}@media(min-width: 40.0625em){.govuk-summary-list__key,.govuk-summary-list__value,.govuk-summary-list__actions{display:table-cell;padding-top:10px;padding-right:20px;padding-bottom:10px;vertical-align:top}}.govuk-summary-list__actions{margin-bottom:15px}@media(min-width: 40.0625em){.govuk-summary-list__actions{width:20%;text-align:right}}.govuk-summary-list__key,.govuk-summary-list__value{word-wrap:break-word;overflow-wrap:break-word}.govuk-summary-list__key{margin-bottom:5px;font-weight:700}@media(min-width: 40.0625em){.govuk-summary-list__key{width:30%}}@media(max-width: 40.0525em){.govuk-summary-list__value{margin-bottom:15px}}.govuk-summary-list__value>p{margin-bottom:10px}.govuk-summary-list__value>:last-child{margin-bottom:0}.govuk-summary-list__actions-list{width:100%;margin:0;padding:0}.govuk-summary-list__actions-list-item,.govuk-summary-card__action{display:inline-block}@media(max-width: 40.0525em){.govuk-summary-list__actions-list-item,.govuk-summary-card__action{margin-right:10px;padding-right:10px;border-right:1px solid;border-right-color:var(--govuk-border-colour, #cecece)}.govuk-summary-list__actions-list-item:last-child,.govuk-summary-card__action:last-child{margin-right:0;padding-right:0;border:0}}@media(min-width: 40.0625em){.govuk-summary-list__actions-list-item,.govuk-summary-card__action{margin-left:10px;padding-left:10px}.govuk-summary-list__actions-list-item:not(:first-child),.govuk-summary-card__action:not(:first-child){border-left:1px solid;border-left-color:var(--govuk-border-colour, #cecece)}.govuk-summary-list__actions-list-item:first-child,.govuk-summary-card__action:first-child{margin-left:0;padding-left:0;border:0}}.govuk-summary-list__actions-list-item .govuk-link:focus{isolation:isolate}.govuk-summary-list--no-border .govuk-summary-list__row{border:0}@media(min-width: 40.0625em){.govuk-summary-list--no-border .govuk-summary-list__key,.govuk-summary-list--no-border .govuk-summary-list__value,.govuk-summary-list--no-border .govuk-summary-list__actions{padding-bottom:11px}}.govuk-summary-list__row--no-border{border:0}@media(min-width: 40.0625em){.govuk-summary-list__row--no-border .govuk-summary-list__key,.govuk-summary-list__row--no-border .govuk-summary-list__value,.govuk-summary-list__row--no-border .govuk-summary-list__actions{padding-bottom:11px}}.govuk-summary-card{margin-bottom:20px;border:1px solid;border-color:var(--govuk-border-colour, #cecece)}@media(min-width: 40.0625em){.govuk-summary-card{margin-bottom:30px}}.govuk-summary-card__title-wrapper{padding:15px;border-bottom:1px solid rgba(0,0,0,0);background-color:#f3f3f3}@media(min-width: 40.0625em){.govuk-summary-card__title-wrapper{display:flex;flex-wrap:nowrap;justify-content:space-between;padding:15px 20px}}.govuk-summary-card__title{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:1.1875rem;line-height:1.3157894737;margin:5px 20px 10px 0;color:var(--govuk-text-colour, #0b0c0c)}@media print{.govuk-summary-card__title{font-family:sans-serif}}@media print{.govuk-summary-card__title{font-size:14pt;line-height:1.15}}@media(min-width: 40.0625em){.govuk-summary-card__title{margin-bottom:5px}}.govuk-summary-card__actions{font-size:1.1875rem;line-height:1.3157894737;font-weight:700;display:flex;flex-wrap:wrap;row-gap:10px;margin:5px 0;padding:0;list-style:none}@media print{.govuk-summary-card__actions{font-size:14pt;line-height:1.15}}@media(min-width: 40.0625em){.govuk-summary-card__actions{justify-content:right;text-align:right}}.govuk-summary-card__action{display:inline}@media screen and (-ms-high-contrast: active),(-ms-high-contrast: none){.govuk-summary-card__action{margin-bottom:5px}}@media screen and (-ms-high-contrast: active),(-ms-high-contrast: none){.govuk-summary-card__action:last-child{margin-bottom:0}}.govuk-summary-card__content{padding:15px 15px 0}@media(min-width: 40.0625em){.govuk-summary-card__content{padding:15px 20px}}.govuk-summary-card__content .govuk-summary-list{margin-bottom:0}.govuk-summary-card__content .govuk-summary-list__row:last-of-type{margin-bottom:0;border-bottom:none}.govuk-table{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1.3157894737;width:100%;margin-bottom:20px;border-spacing:0;border-collapse:collapse;color:var(--govuk-text-colour, #0b0c0c)}@media print{.govuk-table{font-family:sans-serif}}@media print{.govuk-table{font-size:14pt;line-height:1.15}}@media(min-width: 40.0625em){.govuk-table{margin-bottom:30px}}@media(max-width: 40.0525em){.govuk-table--small-text-until-tablet{font-size:1rem;line-height:1.25}}@media print and (max-width: 40.0525em){.govuk-table--small-text-until-tablet{font-size:14pt;line-height:1.2}}.govuk-table__header{font-weight:700}.govuk-table__header,.govuk-table__cell{padding:10px 20px 10px 0;border-bottom:1px solid;border-bottom-color:var(--govuk-border-colour, #cecece);text-align:left;vertical-align:top}.govuk-table__cell--numeric{font-variant-numeric:tabular-nums}.govuk-table__header--numeric,.govuk-table__cell--numeric{text-align:right}.govuk-table__header:last-child,.govuk-table__cell:last-child{padding-right:0}.govuk-table__caption{font-weight:700;display:table-caption;text-align:left}.govuk-table__caption--xl,.govuk-table__caption--l,.govuk-table__caption--m{margin-bottom:15px}.govuk-table__caption--xl{font-size:2rem;line-height:1.09375}@media(min-width: 40.0625em){.govuk-table__caption--xl{font-size:3rem;line-height:1.0416666667}}@media print{.govuk-table__caption--xl{font-size:32pt;line-height:1.15}}.govuk-table__caption--l{font-size:1.6875rem;line-height:1.1111111111}@media(min-width: 40.0625em){.govuk-table__caption--l{font-size:2.25rem;line-height:1.1111111111}}@media print{.govuk-table__caption--l{font-size:24pt;line-height:1.05}}.govuk-table__caption--m{font-size:1.3125rem;line-height:1.1904761905}@media(min-width: 40.0625em){.govuk-table__caption--m{font-size:1.5rem;line-height:1.25}}@media print{.govuk-table__caption--m{font-size:18pt;line-height:1.15}}.govuk-tabs{margin-top:5px;margin-bottom:20px;font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1.3157894737}@media(min-width: 40.0625em){.govuk-tabs{margin-bottom:30px}}@media print{.govuk-tabs{font-family:sans-serif}}@media print{.govuk-tabs{font-size:14pt;line-height:1.15}}.govuk-tabs__title{font-size:1.1875rem;line-height:1.3157894737;font-weight:400;margin-bottom:10px;color:var(--govuk-text-colour, #0b0c0c)}@media print{.govuk-tabs__title{font-size:14pt;line-height:1.15}}.govuk-tabs__list{margin:0;padding:0;list-style:none;margin-bottom:20px}@media(min-width: 40.0625em){.govuk-tabs__list{margin-bottom:30px}}.govuk-tabs__list-item{margin-left:25px}.govuk-tabs__list-item::before{content:"—";margin-left:-25px;padding-right:5px;color:var(--govuk-text-colour, #0b0c0c)}.govuk-tabs__tab{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:underline;text-decoration-thickness:max(1px, .0625rem);text-underline-offset:.1578em;display:inline-block;margin-bottom:10px}@media print{.govuk-tabs__tab{font-family:sans-serif}}.govuk-tabs__tab:hover{text-decoration-thickness:max(3px, .1875rem, .12em);-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;-webkit-text-decoration-skip:none;text-decoration-skip:none}.govuk-tabs__tab:focus{outline:3px solid rgba(0,0,0,0);color:var(--govuk-focus-text-colour, #0b0c0c);background-color:var(--govuk-focus-colour, #ffdd00);box-shadow:0 -2px var(--govuk-focus-colour, #ffdd00),0 4px var(--govuk-focus-text-colour, #0b0c0c);text-decoration:none}@supports not (text-wrap: balance){.govuk-tabs__tab:focus{-webkit-box-decoration-break:clone;box-decoration-break:clone}}.govuk-tabs__tab:link{color:var(--govuk-link-colour, #1a65a6)}.govuk-tabs__tab:visited{color:var(--govuk-link-visited-colour, #54319f)}.govuk-tabs__tab:hover{color:var(--govuk-link-hover-colour, #0f385c)}.govuk-tabs__tab:active{color:var(--govuk-link-active-colour, #0b0c0c)}.govuk-tabs__tab:focus{color:var(--govuk-focus-text-colour, #0b0c0c)}.govuk-tabs__panel{margin-bottom:30px}@media(min-width: 40.0625em){.govuk-tabs__panel{margin-bottom:50px}}@media(min-width: 40.0625em){.govuk-frontend-supported .govuk-tabs__list{margin-bottom:0;border-bottom:1px solid;border-bottom-color:var(--govuk-border-colour, #cecece)}.govuk-frontend-supported .govuk-tabs__list::after{content:"";display:block;clear:both}.govuk-frontend-supported .govuk-tabs__title{display:none}.govuk-frontend-supported .govuk-tabs__list-item{position:relative;margin-right:5px;margin-bottom:0;margin-left:0;padding:10px 20px;float:left;background-color:#f3f3f3;text-align:center}.govuk-frontend-supported .govuk-tabs__list-item::before{content:none}.govuk-frontend-supported .govuk-tabs__list-item--selected{position:relative;margin-top:-5px;margin-bottom:-1px;padding-top:14px;padding-right:19px;padding-bottom:16px;padding-left:19px;border:1px solid;border-bottom:0;border-color:var(--govuk-border-colour, #cecece);background-color:var(--govuk-body-background-colour, #ffffff)}.govuk-frontend-supported .govuk-tabs__list-item--selected .govuk-tabs__tab{text-decoration:none}.govuk-frontend-supported .govuk-tabs__tab{margin-bottom:0}.govuk-frontend-supported .govuk-tabs__tab:link,.govuk-frontend-supported .govuk-tabs__tab:visited,.govuk-frontend-supported .govuk-tabs__tab:active{color:var(--govuk-text-colour, #0b0c0c)}.govuk-frontend-supported .govuk-tabs__tab:focus{color:var(--govuk-focus-text-colour, #0b0c0c)}.govuk-frontend-supported .govuk-tabs__tab::after{content:"";position:absolute;top:0;right:0;bottom:0;left:0}.govuk-frontend-supported .govuk-tabs__panel{margin-bottom:0;padding:30px 20px;border:1px solid;border-top:0;border-color:var(--govuk-border-colour, #cecece)}.govuk-frontend-supported .govuk-tabs__panel>:last-child{margin-bottom:0}.govuk-frontend-supported .govuk-tabs__panel--hidden{display:none}}.govuk-task-list{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1.3157894737;margin-top:0;margin-bottom:20px;padding:0;list-style-type:none}@media print{.govuk-task-list{font-family:sans-serif}}@media print{.govuk-task-list{font-size:14pt;line-height:1.15}}@media(min-width: 40.0625em){.govuk-task-list{margin-bottom:30px}}.govuk-task-list__item{display:table;position:relative;width:100%;margin-bottom:0;padding-top:10px;padding-bottom:10px;border-bottom:1px solid;border-bottom-color:var(--govuk-border-colour, #cecece)}.govuk-task-list__item:first-child{border-top:1px solid;border-top-color:var(--govuk-border-colour, #cecece)}.govuk-task-list__item--with-link:hover{background:#f3f3f3}.govuk-task-list__name-and-hint{display:table-cell;color:var(--govuk-text-colour, #0b0c0c);vertical-align:top}.govuk-task-list__status{display:table-cell;padding-left:10px;color:var(--govuk-text-colour, #0b0c0c);text-align:right;vertical-align:top}.govuk-task-list__status--cannot-start-yet{color:var(--govuk-secondary-text-colour, #484949)}.govuk-task-list__link::after{content:"";display:block;position:absolute;top:0;right:0;bottom:0;left:0}.govuk-task-list__hint{margin-top:5px;color:var(--govuk-secondary-text-colour, #484949)}.govuk-warning-text{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:1.1875rem;line-height:1.3157894737;margin-bottom:20px;font-weight:700;position:relative;padding:10px 0}@media print{.govuk-warning-text{font-family:sans-serif}}@media print{.govuk-warning-text{font-size:14pt;line-height:1.15}}@media(min-width: 40.0625em){.govuk-warning-text{margin-bottom:30px}}.govuk-warning-text__icon{box-sizing:border-box;display:inline-block;position:absolute;left:0;min-width:35px;min-height:35px;margin-top:-7px;border:3px solid;border-radius:50%;border-color:var(--govuk-text-colour, #0b0c0c);color:var(--govuk-body-background-colour, #ffffff);background:var(--govuk-text-colour, #0b0c0c);font-size:30px;line-height:29px;text-align:center;-webkit-user-select:none;-ms-user-select:none;user-select:none;forced-color-adjust:none}@media(min-width: 40.0625em){.govuk-warning-text__icon{margin-top:-5px}}@media screen and (forced-colors: active){.govuk-warning-text__icon{border-color:windowText;color:windowText;background:rgba(0,0,0,0)}}.govuk-warning-text__text{display:block;padding-left:45px;color:var(--govuk-text-colour, #0b0c0c);font-weight:inherit}.govuk-clearfix::after{content:"";display:block;clear:both}.govuk-visually-hidden{position:absolute !important;width:1px !important;height:1px !important;margin:0 !important;padding:0 !important;overflow:hidden !important;clip:rect(0 0 0 0) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;border:0 !important;white-space:nowrap !important;-webkit-user-select:none;-ms-user-select:none;user-select:none}.govuk-visually-hidden::before{content:" "}.govuk-visually-hidden::after{content:" "}.govuk-visually-hidden-focusable:not(:active):not(:focus):not(.\:focus){position:absolute !important;width:1px !important;height:1px !important;margin:0 !important;padding:0 !important;overflow:hidden !important;clip:rect(0 0 0 0) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;border:0 !important;white-space:nowrap !important;-webkit-user-select:none;-ms-user-select:none;user-select:none}.govuk-\!-display-inline{display:inline !important}.govuk-\!-display-inline-block{display:inline-block !important}.govuk-\!-display-block{display:block !important}.govuk-\!-display-none{display:none !important}@media print{.govuk-\!-display-none-print{display:none !important}}.govuk-\!-margin-0{margin:0 !important}.govuk-\!-margin-top-0{margin-top:0 !important}.govuk-\!-margin-right-0{margin-right:0 !important}.govuk-\!-margin-bottom-0{margin-bottom:0 !important}.govuk-\!-margin-left-0{margin-left:0 !important}.govuk-\!-margin-1{margin:5px !important}.govuk-\!-margin-top-1{margin-top:5px !important}.govuk-\!-margin-right-1{margin-right:5px !important}.govuk-\!-margin-bottom-1{margin-bottom:5px !important}.govuk-\!-margin-left-1{margin-left:5px !important}.govuk-\!-margin-2{margin:10px !important}.govuk-\!-margin-top-2{margin-top:10px !important}.govuk-\!-margin-right-2{margin-right:10px !important}.govuk-\!-margin-bottom-2{margin-bottom:10px !important}.govuk-\!-margin-left-2{margin-left:10px !important}.govuk-\!-margin-3{margin:15px !important}.govuk-\!-margin-top-3{margin-top:15px !important}.govuk-\!-margin-right-3{margin-right:15px !important}.govuk-\!-margin-bottom-3{margin-bottom:15px !important}.govuk-\!-margin-left-3{margin-left:15px !important}.govuk-\!-margin-4{margin:15px !important}@media(min-width: 40.0625em){.govuk-\!-margin-4{margin:20px !important}}.govuk-\!-margin-top-4{margin-top:15px !important}@media(min-width: 40.0625em){.govuk-\!-margin-top-4{margin-top:20px !important}}.govuk-\!-margin-right-4{margin-right:15px !important}@media(min-width: 40.0625em){.govuk-\!-margin-right-4{margin-right:20px !important}}.govuk-\!-margin-bottom-4{margin-bottom:15px !important}@media(min-width: 40.0625em){.govuk-\!-margin-bottom-4{margin-bottom:20px !important}}.govuk-\!-margin-left-4{margin-left:15px !important}@media(min-width: 40.0625em){.govuk-\!-margin-left-4{margin-left:20px !important}}.govuk-\!-margin-5{margin:15px !important}@media(min-width: 40.0625em){.govuk-\!-margin-5{margin:25px !important}}.govuk-\!-margin-top-5{margin-top:15px !important}@media(min-width: 40.0625em){.govuk-\!-margin-top-5{margin-top:25px !important}}.govuk-\!-margin-right-5{margin-right:15px !important}@media(min-width: 40.0625em){.govuk-\!-margin-right-5{margin-right:25px !important}}.govuk-\!-margin-bottom-5{margin-bottom:15px !important}@media(min-width: 40.0625em){.govuk-\!-margin-bottom-5{margin-bottom:25px !important}}.govuk-\!-margin-left-5{margin-left:15px !important}@media(min-width: 40.0625em){.govuk-\!-margin-left-5{margin-left:25px !important}}.govuk-\!-margin-6{margin:20px !important}@media(min-width: 40.0625em){.govuk-\!-margin-6{margin:30px !important}}.govuk-\!-margin-top-6{margin-top:20px !important}@media(min-width: 40.0625em){.govuk-\!-margin-top-6{margin-top:30px !important}}.govuk-\!-margin-right-6{margin-right:20px !important}@media(min-width: 40.0625em){.govuk-\!-margin-right-6{margin-right:30px !important}}.govuk-\!-margin-bottom-6{margin-bottom:20px !important}@media(min-width: 40.0625em){.govuk-\!-margin-bottom-6{margin-bottom:30px !important}}.govuk-\!-margin-left-6{margin-left:20px !important}@media(min-width: 40.0625em){.govuk-\!-margin-left-6{margin-left:30px !important}}.govuk-\!-margin-7{margin:25px !important}@media(min-width: 40.0625em){.govuk-\!-margin-7{margin:40px !important}}.govuk-\!-margin-top-7{margin-top:25px !important}@media(min-width: 40.0625em){.govuk-\!-margin-top-7{margin-top:40px !important}}.govuk-\!-margin-right-7{margin-right:25px !important}@media(min-width: 40.0625em){.govuk-\!-margin-right-7{margin-right:40px !important}}.govuk-\!-margin-bottom-7{margin-bottom:25px !important}@media(min-width: 40.0625em){.govuk-\!-margin-bottom-7{margin-bottom:40px !important}}.govuk-\!-margin-left-7{margin-left:25px !important}@media(min-width: 40.0625em){.govuk-\!-margin-left-7{margin-left:40px !important}}.govuk-\!-margin-8{margin:30px !important}@media(min-width: 40.0625em){.govuk-\!-margin-8{margin:50px !important}}.govuk-\!-margin-top-8{margin-top:30px !important}@media(min-width: 40.0625em){.govuk-\!-margin-top-8{margin-top:50px !important}}.govuk-\!-margin-right-8{margin-right:30px !important}@media(min-width: 40.0625em){.govuk-\!-margin-right-8{margin-right:50px !important}}.govuk-\!-margin-bottom-8{margin-bottom:30px !important}@media(min-width: 40.0625em){.govuk-\!-margin-bottom-8{margin-bottom:50px !important}}.govuk-\!-margin-left-8{margin-left:30px !important}@media(min-width: 40.0625em){.govuk-\!-margin-left-8{margin-left:50px !important}}.govuk-\!-margin-9{margin:40px !important}@media(min-width: 40.0625em){.govuk-\!-margin-9{margin:60px !important}}.govuk-\!-margin-top-9{margin-top:40px !important}@media(min-width: 40.0625em){.govuk-\!-margin-top-9{margin-top:60px !important}}.govuk-\!-margin-right-9{margin-right:40px !important}@media(min-width: 40.0625em){.govuk-\!-margin-right-9{margin-right:60px !important}}.govuk-\!-margin-bottom-9{margin-bottom:40px !important}@media(min-width: 40.0625em){.govuk-\!-margin-bottom-9{margin-bottom:60px !important}}.govuk-\!-margin-left-9{margin-left:40px !important}@media(min-width: 40.0625em){.govuk-\!-margin-left-9{margin-left:60px !important}}.govuk-\!-padding-0{padding:0 !important}.govuk-\!-padding-top-0{padding-top:0 !important}.govuk-\!-padding-right-0{padding-right:0 !important}.govuk-\!-padding-bottom-0{padding-bottom:0 !important}.govuk-\!-padding-left-0{padding-left:0 !important}.govuk-\!-padding-1{padding:5px !important}.govuk-\!-padding-top-1{padding-top:5px !important}.govuk-\!-padding-right-1{padding-right:5px !important}.govuk-\!-padding-bottom-1{padding-bottom:5px !important}.govuk-\!-padding-left-1{padding-left:5px !important}.govuk-\!-padding-2{padding:10px !important}.govuk-\!-padding-top-2{padding-top:10px !important}.govuk-\!-padding-right-2{padding-right:10px !important}.govuk-\!-padding-bottom-2{padding-bottom:10px !important}.govuk-\!-padding-left-2{padding-left:10px !important}.govuk-\!-padding-3{padding:15px !important}.govuk-\!-padding-top-3{padding-top:15px !important}.govuk-\!-padding-right-3{padding-right:15px !important}.govuk-\!-padding-bottom-3{padding-bottom:15px !important}.govuk-\!-padding-left-3{padding-left:15px !important}.govuk-\!-padding-4{padding:15px !important}@media(min-width: 40.0625em){.govuk-\!-padding-4{padding:20px !important}}.govuk-\!-padding-top-4{padding-top:15px !important}@media(min-width: 40.0625em){.govuk-\!-padding-top-4{padding-top:20px !important}}.govuk-\!-padding-right-4{padding-right:15px !important}@media(min-width: 40.0625em){.govuk-\!-padding-right-4{padding-right:20px !important}}.govuk-\!-padding-bottom-4{padding-bottom:15px !important}@media(min-width: 40.0625em){.govuk-\!-padding-bottom-4{padding-bottom:20px !important}}.govuk-\!-padding-left-4{padding-left:15px !important}@media(min-width: 40.0625em){.govuk-\!-padding-left-4{padding-left:20px !important}}.govuk-\!-padding-5{padding:15px !important}@media(min-width: 40.0625em){.govuk-\!-padding-5{padding:25px !important}}.govuk-\!-padding-top-5{padding-top:15px !important}@media(min-width: 40.0625em){.govuk-\!-padding-top-5{padding-top:25px !important}}.govuk-\!-padding-right-5{padding-right:15px !important}@media(min-width: 40.0625em){.govuk-\!-padding-right-5{padding-right:25px !important}}.govuk-\!-padding-bottom-5{padding-bottom:15px !important}@media(min-width: 40.0625em){.govuk-\!-padding-bottom-5{padding-bottom:25px !important}}.govuk-\!-padding-left-5{padding-left:15px !important}@media(min-width: 40.0625em){.govuk-\!-padding-left-5{padding-left:25px !important}}.govuk-\!-padding-6{padding:20px !important}@media(min-width: 40.0625em){.govuk-\!-padding-6{padding:30px !important}}.govuk-\!-padding-top-6{padding-top:20px !important}@media(min-width: 40.0625em){.govuk-\!-padding-top-6{padding-top:30px !important}}.govuk-\!-padding-right-6{padding-right:20px !important}@media(min-width: 40.0625em){.govuk-\!-padding-right-6{padding-right:30px !important}}.govuk-\!-padding-bottom-6{padding-bottom:20px !important}@media(min-width: 40.0625em){.govuk-\!-padding-bottom-6{padding-bottom:30px !important}}.govuk-\!-padding-left-6{padding-left:20px !important}@media(min-width: 40.0625em){.govuk-\!-padding-left-6{padding-left:30px !important}}.govuk-\!-padding-7{padding:25px !important}@media(min-width: 40.0625em){.govuk-\!-padding-7{padding:40px !important}}.govuk-\!-padding-top-7{padding-top:25px !important}@media(min-width: 40.0625em){.govuk-\!-padding-top-7{padding-top:40px !important}}.govuk-\!-padding-right-7{padding-right:25px !important}@media(min-width: 40.0625em){.govuk-\!-padding-right-7{padding-right:40px !important}}.govuk-\!-padding-bottom-7{padding-bottom:25px !important}@media(min-width: 40.0625em){.govuk-\!-padding-bottom-7{padding-bottom:40px !important}}.govuk-\!-padding-left-7{padding-left:25px !important}@media(min-width: 40.0625em){.govuk-\!-padding-left-7{padding-left:40px !important}}.govuk-\!-padding-8{padding:30px !important}@media(min-width: 40.0625em){.govuk-\!-padding-8{padding:50px !important}}.govuk-\!-padding-top-8{padding-top:30px !important}@media(min-width: 40.0625em){.govuk-\!-padding-top-8{padding-top:50px !important}}.govuk-\!-padding-right-8{padding-right:30px !important}@media(min-width: 40.0625em){.govuk-\!-padding-right-8{padding-right:50px !important}}.govuk-\!-padding-bottom-8{padding-bottom:30px !important}@media(min-width: 40.0625em){.govuk-\!-padding-bottom-8{padding-bottom:50px !important}}.govuk-\!-padding-left-8{padding-left:30px !important}@media(min-width: 40.0625em){.govuk-\!-padding-left-8{padding-left:50px !important}}.govuk-\!-padding-9{padding:40px !important}@media(min-width: 40.0625em){.govuk-\!-padding-9{padding:60px !important}}.govuk-\!-padding-top-9{padding-top:40px !important}@media(min-width: 40.0625em){.govuk-\!-padding-top-9{padding-top:60px !important}}.govuk-\!-padding-right-9{padding-right:40px !important}@media(min-width: 40.0625em){.govuk-\!-padding-right-9{padding-right:60px !important}}.govuk-\!-padding-bottom-9{padding-bottom:40px !important}@media(min-width: 40.0625em){.govuk-\!-padding-bottom-9{padding-bottom:60px !important}}.govuk-\!-padding-left-9{padding-left:40px !important}@media(min-width: 40.0625em){.govuk-\!-padding-left-9{padding-left:60px !important}}.govuk-\!-static-margin-0{margin:0 !important}.govuk-\!-static-margin-top-0{margin-top:0 !important}.govuk-\!-static-margin-right-0{margin-right:0 !important}.govuk-\!-static-margin-bottom-0{margin-bottom:0 !important}.govuk-\!-static-margin-left-0{margin-left:0 !important}.govuk-\!-static-margin-1{margin:5px !important}.govuk-\!-static-margin-top-1{margin-top:5px !important}.govuk-\!-static-margin-right-1{margin-right:5px !important}.govuk-\!-static-margin-bottom-1{margin-bottom:5px !important}.govuk-\!-static-margin-left-1{margin-left:5px !important}.govuk-\!-static-margin-2{margin:10px !important}.govuk-\!-static-margin-top-2{margin-top:10px !important}.govuk-\!-static-margin-right-2{margin-right:10px !important}.govuk-\!-static-margin-bottom-2{margin-bottom:10px !important}.govuk-\!-static-margin-left-2{margin-left:10px !important}.govuk-\!-static-margin-3{margin:15px !important}.govuk-\!-static-margin-top-3{margin-top:15px !important}.govuk-\!-static-margin-right-3{margin-right:15px !important}.govuk-\!-static-margin-bottom-3{margin-bottom:15px !important}.govuk-\!-static-margin-left-3{margin-left:15px !important}.govuk-\!-static-margin-4{margin:20px !important}.govuk-\!-static-margin-top-4{margin-top:20px !important}.govuk-\!-static-margin-right-4{margin-right:20px !important}.govuk-\!-static-margin-bottom-4{margin-bottom:20px !important}.govuk-\!-static-margin-left-4{margin-left:20px !important}.govuk-\!-static-margin-5{margin:25px !important}.govuk-\!-static-margin-top-5{margin-top:25px !important}.govuk-\!-static-margin-right-5{margin-right:25px !important}.govuk-\!-static-margin-bottom-5{margin-bottom:25px !important}.govuk-\!-static-margin-left-5{margin-left:25px !important}.govuk-\!-static-margin-6{margin:30px !important}.govuk-\!-static-margin-top-6{margin-top:30px !important}.govuk-\!-static-margin-right-6{margin-right:30px !important}.govuk-\!-static-margin-bottom-6{margin-bottom:30px !important}.govuk-\!-static-margin-left-6{margin-left:30px !important}.govuk-\!-static-margin-7{margin:40px !important}.govuk-\!-static-margin-top-7{margin-top:40px !important}.govuk-\!-static-margin-right-7{margin-right:40px !important}.govuk-\!-static-margin-bottom-7{margin-bottom:40px !important}.govuk-\!-static-margin-left-7{margin-left:40px !important}.govuk-\!-static-margin-8{margin:50px !important}.govuk-\!-static-margin-top-8{margin-top:50px !important}.govuk-\!-static-margin-right-8{margin-right:50px !important}.govuk-\!-static-margin-bottom-8{margin-bottom:50px !important}.govuk-\!-static-margin-left-8{margin-left:50px !important}.govuk-\!-static-margin-9{margin:60px !important}.govuk-\!-static-margin-top-9{margin-top:60px !important}.govuk-\!-static-margin-right-9{margin-right:60px !important}.govuk-\!-static-margin-bottom-9{margin-bottom:60px !important}.govuk-\!-static-margin-left-9{margin-left:60px !important}.govuk-\!-static-padding-0{padding:0 !important}.govuk-\!-static-padding-top-0{padding-top:0 !important}.govuk-\!-static-padding-right-0{padding-right:0 !important}.govuk-\!-static-padding-bottom-0{padding-bottom:0 !important}.govuk-\!-static-padding-left-0{padding-left:0 !important}.govuk-\!-static-padding-1{padding:5px !important}.govuk-\!-static-padding-top-1{padding-top:5px !important}.govuk-\!-static-padding-right-1{padding-right:5px !important}.govuk-\!-static-padding-bottom-1{padding-bottom:5px !important}.govuk-\!-static-padding-left-1{padding-left:5px !important}.govuk-\!-static-padding-2{padding:10px !important}.govuk-\!-static-padding-top-2{padding-top:10px !important}.govuk-\!-static-padding-right-2{padding-right:10px !important}.govuk-\!-static-padding-bottom-2{padding-bottom:10px !important}.govuk-\!-static-padding-left-2{padding-left:10px !important}.govuk-\!-static-padding-3{padding:15px !important}.govuk-\!-static-padding-top-3{padding-top:15px !important}.govuk-\!-static-padding-right-3{padding-right:15px !important}.govuk-\!-static-padding-bottom-3{padding-bottom:15px !important}.govuk-\!-static-padding-left-3{padding-left:15px !important}.govuk-\!-static-padding-4{padding:20px !important}.govuk-\!-static-padding-top-4{padding-top:20px !important}.govuk-\!-static-padding-right-4{padding-right:20px !important}.govuk-\!-static-padding-bottom-4{padding-bottom:20px !important}.govuk-\!-static-padding-left-4{padding-left:20px !important}.govuk-\!-static-padding-5{padding:25px !important}.govuk-\!-static-padding-top-5{padding-top:25px !important}.govuk-\!-static-padding-right-5{padding-right:25px !important}.govuk-\!-static-padding-bottom-5{padding-bottom:25px !important}.govuk-\!-static-padding-left-5{padding-left:25px !important}.govuk-\!-static-padding-6{padding:30px !important}.govuk-\!-static-padding-top-6{padding-top:30px !important}.govuk-\!-static-padding-right-6{padding-right:30px !important}.govuk-\!-static-padding-bottom-6{padding-bottom:30px !important}.govuk-\!-static-padding-left-6{padding-left:30px !important}.govuk-\!-static-padding-7{padding:40px !important}.govuk-\!-static-padding-top-7{padding-top:40px !important}.govuk-\!-static-padding-right-7{padding-right:40px !important}.govuk-\!-static-padding-bottom-7{padding-bottom:40px !important}.govuk-\!-static-padding-left-7{padding-left:40px !important}.govuk-\!-static-padding-8{padding:50px !important}.govuk-\!-static-padding-top-8{padding-top:50px !important}.govuk-\!-static-padding-right-8{padding-right:50px !important}.govuk-\!-static-padding-bottom-8{padding-bottom:50px !important}.govuk-\!-static-padding-left-8{padding-left:50px !important}.govuk-\!-static-padding-9{padding:60px !important}.govuk-\!-static-padding-top-9{padding-top:60px !important}.govuk-\!-static-padding-right-9{padding-right:60px !important}.govuk-\!-static-padding-bottom-9{padding-bottom:60px !important}.govuk-\!-static-padding-left-9{padding-left:60px !important}.govuk-\!-text-align-left{text-align:left !important}.govuk-\!-text-align-centre{text-align:center !important}.govuk-\!-text-align-right{text-align:right !important}.govuk-\!-font-size-80{font-size:3.3125rem !important;line-height:1.0377358491 !important}@media(min-width: 40.0625em){.govuk-\!-font-size-80{font-size:5rem !important;line-height:1 !important}}@media print{.govuk-\!-font-size-80{font-size:53pt !important;line-height:1.1 !important}}.govuk-\!-font-size-48{font-size:2rem !important;line-height:1.09375 !important}@media(min-width: 40.0625em){.govuk-\!-font-size-48{font-size:3rem !important;line-height:1.0416666667 !important}}@media print{.govuk-\!-font-size-48{font-size:32pt !important;line-height:1.15 !important}}.govuk-\!-font-size-36{font-size:1.6875rem !important;line-height:1.1111111111 !important}@media(min-width: 40.0625em){.govuk-\!-font-size-36{font-size:2.25rem !important;line-height:1.1111111111 !important}}@media print{.govuk-\!-font-size-36{font-size:24pt !important;line-height:1.05 !important}}.govuk-\!-font-size-27{font-size:1.3125rem !important;line-height:1.1904761905 !important}@media(min-width: 40.0625em){.govuk-\!-font-size-27{font-size:1.6875rem !important;line-height:1.1111111111 !important}}@media print{.govuk-\!-font-size-27{font-size:18pt !important;line-height:1.15 !important}}.govuk-\!-font-size-24{font-size:1.3125rem !important;line-height:1.1904761905 !important}@media(min-width: 40.0625em){.govuk-\!-font-size-24{font-size:1.5rem !important;line-height:1.25 !important}}@media print{.govuk-\!-font-size-24{font-size:18pt !important;line-height:1.15 !important}}.govuk-\!-font-size-19{font-size:1.1875rem !important;line-height:1.3157894737 !important}@media print{.govuk-\!-font-size-19{font-size:14pt !important;line-height:1.15 !important}}.govuk-\!-font-size-16{font-size:1rem !important;line-height:1.25 !important}@media print{.govuk-\!-font-size-16{font-size:14pt !important;line-height:1.2 !important}}.govuk-\!-font-weight-regular{font-weight:400 !important}.govuk-\!-font-weight-bold{font-weight:700 !important}.govuk-\!-font-tabular-numbers{font-variant-numeric:tabular-nums !important}.govuk-\!-text-break-word{word-wrap:break-word !important;overflow-wrap:break-word !important}.govuk-\!-width-full{width:100% !important}.govuk-\!-width-three-quarters{width:100% !important}@media(min-width: 40.0625em){.govuk-\!-width-three-quarters{width:75% !important}}.govuk-\!-width-two-thirds{width:100% !important}@media(min-width: 40.0625em){.govuk-\!-width-two-thirds{width:66.66% !important}}.govuk-\!-width-one-half{width:100% !important}@media(min-width: 40.0625em){.govuk-\!-width-one-half{width:50% !important}}.govuk-\!-width-one-third{width:100% !important}@media(min-width: 40.0625em){.govuk-\!-width-one-third{width:33.33% !important}}.govuk-\!-width-one-quarter{width:100% !important}@media(min-width: 40.0625em){.govuk-\!-width-one-quarter{width:25% !important}}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2N1c3RvbS1wcm9wZXJ0aWVzL19icmVha3BvaW50cy5taXhpbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY3VzdG9tLXByb3BlcnRpZXMvX2Zyb250ZW5kLXZlcnNpb24ubWl4aW4uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2N1c3RvbS1wcm9wZXJ0aWVzL19mdW5jdGlvbmFsLWNvbG91cnMubWl4aW4uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2NvcmUvX2xpbmtzLm1peGluLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9oZWxwZXJzL190eXBvZ3JhcGh5LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9zZXR0aW5ncy9fdHlwb2dyYXBoeS1mb250LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9oZWxwZXJzL19saW5rcy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvc2V0dGluZ3MvX2xpbmtzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9oZWxwZXJzL19mb250LWZhY2VzLS1pbnRlcm5hbC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvaGVscGVycy9fZm9jdXNlZC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29yZS9fdHlwb2dyYXBoeS5taXhpbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvaGVscGVycy9fc3BhY2luZy0taW50ZXJuYWwuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2NvcmUvX2xpc3RzLm1peGluLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb3JlL19zZWN0aW9uLWJyZWFrLm1peGluLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9vYmplY3RzL19idXR0b24tZ3JvdXAubWl4aW4uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL29iamVjdHMvX2Zvcm0tZ3JvdXAubWl4aW4uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2hlbHBlcnMvX2NsZWFyZml4LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9vYmplY3RzL19ncmlkLm1peGluLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9oZWxwZXJzL19ncmlkLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9vYmplY3RzL19tYWluLXdyYXBwZXIubWl4aW4uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL29iamVjdHMvX3RlbXBsYXRlLm1peGluLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9vYmplY3RzL193aWR0aC1jb250YWluZXIubWl4aW4uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2hlbHBlcnMvX3dpZHRoLWNvbnRhaW5lci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvc2V0dGluZ3MvX21lYXN1cmVtZW50cy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29tcG9uZW50cy9hY2NvcmRpb24vX21peGluLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb21wb25lbnRzL2JhY2stbGluay9fbWl4aW4uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2NvbXBvbmVudHMvYnJlYWRjcnVtYnMvX21peGluLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb21wb25lbnRzL2J1dHRvbi9fbWl4aW4uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2NvbXBvbmVudHMvYnV0dG9uL19zZXR0aW5ncy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29tcG9uZW50cy9lcnJvci1tZXNzYWdlL19taXhpbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29tcG9uZW50cy9oaW50L19taXhpbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29tcG9uZW50cy9sYWJlbC9fbWl4aW4uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2NvbXBvbmVudHMvdGV4dGFyZWEvX21peGluLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb21wb25lbnRzL2NoYXJhY3Rlci1jb3VudC9fbWl4aW4uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2NvbXBvbmVudHMvZmllbGRzZXQvX21peGluLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb21wb25lbnRzL2NoZWNrYm94ZXMvX21peGluLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb21wb25lbnRzL2Nvb2tpZS1iYW5uZXIvX21peGluLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb21wb25lbnRzL2lucHV0L19taXhpbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29tcG9uZW50cy9kYXRlLWlucHV0L19taXhpbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29tcG9uZW50cy9kZXRhaWxzL19taXhpbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvaGVscGVycy9fc2hhcGUtYXJyb3cuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2NvbXBvbmVudHMvZXJyb3Itc3VtbWFyeS9fbWl4aW4uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2NvbXBvbmVudHMvZXhpdC10aGlzLXBhZ2UvX21peGluLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb21wb25lbnRzL2ZpbGUtdXBsb2FkL19taXhpbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29tcG9uZW50cy9mb290ZXIvX21peGluLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb21wb25lbnRzL2dlbmVyaWMtaGVhZGVyL19taXhpbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29tcG9uZW50cy9oZWFkZXIvX21peGluLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb21wb25lbnRzL2luc2V0LXRleHQvX21peGluLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb21wb25lbnRzL25vdGlmaWNhdGlvbi1iYW5uZXIvX21peGluLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb21wb25lbnRzL3BhZ2luYXRpb24vX21peGluLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb21wb25lbnRzL3BhbmVsL19taXhpbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29tcG9uZW50cy9wYXNzd29yZC1pbnB1dC9fbWl4aW4uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2NvbXBvbmVudHMvdGFnL19taXhpbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29tcG9uZW50cy9waGFzZS1iYW5uZXIvX21peGluLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb21wb25lbnRzL3JhZGlvcy9fbWl4aW4uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2NvbXBvbmVudHMvc2VsZWN0L19taXhpbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29tcG9uZW50cy9zZXJ2aWNlLW5hdmlnYXRpb24vX21peGluLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb21wb25lbnRzL3NraXAtbGluay9fbWl4aW4uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL2hlbHBlcnMvX3Zpc3VhbGx5LWhpZGRlbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29tcG9uZW50cy9zdW1tYXJ5LWxpc3QvX21peGluLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb21wb25lbnRzL3RhYmxlL19taXhpbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29tcG9uZW50cy90YWJzL19taXhpbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvY29tcG9uZW50cy90YXNrLWxpc3QvX21peGluLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9jb21wb25lbnRzL3dhcm5pbmctdGV4dC9fbWl4aW4uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL3V0aWxpdGllcy9fdmlzdWFsbHktaGlkZGVuLm1peGluLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9vdmVycmlkZXMvX2Rpc3BsYXkubWl4aW4uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL292ZXJyaWRlcy9fc3BhY2luZy5taXhpbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2Rpc3QvZ292dWsvb3ZlcnJpZGVzL190ZXh0LWFsaWduLm1peGluLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZGlzdC9nb3Z1ay9vdmVycmlkZXMvX3R5cG9ncmFwaHkubWl4aW4uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9kaXN0L2dvdnVrL292ZXJyaWRlcy9fd2lkdGgubWl4aW4uc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQ0FNRSxNQUdNLDhHQ0ROLE1BQ0Usa0NDRkYsTUFHTSwrdEJBR0YsYUFOSixNQVFNLDhEQ1hOLFlDMEJBLFlDZmtCLGlDRGdCbEIsbUNBQ0Esa0NFSUEsMEJBR0UsMEJDckI2QixtQkR5QjdCLHNCQ1owQixRQ2R4QixvTEFDQSxXQUNFLDRCQUNBLGtCQUNBLG1CQUNBLHNCQUNBLElBQ0UsNEhBSUosV0FDRSw0QkFDQSxrQkFDQSxpQkFDQSxzQkFDQSxJQUNFLDBISk1SLGFEcENBLFlDcUNFLFlDaEJzQixZQ0x4QixrQkFxQ0UsMEJDVm1DLDBCRGFuQyxzQ0FDUSw4QkFDUixrQ0FDUSwwQkF2Q1Ysa0RHQ0EsOENBQ0Esb0RBQ0EsV0FDRSx3RkFJRixxQkFZQSxtQ0hwQkEsa0JHcUJFLG1DQUNRLDRCSHFDVixpQkFDRSx3Q0FHRixvQkFDRSxnREFHRixrQkFDRSw4Q0FHRixtQkFDRSwrQ0FLRixrQkFDRSw4Q0ErT0YsYUFJSSx1R0FDRSw0QkFDQSxjQUtBLHNCQTNKTixtREFFRSxrREFHRixtREFFRSx3Q0FLRix5QkFDRSw4Q0FxQkYsK0ZBR0Usd0NBR0YsK0JBQ0UsOENBcUJGLHVEQUVFLGdEQUdGLDJCQUNFLDhDQStERixtREFDRSxxQkF2Q0YsbUNBQ0Usd0NBR0Ysc0NBQ0Usd0NBR0Ysb0NBQ0UsOENBR0YscUNBQ0UsK0NBS0Ysb0NBQ0UsOENIOVFGLGtCR3dVQSxxQkFHQSxjQUdBLHFCQUVBLHdCR3RUQSxnQ0FDQSxXQUNFLCtGQzlERixrQk55QkEsWUNma0IsaUNEZ0JsQixtQ0FDQSxrQ0E4Q0EsZ0JBK0lJLFVBSmMsS0FLZCxZQUp1QixRTWxOekIsY0FFQSxhQUNBLHdDQ3VESSxtQlAxQk4sYU1uQ0Esa0JOb0NFLFlDaEJzQixZRDRNcEIsNkJNaE9KLGtCTmlPTSxVQWJZLEtBY1osWUFicUIsY0FNdkIsYU0zTkosa0JONE5NLFVBVFEsS0FVUixZQVJxQixNT3JKdkIsNkJEaEVKLGtCQ29FUSxvQkR0RFIsaUJOV0EsWUNma0IsaUNEZ0JsQixtQ0FDQSxrQ0E4Q0EsZ0JBK0lJLFVBSmMsVUFLZCxZQUp1QixhTXBNekIsY0FFQSxhQUNBLHdDQ3lDSSxtQlAxQk4sYU1yQkEsaUJOc0JFLFlDaEJzQixZRDRNcEIsNkJNbE5KLGlCTm1OTSxVQWJZLFFBY1osWUFicUIsY0FNdkIsYU03TUosaUJOOE1NLFVBVFEsS0FVUixZQVJxQixNT3JKdkIsNkJEbERKLGlCQ3NEUSxvQkR4Q1IsaUJOSEEsWUNma0IsaUNEZ0JsQixtQ0FDQSxrQ0E4Q0EsZ0JBK0lJLFVBSmMsVUFLZCxZQUp1QixhTXRMekIsY0FFQSxhQUNBLHdDQzJCSSxtQlAxQk4sYU1QQSxpQk5RRSxZQ2hCc0IsWUQ0TXBCLDZCTXBNSixpQk5xTU0sVUFiWSxPQWNaLFlBYnFCLE1BTXZCLGFNL0xKLGlCTmdNTSxVQVRRLEtBVVIsWUFScUIsTU9ySnZCLDZCRHBDSixpQkN3Q1Esb0JEMUJSLGlCTmpCQSxZQ2ZrQixpQ0RnQmxCLG1DQUNBLGtDQThDQSxnQkErSUksVUFKYyxVQUtkLFlBSnVCLGFNeEt6QixjQUVBLGFBQ0Esd0NDYUksbUJQMUJOLGFNT0EsaUJOTkUsWUNoQnNCLFlEdU1wQixhTWpMSixpQk5rTE0sVUFUUSxLQVVSLFlBUnFCLE1Pckp2Qiw2QkR0QkosaUJDMEJRLG9CRFZSLGtCTmpDQSxZQ2ZrQixpQ0RnQmxCLG1DQUNBLGtDQW9DQSxnQkF5SkksVUFKYyxVQUtkLFlBSnVCLGFNeEp6QixjQUVBLGtCQUVBLGtETjlCRixhTXVCQSxrQk50QkUsWUNoQnNCLFlENE1wQiw2Qk10S0osa0JOdUtNLFVBYlksVUFjWixZQWJxQixjQU12QixhTWpLSixrQk5rS00sVUFUUSxLQVVSLFlBUnFCLE1NakozQixpQk4zQ0EsWUNma0IsaUNEZ0JsQixtQ0FDQSxrQ0FvQ0EsZ0JBeUpJLFVBSmMsVUFLZCxZQUp1QixhTTlJekIsY0FFQSxrQkFDQSxrRE52Q0YsYU1pQ0EsaUJOaENFLFlDaEJzQixZRDRNcEIsNkJNNUpKLGlCTjZKTSxVQWJZLE9BY1osWUFicUIsTUFNdkIsYU12SkosaUJOd0pNLFVBVFEsS0FVUixZQVJxQixNTXpJekIsNkJBUkYsaUJBU0ksaUJBSUosaUJOeERBLFlDZmtCLGlDRGdCbEIsbUNBQ0Esa0NBb0NBLGdCQXlKSSxVQUpjLFVBS2QsWUFKdUIsYU1qSXpCLGNBRUEsa0RObkRGLGFNOENBLGlCTjdDRSxZQ2hCc0IsWUR1TXBCLGFNMUlKLGlCTjJJTSxVQVRRLEtBVVIsWUFScUIsTU0xSDNCLCtCQUNFLGFBQ0Esd0NOcEVGLFlDZmtCLGlDRGdCbEIsbUNBQ0Esa0NBb0NBLGdCQXlKSSxVQUpjLFVBS2QsWUFKdUIsYU94SnJCLG1CUDFCTixhTXdEQSwrQk52REUsWUNoQnNCLFlENE1wQiw2Qk1ySUosK0JOc0lNLFVBYlksT0FjWixZQWJxQixNQU12QixhTWhJSiwrQk5pSU0sVUFUUSxLQVVSLFlBUnFCLE1Pckp2Qiw2QkQyQkosK0JDdkJRLG9CRGtDUiwwQkFDRSxhQUNBLHdDTi9FRixZQ2ZrQixpQ0RnQmxCLG1DQUNBLGtDQW9DQSxnQkF5SkksVUFKYyxVQUtkLFlBSnVCLGFPeEpyQixtQlAxQk4sYU1tRUEsMEJObEVFLFlDaEJzQixZRHVNcEIsYU1ySEosMEJOc0hNLFVBVFEsS0FVUixZQVJxQixNT3JKdkIsNkJEc0NKLDBCQ2xDUSxvQkQ2Q1IsY0FDRSxhQUNBLHdDTjFGRixZQ2ZrQixpQ0RnQmxCLG1DQUNBLGtDQW9DQSxnQkF5SkksVUFKYyxLQUtkLFlBSnVCLEtPeEpyQixtQlAxQk4sYU04RUEsY043RUUsWUNoQnNCLFlEdU1wQixhTTFHSixjTjJHTSxVQVRRLEtBVVIsWUFScUIsS09ySnZCLDZCRGlESixjQzdDUSxvQkR3RVIsaUVBQ0UsZ0JBRUEsNkJBSEYsaUVBSUksa0JBSUosd0hDdkZNLGlCQUdGLDZCRG9G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Q0FFUixvQkFLQSw4QkFLQSx5QkFDSSxxQkFDSSxpQkFnQlIsK0JBQ0UsWUFHRiw4QkFDRSxZQWlCRix3RUFsRUEsNkJBRUEscUJBQ0Esc0JBR0Esb0JBQ0EscUJBRUEsMkJBR0EsOEJBQ0Esd0NBQ1EsZ0NBRVIsb0JBS0EsOEJBS0EseUJBQ0kscUJBQ0ksaUJPM0NSLHlCQUNFLDBCQUdGLCtCQUNFLGdDQUdGLHdCQUNFLHlCQUdGLHVCQUNFLHdCQUdGLGFBQ0UsNkJBQ0UseUJDbUJGLG1CdkR3Qkksb0J1RGxCRix1QnZEb0JFLHdCdURwQkYseUJ2RG9CRSwwQnVEcEJGLDBCdkRvQkUsMkJ1RHBCRix3QnZEb0JFLHlCdUQxQkosbUJ2RHdCSSxzQnVEbEJGLHVCdkRvQkUsMEJ1RHBCRix5QnZEb0JFLDRCdURwQkYsMEJ2RG9CRSw2QnVEcEJGLHdCdkRvQkUsMkJ1RDFCSixtQnZEd0JJLHVCdURsQkYsdUJ2RG9CRSwyQnVEcEJGLHlCdkRvQkUsNkJ1RHBCRiwwQnZEb0JFLDhCdURwQkYsd0J2RG9CRSw0QnVEMUJKLG1CdkR3QkksdUJ1RGxCRix1QnZEb0JFLDJCdURwQkYseUJ2RG9CRSw2QnVEcEJGLDBCdkRvQkUsOEJ1RHBCRix3QnZEb0JFLDRCdUQxQkosbUJ2RHdCSSx1QkFLRiw2QnVEN0JGLG1CdkQrQk0sd0J1RHpCSix1QnZEb0JFLDJCQUdGLDZCdUR2QkEsdUJ2RDJCSSw0QnVEM0JKLHlCdkRvQkUsNkJBR0YsNkJ1RHZCQSx5QnZEMkJJLDhCdUQzQkosMEJ2RG9CRSw4QkFHRiw2QnVEdkJBLDBCdkQyQkksK0J1RDNCSix3QnZEb0JFLDRCQUdGLDZCdUR2QkEsd0J2RDJCSSw2QnVEakNOLG1CdkR3QkksdUJBS0YsNkJ1RDdCRixtQnZEK0JNLHdCdUR6QkosdUJ2RG9CRSwyQkFHRiw2QnVEdkJBLHVCdkQyQkksNEJ1RDNCSix5QnZEb0JFLDZCQUdGLDZCdUR2QkEseUJ2RDJCSSw4QnVEM0JKLDBCdkRvQkUsOEJBR0YsNkJ1RHZCQSwwQnZEMkJJLCtCdUQzQkosd0J2RG9CRSw0QkFHRiw2QnVEdkJBLHdCdkQyQkksNkJ1RGpDTixtQnZEd0JJLHVCQUtGLDZCdUQ3QkYsbUJ2RCtCTSx3QnVEekJKLHVCdkRvQkUsMkJBR0YsNkJ1RHZCQSx1QnZEMkJJLDRCdUQzQkoseUJ2RG9CRSw2QkFHRiw2QnVEdkJBLHlCdkQyQkksOEJ1RDNCSiwwQnZEb0JFLDhCQUdGLDZCdUR2QkEsMEJ2RDJCSSwrQnVEM0JKLHdCdkRvQkUsNEJBR0YsNkJ1RHZCQSx3QnZEMkJJLDZCdURqQ04sbUJ2RHdCSSx1QkFLRiw2QnVEN0JGLG1CdkQrQk0sd0J1RHpCSix1QnZEb0JFLDJCQUdGLDZCdUR2QkEsdUJ2RDJCSSw0QnVEM0JKLHlCdkRvQkUsNkJBR0YsNkJ1RHZCQSx5QnZEMkJJLDhCdUQzQkosMEJ2RG9CRSw4QkFHRiw2QnVEdkJBLDBCdkQyQkksK0J1RDNCSix3QnZEb0JFLDRCQUdGLDZCdUR2QkEsd0J2RDJCSSw2QnVEakNOLG1CdkR3QkksdUJBS0YsNkJ1RDdCRixtQnZEK0JNLHdCdUR6QkosdUJ2RG9CRSwyQkFHRiw2QnVEdkJBLHVCdkQyQkksNEJ1RDNCSix5QnZEb0JFLDZCQUdGLDZCdUR2QkEseUJ2RDJCSSw4QnVEM0JKLDBCdkRvQkUsOEJBR0YsNkJ1RHZCQSwwQnZEMkJJLCtCdUQzQkosd0J2RG9CRSw0QkFHRiw2QnVEdkJBLHdCdkQyQkksNkJ1RGpDTixtQnZEd0JJLHVCQUtGLDZCdUQ3QkYsbUJ2RCtCTSx3QnVEekJKLHVCdkRvQkUsMkJBR0YsNkJ1RHZCQSx1QnZEMkJJLDRCdUQzQkoseUJ2RG9CRSw2QkFHRiw2QnVEdkJBLHlCdkQyQkksOEJ1RDNCSiwwQnZEb0JFLDhCQUdGLDZCdUR2QkEsMEJ2RDJCSSwrQnVEM0JKLHdCdkRvQkUsNEJBR0YsNkJ1RHZCQSx3QnZEMkJJLDZCdURqQ04sb0J2RHdCSSxxQnVEbEJGLHdCdkRvQkUseUJ1RHBCRiwwQnZEb0JFLDJCdURwQkYsMkJ2RG9CRSw0QnVEcEJGLHlCdkRvQkUsMEJ1RDFCSixvQnZEd0JJLHVCdURsQkYsd0J2RG9CRSwyQnVEcEJGLDBCdkRvQkUsNkJ1RHBCRiwyQnZEb0JFLDhCdURwQkYseUJ2RG9CRSw0QnVEMUJKLG9CdkR3Qkksd0J1RGxCRix3QnZEb0JFLDRCdURwQkYsMEJ2RG9CRSw4QnVEcEJGLDJCdkRvQkUsK0J1RHBCRix5QnZEb0JFLDZCdUQxQkosb0J2RHdCSSx3QnVEbEJGLHdCdkRvQkUsNEJ1RHBCRiwwQnZEb0JFLDhCdURwQkYsMkJ2RG9CRSwrQnVEcEJGLHlCdkRvQkUsNkJ1RDFCSixvQnZEd0JJLHdCQUtGLDZCdUQ3QkYsb0J2RCtCTSx5QnVEekJKLHdCdkRvQkUsNEJBR0YsNkJ1RHZCQSx3QnZEMkJJLDZCdUQzQkosMEJ2RG9CRSw4QkFHRiw2QnVEdkJBLDBCdkQyQkksK0J1RDNCSiwyQnZEb0JFLCtCQUdGLDZCdUR2QkEsMkJ2RDJCSSxnQ3VEM0JKLHlCdkRvQkUsNkJBR0YsNkJ1RHZCQSx5QnZEMkJJLDhCdURqQ04sb0J2RHdCSSx3QkFLRiw2QnVEN0JGLG9CdkQrQk0seUJ1RHpCSix3QnZEb0JFLDRCQUdGLDZCdUR2QkEsd0J2RDJCSSw2QnVEM0JKLDBCdkRvQkUsOEJBR0YsNkJ1RHZCQSwwQnZEMkJJLCtCdUQzQkosMkJ2RG9CRSwrQkFHRiw2QnVEdkJBLDJCdkQyQkksZ0N1RDNCSix5QnZEb0JFLDZCQUdGLDZCdUR2QkEseUJ2RDJCSSw4QnVEakNOLG9CdkR3Qkksd0JBS0YsNkJ1RDdCRixvQnZEK0JNLHlCdUR6Qkosd0J2RG9CRSw0QkFHRiw2QnVEdkJBLHdCdkQyQkksNkJ1RDNCSiwwQnZEb0JFLDhCQUdGLDZCdUR2QkEsMEJ2RDJCSSwrQnVEM0JKLDJCdkRvQkUsK0JBR0YsNkJ1RHZCQSwyQnZEMkJJLGdDdUQzQkoseUJ2RG9CRSw2QkFHRiw2QnVEdkJBLHlCdkQyQkksOEJ1RGpDTixvQnZEd0JJLHdCQUtGLDZCdUQ3QkYsb0J2RCtCTSx5QnVEekJKLHdCdkRvQkUsNEJBR0YsNkJ1RHZCQSx3QnZEMkJJLDZCdUQzQkosMEJ2RG9CRSw4QkFHRiw2QnVEdkJBLDBCdkQyQkksK0J1RDNCSiwyQnZEb0JFLCtCQUdGLDZCdUR2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QUtkLFlBSnVCLG1CQVd2Qiw2QmdFM05GLHVCaEU0TkksVUFiWSxnQkFjWixZQWJxQix5QkFNdkIsYWdFdE5GLHVCaEV1TkksVUFUUSxnQkFVUixZQVJxQixpQmdFaE56Qix1QmhFbU5FLFVBSmMscUJBS2QsWUFKdUIsd0JBV3ZCLDZCZ0UzTkYsdUJoRTROSSxVQWJZLG1CQWNaLFlBYnFCLHlCQU12QixhZ0V0TkYsdUJoRXVOSSxVQVRRLGdCQVVSLFlBUnFCLGlCZ0VoTnpCLHVCaEVtTkUsVUFKYyxxQkFLZCxZQUp1Qix3QkFXdkIsNkJnRTNORix1QmhFNE5JLFVBYlkscUJBY1osWUFicUIseUJBTXZCLGFnRXRORix1QmhFdU5JLFVBVFEsZ0JBVVIsWUFScUIsaUJnRWhOekIsdUJoRW1ORSxVQUpjLHFCQUtkLFlBSnVCLHdCQVd2Qiw2QmdFM05GLHVCaEU0TkksVUFiWSxrQkFjWixZQWJxQixpQkFNdkIsYWdFdE5GLHVCaEV1TkksVUFUUSxnQkFVUixZQVJxQixpQmdFaE56Qix1QmhFbU5FLFVBSmMscUJBS2QsWUFKdUIsd0JBTXZCLGFnRXRORix1QmhFdU5JLFVBVFEsZ0JBVVIsWUFScUIsaUJnRWhOekIsdUJoRW1ORSxVQUpjLGdCQUtkLFlBSnVCLGdCQU12QixhZ0V0TkYsdUJoRXVOSSxVQVRRLGdCQVVSLFlBUnFCLGdCZ0VsTTNCLDhCaEU0Q0EsMkJnRXhDQSwyQmhFa0RBLDJCZ0U1Q0EsK0JoRTZEQSw2Q2dFekRBLDBCaEV1RUEsZ0NBR0Esb0NpRTNHQSxxQkFDRSxzQkFHRiwrQkFDRSxzQkFFQSw2QkFIRiwrQkFJSSxzQkFJSiwyQkFDRSxzQkFFQSw2QkFIRiwyQkFJSSx5QkFJSix5QkFDRSxzQkFFQSw2QkFIRix5QkFJSSxzQkFJSiwwQkFDRSxzQkFFQSw2QkFIRiwwQkFJSSx5QkFJSiw0QkFDRSxzQkFFQSw2QkFIRiw0QkFJSSIsImZpbGUiOiJnb3Z1ay1jb21wb25lbnRzLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkB1c2UgXCIuLi9zZXR0aW5ncy9jdXN0b20tcHJvcGVydGllc1wiIGFzICo7XG5AdXNlIFwiLi4vc2V0dGluZ3MvbWVkaWEtcXVlcmllc1wiIGFzICo7XG5AdXNlIFwiLi4vdG9vbHMvcHgtdG8tcmVtXCIgYXMgKjtcblxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIHN0eWxlcyB7XG4gIDpyb290IHtcbiAgICBAaWYgJGdvdnVrLW91dHB1dC1jdXN0b20tcHJvcGVydGllcyB7XG4gICAgICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRnb3Z1ay1icmVha3BvaW50cyB7XG4gICAgICAgIC0tZ292dWstYnJlYWtwb2ludC0jeyRuYW1lfTogI3tnb3Z1ay1weC10by1yZW0oJHZhbHVlKX07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiIsIi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBzdHlsZXMge1xuICAvLyBUaGlzIGN1c3RvbSBwcm9wZXJ0eSBpcyBhdXRvbWF0aWNhbGx5IG92ZXJ3cml0dGVuIGR1cmluZyBidWlsZHMgYW5kXG4gIC8vIHJlbGVhc2VzLiBJdCBkb2Vzbid0IG5lZWQgdG8gYmUgdXBkYXRlZCBtYW51YWxseS5cbiAgLy9cbiAgLy8gVGhpcyBjdXN0b20gcHJvcGVydHkgaXMgYWx3YXlzIG91dHB1dCBieSBiYXNlIHJlZ2FyZGxlc3Mgb2YgaWZcbiAgLy8gYCRnb3Z1ay1vdXRwdXQtY3VzdG9tLXByb3BlcnRpZXNgIGlzIHRydWUgb3Igbm90IHRvIGhlbHAgd2l0aCBjaGVja2luZyBpZlxuICAvLyBtdWx0aXBsZSBzdHlsZXNoZWV0cyBhcmUgb3V0cHV0dGluZyB0aGUgc2FtZSB2ZXJzaW9uXG4gIDpyb290IHtcbiAgICAtLWdvdnVrLWZyb250ZW5kLXZlcnNpb246IFwiNi40LjBcIjtcbiAgfVxufVxuXG4iLCJAdXNlIFwiLi4vc2V0dGluZ3MvY3VzdG9tLXByb3BlcnRpZXNcIiBhcyAqO1xuQHVzZSBcIi4uL3NldHRpbmdzL2NvbG91cnMtZnVuY3Rpb25hbFwiIGFzICo7XG5AdXNlIFwiLi4vaGVscGVycy9jb2xvdXJcIiBhcyAqO1xuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gc3R5bGVzIHtcbiAgLy8gQ1NTIGN1c3RvbSBwcm9wZXJ0aWVzIGZvciBlYWNoIGZ1bmN0aW9uYWwgY29sb3VyXG4gIDpyb290IHtcbiAgICBAaWYgJGdvdnVrLW91dHB1dC1jdXN0b20tcHJvcGVydGllcyB7XG4gICAgICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRnb3Z1ay1mdW5jdGlvbmFsLWNvbG91cnMge1xuICAgICAgICAtLWdvdnVrLSN7JG5hbWV9LWNvbG91cjogI3tnb3Z1ay1yZXNvbHZlLWNvbG91cigkdmFsdWUpfTtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhIHByaW50IHtcbiAgICAgICAgLy8gVXNlICd0cnVlIGJsYWNrJyB0byBhdm9pZCBwcmludGVycyB1c2luZyBjb2xvdXIgaW5rIHRvIHByaW50IGJvZHkgdGV4dFxuICAgICAgICAtLWdvdnVrLXRleHQtY29sb3VyOiAje2dvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKFwicHJpbnQtdGV4dFwiKX07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiIsIkB1c2UgXCIuLi9iYXNlXCI7XG5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBzdHlsZXMge1xuICAlZ292dWstbGluayB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1saW5rLWNvbW1vbjtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWxpbmstc3R5bGUtZGVmYXVsdDtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWxpbmstcHJpbnQtZnJpZW5kbHk7XG4gIH1cblxuICAuZ292dWstbGluayB7XG4gICAgQGV4dGVuZCAlZ292dWstbGluaztcbiAgfVxuXG4gIC8vIFZhcmlhbnQgY2xhc3NlcyBzaG91bGQgYWx3YXlzIGJlIHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUgLmdvdnVrLWxpbmtcbiAgLy8gY2xhc3MsIHNvIHdlIGRvIG5vdCBuZWVkIHRoZSBjb21tb24gbGluayBzdHlsZXMgYXMgdGhleSB3aWxsIGJlIGluaGVyaXRlZC5cblxuICAuZ292dWstbGluay0tbXV0ZWQge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstbGluay1zdHlsZS1tdXRlZDtcbiAgfVxuXG4gIC5nb3Z1ay1saW5rLS10ZXh0LWNvbG91ciB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1saW5rLXN0eWxlLXRleHQ7XG4gIH1cblxuICAuZ292dWstbGluay0taW52ZXJzZSB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1saW5rLXN0eWxlLWludmVyc2U7XG4gIH1cblxuICAuZ292dWstbGluay0tbm8tdW5kZXJsaW5lIHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWxpbmstc3R5bGUtbm8tdW5kZXJsaW5lO1xuICB9XG5cbiAgLmdvdnVrLWxpbmstLW5vLXZpc2l0ZWQtc3RhdGUge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstbGluay1zdHlsZS1uby12aXNpdGVkLXN0YXRlO1xuICB9XG5cbiAgLy8gTGlua3MgdGhhdCBvbmx5IGNvbnRhaW4gaW1hZ2VzXG5cbiAgLmdvdnVrLWxpbmstaW1hZ2Uge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstbGluay1pbWFnZTtcbiAgfVxufVxuXG4iLCIvLy8vXG4vLy8gQGdyb3VwIGhlbHBlcnMvdHlwb2dyYXBoeVxuLy8vL1xuQHVzZSBcInNhc3M6bWFwXCI7XG5AdXNlIFwic2FzczpzdHJpbmdcIjtcblxuQHVzZSBcIi4uL3NldHRpbmdzL3dhcm5pbmdzLS1pbnRlcm5hbFwiO1xuXG5AdXNlIFwiLi4vc2V0dGluZ3MvYXNzZXRzXCIgYXMgKjtcbkB1c2UgXCIuLi9zZXR0aW5ncy9jb2xvdXJzLWZ1bmN0aW9uYWxcIiBhcyAqO1xuQHVzZSBcIi4uL3NldHRpbmdzL3NwYWNpbmdcIiBhcyAqO1xuQHVzZSBcIi4uL3NldHRpbmdzL3R5cG9ncmFwaHktZm9udFwiIGFzICo7XG5AdXNlIFwiLi4vc2V0dGluZ3MvdHlwb2dyYXBoeS1yZXNwb25zaXZlXCIgYXMgKjtcbkB1c2UgXCIuLi90b29scy9mb250LXVybFwiIGFzICo7XG5AdXNlIFwiLi4vdG9vbHMvcHgtdG8tcmVtXCIgYXMgKjtcbkB1c2UgXCIuLi90b29scy9pZlwiIGFzICo7XG5AdXNlIFwiY29sb3VyXCIgYXMgKjtcbkB1c2UgXCJmb250LWZhY2VzLS1pbnRlcm5hbFwiO1xuQHVzZSBcInR5cG9ncmFwaHktLWludGVybmFsXCI7XG5AdXNlIFwibWVkaWEtcXVlcmllc1wiIGFzICo7XG5cbi8vLyAnQ29tbW9uIHR5cG9ncmFwaHknIGhlbHBlclxuLy8vXG4vLy8gU2V0cyB0aGUgZm9udCBmYW1pbHkgYW5kIGFzc29jaWF0ZWQgcHJvcGVydGllcywgc3VjaCBhcyBmb250IHNtb290aGluZy4gQWxzb1xuLy8vIG92ZXJyaWRlcyB0aGUgZm9udCBmb3IgcHJpbnQuXG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICRmb250LWZhbWlseSBbJGdvdnVrLWZvbnQtZmFtaWx5XSBGb250IGZhbWlseSB0byB1c2Vcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AbWl4aW4gZ292dWstdHlwb2dyYXBoeS1jb21tb24oJGZvbnQtZmFtaWx5OiAkZ292dWstZm9udC1mYW1pbHkpIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cbiAgLy8gSWYgdGhlIHVzZXIgaXMgdXNpbmcgdGhlIGRlZmF1bHQgR0RTIFRyYW5zcG9ydCBmb250IHdlIG5lZWQgdG8gaW5jbHVkZVxuICAvLyB0aGUgZm9udC1mYWNlIGRlY2xhcmF0aW9ucy5cbiAgQGlmICRnb3Z1ay1pbmNsdWRlLWRlZmF1bHQtZm9udC1mYWNlIHtcbiAgICBAaW5jbHVkZSBmb250LWZhY2VzLS1pbnRlcm5hbC5nZHMtdHJhbnNwb3J0O1xuICB9XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICBmb250LWZhbWlseTogJGdvdnVrLWZvbnQtZmFtaWx5LXByaW50O1xuICB9XG59XG5cbi8vLyBUZXh0IGNvbG91ciBoZWxwZXJcbi8vL1xuLy8vIFNldHMgdGhlIHRleHQgY29sb3VyLCBpbmNsdWRpbmcgYSBzdWl0YWJsZSBvdmVycmlkZSBmb3IgcHJpbnQuXG4vLy9cbi8vLyBAZGVwcmVjYXRlZFxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay10ZXh0LWNvbG91ciB7XG4gIEBpbmNsdWRlIHdhcm5pbmdzLS1pbnRlcm5hbC53YXJuaW5nKFxuICAgIFwiZ292dWstdGV4dC1jb2xvdXJcIixcbiAgICBcIlRoZSBgZ292dWstdGV4dC1jb2xvdXJgIG1peGluIGlzIGRlcHJlY2F0ZWQuIFVzZSBgY29sb3I6IGdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHRleHQpYCBpbnN0ZWFkLlwiXG4gICk7XG5cbiAgY29sb3I6IGdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHRleHQpO1xufVxuXG4vLy8gUmVndWxhciBmb250IHdlaWdodCBoZWxwZXJcbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGltcG9ydGFudCBbZmFsc2VdIC0gV2hldGhlciB0byBtYXJrIGRlY2xhcmF0aW9ucyBhc1xuLy8vICAgYCFpbXBvcnRhbnRgLiBHZW5lcmFsbHkgVXNlZCB0byBjcmVhdGUgb3ZlcnJpZGUgY2xhc3Nlcy5cbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AbWl4aW4gZ292dWstdHlwb2dyYXBoeS13ZWlnaHQtcmVndWxhcigkaW1wb3J0YW50OiBmYWxzZSkge1xuICBmb250LXdlaWdodDogJGdvdnVrLWZvbnQtd2VpZ2h0LXJlZ3VsYXIgZ292dWstaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCk7XG59XG5cbi8vLyBCb2xkIGZvbnQgd2VpZ2h0IGhlbHBlclxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkaW1wb3J0YW50IFtmYWxzZV0gLSBXaGV0aGVyIHRvIG1hcmsgZGVjbGFyYXRpb25zIGFzXG4vLy8gICBgIWltcG9ydGFudGAuIEdlbmVyYWxseSBVc2VkIHRvIGNyZWF0ZSBvdmVycmlkZSBjbGFzc2VzLlxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1ib2xkKCRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIGZvbnQtd2VpZ2h0OiAkZ292dWstZm9udC13ZWlnaHQtYm9sZCBnb3Z1ay1pZigkaW1wb3J0YW50LCAhaW1wb3J0YW50KTtcbn1cblxuLy8vIFRhYnVsYXIgbnVtYmVyIGhlbHBlclxuLy8vXG4vLy8gU3dpdGNoZXMgbnVtZXJpY2FsIGdseXBocyAoMOKAkzkpIHRvIHVzZSBhbHRlcm5hdGl2ZSBmb3JtcyB3aXRoIGFcbi8vLyBtb25vc3BhY2VkIGJvdW5kaW5nIGJveC4gVGhpcyBlbnN1cmVzIHRoYXQgY29sdW1ucyBvZiBudW1iZXJzLCBzdWNoXG4vLy8gYXMgdGhvc2UgaW4gdGFibGVzLCByZW1haW4gaG9yaXpvbnRhbGx5IGFsaWduZWQgd2l0aCBvbmUgYW5vdGhlci5cbi8vLyBUaGlzIGFsc28gaGFzIHRoZSB1c2VmdWwgc2lkZSBlZmZlY3Qgb2YgbWFraW5nIG51bWJlcnMgbW9yZSBsZWdpYmxlXG4vLy8gaW4gc29tZSBzaXR1YXRpb25zLCBzdWNoIGFzIHJlZmVyZW5jZSBjb2RlcywgYXMgdGhlIG51bWJlcnMgYXJlIG1vcmVcbi8vLyBkaXN0aW5jdCBhbmQgdmlzdWFsbHkgc2VwYXJhdGVkIGZyb20gb25lIGFub3RoZXIuXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRpbXBvcnRhbnQgW2ZhbHNlXSAtIFdoZXRoZXIgdG8gbWFyayBkZWNsYXJhdGlvbnMgYXNcbi8vLyAgIGAhaW1wb3J0YW50YC4gR2VuZXJhbGx5IFVzZWQgdG8gY3JlYXRlIG92ZXJyaWRlIGNsYXNzZXMuXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLWZvbnQtdGFidWxhci1udW1iZXJzKCRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIGZvbnQtdmFyaWFudC1udW1lcmljOiB0YWJ1bGFyLW51bXMgZ292dWstaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCk7XG59XG5cbi8vLyBXb3JkIGJyZWFrIGhlbHBlclxuLy8vXG4vLy8gRm9yY2libHkgYnJlYWtzIGxvbmcgd29yZHMgdGhhdCBsYWNrIHNwYWNlcywgc3VjaCBhcyBlbWFpbCBhZGRyZXNzZXMsXG4vLy8gYWNyb3NzIG11bHRpcGxlIGxpbmVzIHdoZW4gdGhleSB3b3VsZG4ndCBvdGhlcndpc2UgZml0LlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkaW1wb3J0YW50IFtmYWxzZV0gLSBXaGV0aGVyIHRvIG1hcmsgZGVjbGFyYXRpb25zIGFzXG4vLy8gICBgIWltcG9ydGFudGAuIEdlbmVyYWxseSB1c2VkIHRvIGNyZWF0ZSBvdmVycmlkZSBjbGFzc2VzLlxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay10ZXh0LWJyZWFrLXdvcmQoJGltcG9ydGFudDogZmFsc2UpIHtcbiAgLy8gSUUgMTEgYW5kIEVkZ2UgMTbigJMxNyBvbmx5IHN1cHBvcnQgdGhlIG5vbi1zdGFuZGFyZCBgd29yZC13cmFwYCBwcm9wZXJ0eVxuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQgZ292dWstaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCk7XG5cbiAgLy8gQWxsIG90aGVyIGJyb3dzZXJzIHN1cHBvcnQgYG92ZXJmbG93LXdyYXBgXG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQgZ292dWstaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCk7XG59XG5cbi8vLyBGb250IHNpemUgYW5kIGxpbmUgaGVpZ2h0IGhlbHBlclxuLy8vXG4vLy8gVGFrZXMgYSBwb2ludCBmcm9tIHRoZSByZXNwb25zaXZlICdmb250IG1hcCcgYXMgYW4gYXJndW1lbnQgKHRoZSBzaXplIGFzIGl0XG4vLy8gd291bGQgYXBwZWFyIG9uIHRhYmxldCBhbmQgYWJvdmUpLCBhbmQgdXNlcyBpdCB0byBjcmVhdGUgZm9udC1zaXplIGFuZFxuLy8vIGxpbmUtaGVpZ2h0IGRlY2xhcmF0aW9ucyBmb3IgZGlmZmVyZW50IGJyZWFrcG9pbnRzLCBhbmQgcHJpbnQuXG4vLy9cbi8vLyBFeGFtcGxlIGZvbnQgbWFwOlxuLy8vXG4vLy8gYGBgc2Nzc1xuLy8vIDE5OiAoXG4vLy8gICBudWxsOiAoXG4vLy8gICAgIGZvbnQtc2l6ZTogMTZweCxcbi8vLyAgICAgbGluZS1oZWlnaHQ6IDIwcHhcbi8vLyAgICksXG4vLy8gICB0YWJsZXQ6IChcbi8vLyAgICAgZm9udC1zaXplOiAxOXB4LFxuLy8vICAgICBsaW5lLWhlaWdodDogMjVweFxuLy8vICAgKSxcbi8vLyAgIHByaW50OiAoXG4vLy8gICAgIGZvbnQtc2l6ZTogMTRwdCxcbi8vLyAgICAgbGluZS1oZWlnaHQ6IDEuMTVcbi8vLyAgIClcbi8vLyApO1xuLy8vIGBgYFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXIgfCBTdHJpbmd9ICRzaXplIC0gUG9pbnQgZnJvbSB0aGUgdHlwZSBzY2FsZSAodGhlIHNpemUgYXNcbi8vLyAgIGl0IHdvdWxkIGFwcGVhciBvbiB0YWJsZXQgYW5kIGFib3ZlKVxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbGluZS1oZWlnaHQgW2ZhbHNlXSAtIE5vbiByZXNwb25zaXZlIGN1c3RvbSBsaW5lXG4vLy8gICBoZWlnaHQuIE9taXQgdG8gdXNlIHRoZSBsaW5lIGhlaWdodCBmcm9tIHRoZSBmb250IG1hcC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRpbXBvcnRhbnQgW2ZhbHNlXSAtIFdoZXRoZXIgdG8gbWFyayBkZWNsYXJhdGlvbnMgYXNcbi8vLyAgIGAhaW1wb3J0YW50YC5cbi8vL1xuLy8vIEB0aHJvdyBpZiBgJHNpemVgIGlzIG5vdCBhIHZhbGlkIHBvaW50IGZyb20gdGhlIHR5cGUgc2NhbGVcbi8vL1xuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay1mb250LXNpemUoJHNpemUsICRsaW5lLWhlaWdodDogZmFsc2UsICRpbXBvcnRhbnQ6IGZhbHNlKSB7XG4gIC8vIEZsYWcgZm9udCBzaXplcyB0aGF0IHN0YXJ0IHdpdGggdW5kZXJzY29yZXMgc28gd2UgY2FuIHN1cHByZXNzIHdhcm5pbmdzIG9uXG4gIC8vIGRlcHJlY2F0ZWQgc2l6ZXMgdXNlZCBpbnRlcm5hbGx5LCBmb3IgZXhhbXBsZSBgZ292dWstZm9udCgkc2l6ZTogXCJfMTRcIilgXG4gICRzaXplLWludGVybmFsLXVzZS1vbmx5OiBzdHJpbmcuc2xpY2UoI3skc2l6ZX0sIDEsIDEpID09IFwiX1wiO1xuXG4gIC8vIFJlbW92ZSB1bmRlcnNjb3JlIGZyb20gZm9udCBzaXplcyBmbGFnZ2VkIGZvciBpbnRlcm5hbCB1c2VcbiAgQGlmICRzaXplLWludGVybmFsLXVzZS1vbmx5IHtcbiAgICAkc2l6ZTogc3RyaW5nLnNsaWNlKCN7JHNpemV9LCAyKTtcbiAgfVxuXG4gIC8vIENoZWNrIGZvciBhIGZvbnQgbWFwIGV4YWN0bHkgbWF0Y2hpbmcgdGhlIGdpdmVuIHNpemVcbiAgJGZvbnQtbWFwOiBtYXAuZ2V0KCRnb3Z1ay10eXBvZ3JhcGh5LXNjYWxlLCAkc2l6ZSk7XG5cbiAgLy8gTm8gbWF0Y2g/IFRyeSB3aXRoIHN0cmluZyB0eXBlIChlLmcuICRzaXplOiBcIjE2XCIgbm90IDE2KVxuICBAaWYgbm90ICRmb250LW1hcCB7XG4gICAgQGVhY2ggJGZvbnQtc2l6ZSBpbiBtYXAua2V5cygkZ292dWstdHlwb2dyYXBoeS1zY2FsZSkge1xuICAgICAgQGlmIG5vdCAkZm9udC1tYXAgYW5kIFwiI3skZm9udC1zaXplfVwiID09IFwiI3skc2l6ZX1cIiB7XG4gICAgICAgICRmb250LW1hcDogbWFwLmdldCgkZ292dWstdHlwb2dyYXBoeS1zY2FsZSwgJGZvbnQtc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gU3RpbGwgbm8gbWF0Y2g/IFRocm93IGVycm9yXG4gIEBpZiBub3QgJGZvbnQtbWFwIHtcbiAgICBAZXJyb3IgXCJVbmtub3duIGZvbnQgc2l6ZSBgI3skc2l6ZX1gIC0gZXhwZWN0ZWQgYSBwb2ludCBmcm9tIHRoZSB0eXBlIHNjYWxlLlwiO1xuICB9XG5cbiAgLy8gQ2hlY2sgZm9yIGEgZGVwcmVjYXRpb24gd2l0aGluIHRoZSB0eXBlIHNjYWxlXG4gICRkZXByZWNhdGlvbjogbWFwLmdldCgkZm9udC1tYXAsIFwiZGVwcmVjYXRpb25cIik7XG5cbiAgQGlmICRkZXByZWNhdGlvbiB7XG4gICAgLy8gV2FybiBvbiBkZXByZWNhdGVkIGZvbnQgc2l6ZXMgdW5sZXNzIGZsYWdnZWQgZm9yIGludGVybmFsIHVzZVxuICAgIEBpZiBub3QgJHNpemUtaW50ZXJuYWwtdXNlLW9ubHkge1xuICAgICAgQGluY2x1ZGUgd2FybmluZ3MtLWludGVybmFsLndhcm5pbmcobWFwLmdldCgkZGVwcmVjYXRpb24sIFwia2V5XCIpLCBtYXAuZ2V0KCRkZXByZWNhdGlvbiwgXCJtZXNzYWdlXCIpKTtcbiAgICB9XG5cbiAgICAvLyByZW1vdmUgdGhlIGRlcHJlY2F0aW9uIG1hcCBrZXlzIHNvIHRoZXkgZG8gbm90IGJyZWFrIHRoZSBicmVha3BvaW50IGxvb3BcbiAgICAkZm9udC1tYXA6IG1hcC5yZW1vdmUoJGZvbnQtbWFwLCBcImRlcHJlY2F0aW9uXCIpO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRicmVha3BvaW50LW1hcCBpbiAkZm9udC1tYXAge1xuICAgICRmb250LXNpemU6IG1hcC5nZXQoJGJyZWFrcG9pbnQtbWFwLCBcImZvbnQtc2l6ZVwiKTtcbiAgICAkZm9udC1zaXplLXJlbTogZ292dWstcHgtdG8tcmVtKCRmb250LXNpemUpO1xuXG4gICAgLy8gJGNhbGN1bGF0ZWQtbGluZS1oZWlnaHQgaXMgYSBzZXBhcmF0ZSB2YXJpYWJsZSBmcm9tICRsaW5lLWhlaWdodCxcbiAgICAvLyBhcyBvdGhlcndpc2UgdGhlIHZhbHVlIHdvdWxkIGdldCByZWRlZmluZWQgd2l0aCBlYWNoIGxvb3AgYW5kXG4gICAgLy8gZXZlbnR1YWxseSBicmVhayB0eXBvZ3JhcGh5LS1pbnRlcm5hbC5saW5lLWhlaWdodC5cbiAgICAvLyAxLiBTZWUgaWYgdGhlIGZ1bmN0aW9uIHdhcyBjYWxsZWQgd2l0aCBhIHNwZWNpZmljIGxpbmUtaGVpZ2h0XG4gICAgJGNhbGN1bGF0ZWQtbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgICAvLyAyLiBEZWZhdWx0IHRvIHRoZSBicmVha3BvaW50LW1hcCBpZiBubyBzcGVjaWZpYyB2YWx1ZSB3YXMgZ2l2ZW5cbiAgICBAaWYgbm90ICRjYWxjdWxhdGVkLWxpbmUtaGVpZ2h0IHtcbiAgICAgICRjYWxjdWxhdGVkLWxpbmUtaGVpZ2h0OiBtYXAuZ2V0KCRicmVha3BvaW50LW1hcCwgXCJsaW5lLWhlaWdodFwiKTtcbiAgICB9XG5cbiAgICAvLyAzLiBUdXJuIHRoZSB2YWx1ZSBpbnRvIGEgdW5pdGxlc3MgbGluZS1oZWlnaHQgaWYgcG9zc2libGVcbiAgICAvLyBXZSBjb250aW51ZSB0byBjYWxsIHRoZSBwYXJhbSAkbGluZS1oZWlnaHQgdG8gc3RheSBjb25zaXN0ZW50IHdpdGggdGhlXG4gICAgLy8gbmFtaW5nIHdpdGggZ292dWstZm9udC5cbiAgICAkY2FsY3VsYXRlZC1saW5lLWhlaWdodDogdHlwb2dyYXBoeS0taW50ZXJuYWwubGluZS1oZWlnaHQoXG4gICAgICAkbGluZS1oZWlnaHQ6ICRjYWxjdWxhdGVkLWxpbmUtaGVpZ2h0LFxuICAgICAgJGZvbnQtc2l6ZTogJGZvbnQtc2l6ZVxuICAgICk7XG5cbiAgICAvLyBNYXJrIHJ1bGVzIGFzICFpbXBvcnRhbnQgaWYgJGltcG9ydGFudCBpcyB0cnVlIC0gdGhpcyB3aWxsIHJlc3VsdCBpblxuICAgIC8vIHRoZXNlIHZhcmlhYmxlcyBiZWNvbWluZyBzdHJpbmdzLCBzbyB0aGlzIG5lZWRzIHRvIGhhcHBlbiAqYWZ0ZXIqIHRoZXlcbiAgICAvLyBhcmUgdXNlZCBpbiBjYWxjdWxhdGlvbnNcbiAgICAkZm9udC1zaXplOiAkZm9udC1zaXplIGdvdnVrLWlmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQpO1xuICAgICRmb250LXNpemUtcmVtOiAkZm9udC1zaXplLXJlbSBnb3Z1ay1pZigkaW1wb3J0YW50LCAhaW1wb3J0YW50KTtcbiAgICAkY2FsY3VsYXRlZC1saW5lLWhlaWdodDogJGNhbGN1bGF0ZWQtbGluZS1oZWlnaHQgZ292dWstaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCk7XG5cbiAgICBAaWYgbm90ICRicmVha3BvaW50IHtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1yZW07XG4gICAgICBsaW5lLWhlaWdodDogJGNhbGN1bGF0ZWQtbGluZS1oZWlnaHQ7XG4gICAgfSBAZWxzZSBpZiAkYnJlYWtwb2ludCA9PSBcInByaW50XCIge1xuICAgICAgQG1lZGlhIHByaW50IHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgICAgICBsaW5lLWhlaWdodDogJGNhbGN1bGF0ZWQtbGluZS1oZWlnaHQ7XG4gICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICBAbWVkaWEgI3tnb3Z1ay1mcm9tLWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1yZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkY2FsY3VsYXRlZC1saW5lLWhlaWdodDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEZvbnQgaGVscGVyXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlciB8IEJvb2xlYW4gfCBTdHJpbmd9ICRzaXplIFBvaW50IGZyb20gdGhlIHR5cGUgc2NhbGUgKHRoZVxuLy8vICAgc2l6ZSBhcyBpdCB3b3VsZCBhcHBlYXIgb24gdGFibGV0IGFuZCBhYm92ZSkuIFVzZSBgZmFsc2VgIHRvIGF2b2lkIHNldHRpbmdcbi8vLyAgIGEgc2l6ZS5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHdlaWdodCBbcmVndWxhcl0gLSBXZWlnaHQ6IGBib2xkYCBvciBgcmVndWxhcmBcbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR0YWJ1bGFyIFtmYWxzZV0gLSBXaGV0aGVyIHRvIHVzZSB0YWJ1bGFyIG51bWJlcnMgb3Igbm90XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRsaW5lLWhlaWdodCBbZmFsc2VdIC0gTGluZS1oZWlnaHQsIGlmIG92ZXJyaWRpbmcgdGhlXG4vLy8gICBkZWZhdWx0XG4vLy9cbi8vLyBAdGhyb3cgaWYgYCRzaXplYCBpcyBub3QgYSB2YWxpZCBwb2ludCBmcm9tIHRoZSB0eXBlIHNjYWxlIChvciBmYWxzZSlcbi8vL1xuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay1mb250KCRzaXplLCAkd2VpZ2h0OiByZWd1bGFyLCAkdGFidWxhcjogZmFsc2UsICRsaW5lLWhlaWdodDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgZ292dWstdHlwb2dyYXBoeS1jb21tb247XG5cbiAgQGlmICR0YWJ1bGFyIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250LXRhYnVsYXItbnVtYmVycztcbiAgfVxuXG4gIEBpZiAkd2VpZ2h0ID09IHJlZ3VsYXIge1xuICAgIEBpbmNsdWRlIGdvdnVrLXR5cG9ncmFwaHktd2VpZ2h0LXJlZ3VsYXI7XG4gIH0gQGVsc2UgaWYgJHdlaWdodCA9PSBib2xkIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1ib2xkO1xuICB9XG5cbiAgQGlmICRzaXplIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250LXNpemUoJHNpemUsICRsaW5lLWhlaWdodCk7XG4gIH1cbn1cblxuIiwiLy8vL1xuLy8vIEBncm91cCBzZXR0aW5ncy90eXBvZ3JhcGh5XG4vLy8vXG5AdXNlIFwic2FzczpsaXN0XCI7XG5AdXNlIFwic2FzczptZXRhXCI7XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gRm9udCBmYW1pbGllc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vLyBGb250IGZhbWlsaWVzIHRvIHVzZSBmb3IgYWxsIHR5cG9ncmFwaHkgb24gc2NyZWVuIG1lZGlhXG4vLy9cbi8vLyBAdHlwZSBMaXN0XG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLWZvbnQtZmFtaWx5OiBcIkdEUyBUcmFuc3BvcnRcIiwgYXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlsaWVzIHRvIHVzZSBmb3IgcHJpbnQgbWVkaWFcbi8vL1xuLy8vIFdlIHJlY29tbWVuZCB0aGF0IHlvdSB1c2Ugc3lzdGVtIGZvbnRzIHdoZW4gcHJpbnRpbmcuIFRoaXMgd2lsbCBhdm9pZCBpc3N1ZXNcbi8vLyB3aXRoIHNvbWUgcHJpbnRlciBkcml2ZXJzIGFuZCBvcGVyYXRpbmcgc3lzdGVtcy5cbi8vL1xuLy8vIEB0eXBlIExpc3Rcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstZm9udC1mYW1pbHktcHJpbnQ6IHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vLyBJbmNsdWRlIHRoZSBkZWZhdWx0IEBmb250LWZhY2UgZGVjbGFyYXRpb25zXG4vLy9cbi8vLyBEZWZhdWx0cyB0byB0cnVlIGlmIFwiR0RTIFRyYW5zcG9ydFwiIGFwcGVhcnMgaW4gdGhlICRnb3Z1ay1mb250LWZhbWlseVxuLy8vIHNldHRpbmcuXG4vLy9cbi8vLyBAdHlwZSBCb29sZWFuXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLWluY2x1ZGUtZGVmYXVsdC1mb250LWZhY2U6IChsaXN0LmluZGV4KCRnb3Z1ay1mb250LWZhbWlseSwgXCJHRFMgVHJhbnNwb3J0XCIpICE9IG51bGwpICFkZWZhdWx0O1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEZvbnQgd2VpZ2h0c1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vLyBGb250IHdlaWdodCBmb3IgcmVndWxhciB0eXBvZ3JhcGh5XG4vLy9cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuJGdvdnVrLWZvbnQtd2VpZ2h0LXJlZ3VsYXI6IDQwMCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBib2xkIHR5cG9ncmFwaHlcbi8vL1xuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4kZ292dWstZm9udC13ZWlnaHQtYm9sZDogNzAwICFkZWZhdWx0O1xuXG4iLCIvLy8vXG4vLy8gQGdyb3VwIGhlbHBlcnMvbGlua3Ncbi8vLy9cblxuQHVzZSBcIi4uL3NldHRpbmdzL2xpbmtzXCIgYXMgKjtcbkB1c2UgXCIuLi9zZXR0aW5ncy9tZWFzdXJlbWVudHNcIiBhcyAqO1xuQHVzZSBcImNvbG91clwiIGFzICo7XG5AdXNlIFwiZm9jdXNlZFwiIGFzICo7XG5AdXNlIFwidHlwb2dyYXBoeVwiIGFzICo7XG5cbi8vLyBDb21tb24gbGluayBzdHlsZXNcbi8vL1xuLy8vIFByb3ZpZGVzIHRoZSB0eXBvZ3JhcGh5IGFuZCBmb2N1cyBzdGF0ZSwgcmVnYXJkbGVzcyBvZiBsaW5rIHN0eWxlLlxuLy8vXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLWxpbmstY29tbW9uIHtcbiAgQGluY2x1ZGUgZ292dWstdHlwb2dyYXBoeS1jb21tb247XG4gIEBpbmNsdWRlIGdvdnVrLWxpbmstZGVjb3JhdGlvbjtcblxuICAmOmhvdmVyIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb2N1c2VkLXRleHQ7XG4gIH1cbn1cblxuLy8vIExpbmsgZGVjb3JhdGlvblxuLy8vXG4vLy8gUHJvdmlkZXMgdGhlIHRleHQgZGVjb3JhdGlvbiBmb3IgbGlua3MsIGluY2x1ZGluZyB0aGlja25lc3MgYW5kIHVuZGVybGluZVxuLy8vIG9mZnNldC4gVXNlIHRoaXMgbWl4aW4gb25seSBpZiB5b3UgY2Fubm90IHVzZSB0aGUgYGdvdnVrLWxpbmstY29tbW9uYCBtaXhpbi5cbi8vL1xuLy8vIEBhY2Nlc3MgcHVibGljXG5AbWl4aW4gZ292dWstbGluay1kZWNvcmF0aW9uIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cbiAgQGlmICRnb3Z1ay1saW5rLXVuZGVybGluZS10aGlja25lc3Mge1xuICAgIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6ICRnb3Z1ay1saW5rLXVuZGVybGluZS10aGlja25lc3M7XG4gIH1cblxuICBAaWYgJGdvdnVrLWxpbmstdW5kZXJsaW5lLW9mZnNldCB7XG4gICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAkZ292dWstbGluay11bmRlcmxpbmUtb2Zmc2V0O1xuICB9XG59XG5cbi8vLyBMaW5rIGhvdmVyIGRlY29yYXRpb25cbi8vL1xuLy8vIFByb3ZpZGVzIHRoZSB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzIGluIHRoZWlyIGhvdmVyIHN0YXRlLCBmb3IgeW91IHRvIHVzZVxuLy8vIHdpdGhpbiBhIGA6aG92ZXJgIHBzZXVkby1zZWxlY3Rvci4gVXNlIHRoaXMgbWl4aW4gb25seSBpZiB5b3UgY2Fubm90IHVzZSB0aGVcbi8vLyBgZ292dWstbGluay1jb21tb25gIG1peGluLlxuLy8vXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLWxpbmstaG92ZXItZGVjb3JhdGlvbiB7XG4gIEBpZiAkZ292dWstbGluay1ob3Zlci11bmRlcmxpbmUtdGhpY2tuZXNzIHtcbiAgICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiAkZ292dWstbGluay1ob3Zlci11bmRlcmxpbmUtdGhpY2tuZXNzO1xuICAgIC8vIERpc2FibGUgaW5rIHNraXBwaW5nIG9uIHVuZGVybGluZXMgb24gaG92ZXIuIEJyb3dzZXJzIGhhdmVuJ3RcbiAgICAvLyBzdGFuZGFyZGlzZWQgb24gdGhpcyBwYXJ0IG9mIHRoZSBzcGVjIHlldCwgc28gc2V0IGJvdGggcHJvcGVydGllc1xuICAgIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lOyAvLyBDaHJvbWl1bSwgRmlyZWZveFxuICAgIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG5vbmU7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb24tc2tpcDogbm9uZTsgLy8gU2FmYXJpXG4gIH1cbn1cblxuLy8vIERlZmF1bHQgbGluayBzdHlsZXNcbi8vL1xuLy8vIE1ha2VzIGxpbmtzIHVzZSB0aGUgZGVmYXVsdCB1bnZpc2l0ZWQsIHZpc2l0ZWQsIGhvdmVyIGFuZCBhY3RpdmUgY29sb3Vycy5cbi8vL1xuLy8vIElmIHlvdSB1c2UgdGhpcyBtaXhpbiBpbiBhIGNvbXBvbmVudCwgeW91IG11c3QgYWxzbyBpbmNsdWRlIHRoZVxuLy8vIGBnb3Z1ay1saW5rLWNvbW1vbmAgbWl4aW4gdG8gZ2V0IHRoZSBjb3JyZWN0IGZvY3VzIGFuZCBob3ZlciBzdGF0ZXMuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZ292dWstY29tcG9uZW50X19saW5rIHtcbi8vLyAgICAgQGluY2x1ZGUgZ292dWstbGluay1jb21tb247XG4vLy8gICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstc3R5bGUtZGVmYXVsdDtcbi8vLyAgIH1cbi8vL1xuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay1saW5rLXN0eWxlLWRlZmF1bHQge1xuICAmOmxpbmsge1xuICAgIGNvbG9yOiBnb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihsaW5rKTtcbiAgfVxuXG4gICY6dmlzaXRlZCB7XG4gICAgY29sb3I6IGdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGxpbmstdmlzaXRlZCk7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogZ292dWstZnVuY3Rpb25hbC1jb2xvdXIobGluay1ob3Zlcik7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6IGdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGxpbmstYWN0aXZlKTtcbiAgfVxuXG4gIC8vIFdoZW4gZm9jdXNzZWQsIHRoZSB0ZXh0IGNvbG91ciBuZWVkcyB0byBiZSBkYXJrZXIgdG8gZW5zdXJlIHRoYXQgY29sb3VyXG4gIC8vIGNvbnRyYXN0IGlzIHN0aWxsIGFjY2VwdGFibGVcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6IGdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGZvY3VzLXRleHQpO1xuICB9XG59XG5cbi8vLyBFcnJvciBsaW5rIHN0eWxlc1xuLy8vXG4vLy8gTWFrZXMgbGlua3MgdXNlIHRoZSBlcnJvciBjb2xvdXIuIFRoZSBsaW5rIHdpbGwgZGFya2VuIGlmIGl0J3MgYWN0aXZlIG9yIGFcbi8vLyB1c2VyIGhvdmVycyB0aGVpciBjdXJzb3Igb3ZlciBpdC5cbi8vL1xuLy8vIElmIHlvdSB1c2UgdGhpcyBtaXhpbiBpbiBhIGNvbXBvbmVudCwgeW91IG11c3QgYWxzbyBpbmNsdWRlIHRoZVxuLy8vIGBnb3Z1ay1saW5rLWNvbW1vbmAgbWl4aW4gdG8gZ2V0IHRoZSBjb3JyZWN0IGZvY3VzIGFuZCBob3ZlciBzdGF0ZXMuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZ292dWstY29tcG9uZW50X19saW5rIHtcbi8vLyAgICAgQGluY2x1ZGUgZ292dWstbGluay1jb21tb247XG4vLy8gICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstc3R5bGUtZXJyb3I7XG4vLy8gICB9XG4vLy9cbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AbWl4aW4gZ292dWstbGluay1zdHlsZS1lcnJvciB7XG4gICY6bGluayxcbiAgJjp2aXNpdGVkIHtcbiAgICBjb2xvcjogZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoZXJyb3IpO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IGdvdnVrLWNvbG91cihcInJlZFwiLCAkdmFyaWFudDogXCJzaGFkZS01MFwiKTtcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoZXJyb3IpO1xuICB9XG5cbiAgLy8gV2hlbiBmb2N1c3NlZCwgdGhlIHRleHQgY29sb3VyIG5lZWRzIHRvIGJlIGRhcmtlciB0byBlbnN1cmUgdGhhdCBjb2xvdXJcbiAgLy8gY29udHJhc3QgaXMgc3RpbGwgYWNjZXB0YWJsZVxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoZm9jdXMtdGV4dCk7XG4gIH1cbn1cblxuLy8vIFN1Y2Nlc3MgbGluayBzdHlsZXNcbi8vL1xuLy8vIE1ha2VzIGxpbmtzIHVzZSB0aGUgc3VjY2VzcyBjb2xvdXIuIFRoZSBsaW5rIHdpbGwgZGFya2VuIGlmIGl0J3MgYWN0aXZlIG9yIGFcbi8vLyB1c2VyIGhvdmVycyB0aGVpciBjdXJzb3Igb3ZlciBpdC5cbi8vL1xuLy8vIElmIHlvdSB1c2UgdGhpcyBtaXhpbiBpbiBhIGNvbXBvbmVudCwgeW91IG11c3QgYWxzbyBpbmNsdWRlIHRoZVxuLy8vIGBnb3Z1ay1saW5rLWNvbW1vbmAgbWl4aW4gdG8gZ2V0IHRoZSBjb3JyZWN0IGZvY3VzIGFuZCBob3ZlciBzdGF0ZXMuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZ292dWstY29tcG9uZW50X19saW5rIHtcbi8vLyAgICAgQGluY2x1ZGUgZ292dWstbGluay1jb21tb247XG4vLy8gICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstc3R5bGUtc3VjY2Vzcztcbi8vLyAgIH1cbi8vL1xuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay1saW5rLXN0eWxlLXN1Y2Nlc3Mge1xuICAmOmxpbmssXG4gICY6dmlzaXRlZCB7XG4gICAgY29sb3I6IGdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHN1Y2Nlc3MpO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IGdvdnVrLWNvbG91cihcImdyZWVuXCIsICR2YXJpYW50OiBcInNoYWRlLTUwXCIpO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiBnb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihzdWNjZXNzKTtcbiAgfVxuXG4gIC8vIFdoZW4gZm9jdXNzZWQsIHRoZSB0ZXh0IGNvbG91ciBuZWVkcyB0byBiZSBkYXJrZXIgdG8gZW5zdXJlIHRoYXQgY29sb3VyXG4gIC8vIGNvbnRyYXN0IGlzIHN0aWxsIGFjY2VwdGFibGVcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6IGdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGZvY3VzLXRleHQpO1xuICB9XG59XG5cbi8vLyBNdXRlZCBsaW5rIHN0eWxlc1xuLy8vXG4vLy8gTWFrZXMgbGlua3MgdXNlIHRoZSBzZWNvbmRhcnkgdGV4dCBjb2xvdXIuIFRoZSBsaW5rIHdpbGwgZGFya2VuIGlmIGl0J3Ncbi8vLyBhY3RpdmUgb3IgYSB1c2VyIGhvdmVycyB0aGVpciBjdXJzb3Igb3ZlciBpdC5cbi8vL1xuLy8vIElmIHlvdSB1c2UgdGhpcyBtaXhpbiBpbiBhIGNvbXBvbmVudCwgeW91IG11c3QgYWxzbyBpbmNsdWRlIHRoZVxuLy8vIGBnb3Z1ay1saW5rLWNvbW1vbmAgbWl4aW4gdG8gZ2V0IHRoZSBjb3JyZWN0IGZvY3VzIGFuZCBob3ZlciBzdGF0ZXMuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZ292dWstY29tcG9uZW50X19saW5rIHtcbi8vLyAgICAgQGluY2x1ZGUgZ292dWstbGluay1jb21tb247XG4vLy8gICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstc3R5bGUtbXV0ZWQ7XG4vLy8gICB9XG4vLy9cbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AbWl4aW4gZ292dWstbGluay1zdHlsZS1tdXRlZCB7XG4gICY6bGluayxcbiAgJjp2aXNpdGVkIHtcbiAgICBjb2xvcjogZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoc2Vjb25kYXJ5LXRleHQpO1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiBnb3Z1ay1mdW5jdGlvbmFsLWNvbG91cih0ZXh0KTtcbiAgfVxuXG4gIC8vIFdoZW4gZm9jdXNzZWQsIHRoZSB0ZXh0IGNvbG91ciBuZWVkcyB0byBiZSBkYXJrZXIgdG8gZW5zdXJlIHRoYXQgY29sb3VyXG4gIC8vIGNvbnRyYXN0IGlzIHN0aWxsIGFjY2VwdGFibGVcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6IGdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGZvY3VzLXRleHQpO1xuICB9XG59XG5cbi8vLyBUZXh0IGxpbmsgc3R5bGVzXG4vLy9cbi8vLyBNYWtlcyBsaW5rcyB1c2UgdGhlIHByaW1hcnkgdGV4dCBjb2xvdXIsIGluIGFsbCBzdGF0ZXMuIFVzZSB0aGlzIG1peGluIGZvclxuLy8vIG5hdmlnYXRpb24gY29tcG9uZW50cywgc3VjaCBhcyBicmVhZGNydW1icyBvciB0aGUgYmFjayBsaW5rLlxuLy8vXG4vLy8gSWYgeW91IHVzZSB0aGlzIG1peGluIGluIGEgY29tcG9uZW50LCB5b3UgbXVzdCBhbHNvIGluY2x1ZGUgdGhlXG4vLy8gYGdvdnVrLWxpbmstY29tbW9uYCBtaXhpbiB0byBnZXQgdGhlIGNvcnJlY3QgZm9jdXMgYW5kIGhvdmVyIHN0YXRlcy5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5nb3Z1ay1jb21wb25lbnRfX2xpbmsge1xuLy8vICAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLWNvbW1vbjtcbi8vLyAgICAgQGluY2x1ZGUgZ292dWstbGluay1zdHlsZS10ZXh0O1xuLy8vICAgfVxuLy8vXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLWxpbmstc3R5bGUtdGV4dCB7XG4gICY6bGluayxcbiAgJjp2aXNpdGVkLFxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6IGdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHRleHQpO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6IGdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGZvY3VzLXRleHQpO1xuICB9XG59XG5cbi8vLyBJbnZlcnNlIGxpbmsgc3R5bGVzXG4vLy9cbi8vLyBNYWtlcyBsaW5rcyB3aGl0ZSwgaW4gYWxsIHN0YXRlcy4gVXNlIHRoaXMgbWl4aW4gaWYgeW91J3JlIGRpc3BsYXlpbmcgbGlua3Ncbi8vLyBhZ2FpbnN0IGEgZGFyayBiYWNrZ3JvdW5kLlxuLy8vXG4vLy8gSWYgeW91IHVzZSB0aGlzIG1peGluIGluIGEgY29tcG9uZW50LCB5b3UgbXVzdCBhbHNvIGluY2x1ZGUgdGhlXG4vLy8gYGdvdnVrLWxpbmstY29tbW9uYCBtaXhpbiB0byBnZXQgdGhlIGNvcnJlY3QgZm9jdXMgYW5kIGhvdmVyIHN0YXRlcy5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5nb3Z1ay1jb21wb25lbnRfX2xpbmsge1xuLy8vICAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLWNvbW1vbjtcbi8vLyAgICAgQGluY2x1ZGUgZ292dWstbGluay1zdHlsZS1pbnZlcnNlO1xuLy8vICAgfVxuLy8vXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLWxpbmstc3R5bGUtaW52ZXJzZSB7XG4gICY6bGluayxcbiAgJjp2aXNpdGVkIHtcbiAgICBjb2xvcjogZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoaW52ZXJzZS10ZXh0KTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiBnb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihmb2N1cy10ZXh0KTtcbiAgfVxufVxuXG4vLy8gRGVmYXVsdCBsaW5rIHN0eWxlcywgd2l0aG91dCBhIHZpc2l0ZWQgc3RhdGVcbi8vL1xuLy8vIE1ha2VzIGxpbmtzIHVzZSB0aGUgZGVmYXVsdCB1bnZpc2l0ZWQsIGhvdmVyIGFuZCBhY3RpdmUgY29sb3Vycywgd2l0aCBub1xuLy8vIGRpc3RpbmN0IHZpc2l0ZWQgc3RhdGUuXG4vLy9cbi8vLyBVc2UgdGhpcyBtaXhpbiB3aGVuIGl0J3Mgbm90IGhlbHBmdWwgdG8gZGlzdGluZ3Vpc2ggYmV0d2VlbiB2aXNpdGVkIGFuZFxuLy8vIG5vbi12aXNpdGVkIGxpbmtzLiBGb3IgZXhhbXBsZSwgd2hlbiB5b3UgbGluayB0byBwYWdlcyB3aXRoXG4vLy8gZnJlcXVlbnRseS1jaGFuZ2luZyBjb250ZW50LCBzdWNoIGFzIHRoZSBkYXNoYm9hcmQgZm9yIGFuIGFkbWluIGludGVyZmFjZS5cbi8vL1xuLy8vIElmIHlvdSB1c2UgdGhpcyBtaXhpbiBpbiBhIGNvbXBvbmVudCwgeW91IG11c3QgYWxzbyBpbmNsdWRlIHRoZVxuLy8vIGBnb3Z1ay1saW5rLWNvbW1vbmAgbWl4aW4gdG8gZ2V0IHRoZSBjb3JyZWN0IGZvY3VzIGFuZCBob3ZlciBzdGF0ZXMuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZ292dWstY29tcG9uZW50X19saW5rIHtcbi8vLyAgICAgQGluY2x1ZGUgZ292dWstbGluay1jb21tb247XG4vLy8gICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstc3R5bGUtbm8tdmlzaXRlZC1zdGF0ZTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay1saW5rLXN0eWxlLW5vLXZpc2l0ZWQtc3RhdGUge1xuICAmOmxpbmsge1xuICAgIGNvbG9yOiBnb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihsaW5rKTtcbiAgfVxuXG4gICY6dmlzaXRlZCB7XG4gICAgY29sb3I6IGdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGxpbmspO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IGdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGxpbmstaG92ZXIpO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiBnb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihsaW5rLWFjdGl2ZSk7XG4gIH1cblxuICAvLyBXaGVuIGZvY3Vzc2VkLCB0aGUgdGV4dCBjb2xvdXIgbmVlZHMgdG8gYmUgZGFya2VyIHRvIGVuc3VyZSB0aGF0IGNvbG91clxuICAvLyBjb250cmFzdCBpcyBzdGlsbCBhY2NlcHRhYmxlXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiBnb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihmb2N1cy10ZXh0KTtcbiAgfVxufVxuXG4vLy8gUmVtb3ZlIHVuZGVybGluZSBmcm9tIGxpbmtzXG4vLy9cbi8vLyBSZW1vdmUgdW5kZXJsaW5lcyBmcm9tIGxpbmtzIHVubGVzcyB0aGUgbGluayBpcyBhY3RpdmUgb3IgYSB1c2VyIGhvdmVyc1xuLy8vIHRoZWlyIGN1cnNvciBvdmVyIGl0LlxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmdvdnVrLWNvbXBvbmVudF9fbGluayB7XG4vLy8gICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstY29tbW9uO1xuLy8vICAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLXN0eWxlLWRlZmF1bHQ7XG4vLy8gICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstc3R5bGUtbm8tdW5kZXJsaW5lO1xuLy8vICAgfVxuLy8vXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLWxpbmstc3R5bGUtbm8tdW5kZXJsaW5lIHtcbiAgJjpub3QoOmhvdmVyKTpub3QoOmFjdGl2ZSkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG4vLy8gSW5jbHVkZSBsaW5rIGRlc3RpbmF0aW9uIHdoZW4gcHJpbnRpbmcgdGhlIHBhZ2Vcbi8vL1xuLy8vIElmIHRoZSB1c2VyIHByaW50cyB0aGUgcGFnZSwgYWRkIHRoZSBkZXN0aW5hdGlvbiBVUkwgYWZ0ZXIgdGhlIGxpbmsgdGV4dCwgaWZcbi8vLyB0aGUgVVJMIHN0YXJ0cyB3aXRoIGAvYCwgYGh0dHA6Ly9gIG9yIGBodHRwczovL2AuXG4vLy9cbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AbWl4aW4gZ292dWstbGluay1wcmludC1mcmllbmRseSB7XG4gIEBtZWRpYSBwcmludCB7XG4gICAgJltocmVmXj1cIi9cIl0sXG4gICAgJltocmVmXj1cImh0dHA6Ly9cIl0sXG4gICAgJltocmVmXj1cImh0dHBzOi8vXCJdIHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7XG4gICAgICAgIGZvbnQtc2l6ZTogOTAlO1xuXG4gICAgICAgIC8vIEJlY2F1c2UgdGhlIFVSTHMgbWF5IGJlIHZlcnkgbG9uZywgZW5zdXJlIHRoYXQgdGhleSBtYXkgYmUgYnJva2VuXG4gICAgICAgIC8vIGF0IGFyYml0cmFyeSBwb2ludHMgaWYgdGhlcmUgYXJlIG5vIG90aGVyd2lzZSBhY2NlcHRhYmxlIGJyZWFrXG4gICAgICAgIC8vIHBvaW50cyBpbiB0aGUgbGluZVxuICAgICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBJbWFnZSBsaW5rIHN0eWxlc1xuLy8vXG4vLy8gUHJlcGFyZXMgYW5kIHByb3ZpZGVzIHRoZSBmb2N1cyBzdGF0ZSBmb3IgbGlua3MgdGhhdCBvbmx5IGNvbnRhaW4gaW1hZ2VzXG4vLy8gd2l0aCBubyBhY2NvbXBhbnlpbmcgdGV4dC5cbi8vL1xuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay1saW5rLWltYWdlIHtcbiAgLy8gTmVlZGVkIHRvIGRyYXcgdGhlIGZvY3VzIGFyb3VuZCB0aGUgZW50aXJlIGltYWdlXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAvLyBSZW1vdmUgZXh0cmEgc3BhY2UgYXQgdGhlIGJvdHRvbSBvZiB0aGUgaW1hZ2UgdGhhdCdzIGFkZGVkIGJ5IGxpbmUtaGVpZ2h0XG4gIGxpbmUtaGVpZ2h0OiAwO1xuXG4gIC8vIERvbid0IHJlbmRlciBhbiB1bmRlcmxpbmVcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICY6Zm9jdXMge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvY3VzZWQtYm94O1xuICB9XG59XG5cbiIsIi8vLy9cbi8vLyBAZ3JvdXAgc2V0dGluZ3MvbGlua3Ncbi8vLy9cbkB1c2UgXCJzYXNzOnN0cmluZ1wiO1xuXG4vLy8gVGhpY2tuZXNzIG9mIGxpbmsgdW5kZXJsaW5lc1xuLy8vXG4vLy8gVGhlIGRlZmF1bHQgd2lsbCBiZSBlaXRoZXI6XG4vLy9cbi8vLyAgLSAxcHhcbi8vLyAgLSAwLjA2MjVyZW0sIGlmIGl0J3MgdGhpY2tlciB0aGFuIDFweCBiZWNhdXNlIHRoZSB1c2VyIGhhcyBjaGFuZ2VkIHRoZSB0ZXh0XG4vLy8gICAgc2l6ZSBpbiB0aGVpciBicm93c2VyXG4vLy9cbi8vLyBTZXQgdGhpcyB2YXJpYWJsZSB0byBgZmFsc2VgIHRvIGF2b2lkIHNldHRpbmcgYSB0aGlja25lc3MuXG4vLy9cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstbGluay11bmRlcmxpbmUtdGhpY2tuZXNzOiBzdHJpbmcudW5xdW90ZShcIm1heCgxcHgsIC4wNjI1cmVtKVwiKSAhZGVmYXVsdDtcblxuLy8vIE9mZnNldCBvZiBsaW5rIHVuZGVybGluZXMgZnJvbSB0ZXh0IGJhc2VsaW5lXG4vLy9cbi8vLyBUaGUgZGVmYXVsdCBpcyAzcHggZXhwcmVzc2VkIGFzIGVtcywgYXMgY2FsY3VsYXRlZCBhZ2FpbnN0IHRoZSBkZWZhdWx0IGJvZHlcbi8vLyBmb250IHNpemUgKG9uIGRlc2t0b3ApIG9mIDE5cHguXG4vLy8gMyDDtyAxOSA9IDAuMTU3OFxuLy8vXG4vLy8gU2V0IHRoaXMgdmFyaWFibGUgdG8gYGZhbHNlYCB0byBhdm9pZCBzZXR0aW5nIGFuIG9mZnNldC5cbi8vL1xuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1saW5rLXVuZGVybGluZS1vZmZzZXQ6IDAuMTU3OGVtICFkZWZhdWx0O1xuXG4vLy8gVGhpY2tuZXNzIG9mIGxpbmsgdW5kZXJsaW5lcyBpbiBob3ZlciBzdGF0ZVxuLy8vXG4vLy8gVGhlIGRlZmF1bHQgZm9yIGVhY2ggbGluayB3aWxsIGJlIHRoZSB0aGlja2VzdCBvZiB0aGUgZm9sbG93aW5nOlxuLy8vXG4vLy8gIC0gM3B4XG4vLy8gIC0gMC4xODc1cmVtLCBpZiBpdCdzIHRoaWNrZXIgdGhhbiAzcHggYmVjYXVzZSB0aGUgdXNlciBoYXMgY2hhbmdlZCB0aGUgdGV4dFxuLy8vICAgIHNpemUgaW4gdGhlaXIgYnJvd3NlclxuLy8vICAtIDAuMTJlbSAocmVsYXRpdmUgdG8gdGhlIGxpbmsncyB0ZXh0IHNpemUpXG4vLy9cbi8vLyBTZXQgdGhpcyB2YXJpYWJsZSB0byBgZmFsc2VgIHRvIGF2b2lkIHNldHRpbmcgYSB0aGlja25lc3MuXG4vLy9cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstbGluay1ob3Zlci11bmRlcmxpbmUtdGhpY2tuZXNzOiBzdHJpbmcudW5xdW90ZShcIm1heCgzcHgsIC4xODc1cmVtLCAuMTJlbSlcIikgIWRlZmF1bHQ7XG5cbiIsIi8vLy9cbi8vLyBAZ3JvdXAgaGVscGVyc1xuLy8vL1xuXG5AdXNlIFwiLi4vdG9vbHMvZXhwb3J0c1wiIGFzICo7XG5AdXNlIFwiLi4vdG9vbHMvZm9udC11cmxcIiBhcyAqO1xuXG4vLy8gRm9udCBGYWNlIC0gR0RTIFRyYW5zcG9ydFxuLy8vXG4vLy8gT3V0cHV0cyB0aGUgZm9udC1mYWNlIGRlY2xhcmF0aW9uIGZvciBHRFMgVHJhbnNwb3J0IGF0IHRoZSByb290IG9mIHRoZSBDU1MgZG9jdW1lbnRcbi8vLyB0aGUgZmlyc3QgdGltZSBpdCBpcyBjYWxsZWQuXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcblxuQG1peGluIGdkcy10cmFuc3BvcnQge1xuICBAaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvaGVscGVycy9mb250LWZhY2VzXCIpIHtcbiAgICBAYXQtcm9vdCB7XG4gICAgICAvKiEgQ29weXJpZ2h0IChjKSAyMDExIGJ5IE1hcmdhcmV0IENhbHZlcnQgJiBIZW5yaWsgS3ViZWwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoZSBmb250IGhhcyBiZWVuIGN1c3RvbWlzZWQgZm9yIGV4Y2x1c2l2ZSB1c2Ugb24gZ292LnVrLiBUaGlzIGN1dCBpcyBub3QgY29tbWVyY2lhbGx5IGF2YWlsYWJsZS4gKi8gLyogc3R5bGVsaW50LWRpc2FibGUtbGluZSBzY3NzL2NvbW1lbnQtbm8tbG91ZCAgKi9cbiAgICAgIEBmb250LWZhY2Uge1xuICAgICAgICBmb250LWZhbWlseTogXCJHRFMgVHJhbnNwb3J0XCI7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC1kaXNwbGF5OiBmYWxsYmFjaztcbiAgICAgICAgc3JjOlxuICAgICAgICAgIGdvdnVrLWZvbnQtdXJsKFwibGlnaHQtOTRhMDdlMDZhMS12Mi53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgICAgICBnb3Z1ay1mb250LXVybChcImxpZ2h0LWY1OTFiMTNmN2QtdjIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICAgICAgfVxuXG4gICAgICBAZm9udC1mYWNlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiR0RTIFRyYW5zcG9ydFwiO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBmb250LWRpc3BsYXk6IGZhbGxiYWNrO1xuICAgICAgICBzcmM6XG4gICAgICAgICAgZ292dWstZm9udC11cmwoXCJib2xkLWI1NDJiZWIyNzQtdjIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgICAgICAgZ292dWstZm9udC11cmwoXCJib2xkLWFmZmE5NjU3MWQtdjIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4iLCIvLy8vXG4vLy8gQGdyb3VwIGhlbHBlcnMvYWNjZXNzaWJpbGl0eVxuLy8vL1xuXG5AdXNlIFwiLi4vc2V0dGluZ3MvbWVhc3VyZW1lbnRzXCIgYXMgKjtcbkB1c2UgXCJjb2xvdXJcIiBhcyAqO1xuXG4vLy8gRm9jdXNlZCB0ZXh0XG4vLy9cbi8vLyBQcm92aWRlcyBhbiBvdXRsaW5lIHRvIGNsZWFybHkgaW5kaWNhdGUgd2hlbiB0aGUgdGFyZ2V0IGVsZW1lbnQgaXMgZm9jdXNlZC5cbi8vLyBVc2VkIGZvciBpbnRlcmFjdGl2ZSB0ZXh0LWJhc2VkIGVsZW1lbnRzLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFN0eWxpbmcgdGhlIGZvY3VzIHN0YXRlIGZvciBhIGxpbmtcbi8vLyAgIC5nb3Z1ay1saW5rOmZvY3VzIHtcbi8vLyAgICAgQGluY2x1ZGUgZ292dWstZm9jdXNlZC10ZXh0O1xuLy8vICAgfVxuLy8vXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLWZvY3VzZWQtdGV4dCB7XG4gIC8vIFdoZW4gY29sb3VycyBhcmUgb3ZlcnJpZGRlbiwgZm9yIGV4YW1wbGUgd2hlbiB1c2VycyBoYXZlIGEgZGFyayBtb2RlLFxuICAvLyBiYWNrZ3JvdW5kcyBhbmQgYm94LXNoYWRvd3MgZGlzYXBwZWFyLCBzbyB3ZSBuZWVkIHRvIGVuc3VyZSB0aGVyZSdzIGFcbiAgLy8gdHJhbnNwYXJlbnQgb3V0bGluZSB3aGljaCB3aWxsIGJlIHNldCB0byBhIHZpc2libGUgY29sb3VyLlxuXG4gIG91dGxpbmU6ICRnb3Z1ay1mb2N1cy13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgY29sb3I6IGdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGZvY3VzLXRleHQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBnb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihmb2N1cyk7XG4gIGJveC1zaGFkb3c6XG4gICAgMCAtMnB4IGdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGZvY3VzKSxcbiAgICAwIDRweCBnb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihmb2N1cy10ZXh0KTtcbiAgLy8gV2hlbiBsaW5rIGlzIGZvY3Vzc2VkLCBoaWRlIHRoZSBkZWZhdWx0IHVuZGVybGluZSBzaW5jZSB0aGVcbiAgLy8gYm94IHNoYWRvdyBhZGRzIHRoZSBcInVuZGVybGluZVwiXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAvLyBGaXhlcyBhbiBpc3N1ZSBpbiBDaHJvbWl1bSAxMDjigJMxMTEgd2hlcmUgdGhlIGJveC1zaGFkb3cgb24gdGhlIGZvY3VzIHN0YXRlXG4gIC8vIGlzIG1pc3Npbmcgb24gbGlua3MgdGhhdCB3cmFwIGFjcm9zcyBtdWx0aXBsZSBsaW5lcyBbMV0uXG4gIC8vXG4gIC8vIEhvd2V2ZXIsIHRleHQtd3JhcDogYmFsYW5jZSBkb2Vzbid0IHBsYXkgbmljZWx5IHdpdGggYm94LWRlY29yYXRpb24tYnJlYWs6XG4gIC8vIGNsb25lLCBjYXVzaW5nIGxpbmtzIHRvIHJlLWZsb3cgd2hlbiBmb2N1c2VkIFsyXS4gQXMgdGV4dC13cmFwOiBiYWxhbmNlXG4gIC8vIHdhc24ndCBpbnRyb2R1Y2VkIHVudGlsIENocm9taXVtIDExNCB3ZSBjYW4gdXNlIGl0IGFzIGEgd2F5IHRvIHRhcmdldFxuICAvLyB0aGlzIGZpeCB0byBqdXN0IDEwOOKAkzExMS5cbiAgLy9cbiAgLy8gWzFdOiBodHRwOi8vY3JidWcuY29tLzQwODg0OTcxXG4gIC8vIFsyXTogaHR0cHM6Ly9naXRodWIuY29tL2FscGhhZ292L2dvdnVrLWZyb250ZW5kL2lzc3Vlcy81ODc4XG4gIEBzdXBwb3J0cyBub3QgKHRleHQtd3JhcDogYmFsYW5jZSkge1xuICAgIC13ZWJraXQtYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuICAgICAgICAgICAgYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuICB9XG59XG5cbi8vLyBGb2N1c2VkIGJveFxuLy8vXG4vLy8gUHJvdmlkZXMgYW4gb3V0bGluZSB0byBjbGVhcmx5IGluZGljYXRlIHdoZW4gdGhlIHRhcmdldCBlbGVtZW50IGlzIGZvY3VzZWQuXG4vLy8gVW5saWtlIGdvdnVrLWZvY3VzZWQtdGV4dCwgd2hpY2ggb25seSBkcmF3cyBhbiB1bmRlcmxpbmUgYmVsb3cgdGhlIGVsZW1lbnQsXG4vLy8gZ292dWstZm9jdXNlZC1ib3ggZHJhd3MgYW4gb3V0bGluZSBhcm91bmQgYWxsIHNpZGVzIG9mIHRoZSBlbGVtZW50LlxuLy8vIEJlc3QgdXNlZCBmb3Igbm9uLXRleHQgY29udGVudCBjb250YWluZWQgd2l0aGluIGxpbmtzLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFN0eWxpbmcgdGhlIGZvY3VzIHN0YXRlIGZvciBhIGxpbmtlZCBpbWFnZVxuLy8vICAgLmdvdnVrLWxpbmstaW1hZ2U6Zm9jdXMge1xuLy8vICAgICBAaW5jbHVkZSBnb3Z1ay1mb2N1c2VkLWJveDtcbi8vLyAgIH1cbi8vL1xuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay1mb2N1c2VkLWJveCB7XG4gIG91dGxpbmU6ICRnb3Z1ay1mb2N1cy13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzpcbiAgICAwIDAgMCA0cHggZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoZm9jdXMpLFxuICAgIDAgMCAwIDhweCBnb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihmb2N1cy10ZXh0KTtcbn1cblxuLy8vIEZvY3VzZWQgZm9ybSBpbnB1dFxuLy8vXG4vLy8gUHJvdmlkZXMgYW4gb3V0bGluZSB0byBjbGVhcmx5IGluZGljYXRlIHdoZW4gdGhlIHRhcmdldCBlbGVtZW50IGlzIGZvY3VzZWQuXG4vLy8gVXNlZCBmb3IgZm9ybSBpbnB1dHMuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gU3R5bGluZyB0aGUgZm9jdXMgc3RhdGUgZm9yIGEgZm9ybSBpbnB1dFxuLy8vICAgLmdvdnVrLWlucHV0OmZvY3VzIHtcbi8vLyAgICAgQGluY2x1ZGUgZ292dWstZm9jdXNlZC1mb3JtLWlucHV0O1xuLy8vICAgfVxuLy8vXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLWZvY3VzZWQtZm9ybS1pbnB1dCB7XG4gIG91dGxpbmU6ICRnb3Z1ay1mb2N1cy13aWR0aCBzb2xpZDtcbiAgb3V0bGluZS1jb2xvcjogZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoZm9jdXMpO1xuICAvLyBFbnN1cmUgb3V0bGluZSBhcHBlYXJzIG91dHNpZGUgb2YgdGhlIGVsZW1lbnRcbiAgb3V0bGluZS1vZmZzZXQ6IDA7XG4gIC8vIERvdWJsZSB0aGUgYm9yZGVyIGJ5IGFkZGluZyBpdHMgd2lkdGggYWdhaW4uIFVzZSBgYm94LXNoYWRvd2AgZm9yIHRoaXNcbiAgLy8gaW5zdGVhZCBvZiBjaGFuZ2luZyBgYm9yZGVyLXdpZHRoYCAtIHRoaXMgaXMgZm9yIGNvbnNpc3RlbmN5IHdpdGhcbiAgLy8gY29tcG9uZW50cyBzdWNoIGFzIHRleHRhcmVhIHdoZXJlIHdlIGF2b2lkIGNoYW5naW5nIGBib3JkZXItd2lkdGhgIGFzXG4gIC8vIGl0IHdpbGwgY2hhbmdlIHRoZSBlbGVtZW50IHNpemUuIEFsc28sIGBvdXRsaW5lYCBjYW5ub3QgYmUgdXRpbGlzZWRcbiAgLy8gaGVyZSBhcyBpdCBpcyBhbHJlYWR5IHVzZWQgZm9yIHRoZSB5ZWxsb3cgZm9jdXMgc3RhdGUuXG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwICRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50IGdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGlucHV0LWJvcmRlcik7XG59XG5cbiIsIkB1c2UgXCIuLi9iYXNlXCI7XG5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBzdHlsZXMge1xuICAvLyBIZWFkaW5nc1xuICAlZ292dWstaGVhZGluZy14bCB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1mb250KCRzaXplOiA0OCwgJHdlaWdodDogYm9sZCk7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIodGV4dCk7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig4LCBcImJvdHRvbVwiKTtcbiAgfVxuXG4gIC5nb3Z1ay1oZWFkaW5nLXhsIHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1oZWFkaW5nLXhsO1xuICB9XG5cbiAgJWdvdnVrLWhlYWRpbmctbCB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1mb250KCRzaXplOiAzNiwgJHdlaWdodDogYm9sZCk7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIodGV4dCk7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig2LCBcImJvdHRvbVwiKTtcbiAgfVxuXG4gIC5nb3Z1ay1oZWFkaW5nLWwge1xuICAgIEBleHRlbmQgJWdvdnVrLWhlYWRpbmctbDtcbiAgfVxuXG4gICVnb3Z1ay1oZWFkaW5nLW0ge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udCgkc2l6ZTogMjQsICR3ZWlnaHQ6IGJvbGQpO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHRleHQpO1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNCwgXCJib3R0b21cIik7XG4gIH1cblxuICAuZ292dWstaGVhZGluZy1tIHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1oZWFkaW5nLW07XG4gIH1cblxuICAlZ292dWstaGVhZGluZy1zIHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWZvbnQoJHNpemU6IDE5LCAkd2VpZ2h0OiBib2xkKTtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBjb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cih0ZXh0KTtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDQsIFwiYm90dG9tXCIpO1xuICB9XG5cbiAgLmdvdnVrLWhlYWRpbmctcyB7XG4gICAgQGV4dGVuZCAlZ292dWstaGVhZGluZy1zO1xuICB9XG5cbiAgLy8gQ2FwdGlvbnMgdG8gYmUgdXNlZCBpbnNpZGUgaGVhZGluZ3NcblxuICAuZ292dWstY2FwdGlvbi14bCB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1mb250KCRzaXplOiAyNyk7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIG1hcmdpbi1ib3R0b206IGJhc2UuZ292dWstc3BhY2luZygxKTtcblxuICAgIGNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHNlY29uZGFyeS10ZXh0KTtcbiAgfVxuXG4gIC5nb3Z1ay1jYXB0aW9uLWwge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udCgkc2l6ZTogMjQpO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBtYXJnaW4tYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoMSk7XG4gICAgY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoc2Vjb25kYXJ5LXRleHQpO1xuXG4gICAgQG1lZGlhICN7YmFzZS5nb3Z1ay1mcm9tLWJyZWFrcG9pbnQodGFibGV0KX0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAuZ292dWstY2FwdGlvbi1tIHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWZvbnQoJHNpemU6IDE5KTtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoc2Vjb25kYXJ5LXRleHQpO1xuICB9XG5cbiAgLy8gQm9keSAocGFyYWdyYXBocylcblxuICAlZ292dWstYm9keS1sIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHRleHQpO1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udCgkc2l6ZTogMjQpO1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNiwgXCJib3R0b21cIik7XG4gIH1cblxuICAuZ292dWstYm9keS1sIHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1ib2R5LWw7XG4gIH1cblxuICAlZ292dWstYm9keS1tIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHRleHQpO1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udCgkc2l6ZTogMTkpO1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNCwgXCJib3R0b21cIik7XG4gIH1cblxuICAuZ292dWstYm9keS1tIHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1ib2R5LW07XG4gIH1cblxuICAlZ292dWstYm9keS1zIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHRleHQpO1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udCgkc2l6ZTogMTYpO1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNCwgXCJib3R0b21cIik7XG4gIH1cblxuICAuZ292dWstYm9keS1zIHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1ib2R5LXM7XG4gIH1cblxuICAvLyBVc2FnZSBhbGlhc2VzXG5cbiAgLy8gVXNpbmcgZXh0ZW5kIHRvIGFsaWFzIG1lYW5zIHdlIGFsc28gaW5oZXJpdCBhbnkgY29udGV4dHVhbCBhZGp1c3RtZW50cyB0aGF0XG4gIC8vIHJlZmVyIHRvIHRoZSAnb3JpZ2luYWwnIGNsYXNzIG5hbWVcblxuICAuZ292dWstYm9keS1sZWFkIHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1ib2R5LWw7XG4gIH1cblxuICAuZ292dWstYm9keSB7XG4gICAgQGV4dGVuZCAlZ292dWstYm9keS1tO1xuICB9XG5cbiAgLy8gQ29udGV4dHVhbCBhZGp1c3RtZW50c1xuICAvLyBBZGQgdG9wIHBhZGRpbmcgdG8gaGVhZGluZ3MgdGhhdCBhcHBlYXIgZGlyZWN0bHkgYWZ0ZXIgcGFyYWdyYXBocy5cblxuICAlZ292dWstYm9keS1sICsgJWdvdnVrLWhlYWRpbmctbCB7XG4gICAgcGFkZGluZy10b3A6IGJhc2UuZ292dWstc3BhY2luZygxKTtcblxuICAgIEBtZWRpYSAje2Jhc2UuZ292dWstZnJvbS1icmVha3BvaW50KHRhYmxldCl9IHtcbiAgICAgIHBhZGRpbmctdG9wOiBiYXNlLmdvdnVrLXNwYWNpbmcoMik7XG4gICAgfVxuICB9XG5cbiAgJWdvdnVrLWJvZHktbSArICVnb3Z1ay1oZWFkaW5nLWwsXG4gICVnb3Z1ay1ib2R5LXMgKyAlZ292dWstaGVhZGluZy1sLFxuICAlZ292dWstbGlzdCArICVnb3Z1ay1oZWFkaW5nLWwge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstcmVzcG9uc2l2ZS1wYWRkaW5nKDQsIFwidG9wXCIpO1xuICB9XG5cbiAgJWdvdnVrLWJvZHktbSArICVnb3Z1ay1oZWFkaW5nLW0sXG4gICVnb3Z1ay1ib2R5LXMgKyAlZ292dWstaGVhZGluZy1tLFxuICAlZ292dWstbGlzdCArICVnb3Z1ay1oZWFkaW5nLW0sXG4gICVnb3Z1ay1ib2R5LW0gKyAlZ292dWstaGVhZGluZy1zLFxuICAlZ292dWstYm9keS1zICsgJWdvdnVrLWhlYWRpbmctcyxcbiAgJWdvdnVrLWxpc3QgKyAlZ292dWstaGVhZGluZy1zIHtcbiAgICBwYWRkaW5nLXRvcDogYmFzZS5nb3Z1ay1zcGFjaW5nKDEpO1xuXG4gICAgQG1lZGlhICN7YmFzZS5nb3Z1ay1mcm9tLWJyZWFrcG9pbnQodGFibGV0KX0ge1xuICAgICAgcGFkZGluZy10b3A6IGJhc2UuZ292dWstc3BhY2luZygyKTtcbiAgICB9XG4gIH1cbn1cblxuIiwiLy8vL1xuLy8vIEBncm91cCBoZWxwZXJzL3NwYWNpbmdcbi8vLy9cbkB1c2UgXCJzYXNzOm1hcFwiO1xuQHVzZSBcInNhc3M6bWV0YVwiO1xuXG5AdXNlIFwiLi4vc2V0dGluZ3Mvc3BhY2luZ1wiIGFzICo7XG5AdXNlIFwibWVkaWEtcXVlcmllc1wiIGFzICo7XG5cbkB1c2UgXCIuLi90b29scy9pZlwiIGFzICo7XG5cbi8vLyBSZXNwb25zaXZlIHNwYWNpbmdcbi8vL1xuLy8vIEFkZHMgcmVzcG9uc2l2ZSBzcGFjaW5nIChlaXRoZXIgcGFkZGluZyBvciBtYXJnaW4sIGRlcGVuZGluZyBvbiBgJHByb3BlcnR5YClcbi8vLyBieSBmZXRjaGluZyBhICdzcGFjaW5nIG1hcCcgZnJvbSB0aGUgcmVzcG9uc2l2ZSBzcGFjaW5nIHNjYWxlLCB3aGljaCBkZWZpbmVzXG4vLy8gZGlmZmVyZW50IHNwYWNpbmcgdmFsdWVzIGF0IGRpZmZlcmVudCBicmVha3BvaW50cy5cbi8vL1xuLy8vIFRvIGdlbmVyYXRlIHJlc3BvbnNpdmUgc3BhY2luZywgdXNlICdnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbicgb3Jcbi8vLyAnZ292dWstcmVzcG9uc2l2ZS1wYWRkaW5nJyBtaXhpbnNcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcmVzcG9uc2l2ZS1zcGFjaW5nLXBvaW50IC0gUG9pbnQgb24gdGhlIHJlc3BvbnNpdmUgc3BhY2luZ1xuLy8vICAgc2NhbGUsIGNvcnJlc3BvbmRzIHRvIGEgbWFwIG9mIGJyZWFrcG9pbnRzIGFuZCBzcGFjaW5nIHZhbHVlc1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkcHJvcGVydHkgLSBQcm9wZXJ0eSB0byBhZGQgc3BhY2luZyB0byAoZS5nLiAnbWFyZ2luJylcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGRpcmVjdGlvbiBbYWxsXSAtIERpcmVjdGlvbiB0byBhZGQgc3BhY2luZyB0b1xuLy8vICAgKGB0b3BgLCBgcmlnaHRgLCBgYm90dG9tYCwgYGxlZnRgLCBgYWxsYClcbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRpbXBvcnRhbnQgW2ZhbHNlXSAtIFdoZXRoZXIgdG8gbWFyayBhcyBgIWltcG9ydGFudGBcbi8vLyBAcGFyYW0ge051bWJlcn0gJGFkanVzdG1lbnQgW2ZhbHNlXSAtIE9mZnNldCB0byBhZGp1c3Qgc3BhY2luZyBieVxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5cbkBtaXhpbiByZXNwb25zaXZlLXNwYWNpbmcoXG4gICRyZXNwb25zaXZlLXNwYWNpbmctcG9pbnQsXG4gICRwcm9wZXJ0eSxcbiAgJGRpcmVjdGlvbjogXCJhbGxcIixcbiAgJGltcG9ydGFudDogZmFsc2UsXG4gICRhZGp1c3RtZW50OiBmYWxzZVxuKSB7XG4gICRhY3R1YWwtaW5wdXQtdHlwZTogbWV0YS50eXBlLW9mKCRyZXNwb25zaXZlLXNwYWNpbmctcG9pbnQpO1xuICBAaWYgJGFjdHVhbC1pbnB1dC10eXBlICE9IFwibnVtYmVyXCIge1xuICAgIEBlcnJvciBcIkV4cGVjdGVkIGEgbnVtYmVyIChpbnRlZ2VyKSwgYnV0IGdvdCBhIFwiICsgXCIjeyRhY3R1YWwtaW5wdXQtdHlwZX0uXCI7XG4gIH1cblxuICBAaWYgbm90IG1hcC5oYXMta2V5KCRnb3Z1ay1zcGFjaW5nLXJlc3BvbnNpdmUtc2NhbGUsICRyZXNwb25zaXZlLXNwYWNpbmctcG9pbnQpIHtcbiAgICBAZXJyb3IgXCJVbmtub3duIHNwYWNpbmcgcG9pbnQgYCN7JHJlc3BvbnNpdmUtc3BhY2luZy1wb2ludH1gLiBNYWtlIHN1cmUgeW91IGFyZSB1c2luZyBhIHBvaW50IGZyb20gdGhlIFwiXG4gICAgICArIFwicmVzcG9uc2l2ZSBzcGFjaW5nIHNjYWxlIGluIGBfc2V0dGluZ3Mvc3BhY2luZy5zY3NzYC5cIjtcbiAgfVxuXG4gIC8vIE1ha2Ugc3VyZSB0aGF0IHRoZSByZXR1cm4gdmFsdWUgZnJvbSBgX3NldHRpbmdzL3NwYWNpbmcuc2Nzc2AgaXMgYSBtYXAuXG4gICRzY2FsZS1tYXA6IG1hcC5nZXQoJGdvdnVrLXNwYWNpbmctcmVzcG9uc2l2ZS1zY2FsZSwgJHJlc3BvbnNpdmUtc3BhY2luZy1wb2ludCk7XG4gICRhY3R1YWwtbWFwLXR5cGU6IG1ldGEudHlwZS1vZigkc2NhbGUtbWFwKTtcbiAgQGlmICRhY3R1YWwtbWFwLXR5cGUgIT0gXCJtYXBcIiB7XG4gICAgQGVycm9yIFwiRXhwZWN0ZWQgYSBudW1iZXIgKGludGVnZXIpLCBidXQgZ290IGEgXCJcbiAgICAgICsgXCIjeyRhY3R1YWwtbWFwLXR5cGV9LiBNYWtlIHN1cmUgeW91IGFyZSB1c2luZyBhIG1hcCB0byBzZXQgdGhlIHJlc3BvbnNpdmUgc3BhY2luZyBpbiBgX3NldHRpbmdzL3NwYWNpbmcuc2Nzc2ApXCI7XG4gIH1cblxuICAvLyBMb29wIHRocm91Z2ggZWFjaCBicmVha3BvaW50IGluIHRoZSBtYXBcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRicmVha3BvaW50LXZhbHVlIGluICRzY2FsZS1tYXAge1xuICAgIEBpZiAkYWRqdXN0bWVudCB7XG4gICAgICAkYnJlYWtwb2ludC12YWx1ZTogJGJyZWFrcG9pbnQtdmFsdWUgKyAkYWRqdXN0bWVudDtcbiAgICB9XG5cbiAgICAvLyBUaGUgJ251bGwnIGJyZWFrcG9pbnQgaXMgZm9yIG1vYmlsZS5cbiAgICBAaWYgbm90ICRicmVha3BvaW50IHtcbiAgICAgIEBpZiAkZGlyZWN0aW9uID09IGFsbCB7XG4gICAgICAgICN7JHByb3BlcnR5fTogJGJyZWFrcG9pbnQtdmFsdWUgZ292dWstaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgI3skcHJvcGVydHl9LSN7JGRpcmVjdGlvbn06ICRicmVha3BvaW50LXZhbHVlIGdvdnVrLWlmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQpO1xuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgQG1lZGlhICN7Z292dWstZnJvbS1icmVha3BvaW50KCRicmVha3BvaW50KX0ge1xuICAgICAgICBAaWYgJGRpcmVjdGlvbiA9PSBhbGwge1xuICAgICAgICAgICN7JHByb3BlcnR5fTogJGJyZWFrcG9pbnQtdmFsdWUgZ292dWstaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCk7XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICN7JHByb3BlcnR5fS0jeyRkaXJlY3Rpb259OiAkYnJlYWtwb2ludC12YWx1ZSBnb3Z1ay1pZigkaW1wb3J0YW50LCAhaW1wb3J0YW50KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4iLCJAdXNlIFwiLi4vYmFzZVwiO1xuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gc3R5bGVzIHtcbiAgJWdvdnVrLWxpc3Qge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udCgkc2l6ZTogMTkpO1xuXG4gICAgLy8gS2VlcCBtYXJnaW4gY29uZmlndXJhdGlvbiBuZXh0IHRvIGVhY2ggb3RoZXJcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZSBvcmRlci9vcmRlci1wcm9wZXJ0aWVzXG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDQsIFwiYm90dG9tXCIpO1xuICAgIC8vIHN0eWxlbGludC1lbmFibGUgb3JkZXIvb3JkZXItcHJvcGVydGllc1xuXG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBjb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cih0ZXh0KTtcblxuICAgIC8vIEFkZCBhIHRvcCBtYXJnaW4gZm9yIG5lc3RlZCBsaXN0c1xuICAgICVnb3Z1ay1saXN0IHtcbiAgICAgIG1hcmdpbi10b3A6IGJhc2UuZ292dWstc3BhY2luZygyKTtcbiAgICB9XG4gIH1cblxuICAlZ292dWstbGlzdCA+IGxpIHtcbiAgICAvLyBMaXN0cyB3aXRob3V0IG51bWJlcnMgb3IgYnVsbGV0cyBzaG91bGQgYWx3YXlzIGhhdmUgZXh0cmEgc3BhY2UgYmV0d2VlblxuICAgIC8vIGxpc3QgaXRlbXMuIExpc3RzIHdpdGggbnVtYmVycyBvciBidWxsZXRzIG9ubHkgaGF2ZSB0aGlzIGV4dHJhIHNwYWNlIG9uXG4gICAgLy8gdGFibGV0IGFuZCBhYm92ZVxuICAgIG1hcmdpbi1ib3R0b206IGJhc2UuZ292dWstc3BhY2luZygxKTtcbiAgfVxuXG4gIC5nb3Z1ay1saXN0IHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1saXN0O1xuICB9XG5cbiAgJWdvdnVrLWxpc3QtLWJ1bGxldCB7XG4gICAgcGFkZGluZy1sZWZ0OiBiYXNlLmdvdnVrLXNwYWNpbmcoNCk7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuICB9XG5cbiAgJWdvdnVrLWxpc3QtLW51bWJlciB7XG4gICAgcGFkZGluZy1sZWZ0OiBiYXNlLmdvdnVrLXNwYWNpbmcoNCk7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBkZWNpbWFsO1xuICB9XG5cbiAgJWdvdnVrLWxpc3QtLWJ1bGxldCA+IGxpLFxuICAlZ292dWstbGlzdC0tbnVtYmVyID4gbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBAbWVkaWEgI3tiYXNlLmdvdnVrLWZyb20tYnJlYWtwb2ludCh0YWJsZXQpfSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoMSk7XG4gICAgfVxuICB9XG5cbiAgJWdvdnVrLWxpc3QtLXNwYWNlZCA+IGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoMik7XG5cbiAgICBAbWVkaWEgI3tiYXNlLmdvdnVrLWZyb20tYnJlYWtwb2ludCh0YWJsZXQpfSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoMyk7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWxpc3QtLWJ1bGxldCB7XG4gICAgQGV4dGVuZCAlZ292dWstbGlzdC0tYnVsbGV0O1xuICB9XG5cbiAgLmdvdnVrLWxpc3QtLW51bWJlciB7XG4gICAgQGV4dGVuZCAlZ292dWstbGlzdC0tbnVtYmVyO1xuICB9XG5cbiAgLmdvdnVrLWxpc3QtLXNwYWNlZCB7XG4gICAgQGV4dGVuZCAlZ292dWstbGlzdC0tc3BhY2VkO1xuICB9XG59XG5cbiIsIkB1c2UgXCIuLi9iYXNlXCI7XG5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBzdHlsZXMge1xuICAlZ292dWstc2VjdGlvbi1icmVhayB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIC5nb3Z1ay1zZWN0aW9uLWJyZWFrIHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1zZWN0aW9uLWJyZWFrO1xuICB9XG5cbiAgLy8gU2l6ZXNcblxuICAlZ292dWstc2VjdGlvbi1icmVhay0teGwge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oOCwgXCJ0b3BcIik7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig4LCBcImJvdHRvbVwiKTtcbiAgfVxuXG4gIC5nb3Z1ay1zZWN0aW9uLWJyZWFrLS14bCB7XG4gICAgQGV4dGVuZCAlZ292dWstc2VjdGlvbi1icmVhay0teGw7XG4gIH1cblxuICAlZ292dWstc2VjdGlvbi1icmVhay0tbCB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig2LCBcInRvcFwiKTtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDYsIFwiYm90dG9tXCIpO1xuICB9XG5cbiAgLmdvdnVrLXNlY3Rpb24tYnJlYWstLWwge1xuICAgIEBleHRlbmQgJWdvdnVrLXNlY3Rpb24tYnJlYWstLWw7XG4gIH1cblxuICAlZ292dWstc2VjdGlvbi1icmVhay0tbSB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig0LCBcInRvcFwiKTtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDQsIFwiYm90dG9tXCIpO1xuICB9XG5cbiAgLmdvdnVrLXNlY3Rpb24tYnJlYWstLW0ge1xuICAgIEBleHRlbmQgJWdvdnVrLXNlY3Rpb24tYnJlYWstLW07XG4gIH1cblxuICAvLyBWaXNpYmxlIHZhcmlhbnRcblxuICAlZ292dWstc2VjdGlvbi1icmVhay0tdmlzaWJsZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoYm9yZGVyKTtcbiAgfVxuXG4gIC5nb3Z1ay1zZWN0aW9uLWJyZWFrLS12aXNpYmxlIHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1zZWN0aW9uLWJyZWFrLS12aXNpYmxlO1xuICB9XG59XG5cbiIsIkB1c2UgXCIuLi9iYXNlXCI7XG5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBzdHlsZXMge1xuICAvLyBCdXR0b24gZ3JvdXBzIGNhbiBiZSB1c2VkIHRvIGdyb3VwIGJ1dHRvbnMgYW5kIGxpbmtzIHRvZ2V0aGVyIGFzIGEgZ3JvdXAuXG4gIC8vXG4gIC8vIFdpdGhpbiBhIGJ1dHRvbiBncm91cDpcbiAgLy9cbiAgLy8gLSBsaW5rcyBhcmUgc3R5bGVkIHRvIGxpbmUgdXAgdmlzdWFsbHkgd2l0aCB0aGUgYnV0dG9ucywgaW5jbHVkaW5nIGJlaW5nXG4gIC8vICAgY2VudHJlLWFsaWduZWQgb24gbW9iaWxlXG4gIC8vIC0gc3BhY2luZyBiZXR3ZWVuIHRoZSBidXR0b25zIGFuZCBsaW5rcyBpcyBoYW5kbGVkIGF1dG9tYXRpY2FsbHksIGluY2x1ZGluZ1xuICAvLyAgIHdoZW4gdGhleSB3cmFwIGFjcm9zcyBtdWx0aXBsZSBsaW5lc1xuICAuZ292dWstYnV0dG9uLWdyb3VwIHtcbiAgICAkaG9yaXpvbnRhbC1nYXA6IGJhc2UuZ292dWstc3BhY2luZygzKTtcbiAgICAkdmVydGljYWwtZ2FwOiBiYXNlLmdvdnVrLXNwYWNpbmcoMyk7XG5cbiAgICAvLyBUaGVzZSBuZWVkIHRvIGJlIGtlcHQgaW4gc3luYyB3aXRoIHRoZSBidXR0b24gY29tcG9uZW50J3Mgc3R5bGVzXG4gICAgJGJ1dHRvbi1wYWRkaW5nOiBiYXNlLmdvdnVrLXNwYWNpbmcoMik7XG4gICAgJGJ1dHRvbi1zaGFkb3ctc2l6ZTogYmFzZS4kZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudDtcblxuICAgICRsaW5rLXNwYWNpbmc6IGJhc2UuZ292dWstc3BhY2luZygxKTtcblxuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNiwgXCJib3R0b21cIiwgJGFkanVzdG1lbnQ6ICR2ZXJ0aWNhbC1nYXAgKiAtMSk7XG5cbiAgICAvLyBGbGV4Ym94IGlzIHVzZWQgdG8gY2VudGVyLWFsaWduIGxpbmtzIG9uIG1vYmlsZSwgYWxpZ24gZXZlcnl0aGluZyBhbG9uZ1xuICAgIC8vIHRoZSBiYXNlbGluZSBvbiB0YWJsZXQgYW5kIGFib3ZlLCBhbmQgdG8gcmVtb3ZlcyBleHRyYSB3aGl0ZXNwYWNlIHRoYXRcbiAgICAvLyB3ZSdkIGdldCBiZXR3ZWVuIHRoZSBidXR0b25zIGFuZCBsaW5rcyBiZWNhdXNlIHRoZXkncmUgaW5saW5lLWJsb2Nrcy5cbiAgICAvL1xuICAgIC8vIElkZWFsbHkgd2UnZCB1c2UgYGdhcGAgd2l0aCBmbGV4Ym94IHJhdGhlciB0aGFuIGhhdmluZyB0byBkbyBpdCBhbGwgd2l0aFxuICAgIC8vIG1hcmdpbnMsIGJ1dCB1bmZvcnR1bmF0ZWx5IHRoZSBzdXBwb3J0IGlzbid0IHRoZXJlICh5ZXQpIGFuZCBAc3VwcG9ydHNcbiAgICAvLyBkb2Vzbid0IHBsYXkgbmljZWx5IHdpdGggaXRcbiAgICAvLyAoaHR0cHM6Ly9naXRodWIuY29tL3czYy9jc3N3Zy1kcmFmdHMvaXNzdWVzLzM1NTkpXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAvLyBHaXZlIGxpbmtzIHdpdGhpbiB0aGUgYnV0dG9uIGdyb3VwIHRoZSBzYW1lIGZvbnQtc2l6ZSBhbmQgbGluZS1oZWlnaHRcbiAgICAvLyBhcyBidXR0b25zLlxuICAgIC8vXG4gICAgLy8gQmVjYXVzZSB3ZSB3YW50IHRoZSBmb2N1cyBzdGF0ZSB0byBiZSB0aWdodCBhcm91bmQgdGhlIGxpbmsgdGV4dCwgd2UgdXNlXG4gICAgLy8gbWFyZ2lucyB3aGVyZSB0aGUgYnV0dG9ucyB3b3VsZCB1c2UgcGFkZGluZy5cbiAgICAuZ292dWstbGluayB7XG4gICAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWZvbnQoJHNpemU6IDE5LCAkbGluZS1oZWlnaHQ6IDE5cHgpO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgLy8gUHJldmVudCBsaW5rcyBvdmVyZmxvd2luZyB0aGVpciBjb250YWluZXIgaW4gSUUxMC8xMSBiZWNhdXNlIG9mIGJ1Z1xuICAgICAgLy8gd2l0aCBhbGlnbi1pdGVtczogY2VudGVyXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tdG9wOiAkbGluay1zcGFjaW5nO1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGxpbmstc3BhY2luZyArICR2ZXJ0aWNhbC1nYXA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLy8gUmVkdWNlIHRoZSBib3R0b20gbWFyZ2luIHRvIHRoZSBzaXplIG9mIHRoZSB2ZXJ0aWNhbCBnYXAgKGFjY29tbW9kYXRpbmdcbiAgICAvLyB0aGUgYnV0dG9uIHNoYWRvdykg4oCTIHRoZSAnbG9zdCcgbWFyZ2luIGlzIG1vdmVkIHRvIHRoZSBidXR0b24tZ3JvdXAuXG4gICAgLmdvdnVrLWJ1dHRvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkdmVydGljYWwtZ2FwICsgJGJ1dHRvbi1zaGFkb3ctc2l6ZTtcbiAgICB9XG5cbiAgICAvLyBPbiB0YWJsZXQgYW5kIGFib3ZlLCB3ZSBhbHNvIGludHJvZHVjZSBhICdjb2x1bW4gZ2FwJyBiZXR3ZWVuIHRoZVxuICAgIC8vIGJ1dHRvbnMgYW5kIGxpbmtzIGluIGVhY2ggcm93IGFuZCBsZWZ0IGFsaWduIGxpbmtzXG4gICAgQG1lZGlhICN7YmFzZS5nb3Z1ay1mcm9tLWJyZWFrcG9pbnQodGFibGV0KX0ge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcblxuICAgICAgLy8gQ2FuY2VsIG91dCB0aGUgY29sdW1uIGdhcCBmb3IgdGhlIGxhc3QgaXRlbSBpbiBlYWNoIHJvd1xuICAgICAgbWFyZ2luLXJpZ2h0OiAoJGhvcml6b250YWwtZ2FwICogLTEpO1xuXG4gICAgICAuZ292dWstYnV0dG9uLFxuICAgICAgLmdvdnVrLWxpbmsge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRob3Jpem9udGFsLWdhcDtcbiAgICAgIH1cblxuICAgICAgLmdvdnVrLWxpbmsge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4iLCJAdXNlIFwiLi4vYmFzZVwiO1xuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gc3R5bGVzIHtcbiAgLmdvdnVrLWZvcm0tZ3JvdXAge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstY2xlYXJmaXg7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig2LCBcImJvdHRvbVwiKTtcblxuICAgIC5nb3Z1ay1mb3JtLWdyb3VwOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZW1vdmUgbWFyZ2luIGZyb20gbGFzdCBpdGVtIGluIG5lc3RlZCBncm91cHNcbiAgICB9XG4gIH1cblxuICAuZ292dWstZm9ybS1ncm91cC0tZXJyb3Ige1xuICAgIHBhZGRpbmctbGVmdDogYmFzZS5nb3Z1ay1zcGFjaW5nKDMpO1xuICAgIGJvcmRlci1sZWZ0OiBiYXNlLiRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1ncm91cC1lcnJvciBzb2xpZDtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihlcnJvcik7XG5cbiAgICAuZ292dWstZm9ybS1ncm91cCB7XG4gICAgICAvLyBSZXNldCBlcnJvciBzdHlsZXMgaW4gbmVzdGVkIGZvcm0gZ3JvdXBzIHRoYXQgbWlnaHQgaGF2ZSBlcnJvciBjbGFzc1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG4gIH1cbn1cblxuIiwiLy8vL1xuLy8vIEBncm91cCBoZWxwZXJzL2xheW91dFxuLy8vL1xuXG4vLy8gQ2xlYXIgZmxvYXRlZCBjb250ZW50IHdpdGhpbiBhIGNvbnRhaW5lciB1c2luZyBhIHBzZXVkbyBlbGVtZW50XG4vLy9cbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AbWl4aW4gZ292dWstY2xlYXJmaXgge1xuICAmOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4iLCJAdXNlIFwic2FzczptYXBcIjtcblxuQHVzZSBcIi4uL2Jhc2VcIjtcblxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIHN0eWxlcyB7XG4gIC5nb3Z1ay1ncmlkLXJvdyB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1jbGVhcmZpeDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0oYmFzZS4kZ292dWstZ3V0dGVyLWhhbGYpO1xuICAgIG1hcmdpbi1sZWZ0OiAtKGJhc2UuJGdvdnVrLWd1dHRlci1oYWxmKTtcbiAgfVxuXG4gIEBlYWNoICR3aWR0aCBpbiBtYXAua2V5cyhiYXNlLiRnb3Z1ay1ncmlkLXdpZHRocykge1xuICAgIC5nb3Z1ay1ncmlkLWNvbHVtbi0jeyR3aWR0aH0ge1xuICAgICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1ncmlkLWNvbHVtbigkd2lkdGgpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRoZXNlICptdXN0KiBiZSBkZWZpbmVkIGluIGEgc2VwYXJhdGUgbG9vcCBhcyB0aGV5IGhhdmUgdGhlIHNhbWVcbiAgLy8gc3BlY2lmaWNpdHkgYXMgdGhlIG5vbi1icmVha3BvaW50IHNwZWNpZmljIGNsYXNzZXMsIHNvIG5lZWQgdG8gYXBwZWFyIGFmdGVyXG4gIC8vIHRoZW0gaW4gdGhlIG91dHB1dHRlZCBDU1NcbiAgQGVhY2ggJHdpZHRoIGluIG1hcC5rZXlzKGJhc2UuJGdvdnVrLWdyaWQtd2lkdGhzKSB7XG4gICAgLmdvdnVrLWdyaWQtY29sdW1uLSN7JHdpZHRofS1mcm9tLWRlc2t0b3Age1xuICAgICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1ncmlkLWNvbHVtbigkd2lkdGgsICRhdDogZGVza3RvcCk7XG4gICAgfVxuICB9XG59XG5cbiIsIi8vLy9cbi8vLyBAZ3JvdXAgaGVscGVycy9sYXlvdXRcbi8vLy9cbkB1c2UgXCJzYXNzOm1hcFwiO1xuXG5AdXNlIFwiLi4vc2V0dGluZ3MvbWVhc3VyZW1lbnRzXCIgYXMgKjtcbkB1c2UgXCJtZWRpYS1xdWVyaWVzXCIgYXMgKjtcblxuLy8vIEdyaWQgd2lkdGggcGVyY2VudGFnZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRrZXkgLSBOYW1lIG9mIGdyaWQgd2lkdGggKGUuZy4gdHdvLXRoaXJkcylcbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IFBlcmNlbnRhZ2Ugd2lkdGhcbi8vLyBAdGhyb3cgaWYgYCRrZXlgIGlzIG5vdCBhIHZhbGlkIGdyaWQgd2lkdGhcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AZnVuY3Rpb24gZ292dWstZ3JpZC13aWR0aCgka2V5KSB7XG4gIEBpZiBtYXAuaGFzLWtleSgkZ292dWstZ3JpZC13aWR0aHMsICRrZXkpIHtcbiAgICBAcmV0dXJuIG1hcC5nZXQoJGdvdnVrLWdyaWQtd2lkdGhzLCAka2V5KTtcbiAgfVxuXG4gIEBlcnJvciBcIlVua25vd24gZ3JpZCB3aWR0aCBgI3ska2V5fWBcIjtcbn1cblxuLy8vIEdlbmVyYXRlIGdyaWQgY29sdW1uIHN0eWxlc1xuLy8vXG4vLy8gQ3JlYXRlcyBhIGdyaWQgY29sdW1uIHdpdGggc3RhbmRhcmQgZ3V0dGVyIGJldHdlZW4gdGhlIGNvbHVtbnMuXG4vLy9cbi8vLyBHcmlkIHdpZHRocyBhcmUgZGVmaW5lZCBpbiB0aGUgYCRnb3Z1ay1ncmlkLXdpZHRoc2AgbWFwLlxuLy8vXG4vLy8gQnkgZGVmYXVsdCB0aGUgY29sdW1uIHdpZHRoIGNoYW5nZXMgZnJvbSAxMDAlIHRvIHNwZWNpZmllZCB3aWR0aCBhdCB0aGVcbi8vLyAndGFibGV0JyBicmVha3BvaW50LCBidXQgb3RoZXIgYnJlYWtwb2ludHMgY2FuIGJlIHNwZWNpZmllZCB1c2luZyB0aGUgYCRhdGBcbi8vLyBwYXJhbWV0ZXIuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHdpZHRoIFtmdWxsXSBuYW1lIG9mIGEgZ3JpZCB3aWR0aCBmcm9tICRnb3Z1ay1ncmlkLXdpZHRoc1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZmxvYXQgW2xlZnRdIGxlZnQgfCByaWdodFxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYXQgW3RhYmxldF0gLSBtb2JpbGUgfCB0YWJsZXQgfCBkZXNrdG9wIHwgYW55IGN1c3RvbSBicmVha3BvaW50XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gRGVmYXVsdFxuLy8vICAgLmdvdnVrLWdyaWQtY29sdW1uLXR3by10aGlyZHMge1xuLy8vICAgICBAaW5jbHVkZSBnb3Z1ay1ncmlkLWNvbHVtbih0d28tdGhpcmRzKVxuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEN1c3RvbWlzaW5nIHRoZSBicmVha3BvaW50IHdoZXJlIHdpZHRoIHBlcmNlbnRhZ2UgaXMgYXBwbGllZFxuLy8vICAgLmdvdnVrLWdyaWQtY29sdW1uLW9uZS1oYWxmLWZyb20tZGVza3RvcCB7XG4vLy8gICAgIEBpbmNsdWRlIGdvdnVrLWdyaWQtY29sdW1uKG9uZS1oYWxmLCAkYXQ6IGRlc2t0b3ApO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEN1c3RvbWlzaW5nIHRoZSBmbG9hdCBkaXJlY3Rpb25cbi8vLyAgIC5nb3Z1ay1ncmlkLWNvbHVtbi1vbmUtaGFsZi1yaWdodCB7XG4vLy8gICAgIEBpbmNsdWRlIGdvdnVrLWdyaWQtY29sdW1uKHR3by10aGlyZHMsICRmbG9hdDogcmlnaHQpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLWdyaWQtY29sdW1uKCR3aWR0aDogZnVsbCwgJGZsb2F0OiBsZWZ0LCAkYXQ6IHRhYmxldCkge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBAaWYgJGF0ICE9IGRlc2t0b3Age1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIHBhZGRpbmc6IDAgJGdvdnVrLWd1dHRlci1oYWxmO1xuICBAbWVkaWEgI3tnb3Z1ay1mcm9tLWJyZWFrcG9pbnQoJGF0KX0ge1xuICAgIHdpZHRoOiBnb3Z1ay1ncmlkLXdpZHRoKCR3aWR0aCk7XG4gICAgZmxvYXQ6ICRmbG9hdDtcbiAgfVxufVxuXG4iLCJAdXNlIFwiLi4vYmFzZVwiO1xuXG4vLy8vXG4vLy8gQGdyb3VwIG9iamVjdHMvbGF5b3V0XG4vLy8vXG5cbi8vIEV4YW1wbGUgdXNhZ2Ugd2l0aCBCcmVhZGNydW1icywgcGhhc2UgYmFubmVycywgYmFjayBsaW5rczpcbi8vIDxkaXYgY2xhc3M9XCJnb3Z1ay13aWR0aC1jb250YWluZXJcIj5cbi8vICAgPCEtLSBCcmVhZGNydW1icywgcGhhc2UgYmFubmVycywgYmFjayBsaW5rcyBhcmUgcGxhY2VkIGluIGhlcmUuIC0tPlxuLy8gICA8ZGl2IGNsYXNzPVwiZ292dWstbWFpbi13cmFwcGVyXCI+XG4vLyAgICAgICA8IS0tIFdyYXBwZXIgZm9yIHRoZSBtYWluIGNvbnRlbnQgb2YgeW91ciBwYWdlIHdoaWNoIGFwcGxpZXMgcGFkZGluZ1xuLy8gICAgICAgICAgICB0byB0aGUgdG9wIC8gYm90dG9tIC0tPlxuLy8gICA8L2Rpdj5cbi8vIDwvZGl2PlxuLy9cbi8vIEV4YW1wbGUgdXNhZ2Ugd2l0aG91dCBCcmVhZGNydW1icywgcGhhc2UgYmFubmVycywgYmFjayBsaW5rczpcbi8vIDxkaXYgY2xhc3M9XCJnb3Z1ay13aWR0aC1jb250YWluZXJcIj5cbi8vICAgPGRpdiBjbGFzcz1cImdvdnVrLW1haW4td3JhcHBlciBnb3Z1ay1tYWluLXdyYXBwZXItLWxcIj5cbi8vICAgICAgIDwhLS0gV3JhcHBlciBmb3IgdGhlIG1haW4gY29udGVudCBvZiB5b3VyIHBhZ2Ugd2hpY2ggYXBwbGllcyBwYWRkaW5nXG4vLyAgICAgICAgICAgIHRvIHRoZSB0b3AgLyBib3R0b20gLS0+XG4vLyAgIDwvZGl2PlxuLy8gPC9kaXY+XG5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBzdHlsZXMge1xuICAuZ292dWstbWFpbi13cmFwcGVyIHtcbiAgICAvLyBJbiBJRTExIHRoZSBgbWFpbmAgZWxlbWVudCBjYW4gYmUgdXNlZCwgYnV0IGlzIG5vdCByZWNvZ25pemVkICDigJNcbiAgICAvLyBtZWFuaW5nIGl0J3Mgbm90IGRlZmluZWQgaW4gSUUncyBkZWZhdWx0IHN0eWxlIHNoZWV0LFxuICAgIC8vIHNvIGl0IHVzZXMgQ1NTIGluaXRpYWwgdmFsdWUsIHdoaWNoIGlzIGlubGluZS5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLXRvcDogYmFzZS5nb3Z1ay1zcGFjaW5nKDQpO1xuICAgIHBhZGRpbmctYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoNCk7XG5cbiAgICBAbWVkaWEgI3tiYXNlLmdvdnVrLWZyb20tYnJlYWtwb2ludCh0YWJsZXQpfSB7XG4gICAgICAvLyBUaGlzIHNwYWNpbmcgaXMgbWFudWFsbHkgYWRqdXN0ZWQgdG8gcmVwbGljYXRlIHRoZSBtYXJnaW4gb2ZcbiAgICAgIC8vIGdvdnVrLWhlYWRpbmcteGwgKDUwcHgpIG1pbnVzIHRoZSBzcGFjaW5nIG9mIGJhY2sgbGluayBhbmRcbiAgICAgIC8vIGJyZWFkY3J1bWJzICgxMHB4KVxuICAgICAgcGFkZGluZy10b3A6IGJhc2UuZ292dWstc3BhY2luZyg3KTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoNyk7XG4gICAgfVxuICB9XG5cbiAgLy8gVXNpbmcgdGhlIGAuZ292dWstbWFpbi13cmFwcGVyLS1hdXRvLXNwYWNpbmdgIG1vZGlmaWVyIHNob3VsZCBhcHBseSB0aGVcbiAgLy8gY29ycmVjdCBzcGFjaW5nIGRlcGVuZGluZyBvbiB3aGV0aGVyIHRoZXJlIGFyZSBhbnkgZWxlbWVudHNcbiAgLy8gKHN1Y2ggdGhlIGJhY2sgbGluaywgYnJlYWRjcnVtYnMgb3IgcGhhc2UgYmFubmVyIGNvbXBvbmVudHMpIGJlZm9yZSB0aGVcbiAgLy8gYC5nb3Z1ay1tYWluLXdyYXBwZXJgIGluIHRoZSBgZ292dWstd2lkdGgtY29udGFpbmVyYC5cbiAgLy9cbiAgLy8gSWYgeW91IG5lZWQgdG8gY29udHJvbCB0aGUgc3BhY2luZyBtYW51YWxseSwgdXNlIHRoZVxuICAvLyBgZ292dWstbWFpbi13cmFwcGVyLS1sYCBtb2RpZmllciBpbnN0ZWFkLlxuICAuZ292dWstbWFpbi13cmFwcGVyLS1hdXRvLXNwYWNpbmc6Zmlyc3QtY2hpbGQsXG4gIC5nb3Z1ay1tYWluLXdyYXBwZXItLWwge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstcmVzcG9uc2l2ZS1wYWRkaW5nKDgsIFwidG9wXCIpO1xuICB9XG59XG5cbiIsIkB1c2UgXCIuLi9iYXNlXCI7XG5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBzdHlsZXMge1xuICAvLyBBcHBsaWVkIHRvIHRoZSA8aHRtbD4gZWxlbWVudFxuICAuZ292dWstdGVtcGxhdGUge1xuICAgIC8vIFNldCB0aGUgb3ZlcmFsbCBwYWdlIGJhY2tncm91bmQgY29sb3VyIHRvIHRoZSBzYW1lIGNvbG91ciBhcyB1c2VkIGJ5IHRoZVxuICAgIC8vIGZvb3RlciB0byBnaXZlIHRoZSBpbGx1c2lvbiBvZiBhIGxvbmcgZm9vdGVyLlxuICAgIGJhY2tncm91bmQtY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIodGVtcGxhdGUtYmFja2dyb3VuZCk7XG5cbiAgICAvLyBQcmV2ZW50IGF1dG9tYXRpYyB0ZXh0IHNpemluZywgYXMgd2UgYWxyZWFkeSBjYXRlciBmb3Igc21hbGwgZGV2aWNlcyBhbmRcbiAgICAvLyB3b3VsZCBsaWtlIHRoZSBicm93c2VyIHRvIHN0YXkgb24gMTAwJSB0ZXh0IHpvb20gYnkgZGVmYXVsdC5cbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gICAgICAgLW1vei10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAgICAgICAgICAgdGV4dC1zaXplLWFkanVzdDogMTAwJTtcblxuICAgIC8vIEFkZCBzY3JvbGwgcGFkZGluZyB0byB0aGUgdG9wIG9mIGdvdnVrLXRlbXBsYXRlIGJ1dCByZW1vdmUgaXQgaWYgdGhlXG4gICAgLy8gZXhpdCB0aGlzIHBhZ2UgY29tcG9uZW50IGlzIHByZXNlbnQuXG4gICAgLy9cbiAgICAvLyBUaGlzIGlzIGEgc29sdXRpb24gdG8gZXhpdCB0aGlzIHBhZ2UgcG90ZW50aWFsbHkgZmFpbGluZyBXQ0FHIFNDIDIuNC4xMjpcbiAgICAvLyBGb2N1cyBOb3QgT2JzY3VyZWQgKGh0dHBzOi8vd3d3LnczLm9yZy9XQUkvV0NBRzIyL1VuZGVyc3RhbmRpbmcvZm9jdXMtbm90LW9ic2N1cmVkLW1pbmltdW0uaHRtbClcbiAgICAvLyBkdWUgdG8gaXQncyBzdGlja3kgcG9zaXRpb25pbmcuXG4gICAgLy9cbiAgICAvLyBUaGlzIHdpbGwgYXBwbHkgc2Nyb2xsLXBhZGRpbmctdG9wIGluIGFueSBicm93c2VycyB0aGF0IGRvbid0IHN1cHBvcnQgOmhhc1xuICAgIC8vIChodHRwczovL2Nhbml1c2UuY29tL2Nzcy1oYXMpLiBUaGlzIGlzIHBhcnQgb2YgdGhlIHJlYXNvbiB3ZSBkbyB0aGlzIGluXG4gICAgLy8gYSBcIndyb25nIHdheSByb3VuZFwiIHdheSBhcyB3ZSBoeXBvdGhlc2lzZSB0aGF0IHRoZSByaXNrcyBvZiBoYXZpbmdcbiAgICAvLyBzY3JvbGwtcGFkZGluZyB1bm5lY2Vzc2FyaWx5IGlzIGJldHRlciB0aGFuIHJpc2tpbmcgbm90IGhhdmluZyBzY3JvbGwtcGFkZGluZ1xuICAgIC8vIGFuZCBuZWVkaW5nIGl0IHRvIGFjY291bnQgZm9yIGV4aXQgdGhpcyBwYWdlLlxuICAgIEBzdXBwb3J0cyAoKHBvc2l0aW9uOiAtd2Via2l0LXN0aWNreSkgb3IgKHBvc2l0aW9uOiBzdGlja3kpKSB7XG4gICAgICBzY3JvbGwtcGFkZGluZy10b3A6IGJhc2UuZ292dWstc3BhY2luZyg5KTtcblxuICAgICAgJjpub3QoOmhhcyguZ292dWstZXhpdC10aGlzLXBhZ2UpKSB7XG4gICAgICAgIHNjcm9sbC1wYWRkaW5nLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBGb3JjZSB0aGUgc2Nyb2xsYmFyIHRvIGFsd2F5cyBkaXNwbGF5IGluIElFLCB0byBwcmV2ZW50IGhvcml6b250YWwgcGFnZVxuICAgIC8vIGp1bXBzIGFzIGNvbnRlbnQgaGVpZ2h0IGNoYW5nZXMgKGUuZy4gYXV0b2NvbXBsZXRlIHJlc3VsdHMgb3BlbikuXG4gICAgQG1lZGlhIHNjcmVlbiB7XG4gICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgfVxuICB9XG5cbiAgLy8gQXBwbGllZCB0byB0aGUgPGJvZHk+IGVsZW1lbnRcbiAgLmdvdnVrLXRlbXBsYXRlX19ib2R5IHtcbiAgICAvLyBUaGUgZGVmYXVsdCBtYXJnaW5zIHNldCBieSB1c2VyLWFnZW50cyBhcmUgbm90IHJlcXVpcmVkIHNpbmNlIHdlIGhhdmUgb3VyXG4gICAgLy8gb3duIGNvbnRhaW5lcnMuXG4gICAgbWFyZ2luOiAwO1xuICAgIC8vIFNldCB0aGUgb3ZlcmFsbCBib2R5IG9mIHRoZSBwYWdlIGJhY2sgdG8gdGhlIHR5cGljYWwgYmFja2dyb3VuZCBjb2xvdXIuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihib2R5LWJhY2tncm91bmQpO1xuICB9XG59XG5cbiIsIkB1c2UgXCIuLi9iYXNlXCI7XG5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBzdHlsZXMge1xuICAuZ292dWstd2lkdGgtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXdpZHRoLWNvbnRhaW5lcjtcbiAgfVxufVxuXG4iLCIvLy8vXG4vLy8gQGdyb3VwIGhlbHBlcnMvd2lkdGgtY29udGFpbmVyXG4vLy8vXG5cbkB1c2UgXCJzYXNzOnN0cmluZ1wiO1xuXG5AdXNlIFwiLi4vc2V0dGluZ3MvbWVhc3VyZW1lbnRzXCIgYXMgKjtcbkB1c2UgXCJtZWRpYS1xdWVyaWVzXCIgYXMgKjtcblxuLy8vIFdpZHRoIGNvbnRhaW5lciBtaXhpblxuLy8vXG4vLy8gVXNlZCB0byBjcmVhdGUgcGFnZSB3aWR0aCBhbmQgY3VzdG9tIHdpZHRoIGNvbnRhaW5lciBjbGFzc2VzLlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR3aWR0aCBbJGdvdnVrLXBhZ2Utd2lkdGhdIC0gV2lkdGggaW4gcGl4ZWxzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRpbmcgYSAxMjAwcHggd2lkZSBjb250YWluZXIgY2xhc3Ncbi8vLyAgLmFwcC13aWR0aC1jb250YWluZXItLXdpZGUge1xuLy8vICAgIEBpbmNsdWRlIGdvdnVrLXdpZHRoLWNvbnRhaW5lcigxMjAwcHgpO1xuLy8vICB9XG4vLy9cbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AbWl4aW4gZ292dWstd2lkdGgtY29udGFpbmVyKCR3aWR0aDogJGdvdnVrLXBhZ2Utd2lkdGgpIHtcbiAgLy8gQnkgZGVmYXVsdCwgbGltaXQgdGhlIHdpZHRoIG9mIHRoZSBjb250YWluZXIgdG8gdGhlIHBhZ2Ugd2lkdGhcbiAgbWF4LXdpZHRoOiAkd2lkdGg7XG5cbiAgLy8gT24gbW9iaWxlLCBhZGQgaGFsZiB3aWR0aCBndXR0ZXJzXG4gIG1hcmdpbi1yaWdodDogJGdvdnVrLWd1dHRlci1oYWxmO1xuICBtYXJnaW4tbGVmdDogJGdvdnVrLWd1dHRlci1oYWxmO1xuXG4gIC8vIFJlc3BlY3QgJ2Rpc3BsYXkgY3V0b3V0JyBzYWZlIGFyZWEgKGF2b2lkcyBub3RjaGVzIGFuZCByb3VuZGVkIGNvcm5lcnMpXG4gIEBzdXBwb3J0cyAobWFyZ2luOiBzdHJpbmcudW5xdW90ZShcIm1heChjYWxjKDBweCkpXCIpKSB7XG4gICAgJGd1dHRlci1zYWZlLWFyZWEtcmlnaHQ6IGNhbGMoI3skZ292dWstZ3V0dGVyLWhhbGZ9ICsgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCkpO1xuICAgICRndXR0ZXItc2FmZS1hcmVhLWxlZnQ6IGNhbGMoI3skZ292dWstZ3V0dGVyLWhhbGZ9ICsgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSk7XG5cbiAgICAvLyBVc2UgbWF4KCkgdG8gcGljayBsYXJnZXN0IG1hcmdpbiwgZGVmYXVsdCBvciB3aXRoIHNhZmUgYXJlYVxuICAgIC8vIEVzY2FwZWQgZHVlIHRvIFNhc3MgbWF4KCkgdnMuIENTUyBuYXRpdmUgbWF4KClcbiAgICBtYXJnaW4tcmlnaHQ6IHN0cmluZy51bnF1b3RlKFwibWF4KCN7JGdvdnVrLWd1dHRlci1oYWxmfSwgI3skZ3V0dGVyLXNhZmUtYXJlYS1yaWdodH0pXCIpO1xuICAgIG1hcmdpbi1sZWZ0OiBzdHJpbmcudW5xdW90ZShcIm1heCgjeyRnb3Z1ay1ndXR0ZXItaGFsZn0sICN7JGd1dHRlci1zYWZlLWFyZWEtbGVmdH0pXCIpO1xuICB9XG5cbiAgLy8gT24gdGFibGV0LCBhZGQgZnVsbCB3aWR0aCBndXR0ZXJzXG4gIEBtZWRpYSAje2dvdnVrLWZyb20tYnJlYWtwb2ludCh0YWJsZXQpfSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZ292dWstZ3V0dGVyO1xuICAgIG1hcmdpbi1sZWZ0OiAkZ292dWstZ3V0dGVyO1xuXG4gICAgLy8gUmVzcGVjdCAnZGlzcGxheSBjdXRvdXQnIHNhZmUgYXJlYSAoYXZvaWRzIG5vdGNoZXMgYW5kIHJvdW5kZWQgY29ybmVycylcbiAgICBAc3VwcG9ydHMgKG1hcmdpbjogc3RyaW5nLnVucXVvdGUoXCJtYXgoY2FsYygwcHgpKVwiKSkge1xuICAgICAgJGd1dHRlci1zYWZlLWFyZWEtcmlnaHQ6IGNhbGMoI3skZ292dWstZ3V0dGVyLWhhbGZ9ICsgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCkpO1xuICAgICAgJGd1dHRlci1zYWZlLWFyZWEtbGVmdDogY2FsYygjeyRnb3Z1ay1ndXR0ZXItaGFsZn0gKyBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpKTtcblxuICAgICAgLy8gVXNlIG1heCgpIHRvIHBpY2sgbGFyZ2VzdCBtYXJnaW4sIGRlZmF1bHQgb3Igd2l0aCBzYWZlIGFyZWFcbiAgICAgIC8vIEVzY2FwZWQgZHVlIHRvIFNhc3MgbWF4KCkgdnMuIENTUyBuYXRpdmUgbWF4KClcbiAgICAgIG1hcmdpbi1yaWdodDogc3RyaW5nLnVucXVvdGUoXCJtYXgoI3skZ292dWstZ3V0dGVyfSwgI3skZ3V0dGVyLXNhZmUtYXJlYS1yaWdodH0pXCIpO1xuICAgICAgbWFyZ2luLWxlZnQ6IHN0cmluZy51bnF1b3RlKFwibWF4KCN7JGdvdnVrLWd1dHRlcn0sICN7JGd1dHRlci1zYWZlLWFyZWEtbGVmdH0pXCIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFzIHNvb24gYXMgdGhlIHZpZXdwb3J0IGlzIGdyZWF0ZXIgdGhhbiB0aGUgd2lkdGggb2YgdGhlIHBhZ2UgcGx1cyB0aGVcbiAgLy8gZ3V0dGVycywganVzdCBjZW50cmUgdGhlIGNvbnRlbnQgaW5zdGVhZCBvZiBhZGRpbmcgZ3V0dGVycy5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICN7KCR3aWR0aCArICRnb3Z1ay1ndXR0ZXIgKiAyKX0pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG5cbiAgICAvLyBTaW5jZSBhIHNhZmUgYXJlYSBtYXkgaGF2ZSBwcmV2aW91c2x5IGJlZW4gc2V0IGFib3ZlLFxuICAgIC8vIHdlIG5lZWQgdG8gZHVwbGljYXRlIHRoaXMgbWFyZ2luIHRoYXQgY2VudGVycyB0aGUgcGFnZS5cbiAgICBAc3VwcG9ydHMgKG1hcmdpbjogc3RyaW5nLnVucXVvdGUoXCJtYXgoY2FsYygwcHgpKVwiKSkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG59XG5cbiIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuLy8vL1xuLy8vIEBncm91cCBzZXR0aW5ncy9sYXlvdXRcbi8vLy9cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBQYWdlIGxheW91dFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vLyBXaWR0aCBvZiBtYWluIGNvbnRhaW5lclxuLy8vXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLXBhZ2Utd2lkdGg6IDk2MHB4ICFkZWZhdWx0O1xuXG4vLy8gTWFwIG9mIGdyaWQgY29sdW1uIHdpZHRoc1xuLy8vXG4vLy8gQHR5cGUgTWFwXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLWdyaWQtd2lkdGhzOiAoXG4gIG9uZS1xdWFydGVyOiBtYXRoLmRpdigxMDAlLCA0KSxcbiAgb25lLXRoaXJkOiBtYXRoLmRpdigxMDAlLCAzKSxcbiAgb25lLWhhbGY6IG1hdGguZGl2KDEwMCUsIDIpLFxuICB0d28tdGhpcmRzOiBtYXRoLmRpdigyMDAlLCAzKSxcbiAgdGhyZWUtcXVhcnRlcnM6IG1hdGguZGl2KDMwMCUsIDQpLFxuICBmdWxsOiAxMDAlXG4pICFkZWZhdWx0O1xuXG4vLy8gV2lkdGggb2YgZ3V0dGVyIGJldHdlZW4gZ3JpZCBjb2x1bW5zXG4vLy9cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstZ3V0dGVyOiAzMHB4ICFkZWZhdWx0O1xuXG4vLy8gV2lkdGggb2YgaGFsZiB0aGUgZ3V0dGVyIGJldHdlZW4gZ3JpZCBjb2x1bW5zXG4vLy9cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstZ3V0dGVyLWhhbGY6IG1hdGguZGl2KCRnb3Z1ay1ndXR0ZXIsIDIpO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEJvcmRlcnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLy8gU3RhbmRhcmQgYm9yZGVyIHdpZHRoXG4vLy9cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstYm9yZGVyLXdpZHRoOiA1cHggIWRlZmF1bHQ7XG5cbi8vLyBXaWRlIGJvcmRlciB3aWR0aFxuLy8vXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLWJvcmRlci13aWR0aC13aWRlOiAxMHB4ICFkZWZhdWx0O1xuXG4vLy8gTmFycm93IGJvcmRlciB3aWR0aFxuLy8vXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLWJvcmRlci13aWR0aC1uYXJyb3c6IDRweCAhZGVmYXVsdDtcblxuLy8vIEZvcm0gY29udHJvbCBib3JkZXIgd2lkdGhcbi8vL1xuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50OiAycHggIWRlZmF1bHQ7XG5cbi8vLyBGb3JtIGdyb3VwIGJvcmRlciB3aWR0aCB3aGVuIGluIGVycm9yIHN0YXRlXG4vLy9cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZ3JvdXAtZXJyb3I6ICRnb3Z1ay1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgd2lkdGggb2YgZm9jdXMgb3V0bGluZVxuLy8vXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLWZvY3VzLXdpZHRoOiAzcHggIWRlZmF1bHQ7XG5cbi8vLyBIb3ZlciB3aWR0aCBmb3IgZm9ybSBjb250cm9scyB3aXRoIGEgaG92ZXIgc3RhdGVcbi8vL1xuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1ob3Zlci13aWR0aDogMTBweCAhZGVmYXVsdDtcblxuIiwiQHVzZSBcIi4uLy4uL2Jhc2VcIjtcblxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIHN0eWxlcyB7XG4gICRnb3Z1ay1hY2NvcmRpb24tYmFzZS1jb2xvdXI6IGJhc2UuZ292dWstY29sb3VyKFwiYmxhY2tcIik7XG4gICRnb3Z1ay1hY2NvcmRpb24taG92ZXItY29sb3VyOiBiYXNlLmdvdnVrLWNvbG91cihcImJsYWNrXCIsICR2YXJpYW50OiBcInRpbnQtOTVcIik7XG4gICRnb3Z1ay1hY2NvcmRpb24taWNvbi1mb2N1cy1jb2xvdXI6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoZm9jdXMpO1xuICAkZ292dWstYWNjb3JkaW9uLWJvdHRvbS1ib3JkZXItd2lkdGg6IDFweDtcblxuICAuZ292dWstYWNjb3JkaW9uIHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDYsIFwiYm90dG9tXCIpO1xuICB9XG5cbiAgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbiB7XG4gICAgcGFkZGluZy10b3A6IGJhc2UuZ292dWstc3BhY2luZygzKTtcbiAgfVxuXG4gIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24taGVhZGluZyB7XG4gICAgLy8gT3ZlcnJpZGUgYnJvd3NlciBkZWZhdWx0cyB0byBlbnN1cmUgY29uc2lzdGVudCBlbGVtZW50IGhlaWdodFxuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIHBhZGRpbmctdG9wOiBiYXNlLmdvdnVrLXNwYWNpbmcoMyk7XG4gICAgcGFkZGluZy1ib3R0b206IGJhc2UuZ292dWstc3BhY2luZygzKTtcbiAgfVxuXG4gIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWZvbnQoJHNpemU6IDI0LCAkd2VpZ2h0OiBib2xkKTtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZy10b3A6IGJhc2UuZ292dWstc3BhY2luZygzKTtcbiAgICBjb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cih0ZXh0KTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgYm90dG9tIG1hcmdpbiBmcm9tIHRoZSBsYXN0IGl0ZW0gaW5zaWRlIHRoZSBjb250ZW50XG4gIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tY29udGVudCA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLy8gR09WLlVLIEZyb250ZW5kIEphdmFTY3JpcHQgZW5hYmxlZFxuICAuZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkIHtcbiAgICAuZ292dWstYWNjb3JkaW9uIHtcbiAgICAgIC8vIEJvcmRlciBhdCB0aGUgYm90dG9tIG9mIHRoZSB3aG9sZSBhY2NvcmRpb25cbiAgICAgIGJvcmRlci1ib3R0b206ICRnb3Z1ay1hY2NvcmRpb24tYm90dG9tLWJvcmRlci13aWR0aCBzb2xpZDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoYm9yZGVyKTtcbiAgICB9XG5cbiAgICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cblxuICAgIC8vIEhpZGUgdGhlIGJvZHkgb2YgY29sbGFwc2VkIHNlY3Rpb25zIGJ5IGRlZmF1bHQgZm9yIGJyb3dzZXJzIHRoYXQgbGFja1xuICAgIC8vIHN1cHBvcnQgZm9yIGBjb250ZW50LXZpc2liaWxpdHlgIHBhaXJlZCB3aXRoIFtoaWRkZW49dW50aWwtZm91bmRdXG4gICAgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1jb250ZW50IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgIEBpbmNsdWRlIGJhc2UuZ292dWstcmVzcG9uc2l2ZS1wYWRkaW5nKDMsIFwidG9wXCIpO1xuICAgICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1yZXNwb25zaXZlLXBhZGRpbmcoOCwgXCJib3R0b21cIik7XG4gICAgfVxuXG4gICAgLy8gSGlkZSB0aGUgYm9keSBvZiBjb2xsYXBzZWQgc2VjdGlvbnMgdXNpbmcgYGNvbnRlbnQtdmlzaWJpbGl0eWAgdG8gZW5hYmxlXG4gICAgLy8gcGFnZSBzZWFyY2ggd2l0aGluIFtoaWRkZW49dW50aWwtZm91bmRdIHJlZ2lvbnMgd2hlcmUgYnJvd3NlciBzdXBwb3J0ZWRcbiAgICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWNvbnRlbnRbaGlkZGVuXSB7XG4gICAgICBAc3VwcG9ydHMgKGNvbnRlbnQtdmlzaWJpbGl0eTogaGlkZGVuKSB7XG4gICAgICAgIGNvbnRlbnQtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICBkaXNwbGF5OiBpbmhlcml0O1xuICAgICAgfVxuXG4gICAgICAvLyBIaWRlIHRoZSBwYWRkaW5nIG9mIGNvbGxhcHNlZCBzZWN0aW9uc1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBTaG93IHRoZSBib2R5IG9mIGV4cGFuZGVkIHNlY3Rpb25zXG4gICAgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi0tZXhwYW5kZWQgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1jb250ZW50IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5nb3Z1ay1hY2NvcmRpb25fX3Nob3ctYWxsIHtcbiAgICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udCgkc2l6ZTogMTkpO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMTtcblxuICAgICAgbWFyZ2luLWJvdHRvbTogOXB4O1xuICAgICAgcGFkZGluZzogYmFzZS5nb3Z1ay1zcGFjaW5nKDEpIDJweCBiYXNlLmdvdnVrLXNwYWNpbmcoMSkgMDtcblxuICAgICAgYm9yZGVyLXdpZHRoOiAwO1xuXG4gICAgICBjb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihsaW5rKTtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG5cbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICAgQG1lZGlhICN7YmFzZS5nb3Z1ay1mcm9tLWJyZWFrcG9pbnQodGFibGV0KX0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNHB4O1xuICAgICAgfVxuXG4gICAgICAvLyBSZW1vdmUgZGVmYXVsdCBidXR0b24gZm9jdXMgb3V0bGluZSBpbiBGaXJlZm94XG4gICAgICAmOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRnb3Z1ay1hY2NvcmRpb24tYmFzZS1jb2xvdXI7XG4gICAgICAgIGJhY2tncm91bmQ6ICRnb3Z1ay1hY2NvcmRpb24taG92ZXItY29sb3VyO1xuICAgICAgICAvLyBUaGUgZm9jdXMgc3RhdGUgYWRkcyBhIGJveC1zaGFkb3cgdG8gdGhlIHRvcCBhbmQgYm90dG9tIG9mIHRoZVxuICAgICAgICAvLyBidXR0b24uIFdlIGFkZCBhIGdyZXkgYm94LXNoYWRvdyBvbiBob3ZlciB0b28sIHRvIG1ha2UgdGhlIGhlaWdodCBvZlxuICAgICAgICAvLyB0aGUgaG92ZXIgc3RhdGUgbWF0Y2ggdGhlIGhlaWdodCBvZiB0aGUgZm9jdXMgc3RhdGUuXG4gICAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgMCAtMnB4ICRnb3Z1ay1hY2NvcmRpb24taG92ZXItY29sb3VyLFxuICAgICAgICAgIDAgNHB4ICRnb3Z1ay1hY2NvcmRpb24taG92ZXItY29sb3VyO1xuXG4gICAgICAgIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tdG9nZ2xlLXRleHQge1xuICAgICAgICAgIGNvbG9yOiAkZ292dWstYWNjb3JkaW9uLWJhc2UtY29sb3VyO1xuICAgICAgICB9XG5cbiAgICAgICAgLmdvdnVrLWFjY29yZGlvbi1uYXZfX2NoZXZyb24ge1xuICAgICAgICAgIGNvbG9yOiAkZ292dWstYWNjb3JkaW9uLWJhc2UtY29sb3VyO1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRnb3Z1ay1hY2NvcmRpb24tYmFzZS1jb2xvdXI7XG4gICAgICAgIH1cblxuICAgICAgICAuZ292dWstYWNjb3JkaW9uLW5hdl9fY2hldnJvbjo6YWZ0ZXIge1xuICAgICAgICAgIGNvbG9yOiAkZ292dWstYWNjb3JkaW9uLWhvdmVyLWNvbG91cjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1mb2N1c2VkLXRleHQ7XG5cbiAgICAgICAgLmdvdnVrLWFjY29yZGlvbi1uYXZfX2NoZXZyb24ge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRnb3Z1ay1hY2NvcmRpb24tYmFzZS1jb2xvdXI7XG4gICAgICAgIH1cblxuICAgICAgICAuZ292dWstYWNjb3JkaW9uLW5hdl9fY2hldnJvbjo6YWZ0ZXIge1xuICAgICAgICAgIGNvbG9yOiAkZ292dWstYWNjb3JkaW9uLWljb24tZm9jdXMtY29sb3VyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1oZWFkaW5nIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLy8gQ3JlYXRlIENoZXZyb24gaWNvbiBhbGlnbmVkIHdpdGggdGV4dFxuICAgIC5nb3Z1ay1hY2NvcmRpb24tbmF2X19jaGV2cm9uIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgLy8gU2V0IHNpemUgdXNpbmcgcmVtcyBzbyBpY29uIHNjYWxlcyB3aXRoIHRleHRcbiAgICAgIHdpZHRoOiBiYXNlLmdvdnVrLXB4LXRvLXJlbSgyMHB4KTtcbiAgICAgIGhlaWdodDogYmFzZS5nb3Z1ay1weC10by1yZW0oMjBweCk7XG5cbiAgICAgIGJvcmRlcjogYmFzZS5nb3Z1ay1weC10by1yZW0oMXB4KSBzb2xpZDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgLy8gQ3JlYXRlIGlubmVyIGNoZXZyb24gYXJyb3dcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IGJhc2UuZ292dWstcHgtdG8tcmVtKDVweCk7XG4gICAgICAgIGxlZnQ6IGJhc2UuZ292dWstcHgtdG8tcmVtKDZweCk7XG5cbiAgICAgICAgd2lkdGg6IGJhc2UuZ292dWstcHgtdG8tcmVtKDZweCk7XG4gICAgICAgIGhlaWdodDogYmFzZS5nb3Z1ay1weC10by1yZW0oNnB4KTtcblxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuXG4gICAgICAgIGJvcmRlci10b3A6IGJhc2UuZ292dWstcHgtdG8tcmVtKDJweCkgc29saWQ7XG4gICAgICAgIGJvcmRlci1yaWdodDogYmFzZS5nb3Z1ay1weC10by1yZW0oMnB4KSBzb2xpZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSb3RhdGUgaWNvbiB0byBjcmVhdGUgXCJEb3duXCIgdmVyc2lvblxuICAgIC5nb3Z1ay1hY2NvcmRpb24tbmF2X19jaGV2cm9uLS1kb3duIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgfVxuXG4gICAgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1idXR0b24ge1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIHBhZGRpbmc6IGJhc2UuZ292dWstc3BhY2luZygyKSAwIDA7XG5cbiAgICAgIGJvcmRlcjogMDtcblxuICAgICAgYm9yZGVyLXRvcDogJGdvdnVrLWFjY29yZGlvbi1ib3R0b20tYm9yZGVyLXdpZHRoIHNvbGlkO1xuXG4gICAgICAvLyBWaXN1YWxseSBzZXBhcmF0ZSB0aGUgc2VjdGlvbiBmcm9tIHRoZSBvbmUgdW5kZXJuZWF0aCB3aGVuIHVzZXIgY2hhbmdlc1xuICAgICAgLy8gY29sb3VycyBpbiB0aGVpciBicm93c2VyLiBTZWVcbiAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbHBoYWdvdi9nb3Z1ay1mcm9udGVuZC9pc3N1ZXMvMjMyMSNpc3N1ZWNvbW1lbnQtOTI0MjAxNDg4XG4gICAgICBib3JkZXItYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoMikgc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgICAgIGJvcmRlci10b3AtY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoYm9yZGVyKTtcblxuICAgICAgY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIodGV4dCk7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgLy8gU2VjdGlvbiBoZWFkZXJzIGhhdmUgYSBwb2ludGVyIGN1cnNvciBhcyBhbiBhZGRpdGlvbmFsIGFmZm9yZGFuY2VcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICAgQG1lZGlhICN7YmFzZS5nb3Z1ay1mcm9tLWJyZWFrcG9pbnQodGFibGV0KX0ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogYmFzZS5nb3Z1ay1zcGFjaW5nKDIpO1xuICAgICAgfVxuXG4gICAgICAmOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGxpbmstYWN0aXZlKTtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkZ292dWstYWNjb3JkaW9uLWJhc2UtY29sb3VyO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZ292dWstYWNjb3JkaW9uLWhvdmVyLWNvbG91cjtcblxuICAgICAgICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLXRvZ2dsZS10ZXh0IHtcbiAgICAgICAgICBjb2xvcjogJGdvdnVrLWFjY29yZGlvbi1iYXNlLWNvbG91cjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5nb3Z1ay1hY2NvcmRpb24tbmF2X19jaGV2cm9uIHtcbiAgICAgICAgICBjb2xvcjogJGdvdnVrLWFjY29yZGlvbi1iYXNlLWNvbG91cjtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkZ292dWstYWNjb3JkaW9uLWJhc2UtY29sb3VyO1xuICAgICAgICB9XG5cbiAgICAgICAgLmdvdnVrLWFjY29yZGlvbi1uYXZfX2NoZXZyb246OmFmdGVyIHtcbiAgICAgICAgICBjb2xvcjogJGdvdnVrLWFjY29yZGlvbi1ob3Zlci1jb2xvdXI7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIC8vIFJlbW92ZSBkZWZhdWx0IGZvY3VzIGJvcmRlciBhcm91bmQgYnV0dG9uIGFzIHN0eWxpbmcgaXMgYmVpbmcgYXBwbGllZFxuICAgICAgICAvLyB0byBpbm5lciB0ZXh0IGVsZW1lbnRzIHRoYXQgcmVjZWl2ZSBmb2N1c1xuICAgICAgICBvdXRsaW5lOiAwO1xuXG4gICAgICAgIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24taGVhZGluZy10ZXh0LWZvY3VzLFxuICAgICAgICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLXN1bW1hcnktZm9jdXMsXG4gICAgICAgIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tdG9nZ2xlLWZvY3VzIHtcbiAgICAgICAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWZvY3VzZWQtdGV4dDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5nb3Z1ay1hY2NvcmRpb24tbmF2X19jaGV2cm9uIHtcbiAgICAgICAgICBjb2xvcjogJGdvdnVrLWFjY29yZGlvbi1iYXNlLWNvbG91cjtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkZ292dWstYWNjb3JkaW9uLWJhc2UtY29sb3VyO1xuICAgICAgICB9XG5cbiAgICAgICAgLmdvdnVrLWFjY29yZGlvbi1uYXZfX2NoZXZyb246OmFmdGVyIHtcbiAgICAgICAgICBjb2xvcjogJGdvdnVrLWFjY29yZGlvbi1pY29uLWZvY3VzLWNvbG91cjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBSZW1vdmUgZGVmYXVsdCBidXR0b24gZm9jdXMgb3V0bGluZSBpbiBGaXJlZm94XG4gICAgICAmOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlbW92ZSB0aGUgdHJhbnNwYXJlbnQgYm9yZGVyIHdoZW4gdGhlIHNlY3Rpb24gaXMgZXhwYW5kZWQgdG8gbWFrZSBpdFxuICAgIC8vIGNsZWFyIHRoYXQgdGhlIGhlYWRpbmcgcmVsYXRlcyB0byB0aGUgY29udGVudCBiZWxvdy4gQWRqdXN0IHBhZGRpbmcgdG9cbiAgICAvLyBtYWludGFpbiB0aGUgaGVpZ2h0IG9mIHRoZSBlbGVtZW50LiBTZWVcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vYWxwaGFnb3YvZ292dWstZnJvbnRlbmQvcHVsbC8yMjU3I2lzc3VlY29tbWVudC05NTE5MjA3OThcbiAgICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLS1leHBhbmRlZCAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWJ1dHRvbiB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogYmFzZS5nb3Z1ay1zcGFjaW5nKDMpO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcblxuICAgICAgQG1lZGlhICN7YmFzZS5nb3Z1ay1mcm9tLWJyZWFrcG9pbnQodGFibGV0KX0ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogYmFzZS5nb3Z1ay1zcGFjaW5nKDQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFzIENoZXZyb24gaWNvbiBpcyB2ZXJ0aWNhbGx5IGFsaWduZWQgaXQgb3ZlcmxhcHMgd2l0aCB0aGUgZm9jdXMgc3RhdGVcbiAgICAvLyBib3R0b20gYm9yZGVyIOKAkyB0aGlzIGFkZHMgc29tZSBzcGFjaW5nXG4gICAgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1idXR0b246Zm9jdXMgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi10b2dnbGUtZm9jdXMge1xuICAgICAgcGFkZGluZy1ib3R0b206IDNweDtcblxuICAgICAgQG1lZGlhICN7YmFzZS5nb3Z1ay1mcm9tLWJyZWFrcG9pbnQoZGVza3RvcCl9IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDJweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLXRvZ2dsZSxcbiAgICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWhlYWRpbmctdGV4dCxcbiAgICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLXN1bW1hcnkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxM3B4O1xuXG4gICAgICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWhlYWRpbmctdGV4dC1mb2N1cyxcbiAgICAgIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tc3VtbWFyeS1mb2N1cyxcbiAgICAgIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tdG9nZ2xlLWZvY3VzIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFkZCB0b2dnbGUgbGluayB3aXRoIENoZXZyb24gaWNvbiBvbiBsZWZ0LlxuICAgIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tdG9nZ2xlIHtcbiAgICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udC1zaXplKCRzaXplOiAxOSk7XG4gICAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXR5cG9ncmFwaHktd2VpZ2h0LXJlZ3VsYXI7XG4gICAgICBjb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihsaW5rKTtcbiAgICB9XG5cbiAgICAvLyBBZGQgc3BhY2UgYmV0d2VlbiB0aGUgaWNvbiBhbmQgdGV4dC4gQXZvaWQgYXBwbHlpbmcgc3BhY2luZyBkaXJlY3RseSB0b1xuICAgIC8vIHRoZSBpY29uIGFzIHRoZSB1c2Ugb2YgYHRyYW5zZm9ybWAgd2lsbCBjaGFuZ2UgdGhlIHBsYWNlbWVudCBvZiBhbnlcbiAgICAvLyBtYXJnaW5zLlxuICAgIC5nb3Z1ay1hY2NvcmRpb25fX3Nob3ctYWxsLXRleHQsXG4gICAgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi10b2dnbGUtdGV4dCB7XG4gICAgICBtYXJnaW4tbGVmdDogYmFzZS5nb3Z1ay1zcGFjaW5nKDEpO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAvLyBCYWNrZ3JvdW5kIGNvbG91ciBhZGp1c3RtZW50IHdoZW4gdXNlciBjaGFuZ2VzIGNvbG91cnMgaW4gRmlyZWZveFxuICAgIC8vXG4gICAgLy8gV2hlbiB1c2VyIGNoYW5nZXMgY29sb3VycyBpbiBGaXJlZm94LCB0ZXh0IGNvbG91ciBpbnNpZGUgPGJ1dHRvbj4gaXNcbiAgICAvLyBhbHdheXMgYmxhY2sgKHJlZ2FyZGxlc3Mgb2YgdGhlIGN1c3RvbSBjb2xvdXJzIHRoZSB1c2VyIGhhcyBzZXQpLiBUaGlzIGlzXG4gICAgLy8gZmluZSB3aGVuIHRoZSB0ZXh0IGluIHRoZSBidXR0b24gaXMgbm90IG5lc3RlZCBpbnNpZGUgYW5vdGhlciBlbGVtZW50XG4gICAgLy8gYmVjYXVzZSB3aGVuIHVzZXIgY2hhbmdlcyBjb2xvdXJzIGluIEZpcmVmb3gsIHRoZSBpbW1lZGlhdGUgYmFja2dyb3VuZFxuICAgIC8vIGNvbG91ciBvZiBidXR0b25zIGlzIGFsd2F5cyB3aGl0ZSAoYWdhaW4sIHJlZ2FyZGxlc3Mgb2YgdXNlcidzIGN1c3RvbVxuICAgIC8vIGNvbG91cnMpLlxuICAgIC8vXG4gICAgLy8gSG93ZXZlciwgd2hlbiB0aGUgdGV4dCBpbnNpZGUgPGJ1dHRvbj4gaXMgd3JhcHBlZCBpbnNpZGUgYW5vdGhlciBlbGVtZW50XG4gICAgLy8gQU5EIHRoYXQgZWxlbWVudCBzZXRzIGEgYmFja2dyb3VuZCBjb2xvdXIsIHRoZSB0ZXh0IGNvbG91ciBpcyBzdGlsbCBibGFja1xuICAgIC8vIGJ1dCB0aGUgYmFja2dyb3VuZCBvZiB0aGF0IG5lc3RlZCBlbGVtZW50IGdldHMgdGhlIHVzZXIncyBjdXN0b21cbiAgICAvLyBiYWNrZ3JvdW5kIGNvbG91ci4gV2hlbiB0aGUgY3VzdG9tIGJhY2tncm91bmQgaXMgYSBsaWdodGVyIGh1ZSwgdGhlXG4gICAgLy8gY29udHJhc3QgbWlnaHQgYmUgc3VmZmljaWVudC4gQnV0IGlmIHRoZSB1c2VyJ3MgY3VzdG9tIGJhY2tncm91bmQgY29sb3VyXG4gICAgLy8gaXMgYSBkYXJrZXIgY29sb3VyLCB0aGUgY29udHJhc3Qgd2l0aCB0aGUgdGV4dCBtaWdodCBub3QgYmUgc3VmZmljaWVudC5cbiAgICAvL1xuICAgIC8vIFRvIGVuc3VyZSBzdWZmaWNpZW50IGNvbnRyYXN0LCBvdmVycmlkZSB0aGUgYmFja2dyb3VuZCBjb2xvdXIgc2V0IGJ5IHRoZVxuICAgIC8vIGZvY3VzIHN0YXRlIG9uIHRoZSBuZXN0ZWQgZWxlbWVudHMgdG8gYmUgdHJhbnNwYXJlbnQuXG4gICAgLy9cbiAgICAvLyBBbHNvIG92ZXJyaWRlIHRoZSBiYWNrZ3JvdW5kIGNvbG91ciBvZiB0aGUgU2hvdy9IaWRlIGNoZXZyb25zIHdoaWNoIHNldCBhXG4gICAgLy8gYmFja2dyb3VuZCBjb2xvdXIgb24gaG92ZXIuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAgICAgLmdvdnVrLWFjY29yZGlvbl9fc2hvdy1hbGw6aG92ZXIsXG4gICAgICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWJ1dHRvbjpob3ZlciB7XG4gICAgICAgIC5nb3Z1ay1hY2NvcmRpb24tbmF2X19jaGV2cm9uIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZ292dWstYWNjb3JkaW9uX19zaG93LWFsbDpmb2N1cyxcbiAgICAgIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tYnV0dG9uOmZvY3VzIHtcbiAgICAgICAgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1oZWFkaW5nLXRleHQtZm9jdXMsXG4gICAgICAgIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tc3VtbWFyeS1mb2N1cyxcbiAgICAgICAgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi10b2dnbGUtZm9jdXMsXG4gICAgICAgIC5nb3Z1ay1hY2NvcmRpb24tbmF2X19jaGV2cm9uIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEZvciBkZXZpY2VzIHRoYXQgY2FuJ3QgaG92ZXIgc3VjaCBhcyB0b3VjaCBkZXZpY2VzLFxuICAgIC8vIHJlbW92ZSBob3ZlciBzdGF0ZSBhcyBpdCBjYW4gYmUgc3R1Y2sgaW4gdGhhdCBzdGF0ZSAoaU9TKS5cbiAgICBAbWVkaWEgKGhvdmVyOiBub25lKSB7XG4gICAgICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWhlYWRlcjpob3ZlciB7XG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoYm9yZGVyKTtcblxuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDNweCAwIDAgYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihsaW5rKTtcblxuICAgICAgICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWJ1dHRvbiB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihib3JkZXIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiIsIkB1c2UgXCJzYXNzOnN0cmluZ1wiO1xuXG5AdXNlIFwiLi4vLi4vYmFzZVwiO1xuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gc3R5bGVzIHtcbiAgLy8gQ29tcG9uZW50IGZvbnQtc2l6ZSBvbiB0aGUgRnJvbnRlbmQgKHVzZWQgZm9yIGNhbGN1bGF0aW9ucylcbiAgJGZvbnQtc2l6ZTogMTY7XG5cbiAgLy8gU2l6ZSBvZiBjaGV2cm9uIChleGNsdWRpbmcgYm9yZGVyKVxuICAkY2hldnJvbi1zaXplOiBiYXNlLmdvdnVrLWVtKDdweCwgJGZvbnQtc2l6ZSk7XG5cbiAgLy8gU2l6ZSBvZiBjaGV2cm9uIGJvcmRlclxuICAkY2hldnJvbi1ib3JkZXItbWluLXdpZHRoOiAxcHg7XG4gICRjaGV2cm9uLWJvcmRlci13aWR0aDogYmFzZS5nb3Z1ay1lbSgkY2hldnJvbi1ib3JkZXItbWluLXdpZHRoLCAkZm9udC1zaXplKTtcblxuICAvLyBDb2xvdXIgb2YgY2hldnJvblxuICAkY2hldnJvbi1ib3JkZXItY29sb3VyOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHNlY29uZGFyeS10ZXh0KTtcblxuICAuZ292dWstYmFjay1saW5rIHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWZvbnQtc2l6ZSgkc2l6ZTogJGZvbnQtc2l6ZSk7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1saW5rLWNvbW1vbjtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWxpbmstc3R5bGUtdGV4dDtcblxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBtYXJnaW4tdG9wOiBiYXNlLmdvdnVrLXNwYWNpbmcoMyk7XG4gICAgbWFyZ2luLWJvdHRvbTogYmFzZS5nb3Z1ay1zcGFjaW5nKDMpO1xuXG4gICAgLy8gQWxsb3cgc3BhY2UgZm9yIHRoZSBhcnJvd1xuICAgIHBhZGRpbmctbGVmdDogYmFzZS5nb3Z1ay1lbSgxNHB4LCAkZm9udC1zaXplKTtcbiAgfVxuXG4gIC8vIFByZXBlbmQgbGVmdCBwb2ludGluZyBjaGV2cm9uXG4gIC5nb3Z1ay1iYWNrLWxpbms6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIC8vIFZlcnRpY2FsbHkgYWxpZ24gd2l0aCB0aGUgcGFyZW50IGVsZW1lbnRcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiBiYXNlLmdvdnVrLWVtKDNweCwgJGZvbnQtc2l6ZSk7XG5cbiAgICB3aWR0aDogJGNoZXZyb24tc2l6ZTtcbiAgICBoZWlnaHQ6ICRjaGV2cm9uLXNpemU7XG5cbiAgICBtYXJnaW46IGF1dG8gMDtcblxuICAgIHRyYW5zZm9ybTogcm90YXRlKDIyNWRlZyk7XG5cbiAgICBib3JkZXI6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogJGNoZXZyb24tYm9yZGVyLW1pbi13aWR0aCAkY2hldnJvbi1ib3JkZXItbWluLXdpZHRoIDAgMDtcbiAgICBib3JkZXItY29sb3I6ICRjaGV2cm9uLWJvcmRlci1jb2xvdXI7XG5cbiAgICBAc3VwcG9ydHMgKGJvcmRlci13aWR0aDogc3RyaW5nLnVucXVvdGUoXCJtYXgoMHB4KVwiKSkge1xuICAgICAgJGJvcmRlci13aWR0aC1ldmFsOiBcIm1heCgjeyRjaGV2cm9uLWJvcmRlci1taW4td2lkdGh9LCAjeyRjaGV2cm9uLWJvcmRlci13aWR0aH0pXCI7XG5cbiAgICAgIC8vIEVuc3VyZSB0aGF0IHRoZSBjaGV2cm9uIG5ldmVyIGdldHMgc21hbGxlciB0aGFuIDE2cHhcbiAgICAgIGJvcmRlci13aWR0aDogc3RyaW5nLnVucXVvdGUoJGJvcmRlci13aWR0aC1ldmFsKSBzdHJpbmcudW5xdW90ZSgkYm9yZGVyLXdpZHRoLWV2YWwpIDAgMDtcbiAgICAgIGZvbnQtc2l6ZTogc3RyaW5nLnVucXVvdGUoXCJtYXgoI3skZm9udC1zaXplICogMXB4fSwgMWVtKVwiKTtcbiAgICB9XG4gIH1cblxuICAuZ292dWstYmFjay1saW5rOmZvY3VzOjpiZWZvcmUge1xuICAgIGJvcmRlci1jb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihmb2N1cy10ZXh0KTtcbiAgfVxuXG4gIC5nb3Z1ay1iYWNrLWxpbms6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0xNHB4O1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogLTE0cHg7XG4gICAgbGVmdDogMDtcbiAgfVxuXG4gIC5nb3Z1ay1iYWNrLWxpbmstLWludmVyc2Uge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstbGluay1zdHlsZS1pbnZlcnNlO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogY3VycmVudGNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4iLCJAdXNlIFwic2FzczpzdHJpbmdcIjtcblxuQHVzZSBcIi4uLy4uL2Jhc2VcIjtcblxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIHN0eWxlcyB7XG4gIC8vIENvbXBvbmVudCBmb250LXNpemUgb24gdGhlIEZyb250ZW5kICh1c2VkIGZvciBjYWxjdWxhdGlvbnMpXG4gICRmb250LXNpemU6IDE2O1xuXG4gIC8vIFNpemUgb2YgY2hldnJvbiAoZXhjbHVkaW5nIGJvcmRlcilcbiAgJGNoZXZyb24tc2l6ZTogYmFzZS5nb3Z1ay1lbSg3cHgsICRmb250LXNpemUpO1xuXG4gIC8vIFNpemUgb2YgY2hldnJvbiBib3JkZXJcbiAgJGNoZXZyb24tYm9yZGVyLW1pbi13aWR0aDogMXB4O1xuICAkY2hldnJvbi1ib3JkZXItd2lkdGg6IGJhc2UuZ292dWstZW0oJGNoZXZyb24tYm9yZGVyLW1pbi13aWR0aCwgJGZvbnQtc2l6ZSk7XG5cbiAgLy8gQ29sb3VyIG9mIGNoZXZyb25cbiAgJGNoZXZyb24tYm9yZGVyLWNvbG91cjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihzZWNvbmRhcnktdGV4dCk7XG5cbiAgLy8gQ2FsY3VsYXRlZCBhbHRpdHVkZSAo4paz4oaVKSBvZiB0aGUgcmlnaHQtYW5nbGVkIGlzb3NjZWxlcyBjaGV2cm9uIHdpdGggc2lkZXNcbiAgLy8gb2YgbGVuZ3RoIDggKDdweCArIDFweCBib3JkZXIpOlxuICAvL1xuICAvLyDiiJooOMKyICsgOMKyKSAqIDAuNSDiiYUgNS42NTVcbiAgJGNoZXZyb24tYWx0aXR1ZGUtY2FsY3VsYXRlZDogYmFzZS5nb3Z1ay1lbSg1LjY1NXB4LCAkZm9udC1zaXplKTtcblxuICAuZ292dWstYnJlYWRjcnVtYnMge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udCgkc2l6ZTogJGZvbnQtc2l6ZSk7XG5cbiAgICBtYXJnaW4tdG9wOiBiYXNlLmdvdnVrLXNwYWNpbmcoMyk7XG4gICAgbWFyZ2luLWJvdHRvbTogYmFzZS5nb3Z1ay1zcGFjaW5nKDIpO1xuICAgIGNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHRleHQpO1xuICB9XG5cbiAgLmdvdnVrLWJyZWFkY3J1bWJzX19saXN0IHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWNsZWFyZml4O1xuXG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICB9XG5cbiAgLmdvdnVrLWJyZWFkY3J1bWJzX19saXN0LWl0ZW0ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBtYXJnaW4tYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoMSk7XG5cbiAgICAvLyBBZGQgYm90aCBtYXJnaW4gYW5kIHBhZGRpbmcgc3VjaCB0aGF0IHRoZSBjaGV2cm9uIGFwcGVhcnMgY2VudHJhbGx5XG4gICAgLy8gYmV0d2VlbiBlYWNoIGJyZWFkY3J1bWIgaXRlbVxuICAgIG1hcmdpbi1sZWZ0OiBiYXNlLmdvdnVrLWVtKGJhc2UuZ292dWstc3BhY2luZygyKSwgJGZvbnQtc2l6ZSk7XG4gICAgcGFkZGluZy1sZWZ0OiBiYXNlLmdvdnVrLWVtKGJhc2UuZ292dWstc3BhY2luZygyKSwgJGZvbnQtc2l6ZSkgKyAkY2hldnJvbi1hbHRpdHVkZS1jYWxjdWxhdGVkO1xuXG4gICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAvLyBDcmVhdGUgYSBjaGV2cm9uIHVzaW5nIGEgYm94IHdpdGggYm9yZGVycyBvbiB0d28gc2lkZXMsIHJvdGF0ZWQgNDVkZWcuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuXG4gICAgICAvLyBPZmZzZXQgYnkgdGhlIGRpZmZlcmVuY2UgYmV0d2VlbiB0aGUgd2lkdGggb2YgdGhlIG5vbi1yb3RhdGVkIHNxdWFyZVxuICAgICAgLy8gYW5kIGl0cyB3aWR0aCB3aGVuIHJvdGF0ZWRcbiAgICAgIGxlZnQ6ICgoJGNoZXZyb24tYWx0aXR1ZGUtY2FsY3VsYXRlZCAqIC0yKSArICRjaGV2cm9uLXNpemUgKyAkY2hldnJvbi1ib3JkZXItd2lkdGgpO1xuXG4gICAgICB3aWR0aDogJGNoZXZyb24tc2l6ZTtcbiAgICAgIGhlaWdodDogJGNoZXZyb24tc2l6ZTtcblxuICAgICAgbWFyZ2luOiBhdXRvIDA7XG5cbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcblxuICAgICAgYm9yZGVyOiBzb2xpZDtcbiAgICAgIGJvcmRlci13aWR0aDogJGNoZXZyb24tYm9yZGVyLW1pbi13aWR0aCAkY2hldnJvbi1ib3JkZXItbWluLXdpZHRoIDAgMDtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNoZXZyb24tYm9yZGVyLWNvbG91cjtcblxuICAgICAgQHN1cHBvcnRzIChib3JkZXItd2lkdGg6IHN0cmluZy51bnF1b3RlKFwibWF4KDBweClcIikpIHtcbiAgICAgICAgJGJvcmRlci13aWR0aC1ldmFsOiBcIm1heCgjeyRjaGV2cm9uLWJvcmRlci1taW4td2lkdGh9LCAjeyRjaGV2cm9uLWJvcmRlci13aWR0aH0pXCI7XG5cbiAgICAgICAgLy8gRW5zdXJlIHRoYXQgdGhlIGNoZXZyb24gbmV2ZXIgZ2V0cyBzbWFsbGVyIHRoYW4gMTZweFxuICAgICAgICBib3JkZXItd2lkdGg6IHN0cmluZy51bnF1b3RlKCRib3JkZXItd2lkdGgtZXZhbCkgc3RyaW5nLnVucXVvdGUoJGJvcmRlci13aWR0aC1ldmFsKSAwIDA7XG4gICAgICAgIGZvbnQtc2l6ZTogc3RyaW5nLnVucXVvdGUoXCJtYXgoI3skZm9udC1zaXplICogMXB4fSwgMWVtKVwiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1icmVhZGNydW1ic19fbGluayB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1saW5rLWNvbW1vbjtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWxpbmstc3R5bGUtdGV4dDtcbiAgfVxuXG4gIC5nb3Z1ay1icmVhZGNydW1icy0tY29sbGFwc2Utb24tbW9iaWxlIHtcbiAgICBAbWVkaWEgI3tiYXNlLmdvdnVrLXVudGlsLWJyZWFrcG9pbnQodGFibGV0KX0ge1xuICAgICAgLmdvdnVrLWJyZWFkY3J1bWJzX19saXN0LWl0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQsXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IGJhc2UuZ292dWstZW0oNnB4LCAkZm9udC1zaXplKTtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmdvdnVrLWJyZWFkY3J1bWJzX19saXN0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZ292dWstYnJlYWRjcnVtYnMtLWludmVyc2Uge1xuICAgIC0tZ292dWstdGV4dC1jb2xvdXI6ICN7YmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihpbnZlcnNlLXRleHQpfTtcblxuICAgIC5nb3Z1ay1icmVhZGNydW1ic19fbGlzdC1pdGVtOjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiBjdXJyZW50Y29sb3I7XG4gICAgfVxuICB9XG59XG5cbiIsIi8vLy9cbi8vLyBAZ3JvdXAgY29tcG9uZW50cy9idXR0b25cbi8vLy9cblxuQHVzZSBcIi4uLy4uL2Jhc2VcIjtcblxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIHN0eWxlcygkYmFja2dyb3VuZC1jb2xvdXIsICR0ZXh0LWNvbG91ciwgJGludmVyc2UtYmFja2dyb3VuZC1jb2xvdXIsICRpbnZlcnNlLXRleHQtY29sb3VyKSB7XG4gICRnb3Z1ay1idXR0b24tY29sb3VyOiAkYmFja2dyb3VuZC1jb2xvdXI7XG4gICR0ZXh0LWNvbG91cjogJHRleHQtY29sb3VyO1xuICAkZ292dWstYnV0dG9uLWhvdmVyLWNvbG91cjogYmFzZS5nb3Z1ay1jb2xvdXIoXCJncmVlblwiLCAkdmFyaWFudDogXCJzaGFkZS0yNVwiKTtcbiAgJGdvdnVrLWJ1dHRvbi1zaGFkb3ctY29sb3VyOiBiYXNlLmdvdnVrLWNvbG91cihcImdyZWVuXCIsICR2YXJpYW50OiBcInNoYWRlLTUwXCIpO1xuXG4gIC8vIFNlY29uZGFyeSBidXR0b24gdmFyaWFibGVzXG4gICRnb3Z1ay1zZWNvbmRhcnktYnV0dG9uLWNvbG91cjogYmFzZS5nb3Z1ay1jb2xvdXIoXCJibGFja1wiLCAkdmFyaWFudDogXCJ0aW50LTk1XCIpO1xuICAkZ292dWstc2Vjb25kYXJ5LWJ1dHRvbi10ZXh0LWNvbG91cjogYmFzZS5nb3Z1ay1jb2xvdXIoXCJibGFja1wiKTtcbiAgJGdvdnVrLXNlY29uZGFyeS1idXR0b24taG92ZXItY29sb3VyOiBiYXNlLmdvdnVrLWNvbG91cihcImJsYWNrXCIsICR2YXJpYW50OiBcInRpbnQtODBcIik7XG4gICRnb3Z1ay1zZWNvbmRhcnktYnV0dG9uLXNoYWRvdy1jb2xvdXI6IGJhc2UuZ292dWstY29sb3VyKFwiYmxhY2tcIiwgJHZhcmlhbnQ6IFwidGludC01MFwiKTtcblxuICAvLyBXYXJuaW5nIGJ1dHRvbiB2YXJpYWJsZXNcbiAgJGdvdnVrLXdhcm5pbmctYnV0dG9uLWNvbG91cjogYmFzZS5nb3Z1ay1jb2xvdXIoXCJyZWRcIik7XG4gICRnb3Z1ay13YXJuaW5nLWJ1dHRvbi10ZXh0LWNvbG91cjogYmFzZS5nb3Z1ay1jb2xvdXIoXCJ3aGl0ZVwiKTtcbiAgJGdvdnVrLXdhcm5pbmctYnV0dG9uLWhvdmVyLWNvbG91cjogYmFzZS5nb3Z1ay1jb2xvdXIoXCJyZWRcIiwgJHZhcmlhbnQ6IFwic2hhZGUtMjVcIik7XG4gICRnb3Z1ay13YXJuaW5nLWJ1dHRvbi1zaGFkb3ctY29sb3VyOiBiYXNlLmdvdnVrLWNvbG91cihcInJlZFwiLCAkdmFyaWFudDogXCJzaGFkZS01MFwiKTtcblxuICAvLyBJbnZlcnNlIGJ1dHRvbiB2YXJpYWJsZXNcbiAgJGdvdnVrLWludmVyc2UtYnV0dG9uLWNvbG91cjogJGludmVyc2UtYmFja2dyb3VuZC1jb2xvdXI7XG4gICRpbnZlcnNlLXRleHQtY29sb3VyOiAkaW52ZXJzZS10ZXh0LWNvbG91cjtcbiAgJGdvdnVrLWludmVyc2UtYnV0dG9uLWhvdmVyLWNvbG91cjogYmFzZS5nb3Z1ay1jb2xvdXIoXCJibHVlXCIsICR2YXJpYW50OiBcInRpbnQtOTVcIik7XG4gICRnb3Z1ay1pbnZlcnNlLWJ1dHRvbi1zaGFkb3ctY29sb3VyOiBiYXNlLmdvdnVrLWNvbG91cihcImJsdWVcIiwgJHZhcmlhbnQ6IFwic2hhZGUtNTBcIik7XG5cbiAgLy8gQmVjYXVzZSB0aGUgc2hhZG93IChzMCkgaXMgdmlzdWFsbHkgJ3BhcnQgb2YnIHRoZSBidXR0b24sIHdlIG5lZWQgdG8gcmVkdWNlXG4gIC8vIHRoZSBoZWlnaHQgb2YgdGhlIGJ1dHRvbiB0byBjb21wZW5zYXRlIGJ5IGFkanVzdGluZyBpdHMgcGFkZGluZyAoczEpIGFuZFxuICAvLyBpbmNyZWFzZSB0aGUgYm90dG9tIG1hcmdpbiB0byBpbmNsdWRlIGl0IChzMikuXG4gICRidXR0b24tc2hhZG93LXNpemU6IGJhc2UuJGdvdnVrLWJvcmRlci13aWR0aC1mb3JtLWVsZW1lbnQ7XG5cbiAgLmdvdnVrLWJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1mb250KCRzaXplOiAxOSwgJGxpbmUtaGVpZ2h0OiAxOXB4KTtcblxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDYsIFwiYm90dG9tXCIsICRhZGp1c3RtZW50OiAkYnV0dG9uLXNoYWRvdy1zaXplKTsgLy8gczJcbiAgICBwYWRkaW5nOiAoYmFzZS5nb3Z1ay1zcGFjaW5nKDIpIC0gYmFzZS4kZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudCkgYmFzZS5nb3Z1ay1zcGFjaW5nKDIpXG4gICAgICAoYmFzZS5nb3Z1ay1zcGFjaW5nKDIpIC0gYmFzZS4kZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudCAtICgkYnV0dG9uLXNoYWRvdy1zaXplICogMC41KSk7IC8vIHMxXG4gICAgYm9yZGVyOiBiYXNlLiRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG91cjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ292dWstYnV0dG9uLWNvbG91cjtcbiAgICBib3gtc2hhZG93OiAwICRidXR0b24tc2hhZG93LXNpemUgMCAkZ292dWstYnV0dG9uLXNoYWRvdy1jb2xvdXI7IC8vIHMwXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblxuICAgIEBtZWRpYSAje2Jhc2UuZ292dWstZnJvbS1icmVha3BvaW50KHRhYmxldCl9IHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgIC8vIEVuc3VyZSB0aGF0IGFueSBnbG9iYWwgbGluayBzdHlsZXMgYXJlIG92ZXJyaWRkZW5cbiAgICAmOmxpbmssXG4gICAgJjp2aXNpdGVkLFxuICAgICY6YWN0aXZlLFxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICR0ZXh0LWNvbG91cjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBGaXggdW53YW50ZWQgYnV0dG9uIHBhZGRpbmcgaW4gRmlyZWZveFxuICAgICY6Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnb3Z1ay1idXR0b24taG92ZXItY29sb3VyO1xuICAgIH1cblxuICAgICY6YWN0aXZlIHtcbiAgICAgIC8vIEJ1bXAgdGhlIGJ1dHRvbiBkb3duIHNvIGl0IGxvb2tzIGxpa2UgaXRzIGJlaW5nIHByZXNzZWQgaW5cbiAgICAgIHRvcDogJGJ1dHRvbi1zaGFkb3ctc2l6ZTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihmb2N1cyk7XG4gICAgICBvdXRsaW5lOiBiYXNlLiRnb3Z1ay1mb2N1cy13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGZvY3VzKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzOm5vdCg6YWN0aXZlKTpub3QoOmhvdmVyKSB7XG4gICAgICBib3JkZXItY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoZm9jdXMpO1xuICAgICAgY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoZm9jdXMtdGV4dCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGZvY3VzKTtcbiAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDAgYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihmb2N1cy10ZXh0KTtcbiAgICB9XG5cbiAgICAvLyBVc2UgYSBwc2V1ZG8gZWxlbWVudCB0byBleHBhbmQgdGhlIGNsaWNrIHRhcmdldCBhcmVhIHRvIGluY2x1ZGUgdGhlXG4gICAgLy8gYnV0dG9uJ3Mgc2hhZG93IGFzIHdlbGwsIGluIGNhc2UgdXNlcnMgdHJ5IHRvIGNsaWNrIGl0LlxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAgICAgdG9wOiAtKGJhc2UuJGdvdnVrLWJvcmRlci13aWR0aC1mb3JtLWVsZW1lbnQpO1xuICAgICAgcmlnaHQ6IC0oYmFzZS4kZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudCk7XG4gICAgICBib3R0b206IC0oYmFzZS4kZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudCArICRidXR0b24tc2hhZG93LXNpemUpO1xuICAgICAgbGVmdDogLShiYXNlLiRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50KTtcblxuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLy8gV2hlbiB0aGUgYnV0dG9uIGlzIGFjdGl2ZSBpdCBpcyBzaGlmdGVkIGRvd24gYnkgJGJ1dHRvbi1zaGFkb3ctc2l6ZSB0b1xuICAgIC8vIGRlbm90ZSBhICdwcmVzc2VkJyBzdGF0ZS4gSWYgdGhlIHVzZXIgaGFwcGVuZWQgdG8gY2xpY2sgYXQgdGhlIHZlcnkgdG9wXG4gICAgLy8gb2YgdGhlIGJ1dHRvbiwgdGhlaXIgbW91c2UgaXMgbm8gbG9uZ2VyIG92ZXIgdGhlIGJ1dHRvbiAoYmVjYXVzZSBpdCBoYXNcbiAgICAvLyAnbW92ZWQgYmVuZWF0aCB0aGVtJykgYW5kIHNvIHRoZSBjbGljayBldmVudCBpcyBub3QgZmlyZWQuXG4gICAgLy9cbiAgICAvLyBUaGlzIGNvcnJlY3RzIHRoYXQgYnkgc2hpZnRpbmcgdGhlIHRvcCBvZiB0aGUgcHNldWRvIGVsZW1lbnQgc28gdGhhdCBpdFxuICAgIC8vIGNvbnRpbnVlcyB0byBjb3ZlciB0aGUgYXJlYSB0aGF0IHRoZSB1c2VyIG9yaWdpbmFsbHkgY2xpY2tlZCwgd2hpY2ggbWVhbnNcbiAgICAvLyB0aGUgY2xpY2sgZXZlbnQgaXMgc3RpbGwgZmlyZWQuXG4gICAgLy9cbiAgICAvLyDwn46JXG4gICAgJjphY3RpdmU6OmJlZm9yZSB7XG4gICAgICB0b3A6IC0oYmFzZS4kZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudCArICRidXR0b24tc2hhZG93LXNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1idXR0b25bZGlzYWJsZWRdIHtcbiAgICBvcGFjaXR5OiAoMC41KTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdvdnVrLWJ1dHRvbi1jb2xvdXI7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIH1cblxuICAgICY6YWN0aXZlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJveC1zaGFkb3c6IDAgJGJ1dHRvbi1zaGFkb3ctc2l6ZSAwICRnb3Z1ay1idXR0b24tc2hhZG93LWNvbG91cjsgLy8gczBcbiAgICB9XG4gIH1cblxuICAuZ292dWstYnV0dG9uLS1zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnb3Z1ay1zZWNvbmRhcnktYnV0dG9uLWNvbG91cjtcbiAgICBib3gtc2hhZG93OiAwICRidXR0b24tc2hhZG93LXNpemUgMCAkZ292dWstc2Vjb25kYXJ5LWJ1dHRvbi1zaGFkb3ctY29sb3VyO1xuXG4gICAgJixcbiAgICAmOmxpbmssXG4gICAgJjp2aXNpdGVkLFxuICAgICY6YWN0aXZlLFxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRnb3Z1ay1zZWNvbmRhcnktYnV0dG9uLXRleHQtY29sb3VyO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdvdnVrLXNlY29uZGFyeS1idXR0b24taG92ZXItY29sb3VyO1xuXG4gICAgICAmW2Rpc2FibGVkXSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnb3Z1ay1zZWNvbmRhcnktYnV0dG9uLWNvbG91cjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZ292dWstYnV0dG9uLS13YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ292dWstd2FybmluZy1idXR0b24tY29sb3VyO1xuICAgIGJveC1zaGFkb3c6IDAgJGJ1dHRvbi1zaGFkb3ctc2l6ZSAwICRnb3Z1ay13YXJuaW5nLWJ1dHRvbi1zaGFkb3ctY29sb3VyO1xuXG4gICAgJixcbiAgICAmOmxpbmssXG4gICAgJjp2aXNpdGVkLFxuICAgICY6YWN0aXZlLFxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRnb3Z1ay13YXJuaW5nLWJ1dHRvbi10ZXh0LWNvbG91cjtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnb3Z1ay13YXJuaW5nLWJ1dHRvbi1ob3Zlci1jb2xvdXI7XG5cbiAgICAgICZbZGlzYWJsZWRdIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdvdnVrLXdhcm5pbmctYnV0dG9uLWNvbG91cjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZ292dWstYnV0dG9uLS1pbnZlcnNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ292dWstaW52ZXJzZS1idXR0b24tY29sb3VyO1xuICAgIGJveC1zaGFkb3c6IDAgJGJ1dHRvbi1zaGFkb3ctc2l6ZSAwICRnb3Z1ay1pbnZlcnNlLWJ1dHRvbi1zaGFkb3ctY29sb3VyO1xuXG4gICAgJixcbiAgICAmOmxpbmssXG4gICAgJjp2aXNpdGVkLFxuICAgICY6YWN0aXZlLFxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRpbnZlcnNlLXRleHQtY29sb3VyO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdvdnVrLWludmVyc2UtYnV0dG9uLWhvdmVyLWNvbG91cjtcblxuICAgICAgJltkaXNhYmxlZF0ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ292dWstaW52ZXJzZS1idXR0b24tY29sb3VyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1idXR0b24tLXN0YXJ0IHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXR5cG9ncmFwaHktd2VpZ2h0LWJvbGQ7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1mb250LXNpemUoJHNpemU6IDI0LCAkbGluZS1oZWlnaHQ6IDEpO1xuXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWluLWhlaWdodDogYXV0bztcbiAgfVxuXG4gIC5nb3Z1ay1idXR0b25fX3N0YXJ0LWljb24ge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICBtYXJnaW4tbGVmdDogYmFzZS5nb3Z1ay1zcGFjaW5nKDEpO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAvLyBXb3JrIGFyb3VuZCBTVkdzIG5vdCBpbmhlcml0aW5nIGNvbG9yIGZyb20gcGFyZW50IGluIGZvcmNlZCBjb2xvciBtb2RlXG4gICAgLy8gKGh0dHBzOi8vZ2l0aHViLmNvbS93M2MvY3Nzd2ctZHJhZnRzL2lzc3Vlcy82MzEwKVxuICAgIGZvcmNlZC1jb2xvci1hZGp1c3Q6IGF1dG87XG5cbiAgICBAbWVkaWEgI3tiYXNlLmdvdnVrLWZyb20tYnJlYWtwb2ludChkZXNrdG9wKX0ge1xuICAgICAgbWFyZ2luLWxlZnQ6IGJhc2UuZ292dWstc3BhY2luZygyKTtcbiAgICB9XG4gIH1cbn1cblxuIiwiLy8vL1xuLy8vIEBncm91cCBjb21wb25lbnRzL2J1dHRvblxuLy8vL1xuXG5AdXNlIFwiLi4vLi4vaGVscGVyc1wiO1xuXG4vLy8gQnV0dG9uIGNvbXBvbmVudCBiYWNrZ3JvdW5kIGNvbG91clxuLy8vXG4vLy8gQHR5cGUgQ29sb3VyXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG91cjogaGVscGVycy5nb3Z1ay1jb2xvdXIoXCJncmVlblwiKSAhZGVmYXVsdDtcblxuLy8vIEJ1dHRvbiBjb21wb25lbnQgdGV4dCBjb2xvdXJcbi8vL1xuLy8vIEB0eXBlIENvbG91clxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1idXR0b24tdGV4dC1jb2xvdXI6IGhlbHBlcnMuZ292dWstY29sb3VyKFwid2hpdGVcIikgIWRlZmF1bHQ7XG5cbi8vLyBJbnZlcnRlZCBidXR0b24gY29tcG9uZW50IGJhY2tncm91bmQgY29sb3VyXG4vLy9cbi8vLyBAdHlwZSBDb2xvdXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstaW52ZXJzZS1idXR0b24tYmFja2dyb3VuZC1jb2xvdXI6IGhlbHBlcnMuZ292dWstY29sb3VyKFwid2hpdGVcIikgIWRlZmF1bHQ7XG5cbi8vLyBJbnZlcnRlZCBidXR0b24gY29tcG9uZW50IHRleHQgY29sb3VyXG4vLy9cbi8vLyBAdHlwZSBDb2xvdXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstaW52ZXJzZS1idXR0b24tdGV4dC1jb2xvdXI6IGhlbHBlcnMuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoYnJhbmQpICFkZWZhdWx0O1xuXG4iLCJAdXNlIFwiLi4vLi4vYmFzZVwiO1xuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gc3R5bGVzIHtcbiAgLmdvdnVrLWVycm9yLW1lc3NhZ2Uge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udCgkc2l6ZTogMTksICR3ZWlnaHQ6IGJvbGQpO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogMDsgLy8gUmVzZXQgYW55IGRlZmF1bHQgYnJvd3NlciBtYXJnaW5zIGZvciBwYXJhZ3JhcGhzXG4gICAgbWFyZ2luLWJvdHRvbTogYmFzZS5nb3Z1ay1zcGFjaW5nKDMpO1xuICAgIGNsZWFyOiBib3RoO1xuXG4gICAgY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoZXJyb3IpO1xuICB9XG59XG5cbiIsIkB1c2UgXCIuLi8uLi9iYXNlXCI7XG5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBzdHlsZXMge1xuICAuZ292dWstaGludCB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1mb250KCRzaXplOiAxOSk7XG5cbiAgICBtYXJnaW4tYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoMyk7XG5cbiAgICBjb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihzZWNvbmRhcnktdGV4dCk7XG4gIH1cblxuICAvLyBSZWR1Y2VzIG1hcmdpbi1ib3R0b20gb2YgaGludCB3aGVuIHVzZWQgYWZ0ZXIgdGhlIGRlZmF1bHQgbGFiZWwgKG5vIGNsYXNzKVxuICAvLyBvciBnb3Z1ay1sYWJlbC0tcyBmb3IgYmV0dGVyIHZlcnRpY2FsIGFsaWdubWVudC5cblxuICAvLyBUaGlzIGFkanVzdG1lbnQgd2lsbCBub3Qgd29yayB3aGVuIHRoZSBsYWJlbCBpcyBpbnNpZGUgdGhlIDxoMT4sIGhvd2V2ZXIgaXRcbiAgLy8gaXMgdW5saWtlbHkgdGhhdCB0aGUgZGVmYXVsdCBvciBnb3Z1ay1sYWJlbC0tcyBjbGFzcyB3b3VsZCBiZSB1c2VkIGluIHRoaXNcbiAgLy8gY2FzZS5cblxuICAvLyBUaGlzIGFkanVzdG1lbnQgd2lsbCBub3Qgd29yayBpbiBicm93c2VycyB0aGF0IGRvIG5vdCBzdXBwb3J0IDpub3QoKS5cbiAgLy8gVXNlcnMgd2l0aCB0aGVzZSBicm93c2VycyB3aWxsIHNlZSB0aGUgZGVmYXVsdCBzaXplIG1hcmdpbiAoNXB4IGxhcmdlcikuXG5cbiAgLmdvdnVrLWxhYmVsOm5vdCguZ292dWstbGFiZWwtLW0pOm5vdCguZ292dWstbGFiZWwtLWwpOm5vdCguZ292dWstbGFiZWwtLXhsKSArIC5nb3Z1ay1oaW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoMik7XG4gIH1cblxuICAvLyBSZWR1Y2VzIG1hcmdpbi1ib3R0b20gb2YgaGludCB3aGVuIHVzZWQgYWZ0ZXIgdGhlIGRlZmF1bHQgbGVnZW5kIChubyBjbGFzcylcbiAgLy8gb3IgZ292dWstZmllbGRzZXRfX2xlZ2VuZC0tcyBmb3IgYmV0dGVyIHZlcnRpY2FsIGFsaWdubWVudC5cblxuICAvLyBUaGlzIGFkanVzdG1lbnQgd2lsbCBub3Qgd29yayB3aGVuIHRoZSBsZWdlbmQgaXMgb3V0c2lkZSB0aGUgPGgxPiwgaG93ZXZlclxuICAvLyBpdCBpcyB1bmxpa2VseSB0aGF0IHRoZSBkZWZhdWx0IG9yIGdvdnVrLWZpZWxkc2V0X19sZWdlbmQtLXMgY2xhc3Mgd291bGQgYmVcbiAgLy8gdXNlZCBpbiB0aGlzIGNhc2UuXG5cbiAgLy8gVGhpcyBhZGp1c3RtZW50IHdpbGwgbm90IHdvcmsgaW4gYnJvd3NlcnMgdGhhdCBkbyBub3Qgc3VwcG9ydCA6bm90KCkuXG4gIC8vIFVzZXJzIHdpdGggdGhlc2UgYnJvd3NlcnMgd2lsbCBzZWUgdGhlIGRlZmF1bHQgc2l6ZSBtYXJnaW4gKDVweCBsYXJnZXIpLlxuXG4gIC8vIHByZXR0aWVyLWlnbm9yZVxuICAuZ292dWstZmllbGRzZXRfX2xlZ2VuZDpub3QoLmdvdnVrLWZpZWxkc2V0X19sZWdlbmQtLW0pOm5vdCguZ292dWstZmllbGRzZXRfX2xlZ2VuZC0tbCk6bm90KC5nb3Z1ay1maWVsZHNldF9fbGVnZW5kLS14bCkgKyAuZ292dWstaGludCB7XG4gICAgbWFyZ2luLWJvdHRvbTogYmFzZS5nb3Z1ay1zcGFjaW5nKDIpO1xuICB9XG5cbiAgLy8gUmVkdWNlcyB2aXN1YWwgc3BhY2luZyBvZiBsZWdlbmQgd2hlbiB0aGVyZSBpcyBhIGhpbnRcbiAgLmdvdnVrLWZpZWxkc2V0X19sZWdlbmQgKyAuZ292dWstaGludCB7XG4gICAgbWFyZ2luLXRvcDogYmFzZS5nb3Z1ay1zcGFjaW5nKC0xKTtcbiAgfVxufVxuXG4iLCJAdXNlIFwiLi4vLi4vYmFzZVwiO1xuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gc3R5bGVzIHtcbiAgLmdvdnVrLWxhYmVsIHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWZvbnQoJHNpemU6IDE5KTtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgbWFyZ2luLWJvdHRvbTogYmFzZS5nb3Z1ay1zcGFjaW5nKDEpO1xuICAgIGNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHRleHQpO1xuICB9XG5cbiAgLy8gTW9kaWZpZXJzIHRoYXQgbWFrZSBsYWJlbHMgbG9vayBtb3JlIGxpa2UgdGhlaXIgZXF1aXZhbGVudCBoZWFkaW5nc1xuICAuZ292dWstbGFiZWwtLXhsLFxuICAuZ292dWstbGFiZWwtLWwsXG4gIC5nb3Z1ay1sYWJlbC0tbSB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1ib2xkO1xuICAgIG1hcmdpbi1ib3R0b206IGJhc2UuZ292dWstc3BhY2luZygzKTtcbiAgfVxuXG4gIC5nb3Z1ay1sYWJlbC0teGwge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udC1zaXplKCRzaXplOiA0OCk7XG4gIH1cblxuICAuZ292dWstbGFiZWwtLWwge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udC1zaXplKCRzaXplOiAzNik7XG4gIH1cblxuICAuZ292dWstbGFiZWwtLW0ge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udC1zaXplKCRzaXplOiAyNCk7XG4gIH1cblxuICAuZ292dWstbGFiZWwtLXMge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstdHlwb2dyYXBoeS13ZWlnaHQtYm9sZDtcbiAgfVxuXG4gIC8vIFdoZW4gdGhlIGxhYmVsIGlzIG5lc3RlZCBpbnNpZGUgYSBoZWFkaW5nLCBvdmVycmlkZSB0aGUgaGVhZGluZyBzbyB0aGF0IGl0XG4gIC8vIGRvZXMgbm90IGhhdmUgYSBtYXJnaW4uIEVmZmVjdGl2ZWx5IHdlIHdhbnQgdG8gYmUgYWJsZSB0byB0cmVhdCB0aGUgaGVhZGluZ1xuICAvLyBhcyBpZiBpdCBpcyBub3QgdGhlcmUuXG4gIC8vXG4gIC8vIFRoaXMgYnJlYWtzIEJFTSBjb252ZW50aW9ucyBiZWNhdXNlIGl0IGV4aXN0cyBhcyBhIHBhcmVudCBvZiB0aGUgJ2Jsb2NrJyxcbiAgLy8gc28gd2UgY2FuJ3QgcmVhbGx5IGNvbnNpZGVyIGFuIGVsZW1lbnQuXG4gIC5nb3Z1ay1sYWJlbC13cmFwcGVyIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cblxuIiwiQHVzZSBcIi4uLy4uL2Jhc2VcIjtcblxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIHN0eWxlcyB7XG4gIC5nb3Z1ay10ZXh0YXJlYSB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1mb250KCRzaXplOiAxOSwgJGxpbmUtaGVpZ2h0OiAxLjI1KTtcblxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogNDBweDtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDYsIFwiYm90dG9tXCIpO1xuICAgIHBhZGRpbmc6IGJhc2UuZ292dWstc3BhY2luZygxKTtcblxuICAgIHJlc2l6ZTogdmVydGljYWw7XG5cbiAgICBib3JkZXI6IGJhc2UuJGdvdnVrLWJvcmRlci13aWR0aC1mb3JtLWVsZW1lbnQgc29saWQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3JkZXItY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoaW5wdXQtYm9yZGVyKTtcblxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1mb2N1c2VkLWZvcm0taW5wdXQ7XG4gICAgfVxuXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG4gIH1cblxuICAuZ292dWstdGV4dGFyZWEtLWVycm9yIHtcbiAgICBib3JkZXItY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoZXJyb3IpO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoaW5wdXQtYm9yZGVyKTtcbiAgICB9XG4gIH1cbn1cblxuIiwiQHVzZSBcIi4uLy4uL2Jhc2VcIjtcblxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIHN0eWxlcyB7XG4gIC5nb3Z1ay1jaGFyYWN0ZXItY291bnQge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNiwgXCJib3R0b21cIik7XG5cbiAgICAuZ292dWstZm9ybS1ncm91cCxcbiAgICAuZ292dWstdGV4dGFyZWEge1xuICAgICAgbWFyZ2luLWJvdHRvbTogYmFzZS5nb3Z1ay1zcGFjaW5nKDEpO1xuICAgIH1cblxuICAgIC8vIElmIHRoZSB0ZXh0YXJlYSBlbnRlcnMgdGhlIGVycm9yIHN0YXRlIHdoaWxzdCB0aGUgdXNlciBpcyBmb2N1c2VkIG9uIGl0LFxuICAgIC8vIHNob3cgdGhlIGVycm9yIHN0YXRlLiBUaGlzIHByZXNlbnRzIGZlZWRiYWNrIHRvIHRoZSB1c2VyIHRoYXQgdGhlIHZhbHVlXG4gICAgLy8gaGFzIGJlY29tZSBpbnZhbGlkIHdpdGhvdXQgbmVlZGluZyB0byBzZWUgdGhlIGNvdW50ZXIuXG4gICAgLmdvdnVrLXRleHRhcmVhLS1lcnJvcjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoZXJyb3IpO1xuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgYmFzZS4kZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudCBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGVycm9yKTtcbiAgICB9XG4gIH1cblxuICAuZ292dWstY2hhcmFjdGVyLWNvdW50X19tZXNzYWdlIHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWZvbnQtdGFidWxhci1udW1iZXJzO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIC8vIFplcm8td2lkdGggc3BhY2UgdGhhdCB3aWxsIHJlc2VydmUgdmVydGljYWwgc3BhY2Ugd2hlbiBubyBoaW50IGlzXG4gICAgICAvLyBwcm92aWRlZCBhczpcbiAgICAgIC8vIC0gc2V0dGluZyBhIG1pbi1oZWlnaHQgaXMgbm90IHBvc3NpYmxlIHdpdGhvdXQgYSBtYWdpYyBudW1iZXIgYmVjYXVzZVxuICAgICAgLy8gICB0aGUgbGluZS1oZWlnaHQgaXMgc2V0IGJ5IHRoZSBgZ292dWstZm9udGAgY2FsbCBhYm92ZVxuICAgICAgLy8gLSB1c2luZyBgOmVtcHR5YCBpcyBub3QgcG9zc2libGUgYXMgdGhlIGhpbnQgbWFjcm8gb3V0cHV0cyBsaW5lIGJyZWFrc1xuICAgICAgY29udGVudDogXCJcXDIwMEJcIjtcbiAgICB9XG4gIH1cblxuICAuZ292dWstY2hhcmFjdGVyLWNvdW50X19tZXNzYWdlLS1kaXNhYmxlZCB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG59XG5cbiIsIkB1c2UgXCIuLi8uLi9iYXNlXCI7XG5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBzdHlsZXMge1xuICAuZ292dWstZmllbGRzZXQge1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1jbGVhcmZpeDtcbiAgfVxuXG4gIC8vIEZpeCBmb3IgRmlyZWZveCA8IDUzIChodHRwczovL2J1Z3ppbC5sYS81MDQ2MjIpXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLXR5cGUtbm8tdW5rbm93biAtLSBJZ25vcmUgJ3g6LW1vei1hbnktbGluaydcbiAgQHN1cHBvcnRzIG5vdCAoY2FyZXQtY29sb3I6IGF1dG8pIHtcbiAgICAuZ292dWstZmllbGRzZXQsXG4gICAgeDotbW96LWFueS1saW5rIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgfVxuICB9XG4gIC8vIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3ItdHlwZS1uby11bmtub3duXG5cbiAgLmdvdnVrLWZpZWxkc2V0X19sZWdlbmQge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udCgkc2l6ZTogMTkpO1xuXG4gICAgLy8gRml4IGxlZ2VuZCB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFXG4gICAgLy8gMS4gSUU5LTExICYgRWRnZSAxMi0xM1xuICAgIC8vIDIuIElFOC0xMVxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgICBkaXNwbGF5OiB0YWJsZTsgLy8gMlxuICAgIG1heC13aWR0aDogMTAwJTsgLy8gMVxuICAgIG1hcmdpbi1ib3R0b206IGJhc2UuZ292dWstc3BhY2luZygyKTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHRleHQpO1xuXG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLy8gMVxuICB9XG5cbiAgLy8gTW9kaWZpZXJzIHRoYXQgbWFrZSBsZWdlbmRzIGxvb2sgbW9yZSBsaWtlIHRoZWlyIGVxdWl2YWxlbnQgaGVhZGluZ3NcbiAgLmdvdnVrLWZpZWxkc2V0X19sZWdlbmQtLXhsLFxuICAuZ292dWstZmllbGRzZXRfX2xlZ2VuZC0tbCxcbiAgLmdvdnVrLWZpZWxkc2V0X19sZWdlbmQtLW0ge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstdHlwb2dyYXBoeS13ZWlnaHQtYm9sZDtcbiAgICBtYXJnaW4tYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoMyk7XG4gIH1cblxuICAuZ292dWstZmllbGRzZXRfX2xlZ2VuZC0teGwge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udC1zaXplKCRzaXplOiA0OCk7XG4gIH1cblxuICAuZ292dWstZmllbGRzZXRfX2xlZ2VuZC0tbCB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1mb250LXNpemUoJHNpemU6IDM2KTtcbiAgfVxuXG4gIC5nb3Z1ay1maWVsZHNldF9fbGVnZW5kLS1tIHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWZvbnQtc2l6ZSgkc2l6ZTogMjQpO1xuICB9XG5cbiAgLmdvdnVrLWZpZWxkc2V0X19sZWdlbmQtLXMge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstdHlwb2dyYXBoeS13ZWlnaHQtYm9sZDtcbiAgfVxuXG4gIC8vIFdoZW4gdGhlIGxlZ2VuZCBjb250YWlucyBhbiBIMSwgd2Ugd2FudCB0aGUgSDEgdG8gaW5oZXJpdCBhbGwgc3R5bGVzIGZyb21cbiAgLy8gdGhlIGxlZ2VuZC4gRWZmZWN0aXZlbHkgdHJlYXQgdGhlIGhlYWRpbmcgYXMgaWYgaXQgaXMgbm90IHRoZXJlLlxuICAuZ292dWstZmllbGRzZXRfX2hlYWRpbmcge1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIH1cbn1cblxuIiwiQHVzZSBcIi4uLy4uL2Jhc2VcIjtcblxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIHN0eWxlcyB7XG4gICRnb3Z1ay10b3VjaC10YXJnZXQtZ3V0dGVyOiA0cHg7XG4gICRnb3Z1ay1jaGVja2JveGVzLXNpemU6IDQwcHg7XG4gICRnb3Z1ay10b3VjaC10YXJnZXQtc2l6ZTogKCRnb3Z1ay1jaGVja2JveGVzLXNpemUgKyAkZ292dWstdG91Y2gtdGFyZ2V0LWd1dHRlcik7XG4gICRnb3Z1ay1zbWFsbC1jaGVja2JveGVzLXNpemU6IDI0cHg7XG4gICRnb3Z1ay1jaGVja2JveGVzLWxhYmVsLXBhZGRpbmctbGVmdC1yaWdodDogYmFzZS5nb3Z1ay1zcGFjaW5nKDMpO1xuICAkZ292dWstY2hlY2tib3gtY2hlY2staG9yaXpvbnRhbC1wb3NpdGlvbjogMTBweDtcblxuICAuZ292dWstY2hlY2tib3hlc19faXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbi1ib3R0b206IGJhc2UuZ292dWstc3BhY2luZygyKTtcbiAgfVxuXG4gIC5nb3Z1ay1jaGVja2JveGVzX19pdGVtOmxhc3QtY2hpbGQsXG4gIC5nb3Z1ay1jaGVja2JveGVzX19pdGVtOmxhc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC5nb3Z1ay1jaGVja2JveGVzX19pbnB1dCB7XG4gICAgLy8gQWxsb3cgdGhlIGlucHV0IHRvIHNpdCBhYm92ZSB0aGUgbGFiZWwsIGVuYWJsaW5nIGl0cyBwcm9wZXIgZGV0ZWN0aW9uXG4gICAgLy8gd2hlbiBleHBsb3JpbmcgYnkgdG91Y2ggb3IgdXNpbmcgYXV0b21hdGlvbiB0b29scyBsaWtlIFNlbGVuaXVtXG4gICAgei1pbmRleDogMTtcbiAgICB3aWR0aDogJGdvdnVrLXRvdWNoLXRhcmdldC1zaXplO1xuICAgIGhlaWdodDogJGdvdnVrLXRvdWNoLXRhcmdldC1zaXplO1xuICAgIG1hcmdpbjogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gIC5nb3Z1ay1jaGVja2JveGVzX19sYWJlbCB7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuXG4gICAgLy8gRW5zdXJlIHRoYXQgdGhlIHdpZHRoIG9mIHRoZSBsYWJlbCBpcyBuZXZlciBtb3JlIHRoYW4gdGhlIHdpZHRoIG9mIHRoZVxuICAgIC8vIGNvbnRhaW5lciBtaW51cyB0aGUgaW5wdXQgd2lkdGggbWludXMgdGhlIHBhZGRpbmcgb24gZWl0aGVyIHNpZGUgb2ZcbiAgICAvLyB0aGUgbGFiZWwuIFRoaXMgcHJldmVudHMgdGhlIGxhYmVsIGZyb20gZ29pbmcgb250byB0aGUgbmV4dCBsaW5lIGR1ZSB0b1xuICAgIC8vIF9faXRlbSB1c2luZyBmbGV4LXdyYXAgYmVjYXVzZSB3ZSB3YW50IGhpbnRzIG9uIGEgc2VwYXJhdGUgbGluZS5cbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICN7KCgkZ292dWstY2hlY2tib3hlcy1sYWJlbC1wYWRkaW5nLWxlZnQtcmlnaHQgKiAyKSArICRnb3Z1ay10b3VjaC10YXJnZXQtc2l6ZSl9KTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IChiYXNlLmdvdnVrLXNwYWNpbmcoMSkgKyBiYXNlLiRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50KSAkZ292dWstY2hlY2tib3hlcy1sYWJlbC1wYWRkaW5nLWxlZnQtcmlnaHQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIC8vIHJlbW92ZSAzMDBtcyBwYXVzZSBvbiBtb2JpbGVcbiAgICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgfVxuXG4gIC8vIFsgXSBDaGVjayBib3hcbiAgLmdvdnVrLWNoZWNrYm94ZXNfX2xhYmVsOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAoJGdvdnVrLXRvdWNoLXRhcmdldC1ndXR0ZXIgKiAwLjUpO1xuICAgIGxlZnQ6ICgkZ292dWstdG91Y2gtdGFyZ2V0LWd1dHRlciAqIDAuNSk7XG4gICAgd2lkdGg6ICRnb3Z1ay1jaGVja2JveGVzLXNpemU7XG4gICAgaGVpZ2h0OiAkZ292dWstY2hlY2tib3hlcy1zaXplO1xuICAgIGJvcmRlcjogYmFzZS4kZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudCBzb2xpZCBjdXJyZW50Y29sb3I7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAvLyDinJQgQ2hlY2sgbWFya1xuICAvL1xuICAvLyBUaGUgY2hlY2sgbWFyayBpcyBhIGJveCB3aXRoIGEgYm9yZGVyIG9uIHRoZSBsZWZ0IGFuZCBib3R0b20gc2lkZSAo4pSU4pSA4pSAKSxcbiAgLy8gcm90YXRlZCA0NSBkZWdyZWVzXG4gIC5nb3Z1ay1jaGVja2JveGVzX19sYWJlbDo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICAvLyBVc2UgXCJtYWdpYyBudW1iZXJzXCIgdG8gZGVmaW5lIHNoYXBlIGFuZCBwb3NpdGlvbiBvZiBjaGVjayBtYXJrIGJlY2F1c2VcbiAgICAvLyB0aGUgY29tcGxleGl0eSBvZiB0aGUgc2hhcGUgbWFrZXMgaXQgZGlmZmljdWx0IHRvIGNhbGN1bGF0ZSBkeW5hbWljYWxseS5cbiAgICB0b3A6IDEzcHg7XG4gICAgbGVmdDogJGdvdnVrLWNoZWNrYm94LWNoZWNrLWhvcml6b250YWwtcG9zaXRpb247XG4gICAgd2lkdGg6IDIzcHg7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgYm9yZGVyOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDAgMCA1cHggNXB4O1xuICAgIC8vIEZpeCBidWcgaW4gSUUxMSBjYXVzZWQgYnkgdHJhbnNmb3JtIHJvdGF0ZSAoLTQ1ZGVnKS5cbiAgICAvLyBTZWU6IGFscGhhZ292L2dvdnVrX2VsZW1lbnRzL2lzc3Vlcy81MThcbiAgICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLmdvdnVrLWNoZWNrYm94ZXNfX2hpbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IGJhc2UuZ292dWstc3BhY2luZygtMSk7XG4gICAgcGFkZGluZy1yaWdodDogJGdvdnVrLWNoZWNrYm94ZXMtbGFiZWwtcGFkZGluZy1sZWZ0LXJpZ2h0O1xuICAgIHBhZGRpbmctbGVmdDogKCRnb3Z1ay1jaGVja2JveGVzLWxhYmVsLXBhZGRpbmctbGVmdC1yaWdodCArICRnb3Z1ay10b3VjaC10YXJnZXQtc2l6ZSk7XG4gIH1cblxuICAvLyBUaGlzIGlzIHRvIGJ5cGFzcyBnb3Z1ay1oaW50J3Mgc3BlY2lmaWNpdHkgb24gaGludHMgZm9sbG93aW5nIGxhYmVscyBoYXZpbmdcbiAgLy8gYSBtYXJnaW4gYm90dG9tIG9mIDEwcHggKGJhc2UuZ292dWstc3BhY2luZygyKSkuIEJlY2F1c2UgY2hlY2tib3hlcyBhcmUgZmxleGJveCxcbiAgLy8gdGhlIG1hcmdpbiBkb2Vzbid0IGNvbGxhcHNlIHNvIHdlIGhhdmUgdG8gZG8gdGhpcyBtYW51YWxseS5cbiAgLmdvdnVrLWxhYmVsOm5vdCguZ292dWstbGFiZWwtLW0pOm5vdCguZ292dWstbGFiZWwtLWwpOm5vdCguZ292dWstbGFiZWwtLXhsKSArIC5nb3Z1ay1jaGVja2JveGVzX19oaW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLy8gRm9jdXNlZCBzdGF0ZVxuICAuZ292dWstY2hlY2tib3hlc19faW5wdXQ6Zm9jdXMgKyAuZ292dWstY2hlY2tib3hlc19fbGFiZWw6OmJlZm9yZSB7XG4gICAgYm9yZGVyLXdpZHRoOiA0cHg7XG5cbiAgICAvLyBXaGVuIGNvbG91cnMgYXJlIG92ZXJyaWRkZW4sIHRoZSB5ZWxsb3cgYm94LXNoYWRvdyBiZWNvbWVzIGludmlzaWJsZVxuICAgIC8vIHdoaWNoIG1lYW5zIHRoZSBmb2N1cyBzdGF0ZSBpcyBsZXNzIG9idmlvdXMuIEJ5IGFkZGluZyBhIHRyYW5zcGFyZW50XG4gICAgLy8gb3V0bGluZSwgd2hpY2ggYmVjb21lcyBzb2xpZCAodGV4dC1jb2xvdXJlZCkgaW4gdGhhdCBjb250ZXh0LCB3ZSBlbnN1cmVcbiAgICAvLyB0aGUgZm9jdXMgcmVtYWlucyBjbGVhcmx5IHZpc2libGUuXG4gICAgb3V0bGluZTogYmFzZS4kZ292dWstZm9jdXMtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgb3V0bGluZS1vZmZzZXQ6IDFweDtcblxuICAgIC8vIFdoZW4gaW4gYW4gZXhwbGljaXQgZm9yY2VkLWNvbG9yIG1vZGUsIHdlIGNhbiB1c2UgdGhlIEhpZ2hsaWdodCBzeXN0ZW1cbiAgICAvLyBjb2xvciBmb3IgdGhlIG91dGxpbmUgdG8gYmV0dGVyIG1hdGNoIGZvY3VzIHN0YXRlcyBvZiBuYXRpdmUgY29udHJvbHNcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgICAgIG91dGxpbmUtY29sb3I6IEhpZ2hsaWdodDtcbiAgICB9XG5cbiAgICBib3gtc2hhZG93OiAwIDAgMCBiYXNlLiRnb3Z1ay1mb2N1cy13aWR0aCBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGZvY3VzKTtcbiAgfVxuXG4gIC8vIFNlbGVjdGVkIHN0YXRlXG4gIC5nb3Z1ay1jaGVja2JveGVzX19pbnB1dDpjaGVja2VkICsgLmdvdnVrLWNoZWNrYm94ZXNfX2xhYmVsOjphZnRlciB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlXG4gIC5nb3Z1ay1jaGVja2JveGVzX19pbnB1dDpkaXNhYmxlZCxcbiAgLmdvdnVrLWNoZWNrYm94ZXNfX2lucHV0OmRpc2FibGVkICsgLmdvdnVrLWNoZWNrYm94ZXNfX2xhYmVsIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG5cbiAgLmdvdnVrLWNoZWNrYm94ZXNfX2lucHV0OmRpc2FibGVkICsgLmdvdnVrLWNoZWNrYm94ZXNfX2xhYmVsLFxuICAuZ292dWstY2hlY2tib3hlc19faW5wdXQ6ZGlzYWJsZWQgfiAuZ292dWstaGludCB7XG4gICAgb3BhY2l0eTogMC41O1xuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIERpdmlkZXJzICgnb3InKVxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAuZ292dWstY2hlY2tib3hlc19fZGl2aWRlciB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1mb250KCRzaXplOiAxOSk7XG5cbiAgICAkZ292dWstZGl2aWRlci1zaXplOiAkZ292dWstY2hlY2tib3hlcy1zaXplICFkZWZhdWx0O1xuICAgIHdpZHRoOiAkZ292dWstZGl2aWRlci1zaXplO1xuXG4gICAgbWFyZ2luLWJvdHRvbTogYmFzZS5nb3Z1ay1zcGFjaW5nKDIpO1xuICAgIGNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHRleHQpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBDb25kaXRpb25hbCByZXZlYWxzXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFRoZSBuYXJyb3cgYm9yZGVyIGlzIHVzZWQgaW4gdGhlIGNvbmRpdGlvbmFsIHJldmVhbHMgYmVjYXVzZSB0aGUgYm9yZGVyIGhhc1xuICAvLyB0byBiZSBhbiBldmVuIG51bWJlciBpbiBvcmRlciB0byBiZSBjZW50cmVkIHVuZGVyIHRoZSA0MHB4IGNoZWNrYm94IG9yIHJhZGlvLlxuICAkY29uZGl0aW9uYWwtYm9yZGVyLXdpZHRoOiBiYXNlLiRnb3Z1ay1ib3JkZXItd2lkdGgtbmFycm93O1xuICAvLyBDYWxjdWxhdGUgdGhlIGFtb3VudCBvZiBwYWRkaW5nIG5lZWRlZCB0byBrZWVwIHRoZSBib3JkZXIgY2VudGVyZWQgYWdhaW5zdCB0aGUgY2hlY2tib3guXG4gICRjb25kaXRpb25hbC1ib3JkZXItcGFkZGluZzogKCRnb3Z1ay10b3VjaC10YXJnZXQtc2l6ZSAqIDAuNSkgLSAoJGNvbmRpdGlvbmFsLWJvcmRlci13aWR0aCAqIDAuNSk7XG4gIC8vIE1vdmUgdGhlIGJvcmRlciBjZW50ZXJlZCB3aXRoIHRoZSBjaGVja2JveFxuICAkY29uZGl0aW9uYWwtbWFyZ2luLWxlZnQ6ICRjb25kaXRpb25hbC1ib3JkZXItcGFkZGluZztcbiAgLy8gTW92ZSB0aGUgY29udGVudHMgb2YgdGhlIGNvbmRpdGlvbmFsIGlubGluZSB3aXRoIHRoZSBsYWJlbFxuICAkY29uZGl0aW9uYWwtcGFkZGluZy1sZWZ0OiAkY29uZGl0aW9uYWwtYm9yZGVyLXBhZGRpbmcgKyAkZ292dWstY2hlY2tib3hlcy1sYWJlbC1wYWRkaW5nLWxlZnQtcmlnaHQ7XG5cbiAgLmdvdnVrLWNoZWNrYm94ZXNfX2NvbmRpdGlvbmFsIHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDQsIFwiYm90dG9tXCIpO1xuICAgIG1hcmdpbi1sZWZ0OiAkY29uZGl0aW9uYWwtbWFyZ2luLWxlZnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAkY29uZGl0aW9uYWwtcGFkZGluZy1sZWZ0O1xuICAgIGJvcmRlci1sZWZ0OiAkY29uZGl0aW9uYWwtYm9yZGVyLXdpZHRoIHNvbGlkO1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGJvcmRlcik7XG5cbiAgICAuZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkICYtLWhpZGRlbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBTbWFsbCBjaGVja2JveGVzXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC5nb3Z1ay1jaGVja2JveGVzLS1zbWFsbCB7XG4gICAgJGlucHV0LW9mZnNldDogKCRnb3Z1ay10b3VjaC10YXJnZXQtc2l6ZSAtICRnb3Z1ay1zbWFsbC1jaGVja2JveGVzLXNpemUpICogMC41O1xuXG4gICAgLmdvdnVrLWNoZWNrYm94ZXNfX2l0ZW0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBTaGlmdCB0aGUgdG91Y2ggdGFyZ2V0IGludG8gdGhlIGxlZnQgbWFyZ2luIHNvIHRoYXQgdGhlIHZpc2libGUgZWRnZSBvZlxuICAgIC8vIHRoZSBjb250cm9sIGlzIGFsaWduZWRcbiAgICAvL1xuICAgIC8vICAg4pSGV2hhdCBjb2xvdXJzIGRvIHlvdSBsaWtlP1xuICAgIC8vICDilIzilIbilIDilIDilIDilJBcbiAgICAvLyAg4pSC4pSGW10g4pSCIFB1cnBsZVxuICAgIC8vICDilJTilIbilrLilIDilIDilJhcbiAgICAvLyAg4pay4pSG4pSU4pSAIENoZWNrIGJveCBwc2V1ZG8gZWxlbWVudCwgYWxpZ25lZCB3aXRoIG1hcmdpblxuICAgIC8vICDilJTilIDilIDilIAgVG91Y2ggdGFyZ2V0IChpbnZpc2libGUgaW5wdXQpLCBzaGlmdGVkIGludG8gdGhlIG1hcmdpblxuICAgIC5nb3Z1ay1jaGVja2JveGVzX19pbnB1dCB7XG4gICAgICBtYXJnaW4tbGVmdDogJGlucHV0LW9mZnNldCAqIC0xO1xuICAgIH1cblxuICAgIC5nb3Z1ay1jaGVja2JveGVzX19sYWJlbCB7XG4gICAgICAvLyBSZWNhbGN1bGF0ZSBtYXgtd2lkdGggdG8gYWNjb3VudCBmb3IgdGhlIHNtYWxsZXIgY2hlY2tib3ggc2l6ZVxuICAgICAgLy8gMXB4IGNvbWVzIGZyb20gcGFkZGluZy1sZWZ0IChkZWZpbmVkIGJlbG93KVxuICAgICAgbWF4LXdpZHRoOiBjYWxjKFxuICAgICAgICAxMDAlIC0gI3soJGdvdnVrLXRvdWNoLXRhcmdldC1zaXplIC0gJGlucHV0LW9mZnNldCkgKyAkZ292dWstY2hlY2tib3hlcy1sYWJlbC1wYWRkaW5nLWxlZnQtcmlnaHQgKyAxcHh9XG4gICAgICApO1xuXG4gICAgICAvLyBDcmVhdGUgYSB0aW55IHNwYWNlIGJldHdlZW4gdGhlIHNtYWxsIGNoZWNrYm94IGhvdmVyIHN0YXRlIHNvIHRoYXQgaXRcbiAgICAgIC8vIGRvZXNuJ3QgY2xhc2ggd2l0aCB0aGUgbGFiZWxcbiAgICAgIHBhZGRpbmctbGVmdDogMXB4O1xuICAgIH1cblxuICAgIC8vIFsgXSBDaGVjayBib3hcbiAgICAvL1xuICAgIC8vIFJlZHVjZSB0aGUgc2l6ZSBvZiB0aGUgY2hlY2sgYm94IFsxXSwgdmVydGljYWxseSBjZW50ZXIgaXQgd2l0aGluIHRoZVxuICAgIC8vIHRvdWNoIHRhcmdldCBbMl1cbiAgICAvLyBMZWZ0IGhlcmUgaXMgMCBiZWNhdXNlIHdlJ3ZlIHNoaWZ0ZWQgdGhlIGlucHV0IGludG8gdGhlIGxlZnQgbWFyZ2luXG4gICAgLmdvdnVrLWNoZWNrYm94ZXNfX2xhYmVsOjpiZWZvcmUge1xuICAgICAgdG9wOiAkaW5wdXQtb2Zmc2V0OyAvLyAyXG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6ICRnb3Z1ay1zbWFsbC1jaGVja2JveGVzLXNpemU7IC8vIDFcbiAgICAgIGhlaWdodDogJGdvdnVrLXNtYWxsLWNoZWNrYm94ZXMtc2l6ZTsgLy8gMVxuICAgIH1cblxuICAgIC8vIOKclCBDaGVjayBtYXJrXG4gICAgLy9cbiAgICAvLyBSZWR1Y2UgdGhlIHNpemUgb2YgdGhlIGNoZWNrIG1hcmsgYW5kIHJlLWFsaWduIHdpdGhpbiB0aGUgY2hlY2tib3hcbiAgICAuZ292dWstY2hlY2tib3hlc19fbGFiZWw6OmFmdGVyIHtcbiAgICAgIHRvcDogMTdweDtcblxuICAgICAgLy8gSG9yaXpvbnRhbCBwb3NpdGlvbiBpcyBqdXN0IHRoZSBub3JtYWwgc2l6ZWQgbGVmdCB2YWx1ZSBhY2NvdW50aW5nIGZvclxuICAgICAgLy8gdGhlIG5ldyB3aWR0aCBvZiB0aGUgc21hbGxlciBjaGVja2JveFxuICAgICAgbGVmdDogKDE2cHggLSAkZ292dWstY2hlY2tib3gtY2hlY2staG9yaXpvbnRhbC1wb3NpdGlvbik7XG4gICAgICB3aWR0aDogMTJweDtcbiAgICAgIGhlaWdodDogNi41cHg7XG4gICAgICBib3JkZXItd2lkdGg6IDAgMCAzcHggM3B4O1xuICAgIH1cblxuICAgIC8vIEZpeCBwb3NpdGlvbiBvZiBoaW50IHdpdGggc21hbGwgY2hlY2tib3hlc1xuICAgIC8vXG4gICAgLy8gRG8gbm90IHVzZSBoaW50cyB3aXRoIHNtYWxsIGNoZWNrYm94ZXMg4oCTIGJlY2F1c2UgdGhleSdyZSB3aXRoaW4gdGhlIGlucHV0XG4gICAgLy8gd3JhcHBlciB0aGV5IHRyaWdnZXIgdGhlIGhvdmVyIHN0YXRlLCBidXQgY2xpY2tpbmcgdGhlbSBkb2Vzbid0IGFjdHVhbGx5XG4gICAgLy8gYWN0aXZhdGUgdGhlIGNvbnRyb2wuXG4gICAgLy9cbiAgICAvLyAoSWYgeW91IGRvIHVzZSB0aGVtLCB0aGV5IHdvbid0IGxvb2sgY29tcGxldGVseSBicm9rZW4uLi4gYnV0IHNlcmlvdXNseSxcbiAgICAvLyBkb24ndCB1c2UgdGhlbSlcbiAgICAuZ292dWstY2hlY2tib3hlc19faGludCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICgkZ292dWstc21hbGwtY2hlY2tib3hlcy1zaXplICsgJGlucHV0LW9mZnNldCk7XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gY29uZGl0aW9uYWwgcmV2ZWFscyB3aXRoIHNtYWxsIGNoZWNrYm94ZXNcbiAgICAuZ292dWstY2hlY2tib3hlc19fY29uZGl0aW9uYWwge1xuICAgICAgJG1hcmdpbi1sZWZ0OiAoJGdvdnVrLXNtYWxsLWNoZWNrYm94ZXMtc2l6ZSAqIDAuNSkgLSAoJGNvbmRpdGlvbmFsLWJvcmRlci13aWR0aCAqIDAuNSk7XG4gICAgICBtYXJnaW4tbGVmdDogJG1hcmdpbi1sZWZ0O1xuICAgICAgcGFkZGluZy1sZWZ0OiAoJGdvdnVrLXRvdWNoLXRhcmdldC1zaXplIC0gJGlucHV0LW9mZnNldCkgLSAoJG1hcmdpbi1sZWZ0ICsgJGNvbmRpdGlvbmFsLWJvcmRlci13aWR0aCk7XG4gICAgfVxuXG4gICAgLmdvdnVrLWNoZWNrYm94ZXNfX2RpdmlkZXIge1xuICAgICAgd2lkdGg6ICRnb3Z1ay1zbWFsbC1jaGVja2JveGVzLXNpemU7XG4gICAgICBtYXJnaW4tYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoMSk7XG4gICAgfVxuXG4gICAgLy8gSG92ZXIgc3RhdGUgZm9yIHNtYWxsIGNoZWNrYm94ZXMuXG4gICAgLy9cbiAgICAvLyBXZSB1c2UgYSBob3ZlciBzdGF0ZSBmb3Igc21hbGwgY2hlY2tib3hlcyBiZWNhdXNlIHRoZSB0b3VjaCB0YXJnZXQgc2l6ZVxuICAgIC8vIGlzIHNvIG11Y2ggbGFyZ2VyIHRoYW4gdGhlaXIgdmlzaWJsZSBzaXplLCBhbmQgc28gd2UgbmVlZCB0byBwcm92aWRlXG4gICAgLy8gZmVlZGJhY2sgdG8gdGhlIHVzZXIgYXMgdG8gd2hpY2ggY2hlY2tib3ggdGhleSB3aWxsIHNlbGVjdCB3aGVuIHRoZWlyXG4gICAgLy8gY3Vyc29yIGlzIG91dHNpZGUgb2YgdGhlIHZpc2libGUgYXJlYS5cbiAgICAuZ292dWstY2hlY2tib3hlc19faW5wdXQ6bm90KDpkaXNhYmxlZCk6aG92ZXIgKyAuZ292dWstY2hlY2tib3hlc19fbGFiZWw6OmJlZm9yZSB7XG4gICAgICAvLyBGb3JjZWQgY29sb3VycyBtb2RlcyB0ZW5kIHRvIGlnbm9yZSBib3gtc2hhZG93LlxuICAgICAgLy8gQXBwbHkgYW4gb3V0bGluZSBmb3IgdGhvc2UgbW9kZXMgdG8gdXNlIGluc3RlYWQuXG4gICAgICBvdXRsaW5lOiBiYXNlLiRnb3Z1ay1mb2N1cy13aWR0aCBkYXNoZWQgdHJhbnNwYXJlbnQ7XG4gICAgICBvdXRsaW5lLW9mZnNldDogMXB4O1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgYmFzZS4kZ292dWstaG92ZXItd2lkdGggYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihob3Zlcik7XG4gICAgfVxuXG4gICAgLy8gQmVjYXVzZSB3ZSd2ZSBvdmVycmlkZGVuIHRoZSBib3JkZXItc2hhZG93IHByb3ZpZGVkIGJ5IHRoZSBmb2N1cyBzdGF0ZSxcbiAgICAvLyB3ZSBuZWVkIHRvIHJlZGVmaW5lIHRoYXQgdG9vLlxuICAgIC8vXG4gICAgLy8gV2UgdXNlIHR3byBib3ggc2hhZG93cywgb25lIHRoYXQgcmVzdG9yZXMgdGhlIG9yaWdpbmFsIGZvY3VzIHN0YXRlIFsxXVxuICAgIC8vIGFuZCBhbm90aGVyIHRoYXQgdGhlbiBhcHBsaWVzIHRoZSBob3ZlciBzdGF0ZSBbMl0uXG4gICAgLmdvdnVrLWNoZWNrYm94ZXNfX2lucHV0OmZvY3VzOmhvdmVyICsgLmdvdnVrLWNoZWNrYm94ZXNfX2xhYmVsOjpiZWZvcmUge1xuICAgICAgLy8gU2V0IGRpZmZlcmVudCBIQ00gY29sb3VyIHdoZW4gd2UgaGF2ZSBib3RoIGhvdmVyL2ZvY3VzIGFwcGxpZWQgYXQgb25jZVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgICAgIG91dGxpbmUtY29sb3I6IEhpZ2hsaWdodDtcbiAgICAgIH1cbiAgICAgIC8vIHByZXR0aWVyLWlnbm9yZVxuICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgMCAwIDAgYmFzZS4kZ292dWstZm9jdXMtd2lkdGggYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihmb2N1cyksIC8vIDFcbiAgICAgICAgMCAwIDAgYmFzZS4kZ292dWstaG92ZXItd2lkdGggYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihob3Zlcik7IC8vIDJcbiAgICB9XG5cbiAgICAvLyBGb3IgZGV2aWNlcyB0aGF0IGV4cGxpY2l0bHkgZG9uJ3Qgc3VwcG9ydCBob3ZlciwgZG9uJ3QgcHJvdmlkZSBhIGhvdmVyXG4gICAgLy8gc3RhdGUgKGUuZy4gb24gdG91Y2ggZGV2aWNlcyBsaWtlIGlPUykuXG4gICAgLy9cbiAgICAvLyBXZSBjYW4ndCB1c2UgYEBtZWRpYSAoaG92ZXI6IGhvdmVyKWAgYmVjYXVzZSB3ZSB3b3VsZG4ndCBnZXQgdGhlIGhvdmVyXG4gICAgLy8gc3RhdGUgaW4gYnJvd3NlcnMgdGhhdCBkb24ndCBzdXBwb3J0IGBAbWVkaWEgKGhvdmVyKWAgKGxpa2UgSW50ZXJuZXRcbiAgICAvLyBFeHBsb3Jlcikg4oCTIHNvIHdlIGhhdmUgdG8gJ3VuZG8nIHRoZSBob3ZlciBzdGF0ZSBpbnN0ZWFkLlxuICAgIEBtZWRpYSAoaG92ZXI6IG5vbmUpLCAocG9pbnRlcjogY29hcnNlKSB7XG4gICAgICAuZ292dWstY2hlY2tib3hlc19faW5wdXQ6bm90KDpkaXNhYmxlZCk6aG92ZXIgKyAuZ292dWstY2hlY2tib3hlc19fbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IGluaXRpYWw7XG4gICAgICB9XG5cbiAgICAgIC5nb3Z1ay1jaGVja2JveGVzX19pbnB1dDpmb2N1czpob3ZlciArIC5nb3Z1ay1jaGVja2JveGVzX19sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgYmFzZS4kZ292dWstZm9jdXMtd2lkdGggYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihmb2N1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiIsIkB1c2UgXCIuLi8uLi9iYXNlXCI7XG5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBzdHlsZXMge1xuICAvLyBUaGlzIG5lZWRzIHRvIGJlIGtlcHQgaW4gc3luYyB3aXRoIHRoZSBoZWFkZXIgY29tcG9uZW50J3Mgc3R5bGVzXG4gICRib3JkZXItYm90dG9tLXdpZHRoOiBiYXNlLmdvdnVrLXNwYWNpbmcoMik7XG5cbiAgLmdvdnVrLWNvb2tpZS1iYW5uZXIge1xuICAgIHBhZGRpbmctdG9wOiBiYXNlLmdvdnVrLXNwYWNpbmcoNCk7XG4gICAgLy8gVGhlIGNvbXBvbmVudCBkb2VzIG5vdCBzZXQgYm90dG9tIHNwYWNpbmcuIFRoZSBib3R0b20gc3BhY2luZyBzaG91bGQgYmVcbiAgICAvLyBjcmVhdGVkIGJ5IHRoZSBpdGVtcyBpbnNpZGUgdGhlIGNvbXBvbmVudC5cblxuICAgIC8vIFZpc3VhbGx5IHNlcGFyYXRlIHRoZSBjb29raWUgYmFubmVyIGZyb20gY29udGVudCB1bmRlcm5lYXRoIHdoZW4gdXNlclxuICAgIC8vIGNoYW5nZXMgY29sb3VycyBpbiB0aGVpciBicm93c2VyLlxuICAgIGJvcmRlci1ib3R0b206ICRib3JkZXItYm90dG9tLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoc3VyZmFjZS10ZXh0KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHN1cmZhY2UtYmFja2dyb3VuZCk7XG4gIH1cblxuICAvLyBTdXBwb3J0IG9sZGVyIGJyb3dzZXJzIHdoaWNoIGRvbid0IGhpZGUgZWxlbWVudHMgd2l0aCB0aGUgYGhpZGRlbmAgYXR0cmlidXRlXG4gIC8vIHdoZW4gdXNlciBoaWRlcyB0aGUgd2hvbGUgY29va2llIGJhbm5lciB3aXRoIGEgJ0hpZGUnIGJ1dHRvbi5cbiAgLmdvdnVrLWNvb2tpZS1iYW5uZXJbaGlkZGVuXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5nb3Z1ay1jb29raWUtYmFubmVyX19tZXNzYWdlIHtcbiAgICAvLyBSZW1vdmUgdGhlIGV4dHJhIGhlaWdodCBhZGRlZCBieSB0aGUgc2VwYXJhdG9yIGJvcmRlci5cbiAgICBtYXJnaW4tYm90dG9tOiAtJGJvcmRlci1ib3R0b20td2lkdGg7XG5cbiAgICAmW2hpZGRlbl0ge1xuICAgICAgLy8gU3VwcG9ydCBvbGRlciBicm93c2VycyB3aGljaCBkb24ndCBoaWRlIGVsZW1lbnRzIHdpdGggdGhlIGBoaWRkZW5gXG4gICAgICAvLyBhdHRyaWJ1dGUgd2hlbiB0aGUgdmlzaWJpbGl0eSBvZiBjb29raWUgYW5kIHJlcGxhY2VtZW50IG1lc3NhZ2VzIGlzXG4gICAgICAvLyB0b2dnbGVkLlxuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIC8vIFJlbW92ZSB0aGUgbmF0aXZlIHZpc2libGUgZm9jdXMgaW5kaWNhdG9yIHdoZW4gdGhlIGVsZW1lbnQgaXNcbiAgICAgIC8vIHByb2dyYW1tYXRpY2FsbHkgZm9jdXNlZC5cbiAgICAgIC8vXG4gICAgICAvLyBUaGUgZm9jdXNlZCBjb29raWUgYmFubmVyIGlzIHRoZSBmaXJzdCBlbGVtZW50IG9uIHRoZSBwYWdlIGFuZCB0aGUgbGFzdFxuICAgICAgLy8gdGhpbmcgdGhlIHVzZXIgaW50ZXJhY3RlZCB3aXRoIHByaW9yIHRvIGl0IGdhaW5pbmcgZm9jdXMuIFdlIHRoZXJlZm9yZVxuICAgICAgLy8gYXNzdW1lIHRoYXQgbW92aW5nIGZvY3VzIHRvIGl0IGlzIG5vdCBnb2luZyB0byBzdXJwcmlzZSB1c2VycywgYW5kIHRoYXRcbiAgICAgIC8vIGdpdmluZyBpdCBhIHZpc2libGUgZm9jdXMgaW5kaWNhdG9yIGNvdWxkIGJlIG1vcmUgY29uZnVzaW5nIHRoYW5cbiAgICAgIC8vIGhlbHBmdWwsIGVzcGVjaWFsbHkgYXMgdGhlIGVsZW1lbnQgaXMgbm90IG5vcm1hbGx5IGtleWJvYXJkIG9wZXJhYmxlLlxuICAgICAgLy9cbiAgICAgIC8vIFdlIGhhdmUgZmxhZ2dlZCB0aGlzIGluIHRoZSByZXNlYXJjaCBzZWN0aW9uIG9mIHRoZSBndWlkYW5jZSBhc1xuICAgICAgLy8gc29tZXRoaW5nIHRvIG1vbml0b3IuXG4gICAgICAvL1xuICAgICAgLy8gQSByZWxhdGVkIGRpc2N1c3Npb246IGh0dHBzOi8vZ2l0aHViLmNvbS93M2Mvd2NhZy9pc3N1ZXMvMTAwMVxuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuIiwiQHVzZSBcIi4uLy4uL2Jhc2VcIjtcblxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIHN0eWxlcyB7XG4gIC5nb3Z1ay1pbnB1dCB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1mb250KCRzaXplOiAxOSk7XG5cbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYmFzZS5nb3Z1ay1weC10by1yZW0oNDBweCk7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nOiBiYXNlLmdvdnVrLXNwYWNpbmcoMSk7XG4gICAgLy8gU2V0dGluZyBhbnkgYmFja2dyb3VuZC1jb2xvciBtYWtlcyB0ZXh0IGludmlzaWJsZSB3aGVuIGNoYW5naW5nIGNvbG91cnNcbiAgICAvLyB0byBkYXJrIGJhY2tncm91bmRzIGluIEZpcmVmb3ggKGh0dHBzOi8vYnVnemlsLmxhLzEzMzU0NzYpLiBBc1xuICAgIC8vIGJhY2tncm91bmQtY29sb3IgYW5kIGNvbG9yIG5lZWQgdG8gYWx3YXlzIGJlIHNldCB0b2dldGhlciwgY29sb3Igc2hvdWxkXG4gICAgLy8gbm90IGJlIHNldCBlaXRoZXJcbiAgICBib3JkZXI6IGJhc2UuJGdvdnVrLWJvcmRlci13aWR0aC1mb3JtLWVsZW1lbnQgc29saWQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3JkZXItY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoaW5wdXQtYm9yZGVyKTtcblxuICAgIC8vIERpc2FibGUgaW5uZXIgc2hhZG93IGFuZCByZW1vdmUgcm91bmRlZCBjb3JuZXJzXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1mb2N1c2VkLWZvcm0taW5wdXQ7XG4gICAgfVxuXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG4gIH1cblxuICAuZ292dWstaW5wdXQ6Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24sXG4gIC5nb3Z1ay1pbnB1dDo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIC5nb3Z1ay1pbnB1dFt0eXBlPVwibnVtYmVyXCJdIHtcbiAgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgfVxuXG4gIC5nb3Z1ay1pbnB1dC0tZXJyb3Ige1xuICAgIGJvcmRlci1jb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihlcnJvcik7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihpbnB1dC1ib3JkZXIpO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1pbnB1dC0tZXh0cmEtbGV0dGVyLXNwYWNpbmcge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udC10YWJ1bGFyLW51bWJlcnM7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgfVxuXG4gIC8vIGVtIG1lYXN1cmVtZW50cyBhcmUgYmFzZWQgb24gdGhlIHBvaW50IHNpemUgb2YgdGhlIHR5cGVmYWNlXG4gIC8vIEV4dHJhIHNwYWNlIGlzIGFkZGVkIG9uIHRoZSByaWdodCB0byBhbGxvdyBmb3IgdGhlIFNhZmFyaSBwcmVmaWxsIGljb25cblxuICAuZ292dWstaW5wdXQtLXdpZHRoLTMwIHtcbiAgICBtYXgtd2lkdGg6IDI5LjVlbTtcbiAgfVxuXG4gIC5nb3Z1ay1pbnB1dC0td2lkdGgtMjAge1xuICAgIG1heC13aWR0aDogMjAuNWVtO1xuICB9XG5cbiAgLmdvdnVrLWlucHV0LS13aWR0aC0xMCB7XG4gICAgbWF4LXdpZHRoOiAxMS41ZW07XG4gIH1cblxuICAuZ292dWstaW5wdXQtLXdpZHRoLTUge1xuICAgIG1heC13aWR0aDogNS41ZW07XG4gIH1cblxuICAuZ292dWstaW5wdXQtLXdpZHRoLTQge1xuICAgIG1heC13aWR0aDogNC41ZW07XG4gIH1cblxuICAuZ292dWstaW5wdXQtLXdpZHRoLTMge1xuICAgIG1heC13aWR0aDogMy43NWVtO1xuICB9XG5cbiAgLmdvdnVrLWlucHV0LS13aWR0aC0yIHtcbiAgICBtYXgtd2lkdGg6IDIuNzVlbTtcbiAgfVxuXG4gIC5nb3Z1ay1pbnB1dF9fd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgIC5nb3Z1ay1pbnB1dCB7XG4gICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB9XG5cbiAgICAuZ292dWstaW5wdXQ6Zm9jdXMge1xuICAgICAgLy8gSGFjayB0byBzdG9wIGZvY3VzIHN0eWxlIGJlaW5nIG92ZXJsYXBwZWQgYnkgdGhlIHN1ZmZpeFxuICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICAvLyBTcGxpdCBwcmVmaXgvc3VmZml4IG9udG8gc2VwYXJhdGUgbGluZXMgb24gbmFycm93IHNjcmVlbnNcbiAgICBAbWVkaWEgI3tiYXNlLmdvdnVrLXVudGlsLWJyZWFrcG9pbnQobW9iaWxlKX0ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgIC5nb3Z1ay1pbnB1dCB7XG4gICAgICAgIC8vIFNldCBtYXgtd2lkdGggdG8gb3ZlcnJpZGUgcG90ZW50aWFsIHdpZHRoIG92ZXJyaWRlIGNsYXNzIG9uIHRoZSBpbnB1dFxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWlucHV0X19wcmVmaXgsXG4gIC5nb3Z1ay1pbnB1dF9fc3VmZml4IHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWZvbnQoJHNpemU6IDE5KTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC8vIFVzZSBmbGV4Ym94IHRvIGFsaWduIHRleHQgd2l0aGluIHRoZSBwcmVmaXggYW5kIHN1ZmZpeFxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtaW4td2lkdGg6IGJhc2UuZ292dWstcHgtdG8tcmVtKDQwcHgpO1xuICAgIGhlaWdodDogYmFzZS5nb3Z1ay1weC10by1yZW0oNDBweCk7XG4gICAgcGFkZGluZzogYmFzZS5nb3Z1ay1zcGFjaW5nKDEpO1xuICAgIGJvcmRlcjogYmFzZS4kZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudCBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoaW5wdXQtYm9yZGVyKTtcbiAgICBjb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cih0ZXh0KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBiYXNlLmdvdnVrLWNvbG91cihcImJsYWNrXCIsICR2YXJpYW50OiBcInRpbnQtOTVcIik7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgLy8gRW1waGFzaXNlIG5vbi1lZGl0YWJsZSBzdGF0dXMgb2YgcHJlZml4ZXMgYW5kIHN1ZmZpeGVzXG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIC8vIFNwbGl0IHByZWZpeC9zdWZmaXggb250byBzZXBhcmF0ZSBsaW5lcyBvbiBuYXJyb3cgc2NyZWVuc1xuICAgIEBtZWRpYSAje2Jhc2UuZ292dWstdW50aWwtYnJlYWtwb2ludChtb2JpbGUpfSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWlucHV0X19wcmVmaXgge1xuICAgIEBtZWRpYSAje2Jhc2UuZ292dWstdW50aWwtYnJlYWtwb2ludChtb2JpbGUpfSB7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIH1cbiAgICBAbWVkaWEgI3tiYXNlLmdvdnVrLWZyb20tYnJlYWtwb2ludChtb2JpbGUpfSB7XG4gICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gU3BsaXQgcHJlZml4L3N1ZmZpeCBvbnRvIHNlcGFyYXRlIGxpbmVzIG9uIG5hcnJvdyBzY3JlZW5zXG4gIC5nb3Z1ay1pbnB1dF9fc3VmZml4IHtcbiAgICBAbWVkaWEgI3tiYXNlLmdvdnVrLXVudGlsLWJyZWFrcG9pbnQobW9iaWxlKX0ge1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICB9XG4gICAgQG1lZGlhICN7YmFzZS5nb3Z1ay1mcm9tLWJyZWFrcG9pbnQobW9iaWxlKX0ge1xuICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbiIsIkB1c2UgXCIuLi8uLi9iYXNlXCI7XG5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBzdHlsZXMge1xuICAuZ292dWstZGF0ZS1pbnB1dCB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1jbGVhcmZpeDtcbiAgICBmb250LXNpemU6IDA7IC8vIHJlbW92ZXMgd2hpdGVzcGFjZSBjYXVzZWQgYnkgaW5saW5lLWJsb2NrXG4gIH1cblxuICAuZ292dWstZGF0ZS1pbnB1dF9faXRlbSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogYmFzZS5nb3Z1ay1zcGFjaW5nKDQpO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAvLyBQcmV2ZW50cyBhbiBpc3N1ZSBpbiBpT1MgU2FmYXJpIDE4IHdoZXJlIHRoZSBpdGVtcyB2ZXJ0aWNhbGx5XG4gICAgLy8gc2hpZnQgd2hlbiB0aGUgdmFsdWUgb2YgaW5wdXRzIGlzIGNoYW5nZWQuXG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2FscGhhZ292L3JlcG9ydGVkLWJ1Z3MvaXNzdWVzLzkwXG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgfVxuXG4gIC5nb3Z1ay1kYXRlLWlucHV0X19sYWJlbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuZ292dWstZGF0ZS1pbnB1dF9faW5wdXQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuIiwiQHVzZSBcIi4uLy4uL2Jhc2VcIjtcblxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIHN0eWxlcyB7XG4gIC5nb3Z1ay1kZXRhaWxzIHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWZvbnQoJHNpemU6IDE5KTtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDYsIFwiYm90dG9tXCIpO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIodGV4dCk7XG4gIH1cblxuICAuZ292dWstZGV0YWlsc19fc3VtbWFyeSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuZ292dWstZGV0YWlsc1tvcGVuXSAuZ292dWstZGV0YWlsc19fc3VtbWFyeSB7XG4gICAgbWFyZ2luLWJvdHRvbTogYmFzZS5nb3Z1ay1zcGFjaW5nKDEpO1xuICB9XG5cbiAgLmdvdnVrLWRldGFpbHNfX3N1bW1hcnktdGV4dCB7XG4gICAgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG5cbiAgICA+IDpvbmx5LWNoaWxkLFxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAuZ292dWstZGV0YWlsc19fdGV4dCB7XG4gICAgcGFkZGluZy10b3A6IGJhc2UuZ292dWstc3BhY2luZygzKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogYmFzZS5nb3Z1ay1zcGFjaW5nKDMpO1xuICAgIHBhZGRpbmctbGVmdDogYmFzZS5nb3Z1ay1zcGFjaW5nKDQpO1xuICB9XG5cbiAgLmdvdnVrLWRldGFpbHNfX3RleHQgcCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoNCk7XG4gIH1cblxuICAuZ292dWstZGV0YWlsc19fdGV4dCA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLy8gSGFjayB0byB0YXJnZXQgSUU4IC0gSUUxMSAoYW5kIFJFQUxMWSBvbGQgRmlyZWZveClcbiAgLy8gVGhlc2UgYnJvd3NlcnMgZG9uJ3Qgc3VwcG9ydCB0aGUgZGV0YWlscyBlbGVtZW50LCBzbyBmYWxsIGJhY2sgdG8gbG9va2luZ1xuICAvLyBsaWtlIGluc2V0IHRleHRcbiAgQG1lZGlhIHNjcmVlblxcMCB7XG4gICAgLmdvdnVrLWRldGFpbHMge1xuICAgICAgYm9yZGVyLWxlZnQ6IGJhc2UuJGdvdnVrLWJvcmRlci13aWR0aC13aWRlIHNvbGlkO1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoYm9yZGVyKTtcbiAgICB9XG5cbiAgICAuZ292dWstZGV0YWlsc19fc3VtbWFyeSB7XG4gICAgICBtYXJnaW4tdG9wOiBiYXNlLmdvdnVrLXNwYWNpbmcoMyk7XG4gICAgfVxuXG4gICAgLmdvdnVrLWRldGFpbHNfX3N1bW1hcnktdGV4dCB7XG4gICAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXR5cG9ncmFwaHktd2VpZ2h0LWJvbGQ7XG4gICAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDQsIFwiYm90dG9tXCIpO1xuICAgICAgcGFkZGluZy1sZWZ0OiBiYXNlLmdvdnVrLXNwYWNpbmcoNCk7XG4gICAgfVxuICB9XG5cbiAgLy8gV2Ugd3JhcCBzdHlsZXMgZm9yIG5ld2VyIGJyb3dzZXJzIGluIGEgZmVhdHVyZSBxdWVyeSwgd2hpY2ggaXMgaWdub3JlZCBieVxuICAvLyBvbGRlciBicm93c2Vycywgd2hpY2ggYWx3YXlzIGV4cGFuZCB0aGUgZGV0YWlscyBlbGVtZW50LlxuICAvL1xuICAvLyBBZGRpdGlvbmFsbHksIC1tcy1pbWUtYWxpZ24gaXMgb25seSBzdXBwb3J0ZWQgYnkgRWRnZSAxMiAtIDE4XG4gIC8vXG4gIC8vIFRoaXMgZW5zdXJlcyB3ZSBkb24ndCB1c2UgdGhlc2Ugc3R5bGVzIGluIGJyb3dzZXJzIHdoaWNoOlxuICAvLyAgIC0gc3VwcG9ydCBFUzYgbW9kdWxlcyBidXQgbm90IHRoZSA8ZGV0YWlscz4gZWxlbWVudCAoRWRnZSAxNiAtIDE4KVxuICAvLyAgIC0gZG8gbm90IHN1cHBvcnQgRVM2IG1vZHVsZXMgb3IgdGhlIDxkZXRhaWxzPiBlbGVtZW50IChlZywgSUU4KylcbiAgQHN1cHBvcnRzIG5vdCAoLW1zLWltZS1hbGlnbjogYXV0bykge1xuICAgIC5nb3Z1ay1kZXRhaWxzX19zdW1tYXJ5IHtcbiAgICAgIC8vIEFic29sdXRlbHkgcG9zaXRpb24gdGhlIG1hcmtlciBhZ2FpbnN0IHRoaXMgZWxlbWVudFxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAvLyBNYWtlIHRoZSBmb2N1cyBvdXRsaW5lIHNocmluay13cmFwIHRoZSB0ZXh0IGNvbnRlbnQgb2YgdGhlIHN1bW1hcnlcbiAgICAgIHdpZHRoOiAtd2Via2l0LWZpdC1jb250ZW50O1xuICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuXG4gICAgICAvLyBBbGxvdyBmb3IgYWJzb2x1dGVseSBwb3NpdGlvbmVkIG1hcmtlciBhbmQgYWxpZ24gd2l0aCBkaXNjbG9zZWQgdGV4dFxuICAgICAgcGFkZGluZy1sZWZ0OiBiYXNlLmdvdnVrLXNwYWNpbmcoNCkgKyBiYXNlLiRnb3Z1ay1ib3JkZXItd2lkdGg7XG5cbiAgICAgIC8vIFN0eWxlIHRoZSBzdW1tYXJ5IHRvIGxvb2sgbGlrZSBhIGxpbmsuLi5cbiAgICAgIGNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGxpbmspO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIobGluay1ob3Zlcik7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWZvY3VzZWQtdGV4dDtcbiAgICAgIH1cbiAgICB9XG4gICAgLy8gLi4uYnV0IG9ubHkgdW5kZXJsaW5lIHRoZSB0ZXh0LCBub3QgdGhlIGFycm93XG4gICAgLmdvdnVrLWRldGFpbHNfX3N1bW1hcnktdGV4dCB7XG4gICAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWxpbmstZGVjb3JhdGlvbjtcbiAgICB9XG5cbiAgICAuZ292dWstZGV0YWlsc19fc3VtbWFyeTpob3ZlciAuZ292dWstZGV0YWlsc19fc3VtbWFyeS10ZXh0IHtcbiAgICAgIEBpbmNsdWRlIGJhc2UuZ292dWstbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSB0aGUgdW5kZXJsaW5lIHdoZW4gZm9jdXNzZWQgdG8gYXZvaWQgZHVwbGljYXRlIGJvcmRlcnNcbiAgICAuZ292dWstZGV0YWlsc19fc3VtbWFyeTpmb2N1cyAuZ292dWstZGV0YWlsc19fc3VtbWFyeS10ZXh0IHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgZGV0YWlscyBtYXJrZXIgc28gd2UgY2FuIHN0eWxlIG91ciBvd24gY29uc2lzdGVudGx5IGFuZFxuICAgIC8vIGVuc3VyZSBpdCBkaXNwbGF5cyBpbiBGaXJlZm94IChzZWUgaW1wbGVtZW50YXRpb24ubWQgZm9yIGRldGFpbHMpXG4gICAgLmdvdnVrLWRldGFpbHNfX3N1bW1hcnk6Oi13ZWJraXQtZGV0YWlscy1tYXJrZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBBcHBlbmQgb3VyIG93biBvcGVuIC8gY2xvc2VkIG1hcmtlciB1c2luZyBhIHBzZXVkby1lbGVtZW50XG4gICAgLmdvdnVrLWRldGFpbHNfX3N1bW1hcnk6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgICB0b3A6IC0xcHg7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuXG4gICAgICBtYXJnaW46IGF1dG87XG5cbiAgICAgIEBpbmNsdWRlIGJhc2UuZ292dWstc2hhcGUtYXJyb3coJGRpcmVjdGlvbjogcmlnaHQsICRiYXNlOiAxNHB4KTtcblxuICAgICAgLmdvdnVrLWRldGFpbHNbb3Blbl0gPiAmIHtcbiAgICAgICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1zaGFwZS1hcnJvdygkZGlyZWN0aW9uOiBkb3duLCAkYmFzZTogMTRweCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmdvdnVrLWRldGFpbHNfX3RleHQge1xuICAgICAgYm9yZGVyLWxlZnQ6IGJhc2UuJGdvdnVrLWJvcmRlci13aWR0aCBzb2xpZDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGJvcmRlcik7XG4gICAgfVxuICB9XG59XG5cbiIsIi8vLy9cbi8vLyBAZ3JvdXAgaGVscGVycy9zaGFwZXNcbi8vLy9cblxuLy8vIENhbGN1bGF0ZSB0aGUgaGVpZ2h0IG9mIGFuIGVxdWlsYXRlcmFsIHRyaWFuZ2xlXG4vLy9cbi8vLyBNdWx0aXBseWluZyBoYWxmIHRoZSBsZW5ndGggb2YgdGhlIGJhc2Ugb2YgYW4gZXF1aWxhdGVyYWwgdHJpYW5nbGUgYnkgdGhlXG4vLy8gc3F1YXJlIHJvb3Qgb2YgdGhyZWUgZ2l2ZXMgdXMgaXRzIGhlaWdodC4gV2UgdXNlIDEuNzMyIGFzIGFuIGFwcHJveGltYXRpb24uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgLSBMZW5ndGggb2YgdGhlIGJhc2Ugb2YgdGhlIHRyaWFuZ2xlXG4vLy8gQHJldHVybiB7TnVtYmVyfSBDYWxjdWxhdGVkIGhlaWdodCBvZiB0aGUgdHJpYW5nbGVcbi8vLyBAYWNjZXNzIHByaXZhdGVcblxuQGZ1bmN0aW9uIF9nb3Z1ay1lcXVpbGF0ZXJhbC1oZWlnaHQoJGJhc2UpIHtcbiAgJHNxdWFyZS1yb290LW9mLXRocmVlOiAxLjczMjtcblxuICBAcmV0dXJuICgkYmFzZSAqIDAuNSkgKiAkc3F1YXJlLXJvb3Qtb2YtdGhyZWU7XG59XG5cbi8vLyBBcnJvdyBtaXhpblxuLy8vXG4vLy8gR2VuZXJhdGUgQXJyb3dzICh0cmlhbmdsZXMpIGJ5IHVzaW5nIGEgbWl4IG9mIHRyYW5zcGFyZW50ICgxKSBhbmQgY29sb3VyZWRcbi8vLyBib3JkZXJzLiBUaGUgY29sb3VyZWQgYm9yZGVycyBpbmhlcml0IHRoZSB0ZXh0IGNvbG91ciBvZiB0aGUgZWxlbWVudCAoMikuXG4vLy9cbi8vLyBFbnN1cmUgdGhlIGFycm93IGlzIHJlbmRlcmVkIGNvcnJlY3RseSBpZiBicm93c2VyIGNvbG91cnMgYXJlIG92ZXJyaWRkZW4gYnlcbi8vLyBwcm92aWRpbmcgYSBjbGlwIHBhdGggKDMpLiBXaXRob3V0IHRoaXMgdGhlIHRyYW5zcGFyZW50IGJvcmRlcnMgYXJlXG4vLy8gb3ZlcnJpZGRlbiB0byBiZWNvbWUgdmlzaWJsZSB3aGljaCByZXN1bHRzIGluIGEgc3F1YXJlLlxuLy8vXG4vLy8gV2UgbmVlZCBib3RoIGJlY2F1c2Ugb2xkZXIgYnJvd3NlcnMgZG8gbm90IHN1cHBvcnQgY2xpcC1wYXRoLlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRkaXJlY3Rpb24gLSBEaXJlY3Rpb24gZm9yIGFycm93OiB1cCwgcmlnaHQsIGRvd24sIGxlZnQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIC0gTGVuZ3RoIG9mIHRoZSB0cmlhbmdsZSAnYmFzZScgc2lkZVxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkaGVpZ2h0IFtudWxsXSAtIEhlaWdodCBvZiB0cmlhbmdsZS4gT21pdCBmb3IgZXF1aWxhdGVyYWwuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRkaXNwbGF5IFtibG9ja10gLSBDU1MgZGlzcGxheSBwcm9wZXJ0eSBvZiB0aGUgYXJyb3dcbi8vL1xuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay1zaGFwZS1hcnJvdygkZGlyZWN0aW9uLCAkYmFzZSwgJGhlaWdodDogbnVsbCwgJGRpc3BsYXk6IGJsb2NrKSB7XG4gIGRpc3BsYXk6ICRkaXNwbGF5O1xuXG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG5cbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gMVxuXG4gICRwZXJwZW5kaWN1bGFyOiAkYmFzZSAqIDAuNTtcblxuICBAaWYgbm90ICRoZWlnaHQge1xuICAgICRoZWlnaHQ6IF9nb3Z1ay1lcXVpbGF0ZXJhbC1oZWlnaHQoJGJhc2UpO1xuICB9XG5cbiAgQGlmICRkaXJlY3Rpb24gPT0gXCJ1cFwiIHtcbiAgICAtd2Via2l0LWNsaXAtcGF0aDogcG9seWdvbig1MCUgMCUsIDAlIDEwMCUsIDEwMCUgMTAwJSk7XG4gICAgICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oNTAlIDAlLCAwJSAxMDAlLCAxMDAlIDEwMCUpOyAvLyAzXG5cbiAgICBib3JkZXItd2lkdGg6IDAgJHBlcnBlbmRpY3VsYXIgJGhlaWdodDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiBpbmhlcml0OyAvLyAyXG4gIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBcInJpZ2h0XCIge1xuICAgIC13ZWJraXQtY2xpcC1wYXRoOiBwb2x5Z29uKDAlIDAlLCAxMDAlIDUwJSwgMCUgMTAwJSk7XG4gICAgICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCUgMCUsIDEwMCUgNTAlLCAwJSAxMDAlKTsgLy8gM1xuXG4gICAgYm9yZGVyLXdpZHRoOiAkcGVycGVuZGljdWxhciAwICRwZXJwZW5kaWN1bGFyICRoZWlnaHQ7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwiZG93blwiIHtcbiAgICAtd2Via2l0LWNsaXAtcGF0aDogcG9seWdvbigwJSAwJSwgNTAlIDEwMCUsIDEwMCUgMCUpO1xuICAgICAgICAgICAgY2xpcC1wYXRoOiBwb2x5Z29uKDAlIDAlLCA1MCUgMTAwJSwgMTAwJSAwJSk7IC8vIDNcblxuICAgIGJvcmRlci13aWR0aDogJGhlaWdodCAkcGVycGVuZGljdWxhciAwICRwZXJwZW5kaWN1bGFyO1xuICAgIGJvcmRlci10b3AtY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwibGVmdFwiIHtcbiAgICAtd2Via2l0LWNsaXAtcGF0aDogcG9seWdvbigwJSA1MCUsIDEwMCUgMTAwJSwgMTAwJSAwJSk7XG4gICAgICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCUgNTAlLCAxMDAlIDEwMCUsIDEwMCUgMCUpOyAvLyAzXG5cbiAgICBib3JkZXItd2lkdGg6ICRwZXJwZW5kaWN1bGFyICRoZWlnaHQgJHBlcnBlbmRpY3VsYXIgMDtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgfSBAZWxzZSB7XG4gICAgQGVycm9yIFwiSW52YWxpZCBhcnJvdyBkaXJlY3Rpb246IGV4cGVjdGVkIGB1cGAsIGByaWdodGAsIGBkb3duYCBvciBgbGVmdGAsIGdvdCBgI3skZGlyZWN0aW9ufWBcIjtcbiAgfVxufVxuXG4iLCJAdXNlIFwiLi4vLi4vYmFzZVwiO1xuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gc3R5bGVzIHtcbiAgLmdvdnVrLWVycm9yLXN1bW1hcnkge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udCgkc2l6ZTogMTkpO1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstcmVzcG9uc2l2ZS1wYWRkaW5nKDQpO1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oOCwgXCJib3R0b21cIik7XG5cbiAgICBib3JkZXI6IGJhc2UuJGdvdnVrLWJvcmRlci13aWR0aCBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoZXJyb3IpO1xuICAgIGNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHRleHQpO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBiYXNlLiRnb3Z1ay1mb2N1cy13aWR0aCBzb2xpZDtcbiAgICAgIG91dGxpbmUtY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoZm9jdXMpO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1lcnJvci1zdW1tYXJ5X190aXRsZSB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1mb250LXNpemUoJHNpemU6IDI0KTtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXR5cG9ncmFwaHktd2VpZ2h0LWJvbGQ7XG5cbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNCwgXCJib3R0b21cIik7XG4gIH1cblxuICAuZ292dWstZXJyb3Itc3VtbWFyeV9fYm9keSB7XG4gICAgcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgID4gKiArICoge1xuICAgICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig0LCBcInRvcFwiKTtcbiAgICB9XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJhc2UuZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oMSwgXCJib3R0b21cIik7XG4gICAgfVxuICB9XG5cbiAgLy8gQ3Jvc3MtY29tcG9uZW50IGNsYXNzIC0gYWRqdXN0cyBzdHlsaW5nIG9mIGxpc3QgY29tcG9uZW50XG4gIC5nb3Z1ay1lcnJvci1zdW1tYXJ5X19saXN0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBib3R0b20gbWFyZ2luIGZyb20gdGhlIGxhc3QgbGlzdCBpdGVtXG4gIC5nb3Z1ay1lcnJvci1zdW1tYXJ5X19saXN0IGxpOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuZ292dWstZXJyb3Itc3VtbWFyeV9fbGlzdCBhIHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXR5cG9ncmFwaHktd2VpZ2h0LWJvbGQ7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1saW5rLWNvbW1vbjtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWxpbmstc3R5bGUtZXJyb3I7XG4gIH1cbn1cblxuIiwiQHVzZSBcIi4uLy4uL2Jhc2VcIjtcblxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIHN0eWxlcyB7XG4gICRpbmRpY2F0b3Itc2l6ZTogMC43NWVtO1xuXG4gIC5nb3Z1ay1leGl0LXRoaXMtcGFnZSB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig4LCBcImJvdHRvbVwiKTtcbiAgICBwb3NpdGlvbjogLXdlYmtpdC1zdGlja3k7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB6LWluZGV4OiAxMDAwO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQG1lZGlhICN7YmFzZS5nb3Z1ay1mcm9tLWJyZWFrcG9pbnQodGFibGV0KX0ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWV4aXQtdGhpcy1wYWdlX19idXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuZ292dWstZXhpdC10aGlzLXBhZ2VfX2luZGljYXRvciB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1yZXNwb25zaXZlLXBhZGRpbmcoMik7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogMDsgLy8gcmVtb3ZlcyBleHRyYSBuZWdhdGl2ZSBzcGFjZSBiZWxvdyB0aGUgaW5kaWNhdG9yc1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC5nb3Z1ay1leGl0LXRoaXMtcGFnZV9faW5kaWNhdG9yLS12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC5nb3Z1ay1leGl0LXRoaXMtcGFnZV9faW5kaWNhdG9yLWxpZ2h0IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogJGluZGljYXRvci1zaXplO1xuICAgIGhlaWdodDogJGluZGljYXRvci1zaXplO1xuICAgIG1hcmdpbjogMCAwLjEyNWVtO1xuICAgIGJvcmRlci13aWR0aDogMnB4O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJvcmRlci1jb2xvcjogY3VycmVudGNvbG9yO1xuICB9XG5cbiAgLmdvdnVrLWV4aXQtdGhpcy1wYWdlX19pbmRpY2F0b3ItbGlnaHQtLW9uIHtcbiAgICBib3JkZXItd2lkdGg6ICRpbmRpY2F0b3Itc2l6ZSAqIDAuNTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHByaW50IHtcbiAgICAuZ292dWstZXhpdC10aGlzLXBhZ2Uge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuZ292dWstZXhpdC10aGlzLXBhZ2Utb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6IDk5OTk7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIC8vIFRoZSBvdmVybGF5IGlzIGltaXRhdGluZyBhIGRlZmF1bHQgYnJvd3NlciB3aW5kb3cgc28gd2UgY2FuIHVzZVxuICAgIC8vIHN5c3RlbSBjb2xvdXJzIGVuc3VyZSBpdCBtYXRjaGVzIHRoZSBicm93c2VyJ3MgZGVmYXVsdCBjb2xvdXJzLlxuICAgIC8vIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy9SZWZlcmVuY2UvVmFsdWVzL3N5c3RlbS1jb2xvclxuICAgIGNvbG9yOiBDYW52YXNUZXh0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IENhbnZhcztcbiAgfVxuXG4gIC8vIFRoaXMgY2xhc3MgaXMgYWRkZWQgdG8gdGhlIGJvZHkgd2hlbiB0aGUgRXhpdCBUaGlzIFBhZ2UgYnV0dG9uIGlzIGFjdGl2YXRlZFxuICAvLyBpbiBhZGRpdGlvbiB0byB0aGUgb3ZlcmxheSB0byBib3RoIGJsb2NrIHRoZSBlbnRpcmUgc2NyZWVuIGFuZCBoaWRlIGV2ZXJ5dGhpbmdcbiAgLy8gdW5kZXJuZWF0aCBpdC5cbiAgLy9cbiAgLy8gV2UgZG8gdGhpcyB0byBlbnN1cmUgdGhhdCB1c2VycyBkb24ndCByaXNrIGludGVyYWN0aW5nIHdpdGggdGhlIHBhZ2UgdW5kZXJuZWF0aFxuICAvLyB0aGUgb3ZlcmxheSBiZXR3ZWVuIGFjdGl2YXRpbmcgdGhlIGJ1dHRvbiBhbmQgbmF2aWdhdGluZyB0byB0aGUgbmV4dCBwYWdlLlxuICAuZ292dWstZXhpdC10aGlzLXBhZ2UtaGlkZS1jb250ZW50IHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICAqIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuZ292dWstZXhpdC10aGlzLXBhZ2Utb3ZlcmxheSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4iLCJAdXNlIFwiLi4vLi4vYmFzZVwiO1xuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gc3R5bGVzIHtcbiAgJGZpbGUtdXBsb2FkLWJvcmRlci13aWR0aDogMnB4O1xuICAkY29tcG9uZW50LXBhZGRpbmc6IGJhc2UuZ292dWstc3BhY2luZygxKTtcbiAgJGVtcHR5LWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG91cjogYmFzZS5nb3Z1ay1jb2xvdXIoXCJ3aGl0ZVwiKTtcbiAgJGVtcHR5LXBzZXVkby1idXR0b24tYmFja2dyb3VuZC1jb2xvdXI6IGJhc2UuZ292dWstY29sb3VyKFwiYmxhY2tcIiwgJHZhcmlhbnQ6IFwidGludC05NVwiKTtcbiAgJGVtcHR5LXN0YXR1cy1iYWNrZ3JvdW5kLWNvbG91cjogYmFzZS5nb3Z1ay1jb2xvdXIoXCJibHVlXCIsICR2YXJpYW50OiBcInRpbnQtODBcIik7XG5cbiAgLmdvdnVrLWZpbGUtdXBsb2FkIHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWZvbnQoJHNpemU6IDE5KTtcblxuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogLSRjb21wb25lbnQtcGFkZGluZztcbiAgICBwYWRkaW5nOiAkY29tcG9uZW50LXBhZGRpbmc7XG4gICAgY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIodGV4dCk7XG5cbiAgICAvLyBUaGUgZGVmYXVsdCBmaWxlIHVwbG9hZCBidXR0b24gaW4gU2FmYXJpIGRvZXMgbm90IHN1cHBvcnQgc2V0dGluZyBhXG4gICAgLy8gY3VzdG9tIGZvbnQtc2l6ZS4gU2V0IGAtd2Via2l0LWFwcGVhcmFuY2VgIHRvIGBidXR0b25gIHRvIGRyb3Agb3V0IG9mIHRoZVxuICAgIC8vIG5hdGl2ZSBhcHBlYXJhbmNlIHNvIHRoZSBmb250LXNpemUgaXMgc2V0IHRvIDE5cHhcbiAgICAvLyBodHRwczovL3dlYmtpdC5vcmcvYi8yMjQ3NDZcbiAgICAmOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IGJhc2UuJGdvdnVrLWZvY3VzLXdpZHRoIHNvbGlkO1xuICAgICAgb3V0bGluZS1jb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihmb2N1cyk7XG4gICAgICAvLyBVc2UgYGJveC1zaGFkb3dgIHRvIGFkZCBib3JkZXIgaW5zdGVhZCBvZiBjaGFuZ2luZyBgYm9yZGVyLXdpZHRoYFxuICAgICAgLy8gKHdoaWNoIGNoYW5nZXMgZWxlbWVudCBzaXplKSBhbmQgc2luY2UgYG91dGxpbmVgIGlzIGFscmVhZHkgdXNlZCBmb3JcbiAgICAgIC8vIHRoZSB5ZWxsb3cgZm9jdXMgc3RhdGUuXG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA0cHggYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihpbnB1dC1ib3JkZXIpO1xuICAgIH1cblxuICAgIC8vIFNldCBcImZvY3VzLXdpdGhpblwiIHRvIGZpeCBodHRwczovL2J1Z3ppbC5sYS8xNDMwMTk2IHNvIHRoYXQgY29tcG9uZW50XG4gICAgLy8gcmVjZWl2ZXMgZm9jdXMgaW4gRmlyZWZveC5cbiAgICAvLyBUaGlzIGNhbid0IGJlIHNldCB0b2dldGhlciB3aXRoIGA6Zm9jdXNgIGFzIGFsbCB2ZXJzaW9ucyBvZiBJRSBmYWlsXG4gICAgLy8gdG8gcmVjb2duaXNlIGBmb2N1cy13aXRoaW5gIGFuZCBkb24ndCBzZXQgYW55IHN0eWxlcyBmcm9tIHRoZSBibG9ja1xuICAgIC8vIHdoZW4gaXQncyBhIHNlbGVjdG9yLlxuICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgIG91dGxpbmU6IGJhc2UuJGdvdnVrLWZvY3VzLXdpZHRoIHNvbGlkO1xuICAgICAgb3V0bGluZS1jb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihmb2N1cyk7XG5cbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDRweCBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGlucHV0LWJvcmRlcik7XG4gICAgfVxuXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1maWxlLXVwbG9hZC13cmFwcGVyLFxuICAvLyBAZGVwcmVjYXRlZCAuZ292dWstZHJvcC16b25lIGNsYXNzIGlzIGRlcHJlY2F0ZWQgaW4gZmF2b3VyIG9mIC5nb3Z1ay1maWxlLXVwbG9hZC13cmFwcGVyXG4gIC5nb3Z1ay1kcm9wLXpvbmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoYm9keS1iYWNrZ3JvdW5kKTtcbiAgfVxuXG4gIC8vIHJlcXVpcmVkIGJlY2F1c2UgZGlzYWJsaW5nIHBvaW50ZXIgZXZlbnRzXG4gIC8vIG9uIHRoZSBidXR0b24gbWVhbnMgdGhhdCB0aGUgY3Vyc29yIHN0eWxlXG4gIC8vIGJlIGFwcGxpZWQgb24gdGhlIGJ1dHRvbiBpdHNlbGZcbiAgLmdvdnVrLWZpbGUtdXBsb2FkLXdyYXBwZXItLWRpc2FibGVkIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG5cbiAgLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbl9fcHNldWRvLWJ1dHRvbiB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBiYXNlLmdvdnVrLXNwYWNpbmcoMik7XG4gICAgbWFyZ2luLWJvdHRvbTogYmFzZS4kZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudCArIDE7XG4gIH1cblxuICAuZ292dWstZmlsZS11cGxvYWQtYnV0dG9uX19pbnN0cnVjdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogYmFzZS5nb3Z1ay1zcGFjaW5nKDIpIC0gKGJhc2UuJGdvdnVrLWJvcmRlci13aWR0aC1mb3JtLWVsZW1lbnQgKyAxKTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cblxuICAuZ292dWstZmlsZS11cGxvYWQtYnV0dG9uX19zdGF0dXMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IGJhc2UuZ292dWstc3BhY2luZygyKTtcbiAgICBwYWRkaW5nOiBiYXNlLmdvdnVrLXNwYWNpbmcoMykgYmFzZS5nb3Z1ay1zcGFjaW5nKDIpO1xuICAgIGNvbG9yOiBiYXNlLmdvdnVrLWNvbG91cihcIndoaXRlXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGJhc2UuZ292dWstY29sb3VyKFwiYmx1ZVwiKTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstdGV4dC1icmVhay13b3JkO1xuICB9XG5cbiAgLy8gYnVncyBkb2N1bWVudGVkIHdpdGggYnV0dG9uIHVzaW5nIGZsZXhcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTlcbiAgLy8gc28gd2UgbmVlZCBhIGNvbnRhaW5lciBoZXJlXG4gIC5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b25fX3BzZXVkby1idXR0b24tY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gIH1cblxuICAuZ292dWstZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAvLyBhbGlnbiB0aGUgcGFkZGluZyB0byBiZSBzYW1lIGFzIG5vdGlmaWNhdGlvbiBiYW5uZXIgYW5kIGVycm9yIHN1bW1hcnkgYWNjb3VudGluZyBmb3IgdGhlIHRoaWNrZXIgYm9yZGVyc1xuICAgIHBhZGRpbmc6IChiYXNlLmdvdnVrLXNwYWNpbmcoMykgKyBiYXNlLiRnb3Z1ay1ib3JkZXItd2lkdGggLSAkZmlsZS11cGxvYWQtYm9yZGVyLXdpZHRoKTtcbiAgICBib3JkZXI6ICRmaWxlLXVwbG9hZC1ib3JkZXItd2lkdGggc29saWQgYmFzZS5nb3Z1ay1jb2xvdXIoXCJibGFja1wiLCAkdmFyaWFudDogXCJ0aW50LTgwXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGJhc2UuZ292dWstY29sb3VyKFwid2hpdGVcIik7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgQG1lZGlhICN7YmFzZS5nb3Z1ay1mcm9tLWJyZWFrcG9pbnQodGFibGV0KX0ge1xuICAgICAgcGFkZGluZzogKGJhc2UuZ292dWstc3BhY2luZyg0KSArIGJhc2UuJGdvdnVrLWJvcmRlci13aWR0aCAtICRmaWxlLXVwbG9hZC1ib3JkZXItd2lkdGgpO1xuICAgIH1cblxuICAgIEBhdC1yb290IC5nb3Z1ay1mb3JtLWdyb3VwLS1lcnJvciAmIHtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICBib3JkZXItY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoXCJlcnJvclwiKTtcbiAgICB9XG5cbiAgICAuZ292dWstZmlsZS11cGxvYWQtYnV0dG9uX19wc2V1ZG8tYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGJhc2UuZ292dWstY29sb3VyKFwiYmxhY2tcIiwgJHZhcmlhbnQ6IFwidGludC05NVwiKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJvcmRlci1zdHlsZTogZGFzaGVkO1xuICAgICAgYm9yZGVyLWNvbG9yOiBiYXNlLmdvdnVrLWNvbG91cihcImJsYWNrXCIsICR2YXJpYW50OiBcInRpbnQtNTBcIik7XG5cbiAgICAgIC5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b25fX3BzZXVkby1idXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBiYXNlLmdvdnVrLWNvbG91cihcImJsYWNrXCIsICR2YXJpYW50OiBcInRpbnQtODBcIik7XG4gICAgICB9XG5cbiAgICAgIC5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b25fX3N0YXR1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGJhc2UuZ292dWstY29sb3VyKFwiYmx1ZVwiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlcjogJGZpbGUtdXBsb2FkLWJvcmRlci13aWR0aCBzb2xpZCBiYXNlLmdvdnVrLWNvbG91cihcImJsYWNrXCIpO1xuICAgICAgb3V0bGluZTogYmFzZS4kZ292dWstZm9jdXMtd2lkdGggc29saWQ7XG4gICAgICBvdXRsaW5lLWNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGZvY3VzKTtcbiAgICAgIC8vIEVuc3VyZSBvdXRsaW5lIGFwcGVhcnMgb3V0c2lkZSBvZiB0aGUgZWxlbWVudFxuICAgICAgb3V0bGluZS1vZmZzZXQ6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBiYXNlLmdvdnVrLWNvbG91cihcImJsYWNrXCIsICR2YXJpYW50OiBcInRpbnQtOTVcIik7XG4gICAgICAvLyBEb3VibGUgdGhlIGJvcmRlciBieSBhZGRpbmcgaXRzIHdpZHRoIGFnYWluLiBVc2UgYGJveC1zaGFkb3dgIGZvciB0aGlzXG4gICAgICAvLyBpbnN0ZWFkIG9mIGNoYW5naW5nIGBib3JkZXItd2lkdGhgIC0gdGhpcyBpcyBmb3IgY29uc2lzdGVuY3kgd2l0aFxuICAgICAgLy8gY29tcG9uZW50cyBzdWNoIGFzIHRleHRhcmVhIHdoZXJlIHdlIGF2b2lkIGNoYW5naW5nIGBib3JkZXItd2lkdGhgIGFzXG4gICAgICAvLyBpdCB3aWxsIGNoYW5nZSB0aGUgZWxlbWVudCBzaXplLiBBbHNvLCBgb3V0bGluZWAgY2Fubm90IGJlIHV0aWxpc2VkXG4gICAgICAvLyBoZXJlIGFzIGl0IGlzIGFscmVhZHkgdXNlZCBmb3IgdGhlIHllbGxvdyBmb2N1cyBzdGF0ZS5cbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIGJhc2UuJGdvdnVrLWJvcmRlci13aWR0aC1mb3JtLWVsZW1lbnQ7XG5cbiAgICAgIC5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b25fX3BzZXVkby1idXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGZvY3VzKTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggMCBiYXNlLmdvdnVrLWNvbG91cihcImJsYWNrXCIpO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIC5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b25fX3BzZXVkby1idXR0b24ge1xuICAgICAgICBib3JkZXItY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoZm9jdXMpO1xuICAgICAgICBvdXRsaW5lOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGJhc2UuZ292dWstY29sb3VyKFwiYmxhY2tcIiwgJHZhcmlhbnQ6IFwidGludC04MFwiKTtcbiAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoZm9jdXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b24tLWVtcHR5IHtcbiAgICBib3JkZXItc3R5bGU6IGRhc2hlZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZW1wdHktYnV0dG9uLWJhY2tncm91bmQtY29sb3VyO1xuXG4gICAgLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbl9fcHNldWRvLWJ1dHRvbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZW1wdHktcHNldWRvLWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG91cjtcbiAgICB9XG5cbiAgICAuZ292dWstZmlsZS11cGxvYWQtYnV0dG9uX19zdGF0dXMge1xuICAgICAgY29sb3I6IGJhc2UuZ292dWstY29sb3VyKFwiYmxhY2tcIik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZW1wdHktc3RhdHVzLWJhY2tncm91bmQtY29sb3VyO1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBiYXNlLmdvdnVrLWNvbG91cihcImJsYWNrXCIsICR2YXJpYW50OiBcInRpbnQtOTVcIik7XG5cbiAgICAgIC5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b25fX3N0YXR1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGJhc2UuZ292dWstY29sb3VyKFwiYmx1ZVwiLCAkdmFyaWFudDogXCJ0aW50LTgwXCIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b24tLWRyYWdnaW5nIHtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogYmFzZS5nb3Z1ay1jb2xvdXIoXCJibGFja1wiKTtcblxuICAgIC8vIGV4dHJhIHNwZWNpZmljaXR5IHRvIGFwcGx5IHdoZW5cbiAgICAvLyBlbXB0eVxuICAgICYuZ292dWstZmlsZS11cGxvYWQtYnV0dG9uLS1lbXB0eSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBiYXNlLmdvdnVrLWNvbG91cihcImJsYWNrXCIsICR2YXJpYW50OiBcInRpbnQtOTVcIik7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbjpkaXNhYmxlZCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgb3BhY2l0eTogMC41O1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGVtcHR5LWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG91cjtcblxuICAgIC5nb3Z1ay1maWxlLXVwbG9hZC1idXR0b25fX3BzZXVkby1idXR0b24ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGVtcHR5LXBzZXVkby1idXR0b24tYmFja2dyb3VuZC1jb2xvdXI7XG4gICAgfVxuXG4gICAgLmdvdnVrLWZpbGUtdXBsb2FkLWJ1dHRvbl9fc3RhdHVzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRlbXB0eS1zdGF0dXMtYmFja2dyb3VuZC1jb2xvdXI7XG4gICAgfVxuICB9XG59XG5cbiIsIkB1c2UgXCIuLi8uLi9iYXNlXCI7XG5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBzdHlsZXMge1xuICAkZ292dWstZm9vdGVyLWJhY2tncm91bmQ6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoc3VyZmFjZS1iYWNrZ3JvdW5kKTtcbiAgJGdvdnVrLWZvb3Rlci10ZXh0OiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHN1cmZhY2UtdGV4dCk7XG4gICRnb3Z1ay1mb290ZXItY29udGVudC1ib3JkZXI6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoc3VyZmFjZS1ib3JkZXIpO1xuXG4gIC8vIFJveWFsIEFybXMgaW1hZ2UgZGltZW5zaW9uc1xuICAkZ292dWstZm9vdGVyLWNyZXN0LWltYWdlLXdpZHRoOiAxMjVweDtcbiAgJGdvdnVrLWZvb3Rlci1jcmVzdC1pbWFnZS1oZWlnaHQ6IDEwMnB4O1xuXG4gIC5nb3Z1ay1mb290ZXIge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udCgkc2l6ZTogMTkpO1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstcmVzcG9uc2l2ZS1wYWRkaW5nKDcsIFwidG9wXCIpO1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstcmVzcG9uc2l2ZS1wYWRkaW5nKDUsIFwiYm90dG9tXCIpO1xuXG4gICAgYm9yZGVyLXRvcDogMTBweCBzb2xpZDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGJyYW5kKTtcbiAgICBjb2xvcjogJGdvdnVrLWZvb3Rlci10ZXh0O1xuICAgIGJhY2tncm91bmQ6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIodGVtcGxhdGUtYmFja2dyb3VuZCk7XG4gIH1cblxuICAuZ292dWstZm9vdGVyX19jcm93biB7XG4gICAgbWFyZ2luLWJvdHRvbTogYmFzZS5nb3Z1ay1zcGFjaW5nKDUpO1xuICB9XG5cbiAgLmdvdnVrLWZvb3Rlcl9fbGluayB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1saW5rLWNvbW1vbjtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWxpbmstc3R5bGUtZGVmYXVsdDtcbiAgfVxuXG4gIC5nb3Z1ay1mb290ZXJfX3NlY3Rpb24tYnJlYWsge1xuICAgIG1hcmdpbjogMDsgLy8gUmVzZXQgYDxocj5gIGRlZmF1bHQgbWFyZ2luc1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oOCwgXCJib3R0b21cIik7XG4gICAgYm9yZGVyOiAwOyAvLyBSZXNldCBgPGhyPmAgZGVmYXVsdCBib3JkZXJzXG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRnb3Z1ay1mb290ZXItY29udGVudC1ib3JkZXI7XG4gIH1cblxuICAuZ292dWstZm9vdGVyX19tZXRhIHtcbiAgICBkaXNwbGF5OiBmbGV4OyAvLyBTdXBwb3J0OiBGbGV4Ym94XG4gICAgZmxleC13cmFwOiB3cmFwOyAvLyBTdXBwb3J0OiBGbGV4Ym94XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyAvLyBTdXBwb3J0OiBGbGV4Ym94XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IC8vIFN1cHBvcnQ6IEZsZXhib3hcbiAgICBtYXJnaW4tcmlnaHQ6IC0oYmFzZS4kZ292dWstZ3V0dGVyLWhhbGYpO1xuICAgIG1hcmdpbi1sZWZ0OiAtKGJhc2UuJGdvdnVrLWd1dHRlci1oYWxmKTtcbiAgfVxuXG4gIC5nb3Z1ay1mb290ZXJfX21ldGEtaXRlbSB7XG4gICAgbWFyZ2luLXJpZ2h0OiBiYXNlLiRnb3Z1ay1ndXR0ZXItaGFsZjtcbiAgICBtYXJnaW4tYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoNSk7XG4gICAgbWFyZ2luLWxlZnQ6IGJhc2UuJGdvdnVrLWd1dHRlci1oYWxmO1xuICB9XG5cbiAgLmdvdnVrLWZvb3Rlcl9fbWV0YS1pdGVtLS1ncm93IHtcbiAgICBmbGV4OiAxOyAvLyBTdXBwb3J0OiBGbGV4Ym94XG4gICAgQG1lZGlhICN7YmFzZS5nb3Z1ay11bnRpbC1icmVha3BvaW50KHRhYmxldCl9IHtcbiAgICAgIGZsZXgtYmFzaXM6IDMyMHB4OyAvLyBTdXBwb3J0OiBGbGV4Ym94XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWZvb3Rlcl9fbGljZW5jZS1sb2dvIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiBiYXNlLmdvdnVrLXNwYWNpbmcoMik7XG4gICAgQG1lZGlhICN7YmFzZS5nb3Z1ay11bnRpbC1icmVha3BvaW50KGRlc2t0b3ApfSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoMyk7XG4gICAgfVxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgLy8gV29yayBhcm91bmQgU1ZHcyBub3QgaW5oZXJpdGluZyBjb2xvciBmcm9tIHBhcmVudCBpbiBmb3JjZWQgY29sb3IgbW9kZVxuICAgIC8vIChodHRwczovL2dpdGh1Yi5jb20vdzNjL2Nzc3dnLWRyYWZ0cy9pc3N1ZXMvNjMxMClcbiAgICBmb3JjZWQtY29sb3ItYWRqdXN0OiBhdXRvO1xuICB9XG5cbiAgLmdvdnVrLWZvb3Rlcl9fbGljZW5jZS1kZXNjcmlwdGlvbiB7XG4gICAgLy8gVGhpcyBtYWtlcyB0aGUgbGljZW5zZSBkZXNjcmlwdGlvbiByZWZsb3cgdW5kZXIgdGhlIGxvZ28gd2hlbiBzcGFjZSBnZXRzIHRvbyBuYXJyb3dcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgLy8gVGhpcyBwcmV2ZW50cyB0aGUgZGVzY3JpcHRpb24gZnJvbSBoYXZpbmcgb3JwaGFucyB3aGVuIHNwYWNlIGlzIG5hcnJvdyBlbm91Z2hcbiAgICAvLyBhbmQgbWFrZXMgdGhlIHRleHQgcmVmbG93IG1vcmUgbmljZWx5XG4gICAgdGV4dC13cmFwOiBiYWxhbmNlO1xuICB9XG5cbiAgLmdvdnVrLWZvb3Rlcl9fY29weXJpZ2h0LWxvZ28ge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstbGluay1zdHlsZS10ZXh0O1xuICB9XG5cbiAgLmdvdnVrLWZvb3Rlcl9fY29weXJpZ2h0LWxvZ286OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXRvcDogKCRnb3Z1ay1mb290ZXItY3Jlc3QtaW1hZ2UtaGVpZ2h0ICsgYmFzZS5nb3Z1ay1zcGFjaW5nKDIpKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBiYXNlLmdvdnVrLWltYWdlLXVybChcImdvdnVrLWNyZXN0LnN2Z1wiKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSAwJTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICRnb3Z1ay1mb290ZXItY3Jlc3QtaW1hZ2Utd2lkdGggJGdvdnVrLWZvb3Rlci1jcmVzdC1pbWFnZS1oZWlnaHQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAvLyBXaGVyZSBwb3NzaWJsZSB1c2UgdGhlIGNyZXN0IGFzIGEgbWFzayBpbnN0ZWFkLiBUaGlzIGxldHMgdXMgdXNlXG4gICAgLy8gY3VycmVudENvbG9yLCBpbmNyZWFzaW5nIHRoZSBjb250cmFzdCBvZiB0aGUgaW1hZ2UgYW5kIG1hdGNoaW5nIHRoZVxuICAgIC8vIHVzZXIncyBwcmVmZXJlZCBmb3JlZ3JvdW5kIGNvbG91ciBpbiBlLmcuIGZvcmNlZCBjb2xvcnMgbW9kZS5cbiAgICAvLyBXZSB0ZXN0IGZvciBgbWFzay1wb3NpdGlvbmAgcmF0aGVyIHRoYW4gYG1hc2staW1hZ2VgIGJlY2F1c2Ugb2YgYSBmYWxzZVxuICAgIC8vIHBvc2l0aXZlIGluIEVkZ2UgMTcuXG4gICAgQHN1cHBvcnRzICgoLXdlYmtpdC1tYXNrLXBvc2l0aW9uOiBpbml0aWFsKSBvciAobWFzay1wb3NpdGlvbjogaW5pdGlhbCkpIHtcbiAgICAgIGJhY2tncm91bmQ6IGN1cnJlbnRjb2xvcjtcbiAgICAgIC13ZWJraXQtbWFzay1pbWFnZTogYmFzZS5nb3Z1ay1pbWFnZS11cmwoXCJnb3Z1ay1jcmVzdC5zdmdcIik7XG4gICAgICAgICAgICAgIG1hc2staW1hZ2U6IGJhc2UuZ292dWstaW1hZ2UtdXJsKFwiZ292dWstY3Jlc3Quc3ZnXCIpO1xuICAgICAgLXdlYmtpdC1tYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgLXdlYmtpdC1tYXNrLXBvc2l0aW9uOiA1MCUgMCU7XG4gICAgICAgICAgICAgIG1hc2stcG9zaXRpb246IDUwJSAwJTtcbiAgICAgIC13ZWJraXQtbWFzay1zaXplOiAkZ292dWstZm9vdGVyLWNyZXN0LWltYWdlLXdpZHRoICRnb3Z1ay1mb290ZXItY3Jlc3QtaW1hZ2UtaGVpZ2h0O1xuICAgICAgICAgICAgICBtYXNrLXNpemU6ICRnb3Z1ay1mb290ZXItY3Jlc3QtaW1hZ2Utd2lkdGggJGdvdnVrLWZvb3Rlci1jcmVzdC1pbWFnZS1oZWlnaHQ7XG5cbiAgICAgIC8vIGN1cnJlbnRjb2xvciBkb2Vzbid0IHNlZW0gdG8gYmUgY29tcHV0ZWQgY29ycmVjdGx5IGluIGZvcmNlZCBjb2xvcnNcbiAgICAgIC8vIG1vZGUgc28gZm9yY2UgdGhlIGJhY2tncm91bmQgY29sb3IgdG8gbWF0Y2ggdGhlIHN5c3RlbSBsaW5rIGNvbG9yXG4gICAgICAvLyAobWF0Y2hpbmcgdGhlIHRleHQgaW4gdGhlIGxpbmspXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmt0ZXh0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1mb290ZXJfX2lubGluZS1saXN0IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IGJhc2UuZ292dWstc3BhY2luZygzKTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLmdvdnVrLWZvb3Rlcl9faW5saW5lLWxpc3Q6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC5nb3Z1ay1mb290ZXJfX21ldGEtY3VzdG9tIHtcbiAgICBtYXJnaW4tYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoNCk7XG4gIH1cblxuICAuZ292dWstZm9vdGVyX19tZXRhLWN1c3RvbTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLmdvdnVrLWZvb3Rlcl9faW5saW5lLWxpc3QtaXRlbSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogYmFzZS5nb3Z1ay1zcGFjaW5nKDMpO1xuICAgIG1hcmdpbi1ib3R0b206IGJhc2UuZ292dWstc3BhY2luZygxKTtcbiAgfVxuXG4gIC5nb3Z1ay1mb290ZXJfX2hlYWRpbmcge1xuICAgIG1hcmdpbi1ib3R0b206IGJhc2UuZ292dWstc3BhY2luZyg2KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogYmFzZS5nb3Z1ay1zcGFjaW5nKDQpO1xuXG4gICAgQG1lZGlhICN7YmFzZS5nb3Z1ay11bnRpbC1icmVha3BvaW50KHRhYmxldCl9IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoMik7XG4gICAgfVxuXG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRnb3Z1ay1mb290ZXItY29udGVudC1ib3JkZXI7XG4gIH1cblxuICAuZ292dWstZm9vdGVyX19uYXZpZ2F0aW9uIHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWNsZWFyZml4O1xuICAgIG1hcmdpbi1yaWdodDogLShiYXNlLiRnb3Z1ay1ndXR0ZXItaGFsZik7XG4gICAgbWFyZ2luLWxlZnQ6IC0oYmFzZS4kZ292dWstZ3V0dGVyLWhhbGYpO1xuICB9XG5cbiAgLmdvdnVrLWZvb3Rlcl9fc2VjdGlvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IGJhc2UuJGdvdnVrLWd1dHRlcjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB9XG5cbiAgLmdvdnVrLWZvb3Rlcl9fbGlzdCB7XG4gICAgY29sdW1uLWdhcDogYmFzZS4kZ292dWstZ3V0dGVyOyAvLyBTdXBwb3J0OiBDb2x1bW5zXG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIEBtZWRpYSAje2Jhc2UuZ292dWstZnJvbS1icmVha3BvaW50KGRlc2t0b3ApfSB7XG4gICAgLmdvdnVrLWZvb3Rlcl9fbGlzdC0tY29sdW1ucy0yIHtcbiAgICAgIGNvbHVtbi1jb3VudDogMjsgLy8gU3VwcG9ydDogQ29sdW1uc1xuICAgIH1cblxuICAgIC5nb3Z1ay1mb290ZXJfX2xpc3QtLWNvbHVtbnMtMyB7XG4gICAgICBjb2x1bW4tY291bnQ6IDM7IC8vIFN1cHBvcnQ6IENvbHVtbnNcbiAgICB9XG4gIH1cblxuICAuZ292dWstZm9vdGVyX19saXN0LWl0ZW0ge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNCwgXCJib3R0b21cIik7XG4gIH1cblxuICAuZ292dWstZm9vdGVyX19saXN0LWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4iLCIvLy8vXG4vLy8gQGdyb3VwIGNvbXBvbmVudHMvZ2VuZXJpYy1oZWFkZXJcbi8vLy9cblxuQHVzZSBcIi4uLy4uL2Jhc2VcIjtcblxuLy8vIFdpZHRoIG9mIHRyYW5zcGFyZW50IGJvdHRvbSBib3JkZXIgb2YgaGVhZGVyLlxuLy8vIFNldCB0byBwcm92aWRlIGEgdmlzdWFsIGJvcmRlciBpbiBmb3JjZWQgY29sb3VyIG1vZGVzXG4vLy9cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHByaXZhdGVcbiRoZWFkZXItZm9yY2VkLWNvbG91ci1ib3JkZXItd2lkdGg6IDFweDtcblxuLy8vIFNoYXJlZCBibG9jayBoZWFkZXIgc3R5bGVzLCB3aXRoIGF1dG9tYXRpYyBiYWNrZ3JvdW5kIHNldHRpbmdcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYmFja2dyb3VuZC1jb2xvdXIgLSBiYWNrZ3JvdW5kIGNvbG91ciBvZiB0aGUgaGVhZGVyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR0ZXh0LWNvbG91ciAtIHRleHQgY29sb3VyIG9mIHRoZSBoZWFkZXJcbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBibG9jay1zdHlsZXMoJGJhY2tncm91bmQtY29sb3VyOiBiYXNlLmdvdnVrLWNvbG91cihcImJsYWNrXCIpLCAkdGV4dC1jb2xvdXI6IGJhc2UuZ292dWstY29sb3VyKFwid2hpdGVcIikpIHtcbiAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1mb250KCRzaXplOiAxNiwgJGxpbmUtaGVpZ2h0OiAxKTtcblxuICAvLyBBZGQgYSB0cmFuc3BhcmVudCBib3R0b20gYm9yZGVyIGZvciBmb3JjZWQtY29sb3VyIG1vZGVzXG4gIGJvcmRlci1ib3R0b206ICRoZWFkZXItZm9yY2VkLWNvbG91ci1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgLS1nb3Z1ay10ZXh0LWNvbG91cjogI3skdGV4dC1jb2xvdXJ9O1xuICBjb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cih0ZXh0KTtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtY29sb3VyO1xuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcblxuICAgIC0tZ292dWstdGV4dC1jb2xvdXI6IGluaGVyaXQ7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8vIFNoYXJlZCBoZWFkZXIgZnVsbCB3aWR0aCBjb250YWluZXIgc3R5bGVzXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBmdWxsLXdpZHRoLWNvbnRhaW5lci1zdHlsZXMoKSB7XG4gIHBhZGRpbmc6IDAgYmFzZS4kZ292dWstZ3V0dGVyLWhhbGY7XG59XG5cbi8vLyBTaGFyZWQgaGVhZGVyIGxvZ28gY29udGFpbmVyIGVsZW1lbnQgc3R5bGVzLCB3aXRoIGF1dG9tYXRpbmcgcGFkZGluZyBzZXR0aW5nXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHBhZGRpbmctdG9wIC0gdG9wIHBhZGRpbmcgb2YgbG9nbyBjb250YWluZXJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHBhZGRpbmctYm90dG9tIC0gYm90dG9tIHBhZGRpbmcgb2YgbG9nbyBjb250YWluZXJcbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBsb2dvLXN0eWxlcyhcbiAgJHBhZGRpbmctdG9wOiAoXG4gICAgYmFzZS5nb3Z1ay1zcGFjaW5nKDMpXG4gICksXG4gICRwYWRkaW5nLWJvdHRvbTogKFxuICAgIGJhc2UuZ292dWstc3BhY2luZygzKVxuICApXG4pIHtcbiAgcGFkZGluZy10b3A6ICRwYWRkaW5nLXRvcDtcbiAgcGFkZGluZy1ib3R0b206ICRwYWRkaW5nLWJvdHRvbTtcbn1cblxuLy8vIFNoYXJlZCBoZWFkZXIgbG9nbyBsaW5rIGVsZW1lbnQgc3R5bGVzXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBsaW5rLXN0eWxlcyB7XG4gIC8vIEF2b2lkIHVzaW5nIHRoZSBgYmFzZS5nb3Z1ay1saW5rLWNvbW1vbmAgbWl4aW4gYmVjYXVzZSB0aGUgbGlua3MgaW4gdGhlXG4gIC8vIGhlYWRlciBnZXQgYSBzcGVjaWFsIHRyZWF0bWVudCwgYmVjYXVzZTpcbiAgLy9cbiAgLy8gLSB1bmRlcmxpbmVzIGFyZSBvbmx5IHZpc2libGUgb24gaG92ZXJcbiAgLy8gLSBhbGwgbGlua3MgZ2V0IGEgM3B4IHVuZGVybGluZSByZWdhcmRsZXNzIG9mIHRleHQgc2l6ZSwgYXMgdGhlcmUgYXJlXG4gIC8vICAgbXVsdGlwbGUgZ3JvdXBlZCBlbGVtZW50cyBjbG9zZSB0byBvbmUgYW5vdGhlciBhbmQgaGF2aW5nIHNsaWdodGx5XG4gIC8vICAgZGlmZmVyZW50IHVuZGVybGluZSB3aWR0aHMgbG9va3MgdW5iYWxhbmNlZFxuICAvL1xuICAvLyBGb250IHNpemUgbmVlZHMgdG8gYmUgc2V0IG9uIHRoZSBsaW5rIHNvIHRoYXQgdGhlIGJveCBzaXppbmcgaXMgY29ycmVjdFxuICAvLyBpbiBGaXJlZm94XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgbWFyZ2luLXJpZ2h0OiBiYXNlLmdvdnVrLXNwYWNpbmcoMik7XG4gIGZvbnQtc2l6ZTogMzBweDsgLy8gV2UgZG9uJ3QgaGF2ZSBhIG1peGluIHRoYXQgcHJvZHVjZXMgMzBweCBmb250IHNpemVcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gIEBpbmNsdWRlIGJhc2UuZ292dWstbGluay1zdHlsZS10ZXh0O1xuXG4gICY6bGluayxcbiAgJjp2aXNpdGVkIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmFjdGl2ZSB7XG4gICAgLy8gTmVnYXRlIHRoZSBhZGRlZCBib3JkZXJcbiAgICAkbGluay11bmRlcmxpbmUtdGhpY2tuZXNzOiAzcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogJGxpbmstdW5kZXJsaW5lLXRoaWNrbmVzcyAqIC0xO1xuICAgIGJvcmRlci1ib3R0b206ICRsaW5rLXVuZGVybGluZS10aGlja25lc3Mgc29saWQ7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICAvLyBSZW1vdmUgYW55IGJvcmRlcnMgdGhhdCBzaG93IHdoZW4gZm9jdXNlZCBhbmQgaG92ZXJlZC5cbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDA7XG5cbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWZvY3VzZWQtdGV4dDtcbiAgfVxuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgJjpsaW5rLFxuICAgICY6dmlzaXRlZCB7XG4gICAgICBjb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cih0ZXh0KTtcbiAgICB9XG5cbiAgICAvLyBEbyBub3QgYXBwZW5kIGxpbmsgaHJlZiB0byBHT1YuVUsgbGluayB3aGVuIHByaW50aW5nIChlLmcuICcoLyknKVxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgfVxuICB9XG59XG5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBzdHlsZXMge1xuICAuZ292dWstZ2VuZXJpYy1oZWFkZXIge1xuICAgIEBpbmNsdWRlIGJsb2NrLXN0eWxlcztcbiAgfVxuXG4gIC5nb3Z1ay1nZW5lcmljLWhlYWRlcl9fY29udGFpbmVyLS1mdWxsLXdpZHRoIHtcbiAgICBAaW5jbHVkZSBmdWxsLXdpZHRoLWNvbnRhaW5lci1zdHlsZXM7XG4gIH1cblxuICAuZ292dWstZ2VuZXJpYy1oZWFkZXJfX2xvZ28ge1xuICAgIEBpbmNsdWRlIGxvZ28tc3R5bGVzO1xuICB9XG5cbiAgLmdvdnVrLWdlbmVyaWMtaGVhZGVyX19ob21lcGFnZS1saW5rIHtcbiAgICBAaW5jbHVkZSBsaW5rLXN0eWxlcztcblxuICAgIC8vIEF1dG9tYXRpY2FsbHkgY2VudHJlIGFsaWduIGRpcmVjdCBjaGlsZCBlbGVtZW50cyB0byBoZWxwIHVzZXJzIHdpdGhcbiAgICAvLyBwb3NpdGlvbmluZyB0aGVpciBsb2dvIGFzc2V0cyBlZzogYXMgYHN2Z2BzIG9yIGBpbWdgc1xuICAgID4gKiB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIH1cbiAgfVxufVxuXG4iLCJAdXNlIFwiLi4vLi4vYmFzZVwiO1xuQHVzZSBcIi4uL2dlbmVyaWMtaGVhZGVyL21peGluXCIgYXMgZ2VuZXJpY0hlYWRlcjtcblxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIHN0eWxlcyB7XG4gICRsb2dvLWJvdHRvbS1tYXJnaW46IDJweDtcblxuICAuZ292dWstaGVhZGVyIHtcbiAgICBAaW5jbHVkZSBnZW5lcmljSGVhZGVyLmJsb2NrLXN0eWxlcyhcbiAgICAgICRiYWNrZ3JvdW5kLWNvbG91cjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihcImJyYW5kXCIpLFxuICAgICAgJHRleHQtY29sb3VyOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKFwiaW52ZXJzZS10ZXh0XCIpXG4gICAgKTtcbiAgfVxuXG4gIC5nb3Z1ay1oZWFkZXJfX2NvbnRhaW5lci0tZnVsbC13aWR0aCB7XG4gICAgQGluY2x1ZGUgZ2VuZXJpY0hlYWRlci5mdWxsLXdpZHRoLWNvbnRhaW5lci1zdHlsZXM7XG4gIH1cblxuICAuZ292dWstaGVhZGVyX19sb2dvIHtcbiAgICAvLyBNYWdpYyBudW1iZXJzLCBzZXQgcGFkZGluZyB0byB2ZXJ0aWNhbGx5IGNlbnRyZSBhbGlnbiB0aGUgbG9nb1xuICAgIEBpbmNsdWRlIGdlbmVyaWNIZWFkZXIubG9nby1zdHlsZXMoJHBhZGRpbmctdG9wOiAxNnB4LCAkcGFkZGluZy1ib3R0b206IDE0cHggLSAkbG9nby1ib3R0b20tbWFyZ2luKTtcbiAgfVxuXG4gIC5nb3Z1ay1oZWFkZXJfX2hvbWVwYWdlLWxpbmsge1xuICAgIEBpbmNsdWRlIGdlbmVyaWNIZWFkZXIubGluay1zdHlsZXM7XG5cbiAgICAvLyBSZW1vdmUgd29yZC1zcGFjaW5nIGZyb20gd2l0aGluIHRoZSBsb2dvIHNvIHdlIGNhbiBpZ25vcmVcbiAgICAvLyB3aGl0ZXNwYWNlIGNoYXJhY3RlcnMgaW4gdGhlIEhUTUxcbiAgICB3b3JkLXNwYWNpbmc6IGJhc2UuZ292dWstcHgtdG8tcmVtKC02cHgpO1xuICAgIC8vIFJlc2V0IHdvcmQtc3BhY2luZyBmb3IgY2hpbGQgZWxlbWVudHNcbiAgICA+ICoge1xuICAgICAgd29yZC1zcGFjaW5nOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1oZWFkZXJfX2xvZ290eXBlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTNweDtcblxuICAgIC8vIEFkZCBhIGdhcCBhZnRlciB0aGUgbG9nbyBpbiBjYXNlIGl0J3MgZm9sbG93ZWQgYnkgYSBwcm9kdWN0IG5hbWUuIFRoaXNcbiAgICAvLyBnZXRzIHJlbW92ZWQgbGF0ZXIgaWYgdGhlIGxvZ290eXBlIGlzIGEgOmxhc3QtY2hpbGQuXG4gICAgbWFyZ2luLXJpZ2h0OiBiYXNlLmdvdnVrLXB4LXRvLXJlbSg3cHgpOyAvLyAxICdkb3QnXG4gICAgLy8gQWRkIGJvdHRvbSBtYXJnaW4gdG8gc3BhY2UgUHJvZHVjdCBuYW1lIG9uIHNtYWxsIHZpZXdwb3J0c1xuICAgIG1hcmdpbi1ib3R0b206ICRsb2dvLWJvdHRvbS1tYXJnaW47XG4gICAgZmlsbDogY3VycmVudGNvbG9yO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cbiAgICAvLyBQcmV2ZW50IHJlYWRhYmlsaXR5IGJhY2twbGF0ZSBmcm9tIG9ic2N1cmluZyB1bmRlcmxpbmUgaW4gV2luZG93cyBIaWdoXG4gICAgLy8gQ29udHJhc3QgTW9kZVxuICAgIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgICBjb2xvcjogbGlua3RleHQ7XG4gICAgICBmb3JjZWQtY29sb3ItYWRqdXN0OiBub25lO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSB0aGUgZ2FwIGFmdGVyIHRoZSBsb2dvIGlmIHRoZXJlJ3Mgbm8gcHJvZHVjdCBuYW1lIHRvIGtlZXAgaG92ZXJcbiAgICAvLyBhbmQgZm9jdXMgc3RhdGVzIG5lYXRcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIENvbG91ciBpbiB0aGUgRG90XG4gIC5nb3Z1ay1sb2dvLWRvdCB7XG4gICAgZmlsbDogYmFzZS5nb3Z1ay1jb2xvdXIoXCJ0ZWFsXCIsIFwiYWNjZW50XCIpO1xuXG4gICAgLy8gT3ZlcnJpZGUgRG90IGNvbG91ciB3aGVuIHByaW50aW5nXG4gICAgQG1lZGlhIHByaW50IHtcbiAgICAgIGZpbGw6IGN1cnJlbnRjb2xvcjtcbiAgICB9XG5cbiAgICAvLyBPdmVycmlkZSBEb3QgY29sb3VyIG9uIGZvcmNlZCBjb2xvdXJzIG1vZGVcbiAgICBAbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAgICAgZmlsbDogY3VycmVudGNvbG9yO1xuICAgIH1cblxuICAgIC8vIE92ZXJyaWRlIERvdCBjb2xvdXIgb24gZm9jdXNcbiAgICA6Zm9jdXMgJiB7XG4gICAgICBmaWxsOiBjdXJyZW50Y29sb3I7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWhlYWRlcl9fcHJvZHVjdC1uYW1lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtdGFibGU7XG5cbiAgICAvLyBSZW1vdmUgMXB4IGZyb20gdGhlIGJvdHRvbSB0byBhY2NvdW50IGZvciB0aGUgZm9udC1zaXplIGJlaW5nIDFweFxuICAgIC8vIGxhcmdlciB0aGFuIHRoZSBsb2dvIGhlaWdodC5cbiAgICBtYXJnaW4tYm90dG9tOiBiYXNlLmdvdnVrLXB4LXRvLXJlbSgtMXB4KTtcblxuICAgIC8vIE1hZ2ljIG51bWJlciBmb250LXNpemUgdGhhdCB2aXN1YWxseSBhbGlnbnMgd2l0aCBHT1YuVUsgbG9nby5cbiAgICAvLyBBbHNvIHN0b3BzIHJlZHVjaW5nIHRoZSBwcm9kdWN0IG5hbWUgc2l6ZSBvbiBuYXJyb3cgc2NyZWVuc1xuICAgIGZvbnQtc2l6ZTogYmFzZS5nb3Z1ay1weC10by1yZW0oMzFweCk7XG5cbiAgICAvLyBSZWR1Y2UgbGV0dGVyIHNwYWNpbmdcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDE1ZW07XG5cbiAgICAvLyBBbGlnbiB2ZXJ0aWNhbGx5IHdpdGggbG9nbyB3aGVuIG5vdCB3cmFwcGVkXG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcblxuICAgIC8vIFByZXZlbnQgZm9yY2VkIGNvbG91ciBtb2RlcyBmcm9tIGFwcGx5aW5nIGEgYmFja2dyb3VuZCBjb2xvdXIgYmVoaW5kXG4gICAgLy8gdGhlIHByb2R1Y3QgbmFtZSwgd2hpY2ggY3V0cyBvZmYgdGhlIHVuZGVybGluZSB0aGF0IGFwcGVhcnMgb24gaG92ZXIuXG4gICAgZm9yY2VkLWNvbG9yLWFkanVzdDogbm9uZTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgICAgIGNvbG9yOiBMaW5rVGV4dDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgLmdvdnVrLWhlYWRlcl9fcHJvZHVjdC1uYW1lIHtcbiAgICAgIC8vIEZpeCBwcm9kdWN0IG5hbWUgYWxpZ25tZW50IGluIEZpcmVmb3ggd2hlbiBwcmludGluZ1xuICAgICAgQC1tb3otZG9jdW1lbnQgdXJsLXByZWZpeCgpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4iLCJAdXNlIFwiLi4vLi4vYmFzZVwiO1xuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gc3R5bGVzIHtcbiAgLmdvdnVrLWluc2V0LXRleHQge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udCgkc2l6ZTogMTkpO1xuXG4gICAgcGFkZGluZzogYmFzZS5nb3Z1ay1zcGFjaW5nKDMpO1xuXG4gICAgLy8gTWFyZ2luIHRvcCBpbnRlbmRlZCB0byBjb2xsYXBzZVxuICAgIC8vIFRoaXMgYWRkcyBhbiBhZGRpdGlvbmFsIDEwcHggdG8gdGhlIHBhcmFncmFwaCBhYm92ZVxuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNiwgXCJ0b3BcIik7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig2LCBcImJvdHRvbVwiKTtcblxuICAgIGNsZWFyOiBib3RoO1xuXG4gICAgYm9yZGVyLWxlZnQ6IGJhc2UuJGdvdnVrLWJvcmRlci13aWR0aC13aWRlIHNvbGlkO1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGJvcmRlcik7XG4gICAgY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIodGV4dCk7XG5cbiAgICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cblxuICAgID4gOm9ubHktY2hpbGQsXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuXG4iLCJAdXNlIFwic2FzczptYXRoXCI7XG5cbkB1c2UgXCIuLi8uLi9iYXNlXCI7XG5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBzdHlsZXMge1xuICAuZ292dWstbm90aWZpY2F0aW9uLWJhbm5lciB7XG4gICAgLS1fZ292dWstbm90aWZpY2F0aW9uLWJhbm5lci1jb2xvdXI6ICN7YmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihicmFuZCl9O1xuICAgIC0tX2dvdnVrLW5vdGlmaWNhdGlvbi1iYW5uZXItdGl0bGUtdGV4dC1jb2xvdXI6ICN7YmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihpbnZlcnNlLXRleHQpfTtcblxuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udCgkc2l6ZTogMTkpO1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oOCwgXCJib3R0b21cIik7XG5cbiAgICBib3JkZXI6IGJhc2UuJGdvdnVrLWJvcmRlci13aWR0aCBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLV9nb3Z1ay1ub3RpZmljYXRpb24tYmFubmVyLWNvbG91cik7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IGJhc2UuJGdvdnVrLWZvY3VzLXdpZHRoIHNvbGlkO1xuICAgICAgb3V0bGluZS1jb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihmb2N1cyk7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLW5vdGlmaWNhdGlvbi1iYW5uZXJfX2hlYWRlciB7XG4gICAgcGFkZGluZzogMnB4IGJhc2UuZ292dWstc3BhY2luZygzKSBiYXNlLmdvdnVrLXNwYWNpbmcoMSk7XG5cbiAgICAvLyBFbnN1cmVzIHRoZSBub3RpZmljYXRpb24gaGVhZGVyIGFwcGVhcnMgc2VwYXJhdGUgdG8gdGhlIG5vdGlmaWNhdGlvbiBib2R5XG4gICAgLy8gdGV4dCBpbiBoaWdoIGNvbnRyYXN0IG1vZGVcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgICBjb2xvcjogdmFyKC0tX2dvdnVrLW5vdGlmaWNhdGlvbi1iYW5uZXItdGl0bGUtdGV4dC1jb2xvdXIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLV9nb3Z1ay1ub3RpZmljYXRpb24tYmFubmVyLWNvbG91cik7XG5cbiAgICBAbWVkaWEgI3tiYXNlLmdvdnVrLWZyb20tYnJlYWtwb2ludCh0YWJsZXQpfSB7XG4gICAgICBwYWRkaW5nOiAycHggYmFzZS5nb3Z1ay1zcGFjaW5nKDQpIGJhc2UuZ292dWstc3BhY2luZygxKTtcbiAgICB9XG4gIH1cblxuICAuZ292dWstbm90aWZpY2F0aW9uLWJhbm5lcl9fdGl0bGUge1xuICAgIC8vIFNldCB0aGUgc2l6ZSBhZ2FpbiBiZWNhdXNlIHRoaXMgZWxlbWVudCBpcyBhIGhlYWRpbmcgYW5kIHRoZSB1c2VyIGFnZW50XG4gICAgLy8gZm9udCBzaXplIG92ZXJyaWRlcyB0aGUgaW5oZXJpdGVkIGZvbnQgc2l6ZVxuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udC1zaXplKCRzaXplOiAxOSk7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1ib2xkO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLmdvdnVrLW5vdGlmaWNhdGlvbi1iYW5uZXJfX2NvbnRlbnQge1xuICAgICRwYWRkaW5nLXRhYmxldDogYmFzZS5nb3Z1ay1zcGFjaW5nKDQpO1xuICAgIHBhZGRpbmc6IGJhc2UuZ292dWstc3BhY2luZygzKTtcblxuICAgIGNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHRleHQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoYm9keS1iYWNrZ3JvdW5kKTtcblxuICAgIEBtZWRpYSAje2Jhc2UuZ292dWstZnJvbS1icmVha3BvaW50KHRhYmxldCl9IHtcbiAgICAgIHBhZGRpbmc6ICRwYWRkaW5nLXRhYmxldDtcbiAgICB9XG5cbiAgICAvLyBXcmFwIGNvbnRlbnQgYXQgdGhlIHNhbWUgcGxhY2UgdGhhdCBhIDIvMyBncmlkIGNvbHVtbiBlbmRzLCB0byBtYWludGFpblxuICAgIC8vIHNob3J0ZXIgbGluZS1sZW5ndGhzIHdoZW4gdGhlIG5vdGlmaWNhdGlvbiBiYW5uZXIgaXMgZnVsbCB3aWR0aFxuICAgID4gKiB7XG4gICAgICAvLyBXaGVuIGVsZW1lbnRzIGhhdmUgdGhlaXIgb3duIHBhZGRpbmcgKGxpa2UgbGlzdHMpLCBpbmNsdWRlIHRoZSBwYWRkaW5nXG4gICAgICAvLyBpbiB0aGUgbWF4LXdpZHRoIGNhbGN1bGF0aW9uXG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgICAvLyBDYWxjdWxhdGUgdGhlIGludGVybmFsIHdpZHRoIG9mIGEgdHdvLXRoaXJkcyBjb2x1bW4uLi5cbiAgICAgICR0d28tY29sLXdpZHRoOiBtYXRoLmRpdihiYXNlLiRnb3Z1ay1wYWdlLXdpZHRoICogMiwgMykgLSBtYXRoLmRpdihiYXNlLiRnb3Z1ay1ndXR0ZXIgKiAxLCAzKTtcblxuICAgICAgLy8gLi4uYW5kIHRoZW4gZmFjdG9yIGluIHRoZSBsZWZ0IGJvcmRlciBhbmQgcGFkZGluZ1xuICAgICAgJGJhbm5lci1leHRlcmlvcjogKCRwYWRkaW5nLXRhYmxldCArIGJhc2UuJGdvdnVrLWJvcmRlci13aWR0aCk7XG4gICAgICBtYXgtd2lkdGg6ICR0d28tY29sLXdpZHRoIC0gJGJhbm5lci1leHRlcmlvcjtcbiAgICB9XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLW5vdGlmaWNhdGlvbi1iYW5uZXJfX2hlYWRpbmcge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udC1zaXplKCRzaXplOiAyNCk7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1ib2xkO1xuXG4gICAgbWFyZ2luOiAwIDAgYmFzZS5nb3Z1ay1zcGFjaW5nKDMpO1xuXG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC5nb3Z1ay1ub3RpZmljYXRpb24tYmFubmVyX19saW5rIHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWxpbmstY29tbW9uO1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstbGluay1zdHlsZS1uby12aXNpdGVkLXN0YXRlO1xuICB9XG5cbiAgLmdvdnVrLW5vdGlmaWNhdGlvbi1iYW5uZXItLXN1Y2Nlc3Mge1xuICAgIC0tX2dvdnVrLW5vdGlmaWNhdGlvbi1iYW5uZXItY29sb3VyOiAje2Jhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoc3VjY2Vzcyl9O1xuXG4gICAgLmdvdnVrLW5vdGlmaWNhdGlvbi1iYW5uZXJfX2xpbmsge1xuICAgICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1saW5rLXN0eWxlLXN1Y2Nlc3M7XG4gICAgfVxuICB9XG59XG5cbiIsIkB1c2UgXCIuLi8uLi9iYXNlXCI7XG5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBzdHlsZXMge1xuICAvLyBGbGV4Ym94IGVuaGFuY2VtZW50IGZvciBzbWFsbCBzY3JlZW4gdmlzdWFsIGRlc2lnblxuICAvLyBGYWxscyBiYWNrIHRvIGEgZmxvYXQ6IGxlZnQgbGF5b3V0IG9uIG5vbi1mbGV4IGJyb3dzZXJzXG4gIC5nb3Z1ay1wYWdpbmF0aW9uIHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDYsIFwiYm90dG9tXCIpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIEBtZWRpYSAje2Jhc2UuZ292dWstZnJvbS1icmVha3BvaW50KHRhYmxldCl9IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICB9XG4gIH1cblxuICAuZ292dWstcGFnaW5hdGlvbl9fbGlzdCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIC5nb3Z1ay1wYWdpbmF0aW9uX19pdGVtLFxuICAuZ292dWstcGFnaW5hdGlvbl9fbmV4dCxcbiAgLmdvdnVrLXBhZ2luYXRpb25fX3ByZXYge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udCgxOSk7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWluLXdpZHRoOiA0NXB4O1xuICAgIG1pbi1oZWlnaHQ6IDQ1cHg7XG4gICAgcGFkZGluZzogYmFzZS5nb3Z1ay1zcGFjaW5nKDIpIGJhc2UuZ292dWstc3BhY2luZygzKTtcbiAgICBmbG9hdDogbGVmdDsgLy8gRmxvYXQgaXMgaWdub3JlZCBpZiBmbGV4IGlzIGFjdGl2ZSBmb3IgcHJldi9uZXh0IGxpbmtzXG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGJhc2UuZ292dWstY29sb3VyKFwiYmxhY2tcIiwgJHZhcmlhbnQ6IFwidGludC05NVwiKTtcbiAgICB9XG4gIH1cblxuICAuZ292dWstcGFnaW5hdGlvbl9faXRlbSB7XG4gICAgLy8gSGlkZSBpdGVtcyBvbiBzbWFsbCBzY3JlZW5zIGV4Y2VwdCB0aGUgcHJldi9uZXh0IGl0ZW1zLFxuICAgIC8vIG5vbi1saW5rIGl0ZW1zIGFuZCB0aGUgZmlyc3QgYW5kIGxhc3QgaXRlbXNcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgLy8gQ2VudGVyIGFsaWduIHBhZ2luYXRpb24gbGlua3MgaW4gdGhlaXIgcGFyZW50IGxpc3QgaXRlbSBzbyB0aGF0IHRoZXlcbiAgICAvLyB2aXN1YWxseSBzaXQgaW4gdGhlIG1pZGRsZSBvZiB0aGVpciB0b3VjaCBhcmVhXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQG1lZGlhICN7YmFzZS5nb3Z1ay1mcm9tLWJyZWFrcG9pbnQodGFibGV0KX0ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXBhZ2luYXRpb25fX3ByZXYsXG4gIC5nb3Z1ay1wYWdpbmF0aW9uX19uZXh0IHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXR5cG9ncmFwaHktd2VpZ2h0LWJvbGQ7XG5cbiAgICAvLyBVc2UgZmxleCB0byBhdm9pZCBleHRyYSBzcGFjZSBiZWluZyBpbnRyb2R1Y2VkIHdoZW4gd2hpdGVzcGFjZSBleGlzdHNcbiAgICAvLyBiZXR3ZWVuIHRoZSBhcnJvdyBzdmcgYW5kIHRoZSBsaW5rIHRleHRcbiAgICAuZ292dWstcGFnaW5hdGlvbl9fbGluayB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gIH1cblxuICAuZ292dWstcGFnaW5hdGlvbl9fcHJldiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLmdvdnVrLXBhZ2luYXRpb25fX25leHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cblxuICAvLyBPbmx5IHNob3cgZmlyc3QsIGxhc3QgYW5kIG5vbi1saW5rIGl0ZW1zIG9uIG1vYmlsZVxuICAuZ292dWstcGFnaW5hdGlvbl9faXRlbS0tY3VycmVudCxcbiAgLmdvdnVrLXBhZ2luYXRpb25fX2l0ZW0tLWVsbGlwc2lzLFxuICAuZ292dWstcGFnaW5hdGlvbl9faXRlbTpmaXJzdC1jaGlsZCxcbiAgLmdvdnVrLXBhZ2luYXRpb25fX2l0ZW06bGFzdC1jaGlsZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuZ292dWstcGFnaW5hdGlvbl9faXRlbS0tY3VycmVudCB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1ib2xkO1xuICAgIG91dGxpbmU6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGxpbmspO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGxpbmspO1xuICAgIH1cblxuICAgIC5nb3Z1ay1wYWdpbmF0aW9uX19saW5rIHtcbiAgICAgIEBpbmNsdWRlIGJhc2UuZ292dWstbGluay1zdHlsZS1pbnZlcnNlO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1wYWdpbmF0aW9uX19pdGVtLS1lbGxpcHNpcyB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1ib2xkO1xuICAgIGNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHNlY29uZGFyeS10ZXh0KTtcblxuICAgIC8vIFJlbW92ZSBob3ZlciBzdGF0ZSBmb3IgZWxsaXBzaXMgaXRlbXMgYXMgdGhleSBkb24ndCBjb250YWluIGxpbmtzXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAuZ292dWstcGFnaW5hdGlvbl9fbGluayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWluLXdpZHRoOiBiYXNlLmdvdnVrLXNwYWNpbmcoMyk7XG5cbiAgICAvLyBJbmNyZWFzZSB0aGUgdG91Y2ggYXJlYSBmb3IgdGhlIGxpbmsgdG8gdGhlIHBhcmVudCBlbGVtZW50LlxuICAgIEBtZWRpYSBzY3JlZW4ge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBZGQgbGluayBob3ZlciBkZWNvcmF0aW9uIHRvIHByZXYvbmV4dCB0ZXh0IGlmIG5vIGxhYmVsIHByZXNlbnQgb25cbiAgICAvLyBwcmV2L25leHQgb25seSBtb2RlLCAgc28gdGhhdCB3ZSBoYXZlIGEgaG92ZXIgc3RhdGUgaW4gYWxsIGNhc2VzXG4gICAgJjpob3ZlcixcbiAgICAmOmFjdGl2ZSB7XG4gICAgICAuZ292dWstcGFnaW5hdGlvbl9fbGluay10aXRsZS0tZGVjb3JhdGVkIHtcbiAgICAgICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1saW5rLWRlY29yYXRpb247XG4gICAgICB9XG5cbiAgICAgIC5nb3Z1ay1wYWdpbmF0aW9uX19saW5rLWxhYmVsLFxuICAgICAgLmdvdnVrLXBhZ2luYXRpb25fX2xpbmstdGl0bGUtLWRlY29yYXRlZCB7XG4gICAgICAgIEBpbmNsdWRlIGJhc2UuZ292dWstbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgLmdvdnVrLXBhZ2luYXRpb25fX2ljb24ge1xuICAgICAgICBjb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihmb2N1cy10ZXh0KTtcbiAgICAgIH1cblxuICAgICAgLmdvdnVrLXBhZ2luYXRpb25fX2xpbmstbGFiZWwge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC5nb3Z1ay1wYWdpbmF0aW9uX19saW5rLXRpdGxlLS1kZWNvcmF0ZWQge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXBhZ2luYXRpb25fX2xpbmstdGl0bGUge1xuICAgIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IGluaGVyaXQ7XG4gIH1cblxuICAuZ292dWstcGFnaW5hdGlvbl9fbGluay1sYWJlbCB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1yZWd1bGFyO1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstbGluay1kZWNvcmF0aW9uO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuXG4gIC5nb3Z1ay1wYWdpbmF0aW9uX19pY29uIHtcbiAgICAvLyBTZXQgc2l6ZSB1c2luZyByZW1zIHRvIG1ha2UgdGhlIGljb24gc2NhbGUgd2l0aCB0ZXh0XG4gICAgd2lkdGg6IGJhc2UuZ292dWstcHgtdG8tcmVtKDE1cHgpO1xuICAgIGhlaWdodDogYmFzZS5nb3Z1ay1weC10by1yZW0oMTNweCk7XG4gICAgY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoc2Vjb25kYXJ5LXRleHQpO1xuICAgIGZpbGw6IGN1cnJlbnRjb2xvcjtcbiAgICBmb3JjZWQtY29sb3ItYWRqdXN0OiBhdXRvO1xuICB9XG5cbiAgLmdvdnVrLXBhZ2luYXRpb25fX2ljb24tLXByZXYge1xuICAgIG1hcmdpbi1yaWdodDogYmFzZS5nb3Z1ay1zcGFjaW5nKDMpO1xuICB9XG5cbiAgLmdvdnVrLXBhZ2luYXRpb25fX2ljb24tLW5leHQge1xuICAgIG1hcmdpbi1sZWZ0OiBiYXNlLmdvdnVrLXNwYWNpbmcoMyk7XG4gIH1cblxuICAvLyBCbG9jayBtb2RlIC0gcG9zaXRpb24gcHJldmlvdXMgYW5kIG5leHQgbGlua3MgYWJvdmUgYW5kIGJlbG93IG51bWJlcnNcbiAgLmdvdnVrLXBhZ2luYXRpb24tLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIC5nb3Z1ay1wYWdpbmF0aW9uX19uZXh0LFxuICAgIC5nb3Z1ay1wYWdpbmF0aW9uX19wcmV2IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIGZsb2F0OiBub25lO1xuXG4gICAgICAuZ292dWstcGFnaW5hdGlvbl9fbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZ292dWstcGFnaW5hdGlvbl9fbmV4dCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiBiYXNlLmdvdnVrLXNwYWNpbmcoMyk7XG4gICAgfVxuXG4gICAgLy8gT25seSBhcHBseSBhIGJvcmRlciBiZXR3ZWVuIHByZXYgYW5kIG5leHQgaWYgYm90aCBhcmUgcHJlc2VudFxuICAgIC5nb3Z1ay1wYWdpbmF0aW9uX19wcmV2ICsgLmdvdnVrLXBhZ2luYXRpb25fX25leHQge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihib3JkZXIpO1xuICAgIH1cblxuICAgIC8vIFNldCB0aGUgYWZ0ZXIgcHNldWRvIGVsZW1lbnQgdG8gYSBibG9jayB3aGljaCBtYWtlcyB0aGUgdGl0bGUgdmlzdWFsbHlcbiAgICAvLyBkaXNwbGF5IGFzIGJsb2NrIGxldmVsIHdoaWxzdCBwcm9ncmFtbWF0aWNhbGx5IGJlaW5nIGlubGluZS4gV2UgZG8gdGhpc1xuICAgIC8vIHRvIGdldCBhcm91bmQgYW4gTlZEQSBxdWlyayB3aGVyZSBhZGphY2VudCBibG9jayBsZXZlbCBlbGVtZW50cyBhcmVcbiAgICAvLyBhbHdheXMgcmVhZCBvdXQgc2VwYXJhdGVseVxuICAgIC5nb3Z1ay1wYWdpbmF0aW9uX19saW5rLXRpdGxlOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLmdvdnVrLXBhZ2luYXRpb25fX2xpbmsge1xuICAgICAgcGFkZGluZy1sZWZ0OiBiYXNlLmdvdnVrLXNwYWNpbmcoNik7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAmOm5vdCg6Zm9jdXMpIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5nb3Z1ay1wYWdpbmF0aW9uX19pY29uIHtcbiAgICAgIC8vIFRoaXMgbWFnaWMgbnVtYmVyIGlzIGJyb3VnaHQgdG8geW91IGJ5IHRoZSBmb2xsb3dpbmcgZXF1YXRpb246XG4gICAgICAvLyAoKGxpbmVIZWlnaHQg4oiSIGFycm93SGVpZ2h0KSDDtyAyKSDDtyBmb250U2l6ZVxuICAgICAgLy8gKCgyNSDiiJIgMTMpIMO3IDIpIMO3IDE5ID0gMC4zMjZlbVxuICAgICAgLy9cbiAgICAgIC8vIFRoaXMgY291bGQgaGF2ZSBiZWVuIGRvbmUgcHJvZ3JhbW1hdGljYWxseSBidXQgd2UgZG9uJ3QgaGF2ZSBmdW5jdGlvbnNcbiAgICAgIC8vIGZvciBncmFiYmluZyB0aGUgbGluZS1oZWlnaHQgb2Ygc3BlY2lmaWMgdHlwb2dyYXBoeSBzaXplcyBqdXN0IHlldC5cbiAgICAgIG1hcmdpbi10b3A6IDAuMzI2ZW07XG4gICAgICBtYXJnaW4tbGVmdDogYmFzZS5nb3Z1ay1zcGFjaW5nKDYpICogLTE7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG4gIH1cbn1cblxuIiwiQHVzZSBcIi4uLy4uL2Jhc2VcIjtcblxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIHN0eWxlcyB7XG4gIC5nb3Z1ay1wYW5lbCB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1mb250KCRzaXplOiAzNik7XG5cbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgbWFyZ2luLWJvdHRvbTogYmFzZS5nb3Z1ay1zcGFjaW5nKDMpO1xuICAgIHBhZGRpbmc6IGJhc2UuZ292dWstc3BhY2luZyg3KSAtIGJhc2UuJGdvdnVrLWJvcmRlci13aWR0aDtcblxuICAgIGJvcmRlcjogYmFzZS4kZ292dWstYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHRleHQpO1xuXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQG1lZGlhICN7YmFzZS5nb3Z1ay11bnRpbC1icmVha3BvaW50KHRhYmxldCl9IHtcbiAgICAgIHBhZGRpbmc6IGJhc2UuZ292dWstc3BhY2luZyg0KSAtIGJhc2UuJGdvdnVrLWJvcmRlci13aWR0aDtcblxuICAgICAgLy8gU3VwcG9ydCBJRSAoYXV0b3ByZWZpeGVyIGRvZXNuJ3QgYWRkIHRoaXMgYXMgaXQncyBub3QgYSBwcmVmaXgpXG4gICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgICAgIC8vIFRoaXMgaXMgYW4gaWYtYWxsLWVsc2UtZmFpbHMgYXR0ZW1wdCB0byBzdG9wIGxvbmcgd29yZHMgZnJvbVxuICAgICAgLy8gb3ZlcmZsb3dpbmcgdGhlIGNvbnRhaW5lciBvbiB2ZXJ5IG5hcnJvdyB2aWV3cG9ydHMgYnkgZm9yY2luZyB0aGVtIHRvXG4gICAgICAvLyBicmVhayBhbmQgd3JhcCBpbnN0ZWFkLiBUaGlzIG92ZXJmbG93aW5nIGlzIG1vcmUgbGlrZWx5IHRvIGhhcHBlbiB3aGVuXG4gICAgICAvLyB1c2VyIGluY3JlYXNlcyB0ZXh0IHNpemUgb24gYSBtb2JpbGUgZWcuIHVzaW5nIGlPUyBTYWZhcmkgdGV4dCByZXNpemVcbiAgICAgIC8vIGNvbnRyb2xzLlxuICAgICAgLy9cbiAgICAgIC8vIFRoZSBvdmVyZmxvd2luZyBpcyBhIHBhcnRpY3VsYXIgcHJvYmxlbSB3aXRoIHRoZSBwYW5lbCBjb21wb25lbnQgc2luY2VcbiAgICAgIC8vIGl0IHVzZXMgd2hpdGUgdGV4dDogd2hlbiB0aGUgdGV4dCBvdmVyZmxvd3MgdGhlIGNvbnRhaW5lciwgaXQgaXNcbiAgICAgIC8vIGludmlzaWJsZSBvbiB0aGUgd2hpdGUgKHBhZ2UpIGJhY2tncm91bmQuIFdoZW4gdGhlIHRleHQgaW4gb3VyIG90aGVyXG4gICAgICAvLyBjb21wb25lbnRzIG92ZXJmbG93LCB0aGUgdXNlciBtaWdodCBoYXZlIHRvIHNjcm9sbCBob3Jpem9udGFsbHkgdG8gdmlld1xuICAgICAgLy8gaXQgYnV0IHRoZSB0aGUgdGV4dCByZW1haW5zIGxlZ2libGUuXG4gICAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1wYW5lbF9fdGl0bGUge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udC1zaXplKCRzaXplOiA0OCk7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1ib2xkO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogYmFzZS5nb3Z1ay1zcGFjaW5nKDYpO1xuICB9XG5cbiAgLy8gUmVtb3ZlIGJvdHRvbSBzcGFjaW5nIGZyb20gYW55dGhpbmcgYXQgdGhlIGVuZCBvZiB0aGUgUGFuZWwncyBjb250ZW50XG4gIC8vIHRvIHN0b3AgdGhlIFBhbmVsJ3MgcGFkZGluZyBzcGFjaW5nIGZyb20gYmVjb21pbmcgdG9vIGxhcmdlLlxuICAuZ292dWstcGFuZWxfX3RpdGxlOmxhc3QtY2hpbGQsXG4gIC5nb3Z1ay1wYW5lbF9fYm9keSA+IDpsYXN0LWNoaWxkLFxuICAuZ292dWstcGFuZWxfX2FjdGlvbnMgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC8vIE9uIGxhcmdlciBzY3JlZW5zIGlmIHRoZSBQYW5lbCBhY3Rpb25zIGhhdmUgYSBidXR0b24gZ3JvdXAsXG4gIC8vIHRoZW4gd2Ugd2FudCB0byBhZGp1c3QgdGhlIHNwYWNpbmcgYSBiaXQgdG8gYXZvaWQgdGhlIGJ1dHRvbiBncm91cFxuICAvLyBtYWtpbmcgdGhlIFBhbmVsJ3MgcGFkZGluZyBzcGFjaW5nIGJlaW5nIHRvbyBsYXJnZS5cbiAgQG1lZGlhICN7YmFzZS5nb3Z1ay1mcm9tLWJyZWFrcG9pbnQodGFibGV0KX0ge1xuICAgIC5nb3Z1ay1wYW5lbF9fYWN0aW9ucyA+IC5nb3Z1ay1idXR0b24tZ3JvdXA6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMSAqIGJhc2UuZ292dWstc3BhY2luZygyKTtcbiAgICB9XG4gIH1cblxuICAvLyBXaGVuIHRoZSBwYW5lbCBzaG93cyBzb21lIGFjdGlvbnMsIG1ha2Ugc3VyZSB0aGV5IGhhdmUgc29tZSBzcGFjaW5nXG4gIC8vIGZyb20gdGhlIHBhbmVsJ3MgY29udGVudFxuICAuZ292dWstcGFuZWxfX2JvZHk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogYmFzZS5nb3Z1ay1zcGFjaW5nKDcpO1xuICB9XG5cbiAgLmdvdnVrLXBhbmVsLS1jb25maXJtYXRpb24ge1xuICAgIC0tZ292dWstdGV4dC1jb2xvdXI6ICN7YmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihpbnZlcnNlLXRleHQpfTtcbiAgICBiYWNrZ3JvdW5kOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHN1Y2Nlc3MpO1xuICB9XG5cbiAgLmdvdnVrLXBhbmVsLS1pbnRlcnJ1cHRpb24ge1xuICAgIC0tZ292dWstdGV4dC1jb2xvdXI6ICN7YmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihpbnZlcnNlLXRleHQpfTtcbiAgICBiYWNrZ3JvdW5kOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGJyYW5kKTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgLy8gU21hbGxlciB0aXRsZSB0byBnbyBhbG9uZ3NpZGUgc21hbGxlciBib2R5IHRleHQuXG4gICAgLmdvdnVrLXBhbmVsX190aXRsZSB7XG4gICAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWZvbnQtc2l6ZSgkc2l6ZTogMzYpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogYmFzZS5nb3Z1ay1zcGFjaW5nKDMpO1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgLmdvdnVrLXBhbmVsIHtcbiAgICAgIC0tZ292dWstdGV4dC1jb2xvdXI6IGluaGVyaXQ7XG4gICAgICBib3JkZXItY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbiIsIkB1c2UgXCIuLi8uLi9iYXNlXCI7XG5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBzdHlsZXMge1xuICAuZ292dWstcGFzc3dvcmQtaW5wdXRfX3dyYXBwZXIge1xuICAgIC8vIFRoaXMgZWxlbWVudCBpbmhlcml0cyBzdHlsZXMgZnJvbSAuZ292dWstaW5wdXRfX3dyYXBwZXIsIGluY2x1ZGluZzpcbiAgICAvLyAtIGJlaW5nIGRpc3BsYXk6IGJsb2NrIHdpdGggY29udGVudHMgaW4gYSBzdGFja2VkIGNvbHVtbiBiZWxvdyB0aGUgbW9iaWxlXG4gICAgLy8gICBicmVha3BvaW50XG4gICAgLy8gLSBiZWluZyBkaXNwbGF5OiBmbGV4IGFib3ZlIHRoZSBtb2JpbGUgYnJlYWtwb2ludFxuXG4gICAgQG1lZGlhICN7YmFzZS5nb3Z1ay1mcm9tLWJyZWFrcG9pbnQobW9iaWxlKX0ge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgLy8gVGhlIGRlZmF1bHQgb2YgYHN0cmV0Y2hgIG1ha2VzIHRoZSB0b2dnbGUgYnV0dG9uIGFwcGVhciB0YWxsZXIgdGhhbiB0aGVcbiAgICAgIC8vIGlucHV0LCBkdWUgdG8gdXNpbmcgYm94LXNoYWRvdywgd2hpY2ggd2UgZG9uJ3QgcGFydGljdWxhcmx5IHdhbnQgaW5cbiAgICAgIC8vIHRoaXMgc2l0dWF0aW9uXG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICB9XG4gIH1cblxuICAuZ292dWstcGFzc3dvcmQtaW5wdXRfX2lucHV0IHtcbiAgICAvLyBJRSAxMSBhbmQgTWljcm9zb2Z0IEVkZ2UgY29tZXMgd2l0aCBpdHMgb3duIHBhc3N3b3JkIHJldmVhbCBmdW5jdGlvbi4gV2VcbiAgICAvLyB3YW50IHRvIGhpZGUgaXQsIHNvIHRoYXQgdGhlcmUgYXJlbid0IHR3byBjb250cm9scyBwcmVzZW50ZWQgdG8gdGhlIHVzZXJcbiAgICAvLyB0aGF0IGRvIHRoZSBzYW1lIHRoaW5nIGJ1dCBhcmVuJ3QgaW4gc3luYyB3aXRoIG9uZSBhbm90aGVyLiBUaGlzIGRvZXNuJ3RcbiAgICAvLyBhZmZlY3QgdGhlIGZ1bmN0aW9uIHRoYXQgYWxsb3dzIEVkZ2UgdXNlcnMgdG8gdG9nZ2xlIHBhc3N3b3JkIHZpc2liaWxpdHlcbiAgICAvLyBieSBwcmVzc2luZyBBbHQrRjgsIHdoaWNoIGNhbm5vdCBiZSBwcm9ncmFtbWF0aWNhbGx5IGRpc2FibGVkLlxuICAgICY6Oi1tcy1yZXZlYWwge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuZ292dWstcGFzc3dvcmQtaW5wdXRfX3RvZ2dsZSB7XG4gICAgLy8gQWRkIHRvcCBtYXJnaW4gc28gdGhlIGJ1dHRvbiBkb2Vzbid0IG9ic2N1cmUgdGhlIGlucHV0J3MgZm9jdXMgc3R5bGVcbiAgICBtYXJnaW4tdG9wOiBiYXNlLmdvdnVrLXNwYWNpbmcoMSk7XG5cbiAgICAvLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4tYm90dG9tIGZyb20gYnV0dG9uXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIC8vIEhpZGUgdGhlIGJ1dHRvbiBieSBkZWZhdWx0LCBKUyByZW1vdmVzIHRoaXMgYXR0cmlidXRlXG4gICAgJltoaWRkZW5dIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7YmFzZS5nb3Z1ay1mcm9tLWJyZWFrcG9pbnQobW9iaWxlKX0ge1xuICAgICAgZmxleC1iYXNpczogNWVtO1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAvLyBCdXR0b25zIGFyZSBub3JtYWxseSAxMDAlIHdpZGUgb24gbW9iaWxlLCBidXQgd2UgZG9uJ3Qgd2FudCB0aGF0IGhlcmVcbiAgICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgICAvLyBNb3ZlIHRoZSBzcGFjaW5nIGZyb20gdG9wIHRvIHRoZSBsZWZ0XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IGJhc2UuZ292dWstc3BhY2luZygxKTtcbiAgICB9XG4gIH1cbn1cblxuIiwiLy8vL1xuLy8vIEBncm91cCBjb21wb25lbnRzL3RhZ1xuLy8vL1xuQHVzZSBcInNhc3M6bWFwXCI7XG5cbkB1c2UgXCIuLi8uLi9iYXNlXCI7XG5cbi8vLyBHZXQgdGFnIHRleHQgY29sb3VyXG4vLy8gQWxtb3N0IGFsbCB0YWdzIHNob3VsZCB1c2UgdGhlIDUwJSBzaGFkZSBvZiB0aGVpciBjb2xvdXIgZm9yIHRoZWlyIHRleHRcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkY29sb3VyIC0gbmFtZSBvZiBjb2xvdXIgZnJvbSB0aGUgY29sb3VyIHBhbGV0dGVcbi8vLyBAcmV0dXJuIHtDb2xvdXJ9IFJlcHJlc2VudGF0aW9uIG9mIHRoZSBuYW1lZCBjb2xvdXIgZm9yIHVzZSBpbiB0YWdzXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gX2dvdnVrLXRhZy10ZXh0LWNvbG91cigkY29sb3VyKSB7XG4gIEByZXR1cm4gYmFzZS5nb3Z1ay1jb2xvdXIoJGNvbG91ciwgJHZhcmlhbnQ6IFwic2hhZGUtNTBcIik7XG59XG5cbi8vLyBHZXQgdGFnIGJhY2tncm91bmQgY29sb3VyXG4vLy8gQWxtb3N0IGFsbCB0YWdzIHNob3VsZCB1c2UgdGhlIDgwJSB0aW50IG9mIHRoZWlyIGNvbG91ciBmb3IgdGhlaXIgYmFja2dyb3VuZFxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRjb2xvdXIgLSBuYW1lIG9mIGNvbG91ciBmcm9tIHRoZSBjb2xvdXIgcGFsZXR0ZVxuLy8vIEByZXR1cm4ge0NvbG91cn0gUmVwcmVzZW50YXRpb24gb2YgdGhlIG5hbWVkIGNvbG91ciBmb3IgdXNlIGluIHRhZ3Ncbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiBfZ292dWstdGFnLWJhY2tncm91bmQtY29sb3VyKCRjb2xvdXIpIHtcbiAgQHJldHVybiBiYXNlLmdvdnVrLWNvbG91cigkY29sb3VyLCAkdmFyaWFudDogXCJ0aW50LTgwXCIpO1xufVxuXG4vLy8gR2VuZXJhdGUgY29sb3VyIENTUyBmb3IgdGFnIGFuZCB0YWcgbW9kaWZpZXJzXG4vLy8gQXBwbGllcyBzdGFuZGFyZCBydWxlcyBmcm9tIHRoZSB0YWcgY29sb3VyIGZ1bmN0aW9uc1xuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRjb2xvdXIgLSBuYW1lIG9mIGNvbG91ciBmcm9tIHRoZSBjb2xvdXIgcGFsZXR0ZVxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIF9nb3Z1ay10YWctY29sb3VycygkY29sb3VyKSB7XG4gIGNvbG9yOiBfZ292dWstdGFnLXRleHQtY29sb3VyKCRjb2xvdXIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBfZ292dWstdGFnLWJhY2tncm91bmQtY29sb3VyKCRjb2xvdXIpO1xufVxuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gc3R5bGVzIHtcbiAgJGdvdnVrLXRhZy1tYXgtd2lkdGg6IDAuNSAqIChtYXAuZ2V0KGJhc2UuJGdvdnVrLWJyZWFrcG9pbnRzLCBcIm1vYmlsZVwiKSBvciAzMjBweCk7XG5cbiAgLmdvdnVrLXRhZyB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1mb250KCRzaXplOiAxOSk7XG4gICAgLy8gRGVmYXVsdCB0YWcgY29sb3VyIGlzIGJsdWVcbiAgICBAaW5jbHVkZSBfZ292dWstdGFnLWNvbG91cnMoXCJibHVlXCIpO1xuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgLy8gc2V0IGEgbWF4LXdpZHRoIGFsb25nIHdpdGggb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZCBiZWxvdyBmb3IgaW5zdGFuY2VzXG4gICAgLy8gd2hlcmUgYSB0YWcgaGFzIGEgc2luZ2xlIGxvbmcgd29yZCBhbmQgY291bGQgb3ZlcmZsb3cgaXRzIGJvdW5kYXJpZXMuXG4gICAgLy8gVGhlIG1heC13aWR0aCBpcyBuZWNlc3NhcnkgYXMgYnJlYWstd29yZCByZXF1aXJlcyBhIGJvdW5kaW5nIGJveCB0byBiYXNlXG4gICAgLy8gd2hlcmUgdG8gYnJlYWsgb2ZmIG9mLlxuICAgIG1heC13aWR0aDogJGdvdnVrLXRhZy1tYXgtd2lkdGg7XG5cbiAgICAvLyBUaGVzZSBuZWdhdGl2ZSBtYXJnaW5zIG1ha2Ugc3VyZSB0aGF0IHRoZSB0YWcgY29tcG9uZW50IGRvZXNu4oCZdCBpbmNyZWFzZVxuICAgIC8vIHRoZSBzaXplIG9mIGl0cyBjb250YWluZXIuIE90aGVyd2lzZSwgZm9yIGV4YW1wbGUsIGEgdGFibGUgcm93IGNvbnRhaW5pbmdcbiAgICAvLyBhIHRhZyB3aWxsIGJlIHRhbGxlciB0aGFuIG9uZSBjb250YWluaW5nIHBsYWluIHRleHQuXG4gICAgLy9cbiAgICAvLyBUaGUgbmVnYXRpdmUgbWFyZ2luIGFkZGVkIHRvIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXRjaGVzIHRoZSBleHRyYSBwYWRkaW5nXG4gICAgLy8gYWRkZWQuXG4gICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICBtYXJnaW4tYm90dG9tOiAtM3B4O1xuXG4gICAgcGFkZGluZy10b3A6IDJweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDNweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDhweDtcblxuICAgIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcblxuICAgIC8vIFdoZW4gZm9yY2VkIGNvbG91ciBtb2RlIGlzIGFjdGl2ZSwgZm9yIGV4YW1wbGUgdG8gcHJvdmlkZSBoaWdoIGNvbnRyYXN0LFxuICAgIC8vIHRoZSBiYWNrZ3JvdW5kIGNvbG91ciBvZiB0aGUgdGFnIGlzIHRoZSBzYW1lIGFzIHRoZSByZXN0IG9mIHRoZSBwYWdlLiBUb1xuICAgIC8vIGVuc3VyZSB0aGF0IHRoZSB0YWcgaXMgcGVyY2VpdmVkIGFzIHNlcGFyYXRlIGZyb20gYW55IHN1cnJvdW5kIHRleHQsIGl0XG4gICAgLy8gaXMgbWFkZSBib2xkLlxuICAgIC8vXG4gICAgLy8gVHJhbnNwYXJlbnQgb3V0bGluZXMgYXJlIG5vIGxvbmdlciBhZGRlZCwgYXMgdGhleSBtYWtlIHRoZSBUYWcgbG9va1xuICAgIC8vIGluZGlzdGluZ3Vpc2hhYmxlIGZyb20gYSBidXR0b24g4oCTIGJ1dCB0aGUgdGFnIGlzIG5vdCBpbnRlcmFjdGl2ZSBpbiB0aGVcbiAgICAvLyBzYW1lIHdheS5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gIH1cblxuICAvLyBUYWcgY29sb3VyIG1vZGlmaWVycy4gVXNlIHRoZSBfZ292dWstdGFnLWNvbG91cnMgbWl4aW4gdG8gZGVmaW5lIGNvbnNpc3RlbnRcbiAgLy8gY29sb3VyIHJ1bGVzIHBlciBtb2RpZmllclxuICAuZ292dWstdGFnLS1ncmVlbiB7XG4gICAgQGluY2x1ZGUgX2dvdnVrLXRhZy1jb2xvdXJzKFwiZ3JlZW5cIik7XG4gIH1cblxuICAuZ292dWstdGFnLS1wdXJwbGUge1xuICAgIEBpbmNsdWRlIF9nb3Z1ay10YWctY29sb3VycyhcInB1cnBsZVwiKTtcbiAgfVxuXG4gIC5nb3Z1ay10YWctLXJlZCB7XG4gICAgQGluY2x1ZGUgX2dvdnVrLXRhZy1jb2xvdXJzKFwicmVkXCIpO1xuICB9XG5cbiAgLmdvdnVrLXRhZy0tb3JhbmdlIHtcbiAgICBAaW5jbHVkZSBfZ292dWstdGFnLWNvbG91cnMoXCJvcmFuZ2VcIik7XG4gIH1cblxuICAuZ292dWstdGFnLS10ZWFsIHtcbiAgICBAaW5jbHVkZSBfZ292dWstdGFnLWNvbG91cnMoXCJ0ZWFsXCIpO1xuICB9XG5cbiAgLmdvdnVrLXRhZy0tbWFnZW50YSB7XG4gICAgQGluY2x1ZGUgX2dvdnVrLXRhZy1jb2xvdXJzKFwibWFnZW50YVwiKTtcbiAgfVxuXG4gIC8vIFllbGxvdyB1c2VzIGRpZmZlcmVudCBjb2xvdXJzIHRvIGVuc3VyZSBpdCdzIGxlZ2libGVcbiAgLmdvdnVrLXRhZy0teWVsbG93IHtcbiAgICBjb2xvcjogYmFzZS5nb3Z1ay1jb2xvdXIoXCJvcmFuZ2VcIiwgJHZhcmlhbnQ6IFwic2hhZGUtNTBcIik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogYmFzZS5nb3Z1ay1jb2xvdXIoXCJ5ZWxsb3dcIiwgJHZhcmlhbnQ6IFwidGludC01MFwiKTtcbiAgfVxuXG4gIC8vIEdyZXkgdXNlcyBkaWZmZXJlbnQgY29sb3VycyB0byBlbnN1cmUgaXQncyBsZWdpYmxlXG4gIC5nb3Z1ay10YWctLWdyZXkge1xuICAgIGNvbG9yOiBiYXNlLmdvdnVrLWNvbG91cihcImJsYWNrXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGJhc2UuZ292dWstY29sb3VyKFwiYmxhY2tcIiwgJHZhcmlhbnQ6IFwidGludC04MFwiKTtcbiAgfVxuXG4gIC8vIFR1cnF1b2lzZSBhbmQgcGluayBhcmUgZGVwcmVjYXRlZCBvdmVyIHRlYWwgYW5kIG1hZ2VudGEgcmVzcGVjdGl2ZWx5XG4gIC8vIEBkZXByZWNhdGVkXG4gIC5nb3Z1ay10YWctLXR1cnF1b2lzZSB7XG4gICAgQGluY2x1ZGUgX2dvdnVrLXRhZy1jb2xvdXJzKFwidGVhbFwiKTtcbiAgfVxuXG4gIC8vIEBkZXByZWNhdGVkXG4gIC5nb3Z1ay10YWctLXBpbmsge1xuICAgIEBpbmNsdWRlIF9nb3Z1ay10YWctY29sb3VycyhcIm1hZ2VudGFcIik7XG4gIH1cbn1cblxuIiwiQHVzZSBcIi4uLy4uL2Jhc2VcIjtcblxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIHN0eWxlcyB7XG4gIC5nb3Z1ay1waGFzZS1iYW5uZXIge1xuICAgIHBhZGRpbmctdG9wOiBiYXNlLmdvdnVrLXNwYWNpbmcoMik7XG4gICAgcGFkZGluZy1ib3R0b206IGJhc2UuZ292dWstc3BhY2luZygyKTtcblxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGJvcmRlcik7XG4gIH1cblxuICAvLyBJZiB0aGUgcGhhc2UgYmFubmVyIGlzIGFscmVhZHkgY29udGFpbmVkIHdpdGhpbiBhIC5nb3Z1ay13aWR0aC1jb250YWluZXIsXG4gIC8vIGRvbid0IGRvdWJsZSB1cCB0aGUgbGVmdCBhbmQgcmlnaHQgbWFyZ2lucyBvbiBuYXJyb3cgdmlld3BvcnRzLlxuICAuZ292dWstd2lkdGgtY29udGFpbmVyIC5nb3Z1ay1waGFzZS1iYW5uZXIuZ292dWstd2lkdGgtY29udGFpbmVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAuZ292dWstcGhhc2UtYmFubmVyX19jb250ZW50IHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWZvbnQoJHNpemU6IDE2KTtcblxuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cih0ZXh0KTtcbiAgfVxuXG4gIC5nb3Z1ay1waGFzZS1iYW5uZXJfX2NvbnRlbnRfX3RhZyB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1mb250LXNpemUoJHNpemU6IDE2KTtcbiAgICBtYXJnaW4tcmlnaHQ6IGJhc2UuZ292dWstc3BhY2luZygzKTtcblxuICAgIEBtZWRpYSAje2Jhc2UuZ292dWstZnJvbS1icmVha3BvaW50KHRhYmxldCl9IHtcbiAgICAgIG1hcmdpbi1yaWdodDogYmFzZS5nb3Z1ay1zcGFjaW5nKDIpO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1waGFzZS1iYW5uZXJfX3RleHQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxufVxuXG4iLCJAdXNlIFwiLi4vLi4vYmFzZVwiO1xuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gc3R5bGVzIHtcbiAgJGdvdnVrLXRvdWNoLXRhcmdldC1ndXR0ZXI6IDRweDtcbiAgJGdvdnVrLXJhZGlvcy1zaXplOiA0MHB4O1xuICAkZ292dWstdG91Y2gtdGFyZ2V0LXNpemU6ICgkZ292dWstcmFkaW9zLXNpemUgKyAkZ292dWstdG91Y2gtdGFyZ2V0LWd1dHRlcik7XG4gICRnb3Z1ay1zbWFsbC1yYWRpb3Mtc2l6ZTogMjRweDtcbiAgJGdvdnVrLXJhZGlvcy1sYWJlbC1wYWRkaW5nLWxlZnQtcmlnaHQ6IGJhc2UuZ292dWstc3BhY2luZygzKTtcbiAgLy8gV2hlbiB0aGUgZGVmYXVsdCBmb2N1cyB3aWR0aCBpcyB1c2VkIG9uIGEgY3VydmVkIGVkZ2UgaXQgbG9va3MgdmlzdWFsbHlcbiAgLy8gc21hbGxlci4gU28gZm9yIHRoZSBjaXJjdWxhciByYWRpb3Mgd2UgYnVtcCB0aGUgZGVmYXVsdCB0byBtYWtlIGl0IGxvb2tcbiAgLy8gdmlzdWFsbHkgY29uc2lzdGVudC5cbiAgJGdvdnVrLXJhZGlvcy1mb2N1cy13aWR0aDogYmFzZS4kZ292dWstZm9jdXMtd2lkdGggKyAxcHg7XG5cbiAgLmdvdnVrLXJhZGlvc19faXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbi1ib3R0b206IGJhc2UuZ292dWstc3BhY2luZygyKTtcbiAgfVxuXG4gIC5nb3Z1ay1yYWRpb3NfX2l0ZW06bGFzdC1jaGlsZCxcbiAgLmdvdnVrLXJhZGlvc19faXRlbTpsYXN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuZ292dWstcmFkaW9zX19pbnB1dCB7XG4gICAgLy8gQWxsb3cgdGhlIGlucHV0IHRvIHNpdCBhYm92ZSB0aGUgbGFiZWwsIGVuYWJsaW5nIGl0cyBwcm9wZXIgZGV0ZWN0aW9uXG4gICAgLy8gd2hlbiBleHBsb3JpbmcgYnkgdG91Y2ggb3IgdXNpbmcgYXV0b21hdGlvbiB0b29scyBsaWtlIFNlbGVuaXVtXG4gICAgei1pbmRleDogMTtcbiAgICB3aWR0aDogJGdvdnVrLXRvdWNoLXRhcmdldC1zaXplO1xuICAgIGhlaWdodDogJGdvdnVrLXRvdWNoLXRhcmdldC1zaXplO1xuICAgIG1hcmdpbjogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gIC5nb3Z1ay1yYWRpb3NfX2xhYmVsIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG5cbiAgICAvLyBFbnN1cmUgdGhhdCB0aGUgd2lkdGggb2YgdGhlIGxhYmVsIGlzIG5ldmVyIG1vcmUgdGhhbiB0aGUgd2lkdGggb2YgdGhlXG4gICAgLy8gY29udGFpbmVyIG1pbnVzIHRoZSBpbnB1dCB3aWR0aCBtaW51cyB0aGUgcGFkZGluZyBvbiBlaXRoZXIgc2lkZSBvZlxuICAgIC8vIHRoZSBsYWJlbC4gVGhpcyBwcmV2ZW50cyB0aGUgbGFiZWwgZnJvbSBnb2luZyBvbnRvIHRoZSBuZXh0IGxpbmUgZHVlIHRvXG4gICAgLy8gX19pdGVtIHVzaW5nIGZsZXgtd3JhcCBiZWNhdXNlIHdlIHdhbnQgaGludHMgb24gYSBzZXBhcmF0ZSBsaW5lXG4gICAgbWF4LXdpZHRoOiBjYWxjKFxuICAgICAgMTAwJSAtICN7KCRnb3Z1ay1yYWRpb3MtbGFiZWwtcGFkZGluZy1sZWZ0LXJpZ2h0ICsgJGdvdnVrLXRvdWNoLXRhcmdldC1zaXplICsgYmFzZS5nb3Z1ay1zcGFjaW5nKDMpKX1cbiAgICApO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZzogKGJhc2UuZ292dWstc3BhY2luZygxKSArIGJhc2UuJGdvdnVrLWJvcmRlci13aWR0aC1mb3JtLWVsZW1lbnQpICRnb3Z1ay1yYWRpb3MtbGFiZWwtcGFkZGluZy1sZWZ0LXJpZ2h0O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAvLyByZW1vdmUgMzAwbXMgcGF1c2Ugb24gbW9iaWxlXG4gICAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG4gIH1cblxuICAvLyAoICkgUmFkaW8gcmluZ1xuICAuZ292dWstcmFkaW9zX19sYWJlbDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogKCRnb3Z1ay10b3VjaC10YXJnZXQtZ3V0dGVyICogMC41KTtcbiAgICBsZWZ0OiAoJGdvdnVrLXRvdWNoLXRhcmdldC1ndXR0ZXIgKiAwLjUpO1xuICAgIHdpZHRoOiAkZ292dWstcmFkaW9zLXNpemU7XG4gICAgaGVpZ2h0OiAkZ292dWstcmFkaW9zLXNpemU7XG4gICAgYm9yZGVyOiBiYXNlLiRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50IHNvbGlkIGN1cnJlbnRjb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAvLyAg4oCiICBSYWRpbyBidXR0b25cbiAgLy9cbiAgLy8gV2UgY3JlYXRlIHRoZSAnYnV0dG9uJyBlbnRpcmVseSBvdXQgb2YgJ2JvcmRlcicgc28gdGhhdCB0aGV5IHJlbWFpblxuICAvLyAnZmlsbGVkJyBldmVuIHdoZW4gY29sb3VycyBhcmUgb3ZlcnJpZGRlbiBpbiB0aGUgYnJvd3Nlci5cbiAgLmdvdnVrLXJhZGlvc19fbGFiZWw6OmFmdGVyIHtcbiAgICAkcmFkaW8tYnV0dG9uLXNpemU6IGJhc2UuZ292dWstc3BhY2luZygyKTtcblxuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgLy8gUG9zaXRpb25lZCBieSBnZXR0aW5nIGhhbGYgdGhlIHRvdWNoIHRhcmdldCwgc28gd2UgaGF2ZSB0aGUgY2VudHJlIG9mIHRoZVxuICAgIC8vIGlucHV0LCBhbmQgdGhlbiBtb3ZpbmcgYmFjayBieSB0aGUgYnV0dG9uJ3MgYm9yZGVyIHdpZHRoLCB0aHVzIHBvc2l0aW9uaW5nXG4gICAgLy8gdGhlIGNlbnRyZSBvZiB0aGUgYnV0dG9uIGluIHRoZSBjZW50cmUgb2YgdGhlIGlucHV0LlxuICAgIHRvcDogKCgkZ292dWstdG91Y2gtdGFyZ2V0LXNpemUgKiAwLjUpIC0gJHJhZGlvLWJ1dHRvbi1zaXplKTtcbiAgICBsZWZ0OiAoKCRnb3Z1ay10b3VjaC10YXJnZXQtc2l6ZSAqIDAuNSkgLSAkcmFkaW8tYnV0dG9uLXNpemUpO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6ICRyYWRpby1idXR0b24tc2l6ZSBzb2xpZCBjdXJyZW50Y29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgYmFja2dyb3VuZDogY3VycmVudGNvbG9yO1xuICB9XG5cbiAgLmdvdnVrLXJhZGlvc19faGludCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogYmFzZS5nb3Z1ay1zcGFjaW5nKC0xKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ292dWstcmFkaW9zLWxhYmVsLXBhZGRpbmctbGVmdC1yaWdodDtcbiAgICBwYWRkaW5nLWxlZnQ6ICgkZ292dWstcmFkaW9zLWxhYmVsLXBhZGRpbmctbGVmdC1yaWdodCArICRnb3Z1ay10b3VjaC10YXJnZXQtc2l6ZSk7XG4gIH1cblxuICAvLyBUaGlzIGlzIHRvIGJ5cGFzcyBnb3Z1ay1oaW50J3Mgc3BlY2lmaWNpdHkgb24gaGludHMgZm9sbG93aW5nIGxhYmVscyBoYXZpbmdcbiAgLy8gYSBtYXJnaW4gYm90dG9tIG9mIDEwcHggKGdvdnVrLXNwYWNpbmcoMikpLiBCZWNhdXNlIHJhZGlvcyBhcmUgZmxleGJveCxcbiAgLy8gdGhlIG1hcmdpbiBkb2Vzbid0IGNvbGxhcHNlIHNvIHdlIGhhdmUgdG8gZG8gdGhpcyBtYW51YWxseS5cbiAgLmdvdnVrLWxhYmVsOm5vdCguZ292dWstbGFiZWwtLW0pOm5vdCguZ292dWstbGFiZWwtLWwpOm5vdCguZ292dWstbGFiZWwtLXhsKSArIC5nb3Z1ay1yYWRpb3NfX2hpbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAvLyBGb2N1c2VkIHN0YXRlXG4gIC5nb3Z1ay1yYWRpb3NfX2lucHV0OmZvY3VzICsgLmdvdnVrLXJhZGlvc19fbGFiZWw6OmJlZm9yZSB7XG4gICAgYm9yZGVyLXdpZHRoOiA0cHg7XG5cbiAgICAvLyBXaGVuIGNvbG91cnMgYXJlIG92ZXJyaWRkZW4sIHRoZSB5ZWxsb3cgYm94LXNoYWRvdyBiZWNvbWVzIGludmlzaWJsZVxuICAgIC8vIHdoaWNoIG1lYW5zIHRoZSBmb2N1cyBzdGF0ZSBpcyBsZXNzIG9idmlvdXMuIEJ5IGFkZGluZyBhIHRyYW5zcGFyZW50XG4gICAgLy8gb3V0bGluZSwgd2hpY2ggYmVjb21lcyBzb2xpZCAodGV4dC1jb2xvdXJlZCkgaW4gdGhhdCBjb250ZXh0LCB3ZSBlbnN1cmVcbiAgICAvLyB0aGUgZm9jdXMgcmVtYWlucyBjbGVhcmx5IHZpc2libGUuXG4gICAgb3V0bGluZTogYmFzZS4kZ292dWstZm9jdXMtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgb3V0bGluZS1vZmZzZXQ6IDFweDtcblxuICAgIC8vIFdoZW4gaW4gYW4gZXhwbGljaXQgZm9yY2VkLWNvbG9yIG1vZGUsIHdlIGNhbiB1c2UgdGhlIEhpZ2hsaWdodCBzeXN0ZW1cbiAgICAvLyBjb2xvciBmb3IgdGhlIG91dGxpbmUgdG8gYmV0dGVyIG1hdGNoIGZvY3VzIHN0YXRlcyBvZiBuYXRpdmUgY29udHJvbHNcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgICAgIG91dGxpbmUtY29sb3I6IEhpZ2hsaWdodDtcbiAgICB9XG5cbiAgICBib3gtc2hhZG93OiAwIDAgMCAkZ292dWstcmFkaW9zLWZvY3VzLXdpZHRoIGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoZm9jdXMpO1xuICB9XG5cbiAgLy8gU2VsZWN0ZWQgc3RhdGVcbiAgLmdvdnVrLXJhZGlvc19faW5wdXQ6Y2hlY2tlZCArIC5nb3Z1ay1yYWRpb3NfX2xhYmVsOjphZnRlciB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlXG4gIC5nb3Z1ay1yYWRpb3NfX2lucHV0OmRpc2FibGVkLFxuICAuZ292dWstcmFkaW9zX19pbnB1dDpkaXNhYmxlZCArIC5nb3Z1ay1yYWRpb3NfX2xhYmVsIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG5cbiAgLmdvdnVrLXJhZGlvc19faW5wdXQ6ZGlzYWJsZWQgKyAuZ292dWstcmFkaW9zX19sYWJlbCxcbiAgLmdvdnVrLXJhZGlvc19faW5wdXQ6ZGlzYWJsZWQgfiAuZ292dWstaGludCB7XG4gICAgb3BhY2l0eTogMC41O1xuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIElubGluZSByYWRpb3NcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLmdvdnVrLXJhZGlvcy0taW5saW5lIHtcbiAgICBAbWVkaWEgI3tiYXNlLmdvdnVrLWZyb20tYnJlYWtwb2ludCh0YWJsZXQpfSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgICAgIC5nb3Z1ay1yYWRpb3NfX2l0ZW0ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGJhc2UuZ292dWstc3BhY2luZyg0KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gRGl2aWRlcnMgKCdvcicpXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC5nb3Z1ay1yYWRpb3NfX2RpdmlkZXIge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udCgkc2l6ZTogMTkpO1xuXG4gICAgJGdvdnVrLWRpdmlkZXItc2l6ZTogJGdvdnVrLXJhZGlvcy1zaXplICFkZWZhdWx0O1xuICAgIHdpZHRoOiAkZ292dWstZGl2aWRlci1zaXplO1xuXG4gICAgbWFyZ2luLWJvdHRvbTogYmFzZS5nb3Z1ay1zcGFjaW5nKDIpO1xuICAgIGNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHRleHQpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBDb25kaXRpb25hbCByZXZlYWxzXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFRoZSBuYXJyb3cgYm9yZGVyIGlzIHVzZWQgaW4gdGhlIGNvbmRpdGlvbmFsIHJldmVhbHMgYmVjYXVzZSB0aGUgYm9yZGVyIGhhc1xuICAvLyB0byBiZSBhbiBldmVuIG51bWJlciBpbiBvcmRlciB0byBiZSBjZW50cmVkIHVuZGVyIHRoZSA0MHB4IGNoZWNrYm94IHJhZGlvLlxuICAkY29uZGl0aW9uYWwtYm9yZGVyLXdpZHRoOiBiYXNlLiRnb3Z1ay1ib3JkZXItd2lkdGgtbmFycm93O1xuICAvLyBDYWxjdWxhdGUgdGhlIGFtb3VudCBvZiBwYWRkaW5nIG5lZWRlZCB0byBrZWVwIHRoZSBib3JkZXIgY2VudGVyZWQgYWdhaW5zdFxuICAvLyB0aGUgcmFkaW9zLlxuICAkY29uZGl0aW9uYWwtYm9yZGVyLXBhZGRpbmc6ICgkZ292dWstdG91Y2gtdGFyZ2V0LXNpemUgKiAwLjUpIC0gKCRjb25kaXRpb25hbC1ib3JkZXItd2lkdGggKiAwLjUpO1xuICAvLyBNb3ZlIHRoZSBib3JkZXIgY2VudGVyZWQgd2l0aCB0aGUgcmFkaW9zXG4gICRjb25kaXRpb25hbC1tYXJnaW4tbGVmdDogJGNvbmRpdGlvbmFsLWJvcmRlci1wYWRkaW5nO1xuICAvLyBNb3ZlIHRoZSBjb250ZW50cyBvZiB0aGUgY29uZGl0aW9uYWwgaW5saW5lIHdpdGggdGhlIGxhYmVsXG4gICRjb25kaXRpb25hbC1wYWRkaW5nLWxlZnQ6ICRjb25kaXRpb25hbC1ib3JkZXItcGFkZGluZyArICRnb3Z1ay1yYWRpb3MtbGFiZWwtcGFkZGluZy1sZWZ0LXJpZ2h0O1xuXG4gIC5nb3Z1ay1yYWRpb3NfX2NvbmRpdGlvbmFsIHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDQsIFwiYm90dG9tXCIpO1xuICAgIG1hcmdpbi1sZWZ0OiAkY29uZGl0aW9uYWwtbWFyZ2luLWxlZnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAkY29uZGl0aW9uYWwtcGFkZGluZy1sZWZ0O1xuICAgIGJvcmRlci1sZWZ0OiAkY29uZGl0aW9uYWwtYm9yZGVyLXdpZHRoIHNvbGlkO1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGJvcmRlcik7XG5cbiAgICAuZ292dWstZnJvbnRlbmQtc3VwcG9ydGVkICYtLWhpZGRlbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBTbWFsbCBjaGVja2JveGVzXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC5nb3Z1ay1yYWRpb3MtLXNtYWxsIHtcbiAgICAkaW5wdXQtb2Zmc2V0OiAoJGdvdnVrLXRvdWNoLXRhcmdldC1zaXplIC0gJGdvdnVrLXNtYWxsLXJhZGlvcy1zaXplKSAqIDAuNTtcblxuICAgIC5nb3Z1ay1yYWRpb3NfX2l0ZW0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAvLyBTaGlmdCB0aGUgdG91Y2ggdGFyZ2V0IGludG8gdGhlIGxlZnQgbWFyZ2luIHNvIHRoYXQgdGhlIHZpc2libGUgZWRnZSBvZlxuICAgIC8vIHRoZSBjb250cm9sIGlzIGFsaWduZWRcbiAgICAvL1xuICAgIC8vICAg4pSGV2hpY2ggY29sb3VyIGlzIHlvdXIgZmF2b3VyaXRlP1xuICAgIC8vICDilIzilIbilIDilIDilIDilJBcbiAgICAvLyAg4pSC4pSGKCkg4pSCIFB1cnBsZVxuICAgIC8vICDilJTilIbilrLilIDilIDilJhcbiAgICAvLyAg4pay4pSG4pSU4pSAIFJhZGlvIHBzZXVkbyBlbGVtZW50LCBhbGlnbmVkIHdpdGggbWFyZ2luXG4gICAgLy8gIOKUlOKUgOKUgOKUgCBUb3VjaCB0YXJnZXQgKGludmlzaWJsZSBpbnB1dCksIHNoaWZ0ZWQgaW50byB0aGUgbWFyZ2luXG4gICAgLmdvdnVrLXJhZGlvc19faW5wdXQge1xuICAgICAgbWFyZ2luLWxlZnQ6ICRpbnB1dC1vZmZzZXQgKiAtMTtcbiAgICB9XG5cbiAgICAuZ292dWstcmFkaW9zX19sYWJlbCB7XG4gICAgICAvLyBSZWNhbGN1bGF0ZSBtYXgtd2lkdGggdG8gYWNjb3VudCBmb3IgdGhlIHNtYWxsZXIgcmFkaW8gc2l6ZVxuICAgICAgLy8gMXB4IGNvbWVzIGZyb20gcGFkZGluZy1sZWZ0IChkZWZpbmVkIGJlbG93KVxuICAgICAgbWF4LXdpZHRoOiBjYWxjKFxuICAgICAgICAxMDAlIC0gI3soJGdvdnVrLXRvdWNoLXRhcmdldC1zaXplIC0gJGlucHV0LW9mZnNldCkgKyAkZ292dWstcmFkaW9zLWxhYmVsLXBhZGRpbmctbGVmdC1yaWdodCArIDFweH1cbiAgICAgICk7XG5cbiAgICAgIC8vIENyZWF0ZSBhIHRpbnkgc3BhY2UgYmV0d2VlbiB0aGUgc21hbGwgcmFkaW8gaG92ZXIgc3RhdGUgc28gdGhhdCBpdFxuICAgICAgLy8gZG9lc24ndCBjbGFzaCB3aXRoIHRoZSBsYWJlbFxuICAgICAgcGFkZGluZy1sZWZ0OiAxcHg7XG4gICAgfVxuXG4gICAgLy8gKCApIFJhZGlvIHJpbmdcbiAgICAvL1xuICAgIC8vIFJlZHVjZSB0aGUgc2l6ZSBvZiB0aGUgY29udHJvbCBbMV0sIHZlcnRpY2FsbHkgY2VudGVyaW5nIGl0IHdpdGhpbiB0aGVcbiAgICAvLyB0b3VjaCB0YXJnZXQgWzJdXG4gICAgLy8gTGVmdCBoZXJlIGlzIDAgYmVjYXVzZSB3ZSd2ZSBzaGlmdGVkIHRoZSBpbnB1dCBpbnRvIHRoZSBsZWZ0IG1hcmdpblxuICAgIC5nb3Z1ay1yYWRpb3NfX2xhYmVsOjpiZWZvcmUge1xuICAgICAgdG9wOiAkaW5wdXQtb2Zmc2V0OyAvLyAyXG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6ICRnb3Z1ay1zbWFsbC1yYWRpb3Mtc2l6ZTsgLy8gMVxuICAgICAgaGVpZ2h0OiAkZ292dWstc21hbGwtcmFkaW9zLXNpemU7IC8vIDFcbiAgICB9XG5cbiAgICAvLyAg4oCiICBSYWRpbyBidXR0b25cbiAgICAvL1xuICAgIC8vIFJlZHVjZSB0aGUgc2l6ZSBvZiB0aGUgJ2J1dHRvbicgYW5kIGNlbnRlciBpdCB3aXRoaW4gdGhlIHJpbmdcbiAgICAuZ292dWstcmFkaW9zX19sYWJlbDo6YWZ0ZXIge1xuICAgICAgJHJhZGlvLWJ1dHRvbi1zaXplOiBiYXNlLmdvdnVrLXNwYWNpbmcoMSk7XG5cbiAgICAgIC8vIFRoZSBzYW1lIGNhbGN1bGF0aW9uIGFzIG5vcm1hbCByYWRpbyBidXR0b25zIGJ1dCByZWR1Y2UgdGhlIGJvcmRlciB3aWR0aFxuICAgICAgdG9wOiAoKCRnb3Z1ay10b3VjaC10YXJnZXQtc2l6ZSAqIDAuNSkgLSAkcmFkaW8tYnV0dG9uLXNpemUpO1xuICAgICAgbGVmdDogKCgoJGdvdnVrLXRvdWNoLXRhcmdldC1zaXplICogMC41KSAtICRyYWRpby1idXR0b24tc2l6ZSkgLSAkaW5wdXQtb2Zmc2V0KTtcbiAgICAgIGJvcmRlci13aWR0aDogJHJhZGlvLWJ1dHRvbi1zaXplO1xuICAgIH1cblxuICAgIC8vIEZpeCBwb3NpdGlvbiBvZiBoaW50IHdpdGggc21hbGwgcmFkaW9zXG4gICAgLy9cbiAgICAvLyBEbyBub3QgdXNlIGhpbnRzIHdpdGggc21hbGwgcmFkaW9zIOKAkyBiZWNhdXNlIHRoZXkncmUgd2l0aGluIHRoZSBpbnB1dFxuICAgIC8vIHdyYXBwZXIgdGhleSB0cmlnZ2VyIHRoZSBob3ZlciBzdGF0ZSwgYnV0IGNsaWNraW5nIHRoZW0gZG9lc24ndCBhY3R1YWxseVxuICAgIC8vIGFjdGl2YXRlIHRoZSBjb250cm9sLlxuICAgIC8vXG4gICAgLy8gKElmIHlvdSBkbyB1c2UgdGhlbSwgdGhleSB3b24ndCBsb29rIGNvbXBsZXRlbHkgYnJva2VuLi4uIGJ1dCBzZXJpb3VzbHksXG4gICAgLy8gZG9uJ3QgdXNlIHRoZW0pXG4gICAgLmdvdnVrLXJhZGlvc19faGludCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICgkZ292dWstc21hbGwtcmFkaW9zLXNpemUgKyAkaW5wdXQtb2Zmc2V0KTtcbiAgICB9XG5cbiAgICAvLyBBbGlnbiBjb25kaXRpb25hbCByZXZlYWxzIHdpdGggc21hbGwgcmFkaW9zXG4gICAgLmdvdnVrLXJhZGlvc19fY29uZGl0aW9uYWwge1xuICAgICAgJG1hcmdpbi1sZWZ0OiAoJGdvdnVrLXNtYWxsLXJhZGlvcy1zaXplICogMC41KSAtICgkY29uZGl0aW9uYWwtYm9yZGVyLXdpZHRoICogMC41KTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkbWFyZ2luLWxlZnQ7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICgkZ292dWstdG91Y2gtdGFyZ2V0LXNpemUgLSAkaW5wdXQtb2Zmc2V0KSAtICgkbWFyZ2luLWxlZnQgKyAkY29uZGl0aW9uYWwtYm9yZGVyLXdpZHRoKTtcbiAgICB9XG5cbiAgICAuZ292dWstcmFkaW9zX19kaXZpZGVyIHtcbiAgICAgIHdpZHRoOiAkZ292dWstc21hbGwtcmFkaW9zLXNpemU7XG4gICAgICBtYXJnaW4tYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoMSk7XG4gICAgfVxuXG4gICAgLy8gSG92ZXIgc3RhdGUgZm9yIHNtYWxsIHJhZGlvcy5cbiAgICAvL1xuICAgIC8vIFdlIHVzZSBhIGhvdmVyIHN0YXRlIGZvciBzbWFsbCByYWRpb3MgYmVjYXVzZSB0aGUgdG91Y2ggdGFyZ2V0IHNpemVcbiAgICAvLyBpcyBzbyBtdWNoIGxhcmdlciB0aGFuIHRoZWlyIHZpc2libGUgc2l6ZSwgYW5kIHNvIHdlIG5lZWQgdG8gcHJvdmlkZVxuICAgIC8vIGZlZWRiYWNrIHRvIHRoZSB1c2VyIGFzIHRvIHdoaWNoIHJhZGlvIHRoZXkgd2lsbCBzZWxlY3Qgd2hlbiB0aGVpclxuICAgIC8vIGN1cnNvciBpcyBvdXRzaWRlIG9mIHRoZSB2aXNpYmxlIGFyZWEuXG4gICAgLmdvdnVrLXJhZGlvc19faW5wdXQ6bm90KDpkaXNhYmxlZCk6aG92ZXIgKyAuZ292dWstcmFkaW9zX19sYWJlbDo6YmVmb3JlIHtcbiAgICAgIC8vIEZvcmNlZCBjb2xvdXJzIG1vZGVzIHRlbmQgdG8gaWdub3JlIGJveC1zaGFkb3cuXG4gICAgICAvLyBBcHBseSBhbiBvdXRsaW5lIGZvciB0aG9zZSBtb2RlcyB0byB1c2UgaW5zdGVhZC5cbiAgICAgIG91dGxpbmU6ICRnb3Z1ay1yYWRpb3MtZm9jdXMtd2lkdGggZGFzaGVkIHRyYW5zcGFyZW50O1xuICAgICAgb3V0bGluZS1vZmZzZXQ6IDFweDtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIGJhc2UuJGdvdnVrLWhvdmVyLXdpZHRoIGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoaG92ZXIpO1xuICAgIH1cblxuICAgIC8vIEJlY2F1c2Ugd2UndmUgb3ZlcnJpZGRlbiB0aGUgYm9yZGVyLXNoYWRvdyBwcm92aWRlZCBieSB0aGUgZm9jdXMgc3RhdGUsXG4gICAgLy8gd2UgbmVlZCB0byByZWRlZmluZSB0aGF0IHRvby5cbiAgICAvL1xuICAgIC8vIFdlIHVzZSB0d28gYm94IHNoYWRvd3MsIG9uZSB0aGF0IHJlc3RvcmVzIHRoZSBvcmlnaW5hbCBmb2N1cyBzdGF0ZSBbMV1cbiAgICAvLyBhbmQgYW5vdGhlciB0aGF0IHRoZW4gYXBwbGllcyB0aGUgaG92ZXIgc3RhdGUgWzJdLlxuICAgIC5nb3Z1ay1yYWRpb3NfX2lucHV0OmZvY3VzOmhvdmVyICsgLmdvdnVrLXJhZGlvc19fbGFiZWw6OmJlZm9yZSB7XG4gICAgICAvLyBTZXQgZGlmZmVyZW50IEhDTSBjb2xvdXIgd2hlbiB3ZSBoYXZlIGJvdGggaG92ZXIvZm9jdXMgYXBwbGllZCBhdCBvbmNlXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgICAgICAgb3V0bGluZS1jb2xvcjogSGlnaGxpZ2h0O1xuICAgICAgfVxuICAgICAgLy8gcHJldHRpZXItaWdub3JlXG4gICAgICBib3gtc2hhZG93OlxuICAgICAgICAwIDAgMCAkZ292dWstcmFkaW9zLWZvY3VzLXdpZHRoIGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoZm9jdXMpLCAvLyAxXG4gICAgICAgIDAgMCAwIGJhc2UuJGdvdnVrLWhvdmVyLXdpZHRoIGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoaG92ZXIpOyAvLyAyXG4gICAgfVxuXG4gICAgLy8gRm9yIGRldmljZXMgdGhhdCBleHBsaWNpdGx5IGRvbid0IHN1cHBvcnQgaG92ZXIsIGRvbid0IHByb3ZpZGUgYSBob3ZlclxuICAgIC8vIHN0YXRlIChlLmcuIG9uIHRvdWNoIGRldmljZXMgbGlrZSBpT1MpLlxuICAgIC8vXG4gICAgLy8gV2UgY2FuJ3QgdXNlIGBAbWVkaWEgKGhvdmVyOiBob3ZlcilgIGJlY2F1c2Ugd2Ugd291bGRuJ3QgZ2V0IHRoZSBob3ZlclxuICAgIC8vIHN0YXRlIGluIGJyb3dzZXJzIHRoYXQgZG9uJ3Qgc3VwcG9ydCBgQG1lZGlhIChob3ZlcilgIChsaWtlIEludGVybmV0XG4gICAgLy8gRXhwbG9yZXIpIOKAkyBzbyB3ZSBoYXZlIHRvICd1bmRvJyB0aGUgaG92ZXIgc3RhdGUgaW5zdGVhZC5cbiAgICBAbWVkaWEgKGhvdmVyOiBub25lKSwgKHBvaW50ZXI6IGNvYXJzZSkge1xuICAgICAgLmdvdnVrLXJhZGlvc19faW5wdXQ6bm90KDpkaXNhYmxlZCk6aG92ZXIgKyAuZ292dWstcmFkaW9zX19sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgYm94LXNoYWRvdzogaW5pdGlhbDtcbiAgICAgIH1cblxuICAgICAgLmdvdnVrLXJhZGlvc19faW5wdXQ6Zm9jdXM6aG92ZXIgKyAuZ292dWstcmFkaW9zX19sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGdvdnVrLXJhZGlvcy1mb2N1cy13aWR0aCBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGZvY3VzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuIiwiQHVzZSBcIi4uLy4uL2Jhc2VcIjtcblxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIHN0eWxlcyB7XG4gIC5nb3Z1ay1zZWxlY3Qge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udCgkc2l6ZTogMTksICRsaW5lLWhlaWdodDogMS4yNSk7XG5cbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgLy8gVGhpcyBtaW4td2lkdGggd2FzIGNob3NlbiBiZWNhdXNlOlxuICAgIC8vIC0gaXQgbWFrZXMgdGhlIFNlbGVjdCB3aWRlciB0aGFuIGl0IGlzIHRhbGwgKHdoaWNoIGlzIHdoYXQgdXNlcnMgZXhwZWN0KVxuICAgIC8vIC0gMTEuNWVtIG1hdGNoZXMgdGhlICdsZW5ndGgtMTAnIHZhcmlhbnQgb2YgdGhlIGlucHV0IGNvbXBvbmVudFxuICAgIC8vIC0gaXQgZml0cyBjb21mb3J0YWJseSBvbiBzY3JlZW5zIGFzIG5hcnJvdyBhcyAyNDBweCB3aWRlXG4gICAgbWluLXdpZHRoOiAxMS41ZW07XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYmFzZS5nb3Z1ay1weC10by1yZW0oNDBweCk7XG4gICAgcGFkZGluZzogYmFzZS5nb3Z1ay1zcGFjaW5nKDEpO1xuICAgIGJvcmRlcjogYmFzZS4kZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudCBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoaW5wdXQtYm9yZGVyKTtcblxuICAgIC8vIERlZmF1bHQgdXNlciBhZ2VudCBjb2xvdXJzIGZvciBzZWxlY3RzIGNhbiBoYXZlIGxvdyBjb250cmFzdCxcbiAgICAvLyBhbmQgbWF5IGxvb2sgZGlzYWJsZWQgKCMyNDM1KVxuICAgIGNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHRleHQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGJhc2UuZ292dWstY29sb3VyKFwid2hpdGVcIik7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9jdXNlZC1mb3JtLWlucHV0O1xuICAgIH1cblxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1zZWxlY3QtLWVycm9yIHtcbiAgICBib3JkZXItY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoZXJyb3IpO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoaW5wdXQtYm9yZGVyKTtcbiAgICB9XG4gIH1cbn1cblxuIiwiQHVzZSBcInNhc3M6bWF0aFwiO1xuXG5AdXNlIFwiLi4vLi4vYmFzZVwiO1xuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gc3R5bGVzIHtcbiAgJGdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbi1hY3RpdmUtbGluay1ib3JkZXItd2lkdGg6IGJhc2UuZ292dWstc3BhY2luZygxKTtcbiAgJGdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbi10ZXh0LWNvbG91cjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihzdXJmYWNlLXRleHQpO1xuICAkZ292dWstc2VydmljZS1uYXZpZ2F0aW9uLWJhY2tncm91bmQ6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoc3VyZmFjZS1iYWNrZ3JvdW5kKTtcbiAgJGdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbi1ib3JkZXItY29sb3VyOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHN1cmZhY2UtYm9yZGVyKTtcblxuICAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uIHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWZvbnQoJHNpemU6IDE5KTtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbi1ib3JkZXItY29sb3VyO1xuICAgIC8vIEVuc3VyZSB0aGF0IGJvdGggcmF3IGNvbnRlbnQgYW5kIGNvbnRlbnQgd2l0aCB0eXBvZ3JhcGh5IGNsYXNzZXNcbiAgICAvLyB3aWxsIHBpY2sgdXAgdGhlIGNvcnJlY3QgY29sb3VyIGJ5IHNldHRpbmcgYm90aCBgLS1nb3Z1ay10ZXh0LWNvbG91cmBcbiAgICAvLyBhbmQgYGNvbG9yYC5cbiAgICAtLWdvdnVrLXRleHQtY29sb3VyOiAjeyRnb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb24tdGV4dC1jb2xvdXJ9O1xuICAgIGNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHRleHQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb24tYmFja2dyb3VuZDtcbiAgfVxuXG4gIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX2NvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcblxuICAgIEBtZWRpYSAje2Jhc2UuZ292dWstZnJvbS1icmVha3BvaW50KHRhYmxldCl9IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhlc2Ugc3R5bGVzIGFyZSBzaGFyZWQgYmV0d2VlbiBuYXYgaXRlbXMgYW5kIHRoZSBzZXJ2aWNlIG5hbWUsIHRoZXlcbiAgLy8gZW5zdXJlIHRoYXQgYm90aCBvZiB0aGVtIHJlbWFpbiB2ZXJ0aWNhbGx5IGFsaWduZWQgd2l0aCBvbmUgYW5vdGhlclxuICAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19pdGVtLFxuICAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19zZXJ2aWNlLW5hbWUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IGJhc2UuZ292dWstc3BhY2luZygyKSAwO1xuXG4gICAgLy8gQSBib3JkZXIgbWF0Y2hpbmcgdGhlIGxpbmsgY29sb3VyIGlzIHVzZWQgdG8gbWFyayB0aGUgYWN0aXZlIHNlY3Rpb24g4oCTXG4gICAgLy8gc2VlIHRoZSBgZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19pdGVtLS1hY3RpdmVgIGNsYXNzXG4gICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGxpbmspO1xuXG4gICAgQG1lZGlhICN7YmFzZS5nb3Z1ay1mcm9tLWJyZWFrcG9pbnQodGFibGV0KX0ge1xuICAgICAgLy8gaW5saW5lLWJsb2NrIGlzIHVzZWQgYXMgYSBmYWxsYmFjayBmb3IgYnJvd3NlcnMgdGhhdCBkb24ndCBzdXBwb3J0IGZsZXhib3hcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nOiBiYXNlLmdvdnVrLXNwYWNpbmcoMykgMDtcblxuICAgICAgLy8gTW9yZSBtYWdpYyBudW1iZXJzIGFob3k6XG4gICAgICAvLyAyOSBpcyB0aGUgZGVzaXJlZCBoZWlnaHQgb2YgdGhlIGVsZW1lbnQgKDYwKSwgbWludXMgdG9wIGFuZCBib3R0b21cbiAgICAgIC8vIHBhZGRpbmcgKDLDlzE1KSwgbWludXMgYm90dG9tIGJvcmRlciAoMSk7IDE5IGlzIHRoZSBmb250LXNpemUgYXQgdGhpc1xuICAgICAgLy8gcG9pbnQuIFRoaXMgZ2l2ZXMgdXMgdGhlIHBlcmZlY3QgZnJhY3Rpb25hbCBsaW5lIGhlaWdodCB0byBtYWtlIHRoZVxuICAgICAgLy8gb3ZlcmFsbCBjb21wb25lbnQgNjBweCBoaWdoXG4gICAgICBsaW5lLWhlaWdodDogbWF0aC5kaXYoMjksIDE5KTtcblxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig2LCAkZGlyZWN0aW9uOiByaWdodCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSB0b3AgbWFyZ2luIG9mIHRoZSBmaXJzdCBuYXYgaXRlbSBpZiB0aGVyZSBpcyBhIHNlcnZpY2UgbmFtZSBidXRcbiAgLy8gdGhlcmUncyBubyBtZW51IGJ1dHRvbiAoZWl0aGVyIGJlY2F1c2UgaXQgZG9lc24ndCBleGlzdCBvciBpdCdzIGhpZGRlbilcbiAgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fc2VydmljZS1uYW1lICsgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fd3JhcHBlciB7XG4gICAgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fbGlzdDpmaXJzdC1jaGlsZCxcbiAgICAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX190b2dnbGVbaGlkZGVuXSArIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX2xpc3Qge1xuICAgICAgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9faXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9faXRlbS0tYWN0aXZlIHtcbiAgICBAbWVkaWEgI3tiYXNlLmdvdnVrLXVudGlsLWJyZWFrcG9pbnQodGFibGV0KX0ge1xuICAgICAgLy8gTmVnYXRpdmUgb2Zmc2V0IHRoZSBsZWZ0IG1hcmdpbiBzbyB3ZSBjYW4gcGxhY2UgYSBjdXJyZW50IHBhZ2UgaW5kaWNhdG9yXG4gICAgICAvLyB0byB0aGUgbGVmdCB3aXRob3V0IG1pc2FsaWduaW5nIHRoZSBsaXN0IGl0ZW0gdGV4dC5cbiAgICAgIG1hcmdpbi1sZWZ0OiAoKGJhc2UuZ292dWstc3BhY2luZygyKSArICRnb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb24tYWN0aXZlLWxpbmstYm9yZGVyLXdpZHRoKSAqIC0xKTtcbiAgICAgIHBhZGRpbmctbGVmdDogYmFzZS5nb3Z1ay1zcGFjaW5nKDIpO1xuICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6ICRnb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb24tYWN0aXZlLWxpbmstYm9yZGVyLXdpZHRoO1xuICAgIH1cblxuICAgIEBtZWRpYSAje2Jhc2UuZ292dWstZnJvbS1icmVha3BvaW50KHRhYmxldCl9IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoMykgLSAkZ292dWstc2VydmljZS1uYXZpZ2F0aW9uLWFjdGl2ZS1saW5rLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6ICRnb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb24tYWN0aXZlLWxpbmstYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX2xpbmsge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstbGluay1jb21tb247XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1saW5rLXN0eWxlLW5vLXVuZGVybGluZTtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWxpbmstc3R5bGUtbm8tdmlzaXRlZC1zdGF0ZTtcbiAgfVxuXG4gIC8vXG4gIC8vIFNlcnZpY2UgbmFtZSBzcGVjaWZpYyBjb2RlXG4gIC8vXG5cbiAgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fc2VydmljZS1uYW1lIHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXR5cG9ncmFwaHktd2VpZ2h0LWJvbGQ7XG4gIH1cblxuICAvLyBBbm5veWluZ2x5IHRoaXMgcmVxdWlyZXMgYSBjb21wb3VuZCBzZWxlY3RvciBpbiBvcmRlciB0byBvdmVyY29tZSB0aGVcbiAgLy8gc3BlY2lmaWNpdHkgb2YgdGhlIG90aGVyIGxpbmsgY29sb3VyIG92ZXJyaWRlIHdlJ3JlIGRvaW5nXG4gIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX3NlcnZpY2UtbmFtZSAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19saW5rIHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWxpbmstc3R5bGUtdGV4dDtcbiAgfVxuXG4gIC8vIEFsbG93IG5hdmlnYXRpb24gc2VjdGlvbiB0byBhbHdheXMgdGFrZSB1cCBtYXhpbXVtIGF2YWlsYWJsZSBzcGFjZSxcbiAgLy8gcmF0aGVyIHRoYW4gc2l6aW5nIHRvIGZpdCB0aGUgY29udGVudC4gVGhpcyBtYWtlcyBpdCBlYXNpZXIgdG8gcmlnaHQgYWxpZ25cbiAgLy8gbmF2IGl0ZW1zIGFuZCB1c2Ugc2xvdHMuXG4gIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX3dyYXBwZXIge1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgfVxuXG4gIC8vXG4gIC8vIE5hdmlnYXRpb24gbGlzdCBzcGVjaWZpYyBjb2RlXG4gIC8vXG5cbiAgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWZvbnQoJHNpemU6IDE5LCAkd2VpZ2h0OiBib2xkKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbjogYmFzZS5nb3Z1ay1zcGFjaW5nKDIpIDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIobGluayk7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWZvY3VzZWQtdGV4dDtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXNoYXBlLWFycm93KCRkaXJlY3Rpb246IGRvd24sICRiYXNlOiAxMHB4LCAkZGlzcGxheTogaW5saW5lLWJsb2NrKTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBtYXJnaW4tbGVmdDogYmFzZS5nb3Z1ay1zcGFjaW5nKDEpO1xuICAgIH1cblxuICAgICZbYXJpYS1leHBhbmRlZD1cInRydWVcIl06OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGJhc2UuZ292dWstc2hhcGUtYXJyb3coJGRpcmVjdGlvbjogdXAsICRiYXNlOiAxMHB4LCAkZGlzcGxheTogaW5saW5lLWJsb2NrKTtcbiAgICB9XG5cbiAgICAvLyBFbnN1cmUgdGhlIGJ1dHRvbiBzdGF5cyBoaWRkZW4gaWYgdGhlIGhpZGRlbiBhdHRyaWJ1dGUgaXMgcHJlc2VudFxuICAgICZbaGlkZGVuXSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC8vIElmIHdlIGhhdmUgYm90aCBhIHNlcnZpY2UgbmFtZSBhbmQgbmF2aWdhdGlvbiB0b2dnbGUsIHJlbW92ZSB0aGVcbiAgICAvLyBtYXJnaW4tdG9wIHNvIHRoYXQgdGhlcmUgaXNuJ3QgYSBidW5jaCBvZiBzcGFjZSBiZXR3ZWVuIHRoZW1cbiAgICAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19zZXJ2aWNlLW5hbWUgKyAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX193cmFwcGVyICYge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gIH1cblxuICAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19saXN0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogYmFzZS5nb3Z1ay1zcGFjaW5nKDMpO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgIC8vIE1ha2UgdGhlIG5hdmlnYXRpb24gbGlzdCBhIGZsZXhib3guIERvaW5nIHNvIHJlc29sdmVzIGEgY291cGxlIG9mXG4gICAgLy8gYWNjZXNzaWJpbGl0eSBwcm9ibGVtcyBjYXVzZWQgYnkgdGhlIGxpc3QgaXRlbXMgYmVpbmcgaW5saW5lLWJsb2NrczpcbiAgICAvLyAtIFJlbW92ZXMgdGhlIGV4dHJhIHdoaXRlc3BhY2UgZnJvbSBiZXR3ZWVuIGVhY2ggbGlzdCBpdGVtIHRoYXQgc2NyZWVuXG4gICAgLy8gICByZWFkZXJzIHdvdWxkIHBvaW50bGVzc2x5IGFubm91bmNlLlxuICAgIC8vIC0gRml4ZXMgYW4gTlZEQSBpc3N1ZSBpbiBGaXJlZm94IGFuZCBDaHJvbWUgPD0gMTI0IHdoZXJlIGl0IHdvdWxkIHJlYWRcbiAgICAvLyAgIGFsbCBvZiB0aGUgbGlua3MgYXMgYSBydW4tb24gc2VudGVuY2UuXG4gICAgQG1lZGlhICN7YmFzZS5nb3Z1ay1mcm9tLWJyZWFrcG9pbnQodGFibGV0KX0ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgIC8vIEhvd2V2ZXIuLi4gSUUxMSB0b3RhbGx5IHRyaXBzIG92ZXIgZmxleGJveCBhbmQgZG9lc24ndCB3cmFwIGFueXRoaW5nLFxuICAgICAgLy8gbWFraW5nIGFsbCBvZiB0aGUgaXRlbXMgaW50byBhIHNpbmdsZSwgaG9yaXpvbnRhbGx5IHNjcm9sbGluZyByb3csXG4gICAgICAvLyB3aGljaCBpcyBubyBnb29kLiBUaGlzIENTUyBoYWNrIHJlbW92ZXMgdGhlIGZsZXhib3ggZGVmaW5pdGlvbiBmb3JcbiAgICAgIC8vIElFIDnigJMxMSwgcmV2ZXJ0aW5nIGl0IHRvIHRoZSBmbGF3ZWQsIGJ1dCBPSywgbm9uLWZsZXhib3ggdmVyc2lvbi5cbiAgICAgIC8vXG4gICAgICAvLyBDU1MgaGFjayBmcm9tIGh0dHA6Ly9icm93c2VyaGFja3MuY29tLyNoYWNrLWE2MGIwM2UzMDFhNjdmNzZhNWEyMjIyMWM3MzlkYzY0XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwXFwwKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFRoaXMgaXMgYSA8c3Ryb25nPiBlbGVtZW50IHRoYXQgaXMgdXNlZCBhcyBhIGZhbGxiYWNrIG1lY2hhbmlzbSBmb3JcbiAgLy8gdmlzdWFsbHkgaW5kaWNhdGluZyB0aGUgY3VycmVudCBwYWdlIGluIHNjZW5hcmlvcyB3aGVyZSBDU1MgaXNuJ3RcbiAgLy8gYXZhaWxhYmxlLiBXZSBkb24ndCBhY3R1YWxseSB3YW50IGl0IHRvIGJlIGJvbGQgbm9ybWFsbHksIHNvIHNldCBpdCB0b1xuICAvLyBpbmhlcml0IHRoZSBwYXJlbnQgZm9udC13ZWlnaHQuXG4gIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX2FjdGl2ZS1mYWxsYmFjayB7XG4gICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBJbnZlcnRlZCBjb2xvdXIgc2NoZW1lIHN0eWxlIGludGVuZGVkIGZvciBwcm9kdWN0IHBhZ2VzXG4gIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb24tLWludmVyc2Uge1xuICAgIC8vIFJlbW92ZSBib3R0b20gYm9yZGVyIHRvIGFkZCB3aWR0aC1jb250YWluZXIgb25lc1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG5cbiAgICAtLWdvdnVrLXRleHQtY29sb3VyOiAje2Jhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoaW52ZXJzZS10ZXh0KX07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihicmFuZCk7XG5cbiAgICAuZ292dWstd2lkdGgtY29udGFpbmVyIHtcbiAgICAgIGJvcmRlci13aWR0aDogMXB4IDA7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkZ292dWstc2VydmljZS1uYXZpZ2F0aW9uLWJvcmRlci1jb2xvdXI7XG4gICAgfVxuXG4gICAgLy8gU3VidHJhY3QgMXB4IG9mIHNwYWNlIHRvIGFjY291bnQgZm9yIHRoZSBleHRyYSBib3JkZXItdG9wXG4gICAgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fY29udGFpbmVyIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgfVxuXG4gICAgLy8gT3ZlcnJpZGUgdGhlICdhY3RpdmUnIGJvcmRlciBjb2xvdXJcbiAgICAuZ292dWstc2VydmljZS1uYXZpZ2F0aW9uX19pdGVtLFxuICAgIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX3NlcnZpY2UtbmFtZSB7XG4gICAgICBib3JkZXItY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgICB9XG5cbiAgICAvLyBPdmVycmlkZSBsaW5rIHN0eWxlc1xuICAgIC5nb3Z1ay1zZXJ2aWNlLW5hdmlnYXRpb25fX2xpbmsge1xuICAgICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1saW5rLXN0eWxlLXRleHQ7XG4gICAgfVxuXG4gICAgLy8gT3ZlcnJpZGUgbW9iaWxlIG1lbnUgdG9nZ2xlIGNvbG91ciB3aGVuIG5vdCBmb2N1c2VkXG4gICAgLmdvdnVrLXNlcnZpY2UtbmF2aWdhdGlvbl9fdG9nZ2xlOm5vdCg6Zm9jdXMpIHtcbiAgICAgIGNvbG9yOiBjdXJyZW50Y29sb3I7XG4gICAgfVxuICB9XG59XG5cbiIsIkB1c2UgXCJzYXNzOnN0cmluZ1wiO1xuXG5AdXNlIFwiLi4vLi4vYmFzZVwiO1xuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gc3R5bGVzIHtcbiAgLmdvdnVrLXNraXAtbGluayB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay12aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlO1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstbGluay1kZWNvcmF0aW9uO1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstbGluay1zdHlsZS10ZXh0O1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udCgkc2l6ZTogMTYpO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogYmFzZS5nb3Z1ay1zcGFjaW5nKDIpIGJhc2UuZ292dWstc3BhY2luZygzKTtcblxuICAgIC8vIFJlc3BlY3QgJ2Rpc3BsYXkgY3V0b3V0JyBzYWZlIGFyZWEgKGF2b2lkcyBub3RjaGVzIGFuZCByb3VuZGVkIGNvcm5lcnMpXG4gICAgQHN1cHBvcnRzIChwYWRkaW5nOiBzdHJpbmcudW5xdW90ZShcIm1heChjYWxjKDBweCkpXCIpKSB7XG4gICAgICAkcGFkZGluZy1zYWZlLWFyZWEtcmlnaHQ6IGNhbGMoI3tiYXNlLmdvdnVrLXNwYWNpbmcoMyl9ICsgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCkpO1xuICAgICAgJHBhZGRpbmctc2FmZS1hcmVhLWxlZnQ6IGNhbGMoI3tiYXNlLmdvdnVrLXNwYWNpbmcoMyl9ICsgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSk7XG5cbiAgICAgIC8vIFVzZSBtYXgoKSB0byBwaWNrIGxhcmdlc3QgcGFkZGluZywgZGVmYXVsdCBvciB3aXRoIHNhZmUgYXJlYVxuICAgICAgLy8gRXNjYXBlZCBkdWUgdG8gU2FzcyBtYXgoKSB2cy4gQ1NTIG5hdGl2ZSBtYXgoKVxuICAgICAgcGFkZGluZy1yaWdodDogc3RyaW5nLnVucXVvdGUoXCJtYXgoI3tiYXNlLmdvdnVrLXNwYWNpbmcoMyl9LCAjeyRwYWRkaW5nLXNhZmUtYXJlYS1yaWdodH0pXCIpO1xuICAgICAgcGFkZGluZy1sZWZ0OiBzdHJpbmcudW5xdW90ZShcIm1heCgje2Jhc2UuZ292dWstc3BhY2luZygzKX0sICN7JHBhZGRpbmctc2FmZS1hcmVhLWxlZnR9KVwiKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IGJhc2UuJGdvdnVrLWZvY3VzLXdpZHRoIHNvbGlkO1xuICAgICAgb3V0bGluZS1jb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihmb2N1cyk7XG4gICAgICBvdXRsaW5lLW9mZnNldDogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoZm9jdXMpO1xuXG4gICAgICBAbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAgICAgICBvdXRsaW5lLW9mZnNldDogKDAgLSBiYXNlLiRnb3Z1ay1mb2N1cy13aWR0aCk7XG4gICAgICB9XG5cbiAgICAgIC8vIFVuZG8gdW53YW50ZWQgY2hhbmdlcyB3aGVuIGdsb2JhbCBzdHlsZXMgYXJlIGVuYWJsZWRcbiAgICAgIEBpZiBiYXNlLiRnb3Z1ay1nbG9iYWwtc3R5bGVzIHtcbiAgICAgICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1saW5rLWRlY29yYXRpb247XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXNraXAtbGluay1mb2N1c2VkLWVsZW1lbnQge1xuICAgICY6Zm9jdXMge1xuICAgICAgLy8gUmVtb3ZlIHRoZSBuYXRpdmUgdmlzaWJsZSBmb2N1cyBpbmRpY2F0b3Igd2hlbiB0aGUgZWxlbWVudCBpc1xuICAgICAgLy8gcHJvZ3JhbW1hdGljYWxseSBmb2N1c2VkLlxuICAgICAgLy9cbiAgICAgIC8vIFdlIHNldCB0aGUgZm9jdXMgb24gdGhlIGxpbmtlZCBlbGVtZW50ICh0aGlzIGlzIHVzdWFsbHkgdGhlIDxtYWluPlxuICAgICAgLy8gZWxlbWVudCkgd2hlbiB0aGUgc2tpcCBsaW5rIGlzIGFjdGl2YXRlZCB0byBpbXByb3ZlIHNjcmVlbiByZWFkZXJcbiAgICAgIC8vIGFubm91bmNlbWVudHMuIEhvd2V2ZXIsIHdlIHJlbW92ZSB0aGUgdmlzaWJsZSBmb2N1cyBpbmRpY2F0b3IgZnJvbSB0aGVcbiAgICAgIC8vIGxpbmtlZCBlbGVtZW50IGJlY2F1c2UgdGhlIHVzZXIgY2Fubm90IGludGVyYWN0IHdpdGggaXQuXG4gICAgICAvL1xuICAgICAgLy8gQSByZWxhdGVkIGRpc2N1c3Npb246IGh0dHBzOi8vZ2l0aHViLmNvbS93M2Mvd2NhZy9pc3N1ZXMvMTAwMVxuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuIiwiLy8vL1xuLy8vIEBncm91cCBoZWxwZXJzL2FjY2Vzc2liaWxpdHlcbi8vLy9cblxuQHVzZSBcIi4uL3Rvb2xzL2lmXCIgYXMgKjtcblxuLy8vIEhlbHBlciBmdW5jdGlvbiBjb250YWluaW5nIHRoZSBjb21tb24gY29kZSBmb3IgdGhlIGZvbGxvd2luZyB0d28gbWl4aW5zXG4vLy9cbi8vLyBAbGluayBodHRwczovL3Nub29rLmNhL2FyY2hpdmVzL2h0bWxfYW5kX2Nzcy9oaWRpbmctY29udGVudC1mb3ItYWNjZXNzaWJpbGl0eVxuLy8vICAgLSBIaWRpbmcgQ29udGVudCBmb3IgQWNjZXNzaWJpbGl0eSwgSm9uYXRoYW4gU25vb2ssIEZlYnJ1YXJ5IDIwMTFcbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9ibG9iLzlmMTM2OTVkMjFmZjkyYzU1Yzc4ZGZhOWYxNmJiMDJhMWI2ZTkxMWYvc3JjL2Nzcy9tYWluLmNzcyNMMTIxLUwxNThcbi8vLyAgIC0gaDVicC9odG1sNS1ib2lsZXJwbGF0ZSAtIFRoYW5rcyFcbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGltcG9ydGFudCBbdHJ1ZV0gLSBXaGV0aGVyIHRvIG1hcmsgYXMgYCFpbXBvcnRhbnRgXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcblxuQG1peGluIF9nb3Z1ay12aXN1YWxseS1oaWRlLWNvbnRlbnQoJGltcG9ydGFudDogdHJ1ZSkge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgZ292dWstaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCk7XG5cbiAgd2lkdGg6IDFweCBnb3Z1ay1pZigkaW1wb3J0YW50LCAhaW1wb3J0YW50KTtcbiAgaGVpZ2h0OiAxcHggZ292dWstaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCk7XG4gIC8vIElmIG1hcmdpbiBpcyBzZXQgdG8gYSBuZWdhdGl2ZSB2YWx1ZSBpdCBjYW4gY2F1c2UgdGV4dCB0byBiZSBhbm5vdW5jZWQgaW5cbiAgLy8gdGhlIHdyb25nIG9yZGVyIGluIFZvaWNlT3ZlciBmb3IgT1NYXG4gIG1hcmdpbjogMCBnb3Z1ay1pZigkaW1wb3J0YW50LCAhaW1wb3J0YW50KTtcbiAgcGFkZGluZzogMCBnb3Z1ay1pZigkaW1wb3J0YW50LCAhaW1wb3J0YW50KTtcblxuICBvdmVyZmxvdzogaGlkZGVuIGdvdnVrLWlmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQpO1xuXG4gIC8vIGBjbGlwYCBpcyBuZWVkZWQgZm9yIElFMTEgc3VwcG9ydFxuICBjbGlwOiByZWN0KDAgMCAwIDApIGdvdnVrLWlmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQpO1xuICAtd2Via2l0LWNsaXAtcGF0aDogaW5zZXQoNTAlKSBnb3Z1ay1pZigkaW1wb3J0YW50LCAhaW1wb3J0YW50KTtcbiAgICAgICAgICBjbGlwLXBhdGg6IGluc2V0KDUwJSkgZ292dWstaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCk7XG5cbiAgYm9yZGVyOiAwIGdvdnVrLWlmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQpO1xuXG4gIC8vIEZvciBsb25nIGNvbnRlbnQsIGxpbmUgZmVlZHMgYXJlIG5vdCBpbnRlcnByZXRlZCBhcyBzcGFjZXMgYW5kIHNtYWxsIHdpZHRoXG4gIC8vIGNhdXNlcyBjb250ZW50IHRvIHdyYXAgMSB3b3JkIHBlciBsaW5lOlxuICAvLyBodHRwczovL21lZGl1bS5jb20vQGplc3NlYmVhY2gvYmV3YXJlLXNtdXNoZWQtb2ZmLXNjcmVlbi1hY2Nlc3NpYmxlLXRleHQtNTk1MmE0YzJjYmZlXG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgZ292dWstaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCk7XG5cbiAgLy8gUHJldmVudCB1c2VycyBmcm9tIHNlbGVjdGluZyBvciBjb3B5aW5nIHZpc3VhbGx5LWhpZGRlbiB0ZXh0LiBUaGlzIHByZXZlbnRzXG4gIC8vIGEgdXNlciB1bmludGVudGlvbmFsbHkgY29weWluZyBtb3JlIHRleHQgdGhhbiB0aGV5IGludGVuZGVkIGFuZCBuZWVkaW5nIHRvXG4gIC8vIG1hbnVhbGx5IHRyaW0gaXQgZG93biBhZ2Fpbi5cbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLy8vIEhpZGUgYW4gZWxlbWVudCB2aXN1YWxseSwgYnV0IGhhdmUgaXQgYXZhaWxhYmxlIGZvciBzY3JlZW4gcmVhZGVyc1xuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkaW1wb3J0YW50IFt0cnVlXSAtIFdoZXRoZXIgdG8gbWFyayBhcyBgIWltcG9ydGFudGBcbi8vL1xuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay12aXN1YWxseS1oaWRkZW4oJGltcG9ydGFudDogdHJ1ZSkge1xuICBAaW5jbHVkZSBfZ292dWstdmlzdWFsbHktaGlkZS1jb250ZW50KCRpbXBvcnRhbnQ6ICRpbXBvcnRhbnQpO1xuXG4gIC8vIEFic29sdXRlIHBvc2l0aW9uaW5nIGhhcyB0aGUgdW5pbnRlbmRlZCBjb25zZXF1ZW5jZSBvZiByZW1vdmluZyBhbnlcbiAgLy8gd2hpdGVzcGFjZSBzdXJyb3VuZGluZyB2aXN1YWxseSBoaWRkZW4gdGV4dCBmcm9tIHRoZSBhY2Nlc3NpYmlsaXR5IHRyZWUuXG4gIC8vIEluc2VydCBhIHNwYWNlIGNoYXJhY3RlciBiZWZvcmUgYW5kIGFmdGVyIHZpc3VhbGx5IGhpZGRlbiB0ZXh0IHRvIHNlcGFyYXRlXG4gIC8vIGl0IGZyb20gYW55IHZpc2libGUgdGV4dCBzdXJyb3VuZGluZyBpdC5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcMDBhMFwiO1xuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXFwwMGEwXCI7XG4gIH1cbn1cblxuLy8vIEhpZGUgYW4gZWxlbWVudCB2aXN1YWxseSwgYnV0IGhhdmUgaXQgYXZhaWxhYmxlIGZvciBzY3JlZW4gcmVhZGVycyB3aGlsc3Rcbi8vLyBhbGxvd2luZyB0aGUgZWxlbWVudCB0byBiZSBmb2N1c2VkIHdoZW4gbmF2aWdhdGVkIHRvIHZpYSB0aGUga2V5Ym9hcmQgKGUuZy5cbi8vLyBmb3IgdGhlIHNraXAgbGluaylcbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGltcG9ydGFudCBbdHJ1ZV0gLSBXaGV0aGVyIHRvIG1hcmsgYXMgYCFpbXBvcnRhbnRgXG4vLy9cbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AbWl4aW4gZ292dWstdmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZSgkaW1wb3J0YW50OiB0cnVlKSB7XG4gIC8vIElFIDExIGRvZXNuJ3Qgc3VwcG9ydCB0aGUgY29tYmluZWQgYDpub3QoOmFjdGl2ZSwgOmZvY3VzKWAgc3ludGF4LlxuICAvLyBBbHNvIGFsbG93cyBmb3IgJzpmb2N1cycgY29tcGFuaW9uIGNsYXNzZXMgZnJvbSBwb3N0Y3NzLXBzZXVkby1jbGFzc2VzXG4gIC8vIHdoaWNoIHRoZSBwbHVnaW4gdW5mb3J0dW5hdGVseSBkb2Vzbid0IGhhbmRsZSBhdXRvbWF0aWNhbGx5LlxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItY2xhc3MtcGF0dGVyblxuICAmOm5vdCg6YWN0aXZlKTpub3QoOmZvY3VzKTpub3QoLlxcOmZvY3VzKSB7XG4gICAgQGluY2x1ZGUgX2dvdnVrLXZpc3VhbGx5LWhpZGUtY29udGVudCgkaW1wb3J0YW50OiAkaW1wb3J0YW50KTtcbiAgfVxufVxuXG4iLCJAdXNlIFwiLi4vLi4vYmFzZVwiO1xuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gc3R5bGVzIHtcbiAgLmdvdnVrLXN1bW1hcnktbGlzdCB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1mb250KCRzaXplOiAxOSk7XG5cbiAgICBjb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cih0ZXh0KTtcblxuICAgIEBtZWRpYSAje2Jhc2UuZ292dWstZnJvbS1icmVha3BvaW50KHRhYmxldCl9IHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkOyAvLyBSZXF1aXJlZCB0byBhbGxvdyB1cyB0byB3cmFwIHdvcmRzIHRoYXQgb3ZlcmZsb3cuXG4gICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgIH1cblxuICAgIC8vIEtlZXAgbWFyZ2lucyB0b2dldGhlclxuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlIG9yZGVyL3Byb3BlcnRpZXMtb3JkZXJcbiAgICBtYXJnaW46IDA7IC8vIFJlc2V0IGRlZmF1bHQgdXNlciBhZ2VudCBzdHlsZXNcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDYsIFwiYm90dG9tXCIpO1xuICAgIC8vIHN0eWxlbGludC1lbmFibGUgb3JkZXIvcHJvcGVydGllcy1vcmRlclxuICB9XG5cbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fcm93IHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihib3JkZXIpO1xuXG4gICAgQG1lZGlhICN7YmFzZS5nb3Z1ay11bnRpbC1icmVha3BvaW50KHRhYmxldCl9IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IGJhc2UuZ292dWstc3BhY2luZygzKTtcbiAgICB9XG4gICAgQG1lZGlhICN7YmFzZS5nb3Z1ay1mcm9tLWJyZWFrcG9pbnQodGFibGV0KX0ge1xuICAgICAgZGlzcGxheTogdGFibGUtcm93O1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlbW92ZSByaWdodCBwYWRkaW5nIGZyb20gdGhlIGxhc3QgY29sdW1uIGluIHRoZSByb3dcbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fcm93Om5vdCguZ292dWstc3VtbWFyeS1saXN0X19yb3ctLW5vLWFjdGlvbnMpID4gOmxhc3QtY2hpbGQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cblxuICAvLyBQcm92aWRlIGFuIGVtcHR5ICdjZWxsJyBmb3Igcm93cyB0aGF0IGRvbid0IGhhdmUgYWN0aW9ucyDigJMgb3RoZXJ3aXNlIHRoZVxuICAvLyBib3R0b20gYm9yZGVyIGlzIG5vdCBkcmF3biBmb3IgdGhhdCBwYXJ0IG9mIHRoZSByb3cgaW4gc29tZSBicm93c2Vycy5cbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fcm93LS1uby1hY3Rpb25zIHtcbiAgICBAbWVkaWEgI3tiYXNlLmdvdnVrLWZyb20tYnJlYWtwb2ludCh0YWJsZXQpfSB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fa2V5LFxuICAuZ292dWstc3VtbWFyeS1saXN0X192YWx1ZSxcbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fYWN0aW9ucyB7XG4gICAgbWFyZ2luOiAwOyAvLyBSZXNldCBkZWZhdWx0IHVzZXIgYWdlbnQgc3R5bGVzXG5cbiAgICBAbWVkaWEgI3tiYXNlLmdvdnVrLWZyb20tYnJlYWtwb2ludCh0YWJsZXQpfSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgcGFkZGluZy10b3A6IGJhc2UuZ292dWstc3BhY2luZygyKTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGJhc2UuZ292dWstc3BhY2luZyg0KTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoMik7XG5cbiAgICAgIC8vIE1ha2Ugc3VyZSB0aGF0IGFueSBtdWx0aS1saW5lIGlubGluZS1ibG9ja3MgaW5zaWRlIG9mIHRoZSBzdW1tYXJ5XG4gICAgICAvLyBsaXN0IChlLmcuIFRhZyBjb21wb25lbnRzKSBkb24ndCBjYXVzZSB0aGUgdGV4dCBiYXNlbGluZSB0byBzaGlmdCxcbiAgICAgIC8vIGNhdXNpbmcgb3RoZXIgY2VsbHMgaW4gdGhlIHJvdyB0byBiZSBtaXNhbGlnbmVkLlxuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB9XG4gIH1cblxuICAuZ292dWstc3VtbWFyeS1saXN0X19hY3Rpb25zIHtcbiAgICBtYXJnaW4tYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoMyk7XG4gICAgQG1lZGlhICN7YmFzZS5nb3Z1ay1mcm9tLWJyZWFrcG9pbnQodGFibGV0KX0ge1xuICAgICAgd2lkdGg6IDIwJTtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX2tleSxcbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fdmFsdWUge1xuICAgIC8vIEF1dG9tYXRpYyB3cmFwcGluZyBmb3IgdW5icmVha2FibGUgdGV4dCAoZS5nLiBVUkxzKVxuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDsgLy8gRmFsbGJhY2sgZm9yIG9sZGVyIGJyb3dzZXJzIG9ubHlcbiAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICB9XG5cbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fa2V5IHtcbiAgICBtYXJnaW4tYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoMSk7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1ib2xkO1xuICAgIEBtZWRpYSAje2Jhc2UuZ292dWstZnJvbS1icmVha3BvaW50KHRhYmxldCl9IHtcbiAgICAgIHdpZHRoOiAzMCU7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fdmFsdWUge1xuICAgIEBtZWRpYSAje2Jhc2UuZ292dWstdW50aWwtYnJlYWtwb2ludCh0YWJsZXQpfSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoMyk7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fdmFsdWUgPiBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoMik7XG4gIH1cblxuICAuZ292dWstc3VtbWFyeS1saXN0X192YWx1ZSA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fYWN0aW9ucy1saXN0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7IC8vIFJlc2V0IGRlZmF1bHQgdXNlciBhZ2VudCBzdHlsZXNcbiAgICBwYWRkaW5nOiAwOyAvLyBSZXNldCBkZWZhdWx0IHVzZXIgYWdlbnQgc3R5bGVzXG4gIH1cblxuICAuZ292dWstc3VtbWFyeS1saXN0X19hY3Rpb25zLWxpc3QtaXRlbSxcbiAgLmdvdnVrLXN1bW1hcnktY2FyZF9fYWN0aW9uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cblxuICBAbWVkaWEgI3tiYXNlLmdvdnVrLXVudGlsLWJyZWFrcG9pbnQodGFibGV0KX0ge1xuICAgIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX2FjdGlvbnMtbGlzdC1pdGVtLFxuICAgIC5nb3Z1ay1zdW1tYXJ5LWNhcmRfX2FjdGlvbiB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGJhc2UuZ292dWstc3BhY2luZygyKTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGJhc2UuZ292dWstc3BhY2luZygyKTtcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGJvcmRlcik7XG4gICAgfVxuXG4gICAgLmdvdnVrLXN1bW1hcnktbGlzdF9fYWN0aW9ucy1saXN0LWl0ZW06bGFzdC1jaGlsZCxcbiAgICAuZ292dWstc3VtbWFyeS1jYXJkX19hY3Rpb246bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAje2Jhc2UuZ292dWstZnJvbS1icmVha3BvaW50KHRhYmxldCl9IHtcbiAgICAuZ292dWstc3VtbWFyeS1saXN0X19hY3Rpb25zLWxpc3QtaXRlbSxcbiAgICAuZ292dWstc3VtbWFyeS1jYXJkX19hY3Rpb24ge1xuICAgICAgbWFyZ2luLWxlZnQ6IGJhc2UuZ292dWstc3BhY2luZygyKTtcbiAgICAgIHBhZGRpbmctbGVmdDogYmFzZS5nb3Z1ay1zcGFjaW5nKDIpO1xuICAgIH1cblxuICAgIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX2FjdGlvbnMtbGlzdC1pdGVtOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIC5nb3Z1ay1zdW1tYXJ5LWNhcmRfX2FjdGlvbjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkO1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoYm9yZGVyKTtcbiAgICB9XG5cbiAgICAuZ292dWstc3VtbWFyeS1saXN0X19hY3Rpb25zLWxpc3QtaXRlbTpmaXJzdC1jaGlsZCxcbiAgICAuZ292dWstc3VtbWFyeS1jYXJkX19hY3Rpb246Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gTGFyZ2UgZ3JvdXBzIG9mIGFjdGlvbiBsaW5rcyBtYXkgd3JhcCBvbnRvIG11bHRpcGxlIGxpbmVzLiBCZWNhdXNlIHRoZSBsaW5rXG4gIC8vIGZvY3VzIHN0eWxlcyBhcmUgYXBwbGllZCBvdXRzaWRlIG9mIHRoZSBsaW5rJ3MgYm91bmRpbmcgYm94LCB0aGVyZSBhcmVcbiAgLy8gc2l0dWF0aW9ucyB3aGVyZSB0aGUgZm9jdXMgc3R5bGUgb24gYSBsaW5rIGNhbiBiZSBvdmVybGFwcGVkIGJ5IHN1YnNlcXVlbnRcbiAgLy8gbGlua3MuIFdlIGRvbid0IHdhbnQgdGhpcywgc28gbGV0J3MgY3JlYXRlIGEgbmV3IHN0YWNraW5nIGNvbnRleHQgb24gZm9jdXNcbiAgLy8gc28gdGhlIGxpbmsgYWx3YXlzIGFwcGVhcnMgdG8gYmUgJ29uIHRvcCcuXG4gIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX2FjdGlvbnMtbGlzdC1pdGVtIC5nb3Z1ay1saW5rOmZvY3VzIHtcbiAgICBpc29sYXRpb246IGlzb2xhdGU7XG4gIH1cblxuICAvLyBObyBib3JkZXIgb24gZW50aXJlIHN1bW1hcnkgbGlzdFxuICAuZ292dWstc3VtbWFyeS1saXN0LS1uby1ib3JkZXIge1xuICAgIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX3JvdyB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuXG4gICAgLy8gSW5jcmVhc2UgcGFkZGluZyBieSAxcHggdG8gY29tcGVuc2F0ZSBmb3IgJ21pc3NpbmcnIGJvcmRlclxuICAgIEBtZWRpYSAje2Jhc2UuZ292dWstZnJvbS1icmVha3BvaW50KHRhYmxldCl9IHtcbiAgICAgIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX2tleSxcbiAgICAgIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX3ZhbHVlLFxuICAgICAgLmdvdnVrLXN1bW1hcnktbGlzdF9fYWN0aW9ucyB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoMikgKyAxcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTm8gYm9yZGVyIG9uIHNwZWNpZmljIHJvd3NcbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fcm93LS1uby1ib3JkZXIge1xuICAgIGJvcmRlcjogMDtcblxuICAgIC8vIEluY3JlYXNlIHBhZGRpbmcgYnkgMXB4IHRvIGNvbXBlbnNhdGUgZm9yICdtaXNzaW5nJyBib3JkZXJcbiAgICBAbWVkaWEgI3tiYXNlLmdvdnVrLWZyb20tYnJlYWtwb2ludCh0YWJsZXQpfSB7XG4gICAgICAuZ292dWstc3VtbWFyeS1saXN0X19rZXksXG4gICAgICAuZ292dWstc3VtbWFyeS1saXN0X192YWx1ZSxcbiAgICAgIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX2FjdGlvbnMge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogYmFzZS5nb3Z1ay1zcGFjaW5nKDIpICsgMXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEFkZGl0aW9uYWwgYmxvY2sgZm9yIHRoZSBzdW1tYXJ5IGNhcmRcbiAgLmdvdnVrLXN1bW1hcnktY2FyZCB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig2LCBcImJvdHRvbVwiKTtcbiAgICBib3JkZXI6IDFweCBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoYm9yZGVyKTtcbiAgfVxuXG4gIC5nb3Z1ay1zdW1tYXJ5LWNhcmRfX3RpdGxlLXdyYXBwZXIge1xuICAgIHBhZGRpbmc6IGJhc2UuZ292dWstc3BhY2luZygzKTtcblxuICAgIC8vIEVuc3VyZXMgdGhlIGNhcmQgaGVhZGVyIGFwcGVhcnMgc2VwYXJhdGUgdG8gdGhlIHN1bW1hcnkgbGlzdCBpbiBmb3JjZWRcbiAgICAvLyBjb2xvdXJzIG1vZGVcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogYmFzZS5nb3Z1ay1jb2xvdXIoXCJibGFja1wiLCAkdmFyaWFudDogXCJ0aW50LTk1XCIpO1xuXG4gICAgQG1lZGlhICN7YmFzZS5nb3Z1ay1mcm9tLWJyZWFrcG9pbnQodGFibGV0KX0ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgcGFkZGluZzogYmFzZS5nb3Z1ay1zcGFjaW5nKDMpIGJhc2UuZ292dWstc3BhY2luZyg0KTtcbiAgICB9XG4gIH1cblxuICAuZ292dWstc3VtbWFyeS1jYXJkX190aXRsZSB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1mb250KCRzaXplOiAxOSwgJHdlaWdodDogYm9sZCk7XG4gICAgbWFyZ2luOiBiYXNlLmdvdnVrLXNwYWNpbmcoMSkgYmFzZS5nb3Z1ay1zcGFjaW5nKDQpIGJhc2UuZ292dWstc3BhY2luZygyKSAwO1xuICAgIGNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHRleHQpO1xuXG4gICAgQG1lZGlhICN7YmFzZS5nb3Z1ay1mcm9tLWJyZWFrcG9pbnQodGFibGV0KX0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogYmFzZS5nb3Z1ay1zcGFjaW5nKDEpO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1zdW1tYXJ5LWNhcmRfX2FjdGlvbnMge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udC1zaXplKCRzaXplOiAxOSk7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1ib2xkO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIHJvdy1nYXA6IDEwcHg7XG4gICAgbWFyZ2luOiBiYXNlLmdvdnVrLXNwYWNpbmcoMSkgMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICBAbWVkaWEgI3tiYXNlLmdvdnVrLWZyb20tYnJlYWtwb2ludCh0YWJsZXQpfSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHJpZ2h0O1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXN1bW1hcnktY2FyZF9fYWN0aW9uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG5cbiAgICAvLyBXZSB1c2UgdGhlIGZvbGxvd2luZyBtZWRpYSBxdWVyeSB0byB0YXJnZXQgSUUxMSBhbmQgMTAgb25seSB0byBhZGQgbWFyZ2luXG4gICAgLy8gYmV0d2VlbiBhY3Rpb25zLlxuICAgIC8vXG4gICAgLy8gV2UgZG8gdGhpcyBiZWNhdXNlIHdlJ3JlIHVzaW5nIHJvdy1nYXAgdG8gY3JlYXRlIHNwYWNlIGJldHdlZW4gYWN0aW9ucyBvblxuICAgIC8vIG1vcmUgZXZlcmdyZWVuIGJyb3dzZXJzIHdoaWNoIElFIGRvZXNuJ3Qgc3VwcG9ydC4gQHN1cHBvcnRzIGN1cnJlbnRseSBpc24ndFxuICAgIC8vIGEgdmlhYmxlIHNvbHV0aW9uLCBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3czYy9jc3N3Zy1kcmFmdHMvaXNzdWVzLzM1NTkuXG4gICAgLy9cbiAgICAvLyBTb2x1dGlvbiB0YWtlbiBmcm9tIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzExMTczMTA2L2FwcGx5LXN0eWxlLW9ubHktb24taWUjYW5zd2VyLTM2NDQ4ODYwXG4gICAgLy8gd2hpY2ggYWxzbyBpbmNsdWRlcyBhbiBleHBsYW5hdGlvbiBvZiB3aHkgdGhpcyB3b3Jrc1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoMSk7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXN1bW1hcnktY2FyZF9fYWN0aW9uOmxhc3QtY2hpbGQge1xuICAgIC8vIFNlZSBhYm92ZSBjb21tZW50IGZvciB3aHkgdGhpcyBpcyBoZXJlXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXN1bW1hcnktY2FyZF9fY29udGVudCB7XG4gICAgcGFkZGluZzogYmFzZS5nb3Z1ay1zcGFjaW5nKDMpIGJhc2UuZ292dWstc3BhY2luZygzKSAwO1xuXG4gICAgQG1lZGlhICN7YmFzZS5nb3Z1ay1mcm9tLWJyZWFrcG9pbnQodGFibGV0KX0ge1xuICAgICAgcGFkZGluZzogYmFzZS5nb3Z1ay1zcGFjaW5nKDMpIGJhc2UuZ292dWstc3BhY2luZyg0KTtcbiAgICB9XG5cbiAgICAuZ292dWstc3VtbWFyeS1saXN0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLmdvdnVrLXN1bW1hcnktbGlzdF9fcm93Omxhc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuIiwiQHVzZSBcIi4uLy4uL2Jhc2VcIjtcblxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIHN0eWxlcyB7XG4gIC5nb3Z1ay10YWJsZSB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1mb250KCRzaXplOiAxOSk7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDYsIFwiYm90dG9tXCIpO1xuXG4gICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICBjb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cih0ZXh0KTtcbiAgfVxuXG4gIC8vIE1vZGlmaWVyIGZvciB0YWJsZXMgd2l0aCBhIGxvdCBvZiBkYXRhLiBUYWJsZXMgd2l0aCBsb3RzIG9mIGRhdGEgYmVuZWZpdFxuICAvLyBmcm9tIGEgc21hbGxlciBmb250IHNpemUgb24gc21hbGwgc2NyZWVucy5cbiAgLmdvdnVrLXRhYmxlLS1zbWFsbC10ZXh0LXVudGlsLXRhYmxldCB7XG4gICAgQG1lZGlhICN7YmFzZS5nb3Z1ay11bnRpbC1icmVha3BvaW50KHRhYmxldCl9IHtcbiAgICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udC1zaXplKCRzaXplOiAxNik7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXRhYmxlX19oZWFkZXIge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstdHlwb2dyYXBoeS13ZWlnaHQtYm9sZDtcbiAgfVxuXG4gIC5nb3Z1ay10YWJsZV9faGVhZGVyLFxuICAuZ292dWstdGFibGVfX2NlbGwge1xuICAgIHBhZGRpbmc6IGJhc2UuZ292dWstc3BhY2luZygyKSBiYXNlLmdvdnVrLXNwYWNpbmcoNCkgYmFzZS5nb3Z1ay1zcGFjaW5nKDIpIDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoYm9yZGVyKTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cblxuICAuZ292dWstdGFibGVfX2NlbGwtLW51bWVyaWMge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udC10YWJ1bGFyLW51bWJlcnM7XG4gIH1cblxuICAuZ292dWstdGFibGVfX2hlYWRlci0tbnVtZXJpYyxcbiAgLmdvdnVrLXRhYmxlX19jZWxsLS1udW1lcmljIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuXG4gIC5nb3Z1ay10YWJsZV9faGVhZGVyOmxhc3QtY2hpbGQsXG4gIC5nb3Z1ay10YWJsZV9fY2VsbDpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG5cbiAgLmdvdnVrLXRhYmxlX19jYXB0aW9uIHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXR5cG9ncmFwaHktd2VpZ2h0LWJvbGQ7XG5cbiAgICBkaXNwbGF5OiB0YWJsZS1jYXB0aW9uO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cblxuICAvLyBNb2RpZmllcnMgdGhhdCBtYWtlIGNhcHRpb25zIGxvb2sgbW9yZSBsaWtlIHRoZWlyIGVxdWl2YWxlbnQgaGVhZGluZ3NcbiAgLmdvdnVrLXRhYmxlX19jYXB0aW9uLS14bCxcbiAgLmdvdnVrLXRhYmxlX19jYXB0aW9uLS1sLFxuICAuZ292dWstdGFibGVfX2NhcHRpb24tLW0ge1xuICAgIG1hcmdpbi1ib3R0b206IGJhc2UuZ292dWstc3BhY2luZygzKTtcbiAgfVxuXG4gIC5nb3Z1ay10YWJsZV9fY2FwdGlvbi0teGwge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udC1zaXplKCRzaXplOiA0OCk7XG4gIH1cblxuICAuZ292dWstdGFibGVfX2NhcHRpb24tLWwge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udC1zaXplKCRzaXplOiAzNik7XG4gIH1cblxuICAuZ292dWstdGFibGVfX2NhcHRpb24tLW0ge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstZm9udC1zaXplKCRzaXplOiAyNCk7XG4gIH1cbn1cblxuIiwiQHVzZSBcIi4uLy4uL2Jhc2VcIjtcblxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIHN0eWxlcyB7XG4gIC5nb3Z1ay10YWJzIHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDEsIFwidG9wXCIpO1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNiwgXCJib3R0b21cIik7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1mb250KCRzaXplOiAxOSk7XG4gIH1cblxuICAuZ292dWstdGFic19fdGl0bGUge1xuICAgIC8vIFNldCB0aGUgc2l6ZSBhbmQgd2VpZ2h0IGFnYWluIGJlY2F1c2UgdGhpcyBlbGVtZW50IGlzIGEgaGVhZGluZyBhbmQgdGhlXG4gICAgLy8gdXNlciBhZ2VudCBmb250IHNpemUgb3ZlcnJpZGVzIHRoZSBpbmhlcml0ZWQgZm9udCBzaXplXG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1mb250LXNpemUoJHNpemU6IDE5KTtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXR5cG9ncmFwaHktd2VpZ2h0LXJlZ3VsYXI7XG5cbiAgICBtYXJnaW4tYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoMik7XG4gICAgY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIodGV4dCk7XG4gIH1cblxuICAuZ292dWstdGFic19fbGlzdCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDYsIFwiYm90dG9tXCIpO1xuICB9XG5cbiAgLmdvdnVrLXRhYnNfX2xpc3QtaXRlbSB7XG4gICAgbWFyZ2luLWxlZnQ6IGJhc2UuZ292dWstc3BhY2luZyg1KTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcMjAxNCBcIjsgLy8gXCLigJQgXCJcbiAgICAgIG1hcmdpbi1sZWZ0OiBiYXNlLmdvdnVrLXNwYWNpbmcoLTUpO1xuICAgICAgcGFkZGluZy1yaWdodDogYmFzZS5nb3Z1ay1zcGFjaW5nKDEpO1xuICAgICAgY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIodGV4dCk7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXRhYnNfX3RhYiB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1saW5rLWNvbW1vbjtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWxpbmstc3R5bGUtZGVmYXVsdDtcblxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiBiYXNlLmdvdnVrLXNwYWNpbmcoMik7XG4gIH1cblxuICAuZ292dWstdGFic19fcGFuZWwge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oOCwgXCJib3R0b21cIik7XG4gIH1cblxuICAvLyBHT1YuVUsgRnJvbnRlbmQgSmF2YVNjcmlwdCBlbmFibGVkXG4gIC5nb3Z1ay1mcm9udGVuZC1zdXBwb3J0ZWQge1xuICAgIEBtZWRpYSAje2Jhc2UuZ292dWstZnJvbS1icmVha3BvaW50KHRhYmxldCl9IHtcbiAgICAgIC5nb3Z1ay10YWJzX19saXN0IHtcbiAgICAgICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1jbGVhcmZpeDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGJvcmRlcik7XG4gICAgICB9XG5cbiAgICAgIC5nb3Z1ay10YWJzX190aXRsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC5nb3Z1ay10YWJzX19saXN0LWl0ZW0ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBiYXNlLmdvdnVrLXNwYWNpbmcoMSk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nOiBiYXNlLmdvdnVrLXNwYWNpbmcoMikgYmFzZS5nb3Z1ay1zcGFjaW5nKDQpO1xuXG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBiYXNlLmdvdnVrLWNvbG91cihcImJsYWNrXCIsICR2YXJpYW50OiBcInRpbnQtOTVcIik7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmdvdnVrLXRhYnNfX2xpc3QtaXRlbS0tc2VsZWN0ZWQge1xuICAgICAgICAkYm9yZGVyLXdpZHRoOiAxcHg7XG5cbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIG1hcmdpbi10b3A6IGJhc2UuZ292dWstc3BhY2luZygtMSk7XG5cbiAgICAgICAgLy8gQ29tcGVuc2F0aW9uIGZvciBib3JkZXIgKG90aGVyd2lzZSB3ZSBnZXQgYSBzaGlmdClcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLSRib3JkZXItd2lkdGg7XG4gICAgICAgIHBhZGRpbmctdG9wOiBiYXNlLmdvdnVrLXNwYWNpbmcoMykgLSAkYm9yZGVyLXdpZHRoO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiBiYXNlLmdvdnVrLXNwYWNpbmcoNCkgLSAkYm9yZGVyLXdpZHRoO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogYmFzZS5nb3Z1ay1zcGFjaW5nKDMpICsgJGJvcmRlci13aWR0aDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiBiYXNlLmdvdnVrLXNwYWNpbmcoNCkgLSAkYm9yZGVyLXdpZHRoO1xuXG4gICAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGJvcmRlcik7XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihib2R5LWJhY2tncm91bmQpO1xuXG4gICAgICAgIC5nb3Z1ay10YWJzX190YWIge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZ292dWstdGFic19fdGFiIHtcbiAgICAgICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1saW5rLXN0eWxlLXRleHQ7XG5cbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5nb3Z1ay10YWJzX19wYW5lbCB7XG4gICAgICAgIEBpbmNsdWRlIGJhc2UuZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oMCwgXCJib3R0b21cIik7XG4gICAgICAgIHBhZGRpbmc6IGJhc2UuZ292dWstc3BhY2luZyg2KSBiYXNlLmdvdnVrLXNwYWNpbmcoNCk7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICBib3JkZXItY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoYm9yZGVyKTtcblxuICAgICAgICAmID4gOmxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmdvdnVrLXRhYnNfX3BhbmVsLS1oaWRkZW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4iLCJAdXNlIFwiLi4vLi4vYmFzZVwiO1xuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gc3R5bGVzIHtcbiAgJGdvdnVrLXRhc2stbGlzdC1ob3Zlci1jb2xvdXI6IGJhc2UuZ292dWstY29sb3VyKFwiYmxhY2tcIiwgJHZhcmlhbnQ6IFwidGludC05NVwiKTtcblxuICAuZ292dWstdGFzay1saXN0IHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWZvbnQoJHNpemU6IDE5KTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNiwgXCJib3R0b21cIik7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIH1cblxuICAvLyBUaGlzIHVzZXMgdGFibGUgbGF5b3V0IHNvIHRoYXQgdGhlIHRhc2sgbmFtZSBhbmQgc3RhdHVzIGFsd2F5cyBhcHBlYXJcbiAgLy8gc2lkZS1ieS1zaWRlLCB3aXRoIHRoZSB3aWR0aCBvZiBlYWNoICdjb2x1bW4nIGJlaW5nIGZsZXhpYmxlIGRlcGVuZGluZyB1cG9uXG4gIC8vIHRoZSBsZW5ndGggb2YgdGhlIHRhc2sgbmFtZXMgYW5kIHN0YXR1c2VzLlxuICAvL1xuICAvLyBUaGUgcG9zaXRpb24gaXMgc2V0IHRvICdyZWxhdGl2ZScgc28gdGhhbiBhbiBhYnNvbHV0ZWx5LXBvc2l0aW9uZWRcbiAgLy8gdHJhbnNwYXJlbnQgZWxlbWVudCBib3ggY2FuIGJlIGFkZGVkIHdpdGhpbiB0aGUgbGluayBzbyB0aGF0IHRoZSB3aG9sZSByb3dcbiAgLy8gY2FuIGJlIGNsaWNrYWJsZS5cbiAgLmdvdnVrLXRhc2stbGlzdF9faXRlbSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZy10b3A6IGJhc2UuZ292dWstc3BhY2luZygyKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogYmFzZS5nb3Z1ay1zcGFjaW5nKDIpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKGJvcmRlcik7XG4gIH1cblxuICAuZ292dWstdGFzay1saXN0X19pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQ7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogYmFzZS5nb3Z1ay1mdW5jdGlvbmFsLWNvbG91cihib3JkZXIpO1xuICB9XG5cbiAgLy8gVGhpcyBjbGFzcyBpcyBhZGRlZCB0byB0aGUgPGxpPiBlbGVtZW50cyB3aGVyZSB0aGUgdGFzayBuYW1lIGlzIGEgbGluay4gVGhlXG4gIC8vIGJhY2tncm91bmQgaG92ZXIgY29sb3VyIGlzIGFkZGVkIHRvIGhlbHAgaW5kaWNhdGUgdGhhdCB0aGUgd2hvbGUgcm93IGlzXG4gIC8vIGNsaWNrYWJsZSwgcmF0aGVyIHRoYW4ganVzdCB0aGUgdmlzaWJsZSBsaW5rIHRleHQuXG4gIC5nb3Z1ay10YXNrLWxpc3RfX2l0ZW0tLXdpdGgtbGluazpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogJGdvdnVrLXRhc2stbGlzdC1ob3Zlci1jb2xvdXI7XG4gIH1cblxuICAuZ292dWstdGFzay1saXN0X19uYW1lLWFuZC1oaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuXG4gICAgY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIodGV4dCk7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgfVxuXG4gIC5nb3Z1ay10YXNrLWxpc3RfX3N0YXR1cyB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICBwYWRkaW5nLWxlZnQ6IGJhc2UuZ292dWstc3BhY2luZygyKTtcblxuICAgIGNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHRleHQpO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cblxuICAuZ292dWstdGFzay1saXN0X19zdGF0dXMtLWNhbm5vdC1zdGFydC15ZXQge1xuICAgIGNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHNlY29uZGFyeS10ZXh0KTtcbiAgfVxuXG4gIC8vIFRoaXMgYWRkcyBhbiBlbXB0eSB0cmFuc3BhcmVudCBib3ggY292ZXJpbmcgdGhlIHdob2xlIHJvdywgaW5jbHVkaW5nIHRoZVxuICAvLyB0YXNrIHN0YXR1cyBhbmQgYW55IGhpbnQgdGV4dC4gQmVjYXVzZSB0aGlzIGlzIGdlbmVyYXRlZCB3aXRoaW4gdGhlIGxpbmtcbiAgLy8gZWxlbWVudCwgdGhpcyBhbGxvd3MgdGhlIHdob2xlIGFyZWEgdG8gYmUgY2xpY2thYmxlLlxuICAuZ292dWstdGFzay1saXN0X19saW5rOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgLmdvdnVrLXRhc2stbGlzdF9faGludCB7XG4gICAgbWFyZ2luLXRvcDogYmFzZS5nb3Z1ay1zcGFjaW5nKDEpO1xuICAgIGNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHNlY29uZGFyeS10ZXh0KTtcbiAgfVxufVxuXG4iLCJAdXNlIFwiLi4vLi4vYmFzZVwiO1xuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gc3R5bGVzIHtcbiAgLmdvdnVrLXdhcm5pbmctdGV4dCB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1mb250KCRzaXplOiAxOSk7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig2LCBcImJvdHRvbVwiKTtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXR5cG9ncmFwaHktd2VpZ2h0LWJvbGQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IGJhc2UuZ292dWstc3BhY2luZygyKSAwO1xuICB9XG5cbiAgLmdvdnVrLXdhcm5pbmctdGV4dF9faWNvbiB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuXG4gICAgbWluLXdpZHRoOiAzNXB4O1xuICAgIG1pbi1oZWlnaHQ6IDM1cHg7XG4gICAgbWFyZ2luLXRvcDogLTdweDtcblxuICAgIEBtZWRpYSAje2Jhc2UuZ292dWstZnJvbS1icmVha3BvaW50KHRhYmxldCl9IHtcbiAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgfVxuXG4gICAgLy8gV2hlbiBhIHVzZXIgY3VzdG9taXNlcyB0aGVpciBjb2xvdXJzIHRoZSBiYWNrZ3JvdW5kIGNvbG91ciB3aWxsIG9mdGVuIGJlXG4gICAgLy8gcmVtb3ZlZC4gQWRkaW5nIGEgYm9yZGVyIHRvIHRoZSBjb21wb25lbnQga2VlcHMgaXQncyBzaGFwZSBhcyBhIGNpcmNsZS5cbiAgICBib3JkZXI6IDNweCBzb2xpZDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm9yZGVyLWNvbG9yOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHRleHQpO1xuXG4gICAgY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIoYm9keS1iYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kOiBiYXNlLmdvdnVrLWZ1bmN0aW9uYWwtY29sb3VyKHRleHQpO1xuXG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyOXB4O1xuXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgLy8gUHJldmVudCB0aGUgZXhjbGFtYXRpb24gbWFyayBmcm9tIGJlaW5nIGluY2x1ZGVkIHdoZW4gdGhlIHdhcm5pbmcgdGV4dFxuICAgIC8vIGlzIGNvcGllZCwgZm9yIGV4YW1wbGUuXG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgICAvLyBJbXByb3ZlIHJlbmRlcmluZyBpbiBXaW5kb3dzIEhpZ2ggQ29udHJhc3QgTW9kZSAoRWRnZSksIHdoZXJlIGFcbiAgICAvLyByZWFkYWJpbGl0eSBiYWNrcGxhdGUgYmVoaW5kIHRoZSBleGNsYW1hdGlvbiBtYXJrIG9ic2N1cmVzIHRoZSBjaXJjbGVcbiAgICBmb3JjZWQtY29sb3ItYWRqdXN0OiBub25lO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiB3aW5kb3dUZXh0O1xuICAgICAgY29sb3I6IHdpbmRvd1RleHQ7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAuZ292dWstd2FybmluZy10ZXh0X190ZXh0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLWxlZnQ6IDQ1cHg7XG4gICAgY29sb3I6IGJhc2UuZ292dWstZnVuY3Rpb25hbC1jb2xvdXIodGV4dCk7XG4gICAgLy8gV2hpbGUgYDxzdHJvbmc+YCBpcyBzdHlsZWQgYGJvbGRgIG9yIGBib2xkZXJgIGJ5IHVzZXItYWdlbnRzXG4gICAgLy8gdGhpcyBjYW4gYmUgcmVzZXQgYnkgdGhlIGFwcCdzIHN0eWxlc2hlZXRcbiAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgfVxufVxuXG4iLCJAdXNlIFwiLi4vYmFzZVwiO1xuQHVzZSBcIi4uL2hlbHBlcnMvdmlzdWFsbHktaGlkZGVuXCIgYXMgKjtcblxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIHN0eWxlcyB7XG4gIC5nb3Z1ay12aXN1YWxseS1oaWRkZW4ge1xuICAgIEBpbmNsdWRlIGdvdnVrLXZpc3VhbGx5LWhpZGRlbjtcbiAgfVxuXG4gIC5nb3Z1ay12aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay12aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlO1xuICB9XG59XG5cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIHN0eWxlcyB7XG4gIC5nb3Z1ay1cXCEtZGlzcGxheS1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmdvdnVrLVxcIS1kaXNwbGF5LWlubGluZS1ibG9jayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZ292dWstXFwhLWRpc3BsYXktYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZ292dWstXFwhLWRpc3BsYXktbm9uZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICAuZ292dWstXFwhLWRpc3BsYXktbm9uZS1wcmludCB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbiIsIi8vLy9cbi8vLyBAZ3JvdXAgb3ZlcnJpZGVzXG4vLy8vXG5AdXNlIFwic2FzczptYXBcIjtcbkB1c2UgXCIuLi9iYXNlXCI7XG5AdXNlIFwiLi4vaGVscGVycy9zcGFjaW5nLS1pbnRlcm5hbFwiO1xuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuLy8vIERpcmVjdGlvbnMgZm9yIHNwYWNpbmdcbi8vL1xuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuXG4kX3NwYWNpbmctZGlyZWN0aW9uczogKFwidG9wXCIsIFwicmlnaHRcIiwgXCJib3R0b21cIiwgXCJsZWZ0XCIpICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGUgcmVzcG9uc2l2ZSBzcGFjaW5nIG92ZXJyaWRlIGNsYXNzZXNcbi8vL1xuLy8vIEdlbmVyYXRlIHNwYWNpbmcgb3ZlcnJpZGUgY2xhc3NlcyBmb3IgdGhlIGdpdmVuIHByb3BlcnR5IChlLmcuIG1hcmdpbilcbi8vLyBmb3IgZWFjaCBwb2ludCBpbiB0aGUgcmVzcG9uc2l2ZSBzcGFjaW5nIHNjYWxlLlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRwcm9wZXJ0eSAtIFByb3BlcnR5IHRvIGFkZCBzcGFjaW5nIHRvIChlLmcuICdtYXJnaW4nKVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzXG4vLy8gIC5nb3Z1ay1cXCEtbWFyZ2luLTQge1xuLy8vICAgIG1hcmdpbjogMTVweCAhaW1wb3J0YW50O1xuLy8vICB9XG4vLy9cbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuLy8vICAgIC5nb3Z1ay1cXCEtbWFyZ2luLTQge1xuLy8vICAgICAgbWFyZ2luOiAyMHB4ICFpbXBvcnRhbnQ7XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcblxuQG1peGluIF9nb3Z1ay1nZW5lcmF0ZS1yZXNwb25zaXZlLXNwYWNpbmctb3ZlcnJpZGVzKCRwcm9wZXJ0eSkge1xuICAvLyBGb3IgZWFjaCBwb2ludCBpbiB0aGUgc3BhY2luZyBzY2FsZSAoZGVmaW5lZCBpbiBzZXR0aW5ncyksIGNyZWF0ZSBhblxuICAvLyBvdmVycmlkZSB0aGF0IGFmZmVjdHMgYWxsIGRpcmVjdGlvbnMuLi5cbiAgQGVhY2ggJHNjYWxlLXBvaW50LCAkc2NhbGUtbWFwIGluIGJhc2UuJGdvdnVrLXNwYWNpbmctcmVzcG9uc2l2ZS1zY2FsZSB7XG4gICAgLmdvdnVrLVxcIS0jeyRwcm9wZXJ0eX0tI3skc2NhbGUtcG9pbnR9IHtcbiAgICAgIEBpbmNsdWRlIHNwYWNpbmctLWludGVybmFsLnJlc3BvbnNpdmUtc3BhY2luZygkc2NhbGUtcG9pbnQsICRwcm9wZXJ0eSwgXCJhbGxcIiwgdHJ1ZSk7XG4gICAgfVxuXG4gICAgLy8gLi4uIGFuZCB0aGVuIGFuIG92ZXJyaWRlIGZvciBlYWNoIGluZGl2aWR1YWwgZGlyZWN0aW9uXG4gICAgQGVhY2ggJGRpcmVjdGlvbiBpbiAkX3NwYWNpbmctZGlyZWN0aW9ucyB7XG4gICAgICAuZ292dWstXFwhLSN7JHByb3BlcnR5fS0jeyRkaXJlY3Rpb259LSN7JHNjYWxlLXBvaW50fSB7XG4gICAgICAgIEBpbmNsdWRlIHNwYWNpbmctLWludGVybmFsLnJlc3BvbnNpdmUtc3BhY2luZygkc2NhbGUtcG9pbnQsICRwcm9wZXJ0eSwgJGRpcmVjdGlvbiwgdHJ1ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSBzdGF0aWMgc3BhY2luZyBvdmVycmlkZSBjbGFzc2VzXG4vLy9cbi8vLyBHZW5lcmF0ZSBzcGFjaW5nIG92ZXJyaWRlIGNsYXNzZXMgZm9yIHRoZSBnaXZlbiBwcm9wZXJ0eSAoZS5nLiBtYXJnaW4pXG4vLy8gZm9yIGVhY2ggcG9pbnQgaW4gdGhlIG5vbi1yZXNwb25zaXZlIHNwYWNpbmcgc2NhbGUuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHByb3BlcnR5IC0gUHJvcGVydHkgdG8gYWRkIHNwYWNpbmcgdG8gKGUuZy4gJ21hcmdpbicpXG4vLy9cbi8vLyBAZXhhbXBsZSBjc3Ncbi8vLyAgIC5nb3Z1ay1cXCEtc3RhdGljLW1hcmdpbi00IHtcbi8vLyAgICAgIG1hcmdpbjogMjBweCAhaW1wb3J0YW50O1xuLy8vICAgfVxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gX2dvdnVrLWdlbmVyYXRlLXN0YXRpYy1zcGFjaW5nLW92ZXJyaWRlcygkcHJvcGVydHkpIHtcbiAgQGVhY2ggJHNwYWNpbmctcG9pbnQgaW4gbWFwLmtleXMoYmFzZS4kZ292dWstc3BhY2luZy1wb2ludHMpIHtcbiAgICAuZ292dWstXFwhLXN0YXRpYy0jeyRwcm9wZXJ0eX0tI3skc3BhY2luZy1wb2ludH0ge1xuICAgICAgI3skcHJvcGVydHl9OiBiYXNlLmdvdnVrLXNwYWNpbmcoJHNwYWNpbmctcG9pbnQpICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGVhY2ggJGRpcmVjdGlvbiBpbiAkX3NwYWNpbmctZGlyZWN0aW9ucyB7XG4gICAgICAuZ292dWstXFwhLXN0YXRpYy0jeyRwcm9wZXJ0eX0tI3skZGlyZWN0aW9ufS0jeyRzcGFjaW5nLXBvaW50fSB7XG4gICAgICAgICN7JHByb3BlcnR5fS0jeyRkaXJlY3Rpb259OiBiYXNlLmdvdnVrLXNwYWNpbmcoJHNwYWNpbmctcG9pbnQpICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBzdHlsZXMge1xuICBAaW5jbHVkZSBfZ292dWstZ2VuZXJhdGUtcmVzcG9uc2l2ZS1zcGFjaW5nLW92ZXJyaWRlcyhcIm1hcmdpblwiKTtcbiAgQGluY2x1ZGUgX2dvdnVrLWdlbmVyYXRlLXJlc3BvbnNpdmUtc3BhY2luZy1vdmVycmlkZXMoXCJwYWRkaW5nXCIpO1xuXG4gIEBpbmNsdWRlIF9nb3Z1ay1nZW5lcmF0ZS1zdGF0aWMtc3BhY2luZy1vdmVycmlkZXMoXCJtYXJnaW5cIik7XG4gIEBpbmNsdWRlIF9nb3Z1ay1nZW5lcmF0ZS1zdGF0aWMtc3BhY2luZy1vdmVycmlkZXMoXCJwYWRkaW5nXCIpO1xufVxuXG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBzdHlsZXMge1xuICAuZ292dWstXFwhLXRleHQtYWxpZ24tbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmdvdnVrLVxcIS10ZXh0LWFsaWduLWNlbnRyZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZ292dWstXFwhLXRleHQtYWxpZ24tcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuIiwiQHVzZSBcInNhc3M6bWFwXCI7XG5AdXNlIFwiLi4vYmFzZVwiO1xuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gc3R5bGVzIHtcbiAgLy8gRm9udCBzaXplIGFuZCBsaW5lIGhlaWdodFxuXG4gIC8vIEdlbmVyYXRlIHR5cG9ncmFwaHkgb3ZlcnJpZGUgY2xhc3NlcyBmb3IgZWFjaCByZXNwb25zaXZlIGZvbnQgbWFwIGluIHRoZVxuICAvLyB0eXBvZ3JhcGh5IHNjYWxlIGVnIC5nb3Z1ay1cXCEtZm9udC1zaXplLTgwXG4gIEBlYWNoICRzaXplLCAkZm9udC1tYXAgaW4gYmFzZS4kZ292dWstdHlwb2dyYXBoeS1zY2FsZSB7XG4gICAgLmdvdnVrLVxcIS1mb250LXNpemUtI3skc2l6ZX0ge1xuICAgICAgJGZvbnQtbWFwOiBtYXAuZ2V0KGJhc2UuJGdvdnVrLXR5cG9ncmFwaHktc2NhbGUsICRzaXplKTtcblxuICAgICAgLy8gQWRkIHVuZGVyc2NvcmUgdG8gZGVwcmVjYXRlZCB0eXBvZ3JhcGh5IHNjYWxlIGtleXNcbiAgICAgIEBpZiBtYXAuaGFzLWtleSgkZm9udC1tYXAsIFwiZGVwcmVjYXRpb25cIikge1xuICAgICAgICAkc2l6ZTogXyN7JHNpemV9O1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWZvbnQtc2l6ZSgkc2l6ZSwgJGltcG9ydGFudDogdHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gV2VpZ2h0c1xuXG4gIC5nb3Z1ay1cXCEtZm9udC13ZWlnaHQtcmVndWxhciB7XG4gICAgQGluY2x1ZGUgYmFzZS5nb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1yZWd1bGFyKCRpbXBvcnRhbnQ6IHRydWUpO1xuICB9XG5cbiAgLmdvdnVrLVxcIS1mb250LXdlaWdodC1ib2xkIHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLXR5cG9ncmFwaHktd2VpZ2h0LWJvbGQoJGltcG9ydGFudDogdHJ1ZSk7XG4gIH1cblxuICAvLyBUeXBvZ3JhcGh5IGhlbHBlcnNcblxuICAuZ292dWstXFwhLWZvbnQtdGFidWxhci1udW1iZXJzIHtcbiAgICBAaW5jbHVkZSBiYXNlLmdvdnVrLWZvbnQtdGFidWxhci1udW1iZXJzKCRpbXBvcnRhbnQ6IHRydWUpO1xuICB9XG5cbiAgLmdvdnVrLVxcIS10ZXh0LWJyZWFrLXdvcmQge1xuICAgIEBpbmNsdWRlIGJhc2UuZ292dWstdGV4dC1icmVhay13b3JkKCRpbXBvcnRhbnQ6IHRydWUpO1xuICB9XG59XG5cbiIsIkB1c2UgXCIuLi9iYXNlXCI7XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIHN0eWxlcyB7XG4gIC5nb3Z1ay1cXCEtd2lkdGgtZnVsbCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5nb3Z1ay1cXCEtd2lkdGgtdGhyZWUtcXVhcnRlcnMge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cbiAgICBAbWVkaWEgI3tiYXNlLmdvdnVrLWZyb20tYnJlYWtwb2ludCh0YWJsZXQpfSB7XG4gICAgICB3aWR0aDogNzUlICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLVxcIS13aWR0aC10d28tdGhpcmRzIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXG4gICAgQG1lZGlhICN7YmFzZS5nb3Z1ay1mcm9tLWJyZWFrcG9pbnQodGFibGV0KX0ge1xuICAgICAgd2lkdGg6IDY2LjY2JSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1cXCEtd2lkdGgtb25lLWhhbGYge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cbiAgICBAbWVkaWEgI3tiYXNlLmdvdnVrLWZyb20tYnJlYWtwb2ludCh0YWJsZXQpfSB7XG4gICAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLVxcIS13aWR0aC1vbmUtdGhpcmQge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cbiAgICBAbWVkaWEgI3tiYXNlLmdvdnVrLWZyb20tYnJlYWtwb2ludCh0YWJsZXQpfSB7XG4gICAgICB3aWR0aDogMzMuMzMlICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLVxcIS13aWR0aC1vbmUtcXVhcnRlciB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblxuICAgIEBtZWRpYSAje2Jhc2UuZ292dWstZnJvbS1icmVha3BvaW50KHRhYmxldCl9IHtcbiAgICAgIHdpZHRoOiAyNSUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuIl19 */
