﻿.autocomplete__wrapper{position:relative}.autocomplete__hint,.autocomplete__input{-webkit-appearance:none;border:2px solid #0b0c0c;border-radius:0;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;margin-bottom:0;width:100%}.autocomplete__input{background-color:transparent;position:relative}.autocomplete__hint{color:#b1b4b6;position:absolute}.autocomplete__input--default{padding:5px}.autocomplete__input--focused{outline:3px solid #fd0;outline-offset:0;box-shadow:inset 0 0 0 2px}.autocomplete__input--show-all-values{padding:5px 34px 5px 5px;cursor:pointer}.autocomplete__dropdown-arrow-down{z-index:-1;display:inline-block;position:absolute;right:8px;width:24px;height:24px;top:10px}.autocomplete__menu{background-color:#fff;border:2px solid #0b0c0c;border-top:0;color:#0b0c0c;margin:0;max-height:342px;overflow-x:hidden;padding:0;width:100%;width:calc(100% - 4px)}.autocomplete__menu--visible{display:block}.autocomplete__menu--hidden{display:none}.autocomplete__menu--overlay{box-shadow:rgba(0, 0, 0, 0.256863) 0px 2px 6px;left:0;position:absolute;top:100%;z-index:100}.autocomplete__menu--inline{position:relative}.autocomplete__option{border-bottom:solid #b1b4b6;border-width:1px 0;cursor:pointer;display:block;position:relative}.autocomplete__option>*{pointer-events:none}.autocomplete__option:first-of-type{border-top-width:0}.autocomplete__option:last-of-type{border-bottom-width:0}.autocomplete__option--odd{background-color:#fafafa}.autocomplete__option--focused,.autocomplete__option:hover{background-color:#1d70b8;border-color:#1d70b8;color:white;outline:none}@media(-ms-high-contrast: active),(forced-colors: active){.autocomplete__menu{border-color:FieldText}.autocomplete__option{background-color:Field;color:FieldText}.autocomplete__option--focused,.autocomplete__option:hover{forced-color-adjust:none;background-color:Highlight;border-color:Highlight;color:HighlightText;background-color:SelectedItem;border-color:SelectedItem;color:SelectedItemText;outline-color:SelectedItemText}}.autocomplete__option--no-results{background-color:#fafafa;color:#646b6f;cursor:not-allowed}.autocomplete__hint,.autocomplete__input,.autocomplete__option{font-size:16px;line-height:1.25}.autocomplete__hint,.autocomplete__option{padding:5px}@media(min-width: 641px){.autocomplete__hint,.autocomplete__input,.autocomplete__option{font-size:19px;line-height:1.31579}}.govuk-link{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:underline}/*! 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;src:url("/public/fonts/light-94a07e06a1-v2.woff2") format("woff2"),url("/public/fonts/light-f591b13f7d-v2.woff") format("woff");font-display:fallback}@font-face{font-family:"GDS Transport";font-style:normal;font-weight:bold;src:url("/public/fonts/bold-b542beb274-v2.woff2") format("woff2"),url("/public/fonts/bold-affa96571d-v2.woff") format("woff");font-display:fallback}@media print{.govuk-link{font-family:sans-serif}}.govuk-link:focus{outline:3px solid transparent;color:#0b0c0c;background-color:#fd0;box-shadow:0 -2px #fd0,0 4px #0b0c0c;text-decoration:none}.govuk-link:link{color:#1d70b8}.govuk-link:visited{color:#4c2c92}.govuk-link:hover{color:#003078}.govuk-link:active{color:#0b0c0c}.govuk-link:focus{color:#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:#505a5f}.govuk-link--muted:hover,.govuk-link--muted:active{color:#0b0c0c}.govuk-link--muted:focus{color:#0b0c0c}.govuk-link--text-colour:link,.govuk-link--text-colour:visited{color:#0b0c0c}@media print{.govuk-link--text-colour:link,.govuk-link--text-colour:visited{color:#000}}.govuk-link--text-colour:hover{color:rgba(11,12,12,.99)}.govuk-link--text-colour:active,.govuk-link--text-colour:focus{color:#0b0c0c}@media print{.govuk-link--text-colour:active,.govuk-link--text-colour:focus{color:#000}}.govuk-link--inverse:link,.govuk-link--inverse:visited{color:#fff}.govuk-link--inverse:hover,.govuk-link--inverse:active{color:rgba(255,255,255,.99)}.govuk-link--inverse:focus{color:#0b0c0c}.govuk-link--no-underline:not(:hover):not(:active){text-decoration:none}.govuk-link--no-visited-state:link{color:#1d70b8}.govuk-link--no-visited-state:visited{color:#1d70b8}.govuk-link--no-visited-state:hover{color:#003078}.govuk-link--no-visited-state:active{color:#0b0c0c}.govuk-link--no-visited-state:focus{color:#0b0c0c}.govuk-list{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:16px;font-size:1rem;line-height:1.25;color:#0b0c0c;margin-top:0;margin-bottom:15px;padding-left:0;list-style-type:none}@media print{.govuk-list{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-list{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@media print{.govuk-list{font-size:14pt;line-height:1.15}}@media print{.govuk-list{color:#000}}@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-template{background-color:#f3f2f1;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%}@media screen{.govuk-template{overflow-y:scroll}}.govuk-template__body{margin:0;background-color:#fff}.govuk-heading-xl{color:#0b0c0c;font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:32px;font-size:2rem;line-height:1.09375;display:block;margin-top:0;margin-bottom:30px}@media print{.govuk-heading-xl{color:#000}}@media print{.govuk-heading-xl{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-heading-xl{font-size:48px;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{color:#0b0c0c;font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:24px;font-size:1.5rem;line-height:1.0416666667;display:block;margin-top:0;margin-bottom:20px}@media print{.govuk-heading-l{color:#000}}@media print{.govuk-heading-l{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-heading-l{font-size:36px;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{color:#0b0c0c;font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:18px;font-size:1.125rem;line-height:1.1111111111;display:block;margin-top:0;margin-bottom:15px}@media print{.govuk-heading-m{color:#000}}@media print{.govuk-heading-m{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-heading-m{font-size:24px;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{color:#0b0c0c;font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:16px;font-size:1rem;line-height:1.25;display:block;margin-top:0;margin-bottom:15px}@media print{.govuk-heading-s{color:#000}}@media print{.govuk-heading-s{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-heading-s{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@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:18px;font-size:1.125rem;line-height:1.1111111111;display:block;margin-bottom:5px;color:#505a5f}@media print{.govuk-caption-xl{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-caption-xl{font-size:27px;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:18px;font-size:1.125rem;line-height:1.1111111111;display:block;margin-bottom:5px;color:#505a5f}@media print{.govuk-caption-l{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-caption-l{font-size:24px;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:16px;font-size:1rem;line-height:1.25;display:block;color:#505a5f}@media print{.govuk-caption-m{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-caption-m{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@media print{.govuk-caption-m{font-size:14pt;line-height:1.15}}.govuk-body-lead,.govuk-body-l{color:#0b0c0c;font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:18px;font-size:1.125rem;line-height:1.1111111111;margin-top:0;margin-bottom:20px}@media print{.govuk-body-lead,.govuk-body-l{color:#000}}@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:24px;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{color:#0b0c0c;font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:16px;font-size:1rem;line-height:1.25;margin-top:0;margin-bottom:15px}@media print{.govuk-body,.govuk-body-m{color:#000}}@media print{.govuk-body,.govuk-body-m{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-body,.govuk-body-m{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@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{color:#0b0c0c;font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:14px;font-size:.875rem;line-height:1.1428571429;margin-top:0;margin-bottom:15px}@media print{.govuk-body-s{color:#000}}@media print{.govuk-body-s{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-body-s{font-size:16px;font-size:1rem;line-height:1.25}}@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-xs{color:#0b0c0c;font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:12px;font-size:.75rem;line-height:1.25;margin-top:0;margin-bottom:15px}@media print{.govuk-body-xs{color:#000}}@media print{.govuk-body-xs{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-body-xs{font-size:14px;font-size:.875rem;line-height:1.4285714286}}@media print{.govuk-body-xs{font-size:12pt;line-height:1.2}}@media(min-width: 40.0625em){.govuk-body-xs{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-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 #b1b4b6}.govuk-button-group{margin-bottom:5px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;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:16px;font-size:1rem;line-height:1.1875;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(min-width: 40.0625em){.govuk-button-group .govuk-link{font-size:19px;font-size:1.1875rem;line-height:1}}@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{margin-right:-15px;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:baseline;-webkit-align-items:baseline;-ms-flex-align:baseline;align-items:baseline}.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 #d4351c}.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.3333%;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.6666%;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.3333%;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.6666%;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-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-header{padding-top:15px;padding-bottom:15px}.govuk-accordion__section-heading{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:18px;font-size:1.125rem;line-height:1.1111111111;margin-top:0;margin-bottom:0}@media print{.govuk-accordion__section-heading{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-accordion__section-heading{font-size:24px;font-size:1.5rem;line-height:1.25}}@media print{.govuk-accordion__section-heading{font-size:18pt;line-height:1.15}}.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:18px;font-size:1.125rem;line-height:1.1111111111;display:inline-block;margin-bottom:0;padding-top:15px}@media print{.govuk-accordion__section-button{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-accordion__section-button{font-size:24px;font-size:1.5rem;line-height:1.25}}@media print{.govuk-accordion__section-button{font-size:18pt;line-height:1.15}}.govuk-accordion__section-summary{margin-top:10px;margin-bottom:0}.govuk-accordion__section-content>:last-child{margin-bottom:0}.js-enabled .govuk-accordion{border-bottom:1px solid #b1b4b6}.js-enabled .govuk-accordion__section{padding-top:0}.js-enabled .govuk-accordion__section-content{display:none;padding-top:15px;padding-bottom:15px}@media(min-width: 40.0625em){.js-enabled .govuk-accordion__section-content{padding-top:15px}}@media(min-width: 40.0625em){.js-enabled .govuk-accordion__section-content{padding-bottom:15px}}.js-enabled .govuk-accordion__section--expanded .govuk-accordion__section-content{display:block}.js-enabled .govuk-accordion__open-all{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:14px;font-size:.875rem;line-height:1.1428571429;position:relative;z-index:1;margin:0;padding:0;border-width:0;color:#1d70b8;background:none;cursor:pointer;-webkit-appearance:none;font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:underline}@media print{.js-enabled .govuk-accordion__open-all{font-family:sans-serif}}@media(min-width: 40.0625em){.js-enabled .govuk-accordion__open-all{font-size:16px;font-size:1rem;line-height:1.25}}@media print{.js-enabled .govuk-accordion__open-all{font-size:14pt;line-height:1.2}}@media print{.js-enabled .govuk-accordion__open-all{font-family:sans-serif}}.js-enabled .govuk-accordion__open-all:focus{outline:3px solid transparent;color:#0b0c0c;background-color:#fd0;box-shadow:0 -2px #fd0,0 4px #0b0c0c;text-decoration:none}.js-enabled .govuk-accordion__open-all:link{color:#1d70b8}.js-enabled .govuk-accordion__open-all:visited{color:#4c2c92}.js-enabled .govuk-accordion__open-all:hover{color:#003078}.js-enabled .govuk-accordion__open-all:active{color:#0b0c0c}.js-enabled .govuk-accordion__open-all:focus{color:#0b0c0c}.js-enabled .govuk-accordion__open-all::-moz-focus-inner{padding:0;border:0}.js-enabled .govuk-accordion__section-header{position:relative;padding-right:40px;border-top:1px solid #b1b4b6;cursor:pointer}.js-enabled .govuk-accordion__section-button{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin-top:0;margin-bottom:0;margin-left:0;padding:0;border-width:0;color:#1d70b8;background:none;text-align:left;cursor:pointer;-webkit-appearance:none}@media print{.js-enabled .govuk-accordion__section-button{font-family:sans-serif}}.js-enabled .govuk-accordion__section-button:focus{outline:3px solid transparent;color:#0b0c0c;background-color:#fd0;box-shadow:0 -2px #fd0,0 4px #0b0c0c;text-decoration:none}.js-enabled .govuk-accordion__section-button::-moz-focus-inner{padding:0;border:0}.js-enabled .govuk-accordion__section-button:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0}.js-enabled .govuk-accordion__section-button:hover:not(:focus){color:#003078;text-decoration:underline;text-underline-offset:.1em}@media(hover: none){.js-enabled .govuk-accordion__section-button:hover{text-decoration:none}}.js-enabled .govuk-accordion__controls{text-align:right}.js-enabled .govuk-accordion__icon{position:absolute;top:50%;right:15px;width:16px;height:16px;margin-top:-8px}.js-enabled .govuk-accordion__icon:after,.js-enabled .govuk-accordion__icon:before{content:"";box-sizing:border-box;position:absolute;top:0;right:0;bottom:0;left:0;width:25%;height:25%;margin:auto;border:2px solid transparent;background-color:#0b0c0c}.js-enabled .govuk-accordion__icon:before{width:100%}.js-enabled .govuk-accordion__icon:after{height:100%}.js-enabled .govuk-accordion__section--expanded .govuk-accordion__icon:after{content:" ";display:none}.govuk-back-link{font-size:14px;font-size:.875rem;line-height:1.1428571429;font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:underline;display:inline-block;position:relative;margin-top:15px;margin-bottom:15px;padding-left:14px}@media(min-width: 40.0625em){.govuk-back-link{font-size:16px;font-size:1rem;line-height:1.25}}@media print{.govuk-back-link{font-size:14pt;line-height:1.2}}@media print{.govuk-back-link{font-family:sans-serif}}.govuk-back-link:focus{outline:3px solid transparent;color:#0b0c0c;background-color:#fd0;box-shadow:0 -2px #fd0,0 4px #0b0c0c;text-decoration:none}.govuk-back-link:link,.govuk-back-link:visited{color:#0b0c0c}@media print{.govuk-back-link:link,.govuk-back-link:visited{color:#000}}.govuk-back-link:hover{color:rgba(11,12,12,.99)}.govuk-back-link:active,.govuk-back-link:focus{color:#0b0c0c}@media print{.govuk-back-link:active,.govuk-back-link:focus{color:#000}}.govuk-back-link:before{content:"";display:block;position:absolute;top:0;bottom:0;left:3px;width:7px;height:7px;margin:auto 0;-webkit-transform:rotate(225deg);-ms-transform:rotate(225deg);transform:rotate(225deg);border:solid;border-width:1px 1px 0 0;border-color:#505a5f}.govuk-back-link:focus:before{border-color:#0b0c0c}.govuk-back-link:after{content:"";position:absolute;top:-14px;right:0;bottom:-14px;left:0}.govuk-breadcrumbs{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:14px;font-size:.875rem;line-height:1.1428571429;color:#0b0c0c;margin-top:15px;margin-bottom:10px}@media print{.govuk-breadcrumbs{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-breadcrumbs{font-size:16px;font-size:1rem;line-height:1.25}}@media print{.govuk-breadcrumbs{font-size:14pt;line-height:1.2}}@media print{.govuk-breadcrumbs{color:#000}}.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:10px;padding-left:15.655px;float:left}.govuk-breadcrumbs__list-item:before{content:"";display:block;position:absolute;top:0;bottom:0;left:-3.31px;width:7px;height:7px;margin:auto 0;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);border:solid;border-width:1px 1px 0 0;border-color:#505a5f}.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}@media print{.govuk-breadcrumbs__link{font-family:sans-serif}}.govuk-breadcrumbs__link:focus{outline:3px solid transparent;color:#0b0c0c;background-color:#fd0;box-shadow:0 -2px #fd0,0 4px #0b0c0c;text-decoration:none}.govuk-breadcrumbs__link:link,.govuk-breadcrumbs__link:visited{color:#0b0c0c}@media print{.govuk-breadcrumbs__link:link,.govuk-breadcrumbs__link:visited{color:#000}}.govuk-breadcrumbs__link:hover{color:rgba(11,12,12,.99)}.govuk-breadcrumbs__link:active,.govuk-breadcrumbs__link:focus{color:#0b0c0c}@media print{.govuk-breadcrumbs__link:active,.govuk-breadcrumbs__link:focus{color:#000}}@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:6px;margin:0}.govuk-breadcrumbs--collapse-on-mobile .govuk-breadcrumbs__list{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}}.govuk-button{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:16px;font-size:1rem;line-height:1.1875;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 transparent;border-radius:0;color:#fff;background-color:#00703c;box-shadow:0 2px 0 #002d18;text-align:center;vertical-align:top;cursor:pointer;-webkit-appearance:none}@media print{.govuk-button{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-button{font-size:19px;font-size:1.1875rem;line-height:1}}@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:#005a30}.govuk-button:active{top:2px}.govuk-button:focus{border-color:#fd0;outline:3px solid transparent;box-shadow:inset 0 0 0 1px #fd0}.govuk-button:focus:not(:active):not(:hover){border-color:#fd0;color:#0b0c0c;background-color:#fd0;box-shadow:0 2px 0 #0b0c0c}.govuk-button:before{content:"";display:block;position:absolute;top:-2px;right:-2px;bottom:-4px;left:-2px;background:transparent}.govuk-button:active:before{top:-4px}.govuk-button--disabled,.govuk-button[disabled=disabled],.govuk-button[disabled]{opacity:.5}.govuk-button--disabled:hover,.govuk-button[disabled=disabled]:hover,.govuk-button[disabled]:hover{background-color:#00703c;cursor:default}.govuk-button--disabled:active,.govuk-button[disabled=disabled]:active,.govuk-button[disabled]:active{top:0;box-shadow:0 2px 0 #002d18}.govuk-button--secondary{background-color:#f3f2f1;box-shadow:0 2px 0 #929191}.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:#dbdad9}.govuk-button--secondary:hover[disabled]{background-color:#f3f2f1}.govuk-button--warning{background-color:#d4351c;box-shadow:0 2px 0 #55150b}.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:#aa2a16}.govuk-button--warning:hover[disabled]{background-color:#d4351c}.govuk-button--start{font-weight:700;font-size:18px;font-size:1.125rem;line-height:1;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;min-height:auto;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}@media(min-width: 40.0625em){.govuk-button--start{font-size:24px;font-size:1.5rem;line-height:1}}@media print{.govuk-button--start{font-size:18pt;line-height:1}}.govuk-button__start-icon{margin-left:5px;vertical-align:middle;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;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:16px;font-size:1rem;line-height:1.25;display:block;margin-bottom:15px;clear:both;color:#d4351c}@media print{.govuk-error-message{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-error-message{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@media print{.govuk-error-message{font-size:14pt;line-height:1.15}}.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:16px;font-size:1rem;line-height:1.25;color:#0b0c0c;box-sizing:border-box;display:table;max-width:100%;margin-bottom:10px;padding:0;white-space:normal}@media print{.govuk-fieldset__legend{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-fieldset__legend{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@media print{.govuk-fieldset__legend{font-size:14pt;line-height:1.15}}@media print{.govuk-fieldset__legend{color:#000}}.govuk-fieldset__legend--xl{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:32px;font-size:2rem;line-height:1.09375;margin-bottom:15px}@media print{.govuk-fieldset__legend--xl{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-fieldset__legend--xl{font-size:48px;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-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:24px;font-size:1.5rem;line-height:1.0416666667;margin-bottom:15px}@media print{.govuk-fieldset__legend--l{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-fieldset__legend--l{font-size:36px;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-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:18px;font-size:1.125rem;line-height:1.1111111111;margin-bottom:15px}@media print{.govuk-fieldset__legend--m{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-fieldset__legend--m{font-size:24px;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-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:16px;font-size:1rem;line-height:1.25}@media print{.govuk-fieldset__legend--s{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-fieldset__legend--s{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@media print{.govuk-fieldset__legend--s{font-size:14pt;line-height:1.15}}.govuk-fieldset__heading{margin:0;font-size:inherit;font-weight:inherit}.govuk-hint{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:16px;font-size:1rem;line-height:1.25;display:block;margin-bottom:15px;color:#505a5f}@media print{.govuk-hint{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-hint{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@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:16px;font-size:1rem;line-height:1.25;color:#0b0c0c;display:block;margin-bottom:5px}@media print{.govuk-label{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-label{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@media print{.govuk-label{font-size:14pt;line-height:1.15}}@media print{.govuk-label{color:#000}}.govuk-label--xl{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:32px;font-size:2rem;line-height:1.09375;margin-bottom:15px}@media print{.govuk-label--xl{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-label--xl{font-size:48px;font-size:3rem;line-height:1.0416666667}}@media print{.govuk-label--xl{font-size:32pt;line-height:1.15}}.govuk-label--l{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:24px;font-size:1.5rem;line-height:1.0416666667;margin-bottom:15px}@media print{.govuk-label--l{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-label--l{font-size:36px;font-size:2.25rem;line-height:1.1111111111}}@media print{.govuk-label--l{font-size:24pt;line-height:1.05}}.govuk-label--m{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:18px;font-size:1.125rem;line-height:1.1111111111;margin-bottom:10px}@media print{.govuk-label--m{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-label--m{font-size:24px;font-size:1.5rem;line-height:1.25}}@media print{.govuk-label--m{font-size:18pt;line-height:1.15}}.govuk-label--s{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:16px;font-size:1rem;line-height:1.25}@media print{.govuk-label--s{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-label--s{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@media print{.govuk-label--s{font-size:14pt;line-height:1.15}}.govuk-label-wrapper{margin:0}.govuk-checkboxes__item{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:16px;font-size:1rem;line-height:1.25;display:block;position:relative;min-height:40px;margin-bottom:10px;padding-left:40px;clear:left}@media print{.govuk-checkboxes__item{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-checkboxes__item{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@media print{.govuk-checkboxes__item{font-size:14pt;line-height:1.15}}.govuk-checkboxes__item:last-child,.govuk-checkboxes__item:last-of-type{margin-bottom:0}.govuk-checkboxes__input{cursor:pointer;position:absolute;z-index:1;top:-2px;left:-2px;width:44px;height:44px;margin:0;opacity:0}.govuk-checkboxes__label{display:inline-block;margin-bottom:0;padding:8px 15px 5px;cursor:pointer;-ms-touch-action:manipulation;touch-action:manipulation}.govuk-checkboxes__label:before{content:"";box-sizing:border-box;position:absolute;top:0;left:0;width:40px;height:40px;border:2px solid currentColor;background:transparent}.govuk-checkboxes__label:after{content:"";box-sizing:border-box;position:absolute;top:11px;left:9px;width:23px;height:12px;-webkit-transform:rotate(-45deg);-ms-transform:rotate(-45deg);transform:rotate(-45deg);border:solid;border-width:0 0 5px 5px;border-top-color:transparent;opacity:0;background:transparent}.govuk-checkboxes__hint{display:block;padding-right:15px;padding-left:15px}.govuk-checkboxes__input:focus+.govuk-checkboxes__label:before{border-width:4px;outline:3px solid transparent;outline-offset:1px;box-shadow:0 0 0 3px #fd0}@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:default}.govuk-checkboxes__input:disabled+.govuk-checkboxes__label{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:16px;font-size:1rem;line-height:1.25;color:#0b0c0c;width:40px;margin-bottom:10px;text-align:center}@media print{.govuk-checkboxes__divider{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-checkboxes__divider{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@media print{.govuk-checkboxes__divider{font-size:14pt;line-height:1.15}}@media print{.govuk-checkboxes__divider{color:#000}}.govuk-checkboxes__conditional{margin-bottom:15px;margin-left:18px;padding-left:33px;border-left:4px solid #b1b4b6}@media(min-width: 40.0625em){.govuk-checkboxes__conditional{margin-bottom:20px}}.js-enabled .govuk-checkboxes__conditional--hidden{display:none}.govuk-checkboxes__conditional>:last-child{margin-bottom:0}.govuk-checkboxes--small .govuk-checkboxes__item{min-height:0;margin-bottom:0;padding-left:34px;float:left}.govuk-checkboxes--small .govuk-checkboxes__item:after{content:"";display:block;clear:both}.govuk-checkboxes--small .govuk-checkboxes__input{left:-10px}.govuk-checkboxes--small .govuk-checkboxes__label{margin-top:-2px;padding:13px 15px 13px 1px;float:left}@media(min-width: 40.0625em){.govuk-checkboxes--small .govuk-checkboxes__label{padding:11px 15px 10px 1px}}.govuk-checkboxes--small .govuk-checkboxes__label:before{top:8px;width:24px;height:24px}.govuk-checkboxes--small .govuk-checkboxes__label:after{top:15px;left:6px;width:12px;height:6.5px;border-width:0 0 3px 3px}.govuk-checkboxes--small .govuk-checkboxes__hint{padding:0;clear:both}.govuk-checkboxes--small .govuk-checkboxes__conditional{margin-left:10px;padding-left:20px;clear:both}.govuk-checkboxes--small .govuk-checkboxes__item:hover .govuk-checkboxes__input:not(:disabled)+.govuk-checkboxes__label:before{box-shadow:0 0 0 10px #b1b4b6}.govuk-checkboxes--small .govuk-checkboxes__item:hover .govuk-checkboxes__input:focus+.govuk-checkboxes__label:before{box-shadow:0 0 0 3px #fd0,0 0 0 10px #b1b4b6}@media(hover: none),(pointer: coarse){.govuk-checkboxes--small .govuk-checkboxes__item:hover .govuk-checkboxes__input:not(:disabled)+.govuk-checkboxes__label:before{box-shadow:initial}.govuk-checkboxes--small .govuk-checkboxes__item:hover .govuk-checkboxes__input:focus+.govuk-checkboxes__label:before{box-shadow:0 0 0 3px #fd0}}.govuk-textarea{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:16px;font-size:1rem;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 #0b0c0c;border-radius:0;-webkit-appearance:none}@media print{.govuk-textarea{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-textarea{font-size:19px;font-size:1.1875rem;line-height:1.25}}@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 #fd0;outline-offset:0;box-shadow:inset 0 0 0 2px}.govuk-textarea--error{border:2px solid #d4351c}.govuk-textarea--error:focus{border-color:#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__message{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-font-feature-settings:"tnum" 1;font-feature-settings:"tnum" 1;font-weight:400;margin-top:0;margin-bottom:0}@media print{.govuk-character-count__message{font-family:sans-serif}}@supports(font-variant-numeric: tabular-nums){.govuk-character-count__message{-webkit-font-feature-settings:normal;font-feature-settings:normal;font-variant-numeric:tabular-nums}}.govuk-character-count__message--disabled{visibility:hidden}.govuk-cookie-banner{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:16px;font-size:1rem;line-height:1.25;padding-top:20px;border-bottom:10px solid transparent;background-color:#f3f2f1}@media print{.govuk-cookie-banner{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-cookie-banner{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@media print{.govuk-cookie-banner{font-size:14pt;line-height:1.15}}.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-summary-list{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:16px;font-size:1rem;line-height:1.25;color:#0b0c0c;margin:0;margin-bottom:20px}@media print{.govuk-summary-list{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-summary-list{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@media print{.govuk-summary-list{font-size:14pt;line-height:1.15}}@media print{.govuk-summary-list{color:#000}}@media(min-width: 40.0625em){.govuk-summary-list{display:table;width:100%;table-layout:fixed}}@media(min-width: 40.0625em){.govuk-summary-list{margin-bottom:30px}}@media(max-width: 40.0525em){.govuk-summary-list__row{margin-bottom:15px;border-bottom:1px solid #b1b4b6}}@media(min-width: 40.0625em){.govuk-summary-list__row{display:table-row}}.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;border-bottom:1px solid #b1b4b6}}.govuk-summary-list__actions{margin-bottom:15px}@media(min-width: 40.0625em){.govuk-summary-list__actions{width:20%;padding-right:0;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}}@media(min-width: 40.0625em){.govuk-summary-list__value{width:50%}}@media(min-width: 40.0625em){.govuk-summary-list__value:last-child{width:70%}}.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{display:inline;margin-right:10px;padding-right:10px}.govuk-summary-list__actions-list-item:not(:last-child){border-right:1px solid #b1b4b6}.govuk-summary-list__actions-list-item:last-child{margin-right:0;padding-right:0;border:0}@media(max-width: 40.0525em){.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;border:0}}@media(max-width: 40.0525em){.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;border:0}}.govuk-input{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:16px;font-size:1rem;line-height:1.25;box-sizing:border-box;width:100%;height:40px;height:2.5rem;margin-top:0;padding:5px;border:2px solid #0b0c0c;border-radius:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}@media print{.govuk-input{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-input{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@media print{.govuk-input{font-size:14pt;line-height:1.15}}.govuk-input:focus{outline:3px solid #fd0;outline-offset:0;box-shadow:inset 0 0 0 2px}.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:2px solid #d4351c}.govuk-input--error:focus{border-color:#0b0c0c}.govuk-input--width-30{max-width:59ex}.govuk-input--width-20{max-width:41ex}.govuk-input--width-10{max-width:23ex}.govuk-input--width-5{max-width:10.8ex}.govuk-input--width-4{max-width:9ex}.govuk-input--width-3{max-width:7.2ex}.govuk-input--width-2{max-width:5.4ex}.govuk-input__wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.govuk-input__wrapper .govuk-input{-webkit-box-flex:0;-webkit-flex:0 1 auto;-ms-flex:0 1 auto;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:16px;font-size:1rem;line-height:1.25;box-sizing:border-box;display:inline-block;min-width:40px;min-width:2.5rem;height:40px;height:2.5rem;padding:5px;border:2px solid #0b0c0c;background-color:#f3f2f1;text-align:center;white-space:nowrap;cursor:default;-webkit-box-flex:0;-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto}@media print{.govuk-input__prefix,.govuk-input__suffix{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-input__prefix,.govuk-input__suffix{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@media print{.govuk-input__prefix,.govuk-input__suffix{font-size:14pt;line-height:1.15}}@media(max-width: 40.0525em){.govuk-input__prefix,.govuk-input__suffix{line-height:1.6}}@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}.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:16px;font-size:1rem;line-height:1.25;color:#0b0c0c;margin-bottom:20px;display:block}@media print{.govuk-details{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-details{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@media print{.govuk-details{font-size:14pt;line-height:1.15}}@media print{.govuk-details{color:#000}}@media(min-width: 40.0625em){.govuk-details{margin-bottom:30px}}.govuk-details__summary{display:inline-block;position:relative;margin-bottom:5px;padding-left:25px;color:#1d70b8;cursor:pointer}.govuk-details__summary:hover{color:#003078}.govuk-details__summary:focus{outline:3px solid transparent;color:#0b0c0c;background-color:#fd0;box-shadow:0 -2px #fd0,0 4px #0b0c0c;text-decoration:none}.govuk-details__summary-text{text-decoration:underline}.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:transparent;-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:transparent;-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{padding-top:15px;padding-bottom:15px;padding-left:20px;border-left:5px solid #b1b4b6}.govuk-details__text p{margin-top:0;margin-bottom:20px}.govuk-details__text>:last-child{margin-bottom:0}.govuk-error-summary{color:#0b0c0c;padding:15px;margin-bottom:30px;border:5px solid #d4351c}@media print{.govuk-error-summary{color:#000}}@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 #fd0}.govuk-error-summary__title{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:18px;font-size:1.125rem;line-height:1.1111111111;margin-top:0;margin-bottom:15px}@media print{.govuk-error-summary__title{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-error-summary__title{font-size:24px;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{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:16px;font-size:1rem;line-height:1.25}@media print{.govuk-error-summary__body{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-error-summary__body{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@media print{.govuk-error-summary__body{font-size:14pt;line-height:1.15}}.govuk-error-summary__body p{margin-top:0;margin-bottom:15px}@media(min-width: 40.0625em){.govuk-error-summary__body p{margin-bottom:20px}}.govuk-error-summary__list{margin-top:0;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}@media print{.govuk-error-summary__list a{font-family:sans-serif}}.govuk-error-summary__list a:focus{outline:3px solid transparent;color:#0b0c0c;background-color:#fd0;box-shadow:0 -2px #fd0,0 4px #0b0c0c;text-decoration:none}.govuk-error-summary__list a:link,.govuk-error-summary__list a:visited{color:#d4351c}.govuk-error-summary__list a:hover{color:#942514}.govuk-error-summary__list a:active{color:#d4351c}.govuk-error-summary__list a:focus{color:#0b0c0c}.govuk-file-upload{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:16px;font-size:1rem;line-height:1.25;color:#0b0c0c;max-width:100%;margin-left:-5px;padding:5px}@media print{.govuk-file-upload{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-file-upload{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@media print{.govuk-file-upload{font-size:14pt;line-height:1.15}}@media print{.govuk-file-upload{color:#000}}.govuk-file-upload::-webkit-file-upload-button{-webkit-appearance:button;color:inherit;font:inherit}.govuk-file-upload:focus{outline:3px solid #fd0;box-shadow:inset 0 0 0 4px #0b0c0c}.govuk-file-upload:focus-within{outline:3px solid #fd0;box-shadow:inset 0 0 0 4px #0b0c0c}.govuk-footer{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:14px;font-size:.875rem;line-height:1.1428571429;padding-top:25px;padding-bottom:15px;border-top:1px solid #b1b4b6;color:#0b0c0c;background:#f3f2f1}@media print{.govuk-footer{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-footer{font-size:16px;font-size:1rem;line-height:1.25}}@media print{.govuk-footer{font-size:14pt;line-height:1.2}}@media(min-width: 40.0625em){.govuk-footer{padding-top:40px}}@media(min-width: 40.0625em){.govuk-footer{padding-bottom:25px}}.govuk-footer__link{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:underline}@media print{.govuk-footer__link{font-family:sans-serif}}.govuk-footer__link:focus{outline:3px solid transparent;color:#0b0c0c;background-color:#fd0;box-shadow:0 -2px #fd0,0 4px #0b0c0c;text-decoration:none}.govuk-footer__link:link,.govuk-footer__link:visited{color:#0b0c0c}@media print{.govuk-footer__link:link,.govuk-footer__link:visited{color:#000}}.govuk-footer__link:hover{color:rgba(11,12,12,.99)}.govuk-footer__link:active,.govuk-footer__link:focus{color:#0b0c0c}@media print{.govuk-footer__link:active,.govuk-footer__link:focus{color:#000}}.govuk-footer__section-break{margin:0;margin-bottom:30px;border:0;border-bottom:1px solid #b1b4b6}@media(min-width: 40.0625em){.govuk-footer__section-break{margin-bottom:50px}}.govuk-footer__meta{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-right:-15px;margin-left:-15px;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:end;-webkit-align-items:flex-end;-ms-flex-align:end;align-items:flex-end;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.govuk-footer__meta-item{margin-right:15px;margin-bottom:25px;margin-left:15px}.govuk-footer__meta-item--grow{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}@media(max-width: 40.0525em){.govuk-footer__meta-item--grow{-webkit-flex-basis:320px;-ms-flex-preferred-size:320px;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}.govuk-footer__copyright-logo{display:inline-block;min-width:125px;padding-top:112px;background-image:url("/public/images/govuk-crest.png");background-repeat:no-repeat;background-position:50% 0%;background-size:125px 102px;text-align:center;white-space:nowrap}@media only screen and (-webkit-min-device-pixel-ratio: 2),only screen and (min-resolution: 192dpi),only screen and (min-resolution: 2dppx){.govuk-footer__copyright-logo{background-image:url("/public/images/govuk-crest-2x.png")}}.govuk-footer__inline-list{margin-top:0;margin-bottom:15px;padding:0}.govuk-footer__meta-custom{margin-bottom:20px}.govuk-footer__inline-list-item{display:inline-block;margin-right:15px;margin-bottom:5px}.govuk-footer__heading{margin-bottom:25px;padding-bottom:20px;border-bottom:1px solid #b1b4b6}@media(min-width: 40.0625em){.govuk-footer__heading{margin-bottom:40px}}@media(max-width: 40.0525em){.govuk-footer__heading{padding-bottom:10px}}.govuk-footer__navigation{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-right:-15px;margin-left:-15px;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.govuk-footer__section{display:inline-block;margin-right:15px;margin-bottom:30px;margin-left:15px;vertical-align:top;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;-webkit-flex-shrink:1;-ms-flex-negative:1;flex-shrink:1}@media(max-width: 48.0525em){.govuk-footer__section{-webkit-flex-basis:200px;-ms-flex-preferred-size:200px;flex-basis:200px}}@media(min-width: 48.0625em){.govuk-footer__section:first-child:nth-last-child(2){-webkit-box-flex:2;-webkit-flex-grow:2;-ms-flex-positive:2;flex-grow:2}}.govuk-footer__list{margin:0;padding:0;list-style:none;-webkit-column-gap:30px;column-gap:30px}.govuk-footer__list .govuk-footer__link:hover{text-decoration-thickness:auto}@media(min-width: 48.0625em){.govuk-footer__list--columns-2{-webkit-column-count:2;column-count:2}.govuk-footer__list--columns-3{-webkit-column-count: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-header{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:14px;font-size:.875rem;line-height:1.1428571429;border-bottom:10px solid #fff;color:#fff;background:#0b0c0c}@media print{.govuk-header{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-header{font-size:16px;font-size:1rem;line-height:1.25}}@media print{.govuk-header{font-size:14pt;line-height:1.2}}.govuk-header__container--full-width{padding:0 15px;border-color:#1d70b8}.govuk-header__container--full-width .govuk-header__menu-button{right:15px}.govuk-header__container{position:relative;margin-bottom:-10px;padding-top:10px;border-bottom:10px solid #1d70b8}.govuk-header__container:after{content:"";display:block;clear:both}.govuk-header__logotype{display:inline-block;margin-right:5px}@media(forced-colors: active){.govuk-header__logotype{forced-color-adjust:none;color:linktext}}.govuk-header__logotype:last-child{margin-right:0}.govuk-header__logotype-crown{position:relative;top:-1px;margin-right:1px;fill:currentColor;vertical-align:top}.govuk-header__logotype-crown-fallback-image{width:36px;height:32px;border:0;vertical-align:bottom}.govuk-header__product-name{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:18px;font-size:1.125rem;line-height:1;display:inline-table}@media print{.govuk-header__product-name{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-header__product-name{font-size:24px;font-size:1.5rem;line-height:1}}@media print{.govuk-header__product-name{font-size:18pt;line-height:1}}.govuk-header__link{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:none}@media print{.govuk-header__link{font-family:sans-serif}}.govuk-header__link:link,.govuk-header__link:visited{color:#fff}.govuk-header__link:hover,.govuk-header__link:active{color:rgba(255,255,255,.99)}.govuk-header__link:focus{color:#0b0c0c}.govuk-header__link:hover{text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:.1em}.govuk-header__link:focus{outline:3px solid transparent;color:#0b0c0c;background-color:#fd0;box-shadow:0 -2px #fd0,0 4px #0b0c0c;text-decoration:none}.govuk-header__link--homepage{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;display:inline-block;margin-right:10px;font-size:30px;line-height:1}@media print{.govuk-header__link--homepage{font-family:sans-serif}}.govuk-header__link--homepage:link,.govuk-header__link--homepage:visited{text-decoration:none}.govuk-header__link--homepage:hover,.govuk-header__link--homepage:active{margin-bottom:-3px;border-bottom:3px solid}.govuk-header__link--homepage:focus{margin-bottom:0;border-bottom:0}.govuk-header__link--service-name{display:inline-block;margin-bottom:10px;font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:18px;font-size:1.125rem;line-height:1.1111111111}@media print{.govuk-header__link--service-name{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-header__link--service-name{font-size:24px;font-size:1.5rem;line-height:1.25}}@media print{.govuk-header__link--service-name{font-size:18pt;line-height:1.15}}.govuk-header__logo,.govuk-header__content{box-sizing:border-box}.govuk-header__logo{margin-bottom:10px;padding-right:50px}@media(min-width: 40.0625em){.govuk-header__logo{margin-bottom:10px}}@media(min-width: 48.0625em){.govuk-header__logo{width:33.33%;padding-right:15px;float:left;vertical-align:top}}@media(min-width: 48.0625em){.govuk-header__content{width:66.66%;padding-left:15px;float:left}}.govuk-header__menu-button{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:14px;font-size:.875rem;line-height:1.1428571429;display:none;position:absolute;top:20px;right:0;margin:0;padding:0;border:0;color:#fff;background:none;cursor:pointer}@media print{.govuk-header__menu-button{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-header__menu-button{font-size:16px;font-size:1rem;line-height:1.25}}@media print{.govuk-header__menu-button{font-size:14pt;line-height:1.2}}.govuk-header__menu-button:hover{-webkit-text-decoration:solid underline 3px;text-decoration:solid underline 3px;text-underline-offset:.1em}.govuk-header__menu-button:focus{outline:3px solid transparent;color:#0b0c0c;background-color:#fd0;box-shadow:0 -2px #fd0,0 4px #0b0c0c;text-decoration:none}.govuk-header__menu-button:after{display:inline-block;width:0;height:0;border-style:solid;border-color:transparent;-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}@media(min-width: 40.0625em){.govuk-header__menu-button{top:15px}}.govuk-header__menu-button--open:after{display:inline-block;width:0;height:0;border-style:solid;border-color:transparent;-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 5px;border-bottom-color:inherit}.govuk-header__navigation{margin-bottom:10px;display:block;margin:0;padding:0;list-style:none}@media(min-width: 40.0625em){.govuk-header__navigation{margin-bottom:10px}}.js-enabled .govuk-header__menu-button{display:block}@media(min-width: 48.0625em){.js-enabled .govuk-header__menu-button{display:none}}.js-enabled .govuk-header__navigation{display:none}@media(min-width: 48.0625em){.js-enabled .govuk-header__navigation{display:block}}.js-enabled .govuk-header__navigation--open{display:block}@media(min-width: 48.0625em){.govuk-header__navigation--end{margin:0;padding:5px 0;text-align:right}}.govuk-header__navigation--no-service-name{padding-top:40px}.govuk-header__navigation-item{padding:10px 0;border-bottom:1px solid #2e3133}@media(min-width: 48.0625em){.govuk-header__navigation-item{display:inline-block;margin-right:15px;padding:5px 0;border:0}}.govuk-header__navigation-item a{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:14px;font-size:.875rem;line-height:1.1428571429;white-space:nowrap}@media print{.govuk-header__navigation-item a{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-header__navigation-item a{font-size:16px;font-size:1rem;line-height:1.25}}@media print{.govuk-header__navigation-item a{font-size:14pt;line-height:1.2}}.govuk-header__navigation-item--active a:link,.govuk-header__navigation-item--active a:hover,.govuk-header__navigation-item--active a:visited{color:#1d8feb}.govuk-header__navigation-item--active a:focus{color:#0b0c0c}.govuk-header__navigation-item:last-child{margin-right:0}@media print{.govuk-header{border-bottom-width:0;color:#0b0c0c;background:transparent}.govuk-header__logotype-crown-fallback-image{display:none}.govuk-header__link:link,.govuk-header__link:visited{color:#0b0c0c}.govuk-header__link:after{display:none}}.govuk-inset-text{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:16px;font-size:1rem;line-height:1.25;color:#0b0c0c;padding:15px;margin-top:20px;margin-bottom:20px;clear:both;border-left:10px solid #b1b4b6}@media print{.govuk-inset-text{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-inset-text{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@media print{.govuk-inset-text{font-size:14pt;line-height:1.15}}@media print{.govuk-inset-text{color:#000}}@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{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:16px;font-size:1rem;line-height:1.25;margin-bottom:30px;border:5px solid #1d70b8;background-color:#1d70b8}@media print{.govuk-notification-banner{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-notification-banner{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@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 #fd0}.govuk-notification-banner__header{padding:2px 15px 5px;border-bottom:1px solid transparent}@media(min-width: 40.0625em){.govuk-notification-banner__header{padding:2px 20px 5px}}.govuk-notification-banner__title{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:16px;font-size:1rem;line-height:1.25;margin:0;padding:0;color:#fff}@media print{.govuk-notification-banner__title{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-notification-banner__title{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@media print{.govuk-notification-banner__title{font-size:14pt;line-height:1.15}}.govuk-notification-banner__content{color:#0b0c0c;padding:15px;background-color:#fff}@media print{.govuk-notification-banner__content{color:#000}}@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-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:18px;font-size:1.125rem;line-height:1.1111111111;margin:0 0 15px 0;padding:0}@media print{.govuk-notification-banner__heading{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-notification-banner__heading{font-size:24px;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}@media print{.govuk-notification-banner__link{font-family:sans-serif}}.govuk-notification-banner__link:focus{outline:3px solid transparent;color:#0b0c0c;background-color:#fd0;box-shadow:0 -2px #fd0,0 4px #0b0c0c;text-decoration:none}.govuk-notification-banner__link:link{color:#1d70b8}.govuk-notification-banner__link:visited{color:#1d70b8}.govuk-notification-banner__link:hover{color:#003078}.govuk-notification-banner__link:active{color:#0b0c0c}.govuk-notification-banner__link:focus{color:#0b0c0c}.govuk-notification-banner--success{border-color:#00703c;background-color:#00703c}.govuk-notification-banner--success .govuk-notification-banner__link:link,.govuk-notification-banner--success .govuk-notification-banner__link:visited{color:#00703c}.govuk-notification-banner--success .govuk-notification-banner__link:hover{color:#004e2a}.govuk-notification-banner--success .govuk-notification-banner__link:active{color:#00703c}.govuk-notification-banner--success .govuk-notification-banner__link:focus{color:#0b0c0c}.govuk-panel{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:16px;font-size:1rem;line-height:1.25;box-sizing:border-box;margin-bottom:15px;padding:35px;border:5px solid transparent;text-align:center}@media print{.govuk-panel{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-panel{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@media print{.govuk-panel{font-size:14pt;line-height:1.15}}@media(max-width: 40.0525em){.govuk-panel{padding:10px;overflow-wrap:break-word;word-wrap:break-word}}.govuk-panel--confirmation{color:#fff;background:#00703c}@media print{.govuk-panel--confirmation{border-color:currentColor;color:#000;background:none}}.govuk-panel__title{margin-top:0;margin-bottom:30px;font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:32px;font-size:2rem;line-height:1.09375}@media print{.govuk-panel__title{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-panel__title{font-size:48px;font-size:3rem;line-height:1.0416666667}}@media print{.govuk-panel__title{font-size:32pt;line-height:1.15}}.govuk-panel__title:last-child{margin-bottom:0}.govuk-panel__body{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:24px;font-size:1.5rem;line-height:1.0416666667}@media print{.govuk-panel__body{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-panel__body{font-size:36px;font-size:2.25rem;line-height:1.1111111111}}@media print{.govuk-panel__body{font-size:24pt;line-height:1.05}}.govuk-tag{display:inline-block;outline:2px solid transparent;outline-offset:-2px;color:#fff;background-color:#1d70b8;letter-spacing:1px;text-decoration:none;text-transform:uppercase;font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:14px;font-size:.875rem;line-height:1;padding-top:5px;padding-right:8px;padding-bottom:4px;padding-left:8px}@media print{.govuk-tag{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-tag{font-size:16px;font-size:1rem;line-height:1}}@media print{.govuk-tag{font-size:14pt;line-height:1}}.govuk-tag--inactive{background-color:#505a5f}.govuk-tag--grey{color:#383f43;background:#eeefef}.govuk-tag--purple{color:#3d2375;background:#dbd5e9}.govuk-tag--turquoise{color:#10403c;background:#bfe3e0}.govuk-tag--blue{color:#144e81;background:#d2e2f1}.govuk-tag--yellow{color:#594d00;background:#fff7bf}.govuk-tag--orange{color:#6e3619;background:#fcd6c3}.govuk-tag--red{color:#942514;background:#f6d7d2}.govuk-tag--pink{color:#80224d;background:#f7d7e6}.govuk-tag--green{color:#005a30;background:#cce2d8}.govuk-phase-banner{padding-top:10px;padding-bottom:10px;border-bottom:1px solid #b1b4b6}.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:14px;font-size:.875rem;line-height:1.1428571429;color:#0b0c0c;display:table;margin:0}@media print{.govuk-phase-banner__content{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-phase-banner__content{font-size:16px;font-size:1rem;line-height:1.25}}@media print{.govuk-phase-banner__content{font-size:14pt;line-height:1.2}}@media print{.govuk-phase-banner__content{color:#000}}.govuk-phase-banner__content__tag{margin-right:10px}.govuk-phase-banner__text{display:table-cell;vertical-align:middle}.govuk-tabs{margin-top:5px;margin-bottom:20px}@media(min-width: 40.0625em){.govuk-tabs{margin-top:5px}}@media(min-width: 40.0625em){.govuk-tabs{margin-bottom:30px}}.govuk-tabs__title{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:16px;font-size:1rem;line-height:1.25;color:#0b0c0c;margin-bottom:10px}@media print{.govuk-tabs__title{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-tabs__title{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@media print{.govuk-tabs__title{font-size:14pt;line-height:1.15}}@media print{.govuk-tabs__title{color:#000}}.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{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:16px;font-size:1rem;line-height:1.25;margin-left:25px}@media print{.govuk-tabs__list-item{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-tabs__list-item{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@media print{.govuk-tabs__list-item{font-size:14pt;line-height:1.15}}.govuk-tabs__list-item:before{color:#0b0c0c;content:"—";margin-left:-25px;padding-right:5px}@media print{.govuk-tabs__list-item:before{color:#000}}.govuk-tabs__tab{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:underline;display:inline-block;margin-bottom:10px}@media print{.govuk-tabs__tab{font-family:sans-serif}}.govuk-tabs__tab:focus{outline:3px solid transparent;color:#0b0c0c;background-color:#fd0;box-shadow:0 -2px #fd0,0 4px #0b0c0c;text-decoration:none}.govuk-tabs__tab:link{color:#1d70b8}.govuk-tabs__tab:visited{color:#4c2c92}.govuk-tabs__tab:hover{color:#003078}.govuk-tabs__tab:active{color:#0b0c0c}.govuk-tabs__tab:focus{color:#0b0c0c}.govuk-tabs__panel{margin-bottom:30px}@media(min-width: 40.0625em){.govuk-tabs__panel{margin-bottom:50px}}@media(min-width: 40.0625em){.js-enabled .govuk-tabs__list{margin-bottom:0;border-bottom:1px solid #b1b4b6}.js-enabled .govuk-tabs__list:after{content:"";display:block;clear:both}.js-enabled .govuk-tabs__title{display:none}.js-enabled .govuk-tabs__list-item{position:relative;margin-right:5px;margin-bottom:0;margin-left:0;padding:10px 20px;float:left;background-color:#f3f2f1;text-align:center}.js-enabled .govuk-tabs__list-item:before{content:none}.js-enabled .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 #b1b4b6;border-bottom:0;background-color:#fff}.js-enabled .govuk-tabs__list-item--selected .govuk-tabs__tab{text-decoration:none}.js-enabled .govuk-tabs__tab{margin-bottom:0}.js-enabled .govuk-tabs__tab:link,.js-enabled .govuk-tabs__tab:visited{color:#0b0c0c}}@media print and (min-width: 40.0625em){.js-enabled .govuk-tabs__tab:link,.js-enabled .govuk-tabs__tab:visited{color:#000}}@media(min-width: 40.0625em){.js-enabled .govuk-tabs__tab:hover{color:rgba(11,12,12,.99)}}@media(min-width: 40.0625em){.js-enabled .govuk-tabs__tab:active,.js-enabled .govuk-tabs__tab:focus{color:#0b0c0c}}@media print and (min-width: 40.0625em){.js-enabled .govuk-tabs__tab:active,.js-enabled .govuk-tabs__tab:focus{color:#000}}@media(min-width: 40.0625em){.js-enabled .govuk-tabs__tab:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0}}@media(min-width: 40.0625em){.js-enabled .govuk-tabs__panel{margin-bottom:0;padding:30px 20px;border:1px solid #b1b4b6;border-top:0}}@media(min-width: 40.0625em)and (min-width: 40.0625em){.js-enabled .govuk-tabs__panel{margin-bottom:0}}@media(min-width: 40.0625em){.js-enabled .govuk-tabs__panel>:last-child{margin-bottom:0}}@media(min-width: 40.0625em){.js-enabled .govuk-tabs__panel--hidden{display:none}}.govuk-radios__item{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:16px;font-size:1rem;line-height:1.25;display:block;position:relative;min-height:40px;margin-bottom:10px;padding-left:40px;clear:left}@media print{.govuk-radios__item{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-radios__item{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@media print{.govuk-radios__item{font-size:14pt;line-height:1.15}}.govuk-radios__item:last-child,.govuk-radios__item:last-of-type{margin-bottom:0}.govuk-radios__input{cursor:pointer;position:absolute;z-index:1;top:-2px;left:-2px;width:44px;height:44px;margin:0;opacity:0}.govuk-radios__label{display:inline-block;margin-bottom:0;padding:8px 15px 5px;cursor:pointer;-ms-touch-action:manipulation;touch-action:manipulation}.govuk-radios__label:before{content:"";box-sizing:border-box;position:absolute;top:0;left:0;width:40px;height:40px;border:2px solid currentColor;border-radius:50%;background:transparent}.govuk-radios__label:after{content:"";position:absolute;top:10px;left:10px;width:0;height:0;border:10px solid currentColor;border-radius:50%;opacity:0;background:currentColor}.govuk-radios__hint{display:block;padding-right:15px;padding-left:15px}.govuk-radios__input:focus+.govuk-radios__label:before{border-width:4px;outline:3px solid transparent;outline-offset:1px;box-shadow:0 0 0 4px #fd0}@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:default}.govuk-radios__input:disabled+.govuk-radios__label{opacity:.5}@media(min-width: 40.0625em){.govuk-radios--inline:after{content:"";display:block;clear:both}.govuk-radios--inline .govuk-radios__item{margin-right:20px;float:left;clear:none}}.govuk-radios--inline.govuk-radios--conditional .govuk-radios__item{margin-right:0;float:none}.govuk-radios__divider{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:16px;font-size:1rem;line-height:1.25;color:#0b0c0c;width:40px;margin-bottom:10px;text-align:center}@media print{.govuk-radios__divider{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-radios__divider{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@media print{.govuk-radios__divider{font-size:14pt;line-height:1.15}}@media print{.govuk-radios__divider{color:#000}}.govuk-radios__conditional{margin-bottom:15px;margin-left:18px;padding-left:33px;border-left:4px solid #b1b4b6}@media(min-width: 40.0625em){.govuk-radios__conditional{margin-bottom:20px}}.js-enabled .govuk-radios__conditional--hidden{display:none}.govuk-radios__conditional>:last-child{margin-bottom:0}.govuk-radios--small .govuk-radios__item{min-height:0;margin-bottom:0;padding-left:34px;float:left}.govuk-radios--small .govuk-radios__item:after{content:"";display:block;clear:both}.govuk-radios--small .govuk-radios__input{left:-10px}.govuk-radios--small .govuk-radios__label{margin-top:-2px;padding:13px 15px 13px 1px;float:left}@media(min-width: 40.0625em){.govuk-radios--small .govuk-radios__label{padding:11px 15px 10px 1px}}.govuk-radios--small .govuk-radios__label:before{top:8px;width:24px;height:24px}.govuk-radios--small .govuk-radios__label:after{top:15px;left:7px;border-width:5px}.govuk-radios--small .govuk-radios__hint{padding:0;clear:both;pointer-events:none}.govuk-radios--small .govuk-radios__conditional{margin-left:10px;padding-left:20px;clear:both}.govuk-radios--small .govuk-radios__divider{width:24px;margin-bottom:5px}.govuk-radios--small .govuk-radios__item:hover .govuk-radios__input:not(:disabled)+.govuk-radios__label:before{box-shadow:0 0 0 10px #b1b4b6}.govuk-radios--small .govuk-radios__item:hover .govuk-radios__input:focus+.govuk-radios__label:before{box-shadow:0 0 0 4px #fd0,0 0 0 10px #b1b4b6}@media(hover: none),(pointer: coarse){.govuk-radios--small .govuk-radios__item:hover .govuk-radios__input:not(:disabled)+.govuk-radios__label:before{box-shadow:initial}.govuk-radios--small .govuk-radios__item:hover .govuk-radios__input:focus+.govuk-radios__label:before{box-shadow:0 0 0 4px #fd0}}.govuk-select{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:16px;font-size:1rem;line-height:1.25;box-sizing:border-box;max-width:100%;height:40px;height:2.5rem;padding:5px;border:2px solid #0b0c0c}@media print{.govuk-select{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-select{font-size:19px;font-size:1.1875rem;line-height:1.25}}@media print{.govuk-select{font-size:14pt;line-height:1.25}}.govuk-select:focus{outline:3px solid #fd0;outline-offset:0;box-shadow:inset 0 0 0 2px}.govuk-select option:active,.govuk-select option:checked,.govuk-select:focus::-ms-value{color:#fff;background-color:#1d70b8}.govuk-select--error{border:2px solid #d4351c}.govuk-select--error:focus{border-color:#0b0c0c}.govuk-skip-link{position:absolute !important;width:1px !important;height:1px !important;margin:0 !important;overflow:hidden !important;clip:rect(0 0 0 0) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;white-space:nowrap !important;font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-decoration:underline;font-size:14px;font-size:.875rem;line-height:1.1428571429;display:block;padding:10px 15px}.govuk-skip-link:active,.govuk-skip-link:focus{position:static !important;width:auto !important;height:auto !important;margin:inherit !important;overflow:visible !important;clip:auto !important;-webkit-clip-path:none !important;clip-path:none !important;white-space:inherit !important}@media print{.govuk-skip-link{font-family:sans-serif}}.govuk-skip-link:link,.govuk-skip-link:visited{color:#0b0c0c}@media print{.govuk-skip-link:link,.govuk-skip-link:visited{color:#000}}.govuk-skip-link:hover{color:rgba(11,12,12,.99)}.govuk-skip-link:active,.govuk-skip-link:focus{color:#0b0c0c}@media print{.govuk-skip-link:active,.govuk-skip-link:focus{color:#000}}@media(min-width: 40.0625em){.govuk-skip-link{font-size:16px;font-size:1rem;line-height:1.25}}@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 #fd0;outline-offset:0;background-color:#fd0}.govuk-table{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:16px;font-size:1rem;line-height:1.25;color:#0b0c0c;width:100%;margin-bottom:20px;border-spacing:0;border-collapse:collapse}@media print{.govuk-table{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-table{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@media print{.govuk-table{font-size:14pt;line-height:1.15}}@media print{.govuk-table{color:#000}}@media(min-width: 40.0625em){.govuk-table{margin-bottom:30px}}.govuk-table__header{font-weight:700}.govuk-table__header,.govuk-table__cell{padding:10px 20px 10px 0;border-bottom:1px solid #b1b4b6;text-align:left;vertical-align:top}.govuk-table__cell--numeric{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-font-feature-settings:"tnum" 1;font-feature-settings:"tnum" 1;font-weight:400}@media print{.govuk-table__cell--numeric{font-family:sans-serif}}@supports(font-variant-numeric: tabular-nums){.govuk-table__cell--numeric{-webkit-font-feature-settings:normal;font-feature-settings:normal;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{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:32px;font-size:2rem;line-height:1.09375;margin-bottom:15px}@media print{.govuk-table__caption--xl{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-table__caption--xl{font-size:48px;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-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:24px;font-size:1.5rem;line-height:1.0416666667;margin-bottom:15px}@media print{.govuk-table__caption--l{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-table__caption--l{font-size:36px;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-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:18px;font-size:1.125rem;line-height:1.1111111111;margin-bottom:15px}@media print{.govuk-table__caption--m{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-table__caption--m{font-size:24px;font-size:1.5rem;line-height:1.25}}@media print{.govuk-table__caption--m{font-size:18pt;line-height:1.15}}.govuk-table__caption--s{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:16px;font-size:1rem;line-height:1.25}@media print{.govuk-table__caption--s{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-table__caption--s{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@media print{.govuk-table__caption--s{font-size:14pt;line-height:1.15}}.govuk-warning-text{position:relative;margin-bottom:20px;padding:10px 0}@media(min-width: 40.0625em){.govuk-warning-text{margin-bottom:30px}}.govuk-warning-text__assistive{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}.govuk-warning-text__icon{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;box-sizing:border-box;display:inline-block;position:absolute;left:0;min-width:35px;min-height:35px;margin-top:-7px;border:3px solid #0b0c0c;border-radius:50%;color:#fff;background:#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 print{.govuk-warning-text__icon{font-family:sans-serif}}@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:transparent}}.govuk-warning-text__text{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:16px;font-size:1rem;line-height:1.25;color:#0b0c0c;display:block;padding-left:45px}@media print{.govuk-warning-text__text{font-family:sans-serif}}@media(min-width: 40.0625em){.govuk-warning-text__text{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@media print{.govuk-warning-text__text{font-size:14pt;line-height:1.15}}@media print{.govuk-warning-text__text{color:#000}}.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}.govuk-visually-hidden-focusable{position:absolute !important;width:1px !important;height:1px !important;margin:0 !important;overflow:hidden !important;clip:rect(0 0 0 0) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;white-space:nowrap !important}.govuk-visually-hidden-focusable:active,.govuk-visually-hidden-focusable:focus{position:static !important;width:auto !important;height:auto !important;margin:inherit !important;overflow:visible !important;clip:auto !important;-webkit-clip-path:none !important;clip-path:none !important;white-space:inherit !important}.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}@media(min-width: 40.0625em){.govuk-\!-margin-0{margin:0 !important}}.govuk-\!-margin-top-0{margin-top:0 !important}@media(min-width: 40.0625em){.govuk-\!-margin-top-0{margin-top:0 !important}}.govuk-\!-margin-right-0{margin-right:0 !important}@media(min-width: 40.0625em){.govuk-\!-margin-right-0{margin-right:0 !important}}.govuk-\!-margin-bottom-0{margin-bottom:0 !important}@media(min-width: 40.0625em){.govuk-\!-margin-bottom-0{margin-bottom:0 !important}}.govuk-\!-margin-left-0{margin-left:0 !important}@media(min-width: 40.0625em){.govuk-\!-margin-left-0{margin-left:0 !important}}.govuk-\!-margin-1{margin:5px !important}@media(min-width: 40.0625em){.govuk-\!-margin-1{margin:5px !important}}.govuk-\!-margin-top-1{margin-top:5px !important}@media(min-width: 40.0625em){.govuk-\!-margin-top-1{margin-top:5px !important}}.govuk-\!-margin-right-1{margin-right:5px !important}@media(min-width: 40.0625em){.govuk-\!-margin-right-1{margin-right:5px !important}}.govuk-\!-margin-bottom-1{margin-bottom:5px !important}@media(min-width: 40.0625em){.govuk-\!-margin-bottom-1{margin-bottom:5px !important}}.govuk-\!-margin-left-1{margin-left:5px !important}@media(min-width: 40.0625em){.govuk-\!-margin-left-1{margin-left:5px !important}}.govuk-\!-margin-2{margin:10px !important}@media(min-width: 40.0625em){.govuk-\!-margin-2{margin:10px !important}}.govuk-\!-margin-top-2{margin-top:10px !important}@media(min-width: 40.0625em){.govuk-\!-margin-top-2{margin-top:10px !important}}.govuk-\!-margin-right-2{margin-right:10px !important}@media(min-width: 40.0625em){.govuk-\!-margin-right-2{margin-right:10px !important}}.govuk-\!-margin-bottom-2{margin-bottom:10px !important}@media(min-width: 40.0625em){.govuk-\!-margin-bottom-2{margin-bottom:10px !important}}.govuk-\!-margin-left-2{margin-left:10px !important}@media(min-width: 40.0625em){.govuk-\!-margin-left-2{margin-left:10px !important}}.govuk-\!-margin-3{margin:15px !important}@media(min-width: 40.0625em){.govuk-\!-margin-3{margin:15px !important}}.govuk-\!-margin-top-3{margin-top:15px !important}@media(min-width: 40.0625em){.govuk-\!-margin-top-3{margin-top:15px !important}}.govuk-\!-margin-right-3{margin-right:15px !important}@media(min-width: 40.0625em){.govuk-\!-margin-right-3{margin-right:15px !important}}.govuk-\!-margin-bottom-3{margin-bottom:15px !important}@media(min-width: 40.0625em){.govuk-\!-margin-bottom-3{margin-bottom:15px !important}}.govuk-\!-margin-left-3{margin-left:15px !important}@media(min-width: 40.0625em){.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}@media(min-width: 40.0625em){.govuk-\!-padding-0{padding:0 !important}}.govuk-\!-padding-top-0{padding-top:0 !important}@media(min-width: 40.0625em){.govuk-\!-padding-top-0{padding-top:0 !important}}.govuk-\!-padding-right-0{padding-right:0 !important}@media(min-width: 40.0625em){.govuk-\!-padding-right-0{padding-right:0 !important}}.govuk-\!-padding-bottom-0{padding-bottom:0 !important}@media(min-width: 40.0625em){.govuk-\!-padding-bottom-0{padding-bottom:0 !important}}.govuk-\!-padding-left-0{padding-left:0 !important}@media(min-width: 40.0625em){.govuk-\!-padding-left-0{padding-left:0 !important}}.govuk-\!-padding-1{padding:5px !important}@media(min-width: 40.0625em){.govuk-\!-padding-1{padding:5px !important}}.govuk-\!-padding-top-1{padding-top:5px !important}@media(min-width: 40.0625em){.govuk-\!-padding-top-1{padding-top:5px !important}}.govuk-\!-padding-right-1{padding-right:5px !important}@media(min-width: 40.0625em){.govuk-\!-padding-right-1{padding-right:5px !important}}.govuk-\!-padding-bottom-1{padding-bottom:5px !important}@media(min-width: 40.0625em){.govuk-\!-padding-bottom-1{padding-bottom:5px !important}}.govuk-\!-padding-left-1{padding-left:5px !important}@media(min-width: 40.0625em){.govuk-\!-padding-left-1{padding-left:5px !important}}.govuk-\!-padding-2{padding:10px !important}@media(min-width: 40.0625em){.govuk-\!-padding-2{padding:10px !important}}.govuk-\!-padding-top-2{padding-top:10px !important}@media(min-width: 40.0625em){.govuk-\!-padding-top-2{padding-top:10px !important}}.govuk-\!-padding-right-2{padding-right:10px !important}@media(min-width: 40.0625em){.govuk-\!-padding-right-2{padding-right:10px !important}}.govuk-\!-padding-bottom-2{padding-bottom:10px !important}@media(min-width: 40.0625em){.govuk-\!-padding-bottom-2{padding-bottom:10px !important}}.govuk-\!-padding-left-2{padding-left:10px !important}@media(min-width: 40.0625em){.govuk-\!-padding-left-2{padding-left:10px !important}}.govuk-\!-padding-3{padding:15px !important}@media(min-width: 40.0625em){.govuk-\!-padding-3{padding:15px !important}}.govuk-\!-padding-top-3{padding-top:15px !important}@media(min-width: 40.0625em){.govuk-\!-padding-top-3{padding-top:15px !important}}.govuk-\!-padding-right-3{padding-right:15px !important}@media(min-width: 40.0625em){.govuk-\!-padding-right-3{padding-right:15px !important}}.govuk-\!-padding-bottom-3{padding-bottom:15px !important}@media(min-width: 40.0625em){.govuk-\!-padding-bottom-3{padding-bottom:15px !important}}.govuk-\!-padding-left-3{padding-left:15px !important}@media(min-width: 40.0625em){.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-\!-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:53px !important;font-size:3.3125rem !important;line-height:1.0377358491 !important}@media(min-width: 40.0625em){.govuk-\!-font-size-80{font-size:80px !important;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:32px !important;font-size:2rem !important;line-height:1.09375 !important}@media(min-width: 40.0625em){.govuk-\!-font-size-48{font-size:48px !important;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:24px !important;font-size:1.5rem !important;line-height:1.0416666667 !important}@media(min-width: 40.0625em){.govuk-\!-font-size-36{font-size:36px !important;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:18px !important;font-size:1.125rem !important;line-height:1.1111111111 !important}@media(min-width: 40.0625em){.govuk-\!-font-size-27{font-size:27px !important;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:18px !important;font-size:1.125rem !important;line-height:1.1111111111 !important}@media(min-width: 40.0625em){.govuk-\!-font-size-24{font-size:24px !important;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:16px !important;font-size:1rem !important;line-height:1.25 !important}@media(min-width: 40.0625em){.govuk-\!-font-size-19{font-size:19px !important;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:14px !important;font-size:.875rem !important;line-height:1.1428571429 !important}@media(min-width: 40.0625em){.govuk-\!-font-size-16{font-size:16px !important;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-size-14{font-size:12px !important;font-size:.75rem !important;line-height:1.25 !important}@media(min-width: 40.0625em){.govuk-\!-font-size-14{font-size:14px !important;font-size:.875rem !important;line-height:1.4285714286 !important}}@media print{.govuk-\!-font-size-14{font-size:12pt !important;line-height:1.2 !important}}.govuk-\!-font-weight-regular{font-weight:400 !important}.govuk-\!-font-weight-bold{font-weight:700 !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}}.app-task-list{list-style-type:none;padding-left:0;margin-top:0;margin-bottom:0}@media(min-width: 40.0625em){.app-task-list{min-width:550px}}.app-task-list__section{display:table;font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:700;font-size:18px;font-size:1.125rem;line-height:1.1111111111}@media print{.app-task-list__section{font-family:sans-serif}}@media(min-width: 40.0625em){.app-task-list__section{font-size:24px;font-size:1.5rem;line-height:1.25}}@media print{.app-task-list__section{font-size:18pt;line-height:1.15}}.app-task-list__section-number{display:table-cell}@media(min-width: 40.0625em){.app-task-list__section-number{min-width:30px;padding-right:0}}.app-task-list__items{font-family:"GDS Transport",arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;font-size:16px;font-size:1rem;line-height:1.25;margin-bottom:40px;list-style:none;padding-left:0}@media print{.app-task-list__items{font-family:sans-serif}}@media(min-width: 40.0625em){.app-task-list__items{font-size:19px;font-size:1.1875rem;line-height:1.3157894737}}@media print{.app-task-list__items{font-size:14pt;line-height:1.15}}@media(min-width: 40.0625em){.app-task-list__items{margin-bottom:60px}}@media(min-width: 40.0625em){.app-task-list__items{padding-left:30px}}.app-task-list__item{border-bottom:1px solid #b1b4b6;margin-bottom:0 !important;padding-top:10px;padding-bottom:10px}.app-task-list__item:after{content:"";display:block;clear:both}.app-task-list__item:first-child{border-top:1px solid #b1b4b6}.app-task-list__task-name{display:block}@media(min-width: 28.125em){.app-task-list__task-name{float:left}}.app-task-list__tag,.app-task-list__task-completed{margin-top:10px;margin-bottom:5px}@media(min-width: 28.125em){.app-task-list__tag,.app-task-list__task-completed{float:right;margin-top:0;margin-bottom:0}}@media(min-width: 641px){.sdds-save-link{text-align:right}}.sdds-save-link{margin-top:10px}.autocomplete__wrapper{position:relative;font-family:"GDS Transport",arial,sans-serif}.govuk-header__link--service-name{width:70%;float:left;box-sizing:border-box}.signout-link{width:30%;font-weight:bold;display:block;margin-bottom:10px;padding:5px 0;text-align:right;float:right;box-sizing:border-box}.display-wrapped{overflow-wrap:anywhere}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL25vZGVfbW9kdWxlcy9hY2Nlc3NpYmxlLWF1dG9jb21wbGV0ZS9zcmMvYXV0b2NvbXBsZXRlLmNzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9nb3Z1ay9jb3JlL19saW5rcy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2dvdnVrL2hlbHBlcnMvX3R5cG9ncmFwaHkuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9nb3Z1ay9zZXR0aW5ncy9fdHlwb2dyYXBoeS1mb250LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZ292dWsvaGVscGVycy9fbGlua3Muc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9nb3Z1ay9oZWxwZXJzL19mb250LWZhY2VzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZ292dWsvdmVuZG9yL19zYXNzLW1xLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZ292dWsvaGVscGVycy9fZm9jdXNlZC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2dvdnVrL3NldHRpbmdzL19jb2xvdXJzLWFwcGxpZWQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9nb3Z1ay9jb3JlL19saXN0cy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2dvdnVrL2hlbHBlcnMvX3NwYWNpbmcuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9nb3Z1ay9jb3JlL190ZW1wbGF0ZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2dvdnVrL2NvcmUvX3R5cG9ncmFwaHkuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9nb3Z1ay9jb3JlL19zZWN0aW9uLWJyZWFrLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZ292dWsvb2JqZWN0cy9fYnV0dG9uLWdyb3VwLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZ292dWsvb2JqZWN0cy9fZm9ybS1ncm91cC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2dvdnVrL2hlbHBlcnMvX2NsZWFyZml4LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZ292dWsvb2JqZWN0cy9fZ3JpZC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2dvdnVrL2hlbHBlcnMvX2dyaWQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9nb3Z1ay9vYmplY3RzL19tYWluLXdyYXBwZXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9nb3Z1ay9vYmplY3RzL193aWR0aC1jb250YWluZXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9nb3Z1ay9zZXR0aW5ncy9fbWVhc3VyZW1lbnRzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZ292dWsvY29tcG9uZW50cy9hY2NvcmRpb24vX2luZGV4LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZ292dWsvc2V0dGluZ3MvX2xpbmtzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZ292dWsvY29tcG9uZW50cy9iYWNrLWxpbmsvX2luZGV4LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZ292dWsvY29tcG9uZW50cy9icmVhZGNydW1icy9faW5kZXguc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9nb3Z1ay9jb21wb25lbnRzL2J1dHRvbi9faW5kZXguc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9nb3Z1ay9jb21wb25lbnRzL2Vycm9yLW1lc3NhZ2UvX2luZGV4LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZ292dWsvY29tcG9uZW50cy9maWVsZHNldC9faW5kZXguc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9nb3Z1ay9jb21wb25lbnRzL2hpbnQvX2luZGV4LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZ292dWsvY29tcG9uZW50cy9sYWJlbC9faW5kZXguc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9nb3Z1ay9jb21wb25lbnRzL2NoZWNrYm94ZXMvX2luZGV4LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZ292dWsvY29tcG9uZW50cy90ZXh0YXJlYS9faW5kZXguc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9nb3Z1ay9jb21wb25lbnRzL2NoYXJhY3Rlci1jb3VudC9faW5kZXguc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9nb3Z1ay9jb21wb25lbnRzL2Nvb2tpZS1iYW5uZXIvX2luZGV4LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZ292dWsvY29tcG9uZW50cy9zdW1tYXJ5LWxpc3QvX2luZGV4LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZ292dWsvY29tcG9uZW50cy9pbnB1dC9faW5kZXguc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9nb3Z1ay9jb21wb25lbnRzL2RhdGUtaW5wdXQvX2luZGV4LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZ292dWsvY29tcG9uZW50cy9kZXRhaWxzL19pbmRleC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2dvdnVrL2hlbHBlcnMvX3NoYXBlLWFycm93LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZ292dWsvY29tcG9uZW50cy9lcnJvci1zdW1tYXJ5L19pbmRleC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2dvdnVrL2NvbXBvbmVudHMvZmlsZS11cGxvYWQvX2luZGV4LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZ292dWsvY29tcG9uZW50cy9mb290ZXIvX2luZGV4LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZ292dWsvaGVscGVycy9fZGV2aWNlLXBpeGVscy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2dvdnVrL2NvbXBvbmVudHMvaGVhZGVyL19pbmRleC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2dvdnVrL2NvbXBvbmVudHMvaW5zZXQtdGV4dC9faW5kZXguc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9nb3Z1ay9jb21wb25lbnRzL25vdGlmaWNhdGlvbi1iYW5uZXIvX2luZGV4LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZ292dWsvY29tcG9uZW50cy9wYW5lbC9faW5kZXguc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9nb3Z1ay9jb21wb25lbnRzL3RhZy9faW5kZXguc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9nb3Z1ay9jb21wb25lbnRzL3BoYXNlLWJhbm5lci9faW5kZXguc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9nb3Z1ay9jb21wb25lbnRzL3RhYnMvX2luZGV4LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZ292dWsvY29tcG9uZW50cy9yYWRpb3MvX2luZGV4LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZ292dWsvY29tcG9uZW50cy9zZWxlY3QvX2luZGV4LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZ292dWsvY29tcG9uZW50cy9za2lwLWxpbmsvX2luZGV4LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZ292dWsvaGVscGVycy9fdmlzdWFsbHktaGlkZGVuLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZ292dWstZnJvbnRlbmQvZ292dWsvY29tcG9uZW50cy90YWJsZS9faW5kZXguc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9nb3Z1ay9jb21wb25lbnRzL3dhcm5pbmctdGV4dC9faW5kZXguc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9nb3Z1ay1mcm9udGVuZC9nb3Z1ay91dGlsaXRpZXMvX3Zpc3VhbGx5LWhpZGRlbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2dvdnVrL292ZXJyaWRlcy9fZGlzcGxheS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2dvdnVrL292ZXJyaWRlcy9fc3BhY2luZy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2dvdnVrL292ZXJyaWRlcy9fdGV4dC1hbGlnbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2dvdnVrL292ZXJyaWRlcy9fdHlwb2dyYXBoeS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2dvdnVrLWZyb250ZW5kL2dvdnVrL292ZXJyaWRlcy9fd2lkdGguc2NzcyIsIl90YXNrLWxpc3Quc2NzcyIsIl9zZGRzLnNjc3MiLCJfbGF5b3V0LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkNBQUEsdUJBQ0Usa0JBR0YseUNBRUUsd0JBQ0EseUJBQ0EsZ0JBQ0Esc0JBQ0EsMkJBQ0EsOEJBQ0EsZ0JBQ0EsV0FHRixxQkFDRSw2QkFDQSxrQkFHRixvQkFDRSxjQUNBLGtCQUdGLDhCQUNFLFlBRUYsOEJBQ0UsdUJBQ0EsaUJBQ0EsMkJBR0Ysc0NBQ0UseUJBQ0EsZUFHRixtQ0FDRSxXQUNBLHFCQUNBLGtCQUNBLFVBQ0EsV0FDQSxZQUNBLFNBR0Ysb0JBQ0Usc0JBQ0EseUJBQ0EsYUFDQSxjQUNBLFNBQ0EsaUJBQ0Esa0JBQ0EsVUFDQSxXQUNBLHVCQUdGLDZCQUNFLGNBR0YsNEJBQ0UsYUFHRiw2QkFDRSwrQ0FDQSxPQUNBLGtCQUNBLFNBQ0EsWUFHRiw0QkFDRSxrQkFHRixzQkFDRSw0QkFDQSxtQkFDQSxlQUNBLGNBQ0Esa0JBR0Ysd0JBQ0Usb0JBR0Ysb0NBQ0UsbUJBR0YsbUNBQ0Usc0JBR0YsMkJBQ0UseUJBR0YsMkRBRUUseUJBQ0EscUJBQ0EsWUFDQSxhQUdGLDBEQUNFLG9CQUNFLHVCQUdGLHNCQUNFLHVCQUNBLGdCQUdGLDJEQUVFLHlCQUNBLDJCQUNBLHVCQUNBLG9CQUdBLDhCQUNBLDBCQUNBLHVCQUNBLGdDQUlKLGtDQUNFLHlCQUNBLGNBQ0EsbUJBR0YsK0RBR0UsZUFDQSxpQkFHRiwwQ0FFRSxZQUdGLHlCQUNFLCtEQUdFLGVBQ0EscUJDM0pGLFlDT0EsWUNvQmtCLGlDRG5CbEIsbUNBQ0Esa0NFYUEsMEJDYk0sb0xBQ0EsV0FDRSw0QkFDQSxrQkFDQSxtQkFDQSxJQUNFLDRIQUVGLHNCQUdGLFdBQ0UsNEJBQ0Esa0JBQ0EsaUJBQ0EsSUFDRSwwSEFFRixzQkNpTUYsYUw1Tk4sWUNzQkUsWUM4QnNCLFlDMUN4QixrQkdDRSw4QkFFRixNQ3dEd0IsUUR2RHhCLGlCQzZDbUIsS0Q1Q25CLHFDQUdBLHFCSHFEQSxpQkFDRSxNSXFEZ0IsUUpsRGxCLG9CQUNFLE1Jd0R3QixRSnJEMUIsa0JBQ0UsTUkyRHNCLFFKeER4QixtQkFDRSxNSThEdUIsUUp6RHpCLGtCQUNFLE1JckJzQixRRnVKbEIsYUYyTEYsb0dBQ0UsNEJBQ0EsY0FLQSxzQkFwTU4sbURBRUUsTUkzSzBCLFFKOEs1QixtREFFRSxNSW5OZ0IsUUp3TmxCLHlCQUNFLE1JbEtzQixRSmdNeEIsK0RGcE9BLE1NbkJrQixRRjhNWixhRnlDTiwrREZqT0UsTU1Jc0IsTUpvT3hCLCtCQUNFLHlCQUdGLCtERi9PQSxNTW5Ca0IsUUY4TVosYUZvRE4sK0RGNU9FLE1NSXNCLE1Kd1F4Qix1REFFRSxXQUtGLHVEQUVFLDRCQUdGLDJCQUNFLE1JeFBzQixRSmlVeEIsbURBQ0UscUJBeENGLG1DQUNFLE1Jbk9nQixRSnNPbEIsc0NBQ0UsTUl2T2dCLFFKME9sQixvQ0FDRSxNSTdOc0IsUUpnT3hCLHFDQUNFLE1JMU51QixRSitOekIsb0NBQ0UsTUk3U3NCLFFDckV4QixZUE9BLFlDb0JrQixpQ0RuQmxCLG1DQUNBLGtDQXNDQSxnQkEwRkksVUFMVSxLQU9SLFVBTlksS0FRZCxZQVBZLEtBckdoQixNTW5Ca0IsUUNYaEIsYUMrRkksbUJEN0ZKLGVBQ0EscUJIc05JLGFHNU5OLFlQc0JFLFlDOEJzQixZR3dLbEIsNkJHNU5OLFlQcUpNLFVBakJRLEtBbUJOLFVBbEJVLFVBb0JaLFlBbkJVLGNJc0ZWLGFHNU5OLFlQZ0pNLFVBWlEsS0FhUixZQVhVLE1Jc0ZWLGFHNU5OLFlQb0NFLE1NSXNCLE1Gb0xsQiw2Qkc1Tk4sWUN5R1Esb0JEaEdOLHdCQUNFLGdCQUlKLGVBSUUsa0JBT0Ysb0JBQ0Usa0JBQ0EscUJBR0Ysb0JBQ0Usa0JBQ0Esd0JBR0YsOENBRUUsZ0JIdUxJLDZCR3pMTiw4Q0FLSSxtQkFJSix1QkFDRSxtQkgrS0ksNkJHaExOLHVCQUlJLG9CRS9DSixnQkFHRSxpQkhvQjZCLFFHaEI3Qiw4QkFDSSwwQkFDSSxzQkxrTkosY0szTk4sZ0JBY0ksbUJBS0osc0JBR0UsU0FFQSxpQkhNMkIsS0k3QjdCLGtCVitCQSxNTW5Ca0IsUU5QbEIsWUNvQmtCLGlDRG5CbEIsbUNBQ0Esa0NBZ0RBLGdCQWdGSSxVQUxVLEtBT1IsVUFOWSxLQVFkLFlBUFksUVVoSWQsY0FFQSxhRjBGSSxtQkowSEEsYU0xTk4sa0JWa0NFLE1NSXNCLE1Gb0xsQixhTTFOTixrQlZvQkUsWUM4QnNCLFlHd0tsQiw2Qk0xTk4sa0JWbUpNLFVBakJRLEtBbUJOLFVBbEJVLEtBb0JaLFlBbkJVLGNJc0ZWLGFNMU5OLGtCVjhJTSxVQVpRLEtBYVIsWUFYVSxNSXNGViw2Qk0xTk4sa0JGdUdRLG9CRXpGUixpQlZpQkEsTU1uQmtCLFFOUGxCLFlDb0JrQixpQ0RuQmxCLG1DQUNBLGtDQWdEQSxnQkFnRkksVUFMVSxLQU9SLFVBTlksT0FRZCxZQVBZLGFVbEhkLGNBRUEsYUY0RUksbUJKMEhBLGFNNU1OLGlCVm9CRSxNTUlzQixNRm9MbEIsYU01TU4saUJWTUUsWUM4QnNCLFlHd0tsQiw2Qk01TU4saUJWcUlNLFVBakJRLEtBbUJOLFVBbEJVLFFBb0JaLFlBbkJVLGNJc0ZWLGFNNU1OLGlCVmdJTSxVQVpRLEtBYVIsWUFYVSxNSXNGViw2Qk01TU4saUJGeUZRLG9CRTNFUixpQlZHQSxNTW5Ca0IsUU5QbEIsWUNvQmtCLGlDRG5CbEIsbUNBQ0Esa0NBZ0RBLGdCQWdGSSxVQUxVLEtBT1IsVUFOWSxTQVFkLFlBUFksYVVwR2QsY0FFQSxhRjhESSxtQkowSEEsYU05TE4saUJWTUUsTU1Jc0IsTUZvTGxCLGFNOUxOLGlCVlJFLFlDOEJzQixZR3dLbEIsNkJNOUxOLGlCVnVITSxVQWpCUSxLQW1CTixVQWxCVSxPQW9CWixZQW5CVSxNSXNGVixhTTlMTixpQlZrSE0sVUFaUSxLQWFSLFlBWFUsTUlzRlYsNkJNOUxOLGlCRjJFUSxvQkU3RFIsaUJWWEEsTU1uQmtCLFFOUGxCLFlDb0JrQixpQ0RuQmxCLG1DQUNBLGtDQWdEQSxnQkFnRkksVUFMVSxLQU9SLFVBTlksS0FRZCxZQVBZLEtVdEZkLGNBRUEsYUZnREksbUJKMEhBLGFNaExOLGlCVlJFLE1NSXNCLE1Gb0xsQixhTWhMTixpQlZ0QkUsWUM4QnNCLFlHd0tsQiw2Qk1oTE4saUJWeUdNLFVBakJRLEtBbUJOLFVBbEJVLFVBb0JaLFlBbkJVLGNJc0ZWLGFNaExOLGlCVm9HTSxVQVpRLEtBYVIsWUFYVSxNSXNGViw2Qk1oTE4saUJGNkRRLG9CRTdDUixrQlZyREEsWUNvQmtCLGlDRG5CbEIsbUNBQ0Esa0NBc0NBLGdCQTBGSSxVQUxVLEtBT1IsVUFOWSxTQVFkLFlBUFksYVV2RWQsY0FFQSxrQkFFQSxNSmxCMEIsUUYyS3RCLGFNaEtOLGtCVnRDRSxZQzhCc0IsWUd3S2xCLDZCTWhLTixrQlZ5Rk0sVUFqQlEsS0FtQk4sVUFsQlUsVUFvQlosWUFuQlUsY0lzRlYsYU1oS04sa0JWb0ZNLFVBWlEsS0FhUixZQVhVLE1VaEVoQixpQlYvREEsWUNvQmtCLGlDRG5CbEIsbUNBQ0Esa0NBc0NBLGdCQTBGSSxVQUxVLEtBT1IsVUFOWSxTQVFkLFlBUFksYVU3RGQsY0FFQSxrQkFDQSxNSjNCMEIsUUYyS3RCLGFNdEpOLGlCVmhERSxZQzhCc0IsWUd3S2xCLDZCTXRKTixpQlYrRU0sVUFqQlEsS0FtQk4sVUFsQlUsT0FvQlosWUFuQlUsTUlzRlYsYU10Sk4saUJWMEVNLFVBWlEsS0FhUixZQVhVLE1Jc0ZWLDZCTXRKTixpQkFTSSxpQkFJSixpQlY1RUEsWUNvQmtCLGlDRG5CbEIsbUNBQ0Esa0NBc0NBLGdCQTBGSSxVQUxVLEtBT1IsVUFOWSxLQVFkLFlBUFksS1VoRGQsY0FFQSxNSnZDMEIsUUYyS3RCLGFNeklOLGlCVjdERSxZQzhCc0IsWUd3S2xCLDZCTXpJTixpQlZrRU0sVUFqQlEsS0FtQk4sVUFsQlUsVUFvQlosWUFuQlUsY0lzRlYsYU16SU4saUJWNkRNLFVBWlEsS0FhUixZQVhVLE1VekNoQiwrQlY1REEsTU1uQmtCLFFOUGxCLFlDb0JrQixpQ0RuQmxCLG1DQUNBLGtDQXNDQSxnQkEwRkksVUFMVSxLQU9SLFVBTlksU0FRZCxZQVBZLGFVckNkLGFGQ0ksbUJKMEhBLGFNL0hOLCtCVnpERSxNTUlzQixNRm9MbEIsYU0vSE4sK0JWdkVFLFlDOEJzQixZR3dLbEIsNkJNL0hOLCtCVndETSxVQWpCUSxLQW1CTixVQWxCVSxPQW9CWixZQW5CVSxNSXNGVixhTS9ITiwrQlZtRE0sVUFaUSxLQWFSLFlBWFUsTUlzRlYsNkJNL0hOLCtCRllRLDhDUnhFUixNTW5Ca0IsUU5QbEIsWUNvQmtCLGlDRG5CbEIsbUNBQ0Esa0NBc0NBLGdCQTBGSSxVQUxVLEtBT1IsVUFOWSxLQVFkLFlBUFksS1V6QmQsYUZYSSxtQkowSEEsYU1uSE4sMEJWckVFLE1NSXNCLE1Gb0xsQixhTW5ITiwwQlZuRkUsWUM4QnNCLFlHd0tsQiw2Qk1uSE4sMEJWNENNLFVBakJRLEtBbUJOLFVBbEJVLFVBb0JaLFlBbkJVLGNJc0ZWLGFNbkhOLDBCVnVDTSxVQVpRLEtBYVIsWUFYVSxNSXNGViw2Qk1uSE4sOENBWUEsY1ZwRkEsTU1uQmtCLFFOUGxCLFlDb0JrQixpQ0RuQmxCLG1DQUNBLGtDQXNDQSxnQkEwRkksVUFMVSxLQU9SLFVBTlksUUFRZCxZQVBZLGFVYmQsYUZ2QkksbUJKMEhBLGFNdkdOLGNWakZFLE1NSXNCLE1Gb0xsQixhTXZHTixjVi9GRSxZQzhCc0IsWUd3S2xCLDZCTXZHTixjVmdDTSxVQWpCUSxLQW1CTixVQWxCVSxLQW9CWixZQW5CVSxNSXNGVixhTXZHTixjVjJCTSxVQVpRLEtBYVIsWUFYVSxLSXNGViw2Qk12R04sY0ZaUSxvQkV3QlIsZVZoR0EsTU1uQmtCLFFOUGxCLFlDb0JrQixpQ0RuQmxCLG1DQUNBLGtDQXNDQSxnQkEwRkksVUFMVSxLQU9SLFVBTlksT0FRZCxZQVBZLEtVRGQsYUZuQ0ksbUJKMEhBLGFNM0ZOLGVWN0ZFLE1NSXNCLE1Gb0xsQixhTTNGTixlVjNHRSxZQzhCc0IsWUd3S2xCLDZCTTNGTixlVm9CTSxVQWpCUSxLQW1CTixVQWxCVSxRQW9CWixZQW5CVSxjSXNGVixhTTNGTixlVmVNLFVBWlEsS0FhUixZQVhVLEtJc0ZWLDZCTTNGTixlRnhCUSxvQkVvRFIsaUVBQ0UsZ0JOOERJLDZCTS9ETixpRUFJSSxrQkFJSix3SEZuRU0saUJKMEhBLDZCTXZETix3SEY1RFEsa0JFa0VSLGdQQU1FLGdCTjJDSSw2Qk1qRE4sZ1BBU0ksa0JDcExKLHFCQUNFLFNBQ0EsU0FlRix5QkhpRk0sbUNKMEhBLDZCTzNNTix5Qkh3RlEsaUJKbUhGLDZCTzNNTix5Qkh3RlEsb0JHL0VSLHdCSHdFTSxtQ0owSEEsNkJPbE1OLHdCSCtFUSxpQkptSEYsNkJPbE1OLHdCSCtFUSxvQkd0RVIsd0JIK0RNLG1DSjBIQSw2Qk96TE4sd0JIc0VRLGlCSm1IRiw2Qk96TE4sd0JIc0VRLG9CRzNEUiw4QkFDRSxnQ0M1Q0Ysb0JKK0ZNLGtCSTNFSixvQkFDQSxxQkFDQSxvQkFDQSxhQUNBLDRCQUNBLDZCQUNBLDhCQUNJLDBCQUNJLHNCQUNSLHlCQUNBLDJCQUNJLHNCQUNJLG1CUnlMSiw2QlF6Tk4sb0JKc0dRLG9CSS9ETixnQ1puQ0YsWUNvQmtCLGlDRG5CbEIsbUNBQ0Esa0NBc0NBLGdCQTBGSSxVQUxVLEtBT1IsVUFOWSxLQVFkLFlBUFksT1kxRloscUJBR0EsZUFDQSxXQXJDYSxJQXNDYixtQkFDQSxrQlIwS0UsYVFsTEosZ0NacEJBLFlDOEJzQixZR3dLbEIsNkJRbExKLGdDWjJHSSxVQWpCUSxLQW1CTixVQWxCVSxVQW9CWixZQW5CVSxHSXNGVixhUWxMSixnQ1pzR0ksVUFaUSxLQWFSLFlBWFUsTVkvRWQsa0NBQ0UsbUJSb0tFLDZCUXpOTixvQkE0REksbUJBRUEsOEJBRUEsNkJBRUEsMkJBRUksdUJBRUksbUJBQ1IsdUJBQ0ksbUJBQ0ksZUFDUiwyQkFDQSw2QkFDSSx3QkFDSSxxQkFFUixrRUFFRSxhQWhGYSxLQW1GZixnQ0FDRSxpQkM3Rk4sa0JMdUdNLG1CTWpHTix3QkFDRSxXQUNBLGNBQ0EsV1Z3TkksNkJTak9OLGtCTDhHUSxvQksxR04saURBQ0UsZ0JBSUoseUJBQ0Usa0JBQ0EsOEJBRUEsMkNBRUUsVUFDQSxTRWhCSixnQkFFRSxtQkFDQSxrQkRHRixzQkFDRSxXQUNBLGNBQ0EsV0NGQSwrQkN5Q0Ysc0JBRUUsV0FFRixlWjZLTSw2QlcxTkosK0JDK0NBLFVBQ0EsTUFSMkMsTUR4QzNDLDZCQ3lDRixzQkFFRSxXQUVGLGVaNktNLDZCVzFOSiw2QkMrQ0EsZUFDQSxNQVIyQyxNRHhDM0MsNEJDeUNGLHNCQUVFLFdBRUYsZVo2S00sNkJXMU5KLDRCQytDQSxVQUNBLE1BUjJDLE1EeEMzQyw4QkN5Q0Ysc0JBRUUsV0FFRixlWjZLTSw2QlcxTkosOEJDK0NBLGVBQ0EsTUFSMkMsTUR4QzNDLGtDQ3lDRixzQkFFRSxXQUVGLGVaNktNLDZCVzFOSixrQ0MrQ0EsVUFDQSxNQVIyQyxNRHhDM0Msd0JDeUNGLHNCQUVFLFdBRUYsZVo2S00sNkJXMU5KLHdCQytDQSxXQUNBLE1BUjJDLE1EL0IzQyw0Q0NnQ0Ysc0JBSUEsZVo2S00sNkJXak5KLDRDQ3NDQSxVQUNBLE1BUjJDLE1EL0IzQywwQ0NnQ0Ysc0JBSUEsZVo2S00sNkJXak5KLDBDQ3NDQSxlQUNBLE1BUjJDLE1EL0IzQyx5Q0NnQ0Ysc0JBSUEsZVo2S00sNkJXak5KLHlDQ3NDQSxVQUNBLE1BUjJDLE1EL0IzQywyQ0NnQ0Ysc0JBSUEsZVo2S00sNkJXak5KLDJDQ3NDQSxlQUNBLE1BUjJDLE1EL0IzQywrQ0NnQ0Ysc0JBSUEsZVo2S00sNkJXak5KLCtDQ3NDQSxVQUNBLE1BUjJDLE1EL0IzQyxxQ0NnQ0Ysc0JBSUEsZVo2S00sNkJXak5KLHFDQ3NDQSxXQUNBLE1BUjJDLE1DRTdDLG9CQXZCQSxjQUNBLGlCQUNBLG9CYnFNTSw2QmFoTE4sb0JBZkUsaUJBQ0EscUJBeUJGLHFFVDJDTSxpQkowSEEsNkJhcktOLHFFVGtEUSxrQlU3QlIsdUJBOURBLFVDVGlCLE1EWWpCLGFDZ0JrQixLRGZsQixZQ2VrQixLRFpsQixrQ0F1REEsdUJBL0NFLGdFQUNBLCtEZDhMSSw2QmNoSk4sdUJBekNFLGFDVFcsS0RVWCxZQ1ZXLEtEYVgsa0NBcUNGLHVCQTdCSSxnRUFDQSxnRWQ0S0UsMEJjaEpOLHVCQXJCRSxrQkFDQSxpQkFJQSxrQ0FnQkYsdUJBZkksa0JBQ0EsbUJFckVKLGlCWnlHTSxtQkowSEEsNkJnQm5PTixpQlpnSFEsb0JZM0dSLDBC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QSw2QmtDM01KLDZCOUJ3Rk0sb0I4QmpGUiwyQkFDRSxhQUNBLGdCQUdGLDZCdEM0QkEsZ0JBbERBLFlDb0JrQixpQ0RuQmxCLG1DQUNBLGtDRWFBLDBCRXNNTSxha0MvTE4sNkJ0Q1BFLFlDOEJzQixZQzFDeEIsbUNHQ0UsOEJBRUYsTUN3RHdCLFFEdkR4QixpQkM2Q21CLEtENUNuQixxQ0FHQSxxQkh3R0EsdUVBRUUsTUk5Q2lCLFFKaURuQixtQ0FDRSxjQUdGLG9DQUNFLE1JdERpQixRSjJEbkIsbUNBQ0UsTUlyRXNCLFFpQ3RFeEIsbUJ2Q1FBLFlDb0JrQixpQ0RuQmxCLG1DQUNBLGtDQXNDQSxnQkEwRkksVUFMVSxLQU9SLFVBTlksS0FRZCxZQVBZLEtBckdoQixNTW5Ca0IsUWlDWmhCLGVBQ0EsaUJBQ0EsUUFQa0IsSW5DK05kLGFtQzdOTixtQnZDdUJFLFlDOEJzQixZR3dLbEIsNkJtQzdOTixtQnZDc0pNLFVBakJRLEtBbUJOLFVBbEJVLFVBb0JaLFlBbkJVLGNJc0ZWLGFtQzdOTixtQnZDaUpNLFVBWlEsS0FhUixZQVhVLE1Jc0ZWLGFtQzdOTixtQnZDcUNFLE1NSXNCLE1pQzdCdEIsK0NBQ0UsMEJBQ0EsY0FDQSxhQUdGLHlCQUNFLHVCQUlBLG1DQWFGLGdDQUNFLHVCQUVBLG1DQ3RCSixjeENUQSxZQ29Ca0IsaUNEbkJsQixtQ0FDQSxrQ0FzQ0EsZ0JBMEZJLFVBTFUsS0FPUixVQU5ZLFFBUWQsWUFQWSxhUXBDVixxQ2dDN0VKLDZCQUNBLE1sQ1JnQixRa0NTaEIsV2xDQzZCLFFGb016Qixhb0M1TU4sY3hDTUUsWUM4QnNCLFlHd0tsQiw2Qm9DNU1OLGN4Q3FJTSxVQWpCUSxLQW1CTixVQWxCVSxLQW9CWixZQW5CVSxNSXNGVixhb0M1TU4sY3hDZ0lNLFVBWlEsS0FhUixZQVhVLEtJc0ZWLDZCb0M1TU4sY2hDeUZRLGtCSm1IRiw2Qm9DNU1OLGNoQ3lGUSxxQmdDL0VSLG9CeENuQkEsWUNvQmtCLGlDRG5CbEIsbUNBQ0Esa0NFYUEsMEJFc01NLGFvQ2xNTixvQnhDSkUsWUM4QnNCLFlD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bUNtQ2hHSixXQUVBLCtCdkN3TkksYXVDbk9OLGtCM0M2QkUsWUM4QnNCLFlHd0tsQiw2QnVDbk9OLGtCM0M0Sk0sVUFqQlEsS0FtQk4sVUFsQlUsVUFvQlosWUFuQlUsY0lzRlYsYXVDbk9OLGtCM0N1Sk0sVUFaUSxLQWFSLFlBWFUsTUlzRlYsYXVDbk9OLGtCM0MyQ0UsTU1Jc0IsTUZvTGxCLDZCdUNuT04sa0JuQ2dIUSxpQkptSEYsNkJ1Q25PTixrQm5DZ0hRLG9CbUNuR04sK0JBQ0UsYUFHRiw0REFFRSxnQkNuQkosMkI1Q2NBLFlDb0JrQixpQ0RuQmxCLG1DQUNBLGtDQXNDQSxnQkEwRkksVUFMVSxLQU9SLFVBTlksS0FRZCxZQVBZLEtRcENWLG1Cb0NyR0oseUJBRUEsaUJ0Q1FpQixRRnFOYixhd0NuT04sMkI1QzZCRSxZQzhCc0IsWUd3S2xCLDZCd0NuT04sMkI1QzRKTSxVQWpCUSxLQW1CTixVQWxCVSxVQW9CWixZQW5CVSxjSXNGVixhd0NuT04sMkI1Q3VKTSxVQVpRLEtBYVIsWUFYVSxNSXNGViw2QndDbk9OLDJCcENnSFEsb0JvQ3hHTixpQ0FDRSx1QkFJSixtQ0FDRSxxQkFHQSxvQ3hDa05JLDZCd0N0Tk4sbUNBT0ksc0JBSUosa0M1Q1ZBLFlDb0JrQixpQ0RuQmxCLG1DQUNBLGtDQWdEQSxnQkFnRkksVUFMVSxLQU9SLFVBTlksS0FRZCxZQVBZLEs0Q2xIZCxTQUVBLFVBRUEsV3hDb01JLGF3QzNNTixrQzVDS0UsWUM4QnNCLFlHd0tsQiw2QndDM01OLGtDNUNvSU0sVUFqQlEsS0FtQk4sVUFsQlUsVUFvQlosWUFuQlUsY0lzRlYsYXdDM01OLGtDNUMrSE0sVUFaUSxLQWFSLFlBWFUsTTRDM0doQixvQzVDTUEsTU1uQmtCLFFzQ2dCaEIsYUFFQSxpQnRDRDJCLEtGNkx2Qixhd0NqTU4sb0M1Q1NFLE1NSXNCLE1Gb0xsQiw2QndDak1OLG9DQVFJLFFBUGUsTUFZakIsc0NBR0Usc0JBT0EsZ0JBR0YsZ0RBQ0UsZ0JBSUosb0M1Q25EQSxZQ29Ca0IsaUNEbkJsQixtQ0FDQSxrQ0FnREEsZ0JBZ0ZJLFVBTFUsS0FPUixVQU5ZLFNBUWQsWUFQWSxhNEN6RWQsa0JBRUEsVXhDNkpJLGF3Q2xLTixvQzVDcENFLFlDOEJzQixZR3dLbEIsNkJ3Q2xLTixvQzVDMkZNLFVBakJRLEtBbUJOLFVBbEJVLE9Bb0JaLFlBbkJVLE1Jc0ZWLGF3Q2xLTixvQzVDc0ZNLFVBWlEsS0FhUixZQVhVLE00Q3BFaEIsaUM1QzNEQSxZQ29Ca0IsaUNEbkJsQixtQ0FDQSxrQ0VhQSwwQkVzTU0sYXdDMUpOLGlDNUM1Q0UsWUM4QnNCLFlDMUN4Qix1Q0dDRSw4QkFFRixNQ3dEd0IsUUR2RHhCLGlCQzZDbUIsS0Q1Q25CLHFDQUdBLHFCSDZVQSxzQ0FDRSxNSW5PZ0IsUUpzT2xCLHlDQUNFLE1Jdk9nQixRSjBPbEIsdUNBQ0UsTUk3TnNCLFFKZ094Qix3Q0FDRSxNSTFOdUIsUUorTnpCLHVDQUNFLE1JN1NzQixRc0NFeEIsb0NBQ0UsYXRDZW1CLFFzQ2JuQixpQnRDYW1CLFFKbUZyQix1SkFFRSxNSXJGbUIsUUp3RnJCLDJFQUNFLGNBR0YsNEVBQ0UsTUk3Rm1CLFFKa0dyQiwyRUFDRSxNSXJIc0IsUXVDNUV4QixhN0NjQSxZQ29Ca0IsaUNEbkJsQixtQ0FDQSxrQ0FzQ0EsZ0JBMEZJLFVBTFUsS0FPUixVQU5ZLEtBUWQsWUFQWSxLNkMxSWQsc0JBRUEsbUJBQ0EsYUFFQSw2QkFFQSxrQnpDeU5JLGF5Q25PTixhN0M2QkUsWUM4QnNCLFlHd0tsQiw2QnlDbk9OLGE3QzRKTSxVQWpCUSxLQW1CTixVQWxCVSxVQW9CWixZQW5CVSxjSXNGVixheUNuT04sYTdDdUpNLFVBWlEsS0FhUixZQVhVLE1Jc0ZWLDZCeUNuT04sYUFhSSxhQVdBLHlCQUNBLHNCQUlKLDJCQUNFLFdBQ0EsbUJ6Q29NSSxheUN0TU4sMkJBS0ksMEJBQ0EsTXZDWW9CLEt1Q1hwQixpQkFJSixvQkFDRSxhQUNBLG1CN0M1QkYsWUNvQmtCLGlDRG5CbEIsbUNBQ0Esa0NBZ0RBLGdCQWdGSSxVQUxVLEtBT1IsVUFOWSxLQVFkLFlBUFksUUlzRlYsYXlDM0xOLG9CN0NYRSxZQzhCc0IsWUd3S2xCLDZCeUMzTE4sb0I3Q29ITSxVQWpCUSxLQW1CTixVQWxCVSxLQW9CWixZQW5CVSxjSXNGVixheUMzTE4sb0I3QytHTSxVQVpRLEtBYVIsWUFYVSxNNkM5RmhCLCtCQUNFLGdCQUdGLG1CN0NyQ0EsWUNvQmtCLGlDRG5CbEIsbUNBQ0Esa0NBc0NBLGdCQTBGSSxVQUxVLEtBT1IsVUFOWSxPQVFkLFlBUFksYUlzRlYsYXlDaExOLG1CN0N0QkUsWUM4QnNCLFlHd0tsQiw2QnlDaExOLG1CN0N5R00sVUFqQlEsS0FtQk4sVUFsQlUsUUFvQlosWUFuQlUsY0lzRlYsYXlDaExOLG1CN0NvR00sVUFaUSxLQWFSLFlBWFUsTThDN0loQixXQUVFLHFCQUtBLDhCQUNBLG9CQUVBLFdBQ0EseUJBQ0EsbUJBRUEscUJBQ0EseUI5Q0RGLFlDb0JrQixpQ0RuQmxCLG1DQUNBLGtDQWdEQSxnQkFnRkksVUFMVSxLQU9SLFVBTlksUUFRZCxZQVBZLEU4Q2pIWixnQkFDQSxrQkFDQSxtQkFDQSxpQjFDb01FLGEwQ25PTixXOUM2QkUsWUM4QnNCLFlHd0tsQiw2QjBDbk9OLFc5QzRKTSxVQWpCUSxLQW1CTixVQWxCVSxLQW9CWixZQW5CVSxHSXNGVixhMENuT04sVzlDdUpNLFVBWlEsS0FhUixZQVhVLEc4Q3pHaEIscUJBQ0UseUJBR0YsaUJBQ0UsY0FDQSxtQkFHRixtQkFDRSxjQUNBLG1CQUdGLHNCQUNFLGNBQ0EsbUJBR0YsaUJBQ0UsY0FDQSxtQkFHRixtQkFDRSxjQUNBLG1CQUdGLG1CQUNFLGNBQ0EsbUJBR0YsZ0JBQ0UsY0FDQSxtQkFHRixpQkFDRSxjQUNBLG1CQUdGLGtCQUNFLGNBQ0EsbUJDaEZGLG9CQUNFLGlCQUNBLG9CQUVBLGdDQUdGLDZCL0NLQSxZQ29Ca0IsaUNEbkJsQixtQ0FDQSxrQ0FzQ0EsZ0JBMEZJLFVBTFUsS0FPUixVQU5ZLFFBUWQsWUFQWSxhQXJHaEIsTU1uQmtCLFF5Q1JoQixjQUNBLFMzQ3FOSSxhMkMxTk4sNkIvQ29CRSxZQzhCc0IsWUd3S2xCLDZCMkMxTk4sNkIvQ21KTSxVQWpCUSxLQW1CTixVQWxCVSxLQW9CWixZQW5CVSxNSXNGVixhMkMxTk4sNkIvQzhJTSxVQVpRLEtBYVIsWUFYVSxLSXNGVixhMkMxTk4sNkIvQ2tDRSxNTUlzQixNeUM5QnhCLGtDQUNFLGtCQUdGLDBCQUNFLG1CQUNBLHNCQ3ZCRixZeEN5R00sa0NKMEhBLDZCNENuT04sWXhDZ0hRLGdCSm1IRiw2QjRDbk9OLFl4Q2dIUSxvQndDM0dSLG1CaERTQSxZQ29Ca0IsaUNEbkJsQixtQ0FDQSxrQ0FzQ0EsZ0JBMEZJLFVBTFUsS0FPUixVQU5ZLEtBUWQsWUFQWSxLQXJHaEIsTU1uQmtCLFEwQ2JoQixtQjVDMk5JLGE0QzlOTixtQmhEd0JFLFlDOEJzQixZR3dLbEIsNkI0QzlOTixtQmhEdUpNLFVBakJRLEtBbUJOLFVBbEJVLFVBb0JaLFlBbkJVLGNJc0ZWLGE0QzlOTixtQmhEa0pNLFVBWlEsS0FhUixZQVhVLE1Jc0ZWLGE0QzlOTixtQmhEc0NFLE1NSXNCLE0wQ3BDeEIsa0JBQ0UsU0FDQSxVQUNBLGdCeEMyRkksbUJKMEhBLDZCNEN4Tk4sa0J4Q3FHUSxvQndDOUZSLHVCaERKQSxZQ29Ca0IsaUNEbkJsQixtQ0FDQSxrQ0FzQ0EsZ0JBMEZJLFVBTFUsS0FPUixVQU5ZLEtBUWQsWUFQWSxLZ0R6SGQsaUI1QytNSSxhNENqTk4sdUJoRFdFLFlDOEJzQixZR3dLbEIsNkI0Q2pOTix1QmhEMElNLFVBakJRLEtBbUJOLFVBbEJVLFVBb0JaLFlBbkJVLGNJc0ZWLGE0Q2pOTix1QmhEcUlNLFVBWlEsS0FhUixZQVhVLE1nRHZIZCw4QmhEa0JGLE1NbkJrQixRMENHZCxZQUNBLGtCQUNBLGtCNUN5TUUsYTRDN01KLDhCaERxQkEsTU1Jc0IsTTBDakJ4QixpQmhEaEJBLFlDb0JrQixpQ0RuQmxCLG1DQUNBLGtDRWFBLDBCOENLRSxxQkFDQSxtQjVDZ01JLGE0Q3JNTixpQmhEREUsWUM4QnNCLFlDMUN4Qix1QkdDRSw4QkFFRixNQ3dEd0IsUUR2RHhCLGlCQzZDbUIsS0Q1Q25CLHFDQUdB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UFksS0FyR2hCLE1NbkJrQixRZ0R3Q2hCLGNBQ0Esa0JsRHFLSSxha0R6S04sMEJ0RDdCRSxZQzhCc0IsWUd3S2xCLDZCa0R6S04sMEJ0RGtHTSxVQWpCUSxLQW1CTixVQWxCVSxVQW9CWixZQW5CVSxjSXNGVixha0R6S04sMEJ0RDZGTSxVQVpRLEtBYVIsWUFYVSxNSXNGVixha0R6S04sMEJ0RGZFLE1NSXNCLE1RdkN4QixzQkFDRSxXQUNBLGNBQ0EsV3lDWEYsdUJIZUEsNkJBRUEscUJBQ0Esc0JBR0Esb0JBQ0EscUJBRUEsMkJBQ0EsOEJBQ0Esd0NBQ1EsZ0NBRVIsb0JBS0EsOEJHOUJBLGlDSDZDQSw2QkFFQSxxQkFDQSxzQkFHQSxvQkFFQSwyQkFDQSw4QkFDQSx3Q0FDUSxnQ0FLUiw4QkFFQSwrRUFFRSwyQkFFQSxzQkFDQSx1QkFDQSwwQkFFQSw0QkFDQSxxQkFDQSxrQ0FDUSwwQkFFUiwrQkl6RUYseUJBQ0UsMEJBR0YsK0JBQ0UsZ0NBR0Ysd0JBQ0UseUJBR0YsdUJBQ0Usd0JwRCtNSSxhb0QzTUosNkJBQ0UseUJDbUJGLG1CakQyREksb0JKNEhBLDZCcUR2TEosbUJqRGtFTSxxQmlEMURKLHVCakRxREUsd0JKMEhBLDZCcUQvS0YsdUJqRDRESSx5QmlENURKLHlCakRxREUsMEJKMEhBLDZCcUQvS0YseUJqRDRESSwyQmlENURKLDBCakRxREUsMkJKMEhBLDZCcUQvS0YsMEJqRDRESSw0QmlENURKLHdCakRxREUseUJKMEhBLDZCcUQvS0Ysd0JqRDRESSwwQmlEcEVOLG1CakQyREksc0JKNEhBLDZCcUR2TEosbUJqRGtFTSx1QmlEMURKLHVCakRxREUsMEJKMEhBLDZCcUQvS0YsdUJqRDRESSwyQmlENURKLHlCakRxREUsNEJKMEhBLDZCcUQvS0YseUJqRDRESSw2QmlENURKLDBCakRxREUsNkJKMEhBLDZCcUQvS0YsMEJqRDRESSw4QmlENURKLHdCakRxREUsMkJKMEhBLDZCcUQvS0Ysd0JqRDRESSw0QmlEcEVOLG1CakQyREksdUJKNEhBLDZCcUR2TEosbUJqRGtFTSx3QmlEMURKLHVCakRxREUsMkJKMEhBLDZCcUQvS0YsdUJqRDRESSw0QmlENURKLHlCakRxREUsNkJKMEhBLDZCcUQvS0YseUJqRDRESSw4QmlENURKLDBCakRxREUsOEJKMEhBLDZCcUQvS0YsMEJqRDRESSwrQmlENURKLHdCakRxREUsNEJKMEhBLDZCcUQvS0Ysd0JqRDRESSw2QmlEcEVOLG1CakQyREksdUJKNEhBLDZCcUR2TEosbUJqRGtFTSx3QmlEMURKLHVCakRxREUsMkJKMEhBLDZCcUQvS0YsdUJqRDRESSw0QmlENURKLHlCakRxREUsNkJKMEhBLDZCcUQvS0YseUJqRDRESSw4QmlENURKLDBCakRxREUsOEJKMEhBLDZCcUQvS0YsMEJqRDRESSwrQmlENURKLHdCakRxREUsNEJKMEhBLDZCcUQvS0Ysd0JqRDRESSw2QmlEcEVOLG1CakQyREksdUJKNEhBLDZCcUR2TEosbUJqRGtFTSx3QmlEMURKLHVCakRxREUsMkJKMEhBLDZCcUQvS0YsdUJqRDRESSw0QmlENURKLHlCakRxREUsNkJKMEhBLDZCcUQvS0YseUJqRDRESSw4QmlENURKLDBCakRxREUsOEJKMEhBLDZCcUQvS0YsMEJqRDRESSwrQmlENURKLHdCakRxREUsNEJKMEhBLDZCcUQvS0Ysd0JqRDRESSw2QmlEcEVOLG1CakQyREksdUJKNEhBLDZCcUR2TEosbUJqRGtFTSx3QmlEMURKLHVCakRxREUsMkJKMEhBLDZCcUQvS0YsdUJqRDRESSw0QmlENURKLHlCakRxREUsNkJKMEhBLDZCcUQvS0YseUJqRDRESSw4QmlENURKLDBCakRxREUsOEJKMEhBLDZCcUQvS0YsMEJqRDRESSwrQmlENURKLHdCakRxREUsNEJKMEhBLDZCcUQvS0Ysd0JqRDRESSw2QmlEcEVOLG1CakQyREksdUJKNEhBLDZCcUR2TEosbUJqRGtFTSx3QmlEMURKLHVCakRxREUsMkJKMEhBLDZCcUQvS0YsdUJqRDRESSw0QmlENURKLHlCakRxREUsNkJKMEhBLDZCcUQvS0YseUJqRDRESSw4QmlENURKLDBCakRxREUsOEJKMEhBLDZCcUQvS0YsMEJqRDRESSwrQmlENURKLHdCakRxREUsNEJKMEhBLDZCcUQvS0Ysd0JqRDRESSw2QmlEcEVOLG1CakQyREksdUJKNEhBLDZCcUR2TEosbUJqRGtFTSx3QmlEMURKLHVCakRxREUsMkJKMEhBLDZCcUQvS0YsdUJqRDRESSw0QmlENURKLHlCakRxREUsNkJKMEhBLDZCcUQvS0YseUJqRDRESSw4QmlENURKLDBCakRxREUsOEJKMEhBLDZCcUQvS0YsMEJqRDRESSwrQmlENURKLHdCakRxREUsNEJKMEhBLDZCcUQvS0Ysd0JqRDRESSw2QmlEcEVOLG1CakQyREksdUJKNEhBLDZCcUR2TEosbUJqRGtFTSx3QmlEMURKLHVCakRxREUsMkJKMEhBLDZCcUQvS0YsdUJqRDRESSw0QmlENURKLHlCakRxREUsNkJKMEhBLDZCcUQvS0YseUJqRDRESSw4QmlENURKLDBCakRxREUsOEJKMEhBLDZCcUQvS0YsMEJqRDRESSwrQmlENURKLHdCakRxREUsNEJKMEhBLDZCcUQvS0Ysd0JqRDRESSw2QmlEcEVOLG1CakQyREksdUJKNEhBLDZCcUR2TEosbUJqRGtFTSx3QmlEMURKLHVCakRxREUsMkJKMEhBLDZCcUQvS0YsdUJqRDRESSw0QmlENURKLHlCakRxREUsNkJKMEhBLDZCcUQvS0YseUJqRDRESSw4QmlENURKLDBCakRxREUsOEJKMEhBLDZCcUQvS0YsMEJqRDRESSwrQmlENURKLHdCakRxREUsNEJKMEhBLDZCcUQvS0Ysd0JqRDRESSw2QmlEcEVOLG9CakQyREkscUJKNEhBLDZCcUR2TEosb0JqRGtFTSxzQmlEMURKLHdCakRxREUseUJKMEhBLDZCcUQvS0Ysd0JqRDRESSwwQmlENURKLDBCakRxREUsMkJKMEhBLDZCcUQvS0YsMEJqRDRESSw0QmlENURKLDJCakRxREUsNEJKMEhBLDZCcUQvS0YsMkJqRDRESSw2QmlENURKLHlCakRxREUsMEJKMEhBLDZCcUQvS0YseUJqRDRESSwyQmlEcEVOLG9CakQyREksdUJKNEhBLDZCcUR2TEosb0JqRGtFTSx3QmlEMURKLHdCakRxREUsMkJKMEhBLDZCcUQvS0Ysd0JqRDRESSw0QmlENURKLDBCakRxREUsNkJKMEhBLDZCcUQvS0YsMEJqRDRESSw4QmlENURKLDJCakRxREUsOEJKMEhBLDZCcUQvS0YsMkJqRDRESSwrQmlENURKLHlCakRxREUsNEJKMEhBLDZCcUQvS0YseUJqRDRESSw2QmlEcEVOLG9CakQyREksd0JKNEhBLDZCcUR2TEosb0JqRGtFTSx5QmlEMURKLHdCakRxREUsNEJKMEhBLDZCcUQvS0Ysd0JqRDRESSw2QmlENURKLDBCakRxREUsOEJKMEhBLDZCcUQvS0YsMEJqRDRESSwrQmlENURKLDJCakRxREUsK0JKMEhBLDZCcUQvS0YsMkJqRDRESSxnQ2lENURKLHlCakRxREUsNkJKMEhBLDZCcUQvS0YseUJqRDRESSw4QmlEcEVOLG9CakQyREksd0JKNEhBLDZCcUR2TEosb0JqRGtFTSx5QmlEMURKLHdCakRxREUsNEJKMEhBLDZCcUQvS0Ysd0JqRDRESSw2QmlENURKLDBCakRxREUsOEJKMEhBLDZCcUQvS0YsMEJqRDRESSwrQmlENURKLDJCakRxREUsK0JKMEhBLDZCcUQvS0YsMkJqRDRESSxnQ2lENURKLHlCakRxREUsNkJKMEhBLDZCcUQvS0YseUJqRDRESSw4QmlEcEVOLG9CakQyREksd0JKNEhBLDZCcUR2TEosb0JqRGtFTSx5QmlEMURKLHdCakRxREUsNEJKMEhBLDZCcUQvS0Ysd0JqRDRESSw2QmlENURKLDBCakRxREUsOEJKMEhBLDZCcUQvS0YsMEJqRDRESSwrQmlENURKLDJCakRxREUsK0JKMEhBLDZCcUQvS0YsMkJqRDRESSxnQ2lENURKLHlCakRxREUsNkJKMEhBLDZCcUQvS0YseUJqRDRESSw4QmlEcEVOLG9CakQyREksd0JKNEhBLDZCcUR2TEosb0JqRGtFTSx5QmlEMURKLHdCakRxREUsNEJKMEhBLDZCcUQvS0Ysd0JqRDRESSw2QmlENURKLDBCakRxREUsOEJKMEhBLDZCcUQvS0YsMEJqRDRESSwrQmlENURKLDJCakRxREUsK0JKMEhBLDZCcUQvS0YsMkJqRDRESSxnQ2lENURKLHlCakRxREUsNkJKMEhBLDZCcUQvS0YseUJqRDRESSw4QmlEcEVOLG9CakQyREksd0JKNEhBLDZCcUR2TEosb0JqRGtFTSx5QmlEMURKLHdCakRxREUsNEJKMEhBLDZCcUQvS0Ysd0JqRDRESSw2QmlENURKLDBCakRxREUsOEJKMEhBLDZCcUQvS0YsMEJqRDRESSwrQmlENURKLDJCakRxREUsK0JKMEhBLDZCcUQvS0YsMkJqRDRESSxnQ2lENURKLHlCakRxREUsNkJKMEhBLDZCcUQvS0YseUJqRDRESSw4QmlEcEVOLG9CakQyREksd0JKNEhBLDZCcUR2TEosb0JqRGtFTSx5QmlEMURKLHdCakRxREUsNEJKMEhBLDZCcUQvS0Ysd0JqRDRESSw2QmlENURKLDBCakRxREUsOEJKMEhBLDZCcUQvS0YsMEJqRDRESSwrQmlENURKLDJCakRxREUsK0JKMEhBLDZCcUQvS0YsMkJqRDRESSxnQ2lENURKLHlCakRxREUsNkJKMEhBLDZCcUQvS0YseUJqRDRESSw4QmlEcEVOLG9CakQyREksd0JKNEhBLDZCcUR2TEosb0JqRGtFTSx5QmlEMURKLHdCakRxREUsNEJKMEhBLDZCcUQvS0Ysd0JqRDRESSw2QmlENURKLDBCakRxREUsOEJKMEhBLDZCcUQvS0YsMEJqRDRESSwrQmlENURKLDJCakRxREUsK0JKMEhBLDZCcUQvS0YsMkJqRDRESSxnQ2lENURKLHlCakRxREUsNkJKMEhBLDZCcUQvS0YseUJqRDRESSw4QmlEcEVOLG9CakQyREksd0JKNEhBLDZCcUR2TEosb0JqRGtFTSx5QmlEMURKLHdCakRxREUsNEJKMEhBLDZCcUQvS0Ysd0JqRDRESSw2QmlENURKLDBCakRxREUsOEJKMEhBLDZCcUQvS0YsMEJqRDRESSwrQmlENURKLDJCakRxREUsK0JKMEhBLDZCcUQvS0YsMkJqRDRESSxnQ2lENURKLHlCakRxREUsNkJKMEhBLDZCcUQvS0YseUJqRDRESSw4QmtEekdSLDBCQUNFLDJCQUdGLDRCQUNFLDZCQUdGLDJCQUNFLDRCQ0xBLHVCM0RxSUUsVUFMVSxnQkFPUixVQU5ZLHFCQVFkLFlBUFksd0JJc0ZWLDZCdUR4TkosdUIzRGlKSSxVQWpCUSxnQkFtQk4sVUFsQlUsZ0JBb0JaLFlBbkJVLGNJc0ZW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aUNBQ0UsNkJBR0YsMEJBQ0UsY3pEbUxNLDRCeURwTFIsMEJBR0ksWUFPSixtREFFRSxnQkFDQSxrQnpEdUtNLDRCeUQxS1IsbURBTUksWUFDQSxhQUNBLGlCQ2xFSix5QkFDRSxnQkFDSSxrQkFJTixnQkFDRSxnQkFHRix1QkFDRSxrQkFDQSw2Q0NaRixrQ0FDSSxVQUNBLFdBQ0Esc0JBR0osY0FDSSxVQUNBLGlCQUNBLGNBQ0EsbUJBQ0EsY0FDQSxpQkFDQSxZQUNBLHNCQUdKLGlCQUNJIiwiZmlsZSI6Im1haW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLmF1dG9jb21wbGV0ZV9fd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmF1dG9jb21wbGV0ZV9faGludCxcbi5hdXRvY29tcGxldGVfX2lucHV0IHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDJweCBzb2xpZCAjMGIwYzBjO1xuICBib3JkZXItcmFkaXVzOiAwOyAvKiBTYWZhcmkgMTAgb24gaU9TIGFkZHMgaW1wbGljaXQgYm9yZGVyIHJvdW5kaW5nLiAqL1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLyogQlVHOiBTYWZhcmkgMTAgb24gbWFjT1Mgc2VlbXMgdG8gYWRkIGFuIGltcGxpY2l0IG1hcmdpbi4gKi9cbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5hdXRvY29tcGxldGVfX2lucHV0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmF1dG9jb21wbGV0ZV9faGludCB7XG4gIGNvbG9yOiAjYjFiNGI2O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5hdXRvY29tcGxldGVfX2lucHV0LS1kZWZhdWx0IHtcbiAgcGFkZGluZzogNXB4O1xufVxuLmF1dG9jb21wbGV0ZV9faW5wdXQtLWZvY3VzZWQge1xuICBvdXRsaW5lOiAzcHggc29saWQgI2ZkMDtcbiAgb3V0bGluZS1vZmZzZXQ6IDA7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweDtcbn1cblxuLmF1dG9jb21wbGV0ZV9faW5wdXQtLXNob3ctYWxsLXZhbHVlcyB7XG4gIHBhZGRpbmc6IDVweCAzNHB4IDVweCA1cHg7IC8qIFNwYWNlIGZvciBhcnJvdy4gT3RoZXIgcGFkZGluZyBzaG91bGQgbWF0Y2ggLmF1dG9jb21wbGV0ZV9faW5wdXQtLWRlZmF1bHQuICovXG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmF1dG9jb21wbGV0ZV9fZHJvcGRvd24tYXJyb3ctZG93bntcbiAgei1pbmRleDogLTE7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogOHB4O1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICB0b3A6IDEwcHg7XG59XG5cbi5hdXRvY29tcGxldGVfX21lbnUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDJweCBzb2xpZCAjMEIwQzBDO1xuICBib3JkZXItdG9wOiAwO1xuICBjb2xvcjogIzBCMEMwQztcbiAgbWFyZ2luOiAwO1xuICBtYXgtaGVpZ2h0OiAzNDJweDtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDRweCk7XG59XG5cbi5hdXRvY29tcGxldGVfX21lbnUtLXZpc2libGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmF1dG9jb21wbGV0ZV9fbWVudS0taGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmF1dG9jb21wbGV0ZV9fbWVudS0tb3ZlcmxheSB7XG4gIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4yNTY4NjMpIDBweCAycHggNnB4O1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgei1pbmRleDogMTAwO1xufVxuXG4uYXV0b2NvbXBsZXRlX19tZW51LS1pbmxpbmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5hdXRvY29tcGxldGVfX29wdGlvbiB7XG4gIGJvcmRlci1ib3R0b206IHNvbGlkICNiMWI0YjY7XG4gIGJvcmRlci13aWR0aDogMXB4IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmF1dG9jb21wbGV0ZV9fb3B0aW9uID4gKiB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uYXV0b2NvbXBsZXRlX19vcHRpb246Zmlyc3Qtb2YtdHlwZSB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XG59XG5cbi5hdXRvY29tcGxldGVfX29wdGlvbjpsYXN0LW9mLXR5cGUge1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xufVxuXG4uYXV0b2NvbXBsZXRlX19vcHRpb24tLW9kZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGQUZBRkE7XG59XG5cbi5hdXRvY29tcGxldGVfX29wdGlvbi0tZm9jdXNlZCxcbi5hdXRvY29tcGxldGVfX29wdGlvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZDcwYjg7XG4gIGJvcmRlci1jb2xvcjogIzFkNzBiODtcbiAgY29sb3I6IHdoaXRlO1xuICBvdXRsaW5lOiBub25lO1xufVxuXG5AbWVkaWEgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gIC5hdXRvY29tcGxldGVfX21lbnUge1xuICAgIGJvcmRlci1jb2xvcjogRmllbGRUZXh0O1xuICB9XG5cbiAgLmF1dG9jb21wbGV0ZV9fb3B0aW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBGaWVsZDtcbiAgICBjb2xvcjogRmllbGRUZXh0O1xuICB9XG5cbiAgLmF1dG9jb21wbGV0ZV9fb3B0aW9uLS1mb2N1c2VkLFxuICAuYXV0b2NvbXBsZXRlX19vcHRpb246aG92ZXIge1xuICAgIGZvcmNlZC1jb2xvci1hZGp1c3Q6IG5vbmU7IC8qIHByZXZlbnQgYmFja3BsYXRlIGZyb20gb2JzY3VyaW5nIHRleHQgKi9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBIaWdobGlnaHQ7XG4gICAgYm9yZGVyLWNvbG9yOiBIaWdobGlnaHQ7XG4gICAgY29sb3I6IEhpZ2hsaWdodFRleHQ7XG5cbiAgICAvKiBQcmVmZXIgU2VsZWN0ZWRJdGVtIC8gU2VsZWN0ZWRJdGVtVGV4dCBpbiBicm93c2VycyB0aGF0IHN1cHBvcnQgaXQgKi9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBTZWxlY3RlZEl0ZW07XG4gICAgYm9yZGVyLWNvbG9yOiBTZWxlY3RlZEl0ZW07XG4gICAgY29sb3I6IFNlbGVjdGVkSXRlbVRleHQ7XG4gICAgb3V0bGluZS1jb2xvcjogU2VsZWN0ZWRJdGVtVGV4dDtcbiAgfVxufVxuXG4uYXV0b2NvbXBsZXRlX19vcHRpb24tLW5vLXJlc3VsdHMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkFGQUZBO1xuICBjb2xvcjogIzY0NmI2ZjtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLmF1dG9jb21wbGV0ZV9faGludCxcbi5hdXRvY29tcGxldGVfX2lucHV0LFxuLmF1dG9jb21wbGV0ZV9fb3B0aW9uIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMS4yNTtcbn1cblxuLmF1dG9jb21wbGV0ZV9faGludCxcbi5hdXRvY29tcGxldGVfX29wdGlvbiB7XG4gIHBhZGRpbmc6IDVweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0MXB4KSB7XG4gIC5hdXRvY29tcGxldGVfX2hpbnQsXG4gIC5hdXRvY29tcGxldGVfX2lucHV0LFxuICAuYXV0b2NvbXBsZXRlX19vcHRpb24ge1xuICAgIGZvbnQtc2l6ZTogMTlweDtcbiAgICBsaW5lLWhlaWdodDogMS4zMTU3OTtcbiAgfVxufVxuIiwiQGlmIG5vdCBtaXhpbi1leGlzdHMoXCJnb3Z1ay1leHBvcnRzXCIpIHtcbiAgQHdhcm4gXCJJbXBvcnRpbmcgaXRlbXMgZnJvbSB0aGUgY29yZSBsYXllciB3aXRob3V0IGZpcnN0IGltcG9ydGluZyBgYmFzZWAgaXMgZGVwcmVjYXRlZCwgYW5kIHdpbGwgbm8gbG9uZ2VyIHdvcmsgYXMgb2YgR09WLlVLIEZyb250ZW5kIHY0LjAuXCI7XG59XG5cbkBpbXBvcnQgXCIuLi9iYXNlXCI7XG5cbkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9jb3JlL2xpbmtzXCIpIHtcblxuICAlZ292dWstbGluayB7XG4gICAgQGluY2x1ZGUgZ292dWstbGluay1jb21tb247XG4gICAgQGluY2x1ZGUgZ292dWstbGluay1zdHlsZS1kZWZhdWx0O1xuICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstcHJpbnQtZnJpZW5kbHk7XG4gIH1cblxuICAuZ292dWstbGluayB7XG4gICAgQGV4dGVuZCAlZ292dWstbGluaztcbiAgfVxuXG4gIC8vIFZhcmlhbnQgY2xhc3NlcyBzaG91bGQgYWx3YXlzIGJlIHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUgLmdvdnVrLWxpbmtcbiAgLy8gY2xhc3MsIHNvIHdlIGRvIG5vdCBuZWVkIHRoZSBjb21tb24gbGluayBzdHlsZXMgYXMgdGhleSB3aWxsIGJlIGluaGVyaXRlZC5cblxuICAuZ292dWstbGluay0tbXV0ZWQge1xuICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstc3R5bGUtbXV0ZWQ7XG4gIH1cblxuICAuZ292dWstbGluay0tdGV4dC1jb2xvdXIge1xuICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstc3R5bGUtdGV4dDtcbiAgfVxuXG4gIC5nb3Z1ay1saW5rLS1pbnZlcnNlIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLXN0eWxlLWludmVyc2U7XG4gIH1cblxuICAuZ292dWstbGluay0tbm8tdW5kZXJsaW5lIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLXN0eWxlLW5vLXVuZGVybGluZTtcbiAgfVxuXG4gIC5nb3Z1ay1saW5rLS1uby12aXNpdGVkLXN0YXRlIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLXN0eWxlLW5vLXZpc2l0ZWQtc3RhdGU7XG4gIH1cbn1cbiIsIi8vLy9cbi8vLyBAZ3JvdXAgaGVscGVycy90eXBvZ3JhcGh5XG4vLy8vXG5cbkBpbXBvcnQgXCIuLi90b29scy9weC10by1yZW1cIjtcblxuLy8vICdDb21tb24gdHlwb2dyYXBoeScgaGVscGVyXG4vLy9cbi8vLyBTZXRzIHRoZSBmb250IGZhbWlseSBhbmQgYXNzb2NpYXRlZCBwcm9wZXJ0aWVzLCBzdWNoIGFzIGZvbnQgc21vb3RoaW5nLiBBbHNvXG4vLy8gb3ZlcnJpZGVzIHRoZSBmb250IGZvciBwcmludC5cbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJGZvbnQtZmFtaWx5IFskZ292dWstZm9udC1mYW1pbHldIEZvbnQgZmFtaWx5IHRvIHVzZVxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay10eXBvZ3JhcGh5LWNvbW1vbigkZm9udC1mYW1pbHk6ICRnb3Z1ay1mb250LWZhbWlseSkge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5O1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcblxuICAvLyBJZiB0aGUgdXNlciBpcyB1c2luZyB0aGUgZGVmYXVsdCBHRFMgVHJhbnNwb3J0IGZvbnQgd2UgbmVlZCB0byBpbmNsdWRlXG4gIC8vIHRoZSBmb250LWZhY2UgZGVjbGFyYXRpb25zLlxuICAvL1xuICAvLyBXZSBkbyBub3QgbmVlZCB0byBpbmNsdWRlIHRoZSBHRFMgVHJhbnNwb3J0IGZvbnQtZmFjZSBkZWNsYXJhdGlvbnMgaWZcbiAgLy8gYWxwaGFnb3YvZ292dWtfdGVtcGxhdGUgaXMgYmVpbmcgdXNlZCBzaW5jZSBudGEgd2lsbCBhbHJlYWR5IGJlIGluY2x1ZGVkIGJ5XG4gIC8vIGRlZmF1bHQuXG4gIEBpZiAoJGdvdnVrLWluY2x1ZGUtZGVmYXVsdC1mb250LWZhY2UpIHtcbiAgICBAaW5jbHVkZSBfZ292dWstZm9udC1mYWNlLWdkcy10cmFuc3BvcnQ7XG4gIH1cblxuICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkbWVkaWEtdHlwZTogcHJpbnQpIHtcbiAgICBmb250LWZhbWlseTogJGdvdnVrLWZvbnQtZmFtaWx5LXByaW50O1xuICB9XG59XG5cbi8vLyBUZXh0IGNvbG91ciBoZWxwZXJcbi8vL1xuLy8vIFNldHMgdGhlIHRleHQgY29sb3VyLCBpbmNsdWRpbmcgYSBzdWl0YWJsZSBvdmVycmlkZSBmb3IgcHJpbnQuXG4vLy9cbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AbWl4aW4gZ292dWstdGV4dC1jb2xvdXIge1xuICBjb2xvcjogJGdvdnVrLXRleHQtY29sb3VyO1xuXG4gIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRtZWRpYS10eXBlOiBwcmludCkge1xuICAgIGNvbG9yOiAkZ292dWstcHJpbnQtdGV4dC1jb2xvdXI7XG4gIH1cbn1cblxuLy8vIFJlZ3VsYXIgZm9udCB3ZWlnaHQgaGVscGVyXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRpbXBvcnRhbnQgW2ZhbHNlXSAtIFdoZXRoZXIgdG8gbWFyayBkZWNsYXJhdGlvbnMgYXNcbi8vLyAgIGAhaW1wb3J0YW50YC4gR2VuZXJhbGx5IFVzZWQgdG8gY3JlYXRlIG92ZXJyaWRlIGNsYXNzZXMuXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLXR5cG9ncmFwaHktd2VpZ2h0LXJlZ3VsYXIoJGltcG9ydGFudDogZmFsc2UpIHtcbiAgZm9udC13ZWlnaHQ6ICRnb3Z1ay1mb250LXdlaWdodC1yZWd1bGFyIGlmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQsIG51bGwpO1xufVxuXG4vLy8gQm9sZCBmb250IHdlaWdodCBoZWxwZXJcbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGltcG9ydGFudCBbZmFsc2VdIC0gV2hldGhlciB0byBtYXJrIGRlY2xhcmF0aW9ucyBhc1xuLy8vICAgYCFpbXBvcnRhbnRgLiBHZW5lcmFsbHkgVXNlZCB0byBjcmVhdGUgb3ZlcnJpZGUgY2xhc3Nlcy5cbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AbWl4aW4gZ292dWstdHlwb2dyYXBoeS13ZWlnaHQtYm9sZCgkaW1wb3J0YW50OiBmYWxzZSkge1xuICBmb250LXdlaWdodDogJGdvdnVrLWZvbnQtd2VpZ2h0LWJvbGQgaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCwgbnVsbCk7XG59XG5cbi8vLyBDb252ZXJ0IGxpbmUtaGVpZ2h0cyBzcGVjaWZpZWQgaW4gcGl4ZWxzIGludG8gYSByZWxhdGl2ZSB2YWx1ZSwgdW5sZXNzXG4vLy8gdGhleSBhcmUgYWxyZWFkeSB1bml0LWxlc3MgKGFuZCB0aHVzIGFscmVhZHkgdHJlYXRlZCBhcyByZWxhdGl2ZSB2YWx1ZXMpXG4vLy8gb3IgdGhlIHVuaXRzIGRvIG5vdCBtYXRjaCB0aGUgdW5pdHMgdXNlZCBmb3IgdGhlIGZvbnQgc2l6ZS5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbGluZS1oZWlnaHQgTGluZSBoZWlnaHRcbi8vLyBAcGFyYW0ge051bWJlcn0gJGZvbnQtc2l6ZSBGb250IHNpemVcbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IFRoZSBsaW5lIGhlaWdodCBhcyBlaXRoZXIgYSByZWxhdGl2ZSB2YWx1ZSBvciB1bm1vZGlmaWVkXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcblxuQGZ1bmN0aW9uIF9nb3Z1ay1saW5lLWhlaWdodCgkbGluZS1oZWlnaHQsICRmb250LXNpemUpIHtcbiAgQGlmIG5vdCB1bml0bGVzcygkbGluZS1oZWlnaHQpIGFuZCB1bml0KCRsaW5lLWhlaWdodCkgPT0gdW5pdCgkZm9udC1zaXplKSB7XG4gICAgJGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQgLyAkZm9udC1zaXplO1xuICB9XG5cbiAgQHJldHVybiAkbGluZS1oZWlnaHQ7XG59XG5cbi8vLyBSZXNwb25zaXZlIHR5cG9ncmFwaHkgaGVscGVyXG4vLy9cbi8vLyBUYWtlcyBhICdmb250IG1hcCcgYXMgYW4gYXJndW1lbnQgYW5kIHVzZXMgaXQgdG8gY3JlYXRlIGZvbnQtc2l6ZSBhbmRcbi8vLyBsaW5lLWhlaWdodCBkZWNsYXJhdGlvbnMgZm9yIGRpZmZlcmVudCBicmVha3BvaW50cywgYW5kIGZvciBwcmludC5cbi8vL1xuLy8vIEV4YW1wbGUgZm9udCBtYXA6XG4vLy9cbi8vLyAkbXktZm9udC1tYXA6IChcbi8vLyAgIG51bGw6IChcbi8vLyAgICAgZm9udC1zaXplOiAxNnB4LFxuLy8vICAgICBsaW5lLWhlaWdodDogMjBweFxuLy8vICAgKSxcbi8vLyAgIHRhYmxldDogKFxuLy8vICAgICBmb250LXNpemU6IDE5cHgsXG4vLy8gICAgIGxpbmUtaGVpZ2h0OiAyNXB4XG4vLy8gICApLFxuLy8vICAgcHJpbnQ6IChcbi8vLyAgICAgZm9udC1zaXplOiAxNHB0LFxuLy8vICAgICBsaW5lLWhlaWdodDogMS4xNVxuLy8vICAgKVxuLy8vICk7XG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJGZvbnQtbWFwIC0gRm9udCBtYXBcbi8vLyBAcGFyYW0ge051bWJlcn0gJG92ZXJyaWRlLWxpbmUtaGVpZ2h0IFtmYWxzZV0gLSBOb24gcmVzcG9uc2l2ZSBjdXN0b20gbGluZVxuLy8vICAgaGVpZ2h0LiBPbWl0IHRvIHVzZSB0aGUgbGluZSBoZWlnaHQgZnJvbSB0aGUgZm9udCBtYXAuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkaW1wb3J0YW50IFtmYWxzZV0gLSBXaGV0aGVyIHRvIG1hcmsgZGVjbGFyYXRpb25zIGFzXG4vLy8gICBgIWltcG9ydGFudGAuXG4vLy9cbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AbWl4aW4gZ292dWstdHlwb2dyYXBoeS1yZXNwb25zaXZlKCRzaXplLCAkb3ZlcnJpZGUtbGluZS1oZWlnaHQ6IGZhbHNlLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuXG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJGdvdnVrLXR5cG9ncmFwaHktc2NhbGUsICRzaXplKSB7XG4gICAgQGVycm9yIFwiVW5rbm93biBmb250IHNpemUgYCN7JHNpemV9YCAtIGV4cGVjdGVkIGEgcG9pbnQgZnJvbSB0aGUgdHlwb2dyYXBoeSBzY2FsZS5cIjtcbiAgfVxuXG4gICRmb250LW1hcDogbWFwLWdldCgkZ292dWstdHlwb2dyYXBoeS1zY2FsZSwgJHNpemUpO1xuXG4gIEBlYWNoICRicmVha3BvaW50LCAkYnJlYWtwb2ludC1tYXAgaW4gJGZvbnQtbWFwIHtcbiAgICAkZm9udC1zaXplOiBtYXAtZ2V0KCRicmVha3BvaW50LW1hcCwgXCJmb250LXNpemVcIik7XG4gICAgJGZvbnQtc2l6ZS1yZW06IGdvdnVrLXB4LXRvLXJlbSgkZm9udC1zaXplKTtcblxuICAgICRsaW5lLWhlaWdodDogX2dvdnVrLWxpbmUtaGVpZ2h0KFxuICAgICAgJGxpbmUtaGVpZ2h0OiBpZihcbiAgICAgICAgJG92ZXJyaWRlLWxpbmUtaGVpZ2h0LFxuICAgICAgICAkb3ZlcnJpZGUtbGluZS1oZWlnaHQsXG4gICAgICAgIG1hcC1nZXQoJGJyZWFrcG9pbnQtbWFwLCBcImxpbmUtaGVpZ2h0XCIpXG4gICAgICApLFxuICAgICAgJGZvbnQtc2l6ZTogJGZvbnQtc2l6ZVxuICAgICk7XG5cbiAgICAvLyBNYXJrIHJ1bGVzIGFzICFpbXBvcnRhbnQgaWYgJGltcG9ydGFudCBpcyB0cnVlIC0gdGhpcyB3aWxsIHJlc3VsdCBpblxuICAgIC8vIHRoZXNlIHZhcmlhYmxlcyBiZWNvbWluZyBzdHJpbmdzLCBzbyB0aGlzIG5lZWRzIHRvIGhhcHBlbiAqYWZ0ZXIqIHRoZXlcbiAgICAvLyBhcmUgdXNlZCBpbiBjYWxjdWxhdGlvbnNcbiAgICAkZm9udC1zaXplOiAkZm9udC1zaXplIGlmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICRmb250LXNpemUtcmVtOiAkZm9udC1zaXplLXJlbSBpZigkaW1wb3J0YW50LCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAkbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodCBpZigkaW1wb3J0YW50LCAhaW1wb3J0YW50LCBudWxsKTtcblxuICAgIEBpZiAkYnJlYWtwb2ludCA9PSBudWxsIHtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICAgIEBpZiAkZ292dWstdHlwb2dyYXBoeS11c2UtcmVtIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXJlbTtcbiAgICAgIH1cbiAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gICAgfSBAZWxzZSBpZiAkYnJlYWtwb2ludCA9PSBcInByaW50XCIge1xuICAgICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJG1lZGlhLXR5cGU6IHByaW50KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiAkYnJlYWtwb2ludCkge1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgICAgIEBpZiAkZ292dWstdHlwb2dyYXBoeS11c2UtcmVtIHtcbiAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtcmVtO1xuICAgICAgICB9XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBGb250IGhlbHBlclxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIC0gU2l6ZSBvZiB0aGUgZm9udCBhcyBpdCB3b3VsZCBhcHBlYXIgb24gZGVza3RvcCAtXG4vLy8gICB1c2VzIHRoZSByZXNwb25zaXZlIGZvbnQgc2l6ZSBtYXBcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHdlaWdodCBbcmVndWxhcl0gLSBXZWlnaHQ6IGBib2xkYCBvciBgcmVndWxhcmBcbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR0YWJ1bGFyIFtmYWxzZV0gLSBXaGV0aGVyIHRvIHVzZSB0YWJ1bGFyIG51bWJlcnMgb3Igbm90XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRsaW5lLWhlaWdodCBbZmFsc2VdIC0gTGluZS1oZWlnaHQsIGlmIG92ZXJyaWRpbmcgdGhlIGRlZmF1bHRcbi8vL1xuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay1mb250KCRzaXplLCAkd2VpZ2h0OiByZWd1bGFyLCAkdGFidWxhcjogZmFsc2UsICRsaW5lLWhlaWdodDogZmFsc2UpIHtcbiAgQGlmICR0YWJ1bGFyIHtcbiAgICAvLyBpZiBnb3Z1ay1mb250LWZhbWlseS10YWJ1bGFyIGlzIHNldCB1c2UgJGdvdnVrLWZvbnQtZmFtaWx5LXRhYnVsYXJcbiAgICBAaWYgJGdvdnVrLWZvbnQtZmFtaWx5LXRhYnVsYXIge1xuICAgICAgQGluY2x1ZGUgZ292dWstdHlwb2dyYXBoeS1jb21tb24oJGZvbnQtZmFtaWx5OiAkZ292dWstZm9udC1mYW1pbHktdGFidWxhcik7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBnb3Z1ay10eXBvZ3JhcGh5LWNvbW1vbjtcbiAgICAgIC13ZWJraXQtZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcInRudW1cIiAxO1xuICAgICAgICAgICAgICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwidG51bVwiIDE7XG5cbiAgICAgIEBzdXBwb3J0cyAoZm9udC12YXJpYW50LW51bWVyaWM6IHRhYnVsYXItbnVtcykge1xuICAgICAgICAtd2Via2l0LWZvbnQtZmVhdHVyZS1zZXR0aW5nczogbm9ybWFsO1xuICAgICAgICAgICAgICAgIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogbm9ybWFsO1xuICAgICAgICBmb250LXZhcmlhbnQtbnVtZXJpYzogdGFidWxhci1udW1zO1xuICAgICAgfVxuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGluY2x1ZGUgZ292dWstdHlwb2dyYXBoeS1jb21tb247XG4gIH1cblxuICBAaWYgJHdlaWdodCA9PSByZWd1bGFyIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1yZWd1bGFyO1xuICB9IEBlbHNlIGlmICR3ZWlnaHQgPT0gYm9sZCB7XG4gICAgQGluY2x1ZGUgZ292dWstdHlwb2dyYXBoeS13ZWlnaHQtYm9sZDtcbiAgfVxuXG4gIEBpZiAkc2l6ZSB7XG4gICAgQGluY2x1ZGUgZ292dWstdHlwb2dyYXBoeS1yZXNwb25zaXZlKCRzaXplLCAkb3ZlcnJpZGUtbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodCk7XG4gIH1cbn1cbiIsIkBpbXBvcnQgXCJjb21wYXRpYmlsaXR5XCI7XG5AaW1wb3J0IFwidHlwb2dyYXBoeS1mb250LWZhbWlsaWVzXCI7XG5cbi8vLy9cbi8vLyBAZ3JvdXAgc2V0dGluZ3MvdHlwb2dyYXBoeVxuLy8vL1xuXG4vLy8gVXNlICdsZWdhY3knIGZvbnRzXG4vLy9cbi8vLyBXaGV0aGVyIG9yIG5vdCB0byB1c2UgdjEgbnRhIGZvbnQgZnJvbSBHT1YuVUsgRWxlbWVudHMgLyBGcm9udGVuZFxuLy8vIFRvb2xraXQsIGZvciB0ZWFtcyB0aGF0IGFyZSBtaWdyYXRpbmcgdG8gR09WLlVLIEZyb250ZW5kIGFuZCBtYXkgYmUgdXNpbmdcbi8vLyBjb21wb25lbnRzIGZyb20gYm90aCBwbGFjZXMgaW4gYSBzaW5nbGUgYXBwbGljYXRpb24uXG4vLy9cbi8vLyBAdHlwZSBCb29sZWFuXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLXVzZS1sZWdhY3ktZm9udDogaWYoXG4gIChcbiAgICAkZ292dWstY29tcGF0aWJpbGl0eS1nb3Z1a2Zyb250ZW5kdG9vbGtpdCBvclxuICAgICRnb3Z1ay1jb21wYXRpYmlsaXR5LWdvdnVrdGVtcGxhdGUgb3JcbiAgICAkZ292dWstY29tcGF0aWJpbGl0eS1nb3Z1a2VsZW1lbnRzXG4gICksXG4gIHRydWUsXG4gIGZhbHNlXG4pICFkZWZhdWx0O1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEZvbnQgZmFtaWxpZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLy8gRm9udCBmYW1pbGllcyB0byB1c2UgZm9yIGFsbCB0eXBvZ3JhcGh5IG9uIHNjcmVlbiBtZWRpYVxuLy8vXG4vLy8gQHR5cGUgTGlzdFxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1mb250LWZhbWlseTogaWYoXG4gICRnb3Z1ay11c2UtbGVnYWN5LWZvbnQsXG4gICRnb3Z1ay1mb250LWZhbWlseS1udGEsXG4gICRnb3Z1ay1mb250LWZhbWlseS1nZHMtdHJhbnNwb3J0XG4pICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbGllcyB0byB1c2Ugd2hlbiBkaXNwbGF5aW5nIHRhYnVsYXIgbnVtYmVyc1xuLy8vXG4vLy8gQHR5cGUgTGlzdFxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1mb250LWZhbWlseS10YWJ1bGFyOiBpZihcbiAgJGdvdnVrLXVzZS1sZWdhY3ktZm9udCxcbiAgJGdvdnVrLWZvbnQtZmFtaWx5LW50YS10YWJ1bGFyLFxuICBmYWxzZVxuKSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWxpZXMgdG8gdXNlIGZvciBwcmludCBtZWRpYVxuLy8vXG4vLy8gV2UgcmVjb21tZW5kIHRoYXQgeW91IHVzZSBzeXN0ZW0gZm9udHMgd2hlbiBwcmludGluZy4gVGhpcyB3aWxsIGF2b2lkIGlzc3Vlc1xuLy8vIHdpdGggc29tZSBwcmludGVyIGRyaXZlcnMgYW5kIG9wZXJhdGluZyBzeXN0ZW1zLlxuLy8vXG4vLy8gQHR5cGUgTGlzdFxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1mb250LWZhbWlseS1wcmludDogc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuLy8vIEluY2x1ZGUgdGhlIGRlZmF1bHQgQGZvbnQtZmFjZSBkZWNsYXJhdGlvbnNcbi8vL1xuLy8vIElmIHlvdSBoYXZlIHNldCAkZ292dWstZm9udC1mYW1pbHkgdG8gc29tZXRoaW5nIG90aGVyIHRoYW5cbi8vLyBgJGdvdnVrLWZvbnQtZmFtaWx5LWdkcy10cmFuc3BvcnRgIHRoaXMgb3B0aW9uIGlzIGRpc2FibGVkIGJ5IGRlZmF1bHQuXG4vLy9cbi8vLyBAdHlwZSBCb29sZWFuXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLWluY2x1ZGUtZGVmYXVsdC1mb250LWZhY2U6IChcbiAgJGdvdnVrLWZvbnQtZmFtaWx5ID09ICRnb3Z1ay1mb250LWZhbWlseS1nZHMtdHJhbnNwb3J0XG4pICFkZWZhdWx0O1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEZvbnQgd2VpZ2h0c1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vLyBGb250IHdlaWdodCBmb3IgcmVndWxhciB0eXBvZ3JhcGh5XG4vLy9cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuJGdvdnVrLWZvbnQtd2VpZ2h0LXJlZ3VsYXI6IDQwMCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBib2xkIHR5cG9ncmFwaHlcbi8vL1xuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG4kZ292dWstZm9udC13ZWlnaHQtYm9sZDogNzAwICFkZWZhdWx0O1xuIiwiLy8vL1xuLy8vIEBncm91cCBoZWxwZXJzL2xpbmtzXG4vLy8vXG5cbi8vLyBDb21tb24gbGluayBzdHlsZXNcbi8vL1xuLy8vIFByb3ZpZGVzIHRoZSB0eXBvZ3JhcGh5IGFuZCBmb2N1cyBzdGF0ZSwgcmVnYXJkbGVzcyBvZiBsaW5rIHN0eWxlLlxuLy8vXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLWxpbmstY29tbW9uIHtcbiAgQGluY2x1ZGUgZ292dWstdHlwb2dyYXBoeS1jb21tb247XG4gIEBpbmNsdWRlIGdvdnVrLWxpbmstZGVjb3JhdGlvbjtcblxuICAmOmhvdmVyIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb2N1c2VkLXRleHQ7XG4gIH1cbn1cblxuLy8vIExpbmsgZGVjb3JhdGlvblxuLy8vXG4vLy8gUHJvdmlkZXMgdGhlIHRleHQgZGVjb3JhdGlvbiBmb3IgbGlua3MsIGluY2x1ZGluZyB0aGlja25lc3MgYW5kIHVuZGVybGluZVxuLy8vIG9mZnNldC4gVXNlIHRoaXMgbWl4aW4gb25seSBpZiB5b3UgY2Fubm90IHVzZSB0aGUgYGdvdnVrLWxpbmstY29tbW9uYCBtaXhpbi5cbi8vL1xuLy8vIEBhY2Nlc3MgcHVibGljXG5AbWl4aW4gZ292dWstbGluay1kZWNvcmF0aW9uIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cbiAgQGlmICgkZ292dWstbmV3LWxpbmstc3R5bGVzKSB7XG4gICAgQGlmICgkZ292dWstbGluay11bmRlcmxpbmUtdGhpY2tuZXNzKSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiAkZ292dWstbGluay11bmRlcmxpbmUtdGhpY2tuZXNzO1xuICAgIH1cblxuICAgIEBpZiAoJGdvdnVrLWxpbmstdW5kZXJsaW5lLW9mZnNldCkge1xuICAgICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAkZ292dWstbGluay11bmRlcmxpbmUtb2Zmc2V0O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gTGluayBob3ZlciBkZWNvcmF0aW9uXG4vLy9cbi8vLyBQcm92aWRlcyB0aGUgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcyBpbiB0aGVpciBob3ZlciBzdGF0ZSwgZm9yIHlvdSB0byB1c2Vcbi8vLyB3aXRoaW4gYSBgOmhvdmVyYCBwc2V1ZG8tc2VsZWN0b3IuIFVzZSB0aGlzIG1peGluIG9ubHkgaWYgeW91IGNhbm5vdCB1c2UgdGhlXG4vLy8gYGdvdnVrLWxpbmstY29tbW9uYCBtaXhpbi5cbi8vL1xuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay1saW5rLWhvdmVyLWRlY29yYXRpb24ge1xuICBAaWYgKCRnb3Z1ay1uZXctbGluay1zdHlsZXMgYW5kICRnb3Z1ay1saW5rLWhvdmVyLXVuZGVybGluZS10aGlja25lc3MpIHtcbiAgICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiAkZ292dWstbGluay1ob3Zlci11bmRlcmxpbmUtdGhpY2tuZXNzO1xuICAgIC8vIERpc2FibGUgaW5rIHNraXBwaW5nIG9uIHVuZGVybGluZXMgb24gaG92ZXIuIEJyb3dzZXJzIGhhdmVuJ3RcbiAgICAvLyBzdGFuZGFyZGlzZWQgb24gdGhpcyBwYXJ0IG9mIHRoZSBzcGVjIHlldCwgc28gc2V0IGJvdGggcHJvcGVydGllc1xuICAgIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lOyAvLyBDaHJvbWl1bSwgRmlyZWZveFxuICAgIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG5vbmU7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb24tc2tpcDogbm9uZTsgLy8gU2FmYXJpXG4gIH1cbn1cblxuLy8vIERlZmF1bHQgbGluayBzdHlsZXNcbi8vL1xuLy8vIE1ha2VzIGxpbmtzIHVzZSB0aGUgZGVmYXVsdCB1bnZpc2l0ZWQsIHZpc2l0ZWQsIGhvdmVyIGFuZCBhY3RpdmUgY29sb3Vycy5cbi8vL1xuLy8vIElmIHlvdSB1c2UgdGhpcyBtaXhpbiBpbiBhIGNvbXBvbmVudCwgeW91IG11c3QgYWxzbyBpbmNsdWRlIHRoZVxuLy8vIGBnb3Z1ay1saW5rLWNvbW1vbmAgbWl4aW4gdG8gZ2V0IHRoZSBjb3JyZWN0IGZvY3VzIGFuZCBob3ZlciBzdGF0ZXMuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZ292dWstY29tcG9uZW50X19saW5rIHtcbi8vLyAgICAgQGluY2x1ZGUgZ292dWstbGluay1jb21tb247XG4vLy8gICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstc3R5bGUtZGVmYXVsdDtcbi8vLyAgIH1cbi8vL1xuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay1saW5rLXN0eWxlLWRlZmF1bHQge1xuICAmOmxpbmsge1xuICAgIGNvbG9yOiAkZ292dWstbGluay1jb2xvdXI7XG4gIH1cblxuICAmOnZpc2l0ZWQge1xuICAgIGNvbG9yOiAkZ292dWstbGluay12aXNpdGVkLWNvbG91cjtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkZ292dWstbGluay1ob3Zlci1jb2xvdXI7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRnb3Z1ay1saW5rLWFjdGl2ZS1jb2xvdXI7XG4gIH1cblxuICAvLyBXaGVuIGZvY3Vzc2VkLCB0aGUgdGV4dCBjb2xvdXIgbmVlZHMgdG8gYmUgZGFya2VyIHRvIGVuc3VyZSB0aGF0IGNvbG91clxuICAvLyBjb250cmFzdCBpcyBzdGlsbCBhY2NlcHRhYmxlXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkZ292dWstZm9jdXMtdGV4dC1jb2xvdXI7XG4gIH1cblxuICAvLyBhbHBoYWdvdi9nb3Z1a190ZW1wbGF0ZSBpbmNsdWRlcyBhIHNwZWNpZmljIGE6bGluazpmb2N1cyBzZWxlY3RvclxuICAvLyBkZXNpZ25lZCB0byBtYWtlIHVudmlzaXRlZCBsaW5rICBzIGEgc2xpZ2h0bHkgZGFya2VyIGJsdWUgd2hlbiBmb2N1c3NlZCwgc29cbiAgLy8gd2UgbmVlZCB0byBvdmVycmlkZSB0aGUgdGV4dCBjb2xvdXIgZm9yIHRoYXQgY29tYmluYXRpb24gb2Ygc2VsZWN0b3JzIHNvXG4gIC8vIHNvIHRoYXQgdW52aXNpdGVkIGxpbmtzIHN0eWxlZCBhcyBidXR0b25zIGRvIG5vdCBlbmQgdXAgd2l0aCBkYXJrIGJsdWVcbiAgLy8gdGV4dCB3aGVuIGZvY3Vzc2VkLlxuICBAaW5jbHVkZSBnb3Z1ay1jb21wYXRpYmlsaXR5KGdvdnVrX3RlbXBsYXRlKSB7XG4gICAgJjpsaW5rOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkZ292dWstZm9jdXMtdGV4dC1jb2xvdXI7XG4gICAgfVxuICB9XG59XG5cbi8vLyBFcnJvciBsaW5rIHN0eWxlc1xuLy8vXG4vLy8gTWFrZXMgbGlua3MgdXNlIHRoZSBlcnJvciBjb2xvdXIuIFRoZSBsaW5rIHdpbGwgZGFya2VuIGlmIGl0J3MgYWN0aXZlIG9yIGFcbi8vLyB1c2VyIGhvdmVycyB0aGVpciBjdXJzb3Igb3ZlciBpdC5cbi8vL1xuLy8vIElmIHlvdSB1c2UgdGhpcyBtaXhpbiBpbiBhIGNvbXBvbmVudCwgeW91IG11c3QgYWxzbyBpbmNsdWRlIHRoZVxuLy8vIGBnb3Z1ay1saW5rLWNvbW1vbmAgbWl4aW4gdG8gZ2V0IHRoZSBjb3JyZWN0IGZvY3VzIGFuZCBob3ZlciBzdGF0ZXMuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZ292dWstY29tcG9uZW50X19saW5rIHtcbi8vLyAgICAgQGluY2x1ZGUgZ292dWstbGluay1jb21tb247XG4vLy8gICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstc3R5bGUtZXJyb3I7XG4vLy8gICB9XG4vLy9cbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AbWl4aW4gZ292dWstbGluay1zdHlsZS1lcnJvciB7XG4gICY6bGluayxcbiAgJjp2aXNpdGVkIHtcbiAgICBjb2xvcjogJGdvdnVrLWVycm9yLWNvbG91cjtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiBzY2FsZS1jb2xvcigkZ292dWstZXJyb3ItY29sb3VyLCAkbGlnaHRuZXNzOiAtMzAlKTtcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGdvdnVrLWVycm9yLWNvbG91cjtcbiAgfVxuXG4gIC8vIFdoZW4gZm9jdXNzZWQsIHRoZSB0ZXh0IGNvbG91ciBuZWVkcyB0byBiZSBkYXJrZXIgdG8gZW5zdXJlIHRoYXQgY29sb3VyXG4gIC8vIGNvbnRyYXN0IGlzIHN0aWxsIGFjY2VwdGFibGVcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRnb3Z1ay1mb2N1cy10ZXh0LWNvbG91cjtcbiAgfVxuXG4gIC8vIGFscGhhZ292L2dvdnVrX3RlbXBsYXRlIGluY2x1ZGVzIGEgc3BlY2lmaWMgYTpsaW5rOmZvY3VzIHNlbGVjdG9yXG4gIC8vIGRlc2lnbmVkIHRvIG1ha2UgdW52aXNpdGVkIGxpbmsgIHMgYSBzbGlnaHRseSBkYXJrZXIgYmx1ZSB3aGVuIGZvY3Vzc2VkLCBzb1xuICAvLyB3ZSBuZWVkIHRvIG92ZXJyaWRlIHRoZSB0ZXh0IGNvbG91ciBmb3IgdGhhdCBjb21iaW5hdGlvbiBvZiBzZWxlY3RvcnMgc29cbiAgLy8gc28gdGhhdCB1bnZpc2l0ZWQgbGlua3Mgc3R5bGVkIGFzIGJ1dHRvbnMgZG8gbm90IGVuZCB1cCB3aXRoIGRhcmsgYmx1ZVxuICAvLyB0ZXh0IHdoZW4gZm9jdXNzZWQuXG4gIEBpbmNsdWRlIGdvdnVrLWNvbXBhdGliaWxpdHkoZ292dWtfdGVtcGxhdGUpIHtcbiAgICAmOmxpbms6Zm9jdXMge1xuICAgICAgY29sb3I6ICRnb3Z1ay1mb2N1cy10ZXh0LWNvbG91cjtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFN1Y2Nlc3MgbGluayBzdHlsZXNcbi8vL1xuLy8vIE1ha2VzIGxpbmtzIHVzZSB0aGUgc3VjY2VzcyBjb2xvdXIuIFRoZSBsaW5rIHdpbGwgZGFya2VuIGlmIGl0J3MgYWN0aXZlIG9yIGFcbi8vLyB1c2VyIGhvdmVycyB0aGVpciBjdXJzb3Igb3ZlciBpdC5cbi8vL1xuLy8vIElmIHlvdSB1c2UgdGhpcyBtaXhpbiBpbiBhIGNvbXBvbmVudCwgeW91IG11c3QgYWxzbyBpbmNsdWRlIHRoZVxuLy8vIGBnb3Z1ay1saW5rLWNvbW1vbmAgbWl4aW4gdG8gZ2V0IHRoZSBjb3JyZWN0IGZvY3VzIGFuZCBob3ZlciBzdGF0ZXMuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZ292dWstY29tcG9uZW50X19saW5rIHtcbi8vLyAgICAgQGluY2x1ZGUgZ292dWstbGluay1jb21tb247XG4vLy8gICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstc3R5bGUtc3VjY2Vzcztcbi8vLyAgIH1cbi8vL1xuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay1saW5rLXN0eWxlLXN1Y2Nlc3Mge1xuICAmOmxpbmssXG4gICY6dmlzaXRlZCB7XG4gICAgY29sb3I6ICRnb3Z1ay1zdWNjZXNzLWNvbG91cjtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiBzY2FsZS1jb2xvcigkZ292dWstc3VjY2Vzcy1jb2xvdXIsICRsaWdodG5lc3M6IC0zMCUpO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkZ292dWstc3VjY2Vzcy1jb2xvdXI7XG4gIH1cblxuICAvLyBXaGVuIGZvY3Vzc2VkLCB0aGUgdGV4dCBjb2xvdXIgbmVlZHMgdG8gYmUgZGFya2VyIHRvIGVuc3VyZSB0aGF0IGNvbG91clxuICAvLyBjb250cmFzdCBpcyBzdGlsbCBhY2NlcHRhYmxlXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkZ292dWstZm9jdXMtdGV4dC1jb2xvdXI7XG4gIH1cblxuICAvLyBhbHBoYWdvdi9nb3Z1a190ZW1wbGF0ZSBpbmNsdWRlcyBhIHNwZWNpZmljIGE6bGluazpmb2N1cyBzZWxlY3RvclxuICAvLyBkZXNpZ25lZCB0byBtYWtlIHVudmlzaXRlZCBsaW5rICBzIGEgc2xpZ2h0bHkgZGFya2VyIGJsdWUgd2hlbiBmb2N1c3NlZCwgc29cbiAgLy8gd2UgbmVlZCB0byBvdmVycmlkZSB0aGUgdGV4dCBjb2xvdXIgZm9yIHRoYXQgY29tYmluYXRpb24gb2Ygc2VsZWN0b3JzIHNvXG4gIC8vIHNvIHRoYXQgdW52aXNpdGVkIGxpbmtzIHN0eWxlZCBhcyBidXR0b25zIGRvIG5vdCBlbmQgdXAgd2l0aCBkYXJrIGJsdWVcbiAgLy8gdGV4dCB3aGVuIGZvY3Vzc2VkLlxuICBAaW5jbHVkZSBnb3Z1ay1jb21wYXRpYmlsaXR5KGdvdnVrX3RlbXBsYXRlKSB7XG4gICAgJjpsaW5rOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkZ292dWstZm9jdXMtdGV4dC1jb2xvdXI7XG4gICAgfVxuICB9XG59XG5cbi8vLyBNdXRlZCBsaW5rIHN0eWxlc1xuLy8vXG4vLy8gTWFrZXMgbGlua3MgdXNlIHRoZSBzZWNvbmRhcnkgdGV4dCBjb2xvdXIuIFRoZSBsaW5rIHdpbGwgZGFya2VuIGlmIGl0J3Ncbi8vLyBhY3RpdmUgb3IgYSB1c2VyIGhvdmVycyB0aGVpciBjdXJzb3Igb3ZlciBpdC5cbi8vL1xuLy8vIElmIHlvdSB1c2UgdGhpcyBtaXhpbiBpbiBhIGNvbXBvbmVudCwgeW91IG11c3QgYWxzbyBpbmNsdWRlIHRoZVxuLy8vIGBnb3Z1ay1saW5rLWNvbW1vbmAgbWl4aW4gdG8gZ2V0IHRoZSBjb3JyZWN0IGZvY3VzIGFuZCBob3ZlciBzdGF0ZXMuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZ292dWstY29tcG9uZW50X19saW5rIHtcbi8vLyAgICAgQGluY2x1ZGUgZ292dWstbGluay1jb21tb247XG4vLy8gICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstc3R5bGUtbXV0ZWQ7XG4vLy8gICB9XG4vLy9cbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AbWl4aW4gZ292dWstbGluay1zdHlsZS1tdXRlZCB7XG4gICY6bGluayxcbiAgJjp2aXNpdGVkIHtcbiAgICBjb2xvcjogJGdvdnVrLXNlY29uZGFyeS10ZXh0LWNvbG91cjtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGdvdnVrLXRleHQtY29sb3VyO1xuICB9XG5cbiAgLy8gV2hlbiBmb2N1c3NlZCwgdGhlIHRleHQgY29sb3VyIG5lZWRzIHRvIGJlIGRhcmtlciB0byBlbnN1cmUgdGhhdCBjb2xvdXJcbiAgLy8gY29udHJhc3QgaXMgc3RpbGwgYWNjZXB0YWJsZVxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGdvdnVrLWZvY3VzLXRleHQtY29sb3VyO1xuICB9XG5cbiAgLy8gYWxwaGFnb3YvZ292dWtfdGVtcGxhdGUgaW5jbHVkZXMgYSBzcGVjaWZpYyBhOmxpbms6Zm9jdXMgc2VsZWN0b3IgZGVzaWduZWRcbiAgLy8gdG8gbWFrZSB1bnZpc2l0ZWQgbGlua3MgYSBzbGlnaHRseSBkYXJrZXIgYmx1ZSB3aGVuIGZvY3Vzc2VkLCBzbyB3ZSBuZWVkIHRvXG4gIC8vIG92ZXJyaWRlIHRoZSB0ZXh0IGNvbG91ciBmb3IgdGhhdCBjb21iaW5hdGlvbiBvZiBzZWxlY3RvcnMuXG4gIEBpbmNsdWRlIGdvdnVrLWNvbXBhdGliaWxpdHkoZ292dWtfdGVtcGxhdGUpIHtcbiAgICAmOmxpbms6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZ292dWstdGV4dC1jb2xvdXI7XG4gICAgfVxuICB9XG59XG5cbi8vLyBUZXh0IGxpbmsgc3R5bGVzXG4vLy9cbi8vLyBNYWtlcyBsaW5rcyB1c2UgdGhlIHByaW1hcnkgdGV4dCBjb2xvdXIsIGluIGFsbCBzdGF0ZXMuIFVzZSB0aGlzIG1peGluIGZvclxuLy8vIG5hdmlnYXRpb24gY29tcG9uZW50cywgc3VjaCBhcyBicmVhZGNydW1icyBvciB0aGUgYmFjayBsaW5rLlxuLy8vXG4vLy8gSWYgeW91IHVzZSB0aGlzIG1peGluIGluIGEgY29tcG9uZW50LCB5b3UgbXVzdCBhbHNvIGluY2x1ZGUgdGhlXG4vLy8gYGdvdnVrLWxpbmstY29tbW9uYCBtaXhpbiB0byBnZXQgdGhlIGNvcnJlY3QgZm9jdXMgYW5kIGhvdmVyIHN0YXRlcy5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5nb3Z1ay1jb21wb25lbnRfX2xpbmsge1xuLy8vICAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLWNvbW1vbjtcbi8vLyAgICAgQGluY2x1ZGUgZ292dWstbGluay1zdHlsZS10ZXh0O1xuLy8vICAgfVxuLy8vXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLWxpbmstc3R5bGUtdGV4dCB7XG4gICY6bGluayxcbiAgJjp2aXNpdGVkIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay10ZXh0LWNvbG91cjtcbiAgfVxuXG4gIC8vIEZvcmNlIGEgY29sb3VyIGNoYW5nZSBvbiBob3ZlciB0byB3b3JrIGFyb3VuZCBhIGJ1ZyBpbiBTYWZhcmlcbiAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNDQ4M1xuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogcmdiYSgkZ292dWstdGV4dC1jb2xvdXIsIC45OSk7XG4gIH1cblxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgQGluY2x1ZGUgZ292dWstdGV4dC1jb2xvdXI7XG4gIH1cblxuICAvLyBhbHBoYWdvdi9nb3Z1a190ZW1wbGF0ZSBpbmNsdWRlcyBhIHNwZWNpZmljIGE6bGluazpmb2N1cyBzZWxlY3RvciBkZXNpZ25lZFxuICAvLyB0byBtYWtlIHVudmlzaXRlZCBsaW5rcyBhIHNsaWdodGx5IGRhcmtlciBibHVlIHdoZW4gZm9jdXNzZWQsIHNvIHdlIG5lZWQgdG9cbiAgLy8gb3ZlcnJpZGUgdGhlIHRleHQgY29sb3VyIGZvciB0aGF0IGNvbWJpbmF0aW9uIG9mIHNlbGVjdG9ycy5cbiAgQGluY2x1ZGUgZ292dWstY29tcGF0aWJpbGl0eShnb3Z1a190ZW1wbGF0ZSkge1xuICAgICY6bGluazpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBnb3Z1ay10ZXh0LWNvbG91cjtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEludmVyc2UgbGluayBzdHlsZXNcbi8vL1xuLy8vIE1ha2VzIGxpbmtzIHdoaXRlLCBpbiBhbGwgc3RhdGVzLiBVc2UgdGhpcyBtaXhpbiBpZiB5b3UncmUgZGlzcGxheWluZyBsaW5rc1xuLy8vIGFnYWluc3QgYSBkYXJrIGJhY2tncm91bmQuXG4vLy9cbi8vLyBJZiB5b3UgdXNlIHRoaXMgbWl4aW4gaW4gYSBjb21wb25lbnQsIHlvdSBtdXN0IGFsc28gaW5jbHVkZSB0aGVcbi8vLyBgZ292dWstbGluay1jb21tb25gIG1peGluIHRvIGdldCB0aGUgY29ycmVjdCBmb2N1cyBhbmQgaG92ZXIgc3RhdGVzLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmdvdnVrLWNvbXBvbmVudF9fbGluayB7XG4vLy8gICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstY29tbW9uO1xuLy8vICAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLXN0eWxlLWludmVyc2U7XG4vLy8gICB9XG4vLy9cbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AbWl4aW4gZ292dWstbGluay1zdHlsZS1pbnZlcnNlIHtcbiAgJjpsaW5rLFxuICAmOnZpc2l0ZWQge1xuICAgIGNvbG9yOiBnb3Z1ay1jb2xvdXIoXCJ3aGl0ZVwiKTtcbiAgfVxuXG4gIC8vIEZvcmNlIGEgY29sb3VyIGNoYW5nZSBvbiBob3ZlciB0byB3b3JrIGFyb3VuZCBhIGJ1ZyBpbiBTYWZhcmlcbiAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNDQ4M1xuICAmOmhvdmVyLFxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6IHJnYmEoZ292dWstY29sb3VyKFwid2hpdGVcIiksIC45OSk7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGdvdnVrLWZvY3VzLXRleHQtY29sb3VyO1xuICB9XG5cbiAgLy8gYWxwaGFnb3YvZ292dWtfdGVtcGxhdGUgaW5jbHVkZXMgYSBzcGVjaWZpYyBhOmxpbms6Zm9jdXMgc2VsZWN0b3IgZGVzaWduZWRcbiAgLy8gdG8gbWFrZSB1bnZpc2l0ZWQgbGlua3MgYSBzbGlnaHRseSBkYXJrZXIgYmx1ZSB3aGVuIGZvY3Vzc2VkLCBzbyB3ZSBuZWVkIHRvXG4gIC8vIG92ZXJyaWRlIHRoZSB0ZXh0IGNvbG91ciBmb3IgdGhhdCBjb21iaW5hdGlvbiBvZiBzZWxlY3RvcnMuXG4gIEBpbmNsdWRlIGdvdnVrLWNvbXBhdGliaWxpdHkoZ292dWtfdGVtcGxhdGUpIHtcbiAgICAmOmxpbms6Zm9jdXMge1xuICAgICAgY29sb3I6ICRnb3Z1ay1mb2N1cy10ZXh0LWNvbG91cjtcbiAgICB9XG4gIH1cbn1cblxuLy8vIERlZmF1bHQgbGluayBzdHlsZXMsIHdpdGhvdXQgYSB2aXNpdGVkIHN0YXRlXG4vLy9cbi8vLyBNYWtlcyBsaW5rcyB1c2UgdGhlIGRlZmF1bHQgdW52aXNpdGVkLCBob3ZlciBhbmQgYWN0aXZlIGNvbG91cnMsIHdpdGggbm9cbi8vLyBkaXN0aW5jdCB2aXNpdGVkIHN0YXRlLlxuLy8vXG4vLy8gVXNlIHRoaXMgbWl4aW4gd2hlbiBpdCdzIG5vdCBoZWxwZnVsIHRvIGRpc3Rpbmd1aXNoIGJldHdlZW4gdmlzaXRlZCBhbmRcbi8vLyBub24tdmlzaXRlZCBsaW5rcy4gRm9yIGV4YW1wbGUsIHdoZW4geW91IGxpbmsgdG8gcGFnZXMgd2l0aFxuLy8vIGZyZXF1ZW50bHktY2hhbmdpbmcgY29udGVudCwgc3VjaCBhcyB0aGUgZGFzaGJvYXJkIGZvciBhbiBhZG1pbiBpbnRlcmZhY2UuXG4vLy9cbi8vLyBJZiB5b3UgdXNlIHRoaXMgbWl4aW4gaW4gYSBjb21wb25lbnQsIHlvdSBtdXN0IGFsc28gaW5jbHVkZSB0aGVcbi8vLyBgZ292dWstbGluay1jb21tb25gIG1peGluIHRvIGdldCB0aGUgY29ycmVjdCBmb2N1cyBhbmQgaG92ZXIgc3RhdGVzLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmdvdnVrLWNvbXBvbmVudF9fbGluayB7XG4vLy8gICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstY29tbW9uO1xuLy8vICAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLXN0eWxlLW5vLXZpc2l0ZWQtc3RhdGU7XG4vLy8gICB9XG4vLy9cbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AbWl4aW4gZ292dWstbGluay1zdHlsZS1uby12aXNpdGVkLXN0YXRlIHtcbiAgJjpsaW5rIHtcbiAgICBjb2xvcjogJGdvdnVrLWxpbmstY29sb3VyO1xuICB9XG5cbiAgJjp2aXNpdGVkIHtcbiAgICBjb2xvcjogJGdvdnVrLWxpbmstY29sb3VyO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRnb3Z1ay1saW5rLWhvdmVyLWNvbG91cjtcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGdvdnVrLWxpbmstYWN0aXZlLWNvbG91cjtcbiAgfVxuXG4gIC8vIFdoZW4gZm9jdXNzZWQsIHRoZSB0ZXh0IGNvbG91ciBuZWVkcyB0byBiZSBkYXJrZXIgdG8gZW5zdXJlIHRoYXQgY29sb3VyXG4gIC8vIGNvbnRyYXN0IGlzIHN0aWxsIGFjY2VwdGFibGVcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRnb3Z1ay1mb2N1cy10ZXh0LWNvbG91cjtcbiAgfVxufVxuXG4vLy8gUmVtb3ZlIHVuZGVybGluZSBmcm9tIGxpbmtzXG4vLy9cbi8vLyBSZW1vdmUgdW5kZXJsaW5lcyBmcm9tIGxpbmtzIHVubGVzcyB0aGUgbGluayBpcyBhY3RpdmUgb3IgYSB1c2VyIGhvdmVyc1xuLy8vIHRoZWlyIGN1cnNvciBvdmVyIGl0LiBUaGlzIGhhcyBubyBlZmZlY3QgaW4gSW50ZXJuZXQgRXhwbG9yZXIgOCAoSUU4KSxcbi8vLyBiZWNhdXNlIElFOCBkb2VzIG5vdCBzdXBwb3J0IGA6bm90YC5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5nb3Z1ay1jb21wb25lbnRfX2xpbmsge1xuLy8vICAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLWNvbW1vbjtcbi8vLyAgICAgQGluY2x1ZGUgZ292dWstbGluay1zdHlsZS1kZWZhdWx0O1xuLy8vICAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLXN0eWxlLW5vLXVuZGVybGluZTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay1saW5rLXN0eWxlLW5vLXVuZGVybGluZSB7XG4gICY6bm90KDpob3Zlcik6bm90KDphY3RpdmUpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuLy8vIEluY2x1ZGUgbGluayBkZXN0aW5hdGlvbiB3aGVuIHByaW50aW5nIHRoZSBwYWdlXG4vLy9cbi8vLyBJZiB0aGUgdXNlciBwcmludHMgdGhlIHBhZ2UsIGFkZCB0aGUgZGVzdGluYXRpb24gVVJMIGFmdGVyIHRoZSBsaW5rIHRleHQsIGlmXG4vLy8gdGhlIFVSTCBzdGFydHMgd2l0aCBgL2AsIGBodHRwOi8vYCBvciBgaHR0cHM6Ly9gLlxuLy8vXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLWxpbmstcHJpbnQtZnJpZW5kbHkge1xuICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkbWVkaWEtdHlwZTogcHJpbnQpIHtcbiAgICAmW2hyZWZePVwiL1wiXSxcbiAgICAmW2hyZWZePVwiaHR0cDovL1wiXSxcbiAgICAmW2hyZWZePVwiaHR0cHM6Ly9cIl0ge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICAgICAgICBmb250LXNpemU6IDkwJTtcblxuICAgICAgICAvLyBCZWNhdXNlIHRoZSBVUkxzIG1heSBiZSB2ZXJ5IGxvbmcsIGVuc3VyZSB0aGF0IHRoZXkgbWF5IGJlIGJyb2tlblxuICAgICAgICAvLyBhdCBhcmJpdHJhcnkgcG9pbnRzIGlmIHRoZXJlIGFyZSBubyBvdGhlcndpc2UgYWNjZXB0YWJsZSBicmVha1xuICAgICAgICAvLyBwb2ludHMgaW4gdGhlIGxpbmVcbiAgICAgICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8vL1xuLy8vIEBncm91cCBoZWxwZXJzXG4vLy8vXG5cbkBpbXBvcnQgXCIuLi90b29scy9leHBvcnRzXCI7XG5cbi8vLyBGb250IEZhY2UgLSBHRFMgVHJhbnNwb3J0XG4vLy9cbi8vLyBPdXRwdXRzIHRoZSBmb250LWZhY2UgZGVjbGFyYXRpb24gZm9yIEdEUyBUcmFuc3BvcnQgYXQgdGhlIHJvb3Qgb2YgdGhlIENTUyBkb2N1bWVudFxuLy8vIHRoZSBmaXJzdCB0aW1lIGl0IGlzIGNhbGxlZC5cbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuXG5AbWl4aW4gX2dvdnVrLWZvbnQtZmFjZS1nZHMtdHJhbnNwb3J0IHtcbiAgQGluY2x1ZGUgZ292dWstbm90LWllOCB7IC8vIEluIElFOCwgd2hpY2ggY2Fubm90IHJlbmRlciBXT0ZGIGZvcm1hdCwgd2UgZmFsbCBiYWNrIHRvIHN5c3RlbSBmb250c1xuICAgIEBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9oZWxwZXJzL2ZvbnQtZmFjZXNcIikge1xuICAgICAgQGF0LXJvb3Qge1xuICAgICAgICAvKiEgQ29weXJpZ2h0IChjKSAyMDExIGJ5IE1hcmdhcmV0IENhbHZlcnQgJiBIZW5yaWsgS3ViZWwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoZSBmb250IGhhcyBiZWVuIGN1c3RvbWlzZWQgZm9yIGV4Y2x1c2l2ZSB1c2Ugb24gZ292LnVrLiBUaGlzIGN1dCBpcyBub3QgY29tbWVyY2lhbGx5IGF2YWlsYWJsZS4gKi8gLyogc3R5bGVsaW50LWRpc2FibGUtbGluZSBzY3NzL2NvbW1lbnQtbm8tbG91ZCAgKi9cbiAgICAgICAgQGZvbnQtZmFjZSB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiR0RTIFRyYW5zcG9ydFwiO1xuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgIHNyYzpcbiAgICAgICAgICAgIGdvdnVrLWZvbnQtdXJsKFwibGlnaHQtOTRhMDdlMDZhMS12Mi53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICAgICAgICAgIGdvdnVrLWZvbnQtdXJsKFwibGlnaHQtZjU5MWIxM2Y3ZC12Mi53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gICAgICAgICAgZm9udC1kaXNwbGF5OiBmYWxsYmFjaztcbiAgICAgICAgfVxuXG4gICAgICAgIEBmb250LWZhY2Uge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkdEUyBUcmFuc3BvcnRcIjtcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgc3JjOlxuICAgICAgICAgICAgZ292dWstZm9udC11cmwoXCJib2xkLWI1NDJiZWIyNzQtdjIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgICAgICAgICBnb3Z1ay1mb250LXVybChcImJvbGQtYWZmYTk2NTcxZC12Mi53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gICAgICAgICAgZm9udC1kaXNwbGF5OiBmYWxsYmFjaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gbXEoKSB2NC4wLjJcbi8vIHNhc3MtbXEvc2Fzcy1tcVxuXG5AY2hhcnNldCBcIlVURi04XCI7IC8vIEZpeGVzIGFuIGlzc3VlIHdoZXJlIFJ1YnkgbG9jYWxlIGlzIG5vdCBzZXQgcHJvcGVybHlcbiAgICAgICAgICAgICAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xL3B1bGwvMTBcblxuLy8vIEJhc2UgZm9udCBzaXplIG9uIHRoZSBgPGJvZHk+YCBlbGVtZW50XG4vLy8gQHR5cGUgTnVtYmVyICh1bml0KVxuJG1xLWJhc2UtZm9udC1zaXplOiAxNnB4ICFkZWZhdWx0O1xuXG4vLy8gUmVzcG9uc2l2ZSBtb2RlXG4vLy9cbi8vLyBTZXQgdG8gYGZhbHNlYCB0byBlbmFibGUgc3VwcG9ydCBmb3IgYnJvd3NlcnMgdGhhdCBkbyBub3Qgc3VwcG9ydCBAbWVkaWEgcXVlcmllcyxcbi8vLyAoSUUgPD0gOCwgRmlyZWZveCA8PSAzLCBPcGVyYSA8PSA5KVxuLy8vXG4vLy8gWW91IGNvdWxkIGNyZWF0ZSBhIHN0eWxlc2hlZXQgc2VydmVkIGV4Y2x1c2l2ZWx5IHRvIG9sZGVyIGJyb3dzZXJzLFxuLy8vIHdoZXJlIEBtZWRpYSBxdWVyaWVzIGFyZSByYXN0ZXJpemVkXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIC8vIG9sZC1pZS5zY3NzXG4vLy8gICRtcS1yZXNwb25zaXZlOiBmYWxzZTtcbi8vLyAgQGltcG9ydCAnbWFpbic7IC8vIEBtZWRpYSBxdWVyaWVzIGluIHRoaXMgZmlsZSB3aWxsIGJlIHJhc3Rlcml6ZWQgdXAgdG8gJG1xLXN0YXRpYy1icmVha3BvaW50XG4vLy8gICAgICAgICAgICAgICAgICAgLy8gbGFyZ2VyIGJyZWFrcG9pbnRzIHdpbGwgYmUgaWdub3JlZFxuLy8vXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjcmVzcG9uc2l2ZS1tb2RlLW9mZiBEaXNhYmxlZCByZXNwb25zaXZlIG1vZGUgZG9jdW1lbnRhdGlvblxuJG1xLXJlc3BvbnNpdmU6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCcmVha3BvaW50IGxpc3Rcbi8vL1xuLy8vIE5hbWUgeW91ciBicmVha3BvaW50cyBpbiBhIHdheSB0aGF0IGNyZWF0ZXMgYSB1YmlxdWl0b3VzIGxhbmd1YWdlXG4vLy8gYWNyb3NzIHRlYW0gbWVtYmVycy4gSXQgd2lsbCBpbXByb3ZlIGNvbW11bmljYXRpb24gYmV0d2VlblxuLy8vIHN0YWtlaG9sZGVycywgZGVzaWduZXJzLCBkZXZlbG9wZXJzLCBhbmQgdGVzdGVycy5cbi8vL1xuLy8vIEB0eXBlIE1hcFxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjc2VlaW5nLXRoZS1jdXJyZW50bHktYWN0aXZlLWJyZWFrcG9pbnQgRnVsbCBkb2N1bWVudGF0aW9uIGFuZCBleGFtcGxlc1xuJG1xLWJyZWFrcG9pbnRzOiAoXG4gICAgbW9iaWxlOiAgMzIwcHgsXG4gICAgdGFibGV0OiAgNzQwcHgsXG4gICAgZGVza3RvcDogOTgwcHgsXG4gICAgd2lkZTogICAgMTMwMHB4XG4pICFkZWZhdWx0O1xuXG4vLy8gU3RhdGljIGJyZWFrcG9pbnQgKGZvciBmaXhlZC13aWR0aCBsYXlvdXRzKVxuLy8vXG4vLy8gRGVmaW5lIHRoZSBicmVha3BvaW50IGZyb20gJG1xLWJyZWFrcG9pbnRzIHRoYXQgc2hvdWxkXG4vLy8gYmUgdXNlZCBhcyB0aGUgdGFyZ2V0IHdpZHRoIGZvciB0aGUgZml4ZWQtd2lkdGggbGF5b3V0XG4vLy8gKGkuZS4gd2hlbiAkbXEtcmVzcG9uc2l2ZSBpcyBzZXQgdG8gJ2ZhbHNlJykgaW4gYSBvbGQtaWUuc2Nzc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAvLyB0YWJsZXQtb25seS5zY3NzXG4vLy8gIC8vXG4vLy8gIC8vIElnbm9yZSBhbGwgc3R5bGVzIGFib3ZlIHRhYmxldCBicmVha3BvaW50LFxuLy8vICAvLyBhbmQgZml4IHRoZSBzdHlsZXMgKGUuZy4gbGF5b3V0KSBhdCB0YWJsZXQgd2lkdGhcbi8vLyAgJG1xLXJlc3BvbnNpdmU6IGZhbHNlO1xuLy8vICAkbXEtc3RhdGljLWJyZWFrcG9pbnQ6IHRhYmxldDtcbi8vLyAgQGltcG9ydCAnbWFpbic7IC8vIEBtZWRpYSBxdWVyaWVzIGluIHRoaXMgZmlsZSB3aWxsIGJlIHJhc3Rlcml6ZWQgdXAgdG8gdGFibGV0XG4vLy8gICAgICAgICAgICAgICAgICAgLy8gbGFyZ2VyIGJyZWFrcG9pbnRzIHdpbGwgYmUgaWdub3JlZFxuLy8vXG4vLy8gQHR5cGUgU3RyaW5nXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNhZGRpbmctY3VzdG9tLWJyZWFrcG9pbnRzIEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcbiRtcS1zdGF0aWMtYnJlYWtwb2ludDogZGVza3RvcCAhZGVmYXVsdDtcblxuLy8vIFNob3cgYnJlYWtwb2ludHMgaW4gdGhlIHRvcCByaWdodCBjb3JuZXJcbi8vL1xuLy8vIElmIHlvdSB3YW50IHRvIGRpc3BsYXkgdGhlIGN1cnJlbnRseSBhY3RpdmUgYnJlYWtwb2ludCBpbiB0aGUgdG9wXG4vLy8gcmlnaHQgY29ybmVyIG9mIHlvdXIgc2l0ZSBkdXJpbmcgZGV2ZWxvcG1lbnQsIGFkZCB0aGUgYnJlYWtwb2ludHNcbi8vLyB0byB0aGlzIGxpc3QsIG9yZGVyZWQgYnkgd2lkdGgsIGUuZy4gKG1vYmlsZSwgdGFibGV0LCBkZXNrdG9wKS5cbi8vL1xuLy8vIEB0eXBlIG1hcFxuJG1xLXNob3ctYnJlYWtwb2ludHM6ICgpICFkZWZhdWx0O1xuXG4vLy8gQ3VzdG9taXplIHRoZSBtZWRpYSB0eXBlIChlLmcuIGBAbWVkaWEgc2NyZWVuYCBvciBgQG1lZGlhIHByaW50YClcbi8vLyBCeSBkZWZhdWx0IHNhc3MtbXEgdXNlcyBhbiBcImFsbFwiIG1lZGlhIHR5cGUgKGBAbWVkaWEgYWxsIGFuZCDigKZgKVxuLy8vXG4vLy8gQHR5cGUgU3RyaW5nXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNjaGFuZ2luZy1tZWRpYS10eXBlIEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcbiRtcS1tZWRpYS10eXBlOiBhbGwgIWRlZmF1bHQ7XG5cbi8vLyBDb252ZXJ0IHBpeGVscyB0byBlbXNcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcHggLSB2YWx1ZSB0byBjb252ZXJ0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlLWZvbnQtc2l6ZSAoJG1xLWJhc2UtZm9udC1zaXplKSAtIGA8Ym9keT5gIGZvbnQgc2l6ZVxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAkZm9udC1zaXplLWluLWVtczogbXEtcHgyZW0oMTZweCk7XG4vLy8gIHAgeyBmb250LXNpemU6IG1xLXB4MmVtKDE2cHgpOyB9XG4vLy9cbi8vLyBAcmVxdWlyZXMgJG1xLWJhc2UtZm9udC1zaXplXG4vLy8gQHJldHVybnMge051bWJlcn1cbkBmdW5jdGlvbiBtcS1weDJlbSgkcHgsICRiYXNlLWZvbnQtc2l6ZTogJG1xLWJhc2UtZm9udC1zaXplKSB7XG4gICAgQGlmIHVuaXRsZXNzKCRweCkge1xuICAgICAgICBAd2FybiBcIkFzc3VtaW5nICN7JHB4fSB0byBiZSBpbiBwaXhlbHMsIGF0dGVtcHRpbmcgdG8gY29udmVydCBpdCBpbnRvIHBpeGVscy5cIjtcbiAgICAgICAgQHJldHVybiBtcS1weDJlbSgkcHggKiAxcHgsICRiYXNlLWZvbnQtc2l6ZSk7XG4gICAgfSBAZWxzZSBpZiB1bml0KCRweCkgPT0gZW0ge1xuICAgICAgICBAcmV0dXJuICRweDtcbiAgICB9XG4gICAgQHJldHVybiAoJHB4IC8gJGJhc2UtZm9udC1zaXplKSAqIDFlbTtcbn1cblxuLy8vIEdldCBhIGJyZWFrcG9pbnQncyB3aWR0aFxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gTmFtZSBvZiB0aGUgYnJlYWtwb2ludC4gT25lIG9mICRtcS1icmVha3BvaW50c1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAkdGFibGV0LXdpZHRoOiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aCh0YWJsZXQpO1xuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoZGVza3RvcCkpIHt9XG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFZhbHVlIGluIHBpeGVsc1xuQGZ1bmN0aW9uIG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cykge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRuYW1lKSB7XG4gICAgICAgIEByZXR1cm4gbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICAgQHdhcm4gXCJCcmVha3BvaW50ICN7JG5hbWV9IHdhc24ndCBmb3VuZCBpbiAkYnJlYWtwb2ludHMuXCI7XG4gICAgfVxufVxuXG4vLy8gTWVkaWEgUXVlcnkgbWl4aW5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nIHwgQm9vbGVhbn0gJGZyb20gKGZhbHNlKSAtIE9uZSBvZiAkbXEtYnJlYWtwb2ludHNcbi8vLyBAcGFyYW0ge1N0cmluZyB8IEJvb2xlYW59ICR1bnRpbCAoZmFsc2UpIC0gT25lIG9mICRtcS1icmVha3BvaW50c1xuLy8vIEBwYXJhbSB7U3RyaW5nIHwgQm9vbGVhbn0gJGFuZCAoZmFsc2UpIC0gQWRkaXRpb25hbCBtZWRpYSBxdWVyeSBwYXJhbWV0ZXJzXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtZWRpYS10eXBlICgkbXEtbWVkaWEtdHlwZSkgLSBNZWRpYSB0eXBlOiBzY3JlZW4sIHByaW504oCmXG4vLy9cbi8vLyBAaWdub3JlIFVuZG9jdW1lbnRlZCBBUEksIGZvciBhZHZhbmNlZCB1c2Ugb25seTpcbi8vLyBAaWdub3JlIEBwYXJhbSB7TWFwfSAkYnJlYWtwb2ludHMgKCRtcS1icmVha3BvaW50cylcbi8vLyBAaWdub3JlIEBwYXJhbSB7U3RyaW5nfSAkc3RhdGljLWJyZWFrcG9pbnQgKCRtcS1zdGF0aWMtYnJlYWtwb2ludClcbi8vL1xuLy8vIEBjb250ZW50IHN0eWxpbmcgcnVsZXMsIHdyYXBwZWQgaW50byBhIEBtZWRpYSBxdWVyeSB3aGVuICRyZXNwb25zaXZlIGlzIHRydWVcbi8vL1xuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1tZWRpYS10eXBlXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLWJyZWFrcG9pbnRzXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLXN0YXRpYy1icmVha3BvaW50XG4vLy8gQHJlcXVpcmVzIHtmdW5jdGlvbn0gbXEtcHgyZW1cbi8vLyBAcmVxdWlyZXMge2Z1bmN0aW9ufSBtcS1nZXQtYnJlYWtwb2ludC13aWR0aFxuLy8vXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNyZXNwb25zaXZlLW1vZGUtb24tZGVmYXVsdCBGdWxsIGRvY3VtZW50YXRpb24gYW5kIGV4YW1wbGVzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIC5lbGVtZW50IHtcbi8vLyAgICBAaW5jbHVkZSBtcSgkZnJvbTogbW9iaWxlKSB7XG4vLy8gICAgICBjb2xvcjogcmVkO1xuLy8vICAgIH1cbi8vLyAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHRhYmxldCkge1xuLy8vICAgICAgY29sb3I6IGJsdWU7XG4vLy8gICAgfVxuLy8vICAgIEBpbmNsdWRlIG1xKG1vYmlsZSwgdGFibGV0KSB7XG4vLy8gICAgICBjb2xvcjogZ3JlZW47XG4vLy8gICAgfVxuLy8vICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQsICRhbmQ6ICcob3JpZW50YXRpb246IGxhbmRzY2FwZSknKSB7XG4vLy8gICAgICBjb2xvcjogdGVhbDtcbi8vLyAgICB9XG4vLy8gICAgQGluY2x1ZGUgbXEoOTUwcHgpIHtcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xuLy8vICAgIH1cbi8vLyAgICBAaW5jbHVkZSBtcSh0YWJsZXQsICRtZWRpYS10eXBlOiBzY3JlZW4pIHtcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xuLy8vICAgIH1cbi8vLyAgICAvLyBBZHZhbmNlZCB1c2U6XG4vLy8gICAgJG15LWJyZWFrcG9pbnRzOiAoTDogOTAwcHgsIFhMOiAxMjAwcHgpO1xuLy8vICAgIEBpbmNsdWRlIG1xKEwsICRicmVha3BvaW50czogJG15LWJyZWFrcG9pbnRzLCAkc3RhdGljLWJyZWFrcG9pbnQ6IEwpIHtcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xuLy8vICAgIH1cbi8vLyAgfVxuQG1peGluIG1xKFxuICAgICRmcm9tOiBmYWxzZSxcbiAgICAkdW50aWw6IGZhbHNlLFxuICAgICRhbmQ6IGZhbHNlLFxuICAgICRtZWRpYS10eXBlOiAkbXEtbWVkaWEtdHlwZSxcbiAgICAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cyxcbiAgICAkcmVzcG9uc2l2ZTogJG1xLXJlc3BvbnNpdmUsXG4gICAgJHN0YXRpYy1icmVha3BvaW50OiAkbXEtc3RhdGljLWJyZWFrcG9pbnRcbikge1xuICAgICRtaW4td2lkdGg6IDA7XG4gICAgJG1heC13aWR0aDogMDtcbiAgICAkbWVkaWEtcXVlcnk6ICcnO1xuXG4gICAgLy8gRnJvbTogdGhpcyBicmVha3BvaW50IChpbmNsdXNpdmUpXG4gICAgQGlmICRmcm9tIHtcbiAgICAgICAgQGlmIHR5cGUtb2YoJGZyb20pID09IG51bWJlciB7XG4gICAgICAgICAgICAkbWluLXdpZHRoOiBtcS1weDJlbSgkZnJvbSk7XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgJG1pbi13aWR0aDogbXEtcHgyZW0obXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoJGZyb20sICRicmVha3BvaW50cykpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gVW50aWw6IHRoYXQgYnJlYWtwb2ludCAoZXhjbHVzaXZlKVxuICAgIEBpZiAkdW50aWwge1xuICAgICAgICBAaWYgdHlwZS1vZigkdW50aWwpID09IG51bWJlciB7XG4gICAgICAgICAgICAkbWF4LXdpZHRoOiBtcS1weDJlbSgkdW50aWwpO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICRtYXgtd2lkdGg6IG1xLXB4MmVtKG1xLWdldC1icmVha3BvaW50LXdpZHRoKCR1bnRpbCwgJGJyZWFrcG9pbnRzKSkgLSAuMDFlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgc3VwcG9ydCBpcyBkaXNhYmxlZCwgcmFzdGVyaXplIHRoZSBvdXRwdXQgb3V0c2lkZSBAbWVkaWEgYmxvY2tzXG4gICAgLy8gVGhlIGJyb3dzZXIgd2lsbCByZWx5IG9uIHRoZSBjYXNjYWRlIGl0c2VsZi5cbiAgICBAaWYgJHJlc3BvbnNpdmUgPT0gZmFsc2Uge1xuICAgICAgICAkc3RhdGljLWJyZWFrcG9pbnQtd2lkdGg6IG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRzdGF0aWMtYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcbiAgICAgICAgJHRhcmdldC13aWR0aDogbXEtcHgyZW0oJHN0YXRpYy1icmVha3BvaW50LXdpZHRoKTtcblxuICAgICAgICAvLyBPdXRwdXQgb25seSBydWxlcyB0aGF0IHN0YXJ0IGF0IG9yIHNwYW4gb3VyIHRhcmdldCB3aWR0aFxuICAgICAgICBAaWYgKFxuICAgICAgICAgICAgJGFuZCA9PSBmYWxzZVxuICAgICAgICAgICAgYW5kICRtaW4td2lkdGggPD0gJHRhcmdldC13aWR0aFxuICAgICAgICAgICAgYW5kIChcbiAgICAgICAgICAgICAgICAkdW50aWwgPT0gZmFsc2Ugb3IgJG1heC13aWR0aCA+PSAkdGFyZ2V0LXdpZHRoXG4gICAgICAgICAgICApXG4gICAgICAgICAgICBhbmQgJG1lZGlhLXR5cGUgIT0gJ3ByaW50J1xuICAgICAgICApIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSBzdXBwb3J0IGlzIGVuYWJsZWQsIG91dHB1dCBydWxlcyBpbnNpZGUgQG1lZGlhIHF1ZXJpZXNcbiAgICBAZWxzZSB7XG4gICAgICAgIEBpZiAkbWluLXdpZHRoICE9IDAgeyAkbWVkaWEtcXVlcnk6ICcjeyRtZWRpYS1xdWVyeX0gYW5kIChtaW4td2lkdGg6ICN7JG1pbi13aWR0aH0pJzsgfVxuICAgICAgICBAaWYgJG1heC13aWR0aCAhPSAwIHsgJG1lZGlhLXF1ZXJ5OiAnI3skbWVkaWEtcXVlcnl9IGFuZCAobWF4LXdpZHRoOiAjeyRtYXgtd2lkdGh9KSc7IH1cbiAgICAgICAgQGlmICRhbmQgICAgICAgICAgICB7ICRtZWRpYS1xdWVyeTogJyN7JG1lZGlhLXF1ZXJ5fSBhbmQgI3skYW5kfSc7IH1cblxuICAgICAgICAvLyBSZW1vdmUgdW5uZWNlc3NhcnkgbWVkaWEgcXVlcnkgcHJlZml4ICdhbGwgYW5kICdcbiAgICAgICAgQGlmICgkbWVkaWEtdHlwZSA9PSAnYWxsJyBhbmQgJG1lZGlhLXF1ZXJ5ICE9ICcnKSB7XG4gICAgICAgICAgICAkbWVkaWEtdHlwZTogJyc7XG4gICAgICAgICAgICAkbWVkaWEtcXVlcnk6IHN0ci1zbGljZSh1bnF1b3RlKCRtZWRpYS1xdWVyeSksIDYpO1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhICN7JG1lZGlhLXR5cGUgKyAkbWVkaWEtcXVlcnl9IHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLy8gUXVpY2sgc29ydFxuLy8vXG4vLy8gQGF1dGhvciBTYW0gUmljaGFyZHNcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLyBAcGFyYW0ge0xpc3R9ICRsaXN0IC0gTGlzdCB0byBzb3J0XG4vLy8gQHJldHVybnMge0xpc3R9IFNvcnRlZCBMaXN0XG5AZnVuY3Rpb24gX21xLXF1aWNrLXNvcnQoJGxpc3QpIHtcbiAgICAkbGVzczogICgpO1xuICAgICRlcXVhbDogKCk7XG4gICAgJGxhcmdlOiAoKTtcblxuICAgIEBpZiBsZW5ndGgoJGxpc3QpID4gMSB7XG4gICAgICAgICRzZWVkOiBudGgoJGxpc3QsIGNlaWwobGVuZ3RoKCRsaXN0KSAvIDIpKTtcblxuICAgICAgICBAZWFjaCAkaXRlbSBpbiAkbGlzdCB7XG4gICAgICAgICAgICBAaWYgKCRpdGVtID09ICRzZWVkKSB7XG4gICAgICAgICAgICAgICAgJGVxdWFsOiBhcHBlbmQoJGVxdWFsLCAkaXRlbSk7XG4gICAgICAgICAgICB9IEBlbHNlIGlmICgkaXRlbSA8ICRzZWVkKSB7XG4gICAgICAgICAgICAgICAgJGxlc3M6IGFwcGVuZCgkbGVzcywgJGl0ZW0pO1xuICAgICAgICAgICAgfSBAZWxzZSBpZiAoJGl0ZW0gPiAkc2VlZCkge1xuICAgICAgICAgICAgICAgICRsYXJnZTogYXBwZW5kKCRsYXJnZSwgJGl0ZW0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQHJldHVybiBqb2luKGpvaW4oX21xLXF1aWNrLXNvcnQoJGxlc3MpLCAkZXF1YWwpLCBfbXEtcXVpY2stc29ydCgkbGFyZ2UpKTtcbiAgICB9XG5cbiAgICBAcmV0dXJuICRsaXN0O1xufVxuXG4vLy8gU29ydCBhIG1hcCBieSB2YWx1ZXMgKHdvcmtzIHdpdGggbnVtYmVycyBvbmx5KVxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gc29ydFxuLy8vIEByZXR1cm5zIHtNYXB9IE1hcCBzb3J0ZWQgYnkgdmFsdWVcbkBmdW5jdGlvbiBfbXEtbWFwLXNvcnQtYnktdmFsdWUoJG1hcCkge1xuICAgICRtYXAtc29ydGVkOiAoKTtcbiAgICAkbWFwLWtleXM6IG1hcC1rZXlzKCRtYXApO1xuICAgICRtYXAtdmFsdWVzOiBtYXAtdmFsdWVzKCRtYXApO1xuICAgICRtYXAtdmFsdWVzLXNvcnRlZDogX21xLXF1aWNrLXNvcnQoJG1hcC12YWx1ZXMpO1xuXG4gICAgLy8gUmVvcmRlciBrZXkvdmFsdWUgcGFpcnMgYmFzZWQgb24ga2V5IHZhbHVlc1xuICAgIEBlYWNoICR2YWx1ZSBpbiAkbWFwLXZhbHVlcy1zb3J0ZWQge1xuICAgICAgICAkaW5kZXg6IGluZGV4KCRtYXAtdmFsdWVzLCAkdmFsdWUpO1xuICAgICAgICAka2V5OiBudGgoJG1hcC1rZXlzLCAkaW5kZXgpO1xuICAgICAgICAkbWFwLXNvcnRlZDogbWFwLW1lcmdlKCRtYXAtc29ydGVkLCAoJGtleTogJHZhbHVlKSk7XG5cbiAgICAgICAgLy8gVW5zZXQgdGhlIHZhbHVlIGluICRtYXAtdmFsdWVzIHRvIHByZXZlbnQgdGhlIGxvb3BcbiAgICAgICAgLy8gZnJvbSBmaW5kaW5nIHRoZSBzYW1lIGluZGV4IHR3aWNlXG4gICAgICAgICRtYXAtdmFsdWVzOiBzZXQtbnRoKCRtYXAtdmFsdWVzLCAkaW5kZXgsIDApO1xuICAgIH1cblxuICAgIEByZXR1cm4gJG1hcC1zb3J0ZWQ7XG59XG5cbi8vLyBBZGQgYSBicmVha3BvaW50XG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBOYW1lIG9mIHRoZSBicmVha3BvaW50XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCAtIFdpZHRoIG9mIHRoZSBicmVha3BvaW50XG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgQGluY2x1ZGUgbXEtYWRkLWJyZWFrcG9pbnQodHZzY3JlZW4sIDE5MjBweCk7XG4vLy8gIEBpbmNsdWRlIG1xKHR2c2NyZWVuKSB7fVxuQG1peGluIG1xLWFkZC1icmVha3BvaW50KCRuYW1lLCAkd2lkdGgpIHtcbiAgICAkbmV3LWJyZWFrcG9pbnQ6ICgkbmFtZTogJHdpZHRoKTtcbiAgICAkbXEtYnJlYWtwb2ludHM6IG1hcC1tZXJnZSgkbXEtYnJlYWtwb2ludHMsICRuZXctYnJlYWtwb2ludCkgIWdsb2JhbDtcbiAgICAkbXEtYnJlYWtwb2ludHM6IF9tcS1tYXAtc29ydC1ieS12YWx1ZSgkbXEtYnJlYWtwb2ludHMpICFnbG9iYWw7XG59XG5cbi8vLyBTaG93IHRoZSBhY3RpdmUgYnJlYWtwb2ludCBpbiB0aGUgdG9wIHJpZ2h0IGNvcm5lciBvZiB0aGUgdmlld3BvcnRcbi8vLyBAbGluayBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xI3NlZWluZy10aGUtY3VycmVudGx5LWFjdGl2ZS1icmVha3BvaW50XG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICRzaG93LWJyZWFrcG9pbnRzICgkbXEtc2hvdy1icmVha3BvaW50cykgLSBMaXN0IG9mIGJyZWFrcG9pbnRzIHRvIHNob3cgaW4gdGhlIHRvcCByaWdodCBjb3JuZXJcbi8vLyBAcGFyYW0ge01hcH0gJGJyZWFrcG9pbnRzICgkbXEtYnJlYWtwb2ludHMpIC0gQnJlYWtwb2ludCBuYW1lcyBhbmQgc2l6ZXNcbi8vL1xuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1icmVha3BvaW50c1xuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1zaG93LWJyZWFrcG9pbnRzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIC8vIFNob3cgYnJlYWtwb2ludHMgdXNpbmcgZ2xvYmFsIHNldHRpbmdzXG4vLy8gIEBpbmNsdWRlIG1xLXNob3ctYnJlYWtwb2ludHM7XG4vLy9cbi8vLyAgLy8gU2hvdyBicmVha3BvaW50cyB1c2luZyBjdXN0b20gc2V0dGluZ3Ncbi8vLyAgQGluY2x1ZGUgbXEtc2hvdy1icmVha3BvaW50cygoTCwgWEwpLCAoUzogMzAwcHgsIEw6IDgwMHB4LCBYTDogMTIwMHB4KSk7XG5AbWl4aW4gbXEtc2hvdy1icmVha3BvaW50cygkc2hvdy1icmVha3BvaW50czogJG1xLXNob3ctYnJlYWtwb2ludHMsICRicmVha3BvaW50czogJG1xLWJyZWFrcG9pbnRzKSB7XG4gICAgYm9keTpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkNGOEUzO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0ZCRUVENTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjRkJFRUQ1O1xuICAgICAgICBjb2xvcjogI0MwOTg1MztcbiAgICAgICAgZm9udDogc21hbGwtY2FwdGlvbjtcbiAgICAgICAgcGFkZGluZzogM3B4IDZweDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgei1pbmRleDogMTAwO1xuXG4gICAgICAgIC8vIExvb3AgdGhyb3VnaCB0aGUgYnJlYWtwb2ludHMgdGhhdCBzaG91bGQgYmUgc2hvd25cbiAgICAgICAgQGVhY2ggJHNob3ctYnJlYWtwb2ludCBpbiAkc2hvdy1icmVha3BvaW50cyB7XG4gICAgICAgICAgICAkd2lkdGg6IG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRzaG93LWJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgkc2hvdy1icmVha3BvaW50LCAkYnJlYWtwb2ludHM6ICRicmVha3BvaW50cykge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiI3skc2hvdy1icmVha3BvaW50fSDiiaUgI3skd2lkdGh9ICgje21xLXB4MmVtKCR3aWR0aCl9KVwiO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AaWYgbGVuZ3RoKCRtcS1zaG93LWJyZWFrcG9pbnRzKSA+IDAge1xuICAgIEBpbmNsdWRlIG1xLXNob3ctYnJlYWtwb2ludHM7XG59XG4iLCIvLy8vXG4vLy8gQGdyb3VwIGhlbHBlcnMvYWNjZXNzaWJpbGl0eVxuLy8vL1xuXG4vLy8gRm9jdXNlZCB0ZXh0XG4vLy9cbi8vLyBQcm92aWRlcyBhbiBvdXRsaW5lIHRvIGNsZWFybHkgaW5kaWNhdGUgd2hlbiB0aGUgdGFyZ2V0IGVsZW1lbnQgaXMgZm9jdXNlZC5cbi8vLyBVc2VkIGZvciBpbnRlcmFjdGl2ZSB0ZXh0LWJhc2VkIGVsZW1lbnRzLlxuLy8vXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLWZvY3VzZWQtdGV4dCB7XG4gIC8vIFdoZW4gY29sb3VycyBhcmUgb3ZlcnJpZGRlbiwgZm9yIGV4YW1wbGUgd2hlbiB1c2VycyBoYXZlIGEgZGFyayBtb2RlLFxuICAvLyBiYWNrZ3JvdW5kcyBhbmQgYm94LXNoYWRvd3MgZGlzYXBwZWFyLCBzbyB3ZSBuZWVkIHRvIGVuc3VyZSB0aGVyZSdzIGFcbiAgLy8gdHJhbnNwYXJlbnQgb3V0bGluZSB3aGljaCB3aWxsIGJlIHNldCB0byBhIHZpc2libGUgY29sb3VyLlxuXG4gIC8vIFNpbmNlIEludGVybmV0IEV4cGxvcmVyIDggZG9lcyBub3Qgc3VwcG9ydCBib3gtc2hhZG93LCB3ZSB3YW50IHRvIGZvcmNlIHRoZVxuICAvLyB1c2VyLWFnZW50IG91dGxpbmVzXG4gIEBpbmNsdWRlIGdvdnVrLW5vdC1pZTgge1xuICAgIG91dGxpbmU6ICRnb3Z1ay1mb2N1cy13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgfVxuICBjb2xvcjogJGdvdnVrLWZvY3VzLXRleHQtY29sb3VyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ292dWstZm9jdXMtY29sb3VyO1xuICBib3gtc2hhZG93OiAwIC0ycHggJGdvdnVrLWZvY3VzLWNvbG91ciwgMCA0cHggJGdvdnVrLWZvY3VzLXRleHQtY29sb3VyO1xuICAvLyBXaGVuIGxpbmsgaXMgZm9jdXNzZWQsIGhpZGUgdGhlIGRlZmF1bHQgdW5kZXJsaW5lIHNpbmNlIHRoZVxuICAvLyBib3ggc2hhZG93IGFkZHMgdGhlIFwidW5kZXJsaW5lXCJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuIiwiLy8vL1xuLy8vIEBncm91cCBzZXR0aW5ncy9jb2xvdXJzXG4vLy8vXG5cbkBpbXBvcnQgXCIuLi9oZWxwZXJzL2NvbG91clwiO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEdlbmVyaWNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLy8gQnJhbmQgY29sb3VyXG4vLy9cbi8vLyBAdHlwZSBDb2xvdXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstYnJhbmQtY29sb3VyOiBnb3Z1ay1jb2xvdXIoXCJibHVlXCIpICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvdXJcbi8vL1xuLy8vIEB0eXBlIENvbG91clxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay10ZXh0LWNvbG91cjogZ292dWstY29sb3VyKFwiYmxhY2tcIikgIWRlZmF1bHQ7XG5cbi8vLyBDYW52YXMgYmFja2dyb3VuZCBjb2xvdXJcbi8vL1xuLy8vIFVzZWQgYnkgdGhlIGZvb3RlciBjb21wb25lbnQgYW5kIHRlbXBsYXRlIHRvIGdpdmUgdGhlIGlsbHVzaW9uIG9mIGEgbG9uZ1xuLy8vIGZvb3Rlci5cbi8vL1xuLy8vIEB0eXBlIENvbG91clxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1jYW52YXMtYmFja2dyb3VuZC1jb2xvdXI6IGdvdnVrLWNvbG91cihcImxpZ2h0LWdyZXlcIiwgJGxlZ2FjeTogXCJncmV5LTNcIikgIWRlZmF1bHQ7XG5cbi8vLyBCb2R5IGJhY2tncm91bmQgY29sb3VyXG4vLy9cbi8vLyBAdHlwZSBDb2xvdXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstYm9keS1iYWNrZ3JvdW5kLWNvbG91cjogZ292dWstY29sb3VyKFwid2hpdGVcIikgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG91ciBmb3IgcHJpbnQgbWVkaWFcbi8vL1xuLy8vIFVzZSAndHJ1ZSBibGFjaycgdG8gYXZvaWQgcHJpbnRlcnMgdXNpbmcgY29sb3VyIGluayB0byBwcmludCBib2R5IHRleHRcbi8vL1xuLy8vIEB0eXBlIENvbG91clxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1wcmludC10ZXh0LWNvbG91cjogIzAwMDAwMCAhZGVmYXVsdDtcblxuLy8vIFNlY29uZGFyeSB0ZXh0IGNvbG91clxuLy8vXG4vLy8gVXNlZCBpbiBmb3IgZXhhbXBsZSAnbXV0ZWQnIHRleHQgYW5kIGhlbHAgdGV4dC5cbi8vL1xuLy8vIEB0eXBlIENvbG91clxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1zZWNvbmRhcnktdGV4dC1jb2xvdXI6IGdvdnVrLWNvbG91cihcImRhcmstZ3JleVwiLCAkbGVnYWN5OiBcImdyZXktMVwiKSAhZGVmYXVsdDtcblxuLy8vIEZvY3VzIGNvbG91clxuLy8vXG4vLy8gVXNlZCBmb3Igb3V0bGluZSAoYW5kIGJhY2tncm91bmQsIHdoZXJlIGFwcHJvcHJpYXRlKSB3aGVuIGludGVyYWN0aXZlXG4vLy8gZWxlbWVudHMgKGxpbmtzLCBmb3JtIGNvbnRyb2xzKSBoYXZlIGtleWJvYXJkIGZvY3VzLlxuLy8vXG4vLy8gQHR5cGUgQ29sb3VyXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLWZvY3VzLWNvbG91cjogZ292dWstY29sb3VyKFwieWVsbG93XCIpICFkZWZhdWx0O1xuXG4vLy8gRm9jdXNlZCB0ZXh0IGNvbG91clxuLy8vXG4vLy8gRW5zdXJlIHRoYXQgdGhlIGNvbnRyYXN0IGJldHdlZW4gdGhlIHRleHQgYW5kIGJhY2tncm91bmQgY29sb3VyIHBhc3Nlc1xuLy8vIFdDQUcgTGV2ZWwgQUEgY29udHJhc3QgcmVxdWlyZW1lbnRzLlxuLy8vXG4vLy8gQHR5cGUgQ29sb3VyXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLWZvY3VzLXRleHQtY29sb3VyOiBnb3Z1ay1jb2xvdXIoXCJibGFja1wiKSAhZGVmYXVsdDtcblxuLy8vIEVycm9yIGNvbG91clxuLy8vXG4vLy8gVXNlZCB0byBoaWdobGlnaHQgZXJyb3IgbWVzc2FnZXMgYW5kIGZvcm0gY29udHJvbHMgaW4gYW4gZXJyb3Igc3RhdGVcbi8vL1xuLy8vIEB0eXBlIENvbG91clxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1lcnJvci1jb2xvdXI6IGdvdnVrLWNvbG91cihcInJlZFwiKSAhZGVmYXVsdDtcblxuLy8vIFN1Y2Nlc3MgY29sb3VyXG4vLy9cbi8vLyBVc2VkIHRvIGhpZ2hsaWdodCBzdWNjZXNzIG1lc3NhZ2VzIGFuZCBiYW5uZXJzXG4vLy9cbi8vLyBAdHlwZSBDb2xvdXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstc3VjY2Vzcy1jb2xvdXI6IGdvdnVrLWNvbG91cihcImdyZWVuXCIpICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGNvbG91clxuLy8vXG4vLy8gVXNlZCBpbiBmb3IgZXhhbXBsZSBib3JkZXJzLCBzZXBhcmF0b3JzLCBydWxlcyBhbmQga2V5bGluZXMuXG4vLy9cbi8vLyBAdHlwZSBDb2xvdXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstYm9yZGVyLWNvbG91cjogZ292dWstY29sb3VyKFwibWlkLWdyZXlcIiwgJGxlZ2FjeTogXCJncmV5LTJcIik7XG5cbi8vLyBJbnB1dCBib3JkZXIgY29sb3VyXG4vLy9cbi8vLyBVc2VkIGZvciBmb3JtIGlucHV0cyBhbmQgY29udHJvbHNcbi8vL1xuLy8vIEB0eXBlIENvbG91clxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1pbnB1dC1ib3JkZXItY29sb3VyOiBnb3Z1ay1jb2xvdXIoXCJibGFja1wiKSAhZGVmYXVsdDtcblxuLy8vIElucHV0IGhvdmVyIGNvbG91clxuLy8vXG4vLy8gVXNlZCBmb3IgaG92ZXIgc3RhdGVzIG9uIGZvcm0gY29udHJvbHNcbi8vL1xuLy8vIEB0eXBlIENvbG91clxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1ob3Zlci1jb2xvdXI6IGdvdnVrLWNvbG91cihcIm1pZC1ncmV5XCIsICRsZWdhY3k6IFwiZ3JleS0zXCIpO1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTGlua3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vLyBMaW5rIGNvbG91clxuLy8vXG4vLy8gQHR5cGUgQ29sb3VyXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLWxpbmstY29sb3VyOiBnb3Z1ay1jb2xvdXIoXCJibHVlXCIpICFkZWZhdWx0O1xuXG4vLy8gVmlzaXRlZCBsaW5rIGNvbG91clxuLy8vXG4vLy8gQHR5cGUgQ29sb3VyXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLWxpbmstdmlzaXRlZC1jb2xvdXI6IGdvdnVrLWNvbG91cihcInB1cnBsZVwiLCAkbGVnYWN5OiAjNGMyYzkyKSAhZGVmYXVsdDtcblxuLy8vIExpbmsgaG92ZXIgY29sb3VyXG4vLy9cbi8vLyBAdHlwZSBDb2xvdXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstbGluay1ob3Zlci1jb2xvdXI6IGdvdnVrLWNvbG91cihcImRhcmstYmx1ZVwiLCAkbGVnYWN5OiBcImxpZ2h0LWJsdWVcIikgIWRlZmF1bHQ7XG5cbi8vLyBBY3RpdmUgbGluayBjb2xvdXJcbi8vL1xuLy8vIEB0eXBlIENvbG91clxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1saW5rLWFjdGl2ZS1jb2xvdXI6IGdvdnVrLWNvbG91cihcImJsYWNrXCIsICRsZWdhY3k6IFwibGlnaHQtYmx1ZVwiKSAhZGVmYXVsdDtcbiIsIkBpZiBub3QgbWl4aW4tZXhpc3RzKFwiZ292dWstZXhwb3J0c1wiKSB7XG4gIEB3YXJuIFwiSW1wb3J0aW5nIGl0ZW1zIGZyb20gdGhlIGNvcmUgbGF5ZXIgd2l0aG91dCBmaXJzdCBpbXBvcnRpbmcgYGJhc2VgIGlzIGRlcHJlY2F0ZWQsIGFuZCB3aWxsIG5vIGxvbmdlciB3b3JrIGFzIG9mIEdPVi5VSyBGcm9udGVuZCB2NC4wLlwiO1xufVxuXG5AaW1wb3J0IFwiLi4vYmFzZVwiO1xuXG5AaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvY29yZS9saXN0c1wiKSB7XG5cbiAgJWdvdnVrLWxpc3Qge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDE5KTtcbiAgICBAaW5jbHVkZSBnb3Z1ay10ZXh0LWNvbG91cjtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDQsIFwiYm90dG9tXCIpO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgICAvLyBBZGQgYSB0b3AgbWFyZ2luIGZvciBuZXN0ZWQgbGlzdHNcbiAgICAlZ292dWstbGlzdCB7XG4gICAgICBtYXJnaW4tdG9wOiBnb3Z1ay1zcGFjaW5nKDIpO1xuICAgIH1cbiAgfVxuXG4gICVnb3Z1ay1saXN0ID4gbGkge1xuICAgIC8vIExpc3RzIHdpdGhvdXQgbnVtYmVycyBvciBidWxsZXRzIHNob3VsZCBhbHdheXMgaGF2ZSBleHRyYSBzcGFjZSBiZXR3ZWVuXG4gICAgLy8gbGlzdCBpdGVtcy4gTGlzdHMgd2l0aCBudW1iZXJzIG9yIGJ1bGxldHMgb25seSBoYXZlIHRoaXMgZXh0cmEgc3BhY2Ugb25cbiAgICAvLyB0YWJsZXQgYW5kIGFib3ZlXG4gICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygxKTtcbiAgfVxuXG4gIC5nb3Z1ay1saXN0IHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1saXN0O1xuICB9XG5cbiAgJWdvdnVrLWxpc3QtLWJ1bGxldCB7XG4gICAgcGFkZGluZy1sZWZ0OiBnb3Z1ay1zcGFjaW5nKDQpO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiAgfVxuXG4gICVnb3Z1ay1saXN0LS1udW1iZXIge1xuICAgIHBhZGRpbmctbGVmdDogZ292dWstc3BhY2luZyg0KTtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IGRlY2ltYWw7XG4gIH1cblxuICAlZ292dWstbGlzdC0tYnVsbGV0ID4gbGksXG4gICVnb3Z1ay1saXN0LS1udW1iZXIgPiBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMSk7XG4gICAgfVxuICB9XG5cbiAgJWdvdnVrLWxpc3QtLXNwYWNlZCA+IGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDIpO1xuXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygzKTtcbiAgICB9XG4gIH1cblxuICAuZ292dWstbGlzdC0tYnVsbGV0IHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1saXN0LS1idWxsZXQ7XG4gIH1cblxuICAuZ292dWstbGlzdC0tbnVtYmVyIHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1saXN0LS1udW1iZXI7XG4gIH1cblxuICAuZ292dWstbGlzdC0tc3BhY2VkIHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1saXN0LS1zcGFjZWQ7XG4gIH1cbn1cbiIsIi8vLy9cbi8vLyBAZ3JvdXAgaGVscGVycy9zcGFjaW5nXG4vLy8vXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlIGluZGVudGF0aW9uXG5cbi8vLyBTaW5nbGUgcG9pbnQgc3BhY2luZ1xuLy8vXG4vLy8gUmV0dXJucyBtZWFzdXJlbWVudCBjb3JyZXNwb25kaW5nIHRvIHRoZSBzcGFjaW5nIHBvaW50IHJlcXVlc3RlZC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc3BhY2luZy1wb2ludCAtIFBvaW50IG9uIHRoZSBzcGFjaW5nIHNjYWxlXG4vLy8gIChzZXQgaW4gYHNldHRpbmdzL19zcGFjaW5nLnNjc3NgKVxuLy8vXG4vLy8gQHJldHVybnMge1N0cmluZ30gU3BhY2luZyBtZWFzdXJlbWVudCBlZy4gMTBweFxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBwYWRkaW5nOiBnb3Z1ay1zcGFjaW5nKDUpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyBVc2luZyBuZWdhdGl2ZSBzcGFjaW5nXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIG1hcmdpbi10b3A6IGdvdnVrLXNwYWNpbmcoLTEpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyBNYXJraW5nIHNwYWNpbmcgZGVjbGFyYXRpb25zIGFzIGltcG9ydGFudFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBtYXJnaW4tdG9wOiBnb3Z1ay1zcGFjaW5nKDEpICFpbXBvcnRhbnQ7XG4vLy8gICB9XG4vLy9cbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AZnVuY3Rpb24gZ292dWstc3BhY2luZygkc3BhY2luZy1wb2ludCkge1xuXG4gICRhY3R1YWwtaW5wdXQtdHlwZTogdHlwZS1vZigkc3BhY2luZy1wb2ludCk7XG4gIEBpZiAkYWN0dWFsLWlucHV0LXR5cGUgIT0gXCJudW1iZXJcIiB7XG4gICAgQGVycm9yIFwiRXhwZWN0ZWQgYSBudW1iZXIgKGludGVnZXIpLCBidXQgZ290IGEgXCJcbiAgICArIFwiI3skYWN0dWFsLWlucHV0LXR5cGV9LlwiO1xuICB9XG5cbiAgJGlzLW5lZ2F0aXZlOiBmYWxzZTtcbiAgQGlmICgkc3BhY2luZy1wb2ludCA8IDApIHtcbiAgICAkaXMtbmVnYXRpdmU6IHRydWU7XG4gICAgJHNwYWNpbmctcG9pbnQ6IGFicygkc3BhY2luZy1wb2ludCk7XG4gIH1cblxuICBAaWYgbm90IG1hcC1oYXMta2V5KCRnb3Z1ay1zcGFjaW5nLXBvaW50cywgJHNwYWNpbmctcG9pbnQpIHtcbiAgICBAZXJyb3IgXCJVbmtub3duIHNwYWNpbmcgdmFyaWFibGUgYCN7JHNwYWNpbmctcG9pbnR9YC4gTWFrZSBzdXJlIHlvdSBhcmUgdXNpbmcgYSBwb2ludCBmcm9tIHRoZSBzcGFjaW5nIHNjYWxlIGluIGBfc2V0dGluZ3Mvc3BhY2luZy5zY3NzYC5cIjtcbiAgfVxuXG4gICR2YWx1ZTogbWFwLWdldCgkZ292dWstc3BhY2luZy1wb2ludHMsICRzcGFjaW5nLXBvaW50KTtcbiAgQHJldHVybiBpZigkaXMtbmVnYXRpdmUsICR2YWx1ZSAqIC0xLCAkdmFsdWUpO1xufVxuXG4vLy8gUmVzcG9uc2l2ZSBzcGFjaW5nXG4vLy9cbi8vLyBBZGRzIHJlc3BvbnNpdmUgc3BhY2luZyAoZWl0aGVyIHBhZGRpbmcgb3IgbWFyZ2luLCBkZXBlbmRpbmcgb24gYCRwcm9wZXJ0eWApXG4vLy8gYnkgZmV0Y2hpbmcgYSAnc3BhY2luZyBtYXAnIGZyb20gdGhlIHJlc3BvbnNpdmUgc3BhY2luZyBzY2FsZSwgd2hpY2ggZGVmaW5lc1xuLy8vIGRpZmZlcmVudCBzcGFjaW5nIHZhbHVlcyBhdCBkaWZmZXJlbnQgYnJlYWtwb2ludHMuXG4vLy9cbi8vLyBUbyBnZW5lcmF0ZSByZXNwb25zaXZlIHNwYWNpbmcsIHVzZSAnZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4nIG9yXG4vLy8gJ2dvdnVrLXJlc3BvbnNpdmUtcGFkZGluZycgbWl4aW5zXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHJlc3BvbnNpdmUtc3BhY2luZy1wb2ludCAtIFBvaW50IG9uIHRoZSByZXNwb25zaXZlIHNwYWNpbmdcbi8vLyAgIHNjYWxlLCBjb3JyZXNwb25kcyB0byBhIG1hcCBvZiBicmVha3BvaW50cyBhbmQgc3BhY2luZyB2YWx1ZXNcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHByb3BlcnR5IC0gUHJvcGVydHkgdG8gYWRkIHNwYWNpbmcgdG8gKGUuZy4gJ21hcmdpbicpXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRkaXJlY3Rpb24gW2FsbF0gLSBEaXJlY3Rpb24gdG8gYWRkIHNwYWNpbmcgdG9cbi8vLyAgIChgdG9wYCwgYHJpZ2h0YCwgYGJvdHRvbWAsIGBsZWZ0YCwgYGFsbGApXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkaW1wb3J0YW50IFtmYWxzZV0gLSBXaGV0aGVyIHRvIG1hcmsgYXMgYCFpbXBvcnRhbnRgXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRhZGp1c3RtZW50IFtmYWxzZV0gLSBPZmZzZXQgdG8gYWRqdXN0IHNwYWNpbmcgYnlcbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuXG5AbWl4aW4gX2dvdnVrLXJlc3BvbnNpdmUtc3BhY2luZygkcmVzcG9uc2l2ZS1zcGFjaW5nLXBvaW50LCAkcHJvcGVydHksICRkaXJlY3Rpb246IFwiYWxsXCIsICRpbXBvcnRhbnQ6IGZhbHNlLCAkYWRqdXN0bWVudDogZmFsc2UpIHtcblxuICAkYWN0dWFsLWlucHV0LXR5cGU6IHR5cGUtb2YoJHJlc3BvbnNpdmUtc3BhY2luZy1wb2ludCk7XG4gIEBpZiAkYWN0dWFsLWlucHV0LXR5cGUgIT0gXCJudW1iZXJcIiB7XG4gICAgQGVycm9yIFwiRXhwZWN0ZWQgYSBudW1iZXIgKGludGVnZXIpLCBidXQgZ290IGEgXCIgKyBcIiN7JGFjdHVhbC1pbnB1dC10eXBlfS5cIjtcbiAgfVxuXG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJGdvdnVrLXNwYWNpbmctcmVzcG9uc2l2ZS1zY2FsZSwgJHJlc3BvbnNpdmUtc3BhY2luZy1wb2ludCkge1xuICAgIEBlcnJvciBcIlVua25vd24gc3BhY2luZyBwb2ludCBgI3skcmVzcG9uc2l2ZS1zcGFjaW5nLXBvaW50fWAuIE1ha2Ugc3VyZSB5b3UgYXJlIHVzaW5nIGEgcG9pbnQgZnJvbSB0aGUgXCJcbiAgICArIFwicmVzcG9uc2l2ZSBzcGFjaW5nIHNjYWxlIGluIGBfc2V0dGluZ3Mvc3BhY2luZy5zY3NzYC5cIjtcbiAgfVxuXG4gIC8vIE1ha2Ugc3VyZSB0aGF0IHRoZSByZXR1cm4gdmFsdWUgZnJvbSBgX3NldHRpbmdzL3NwYWNpbmcuc2Nzc2AgaXMgYSBtYXAuXG4gICRzY2FsZS1tYXA6IG1hcC1nZXQoJGdvdnVrLXNwYWNpbmctcmVzcG9uc2l2ZS1zY2FsZSwgJHJlc3BvbnNpdmUtc3BhY2luZy1wb2ludCk7XG4gICRhY3R1YWwtbWFwLXR5cGU6IHR5cGUtb2YoJHNjYWxlLW1hcCk7XG4gIEBpZiAkYWN0dWFsLW1hcC10eXBlICE9IFwibWFwXCIge1xuICAgIEBlcnJvciBcIkV4cGVjdGVkIGEgbnVtYmVyIChpbnRlZ2VyKSwgYnV0IGdvdCBhIFwiXG4gICAgKyBcIiN7JGFjdHVhbC1tYXAtdHlwZX0uIE1ha2Ugc3VyZSB5b3UgYXJlIHVzaW5nIGEgbWFwIHRvIHNldCB0aGUgcmVzcG9uc2l2ZSBzcGFjaW5nIGluIGBfc2V0dGluZ3Mvc3BhY2luZy5zY3NzYClcIjtcbiAgfVxuXG4gIC8vIExvb3AgdGhyb3VnaCBlYWNoIGJyZWFrcG9pbnQgaW4gdGhlIG1hcFxuICBAZWFjaCAkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnQtdmFsdWUgaW4gJHNjYWxlLW1hcCB7XG5cbiAgICBAaWYgKCRhZGp1c3RtZW50KSB7XG4gICAgICAkYnJlYWtwb2ludC12YWx1ZTogJGJyZWFrcG9pbnQtdmFsdWUgKyAkYWRqdXN0bWVudDtcbiAgICB9XG5cbiAgICAvLyBUaGUgJ251bGwnIGJyZWFrcG9pbnQgaXMgZm9yIG1vYmlsZS5cbiAgICBAaWYgJGJyZWFrcG9pbnQgPT0gbnVsbCB7XG5cbiAgICAgIEBpZiAkZGlyZWN0aW9uID09IGFsbCB7XG4gICAgICAgICN7JHByb3BlcnR5fTogJGJyZWFrcG9pbnQtdmFsdWUgaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgI3skcHJvcGVydHl9LSN7JGRpcmVjdGlvbn06ICRicmVha3BvaW50LXZhbHVlIGlmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206ICRicmVha3BvaW50KSB7XG4gICAgICAgIEBpZiAkZGlyZWN0aW9uID09IGFsbCB7XG4gICAgICAgICAgI3skcHJvcGVydHl9OiAkYnJlYWtwb2ludC12YWx1ZSBpZigkaW1wb3J0YW50LCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgI3skcHJvcGVydHl9LSN7JGRpcmVjdGlvbn06ICRicmVha3BvaW50LXZhbHVlIGlmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBSZXNwb25zaXZlIG1hcmdpblxuLy8vXG4vLy8gQWRkcyByZXNwb25zaXZlIG1hcmdpbiBieSBmZXRjaGluZyBhICdzcGFjaW5nIG1hcCcgZnJvbSB0aGUgcmVzcG9uc2l2ZVxuLy8vIHNwYWNpbmcgc2NhbGUsIHdoaWNoIGRlZmluZXMgZGlmZmVyZW50IHNwYWNpbmcgdmFsdWVzIGF0IGRpZmZlcmVudFxuLy8vIGJyZWFrcG9pbnRzLiBXcmFwcGVyIGZvciB0aGUgYF9nb3Z1ay1yZXNwb25zaXZlLXNwYWNpbmdgIG1peGluLlxuLy8vXG4vLy8gQHNlZSB7bWl4aW59IF9nb3Z1ay1yZXNwb25zaXZlLXNwYWNpbmdcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcmVzcG9uc2l2ZS1zcGFjaW5nLXBvaW50IC0gUG9pbnQgb24gdGhlIHJlc3BvbnNpdmUgc3BhY2luZ1xuLy8vIHNjYWxlLCBjb3JyZXNwb25kcyB0byBhIG1hcCBvZiBicmVha3BvaW50cyBhbmQgc3BhY2luZyB2YWx1ZXNcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGRpcmVjdGlvbiBbYWxsXSAtIERpcmVjdGlvbiB0byBhZGQgc3BhY2luZyB0b1xuLy8vICAgKGB0b3BgLCBgcmlnaHRgLCBgYm90dG9tYCwgYGxlZnRgLCBgYWxsYClcbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRpbXBvcnRhbnQgW2ZhbHNlXSAtIFdoZXRoZXIgdG8gbWFyayBhcyBgIWltcG9ydGFudGBcbi8vLyBAcGFyYW0ge051bWJlcn0gJGFkanVzdG1lbnQgW2ZhbHNlXSAtIE9mZnNldCB0byBhZGp1c3Qgc3BhY2luZyBieVxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNiwgXCJsZWZ0XCIsICRhZGp1c3RtZW50OiAxcHgpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKCRyZXNwb25zaXZlLXNwYWNpbmctcG9pbnQsICRkaXJlY3Rpb246IFwiYWxsXCIsICRpbXBvcnRhbnQ6IGZhbHNlLCAkYWRqdXN0bWVudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgX2dvdnVrLXJlc3BvbnNpdmUtc3BhY2luZygkcmVzcG9uc2l2ZS1zcGFjaW5nLXBvaW50LCBcIm1hcmdpblwiLCAkZGlyZWN0aW9uLCAkaW1wb3J0YW50LCAkYWRqdXN0bWVudCk7XG59XG5cbi8vLyBSZXNwb25zaXZlIHBhZGRpbmdcbi8vL1xuLy8vIEFkZHMgcmVzcG9uc2l2ZSBwYWRkaW5nIGJ5IGZldGNoaW5nIGEgJ3NwYWNpbmcgbWFwJyBmcm9tIHRoZSByZXNwb25zaXZlXG4vLy8gc3BhY2luZyBzY2FsZSwgd2hpY2ggZGVmaW5lcyBkaWZmZXJlbnQgc3BhY2luZyB2YWx1ZXMgYXQgZGlmZmVyZW50XG4vLy8gYnJlYWtwb2ludHMuIFdyYXBwZXIgZm9yIHRoZSBgX2dvdnVrLXJlc3BvbnNpdmUtc3BhY2luZ2AgbWl4aW4uXG4vLy9cbi8vLyBAc2VlIHttaXhpbn0gX2dvdnVrLXJlc3BvbnNpdmUtc3BhY2luZ1xuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRyZXNwb25zaXZlLXNwYWNpbmctcG9pbnQgLSBQb2ludCBvbiB0aGUgcmVzcG9uc2l2ZSBzcGFjaW5nXG4vLy8gICBzY2FsZSwgY29ycmVzcG9uZHMgdG8gYSBtYXAgb2YgYnJlYWtwb2ludHMgYW5kIHNwYWNpbmcgdmFsdWVzXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRkaXJlY3Rpb24gW2FsbF0gLSBEaXJlY3Rpb24gdG8gYWRkIHNwYWNpbmcgdG9cbi8vLyAgIChgdG9wYCwgYHJpZ2h0YCwgYGJvdHRvbWAsIGBsZWZ0YCwgYGFsbGApXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkaW1wb3J0YW50IFtmYWxzZV0gLSBXaGV0aGVyIHRvIG1hcmsgYXMgYCFpbXBvcnRhbnRgXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRhZGp1c3RtZW50IFtmYWxzZV0gLSBPZmZzZXQgdG8gYWRqdXN0IHNwYWNpbmdcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtcGFkZGluZyg2LCBcImxlZnRcIiwgJGFkanVzdG1lbnQ6IDFweCk7XG4vLy8gICB9XG4vLy9cbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AbWl4aW4gZ292dWstcmVzcG9uc2l2ZS1wYWRkaW5nKCRyZXNwb25zaXZlLXNwYWNpbmctcG9pbnQsICRkaXJlY3Rpb246IFwiYWxsXCIsICRpbXBvcnRhbnQ6IGZhbHNlLCAkYWRqdXN0bWVudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgX2dvdnVrLXJlc3BvbnNpdmUtc3BhY2luZygkcmVzcG9uc2l2ZS1zcGFjaW5nLXBvaW50LCBcInBhZGRpbmdcIiwgJGRpcmVjdGlvbiwgJGltcG9ydGFudCwgJGFkanVzdG1lbnQpO1xufVxuIiwiQGlmIG5vdCBtaXhpbi1leGlzdHMoXCJnb3Z1ay1leHBvcnRzXCIpIHtcbiAgQHdhcm4gXCJJbXBvcnRpbmcgaXRlbXMgZnJvbSB0aGUgY29yZSBsYXllciB3aXRob3V0IGZpcnN0IGltcG9ydGluZyBgYmFzZWAgaXMgZGVwcmVjYXRlZCwgYW5kIHdpbGwgbm8gbG9uZ2VyIHdvcmsgYXMgb2YgR09WLlVLIEZyb250ZW5kIHY0LjAuXCI7XG59XG5cbkBpbXBvcnQgXCIuLi9iYXNlXCI7XG5cbkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9jb3JlL3RlbXBsYXRlXCIpIHtcblxuICAvLyBBcHBsaWVkIHRvIHRoZSA8aHRtbD4gZWxlbWVudFxuICAuZ292dWstdGVtcGxhdGUge1xuICAgIC8vIFNldCB0aGUgb3ZlcmFsbCBwYWdlIGJhY2tncm91bmQgY29sb3VyIHRvIHRoZSBzYW1lIGNvbG91ciBhcyB1c2VkIGJ5IHRoZVxuICAgIC8vIGZvb3RlciB0byBnaXZlIHRoZSBpbGx1c2lvbiBvZiBhIGxvbmcgZm9vdGVyLlxuICAgIGJhY2tncm91bmQtY29sb3I6ICRnb3Z1ay1jYW52YXMtYmFja2dyb3VuZC1jb2xvdXI7XG5cbiAgICAvLyBQcmV2ZW50IGF1dG9tYXRpYyB0ZXh0IHNpemluZywgYXMgd2UgYWxyZWFkeSBjYXRlciBmb3Igc21hbGwgZGV2aWNlcyBhbmRcbiAgICAvLyB3b3VsZCBsaWtlIHRoZSBicm93c2VyIHRvIHN0YXkgb24gMTAwJSB0ZXh0IHpvb20gYnkgZGVmYXVsdC5cbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gICAgICAgIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAgICAgICAgICAgdGV4dC1zaXplLWFkanVzdDogMTAwJTtcblxuICAgIC8vIEZvcmNlIHRoZSBzY3JvbGxiYXIgdG8gYWx3YXlzIGRpc3BsYXkgaW4gSUUsIHRvIHByZXZlbnQgaG9yaXpvbnRhbCBwYWdlXG4gICAgLy8ganVtcHMgYXMgY29udGVudCBoZWlnaHQgY2hhbmdlcyAoZS5nLiBhdXRvY29tcGxldGUgcmVzdWx0cyBvcGVuKS5cbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkbWVkaWEtdHlwZTogc2NyZWVuKSB7XG4gICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgfVxuICB9XG5cbiAgLy8gQXBwbGllZCB0byB0aGUgPGJvZHk+IGVsZW1lbnRcbiAgLmdvdnVrLXRlbXBsYXRlX19ib2R5IHtcbiAgICAvLyBUaGUgZGVmYXVsdCBtYXJnaW5zIHNldCBieSB1c2VyLWFnZW50cyBhcmUgbm90IHJlcXVpcmVkIHNpbmNlIHdlIGhhdmUgb3VyXG4gICAgLy8gb3duIGNvbnRhaW5lcnMuXG4gICAgbWFyZ2luOiAwO1xuICAgIC8vIFNldCB0aGUgb3ZlcmFsbCBib2R5IG9mIHRoZSBwYWdlIGJhY2sgdG8gdGhlIHR5cGljYWwgYmFja2dyb3VuZCBjb2xvdXIuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdvdnVrLWJvZHktYmFja2dyb3VuZC1jb2xvdXI7XG4gIH1cbn1cbiIsIkBpZiBub3QgbWl4aW4tZXhpc3RzKFwiZ292dWstZXhwb3J0c1wiKSB7XG4gIEB3YXJuIFwiSW1wb3J0aW5nIGl0ZW1zIGZyb20gdGhlIGNvcmUgbGF5ZXIgd2l0aG91dCBmaXJzdCBpbXBvcnRpbmcgYGJhc2VgIGlzIGRlcHJlY2F0ZWQsIGFuZCB3aWxsIG5vIGxvbmdlciB3b3JrIGFzIG9mIEdPVi5VSyBGcm9udGVuZCB2NC4wLlwiO1xufVxuXG5AaW1wb3J0IFwiLi4vYmFzZVwiO1xuXG5AaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvY29yZS90eXBvZ3JhcGh5XCIpIHtcblxuICAvLyBIZWFkaW5nc1xuXG4gICVnb3Z1ay1oZWFkaW5nLXhsIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay10ZXh0LWNvbG91cjtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiA0OCwgJHdlaWdodDogYm9sZCk7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oOCwgXCJib3R0b21cIik7XG4gIH1cblxuICAuZ292dWstaGVhZGluZy14bCB7XG4gICAgQGV4dGVuZCAlZ292dWstaGVhZGluZy14bDtcbiAgfVxuXG4gICVnb3Z1ay1oZWFkaW5nLWwge1xuICAgIEBpbmNsdWRlIGdvdnVrLXRleHQtY29sb3VyO1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDM2LCAkd2VpZ2h0OiBib2xkKTtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig2LCBcImJvdHRvbVwiKTtcbiAgfVxuXG4gIC5nb3Z1ay1oZWFkaW5nLWwge1xuICAgIEBleHRlbmQgJWdvdnVrLWhlYWRpbmctbDtcbiAgfVxuXG4gICVnb3Z1ay1oZWFkaW5nLW0ge1xuICAgIEBpbmNsdWRlIGdvdnVrLXRleHQtY29sb3VyO1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDI0LCAkd2VpZ2h0OiBib2xkKTtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig0LCBcImJvdHRvbVwiKTtcbiAgfVxuXG4gIC5nb3Z1ay1oZWFkaW5nLW0ge1xuICAgIEBleHRlbmQgJWdvdnVrLWhlYWRpbmctbTtcbiAgfVxuXG4gICVnb3Z1ay1oZWFkaW5nLXMge1xuICAgIEBpbmNsdWRlIGdvdnVrLXRleHQtY29sb3VyO1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDE5LCAkd2VpZ2h0OiBib2xkKTtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig0LCBcImJvdHRvbVwiKTtcbiAgfVxuXG4gIC5nb3Z1ay1oZWFkaW5nLXMge1xuICAgIEBleHRlbmQgJWdvdnVrLWhlYWRpbmctcztcbiAgfVxuXG4gIC8vIENhcHRpb25zIHRvIGJlIHVzZWQgaW5zaWRlIGhlYWRpbmdzXG5cbiAgLmdvdnVrLWNhcHRpb24teGwge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDI3KTtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygxKTtcblxuICAgIGNvbG9yOiAkZ292dWstc2Vjb25kYXJ5LXRleHQtY29sb3VyO1xuICB9XG5cbiAgLmdvdnVrLWNhcHRpb24tbCB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMjQpO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDEpO1xuICAgIGNvbG9yOiAkZ292dWstc2Vjb25kYXJ5LXRleHQtY29sb3VyO1xuXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAuZ292dWstY2FwdGlvbi1tIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAxOSk7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIGNvbG9yOiAkZ292dWstc2Vjb25kYXJ5LXRleHQtY29sb3VyO1xuICB9XG5cbiAgLy8gQm9keSAocGFyYWdyYXBocylcblxuICAlZ292dWstYm9keS1sIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay10ZXh0LWNvbG91cjtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAyNCk7XG5cbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDYsIFwiYm90dG9tXCIpO1xuICB9XG5cbiAgLmdvdnVrLWJvZHktbCB7XG4gICAgQGV4dGVuZCAlZ292dWstYm9keS1sO1xuICB9XG5cbiAgJWdvdnVrLWJvZHktbSB7XG4gICAgQGluY2x1ZGUgZ292dWstdGV4dC1jb2xvdXI7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTkpO1xuXG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig0LCBcImJvdHRvbVwiKTtcbiAgfVxuXG4gIC5nb3Z1ay1ib2R5LW0ge1xuICAgIEBleHRlbmQgJWdvdnVrLWJvZHktbTtcbiAgfVxuXG4gICVnb3Z1ay1ib2R5LXMge1xuICAgIEBpbmNsdWRlIGdvdnVrLXRleHQtY29sb3VyO1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDE2KTtcblxuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNCwgXCJib3R0b21cIik7XG4gIH1cblxuICAuZ292dWstYm9keS1zIHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1ib2R5LXM7XG4gIH1cblxuICAlZ292dWstYm9keS14cyB7XG4gICAgQGluY2x1ZGUgZ292dWstdGV4dC1jb2xvdXI7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTQpO1xuXG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig0LCBcImJvdHRvbVwiKTtcbiAgfVxuXG4gIC5nb3Z1ay1ib2R5LXhzIHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1ib2R5LXhzO1xuICB9XG5cbiAgLy8gVXNhZ2UgYWxpYXNlc1xuXG4gIC8vIFVzaW5nIGV4dGVuZCB0byBhbGlhcyBtZWFucyB3ZSBhbHNvIGluaGVyaXQgYW55IGNvbnRleHR1YWwgYWRqdXN0bWVudHMgdGhhdFxuICAvLyByZWZlciB0byB0aGUgJ29yaWdpbmFsJyBjbGFzcyBuYW1lXG5cbiAgLmdvdnVrLWJvZHktbGVhZCB7XG4gICAgQGV4dGVuZCAlZ292dWstYm9keS1sO1xuICB9XG5cbiAgLmdvdnVrLWJvZHkge1xuICAgIEBleHRlbmQgJWdvdnVrLWJvZHktbTtcbiAgfVxuXG4gIC8vIENvbnRleHR1YWwgYWRqdXN0bWVudHNcbiAgLy8gQWRkIHRvcCBwYWRkaW5nIHRvIGhlYWRpbmdzIHRoYXQgYXBwZWFyIGRpcmVjdGx5IGFmdGVyIHBhcmFncmFwaHMuXG5cbiAgJWdvdnVrLWJvZHktbCAgKyAlZ292dWstaGVhZGluZy1sIHtcbiAgICBwYWRkaW5nLXRvcDogZ292dWstc3BhY2luZygxKTtcblxuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgIHBhZGRpbmctdG9wOiBnb3Z1ay1zcGFjaW5nKDIpO1xuICAgIH1cbiAgfVxuXG4gICVnb3Z1ay1ib2R5LW0gICsgJWdvdnVrLWhlYWRpbmctbCxcbiAgJWdvdnVrLWJvZHktcyAgKyAlZ292dWstaGVhZGluZy1sLFxuICAlZ292dWstbGlzdCArICVnb3Z1ay1oZWFkaW5nLWwge1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtcGFkZGluZyg0LCBcInRvcFwiKTtcbiAgfVxuXG4gICVnb3Z1ay1ib2R5LW0gKyAlZ292dWstaGVhZGluZy1tLFxuICAlZ292dWstYm9keS1zICsgJWdvdnVrLWhlYWRpbmctbSxcbiAgJWdvdnVrLWxpc3QgKyAlZ292dWstaGVhZGluZy1tLFxuICAlZ292dWstYm9keS1tICsgJWdvdnVrLWhlYWRpbmctcyxcbiAgJWdvdnVrLWJvZHktcyArICVnb3Z1ay1oZWFkaW5nLXMsXG4gICVnb3Z1ay1saXN0ICsgJWdvdnVrLWhlYWRpbmctcyB7XG4gICAgcGFkZGluZy10b3A6IGdvdnVrLXNwYWNpbmcoMSk7XG5cbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgICBwYWRkaW5nLXRvcDogZ292dWstc3BhY2luZygyKTtcbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBub3QgbWl4aW4tZXhpc3RzKFwiZ292dWstZXhwb3J0c1wiKSB7XG4gIEB3YXJuIFwiSW1wb3J0aW5nIGl0ZW1zIGZyb20gdGhlIGNvcmUgbGF5ZXIgd2l0aG91dCBmaXJzdCBpbXBvcnRpbmcgYGJhc2VgIGlzIGRlcHJlY2F0ZWQsIGFuZCB3aWxsIG5vIGxvbmdlciB3b3JrIGFzIG9mIEdPVi5VSyBGcm9udGVuZCB2NC4wLlwiO1xufVxuXG5AaW1wb3J0IFwiLi4vYmFzZVwiO1xuXG5AaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvY29yZS9zZWN0aW9uLWJyZWFrXCIpIHtcblxuICAlZ292dWstc2VjdGlvbi1icmVhayB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlcjogMDtcblxuICAgIC8vIGZpeCBkb3VibGUtd2lkdGggc2VjdGlvbiBicmVhayBhbmQgZm9yY2VkIHZpc2libGUgc2VjdGlvbiBicmVha1xuICAgIC8vIHdoZW4gY29tYmluZWQgd2l0aCBzdHlsZXMgZnJvbSBhbHBoYWdvdi9lbGVtZW50c1xuICAgIEBpbmNsdWRlIGdvdnVrLWNvbXBhdGliaWxpdHkoZ292dWtfZWxlbWVudHMpIHtcbiAgICAgIGhlaWdodDogMDtcbiAgICB9XG4gIH1cblxuICAuZ292dWstc2VjdGlvbi1icmVhayB7XG4gICAgQGV4dGVuZCAlZ292dWstc2VjdGlvbi1icmVhaztcbiAgfVxuXG4gIC8vIFNpemVzXG5cbiAgJWdvdnVrLXNlY3Rpb24tYnJlYWstLXhsIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig4LCBcInRvcFwiKTtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig4LCBcImJvdHRvbVwiKTtcbiAgfVxuXG4gIC5nb3Z1ay1zZWN0aW9uLWJyZWFrLS14bCB7XG4gICAgQGV4dGVuZCAlZ292dWstc2VjdGlvbi1icmVhay0teGw7XG4gIH1cblxuICAlZ292dWstc2VjdGlvbi1icmVhay0tbCB7XG4gICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNiwgXCJ0b3BcIik7XG4gICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNiwgXCJib3R0b21cIik7XG4gIH1cblxuICAuZ292dWstc2VjdGlvbi1icmVhay0tbCB7XG4gICAgQGV4dGVuZCAlZ292dWstc2VjdGlvbi1icmVhay0tbDtcbiAgfVxuXG4gICVnb3Z1ay1zZWN0aW9uLWJyZWFrLS1tIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig0LCBcInRvcFwiKTtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig0LCBcImJvdHRvbVwiKTtcbiAgfVxuXG4gIC5nb3Z1ay1zZWN0aW9uLWJyZWFrLS1tIHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1zZWN0aW9uLWJyZWFrLS1tO1xuICB9XG5cbiAgLy8gVmlzaWJsZSB2YXJpYW50XG5cbiAgJWdvdnVrLXNlY3Rpb24tYnJlYWstLXZpc2libGUge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ292dWstYm9yZGVyLWNvbG91cjtcbiAgfVxuXG4gIC5nb3Z1ay1zZWN0aW9uLWJyZWFrLS12aXNpYmxlIHtcbiAgICBAZXh0ZW5kICVnb3Z1ay1zZWN0aW9uLWJyZWFrLS12aXNpYmxlO1xuICB9XG59XG4iLCJAaW1wb3J0IFwiLi4vYmFzZVwiO1xuXG5AaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvb2JqZWN0cy9idXR0b24tZ3JvdXBcIikge1xuICAvLyBCdXR0b24gZ3JvdXBzIGNhbiBiZSB1c2VkIHRvIGdyb3VwIGJ1dHRvbnMgYW5kIGxpbmtzIHRvZ2V0aGVyIGFzIGEgZ3JvdXAuXG4gIC8vXG4gIC8vIFdpdGhpbiBhIGJ1dHRvbiBncm91cDpcbiAgLy9cbiAgLy8gLSBsaW5rcyBhcmUgc3R5bGVkIHRvIGxpbmUgdXAgdmlzdWFsbHkgd2l0aCB0aGUgYnV0dG9ucywgaW5jbHVkaW5nIGJlaW5nXG4gIC8vICAgY2VudHJlLWFsaWduZWQgb24gbW9iaWxlXG4gIC8vIC0gc3BhY2luZyBiZXR3ZWVuIHRoZSBidXR0b25zIGFuZCBsaW5rcyBpcyBoYW5kbGVkIGF1dG9tYXRpY2FsbHksIGluY2x1ZGluZ1xuICAvLyAgIHdoZW4gdGhleSB3cmFwIGFjcm9zcyBtdWx0aXBsZSBsaW5lc1xuICAuZ292dWstYnV0dG9uLWdyb3VwIHtcbiAgICAkaG9yaXpvbnRhbC1nYXA6IGdvdnVrLXNwYWNpbmcoMyk7XG4gICAgJHZlcnRpY2FsLWdhcDogZ292dWstc3BhY2luZygzKTtcblxuICAgIC8vIFRoZXNlIG5lZWQgdG8gYmUga2VwdCBpbiBzeW5jIHdpdGggdGhlIGJ1dHRvbiBjb21wb25lbnQncyBzdHlsZXNcbiAgICAkYnV0dG9uLXBhZGRpbmc6IGdvdnVrLXNwYWNpbmcoMik7XG4gICAgJGJ1dHRvbi1zaGFkb3ctc2l6ZTogJGdvdnVrLWJvcmRlci13aWR0aC1mb3JtLWVsZW1lbnQ7XG5cbiAgICAkbGluay1zcGFjaW5nOiBnb3Z1ay1zcGFjaW5nKDEpO1xuXG4gICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNiwgXCJib3R0b21cIiwgJGFkanVzdG1lbnQ6ICR2ZXJ0aWNhbC1nYXAgKiAtMSk7XG5cbiAgICAvLyBGbGV4Ym94IGlzIHVzZWQgdG8gY2VudGVyLWFsaWduIGxpbmtzIG9uIG1vYmlsZSwgYWxpZ24gZXZlcnl0aGluZyBhbG9uZ1xuICAgIC8vIHRoZSBiYXNlbGluZSBvbiB0YWJsZXQgYW5kIGFib3ZlLCBhbmQgdG8gcmVtb3ZlcyBleHRyYSB3aGl0ZXNwYWNlIHRoYXRcbiAgICAvLyB3ZSdkIGdldCBiZXR3ZWVuIHRoZSBidXR0b25zIGFuZCBsaW5rcyBiZWNhdXNlIHRoZXkncmUgaW5saW5lLWJsb2Nrcy5cbiAgICAvL1xuICAgIC8vIElkZWFsbHkgd2UnZCB1c2UgYGdhcGAgd2l0aCBmbGV4Ym94IHJhdGhlciB0aGFuIGhhdmluZyB0byBkbyBpdCBhbGwgd2l0aFxuICAgIC8vIG1hcmdpbnMsIGJ1dCB1bmZvcnR1bmF0ZWx5IHRoZSBzdXBwb3J0IGlzbid0IHRoZXJlICh5ZXQpIGFuZCBAc3VwcG9ydHNcbiAgICAvLyBkb2Vzbid0IHBsYXkgbmljZWx5IHdpdGggaXRcbiAgICAvLyAoaHR0cHM6Ly9naXRodWIuY29tL3czYy9jc3N3Zy1kcmFmdHMvaXNzdWVzLzM1NTkpXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcbiAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAvLyBHaXZlIGxpbmtzIHdpdGhpbiB0aGUgYnV0dG9uIGdyb3VwIHRoZSBzYW1lIGZvbnQtc2l6ZSBhbmQgbGluZS1oZWlnaHRcbiAgICAvLyBhcyBidXR0b25zLlxuICAgIC8vXG4gICAgLy8gQmVjYXVzZSB3ZSB3YW50IHRoZSBmb2N1cyBzdGF0ZSB0byBiZSB0aWdodCBhcm91bmQgdGhlIGxpbmsgdGV4dCwgd2UgdXNlXG4gICAgLy8gbWFyZ2lucyB3aGVyZSB0aGUgYnV0dG9ucyB3b3VsZCB1c2UgcGFkZGluZy5cbiAgICAuZ292dWstbGluayB7XG4gICAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAxOSwgJGxpbmUtaGVpZ2h0OiAxOXB4KTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIC8vIFByZXZlbnQgbGlua3Mgb3ZlcmZsb3dpbmcgdGhlaXIgY29udGFpbmVyIGluIElFMTAvMTEgYmVjYXVzZSBvZiBidWdcbiAgICAgIC8vIHdpdGggYWxpZ24taXRlbXM6IGNlbnRlclxuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLXRvcDogJGxpbmstc3BhY2luZztcbiAgICAgIG1hcmdpbi1ib3R0b206ICRsaW5rLXNwYWNpbmcgKyAkdmVydGljYWwtZ2FwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIC8vIFJlZHVjZSB0aGUgYm90dG9tIG1hcmdpbiB0byB0aGUgc2l6ZSBvZiB0aGUgdmVydGljYWwgZ2FwIChhY2NvbW1vZGF0aW5nXG4gICAgLy8gdGhlIGJ1dHRvbiBzaGFkb3cpIOKAkyB0aGUgJ2xvc3QnIG1hcmdpbiBpcyBtb3ZlZCB0byB0aGUgYnV0dG9uLWdyb3VwLlxuICAgIC5nb3Z1ay1idXR0b24ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJHZlcnRpY2FsLWdhcCArICRidXR0b24tc2hhZG93LXNpemU7XG4gICAgfVxuXG4gICAgLy8gT24gdGFibGV0IGFuZCBhYm92ZSwgd2UgYWxzbyBpbnRyb2R1Y2UgYSAnY29sdW1uIGdhcCcgYmV0d2VlbiB0aGVcbiAgICAvLyBidXR0b25zIGFuZCBsaW5rcyBpbiBlYWNoIHJvdyBhbmQgbGVmdCBhbGlnbiBsaW5rc1xuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgIC8vIENhbmNlbCBvdXQgdGhlIGNvbHVtbiBnYXAgZm9yIHRoZSBsYXN0IGl0ZW0gaW4gZWFjaCByb3dcbiAgICAgIG1hcmdpbi1yaWdodDogKCRob3Jpem9udGFsLWdhcCAqIC0xKTtcblxuICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiBob3Jpem9udGFsO1xuXG4gICAgICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcblxuICAgICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIC13ZWJraXQtZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgIC1tcy1mbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIC13ZWJraXQtYm94LWFsaWduOiBiYXNlbGluZTtcbiAgICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgICAgICAgIC1tcy1mbGV4LWFsaWduOiBiYXNlbGluZTtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuXG4gICAgICAuZ292dWstYnV0dG9uLFxuICAgICAgLmdvdnVrLWxpbmsge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRob3Jpem9udGFsLWdhcDtcbiAgICAgIH1cblxuICAgICAgLmdvdnVrLWxpbmsge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGltcG9ydCBcIi4uL2Jhc2VcIjtcblxuQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL29iamVjdHMvZm9ybS1ncm91cFwiKSB7XG4gIC5nb3Z1ay1mb3JtLWdyb3VwIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1jbGVhcmZpeDtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig2LCBcImJvdHRvbVwiKTtcblxuICAgIC5nb3Z1ay1mb3JtLWdyb3VwOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZW1vdmUgbWFyZ2luIGZyb20gbGFzdCBpdGVtIGluIG5lc3RlZCBncm91cHNcbiAgICB9XG4gIH1cblxuICAuZ292dWstZm9ybS1ncm91cC0tZXJyb3Ige1xuICAgIHBhZGRpbmctbGVmdDogZ292dWstc3BhY2luZygzKTtcbiAgICBib3JkZXItbGVmdDogJGdvdnVrLWJvcmRlci13aWR0aC1mb3JtLWdyb3VwLWVycm9yIHNvbGlkICRnb3Z1ay1lcnJvci1jb2xvdXI7XG5cbiAgICAuZ292dWstZm9ybS1ncm91cCB7XG4gICAgICAvLyBSZXNldCBlcnJvciBzdHlsZXMgaW4gbmVzdGVkIGZvcm0gZ3JvdXBzIHRoYXQgbWlnaHQgaGF2ZSBlcnJvciBjbGFzc1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLy9cbi8vLyBAZ3JvdXAgaGVscGVycy9sYXlvdXRcbi8vLy9cblxuLy8vIENsZWFyIGZsb2F0ZWQgY29udGVudCB3aXRoaW4gYSBjb250YWluZXIgdXNpbmcgYSBwc2V1ZG8gZWxlbWVudFxuLy8vXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLWNsZWFyZml4IHtcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuIiwiQGltcG9ydCBcIi4uL2Jhc2VcIjtcblxuQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL29iamVjdHMvZ3JpZFwiKSB7XG4gIC5nb3Z1ay1ncmlkLXJvdyB7XG4gICAgQGluY2x1ZGUgZ292dWstY2xlYXJmaXg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtICgkZ292dWstZ3V0dGVyLWhhbGYpO1xuICAgIG1hcmdpbi1sZWZ0OiAtICgkZ292dWstZ3V0dGVyLWhhbGYpO1xuICB9XG5cbiAgQGVhY2ggJHdpZHRoIGluIG1hcC1rZXlzKCRnb3Z1ay1ncmlkLXdpZHRocykge1xuICAgIC5nb3Z1ay1ncmlkLWNvbHVtbi0jeyR3aWR0aH0ge1xuICAgICAgQGluY2x1ZGUgZ292dWstZ3JpZC1jb2x1bW4oJHdpZHRoKTtcbiAgICB9XG4gIH1cblxuICAvLyBUaGVzZSAqbXVzdCogYmUgZGVmaW5lZCBpbiBhIHNlcGFyYXRlIGxvb3AgYXMgdGhleSBoYXZlIHRoZSBzYW1lXG4gIC8vIHNwZWNpZmljaXR5IGFzIHRoZSBub24tYnJlYWtwb2ludCBzcGVjaWZpYyBjbGFzc2VzLCBzbyBuZWVkIHRvIGFwcGVhciBhZnRlclxuICAvLyB0aGVtIGluIHRoZSBvdXRwdXR0ZWQgQ1NTXG4gIEBlYWNoICR3aWR0aCBpbiBtYXAta2V5cygkZ292dWstZ3JpZC13aWR0aHMpIHtcbiAgICAuZ292dWstZ3JpZC1jb2x1bW4tI3skd2lkdGh9LWZyb20tZGVza3RvcCB7XG4gICAgICBAaW5jbHVkZSBnb3Z1ay1ncmlkLWNvbHVtbigkd2lkdGgsICRhdDogZGVza3RvcCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8vXG4vLy8gQGdyb3VwIGhlbHBlcnMvbGF5b3V0XG4vLy8vXG5cbi8vLyBHcmlkIHdpZHRoIHBlcmNlbnRhZ2Vcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAka2V5IC0gTmFtZSBvZiBncmlkIHdpZHRoIChlLmcuIHR3by10aGlyZHMpXG4vLy8gQHJldHVybiB7TnVtYmVyfSBQZXJjZW50YWdlIHdpZHRoXG4vLy8gQHRocm93IGlmIGAka2V5YCBpcyBub3QgYSB2YWxpZCBncmlkIHdpZHRoXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQGZ1bmN0aW9uIGdvdnVrLWdyaWQtd2lkdGgoJGtleSkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGdvdnVrLWdyaWQtd2lkdGhzLCAka2V5KSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRnb3Z1ay1ncmlkLXdpZHRocywgJGtleSk7XG4gIH1cblxuICBAZXJyb3IgXCJVbmtub3duIGdyaWQgd2lkdGggYCN7JGtleX1gXCI7XG59XG5cbi8vLyBHZW5lcmF0ZSBncmlkIGNvbHVtbiBzdHlsZXNcbi8vL1xuLy8vIENyZWF0ZXMgYSBncmlkIGNvbHVtbiB3aXRoIHN0YW5kYXJkIGd1dHRlciBiZXR3ZWVuIHRoZSBjb2x1bW5zLlxuLy8vXG4vLy8gR3JpZCB3aWR0aHMgYXJlIGRlZmluZWQgaW4gdGhlIGAkZ292dWstZ3JpZC13aWR0aHNgIG1hcC5cbi8vL1xuLy8vIEJ5IGRlZmF1bHQgdGhlIGNvbHVtbiB3aWR0aCBjaGFuZ2VzIGZyb20gMTAwJSB0byBzcGVjaWZpZWQgd2lkdGggYXQgdGhlXG4vLy8gJ3RhYmxldCcgYnJlYWtwb2ludCwgYnV0IG90aGVyIGJyZWFrcG9pbnRzIGNhbiBiZSBzcGVjaWZpZWQgdXNpbmcgdGhlIGAkYXRgXG4vLy8gcGFyYW1ldGVyLlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR3aWR0aCBbZnVsbF0gbmFtZSBvZiBhIGdyaWQgd2lkdGggZnJvbSAkZ292dWstZ3JpZC13aWR0aHNcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGZsb2F0IFtsZWZ0XSBsZWZ0IHwgcmlnaHRcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGF0IFt0YWJsZXRdIC0gbW9iaWxlIHwgdGFibGV0IHwgZGVza3RvcCB8IGFueSBjdXN0b20gYnJlYWtwb2ludFxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIERlZmF1bHRcbi8vLyAgIC5nb3Z1ay1ncmlkLWNvbHVtbi10d28tdGhpcmRzIHtcbi8vLyAgICAgQGluY2x1ZGUgZ292dWstZ3JpZC1jb2x1bW4odHdvLXRoaXJkcylcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBDdXN0b21pc2luZyB0aGUgYnJlYWtwb2ludCB3aGVyZSB3aWR0aCBwZXJjZW50YWdlIGlzIGFwcGxpZWRcbi8vLyAgIC5nb3Z1ay1ncmlkLWNvbHVtbi1vbmUtaGFsZi1hdC1kZXNrdG9wIHtcbi8vLyAgICAgQGluY2x1ZGUgZ292dWstZ3JpZC1jb2x1bW4ob25lLWhhbGYsICRhdDogZGVza3RvcCk7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3VzdG9taXNpbmcgdGhlIGZsb2F0IGRpcmVjdGlvblxuLy8vICAgLmdvdnVrLWdyaWQtY29sdW1uLW9uZS1oYWxmLXJpZ2h0IHtcbi8vLyAgICAgQGluY2x1ZGUgZ292dWstZ3JpZC1jb2x1bW4odHdvLXRoaXJkcywgJGZsb2F0OiByaWdodCk7XG4vLy8gICB9XG4vLy9cbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG5AbWl4aW4gZ292dWstZ3JpZC1jb2x1bW4oJHdpZHRoOiBmdWxsLCAkZmxvYXQ6IGxlZnQsICRhdDogdGFibGV0KSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIEBpZiAkYXQgIT0gZGVza3RvcCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgcGFkZGluZzogMCAkZ292dWstZ3V0dGVyLWhhbGY7XG4gIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiAkYXQpIHtcbiAgICB3aWR0aDogZ292dWstZ3JpZC13aWR0aCgkd2lkdGgpO1xuICAgIGZsb2F0OiAkZmxvYXQ7XG4gIH1cbn1cbiIsIkBpbXBvcnQgXCIuLi9iYXNlXCI7XG5cbi8vLy9cbi8vLyBAZ3JvdXAgb2JqZWN0cy9sYXlvdXRcbi8vLy9cblxuLy8gRXhhbXBsZSB1c2FnZSB3aXRoIEJyZWFkY3J1bWJzLCBwaGFzZSBiYW5uZXJzLCBiYWNrIGxpbmtzOlxuLy8gPGRpdiBjbGFzcz1cImdvdnVrLXdpZHRoLWNvbnRhaW5lclwiPlxuLy8gICA8IS0tIEJyZWFkY3J1bWJzLCBwaGFzZSBiYW5uZXJzLCBiYWNrIGxpbmtzIGFyZSBwbGFjZWQgaW4gaGVyZS4gLS0+XG4vLyAgIDxkaXYgY2xhc3M9XCJnb3Z1ay1tYWluLXdyYXBwZXJcIj5cbi8vICAgICAgIDwhLS0gV3JhcHBlciBmb3IgdGhlIG1haW4gY29udGVudCBvZiB5b3VyIHBhZ2Ugd2hpY2ggYXBwbGllcyBwYWRkaW5nXG4vLyAgICAgICAgICAgIHRvIHRoZSB0b3AgLyBib3R0b20gLS0+XG4vLyAgIDwvZGl2PlxuLy8gPC9kaXY+XG4vL1xuLy8gRXhhbXBsZSB1c2FnZSB3aXRob3V0IEJyZWFkY3J1bWJzLCBwaGFzZSBiYW5uZXJzLCBiYWNrIGxpbmtzOlxuLy8gPGRpdiBjbGFzcz1cImdvdnVrLXdpZHRoLWNvbnRhaW5lclwiPlxuLy8gICA8ZGl2IGNsYXNzPVwiZ292dWstbWFpbi13cmFwcGVyIGdvdnVrLW1haW4td3JhcHBlci0tbFwiPlxuLy8gICAgICAgPCEtLSBXcmFwcGVyIGZvciB0aGUgbWFpbiBjb250ZW50IG9mIHlvdXIgcGFnZSB3aGljaCBhcHBsaWVzIHBhZGRpbmdcbi8vICAgICAgICAgICAgdG8gdGhlIHRvcCAvIGJvdHRvbSAtLT5cbi8vICAgPC9kaXY+XG4vLyA8L2Rpdj5cblxuLy8vIEBkZXByZWNhdGVkIFJlcGxhY2UgdGhpcyBtaXhpbiB3aXRoIG1vcmUgZGlyZWN0IHJlZmVyZW5jZXMgdG8gdGhlIFtzcGFjaW5nXG4vLy8gbWl4aW5zXShodHRwczovL2Rlc2lnbi1zeXN0ZW0uc2VydmljZS5nb3YudWsvc3R5bGVzL3NwYWNpbmcvI3NwYWNpbmctb24tY3VzdG9tLWNvbXBvbmVudHMpLlxuQG1peGluIGdvdnVrLW1haW4td3JhcHBlciB7XG4gIC8vIEluIElFMTEgdGhlIGBtYWluYCBlbGVtZW50IGNhbiBiZSB1c2VkLCBidXQgaXMgbm90IHJlY29nbml6ZWQgIOKAk1xuICAvLyBtZWFuaW5nIGl0J3Mgbm90IGRlZmluZWQgaW4gSUUncyBkZWZhdWx0IHN0eWxlIHNoZWV0LFxuICAvLyBzbyBpdCB1c2VzIENTUyBpbml0aWFsIHZhbHVlLCB3aGljaCBpcyBpbmxpbmUuXG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLXRvcDogZ292dWstc3BhY2luZyg0KTtcbiAgcGFkZGluZy1ib3R0b206IGdvdnVrLXNwYWNpbmcoNCk7XG5cbiAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgIC8vIFRoaXMgc3BhY2luZyBpcyBtYW51YWxseSBhZGp1c3RlZCB0byByZXBsaWNhdGUgdGhlIG1hcmdpbiBvZlxuICAgIC8vIGdvdnVrLWhlYWRpbmcteGwgKDUwcHgpIG1pbnVzIHRoZSBzcGFjaW5nIG9mIGJhY2sgbGluayBhbmRcbiAgICAvLyBicmVhZGNydW1icyAoMTBweClcbiAgICBwYWRkaW5nLXRvcDogZ292dWstc3BhY2luZyg3KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogZ292dWstc3BhY2luZyg3KTtcbiAgfVxufVxuXG4vLy8gVXNlIGdvdnVrLW1haW4td3JhcHBlci0tbCB3aGVuIHlvdSBwYWdlIGRvZXMgbm90IGhhdmUgQnJlYWRjcnVtYnMsIHBoYXNlXG4vLy8gYmFubmVycyBvciBiYWNrIGxpbmtzLlxuLy8vXG4vLy8gQGRlcHJlY2F0ZWQgUmVwbGFjZSB0aGlzIG1peGluIHdpdGggbW9yZSBkaXJlY3QgcmVmZXJlbmNlcyB0byB0aGUgW3NwYWNpbmdcbi8vLyBtaXhpbnNdKGh0dHBzOi8vZGVzaWduLXN5c3RlbS5zZXJ2aWNlLmdvdi51ay9zdHlsZXMvc3BhY2luZy8jc3BhY2luZy1vbi1jdXN0b20tY29tcG9uZW50cykuXG5AbWl4aW4gZ292dWstbWFpbi13cmFwcGVyLS1sIHtcbiAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1wYWRkaW5nKDgsIFwidG9wXCIpO1xufVxuXG5AaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvb2JqZWN0cy9tYWluLXdyYXBwZXJcIikge1xuICAuZ292dWstbWFpbi13cmFwcGVyIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1tYWluLXdyYXBwZXI7XG4gIH1cblxuICAvLyBVc2luZyB0aGUgYC5nb3Z1ay1tYWluLXdyYXBwZXItLWF1dG8tc3BhY2luZ2AgbW9kaWZpZXIgc2hvdWxkIGFwcGx5IHRoZVxuICAvLyBjb3JyZWN0IHNwYWNpbmcgZGVwZW5kaW5nIG9uIHdoZXRoZXIgdGhlcmUgYXJlIGFueSBlbGVtZW50c1xuICAvLyAoc3VjaCB0aGUgYmFjayBsaW5rLCBicmVhZGNydW1icyBvciBwaGFzZSBiYW5uZXIgY29tcG9uZW50cykgYmVmb3JlIHRoZVxuICAvLyBgLmdvdnVrLW1haW4td3JhcHBlcmAgaW4gdGhlIGBnb3Z1ay13aWR0aC1jb250YWluZXJgLlxuICAvL1xuICAvLyBJZiB5b3UgbmVlZCB0byBjb250cm9sIHRoZSBzcGFjaW5nIG1hbnVhbGx5LCB1c2UgdGhlXG4gIC8vIGBnb3Z1ay1tYWluLXdyYXBwZXItLWxgIG1vZGlmaWVyIGluc3RlYWQuXG4gIC5nb3Z1ay1tYWluLXdyYXBwZXItLWF1dG8tc3BhY2luZzpmaXJzdC1jaGlsZCxcbiAgLmdvdnVrLW1haW4td3JhcHBlci0tbCB7XG4gICAgQGluY2x1ZGUgZ292dWstbWFpbi13cmFwcGVyLS1sO1xuICB9XG59XG4iLCJAaW1wb3J0IFwiLi4vYmFzZVwiO1xuXG4vLy8vXG4vLy8gQGdyb3VwIG9iamVjdHMvbGF5b3V0XG4vLy8vXG5cbi8vLyBXaWR0aCBjb250YWluZXIgbWl4aW5cbi8vL1xuLy8vIFVzZWQgdG8gY3JlYXRlIHBhZ2Ugd2lkdGggYW5kIGN1c3RvbSB3aWR0aCBjb250YWluZXIgY2xhc3Nlcy5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkd2lkdGggWyRnb3Z1ay1wYWdlLXdpZHRoXSAtIFdpZHRoIGluIHBpeGVsc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIENyZWF0aW5nIGEgMTIwMHB4IHdpZGUgY29udGFpbmVyIGNsYXNzXG4vLy8gIC5hcHAtd2lkdGgtY29udGFpbmVyLS13aWRlIHtcbi8vLyAgICBAaW5jbHVkZSBnb3Z1ay13aWR0aC1jb250YWluZXIoMTIwMHB4KTtcbi8vLyAgfVxuLy8vXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLXdpZHRoLWNvbnRhaW5lcigkd2lkdGg6ICRnb3Z1ay1wYWdlLXdpZHRoKSB7XG5cbiAgLy8gQnkgZGVmYXVsdCwgbGltaXQgdGhlIHdpZHRoIG9mIHRoZSBjb250YWluZXIgdG8gdGhlIHBhZ2Ugd2lkdGhcbiAgbWF4LXdpZHRoOiAkd2lkdGg7XG5cbiAgLy8gT24gbW9iaWxlLCBhZGQgaGFsZiB3aWR0aCBndXR0ZXJzXG4gIG1hcmdpbi1yaWdodDogJGdvdnVrLWd1dHRlci1oYWxmO1xuICBtYXJnaW4tbGVmdDogJGdvdnVrLWd1dHRlci1oYWxmO1xuXG4gIC8vIFJlc3BlY3QgJ2Rpc3BsYXkgY3V0b3V0JyBzYWZlIGFyZWEgKGF2b2lkcyBub3RjaGVzIGFuZCByb3VuZGVkIGNvcm5lcnMpXG4gIEBzdXBwb3J0cyAobWFyZ2luOiB1bnF1b3RlKFwibWF4KGNhbGMoMHB4KSlcIikpIHtcbiAgICAkZ3V0dGVyLXNhZmUtYXJlYS1yaWdodDogLXdlYmtpdC1jYWxjKCN7JGdvdnVrLWd1dHRlci1oYWxmfSArIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKTtcbiAgICAkZ3V0dGVyLXNhZmUtYXJlYS1yaWdodDogY2FsYygjeyRnb3Z1ay1ndXR0ZXItaGFsZn0gKyBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KSk7XG4gICAgJGd1dHRlci1zYWZlLWFyZWEtbGVmdDogLXdlYmtpdC1jYWxjKCN7JGdvdnVrLWd1dHRlci1oYWxmfSArIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCkpO1xuICAgICRndXR0ZXItc2FmZS1hcmVhLWxlZnQ6IGNhbGMoI3skZ292dWstZ3V0dGVyLWhhbGZ9ICsgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSk7XG5cbiAgICAvLyBVc2UgbWF4KCkgdG8gcGljayBsYXJnZXN0IG1hcmdpbiwgZGVmYXVsdCBvciB3aXRoIHNhZmUgYXJlYVxuICAgIC8vIEVzY2FwZWQgZHVlIHRvIFNhc3MgbWF4KCkgdnMuIENTUyBuYXRpdmUgbWF4KClcbiAgICBtYXJnaW4tcmlnaHQ6IHVucXVvdGUoXCJtYXgoI3skZ292dWstZ3V0dGVyLWhhbGZ9LCAjeyRndXR0ZXItc2FmZS1hcmVhLXJpZ2h0fSlcIik7XG4gICAgbWFyZ2luLWxlZnQ6IHVucXVvdGUoXCJtYXgoI3skZ292dWstZ3V0dGVyLWhhbGZ9LCAjeyRndXR0ZXItc2FmZS1hcmVhLWxlZnR9KVwiKTtcbiAgfVxuXG4gIC8vIE9uIHRhYmxldCwgYWRkIGZ1bGwgd2lkdGggZ3V0dGVyc1xuICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZ292dWstZ3V0dGVyO1xuICAgIG1hcmdpbi1sZWZ0OiAkZ292dWstZ3V0dGVyO1xuXG4gICAgLy8gUmVzcGVjdCAnZGlzcGxheSBjdXRvdXQnIHNhZmUgYXJlYSAoYXZvaWRzIG5vdGNoZXMgYW5kIHJvdW5kZWQgY29ybmVycylcbiAgICBAc3VwcG9ydHMgKG1hcmdpbjogdW5xdW90ZShcIm1heChjYWxjKDBweCkpXCIpKSB7XG4gICAgICAkZ3V0dGVyLXNhZmUtYXJlYS1yaWdodDogLXdlYmtpdC1jYWxjKCN7JGdvdnVrLWd1dHRlci1oYWxmfSArIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKTtcbiAgICAgICRndXR0ZXItc2FmZS1hcmVhLXJpZ2h0OiBjYWxjKCN7JGdvdnVrLWd1dHRlci1oYWxmfSArIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKTtcbiAgICAgICRndXR0ZXItc2FmZS1hcmVhLWxlZnQ6IC13ZWJraXQtY2FsYygjeyRnb3Z1ay1ndXR0ZXItaGFsZn0gKyBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpKTtcbiAgICAgICRndXR0ZXItc2FmZS1hcmVhLWxlZnQ6IGNhbGMoI3skZ292dWstZ3V0dGVyLWhhbGZ9ICsgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSk7XG5cbiAgICAgIC8vIFVzZSBtYXgoKSB0byBwaWNrIGxhcmdlc3QgbWFyZ2luLCBkZWZhdWx0IG9yIHdpdGggc2FmZSBhcmVhXG4gICAgICAvLyBFc2NhcGVkIGR1ZSB0byBTYXNzIG1heCgpIHZzLiBDU1MgbmF0aXZlIG1heCgpXG4gICAgICBtYXJnaW4tcmlnaHQ6IHVucXVvdGUoXCJtYXgoI3skZ292dWstZ3V0dGVyfSwgI3skZ3V0dGVyLXNhZmUtYXJlYS1yaWdodH0pXCIpO1xuICAgICAgbWFyZ2luLWxlZnQ6IHVucXVvdGUoXCJtYXgoI3skZ292dWstZ3V0dGVyfSwgI3skZ3V0dGVyLXNhZmUtYXJlYS1sZWZ0fSlcIik7XG4gICAgfVxuICB9XG5cbiAgLy8gQXMgc29vbiBhcyB0aGUgdmlld3BvcnQgaXMgZ3JlYXRlciB0aGFuIHRoZSB3aWR0aCBvZiB0aGUgcGFnZSBwbHVzIHRoZVxuICAvLyBndXR0ZXJzLCBqdXN0IGNlbnRyZSB0aGUgY29udGVudCBpbnN0ZWFkIG9mIGFkZGluZyBndXR0ZXJzLlxuICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkYW5kOiBcIihtaW4td2lkdGg6ICN7KCR3aWR0aCArICRnb3Z1ay1ndXR0ZXIgKiAyKX0pXCIpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG5cbiAgICAvLyBTaW5jZSBhIHNhZmUgYXJlYSBtYXkgaGF2ZSBwcmV2aW91c2x5IGJlZW4gc2V0IGFib3ZlLFxuICAgIC8vIHdlIG5lZWQgdG8gZHVwbGljYXRlIHRoaXMgbWFyZ2luIHRoYXQgY2VudGVycyB0aGUgcGFnZS5cbiAgICBAc3VwcG9ydHMgKG1hcmdpbjogdW5xdW90ZShcIm1heChjYWxjKDBweCkpXCIpKSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBnb3Z1ay1pZi1pZTgge1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgLy8gU2luY2UgbWVkaWEgcXVlcmllcyBhcmUgbm90IHN1cHBvcnRlZCBpbiBJRTgsXG4gICAgLy8gd2UgbmVlZCB0byBkdXBsaWNhdGUgdGhpcyBtYXJnaW4gdGhhdCBjZW50ZXJzIHRoZSBwYWdlLlxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxufVxuXG5AaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvb2JqZWN0cy93aWR0aC1jb250YWluZXJcIikge1xuICAuZ292dWstd2lkdGgtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay13aWR0aC1jb250YWluZXI7XG4gIH1cbn1cbiIsIi8vLy9cbi8vLyBAZ3JvdXAgc2V0dGluZ3MvbWVhc3VyZW1lbnRzXG4vLy8vXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUGFnZSBsYXlvdXRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLy8gV2lkdGggb2YgbWFpbiBjb250YWluZXJcbi8vL1xuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1wYWdlLXdpZHRoOiA5NjBweCAhZGVmYXVsdDtcblxuLy8vIE1hcCBvZiBncmlkIGNvbHVtbiB3aWR0aHNcbi8vL1xuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1ncmlkLXdpZHRoczogKFxuICBvbmUtcXVhcnRlcjogMjUlLFxuICBvbmUtdGhpcmQ6IDMzLjMzMzMlLFxuICBvbmUtaGFsZjogNTAlLFxuICB0d28tdGhpcmRzOiA2Ni42NjY2JSxcbiAgdGhyZWUtcXVhcnRlcnM6IDc1JSxcbiAgZnVsbDogMTAwJVxuKSAhZGVmYXVsdDtcblxuLy8vIFdpZHRoIG9mIGd1dHRlciBiZXR3ZWVuIGdyaWQgY29sdW1uc1xuLy8vXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLWd1dHRlcjogMzBweCAhZGVmYXVsdDtcblxuLy8vIFdpZHRoIG9mIGhhbGYgdGhlIGd1dHRlciBiZXR3ZWVuIGdyaWQgY29sdW1uc1xuLy8vXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLWd1dHRlci1oYWxmOiAkZ292dWstZ3V0dGVyIC8gMjtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBCb3JkZXJzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8vIFN0YW5kYXJkIGJvcmRlciB3aWR0aFxuLy8vXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLWJvcmRlci13aWR0aDogNXB4ICFkZWZhdWx0O1xuXG4vLy8gV2lkZSBib3JkZXIgd2lkdGhcbi8vL1xuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1ib3JkZXItd2lkdGgtd2lkZTogMTBweCAhZGVmYXVsdDtcblxuLy8vIE5hcnJvdyBib3JkZXIgd2lkdGhcbi8vL1xuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1ib3JkZXItd2lkdGgtbmFycm93OiA0cHggIWRlZmF1bHQ7XG5cbi8vLyBGb3JtIGNvbnRyb2wgYm9yZGVyIHdpZHRoXG4vLy9cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudDogMnB4ICFkZWZhdWx0O1xuXG4vLy8gRm9ybSBjb250cm9sIGJvcmRlciB3aWR0aCB3aGVuIGluIGVycm9yIHN0YXRlXG4vLy9cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vIEBkZXByZWNhdGVkIFVzZSAkZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudCBpbnN0ZWFkLiBUaGVyZSBzaG91bGQgYmUgbm9cbi8vLyAgIGRpZmZlcmVuY2UgaW4gdGhpY2tuZXNzIGZvciBpbnB1dHMgaW4gdGhlIGVycm9yIHN0YXRlLCBpbiBvcmRlciB0b1xuLy8vICAgbWFpbnRhaW4gYSBkaXN0aW5jdCBmb2N1cyBzdGF0ZS5cblxuJGdvdnVrLWJvcmRlci13aWR0aC1mb3JtLWVsZW1lbnQtZXJyb3I6IDJweCAhZGVmYXVsdDtcblxuLy8vIEZvcm0gZ3JvdXAgYm9yZGVyIHdpZHRoIHdoZW4gaW4gZXJyb3Igc3RhdGVcbi8vL1xuLy8vIEB0eXBlIE51bWJlclxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1ncm91cC1lcnJvcjogJGdvdnVrLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciB3aWR0aCBvZiBmb2N1cyBvdXRsaW5lXG4vLy9cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstZm9jdXMtd2lkdGg6IDNweCAhZGVmYXVsdDtcblxuLy8vIEhvdmVyIHdpZHRoIGZvciBmb3JtIGNvbnRyb2xzIHdpdGggYSBob3ZlciBzdGF0ZVxuLy8vXG4vLy8gQHR5cGUgTnVtYmVyXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuJGdvdnVrLWhvdmVyLXdpZHRoOiAxMHB4ICFkZWZhdWx0O1xuIiwiQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvbXBvbmVudC9hY2NvcmRpb25cIikge1xuICAuZ292dWstYWNjb3JkaW9uIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig2LCBcImJvdHRvbVwiKTtcbiAgfVxuXG4gIC8vIEJvcmRlcnMgYmV0d2VlbiBhY2NvcmRpb24gc2VjdGlvbnNcbiAgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbiB7XG4gICAgcGFkZGluZy10b3A6IGdvdnVrLXNwYWNpbmcoMyk7XG4gIH1cblxuICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWhlYWRlciB7XG4gICAgcGFkZGluZy10b3A6IGdvdnVrLXNwYWNpbmcoMyk7XG4gICAgcGFkZGluZy1ib3R0b206IGdvdnVrLXNwYWNpbmcoMyk7XG4gIH1cblxuICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWhlYWRpbmcge1xuICAgIC8vIE92ZXJyaWRlIGJyb3dzZXIgZGVmYXVsdHMgdG8gZW5zdXJlIGNvbnNpc3RlbnQgZWxlbWVudCBoZWlnaHRcbiAgICAvLyBGb250IHNpemUgaXMgc2V0IGluIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tYnV0dG9uXG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgyNCk7XG5cbiAgICBtYXJnaW4tdG9wOiAwOyAvLyBPdmVycmlkZSBicm93c2VyIGRlZmF1bHRcbiAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBPdmVycmlkZSBicm93c2VyIGRlZmF1bHRcbiAgfVxuXG4gIC8vIEJ1dHRvbnMgd2l0aGluIHRoZSBzZWN0aW9ucyBkb27igJl0IG5lZWQgZGVmYXVsdCBzdHlsaW5nXG4gIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAyNCwgJHdlaWdodDogYm9sZCk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZy10b3A6IGdvdnVrLXNwYWNpbmcoMyk7XG4gIH1cblxuICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLXN1bW1hcnkge1xuICAgIG1hcmdpbi10b3A6IGdvdnVrLXNwYWNpbmcoMik7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgYm90dG9tIG1hcmdpbiBmcm9tIHRoZSBsYXN0IGl0ZW0gaW5zaWRlIHRoZSBjb250ZW50XG4gIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tY29udGVudCA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLy8gSmF2YVNjcmlwdCBlbmFibGVkXG4gIC5qcy1lbmFibGVkIHtcbiAgICAuZ292dWstYWNjb3JkaW9uIHtcbiAgICAgIC8vIEJvcmRlciBhdCB0aGUgYm90dG9tIG9mIHRoZSB3aG9sZSBhY2NvcmRpb25cbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ292dWstYm9yZGVyLWNvbG91cjtcbiAgICB9XG5cbiAgICAvLyBCb3JkZXJzIGJldHdlZW4gYWNjb3JkaW9uIHNlY3Rpb25zXG4gICAgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG5cbiAgICAvLyBIaWRlIHRoZSBib2R5IG9mIGNvbGxhcHNlZCBzZWN0aW9uc1xuICAgIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1wYWRkaW5nKDMsIFwidG9wXCIpO1xuICAgICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1wYWRkaW5nKDMsIFwiYm90dG9tXCIpO1xuICAgIH1cblxuICAgIC8vIFNob3cgdGhlIGJvZHkgb2YgZXhwYW5kZWQgc2VjdGlvbnNcbiAgICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLS1leHBhbmRlZCAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWNvbnRlbnQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLy8gVGhpcyBpcyBzdHlsZWQgdG8gbG9vayBsaWtlIGEgbGluayBub3QgYSBidXR0b25cbiAgICAuZ292dWstYWNjb3JkaW9uX19vcGVuLWFsbCB7XG4gICAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAxNik7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGJvcmRlci13aWR0aDogMDtcbiAgICAgIGNvbG9yOiAkZ292dWstbGluay1jb2xvdXI7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuXG4gICAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLWNvbW1vbjtcbiAgICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstc3R5bGUtZGVmYXVsdDtcblxuICAgICAgLy8gUmVtb3ZlIGRlZmF1bHQgYnV0dG9uIGZvY3VzIG91dGxpbmUgaW4gRmlyZWZveFxuICAgICAgJjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZWN0aW9uIGhlYWRlcnMgaGF2ZSBhIHBvaW50ZXIgY3Vyc29yIGFzIGFuIGFkZGl0aW9uYWwgYWZmb3JkYW5jZVxuICAgIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24taGVhZGVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIC8vIFNhZmUgYXJlYSBvbiB0aGUgcmlnaHQgdG8gYXZvaWQgY2xhc2hpbmcgd2l0aCBpY29uXG4gICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRnb3Z1ay1ib3JkZXItY29sb3VyO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgIC8vIEJ1dHRvbnMgd2l0aGluIHRoZSBoZWFkZXJzIGRvbuKAmXQgbmVlZCBkZWZhdWx0IHN0eWxpbmdcbiAgICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWJ1dHRvbiB7XG4gICAgICBAaW5jbHVkZSBnb3Z1ay10eXBvZ3JhcGh5LWNvbW1vbjtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgICAgY29sb3I6ICRnb3Z1ay1saW5rLWNvbG91cjtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgQGluY2x1ZGUgZ292dWstZm9jdXNlZC10ZXh0O1xuICAgICAgfVxuXG4gICAgICAvLyBSZW1vdmUgZGVmYXVsdCBidXR0b24gZm9jdXMgb3V0bGluZSBpbiBGaXJlZm94XG4gICAgICAmOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEV4dGVuZCB0aGUgdG91Y2ggYXJlYSBvZiB0aGUgYnV0dG9uIHRvIHNwYW4gdGhlIHNlY3Rpb24gaGVhZGVyXG4gICAgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1idXR0b246YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICB9XG5cbiAgICAuZ292dWstYWNjb3JkaW9uX19zZWN0aW9uLWJ1dHRvbjpob3Zlcjpub3QoOmZvY3VzKSB7XG4gICAgICBjb2xvcjogJGdvdnVrLWxpbmstaG92ZXItY29sb3VyO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cbiAgICAgIC8vIFRoaXMgbmVlZHMgdG8gY29tZSBhZnRlciB0aGUgdGV4dC1kZWNvcmF0aW9uIHByb3BlcnR5IG90aGVyd2lzZVxuICAgICAgLy8gdGV4dC1kZWNvcmF0aW9uLCBhcyBhIHNob3J0aGFuZCBwcm9wZXJ0eSwgcmVzZXRzIGl0IHRvIGF1dG9cbiAgICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgICAgIHRleHQtdW5kZXJsaW5lLW9mZnNldDogJGdvdnVrLWxpbmstdW5kZXJsaW5lLW9mZnNldDtcbiAgICB9XG5cbiAgICAvLyBGb3IgZGV2aWNlcyB0aGF0IGNhbid0IGhvdmVyIHN1Y2ggYXMgdG91Y2ggZGV2aWNlcyxcbiAgICAvLyByZW1vdmUgaG92ZXIgc3RhdGUgYXMgaXQgY2FuIGJlIHN0dWNrIGluIHRoYXQgc3RhdGUgKGlPUykuXG4gICAgQG1lZGlhIChob3Zlcjogbm9uZSkge1xuICAgICAgLmdvdnVrLWFjY29yZGlvbl9fc2VjdGlvbi1idXR0b246aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmdvdnVrLWFjY29yZGlvbl9fY29udHJvbHMge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuXG4gICAgLy8gRGlzcGxheSBhbiBpY29uIHRvIHRoZSByaWdodCBvZiBlYWNoIGhlYWRlciB0byBpbmRpY2F0ZSBvcGVuL2Nsb3NlZCBzdGF0dXMsXG4gICAgLy8gYW5kIGFzIGFuIGFkZGl0aW9uYWwgYWZmb3JkYW5jZS5cbiAgICAuZ292dWstYWNjb3JkaW9uX19pY29uIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICB3aWR0aDogMTZweDtcbiAgICAgIGhlaWdodDogMTZweDtcbiAgICAgIG1hcmdpbi10b3A6IC04cHg7XG4gICAgfVxuXG4gICAgLmdvdnVrLWFjY29yZGlvbl9faWNvbjphZnRlcixcbiAgICAuZ292dWstYWNjb3JkaW9uX19pY29uOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAyNSU7XG4gICAgICBoZWlnaHQ6IDI1JTtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ292dWstY29sb3VyKFwiYmxhY2tcIik7XG4gICAgfVxuXG4gICAgLmdvdnVrLWFjY29yZGlvbl9faWNvbjpiZWZvcmUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLmdvdnVrLWFjY29yZGlvbl9faWNvbjphZnRlciB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgLy8gVmVydGljYWwgYmFyIHNob3VsZCBiZSBoaWRkZW4gd2hlbiBzZWN0aW9uIGlzIG9wZW4sIHRvIGRpc3BsYXkgYSAnLScgaWNvblxuICAgIC5nb3Z1ay1hY2NvcmRpb25fX3NlY3Rpb24tLWV4cGFuZGVkIC5nb3Z1ay1hY2NvcmRpb25fX2ljb246YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vL1xuLy8vIEBncm91cCBzZXR0aW5ncy9saW5rc1xuLy8vL1xuXG4vLy8gRW5hYmxlIG5ldyBsaW5rIHN0eWxlc1xuLy8vXG4vLy8gSWYgZW5hYmxlZCwgdGhlIGxpbmsgc3R5bGVzIHdpbGwgY2hhbmdlLiBVbmRlcmxpbmVzIHdpbGw6XG4vLy9cbi8vLyAtIGJlIGNvbnNpc3RlbnRseSB0aGlubmVyIGFuZCBhIGJpdCBmdXJ0aGVyIGF3YXkgZnJvbSB0aGUgbGluayB0ZXh0XG4vLy8gLSBoYXZlIGEgY2xlYXJlciBob3ZlciBzdGF0ZSwgd2hlcmUgdGhlIHVuZGVybGluZSBnZXRzIHRoaWNrZXIgdG8gbWFrZSB0aGVcbi8vLyAgIGxpbmsgc3RhbmQgb3V0IHRvIHVzZXJzXG4vLy9cbi8vLyBZb3Ugc2hvdWxkIG9ubHkgZW5hYmxlIHRoZSBuZXcgbGluayBzdHlsZXMgaWYgYm90aDpcbi8vL1xuLy8vIC0geW91J3ZlIG1hZGUgc3VyZSB5b3VyIHdob2xlIHNlcnZpY2Ugd2lsbCB1c2UgdGhlIG5ldyBzdHlsZSBjb25zaXN0ZW50bHlcbi8vLyAtIHlvdSBkbyBub3QgaGF2ZSBsaW5rcyBpbiBhIG11bHRpLWNvbHVtbiBDU1MgbGF5b3V0IC0gdGhlcmUncyBbYSBDaHJvbWl1bVxuLy8vICAgYnVnIHRoYXQgYWZmZWN0cyBsaW5rc10oaHR0cHM6Ly9naXRodWIuY29tL2FscGhhZ292L2dvdnVrLWZyb250ZW5kL2lzc3Vlcy8yMjA0KVxuLy8vXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBhY2Nlc3MgcHVibGljXG5cbiRnb3Z1ay1uZXctbGluay1zdHlsZXM6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gVGhpY2tuZXNzIG9mIGxpbmsgdW5kZXJsaW5lc1xuLy8vXG4vLy8gVGhlIGRlZmF1bHQgd2lsbCBiZSBlaXRoZXI6XG4vLy9cbi8vLyAgLSAxcHhcbi8vLyAgLSAwLjA2MjVyZW0sIGlmIGl0J3MgdGhpY2tlciB0aGFuIDFweCBiZWNhdXNlIHRoZSB1c2VyIGhhcyBjaGFuZ2VkIHRoZSB0ZXh0XG4vLy8gICAgc2l6ZSBpbiB0aGVpciBicm93c2VyXG4vLy9cbi8vLyBTZXQgdGhpcyB2YXJpYWJsZSB0byBgZmFsc2VgIHRvIGF2b2lkIHNldHRpbmcgYSB0aGlja25lc3MuXG4vLy9cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstbGluay11bmRlcmxpbmUtdGhpY2tuZXNzOiB1bnF1b3RlKFwibWF4KDFweCwgLjA2MjVyZW0pXCIpICFkZWZhdWx0O1xuXG4vLy8gT2Zmc2V0IG9mIGxpbmsgdW5kZXJsaW5lcyBmcm9tIHRleHQgYmFzZWxpbmVcbi8vL1xuLy8vIFNldCB0aGlzIHZhcmlhYmxlIHRvIGBmYWxzZWAgdG8gYXZvaWQgc2V0dGluZyBhbiBvZmZzZXQuXG4vLy9cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstbGluay11bmRlcmxpbmUtb2Zmc2V0OiAuMWVtICFkZWZhdWx0O1xuXG4vLy8gVGhpY2tuZXNzIG9mIGxpbmsgdW5kZXJsaW5lcyBpbiBob3ZlciBzdGF0ZVxuLy8vXG4vLy8gVGhlIGRlZmF1bHQgZm9yIGVhY2ggbGluayB3aWxsIGJlIHRoZSB0aGlja2VzdCBvZiB0aGUgZm9sbG93aW5nOlxuLy8vXG4vLy8gIC0gM3B4XG4vLy8gIC0gMC4xODc1cmVtLCBpZiBpdCdzIHRoaWNrZXIgdGhhbiAzcHggYmVjYXVzZSB0aGUgdXNlciBoYXMgY2hhbmdlZCB0aGUgdGV4dFxuLy8vICAgIHNpemUgaW4gdGhlaXIgYnJvd3NlclxuLy8vICAtIDAuMTJlbSAocmVsYXRpdmUgdG8gdGhlIGxpbmsncyB0ZXh0IHNpemUpXG4vLy9cbi8vLyBTZXQgdGhpcyB2YXJpYWJsZSB0byBgZmFsc2VgIHRvIGF2b2lkIHNldHRpbmcgYSB0aGlja25lc3MuXG4vLy9cbi8vLyBAdHlwZSBOdW1iZXJcbi8vLyBAYWNjZXNzIHB1YmxpY1xuXG4kZ292dWstbGluay1ob3Zlci11bmRlcmxpbmUtdGhpY2tuZXNzOiB1bnF1b3RlKFwibWF4KDNweCwgLjE4NzVyZW0sIC4xMmVtKVwiKSAhZGVmYXVsdDtcbiIsIkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9jb21wb25lbnQvYmFjay1saW5rXCIpIHtcblxuICAvLyBTaXplIG9mIGNoZXZyb24gKGV4Y2x1ZGluZyBib3JkZXIpXG4gICRjaGV2cm9uLXNpemU6IDdweDtcblxuICAvLyBTaXplIG9mIGNoZXZyb24gYm9yZGVyXG4gICRjaGV2cm9uLWJvcmRlci13aWR0aDogMXB4O1xuXG4gIC8vIENvbG91ciBvZiBjaGV2cm9uXG4gICRjaGV2cm9uLWJvcmRlci1jb2xvdXI6ICRnb3Z1ay1zZWNvbmRhcnktdGV4dC1jb2xvdXI7XG5cbiAgLmdvdnVrLWJhY2stbGluayB7XG4gICAgQGluY2x1ZGUgZ292dWstdHlwb2dyYXBoeS1yZXNwb25zaXZlKCRzaXplOiAxNik7XG4gICAgQGluY2x1ZGUgZ292dWstbGluay1jb21tb247XG4gICAgQGluY2x1ZGUgZ292dWstbGluay1zdHlsZS10ZXh0O1xuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIG1hcmdpbi10b3A6IGdvdnVrLXNwYWNpbmcoMyk7XG4gICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygzKTtcblxuICAgIC8vIEFsbG93IHNwYWNlIGZvciB0aGUgYXJyb3dcbiAgICBwYWRkaW5nLWxlZnQ6IDE0cHg7XG4gIH1cblxuICAvLyBQcmVwZW5kIGxlZnQgcG9pbnRpbmcgY2hldnJvblxuICAuZ292dWstYmFjay1saW5rOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIC8vIFZlcnRpY2FsbHkgYWxpZ24gd2l0aCB0aGUgcGFyZW50IGVsZW1lbnRcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICBAaWYgJGdvdnVrLXVzZS1sZWdhY3ktZm9udCB7XG4gICAgICAvLyBCZWdpbiBhZGp1c3RtZW50cyBmb3IgZm9udCBiYXNlbGluZSBvZmZzZXRcbiAgICAgIC8vIFRoZXNlIHNob3VsZCBiZSByZW1vdmVkIHdoZW4gbGVnYWN5IGZvbnQgc3VwcG9ydCBpcyBkcm9wcGVkXG4gICAgICB0b3A6IC0xcHg7XG4gICAgICBib3R0b206IDFweDtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG5cbiAgICBsZWZ0OiAzcHg7XG5cbiAgICB3aWR0aDogJGNoZXZyb24tc2l6ZTtcbiAgICBoZWlnaHQ6ICRjaGV2cm9uLXNpemU7XG5cbiAgICBtYXJnaW46IGF1dG8gMDtcblxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMjI1ZGVnKTtcblxuICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMjI1ZGVnKTtcblxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjI1ZGVnKTtcblxuICAgIGJvcmRlcjogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAkY2hldnJvbi1ib3JkZXItd2lkdGggJGNoZXZyb24tYm9yZGVyLXdpZHRoIDAgMDtcbiAgICBib3JkZXItY29sb3I6ICRjaGV2cm9uLWJvcmRlci1jb2xvdXI7XG5cbiAgICAvLyBGYWxsIGJhY2sgdG8gYSBsZXNzIHRoYW4gc2lnbiBmb3IgSUU4XG4gICAgQGluY2x1ZGUgZ292dWstaWYtaWU4IHtcbiAgICAgIGNvbnRlbnQ6IFwiXFwwMDNjXCI7IC8vIExlc3MgdGhhbiBzaWduICg8KVxuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBjb2xvcjogJGNoZXZyb24tYm9yZGVyLWNvbG91cjtcblxuICAgICAgLy8gSUU4IGRvZXNuJ3Qgc2VlbSB0byBsaWtlIHJlbmRlcmluZyBwc2V1ZG8tZWxlbWVudHMgdXNpbmcgQGZvbnQtZmFjZXMsXG4gICAgICAvLyBzbyBmYWxsIGJhY2sgdG8gdXNpbmcgYW5vdGhlciBzYW5zLXNlcmlmIGZvbnQgdG8gcmVuZGVyIHRoZSBjaGV2cm9uLlxuICAgICAgZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1iYWNrLWxpbms6Zm9jdXM6YmVmb3JlIHtcbiAgICBib3JkZXItY29sb3I6ICRnb3Z1ay1mb2N1cy10ZXh0LWNvbG91cjtcbiAgfVxuXG4gIC5nb3Z1ay1iYWNrLWxpbms6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTE0cHg7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAtMTRweDtcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgQGlmICRnb3Z1ay11c2UtbGVnYWN5LWZvbnQge1xuICAgIC8vIEJlZ2luIGFkanVzdG1lbnRzIGZvciBmb250IGJhc2VsaW5lIG9mZnNldFxuICAgIC8vIFRoZXNlIHNob3VsZCBiZSByZW1vdmVkIHdoZW4gbGVnYWN5IGZvbnQgc3VwcG9ydCBpcyBkcm9wcGVkXG4gICAgLmdvdnVrLWJhY2stbGluazpiZWZvcmUge1xuICAgICAgJG9mZnNldDogMXB4O1xuXG4gICAgICB0b3A6ICRvZmZzZXQgKiAtMTtcbiAgICAgIGJvdHRvbTogJG9mZnNldDtcbiAgICB9XG4gIH1cbn1cbiIsIkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9jb21wb25lbnQvYnJlYWRjcnVtYnNcIikge1xuXG4gIC8vIFNpemUgb2YgY2hldnJvbiAoZXhjbHVkaW5nIGJvcmRlcilcbiAgJGNoZXZyb24tc2l6ZTogN3B4O1xuXG4gIC8vIFNpemUgb2YgY2hldnJvbiBib3JkZXJcbiAgJGNoZXZyb24tYm9yZGVyLXdpZHRoOiAxcHg7XG5cbiAgLy8gQ29sb3VyIG9mIGNoZXZyb25cbiAgJGNoZXZyb24tYm9yZGVyLWNvbG91cjogJGdvdnVrLXNlY29uZGFyeS10ZXh0LWNvbG91cjtcblxuICAvLyBDYWxjdWxhdGVkIGFsdGl0dWRlICjilrPihpUpIG9mIHRoZSByaWdodC1hbmdsZWQgaXNvc2NlbGVzIGNoZXZyb24gd2l0aCBzaWRlc1xuICAvLyBvZiBsZW5ndGggOCAoN3B4ICsgMXB4IGJvcmRlcik6XG4gIC8vXG4gIC8vIOKImig4wrIgKyA4wrIpICogMC41IOKJhSA1LjY1NVxuICAkY2hldnJvbi1hbHRpdHVkZS1jYWxjdWxhdGVkOiA1LjY1NXB4O1xuXG4gIC5nb3Z1ay1icmVhZGNydW1icyB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTYpO1xuICAgIEBpbmNsdWRlIGdvdnVrLXRleHQtY29sb3VyO1xuXG4gICAgbWFyZ2luLXRvcDogZ292dWstc3BhY2luZygzKTtcbiAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDIpO1xuICB9XG5cbiAgLmdvdnVrLWJyZWFkY3J1bWJzX19saXN0IHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1jbGVhcmZpeDtcblxuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgfVxuXG4gIC5nb3Z1ay1icmVhZGNydW1ic19fbGlzdC1pdGVtIHtcblxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDEpO1xuXG4gICAgLy8gQWRkIGJvdGggbWFyZ2luIGFuZCBwYWRkaW5nIHN1Y2ggdGhhdCB0aGUgY2hldnJvbiBhcHBlYXJzIGNlbnRyYWxseVxuICAgIC8vIGJldHdlZW4gZWFjaCBicmVhZGNydW1iIGl0ZW1cbiAgICBtYXJnaW4tbGVmdDogZ292dWstc3BhY2luZygyKTtcbiAgICBwYWRkaW5nLWxlZnQ6IGdvdnVrLXNwYWNpbmcoMikgKyAkY2hldnJvbi1hbHRpdHVkZS1jYWxjdWxhdGVkO1xuXG4gICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAvLyBDcmVhdGUgYSBjaGV2cm9uIHVzaW5nIGEgYm94IHdpdGggYm9yZGVycyBvbiB0d28gc2lkZXMsIHJvdGF0ZWQgNDVkZWcuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICAgIEBpZiAkZ292dWstdXNlLWxlZ2FjeS1mb250IHtcbiAgICAgICAgLy8gQmVnaW4gYWRqdXN0bWVudHMgZm9yIGZvbnQgYmFzZWxpbmUgb2Zmc2V0XG4gICAgICAgIC8vIFRoZXNlIHNob3VsZCBiZSByZW1vdmVkIHdoZW4gbGVnYWN5IGZvbnQgc3VwcG9ydCBpcyBkcm9wcGVkXG4gICAgICAgIHRvcDogLTFweDtcbiAgICAgICAgYm90dG9tOiAxcHg7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICB9XG5cbiAgICAgIC8vIE9mZnNldCBieSB0aGUgZGlmZmVyZW5jZSBiZXR3ZWVuIHRoZSB3aWR0aCBvZiB0aGUgbm9uLXJvdGF0ZWQgc3F1YXJlXG4gICAgICAvLyBhbmQgaXRzIHdpZHRoIHdoZW4gcm90YXRlZFxuICAgICAgbGVmdDogKCgkY2hldnJvbi1hbHRpdHVkZS1jYWxjdWxhdGVkICogLTIpICsgJGNoZXZyb24tc2l6ZSArICRjaGV2cm9uLWJvcmRlci13aWR0aCk7XG5cbiAgICAgIHdpZHRoOiAkY2hldnJvbi1zaXplO1xuICAgICAgaGVpZ2h0OiAkY2hldnJvbi1zaXplO1xuXG4gICAgICBtYXJnaW46IGF1dG8gMDtcblxuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG5cbiAgICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuXG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcblxuICAgICAgYm9yZGVyOiBzb2xpZDtcbiAgICAgIGJvcmRlci13aWR0aDogJGNoZXZyb24tYm9yZGVyLXdpZHRoICRjaGV2cm9uLWJvcmRlci13aWR0aCAwIDA7XG4gICAgICBib3JkZXItY29sb3I6ICRjaGV2cm9uLWJvcmRlci1jb2xvdXI7XG5cbiAgICAgIC8vIEZhbGwgYmFjayB0byBhIGdyZWF0ZXIgdGhhbiBzaWduIGZvciBJRThcbiAgICAgIEBpbmNsdWRlIGdvdnVrLWlmLWllOCB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFwwMDNlXCI7IC8vIEdyZWF0ZXIgdGhhbiBzaWduICg+KVxuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGNvbG9yOiAkY2hldnJvbi1ib3JkZXItY29sb3VyO1xuXG4gICAgICAgIC8vIElFOCBkb2Vzbid0IHNlZW0gdG8gbGlrZSByZW5kZXJpbmcgcHNldWRvLWVsZW1lbnRzIHVzaW5nIEBmb250LWZhY2VzLFxuICAgICAgICAvLyBzbyBmYWxsIGJhY2sgdG8gdXNpbmcgYW5vdGhlciBzYW5zLXNlcmlmIGZvbnQgdG8gcmVuZGVyIHRoZSBjaGV2cm9uLlxuICAgICAgICBmb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1icmVhZGNydW1ic19fbGluayB7XG4gICAgQGluY2x1ZGUgZ292dWstbGluay1jb21tb247XG4gICAgQGluY2x1ZGUgZ292dWstbGluay1zdHlsZS10ZXh0O1xuICB9XG5cbiAgLmdvdnVrLWJyZWFkY3J1bWJzLS1jb2xsYXBzZS1vbi1tb2JpbGUge1xuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCR1bnRpbDogdGFibGV0KSB7XG4gICAgICAuZ292dWstYnJlYWRjcnVtYnNfX2xpc3QtaXRlbSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCxcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiA2cHg7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5nb3Z1ay1icmVhZGNydW1ic19fbGlzdCB7XG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvbXBvbmVudC9idXR0b25cIikge1xuICAkZ292dWstYnV0dG9uLWNvbG91cjogZ292dWstY29sb3VyKFwiZ3JlZW5cIiwgJGxlZ2FjeTogIzAwODIzYik7XG4gICRnb3Z1ay1idXR0b24taG92ZXItY29sb3VyOiBnb3Z1ay1zaGFkZSgkZ292dWstYnV0dG9uLWNvbG91ciwgMjAlKTtcbiAgJGdvdnVrLWJ1dHRvbi1zaGFkb3ctY29sb3VyOiBnb3Z1ay1zaGFkZSgkZ292dWstYnV0dG9uLWNvbG91ciwgNjAlKTtcbiAgJGdvdnVrLWJ1dHRvbi10ZXh0LWNvbG91cjogZ292dWstY29sb3VyKFwid2hpdGVcIik7XG5cbiAgLy8gU2Vjb25kYXJ5IGJ1dHRvbiB2YXJpYWJsZXNcbiAgJGdvdnVrLXNlY29uZGFyeS1idXR0b24tY29sb3VyOiBnb3Z1ay1jb2xvdXIoXCJsaWdodC1ncmV5XCIsICRsZWdhY3k6IFwiZ3JleS0zXCIpO1xuICAkZ292dWstc2Vjb25kYXJ5LWJ1dHRvbi1ob3Zlci1jb2xvdXI6IGdvdnVrLXNoYWRlKCRnb3Z1ay1zZWNvbmRhcnktYnV0dG9uLWNvbG91ciwgMTAlKTtcbiAgJGdvdnVrLXNlY29uZGFyeS1idXR0b24tc2hhZG93LWNvbG91cjogZ292dWstc2hhZGUoJGdvdnVrLXNlY29uZGFyeS1idXR0b24tY29sb3VyLCA0MCUpO1xuICAkZ292dWstc2Vjb25kYXJ5LWJ1dHRvbi10ZXh0LWNvbG91cjogZ292dWstY29sb3VyKFwiYmxhY2tcIik7XG5cbiAgLy8gV2FybmluZyBidXR0b24gdmFyaWFibGVzXG4gICRnb3Z1ay13YXJuaW5nLWJ1dHRvbi1jb2xvdXI6IGdvdnVrLWNvbG91cihcInJlZFwiKTtcbiAgJGdvdnVrLXdhcm5pbmctYnV0dG9uLWhvdmVyLWNvbG91cjogZ292dWstc2hhZGUoJGdvdnVrLXdhcm5pbmctYnV0dG9uLWNvbG91ciwgMjAlKTtcbiAgJGdvdnVrLXdhcm5pbmctYnV0dG9uLXNoYWRvdy1jb2xvdXI6IGdvdnVrLXNoYWRlKCRnb3Z1ay13YXJuaW5nLWJ1dHRvbi1jb2xvdXIsIDYwJSk7XG4gICRnb3Z1ay13YXJuaW5nLWJ1dHRvbi10ZXh0LWNvbG91cjogZ292dWstY29sb3VyKFwid2hpdGVcIik7XG5cbiAgLy8gQmVjYXVzZSB0aGUgc2hhZG93IChzMCkgaXMgdmlzdWFsbHkgJ3BhcnQgb2YnIHRoZSBidXR0b24sIHdlIG5lZWQgdG8gcmVkdWNlXG4gIC8vIHRoZSBoZWlnaHQgb2YgdGhlIGJ1dHRvbiB0byBjb21wZW5zYXRlIGJ5IGFkanVzdGluZyBpdHMgcGFkZGluZyAoczEpIGFuZFxuICAvLyBpbmNyZWFzZSB0aGUgYm90dG9tIG1hcmdpbiB0byBpbmNsdWRlIGl0IChzMikuXG4gICRidXR0b24tc2hhZG93LXNpemU6ICRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50O1xuXG4gIC5nb3Z1ay1idXR0b24ge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDE5LCAkbGluZS1oZWlnaHQ6IDE5cHgpO1xuXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDYsIFwiYm90dG9tXCIsICRhZGp1c3RtZW50OiAkYnV0dG9uLXNoYWRvdy1zaXplKTsgLy8gczJcbiAgICBwYWRkaW5nOiAoZ292dWstc3BhY2luZygyKSAtICRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50KSBnb3Z1ay1zcGFjaW5nKDIpIChnb3Z1ay1zcGFjaW5nKDIpIC0gJGdvdnVrLWJvcmRlci13aWR0aC1mb3JtLWVsZW1lbnQgLSAoJGJ1dHRvbi1zaGFkb3ctc2l6ZSAvIDIpKTsgLy8gczFcbiAgICBib3JkZXI6ICRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgY29sb3I6ICRnb3Z1ay1idXR0b24tdGV4dC1jb2xvdXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdvdnVrLWJ1dHRvbi1jb2xvdXI7XG4gICAgYm94LXNoYWRvdzogMCAkYnV0dG9uLXNoYWRvdy1zaXplIDAgJGdvdnVrLWJ1dHRvbi1zaGFkb3ctY29sb3VyOyAvLyBzMFxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICBAaW5jbHVkZSBnb3Z1ay1pZi1pZTgge1xuICAgICAgYm9yZGVyLWJvdHRvbTogJGJ1dHRvbi1zaGFkb3ctc2l6ZSBzb2xpZCAkZ292dWstYnV0dG9uLXNoYWRvdy1jb2xvdXI7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuXG4gICAgLy8gRW5zdXJlIHRoYXQgYW55IGdsb2JhbCBsaW5rIHN0eWxlcyBhcmUgb3ZlcnJpZGRlblxuICAgICY6bGluayxcbiAgICAmOnZpc2l0ZWQsXG4gICAgJjphY3RpdmUsXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGdvdnVrLWJ1dHRvbi10ZXh0LWNvbG91cjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBGaXggdW53YW50ZWQgYnV0dG9uIHBhZGRpbmcgaW4gRmlyZWZveFxuICAgICY6Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnb3Z1ay1idXR0b24taG92ZXItY29sb3VyO1xuICAgIH1cblxuICAgICY6YWN0aXZlIHtcbiAgICAgIC8vIEJ1bXAgdGhlIGJ1dHRvbiBkb3duIHNvIGl0IGxvb2tzIGxpa2UgaXRzIGJlaW5nIHByZXNzZWQgaW5cbiAgICAgIHRvcDogJGJ1dHRvbi1zaGFkb3ctc2l6ZTtcblxuICAgICAgQGluY2x1ZGUgZ292dWstaWYtaWU4IHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGdvdnVrLWZvY3VzLWNvbG91cjtcbiAgICAgIC8vIFdoZW4gY29sb3VycyBhcmUgb3ZlcnJpZGRlbiwgZm9yIGV4YW1wbGUgd2hlbiB1c2VycyBoYXZlIGEgZGFyayBtb2RlLFxuICAgICAgLy8gYmFja2dyb3VuZHMgYW5kIGJveC1zaGFkb3dzIGRpc2FwcGVhciwgc28gd2UgbmVlZCB0byBlbnN1cmUgdGhlcmUncyBhXG4gICAgICAvLyB0cmFuc3BhcmVudCBvdXRsaW5lIHdoaWNoIHdpbGwgYmUgc2V0IHRvIGEgdmlzaWJsZSBjb2xvdXIuXG4gICAgICAvLyBTaW5jZSBJbnRlcm5ldCBFeHBsb3JlciA4IGRvZXMgbm90IHN1cHBvcnQgYm94LXNoYWRvdywgd2Ugd2FudCB0byBmb3JjZSB0aGUgdXNlci1hZ2VudCBvdXRsaW5lc1xuICAgICAgQGluY2x1ZGUgZ292dWstbm90LWllOCB7XG4gICAgICAgIG91dGxpbmU6ICRnb3Z1ay1mb2N1cy13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICAgIC8vIFNpbmNlIEludGVybmV0IEV4cGxvcmVyIGRvZXMgbm90IHN1cHBvcnQgYDpub3QoKWAgd2Ugc2V0IGEgY2xlYXJlciBmb2N1cyBzdHlsZSB0byBtYXRjaCB1c2VyLWFnZW50IG91dGxpbmVzLlxuICAgICAgQGluY2x1ZGUgZ292dWstaWYtaWU4IHtcbiAgICAgICAgY29sb3I6ICRnb3Z1ay1mb2N1cy10ZXh0LWNvbG91cjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdvdnVrLWZvY3VzLWNvbG91cjtcbiAgICAgIH1cbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCAkZ292dWstZm9jdXMtY29sb3VyO1xuICAgIH1cblxuICAgIC8vIGFscGhhZ292L2dvdnVrX3RlbXBsYXRlIGluY2x1ZGVzIGEgc3BlY2lmaWMgYTpsaW5rOmZvY3VzIHNlbGVjdG9yXG4gICAgLy8gZGVzaWduZWQgdG8gbWFrZSB1bnZpc2l0ZWQgbGlua3MgYSBzbGlnaHRseSBkYXJrZXIgYmx1ZSB3aGVuIGZvY3Vzc2VkLCBzb1xuICAgIC8vIHdlIG5lZWQgdG8gb3ZlcnJpZGUgdGhlIHRleHQgY29sb3VyIGZvciB0aGF0IGNvbWJpbmF0aW9uIG9mIHNlbGVjdG9ycyBzb1xuICAgIC8vIHNvIHRoYXQgdW52aXNpdGVkIGxpbmtzIHN0eWxlZCBhcyBidXR0b25zIGRvIG5vdCBlbmQgdXAgd2l0aCBkYXJrIGJsdWVcbiAgICAvLyB0ZXh0IHdoZW4gZm9jdXNzZWQuXG4gICAgQGluY2x1ZGUgZ292dWstY29tcGF0aWJpbGl0eShnb3Z1a190ZW1wbGF0ZSkge1xuICAgICAgJjpsaW5rOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRnb3Z1ay1idXR0b24tdGV4dC1jb2xvdXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpmb2N1czpub3QoOmFjdGl2ZSk6bm90KDpob3Zlcikge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkZ292dWstZm9jdXMtY29sb3VyO1xuICAgICAgY29sb3I6ICRnb3Z1ay1mb2N1cy10ZXh0LWNvbG91cjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnb3Z1ay1mb2N1cy1jb2xvdXI7XG4gICAgICBib3gtc2hhZG93OiAwIDJweCAwICRnb3Z1ay1mb2N1cy10ZXh0LWNvbG91cjtcbiAgICB9XG5cbiAgICAvLyBUaGUgZm9sbG93aW5nIGFkanVzdG1lbnRzIGRvIG5vdCB3b3JrIGZvciA8aW5wdXQgdHlwZT1cImJ1dHRvblwiPiBhc1xuICAgIC8vIG5vbi1jb250YWluZXIgZWxlbWVudHMgY2Fubm90IGluY2x1ZGUgcHNldWRvIGVsZW1lbnRzIChpLmUuIDo6YmVmb3JlKS5cblxuICAgIC8vIFVzZSBhIHBzZXVkbyBlbGVtZW50IHRvIGV4cGFuZCB0aGUgY2xpY2sgdGFyZ2V0IGFyZWEgdG8gaW5jbHVkZSB0aGVcbiAgICAvLyBidXR0b24ncyBzaGFkb3cgYXMgd2VsbCwgaW4gY2FzZSB1c2VycyB0cnkgdG8gY2xpY2sgaXQuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICAgIHRvcDogLSRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50O1xuICAgICAgcmlnaHQ6IC0kZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudDtcbiAgICAgIGJvdHRvbTogLSgkZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudCArICRidXR0b24tc2hhZG93LXNpemUpO1xuICAgICAgbGVmdDogLSRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50O1xuXG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAvLyBXaGVuIHRoZSBidXR0b24gaXMgYWN0aXZlIGl0IGlzIHNoaWZ0ZWQgZG93biBieSAkYnV0dG9uLXNoYWRvdy1zaXplIHRvXG4gICAgLy8gZGVub3RlIGEgJ3ByZXNzZWQnIHN0YXRlLiBJZiB0aGUgdXNlciBoYXBwZW5lZCB0byBjbGljayBhdCB0aGUgdmVyeSB0b3BcbiAgICAvLyBvZiB0aGUgYnV0dG9uLCB0aGVpciBtb3VzZSBpcyBubyBsb25nZXIgb3ZlciB0aGUgYnV0dG9uIChiZWNhdXNlIGl0IGhhc1xuICAgIC8vICdtb3ZlZCBiZW5lYXRoIHRoZW0nKSBhbmQgc28gdGhlIGNsaWNrIGV2ZW50IGlzIG5vdCBmaXJlZC5cbiAgICAvL1xuICAgIC8vIFRoaXMgY29ycmVjdHMgdGhhdCBieSBzaGlmdGluZyB0aGUgdG9wIG9mIHRoZSBwc2V1ZG8gZWxlbWVudCBzbyB0aGF0IGl0XG4gICAgLy8gY29udGludWVzIHRvIGNvdmVyIHRoZSBhcmVhIHRoYXQgdGhlIHVzZXIgb3JpZ2luYWxseSBjbGlja2VkLCB3aGljaCBtZWFuc1xuICAgIC8vIHRoZSBjbGljayBldmVudCBpcyBzdGlsbCBmaXJlZC5cbiAgICAvL1xuICAgIC8vIPCfjolcbiAgICAmOmFjdGl2ZTpiZWZvcmUge1xuICAgICAgdG9wOiAtKCRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50ICsgJGJ1dHRvbi1zaGFkb3ctc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWJ1dHRvbi0tZGlzYWJsZWQsXG4gIC5nb3Z1ay1idXR0b25bZGlzYWJsZWQ9XCJkaXNhYmxlZFwiXSxcbiAgLmdvdnVrLWJ1dHRvbltkaXNhYmxlZF0ge1xuICAgIG9wYWNpdHk6ICguNSk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnb3Z1ay1idXR0b24tY29sb3VyO1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cblxuICAgICY6YWN0aXZlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJveC1zaGFkb3c6IDAgJGJ1dHRvbi1zaGFkb3ctc2l6ZSAwICRnb3Z1ay1idXR0b24tc2hhZG93LWNvbG91cjsgLy8gczBcbiAgICAgIEBpbmNsdWRlIGdvdnVrLWlmLWllOCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206ICRidXR0b24tc2hhZG93LXNpemUgc29saWQgJGdvdnVrLWJ1dHRvbi1zaGFkb3ctY29sb3VyOyAvLyBzMFxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1idXR0b24tLXNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdvdnVrLXNlY29uZGFyeS1idXR0b24tY29sb3VyO1xuICAgIGJveC1zaGFkb3c6IDAgJGJ1dHRvbi1zaGFkb3ctc2l6ZSAwICRnb3Z1ay1zZWNvbmRhcnktYnV0dG9uLXNoYWRvdy1jb2xvdXI7XG5cbiAgICAmLFxuICAgICY6bGluayxcbiAgICAmOnZpc2l0ZWQsXG4gICAgJjphY3RpdmUsXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGdvdnVrLXNlY29uZGFyeS1idXR0b24tdGV4dC1jb2xvdXI7XG4gICAgfVxuXG4gICAgLy8gYWxwaGFnb3YvZ292dWtfdGVtcGxhdGUgaW5jbHVkZXMgYSBzcGVjaWZpYyBhOmxpbms6Zm9jdXMgc2VsZWN0b3JcbiAgICAvLyBkZXNpZ25lZCB0byBtYWtlIHVudmlzaXRlZCBsaW5rcyBhIHNsaWdodGx5IGRhcmtlciBibHVlIHdoZW4gZm9jdXNzZWQsIHNvXG4gICAgLy8gd2UgbmVlZCB0byBvdmVycmlkZSB0aGUgdGV4dCBjb2xvdXIgZm9yIHRoYXQgY29tYmluYXRpb24gb2Ygc2VsZWN0b3JzIHNvXG4gICAgLy8gc28gdGhhdCB1bnZpc2l0ZWQgbGlua3Mgc3R5bGVkIGFzIGJ1dHRvbnMgZG8gbm90IGVuZCB1cCB3aXRoIGRhcmsgYmx1ZVxuICAgIC8vIHRleHQgd2hlbiBmb2N1c3NlZC5cbiAgICBAaW5jbHVkZSBnb3Z1ay1jb21wYXRpYmlsaXR5KGdvdnVrX3RlbXBsYXRlKSB7XG4gICAgICAmOmxpbms6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJGdvdnVrLXNlY29uZGFyeS1idXR0b24tdGV4dC1jb2xvdXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ292dWstc2Vjb25kYXJ5LWJ1dHRvbi1ob3Zlci1jb2xvdXI7XG5cbiAgICAgICZbZGlzYWJsZWRdIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdvdnVrLXNlY29uZGFyeS1idXR0b24tY29sb3VyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1idXR0b24tLXdhcm5pbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnb3Z1ay13YXJuaW5nLWJ1dHRvbi1jb2xvdXI7XG4gICAgYm94LXNoYWRvdzogMCAkYnV0dG9uLXNoYWRvdy1zaXplIDAgJGdvdnVrLXdhcm5pbmctYnV0dG9uLXNoYWRvdy1jb2xvdXI7XG5cbiAgICAmLFxuICAgICY6bGluayxcbiAgICAmOnZpc2l0ZWQsXG4gICAgJjphY3RpdmUsXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGdvdnVrLXdhcm5pbmctYnV0dG9uLXRleHQtY29sb3VyO1xuICAgIH1cblxuICAgIC8vIGFscGhhZ292L2dvdnVrX3RlbXBsYXRlIGluY2x1ZGVzIGEgc3BlY2lmaWMgYTpsaW5rOmZvY3VzIHNlbGVjdG9yXG4gICAgLy8gZGVzaWduZWQgdG8gbWFrZSB1bnZpc2l0ZWQgbGlua3MgYSBzbGlnaHRseSBkYXJrZXIgYmx1ZSB3aGVuIGZvY3Vzc2VkLCBzb1xuICAgIC8vIHdlIG5lZWQgdG8gb3ZlcnJpZGUgdGhlIHRleHQgY29sb3VyIGZvciB0aGF0IGNvbWJpbmF0aW9uIG9mIHNlbGVjdG9ycyBzb1xuICAgIC8vIHNvIHRoYXQgdW52aXNpdGVkIGxpbmtzIHN0eWxlZCBhcyBidXR0b25zIGRvIG5vdCBlbmQgdXAgd2l0aCBkYXJrIGJsdWVcbiAgICAvLyB0ZXh0IHdoZW4gZm9jdXNzZWQuXG4gICAgQGluY2x1ZGUgZ292dWstY29tcGF0aWJpbGl0eShnb3Z1a190ZW1wbGF0ZSkge1xuICAgICAgJjpsaW5rOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRnb3Z1ay13YXJuaW5nLWJ1dHRvbi10ZXh0LWNvbG91cjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnb3Z1ay13YXJuaW5nLWJ1dHRvbi1ob3Zlci1jb2xvdXI7XG5cbiAgICAgICZbZGlzYWJsZWRdIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdvdnVrLXdhcm5pbmctYnV0dG9uLWNvbG91cjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZ292dWstYnV0dG9uLS1zdGFydCB7XG4gICAgQGluY2x1ZGUgZ292dWstdHlwb2dyYXBoeS13ZWlnaHQtYm9sZDtcbiAgICBAaW5jbHVkZSBnb3Z1ay10eXBvZ3JhcGh5LXJlc3BvbnNpdmUoJHNpemU6IDI0LCAkb3ZlcnJpZGUtbGluZS1oZWlnaHQ6IDEpO1xuXG4gICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtYm94O1xuXG4gICAgZGlzcGxheTogLXdlYmtpdC1pbmxpbmUtZmxleDtcblxuICAgIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcblxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIG1pbi1oZWlnaHQ6IGF1dG87XG5cbiAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7XG5cbiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcblxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICAuZ292dWstYnV0dG9uX19zdGFydC1pY29uIHtcbiAgICBtYXJnaW4tbGVmdDogZ292dWstc3BhY2luZygxKTtcblxuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgICBtYXJnaW4tbGVmdDogZ292dWstc3BhY2luZygyKTtcbiAgICB9XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAtd2Via2l0LWZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAtbXMtZmxleC1uZWdhdGl2ZTogMDtcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIC13ZWJraXQtYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgLy8gV29yayBhcm91bmQgU1ZHcyBub3QgaW5oZXJpdGluZyBjb2xvciBmcm9tIHBhcmVudCBpbiBmb3JjZWQgY29sb3IgbW9kZVxuICAgIC8vIChodHRwczovL2dpdGh1Yi5jb20vdzNjL2Nzc3dnLWRyYWZ0cy9pc3N1ZXMvNjMxMClcbiAgICBmb3JjZWQtY29sb3ItYWRqdXN0OiBhdXRvO1xuICB9XG5cbiAgQGlmICRnb3Z1ay11c2UtbGVnYWN5LWZvbnQge1xuICAgIC8vIEJlZ2luIGFkanVzdG1lbnRzIGZvciBmb250IGJhc2VsaW5lIG9mZnNldCB3aGVuIHVzaW5nIHYxIG9mIG50YVxuICAgICRvZmZzZXQ6IDI7XG5cbiAgICAuZ292dWstYnV0dG9uIHtcbiAgICAgIHBhZGRpbmctdG9wOiAoZ292dWstc3BhY2luZygyKSAtICRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50IC0gKCRidXR0b24tc2hhZG93LXNpemUgLyAyKSArICRvZmZzZXQpOyAvLyBzMVxuICAgICAgcGFkZGluZy1ib3R0b206IChnb3Z1ay1zcGFjaW5nKDIpIC0gJGdvdnVrLWJvcmRlci13aWR0aC1mb3JtLWVsZW1lbnQgLSAoJGJ1dHRvbi1zaGFkb3ctc2l6ZSAvIDIpIC0gJG9mZnNldCArIDEpOyAvLyBzMVxuICAgIH1cblxuICAgIC5nb3Z1ay1idXR0b25fX3N0YXJ0LWljb24ge1xuICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICB9XG4gIH1cbn1cbiIsIkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9jb21wb25lbnQvZXJyb3ItbWVzc2FnZVwiKSB7XG4gIC5nb3Z1ay1lcnJvci1tZXNzYWdlIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAxOSwgJHdlaWdodDogYm9sZCk7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDMpO1xuICAgIGNsZWFyOiBib3RoO1xuXG4gICAgY29sb3I6ICRnb3Z1ay1lcnJvci1jb2xvdXI7XG4gIH1cbn1cbiIsIkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9jb21wb25lbnQvZmllbGRzZXRcIikge1xuICAuZ292dWstZmllbGRzZXQge1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgQGluY2x1ZGUgZ292dWstY2xlYXJmaXg7XG4gIH1cblxuICAvLyBGaXggZm9yIEZpcmVmb3ggPCA1M1xuICAvLyBodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD01MDQ2MjJcbiAgQHN1cHBvcnRzIG5vdCAoY2FyZXQtY29sb3I6IGF1dG8pIHtcbiAgICAuZ292dWstZmllbGRzZXQsXG4gICAgeDotbW96LWFueS1saW5rIHsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBzZWxlY3Rvci10eXBlLW5vLXVua25vd25cbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWZpZWxkc2V0X19sZWdlbmQge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDE5KTtcbiAgICBAaW5jbHVkZSBnb3Z1ay10ZXh0LWNvbG91cjtcblxuICAgIC8vIEZpeCBsZWdlbmQgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRVxuICAgIC8vIDEuIElFOS0xMSAmIEVkZ2UgMTItMTNcbiAgICAvLyAyLiBJRTgtMTFcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gICAgZGlzcGxheTogdGFibGU7ICAgICAgICAgLy8gMlxuICAgIG1heC13aWR0aDogMTAwJTsgICAgICAgIC8vIDFcbiAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDIpO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAgICAvLyAxXG4gIH1cblxuICAvLyBNb2RpZmllcnMgdGhhdCBtYWtlIGxlZ2VuZHMgbG9vayBtb3JlIGxpa2UgdGhlaXIgZXF1aXZhbGVudCBoZWFkaW5nc1xuXG4gIC5nb3Z1ay1maWVsZHNldF9fbGVnZW5kLS14bCB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogNDgsICR3ZWlnaHQ6IGJvbGQpO1xuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMyk7XG4gIH1cblxuICAuZ292dWstZmllbGRzZXRfX2xlZ2VuZC0tbCB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMzYsICR3ZWlnaHQ6IGJvbGQpO1xuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMyk7XG4gIH1cblxuICAuZ292dWstZmllbGRzZXRfX2xlZ2VuZC0tbSB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMjQsICR3ZWlnaHQ6IGJvbGQpO1xuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMyk7XG4gIH1cblxuICAuZ292dWstZmllbGRzZXRfX2xlZ2VuZC0tcyB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTksICR3ZWlnaHQ6IGJvbGQpO1xuICB9XG5cbiAgLy8gV2hlbiB0aGUgbGVnZW5kIGNvbnRhaW5zIGFuIEgxLCB3ZSB3YW50IHRoZSBIMSB0byBpbmhlcml0IGFsbCBzdHlsZXMgZnJvbVxuICAvLyB0aGUgbGVnZW5kLiBFZmZlY3RpdmVseSB3ZSB3YW50IHRvIGJlIGFibGUgdG8gdHJlYXQgdGhlIGhlYWRpbmcgYXMgaWYgaXQgaXNcbiAgLy8gbm90IHRoZXJlLlxuICAuZ292dWstZmllbGRzZXRfX2hlYWRpbmcge1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIH1cbn1cbiIsIkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9jb21wb25lbnQvaGludFwiKSB7XG4gIC5nb3Z1ay1oaW50IHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAxOSk7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMyk7XG5cbiAgICBjb2xvcjogJGdvdnVrLXNlY29uZGFyeS10ZXh0LWNvbG91cjtcbiAgfVxuXG4gIC8vIFJlZHVjZXMgbWFyZ2luLWJvdHRvbSBvZiBoaW50IHdoZW4gdXNlZCBhZnRlciB0aGUgZGVmYXVsdCBsYWJlbCAobm8gY2xhc3MpXG4gIC8vIG9yIGdvdnVrLWxhYmVsLS1zIGZvciBiZXR0ZXIgdmVydGljYWwgYWxpZ25tZW50LlxuXG4gIC8vIFRoaXMgYWRqdXN0bWVudCB3aWxsIG5vdCB3b3JrIHdoZW4gdGhlIGxhYmVsIGlzIGluc2lkZSB0aGUgPGgxPiwgaG93ZXZlciBpdFxuICAvLyBpcyB1bmxpa2VseSB0aGF0IHRoZSBkZWZhdWx0IG9yIGdvdnVrLWxhYmVsLS1zIGNsYXNzIHdvdWxkIGJlIHVzZWQgaW4gdGhpc1xuICAvLyBjYXNlLlxuXG4gIC8vIFRoaXMgYWRqdXN0bWVudCB3aWxsIG5vdCB3b3JrIGluIGJyb3dzZXJzIHRoYXQgZG8gbm90IHN1cHBvcnQgOm5vdCgpLlxuICAvLyBVc2VycyB3aXRoIHRoZXNlIGJyb3dzZXJzIHdpbGwgc2VlIHRoZSBkZWZhdWx0IHNpemUgbWFyZ2luICg1cHggbGFyZ2VyKS5cblxuICAuZ292dWstbGFiZWw6bm90KC5nb3Z1ay1sYWJlbC0tbSk6bm90KC5nb3Z1ay1sYWJlbC0tbCk6bm90KC5nb3Z1ay1sYWJlbC0teGwpICsgLmdvdnVrLWhpbnQge1xuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMik7XG4gIH1cblxuICAvLyBSZWR1Y2VzIG1hcmdpbi1ib3R0b20gb2YgaGludCB3aGVuIHVzZWQgYWZ0ZXIgdGhlIGRlZmF1bHQgbGVnZW5kIChubyBjbGFzcylcbiAgLy8gb3IgZ292dWstZmllbGRzZXRfX2xlZ2VuZC0tcyBmb3IgYmV0dGVyIHZlcnRpY2FsIGFsaWdubWVudC5cblxuICAvLyBUaGlzIGFkanVzdG1lbnQgd2lsbCBub3Qgd29yayB3aGVuIHRoZSBsZWdlbmQgaXMgb3V0c2lkZSB0aGUgPGgxPiwgaG93ZXZlclxuICAvLyBpdCBpcyB1bmxpa2VseSB0aGF0IHRoZSBkZWZhdWx0IG9yIGdvdnVrLWZpZWxkc2V0X19sZWdlbmQtLXMgY2xhc3Mgd291bGQgYmVcbiAgLy8gdXNlZCBpbiB0aGlzIGNhc2UuXG5cbiAgLy8gVGhpcyBhZGp1c3RtZW50IHdpbGwgbm90IHdvcmsgaW4gYnJvd3NlcnMgdGhhdCBkbyBub3Qgc3VwcG9ydCA6bm90KCkuXG4gIC8vIFVzZXJzIHdpdGggdGhlc2UgYnJvd3NlcnMgd2lsbCBzZWUgdGhlIGRlZmF1bHQgc2l6ZSBtYXJnaW4gKDVweCBsYXJnZXIpLlxuXG4gIC5nb3Z1ay1maWVsZHNldF9fbGVnZW5kOm5vdCguZ292dWstZmllbGRzZXRfX2xlZ2VuZC0tbSk6bm90KC5nb3Z1ay1maWVsZHNldF9fbGVnZW5kLS1sKTpub3QoLmdvdnVrLWZpZWxkc2V0X19sZWdlbmQtLXhsKSArIC5nb3Z1ay1oaW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDIpO1xuICB9XG5cbiAgLy8gUmVkdWNlcyB2aXN1YWwgc3BhY2luZyBvZiBsZWdlbmQgd2hlbiB0aGVyZSBpcyBhIGhpbnRcbiAgLmdvdnVrLWZpZWxkc2V0X19sZWdlbmQgKyAuZ292dWstaGludCB7XG4gICAgbWFyZ2luLXRvcDogLShnb3Z1ay1zcGFjaW5nKDEpKTtcbiAgfVxufVxuIiwiQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvbXBvbmVudC9sYWJlbFwiKSB7XG4gIC5nb3Z1ay1sYWJlbCB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTkpO1xuICAgIEBpbmNsdWRlIGdvdnVrLXRleHQtY29sb3VyO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDEpO1xuICB9XG5cbiAgLy8gTW9kaWZpZXJzIHRoYXQgbWFrZSBsYWJlbHMgbG9vayBtb3JlIGxpa2UgdGhlaXIgZXF1aXZhbGVudCBoZWFkaW5nc1xuXG4gIC5nb3Z1ay1sYWJlbC0teGwge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDQ4LCAkd2VpZ2h0OiBib2xkKTtcbiAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDMpO1xuICB9XG5cbiAgLmdvdnVrLWxhYmVsLS1sIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAzNiwgJHdlaWdodDogYm9sZCk7XG4gICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygzKTtcbiAgfVxuXG4gIC5nb3Z1ay1sYWJlbC0tbSB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMjQsICR3ZWlnaHQ6IGJvbGQpO1xuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMik7XG4gIH1cblxuICAuZ292dWstbGFiZWwtLXMge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDE5LCAkd2VpZ2h0OiBib2xkKTtcbiAgfVxuXG4gIC8vIFdoZW4gdGhlIGxhYmVsIGlzIG5lc3RlZCBpbnNpZGUgYSBoZWFkaW5nLCBvdmVycmlkZSB0aGUgaGVhZGluZyBzbyB0aGF0IGl0XG4gIC8vIGRvZXMgbm90IGhhdmUgYSBtYXJnaW4uIEVmZmVjdGl2ZWx5IHdlIHdhbnQgdG8gYmUgYWJsZSB0byB0cmVhdCB0aGUgaGVhZGluZ1xuICAvLyBhcyBpZiBpdCBpcyBub3QgdGhlcmUuXG4gIC8vXG4gIC8vIFRoaXMgYnJlYWtzIEJFTSBjb252ZW50aW9ucyBiZWNhdXNlIGl0IGV4aXN0cyBhcyBhIHBhcmVudCBvZiB0aGUgJ2Jsb2NrJyxcbiAgLy8gc28gd2UgY2FuJ3QgcmVhbGx5IGNvbnNpZGVyIGFuIGVsZW1lbnQuXG4gIC5nb3Z1ay1sYWJlbC13cmFwcGVyIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cbiIsIkBpbXBvcnQgXCIuLi9lcnJvci1tZXNzYWdlL2luZGV4XCI7XG5AaW1wb3J0IFwiLi4vZmllbGRzZXQvaW5kZXhcIjtcbkBpbXBvcnQgXCIuLi9oaW50L2luZGV4XCI7XG5AaW1wb3J0IFwiLi4vbGFiZWwvaW5kZXhcIjtcblxuQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvbXBvbmVudC9jaGVja2JveGVzXCIpIHtcblxuICAkZ292dWstdG91Y2gtdGFyZ2V0LXNpemU6IDQ0cHg7XG4gICRnb3Z1ay1jaGVja2JveGVzLXNpemU6IDQwcHg7XG4gICRnb3Z1ay1zbWFsbC1jaGVja2JveGVzLXNpemU6IDI0cHg7XG4gICRnb3Z1ay1jaGVja2JveGVzLWxhYmVsLXBhZGRpbmctbGVmdC1yaWdodDogZ292dWstc3BhY2luZygzKTtcblxuICAuZ292dWstY2hlY2tib3hlc19faXRlbSB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTkpO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgbWluLWhlaWdodDogJGdvdnVrLWNoZWNrYm94ZXMtc2l6ZTtcblxuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMik7XG4gICAgcGFkZGluZy1sZWZ0OiAkZ292dWstY2hlY2tib3hlcy1zaXplO1xuXG4gICAgY2xlYXI6IGxlZnQ7XG4gIH1cblxuICAuZ292dWstY2hlY2tib3hlc19faXRlbTpsYXN0LWNoaWxkLFxuICAuZ292dWstY2hlY2tib3hlc19faXRlbTpsYXN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuZ292dWstY2hlY2tib3hlc19faW5wdXQge1xuICAgICRpbnB1dC1vZmZzZXQ6ICgkZ292dWstdG91Y2gtdGFyZ2V0LXNpemUgLSAkZ292dWstY2hlY2tib3hlcy1zaXplKSAvIDI7XG5cbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAvLyBJRTggZG9lc27igJl0IHN1cHBvcnQgcHNldWRvLWVsZW1lbnRzLCBzbyB3ZSBkb27igJl0IHdhbnQgdG8gaGlkZSBuYXRpdmVcbiAgICAvLyBlbGVtZW50cyB0aGVyZS5cbiAgICBAaW5jbHVkZSBnb3Z1ay1ub3QtaWU4IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAgICAgei1pbmRleDogMTtcbiAgICAgIHRvcDogJGlucHV0LW9mZnNldCAqIC0xO1xuICAgICAgbGVmdDogJGlucHV0LW9mZnNldCAqIC0xO1xuXG4gICAgICB3aWR0aDogJGdvdnVrLXRvdWNoLXRhcmdldC1zaXplO1xuICAgICAgaGVpZ2h0OiAkZ292dWstdG91Y2gtdGFyZ2V0LXNpemU7XG4gICAgICBtYXJnaW46IDA7XG5cbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ292dWstaWYtaWU4IHtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRnb3Z1ay1jaGVja2JveGVzLXNpemUgLyAtMjtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkZ292dWstY2hlY2tib3hlcy1zaXplIC8gLTI7XG4gICAgICBmbG9hdDogbGVmdDtcblxuICAgICAgLy8gYWRkIGZvY3VzIG91dGxpbmUgdG8gaW5wdXRcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiAkZ292dWstZm9jdXMtd2lkdGggc29saWQgJGdvdnVrLWZvY3VzLWNvbG91cjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZ292dWstY2hlY2tib3hlc19fbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IDhweCAkZ292dWstY2hlY2tib3hlcy1sYWJlbC1wYWRkaW5nLWxlZnQtcmlnaHQgZ292dWstc3BhY2luZygxKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgLy8gcmVtb3ZlIDMwMG1zIHBhdXNlIG9uIG1vYmlsZVxuICAgIC1tcy10b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgICAgICAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG4gIH1cblxuICBAaW5jbHVkZSBnb3Z1ay1ub3QtaWU4IHtcbiAgICAvLyBbIF0gQ2hlY2sgYm94XG4gICAgLmdvdnVrLWNoZWNrYm94ZXNfX2xhYmVsOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogJGdvdnVrLWNoZWNrYm94ZXMtc2l6ZTtcbiAgICAgIGhlaWdodDogJGdvdnVrLWNoZWNrYm94ZXMtc2l6ZTtcbiAgICAgIGJvcmRlcjogJGdvdnVrLWJvcmRlci13aWR0aC1mb3JtLWVsZW1lbnQgc29saWQgY3VycmVudENvbG9yO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLy8g4pyUIENoZWNrIG1hcmtcbiAgICAvL1xuICAgIC8vIFRoZSBjaGVjayBtYXJrIGlzIGEgYm94IHdpdGggYSBib3JkZXIgb24gdGhlIGxlZnQgYW5kIGJvdHRvbSBzaWRlICjilJTilIDilIApLFxuICAgIC8vIHJvdGF0ZWQgNDUgZGVncmVlc1xuICAgIC5nb3Z1ay1jaGVja2JveGVzX19sYWJlbDphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxMXB4O1xuICAgICAgbGVmdDogOXB4O1xuICAgICAgd2lkdGg6IDIzcHg7XG4gICAgICBoZWlnaHQ6IDEycHg7XG5cbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcblxuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuXG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICBib3JkZXI6IHNvbGlkO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwIDAgNXB4IDVweDtcbiAgICAgIC8vIEZpeCBidWcgaW4gSUUxMSBjYXVzZWQgYnkgdHJhbnNmb3JtIHJvdGF0ZSAoLTQ1ZGVnKS5cbiAgICAgIC8vIFNlZTogYWxwaGFnb3YvZ292dWtfZWxlbWVudHMvaXNzdWVzLzUxOFxuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAgIG9wYWNpdHk6IDA7XG5cbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1jaGVja2JveGVzX19oaW50IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ292dWstY2hlY2tib3hlcy1sYWJlbC1wYWRkaW5nLWxlZnQtcmlnaHQ7XG4gICAgcGFkZGluZy1sZWZ0OiAkZ292dWstY2hlY2tib3hlcy1sYWJlbC1wYWRkaW5nLWxlZnQtcmlnaHQ7XG4gIH1cblxuICAvLyBGb2N1c2VkIHN0YXRlXG4gIC5nb3Z1ay1jaGVja2JveGVzX19pbnB1dDpmb2N1cyArIC5nb3Z1ay1jaGVja2JveGVzX19sYWJlbDpiZWZvcmUge1xuICAgIGJvcmRlci13aWR0aDogNHB4O1xuXG4gICAgLy8gV2hlbiBjb2xvdXJzIGFyZSBvdmVycmlkZGVuLCB0aGUgeWVsbG93IGJveC1zaGFkb3cgYmVjb21lcyBpbnZpc2libGVcbiAgICAvLyB3aGljaCBtZWFucyB0aGUgZm9jdXMgc3RhdGUgaXMgbGVzcyBvYnZpb3VzLiBCeSBhZGRpbmcgYSB0cmFuc3BhcmVudFxuICAgIC8vIG91dGxpbmUsIHdoaWNoIGJlY29tZXMgc29saWQgKHRleHQtY29sb3VyZWQpIGluIHRoYXQgY29udGV4dCwgd2UgZW5zdXJlXG4gICAgLy8gdGhlIGZvY3VzIHJlbWFpbnMgY2xlYXJseSB2aXNpYmxlLlxuICAgIG91dGxpbmU6ICRnb3Z1ay1mb2N1cy13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBvdXRsaW5lLW9mZnNldDogMXB4O1xuXG4gICAgLy8gV2hlbiBpbiBhbiBleHBsaWNpdCBmb3JjZWQtY29sb3IgbW9kZSwgd2UgY2FuIHVzZSB0aGUgSGlnaGxpZ2h0IHN5c3RlbVxuICAgIC8vIGNvbG9yIGZvciB0aGUgb3V0bGluZSB0byBiZXR0ZXIgbWF0Y2ggZm9jdXMgc3RhdGVzIG9mIG5hdGl2ZSBjb250cm9sc1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAgICAgb3V0bGluZS1jb2xvcjogSGlnaGxpZ2h0O1xuICAgIH1cblxuICAgIGJveC1zaGFkb3c6IDAgMCAwICRnb3Z1ay1mb2N1cy13aWR0aCAkZ292dWstZm9jdXMtY29sb3VyO1xuICB9XG5cbiAgLy8gU2VsZWN0ZWQgc3RhdGVcbiAgLmdvdnVrLWNoZWNrYm94ZXNfX2lucHV0OmNoZWNrZWQgKyAuZ292dWstY2hlY2tib3hlc19fbGFiZWw6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAuZ292dWstY2hlY2tib3hlc19faW5wdXQ6ZGlzYWJsZWQsXG4gIC5nb3Z1ay1jaGVja2JveGVzX19pbnB1dDpkaXNhYmxlZCArIC5nb3Z1ay1jaGVja2JveGVzX19sYWJlbCB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG5cbiAgLmdvdnVrLWNoZWNrYm94ZXNfX2lucHV0OmRpc2FibGVkICsgLmdvdnVrLWNoZWNrYm94ZXNfX2xhYmVsIHtcbiAgICBvcGFjaXR5OiAuNTtcbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBEaXZpZGVycyAoJ29yJylcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLmdvdnVrLWNoZWNrYm94ZXNfX2RpdmlkZXIge1xuICAgICRnb3Z1ay1kaXZpZGVyLXNpemU6ICRnb3Z1ay1jaGVja2JveGVzLXNpemUgIWRlZmF1bHQ7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTkpO1xuICAgIEBpbmNsdWRlIGdvdnVrLXRleHQtY29sb3VyO1xuICAgIHdpZHRoOiAkZ292dWstZGl2aWRlci1zaXplO1xuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMik7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIENvbmRpdGlvbmFsIHJldmVhbHNcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gVGhlIG5hcnJvdyBib3JkZXIgaXMgdXNlZCBpbiB0aGUgY29uZGl0aW9uYWwgcmV2ZWFscyBiZWNhdXNlIHRoZSBib3JkZXIgaGFzXG4gIC8vIHRvIGJlIGFuIGV2ZW4gbnVtYmVyIGluIG9yZGVyIHRvIGJlIGNlbnRyZWQgdW5kZXIgdGhlIDQwcHggY2hlY2tib3ggb3IgcmFkaW8uXG4gICRjb25kaXRpb25hbC1ib3JkZXItd2lkdGg6ICRnb3Z1ay1ib3JkZXItd2lkdGgtbmFycm93O1xuICAvLyBDYWxjdWxhdGUgdGhlIGFtb3VudCBvZiBwYWRkaW5nIG5lZWRlZCB0byBrZWVwIHRoZSBib3JkZXIgY2VudGVyZWQgYWdhaW5zdCB0aGUgY2hlY2tib3guXG4gICRjb25kaXRpb25hbC1ib3JkZXItcGFkZGluZzogKCRnb3Z1ay1jaGVja2JveGVzLXNpemUgLyAyKSAtICgkY29uZGl0aW9uYWwtYm9yZGVyLXdpZHRoIC8gMik7XG4gIC8vIE1vdmUgdGhlIGJvcmRlciBjZW50ZXJlZCB3aXRoIHRoZSBjaGVja2JveFxuICAkY29uZGl0aW9uYWwtbWFyZ2luLWxlZnQ6ICRjb25kaXRpb25hbC1ib3JkZXItcGFkZGluZztcbiAgLy8gTW92ZSB0aGUgY29udGVudHMgb2YgdGhlIGNvbmRpdGlvbmFsIGlubGluZSB3aXRoIHRoZSBsYWJlbFxuICAkY29uZGl0aW9uYWwtcGFkZGluZy1sZWZ0OiAkY29uZGl0aW9uYWwtYm9yZGVyLXBhZGRpbmcgKyAkZ292dWstY2hlY2tib3hlcy1sYWJlbC1wYWRkaW5nLWxlZnQtcmlnaHQ7XG5cbiAgLmdvdnVrLWNoZWNrYm94ZXNfX2NvbmRpdGlvbmFsIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig0LCBcImJvdHRvbVwiKTtcbiAgICBtYXJnaW4tbGVmdDogJGNvbmRpdGlvbmFsLW1hcmdpbi1sZWZ0O1xuICAgIHBhZGRpbmctbGVmdDogJGNvbmRpdGlvbmFsLXBhZGRpbmctbGVmdDtcbiAgICBib3JkZXItbGVmdDogJGNvbmRpdGlvbmFsLWJvcmRlci13aWR0aCBzb2xpZCAkZ292dWstYm9yZGVyLWNvbG91cjtcblxuICAgIC5qcy1lbmFibGVkICYtLWhpZGRlbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBTbWFsbCBjaGVja2JveGVzXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC5nb3Z1ay1jaGVja2JveGVzLS1zbWFsbCB7XG5cbiAgICAkaW5wdXQtb2Zmc2V0OiAoJGdvdnVrLXRvdWNoLXRhcmdldC1zaXplIC0gJGdvdnVrLXNtYWxsLWNoZWNrYm94ZXMtc2l6ZSkgLyAyO1xuICAgICRsYWJlbC1vZmZzZXQ6ICRnb3Z1ay10b3VjaC10YXJnZXQtc2l6ZSAtICRpbnB1dC1vZmZzZXQ7XG5cbiAgICAuZ292dWstY2hlY2tib3hlc19faXRlbSB7XG4gICAgICBAaW5jbHVkZSBnb3Z1ay1jbGVhcmZpeDtcbiAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAkbGFiZWwtb2Zmc2V0O1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgLy8gU2hpZnQgdGhlIHRvdWNoIHRhcmdldCBpbnRvIHRoZSBsZWZ0IG1hcmdpbiBzbyB0aGF0IHRoZSB2aXNpYmxlIGVkZ2Ugb2ZcbiAgICAvLyB0aGUgY29udHJvbCBpcyBhbGlnbmVkXG4gICAgLy9cbiAgICAvLyAgIOKUhldoYXQgY29sb3VycyBkbyB5b3UgbGlrZT9cbiAgICAvLyAg4pSM4pSG4pSA4pSA4pSA4pSQXG4gICAgLy8gIOKUguKUhltdIOKUgiBQdXJwbGVcbiAgICAvLyAg4pSU4pSG4pay4pSA4pSA4pSYXG4gICAgLy8gIOKWsuKUhuKUlOKUgCBDaGVjayBib3ggcHNldWRvIGVsZW1lbnQsIGFsaWduZWQgd2l0aCBtYXJnaW5cbiAgICAvLyAg4pSU4pSA4pSA4pSAIFRvdWNoIHRhcmdldCAoaW52aXNpYmxlIGlucHV0KSwgc2hpZnRlZCBpbnRvIHRoZSBtYXJnaW5cbiAgICAuZ292dWstY2hlY2tib3hlc19faW5wdXQge1xuICAgICAgQGluY2x1ZGUgZ292dWstbm90LWllOCB7XG4gICAgICAgIGxlZnQ6ICRpbnB1dC1vZmZzZXQgKiAtMTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgZ292dWstaWYtaWU4IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRnb3Z1ay1zbWFsbC1jaGVja2JveGVzLXNpemUgKiAtMTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBZGp1c3QgdGhlIHNpemUgYW5kIHBvc2l0aW9uIG9mIHRoZSBsYWJlbC5cbiAgICAvL1xuICAgIC8vIFVubGlrZSBsYXJnZXIgY2hlY2tib3hlcywgd2UgYWxzbyBoYXZlIHRvIGZsb2F0IHRoZSBsYWJlbCBpbiBvcmRlciB0b1xuICAgIC8vICdzaHJpbmsnIGl0LCBwcmV2ZW50aW5nIHRoZSBob3ZlciBzdGF0ZSBmcm9tIGtpY2tpbmcgaW4gYWNyb3NzIHRoZSBmdWxsXG4gICAgLy8gd2lkdGggb2YgdGhlIHBhcmVudCBlbGVtZW50LlxuICAgIC5nb3Z1ay1jaGVja2JveGVzX19sYWJlbCB7XG4gICAgICBtYXJnaW4tdG9wOiAtMnB4O1xuICAgICAgcGFkZGluZzogMTNweCBnb3Z1ay1zcGFjaW5nKDMpIDEzcHggMXB4O1xuICAgICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgICAgcGFkZGluZzogMTFweCBnb3Z1ay1zcGFjaW5nKDMpIDEwcHggMXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFsgXSBDaGVjayBib3hcbiAgICAvL1xuICAgIC8vIFJlZHVjZSB0aGUgc2l6ZSBvZiB0aGUgY2hlY2sgYm94IFsxXSwgdmVydGljYWxseSBjZW50ZXIgaXQgd2l0aGluIHRoZVxuICAgIC8vIHRvdWNoIHRhcmdldCBbMl1cbiAgICAuZ292dWstY2hlY2tib3hlc19fbGFiZWw6YmVmb3JlIHtcbiAgICAgIHRvcDogJGlucHV0LW9mZnNldCAtICRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50OyAvLyAyXG4gICAgICB3aWR0aDogJGdvdnVrLXNtYWxsLWNoZWNrYm94ZXMtc2l6ZTsgLy8gMVxuICAgICAgaGVpZ2h0OiAkZ292dWstc21hbGwtY2hlY2tib3hlcy1zaXplOyAvLyAxXG4gICAgfVxuXG4gICAgLy8g4pyUIENoZWNrIG1hcmtcbiAgICAvL1xuICAgIC8vIFJlZHVjZSB0aGUgc2l6ZSBvZiB0aGUgY2hlY2sgbWFyayBhbmQgcmUtYWxpZ24gd2l0aGluIHRoZSBjaGVja2JveFxuICAgIC5nb3Z1ay1jaGVja2JveGVzX19sYWJlbDphZnRlciB7XG4gICAgICB0b3A6IDE1cHg7XG4gICAgICBsZWZ0OiA2cHg7XG4gICAgICB3aWR0aDogMTJweDtcbiAgICAgIGhlaWdodDogNi41cHg7XG4gICAgICBib3JkZXItd2lkdGg6IDAgMCAzcHggM3B4O1xuICAgIH1cblxuICAgIC8vIEZpeCBwb3NpdGlvbiBvZiBoaW50IHdpdGggc21hbGwgY2hlY2tib3hlc1xuICAgIC8vXG4gICAgLy8gRG8gbm90IHVzZSBoaW50cyB3aXRoIHNtYWxsIGNoZWNrYm94ZXMg4oCTIGJlY2F1c2UgdGhleSdyZSB3aXRoaW4gdGhlIGlucHV0XG4gICAgLy8gd3JhcHBlciB0aGV5IHRyaWdnZXIgdGhlIGhvdmVyIHN0YXRlLCBidXQgY2xpY2tpbmcgdGhlbSBkb2Vzbid0IGFjdHVhbGx5XG4gICAgLy8gYWN0aXZhdGUgdGhlIGNvbnRyb2wuXG4gICAgLy9cbiAgICAvLyAoSWYgeW91IGRvIHVzZSB0aGVtLCB0aGV5IHdvbid0IGxvb2sgY29tcGxldGVseSBicm9rZW4uLi4gYnV0IHNlcmlvdXNseSxcbiAgICAvLyBkb24ndCB1c2UgdGhlbSlcbiAgICAuZ292dWstY2hlY2tib3hlc19faGludCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gY29uZGl0aW9uYWwgcmV2ZWFscyB3aXRoIHNtYWxsIGNoZWNrYm94ZXNcbiAgICAuZ292dWstY2hlY2tib3hlc19fY29uZGl0aW9uYWwge1xuICAgICAgJG1hcmdpbi1sZWZ0OiAoJGdvdnVrLXNtYWxsLWNoZWNrYm94ZXMtc2l6ZSAvIDIpIC0gKCRjb25kaXRpb25hbC1ib3JkZXItd2lkdGggLyAyKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkbWFyZ2luLWxlZnQ7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRsYWJlbC1vZmZzZXQgLSAoJG1hcmdpbi1sZWZ0ICsgJGNvbmRpdGlvbmFsLWJvcmRlci13aWR0aCk7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG5cbiAgICAvLyBIb3ZlciBzdGF0ZSBmb3Igc21hbGwgY2hlY2tib3hlcy5cbiAgICAvL1xuICAgIC8vIFdlIHVzZSBhIGhvdmVyIHN0YXRlIGZvciBzbWFsbCBjaGVja2JveGVzIGJlY2F1c2UgdGhlIHRvdWNoIHRhcmdldCBzaXplXG4gICAgLy8gaXMgc28gbXVjaCBsYXJnZXIgdGhhbiB0aGVpciB2aXNpYmxlIHNpemUsIGFuZCBzbyB3ZSBuZWVkIHRvIHByb3ZpZGVcbiAgICAvLyBmZWVkYmFjayB0byB0aGUgdXNlciBhcyB0byB3aGljaCBjaGVja2JveCB0aGV5IHdpbGwgc2VsZWN0IHdoZW4gdGhlaXJcbiAgICAvLyBjdXJzb3IgaXMgb3V0c2lkZSBvZiB0aGUgdmlzaWJsZSBhcmVhLlxuICAgIC5nb3Z1ay1jaGVja2JveGVzX19pdGVtOmhvdmVyIC5nb3Z1ay1jaGVja2JveGVzX19pbnB1dDpub3QoOmRpc2FibGVkKSArIC5nb3Z1ay1jaGVja2JveGVzX19sYWJlbDpiZWZvcmUge1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGdvdnVrLWhvdmVyLXdpZHRoICRnb3Z1ay1ob3Zlci1jb2xvdXI7XG4gICAgfVxuXG4gICAgLy8gQmVjYXVzZSB3ZSd2ZSBvdmVycmlkZGVuIHRoZSBib3JkZXItc2hhZG93IHByb3ZpZGVkIGJ5IHRoZSBmb2N1cyBzdGF0ZSxcbiAgICAvLyB3ZSBuZWVkIHRvIHJlZGVmaW5lIHRoYXQgdG9vLlxuICAgIC8vXG4gICAgLy8gV2UgdXNlIHR3byBib3ggc2hhZG93cywgb25lIHRoYXQgcmVzdG9yZXMgdGhlIG9yaWdpbmFsIGZvY3VzIHN0YXRlIFsxXVxuICAgIC8vIGFuZCBhbm90aGVyIHRoYXQgdGhlbiBhcHBsaWVzIHRoZSBob3ZlciBzdGF0ZSBbMl0uXG4gICAgLmdvdnVrLWNoZWNrYm94ZXNfX2l0ZW06aG92ZXIgLmdvdnVrLWNoZWNrYm94ZXNfX2lucHV0OmZvY3VzICsgLmdvdnVrLWNoZWNrYm94ZXNfX2xhYmVsOmJlZm9yZSB7XG4gICAgICBib3gtc2hhZG93OlxuICAgICAgICAwIDAgMCAkZ292dWstZm9jdXMtd2lkdGggJGdvdnVrLWZvY3VzLWNvbG91ciwgLy8gMVxuICAgICAgICAwIDAgMCAkZ292dWstaG92ZXItd2lkdGggJGdvdnVrLWhvdmVyLWNvbG91cjsgLy8gMlxuICAgIH1cblxuICAgIC8vIEZvciBkZXZpY2VzIHRoYXQgZXhwbGljaXRseSBkb24ndCBzdXBwb3J0IGhvdmVyLCBkb24ndCBwcm92aWRlIGEgaG92ZXJcbiAgICAvLyBzdGF0ZSAoZS5nLiBvbiB0b3VjaCBkZXZpY2VzIGxpa2UgaU9TKS5cbiAgICAvL1xuICAgIC8vIFdlIGNhbid0IHVzZSBgQG1lZGlhIChob3ZlcjogaG92ZXIpYCBiZWNhdXNlIHdlIHdvdWxkbid0IGdldCB0aGUgaG92ZXJcbiAgICAvLyBzdGF0ZSBpbiBicm93c2VycyB0aGF0IGRvbid0IHN1cHBvcnQgYEBtZWRpYSAoaG92ZXIpYCAobGlrZSBJbnRlcm5ldFxuICAgIC8vIEV4cGxvcmVyKSDigJMgc28gd2UgaGF2ZSB0byAndW5kbycgdGhlIGhvdmVyIHN0YXRlIGluc3RlYWQuXG4gICAgQG1lZGlhIChob3Zlcjogbm9uZSksIChwb2ludGVyOiBjb2Fyc2UpIHtcbiAgICAgIC5nb3Z1ay1jaGVja2JveGVzX19pdGVtOmhvdmVyIC5nb3Z1ay1jaGVja2JveGVzX19pbnB1dDpub3QoOmRpc2FibGVkKSArIC5nb3Z1ay1jaGVja2JveGVzX19sYWJlbDpiZWZvcmUge1xuICAgICAgICBib3gtc2hhZG93OiBpbml0aWFsO1xuICAgICAgfVxuXG4gICAgICAuZ292dWstY2hlY2tib3hlc19faXRlbTpob3ZlciAuZ292dWstY2hlY2tib3hlc19faW5wdXQ6Zm9jdXMgKyAuZ292dWstY2hlY2tib3hlc19fbGFiZWw6YmVmb3JlIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGdvdnVrLWZvY3VzLXdpZHRoICRnb3Z1ay1mb2N1cy1jb2xvdXI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaW1wb3J0IFwiLi4vZXJyb3ItbWVzc2FnZS9pbmRleFwiO1xuQGltcG9ydCBcIi4uL2hpbnQvaW5kZXhcIjtcbkBpbXBvcnQgXCIuLi9sYWJlbC9pbmRleFwiO1xuXG5AaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvY29tcG9uZW50L3RleHRhcmVhXCIpIHtcbiAgLmdvdnVrLXRleHRhcmVhIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAxOSwgJGxpbmUtaGVpZ2h0OiAxLjI1KTtcblxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIHNob3VsZCB0aGlzIGJlIGdsb2JhbD9cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiA0MHB4O1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDYsIFwiYm90dG9tXCIpO1xuICAgIHBhZGRpbmc6IGdvdnVrLXNwYWNpbmcoMSk7XG5cbiAgICByZXNpemU6IHZlcnRpY2FsO1xuXG4gICAgYm9yZGVyOiAkZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudCBzb2xpZCAkZ292dWstaW5wdXQtYm9yZGVyLWNvbG91cjtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiAkZ292dWstZm9jdXMtd2lkdGggc29saWQgJGdvdnVrLWZvY3VzLWNvbG91cjtcbiAgICAgIC8vIEVuc3VyZSBvdXRsaW5lIGFwcGVhcnMgb3V0c2lkZSBvZiB0aGUgZWxlbWVudFxuICAgICAgb3V0bGluZS1vZmZzZXQ6IDA7XG4gICAgICAvLyBEb3VibGUgdGhlIGJvcmRlciBieSBhZGRpbmcgaXRzIHdpZHRoIGFnYWluLiBVc2UgYGJveC1zaGFkb3dgIHRvIGRvXG4gICAgICAvLyB0aGlzIGluc3RlYWQgb2YgY2hhbmdpbmcgYGJvcmRlci13aWR0aGAgKHdoaWNoIGNoYW5nZXMgZWxlbWVudCBzaXplKSBhbmRcbiAgICAgIC8vIHNpbmNlIGBvdXRsaW5lYCBpcyBhbHJlYWR5IHVzZWQgZm9yIHRoZSB5ZWxsb3cgZm9jdXMgc3RhdGUuXG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAkZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudDtcblxuICAgICAgQGluY2x1ZGUgZ292dWstaWYtaWU4IHtcbiAgICAgICAgLy8gSUU4IGRvZXNuJ3Qgc3VwcG9ydCBgYm94LXNoYWRvd2Agc28gZG91YmxlIHRoZSBib3JkZXIgd2l0aFxuICAgICAgICAvLyBgYm9yZGVyLXdpZHRoYC5cbiAgICAgICAgYm9yZGVyLXdpZHRoOiAkZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudCAqIDI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXRleHRhcmVhLS1lcnJvciB7XG4gICAgYm9yZGVyOiAkZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudC1lcnJvciBzb2xpZCAkZ292dWstZXJyb3ItY29sb3VyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICRnb3Z1ay1pbnB1dC1ib3JkZXItY29sb3VyO1xuICAgIH1cbiAgfVxufVxuIiwiQGltcG9ydCBcIi4uL2Vycm9yLW1lc3NhZ2UvaW5kZXhcIjtcbkBpbXBvcnQgXCIuLi9oaW50L2luZGV4XCI7XG5AaW1wb3J0IFwiLi4vbGFiZWwvaW5kZXhcIjtcbkBpbXBvcnQgXCIuLi90ZXh0YXJlYS9pbmRleFwiO1xuXG5AaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvY29tcG9uZW50L2NoYXJhY3Rlci1jb3VudFwiKSB7XG4gIC5nb3Z1ay1jaGFyYWN0ZXItY291bnQge1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDYsIFwiYm90dG9tXCIpO1xuXG4gICAgLmdvdnVrLWZvcm0tZ3JvdXAsXG4gICAgLmdvdnVrLXRleHRhcmVhIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMSk7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWNoYXJhY3Rlci1jb3VudF9fbWVzc2FnZSB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogZmFsc2UsICR0YWJ1bGFyOiB0cnVlKTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuZ292dWstY2hhcmFjdGVyLWNvdW50X19tZXNzYWdlLS1kaXNhYmxlZCB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG59XG4iLCJAaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvY29tcG9uZW50L2Nvb2tpZS1iYW5uZXJcIikge1xuXG4gIC8vIFRoaXMgbmVlZHMgdG8gYmUga2VwdCBpbiBzeW5jIHdpdGggdGhlIGhlYWRlciBjb21wb25lbnQncyBzdHlsZXNcbiAgJGJvcmRlci1ib3R0b20td2lkdGg6IGdvdnVrLXNwYWNpbmcoMik7XG5cbiAgLmdvdnVrLWNvb2tpZS1iYW5uZXIge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDE5KTtcblxuICAgIHBhZGRpbmctdG9wOiBnb3Z1ay1zcGFjaW5nKDQpO1xuICAgIC8vIFRoZSBjb21wb25lbnQgZG9lcyBub3Qgc2V0IGJvdHRvbSBzcGFjaW5nLlxuICAgIC8vIFRoZSBib3R0b20gc3BhY2luZyBzaG91bGQgYmUgY3JlYXRlZCBieSB0aGUgaXRlbXMgaW5zaWRlIHRoZSBjb21wb25lbnQuXG5cbiAgICAvLyBWaXN1YWxseSBzZXBhcmF0ZSB0aGUgY29va2llIGJhbm5lciBmcm9tIGNvbnRlbnQgdW5kZXJuZWF0aFxuICAgIC8vIHdoZW4gdXNlciBjaGFuZ2VzIGNvbG91cnMgaW4gdGhlaXIgYnJvd3Nlci5cbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyLWJvdHRvbS13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAgIGJhY2tncm91bmQtY29sb3I6IGdvdnVrLWNvbG91cihcImxpZ2h0LWdyZXlcIiwgJGxlZ2FjeTogXCJncmV5LTNcIik7XG4gIH1cblxuICAvLyBTdXBwb3J0IG9sZGVyIGJyb3dzZXJzIHdoaWNoIGRvbid0IGhpZGUgZWxlbWVudHMgd2l0aCB0aGUgYGhpZGRlbmAgYXR0cmlidXRlXG4gIC8vIHdoZW4gdXNlciBoaWRlcyB0aGUgd2hvbGUgY29va2llIGJhbm5lciB3aXRoIGEgJ0hpZGUnIGJ1dHRvbi5cbiAgLmdvdnVrLWNvb2tpZS1iYW5uZXJbaGlkZGVuXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5nb3Z1ay1jb29raWUtYmFubmVyX19tZXNzYWdlIHtcbiAgICAvLyBSZW1vdmUgdGhlIGV4dHJhIGhlaWdodCBhZGRlZCBieSB0aGUgc2VwYXJhdG9yIGJvcmRlci5cbiAgICBtYXJnaW4tYm90dG9tOiAtJGJvcmRlci1ib3R0b20td2lkdGg7XG5cbiAgICAmW2hpZGRlbl0ge1xuICAgICAgLy8gU3VwcG9ydCBvbGRlciBicm93c2VycyB3aGljaCBkb24ndCBoaWRlIGVsZW1lbnRzIHdpdGggdGhlIGBoaWRkZW5gIGF0dHJpYnV0ZVxuICAgICAgLy8gd2hlbiB0aGUgdmlzaWJpbGl0eSBvZiBjb29raWUgYW5kIHJlcGxhY2VtZW50IG1lc3NhZ2VzIGlzIHRvZ2dsZWQuXG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgLy8gUmVtb3ZlIHRoZSBuYXRpdmUgdmlzaWJsZSBmb2N1cyBpbmRpY2F0b3Igd2hlbiB0aGUgZWxlbWVudCBpcyBwcm9ncmFtbWF0aWNhbGx5IGZvY3VzZWQuXG4gICAgICAvL1xuICAgICAgLy8gVGhlIGZvY3VzZWQgY29va2llIGJhbm5lciBpcyB0aGUgZmlyc3QgZWxlbWVudCBvbiB0aGUgcGFnZSBhbmQgdGhlIGxhc3QgdGhpbmcgdGhlIHVzZXJcbiAgICAgIC8vIGludGVyYWN0ZWQgd2l0aCBwcmlvciB0byBpdCBnYWluaW5nIGZvY3VzLlxuICAgICAgLy8gV2UgdGhlcmVmb3JlIGFzc3VtZSB0aGF0IG1vdmluZyBmb2N1cyB0byBpdCBpcyBub3QgZ29pbmcgdG8gc3VycHJpc2UgdXNlcnMsIGFuZCB0aGF0IGdpdmluZ1xuICAgICAgLy8gaXQgYSB2aXNpYmxlIGZvY3VzIGluZGljYXRvciBjb3VsZCBiZSBtb3JlIGNvbmZ1c2luZyB0aGFuIGhlbHBmdWwsIGVzcGVjaWFsbHkgYXMgdGhlXG4gICAgICAvLyBlbGVtZW50IGlzIG5vdCBub3JtYWxseSBrZXlib2FyZCBvcGVyYWJsZS5cbiAgICAgIC8vXG4gICAgICAvLyBXZSBoYXZlIGZsYWdnZWQgdGhpcyBpbiB0aGUgcmVzZWFyY2ggc2VjdGlvbiBvZiB0aGUgZ3VpZGFuY2UgYXMgc29tZXRoaW5nIHRvIG1vbml0b3IuXG4gICAgICAvL1xuICAgICAgLy8gQSByZWxhdGVkIGRpc2N1c3Npb246IGh0dHBzOi8vZ2l0aHViLmNvbS93M2Mvd2NhZy9pc3N1ZXMvMTAwMVxuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9jb21wb25lbnQvc3VtbWFyeS1saXN0XCIpIHtcbiAgLmdvdnVrLXN1bW1hcnktbGlzdCB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTkpO1xuICAgIEBpbmNsdWRlIGdvdnVrLXRleHQtY29sb3VyO1xuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkOyAvLyBSZXF1aXJlZCB0byBhbGxvdyB1cyB0byB3cmFwIHdvcmRzIHRoYXQgb3ZlcmZsb3cuXG4gICAgfVxuICAgIG1hcmdpbjogMDsgLy8gUmVzZXQgZGVmYXVsdCB1c2VyIGFnZW50IHN0eWxlc1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDYsIFwiYm90dG9tXCIpO1xuICB9XG5cbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fcm93IHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkdW50aWw6IHRhYmxldCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygzKTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ292dWstYm9yZGVyLWNvbG91cjtcbiAgICB9XG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgICAgZGlzcGxheTogdGFibGUtcm93O1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX2tleSxcbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fdmFsdWUsXG4gIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX2FjdGlvbnMge1xuICAgIG1hcmdpbjogMDsgLy8gUmVzZXQgZGVmYXVsdCB1c2VyIGFnZW50IHN0eWxlc1xuXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHBhZGRpbmctdG9wOiBnb3Z1ay1zcGFjaW5nKDIpO1xuICAgICAgcGFkZGluZy1yaWdodDogZ292dWstc3BhY2luZyg0KTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDIpO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRnb3Z1ay1ib3JkZXItY29sb3VyO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX2FjdGlvbnMge1xuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMyk7XG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgICAgd2lkdGg6IDIwJTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cblxuICAuZ292dWstc3VtbWFyeS1saXN0X19rZXksXG4gIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX3ZhbHVlIHtcbiAgICAvLyBBdXRvbWF0aWMgd3JhcHBpbmcgZm9yIHVuYnJlYWthYmxlIHRleHQgKGUuZy4gVVJMcylcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7IC8vIEZhbGxiYWNrIGZvciBvbGRlciBicm93c2VycyBvbmx5XG4gICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgfVxuXG4gIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX2tleSB7XG4gICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygxKTtcbiAgICBAaW5jbHVkZSBnb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1ib2xkO1xuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgIHdpZHRoOiAzMCU7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fdmFsdWUge1xuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCR1bnRpbDogdGFibGV0KSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDMpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgIH1cbiAgfVxuXG4gIC8vIEV4cGFuZCB3aWR0aCB3aGVuIHZhbHVlIGlzIGxhc3QgY29sdW1uIChubyBhY3Rpb24pXG4gIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX3ZhbHVlOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgIHdpZHRoOiA3MCU7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fdmFsdWUgPiBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDIpO1xuICB9XG5cbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fdmFsdWUgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX2FjdGlvbnMtbGlzdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwOyAvLyBSZXNldCBkZWZhdWx0IHVzZXIgYWdlbnQgc3R5bGVzXG4gICAgcGFkZGluZzogMDsgLy8gUmVzZXQgZGVmYXVsdCB1c2VyIGFnZW50IHN0eWxlc1xuICB9XG5cbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fYWN0aW9ucy1saXN0LWl0ZW0ge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBtYXJnaW4tcmlnaHQ6IGdvdnVrLXNwYWNpbmcoMik7XG4gICAgcGFkZGluZy1yaWdodDogZ292dWstc3BhY2luZygyKTtcbiAgfVxuXG4gIC8vIEluIG9sZGVyIGJyb3dzZXJzIHN1Y2ggYXMgSUU4LCA6bGFzdC1jaGlsZCBpcyBub3QgYXZhaWxhYmxlLFxuICAvLyBzbyBvbmx5IHNob3cgdGhlIGJvcmRlciBkaXZpZGVyIHdoZXJlIGl0IGlzIGF2YWlsYWJsZS5cbiAgLmdvdnVrLXN1bW1hcnktbGlzdF9fYWN0aW9ucy1saXN0LWl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGdvdnVrLWJvcmRlci1jb2xvdXI7XG4gIH1cblxuICAuZ292dWstc3VtbWFyeS1saXN0X19hY3Rpb25zLWxpc3QtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAvLyBObyBib3JkZXIgb24gZW50aXJlIHN1bW1hcnkgbGlzdFxuICAuZ292dWstc3VtbWFyeS1saXN0LS1uby1ib3JkZXIge1xuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCR1bnRpbDogdGFibGV0KSB7XG4gICAgICAuZ292dWstc3VtbWFyeS1saXN0X19yb3cge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgICAgLmdvdnVrLXN1bW1hcnktbGlzdF9fa2V5LFxuICAgICAgLmdvdnVrLXN1bW1hcnktbGlzdF9fdmFsdWUsXG4gICAgICAuZ292dWstc3VtbWFyeS1saXN0X19hY3Rpb25zIHtcbiAgICAgICAgLy8gUmVtb3ZlIDFweCBib3JkZXIsIGFkZCAxcHggaGVpZ2h0IGJhY2sgb25cbiAgICAgICAgcGFkZGluZy1ib3R0b206IGdvdnVrLXNwYWNpbmcoMikgKyAxcHg7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBObyBib3JkZXIgb24gc3BlY2lmaWMgcm93c1xuICAuZ292dWstc3VtbWFyeS1saXN0X19yb3ctLW5vLWJvcmRlciB7XG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJHVudGlsOiB0YWJsZXQpIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgICAuZ292dWstc3VtbWFyeS1saXN0X19rZXksXG4gICAgICAuZ292dWstc3VtbWFyeS1saXN0X192YWx1ZSxcbiAgICAgIC5nb3Z1ay1zdW1tYXJ5LWxpc3RfX2FjdGlvbnMge1xuICAgICAgICAvLyBSZW1vdmUgMXB4IGJvcmRlciwgYWRkIDFweCBoZWlnaHQgYmFjayBvblxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogZ292dWstc3BhY2luZygyKSArIDFweDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGltcG9ydCBcIi4uL2Vycm9yLW1lc3NhZ2UvaW5kZXhcIjtcbkBpbXBvcnQgXCIuLi9oaW50L2luZGV4XCI7XG5AaW1wb3J0IFwiLi4vbGFiZWwvaW5kZXhcIjtcblxuQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvbXBvbmVudC9pbnB1dFwiKSB7XG4gIC5nb3Z1ay1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTkpO1xuXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgQGlmICRnb3Z1ay10eXBvZ3JhcGh5LXVzZS1yZW0ge1xuICAgICAgaGVpZ2h0OiBnb3Z1ay1weC10by1yZW0oNDBweCk7XG4gICAgfVxuICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICBwYWRkaW5nOiBnb3Z1ay1zcGFjaW5nKDEpO1xuICAgIC8vIHNldHRpbmcgYW55IGJhY2tncm91bmQtY29sb3IgbWFrZXMgdGV4dCBpbnZpc2libGUgd2hlbiBjaGFuZ2luZyBjb2xvdXJzIHRvIGRhcmsgYmFja2dyb3VuZHMgaW4gRmlyZWZveCAoaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTMzNTQ3NilcbiAgICAvLyBhcyBiYWNrZ3JvdW5kLWNvbG9yIGFuZCBjb2xvciBuZWVkIHRvIGFsd2F5cyBiZSBzZXQgdG9nZXRoZXIsIGNvbG9yIHNob3VsZCBub3QgYmUgc2V0IGVpdGhlclxuICAgIGJvcmRlcjogJGdvdnVrLWJvcmRlci13aWR0aC1mb3JtLWVsZW1lbnQgc29saWQgJGdvdnVrLWlucHV0LWJvcmRlci1jb2xvdXI7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgIC8vIERpc2FibGUgaW5uZXIgc2hhZG93IGFuZCByZW1vdmUgcm91bmRlZCBjb3JuZXJzXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6ICRnb3Z1ay1mb2N1cy13aWR0aCBzb2xpZCAkZ292dWstZm9jdXMtY29sb3VyO1xuICAgICAgLy8gRW5zdXJlIG91dGxpbmUgYXBwZWFycyBvdXRzaWRlIG9mIHRoZSBlbGVtZW50XG4gICAgICBvdXRsaW5lLW9mZnNldDogMDtcbiAgICAgIC8vIERvdWJsZSB0aGUgYm9yZGVyIGJ5IGFkZGluZyBpdHMgd2lkdGggYWdhaW4uIFVzZSBgYm94LXNoYWRvd2AgZm9yIHRoaXMgLy8gaW5zdGVhZCBvZiBjaGFuZ2luZyBgYm9yZGVyLXdpZHRoYCAtIHRoaXMgaXMgZm9yIGNvbnNpc3RlbmN5IHdpdGhcbiAgICAgIC8vIGNvbXBvbmVudHMgc3VjaCBhcyB0ZXh0YXJlYSB3aGVyZSB3ZSBhdm9pZCBjaGFuZ2luZyBgYm9yZGVyLXdpZHRoYCBhc1xuICAgICAgLy8gaXQgd2lsbCBjaGFuZ2UgdGhlIGVsZW1lbnQgc2l6ZS4gQWxzbywgYG91dGxpbmVgIGNhbm5vdCBiZSB1dGlsaXNlZFxuICAgICAgLy8gaGVyZSBhcyBpdCBpcyBhbHJlYWR5IHVzZWQgZm9yIHRoZSB5ZWxsb3cgZm9jdXMgc3RhdGUuXG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAkZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudDtcblxuICAgICAgQGluY2x1ZGUgZ292dWstaWYtaWU4IHtcbiAgICAgICAgLy8gSUU4IGRvZXNuJ3Qgc3VwcG9ydCBgYm94LXNoYWRvd2Agc28gZG91YmxlIHRoZSBib3JkZXIgd2l0aFxuICAgICAgICAvLyBgYm9yZGVyLXdpZHRoYC5cbiAgICAgICAgYm9yZGVyLXdpZHRoOiAkZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudCAqIDI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWlucHV0Ojotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxuICAuZ292dWstaW5wdXQ6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICAgIG1hcmdpbjogMDtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAuZ292dWstaW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XG4gICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIH1cblxuICAuZ292dWstaW5wdXQtLWVycm9yIHtcbiAgICBib3JkZXI6ICRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50LWVycm9yIHNvbGlkICRnb3Z1ay1lcnJvci1jb2xvdXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGdvdnVrLWlucHV0LWJvcmRlci1jb2xvdXI7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhlIGV4IG1lYXN1cmVtZW50cyBhcmUgYmFzZWQgb24gdGhlIG51bWJlciBvZiBXJ3MgdGhhdCBjYW4gZml0IGluc2lkZSB0aGUgaW5wdXRcbiAgLy8gRXh0cmEgc3BhY2UgaXMgbGVmdCBvbiB0aGUgcmlnaHQgaGFuZCBzaWRlIHRvIGFsbG93IGZvciB0aGUgU2FmYXJpIHByZWZpbGwgaWNvblxuICAvLyBMaW5lYXIgcmVncmVzc2lvbiBlc3RpbWF0aW9uIGJhc2VkIG9uIHZpc3VhbCB0ZXN0czogeSA9IDEuNzYgKyAxLjgxeFxuXG4gIC5nb3Z1ay1pbnB1dC0td2lkdGgtMzAge1xuICAgIG1heC13aWR0aDogNTZleCArIDNleDtcbiAgfVxuXG4gIC5nb3Z1ay1pbnB1dC0td2lkdGgtMjAge1xuICAgIG1heC13aWR0aDogMzhleCArIDNleDtcbiAgfVxuXG4gIC5nb3Z1ay1pbnB1dC0td2lkdGgtMTAge1xuICAgIG1heC13aWR0aDogMjBleCArIDNleDtcbiAgfVxuXG4gIC5nb3Z1ay1pbnB1dC0td2lkdGgtNSB7XG4gICAgbWF4LXdpZHRoOiAxMC44ZXg7XG4gIH1cblxuICAuZ292dWstaW5wdXQtLXdpZHRoLTQge1xuICAgIG1heC13aWR0aDogOWV4O1xuICB9XG5cbiAgLmdvdnVrLWlucHV0LS13aWR0aC0zIHtcbiAgICBtYXgtd2lkdGg6IDcuMmV4O1xuICB9XG5cbiAgLmdvdnVrLWlucHV0LS13aWR0aC0yIHtcbiAgICBtYXgtd2lkdGg6IDUuNGV4O1xuICB9XG5cbiAgLmdvdnVrLWlucHV0X193cmFwcGVyIHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgIC5nb3Z1ay1pbnB1dCB7XG4gICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgICAgLXdlYmtpdC1mbGV4OiAwIDEgYXV0bztcbiAgICAgICAgICAtbXMtZmxleDogMCAxIGF1dG87XG4gICAgICAgICAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIH1cblxuICAgIC5nb3Z1ay1pbnB1dDpmb2N1cyB7XG4gICAgICAvLyBIYWNrIHRvIHN0b3AgZm9jdXMgc3R5bGUgYmVpbmcgb3ZlcmxhcHBlZCBieSB0aGUgc3VmZml4XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgIC8vIFNwbGl0IHByZWZpeC9zdWZmaXggb250byBzZXBhcmF0ZSBsaW5lcyBvbiBuYXJyb3cgc2NyZWVuc1xuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCR1bnRpbDogbW9iaWxlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgLmdvdnVrLWlucHV0IHtcbiAgICAgICAgLy8gU2V0IG1heC13aWR0aCB0byBvdmVycmlkZSBwb3RlbnRpYWwgd2lkdGggb3ZlcnJpZGUgY2xhc3Mgb24gdGhlIGlucHV0XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZ292dWstaW5wdXRfX3ByZWZpeCxcbiAgLmdvdnVrLWlucHV0X19zdWZmaXgge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDE5KTtcblxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1pbi13aWR0aDogNDBweDtcbiAgICBAaWYgJGdvdnVrLXR5cG9ncmFwaHktdXNlLXJlbSB7XG4gICAgICBtaW4td2lkdGg6IGdvdnVrLXB4LXRvLXJlbSg0MHB4KTtcbiAgICB9XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIEBpZiAkZ292dWstdHlwb2dyYXBoeS11c2UtcmVtIHtcbiAgICAgIGhlaWdodDogZ292dWstcHgtdG8tcmVtKDQwcHgpO1xuICAgIH1cblxuICAgIHBhZGRpbmc6IGdvdnVrLXNwYWNpbmcoMSk7XG4gICAgYm9yZGVyOiAkZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudCBzb2xpZCAkZ292dWstaW5wdXQtYm9yZGVyLWNvbG91cjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBnb3Z1ay1jb2xvdXIoXCJsaWdodC1ncmV5XCIsICRsZWdhY3k6IFwiZ3JleS0zXCIpO1xuXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCR1bnRpbDogdGFibGV0KSB7XG4gICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgIH1cbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgLy8gRW1waGFzaXNlIG5vbi1lZGl0YWJsZSBzdGF0dXMgb2YgcHJlZml4ZXMgYW5kIHN1ZmZpeGVzXG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuXG4gICAgLXdlYmtpdC1ib3gtZmxleDogMDtcblxuICAgIC13ZWJraXQtZmxleDogMCAwIGF1dG87XG5cbiAgICAgICAgLW1zLWZsZXg6IDAgMCBhdXRvO1xuXG4gICAgICAgICAgICBmbGV4OiAwIDAgYXV0bztcblxuICAgIC8vIFNwbGl0IHByZWZpeC9zdWZmaXggb250byBzZXBhcmF0ZSBsaW5lcyBvbiBuYXJyb3cgc2NyZWVuc1xuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCR1bnRpbDogbW9iaWxlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWlucHV0X19wcmVmaXgge1xuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCR1bnRpbDogbW9iaWxlKSB7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIH1cbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogbW9iaWxlKSB7XG4gICAgICBAaW5jbHVkZSBnb3Z1ay1ub3QtaWU4IHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFNwbGl0IHByZWZpeC9zdWZmaXggb250byBzZXBhcmF0ZSBsaW5lcyBvbiBuYXJyb3cgc2NyZWVuc1xuICAuZ292dWstaW5wdXRfX3N1ZmZpeCB7XG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJHVudGlsOiBtb2JpbGUpIHtcbiAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgfVxuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiBtb2JpbGUpIHtcbiAgICAgIEBpbmNsdWRlIGdvdnVrLW5vdC1pZTgge1xuICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpbXBvcnQgXCIuLi9lcnJvci1tZXNzYWdlL2luZGV4XCI7XG5AaW1wb3J0IFwiLi4vaW5wdXQvaW5kZXhcIjtcbkBpbXBvcnQgXCIuLi9oaW50L2luZGV4XCI7XG5AaW1wb3J0IFwiLi4vbGFiZWwvaW5kZXhcIjtcblxuQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvbXBvbmVudC9kYXRlLWlucHV0XCIpIHtcbiAgLmdvdnVrLWRhdGUtaW5wdXQge1xuICAgIEBpbmNsdWRlIGdvdnVrLWNsZWFyZml4O1xuICAgIC8vIGZvbnQtc2l6ZTogMCByZW1vdmVzIHdoaXRlc3BhY2UgY2F1c2VkIGJ5IGlubGluZS1ibG9ja1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgfVxuXG4gIC5nb3Z1ay1kYXRlLWlucHV0X19pdGVtIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiBnb3Z1ay1zcGFjaW5nKDQpO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuZ292dWstZGF0ZS1pbnB1dF9fbGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLmdvdnVrLWRhdGUtaW5wdXRfX2lucHV0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4iLCJAaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvY29tcG9uZW50L2RldGFpbHNcIikge1xuICAuZ292dWstZGV0YWlscyB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTkpO1xuICAgIEBpbmNsdWRlIGdvdnVrLXRleHQtY29sb3VyO1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDYsIFwiYm90dG9tXCIpO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuZ292dWstZGV0YWlsc19fc3VtbWFyeSB7XG4gICAgLy8gTWFrZSB0aGUgZm9jdXMgb3V0bGluZSBzaHJpbmstd3JhcCB0aGUgdGV4dCBjb250ZW50IG9mIHRoZSBzdW1tYXJ5XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgLy8gQWJzb2x1dGVseSBwb3NpdGlvbiB0aGUgbWFya2VyIGFnYWluc3QgdGhpcyBlbGVtZW50XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygxKTtcblxuICAgIC8vIEFsbG93IGZvciBhYnNvbHV0ZWx5IHBvc2l0aW9uZWQgbWFya2VyIGFuZCBhbGlnbiB3aXRoIGRpc2Nsb3NlZCB0ZXh0XG4gICAgcGFkZGluZy1sZWZ0OiBnb3Z1ay1zcGFjaW5nKDQpICsgJGdvdnVrLWJvcmRlci13aWR0aDtcblxuICAgIC8vIFN0eWxlIHRoZSBzdW1tYXJ5IHRvIGxvb2sgbGlrZSBhIGxpbmsuLi5cbiAgICBjb2xvcjogJGdvdnVrLWxpbmstY29sb3VyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRnb3Z1ay1saW5rLWhvdmVyLWNvbG91cjtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGdvdnVrLWZvY3VzZWQtdGV4dDtcbiAgICB9XG4gIH1cblxuICAvLyAuLi5idXQgb25seSB1bmRlcmxpbmUgdGhlIHRleHQsIG5vdCB0aGUgYXJyb3dcbiAgLmdvdnVrLWRldGFpbHNfX3N1bW1hcnktdGV4dCB7XG4gICAgQGluY2x1ZGUgZ292dWstbGluay1kZWNvcmF0aW9uO1xuICB9XG5cbiAgLmdvdnVrLWRldGFpbHNfX3N1bW1hcnk6aG92ZXIgLmdvdnVrLWRldGFpbHNfX3N1bW1hcnktdGV4dCB7XG4gICAgQGluY2x1ZGUgZ292dWstbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSB1bmRlcmxpbmUgd2hlbiBmb2N1c3NlZCB0byBhdm9pZCBkdXBsaWNhdGUgYm9yZGVyc1xuICAuZ292dWstZGV0YWlsc19fc3VtbWFyeTpmb2N1cyAuZ292dWstZGV0YWlsc19fc3VtbWFyeS10ZXh0IHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgZGV0YWlscyBtYXJrZXIgc28gd2UgY2FuIHN0eWxlIG91ciBvd24gY29uc2lzdGVudGx5IGFuZFxuICAvLyBlbnN1cmUgaXQgZGlzcGxheXMgaW4gRmlyZWZveCAoc2VlIGltcGxlbWVudGF0aW9uLm1kIGZvciBkZXRhaWxzKVxuICAuZ292dWstZGV0YWlsc19fc3VtbWFyeTo6LXdlYmtpdC1kZXRhaWxzLW1hcmtlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIEFwcGVuZCBvdXIgb3duIG9wZW4gLyBjbG9zZWQgbWFya2VyIHVzaW5nIGEgcHNldWRvLWVsZW1lbnRcbiAgLmdvdnVrLWRldGFpbHNfX3N1bW1hcnk6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAgIHRvcDogLTFweDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcblxuICAgIG1hcmdpbjogYXV0bztcblxuICAgIEBpbmNsdWRlIGdvdnVrLXNoYXBlLWFycm93KCRkaXJlY3Rpb246IHJpZ2h0LCAkYmFzZTogMTRweCk7XG5cbiAgICAuZ292dWstZGV0YWlsc1tvcGVuXSA+ICYge1xuICAgICAgQGluY2x1ZGUgZ292dWstc2hhcGUtYXJyb3coJGRpcmVjdGlvbjogZG93biwgJGJhc2U6IDE0cHgpO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1kZXRhaWxzX190ZXh0IHtcbiAgICBwYWRkaW5nLXRvcDogZ292dWstc3BhY2luZygzKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogZ292dWstc3BhY2luZygzKTtcbiAgICBwYWRkaW5nLWxlZnQ6IGdvdnVrLXNwYWNpbmcoNCk7XG4gICAgYm9yZGVyLWxlZnQ6ICRnb3Z1ay1ib3JkZXItd2lkdGggc29saWQgJGdvdnVrLWJvcmRlci1jb2xvdXI7XG4gIH1cblxuICAuZ292dWstZGV0YWlsc19fdGV4dCBwIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoNCk7XG4gIH1cblxuICAuZ292dWstZGV0YWlsc19fdGV4dCA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4iLCIvLy8vXG4vLy8gQGdyb3VwIGhlbHBlcnMvc2hhcGVzXG4vLy8vXG5cbi8vLyBDYWxjdWxhdGUgdGhlIGhlaWdodCBvZiBhbiBlcXVpbGF0ZXJhbCB0cmlhbmdsZVxuLy8vXG4vLy8gTXVsdGlwbHlpbmcgaGFsZiB0aGUgbGVuZ3RoIG9mIHRoZSBiYXNlIG9mIGFuIGVxdWlsYXRlcmFsIHRyaWFuZ2xlIGJ5IHRoZVxuLy8vIHNxdWFyZSByb290IG9mIHRocmVlIGdpdmVzIHVzIGl0cyBoZWlnaHQuIFdlIHVzZSAxLjczMiBhcyBhbiBhcHByb3hpbWF0aW9uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIC0gTGVuZ3RoIG9mIHRoZSBiYXNlIG9mIHRoZSB0cmlhbmdsZVxuLy8vIEByZXR1cm4ge051bWJlcn0gQ2FsY3VsYXRlZCBoZWlnaHQgb2YgdGhlIHRyaWFuZ2xlXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5cbkBmdW5jdGlvbiBfZ292dWstZXF1aWxhdGVyYWwtaGVpZ2h0KCRiYXNlKSB7XG4gICRzcXVhcmUtcm9vdC1vZi10aHJlZTogMS43MzI7XG5cbiAgQHJldHVybiAoJGJhc2UgLyAyKSAqICRzcXVhcmUtcm9vdC1vZi10aHJlZTtcbn1cblxuLy8vIEFycm93IG1peGluXG4vLy9cbi8vLyBHZW5lcmF0ZSBBcnJvd3MgKHRyaWFuZ2xlcykgYnkgdXNpbmcgYSBtaXggb2YgdHJhbnNwYXJlbnQgKDEpIGFuZCBjb2xvdXJlZFxuLy8vIGJvcmRlcnMuIFRoZSBjb2xvdXJlZCBib3JkZXJzIGluaGVyaXQgdGhlIHRleHQgY29sb3VyIG9mIHRoZSBlbGVtZW50ICgyKS5cbi8vL1xuLy8vIEVuc3VyZSB0aGUgYXJyb3cgaXMgcmVuZGVyZWQgY29ycmVjdGx5IGlmIGJyb3dzZXIgY29sb3VycyBhcmUgb3ZlcnJpZGRlbiBieVxuLy8vIHByb3ZpZGluZyBhIGNsaXAgcGF0aCAoMykuIFdpdGhvdXQgdGhpcyB0aGUgdHJhbnNwYXJlbnQgYm9yZGVycyBhcmVcbi8vLyBvdmVycmlkZGVuIHRvIGJlY29tZSB2aXNpYmxlIHdoaWNoIHJlc3VsdHMgaW4gYSBzcXVhcmUuXG4vLy9cbi8vLyBXZSBuZWVkIGJvdGggYmVjYXVzZSBvbGRlciBicm93c2VycyBkbyBub3Qgc3VwcG9ydCBjbGlwLXBhdGguXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGRpcmVjdGlvbiAtIERpcmVjdGlvbiBmb3IgYXJyb3c6IHVwLCByaWdodCwgZG93biwgbGVmdC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgLSBMZW5ndGggb2YgdGhlIHRyaWFuZ2xlICdiYXNlJyBzaWRlXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgW251bGxdIC0gSGVpZ2h0IG9mIHRyaWFuZ2xlLiBPbWl0IGZvciBlcXVpbGF0ZXJhbC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGRpc3BsYXkgW2Jsb2NrXSAtIENTUyBkaXNwbGF5IHByb3BlcnR5IG9mIHRoZSBhcnJvd1xuLy8vXG4vLy8gQGFjY2VzcyBwdWJsaWNcblxuQG1peGluIGdvdnVrLXNoYXBlLWFycm93KCRkaXJlY3Rpb24sICRiYXNlLCAkaGVpZ2h0OiBudWxsLCAkZGlzcGxheTogYmxvY2spIHtcbiAgZGlzcGxheTogJGRpc3BsYXk7XG5cbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcblxuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyAvLyAxXG5cbiAgJHBlcnBlbmRpY3VsYXI6ICRiYXNlIC8gMjtcblxuICBAaWYgKCRoZWlnaHQgPT0gbnVsbCkge1xuICAgICRoZWlnaHQ6IF9nb3Z1ay1lcXVpbGF0ZXJhbC1oZWlnaHQoJGJhc2UpO1xuICB9XG5cbiAgQGlmICRkaXJlY3Rpb24gPT0gXCJ1cFwiIHtcbiAgICAtd2Via2l0LWNsaXAtcGF0aDogcG9seWdvbig1MCUgMCUsIDAlIDEwMCUsIDEwMCUgMTAwJSk7XG4gICAgICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oNTAlIDAlLCAwJSAxMDAlLCAxMDAlIDEwMCUpOyAvLyAzXG5cbiAgICBib3JkZXItd2lkdGg6IDAgJHBlcnBlbmRpY3VsYXIgJGhlaWdodCAkcGVycGVuZGljdWxhcjtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiBpbmhlcml0OyAvLyAyXG4gIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSBcInJpZ2h0XCIge1xuICAgIC13ZWJraXQtY2xpcC1wYXRoOiBwb2x5Z29uKDAlIDAlLCAxMDAlIDUwJSwgMCUgMTAwJSk7XG4gICAgICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCUgMCUsIDEwMCUgNTAlLCAwJSAxMDAlKTsgLy8gM1xuXG4gICAgYm9yZGVyLXdpZHRoOiAkcGVycGVuZGljdWxhciAwICRwZXJwZW5kaWN1bGFyICRoZWlnaHQ7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwiZG93blwiIHtcbiAgICAtd2Via2l0LWNsaXAtcGF0aDogcG9seWdvbigwJSAwJSwgNTAlIDEwMCUsIDEwMCUgMCUpO1xuICAgICAgICAgICAgY2xpcC1wYXRoOiBwb2x5Z29uKDAlIDAlLCA1MCUgMTAwJSwgMTAwJSAwJSk7IC8vIDNcblxuICAgIGJvcmRlci13aWR0aDogJGhlaWdodCAkcGVycGVuZGljdWxhciAwICRwZXJwZW5kaWN1bGFyO1xuICAgIGJvcmRlci10b3AtY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IFwibGVmdFwiIHtcbiAgICAtd2Via2l0LWNsaXAtcGF0aDogcG9seWdvbigwJSA1MCUsIDEwMCUgMTAwJSwgMTAwJSAwJSk7XG4gICAgICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCUgNTAlLCAxMDAlIDEwMCUsIDEwMCUgMCUpOyAvLyAzXG5cbiAgICBib3JkZXItd2lkdGg6ICRwZXJwZW5kaWN1bGFyICRoZWlnaHQgJHBlcnBlbmRpY3VsYXIgMDtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgfSBAZWxzZSB7XG4gICAgQGVycm9yIFwiSW52YWxpZCBhcnJvdyBkaXJlY3Rpb246IGV4cGVjdGVkIGB1cGAsIGByaWdodGAsIGBkb3duYCBvciBgbGVmdGAsIGdvdCBgI3skZGlyZWN0aW9ufWBcIjtcbiAgfVxufVxuIiwiQGltcG9ydCBcIi4uLy4uL2NvcmUvbGlzdHNcIjtcblxuQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvbXBvbmVudC9lcnJvci1zdW1tYXJ5XCIpIHtcbiAgLmdvdnVrLWVycm9yLXN1bW1hcnkge1xuICAgIEBpbmNsdWRlIGdvdnVrLXRleHQtY29sb3VyO1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtcGFkZGluZyg0KTtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig4LCBcImJvdHRvbVwiKTtcblxuICAgIGJvcmRlcjogJGdvdnVrLWJvcmRlci13aWR0aCBzb2xpZCAkZ292dWstZXJyb3ItY29sb3VyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiAkZ292dWstZm9jdXMtd2lkdGggc29saWQgJGdvdnVrLWZvY3VzLWNvbG91cjtcbiAgICB9XG4gIH1cblxuICAuZ292dWstZXJyb3Itc3VtbWFyeV9fdGl0bGUge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDI0LCAkd2VpZ2h0OiBib2xkKTtcblxuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNCwgXCJib3R0b21cIik7XG4gIH1cblxuICAuZ292dWstZXJyb3Itc3VtbWFyeV9fYm9keSB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTkpO1xuXG4gICAgcCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNCwgXCJib3R0b21cIik7XG4gICAgfVxuICB9XG5cbiAgLy8gQ3Jvc3MtY29tcG9uZW50IGNsYXNzIC0gYWRqdXN0cyBzdHlsaW5nIG9mIGxpc3QgY29tcG9uZW50XG4gIC5nb3Z1ay1lcnJvci1zdW1tYXJ5X19saXN0IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuZ292dWstZXJyb3Itc3VtbWFyeV9fbGlzdCBhIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1ib2xkO1xuICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstY29tbW9uO1xuICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstc3R5bGUtZXJyb3I7XG4gIH1cbn1cbiIsIkBpbXBvcnQgXCIuLi9lcnJvci1tZXNzYWdlL2luZGV4XCI7XG5AaW1wb3J0IFwiLi4vaGludC9pbmRleFwiO1xuQGltcG9ydCBcIi4uL2xhYmVsL2luZGV4XCI7XG5cbkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9jb21wb25lbnQvZmlsZS11cGxvYWRcIikge1xuICAkY29tcG9uZW50LXBhZGRpbmc6IGdvdnVrLXNwYWNpbmcoMSk7XG5cbiAgLmdvdnVrLWZpbGUtdXBsb2FkIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAxOSk7XG4gICAgQGluY2x1ZGUgZ292dWstdGV4dC1jb2xvdXI7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtJGNvbXBvbmVudC1wYWRkaW5nO1xuICAgIHBhZGRpbmc6ICRjb21wb25lbnQtcGFkZGluZztcblxuICAgIC8vIFRoZSBkZWZhdWx0IGZpbGUgdXBsb2FkIGJ1dHRvbiBpbiBTYWZhcmkgZG9lcyBub3RcbiAgICAvLyBzdXBwb3J0IHNldHRpbmcgYSBjdXN0b20gZm9udC1zaXplLiBTZXQgYC13ZWJraXQtYXBwZWFyYW5jZWBcbiAgICAvLyB0byBgYnV0dG9uYCB0byBkcm9wIG91dCBvZiB0aGUgbmF0aXZlIGFwcGVhcmFuY2Ugc28gdGhlXG4gICAgLy8gZm9udC1zaXplIGlzIHNldCB0byAxOXB4XG4gICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIyNDc0NlxuICAgICY6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICBmb250OiBpbmhlcml0O1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogJGdvdnVrLWZvY3VzLXdpZHRoIHNvbGlkICRnb3Z1ay1mb2N1cy1jb2xvdXI7XG4gICAgICAvLyBVc2UgYGJveC1zaGFkb3dgIHRvIGFkZCBib3JkZXIgaW5zdGVhZCBvZiBjaGFuZ2luZyBgYm9yZGVyLXdpZHRoYFxuICAgICAgLy8gKHdoaWNoIGNoYW5nZXMgZWxlbWVudCBzaXplKSBhbmQgc2luY2UgYG91dGxpbmVgIGlzIGFscmVhZHkgdXNlZCBmb3IgdGhlXG4gICAgICAvLyB5ZWxsb3cgZm9jdXMgc3RhdGUuXG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA0cHggJGdvdnVrLWlucHV0LWJvcmRlci1jb2xvdXI7XG5cbiAgICAgIEBpbmNsdWRlIGdvdnVrLWlmLWllOCB7XG4gICAgICAgIC8vIElFOCBkb2Vzbid0IHN1cHBvcnQgYGJveC1zaGFkb3dgIHNvIGFkZCBhbiBhY3R1YWwgYm9yZGVyXG4gICAgICAgIGJvcmRlcjogNHB4IHNvbGlkICRnb3Z1ay1pbnB1dC1ib3JkZXItY29sb3VyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldCBcImZvY3VzLXdpdGhpblwiIHRvIGZpeCBodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDMwMTk2XG4gICAgLy8gc28gdGhhdCBjb21wb25lbnQgcmVjZWl2ZXMgZm9jdXMgaW4gRmlyZWZveC5cbiAgICAvLyBUaGlzIGNhbid0IGJlIHNldCB0b2dldGhlciB3aXRoIGA6Zm9jdXNgIGFzIGFsbCB2ZXJzaW9ucyBvZiBJRSBmYWlsXG4gICAgLy8gdG8gcmVjb2duaXNlIGBmb2N1cy13aXRoaW5gIGFuZCBkb24ndCBzZXQgYW55IHN0eWxlcyBmcm9tIHRoZSBibG9ja1xuICAgIC8vIHdoZW4gaXQncyBhIHNlbGVjdG9yLlxuICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgIG91dGxpbmU6ICRnb3Z1ay1mb2N1cy13aWR0aCBzb2xpZCAkZ292dWstZm9jdXMtY29sb3VyO1xuXG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA0cHggJGdvdnVrLWlucHV0LWJvcmRlci1jb2xvdXI7XG4gICAgfVxuICB9XG59XG4iLCJAaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvY29tcG9uZW50L2Zvb3RlclwiKSB7XG5cbiAgJGdvdnVrLWZvb3Rlci1iYWNrZ3JvdW5kOiAkZ292dWstY2FudmFzLWJhY2tncm91bmQtY29sb3VyO1xuICAkZ292dWstZm9vdGVyLWJvcmRlcjogJGdvdnVrLWJvcmRlci1jb2xvdXI7XG4gIC8vIFRoaXMgdmFyaWFibGUgY2FuIGJlIHJlbW92ZWQgZW50aXJlbHkgb25jZSB0aGUgbGVnYWN5IHBhbGV0dGUgZ29lcyBhd2F5LFxuICAvLyBhcyBpdCdsbCBqdXN0IGJlIHRoZSBzYW1lIGFzICRnb3Z1ay1mb290ZXItYm9yZGVyLlxuICAkZ292dWstZm9vdGVyLWJvcmRlci10b3A6ICRnb3Z1ay1ib3JkZXItY29sb3VyO1xuICAkZ292dWstZm9vdGVyLXRleHQ6ICRnb3Z1ay10ZXh0LWNvbG91cjtcbiAgJGdvdnVrLWZvb3Rlci1saW5rLWhvdmVyLWNvbG91cjogbnVsbDsgLy8gT25seSB1c2VkIHdpdGggdGhlIGxlZ2FjeSBwYWxldHRlXG5cbiAgQGlmICgkZ292dWstdXNlLWxlZ2FjeS1wYWxldHRlKSB7XG4gICAgJGdvdnVrLWZvb3Rlci1ib3JkZXItdG9wOiAjYTFhY2IyO1xuICAgICRnb3Z1ay1mb290ZXItYm9yZGVyOiBnb3Z1ay1jb2xvdXIoXCJncmV5LTJcIik7XG4gICAgJGdvdnVrLWZvb3Rlci10ZXh0OiAjNDU0YTRjO1xuICAgICRnb3Z1ay1mb290ZXItbGluay1ob3Zlci1jb2xvdXI6ICMxNzE4MTk7XG4gIH1cblxuICAvLyBCYXNlZCBvbiB0aGUgZ292dWstY3Jlc3QtMngucG5nIGltYWdlIGRpbWVuc2lvbnMuXG4gICRnb3Z1ay1mb290ZXItY3Jlc3QtaW1hZ2Utd2lkdGgtMng6IDI1MHB4O1xuICAkZ292dWstZm9vdGVyLWNyZXN0LWltYWdlLWhlaWdodC0yeDogMjA0cHg7XG4gIC8vIEhhbGYgdGhlIDJ4IGltYWdlIHNvIHRoYXQgaXQgZml0cyB0aGUgcmVndWxhciAxeCBzaXplLlxuICAkZ292dWstZm9vdGVyLWNyZXN0LWltYWdlLXdpZHRoOiAoJGdvdnVrLWZvb3Rlci1jcmVzdC1pbWFnZS13aWR0aC0yeCAvIDIpO1xuICAkZ292dWstZm9vdGVyLWNyZXN0LWltYWdlLWhlaWdodDogKCRnb3Z1ay1mb290ZXItY3Jlc3QtaW1hZ2UtaGVpZ2h0LTJ4IC8gMik7XG5cbiAgLmdvdnVrLWZvb3RlciB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTYpO1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtcGFkZGluZyg3LCBcInRvcFwiKTtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLXBhZGRpbmcoNSwgXCJib3R0b21cIik7XG5cbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGdvdnVrLWZvb3Rlci1ib3JkZXItdG9wO1xuICAgIGNvbG9yOiAkZ292dWstZm9vdGVyLXRleHQ7XG4gICAgYmFja2dyb3VuZDogJGdvdnVrLWZvb3Rlci1iYWNrZ3JvdW5kO1xuICB9XG5cbiAgLmdvdnVrLWZvb3Rlcl9fbGluayB7XG4gICAgQGluY2x1ZGUgZ292dWstbGluay1jb21tb247XG5cbiAgICBAaWYgKCRnb3Z1ay11c2UtbGVnYWN5LXBhbGV0dGUpIHtcbiAgICAgICY6bGluayxcbiAgICAgICY6dmlzaXRlZCB7XG4gICAgICAgIGNvbG9yOiAkZ292dWstZm9vdGVyLXRleHQ7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkZ292dWstZm9vdGVyLWxpbmstaG92ZXItY29sb3VyO1xuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgZ292dWstbGluay1zdHlsZS10ZXh0O1xuICAgIH1cblxuICAgIC8vIGFscGhhZ292L2dvdnVrX3RlbXBsYXRlIGluY2x1ZGVzIGEgc3BlY2lmaWMgYTpsaW5rOmZvY3VzIHNlbGVjdG9yXG4gICAgLy8gZGVzaWduZWQgdG8gbWFrZSB1bnZpc2l0ZWQgbGlua3MgYSBzbGlnaHRseSBkYXJrZXIgYmx1ZSB3aGVuIGZvY3Vzc2VkLCBzb1xuICAgIC8vIHdlIG5lZWQgdG8gb3ZlcnJpZGUgdGhlIHRleHQgY29sb3VyIGZvciB0aGF0IGNvbWJpbmF0aW9uIG9mIHNlbGVjdG9ycy5cbiAgICBAaW5jbHVkZSBnb3Z1ay1jb21wYXRpYmlsaXR5KGdvdnVrX3RlbXBsYXRlKSB7XG4gICAgICAmOmxpbms6Zm9jdXMge1xuICAgICAgICBAaW5jbHVkZSBnb3Z1ay10ZXh0LWNvbG91cjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZ292dWstZm9vdGVyX19zZWN0aW9uLWJyZWFrIHtcbiAgICBtYXJnaW46IDA7IC8vIFJlc2V0IGA8aHI+YCBkZWZhdWx0IG1hcmdpbnNcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig4LCBcImJvdHRvbVwiKTtcbiAgICBib3JkZXI6IDA7IC8vIFJlc2V0IGA8aHI+YCBkZWZhdWx0IGJvcmRlcnNcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdvdnVrLWZvb3Rlci1ib3JkZXI7XG4gIH1cblxuICAuZ292dWstZm9vdGVyX19tZXRhIHtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgZGlzcGxheTogZmxleDsgLy8gU3VwcG9ydDogRmxleGJveFxuICAgIG1hcmdpbi1yaWdodDogLSRnb3Z1ay1ndXR0ZXItaGFsZjtcbiAgICBtYXJnaW4tbGVmdDogLSRnb3Z1ay1ndXR0ZXItaGFsZjtcbiAgICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDsgLy8gU3VwcG9ydDogRmxleGJveFxuICAgIC13ZWJraXQtYm94LWFsaWduOiBlbmQ7XG4gICAgLXdlYmtpdC1hbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBlbmQ7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IC8vIFN1cHBvcnQ6IEZsZXhib3hcbiAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7XG4gICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IC8vIFN1cHBvcnQ6IEZsZXhib3hcbiAgfVxuXG4gIC5nb3Z1ay1mb290ZXJfX21ldGEtaXRlbSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZ292dWstZ3V0dGVyLWhhbGY7XG4gICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZyg1KTtcbiAgICBtYXJnaW4tbGVmdDogJGdvdnVrLWd1dHRlci1oYWxmO1xuICB9XG5cbiAgLmdvdnVrLWZvb3Rlcl9fbWV0YS1pdGVtLS1ncm93IHtcbiAgICAtd2Via2l0LWJveC1mbGV4OiAxO1xuICAgIC13ZWJraXQtZmxleDogMTtcbiAgICAgICAgLW1zLWZsZXg6IDE7XG4gICAgICAgICAgICBmbGV4OiAxOyAvLyBTdXBwb3J0OiBGbGV4Ym94XG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkgKCR1bnRpbDogdGFibGV0KSB7XG4gICAgICAtd2Via2l0LWZsZXgtYmFzaXM6IDMyMHB4O1xuICAgICAgICAgIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplOiAzMjBweDtcbiAgICAgICAgICAgICAgZmxleC1iYXNpczogMzIwcHg7IC8vIFN1cHBvcnQ6IEZsZXhib3hcbiAgICB9XG4gIH1cblxuICAuZ292dWstZm9vdGVyX19saWNlbmNlLWxvZ28ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IGdvdnVrLXNwYWNpbmcoMik7XG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkgKCR1bnRpbDogZGVza3RvcCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygzKTtcbiAgICB9XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAvLyBXb3JrIGFyb3VuZCBTVkdzIG5vdCBpbmhlcml0aW5nIGNvbG9yIGZyb20gcGFyZW50IGluIGZvcmNlZCBjb2xvciBtb2RlXG4gICAgLy8gKGh0dHBzOi8vZ2l0aHViLmNvbS93M2MvY3Nzd2ctZHJhZnRzL2lzc3Vlcy82MzEwKVxuICAgIGZvcmNlZC1jb2xvci1hZGp1c3Q6IGF1dG87XG4gIH1cblxuICAuZ292dWstZm9vdGVyX19saWNlbmNlLWRlc2NyaXB0aW9uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cblxuICAuZ292dWstZm9vdGVyX19jb3B5cmlnaHQtbG9nbyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1pbi13aWR0aDogJGdvdnVrLWZvb3Rlci1jcmVzdC1pbWFnZS13aWR0aDtcbiAgICBwYWRkaW5nLXRvcDogKCRnb3Z1ay1mb290ZXItY3Jlc3QtaW1hZ2UtaGVpZ2h0ICsgZ292dWstc3BhY2luZygyKSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogZ292dWstaW1hZ2UtdXJsKFwiZ292dWstY3Jlc3QucG5nXCIpO1xuICAgIEBpbmNsdWRlIGdvdnVrLWRldmljZS1waXhlbC1yYXRpbyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBnb3Z1ay1pbWFnZS11cmwoXCJnb3Z1ay1jcmVzdC0yeC5wbmdcIik7XG4gICAgfVxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDAlO1xuICAgIGJhY2tncm91bmQtc2l6ZTogJGdvdnVrLWZvb3Rlci1jcmVzdC1pbWFnZS13aWR0aCAkZ292dWstZm9vdGVyLWNyZXN0LWltYWdlLWhlaWdodDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxuXG4gIC5nb3Z1ay1mb290ZXJfX2lubGluZS1saXN0IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMyk7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC5nb3Z1ay1mb290ZXJfX21ldGEtY3VzdG9tIHtcbiAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDQpO1xuICB9XG5cbiAgLmdvdnVrLWZvb3Rlcl9faW5saW5lLWxpc3QtaXRlbSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogZ292dWstc3BhY2luZygzKTtcbiAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDEpO1xuICB9XG5cbiAgLmdvdnVrLWZvb3Rlcl9faGVhZGluZyB7XG4gICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNywgXCJib3R0b21cIik7XG4gICAgcGFkZGluZy1ib3R0b206IGdvdnVrLXNwYWNpbmcoNCk7XG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkgKCR1bnRpbDogdGFibGV0KSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogZ292dWstc3BhY2luZygyKTtcbiAgICB9XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRnb3Z1ay1mb290ZXItYm9yZGVyO1xuICB9XG5cbiAgLmdvdnVrLWZvb3Rlcl9fbmF2aWdhdGlvbiB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IGZsZXg7IC8vIFN1cHBvcnQ6IEZsZXhib3hcbiAgICBtYXJnaW4tcmlnaHQ6IC0kZ292dWstZ3V0dGVyLWhhbGY7XG4gICAgbWFyZ2luLWxlZnQ6IC0kZ292dWstZ3V0dGVyLWhhbGY7XG4gICAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIC1tcy1mbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7IC8vIFN1cHBvcnQ6IEZsZXhib3hcbiAgfVxuXG4gIC5nb3Z1ay1mb290ZXJfX3NlY3Rpb24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6ICRnb3Z1ay1ndXR0ZXItaGFsZjtcbiAgICBtYXJnaW4tYm90dG9tOiAkZ292dWstZ3V0dGVyO1xuICAgIG1hcmdpbi1sZWZ0OiAkZ292dWstZ3V0dGVyLWhhbGY7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAvLyBFbnN1cmUgY29sdW1ucyB0YWtlIHVwIGVxdWFsIHdpZHRoICh0eXBpY2FsbHkgb25lLWhhbGY6b25lLWhhbGYpXG4gICAgLXdlYmtpdC1ib3gtZmxleDogMTtcbiAgICAtd2Via2l0LWZsZXgtZ3JvdzogMTtcbiAgICAgICAgLW1zLWZsZXgtcG9zaXRpdmU6IDE7XG4gICAgICAgICAgICBmbGV4LWdyb3c6IDE7IC8vIFN1cHBvcnQ6IEZsZXhib3hcbiAgICAtd2Via2l0LWZsZXgtc2hyaW5rOiAxO1xuICAgICAgICAtbXMtZmxleC1uZWdhdGl2ZTogMTtcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAxOyAvLyBTdXBwb3J0OiBGbGV4Ym94XG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkgKCR1bnRpbDogZGVza3RvcCkge1xuICAgICAgLy8gTWFrZSBzdXJlIGNvbHVtbnMgZG8gbm90IGRyb3AgYmVsb3cgMjAwcHggaW4gd2lkdGhcbiAgICAgIC8vIFdpbGwgdHlwaWNhbGx5IHJlc3VsdCBpbiB3cmFwcGluZywgYW5kIGVuZCB1cCBpbiBhIHNpbmdsZSBjb2x1bW4gb24gc21hbGxlciBzY3JlZW5zLlxuICAgICAgLXdlYmtpdC1mbGV4LWJhc2lzOiAyMDBweDtcbiAgICAgICAgICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogMjAwcHg7XG4gICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDIwMHB4OyAvLyBTdXBwb3J0OiBGbGV4Ym94XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgdGhlcmUgYXJlIG9ubHkgdHdvIHNlY3Rpb25zLCBzZXQgdGhlIGxheW91dCB0byBiZSB0d28tdGhpcmQ6b25lLXRoaXJkIG9uIGRlc2t0b3BcbiAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkgKCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgLy8gV2UgbWF0Y2ggdGhlIGZpcnN0IHNlY3Rpb24gd2l0aCBgOmZpcnN0LWNoaWxkYC5cbiAgICAvLyBUbyBlbnN1cmUgdGhlIHNlY3Rpb24gaXMgb25lIG9mIHR3bywgd2UgY2FuIGNvdW50IGJhY2t3YXJkcyB1c2luZyBgOm50aC1sYXN0LWNoaWxkKDIpYC5cbiAgICAuZ292dWstZm9vdGVyX19zZWN0aW9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpIHtcbiAgICAgIC13ZWJraXQtYm94LWZsZXg6IDI7XG4gICAgICAtd2Via2l0LWZsZXgtZ3JvdzogMjtcbiAgICAgICAgICAtbXMtZmxleC1wb3NpdGl2ZTogMjtcbiAgICAgICAgICAgICAgZmxleC1ncm93OiAyOyAvLyBTdXBwb3J0OiBGbGV4Ym94XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWZvb3Rlcl9fbGlzdCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAtd2Via2l0LWNvbHVtbi1nYXA6ICRnb3Z1ay1ndXR0ZXI7XG4gICAgICAgICAgICBjb2x1bW4tZ2FwOiAkZ292dWstZ3V0dGVyOyAvLyBTdXBwb3J0OiBDb2x1bW5zXG5cbiAgICAvLyBEaXNhYmxlIHRoaWNrZXIgdW5kZXJsaW5lcyBvbiBob3ZlciBiZWNhdXNlIG9mIGEgYnVnIGluIENocm9taXVtXG4gICAgLy8gYWZmZWN0aW5nIGxpbmtzIHdpdGhpbiBjb2x1bW5zXG4gICAgLy8gaHR0cHM6Ly9idWdzLmNocm9taXVtLm9yZy9wL2Nocm9taXVtL2lzc3Vlcy9kZXRhaWw/aWQ9MTE5MDk4N1xuICAgIC5nb3Z1ay1mb290ZXJfX2xpbms6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogYXV0bztcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSAoJGZyb206IGRlc2t0b3ApIHtcbiAgICAuZ292dWstZm9vdGVyX19saXN0LS1jb2x1bW5zLTIge1xuICAgICAgLXdlYmtpdC1jb2x1bW4tY291bnQ6IDI7XG4gICAgICAgICAgICAgIGNvbHVtbi1jb3VudDogMjsgLy8gU3VwcG9ydDogQ29sdW1uc1xuICAgIH1cblxuICAgIC5nb3Z1ay1mb290ZXJfX2xpc3QtLWNvbHVtbnMtMyB7XG4gICAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogMztcbiAgICAgICAgICAgICAgY29sdW1uLWNvdW50OiAzOyAvLyBTdXBwb3J0OiBDb2x1bW5zXG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWZvb3Rlcl9fbGlzdC1pdGVtIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig0LCBcImJvdHRvbVwiKTtcbiAgfVxuXG4gIC5nb3Z1ay1mb290ZXJfX2xpc3QtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4iLCIvLy8vXG4vLy8gQGdyb3VwIGhlbHBlcnNcbi8vLy9cblxuLy8vIE1lZGlhIHF1ZXJ5IGZvciByZXRpbmEgaW1hZ2VzIChkZXZpY2UtcGl4ZWwtcmF0aW8pXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHJhdGlvIFsyXSAtIERldmljZSBwaXhlbCByYXRpb1xuLy8vIEBjb250ZW50IFBhc3NlZCBjb250ZW50IHdpbGwgYmUgb3V0cHV0dGVkIHdpdGhpbiB0aGUgbWVkaWEgcXVlcnlcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBQcm92aWRpbmcgYSBAMnggaW1hZ2UgZm9yIHNjcmVlbnMgdGhhdCBzdXBwb3J0IGl0XG4vLy8gICBiYWNrZ3JvdW5kLWltYWdlOiBnb3Z1ay1pbWFnZS11cmwoXCJteS1pbWFnZS5wbmdcIik7XG4vLy9cbi8vLyAgIEBpbmNsdWRlIGdvdnVrLWRldmljZS1waXhlbC1yYXRpbyB7XG4vLy8gICAgIGJhY2tncm91bmQtaW1hZ2U6IGdvdnVrLWltYWdlLXVybChcIm15LWltYWdlLTJ4LnBuZ1wiKTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2luZyBhIGN1c3RvbSByYXRpb1xuLy8vICAgYmFja2dyb3VuZC1pbWFnZTogZ292dWstaW1hZ2UtdXJsKFwibXktaW1hZ2UucG5nXCIpO1xuLy8vXG4vLy8gICBAaW5jbHVkZSBnb3Z1ay1kZXZpY2UtcGl4ZWwtcmF0aW8ge1xuLy8vICAgICBiYWNrZ3JvdW5kLWltYWdlOiBnb3Z1ay1pbWFnZS11cmwoXCJteS1pbWFnZS0yeC5wbmdcIik7XG4vLy8gICB9XG4vLy9cbi8vLyAgIEBpbmNsdWRlIGdvdnVrLWRldmljZS1waXhlbC1yYXRpbygzKSB7XG4vLy8gICAgIGJhY2tncm91bmQtaW1hZ2U6IGdvdnVrLWltYWdlLXVybChcIm15LWltYWdlLTN4LnBuZ1wiKTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay1kZXZpY2UtcGl4ZWwtcmF0aW8oJHJhdGlvOiAyKSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlIGluZGVudGF0aW9uXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogJHJhdGlvKSxcbiAgICBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAjeygkcmF0aW8gKiA5Nil9ZHBpKSxcbiAgICBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAjeyRyYXRpb31kcHB4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG59XG4iLCJAaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvY29tcG9uZW50L2hlYWRlclwiKSB7XG5cbiAgJGdvdnVrLWhlYWRlci1iYWNrZ3JvdW5kOiBnb3Z1ay1jb2xvdXIoXCJibGFja1wiKTtcbiAgJGdvdnVrLWhlYWRlci1ib3JkZXItY29sb3I6ICRnb3Z1ay1icmFuZC1jb2xvdXI7XG4gICRnb3Z1ay1oZWFkZXItYm9yZGVyLXdpZHRoOiBnb3Z1ay1zcGFjaW5nKDIpO1xuICAkZ292dWstaGVhZGVyLXRleHQ6IGdvdnVrLWNvbG91cihcIndoaXRlXCIpO1xuICAkZ292dWstaGVhZGVyLWxpbmstYWN0aXZlOiAjMWQ4ZmViO1xuICAkZ292dWstaGVhZGVyLW5hdi1pdGVtLWJvcmRlci1jb2xvcjogIzJlMzEzMztcbiAgJGdvdnVrLWhlYWRlci1saW5rLXVuZGVybGluZS10aGlja25lc3M6IDNweDtcblxuICAuZ292dWstaGVhZGVyIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAxNik7XG5cbiAgICBib3JkZXItYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDIpIHNvbGlkIGdvdnVrLWNvbG91cihcIndoaXRlXCIpO1xuICAgIGNvbG9yOiAkZ292dWstaGVhZGVyLXRleHQ7XG4gICAgYmFja2dyb3VuZDogJGdvdnVrLWhlYWRlci1iYWNrZ3JvdW5kO1xuICB9XG5cbiAgLmdvdnVrLWhlYWRlcl9fY29udGFpbmVyLS1mdWxsLXdpZHRoIHtcbiAgICBwYWRkaW5nOiAwIGdvdnVrLXNwYWNpbmcoMyk7XG4gICAgYm9yZGVyLWNvbG9yOiAkZ292dWstaGVhZGVyLWJvcmRlci1jb2xvcjtcblxuICAgIC5nb3Z1ay1oZWFkZXJfX21lbnUtYnV0dG9uIHtcbiAgICAgIHJpZ2h0OiBnb3Z1ay1zcGFjaW5nKDMpO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1oZWFkZXJfX2NvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgZ292dWstY2xlYXJmaXg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IC0kZ292dWstaGVhZGVyLWJvcmRlci13aWR0aDtcbiAgICBwYWRkaW5nLXRvcDogZ292dWstc3BhY2luZygyKTtcbiAgICBib3JkZXItYm90dG9tOiAkZ292dWstaGVhZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkZ292dWstaGVhZGVyLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5nb3Z1ay1oZWFkZXJfX2xvZ290eXBlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAvLyBBZGQgYSBnYXAgYWZ0ZXIgdGhlIGxvZ28gaW4gY2FzZSBpdCdzIGZvbGxvd2VkIGJ5IGEgcHJvZHVjdCBuYW1lLiBUaGlzXG4gICAgLy8gZ2V0cyByZW1vdmVkIGxhdGVyIGlmIHRoZSBsb2dvdHlwZSBpcyBhIDpsYXN0LWNoaWxkLlxuICAgIG1hcmdpbi1yaWdodDogZ292dWstc3BhY2luZygxKTtcblxuICAgIC8vIFByZXZlbnQgcmVhZGFiaWxpdHkgYmFja3BsYXRlIGZyb20gb2JzY3VyaW5nIHVuZGVybGluZSBpbiBXaW5kb3dzIEhpZ2hcbiAgICAvLyBDb250cmFzdCBNb2RlXG4gICAgQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgICAgIGZvcmNlZC1jb2xvci1hZGp1c3Q6IG5vbmU7XG4gICAgICBjb2xvcjogbGlua3RleHQ7XG4gICAgfVxuXG4gICAgLy8gUmVtb3ZlIHRoZSBnYXAgYWZ0ZXIgdGhlIGxvZ28gaWYgdGhlcmUncyBubyBwcm9kdWN0IG5hbWUgdG8ga2VlcCBob3ZlclxuICAgIC8vIGFuZCBmb2N1cyBzdGF0ZXMgbmVhdFxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWhlYWRlcl9fbG9nb3R5cGUtY3Jvd24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0xcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcHg7XG4gICAgZmlsbDogY3VycmVudENvbG9yO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cblxuICAuZ292dWstaGVhZGVyX19sb2dvdHlwZS1jcm93bi1mYWxsYmFjay1pbWFnZSB7XG4gICAgd2lkdGg6IDM2cHg7XG4gICAgaGVpZ2h0OiAzMnB4O1xuICAgIGJvcmRlcjogMDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICB9XG5cbiAgLmdvdnVrLWhlYWRlcl9fcHJvZHVjdC1uYW1lIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAyNCwgJGxpbmUtaGVpZ2h0OiAxKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtdGFibGU7XG4gIH1cblxuICAuZ292dWstaGVhZGVyX19saW5rIHtcbiAgICAvLyBBdm9pZCB1c2luZyB0aGUgYGdvdnVrLWxpbmstY29tbW9uYCBtaXhpbiBiZWNhdXNlIHRoZSBsaW5rcyBpbiB0aGUgaGVhZGVyXG4gICAgLy8gZ2V0IGEgc3BlY2lhbCB0cmVhdG1lbnQsIGJlY2F1c2U6XG4gICAgLy9cbiAgICAvLyAtIHVuZGVybGluZXMgYXJlIG9ubHkgdmlzaWJsZSBvbiBob3ZlclxuICAgIC8vIC0gYWxsIGxpbmtzIGdldCBhIDNweCB1bmRlcmxpbmUgcmVnYXJkbGVzcyBvZiB0ZXh0IHNpemUsIGFzIHRoZXJlIGFyZVxuICAgIC8vICAgbXVsdGlwbGUgZ3JvdXBlZCBlbGVtZW50cyBjbG9zZSB0byBvbmUgYW5vdGhlciBhbmQgaGF2aW5nIHNsaWdodGx5XG4gICAgLy8gICBkaWZmZXJlbnQgdW5kZXJsaW5lIHdpZHRocyBsb29rcyB1bmJhbGFuY2VkXG4gICAgQGluY2x1ZGUgZ292dWstdHlwb2dyYXBoeS1jb21tb247XG4gICAgQGluY2x1ZGUgZ292dWstbGluay1zdHlsZS1pbnZlcnNlO1xuXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6ICRnb3Z1ay1oZWFkZXItbGluay11bmRlcmxpbmUtdGhpY2tuZXNzO1xuXG4gICAgICBAaWYgKCRnb3Z1ay1saW5rLXVuZGVybGluZS1vZmZzZXQpIHtcbiAgICAgICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAkZ292dWstbGluay11bmRlcmxpbmUtb2Zmc2V0O1xuICAgICAgfVxuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZ292dWstZm9jdXNlZC10ZXh0O1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1oZWFkZXJfX2xpbmstLWhvbWVwYWdlIHtcbiAgICAvLyBGb250IHNpemUgbmVlZHMgdG8gYmUgc2V0IG9uIHRoZSBsaW5rIHNvIHRoYXQgdGhlIGJveCBzaXppbmcgaXMgY29ycmVjdFxuICAgIC8vIGluIEZpcmVmb3hcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiBmYWxzZSwgJHdlaWdodDogYm9sZCk7XG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiBnb3Z1ay1zcGFjaW5nKDIpO1xuICAgIGZvbnQtc2l6ZTogMzBweDsgLy8gV2UgZG9uJ3QgaGF2ZSBhIG1peGluIHRoYXQgcHJvZHVjZXMgMzBweCBmb250IHNpemVcbiAgICBsaW5lLWhlaWdodDogMTtcblxuICAgICY6bGluayxcbiAgICAmOnZpc2l0ZWQge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjphY3RpdmUge1xuICAgICAgLy8gTmVnYXRlIHRoZSBhZGRlZCBib3JkZXJcbiAgICAgIG1hcmdpbi1ib3R0b206ICRnb3Z1ay1oZWFkZXItbGluay11bmRlcmxpbmUtdGhpY2tuZXNzICogLTE7XG4gICAgICAvLyBPbWl0dGluZyBjb2xvdXIgd2lsbCB1c2UgZGVmYXVsdCB2YWx1ZSBvZiBjdXJyZW50Q29sb3Ig4oCTIGlmIHdlXG4gICAgICAvLyBzcGVjaWZpZWQgY3VycmVudENvbG9yIGV4cGxpY2l0bHkgSUU4IHdvdWxkIGlnbm9yZSB0aGlzIHJ1bGUuXG4gICAgICBib3JkZXItYm90dG9tOiAkZ292dWstaGVhZGVyLWxpbmstdW5kZXJsaW5lLXRoaWNrbmVzcyBzb2xpZDtcbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgYW55IGJvcmRlcnMgdGhhdCBzaG93IHdoZW4gZm9jdXNlZCBhbmQgaG92ZXJlZC5cbiAgICAmOmZvY3VzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1oZWFkZXJfX2xpbmstLXNlcnZpY2UtbmFtZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMik7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMjQsICR3ZWlnaHQ6IGJvbGQpO1xuICB9XG5cbiAgLmdvdnVrLWhlYWRlcl9fbG9nbyxcbiAgLmdvdnVrLWhlYWRlcl9fY29udGVudCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gIC5nb3Z1ay1oZWFkZXJfX2xvZ28ge1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDIsIFwiYm90dG9tXCIpO1xuICAgIHBhZGRpbmctcmlnaHQ6IGdvdnVrLXNwYWNpbmcoOCk7XG5cbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSAoJGZyb206IGRlc2t0b3ApIHtcbiAgICAgIHdpZHRoOiAzMy4zMyU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkZ292dWstZ3V0dGVyLWhhbGY7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWhlYWRlcl9fY29udGVudCB7XG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkgKCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgICB3aWR0aDogNjYuNjYlO1xuICAgICAgcGFkZGluZy1sZWZ0OiAkZ292dWstZ3V0dGVyLWhhbGY7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG4gIH1cblxuICAuZ292dWstaGVhZGVyX19tZW51LWJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTYpO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogZ292dWstc3BhY2luZyg0KTtcbiAgICByaWdodDogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgY29sb3I6IGdvdnVrLWNvbG91cihcIndoaXRlXCIpO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbjogc29saWQgdW5kZXJsaW5lICRnb3Z1ay1oZWFkZXItbGluay11bmRlcmxpbmUtdGhpY2tuZXNzO1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHNvbGlkIHVuZGVybGluZSAkZ292dWstaGVhZGVyLWxpbmstdW5kZXJsaW5lLXRoaWNrbmVzcztcblxuICAgICAgQGlmICgkZ292dWstbGluay11bmRlcmxpbmUtb2Zmc2V0KSB7XG4gICAgICAgIHRleHQtdW5kZXJsaW5lLW9mZnNldDogJGdvdnVrLWxpbmstdW5kZXJsaW5lLW9mZnNldDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGdvdnVrLWZvY3VzZWQtdGV4dDtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGdvdnVrLXNoYXBlLWFycm93KCRkaXJlY3Rpb246IGRvd24sICRiYXNlOiAxMHB4LCAkZGlzcGxheTogaW5saW5lLWJsb2NrKTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBtYXJnaW4tbGVmdDogZ292dWstc3BhY2luZygxKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSAoJGZyb206IHRhYmxldCkge1xuICAgICAgdG9wOiBnb3Z1ay1zcGFjaW5nKDMpO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1oZWFkZXJfX21lbnUtYnV0dG9uLS1vcGVuIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGdvdnVrLXNoYXBlLWFycm93KCRkaXJlY3Rpb246IHVwLCAkYmFzZTogMTBweCwgJGRpc3BsYXk6IGlubGluZS1ibG9jayk7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLWhlYWRlcl9fbmF2aWdhdGlvbiB7XG4gICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oMiwgXCJib3R0b21cIik7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIC5qcy1lbmFibGVkIHtcbiAgICAuZ292dWstaGVhZGVyX19tZW51LWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5ICgkZnJvbTogZGVza3RvcCkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5nb3Z1ay1oZWFkZXJfX25hdmlnYXRpb24ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5ICgkZnJvbTogZGVza3RvcCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZ292dWstaGVhZGVyX19uYXZpZ2F0aW9uLS1vcGVuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1oZWFkZXJfX25hdmlnYXRpb24tLWVuZCB7XG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkgKCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiBnb3Z1ay1zcGFjaW5nKDEpIDA7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cblxuICAuZ292dWstaGVhZGVyX19uYXZpZ2F0aW9uLS1uby1zZXJ2aWNlLW5hbWUge1xuICAgIHBhZGRpbmctdG9wOiBnb3Z1ay1zcGFjaW5nKDcpO1xuICB9XG5cbiAgLmdvdnVrLWhlYWRlcl9fbmF2aWdhdGlvbi1pdGVtIHtcbiAgICBwYWRkaW5nOiBnb3Z1ay1zcGFjaW5nKDIpIDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRnb3Z1ay1oZWFkZXItbmF2LWl0ZW0tYm9yZGVyLWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkgKCRmcm9tOiBkZXNrdG9wKSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGdvdnVrLXNwYWNpbmcoMyk7XG4gICAgICBwYWRkaW5nOiBnb3Z1ay1zcGFjaW5nKDEpIDA7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAxNiwgJHdlaWdodDogYm9sZCk7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1oZWFkZXJfX25hdmlnYXRpb24taXRlbS0tYWN0aXZlIHtcbiAgICBhIHtcbiAgICAgICY6bGluayxcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOnZpc2l0ZWQge1xuICAgICAgICBjb2xvcjogJGdvdnVrLWhlYWRlci1saW5rLWFjdGl2ZTtcbiAgICAgIH1cblxuICAgICAgLy8gV2hlbiBmb2N1c3NlZCwgdGhlIHRleHQgY29sb3VyIG5lZWRzIHRvIGJlIGRhcmtlciB0byBlbnN1cmUgdGhhdCBjb2xvdXJcbiAgICAgIC8vIGNvbnRyYXN0IGlzIHN0aWxsIGFjY2VwdGFibGVcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJGdvdnVrLWZvY3VzLXRleHQtY29sb3VyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1oZWFkZXJfX25hdmlnYXRpb24taXRlbTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cblxuICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkbWVkaWEtdHlwZTogcHJpbnQpIHtcbiAgICAuZ292dWstaGVhZGVyIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgICBjb2xvcjogZ292dWstY29sb3VyKFwiYmxhY2tcIik7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAvLyBIaWRlIHRoZSBpbnZlcnRlZCBjcm93biB3aGVuIHByaW50aW5nIGluIGJyb3dzZXJzIHRoYXQgZG9uJ3Qgc3VwcG9ydCBTVkcuXG4gICAgLmdvdnVrLWhlYWRlcl9fbG9nb3R5cGUtY3Jvd24tZmFsbGJhY2staW1hZ2Uge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuZ292dWstaGVhZGVyX19saW5rIHtcbiAgICAgICY6bGluayxcbiAgICAgICY6dmlzaXRlZCB7XG4gICAgICAgIGNvbG9yOiBnb3Z1ay1jb2xvdXIoXCJibGFja1wiKTtcbiAgICAgIH1cblxuICAgICAgLy8gRG8gbm90IGFwcGVuZCBsaW5rIGhyZWYgdG8gR09WLlVLIGxpbmsgd2hlbiBwcmludGluZyAoZS5nLiAnKC8pJylcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkZ292dWstdXNlLWxlZ2FjeS1mb250IHtcbiAgICAvLyBCZWdpbiBhZGp1c3RtZW50cyBmb3IgZm9udCBiYXNlbGluZSBvZmZzZXRcbiAgICAvLyBUaGVzZSBzaG91bGQgYmUgcmVtb3ZlZCB3aGVuIHRoZSBmb250IGlzIHVwZGF0ZWQgd2l0aCB0aGUgY29ycmVjdCBiYXNlbGluZVxuICAgIC5nb3Z1ay1oZWFkZXJfX2xvZ290eXBlLWNyb3duLFxuICAgIC5nb3Z1ay1oZWFkZXJfX2xvZ290eXBlLWNyb3duLWZhbGxiYWNrLWltYWdlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogLTRweDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLmdvdnVrLWhlYWRlciB7XG4gICAgICAkb2Zmc2V0OiAzcHg7XG4gICAgICBwYWRkaW5nLXRvcDogJG9mZnNldDtcbiAgICB9XG5cbiAgICAuZ292dWstaGVhZGVyX19saW5rLS1ob21lcGFnZSB7XG4gICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICB9XG4gICAgLy8gRW5kIGFkanVzdG1lbnRzXG4gIH1cbn1cbiIsIkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9jb21wb25lbnQvaW5zZXQtdGV4dFwiKSB7XG4gIC5nb3Z1ay1pbnNldC10ZXh0IHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAxOSk7XG4gICAgQGluY2x1ZGUgZ292dWstdGV4dC1jb2xvdXI7XG4gICAgcGFkZGluZzogZ292dWstc3BhY2luZygzKTtcbiAgICAvLyBNYXJnaW4gdG9wIGludGVuZGVkIHRvIGNvbGxhcHNlXG4gICAgLy8gVGhpcyBhZGRzIGFuIGFkZGl0aW9uYWwgMTBweCB0byB0aGUgcGFyYWdyYXBoIGFib3ZlXG4gICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNiwgXCJ0b3BcIik7XG4gICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNiwgXCJib3R0b21cIik7XG5cbiAgICBjbGVhcjogYm90aDtcblxuICAgIGJvcmRlci1sZWZ0OiAkZ292dWstYm9yZGVyLXdpZHRoLXdpZGUgc29saWQgJGdvdnVrLWJvcmRlci1jb2xvdXI7XG5cbiAgICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cblxuICAgID4gOm9ubHktY2hpbGQsXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvbXBvbmVudC9ub3RpZmljYXRpb24tYmFubmVyXCIpIHtcbiAgLmdvdnVrLW5vdGlmaWNhdGlvbi1iYW5uZXIge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDE5KTtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig4LCBcImJvdHRvbVwiKTtcblxuICAgIGJvcmRlcjogJGdvdnVrLWJvcmRlci13aWR0aCBzb2xpZCAkZ292dWstYnJhbmQtY29sb3VyO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdvdnVrLWJyYW5kLWNvbG91cjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogJGdvdnVrLWZvY3VzLXdpZHRoIHNvbGlkICRnb3Z1ay1mb2N1cy1jb2xvdXI7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLW5vdGlmaWNhdGlvbi1iYW5uZXJfX2hlYWRlciB7XG4gICAgcGFkZGluZzogMnB4IGdvdnVrLXNwYWNpbmcoMykgZ292dWstc3BhY2luZygxKTtcblxuICAgIC8vIEVuc3VyZXMgdGhlIG5vdGlmaWNhdGlvbiBoZWFkZXIgYXBwZWFycyBzZXBhcmF0ZSB0byB0aGUgbm90aWZpY2F0aW9uIGJvZHkgdGV4dCBpbiBoaWdoIGNvbnRyYXN0IG1vZGVcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgICBwYWRkaW5nOiAycHggZ292dWstc3BhY2luZyg0KSBnb3Z1ay1zcGFjaW5nKDEpO1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1ub3RpZmljYXRpb24tYmFubmVyX190aXRsZSB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTksICR3ZWlnaHQ6IGJvbGQpO1xuXG4gICAgbWFyZ2luOiAwO1xuXG4gICAgcGFkZGluZzogMDtcblxuICAgIGNvbG9yOiBnb3Z1ay1jb2xvdXIoXCJ3aGl0ZVwiKTtcbiAgfVxuXG4gIC5nb3Z1ay1ub3RpZmljYXRpb24tYmFubmVyX19jb250ZW50IHtcbiAgICAkcGFkZGluZy10YWJsZXQ6IGdvdnVrLXNwYWNpbmcoNCk7XG4gICAgQGluY2x1ZGUgZ292dWstdGV4dC1jb2xvdXI7XG4gICAgcGFkZGluZzogZ292dWstc3BhY2luZygzKTtcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICRnb3Z1ay1ib2R5LWJhY2tncm91bmQtY29sb3VyO1xuXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgICAgcGFkZGluZzogJHBhZGRpbmctdGFibGV0O1xuICAgIH1cblxuICAgIC8vIFdyYXAgY29udGVudCBhdCB0aGUgc2FtZSBwbGFjZSB0aGF0IGEgMi8zIGdyaWQgY29sdW1uIGVuZHMsIHRvIG1haW50YWluXG4gICAgLy8gc2hvcnRlciBsaW5lLWxlbmd0aHMgd2hlbiB0aGUgbm90aWZpY2F0aW9uIGJhbm5lciBpcyBmdWxsIHdpZHRoXG4gICAgPiAqIHtcbiAgICAgIC8vIFdoZW4gZWxlbWVudHMgaGF2ZSB0aGVpciBvd24gcGFkZGluZyAobGlrZSBsaXN0cyksIGluY2x1ZGUgdGhlIHBhZGRpbmdcbiAgICAgIC8vIGluIHRoZSBtYXgtd2lkdGggY2FsY3VsYXRpb25cbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgICAgIC8vIENhbGN1bGF0ZSB0aGUgaW50ZXJuYWwgd2lkdGggb2YgYSB0d28tdGhpcmRzIGNvbHVtbi4uLlxuICAgICAgJHR3by1jb2wtd2lkdGg6ICgkZ292dWstcGFnZS13aWR0aCAqIDIgLyAzKSAtICgkZ292dWstZ3V0dGVyICogMSAvIDMpO1xuXG4gICAgICAvLyAuLi5hbmQgdGhlbiBmYWN0b3IgaW4gdGhlIGxlZnQgYm9yZGVyIGFuZCBwYWRkaW5nXG4gICAgICAkYmFubmVyLWV4dGVyaW9yOiAoJHBhZGRpbmctdGFibGV0ICsgJGdvdnVrLWJvcmRlci13aWR0aCk7XG4gICAgICBtYXgtd2lkdGg6ICR0d28tY29sLXdpZHRoIC0gJGJhbm5lci1leHRlcmlvcjtcbiAgICB9XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLW5vdGlmaWNhdGlvbi1iYW5uZXJfX2hlYWRpbmcge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDI0LCAkd2VpZ2h0OiBib2xkKTtcblxuICAgIG1hcmdpbjogMCAwIGdvdnVrLXNwYWNpbmcoMykgMDtcblxuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAuZ292dWstbm90aWZpY2F0aW9uLWJhbm5lcl9fbGluayB7XG4gICAgQGluY2x1ZGUgZ292dWstbGluay1jb21tb247XG4gICAgQGluY2x1ZGUgZ292dWstbGluay1zdHlsZS1uby12aXNpdGVkLXN0YXRlO1xuICB9XG5cbiAgLmdvdnVrLW5vdGlmaWNhdGlvbi1iYW5uZXItLXN1Y2Nlc3Mge1xuICAgIGJvcmRlci1jb2xvcjogJGdvdnVrLXN1Y2Nlc3MtY29sb3VyO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdvdnVrLXN1Y2Nlc3MtY29sb3VyO1xuXG4gICAgLmdvdnVrLW5vdGlmaWNhdGlvbi1iYW5uZXJfX2xpbmsge1xuICAgICAgQGluY2x1ZGUgZ292dWstbGluay1zdHlsZS1zdWNjZXNzO1xuICAgIH1cbiAgfVxufVxuIiwiQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvbXBvbmVudC9wYW5lbFwiKSB7XG4gIC5nb3Z1ay1wYW5lbCB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTkpO1xuXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMyk7XG4gICAgcGFkZGluZzogZ292dWstc3BhY2luZyg3KSAtICRnb3Z1ay1ib3JkZXItd2lkdGg7XG5cbiAgICBib3JkZXI6ICRnb3Z1ay1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkdW50aWw6IHRhYmxldCkge1xuICAgICAgcGFkZGluZzogZ292dWstc3BhY2luZygzKSAtICRnb3Z1ay1ib3JkZXItd2lkdGg7XG5cbiAgICAgIC8vIFRoaXMgaXMgYW4gaWYtYWxsLWVsc2UtZmFpbHMgYXR0ZW1wdCB0byBzdG9wIGxvbmcgd29yZHMgZnJvbSBvdmVyZmxvd2luZyB0aGUgY29udGFpbmVyXG4gICAgICAvLyBvbiB2ZXJ5IG5hcnJvdyB2aWV3cG9ydHMgYnkgZm9yY2luZyB0aGVtIHRvIGJyZWFrIGFuZCB3cmFwIGluc3RlYWQuIFRoaXNcbiAgICAgIC8vIG92ZXJmbG93aW5nIGlzIG1vcmUgbGlrZWx5IHRvIGhhcHBlbiB3aGVuIHVzZXIgaW5jcmVhc2VzIHRleHQgc2l6ZSBvbiBhIG1vYmlsZSBlZy4gdXNpbmdcbiAgICAgIC8vIGlPUyBTYWZhcmkgdGV4dCByZXNpemUgY29udHJvbHMuXG4gICAgICAvL1xuICAgICAgLy8gVGhlIG92ZXJmbG93aW5nIGlzIGEgcGFydGljdWxhciBwcm9ibGVtIHdpdGggdGhlIHBhbmVsIGNvbXBvbmVudCBzaW5jZSBpdCB1c2VzIHdoaXRlXG4gICAgICAvLyB0ZXh0OiB3aGVuIHRoZSB0ZXh0IG92ZXJmbG93cyB0aGUgY29udGFpbmVyLCBpdCBpcyBpbnZpc2libGUgb24gdGhlIHdoaXRlIChwYWdlKVxuICAgICAgLy8gYmFja2dyb3VuZC4gV2hlbiB0aGUgdGV4dCBpbiBvdXIgb3RoZXIgY29tcG9uZW50cyBvdmVyZmxvdywgdGhlIHVzZXIgbWlnaHQgaGF2ZSB0byBzY3JvbGxcbiAgICAgIC8vIGhvcml6b250YWxseSB0byB2aWV3IGl0IGJ1dCB0aGUgdGhlIHRleHQgcmVtYWlucyBsZWdpYmxlLlxuICAgICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDsgLy8gU3VwcG9ydCBJRSAoYXV0b3ByZWZpeGVyIGRvZXNuJ3QgYWRkIHRoaXMgYXMgaXQncyBub3QgYSBwcmVmaXgpXG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXBhbmVsLS1jb25maXJtYXRpb24ge1xuICAgIGNvbG9yOiBnb3Z1ay1jb2xvdXIoXCJ3aGl0ZVwiKTtcbiAgICBiYWNrZ3JvdW5kOiBnb3Z1ay1jb2xvdXIoXCJncmVlblwiLCAkbGVnYWN5OiBcInR1cnF1b2lzZVwiKTtcblxuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRtZWRpYS10eXBlOiBwcmludCkge1xuICAgICAgYm9yZGVyLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgICBjb2xvcjogJGdvdnVrLXByaW50LXRleHQtY29sb3VyO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuZ292dWstcGFuZWxfX3RpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoNik7XG5cbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiA0OCwgJHdlaWdodDogYm9sZCk7XG4gIH1cblxuICAuZ292dWstcGFuZWxfX3RpdGxlOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuZ292dWstcGFuZWxfX2JvZHkge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDM2KTtcbiAgfVxufVxuIiwiQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvbXBvbmVudC90YWdcIikge1xuICAuZ292dWstdGFnIHtcblxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgIC8vIFdoZW4gYSB1c2VyIGN1c3RvbWlzZXMgdGhlaXIgY29sb3VycyBvZnRlbiB0aGUgYmFja2dyb3VuZCBpcyByZW1vdmVkLFxuICAgIC8vIGJ5IGFkZGluZyBhIG91dGxpbmUgd2UgZW5zdXJlIHRoYXQgdGhlIHRhZyBjb21wb25lbnQgc3RpbGwga2VlcHMgaXQncyBtZWFuaW5nLlxuICAgIC8vIGh0dHBzOi8vYWNjZXNzaWJpbGl0eS5ibG9nLmdvdi51ay8yMDE3LzAzLzI3L2hvdy11c2Vycy1jaGFuZ2UtY29sb3Vycy1vbi13ZWJzaXRlcy9cbiAgICBvdXRsaW5lOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG5cbiAgICBjb2xvcjogZ292dWstY29sb3VyKFwid2hpdGVcIik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZ292dWstY29sb3VyKFwiYmx1ZVwiKTtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICBAaWYgJGdvdnVrLXVzZS1sZWdhY3ktZm9udCB7XG4gICAgICAvLyBTaW5jZSBOZXcgVHJhbnNwb3J0IHNpdHMgc2xpZ2h0bHkgaGlnaGVyIHRoYW4gb3RoZXIgY29tbW9uIGZvbnRzLlxuICAgICAgLy8gV2UgdXNlIGludGVudGlvbmFsbHkgdW5ldmVuIHBhZGRpbmcgdG8gbWFrZSBpdCBiYWxhbmNlZCwgdGhpcyBjYW4gYmVcbiAgICAgIC8vIHJlbW92ZWQgdXNpbmcgdGhlIHZlcnNpb24gb2YgdGhlIGZvbnQgdGhhdCBoYXMgYSBtb3JlIGNvbW1vbiB2ZXJ0aWNhbCBzcGFjaW5nLlxuICAgICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTYsICR3ZWlnaHQ6IGJvbGQsICRsaW5lLWhlaWdodDogMS4yNSk7XG4gICAgICBwYWRkaW5nLXRvcDogNHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogOHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDFweDtcbiAgICAgIHBhZGRpbmctbGVmdDogOHB4O1xuICAgIH0gQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTYsICR3ZWlnaHQ6IGJvbGQsICRsaW5lLWhlaWdodDogMSk7XG4gICAgICBwYWRkaW5nLXRvcDogNXB4O1xuICAgICAgcGFkZGluZy1yaWdodDogOHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDRweDtcbiAgICAgIHBhZGRpbmctbGVmdDogOHB4O1xuICAgIH1cbiAgfVxuXG4gIC8vIERlcHJlY2F0ZWQuIFdlJ2xsIHJlbW92ZSB0aGlzIGNsYXNzIGluIGEgZnV0dXJlIHJlbGVhc2UuIFVzZSBgLmdvdnVrLXRhZy0tZ3JleWAgaW5zdGVhZC5cbiAgLmdvdnVrLXRhZy0taW5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGdvdnVrLWNvbG91cihcImRhcmstZ3JleVwiLCAkbGVnYWN5OiBcImdyZXktMVwiKTtcbiAgfVxuXG4gIC5nb3Z1ay10YWctLWdyZXkge1xuICAgIGNvbG9yOiBnb3Z1ay1zaGFkZShnb3Z1ay1jb2xvdXIoXCJkYXJrLWdyZXlcIiwgJGxlZ2FjeTogXCJncmV5LTFcIiksIDMwKTtcbiAgICBiYWNrZ3JvdW5kOiBnb3Z1ay10aW50KGdvdnVrLWNvbG91cihcImRhcmstZ3JleVwiLCAkbGVnYWN5OiBcImdyZXktMVwiKSwgOTApO1xuICB9XG5cbiAgLmdvdnVrLXRhZy0tcHVycGxlIHtcbiAgICBjb2xvcjogZ292dWstc2hhZGUoZ292dWstY29sb3VyKFwicHVycGxlXCIpLCAyMCk7XG4gICAgYmFja2dyb3VuZDogZ292dWstdGludChnb3Z1ay1jb2xvdXIoXCJwdXJwbGVcIiksIDgwKTtcbiAgfVxuXG4gIC5nb3Z1ay10YWctLXR1cnF1b2lzZSB7XG4gICAgY29sb3I6IGdvdnVrLXNoYWRlKGdvdnVrLWNvbG91cihcInR1cnF1b2lzZVwiKSwgNjApO1xuICAgIGJhY2tncm91bmQ6IGdvdnVrLXRpbnQoZ292dWstY29sb3VyKFwidHVycXVvaXNlXCIpLCA3MCk7XG4gIH1cblxuICAuZ292dWstdGFnLS1ibHVlIHtcbiAgICBjb2xvcjogZ292dWstc2hhZGUoZ292dWstY29sb3VyKFwiYmx1ZVwiKSwgMzApO1xuICAgIGJhY2tncm91bmQ6IGdvdnVrLXRpbnQoZ292dWstY29sb3VyKFwiYmx1ZVwiKSwgODApO1xuICB9XG5cbiAgLmdvdnVrLXRhZy0teWVsbG93IHtcbiAgICBjb2xvcjogZ292dWstc2hhZGUoZ292dWstY29sb3VyKFwieWVsbG93XCIpLCA2NSk7XG4gICAgYmFja2dyb3VuZDogZ292dWstdGludChnb3Z1ay1jb2xvdXIoXCJ5ZWxsb3dcIiksIDc1KTtcbiAgfVxuXG4gIC5nb3Z1ay10YWctLW9yYW5nZSB7XG4gICAgY29sb3I6IGdvdnVrLXNoYWRlKGdvdnVrLWNvbG91cihcIm9yYW5nZVwiKSwgNTUpO1xuICAgIGJhY2tncm91bmQ6IGdvdnVrLXRpbnQoZ292dWstY29sb3VyKFwib3JhbmdlXCIpLCA3MCk7XG4gIH1cblxuICAuZ292dWstdGFnLS1yZWQge1xuICAgIGNvbG9yOiBnb3Z1ay1zaGFkZShnb3Z1ay1jb2xvdXIoXCJyZWRcIiksIDMwKTtcbiAgICBiYWNrZ3JvdW5kOiBnb3Z1ay10aW50KGdvdnVrLWNvbG91cihcInJlZFwiKSwgODApO1xuICB9XG5cbiAgLmdvdnVrLXRhZy0tcGluayB7XG4gICAgY29sb3I6IGdvdnVrLXNoYWRlKGdvdnVrLWNvbG91cihcInBpbmtcIiksIDQwKTtcbiAgICBiYWNrZ3JvdW5kOiBnb3Z1ay10aW50KGdvdnVrLWNvbG91cihcInBpbmtcIiksIDgwKTtcbiAgfVxuXG4gIC5nb3Z1ay10YWctLWdyZWVuIHtcbiAgICBjb2xvcjogZ292dWstc2hhZGUoZ292dWstY29sb3VyKFwiZ3JlZW5cIiksIDIwKTtcbiAgICBiYWNrZ3JvdW5kOiBnb3Z1ay10aW50KGdvdnVrLWNvbG91cihcImdyZWVuXCIpLCA4MCk7XG4gIH1cbn1cbiIsIkBpbXBvcnQgXCIuLi90YWcvaW5kZXhcIjtcblxuQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvbXBvbmVudC9waGFzZS1iYW5uZXJcIikge1xuICAuZ292dWstcGhhc2UtYmFubmVyIHtcbiAgICBwYWRkaW5nLXRvcDogZ292dWstc3BhY2luZygyKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogZ292dWstc3BhY2luZygyKTtcblxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ292dWstYm9yZGVyLWNvbG91cjtcbiAgfVxuXG4gIC5nb3Z1ay1waGFzZS1iYW5uZXJfX2NvbnRlbnQge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDE2KTtcbiAgICBAaW5jbHVkZSBnb3Z1ay10ZXh0LWNvbG91cjtcblxuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC5nb3Z1ay1waGFzZS1iYW5uZXJfX2NvbnRlbnRfX3RhZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiBnb3Z1ay1zcGFjaW5nKDIpO1xuICB9XG5cbiAgLmdvdnVrLXBoYXNlLWJhbm5lcl9fdGV4dCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG59XG4iLCJAaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvY29tcG9uZW50L3RhYnNcIikge1xuICAuZ292dWstdGFicyB7XG4gICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oMSwgXCJ0b3BcIik7XG4gICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNiwgXCJib3R0b21cIik7XG4gIH1cblxuICAuZ292dWstdGFic19fdGl0bGUge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDE5KTtcbiAgICBAaW5jbHVkZSBnb3Z1ay10ZXh0LWNvbG91cjtcbiAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDIpO1xuICB9XG5cbiAgLmdvdnVrLXRhYnNfX2xpc3Qge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNiwgXCJib3R0b21cIik7XG4gIH1cblxuICAuZ292dWstdGFic19fbGlzdC1pdGVtIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAxOSk7XG4gICAgbWFyZ2luLWxlZnQ6IGdvdnVrLXNwYWNpbmcoNSk7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBnb3Z1ay10ZXh0LWNvbG91cjtcbiAgICAgIGNvbnRlbnQ6IFwiXFwyMDE0IFwiOyAvLyBcIuKAlCBcIlxuICAgICAgbWFyZ2luLWxlZnQ6IC0gZ292dWstc3BhY2luZyg1KTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGdvdnVrLXNwYWNpbmcoMSk7XG4gICAgfVxuICB9XG5cbiAgLmdvdnVrLXRhYnNfX3RhYiB7XG4gICAgQGluY2x1ZGUgZ292dWstbGluay1jb21tb247XG4gICAgQGluY2x1ZGUgZ292dWstbGluay1zdHlsZS1kZWZhdWx0O1xuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMik7XG4gIH1cblxuICAuZ292dWstdGFic19fcGFuZWwge1xuICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDgsIFwiYm90dG9tXCIpO1xuICB9XG5cbiAgLy8gSmF2YVNjcmlwdCBlbmFibGVkXG4gIC5qcy1lbmFibGVkIHtcblxuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgIC5nb3Z1ay10YWJzX19saXN0IHtcbiAgICAgICAgQGluY2x1ZGUgZ292dWstY2xlYXJmaXg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ292dWstYm9yZGVyLWNvbG91cjtcbiAgICAgIH1cblxuICAgICAgLmdvdnVrLXRhYnNfX3RpdGxlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLmdvdnVrLXRhYnNfX2xpc3QtaXRlbSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBtYXJnaW4tcmlnaHQ6IGdvdnVrLXNwYWNpbmcoMSk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nOiBnb3Z1ay1zcGFjaW5nKDIpIGdvdnVrLXNwYWNpbmcoNCk7XG5cbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdvdnVrLWNvbG91cihcImxpZ2h0LWdyZXlcIiwgJGxlZ2FjeTogXCJncmV5LTRcIik7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZ292dWstdGFic19fbGlzdC1pdGVtLS1zZWxlY3RlZCB7XG4gICAgICAgICRib3JkZXItd2lkdGg6IDFweDtcblxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgbWFyZ2luLXRvcDogLSBnb3Z1ay1zcGFjaW5nKDEpO1xuXG4gICAgICAgIC8vIENvbXBlbnNhdGlvbiBmb3IgYm9yZGVyIChvdGhlcndpc2Ugd2UgZ2V0IGEgc2hpZnQpXG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0kYm9yZGVyLXdpZHRoO1xuICAgICAgICBwYWRkaW5nLXRvcDogZ292dWstc3BhY2luZygzKSAtICRib3JkZXItd2lkdGg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IGdvdnVrLXNwYWNpbmcoNCkgLSAkYm9yZGVyLXdpZHRoO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogZ292dWstc3BhY2luZygzKSArICRib3JkZXItd2lkdGg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogZ292dWstc3BhY2luZyg0KSAtICRib3JkZXItd2lkdGg7XG5cbiAgICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRnb3Z1ay1ib3JkZXItY29sb3VyO1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnb3Z1ay1ib2R5LWJhY2tncm91bmQtY29sb3VyO1xuXG4gICAgICAgIC5nb3Z1ay10YWJzX190YWIge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZ292dWstdGFic19fdGFiIHtcbiAgICAgICAgQGluY2x1ZGUgZ292dWstbGluay1zdHlsZS10ZXh0O1xuXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5nb3Z1ay10YWJzX19wYW5lbCB7XG4gICAgICAgIEBpbmNsdWRlIGdvdnVrLXJlc3BvbnNpdmUtbWFyZ2luKDAsIFwiYm90dG9tXCIpO1xuICAgICAgICBwYWRkaW5nOiBnb3Z1ay1zcGFjaW5nKDYpIGdvdnVrLXNwYWNpbmcoNCk7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRnb3Z1ay1ib3JkZXItY29sb3VyO1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuXG4gICAgICAgICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZ292dWstdGFic19fcGFuZWwtLWhpZGRlbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaW1wb3J0IFwiLi4vZXJyb3ItbWVzc2FnZS9pbmRleFwiO1xuQGltcG9ydCBcIi4uL2ZpZWxkc2V0L2luZGV4XCI7XG5AaW1wb3J0IFwiLi4vaGludC9pbmRleFwiO1xuQGltcG9ydCBcIi4uL2xhYmVsL2luZGV4XCI7XG5cbkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9jb21wb25lbnQvcmFkaW9zXCIpIHtcblxuICAkZ292dWstdG91Y2gtdGFyZ2V0LXNpemU6IDQ0cHg7XG4gICRnb3Z1ay1yYWRpb3Mtc2l6ZTogNDBweDtcbiAgJGdvdnVrLXNtYWxsLXJhZGlvcy1zaXplOiAyNHB4O1xuICAkZ292dWstcmFkaW9zLWxhYmVsLXBhZGRpbmctbGVmdC1yaWdodDogZ292dWstc3BhY2luZygzKTtcbiAgLy8gV2hlbiB0aGUgZGVmYXVsdCBmb2N1cyB3aWR0aCBpcyB1c2VkIG9uIGEgY3VydmVkIGVkZ2UgaXQgbG9va3MgdmlzdWFsbHkgc21hbGxlci5cbiAgLy8gU28gZm9yIHRoZSBjaXJjdWxhciByYWRpb3Mgd2UgYnVtcCB0aGUgZGVmYXVsdCB0byBtYWtlIGl0IGxvb2sgdmlzdWFsbHkgY29uc2lzdGVudC5cbiAgJGdvdnVrLXJhZGlvcy1mb2N1cy13aWR0aDogJGdvdnVrLWZvY3VzLXdpZHRoICsgMXB4O1xuXG4gIC5nb3Z1ay1yYWRpb3NfX2l0ZW0ge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDE5KTtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIG1pbi1oZWlnaHQ6ICRnb3Z1ay1yYWRpb3Mtc2l6ZTtcblxuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMik7XG4gICAgcGFkZGluZy1sZWZ0OiAkZ292dWstcmFkaW9zLXNpemU7XG5cbiAgICBjbGVhcjogbGVmdDtcbiAgfVxuXG4gIC5nb3Z1ay1yYWRpb3NfX2l0ZW06bGFzdC1jaGlsZCxcbiAgLmdvdnVrLXJhZGlvc19faXRlbTpsYXN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuZ292dWstcmFkaW9zX19pbnB1dCB7XG4gICAgJGlucHV0LW9mZnNldDogKCRnb3Z1ay10b3VjaC10YXJnZXQtc2l6ZSAtICRnb3Z1ay1yYWRpb3Mtc2l6ZSkgLyAyO1xuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgLy8gSUU4IGRvZXNu4oCZdCBzdXBwb3J0IHBzZXVkby1lbGVtZW50cywgc28gd2UgZG9u4oCZdCB3YW50IHRvIGhpZGUgbmF0aXZlXG4gICAgLy8gZWxlbWVudHMgdGhlcmUuXG4gICAgQGluY2x1ZGUgZ292dWstbm90LWllOCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICB0b3A6ICRpbnB1dC1vZmZzZXQgKiAtMTtcbiAgICAgIGxlZnQ6ICRpbnB1dC1vZmZzZXQgKiAtMTtcblxuICAgICAgd2lkdGg6ICRnb3Z1ay10b3VjaC10YXJnZXQtc2l6ZTtcbiAgICAgIGhlaWdodDogJGdvdnVrLXRvdWNoLXRhcmdldC1zaXplO1xuICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGdvdnVrLWlmLWllOCB7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkZ292dWstcmFkaW9zLXNpemUgLyAtMjtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkZ292dWstcmFkaW9zLXNpemUgLyAtMjtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgICAvLyBhZGQgZm9jdXMgb3V0bGluZSB0byBpbnB1dFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6ICRnb3Z1ay1mb2N1cy13aWR0aCBzb2xpZCAkZ292dWstZm9jdXMtY29sb3VyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1yYWRpb3NfX2xhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nOiA4cHggJGdvdnVrLXJhZGlvcy1sYWJlbC1wYWRkaW5nLWxlZnQtcmlnaHQgZ292dWstc3BhY2luZygxKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgLy8gcmVtb3ZlIDMwMG1zIHBhdXNlIG9uIG1vYmlsZVxuICAgIC1tcy10b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgICAgICAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG4gIH1cblxuICAvLyAoICkgUmFkaW8gcmluZ1xuICAuZ292dWstcmFkaW9zX19sYWJlbDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICB3aWR0aDogJGdvdnVrLXJhZGlvcy1zaXplO1xuICAgIGhlaWdodDogJGdvdnVrLXJhZGlvcy1zaXplO1xuXG4gICAgYm9yZGVyOiAkZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLy8gIOKAoiAgUmFkaW8gYnV0dG9uXG4gIC8vXG4gIC8vIFdlIGNyZWF0ZSB0aGUgJ2J1dHRvbicgZW50aXJlbHkgb3V0IG9mICdib3JkZXInIHNvIHRoYXQgdGhleSByZW1haW5cbiAgLy8gJ2ZpbGxlZCcgZXZlbiB3aGVuIGNvbG91cnMgYXJlIG92ZXJyaWRkZW4gaW4gdGhlIGJyb3dzZXIuXG4gIC5nb3Z1ay1yYWRpb3NfX2xhYmVsOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogZ292dWstc3BhY2luZygyKTtcbiAgICBsZWZ0OiBnb3Z1ay1zcGFjaW5nKDIpO1xuXG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuXG4gICAgYm9yZGVyOiBnb3Z1ay1zcGFjaW5nKDIpIHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgb3BhY2l0eTogMDtcbiAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gIH1cblxuICAuZ292dWstcmFkaW9zX19oaW50IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ292dWstcmFkaW9zLWxhYmVsLXBhZGRpbmctbGVmdC1yaWdodDtcbiAgICBwYWRkaW5nLWxlZnQ6ICRnb3Z1ay1yYWRpb3MtbGFiZWwtcGFkZGluZy1sZWZ0LXJpZ2h0O1xuICB9XG5cbiAgLy8gRm9jdXNlZCBzdGF0ZVxuICAuZ292dWstcmFkaW9zX19pbnB1dDpmb2N1cyArIC5nb3Z1ay1yYWRpb3NfX2xhYmVsOmJlZm9yZSB7XG4gICAgYm9yZGVyLXdpZHRoOiA0cHg7XG5cbiAgICAvLyBXaGVuIGNvbG91cnMgYXJlIG92ZXJyaWRkZW4sIHRoZSB5ZWxsb3cgYm94LXNoYWRvdyBiZWNvbWVzIGludmlzaWJsZVxuICAgIC8vIHdoaWNoIG1lYW5zIHRoZSBmb2N1cyBzdGF0ZSBpcyBsZXNzIG9idmlvdXMuIEJ5IGFkZGluZyBhIHRyYW5zcGFyZW50XG4gICAgLy8gb3V0bGluZSwgd2hpY2ggYmVjb21lcyBzb2xpZCAodGV4dC1jb2xvdXJlZCkgaW4gdGhhdCBjb250ZXh0LCB3ZSBlbnN1cmVcbiAgICAvLyB0aGUgZm9jdXMgcmVtYWlucyBjbGVhcmx5IHZpc2libGUuXG4gICAgb3V0bGluZTogJGdvdnVrLWZvY3VzLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIG91dGxpbmUtb2Zmc2V0OiAxcHg7XG5cbiAgICAvLyBXaGVuIGluIGFuIGV4cGxpY2l0IGZvcmNlZC1jb2xvciBtb2RlLCB3ZSBjYW4gdXNlIHRoZSBIaWdobGlnaHQgc3lzdGVtXG4gICAgLy8gY29sb3IgZm9yIHRoZSBvdXRsaW5lIHRvIGJldHRlciBtYXRjaCBmb2N1cyBzdGF0ZXMgb2YgbmF0aXZlIGNvbnRyb2xzXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgICBvdXRsaW5lLWNvbG9yOiBIaWdobGlnaHQ7XG4gICAgfVxuXG4gICAgYm94LXNoYWRvdzogMCAwIDAgJGdvdnVrLXJhZGlvcy1mb2N1cy13aWR0aCAkZ292dWstZm9jdXMtY29sb3VyO1xuICB9XG5cbiAgLy8gU2VsZWN0ZWQgc3RhdGVcbiAgLmdvdnVrLXJhZGlvc19faW5wdXQ6Y2hlY2tlZCArIC5nb3Z1ay1yYWRpb3NfX2xhYmVsOmFmdGVyIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgLmdvdnVrLXJhZGlvc19faW5wdXQ6ZGlzYWJsZWQsXG4gIC5nb3Z1ay1yYWRpb3NfX2lucHV0OmRpc2FibGVkICsgLmdvdnVrLXJhZGlvc19fbGFiZWwge1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgfVxuXG4gIC5nb3Z1ay1yYWRpb3NfX2lucHV0OmRpc2FibGVkICsgLmdvdnVrLXJhZGlvc19fbGFiZWwge1xuICAgIG9wYWNpdHk6IC41O1xuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIElubGluZSByYWRpb3NcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLmdvdnVrLXJhZGlvcy0taW5saW5lIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSAoJGZyb206IHRhYmxldCkge1xuICAgICAgQGluY2x1ZGUgZ292dWstY2xlYXJmaXg7XG5cbiAgICAgIC5nb3Z1ay1yYWRpb3NfX2l0ZW0ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGdvdnVrLXNwYWNpbmcoNCk7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBjbGVhcjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBQcmV2ZW50IGlubGluZSBtb2RpZmllciBiZWluZyB1c2VkIHdpdGggY29uZGl0aW9uYWwgcmV2ZWFsc1xuICAgICYuZ292dWstcmFkaW9zLS1jb25kaXRpb25hbCB7XG4gICAgICAuZ292dWstcmFkaW9zX19pdGVtIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gRGl2aWRlcnMgKCdvcicpXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC5nb3Z1ay1yYWRpb3NfX2RpdmlkZXIge1xuICAgICRnb3Z1ay1kaXZpZGVyLXNpemU6ICRnb3Z1ay1yYWRpb3Mtc2l6ZSAhZGVmYXVsdDtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAxOSk7XG4gICAgQGluY2x1ZGUgZ292dWstdGV4dC1jb2xvdXI7XG4gICAgd2lkdGg6ICRnb3Z1ay1kaXZpZGVyLXNpemU7XG4gICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygyKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gQ29uZGl0aW9uYWwgcmV2ZWFsc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBUaGUgbmFycm93IGJvcmRlciBpcyB1c2VkIGluIHRoZSBjb25kaXRpb25hbCByZXZlYWxzIGJlY2F1c2UgdGhlIGJvcmRlciBoYXNcbiAgLy8gdG8gYmUgYW4gZXZlbiBudW1iZXIgaW4gb3JkZXIgdG8gYmUgY2VudHJlZCB1bmRlciB0aGUgNDBweCBjaGVja2JveCBvciByYWRpby5cbiAgJGNvbmRpdGlvbmFsLWJvcmRlci13aWR0aDogJGdvdnVrLWJvcmRlci13aWR0aC1uYXJyb3c7XG4gIC8vIENhbGN1bGF0ZSB0aGUgYW1vdW50IG9mIHBhZGRpbmcgbmVlZGVkIHRvIGtlZXAgdGhlIGJvcmRlciBjZW50ZXJlZCBhZ2FpbnN0IHRoZSByYWRpb3MuXG4gICRjb25kaXRpb25hbC1ib3JkZXItcGFkZGluZzogKCRnb3Z1ay1yYWRpb3Mtc2l6ZSAvIDIpIC0gKCRjb25kaXRpb25hbC1ib3JkZXItd2lkdGggLyAyKTtcbiAgLy8gTW92ZSB0aGUgYm9yZGVyIGNlbnRlcmVkIHdpdGggdGhlIHJhZGlvc1xuICAkY29uZGl0aW9uYWwtbWFyZ2luLWxlZnQ6ICRjb25kaXRpb25hbC1ib3JkZXItcGFkZGluZztcbiAgLy8gTW92ZSB0aGUgY29udGVudHMgb2YgdGhlIGNvbmRpdGlvbmFsIGlubGluZSB3aXRoIHRoZSBsYWJlbFxuICAkY29uZGl0aW9uYWwtcGFkZGluZy1sZWZ0OiAkY29uZGl0aW9uYWwtYm9yZGVyLXBhZGRpbmcgKyAkZ292dWstcmFkaW9zLWxhYmVsLXBhZGRpbmctbGVmdC1yaWdodDtcblxuICAuZ292dWstcmFkaW9zX19jb25kaXRpb25hbCB7XG4gICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNCwgXCJib3R0b21cIik7XG4gICAgbWFyZ2luLWxlZnQ6ICRjb25kaXRpb25hbC1tYXJnaW4tbGVmdDtcbiAgICBwYWRkaW5nLWxlZnQ6ICRjb25kaXRpb25hbC1wYWRkaW5nLWxlZnQ7XG4gICAgYm9yZGVyLWxlZnQ6ICRjb25kaXRpb25hbC1ib3JkZXItd2lkdGggc29saWQgJGdvdnVrLWJvcmRlci1jb2xvdXI7XG5cbiAgICAuanMtZW5hYmxlZCAmLS1oaWRkZW4ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmID4gOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gU21hbGwgY2hlY2tib3hlc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAuZ292dWstcmFkaW9zLS1zbWFsbCB7XG5cbiAgICAkaW5wdXQtb2Zmc2V0OiAoJGdvdnVrLXRvdWNoLXRhcmdldC1zaXplIC0gJGdvdnVrLXNtYWxsLXJhZGlvcy1zaXplKSAvIDI7XG4gICAgJGxhYmVsLW9mZnNldDogJGdvdnVrLXRvdWNoLXRhcmdldC1zaXplIC0gJGlucHV0LW9mZnNldDtcblxuICAgIC5nb3Z1ay1yYWRpb3NfX2l0ZW0ge1xuICAgICAgQGluY2x1ZGUgZ292dWstY2xlYXJmaXg7XG4gICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogJGxhYmVsLW9mZnNldDtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cblxuICAgIC8vIFNoaWZ0IHRoZSB0b3VjaCB0YXJnZXQgaW50byB0aGUgbGVmdCBtYXJnaW4gc28gdGhhdCB0aGUgdmlzaWJsZSBlZGdlIG9mXG4gICAgLy8gdGhlIGNvbnRyb2wgaXMgYWxpZ25lZFxuICAgIC8vXG4gICAgLy8gICDilIZXaGljaCBjb2xvdXIgaXMgeW91ciBmYXZvdXJpdGU/XG4gICAgLy8gIOKUjOKUhuKUgOKUgOKUgOKUkFxuICAgIC8vICDilILilIYoKSDilIIgUHVycGxlXG4gICAgLy8gIOKUlOKUhuKWsuKUgOKUgOKUmFxuICAgIC8vICDilrLilIbilJTilIAgUmFkaW8gcHNldWRvIGVsZW1lbnQsIGFsaWduZWQgd2l0aCBtYXJnaW5cbiAgICAvLyAg4pSU4pSA4pSA4pSAIFRvdWNoIHRhcmdldCAoaW52aXNpYmxlIGlucHV0KSwgc2hpZnRlZCBpbnRvIHRoZSBtYXJnaW5cbiAgICAuZ292dWstcmFkaW9zX19pbnB1dCB7XG4gICAgICBAaW5jbHVkZSBnb3Z1ay1ub3QtaWU4IHtcbiAgICAgICAgbGVmdDogJGlucHV0LW9mZnNldCAqIC0xO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBnb3Z1ay1pZi1pZTgge1xuICAgICAgICBtYXJnaW4tbGVmdDogJGdvdnVrLXNtYWxsLXJhZGlvcy1zaXplICogLTE7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWRqdXN0IHRoZSBzaXplIGFuZCBwb3NpdGlvbiBvZiB0aGUgbGFiZWwuXG4gICAgLy9cbiAgICAvLyBVbmxpa2UgbGFyZ2VyIHJhZGlvcywgd2UgYWxzbyBoYXZlIHRvIGZsb2F0IHRoZSBsYWJlbCBpbiBvcmRlciB0b1xuICAgIC8vICdzaHJpbmsnIGl0LCBwcmV2ZW50aW5nIHRoZSBob3ZlciBzdGF0ZSBmcm9tIGtpY2tpbmcgaW4gYWNyb3NzIHRoZSBmdWxsXG4gICAgLy8gd2lkdGggb2YgdGhlIHBhcmVudCBlbGVtZW50LlxuICAgIC5nb3Z1ay1yYWRpb3NfX2xhYmVsIHtcbiAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgICBwYWRkaW5nOiAxM3B4IGdvdnVrLXNwYWNpbmcoMykgMTNweCAxcHg7XG4gICAgICBmbG9hdDogbGVmdDtcblxuICAgICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgICAgICBwYWRkaW5nOiAxMXB4IGdvdnVrLXNwYWNpbmcoMykgMTBweCAxcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gKCApIFJhZGlvIHJpbmdcbiAgICAvL1xuICAgIC8vIFJlZHVjZSB0aGUgc2l6ZSBvZiB0aGUgY29udHJvbCBbMV0sIHZlcnRpY2FsbHkgY2VudGVyaW5nIGl0IHdpdGhpbiB0aGVcbiAgICAvLyB0b3VjaCB0YXJnZXQgWzJdXG4gICAgLmdvdnVrLXJhZGlvc19fbGFiZWw6YmVmb3JlIHtcbiAgICAgIHRvcDogJGlucHV0LW9mZnNldCAtICRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50OyAvLyAyXG4gICAgICB3aWR0aDogJGdvdnVrLXNtYWxsLXJhZGlvcy1zaXplOyAvLyAxXG4gICAgICBoZWlnaHQ6ICRnb3Z1ay1zbWFsbC1yYWRpb3Mtc2l6ZTsgLy8gMVxuICAgIH1cblxuICAgIC8vICDigKIgIFJhZGlvIGJ1dHRvblxuICAgIC8vXG4gICAgLy8gUmVkdWNlIHRoZSBzaXplIG9mIHRoZSAnYnV0dG9uJyBhbmQgY2VudGVyIGl0IHdpdGhpbiB0aGUgcmluZ1xuICAgIC5nb3Z1ay1yYWRpb3NfX2xhYmVsOmFmdGVyIHtcbiAgICAgIHRvcDogMTVweDtcbiAgICAgIGxlZnQ6IDdweDtcbiAgICAgIGJvcmRlci13aWR0aDogNXB4O1xuICAgIH1cblxuICAgIC8vIEZpeCBwb3NpdGlvbiBvZiBoaW50IHdpdGggc21hbGwgcmFkaW9zXG4gICAgLy9cbiAgICAvLyBEbyBub3QgdXNlIGhpbnRzIHdpdGggc21hbGwgcmFkaW9zIOKAkyBiZWNhdXNlIHRoZXkncmUgd2l0aGluIHRoZSBpbnB1dFxuICAgIC8vIHdyYXBwZXIgdGhleSB0cmlnZ2VyIHRoZSBob3ZlciBzdGF0ZSwgYnV0IGNsaWNraW5nIHRoZW0gZG9lc24ndCBhY3R1YWxseVxuICAgIC8vIGFjdGl2YXRlIHRoZSBjb250cm9sLlxuICAgIC8vXG4gICAgLy8gKElmIHlvdSBkbyB1c2UgdGhlbSwgdGhleSB3b24ndCBsb29rIGNvbXBsZXRlbHkgYnJva2VuLi4uIGJ1dCBzZXJpb3VzbHksXG4gICAgLy8gZG9uJ3QgdXNlIHRoZW0pXG4gICAgLmdvdnVrLXJhZGlvc19faGludCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBBbGlnbiBjb25kaXRpb25hbCByZXZlYWxzIHdpdGggc21hbGwgcmFkaW9zXG4gICAgLmdvdnVrLXJhZGlvc19fY29uZGl0aW9uYWwge1xuICAgICAgJG1hcmdpbi1sZWZ0OiAoJGdvdnVrLXNtYWxsLXJhZGlvcy1zaXplIC8gMikgLSAoJGNvbmRpdGlvbmFsLWJvcmRlci13aWR0aCAvIDIpO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRtYXJnaW4tbGVmdDtcbiAgICAgIHBhZGRpbmctbGVmdDogJGxhYmVsLW9mZnNldCAtICgkbWFyZ2luLWxlZnQgKyAkY29uZGl0aW9uYWwtYm9yZGVyLXdpZHRoKTtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cblxuICAgIC5nb3Z1ay1yYWRpb3NfX2RpdmlkZXIge1xuICAgICAgd2lkdGg6ICRnb3Z1ay1zbWFsbC1yYWRpb3Mtc2l6ZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMSk7XG4gICAgfVxuXG4gICAgLy8gSG92ZXIgc3RhdGUgZm9yIHNtYWxsIHJhZGlvcy5cbiAgICAvL1xuICAgIC8vIFdlIHVzZSBhIGhvdmVyIHN0YXRlIGZvciBzbWFsbCByYWRpb3MgYmVjYXVzZSB0aGUgdG91Y2ggdGFyZ2V0IHNpemVcbiAgICAvLyBpcyBzbyBtdWNoIGxhcmdlciB0aGFuIHRoZWlyIHZpc2libGUgc2l6ZSwgYW5kIHNvIHdlIG5lZWQgdG8gcHJvdmlkZVxuICAgIC8vIGZlZWRiYWNrIHRvIHRoZSB1c2VyIGFzIHRvIHdoaWNoIHJhZGlvIHRoZXkgd2lsbCBzZWxlY3Qgd2hlbiB0aGVpclxuICAgIC8vIGN1cnNvciBpcyBvdXRzaWRlIG9mIHRoZSB2aXNpYmxlIGFyZWEuXG4gICAgLmdvdnVrLXJhZGlvc19faXRlbTpob3ZlciAuZ292dWstcmFkaW9zX19pbnB1dDpub3QoOmRpc2FibGVkKSArIC5nb3Z1ay1yYWRpb3NfX2xhYmVsOmJlZm9yZSB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAkZ292dWstaG92ZXItd2lkdGggJGdvdnVrLWhvdmVyLWNvbG91cjtcbiAgICB9XG5cbiAgICAvLyBCZWNhdXNlIHdlJ3ZlIG92ZXJyaWRkZW4gdGhlIGJvcmRlci1zaGFkb3cgcHJvdmlkZWQgYnkgdGhlIGZvY3VzIHN0YXRlLFxuICAgIC8vIHdlIG5lZWQgdG8gcmVkZWZpbmUgdGhhdCB0b28uXG4gICAgLy9cbiAgICAvLyBXZSB1c2UgdHdvIGJveCBzaGFkb3dzLCBvbmUgdGhhdCByZXN0b3JlcyB0aGUgb3JpZ2luYWwgZm9jdXMgc3RhdGUgWzFdXG4gICAgLy8gYW5kIGFub3RoZXIgdGhhdCB0aGVuIGFwcGxpZXMgdGhlIGhvdmVyIHN0YXRlIFsyXS5cbiAgICAuZ292dWstcmFkaW9zX19pdGVtOmhvdmVyIC5nb3Z1ay1yYWRpb3NfX2lucHV0OmZvY3VzICsgLmdvdnVrLXJhZGlvc19fbGFiZWw6YmVmb3JlIHtcbiAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgIDAgMCAwICRnb3Z1ay1yYWRpb3MtZm9jdXMtd2lkdGggJGdvdnVrLWZvY3VzLWNvbG91ciwgLy8gMVxuICAgICAgICAwIDAgMCAkZ292dWstaG92ZXItd2lkdGggICAgICAgICRnb3Z1ay1ob3Zlci1jb2xvdXI7IC8vIDJcbiAgICB9XG5cbiAgICAvLyBGb3IgZGV2aWNlcyB0aGF0IGV4cGxpY2l0bHkgZG9uJ3Qgc3VwcG9ydCBob3ZlciwgZG9uJ3QgcHJvdmlkZSBhIGhvdmVyXG4gICAgLy8gc3RhdGUgKGUuZy4gb24gdG91Y2ggZGV2aWNlcyBsaWtlIGlPUykuXG4gICAgLy9cbiAgICAvLyBXZSBjYW4ndCB1c2UgYEBtZWRpYSAoaG92ZXI6IGhvdmVyKWAgYmVjYXVzZSB3ZSB3b3VsZG4ndCBnZXQgdGhlIGhvdmVyXG4gICAgLy8gc3RhdGUgaW4gYnJvd3NlcnMgdGhhdCBkb24ndCBzdXBwb3J0IGBAbWVkaWEgKGhvdmVyKWAgKGxpa2UgSW50ZXJuZXRcbiAgICAvLyBFeHBsb3Jlcikg4oCTIHNvIHdlIGhhdmUgdG8gJ3VuZG8nIHRoZSBob3ZlciBzdGF0ZSBpbnN0ZWFkLlxuICAgIEBtZWRpYSAoaG92ZXI6IG5vbmUpLCAocG9pbnRlcjogY29hcnNlKSB7XG4gICAgICAuZ292dWstcmFkaW9zX19pdGVtOmhvdmVyIC5nb3Z1ay1yYWRpb3NfX2lucHV0Om5vdCg6ZGlzYWJsZWQpICsgLmdvdnVrLXJhZGlvc19fbGFiZWw6YmVmb3JlIHtcbiAgICAgICAgYm94LXNoYWRvdzogaW5pdGlhbDtcbiAgICAgIH1cblxuICAgICAgLmdvdnVrLXJhZGlvc19faXRlbTpob3ZlciAuZ292dWstcmFkaW9zX19pbnB1dDpmb2N1cyArIC5nb3Z1ay1yYWRpb3NfX2xhYmVsOmJlZm9yZSB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRnb3Z1ay1yYWRpb3MtZm9jdXMtd2lkdGggJGdvdnVrLWZvY3VzLWNvbG91cjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpbXBvcnQgXCIuLi9lcnJvci1tZXNzYWdlL2luZGV4XCI7XG5AaW1wb3J0IFwiLi4vaGludC9pbmRleFwiO1xuQGltcG9ydCBcIi4uL2xhYmVsL2luZGV4XCI7XG5cbkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9jb21wb25lbnQvc2VsZWN0XCIpIHtcbiAgLmdvdnVrLXNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTksICRsaW5lLWhlaWdodDogMS4yNSk7XG5cbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyBzaG91bGQgdGhpcyBiZSBnbG9iYWw/XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNDBweDtcbiAgICBAaWYgJGdvdnVrLXR5cG9ncmFwaHktdXNlLXJlbSB7XG4gICAgICBoZWlnaHQ6IGdvdnVrLXB4LXRvLXJlbSg0MHB4KTtcbiAgICB9XG4gICAgcGFkZGluZzogZ292dWstc3BhY2luZygxKTsgLy8gd2FzIDVweCA0cHggNHB4IC0gc2l6ZSBvZiBpdCBzaG91bGQgYmUgYWRqdXN0ZWQgdG8gbWF0Y2ggb3RoZXIgZm9ybSBlbGVtZW50c1xuICAgIGJvcmRlcjogJGdvdnVrLWJvcmRlci13aWR0aC1mb3JtLWVsZW1lbnQgc29saWQgJGdvdnVrLWlucHV0LWJvcmRlci1jb2xvdXI7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6ICRnb3Z1ay1mb2N1cy13aWR0aCBzb2xpZCAkZ292dWstZm9jdXMtY29sb3VyO1xuICAgICAgLy8gRW5zdXJlIG91dGxpbmUgYXBwZWFycyBvdXRzaWRlIG9mIHRoZSBlbGVtZW50XG4gICAgICBvdXRsaW5lLW9mZnNldDogMDtcbiAgICAgIC8vIERvdWJsZSB0aGUgYm9yZGVyIGJ5IGFkZGluZyBpdHMgd2lkdGggYWdhaW4uIFVzZSBgYm94LXNoYWRvd2AgdG8gZG9cbiAgICAgIC8vIHRoaXMgaW5zdGVhZCBvZiBjaGFuZ2luZyBgYm9yZGVyLXdpZHRoYCAod2hpY2ggY2hhbmdlcyBlbGVtZW50IHNpemUpIGFuZFxuICAgICAgLy8gc2luY2UgYG91dGxpbmVgIGlzIGFscmVhZHkgdXNlZCBmb3IgdGhlIHllbGxvdyBmb2N1cyBzdGF0ZS5cbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwICRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50O1xuXG4gICAgICBAaW5jbHVkZSBnb3Z1ay1pZi1pZTgge1xuICAgICAgICAvLyBJRTggZG9lc24ndCBzdXBwb3J0IGBib3gtc2hhZG93YCBzbyBkb3VibGUgdGhlIGJvcmRlciB3aXRoXG4gICAgICAgIC8vIGBib3JkZXItd2lkdGhgLlxuICAgICAgICBib3JkZXItd2lkdGg6ICRnb3Z1ay1ib3JkZXItd2lkdGgtZm9ybS1lbGVtZW50ICogMjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZ292dWstc2VsZWN0IG9wdGlvbjphY3RpdmUsXG4gIC5nb3Z1ay1zZWxlY3Qgb3B0aW9uOmNoZWNrZWQsXG4gIC5nb3Z1ay1zZWxlY3Q6Zm9jdXM6Oi1tcy12YWx1ZSB7XG4gICAgY29sb3I6IGdvdnVrLWNvbG91cihcIndoaXRlXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGdvdnVrLWNvbG91cihcImJsdWVcIik7XG4gIH1cblxuICAuZ292dWstc2VsZWN0LS1lcnJvciB7XG4gICAgYm9yZGVyOiAkZ292dWstYm9yZGVyLXdpZHRoLWZvcm0tZWxlbWVudC1lcnJvciBzb2xpZCAkZ292dWstZXJyb3ItY29sb3VyO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICRnb3Z1ay1pbnB1dC1ib3JkZXItY29sb3VyO1xuICAgIH1cbiAgfVxufVxuIiwiQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL2NvbXBvbmVudC9za2lwLWxpbmtcIikge1xuICAuZ292dWstc2tpcC1saW5rIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay12aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlO1xuICAgIEBpbmNsdWRlIGdvdnVrLXR5cG9ncmFwaHktY29tbW9uO1xuICAgIEBpbmNsdWRlIGdvdnVrLWxpbmstZGVjb3JhdGlvbjtcbiAgICBAaW5jbHVkZSBnb3Z1ay1saW5rLXN0eWxlLXRleHQ7XG4gICAgQGluY2x1ZGUgZ292dWstdHlwb2dyYXBoeS1yZXNwb25zaXZlKCRzaXplOiAxNik7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiBnb3Z1ay1zcGFjaW5nKDIpIGdvdnVrLXNwYWNpbmcoMyk7XG5cbiAgICAvLyBSZXNwZWN0ICdkaXNwbGF5IGN1dG91dCcgc2FmZSBhcmVhIChhdm9pZHMgbm90Y2hlcyBhbmQgcm91bmRlZCBjb3JuZXJzKVxuICAgIEBzdXBwb3J0cyAocGFkZGluZzogdW5xdW90ZShcIm1heChjYWxjKDBweCkpXCIpKSB7XG4gICAgICAkcGFkZGluZy1zYWZlLWFyZWEtcmlnaHQ6IC13ZWJraXQtY2FsYygje2dvdnVrLXNwYWNpbmcoMyl9ICsgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCkpO1xuICAgICAgJHBhZGRpbmctc2FmZS1hcmVhLXJpZ2h0OiBjYWxjKCN7Z292dWstc3BhY2luZygzKX0gKyBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KSk7XG4gICAgICAkcGFkZGluZy1zYWZlLWFyZWEtbGVmdDogLXdlYmtpdC1jYWxjKCN7Z292dWstc3BhY2luZygzKX0gKyBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpKTtcbiAgICAgICRwYWRkaW5nLXNhZmUtYXJlYS1sZWZ0OiBjYWxjKCN7Z292dWstc3BhY2luZygzKX0gKyBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpKTtcblxuICAgICAgLy8gVXNlIG1heCgpIHRvIHBpY2sgbGFyZ2VzdCBwYWRkaW5nLCBkZWZhdWx0IG9yIHdpdGggc2FmZSBhcmVhXG4gICAgICAvLyBFc2NhcGVkIGR1ZSB0byBTYXNzIG1heCgpIHZzLiBDU1MgbmF0aXZlIG1heCgpXG4gICAgICBwYWRkaW5nLXJpZ2h0OiB1bnF1b3RlKFwibWF4KCN7Z292dWstc3BhY2luZygzKX0sICN7JHBhZGRpbmctc2FmZS1hcmVhLXJpZ2h0fSlcIik7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHVucXVvdGUoXCJtYXgoI3tnb3Z1ay1zcGFjaW5nKDMpfSwgI3skcGFkZGluZy1zYWZlLWFyZWEtbGVmdH0pXCIpO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogJGdvdnVrLWZvY3VzLXdpZHRoIHNvbGlkICRnb3Z1ay1mb2N1cy1jb2xvdXI7XG4gICAgICBvdXRsaW5lLW9mZnNldDogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnb3Z1ay1mb2N1cy1jb2xvdXI7XG5cbiAgICAgIC8vIFVuZG8gdW53YW50ZWQgY2hhbmdlcyB3aGVuIGdsb2JhbCBzdHlsZXMgYXJlIGVuYWJsZWRcbiAgICAgIEBpZiAoJGdvdnVrLWdsb2JhbC1zdHlsZXMpIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vLy9cbi8vLyBAZ3JvdXAgaGVscGVycy9hY2Nlc3NpYmlsaXR5XG4vLy8vXG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgdmlzdWFsbHksIGJ1dCBoYXZlIGl0IGF2YWlsYWJsZSBmb3Igc2NyZWVuIHJlYWRlcnNcbi8vL1xuLy8vIEBsaW5rIGh0dHBzOi8vc25vb2suY2EvYXJjaGl2ZXMvaHRtbF9hbmRfY3NzL2hpZGluZy1jb250ZW50LWZvci1hY2Nlc3NpYmlsaXR5XG4vLy8gICAtIEhpZGluZyBDb250ZW50IGZvciBBY2Nlc3NpYmlsaXR5LCBKb25hdGhhbiBTbm9vaywgRmVicnVhcnkgMjAxMVxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2Jsb2IvOWYxMzY5NWQyMWZmOTJjNTVjNzhkZmE5ZjE2YmIwMmExYjZlOTExZi9zcmMvY3NzL21haW4uY3NzI0wxMjEtTDE1OFxuLy8vICAgLSBoNWJwL2h0bWw1LWJvaWxlcnBsYXRlIC0gVGhhbmtzIVxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkaW1wb3J0YW50IFt0cnVlXSAtIFdoZXRoZXIgdG8gbWFyayBhcyBgIWltcG9ydGFudGBcbi8vL1xuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay12aXN1YWxseS1oaWRkZW4oJGltcG9ydGFudDogdHJ1ZSkge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCwgbnVsbCk7XG5cbiAgd2lkdGg6IDFweCBpZigkaW1wb3J0YW50LCAhaW1wb3J0YW50LCBudWxsKTtcbiAgaGVpZ2h0OiAxcHggaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCwgbnVsbCk7XG4gIC8vIElmIG1hcmdpbiBpcyBzZXQgdG8gYSBuZWdhdGl2ZSB2YWx1ZSBpdCBjYW4gY2F1c2UgdGV4dCB0byBiZSBhbm5vdW5jZWQgaW5cbiAgLy8gdGhlIHdyb25nIG9yZGVyIGluIFZvaWNlT3ZlciBmb3IgT1NYXG4gIG1hcmdpbjogMCBpZigkaW1wb3J0YW50LCAhaW1wb3J0YW50LCBudWxsKTtcbiAgcGFkZGluZzogMCBpZigkaW1wb3J0YW50LCAhaW1wb3J0YW50LCBudWxsKTtcblxuICBvdmVyZmxvdzogaGlkZGVuIGlmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQsIG51bGwpO1xuICBjbGlwOiByZWN0KDAgMCAwIDApIGlmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQsIG51bGwpO1xuICAtd2Via2l0LWNsaXAtcGF0aDogaW5zZXQoNTAlKSBpZigkaW1wb3J0YW50LCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAgICAgICBjbGlwLXBhdGg6IGluc2V0KDUwJSkgaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCwgbnVsbCk7XG5cbiAgYm9yZGVyOiAwIGlmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQsIG51bGwpO1xuXG4gIC8vIEZvciBsb25nIGNvbnRlbnQsIGxpbmUgZmVlZHMgYXJlIG5vdCBpbnRlcnByZXRlZCBhcyBzcGFjZXMgYW5kIHNtYWxsIHdpZHRoXG4gIC8vIGNhdXNlcyBjb250ZW50IHRvIHdyYXAgMSB3b3JkIHBlciBsaW5lOlxuICAvLyBodHRwczovL21lZGl1bS5jb20vQGplc3NlYmVhY2gvYmV3YXJlLXNtdXNoZWQtb2ZmLXNjcmVlbi1hY2Nlc3NpYmxlLXRleHQtNTk1MmE0YzJjYmZlXG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCwgbnVsbCk7XG59XG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgdmlzdWFsbHksIGJ1dCBoYXZlIGl0IGF2YWlsYWJsZSBmb3Igc2NyZWVuIHJlYWRlcnMgd2hpbHN0XG4vLy8gYWxsb3dpbmcgdGhlIGVsZW1lbnQgdG8gYmUgZm9jdXNlZCB3aGVuIG5hdmlnYXRlZCB0byB2aWEgdGhlIGtleWJvYXJkIChlLmcuXG4vLy8gZm9yIHRoZSBza2lwIGxpbmspXG4vLy9cbi8vLyBUaGlzIGlzIHNsaWdodGx5IGxlc3Mgb3BpbmlvbmF0ZWQgYWJvdXQgYm9yZGVycyBhbmQgcGFkZGluZyB0byBtYWtlIGl0XG4vLy8gZWFzaWVyIHRvIHN0eWxlIHRoZSBmb2N1c3NlZCBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkaW1wb3J0YW50IFt0cnVlXSAtIFdoZXRoZXIgdG8gbWFyayBhcyBgIWltcG9ydGFudGBcbi8vL1xuLy8vIEBhY2Nlc3MgcHVibGljXG5cbkBtaXhpbiBnb3Z1ay12aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlKCRpbXBvcnRhbnQ6IHRydWUpIHtcbiAgcG9zaXRpb246IGFic29sdXRlIGlmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQsIG51bGwpO1xuXG4gIHdpZHRoOiAxcHggaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCwgbnVsbCk7XG4gIGhlaWdodDogMXB4IGlmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQsIG51bGwpO1xuICAvLyBJZiBtYXJnaW4gaXMgc2V0IHRvIGEgbmVnYXRpdmUgdmFsdWUgaXQgY2FuIGNhdXNlIHRleHQgdG8gYmUgYW5ub3VuY2VkIGluXG4gIC8vIHRoZSB3cm9uZyBvcmRlciBpbiBWb2ljZU92ZXIgZm9yIE9TWFxuICBtYXJnaW46IDAgaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCwgbnVsbCk7XG5cbiAgb3ZlcmZsb3c6IGhpZGRlbiBpZigkaW1wb3J0YW50LCAhaW1wb3J0YW50LCBudWxsKTtcbiAgY2xpcDogcmVjdCgwIDAgMCAwKSBpZigkaW1wb3J0YW50LCAhaW1wb3J0YW50LCBudWxsKTtcbiAgLXdlYmtpdC1jbGlwLXBhdGg6IGluc2V0KDUwJSkgaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICAgICAgY2xpcC1wYXRoOiBpbnNldCg1MCUpIGlmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQsIG51bGwpO1xuXG4gIC8vIEZvciBsb25nIGNvbnRlbnQsIGxpbmUgZmVlZHMgYXJlIG5vdCBpbnRlcnByZXRlZCBhcyBzcGFjZXMgYW5kIHNtYWxsIHdpZHRoXG4gIC8vIGNhdXNlcyBjb250ZW50IHRvIHdyYXAgMSB3b3JkIHBlciBsaW5lOlxuICAvLyBodHRwczovL21lZGl1bS5jb20vQGplc3NlYmVhY2gvYmV3YXJlLXNtdXNoZWQtb2ZmLXNjcmVlbi1hY2Nlc3NpYmxlLXRleHQtNTk1MmE0YzJjYmZlXG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCwgbnVsbCk7XG5cbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHBvc2l0aW9uOiBzdGF0aWMgaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCwgbnVsbCk7XG5cbiAgICB3aWR0aDogYXV0byBpZigkaW1wb3J0YW50LCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICBoZWlnaHQ6IGF1dG8gaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgbWFyZ2luOiBpbmhlcml0IGlmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQsIG51bGwpO1xuXG4gICAgb3ZlcmZsb3c6IHZpc2libGUgaWYoJGltcG9ydGFudCwgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgY2xpcDogYXV0byBpZigkaW1wb3J0YW50LCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAtd2Via2l0LWNsaXAtcGF0aDogbm9uZSBpZigkaW1wb3J0YW50LCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAgICAgICAgIGNsaXAtcGF0aDogbm9uZSBpZigkaW1wb3J0YW50LCAhaW1wb3J0YW50LCBudWxsKTtcblxuICAgIHdoaXRlLXNwYWNlOiBpbmhlcml0IGlmKCRpbXBvcnRhbnQsICFpbXBvcnRhbnQsIG51bGwpO1xuICB9XG59XG4iLCJAaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvY29tcG9uZW50L3RhYmxlXCIpIHtcbiAgLmdvdnVrLXRhYmxlIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAxOSk7XG4gICAgQGluY2x1ZGUgZ292dWstdGV4dC1jb2xvdXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgQGluY2x1ZGUgZ292dWstcmVzcG9uc2l2ZS1tYXJnaW4oNiwgXCJib3R0b21cIik7XG5cbiAgICBib3JkZXItc3BhY2luZzogMDtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICB9XG5cbiAgLmdvdnVrLXRhYmxlX19oZWFkZXIge1xuICAgIEBpbmNsdWRlIGdvdnVrLXR5cG9ncmFwaHktd2VpZ2h0LWJvbGQ7XG4gIH1cblxuICAuZ292dWstdGFibGVfX2hlYWRlcixcbiAgLmdvdnVrLXRhYmxlX19jZWxsIHtcbiAgICBwYWRkaW5nOiBnb3Z1ay1zcGFjaW5nKDIpIGdvdnVrLXNwYWNpbmcoNCkgZ292dWstc3BhY2luZygyKSAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ292dWstYm9yZGVyLWNvbG91cjtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgLy8gR09WLlVLIEVsZW1lbnRzIHNldHMgdGhlIGZvbnQtc2l6ZSBhbmQgbGluZS1oZWlnaHQgZm9yIGFsbCBoZWFkZXJzIGFuZCBjZWxsc1xuICAgIC8vIGluIHRhYmxlcy5cbiAgICBAaW5jbHVkZSBnb3Z1ay1jb21wYXRpYmlsaXR5KGdvdnVrX2VsZW1lbnRzKSB7XG4gICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICB9XG4gIH1cblxuICAuZ292dWstdGFibGVfX2NlbGwtLW51bWVyaWMge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IGZhbHNlLCAkdGFidWxhcjogdHJ1ZSk7XG4gIH1cblxuICAuZ292dWstdGFibGVfX2hlYWRlci0tbnVtZXJpYyxcbiAgLmdvdnVrLXRhYmxlX19jZWxsLS1udW1lcmljIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuXG4gIC5nb3Z1ay10YWJsZV9faGVhZGVyOmxhc3QtY2hpbGQsXG4gIC5nb3Z1ay10YWJsZV9fY2VsbDpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG5cbiAgLmdvdnVrLXRhYmxlX19jYXB0aW9uIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1ib2xkO1xuXG4gICAgZGlzcGxheTogdGFibGUtY2FwdGlvbjtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgLy8gTW9kaWZpZXJzIHRoYXQgbWFrZSBjYXB0aW9ucyBsb29rIG1vcmUgbGlrZSB0aGVpciBlcXVpdmFsZW50IGhlYWRpbmdzXG5cbiAgLmdvdnVrLXRhYmxlX19jYXB0aW9uLS14bCB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogNDgsICR3ZWlnaHQ6IGJvbGQpO1xuICAgIG1hcmdpbi1ib3R0b206IGdvdnVrLXNwYWNpbmcoMyk7XG4gIH1cblxuICAuZ292dWstdGFibGVfX2NhcHRpb24tLWwge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IDM2LCAkd2VpZ2h0OiBib2xkKTtcbiAgICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDMpO1xuICB9XG5cbiAgLmdvdnVrLXRhYmxlX19jYXB0aW9uLS1tIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAyNCwgJHdlaWdodDogYm9sZCk7XG4gICAgbWFyZ2luLWJvdHRvbTogZ292dWstc3BhY2luZygzKTtcbiAgfVxuXG4gIC5nb3Z1ay10YWJsZV9fY2FwdGlvbi0tcyB7XG4gICAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTksICR3ZWlnaHQ6IGJvbGQpO1xuICB9XG59XG4iLCJAaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvY29tcG9uZW50L3dhcm5pbmctdGV4dFwiKSB7XG4gIC5nb3Z1ay13YXJuaW5nLXRleHQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig2LCBcImJvdHRvbVwiKTtcbiAgICBwYWRkaW5nOiBnb3Z1ay1zcGFjaW5nKDIpIDA7XG4gIH1cblxuICAuZ292dWstd2FybmluZy10ZXh0X19hc3Npc3RpdmUge1xuICAgIEBpbmNsdWRlIGdvdnVrLXZpc3VhbGx5LWhpZGRlbjtcbiAgfVxuXG4gIC5nb3Z1ay13YXJuaW5nLXRleHRfX2ljb24ge1xuICAgIEBpbmNsdWRlIGdvdnVrLWZvbnQoJHNpemU6IGZhbHNlLCAkd2VpZ2h0OiBib2xkKTtcblxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcblxuICAgIG1pbi13aWR0aDogMzVweDtcbiAgICBtaW4taGVpZ2h0OiAzNXB4O1xuICAgIG1hcmdpbi10b3A6IC03cHg7XG5cbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgICBtYXJnaW4tdG9wOiAtNXB4O1xuICAgIH1cblxuICAgIC8vIFdoZW4gYSB1c2VyIGN1c3RvbWlzZXMgdGhlaXIgY29sb3VycyB0aGUgYmFja2dyb3VuZCBjb2xvdXIgd2lsbCBvZnRlbiBiZSByZW1vdmVkLlxuICAgIC8vIEFkZGluZyBhIGJvcmRlciB0byB0aGUgY29tcG9uZW50IGtlZXBzIGl0J3Mgc2hhcGUgYXMgYSBjaXJjbGUuXG4gICAgYm9yZGVyOiAzcHggc29saWQgZ292dWstY29sb3VyKFwiYmxhY2tcIik7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gICAgY29sb3I6IGdvdnVrLWNvbG91cihcIndoaXRlXCIpO1xuICAgIGJhY2tncm91bmQ6IGdvdnVrLWNvbG91cihcImJsYWNrXCIpO1xuXG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyOXB4O1xuXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgLy8gUHJldmVudCB0aGUgZXhjbGFtYXRpb24gbWFyayBmcm9tIGJlaW5nIGluY2x1ZGVkIHdoZW4gdGhlIHdhcm5pbmcgdGV4dFxuICAgIC8vIGlzIGNvcGllZCwgZm9yIGV4YW1wbGUuXG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgICAvLyBJbXByb3ZlIHJlbmRlcmluZyBpbiBXaW5kb3dzIEhpZ2ggQ29udHJhc3QgTW9kZSAoRWRnZSksIHdoZXJlIGFcbiAgICAvLyByZWFkYWJpbGl0eSBiYWNrcGxhdGUgYmVoaW5kIHRoZSBleGNsYW1hdGlvbiBtYXJrIG9ic2N1cmVzIHRoZSBjaXJjbGVcbiAgICBmb3JjZWQtY29sb3ItYWRqdXN0OiBub25lO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiB3aW5kb3dUZXh0O1xuICAgICAgY29sb3I6IHdpbmRvd1RleHQ7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAuZ292dWstd2FybmluZy10ZXh0X190ZXh0IHtcbiAgICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOiAxOSwgJHdlaWdodDogYm9sZCk7XG4gICAgQGluY2x1ZGUgZ292dWstdGV4dC1jb2xvdXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy1sZWZ0OiA0NXB4O1xuICB9XG59XG4iLCJAaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvdXRpbGl0aWVzL3Zpc3VhbGx5LWhpZGRlblwiKSB7XG4gIC5nb3Z1ay12aXN1YWxseS1oaWRkZW4ge1xuICAgIEBpbmNsdWRlIGdvdnVrLXZpc3VhbGx5LWhpZGRlbjtcbiAgfVxuXG4gIC5nb3Z1ay12aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay12aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlO1xuICB9XG59XG4iLCJAaWYgbm90IG1peGluLWV4aXN0cyhcImdvdnVrLWV4cG9ydHNcIikge1xuICBAd2FybiBcIkltcG9ydGluZyBpdGVtcyBmcm9tIHRoZSBvdmVycmlkZXMgbGF5ZXIgd2l0aG91dCBmaXJzdCBpbXBvcnRpbmcgYGJhc2VgIGlzIGRlcHJlY2F0ZWQsIGFuZCB3aWxsIG5vIGxvbmdlciB3b3JrIGFzIG9mIEdPVi5VSyBGcm9udGVuZCB2NC4wLlwiO1xufVxuXG5AaW1wb3J0IFwiLi4vYmFzZVwiO1xuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9vdmVycmlkZXMvZGlzcGxheVwiKSB7XG4gIC5nb3Z1ay1cXCEtZGlzcGxheS1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmdvdnVrLVxcIS1kaXNwbGF5LWlubGluZS1ibG9jayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZ292dWstXFwhLWRpc3BsYXktYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZ292dWstXFwhLWRpc3BsYXktbm9uZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJG1lZGlhLXR5cGU6IHByaW50KSB7XG4gICAgLmdvdnVrLVxcIS1kaXNwbGF5LW5vbmUtcHJpbnQge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIiwiQGlmIG5vdCBtaXhpbi1leGlzdHMoXCJnb3Z1ay1leHBvcnRzXCIpIHtcbiAgQHdhcm4gXCJJbXBvcnRpbmcgaXRlbXMgZnJvbSB0aGUgb3ZlcnJpZGVzIGxheWVyIHdpdGhvdXQgZmlyc3QgaW1wb3J0aW5nIGBiYXNlYCBpcyBkZXByZWNhdGVkLCBhbmQgd2lsbCBubyBsb25nZXIgd29yayBhcyBvZiBHT1YuVUsgRnJvbnRlbmQgdjQuMC5cIjtcbn1cblxuQGltcG9ydCBcIi4uL2Jhc2VcIjtcblxuLy8vL1xuLy8vIEBncm91cCBvdmVycmlkZXNcbi8vLy9cblxuLy8vIERpcmVjdGlvbnMgZm9yIHNwYWNpbmdcbi8vL1xuLy8vIEB0eXBlIE1hcFxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuXG4kX3NwYWNpbmctZGlyZWN0aW9uczogKFxuICBcInRvcFwiLFxuICBcInJpZ2h0XCIsXG4gIFwiYm90dG9tXCIsXG4gIFwibGVmdFwiXG4pICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBvdmVycmlkZSBjbGFzc2VzXG4vLy9cbi8vLyBHZW5lcmF0ZSBzcGFjaW5nIG92ZXJyaWRlIGNsYXNzZXMgZm9yIHRoZSBnaXZlbiBwcm9wZXJ0eSAoZS5nLiBtYXJnaW4pXG4vLy8gZm9yIGVhY2ggcG9pbnQgaW4gdGhlIHNwYWNpbmcgc2NhbGUuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHByb3BlcnR5IC0gUHJvcGVydHkgdG8gYWRkIHNwYWNpbmcgdG8gKGUuZy4gJ21hcmdpbicpXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZ292dWstXFwhLW1hcmdpbi0wIHtcbi8vLyAgICAgIG1hcmdpbjogMDtcbi8vLyAgIH1cbi8vL1xuLy8vICAuZ292dWstXFwhLW1hcmdpbi10b3AtMSB7XG4vLy8gICAgIG1hcmdpbi10b3A6IFt3aGF0ZXZlciBzcGFjaW5nIHBvaW50IDEgaXMuLi5dXG4vLy8gICB9XG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcblxuQG1peGluIF9nb3Z1ay1nZW5lcmF0ZS1zcGFjaW5nLW92ZXJyaWRlcygkcHJvcGVydHkpIHtcbiAgLy8gRm9yIGVhY2ggcG9pbnQgaW4gdGhlIHNwYWNpbmcgc2NhbGUgKGRlZmluZWQgaW4gc2V0dGluZ3MpLCBjcmVhdGUgYW5cbiAgLy8gb3ZlcnJpZGUgdGhhdCBhZmZlY3RzIGFsbCBkaXJlY3Rpb25zLi4uXG4gIEBlYWNoICRzY2FsZS1wb2ludCwgJHNjYWxlLW1hcCBpbiAkZ292dWstc3BhY2luZy1yZXNwb25zaXZlLXNjYWxlIHtcblxuICAgIC5nb3Z1ay1cXCEtI3skcHJvcGVydHl9LSN7JHNjYWxlLXBvaW50fSB7XG5cbiAgICAgIEBpbmNsdWRlIF9nb3Z1ay1yZXNwb25zaXZlLXNwYWNpbmcoJHNjYWxlLXBvaW50LCAkcHJvcGVydHksIFwiYWxsXCIsIHRydWUpO1xuICAgIH1cblxuICAgIC8vIC4uLiBhbmQgdGhlbiBhbiBvdmVycmlkZSBmb3IgZWFjaCBpbmRpdmlkdWFsIGRpcmVjdGlvblxuICAgIEBlYWNoICRkaXJlY3Rpb24gaW4gJF9zcGFjaW5nLWRpcmVjdGlvbnMge1xuXG4gICAgICAuZ292dWstXFwhLSN7JHByb3BlcnR5fS0jeyRkaXJlY3Rpb259LSN7JHNjYWxlLXBvaW50fSB7XG4gICAgICAgIEBpbmNsdWRlIF9nb3Z1ay1yZXNwb25zaXZlLXNwYWNpbmcoJHNjYWxlLXBvaW50LCAkcHJvcGVydHksICRkaXJlY3Rpb24sIHRydWUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBnb3Z1ay1leHBvcnRzKFwiZ292dWsvb3ZlcnJpZGVzL3NwYWNpbmdcIikge1xuICBAaW5jbHVkZSBfZ292dWstZ2VuZXJhdGUtc3BhY2luZy1vdmVycmlkZXMoXCJtYXJnaW5cIik7XG4gIEBpbmNsdWRlIF9nb3Z1ay1nZW5lcmF0ZS1zcGFjaW5nLW92ZXJyaWRlcyhcInBhZGRpbmdcIik7XG59XG4iLCJAaWYgbm90IG1peGluLWV4aXN0cyhcImdvdnVrLWV4cG9ydHNcIikge1xuICBAd2FybiBcIkltcG9ydGluZyBpdGVtcyBmcm9tIHRoZSBvdmVycmlkZXMgbGF5ZXIgd2l0aG91dCBmaXJzdCBpbXBvcnRpbmcgYGJhc2VgIGlzIGRlcHJlY2F0ZWQsIGFuZCB3aWxsIG5vIGxvbmdlciB3b3JrIGFzIG9mIEdPVi5VSyBGcm9udGVuZCB2NC4wLlwiO1xufVxuXG5AaW1wb3J0IFwiLi4vYmFzZVwiO1xuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9vdmVycmlkZXMvdGV4dC1hbGlnblwiKSB7XG4gIC5nb3Z1ay1cXCEtdGV4dC1hbGlnbi1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZ292dWstXFwhLXRleHQtYWxpZ24tY2VudHJlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5nb3Z1ay1cXCEtdGV4dC1hbGlnbi1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiQGlmIG5vdCBtaXhpbi1leGlzdHMoXCJnb3Z1ay1leHBvcnRzXCIpIHtcbiAgQHdhcm4gXCJJbXBvcnRpbmcgaXRlbXMgZnJvbSB0aGUgb3ZlcnJpZGVzIGxheWVyIHdpdGhvdXQgZmlyc3QgaW1wb3J0aW5nIGBiYXNlYCBpcyBkZXByZWNhdGVkLCBhbmQgd2lsbCBubyBsb25nZXIgd29yayBhcyBvZiBHT1YuVUsgRnJvbnRlbmQgdjQuMC5cIjtcbn1cblxuQGltcG9ydCBcIi4uL2Jhc2VcIjtcblxuQGluY2x1ZGUgZ292dWstZXhwb3J0cyhcImdvdnVrL292ZXJyaWRlcy90eXBvZ3JhcGh5XCIpIHtcbiAgLy8gRm9udCBzaXplIGFuZCBsaW5lIGhlaWdodFxuXG4gIC8vIEdlbmVyYXRlIHR5cG9ncmFwaHkgb3ZlcnJpZGUgY2xhc3NlcyBmb3IgZWFjaCByZXNwb25zaXZlIGZvbnQgbWFwIGluIHRoZVxuICAvLyB0eXBvZ3JhcGh5IHNjYWxlIGVnIC5nb3Z1ay1cXCEtZm9udC1zaXplLTgwXG4gIEBlYWNoICRzaXplIGluIG1hcC1rZXlzKCRnb3Z1ay10eXBvZ3JhcGh5LXNjYWxlKSB7XG4gICAgLmdvdnVrLVxcIS1mb250LXNpemUtI3skc2l6ZX0ge1xuICAgICAgQGluY2x1ZGUgZ292dWstdHlwb2dyYXBoeS1yZXNwb25zaXZlKCRzaXplLCAkaW1wb3J0YW50OiB0cnVlKTtcbiAgICB9XG4gIH1cblxuICAvLyBXZWlnaHRzXG5cbiAgLmdvdnVrLVxcIS1mb250LXdlaWdodC1yZWd1bGFyIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1yZWd1bGFyKCRpbXBvcnRhbnQ6IHRydWUpO1xuICB9XG5cbiAgLmdvdnVrLVxcIS1mb250LXdlaWdodC1ib2xkIHtcbiAgICBAaW5jbHVkZSBnb3Z1ay10eXBvZ3JhcGh5LXdlaWdodC1ib2xkKCRpbXBvcnRhbnQ6IHRydWUpO1xuICB9XG59XG4iLCJAaWYgbm90IG1peGluLWV4aXN0cyhcImdvdnVrLWV4cG9ydHNcIikge1xuICBAd2FybiBcIkltcG9ydGluZyBpdGVtcyBmcm9tIHRoZSBvdmVycmlkZXMgbGF5ZXIgd2l0aG91dCBmaXJzdCBpbXBvcnRpbmcgYGJhc2VgIGlzIGRlcHJlY2F0ZWQsIGFuZCB3aWxsIG5vIGxvbmdlciB3b3JrIGFzIG9mIEdPVi5VSyBGcm9udGVuZCB2NC4wLlwiO1xufVxuXG5AaW1wb3J0IFwiLi4vYmFzZVwiO1xuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbkBpbmNsdWRlIGdvdnVrLWV4cG9ydHMoXCJnb3Z1ay9vdmVycmlkZXMvd2lkdGhcIikge1xuICAuZ292dWstXFwhLXdpZHRoLWZ1bGwge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZ292dWstXFwhLXdpZHRoLXRocmVlLXF1YXJ0ZXJzIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgICAgd2lkdGg6IDc1JSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1cXCEtd2lkdGgtdHdvLXRoaXJkcyB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiB0YWJsZXQpIHtcbiAgICAgIHdpZHRoOiA2Ni42NiUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuZ292dWstXFwhLXdpZHRoLW9uZS1oYWxmIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1cXCEtd2lkdGgtb25lLXRoaXJkIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgZ292dWstbWVkaWEtcXVlcnkoJGZyb206IHRhYmxldCkge1xuICAgICAgd2lkdGg6IDMzLjMzJSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5nb3Z1ay1cXCEtd2lkdGgtb25lLXF1YXJ0ZXIge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBUYXNrIGxpc3QgcGF0dGVyblxuXG4uYXBwLXRhc2stbGlzdCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgbWluLXdpZHRoOiA1NTBweDtcbiAgfVxufVxuXG4uYXBwLXRhc2stbGlzdF9fc2VjdGlvbiB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBAaW5jbHVkZSBnb3Z1ay1mb250KCRzaXplOjI0LCAkd2VpZ2h0OiBib2xkKTtcbn1cblxuLmFwcC10YXNrLWxpc3RfX3NlY3Rpb24tbnVtYmVyIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcblxuICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgbWluLXdpZHRoOiBnb3Z1ay1zcGFjaW5nKDYpO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmFwcC10YXNrLWxpc3RfX2l0ZW1zIHtcbiAgQGluY2x1ZGUgZ292dWstZm9udCgkc2l6ZTogMTkpO1xuICBAaW5jbHVkZSBnb3Z1ay1yZXNwb25zaXZlLW1hcmdpbig5LCBcImJvdHRvbVwiKTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBAaW5jbHVkZSBnb3Z1ay1tZWRpYS1xdWVyeSgkZnJvbTogdGFibGV0KSB7XG4gICAgcGFkZGluZy1sZWZ0OiBnb3Z1ay1zcGFjaW5nKDYpO1xuICB9XG59XG5cbi5hcHAtdGFzay1saXN0X19pdGVtIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRnb3Z1ay1ib3JkZXItY29sb3VyO1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctdG9wOiBnb3Z1ay1zcGFjaW5nKDIpO1xuICBwYWRkaW5nLWJvdHRvbTogZ292dWstc3BhY2luZygyKTtcbiAgQGluY2x1ZGUgZ292dWstY2xlYXJmaXg7XG59XG5cbi5hcHAtdGFzay1saXN0X19pdGVtOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRnb3Z1ay1ib3JkZXItY29sb3VyO1xufVxuXG4uYXBwLXRhc2stbGlzdF9fdGFzay1uYW1lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiA0NTBweCkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cbi8vIFRoZSBgYXBwLXRhc2stbGlzdF9fdGFzay1jb21wbGV0ZWRgIGNsYXNzIHdhcyBwcmV2aW91c2x5IHVzZWQgb24gdGhlIHRhc2tcbi8vIGxpc3QgZm9yIHRoZSBjb21wbGV0ZWQgdGFnIChjaGFuZ2VkIGluIDg2YzkwZWMpIOKAkyBpdCdzIHN0aWxsIGluY2x1ZGVkIGhlcmUgdG9cbi8vIGF2b2lkIGJyZWFraW5nIHRhc2sgbGlzdHMgaW4gZXhpc3RpbmcgcHJvdG90eXBlcy5cbi5hcHAtdGFzay1saXN0X190YWcsXG4uYXBwLXRhc2stbGlzdF9fdGFzay1jb21wbGV0ZWQge1xuICBtYXJnaW4tdG9wOiBnb3Z1ay1zcGFjaW5nKDIpO1xuICBtYXJnaW4tYm90dG9tOiBnb3Z1ay1zcGFjaW5nKDEpO1xuXG4gIEBpbmNsdWRlIGdvdnVrLW1lZGlhLXF1ZXJ5KCRmcm9tOiA0NTBweCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbiIsIkBtZWRpYSAobWluLXdpZHRoOiA2NDFweCkge1xuICAuc2Rkcy1zYXZlLWxpbmsge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cblxuLnNkZHMtc2F2ZS1saW5rIHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbn1cblxuLmF1dG9jb21wbGV0ZV9fd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1mYW1pbHk6IFwiR0RTIFRyYW5zcG9ydFwiLCBhcmlhbCwgc2Fucy1zZXJpZjtcbn1cbiIsIi5nb3Z1ay1oZWFkZXJfX2xpbmstLXNlcnZpY2UtbmFtZSB7XG4gICAgd2lkdGg6IDcwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uc2lnbm91dC1saW5rIHtcbiAgICB3aWR0aDogMzAlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgcGFkZGluZzogNXB4IDA7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5kaXNwbGF5LXdyYXBwZWQge1xuICAgIG92ZXJmbG93LXdyYXA6IGFueXdoZXJlO1xufVxuIl19 */
