﻿.ids-input .ids-input-field .btn-clear,.ids-input .ids-textarea-field .btn-clear,.ids-textarea .ids-input-field .btn-clear,.ids-textarea .ids-textarea-field .btn-clear{outline:0}.ids-input .ids-input-field .btn-clear.is-empty,.ids-input .ids-textarea-field .btn-clear.is-empty,.ids-textarea .ids-input-field .btn-clear.is-empty,.ids-textarea .ids-textarea-field .btn-clear.is-empty{display:none}.ids-input .ids-input-field .btn-clear [slot=icon],.ids-input .ids-textarea-field .btn-clear [slot=icon],.ids-textarea .ids-input-field .btn-clear [slot=icon],.ids-textarea .ids-textarea-field .btn-clear [slot=icon]{margin-inline-start:0;color:inherit}.ids-input.has-clearable .btn-clear.is-empty,.ids-textarea.has-clearable .btn-clear.is-empty{display:none;pointer-events:none}.ids-trigger-field .ids-input-field.has-clearable{padding-inline-end:55px}.ids-trigger-field .ids-input-field.has-clearable~.btn-clear{margin-top:0;right:-8px}.btn-clear[part=clearable-button] [slot=icon]{padding:2px}.icon-dirty{--ids-icon-height-default: 12px !important;--ids-icon-width-default: 12px !important;position:absolute;color:var(--ids-input-dirty-indicator-color-background-dirty);top:0}.icon-dirty[dir=rtl]{transform:rotate(90deg);top:0}.icon-dirty.tab-dirty-tracker{inset-inline-start:0}.ids-color-picker .icon-dirty{margin-inline-start:35px}.ids-color-picker.compact .icon-dirty{margin-inline-start:27px}.ids-textarea .icon-dirty{top:1px;margin-inline-start:1px}.ids-textarea .icon-dirty[dir=rtl]{top:2px}.icon-field-indicator{position:absolute;top:0;pointer-events:none}.icon-field-indicator[dir=rtl]{transform:rotate(90deg);top:0}.icon-field-indicator-info{display:var(--ids-field-indicator-info-visibility, flex);align-items:center;margin-inline-end:var(--ids-field-indicator-info-margin, var(--ids-space-xs));cursor:pointer;color:var(--ids-field-indicator-icon-color, --ids-color-info-default)}.field-indicator-neutral{--ids-field-indicator-icon-color: var(--ids-color-accent-neutral-weak)}.field-indicator-neutral .icon-field-indicator{color:var(--ids-color-accent-neutral-weak)}.field-indicator-info{--ids-field-indicator-icon-color: var(--ids-color-info-default)}.field-indicator-info .icon-field-indicator{color:var(--ids-color-info-default)}.field-indicator-success{--ids-field-indicator-icon-color: var(--ids-color-success-default)}.field-indicator-success .icon-field-indicator{color:var(--ids-color-success-default)}.field-indicator-caution{--ids-field-indicator-icon-color: var(--ids-color-caution-default)}.field-indicator-caution .icon-field-indicator{color:var(--ids-color-caution-default)}.field-indicator-warning{--ids-field-indicator-icon-color: var(--ids-color-warning-default)}.field-indicator-warning .icon-field-indicator{color:var(--ids-color-warning-default)}.field-indicator-error{--ids-field-indicator-icon-color: var(--ids-color-error-default)}.field-indicator-error .icon-field-indicator{color:var(--ids-color-error-default)}[class*=field-indicator-].has-focus .icon-field-indicator-info{display:none}.label-state-hidden .ids-label-text.empty::before{content:" "}:host([label-state=collapsed]) .ids-input label{display:none;width:0}:host([label-state=collapsed][label-position=inline-start][label-alignment=end]) .ids-input{gap:0}:host([label-state=collapsed][label-position=inline-start][label-alignment=end][label-wrap=ellipsis-no-stretch]) .ids-input .ids-label-text{margin-inline-end:0}.validation-message{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:flex;font-family:var(--ids-font-family-default),var(--ids-font-family-system-sans);margin-top:var(--ids-space-2xs);max-width:var(--ids-input-width-full)}.validation-message.has-custom-icon{color:var(--ids-icon-color-default)}.validation-message.disabled{color:var(--ids-input-color-text-disabled)}.validation-message .ids-icon{margin-inline-end:var(--ids-space-2xs)}.validation-message.alert{color:var(--ids-color-caution-default)}.validation-message.alert.disabled{color:var(--ids-color-yellow-30)}.validation-message.warning{color:var(--ids-color-warning-default)}.validation-message.warning.disabled{color:var(--ids-color-orange-30)}.validation-message.error{color:var(--ids-color-error-default)}.validation-message.error.disabled{color:var(--ids-color-red-30)}.validation-message.info{color:var(--ids-color-info-default)}.validation-message.info.disabled{color:var(--ids-color-blue-30)}.validation-message.success{color:var(--ids-color-success-default)}.validation-message.success.disabled{color:var(--ids-color-green-30)}.validation-message[hidden]{display:none}:host([suppress-error-message]) .validation-message{display:none}:host([label-position=inline-start]) .ids-input,:host([label-position=inline-start]) .ids-textarea{display:flex;align-items:var(--ids-label-align-y, center)}:host([label-position=inline-start]) .ids-input label,:host([label-position=inline-start]) .ids-textarea label{width:var(--ids-label-width);padding-block:var(--ids-label-padding-block);padding-inline-end:0;box-sizing:border-box;flex-shrink:0}:host([label-position=inline-start]) .ids-input .validation-message,:host([label-position=inline-start]) .ids-textarea .validation-message{width:100%;margin-block-start:var(--ids-space-2xs)}@media(max-width: 927px){:host([label-position=inline-start]) .ids-input .validation-message,:host([label-position=inline-start]) .ids-textarea .validation-message{margin-inline-start:0}}@media(width > 320px){:host([label-position=inline-start]) .ids-input .ids-label-text,:host([label-position=inline-start]) .ids-textarea .ids-label-text{margin-inline-end:0}}@container (width > $breakpoint-xs){:host([label-position=inline-start]) .ids-input .ids-label-text,:host([label-position=inline-start]) .ids-textarea .ids-label-text{margin-inline-end:0}}@media(min-width: 320px){:host([label-position=inline-start]) .ids-input,:host([label-position=inline-start]) .ids-textarea{flex-wrap:wrap;gap:8px}:host([label-position=inline-start]) .ids-input label,:host([label-position=inline-start]) .ids-textarea label{flex:0 0 auto;margin-bottom:unset;order:1}:host([label-position=inline-start]) .ids-input .field-container,:host([label-position=inline-start]) .ids-textarea .field-container{order:2}:host([label-position=inline-start]) .ids-input .textarea-field-group,:host([label-position=inline-start]) .ids-textarea .textarea-field-group{order:2;flex:1 1 auto;min-width:0}:host([label-position=inline-start]) .ids-input .validation-message,:host([label-position=inline-start]) .ids-textarea .validation-message{flex:1 1 100%;min-width:100%;order:3;margin-block-start:calc(0px - var(--ids-space-2xs))}:host([label-position=inline-start]) .ids-input.wrapped .validation-message,:host([label-position=inline-start]) .ids-textarea.wrapped .validation-message{margin-block-start:calc(0px - var(--ids-space-2xs));margin-inline-start:calc(var(--ids-label-width) + 6px)}}:host([label-position=inline-start]) .ids-checkbox{margin-top:var(--ids-space-00)}@media(min-width: 320px){:host([label-position=inline-start]) .ids-checkbox{display:flex;flex-wrap:wrap;align-items:var(--ids-label-align-y, center)}:host([label-position=inline-start]) .ids-checkbox label{display:flex;align-items:center;width:100%;padding-block:var(--ids-label-padding-block);box-sizing:border-box;gap:var(--ids-space-xs)}:host([label-position=inline-start]) .ids-checkbox .label-checkbox{width:var(--ids-label-width);flex-shrink:0}:host([label-position=inline-start]) .ids-checkbox .checkbox-wrapper{position:relative;display:inline-flex}:host([label-position=inline-start]) .ids-checkbox .field-container{flex:1}:host([label-position=inline-start]) .ids-checkbox .validation-message{width:100%;margin-inline-start:calc(var(--ids-label-width) + var(--ids-space-xs));margin-block-start:var(--ids-space-2xs)}:host([label-position=inline-start]) .ids-checkbox.label-state-collapsed .validation-message{margin-inline-start:unset}}@container (min-width: 320px){:host([label-position=inline-start]) .ids-checkbox{display:flex;flex-wrap:wrap;align-items:var(--ids-label-align-y, center)}:host([label-position=inline-start]) .ids-checkbox label{display:flex;align-items:center;width:100%;padding-block:var(--ids-label-padding-block);box-sizing:border-box;gap:var(--ids-space-xs)}:host([label-position=inline-start]) .ids-checkbox .label-checkbox{width:var(--ids-label-width);flex-shrink:0}:host([label-position=inline-start]) .ids-checkbox .checkbox-wrapper{position:relative;display:inline-flex}:host([label-position=inline-start]) .ids-checkbox .field-container{flex:1}:host([label-position=inline-start]) .ids-checkbox .validation-message{width:100%;margin-inline-start:calc(var(--ids-label-width) + var(--ids-space-xs));margin-block-start:var(--ids-space-2xs)}}:host([label-position=inline-start][horizontal-aligned]) .ids-checkbox{container-type:normal}@media(width <= 320px){:host([label-position=inline-start][horizontal-aligned]) .ids-checkbox{display:flex;flex-wrap:wrap;align-items:var(--ids-label-align-y, center)}:host([label-position=inline-start][horizontal-aligned]) .ids-checkbox label{display:flex;align-items:center;width:100%;padding-block:var(--ids-label-padding-block);padding-inline-end:var(--ids-label-padding-inline-end);box-sizing:border-box;gap:var(--ids-space-xs)}:host([label-position=inline-start][horizontal-aligned]) .ids-checkbox .label-checkbox{width:var(--ids-label-width);flex-shrink:0}:host([label-position=inline-start][horizontal-aligned]) .ids-checkbox .checkbox-wrapper{position:relative;display:inline-flex}:host([label-position=inline-start][horizontal-aligned]) .ids-checkbox .field-container{flex:1}:host([label-position=inline-start][horizontal-aligned]) .ids-checkbox .validation-message{width:100%;margin-inline-start:calc(var(--ids-label-width) + var(--ids-space-xs));margin-block-start:var(--ids-space-2xs)}}:host([label-position=inline-start][label-alignment=end]) .ids-input,:host([label-position=inline-start][label-alignment=end]) .ids-textarea{gap:var(--ids-label-alignment-gap)}:host([label-position=inline-start][label-alignment=end]) .ids-input label,:host([label-position=inline-start][label-alignment=end]) .ids-input .ids-label-text,:host([label-position=inline-start][label-alignment=end]) .ids-textarea label,:host([label-position=inline-start][label-alignment=end]) .ids-textarea .ids-label-text{display:inline-flex;align-items:var(--ids-label-align-y, center);justify-content:flex-end;text-align:end;position:relative}@media(width < 320px){:host([label-position=inline-start][label-alignment=end]) .ids-input label,:host([label-position=inline-start][label-alignment=end]) .ids-input .ids-label-text,:host([label-position=inline-start][label-alignment=end]) .ids-textarea label,:host([label-position=inline-start][label-alignment=end]) .ids-textarea .ids-label-text{justify-content:flex-start;text-align:start;align-self:start}}@container (width < 320px){:host([label-position=inline-start][label-alignment=end]) .ids-input label,:host([label-position=inline-start][label-alignment=end]) .ids-input .ids-label-text,:host([label-position=inline-start][label-alignment=end]) .ids-textarea label,:host([label-position=inline-start][label-alignment=end]) .ids-textarea .ids-label-text{justify-content:flex-start;text-align:start;align-self:start}}:host([label-position=inline-start][label-alignment=end]) .ids-input label.required::after,:host([label-position=inline-start][label-alignment=end]) .ids-input .ids-label-text.required::after,:host([label-position=inline-start][label-alignment=end]) .ids-textarea label.required::after,:host([label-position=inline-start][label-alignment=end]) .ids-textarea .ids-label-text.required::after{margin-inline-end:0;position:absolute;margin-top:unset;inset-inline-end:-5px;top:7px}@container (width < 320px){:host([label-position=inline-start][label-alignment=end]) .ids-input label.required::after,:host([label-position=inline-start][label-alignment=end]) .ids-input .ids-label-text.required::after,:host([label-position=inline-start][label-alignment=end]) .ids-textarea label.required::after,:host([label-position=inline-start][label-alignment=end]) .ids-textarea .ids-label-text.required::after{position:initial;margin-top:unset;inset-inline-end:initial}}@media(width < 320px){:host([label-position=inline-start][label-alignment=end]) .ids-input label.required::after,:host([label-position=inline-start][label-alignment=end]) .ids-input .ids-label-text.required::after,:host([label-position=inline-start][label-alignment=end]) .ids-textarea label.required::after,:host([label-position=inline-start][label-alignment=end]) .ids-textarea .ids-label-text.required::after{position:initial;margin-top:unset;inset-inline-end:initial}}:host([label-position=inline-start][label-alignment=end]) .field-container{flex:1}:host([label-position=inline-start][label-alignment=end]) .ids-input.wrapped .validation-message,:host([label-position=inline-start][label-alignment=end]) .ids-textarea.wrapped .validation-message{margin-inline-start:calc(var(--ids-label-width) + 14px)}:host([label-position=inline-start][label-alignment=end]) .ids-checkbox label{text-align:end}@media(width < 320px){:host([label-position=inline-start][label-alignment=end]) .ids-checkbox label{text-align:start}}@container (width < 320px){:host([label-position=inline-start][label-alignment=end]) .ids-checkbox label{text-align:start}}:host([label-position=inline-start][label-alignment=end]) .ids-checkbox label.required .label-checkbox span::after{margin-inline-end:0;position:absolute;margin-top:unset;right:-5px;top:-5px}@media(width > 767px){:host([label-position=inline-start][label-alignment=end]) .ids-switch label{display:inline-flex;align-items:center;justify-content:flex-end;text-align:end}@container (width < 320px){:host([label-position=inline-start][label-alignment=end]) .ids-switch label{justify-content:flex-start}}}@media(width > 767px)and (width < 320px){:host([label-position=inline-start][label-alignment=end]) .ids-switch label{justify-content:flex-start}}:host([label-position=inline-start][label-alignment=end]) .ids-radio-group ids-text.group-label-text{display:inline-flex;align-items:center;justify-content:flex-end}@container (width < 320px){:host([label-position=inline-start][label-alignment=end]) .ids-radio-group ids-text.group-label-text{justify-content:flex-start}}:host([label-position=inline-start][label-alignment][label-state=collapsed]) .ids-input label,:host([label-position=inline-start][label-alignment][label-state=collapsed]) .ids-input .ids-label-text,:host([label-position=inline-start][label-alignment][label-state=collapsed]) .ids-textarea label,:host([label-position=inline-start][label-alignment][label-state=collapsed]) .ids-textarea .ids-label-text{display:none}:host([label-position=inline-start][label-alignment=end][label-break=shrink-value][validation-message-count]:not([error-tracker])) .ids-input,:host([label-position=inline-start][label-alignment=end][label-break=shrink-value][validation-message-count]:not([error-tracker])) .ids-textarea{column-gap:var(--ids-label-alignment-gap)}:host([label-position=inline-start][label-break=shrink-value]:not([validation-message-count])) .ids-input,:host([label-position=inline-start][label-break=shrink-value]:not([validation-message-count])) .ids-textarea,:host([label-position=inline-start][label-break=shrink-value][validation-message-count][error-tracker]) .ids-input,:host([label-position=inline-start][label-break=shrink-value][validation-message-count][error-tracker]) .ids-textarea{display:flex;flex-wrap:nowrap}:host([label-position=inline-start][label-break=shrink-value]:not([validation-message-count])) .ids-input label,:host([label-position=inline-start][label-break=shrink-value]:not([validation-message-count])) .ids-textarea label,:host([label-position=inline-start][label-break=shrink-value][validation-message-count][error-tracker]) .ids-input label,:host([label-position=inline-start][label-break=shrink-value][validation-message-count][error-tracker]) .ids-textarea label{flex-shrink:0}:host([label-position=inline-start][label-break=shrink-value]:not([validation-message-count])) .ids-input .field-container,:host([label-position=inline-start][label-break=shrink-value]:not([validation-message-count])) .ids-textarea .field-container,:host([label-position=inline-start][label-break=shrink-value][validation-message-count][error-tracker]) .ids-input .field-container,:host([label-position=inline-start][label-break=shrink-value][validation-message-count][error-tracker]) .ids-textarea .field-container{min-width:0;flex:0 1 auto}:host([label-position=inline-start][label-break=shrink-value]:not([validation-message-count])) .ids-input .validation-message,:host([label-position=inline-start][label-break=shrink-value]:not([validation-message-count])) .ids-textarea .validation-message,:host([label-position=inline-start][label-break=shrink-value][validation-message-count][error-tracker]) .ids-input .validation-message,:host([label-position=inline-start][label-break=shrink-value][validation-message-count][error-tracker]) .ids-textarea .validation-message{width:auto;margin-inline-start:0}:host(.in-flex-item[label-position=inline-start]) .ids-input,:host(.in-flex-item[label-position=inline-start]) .ids-textarea,:host([label-position=inline-start][label-break=shrink-value][validation-message-count]:not([error-tracker])) .ids-input,:host([label-position=inline-start][label-break=shrink-value][validation-message-count]:not([error-tracker])) .ids-textarea{display:grid;gap:0;grid-template-columns:auto minmax(0, 1fr);column-gap:var(--ids-label-alignment-gap)}:host(.in-flex-item[label-position=inline-start]) .ids-input label,:host(.in-flex-item[label-position=inline-start]) .ids-textarea label,:host([label-position=inline-start][label-break=shrink-value][validation-message-count]:not([error-tracker])) .ids-input label,:host([label-position=inline-start][label-break=shrink-value][validation-message-count]:not([error-tracker])) .ids-textarea label{grid-column:1;grid-row:1}:host(.in-flex-item[label-position=inline-start]) .ids-input .field-container,:host(.in-flex-item[label-position=inline-start]) .ids-textarea .field-container,:host([label-position=inline-start][label-break=shrink-value][validation-message-count]:not([error-tracker])) .ids-input .field-container,:host([label-position=inline-start][label-break=shrink-value][validation-message-count]:not([error-tracker])) .ids-textarea .field-container{grid-column:2;grid-row:1;min-width:0}:host(.in-flex-item[label-position=inline-start]) .ids-input .validation-message,:host(.in-flex-item[label-position=inline-start]) .ids-textarea .validation-message,:host([label-position=inline-start][label-break=shrink-value][validation-message-count]:not([error-tracker])) .ids-input .validation-message,:host([label-position=inline-start][label-break=shrink-value][validation-message-count]:not([error-tracker])) .ids-textarea .validation-message{grid-column:1/-1;grid-row:2;width:auto;margin-inline-start:0;margin-block-start:var(--ids-space-2xs)}:host(.in-flex-item[label-position=inline-start]) .ids-input.wrapped .validation-message,:host(.in-flex-item[label-position=inline-start]) .ids-textarea.wrapped .validation-message,:host([label-position=inline-start][label-break=shrink-value][validation-message-count]:not([error-tracker])) .ids-input.wrapped .validation-message,:host([label-position=inline-start][label-break=shrink-value][validation-message-count]:not([error-tracker])) .ids-textarea.wrapped .validation-message{grid-column:2;margin-inline-start:0}:host(.in-flex-item[label-position=inline-start]) .ids-input.sm,:host(.in-flex-item[label-position=inline-start]) .ids-input.mm,:host(.in-flex-item[label-position=inline-start]) .ids-input.md,:host(.in-flex-item[label-position=inline-start]) .ids-input.lg,:host(.in-flex-item[label-position=inline-start]) .ids-textarea.sm,:host(.in-flex-item[label-position=inline-start]) .ids-textarea.mm,:host(.in-flex-item[label-position=inline-start]) .ids-textarea.md,:host(.in-flex-item[label-position=inline-start]) .ids-textarea.lg,:host([label-position=inline-start][label-break=shrink-value][validation-message-count]:not([error-tracker])) .ids-input.sm,:host([label-position=inline-start][label-break=shrink-value][validation-message-count]:not([error-tracker])) .ids-input.mm,:host([label-position=inline-start][label-break=shrink-value][validation-message-count]:not([error-tracker])) .ids-input.md,:host([label-position=inline-start][label-break=shrink-value][validation-message-count]:not([error-tracker])) .ids-input.lg,:host([label-position=inline-start][label-break=shrink-value][validation-message-count]:not([error-tracker])) .ids-textarea.sm,:host([label-position=inline-start][label-break=shrink-value][validation-message-count]:not([error-tracker])) .ids-textarea.mm,:host([label-position=inline-start][label-break=shrink-value][validation-message-count]:not([error-tracker])) .ids-textarea.md,:host([label-position=inline-start][label-break=shrink-value][validation-message-count]:not([error-tracker])) .ids-textarea.lg{grid-template-columns:auto minmax(0, 1fr)}:host(.in-flex-item[label-position=inline-start]) .ids-input label{max-height:var(--ids-label-max-height-inline-start)}:host(.in-flex-item[label-position=inline-start]) .ids-checkbox input[type=checkbox]~.checkmark{inset-inline-end:0;margin-inline-end:0}:host(.in-flex-item[label-position=inline-start]) .ids-radio-group ids-text.group-label-text{margin-top:0}@media(width > 320px){:host([label-position=inline-start][label-break=shrink-value]) .ids-radio-group{display:flex;align-items:var(--ids-label-align-y, baseline)}:host([label-position=inline-start][label-break=shrink-value]) .ids-radio-group ids-text.group-label-text{width:var(--ids-label-width);flex-shrink:0}:host([label-position=inline-start][label-break=shrink-value]) .ids-radio-group slot{display:flex;flex-direction:column;flex-shrink:0}}@container (width > 320px){:host([label-position=inline-start][label-break=shrink-value]) .ids-radio-group{display:flex;align-items:var(--ids-label-align-y, baseline)}:host([label-position=inline-start][label-break=shrink-value]) .ids-radio-group ids-text.group-label-text{width:var(--ids-label-width);flex-shrink:0}:host([label-position=inline-start][label-break=shrink-value]) .ids-radio-group slot{display:flex;flex-direction:column;flex-shrink:0}}@media(width < 320px){:host([label-position=inline-start][label-break=shrink-value]) .ids-input,:host([label-position=inline-start][label-break=shrink-value]) .ids-textarea{display:block}:host([label-position=inline-start][label-break=shrink-value]) .ids-textarea{gap:0}}@container (width < 320px){:host([label-position=inline-start][label-break=shrink-value]) .ids-input,:host([label-position=inline-start][label-break=shrink-value]) .ids-textarea,:host([label-position=inline-start][label-break=shrink-value]) .ids-radio-group{flex-wrap:wrap}}@media(width <= 320px){:host([label-position=inline-start][label-break=shrink-value]:not([validation-message-count])) .ids-textarea{display:block;gap:0}:host([label-position=inline-start][label-break=shrink-value]:not([validation-message-count])) .ids-textarea label{min-height:auto;margin-bottom:var(--ids-input-margin-bottom)}}@media(width > 320px){:host([label-position=inline-start][label-break=shrink-label]) .ids-radio-group{display:flex;align-items:var(--ids-label-align-y, baseline)}:host([label-position=inline-start][label-break=shrink-label]) .ids-radio-group ids-text.group-label-text{width:var(--ids-label-width);flex:0 1 auto}:host([label-position=inline-start][label-break=shrink-label]) .ids-radio-group slot{display:flex;flex-direction:column;flex-shrink:0}}@container (width > 320px){:host([label-position=inline-start][label-break=shrink-label]) .ids-radio-group{display:flex;align-items:var(--ids-label-align-y, baseline)}:host([label-position=inline-start][label-break=shrink-label]) .ids-radio-group ids-text.group-label-text{width:var(--ids-label-width);flex:0 1 auto}:host([label-position=inline-start][label-break=shrink-label]) .ids-radio-group slot{display:flex;flex-direction:column;flex-shrink:0}}:host([label-position=inline-start][label-break=break]) .ids-input,:host([label-position=inline-start][label-break=break]) .ids-textarea{display:flex;flex-direction:column;align-items:stretch}:host([label-position=inline-start][label-break=break]) .ids-input label,:host([label-position=inline-start][label-break=break]) .ids-textarea label{width:auto;flex-shrink:0}:host([label-position=inline-start][label-break=break]) .ids-input .field-container,:host([label-position=inline-start][label-break=break]) .ids-textarea .field-container{min-width:0;flex:0 1 auto}:host([label-position=inline-start][label-break=break]) .ids-input .validation-message,:host([label-position=inline-start][label-break=break]) .ids-textarea .validation-message{width:auto;margin-inline-start:0}:host([label-position=inline-start][label-width="0px"]) .ids-label-text,:host([label-position=inline-start][label-width="0"]) .ids-label-text{display:none}:host([label-position=inline-start][label-alignment=end][label-wrap=ellipsis-no-stretch]) .ids-input .ids-label-text,:host([label-position=inline-start][label-alignment=end][label-wrap=ellipsis-no-stretch]) .ids-textarea .ids-label-text,:host([label-position=inline-start][label-alignment=end][label-wrap=ellipsis]) .ids-input .ids-label-text,:host([label-position=inline-start][label-alignment=end][label-wrap=ellipsis]) .ids-textarea .ids-label-text{overflow:visible}:host([label-position=inline-start][label-alignment=end][label-wrap=ellipsis-no-stretch]) .ids-input .ids-label-text.required,:host([label-position=inline-start][label-alignment=end][label-wrap=ellipsis-no-stretch]) .ids-textarea .ids-label-text.required,:host([label-position=inline-start][label-alignment=end][label-wrap=ellipsis]) .ids-input .ids-label-text.required,:host([label-position=inline-start][label-alignment=end][label-wrap=ellipsis]) .ids-textarea .ids-label-text.required{padding-inline-end:0}:host([label-position=inline-start][label-alignment=end][label-wrap=ellipsis-no-stretch]) .ids-input .ids-label-text.required::after,:host([label-position=inline-start][label-alignment=end][label-wrap=ellipsis-no-stretch]) .ids-textarea .ids-label-text.required::after,:host([label-position=inline-start][label-alignment=end][label-wrap=ellipsis]) .ids-input .ids-label-text.required::after,:host([label-position=inline-start][label-alignment=end][label-wrap=ellipsis]) .ids-textarea .ids-label-text.required::after{inset-inline-end:-7px}:host([label-position=inline-start][label-alignment=end][label-wrap=ellipsis-no-stretch]) .ids-input.wrapped .validation-message,:host([label-position=inline-start][label-alignment=end][label-wrap=ellipsis-no-stretch]) .ids-textarea.wrapped .validation-message,:host([label-position=inline-start][label-alignment=end][label-wrap=ellipsis]) .ids-input.wrapped .validation-message,:host([label-position=inline-start][label-alignment=end][label-wrap=ellipsis]) .ids-textarea.wrapped .validation-message{margin-inline-start:calc(var(--ids-label-width) + 11px)}:host([label-position=inline-end][label-break=shrink-value]) .ids-input,:host([label-position=inline-end][label-break=shrink-value]) .ids-textarea{display:flex}:host([label-position=inline-end][label-break=shrink-value]) .ids-input label,:host([label-position=inline-end][label-break=shrink-value]) .ids-textarea label{flex-shrink:0;order:2}:host([label-position=inline-end][label-break=shrink-value]) .ids-input .field-container,:host([label-position=inline-end][label-break=shrink-value]) .ids-textarea .field-container{min-width:0;flex:0 1 auto;order:1}:host([label-position=inline-end][label-break=shrink-value]) .ids-input{gap:var(--ids-space-2, 0.5rem)}@media(width > 320px){:host([label-position=inline-end][label-break=shrink-label]) .ids-radio-group{display:flex;align-items:var(--ids-label-align-y, baseline)}:host([label-position=inline-end][label-break=shrink-label]) .ids-radio-group ids-text.group-label-text{width:var(--ids-label-width);justify-content:end;flex:0 1 auto;order:2}:host([label-position=inline-end][label-break=shrink-label]) .ids-radio-group slot{display:flex;flex-direction:column;flex-shrink:0;order:1}}:host([label-position=inline-end][label-break=break]) .ids-input,:host([label-position=inline-end][label-break=break]) .ids-textarea{display:flex;flex-direction:column;align-items:stretch}:host([label-position=inline-end][label-break=break]) .ids-input label,:host([label-position=inline-end][label-break=break]) .ids-textarea label{width:auto;flex-shrink:0;order:2}:host([label-position=inline-end][label-break=break]) .ids-input .field-container,:host([label-position=inline-end][label-break=break]) .ids-textarea .field-container{min-width:0;flex:0 1 auto;order:1}:host([label-position=inline-end][label-break=break]) .ids-input .validation-message,:host([label-position=inline-end][label-break=break]) .ids-textarea .validation-message{margin-inline-start:0;order:3}:host([label-position=inline-end][label-break=break]) .ids-input{gap:var(--ids-space-2, 0.5rem)}:host([label-position=inline-start]){--ids-label-width: var(--ids-label-width-inline-start)}:host([label-position=inline-start][label-wrap=ellipsis-no-stretch]) .ids-input label,:host([label-position=inline-start][label-wrap=ellipsis-no-stretch]) .ids-textarea label,:host([label-position=inline-start][label-wrap=wrap-no-stretch]) .ids-input label,:host([label-position=inline-start][label-wrap=wrap-no-stretch]) .ids-textarea label{align-self:var(--ids-label-align-y, center)}:host([label-position=inline-start][label-wrap=ellipsis-no-stretch]) .ids-input .ids-label-text,:host([label-position=inline-start][label-wrap=ellipsis-no-stretch]) .ids-textarea .ids-label-text,:host([label-position=inline-start][label-wrap=wrap-no-stretch]) .ids-input .ids-label-text,:host([label-position=inline-start][label-wrap=wrap-no-stretch]) .ids-textarea .ids-label-text{overflow:visible}@media(width > 767px){:host([label-position=inline-start]:not([label-break=shrink-value]):not([size=full])) .ids-textarea{max-width:calc(370px + var(--ids-label-width))}:host([label-position=inline-start]:not([label-break=shrink-value]):not([size=full])) .ids-textarea .textarea-field{width:calc(370px + var(--ids-label-width))}}@media(width > 767px){:host([label-position=inline-start]) .ids-filter-field{display:flex;flex-wrap:wrap;align-items:var(--ids-label-align-y, baseline)}:host([label-position=inline-start]) .ids-filter-field label{width:var(--ids-label-width);padding-block:var(--ids-label-padding-block);padding-inline-end:var(--ids-label-padding-inline-end);box-sizing:border-box}:host([label-position=inline-start]) .ids-filter-field #operator-button{position:relative;inset-inline-start:var(--ids-label-width)}:host([label-position=inline-start]) .ids-filter-field .validation-message{width:100%;margin-block-start:var(--ids-space-2xs)}}@media(width < 767px){:host([label-position=inline-start][dir=rtl]) .ids-checkbox label{--ids-checkbox-padding-inline-start: inherit}:host([label-position=inline-start][dir=rtl]) .ids-checkbox .validation-message{margin-inline-start:initial}}@media(min-width: 767px){:host([label-position=inline-start][dir=rtl]) .ids-checkbox input[type=checkbox]~.checkmark{right:initial}:host([label-position=inline-start][dir=rtl]) .ids-checkbox .validation-message{margin-block-start:0}}:host([label-position=inline-start]) .ids-radio-group.label-inline,:host([label-position=inline-end]) .ids-radio-group.label-inline{display:flex;align-items:var(--ids-label-align-y, flex-start);gap:var(--ids-space-2, 0.5rem)}:host([label-position=inline-start]) .ids-radio-group.label-inline ids-text.group-label-text,:host([label-position=inline-end]) .ids-radio-group.label-inline ids-text.group-label-text{min-width:var(--ids-label-width);margin-top:calc(var(--ids-space-xs) - 2px)}:host([label-position=inline-start]) .ids-radio-group.label-inline slot,:host([label-position=inline-end]) .ids-radio-group.label-inline slot{display:flex;flex-direction:column}:host([label-position=inline-end]) .ids-radio-group.label-inline ids-text.group-label-text{justify-content:end;order:2}:host([label-position=inline-end]) .ids-radio-group.label-inline slot{order:1}:host([label-position=inline-end]) .ids-radio-group.label-inline-end-stacked{display:flex;align-items:var(--ids-label-align-y, baseline);gap:var(--ids-space-2, 0.5rem);flex-direction:column}:host([label-position=inline-end]) .ids-radio-group.label-inline-end-stacked ids-text.group-label-text{min-width:var(--ids-label-width);order:2}:host([label-position=inline-end]) .ids-radio-group.label-inline-end-stacked slot{display:flex;flex-direction:column;order:1}@media(width > 767px){:host([label-position=inline-start]) .ids-switch{display:flex;flex-wrap:wrap;align-items:var(--ids-label-align-y, baseline)}:host([label-position=inline-start]) .ids-switch label{width:var(--ids-label-width);padding-block:var(--ids-label-padding-block);padding-inline-end:var(--ids-label-padding-inline-end);padding-inline-start:0;box-sizing:border-box}:host([label-position=inline-start]) .ids-switch input[type=checkbox]~.slider{left:unset;right:-45px}:host([label-position=inline-start][label-state=collapsed]) .ids-switch label{padding-inline-end:0;width:0}:host([label-position=inline-start][dir=rtl]) .ids-switch input[type=checkbox]~.slider{left:-45px;right:initial}}@media(width > 767px){:host([label-position=inline-start]) .ids-data-label{display:flex;flex-direction:row;gap:8px;align-items:var(--ids-label-align-y, baseline)}:host([label-position=inline-start]) .ids-data-label .label{width:var(--ids-label-width);padding-block:var(--ids-label-padding-block);box-sizing:border-box;margin-block-end:0;white-space:nowrap}:host([label-position=inline-start]) .ids-data-label .data,:host([label-position=inline-start]) .ids-data-label .description{display:flex;padding-block:var(--ids-label-padding-block)}}@media(max-width: 320px){:host([label-position=inline-start]) .ids-input,:host([label-position=inline-start]) .ids-textarea,:host([label-position=inline-start]) .ids-filter-field{display:flex;flex-direction:column;align-items:unset}:host([label-position=inline-start]) .ids-input label,:host([label-position=inline-start]) .ids-textarea label,:host([label-position=inline-start]) .ids-filter-field label{width:auto;text-align:start;padding-inline:0}:host([label-position=inline-start]) .ids-input .validation-message,:host([label-position=inline-start]) .ids-textarea .validation-message,:host([label-position=inline-start]) .ids-filter-field .validation-message{margin-inline-start:0}:host([label-position=inline-end]) .ids-input,:host([label-position=inline-end]) .ids-textarea,:host([label-position=inline-end]) .ids-filter-field{display:flex;flex-direction:column;align-items:unset;gap:var(--ids-space-2, 0.5rem)}:host([label-position=inline-end]) .ids-input label,:host([label-position=inline-end]) .ids-textarea label,:host([label-position=inline-end]) .ids-filter-field label{width:auto;text-align:start;padding-inline:0}:host([label-position=inline-end]) .ids-input .validation-message,:host([label-position=inline-end]) .ids-textarea .validation-message,:host([label-position=inline-end]) .ids-filter-field .validation-message{margin-inline-start:0}}:host([label-state=collapsed]){--ids-label-width: 0;width:fit-content}:host(ids-checkbox[label-state=collapsed]){width:fit-content;display:block}@container (max-width: 320px){:host([label-position=inline-start]) .ids-input,:host([label-position=inline-start]) .ids-textarea,:host([label-position=inline-start]) .ids-filter-field{display:flex;flex-direction:column;align-items:unset}:host([label-position=inline-start]) .ids-input label,:host([label-position=inline-start]) .ids-textarea label,:host([label-position=inline-start]) .ids-filter-field label{width:auto;text-align:start;padding-inline:0}:host([label-position=inline-start]) .ids-input .validation-message,:host([label-position=inline-start]) .ids-textarea .validation-message,:host([label-position=inline-start]) .ids-filter-field .validation-message{margin-inline-start:0}:host([label-position=inline-end]) .ids-input,:host([label-position=inline-end]) .ids-textarea,:host([label-position=inline-end]) .ids-filter-field{display:flex;flex-direction:column;align-items:unset;gap:var(--ids-space-2, 0.5rem)}:host([label-position=inline-end]) .ids-input label,:host([label-position=inline-end]) .ids-textarea label,:host([label-position=inline-end]) .ids-filter-field label{width:auto;text-align:start;padding-inline:0}:host([label-position=inline-end]) .ids-input .validation-message,:host([label-position=inline-end]) .ids-textarea .validation-message,:host([label-position=inline-end]) .ids-filter-field .validation-message{margin-inline-start:0}}@media(max-width: 320px){:host([label-position=inline-start][label-state=hidden]) .ids-input .ids-label-text{display:none}}@container (max-width: 320px){:host([label-position=inline-start][label-state=hidden]) .ids-input .ids-label-text{display:none}}:host .ids-input label,:host .ids-input .label,:host .ids-textarea label,:host .ids-textarea .label,:host .ids-checkbox label,:host .ids-checkbox .label,:host .ids-radio label,:host .ids-radio .label,:host .ids-switch label,:host .ids-switch .label,:host .ids-data-label label,:host .ids-data-label .label,:host .ids-filter-field label,:host .ids-filter-field .label{width:var(--ids-label-width)}:host([label-position=inline-start][label-state=collapsed]) .ids-radio-group ids-text.group-label-text,:host([label-position=inline-end][label-state=collapsed]) .ids-radio-group ids-text.group-label-text{display:none}:host([label-position=inline-start][label-state=hidden]) .ids-radio-group ids-text.group-label-text,:host([label-position=inline-end][label-state=hidden]) .ids-radio-group ids-text.group-label-text{visibility:hidden}.ids-label-text{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:var(--ids-font-family-default),var(--ids-font-family-system-sans);color:var(--ids-input-label-color-text-default);display:flex;margin-block-end:var(--ids-input-margin-bottom);align-items:baseline;justify-content:inherit}.ids-label-text.empty::before{content:" "}.ids-label-text.required::after{position:relative;font-family:var(--ids-font-family-default),var(--ids-font-family-system-sans);margin-inline-start:var(--ids-space-3xs);margin-inline-end:var(--ids-space-3xs);font-size:var(--ids-font-size-md);color:var(--ids-input-required-indicator-color-text-default);content:"*";margin-top:-10px;top:1px;line-height:0}.ids-label-text.required.no-required-indicator::after,.ids-label-text.required.empty::after{content:""}.ids-label-text ids-text:not([line-clamp])::part(text),.ids-label-text .ids-text{display:inline}.disabled .ids-label-text{color:var(--ids-input-label-color-text-disabled);opacity:var(--ids-input-disabled-opacity)}.disabled .ids-label-text.required::after{color:var(--ids-input-required-indicator-color-text-disabled)}:host{display:block;max-width:var(--ids-input-width-full)}:host .ids-input{display:inline-block;width:var(--ids-box-input-width, auto)}:host([hidden]){display:none}:host([margin-block-end=none]:not([no-margins])) .ids-input,.ids-input.margin-block-end-none:not(.no-margins){margin-block-end:var(--ids-space-none)}:host([margin-block-end="4xs"]:not([no-margins])) .ids-input,.ids-input.margin-block-end-4xs:not(.no-margins){margin-block-end:var(--ids-space-4xs)}:host([margin-block-end="3xs"]:not([no-margins])) .ids-input,.ids-input.margin-block-end-3xs:not(.no-margins){margin-block-end:var(--ids-space-3xs)}:host([margin-block-end="2xs"]:not([no-margins])) .ids-input,.ids-input.margin-block-end-2xs:not(.no-margins){margin-block-end:var(--ids-space-2xs)}:host([margin-block-end=xs]:not([no-margins])) .ids-input,.ids-input.margin-block-end-xs:not(.no-margins){margin-block-end:var(--ids-space-xs)}:host([margin-block-end=sm]:not([no-margins])) .ids-input,.ids-input.margin-block-end-sm:not(.no-margins){margin-block-end:var(--ids-space-sm)}:host([margin-block-end=md]:not([no-margins])) .ids-input,.ids-input.margin-block-end-md:not(.no-margins){margin-block-end:var(--ids-space-md)}:host([margin-block-end=lg]:not([no-margins])) .ids-input,.ids-input.margin-block-end-lg:not(.no-margins){margin-block-end:var(--ids-space-lg)}:host([margin-block-end=xl]:not([no-margins])) .ids-input,.ids-input.margin-block-end-xl:not(.no-margins){margin-block-end:var(--ids-space-xl)}:host([margin-block-end="2xl"]:not([no-margins])) .ids-input,.ids-input.margin-block-end-2xl:not(.no-margins){margin-block-end:var(--ids-space-2xl)}:host([margin-block-end="3xl"]:not([no-margins])) .ids-input,.ids-input.margin-block-end-3xl:not(.no-margins){margin-block-end:var(--ids-space-3xl)}:host([margin-block-end="4xl"]:not([no-margins])) .ids-input,.ids-input.margin-block-end-4xl:not(.no-margins){margin-block-end:var(--ids-space-4xl)}:host([label-position=inline-start]) .field-container{justify-content:var(--ids-box-justify-content, flex-start)}:host([label-position=inline-start]) .ids-input{justify-content:var(--ids-box-justify-content, flex-start)}:host([label-position=inline-start][size=full]) .field-container{flex:1;min-width:0}:host(.in-flex-item[size=xs]){min-width:var(--ids-input-width-10)}:host(.in-flex-item[size=sm]){min-width:var(--ids-input-width-20)}:host(.in-flex-item[size=mm]){min-width:var(--ids-input-width-30)}:host(.in-flex-item[size=md]){min-width:var(--ids-input-width-40)}:host(.in-flex-item[size=lg]){min-width:var(--ids-input-width-50)}:host(.in-flex-item[label-break=shrink-value][size]),:host(.in-flex-item[label-position=inline-start][size]){min-width:0}:host([size=full]){width:100%}:host([label-wrap=wrap]) .ids-label-text{overflow-wrap:anywhere}:host([label-wrap=ellipsis]) .ids-label-text{display:flex;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host([label-wrap=ellipsis]) .ids-label-text ids-text{display:block;width:fit-content;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex-shrink:1}:host([label-wrap=ellipsis]) .ids-label-text.required{padding-inline-end:var(--ids-space-xs)}:host([label-wrap=ellipsis]) .ids-label-text.required::after{flex-shrink:0;margin-inline-start:var(--ids-space-3xs)}:host([label-wrap=ellipsis-no-stretch]) .ids-label-text{display:flex;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host([label-wrap=ellipsis-no-stretch]) .ids-label-text ids-text{display:block;width:fit-content;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex-shrink:1}:host([label-wrap=ellipsis-no-stretch]) .ids-label-text.required{padding-inline-end:var(--ids-space-xs)}:host([label-wrap=ellipsis-no-stretch]) .ids-label-text.required::after{flex-shrink:0;margin-inline-start:var(--ids-space-3xs)}:host([label-wrap=ellipsis-no-stretch]) .xs .ids-label-text{max-width:calc((var(--ids-input-width-20)) - 8px)}:host([label-wrap=ellipsis-no-stretch]) .sm .ids-label-text{max-width:calc((var(--ids-input-width-20)) - 8px)}:host([label-wrap=ellipsis-no-stretch]) .mm .ids-label-text{max-width:calc((var(--ids-input-width-30)) - 8px)}:host([label-wrap=ellipsis-no-stretch]) .md .ids-label-text{max-width:calc((var(--ids-input-width-40)) - 8px)}:host([label-wrap=ellipsis-no-stretch]) .lg .ids-label-text{max-width:calc((var(--ids-input-width-50)) - 8px)}:host([label-wrap=ellipsis-no-stretch]) .full .ids-label-text{max-width:calc(100% - 8px)}:host([label-wrap=wrap-no-stretch]) .xs .ids-label-text{max-width:calc((var(--ids-input-width-20)) - 8px)}:host([label-wrap=wrap-no-stretch]) .sm .ids-label-text{max-width:calc((var(--ids-input-width-20)) - 8px)}:host([label-wrap=wrap-no-stretch]) .mm .ids-label-text{max-width:calc((var(--ids-input-width-30)) - 8px)}:host([label-wrap=wrap-no-stretch]) .md .ids-label-text{max-width:calc((var(--ids-input-width-40)) - 8px)}:host([label-wrap=wrap-no-stretch]) .lg .ids-label-text{max-width:calc((var(--ids-input-width-50)) - 8px)}:host([label-wrap=wrap-no-stretch]) .full .ids-label-text{max-width:calc(100% - 8px)}:host([label-wrap=wrap-no-stretch]) .ids-label-text{overflow-wrap:anywhere}.ids-input{position:relative;display:block;margin-block-end:var(--ids-space-sm);max-width:var(--ids-input-width-full)}.ids-input .field-container{border:1px solid;border-collapse:separate;border-radius:var(--ids-border-radius-2xs);box-sizing:border-box;color:inherit;display:flex;align-items:center;margin:var(--ids-space-none);max-width:var(--ids-input-width-full);padding:var(--ids-space-none);position:relative;resize:none;text-align:left}.ids-input .field-container.ff-input-field{border-start-start-radius:0;border-end-start-radius:0}.ids-input .field-container.ff-input-field .ids-input-field{color:var(--ids-filter-field-text-color)}.ids-input .field-container.square{border-radius:var(--ids-border-radius-none)}.ids-input:focus-within .ids-input-field,.ids-input.readonly:focus-within .ids-input-field,.ids-input.is-active .ids-input-field{outline:none;outline-color:var(--ids-color-transparent)}.ids-input:focus-within .field-container,.ids-input.readonly:focus-within .field-container,.ids-input.is-active .field-container{border-color:var(--ids-input-color-border-focus);box-shadow:var(--ids-input-color-border-shadow);background-color:var(--ids-input-color-background-default)}.ids-input .ids-icon.starting-icon{margin-inline-start:var(--ids-space-xs)}.ids-input .ids-icon.ending-icon{margin-inline-end:var(--ids-space-xs)}.ids-input .ids-input-field{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;box-sizing:border-box;background-color:var(--ids-color-transparent);border:none;color:inherit;font-family:var(--ids-font-family-default),var(--ids-font-family-system-sans);padding-block-start:var(--ids-space-2xs);padding-block-end:var(--ids-space-2xs);padding-inline-start:var(--ids-space-12);padding-inline-end:var(--ids-input-padding-inline-end);font-size:var(--ids-input-font-size);width:100%}.ids-input .ids-input-field:focus-visible{outline:none}.ids-input .ids-input-field{appearance:none;display:inline-block;height:fit-content;resize:none;text-align:left;text-overflow:ellipsis}.ids-input .ids-input-field.text-ellipsis{text-overflow:ellipsis}.ids-input .ids-input-field.start{text-align:start}.ids-input .ids-input-field::placeholder{color:var(--ids-input-color-text-placeholder)}.ids-input .ids-input-field.center{text-align:center}.ids-input .ids-input-field.end{text-align:end}.ids-input.event-picker .ids-input-field{padding-inline-start:var(--ids-space-xs);padding-inline-end:var(--ids-space-2xs)}.ids-input .validation-message{margin-block-start:var(--ids-space-2xs);margin-bottom:var(--ids-space-none)}.ids-input .validation-message .ids-icon{place-self:self-start;margin-top:1px}.ids-input.no-margins,.ids-input.no-margins.compact{display:block;margin:var(--ids-space-none)}.ids-input.no-margins.field-height-xs,.ids-input.no-margins.compact.field-height-xs{margin-block-end:var(--ids-space-none)}.ids-input.no-margins .field-container,.ids-input.no-margins.compact .field-container{margin-bottom:var(--ids-space-none)}.ids-input.no-margins .ids-input-field,.ids-input.no-margins.compact .ids-input-field{margin:var(--ids-space-none)}.ids-input.no-margins .validation-message,.ids-input.no-margins.compact .validation-message{margin-bottom:var(--ids-space-none);margin-block-start:var(--ids-space-2xs)}.ids-input.no-margins .ids-label-text.empty,.ids-input.no-margins.compact .ids-label-text.empty{margin:var(--ids-space-none);display:none;visibility:hidden;height:0}.ids-input.xs .field-container,.ids-input.xs .validation-message{width:calc(var(--ids-input-width-10))}.ids-input.xs .validation-message{max-width:calc(var(--ids-input-width-10))}.ids-input.sm .field-container{width:calc(var(--ids-input-width-20))}.ids-input.sm .validation-message{max-width:calc(var(--ids-input-width-20))}.ids-input.mm .field-container{width:calc(var(--ids-input-width-30))}.ids-input.mm .validation-message{max-width:calc(var(--ids-input-width-30))}.ids-input.md .field-container{width:calc(var(--ids-input-width-40))}.ids-input.md .validation-message{max-width:calc(var(--ids-input-width-40))}.ids-input.lg .field-container{width:calc(var(--ids-input-width-50))}.ids-input.lg .validation-message{max-width:calc(var(--ids-input-width-50))}.ids-input.full{display:block}.ids-input.full .field-container,.ids-input.full .validation-message{width:var(--ids-input-width-full)}@media(max-width: 767px){.ids-input:not(.full):not(.md):not(.mm):not(.sm):not(.xs):not(.lg) .field-container,.ids-input:not(.full):not(.md):not(.mm):not(.sm):not(.xs):not(.lg) .validation-message{max-width:calc(var(--ids-input-width-30));min-width:auto}.ids-input:not(.full):not(.md):not(.mm):not(.sm):not(.xs):not(.lg) .field-container{flex-shrink:0;flex-basis:calc(var(--ids-input-width-30));box-sizing:border-box}}.ids-input.field-height-xs{margin-block-end:var(--ids-font-size-2xs)}.ids-input.field-height-xs .icon-dirty{top:0}.ids-input.field-height-xs .ids-label-text{font-size:var(--ids-input-label-font-size)}.ids-input.field-height-xs .ids-input-field{padding-inline-start:var(--ids-space-2xs);padding-inline-end:var(--ids-space-2xs);padding-top:0;padding-bottom:0;font-size:var(--ids-input-font-size-sm);height:calc(var(--ids-input-height-10) - 4px)}.ids-input.field-height-xs.no-margin-bottom{margin-bottom:var(--ids-space-none)}.ids-input.field-height-xs.no-margin-bottom .field-container,.ids-input.field-height-xs.no-margin-bottom .ids-input-field{margin-bottom:var(--ids-space-none)}.ids-input.field-height-sm .ids-input-field{height:calc(var(--ids-input-height-20) - 2px)}.ids-input.field-height-md .ids-input-field{height:calc(var(--ids-input-height-30) - 2px)}.ids-input.field-height-lg .ids-input-field{height:calc(var(--ids-input-height-40) - 2px)}.ids-input.compact{margin-block-end:var(--ids-font-size-2xs)}.ids-input.compact .icon-dirty{top:0}.ids-input.compact .ids-label-text{font-size:var(--ids-input-label-font-size)}.ids-input.compact .ids-input-field{padding-inline-start:var(--ids-space-2xs);padding-inline-end:var(--ids-space-2xs);padding-top:0;padding-bottom:0;font-size:var(--ids-input-font-size-sm);height:calc(var(--ids-input-height-10) - 4px)}.ids-input.compact.no-margin-bottom{margin-bottom:var(--ids-space-none)}.ids-input.compact.no-margin-bottom .field-container,.ids-input.compact.no-margin-bottom .ids-input-field{margin-bottom:var(--ids-space-none);height:calc(var(--ids-input-height-10) - 4px)}.ids-input.compact .field-container:not(.ff-input-field){height:calc(var(--ids-input-height-10) - 2px)}.ids-input.color-variant-borderless{--ids-input-color-border-focus: var(--ids-color-transparent);margin:1px;border-radius:var(--ids-border-radius-none)}.ids-input.color-variant-borderless input{font-size:var(--ids-font-size-sm)}.ids-input.color-variant-borderless slot[name=trigger-start],.ids-input.color-variant-borderless slot[name=trigger-end]{display:flex}.ids-input.color-variant-borderless .ids-label-text{display:none}.ids-input.color-variant-borderless .icon-dirty{display:none}.ids-input.color-variant-borderless .validation-message{display:none}.ids-input.color-variant-borderless .field-container{background-color:var(--ids-color-transparent) !important;border-color:rgba(0,0,0,0) !important}.ids-input.color-variant-borderless:focus-within .field-container{box-shadow:none}.ids-input.color-variant-borderless.ids-input.field-height-lg .ids-input-field{padding-inline:calc(var(--ids-space-sm) - 2px)}.ids-input.color-variant-borderless.ids-input.field-height-md .ids-input-field{padding-inline:calc(var(--ids-space-12) - 2px)}.ids-input.color-variant-borderless.ids-input.field-height-sm .ids-input-field{padding-inline:calc(var(--ids-space-xs) - 2px)}.ids-input.color-variant-borderless.ids-input.field-height-xs .ids-input-field{font-size:var(--ids-data-grid-font-size-sm);padding-inline:var(--ids-space-3xs)}.ids-input.color-variant-borderless.ids-input.field-height-xs slot[name=trigger-end]{padding-inline-end:var(--ids-space-none)}.ids-input.color-variant-borderless.ids-input.field-height-xxs .ids-input-field{font-size:var(--ids-data-grid-font-size-sm);padding-inline:var(--ids-space-4xs)}.ids-input.color-variant-borderless.ids-input.field-height-xxs slot[name=trigger-end]{padding-inline-end:var(--ids-space-none)}.ids-input.color-variant-in-cell{margin:1px}.ids-input.color-variant-in-cell input{font-size:var(--ids-font-size-sm)}.ids-input.color-variant-in-cell input[field-height=xxs]{--ids-dropdown-font-size-compact: var(--ids-data-grid-font-size-sm);font-size:var(--ids-data-grid-font-size-sm);padding-inline-start:2px}.ids-input.color-variant-in-cell .validation-message{display:none}.ids-input.color-variant-in-cell.ids-input.field-height-lg .ids-input-field{padding-inline:11px;height:40px}.ids-input.color-variant-in-cell.ids-input.full .field-container{margin-inline:3px;width:initial}.ids-input.color-variant-in-cell.ids-input.field-height-md .ids-input-field{padding-inline:6px;height:30px}.ids-input.color-variant-in-cell.ids-input.field-height-sm .ids-input-field{padding-inline:var(--ids-space-2xs);height:27px}.ids-input.color-variant-in-cell.ids-input.field-height-sm.full .field-container{margin-inline:var(--ids-space-3xs)}.ids-input.color-variant-in-cell.ids-input.field-height-xs .ids-input-field{padding-inline:1px;height:24px}.ids-input.color-variant-in-cell.ids-input.field-height-xs.full .field-container{margin-inline:1px}.ids-input.color-variant-module-nav{margin-block-end:var(--ids-space-none);transform:background-color var(--ids-motion-duration) var(--ids-motion-ease),border-color var(--ids-motion-duration) var(--ids-motion-ease),color var(--ids-motion-duration) var(--ids-motion-ease)}.ids-input.color-variant-module-nav .field-container{border-radius:var(--ids-module-nav-common-border-radius);border:var(--ids-module-nav-input-border-width) solid rgba(0,0,0,0)}.ids-input.color-variant-module-nav input{background-color:var(--ids-color-transparent);color:inherit}.ids-input.color-variant-module-nav input::placeholder{color:var(--ids-module-nav-search-input-placeholder-text-color)}.ids-input.color-variant-module-nav input:active{color:var(--ids-module-nav-search-input-text-color)}.ids-input.color-variant-module-nav:not([class*=field-height-]){height:var(--ids-module-nav-search-wrapper-height)}.ids-input.color-variant-module-nav:not([class*=field-height-]) input{height:var(--ids-module-nav-search-input-height)}.ids-input:not([class*=color-variant-]) .field-container:not(:focus-within){background-color:var(--ids-input-color-background-default);border-color:var(--ids-input-border-default-color);color:var(--ids-input-color-text-default)}.ids-input:not([class*=color-variant-]).readonly .field-container.error,.ids-input:not([class*=color-variant-]).readonly .field-container.error:hover,.ids-input:not([class*=color-variant-]).readonly.hover .field-container.error,.ids-input:not([class*=color-variant-]).readonly.hover .field-container.error:hover,.ids-input:not([class*=color-variant-]).readonly.focus-within .field-container.error,.ids-input:not([class*=color-variant-]).readonly.focus-within .field-container.error:hover{border-color:var(--ids-color-error-default);color:var(--ids-color-error-default)}.ids-input:not([class*=color-variant-]).readonly:not(.readonly-background):not(.bg-transparent) .field-container,.ids-input:not([class*=color-variant-]).readonly:not(.readonly-background):not(.bg-transparent).hover .field-container,.ids-input:not([class*=color-variant-]).readonly:not(.readonly-background):not(.bg-transparent).focus-within .field-container{background-color:var(--ids-input-color-background-readonly)}.ids-input:not([class*=color-variant-]).disabled .field-container,.ids-input:not([class*=color-variant-]).disabled:hover .field-container,.ids-input:not([class*=color-variant-]).disabled:focus-within .field-container{border-color:var(--ids-input-color-border-disabled);color:var(--ids-input-color-text-disabled);opacity:var(--ids-input-disabled-opacity);-webkit-text-fill-color:var(--ids-input-color-text-disabled)}.ids-input:not([class*=color-variant-]).bg-transparent .field-container,.ids-input:not([class*=color-variant-]).bg-transparent.readonly .field-container,.ids-input:not([class*=color-variant-]).bg-transparent.disabled .field-container{background-color:var(--ids-color-transparent)}.ids-input:not([class*=color-variant-]).bg-transparent:focus-within .field-container{background-color:var(--ids-color-transparent)}.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .field-container,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .field-container{border-color:var(--ids-input-color-border-hover)}.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .alert,.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .alert:hover,.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .warning,.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .warning:hover,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .alert,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .alert:hover,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .warning,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .warning:hover{border-color:var(--ids-input-color-border-alert-default);color:var(--ids-input-color-text-alert-default)}.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .alert:focus-within,.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .alert.is-active,.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .alert:hover:focus-within,.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .alert:hover.is-active,.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .warning:focus-within,.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .warning.is-active,.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .warning:hover:focus-within,.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .warning:hover.is-active,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .alert:focus-within,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .alert.is-active,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .alert:hover:focus-within,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .alert:hover.is-active,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .warning:focus-within,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .warning.is-active,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .warning:hover:focus-within,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .warning:hover.is-active{border-color:var(--ids-input-color-border-alert-default);box-shadow:var(--ids-input-shadow-alert-focus) 0 0 3px 2px}.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .alert[disabled],.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .alert:hover[disabled],.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .warning[disabled],.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .warning:hover[disabled],.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .alert[disabled],.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .alert:hover[disabled],.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .warning[disabled],.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .warning:hover[disabled]{border-color:var(--ids-input-color-border-alert-disabled);color:var(--ids-input-color-text-alert-disabled)}.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .field-container.error,.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .field-container.error:hover,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .field-container.error,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .field-container.error:hover{border-color:var(--ids-input-color-border-error-default);color:var(--ids-input-error-color-text-error-default)}.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .field-container.error.field-container:not(:focus-within),.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .field-container.error:hover.field-container:not(:focus-within),.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .field-container.error.field-container:not(:focus-within),.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .field-container.error:hover.field-container:not(:focus-within){border-color:var(--ids-input-color-border-error-default);color:var(--ids-input-error-color-text-error-default)}.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .field-container.error:focus-within,.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .field-container.error.is-active,.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .field-container.error:hover:focus-within,.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .field-container.error:hover.is-active,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .field-container.error:focus-within,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .field-container.error.is-active,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .field-container.error:hover:focus-within,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .field-container.error:hover.is-active{border-color:var(--ids-input-color-border-error-default);box-shadow:var(--ids-input-color-shadow-error-focus) 0 0 3px 2px}.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .field-container.error[disabled],.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .field-container.error:hover[disabled],.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .field-container.error[disabled],.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .field-container.error:hover[disabled]{border-color:var(--ids-input-color-border-error-disabled);color:var(--ids-input-color-border-error-disabled)}.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .info,.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .info:hover,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .info,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .info:hover{border-color:var(--ids-input-color-border-info-default);color:var(--ids-input-color-text-info-default)}.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .info:focus-within,.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .info.is-active,.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .info:hover:focus-within,.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .info:hover.is-active,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .info:focus-within,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .info.is-active,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .info:hover:focus-within,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .info:hover.is-active{border-color:var(--ids-input-color-border-info-default);box-shadow:var(--ids-input-shadow-info-focus) 0 0 3px 2px}.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .info[disabled],.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .info:hover[disabled],.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .info[disabled],.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .info:hover[disabled]{border-color:var(--ids-input-color-border-info-disabled);color:var(--ids-input-color-text-info-disabled)}.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .success,.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .success:hover,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .success,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .success:hover{border-color:var(--ids-input-color-border-success-default);color:var(--ids-input-color-text-success-default)}.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .success:focus-within,.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .success.is-active,.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .success:hover:focus-within,.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .success:hover.is-active,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .success:focus-within,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .success.is-active,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .success:hover:focus-within,.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .success:hover.is-active{border-color:var(--ids-input-color-border-success-default);box-shadow:var(--ids-input-shadow-success-focus) 0 0 3px 2px}.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .success[disabled],.ids-input:not([class*=color-variant-]):hover:not(.readonly):not(.disabled):not(:focus):not(:focus-within) .success:hover[disabled],.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .success[disabled],.ids-input:not([class*=color-variant-]):hover.readonly.readonly-background:not(:focus):not(:focus-within) .success:hover[disabled]{border-color:var(--ids-input-color-border-success-disabled);color:var(--ids-input-color-text-success-disabled)}.ids-input:not([class*=color-variant-]).is-active .field-container,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .field-container{border-color:var(--ids-input-color-border-focus)}.ids-input:not([class*=color-variant-]).is-active .alert,.ids-input:not([class*=color-variant-]).is-active .alert:hover,.ids-input:not([class*=color-variant-]).is-active .warning,.ids-input:not([class*=color-variant-]).is-active .warning:hover,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .alert,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .alert:hover,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .warning,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .warning:hover{border-color:var(--ids-input-color-border-alert-default);color:var(--ids-input-color-text-alert-default)}.ids-input:not([class*=color-variant-]).is-active .alert:focus-within,.ids-input:not([class*=color-variant-]).is-active .alert.is-active,.ids-input:not([class*=color-variant-]).is-active .alert:hover:focus-within,.ids-input:not([class*=color-variant-]).is-active .alert:hover.is-active,.ids-input:not([class*=color-variant-]).is-active .warning:focus-within,.ids-input:not([class*=color-variant-]).is-active .warning.is-active,.ids-input:not([class*=color-variant-]).is-active .warning:hover:focus-within,.ids-input:not([class*=color-variant-]).is-active .warning:hover.is-active,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .alert:focus-within,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .alert.is-active,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .alert:hover:focus-within,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .alert:hover.is-active,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .warning:focus-within,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .warning.is-active,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .warning:hover:focus-within,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .warning:hover.is-active{border-color:var(--ids-input-color-border-alert-default);box-shadow:var(--ids-input-shadow-alert-focus) 0 0 3px 2px}.ids-input:not([class*=color-variant-]).is-active .alert[disabled],.ids-input:not([class*=color-variant-]).is-active .alert:hover[disabled],.ids-input:not([class*=color-variant-]).is-active .warning[disabled],.ids-input:not([class*=color-variant-]).is-active .warning:hover[disabled],.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .alert[disabled],.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .alert:hover[disabled],.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .warning[disabled],.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .warning:hover[disabled]{border-color:var(--ids-input-color-border-alert-disabled);color:var(--ids-input-color-text-alert-disabled)}.ids-input:not([class*=color-variant-]).is-active .field-container.error,.ids-input:not([class*=color-variant-]).is-active .field-container.error:hover,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .field-container.error,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .field-container.error:hover{border-color:var(--ids-input-color-border-error-default);color:var(--ids-input-error-color-text-error-default)}.ids-input:not([class*=color-variant-]).is-active .field-container.error.field-container:not(:focus-within),.ids-input:not([class*=color-variant-]).is-active .field-container.error:hover.field-container:not(:focus-within),.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .field-container.error.field-container:not(:focus-within),.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .field-container.error:hover.field-container:not(:focus-within){border-color:var(--ids-input-color-border-error-default);color:var(--ids-input-error-color-text-error-default)}.ids-input:not([class*=color-variant-]).is-active .field-container.error:focus-within,.ids-input:not([class*=color-variant-]).is-active .field-container.error.is-active,.ids-input:not([class*=color-variant-]).is-active .field-container.error:hover:focus-within,.ids-input:not([class*=color-variant-]).is-active .field-container.error:hover.is-active,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .field-container.error:focus-within,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .field-container.error.is-active,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .field-container.error:hover:focus-within,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .field-container.error:hover.is-active{border-color:var(--ids-input-color-border-error-default);box-shadow:var(--ids-input-color-shadow-error-focus) 0 0 3px 2px}.ids-input:not([class*=color-variant-]).is-active .field-container.error[disabled],.ids-input:not([class*=color-variant-]).is-active .field-container.error:hover[disabled],.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .field-container.error[disabled],.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .field-container.error:hover[disabled]{border-color:var(--ids-input-color-border-error-disabled);color:var(--ids-input-color-border-error-disabled)}.ids-input:not([class*=color-variant-]).is-active .info,.ids-input:not([class*=color-variant-]).is-active .info:hover,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .info,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .info:hover{border-color:var(--ids-input-color-border-info-default);color:var(--ids-input-color-text-info-default)}.ids-input:not([class*=color-variant-]).is-active .info:focus-within,.ids-input:not([class*=color-variant-]).is-active .info.is-active,.ids-input:not([class*=color-variant-]).is-active .info:hover:focus-within,.ids-input:not([class*=color-variant-]).is-active .info:hover.is-active,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .info:focus-within,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .info.is-active,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .info:hover:focus-within,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .info:hover.is-active{border-color:var(--ids-input-color-border-info-default);box-shadow:var(--ids-input-shadow-info-focus) 0 0 3px 2px}.ids-input:not([class*=color-variant-]).is-active .info[disabled],.ids-input:not([class*=color-variant-]).is-active .info:hover[disabled],.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .info[disabled],.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .info:hover[disabled]{border-color:var(--ids-input-color-border-info-disabled);color:var(--ids-input-color-text-info-disabled)}.ids-input:not([class*=color-variant-]).is-active .success,.ids-input:not([class*=color-variant-]).is-active .success:hover,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .success,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .success:hover{border-color:var(--ids-input-color-border-success-default);color:var(--ids-input-color-text-success-default)}.ids-input:not([class*=color-variant-]).is-active .success:focus-within,.ids-input:not([class*=color-variant-]).is-active .success.is-active,.ids-input:not([class*=color-variant-]).is-active .success:hover:focus-within,.ids-input:not([class*=color-variant-]).is-active .success:hover.is-active,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .success:focus-within,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .success.is-active,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .success:hover:focus-within,.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .success:hover.is-active{border-color:var(--ids-input-color-border-success-default);box-shadow:var(--ids-input-shadow-success-focus) 0 0 3px 2px}.ids-input:not([class*=color-variant-]).is-active .success[disabled],.ids-input:not([class*=color-variant-]).is-active .success:hover[disabled],.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .success[disabled],.ids-input:not([class*=color-variant-]).is-active:hover.readonly.readonly-background .success:hover[disabled]{border-color:var(--ids-input-color-border-success-disabled);color:var(--ids-input-color-text-success-disabled)}.ids-input:not([class*=color-variant-]):hover:not(.disabled).readonly.readonly-background.color-variant-alternate-formatter .field-container{border-color:var(--ids-data-grid-filter-input-color-border-hover)}.ids-input:not([class*=color-variant-]) .alert,.ids-input:not([class*=color-variant-]) .alert:hover,.ids-input:not([class*=color-variant-]) .warning,.ids-input:not([class*=color-variant-]) .warning:hover{border-color:var(--ids-input-color-border-alert-default);color:var(--ids-input-color-text-alert-default)}.ids-input:not([class*=color-variant-]) .alert:focus-within,.ids-input:not([class*=color-variant-]) .alert.is-active,.ids-input:not([class*=color-variant-]) .alert:hover:focus-within,.ids-input:not([class*=color-variant-]) .alert:hover.is-active,.ids-input:not([class*=color-variant-]) .warning:focus-within,.ids-input:not([class*=color-variant-]) .warning.is-active,.ids-input:not([class*=color-variant-]) .warning:hover:focus-within,.ids-input:not([class*=color-variant-]) .warning:hover.is-active{border-color:var(--ids-input-color-border-alert-default);box-shadow:var(--ids-input-shadow-alert-focus) 0 0 3px 2px}.ids-input:not([class*=color-variant-]) .alert[disabled],.ids-input:not([class*=color-variant-]) .alert:hover[disabled],.ids-input:not([class*=color-variant-]) .warning[disabled],.ids-input:not([class*=color-variant-]) .warning:hover[disabled]{border-color:var(--ids-input-color-border-alert-disabled);color:var(--ids-input-color-text-alert-disabled)}.ids-input:not([class*=color-variant-]) .field-container.error,.ids-input:not([class*=color-variant-]) .field-container.error:hover{border-color:var(--ids-input-color-border-error-default);color:var(--ids-input-error-color-text-error-default)}.ids-input:not([class*=color-variant-]) .field-container.error.field-container:not(:focus-within),.ids-input:not([class*=color-variant-]) .field-container.error:hover.field-container:not(:focus-within){border-color:var(--ids-input-color-border-error-default);color:var(--ids-input-error-color-text-error-default)}.ids-input:not([class*=color-variant-]) .field-container.error:focus-within,.ids-input:not([class*=color-variant-]) .field-container.error.is-active,.ids-input:not([class*=color-variant-]) .field-container.error:hover:focus-within,.ids-input:not([class*=color-variant-]) .field-container.error:hover.is-active{border-color:var(--ids-input-color-border-error-default);box-shadow:var(--ids-input-color-shadow-error-focus) 0 0 3px 2px}.ids-input:not([class*=color-variant-]) .field-container.error[disabled],.ids-input:not([class*=color-variant-]) .field-container.error:hover[disabled]{border-color:var(--ids-input-color-border-error-disabled);color:var(--ids-input-color-border-error-disabled)}.ids-input:not([class*=color-variant-]) .info,.ids-input:not([class*=color-variant-]) .info:hover{border-color:var(--ids-input-color-border-info-default);color:var(--ids-input-color-text-info-default)}.ids-input:not([class*=color-variant-]) .info:focus-within,.ids-input:not([class*=color-variant-]) .info.is-active,.ids-input:not([class*=color-variant-]) .info:hover:focus-within,.ids-input:not([class*=color-variant-]) .info:hover.is-active{border-color:var(--ids-input-color-border-info-default);box-shadow:var(--ids-input-shadow-info-focus) 0 0 3px 2px}.ids-input:not([class*=color-variant-]) .info[disabled],.ids-input:not([class*=color-variant-]) .info:hover[disabled]{border-color:var(--ids-input-color-border-info-disabled);color:var(--ids-input-color-text-info-disabled)}.ids-input:not([class*=color-variant-]) .success,.ids-input:not([class*=color-variant-]) .success:hover{border-color:var(--ids-input-color-border-success-default);color:var(--ids-input-color-text-success-default)}.ids-input:not([class*=color-variant-]) .success:focus-within,.ids-input:not([class*=color-variant-]) .success.is-active,.ids-input:not([class*=color-variant-]) .success:hover:focus-within,.ids-input:not([class*=color-variant-]) .success:hover.is-active{border-color:var(--ids-input-color-border-success-default);box-shadow:var(--ids-input-shadow-success-focus) 0 0 3px 2px}.ids-input:not([class*=color-variant-]) .success[disabled],.ids-input:not([class*=color-variant-]) .success:hover[disabled]{border-color:var(--ids-input-color-border-success-disabled);color:var(--ids-input-color-text-success-disabled)}.ids-input.color-variant-alternate .field-container{border-color:var(--ids-input-header-color-border);color:var(--ids-input-header-color-text-default);background-color:var(--ids-input-header-color-background);border-bottom:1px solid var(--ids-input-header-color-border);box-shadow:none}.ids-input.color-variant-alternate:focus-within .field-container{border-color:var(--ids-input-color-border-focus);box-shadow:var(--ids-input-color-border-shadow)}.ids-input.color-variant-alternate .ids-input-field{color:var(--ids-input-header-color-text-default)}.ids-input.color-variant-alternate .ids-input-field::placeholder{color:var(--ids-input-header-color-text-placeholder)}.ids-input.color-variant-alternate.readonly-background .ids-input-field::placeholder{color:var(--ids-input-header-color-text-placeholder)}.ids-input.color-variant-alternate-formatter .field-container{background-color:var(--ids-data-grid-filter-input-color-background);border-color:var(--ids-data-grid-filter-input-color-border-default);color:var(--ids-data-grid-filter-input-color-text-default)}.ids-input.color-variant-alternate-formatter:hover.readonly.readonly-background .field-container,.ids-input.color-variant-alternate-formatter:hover:not(.readonly):not(.disabled) .field-container{border-color:var(--ids-data-grid-filter-input-color-border-hover)}.ids-input.color-variant-alternate-formatter:focus-within .field-container,.ids-input.color-variant-alternate-formatter:focus-within:hover.readonly.readonly-background,.ids-input.color-variant-alternate-formatter:focus-within:hover:not(.readonly):not(.disabled) .field-container{border-color:var(--ids-data-grid-filter-input-color-border-focus)}.ids-input.color-variant-alternate-formatter:focus-within .ids-input-field{box-shadow:var(--ids-input-color-border-shadow)}.ids-input.color-variant-alternate-formatter.disabled .field-container,.ids-input.color-variant-alternate-formatter.disabled:hover .field-container{border-color:var(--ids-data-grid-filter-input-color-border-disabled);color:var(--ids-data-grid-filter-input-color-text-disabled)}.ids-input.color-variant-alternate-formatter.readonly:not(.readonly-background):not(.bg-transparent) .field-container{background-color:var(--ids-data-grid-filter-input-color-background-readonly);border-color:var(--ids-data-grid-filter-input-color-border-readonly);color:var(--ids-data-grid-filter-input-color-text-readonly)}.ids-input.color-variant-alternate-formatter .ids-input-field::placeholder{color:var(--ids-data-grid-filter-input-color-text-placeholder)}.ids-input.color-variant-app-menu .field-container{color:var(--ids-input-color-text-app-menu)}.ids-input.color-variant-list-builder .field-container{background-color:var(--ids-color-transparent);color:var(--ids-list-builder-input-text-color);border:0}.ids-input.color-variant-module-nav{color:var(--ids-module-nav-search-input-text-color)}.ids-input.color-variant-module-nav .field-container{background-color:var(--ids-color-transparent);border-color:var(--ids-color-transparent);color:inherit}.ids-input.color-variant-module-nav .ids-input-field{background-color:var(--ids-color-transparent);color:inherit}.ids-input.color-variant-module-nav .ids-input-field::placeholder{color:var(--ids-module-nav-search-input-placeholder-text-color)}.ids-input.color-variant-module-nav .ids-input-field:active{color:var(--ids-module-nav-search-input-text-color)}.ids-input.color-variant-module-nav.has-clearable .btn-clear{margin-inline-end:5px}.ids-input.color-variant-module-nav:hover .field-container{background-color:var(--ids-module-nav-search-input-hover-bg-color)}.ids-input.color-variant-module-nav:hover .ids-input-field::placeholder{color:var(--ids-module-nav-search-input-placeholder-text-color)}.ids-input.color-variant-module-nav:hover .ids-input-field{color:var(--ids-module-nav-input-text-color)}.ids-input.color-variant-module-nav:focus-within .field-container,.ids-input.color-variant-module-nav.readonly:focus-within .field-container,.ids-input.color-variant-module-nav.is-active .field-container{background-color:var(--ids-module-nav-input-focus-bg-color);border-color:var(--ids-module-nav-item-selected-text-color);box-shadow:none}.ids-input.color-variant-module-nav:focus-within .ids-input-field::placeholder,.ids-input.color-variant-module-nav.readonly:focus-within .ids-input-field::placeholder,.ids-input.color-variant-module-nav.is-active .ids-input-field::placeholder{color:var(--ids-module-nav-search-input-focused-placeholder-text-color)}.ids-input.color-variant-module-nav:focus-within .ids-input-field,.ids-input.color-variant-module-nav.readonly:focus-within .ids-input-field,.ids-input.color-variant-module-nav.is-active .ids-input-field{color:var(--ids-module-nav-input-text-color)}:host(.tab-name-editor) .ids-input{margin-block-end:unset}:host(.tab-name-editor) .ids-label-text{display:none}.caps-lock-indicator{padding-inline-start:var(--ids-space-xs);padding-inline-end:var(--ids-space-xs)}.show-hide-password{padding-inline-end:var(--ids-space-3xs)}.is-uppercase{text-transform:uppercase}.is-lowercase{text-transform:lowercase}.highlight{font-weight:var(--ids-font-weight-bold)}.ids-input-field[type=number]::-webkit-inner-spin-button,.ids-input-field[type=number]::-webkit-outer-spin-button{appearance:none}.ids-input-field::-webkit-caps-lock-indicator{visibility:hidden}:host ids-popup[type=dropdown]{width:100%;max-width:var(--ids-input-width-40)}:host(:not([show-loading-indicator=true])) ::slotted(.slot-loading-indicator){display:none}:host([show-loading-indicator=true]){pointer-events:none}:host([show-loading-indicator=true]) ::slotted(ids-loading-indicator){margin-top:3px;margin-bottom:3px}:host([show-loading-indicator=true]) ::slotted(ids-trigger-button[slot=trigger-end]){display:none}:host([show-loading-indicator=true]) ::slotted(.slot-loading-indicator){margin-inline-end:12px;margin-inline-start:var(--ids-space-xs)}:host([show-loading-indicator=true][field-height=xs]) ::slotted(.slot-loading-indicator){margin-inline-start:var(--ids-space-2xs);margin-inline-end:var(--ids-space-2xs)}:host([show-loading-indicator=true][field-height=sm]) ::slotted(.slot-loading-indicator){margin-inline-end:var(--ids-space-xs);margin-inline-start:var(--ids-space-2xs)}::slotted(.audible){clip:rect(0, 0, 0, 0);height:0;line-height:0;min-height:0;overflow:hidden;padding:0;position:absolute;width:1px}:host([field-indicator][readonly]),:host([field-indicator][disabled]){--ids-field-indicator-info-visibility: none}.icon-error-tracker{position:absolute;color:var(--ids-input-error-tracker-color-background, var(--ids-color-red-60));top:0;pointer-events:none}.icon-error-tracker[dir=rtl]{transform:rotate(90deg);top:0}:host([size=xs]),:host([size=sm]),:host([size=mm]),:host([size=md]),:host([size=lg]){width:auto}:host([part=trigger-field]){justify-content:flex-start}:host([data-filter-type]){--ids-trigger-field-min-width: 40px;margin-inline-end:0}:host([data-filter-type]) ::slotted(ids-trigger-button){margin-inline-end:6px}.ids-trigger-field{justify-content:inherit}.ids-trigger-field.compact .field-container,.ids-trigger-field.field-height-xs .field-container{height:calc(var(--ids-input-height-10) - 2px)}.ids-trigger-field .field-container.square,.ids-trigger-field .filter-container.square{border-radius:0}.ids-trigger-field .field-container{min-width:var(--ids-trigger-field-min-width)}.ids-trigger-field .field-container .icon-dirty{pointer-events:none;z-index:1}.ids-trigger-field .field-container .icon-error-tracker{pointer-events:none;z-index:1}::slotted(*[slot=trigger-end]:not(.spinbox-button)){margin-inline-end:4px;width:24px}::slotted(*[slot=trigger-end].xs){margin-inline-end:4px;width:24px}::slotted(*[slot=trigger-end].md){margin-inline-end:4px;width:24px;height:24px;margin-top:2px;margin-bottom:2px}::slotted(*[slot=trigger-end][compact]){margin-inline-end:6px;width:24px}.ids-input.color-variant-alternate-formatter:focus-within .field-container.is-focused{border-color:var(--ids-color-border-focus);box-shadow:var(--ids-accordion-header-shadow-focus)}.ids-input.color-variant-alternate-formatter:focus-within .field-container.hide-focus{box-shadow:none;border-color:var(--ids-data-grid-filter-input-color-background-readonly)}.ids-input.color-variant-alternate-formatter:focus-within .ids-input-field{box-shadow:none}.field-container.collapsed .btn-clear{display:none}:host(:not([collapsed])) ::slotted(ids-trigger-button.expand-button){display:none}:host([collapsed]) ::slotted(ids-trigger-button.expand-button){display:block;position:relative;top:var(--ids-trigger-button-offset-top, 0)}:host([combobox]) .field-container input{border-inline-end:1px solid var(--ids-trigger-field-combobox-border)}:host([combobox]) ::slotted(ids-trigger-button){width:32px}
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2J1aWxkcy9pbmZvci1kZXNpZ24vZW50ZXJwcmlzZS13Yy9zcmMvY29tcG9uZW50cy9pZHMtdHJpZ2dlci1maWVsZCIsInNvdXJjZXMiOlsiLi4vLi4vdGhlbWVzL21peGlucy9pZHMtY2xlYXJhYmxlLW1peGluLnNjc3MiLCIuLi8uLi90aGVtZXMvbWl4aW5zL2lkcy1kaXJ0eS10cmFja2VyLW1peGluLnNjc3MiLCIuLi8uLi90aGVtZXMvbWl4aW5zL2lkcy1maWVsZC1pbmRpY2F0b3ItbWl4aW4uc2NzcyIsIi4uLy4uL3RoZW1lcy9taXhpbnMvaWRzLWxhYmVsLXN0YXRlLW1peGluLnNjc3MiLCIuLi8uLi90aGVtZXMvbWl4aW5zL2lkcy12YWxpZGF0aW9uLW1peGluLnNjc3MiLCIuLi8uLi90aGVtZXMvbWl4aW5zL2lkcy1jb3JlLW1peGlucy5zY3NzIiwiLi4vLi4vdGhlbWVzL21peGlucy9pZHMtbGFiZWwtcG9zaXRpb24tbWl4aW4uc2NzcyIsIi4uL2lkcy1pbnB1dC9pZHMtaW5wdXQuc2NzcyIsIi4uLy4uL3RoZW1lcy9taXhpbnMvaWRzLWVycm9yLXRyYWNrZXItbWl4aW4uc2NzcyIsImlkcy10cmlnZ2VyLWZpZWxkLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkNBT0ksd0tBQ0UsVUFFQSw0TUFDRSxhQUdGLHdOQUNFLHNCQUNBLGNBT0YsNkZBQ0UsYUFDQSxvQkFRSixrREFDRSx3QkFFQSw2REFDRSxhQUNBLFdBTVIsOENBQ0UsWUM1Q0YsWUFDRSwyQ0FDQSwwQ0FFQSxrQkFDQSw4REFDQSxNQUVBLHFCQUNFLHdCQUNBLE1BR0YsOEJBQ0UscUJBS0osOEJBQ0UseUJBR0Ysc0NBQ0UseUJBR0YsMEJBQ0UsUUFDQSx3QkFFQSxtQ0FDRSxRQ2hDSixzQkFDRSxrQkFDQSxNQUNBLG9CQUVBLCtCQUNFLHdCQUNBLE1BSUosMkJBQ0UseURBQ0EsbUJBQ0EsOEVBQ0EsZUFDQSxzRUFvQkYseUJBZkUsdUVBU0EsK0NBQ0UsMkNBU0osc0JBbkJFLGdFQVNBLDRDQUNFLG9DQWFKLHlCQXZCRSxtRUFTQSwrQ0FDRSx1Q0FpQkoseUJBM0JFLG1FQVNBLCtDQUNFLHVDQXFCSix5QkEvQkUsbUVBU0EsK0NBQ0UsdUNBeUJKLHVCQW5DRSxpRUFTQSw2Q0FDRSxxQ0E4QkYsK0RBQ0UsYUN6REUsa0RBQ0UsWUFRTixnREFDRSxhQUNBLFFBS0YsNEZBQ0UsTUFLRiw0SUFDRSxvQkMzQkosb0JDUUUsbUNBQ0Esa0NETkEsYUFDQSw4RUFDQSxnQ0FDQSxzQ0FFQSxvQ0FDRSxvQ0FHRiw2QkFDRSwyQ0FHRiw4QkFDRSx1Q0FHRiwwQkFDRSx1Q0FFQSxtQ0FDRSxpQ0FJSiw0QkFDRSx1Q0FFQSxxQ0FDRSxpQ0FJSiwwQkFDRSxxQ0FFQSxtQ0FDRSw4QkFJSix5QkFDRSxvQ0FFQSxrQ0FDRSwrQkFJSiw0QkFDRSx1Q0FFQSxxQ0FDRSxnQ0FJSiw0QkFDRSxhQUtGLG9EQUNFLGFFaEVGLG1HQUVFLGFBQ0EsNkNBR0EsK0dBQ0UsNkJBQ0EsNkNBQ0EscUJBQ0Esc0JBQ0EsY0FJRiwySUFDRSxXQUNBLHdDQUVBLHlCQUpGLDJJQUtJLHVCQUtGLHNCQURGLG1JQUVJLHFCQUdGLG9DQUxGLG1JQU1JLHFCQUlKLHlCQWxDRixtR0FtQ0ksZUFDQSxRQUVBLCtHQUNFLGNBQ0Esb0JBQ0EsUUFHRixxSUFDRSxRQUdGLCtJQUNFLFFBQ0EsY0FDQSxZQUdGLDJJQUNFLGNBQ0EsZUFDQSxRQUNBLG9EQUlBLDJKQUNFLG9EQUNBLHdEQU1SLG1EQUNFLCtCQUdGLHlCQUNFLG1EQUNFLGFBQ0EsZUFDQSw2Q0FHQSx5REFDRSxhQUNBLG1CQUNBLFdBQ0EsNkNBQ0Esc0JBQ0Esd0JBR0YsbUVBQ0UsNkJBQ0EsY0FHRixxRUFDRSxrQkFDQSxvQkFHRixvRUFDRSxPQUdGLHVFQUNFLFdBQ0EsdUVBQ0Esd0NBSUEsNkZBQ0UsMkJBTVIsOEJBQ0UsbURBQ0UsYUFDQSxlQUNBLDZDQUdBLHlEQUNFLGFBQ0EsbUJBQ0EsV0FDQSw2Q0FDQSxzQkFDQSx3QkFHRixtRUFDRSw2QkFDQSxjQUdGLHFFQUNFLGtCQUNBLG9CQUdGLG9FQUNFLE9BR0YsdUVBQ0UsV0FDQSx1RUFDQSx5Q0FRTix1RUFDRSxzQkFFQSx1QkFIRix1RUFJSSxhQUNBLGVBQ0EsNkNBRUEsNkVBQ0UsYUFDQSxtQkFDQSxXQUNBLDZDQUNBLHVEQUNBLHNCQUNBLHdCQUdGLHVGQUNFLDZCQUNBLGNBR0YseUZBQ0Usa0JBQ0Esb0JBR0Ysd0ZBQ0UsT0FHRiwyRkFDRSxXQUNBLHVFQUNBLHlDQU9OLDZJQUVFLG1DQUVBLHNVQUVFLG9CQUNBLDZDQUNBLHlCQUNBLGVBQ0Esa0JBRUEsc0JBUkYsc1VBU0ksMkJBQ0EsaUJBQ0Esa0JBR0YsMkJBZEYsc1VBZUksMkJBQ0EsaUJBQ0Esa0JBSUEsc1lBQ0Usb0JBQ0Esa0JBQ0EsaUJBQ0Esc0JBQ0EsUUFHQSwyQkFSRixzWUFTSSxpQkFDQSxpQkFDQSwwQkFJRixzQkFmRixzWUFnQkksaUJBQ0EsaUJBQ0EsMEJBT1YsMkVBQ0UsT0FHRixxTUFFRSx3REFJQSw4RUFDRSxlQUVBLHNCQUhGLDhFQUlJLGtCQUdGLDJCQVBGLDhFQVFJLGtCQUlBLG1IQUNFLG9CQUNBLGtCQUNBLGlCQUNBLFdBQ0EsU0FPUixzQkFFSSw0RUFDRSxvQkFDQSxtQkFDQSx5QkFDQSxlQUVBLDJCQU5GLDRFQU9JLDZCQUdGLHlDQVZGLDRFQVdJLDRCQVFOLHFHQUNFLG9CQUNBLG1CQUNBLHlCQUlKLDJCQUVJLHFHQUNFLDRCQVdKLGtaQUVFLGFBTUosK1JBRUUsMENBT0YsZ2NBRUUsYUFDQSxpQkFFQSx3ZEFDRSxjQUdGLG9nQkFDRSxZQUNBLGNBSUYsZ2hCQUNFLFdBQ0Esc0JBUUosa1hBRUUsYUFDQSxNQUNBLDBDQUNBLDBDQUVBLDBZQUNFLGNBQ0EsV0FHRixzYkFDRSxjQUNBLFdBQ0EsWUFHRixrY0FDRSxpQkFDQSxXQUNBLFdBQ0Esc0JBQ0Esd0NBR0Ysa2VBQ0UsY0FDQSxzQkFHRix3L0NBQ0UsMENBTUosbUVBQ0Usb0RBSUEsZ0dBQ0UsbUJBQ0Esb0JBTUEsNkZBQ0UsYUFPTixzQkFDRSxnRkFDRSxhQUNBLCtDQUVBLDBHQUNFLDZCQUNBLGNBR0YscUZBQ0UsYUFDQSxzQkFDQSxlQUtOLDJCQUNFLGdGQUNFLGFBQ0EsK0NBRUEsMEdBQ0UsNkJBQ0EsY0FHRixxRkFDRSxhQUNBLHNCQUNBLGVBS04sc0JBQ0UsdUpBRUUsY0FHRiw2RUFDRSxPQUlKLDJCQUNFLHVPQUdFLGdCQU1KLHVCQUNFLDZHQUNFLGNBQ0EsTUFFQSxtSEFDRSxnQkFDQSw4Q0FPTixzQkFDRSxnRkFDRSxhQUNBLCtDQUVBLDBHQUNFLDZCQUNBLGNBR0YscUZBQ0UsYUFDQSxzQkFDQSxlQUtMLDJCQUNDLGdGQUNFLGFBQ0EsK0NBRUEsMEdBQ0UsNkJBQ0EsY0FHRixxRkFDRSxhQUNBLHNCQUNBLGVBT04seUlBRUUsYUFDQSxzQkFDQSxvQkFFQSxxSkFDRSxXQUNBLGNBR0YsMktBQ0UsWUFDQSxjQUlGLGlMQUNFLFdBQ0Esc0JBUUosOElBQ0UsYUFRQSxvY0FDRSxpQkFFQSx3ZUFDRSxxQkFFQSxvZ0JBQ0Usc0JBS04sb2ZBQ0Usd0RBUUosbUpBRUUsYUFFQSwrSkFDRSxjQUNBLFFBR0YscUxBQ0UsWUFDQSxjQUNBLFFBSUosd0VBQ0UsK0JBS0Ysc0JBQ0UsOEVBQ0UsYUFDQSwrQ0FFQSx3R0FDRSw2QkFDQSxvQkFDQSxjQUNBLFFBR0YsbUZBQ0UsYUFDQSxzQkFDQSxjQUNBLFNBT04scUlBRUUsYUFDQSxzQkFDQSxvQkFFQSxpSkFDRSxXQUNBLGNBQ0EsUUFHRix1S0FDRSxZQUNBLGNBQ0EsUUFJRiw2S0FDRSxzQkFDQSxRQUlKLGlFQUNFLCtCQUlKLHFDQUNFLHVEQVNFLHNWQUNFLDRDQUdGLDhYQUNFLGlCQU1OLHNCQUVJLG9HQUNFLCtDQUVBLG9IQUNFLDRDQU9SLHNCQUVJLHVEQUNFLGFBQ0EsZUFDQSwrQ0FFQSw2REFDRSw2QkFDQSw2Q0FDQSx1REFDQSxzQkFJRix3RUFDRSxrQkFDQSwwQ0FJRiwyRUFDRSxXQUNBLHlDQVFOLHNCQUVJLGtFQUNFLDZDQUdGLGdGQUNFLDZCQU1SLHlCQUVJLDRGQUNFLGNBR0YsZ0ZBQ0Usc0JBV04sb0lBRUUsYUFDQSxpREFDQSwrQkFFQSx3TEFDRSxpQ0FDQSwyQ0FHRiw4SUFDRSxhQUNBLHNCQUtGLDJGQUNFLG9CQUNBLFFBR0Ysc0VBQ0UsUUFLSiw2RUFDRSxhQUNBLCtDQUNBLCtCQUNBLHNCQUVBLHVHQUNFLGlDQUNBLFFBR0Ysa0ZBQ0UsYUFDQSxzQkFDQSxRQUtKLHNCQUNFLGlEQUNFLGFBQ0EsZUFDQSwrQ0FFQSx1REFDRSw2QkFDQSw2Q0FDQSx1REFDQSx1QkFDQSxzQkFHRiw4RUFDRSxXQUNBLFlBSUosOEVBQ0UscUJBQ0EsUUFJQSx1RkFDRSxXQUNBLGVBTU4sc0JBQ0UscURBQ0UsYUFDQSxtQkFDQSxRQUNBLCtDQUVBLDREQUNFLDZCQUNBLDZDQUNBLHNCQUNBLG1CQUNBLG1CQUdGLDZIQUVFLGFBQ0EsOENBTU4seUJBRUksMEpBR0UsYUFDQSxzQkFDQSxrQkFFQSw0S0FDRSxXQUNBLGlCQUNBLGlCQUdGLHNOQUNFLHNCQU1KLG9KQUdFLGFBQ0Esc0JBQ0Esa0JBQ0EsK0JBRUEsc0tBQ0UsV0FDQSxpQkFDQSxpQkFHRixnTkFDRSx1QkFNUiwrQkFDRSxxQkFFQSxrQkFHRiwyQ0FDRSxrQkFDQSxjQUdGLDhCQUVJLDBKQUdFLGFBQ0Esc0JBQ0Esa0JBRUEsNEtBQ0UsV0FDQSxpQkFDQSxpQkFHRixzTkFDRSxzQkFNSixvSkFHRSxhQUNBLHNCQUNBLGtCQUNBLCtCQUVBLHNLQUNFLFdBQ0EsaUJBQ0EsaUJBR0YsZ05BQ0UsdUJBT04seUJBQ0Usb0ZBQ0UsY0FLTiw4QkFFSSxvRkFDRSxjQWNGLCtXQUVFLDZCQVNKLDRNQUNFLGFBTUYsc01BQ0Usa0JDcjFCSixnQkYxSkUsbUNBQ0Esa0NFNEpBLDhFQUNBLGdEQUNBLGFBQ0EsZ0RBQ0EscUJBR0Esd0JBSUUsOEJBQ0UsWUFLRixnQ0FDRSxrQkFDQSw4RUFDQSx5Q0FDQSx1Q0FDQSxrQ0FDQSw2REFDQSxZQUNBLGlCQUNBLFFBR0EsY0FHRiw0RkFFRSxXQUlKLGlGQUVFLGVBS0YsMEJBQ0UsaURBQ0EsMENBRUEsMENBQ0UsOERBMEJOLE1BQ0UsY0FDQSxzQ0FFQSxpQkFDRSxxQkFDQSx1Q0FJSixnQkFDRSxhQU1GLDhHQUNvRCx1Q0FFcEQsOEdBQ29ELHNDQUVwRCw4R0FDb0Qsc0NBRXBELDhHQUNvRCxzQ0FFcEQsMEdBQ29ELHFDQUVwRCwwR0FDb0QscUNBRXBELDBHQUNvRCxxQ0FFcEQsMEdBQ29ELHFDQUVwRCwwR0FDb0QscUNBRXBELDhHQUNvRCxzQ0FFcEQsOEdBQ29ELHNDQUVwRCw4R0FDb0Qsc0NBR2xELHNEQUNFLDJEQUdGLGdEQUNFLDJEQUtGLGlFQUNFLE9BQ0EsWUFJSiw4QkFDRSxvQ0FHRiw4QkFDRSxvQ0FHRiw4QkFDRSxvQ0FHRiw4QkFDRSxvQ0FHRiw4QkFDRSxvQ0FHRiw2R0FFRSxZQUdGLG1CQUNFLFdBSUEseUNBQ0UsdUJBblBGLDZDQUNFLGFBQ0EsZ0JBQ0EsdUJBQ0EsbUJBRUEsc0RBQ0UsY0FDQSxrQkFDQSxlQUNBLGdCQUNBLHVCQUNBLG1CQUNBLFlBQ0EsY0FHRixzREFDRSx1Q0FFQSw2REFDRSxjQUNBLHlDQXRCTix3REFDRSxhQUNBLGdCQUNBLHVCQUNBLG1CQUVBLGlFQUNFLGNBQ0Esa0JBQ0EsZUFDQSxnQkFDQSx1QkFDQSxtQkFDQSxZQUNBLGNBR0YsaUVBQ0UsdUNBRUEsd0VBQ0UsY0FDQSx5Q0FlTiw0REFDRSxrREFHRiw0REFDRSxrREFHRiw0REFDRSxrREFHRiw0REFDRSxrREFHRiw0REFDRSxrREFHRiw4REFDRSwyQkFyQkYsd0RBQ0Usa0RBR0Ysd0RBQ0Usa0RBR0Ysd0RBQ0Usa0RBR0Ysd0RBQ0Usa0RBR0Ysd0RBQ0Usa0RBR0YsMERBQ0UsMkJBeU1GLG9EQUNFLHVCQUlKLFdBQ0Usa0JBQ0EsY0FDQSxxQ0FDQSxzQ0FHQSw0QkFDRSxpQkFDQSx5QkFDQSwyQ0FDQSxzQkFDQSxjQUNBLGFBQ0EsbUJBQ0EsNkJBQ0Esc0NBQ0EsOEJBQ0Esa0JBQ0EsWUFDQSxnQkFFQSwyQ0FDRSw0QkFDQSwwQkFFQSw0REFDRyx5Q0FLUCxtQ0FDRSw0Q0FNQSxpSUFDRSxhQUNBLDJDQUdGLGlJQUNFLGlEQUNBLGdEQUNBLDJEQUlKLG1DQUNFLHdDQUdGLGlDQUNFLHNDQUlGLDRCRi9aQSxtQ0FDQSxrQ0VpYUUsc0JBQ0EsOENBQ0EsWUFDQSxjQUNBLDhFQUNBLHlDQUNBLHVDQUNBLHlDQUNBLHVEQUNBLHFDQUNBLFdBRUEsMENBQ0UsYUFoQkosNEJBbUJFLGdCQUNBLHFCQUNBLG1CQUNBLFlBQ0EsZ0JBQ0EsdUJBRUEsMENBQ0UsdUJBSUYsa0NBQ0UsaUJBR0YseUNBQ0UsOENBR0YsbUNBQ0Usa0JBR0YsZ0NBQ0UsZUFLRix5Q0FDRSx5Q0FDQSx3Q0FLSiwrQkFDRSx3Q0FDQSxvQ0FFQSx5Q0FDRSxzQkFDQSxlQU9KLG9EQUVFLGNBQ0EsNkJBRUEsb0ZBQ0UsdUNBR0Ysc0ZBQ0Usb0NBR0Ysc0ZBQ0UsNkJBSUYsNEZBQ0Usb0NBQ0Esd0NBSUEsZ0dBQ0UsNkJBQ0EsYUFDQSxrQkFDQSxTQVFKLGlFQUVFLE1BMWdCaUIsZ0NBNmdCbkIsa0NBQ0UsVUE5Z0JpQixnQ0FtaEJuQiwrQkFDRSxNQW5oQmlCLGdDQXNoQm5CLGtDQUNFLFVBdmhCaUIsZ0NBNGhCbkIsK0JBQ0UsTUEzaEJpQixnQ0E4aEJuQixrQ0FDRSxVQS9oQmlCLGdDQW9pQm5CLCtCQUNFLE1BdGlCaUIsZ0NBeWlCbkIsa0NBQ0UsVUExaUJpQixnQ0EraUJuQiwrQkFDRSxNQTlpQmlCLGdDQWlqQm5CLGtDQUNFLFVBbGpCaUIsZ0NBc2pCckIsZ0JBQ0UsY0FFQSxxRUFFRSxrQ0FJSix5QkFFSSwyS0FFRSxVQXBrQmUsZ0NBcWtCZixlQUdGLG9GQUNFLGNBQ0EsV0Exa0JlLGdDQTJrQmYsdUJBT04sMkJBaFlBLDBDQUVBLHVDQUNFLE1BR0YsMkNBQ0UsMkNBR0YsNENBQ0UsMENBQ0Esd0NBQ0EsY0FDQSxpQkFDQSx3Q0FDQSxPQWhPMkIsdUNBbWxCM0IsNENBQ0Usb0NBRUEsMEhBRUUsb0NBS04sNENBQ0UsT0E3bEIyQix1Q0FnbUI3Qiw0Q0FDRSxPQWhtQjJCLHVDQW1tQjdCLDRDQUNFLE9Bbm1CMkIsdUNBdW1CN0IsbUJBMVpBLDBDQUVBLCtCQUNFLE1BR0YsbUNBQ0UsMkNBR0Ysb0NBQ0UsMENBQ0Esd0NBQ0EsY0FDQSxpQkFDQSx3Q0FDQSxPQWhPMkIsdUNBNm1CM0Isb0NBQ0Usb0NBRUEsMEdBRUUsb0NBQ0EsT0FubkJ1Qix1Q0F1bkIzQix5REFDRSw4Q0FPSixvQ0FDRSw2REFFQSxXQUNBLDRDQUVBLDBDQUNFLGtDQUdGLHdIQUVFLGFBR0Ysb0RBQ0UsYUFHRixnREFDRSxhQUdGLHdEQUNFLGFBR0YscURBQ0UseURBQ0Esc0NBR0Ysa0VBQ0UsZ0JBSUEsK0VBQ0UsK0NBS0YsK0VBQ0UsK0NBS0YsK0VBQ0UsK0NBS0YsK0VBQ0UsNENBQ0Esb0NBR0YscUZBQ0UseUNBS0YsZ0ZBQ0UsNENBQ0Esb0NBR0Ysc0ZBQ0UseUNBTU4saUNBQ0UsV0FFQSx1Q0FDRSxrQ0FFQSx5REFDRSxvRUFFQSw0Q0FDQSx5QkFJSixxREFDRSxhQUdGLDRFQUNFLG9CQUNBLFlBR0YsaUVBQ0Usa0JBQ0EsY0FHRiw0RUFDRSxtQkFDQSxZQUdGLDRFQUNFLG9DQUNBLFlBR0YsaUZBQ0UsbUNBR0YsNEVBQ0UsbUJBQ0EsWUFHRixpRkFDRSxrQkFNSixvQ0FDRSx1Q0FDQSxvTUFJQSxxREFDRSx5REFDQSxvRUFHRiwwQ0FDRSw4Q0FDQSxjQUVBLHVEQUNFLGdFQUdGLGlEQUNFLG9EQUlKLGdFQUNFLG1EQUVBLHNFQUNFLGlEQVNKLDRFQUNFLDJEQUNBLG1EQUNBLDBDQU9FLHdlQUVFLDRDQUNBLHFDQUtGLHNXQUdFLDREQU1KLHlOQUdFLG9EQUNBLDJDQUNBLDBDQUdBLDZEQUtGLDBPQUdFLDhDQUlBLHFGQUNFLDhDQVFKLHVQQUNFLGlEQXoxQk4sNDZCQUlFLHlEQUNBLGdEQUVBLGdoRUFFRSx5REFDQSwyREFHRiw0L0JBQ0UsMERBQ0EsaURBSUosa2hCQUVFLHlEQUNBLHNEQUVBLDhwQkFDRSx5REFDQSxzREFHRixnb0NBRUUseURBQ0EsaUVBR0YsMGpCQUNFLDBEQUNBLG1EQUlKLDhjQUVFLHdEQUNBLCtDQUVBLHcvQkFFRSx3REFDQSwwREFHRixzZkFDRSx5REFDQSxnREFJSiwwZEFFRSwyREFDQSxrREFFQSxnaENBRUUsMkRBQ0EsNkRBR0Ysa2dCQUNFLDREQUNBLG1EQTJ4QkEseUtBQ0UsaURBbjJCTixvbkJBSUUseURBQ0EsZ0RBRUEsZzZDQUVFLHlEQUNBLDJEQUdGLG9zQkFDRSwwREFDQSxpREFJSixzWEFFRSx5REFDQSxzREFFQSxrZ0JBQ0UseURBQ0Esc0RBR0YsdzBCQUVFLHlEQUNBLGlFQUdGLDhaQUNFLDBEQUNBLG1EQUlKLGtUQUVFLHdEQUNBLCtDQUVBLGdzQkFFRSx3REFDQSwwREFHRiwwVkFDRSx5REFDQSxnREFJSiw4VEFFRSwyREFDQSxrREFFQSx3dEJBRUUsMkRBQ0EsNkRBR0Ysc1dBQ0UsNERBQ0EsbURBb3lCQSw2SUFDRSxrRUE1MkJOLDRNQUlFLHlEQUNBLGdEQUVBLG9mQUVFLHlEQUNBLDJEQUdGLG9QQUNFLDBEQUNBLGlEQUlKLG9JQUVFLHlEQUNBLHNEQUVBLDBNQUNFLHlEQUNBLHNEQUdGLHNUQUVFLHlEQUNBLGlFQUdGLHdKQUNFLDBEQUNBLG1EQUlKLGtHQUVFLHdEQUNBLCtDQUVBLGtQQUVFLHdEQUNBLDBEQUdGLHNIQUNFLHlEQUNBLGdEQUlKLHdHQUVFLDJEQUNBLGtEQUVBLDhQQUVFLDJEQUNBLDZEQUdGLDRIQUNFLDREQUNBLG1EQSt5QkYsb0RBQ0Usa0RBQ0EsaURBQ0EsMERBQ0EsNkRBQ0EsZ0JBR0YsaUVBQ0UsaURBQ0EsZ0RBR0Ysb0RBQ0UsaURBRUEsaUVBQ0UscURBS0YscUZBQ0UscURBT0osOERBQ0Usb0VBQ0Esb0VBQ0EsMkRBS0EsbU1BQ0Usa0VBS0YsdVJBR0Usa0VBR0YsMkVBQ0UsZ0RBTUYsb0pBQ0UscUVBQ0EsNERBSUosc0hBQ0UsNkVBQ0EscUVBQ0EsNERBR0YsMkVBQ0UsK0RBTUYsbURBQ0UsMkNBTUYsdURBQ0UsOENBQ0EsK0NBQ0EsU0FNSixvQ0FDRSxvREFHQSxxREFDRSw4Q0FDQSwwQ0FDQSxjQUdGLHFEQUNFLDhDQUNBLGNBRUEsa0VBQ0UsZ0VBR0YsNERBQ0Usb0RBS0YsNkRBQ0Usc0JBS0YsMkRBQ0UsbUVBR0Ysd0VBQ0UsZ0VBR0YsMkRBQ0UsNkNBT0YsNE1BQ0UsNERBQ0EsNERBQ0EsZ0JBR0YsbVBBQ0Usd0VBR0YsNE1BQ0UsNkNBT04sbUNBQ0UsdUJBSUYsd0NBQ0UsYUFJSixxQkFDRSx5Q0FDQSx1Q0FHRixvQkFDRSx3Q0FHRixjQUNFLHlCQUdGLGNBQ0UseUJBR0YsV0FDRSx3Q0FHRixrSEFFRSxnQkFJRiw4Q0FDRSxrQkFJRiwrQkFDRSxXQUNBLG9DQUtBLDhFQUNFLGFBSUoscUNBQ0Usb0JBRUEsc0VBQ0UsZUFDQSxrQkFHRixxRkFDRSxhQUdGLHdFQUNFLHVCQUNBLHdDQUtGLHlGQUNFLHlDQUNBLHVDQUtGLHlGQUNFLHNDQUNBLHlDQUlKLG9CRnZtQ0Usc0JBQ0EsU0FDQSxjQUNBLGFBQ0EsZ0JBQ0EsVUFDQSxrQkFDQSxVRW9tQ0Ysc0VBRUUsNENDcG9DRixvQkFDRSxrQkFDQSwrRUFDQSxNQUNBLG9CQUVBLDZCQUNFLHdCQUNBLE1DSkoscUZBS0UsV0FJRiw0QkFDRSwyQkFJRiwwQkFDRSxvQ0FFQSxvQkFFQSx3REFDRSxzQkFJSixtQkFDRSx3QkFJRSxnR0FDRSw4Q0FJSix1RkFFRSxnQkFHRixvQ0FDRSw2Q0FHQSxnREFDRSxvQkFDQSxVQUlGLHdEQUNFLG9CQUNBLFVBS04sb0RBQ0Usc0JBQ0EsV0FHRixrQ0FDRSxzQkFDQSxXQUdGLGtDQUNFLHNCQUNBLFdBQ0EsWUFDQSxlQUNBLGtCQUdGLHdDQUNFLHNCQUNBLFdBS0Usc0ZBQ0UsMkNBQ0Esb0RBR0Ysc0ZBQ0UsZ0JBQ0EseUVBR0YsMkVBQ0UsZ0JBS04sc0NBQ0UsYUFJQSxxRUFDRSxhQUtGLCtEQUNFLGNBQ0Esa0JBQ0EsNENBS0YseUNBQ0UscUVBR0YsZ0RBQ0UiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENzcyBmb3IgY2xlYXJhYmxlIG1peGluXG4gKi9cbi5pZHMtaW5wdXQsXG4uaWRzLXRleHRhcmVhIHtcbiAgLmlkcy1pbnB1dC1maWVsZCxcbiAgLmlkcy10ZXh0YXJlYS1maWVsZCB7XG4gICAgLmJ0bi1jbGVhciB7XG4gICAgICBvdXRsaW5lOiAwO1xuXG4gICAgICAmLmlzLWVtcHR5IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgW3Nsb3Q9J2ljb24nXSB7XG4gICAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDA7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuaGFzLWNsZWFyYWJsZSB7XG4gICAgLmJ0bi1jbGVhciB7XG4gICAgICAmLmlzLWVtcHR5IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5pZHMtdHJpZ2dlci1maWVsZCB7XG4gIC5pZHMtaW5wdXQtZmllbGQge1xuICAgICYuaGFzLWNsZWFyYWJsZSB7XG4gICAgICBwYWRkaW5nLWlubGluZS1lbmQ6IDU1cHg7XG5cbiAgICAgIH4gLmJ0bi1jbGVhciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAtOHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uYnRuLWNsZWFyW3BhcnQ9J2NsZWFyYWJsZS1idXR0b24nXSBbc2xvdD0naWNvbiddIHtcbiAgcGFkZGluZzogMnB4O1xufVxuIiwiLy8gR2VuZXJhbCBEaXJ0eS1UcmFja2VyIGljb24gcGxhY2VtZW50XG4uaWNvbi1kaXJ0eSB7XG4gIC0taWRzLWljb24taGVpZ2h0LWRlZmF1bHQ6IDEycHggIWltcG9ydGFudDtcbiAgLS1pZHMtaWNvbi13aWR0aC1kZWZhdWx0OiAxMnB4ICFpbXBvcnRhbnQ7XG5cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb2xvcjogdmFyKC0taWRzLWlucHV0LWRpcnR5LWluZGljYXRvci1jb2xvci1iYWNrZ3JvdW5kLWRpcnR5KTtcbiAgdG9wOiAwO1xuXG4gICZbZGlyPSdydGwnXSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIHRvcDogMDtcbiAgfVxuXG4gICYudGFiLWRpcnR5LXRyYWNrZXIge1xuICAgIGluc2V0LWlubGluZS1zdGFydDogMDtcbiAgfVxufVxuXG4vLyBDb2xvciBwaWNrZXJcbi5pZHMtY29sb3ItcGlja2VyIC5pY29uLWRpcnR5IHtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogMzVweDtcbn1cblxuLmlkcy1jb2xvci1waWNrZXIuY29tcGFjdCAuaWNvbi1kaXJ0eSB7XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDI3cHg7XG59XG5cbi5pZHMtdGV4dGFyZWEgLmljb24tZGlydHkge1xuICB0b3A6IDFweDtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogMXB4O1xuXG4gICZbZGlyPSdydGwnXSB7XG4gICAgdG9wOiAycHg7XG4gIH1cbn1cbiIsIi8vIEZpZWxkIEluZGljYXRvciBpY29uIHBsYWNlbWVudFxuLmljb24tZmllbGQtaW5kaWNhdG9yIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICZbZGlyPSdydGwnXSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIHRvcDogMDtcbiAgfVxufVxuXG4uaWNvbi1maWVsZC1pbmRpY2F0b3ItaW5mbyB7XG4gIGRpc3BsYXk6IHZhcigtLWlkcy1maWVsZC1pbmRpY2F0b3ItaW5mby12aXNpYmlsaXR5LCBmbGV4KTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IHZhcigtLWlkcy1maWVsZC1pbmRpY2F0b3ItaW5mby1tYXJnaW4sIHZhcigtLWlkcy1zcGFjZS14cykpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1pZHMtZmllbGQtaW5kaWNhdG9yLWljb24tY29sb3IsIC0taWRzLWNvbG9yLWluZm8tZGVmYXVsdCk7XG59XG5cbi8vIE1peGluIHRvIGFwcGx5IGZpZWxkIGluZGljYXRvciBjb2xvciB2YXJpYWJsZXNcbkBtaXhpbiBmaWVsZC1pbmRpY2F0b3ItY29sb3IoJGNvbG9yLCAkYm9yZGVyLWNvbG9yOiBudWxsKSB7XG4gIC0taWRzLWZpZWxkLWluZGljYXRvci1pY29uLWNvbG9yOiAjeyRjb2xvcn07XG5cbiAgQGlmICRib3JkZXItY29sb3Ige1xuICAgIC0taWRzLWlucHV0LWJvcmRlci1kZWZhdWx0LWNvbG9yOiAjeyRib3JkZXItY29sb3J9O1xuICAgIC0taWRzLWlucHV0LWNvbG9yLWJvcmRlci1ob3ZlcjogI3skYm9yZGVyLWNvbG9yfTtcbiAgICAtLWlkcy1pbnB1dC1jb2xvci1ib3JkZXItZGlzYWJsZWQ6ICN7JGJvcmRlci1jb2xvcn07XG4gICAgLS1pZHMtaW5wdXQtY29sb3ItYm9yZGVyLWZvY3VzOiAjeyRib3JkZXItY29sb3J9O1xuICB9XG5cbiAgLmljb24tZmllbGQtaW5kaWNhdG9yIHtcbiAgICBjb2xvcjogI3skY29sb3J9O1xuICB9XG59XG5cbi8vIEZpZWxkIGluZGljYXRvciB0eXBlIGNsYXNzZXMg4oCUIGFwcGxpZWQgdG8gdGhlIGZpZWxkIGNvbnRhaW5lci5cbi5maWVsZC1pbmRpY2F0b3ItbmV1dHJhbCB7XG4gIEBpbmNsdWRlIGZpZWxkLWluZGljYXRvci1jb2xvcih2YXIoLS1pZHMtY29sb3ItYWNjZW50LW5ldXRyYWwtd2VhaykpO1xufVxuXG4uZmllbGQtaW5kaWNhdG9yLWluZm8ge1xuICBAaW5jbHVkZSBmaWVsZC1pbmRpY2F0b3ItY29sb3IodmFyKC0taWRzLWNvbG9yLWluZm8tZGVmYXVsdCkpO1xufVxuXG4uZmllbGQtaW5kaWNhdG9yLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBmaWVsZC1pbmRpY2F0b3ItY29sb3IodmFyKC0taWRzLWNvbG9yLXN1Y2Nlc3MtZGVmYXVsdCkpO1xufVxuXG4uZmllbGQtaW5kaWNhdG9yLWNhdXRpb24ge1xuICBAaW5jbHVkZSBmaWVsZC1pbmRpY2F0b3ItY29sb3IodmFyKC0taWRzLWNvbG9yLWNhdXRpb24tZGVmYXVsdCkpO1xufVxuXG4uZmllbGQtaW5kaWNhdG9yLXdhcm5pbmcge1xuICBAaW5jbHVkZSBmaWVsZC1pbmRpY2F0b3ItY29sb3IodmFyKC0taWRzLWNvbG9yLXdhcm5pbmctZGVmYXVsdCkpO1xufVxuXG4uZmllbGQtaW5kaWNhdG9yLWVycm9yIHtcbiAgQGluY2x1ZGUgZmllbGQtaW5kaWNhdG9yLWNvbG9yKHZhcigtLWlkcy1jb2xvci1lcnJvci1kZWZhdWx0KSk7XG59XG5cbltjbGFzcyo9XCJmaWVsZC1pbmRpY2F0b3ItXCJdLmhhcy1mb2N1cyB7XG4gIC5pY29uLWZpZWxkLWluZGljYXRvci1pbmZvIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIvLyBXaGVuIGEgbGFiZWwgaXMganVzdCBcImhpZGRlblwiIGl0IHN0aWxsIHRha2VzIHVwIHBoeXNpY2FsIHNwYWNlIHRvIHJlbWFpblxuLy8gaW4gYWxpZ25tZW50IHdpdGggb3RoZXIgaW5wdXQgZmllbGRzIGluIGEgZm9ybSB0aGF0IG1heSBoYXZlIHZpc2libGUgbGFiZWxzLlxuLy8gVGhpcyBzaW11bGF0ZXMgc3RhbmRhcmQgbGFiZWwgdGV4dCBzaXplIHdoaWxlIGVtcHR5IHdpdGggYSBub24tYnJlYWtpbmcgc3BhY2Vcbi5sYWJlbC1zdGF0ZS1oaWRkZW4ge1xuICAuaWRzLWxhYmVsLXRleHQge1xuICAgICYuZW1wdHkge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJ1xcMDBhMCc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFdoZW4gYSBsYWJlbCBpcyBcImNvbGxhcHNlZFwiIHNpbXBseSBkb24ndCBkaXNwbGF5IGl0LlxuOmhvc3QoW2xhYmVsLXN0YXRlPSdjb2xsYXBzZWQnXSkge1xuICAuaWRzLWlucHV0IGxhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAwO1xuICB9XG59XG5cbjpob3N0KFtsYWJlbC1zdGF0ZT0nY29sbGFwc2VkJ11bbGFiZWwtcG9zaXRpb249J2lubGluZS1zdGFydCddW2xhYmVsLWFsaWdubWVudD0nZW5kJ10pIHtcbiAgLmlkcy1pbnB1dCB7XG4gICAgZ2FwOiAwO1xuICB9XG59XG5cbjpob3N0KFtsYWJlbC1zdGF0ZT0nY29sbGFwc2VkJ11bbGFiZWwtcG9zaXRpb249J2lubGluZS1zdGFydCddW2xhYmVsLWFsaWdubWVudD0nZW5kJ11bbGFiZWwtd3JhcD0nZWxsaXBzaXMtbm8tc3RyZXRjaCddKSB7XG4gIC5pZHMtaW5wdXQgLmlkcy1sYWJlbC10ZXh0IHtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogMDtcbiAgfVxufVxuIiwiQHVzZSAnLi4vLi4vdGhlbWVzL21peGlucy9pZHMtY29yZS1taXhpbnMnIGFzIG1peGlucztcblxuLnZhbGlkYXRpb24tbWVzc2FnZSB7XG4gIEBpbmNsdWRlIG1peGlucy5hbnRpYWxpYXNlZCgpO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1pZHMtZm9udC1mYW1pbHktZGVmYXVsdCksIHZhcigtLWlkcy1mb250LWZhbWlseS1zeXN0ZW0tc2Fucyk7XG4gIG1hcmdpbi10b3A6IHZhcigtLWlkcy1zcGFjZS0yeHMpO1xuICBtYXgtd2lkdGg6IHZhcigtLWlkcy1pbnB1dC13aWR0aC1mdWxsKTtcblxuICAmLmhhcy1jdXN0b20taWNvbiB7XG4gICAgY29sb3I6IHZhcigtLWlkcy1pY29uLWNvbG9yLWRlZmF1bHQpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6IHZhcigtLWlkcy1pbnB1dC1jb2xvci10ZXh0LWRpc2FibGVkKTtcbiAgfVxuXG4gIC5pZHMtaWNvbiB7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6IHZhcigtLWlkcy1zcGFjZS0yeHMpO1xuICB9XG5cbiAgJi5hbGVydCB7XG4gICAgY29sb3I6IHZhcigtLWlkcy1jb2xvci1jYXV0aW9uLWRlZmF1bHQpO1xuXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogdmFyKC0taWRzLWNvbG9yLXllbGxvdy0zMCk7XG4gICAgfVxuICB9XG5cbiAgJi53YXJuaW5nIHtcbiAgICBjb2xvcjogdmFyKC0taWRzLWNvbG9yLXdhcm5pbmctZGVmYXVsdCk7XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1pZHMtY29sb3Itb3JhbmdlLTMwKTtcbiAgICB9XG4gIH1cblxuICAmLmVycm9yIHtcbiAgICBjb2xvcjogdmFyKC0taWRzLWNvbG9yLWVycm9yLWRlZmF1bHQpO1xuXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogdmFyKC0taWRzLWNvbG9yLXJlZC0zMCk7XG4gICAgfVxuICB9XG5cbiAgJi5pbmZvIHtcbiAgICBjb2xvcjogdmFyKC0taWRzLWNvbG9yLWluZm8tZGVmYXVsdCk7XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1pZHMtY29sb3ItYmx1ZS0zMCk7XG4gICAgfVxuICB9XG5cbiAgJi5zdWNjZXNzIHtcbiAgICBjb2xvcjogdmFyKC0taWRzLWNvbG9yLXN1Y2Nlc3MtZGVmYXVsdCk7XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1pZHMtY29sb3ItZ3JlZW4tMzApO1xuICAgIH1cbiAgfVxuXG4gICZbaGlkZGVuXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG46aG9zdChbc3VwcHJlc3MtZXJyb3ItbWVzc2FnZV0pIHtcbiAgLnZhbGlkYXRpb24tbWVzc2FnZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiLy8gQnJlYWtwb2ludHMgLSB0aGlzIGNhbnQgYmUgdG9rZW5zXG4kYnJlYWtwb2ludC14eGw6IDI0NjNweDtcbiRicmVha3BvaW50LXhsOiAxMTgzcHg7XG4kYnJlYWtwb2ludC1sZzogOTI4cHg7XG4kYnJlYWtwb2ludC1tZDogOTI3cHg7XG4kYnJlYWtwb2ludC1zbTogNzY3cHg7XG4kYnJlYWtwb2ludC14czogMzIwcHg7XG5cbi8vIFNldHMgVGV4dCBBbnRpYWxpYXNpbmdcbkBtaXhpbiBhbnRpYWxpYXNlZCB7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4vLyB2ZW5kb3IgcHJlZml4ZWQgdHJhbnNpdGlvbnMgZm9yIHJlZ3VsYXIgYXR0cmlidXRlcyAobm9uLXZlbmRvciBwcmVmaXhlZClcbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9ucy1saXN0Li4uKSB7XG4gIEBlYWNoICRwcmVmaXggaW4gJHByZWZpeGVzIHtcbiAgICAjeyRwcmVmaXh9dHJhbnNpdGlvbjogJHRyYW5zaXRpb25zLWxpc3Q7XG4gIH1cbn1cblxuLy8gbWFrZSB0aGUgdGV4dCBpbnZpc2libGUgdmlzdWFsbHkgYnV0IHJlYWRhYmxlIGJ5IHNjcmVlbiByZWFkZXJzXG5AbWl4aW4gYXVkaWJsZSgpIHtcbiAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LW5vLWRlcHJlY2F0ZWQgKi9cbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgaGVpZ2h0OiAwO1xuICBsaW5lLWhlaWdodDogMDtcbiAgbWluLWhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xufVxuIiwiLy8gTGFiZWwgcG9zaXRpb24gc3R5bGVzXG5AdXNlICcuLi8uLi90aGVtZXMvbWl4aW5zL2lkcy1jb3JlLW1peGlucycgYXMgKjtcblxuLy8gTGVmdCBhbGlnbmVkIGFuZCBSaWdodCBBbGlnbmVkIExhYmVsc1xuOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtc3RhcnQnXSkge1xuICAuaWRzLWlucHV0LFxuICAuaWRzLXRleHRhcmVhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiB2YXIoLS1pZHMtbGFiZWwtYWxpZ24teSwgY2VudGVyKTtcblxuICAgIC8vIEFkanVzdCB0aGUgbGFiZWxcbiAgICBsYWJlbCB7XG4gICAgICB3aWR0aDogdmFyKC0taWRzLWxhYmVsLXdpZHRoKTtcbiAgICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLWlkcy1sYWJlbC1wYWRkaW5nLWJsb2NrKTtcbiAgICAgIHBhZGRpbmctaW5saW5lLWVuZDogMDtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICB9XG5cbiAgICAvLyBWYWxpZGF0aW9uIG9uIHRoZSBib3R0b21cbiAgICAudmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiB2YXIoLS1pZHMtc3BhY2UtMnhzKTtcblxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRicmVha3BvaW50LW1kKSB7XG4gICAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmlkcy1sYWJlbC10ZXh0IHtcbiAgICAgIEBtZWRpYSAod2lkdGggPiAkYnJlYWtwb2ludC14cykge1xuICAgICAgICBtYXJnaW4taW5saW5lLWVuZDogMDtcbiAgICAgIH1cblxuICAgICAgQGNvbnRhaW5lciAod2lkdGggPiAkYnJlYWtwb2ludC14cykge1xuICAgICAgICBtYXJnaW4taW5saW5lLWVuZDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQteHMpIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGdhcDogOHB4O1xuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB1bnNldDtcbiAgICAgICAgb3JkZXI6IDE7XG4gICAgICB9XG5cbiAgICAgIC5maWVsZC1jb250YWluZXIge1xuICAgICAgICBvcmRlcjogMjtcbiAgICAgIH1cblxuICAgICAgLnRleHRhcmVhLWZpZWxkLWdyb3VwIHtcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICB9XG5cbiAgICAgIC52YWxpZGF0aW9uLW1lc3NhZ2Uge1xuICAgICAgICBmbGV4OiAxIDEgMTAwJTtcbiAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICBvcmRlcjogMztcbiAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiBjYWxjKDBweCAtIHZhcigtLWlkcy1zcGFjZS0yeHMpKTtcbiAgICAgIH1cblxuICAgICAgJi53cmFwcGVkIHtcbiAgICAgICAgLnZhbGlkYXRpb24tbWVzc2FnZSB7XG4gICAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiBjYWxjKDBweCAtIHZhcigtLWlkcy1zcGFjZS0yeHMpKTtcbiAgICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiBjYWxjKHZhcigtLWlkcy1sYWJlbC13aWR0aCkgKyA2cHgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlkcy1jaGVja2JveCB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0taWRzLXNwYWNlLTAwKTtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAjeyRicmVha3BvaW50LXhzfSkge1xuICAgIC5pZHMtY2hlY2tib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGFsaWduLWl0ZW1zOiB2YXIoLS1pZHMtbGFiZWwtYWxpZ24teSwgY2VudGVyKTtcblxuICAgICAgLy8gQWRqdXN0IHRoZSBsYWJlbFxuICAgICAgbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZy1ibG9jazogdmFyKC0taWRzLWxhYmVsLXBhZGRpbmctYmxvY2spO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBnYXA6IHZhcigtLWlkcy1zcGFjZS14cyk7XG4gICAgICB9XG5cbiAgICAgIC5sYWJlbC1jaGVja2JveCB7XG4gICAgICAgIHdpZHRoOiB2YXIoLS1pZHMtbGFiZWwtd2lkdGgpO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIH1cblxuICAgICAgLmNoZWNrYm94LXdyYXBwZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgfVxuXG4gICAgICAuZmllbGQtY29udGFpbmVyIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgIH1cblxuICAgICAgLnZhbGlkYXRpb24tbWVzc2FnZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiBjYWxjKHZhcigtLWlkcy1sYWJlbC13aWR0aCkgKyB2YXIoLS1pZHMtc3BhY2UteHMpKTtcbiAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiB2YXIoLS1pZHMtc3BhY2UtMnhzKTtcbiAgICAgIH1cblxuICAgICAgJi5sYWJlbC1zdGF0ZS1jb2xsYXBzZWQge1xuICAgICAgICAudmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiB1bnNldDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBjb250YWluZXIgKG1pbi13aWR0aDogI3skYnJlYWtwb2ludC14c30pIHtcbiAgICAuaWRzLWNoZWNrYm94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogdmFyKC0taWRzLWxhYmVsLWFsaWduLXksIGNlbnRlcik7XG5cbiAgICAgIC8vIEFkanVzdCB0aGUgbGFiZWxcbiAgICAgIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLWlkcy1sYWJlbC1wYWRkaW5nLWJsb2NrKTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgZ2FwOiB2YXIoLS1pZHMtc3BhY2UteHMpO1xuICAgICAgfVxuXG4gICAgICAubGFiZWwtY2hlY2tib3gge1xuICAgICAgICB3aWR0aDogdmFyKC0taWRzLWxhYmVsLXdpZHRoKTtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICB9XG5cbiAgICAgIC5jaGVja2JveC13cmFwcGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIH1cblxuICAgICAgLmZpZWxkLWNvbnRhaW5lciB7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICB9XG5cbiAgICAgIC52YWxpZGF0aW9uLW1lc3NhZ2Uge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogY2FsYyh2YXIoLS1pZHMtbGFiZWwtd2lkdGgpICsgdmFyKC0taWRzLXNwYWNlLXhzKSk7XG4gICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0taWRzLXNwYWNlLTJ4cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEhvcml6b250YWwgYWxpZ25lZDogdXNlIHZpZXdwb3J0IG1lZGlhIHF1ZXJ5IGluc3RlYWQgb2YgY29udGFpbmVyIHF1ZXJ5XG46aG9zdChbbGFiZWwtcG9zaXRpb249J2lubGluZS1zdGFydCddW2hvcml6b250YWwtYWxpZ25lZF0pIHtcbiAgLmlkcy1jaGVja2JveCB7XG4gICAgY29udGFpbmVyLXR5cGU6IG5vcm1hbDtcblxuICAgIEBtZWRpYSAod2lkdGggPD0gJGJyZWFrcG9pbnQteHMpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogdmFyKC0taWRzLWxhYmVsLWFsaWduLXksIGNlbnRlcik7XG5cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLWlkcy1sYWJlbC1wYWRkaW5nLWJsb2NrKTtcbiAgICAgICAgcGFkZGluZy1pbmxpbmUtZW5kOiB2YXIoLS1pZHMtbGFiZWwtcGFkZGluZy1pbmxpbmUtZW5kKTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgZ2FwOiB2YXIoLS1pZHMtc3BhY2UteHMpO1xuICAgICAgfVxuXG4gICAgICAubGFiZWwtY2hlY2tib3gge1xuICAgICAgICB3aWR0aDogdmFyKC0taWRzLWxhYmVsLXdpZHRoKTtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICB9XG5cbiAgICAgIC5jaGVja2JveC13cmFwcGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIH1cblxuICAgICAgLmZpZWxkLWNvbnRhaW5lciB7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICB9XG5cbiAgICAgIC52YWxpZGF0aW9uLW1lc3NhZ2Uge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogY2FsYyh2YXIoLS1pZHMtbGFiZWwtd2lkdGgpICsgdmFyKC0taWRzLXNwYWNlLXhzKSk7XG4gICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0taWRzLXNwYWNlLTJ4cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbjpob3N0KFtsYWJlbC1wb3NpdGlvbj0naW5saW5lLXN0YXJ0J11bbGFiZWwtYWxpZ25tZW50PVwiZW5kXCJdKSB7XG4gIC5pZHMtaW5wdXQsXG4gIC5pZHMtdGV4dGFyZWEge1xuICAgIGdhcDogdmFyKC0taWRzLWxhYmVsLWFsaWdubWVudC1nYXApO1xuXG4gICAgbGFiZWwsXG4gICAgLmlkcy1sYWJlbC10ZXh0IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IHZhcigtLWlkcy1sYWJlbC1hbGlnbi15LCBjZW50ZXIpO1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgIHRleHQtYWxpZ246IGVuZDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgQG1lZGlhICh3aWR0aCA8ICRicmVha3BvaW50LXhzKSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gICAgICAgIGFsaWduLXNlbGY6IHN0YXJ0O1xuICAgICAgfVxuXG4gICAgICBAY29udGFpbmVyICh3aWR0aCA8ICN7JGJyZWFrcG9pbnQteHN9KSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gICAgICAgIGFsaWduLXNlbGY6IHN0YXJ0O1xuICAgICAgfVxuXG4gICAgICAmLnJlcXVpcmVkIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAwO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgICAgICBpbnNldC1pbmxpbmUtZW5kOiAtNXB4O1xuICAgICAgICAgIHRvcDogN3B4O1xuXG4gICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgICAgICAgQGNvbnRhaW5lciAod2lkdGggPCAjeyRicmVha3BvaW50LXhzfSkge1xuICAgICAgICAgICAgcG9zaXRpb246IGluaXRpYWw7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgICAgICAgIGluc2V0LWlubGluZS1lbmQ6IGluaXRpYWw7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgICAgICAgQG1lZGlhICh3aWR0aCA8ICRicmVha3BvaW50LXhzKSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogaW5pdGlhbDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICAgICAgICAgICAgaW5zZXQtaW5saW5lLWVuZDogaW5pdGlhbDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZmllbGQtY29udGFpbmVyIHtcbiAgICBmbGV4OiAxO1xuICB9XG5cbiAgLmlkcy1pbnB1dC53cmFwcGVkIC52YWxpZGF0aW9uLW1lc3NhZ2UsXG4gIC5pZHMtdGV4dGFyZWEud3JhcHBlZCAudmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiBjYWxjKHZhcigtLWlkcy1sYWJlbC13aWR0aCkgKyAxNHB4KTtcbiAgfVxuXG4gIC5pZHMtY2hlY2tib3gge1xuICAgIGxhYmVsIHtcbiAgICAgIHRleHQtYWxpZ246IGVuZDtcblxuICAgICAgQG1lZGlhICh3aWR0aCA8ICRicmVha3BvaW50LXhzKSB7XG4gICAgICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgICAgfVxuXG4gICAgICBAY29udGFpbmVyICh3aWR0aCA8ICN7JGJyZWFrcG9pbnQteHN9KSB7XG4gICAgICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgICAgfVxuXG4gICAgICAmLnJlcXVpcmVkIC5sYWJlbC1jaGVja2JveCBzcGFuIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAwO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgICAgICByaWdodDogLTVweDtcbiAgICAgICAgICB0b3A6IC01cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBTd2l0Y2ggbGFiZWwtYWxpZ25tZW50IGVuZFxuICBAbWVkaWEgKHdpZHRoID4gJGJyZWFrcG9pbnQtc20pIHtcbiAgICAuaWRzLXN3aXRjaCB7XG4gICAgICBsYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICB0ZXh0LWFsaWduOiBlbmQ7XG5cbiAgICAgICAgQGNvbnRhaW5lciAod2lkdGggPCAjeyRicmVha3BvaW50LXhzfSkge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAod2lkdGggPCAkYnJlYWtwb2ludC14cykge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJhZGlvIGdyb3VwIGxhYmVsLWFsaWdubWVudCBlbmRcbiAgLmlkcy1yYWRpby1ncm91cCB7XG4gICAgaWRzLXRleHQuZ3JvdXAtbGFiZWwtdGV4dCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIH1cbiAgfVxuXG4gIEBjb250YWluZXIgKHdpZHRoIDwgI3skYnJlYWtwb2ludC14c30pIHtcbiAgICAuaWRzLXJhZGlvLWdyb3VwIHtcbiAgICAgIGlkcy10ZXh0Lmdyb3VwLWxhYmVsLXRleHQge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFdoZW4gdGhlIGxhYmVsIGlzIGNvbGxhcHNlZCwgcmVtb3ZlIGl0IGZyb20gdGhlIGlucHV0L3RleHRhcmVhIGxheW91dCBzbyB0aGVcbi8vIGVuZC1hbGlnbmVkIGxhYmVsIGRvZXMgbm90IHJlc2VydmUgc3BhY2UuXG46aG9zdChbbGFiZWwtcG9zaXRpb249J2lubGluZS1zdGFydCddW2xhYmVsLWFsaWdubWVudF1bbGFiZWwtc3RhdGU9J2NvbGxhcHNlZCddKSB7XG4gIC5pZHMtaW5wdXQsXG4gIC5pZHMtdGV4dGFyZWEge1xuICAgIGxhYmVsLFxuICAgIC5pZHMtbGFiZWwtdGV4dCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG46aG9zdChbbGFiZWwtcG9zaXRpb249J2lubGluZS1zdGFydCddW2xhYmVsLWFsaWdubWVudD1cImVuZFwiXVtsYWJlbC1icmVhaz0nc2hyaW5rLXZhbHVlJ11bdmFsaWRhdGlvbi1tZXNzYWdlLWNvdW50XTpub3QoW2Vycm9yLXRyYWNrZXJdKSkge1xuICAuaWRzLWlucHV0LFxuICAuaWRzLXRleHRhcmVhIHtcbiAgICBjb2x1bW4tZ2FwOiB2YXIoLS1pZHMtbGFiZWwtYWxpZ25tZW50LWdhcCk7XG4gIH1cbn1cblxuLy8gTGFiZWwgYnJlYWsgYmVoYXZpb3IgZm9yIGlubGluZS1zdGFydCBwb3NpdGlvblxuOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtc3RhcnQnXVtsYWJlbC1icmVhaz0nc2hyaW5rLXZhbHVlJ106bm90KFt2YWxpZGF0aW9uLW1lc3NhZ2UtY291bnRdKSksXG46aG9zdChbbGFiZWwtcG9zaXRpb249J2lubGluZS1zdGFydCddW2xhYmVsLWJyZWFrPSdzaHJpbmstdmFsdWUnXVt2YWxpZGF0aW9uLW1lc3NhZ2UtY291bnRdW2Vycm9yLXRyYWNrZXJdKSB7XG4gIC5pZHMtaW5wdXQsXG4gIC5pZHMtdGV4dGFyZWEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG5cbiAgICBsYWJlbCB7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICB9XG5cbiAgICAuZmllbGQtY29udGFpbmVyIHtcbiAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIH1cblxuICAgIC8vIEtlZXAgdmFsaWRhdGlvbiBtZXNzYWdlcyBiZWxvdyB0aGUgZmllbGRcbiAgICAudmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gV2hlbiB2YWxpZGF0aW9uIGlzIHByZXNlbnQgd2l0aCBzaHJpbmstdmFsdWUsIHVzZSBncmlkIHRvIGtlZXAgZmllbGQgd2lkdGggc3RhYmxlXG46aG9zdCguaW4tZmxleC1pdGVtW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtc3RhcnQnXSksXG46aG9zdChbbGFiZWwtcG9zaXRpb249J2lubGluZS1zdGFydCddW2xhYmVsLWJyZWFrPSdzaHJpbmstdmFsdWUnXVt2YWxpZGF0aW9uLW1lc3NhZ2UtY291bnRdOm5vdChbZXJyb3ItdHJhY2tlcl0pKSB7XG4gIC5pZHMtaW5wdXQsXG4gIC5pZHMtdGV4dGFyZWEge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ2FwOiAwO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBtaW5tYXgoMCwgMWZyKTtcbiAgICBjb2x1bW4tZ2FwOiB2YXIoLS1pZHMtbGFiZWwtYWxpZ25tZW50LWdhcCk7XG5cbiAgICBsYWJlbCB7XG4gICAgICBncmlkLWNvbHVtbjogMTtcbiAgICAgIGdyaWQtcm93OiAxO1xuICAgIH1cblxuICAgIC5maWVsZC1jb250YWluZXIge1xuICAgICAgZ3JpZC1jb2x1bW46IDI7XG4gICAgICBncmlkLXJvdzogMTtcbiAgICAgIG1pbi13aWR0aDogMDtcbiAgICB9XG5cbiAgICAudmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICAgIGdyaWQtY29sdW1uOiAxIC8gLTE7XG4gICAgICBncmlkLXJvdzogMjtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogMDtcbiAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0taWRzLXNwYWNlLTJ4cyk7XG4gICAgfVxuXG4gICAgJi53cmFwcGVkIC52YWxpZGF0aW9uLW1lc3NhZ2Uge1xuICAgICAgZ3JpZC1jb2x1bW46IDI7XG4gICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAwO1xuICAgIH1cblxuICAgICYuc20sICYubW0sICYubWQsICYubGcge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIG1pbm1heCgwLCAxZnIpO1xuICAgIH1cbiAgfVxufVxuXG46aG9zdCguaW4tZmxleC1pdGVtW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtc3RhcnQnXSkge1xuICAuaWRzLWlucHV0IGxhYmVsIHtcbiAgICBtYXgtaGVpZ2h0OiB2YXIoLS1pZHMtbGFiZWwtbWF4LWhlaWdodC1pbmxpbmUtc3RhcnQpO1xuICB9XG5cbiAgLmlkcy1jaGVja2JveCB7XG4gICAgaW5wdXRbdHlwZT0nY2hlY2tib3gnXSB+IC5jaGVja21hcmsge1xuICAgICAgaW5zZXQtaW5saW5lLWVuZDogMDtcbiAgICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5pZHMtcmFkaW8tZ3JvdXAge1xuICAgIGlkcy10ZXh0IHtcbiAgICAgICYuZ3JvdXAtbGFiZWwtdGV4dCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbjpob3N0KFtsYWJlbC1wb3NpdGlvbj0naW5saW5lLXN0YXJ0J11bbGFiZWwtYnJlYWs9J3Nocmluay12YWx1ZSddKSB7XG4gIEBtZWRpYSAod2lkdGggPiAkYnJlYWtwb2ludC14cykge1xuICAgIC5pZHMtcmFkaW8tZ3JvdXAge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiB2YXIoLS1pZHMtbGFiZWwtYWxpZ24teSwgYmFzZWxpbmUpO1xuXG4gICAgICBpZHMtdGV4dC5ncm91cC1sYWJlbC10ZXh0IHtcbiAgICAgICAgd2lkdGg6IHZhcigtLWlkcy1sYWJlbC13aWR0aCk7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgfVxuXG4gICAgICBzbG90IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGNvbnRhaW5lciAod2lkdGggPiAjeyRicmVha3BvaW50LXhzfSkge1xuICAgIC5pZHMtcmFkaW8tZ3JvdXAge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiB2YXIoLS1pZHMtbGFiZWwtYWxpZ24teSwgYmFzZWxpbmUpO1xuXG4gICAgICBpZHMtdGV4dC5ncm91cC1sYWJlbC10ZXh0IHtcbiAgICAgICAgd2lkdGg6IHZhcigtLWlkcy1sYWJlbC13aWR0aCk7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgfVxuXG4gICAgICBzbG90IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhICh3aWR0aCA8ICRicmVha3BvaW50LXhzKSB7XG4gICAgLmlkcy1pbnB1dCxcbiAgICAuaWRzLXRleHRhcmVhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5pZHMtdGV4dGFyZWEge1xuICAgICAgZ2FwOiAwO1xuICAgIH1cbiAgfVxuXG4gIEBjb250YWluZXIgKHdpZHRoIDwgI3skYnJlYWtwb2ludC14c30pIHtcbiAgICAuaWRzLWlucHV0LFxuICAgIC5pZHMtdGV4dGFyZWEsXG4gICAgLmlkcy1yYWRpby1ncm91cCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxuICB9XG59XG5cbjpob3N0KFtsYWJlbC1wb3NpdGlvbj0naW5saW5lLXN0YXJ0J11bbGFiZWwtYnJlYWs9J3Nocmluay12YWx1ZSddOm5vdChbdmFsaWRhdGlvbi1tZXNzYWdlLWNvdW50XSkpIHtcbiAgQG1lZGlhICh3aWR0aCA8PSAkYnJlYWtwb2ludC14cykge1xuICAgIC5pZHMtdGV4dGFyZWEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBnYXA6IDA7XG5cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgbWluLWhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0taWRzLWlucHV0LW1hcmdpbi1ib3R0b20pO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG46aG9zdChbbGFiZWwtcG9zaXRpb249J2lubGluZS1zdGFydCddW2xhYmVsLWJyZWFrPSdzaHJpbmstbGFiZWwnXSkge1xuICBAbWVkaWEgKHdpZHRoID4gJGJyZWFrcG9pbnQteHMpIHtcbiAgICAuaWRzLXJhZGlvLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogdmFyKC0taWRzLWxhYmVsLWFsaWduLXksIGJhc2VsaW5lKTtcblxuICAgICAgaWRzLXRleHQuZ3JvdXAtbGFiZWwtdGV4dCB7XG4gICAgICAgIHdpZHRoOiB2YXIoLS1pZHMtbGFiZWwtd2lkdGgpO1xuICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgIH1cblxuICAgICAgc2xvdCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICBAY29udGFpbmVyICh3aWR0aCA+ICN7JGJyZWFrcG9pbnQteHN9KSB7XG4gICAgLmlkcy1yYWRpby1ncm91cCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IHZhcigtLWlkcy1sYWJlbC1hbGlnbi15LCBiYXNlbGluZSk7XG5cbiAgICAgIGlkcy10ZXh0Lmdyb3VwLWxhYmVsLXRleHQge1xuICAgICAgICB3aWR0aDogdmFyKC0taWRzLWxhYmVsLXdpZHRoKTtcbiAgICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICB9XG5cbiAgICAgIHNsb3Qge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtc3RhcnQnXVtsYWJlbC1icmVhaz0nYnJlYWsnXSkge1xuICAuaWRzLWlucHV0LFxuICAuaWRzLXRleHRhcmVhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG5cbiAgICBsYWJlbCB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIH1cblxuICAgIC5maWVsZC1jb250YWluZXIge1xuICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgfVxuXG4gICAgLy8gS2VlcCB2YWxpZGF0aW9uIG1lc3NhZ2VzIGJlbG93IHRoZSBmaWVsZFxuICAgIC52YWxpZGF0aW9uLW1lc3NhZ2Uge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG46aG9zdChbbGFiZWwtcG9zaXRpb249J2lubGluZS1zdGFydCddW2xhYmVsLXdpZHRoPVwiMHB4XCJdKSxcbjpob3N0KFtsYWJlbC1wb3NpdGlvbj0naW5saW5lLXN0YXJ0J11bbGFiZWwtd2lkdGg9XCIwXCJdKSB7XG4gIC8vIFdoZW4gYSBsYWJlbCBpcyBcImlubGluZS1zdGFydFwiIGFuZCBgbGFiZWwtd2lkdGg9XCIwcHhcImAgc2ltcGx5IGRvbid0IGRpc3BsYXkgaXRcbiAgLmlkcy1sYWJlbC10ZXh0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbjpob3N0KFtsYWJlbC1wb3NpdGlvbj0naW5saW5lLXN0YXJ0J11bbGFiZWwtYWxpZ25tZW50PVwiZW5kXCJdW2xhYmVsLXdyYXA9XCJlbGxpcHNpcy1uby1zdHJldGNoXCJdKSxcbjpob3N0KFtsYWJlbC1wb3NpdGlvbj0naW5saW5lLXN0YXJ0J11bbGFiZWwtYWxpZ25tZW50PVwiZW5kXCJdW2xhYmVsLXdyYXA9XCJlbGxpcHNpc1wiXSkge1xuICAuaWRzLWlucHV0LFxuICAuaWRzLXRleHRhcmVhIHtcbiAgICAuaWRzLWxhYmVsLXRleHQge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgICAgICYucmVxdWlyZWQge1xuICAgICAgICBwYWRkaW5nLWlubGluZS1lbmQ6IDA7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGluc2V0LWlubGluZS1lbmQ6IC03cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLndyYXBwZWQgLnZhbGlkYXRpb24tbWVzc2FnZSB7XG4gICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiBjYWxjKHZhcigtLWlkcy1sYWJlbC13aWR0aCkgKyAxMXB4KTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBMYWJlbCBicmVhayBiZWhhdmlvciBmb3IgaW5saW5lLWVuZCBwb3NpdGlvblxuOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtZW5kJ11bbGFiZWwtYnJlYWs9J3Nocmluay12YWx1ZSddKSB7XG4gIC5pZHMtaW5wdXQsXG4gIC5pZHMtdGV4dGFyZWEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICBsYWJlbCB7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIG9yZGVyOiAyO1xuICAgIH1cblxuICAgIC5maWVsZC1jb250YWluZXIge1xuICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICBvcmRlcjogMTtcbiAgICB9XG4gIH1cblxuICAuaWRzLWlucHV0IHtcbiAgICBnYXA6IHZhcigtLWlkcy1zcGFjZS0yLCAwLjVyZW0pO1xuICB9XG59XG5cbjpob3N0KFtsYWJlbC1wb3NpdGlvbj0naW5saW5lLWVuZCddW2xhYmVsLWJyZWFrPSdzaHJpbmstbGFiZWwnXSkge1xuICBAbWVkaWEgKHdpZHRoID4gJGJyZWFrcG9pbnQteHMpIHtcbiAgICAuaWRzLXJhZGlvLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogdmFyKC0taWRzLWxhYmVsLWFsaWduLXksIGJhc2VsaW5lKTtcblxuICAgICAgaWRzLXRleHQuZ3JvdXAtbGFiZWwtdGV4dCB7XG4gICAgICAgIHdpZHRoOiB2YXIoLS1pZHMtbGFiZWwtd2lkdGgpO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGVuZDtcbiAgICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICAgIG9yZGVyOiAyO1xuICAgICAgfVxuXG4gICAgICBzbG90IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIG9yZGVyOiAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG46aG9zdChbbGFiZWwtcG9zaXRpb249J2lubGluZS1lbmQnXVtsYWJlbC1icmVhaz0nYnJlYWsnXSkge1xuICAuaWRzLWlucHV0LFxuICAuaWRzLXRleHRhcmVhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG5cbiAgICBsYWJlbCB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgb3JkZXI6IDI7XG4gICAgfVxuXG4gICAgLmZpZWxkLWNvbnRhaW5lciB7XG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cblxuICAgIC8vIEtlZXAgdmFsaWRhdGlvbiBtZXNzYWdlcyBiZWxvdyB0aGUgZmllbGRcbiAgICAudmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDA7XG4gICAgICBvcmRlcjogMztcbiAgICB9XG4gIH1cblxuICAuaWRzLWlucHV0IHtcbiAgICBnYXA6IHZhcigtLWlkcy1zcGFjZS0yLCAwLjVyZW0pO1xuICB9XG59XG5cbjpob3N0KFtsYWJlbC1wb3NpdGlvbj1cImlubGluZS1zdGFydFwiXSkge1xuICAtLWlkcy1sYWJlbC13aWR0aDogdmFyKC0taWRzLWxhYmVsLXdpZHRoLWlubGluZS1zdGFydCk7XG59XG5cbi8vIFdoZW4gbGFiZWwtd3JhcCBjb25zdHJhaW5zIHRoZSBsYWJlbCBzaXplLCBlbnN1cmUgaXQgc3RheXMgdmVydGljYWxseSBjZW50ZXJlZFxuLy8gaW5zdGVhZCBvZiBzdHJldGNoaW5nIHRvIGZpbGwgdGhlIGZsZXggY29udGFpbmVyIGhlaWdodFxuOmhvc3QoW2xhYmVsLXBvc2l0aW9uPVwiaW5saW5lLXN0YXJ0XCJdW2xhYmVsLXdyYXA9XCJlbGxpcHNpcy1uby1zdHJldGNoXCJdKSxcbjpob3N0KFtsYWJlbC1wb3NpdGlvbj1cImlubGluZS1zdGFydFwiXVtsYWJlbC13cmFwPVwid3JhcC1uby1zdHJldGNoXCJdKSB7XG4gIC5pZHMtaW5wdXQsXG4gIC5pZHMtdGV4dGFyZWEge1xuICAgIGxhYmVsIHtcbiAgICAgIGFsaWduLXNlbGY6IHZhcigtLWlkcy1sYWJlbC1hbGlnbi15LCBjZW50ZXIpO1xuICAgIH1cblxuICAgIC5pZHMtbGFiZWwtdGV4dCB7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG4gIH1cbn1cblxuLy8gVGV4dCBhcmVhXG5AbWVkaWEgKHdpZHRoID4gJGJyZWFrcG9pbnQtc20pIHtcbiAgOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtc3RhcnQnXTpub3QoW2xhYmVsLWJyZWFrPSdzaHJpbmstdmFsdWUnXSk6bm90KFtzaXplPSdmdWxsJ10pKSB7XG4gICAgLmlkcy10ZXh0YXJlYSB7XG4gICAgICBtYXgtd2lkdGg6IGNhbGMoMzcwcHggKyB2YXIoLS1pZHMtbGFiZWwtd2lkdGgpKTtcblxuICAgICAgLnRleHRhcmVhLWZpZWxkIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMzcwcHggKyB2YXIoLS1pZHMtbGFiZWwtd2lkdGgpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gRmlsdGVyIGZpZWxkXG5AbWVkaWEgKHdpZHRoID4gJGJyZWFrcG9pbnQtc20pIHtcbiAgOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtc3RhcnQnXSkge1xuICAgIC5pZHMtZmlsdGVyLWZpZWxkIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogdmFyKC0taWRzLWxhYmVsLWFsaWduLXksIGJhc2VsaW5lKTtcblxuICAgICAgbGFiZWwge1xuICAgICAgICB3aWR0aDogdmFyKC0taWRzLWxhYmVsLXdpZHRoKTtcbiAgICAgICAgcGFkZGluZy1ibG9jazogdmFyKC0taWRzLWxhYmVsLXBhZGRpbmctYmxvY2spO1xuICAgICAgICBwYWRkaW5nLWlubGluZS1lbmQ6IHZhcigtLWlkcy1sYWJlbC1wYWRkaW5nLWlubGluZS1lbmQpO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgfVxuXG4gICAgICAvLyBGaWx0ZXIgZmllbGQgc3BlY2lmaWMgcnVsZXNcbiAgICAgICNvcGVyYXRvci1idXR0b24ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGluc2V0LWlubGluZS1zdGFydDogdmFyKC0taWRzLWxhYmVsLXdpZHRoKTtcbiAgICAgIH1cblxuICAgICAgLy8gVmFsaWRhdGlvbiBvbiB0aGUgYm90dG9tXG4gICAgICAudmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0taWRzLXNwYWNlLTJ4cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIENoZWNrYm94ZXNcbjpob3N0KFtsYWJlbC1wb3NpdGlvbj0naW5saW5lLXN0YXJ0J11bZGlyPSdydGwnXSkge1xuICBAbWVkaWEgKHdpZHRoIDwgJGJyZWFrcG9pbnQtc20pIHtcbiAgICAuaWRzLWNoZWNrYm94IHtcbiAgICAgIGxhYmVsIHtcbiAgICAgICAgLS1pZHMtY2hlY2tib3gtcGFkZGluZy1pbmxpbmUtc3RhcnQ6IGluaGVyaXQ7XG4gICAgICB9XG5cbiAgICAgIC52YWxpZGF0aW9uLW1lc3NhZ2Uge1xuICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiBpbml0aWFsO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtc20pIHtcbiAgOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtc3RhcnQnXVtkaXI9J3J0bCddKSAuaWRzLWNoZWNrYm94IHtcbiAgICBpbnB1dFt0eXBlPSdjaGVja2JveCddIH4gLmNoZWNrbWFyayB7XG4gICAgICByaWdodDogaW5pdGlhbDtcbiAgICB9XG5cbiAgICAudmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBSYWRpbyBidXR0b25zXG4vLyBUaGUgaW5saW5lIChzaWRlKSBsYWJlbCBsYXlvdXQgaXMgdG9nZ2xlZCBieSBgb25MYWJlbFBvc2l0aW9uQ2hhbmdlYCBpblxuLy8gaWRzLXJhZGlvLWdyb3VwIHZpYSB0aGUgYGxhYmVsLWlubGluZWAgLyBgbGFiZWwtaW5saW5lLWVuZC1zdGFja2VkYCBjbGFzc2VzLFxuLy8gd2hpY2ggYXJlIGRyaXZlbiBieSB0aGUgZ3JvdXAncyBvd24gd2lkdGguIFRoaXMgbGV0cyB0aGUgbGF5b3V0IHJlc3BvbmQgdG9cbi8vIGl0cyBjb250YWluZXIgcmF0aGVyIHRoYW4gdGhlIHZpZXdwb3J0LlxuOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtc3RhcnQnXSkgLmlkcy1yYWRpby1ncm91cC5sYWJlbC1pbmxpbmUsXG46aG9zdChbbGFiZWwtcG9zaXRpb249J2lubGluZS1lbmQnXSkgLmlkcy1yYWRpby1ncm91cC5sYWJlbC1pbmxpbmUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogdmFyKC0taWRzLWxhYmVsLWFsaWduLXksIGZsZXgtc3RhcnQpO1xuICBnYXA6IHZhcigtLWlkcy1zcGFjZS0yLCAwLjVyZW0pO1xuXG4gIGlkcy10ZXh0Lmdyb3VwLWxhYmVsLXRleHQge1xuICAgIG1pbi13aWR0aDogdmFyKC0taWRzLWxhYmVsLXdpZHRoKTtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLWlkcy1zcGFjZS14cykgLSAycHgpO1xuICB9XG5cbiAgc2xvdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG59XG5cbjpob3N0KFtsYWJlbC1wb3NpdGlvbj0naW5saW5lLWVuZCddKSAuaWRzLXJhZGlvLWdyb3VwLmxhYmVsLWlubGluZSB7XG4gIGlkcy10ZXh0Lmdyb3VwLWxhYmVsLXRleHQge1xuICAgIGp1c3RpZnktY29udGVudDogZW5kO1xuICAgIG9yZGVyOiAyO1xuICB9XG5cbiAgc2xvdCB7XG4gICAgb3JkZXI6IDE7XG4gIH1cbn1cblxuLy8gTmFycm93IGBpbmxpbmUtZW5kYDogc3RhY2sgd2l0aCB0aGUgbGFiZWwgYmVuZWF0aCB0aGUgb3B0aW9uc1xuOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtZW5kJ10pIC5pZHMtcmFkaW8tZ3JvdXAubGFiZWwtaW5saW5lLWVuZC1zdGFja2VkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IHZhcigtLWlkcy1sYWJlbC1hbGlnbi15LCBiYXNlbGluZSk7XG4gIGdhcDogdmFyKC0taWRzLXNwYWNlLTIsIDAuNXJlbSk7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgaWRzLXRleHQuZ3JvdXAtbGFiZWwtdGV4dCB7XG4gICAgbWluLXdpZHRoOiB2YXIoLS1pZHMtbGFiZWwtd2lkdGgpO1xuICAgIG9yZGVyOiAyO1xuICB9XG5cbiAgc2xvdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG9yZGVyOiAxO1xuICB9XG59XG5cbi8vIFN3aXRjaFxuQG1lZGlhICh3aWR0aCA+ICRicmVha3BvaW50LXNtKSB7XG4gIDpob3N0KFtsYWJlbC1wb3NpdGlvbj0naW5saW5lLXN0YXJ0J10pIC5pZHMtc3dpdGNoIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogdmFyKC0taWRzLWxhYmVsLWFsaWduLXksIGJhc2VsaW5lKTtcblxuICAgIGxhYmVsIHtcbiAgICAgIHdpZHRoOiB2YXIoLS1pZHMtbGFiZWwtd2lkdGgpO1xuICAgICAgcGFkZGluZy1ibG9jazogdmFyKC0taWRzLWxhYmVsLXBhZGRpbmctYmxvY2spO1xuICAgICAgcGFkZGluZy1pbmxpbmUtZW5kOiB2YXIoLS1pZHMtbGFiZWwtcGFkZGluZy1pbmxpbmUtZW5kKTtcbiAgICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAwO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPSdjaGVja2JveCddIH4gLnNsaWRlciB7XG4gICAgICBsZWZ0OiB1bnNldDtcbiAgICAgIHJpZ2h0OiAtNDVweDtcbiAgICB9XG4gIH1cblxuICA6aG9zdChbbGFiZWwtcG9zaXRpb249XCJpbmxpbmUtc3RhcnRcIl1bbGFiZWwtc3RhdGU9XCJjb2xsYXBzZWRcIl0pIC5pZHMtc3dpdGNoIGxhYmVsIHtcbiAgICBwYWRkaW5nLWlubGluZS1lbmQ6IDA7XG4gICAgd2lkdGg6IDA7XG4gIH1cblxuICA6aG9zdChbbGFiZWwtcG9zaXRpb249J2lubGluZS1zdGFydCddW2Rpcj0ncnRsJ10pIC5pZHMtc3dpdGNoIHtcbiAgICBpbnB1dFt0eXBlPSdjaGVja2JveCddIH4gLnNsaWRlciB7XG4gICAgICBsZWZ0OiAtNDVweDtcbiAgICAgIHJpZ2h0OiBpbml0aWFsO1xuICAgIH1cbiAgfVxufVxuXG4vLyBEYXRhIExhYmVsXG5AbWVkaWEgKHdpZHRoID4gJGJyZWFrcG9pbnQtc20pIHtcbiAgOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtc3RhcnQnXSkgLmlkcy1kYXRhLWxhYmVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZ2FwOiA4cHg7XG4gICAgYWxpZ24taXRlbXM6IHZhcigtLWlkcy1sYWJlbC1hbGlnbi15LCBiYXNlbGluZSk7XG5cbiAgICAubGFiZWwge1xuICAgICAgd2lkdGg6IHZhcigtLWlkcy1sYWJlbC13aWR0aCk7XG4gICAgICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1pZHMtbGFiZWwtcGFkZGluZy1ibG9jayk7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgbWFyZ2luLWJsb2NrLWVuZDogMDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuXG4gICAgLmRhdGEsXG4gICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1pZHMtbGFiZWwtcGFkZGluZy1ibG9jayk7XG4gICAgfVxuICB9XG59XG5cbi8vIFJlc3BvbnNpdmUgYmVoYXZpb3JcbkBtZWRpYSAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC14cykge1xuICA6aG9zdChbbGFiZWwtcG9zaXRpb249XCJpbmxpbmUtc3RhcnRcIl0pIHtcbiAgICAuaWRzLWlucHV0LFxuICAgIC5pZHMtdGV4dGFyZWEsXG4gICAgLmlkcy1maWx0ZXItZmllbGQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBhbGlnbi1pdGVtczogdW5zZXQ7XG5cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgICAgICBwYWRkaW5nLWlubGluZTogMDtcbiAgICAgIH1cblxuICAgICAgLnZhbGlkYXRpb24tbWVzc2FnZSB7XG4gICAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgOmhvc3QoW2xhYmVsLXBvc2l0aW9uPVwiaW5saW5lLWVuZFwiXSkge1xuICAgIC5pZHMtaW5wdXQsXG4gICAgLmlkcy10ZXh0YXJlYSxcbiAgICAuaWRzLWZpbHRlci1maWVsZCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiB1bnNldDtcbiAgICAgIGdhcDogdmFyKC0taWRzLXNwYWNlLTIsIDAuNXJlbSk7XG5cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgICAgICBwYWRkaW5nLWlubGluZTogMDtcbiAgICAgIH1cblxuICAgICAgLnZhbGlkYXRpb24tbWVzc2FnZSB7XG4gICAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbjpob3N0KFtsYWJlbC1zdGF0ZT1cImNvbGxhcHNlZFwiXSkge1xuICAtLWlkcy1sYWJlbC13aWR0aDogMDtcblxuICB3aWR0aDogZml0LWNvbnRlbnQ7XG59XG5cbjpob3N0KGlkcy1jaGVja2JveFtsYWJlbC1zdGF0ZT1cImNvbGxhcHNlZFwiXSkge1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5AY29udGFpbmVyIChtYXgtd2lkdGg6ICN7JGJyZWFrcG9pbnQteHN9KSB7XG4gIDpob3N0KFtsYWJlbC1wb3NpdGlvbj1cImlubGluZS1zdGFydFwiXSkge1xuICAgIC5pZHMtaW5wdXQsXG4gICAgLmlkcy10ZXh0YXJlYSxcbiAgICAuaWRzLWZpbHRlci1maWVsZCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiB1bnNldDtcblxuICAgICAgbGFiZWwge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiAwO1xuICAgICAgfVxuXG4gICAgICAudmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICA6aG9zdChbbGFiZWwtcG9zaXRpb249XCJpbmxpbmUtZW5kXCJdKSB7XG4gICAgLmlkcy1pbnB1dCxcbiAgICAuaWRzLXRleHRhcmVhLFxuICAgIC5pZHMtZmlsdGVyLWZpZWxkIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IHVuc2V0O1xuICAgICAgZ2FwOiB2YXIoLS1pZHMtc3BhY2UtMiwgMC41cmVtKTtcblxuICAgICAgbGFiZWwge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiAwO1xuICAgICAgfVxuXG4gICAgICAudmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtc3RhcnQnXVtsYWJlbC1zdGF0ZT1cImhpZGRlblwiXSkge1xuICBAbWVkaWEgKG1heC13aWR0aDogJGJyZWFrcG9pbnQteHMpIHtcbiAgICAuaWRzLWlucHV0IC5pZHMtbGFiZWwtdGV4dCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG5AY29udGFpbmVyIChtYXgtd2lkdGg6ICN7JGJyZWFrcG9pbnQteHN9KSB7XG4gIDpob3N0KFtsYWJlbC1wb3NpdGlvbj0naW5saW5lLXN0YXJ0J11bbGFiZWwtc3RhdGU9XCJoaWRkZW5cIl0pIHtcbiAgICAuaWRzLWlucHV0IC5pZHMtbGFiZWwtdGV4dCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vLyBKdXN0IHRoZSBsYWJlbCB3aWR0aFxuOmhvc3Qge1xuICAuaWRzLWlucHV0LFxuICAuaWRzLXRleHRhcmVhLFxuICAuaWRzLWNoZWNrYm94LFxuICAuaWRzLXJhZGlvLFxuICAuaWRzLXN3aXRjaCxcbiAgLmlkcy1kYXRhLWxhYmVsLFxuICAuaWRzLWZpbHRlci1maWVsZCB7XG4gICAgbGFiZWwsXG4gICAgLmxhYmVsIHtcbiAgICAgIHdpZHRoOiB2YXIoLS1pZHMtbGFiZWwtd2lkdGgpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBEZWNsYXJlZCBsYXN0IHNvIGxhYmVsLXN0YXRlIHdpbnMgb3ZlciBsYWJlbC1hbGlnbm1lbnQvbGFiZWwtYnJlYWsvbGFiZWwtd3JhcCxcbi8vIGtlZXBpbmcgdGhlIHJhZGlvIGdyb3VwIGxhYmVsIGhpZGRlbiByZWdhcmRsZXNzIG9mIHRoZSBvdGhlciBsYXlvdXQgYXR0cmlidXRlcy5cbjpob3N0KFtsYWJlbC1wb3NpdGlvbj0naW5saW5lLXN0YXJ0J11bbGFiZWwtc3RhdGU9J2NvbGxhcHNlZCddKSxcbjpob3N0KFtsYWJlbC1wb3NpdGlvbj0naW5saW5lLWVuZCddW2xhYmVsLXN0YXRlPSdjb2xsYXBzZWQnXSkge1xuICAuaWRzLXJhZGlvLWdyb3VwIGlkcy10ZXh0Lmdyb3VwLWxhYmVsLXRleHQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtc3RhcnQnXVtsYWJlbC1zdGF0ZT0naGlkZGVuJ10pLFxuOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtZW5kJ11bbGFiZWwtc3RhdGU9J2hpZGRlbiddKSB7XG4gIC5pZHMtcmFkaW8tZ3JvdXAgaWRzLXRleHQuZ3JvdXAtbGFiZWwtdGV4dCB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG59XG4iLCJAdXNlICcuLi8uLi90aGVtZXMvbWl4aW5zL2lkcy1jb3JlLW1peGlucycgYXMgbWl4aW5zO1xuQHVzZSAnLi4vLi4vdGhlbWVzL21peGlucy9pZHMtY2xlYXJhYmxlLW1peGluJyBhcyAqO1xuQHVzZSAnLi4vLi4vdGhlbWVzL21peGlucy9pZHMtZGlydHktdHJhY2tlci1taXhpbicgYXMgKjtcbkB1c2UgJy4uLy4uL3RoZW1lcy9taXhpbnMvaWRzLWZpZWxkLWluZGljYXRvci1taXhpbicgYXMgKjtcbkB1c2UgJy4uLy4uL3RoZW1lcy9taXhpbnMvaWRzLWxhYmVsLXN0YXRlLW1peGluJyBhcyAqO1xuQHVzZSAnLi4vLi4vdGhlbWVzL21peGlucy9pZHMtdmFsaWRhdGlvbi1taXhpbicgYXMgKjtcbkB1c2UgJy4uLy4uL3RoZW1lcy9taXhpbnMvaWRzLWxhYmVsLXBvc2l0aW9uLW1peGluLnNjc3MnIGFzIGxhYmVsLXBvc2l0aW9uO1xuXG4vLyBUaGVzZSBpbnB1dCBmaWVsZCBzaXplcyBjb21lIGZyb20gdGhlIGRlc2lnbiB0b2tlbnMgYW5kIGFyZSBhZGp1c3RlZFxuLy8gaGVyZSB0byBhY2NvdW50IGZvciAxcHggYm9yZGVyIHNpemUgb24gdG9wL2JvdHRvbSBvciBsZWZ0L3JpZ2h0IGluIHNvbWUgY2FsY3VsYXRpb25zLlxuJGJvcmRlci1pbnB1dC1zaXplLXhzOiBjYWxjKHZhcigtLWlkcy1pbnB1dC13aWR0aC0xMCkpO1xuJGJvcmRlci1pbnB1dC1zaXplLXNtOiBjYWxjKHZhcigtLWlkcy1pbnB1dC13aWR0aC0yMCkpO1xuJGJvcmRlci1pbnB1dC1zaXplLW1kOiBjYWxjKHZhcigtLWlkcy1pbnB1dC13aWR0aC00MCkpO1xuJGJvcmRlci1pbnB1dC1zaXplLW1tOiBjYWxjKHZhcigtLWlkcy1pbnB1dC13aWR0aC0zMCkpO1xuJGJvcmRlci1pbnB1dC1zaXplLWxnOiBjYWxjKHZhcigtLWlkcy1pbnB1dC13aWR0aC01MCkpO1xuJGJvcmRlci1pbnB1dC1maWVsZC1oZWlnaHQteHM6IGNhbGModmFyKC0taWRzLWlucHV0LWhlaWdodC0xMCkgLSA0cHgpO1xuJGJvcmRlci1pbnB1dC1maWVsZC1oZWlnaHQtc206IGNhbGModmFyKC0taWRzLWlucHV0LWhlaWdodC0yMCkgLSAycHgpO1xuJGJvcmRlci1pbnB1dC1maWVsZC1oZWlnaHQtbWQ6IGNhbGModmFyKC0taWRzLWlucHV0LWhlaWdodC0zMCkgLSAycHgpO1xuJGJvcmRlci1pbnB1dC1maWVsZC1oZWlnaHQtbGc6IGNhbGModmFyKC0taWRzLWlucHV0LWhlaWdodC00MCkgLSAycHgpO1xuJGlucHV0LXNpemUtZnVsbDogMTAwJTtcblxuLy8gTWl4aW4gZm9yIG1lc3NhZ2Ugc3R5bGVzOiBbYWxlcnQsIGVycm9yLCBpbmZvLCBzdWNjZXNzXVxuQG1peGluIGlkcy1pbnB1dC1tZXNzYWdlLXN0eWxlcyB7XG4gIC5hbGVydCxcbiAgLmFsZXJ0OmhvdmVyLFxuICAud2FybmluZyxcbiAgLndhcm5pbmc6aG92ZXIgIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1pbnB1dC1jb2xvci1ib3JkZXItYWxlcnQtZGVmYXVsdCk7XG4gICAgY29sb3I6IHZhcigtLWlkcy1pbnB1dC1jb2xvci10ZXh0LWFsZXJ0LWRlZmF1bHQpO1xuXG4gICAgJjpmb2N1cy13aXRoaW4sXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtaW5wdXQtY29sb3ItYm9yZGVyLWFsZXJ0LWRlZmF1bHQpO1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0taWRzLWlucHV0LXNoYWRvdy1hbGVydC1mb2N1cykgMCAwIDNweCAycHg7XG4gICAgfVxuXG4gICAgJltkaXNhYmxlZF0ge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtaW5wdXQtY29sb3ItYm9yZGVyLWFsZXJ0LWRpc2FibGVkKTtcbiAgICAgIGNvbG9yOiB2YXIoLS1pZHMtaW5wdXQtY29sb3ItdGV4dC1hbGVydC1kaXNhYmxlZCk7XG4gICAgfVxuICB9XG5cbiAgLmZpZWxkLWNvbnRhaW5lci5lcnJvcixcbiAgLmZpZWxkLWNvbnRhaW5lci5lcnJvcjpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtaW5wdXQtY29sb3ItYm9yZGVyLWVycm9yLWRlZmF1bHQpO1xuICAgIGNvbG9yOiB2YXIoLS1pZHMtaW5wdXQtZXJyb3ItY29sb3ItdGV4dC1lcnJvci1kZWZhdWx0KTtcblxuICAgICYuZmllbGQtY29udGFpbmVyOm5vdCg6Zm9jdXMtd2l0aGluKSB7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1pbnB1dC1jb2xvci1ib3JkZXItZXJyb3ItZGVmYXVsdCk7XG4gICAgICBjb2xvcjogdmFyKC0taWRzLWlucHV0LWVycm9yLWNvbG9yLXRleHQtZXJyb3ItZGVmYXVsdCk7XG4gICAgfVxuXG4gICAgJjpmb2N1cy13aXRoaW4sXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtaW5wdXQtY29sb3ItYm9yZGVyLWVycm9yLWRlZmF1bHQpO1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0taWRzLWlucHV0LWNvbG9yLXNoYWRvdy1lcnJvci1mb2N1cykgMCAwIDNweCAycHg7XG4gICAgfVxuXG4gICAgJltkaXNhYmxlZF0ge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtaW5wdXQtY29sb3ItYm9yZGVyLWVycm9yLWRpc2FibGVkKTtcbiAgICAgIGNvbG9yOiB2YXIoLS1pZHMtaW5wdXQtY29sb3ItYm9yZGVyLWVycm9yLWRpc2FibGVkKTtcbiAgICB9XG4gIH1cblxuICAuaW5mbyxcbiAgLmluZm86aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLWlucHV0LWNvbG9yLWJvcmRlci1pbmZvLWRlZmF1bHQpO1xuICAgIGNvbG9yOiB2YXIoLS1pZHMtaW5wdXQtY29sb3ItdGV4dC1pbmZvLWRlZmF1bHQpO1xuXG4gICAgJjpmb2N1cy13aXRoaW4sXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtaW5wdXQtY29sb3ItYm9yZGVyLWluZm8tZGVmYXVsdCk7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS1pZHMtaW5wdXQtc2hhZG93LWluZm8tZm9jdXMpICAwIDAgM3B4IDJweDtcbiAgICB9XG5cbiAgICAmW2Rpc2FibGVkXSB7XG4gICAgICBib3JkZXItY29sb3I6IHZhciggLS1pZHMtaW5wdXQtY29sb3ItYm9yZGVyLWluZm8tZGlzYWJsZWQpO1xuICAgICAgY29sb3I6IHZhcigtLWlkcy1pbnB1dC1jb2xvci10ZXh0LWluZm8tZGlzYWJsZWQpO1xuICAgIH1cbiAgfVxuXG4gIC5zdWNjZXNzLFxuICAuc3VjY2Vzczpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtaW5wdXQtY29sb3ItYm9yZGVyLXN1Y2Nlc3MtZGVmYXVsdCk7XG4gICAgY29sb3I6IHZhcigtLWlkcy1pbnB1dC1jb2xvci10ZXh0LXN1Y2Nlc3MtZGVmYXVsdCk7XG5cbiAgICAmOmZvY3VzLXdpdGhpbixcbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1pbnB1dC1jb2xvci1ib3JkZXItc3VjY2Vzcy1kZWZhdWx0KTtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLWlkcy1pbnB1dC1zaGFkb3ctc3VjY2Vzcy1mb2N1cykgMCAwIDNweCAycHg7XG4gICAgfVxuXG4gICAgJltkaXNhYmxlZF0ge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtaW5wdXQtY29sb3ItYm9yZGVyLXN1Y2Nlc3MtZGlzYWJsZWQpO1xuICAgICAgY29sb3I6IHZhcigtLWlkcy1pbnB1dC1jb2xvci10ZXh0LXN1Y2Nlc3MtZGlzYWJsZWQpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBNaXhpbiBmb3IgbGFiZWwgd3JhcCBlbGxpcHNpc1xuQG1peGluIGlkcy1pbnB1dC1sYWJlbC13cmFwLWVsbGlwc2lzIHtcbiAgLmlkcy1sYWJlbC10ZXh0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIGlkcy10ZXh0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgIGZsZXgtc2hyaW5rOiAxO1xuICAgIH1cblxuICAgICYucmVxdWlyZWQge1xuICAgICAgcGFkZGluZy1pbmxpbmUtZW5kOiB2YXIoLS1pZHMtc3BhY2UteHMpO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiB2YXIoLS1pZHMtc3BhY2UtM3hzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi8vIEZ1bmN0aW9uIHRvIGNhbGN1bGF0ZSB3aWR0aCBzdWJ0cmFjdCBwYWRcbkBmdW5jdGlvbiBpZHMtaW5wdXQtc2l6ZS13aXRoLXBhZCgkd2lkdGgsICRwYWQ6IDhweCkge1xuICBAcmV0dXJuIGNhbGMoJHdpZHRoIC0gJHBhZCk7XG59XG4vKiBzdHlsZWxpbnQtZW5hYmxlICovXG5cbi8vIE1peGluIGZvciBsYWJlbCB3cmFwIG5vLXN0cmV0Y2hcbkBtaXhpbiBpZHMtaW5wdXQtbGFiZWwtd3JhcC1uby1zdHJldGNoIHtcbiAgLnhzIC5pZHMtbGFiZWwtdGV4dCB7XG4gICAgbWF4LXdpZHRoOiBpZHMtaW5wdXQtc2l6ZS13aXRoLXBhZCgkYm9yZGVyLWlucHV0LXNpemUtc20pO1xuICB9XG5cbiAgLnNtIC5pZHMtbGFiZWwtdGV4dCB7XG4gICAgbWF4LXdpZHRoOiBpZHMtaW5wdXQtc2l6ZS13aXRoLXBhZCgkYm9yZGVyLWlucHV0LXNpemUtc20pO1xuICB9XG5cbiAgLm1tIC5pZHMtbGFiZWwtdGV4dCB7XG4gICAgbWF4LXdpZHRoOiBpZHMtaW5wdXQtc2l6ZS13aXRoLXBhZCgkYm9yZGVyLWlucHV0LXNpemUtbW0pO1xuICB9XG5cbiAgLm1kIC5pZHMtbGFiZWwtdGV4dCB7XG4gICAgbWF4LXdpZHRoOiBpZHMtaW5wdXQtc2l6ZS13aXRoLXBhZCgkYm9yZGVyLWlucHV0LXNpemUtbWQpO1xuICB9XG5cbiAgLmxnIC5pZHMtbGFiZWwtdGV4dCB7XG4gICAgbWF4LXdpZHRoOiBpZHMtaW5wdXQtc2l6ZS13aXRoLXBhZCgkYm9yZGVyLWlucHV0LXNpemUtbGcpO1xuICB9XG5cbiAgLmZ1bGwgLmlkcy1sYWJlbC10ZXh0IHtcbiAgICBtYXgtd2lkdGg6IGlkcy1pbnB1dC1zaXplLXdpdGgtcGFkKCRpbnB1dC1zaXplLWZ1bGwpO1xuICB9XG59XG5cbi8qIGluIGNhc2Ugb2YgZXh0ZXJuYWwgbGFiZWwgaW4gY29tcG91bmQgY29tcG9uZW50ICovXG4uaWRzLWxhYmVsLXRleHQge1xuICBAaW5jbHVkZSBtaXhpbnMuYW50aWFsaWFzZWQoKTtcblxuICBmb250LWZhbWlseTogdmFyKC0taWRzLWZvbnQtZmFtaWx5LWRlZmF1bHQpLCB2YXIoLS1pZHMtZm9udC1mYW1pbHktc3lzdGVtLXNhbnMpO1xuICBjb2xvcjogdmFyKC0taWRzLWlucHV0LWxhYmVsLWNvbG9yLXRleHQtZGVmYXVsdCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1ibG9jay1lbmQ6IHZhcigtLWlkcy1pbnB1dC1tYXJnaW4tYm90dG9tKTtcbiAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuXG4gIC8vIEFiaWxpdHkgdG8gY2VudGVyIGxhYmVsIGZyb20gcGFyZW50IGVsZW1lbnRcbiAganVzdGlmeS1jb250ZW50OiBpbmhlcml0O1xuXG4gIC8vIFNpbXVsYXRlIHN0YW5kYXJkIGxhYmVsIHRleHQgc2l6ZSB3aGlsZSBlbXB0eSB3aXRoIGEgbm9uLWJyZWFraW5nIHNwYWNlXG4gICYuZW1wdHkge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFwwMGEwJztcbiAgICB9XG4gIH1cblxuICAmLnJlcXVpcmVkIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmb250LWZhbWlseTogdmFyKC0taWRzLWZvbnQtZmFtaWx5LWRlZmF1bHQpLCB2YXIoLS1pZHMtZm9udC1mYW1pbHktc3lzdGVtLXNhbnMpO1xuICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogdmFyKC0taWRzLXNwYWNlLTN4cyk7XG4gICAgICBtYXJnaW4taW5saW5lLWVuZDogdmFyKC0taWRzLXNwYWNlLTN4cyk7XG4gICAgICBmb250LXNpemU6IHZhcigtLWlkcy1mb250LXNpemUtbWQpO1xuICAgICAgY29sb3I6IHZhcigtLWlkcy1pbnB1dC1yZXF1aXJlZC1pbmRpY2F0b3ItY29sb3ItdGV4dC1kZWZhdWx0KTtcbiAgICAgIGNvbnRlbnQ6ICcqJztcbiAgICAgIG1hcmdpbi10b3A6IC0xMHB4O1xuICAgICAgdG9wOiAxcHg7XG5cbiAgICAgIC8vIEFkZGluZyBpdCBzbyBcIipcIiBzaWduIGRvZXNuJ3QgY2hhbmdlIGxhYmVsIHRleHQgaGVpZ2h0XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICB9XG5cbiAgICAmLm5vLXJlcXVpcmVkLWluZGljYXRvcjo6YWZ0ZXIsXG4gICAgJi5lbXB0eTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgfVxuICB9XG5cbiAgaWRzLXRleHQ6bm90KFtsaW5lLWNsYW1wXSk6OnBhcnQodGV4dCksXG4gIC5pZHMtdGV4dCB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICB9XG59XG5cbi5kaXNhYmxlZCB7XG4gIC5pZHMtbGFiZWwtdGV4dCB7XG4gICAgY29sb3I6IHZhcigtLWlkcy1pbnB1dC1sYWJlbC1jb2xvci10ZXh0LWRpc2FibGVkKTtcbiAgICBvcGFjaXR5OiB2YXIoLS1pZHMtaW5wdXQtZGlzYWJsZWQtb3BhY2l0eSk7XG5cbiAgICAmLnJlcXVpcmVkOjphZnRlciB7XG4gICAgICBjb2xvcjogdmFyKC0taWRzLWlucHV0LXJlcXVpcmVkLWluZGljYXRvci1jb2xvci10ZXh0LWRpc2FibGVkKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGlucHV0LWV4dHJhLXNtYWxsLWhlaWdodCgkaDogJGJvcmRlci1pbnB1dC1maWVsZC1oZWlnaHQteHMpIHtcbiAgbWFyZ2luLWJsb2NrLWVuZDogdmFyKC0taWRzLWZvbnQtc2l6ZS0yeHMpO1xuXG4gIC5pY29uLWRpcnR5IHtcbiAgICB0b3A6IDA7XG4gIH1cblxuICAuaWRzLWxhYmVsLXRleHQge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0taWRzLWlucHV0LWxhYmVsLWZvbnQtc2l6ZSk7XG4gIH1cblxuICAuaWRzLWlucHV0LWZpZWxkIHtcbiAgICBwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0taWRzLXNwYWNlLTJ4cyk7XG4gICAgcGFkZGluZy1pbmxpbmUtZW5kOiB2YXIoLS1pZHMtc3BhY2UtMnhzKTtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBmb250LXNpemU6IHZhcigtLWlkcy1pbnB1dC1mb250LXNpemUtc20pO1xuICAgIGhlaWdodDogJGg7XG4gIH1cbn1cblxuOmhvc3Qge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiB2YXIoLS1pZHMtaW5wdXQtd2lkdGgtZnVsbCk7XG5cbiAgLmlkcy1pbnB1dCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiB2YXIoLS1pZHMtYm94LWlucHV0LXdpZHRoLCBhdXRvKTtcbiAgfVxufVxuXG46aG9zdChbaGlkZGVuXSkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vLyBtYXJnaW4tYmxvY2stZW5kIHRva2VuIG92ZXJyaWRlcyDigJQgYXBwbGllZCB0byB0aGUgaW5uZXIgLmlkcy1pbnB1dCBjb250YWluZXIuXG4vLyBCb3RoIHRoZSBob3N0IGF0dHJpYnV0ZSBzZWxlY3RvciAod2ViIGNvbXBvbmVudCkgYW5kIGEgQ1NTIGNsYXNzIChzdGFuZGFsb25lIENTUykgYXJlXG4vLyBzdXBwb3J0ZWQuIFRoZSA6bm90KFtuby1tYXJnaW5zXSkgZ3VhcmQgZW5zdXJlcyBuby1tYXJnaW5zIGFsd2F5cyB3aW5zLlxuOmhvc3QoW21hcmdpbi1ibG9jay1lbmQ9J25vbmUnXTpub3QoW25vLW1hcmdpbnNdKSkgLmlkcy1pbnB1dCxcbi5pZHMtaW5wdXQubWFyZ2luLWJsb2NrLWVuZC1ub25lOm5vdCgubm8tbWFyZ2lucykgeyBtYXJnaW4tYmxvY2stZW5kOiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7IH1cblxuOmhvc3QoW21hcmdpbi1ibG9jay1lbmQ9JzR4cyddOm5vdChbbm8tbWFyZ2luc10pKSAuaWRzLWlucHV0LFxuLmlkcy1pbnB1dC5tYXJnaW4tYmxvY2stZW5kLTR4czpub3QoLm5vLW1hcmdpbnMpICB7IG1hcmdpbi1ibG9jay1lbmQ6IHZhcigtLWlkcy1zcGFjZS00eHMpOyB9XG5cbjpob3N0KFttYXJnaW4tYmxvY2stZW5kPSczeHMnXTpub3QoW25vLW1hcmdpbnNdKSkgLmlkcy1pbnB1dCxcbi5pZHMtaW5wdXQubWFyZ2luLWJsb2NrLWVuZC0zeHM6bm90KC5uby1tYXJnaW5zKSAgeyBtYXJnaW4tYmxvY2stZW5kOiB2YXIoLS1pZHMtc3BhY2UtM3hzKTsgfVxuXG46aG9zdChbbWFyZ2luLWJsb2NrLWVuZD0nMnhzJ106bm90KFtuby1tYXJnaW5zXSkpIC5pZHMtaW5wdXQsXG4uaWRzLWlucHV0Lm1hcmdpbi1ibG9jay1lbmQtMnhzOm5vdCgubm8tbWFyZ2lucykgIHsgbWFyZ2luLWJsb2NrLWVuZDogdmFyKC0taWRzLXNwYWNlLTJ4cyk7IH1cblxuOmhvc3QoW21hcmdpbi1ibG9jay1lbmQ9J3hzJ106bm90KFtuby1tYXJnaW5zXSkpICAuaWRzLWlucHV0LFxuLmlkcy1pbnB1dC5tYXJnaW4tYmxvY2stZW5kLXhzOm5vdCgubm8tbWFyZ2lucykgICB7IG1hcmdpbi1ibG9jay1lbmQ6IHZhcigtLWlkcy1zcGFjZS14cyk7IH1cblxuOmhvc3QoW21hcmdpbi1ibG9jay1lbmQ9J3NtJ106bm90KFtuby1tYXJnaW5zXSkpICAuaWRzLWlucHV0LFxuLmlkcy1pbnB1dC5tYXJnaW4tYmxvY2stZW5kLXNtOm5vdCgubm8tbWFyZ2lucykgICB7IG1hcmdpbi1ibG9jay1lbmQ6IHZhcigtLWlkcy1zcGFjZS1zbSk7IH1cblxuOmhvc3QoW21hcmdpbi1ibG9jay1lbmQ9J21kJ106bm90KFtuby1tYXJnaW5zXSkpICAuaWRzLWlucHV0LFxuLmlkcy1pbnB1dC5tYXJnaW4tYmxvY2stZW5kLW1kOm5vdCgubm8tbWFyZ2lucykgICB7IG1hcmdpbi1ibG9jay1lbmQ6IHZhcigtLWlkcy1zcGFjZS1tZCk7IH1cblxuOmhvc3QoW21hcmdpbi1ibG9jay1lbmQ9J2xnJ106bm90KFtuby1tYXJnaW5zXSkpICAuaWRzLWlucHV0LFxuLmlkcy1pbnB1dC5tYXJnaW4tYmxvY2stZW5kLWxnOm5vdCgubm8tbWFyZ2lucykgICB7IG1hcmdpbi1ibG9jay1lbmQ6IHZhcigtLWlkcy1zcGFjZS1sZyk7IH1cblxuOmhvc3QoW21hcmdpbi1ibG9jay1lbmQ9J3hsJ106bm90KFtuby1tYXJnaW5zXSkpICAuaWRzLWlucHV0LFxuLmlkcy1pbnB1dC5tYXJnaW4tYmxvY2stZW5kLXhsOm5vdCgubm8tbWFyZ2lucykgICB7IG1hcmdpbi1ibG9jay1lbmQ6IHZhcigtLWlkcy1zcGFjZS14bCk7IH1cblxuOmhvc3QoW21hcmdpbi1ibG9jay1lbmQ9JzJ4bCddOm5vdChbbm8tbWFyZ2luc10pKSAuaWRzLWlucHV0LFxuLmlkcy1pbnB1dC5tYXJnaW4tYmxvY2stZW5kLTJ4bDpub3QoLm5vLW1hcmdpbnMpICB7IG1hcmdpbi1ibG9jay1lbmQ6IHZhcigtLWlkcy1zcGFjZS0yeGwpOyB9XG5cbjpob3N0KFttYXJnaW4tYmxvY2stZW5kPSczeGwnXTpub3QoW25vLW1hcmdpbnNdKSkgLmlkcy1pbnB1dCxcbi5pZHMtaW5wdXQubWFyZ2luLWJsb2NrLWVuZC0zeGw6bm90KC5uby1tYXJnaW5zKSAgeyBtYXJnaW4tYmxvY2stZW5kOiB2YXIoLS1pZHMtc3BhY2UtM3hsKTsgfVxuXG46aG9zdChbbWFyZ2luLWJsb2NrLWVuZD0nNHhsJ106bm90KFtuby1tYXJnaW5zXSkpIC5pZHMtaW5wdXQsXG4uaWRzLWlucHV0Lm1hcmdpbi1ibG9jay1lbmQtNHhsOm5vdCgubm8tbWFyZ2lucykgIHsgbWFyZ2luLWJsb2NrLWVuZDogdmFyKC0taWRzLXNwYWNlLTR4bCk7IH1cblxuOmhvc3QoW2xhYmVsLXBvc2l0aW9uPVwiaW5saW5lLXN0YXJ0XCJdKSB7XG4gIC5maWVsZC1jb250YWluZXIge1xuICAgIGp1c3RpZnktY29udGVudDogdmFyKC0taWRzLWJveC1qdXN0aWZ5LWNvbnRlbnQsIGZsZXgtc3RhcnQpO1xuICB9XG5cbiAgLmlkcy1pbnB1dCB7XG4gICAganVzdGlmeS1jb250ZW50OiB2YXIoLS1pZHMtYm94LWp1c3RpZnktY29udGVudCwgZmxleC1zdGFydCk7XG4gIH1cbn1cblxuOmhvc3QoW2xhYmVsLXBvc2l0aW9uPVwiaW5saW5lLXN0YXJ0XCJdW3NpemU9XCJmdWxsXCJdKSB7XG4gIC5maWVsZC1jb250YWluZXIge1xuICAgIGZsZXg6IDE7XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG59XG5cbjpob3N0KC5pbi1mbGV4LWl0ZW1bc2l6ZT0neHMnXSkge1xuICBtaW4td2lkdGg6IHZhcigtLWlkcy1pbnB1dC13aWR0aC0xMCk7XG59XG5cbjpob3N0KC5pbi1mbGV4LWl0ZW1bc2l6ZT0nc20nXSkge1xuICBtaW4td2lkdGg6IHZhcigtLWlkcy1pbnB1dC13aWR0aC0yMCk7XG59XG5cbjpob3N0KC5pbi1mbGV4LWl0ZW1bc2l6ZT0nbW0nXSkge1xuICBtaW4td2lkdGg6IHZhcigtLWlkcy1pbnB1dC13aWR0aC0zMCk7XG59XG5cbjpob3N0KC5pbi1mbGV4LWl0ZW1bc2l6ZT0nbWQnXSkge1xuICBtaW4td2lkdGg6IHZhcigtLWlkcy1pbnB1dC13aWR0aC00MCk7XG59XG5cbjpob3N0KC5pbi1mbGV4LWl0ZW1bc2l6ZT0nbGcnXSkge1xuICBtaW4td2lkdGg6IHZhcigtLWlkcy1pbnB1dC13aWR0aC01MCk7XG59XG5cbjpob3N0KC5pbi1mbGV4LWl0ZW1bbGFiZWwtYnJlYWs9J3Nocmluay12YWx1ZSddW3NpemVdKSxcbjpob3N0KC5pbi1mbGV4LWl0ZW1bbGFiZWwtcG9zaXRpb249J2lubGluZS1zdGFydCddW3NpemVdKSB7XG4gIG1pbi13aWR0aDogMDtcbn1cblxuOmhvc3QoW3NpemU9J2Z1bGwnXSkge1xuICB3aWR0aDogMTAwJTtcbn1cblxuOmhvc3QoW2xhYmVsLXdyYXA9J3dyYXAnXSkge1xuICAuaWRzLWxhYmVsLXRleHQge1xuICAgIG92ZXJmbG93LXdyYXA6IGFueXdoZXJlO1xuICB9XG59XG5cbjpob3N0KFtsYWJlbC13cmFwPSdlbGxpcHNpcyddKSB7XG4gIEBpbmNsdWRlIGlkcy1pbnB1dC1sYWJlbC13cmFwLWVsbGlwc2lzKCk7XG59XG5cbjpob3N0KFtsYWJlbC13cmFwPSdlbGxpcHNpcy1uby1zdHJldGNoJ10pIHtcbiAgQGluY2x1ZGUgaWRzLWlucHV0LWxhYmVsLXdyYXAtZWxsaXBzaXMoKTtcbiAgQGluY2x1ZGUgaWRzLWlucHV0LWxhYmVsLXdyYXAtbm8tc3RyZXRjaCgpO1xufVxuXG46aG9zdChbbGFiZWwtd3JhcD0nd3JhcC1uby1zdHJldGNoJ10pIHtcbiAgQGluY2x1ZGUgaWRzLWlucHV0LWxhYmVsLXdyYXAtbm8tc3RyZXRjaCgpO1xuXG4gIC5pZHMtbGFiZWwtdGV4dCB7XG4gICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG4gIH1cbn1cblxuLmlkcy1pbnB1dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ibG9jay1lbmQ6IHZhcigtLWlkcy1zcGFjZS1zbSk7XG4gIG1heC13aWR0aDogdmFyKC0taWRzLWlucHV0LXdpZHRoLWZ1bGwpO1xuXG4gIC8vIEFwcGxpZWQgdG8gdGhlIHdyYXBwZXIgZWxlbWVudCB0aGF0IHdyYXBzIHRoZSBpbnB1dCBhbmQgb3RoZXIgaW50ZXJhY3RhYmxlIGVsZW1lbnRzXG4gIC5maWVsZC1jb250YWluZXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICAgIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWRzLWJvcmRlci1yYWRpdXMtMnhzKTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW46IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcbiAgICBtYXgtd2lkdGg6IHZhcigtLWlkcy1pbnB1dC13aWR0aC1mdWxsKTtcbiAgICBwYWRkaW5nOiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJlc2l6ZTogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgJi5mZi1pbnB1dC1maWVsZCB7XG4gICAgICBib3JkZXItc3RhcnQtc3RhcnQtcmFkaXVzOiAwO1xuICAgICAgYm9yZGVyLWVuZC1zdGFydC1yYWRpdXM6IDA7XG5cbiAgICAgIC5pZHMtaW5wdXQtZmllbGQge1xuICAgICAgICAgY29sb3I6IHZhcigtLWlkcy1maWx0ZXItZmllbGQtdGV4dC1jb2xvcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZpZWxkLWNvbnRhaW5lci5zcXVhcmUge1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWlkcy1ib3JkZXItcmFkaXVzLW5vbmUpO1xuICB9XG5cbiAgJjpmb2N1cy13aXRoaW4sXG4gICYucmVhZG9ubHk6Zm9jdXMtd2l0aGluLFxuICAmLmlzLWFjdGl2ZSB7XG4gICAgLmlkcy1pbnB1dC1maWVsZCB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgb3V0bGluZS1jb2xvcjogdmFyKC0taWRzLWNvbG9yLXRyYW5zcGFyZW50KTtcbiAgICB9XG5cbiAgICAuZmllbGQtY29udGFpbmVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLWlucHV0LWNvbG9yLWJvcmRlci1mb2N1cyk7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS1pZHMtaW5wdXQtY29sb3ItYm9yZGVyLXNoYWRvdyk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtaW5wdXQtY29sb3ItYmFja2dyb3VuZC1kZWZhdWx0KTtcbiAgICB9XG4gIH1cblxuICAuaWRzLWljb24uc3RhcnRpbmctaWNvbiB7XG4gICAgbWFyZ2luLWlubGluZS1zdGFydDogdmFyKC0taWRzLXNwYWNlLXhzKTtcbiAgfVxuXG4gIC5pZHMtaWNvbi5lbmRpbmctaWNvbiB7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6IHZhcigtLWlkcy1zcGFjZS14cyk7XG4gIH1cblxuICAvLyBBcHBsaWVkIHRvIHRoZSBzaGFkb3cgcm9vdCdzIEhUTUxJbnB1dEVsZW1lbnRcbiAgLmlkcy1pbnB1dC1maWVsZCB7XG4gICAgQGluY2x1ZGUgbWl4aW5zLmFudGlhbGlhc2VkKCk7XG5cbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy1jb2xvci10cmFuc3BhcmVudCk7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pZHMtZm9udC1mYW1pbHktZGVmYXVsdCksIHZhcigtLWlkcy1mb250LWZhbWlseS1zeXN0ZW0tc2Fucyk7XG4gICAgcGFkZGluZy1ibG9jay1zdGFydDogdmFyKC0taWRzLXNwYWNlLTJ4cyk7XG4gICAgcGFkZGluZy1ibG9jay1lbmQ6IHZhcigtLWlkcy1zcGFjZS0yeHMpO1xuICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiB2YXIoLS1pZHMtc3BhY2UtMTIpO1xuICAgIHBhZGRpbmctaW5saW5lLWVuZDogdmFyKC0taWRzLWlucHV0LXBhZGRpbmctaW5saW5lLWVuZCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1pZHMtaW5wdXQtZm9udC1zaXplKTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogZml0LWNvbnRlbnQ7XG4gICAgcmVzaXplOiBub25lO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5cbiAgICAmLnRleHQtZWxsaXBzaXMge1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgfVxuXG4gICAgLy8gaW5wdXQgdGV4dC1hbGlnbjogW3N0YXJ0LCBjZW50ZXIsIGVuZF1cbiAgICAmLnN0YXJ0IHtcbiAgICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgIH1cblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1pZHMtaW5wdXQtY29sb3ItdGV4dC1wbGFjZWhvbGRlcik7XG4gICAgfVxuXG4gICAgJi5jZW50ZXIge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgICYuZW5kIHtcbiAgICAgIHRleHQtYWxpZ246IGVuZDtcbiAgICB9XG4gIH1cblxuICAmLmV2ZW50LXBpY2tlciB7XG4gICAgLmlkcy1pbnB1dC1maWVsZCB7XG4gICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0taWRzLXNwYWNlLXhzKTtcbiAgICAgIHBhZGRpbmctaW5saW5lLWVuZDogdmFyKC0taWRzLXNwYWNlLTJ4cyk7XG4gICAgfVxuICB9XG5cbiAgLy8gVmFsaWRhdGlvbiBNZXNzYWdlcyBhcmUgYXBwZW5kZWQgYmVuZWF0aCB0aGUgYC5maWVsZC1jb250YWluZXJgXG4gIC52YWxpZGF0aW9uLW1lc3NhZ2Uge1xuICAgIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0taWRzLXNwYWNlLTJ4cyk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuXG4gICAgLmlkcy1pY29uIHtcbiAgICAgIHBsYWNlLXNlbGY6IHNlbGYtc3RhcnQ7XG4gICAgICBtYXJnaW4tdG9wOiAxcHg7XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgYG5vLW1hcmdpbnNgIGlzIHVzZWQ6XG4gIC8vIC0gbWFyZ2lucyBhcmUgcmVtb3ZlZCBmcm9tIGNvbXBvbmVudCB0b3AvYm90dG9tXG4gIC8vIC0gbGFiZWxzIGFyZSB2aXN1YWxseSBoaWRkZW4gaW5zdGVhZCBvZiBkaXNwbGF5aW5nIGJsYW5rIGNvbnRlbnQgZm9yIHNwYWNpbmdcbiAgJi5uby1tYXJnaW5zLFxuICAmLm5vLW1hcmdpbnMuY29tcGFjdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG5cbiAgICAmLmZpZWxkLWhlaWdodC14cyB7XG4gICAgICBtYXJnaW4tYmxvY2stZW5kOiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG4gICAgfVxuXG4gICAgLmZpZWxkLWNvbnRhaW5lciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG4gICAgfVxuXG4gICAgLmlkcy1pbnB1dC1maWVsZCB7XG4gICAgICBtYXJnaW46IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcbiAgICB9XG5cbiAgICAvLyBSZXZlcnNlIHRoZSBtYXJnaW5zIG9uIGBpZHMtaW5wdXRbbm8tbWFyZ2luc11gIGZpZWxkcyB0byBoYXZlIHRoZSBib3R0b20gbWFyZ2luIG9uIHRvcFxuICAgIC52YWxpZGF0aW9uLW1lc3NhZ2Uge1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiB2YXIoLS1pZHMtc3BhY2UtMnhzKTtcbiAgICB9XG5cbiAgICAuaWRzLWxhYmVsLXRleHQge1xuICAgICAgJi5lbXB0eSB7XG4gICAgICAgIG1hcmdpbjogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBpbnB1dCBzaXplczogW3hzLCBzbSwgbW0sIG1kLCBsZywgZnVsbF1cbiAgLy8gU3VidHJhY3RpbmcgMiB0YWtlcyBpbnRvIGFjY291bnQgdGhhdCB0aGUgd2lkdGggaW5jbHVkZXMgdGhlIGAuZmllbGQtY29udGFpbmVyYCBib3JkZXIgb24gYm90aCBzaWRlcy5cbiAgJi54cyB7XG4gICAgLmZpZWxkLWNvbnRhaW5lcixcbiAgICAudmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICAgIHdpZHRoOiAkYm9yZGVyLWlucHV0LXNpemUteHM7XG4gICAgfVxuXG4gICAgLnZhbGlkYXRpb24tbWVzc2FnZSB7XG4gICAgICBtYXgtd2lkdGg6ICRib3JkZXItaW5wdXQtc2l6ZS14cztcbiAgICB9XG4gIH1cblxuICAmLnNtIHtcbiAgICAuZmllbGQtY29udGFpbmVye1xuICAgICAgd2lkdGg6ICRib3JkZXItaW5wdXQtc2l6ZS1zbTtcbiAgICB9XG5cbiAgICAudmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICAgIG1heC13aWR0aDogJGJvcmRlci1pbnB1dC1zaXplLXNtO1xuICAgIH1cbiAgfVxuXG4gICYubW0ge1xuICAgIC5maWVsZC1jb250YWluZXIge1xuICAgICAgd2lkdGg6ICRib3JkZXItaW5wdXQtc2l6ZS1tbTtcbiAgICB9XG5cbiAgICAudmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICAgIG1heC13aWR0aDogJGJvcmRlci1pbnB1dC1zaXplLW1tO1xuICAgIH1cbiAgfVxuXG4gICYubWQge1xuICAgIC5maWVsZC1jb250YWluZXIge1xuICAgICAgd2lkdGg6ICRib3JkZXItaW5wdXQtc2l6ZS1tZDtcbiAgICB9XG5cbiAgICAudmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICAgIG1heC13aWR0aDogJGJvcmRlci1pbnB1dC1zaXplLW1kO1xuICAgIH1cbiAgfVxuXG4gICYubGcge1xuICAgIC5maWVsZC1jb250YWluZXIge1xuICAgICAgd2lkdGg6ICRib3JkZXItaW5wdXQtc2l6ZS1sZztcbiAgICB9XG5cbiAgICAudmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICAgIG1heC13aWR0aDogJGJvcmRlci1pbnB1dC1zaXplLWxnO1xuICAgIH1cbiAgfVxuXG4gICYuZnVsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAuZmllbGQtY29udGFpbmVyLFxuICAgIC52YWxpZGF0aW9uLW1lc3NhZ2Uge1xuICAgICAgd2lkdGg6IHZhcigtLWlkcy1pbnB1dC13aWR0aC1mdWxsKTtcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogbWl4aW5zLiRicmVha3BvaW50LXNtKSAge1xuICAgICY6bm90KC5mdWxsKTpub3QoLm1kKTpub3QoLm1tKTpub3QoLnNtKTpub3QoLnhzKTpub3QoLmxnKSB7XG4gICAgICAuZmllbGQtY29udGFpbmVyLFxuICAgICAgLnZhbGlkYXRpb24tbWVzc2FnZSB7XG4gICAgICAgIG1heC13aWR0aDogJGJvcmRlci1pbnB1dC1zaXplLW1tO1xuICAgICAgICBtaW4td2lkdGg6IGF1dG87XG4gICAgICB9XG5cbiAgICAgIC5maWVsZC1jb250YWluZXIge1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgZmxleC1iYXNpczogJGJvcmRlci1pbnB1dC1zaXplLW1tO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIGlucHV0IGZpZWxkLWhlaWdodHM6IFt4cywgc20sIG1kLCBsZ11cbiAgLy8gU3VidHJhY3RpbmcgMiB0YWtlcyBpbnRvIGFjY291bnQgdGhhdCB0aGUgd2lkdGggaW5jbHVkZXMgdGhlIGAuZmllbGQtY29udGFpbmVyYCBib3JkZXIgb24gYm90aCBzaWRlcy5cbiAgJi5maWVsZC1oZWlnaHQteHMge1xuICAgIEBpbmNsdWRlIGlucHV0LWV4dHJhLXNtYWxsLWhlaWdodCgpO1xuXG4gICAgJi5uby1tYXJnaW4tYm90dG9tIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcblxuICAgICAgLmZpZWxkLWNvbnRhaW5lcixcbiAgICAgIC5pZHMtaW5wdXQtZmllbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5maWVsZC1oZWlnaHQtc20gLmlkcy1pbnB1dC1maWVsZCB7XG4gICAgaGVpZ2h0OiAkYm9yZGVyLWlucHV0LWZpZWxkLWhlaWdodC1zbTtcbiAgfVxuXG4gICYuZmllbGQtaGVpZ2h0LW1kIC5pZHMtaW5wdXQtZmllbGQge1xuICAgIGhlaWdodDogJGJvcmRlci1pbnB1dC1maWVsZC1oZWlnaHQtbWQ7XG4gIH1cblxuICAmLmZpZWxkLWhlaWdodC1sZyAuaWRzLWlucHV0LWZpZWxkIHtcbiAgICBoZWlnaHQ6ICRib3JkZXItaW5wdXQtZmllbGQtaGVpZ2h0LWxnO1xuICB9XG5cbiAgLy8gaW5wdXQgY29tcGFjdFxuICAmLmNvbXBhY3Qge1xuICAgIEBpbmNsdWRlIGlucHV0LWV4dHJhLXNtYWxsLWhlaWdodCgkYm9yZGVyLWlucHV0LWZpZWxkLWhlaWdodC14cyk7XG5cbiAgICAmLm5vLW1hcmdpbi1ib3R0b20ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuXG4gICAgICAuZmllbGQtY29udGFpbmVyLFxuICAgICAgLmlkcy1pbnB1dC1maWVsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWlkcy1zcGFjZS1ub25lKTtcbiAgICAgICAgaGVpZ2h0OiAkYm9yZGVyLWlucHV0LWZpZWxkLWhlaWdodC14cztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZmllbGQtY29udGFpbmVyOm5vdCguZmYtaW5wdXQtZmllbGQpIHtcbiAgICAgIGhlaWdodDogY2FsYyh2YXIoLS1pZHMtaW5wdXQtaGVpZ2h0LTEwKSAtIDJweCk7XG4gICAgfVxuICB9XG5cbiAgLy8gRGF0YSBHcmlkIFZhcmlhbnRzXG5cbiAgLy8gRmx1c2gvSW52aXNpYmxlIFZhcmlhbnQgKHVzZWQgaW4gSWRzRGF0YUdyaWQgY2VsbCBlZGl0aW5nKVxuICAmLmNvbG9yLXZhcmlhbnQtYm9yZGVybGVzcyB7XG4gICAgLS1pZHMtaW5wdXQtY29sb3ItYm9yZGVyLWZvY3VzOiB2YXIoLS1pZHMtY29sb3ItdHJhbnNwYXJlbnQpO1xuXG4gICAgbWFyZ2luOiAxcHg7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0taWRzLWJvcmRlci1yYWRpdXMtbm9uZSk7XG5cbiAgICBpbnB1dCB7XG4gICAgICBmb250LXNpemU6IHZhcigtLWlkcy1mb250LXNpemUtc20pO1xuICAgIH1cblxuICAgIHNsb3RbbmFtZT1cInRyaWdnZXItc3RhcnRcIl0sXG4gICAgc2xvdFtuYW1lPVwidHJpZ2dlci1lbmRcIl0ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG5cbiAgICAuaWRzLWxhYmVsLXRleHQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9O1xuXG4gICAgLmljb24tZGlydHkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAudmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLmZpZWxkLWNvbnRhaW5lciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtY29sb3ItdHJhbnNwYXJlbnQpICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJjpmb2N1cy13aXRoaW4gLmZpZWxkLWNvbnRhaW5lciB7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cblxuICAgICYuaWRzLWlucHV0LmZpZWxkLWhlaWdodC1sZyB7XG4gICAgICAuaWRzLWlucHV0LWZpZWxkIHtcbiAgICAgICAgcGFkZGluZy1pbmxpbmU6IGNhbGModmFyKC0taWRzLXNwYWNlLXNtKSAtIDJweCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pZHMtaW5wdXQuZmllbGQtaGVpZ2h0LW1kIHtcbiAgICAgIC5pZHMtaW5wdXQtZmllbGQge1xuICAgICAgICBwYWRkaW5nLWlubGluZTogY2FsYyh2YXIoLS1pZHMtc3BhY2UtMTIpIC0gMnB4KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlkcy1pbnB1dC5maWVsZC1oZWlnaHQtc20ge1xuICAgICAgLmlkcy1pbnB1dC1maWVsZCB7XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiBjYWxjKHZhcigtLWlkcy1zcGFjZS14cykgLSAycHgpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaWRzLWlucHV0LmZpZWxkLWhlaWdodC14cyB7XG4gICAgICAuaWRzLWlucHV0LWZpZWxkIHtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWZvbnQtc2l6ZS1zbSk7XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1pZHMtc3BhY2UtM3hzKTtcbiAgICAgIH1cblxuICAgICAgc2xvdFtuYW1lPVwidHJpZ2dlci1lbmRcIl0gIHtcbiAgICAgICAgcGFkZGluZy1pbmxpbmUtZW5kOiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pZHMtaW5wdXQuZmllbGQtaGVpZ2h0LXh4cyB7XG4gICAgICAuaWRzLWlucHV0LWZpZWxkIHtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWZvbnQtc2l6ZS1zbSk7XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiB2YXIoLS1pZHMtc3BhY2UtNHhzKTtcbiAgICAgIH1cblxuICAgICAgc2xvdFtuYW1lPVwidHJpZ2dlci1lbmRcIl0gIHtcbiAgICAgICAgcGFkZGluZy1pbmxpbmUtZW5kOiB2YXIoLS1pZHMtc3BhY2Utbm9uZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gRmx1c2gvSW52aXNpYmxlIFZhcmlhbnQgKHVzZWQgaW4gSWRzRGF0YUdyaWQgaW5saW5lIGNlbGwgZWRpdGluZylcbiAgJi5jb2xvci12YXJpYW50LWluLWNlbGwge1xuICAgIG1hcmdpbjogMXB4O1xuXG4gICAgaW5wdXQge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS1pZHMtZm9udC1zaXplLXNtKTtcblxuICAgICAgJltmaWVsZC1oZWlnaHQ9J3h4cyddIHtcbiAgICAgICAgLS1pZHMtZHJvcGRvd24tZm9udC1zaXplLWNvbXBhY3Q6IHZhcigtLWlkcy1kYXRhLWdyaWQtZm9udC1zaXplLXNtKTtcblxuICAgICAgICBmb250LXNpemU6IHZhcigtLWlkcy1kYXRhLWdyaWQtZm9udC1zaXplLXNtKTtcbiAgICAgICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IDJweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJi5pZHMtaW5wdXQuZmllbGQtaGVpZ2h0LWxnIC5pZHMtaW5wdXQtZmllbGQge1xuICAgICAgcGFkZGluZy1pbmxpbmU6IDExcHg7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgfVxuXG4gICAgJi5pZHMtaW5wdXQuZnVsbCAuZmllbGQtY29udGFpbmVyIHtcbiAgICAgIG1hcmdpbi1pbmxpbmU6IDNweDtcbiAgICAgIHdpZHRoOiBpbml0aWFsO1xuICAgIH1cblxuICAgICYuaWRzLWlucHV0LmZpZWxkLWhlaWdodC1tZCAuaWRzLWlucHV0LWZpZWxkIHtcbiAgICAgIHBhZGRpbmctaW5saW5lOiA2cHg7XG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgfVxuXG4gICAgJi5pZHMtaW5wdXQuZmllbGQtaGVpZ2h0LXNtIC5pZHMtaW5wdXQtZmllbGQge1xuICAgICAgcGFkZGluZy1pbmxpbmU6IHZhcigtLWlkcy1zcGFjZS0yeHMpO1xuICAgICAgaGVpZ2h0OiAyN3B4O1xuICAgIH1cblxuICAgICYuaWRzLWlucHV0LmZpZWxkLWhlaWdodC1zbS5mdWxsIC5maWVsZC1jb250YWluZXIge1xuICAgICAgbWFyZ2luLWlubGluZTogdmFyKC0taWRzLXNwYWNlLTN4cyk7XG4gICAgfVxuXG4gICAgJi5pZHMtaW5wdXQuZmllbGQtaGVpZ2h0LXhzIC5pZHMtaW5wdXQtZmllbGQge1xuICAgICAgcGFkZGluZy1pbmxpbmU6IDFweDtcbiAgICAgIGhlaWdodDogMjRweDtcbiAgICB9XG5cbiAgICAmLmlkcy1pbnB1dC5maWVsZC1oZWlnaHQteHMuZnVsbCAuZmllbGQtY29udGFpbmVyIHtcbiAgICAgIG1hcmdpbi1pbmxpbmU6IDFweDtcbiAgICB9XG4gIH1cblxuICAvLyBNb2R1bGUgTmF2IGNvbG9yIHZhcmlhbnRcbiAgLy8gKHVzZWQgaW4gSWRzRHJvcGRvd24vSWRzU2VhcmNoRmllbGQgbG9jYXRlZCBpbnNpZGUgSWRzTW9kdWxlTmF2KVxuICAmLmNvbG9yLXZhcmlhbnQtbW9kdWxlLW5hdiB7XG4gICAgbWFyZ2luLWJsb2NrLWVuZDogdmFyKC0taWRzLXNwYWNlLW5vbmUpO1xuICAgIHRyYW5zZm9ybTogYmFja2dyb3VuZC1jb2xvciB2YXIoLS1pZHMtbW90aW9uLWR1cmF0aW9uKSB2YXIoLS1pZHMtbW90aW9uLWVhc2UpLFxuICAgICAgYm9yZGVyLWNvbG9yIHZhcigtLWlkcy1tb3Rpb24tZHVyYXRpb24pIHZhcigtLWlkcy1tb3Rpb24tZWFzZSksXG4gICAgICBjb2xvciB2YXIoLS1pZHMtbW90aW9uLWR1cmF0aW9uKSB2YXIoLS1pZHMtbW90aW9uLWVhc2UpO1xuXG4gICAgLmZpZWxkLWNvbnRhaW5lciB7XG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1pZHMtbW9kdWxlLW5hdi1jb21tb24tYm9yZGVyLXJhZGl1cyk7XG4gICAgICBib3JkZXI6IHZhcigtLWlkcy1tb2R1bGUtbmF2LWlucHV0LWJvcmRlci13aWR0aCkgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgaW5wdXQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWNvbG9yLXRyYW5zcGFyZW50KTtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pZHMtbW9kdWxlLW5hdi1zZWFyY2gtaW5wdXQtcGxhY2Vob2xkZXItdGV4dC1jb2xvcik7XG4gICAgICB9XG5cbiAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWlkcy1tb2R1bGUtbmF2LXNlYXJjaC1pbnB1dC10ZXh0LWNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOm5vdChbY2xhc3MqPVwiZmllbGQtaGVpZ2h0LVwiXSkge1xuICAgICAgaGVpZ2h0OiB2YXIoLS1pZHMtbW9kdWxlLW5hdi1zZWFyY2gtd3JhcHBlci1oZWlnaHQpO1xuXG4gICAgICBpbnB1dCB7XG4gICAgICAgIGhlaWdodDogdmFyKC0taWRzLW1vZHVsZS1uYXYtc2VhcmNoLWlucHV0LWhlaWdodCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBDb2xvciBTdHlsZXNcblxuICAmOm5vdChbY2xhc3MqPSdjb2xvci12YXJpYW50LSddKSB7XG4gICAgLmZpZWxkLWNvbnRhaW5lcjpub3QoOmZvY3VzLXdpdGhpbikge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWlucHV0LWNvbG9yLWJhY2tncm91bmQtZGVmYXVsdCk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1pbnB1dC1ib3JkZXItZGVmYXVsdC1jb2xvcik7XG4gICAgICBjb2xvcjogdmFyKC0taWRzLWlucHV0LWNvbG9yLXRleHQtZGVmYXVsdCk7XG4gICAgfVxuXG4gICAgJi5yZWFkb25seSB7XG4gICAgICAuZmllbGQtY29udGFpbmVyLFxuICAgICAgJi5ob3ZlciAuZmllbGQtY29udGFpbmVyLFxuICAgICAgJi5mb2N1cy13aXRoaW4gLmZpZWxkLWNvbnRhaW5lciB7XG4gICAgICAgICYuZXJyb3IsXG4gICAgICAgICYuZXJyb3I6aG92ZXIge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLWNvbG9yLWVycm9yLWRlZmF1bHQpO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1pZHMtY29sb3ItZXJyb3ItZGVmYXVsdCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpub3QoLnJlYWRvbmx5LWJhY2tncm91bmQpOm5vdCguYmctdHJhbnNwYXJlbnQpIHtcbiAgICAgICAgLmZpZWxkLWNvbnRhaW5lcixcbiAgICAgICAgJi5ob3ZlciAuZmllbGQtY29udGFpbmVyLFxuICAgICAgICAmLmZvY3VzLXdpdGhpbiAuZmllbGQtY29udGFpbmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtaW5wdXQtY29sb3ItYmFja2dyb3VuZC1yZWFkb25seSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgIC5maWVsZC1jb250YWluZXIsXG4gICAgICAmOmhvdmVyIC5maWVsZC1jb250YWluZXIsXG4gICAgICAmOmZvY3VzLXdpdGhpbiAuZmllbGQtY29udGFpbmVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtaW5wdXQtY29sb3ItYm9yZGVyLWRpc2FibGVkKTtcbiAgICAgICAgY29sb3I6IHZhcigtLWlkcy1pbnB1dC1jb2xvci10ZXh0LWRpc2FibGVkKTtcbiAgICAgICAgb3BhY2l0eTogdmFyKC0taWRzLWlucHV0LWRpc2FibGVkLW9wYWNpdHkpO1xuXG4gICAgICAgIC8vIFNhZmFyaSBpbnB1dCB0ZXh0IGNvbG9yXG4gICAgICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB2YXIoLS1pZHMtaW5wdXQtY29sb3ItdGV4dC1kaXNhYmxlZCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5iZy10cmFuc3BhcmVudCB7XG4gICAgICAuZmllbGQtY29udGFpbmVyLFxuICAgICAgJi5yZWFkb25seSAuZmllbGQtY29udGFpbmVyLFxuICAgICAgJi5kaXNhYmxlZCAuZmllbGQtY29udGFpbmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWNvbG9yLXRyYW5zcGFyZW50KTtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cy13aXRoaW4ge1xuICAgICAgICAuZmllbGQtY29udGFpbmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtY29sb3ItdHJhbnNwYXJlbnQpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG5cbiAgICAmOmhvdmVyOm5vdCgucmVhZG9ubHkpOm5vdCguZGlzYWJsZWQpOm5vdCg6Zm9jdXMpOm5vdCg6Zm9jdXMtd2l0aGluKSxcbiAgICAmOmhvdmVyLnJlYWRvbmx5LnJlYWRvbmx5LWJhY2tncm91bmQ6bm90KDpmb2N1cyk6bm90KDpmb2N1cy13aXRoaW4pIHtcbiAgICAgIC5maWVsZC1jb250YWluZXIge1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1pbnB1dC1jb2xvci1ib3JkZXItaG92ZXIpO1xuICAgICAgfVxuXG4gICAgICAvLyBJbmNsdWRlIGVycm9yIHN0eWxlc1xuICAgICAgQGluY2x1ZGUgaWRzLWlucHV0LW1lc3NhZ2Utc3R5bGVzKCk7XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUsXG4gICAgJi5pcy1hY3RpdmU6aG92ZXIucmVhZG9ubHkucmVhZG9ubHktYmFja2dyb3VuZCB7XG4gICAgICAuZmllbGQtY29udGFpbmVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtaW5wdXQtY29sb3ItYm9yZGVyLWZvY3VzKTtcbiAgICAgIH1cblxuICAgICAgLy8gSW5jbHVkZSBlcnJvciBzdHlsZXNcbiAgICAgIEBpbmNsdWRlIGlkcy1pbnB1dC1tZXNzYWdlLXN0eWxlcygpO1xuICAgIH1cblxuICAgICY6aG92ZXI6bm90KC5kaXNhYmxlZCkucmVhZG9ubHkucmVhZG9ubHktYmFja2dyb3VuZC5jb2xvci12YXJpYW50LWFsdGVybmF0ZS1mb3JtYXR0ZXIge1xuICAgICAgLmZpZWxkLWNvbnRhaW5lciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1maWx0ZXItaW5wdXQtY29sb3ItYm9yZGVyLWhvdmVyKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJbmNsdWRlIGVycm9yIHN0eWxlc1xuICAgIEBpbmNsdWRlIGlkcy1pbnB1dC1tZXNzYWdlLXN0eWxlcygpO1xuICB9XG5cbiAgLy8gQWx0ZXJuYXRlIENvbG9yIFZhcmlhbnQgKHVzZWQgaW4gSWRzSGVhZGVyIC0gU2VhcmNoKVxuICAmLmNvbG9yLXZhcmlhbnQtYWx0ZXJuYXRlIHtcbiAgICAuZmllbGQtY29udGFpbmVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLWlucHV0LWhlYWRlci1jb2xvci1ib3JkZXIpO1xuICAgICAgY29sb3I6IHZhcigtLWlkcy1pbnB1dC1oZWFkZXItY29sb3ItdGV4dC1kZWZhdWx0KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy1pbnB1dC1oZWFkZXItY29sb3ItYmFja2dyb3VuZCk7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0taWRzLWlucHV0LWhlYWRlci1jb2xvci1ib3JkZXIpO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG5cbiAgICAmOmZvY3VzLXdpdGhpbiAuZmllbGQtY29udGFpbmVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLWlucHV0LWNvbG9yLWJvcmRlci1mb2N1cyk7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS1pZHMtaW5wdXQtY29sb3ItYm9yZGVyLXNoYWRvdyk7XG4gICAgfVxuXG4gICAgLmlkcy1pbnB1dC1maWVsZCB7XG4gICAgICBjb2xvcjogdmFyKC0taWRzLWlucHV0LWhlYWRlci1jb2xvci10ZXh0LWRlZmF1bHQpO1xuXG4gICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pZHMtaW5wdXQtaGVhZGVyLWNvbG9yLXRleHQtcGxhY2Vob2xkZXIpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYucmVhZG9ubHktYmFja2dyb3VuZCB7XG4gICAgICAuaWRzLWlucHV0LWZpZWxkOjpwbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pZHMtaW5wdXQtaGVhZGVyLWNvbG9yLXRleHQtcGxhY2Vob2xkZXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEFsdGVybmF0ZS1mb3JtYXR0ZXIgQ29sb3IgVmFyaWFudCAodXNlZCBpbiBJZHNEYXRhR3JpZCBmaWx0ZXIpXG4gICYuY29sb3ItdmFyaWFudC1hbHRlcm5hdGUtZm9ybWF0dGVyIHtcbiAgICAuZmllbGQtY29udGFpbmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtZmlsdGVyLWlucHV0LWNvbG9yLWJhY2tncm91bmQpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWZpbHRlci1pbnB1dC1jb2xvci1ib3JkZXItZGVmYXVsdCk7XG4gICAgICBjb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1maWx0ZXItaW5wdXQtY29sb3ItdGV4dC1kZWZhdWx0KTtcbiAgICB9XG5cbiAgICAmOmhvdmVyLnJlYWRvbmx5LnJlYWRvbmx5LWJhY2tncm91bmQsXG4gICAgJjpob3Zlcjpub3QoLnJlYWRvbmx5KTpub3QoLmRpc2FibGVkKSB7XG4gICAgICAuZmllbGQtY29udGFpbmVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWZpbHRlci1pbnB1dC1jb2xvci1ib3JkZXItaG92ZXIpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgIC5maWVsZC1jb250YWluZXIsXG4gICAgICAmOmhvdmVyLnJlYWRvbmx5LnJlYWRvbmx5LWJhY2tncm91bmQsXG4gICAgICAmOmhvdmVyOm5vdCgucmVhZG9ubHkpOm5vdCguZGlzYWJsZWQpIC5maWVsZC1jb250YWluZXIge1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtZmlsdGVyLWlucHV0LWNvbG9yLWJvcmRlci1mb2N1cyk7XG4gICAgICB9XG5cbiAgICAgIC5pZHMtaW5wdXQtZmllbGQge1xuICAgICAgICBib3gtc2hhZG93OiB2YXIoLS1pZHMtaW5wdXQtY29sb3ItYm9yZGVyLXNoYWRvdyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCxcbiAgICAmLmRpc2FibGVkOmhvdmVyIHtcbiAgICAgIC5maWVsZC1jb250YWluZXIge1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtZmlsdGVyLWlucHV0LWNvbG9yLWJvcmRlci1kaXNhYmxlZCk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWZpbHRlci1pbnB1dC1jb2xvci10ZXh0LWRpc2FibGVkKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnJlYWRvbmx5Om5vdCgucmVhZG9ubHktYmFja2dyb3VuZCk6bm90KC5iZy10cmFuc3BhcmVudCkgLmZpZWxkLWNvbnRhaW5lciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWZpbHRlci1pbnB1dC1jb2xvci1iYWNrZ3JvdW5kLXJlYWRvbmx5KTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1maWx0ZXItaW5wdXQtY29sb3ItYm9yZGVyLXJlYWRvbmx5KTtcbiAgICAgIGNvbG9yOiB2YXIoLS1pZHMtZGF0YS1ncmlkLWZpbHRlci1pbnB1dC1jb2xvci10ZXh0LXJlYWRvbmx5KTtcbiAgICB9XG5cbiAgICAuaWRzLWlucHV0LWZpZWxkOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogdmFyKC0taWRzLWRhdGEtZ3JpZC1maWx0ZXItaW5wdXQtY29sb3ItdGV4dC1wbGFjZWhvbGRlcik7XG4gICAgfVxuICB9XG5cbiAgLy8gQXBwIE1lbnVcbiAgJi5jb2xvci12YXJpYW50LWFwcC1tZW51IHtcbiAgICAuZmllbGQtY29udGFpbmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1pZHMtaW5wdXQtY29sb3ItdGV4dC1hcHAtbWVudSk7XG4gICAgfVxuICB9XG5cbiAgLy8gTGlzdCBCdWlsZGVyXG4gICYuY29sb3ItdmFyaWFudC1saXN0LWJ1aWxkZXIge1xuICAgIC5maWVsZC1jb250YWluZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWNvbG9yLXRyYW5zcGFyZW50KTtcbiAgICAgIGNvbG9yOiB2YXIoLS1pZHMtbGlzdC1idWlsZGVyLWlucHV0LXRleHQtY29sb3IpO1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIE1vZHVsZSBOYXZcbiAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWR1cGxpY2F0ZS1zZWxlY3RvcnMgKi9cbiAgJi5jb2xvci12YXJpYW50LW1vZHVsZS1uYXYge1xuICAgIGNvbG9yOiB2YXIoLS1pZHMtbW9kdWxlLW5hdi1zZWFyY2gtaW5wdXQtdGV4dC1jb2xvcik7XG5cbiAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9ycyAqL1xuICAgIC5maWVsZC1jb250YWluZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWNvbG9yLXRyYW5zcGFyZW50KTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLWNvbG9yLXRyYW5zcGFyZW50KTtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cblxuICAgIC5pZHMtaW5wdXQtZmllbGQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWNvbG9yLXRyYW5zcGFyZW50KTtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pZHMtbW9kdWxlLW5hdi1zZWFyY2gtaW5wdXQtcGxhY2Vob2xkZXItdGV4dC1jb2xvcik7XG4gICAgICB9XG5cbiAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWlkcy1tb2R1bGUtbmF2LXNlYXJjaC1pbnB1dC10ZXh0LWNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmhhcy1jbGVhcmFibGUge1xuICAgICAgLmJ0bi1jbGVhciB7XG4gICAgICAgIG1hcmdpbi1pbmxpbmUtZW5kOiA1cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAuZmllbGQtY29udGFpbmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLW1vZHVsZS1uYXYtc2VhcmNoLWlucHV0LWhvdmVyLWJnLWNvbG9yKTtcbiAgICAgIH1cblxuICAgICAgLmlkcy1pbnB1dC1maWVsZDo6cGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0taWRzLW1vZHVsZS1uYXYtc2VhcmNoLWlucHV0LXBsYWNlaG9sZGVyLXRleHQtY29sb3IpO1xuICAgICAgfVxuXG4gICAgICAuaWRzLWlucHV0LWZpZWxkIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWlkcy1tb2R1bGUtbmF2LWlucHV0LXRleHQtY29sb3IpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6Zm9jdXMtd2l0aGluLFxuICAgICYucmVhZG9ubHk6Zm9jdXMtd2l0aGluLFxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5maWVsZC1jb250YWluZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtbW9kdWxlLW5hdi1pbnB1dC1mb2N1cy1iZy1jb2xvcik7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLW1vZHVsZS1uYXYtaXRlbS1zZWxlY3RlZC10ZXh0LWNvbG9yKTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLmlkcy1pbnB1dC1maWVsZDo6cGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0taWRzLW1vZHVsZS1uYXYtc2VhcmNoLWlucHV0LWZvY3VzZWQtcGxhY2Vob2xkZXItdGV4dC1jb2xvcik7XG4gICAgICB9XG5cbiAgICAgIC5pZHMtaW5wdXQtZmllbGQge1xuICAgICAgICBjb2xvcjogdmFyKC0taWRzLW1vZHVsZS1uYXYtaW5wdXQtdGV4dC1jb2xvcik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbjpob3N0KC50YWItbmFtZS1lZGl0b3IpIHtcbiAgLmlkcy1pbnB1dCB7XG4gICAgbWFyZ2luLWJsb2NrLWVuZDogdW5zZXQ7XG4gIH1cblxuXG4gIC5pZHMtbGFiZWwtdGV4dCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY2Fwcy1sb2NrLWluZGljYXRvciB7XG4gIHBhZGRpbmctaW5saW5lLXN0YXJ0OiB2YXIoLS1pZHMtc3BhY2UteHMpO1xuICBwYWRkaW5nLWlubGluZS1lbmQ6IHZhcigtLWlkcy1zcGFjZS14cyk7XG59XG5cbi5zaG93LWhpZGUtcGFzc3dvcmQge1xuICBwYWRkaW5nLWlubGluZS1lbmQ6IHZhcigtLWlkcy1zcGFjZS0zeHMpO1xufVxuXG4uaXMtdXBwZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmlzLWxvd2VyY2FzZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG59XG5cbi5oaWdobGlnaHQge1xuICBmb250LXdlaWdodDogdmFyKC0taWRzLWZvbnQtd2VpZ2h0LWJvbGQpO1xufVxuXG4uaWRzLWlucHV0LWZpZWxkW3R5cGU9J251bWJlciddOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuLmlkcy1pbnB1dC1maWVsZFt0eXBlPSdudW1iZXInXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vIFJlbW92ZSBTYWZhcmkgY2FwcyBsb2NrIGljb25cbi5pZHMtaW5wdXQtZmllbGQ6Oi13ZWJraXQtY2Fwcy1sb2NrLWluZGljYXRvciB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLy8gQXV0b2NvbXBsZXRlIGRyb3Bkb3duIG1lbnUgc2l6ZXNcbjpob3N0IGlkcy1wb3B1cFt0eXBlPSdkcm9wZG93biddIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogdmFyKC0taWRzLWlucHV0LXdpZHRoLTQwKTtcbn1cblxuLy8gTG9hZGluZyBJbmRpY2F0b3Jcbjpob3N0KDpub3QoW3Nob3ctbG9hZGluZy1pbmRpY2F0b3I9J3RydWUnXSkpIHtcbiAgOjpzbG90dGVkKC5zbG90LWxvYWRpbmctaW5kaWNhdG9yKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG46aG9zdChbc2hvdy1sb2FkaW5nLWluZGljYXRvcj0ndHJ1ZSddKSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gIDo6c2xvdHRlZChpZHMtbG9hZGluZy1pbmRpY2F0b3IpIHtcbiAgICBtYXJnaW4tdG9wOiAzcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogM3B4O1xuICB9XG5cbiAgOjpzbG90dGVkKGlkcy10cmlnZ2VyLWJ1dHRvbltzbG90PSd0cmlnZ2VyLWVuZCddKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIDo6c2xvdHRlZCguc2xvdC1sb2FkaW5nLWluZGljYXRvcikge1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAxMnB4O1xuICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IHZhcigtLWlkcy1zcGFjZS14cyk7XG4gIH1cbn1cblxuOmhvc3QoW3Nob3ctbG9hZGluZy1pbmRpY2F0b3I9J3RydWUnXVtmaWVsZC1oZWlnaHQ9J3hzJ10pIHtcbiAgOjpzbG90dGVkKC5zbG90LWxvYWRpbmctaW5kaWNhdG9yKSB7XG4gICAgbWFyZ2luLWlubGluZS1zdGFydDogdmFyKC0taWRzLXNwYWNlLTJ4cyk7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6IHZhcigtLWlkcy1zcGFjZS0yeHMpO1xuICB9XG59XG5cbjpob3N0KFtzaG93LWxvYWRpbmctaW5kaWNhdG9yPSd0cnVlJ11bZmllbGQtaGVpZ2h0PSdzbSddKSB7XG4gIDo6c2xvdHRlZCguc2xvdC1sb2FkaW5nLWluZGljYXRvcikge1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiB2YXIoLS1pZHMtc3BhY2UteHMpO1xuICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IHZhcigtLWlkcy1zcGFjZS0yeHMpO1xuICB9XG59XG5cbjo6c2xvdHRlZCguYXVkaWJsZSkge1xuICBAaW5jbHVkZSBtaXhpbnMuYXVkaWJsZSgpO1xufVxuXG46aG9zdChbZmllbGQtaW5kaWNhdG9yXVtyZWFkb25seV0pLFxuOmhvc3QoW2ZpZWxkLWluZGljYXRvcl1bZGlzYWJsZWRdKSB7XG4gIC0taWRzLWZpZWxkLWluZGljYXRvci1pbmZvLXZpc2liaWxpdHk6IG5vbmU7XG59XG4iLCIvLyBHZW5lcmFsIEVycm9yLVRyYWNrZXIgaWNvbiBwbGFjZW1lbnRcbi5pY29uLWVycm9yLXRyYWNrZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiB2YXIoLS1pZHMtaW5wdXQtZXJyb3ItdHJhY2tlci1jb2xvci1iYWNrZ3JvdW5kLCB2YXIoLS1pZHMtY29sb3ItcmVkLTYwKSk7XG4gIHRvcDogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgJltkaXI9J3J0bCddIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgdG9wOiAwO1xuICB9XG59XG4iLCJAdXNlICcuLi9pZHMtaW5wdXQvaWRzLWlucHV0JyBhcyAqO1xuQHVzZSAnLi4vLi4vdGhlbWVzL21peGlucy9pZHMtZXJyb3ItdHJhY2tlci1taXhpbicgYXMgKjtcbkB1c2UgJy4uLy4uL3RoZW1lcy9taXhpbnMvaWRzLWxhYmVsLXBvc2l0aW9uLW1peGluLnNjc3MnIGFzIGxhYmVsLXBvc2l0aW9uO1xuXG4vLyBSZXNldCBpbmhlcml0ZWQgaWRzLWlucHV0IGhvc3Qgd2lkdGgg4oCUIHNpemluZyBoYW5kbGVkIGJ5IGZpZWxkLWNvbnRhaW5lclxuOmhvc3QoW3NpemU9J3hzJ10pLFxuOmhvc3QoW3NpemU9J3NtJ10pLFxuOmhvc3QoW3NpemU9J21tJ10pLFxuOmhvc3QoW3NpemU9J21kJ10pLFxuOmhvc3QoW3NpemU9J2xnJ10pIHtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi8vIEFiaWxpdHkgdG8gY2VudGVyIGxhYmVsXG46aG9zdChbcGFydD0ndHJpZ2dlci1maWVsZCddKSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cblxuLy8gRGF0ZSBwaWNrZXIgZmlsdGVyIGluIGRhdGFncmlkXG46aG9zdChbZGF0YS1maWx0ZXItdHlwZV0pIHtcbiAgLS1pZHMtdHJpZ2dlci1maWVsZC1taW4td2lkdGg6IDQwcHg7XG5cbiAgbWFyZ2luLWlubGluZS1lbmQ6IDA7XG5cbiAgOjpzbG90dGVkKGlkcy10cmlnZ2VyLWJ1dHRvbikge1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiA2cHg7XG4gIH1cbn1cblxuLmlkcy10cmlnZ2VyLWZpZWxkIHtcbiAganVzdGlmeS1jb250ZW50OiBpbmhlcml0O1xuXG4gICYuY29tcGFjdCxcbiAgJi5maWVsZC1oZWlnaHQteHMge1xuICAgIC5maWVsZC1jb250YWluZXIge1xuICAgICAgaGVpZ2h0OiBjYWxjKHZhcigtLWlkcy1pbnB1dC1oZWlnaHQtMTApIC0gMnB4KTtcbiAgICB9XG4gIH1cblxuICAuZmllbGQtY29udGFpbmVyLnNxdWFyZSxcbiAgLmZpbHRlci1jb250YWluZXIuc3F1YXJlIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG5cbiAgLmZpZWxkLWNvbnRhaW5lciB7XG4gICAgbWluLXdpZHRoOiB2YXIoLS1pZHMtdHJpZ2dlci1maWVsZC1taW4td2lkdGgpO1xuXG4gICAgLyogRW5zdXJlIGRpcnR5IHRyYWNrZXIgaWNvbiBzdGF5cyB2aXNpYmxlICovXG4gICAgLmljb24tZGlydHkge1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgIC8qIEVuc3VyZSBlcnJvciB0cmFja2VyIGljb24gc3RheXMgdmlzaWJsZSAqL1xuICAgIC5pY29uLWVycm9yLXRyYWNrZXIge1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgfVxufVxuXG46OnNsb3R0ZWQoKltzbG90PSd0cmlnZ2VyLWVuZCddOm5vdCguc3BpbmJveC1idXR0b24pKSB7XG4gIG1hcmdpbi1pbmxpbmUtZW5kOiA0cHg7XG4gIHdpZHRoOiAyNHB4O1xufVxuXG46OnNsb3R0ZWQoKltzbG90PSd0cmlnZ2VyLWVuZCddLnhzKSB7XG4gIG1hcmdpbi1pbmxpbmUtZW5kOiA0cHg7XG4gIHdpZHRoOiAyNHB4O1xufVxuXG46OnNsb3R0ZWQoKltzbG90PSd0cmlnZ2VyLWVuZCddLm1kKSB7XG4gIG1hcmdpbi1pbmxpbmUtZW5kOiA0cHg7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIG1hcmdpbi10b3A6IDJweDtcbiAgbWFyZ2luLWJvdHRvbTogMnB4O1xufVxuXG46OnNsb3R0ZWQoKltzbG90PSd0cmlnZ2VyLWVuZCddW2NvbXBhY3RdKSB7XG4gIG1hcmdpbi1pbmxpbmUtZW5kOiA2cHg7XG4gIHdpZHRoOiAyNHB4O1xufVxuXG4uaWRzLWlucHV0LmNvbG9yLXZhcmlhbnQtYWx0ZXJuYXRlLWZvcm1hdHRlciB7XG4gICY6Zm9jdXMtd2l0aGluIHtcbiAgICAuZmllbGQtY29udGFpbmVyLmlzLWZvY3VzZWQge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtY29sb3ItYm9yZGVyLWZvY3VzKTtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLWlkcy1hY2NvcmRpb24taGVhZGVyLXNoYWRvdy1mb2N1cyk7XG4gICAgfVxuXG4gICAgLmZpZWxkLWNvbnRhaW5lci5oaWRlLWZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1kYXRhLWdyaWQtZmlsdGVyLWlucHV0LWNvbG9yLWJhY2tncm91bmQtcmVhZG9ubHkpO1xuICAgIH1cblxuICAgIC5pZHMtaW5wdXQtZmllbGQge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLmZpZWxkLWNvbnRhaW5lci5jb2xsYXBzZWQgLmJ0bi1jbGVhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbjpob3N0KDpub3QoW2NvbGxhcHNlZF0pKSB7XG4gIDo6c2xvdHRlZChpZHMtdHJpZ2dlci1idXR0b24uZXhwYW5kLWJ1dHRvbikge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuOmhvc3QoW2NvbGxhcHNlZF0pIHtcbiAgOjpzbG90dGVkKGlkcy10cmlnZ2VyLWJ1dHRvbi5leHBhbmQtYnV0dG9uKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogdmFyKC0taWRzLXRyaWdnZXItYnV0dG9uLW9mZnNldC10b3AsIDApO1xuICB9XG59XG5cbjpob3N0KFtjb21ib2JveF0pIHtcbiAgLmZpZWxkLWNvbnRhaW5lciBpbnB1dCB7XG4gICAgYm9yZGVyLWlubGluZS1lbmQ6IDFweCBzb2xpZCB2YXIoLS1pZHMtdHJpZ2dlci1maWVsZC1jb21ib2JveC1ib3JkZXIpO1xuICB9XG5cbiAgOjpzbG90dGVkKGlkcy10cmlnZ2VyLWJ1dHRvbikge1xuICAgIHdpZHRoOiAzMnB4O1xuICB9XG59XG4iXX0= */