: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;margin-block-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;margin-block-end:0}}@media(min-width: 320px){:host([label-position=inline-start]) .ids-input,:host([label-position=inline-start]) .ids-textarea{flex-wrap:wrap;gap:var(--ids-label-position-inline-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));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}@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}}: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{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-checkbox label{text-align:end;padding-inline-end:0}@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=end][label-state=collapsed]) .ids-input label,:host([label-position=inline-start][label-alignment=end][label-state=collapsed]) .ids-input .ids-label-text,:host([label-position=inline-start][label-alignment=end][label-state=collapsed]) .ids-textarea label,:host([label-position=inline-start][label-alignment=end][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,:host(.in-flex-item[label-position=inline-start]) .ids-radio-group.label-inline 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{margin-inline-end:5px;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]:not([label-break=break])) .ids-input label,:host([label-position=inline-start][label-wrap=ellipsis-no-stretch]:not([label-break=break])) .ids-textarea label,:host([label-position=inline-start][label-wrap=wrap-no-stretch]:not([label-break=break])) .ids-input label,:host([label-position=inline-start][label-wrap=wrap-no-stretch]:not([label-break=break])) .ids-textarea label{align-self:var(--ids-label-align-y, center)}:host([label-position=inline-start][label-wrap=ellipsis-no-stretch]:not([label-break=break])) .ids-input .ids-label-text,:host([label-position=inline-start][label-wrap=ellipsis-no-stretch]:not([label-break=break])) .ids-textarea .ids-label-text,:host([label-position=inline-start][label-wrap=wrap-no-stretch]:not([label-break=break])) .ids-input .ids-label-text,:host([label-position=inline-start][label-wrap=wrap-no-stretch]:not([label-break=break])) .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);z-index:1}: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-start]) .ids-radio-group.label-inline.horizontal slot,:host([label-position=inline-end]) .ids-radio-group.label-inline.horizontal slot{flex-direction:row;flex-wrap:wrap}: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}@media(max-width: 1024px){:host([full-width-mobile]){width:100%}:host([full-width-mobile]) ids-trigger-field{display:block;width:100%}}.data-grid-container{overflow:hidden;position:relative;max-height:400px}@media(max-width: 767px){ids-layout-grid{--min-col-width: 0 !important}.data-grid-container.has-search{max-height:calc(100dvh - 184px)}.data-grid-container{max-height:100%;height:100%}.data-grid-parent-container{height:100% !important}}.data-grid-parent-container{overflow:auto}ids-trigger-field::part(clearable-button){margin-inline-end:-9px}ids-trigger-field[compact]::part(clearable-button){margin-inline-end:-2px}.result-count{font-size:var(--ids-lookup-result-count-font-size);margin:var(--ids-lookup-result-count-margin);vertical-align:middle}ids-trigger-button[slot=trigger-end]{margin-inline-start:4px}
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2J1aWxkcy9pbmZvci1kZXNpZ24vZW50ZXJwcmlzZS13Yy9zcmMvY29tcG9uZW50cy9pZHMtbG9va3VwIiwic291cmNlcyI6WyIuLi8uLi90aGVtZXMvbWl4aW5zL2lkcy1sYWJlbC1wb3NpdGlvbi1taXhpbi5zY3NzIiwiaWRzLWxvb2t1cC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtFLG1HQUVFLGFBQ0EsNkNBR0EsK0dBQ0UsNkJBQ0EsNkNBQ0EscUJBQ0Esc0JBQ0EsY0FJRiwySUFDRSxXQUNBLHdDQUVBLHlCQUpGLDJJQUtJLHVCQUtGLHNCQURGLG1JQUVJLG9CQUNBLG9CQUdGLG9DQU5GLG1JQU9JLG9CQUNBLG9CQUlKLHlCQXBDRixtR0FxQ0ksZUFDQSw4Q0FFQSwrR0FDRSxjQUNBLG9CQUNBLFFBR0YscUlBQ0UsUUFHRiwrSUFDRSxRQUNBLGNBQ0EsWUFHRiwySUFDRSxjQUNBLGVBQ0EsUUFDQSxvREFNQSx3REFLTixtREFDRSwrQkFHRix5QkFDRSxtREFDRSxhQUNBLGVBQ0EsNkNBR0EseURBQ0UsYUFDQSxtQkFDQSxXQUNBLDZDQUNBLHNCQUNBLHdCQUdGLG1FQUNFLDZCQUNBLGNBR0YscUVBQ0Usa0JBQ0Esb0JBR0Ysb0VBQ0UsT0FHRix1RUFDRSxXQUNBLHVFQUNBLHdDQUlBLDZGQUNFLDJCQU1SLDhCQUNFLG1EQUNFLGFBQ0EsZUFDQSw2Q0FHQSx5REFDRSxhQUNBLG1CQUNBLFdBQ0EsNkNBQ0Esc0JBQ0Esd0JBR0YsbUVBQ0UsNkJBQ0EsY0FHRixxRUFDRSxrQkFDQSxvQkFHRixvRUFDRSxPQUdGLHVFQUNFLFdBQ0EsdUVBQ0EseUNBUU4sdUVBQ0Usc0JBRUEsdUJBSEYsdUVBSUksYUFDQSxlQUNBLDZDQUVBLDZFQUNFLGFBQ0EsbUJBQ0EsV0FDQSw2Q0FDQSx1REFDQSxzQkFDQSx3QkFHRix1RkFDRSw2QkFDQSxjQUdGLHlGQUNFLGtCQUNBLG9CQUdGLHdGQUNFLE9BR0YsMkZBQ0UsV0FDQSx1RUFDQSx5Q0FPTiw2SUFFRSxtQ0FFQSxzVUFFRSxvQkFDQSw2Q0FDQSx5QkFDQSxlQUVBLDRCQVBGLHNVQVFJLDRCQVJKLHNVQVdFLGtCQU9BLHVCQWxCRixzVUFtQkksMkJBQ0EsaUJBQ0Esa0JBR0YsNEJBeEJGLHNVQXlCSSwyQkFDQSxpQkFDQSxrQkFJQSxzWUFDRSxvQkFDQSxrQkFDQSxpQkFDQSxzQkFDQSxRQUdBLDRCQVJGLHNZQVNJLGlCQUNBLGlCQUNBLDBCQUlGLHVCQWZGLHNZQWdCSSxpQkFDQSxpQkFDQSwwQkFPViwyRUFDRSxPQUlBLDhFQUNFLGVBQ0EscUJBRUEsdUJBSkYsOEVBS0ksa0JBR0YsNEJBUkYsOEVBU0ksa0JBSUEsbUhBQ0Usb0JBQ0Esa0JBQ0EsaUJBQ0EsV0FDQSxTQU9SLHNCQUVJLDRFQUNFLG9CQUNBLG1CQUNBLHlCQUNBLGVBRUEsMkJBTkYsNEVBT0ksNkJBR0YseUNBVkYsNEVBV0ksNEJBUU4scUdBQ0Usb0JBQ0EsbUJBQ0EseUJBSUosMkJBRUkscUdBQ0UsNEJBU0osa2FBRUUsYUFNSiwrUkFFRSwwQ0FPRixnY0FFRSxhQUNBLGlCQUVBLHdkQUNFLGNBR0Ysb2dCQUNFLFlBQ0EsY0FJRixnaEJBQ0UsV0FDQSxzQkFRSixrWEFFRSxhQUNBLE1BQ0EsMENBQ0EsMENBRUEsMFlBQ0UsY0FDQSxXQUdGLHNiQUNFLGNBQ0EsV0FDQSxZQUdGLGtjQUNFLGlCQUNBLFdBQ0EsV0FDQSxzQkFDQSx3Q0FHRixrZUFDRSxjQUNBLHNCQUdGLHcvQ0FDRSwwQ0FNSixtRUFDRSxvREFJQSxnR0FDRSxtQkFDQSxvQkFPQSx1TUFDRSxhQU9OLHNCQUNFLGdGQUNFLGFBQ0EsK0NBRUEsMEdBQ0UsNkJBQ0EsY0FHRixxRkFDRSxhQUNBLHNCQUNBLGVBS04sMkJBQ0UsZ0ZBQ0UsYUFDQSwrQ0FFQSwwR0FDRSw2QkFDQSxjQUdGLHFGQUNFLGFBQ0Esc0JBQ0EsZUFLTixzQkFDRSx1SkFFRSxjQUdGLDZFQUNFLE9BSUosMkJBQ0UsdU9BR0UsZ0JBTUosdUJBQ0UsNkdBQ0UsY0FDQSxNQUVBLG1IQUNFLGdCQUNBLDhDQU9OLHNCQUNFLGdGQUNFLGFBQ0EsK0NBRUEsMEdBQ0UsNkJBQ0EsY0FHRixxRkFDRSxhQUNBLHNCQUNBLGVBS0wsMkJBQ0MsZ0ZBQ0UsYUFDQSwrQ0FFQSwwR0FDRSw2QkFDQSxjQUdGLHFGQUNFLGFBQ0Esc0JBQ0EsZUFPTix5SUFFRSxhQUNBLHNCQUNBLG9CQUVBLHFKQUNFLFdBQ0EsY0FHRiwyS0FDRSxZQUNBLGNBSUYsaUxBQ0UsV0FDQSxzQkFRSiw4SUFDRSxhQVFBLG9jQUNFLHNCQUNBLGlCQUVBLHdlQUNFLHFCQUVBLG9nQkFDRSxzQkFLTixvZkFDRSx3REFRSixtSkFFRSxhQUVBLCtKQUNFLGNBQ0EsUUFHRixxTEFDRSxZQUNBLGNBQ0EsUUFJSix3RUFDRSwrQkFLRixzQkFDRSw4RUFDRSxhQUNBLCtDQUVBLHdHQUNFLDZCQUNBLG9CQUNBLGNBQ0EsUUFHRixtRkFDRSxhQUNBLHNCQUNBLGNBQ0EsU0FPTixxSUFFRSxhQUNBLHNCQUNBLG9CQUVBLGlKQUNFLFdBQ0EsY0FDQSxRQUdGLHVLQUNFLFlBQ0EsY0FDQSxRQUlGLDZLQUNFLHNCQUNBLFFBSUosaUVBQ0UsK0JBSUoscUNBQ0UsdURBU0UsMGJBQ0UsNENBR0Ysa2VBQ0UsaUJBTU4sc0JBRUksb0dBQ0UsK0NBRUEsb0hBQ0UsNENBT1Isc0JBRUksdURBQ0UsYUFDQSxlQUNBLCtDQUVBLDZEQUNFLDZCQUNBLDZDQUNBLHVEQUNBLHNCQUlGLHdFQUNFLGtCQUNBLDBDQUNBLFVBSUYsMkVBQ0UsV0FDQSx5Q0FRTixzQkFFSSxrRUFDRSw2Q0FHRixnRkFDRSw2QkFNUix5QkFFSSw0RkFDRSxjQUdGLGdGQUNFLHNCQVdOLG9JQUVFLGFBQ0EsaURBQ0EsK0JBRUEsd0xBQ0UsaUNBQ0EsMkNBR0YsOElBQ0UsYUFDQSxzQkFRRixvS0FDRSxtQkFDQSxlQUtGLDJGQUNFLG9CQUNBLFFBR0Ysc0VBQ0UsUUFLSiw2RUFDRSxhQUNBLCtDQUNBLCtCQUNBLHNCQUVBLHVHQUNFLGlDQUNBLFFBR0Ysa0ZBQ0UsYUFDQSxzQkFDQSxRQUtKLHNCQUNFLGlEQUNFLGFBQ0EsZUFDQSwrQ0FFQSx1REFDRSw2QkFDQSw2Q0FDQSx1REFDQSx1QkFDQSxzQkFHRiw4RUFDRSxXQUNBLFlBSUosOEVBQ0UscUJBQ0EsUUFJQSx1RkFDRSxXQUNBLGVBTU4sc0JBQ0UscURBQ0UsYUFDQSxtQkFDQSxRQUNBLCtDQUVBLDREQUNFLDZCQUNBLDZDQUNBLHNCQUNBLG1CQUNBLG1CQUdGLDZIQUVFLGFBQ0EsOENBTU4seUJBRUksMEpBR0UsYUFDQSxzQkFDQSxrQkFFQSw0S0FDRSxXQUNBLGlCQUNBLGlCQUdGLHNOQUNFLHNCQU1KLG9KQUdFLGFBQ0Esc0JBQ0Esa0JBQ0EsK0JBRUEsc0tBQ0UsV0FDQSxpQkFDQSxpQkFHRixnTkFDRSx1QkFNUiwrQkFDRSxxQkFFQSxrQkFHRiwyQ0FDRSxrQkFDQSxjQUdGLDhCQUVJLDBKQUdFLGFBQ0Esc0JBQ0Esa0JBRUEsNEtBQ0UsV0FDQSxpQkFDQSxpQkFHRixzTkFDRSxzQkFNSixvSkFHRSxhQUNBLHNCQUNBLGtCQUNBLCtCQUVBLHNLQUNFLFdBQ0EsaUJBQ0EsaUJBR0YsZ05BQ0UsdUJBT04seUJBQ0Usb0ZBQ0UsY0FLTiw4QkFFSSxvRkFDRSxjQWNGLCtXQUVFLDZCQVNKLDRNQUNFLGFBTUYsc01BQ0Usa0JDdmdDRiwwQkFERiwyQkFFSSxXQUVBLDZDQUNFLGNBQ0EsWUFNTixxQkFDRSxnQkFDQSxrQkFDQSxpQkFHRix5QkFDRSxnQkFFRSw4QkFHRixnQ0FDRSxnQ0FHRixxQkFDRSxnQkFDQSxZQUdGLDRCQUNFLHdCQUlKLDRCQUNFLGNBR0YsMENBQ0UsdUJBR0YsbURBQ0UsdUJBR0YsY0FDRSxtREFDQSw2Q0FDQSxzQkFHRixxQ0FDRSIsInNvdXJjZXNDb250ZW50IjpbIi8vIExhYmVsIHBvc2l0aW9uIHN0eWxlc1xuQHVzZSAnLi4vLi4vdGhlbWVzL21peGlucy9pZHMtY29yZS1taXhpbnMnIGFzICo7XG5cbi8vIExlZnQgYWxpZ25lZCBhbmQgUmlnaHQgQWxpZ25lZCBMYWJlbHNcbjpob3N0KFtsYWJlbC1wb3NpdGlvbj0naW5saW5lLXN0YXJ0J10pIHtcbiAgLmlkcy1pbnB1dCxcbiAgLmlkcy10ZXh0YXJlYSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogdmFyKC0taWRzLWxhYmVsLWFsaWduLXksIGNlbnRlcik7XG5cbiAgICAvLyBBZGp1c3QgdGhlIGxhYmVsXG4gICAgbGFiZWwge1xuICAgICAgd2lkdGg6IHZhcigtLWlkcy1sYWJlbC13aWR0aCk7XG4gICAgICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1pZHMtbGFiZWwtcGFkZGluZy1ibG9jayk7XG4gICAgICBwYWRkaW5nLWlubGluZS1lbmQ6IDA7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgfVxuXG4gICAgLy8gVmFsaWRhdGlvbiBvbiB0aGUgYm90dG9tXG4gICAgLnZhbGlkYXRpb24tbWVzc2FnZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0taWRzLXNwYWNlLTJ4cyk7XG5cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC1tZCkge1xuICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5pZHMtbGFiZWwtdGV4dCB7XG4gICAgICBAbWVkaWEgKHdpZHRoID4gJGJyZWFrcG9pbnQteHMpIHtcbiAgICAgICAgbWFyZ2luLWlubGluZS1lbmQ6IDA7XG4gICAgICAgIG1hcmdpbi1ibG9jay1lbmQ6IDA7XG4gICAgICB9XG5cbiAgICAgIEBjb250YWluZXIgKHdpZHRoID4gJGJyZWFrcG9pbnQteHMpIHtcbiAgICAgICAgbWFyZ2luLWlubGluZS1lbmQ6IDA7XG4gICAgICAgIG1hcmdpbi1ibG9jay1lbmQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXhzKSB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBnYXA6IHZhcigtLWlkcy1sYWJlbC1wb3NpdGlvbi1pbmxpbmUtZ2FwLCA4cHgpO1xuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB1bnNldDtcbiAgICAgICAgb3JkZXI6IDE7XG4gICAgICB9XG5cbiAgICAgIC5maWVsZC1jb250YWluZXIge1xuICAgICAgICBvcmRlcjogMjtcbiAgICAgIH1cblxuICAgICAgLnRleHRhcmVhLWZpZWxkLWdyb3VwIHtcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICB9XG5cbiAgICAgIC52YWxpZGF0aW9uLW1lc3NhZ2Uge1xuICAgICAgICBmbGV4OiAxIDEgMTAwJTtcbiAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICBvcmRlcjogMztcbiAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiBjYWxjKDBweCAtIHZhcigtLWlkcy1zcGFjZS0yeHMpKTtcblxuICAgICAgICAvLyBMYWJlbCBhbmQgZmllbGQgc2l0IHNpZGUtYnktc2lkZSBhdCB0aGlzIGJyZWFrcG9pbnQsIHNvIHRoZSB3cmFwcGVkXG4gICAgICAgIC8vIG1lc3NhZ2UgYmVsb3cgbXVzdCBpbmRlbnQgdG8gdGhlIGZpZWxkIHN0YXJ0LiBBcHBsaWVkIHVuY29uZGl0aW9uYWxseVxuICAgICAgICAvLyAobm90IG9ubHkgdmlhIHRoZSBKUyBgLndyYXBwZWRgIGNsYXNzKSBzbyBhbGlnbm1lbnQgaXMgZGV0ZXJtaW5pc3RpY1xuICAgICAgICAvLyBhbmQgbm90IHN1YmplY3QgdG8gUmVzaXplT2JzZXJ2ZXIgdGltaW5nLlxuICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiBjYWxjKHZhcigtLWlkcy1sYWJlbC13aWR0aCkgKyA2cHgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pZHMtY2hlY2tib3gge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLWlkcy1zcGFjZS0wMCk7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogI3skYnJlYWtwb2ludC14c30pIHtcbiAgICAuaWRzLWNoZWNrYm94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogdmFyKC0taWRzLWxhYmVsLWFsaWduLXksIGNlbnRlcik7XG5cbiAgICAgIC8vIEFkanVzdCB0aGUgbGFiZWxcbiAgICAgIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLWlkcy1sYWJlbC1wYWRkaW5nLWJsb2NrKTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgZ2FwOiB2YXIoLS1pZHMtc3BhY2UteHMpO1xuICAgICAgfVxuXG4gICAgICAubGFiZWwtY2hlY2tib3gge1xuICAgICAgICB3aWR0aDogdmFyKC0taWRzLWxhYmVsLXdpZHRoKTtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICB9XG5cbiAgICAgIC5jaGVja2JveC13cmFwcGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIH1cblxuICAgICAgLmZpZWxkLWNvbnRhaW5lciB7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICB9XG5cbiAgICAgIC52YWxpZGF0aW9uLW1lc3NhZ2Uge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogY2FsYyh2YXIoLS1pZHMtbGFiZWwtd2lkdGgpICsgdmFyKC0taWRzLXNwYWNlLXhzKSk7XG4gICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0taWRzLXNwYWNlLTJ4cyk7XG4gICAgICB9XG5cbiAgICAgICYubGFiZWwtc3RhdGUtY29sbGFwc2VkIHtcbiAgICAgICAgLnZhbGlkYXRpb24tbWVzc2FnZSB7XG4gICAgICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogdW5zZXQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAY29udGFpbmVyIChtaW4td2lkdGg6ICN7JGJyZWFrcG9pbnQteHN9KSB7XG4gICAgLmlkcy1jaGVja2JveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgYWxpZ24taXRlbXM6IHZhcigtLWlkcy1sYWJlbC1hbGlnbi15LCBjZW50ZXIpO1xuXG4gICAgICAvLyBBZGp1c3QgdGhlIGxhYmVsXG4gICAgICBsYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1pZHMtbGFiZWwtcGFkZGluZy1ibG9jayk7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGdhcDogdmFyKC0taWRzLXNwYWNlLXhzKTtcbiAgICAgIH1cblxuICAgICAgLmxhYmVsLWNoZWNrYm94IHtcbiAgICAgICAgd2lkdGg6IHZhcigtLWlkcy1sYWJlbC13aWR0aCk7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgfVxuXG4gICAgICAuY2hlY2tib3gtd3JhcHBlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICB9XG5cbiAgICAgIC5maWVsZC1jb250YWluZXIge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgfVxuXG4gICAgICAudmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IGNhbGModmFyKC0taWRzLWxhYmVsLXdpZHRoKSArIHZhcigtLWlkcy1zcGFjZS14cykpO1xuICAgICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IHZhcigtLWlkcy1zcGFjZS0yeHMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBIb3Jpem9udGFsIGFsaWduZWQ6IHVzZSB2aWV3cG9ydCBtZWRpYSBxdWVyeSBpbnN0ZWFkIG9mIGNvbnRhaW5lciBxdWVyeVxuOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtc3RhcnQnXVtob3Jpem9udGFsLWFsaWduZWRdKSB7XG4gIC5pZHMtY2hlY2tib3gge1xuICAgIGNvbnRhaW5lci10eXBlOiBub3JtYWw7XG5cbiAgICBAbWVkaWEgKHdpZHRoIDw9ICRicmVha3BvaW50LXhzKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgYWxpZ24taXRlbXM6IHZhcigtLWlkcy1sYWJlbC1hbGlnbi15LCBjZW50ZXIpO1xuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1pZHMtbGFiZWwtcGFkZGluZy1ibG9jayk7XG4gICAgICAgIHBhZGRpbmctaW5saW5lLWVuZDogdmFyKC0taWRzLWxhYmVsLXBhZGRpbmctaW5saW5lLWVuZCk7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGdhcDogdmFyKC0taWRzLXNwYWNlLXhzKTtcbiAgICAgIH1cblxuICAgICAgLmxhYmVsLWNoZWNrYm94IHtcbiAgICAgICAgd2lkdGg6IHZhcigtLWlkcy1sYWJlbC13aWR0aCk7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgfVxuXG4gICAgICAuY2hlY2tib3gtd3JhcHBlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICB9XG5cbiAgICAgIC5maWVsZC1jb250YWluZXIge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgfVxuXG4gICAgICAudmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IGNhbGModmFyKC0taWRzLWxhYmVsLXdpZHRoKSArIHZhcigtLWlkcy1zcGFjZS14cykpO1xuICAgICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IHZhcigtLWlkcy1zcGFjZS0yeHMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG46aG9zdChbbGFiZWwtcG9zaXRpb249J2lubGluZS1zdGFydCddW2xhYmVsLWFsaWdubWVudD1cImVuZFwiXSkge1xuICAuaWRzLWlucHV0LFxuICAuaWRzLXRleHRhcmVhIHtcbiAgICBnYXA6IHZhcigtLWlkcy1sYWJlbC1hbGlnbm1lbnQtZ2FwKTtcblxuICAgIGxhYmVsLFxuICAgIC5pZHMtbGFiZWwtdGV4dCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiB2YXIoLS1pZHMtbGFiZWwtYWxpZ24teSwgY2VudGVyKTtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICB0ZXh0LWFsaWduOiBlbmQ7XG5cbiAgICAgIEBjb250YWluZXIgKHdpZHRoIDw9ICN7JGJyZWFrcG9pbnQteHN9KSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIH1cblxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAvLyBBdC91bmRlciB0aGUgeHMgYnJlYWtwb2ludCB0aGUgbGFiZWwgc3RhY2tzIG9uIHRvcCBvZiB0aGUgZmllbGQsIHNvIHRoZVxuICAgICAgLy8gZW5kIGFsaWdubWVudCAocmlnaHQtYWxpZ25lZCwgZnVsbCBsYWJlbCB3aWR0aCkgbXVzdCByZXNldCB0byBzdGFydC5cbiAgICAgIC8vIEtlcHQgaW4gc3luYyB3aXRoIHRoZSBzdGFja2luZyBydWxlIGJlbG93IChgbWF4LXdpZHRoOiAkYnJlYWtwb2ludC14c2ApXG4gICAgICAvLyBzbyB0aGUgYm91bmRhcnkgYXQgZXhhY3RseSAkYnJlYWtwb2ludC14cyBkb2Vzbid0IGxlYXZlIHRoZSBsYWJlbFxuICAgICAgLy8gcmlnaHQtYWxpZ25lZCBhbmQgb3ZlcmZsb3dpbmcgdGhlIGZpZWxkLlxuICAgICAgQG1lZGlhICh3aWR0aCA8PSAkYnJlYWtwb2ludC14cykge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgICAgICBhbGlnbi1zZWxmOiBzdGFydDtcbiAgICAgIH1cblxuICAgICAgQGNvbnRhaW5lciAod2lkdGggPD0gI3skYnJlYWtwb2ludC14c30pIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgICAgICAgYWxpZ24tc2VsZjogc3RhcnQ7XG4gICAgICB9XG5cbiAgICAgICYucmVxdWlyZWQge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgbWFyZ2luLWlubGluZS1lbmQ6IDA7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICAgICAgICAgIGluc2V0LWlubGluZS1lbmQ6IC01cHg7XG4gICAgICAgICAgdG9wOiA3cHg7XG5cbiAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICAgICAgICBAY29udGFpbmVyICh3aWR0aCA8PSAjeyRicmVha3BvaW50LXhzfSkge1xuICAgICAgICAgICAgcG9zaXRpb246IGluaXRpYWw7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgICAgICAgIGluc2V0LWlubGluZS1lbmQ6IGluaXRpYWw7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgICAgICAgQG1lZGlhICh3aWR0aCA8PSAkYnJlYWtwb2ludC14cykge1xuICAgICAgICAgICAgcG9zaXRpb246IGluaXRpYWw7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgICAgICAgIGluc2V0LWlubGluZS1lbmQ6IGluaXRpYWw7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZpZWxkLWNvbnRhaW5lciB7XG4gICAgZmxleDogMTtcbiAgfVxuXG4gIC5pZHMtY2hlY2tib3gge1xuICAgIGxhYmVsIHtcbiAgICAgIHRleHQtYWxpZ246IGVuZDtcbiAgICAgIHBhZGRpbmctaW5saW5lLWVuZDogMDtcblxuICAgICAgQG1lZGlhICh3aWR0aCA8PSAkYnJlYWtwb2ludC14cykge1xuICAgICAgICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgICAgIH1cblxuICAgICAgQGNvbnRhaW5lciAod2lkdGggPD0gI3skYnJlYWtwb2ludC14c30pIHtcbiAgICAgICAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gICAgICB9XG5cbiAgICAgICYucmVxdWlyZWQgLmxhYmVsLWNoZWNrYm94IHNwYW4ge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgbWFyZ2luLWlubGluZS1lbmQ6IDA7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICAgICAgICAgIHJpZ2h0OiAtNXB4O1xuICAgICAgICAgIHRvcDogLTVweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFN3aXRjaCBsYWJlbC1hbGlnbm1lbnQgZW5kXG4gIEBtZWRpYSAod2lkdGggPiAkYnJlYWtwb2ludC1zbSkge1xuICAgIC5pZHMtc3dpdGNoIHtcbiAgICAgIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgIHRleHQtYWxpZ246IGVuZDtcblxuICAgICAgICBAY29udGFpbmVyICh3aWR0aCA8ICN7JGJyZWFrcG9pbnQteHN9KSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhICh3aWR0aCA8ICRicmVha3BvaW50LXhzKSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmFkaW8gZ3JvdXAgbGFiZWwtYWxpZ25tZW50IGVuZFxuICAuaWRzLXJhZGlvLWdyb3VwIHtcbiAgICBpZHMtdGV4dC5ncm91cC1sYWJlbC10ZXh0IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgfVxuICB9XG5cbiAgQGNvbnRhaW5lciAod2lkdGggPCAjeyRicmVha3BvaW50LXhzfSkge1xuICAgIC5pZHMtcmFkaW8tZ3JvdXAge1xuICAgICAgaWRzLXRleHQuZ3JvdXAtbGFiZWwtdGV4dCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtc3RhcnQnXVtsYWJlbC1hbGlnbm1lbnQ9XCJlbmRcIl1bbGFiZWwtc3RhdGU9J2NvbGxhcHNlZCddKSB7XG4gIC5pZHMtaW5wdXQsXG4gIC5pZHMtdGV4dGFyZWEge1xuICAgIGxhYmVsLFxuICAgIC5pZHMtbGFiZWwtdGV4dCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG46aG9zdChbbGFiZWwtcG9zaXRpb249J2lubGluZS1zdGFydCddW2xhYmVsLWFsaWdubWVudD1cImVuZFwiXVtsYWJlbC1icmVhaz0nc2hyaW5rLXZhbHVlJ11bdmFsaWRhdGlvbi1tZXNzYWdlLWNvdW50XTpub3QoW2Vycm9yLXRyYWNrZXJdKSkge1xuICAuaWRzLWlucHV0LFxuICAuaWRzLXRleHRhcmVhIHtcbiAgICBjb2x1bW4tZ2FwOiB2YXIoLS1pZHMtbGFiZWwtYWxpZ25tZW50LWdhcCk7XG4gIH1cbn1cblxuLy8gTGFiZWwgYnJlYWsgYmVoYXZpb3IgZm9yIGlubGluZS1zdGFydCBwb3NpdGlvblxuOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtc3RhcnQnXVtsYWJlbC1icmVhaz0nc2hyaW5rLXZhbHVlJ106bm90KFt2YWxpZGF0aW9uLW1lc3NhZ2UtY291bnRdKSksXG46aG9zdChbbGFiZWwtcG9zaXRpb249J2lubGluZS1zdGFydCddW2xhYmVsLWJyZWFrPSdzaHJpbmstdmFsdWUnXVt2YWxpZGF0aW9uLW1lc3NhZ2UtY291bnRdW2Vycm9yLXRyYWNrZXJdKSB7XG4gIC5pZHMtaW5wdXQsXG4gIC5pZHMtdGV4dGFyZWEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG5cbiAgICBsYWJlbCB7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICB9XG5cbiAgICAuZmllbGQtY29udGFpbmVyIHtcbiAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIH1cblxuICAgIC8vIEtlZXAgdmFsaWRhdGlvbiBtZXNzYWdlcyBiZWxvdyB0aGUgZmllbGRcbiAgICAudmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gV2hlbiB2YWxpZGF0aW9uIGlzIHByZXNlbnQgd2l0aCBzaHJpbmstdmFsdWUsIHVzZSBncmlkIHRvIGtlZXAgZmllbGQgd2lkdGggc3RhYmxlXG46aG9zdCguaW4tZmxleC1pdGVtW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtc3RhcnQnXSksXG46aG9zdChbbGFiZWwtcG9zaXRpb249J2lubGluZS1zdGFydCddW2xhYmVsLWJyZWFrPSdzaHJpbmstdmFsdWUnXVt2YWxpZGF0aW9uLW1lc3NhZ2UtY291bnRdOm5vdChbZXJyb3ItdHJhY2tlcl0pKSB7XG4gIC5pZHMtaW5wdXQsXG4gIC5pZHMtdGV4dGFyZWEge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ2FwOiAwO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBtaW5tYXgoMCwgMWZyKTtcbiAgICBjb2x1bW4tZ2FwOiB2YXIoLS1pZHMtbGFiZWwtYWxpZ25tZW50LWdhcCk7XG5cbiAgICBsYWJlbCB7XG4gICAgICBncmlkLWNvbHVtbjogMTtcbiAgICAgIGdyaWQtcm93OiAxO1xuICAgIH1cblxuICAgIC5maWVsZC1jb250YWluZXIge1xuICAgICAgZ3JpZC1jb2x1bW46IDI7XG4gICAgICBncmlkLXJvdzogMTtcbiAgICAgIG1pbi13aWR0aDogMDtcbiAgICB9XG5cbiAgICAudmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICAgIGdyaWQtY29sdW1uOiAxIC8gLTE7XG4gICAgICBncmlkLXJvdzogMjtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogMDtcbiAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0taWRzLXNwYWNlLTJ4cyk7XG4gICAgfVxuXG4gICAgJi53cmFwcGVkIC52YWxpZGF0aW9uLW1lc3NhZ2Uge1xuICAgICAgZ3JpZC1jb2x1bW46IDI7XG4gICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAwO1xuICAgIH1cblxuICAgICYuc20sICYubW0sICYubWQsICYubGcge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIG1pbm1heCgwLCAxZnIpO1xuICAgIH1cbiAgfVxufVxuXG46aG9zdCguaW4tZmxleC1pdGVtW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtc3RhcnQnXSkge1xuICAuaWRzLWlucHV0IGxhYmVsIHtcbiAgICBtYXgtaGVpZ2h0OiB2YXIoLS1pZHMtbGFiZWwtbWF4LWhlaWdodC1pbmxpbmUtc3RhcnQpO1xuICB9XG5cbiAgLmlkcy1jaGVja2JveCB7XG4gICAgaW5wdXRbdHlwZT0nY2hlY2tib3gnXSB+IC5jaGVja21hcmsge1xuICAgICAgaW5zZXQtaW5saW5lLWVuZDogMDtcbiAgICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5pZHMtcmFkaW8tZ3JvdXAsXG4gIC5pZHMtcmFkaW8tZ3JvdXAubGFiZWwtaW5saW5lIHtcbiAgICBpZHMtdGV4dCB7XG4gICAgICAmLmdyb3VwLWxhYmVsLXRleHQge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG46aG9zdChbbGFiZWwtcG9zaXRpb249J2lubGluZS1zdGFydCddW2xhYmVsLWJyZWFrPSdzaHJpbmstdmFsdWUnXSkge1xuICBAbWVkaWEgKHdpZHRoID4gJGJyZWFrcG9pbnQteHMpIHtcbiAgICAuaWRzLXJhZGlvLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogdmFyKC0taWRzLWxhYmVsLWFsaWduLXksIGJhc2VsaW5lKTtcblxuICAgICAgaWRzLXRleHQuZ3JvdXAtbGFiZWwtdGV4dCB7XG4gICAgICAgIHdpZHRoOiB2YXIoLS1pZHMtbGFiZWwtd2lkdGgpO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIH1cblxuICAgICAgc2xvdCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBjb250YWluZXIgKHdpZHRoID4gI3skYnJlYWtwb2ludC14c30pIHtcbiAgICAuaWRzLXJhZGlvLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogdmFyKC0taWRzLWxhYmVsLWFsaWduLXksIGJhc2VsaW5lKTtcblxuICAgICAgaWRzLXRleHQuZ3JvdXAtbGFiZWwtdGV4dCB7XG4gICAgICAgIHdpZHRoOiB2YXIoLS1pZHMtbGFiZWwtd2lkdGgpO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIH1cblxuICAgICAgc2xvdCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAod2lkdGggPCAkYnJlYWtwb2ludC14cykge1xuICAgIC5pZHMtaW5wdXQsXG4gICAgLmlkcy10ZXh0YXJlYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuaWRzLXRleHRhcmVhIHtcbiAgICAgIGdhcDogMDtcbiAgICB9XG4gIH1cblxuICBAY29udGFpbmVyICh3aWR0aCA8ICN7JGJyZWFrcG9pbnQteHN9KSB7XG4gICAgLmlkcy1pbnB1dCxcbiAgICAuaWRzLXRleHRhcmVhLFxuICAgIC5pZHMtcmFkaW8tZ3JvdXAge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgIH1cbiAgfVxufVxuXG46aG9zdChbbGFiZWwtcG9zaXRpb249J2lubGluZS1zdGFydCddW2xhYmVsLWJyZWFrPSdzaHJpbmstdmFsdWUnXTpub3QoW3ZhbGlkYXRpb24tbWVzc2FnZS1jb3VudF0pKSB7XG4gIEBtZWRpYSAod2lkdGggPD0gJGJyZWFrcG9pbnQteHMpIHtcbiAgICAuaWRzLXRleHRhcmVhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZ2FwOiAwO1xuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWlkcy1pbnB1dC1tYXJnaW4tYm90dG9tKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtc3RhcnQnXVtsYWJlbC1icmVhaz0nc2hyaW5rLWxhYmVsJ10pIHtcbiAgQG1lZGlhICh3aWR0aCA+ICRicmVha3BvaW50LXhzKSB7XG4gICAgLmlkcy1yYWRpby1ncm91cCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IHZhcigtLWlkcy1sYWJlbC1hbGlnbi15LCBiYXNlbGluZSk7XG5cbiAgICAgIGlkcy10ZXh0Lmdyb3VwLWxhYmVsLXRleHQge1xuICAgICAgICB3aWR0aDogdmFyKC0taWRzLWxhYmVsLXdpZHRoKTtcbiAgICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICB9XG5cbiAgICAgIHNsb3Qge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAgQGNvbnRhaW5lciAod2lkdGggPiAjeyRicmVha3BvaW50LXhzfSkge1xuICAgIC5pZHMtcmFkaW8tZ3JvdXAge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiB2YXIoLS1pZHMtbGFiZWwtYWxpZ24teSwgYmFzZWxpbmUpO1xuXG4gICAgICBpZHMtdGV4dC5ncm91cC1sYWJlbC10ZXh0IHtcbiAgICAgICAgd2lkdGg6IHZhcigtLWlkcy1sYWJlbC13aWR0aCk7XG4gICAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgfVxuXG4gICAgICBzbG90IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbjpob3N0KFtsYWJlbC1wb3NpdGlvbj0naW5saW5lLXN0YXJ0J11bbGFiZWwtYnJlYWs9J2JyZWFrJ10pIHtcbiAgLmlkcy1pbnB1dCxcbiAgLmlkcy10ZXh0YXJlYSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuXG4gICAgbGFiZWwge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICB9XG5cbiAgICAuZmllbGQtY29udGFpbmVyIHtcbiAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIH1cblxuICAgIC8vIEtlZXAgdmFsaWRhdGlvbiBtZXNzYWdlcyBiZWxvdyB0aGUgZmllbGRcbiAgICAudmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogMDtcbiAgICB9XG4gIH1cbn1cblxuOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtc3RhcnQnXVtsYWJlbC13aWR0aD1cIjBweFwiXSksXG46aG9zdChbbGFiZWwtcG9zaXRpb249J2lubGluZS1zdGFydCddW2xhYmVsLXdpZHRoPVwiMFwiXSkge1xuICAvLyBXaGVuIGEgbGFiZWwgaXMgXCJpbmxpbmUtc3RhcnRcIiBhbmQgYGxhYmVsLXdpZHRoPVwiMHB4XCJgIHNpbXBseSBkb24ndCBkaXNwbGF5IGl0XG4gIC5pZHMtbGFiZWwtdGV4dCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG46aG9zdChbbGFiZWwtcG9zaXRpb249J2lubGluZS1zdGFydCddW2xhYmVsLWFsaWdubWVudD1cImVuZFwiXVtsYWJlbC13cmFwPVwiZWxsaXBzaXMtbm8tc3RyZXRjaFwiXSksXG46aG9zdChbbGFiZWwtcG9zaXRpb249J2lubGluZS1zdGFydCddW2xhYmVsLWFsaWdubWVudD1cImVuZFwiXVtsYWJlbC13cmFwPVwiZWxsaXBzaXNcIl0pIHtcbiAgLmlkcy1pbnB1dCxcbiAgLmlkcy10ZXh0YXJlYSB7XG4gICAgLmlkcy1sYWJlbC10ZXh0IHtcbiAgICAgIG1hcmdpbi1pbmxpbmUtZW5kOiA1cHg7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAgICAgJi5yZXF1aXJlZCB7XG4gICAgICAgIHBhZGRpbmctaW5saW5lLWVuZDogMDtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgaW5zZXQtaW5saW5lLWVuZDogLTdweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYud3JhcHBlZCAudmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IGNhbGModmFyKC0taWRzLWxhYmVsLXdpZHRoKSArIDExcHgpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIExhYmVsIGJyZWFrIGJlaGF2aW9yIGZvciBpbmxpbmUtZW5kIHBvc2l0aW9uXG46aG9zdChbbGFiZWwtcG9zaXRpb249J2lubGluZS1lbmQnXVtsYWJlbC1icmVhaz0nc2hyaW5rLXZhbHVlJ10pIHtcbiAgLmlkcy1pbnB1dCxcbiAgLmlkcy10ZXh0YXJlYSB7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgIGxhYmVsIHtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgb3JkZXI6IDI7XG4gICAgfVxuXG4gICAgLmZpZWxkLWNvbnRhaW5lciB7XG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cbiAgfVxuXG4gIC5pZHMtaW5wdXQge1xuICAgIGdhcDogdmFyKC0taWRzLXNwYWNlLTIsIDAuNXJlbSk7XG4gIH1cbn1cblxuOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtZW5kJ11bbGFiZWwtYnJlYWs9J3Nocmluay1sYWJlbCddKSB7XG4gIEBtZWRpYSAod2lkdGggPiAkYnJlYWtwb2ludC14cykge1xuICAgIC5pZHMtcmFkaW8tZ3JvdXAge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiB2YXIoLS1pZHMtbGFiZWwtYWxpZ24teSwgYmFzZWxpbmUpO1xuXG4gICAgICBpZHMtdGV4dC5ncm91cC1sYWJlbC10ZXh0IHtcbiAgICAgICAgd2lkdGg6IHZhcigtLWlkcy1sYWJlbC13aWR0aCk7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZW5kO1xuICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgICB9XG5cbiAgICAgIHNsb3Qge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgb3JkZXI6IDE7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbjpob3N0KFtsYWJlbC1wb3NpdGlvbj0naW5saW5lLWVuZCddW2xhYmVsLWJyZWFrPSdicmVhayddKSB7XG4gIC5pZHMtaW5wdXQsXG4gIC5pZHMtdGV4dGFyZWEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcblxuICAgIGxhYmVsIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBvcmRlcjogMjtcbiAgICB9XG5cbiAgICAuZmllbGQtY29udGFpbmVyIHtcbiAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgb3JkZXI6IDE7XG4gICAgfVxuXG4gICAgLy8gS2VlcCB2YWxpZGF0aW9uIG1lc3NhZ2VzIGJlbG93IHRoZSBmaWVsZFxuICAgIC52YWxpZGF0aW9uLW1lc3NhZ2Uge1xuICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogMDtcbiAgICAgIG9yZGVyOiAzO1xuICAgIH1cbiAgfVxuXG4gIC5pZHMtaW5wdXQge1xuICAgIGdhcDogdmFyKC0taWRzLXNwYWNlLTIsIDAuNXJlbSk7XG4gIH1cbn1cblxuOmhvc3QoW2xhYmVsLXBvc2l0aW9uPVwiaW5saW5lLXN0YXJ0XCJdKSB7XG4gIC0taWRzLWxhYmVsLXdpZHRoOiB2YXIoLS1pZHMtbGFiZWwtd2lkdGgtaW5saW5lLXN0YXJ0KTtcbn1cblxuLy8gV2hlbiBsYWJlbC13cmFwIGNvbnN0cmFpbnMgdGhlIGxhYmVsIHNpemUsIGVuc3VyZSBpdCBzdGF5cyB2ZXJ0aWNhbGx5IGNlbnRlcmVkXG4vLyBpbnN0ZWFkIG9mIHN0cmV0Y2hpbmcgdG8gZmlsbCB0aGUgZmxleCBjb250YWluZXIgaGVpZ2h0XG46aG9zdChbbGFiZWwtcG9zaXRpb249XCJpbmxpbmUtc3RhcnRcIl1bbGFiZWwtd3JhcD1cImVsbGlwc2lzLW5vLXN0cmV0Y2hcIl06bm90KFtsYWJlbC1icmVhaz1cImJyZWFrXCJdKSksXG46aG9zdChbbGFiZWwtcG9zaXRpb249XCJpbmxpbmUtc3RhcnRcIl1bbGFiZWwtd3JhcD1cIndyYXAtbm8tc3RyZXRjaFwiXTpub3QoW2xhYmVsLWJyZWFrPVwiYnJlYWtcIl0pKSB7XG4gIC5pZHMtaW5wdXQsXG4gIC5pZHMtdGV4dGFyZWEge1xuICAgIGxhYmVsIHtcbiAgICAgIGFsaWduLXNlbGY6IHZhcigtLWlkcy1sYWJlbC1hbGlnbi15LCBjZW50ZXIpO1xuICAgIH1cblxuICAgIC5pZHMtbGFiZWwtdGV4dCB7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG4gIH1cbn1cblxuLy8gVGV4dCBhcmVhXG5AbWVkaWEgKHdpZHRoID4gJGJyZWFrcG9pbnQtc20pIHtcbiAgOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtc3RhcnQnXTpub3QoW2xhYmVsLWJyZWFrPSdzaHJpbmstdmFsdWUnXSk6bm90KFtzaXplPSdmdWxsJ10pKSB7XG4gICAgLmlkcy10ZXh0YXJlYSB7XG4gICAgICBtYXgtd2lkdGg6IGNhbGMoMzcwcHggKyB2YXIoLS1pZHMtbGFiZWwtd2lkdGgpKTtcblxuICAgICAgLnRleHRhcmVhLWZpZWxkIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMzcwcHggKyB2YXIoLS1pZHMtbGFiZWwtd2lkdGgpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gRmlsdGVyIGZpZWxkXG5AbWVkaWEgKHdpZHRoID4gJGJyZWFrcG9pbnQtc20pIHtcbiAgOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtc3RhcnQnXSkge1xuICAgIC5pZHMtZmlsdGVyLWZpZWxkIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogdmFyKC0taWRzLWxhYmVsLWFsaWduLXksIGJhc2VsaW5lKTtcblxuICAgICAgbGFiZWwge1xuICAgICAgICB3aWR0aDogdmFyKC0taWRzLWxhYmVsLXdpZHRoKTtcbiAgICAgICAgcGFkZGluZy1ibG9jazogdmFyKC0taWRzLWxhYmVsLXBhZGRpbmctYmxvY2spO1xuICAgICAgICBwYWRkaW5nLWlubGluZS1lbmQ6IHZhcigtLWlkcy1sYWJlbC1wYWRkaW5nLWlubGluZS1lbmQpO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgfVxuXG4gICAgICAvLyBGaWx0ZXIgZmllbGQgc3BlY2lmaWMgcnVsZXNcbiAgICAgICNvcGVyYXRvci1idXR0b24ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGluc2V0LWlubGluZS1zdGFydDogdmFyKC0taWRzLWxhYmVsLXdpZHRoKTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgIH1cblxuICAgICAgLy8gVmFsaWRhdGlvbiBvbiB0aGUgYm90dG9tXG4gICAgICAudmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0taWRzLXNwYWNlLTJ4cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIENoZWNrYm94ZXNcbjpob3N0KFtsYWJlbC1wb3NpdGlvbj0naW5saW5lLXN0YXJ0J11bZGlyPSdydGwnXSkge1xuICBAbWVkaWEgKHdpZHRoIDwgJGJyZWFrcG9pbnQtc20pIHtcbiAgICAuaWRzLWNoZWNrYm94IHtcbiAgICAgIGxhYmVsIHtcbiAgICAgICAgLS1pZHMtY2hlY2tib3gtcGFkZGluZy1pbmxpbmUtc3RhcnQ6IGluaGVyaXQ7XG4gICAgICB9XG5cbiAgICAgIC52YWxpZGF0aW9uLW1lc3NhZ2Uge1xuICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiBpbml0aWFsO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtc20pIHtcbiAgOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtc3RhcnQnXVtkaXI9J3J0bCddKSAuaWRzLWNoZWNrYm94IHtcbiAgICBpbnB1dFt0eXBlPSdjaGVja2JveCddIH4gLmNoZWNrbWFyayB7XG4gICAgICByaWdodDogaW5pdGlhbDtcbiAgICB9XG5cbiAgICAudmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBSYWRpbyBidXR0b25zXG4vLyBUaGUgaW5saW5lIChzaWRlKSBsYWJlbCBsYXlvdXQgaXMgdG9nZ2xlZCBieSBgb25MYWJlbFBvc2l0aW9uQ2hhbmdlYCBpblxuLy8gaWRzLXJhZGlvLWdyb3VwIHZpYSB0aGUgYGxhYmVsLWlubGluZWAgLyBgbGFiZWwtaW5saW5lLWVuZC1zdGFja2VkYCBjbGFzc2VzLFxuLy8gd2hpY2ggYXJlIGRyaXZlbiBieSB0aGUgZ3JvdXAncyBvd24gd2lkdGguIFRoaXMgbGV0cyB0aGUgbGF5b3V0IHJlc3BvbmQgdG9cbi8vIGl0cyBjb250YWluZXIgcmF0aGVyIHRoYW4gdGhlIHZpZXdwb3J0LlxuOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtc3RhcnQnXSkgLmlkcy1yYWRpby1ncm91cC5sYWJlbC1pbmxpbmUsXG46aG9zdChbbGFiZWwtcG9zaXRpb249J2lubGluZS1lbmQnXSkgLmlkcy1yYWRpby1ncm91cC5sYWJlbC1pbmxpbmUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogdmFyKC0taWRzLWxhYmVsLWFsaWduLXksIGZsZXgtc3RhcnQpO1xuICBnYXA6IHZhcigtLWlkcy1zcGFjZS0yLCAwLjVyZW0pO1xuXG4gIGlkcy10ZXh0Lmdyb3VwLWxhYmVsLXRleHQge1xuICAgIG1pbi13aWR0aDogdmFyKC0taWRzLWxhYmVsLXdpZHRoKTtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLWlkcy1zcGFjZS14cykgLSAycHgpO1xuICB9XG5cbiAgc2xvdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG59XG5cbi8vIFdoZW4gYGhvcml6b250YWxgIGlzIHNldCwgdGhlIG9wdGlvbnMgZmxvdyBpbiBhIHJvdyByZWdhcmRsZXNzIG9mIHRoZSBpbmxpbmVcbi8vIGxhYmVsIHBvc2l0aW9uLCBzbyB0aGUgc2xvdCBtdXN0IG5vdCBmb3JjZSBhIHZlcnRpY2FsIHN0YWNrLlxuOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtc3RhcnQnXSkgLmlkcy1yYWRpby1ncm91cC5sYWJlbC1pbmxpbmUuaG9yaXpvbnRhbCxcbjpob3N0KFtsYWJlbC1wb3NpdGlvbj0naW5saW5lLWVuZCddKSAuaWRzLXJhZGlvLWdyb3VwLmxhYmVsLWlubGluZS5ob3Jpem9udGFsIHtcbiAgc2xvdCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbn1cblxuOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtZW5kJ10pIC5pZHMtcmFkaW8tZ3JvdXAubGFiZWwtaW5saW5lIHtcbiAgaWRzLXRleHQuZ3JvdXAtbGFiZWwtdGV4dCB7XG4gICAganVzdGlmeS1jb250ZW50OiBlbmQ7XG4gICAgb3JkZXI6IDI7XG4gIH1cblxuICBzbG90IHtcbiAgICBvcmRlcjogMTtcbiAgfVxufVxuXG4vLyBOYXJyb3cgYGlubGluZS1lbmRgOiBzdGFjayB3aXRoIHRoZSBsYWJlbCBiZW5lYXRoIHRoZSBvcHRpb25zXG46aG9zdChbbGFiZWwtcG9zaXRpb249J2lubGluZS1lbmQnXSkgLmlkcy1yYWRpby1ncm91cC5sYWJlbC1pbmxpbmUtZW5kLXN0YWNrZWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogdmFyKC0taWRzLWxhYmVsLWFsaWduLXksIGJhc2VsaW5lKTtcbiAgZ2FwOiB2YXIoLS1pZHMtc3BhY2UtMiwgMC41cmVtKTtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICBpZHMtdGV4dC5ncm91cC1sYWJlbC10ZXh0IHtcbiAgICBtaW4td2lkdGg6IHZhcigtLWlkcy1sYWJlbC13aWR0aCk7XG4gICAgb3JkZXI6IDI7XG4gIH1cblxuICBzbG90IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgb3JkZXI6IDE7XG4gIH1cbn1cblxuLy8gU3dpdGNoXG5AbWVkaWEgKHdpZHRoID4gJGJyZWFrcG9pbnQtc20pIHtcbiAgOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtc3RhcnQnXSkgLmlkcy1zd2l0Y2gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiB2YXIoLS1pZHMtbGFiZWwtYWxpZ24teSwgYmFzZWxpbmUpO1xuXG4gICAgbGFiZWwge1xuICAgICAgd2lkdGg6IHZhcigtLWlkcy1sYWJlbC13aWR0aCk7XG4gICAgICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1pZHMtbGFiZWwtcGFkZGluZy1ibG9jayk7XG4gICAgICBwYWRkaW5nLWlubGluZS1lbmQ6IHZhcigtLWlkcy1sYWJlbC1wYWRkaW5nLWlubGluZS1lbmQpO1xuICAgICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IDA7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9J2NoZWNrYm94J10gfiAuc2xpZGVyIHtcbiAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgcmlnaHQ6IC00NXB4O1xuICAgIH1cbiAgfVxuXG4gIDpob3N0KFtsYWJlbC1wb3NpdGlvbj1cImlubGluZS1zdGFydFwiXVtsYWJlbC1zdGF0ZT1cImNvbGxhcHNlZFwiXSkgLmlkcy1zd2l0Y2ggbGFiZWwge1xuICAgIHBhZGRpbmctaW5saW5lLWVuZDogMDtcbiAgICB3aWR0aDogMDtcbiAgfVxuXG4gIDpob3N0KFtsYWJlbC1wb3NpdGlvbj0naW5saW5lLXN0YXJ0J11bZGlyPSdydGwnXSkgLmlkcy1zd2l0Y2gge1xuICAgIGlucHV0W3R5cGU9J2NoZWNrYm94J10gfiAuc2xpZGVyIHtcbiAgICAgIGxlZnQ6IC00NXB4O1xuICAgICAgcmlnaHQ6IGluaXRpYWw7XG4gICAgfVxuICB9XG59XG5cbi8vIERhdGEgTGFiZWxcbkBtZWRpYSAod2lkdGggPiAkYnJlYWtwb2ludC1zbSkge1xuICA6aG9zdChbbGFiZWwtcG9zaXRpb249J2lubGluZS1zdGFydCddKSAuaWRzLWRhdGEtbGFiZWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBnYXA6IDhweDtcbiAgICBhbGlnbi1pdGVtczogdmFyKC0taWRzLWxhYmVsLWFsaWduLXksIGJhc2VsaW5lKTtcblxuICAgIC5sYWJlbCB7XG4gICAgICB3aWR0aDogdmFyKC0taWRzLWxhYmVsLXdpZHRoKTtcbiAgICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLWlkcy1sYWJlbC1wYWRkaW5nLWJsb2NrKTtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICBtYXJnaW4tYmxvY2stZW5kOiAwO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG5cbiAgICAuZGF0YSxcbiAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIHBhZGRpbmctYmxvY2s6IHZhcigtLWlkcy1sYWJlbC1wYWRkaW5nLWJsb2NrKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gUmVzcG9uc2l2ZSBiZWhhdmlvclxuQG1lZGlhIChtYXgtd2lkdGg6ICRicmVha3BvaW50LXhzKSB7XG4gIDpob3N0KFtsYWJlbC1wb3NpdGlvbj1cImlubGluZS1zdGFydFwiXSkge1xuICAgIC5pZHMtaW5wdXQsXG4gICAgLmlkcy10ZXh0YXJlYSxcbiAgICAuaWRzLWZpbHRlci1maWVsZCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiB1bnNldDtcblxuICAgICAgbGFiZWwge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiAwO1xuICAgICAgfVxuXG4gICAgICAudmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICA6aG9zdChbbGFiZWwtcG9zaXRpb249XCJpbmxpbmUtZW5kXCJdKSB7XG4gICAgLmlkcy1pbnB1dCxcbiAgICAuaWRzLXRleHRhcmVhLFxuICAgIC5pZHMtZmlsdGVyLWZpZWxkIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IHVuc2V0O1xuICAgICAgZ2FwOiB2YXIoLS1pZHMtc3BhY2UtMiwgMC41cmVtKTtcblxuICAgICAgbGFiZWwge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiAwO1xuICAgICAgfVxuXG4gICAgICAudmFsaWRhdGlvbi1tZXNzYWdlIHtcbiAgICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuOmhvc3QoW2xhYmVsLXN0YXRlPVwiY29sbGFwc2VkXCJdKSB7XG4gIC0taWRzLWxhYmVsLXdpZHRoOiAwO1xuXG4gIHdpZHRoOiBmaXQtY29udGVudDtcbn1cblxuOmhvc3QoaWRzLWNoZWNrYm94W2xhYmVsLXN0YXRlPVwiY29sbGFwc2VkXCJdKSB7XG4gIHdpZHRoOiBmaXQtY29udGVudDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbkBjb250YWluZXIgKG1heC13aWR0aDogI3skYnJlYWtwb2ludC14c30pIHtcbiAgOmhvc3QoW2xhYmVsLXBvc2l0aW9uPVwiaW5saW5lLXN0YXJ0XCJdKSB7XG4gICAgLmlkcy1pbnB1dCxcbiAgICAuaWRzLXRleHRhcmVhLFxuICAgIC5pZHMtZmlsdGVyLWZpZWxkIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IHVuc2V0O1xuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgICAgICAgcGFkZGluZy1pbmxpbmU6IDA7XG4gICAgICB9XG5cbiAgICAgIC52YWxpZGF0aW9uLW1lc3NhZ2Uge1xuICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIDpob3N0KFtsYWJlbC1wb3NpdGlvbj1cImlubGluZS1lbmRcIl0pIHtcbiAgICAuaWRzLWlucHV0LFxuICAgIC5pZHMtdGV4dGFyZWEsXG4gICAgLmlkcy1maWx0ZXItZmllbGQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBhbGlnbi1pdGVtczogdW5zZXQ7XG4gICAgICBnYXA6IHZhcigtLWlkcy1zcGFjZS0yLCAwLjVyZW0pO1xuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgICAgICAgcGFkZGluZy1pbmxpbmU6IDA7XG4gICAgICB9XG5cbiAgICAgIC52YWxpZGF0aW9uLW1lc3NhZ2Uge1xuICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG46aG9zdChbbGFiZWwtcG9zaXRpb249J2lubGluZS1zdGFydCddW2xhYmVsLXN0YXRlPVwiaGlkZGVuXCJdKSB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC14cykge1xuICAgIC5pZHMtaW5wdXQgLmlkcy1sYWJlbC10ZXh0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbkBjb250YWluZXIgKG1heC13aWR0aDogI3skYnJlYWtwb2ludC14c30pIHtcbiAgOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtc3RhcnQnXVtsYWJlbC1zdGF0ZT1cImhpZGRlblwiXSkge1xuICAgIC5pZHMtaW5wdXQgLmlkcy1sYWJlbC10ZXh0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8vIEp1c3QgdGhlIGxhYmVsIHdpZHRoXG46aG9zdCB7XG4gIC5pZHMtaW5wdXQsXG4gIC5pZHMtdGV4dGFyZWEsXG4gIC5pZHMtY2hlY2tib3gsXG4gIC5pZHMtcmFkaW8sXG4gIC5pZHMtc3dpdGNoLFxuICAuaWRzLWRhdGEtbGFiZWwsXG4gIC5pZHMtZmlsdGVyLWZpZWxkIHtcbiAgICBsYWJlbCxcbiAgICAubGFiZWwge1xuICAgICAgd2lkdGg6IHZhcigtLWlkcy1sYWJlbC13aWR0aCk7XG4gICAgfVxuICB9XG59XG5cbi8vIERlY2xhcmVkIGxhc3Qgc28gbGFiZWwtc3RhdGUgd2lucyBvdmVyIGxhYmVsLWFsaWdubWVudC9sYWJlbC1icmVhay9sYWJlbC13cmFwLFxuLy8ga2VlcGluZyB0aGUgcmFkaW8gZ3JvdXAgbGFiZWwgaGlkZGVuIHJlZ2FyZGxlc3Mgb2YgdGhlIG90aGVyIGxheW91dCBhdHRyaWJ1dGVzLlxuOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtc3RhcnQnXVtsYWJlbC1zdGF0ZT0nY29sbGFwc2VkJ10pLFxuOmhvc3QoW2xhYmVsLXBvc2l0aW9uPSdpbmxpbmUtZW5kJ11bbGFiZWwtc3RhdGU9J2NvbGxhcHNlZCddKSB7XG4gIC5pZHMtcmFkaW8tZ3JvdXAgaWRzLXRleHQuZ3JvdXAtbGFiZWwtdGV4dCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG46aG9zdChbbGFiZWwtcG9zaXRpb249J2lubGluZS1zdGFydCddW2xhYmVsLXN0YXRlPSdoaWRkZW4nXSksXG46aG9zdChbbGFiZWwtcG9zaXRpb249J2lubGluZS1lbmQnXVtsYWJlbC1zdGF0ZT0naGlkZGVuJ10pIHtcbiAgLmlkcy1yYWRpby1ncm91cCBpZHMtdGV4dC5ncm91cC1sYWJlbC10ZXh0IHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbn1cbiIsIkB1c2UgJy4uLy4uL3RoZW1lcy9taXhpbnMvaWRzLWNvcmUtbWl4aW5zJyBhcyAqO1xuQHVzZSAnLi4vLi4vdGhlbWVzL21peGlucy9pZHMtbGFiZWwtcG9zaXRpb24tbWl4aW4uc2NzcycgYXMgbGFiZWwtcG9zaXRpb247XG5cbjpob3N0KFtmdWxsLXdpZHRoLW1vYmlsZV0pIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRicmVha3BvaW50LW1vYmlsZS1mdWxsLXdpZHRoKSB7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBpZHMtdHJpZ2dlci1maWVsZCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4vKiBJZHMgTG9va3VwIENvbXBvbmVudCAqL1xuLmRhdGEtZ3JpZC1jb250YWluZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC1oZWlnaHQ6IDQwMHB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogJGJyZWFrcG9pbnQtc20pIHtcbiAgaWRzLWxheW91dC1ncmlkIHtcbiAgICAvLyBOZWVkIGltcG9ydGFudCB0byBvdmVycmlkZSBpbmxpbmUgZWxlbWVudCBzdHlsZXNcbiAgICAtLW1pbi1jb2wtd2lkdGg6IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5kYXRhLWdyaWQtY29udGFpbmVyLmhhcy1zZWFyY2gge1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwZHZoIC0gMTg0cHgpO1xuICB9XG5cbiAgLmRhdGEtZ3JpZC1jb250YWluZXIge1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLmRhdGEtZ3JpZC1wYXJlbnQtY29udGFpbmVyICB7XG4gICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmRhdGEtZ3JpZC1wYXJlbnQtY29udGFpbmVyIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbmlkcy10cmlnZ2VyLWZpZWxkOjpwYXJ0KGNsZWFyYWJsZS1idXR0b24pIHtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IC05cHg7XG59XG5cbmlkcy10cmlnZ2VyLWZpZWxkW2NvbXBhY3RdOjpwYXJ0KGNsZWFyYWJsZS1idXR0b24pIHtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IC0ycHg7XG59XG5cbi5yZXN1bHQtY291bnQge1xuICBmb250LXNpemU6IHZhcigtLWlkcy1sb29rdXAtcmVzdWx0LWNvdW50LWZvbnQtc2l6ZSk7XG4gIG1hcmdpbjogdmFyKC0taWRzLWxvb2t1cC1yZXN1bHQtY291bnQtbWFyZ2luKTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuaWRzLXRyaWdnZXItYnV0dG9uW3Nsb3Q9XCJ0cmlnZ2VyLWVuZFwiXSB7XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDRweDtcbn1cbiJdfQ== */