/*!***************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/styles/app.scss ***!
  \***************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
:root {
  --md-source: #006495;
  /* primary */
  --md-ref-palette-primary0: #000000;
  --md-ref-palette-primary10: #001e30;
  --md-ref-palette-primary20: #003450;
  --md-ref-palette-primary25: #003f60;
  --md-ref-palette-primary30: #004b71;
  --md-ref-palette-primary35: #005783;
  --md-ref-palette-primary40: #006495;
  --md-ref-palette-primary50: #0f7eb8;
  --md-ref-palette-primary60: #3d98d4;
  --md-ref-palette-primary70: #5db3f0;
  --md-ref-palette-primary80: #8fcdff;
  --md-ref-palette-primary90: #cbe6ff;
  --md-ref-palette-primary95: #e6f2ff;
  --md-ref-palette-primary98: #f7f9ff;
  --md-ref-palette-primary99: #fcfcff;
  --md-ref-palette-primary100: #ffffff;
  /* secondary */
  --md-ref-palette-secondary0: #000000;
  --md-ref-palette-secondary10: #0d1d29;
  --md-ref-palette-secondary20: #22323f;
  --md-ref-palette-secondary25: #2d3d4b;
  --md-ref-palette-secondary30: #394856;
  --md-ref-palette-secondary35: #445462;
  --md-ref-palette-secondary40: #50606f;
  --md-ref-palette-secondary50: #697988;
  --md-ref-palette-secondary60: #8293a2;
  --md-ref-palette-secondary70: #9dadbd;
  --md-ref-palette-secondary80: #b8c8d9;
  --md-ref-palette-secondary90: #d4e4f6;
  --md-ref-palette-secondary95: #e6f2ff;
  --md-ref-palette-secondary98: #f7f9ff;
  --md-ref-palette-secondary99: #fcfcff;
  --md-ref-palette-secondary100: #ffffff;
  /* tertiary */
  --md-ref-palette-tertiary0: #000000;
  --md-ref-palette-tertiary10: #211634;
  --md-ref-palette-tertiary20: #362b4a;
  --md-ref-palette-tertiary25: #423656;
  --md-ref-palette-tertiary30: #4d4162;
  --md-ref-palette-tertiary35: #594c6e;
  --md-ref-palette-tertiary40: #66587b;
  --md-ref-palette-tertiary50: #7f7195;
  --md-ref-palette-tertiary60: #998ab0;
  --md-ref-palette-tertiary70: #b4a4cb;
  --md-ref-palette-tertiary80: #d0bfe7;
  --md-ref-palette-tertiary90: #ecdcff;
  --md-ref-palette-tertiary95: #f7edff;
  --md-ref-palette-tertiary98: #fef7ff;
  --md-ref-palette-tertiary99: #fffbff;
  --md-ref-palette-tertiary100: #ffffff;
  /* neutral */
  --md-ref-palette-neutral0: #000000;
  --md-ref-palette-neutral10: #1a1c1e;
  --md-ref-palette-neutral20: #2e3133;
  --md-ref-palette-neutral25: #3a3c3e;
  --md-ref-palette-neutral30: #454749;
  --md-ref-palette-neutral35: #515255;
  --md-ref-palette-neutral40: #5d5e61;
  --md-ref-palette-neutral50: #76777a;
  --md-ref-palette-neutral60: #8f9194;
  --md-ref-palette-neutral70: #aaabae;
  --md-ref-palette-neutral80: #c6c6c9;
  --md-ref-palette-neutral90: #e2e2e5;
  --md-ref-palette-neutral95: #f0f0f3;
  --md-ref-palette-neutral98: #f9f9fc;
  --md-ref-palette-neutral99: #fcfcff;
  --md-ref-palette-neutral100: #ffffff;
  /* neutral-variant */
  --md-ref-palette-neutral-variant0: #000000;
  --md-ref-palette-neutral-variant10: #161c22;
  --md-ref-palette-neutral-variant20: #2b3137;
  --md-ref-palette-neutral-variant25: #363c42;
  --md-ref-palette-neutral-variant30: #41474d;
  --md-ref-palette-neutral-variant35: #4d5359;
  --md-ref-palette-neutral-variant40: #595f65;
  --md-ref-palette-neutral-variant50: #72787e;
  --md-ref-palette-neutral-variant60: #8b9198;
  --md-ref-palette-neutral-variant70: #a6acb3;
  --md-ref-palette-neutral-variant80: #c1c7ce;
  --md-ref-palette-neutral-variant90: #dee3ea;
  --md-ref-palette-neutral-variant95: #ecf1f9;
  --md-ref-palette-neutral-variant98: #f7f9ff;
  --md-ref-palette-neutral-variant99: #fcfcff;
  --md-ref-palette-neutral-variant100: #ffffff;
  /* error */
  --md-ref-palette-error0: #000000;
  --md-ref-palette-error10: #410002;
  --md-ref-palette-error20: #690005;
  --md-ref-palette-error25: #7e0007;
  --md-ref-palette-error30: #93000a;
  --md-ref-palette-error35: #a80710;
  --md-ref-palette-error40: #ba1a1a;
  --md-ref-palette-error50: #de3730;
  --md-ref-palette-error60: #ff5449;
  --md-ref-palette-error70: #ff897d;
  --md-ref-palette-error80: #ffb4ab;
  --md-ref-palette-error90: #ffdad6;
  --md-ref-palette-error95: #ffedea;
  --md-ref-palette-error98: #fff8f7;
  --md-ref-palette-error99: #fffbff;
  --md-ref-palette-error100: #ffffff;
  /* light */
  --md-sys-color-primary-light: #006495;
  --md-sys-color-on-primary-light: #ffffff;
  --md-sys-color-primary-container-light: #cbe6ff;
  --md-sys-color-on-primary-container-light: #001e30;
  --md-sys-color-secondary-light: #50606f;
  --md-sys-color-on-secondary-light: #ffffff;
  --md-sys-color-secondary-container-light: #d4e4f6;
  --md-sys-color-on-secondary-container-light: #0d1d29;
  --md-sys-color-tertiary-light: #66587b;
  --md-sys-color-on-tertiary-light: #ffffff;
  --md-sys-color-tertiary-container-light: #ecdcff;
  --md-sys-color-on-tertiary-container-light: #211634;
  --md-sys-color-error-light: #ba1a1a;
  --md-sys-color-error-container-light: #ffdad6;
  --md-sys-color-on-error-light: #ffffff;
  --md-sys-color-on-error-container-light: #410002;
  --md-sys-color-background-light: #fcfcff;
  --md-sys-color-on-background-light: #1a1c1e;
  --md-sys-color-surface-light: #fcfcff;
  --md-sys-color-on-surface-light: #1a1c1e;
  --md-sys-color-surface-variant-light: #dee3ea;
  --md-sys-color-on-surface-variant-light: #41474d;
  --md-sys-color-outline-light: #72787e;
  --md-sys-color-inverse-on-surface-light: #f0f0f3;
  --md-sys-color-inverse-surface-light: #2e3133;
  --md-sys-color-inverse-primary-light: #8fcdff;
  --md-sys-color-shadow-light: #000000;
  --md-sys-color-surface-tint-light: #006495;
  --md-sys-color-outline-variant-light: #c1c7ce;
  --md-sys-color-scrim-light: #000000;
  /* dark */
  --md-sys-color-primary-dark: #8fcdff;
  --md-sys-color-on-primary-dark: #003450;
  --md-sys-color-primary-container-dark: #004b71;
  --md-sys-color-on-primary-container-dark: #cbe6ff;
  --md-sys-color-secondary-dark: #b8c8d9;
  --md-sys-color-on-secondary-dark: #22323f;
  --md-sys-color-secondary-container-dark: #394856;
  --md-sys-color-on-secondary-container-dark: #d4e4f6;
  --md-sys-color-tertiary-dark: #d0bfe7;
  --md-sys-color-on-tertiary-dark: #362b4a;
  --md-sys-color-tertiary-container-dark: #4d4162;
  --md-sys-color-on-tertiary-container-dark: #ecdcff;
  --md-sys-color-error-dark: #ffb4ab;
  --md-sys-color-error-container-dark: #93000a;
  --md-sys-color-on-error-dark: #690005;
  --md-sys-color-on-error-container-dark: #ffdad6;
  --md-sys-color-background-dark: #1a1c1e;
  --md-sys-color-on-background-dark: #e2e2e5;
  --md-sys-color-surface-dark: #1a1c1e;
  --md-sys-color-on-surface-dark: #e2e2e5;
  --md-sys-color-surface-variant-dark: #41474d;
  --md-sys-color-on-surface-variant-dark: #c1c7ce;
  --md-sys-color-outline-dark: #8b9198;
  --md-sys-color-inverse-on-surface-dark: #1a1c1e;
  --md-sys-color-inverse-surface-dark: #e2e2e5;
  --md-sys-color-inverse-primary-dark: #006495;
  --md-sys-color-shadow-dark: #000000;
  --md-sys-color-surface-tint-dark: #8fcdff;
  --md-sys-color-outline-variant-dark: #41474d;
  --md-sys-color-scrim-dark: #000000;
  /* display - large */
  --md-sys-typescale-display-large-font-family-name: Roboto;
  --md-sys-typescale-display-large-font-family-style: Regular;
  --md-sys-typescale-display-large-font-weight: 400px;
  --md-sys-typescale-display-large-font-size: 57px;
  --md-sys-typescale-display-large-line-height: 64px;
  --md-sys-typescale-display-large-letter-spacing: -0.25px;
  /* display - medium */
  --md-sys-typescale-display-medium-font-family-name: Roboto;
  --md-sys-typescale-display-medium-font-family-style: Regular;
  --md-sys-typescale-display-medium-font-weight: 400px;
  --md-sys-typescale-display-medium-font-size: 45px;
  --md-sys-typescale-display-medium-line-height: 52px;
  --md-sys-typescale-display-medium-letter-spacing: 0px;
  /* display - small */
  --md-sys-typescale-display-small-font-family-name: Roboto;
  --md-sys-typescale-display-small-font-family-style: Regular;
  --md-sys-typescale-display-small-font-weight: 400px;
  --md-sys-typescale-display-small-font-size: 36px;
  --md-sys-typescale-display-small-line-height: 44px;
  --md-sys-typescale-display-small-letter-spacing: 0px;
  /* headline - large */
  --md-sys-typescale-headline-large-font-family-name: Roboto;
  --md-sys-typescale-headline-large-font-family-style: Regular;
  --md-sys-typescale-headline-large-font-weight: 400px;
  --md-sys-typescale-headline-large-font-size: 32px;
  --md-sys-typescale-headline-large-line-height: 40px;
  --md-sys-typescale-headline-large-letter-spacing: 0px;
  /* headline - medium */
  --md-sys-typescale-headline-medium-font-family-name: Roboto;
  --md-sys-typescale-headline-medium-font-family-style: Regular;
  --md-sys-typescale-headline-medium-font-weight: 400px;
  --md-sys-typescale-headline-medium-font-size: 28px;
  --md-sys-typescale-headline-medium-line-height: 36px;
  --md-sys-typescale-headline-medium-letter-spacing: 0px;
  /* headline - small */
  --md-sys-typescale-headline-small-font-family-name: Roboto;
  --md-sys-typescale-headline-small-font-family-style: Regular;
  --md-sys-typescale-headline-small-font-weight: 400px;
  --md-sys-typescale-headline-small-font-size: 24px;
  --md-sys-typescale-headline-small-line-height: 32px;
  --md-sys-typescale-headline-small-letter-spacing: 0px;
  /* body - large */
  --md-sys-typescale-body-large-font-family-name: Roboto;
  --md-sys-typescale-body-large-font-family-style: Regular;
  --md-sys-typescale-body-large-font-weight: 400px;
  --md-sys-typescale-body-large-font-size: 16px;
  --md-sys-typescale-body-large-line-height: 24px;
  --md-sys-typescale-body-large-letter-spacing: 0.50px;
  /* body - medium */
  --md-sys-typescale-body-medium-font-family-name: Roboto;
  --md-sys-typescale-body-medium-font-family-style: Regular;
  --md-sys-typescale-body-medium-font-weight: 400px;
  --md-sys-typescale-body-medium-font-size: 14px;
  --md-sys-typescale-body-medium-line-height: 20px;
  --md-sys-typescale-body-medium-letter-spacing: 0.25px;
  /* body - small */
  --md-sys-typescale-body-small-font-family-name: Roboto;
  --md-sys-typescale-body-small-font-family-style: Regular;
  --md-sys-typescale-body-small-font-weight: 400px;
  --md-sys-typescale-body-small-font-size: 12px;
  --md-sys-typescale-body-small-line-height: 16px;
  --md-sys-typescale-body-small-letter-spacing: 0.40px;
  /* label - large */
  --md-sys-typescale-label-large-font-family-name: Roboto;
  --md-sys-typescale-label-large-font-family-style: Medium;
  --md-sys-typescale-label-large-font-weight: 500px;
  --md-sys-typescale-label-large-font-size: 14px;
  --md-sys-typescale-label-large-line-height: 20px;
  --md-sys-typescale-label-large-letter-spacing: 0.10px;
  /* label - medium */
  --md-sys-typescale-label-medium-font-family-name: Roboto;
  --md-sys-typescale-label-medium-font-family-style: Medium;
  --md-sys-typescale-label-medium-font-weight: 500px;
  --md-sys-typescale-label-medium-font-size: 12px;
  --md-sys-typescale-label-medium-line-height: 16px;
  --md-sys-typescale-label-medium-letter-spacing: 0.50px;
  /* label - small */
  --md-sys-typescale-label-small-font-family-name: Roboto;
  --md-sys-typescale-label-small-font-family-style: Medium;
  --md-sys-typescale-label-small-font-weight: 500px;
  --md-sys-typescale-label-small-font-size: 11px;
  --md-sys-typescale-label-small-line-height: 16px;
  --md-sys-typescale-label-small-letter-spacing: 0.50px;
  /* title - large */
  --md-sys-typescale-title-large-font-family-name: Roboto;
  --md-sys-typescale-title-large-font-family-style: Regular;
  --md-sys-typescale-title-large-font-weight: 400px;
  --md-sys-typescale-title-large-font-size: 22px;
  --md-sys-typescale-title-large-line-height: 28px;
  --md-sys-typescale-title-large-letter-spacing: 0px;
  /* title - medium */
  --md-sys-typescale-title-medium-font-family-name: Roboto;
  --md-sys-typescale-title-medium-font-family-style: Medium;
  --md-sys-typescale-title-medium-font-weight: 500px;
  --md-sys-typescale-title-medium-font-size: 16px;
  --md-sys-typescale-title-medium-line-height: 24px;
  --md-sys-typescale-title-medium-letter-spacing: 0.15px;
  /* title - small */
  --md-sys-typescale-title-small-font-family-name: Roboto;
  --md-sys-typescale-title-small-font-family-style: Medium;
  --md-sys-typescale-title-small-font-weight: 500px;
  --md-sys-typescale-title-small-font-size: 14px;
  --md-sys-typescale-title-small-line-height: 20px;
  --md-sys-typescale-title-small-letter-spacing: 0.10px;
}

.primary {
  background-color: var(--md-sys-color-primary);
}

.primary-text {
  color: var(--md-sys-color-primary);
}

.on-primary {
  background-color: var(--md-sys-color-on-primary);
}

.on-primary-text {
  color: var(--md-sys-color-on-primary);
}

.primary-container {
  background-color: var(--md-sys-color-primary-container);
}

.primary-container-text {
  color: var(--md-sys-color-primary-container);
}

.on-primary-container {
  background-color: var(--md-sys-color-on-primary-container);
}

.on-primary-container-text {
  color: var(--md-sys-color-on-primary-container);
}

.secondary {
  background-color: var(--md-sys-color-secondary);
}

.secondary-text {
  color: var(--md-sys-color-secondary);
}

.on-secondary {
  background-color: var(--md-sys-color-on-secondary);
}

.on-secondary-text {
  color: var(--md-sys-color-on-secondary);
}

.secondary-container {
  background-color: var(--md-sys-color-secondary-container);
}

.secondary-container-text {
  color: var(--md-sys-color-secondary-container);
}

.on-secondary-container {
  background-color: var(--md-sys-color-on-secondary-container);
}

.on-secondary-container-text {
  color: var(--md-sys-color-on-secondary-container);
}

.tertiary {
  background-color: var(--md-sys-color-tertiary);
}

.tertiary-text {
  color: var(--md-sys-color-tertiary);
}

.on-tertiary {
  background-color: var(--md-sys-color-on-tertiary);
}

.on-tertiary-text {
  color: var(--md-sys-color-on-tertiary);
}

.tertiary-container {
  background-color: var(--md-sys-color-tertiary-container);
}

.tertiary-container-text {
  color: var(--md-sys-color-tertiary-container);
}

.on-tertiary-container {
  background-color: var(--md-sys-color-on-tertiary-container);
}

.on-tertiary-container-text {
  color: var(--md-sys-color-on-tertiary-container);
}

.error {
  background-color: var(--md-sys-color-error);
}

.error-text {
  color: var(--md-sys-color-error);
}

.on-error {
  background-color: var(--md-sys-color-on-error);
}

.on-error-text {
  color: var(--md-sys-color-on-error);
}

.error-container {
  background-color: var(--md-sys-color-error-container);
}

.error-container-text {
  color: var(--md-sys-color-error-container);
}

.on-error-container {
  background-color: var(--md-sys-color-on-error-container);
}

.on-error-container-text {
  color: var(--md-sys-color-on-error-container);
}

.background {
  background-color: var(--md-sys-color-background);
}

.background-text {
  color: var(--md-sys-color-background);
}

.on-background {
  background-color: var(--md-sys-color-on-background);
}

.on-background-text {
  color: var(--md-sys-color-on-background);
}

.surface, .switch label input[type=checkbox]:checked + .lever:after {
  background-color: var(--md-sys-color-surface);
}

.surface-text {
  color: var(--md-sys-color-surface);
}

.on-surface {
  background-color: var(--md-sys-color-on-surface);
}

.on-surface-text {
  color: var(--md-sys-color-on-surface);
}

.surface-variant, .progress, input[type=range]::-moz-range-track, input[type=range]::-webkit-slider-runnable-track, .switch label .lever {
  background-color: var(--md-sys-color-surface-variant);
}

.surface-variant-text {
  color: var(--md-sys-color-surface-variant);
}

.on-surface-variant {
  background-color: var(--md-sys-color-on-surface-variant);
}

.on-surface-variant-text, .chip > .material-icons {
  color: var(--md-sys-color-on-surface-variant);
}

.outline, .switch label .lever:after {
  background-color: var(--md-sys-color-outline);
}

.outline-text {
  color: var(--md-sys-color-outline);
}

.inverse-on-surface {
  background-color: var(--md-sys-color-inverse-on-surface);
}

.inverse-on-surface-text {
  color: var(--md-sys-color-inverse-on-surface);
}

.inverse-surface {
  background-color: var(--md-sys-color-inverse-surface);
}

.inverse-surface-text {
  color: var(--md-sys-color-inverse-surface);
}

.inverse-primary {
  background-color: var(--md-sys-color-inverse-primary);
}

.inverse-primary-text {
  color: var(--md-sys-color-inverse-primary);
}

.shadow {
  background-color: var(--md-sys-color-shadow);
}

.shadow-text {
  color: var(--md-sys-color-shadow);
}

.surface-tint {
  background-color: var(--md-sys-color-surface-tint);
}

.surface-tint-text {
  color: var(--md-sys-color-surface-tint);
}

.outline-variant {
  background-color: var(--md-sys-color-outline-variant);
}

.outline-variant-text {
  color: var(--md-sys-color-outline-variant);
}

.scrim {
  background-color: var(--md-sys-color-scrim);
}

.scrim-text {
  color: var(--md-sys-color-scrim);
}

.display-large {
  font-family: var(--md-sys-typescale-display-large-font-family-name);
  font-style: var(--md-sys-typescale-display-large-font-family-style);
  font-weight: var(--md-sys-typescale-display-large-font-weight);
  font-size: var(--md-sys-typescale-display-large-font-size);
  letter-spacing: var(--md-sys-typescale-display-large-tracking);
  line-height: var(--md-sys-typescale-display-large-height);
  text-transform: var(--md-sys-typescale-display-large-text-transform);
  text-decoration: var(--md-sys-typescale-display-large-text-decoration);
}

.display-medium {
  font-family: var(--md-sys-typescale-display-medium-font-family-name);
  font-style: var(--md-sys-typescale-display-medium-font-family-style);
  font-weight: var(--md-sys-typescale-display-medium-font-weight);
  font-size: var(--md-sys-typescale-display-medium-font-size);
  letter-spacing: var(--md-sys-typescale-display-medium-tracking);
  line-height: var(--md-sys-typescale-display-medium-height);
  text-transform: var(--md-sys-typescale-display-medium-text-transform);
  text-decoration: var(--md-sys-typescale-display-medium-text-decoration);
}

.display-small {
  font-family: var(--md-sys-typescale-display-small-font-family-name);
  font-style: var(--md-sys-typescale-display-small-font-family-style);
  font-weight: var(--md-sys-typescale-display-small-font-weight);
  font-size: var(--md-sys-typescale-display-small-font-size);
  letter-spacing: var(--md-sys-typescale-display-small-tracking);
  line-height: var(--md-sys-typescale-display-small-height);
  text-transform: var(--md-sys-typescale-display-small-text-transform);
  text-decoration: var(--md-sys-typescale-display-small-text-decoration);
}

.headline-large {
  font-family: var(--md-sys-typescale-headline-large-font-family-name);
  font-style: var(--md-sys-typescale-headline-large-font-family-style);
  font-weight: var(--md-sys-typescale-headline-large-font-weight);
  font-size: var(--md-sys-typescale-headline-large-font-size);
  letter-spacing: var(--md-sys-typescale-headline-large-tracking);
  line-height: var(--md-sys-typescale-headline-large-height);
  text-transform: var(--md-sys-typescale-headline-large-text-transform);
  text-decoration: var(--md-sys-typescale-headline-large-text-decoration);
}

.headline-medium {
  font-family: var(--md-sys-typescale-headline-medium-font-family-name);
  font-style: var(--md-sys-typescale-headline-medium-font-family-style);
  font-weight: var(--md-sys-typescale-headline-medium-font-weight);
  font-size: var(--md-sys-typescale-headline-medium-font-size);
  letter-spacing: var(--md-sys-typescale-headline-medium-tracking);
  line-height: var(--md-sys-typescale-headline-medium-height);
  text-transform: var(--md-sys-typescale-headline-medium-text-transform);
  text-decoration: var(--md-sys-typescale-headline-medium-text-decoration);
}

.headline-small {
  font-family: var(--md-sys-typescale-headline-small-font-family-name);
  font-style: var(--md-sys-typescale-headline-small-font-family-style);
  font-weight: var(--md-sys-typescale-headline-small-font-weight);
  font-size: var(--md-sys-typescale-headline-small-font-size);
  letter-spacing: var(--md-sys-typescale-headline-small-tracking);
  line-height: var(--md-sys-typescale-headline-small-height);
  text-transform: var(--md-sys-typescale-headline-small-text-transform);
  text-decoration: var(--md-sys-typescale-headline-small-text-decoration);
}

.body-large {
  font-family: var(--md-sys-typescale-body-large-font-family-name);
  font-style: var(--md-sys-typescale-body-large-font-family-style);
  font-weight: var(--md-sys-typescale-body-large-font-weight);
  font-size: var(--md-sys-typescale-body-large-font-size);
  letter-spacing: var(--md-sys-typescale-body-large-tracking);
  line-height: var(--md-sys-typescale-body-large-height);
  text-transform: var(--md-sys-typescale-body-large-text-transform);
  text-decoration: var(--md-sys-typescale-body-large-text-decoration);
}

.body-medium {
  font-family: var(--md-sys-typescale-body-medium-font-family-name);
  font-style: var(--md-sys-typescale-body-medium-font-family-style);
  font-weight: var(--md-sys-typescale-body-medium-font-weight);
  font-size: var(--md-sys-typescale-body-medium-font-size);
  letter-spacing: var(--md-sys-typescale-body-medium-tracking);
  line-height: var(--md-sys-typescale-body-medium-height);
  text-transform: var(--md-sys-typescale-body-medium-text-transform);
  text-decoration: var(--md-sys-typescale-body-medium-text-decoration);
}

.body-small {
  font-family: var(--md-sys-typescale-body-small-font-family-name);
  font-style: var(--md-sys-typescale-body-small-font-family-style);
  font-weight: var(--md-sys-typescale-body-small-font-weight);
  font-size: var(--md-sys-typescale-body-small-font-size);
  letter-spacing: var(--md-sys-typescale-body-small-tracking);
  line-height: var(--md-sys-typescale-body-small-height);
  text-transform: var(--md-sys-typescale-body-small-text-transform);
  text-decoration: var(--md-sys-typescale-body-small-text-decoration);
}

.label-large {
  font-family: var(--md-sys-typescale-label-large-font-family-name);
  font-style: var(--md-sys-typescale-label-large-font-family-style);
  font-weight: var(--md-sys-typescale-label-large-font-weight);
  font-size: var(--md-sys-typescale-label-large-font-size);
  letter-spacing: var(--md-sys-typescale-label-large-tracking);
  line-height: var(--md-sys-typescale-label-large-height);
  text-transform: var(--md-sys-typescale-label-large-text-transform);
  text-decoration: var(--md-sys-typescale-label-large-text-decoration);
}

.label-medium {
  font-family: var(--md-sys-typescale-label-medium-font-family-name);
  font-style: var(--md-sys-typescale-label-medium-font-family-style);
  font-weight: var(--md-sys-typescale-label-medium-font-weight);
  font-size: var(--md-sys-typescale-label-medium-font-size);
  letter-spacing: var(--md-sys-typescale-label-medium-tracking);
  line-height: var(--md-sys-typescale-label-medium-height);
  text-transform: var(--md-sys-typescale-label-medium-text-transform);
  text-decoration: var(--md-sys-typescale-label-medium-text-decoration);
}

.label-small {
  font-family: var(--md-sys-typescale-label-small-font-family-name);
  font-style: var(--md-sys-typescale-label-small-font-family-style);
  font-weight: var(--md-sys-typescale-label-small-font-weight);
  font-size: var(--md-sys-typescale-label-small-font-size);
  letter-spacing: var(--md-sys-typescale-label-small-tracking);
  line-height: var(--md-sys-typescale-label-small-height);
  text-transform: var(--md-sys-typescale-label-small-text-transform);
  text-decoration: var(--md-sys-typescale-label-small-text-decoration);
}

.title-large {
  font-family: var(--md-sys-typescale-title-large-font-family-name);
  font-style: var(--md-sys-typescale-title-large-font-family-style);
  font-weight: var(--md-sys-typescale-title-large-font-weight);
  font-size: var(--md-sys-typescale-title-large-font-size);
  letter-spacing: var(--md-sys-typescale-title-large-tracking);
  line-height: var(--md-sys-typescale-title-large-height);
  text-transform: var(--md-sys-typescale-title-large-text-transform);
  text-decoration: var(--md-sys-typescale-title-large-text-decoration);
}

.title-medium {
  font-family: var(--md-sys-typescale-title-medium-font-family-name);
  font-style: var(--md-sys-typescale-title-medium-font-family-style);
  font-weight: var(--md-sys-typescale-title-medium-font-weight);
  font-size: var(--md-sys-typescale-title-medium-font-size);
  letter-spacing: var(--md-sys-typescale-title-medium-tracking);
  line-height: var(--md-sys-typescale-title-medium-height);
  text-transform: var(--md-sys-typescale-title-medium-text-transform);
  text-decoration: var(--md-sys-typescale-title-medium-text-decoration);
}

.title-small {
  font-family: var(--md-sys-typescale-title-small-font-family-name);
  font-style: var(--md-sys-typescale-title-small-font-family-style);
  font-weight: var(--md-sys-typescale-title-small-font-weight);
  font-size: var(--md-sys-typescale-title-small-font-size);
  letter-spacing: var(--md-sys-typescale-title-small-tracking);
  line-height: var(--md-sys-typescale-title-small-height);
  text-transform: var(--md-sys-typescale-title-small-text-transform);
  text-decoration: var(--md-sys-typescale-title-small-text-decoration);
}

:root {
  --md-sys-color-primary: var(--md-sys-color-primary-light);
  --md-sys-color-on-primary: var(--md-sys-color-on-primary-light);
  --md-sys-color-primary-container: var(--md-sys-color-primary-container-light);
  --md-sys-color-on-primary-container: var(--md-sys-color-on-primary-container-light);
  --md-sys-color-secondary: var(--md-sys-color-secondary-light);
  --md-sys-color-on-secondary: var(--md-sys-color-on-secondary-light);
  --md-sys-color-secondary-container: var(--md-sys-color-secondary-container-light);
  --md-sys-color-on-secondary-container: var(--md-sys-color-on-secondary-container-light);
  --md-sys-color-tertiary: var(--md-sys-color-tertiary-light);
  --md-sys-color-on-tertiary: var(--md-sys-color-on-tertiary-light);
  --md-sys-color-tertiary-container: var(--md-sys-color-tertiary-container-light);
  --md-sys-color-on-tertiary-container: var(--md-sys-color-on-tertiary-container-light);
  --md-sys-color-error: var(--md-sys-color-error-light);
  --md-sys-color-on-error: var(--md-sys-color-on-error-light);
  --md-sys-color-error-container: var(--md-sys-color-error-container-light);
  --md-sys-color-on-error-container: var(--md-sys-color-on-error-container-light);
  --md-sys-color-outline: var(--md-sys-color-outline-light);
  --md-sys-color-background: var(--md-sys-color-background-light);
  --md-sys-color-on-background: var(--md-sys-color-on-background-light);
  --md-sys-color-surface: var(--md-sys-color-surface-light);
  --md-sys-color-on-surface: var(--md-sys-color-on-surface-light);
  --md-sys-color-surface-variant: var(--md-sys-color-surface-variant-light);
  --md-sys-color-on-surface-variant: var(--md-sys-color-on-surface-variant-light);
  --md-sys-color-inverse-surface: var(--md-sys-color-inverse-surface-light);
  --md-sys-color-inverse-on-surface: var(--md-sys-color-inverse-on-surface-light);
  --md-sys-color-inverse-primary: var(--md-sys-color-inverse-primary-light);
  --md-sys-color-shadow: var(--md-sys-color-shadow-light);
  --md-sys-color-surface-tint: var(--md-sys-color-surface-tint-light);
  --md-sys-color-outline-variant: var(--md-sys-color-outline-variant-light);
  --md-sys-color-scrim: var(--md-sys-color-scrim-light);
}

:root[theme=dark] {
  --md-sys-color-primary: var(--md-sys-color-primary-dark);
  --md-sys-color-on-primary: var(--md-sys-color-on-primary-dark);
  --md-sys-color-primary-container: var(--md-sys-color-primary-container-dark);
  --md-sys-color-on-primary-container: var(--md-sys-color-on-primary-container-dark);
  --md-sys-color-secondary: var(--md-sys-color-secondary-dark);
  --md-sys-color-on-secondary: var(--md-sys-color-on-secondary-dark);
  --md-sys-color-secondary-container: var(--md-sys-color-secondary-container-dark);
  --md-sys-color-on-secondary-container: var(--md-sys-color-on-secondary-container-dark);
  --md-sys-color-tertiary: var(--md-sys-color-tertiary-dark);
  --md-sys-color-on-tertiary: var(--md-sys-color-on-tertiary-dark);
  --md-sys-color-tertiary-container: var(--md-sys-color-tertiary-container-dark);
  --md-sys-color-on-tertiary-container: var(--md-sys-color-on-tertiary-container-dark);
  --md-sys-color-error: var(--md-sys-color-error-dark);
  --md-sys-color-on-error: var(--md-sys-color-on-error-dark);
  --md-sys-color-error-container: var(--md-sys-color-error-container-dark);
  --md-sys-color-on-error-container: var(--md-sys-color-on-error-container-dark);
  --md-sys-color-outline: var(--md-sys-color-outline-dark);
  --md-sys-color-background: var(--md-sys-color-background-dark);
  --md-sys-color-on-background: var(--md-sys-color-on-background-dark);
  --md-sys-color-surface: var(--md-sys-color-surface-dark);
  --md-sys-color-on-surface: var(--md-sys-color-on-surface-dark);
  --md-sys-color-surface-variant: var(--md-sys-color-surface-variant-dark);
  --md-sys-color-on-surface-variant: var(--md-sys-color-on-surface-variant-dark);
  --md-sys-color-inverse-surface: var(--md-sys-color-inverse-surface-dark);
  --md-sys-color-inverse-on-surface: var(--md-sys-color-inverse-on-surface-dark);
  --md-sys-color-inverse-primary: var(--md-sys-color-inverse-primary-dark);
  --md-sys-color-shadow: var(--md-sys-color-shadow-dark);
  --md-sys-color-surface-tint: var(--md-sys-color-surface-tint-dark);
  --md-sys-color-outline-variant: var(--md-sys-color-outline-variant-dark);
  --md-sys-color-scrim: var(--md-sys-color-scrim-dark);
}

:root, :host {
  --surface-color: var(--md-sys-color-surface);
  --background-color: var(--md-sys-color-background);
  --font-color-main: var(--md-sys-color-on-background);
  --font-color-medium: var(--md-sys-color-on-surface-variant);
  --font-color-disabled: var(--md-sys-color-on-surface);
  --font-on-primary-color-main: var(--md-sys-color-on-primary);
  --font-on-primary-color-dark-main: var(--md-sys-color-on-primary-dark);
  --font-on-primary-color-dark-medium: var(--md-sys-color-on-surface-variant-dark);
  --font-on-primary-color-medium: var(--md-sys-color-on-surface-variant);
  --font-on-primary-color-disabled: rgba(255, 255, 255, 0.38);
  --font-on-secondary-color-main: var(--md-sys-color-on-secondary);
  --hover-color: rgba(0, 0, 0, 0.04);
  --focus-color: rgba(0, 0, 0, 0.12);
  --focus-color-solid: #E0E0E0;
  --background-color-disabled: rgba(0, 0, 0, 0.12);
  --background-color-level-4dp: rgba(0, 0, 0, 0.09);
  --background-color-level-16dp-solid: var(--surface-color);
  --background-color-slight-emphasis: rgba(0, 0, 0, 0.08);
  --background-color-card: var(--surface-color);
  --tooltip-background-color: #313033;
  --tooltip-font-color: rgba(255, 255, 255, 0.77);
  --separator-color: #DDDDDD; /* borders between components */
  --error-color: #F44336;
  --slider-track-color: var(--md-sys-color-shadow-light);
  --switch-thumb-off-color: var(--md-ref-palette-primary100);
  --carousel-indicator-color: rgba(255, 255, 255, 0.45);
  --carousel-indicator-active-color: var(--md-ref-palette-primary100);
  --primary-color: var(--md-sys-color-primary);
  --primary-color-dark: var(--md-sys-color-primary-dark);
  --primary-color-raised-hover-solid: var(--md-ref-palette-primary70);
  --primary-color-raised-focus-solid: var(--md-ref-palette-primary80);
  --primary-color-font-medium-color: rgba(var(--primary-color-numeric), 0.7);
  --primary-color-font-disabled-color: rgba(var(--primary-color-numeric), 0.4);
  --primary-color-hover-opaque: rgba(var(--primary-color-numeric), 0.06);
  --primary-color-focus-opaque: rgba(var(--primary-color-numeric), 0.18);
  --secondary-color: var(--md-sys-color-secondary);
  --secondary-color-hover-solid: var(--md-ref-palette-secondary70);
  --secondary-color-focus-solid: var(--md-ref-palette-secondary80);
  --secondary-container-color: var(--md-sys-color-secondary-container);
  --font-on-secondary-container-color: var(--md-sys-color-on-secondary-container);
  --md_sys_color_on-surface: 28, 27, 31;
}

:root[theme=dark] {
  --font-on-primary-color-disabled: rgba(0, 0, 0, 0.38);
  --hover-color: rgba(255, 255, 255, 0.04);
  --focus-color: rgba(255, 255, 255, 0.12);
  --focus-color-solid: #424242;
  --background-color-disabled: rgba(255, 255, 255, 0.12);
  --background-color-level-4dp: rgba(255, 255, 255, 0.09);
  --background-color-slight-emphasis: rgba(255, 255, 255, 0.05);
  --separator-color: #424242; /* borders between components */
  --error-color: #CF6679;
  --switch-thumb-off-color: #bababa;
  --md_sys_color_on-surface: 230, 225, 229;
}

.materialize-red {
  background-color: #e51c23 !important;
}

.materialize-red-text {
  color: #e51c23 !important;
}

.materialize-red.lighten-5 {
  background-color: #fdeaeb !important;
}

.materialize-red-text.text-lighten-5 {
  color: #fdeaeb !important;
}

.materialize-red.lighten-4 {
  background-color: #f8c1c3 !important;
}

.materialize-red-text.text-lighten-4 {
  color: #f8c1c3 !important;
}

.materialize-red.lighten-3 {
  background-color: #f3989b !important;
}

.materialize-red-text.text-lighten-3 {
  color: #f3989b !important;
}

.materialize-red.lighten-2 {
  background-color: #ee6e73 !important;
}

.materialize-red-text.text-lighten-2 {
  color: #ee6e73 !important;
}

.materialize-red.lighten-1 {
  background-color: #ea454b !important;
}

.materialize-red-text.text-lighten-1 {
  color: #ea454b !important;
}

.materialize-red.darken-1 {
  background-color: #d0181e !important;
}

.materialize-red-text.text-darken-1 {
  color: #d0181e !important;
}

.materialize-red.darken-2 {
  background-color: #b9151b !important;
}

.materialize-red-text.text-darken-2 {
  color: #b9151b !important;
}

.materialize-red.darken-3 {
  background-color: #a21318 !important;
}

.materialize-red-text.text-darken-3 {
  color: #a21318 !important;
}

.materialize-red.darken-4 {
  background-color: #8b1014 !important;
}

.materialize-red-text.text-darken-4 {
  color: #8b1014 !important;
}

.red {
  background-color: #F44336 !important;
}

.red-text {
  color: #F44336 !important;
}

.red.lighten-5 {
  background-color: #FFEBEE !important;
}

.red-text.text-lighten-5 {
  color: #FFEBEE !important;
}

.red.lighten-4 {
  background-color: #FFCDD2 !important;
}

.red-text.text-lighten-4 {
  color: #FFCDD2 !important;
}

.red.lighten-3 {
  background-color: #EF9A9A !important;
}

.red-text.text-lighten-3 {
  color: #EF9A9A !important;
}

.red.lighten-2 {
  background-color: #E57373 !important;
}

.red-text.text-lighten-2 {
  color: #E57373 !important;
}

.red.lighten-1 {
  background-color: #EF5350 !important;
}

.red-text.text-lighten-1 {
  color: #EF5350 !important;
}

.red.darken-1 {
  background-color: #E53935 !important;
}

.red-text.text-darken-1 {
  color: #E53935 !important;
}

.red.darken-2 {
  background-color: #D32F2F !important;
}

.red-text.text-darken-2 {
  color: #D32F2F !important;
}

.red.darken-3 {
  background-color: #C62828 !important;
}

.red-text.text-darken-3 {
  color: #C62828 !important;
}

.red.darken-4 {
  background-color: #B71C1C !important;
}

.red-text.text-darken-4 {
  color: #B71C1C !important;
}

.red.accent-1 {
  background-color: #FF8A80 !important;
}

.red-text.text-accent-1 {
  color: #FF8A80 !important;
}

.red.accent-2 {
  background-color: #FF5252 !important;
}

.red-text.text-accent-2 {
  color: #FF5252 !important;
}

.red.accent-3 {
  background-color: #FF1744 !important;
}

.red-text.text-accent-3 {
  color: #FF1744 !important;
}

.red.accent-4 {
  background-color: #D50000 !important;
}

.red-text.text-accent-4 {
  color: #D50000 !important;
}

.pink {
  background-color: #e91e63 !important;
}

.pink-text {
  color: #e91e63 !important;
}

.pink.lighten-5 {
  background-color: #fce4ec !important;
}

.pink-text.text-lighten-5 {
  color: #fce4ec !important;
}

.pink.lighten-4 {
  background-color: #f8bbd0 !important;
}

.pink-text.text-lighten-4 {
  color: #f8bbd0 !important;
}

.pink.lighten-3 {
  background-color: #f48fb1 !important;
}

.pink-text.text-lighten-3 {
  color: #f48fb1 !important;
}

.pink.lighten-2 {
  background-color: #f06292 !important;
}

.pink-text.text-lighten-2 {
  color: #f06292 !important;
}

.pink.lighten-1 {
  background-color: #ec407a !important;
}

.pink-text.text-lighten-1 {
  color: #ec407a !important;
}

.pink.darken-1 {
  background-color: #d81b60 !important;
}

.pink-text.text-darken-1 {
  color: #d81b60 !important;
}

.pink.darken-2 {
  background-color: #c2185b !important;
}

.pink-text.text-darken-2 {
  color: #c2185b !important;
}

.pink.darken-3 {
  background-color: #ad1457 !important;
}

.pink-text.text-darken-3 {
  color: #ad1457 !important;
}

.pink.darken-4 {
  background-color: #880e4f !important;
}

.pink-text.text-darken-4 {
  color: #880e4f !important;
}

.pink.accent-1 {
  background-color: #ff80ab !important;
}

.pink-text.text-accent-1 {
  color: #ff80ab !important;
}

.pink.accent-2 {
  background-color: #ff4081 !important;
}

.pink-text.text-accent-2 {
  color: #ff4081 !important;
}

.pink.accent-3 {
  background-color: #f50057 !important;
}

.pink-text.text-accent-3 {
  color: #f50057 !important;
}

.pink.accent-4 {
  background-color: #c51162 !important;
}

.pink-text.text-accent-4 {
  color: #c51162 !important;
}

.purple {
  background-color: #9c27b0 !important;
}

.purple-text {
  color: #9c27b0 !important;
}

.purple.lighten-5 {
  background-color: #f3e5f5 !important;
}

.purple-text.text-lighten-5 {
  color: #f3e5f5 !important;
}

.purple.lighten-4 {
  background-color: #e1bee7 !important;
}

.purple-text.text-lighten-4 {
  color: #e1bee7 !important;
}

.purple.lighten-3 {
  background-color: #ce93d8 !important;
}

.purple-text.text-lighten-3 {
  color: #ce93d8 !important;
}

.purple.lighten-2 {
  background-color: #ba68c8 !important;
}

.purple-text.text-lighten-2 {
  color: #ba68c8 !important;
}

.purple.lighten-1 {
  background-color: #ab47bc !important;
}

.purple-text.text-lighten-1 {
  color: #ab47bc !important;
}

.purple.darken-1 {
  background-color: #8e24aa !important;
}

.purple-text.text-darken-1 {
  color: #8e24aa !important;
}

.purple.darken-2 {
  background-color: #7b1fa2 !important;
}

.purple-text.text-darken-2 {
  color: #7b1fa2 !important;
}

.purple.darken-3 {
  background-color: #6a1b9a !important;
}

.purple-text.text-darken-3 {
  color: #6a1b9a !important;
}

.purple.darken-4 {
  background-color: #4a148c !important;
}

.purple-text.text-darken-4 {
  color: #4a148c !important;
}

.purple.accent-1 {
  background-color: #ea80fc !important;
}

.purple-text.text-accent-1 {
  color: #ea80fc !important;
}

.purple.accent-2 {
  background-color: #e040fb !important;
}

.purple-text.text-accent-2 {
  color: #e040fb !important;
}

.purple.accent-3 {
  background-color: #d500f9 !important;
}

.purple-text.text-accent-3 {
  color: #d500f9 !important;
}

.purple.accent-4 {
  background-color: #aa00ff !important;
}

.purple-text.text-accent-4 {
  color: #aa00ff !important;
}

.deep-purple {
  background-color: #673ab7 !important;
}

.deep-purple-text {
  color: #673ab7 !important;
}

.deep-purple.lighten-5 {
  background-color: #ede7f6 !important;
}

.deep-purple-text.text-lighten-5 {
  color: #ede7f6 !important;
}

.deep-purple.lighten-4 {
  background-color: #d1c4e9 !important;
}

.deep-purple-text.text-lighten-4 {
  color: #d1c4e9 !important;
}

.deep-purple.lighten-3 {
  background-color: #b39ddb !important;
}

.deep-purple-text.text-lighten-3 {
  color: #b39ddb !important;
}

.deep-purple.lighten-2 {
  background-color: #9575cd !important;
}

.deep-purple-text.text-lighten-2 {
  color: #9575cd !important;
}

.deep-purple.lighten-1 {
  background-color: #7e57c2 !important;
}

.deep-purple-text.text-lighten-1 {
  color: #7e57c2 !important;
}

.deep-purple.darken-1 {
  background-color: #5e35b1 !important;
}

.deep-purple-text.text-darken-1 {
  color: #5e35b1 !important;
}

.deep-purple.darken-2 {
  background-color: #512da8 !important;
}

.deep-purple-text.text-darken-2 {
  color: #512da8 !important;
}

.deep-purple.darken-3 {
  background-color: #4527a0 !important;
}

.deep-purple-text.text-darken-3 {
  color: #4527a0 !important;
}

.deep-purple.darken-4 {
  background-color: #311b92 !important;
}

.deep-purple-text.text-darken-4 {
  color: #311b92 !important;
}

.deep-purple.accent-1 {
  background-color: #b388ff !important;
}

.deep-purple-text.text-accent-1 {
  color: #b388ff !important;
}

.deep-purple.accent-2 {
  background-color: #7c4dff !important;
}

.deep-purple-text.text-accent-2 {
  color: #7c4dff !important;
}

.deep-purple.accent-3 {
  background-color: #651fff !important;
}

.deep-purple-text.text-accent-3 {
  color: #651fff !important;
}

.deep-purple.accent-4 {
  background-color: #6200ea !important;
}

.deep-purple-text.text-accent-4 {
  color: #6200ea !important;
}

.indigo {
  background-color: #3f51b5 !important;
}

.indigo-text {
  color: #3f51b5 !important;
}

.indigo.lighten-5 {
  background-color: #e8eaf6 !important;
}

.indigo-text.text-lighten-5 {
  color: #e8eaf6 !important;
}

.indigo.lighten-4 {
  background-color: #c5cae9 !important;
}

.indigo-text.text-lighten-4 {
  color: #c5cae9 !important;
}

.indigo.lighten-3 {
  background-color: #9fa8da !important;
}

.indigo-text.text-lighten-3 {
  color: #9fa8da !important;
}

.indigo.lighten-2 {
  background-color: #7986cb !important;
}

.indigo-text.text-lighten-2 {
  color: #7986cb !important;
}

.indigo.lighten-1 {
  background-color: #5c6bc0 !important;
}

.indigo-text.text-lighten-1 {
  color: #5c6bc0 !important;
}

.indigo.darken-1 {
  background-color: #3949ab !important;
}

.indigo-text.text-darken-1 {
  color: #3949ab !important;
}

.indigo.darken-2 {
  background-color: #303f9f !important;
}

.indigo-text.text-darken-2 {
  color: #303f9f !important;
}

.indigo.darken-3 {
  background-color: #283593 !important;
}

.indigo-text.text-darken-3 {
  color: #283593 !important;
}

.indigo.darken-4 {
  background-color: #1a237e !important;
}

.indigo-text.text-darken-4 {
  color: #1a237e !important;
}

.indigo.accent-1 {
  background-color: #8c9eff !important;
}

.indigo-text.text-accent-1 {
  color: #8c9eff !important;
}

.indigo.accent-2 {
  background-color: #536dfe !important;
}

.indigo-text.text-accent-2 {
  color: #536dfe !important;
}

.indigo.accent-3 {
  background-color: #3d5afe !important;
}

.indigo-text.text-accent-3 {
  color: #3d5afe !important;
}

.indigo.accent-4 {
  background-color: #304ffe !important;
}

.indigo-text.text-accent-4 {
  color: #304ffe !important;
}

.blue {
  background-color: #2196F3 !important;
}

.blue-text {
  color: #2196F3 !important;
}

.blue.lighten-5 {
  background-color: #E3F2FD !important;
}

.blue-text.text-lighten-5 {
  color: #E3F2FD !important;
}

.blue.lighten-4 {
  background-color: #BBDEFB !important;
}

.blue-text.text-lighten-4 {
  color: #BBDEFB !important;
}

.blue.lighten-3 {
  background-color: #90CAF9 !important;
}

.blue-text.text-lighten-3 {
  color: #90CAF9 !important;
}

.blue.lighten-2 {
  background-color: #64B5F6 !important;
}

.blue-text.text-lighten-2 {
  color: #64B5F6 !important;
}

.blue.lighten-1 {
  background-color: #42A5F5 !important;
}

.blue-text.text-lighten-1 {
  color: #42A5F5 !important;
}

.blue.darken-1 {
  background-color: #1E88E5 !important;
}

.blue-text.text-darken-1 {
  color: #1E88E5 !important;
}

.blue.darken-2 {
  background-color: #1976D2 !important;
}

.blue-text.text-darken-2 {
  color: #1976D2 !important;
}

.blue.darken-3 {
  background-color: #1565C0 !important;
}

.blue-text.text-darken-3 {
  color: #1565C0 !important;
}

.blue.darken-4 {
  background-color: #0D47A1 !important;
}

.blue-text.text-darken-4 {
  color: #0D47A1 !important;
}

.blue.accent-1 {
  background-color: #82B1FF !important;
}

.blue-text.text-accent-1 {
  color: #82B1FF !important;
}

.blue.accent-2 {
  background-color: #448AFF !important;
}

.blue-text.text-accent-2 {
  color: #448AFF !important;
}

.blue.accent-3 {
  background-color: #2979FF !important;
}

.blue-text.text-accent-3 {
  color: #2979FF !important;
}

.blue.accent-4 {
  background-color: #2962FF !important;
}

.blue-text.text-accent-4 {
  color: #2962FF !important;
}

.light-blue {
  background-color: #03a9f4 !important;
}

.light-blue-text {
  color: #03a9f4 !important;
}

.light-blue.lighten-5 {
  background-color: #e1f5fe !important;
}

.light-blue-text.text-lighten-5 {
  color: #e1f5fe !important;
}

.light-blue.lighten-4 {
  background-color: #b3e5fc !important;
}

.light-blue-text.text-lighten-4 {
  color: #b3e5fc !important;
}

.light-blue.lighten-3 {
  background-color: #81d4fa !important;
}

.light-blue-text.text-lighten-3 {
  color: #81d4fa !important;
}

.light-blue.lighten-2 {
  background-color: #4fc3f7 !important;
}

.light-blue-text.text-lighten-2 {
  color: #4fc3f7 !important;
}

.light-blue.lighten-1 {
  background-color: #29b6f6 !important;
}

.light-blue-text.text-lighten-1 {
  color: #29b6f6 !important;
}

.light-blue.darken-1 {
  background-color: #039be5 !important;
}

.light-blue-text.text-darken-1 {
  color: #039be5 !important;
}

.light-blue.darken-2 {
  background-color: #0288d1 !important;
}

.light-blue-text.text-darken-2 {
  color: #0288d1 !important;
}

.light-blue.darken-3 {
  background-color: #0277bd !important;
}

.light-blue-text.text-darken-3 {
  color: #0277bd !important;
}

.light-blue.darken-4 {
  background-color: #01579b !important;
}

.light-blue-text.text-darken-4 {
  color: #01579b !important;
}

.light-blue.accent-1 {
  background-color: #80d8ff !important;
}

.light-blue-text.text-accent-1 {
  color: #80d8ff !important;
}

.light-blue.accent-2 {
  background-color: #40c4ff !important;
}

.light-blue-text.text-accent-2 {
  color: #40c4ff !important;
}

.light-blue.accent-3 {
  background-color: #00b0ff !important;
}

.light-blue-text.text-accent-3 {
  color: #00b0ff !important;
}

.light-blue.accent-4 {
  background-color: #0091ea !important;
}

.light-blue-text.text-accent-4 {
  color: #0091ea !important;
}

.cyan {
  background-color: #00bcd4 !important;
}

.cyan-text {
  color: #00bcd4 !important;
}

.cyan.lighten-5 {
  background-color: #e0f7fa !important;
}

.cyan-text.text-lighten-5 {
  color: #e0f7fa !important;
}

.cyan.lighten-4 {
  background-color: #b2ebf2 !important;
}

.cyan-text.text-lighten-4 {
  color: #b2ebf2 !important;
}

.cyan.lighten-3 {
  background-color: #80deea !important;
}

.cyan-text.text-lighten-3 {
  color: #80deea !important;
}

.cyan.lighten-2 {
  background-color: #4dd0e1 !important;
}

.cyan-text.text-lighten-2 {
  color: #4dd0e1 !important;
}

.cyan.lighten-1 {
  background-color: #26c6da !important;
}

.cyan-text.text-lighten-1 {
  color: #26c6da !important;
}

.cyan.darken-1 {
  background-color: #00acc1 !important;
}

.cyan-text.text-darken-1 {
  color: #00acc1 !important;
}

.cyan.darken-2 {
  background-color: #0097a7 !important;
}

.cyan-text.text-darken-2 {
  color: #0097a7 !important;
}

.cyan.darken-3 {
  background-color: #00838f !important;
}

.cyan-text.text-darken-3 {
  color: #00838f !important;
}

.cyan.darken-4 {
  background-color: #006064 !important;
}

.cyan-text.text-darken-4 {
  color: #006064 !important;
}

.cyan.accent-1 {
  background-color: #84ffff !important;
}

.cyan-text.text-accent-1 {
  color: #84ffff !important;
}

.cyan.accent-2 {
  background-color: #18ffff !important;
}

.cyan-text.text-accent-2 {
  color: #18ffff !important;
}

.cyan.accent-3 {
  background-color: #00e5ff !important;
}

.cyan-text.text-accent-3 {
  color: #00e5ff !important;
}

.cyan.accent-4 {
  background-color: #00b8d4 !important;
}

.cyan-text.text-accent-4 {
  color: #00b8d4 !important;
}

.teal {
  background-color: #009688 !important;
}

.teal-text {
  color: #009688 !important;
}

.teal.lighten-5 {
  background-color: #e0f2f1 !important;
}

.teal-text.text-lighten-5 {
  color: #e0f2f1 !important;
}

.teal.lighten-4 {
  background-color: #b2dfdb !important;
}

.teal-text.text-lighten-4 {
  color: #b2dfdb !important;
}

.teal.lighten-3 {
  background-color: #80cbc4 !important;
}

.teal-text.text-lighten-3 {
  color: #80cbc4 !important;
}

.teal.lighten-2 {
  background-color: #4db6ac !important;
}

.teal-text.text-lighten-2 {
  color: #4db6ac !important;
}

.teal.lighten-1 {
  background-color: #26a69a !important;
}

.teal-text.text-lighten-1 {
  color: #26a69a !important;
}

.teal.darken-1 {
  background-color: #00897b !important;
}

.teal-text.text-darken-1 {
  color: #00897b !important;
}

.teal.darken-2 {
  background-color: #00796b !important;
}

.teal-text.text-darken-2 {
  color: #00796b !important;
}

.teal.darken-3 {
  background-color: #00695c !important;
}

.teal-text.text-darken-3 {
  color: #00695c !important;
}

.teal.darken-4 {
  background-color: #004d40 !important;
}

.teal-text.text-darken-4 {
  color: #004d40 !important;
}

.teal.accent-1 {
  background-color: #a7ffeb !important;
}

.teal-text.text-accent-1 {
  color: #a7ffeb !important;
}

.teal.accent-2 {
  background-color: #64ffda !important;
}

.teal-text.text-accent-2 {
  color: #64ffda !important;
}

.teal.accent-3 {
  background-color: #1de9b6 !important;
}

.teal-text.text-accent-3 {
  color: #1de9b6 !important;
}

.teal.accent-4 {
  background-color: #00bfa5 !important;
}

.teal-text.text-accent-4 {
  color: #00bfa5 !important;
}

.green {
  background-color: #4CAF50 !important;
}

.green-text {
  color: #4CAF50 !important;
}

.green.lighten-5 {
  background-color: #E8F5E9 !important;
}

.green-text.text-lighten-5 {
  color: #E8F5E9 !important;
}

.green.lighten-4 {
  background-color: #C8E6C9 !important;
}

.green-text.text-lighten-4 {
  color: #C8E6C9 !important;
}

.green.lighten-3 {
  background-color: #A5D6A7 !important;
}

.green-text.text-lighten-3 {
  color: #A5D6A7 !important;
}

.green.lighten-2 {
  background-color: #81C784 !important;
}

.green-text.text-lighten-2 {
  color: #81C784 !important;
}

.green.lighten-1 {
  background-color: #66BB6A !important;
}

.green-text.text-lighten-1 {
  color: #66BB6A !important;
}

.green.darken-1 {
  background-color: #43A047 !important;
}

.green-text.text-darken-1 {
  color: #43A047 !important;
}

.green.darken-2 {
  background-color: #388E3C !important;
}

.green-text.text-darken-2 {
  color: #388E3C !important;
}

.green.darken-3 {
  background-color: #2E7D32 !important;
}

.green-text.text-darken-3 {
  color: #2E7D32 !important;
}

.green.darken-4 {
  background-color: #1B5E20 !important;
}

.green-text.text-darken-4 {
  color: #1B5E20 !important;
}

.green.accent-1 {
  background-color: #B9F6CA !important;
}

.green-text.text-accent-1 {
  color: #B9F6CA !important;
}

.green.accent-2 {
  background-color: #69F0AE !important;
}

.green-text.text-accent-2 {
  color: #69F0AE !important;
}

.green.accent-3 {
  background-color: #00E676 !important;
}

.green-text.text-accent-3 {
  color: #00E676 !important;
}

.green.accent-4 {
  background-color: #00C853 !important;
}

.green-text.text-accent-4 {
  color: #00C853 !important;
}

.light-green {
  background-color: #8bc34a !important;
}

.light-green-text {
  color: #8bc34a !important;
}

.light-green.lighten-5 {
  background-color: #f1f8e9 !important;
}

.light-green-text.text-lighten-5 {
  color: #f1f8e9 !important;
}

.light-green.lighten-4 {
  background-color: #dcedc8 !important;
}

.light-green-text.text-lighten-4 {
  color: #dcedc8 !important;
}

.light-green.lighten-3 {
  background-color: #c5e1a5 !important;
}

.light-green-text.text-lighten-3 {
  color: #c5e1a5 !important;
}

.light-green.lighten-2 {
  background-color: #aed581 !important;
}

.light-green-text.text-lighten-2 {
  color: #aed581 !important;
}

.light-green.lighten-1 {
  background-color: #9ccc65 !important;
}

.light-green-text.text-lighten-1 {
  color: #9ccc65 !important;
}

.light-green.darken-1 {
  background-color: #7cb342 !important;
}

.light-green-text.text-darken-1 {
  color: #7cb342 !important;
}

.light-green.darken-2 {
  background-color: #689f38 !important;
}

.light-green-text.text-darken-2 {
  color: #689f38 !important;
}

.light-green.darken-3 {
  background-color: #558b2f !important;
}

.light-green-text.text-darken-3 {
  color: #558b2f !important;
}

.light-green.darken-4 {
  background-color: #33691e !important;
}

.light-green-text.text-darken-4 {
  color: #33691e !important;
}

.light-green.accent-1 {
  background-color: #ccff90 !important;
}

.light-green-text.text-accent-1 {
  color: #ccff90 !important;
}

.light-green.accent-2 {
  background-color: #b2ff59 !important;
}

.light-green-text.text-accent-2 {
  color: #b2ff59 !important;
}

.light-green.accent-3 {
  background-color: #76ff03 !important;
}

.light-green-text.text-accent-3 {
  color: #76ff03 !important;
}

.light-green.accent-4 {
  background-color: #64dd17 !important;
}

.light-green-text.text-accent-4 {
  color: #64dd17 !important;
}

.lime {
  background-color: #cddc39 !important;
}

.lime-text {
  color: #cddc39 !important;
}

.lime.lighten-5 {
  background-color: #f9fbe7 !important;
}

.lime-text.text-lighten-5 {
  color: #f9fbe7 !important;
}

.lime.lighten-4 {
  background-color: #f0f4c3 !important;
}

.lime-text.text-lighten-4 {
  color: #f0f4c3 !important;
}

.lime.lighten-3 {
  background-color: #e6ee9c !important;
}

.lime-text.text-lighten-3 {
  color: #e6ee9c !important;
}

.lime.lighten-2 {
  background-color: #dce775 !important;
}

.lime-text.text-lighten-2 {
  color: #dce775 !important;
}

.lime.lighten-1 {
  background-color: #d4e157 !important;
}

.lime-text.text-lighten-1 {
  color: #d4e157 !important;
}

.lime.darken-1 {
  background-color: #c0ca33 !important;
}

.lime-text.text-darken-1 {
  color: #c0ca33 !important;
}

.lime.darken-2 {
  background-color: #afb42b !important;
}

.lime-text.text-darken-2 {
  color: #afb42b !important;
}

.lime.darken-3 {
  background-color: #9e9d24 !important;
}

.lime-text.text-darken-3 {
  color: #9e9d24 !important;
}

.lime.darken-4 {
  background-color: #827717 !important;
}

.lime-text.text-darken-4 {
  color: #827717 !important;
}

.lime.accent-1 {
  background-color: #f4ff81 !important;
}

.lime-text.text-accent-1 {
  color: #f4ff81 !important;
}

.lime.accent-2 {
  background-color: #eeff41 !important;
}

.lime-text.text-accent-2 {
  color: #eeff41 !important;
}

.lime.accent-3 {
  background-color: #c6ff00 !important;
}

.lime-text.text-accent-3 {
  color: #c6ff00 !important;
}

.lime.accent-4 {
  background-color: #aeea00 !important;
}

.lime-text.text-accent-4 {
  color: #aeea00 !important;
}

.yellow {
  background-color: #ffeb3b !important;
}

.yellow-text {
  color: #ffeb3b !important;
}

.yellow.lighten-5 {
  background-color: #fffde7 !important;
}

.yellow-text.text-lighten-5 {
  color: #fffde7 !important;
}

.yellow.lighten-4 {
  background-color: #fff9c4 !important;
}

.yellow-text.text-lighten-4 {
  color: #fff9c4 !important;
}

.yellow.lighten-3 {
  background-color: #fff59d !important;
}

.yellow-text.text-lighten-3 {
  color: #fff59d !important;
}

.yellow.lighten-2 {
  background-color: #fff176 !important;
}

.yellow-text.text-lighten-2 {
  color: #fff176 !important;
}

.yellow.lighten-1 {
  background-color: #ffee58 !important;
}

.yellow-text.text-lighten-1 {
  color: #ffee58 !important;
}

.yellow.darken-1 {
  background-color: #fdd835 !important;
}

.yellow-text.text-darken-1 {
  color: #fdd835 !important;
}

.yellow.darken-2 {
  background-color: #fbc02d !important;
}

.yellow-text.text-darken-2 {
  color: #fbc02d !important;
}

.yellow.darken-3 {
  background-color: #f9a825 !important;
}

.yellow-text.text-darken-3 {
  color: #f9a825 !important;
}

.yellow.darken-4 {
  background-color: #f57f17 !important;
}

.yellow-text.text-darken-4 {
  color: #f57f17 !important;
}

.yellow.accent-1 {
  background-color: #ffff8d !important;
}

.yellow-text.text-accent-1 {
  color: #ffff8d !important;
}

.yellow.accent-2 {
  background-color: #ffff00 !important;
}

.yellow-text.text-accent-2 {
  color: #ffff00 !important;
}

.yellow.accent-3 {
  background-color: #ffea00 !important;
}

.yellow-text.text-accent-3 {
  color: #ffea00 !important;
}

.yellow.accent-4 {
  background-color: #ffd600 !important;
}

.yellow-text.text-accent-4 {
  color: #ffd600 !important;
}

.amber {
  background-color: #ffc107 !important;
}

.amber-text {
  color: #ffc107 !important;
}

.amber.lighten-5 {
  background-color: #fff8e1 !important;
}

.amber-text.text-lighten-5 {
  color: #fff8e1 !important;
}

.amber.lighten-4 {
  background-color: #ffecb3 !important;
}

.amber-text.text-lighten-4 {
  color: #ffecb3 !important;
}

.amber.lighten-3 {
  background-color: #ffe082 !important;
}

.amber-text.text-lighten-3 {
  color: #ffe082 !important;
}

.amber.lighten-2 {
  background-color: #ffd54f !important;
}

.amber-text.text-lighten-2 {
  color: #ffd54f !important;
}

.amber.lighten-1 {
  background-color: #ffca28 !important;
}

.amber-text.text-lighten-1 {
  color: #ffca28 !important;
}

.amber.darken-1 {
  background-color: #ffb300 !important;
}

.amber-text.text-darken-1 {
  color: #ffb300 !important;
}

.amber.darken-2 {
  background-color: #ffa000 !important;
}

.amber-text.text-darken-2 {
  color: #ffa000 !important;
}

.amber.darken-3 {
  background-color: #ff8f00 !important;
}

.amber-text.text-darken-3 {
  color: #ff8f00 !important;
}

.amber.darken-4 {
  background-color: #ff6f00 !important;
}

.amber-text.text-darken-4 {
  color: #ff6f00 !important;
}

.amber.accent-1 {
  background-color: #ffe57f !important;
}

.amber-text.text-accent-1 {
  color: #ffe57f !important;
}

.amber.accent-2 {
  background-color: #ffd740 !important;
}

.amber-text.text-accent-2 {
  color: #ffd740 !important;
}

.amber.accent-3 {
  background-color: #ffc400 !important;
}

.amber-text.text-accent-3 {
  color: #ffc400 !important;
}

.amber.accent-4 {
  background-color: #ffab00 !important;
}

.amber-text.text-accent-4 {
  color: #ffab00 !important;
}

.orange {
  background-color: #ff9800 !important;
}

.orange-text {
  color: #ff9800 !important;
}

.orange.lighten-5 {
  background-color: #fff3e0 !important;
}

.orange-text.text-lighten-5 {
  color: #fff3e0 !important;
}

.orange.lighten-4 {
  background-color: #ffe0b2 !important;
}

.orange-text.text-lighten-4 {
  color: #ffe0b2 !important;
}

.orange.lighten-3 {
  background-color: #ffcc80 !important;
}

.orange-text.text-lighten-3 {
  color: #ffcc80 !important;
}

.orange.lighten-2 {
  background-color: #ffb74d !important;
}

.orange-text.text-lighten-2 {
  color: #ffb74d !important;
}

.orange.lighten-1 {
  background-color: #ffa726 !important;
}

.orange-text.text-lighten-1 {
  color: #ffa726 !important;
}

.orange.darken-1 {
  background-color: #fb8c00 !important;
}

.orange-text.text-darken-1 {
  color: #fb8c00 !important;
}

.orange.darken-2 {
  background-color: #f57c00 !important;
}

.orange-text.text-darken-2 {
  color: #f57c00 !important;
}

.orange.darken-3 {
  background-color: #ef6c00 !important;
}

.orange-text.text-darken-3 {
  color: #ef6c00 !important;
}

.orange.darken-4 {
  background-color: #e65100 !important;
}

.orange-text.text-darken-4 {
  color: #e65100 !important;
}

.orange.accent-1 {
  background-color: #ffd180 !important;
}

.orange-text.text-accent-1 {
  color: #ffd180 !important;
}

.orange.accent-2 {
  background-color: #ffab40 !important;
}

.orange-text.text-accent-2 {
  color: #ffab40 !important;
}

.orange.accent-3 {
  background-color: #ff9100 !important;
}

.orange-text.text-accent-3 {
  color: #ff9100 !important;
}

.orange.accent-4 {
  background-color: #ff6d00 !important;
}

.orange-text.text-accent-4 {
  color: #ff6d00 !important;
}

.deep-orange {
  background-color: #ff5722 !important;
}

.deep-orange-text {
  color: #ff5722 !important;
}

.deep-orange.lighten-5 {
  background-color: #fbe9e7 !important;
}

.deep-orange-text.text-lighten-5 {
  color: #fbe9e7 !important;
}

.deep-orange.lighten-4 {
  background-color: #ffccbc !important;
}

.deep-orange-text.text-lighten-4 {
  color: #ffccbc !important;
}

.deep-orange.lighten-3 {
  background-color: #ffab91 !important;
}

.deep-orange-text.text-lighten-3 {
  color: #ffab91 !important;
}

.deep-orange.lighten-2 {
  background-color: #ff8a65 !important;
}

.deep-orange-text.text-lighten-2 {
  color: #ff8a65 !important;
}

.deep-orange.lighten-1 {
  background-color: #ff7043 !important;
}

.deep-orange-text.text-lighten-1 {
  color: #ff7043 !important;
}

.deep-orange.darken-1 {
  background-color: #f4511e !important;
}

.deep-orange-text.text-darken-1 {
  color: #f4511e !important;
}

.deep-orange.darken-2 {
  background-color: #e64a19 !important;
}

.deep-orange-text.text-darken-2 {
  color: #e64a19 !important;
}

.deep-orange.darken-3 {
  background-color: #d84315 !important;
}

.deep-orange-text.text-darken-3 {
  color: #d84315 !important;
}

.deep-orange.darken-4 {
  background-color: #bf360c !important;
}

.deep-orange-text.text-darken-4 {
  color: #bf360c !important;
}

.deep-orange.accent-1 {
  background-color: #ff9e80 !important;
}

.deep-orange-text.text-accent-1 {
  color: #ff9e80 !important;
}

.deep-orange.accent-2 {
  background-color: #ff6e40 !important;
}

.deep-orange-text.text-accent-2 {
  color: #ff6e40 !important;
}

.deep-orange.accent-3 {
  background-color: #ff3d00 !important;
}

.deep-orange-text.text-accent-3 {
  color: #ff3d00 !important;
}

.deep-orange.accent-4 {
  background-color: #dd2c00 !important;
}

.deep-orange-text.text-accent-4 {
  color: #dd2c00 !important;
}

.brown {
  background-color: #795548 !important;
}

.brown-text {
  color: #795548 !important;
}

.brown.lighten-5 {
  background-color: #efebe9 !important;
}

.brown-text.text-lighten-5 {
  color: #efebe9 !important;
}

.brown.lighten-4 {
  background-color: #d7ccc8 !important;
}

.brown-text.text-lighten-4 {
  color: #d7ccc8 !important;
}

.brown.lighten-3 {
  background-color: #bcaaa4 !important;
}

.brown-text.text-lighten-3 {
  color: #bcaaa4 !important;
}

.brown.lighten-2 {
  background-color: #a1887f !important;
}

.brown-text.text-lighten-2 {
  color: #a1887f !important;
}

.brown.lighten-1 {
  background-color: #8d6e63 !important;
}

.brown-text.text-lighten-1 {
  color: #8d6e63 !important;
}

.brown.darken-1 {
  background-color: #6d4c41 !important;
}

.brown-text.text-darken-1 {
  color: #6d4c41 !important;
}

.brown.darken-2 {
  background-color: #5d4037 !important;
}

.brown-text.text-darken-2 {
  color: #5d4037 !important;
}

.brown.darken-3 {
  background-color: #4e342e !important;
}

.brown-text.text-darken-3 {
  color: #4e342e !important;
}

.brown.darken-4 {
  background-color: #3e2723 !important;
}

.brown-text.text-darken-4 {
  color: #3e2723 !important;
}

.blue-grey {
  background-color: #607d8b !important;
}

.blue-grey-text {
  color: #607d8b !important;
}

.blue-grey.lighten-5 {
  background-color: #eceff1 !important;
}

.blue-grey-text.text-lighten-5 {
  color: #eceff1 !important;
}

.blue-grey.lighten-4 {
  background-color: #cfd8dc !important;
}

.blue-grey-text.text-lighten-4 {
  color: #cfd8dc !important;
}

.blue-grey.lighten-3 {
  background-color: #b0bec5 !important;
}

.blue-grey-text.text-lighten-3 {
  color: #b0bec5 !important;
}

.blue-grey.lighten-2 {
  background-color: #90a4ae !important;
}

.blue-grey-text.text-lighten-2 {
  color: #90a4ae !important;
}

.blue-grey.lighten-1 {
  background-color: #78909c !important;
}

.blue-grey-text.text-lighten-1 {
  color: #78909c !important;
}

.blue-grey.darken-1 {
  background-color: #546e7a !important;
}

.blue-grey-text.text-darken-1 {
  color: #546e7a !important;
}

.blue-grey.darken-2 {
  background-color: #455a64 !important;
}

.blue-grey-text.text-darken-2 {
  color: #455a64 !important;
}

.blue-grey.darken-3 {
  background-color: #37474f !important;
}

.blue-grey-text.text-darken-3 {
  color: #37474f !important;
}

.blue-grey.darken-4 {
  background-color: #263238 !important;
}

.blue-grey-text.text-darken-4 {
  color: #263238 !important;
}

.grey {
  background-color: #9e9e9e !important;
}

.grey-text {
  color: #9e9e9e !important;
}

.grey.lighten-5 {
  background-color: #fafafa !important;
}

.grey-text.text-lighten-5 {
  color: #fafafa !important;
}

.grey.lighten-4 {
  background-color: #f5f5f5 !important;
}

.grey-text.text-lighten-4 {
  color: #f5f5f5 !important;
}

.grey.lighten-3 {
  background-color: #eeeeee !important;
}

.grey-text.text-lighten-3 {
  color: #eeeeee !important;
}

.grey.lighten-2 {
  background-color: #e0e0e0 !important;
}

.grey-text.text-lighten-2 {
  color: #e0e0e0 !important;
}

.grey.lighten-1 {
  background-color: #bdbdbd !important;
}

.grey-text.text-lighten-1 {
  color: #bdbdbd !important;
}

.grey.darken-1 {
  background-color: #757575 !important;
}

.grey-text.text-darken-1 {
  color: #757575 !important;
}

.grey.darken-2 {
  background-color: #616161 !important;
}

.grey-text.text-darken-2 {
  color: #616161 !important;
}

.grey.darken-3 {
  background-color: #424242 !important;
}

.grey-text.text-darken-3 {
  color: #424242 !important;
}

.grey.darken-4 {
  background-color: #212121 !important;
}

.grey-text.text-darken-4 {
  color: #212121 !important;
}

.black {
  background-color: #000000 !important;
}

.black-text {
  color: #000000 !important;
}

.white {
  background-color: #FFFFFF !important;
}

.white-text {
  color: #FFFFFF !important;
}

.transparent {
  background-color: transparent !important;
}

.transparent-text {
  color: transparent !important;
}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

html {
  box-sizing: border-box;
}

*, *:before, *:after {
  box-sizing: inherit;
}

button,
input,
optgroup,
select,
textarea {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
}

a {
  color: #039be5;
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
}

.valign-wrapper {
  display: flex;
  align-items: center;
}

.clearfix {
  clear: both;
}

.z-depth-0 {
  box-shadow: none !important;
}

/* 2dp elevation modified*/
.z-depth-1, .sidenav, .collapsible, .dropdown-content, .btn-floating, .btn.elevated, .elevated.btn-small, .elevated.btn-large, .toast, .card, .card-panel, nav {
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
}

.z-depth-1-half, .btn-floating:focus, .btn-floating:hover, .btn:focus, .btn-small:focus, .btn-large:focus, .btn:hover, .btn-small:hover, .btn-large:hover {
  box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.14), 0 1px 7px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -1px rgba(0, 0, 0, 0.2);
}

/* 6dp elevation modified*/
.z-depth-2 {
  box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.3);
}

/* 12dp elevation modified*/
.z-depth-3 {
  box-shadow: 0 8px 17px 2px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.2);
}

/* 16dp elevation */
.z-depth-4 {
  box-shadow: 0 16px 24px 2px rgba(0, 0, 0, 0.14), 0 6px 30px 5px rgba(0, 0, 0, 0.12), 0 8px 10px -7px rgba(0, 0, 0, 0.2);
}

/* 24dp elevation */
.z-depth-5, .modal {
  box-shadow: 0 24px 38px 3px rgba(0, 0, 0, 0.14), 0 9px 46px 8px rgba(0, 0, 0, 0.12), 0 11px 15px -7px rgba(0, 0, 0, 0.2);
}

.hoverable {
  transition: box-shadow 0.25s;
}
.hoverable:hover {
  box-shadow: 0 8px 17px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

.divider {
  height: 1px;
  overflow: hidden;
  background-color: var(--separator-color);
}

blockquote {
  margin: 20px 0;
  padding-left: 1.5rem;
  border-left: 5px solid var(--primary-color);
}

i {
  line-height: inherit;
}
i.left {
  float: left;
  margin-left: -8px;
}
i.right {
  float: right;
}
i.tiny {
  font-size: 1rem;
}
i.small {
  font-size: 2rem;
}
i.medium {
  font-size: 4rem;
}
i.large {
  font-size: 6rem;
}

img.responsive-img,
video.responsive-video {
  max-width: 100%;
  height: auto;
}

.pagination li {
  display: inline-block;
  border-radius: 2px;
  text-align: center;
  vertical-align: top;
  height: 30px;
}
.pagination li a {
  color: var(--font-color-medium);
  display: inline-block;
  font-size: 1.2rem;
  padding: 0 10px;
  line-height: 30px;
}
.pagination li:hover:not(.disabled) {
  background-color: var(--primary-color-hover-opaque);
}
.pagination li.active a {
  color: var(--font-on-primary-color-main);
}
.pagination li.active, .pagination li.active:hover {
  background-color: var(--primary-color);
}
.pagination li.disabled a {
  cursor: default;
  color: var(--font-color-disabled);
}
.pagination li i {
  font-size: 2rem;
}
.pagination li.pages ul li {
  display: inline-block;
  float: none;
}

@media only screen and (max-width : 992.99px) {
  .pagination {
    width: 100%;
  }
  .pagination li.prev,
  .pagination li.next {
    width: 10%;
  }
  .pagination li.pages {
    width: 80%;
    overflow: hidden;
    white-space: nowrap;
  }
}
.breadcrumb {
  display: inline-block;
  font-size: 18px;
  color: var(--font-on-primary-color-medium);
}
.breadcrumb i,
.breadcrumb [class^=mdi-], .breadcrumb [class*=mdi-],
.breadcrumb i.material-icons, .breadcrumb i.material-symbols-outlined,
.breadcrumb i.material-symbols-rounded, .breadcrumb i.material-symbols-sharp {
  display: block;
  float: left;
  font-size: 24px;
}
.breadcrumb:before {
  content: "\e5cc";
  color: var(--font-on-primary-color-medium);
  vertical-align: top;
  display: inline-block;
  font-family: "Material Symbols Outlined", "Material Symbols Rounded", "Material Symbols Sharp", "Material Icons";
  font-weight: normal;
  font-style: normal;
  font-size: 25px;
  margin: 0 10px 0 8px;
  -webkit-font-smoothing: antialiased;
  float: left;
}
.breadcrumb:first-child:before {
  display: none;
}
.breadcrumb:last-child {
  color: var(--font-on-primary-color-main);
}

.parallax-container {
  position: relative;
  overflow: hidden;
  height: 500px;
}
.parallax-container .parallax {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
}
.parallax-container .parallax img {
  opacity: 0;
  position: absolute;
  left: 50%;
  bottom: 0;
  min-width: 100%;
  min-height: 100%;
  transform: translate3d(0, 0, 0);
  transform: translateX(-50%);
}

.pin-top, .pin-bottom {
  position: relative;
}

.pinned {
  position: fixed !important;
}

/*********************
  Transition Classes
**********************/
ul.staggered-list li {
  opacity: 0;
}

.fade-in {
  opacity: 0;
  transform-origin: 0 50%;
}

/*********************
  Media Query Classes
**********************/
@media only screen and (max-width : 600.99px) {
  .hide-on-small-only, .hide-on-small-and-down {
    display: none !important;
  }
}

@media only screen and (max-width : 992.99px) {
  .hide-on-med-and-down {
    display: none !important;
  }
}

@media only screen and (min-width : 601px) {
  .hide-on-med-and-up {
    display: none !important;
  }
}

@media only screen and (min-width: 601px) and (max-width: 992.99px) {
  .hide-on-med-only {
    display: none !important;
  }
}

@media only screen and (min-width : 993px) {
  .hide-on-large-only {
    display: none !important;
  }
}

@media only screen and (min-width : 1201px) {
  .hide-on-extra-large-only {
    display: none !important;
  }
}

@media only screen and (min-width : 1201px) {
  .show-on-extra-large {
    display: block !important;
  }
}

@media only screen and (min-width : 993px) {
  .show-on-large {
    display: block !important;
  }
}

@media only screen and (min-width: 601px) and (max-width: 992.99px) {
  .show-on-medium {
    display: block !important;
  }
}

@media only screen and (max-width : 600.99px) {
  .show-on-small {
    display: block !important;
  }
}

@media only screen and (min-width : 601px) {
  .show-on-medium-and-up {
    display: block !important;
  }
}

@media only screen and (max-width : 992.99px) {
  .show-on-medium-and-down {
    display: block !important;
  }
}

@media only screen and (max-width : 600.99px) {
  .center-on-small-only {
    text-align: center;
  }
}

.page-footer {
  padding-top: 20px;
  color: var(--font-on-primary-color-main);
  background-color: var(--primary-color);
}
.page-footer a {
  color: var(--font-on-primary-color-main);
}
.page-footer .footer-copyright,
.page-footer .footer-copyright a {
  overflow: hidden;
  min-height: 50px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 0px;
  color: var(--font-on-primary-color-dark-medium);
  background-color: var(--primary-color-dark);
}

.page-footer ul {
  padding-left: 0;
  list-style-type: none;
}

table, th, td {
  border: none;
}

table {
  width: 100%;
  display: table;
  border-collapse: collapse;
  border-spacing: 0;
}
table.striped tr {
  border-bottom: none;
}
table.striped tbody > tr:nth-child(odd) {
  background-color: var(--background-color-slight-emphasis);
}
table.highlight > tbody > tr {
  transition: background-color 0.25s ease;
}
table.highlight > tbody > tr:hover {
  background-color: var(--hover-color);
}
table thead {
  color: var(--font-color-medium);
}
table.centered thead tr th, table.centered tbody tr td {
  text-align: center;
}

tr {
  border-bottom: 1px solid var(--separator-color);
}

td, th {
  padding: 15px 5px;
  display: table-cell;
  text-align: left;
  vertical-align: middle;
  border-radius: 0;
}

@media only screen and (max-width : 992.99px) {
  table.responsive-table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    display: block;
    position: relative;
    /* sort out borders */
  }
  table.responsive-table td:empty:before {
    content: " ";
  }
  table.responsive-table th,
  table.responsive-table td {
    margin: 0;
    vertical-align: top;
  }
  table.responsive-table th {
    text-align: left;
  }
  table.responsive-table thead {
    display: block;
    float: left;
  }
  table.responsive-table thead tr {
    display: block;
    padding: 0 10px 0 0;
  }
  table.responsive-table thead tr th::before {
    content: " ";
  }
  table.responsive-table tbody {
    display: block;
    width: auto;
    position: relative;
    overflow-x: auto;
    white-space: nowrap;
  }
  table.responsive-table tbody tr {
    display: inline-block;
    vertical-align: top;
  }
  table.responsive-table th {
    display: block;
    text-align: right;
  }
  table.responsive-table td {
    display: block;
    min-height: 1.25em;
    text-align: left;
  }
  table.responsive-table tr {
    border-bottom: none;
    padding: 0 10px;
  }
  table.responsive-table thead {
    border: 0;
    border-right: 1px solid var(--separator-color);
  }
}
.video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
.video-container iframe, .video-container object, .video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*******************
  Utility Classes
*******************/
.hide {
  display: none !important;
}

.left-align {
  text-align: left;
}

.right-align {
  text-align: right;
}

.center, .center-align {
  text-align: center;
}

.left {
  float: left !important;
}

.right {
  float: right !important;
}

.no-select, input[type=range],
input[type=range] + .thumb {
  user-select: none;
}

.circle {
  border-radius: 50%;
}

.center-block {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.truncate {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.no-padding {
  padding: 0 !important;
}

/**************************
  Utility Spacing Classes
**************************/
.m-0 {
  margin: 0 !important;
}

.mt-0 {
  margin-top: 0 !important;
}

.mr-0 {
  margin-right: 0 !important;
}

.mb-0 {
  margin-bottom: 0 !important;
}

.ml-0 {
  margin-left: 0 !important;
}

.mx-0 {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.my-0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.m-1 {
  margin: 0.25rem !important;
}

.mt-1 {
  margin-top: 0.25rem !important;
}

.mr-1 {
  margin-right: 0.25rem !important;
}

.mb-1 {
  margin-bottom: 0.25rem !important;
}

.ml-1 {
  margin-left: 0.25rem !important;
}

.mx-1 {
  margin-left: 0.25rem !important;
  margin-right: 0.25rem !important;
}

.my-1 {
  margin-top: 0.25rem !important;
  margin-bottom: 0.25rem !important;
}

.m-2 {
  margin: 0.5rem !important;
}

.mt-2 {
  margin-top: 0.5rem !important;
}

.mr-2 {
  margin-right: 0.5rem !important;
}

.mb-2 {
  margin-bottom: 0.5rem !important;
}

.ml-2 {
  margin-left: 0.5rem !important;
}

.mx-2 {
  margin-left: 0.5rem !important;
  margin-right: 0.5rem !important;
}

.my-2 {
  margin-top: 0.5rem !important;
  margin-bottom: 0.5rem !important;
}

.m-3 {
  margin: 0.75rem !important;
}

.mt-3 {
  margin-top: 0.75rem !important;
}

.mr-3 {
  margin-right: 0.75rem !important;
}

.mb-3 {
  margin-bottom: 0.75rem !important;
}

.ml-3 {
  margin-left: 0.75rem !important;
}

.mx-3 {
  margin-left: 0.75rem !important;
  margin-right: 0.75rem !important;
}

.my-3 {
  margin-top: 0.75rem !important;
  margin-bottom: 0.75rem !important;
}

.m-4 {
  margin: 1rem !important;
}

.mt-4 {
  margin-top: 1rem !important;
}

.mr-4 {
  margin-right: 1rem !important;
}

.mb-4 {
  margin-bottom: 1rem !important;
}

.ml-4 {
  margin-left: 1rem !important;
}

.mx-4 {
  margin-left: 1rem !important;
  margin-right: 1rem !important;
}

.my-4 {
  margin-top: 1rem !important;
  margin-bottom: 1rem !important;
}

.m-5 {
  margin: 1.5rem !important;
}

.mt-5 {
  margin-top: 1.5rem !important;
}

.mr-5 {
  margin-right: 1.5rem !important;
}

.mb-5 {
  margin-bottom: 1.5rem !important;
}

.ml-5 {
  margin-left: 1.5rem !important;
}

.mx-5 {
  margin-left: 1.5rem !important;
  margin-right: 1.5rem !important;
}

.my-5 {
  margin-top: 1.5rem !important;
  margin-bottom: 1.5rem !important;
}

.m-6 {
  margin: 3rem !important;
}

.mt-6 {
  margin-top: 3rem !important;
}

.mr-6 {
  margin-right: 3rem !important;
}

.mb-6 {
  margin-bottom: 3rem !important;
}

.ml-6 {
  margin-left: 3rem !important;
}

.mx-6 {
  margin-left: 3rem !important;
  margin-right: 3rem !important;
}

.my-6 {
  margin-top: 3rem !important;
  margin-bottom: 3rem !important;
}

.m-auto {
  margin: auto !important;
}

.mt-auto {
  margin-top: auto !important;
}

.mr-auto {
  margin-right: auto !important;
}

.mb-auto {
  margin-bottom: auto !important;
}

.ml-auto {
  margin-left: auto !important;
}

.mx-auto {
  margin-left: auto !important;
  margin-right: auto !important;
}

.my-auto {
  margin-top: auto !important;
  margin-bottom: auto !important;
}

.p-0 {
  padding: 0 !important;
}

.pt-0 {
  padding-top: 0 !important;
}

.pr-0 {
  padding-right: 0 !important;
}

.pb-0 {
  padding-bottom: 0 !important;
}

.pl-0 {
  padding-left: 0 !important;
}

.px-0 {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.py-0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.p-1 {
  padding: 0.25rem !important;
}

.pt-1 {
  padding-top: 0.25rem !important;
}

.pr-1 {
  padding-right: 0.25rem !important;
}

.pb-1 {
  padding-bottom: 0.25rem !important;
}

.pl-1 {
  padding-left: 0.25rem !important;
}

.px-1 {
  padding-left: 0.25rem !important;
  padding-right: 0.25rem !important;
}

.py-1 {
  padding-top: 0.25rem !important;
  padding-bottom: 0.25rem !important;
}

.p-2 {
  padding: 0.5rem !important;
}

.pt-2 {
  padding-top: 0.5rem !important;
}

.pr-2 {
  padding-right: 0.5rem !important;
}

.pb-2 {
  padding-bottom: 0.5rem !important;
}

.pl-2 {
  padding-left: 0.5rem !important;
}

.px-2 {
  padding-left: 0.5rem !important;
  padding-right: 0.5rem !important;
}

.py-2 {
  padding-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
}

.p-3 {
  padding: 0.75rem !important;
}

.pt-3 {
  padding-top: 0.75rem !important;
}

.pr-3 {
  padding-right: 0.75rem !important;
}

.pb-3 {
  padding-bottom: 0.75rem !important;
}

.pl-3 {
  padding-left: 0.75rem !important;
}

.px-3 {
  padding-left: 0.75rem !important;
  padding-right: 0.75rem !important;
}

.py-3 {
  padding-top: 0.75rem !important;
  padding-bottom: 0.75rem !important;
}

.p-4 {
  padding: 1rem !important;
}

.pt-4 {
  padding-top: 1rem !important;
}

.pr-4 {
  padding-right: 1rem !important;
}

.pb-4 {
  padding-bottom: 1rem !important;
}

.pl-4 {
  padding-left: 1rem !important;
}

.px-4 {
  padding-left: 1rem !important;
  padding-right: 1rem !important;
}

.py-4 {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

.p-5 {
  padding: 1.5rem !important;
}

.pt-5 {
  padding-top: 1.5rem !important;
}

.pr-5 {
  padding-right: 1.5rem !important;
}

.pb-5 {
  padding-bottom: 1.5rem !important;
}

.pl-5 {
  padding-left: 1.5rem !important;
}

.px-5 {
  padding-left: 1.5rem !important;
  padding-right: 1.5rem !important;
}

.py-5 {
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important;
}

.p-6 {
  padding: 3rem !important;
}

.pt-6 {
  padding-top: 3rem !important;
}

.pr-6 {
  padding-right: 3rem !important;
}

.pb-6 {
  padding-bottom: 3rem !important;
}

.pl-6 {
  padding-left: 3rem !important;
}

.px-6 {
  padding-left: 3rem !important;
  padding-right: 3rem !important;
}

.py-6 {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

.p-auto {
  padding: auto !important;
}

.pt-auto {
  padding-top: auto !important;
}

.pr-auto {
  padding-right: auto !important;
}

.pb-auto {
  padding-bottom: auto !important;
}

.pl-auto {
  padding-left: auto !important;
}

.px-auto {
  padding-left: auto !important;
  padding-right: auto !important;
}

.py-auto {
  padding-top: auto !important;
  padding-bottom: auto !important;
}

.collection {
  padding-left: 0;
  list-style-type: none;
  margin: 0.5rem 0 1rem 0;
  border: 1px solid var(--separator-color);
  border-radius: 2px;
  overflow: hidden;
  position: relative;
}
.collection .collection-item {
  background-color: transparent;
  line-height: 1.5rem;
  padding: 10px 20px;
  margin: 0;
  border-bottom: 1px solid var(--separator-color);
}
.collection .collection-item.avatar {
  min-height: 84px;
  padding-left: 72px;
  position: relative;
}
.collection .collection-item.avatar:not(.circle-clipper) > .circle,
.collection .collection-item.avatar :not(.circle-clipper) > .circle {
  position: absolute;
  width: 42px;
  height: 42px;
  overflow: hidden;
  left: 15px;
  display: inline-block;
  vertical-align: middle;
}
.collection .collection-item.avatar i.circle {
  font-size: 18px;
  line-height: 42px;
  color: #fff;
  background-color: var(--slider-track-color);
  text-align: center;
}
.collection .collection-item.avatar .title {
  font-size: 16px;
}
.collection .collection-item.avatar p {
  margin: 0;
}
.collection .collection-item.avatar .secondary-content {
  position: absolute;
  top: 16px;
  right: 16px;
}
.collection .collection-item:last-child {
  border-bottom: none;
}
.collection .collection-item.active {
  background-color: var(--primary-color);
  color: var(--font-on-primary-color-main);
}
.collection .collection-item.active .secondary-content {
  color: var(--font-on-primary-color-main);
}
.collection a.collection-item {
  display: block;
  transition: 0.25s;
  color: var(--primary-color);
}
.collection a.collection-item:not(.active):hover {
  background-color: var(--hover-color);
}
.collection.with-header .collection-header {
  background-color: transparent;
  border-bottom: 1px solid var(--separator-color);
  padding: 10px 20px;
}
.collection.with-header .collection-item {
  padding-left: 30px;
}
.collection.with-header .collection-item.avatar {
  padding-left: 72px;
}

.secondary-content {
  float: right;
  color: var(--primary-color);
}

.collapsible .collection {
  margin: 0;
  border: none;
}

span.badge {
  min-width: 3rem;
  padding: 0 6px;
  margin-left: 14px;
  text-align: center;
  font-size: 1rem;
  line-height: 22px;
  height: 22px;
  color: var(--font-color-medium);
  float: right;
  box-sizing: border-box;
}
span.badge.new {
  font-weight: 300;
  font-size: 0.8rem;
  color: var(--font-on-primary-color-main);
  background-color: var(--primary-color);
  border-radius: 2px;
}
span.badge.new:after {
  content: " new";
}
span.badge[data-badge-caption]::after {
  content: " " attr(data-badge-caption);
}

.active span.badge {
  color: var(--font-on-primary-color-main);
}

nav ul a span.badge {
  display: inline-block;
  float: none;
  margin-left: 4px;
  line-height: 22px;
  height: 22px;
  -webkit-font-smoothing: auto;
}

.collection-item span.badge {
  margin-top: calc(0.75rem - 11px);
}

.collapsible span.badge {
  margin-left: auto;
}

.collapsible .active span.badge:not(.new) {
  color: var(--font-color-medium);
}

.sidenav span.badge {
  margin-top: calc(24px - 11px);
}

table span.badge {
  display: inline-block;
  float: none;
  margin-left: auto;
}

/* This is needed for some mobile phones to display the Google Icon font properly */
.material-icons, .material-symbols-outlined,
.material-symbols-rounded, .material-symbols-sharp {
  text-rendering: optimizeLegibility;
  font-feature-settings: "liga";
}

.container {
  margin: 0 auto;
  max-width: 1280px;
  width: 90%;
}

@media only screen and (min-width : 601px) {
  .container {
    width: 85%;
  }
}
@media only screen and (min-width : 993px) {
  .container {
    width: 70%;
  }
}
.section {
  padding: 1rem 0;
}

.row {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
}
.row .s1 {
  grid-column: auto/span 1;
}
.row .s2 {
  grid-column: auto/span 2;
}
.row .s3 {
  grid-column: auto/span 3;
}
.row .s4 {
  grid-column: auto/span 4;
}
.row .s5 {
  grid-column: auto/span 5;
}
.row .s6 {
  grid-column: auto/span 6;
}
.row .s7 {
  grid-column: auto/span 7;
}
.row .s8 {
  grid-column: auto/span 8;
}
.row .s9 {
  grid-column: auto/span 9;
}
.row .s10 {
  grid-column: auto/span 10;
}
.row .s11 {
  grid-column: auto/span 11;
}
.row .s12 {
  grid-column: auto/span 12;
}
.row .offset-s1 {
  grid-column-start: 3;
}
.row .offset-s2 {
  grid-column-start: 2;
}
.row .offset-s3 {
  grid-column-start: 4;
}
.row .offset-s4 {
  grid-column-start: 5;
}
.row .offset-s5 {
  grid-column-start: 6;
}
.row .offset-s6 {
  grid-column-start: 7;
}
.row .offset-s7 {
  grid-column-start: 8;
}
.row .offset-s8 {
  grid-column-start: 9;
}
.row .offset-s9 {
  grid-column-start: 10;
}
.row .offset-s10 {
  grid-column-start: 11;
}
.row .offset-s11 {
  grid-column-start: 12;
}
@media only screen and (min-width : 601px) {
  .row .m1 {
    grid-column: auto/span 1;
  }
  .row .m2 {
    grid-column: auto/span 2;
  }
  .row .m3 {
    grid-column: auto/span 3;
  }
  .row .m4 {
    grid-column: auto/span 4;
  }
  .row .m5 {
    grid-column: auto/span 5;
  }
  .row .m6 {
    grid-column: auto/span 6;
  }
  .row .m7 {
    grid-column: auto/span 7;
  }
  .row .m8 {
    grid-column: auto/span 8;
  }
  .row .m9 {
    grid-column: auto/span 9;
  }
  .row .m10 {
    grid-column: auto/span 10;
  }
  .row .m11 {
    grid-column: auto/span 11;
  }
  .row .m12 {
    grid-column: auto/span 12;
  }
  .row .offset-m1 {
    grid-column-start: 2;
  }
  .row .offset-m2 {
    grid-column-start: 3;
  }
  .row .offset-m3 {
    grid-column-start: 4;
  }
  .row .offset-m4 {
    grid-column-start: 5;
  }
  .row .offset-m5 {
    grid-column-start: 6;
  }
  .row .offset-m6 {
    grid-column-start: 7;
  }
  .row .offset-m7 {
    grid-column-start: 8;
  }
  .row .offset-m8 {
    grid-column-start: 9;
  }
  .row .offset-m9 {
    grid-column-start: 10;
  }
  .row .offset-m10 {
    grid-column-start: 11;
  }
  .row .offset-m11 {
    grid-column-start: 12;
  }
}
@media only screen and (min-width : 993px) {
  .row .l1 {
    grid-column: auto/span 1;
  }
  .row .l2 {
    grid-column: auto/span 2;
  }
  .row .l3 {
    grid-column: auto/span 3;
  }
  .row .l4 {
    grid-column: auto/span 4;
  }
  .row .l5 {
    grid-column: auto/span 5;
  }
  .row .l6 {
    grid-column: auto/span 6;
  }
  .row .l7 {
    grid-column: auto/span 7;
  }
  .row .l8 {
    grid-column: auto/span 8;
  }
  .row .l9 {
    grid-column: auto/span 9;
  }
  .row .l10 {
    grid-column: auto/span 10;
  }
  .row .l11 {
    grid-column: auto/span 11;
  }
  .row .l12 {
    grid-column: auto/span 12;
  }
  .row .offset-l1 {
    grid-column-start: 2;
  }
  .row .offset-l2 {
    grid-column-start: 3;
  }
  .row .offset-l3 {
    grid-column-start: 4;
  }
  .row .offset-l4 {
    grid-column-start: 5;
  }
  .row .offset-l5 {
    grid-column-start: 6;
  }
  .row .offset-l6 {
    grid-column-start: 7;
  }
  .row .offset-l7 {
    grid-column-start: 8;
  }
  .row .offset-l8 {
    grid-column-start: 9;
  }
  .row .offset-l9 {
    grid-column-start: 10;
  }
  .row .offset-l10 {
    grid-column-start: 11;
  }
  .row .offset-l11 {
    grid-column-start: 12;
  }
}
@media only screen and (min-width : 1201px) {
  .row .xl1 {
    grid-column: auto/span 1;
  }
  .row .xl2 {
    grid-column: auto/span 2;
  }
  .row .xl3 {
    grid-column: auto/span 3;
  }
  .row .xl4 {
    grid-column: auto/span 4;
  }
  .row .xl5 {
    grid-column: auto/span 5;
  }
  .row .xl6 {
    grid-column: auto/span 6;
  }
  .row .xl7 {
    grid-column: auto/span 7;
  }
  .row .xl8 {
    grid-column: auto/span 8;
  }
  .row .xl9 {
    grid-column: auto/span 9;
  }
  .row .xl10 {
    grid-column: auto/span 10;
  }
  .row .xl11 {
    grid-column: auto/span 11;
  }
  .row .xl12 {
    grid-column: auto/span 12;
  }
  .row .offset-xl1 {
    grid-column-start: 2;
  }
  .row .offset-xl2 {
    grid-column-start: 3;
  }
  .row .offset-xl3 {
    grid-column-start: 4;
  }
  .row .offset-xl4 {
    grid-column-start: 5;
  }
  .row .offset-xl5 {
    grid-column-start: 6;
  }
  .row .offset-xl6 {
    grid-column-start: 7;
  }
  .row .offset-xl7 {
    grid-column-start: 8;
  }
  .row .offset-xl8 {
    grid-column-start: 9;
  }
  .row .offset-xl9 {
    grid-column-start: 10;
  }
  .row .offset-xl10 {
    grid-column-start: 11;
  }
  .row .offset-xl11 {
    grid-column-start: 12;
  }
}

nav {
  color: var(--font-on-primary-color-main);
  background-color: var(--secondary-container-color);
  width: 100%;
  height: 56px;
  line-height: 56px;
}
nav.nav-extended {
  height: auto;
}
nav.nav-extended .nav-wrapper {
  min-height: 56px;
  height: auto;
}
nav.nav-extended .nav-content {
  position: relative;
  line-height: normal;
}
nav a {
  color: var(--font-on-primary-color-main);
}
nav i,
nav [class^=mdi-], nav [class*=mdi-],
nav i.material-icons, nav i.material-symbols-outlined,
nav i.material-symbols-rounded, nav i.material-symbols-sharp {
  display: block;
  font-size: 24px;
  height: 56px;
  line-height: 56px;
}
nav .nav-wrapper {
  position: relative;
  height: 100%;
}
@media only screen and (min-width : 993px) {
  nav a.sidenav-trigger {
    display: none;
  }
}
nav .sidenav-trigger {
  float: left;
  position: relative;
  z-index: 1;
  height: 56px;
  margin: 0 18px;
}
nav .sidenav-trigger i {
  height: 56px;
  line-height: 56px;
}
nav .brand-logo {
  position: absolute;
  color: var(--font-on-primary-color-main);
  display: inline-block;
  font-size: 2.1rem;
  padding: 0;
}
nav .brand-logo.center {
  left: 50%;
  transform: translateX(-50%);
}
@media only screen and (max-width : 992.99px) {
  nav .brand-logo {
    left: 50%;
    transform: translateX(-50%);
  }
  nav .brand-logo.left, nav .brand-logo.right {
    padding: 0;
    transform: none;
  }
  nav .brand-logo.left {
    left: 0.5rem;
  }
  nav .brand-logo.right {
    right: 0.5rem;
    left: auto;
  }
}
nav .brand-logo.right {
  right: 0.5rem;
  padding: 0;
}
nav .brand-logo i,
nav .brand-logo [class^=mdi-], nav .brand-logo [class*=mdi-],
nav .brand-logo i.material-icons, nav .brand-logo i.material-symbols-outlined,
nav .brand-logo i.material-symbols-rounded, nav .brand-logo i.material-symbols-sharp {
  float: left;
  margin-right: 15px;
}
nav .nav-title {
  display: inline-block;
  font-size: 32px;
  padding: 28px 0;
}
nav ul:not(.dropdown-content) {
  list-style-type: none;
  margin: 0;
}
nav ul:not(.dropdown-content) > li {
  transition: background-color 0.3s;
  float: left;
  padding: 0;
}
nav ul:not(.dropdown-content) > li > a {
  transition: background-color 0.3s;
  font-size: 1rem;
  color: var(--font-on-primary-color-main);
  display: block;
  padding: 0 15px;
  cursor: pointer;
}
nav ul:not(.dropdown-content) > li > a.active {
  background-color: var(--primary-color-raised-focus-solid);
}
nav ul:not(.dropdown-content) > li > a:hover:not(.active) {
  background-color: var(--primary-color-raised-hover-solid);
}
nav ul:not(.dropdown-content) > li > a.btn, nav ul:not(.dropdown-content) > li > a.btn-small, nav ul:not(.dropdown-content) > li > a.btn-large, nav ul:not(.dropdown-content) > li > a.btn-flat, nav ul:not(.dropdown-content) > li > a.btn-floating {
  margin-top: -2px;
  margin-left: 15px;
  margin-right: 15px;
  display: inline-block;
}
nav ul:not(.dropdown-content) > li > a.btn > .material-icons, nav ul:not(.dropdown-content) > li > a.btn-small > .material-icons, nav ul:not(.dropdown-content) > li > a.btn > .material-symbols-outlined, nav ul:not(.dropdown-content) > li > a.btn-small > .material-symbols-outlined, nav ul:not(.dropdown-content) > li > a.btn > .material-symbols-rounded, nav ul:not(.dropdown-content) > li > a.btn-small > .material-symbols-rounded, nav ul:not(.dropdown-content) > li > a.btn > .material-symbols-sharp, nav ul:not(.dropdown-content) > li > a.btn-small > .material-symbols-sharp, nav ul:not(.dropdown-content) > li > a.btn-large > .material-icons, nav ul:not(.dropdown-content) > li > a.btn-large > .material-symbols-outlined, nav ul:not(.dropdown-content) > li > a.btn-large > .material-symbols-rounded, nav ul:not(.dropdown-content) > li > a.btn-large > .material-symbols-sharp, nav ul:not(.dropdown-content) > li > a.btn-flat > .material-icons, nav ul:not(.dropdown-content) > li > a.btn-flat > .material-symbols-outlined, nav ul:not(.dropdown-content) > li > a.btn-flat > .material-symbols-rounded, nav ul:not(.dropdown-content) > li > a.btn-flat > .material-symbols-sharp, nav ul:not(.dropdown-content) > li > a.btn-floating > .material-icons, nav ul:not(.dropdown-content) > li > a.btn-floating > .material-symbols-outlined, nav ul:not(.dropdown-content) > li > a.btn-floating > .material-symbols-rounded, nav ul:not(.dropdown-content) > li > a.btn-floating > .material-symbols-sharp {
  height: inherit;
  line-height: inherit;
}
nav ul:not(.dropdown-content).left {
  float: left;
}
nav form {
  height: 100%;
}
nav .input-field {
  margin: 0;
  height: 100%;
}
nav .input-field input[type=search] {
  height: 100%;
  font-size: 1.2rem;
  border: none;
  padding-left: 2rem;
  color: #888;
}
nav .input-field input[type=search]:focus, nav .input-field input[type=search][type=text]:valid, nav .input-field input[type=search][type=password]:valid, nav .input-field input[type=search][type=email]:valid, nav .input-field input[type=search][type=url]:valid, nav .input-field input[type=search][type=date]:valid {
  border: none;
  box-shadow: none;
}
nav .input-field label {
  top: 0;
  left: 0;
}
nav .input-field label i {
  color: var(--font-on-primary-color-medium);
  transition: color 0.3s;
}
nav .input-field label.active i {
  color: var(--font-on-primary-color-main);
}

.navbar-fixed {
  position: relative;
  height: 56px;
  z-index: 997;
}
.navbar-fixed nav {
  position: fixed;
  right: 0;
}

@media only screen and (min-width : 601px) {
  nav.nav-extended .nav-wrapper {
    min-height: 64px;
  }
  nav, nav .nav-wrapper i, nav a.sidenav-trigger, nav a.sidenav-trigger i {
    height: 64px;
    line-height: 64px;
  }
  .navbar-fixed {
    height: 64px;
  }
}
a {
  text-decoration: none;
}

html {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  font-weight: normal;
  color: var(--font-color-main);
}
@media only screen and (min-width: 0) {
  html {
    font-size: 14px;
  }
}
@media only screen and (min-width: 993px) {
  html {
    font-size: 14.5px;
  }
}
@media only screen and (min-width: 1201px) {
  html {
    font-size: 15px;
  }
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 400;
  line-height: 1.3;
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
  font-weight: inherit;
}

h1 {
  font-size: 4.2rem;
  line-height: 110%;
  margin: 2.8rem 0 1.68rem 0;
}

h2 {
  font-size: 3.56rem;
  line-height: 110%;
  margin: 2.3733333333rem 0 1.424rem 0;
}

h3 {
  font-size: 2.92rem;
  line-height: 110%;
  margin: 1.9466666667rem 0 1.168rem 0;
}

h4 {
  font-size: 2.28rem;
  line-height: 110%;
  margin: 1.52rem 0 0.912rem 0;
}

h5 {
  font-size: 1.64rem;
  line-height: 110%;
  margin: 1.0933333333rem 0 0.656rem 0;
}

h6 {
  font-size: 1.15rem;
  line-height: 110%;
  margin: 0.7666666667rem 0 0.46rem 0;
}

em {
  font-style: italic;
}

strong {
  font-weight: 500;
}

small {
  font-size: 75%;
}

.light {
  font-weight: 300;
}

.thin {
  font-weight: 200;
}

@media only screen and (min-width: 360px) {
  .flow-text {
    font-size: 1.2rem;
  }
}
@media only screen and (min-width: 390px) {
  .flow-text {
    font-size: 1.224rem;
  }
}
@media only screen and (min-width: 420px) {
  .flow-text {
    font-size: 1.248rem;
  }
}
@media only screen and (min-width: 450px) {
  .flow-text {
    font-size: 1.272rem;
  }
}
@media only screen and (min-width: 480px) {
  .flow-text {
    font-size: 1.296rem;
  }
}
@media only screen and (min-width: 510px) {
  .flow-text {
    font-size: 1.32rem;
  }
}
@media only screen and (min-width: 540px) {
  .flow-text {
    font-size: 1.344rem;
  }
}
@media only screen and (min-width: 570px) {
  .flow-text {
    font-size: 1.368rem;
  }
}
@media only screen and (min-width: 600px) {
  .flow-text {
    font-size: 1.392rem;
  }
}
@media only screen and (min-width: 630px) {
  .flow-text {
    font-size: 1.416rem;
  }
}
@media only screen and (min-width: 660px) {
  .flow-text {
    font-size: 1.44rem;
  }
}
@media only screen and (min-width: 690px) {
  .flow-text {
    font-size: 1.464rem;
  }
}
@media only screen and (min-width: 720px) {
  .flow-text {
    font-size: 1.488rem;
  }
}
@media only screen and (min-width: 750px) {
  .flow-text {
    font-size: 1.512rem;
  }
}
@media only screen and (min-width: 780px) {
  .flow-text {
    font-size: 1.536rem;
  }
}
@media only screen and (min-width: 810px) {
  .flow-text {
    font-size: 1.56rem;
  }
}
@media only screen and (min-width: 840px) {
  .flow-text {
    font-size: 1.584rem;
  }
}
@media only screen and (min-width: 870px) {
  .flow-text {
    font-size: 1.608rem;
  }
}
@media only screen and (min-width: 900px) {
  .flow-text {
    font-size: 1.632rem;
  }
}
@media only screen and (min-width: 930px) {
  .flow-text {
    font-size: 1.656rem;
  }
}
@media only screen and (min-width: 960px) {
  .flow-text {
    font-size: 1.68rem;
  }
}
@media only screen and (max-width: 360px) {
  .flow-text {
    font-size: 1.2rem;
  }
}

.scale-transition {
  transition: transform 0.3s cubic-bezier(0.53, 0.01, 0.36, 1.63) !important;
}
.scale-transition.scale-out {
  transform: scale(0);
  transition: transform 0.2s !important;
}
.scale-transition.scale-in {
  transform: scale(1);
}

.card-panel {
  transition: box-shadow 0.25s;
  padding: 24px;
  margin: 0.5rem 0 1rem 0;
  border-radius: 12px;
  background-color: var(--background-color-card);
}

.card {
  overflow: hidden;
  position: relative;
  background-color: var(--background-color-card);
  transition: box-shadow 0.25s;
  border-radius: 12px;
}
.card .card-title {
  font-size: 24px;
  font-weight: 300;
}
.card .card-title.activator {
  cursor: pointer;
}
.card.small, .card.medium, .card.large {
  position: relative;
}
.card.small .card-image, .card.medium .card-image, .card.large .card-image {
  max-height: 60%;
  overflow: hidden;
}
.card.small .card-image + .card-content, .card.medium .card-image + .card-content, .card.large .card-image + .card-content {
  max-height: 40%;
}
.card.small .card-content, .card.medium .card-content, .card.large .card-content {
  max-height: 100%;
  overflow: hidden;
}
.card.small .card-action, .card.medium .card-action, .card.large .card-action {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}
.card.small {
  height: 300px;
}
.card.medium {
  height: 400px;
}
.card.large {
  height: 500px;
}
.card.horizontal {
  display: flex;
}
.card.horizontal.small .card-image, .card.horizontal.medium .card-image, .card.horizontal.large .card-image {
  height: 100%;
  max-height: none;
  overflow: visible;
}
.card.horizontal.small .card-image img, .card.horizontal.medium .card-image img, .card.horizontal.large .card-image img {
  height: 100%;
}
.card.horizontal .card-image {
  max-width: 50%;
}
.card.horizontal .card-image img {
  border-radius: 2px 0 0 2px;
  max-width: 100%;
  width: auto;
}
.card.horizontal .card-stacked {
  display: flex;
  flex-direction: column;
  flex: 1;
  position: relative;
}
.card.horizontal .card-stacked .card-content {
  flex-grow: 1;
}
.card.sticky-action .card-action {
  z-index: 2;
}
.card.sticky-action .card-reveal {
  z-index: 1;
  padding-bottom: 64px;
}
.card .card-image {
  position: relative;
}
.card .card-image img {
  display: block;
  border-radius: 2px 2px 0 0;
  position: relative;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%;
}
.card .card-image .card-title {
  color: var(--background-color-card);
  position: absolute;
  bottom: 0;
  left: 0;
  max-width: 100%;
  padding: 24px;
}
.card .card-content {
  padding: 24px;
  border-radius: 0 0 2px 2px;
}
.card .card-content p {
  margin: 0;
}
.card .card-content .card-title {
  display: block;
  line-height: 32px;
  margin-bottom: 8px;
}
.card .card-content .card-title i {
  line-height: 32px;
}
.card .card-action {
  border-top: 1px solid var(--separator-color);
  position: relative;
  background-color: inherit;
}
.card .card-action:last-child {
  border-radius: 0 0 2px 2px;
}
.card .card-action a {
  padding: 16px 24px;
  display: inline-block;
}
.card .card-action a:not(.btn):not(.btn-small):not(.btn-large):not(.btn-large):not(.btn-floating) {
  color: var(--primary-color);
  transition: color 0.3s ease;
}
.card .card-action a:not(.btn):not(.btn-small):not(.btn-large):not(.btn-large):not(.btn-floating):hover {
  background-color: var(--primary-color-hover-opaque);
}
.card .card-reveal {
  padding: 24px;
  position: absolute;
  background-color: var(--background-color-card);
  width: 100%;
  overflow-y: auto;
  left: 0;
  top: 100%;
  height: 100%;
  z-index: 3;
  display: none;
}
.card .card-reveal .card-title {
  cursor: pointer;
  display: block;
}

#toast-container {
  display: block;
  position: fixed;
  z-index: 10000;
}
@media only screen and (max-width : 600.99px) {
  #toast-container {
    min-width: 100%;
    bottom: 0%;
  }
}
@media only screen and (min-width : 601px) and (max-width : 992.99px) {
  #toast-container {
    left: 5%;
    bottom: 7%;
    max-width: 90%;
  }
}
@media only screen and (min-width : 993px) {
  #toast-container {
    top: 10%;
    right: 7%;
    max-width: 86%;
  }
}

.toast {
  border-radius: 2px;
  top: 35px;
  width: auto;
  margin-top: 10px;
  position: relative;
  max-width: 100%;
  height: auto;
  min-height: 48px;
  line-height: 1.5em;
  background-color: var(--tooltip-background-color);
  padding: 10px 25px;
  font-size: 1rem;
  font-weight: 400;
  color: var(--tooltip-font-color);
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: default;
}
.toast .toast-action {
  color: #eeff41;
  font-weight: 500;
  margin-right: -25px;
  margin-left: 3rem;
}
.toast.rounded {
  border-radius: 24px;
}
@media only screen and (max-width : 600.99px) {
  .toast {
    width: 100%;
    border-radius: 0;
  }
}

.tabs {
  padding-left: 0;
  list-style-type: none;
  position: relative;
  overflow-x: auto;
  overflow-y: hidden;
  height: 48px;
  width: 100%;
  background-color: var(--surface-color);
  margin: 0 auto;
  white-space: nowrap;
}
.tabs.tabs-transparent {
  background-color: transparent;
}
.tabs.tabs-transparent .tab a {
  color: var(--font-on-primary-color-medium);
}
.tabs.tabs-transparent .tab.disabled a,
.tabs.tabs-transparent .tab.disabled a:hover,
.tabs.tabs-transparent .tab.disabled a:focus {
  color: var(--font-on-primary-color-disabled);
}
.tabs.tabs-transparent .tab a:hover {
  background-color: var(--hover-color);
}
.tabs.tabs-transparent .tab a.active,
.tabs.tabs-transparent .tab a:focus {
  background-color: transparent;
}
.tabs.tabs-transparent .tab a:hover,
.tabs.tabs-transparent .tab a.active,
.tabs.tabs-transparent .tab a:focus {
  color: var(--font-on-primary-color-main);
}
.tabs.tabs-transparent .indicator {
  background-color: var(--font-on-primary-color-main);
}
.tabs.tabs-fixed-width {
  display: flex;
}
.tabs.tabs-fixed-width .tab {
  flex-grow: 1;
}
.tabs .tab {
  padding-left: 0;
  list-style-type: none;
  display: inline-block;
  text-align: center;
  line-height: 48px;
  height: 48px;
  padding: 0;
  margin: 0;
}
.tabs .tab a {
  color: var(--font-color-medium);
  display: block;
  width: 100%;
  height: 100%;
  padding: 0 24px;
  font-size: 14px;
  text-overflow: ellipsis;
  overflow: hidden;
  transition: color 0.28s ease, background-color 0.28s ease;
}
.tabs .tab a.active {
  background-color: transparent;
}
.tabs .tab a.active, .tabs .tab a:focus, .tabs .tab a:hover {
  color: var(--primary-color);
}
.tabs .tab a:hover {
  background-color: var(--primary-color-hover-opaque);
}
.tabs .tab a:focus, .tabs .tab a.active {
  background-color: var(--primary-color-focus-opaque);
  outline: none;
}
.tabs .tab.disabled a, .tabs .tab.disabled a:hover {
  color: var(--font-color-disabled);
  cursor: default;
  background-color: transparent;
}
.tabs .tab.disabled a:not(:focus), .tabs .tab.disabled a:hover:not(:focus) {
  background-color: transparent;
}
.tabs .indicator {
  position: absolute;
  bottom: 0;
  height: 2px;
  background-color: var(--primary-color);
  will-change: left, right;
}

@media only screen and (max-width : 992.99px) {
  .tabs {
    display: flex;
  }
  .tabs .tab {
    flex-grow: 1;
  }
  .tabs .tab a {
    padding: 0 12px;
  }
}
.material-tooltip {
  padding: 0 8px;
  border-radius: 4px;
  background-color: var(--md-sys-color-inverse-surface);
  color: var(--md-sys-color-inverse-on-surface);
  font-family: var(--md-sys-typescale-body-small-font-family-name);
  font-size: var(--md-sys-typescale-body-small-font-size);
  line-height: var(--md-sys-typescale-body-small-line-height);
  font-weight: var(--md-sys-typescale-body-small-font-weight);
  min-height: 24px;
  opacity: 0;
  text-align: center;
  position: absolute;
  max-width: calc(100% - 4px);
  overflow: hidden;
  left: 0;
  top: 0;
  pointer-events: none;
  display: flex;
  align-items: center;
  visibility: hidden;
  z-index: 2000;
}

.backdrop {
  position: absolute;
  opacity: 0;
  height: 7px;
  width: 14px;
  border-radius: 0 0 50% 50%;
  background-color: var(--md-sys-color-inverse-surface);
  z-index: -1;
  transform-origin: 50% 0;
  visibility: hidden;
}

.btn, .btn-small, .btn-large, .btn-floating, .btn-flat {
  --font-size-icon: 16px;
  --padding: 24px;
  --padding-icon: 16px;
  --gap-icon: 8px;
  height: 40px;
  border: none;
  border-radius: 4px;
  padding-left: var(--padding);
  padding-right: var(--padding);
  color: var(--font-on-primary-color-main);
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  white-space: nowrap;
  outline: 0;
  user-select: none;
  transition: background-color 0.2s ease-out;
}

.btn.icon-left, .icon-left.btn-small, .icon-left.btn-large, .btn.icon-right, .icon-right.btn-small, .icon-right.btn-large {
  position: relative;
}

.btn.icon-left, .icon-left.btn-small, .icon-left.btn-large {
  padding-left: calc(var(--padding-icon) + var(--font-size-icon) + var(--gap-icon));
}

.btn.icon-right, .icon-right.btn-small, .icon-right.btn-large {
  padding-right: calc(var(--padding-icon) + var(--font-size-icon) + var(--gap-icon));
}

.btn.icon-left i, .icon-left.btn-small i, .icon-left.btn-large i, .btn.icon-right i, .icon-right.btn-small i, .icon-right.btn-large i {
  position: absolute;
  font-size: var(--font-size-icon);
}

.btn.icon-left i, .icon-left.btn-small i, .icon-left.btn-large i {
  left: var(--padding-icon);
}

.btn.icon-right i, .icon-right.btn-small i, .icon-right.btn-large i {
  right: var(--padding-icon);
}

.btn.disabled,
.btn-floating.disabled,
.btn-large.disabled,
.btn-small.disabled,
.btn-flat.disabled,
.btn:disabled,
.btn-floating:disabled,
.btn-large:disabled,
.btn-small:disabled,
.btn-flat:disabled,
.btn[disabled],
.btn-floating[disabled],
.btn-large[disabled],
.btn-small[disabled],
.btn-flat[disabled] {
  pointer-events: none;
  background-color: var(--background-color-disabled) !important;
  box-shadow: none;
  color: var(--font-color-disabled) !important;
  cursor: default;
}
.btn.disabled:hover,
.btn-floating.disabled:hover,
.btn-large.disabled:hover,
.btn-small.disabled:hover,
.btn-flat.disabled:hover,
.btn:disabled:hover,
.btn-floating:disabled:hover,
.btn-large:disabled:hover,
.btn-small:disabled:hover,
.btn-flat:disabled:hover,
.btn[disabled]:hover,
.btn-floating[disabled]:hover,
.btn-large[disabled]:hover,
.btn-small[disabled]:hover,
.btn-flat[disabled]:hover {
  background-color: var(--background-color-disabled) !important;
  color: var(--font-color-disabled) !important;
}

.btn.filled, .btn, .btn-small, .btn-large {
  background-color: var(--md-sys-color-primary);
}

.btn.tonal, .tonal.btn-small, .tonal.btn-large, .btn.elevated, .elevated.btn-small, .elevated.btn-large {
  background-color: var(--md-sys-color-secondary-container);
  color: var(--md-sys-color-on-secondary-container);
}

.btn.text, .text.btn-small, .text.btn-large, .btn-flat {
  box-shadow: none;
  background-color: transparent;
  color: var(--md-sys-color-primary);
  cursor: pointer;
  transition: background-color 0.2s;
}
.btn.text:focus, .text.btn-small:focus, .text.btn-large:focus, .btn.text:hover, .text.btn-small:hover, .text.btn-large:hover, .btn-flat:focus, .btn-flat:hover {
  box-shadow: none;
  background-color: var(--hover-color);
}
.btn.text:focus, .text.btn-small:focus, .text.btn-large:focus, .btn-flat:focus {
  background-color: var(--focus-color);
}
.btn.text.disabled, .text.disabled.btn-small, .text.disabled.btn-large, .btn.text.btn.text[disabled], .text.text[disabled].btn-small, .text.text[disabled].btn-large, .btn.text.btn-flat[disabled], .btn-flat.disabled, .btn-flat.btn.text[disabled], .btn-flat.btn-flat[disabled] {
  background-color: transparent !important;
  color: var(--font-color-disabled) !important;
  cursor: default;
}

.btn.outlined, .outlined.btn-small, .outlined.btn-large {
  background-color: transparent;
  color: var(--primary-color);
  border: 1px solid var(--primary-color);
}

.btn:hover, .btn-small:hover, .btn-large:hover {
  background-color: var(--primary-color-raised-hover-solid);
}
.btn:focus, .btn-small:focus, .btn-large:focus {
  background-color: var(--primary-color-raised-focus-solid);
}

.btn-floating {
  color: var(--font-on-secondary-color-main);
  width: 40px;
  height: 40px;
  background-color: var(--secondary-color);
  border-radius: 16px;
  padding: 0;
  display: grid;
  grid-auto-flow: column;
  align-items: center;
  position: relative;
  overflow: hidden;
  z-index: 1;
  transition: background-color 0.3s;
  cursor: pointer;
  vertical-align: middle;
}
.btn-floating:hover {
  background-color: var(--secondary-color-hover-solid);
}
.btn-floating:focus {
  background-color: var(--secondary-color-focus-solid);
}
.btn-floating:before {
  border-radius: 0;
}
.btn-floating.btn-large {
  width: 56px;
  height: 56px;
  padding: 0;
}
.btn-floating.btn-large.halfway-fab {
  bottom: -28px;
}
.btn-floating.btn-small {
  width: 30px;
  height: 30px;
}
.btn-floating.btn-small.halfway-fab {
  bottom: -15px;
}
.btn-floating.halfway-fab {
  position: absolute;
  right: 24px;
  bottom: -20px;
}
.btn-floating.halfway-fab.left {
  right: auto;
  left: 24px;
}
.btn-floating i {
  color: var(--font-on-secondary-color-main);
  font-size: 1.6rem;
  width: inherit;
  display: inline-block;
  text-align: center;
}

button.btn-floating {
  border: none;
}

.fixed-action-btn {
  position: fixed;
  right: 23px;
  bottom: 23px;
  padding-top: 15px;
  margin-bottom: 0;
  z-index: 997;
}
.fixed-action-btn.active ul {
  visibility: visible;
  padding-left: 0;
  list-style-type: none;
}
.fixed-action-btn.direction-left, .fixed-action-btn.direction-right {
  padding: 0 0 0 15px;
}
.fixed-action-btn.direction-left ul, .fixed-action-btn.direction-right ul {
  text-align: right;
  right: 64px;
  top: 50%;
  transform: translateY(-50%);
  height: 100%;
  left: auto;
  /*width 100% only goes to width of button container */
  width: 500px;
}
.fixed-action-btn.direction-left ul li, .fixed-action-btn.direction-right ul li {
  display: inline-block;
  margin: 7.5px 15px 0 0;
}
.fixed-action-btn.direction-right {
  padding: 0 15px 0 0;
}
.fixed-action-btn.direction-right ul {
  text-align: left;
  direction: rtl;
  left: 64px;
  right: auto;
}
.fixed-action-btn.direction-right ul li {
  margin: 7.5px 0 0 15px;
}
.fixed-action-btn.direction-bottom {
  padding: 0 0 15px 0;
}
.fixed-action-btn.direction-bottom ul {
  top: 64px;
  bottom: auto;
  display: flex;
  flex-direction: column-reverse;
}
.fixed-action-btn.direction-bottom ul li {
  margin: 15px 0 0 0;
}
.fixed-action-btn.toolbar {
  padding: 0;
  height: 56px;
}
.fixed-action-btn.toolbar.active > a i {
  opacity: 0;
}
.fixed-action-btn.toolbar ul {
  display: flex;
  top: 0;
  bottom: 0;
  z-index: 1;
}
.fixed-action-btn.toolbar ul li {
  flex: 1;
  display: inline-block;
  margin: 0;
  height: 100%;
  transition: none;
}
.fixed-action-btn.toolbar ul li a {
  display: block;
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 100%;
  background-color: transparent;
  box-shadow: none;
  color: var(--font-on-secondary-color-main);
  line-height: 56px;
  z-index: 1;
}
.fixed-action-btn.toolbar ul li a i {
  line-height: inherit;
}
.fixed-action-btn ul {
  left: 0;
  right: 0;
  text-align: center;
  position: absolute;
  bottom: 64px;
  margin: 0;
  visibility: hidden;
}
.fixed-action-btn ul li {
  margin-bottom: 15px;
}
.fixed-action-btn ul a.btn-floating {
  opacity: 0;
}
.fixed-action-btn .fab-backdrop {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 40px;
  height: 40px;
  background-color: var(--secondary-color);
  border-radius: 16px;
  transform: scale(0);
}

.btn-large {
  height: 60px;
  font-size: 18px;
  padding: 0 28px;
}
.btn-large i {
  font-size: 1.6rem;
}

.btn-small {
  height: 30px;
  line-height: 30px;
  font-size: 13px;
}
.btn-small i {
  font-size: 1.2rem;
}

.btn-block {
  display: block;
}

.btn.rounded, .rounded.btn-large, .rounded.btn-small {
  border-radius: 99999px;
}

.dropdown-content {
  padding-left: 0;
  list-style-type: none;
  background-color: var(--surface-color);
  margin: 0;
  display: none;
  min-width: 100px;
  overflow-y: auto;
  opacity: 0;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 9999;
  transform-origin: 0 0;
}
.dropdown-content:focus {
  outline: 0;
}
.dropdown-content li {
  clear: both;
  color: var(--font-color-main);
  cursor: pointer;
  min-height: 50px;
  line-height: 1.5rem;
  width: 100%;
  text-align: left;
}
.dropdown-content li:hover, .dropdown-content li.active {
  background-color: var(--hover-color);
}
.dropdown-content li:focus {
  outline: none;
}
.dropdown-content li.divider {
  min-height: 0;
  height: 1px;
}
.dropdown-content li > a, .dropdown-content li > span {
  font-size: 16px;
  color: var(--primary-color);
  display: block;
  line-height: 22px;
  padding: 14px 16px;
}
.dropdown-content li > span > label {
  top: 1px;
  left: 0;
  height: 18px;
}
.dropdown-content li > a > i {
  height: inherit;
  line-height: inherit;
  float: left;
  margin: 0 24px 0 0;
  width: 24px;
}

body.keyboard-focused .dropdown-content li:focus {
  background-color: var(--focus-color);
}

.input-field.col .dropdown-content [type=checkbox] + label {
  top: 1px;
  left: 0;
  height: 18px;
  transform: none;
}

.dropdown-trigger {
  cursor: pointer;
}

.modal {
  display: none;
  position: fixed;
  left: 0;
  right: 0;
  background-color: var(--background-color-level-16dp-solid);
  padding: 0;
  max-height: 70%;
  width: 55%;
  margin: auto;
  overflow-y: auto;
  border-radius: 2px;
  will-change: top, opacity;
}
.modal:focus {
  outline: none;
}
@media only screen and (max-width : 992.99px) {
  .modal {
    width: 80%;
  }
}
.modal h1, .modal h2, .modal h3, .modal h4 {
  margin-top: 0;
}
.modal .modal-content {
  padding: 24px;
  overflow-y: hidden;
}
.modal .modal-close {
  cursor: pointer;
}
.modal .modal-footer {
  border-radius: 0 0 2px 2px;
  background-color: var(--background-color-level-16dp-solid);
  padding: 4px 6px;
  height: 56px;
  width: 100%;
  text-align: right;
}
.modal .modal-footer .btn, .modal .modal-footer .btn-large, .modal .modal-footer .btn-small, .modal .modal-footer .btn-flat {
  margin: 6px 0;
}

.modal-overlay {
  position: fixed;
  z-index: 999;
  top: -25%;
  left: 0;
  bottom: 0;
  right: 0;
  height: 125%;
  width: 100%;
  background: #000;
  display: none;
  will-change: opacity;
}

.modal.modal-fixed-footer {
  padding: 0;
  height: 70%;
}
.modal.modal-fixed-footer .modal-content {
  position: absolute;
  height: calc(100% - 56px);
  max-height: 100%;
  width: 100%;
  overflow-y: auto;
}
.modal.modal-fixed-footer .modal-footer {
  border-top: 1px solid var(--separator-color);
  position: absolute;
  bottom: 0;
}

.modal.bottom-sheet {
  top: auto;
  bottom: -100%;
  margin: 0;
  width: 100%;
  max-height: 45%;
  border-radius: 0;
  will-change: bottom, opacity;
}

.collapsible {
  padding-left: 0;
  list-style-type: none;
  border-top: 1px solid var(--separator-color);
  border-right: 1px solid var(--separator-color);
  border-left: 1px solid var(--separator-color);
  margin: 0.5rem 0 1rem 0;
}

.collapsible-header {
  display: flex;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  line-height: 1.5;
  padding: 1rem;
  border-bottom: 1px solid var(--separator-color);
  background-color: var(--surface-color);
}
.collapsible-header:focus {
  outline: 0;
}
.collapsible-header i {
  width: 2rem;
  font-size: 1.6rem;
  display: inline-block;
  text-align: center;
  margin-right: 1rem;
}

.collapsible-header::after {
  content: "▾";
  text-align: right;
  margin-right: 0.25rem;
  width: 100%;
}

.active .collapsible-header::after {
  content: "▴";
}

.keyboard-focused .collapsible-header:focus {
  background-color: var(--focus-color);
}

.collapsible-body {
  max-height: 0;
  border-bottom: 1px solid var(--separator-color);
  box-sizing: border-box;
  padding: 0 2rem;
  overflow: hidden;
  background-color: var(--surface-color);
}

.collapsible.popout {
  border: none;
  box-shadow: none;
}
.collapsible.popout > li {
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
  margin: 0 24px;
  transition: margin 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.collapsible.popout > li.active {
  box-shadow: 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15);
  margin: 16px 0;
}

.chip {
  --font-size: 14px;
  --font-size-icon: 18px;
  --padding: 8px;
  background-color: var(--background-color-level-4dp);
  display: inline-flex;
  white-space: nowrap;
  gap: 8px;
  margin: 0;
  height: 32px;
  padding-left: var(--padding);
  padding-right: var(--padding);
  font-size: var(--font-size);
  font-weight: 500;
  color: var(--font-color-medium);
  border-radius: 8px;
  align-items: center;
  user-select: none;
  vertical-align: top;
}
.chip:focus {
  outline: none;
  background-color: var(--primary-color);
  color: var(--font-on-primary-color-main);
}

.chip.outlined {
  background-color: transparent;
  border-color: var(--md-sys-color-outline);
  border-width: 1px;
  border-style: solid;
}

.chip > img {
  margin: 0;
  width: 24px;
  height: 24px;
  object-fit: cover;
  border-radius: 12px;
}

.chip > .material-icons {
  font-size: var(--font-size-icon);
}

.chip .close {
  border-radius: 50%;
  height: 24px;
  width: 24px;
  padding: 0;
  display: grid;
  justify-content: center;
  align-content: center;
  cursor: pointer;
}

.chip .close:hover {
  background-color: rgba(136, 136, 136, 0.5333333333);
}

.chips {
  display: flex;
  gap: 4px;
  flex-wrap: wrap;
  border: none;
  border-bottom: 1px solid var(--font-color-medium);
  box-shadow: none;
  margin: 0 0 8px 0;
  padding: 4px;
  outline: none;
  transition: all 0.3s;
}
.chips.focus {
  border-bottom: 1px solid var(--primary-color);
  box-shadow: 0 1px 0 0 var(--primary-color);
}
.chips:hover {
  cursor: text;
}
.chips input:not([type]):not(.browser-default).input {
  background: none;
  border: 0;
  color: var(--font-color-main);
  display: inline-block;
  font-size: 16px;
  height: 32px;
  outline: 0;
  margin: 0;
  padding: 0;
  width: 120px;
}
.chips input:not([type]):not(.browser-default).input:focus {
  border: 0;
  box-shadow: none;
}
.chips .autocomplete-content {
  margin-top: 0;
  margin-bottom: 0;
}

.prefix ~ .chips {
  margin-left: 3rem;
  width: 92%;
  width: calc(100% - 3rem);
}

.suffix ~ .chips {
  margin-right: 3rem;
  width: 92%;
  width: calc(100% - 3rem);
}

.chips:empty ~ label {
  font-size: 0.8rem;
  transform: translateY(-140%);
}

.materialboxed {
  display: block;
  cursor: zoom-in;
  position: relative;
  transition: opacity 0.4s;
  -webkit-backface-visibility: hidden;
}
.materialboxed:hover:not(.active) {
  opacity: 0.8;
}
.materialboxed.active {
  cursor: zoom-out;
}

#materialbox-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: var(--md-sys-color-background);
  z-index: 1000;
  will-change: opacity;
}

.materialbox-caption {
  position: fixed;
  display: none;
  color: var(--font-color-main);
  line-height: 50px;
  bottom: 0;
  left: 0;
  width: 100%;
  text-align: center;
  padding: 0% 15%;
  height: 50px;
  z-index: 1000;
  -webkit-font-smoothing: antialiased;
}

select:focus {
  outline: 1px solid var(--primary-color-raised-focus-solid);
}

button:focus {
  outline: none;
  background-color: var(--primary-color-raised-focus-solid);
}

label {
  font-size: 0.8rem;
  color: var(--font-color-medium);
}

/* Text Inputs + Textarea
   ========================================================================== */
/* Style Placeholders */
::placeholder {
  color: var(--font-color-medium);
}

/* Text inputs */
input:not([type]):not(.browser-default),
input[type=text]:not(.browser-default),
input[type=password]:not(.browser-default),
input[type=email]:not(.browser-default),
input[type=url]:not(.browser-default),
input[type=time]:not(.browser-default),
input[type=date]:not(.browser-default),
input[type=datetime]:not(.browser-default),
input[type=datetime-local]:not(.browser-default),
input[type=month]:not(.browser-default),
input[type=tel]:not(.browser-default),
input[type=number]:not(.browser-default),
input[type=search]:not(.browser-default),
textarea.materialize-textarea {
  outline: none;
  color: var(--font-color-main);
  width: 100%;
  font-size: 16px;
  height: 56px;
}

/* Validation Sass Placeholders */
/*
%custom-success-message {
  content: attr(data-success);
  color: $input-success-color;
}
%custom-error-message {
  content: attr(data-error);
  color: $input-error-color;
}
*/
.input-field {
  position: relative;
  clear: both;
}
.input-field input, .input-field textarea {
  box-sizing: border-box; /* https://stackoverflow.com/questions/1377719/padding-within-inputs-breaks-width-100*/
  padding: 0 16px;
  padding-top: 20px;
  background-color: var(--surface-color);
  border: none;
  border-radius: 4px;
  border-bottom: 1px solid var(--font-color-medium);
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.input-field input:focus:not([readonly]), .input-field textarea:focus:not([readonly]) {
  border-bottom: 2px solid var(--primary-color);
  padding-top: 21px;
}
.input-field input:disabled, .input-field input[readonly=readonly], .input-field textarea:disabled, .input-field textarea[readonly=readonly] {
  color: rgba(var(--md_sys_color_on-surface), 0.38);
  border-color: rgba(var(--md_sys_color_on-surface), 0.12);
  background-color: rgba(var(--md_sys_color_on-surface), 0.04);
}
.input-field input:focus:not([readonly]) + label, .input-field textarea:focus:not([readonly]) + label {
  color: var(--primary-color);
}
.input-field input:focus:not([readonly]) + label, .input-field input:not([placeholder=" "]) + label, .input-field input:not(:placeholder-shown) + label, .input-field textarea:focus:not([readonly]) + label, .input-field textarea:not([placeholder=" "]) + label, .input-field textarea:not(:placeholder-shown) + label {
  transform: scale(0.75);
  top: 8px;
}
.input-field input:disabled + label, .input-field input[readonly=readonly] + label, .input-field textarea:disabled + label, .input-field textarea[readonly=readonly] + label {
  color: rgba(var(--md_sys_color_on-surface), 0.38);
}
.input-field input::placeholder {
  user-select: none;
}
.input-field > label {
  color: var(--font-color-medium);
  user-select: none;
  font-size: 16px;
  position: absolute;
  left: 16px;
  top: 16px;
  cursor: text;
  transform-origin: top left;
  transition: left 0.2s ease-out, top 0.2s ease-out, transform 0.2s ease-out;
}
.input-field .supporting-text {
  color: var(--font-color-medium);
  font-size: 12px;
  padding: 0 16px;
  margin-top: 4px;
}
.input-field .character-counter {
  color: var(--font-color-medium);
  font-size: 12px;
  float: right;
  padding: 0 16px;
  margin-top: 4px;
}
.input-field .prefix {
  position: absolute;
  left: 12px;
  top: 16px;
  user-select: none;
  display: flex;
  align-self: center;
}
.input-field .suffix {
  position: absolute;
  right: 12px;
  top: 16px;
  user-select: none;
}
.input-field .prefix ~ input, .input-field .prefix ~ textarea {
  padding-left: 52px;
}
.input-field .suffix ~ input, .input-field .suffix ~ textarea {
  padding-right: 52px;
}
.input-field .prefix ~ label {
  left: 52px;
}
.input-field.outlined input, .input-field.outlined textarea {
  padding-top: 0;
  background-color: var(--background-color);
  border: 1px solid var(--font-color-medium);
  border-radius: 4px;
}
.input-field.outlined input:focus:not([readonly]), .input-field.outlined textarea:focus:not([readonly]) {
  border: 2px solid var(--primary-color);
  padding-top: 0;
  margin-left: -1px;
}
.input-field.outlined input:focus:not([readonly]) + label, .input-field.outlined textarea:focus:not([readonly]) + label {
  color: var(--primary-color);
}
.input-field.outlined input:focus:not([readonly]) + label, .input-field.outlined input:not([placeholder=" "]) + label, .input-field.outlined input:not(:placeholder-shown) + label, .input-field.outlined textarea:focus:not([readonly]) + label, .input-field.outlined textarea:not([placeholder=" "]) + label, .input-field.outlined textarea:not(:placeholder-shown) + label {
  top: -8px;
  left: 16px;
  margin-left: -4px;
  padding: 0 4px;
  background-color: var(--background-color);
}
.input-field.outlined input:disabled, .input-field.outlined input[readonly=readonly], .input-field.outlined textarea:disabled, .input-field.outlined textarea[readonly=readonly] {
  color: rgba(var(--md_sys_color_on-surface), 0.38);
  border-color: rgba(var(--md_sys_color_on-surface), 0.12);
}
.input-field.error input, .input-field.error textarea {
  border-color: var(--error-color);
}
.input-field.error input:focus:not([readonly]), .input-field.error textarea:focus:not([readonly]) {
  border-color: var(--error-color);
}
.input-field.error input:focus:not([readonly]) + label, .input-field.error textarea:focus:not([readonly]) + label {
  color: var(--error-color);
}
.input-field.error label {
  color: var(--error-color);
}
.input-field.error .supporting-text {
  color: var(--error-color);
}
.input-field.error .suffix {
  color: var(--error-color);
}

/* Search Field */
.searchbar .prefix {
  position: absolute;
  padding-left: 1rem;
  top: 0;
  user-select: none;
  display: flex;
  align-self: center;
}
.searchbar > input {
  border-width: 0;
  background-color: transparent;
  padding-left: 3rem;
}

.searchbar.has-sidebar {
  margin-left: 0;
}
@media only screen and (min-width : 993px) {
  .searchbar.has-sidebar {
    margin-left: 300px;
  }
}

/*
.input-field input[type=search] {
  display: block;
  line-height: inherit;

  .nav-wrapper & {
    height: inherit;
    padding-left: 4rem;
    width: calc(100% - 4rem);
    border: 0;
    box-shadow: none;
  }
  &:focus:not(.browser-default) {
    border: 0;
    box-shadow: none;
  }
  & + .label-icon {
    transform: none;
    left: 1rem;
  }
}
*/
/* Textarea */
textarea {
  width: 100%;
  height: 3rem;
  background-color: transparent;
}
textarea.materialize-textarea {
  padding-top: 26px !important;
  padding-bottom: 4px !important;
  line-height: normal;
  overflow-y: hidden; /* prevents scroll bar flash */
  resize: none;
  min-height: 3rem;
  box-sizing: border-box;
}

.hiddendiv {
  visibility: hidden;
  white-space: pre-wrap;
  word-wrap: break-word;
  overflow-wrap: break-word; /* future version of deprecated 'word-wrap' */
  padding-top: 1.2rem; /* prevents text jump on Enter keypress */
  position: absolute;
  top: 0;
  z-index: -1;
}

/* Autocomplete Items */
.autocomplete-content li .highlight {
  color: var(--font-color-main);
}
.autocomplete-content li img {
  height: 40px;
  width: 40px;
  margin: 5px 15px;
}

/* Radio Buttons
   ========================================================================== */
[type=radio]:not(:checked),
[type=radio]:checked {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

[type=radio]:not(:checked) + span,
[type=radio]:checked + span {
  position: relative;
  padding-left: 35px;
  cursor: pointer;
  display: inline-block;
  height: 25px;
  line-height: 25px;
  font-size: 1rem;
  transition: 0.28s ease;
  user-select: none;
}

[type=radio] + span:before,
[type=radio] + span:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  margin: 4px;
  width: 16px;
  height: 16px;
  z-index: 0;
  transition: 0.28s ease;
}

/* Unchecked styles */
[type=radio]:not(:checked) + span:before,
[type=radio]:not(:checked) + span:after,
[type=radio]:checked + span:before,
[type=radio]:checked + span:after,
[type=radio].with-gap:checked + span:before,
[type=radio].with-gap:checked + span:after {
  border-radius: 50%;
}

[type=radio]:not(:checked) + span:before,
[type=radio]:not(:checked) + span:after {
  border: 2px solid var(--font-color-medium);
}

[type=radio]:not(:checked) + span:after {
  transform: scale(0);
}

/* Checked styles */
[type=radio]:checked + span:before {
  border: 2px solid transparent;
}

[type=radio]:checked + span:after,
[type=radio].with-gap:checked + span:before,
[type=radio].with-gap:checked + span:after {
  border: 2px solid var(--primary-color);
}

[type=radio]:checked + span:after,
[type=radio].with-gap:checked + span:after {
  background-color: var(--primary-color);
}

[type=radio]:checked + span:after {
  transform: scale(1.02);
}

/* Radio With gap */
[type=radio].with-gap:checked + span:after {
  transform: scale(0.5);
}

/* Focused styles */
[type=radio].tabbed:focus + span:before {
  box-shadow: 0 0 0 10px var(--primary-color-focus-opaque);
}

/* Disabled Radio With gap */
[type=radio].with-gap:disabled:checked + span:before {
  border: 2px solid var(--font-color-disabled);
}

[type=radio].with-gap:disabled:checked + span:after {
  border: none;
  background-color: var(--font-color-disabled);
}

/* Disabled style */
[type=radio]:disabled:not(:checked) + span:before,
[type=radio]:disabled:checked + span:before {
  background-color: transparent;
  border-color: var(--font-color-disabled);
}

[type=radio]:disabled + span {
  color: var(--font-color-disabled);
}

[type=radio]:disabled:not(:checked) + span:before {
  border-color: var(--font-color-disabled);
}

[type=radio]:disabled:checked + span:after {
  background-color: var(--font-color-disabled);
  border-color: var(--font-color-disabled);
}

/* Checkboxes
   ========================================================================== */
/* Remove default checkbox */
[type=checkbox]:not(:checked),
[type=checkbox]:checked {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

[type=checkbox] {
  /* checkbox aspect */
}
[type=checkbox] + span:not(.lever) {
  position: relative;
  padding-left: 35px;
  cursor: pointer;
  display: inline-block;
  height: 25px;
  line-height: 25px;
  font-size: 1rem;
  user-select: none;
}
[type=checkbox] + span:not(.lever):before, [type=checkbox]:not(.filled-in) + span:not(.lever):after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 18px;
  height: 18px;
  z-index: 0;
  border: 2px solid var(--font-color-medium);
  border-radius: 1px;
  margin-top: 3px;
  transition: 0.2s;
}
[type=checkbox]:not(.filled-in) + span:not(.lever):after {
  border: 0;
  transform: scale(0);
}
[type=checkbox]:not(:checked):disabled + span:not(.lever):before {
  border: none;
  background-color: var(--font-color-disabled);
}
[type=checkbox].tabbed:focus + span:not(.lever):after {
  transform: scale(1);
  border: 0;
  border-radius: 50%;
  box-shadow: 0 0 0 10px var(--focus-color);
  background-color: var(--focus-color);
}

[type=checkbox]:checked + span:not(.lever):before {
  top: -4px;
  left: -5px;
  width: 12px;
  height: 22px;
  border-top: 2px solid transparent;
  border-left: 2px solid transparent;
  border-right: 2px solid var(--primary-color);
  border-bottom: 2px solid var(--primary-color);
  transform: rotate(40deg);
  backface-visibility: hidden;
  transform-origin: 100% 100%;
}
[type=checkbox]:checked:disabled + span:before {
  border-right: 2px solid var(--font-color-disabled);
  border-bottom: 2px solid var(--font-color-disabled);
}

/* Indeterminate checkbox */
[type=checkbox]:indeterminate + span:not(.lever):before {
  top: -11px;
  left: -12px;
  width: 10px;
  height: 22px;
  border-top: none;
  border-left: none;
  border-right: 2px solid var(--primary-color);
  border-bottom: none;
  transform: rotate(90deg);
  backface-visibility: hidden;
  transform-origin: 100% 100%;
}
[type=checkbox]:indeterminate:disabled + span:not(.lever):before {
  border-right: 2px solid var(--font-color-disabled);
  background-color: transparent;
}

[type=checkbox].filled-in + span:not(.lever):after {
  border-radius: 2px;
}
[type=checkbox].filled-in + span:not(.lever):before,
[type=checkbox].filled-in + span:not(.lever):after {
  content: "";
  left: 0;
  position: absolute;
  /* .1s delay is for check animation */
  transition: border 0.25s, background-color 0.25s, width 0.2s 0.1s, height 0.2s 0.1s, top 0.2s 0.1s, left 0.2s 0.1s;
  z-index: 1;
}
[type=checkbox].filled-in:not(:checked) + span:not(.lever):before {
  width: 0;
  height: 0;
  border: 3px solid transparent;
  left: 6px;
  top: 10px;
  transform: rotateZ(37deg);
  transform-origin: 100% 100%;
}
[type=checkbox].filled-in:not(:checked) + span:not(.lever):after {
  height: 20px;
  width: 20px;
  background-color: transparent;
  border: 2px solid var(--font-color-medium);
  top: 0px;
  z-index: 0;
}
[type=checkbox].filled-in:checked + span:not(.lever):before {
  top: 0;
  left: 1px;
  width: 8px;
  height: 13px;
  border-top: 2px solid transparent;
  border-left: 2px solid transparent;
  border-right: 2px solid var(--font-on-primary-color-main);
  border-bottom: 2px solid var(--font-on-primary-color-main);
  transform: rotateZ(37deg);
  transform-origin: 100% 100%;
}
[type=checkbox].filled-in:checked + span:not(.lever):after {
  top: 0;
  width: 20px;
  height: 20px;
  border: 2px solid var(--primary-color);
  background-color: var(--primary-color);
  z-index: 0;
}
[type=checkbox].filled-in.tabbed:focus + span:not(.lever):after {
  border-radius: 2px;
  border-color: var(--font-color-medium);
  background-color: var(--focus-color);
}
[type=checkbox].filled-in.tabbed:checked:focus + span:not(.lever):after {
  border-radius: 2px;
  background-color: var(--primary-color);
  border-color: var(--primary-color);
}
[type=checkbox].filled-in:disabled:not(:checked) + span:not(.lever):before {
  background-color: transparent;
  border: 2px solid transparent;
}
[type=checkbox].filled-in:disabled:not(:checked) + span:not(.lever):after {
  border-color: transparent;
  background-color: var(--font-color-disabled);
}
[type=checkbox].filled-in:disabled:checked + span:not(.lever):before {
  background-color: transparent;
}
[type=checkbox].filled-in:disabled:checked + span:not(.lever):after {
  background-color: var(--font-color-disabled);
  border-color: var(--font-color-disabled);
}

/* Switch
   ========================================================================== */
.switch {
  --track-height: 32px;
  --track-width: 52px;
  --border-width: 2px;
  --size-off: 16px;
  --size-on: 24px;
  --icon-size: 16px;
  --gap-on: calc(((var(--track-height) - var(--size-on)) / 2) - var(--border-width));
  --gap-off: calc(((var(--track-height) - var(--size-off)) / 2) - var(--border-width));
}

.switch,
.switch * {
  -webkit-tap-highlight-color: transparent;
  user-select: none;
}

.switch label {
  cursor: pointer;
}

.switch label input[type=checkbox] {
  opacity: 0;
  width: 0;
  height: 0;
}
.switch label input[type=checkbox]:checked + .lever {
  background-color: var(--primary-color);
  border-color: var(--primary-color);
}
.switch label input[type=checkbox]:checked + .lever:before, .switch label input[type=checkbox]:checked + .lever:after {
  top: var(--gap-on);
  left: calc(var(--track-width) - var(--size-on) - var(--gap-on) - 2 * var(--border-width));
  width: var(--size-on);
  height: var(--size-on);
}
.switch label .lever {
  content: "";
  display: inline-block;
  position: relative;
  width: var(--track-width);
  height: var(--track-height);
  border-style: solid;
  border-width: 2px;
  border-color: var(--md-sys-color-outline);
  border-radius: 15px;
  margin-right: 10px;
  transition: background 0.3s ease;
  vertical-align: middle;
  margin: 0 16px;
}
.switch label .lever:before, .switch label .lever:after {
  content: "";
  position: absolute;
  display: inline-block;
  width: var(--size-off);
  height: var(--size-off);
  border-radius: 50%;
  left: var(--gap-off);
  top: var(--gap-off);
  transition: left 0.3s ease, background 0.3s ease, box-shadow 0.1s ease, transform 0.1s ease;
}
.switch label .lever:after {
  height: var(--size-off);
  width: var(--size-off);
}

input[type=checkbox]:not(:disabled) ~ .lever:active:before,
input[type=checkbox]:not(:disabled).tabbed:focus ~ .lever::before,
input[type=checkbox]:not(:disabled) ~ .lever:hover::before {
  transform: scale(2.4);
}

input[type=checkbox]:checked:not(:disabled) ~ .lever:hover::before {
  background-color: var(--primary-color-hover-opaque);
}

input[type=checkbox]:checked:not(:disabled) ~ .lever:active::before,
input[type=checkbox]:checked:not(:disabled).tabbed:focus ~ .lever::before {
  background-color: var(--primary-color-focus-opaque);
}

input[type=checkbox]:not(:disabled) ~ .lever:hover::before {
  background-color: var(--hover-color);
}

input[type=checkbox]:not(:disabled) ~ .lever:active:before,
input[type=checkbox]:not(:disabled).tabbed:focus ~ .lever::before {
  background-color: var(--focus-color);
}

.switch input[type=checkbox][disabled] + .lever {
  cursor: default;
  opacity: 0.5;
}

/* Select Field
   ========================================================================== */
select.browser-default {
  opacity: 1;
  color: var(--font-color-main);
}

select {
  opacity: 0;
  background-color: var(--surface-color);
  width: 100%;
  padding: 5px;
  border: 1px solid var(--separator-color);
  border-radius: 2px;
  height: 3rem;
}

.select-wrapper {
  /*
  &.valid .helper-text[data-success],
  &.invalid ~ .helper-text[data-error] {
    @extend %hidden-text;
  }

  &.valid {
    & > input.select-dropdown {
      @extend %valid-input-style;
    }
    & ~ .helper-text:after {
      //@extend %custom-success-message;
    }
  }

  &.invalid {
    & > input.select-dropdown,
    & > input.select-dropdown:focus {
      @extend %invalid-input-style;
    }
    & ~ .helper-text:after {
      //@extend %custom-error-message;
    }
  }

  &.valid + label,
  &.invalid + label {
    width: 100%;
    pointer-events: none;
  }
  & + label:after {
    //@extend %input-after-style;
  }
  */
  position: relative;
  /*
  input.select-dropdown {    
    &:focus {
      border-bottom: 1px solid $input-focus-color;
    }
    position: relative;
    cursor: pointer;
    background-color: transparent;
    border: none;
    border-bottom: $input-border;
    outline: none;
    height: $input-height;
    line-height: $input-height;
    width: 100%;
    font-size: $input-font-size;
    margin: $input-margin;
    padding: 0;
    display: block;
    user-select:none;
    z-index: 1;
    color: $select-input-color;
  }
  */
  /*
  & + label {
    position: absolute;
    top: -26px;
    font-size: $label-font-size;
  }
  */
}
.select-wrapper .caret {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto 0;
  z-index: 0;
  fill: var(--font-color-main);
}
.select-wrapper .hide-select {
  width: 0;
  height: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
  z-index: -1;
}

select:disabled {
  color: var(--font-color-disabled);
}

.select-wrapper.disabled + label {
  color: var(--font-color-disabled);
}
.select-wrapper.disabled .caret {
  fill: var(--font-color-disabled);
}

.select-wrapper input.select-dropdown:disabled {
  color: var(--font-color-disabled);
  cursor: default;
  user-select: none;
}

.select-wrapper i {
  color: var(--font-color-disabled);
}

.select-dropdown li.disabled,
.select-dropdown li.disabled > span,
.select-dropdown li.optgroup {
  color: var(--font-color-disabled);
  background-color: transparent;
}

body.keyboard-focused .select-dropdown.dropdown-content li:focus {
  background-color: var(--focus-color);
}

.select-dropdown.dropdown-content li:hover:not(.disabled) {
  background-color: var(--hover-color);
}
.select-dropdown.dropdown-content li.selected:not(.disabled) {
  background-color: var(--focus-color);
}

/*
// Prefix Icons
.prefix ~ .select-wrapper {
  margin-left: 3rem;
  width: 92%;
  width: calc(100% - 3rem);
}
.prefix ~ label { margin-left: 3rem; }
// Suffix Icons
.suffix ~ .select-wrapper {
  margin-right: 3rem;
  width: 92%;
  width: calc(100% - 3rem);
}
.suffix ~ label { margin-right: 3rem; }
*/
.select-dropdown li img {
  height: 40px;
  width: 40px;
  margin: 5px 15px;
  float: right;
}

.select-dropdown li.optgroup {
  border-top: 1px solid var(--hover-color);
}
.select-dropdown li.optgroup.selected > span {
  color: var(--font-color-main);
}
.select-dropdown li.optgroup > span {
  color: var(--font-color-medium);
}
.select-dropdown li.optgroup ~ li.optgroup-option {
  padding-left: 1rem;
}

/* File Input
   ========================================================================== */
.file-field {
  display: grid;
  grid-template-columns: min-content auto;
  gap: 10px;
}
.file-field .file-path-wrapper {
  overflow: hidden;
}
.file-field input.file-path {
  width: 100%;
}
.file-field .btn, .file-field .btn-large, .file-field .btn-small {
  height: 3rem;
  line-height: 3rem;
}
.file-field span {
  cursor: pointer;
}
.file-field input[type=file] {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  cursor: pointer;
  width: 100%;
  margin: 0;
  padding: 0;
  opacity: 0;
  font-size: 20px;
  filter: alpha(opacity=0);
}
.file-field input[type=file]::-webkit-file-upload-button {
  display: none;
}

/* Range
   ========================================================================== */
.range-field {
  position: relative;
}

input[type=range],
input[type=range] + .thumb {
  cursor: pointer;
}

input[type=range] {
  position: relative;
  background-color: transparent;
  border: none;
  outline: none;
  width: 100%;
  margin: 15px 0;
  padding: 0;
}
input[type=range]:focus {
  outline: none;
}

input[type=range] + .thumb {
  position: absolute;
  top: 10px;
  left: 0;
  border: none;
  height: 0;
  width: 0;
  border-radius: 50%;
  background-color: var(--primary-color);
  margin-left: 7px;
  transform-origin: 50% 50%;
  transform: rotate(-45deg);
}
input[type=range] + .thumb .value {
  display: block;
  width: 30px;
  text-align: center;
  color: var(--primary-color);
  font-size: 0;
  transform: rotate(45deg);
}
input[type=range] + .thumb.active {
  border-radius: 50% 50% 50% 0;
}
input[type=range] + .thumb.active .value {
  color: var(--font-on-primary-color-main);
  margin-left: -1px;
  margin-top: 8px;
  font-size: 10px;
}

input[type=range] {
  -webkit-appearance: none;
}

input[type=range]::-webkit-slider-runnable-track {
  height: 3px;
  border: none;
}

input[type=range]::-webkit-slider-thumb {
  border: none;
  height: 14px;
  width: 14px;
  border-radius: 50%;
  background: var(--primary-color);
  transition: box-shadow 0.3s;
  -webkit-appearance: none;
  background-color: var(--primary-color);
  transform-origin: 50% 50%;
  margin: -5px 0 0 0;
}

.keyboard-focused input[type=range]:focus:not(.active)::-webkit-slider-thumb {
  box-shadow: 0 0 0 10px var(--primary-color-focus-opaque);
}

input[type=range] {
  /*required for proper track sizing in FF*/
}

input[type=range]::-moz-range-track {
  height: 3px;
  border: none;
}

input[type=range]::-moz-focus-inner {
  border: 0;
}

input[type=range]::-moz-range-thumb {
  border: none;
  height: 14px;
  width: 14px;
  border-radius: 50%;
  background: var(--primary-color);
  transition: box-shadow 0.3s;
  margin-top: -5px;
}

input[type=range]:-moz-focusring {
  outline: 1px solid #fff;
  outline-offset: -1px;
}

.keyboard-focused input[type=range]:focus:not(.active)::-moz-range-thumb {
  box-shadow: 0 0 0 10px var(--primary-color-focus-opaque);
}

input[type=range]::-ms-track {
  height: 3px;
  background: transparent;
  border-color: transparent;
  border-width: 6px 0;
  /*remove default tick marks*/
  color: transparent;
}

input[type=range]::-ms-fill-lower,
input[type=range]::-moz-range-progress {
  background: var(--primary-color);
}

input[type=range]::-ms-fill-upper,
input[type=range]::-moz-range-track {
  background: var(--slider-track-color);
}

input[type=range]::-ms-thumb {
  border: none;
  height: 14px;
  width: 14px;
  border-radius: 50%;
  background: var(--primary-color);
  transition: box-shadow 0.3s;
}

.keyboard-focused input[type=range]:focus:not(.active)::-ms-thumb {
  box-shadow: 0 0 0 10px var(--primary-color-focus-opaque);
}

/***************
    Nav List
***************/
.table-of-contents.fixed {
  position: fixed;
}
.table-of-contents li {
  padding: 0;
}
.table-of-contents a {
  display: inline-block;
  font-weight: 400;
  color: var(--font-color-medium);
  padding-left: 16px;
  height: 2rem;
  line-height: 2rem;
  border-left: 1px solid var(--separator-color);
}
.table-of-contents a:hover {
  color: var(--font-color-main);
  padding-left: 15px;
}
.table-of-contents a.active {
  color: var(--primary-color);
  font-weight: 500;
  padding-left: 14px;
  border-left: 2px solid var(--primary-color);
}

/* This should be an UL-Element*/
.sidenav {
  position: fixed;
  width: 300px;
  left: 0;
  top: 0;
  margin: 0;
  transform: translateX(-100%);
  height: 100vh;
  padding: 0;
  background-color: var(--background-color-level-16dp-solid);
  z-index: 999;
  overflow-y: auto;
  will-change: transform;
  backface-visibility: hidden;
  transform: translateX(-105%);
  user-select: none;
  /* Hover only on top row */
}
.sidenav.right-aligned {
  right: 0;
  transform: translateX(105%);
  left: auto;
  transform: translateX(100%);
}
.sidenav .collapsible {
  margin: 0;
}
.sidenav a:hover {
  background-color: var(--hover-color);
}
.sidenav a:focus {
  background-color: var(--focus-color);
}
.sidenav li.active > a:not(.collapsible-header):not(.btn):not(.btn-large):not(.btn-small):not(.btn-large):not(.btn-small):not(.btn-flat):not(.btn-large):not(.btn-floating) {
  color: var(--font-on-secondary-container-color);
  background-color: var(--secondary-container-color);
}
.sidenav .collapsible-body > ul {
  padding-left: 10px;
}
.sidenav li {
  list-style: none;
  display: grid;
  align-content: center;
}
.sidenav li > a {
  /* https://stackoverflow.com/questions/5848090/full-width-hover-background-for-nested-lists */
  margin: 0 12px;
  padding: 0 16px;
  /*
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  */
  display: flex;
  height: 48px;
  font-size: 14px;
  font-weight: 500;
  align-items: center;
  overflow: hidden;
  border-radius: 100px;
  /* TODO: Use special class in future like "mw-icon" */
}
.sidenav li > a:not(.btn):not(.btn-large):not(.btn-small):not(.btn-flat):not(.btn-large):not(.btn-floating) {
  color: var(--font-color-main);
}
.sidenav li > a.btn, .sidenav li > a.btn-small, .sidenav li > a.btn-large, .sidenav li > a.btn-flat, .sidenav li > a.btn-floating {
  margin: 10px 15px;
}
.sidenav li > a > .material-icons, .sidenav li > a > .material-symbols-outlined, .sidenav li > a > .material-symbols-rounded, .sidenav li > a > .material-symbols-sharp {
  display: inline-flex;
  vertical-align: middle;
  color: var(--font-color-medium);
  margin-right: 12px;
}
.sidenav .divider {
  margin: 8px 0 0 0;
}
.sidenav .subheader {
  cursor: initial;
  pointer-events: none;
  color: var(--font-color-medium);
  font-size: 14px;
  font-weight: 500;
  line-height: 48px;
}
.sidenav .user-view {
  position: relative;
  padding: 32px 32px 0;
  margin-bottom: 8px;
}
.sidenav .user-view > a {
  height: auto;
  padding: 0;
}
.sidenav .user-view > a:hover {
  background-color: transparent;
}
.sidenav .user-view .background {
  overflow: hidden;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
}
.sidenav .user-view .circle, .sidenav .user-view .name, .sidenav .user-view .email {
  display: block;
}
.sidenav .user-view .circle {
  height: 64px;
  width: 64px;
}
.sidenav .user-view .name,
.sidenav .user-view .email {
  font-size: 14px;
  line-height: 24px;
}
.sidenav .user-view .name {
  margin-top: 16px;
  font-weight: 500;
}
.sidenav .user-view .email {
  padding-bottom: 16px;
  font-weight: 400;
}

.drag-target {
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 998;
}
.drag-target.right-aligned {
  right: 0;
}

.sidenav.sidenav-fixed {
  left: 0;
  transform: translateX(0);
  position: fixed;
}
.sidenav.sidenav-fixed.right-aligned {
  right: 0;
  left: auto;
}

@media only screen and (max-width : 992.99px) {
  .sidenav.sidenav-fixed {
    transform: translateX(-105%);
  }
  .sidenav.sidenav-fixed.right-aligned {
    transform: translateX(105%);
  }
  .sidenav > a {
    padding: 0 16px;
  }
  .sidenav .user-view {
    padding: 16px 16px 0;
  }
}
.sidenav .collapsible-body {
  padding: 0;
}

.sidenav-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  opacity: 0;
  height: 120vh;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 997;
  display: none;
}

.sidenav .collapsible,
.sidenav.sidenav-fixed .collapsible {
  border: none;
  box-shadow: none;
}
.sidenav .collapsible-header,
.sidenav.sidenav-fixed .collapsible-header {
  border: none;
}
.sidenav .collapsible-body,
.sidenav.sidenav-fixed .collapsible-body {
  border: none;
}

.progress {
  position: relative;
  height: 4px;
  display: block;
  width: 100%;
  border-radius: 2px;
  margin: 0.5rem 0 1rem 0;
  overflow: hidden;
}
.progress .determinate {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  background-color: var(--primary-color);
  transition: width 0.3s linear;
}
.progress .indeterminate {
  background-color: var(--primary-color);
}
.progress .indeterminate:before {
  content: "";
  position: absolute;
  background-color: inherit;
  top: 0;
  left: 0;
  bottom: 0;
  will-change: left, right;
  animation: indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;
}
.progress .indeterminate:after {
  content: "";
  position: absolute;
  background-color: inherit;
  top: 0;
  left: 0;
  bottom: 0;
  will-change: left, right;
  animation: indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;
  animation-delay: 1.15s;
}

@keyframes indeterminate {
  0% {
    left: -35%;
    right: 100%;
  }
  60% {
    left: 100%;
    right: -90%;
  }
  100% {
    left: 100%;
    right: -90%;
  }
}
@keyframes indeterminate-short {
  0% {
    left: -200%;
    right: 100%;
  }
  60% {
    left: 107%;
    right: -8%;
  }
  100% {
    left: 107%;
    right: -8%;
  }
}
/*
    @license
    Copyright (c) 2014 The Polymer Project Authors. All rights reserved.
    This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
    The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
    The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
    Code distributed by Google as part of the polymer project is also
    subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
 */
/**************************/
/* STYLES FOR THE SPINNER */
/**************************/
/*
 * Constants:
 *      STROKEWIDTH = 3px
 *      ARCSIZE     = 270 degrees (amount of circle the arc takes up)
 *      ARCTIME     = 1333ms (time it takes to expand and contract arc)
 *      ARCSTARTROT = 216 degrees (how much the start location of the arc
 *                                should rotate each time, 216 gives us a
 *                                5 pointed star shape (it's 360/5 * 3).
 *                                For a 7 pointed star, we might do
 *                                360/7 * 3 = 154.286)
 *      CONTAINERWIDTH = 28px
 *      SHRINK_TIME = 400ms
 */
.preloader-wrapper {
  display: inline-block;
  position: relative;
  width: 50px;
  height: 50px;
}
.preloader-wrapper.small {
  width: 36px;
  height: 36px;
}
.preloader-wrapper.big {
  width: 64px;
  height: 64px;
}
.preloader-wrapper.active {
  /* duration: 360 * ARCTIME / (ARCSTARTROT + (360-ARCSIZE)) */
  -webkit-animation: container-rotate 1568ms linear infinite;
  animation: container-rotate 1568ms linear infinite;
}

@-webkit-keyframes container-rotate {
  to {
    -webkit-transform: rotate(360deg);
  }
}
@keyframes container-rotate {
  to {
    transform: rotate(360deg);
  }
}
.spinner-layer {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0;
  border-color: var(--primary-color);
}

.spinner-blue,
.spinner-blue-only {
  border-color: #4285f4;
}

.spinner-red,
.spinner-red-only {
  border-color: #db4437;
}

.spinner-yellow,
.spinner-yellow-only {
  border-color: #f4b400;
}

.spinner-green,
.spinner-green-only {
  border-color: #0f9d58;
}

/**
 * IMPORTANT NOTE ABOUT CSS ANIMATION PROPERTIES (keanulee):
 *
 * iOS Safari (tested on iOS 8.1) does not handle animation-delay very well - it doesn't
 * guarantee that the animation will start _exactly_ after that value. So we avoid using
 * animation-delay and instead set custom keyframes for each color (as redundant as it
 * seems).
 *
 * We write out each animation in full (instead of separating animation-name,
 * animation-duration, etc.) because under the polyfill, Safari does not recognize those
 * specific properties properly, treats them as -webkit-animation, and overrides the
 * other animation rules. See https://github.com/Polymer/platform/issues/53.
 */
.active .spinner-layer.spinner-blue {
  /* durations: 4 * ARCTIME */
  -webkit-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, blue-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, blue-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

.active .spinner-layer.spinner-red {
  /* durations: 4 * ARCTIME */
  -webkit-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, red-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, red-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

.active .spinner-layer.spinner-yellow {
  /* durations: 4 * ARCTIME */
  -webkit-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, yellow-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, yellow-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

.active .spinner-layer.spinner-green {
  /* durations: 4 * ARCTIME */
  -webkit-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, green-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both, green-fade-in-out 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

.active .spinner-layer,
.active .spinner-layer.spinner-blue-only,
.active .spinner-layer.spinner-red-only,
.active .spinner-layer.spinner-yellow-only,
.active .spinner-layer.spinner-green-only {
  /* durations: 4 * ARCTIME */
  opacity: 1;
  -webkit-animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: fill-unfill-rotate 5332ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

@-webkit-keyframes fill-unfill-rotate {
  12.5% {
    -webkit-transform: rotate(135deg);
  } /* 0.5 * ARCSIZE */
  25% {
    -webkit-transform: rotate(270deg);
  } /* 1   * ARCSIZE */
  37.5% {
    -webkit-transform: rotate(405deg);
  } /* 1.5 * ARCSIZE */
  50% {
    -webkit-transform: rotate(540deg);
  } /* 2   * ARCSIZE */
  62.5% {
    -webkit-transform: rotate(675deg);
  } /* 2.5 * ARCSIZE */
  75% {
    -webkit-transform: rotate(810deg);
  } /* 3   * ARCSIZE */
  87.5% {
    -webkit-transform: rotate(945deg);
  } /* 3.5 * ARCSIZE */
  to {
    -webkit-transform: rotate(1080deg);
  } /* 4   * ARCSIZE */
}
@keyframes fill-unfill-rotate {
  12.5% {
    transform: rotate(135deg);
  } /* 0.5 * ARCSIZE */
  25% {
    transform: rotate(270deg);
  } /* 1   * ARCSIZE */
  37.5% {
    transform: rotate(405deg);
  } /* 1.5 * ARCSIZE */
  50% {
    transform: rotate(540deg);
  } /* 2   * ARCSIZE */
  62.5% {
    transform: rotate(675deg);
  } /* 2.5 * ARCSIZE */
  75% {
    transform: rotate(810deg);
  } /* 3   * ARCSIZE */
  87.5% {
    transform: rotate(945deg);
  } /* 3.5 * ARCSIZE */
  to {
    transform: rotate(1080deg);
  } /* 4   * ARCSIZE */
}
@-webkit-keyframes blue-fade-in-out {
  from {
    opacity: 1;
  }
  25% {
    opacity: 1;
  }
  26% {
    opacity: 0;
  }
  89% {
    opacity: 0;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes blue-fade-in-out {
  from {
    opacity: 1;
  }
  25% {
    opacity: 1;
  }
  26% {
    opacity: 0;
  }
  89% {
    opacity: 0;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes red-fade-in-out {
  from {
    opacity: 0;
  }
  15% {
    opacity: 0;
  }
  25% {
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  51% {
    opacity: 0;
  }
}
@keyframes red-fade-in-out {
  from {
    opacity: 0;
  }
  15% {
    opacity: 0;
  }
  25% {
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  51% {
    opacity: 0;
  }
}
@-webkit-keyframes yellow-fade-in-out {
  from {
    opacity: 0;
  }
  40% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  75% {
    opacity: 1;
  }
  76% {
    opacity: 0;
  }
}
@keyframes yellow-fade-in-out {
  from {
    opacity: 0;
  }
  40% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  75% {
    opacity: 1;
  }
  76% {
    opacity: 0;
  }
}
@-webkit-keyframes green-fade-in-out {
  from {
    opacity: 0;
  }
  65% {
    opacity: 0;
  }
  75% {
    opacity: 1;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes green-fade-in-out {
  from {
    opacity: 0;
  }
  65% {
    opacity: 0;
  }
  75% {
    opacity: 1;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
/**
 * Patch the gap that appear between the two adjacent div.circle-clipper while the
 * spinner is rotating (appears on Chrome 38, Safari 7.1, and IE 11).
 */
.gap-patch {
  position: absolute;
  top: 0;
  left: 45%;
  width: 10%;
  height: 100%;
  overflow: hidden;
  border-color: inherit;
}

.gap-patch .circle {
  width: 1000%;
  left: -450%;
}

.circle-clipper {
  display: inline-block;
  position: relative;
  width: 50%;
  height: 100%;
  overflow: hidden;
  border-color: inherit;
}
.circle-clipper .circle {
  width: 200%;
  height: 100%;
  border-width: 3px; /* STROKEWIDTH */
  border-style: solid;
  border-color: inherit;
  border-bottom-color: transparent !important;
  border-radius: 50%;
  -webkit-animation: none;
  animation: none;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
}
.circle-clipper.left .circle {
  left: 0;
  border-right-color: transparent !important;
  -webkit-transform: rotate(129deg);
  transform: rotate(129deg);
}
.circle-clipper.right .circle {
  left: -100%;
  border-left-color: transparent !important;
  -webkit-transform: rotate(-129deg);
  transform: rotate(-129deg);
}

.active .circle-clipper.left .circle {
  /* duration: ARCTIME */
  -webkit-animation: left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: left-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

.active .circle-clipper.right .circle {
  /* duration: ARCTIME */
  -webkit-animation: right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
  animation: right-spin 1333ms cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}

@-webkit-keyframes left-spin {
  from {
    -webkit-transform: rotate(130deg);
  }
  50% {
    -webkit-transform: rotate(-5deg);
  }
  to {
    -webkit-transform: rotate(130deg);
  }
}
@keyframes left-spin {
  from {
    transform: rotate(130deg);
  }
  50% {
    transform: rotate(-5deg);
  }
  to {
    transform: rotate(130deg);
  }
}
@-webkit-keyframes right-spin {
  from {
    -webkit-transform: rotate(-130deg);
  }
  50% {
    -webkit-transform: rotate(5deg);
  }
  to {
    -webkit-transform: rotate(-130deg);
  }
}
@keyframes right-spin {
  from {
    transform: rotate(-130deg);
  }
  50% {
    transform: rotate(5deg);
  }
  to {
    transform: rotate(-130deg);
  }
}
#spinnerContainer.cooldown {
  /* duration: SHRINK_TIME */
  -webkit-animation: container-rotate 1568ms linear infinite, fade-out 400ms cubic-bezier(0.4, 0, 0.2, 1);
  animation: container-rotate 1568ms linear infinite, fade-out 400ms cubic-bezier(0.4, 0, 0.2, 1);
}

@-webkit-keyframes fade-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes fade-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
.slider {
  position: relative;
  height: 400px;
  width: 100%;
}
.slider.fullscreen {
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.slider.fullscreen ul.slides {
  padding-left: 0;
  list-style-type: none;
  height: 100%;
}
.slider.fullscreen ul.indicators {
  padding-left: 0;
  list-style-type: none;
  z-index: 2;
  bottom: 30px;
}
.slider.fullscreen ul.indicators .indicator-item {
  background-color: var(--carousel-indicator-color);
}
.slider.fullscreen ul.indicators .indicator-item.active {
  background-color: var(--carousel-indicator-active-color);
}
.slider .slides {
  background-color: var(--surface-color);
  margin: 0;
  height: 400px;
  padding-left: 0;
  list-style-type: none;
}
.slider .slides li {
  padding-left: 0;
  list-style-type: none;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: inherit;
  overflow: hidden;
}
.slider .slides li img {
  height: 100%;
  width: 100%;
  background-size: cover;
  background-position: center;
}
.slider .slides li .caption {
  color: #fff;
  position: absolute;
  top: 15%;
  left: 15%;
  width: 70%;
  opacity: 0;
}
.slider .slides li .caption p {
  color: rgba(255, 255, 255, 0.75);
}
.slider .slides li.active {
  z-index: 2;
}
.slider .indicators {
  padding-left: 0;
  list-style-type: none;
  position: absolute;
  text-align: center;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0;
}
.slider .indicators .indicator-item {
  display: inline-block;
  position: relative;
  height: 16px;
  width: 16px;
  margin: 0 12px;
}
.slider .indicators .indicator-item-btn {
  position: absolute;
  top: 0;
  left: 0;
  cursor: pointer;
  background-color: var(--slider-track-color);
  transition: background-color 0.3s;
  border-radius: 50%;
  border-width: 0;
  width: 100%;
  height: 100%;
}
.slider .indicators .indicator-item-btn.active {
  background-color: var(--primary-color);
}

.carousel {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 400px;
  perspective: 500px;
  transform-style: preserve-3d;
  transform-origin: 0% 50%;
}
.carousel.carousel-slider {
  top: 0;
  left: 0;
}
.carousel.carousel-slider .carousel-fixed-item {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 20px;
  z-index: 1;
}
.carousel.carousel-slider .carousel-fixed-item.with-indicators {
  bottom: 68px;
}
.carousel.carousel-slider .carousel-item {
  width: 100%;
  height: 100%;
  min-height: 400px;
  position: absolute;
  top: 0;
  left: 0;
}
.carousel.carousel-slider .carousel-item h2 {
  font-size: 24px;
  font-weight: 500;
  line-height: 32px;
}
.carousel.carousel-slider .carousel-item p {
  font-size: 15px;
}
.carousel .carousel-item {
  visibility: hidden;
  width: 200px;
  height: 200px;
  position: absolute;
  top: 0;
  left: 0;
}
.carousel .carousel-item > img {
  width: 100%;
}
.carousel .indicators {
  padding-left: 0;
  list-style-type: none;
  position: absolute;
  text-align: center;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0;
}
.carousel .indicators .indicator-item {
  display: inline-block;
  position: relative;
  cursor: pointer;
  height: 8px;
  width: 8px;
  margin: 24px 4px;
  background-color: var(--carousel-indicator-color);
  transition: background-color 0.3s;
  border-radius: 50%;
}
.carousel .indicators .indicator-item.active {
  background-color: var(--carousel-indicator-active-color);
}
.carousel.scrolling .carousel-item .materialboxed,
.carousel .carousel-item:not(.active) .materialboxed {
  pointer-events: none;
}

.tap-target-wrapper {
  width: 800px;
  height: 800px;
  position: fixed;
  z-index: 1000;
  visibility: hidden;
  transition: visibility 0s 0.3s;
}

.tap-target-wrapper.open {
  visibility: visible;
  transition: visibility 0s;
}
.tap-target-wrapper.open .tap-target {
  transform: scale(1);
  opacity: 0.95;
  transition: transform 0.3s cubic-bezier(0.42, 0, 0.58, 1), opacity 0.3s cubic-bezier(0.42, 0, 0.58, 1);
}
.tap-target-wrapper.open .tap-target-wave::before {
  transform: scale(1);
}
.tap-target-wrapper.open .tap-target-wave::after {
  visibility: visible;
  animation: pulse-animation 1s cubic-bezier(0.24, 0, 0.38, 1) infinite;
  transition: opacity 0.3s, transform 0.3s, visibility 0s 1s;
}

.tap-target {
  position: absolute;
  font-size: 1rem;
  border-radius: 50%;
  background-color: var(--secondary-color);
  color: var(--font-on-secondary-color-main);
  box-shadow: 0 20px 20px 0 rgba(0, 0, 0, 0.14), 0 10px 50px 0 rgba(0, 0, 0, 0.12), 0 30px 10px -20px rgba(0, 0, 0, 0.2);
  width: 100%;
  height: 100%;
  opacity: 0;
  transform: scale(0);
  transition: transform 0.3s cubic-bezier(0.42, 0, 0.58, 1), opacity 0.3s cubic-bezier(0.42, 0, 0.58, 1);
}

.tap-target-content {
  position: relative;
  display: table-cell;
}

.tap-target-wave {
  position: absolute;
  border-radius: 50%;
  z-index: 10001;
}
.tap-target-wave::before, .tap-target-wave::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: var(--surface-color);
}
.tap-target-wave::before {
  transform: scale(0);
  transition: transform 0.3s;
}
.tap-target-wave::after {
  visibility: hidden;
  transition: opacity 0.3s, transform 0.3s, visibility 0s;
  z-index: -1;
}

.tap-target-origin {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10002;
  position: absolute !important;
}
.tap-target-origin:not(.btn):not(.btn-large):not(.btn-small), .tap-target-origin:not(.btn):not(.btn-large):not(.btn-small):hover {
  background: none;
}

@media only screen and (max-width: 600px) {
  .tap-target, .tap-target-wrapper {
    width: 600px;
    height: 600px;
  }
}
.pulse {
  overflow: visible;
  position: relative;
}
.pulse::before {
  content: "";
  display: block;
  position: absolute;
  pointer-events: none;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: inherit;
  border-radius: inherit;
  transition: opacity 0.3s, transform 0.3s;
  animation: pulse-animation 1s cubic-bezier(0.24, 0, 0.38, 1) infinite;
  z-index: -1;
}

@keyframes pulse-animation {
  0% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0;
    transform: scale(1.5);
  }
  100% {
    opacity: 0;
    transform: scale(1.5);
  }
}
/* Modal */
.datepicker-modal {
  max-width: 325px;
  min-width: 300px;
  max-height: none;
}

.datepicker-container.modal-content {
  display: flex;
  flex-direction: column;
  padding: 0;
  background-color: var(--surface-color);
}

.datepicker-controls {
  display: flex;
  justify-content: space-between;
  width: 280px;
  margin: 0 auto;
}
.datepicker-controls .selects-container {
  display: flex;
}
.datepicker-controls .select-wrapper input {
  border-bottom: none;
  text-align: center;
  margin: 0;
}
.datepicker-controls .select-wrapper input:focus {
  border-bottom: none;
}
.datepicker-controls .select-wrapper .caret {
  display: none;
}
.datepicker-controls .select-year input {
  width: 50px;
}
.datepicker-controls .select-month input {
  width: 80px;
}
.datepicker-controls .month-prev,
.datepicker-controls .month-next {
  display: inline-flex;
  align-items: center;
}
.datepicker-controls .month-prev > svg,
.datepicker-controls .month-next > svg {
  fill: var(--font-color-medium);
}

.month-prev, .month-next {
  margin-top: 4px;
  cursor: pointer;
  background-color: transparent;
  border: none;
}

/* Date Display */
.datepicker-date-display {
  flex: 1 auto;
  background-color: var(--primary-color);
  color: var(--font-on-primary-color-main);
  padding: 20px 22px;
  font-weight: 500;
}
.datepicker-date-display .year-text {
  display: block;
  font-size: 1.5rem;
  line-height: 25px;
  color: var(--font-on-primary-color-main);
}
.datepicker-date-display .date-text {
  display: block;
  font-size: 2.8rem;
  line-height: 47px;
  font-weight: 500;
}

/* Calendar */
.datepicker-calendar-container {
  flex: 2.5 auto;
}

.datepicker-table {
  width: 280px;
  font-size: 1rem;
  margin: 0 auto;
}
.datepicker-table thead {
  border-bottom: none;
}
.datepicker-table th {
  padding: 10px 5px;
  text-align: center;
}
.datepicker-table tr {
  border: none;
}
.datepicker-table abbr {
  text-decoration: none;
  color: var(--font-color-medium);
}
.datepicker-table td {
  color: var(--font-color-main);
  border-radius: 50%;
  padding: 0;
}
.datepicker-table td.is-today {
  color: var(--primary-color);
}
.datepicker-table td.is-selected {
  background-color: var(--primary-color);
  color: var(--font-on-primary-color-main);
}
.datepicker-table td.is-outside-current-month, .datepicker-table td.is-disabled {
  color: var(--font-color-disabled);
  pointer-events: none;
}

.datepicker-day-button {
  background-color: transparent;
  border: none;
  line-height: 38px;
  display: block;
  width: 100%;
  border-radius: 50%;
  padding: 0 5px;
  cursor: pointer;
  color: inherit;
}
.datepicker-day-button:hover {
  background-color: var(--primary-color-hover-opaque);
}
.datepicker-day-button:focus {
  background-color: var(--primary-color-focus-opaque);
}

/* Footer */
.datepicker-footer {
  width: 280px;
  margin: 0 auto;
  padding-bottom: 5px;
  display: flex;
  justify-content: space-between;
}

.datepicker-cancel,
.datepicker-clear,
.datepicker-today,
.datepicker-done {
  color: var(--primary-color);
  padding: 0 1rem;
}

.datepicker-clear {
  color: var(--error-color);
}

/* Media Queries */
@media only screen and (min-width : 601px) {
  .datepicker-modal {
    max-width: 625px;
  }
  .datepicker-container.modal-content {
    flex-direction: row;
  }
  .datepicker-date-display {
    flex: 0 1 270px;
  }
  .datepicker-controls,
  .datepicker-table,
  .datepicker-footer {
    width: 320px;
  }
  .datepicker-day-button {
    line-height: 44px;
  }
}
/* Timepicker Containers */
.timepicker-modal {
  max-width: 325px;
  max-height: none;
}

.timepicker-container.modal-content {
  display: flex;
  flex-direction: column;
  padding: 0;
}

.text-primary {
  color: var(--font-on-primary-color-main);
}

/* Clock Digital Display */
.timepicker-digital-display {
  width: 200px;
  flex: 1 auto;
  background-color: var(--primary-color);
  padding: 10px;
  font-weight: 300;
}

.timepicker-text-container {
  font-size: 4rem;
  font-weight: bold;
  text-align: center;
  color: var(--font-on-primary-color-medium);
  font-weight: 400;
  position: relative;
  user-select: none;
}
.timepicker-text-container input[type=text] {
  height: 4rem;
  color: rgba(255, 255, 255, 0.6);
  border-bottom: 0px;
  font-size: 4rem;
  direction: ltr;
}

.timepicker-input-hours,
.timepicker-input-minutes,
.timepicker-span-am-pm div {
  cursor: pointer;
}

input[type=text].timepicker-input-hours {
  text-align: right;
  width: 28%;
  margin-right: 3px;
}

input[type=text].timepicker-input-minutes {
  width: 33%;
  margin-left: 3px;
}

input[type=text].text-primary {
  color: rgb(255, 255, 255);
}

.timepicker-display-am-pm {
  font-size: 1.3rem;
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  font-weight: 400;
}

/* Analog Clock Display */
.timepicker-analog-display {
  flex: 2.5 auto;
  background-color: var(--surface-color);
}

.timepicker-plate {
  background-color: var(--background-color-level-4dp);
  border-radius: 50%;
  width: 270px;
  height: 270px;
  overflow: visible;
  position: relative;
  margin: auto;
  margin-top: 25px;
  margin-bottom: 5px;
  user-select: none;
}

.timepicker-canvas,
.timepicker-dial {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

.timepicker-minutes {
  visibility: hidden;
}

.timepicker-tick {
  border-radius: 50%;
  color: var(--font-color-main);
  line-height: 40px;
  text-align: center;
  width: 40px;
  height: 40px;
  position: absolute;
  cursor: pointer;
  font-size: 15px;
}

.timepicker-tick.active,
.timepicker-tick:hover {
  background-color: var(--primary-color-hover-opaque);
}

.timepicker-dial {
  transition: transform 350ms, opacity 350ms;
}

.timepicker-dial-out {
  opacity: 0;
}
.timepicker-dial-out.timepicker-hours {
  transform: scale(1.1, 1.1);
}
.timepicker-dial-out.timepicker-minutes {
  transform: scale(0.8, 0.8);
}

.timepicker-canvas {
  transition: opacity 175ms;
}
.timepicker-canvas line {
  stroke: var(--primary-color);
  stroke-width: 4;
  stroke-linecap: round;
}

.timepicker-canvas-out {
  opacity: 0.25;
}

.timepicker-canvas-bearing {
  stroke: none;
  fill: var(--primary-color);
}

.timepicker-canvas-bg {
  stroke: none;
  fill: var(--primary-color);
}

/* Footer */
.timepicker-footer {
  margin: 0 auto;
  padding: 5px 1rem;
  display: flex;
  justify-content: space-between;
}

.timepicker-clear {
  color: var(--error-color);
}

.timepicker-close {
  color: var(--primary-color);
}

.timepicker-clear,
.timepicker-close {
  padding: 0 20px;
}

/* Media Queries */
@media only screen and (min-width : 601px) {
  .timepicker-modal {
    max-width: 600px;
  }
  .timepicker-container.modal-content {
    flex-direction: row;
  }
  .timepicker-text-container {
    top: 32%;
  }
  .timepicker-display-am-pm {
    position: relative;
    right: auto;
    bottom: auto;
    text-align: center;
    margin-top: 1.2rem;
  }
}
.row {
  --gap-size: 1rem;
}
.row .col {
  padding: 0 0.25rem;
}

.list {
  border-bottom: 1px solid #dbdbdb;
  padding-top: 15px !important;
  padding-left: 0px !important;
  padding-bottom: 10px !important;
  padding-right: 0px !important;
  line-height: 2em;
}

.bottom-line {
  border-bottom: 1px solid #dbdbdb;
  margin-top: 0px;
  margin-bottom: 0px;
  padding-bottom: 5px !important;
  padding-top: 5px !important;
  line-height: 1.5 !important;
}
.bottom-line:not(.top-line):not(.title-element):hover {
  background-color: #8fcdff !important;
  color: #000 !important;
}
.bottom-line.top-line {
  margin-top: 0px;
  padding-bottom: 10px;
  background-color: #f0dec2 !important;
  margin-bottom: 0px;
  padding-top: 10px;
}
.bottom-line.title-element {
  font-weight: bold;
  border-bottom-color: #979797;
  background-color: white;
}
.bottom-line:not(.result-element, .title-element):nth-child(odd):not(.hidden) {
  background: white;
}
.bottom-line:not(.result-element, .title-element):nth-child(even):not(.hidden) {
  background: whitesmoke;
}
.bottom-line.result-element {
  background-color: #ffffff;
}
.bottom-line.active {
  background-color: #c2e4ff !important;
  color: #000 !important;
}

div.family-member .title-element:hover {
  color: #8fcdff !important;
}

.offset-s1 {
  grid-column-start: 2 !important;
}

.offset-s2 {
  grid-column-start: 3 !important;
}

.offset-s3 {
  grid-column-start: 4 !important;
}

.offset-s4 {
  grid-column-start: 5 !important;
}

.offset-s5 {
  grid-column-start: 6 !important;
}

.offset-s6 {
  grid-column-start: 7 !important;
}

.offset-s7 {
  grid-column-start: 8 !important;
}

.offset-s8 {
  grid-column-start: 9 !important;
}

.offset-s9 {
  grid-column-start: 10 !important;
}

.offset-s10 {
  grid-column-start: 11 !important;
}

.offset-s11 {
  grid-column-start: 12 !important;
}

/* Nav */
.fixed {
  overflow: hidden;
  position: relative; /* Set the navbar to fixed position */
  height: 112px;
  width: 100%; /* Full width */
  z-index: 100 !important;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
}
@media only screen and (max-width: 992px) {
  .fixed {
    height: 64px;
  }
}
.fixed nav {
  position: fixed;
  background-color: #9B744A;
}

.nav-secondary {
  margin: 0px 5px 0px 5px;
  z-index: 105 !important;
}

nav {
  background-color: #C29B55 !important;
}
nav a:hover {
  background-color: rgba(0, 0, 0, 0.1);
}

/* Tabs */
.tabs {
  background-color: #E2C860 !important;
}
.tabs .dropdown-content {
  background-color: #FFFFFF;
  opacity: none;
  display: none;
  overflow: hidden; /* Changed this from overflow-y:auto; to overflow:hidden; */
  position: absolute;
  white-space: nowrap;
  z-index: 1;
  width: auto;
}
.tabs .dropdown-content li > a {
  line-height: 50px !important;
}

.special-tabs {
  background-color: transparent !important;
  height: initial;
}
.special-tabs .dropdown-content li > a {
  line-height: 1.5em !important;
}

.tab {
  text-transform: none !important;
}
.tab:hover {
  background-color: rgba(168, 165, 165, 0.2509803922) !important;
}

.dropdown-content {
  top: 100% !important;
  height: fit-content !important;
}

nav ul:not(.dropdown-content) > li > a {
  color: #fff;
}
nav ul:not(.dropdown-content) > li > a:hover:not(.active) {
  background-color: rgba(0, 0, 0, 0.1);
}

/* Logo */
.custom-brand {
  display: flex;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 100;
}

.custom-brand-infos {
  display: flex;
  flex-direction: column;
  line-height: 1em;
}

.custom-logo {
  font-family: "Righteous", cursive;
  background-color: rgb(63, 63, 64);
  -webkit-text-fill-color: #8db551; /* Will override color (regardless of order) */
  padding-right: 5px !important;
  padding-left: 5px !important;
  margin-left: 5px;
  right: 0px !important;
  position: relative;
  color: #fff;
  display: inline-block;
  font-size: 2.1rem;
  padding: 0;
  z-index: 100;
}

/* Sidebar */
#nav-mobile li a {
  color: black;
}

.page-footer {
  /* background-color: #3F3F40 !important; */
  background-color: #40332E !important;
}

.page-footer {
  position: relative;
  bottom: 0;
  width: 100%;
  width: -moz-available; /* WebKit-based browsers will ignore this. */
  width: -webkit-fill-available; /* Mozilla-based browsers will ignore this. */
  width: fill-available;
  z-index: 100;
}

.footer-copyright {
  margin: auto;
  font-size: 18px;
  background-color: rgba(51, 51, 51, 0.08) !important;
  color: rgba(255, 255, 255, 0.8) !important;
  justify-content: center !important;
}

@keyframes rotate {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@-webkit-keyframes rotate {
  from {
    -webkit-transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
  }
}
.load {
  width: 25px;
  height: 25px;
  margin: 10px auto 0;
  border: solid 2px #8822aa;
  border-radius: 50%;
  border-right-color: transparent;
  border-bottom-color: transparent;
  -webkit-transition: all 0.5s ease-in;
  -webkit-animation-name: rotate;
  -webkit-animation-duration: 1s;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-timing-function: linear;
  transition: all 0.5s ease-in;
  animation-name: rotate;
  animation-duration: 1s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
}

.load-color {
  border-left-color: #87b0ce;
  border-top-color: #87b0ce;
  border-width: 3px;
}

.upload-color {
  border-left-color: #64B5F6;
  border-top-color: #64B5F6;
  border-width: 2px;
}

.operation-line-load {
  position: absolute;
  right: -2em;
  top: 2em;
  margin: 0;
}

.operation-search-load {
  position: absolute;
  width: 48px;
  height: 48px;
  margin: 8px;
  right: -5em;
  border-width: 4px;
  top: 0;
}

.select2-js {
  border: none !important;
}

.select2-container .select2-selection--single {
  border: 1px solid #f2f2f2;
  border-radius: 2px;
  height: 3em !important;
}
.select2-container .select2-selection--single .select2-selection__rendered {
  line-height: 3em !important;
}

.select2-selection__arrow {
  height: 3em !important;
}

.select2-results__message {
  font-style: italic;
}
body.noTerm .select2-results__message {
  display: none;
}

.select2-results__option {
  /* Remove select2's default item padding. */
  /* Add padding on rendered items that have content divs. See index.js::renderItem(). */
}
.select2-results__option[aria-selected=true] {
  background-color: #b4d0fd;
  color: #112;
}
.select2-results__option.select2-results__message, .select2-results__option > div {
  padding: 6px;
  /* Matched synonyms are in italics */
  /* matched query text is in <mark> elements. */
}
.select2-results__option.select2-results__message > i, .select2-results__option > div > i {
  display: block;
  font-size: 0.833334em;
  letter-spacing: 0.5pt;
}
.select2-results__option.select2-results__message mark, .select2-results__option > div mark {
  background-color: transparent;
  color: red;
  font-weight: bold;
}
.select2-results__option--highlighted > div mark {
  color: yellow;
}

.select2.select2-container.select2-container--default {
  width: -webkit-fill-available !important;
  width: -moz-available !important;
  width: fill-available !important;
}

li[role=option]:not(.select2-results__option) {
  min-height: 30px !important;
}
li[role=option]:not(.select2-results__option) > span {
  padding: 7px 8px !important;
}

* {
  font-family: "Roboto", sans-serif;
}

a:hover {
  text-decoration: none !important;
}

.bg-primary {
  /* background-color: #3F3F40 !important; */
  background-color: #F2F2F2 !important;
}

.hidden {
  visibility: hidden !important;
  position: absolute !important;
  left: 0% !important;
}

.container {
  flex: 1 0 auto;
  padding: 5px;
  padding-bottom: 100px !important;
}

body {
  display: flex;
  min-height: 100vh;
  flex-direction: column;
}

.btn-custom {
  background-color: #E2C860 !important;
}

.btn > span {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.btn:hover,
.btn-small:hover {
  background-color: #9B744A !important;
}

.btn:focus,
.btn-small:focus {
  background-color: #9B744A !important;
}

.select-dropdown {
  overflow-y: auto !important;
  max-height: 300px !important;
}

.icon-input {
  position: absolute;
  right: 8px;
  top: 1em;
  z-index: 50;
}

.input-icon {
  position: relative;
}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

.material-icons.md-12 {
  font-size: 12px;
}

.material-icons.md-18 {
  font-size: 18px;
}

.material-icons.md-24 {
  font-size: 24px;
}

.material-icons.md-36 {
  font-size: 36px;
}

.material-icons.md-48 {
  font-size: 48px;
}

.material-tooltip {
  background-color: #E2C860 !important;
}

.tooltip-content > span {
  text-align: right !important;
}

.super-admin-color,
.super-admin-color:active,
.super-admin-color:focus {
  background-color: #f7b2b2 !important;
}
.super-admin-color:hover,
.super-admin-color:active:hover,
.super-admin-color:focus:hover {
  background-color: #f7b2b2 !important;
}

.ui-dialog {
  z-index: 1005 !important;
}

li[role=option]:not(.select2-results__option) {
  min-height: 30px !important;
}
li[role=option]:not(.select2-results__option) > span {
  padding: 7px 8px !important;
}

.input-field input,
select, textarea {
  background-color: transparent !important;
  border-bottom-color: rgba(0, 0, 0, 0.3) !important;
}

/* personalized input fields display for forms */
input {
  background-color: transparent !important;
  border-style: none;
  border-bottom-style: solid;
  border-bottom-color: rgba(0, 0, 0, 0.3) !important;
  margin-bottom: 12px;
}

fieldset {
  border: 1px solid #ccc;
  border-radius: 5px;
  padding: 12px !important;
  margin-bottom: 10px;
}

legend > label {
  font-size: 1em !important;
}

legend {
  padding: 0 5px;
}

.btn,
.btn-small {
  text-transform: uppercase;
}

a.btn,
a.btn-small {
  max-width: -webkit-fill-available;
}

.custom-form-error {
  font-size: 12px;
  color: red;
}
.custom-form-error > ul {
  padding-left: 0;
}
.custom-form-error > ul > li {
  list-style-type: none;
}

.test-accent {
  color: #ad262e !important;
}

#button {
  display: inline-block;
  background-color: #ebd1a8;
  width: 50px;
  height: 50px;
  font-size: 50px;
  line-height: 50px;
  font-weight: bold;
  text-align: center;
  color: white;
  border-radius: 4px;
  position: fixed;
  bottom: 1em;
  right: 30px;
  transition: background-color 0.3s, opacity 0.5s, visibility 0.5s;
  opacity: 0;
  visibility: hidden;
  z-index: 1000;
}

#button:hover {
  cursor: pointer;
  background-color: #fcdc94;
}

#button:active {
  background-color: #fcdc94;
}

#button.show {
  opacity: 1;
  visibility: visible;
}

.delete {
  background-color: #ee6e73 !important;
}
.delete:hover {
  background-color: #ee6e73 !important;
}

.delete-icon,
.delete-icon:hover,
.delete-icon:active {
  cursor: pointer;
  border: 0;
  background: none !important;
  padding: 0px;
}

.button-icon,
.button-icon:hover,
.button-icon:active {
  border: 0;
  background: none !important;
  padding: 0px;
}

.selected {
  background-color: #a9d9ff !important;
}

.remove_item_link {
  background-color: transparent !important;
}

.custom-phone-render {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.custom-phone-render > div {
  flex: 1;
}
.custom-phone-render div.select-wrapper.input-field {
  max-width: 20% !important;
}
.custom-phone-render input {
  max-width: 75%;
}

.flash_message {
  position: fixed;
  left: 10%;
  top: 220px;
  z-index: 99999;
  min-width: 80%;
}

.chip_message {
  display: flex !important;
  justify-content: center;
  text-align: center;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  font-size: 20px !important;
  width: 100%;
  min-height: 50px;
}
.chip_message.info {
  background-color: #bbdefb !important;
}
.chip_message.warning {
  background-color: #ffcc80 !important;
}
.chip_message.alert {
  background-color: #ef9a9a !important;
}
.chip_message.success {
  background-color: #c8e6c9 !important;
}

.higher-textarea {
  height: 150px !important;
}

.medium-textarea {
  height: 5rem !important;
}

.emailbody-textarea {
  height: 300px !important;
}

.ui-autocomplete {
  max-height: 235px;
  overflow-y: auto;
  overflow-x: hidden;
}

.no-result {
  pointer-events: none;
}

.overflowing-modal {
  overflow-y: visible !important;
}

.modal {
  width: inherit;
  height: fit-content;
  min-height: 450px;
  max-height: calc(100vh - 210px);
  overflow-y: auto !important;
}
.modal .modal-content {
  min-height: 396px;
}
.modal .modal-footer {
  bottom: 0;
  background-color: white;
  padding: 0;
  border-top: 1px solid #ddd;
}

.modal-content {
  padding-bottom: 0px !important;
}

.form-error {
  color: red;
  font-size: 0.8em;
  margin-bottom: 10px;
}
.form-error > ul {
  margin: 0;
  padding-left: 20px;
  list-style-type: none;
}
.form-error > ul > li {
  position: relative;
}

.ui-dialog {
  z-index: 1005 !important;
  border: none !important;
  border-radius: 8px !important;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3) !important;
  font-family: "Roboto", sans-serif !important;
  overflow: visible !important;
}
.ui-dialog .ui-dialog-titlebar {
  background: linear-gradient(135deg, #E2C860, #dab935) !important;
  color: white !important;
  border: none !important;
  border-radius: 8px 8px 0 0 !important;
  padding: 16px 20px !important;
  font-weight: 500 !important;
  text-align: center !important;
}
.ui-dialog .ui-dialog-titlebar .ui-dialog-title {
  font-size: 1.2em !important;
  font-weight: 500 !important;
  margin: 0 !important;
  color: white !important;
}
.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close {
  position: absolute !important;
  right: 12px !important;
  top: 63% !important;
  transform: translateY(-50%) !important;
  width: 32px !important;
  height: 32px !important;
  border: none !important;
  background: rgba(255, 255, 255, 0.2) !important;
  border-radius: 50% !important;
  color: white !important;
  font-size: 18px !important;
  transition: background-color 0.3s ease !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
}
.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close:hover {
  background: rgba(255, 255, 255, 0.3) !important;
  color: white !important;
}
.ui-dialog .ui-dialog-titlebar .ui-dialog-titlebar-close:focus {
  outline: 2px solid rgba(255, 255, 255, 0.5) !important;
  outline-offset: 2px !important;
}
.ui-dialog .ui-dialog-content {
  padding: 24px !important;
  background: white !important;
  color: #333 !important;
  line-height: 1.6 !important;
  font-size: 14px !important;
}
.ui-dialog .ui-dialog-content p {
  margin: 0 0 16px 0 !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
}
.ui-dialog .ui-dialog-content p .ui-icon-alert {
  width: 24px !important;
  height: 24px !important;
  background: transparent !important;
  border-radius: 50% !important;
  position: relative !important;
  flex-shrink: 0 !important;
  margin: 0 !important;
  float: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #ff9800 !important;
  font-size: 24px !important;
}
.ui-dialog .ui-dialog-content p .ui-icon-alert::before {
  content: "⚠" !important;
  font-size: 24px !important;
  line-height: 1 !important;
}
.ui-dialog .ui-dialog-content p .ui-icon-alert.material-icons::before {
  content: "warning" !important;
  font-family: "Material Icons" !important;
}
.ui-dialog .ui-dialog-content p #text-content {
  flex: 1 !important;
  margin: 0 !important;
}
.ui-dialog .ui-dialog-buttonpane {
  border: none !important;
  background: #f8f9fa !important;
  padding: 16px 24px !important;
  border-radius: 0 0 8px 8px !important;
  margin: 0 !important;
}
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
  display: flex !important;
  gap: 12px !important;
  justify-content: flex-end !important;
  margin: 0 !important;
  float: none !important;
}
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset:has(button:nth-child(3)) {
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset:has(button:nth-child(3)) button {
  flex: 1 !important;
  min-width: 140px !important;
  max-width: 220px !important;
  white-space: normal !important;
  word-wrap: break-word !important;
  hyphens: auto !important;
  line-height: 1.3 !important;
  padding: 12px 16px !important;
  height: auto !important;
  min-height: 40px !important;
}
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset button {
  padding: 10px 16px !important;
  border: none !important;
  border-radius: 4px !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  text-transform: none !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
  font-family: "Roboto", sans-serif !important;
  min-width: 100px !important;
  white-space: normal !important;
  word-wrap: break-word !important;
  hyphens: auto !important;
  text-align: center !important;
  line-height: 1.3 !important;
  height: auto !important;
  min-height: 36px !important;
  max-width: 200px !important;
}
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset button:last-child {
  background-color: #E2C860 !important;
  color: white !important;
}
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset button:last-child:hover {
  background-color: #9B744A !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
}
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset button:last-child:active {
  transform: translateY(0) !important;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
}
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset button[class*=supprimer], .ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset button[class*=delete] {
  background-color: #ee6e73 !important;
  color: white !important;
}
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset button[class*=supprimer]:hover, .ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset button[class*=delete]:hover {
  background-color: #e94047 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px rgba(238, 110, 115, 0.3) !important;
}
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset button:first-child, .ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset button[class*=annuler], .ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset button[class*=cancel] {
  background-color: transparent !important;
  color: #666 !important;
  border: 1px solid #ddd !important;
}
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset button:first-child:hover, .ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset button[class*=annuler]:hover, .ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset button[class*=cancel]:hover {
  background-color: #f5f5f5 !important;
  border-color: #bbb !important;
  transform: translateY(-1px) !important;
}
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset button:focus {
  outline: 2px solid rgba(226, 200, 96, 0.3) !important;
  outline-offset: 2px !important;
}

@media (max-width: 520px) {
  .ui-dialog {
    width: 95% !important;
    max-width: 95% !important;
    left: 2.5% !important;
  }
  .ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
    flex-direction: column !important;
  }
  .ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset button {
    width: 100% !important;
    max-width: none !important;
    margin: 4px 0 !important;
    padding: 14px 20px !important;
    font-size: 14px !important;
    min-height: 48px !important;
    white-space: normal !important;
    word-wrap: break-word !important;
  }
}
.ui-widget-overlay {
  background: rgba(0, 0, 0, 0.5) !important;
  opacity: 1 !important;
}

.lesson-details.lesson-today {
  background-color: #c8e6c9 !important;
}
.lesson-details.lesson-vacation {
  background-color: rgba(152, 199, 236, 0.7176470588) !important;
}
.lesson-details.lesson-article-modified {
  background-color: #ee714b !important;
}

ul.pagination {
  padding-inline-start: 0;
}

.disabled-link {
  pointer-events: none;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmNzcyIsIm1hcHBpbmdzIjoiOzs7QUFBQSxnQkFBZ0I7QUNBaEI7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QURFRjs7QUVoUkE7RUFDRTtBRm1SRjs7QUVqUkE7RUFDRTtBRm9SRjs7QUVsUkE7RUFDRTtBRnFSRjs7QUVuUkE7RUFDRTtBRnNSRjs7QUVwUkE7RUFDRTtBRnVSRjs7QUVyUkE7RUFDRTtBRndSRjs7QUV0UkE7RUFDRTtBRnlSRjs7QUV2UkE7RUFDRTtBRjBSRjs7QUV4UkE7RUFDRTtBRjJSRjs7QUV6UkE7RUFDRTtBRjRSRjs7QUUxUkE7RUFDRTtBRjZSRjs7QUUzUkE7RUFDRTtBRjhSRjs7QUU1UkE7RUFDRTtBRitSRjs7QUU3UkE7RUFDRTtBRmdTRjs7QUU5UkE7RUFDRTtBRmlTRjs7QUUvUkE7RUFDRTtBRmtTRjs7QUVoU0E7RUFDRTtBRm1TRjs7QUVqU0E7RUFDRTtBRm9TRjs7QUVsU0E7RUFDRTtBRnFTRjs7QUVuU0E7RUFDRTtBRnNTRjs7QUVwU0E7RUFDRTtBRnVTRjs7QUVyU0E7RUFDRTtBRndTRjs7QUV0U0E7RUFDRTtBRnlTRjs7QUV2U0E7RUFDRTtBRjBTRjs7QUV4U0E7RUFDRTtBRjJTRjs7QUV6U0E7RUFDRTtBRjRTRjs7QUUxU0E7RUFDRTtBRjZTRjs7QUUzU0E7RUFDRTtBRjhTRjs7QUU1U0E7RUFDRTtBRitTRjs7QUU3U0E7RUFDRTtBRmdURjs7QUU5U0E7RUFDRTtBRmlURjs7QUUvU0E7RUFDRTtBRmtURjs7QUVoVEE7RUFDRTtBRm1URjs7QUVqVEE7RUFDRTtBRm9URjs7QUVsVEE7RUFDRTtBRnFURjs7QUVuVEE7RUFDRTtBRnNURjs7QUVwVEE7RUFDRTtBRnVURjs7QUVyVEE7RUFDRTtBRndURjs7QUV0VEE7RUFDRTtBRnlURjs7QUV2VEE7RUFDRTtBRjBURjs7QUV4VEE7RUFDRTtBRjJURjs7QUV6VEE7RUFDRTtBRjRURjs7QUUxVEE7RUFDRTtBRjZURjs7QUUzVEE7RUFDRTtBRjhURjs7QUU1VEE7RUFDRTtBRitURjs7QUU3VEE7RUFDRTtBRmdVRjs7QUU5VEE7RUFDRTtBRmlVRjs7QUUvVEE7RUFDRTtBRmtVRjs7QUVoVUE7RUFDRTtBRm1VRjs7QUVqVUE7RUFDRTtBRm9VRjs7QUVsVUE7RUFDRTtBRnFVRjs7QUVuVUE7RUFDRTtBRnNVRjs7QUVwVUE7RUFDRTtBRnVVRjs7QUVyVUE7RUFDRTtBRndVRjs7QUV0VUE7RUFDRTtBRnlVRjs7QUV2VUE7RUFDRTtBRjBVRjs7QUV4VUE7RUFDRTtBRjJVRjs7QUV6VUE7RUFDRTtBRjRVRjs7QUUxVUE7RUFDRTtBRjZVRjs7QUUzVUE7RUFDRTtBRjhVRjs7QUdoZ0JBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSG1nQkY7O0FHamdCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUhvZ0JGOztBR2xnQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FIcWdCRjs7QUduZ0JBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSHNnQkY7O0FHcGdCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUh1Z0JGOztBR3JnQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FId2dCRjs7QUd0Z0JBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSHlnQkY7O0FHdmdCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUgwZ0JGOztBR3hnQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FIMmdCRjs7QUd6Z0JBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSDRnQkY7O0FHMWdCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUg2Z0JGOztBRzNnQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FIOGdCRjs7QUc1Z0JBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSCtnQkY7O0FHN2dCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUhnaEJGOztBRzlnQkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FIaWhCRjs7QUlycUJBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FKd3FCRDs7QUt0c0JBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FMeXNCRDs7QU12dUJBO0VBQ0k7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFFQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtBTjh0Qko7O0FNMXRCQTtFQUNJO0VBRUE7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBRUE7RUFFQTtFQUVBO0VBRUE7QU51dEJKOztBTzV4Qk07RUFDRTtBUCt4QlI7O0FPN3hCTTtFQUNFO0FQZ3lCUjs7QU81eEJNO0VBQ0U7QVAreEJSOztBTzd4Qk07RUFDRTtBUGd5QlI7O0FPcHlCTTtFQUNFO0FQdXlCUjs7QU9yeUJNO0VBQ0U7QVB3eUJSOztBTzV5Qk07RUFDRTtBUCt5QlI7O0FPN3lCTTtFQUNFO0FQZ3pCUjs7QU9wekJNO0VBQ0U7QVB1ekJSOztBT3J6Qk07RUFDRTtBUHd6QlI7O0FPNXpCTTtFQUNFO0FQK3pCUjs7QU83ekJNO0VBQ0U7QVBnMEJSOztBT3AwQk07RUFDRTtBUHUwQlI7O0FPcjBCTTtFQUNFO0FQdzBCUjs7QU81MEJNO0VBQ0U7QVArMEJSOztBTzcwQk07RUFDRTtBUGcxQlI7O0FPcDFCTTtFQUNFO0FQdTFCUjs7QU9yMUJNO0VBQ0U7QVB3MUJSOztBTzUxQk07RUFDRTtBUCsxQlI7O0FPNzFCTTtFQUNFO0FQZzJCUjs7QU81MkJNO0VBQ0U7QVArMkJSOztBTzcyQk07RUFDRTtBUGczQlI7O0FPNTJCTTtFQUNFO0FQKzJCUjs7QU83MkJNO0VBQ0U7QVBnM0JSOztBT3AzQk07RUFDRTtBUHUzQlI7O0FPcjNCTTtFQUNFO0FQdzNCUjs7QU81M0JNO0VBQ0U7QVArM0JSOztBTzczQk07RUFDRTtBUGc0QlI7O0FPcDRCTTtFQUNFO0FQdTRCUjs7QU9yNEJNO0VBQ0U7QVB3NEJSOztBTzU0Qk07RUFDRTtBUCs0QlI7O0FPNzRCTTtFQUNFO0FQZzVCUjs7QU9wNUJNO0VBQ0U7QVB1NUJSOztBT3I1Qk07RUFDRTtBUHc1QlI7O0FPNTVCTTtFQUNFO0FQKzVCUjs7QU83NUJNO0VBQ0U7QVBnNkJSOztBT3A2Qk07RUFDRTtBUHU2QlI7O0FPcjZCTTtFQUNFO0FQdzZCUjs7QU81NkJNO0VBQ0U7QVArNkJSOztBTzc2Qk07RUFDRTtBUGc3QlI7O0FPcDdCTTtFQUNFO0FQdTdCUjs7QU9yN0JNO0VBQ0U7QVB3N0JSOztBTzU3Qk07RUFDRTtBUCs3QlI7O0FPNzdCTTtFQUNFO0FQZzhCUjs7QU9wOEJNO0VBQ0U7QVB1OEJSOztBT3I4Qk07RUFDRTtBUHc4QlI7O0FPNThCTTtFQUNFO0FQKzhCUjs7QU83OEJNO0VBQ0U7QVBnOUJSOztBTzU5Qk07RUFDRTtBUCs5QlI7O0FPNzlCTTtFQUNFO0FQZytCUjs7QU81OUJNO0VBQ0U7QVArOUJSOztBTzc5Qk07RUFDRTtBUGcrQlI7O0FPcCtCTTtFQUNFO0FQdStCUjs7QU9yK0JNO0VBQ0U7QVB3K0JSOztBTzUrQk07RUFDRTtBUCsrQlI7O0FPNytCTTtFQUNFO0FQZy9CUjs7QU9wL0JNO0VBQ0U7QVB1L0JSOztBT3IvQk07RUFDRTtBUHcvQlI7O0FPNS9CTTtFQUNFO0FQKy9CUjs7QU83L0JNO0VBQ0U7QVBnZ0NSOztBT3BnQ007RUFDRTtBUHVnQ1I7O0FPcmdDTTtFQUNFO0FQd2dDUjs7QU81Z0NNO0VBQ0U7QVArZ0NSOztBTzdnQ007RUFDRTtBUGdoQ1I7O0FPcGhDTTtFQUNFO0FQdWhDUjs7QU9yaENNO0VBQ0U7QVB3aENSOztBTzVoQ007RUFDRTtBUCtoQ1I7O0FPN2hDTTtFQUNFO0FQZ2lDUjs7QU9waUNNO0VBQ0U7QVB1aUNSOztBT3JpQ007RUFDRTtBUHdpQ1I7O0FPNWlDTTtFQUNFO0FQK2lDUjs7QU83aUNNO0VBQ0U7QVBnakNSOztBT3BqQ007RUFDRTtBUHVqQ1I7O0FPcmpDTTtFQUNFO0FQd2pDUjs7QU81akNNO0VBQ0U7QVArakNSOztBTzdqQ007RUFDRTtBUGdrQ1I7O0FPNWtDTTtFQUNFO0FQK2tDUjs7QU83a0NNO0VBQ0U7QVBnbENSOztBTzVrQ007RUFDRTtBUCtrQ1I7O0FPN2tDTTtFQUNFO0FQZ2xDUjs7QU9wbENNO0VBQ0U7QVB1bENSOztBT3JsQ007RUFDRTtBUHdsQ1I7O0FPNWxDTTtFQUNFO0FQK2xDUjs7QU83bENNO0VBQ0U7QVBnbUNSOztBT3BtQ007RUFDRTtBUHVtQ1I7O0FPcm1DTTtFQUNFO0FQd21DUjs7QU81bUNNO0VBQ0U7QVArbUNSOztBTzdtQ007RUFDRTtBUGduQ1I7O0FPcG5DTTtFQUNFO0FQdW5DUjs7QU9ybkNNO0VBQ0U7QVB3bkNSOztBTzVuQ007RUFDRTtBUCtuQ1I7O0FPN25DTTtFQUNFO0FQZ29DUjs7QU9wb0NNO0VBQ0U7QVB1b0NSOztBT3JvQ007RUFDRTtBUHdvQ1I7O0FPNW9DTTtFQUNFO0FQK29DUjs7QU83b0NNO0VBQ0U7QVBncENSOztBT3BwQ007RUFDRTtBUHVwQ1I7O0FPcnBDTTtFQUNFO0FQd3BDUjs7QU81cENNO0VBQ0U7QVArcENSOztBTzdwQ007RUFDRTtBUGdxQ1I7O0FPcHFDTTtFQUNFO0FQdXFDUjs7QU9ycUNNO0VBQ0U7QVB3cUNSOztBTzVxQ007RUFDRTtBUCtxQ1I7O0FPN3FDTTtFQUNFO0FQZ3JDUjs7QU81ckNNO0VBQ0U7QVArckNSOztBTzdyQ007RUFDRTtBUGdzQ1I7O0FPNXJDTTtFQUNFO0FQK3JDUjs7QU83ckNNO0VBQ0U7QVBnc0NSOztBT3BzQ007RUFDRTtBUHVzQ1I7O0FPcnNDTTtFQUNFO0FQd3NDUjs7QU81c0NNO0VBQ0U7QVArc0NSOztBTzdzQ007RUFDRTtBUGd0Q1I7O0FPcHRDTTtFQUNFO0FQdXRDUjs7QU9ydENNO0VBQ0U7QVB3dENSOztBTzV0Q007RUFDRTtBUCt0Q1I7O0FPN3RDTTtFQUNFO0FQZ3VDUjs7QU9wdUNNO0VBQ0U7QVB1dUNSOztBT3J1Q007RUFDRTtBUHd1Q1I7O0FPNXVDTTtFQUNFO0FQK3VDUjs7QU83dUNNO0VBQ0U7QVBndkNSOztBT3B2Q007RUFDRTtBUHV2Q1I7O0FPcnZDTTtFQUNFO0FQd3ZDUjs7QU81dkNNO0VBQ0U7QVArdkNSOztBTzd2Q007RUFDRTtBUGd3Q1I7O0FPcHdDTTtFQUNFO0FQdXdDUjs7QU9yd0NNO0VBQ0U7QVB3d0NSOztBTzV3Q007RUFDRTtBUCt3Q1I7O0FPN3dDTTtFQUNFO0FQZ3hDUjs7QU9weENNO0VBQ0U7QVB1eENSOztBT3J4Q007RUFDRTtBUHd4Q1I7O0FPNXhDTTtFQUNFO0FQK3hDUjs7QU83eENNO0VBQ0U7QVBneUNSOztBTzV5Q007RUFDRTtBUCt5Q1I7O0FPN3lDTTtFQUNFO0FQZ3pDUjs7QU81eUNNO0VBQ0U7QVAreUNSOztBTzd5Q007RUFDRTtBUGd6Q1I7O0FPcHpDTTtFQUNFO0FQdXpDUjs7QU9yekNNO0VBQ0U7QVB3ekNSOztBTzV6Q007RUFDRTtBUCt6Q1I7O0FPN3pDTTtFQUNFO0FQZzBDUjs7QU9wMENNO0VBQ0U7QVB1MENSOztBT3IwQ007RUFDRTtBUHcwQ1I7O0FPNTBDTTtFQUNFO0FQKzBDUjs7QU83MENNO0VBQ0U7QVBnMUNSOztBT3AxQ007RUFDRTtBUHUxQ1I7O0FPcjFDTTtFQUNFO0FQdzFDUjs7QU81MUNNO0VBQ0U7QVArMUNSOztBTzcxQ007RUFDRTtBUGcyQ1I7O0FPcDJDTTtFQUNFO0FQdTJDUjs7QU9yMkNNO0VBQ0U7QVB3MkNSOztBTzUyQ007RUFDRTtBUCsyQ1I7O0FPNzJDTTtFQUNFO0FQZzNDUjs7QU9wM0NNO0VBQ0U7QVB1M0NSOztBT3IzQ007RUFDRTtBUHczQ1I7O0FPNTNDTTtFQUNFO0FQKzNDUjs7QU83M0NNO0VBQ0U7QVBnNENSOztBT3A0Q007RUFDRTtBUHU0Q1I7O0FPcjRDTTtFQUNFO0FQdzRDUjs7QU81NENNO0VBQ0U7QVArNENSOztBTzc0Q007RUFDRTtBUGc1Q1I7O0FPNTVDTTtFQUNFO0FQKzVDUjs7QU83NUNNO0VBQ0U7QVBnNkNSOztBTzU1Q007RUFDRTtBUCs1Q1I7O0FPNzVDTTtFQUNFO0FQZzZDUjs7QU9wNkNNO0VBQ0U7QVB1NkNSOztBT3I2Q007RUFDRTtBUHc2Q1I7O0FPNTZDTTtFQUNFO0FQKzZDUjs7QU83NkNNO0VBQ0U7QVBnN0NSOztBT3A3Q007RUFDRTtBUHU3Q1I7O0FPcjdDTTtFQUNFO0FQdzdDUjs7QU81N0NNO0VBQ0U7QVArN0NSOztBTzc3Q007RUFDRTtBUGc4Q1I7O0FPcDhDTTtFQUNFO0FQdThDUjs7QU9yOENNO0VBQ0U7QVB3OENSOztBTzU4Q007RUFDRTtBUCs4Q1I7O0FPNzhDTTtFQUNFO0FQZzlDUjs7QU9wOUNNO0VBQ0U7QVB1OUNSOztBT3I5Q007RUFDRTtBUHc5Q1I7O0FPNTlDTTtFQUNFO0FQKzlDUjs7QU83OUNNO0VBQ0U7QVBnK0NSOztBT3ArQ007RUFDRTtBUHUrQ1I7O0FPcitDTTtFQUNFO0FQdytDUjs7QU81K0NNO0VBQ0U7QVArK0NSOztBTzcrQ007RUFDRTtBUGcvQ1I7O0FPcC9DTTtFQUNFO0FQdS9DUjs7QU9yL0NNO0VBQ0U7QVB3L0NSOztBTzUvQ007RUFDRTtBUCsvQ1I7O0FPNy9DTTtFQUNFO0FQZ2dEUjs7QU81Z0RNO0VBQ0U7QVArZ0RSOztBTzdnRE07RUFDRTtBUGdoRFI7O0FPNWdETTtFQUNFO0FQK2dEUjs7QU83Z0RNO0VBQ0U7QVBnaERSOztBT3BoRE07RUFDRTtBUHVoRFI7O0FPcmhETTtFQUNFO0FQd2hEUjs7QU81aERNO0VBQ0U7QVAraERSOztBTzdoRE07RUFDRTtBUGdpRFI7O0FPcGlETTtFQUNFO0FQdWlEUjs7QU9yaURNO0VBQ0U7QVB3aURSOztBTzVpRE07RUFDRTtBUCtpRFI7O0FPN2lETTtFQUNFO0FQZ2pEUjs7QU9wakRNO0VBQ0U7QVB1akRSOztBT3JqRE07RUFDRTtBUHdqRFI7O0FPNWpETTtFQUNFO0FQK2pEUjs7QU83akRNO0VBQ0U7QVBna0RSOztBT3BrRE07RUFDRTtBUHVrRFI7O0FPcmtETTtFQUNFO0FQd2tEUjs7QU81a0RNO0VBQ0U7QVAra0RSOztBTzdrRE07RUFDRTtBUGdsRFI7O0FPcGxETTtFQUNFO0FQdWxEUjs7QU9ybERNO0VBQ0U7QVB3bERSOztBTzVsRE07RUFDRTtBUCtsRFI7O0FPN2xETTtFQUNFO0FQZ21EUjs7QU9wbURNO0VBQ0U7QVB1bURSOztBT3JtRE07RUFDRTtBUHdtRFI7O0FPNW1ETTtFQUNFO0FQK21EUjs7QU83bURNO0VBQ0U7QVBnbkRSOztBTzVuRE07RUFDRTtBUCtuRFI7O0FPN25ETTtFQUNFO0FQZ29EUjs7QU81bkRNO0VBQ0U7QVArbkRSOztBTzduRE07RUFDRTtBUGdvRFI7O0FPcG9ETTtFQUNFO0FQdW9EUjs7QU9yb0RNO0VBQ0U7QVB3b0RSOztBTzVvRE07RUFDRTtBUCtvRFI7O0FPN29ETTtFQUNFO0FQZ3BEUjs7QU9wcERNO0VBQ0U7QVB1cERSOztBT3JwRE07RUFDRTtBUHdwRFI7O0FPNXBETTtFQUNFO0FQK3BEUjs7QU83cERNO0VBQ0U7QVBncURSOztBT3BxRE07RUFDRTtBUHVxRFI7O0FPcnFETTtFQUNFO0FQd3FEUjs7QU81cURNO0VBQ0U7QVArcURSOztBTzdxRE07RUFDRTtBUGdyRFI7O0FPcHJETTtFQUNFO0FQdXJEUjs7QU9yckRNO0VBQ0U7QVB3ckRSOztBTzVyRE07RUFDRTtBUCtyRFI7O0FPN3JETTtFQUNFO0FQZ3NEUjs7QU9wc0RNO0VBQ0U7QVB1c0RSOztBT3JzRE07RUFDRTtBUHdzRFI7O0FPNXNETTtFQUNFO0FQK3NEUjs7QU83c0RNO0VBQ0U7QVBndERSOztBT3B0RE07RUFDRTtBUHV0RFI7O0FPcnRETTtFQUNFO0FQd3REUjs7QU81dERNO0VBQ0U7QVArdERSOztBTzd0RE07RUFDRTtBUGd1RFI7O0FPNXVETTtFQUNFO0FQK3VEUjs7QU83dURNO0VBQ0U7QVBndkRSOztBTzV1RE07RUFDRTtBUCt1RFI7O0FPN3VETTtFQUNFO0FQZ3ZEUjs7QU9wdkRNO0VBQ0U7QVB1dkRSOztBT3J2RE07RUFDRTtBUHd2RFI7O0FPNXZETTtFQUNFO0FQK3ZEUjs7QU83dkRNO0VBQ0U7QVBnd0RSOztBT3B3RE07RUFDRTtBUHV3RFI7O0FPcndETTtFQUNFO0FQd3dEUjs7QU81d0RNO0VBQ0U7QVArd0RSOztBTzd3RE07RUFDRTtBUGd4RFI7O0FPcHhETTtFQUNFO0FQdXhEUjs7QU9yeERNO0VBQ0U7QVB3eERSOztBTzV4RE07RUFDRTtBUCt4RFI7O0FPN3hETTtFQUNFO0FQZ3lEUjs7QU9weURNO0VBQ0U7QVB1eURSOztBT3J5RE07RUFDRTtBUHd5RFI7O0FPNXlETTtFQUNFO0FQK3lEUjs7QU83eURNO0VBQ0U7QVBnekRSOztBT3B6RE07RUFDRTtBUHV6RFI7O0FPcnpETTtFQUNFO0FQd3pEUjs7QU81ekRNO0VBQ0U7QVArekRSOztBTzd6RE07RUFDRTtBUGcwRFI7O0FPcDBETTtFQUNFO0FQdTBEUjs7QU9yMERNO0VBQ0U7QVB3MERSOztBTzUwRE07RUFDRTtBUCswRFI7O0FPNzBETTtFQUNFO0FQZzFEUjs7QU81MURNO0VBQ0U7QVArMURSOztBTzcxRE07RUFDRTtBUGcyRFI7O0FPNTFETTtFQUNFO0FQKzFEUjs7QU83MURNO0VBQ0U7QVBnMkRSOztBT3AyRE07RUFDRTtBUHUyRFI7O0FPcjJETTtFQUNFO0FQdzJEUjs7QU81MkRNO0VBQ0U7QVArMkRSOztBTzcyRE07RUFDRTtBUGczRFI7O0FPcDNETTtFQUNFO0FQdTNEUjs7QU9yM0RNO0VBQ0U7QVB3M0RSOztBTzUzRE07RUFDRTtBUCszRFI7O0FPNzNETTtFQUNFO0FQZzREUjs7QU9wNERNO0VBQ0U7QVB1NERSOztBT3I0RE07RUFDRTtBUHc0RFI7O0FPNTRETTtFQUNFO0FQKzREUjs7QU83NERNO0VBQ0U7QVBnNURSOztBT3A1RE07RUFDRTtBUHU1RFI7O0FPcjVETTtFQUNFO0FQdzVEUjs7QU81NURNO0VBQ0U7QVArNURSOztBTzc1RE07RUFDRTtBUGc2RFI7O0FPcDZETTtFQUNFO0FQdTZEUjs7QU9yNkRNO0VBQ0U7QVB3NkRSOztBTzU2RE07RUFDRTtBUCs2RFI7O0FPNzZETTtFQUNFO0FQZzdEUjs7QU9wN0RNO0VBQ0U7QVB1N0RSOztBT3I3RE07RUFDRTtBUHc3RFI7O0FPNTdETTtFQUNFO0FQKzdEUjs7QU83N0RNO0VBQ0U7QVBnOERSOztBTzU4RE07RUFDRTtBUCs4RFI7O0FPNzhETTtFQUNFO0FQZzlEUjs7QU81OERNO0VBQ0U7QVArOERSOztBTzc4RE07RUFDRTtBUGc5RFI7O0FPcDlETTtFQUNFO0FQdTlEUjs7QU9yOURNO0VBQ0U7QVB3OURSOztBTzU5RE07RUFDRTtBUCs5RFI7O0FPNzlETTtFQUNFO0FQZytEUjs7QU9wK0RNO0VBQ0U7QVB1K0RSOztBT3IrRE07RUFDRTtBUHcrRFI7O0FPNStETTtFQUNFO0FQKytEUjs7QU83K0RNO0VBQ0U7QVBnL0RSOztBT3AvRE07RUFDRTtBUHUvRFI7O0FPci9ETTtFQUNFO0FQdy9EUjs7QU81L0RNO0VBQ0U7QVArL0RSOztBTzcvRE07RUFDRTtBUGdnRVI7O0FPcGdFTTtFQUNFO0FQdWdFUjs7QU9yZ0VNO0VBQ0U7QVB3Z0VSOztBTzVnRU07RUFDRTtBUCtnRVI7O0FPN2dFTTtFQUNFO0FQZ2hFUjs7QU9waEVNO0VBQ0U7QVB1aEVSOztBT3JoRU07RUFDRTtBUHdoRVI7O0FPNWhFTTtFQUNFO0FQK2hFUjs7QU83aEVNO0VBQ0U7QVBnaUVSOztBT3BpRU07RUFDRTtBUHVpRVI7O0FPcmlFTTtFQUNFO0FQd2lFUjs7QU81aUVNO0VBQ0U7QVAraUVSOztBTzdpRU07RUFDRTtBUGdqRVI7O0FPNWpFTTtFQUNFO0FQK2pFUjs7QU83akVNO0VBQ0U7QVBna0VSOztBTzVqRU07RUFDRTtBUCtqRVI7O0FPN2pFTTtFQUNFO0FQZ2tFUjs7QU9wa0VNO0VBQ0U7QVB1a0VSOztBT3JrRU07RUFDRTtBUHdrRVI7O0FPNWtFTTtFQUNFO0FQK2tFUjs7QU83a0VNO0VBQ0U7QVBnbEVSOztBT3BsRU07RUFDRTtBUHVsRVI7O0FPcmxFTTtFQUNFO0FQd2xFUjs7QU81bEVNO0VBQ0U7QVArbEVSOztBTzdsRU07RUFDRTtBUGdtRVI7O0FPcG1FTTtFQUNFO0FQdW1FUjs7QU9ybUVNO0VBQ0U7QVB3bUVSOztBTzVtRU07RUFDRTtBUCttRVI7O0FPN21FTTtFQUNFO0FQZ25FUjs7QU9wbkVNO0VBQ0U7QVB1bkVSOztBT3JuRU07RUFDRTtBUHduRVI7O0FPNW5FTTtFQUNFO0FQK25FUjs7QU83bkVNO0VBQ0U7QVBnb0VSOztBT3BvRU07RUFDRTtBUHVvRVI7O0FPcm9FTTtFQUNFO0FQd29FUjs7QU81b0VNO0VBQ0U7QVArb0VSOztBTzdvRU07RUFDRTtBUGdwRVI7O0FPcHBFTTtFQUNFO0FQdXBFUjs7QU9ycEVNO0VBQ0U7QVB3cEVSOztBTzVwRU07RUFDRTtBUCtwRVI7O0FPN3BFTTtFQUNFO0FQZ3FFUjs7QU81cUVNO0VBQ0U7QVArcUVSOztBTzdxRU07RUFDRTtBUGdyRVI7O0FPNXFFTTtFQUNFO0FQK3FFUjs7QU83cUVNO0VBQ0U7QVBnckVSOztBT3ByRU07RUFDRTtBUHVyRVI7O0FPcnJFTTtFQUNFO0FQd3JFUjs7QU81ckVNO0VBQ0U7QVArckVSOztBTzdyRU07RUFDRTtBUGdzRVI7O0FPcHNFTTtFQUNFO0FQdXNFUjs7QU9yc0VNO0VBQ0U7QVB3c0VSOztBTzVzRU07RUFDRTtBUCtzRVI7O0FPN3NFTTtFQUNFO0FQZ3RFUjs7QU9wdEVNO0VBQ0U7QVB1dEVSOztBT3J0RU07RUFDRTtBUHd0RVI7O0FPNXRFTTtFQUNFO0FQK3RFUjs7QU83dEVNO0VBQ0U7QVBndUVSOztBT3B1RU07RUFDRTtBUHV1RVI7O0FPcnVFTTtFQUNFO0FQd3VFUjs7QU81dUVNO0VBQ0U7QVArdUVSOztBTzd1RU07RUFDRTtBUGd2RVI7O0FPcHZFTTtFQUNFO0FQdXZFUjs7QU9ydkVNO0VBQ0U7QVB3dkVSOztBTzV2RU07RUFDRTtBUCt2RVI7O0FPN3ZFTTtFQUNFO0FQZ3dFUjs7QU9wd0VNO0VBQ0U7QVB1d0VSOztBT3J3RU07RUFDRTtBUHd3RVI7O0FPNXdFTTtFQUNFO0FQK3dFUjs7QU83d0VNO0VBQ0U7QVBneEVSOztBTzV4RU07RUFDRTtBUCt4RVI7O0FPN3hFTTtFQUNFO0FQZ3lFUjs7QU81eEVNO0VBQ0U7QVAreEVSOztBTzd4RU07RUFDRTtBUGd5RVI7O0FPcHlFTTtFQUNFO0FQdXlFUjs7QU9yeUVNO0VBQ0U7QVB3eUVSOztBTzV5RU07RUFDRTtBUCt5RVI7O0FPN3lFTTtFQUNFO0FQZ3pFUjs7QU9wekVNO0VBQ0U7QVB1ekVSOztBT3J6RU07RUFDRTtBUHd6RVI7O0FPNXpFTTtFQUNFO0FQK3pFUjs7QU83ekVNO0VBQ0U7QVBnMEVSOztBT3AwRU07RUFDRTtBUHUwRVI7O0FPcjBFTTtFQUNFO0FQdzBFUjs7QU81MEVNO0VBQ0U7QVArMEVSOztBTzcwRU07RUFDRTtBUGcxRVI7O0FPcDFFTTtFQUNFO0FQdTFFUjs7QU9yMUVNO0VBQ0U7QVB3MUVSOztBTzUxRU07RUFDRTtBUCsxRVI7O0FPNzFFTTtFQUNFO0FQZzJFUjs7QU9wMkVNO0VBQ0U7QVB1MkVSOztBT3IyRU07RUFDRTtBUHcyRVI7O0FPNTJFTTtFQUNFO0FQKzJFUjs7QU83MkVNO0VBQ0U7QVBnM0VSOztBT3AzRU07RUFDRTtBUHUzRVI7O0FPcjNFTTtFQUNFO0FQdzNFUjs7QU81M0VNO0VBQ0U7QVArM0VSOztBTzczRU07RUFDRTtBUGc0RVI7O0FPNTRFTTtFQUNFO0FQKzRFUjs7QU83NEVNO0VBQ0U7QVBnNUVSOztBTzU0RU07RUFDRTtBUCs0RVI7O0FPNzRFTTtFQUNFO0FQZzVFUjs7QU9wNUVNO0VBQ0U7QVB1NUVSOztBT3I1RU07RUFDRTtBUHc1RVI7O0FPNTVFTTtFQUNFO0FQKzVFUjs7QU83NUVNO0VBQ0U7QVBnNkVSOztBT3A2RU07RUFDRTtBUHU2RVI7O0FPcjZFTTtFQUNFO0FQdzZFUjs7QU81NkVNO0VBQ0U7QVArNkVSOztBTzc2RU07RUFDRTtBUGc3RVI7O0FPcDdFTTtFQUNFO0FQdTdFUjs7QU9yN0VNO0VBQ0U7QVB3N0VSOztBTzU3RU07RUFDRTtBUCs3RVI7O0FPNzdFTTtFQUNFO0FQZzhFUjs7QU9wOEVNO0VBQ0U7QVB1OEVSOztBT3I4RU07RUFDRTtBUHc4RVI7O0FPNThFTTtFQUNFO0FQKzhFUjs7QU83OEVNO0VBQ0U7QVBnOUVSOztBT3A5RU07RUFDRTtBUHU5RVI7O0FPcjlFTTtFQUNFO0FQdzlFUjs7QU81OUVNO0VBQ0U7QVArOUVSOztBTzc5RU07RUFDRTtBUGcrRVI7O0FPcCtFTTtFQUNFO0FQdStFUjs7QU9yK0VNO0VBQ0U7QVB3K0VSOztBTzUrRU07RUFDRTtBUCsrRVI7O0FPNytFTTtFQUNFO0FQZy9FUjs7QU81L0VNO0VBQ0U7QVArL0VSOztBTzcvRU07RUFDRTtBUGdnRlI7O0FPNS9FTTtFQUNFO0FQKy9FUjs7QU83L0VNO0VBQ0U7QVBnZ0ZSOztBT3BnRk07RUFDRTtBUHVnRlI7O0FPcmdGTTtFQUNFO0FQd2dGUjs7QU81Z0ZNO0VBQ0U7QVArZ0ZSOztBTzdnRk07RUFDRTtBUGdoRlI7O0FPcGhGTTtFQUNFO0FQdWhGUjs7QU9yaEZNO0VBQ0U7QVB3aEZSOztBTzVoRk07RUFDRTtBUCtoRlI7O0FPN2hGTTtFQUNFO0FQZ2lGUjs7QU9waUZNO0VBQ0U7QVB1aUZSOztBT3JpRk07RUFDRTtBUHdpRlI7O0FPNWlGTTtFQUNFO0FQK2lGUjs7QU83aUZNO0VBQ0U7QVBnakZSOztBT3BqRk07RUFDRTtBUHVqRlI7O0FPcmpGTTtFQUNFO0FQd2pGUjs7QU81akZNO0VBQ0U7QVArakZSOztBTzdqRk07RUFDRTtBUGdrRlI7O0FPcGtGTTtFQUNFO0FQdWtGUjs7QU9ya0ZNO0VBQ0U7QVB3a0ZSOztBTzVrRk07RUFDRTtBUCtrRlI7O0FPN2tGTTtFQUNFO0FQZ2xGUjs7QU9wbEZNO0VBQ0U7QVB1bEZSOztBT3JsRk07RUFDRTtBUHdsRlI7O0FPNWxGTTtFQUNFO0FQK2xGUjs7QU83bEZNO0VBQ0U7QVBnbUZSOztBTzVtRk07RUFDRTtBUCttRlI7O0FPN21GTTtFQUNFO0FQZ25GUjs7QU81bUZNO0VBQ0U7QVArbUZSOztBTzdtRk07RUFDRTtBUGduRlI7O0FPcG5GTTtFQUNFO0FQdW5GUjs7QU9ybkZNO0VBQ0U7QVB3bkZSOztBTzVuRk07RUFDRTtBUCtuRlI7O0FPN25GTTtFQUNFO0FQZ29GUjs7QU9wb0ZNO0VBQ0U7QVB1b0ZSOztBT3JvRk07RUFDRTtBUHdvRlI7O0FPNW9GTTtFQUNFO0FQK29GUjs7QU83b0ZNO0VBQ0U7QVBncEZSOztBT3BwRk07RUFDRTtBUHVwRlI7O0FPcnBGTTtFQUNFO0FQd3BGUjs7QU81cEZNO0VBQ0U7QVArcEZSOztBTzdwRk07RUFDRTtBUGdxRlI7O0FPcHFGTTtFQUNFO0FQdXFGUjs7QU9ycUZNO0VBQ0U7QVB3cUZSOztBTzVxRk07RUFDRTtBUCtxRlI7O0FPN3FGTTtFQUNFO0FQZ3JGUjs7QU81ckZNO0VBQ0U7QVArckZSOztBTzdyRk07RUFDRTtBUGdzRlI7O0FPNXJGTTtFQUNFO0FQK3JGUjs7QU83ckZNO0VBQ0U7QVBnc0ZSOztBT3BzRk07RUFDRTtBUHVzRlI7O0FPcnNGTTtFQUNFO0FQd3NGUjs7QU81c0ZNO0VBQ0U7QVArc0ZSOztBTzdzRk07RUFDRTtBUGd0RlI7O0FPcHRGTTtFQUNFO0FQdXRGUjs7QU9ydEZNO0VBQ0U7QVB3dEZSOztBTzV0Rk07RUFDRTtBUCt0RlI7O0FPN3RGTTtFQUNFO0FQZ3VGUjs7QU9wdUZNO0VBQ0U7QVB1dUZSOztBT3J1Rk07RUFDRTtBUHd1RlI7O0FPNXVGTTtFQUNFO0FQK3VGUjs7QU83dUZNO0VBQ0U7QVBndkZSOztBT3B2Rk07RUFDRTtBUHV2RlI7O0FPcnZGTTtFQUNFO0FQd3ZGUjs7QU81dkZNO0VBQ0U7QVArdkZSOztBTzd2Rk07RUFDRTtBUGd3RlI7O0FPNXdGTTtFQUNFO0FQK3dGUjs7QU83d0ZNO0VBQ0U7QVBneEZSOztBTzV3Rk07RUFDRTtBUCt3RlI7O0FPN3dGTTtFQUNFO0FQZ3hGUjs7QU9weEZNO0VBQ0U7QVB1eEZSOztBT3J4Rk07RUFDRTtBUHd4RlI7O0FPNXhGTTtFQUNFO0FQK3hGUjs7QU83eEZNO0VBQ0U7QVBneUZSOztBT3B5Rk07RUFDRTtBUHV5RlI7O0FPcnlGTTtFQUNFO0FQd3lGUjs7QU81eUZNO0VBQ0U7QVAreUZSOztBTzd5Rk07RUFDRTtBUGd6RlI7O0FPcHpGTTtFQUNFO0FQdXpGUjs7QU9yekZNO0VBQ0U7QVB3ekZSOztBTzV6Rk07RUFDRTtBUCt6RlI7O0FPN3pGTTtFQUNFO0FQZzBGUjs7QU9wMEZNO0VBQ0U7QVB1MEZSOztBT3IwRk07RUFDRTtBUHcwRlI7O0FPNTBGTTtFQUNFO0FQKzBGUjs7QU83MEZNO0VBQ0U7QVBnMUZSOztBT3gwRkU7RUFDRTtBUDIwRko7O0FPejBGRTtFQUNFO0FQNDBGSjs7QU9oMUZFO0VBQ0U7QVBtMUZKOztBT2oxRkU7RUFDRTtBUG8xRko7O0FPeDFGRTtFQUNFO0FQMjFGSjs7QU96MUZFO0VBQ0U7QVA0MUZKOztBUXozRkE7QUFFQTsrRUFBQTtBQUdBOzs7RUFBQTtBQUtBO0VBQ0U7RUFDQTtBUnkzRkY7O0FRdDNGQTsrRUFBQTtBQUdBOztFQUFBO0FBSUE7RUFDRTtBUnUzRkY7O0FRcDNGQTs7RUFBQTtBQUlBO0VBQ0U7QVJzM0ZGOztBUW4zRkE7OztFQUFBO0FBS0E7RUFDRTtFQUNBO0FScTNGRjs7QVFsM0ZBOytFQUFBO0FBR0E7OztFQUFBO0FBS0E7RUFDRTtFQUNBO0VBQ0E7QVJtM0ZGOztBUWgzRkE7OztFQUFBO0FBS0E7RUFDRTtFQUNBO0FSazNGRjs7QVEvMkZBOytFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUNFO0FSZzNGRjs7QVE3MkZBOzs7RUFBQTtBQUtBO0VBQ0U7RUFDQTtFQUNBO0FSKzJGRjs7QVE1MkZBOztFQUFBO0FBSUE7O0VBRUU7QVI4MkZGOztBUTMyRkE7OztFQUFBO0FBS0E7OztFQUdFO0VBQ0E7QVI2MkZGOztBUTEyRkE7O0VBQUE7QUFJQTtFQUNFO0FSNDJGRjs7QVF6MkZBOzs7RUFBQTtBQUtBOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0FSMjJGRjs7QVF4MkZBO0VBQ0U7QVIyMkZGOztBUXgyRkE7RUFDRTtBUjIyRkY7O0FReDJGQTsrRUFBQTtBQUdBOztFQUFBO0FBSUE7RUFDRTtBUnkyRkY7O0FRdDJGQTsrRUFBQTtBQUdBOzs7RUFBQTtBQUtBOzs7OztFQUtFO0VBQ0E7RUFDQTtFQUNBO0FSdTJGRjs7QVFwMkZBOzs7RUFBQTtBQUtBO1FBQ1E7RUFDTjtBUnMyRkY7O0FRbjJGQTs7O0VBQUE7QUFLQTtTQUNTO0VBQ1A7QVJxMkZGOztBUWwyRkE7O0VBQUE7QUFJQTs7OztFQUlFO0FSbzJGRjs7QVFqMkZBOztFQUFBO0FBSUE7Ozs7RUFJRTtFQUNBO0FSbTJGRjs7QVFoMkZBOztFQUFBO0FBSUE7Ozs7RUFJRTtBUmsyRkY7O0FRLzFGQTs7RUFBQTtBQUlBO0VBQ0U7QVJpMkZGOztBUTkxRkE7Ozs7O0VBQUE7QUFPQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUmcyRkY7O0FRNzFGQTs7RUFBQTtBQUlBO0VBQ0U7QVIrMUZGOztBUTUxRkE7O0VBQUE7QUFJQTtFQUNFO0FSODFGRjs7QVEzMUZBOzs7RUFBQTtBQUtBOztFQUVFO0VBQ0E7QVI2MUZGOztBUTExRkE7O0VBQUE7QUFJQTs7RUFFRTtBUjQxRkY7O0FRejFGQTs7O0VBQUE7QUFLQTtFQUNFO0VBQ0E7QVIyMUZGOztBUXgxRkE7O0VBQUE7QUFJQTtFQUNFO0FSMDFGRjs7QVF2MUZBOzs7RUFBQTtBQUtBO0VBQ0U7RUFDQTtBUnkxRkY7O0FRdDFGQTsrRUFBQTtBQUdBOztFQUFBO0FBSUE7RUFDRTtBUnUxRkY7O0FRcDFGQTs7RUFBQTtBQUlBO0VBQ0U7QVJzMUZGOztBUW4xRkE7K0VBQUE7QUFHQTs7RUFBQTtBQUlBO0VBQ0U7QVJvMUZGOztBUWoxRkE7O0VBQUE7QUFJQTtFQUNFO0FSbTFGRjs7QVM5cUdBO0VBQ0U7QVRpckdGOztBUzlxR0E7RUFDRTtBVGlyR0Y7O0FTOXFHQTs7Ozs7RUFLRSxnSUNtV1c7QVY4MEZiOztBUzlxR0E7RUFDRSxjQ29EVztFRG5EWDtFQUVBO0FUZ3JHRjs7QVM1cUdBO0VBQ0U7RUFDQTtBVCtxR0Y7O0FTM3FHQTtFQUNFO0FUOHFHRjs7QVMxcUdBO0VBQ0U7QVQ2cUdGOztBUzFxR0E7QUFDQTtFQUNFO0FUNnFHRjs7QVN4cUdBO0VBQ0U7QVQycUdGOztBU3hxR0E7QUFDQTtFQUNFO0FUMnFHRjs7QVN0cUdBO0FBQ0E7RUFDRTtBVHlxR0Y7O0FTcHFHQTtBQUNBO0VBQ0U7QVR1cUdGOztBU2xxR0E7QUFDQTtFQUNFO0FUcXFHRjs7QVNocUdBO0VBQ0U7QVRtcUdGO0FTbHFHRTtFQUNFO0FUb3FHSjs7QVMvcEdBO0VBQ0U7RUFDQTtFQUNBLHdDQ2RjO0FWZ3JHaEI7O0FTOXBHQTtFQUNFO0VBQ0E7RUFDQTtBVGlxR0Y7O0FTN3BHQTtFQUNFO0FUZ3FHRjtBUy9wR0U7RUFDRTtFQUNBO0FUaXFHSjtBUzlwR0U7RUFDRTtBVGdxR0o7QVM3cEdFO0VBQ0U7QVQrcEdKO0FTN3BHRTtFQUNFO0FUK3BHSjtBUzdwR0U7RUFDRTtBVCtwR0o7QVM3cEdFO0VBQ0U7QVQrcEdKOztBUzFwR0E7O0VBRUU7RUFDQTtBVDZwR0Y7O0FTdnBHRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVQwcEdKO0FTeHBHSTtFQUNFLCtCQzFGYztFRDJGZDtFQUNBO0VBQ0E7RUFDQTtBVDBwR047QVN2cEdJO0VBQ0UsbURDdEd1QjtBVit2RzdCO0FTdHBHSTtFQUNFLHdDQ25HdUI7QVYydkc3QjtBU3JwR0k7RUFFRSxzQ0N0SFU7QVY0d0doQjtBU25wR0k7RUFDRTtFQUNBLGlDQy9HZ0I7QVZvd0d0QjtBU2xwR0k7RUFDRTtBVG9wR047QVMvb0dFO0VBQ0U7RUFDQTtBVGlwR0o7O0FTN29HQTtFQUNFO0lBQ0U7RVRncEdGO0VTOW9HRTs7SUFFRTtFVGdwR0o7RVM3b0dFO0lBQ0U7SUFDQTtJQUNBO0VUK29HSjtBQUNGO0FTMW9HQTtFQUNFO0VBQ0E7RUFDQSwwQ0NoSjZCO0FWNHhHL0I7QVMxb0dFOzs7O0VBSUU7RUFDQTtFQUNBO0FUNG9HSjtBU3pvR0U7RUFDRTtFQUNBLDBDQzdKMkI7RUQ4SjNCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVDJvR0o7QVN4b0dFO0VBQ0U7QVQwb0dKO0FTdm9HRTtFQUNFLHdDQy9LeUI7QVZ3ekc3Qjs7QVNwb0dBO0VBQ0U7RUFDQTtFQUNBO0FUdW9HRjtBU3JvR0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVR1b0dKO0FTcm9HSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVR1b0dOOztBU2pvR0E7RUFDRTtBVG9vR0Y7O0FTam9HQTtFQUNFO0FUb29HRjs7QVNqb0dBOztzQkFBQTtBQUlBO0VBQ0U7QVRtb0dGOztBU2hvR0E7RUFDRTtFQUNBO0FUbW9HRjs7QVMvbkdBOztzQkFBQTtBQUlFO0VBREY7SUFFSTtFVGtvR0Y7QUFDRjs7QVM5bkdFO0VBREY7SUFFSTtFVGtvR0Y7QUFDRjs7QVM5bkdFO0VBREY7SUFFSTtFVGtvR0Y7QUFDRjs7QVM5bkdFO0VBREY7SUFFSTtFVGtvR0Y7QUFDRjs7QVM5bkdFO0VBREY7SUFFSTtFVGtvR0Y7QUFDRjs7QVM5bkdFO0VBREY7SUFFSTtFVGtvR0Y7QUFDRjs7QVM5bkdFO0VBREY7SUFFSTtFVGtvR0Y7QUFDRjs7QVM5bkdFO0VBREY7SUFFSTtFVGtvR0Y7QUFDRjs7QVM5bkdFO0VBREY7SUFFSTtFVGtvR0Y7QUFDRjs7QVM5bkdFO0VBREY7SUFFSTtFVGtvR0Y7QUFDRjs7QVM5bkdFO0VBREY7SUFFSTtFVGtvR0Y7QUFDRjs7QVM5bkdFO0VBREY7SUFFSTtFVGtvR0Y7QUFDRjs7QVM1bkdFO0VBREY7SUFFSTtFVGdvR0Y7QUFDRjs7QVM1bkdBO0VBQ0U7RUFDQSx3Q0MzVDJCO0VENFQzQixzQ0MxVWM7QVZ5OEdoQjtBUzduR0U7RUFDRSx3Q0MvVHlCO0FWODdHN0I7QVM1bkdFOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLCtDQ0YwQjtFREcxQiwyQ0N4VmlCO0FWczlHckI7O0FTMW5HQTtFQUNFO0VBQ0E7QVQ2bkdGOztBU3puR0E7RUFDRTtBVDRuR0Y7O0FTem5HQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FUNG5HRjtBU3puR0k7RUFDRTtBVDJuR047QVN6bkdJO0VBQ0UseURDbEVnQjtBVjZyR3RCO0FTdm5HRTtFQUNFO0FUeW5HSjtBU3ZuR0k7RUFDRSxvQ0M1VnVCO0FWcTlHN0I7QVNybkdFO0VBQ0UsK0JDcFhnQjtBVjIrR3BCO0FTbm5HSTtFQUNFO0FUcW5HTjs7QVNobkdBO0VBQ0U7QVRtbkdGOztBU2huR0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FUbW5HRjs7QVMvbUdBO0VBRUU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBMkRBO0VUdWpHRjtFU2huR0U7SUFDRTtFVGtuR0o7RVMvbUdFOztJQUVFO0lBQ0E7RVRpbkdKO0VTOW1HRTtJQUNFO0VUZ25HSjtFUzdtR0U7SUFDRTtJQUNBO0VUK21HSjtFUzdtR0k7SUFDRTtJQUNBO0VUK21HTjtFUzdtR007SUFDRTtFVCttR1I7RVMxbUdFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFVDRtR0o7RVMxbUdJO0lBQ0U7SUFDQTtFVDRtR047RVN4bUdFO0lBQ0U7SUFDQTtFVDBtR0o7RVN2bUdFO0lBQ0U7SUFDQTtJQUNBO0VUeW1HSjtFU3RtR0U7SUFDRTtJQUNBO0VUd21HSjtFU3BtR0U7SUFDRTtJQUNBO0VUc21HSjtBQUNGO0FTam1HQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FUbW1HRjtBU2ptR0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FUbW1HSjs7QVMvbEdBOzttQkFBQTtBQUlBO0VBQ0U7QVRpbUdGOztBUzlsR0E7RUFDRTtBVGltR0Y7O0FTL2xHQTtFQUNFO0FUa21HRjs7QVNobUdBO0VBQ0U7QVRtbUdGOztBUy9sR0E7RUFDRTtBVGttR0Y7O0FTaG1HQTtFQUNFO0FUbW1HRjs7QVMvbEdBOztFQUNFO0FUbW1HRjs7QVNqbUdBO0VBQ0U7QVRvbUdGOztBU2xtR0E7RUFDRTtFQUNBO0VBQ0E7QVRxbUdGOztBU25tR0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBVHNtR0Y7O0FTcG1HQTtFQUNFO0FUdW1HRjs7QVNwbUdBOzswQkFBQTtBQWNJO0VBQ0U7QVQ0bEdOOztBU3ZsR007RUFDRTtBVDBsR1I7O0FTM2xHTTtFQUNFO0FUOGxHUjs7QVMvbEdNO0VBQ0U7QVRrbUdSOztBU25tR007RUFDRTtBVHNtR1I7O0FTaG1HTztFQUNFO0VBQ0E7QVRtbUdUOztBUzdsR007RUFDRTtFQUNBO0FUZ21HUjs7QVN2bkdJO0VBQ0U7QVQwbkdOOztBU3JuR007RUFDRTtBVHduR1I7O0FTem5HTTtFQUNFO0FUNG5HUjs7QVM3bkdNO0VBQ0U7QVRnb0dSOztBU2pvR007RUFDRTtBVG9vR1I7O0FTOW5HTztFQUNFO0VBQ0E7QVRpb0dUOztBUzNuR007RUFDRTtFQUNBO0FUOG5HUjs7QVNycEdJO0VBQ0U7QVR3cEdOOztBU25wR007RUFDRTtBVHNwR1I7O0FTdnBHTTtFQUNFO0FUMHBHUjs7QVMzcEdNO0VBQ0U7QVQ4cEdSOztBUy9wR007RUFDRTtBVGtxR1I7O0FTNXBHTztFQUNFO0VBQ0E7QVQrcEdUOztBU3pwR007RUFDRTtFQUNBO0FUNHBHUjs7QVNuckdJO0VBQ0U7QVRzckdOOztBU2pyR007RUFDRTtBVG9yR1I7O0FTcnJHTTtFQUNFO0FUd3JHUjs7QVN6ckdNO0VBQ0U7QVQ0ckdSOztBUzdyR007RUFDRTtBVGdzR1I7O0FTMXJHTztFQUNFO0VBQ0E7QVQ2ckdUOztBU3ZyR007RUFDRTtFQUNBO0FUMHJHUjs7QVNqdEdJO0VBQ0U7QVRvdEdOOztBUy9zR007RUFDRTtBVGt0R1I7O0FTbnRHTTtFQUNFO0FUc3RHUjs7QVN2dEdNO0VBQ0U7QVQwdEdSOztBUzN0R007RUFDRTtBVDh0R1I7O0FTeHRHTztFQUNFO0VBQ0E7QVQydEdUOztBU3J0R007RUFDRTtFQUNBO0FUd3RHUjs7QVMvdUdJO0VBQ0U7QVRrdkdOOztBUzd1R007RUFDRTtBVGd2R1I7O0FTanZHTTtFQUNFO0FUb3ZHUjs7QVNydkdNO0VBQ0U7QVR3dkdSOztBU3p2R007RUFDRTtBVDR2R1I7O0FTdHZHTztFQUNFO0VBQ0E7QVR5dkdUOztBU252R007RUFDRTtFQUNBO0FUc3ZHUjs7QVM3d0dJO0VBQ0U7QVRneEdOOztBUzN3R007RUFDRTtBVDh3R1I7O0FTL3dHTTtFQUNFO0FUa3hHUjs7QVNueEdNO0VBQ0U7QVRzeEdSOztBU3Z4R007RUFDRTtBVDB4R1I7O0FTcHhHTztFQUNFO0VBQ0E7QVR1eEdUOztBU2p4R007RUFDRTtFQUNBO0FUb3hHUjs7QVMzeUdJO0VBQ0U7QVQ4eUdOOztBU3p5R007RUFDRTtBVDR5R1I7O0FTN3lHTTtFQUNFO0FUZ3pHUjs7QVNqekdNO0VBQ0U7QVRvekdSOztBU3J6R007RUFDRTtBVHd6R1I7O0FTbHpHTztFQUNFO0VBQ0E7QVRxekdUOztBUy95R007RUFDRTtFQUNBO0FUa3pHUjs7QVN6MEdJO0VBQ0U7QVQ0MEdOOztBU3YwR007RUFDRTtBVDAwR1I7O0FTMzBHTTtFQUNFO0FUODBHUjs7QVMvMEdNO0VBQ0U7QVRrMUdSOztBU24xR007RUFDRTtBVHMxR1I7O0FTaDFHTztFQUNFO0VBQ0E7QVRtMUdUOztBUzcwR007RUFDRTtFQUNBO0FUZzFHUjs7QVN2MkdJO0VBQ0U7QVQwMkdOOztBU3IyR007RUFDRTtBVHcyR1I7O0FTejJHTTtFQUNFO0FUNDJHUjs7QVM3MkdNO0VBQ0U7QVRnM0dSOztBU2ozR007RUFDRTtBVG8zR1I7O0FTOTJHTztFQUNFO0VBQ0E7QVRpM0dUOztBUzMyR007RUFDRTtFQUNBO0FUODJHUjs7QVNyNEdJO0VBQ0U7QVR3NEdOOztBU240R007RUFDRTtBVHM0R1I7O0FTdjRHTTtFQUNFO0FUMDRHUjs7QVMzNEdNO0VBQ0U7QVQ4NEdSOztBUy80R007RUFDRTtBVGs1R1I7O0FTNTRHTztFQUNFO0VBQ0E7QVQrNEdUOztBU3o0R007RUFDRTtFQUNBO0FUNDRHUjs7QVNuNkdJO0VBQ0U7QVRzNkdOOztBU2o2R007RUFDRTtBVG82R1I7O0FTcjZHTTtFQUNFO0FUdzZHUjs7QVN6NkdNO0VBQ0U7QVQ0NkdSOztBUzc2R007RUFDRTtBVGc3R1I7O0FTMTZHTztFQUNFO0VBQ0E7QVQ2NkdUOztBU3Y2R007RUFDRTtFQUNBO0FUMDZHUjs7QVNqOEdJO0VBQ0U7QVRvOEdOOztBUy83R007RUFDRTtBVGs4R1I7O0FTbjhHTTtFQUNFO0FUczhHUjs7QVN2OEdNO0VBQ0U7QVQwOEdSOztBUzM4R007RUFDRTtBVDg4R1I7O0FTeDhHTztFQUNFO0VBQ0E7QVQyOEdUOztBU3I4R007RUFDRTtFQUNBO0FUdzhHUjs7QVMvOUdJO0VBQ0U7QVRrK0dOOztBUzc5R007RUFDRTtBVGcrR1I7O0FTaitHTTtFQUNFO0FUbytHUjs7QVNyK0dNO0VBQ0U7QVR3K0dSOztBU3orR007RUFDRTtBVDQrR1I7O0FTdCtHTztFQUNFO0VBQ0E7QVR5K0dUOztBU24rR007RUFDRTtFQUNBO0FUcytHUjs7QVM3L0dJO0VBQ0U7QVRnZ0hOOztBUzMvR007RUFDRTtBVDgvR1I7O0FTLy9HTTtFQUNFO0FUa2dIUjs7QVNuZ0hNO0VBQ0U7QVRzZ0hSOztBU3ZnSE07RUFDRTtBVDBnSFI7O0FTcGdITztFQUNFO0VBQ0E7QVR1Z0hUOztBU2pnSE07RUFDRTtFQUNBO0FUb2dIUjs7QVMzaEhJO0VBQ0U7QVQ4aEhOOztBU3poSE07RUFDRTtBVDRoSFI7O0FTN2hITTtFQUNFO0FUZ2lIUjs7QVNqaUhNO0VBQ0U7QVRvaUhSOztBU3JpSE07RUFDRTtBVHdpSFI7O0FTbGlITztFQUNFO0VBQ0E7QVRxaUhUOztBUy9oSE07RUFDRTtFQUNBO0FUa2lIUjs7QVdocElBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxrQkRnWnlCO0VDL1l6QjtFQUNBO0FYbXBJRjtBV2pwSUU7RUFDRSw2QkRxWWtCO0VDcFlsQixtQkR5WXFCO0VDeFlyQjtFQUNBO0VBQ0E7QVhtcElKO0FXaHBJSTtFQUNFO0VBQ0E7RUFDQTtBWGtwSU47QVcvb0lNOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FYaXBJUjtBVzlvSU07RUFDRTtFQUNBO0VBQ0EsV0RrWDhCO0VDalg5QiwyQ0RnWDRCO0VDL1c1QjtBWGdwSVI7QVc1b0lNO0VBQ0U7QVg4b0lSO0FXM29JTTtFQUNFO0FYNm9JUjtBVzFvSU07RUFDRTtFQUNBO0VBQ0E7QVg0b0lSO0FXdG9JSTtFQUNFO0FYd29JTjtBV3JvSUk7RUFDRSxzQ0R4QlU7RUN5QlYsd0NEWHVCO0FWa3BJN0I7QVdyb0lNO0VBQ0Usd0NEZHFCO0FWcXBJN0I7QVdsb0lFO0VBQ0U7RUFDQTtFQUNBLDJCRHBDWTtBVndxSWhCO0FXam9JTTtFQUNFLG9DRFZxQjtBVjZvSTdCO0FXN25JSTtFQUNFLDZCRHVUZ0I7RUN0VGhCO0VBQ0E7QVgrbklOO0FXNW5JSTtFQUNFO0FYOG5JTjtBVzNuSUk7RUFDRTtBWDZuSU47O0FXdG5JQTtFQUNFO0VBQ0EsMkJEbEVjO0FWMnJJaEI7O0FXdG5JQTtFQUNFO0VBQ0E7QVh5bklGOztBWXp1SUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsaUJGMEVhO0VFekViLFlGeUVhO0VFeEViLCtCRnlFWTtFRXhFWjtFQUNBO0FaNHVJRjtBWTF1SUU7RUFDRTtFQUNBO0VBQ0Esd0NGd0N5QjtFRXZDekIsc0NGeUJZO0VFeEJaO0FaNHVJSjtBWTF1SUU7RUFDRTtBWjR1SUo7QVl6dUlFO0VBQ0U7QVoydUlKOztBWXZ1SUE7RUFDRSx3Q0ZxRG1CO0FWcXJJckI7O0FZdHVJQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLGlCRjJDYTtFRTFDYixZRjBDYTtFRXpDYjtBWnl1SUY7O0FZcnVJQTtFQUNFO0Fad3VJRjs7QVlydUlBO0VBQ0U7QVp3dUlGOztBWXJ1SUE7RUFDRSwrQkY2Qlk7QVYyc0lkOztBWXJ1SUE7RUFDRTtBWnd1SUY7O0FZcnVJQTtFQUNFO0VBQ0E7RUFDQTtBWnd1SUY7O0FhdnlJQTtBQUNBOztFQUVFO0VBQ0E7QWIweUlGOztBYzN5SUE7RUFDRTtFQUNBO0VBQ0E7QWQ4eUlGOztBYzV5SUE7RUFDRTtJQUNFO0VkK3lJRjtBQUNGO0FjN3lJQTtFQUNFO0lBQ0U7RWQreUlGO0FBQ0Y7QWM1eUlBO0VBQ0U7QWQ4eUlGOztBY3h4SUE7RUFFRTtFQUNBO0FkMHhJRjtBY3J4SUU7RUFBTztBZHd4SVQ7QWN2eElFO0VBQU87QWQweElUO0FjenhJRTtFQUFPO0FkNHhJVDtBYzN4SUU7RUFBTztBZDh4SVQ7QWM3eElFO0VBQU87QWRneUlUO0FjL3hJRTtFQUFPO0Fka3lJVDtBY2p5SUU7RUFBTztBZG95SVQ7QWNueUlFO0VBQU87QWRzeUlUO0FjcnlJRTtFQUFPO0Fkd3lJVDtBY3Z5SUU7RUFBTztBZDB5SVQ7QWN6eUlFO0VBQU87QWQ0eUlUO0FjM3lJRTtFQUFPO0FkOHlJVDtBYzV5SUU7RUFBYTtBZCt5SWY7QWM5eUlFO0VBQWE7QWRpeklmO0FjaHpJRTtFQUFhO0FkbXpJZjtBY2x6SUU7RUFBYTtBZHF6SWY7QWNweklFO0VBQWE7QWR1eklmO0FjdHpJRTtFQUFhO0FkeXpJZjtBY3h6SUU7RUFBYTtBZDJ6SWY7QWMxeklFO0VBQWE7QWQ2eklmO0FjNXpJRTtFQUFhO0FkK3pJZjtBYzl6SUU7RUFBYztBZGkwSWhCO0FjaDBJRTtFQUFjO0FkbTBJaEI7QWNoMElFO0VBQ0U7SUFBTztFZG0wSVQ7RWNsMElFO0lBQU87RWRxMElUO0VjcDBJRTtJQUFPO0VkdTBJVDtFY3QwSUU7SUFBTztFZHkwSVQ7RWN4MElFO0lBQU87RWQyMElUO0VjMTBJRTtJQUFPO0VkNjBJVDtFYzUwSUU7SUFBTztFZCswSVQ7RWM5MElFO0lBQU87RWRpMUlUO0VjaDFJRTtJQUFPO0VkbTFJVDtFY2wxSUU7SUFBTztFZHExSVQ7RWNwMUlFO0lBQU87RWR1MUlUO0VjdDFJRTtJQUFPO0VkeTFJVDtFY3YxSUU7SUFBYTtFZDAxSWY7RWN6MUlFO0lBQWE7RWQ0MUlmO0VjMzFJRTtJQUFhO0VkODFJZjtFYzcxSUU7SUFBYTtFZGcySWY7RWMvMUlFO0lBQWE7RWRrMklmO0VjajJJRTtJQUFhO0VkbzJJZjtFY24ySUU7SUFBYTtFZHMySWY7RWNyMklFO0lBQWE7RWR3MklmO0VjdjJJRTtJQUFhO0VkMDJJZjtFY3oySUU7SUFBYztFZDQySWhCO0VjMzJJRTtJQUFjO0VkODJJaEI7QUFDRjtBYzMySUU7RUFDRTtJQUFPO0VkODJJVDtFYzcySUU7SUFBTztFZGczSVQ7RWMvMklFO0lBQU87RWRrM0lUO0VjajNJRTtJQUFPO0VkbzNJVDtFY24zSUU7SUFBTztFZHMzSVQ7RWNyM0lFO0lBQU87RWR3M0lUO0VjdjNJRTtJQUFPO0VkMDNJVDtFY3ozSUU7SUFBTztFZDQzSVQ7RWMzM0lFO0lBQU87RWQ4M0lUO0VjNzNJRTtJQUFPO0VkZzRJVDtFYy8zSUU7SUFBTztFZGs0SVQ7RWNqNElFO0lBQU87RWRvNElUO0VjbDRJRTtJQUFjO0VkcTRJaEI7RWNwNElFO0lBQWM7RWR1NEloQjtFY3Q0SUU7SUFBYztFZHk0SWhCO0VjeDRJRTtJQUFjO0VkMjRJaEI7RWMxNElFO0lBQWM7RWQ2NEloQjtFYzU0SUU7SUFBYztFZCs0SWhCO0VjOTRJRTtJQUFjO0VkaTVJaEI7RWNoNUlFO0lBQWM7RWRtNUloQjtFY2w1SUU7SUFBYztFZHE1SWhCO0VjcDVJRTtJQUFjO0VkdTVJaEI7RWN0NUlFO0lBQWM7RWR5NUloQjtBQUNGO0FjdDVJRTtFQUNFO0lBQVE7RWR5NUlWO0VjeDVJRTtJQUFRO0VkMjVJVjtFYzE1SUU7SUFBUTtFZDY1SVY7RWM1NUlFO0lBQVE7RWQrNUlWO0VjOTVJRTtJQUFRO0VkaTZJVjtFY2g2SUU7SUFBUTtFZG02SVY7RWNsNklFO0lBQVE7RWRxNklWO0VjcDZJRTtJQUFRO0VkdTZJVjtFY3Q2SUU7SUFBUTtFZHk2SVY7RWN4NklFO0lBQVE7RWQyNklWO0VjMTZJRTtJQUFRO0VkNjZJVjtFYzU2SUU7SUFBUTtFZCs2SVY7RWM3NklFO0lBQWM7RWRnN0loQjtFYy82SUU7SUFBYztFZGs3SWhCO0VjajdJRTtJQUFjO0VkbzdJaEI7RWNuN0lFO0lBQWM7RWRzN0loQjtFY3I3SUU7SUFBYztFZHc3SWhCO0VjdjdJRTtJQUFjO0VkMDdJaEI7RWN6N0lFO0lBQWM7RWQ0N0loQjtFYzM3SUU7SUFBYztFZDg3SWhCO0VjNzdJRTtJQUFjO0VkZzhJaEI7RWMvN0lFO0lBQWU7RWRrOElqQjtFY2o4SUU7SUFBZTtFZG84SWpCO0FBQ0Y7O0Flam1KQTtFQWVFLHdDTHlDMkI7RUt2QzNCLGtETCtDMEI7RUs3QzFCO0VBQ0EsWUxtUnFCO0VLbFJyQixpQkxrUnFCO0FWazBJdkI7QWV4bUpFO0VBQ0U7QWYwbUpKO0FleG1KSTtFQUNFLGdCTGtTaUI7RUtqU2pCO0FmMG1KTjtBZXZtSkk7RUFDRTtFQUNBO0FmeW1KTjtBZTdsSkU7RUFDRSx3Q0xnQ3lCO0FWK2pKN0I7QWU1bEpFOzs7O0VBSUU7RUFDQTtFQUNBLFlMc1FtQjtFS3JRbkIsaUJMcVFtQjtBVnkxSXZCO0FlM2xKRTtFQUNFO0VBQ0E7QWY2bEpKO0FlMWxKRTtFQUNFO0lBQ0U7RWY0bEpKO0FBQ0Y7QWV4bEpFO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsWUxrUG1CO0VLalBuQjtBZjBsSko7QWV4bEpJO0VBQ0UsWUw4T2lCO0VLN09qQixpQkw2T2lCO0FWNjJJdkI7QWVybEpFO0VBQ0U7RUFDQSx3Q0xUeUI7RUtVekI7RUFDQSxpQkwwT3FCO0VLek9yQjtBZnVsSko7QWVybEpJO0VBQ0U7RUFDQTtBZnVsSk47QWVwbEpJO0VBWkY7SUFhSTtJQUNBO0VmdWxKSjtFZXJsSkk7SUFDRTtJQUNBO0VmdWxKTjtFZXBsSkk7SUFDRTtFZnNsSk47RWVwbEpJO0lBQ0U7SUFDQTtFZnNsSk47QUFDRjtBZW5sSkk7RUFDRTtFQUNBO0FmcWxKTjtBZWxsSkk7Ozs7RUFJRTtFQUNBO0Fmb2xKTjtBZTlrSkU7RUFDRTtFQUNBO0VBQ0E7QWZnbEpKO0FlM2tKRTtFQUNFO0VBQ0E7QWY2a0pKO0FlM2tKSTtFQUNFO0VBQ0E7RUFDQTtBZjZrSk47QWUza0pNO0VBQ0U7RUFDQSxlTHlLVztFS3hLWCx3Q0x6RXFCO0VLMEVyQjtFQUNBO0VBQ0E7QWY2a0pSO0FlM2tKUTtFQUNFLHlETDFGeUI7QVZ1cUpuQztBZTFrSlE7RUFDRSx5REwvRnlCO0FWMnFKbkM7QWV6a0pRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWYya0pWO0FlemtKVTtFQUVFO0VBQ0E7QWYwa0paO0FlcGtKSTtFQUNFO0Fmc2tKTjtBZWprSkU7RUFDRTtBZm1rSko7QWVoa0pFO0VBQ0U7RUFDQTtBZmtrSko7QWVoa0pJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZmtrSk47QWVoa0pNO0VBRUU7RUFDQTtBZmlrSlI7QWU3akpJO0VBQ0U7RUFDQTtBZitqSk47QWU3akpNO0VBQ0UsMENMckl1QjtFS3NJdkI7QWYrakpSO0FlNWpKTTtFQUNFLHdDTDNJcUI7QVZ5c0o3Qjs7QWV2akpBO0VBQ0U7RUFDQSxZTDJGcUI7RUsxRnJCO0FmMGpKRjtBZXhqSkU7RUFDRTtFQUNBO0FmMGpKSjs7QWV0akpBO0VBQ0U7SUFDRSxnQkw4RVk7RVYyK0lkO0VldmpKQTtJQUNFLFlMMkVZO0lLMUVaLGlCTDBFWTtFVisrSWQ7RWV2akpBO0lBQ0UsWUx1RVk7RVZrL0lkO0FBQ0Y7QWdCcnhKQTtFQUNFO0FoQnV4SkY7O0FnQnB4SkE7RUFlRSxnSU4wVlc7RU16Vlg7RUFDQSw2Qk55Vlc7QVZnN0liO0FnQnZ4SkU7RUFIRjtJQUlJO0VoQjB4SkY7QUFDRjtBZ0J4eEpFO0VBUEY7SUFRSTtFaEIyeEpGO0FBQ0Y7QWdCenhKRTtFQVhGO0lBWUk7RWhCNHhKRjtBQUNGOztBZ0JyeEpBO0VBQ0M7RUFDQTtBaEJ3eEpEOztBZ0JweEpBO0VBQXFDO0FoQnd4SnJDOztBZ0J2eEpBO0VBQUssaUJOaVZTO0VNalZnQjtFQUFtQjtBaEI2eEpqRDs7QWdCNXhKQTtFQUFLLGtCTmlWUztFTWpWZ0I7RUFBbUI7QWhCa3lKakQ7O0FnQmp5SkE7RUFBSyxrQk5pVlM7RU1qVmdCO0VBQW1CO0FoQnV5SmpEOztBZ0J0eUpBO0VBQUssa0JOaVZTO0VNalZnQjtFQUFtQjtBaEI0eUpqRDs7QWdCM3lKQTtFQUFLLGtCTmlWUztFTWpWZ0I7RUFBbUI7QWhCaXpKakQ7O0FnQmh6SkE7RUFBSyxrQk5pVlM7RU1qVmdCO0VBQW1CO0FoQnN6SmpEOztBZ0JuekpBO0VBQUs7QWhCdXpKTDs7QWdCdHpKQTtFQUFTO0FoQjB6SlQ7O0FnQnp6SkE7RUFBUTtBaEI2ekpSOztBZ0I1ekpBO0VBQVM7QWhCZzBKVDs7QWdCL3pKQTtFQUFRO0FoQm0wSlI7O0FnQjl6Skk7RUFISjtJQUlNO0VoQmswSko7QUFDRjtBZ0JwMEpJO0VBSEo7SUFJTTtFaEJ1MEpKO0FBQ0Y7QWdCejBKSTtFQUhKO0lBSU07RWhCNDBKSjtBQUNGO0FnQjkwSkk7RUFISjtJQUlNO0VoQmkxSko7QUFDRjtBZ0JuMUpJO0VBSEo7SUFJTTtFaEJzMUpKO0FBQ0Y7QWdCeDFKSTtFQUhKO0lBSU07RWhCMjFKSjtBQUNGO0FnQjcxSkk7RUFISjtJQUlNO0VoQmcySko7QUFDRjtBZ0JsMkpJO0VBSEo7SUFJTTtFaEJxMkpKO0FBQ0Y7QWdCdjJKSTtFQUhKO0lBSU07RWhCMDJKSjtBQUNGO0FnQjUySkk7RUFISjtJQUlNO0VoQisySko7QUFDRjtBZ0JqM0pJO0VBSEo7SUFJTTtFaEJvM0pKO0FBQ0Y7QWdCdDNKSTtFQUhKO0lBSU07RWhCeTNKSjtBQUNGO0FnQjMzSkk7RUFISjtJQUlNO0VoQjgzSko7QUFDRjtBZ0JoNEpJO0VBSEo7SUFJTTtFaEJtNEpKO0FBQ0Y7QWdCcjRKSTtFQUhKO0lBSU07RWhCdzRKSjtBQUNGO0FnQjE0Skk7RUFISjtJQUlNO0VoQjY0Sko7QUFDRjtBZ0IvNEpJO0VBSEo7SUFJTTtFaEJrNUpKO0FBQ0Y7QWdCcDVKSTtFQUhKO0lBSU07RWhCdTVKSjtBQUNGO0FnQno1Skk7RUFISjtJQUlNO0VoQjQ1Sko7QUFDRjtBZ0I5NUpJO0VBSEo7SUFJTTtFaEJpNkpKO0FBQ0Y7QWdCbjZKSTtFQUhKO0lBSU07RWhCczZKSjtBQUNGO0FnQmo2SkU7RUFWRjtJQVdJO0VoQm82SkY7QUFDRjs7QWlCLzlKQTtFQVVFO0FqQnk5SkY7QWlCbCtKRTtFQUNFO0VBQ0E7QWpCbytKSjtBaUJqK0pFO0VBQ0U7QWpCbStKSjs7QWtCeitKQTtFQUNFO0VBQ0EsYVJ1SWE7RVF0SWI7RUFDQTtFQUVBLDhDUm9JYztBVnUySmhCOztBa0J4K0pBO0VBQ0U7RUFDQTtFQUVBLDhDUjZIYztFUTVIZDtFQUNBO0FsQjArSkY7QWtCditKRTtFQUNFO0VBQ0E7QWxCeStKSjtBa0J4K0pJO0VBQ0U7QWxCMCtKTjtBa0JyK0pFO0VBQ0U7QWxCdStKSjtBa0JyK0pJO0VBQ0U7RUFDQTtBbEJ1K0pOO0FrQnIrSkk7RUFDRTtBbEJ1K0pOO0FrQnIrSkk7RUFDRTtFQUNBO0FsQnUrSk47QWtCcitKSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FsQnUrSk47QWtCbitKRTtFQUNFO0FsQnErSko7QWtCbCtKRTtFQUNFO0FsQm8rSko7QWtCaitKRTtFQUNFO0FsQm0rSko7QWtCLzlKRTtFQWFFO0FsQnE5Sko7QWtCaCtKTTtFQUNFO0VBQ0E7RUFDQTtBbEJrK0pSO0FrQmgrSlE7RUFDRTtBbEJrK0pWO0FrQjM5Skk7RUFDRTtBbEI2OUpOO0FrQjU5Sk07RUFDRTtFQUNBO0VBQ0E7QWxCODlKUjtBa0IxOUpJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWxCNDlKTjtBa0IxOUpNO0VBQ0U7QWxCNDlKUjtBa0JyOUpJO0VBQ0U7QWxCdTlKTjtBa0JwOUpJO0VBQ0U7RUFDQTtBbEJzOUpOO0FrQi84SkU7RUFDRTtBbEJpOUpKO0FrQjk4Skk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQmc5Sk47QWtCNzhKSTtFQUNFLG1DUlNVO0VRUlY7RUFDQTtFQUNBO0VBQ0E7RUFDQSxhUkdTO0FWNDhKZjtBa0IzOEpFO0VBQ0UsYVJGVztFUUdYO0FsQjY4Sko7QWtCMzhKSTtFQUNFO0FsQjY4Sk47QWtCMzhKSTtFQUNFO0VBQ0E7RUFDQTtBbEI2OEpOO0FrQjM4Sk07RUFDRTtBbEI2OEpSO0FrQng4SkU7RUFLRTtFQUNBO0VBQ0E7QWxCczhKSjtBa0I1OEpJO0VBQ0U7QWxCODhKTjtBa0J2OEpJO0VBQ0U7RUFDQTtBbEJ5OEpOO0FrQnQ4Skk7RUFDRSwyQlJuSVU7RVFvSVY7QWxCdzhKTjtBa0J0OEpNO0VBQ0UsbURSaElxQjtBVndrSzdCO0FrQm44SkU7RUFDRSxhUjVDVztFUTZDWDtFQUNBLDhDUjdDWTtFUThDWjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEJxOEpKO0FrQm44Skk7RUFDRTtFQUNBO0FsQnE4Sk47O0FtQnpvS0E7RUFDRTtFQUNBO0VBQ0E7QW5CNG9LRjtBbUIxb0tFO0VBTEY7SUFNSTtJQUNBO0VuQjZvS0Y7QUFDRjtBbUI1b0tFO0VBVEY7SUFVSTtJQUNBO0lBQ0E7RW5CK29LRjtBQUNGO0FtQjlvS0U7RUFkRjtJQWVJO0lBQ0E7SUFDQTtFbkJpcEtGO0FBQ0Y7O0FtQjlvS0E7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCVGtVYTtFU2pVYjtFQUNBLGlEVGlVWTtFU2hVWjtFQUNBO0VBQ0E7RUFDQSxnQ1Q4VGlCO0VTN1RqQjtFQUNBO0VBQ0E7RUFDQTtBbkJncEtGO0FtQjlvS0U7RUFDRSxjVHdUaUI7RVN2VGpCO0VBQ0E7RUFDQTtBbkJncEtKO0FtQjdvS0U7RUFDRTtBbkIrb0tKO0FtQjVvS0U7RUFoQ0Y7SUFpQ0k7SUFDQTtFbkIrb0tGO0FBQ0Y7O0FvQnZzS0E7RUFDRTtFQUNBO0VBMENBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxzQ1ZzQmM7RVVyQmQ7RUFDQTtBcEJpcUtGO0FvQmh0S0U7RUFDRTtBcEJrdEtKO0FvQmh0S0k7RUFDRSwwQ1ZpRHlCO0FWaXFLL0I7QW9CL3NLSTs7O0VBR0UsNENWNEMyQjtBVnFxS2pDO0FvQjlzS0k7RUFDRSxvQ1ZzRHVCO0FWMHBLN0I7QW9CN3NLSTs7RUFFRTtBcEIrc0tOO0FvQjVzS0k7OztFQUdFLHdDVjJCdUI7QVZtcks3QjtBb0Izc0tJO0VBQ0UsbURWdUJ1QjtBVnNySzdCO0FvQnpzS0U7RUFDRTtBcEIyc0tKO0FvQjFzS0k7RUFDRTtBcEI0c0tOO0FvQi9yS0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQmlzS0o7QW9CL3JLSTtFQXFCRSwrQlYvQmM7RVVnQ2Q7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEI2cUtOO0FvQnpzS007RUFDRTtBcEIyc0tSO0FvQnhzS007RUFHRSwyQlY3QlE7QVZxdUtoQjtBb0Jyc0tNO0VBQ0UsbURWMUJxQjtBVml1SzdCO0FvQnBzS007RUFFRSxtRFY5QnFCO0VVK0JyQjtBcEJxc0tSO0FvQnZyS0k7RUFNRSxpQ1YvQ2dCO0VVZ0RoQjtFQUNBO0FwQm9yS047QW9CMXJLTTtFQUNFO0FwQjRyS1I7QW9CbnJLRTtFQUNFO0VBQ0E7RUFDQTtFQUNBLHNDVnJFWTtFVXNFWjtBcEJxcktKOztBb0JocktBO0VBQ0U7SUFDRTtFcEJtcktGO0VvQmpyS0U7SUFDRTtFcEJtcktKO0VvQmpyS0k7SUFDRTtFcEJtcktOO0FBQ0Y7QXFCanpLQTtFQUNFO0VBQ0E7RUFFQSxxRFhxV2lCO0VXcFdqQiw2Q1hxV21CO0VXblduQjtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0FyQjZ5S0Y7O0FxQjF5S0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EscURYcVVpQjtFV3BVakI7RUFDQTtFQUNBO0FyQjZ5S0Y7O0FzQnAxS0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUVBLFlaOEZjO0VZM0ZkLFladUZjO0VZdEZkLGtCWjRGYztFWXpGZDtFQUNBO0VBRUEsd0Nad0MyQjtFWXZDM0IsZVppRmlCO0VZaEZqQjtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtBdEI4MEtGOztBc0IxMEtBO0VBQ0U7QXRCNjBLRjs7QXNCMzBLQTtFQUNFO0F0QjgwS0Y7O0FzQjUwS0E7RUFDRTtBdEIrMEtGOztBc0I3MEtBO0VBQ0U7RUFDQTtBdEJnMUtGOztBc0I5MEtBO0VBQ0U7QXRCaTFLRjs7QXNCLzBLQTtFQUNFO0F0QmsxS0Y7O0FzQjcwS0E7Ozs7Ozs7Ozs7Ozs7OztFQWVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRCZzFLRjtBc0IvMEtFOzs7Ozs7Ozs7Ozs7Ozs7RUFDRTtFQUNBO0F0QisxS0o7O0FzQjExS0E7RUFDRTtBdEI2MUtGOztBc0IxMUtBO0VBQ0U7RUFDQTtBdEI2MUtGOztBc0IxMUtBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEI2MUtGO0FzQjUxS0U7RUFFRTtFQUNBLG9DWnNCaUM7QVZ1MEtyQztBc0IzMUtFO0VBQ0Usb0Nab0JpQztBVnkwS3JDO0FzQjMxS0U7RUFFRTtFQUNBO0VBQ0E7QXRCNDFLSjs7QXNCeDFLQTtFQUNFO0VBQ0EsMkJaMUVjO0VZMkVkO0F0QjIxS0Y7O0FzQjcwS0U7RUFDRSx5RFp4RitCO0FWdzZLbkM7QXNCNTBLRTtFQUNFLHlEWjVGK0I7QVYwNktuQzs7QXNCcHpLQTtFQXdERSwwQ1poSzZCO0VZa0s3QixXWnpGcUI7RVkwRnJCLFlaMUZxQjtFWTZGckIsd0NacEtnQjtFWXFLaEIsbUJaN0Z1QjtFWThGdkI7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7QXRCMHZLRjtBc0JwMEtFO0VBQ0Usb0RaeEdpQztBVjg2S3JDO0FzQmwwS0U7RUFDRSxvRFo1R2lDO0FWZzdLckM7QXNCaDBLRTtFQUNFO0F0QmswS0o7QXNCL3pLRTtFQUlFLFdadkV5QjtFWXdFekIsWVp4RXlCO0VZeUV6QjtBdEI4ektKO0FzQm4wS0k7RUFDRTtBdEJxMEtOO0FzQjF6S0U7RUFJRSxXWjdFeUI7RVk4RXpCLFlaOUV5QjtBVnU0SzdCO0FzQjd6S0k7RUFDRTtBdEIrektOO0FzQnR6S0U7RUFLRTtFQUNBO0VBQ0E7QXRCb3pLSjtBc0IxektJO0VBQ0U7RUFDQTtBdEI0ektOO0FzQnp4S0U7RUFDRSwwQ1p2TDJCO0VZd0wzQixpQlpySTBCO0VZdUkxQjtFQUNBO0VBQ0E7QXRCMHhLSjs7QXNCdHhLQTtFQUNFLFlaNUpjO0FWcTdLaEI7O0FzQnR4S0E7RUEwRkU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0QmdzS0Y7QXNCN3hLSTtFQUNFO0VBQ0E7RUFDQTtBdEIreEtOO0FzQjF4S0U7RUFFRTtBdEIyeEtKO0FzQjF4S0k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0QjR4S047QXNCM3hLTTtFQUNFO0VBQ0E7QXRCNnhLUjtBc0J6eEtFO0VBQ0U7QXRCMnhLSjtBc0IxeEtJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRCNHhLTjtBc0IzeEtNO0VBQ0U7QXRCNnhLUjtBc0J6eEtFO0VBQ0U7QXRCMnhLSjtBc0IxeEtJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRCNHhLTjtBc0IzeEtNO0VBQ0U7QXRCNnhLUjtBc0J6eEtFO0VBTUU7RUFDQSxZWjFNeUI7QVZnK0s3QjtBc0IzeEtNO0VBQ0U7QXRCNnhLUjtBc0J4eEtJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRCMHhLTjtBc0J6eEtNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEIyeEtSO0FzQjF4S1E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLDBDWm5ScUI7RVlvUnJCLGlCWi9ObUI7RVlnT25CO0F0QjR4S1Y7QXNCMXhLVTtFQUNFO0F0QjR4S1o7QXNCaHhLRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0Qmt4S0o7QXNCanhLSTtFQUNFO0F0Qm14S047QXNCanhLSTtFQUNFO0F0Qm14S047QXNCaHhLRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsV1ovT21CO0VZZ1BuQixZWmhQbUI7RVlpUG5CLHdDWnhUYztFWXlUZCxtQlpqUHFCO0VZa1ByQjtBdEJreEtKOztBc0Izd0tBO0VBRUUsWVpqUm9CO0VZbVJwQixlWnJSdUI7RVlzUnZCO0F0QjR3S0Y7QXNCM3dLRTtFQUNFLGlCWnZSMEI7QVZvaUw5Qjs7QXNCeHdLQTtFQUVFLFladlJvQjtFWXdScEIsaUJaeFJvQjtFWXlScEIsZVozUnVCO0FWcWlMekI7QXNCendLRTtFQUNFLGlCWjVSMEI7QVZ1aUw5Qjs7QXNCdHdLQTtFQUNFO0F0Qnl3S0Y7O0FzQnR3S0E7RUFDRTtBdEJ5d0tGOztBdUJucUxBO0VBQ0U7RUFDQTtFQU9BLHNDYjhEYztFYTdEZDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkJncUxGO0F1Qi9xTEU7RUFDRTtBdkJpckxKO0F1QmhxTEU7RUFzQ0U7RUFDQSw2QmJvVFM7RWFuVFQ7RUFDQSxnQmIySG1CO0VhMUhuQjtFQUNBO0VBQ0E7QXZCNm5MSjtBdUJ4cUxJO0VBQ0Usb0NiZ0R1QjtBVjBuTDdCO0F1QnZxTEk7RUFDRTtBdkJ5cUxOO0F1QnRxTEk7RUFDRTtFQUNBO0F2QndxTE47QXVCcnFMSTtFQUNFO0VBQ0EsMkJiSVU7RWFIVjtFQUNBO0VBQ0E7QXZCdXFMTjtBdUJwcUxJO0VBQ0U7RUFDQTtFQUNBO0F2QnNxTE47QXVCbHFMSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZCb3FMTjs7QXVCcnBMRTtFQUNFLG9DYkN5QjtBVnVwTDdCOztBdUJucExBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXZCc3BMRjs7QXVCbnBMQTtFQUNFO0F2QnNwTEY7O0F3QjN1TEE7RUFPRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLDBEZHdadUI7RWN2WnZCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0F4QnV1TEY7QXdCenZMRTtFQUNFO0F4QjJ2TEo7QXdCeHVMRTtFQXJCRjtJQXNCSTtFeEIydUxGO0FBQ0Y7QXdCenVMRTtFQUNFO0F4QjJ1TEo7QXdCeHVMRTtFQUNFO0VBQ0E7QXhCMHVMSjtBd0J2dUxFO0VBQ0U7QXhCeXVMSjtBd0J0dUxFO0VBQ0U7RUFDQSwwRGQyWHFCO0VjMVhyQjtFQUNBO0VBQ0E7RUFDQTtBeEJ3dUxKO0F3QnR1TEk7RUFDRTtBeEJ3dUxOOztBd0JudUxBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEJzdUxGOztBd0JsdUxBO0VBQ0U7RUFDQTtBeEJxdUxGO0F3Qm51TEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4QnF1TEo7QXdCbHVMRTtFQUNFO0VBQ0E7RUFDQTtBeEJvdUxKOztBd0IvdExBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhCa3VMRjs7QXlCaDBMQTtFQUNFO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtBekJrMExGOztBeUI5ekxBO0VBS0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esc0NmaURjO0FWNHdMaEI7QXlCdjBMRTtFQUNFO0F6QnkwTEo7QXlCOXpMRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpCZzBMSjs7QXlCNXpMQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F6Qit6TEY7O0F5Qjd6TEE7RUFDRTtBekJnMExGOztBeUI1ekxBO0VBQ0Usb0NmNEIyQjtBVm15TDdCOztBeUI1ekxBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHNDZmlCYztBVjh5TGhCOztBeUIxekxBO0VBQ0U7RUFDQTtBekI2ekxGO0F5QjN6TEU7RUFDRTtFQUVBO0VBQ0E7QXpCNHpMSjtBeUJ6ekxFO0VBQ0U7RUFDQTtBekIyekxKOztBMEJuNExBO0VBQ0U7RUFDQTtFQUNBO0VBRUEsbURoQnlQYztFZ0J2UGQ7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0EsK0JoQmtDa0I7RWdCaENsQjtFQUVBO0VBQ0E7RUFDQTtBMUIrM0xGO0EwQjczTEU7RUFDRTtFQUNBLHNDaEJhWTtFZ0JaWix3Q2hCMEJ5QjtBVnEyTDdCOztBMEIzM0xBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTFCODNMRjs7QTBCMzNMQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFCODNMRjs7QTBCMzNMQTtFQUNFO0ExQjgzTEY7O0EwQjEzTEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExQjYzTEY7O0EwQjEzTEE7RUFDRTtBMUI2M0xGOztBMEJ4M0xBO0VBQ0U7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0EsaUJoQjJIYTtFZ0J6SGI7RUFHQTtFQUNBO0ExQnUzTEY7QTBCcjNMRTtFQUNFO0VBQ0E7QTFCdTNMSjtBMEJwM0xFO0VBQ0U7QTFCczNMSjtBMEJuM0xFO0VBQ0U7RUFDQTtFQUNBLDZCaEJnR1U7RWdCL0ZWO0VBQ0EsZWhCbUdjO0VnQjlGZDtFQUVBO0VBQ0E7RUFDQTtFQUNBO0ExQmczTEo7QTBCNzJMSTtFQUNFO0VBQ0E7QTFCKzJMTjtBMEIxMkxFO0VBQ0U7RUFDQTtBMUI0MkxKOztBMEJ2MkxBO0VBQ0U7RUFDQTtFQUNBO0ExQjAyTEY7O0EwQnYyTEE7RUFDRTtFQUNBO0VBQ0E7QTFCMDJMRjs7QTBCeDJMQTtFQUNFO0VBQ0E7QTFCMjJMRjs7QTJCeC9MQTtFQU9FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNCcS9MRjtBMkI5L0xJO0VBQ0U7QTNCZ2dNTjtBMkJ0L0xFO0VBQ0U7QTNCdy9MSjs7QTJCcC9MQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNCdS9MRjs7QTJCcC9MQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0J1L0xGOztBNEIvaE1BO0VBQ0UsMERsQnFPYTtBVjZ6TGY7O0E0Qi9oTUE7RUFDRTtFQUNBLHlEbEJzQ2lDO0FWNC9MbkM7O0E0Qi9oTUE7RUFDRSxpQmxCaU1nQjtFa0JoTWhCLCtCbEJzTG1CO0FWNDJMckI7O0E2QjlpTUE7K0VBQUE7QUFHQTtBQUNBO0VBQ0UsK0JuQjZNdUI7QVZtMkx6Qjs7QTZCN2lNQTtBQUNBOzs7Ozs7Ozs7Ozs7OztFQWNFO0VBQ0EsNkJuQjJLWTtFbUIxS1o7RUFDQSxlbkJRaUM7RW1CUGpDO0E3QmdqTUY7O0E2QjdpTUE7QUFjQTs7Ozs7Ozs7O0NBQUE7QUFXQTtFQUNFO0VBQ0E7QTdCa2lNRjtBNkI5aE1FO0VBQ0U7RUFFQTtFQUNBO0VBRUEsc0NuQklZO0VtQkZaO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdCNmhNSjtBNkIzaE1JO0VBQ0U7RUFDQTtBN0I2aE1OO0E2QjFoTUk7RUFDRSxpRG5CcUlxQjtFbUJwSXJCLHdEbkJtSTRCO0VtQmxJNUIsNERuQmlJOEI7QVYyNUxwQztBNkJ4aE1JO0VBQ0UsMkJuQjlDVTtBVndrTWhCO0E2QnhoTUk7RUFLRTtFQUNBO0E3QnNoTU47QTZCbmhNSTtFQUNFLGlEbkJrSHFCO0FWbTZMM0I7QTZCamhNRTtFQUNFO0E3Qm1oTUo7QTZCaGhNRTtFQUNFLCtCbkJxRmlCO0VtQnBGakI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSwwRUFDRTtBN0JpaE1OO0E2QnpnTUU7RUFDRSwrQm5CbUVpQjtFbUJsRWpCO0VBQ0E7RUFDQTtBN0IyZ01KO0E2QnhnTUU7RUFDRSwrQm5CNERpQjtFbUIzRGpCO0VBQ0E7RUFDQTtFQUNBO0E3QjBnTUo7QTZCdmdNRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0J5Z01KO0E2QnRnTUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBN0J3Z01KO0E2QnJnTUU7RUFDRTtBN0J1Z01KO0E2QnJnTUU7RUFDRTtBN0J1Z01KO0E2QnJnTUU7RUFDRTtBN0J1Z01KO0E2QmhnTUk7RUFDRTtFQUVBO0VBRUE7RUFDQTtBN0JnZ01OO0E2QjkvTE07RUFDRTtFQUNBO0VBQ0E7QTdCZ2dNUjtBNkI1L0xNO0VBQ0UsMkJuQmpKUTtBVitvTWhCO0E2QjUvTE07RUFHRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3QjQvTFI7QTZCei9MTTtFQUNFLGlEbkJjbUI7RW1CYm5CLHdEbkJZMEI7QVYrK0xsQztBNkJuL0xJO0VBQ0U7QTdCcS9MTjtBNkJuL0xJO0VBQ0U7QTdCcS9MTjtBNkJuL0xJO0VBQ0U7QTdCcS9MTjtBNkJuL0xJO0VBQ0U7QTdCcS9MTjtBNkJuL0xJO0VBQ0U7QTdCcS9MTjtBNkJuL0xJO0VBQ0U7QTdCcS9MTjs7QTZCaC9MQTtBQUVFO0VBQ0U7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3QmkvTEo7QTZCOStMRTtFQUNFO0VBQ0E7RUFDQTtBN0JnL0xKOztBNkI3K0xBO0VBQ0U7QTdCZy9MRjtBNkIvK0xFO0VBRkY7SUFHSSxrQm5CdURZO0VWMjdMZDtBQUNGOztBNkIvK0xBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQXVCQTtBQUVBO0VBQ0U7RUFDQSxZbkJ6RmE7RW1CMEZiO0E3QmcvTEY7QTZCOStMRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxnQm5CbEdXO0VtQm1HWDtBN0JnL0xKOztBNkIzK0xBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtBN0I0K0xGOztBNkJ6K0xBO0FBR0k7RUFBYSw2Qm5CclFDO0FWZ3ZNbEI7QTZCMStMSTtFQUNFO0VBQ0E7RUFDQTtBN0I0K0xOOztBOEJ6eU1BOytFQUFBO0FBSUE7O0VBRUU7RUFDQTtFQUNBO0E5QjB5TUY7O0E4QnZ5TUE7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5QjB5TUY7O0E4QnZ5TUE7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5QjB5TUY7O0E4QnZ5TUE7QUFDQTs7Ozs7O0VBTUU7QTlCMHlNRjs7QThCdnlNQTs7RUFFRTtBOUIweU1GOztBOEJ2eU1BO0VBQ0U7QTlCMHlNRjs7QThCdnlNQTtBQUNBO0VBQ0U7QTlCMHlNRjs7QThCdnlNQTs7O0VBR0Usc0NwQjRKYTtBVjhvTWY7O0E4QnZ5TUE7O0VBRUUsc0NwQjNCYztBVnEwTWhCOztBOEJ2eU1BO0VBQ0U7QTlCMHlNRjs7QThCdnlNQTtBQUNBO0VBQ0U7QTlCMHlNRjs7QThCdnlNQTtBQUNBO0VBQ0U7QTlCMHlNRjs7QThCdnlNQTtBQUNBO0VBQ0U7QTlCMHlNRjs7QThCdnlNQTtFQUNFO0VBQ0EsNENwQmdIcUI7QVYwck12Qjs7QThCdnlNQTtBQUNBOztFQUVFO0VBQ0Esd0NwQnlHcUI7QVZpc012Qjs7QThCdnlNQTtFQUNFLGlDcEJxR3FCO0FWcXNNdkI7O0E4QnZ5TUE7RUFDRSx3Q3BCaUdxQjtBVnlzTXZCOztBOEJ2eU1BO0VBQ0UsNENwQjZGcUI7RW9CNUZyQix3Q3BCNkYyQjtBVjZzTTdCOztBK0IzNU1BOytFQUFBO0FBR0E7QUFDQTs7RUFFRTtFQUNBO0VBQ0E7QS9CNjVNRjs7QStCejVNQTtFQWFFO0EvQmc1TUY7QStCMzVNRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9CNjVNSjtBK0J6NU1FO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0IwNU1KO0ErQnY1TUU7RUFDRTtFQUNBO0EvQnk1TUo7QStCdDVNRTtFQUNFO0VBQ0EsNENyQjZKbUI7QVYydk12QjtBK0JwNU1FO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxvQ3JCZ0J5QjtBVnM0TTdCOztBK0JqNU1FO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsNENyQnVKVztFcUJ0SlgsNkNyQnNKVztFcUJySlg7RUFDQTtFQUNBO0EvQm81TUo7QStCajVNRTtFQUNFO0VBQ0E7QS9CbTVNSjs7QStCLzRNQTtBQUVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsNENyQmlJVztFcUJoSVg7RUFDQTtFQUNBO0VBQ0E7QS9CaTVNSjtBK0I3NE1FO0VBQ0U7RUFDQTtBL0IrNE1KOztBK0J4NE1FO0VBQ0U7QS9CMjRNSjtBK0J4NE1FOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0IwNE1KO0ErQnQ0TUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0J3NE1KO0ErQnI0TUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9CdTRNSjtBK0JsNE1JO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9CbzRNTjtBK0JqNE1JO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxzQ3JCeEhVO0VxQnlIVjtBL0JtNE1OO0ErQjkzTUU7RUFDRTtFQUNBLHNDckJpRGdCO0VxQmhEaEIsb0NyQmxHeUI7QVZrK003QjtBK0I3M01FO0VBQ0U7RUFDQSxzQ3JCdElZO0VxQnVJWixrQ3JCdklZO0FWc2dOaEI7QStCMzNNRTtFQUNFO0VBQ0E7QS9CNjNNSjtBK0IxM01FO0VBQ0U7RUFDQSw0Q3JCa0J5QjtBVjAyTTdCO0ErQnozTUU7RUFDRTtBL0IyM01KO0ErQngzTUU7RUFDRSw0Q3JCVXlCO0VxQlR6Qix3Q3JCU3lCO0FWaTNNN0I7O0FnQy9qTkE7K0VBQUE7QUFHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhDaWtORjs7QWdDOWpOQTs7RUFFRTtFQUNBO0FoQ2lrTkY7O0FnQzlqTkE7RUFDRTtBaENpa05GOztBZ0M5ak5BO0VBQ0U7RUFDQTtFQUNBO0FoQ2lrTkY7QWdDN2pORTtFQUNFO0VBQ0E7QWhDK2pOSjtBZ0Mzak5JO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWhDNmpOTjtBZ0Nyak5BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUtBLG1CdEIyTGM7RXNCMUxkO0VBQ0E7RUFDQTtFQUNBO0FoQ21qTkY7QWdDaGpORTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFFQTtBaENnak5KO0FnQzVpTkU7RUFFRTtFQUNBO0FoQzZpTko7O0FnQ3RpTkE7OztFQUdJO0FoQ3lpTko7O0FnQ3RpTkE7RUFDRSxtRHRCcEQyQjtBVjZsTjdCOztBZ0NyaU5BOztFQUVFLG1EdEJ6RDJCO0FWaW1ON0I7O0FnQ3JpTkE7RUFDRSxvQ3RCdkMyQjtBVitrTjdCOztBZ0NyaU5BOztFQUVFLG9DdEIzQzJCO0FWbWxON0I7O0FnQ3BpTkE7RUFDRTtFQUNBO0FoQ3VpTkY7O0FpQ2pxTkE7K0VBQUE7QUFHQTtFQUNFO0VBQ0EsNkJ2QnlPbUI7QVYwN01yQjs7QWlDaHFOQTtFQUNFO0VBQ0Esc0N2QjZEYztFdUI1RGQ7RUFDQSxZdkIrTmU7RXVCOU5mLHdDdkJ3TmM7RXVCdk5kLGtCdkI4TmM7RXVCN05kLFl2QmtMYTtBVmkvTWY7O0FpQzNwTkE7RUFDRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBQUE7RUFxQ0E7RUFFQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQUFBO0VBa0NBOzs7Ozs7R0FBQTtBakNxcE5GO0FpQy9wTkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSw0QnZCZ0ppQjtBVmloTnJCO0FpQ3BwTkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpDc3BOSjs7QWlDanBOQTtFQUNFLGlDdkJzRnFCO0FWOGpOdkI7O0FpQ2hwTkU7RUFDRSxpQ3ZCaUZtQjtBVmtrTnZCO0FpQ2pwTkU7RUFDRSxnQ3ZCOEVtQjtBVnFrTnZCOztBaUMvb05BO0VBQ0UsaUN2QnlFcUI7RXVCeEVyQjtFQUNBO0FqQ2twTkY7O0FpQy9vTkE7RUFDRSxpQ3ZCbUdzQjtBVitpTnhCOztBaUMvb05BOzs7RUFHRSxpQ3ZCNkZzQjtFdUI1RnRCO0FqQ2twTkY7O0FpQzlvTkU7RUFDRSxvQ3ZCN0V5QjtBVjh0TjdCOztBaUMzb05JO0VBQ0Usb0N2QnJGdUI7QVZtdU43QjtBaUMzb05JO0VBQ0Usb0N2QnhGdUI7QVZxdU43Qjs7QWlDeG9OQTs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUFtQkU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBakN3b05KOztBaUNub05BO0VBQ0U7QWpDc29ORjtBaUNwb05FO0VBQ0UsNkJ2QmxKYztBVnd4TmxCO0FpQ25vTkU7RUFDRSwrQnZCckpnQjtBVjB4TnBCO0FpQ2xvTkU7RUFDRTtBakNvb05KOztBa0NsMU5BOytFQUFBO0FBR0E7RUFFRTtFQUNBO0VBQ0E7QWxDbTFORjtBa0NoMU5FO0VBQ0U7QWxDazFOSjtBa0MvME5FO0VBQWtCO0FsQ2sxTnBCO0FrQ2gxTkU7RUFDRSxZeEJnTFc7RXdCL0tYLGlCeEIrS1c7QVZtcU5mO0FrQy8wTkU7RUFDRTtBbENpMU5KO0FrQzkwTkU7RUFNRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDMDBOSjtBa0MxMU5JO0VBQ0U7QWxDNDFOTjs7QW1DeDNOQTsrRUFBQTtBQUdBO0VBQ0U7QW5DMDNORjs7QW1DdjNOQTs7RUFHRTtBbkN5M05GOztBbUN0M05BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5DeTNORjtBbUN2M05FO0VBQ0U7QW5DeTNOSjs7QW1DcjNOQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esc0N6Qk9jO0V5Qk5kO0VBRUE7RUFDQTtBbkN1M05GO0FtQ3IzTkU7RUFDRTtFQUNBO0VBQ0E7RUFDQSwyQnpCSFk7RXlCSVo7RUFDQTtBbkN1M05KO0FtQ3AzTkU7RUFDRTtBbkNzM05KO0FtQ3AzTkk7RUFDRSx3Q3pCRXVCO0V5QkR2QjtFQUNBO0VBQ0E7QW5DczNOTjs7QW1DaDJOQTtFQUNFO0FuQ20yTkY7O0FtQ2gyTkE7RUFuQkUsV3pCaUthO0V5Qi9KYjtBbkNzM05GOztBbUNqMk5BO0VBakJFO0VBQ0EsWXpCd0phO0V5QnZKYixXekJ3Slk7RXlCdkpaO0VBQ0EsZ0N6QmhDYztFeUJpQ2Q7RUFjQTtFQUNBLHNDekJoRGM7RXlCaURkO0VBQ0E7QW5DeTJORjs7QW1DcjJOQTtFQUNFO0FuQ3cyTkY7O0FtQ3AyTkE7RUFFRTtBbkNzMk5GOztBbUNuMk5BO0VBMUNFLFd6QmlLYTtFeUIvSmI7QW5DZzVORjs7QW1DcDJOQTtFQUNFO0FuQ3UyTkY7O0FtQ3AyTkE7RUE1Q0U7RUFDQSxZekJ3SmE7RXlCdkpiLFd6QndKWTtFeUJ2Slo7RUFDQSxnQ3pCaENjO0V5QmlDZDtFQXlDQTtBbkM0Mk5GOztBbUN4Mk5BO0VBQ0U7RUFDQTtBbkMyMk5GOztBbUN4Mk5BO0VBQ0U7QW5DMjJORjs7QW1DdjJOQTtFQUNFLFd6QjhGYTtFeUIzRmI7RUFHQTtFQUNBO0VBRUE7RUFDQTtBbkNxMk5GOztBbUNsMk5BOztFQUVFLGdDekJ4R2M7QVY2OE5oQjs7QW1DbDJOQTs7RUFFRSxxQ3pCMkVrQjtBVjB4TnBCOztBbUNsMk5BO0VBcEZFO0VBQ0EsWXpCd0phO0V5QnZKYixXekJ3Slk7RXlCdkpaO0VBQ0EsZ0N6QmhDYztFeUJpQ2Q7QW5DMDdORjs7QW1DdjJOQTtFQUNFO0FuQzAyTkY7O0FvQ3pnT0E7O2VBQUE7QUFJRTtFQUNFO0FwQzJnT0o7QW9DeGdPRTtFQUNFO0FwQzBnT0o7QW9DdmdPRTtFQUNFO0VBQ0E7RUFDQSwrQjFCc0NnQjtFMEJyQ2hCO0VBQ0E7RUFDQTtFQUNBO0FwQ3lnT0o7QW9DdmdPSTtFQUNFLDZCMUI4Qlk7RTBCN0JaO0FwQ3lnT047QW9DdmdPSTtFQUNFLDJCMUJnQlU7RTBCZlY7RUFDQTtFQUNBO0FwQ3lnT047O0FxQ3RpT0E7QUFDQTtFQUNFO0VBQ0EsWTNCK1NjO0UyQjlTZDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSwwRDNCMlNpQjtFMkIxU2pCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQWdCQTtBckMwaE9GO0FxQ3JpT0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBckN1aU9KO0FxQ3BpT0U7RUFDRTtBckNzaU9KO0FxQ2xpT0U7RUFDRSxvQzNCeUZpQztBVjI4TnJDO0FxQ2xpT0U7RUFDRSxvQzNCdUZpQztBVjY4TnJDO0FxQ2ppT0U7RUFDRSwrQzNCd0JnQztFMkJ2QmhDLGtEM0JzQndCO0FWNmdPNUI7QXFDaGlPRTtFQUF5QjtBckNtaU8zQjtBcUNqaU9FO0VBQ0U7RUFDQTtFQUNBO0FyQ21pT0o7QXFDamlPRTtFQUNFO0VBR0E7RUFDQTtFQUlBOzs7OztHQUFBO0VBT0E7RUFDQSxZM0JvUGtCO0UyQm5QbEIsZTNCNk9nQjtFMkI1T2hCO0VBQ0E7RUFDQTtFQUNBO0VBVUE7QXJDb2hPSjtBcUM1aE9JO0VBQ0UsNkIzQnVPZTtBVnV6TnJCO0FxQzNoT0k7RUFDRTtBckM2aE9OO0FxQ3poT0k7RUFFRTtFQUNBO0VBQ0EsK0IzQjZOZTtFMkI1TmY7QXJDMGhPTjtBcUN0aE9FO0VBQ0U7QXJDd2hPSjtBcUNyaE9FO0VBQ0U7RUFDQTtFQUNBLCtCM0JrTnNCO0UyQmpOdEIsZTNCNk1nQjtFMkI1TWhCO0VBQ0EsaUIzQmlOa0I7QVZzME50QjtBcUNuaE9FO0VBQ0U7RUFDQTtFQUNBO0FyQ3FoT0o7QXFDbmhPSTtFQUtFO0VBQ0E7QXJDaWhPTjtBcUN0aE9NO0VBQ0U7QXJDd2hPUjtBcUNqaE9JO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJDbWhPTjtBcUNoaE9JO0VBQ0U7QXJDa2hPTjtBcUMvZ09JO0VBQ0U7RUFDQTtBckNpaE9OO0FxQzlnT0k7O0VBRUUsZTNCb0tjO0UyQm5LZDtBckNnaE9OO0FxQzdnT0k7RUFDRTtFQUNBO0FyQytnT047QXFDNWdPSTtFQUNFO0VBQ0E7QXJDOGdPTjs7QXFDeGdPQTtFQUtFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJDdWdPRjtBcUM5Z09FO0VBQ0U7QXJDZ2hPSjs7QXFDdGdPQTtFQU1FO0VBQ0E7RUFDQTtBckNvZ09GO0FxQzFnT0U7RUFDRTtFQUNBO0FyQzRnT0o7O0FxQ3BnT0E7RUFFSTtJQUNFO0VyQ3NnT0o7RXFDcGdPSTtJQUNFO0VyQ3NnT047RXFDbmdPRTtJQUNFO0VyQ3FnT0o7RXFDbmdPRTtJQUNFO0VyQ3FnT0o7QUFDRjtBcUNqZ09BO0VBQ0U7QXJDbWdPRjs7QXFDaGdPQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckNtZ09GOztBcUM3L05FOztFQUNFO0VBQ0E7QXJDaWdPSjtBcUMvL05FOztFQUNFO0FyQ2tnT0o7QXFDaGdPRTs7RUFDRTtBckNtZ09KOztBc0N4dU9BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFJQTtFQUNBO0VBQ0E7QXRDd3VPRjtBc0N0dU9FO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxzQzVCd0JZO0U0QnZCWjtBdEN3dU9KO0FzQ3J1T0U7RUFDRSxzQzVCbUJZO0FWb3RPaEI7QXNDcnVPSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7QXRDc3VPTjtBc0NsdU9JO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0F0Q211T047O0FzQzl0T0E7RUFDRTtJQUNFO0lBQ0E7RXRDaXVPRjtFc0MvdE9BO0lBQ0U7SUFDQTtFdENpdU9GO0VzQy90T0E7SUFDRTtJQUNBO0V0Q2l1T0Y7QUFDRjtBc0M5dE9BO0VBQ0U7SUFDRTtJQUNBO0V0Q2d1T0Y7RXNDOXRPQTtJQUNFO0lBQ0E7RXRDZ3VPRjtFc0M5dE9BO0lBQ0U7SUFDQTtFdENndU9GO0FBQ0Y7QXNDM3RPQTs7Ozs7Ozs7RUFBQTtBQVVBO0FBQ0E7QUFDQTtBQUVBOzs7Ozs7Ozs7Ozs7RUFBQTtBQWVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRDeXRPRjtBc0N2dE9FO0VBQ0U7RUFDQTtBdEN5dE9KO0FzQ3R0T0U7RUFDRTtFQUNBO0F0Q3d0T0o7QXNDcnRPRTtFQUNFO0VBQ0E7RUFDQTtBdEN1dE9KOztBc0NudE9BO0VBQ0U7SUFBSztFdEN1dE9MO0FBQ0Y7QXNDcnRPQTtFQUNFO0lBQUs7RXRDd3RPTDtBQUNGO0FzQ3R0T0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGtDNUI1R2M7QVZvME9oQjs7QXNDcnRPQTs7RUFFRTtBdEN3dE9GOztBc0NydE9BOztFQUVFO0F0Q3d0T0Y7O0FzQ3J0T0E7O0VBRUU7QXRDd3RPRjs7QXNDcnRPQTs7RUFFRTtBdEN3dE9GOztBc0NydE9BOzs7Ozs7Ozs7Ozs7RUFBQTtBQWFBO0VBQ0U7RUFDQTtFQUNBO0F0Q3d0T0Y7O0FzQ3J0T0E7RUFDRTtFQUNBO0VBQ0E7QXRDd3RPRjs7QXNDcnRPQTtFQUNFO0VBQ0E7RUFDQTtBdEN3dE9GOztBc0NydE9BO0VBQ0U7RUFDQTtFQUNBO0F0Q3d0T0Y7O0FzQ3J0T0E7Ozs7O0VBS0U7RUFDQTtFQUNBO0VBQ0E7QXRDd3RPRjs7QXNDcnRPQTtFQUNFO0lBQVE7RXRDeXRPUixFc0N6dE84QztFQUM5QztJQUFRO0V0QzJ0T1IsRXNDM3RPOEM7RUFDOUM7SUFBUTtFdEM2dE9SLEVzQzd0TzhDO0VBQzlDO0lBQVE7RXRDK3RPUixFc0MvdE84QztFQUM5QztJQUFRO0V0Q2l1T1IsRXNDanVPOEM7RUFDOUM7SUFBUTtFdENtdU9SLEVzQ251TzhDO0VBQzlDO0lBQVE7RXRDcXVPUixFc0NydU84QztFQUM5QztJQUFRO0V0Q3V1T1IsRXNDdnVPOEM7QXRDd3VPaEQ7QXNDcnVPQTtFQUNFO0lBQVE7RXRDd3VPUixFc0N4dU9zQztFQUN0QztJQUFRO0V0QzB1T1IsRXNDMXVPc0M7RUFDdEM7SUFBUTtFdEM0dU9SLEVzQzV1T3NDO0VBQ3RDO0lBQVE7RXRDOHVPUixFc0M5dU9zQztFQUN0QztJQUFRO0V0Q2d2T1IsRXNDaHZPc0M7RUFDdEM7SUFBUTtFdENrdk9SLEVzQ2x2T3NDO0VBQ3RDO0lBQVE7RXRDb3ZPUixFc0Nwdk9zQztFQUN0QztJQUFRO0V0Q3N2T1IsRXNDdHZPc0M7QXRDdXZPeEM7QXNDcHZPQTtFQUNFO0lBQU87RXRDdXZPUDtFc0N0dk9BO0lBQU07RXRDeXZPTjtFc0N4dk9BO0lBQU07RXRDMnZPTjtFc0Mxdk9BO0lBQU07RXRDNnZPTjtFc0M1dk9BO0lBQU07RXRDK3ZPTjtFc0M5dk9BO0lBQU87RXRDaXdPUDtBQUNGO0FzQy92T0E7RUFDRTtJQUFPO0V0Q2t3T1A7RXNDandPQTtJQUFNO0V0Q293T047RXNDbndPQTtJQUFNO0V0Q3N3T047RXNDcndPQTtJQUFNO0V0Q3d3T047RXNDdndPQTtJQUFNO0V0QzB3T047RXNDendPQTtJQUFPO0V0QzR3T1A7QUFDRjtBc0Mxd09BO0VBQ0U7SUFBTztFdEM2d09QO0VzQzV3T0E7SUFBTTtFdEMrd09OO0VzQzl3T0E7SUFBTTtFdENpeE9OO0VzQ2h4T0E7SUFBTTtFdENteE9OO0VzQ2x4T0E7SUFBTTtFdENxeE9OO0FBQ0Y7QXNDbnhPQTtFQUNFO0lBQU87RXRDc3hPUDtFc0NyeE9BO0lBQU07RXRDd3hPTjtFc0N2eE9BO0lBQU07RXRDMHhPTjtFc0N6eE9BO0lBQU07RXRDNHhPTjtFc0MzeE9BO0lBQU07RXRDOHhPTjtBQUNGO0FzQzV4T0E7RUFDRTtJQUFPO0V0Qyt4T1A7RXNDOXhPQTtJQUFNO0V0Q2l5T047RXNDaHlPQTtJQUFNO0V0Q215T047RXNDbHlPQTtJQUFNO0V0Q3F5T047RXNDcHlPQTtJQUFNO0V0Q3V5T047QUFDRjtBc0NyeU9BO0VBQ0U7SUFBTztFdEN3eU9QO0VzQ3Z5T0E7SUFBTTtFdEMweU9OO0VzQ3p5T0E7SUFBTTtFdEM0eU9OO0VzQzN5T0E7SUFBTTtFdEM4eU9OO0VzQzd5T0E7SUFBTTtFdENnek9OO0FBQ0Y7QXNDOXlPQTtFQUNFO0lBQU87RXRDaXpPUDtFc0Noek9BO0lBQU07RXRDbXpPTjtFc0Nsek9BO0lBQU07RXRDcXpPTjtFc0Nwek9BO0lBQU07RXRDdXpPTjtFc0N0ek9BO0lBQU87RXRDeXpPUDtBQUNGO0FzQ3Z6T0E7RUFDRTtJQUFPO0V0QzB6T1A7RXNDenpPQTtJQUFNO0V0QzR6T047RXNDM3pPQTtJQUFNO0V0Qzh6T047RXNDN3pPQTtJQUFNO0V0Q2cwT047RXNDL3pPQTtJQUFPO0V0Q2swT1A7QUFDRjtBc0NoME9BOzs7RUFBQTtBQUlBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXRDazBPRjs7QXNDL3pPQTtFQUNFO0VBQ0E7QXRDazBPRjs7QXNDL3pPQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdENrME9GO0FzQ2gwT0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdENrME9KO0FzQy96T0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdENpME9KO0FzQy96T0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdENpME9KOztBc0Mzek9BO0VBQ0U7RUFDQTtFQUNBO0F0Qzh6T0Y7O0FzQzN6T0E7RUFDRTtFQUNBO0VBQ0E7QXRDOHpPRjs7QXNDM3pPQTtFQUNFO0lBQU87RXRDK3pPUDtFc0M5ek9BO0lBQU07RXRDaTBPTjtFc0NoME9BO0lBQUs7RXRDbTBPTDtBQUNGO0FzQ2owT0E7RUFDRTtJQUFPO0V0Q28wT1A7RXNDbjBPQTtJQUFNO0V0Q3MwT047RXNDcjBPQTtJQUFLO0V0Q3cwT0w7QUFDRjtBc0N0ME9BO0VBQ0U7SUFBTztFdEN5ME9QO0VzQ3gwT0E7SUFBTTtFdEMyME9OO0VzQzEwT0E7SUFBSztFdEM2ME9MO0FBQ0Y7QXNDMzBPQTtFQUNFO0lBQU87RXRDODBPUDtFc0M3ME9BO0lBQU07RXRDZzFPTjtFc0MvME9BO0lBQUs7RXRDazFPTDtBQUNGO0FzQ2gxT0E7RUFDRTtFQUNBO0VBQ0E7QXRDazFPRjs7QXNDLzBPQTtFQUNFO0lBQU87RXRDbTFPUDtFc0NsMU9BO0lBQUs7RXRDcTFPTDtBQUNGO0FzQ24xT0E7RUFDRTtJQUFPO0V0Q3MxT1A7RXNDcjFPQTtJQUFLO0V0Q3cxT0w7QUFDRjtBdUMxdlBBO0VBQ0U7RUFDQTtFQUNBO0F2QzR2UEY7QXVDenZQRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2QzJ2UEo7QXVDenZQSTtFQUNFO0VBQ0E7RUFDQTtBdkMydlBOO0F1Q3h2UEk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdkMwdlBOO0F1Q3h2UE07RUFDRSxpRDdCMkhtQjtBVituUDNCO0F1Q3h2UFE7RUFDRSx3RDdCeUh3QjtBVmlvUGxDO0F1Q252UEU7RUFDRSxzQzdCZ0NZO0U2Qi9CWjtFQUNBO0VBQ0E7RUFDQTtBdkNxdlBKO0F1Q252UEk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkNxdlBOO0F1Q252UE07RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdkNxdlBSO0F1Q2x2UE07RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZDb3ZQUjtBdUNsdlBRO0VBQ0U7QXZDb3ZQVjtBdUNodlBNO0VBQ0U7QXZDa3ZQUjtBdUM3dVBFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkMrdVBKO0F1Qzd1UEk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2Qyt1UE47QXVDNXVQSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsMkM3QnVObUI7RTZCck5uQjtFQUNBO0VBQ0E7RUFNQTtFQUNBO0F2Q3d1UE47QXVDN3VQTTtFQUNFLHNDN0J2RVE7QVZzelBoQjs7QXdDaDJQQTtFQXFDRTtFQUNBO0VBQ0E7RUFDQSxhOUIyR2dCO0U4QjFHaEI7RUFDQTtFQUNBO0F4Qyt6UEY7QXdDejJQRTtFQUNFO0VBQ0E7QXhDMjJQSjtBd0N6MlBJO0VBS0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEN1MlBOO0F3Qy8yUE07RUFDRTtBeENpM1BSO0F3Q3YyUEk7RUFDRTtFQUNBO0VBQ0EsaUI5QitIWTtFOEI5SFo7RUFDQTtFQUNBO0F4Q3kyUE47QXdDdjJQTTtFQUNFO0VBQ0E7RUFDQTtBeEN5MlBSO0F3Q3QyUE07RUFDRTtBeEN3MlBSO0F3QzMxUEU7RUFDRTtFQUNBLFk5QnFHbUI7RThCcEduQixhOUJvR21CO0U4Qm5HbkI7RUFDQTtFQUNBO0F4QzYxUEo7QXdDMzFQSTtFQUNFO0F4QzYxUE47QXdDejFQRTtFQUNFO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhDMDFQSjtBd0N4MVBJO0VBS0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsaUQ5QnVFcUI7RThCckVyQjtFQUNBO0F4Q3ExUE47QXdDbDJQTTtFQUNFLHdEOUJpRjBCO0FWbXhQbEM7QXdDbjFQRTs7RUFFRTtBeENxMVBKOztBeUMvNlBBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6Q2s3UEY7O0F5Qy82UEE7RUFDRTtFQUNBO0F6Q2s3UEY7QXlDaDdQRTtFQUNFO0VBQ0E7RUFDQSxzR0FDRTtBekNpN1BOO0F5Qzc2UEU7RUFDRTtBekMrNlBKO0F5Qzc2UEU7RUFDRTtFQUNBO0VBQ0EsMERBQ0U7QXpDODZQTjs7QXlDeDZQQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLHdDL0J1QmdCO0UrQnRCaEIsMEMvQm9CNkI7RStCbkI3QjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpDMjZQRjs7QXlDdjZQQTtFQUNFO0VBQ0E7QXpDMDZQRjs7QXlDdjZQQTtFQXdCRTtFQUNBO0VBQ0E7QXpDbTVQRjtBeUM1NlBFO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esc0MvQlFZO0FWcTZQaEI7QXlDMzZQRTtFQUNFO0VBQ0E7QXpDNjZQSjtBeUMzNlBFO0VBQ0U7RUFDQSx1REFDRTtFQUdGO0F6QzA2UEo7O0F5Q2w2UEE7RUFNRTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0F6Qys1UEY7QXlDejZQRTtFQUVFO0F6QzA2UEo7O0F5Qy81UEE7RUFDRTtJQUNFO0lBQ0E7RXpDazZQRjtBQUNGO0EwQ3ZnUUE7RUFpQkU7RUFDQTtBMUN5L1BGO0EwQzFnUUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUM0Z1FKOztBMENyZ1FBO0VBQ0U7SUFDRTtJQUNBO0UxQ3dnUUY7RTBDdGdRQTtJQUNFO0lBQ0E7RTFDd2dRRjtFMEN0Z1FBO0lBQ0U7SUFDQTtFMUN3Z1FGO0FBQ0Y7QTJDemlRQTtBQUNBO0VBQ0U7RUFDQTtFQUNBO0EzQzJpUUY7O0EyQ3hpUUE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxzQ2pDNERjO0FWKytQaEI7O0EyQ3hpUUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBM0MyaVFGO0EyQ3ppUUU7RUFDRTtBM0MyaVFKO0EyQ3ZpUUk7RUFLRTtFQUNBO0VBQ0E7QTNDcWlRTjtBMkMzaVFNO0VBQ0U7QTNDNmlRUjtBMkNyaVFJO0VBQ0U7QTNDdWlRTjtBMkNuaVFFO0VBQ0U7QTNDcWlRSjtBMkNsaVFFO0VBQ0U7QTNDb2lRSjtBMkNqaVFFOztFQUVFO0VBQ0E7QTNDbWlRSjtBMkNoaVFFOztFQUVFLDhCakNrRWdCO0FWZytQcEI7O0EyQzloUUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBM0NpaVFGOztBMkM3aFFBO0FBQ0E7RUFDRTtFQUNBLHNDakM3QmM7RWlDOEJkLHdDakNoQjJCO0VpQ2lCM0I7RUFDQTtBM0NnaVFGO0EyQzloUUU7RUFDRTtFQUNBO0VBQ0E7RUFDQSx3Q2pDeEJ5QjtBVndqUTdCO0EyQzdoUUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBM0MraFFKOztBMkMxaFFBO0FBQ0E7RUFDRTtBM0M2aFFGOztBMkMxaFFBO0VBQ0U7RUFDQTtFQUNBO0EzQzZoUUY7QTJDM2hRRTtFQUNFO0EzQzZoUUo7QTJDMWhRRTtFQUNFO0VBQ0E7QTNDNGhRSjtBMkN6aFFFO0VBQ0U7QTNDMmhRSjtBMkN4aFFFO0VBQ0U7RUFDQSwrQmpDaEVnQjtBVjBsUXBCO0EyQ3ZoUUU7RUFDRSw2QmpDckVjO0VpQ3NGZDtFQUNBO0EzQ3lnUUo7QTJDemhRSTtFQUNFLDJCakNsRlU7QVY2bVFoQjtBMkN4aFFJO0VBQ0Usc0NqQ3RGVTtFaUN1RlYsd0NqQ3pFdUI7QVZtbVE3QjtBMkN2aFFJO0VBRUUsaUNqQ2hGZ0I7RWlDaUZoQjtBM0N3aFFOOztBMkNoaFFBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EzQ21oUUY7QTJDamhRRTtFQUNFLG1EakMxR3lCO0FWNm5RN0I7QTJDaGhRRTtFQUNFLG1EakM3R3lCO0FWK25RN0I7O0EyQzdnUUE7QUFDQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNDZ2hRRjs7QTJDN2dRQTs7OztFQUlFLDJCakN2SWM7RWlDd0lkO0EzQ2doUUY7O0EyQzdnUUE7RUFDRSx5QmpDbEhZO0FWa29RZDs7QTJDNWdRQTtBQUNBO0VBQ0U7SUFDRTtFM0MrZ1FGO0UyQzVnUUE7SUFDRTtFM0M4Z1FGO0UyQzNnUUE7SUFDRTtFM0M2Z1FGO0UyQzFnUUE7OztJQUdFO0UzQzRnUUY7RTJDemdRQTtJQUNFO0UzQzJnUUY7QUFDRjtBNEMzdFFBO0FBQ0E7RUFDRTtFQUNBO0E1QzZ0UUY7O0E0QzF0UUE7RUFDRTtFQUNBO0VBQ0E7QTVDNnRRRjs7QTRDMXRRQTtFQUNFLHdDbEMyQzJCO0FWa3JRN0I7O0E0Q3p0UUE7QUFDQTtFQUNFO0VBQ0E7RUFDQSxzQ2xDcUJjO0VrQ3BCZDtFQUNBO0E1QzR0UUY7O0E0Q3p0UUE7RUFDRTtFQUNBO0VBQ0E7RUFDQSwwQ2xDMkI2QjtFa0MxQjdCO0VBQ0E7RUFDQTtBNUM0dFFGO0E0QzF0UUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1QzR0UUo7O0E0Q3h0UUE7OztFQUdFO0E1QzJ0UUY7O0E0Q3h0UUE7RUFDRTtFQUNBO0VBQ0E7QTVDMnRRRjs7QTRDeHRRQTtFQUNFO0VBQ0E7QTVDMnRRRjs7QTRDeHRRQTtFQUNFO0E1QzJ0UUY7O0E0Q3h0UUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1QzJ0UUY7O0E0Q3Z0UUE7QUFDQTtFQUNFO0VBQ0Esc0NsQ05jO0FWZ3VRaEI7O0E0Q3Z0UUE7RUFDRSxtRGxDK0YwQjtFa0M5RjFCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNUMwdFFGOztBNEN2dFFBOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVDMHRRRjs7QTRDdnRRQTtFQUNFO0E1QzB0UUY7O0E0Q3Z0UUE7RUFDRTtFQUNBLDZCbENtRXVCO0VrQ2xFdkI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVDMHRRRjs7QTRDdnRRQTs7RUFFRSxtRGxDdkUyQjtBVml5UTdCOztBNEN2dFFBO0VBQ0U7QTVDMHRRRjs7QTRDdnRRQTtFQVNFO0E1Q2t0UUY7QTRDMXRRRTtFQUNFO0E1QzR0UUo7QTRDenRRRTtFQUNFO0E1QzJ0UUo7O0E0Q3J0UUE7RUFDRTtBNUN3dFFGO0E0Q3R0UUU7RUFDRSw0QmxDckdZO0VrQ3NHWjtFQUNBO0E1Q3d0UUo7O0E0Q3B0UUE7RUFDRTtBNUN1dFFGOztBNENwdFFBO0VBQ0U7RUFDQSwwQmxDakhjO0FWdzBRaEI7O0E0Q3B0UUE7RUFDRTtFQUNBLDBCbEN0SGM7QVY2MFFoQjs7QTRDbnRRQTtBQUNBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QTVDc3RRRjs7QTRDbnRRQTtFQUNFLHlCbEN6R1k7QVYrelFkOztBNENudFFBO0VBQ0UsMkJsQ3ZJYztBVjYxUWhCOztBNENudFFBOztFQUVFO0E1Q3N0UUY7O0E0Q250UUE7QUFDQTtFQUNFO0lBQ0U7RTVDc3RRRjtFNENudFFBO0lBQ0U7RTVDcXRRRjtFNENsdFFBO0lBQ0U7RTVDb3RRRjtFNENqdFFBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFNUNtdFFGO0FBQ0Y7QTZDaDZRQTtFQUNJO0E3Q2s2UUo7QTZDajZRSTtFQUNJO0E3Q202UVI7O0E2Qy81UUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdDazZRSjs7QTZDLzVRQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0NrNlFKO0E2Qy81UVE7RUFDSTtFQUNBO0E3Q2k2UVo7QTZDNzVRSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdDKzVRUjtBNkM1NVFJO0VBQ0k7RUFDQTtFQUNBO0E3Qzg1UVI7QTZDMTVRUTtFQUVJO0E3QzI1UVo7QTZDeDVRUTtFQUVJO0E3Q3k1UVo7QTZDcjVRSTtFQUNJO0E3Q3U1UVI7QTZDcDVRSTtFQUNJO0VBQ0E7QTdDczVRUjs7QTZDajVRSTtFQUNJO0E3Q281UVI7O0E2Qy80UUE7RUFBYTtBN0NtNVFiOztBNkNsNVFBO0VBQWE7QTdDczVRYjs7QTZDcjVRQTtFQUFhO0E3Q3k1UWI7O0E2Q3g1UUE7RUFBYTtBN0M0NVFiOztBNkMzNVFBO0VBQWE7QTdDKzVRYjs7QTZDOTVRQTtFQUFhO0E3Q2s2UWI7O0E2Q2o2UUE7RUFBYTtBN0NxNlFiOztBNkNwNlFBO0VBQWE7QTdDdzZRYjs7QTZDdjZRQTtFQUFhO0E3QzI2UWI7O0E2QzE2UUE7RUFBYztBN0M4NlFkOztBNkM3NlFBO0VBQWM7QTdDaTdRZDs7QThDbmdSQTtBQUNJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5Q3NnUlI7QThDcmdSUTtFQVBKO0lBUVE7RTlDd2dSVjtBQUNGO0E4Q3ZnUlE7RUFDSTtFQUNBLHlCQ2JJO0EvQ3NoUmhCOztBOENyZ1JJO0VBQ0k7RUFDQTtBOUN3Z1JSOztBOENyZ1JJO0VBQ0k7QTlDd2dSUjtBOEN2Z1JRO0VBQ0k7QTlDeWdSWjs7QThDcmdSQTtBQUNJO0VBQ0k7QTlDd2dSUjtBOEN2Z1JRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBOUN5Z1JaO0E4Q3ZnUlk7RUFDSTtBOUN5Z1JoQjs7QThDcGdSSTtFQUNJO0VBQ0E7QTlDdWdSUjtBOENyZ1JZO0VBQ0E7QTlDdWdSWjs7QThDbGdSSTtFQUNJO0E5Q3FnUlI7QThDcGdSUTtFQUNJO0E5Q3NnUlo7O0E4Q2xnUkk7RUFDSTtFQUNBO0E5Q3FnUlI7O0E4Q2hnUlk7RUFDSTtBOUNtZ1JoQjtBOENsZ1JnQjtFQUNJO0E5Q29nUnBCOztBOEM5L1FBO0FBQ0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5Q2lnUlI7O0E4QzkvUUk7RUFDSTtFQUNBO0VBQ0E7QTlDaWdSUjs7QThDOS9RSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5Q2lnUlI7O0E4QzkvUUE7QUFHWTtFQUNJO0E5QysvUWhCOztBZ0RublJBO0VBQ0k7RUFDSTtBaERzblJSOztBZ0RublJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhEc25SSjs7QWdEbm5SQTtFQUNDO0VBQ0E7RUFDRztFQUNBO0VBQ0E7QWhEc25SSjs7QWlEM29SQTtFQUNJO0lBQ0k7RWpEOG9STjtFaUQ1b1JFO0lBQ0k7RWpEOG9STjtBQUNGO0FpRDNvUkE7RUFDSTtJQUNJO0VqRDZvUk47RWlEM29SRTtJQUNJO0VqRDZvUk47QUFDRjtBaUQxb1JBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNHO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakQ0b1JKOztBaUR6b1JBO0VBQ0k7RUFDQTtFQUNBO0FqRDRvUko7O0FpRHpvUkE7RUFDSTtFQUNBO0VBQ0E7QWpENG9SSjs7QWlEem9SQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FqRDRvUko7O0FpRHpvUkE7RUFDSTtFQUNBO0VBQ0g7RUFDRztFQUNBO0VBQ0E7RUFDQTtBakQ0b1JKOztBa0Q3c1JBO0VBQ0M7QWxEZ3RSRDs7QWtEN3NSQTtFQUNDO0VBQ0E7RUFDQTtBbERndFJEO0FrRDlzUkM7RUFDQztBbERndFJGOztBa0Q1c1JBO0VBQ0M7QWxEK3NSRDs7QWtENXNSQTtFQUNDO0FsRCtzUkQ7QWtEOXNSQztFQUNDO0FsRGd0UkY7O0FrRDVzUkE7RUFDQztFQU9BO0FsRHlzUkQ7QWtEN3NSQztFQUNDO0VBQ0E7QWxEK3NSRjtBa0Q1c1JDO0VBRUM7RUFDQTtFQU9BO0FsRHVzUkY7QWtEN3NSRTtFQUNDO0VBQ0E7RUFDQTtBbEQrc1JIO0FrRDNzUkU7RUFDQztFQUdBO0VBQ0E7QWxEMnNSSDtBa0R2c1JDO0VBQ0M7QWxEeXNSRjs7QWtEbnNSRTtFQUNDO0VBQ0E7RUFDQTtBbERzc1JIOztBa0Rqc1JBO0VBQ0M7QWxEb3NSRDtBa0Rsc1JDO0VBQ0M7QWxEb3NSRjs7QUFod1JBO0VBQ0M7QUFtd1JEOztBQWh3UkE7RUFDQztBQW13UkQ7O0FBaHdSQTtFQUNDO0VBQ0E7QUFtd1JEOztBQWh3UkE7RUFDQztFQUNBO0VBQ0E7QUFtd1JEOztBQWh3UkE7RUFDQztFQUNBO0VBQ0E7QUFtd1JEOztBQWh3UkE7RUFDQztFQUNBO0VBQ0E7QUFtd1JEOztBQWh3UkE7RUFDQztBQW13UkQ7O0FBL3ZSQTtFQUNDO0VBQ0E7RUFDQTtBQWt3UkQ7O0FBL3ZSQTs7RUFFQztBQWt3UkQ7O0FBL3ZSQTs7RUFFQztBQWt3UkQ7O0FBL3ZSQTtFQUNDO0VBQ0E7QUFrd1JEOztBQS92UkE7RUFDQztFQUNBO0VBQ0E7RUFDQTtBQWt3UkQ7O0FBL3ZSQTtFQUNDO0FBa3dSRDs7QUEvdlJBO0FBQ0E7O0VBRUM7RUFDQTtBQWt3UkQ7O0FBL3ZSQTtBQUNBO0VBQ0M7QUFrd1JEOztBQS92UkE7RUFDQztBQWt3UkQ7O0FBaHdSQTtFQUNDO0FBbXdSRDs7QUFqd1JBO0VBQ0M7QUFvd1JEOztBQWx3UkE7RUFDQztBQXF3UkQ7O0FBbndSQTtFQUNDO0FBc3dSRDs7QUFud1JBO0VBQ0M7QUFzd1JEOztBQW53UkE7RUFDQztBQXN3UkQ7O0FBbndSQTs7O0VBR0M7QUFzd1JEO0FBcndSQzs7O0VBQ0M7QUF5d1JGOztBQXJ3UkE7RUFDQztBQXd3UkQ7O0FBcndSQTtFQUNDO0FBd3dSRDtBQXR3UkM7RUFDQztBQXd3UkY7O0FBcHdSQTs7RUFFQztFQUNBO0FBdXdSRDs7QUFwd1JBO0FBQ0E7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBdXdSRDs7QUFwd1JBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7QUF1d1JEOztBQXB3UkE7RUFDQztBQXV3UkQ7O0FBcHdSQTtFQUNDO0FBdXdSRDs7QUFwd1JBOztFQUVDO0FBdXdSRDs7QUFwd1JBOztFQUVDO0FBdXdSRDs7QUFwd1JBO0VBQ0M7RUFDQTtBQXV3UkQ7QUF0d1JDO0VBQ0M7QUF3d1JGO0FBdndSRTtFQUNDO0FBeXdSSDs7QUFwd1JBO0VBQ0M7QUF1d1JEOztBQXB3UkE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdFQUNDO0VBR0Q7RUFDQTtFQUNBO0FBb3dSRDs7QUFqd1JBO0VBQ0M7RUFDQTtBQW93UkQ7O0FBandSQTtFQUNDO0FBb3dSRDs7QUFqd1JBO0VBQ0M7RUFDQTtBQW93UkQ7O0FBandSQTtFQUNDO0FBb3dSRDtBQW53UkM7RUFDQztBQXF3UkY7O0FBandSQTs7O0VBR0M7RUFDQTtFQUNBO0VBQ0E7QUFvd1JEOztBQWh3UkE7OztFQUdDO0VBQ0E7RUFDQTtBQW13UkQ7O0FBaHdSQTtFQUNDO0FBbXdSRDs7QUFod1JBO0VBQ0M7QUFtd1JEOztBQWp3UkE7RUFDQztFQUNBO0VBQ0E7QUFvd1JEO0FBbndSQztFQUNDO0FBcXdSRjtBQW53UkM7RUFDQztBQXF3UkY7QUFsd1JDO0VBQ0M7QUFvd1JGOztBQS92UkE7RUFDSTtFQUNIO0VBQ0c7RUFDQTtFQUNIO0FBa3dSRDs7QUEvdlJBO0VBQ0M7RUFDRztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQWt3Uko7QUFod1JDO0VBQ0M7QUFrd1JGO0FBL3ZSQztFQUNDO0FBaXdSRjtBQTl2UkM7RUFDQztBQWd3UkY7QUE3dlJDO0VBQ0M7QUErdlJGOztBQTN2UkE7RUFDQztBQTh2UkQ7O0FBM3ZSQTtFQUNDO0FBOHZSRDs7QUExdlJBO0VBQ0M7QUE2dlJEOztBQTF2UkE7RUFDQztFQUNBO0VBQ0E7QUE2dlJEOztBQTF2UkE7RUFDQztBQTZ2UkQ7O0FBMXZSQTtFQUNDO0FBNnZSRDs7QUExdlJBO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQTZ2UkQ7QUE1dlJDO0VBQ0M7QUE4dlJGO0FBNXZSQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0FBOHZSRjs7QUExdlJBO0VBQ0M7QUE2dlJEOztBQTF2UkE7RUFDQztFQUNBO0VBQ0E7QUE2dlJEO0FBNXZSQztFQUNDO0VBQ0E7RUFDQTtBQTh2UkY7QUE3dlJFO0VBQ0M7QUErdlJIOztBQXp2UkE7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUE0dlJEO0FBMXZSQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBNHZSRjtBQTF2UkU7RUFDQztFQUNBO0VBQ0E7RUFDQTtBQTR2Ukg7QUF6dlJFO0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUEydlJIO0FBenZSRztFQUNDO0VBQ0E7QUEydlJKO0FBeHZSRztFQUNDO0VBQ0E7QUEwdlJKO0FBcnZSQztFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUF1dlJGO0FBcnZSRTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0FBdXZSSDtBQXJ2Ukc7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQXV2Uko7QUFydlJJO0VBQ0M7RUFDQTtFQUNBO0FBdXZSTDtBQW52Ukk7RUFDQztFQUNBO0FBcXZSTDtBQWp2Ukc7RUFDQztFQUNBO0FBbXZSSjtBQTl1UkM7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBZ3ZSRjtBQTl1UkU7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBZ3ZSSDtBQTd1Ukc7RUFDQztFQUNBO0VBQ0E7QUErdVJKO0FBN3VSSTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBK3VSTDtBQTN1Ukc7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUE2dVJKO0FBMXVSSTtFQUNDO0VBQ0E7QUE0dVJMO0FBMXVSSztFQUNDO0VBQ0E7RUFDQTtBQTR1Uk47QUF6dVJLO0VBQ0M7RUFDQTtBQTJ1Uk47QUF0dVJJO0VBQ0M7RUFDQTtBQXd1Ukw7QUF0dVJLO0VBQ0M7RUFDQTtFQUNBO0FBd3VSTjtBQW51Ukk7RUFDQztFQUNBO0VBQ0E7QUFxdVJMO0FBbnVSSztFQUNDO0VBQ0E7RUFDQTtBQXF1Uk47QUFodVJJO0VBQ0M7RUFDQTtBQWt1Ukw7O0FBMXRSQTtFQUNDO0lBQ0M7SUFDQTtJQUNBO0VBNnRSQTtFQTN0UkE7SUFDQztFQTZ0UkQ7RUEzdFJDO0lBQ0M7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFQTZ0UkY7QUFDRjtBQXZ0UkE7RUFDQztFQUNBO0FBeXRSRDs7QUFwdFJDO0VBQ0M7QUF1dFJGO0FBcnRSQztFQUNDO0FBdXRSRjtBQXJ0UkM7RUFDQztBQXV0UkY7O0FBbnRSQTtFQUNDO0FBc3RSRDs7QUFudFJBO0VBQ0M7QUFzdFJELEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2FwcC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL3Rva2Vucy5tb2R1bGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9jb2xvcnMubW9kdWxlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbGl6ZWNzcy9tYXRlcmlhbGl6ZS9zYXNzL2NvbXBvbmVudHMvdHlwb2dyYXBoeS5tb2R1bGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy90aGVtZS5saWdodC5tb2R1bGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy90aGVtZS5kYXJrLm1vZHVsZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL190aGVtZV92YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9fY29sb3ItY2xhc3Nlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL19ub3JtYWxpemUuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9fZ2xvYmFsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbGl6ZWNzcy9tYXRlcmlhbGl6ZS9zYXNzL2NvbXBvbmVudHMvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL19jb2xsZWN0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbGl6ZWNzcy9tYXRlcmlhbGl6ZS9zYXNzL2NvbXBvbmVudHMvX2JhZGdlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL19pY29ucy1tYXRlcmlhbC1kZXNpZ24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9fZ3JpZC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL19uYXZiYXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9fdHlwb2dyYXBoeS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL190cmFuc2l0aW9ucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL19jYXJkcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL190b2FzdC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL190YWJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbGl6ZWNzcy9tYXRlcmlhbGl6ZS9zYXNzL2NvbXBvbmVudHMvX3Rvb2x0aXAuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL19kcm9wZG93bi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL19tb2RhbC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL19jb2xsYXBzaWJsZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL19jaGlwcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL19tYXRlcmlhbGJveC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL2Zvcm1zL19mb3Jtcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL2Zvcm1zL19pbnB1dC1maWVsZHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9mb3Jtcy9fcmFkaW8tYnV0dG9ucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL2Zvcm1zL19jaGVja2JveGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbGl6ZWNzcy9tYXRlcmlhbGl6ZS9zYXNzL2NvbXBvbmVudHMvZm9ybXMvX3N3aXRjaGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbGl6ZWNzcy9tYXRlcmlhbGl6ZS9zYXNzL2NvbXBvbmVudHMvZm9ybXMvX3NlbGVjdC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL2Zvcm1zL19maWxlLWlucHV0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbGl6ZWNzcy9tYXRlcmlhbGl6ZS9zYXNzL2NvbXBvbmVudHMvZm9ybXMvX3JhbmdlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbGl6ZWNzcy9tYXRlcmlhbGl6ZS9zYXNzL2NvbXBvbmVudHMvX3RhYmxlX29mX2NvbnRlbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbGl6ZWNzcy9tYXRlcmlhbGl6ZS9zYXNzL2NvbXBvbmVudHMvX3NpZGVuYXYuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9fcHJlbG9hZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL0BtYXRlcmlhbGl6ZWNzcy9tYXRlcmlhbGl6ZS9zYXNzL2NvbXBvbmVudHMvX3NsaWRlci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL19jYXJvdXNlbC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL190YXBUYXJnZXQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9fcHVsc2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvQG1hdGVyaWFsaXplY3NzL21hdGVyaWFsaXplL3Nhc3MvY29tcG9uZW50cy9fZGF0ZXBpY2tlci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9AbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemUvc2Fzcy9jb21wb25lbnRzL190aW1lcGlja2VyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9uYXZiYXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2Zvb3Rlci5zY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvbG9hZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9fc2VsZWN0Mi5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkB1c2UgXCJAbWF0ZXJpYWxpemVjc3MvbWF0ZXJpYWxpemVcIjtcblxuQHVzZSBcImdyaWRcIjtcbkB1c2UgXCJuYXZiYXJcIjtcbkB1c2UgXCJmb290ZXJcIjtcbkB1c2UgXCJsb2FkZXJcIjtcbkB1c2UgXCJfc2VsZWN0MlwiO1xuXG5AaW1wb3J0IFwiX3ZhcmlhYmxlc1wiO1xuXG4kc21hbGw6IDUyMHB4O1xuJG1lZDogMTI1MHB4O1xuXG4qIHtcblx0Zm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIHNhbnMtc2VyaWY7XG59XG5cbmE6aG92ZXIge1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmJnLXByaW1hcnkge1xuXHQvKiBiYWNrZ3JvdW5kLWNvbG9yOiAjM0YzRjQwICFpbXBvcnRhbnQ7ICovXG5cdGJhY2tncm91bmQtY29sb3I6ICRxdWF0ZXJuYXJ5LWNvbG9yICFpbXBvcnRhbnQ7XG59XG5cbi5oaWRkZW4ge1xuXHR2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcblx0cG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG5cdGxlZnQ6IDAlICFpbXBvcnRhbnQ7XG59XG5cbi5jb250YWluZXIge1xuXHRmbGV4OiAxIDAgYXV0bztcblx0cGFkZGluZzogNXB4OyAvLyBSRyAgIChpbml0aWFsID0gMjApXG5cdHBhZGRpbmctYm90dG9tOiAxMDBweCAhaW1wb3J0YW50O1xufVxuXG5ib2R5IHtcblx0ZGlzcGxheTogZmxleDtcblx0bWluLWhlaWdodDogMTAwdmg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5idG4tY3VzdG9tIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1jb2xvciAhaW1wb3J0YW50O1xuXHQvL3dpZHRoOiAtd2Via2l0LWZpbGwtYXZhaWxhYmxlO1xufVxuXG4uYnRuID4gc3BhbiB7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuXG4uYnRuOmhvdmVyLFxuLmJ0bi1zbWFsbDpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6ICR0ZXJ0aWFyeS1jb2xvciAhaW1wb3J0YW50O1xufVxuXG4uYnRuOmZvY3VzLFxuLmJ0bi1zbWFsbDpmb2N1cyB7XG5cdGJhY2tncm91bmQtY29sb3I6ICR0ZXJ0aWFyeS1jb2xvciAhaW1wb3J0YW50O1xufVxuXG4uc2VsZWN0LWRyb3Bkb3duIHtcblx0b3ZlcmZsb3cteTogYXV0byAhaW1wb3J0YW50O1xuXHRtYXgtaGVpZ2h0OiAzMDBweCAhaW1wb3J0YW50O1xufVxuXG4uaWNvbi1pbnB1dCB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0cmlnaHQ6IDhweDtcblx0dG9wOiAxZW07XG5cdHotaW5kZXg6IDUwO1xufVxuXG4uaW5wdXQtaWNvbiB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLyogQ2hyb21lLCBTYWZhcmksIEVkZ2UsIE9wZXJhICovXG5pbnB1dDo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbixcbmlucHV0Ojotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcblx0LXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuXHRtYXJnaW46IDA7XG59XG5cbi8qIEZpcmVmb3ggKi9cbmlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xuXHQtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbn1cblxuLm1hdGVyaWFsLWljb25zLm1kLTEyIHtcblx0Zm9udC1zaXplOiAxMnB4O1xufVxuLm1hdGVyaWFsLWljb25zLm1kLTE4IHtcblx0Zm9udC1zaXplOiAxOHB4O1xufVxuLm1hdGVyaWFsLWljb25zLm1kLTI0IHtcblx0Zm9udC1zaXplOiAyNHB4O1xufVxuLm1hdGVyaWFsLWljb25zLm1kLTM2IHtcblx0Zm9udC1zaXplOiAzNnB4O1xufVxuLm1hdGVyaWFsLWljb25zLm1kLTQ4IHtcblx0Zm9udC1zaXplOiA0OHB4O1xufVxuXG4ubWF0ZXJpYWwtdG9vbHRpcCB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3IgIWltcG9ydGFudDtcbn1cblxuLnRvb2x0aXAtY29udGVudCA+IHNwYW4ge1xuXHR0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xufVxuXG4uc3VwZXItYWRtaW4tY29sb3IsXG4uc3VwZXItYWRtaW4tY29sb3I6YWN0aXZlLFxuLnN1cGVyLWFkbWluLWNvbG9yOmZvY3VzIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJHN1cGVyLWFkbWluLWNvbG9yICFpbXBvcnRhbnQ7XG5cdCY6aG92ZXIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRzdXBlci1hZG1pbi1jb2xvciAhaW1wb3J0YW50O1xuXHR9XG59XG5cbi51aS1kaWFsb2cge1xuXHR6LWluZGV4OiAxMDA1ICFpbXBvcnRhbnQ7XG59XG5cbmxpW3JvbGU9XCJvcHRpb25cIl06bm90KC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbikge1xuXHRtaW4taGVpZ2h0OiAzMHB4ICFpbXBvcnRhbnQ7XG5cdC8vd2lkdGg6IG1pbi1jb250ZW50ICFpbXBvcnRhbnQ7XG5cdCYgPiBzcGFuIHtcblx0XHRwYWRkaW5nOiA3cHggOHB4ICFpbXBvcnRhbnQ7XG5cdH1cbn1cblxuLmlucHV0LWZpZWxkIGlucHV0LFxuc2VsZWN0LCB0ZXh0YXJlYSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG5cdGJvcmRlci1ib3R0b20tY29sb3I6IHJnYigwIDAgMCAvIDMwJSkgIWltcG9ydGFudDtcbn1cblxuLyogcGVyc29uYWxpemVkIGlucHV0IGZpZWxkcyBkaXNwbGF5IGZvciBmb3JtcyAqL1xuaW5wdXQge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXHRib3JkZXItc3R5bGU6IG5vbmU7XG5cdGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuXHRib3JkZXItYm90dG9tLWNvbG9yOiByZ2IoMCAwIDAgLyAzMCUpICFpbXBvcnRhbnQ7XG5cdG1hcmdpbi1ib3R0b206IDEycHg7XG59XG5cbmZpZWxkc2V0IHtcblx0Ym9yZGVyOiAxcHggc29saWQgI2NjYztcblx0Ym9yZGVyLXJhZGl1czogNXB4O1xuXHRwYWRkaW5nOiAxMnB4ICFpbXBvcnRhbnQ7XG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbmxlZ2VuZCA+IGxhYmVsIHtcblx0Zm9udC1zaXplOiAxZW0gIWltcG9ydGFudDtcbn1cblxubGVnZW5kIHtcblx0cGFkZGluZzogMCA1cHg7XG59XG5cbi5idG4sXG4uYnRuLXNtYWxsIHtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuYS5idG4sXG5hLmJ0bi1zbWFsbCB7XG5cdG1heC13aWR0aDogLXdlYmtpdC1maWxsLWF2YWlsYWJsZTtcbn1cblxuLmN1c3RvbS1mb3JtLWVycm9yIHtcblx0Zm9udC1zaXplOiAxMnB4O1xuXHRjb2xvcjogcmVkO1xuXHQmID4gdWwge1xuXHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHQmID4gbGkge1xuXHRcdFx0bGlzdC1zdHlsZS10eXBlOiBub25lO1xuXHRcdH1cblx0fVxufVxuXG4udGVzdC1hY2NlbnQge1xuXHRjb2xvcjogJGFjY2VudC1jb2xvciAhaW1wb3J0YW50O1xufVxuXG4jYnV0dG9uIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZWJkMWE4O1xuXHR3aWR0aDogNTBweDtcblx0aGVpZ2h0OiA1MHB4O1xuXHRmb250LXNpemU6IDUwcHg7XG5cdGxpbmUtaGVpZ2h0OiA1MHB4O1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRjb2xvcjogd2hpdGU7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0cG9zaXRpb246IGZpeGVkO1xuXHRib3R0b206IDFlbTtcblx0cmlnaHQ6IDMwcHg7XG5cdHRyYW5zaXRpb246XG5cdFx0YmFja2dyb3VuZC1jb2xvciAwLjNzLFxuXHRcdG9wYWNpdHkgMC41cyxcblx0XHR2aXNpYmlsaXR5IDAuNXM7XG5cdG9wYWNpdHk6IDA7XG5cdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0ei1pbmRleDogMTAwMDtcbn1cblxuI2J1dHRvbjpob3ZlciB7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0YmFja2dyb3VuZC1jb2xvcjogI2ZjZGM5NDtcbn1cblxuI2J1dHRvbjphY3RpdmUge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmNkYzk0O1xufVxuXG4jYnV0dG9uLnNob3cge1xuXHRvcGFjaXR5OiAxO1xuXHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4uZGVsZXRlIHtcblx0YmFja2dyb3VuZC1jb2xvcjogI2VlNmU3MyAhaW1wb3J0YW50O1xuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZWU2ZTczICFpbXBvcnRhbnQ7XG5cdH1cbn1cblxuLmRlbGV0ZS1pY29uLFxuLmRlbGV0ZS1pY29uOmhvdmVyLFxuLmRlbGV0ZS1pY29uOmFjdGl2ZSB7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0Ym9yZGVyOiAwO1xuXHRiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG5cdHBhZGRpbmc6IDBweDtcbn1cblxuLy8gcmVwbGFjZSBidXR0b24gY2xhc3Mgd2hlbiB1c2VkIHdpdGggYW4gaWNvblxuLmJ1dHRvbi1pY29uLFxuLmJ1dHRvbi1pY29uOmhvdmVyLFxuLmJ1dHRvbi1pY29uOmFjdGl2ZSB7XG5cdGJvcmRlcjogMDtcblx0YmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuXHRwYWRkaW5nOiAwcHg7XG59XG5cbi5zZWxlY3RlZCB7XG5cdGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3I6ICNjMmU0ZmYsICRhbW91bnQ6IDUlKSAhaW1wb3J0YW50O1xufVxuXG4ucmVtb3ZlX2l0ZW1fbGluayB7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG4uY3VzdG9tLXBob25lLXJlbmRlciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0JiA+IGRpdiB7XG5cdFx0ZmxleDogMTtcblx0fVxuXHQmIGRpdi5zZWxlY3Qtd3JhcHBlci5pbnB1dC1maWVsZCB7XG5cdFx0bWF4LXdpZHRoOiAyMCUgIWltcG9ydGFudDtcblx0fVxuXG5cdCYgaW5wdXQge1xuXHRcdG1heC13aWR0aDogNzUlO1xuXHR9XG59XG5cbi8vIGFsZXJ0IG1lc3NhZ2Vcbi5mbGFzaF9tZXNzYWdlIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG5cdGxlZnQ6IDEwJTtcbiAgICB0b3A6IDIyMHB4O1xuICAgIHotaW5kZXg6IDk5OTk5O1xuXHRtaW4td2lkdGg6IDgwJTtcbn1cblxuLmNoaXBfbWVzc2FnZSB7XG5cdGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZy10b3A6IDEwcHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweCAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG5cblx0Ji5pbmZvIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjYmJkZWZiICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQmLndhcm5pbmcge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmNjODAgIWltcG9ydGFudDtcblx0fVxuXG5cdCYuYWxlcnQge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNlZjlhOWEgIWltcG9ydGFudDtcblx0fVxuXG5cdCYuc3VjY2VzcyB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2M4ZTZjOSAhaW1wb3J0YW50O1xuXHR9XG59XG5cbi5oaWdoZXItdGV4dGFyZWEge1xuXHRoZWlnaHQ6IDE1MHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5tZWRpdW0tdGV4dGFyZWEge1xuXHRoZWlnaHQ6IDVyZW0gIWltcG9ydGFudDtcbn1cblxuXG4uZW1haWxib2R5LXRleHRhcmVhIHtcblx0aGVpZ2h0OiAzMDBweCAhaW1wb3J0YW50O1xufVxuXG4udWktYXV0b2NvbXBsZXRlIHtcblx0bWF4LWhlaWdodDogMjM1cHg7XG5cdG92ZXJmbG93LXk6IGF1dG87XG5cdG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cblxuLm5vLXJlc3VsdCB7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4ub3ZlcmZsb3dpbmctbW9kYWwge1xuXHRvdmVyZmxvdy15OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbi5tb2RhbCB7XG5cdHdpZHRoOiBpbmhlcml0O1xuXHRoZWlnaHQ6IGZpdC1jb250ZW50O1xuXHRtaW4taGVpZ2h0OiA0NTBweDtcblx0bWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDIxMHB4KTtcblx0b3ZlcmZsb3cteTogYXV0byAhaW1wb3J0YW50O1xuXHQmIC5tb2RhbC1jb250ZW50IHtcblx0XHRtaW4taGVpZ2h0OiAzOTZweDtcblx0fVxuXHQmIC5tb2RhbC1mb290ZXIge1xuXHRcdGJvdHRvbTogMDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcblx0XHRwYWRkaW5nOiAwO1xuXHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGRkO1xuXHR9XG59XG5cbi5tb2RhbC1jb250ZW50IHtcblx0cGFkZGluZy1ib3R0b206IDBweCAhaW1wb3J0YW50O1xufVxuXG4uZm9ybS1lcnJvciB7XG5cdGNvbG9yOiByZWQ7XG5cdGZvbnQtc2l6ZTogMC44ZW07XG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdD4gdWwge1xuXHRcdG1hcmdpbjogMDtcblx0XHRwYWRkaW5nLWxlZnQ6IDIwcHg7XG5cdFx0bGlzdC1zdHlsZS10eXBlOiBub25lO1xuXHRcdD4gbGkge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdH1cblx0fVxufVxuXG4vLyBqUXVlcnkgVUkgRGlhbG9nIFN0eWxpbmdcbi51aS1kaWFsb2cge1xuXHR6LWluZGV4OiAxMDA1ICFpbXBvcnRhbnQ7XG5cdGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuXHRib3JkZXItcmFkaXVzOiA4cHggIWltcG9ydGFudDtcblx0Ym94LXNoYWRvdzogMCA4cHggMzJweCByZ2JhKDAsIDAsIDAsIDAuMykgIWltcG9ydGFudDtcblx0Zm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcblx0b3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcblxuXHQudWktZGlhbG9nLXRpdGxlYmFyIHtcblx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAkc2Vjb25kYXJ5LWNvbG9yLCBkYXJrZW4oJHNlY29uZGFyeS1jb2xvciwgMTAlKSkgIWltcG9ydGFudDtcblx0XHRjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcblx0XHRib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcblx0XHRib3JkZXItcmFkaXVzOiA4cHggOHB4IDAgMCAhaW1wb3J0YW50O1xuXHRcdHBhZGRpbmc6IDE2cHggMjBweCAhaW1wb3J0YW50O1xuXHRcdGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcblxuXHRcdC51aS1kaWFsb2ctdGl0bGUge1xuXHRcdFx0Zm9udC1zaXplOiAxLjJlbSAhaW1wb3J0YW50O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuXHRcdFx0bWFyZ2luOiAwICFpbXBvcnRhbnQ7XG5cdFx0XHRjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcblx0XHR9XG5cblx0XHQudWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuXHRcdFx0cmlnaHQ6IDEycHggIWltcG9ydGFudDtcblx0XHRcdHRvcDogNjMlICFpbXBvcnRhbnQ7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgIWltcG9ydGFudDtcblx0XHRcdHdpZHRoOiAzMnB4ICFpbXBvcnRhbnQ7XG5cdFx0XHRoZWlnaHQ6IDMycHggIWltcG9ydGFudDtcblx0XHRcdGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuXHRcdFx0YmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpICFpbXBvcnRhbnQ7XG5cdFx0XHRib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcblx0XHRcdGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuXHRcdFx0Zm9udC1zaXplOiAxOHB4ICFpbXBvcnRhbnQ7XG5cdFx0XHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MgZWFzZSAhaW1wb3J0YW50O1xuXHRcdFx0ZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuXG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0YmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpICFpbXBvcnRhbnQ7XG5cdFx0XHRcdGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXG5cdFx0XHQmOmZvY3VzIHtcblx0XHRcdFx0b3V0bGluZTogMnB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAhaW1wb3J0YW50O1xuXHRcdFx0XHRvdXRsaW5lLW9mZnNldDogMnB4ICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LnVpLWRpYWxvZy1jb250ZW50IHtcblx0XHRwYWRkaW5nOiAyNHB4ICFpbXBvcnRhbnQ7XG5cdFx0YmFja2dyb3VuZDogd2hpdGUgIWltcG9ydGFudDtcblx0XHRjb2xvcjogIzMzMyAhaW1wb3J0YW50O1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjYgIWltcG9ydGFudDtcblx0XHRmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcblxuXHRcdHAge1xuXHRcdFx0bWFyZ2luOiAwIDAgMTZweCAwICFpbXBvcnRhbnQ7XG5cdFx0XHRkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG5cdFx0XHRhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuXHRcdFx0Z2FwOiAxMnB4ICFpbXBvcnRhbnQ7XG5cblx0XHRcdC51aS1pY29uLWFsZXJ0IHtcblx0XHRcdFx0d2lkdGg6IDI0cHggIWltcG9ydGFudDtcblx0XHRcdFx0aGVpZ2h0OiAyNHB4ICFpbXBvcnRhbnQ7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcblx0XHRcdFx0ZmxleC1zaHJpbms6IDAgIWltcG9ydGFudDtcblx0XHRcdFx0bWFyZ2luOiAwICFpbXBvcnRhbnQ7XG5cdFx0XHRcdGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcblx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xuXHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuXHRcdFx0XHRjb2xvcjogI2ZmOTgwMCAhaW1wb3J0YW50O1xuXHRcdFx0XHRmb250LXNpemU6IDI0cHggIWltcG9ydGFudDtcblxuXHRcdFx0XHQmOjpiZWZvcmUge1xuXHRcdFx0XHRcdGNvbnRlbnQ6IFwi4pqgXCIgIWltcG9ydGFudDtcblx0XHRcdFx0XHRmb250LXNpemU6IDI0cHggIWltcG9ydGFudDtcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogMSAhaW1wb3J0YW50O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ly8gQWx0ZXJuYXRpdmUgdXNpbmcgbWF0ZXJpYWwgaWNvbnMgaWYgYXZhaWxhYmxlXG5cdFx0XHRcdCYubWF0ZXJpYWwtaWNvbnM6OmJlZm9yZSB7XG5cdFx0XHRcdFx0Y29udGVudDogXCJ3YXJuaW5nXCIgIWltcG9ydGFudDtcblx0XHRcdFx0XHRmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJyAhaW1wb3J0YW50O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCN0ZXh0LWNvbnRlbnQge1xuXHRcdFx0XHRmbGV4OiAxICFpbXBvcnRhbnQ7XG5cdFx0XHRcdG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC51aS1kaWFsb2ctYnV0dG9ucGFuZSB7XG5cdFx0Ym9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0YmFja2dyb3VuZDogI2Y4ZjlmYSAhaW1wb3J0YW50O1xuXHRcdHBhZGRpbmc6IDE2cHggMjRweCAhaW1wb3J0YW50O1xuXHRcdGJvcmRlci1yYWRpdXM6IDAgMCA4cHggOHB4ICFpbXBvcnRhbnQ7XG5cdFx0bWFyZ2luOiAwICFpbXBvcnRhbnQ7XG5cblx0XHQudWktZGlhbG9nLWJ1dHRvbnNldCB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG5cdFx0XHRnYXA6IDEycHggIWltcG9ydGFudDtcblx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQgIWltcG9ydGFudDtcblx0XHRcdG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXHRcdFx0ZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcblxuXHRcdFx0Ly8gSGFuZGxlIDMrIGJ1dHRvbnMgbGF5b3V0XG5cdFx0XHQmOmhhcyhidXR0b246bnRoLWNoaWxkKDMpKSB7XG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG5cdFx0XHRcdGZsZXgtd3JhcDogd3JhcCAhaW1wb3J0YW50O1xuXHRcdFx0XHRnYXA6IDhweCAhaW1wb3J0YW50O1xuXG5cdFx0XHRcdGJ1dHRvbiB7XG5cdFx0XHRcdFx0ZmxleDogMSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdG1pbi13aWR0aDogMTQwcHggIWltcG9ydGFudDtcblx0XHRcdFx0XHRtYXgtd2lkdGg6IDIyMHB4ICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0d2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdHdvcmQtd3JhcDogYnJlYWstd29yZCAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdGh5cGhlbnM6IGF1dG8gIWltcG9ydGFudDtcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogMS4zICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0cGFkZGluZzogMTJweCAxNnB4ICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0aGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0bWluLWhlaWdodDogNDBweCAhaW1wb3J0YW50O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdGJ1dHRvbiB7XG5cdFx0XHRcdHBhZGRpbmc6IDEwcHggMTZweCAhaW1wb3J0YW50O1xuXHRcdFx0XHRib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNHB4ICFpbXBvcnRhbnQ7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMTJweCAhaW1wb3J0YW50O1xuXHRcdFx0XHRmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG5cdFx0XHRcdHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0XHRcdGN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50O1xuXHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlICFpbXBvcnRhbnQ7XG5cdFx0XHRcdGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XG5cdFx0XHRcdG1pbi13aWR0aDogMTAwcHggIWltcG9ydGFudDtcblx0XHRcdFx0d2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50O1xuXHRcdFx0XHR3b3JkLXdyYXA6IGJyZWFrLXdvcmQgIWltcG9ydGFudDtcblx0XHRcdFx0aHlwaGVuczogYXV0byAhaW1wb3J0YW50O1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDEuMyAhaW1wb3J0YW50O1xuXHRcdFx0XHRoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcblx0XHRcdFx0bWluLWhlaWdodDogMzZweCAhaW1wb3J0YW50O1xuXHRcdFx0XHRtYXgtd2lkdGg6IDIwMHB4ICFpbXBvcnRhbnQ7XG5cblx0XHRcdFx0Ly8gUHJpbWFyeSBhY3Rpb24gYnV0dG9uICh1c3VhbGx5IHRoZSBsYXN0IG9uZSlcblx0XHRcdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0Y29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG5cblx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR0ZXJ0aWFyeS1jb2xvciAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHRib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC4xNSkgIWltcG9ydGFudDtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmOmFjdGl2ZSB7XG5cdFx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgIWltcG9ydGFudDtcblx0XHRcdFx0XHRcdGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMSkgIWltcG9ydGFudDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvLyBEZXN0cnVjdGl2ZSBhY3Rpb24gYnV0dG9uIChjb250YWlucyBcIlN1cHByaW1lclwiIG9yIFwiRGVsZXRlXCIpXG5cdFx0XHRcdCZbY2xhc3MqPVwic3VwcHJpbWVyXCJdLCAmW2NsYXNzKj1cImRlbGV0ZVwiXSB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2VlNmU3MyAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuXG5cdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oI2VlNmU3MywgMTAlKSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHRib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEoMjM4LCAxMTAsIDExNSwgMC4zKSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8vIFNlY29uZGFyeS9DYW5jZWwgYnV0dG9uICh1c3VhbGx5IGZpcnN0IG9yIGNvbnRhaW5zIFwiQW5udWxlclwiKVxuXHRcdFx0XHQmOmZpcnN0LWNoaWxkLCAmW2NsYXNzKj1cImFubnVsZXJcIl0sICZbY2xhc3MqPVwiY2FuY2VsXCJdIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdGNvbG9yOiAjNjY2ICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0Ym9yZGVyOiAxcHggc29saWQgI2RkZCAhaW1wb3J0YW50O1xuXG5cdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1ICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHRib3JkZXItY29sb3I6ICNiYmIgIWltcG9ydGFudDtcblx0XHRcdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8vIEZvY3VzIHN0eWxlc1xuXHRcdFx0XHQmOmZvY3VzIHtcblx0XHRcdFx0XHRvdXRsaW5lOiAycHggc29saWQgcmdiYSgkc2Vjb25kYXJ5LWNvbG9yLCAwLjMpICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0b3V0bGluZS1vZmZzZXQ6IDJweCAhaW1wb3J0YW50O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8vIFJlc3BvbnNpdmUgZGlhbG9nIHNpemluZ1xuQG1lZGlhIChtYXgtd2lkdGg6ICRzbWFsbCkge1xuXHQudWktZGlhbG9nIHtcblx0XHR3aWR0aDogOTUlICFpbXBvcnRhbnQ7XG5cdFx0bWF4LXdpZHRoOiA5NSUgIWltcG9ydGFudDtcblx0XHRsZWZ0OiAyLjUlICFpbXBvcnRhbnQ7XG5cblx0XHQudWktZGlhbG9nLWJ1dHRvbnBhbmUgLnVpLWRpYWxvZy1idXR0b25zZXQge1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbiAhaW1wb3J0YW50O1xuXG5cdFx0XHRidXR0b24ge1xuXHRcdFx0XHR3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXHRcdFx0XHRtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcblx0XHRcdFx0bWFyZ2luOiA0cHggMCAhaW1wb3J0YW50O1xuXHRcdFx0XHRwYWRkaW5nOiAxNHB4IDIwcHggIWltcG9ydGFudDtcblx0XHRcdFx0Zm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XG5cdFx0XHRcdG1pbi1oZWlnaHQ6IDQ4cHggIWltcG9ydGFudDtcblx0XHRcdFx0d2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50O1xuXHRcdFx0XHR3b3JkLXdyYXA6IGJyZWFrLXdvcmQgIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLy8gRGlhbG9nIG92ZXJsYXkgc3R5bGluZ1xuLnVpLXdpZGdldC1vdmVybGF5IHtcblx0YmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpICFpbXBvcnRhbnQ7XG5cdG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbn1cblxuLy8gU3BlY2lmaWMgc3R5bGluZyBmb3IgbGVzc29uIHNlcmllcyBsaXN0IGl0ZW1zXG4ubGVzc29uLWRldGFpbHMge1xuXHQmLmxlc3Nvbi10b2RheSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2M4ZTZjOSAhaW1wb3J0YW50OyAvLyBMaWdodCBncmVlblxuXHR9XG5cdCYubGVzc29uLXZhY2F0aW9uIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjOThjN2VjYjcgIWltcG9ydGFudDsgLy8gTGlnaHQgYmx1ZVxuXHR9XG5cdCYubGVzc29uLWFydGljbGUtbW9kaWZpZWQge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNlZTcxNGIgIWltcG9ydGFudDsgLy8gTGlnaHQgb3JhbmdlXG5cdH1cbn1cblxudWwucGFnaW5hdGlvbiB7XG5cdHBhZGRpbmctaW5saW5lLXN0YXJ0OiAwO1xufVxuXG4uZGlzYWJsZWQtbGluayB7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuIiwiOnJvb3Qge1xuICAtLW1kLXNvdXJjZTogIzAwNjQ5NTtcbiAgLyogcHJpbWFyeSAqL1xuICAtLW1kLXJlZi1wYWxldHRlLXByaW1hcnkwOiAjMDAwMDAwO1xuICAtLW1kLXJlZi1wYWxldHRlLXByaW1hcnkxMDogIzAwMWUzMDtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1wcmltYXJ5MjA6ICMwMDM0NTA7XG4gIC0tbWQtcmVmLXBhbGV0dGUtcHJpbWFyeTI1OiAjMDAzZjYwO1xuICAtLW1kLXJlZi1wYWxldHRlLXByaW1hcnkzMDogIzAwNGI3MTtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1wcmltYXJ5MzU6ICMwMDU3ODM7XG4gIC0tbWQtcmVmLXBhbGV0dGUtcHJpbWFyeTQwOiAjMDA2NDk1O1xuICAtLW1kLXJlZi1wYWxldHRlLXByaW1hcnk1MDogIzBmN2ViODtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1wcmltYXJ5NjA6ICMzZDk4ZDQ7XG4gIC0tbWQtcmVmLXBhbGV0dGUtcHJpbWFyeTcwOiAjNWRiM2YwO1xuICAtLW1kLXJlZi1wYWxldHRlLXByaW1hcnk4MDogIzhmY2RmZjtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1wcmltYXJ5OTA6ICNjYmU2ZmY7XG4gIC0tbWQtcmVmLXBhbGV0dGUtcHJpbWFyeTk1OiAjZTZmMmZmO1xuICAtLW1kLXJlZi1wYWxldHRlLXByaW1hcnk5ODogI2Y3ZjlmZjtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1wcmltYXJ5OTk6ICNmY2ZjZmY7XG4gIC0tbWQtcmVmLXBhbGV0dGUtcHJpbWFyeTEwMDogI2ZmZmZmZjtcbiAgLyogc2Vjb25kYXJ5ICovXG4gIC0tbWQtcmVmLXBhbGV0dGUtc2Vjb25kYXJ5MDogIzAwMDAwMDtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1zZWNvbmRhcnkxMDogIzBkMWQyOTtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1zZWNvbmRhcnkyMDogIzIyMzIzZjtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1zZWNvbmRhcnkyNTogIzJkM2Q0YjtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1zZWNvbmRhcnkzMDogIzM5NDg1NjtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1zZWNvbmRhcnkzNTogIzQ0NTQ2MjtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1zZWNvbmRhcnk0MDogIzUwNjA2ZjtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1zZWNvbmRhcnk1MDogIzY5Nzk4ODtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1zZWNvbmRhcnk2MDogIzgyOTNhMjtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1zZWNvbmRhcnk3MDogIzlkYWRiZDtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1zZWNvbmRhcnk4MDogI2I4YzhkOTtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1zZWNvbmRhcnk5MDogI2Q0ZTRmNjtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1zZWNvbmRhcnk5NTogI2U2ZjJmZjtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1zZWNvbmRhcnk5ODogI2Y3ZjlmZjtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1zZWNvbmRhcnk5OTogI2ZjZmNmZjtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1zZWNvbmRhcnkxMDA6ICNmZmZmZmY7XG4gIC8qIHRlcnRpYXJ5ICovXG4gIC0tbWQtcmVmLXBhbGV0dGUtdGVydGlhcnkwOiAjMDAwMDAwO1xuICAtLW1kLXJlZi1wYWxldHRlLXRlcnRpYXJ5MTA6ICMyMTE2MzQ7XG4gIC0tbWQtcmVmLXBhbGV0dGUtdGVydGlhcnkyMDogIzM2MmI0YTtcbiAgLS1tZC1yZWYtcGFsZXR0ZS10ZXJ0aWFyeTI1OiAjNDIzNjU2O1xuICAtLW1kLXJlZi1wYWxldHRlLXRlcnRpYXJ5MzA6ICM0ZDQxNjI7XG4gIC0tbWQtcmVmLXBhbGV0dGUtdGVydGlhcnkzNTogIzU5NGM2ZTtcbiAgLS1tZC1yZWYtcGFsZXR0ZS10ZXJ0aWFyeTQwOiAjNjY1ODdiO1xuICAtLW1kLXJlZi1wYWxldHRlLXRlcnRpYXJ5NTA6ICM3ZjcxOTU7XG4gIC0tbWQtcmVmLXBhbGV0dGUtdGVydGlhcnk2MDogIzk5OGFiMDtcbiAgLS1tZC1yZWYtcGFsZXR0ZS10ZXJ0aWFyeTcwOiAjYjRhNGNiO1xuICAtLW1kLXJlZi1wYWxldHRlLXRlcnRpYXJ5ODA6ICNkMGJmZTc7XG4gIC0tbWQtcmVmLXBhbGV0dGUtdGVydGlhcnk5MDogI2VjZGNmZjtcbiAgLS1tZC1yZWYtcGFsZXR0ZS10ZXJ0aWFyeTk1OiAjZjdlZGZmO1xuICAtLW1kLXJlZi1wYWxldHRlLXRlcnRpYXJ5OTg6ICNmZWY3ZmY7XG4gIC0tbWQtcmVmLXBhbGV0dGUtdGVydGlhcnk5OTogI2ZmZmJmZjtcbiAgLS1tZC1yZWYtcGFsZXR0ZS10ZXJ0aWFyeTEwMDogI2ZmZmZmZjtcbiAgLyogbmV1dHJhbCAqL1xuICAtLW1kLXJlZi1wYWxldHRlLW5ldXRyYWwwOiAjMDAwMDAwO1xuICAtLW1kLXJlZi1wYWxldHRlLW5ldXRyYWwxMDogIzFhMWMxZTtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1uZXV0cmFsMjA6ICMyZTMxMzM7XG4gIC0tbWQtcmVmLXBhbGV0dGUtbmV1dHJhbDI1OiAjM2EzYzNlO1xuICAtLW1kLXJlZi1wYWxldHRlLW5ldXRyYWwzMDogIzQ1NDc0OTtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1uZXV0cmFsMzU6ICM1MTUyNTU7XG4gIC0tbWQtcmVmLXBhbGV0dGUtbmV1dHJhbDQwOiAjNWQ1ZTYxO1xuICAtLW1kLXJlZi1wYWxldHRlLW5ldXRyYWw1MDogIzc2Nzc3YTtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1uZXV0cmFsNjA6ICM4ZjkxOTQ7XG4gIC0tbWQtcmVmLXBhbGV0dGUtbmV1dHJhbDcwOiAjYWFhYmFlO1xuICAtLW1kLXJlZi1wYWxldHRlLW5ldXRyYWw4MDogI2M2YzZjOTtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1uZXV0cmFsOTA6ICNlMmUyZTU7XG4gIC0tbWQtcmVmLXBhbGV0dGUtbmV1dHJhbDk1OiAjZjBmMGYzO1xuICAtLW1kLXJlZi1wYWxldHRlLW5ldXRyYWw5ODogI2Y5ZjlmYztcbiAgLS1tZC1yZWYtcGFsZXR0ZS1uZXV0cmFsOTk6ICNmY2ZjZmY7XG4gIC0tbWQtcmVmLXBhbGV0dGUtbmV1dHJhbDEwMDogI2ZmZmZmZjtcbiAgLyogbmV1dHJhbC12YXJpYW50ICovXG4gIC0tbWQtcmVmLXBhbGV0dGUtbmV1dHJhbC12YXJpYW50MDogIzAwMDAwMDtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1uZXV0cmFsLXZhcmlhbnQxMDogIzE2MWMyMjtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1uZXV0cmFsLXZhcmlhbnQyMDogIzJiMzEzNztcbiAgLS1tZC1yZWYtcGFsZXR0ZS1uZXV0cmFsLXZhcmlhbnQyNTogIzM2M2M0MjtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1uZXV0cmFsLXZhcmlhbnQzMDogIzQxNDc0ZDtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1uZXV0cmFsLXZhcmlhbnQzNTogIzRkNTM1OTtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1uZXV0cmFsLXZhcmlhbnQ0MDogIzU5NWY2NTtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1uZXV0cmFsLXZhcmlhbnQ1MDogIzcyNzg3ZTtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1uZXV0cmFsLXZhcmlhbnQ2MDogIzhiOTE5ODtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1uZXV0cmFsLXZhcmlhbnQ3MDogI2E2YWNiMztcbiAgLS1tZC1yZWYtcGFsZXR0ZS1uZXV0cmFsLXZhcmlhbnQ4MDogI2MxYzdjZTtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1uZXV0cmFsLXZhcmlhbnQ5MDogI2RlZTNlYTtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1uZXV0cmFsLXZhcmlhbnQ5NTogI2VjZjFmOTtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1uZXV0cmFsLXZhcmlhbnQ5ODogI2Y3ZjlmZjtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1uZXV0cmFsLXZhcmlhbnQ5OTogI2ZjZmNmZjtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1uZXV0cmFsLXZhcmlhbnQxMDA6ICNmZmZmZmY7XG4gIC8qIGVycm9yICovXG4gIC0tbWQtcmVmLXBhbGV0dGUtZXJyb3IwOiAjMDAwMDAwO1xuICAtLW1kLXJlZi1wYWxldHRlLWVycm9yMTA6ICM0MTAwMDI7XG4gIC0tbWQtcmVmLXBhbGV0dGUtZXJyb3IyMDogIzY5MDAwNTtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1lcnJvcjI1OiAjN2UwMDA3O1xuICAtLW1kLXJlZi1wYWxldHRlLWVycm9yMzA6ICM5MzAwMGE7XG4gIC0tbWQtcmVmLXBhbGV0dGUtZXJyb3IzNTogI2E4MDcxMDtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1lcnJvcjQwOiAjYmExYTFhO1xuICAtLW1kLXJlZi1wYWxldHRlLWVycm9yNTA6ICNkZTM3MzA7XG4gIC0tbWQtcmVmLXBhbGV0dGUtZXJyb3I2MDogI2ZmNTQ0OTtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1lcnJvcjcwOiAjZmY4OTdkO1xuICAtLW1kLXJlZi1wYWxldHRlLWVycm9yODA6ICNmZmI0YWI7XG4gIC0tbWQtcmVmLXBhbGV0dGUtZXJyb3I5MDogI2ZmZGFkNjtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1lcnJvcjk1OiAjZmZlZGVhO1xuICAtLW1kLXJlZi1wYWxldHRlLWVycm9yOTg6ICNmZmY4Zjc7XG4gIC0tbWQtcmVmLXBhbGV0dGUtZXJyb3I5OTogI2ZmZmJmZjtcbiAgLS1tZC1yZWYtcGFsZXR0ZS1lcnJvcjEwMDogI2ZmZmZmZjtcbiAgLyogbGlnaHQgKi9cbiAgLS1tZC1zeXMtY29sb3ItcHJpbWFyeS1saWdodDogIzAwNjQ5NTtcbiAgLS1tZC1zeXMtY29sb3Itb24tcHJpbWFyeS1saWdodDogI2ZmZmZmZjtcbiAgLS1tZC1zeXMtY29sb3ItcHJpbWFyeS1jb250YWluZXItbGlnaHQ6ICNjYmU2ZmY7XG4gIC0tbWQtc3lzLWNvbG9yLW9uLXByaW1hcnktY29udGFpbmVyLWxpZ2h0OiAjMDAxZTMwO1xuICAtLW1kLXN5cy1jb2xvci1zZWNvbmRhcnktbGlnaHQ6ICM1MDYwNmY7XG4gIC0tbWQtc3lzLWNvbG9yLW9uLXNlY29uZGFyeS1saWdodDogI2ZmZmZmZjtcbiAgLS1tZC1zeXMtY29sb3Itc2Vjb25kYXJ5LWNvbnRhaW5lci1saWdodDogI2Q0ZTRmNjtcbiAgLS1tZC1zeXMtY29sb3Itb24tc2Vjb25kYXJ5LWNvbnRhaW5lci1saWdodDogIzBkMWQyOTtcbiAgLS1tZC1zeXMtY29sb3ItdGVydGlhcnktbGlnaHQ6ICM2NjU4N2I7XG4gIC0tbWQtc3lzLWNvbG9yLW9uLXRlcnRpYXJ5LWxpZ2h0OiAjZmZmZmZmO1xuICAtLW1kLXN5cy1jb2xvci10ZXJ0aWFyeS1jb250YWluZXItbGlnaHQ6ICNlY2RjZmY7XG4gIC0tbWQtc3lzLWNvbG9yLW9uLXRlcnRpYXJ5LWNvbnRhaW5lci1saWdodDogIzIxMTYzNDtcbiAgLS1tZC1zeXMtY29sb3ItZXJyb3ItbGlnaHQ6ICNiYTFhMWE7XG4gIC0tbWQtc3lzLWNvbG9yLWVycm9yLWNvbnRhaW5lci1saWdodDogI2ZmZGFkNjtcbiAgLS1tZC1zeXMtY29sb3Itb24tZXJyb3ItbGlnaHQ6ICNmZmZmZmY7XG4gIC0tbWQtc3lzLWNvbG9yLW9uLWVycm9yLWNvbnRhaW5lci1saWdodDogIzQxMDAwMjtcbiAgLS1tZC1zeXMtY29sb3ItYmFja2dyb3VuZC1saWdodDogI2ZjZmNmZjtcbiAgLS1tZC1zeXMtY29sb3Itb24tYmFja2dyb3VuZC1saWdodDogIzFhMWMxZTtcbiAgLS1tZC1zeXMtY29sb3Itc3VyZmFjZS1saWdodDogI2ZjZmNmZjtcbiAgLS1tZC1zeXMtY29sb3Itb24tc3VyZmFjZS1saWdodDogIzFhMWMxZTtcbiAgLS1tZC1zeXMtY29sb3Itc3VyZmFjZS12YXJpYW50LWxpZ2h0OiAjZGVlM2VhO1xuICAtLW1kLXN5cy1jb2xvci1vbi1zdXJmYWNlLXZhcmlhbnQtbGlnaHQ6ICM0MTQ3NGQ7XG4gIC0tbWQtc3lzLWNvbG9yLW91dGxpbmUtbGlnaHQ6ICM3Mjc4N2U7XG4gIC0tbWQtc3lzLWNvbG9yLWludmVyc2Utb24tc3VyZmFjZS1saWdodDogI2YwZjBmMztcbiAgLS1tZC1zeXMtY29sb3ItaW52ZXJzZS1zdXJmYWNlLWxpZ2h0OiAjMmUzMTMzO1xuICAtLW1kLXN5cy1jb2xvci1pbnZlcnNlLXByaW1hcnktbGlnaHQ6ICM4ZmNkZmY7XG4gIC0tbWQtc3lzLWNvbG9yLXNoYWRvdy1saWdodDogIzAwMDAwMDtcbiAgLS1tZC1zeXMtY29sb3Itc3VyZmFjZS10aW50LWxpZ2h0OiAjMDA2NDk1O1xuICAtLW1kLXN5cy1jb2xvci1vdXRsaW5lLXZhcmlhbnQtbGlnaHQ6ICNjMWM3Y2U7XG4gIC0tbWQtc3lzLWNvbG9yLXNjcmltLWxpZ2h0OiAjMDAwMDAwO1xuICAvKiBkYXJrICovXG4gIC0tbWQtc3lzLWNvbG9yLXByaW1hcnktZGFyazogIzhmY2RmZjtcbiAgLS1tZC1zeXMtY29sb3Itb24tcHJpbWFyeS1kYXJrOiAjMDAzNDUwO1xuICAtLW1kLXN5cy1jb2xvci1wcmltYXJ5LWNvbnRhaW5lci1kYXJrOiAjMDA0YjcxO1xuICAtLW1kLXN5cy1jb2xvci1vbi1wcmltYXJ5LWNvbnRhaW5lci1kYXJrOiAjY2JlNmZmO1xuICAtLW1kLXN5cy1jb2xvci1zZWNvbmRhcnktZGFyazogI2I4YzhkOTtcbiAgLS1tZC1zeXMtY29sb3Itb24tc2Vjb25kYXJ5LWRhcms6ICMyMjMyM2Y7XG4gIC0tbWQtc3lzLWNvbG9yLXNlY29uZGFyeS1jb250YWluZXItZGFyazogIzM5NDg1NjtcbiAgLS1tZC1zeXMtY29sb3Itb24tc2Vjb25kYXJ5LWNvbnRhaW5lci1kYXJrOiAjZDRlNGY2O1xuICAtLW1kLXN5cy1jb2xvci10ZXJ0aWFyeS1kYXJrOiAjZDBiZmU3O1xuICAtLW1kLXN5cy1jb2xvci1vbi10ZXJ0aWFyeS1kYXJrOiAjMzYyYjRhO1xuICAtLW1kLXN5cy1jb2xvci10ZXJ0aWFyeS1jb250YWluZXItZGFyazogIzRkNDE2MjtcbiAgLS1tZC1zeXMtY29sb3Itb24tdGVydGlhcnktY29udGFpbmVyLWRhcms6ICNlY2RjZmY7XG4gIC0tbWQtc3lzLWNvbG9yLWVycm9yLWRhcms6ICNmZmI0YWI7XG4gIC0tbWQtc3lzLWNvbG9yLWVycm9yLWNvbnRhaW5lci1kYXJrOiAjOTMwMDBhO1xuICAtLW1kLXN5cy1jb2xvci1vbi1lcnJvci1kYXJrOiAjNjkwMDA1O1xuICAtLW1kLXN5cy1jb2xvci1vbi1lcnJvci1jb250YWluZXItZGFyazogI2ZmZGFkNjtcbiAgLS1tZC1zeXMtY29sb3ItYmFja2dyb3VuZC1kYXJrOiAjMWExYzFlO1xuICAtLW1kLXN5cy1jb2xvci1vbi1iYWNrZ3JvdW5kLWRhcms6ICNlMmUyZTU7XG4gIC0tbWQtc3lzLWNvbG9yLXN1cmZhY2UtZGFyazogIzFhMWMxZTtcbiAgLS1tZC1zeXMtY29sb3Itb24tc3VyZmFjZS1kYXJrOiAjZTJlMmU1O1xuICAtLW1kLXN5cy1jb2xvci1zdXJmYWNlLXZhcmlhbnQtZGFyazogIzQxNDc0ZDtcbiAgLS1tZC1zeXMtY29sb3Itb24tc3VyZmFjZS12YXJpYW50LWRhcms6ICNjMWM3Y2U7XG4gIC0tbWQtc3lzLWNvbG9yLW91dGxpbmUtZGFyazogIzhiOTE5ODtcbiAgLS1tZC1zeXMtY29sb3ItaW52ZXJzZS1vbi1zdXJmYWNlLWRhcms6ICMxYTFjMWU7XG4gIC0tbWQtc3lzLWNvbG9yLWludmVyc2Utc3VyZmFjZS1kYXJrOiAjZTJlMmU1O1xuICAtLW1kLXN5cy1jb2xvci1pbnZlcnNlLXByaW1hcnktZGFyazogIzAwNjQ5NTtcbiAgLS1tZC1zeXMtY29sb3Itc2hhZG93LWRhcms6ICMwMDAwMDA7XG4gIC0tbWQtc3lzLWNvbG9yLXN1cmZhY2UtdGludC1kYXJrOiAjOGZjZGZmO1xuICAtLW1kLXN5cy1jb2xvci1vdXRsaW5lLXZhcmlhbnQtZGFyazogIzQxNDc0ZDtcbiAgLS1tZC1zeXMtY29sb3Itc2NyaW0tZGFyazogIzAwMDAwMDtcbiAgLyogZGlzcGxheSAtIGxhcmdlICovXG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1kaXNwbGF5LWxhcmdlLWZvbnQtZmFtaWx5LW5hbWU6IFJvYm90bztcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWRpc3BsYXktbGFyZ2UtZm9udC1mYW1pbHktc3R5bGU6IFJlZ3VsYXI7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1kaXNwbGF5LWxhcmdlLWZvbnQtd2VpZ2h0OiA0MDBweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWRpc3BsYXktbGFyZ2UtZm9udC1zaXplOiA1N3B4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1sYXJnZS1saW5lLWhlaWdodDogNjRweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWRpc3BsYXktbGFyZ2UtbGV0dGVyLXNwYWNpbmc6IC0wLjI1cHg7XG4gIC8qIGRpc3BsYXkgLSBtZWRpdW0gKi9cbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWRpc3BsYXktbWVkaXVtLWZvbnQtZmFtaWx5LW5hbWU6IFJvYm90bztcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWRpc3BsYXktbWVkaXVtLWZvbnQtZmFtaWx5LXN0eWxlOiBSZWd1bGFyO1xuICAtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1tZWRpdW0tZm9udC13ZWlnaHQ6IDQwMHB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1tZWRpdW0tZm9udC1zaXplOiA0NXB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1tZWRpdW0tbGluZS1oZWlnaHQ6IDUycHg7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1kaXNwbGF5LW1lZGl1bS1sZXR0ZXItc3BhY2luZzogMHB4O1xuICAvKiBkaXNwbGF5IC0gc21hbGwgKi9cbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWRpc3BsYXktc21hbGwtZm9udC1mYW1pbHktbmFtZTogUm9ib3RvO1xuICAtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1zbWFsbC1mb250LWZhbWlseS1zdHlsZTogUmVndWxhcjtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWRpc3BsYXktc21hbGwtZm9udC13ZWlnaHQ6IDQwMHB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1zbWFsbC1mb250LXNpemU6IDM2cHg7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1kaXNwbGF5LXNtYWxsLWxpbmUtaGVpZ2h0OiA0NHB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1zbWFsbC1sZXR0ZXItc3BhY2luZzogMHB4O1xuICAvKiBoZWFkbGluZSAtIGxhcmdlICovXG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1oZWFkbGluZS1sYXJnZS1mb250LWZhbWlseS1uYW1lOiBSb2JvdG87XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1oZWFkbGluZS1sYXJnZS1mb250LWZhbWlseS1zdHlsZTogUmVndWxhcjtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLWxhcmdlLWZvbnQtd2VpZ2h0OiA0MDBweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLWxhcmdlLWZvbnQtc2l6ZTogMzJweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLWxhcmdlLWxpbmUtaGVpZ2h0OiA0MHB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtbGFyZ2UtbGV0dGVyLXNwYWNpbmc6IDBweDtcbiAgLyogaGVhZGxpbmUgLSBtZWRpdW0gKi9cbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLW1lZGl1bS1mb250LWZhbWlseS1uYW1lOiBSb2JvdG87XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1oZWFkbGluZS1tZWRpdW0tZm9udC1mYW1pbHktc3R5bGU6IFJlZ3VsYXI7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1oZWFkbGluZS1tZWRpdW0tZm9udC13ZWlnaHQ6IDQwMHB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtbWVkaXVtLWZvbnQtc2l6ZTogMjhweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLW1lZGl1bS1saW5lLWhlaWdodDogMzZweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLW1lZGl1bS1sZXR0ZXItc3BhY2luZzogMHB4O1xuICAvKiBoZWFkbGluZSAtIHNtYWxsICovXG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1oZWFkbGluZS1zbWFsbC1mb250LWZhbWlseS1uYW1lOiBSb2JvdG87XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1oZWFkbGluZS1zbWFsbC1mb250LWZhbWlseS1zdHlsZTogUmVndWxhcjtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLXNtYWxsLWZvbnQtd2VpZ2h0OiA0MDBweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLXNtYWxsLWZvbnQtc2l6ZTogMjRweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLXNtYWxsLWxpbmUtaGVpZ2h0OiAzMnB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtc21hbGwtbGV0dGVyLXNwYWNpbmc6IDBweDtcbiAgLyogYm9keSAtIGxhcmdlICovXG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LWxhcmdlLWZvbnQtZmFtaWx5LW5hbWU6IFJvYm90bztcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktbGFyZ2UtZm9udC1mYW1pbHktc3R5bGU6IFJlZ3VsYXI7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LWxhcmdlLWZvbnQtd2VpZ2h0OiA0MDBweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktbGFyZ2UtZm9udC1zaXplOiAxNnB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1sYXJnZS1saW5lLWhlaWdodDogMjRweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktbGFyZ2UtbGV0dGVyLXNwYWNpbmc6IDAuNTBweDtcbiAgLyogYm9keSAtIG1lZGl1bSAqL1xuICAtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1tZWRpdW0tZm9udC1mYW1pbHktbmFtZTogUm9ib3RvO1xuICAtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1tZWRpdW0tZm9udC1mYW1pbHktc3R5bGU6IFJlZ3VsYXI7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LW1lZGl1bS1mb250LXdlaWdodDogNDAwcHg7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LW1lZGl1bS1mb250LXNpemU6IDE0cHg7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LW1lZGl1bS1saW5lLWhlaWdodDogMjBweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktbWVkaXVtLWxldHRlci1zcGFjaW5nOiAwLjI1cHg7XG4gIC8qIGJvZHkgLSBzbWFsbCAqL1xuICAtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1zbWFsbC1mb250LWZhbWlseS1uYW1lOiBSb2JvdG87XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LXNtYWxsLWZvbnQtZmFtaWx5LXN0eWxlOiBSZWd1bGFyO1xuICAtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1zbWFsbC1mb250LXdlaWdodDogNDAwcHg7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LXNtYWxsLWZvbnQtc2l6ZTogMTJweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktc21hbGwtbGluZS1oZWlnaHQ6IDE2cHg7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LXNtYWxsLWxldHRlci1zcGFjaW5nOiAwLjQwcHg7XG4gIC8qIGxhYmVsIC0gbGFyZ2UgKi9cbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLWxhcmdlLWZvbnQtZmFtaWx5LW5hbWU6IFJvYm90bztcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLWxhcmdlLWZvbnQtZmFtaWx5LXN0eWxlOiBNZWRpdW07XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1sYXJnZS1mb250LXdlaWdodDogNTAwcHg7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1sYXJnZS1mb250LXNpemU6IDE0cHg7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1sYXJnZS1saW5lLWhlaWdodDogMjBweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLWxhcmdlLWxldHRlci1zcGFjaW5nOiAwLjEwcHg7XG4gIC8qIGxhYmVsIC0gbWVkaXVtICovXG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1tZWRpdW0tZm9udC1mYW1pbHktbmFtZTogUm9ib3RvO1xuICAtLW1kLXN5cy10eXBlc2NhbGUtbGFiZWwtbWVkaXVtLWZvbnQtZmFtaWx5LXN0eWxlOiBNZWRpdW07XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1tZWRpdW0tZm9udC13ZWlnaHQ6IDUwMHB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtbGFiZWwtbWVkaXVtLWZvbnQtc2l6ZTogMTJweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLW1lZGl1bS1saW5lLWhlaWdodDogMTZweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLW1lZGl1bS1sZXR0ZXItc3BhY2luZzogMC41MHB4O1xuICAvKiBsYWJlbCAtIHNtYWxsICovXG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1zbWFsbC1mb250LWZhbWlseS1uYW1lOiBSb2JvdG87XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1zbWFsbC1mb250LWZhbWlseS1zdHlsZTogTWVkaXVtO1xuICAtLW1kLXN5cy10eXBlc2NhbGUtbGFiZWwtc21hbGwtZm9udC13ZWlnaHQ6IDUwMHB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtbGFiZWwtc21hbGwtZm9udC1zaXplOiAxMXB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtbGFiZWwtc21hbGwtbGluZS1oZWlnaHQ6IDE2cHg7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1zbWFsbC1sZXR0ZXItc3BhY2luZzogMC41MHB4O1xuICAvKiB0aXRsZSAtIGxhcmdlICovXG4gIC0tbWQtc3lzLXR5cGVzY2FsZS10aXRsZS1sYXJnZS1mb250LWZhbWlseS1uYW1lOiBSb2JvdG87XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS10aXRsZS1sYXJnZS1mb250LWZhbWlseS1zdHlsZTogUmVndWxhcjtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLWxhcmdlLWZvbnQtd2VpZ2h0OiA0MDBweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLWxhcmdlLWZvbnQtc2l6ZTogMjJweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLWxhcmdlLWxpbmUtaGVpZ2h0OiAyOHB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtdGl0bGUtbGFyZ2UtbGV0dGVyLXNwYWNpbmc6IDBweDtcbiAgLyogdGl0bGUgLSBtZWRpdW0gKi9cbiAgLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLW1lZGl1bS1mb250LWZhbWlseS1uYW1lOiBSb2JvdG87XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS10aXRsZS1tZWRpdW0tZm9udC1mYW1pbHktc3R5bGU6IE1lZGl1bTtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLW1lZGl1bS1mb250LXdlaWdodDogNTAwcHg7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS10aXRsZS1tZWRpdW0tZm9udC1zaXplOiAxNnB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtdGl0bGUtbWVkaXVtLWxpbmUtaGVpZ2h0OiAyNHB4O1xuICAtLW1kLXN5cy10eXBlc2NhbGUtdGl0bGUtbWVkaXVtLWxldHRlci1zcGFjaW5nOiAwLjE1cHg7XG4gIC8qIHRpdGxlIC0gc21hbGwgKi9cbiAgLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLXNtYWxsLWZvbnQtZmFtaWx5LW5hbWU6IFJvYm90bztcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLXNtYWxsLWZvbnQtZmFtaWx5LXN0eWxlOiBNZWRpdW07XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS10aXRsZS1zbWFsbC1mb250LXdlaWdodDogNTAwcHg7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS10aXRsZS1zbWFsbC1mb250LXNpemU6IDE0cHg7XG4gIC0tbWQtc3lzLXR5cGVzY2FsZS10aXRsZS1zbWFsbC1saW5lLWhlaWdodDogMjBweDtcbiAgLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLXNtYWxsLWxldHRlci1zcGFjaW5nOiAwLjEwcHg7XG59XG4iLCIucHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1wcmltYXJ5KTtcbn1cbi5wcmltYXJ5LXRleHQge1xuICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXByaW1hcnkpO1xufVxuLm9uLXByaW1hcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tcHJpbWFyeSk7XG59XG4ub24tcHJpbWFyeS10ZXh0IHtcbiAgY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1wcmltYXJ5KTtcbn1cbi5wcmltYXJ5LWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1wcmltYXJ5LWNvbnRhaW5lcik7XG59XG4ucHJpbWFyeS1jb250YWluZXItdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3ItcHJpbWFyeS1jb250YWluZXIpO1xufVxuLm9uLXByaW1hcnktY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLXByaW1hcnktY29udGFpbmVyKTtcbn1cbi5vbi1wcmltYXJ5LWNvbnRhaW5lci10ZXh0IHtcbiAgY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1wcmltYXJ5LWNvbnRhaW5lcik7XG59XG4uc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXNlY29uZGFyeSk7XG59XG4uc2Vjb25kYXJ5LXRleHQge1xuICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXNlY29uZGFyeSk7XG59XG4ub24tc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLXNlY29uZGFyeSk7XG59XG4ub24tc2Vjb25kYXJ5LXRleHQge1xuICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLXNlY29uZGFyeSk7XG59XG4uc2Vjb25kYXJ5LWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1zZWNvbmRhcnktY29udGFpbmVyKTtcbn1cbi5zZWNvbmRhcnktY29udGFpbmVyLXRleHQge1xuICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXNlY29uZGFyeS1jb250YWluZXIpO1xufVxuLm9uLXNlY29uZGFyeS1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tc2Vjb25kYXJ5LWNvbnRhaW5lcik7XG59XG4ub24tc2Vjb25kYXJ5LWNvbnRhaW5lci10ZXh0IHtcbiAgY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1zZWNvbmRhcnktY29udGFpbmVyKTtcbn1cbi50ZXJ0aWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci10ZXJ0aWFyeSk7XG59XG4udGVydGlhcnktdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3ItdGVydGlhcnkpO1xufVxuLm9uLXRlcnRpYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLXRlcnRpYXJ5KTtcbn1cbi5vbi10ZXJ0aWFyeS10ZXh0IHtcbiAgY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1vbi10ZXJ0aWFyeSk7XG59XG4udGVydGlhcnktY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXRlcnRpYXJ5LWNvbnRhaW5lcik7XG59XG4udGVydGlhcnktY29udGFpbmVyLXRleHQge1xuICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXRlcnRpYXJ5LWNvbnRhaW5lcik7XG59XG4ub24tdGVydGlhcnktY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLXRlcnRpYXJ5LWNvbnRhaW5lcik7XG59XG4ub24tdGVydGlhcnktY29udGFpbmVyLXRleHQge1xuICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLXRlcnRpYXJ5LWNvbnRhaW5lcik7XG59XG4uZXJyb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3ItZXJyb3IpO1xufVxuLmVycm9yLXRleHQge1xuICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLWVycm9yKTtcbn1cbi5vbi1lcnJvciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1lcnJvcik7XG59XG4ub24tZXJyb3ItdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tZXJyb3IpO1xufVxuLmVycm9yLWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1lcnJvci1jb250YWluZXIpO1xufVxuLmVycm9yLWNvbnRhaW5lci10ZXh0IHtcbiAgY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1lcnJvci1jb250YWluZXIpO1xufVxuLm9uLWVycm9yLWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1lcnJvci1jb250YWluZXIpO1xufVxuLm9uLWVycm9yLWNvbnRhaW5lci10ZXh0IHtcbiAgY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1lcnJvci1jb250YWluZXIpO1xufVxuLmJhY2tncm91bmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3ItYmFja2dyb3VuZCk7XG59XG4uYmFja2dyb3VuZC10ZXh0IHtcbiAgY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1iYWNrZ3JvdW5kKTtcbn1cbi5vbi1iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLWJhY2tncm91bmQpO1xufVxuLm9uLWJhY2tncm91bmQtdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tYmFja2dyb3VuZCk7XG59XG4uc3VyZmFjZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1zdXJmYWNlKTtcbn1cbi5zdXJmYWNlLXRleHQge1xuICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXN1cmZhY2UpO1xufVxuLm9uLXN1cmZhY2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tc3VyZmFjZSk7XG59XG4ub24tc3VyZmFjZS10ZXh0IHtcbiAgY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1zdXJmYWNlKTtcbn1cbi5zdXJmYWNlLXZhcmlhbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itc3VyZmFjZS12YXJpYW50KTtcbn1cbi5zdXJmYWNlLXZhcmlhbnQtdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itc3VyZmFjZS12YXJpYW50KTtcbn1cbi5vbi1zdXJmYWNlLXZhcmlhbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tc3VyZmFjZS12YXJpYW50KTtcbn1cbi5vbi1zdXJmYWNlLXZhcmlhbnQtdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tc3VyZmFjZS12YXJpYW50KTtcbn1cbi5vdXRsaW5lIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLW91dGxpbmUpO1xufVxuLm91dGxpbmUtdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itb3V0bGluZSk7XG59XG4uaW52ZXJzZS1vbi1zdXJmYWNlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLWludmVyc2Utb24tc3VyZmFjZSk7XG59XG4uaW52ZXJzZS1vbi1zdXJmYWNlLXRleHQge1xuICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLWludmVyc2Utb24tc3VyZmFjZSk7XG59XG4uaW52ZXJzZS1zdXJmYWNlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLWludmVyc2Utc3VyZmFjZSk7XG59XG4uaW52ZXJzZS1zdXJmYWNlLXRleHQge1xuICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLWludmVyc2Utc3VyZmFjZSk7XG59XG4uaW52ZXJzZS1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLWludmVyc2UtcHJpbWFyeSk7XG59XG4uaW52ZXJzZS1wcmltYXJ5LXRleHQge1xuICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLWludmVyc2UtcHJpbWFyeSk7XG59XG4uc2hhZG93IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXNoYWRvdyk7XG59XG4uc2hhZG93LXRleHQge1xuICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXNoYWRvdyk7XG59XG4uc3VyZmFjZS10aW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXN1cmZhY2UtdGludCk7XG59XG4uc3VyZmFjZS10aW50LXRleHQge1xuICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXN1cmZhY2UtdGludCk7XG59XG4ub3V0bGluZS12YXJpYW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLW91dGxpbmUtdmFyaWFudCk7XG59XG4ub3V0bGluZS12YXJpYW50LXRleHQge1xuICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLW91dGxpbmUtdmFyaWFudCk7XG59XG4uc2NyaW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itc2NyaW0pO1xufVxuLnNjcmltLXRleHQge1xuICBjb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXNjcmltKTtcbn1cbiIsIi5kaXNwbGF5LWxhcmdle1xuICBmb250LWZhbWlseTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1kaXNwbGF5LWxhcmdlLWZvbnQtZmFtaWx5LW5hbWUpO1xuICBmb250LXN0eWxlOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWRpc3BsYXktbGFyZ2UtZm9udC1mYW1pbHktc3R5bGUpO1xuICBmb250LXdlaWdodDogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1kaXNwbGF5LWxhcmdlLWZvbnQtd2VpZ2h0KTtcbiAgZm9udC1zaXplOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWRpc3BsYXktbGFyZ2UtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1sYXJnZS10cmFja2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWRpc3BsYXktbGFyZ2UtaGVpZ2h0KTtcbiAgdGV4dC10cmFuc2Zvcm06IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1sYXJnZS10ZXh0LXRyYW5zZm9ybSk7XG4gIHRleHQtZGVjb3JhdGlvbjogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1kaXNwbGF5LWxhcmdlLXRleHQtZGVjb3JhdGlvbik7XG59XG4uZGlzcGxheS1tZWRpdW17XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWRpc3BsYXktbWVkaXVtLWZvbnQtZmFtaWx5LW5hbWUpO1xuICBmb250LXN0eWxlOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWRpc3BsYXktbWVkaXVtLWZvbnQtZmFtaWx5LXN0eWxlKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1tZWRpdW0tZm9udC13ZWlnaHQpO1xuICBmb250LXNpemU6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1tZWRpdW0tZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1tZWRpdW0tdHJhY2tpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1kaXNwbGF5LW1lZGl1bS1oZWlnaHQpO1xuICB0ZXh0LXRyYW5zZm9ybTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1kaXNwbGF5LW1lZGl1bS10ZXh0LXRyYW5zZm9ybSk7XG4gIHRleHQtZGVjb3JhdGlvbjogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1kaXNwbGF5LW1lZGl1bS10ZXh0LWRlY29yYXRpb24pO1xufVxuLmRpc3BsYXktc21hbGx7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWRpc3BsYXktc21hbGwtZm9udC1mYW1pbHktbmFtZSk7XG4gIGZvbnQtc3R5bGU6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1zbWFsbC1mb250LWZhbWlseS1zdHlsZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWRpc3BsYXktc21hbGwtZm9udC13ZWlnaHQpO1xuICBmb250LXNpemU6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1kaXNwbGF5LXNtYWxsLXRyYWNraW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtZGlzcGxheS1zbWFsbC1oZWlnaHQpO1xuICB0ZXh0LXRyYW5zZm9ybTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1kaXNwbGF5LXNtYWxsLXRleHQtdHJhbnNmb3JtKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWRpc3BsYXktc21hbGwtdGV4dC1kZWNvcmF0aW9uKTtcbn1cbi5oZWFkbGluZS1sYXJnZXtcbiAgZm9udC1mYW1pbHk6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtbGFyZ2UtZm9udC1mYW1pbHktbmFtZSk7XG4gIGZvbnQtc3R5bGU6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtbGFyZ2UtZm9udC1mYW1pbHktc3R5bGUpO1xuICBmb250LXdlaWdodDogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1oZWFkbGluZS1sYXJnZS1mb250LXdlaWdodCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1oZWFkbGluZS1sYXJnZS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1oZWFkbGluZS1sYXJnZS10cmFja2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLWxhcmdlLWhlaWdodCk7XG4gIHRleHQtdHJhbnNmb3JtOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLWxhcmdlLXRleHQtdHJhbnNmb3JtKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLWxhcmdlLXRleHQtZGVjb3JhdGlvbik7XG59XG4uaGVhZGxpbmUtbWVkaXVte1xuICBmb250LWZhbWlseTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1oZWFkbGluZS1tZWRpdW0tZm9udC1mYW1pbHktbmFtZSk7XG4gIGZvbnQtc3R5bGU6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtbWVkaXVtLWZvbnQtZmFtaWx5LXN0eWxlKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtbWVkaXVtLWZvbnQtd2VpZ2h0KTtcbiAgZm9udC1zaXplOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLW1lZGl1bS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1oZWFkbGluZS1tZWRpdW0tdHJhY2tpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1oZWFkbGluZS1tZWRpdW0taGVpZ2h0KTtcbiAgdGV4dC10cmFuc2Zvcm06IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtbWVkaXVtLXRleHQtdHJhbnNmb3JtKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLW1lZGl1bS10ZXh0LWRlY29yYXRpb24pO1xufVxuLmhlYWRsaW5lLXNtYWxse1xuICBmb250LWZhbWlseTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1oZWFkbGluZS1zbWFsbC1mb250LWZhbWlseS1uYW1lKTtcbiAgZm9udC1zdHlsZTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1oZWFkbGluZS1zbWFsbC1mb250LWZhbWlseS1zdHlsZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLXNtYWxsLWZvbnQtd2VpZ2h0KTtcbiAgZm9udC1zaXplOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWhlYWRsaW5lLXNtYWxsLXRyYWNraW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtc21hbGwtaGVpZ2h0KTtcbiAgdGV4dC10cmFuc2Zvcm06IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtc21hbGwtdGV4dC10cmFuc2Zvcm0pO1xuICB0ZXh0LWRlY29yYXRpb246IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtaGVhZGxpbmUtc21hbGwtdGV4dC1kZWNvcmF0aW9uKTtcbn1cbi5ib2R5LWxhcmdle1xuICBmb250LWZhbWlseTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LWxhcmdlLWZvbnQtZmFtaWx5LW5hbWUpO1xuICBmb250LXN0eWxlOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktbGFyZ2UtZm9udC1mYW1pbHktc3R5bGUpO1xuICBmb250LXdlaWdodDogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LWxhcmdlLWZvbnQtd2VpZ2h0KTtcbiAgZm9udC1zaXplOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktbGFyZ2UtZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1sYXJnZS10cmFja2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktbGFyZ2UtaGVpZ2h0KTtcbiAgdGV4dC10cmFuc2Zvcm06IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1sYXJnZS10ZXh0LXRyYW5zZm9ybSk7XG4gIHRleHQtZGVjb3JhdGlvbjogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LWxhcmdlLXRleHQtZGVjb3JhdGlvbik7XG59XG4uYm9keS1tZWRpdW17XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktbWVkaXVtLWZvbnQtZmFtaWx5LW5hbWUpO1xuICBmb250LXN0eWxlOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktbWVkaXVtLWZvbnQtZmFtaWx5LXN0eWxlKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1tZWRpdW0tZm9udC13ZWlnaHQpO1xuICBmb250LXNpemU6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1tZWRpdW0tZm9udC1zaXplKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1tZWRpdW0tdHJhY2tpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LW1lZGl1bS1oZWlnaHQpO1xuICB0ZXh0LXRyYW5zZm9ybTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LW1lZGl1bS10ZXh0LXRyYW5zZm9ybSk7XG4gIHRleHQtZGVjb3JhdGlvbjogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LW1lZGl1bS10ZXh0LWRlY29yYXRpb24pO1xufVxuLmJvZHktc21hbGx7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktc21hbGwtZm9udC1mYW1pbHktbmFtZSk7XG4gIGZvbnQtc3R5bGU6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1zbWFsbC1mb250LWZhbWlseS1zdHlsZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktc21hbGwtZm9udC13ZWlnaHQpO1xuICBmb250LXNpemU6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1zbWFsbC1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LXNtYWxsLXRyYWNraW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1zbWFsbC1oZWlnaHQpO1xuICB0ZXh0LXRyYW5zZm9ybTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1ib2R5LXNtYWxsLXRleHQtdHJhbnNmb3JtKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktc21hbGwtdGV4dC1kZWNvcmF0aW9uKTtcbn1cbi5sYWJlbC1sYXJnZXtcbiAgZm9udC1mYW1pbHk6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtbGFiZWwtbGFyZ2UtZm9udC1mYW1pbHktbmFtZSk7XG4gIGZvbnQtc3R5bGU6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtbGFiZWwtbGFyZ2UtZm9udC1mYW1pbHktc3R5bGUpO1xuICBmb250LXdlaWdodDogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1sYXJnZS1mb250LXdlaWdodCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1sYXJnZS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1sYXJnZS10cmFja2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLWxhcmdlLWhlaWdodCk7XG4gIHRleHQtdHJhbnNmb3JtOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLWxhcmdlLXRleHQtdHJhbnNmb3JtKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLWxhcmdlLXRleHQtZGVjb3JhdGlvbik7XG59XG4ubGFiZWwtbWVkaXVte1xuICBmb250LWZhbWlseTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1tZWRpdW0tZm9udC1mYW1pbHktbmFtZSk7XG4gIGZvbnQtc3R5bGU6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtbGFiZWwtbWVkaXVtLWZvbnQtZmFtaWx5LXN0eWxlKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtbGFiZWwtbWVkaXVtLWZvbnQtd2VpZ2h0KTtcbiAgZm9udC1zaXplOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLW1lZGl1bS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1tZWRpdW0tdHJhY2tpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1tZWRpdW0taGVpZ2h0KTtcbiAgdGV4dC10cmFuc2Zvcm06IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtbGFiZWwtbWVkaXVtLXRleHQtdHJhbnNmb3JtKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLW1lZGl1bS10ZXh0LWRlY29yYXRpb24pO1xufVxuLmxhYmVsLXNtYWxse1xuICBmb250LWZhbWlseTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1zbWFsbC1mb250LWZhbWlseS1uYW1lKTtcbiAgZm9udC1zdHlsZTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS1sYWJlbC1zbWFsbC1mb250LWZhbWlseS1zdHlsZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLXNtYWxsLWZvbnQtd2VpZ2h0KTtcbiAgZm9udC1zaXplOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWxhYmVsLXNtYWxsLXRyYWNraW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtbGFiZWwtc21hbGwtaGVpZ2h0KTtcbiAgdGV4dC10cmFuc2Zvcm06IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtbGFiZWwtc21hbGwtdGV4dC10cmFuc2Zvcm0pO1xuICB0ZXh0LWRlY29yYXRpb246IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtbGFiZWwtc21hbGwtdGV4dC1kZWNvcmF0aW9uKTtcbn1cbi50aXRsZS1sYXJnZXtcbiAgZm9udC1mYW1pbHk6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtdGl0bGUtbGFyZ2UtZm9udC1mYW1pbHktbmFtZSk7XG4gIGZvbnQtc3R5bGU6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtdGl0bGUtbGFyZ2UtZm9udC1mYW1pbHktc3R5bGUpO1xuICBmb250LXdlaWdodDogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS10aXRsZS1sYXJnZS1mb250LXdlaWdodCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS10aXRsZS1sYXJnZS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS10aXRsZS1sYXJnZS10cmFja2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLWxhcmdlLWhlaWdodCk7XG4gIHRleHQtdHJhbnNmb3JtOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLWxhcmdlLXRleHQtdHJhbnNmb3JtKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLWxhcmdlLXRleHQtZGVjb3JhdGlvbik7XG59XG4udGl0bGUtbWVkaXVte1xuICBmb250LWZhbWlseTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS10aXRsZS1tZWRpdW0tZm9udC1mYW1pbHktbmFtZSk7XG4gIGZvbnQtc3R5bGU6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtdGl0bGUtbWVkaXVtLWZvbnQtZmFtaWx5LXN0eWxlKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtdGl0bGUtbWVkaXVtLWZvbnQtd2VpZ2h0KTtcbiAgZm9udC1zaXplOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLW1lZGl1bS1mb250LXNpemUpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS10aXRsZS1tZWRpdW0tdHJhY2tpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS10aXRsZS1tZWRpdW0taGVpZ2h0KTtcbiAgdGV4dC10cmFuc2Zvcm06IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtdGl0bGUtbWVkaXVtLXRleHQtdHJhbnNmb3JtKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLW1lZGl1bS10ZXh0LWRlY29yYXRpb24pO1xufVxuLnRpdGxlLXNtYWxse1xuICBmb250LWZhbWlseTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS10aXRsZS1zbWFsbC1mb250LWZhbWlseS1uYW1lKTtcbiAgZm9udC1zdHlsZTogdmFyKC0tbWQtc3lzLXR5cGVzY2FsZS10aXRsZS1zbWFsbC1mb250LWZhbWlseS1zdHlsZSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLXNtYWxsLWZvbnQtd2VpZ2h0KTtcbiAgZm9udC1zaXplOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLXNtYWxsLWZvbnQtc2l6ZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLXRpdGxlLXNtYWxsLXRyYWNraW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtdGl0bGUtc21hbGwtaGVpZ2h0KTtcbiAgdGV4dC10cmFuc2Zvcm06IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtdGl0bGUtc21hbGwtdGV4dC10cmFuc2Zvcm0pO1xuICB0ZXh0LWRlY29yYXRpb246IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtdGl0bGUtc21hbGwtdGV4dC1kZWNvcmF0aW9uKTtcbn1cbiIsIjpyb290IHtcbiAtLW1kLXN5cy1jb2xvci1wcmltYXJ5OiB2YXIoLS1tZC1zeXMtY29sb3ItcHJpbWFyeS1saWdodCk7XG4gLS1tZC1zeXMtY29sb3Itb24tcHJpbWFyeTogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLXByaW1hcnktbGlnaHQpO1xuIC0tbWQtc3lzLWNvbG9yLXByaW1hcnktY29udGFpbmVyOiB2YXIoLS1tZC1zeXMtY29sb3ItcHJpbWFyeS1jb250YWluZXItbGlnaHQpO1xuIC0tbWQtc3lzLWNvbG9yLW9uLXByaW1hcnktY29udGFpbmVyOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tcHJpbWFyeS1jb250YWluZXItbGlnaHQpO1xuIC0tbWQtc3lzLWNvbG9yLXNlY29uZGFyeTogdmFyKC0tbWQtc3lzLWNvbG9yLXNlY29uZGFyeS1saWdodCk7XG4gLS1tZC1zeXMtY29sb3Itb24tc2Vjb25kYXJ5OiB2YXIoLS1tZC1zeXMtY29sb3Itb24tc2Vjb25kYXJ5LWxpZ2h0KTtcbiAtLW1kLXN5cy1jb2xvci1zZWNvbmRhcnktY29udGFpbmVyOiB2YXIoLS1tZC1zeXMtY29sb3Itc2Vjb25kYXJ5LWNvbnRhaW5lci1saWdodCk7XG4gLS1tZC1zeXMtY29sb3Itb24tc2Vjb25kYXJ5LWNvbnRhaW5lcjogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLXNlY29uZGFyeS1jb250YWluZXItbGlnaHQpO1xuIC0tbWQtc3lzLWNvbG9yLXRlcnRpYXJ5OiB2YXIoLS1tZC1zeXMtY29sb3ItdGVydGlhcnktbGlnaHQpO1xuIC0tbWQtc3lzLWNvbG9yLW9uLXRlcnRpYXJ5OiB2YXIoLS1tZC1zeXMtY29sb3Itb24tdGVydGlhcnktbGlnaHQpO1xuIC0tbWQtc3lzLWNvbG9yLXRlcnRpYXJ5LWNvbnRhaW5lcjogdmFyKC0tbWQtc3lzLWNvbG9yLXRlcnRpYXJ5LWNvbnRhaW5lci1saWdodCk7XG4gLS1tZC1zeXMtY29sb3Itb24tdGVydGlhcnktY29udGFpbmVyOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tdGVydGlhcnktY29udGFpbmVyLWxpZ2h0KTtcbiAtLW1kLXN5cy1jb2xvci1lcnJvcjogdmFyKC0tbWQtc3lzLWNvbG9yLWVycm9yLWxpZ2h0KTtcbiAtLW1kLXN5cy1jb2xvci1vbi1lcnJvcjogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLWVycm9yLWxpZ2h0KTtcbiAtLW1kLXN5cy1jb2xvci1lcnJvci1jb250YWluZXI6IHZhcigtLW1kLXN5cy1jb2xvci1lcnJvci1jb250YWluZXItbGlnaHQpO1xuIC0tbWQtc3lzLWNvbG9yLW9uLWVycm9yLWNvbnRhaW5lcjogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLWVycm9yLWNvbnRhaW5lci1saWdodCk7XG4gLS1tZC1zeXMtY29sb3Itb3V0bGluZTogdmFyKC0tbWQtc3lzLWNvbG9yLW91dGxpbmUtbGlnaHQpO1xuIC0tbWQtc3lzLWNvbG9yLWJhY2tncm91bmQ6IHZhcigtLW1kLXN5cy1jb2xvci1iYWNrZ3JvdW5kLWxpZ2h0KTtcbiAtLW1kLXN5cy1jb2xvci1vbi1iYWNrZ3JvdW5kOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tYmFja2dyb3VuZC1saWdodCk7XG4gLS1tZC1zeXMtY29sb3Itc3VyZmFjZTogdmFyKC0tbWQtc3lzLWNvbG9yLXN1cmZhY2UtbGlnaHQpO1xuIC0tbWQtc3lzLWNvbG9yLW9uLXN1cmZhY2U6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1zdXJmYWNlLWxpZ2h0KTtcbiAtLW1kLXN5cy1jb2xvci1zdXJmYWNlLXZhcmlhbnQ6IHZhcigtLW1kLXN5cy1jb2xvci1zdXJmYWNlLXZhcmlhbnQtbGlnaHQpO1xuIC0tbWQtc3lzLWNvbG9yLW9uLXN1cmZhY2UtdmFyaWFudDogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLXN1cmZhY2UtdmFyaWFudC1saWdodCk7XG4gLS1tZC1zeXMtY29sb3ItaW52ZXJzZS1zdXJmYWNlOiB2YXIoLS1tZC1zeXMtY29sb3ItaW52ZXJzZS1zdXJmYWNlLWxpZ2h0KTtcbiAtLW1kLXN5cy1jb2xvci1pbnZlcnNlLW9uLXN1cmZhY2U6IHZhcigtLW1kLXN5cy1jb2xvci1pbnZlcnNlLW9uLXN1cmZhY2UtbGlnaHQpO1xuIC0tbWQtc3lzLWNvbG9yLWludmVyc2UtcHJpbWFyeTogdmFyKC0tbWQtc3lzLWNvbG9yLWludmVyc2UtcHJpbWFyeS1saWdodCk7XG4gLS1tZC1zeXMtY29sb3Itc2hhZG93OiB2YXIoLS1tZC1zeXMtY29sb3Itc2hhZG93LWxpZ2h0KTtcbiAtLW1kLXN5cy1jb2xvci1zdXJmYWNlLXRpbnQ6IHZhcigtLW1kLXN5cy1jb2xvci1zdXJmYWNlLXRpbnQtbGlnaHQpO1xuIC0tbWQtc3lzLWNvbG9yLW91dGxpbmUtdmFyaWFudDogdmFyKC0tbWQtc3lzLWNvbG9yLW91dGxpbmUtdmFyaWFudC1saWdodCk7XG4gLS1tZC1zeXMtY29sb3Itc2NyaW06IHZhcigtLW1kLXN5cy1jb2xvci1zY3JpbS1saWdodCk7XG59XG4iLCI6cm9vdFt0aGVtZT0nZGFyayddIHtcbiAtLW1kLXN5cy1jb2xvci1wcmltYXJ5OiB2YXIoLS1tZC1zeXMtY29sb3ItcHJpbWFyeS1kYXJrKTtcbiAtLW1kLXN5cy1jb2xvci1vbi1wcmltYXJ5OiB2YXIoLS1tZC1zeXMtY29sb3Itb24tcHJpbWFyeS1kYXJrKTtcbiAtLW1kLXN5cy1jb2xvci1wcmltYXJ5LWNvbnRhaW5lcjogdmFyKC0tbWQtc3lzLWNvbG9yLXByaW1hcnktY29udGFpbmVyLWRhcmspO1xuIC0tbWQtc3lzLWNvbG9yLW9uLXByaW1hcnktY29udGFpbmVyOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tcHJpbWFyeS1jb250YWluZXItZGFyayk7XG4gLS1tZC1zeXMtY29sb3Itc2Vjb25kYXJ5OiB2YXIoLS1tZC1zeXMtY29sb3Itc2Vjb25kYXJ5LWRhcmspO1xuIC0tbWQtc3lzLWNvbG9yLW9uLXNlY29uZGFyeTogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLXNlY29uZGFyeS1kYXJrKTtcbiAtLW1kLXN5cy1jb2xvci1zZWNvbmRhcnktY29udGFpbmVyOiB2YXIoLS1tZC1zeXMtY29sb3Itc2Vjb25kYXJ5LWNvbnRhaW5lci1kYXJrKTtcbiAtLW1kLXN5cy1jb2xvci1vbi1zZWNvbmRhcnktY29udGFpbmVyOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tc2Vjb25kYXJ5LWNvbnRhaW5lci1kYXJrKTtcbiAtLW1kLXN5cy1jb2xvci10ZXJ0aWFyeTogdmFyKC0tbWQtc3lzLWNvbG9yLXRlcnRpYXJ5LWRhcmspO1xuIC0tbWQtc3lzLWNvbG9yLW9uLXRlcnRpYXJ5OiB2YXIoLS1tZC1zeXMtY29sb3Itb24tdGVydGlhcnktZGFyayk7XG4gLS1tZC1zeXMtY29sb3ItdGVydGlhcnktY29udGFpbmVyOiB2YXIoLS1tZC1zeXMtY29sb3ItdGVydGlhcnktY29udGFpbmVyLWRhcmspO1xuIC0tbWQtc3lzLWNvbG9yLW9uLXRlcnRpYXJ5LWNvbnRhaW5lcjogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLXRlcnRpYXJ5LWNvbnRhaW5lci1kYXJrKTtcbiAtLW1kLXN5cy1jb2xvci1lcnJvcjogdmFyKC0tbWQtc3lzLWNvbG9yLWVycm9yLWRhcmspO1xuIC0tbWQtc3lzLWNvbG9yLW9uLWVycm9yOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tZXJyb3ItZGFyayk7XG4gLS1tZC1zeXMtY29sb3ItZXJyb3ItY29udGFpbmVyOiB2YXIoLS1tZC1zeXMtY29sb3ItZXJyb3ItY29udGFpbmVyLWRhcmspO1xuIC0tbWQtc3lzLWNvbG9yLW9uLWVycm9yLWNvbnRhaW5lcjogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLWVycm9yLWNvbnRhaW5lci1kYXJrKTtcbiAtLW1kLXN5cy1jb2xvci1vdXRsaW5lOiB2YXIoLS1tZC1zeXMtY29sb3Itb3V0bGluZS1kYXJrKTtcbiAtLW1kLXN5cy1jb2xvci1iYWNrZ3JvdW5kOiB2YXIoLS1tZC1zeXMtY29sb3ItYmFja2dyb3VuZC1kYXJrKTtcbiAtLW1kLXN5cy1jb2xvci1vbi1iYWNrZ3JvdW5kOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tYmFja2dyb3VuZC1kYXJrKTtcbiAtLW1kLXN5cy1jb2xvci1zdXJmYWNlOiB2YXIoLS1tZC1zeXMtY29sb3Itc3VyZmFjZS1kYXJrKTtcbiAtLW1kLXN5cy1jb2xvci1vbi1zdXJmYWNlOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tc3VyZmFjZS1kYXJrKTtcbiAtLW1kLXN5cy1jb2xvci1zdXJmYWNlLXZhcmlhbnQ6IHZhcigtLW1kLXN5cy1jb2xvci1zdXJmYWNlLXZhcmlhbnQtZGFyayk7XG4gLS1tZC1zeXMtY29sb3Itb24tc3VyZmFjZS12YXJpYW50OiB2YXIoLS1tZC1zeXMtY29sb3Itb24tc3VyZmFjZS12YXJpYW50LWRhcmspO1xuIC0tbWQtc3lzLWNvbG9yLWludmVyc2Utc3VyZmFjZTogdmFyKC0tbWQtc3lzLWNvbG9yLWludmVyc2Utc3VyZmFjZS1kYXJrKTtcbiAtLW1kLXN5cy1jb2xvci1pbnZlcnNlLW9uLXN1cmZhY2U6IHZhcigtLW1kLXN5cy1jb2xvci1pbnZlcnNlLW9uLXN1cmZhY2UtZGFyayk7XG4gLS1tZC1zeXMtY29sb3ItaW52ZXJzZS1wcmltYXJ5OiB2YXIoLS1tZC1zeXMtY29sb3ItaW52ZXJzZS1wcmltYXJ5LWRhcmspO1xuIC0tbWQtc3lzLWNvbG9yLXNoYWRvdzogdmFyKC0tbWQtc3lzLWNvbG9yLXNoYWRvdy1kYXJrKTtcbiAtLW1kLXN5cy1jb2xvci1zdXJmYWNlLXRpbnQ6IHZhcigtLW1kLXN5cy1jb2xvci1zdXJmYWNlLXRpbnQtZGFyayk7XG4gLS1tZC1zeXMtY29sb3Itb3V0bGluZS12YXJpYW50OiB2YXIoLS1tZC1zeXMtY29sb3Itb3V0bGluZS12YXJpYW50LWRhcmspO1xuIC0tbWQtc3lzLWNvbG9yLXNjcmltOiB2YXIoLS1tZC1zeXMtY29sb3Itc2NyaW0tZGFyayk7XG59XG4iLCI6cm9vdCwgOmhvc3Qge1xuICAgIC0tc3VyZmFjZS1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXN1cmZhY2UpO1xuICAgIC0tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLWJhY2tncm91bmQpO1xuXG4gICAgLS1mb250LWNvbG9yLW1haW46IHZhcigtLW1kLXN5cy1jb2xvci1vbi1iYWNrZ3JvdW5kKTtcbiAgICAtLWZvbnQtY29sb3ItbWVkaXVtOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tc3VyZmFjZS12YXJpYW50KTtcbiAgICAtLWZvbnQtY29sb3ItZGlzYWJsZWQ6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1zdXJmYWNlKTtcblxuICAgIC0tZm9udC1vbi1wcmltYXJ5LWNvbG9yLW1haW46IHZhcigtLW1kLXN5cy1jb2xvci1vbi1wcmltYXJ5KTtcbiAgICAtLWZvbnQtb24tcHJpbWFyeS1jb2xvci1kYXJrLW1haW46IHZhcigtLW1kLXN5cy1jb2xvci1vbi1wcmltYXJ5LWRhcmspO1xuICAgIC0tZm9udC1vbi1wcmltYXJ5LWNvbG9yLWRhcmstbWVkaXVtOiB2YXIoLS1tZC1zeXMtY29sb3Itb24tc3VyZmFjZS12YXJpYW50LWRhcmspO1xuICAgIC0tZm9udC1vbi1wcmltYXJ5LWNvbG9yLW1lZGl1bTogIHZhcigtLW1kLXN5cy1jb2xvci1vbi1zdXJmYWNlLXZhcmlhbnQpO1xuICAgIC0tZm9udC1vbi1wcmltYXJ5LWNvbG9yLWRpc2FibGVkOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzgpO1xuICAgIC0tZm9udC1vbi1zZWNvbmRhcnktY29sb3ItbWFpbjogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLXNlY29uZGFyeSk7XG5cbiAgICAtLWhvdmVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDQpO1xuICAgIC0tZm9jdXMtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xMik7XG4gICAgLS1mb2N1cy1jb2xvci1zb2xpZDogI0UwRTBFMDtcblxuICAgIC0tYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZDogcmdiYSgwLCAwLCAwLCAwLjEyKTtcbiAgICAtLWJhY2tncm91bmQtY29sb3ItbGV2ZWwtNGRwOiByZ2JhKDAsIDAsIDAsIDAuMDkpO1xuICAgIC0tYmFja2dyb3VuZC1jb2xvci1sZXZlbC0xNmRwLXNvbGlkOiB2YXIoLS1zdXJmYWNlLWNvbG9yKTtcbiAgICAtLWJhY2tncm91bmQtY29sb3Itc2xpZ2h0LWVtcGhhc2lzOiByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuICAgIC0tYmFja2dyb3VuZC1jb2xvci1jYXJkOiB2YXIoLS1zdXJmYWNlLWNvbG9yKTtcblxuICAgIC0tdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yOiAjMzEzMDMzO1xuICAgIC0tdG9vbHRpcC1mb250LWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzcpO1xuXG4gICAgLS1zZXBhcmF0b3ItY29sb3I6ICNEREREREQ7IC8qIGJvcmRlcnMgYmV0d2VlbiBjb21wb25lbnRzICovXG5cbiAgICAtLWVycm9yLWNvbG9yOiAjRjQ0MzM2O1xuXG4gICAgLS1zbGlkZXItdHJhY2stY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1zaGFkb3ctbGlnaHQpO1xuICAgIC0tc3dpdGNoLXRodW1iLW9mZi1jb2xvcjogdmFyKC0tbWQtcmVmLXBhbGV0dGUtcHJpbWFyeTEwMCk7XG5cbiAgICAtLWNhcm91c2VsLWluZGljYXRvci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQ1KTtcbiAgICAtLWNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtY29sb3I6IHZhcigtLW1kLXJlZi1wYWxldHRlLXByaW1hcnkxMDApO1xuXG4gICAgLS1wcmltYXJ5LWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3ItcHJpbWFyeSk7XG4gICAgLS1wcmltYXJ5LWNvbG9yLWRhcms6IHZhcigtLW1kLXN5cy1jb2xvci1wcmltYXJ5LWRhcmspOyAgICBcbiAgICAtLXByaW1hcnktY29sb3ItcmFpc2VkLWhvdmVyLXNvbGlkOiB2YXIoLS1tZC1yZWYtcGFsZXR0ZS1wcmltYXJ5NzApO1xuICAgIC0tcHJpbWFyeS1jb2xvci1yYWlzZWQtZm9jdXMtc29saWQ6IHZhcigtLW1kLXJlZi1wYWxldHRlLXByaW1hcnk4MCk7XG4gICAgLS1wcmltYXJ5LWNvbG9yLWZvbnQtbWVkaXVtLWNvbG9yOiByZ2JhKHZhcigtLXByaW1hcnktY29sb3ItbnVtZXJpYyksIDAuNyk7XG4gICAgLS1wcmltYXJ5LWNvbG9yLWZvbnQtZGlzYWJsZWQtY29sb3I6IHJnYmEodmFyKC0tcHJpbWFyeS1jb2xvci1udW1lcmljKSwgMC40KTtcbiAgICAtLXByaW1hcnktY29sb3ItaG92ZXItb3BhcXVlOiByZ2JhKHZhcigtLXByaW1hcnktY29sb3ItbnVtZXJpYyksIDAuMDYpO1xuICAgIC0tcHJpbWFyeS1jb2xvci1mb2N1cy1vcGFxdWU6IHJnYmEodmFyKC0tcHJpbWFyeS1jb2xvci1udW1lcmljKSwgMC4xOCk7XG5cbiAgICAtLXNlY29uZGFyeS1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLXNlY29uZGFyeSk7XG4gICAgLS1zZWNvbmRhcnktY29sb3ItaG92ZXItc29saWQ6IHZhcigtLW1kLXJlZi1wYWxldHRlLXNlY29uZGFyeTcwKTtcbiAgICAtLXNlY29uZGFyeS1jb2xvci1mb2N1cy1zb2xpZDogIHZhcigtLW1kLXJlZi1wYWxldHRlLXNlY29uZGFyeTgwKTtcbiAgICAtLXNlY29uZGFyeS1jb250YWluZXItY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1zZWNvbmRhcnktY29udGFpbmVyKTtcbiAgICAtLWZvbnQtb24tc2Vjb25kYXJ5LWNvbnRhaW5lci1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLW9uLXNlY29uZGFyeS1jb250YWluZXIpO1xuXG4gICAgLS1tZF9zeXNfY29sb3Jfb24tc3VyZmFjZTogMjgsIDI3LCAzMTtcbn1cblxuLy9pbXBvcnRhbnQ6IHdoZW4gYWxsIHZhcmlhYmxlcyBhcmUgYXNzaWduZWQgdGhpcyBjb3VsZCBiZSByZW1vdmVkIGFzIHdpbGwgYmUgbm8gZGlmZmVyZW5jZVxuOnJvb3RbdGhlbWU9J2RhcmsnXSB7XG4gICAgLS1mb250LW9uLXByaW1hcnktY29sb3ItZGlzYWJsZWQ6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XG5cbiAgICAtLWhvdmVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDQpO1xuICAgIC0tZm9jdXMtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMik7XG4gICAgLS1mb2N1cy1jb2xvci1zb2xpZDogIzQyNDI0MjtcblxuICAgIC0tYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEyKTtcbiAgICAtLWJhY2tncm91bmQtY29sb3ItbGV2ZWwtNGRwOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDkpO1xuICAgIC0tYmFja2dyb3VuZC1jb2xvci1zbGlnaHQtZW1waGFzaXM6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7XG5cbiAgICAtLXNlcGFyYXRvci1jb2xvcjogIzQyNDI0MjsgLyogYm9yZGVycyBiZXR3ZWVuIGNvbXBvbmVudHMgKi9cblxuICAgIC0tZXJyb3ItY29sb3I6ICNDRjY2Nzk7XG5cbiAgICAtLXN3aXRjaC10aHVtYi1vZmYtY29sb3I6ICNiYWJhYmE7XG5cbiAgICAtLW1kX3N5c19jb2xvcl9vbi1zdXJmYWNlOiAyMzAsIDIyNSwgMjI5O1xufVxuXG5cbiIsIi8vIENvbG9yIENsYXNzZXNcblxuQGVhY2ggJGNvbG9yX25hbWUsICRjb2xvciBpbiAkY29sb3JzIHtcbiAgQGVhY2ggJGNvbG9yX3R5cGUsICRjb2xvcl92YWx1ZSBpbiAkY29sb3Ige1xuICAgIEBpZiAkY29sb3JfdHlwZSA9PSBcImJhc2VcIiB7XG4gICAgICAuI3skY29sb3JfbmFtZX0ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JfdmFsdWUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIC4jeyRjb2xvcl9uYW1lfS10ZXh0IHtcbiAgICAgICAgY29sb3I6ICRjb2xvcl92YWx1ZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSBpZiAkY29sb3JfbmFtZSAhPSBcInNoYWRlc1wiIHtcbiAgICAgIC4jeyRjb2xvcl9uYW1lfS4jeyRjb2xvcl90eXBlfSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl92YWx1ZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgLiN7JGNvbG9yX25hbWV9LXRleHQudGV4dC0jeyRjb2xvcl90eXBlfSB7XG4gICAgICAgIGNvbG9yOiAkY29sb3JfdmFsdWUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gU2hhZGUgY2xhc3Nlc1xuQGVhY2ggJGNvbG9yLCAkY29sb3JfdmFsdWUgaW4gJHNoYWRlcyB7XG4gIC4jeyRjb2xvcn0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcl92YWx1ZSAhaW1wb3J0YW50O1xuICB9XG4gIC4jeyRjb2xvcn0tdGV4dCB7XG4gICAgY29sb3I6ICRjb2xvcl92YWx1ZSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjEgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICovXG5cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbn1cblxuLyogU2VjdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogUmVuZGVyIHRoZSBgbWFpbmAgZWxlbWVudCBjb25zaXN0ZW50bHkgaW4gSUUuXG4gKi9cblxubWFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICBtYXJnaW46IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQgeyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7IC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICovXG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLyogSW50ZXJhY3RpdmVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuICovXG5cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKiBNaXNjXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAqL1xuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG4gKi9cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufSIsImh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4qLCAqOmJlZm9yZSwgKjphZnRlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1zdGFjaztcbn1cblxuYSB7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAvLyBHZXRzIHJpZCBvZiB0YXAgYWN0aXZlIHN0YXRlXG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8vIFBvc2l0aW9uaW5nXG4udmFsaWduLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4vLyBjbGFzc2ljIGNsZWFyZml4XG4uY2xlYXJmaXgge1xuICBjbGVhcjogYm90aDtcbn1cblxuLy8gWi1sZXZlbHNcbi56LWRlcHRoLTAge1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qIDJkcCBlbGV2YXRpb24gbW9kaWZpZWQqL1xuLnotZGVwdGgtMSB7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDJweCAwIHJnYmEoMCwgMCwgMCwgMC4xNCksXG4gIDAgM3B4IDFweCAtMnB4IHJnYmEoMCwgMCwgMCwgMC4xMiksXG4gIDAgMXB4IDVweCAwIHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cblxuLnotZGVwdGgtMS1oYWxmIHtcbiAgYm94LXNoYWRvdzogMCAzcHggM3B4IDAgcmdiYSgwLCAwLCAwLCAwLjE0KSwgMCAxcHggN3B4IDAgcmdiYSgwLCAwLCAwLCAwLjEyKSwgMCAzcHggMXB4IC0xcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG4vKiA2ZHAgZWxldmF0aW9uIG1vZGlmaWVkKi9cbi56LWRlcHRoLTIge1xuICBib3gtc2hhZG93OiAwIDRweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTQpLFxuICAwIDFweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEyKSxcbiAgMCAycHggNHB4IC0xcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xufVxuXG4vKiAxMmRwIGVsZXZhdGlvbiBtb2RpZmllZCovXG4uei1kZXB0aC0zIHtcbiAgYm94LXNoYWRvdzogMCA4cHggMTdweCAycHggcmdiYSgwLCAwLCAwLCAwLjE0KSxcbiAgMCAzcHggMTRweCAycHggcmdiYSgwLCAwLCAwLCAwLjEyKSxcbiAgMCA1cHggNXB4IC0zcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG4vKiAxNmRwIGVsZXZhdGlvbiAqL1xuLnotZGVwdGgtNCB7XG4gIGJveC1zaGFkb3c6IDAgMTZweCAyNHB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMTQpLFxuICAwIDZweCAzMHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMTIpLFxuICAwIDhweCAxMHB4IC03cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG4vKiAyNGRwIGVsZXZhdGlvbiAqL1xuLnotZGVwdGgtNSB7XG4gIGJveC1zaGFkb3c6IDAgMjRweCAzOHB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMTQpLFxuICAwIDlweCA0NnB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMTIpLFxuICAwIDExcHggMTVweCAtN3B4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cblxuLmhvdmVyYWJsZSB7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgLjI1cztcbiAgJjpob3ZlciB7XG4gICAgYm94LXNoYWRvdzogMCA4cHggMTdweCAwIHJnYmEoMCwgMCwgMCwgMC4yKSwgMCA2cHggMjBweCAwIHJnYmEoMCwgMCwgMCwgMC4xOSk7XG4gIH1cbn1cblxuLy8gRGl2aWRlcnNcbi5kaXZpZGVyIHtcbiAgaGVpZ2h0OiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6ICRkaXZpZGVyLWNvbG9yO1xufVxuXG4vLyAgQmxvY2txdW90ZVxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMjBweCAwO1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcbn1cblxuLy8gSWNvbiBTdHlsZXNcbmkge1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgJi5sZWZ0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogLThweDtcbiAgICAvLyBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gIH1cbiAgJi5yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIC8vIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICB9XG4gICYudGlueSB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG4gICYuc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgfVxuICAmLm1lZGl1bSB7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICB9XG4gICYubGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogNnJlbTtcbiAgfVxufVxuXG4vLyBJbWFnZXNcbmltZy5yZXNwb25zaXZlLWltZyxcbnZpZGVvLnJlc3BvbnNpdmUtdmlkZW8ge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLy8gUGFnaW5hdGlvblxuLnBhZ2luYXRpb24ge1xuXG4gIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGhlaWdodDogMzBweDtcblxuICAgIGEge1xuICAgICAgY29sb3I6ICRmb250LWNvbG9yLW1lZGl1bTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgfVxuXG4gICAgJjpob3Zlcjpub3QoLmRpc2FibGVkKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvci1ob3Zlci1vcGFxdWU7XG4gICAgfVxuXG4gICAgJi5hY3RpdmUgYSB7XG4gICAgICBjb2xvcjogJGZvbnQtb24tcHJpbWFyeS1jb2xvci1tYWluO1xuICAgIH1cblxuICAgICYuYWN0aXZlLFxuICAgICYuYWN0aXZlOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQgYSB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICBjb2xvcjogJGZvbnQtY29sb3ItZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgaSB7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgfVxuICB9XG5cblxuICBsaS5wYWdlcyB1bCBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSAjeyRtZWRpdW0tYW5kLWRvd259IHtcbiAgLnBhZ2luYXRpb24ge1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgbGkucHJldixcbiAgICBsaS5uZXh0IHtcbiAgICAgIHdpZHRoOiAxMCU7XG4gICAgfVxuXG4gICAgbGkucGFnZXMge1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBCcmVhZGNydW1ic1xuLmJyZWFkY3J1bWIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgY29sb3I6ICRmb250LW9uLXByaW1hcnktY29sb3ItbWVkaXVtO1xuXG4gIGksXG4gIFtjbGFzc149XCJtZGktXCJdLCBbY2xhc3MqPVwibWRpLVwiXSxcbiAgaS5tYXRlcmlhbC1pY29ucywgaS5tYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkLFxuICBpLm1hdGVyaWFsLXN5bWJvbHMtcm91bmRlZCwgaS5tYXRlcmlhbC1zeW1ib2xzLXNoYXJwIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcRTVDQyc7XG4gICAgY29sb3I6ICRmb250LW9uLXByaW1hcnktY29sb3ItbWVkaXVtO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgU3ltYm9scyBPdXRsaW5lZCcsICdNYXRlcmlhbCBTeW1ib2xzIFJvdW5kZWQnLCAnTWF0ZXJpYWwgU3ltYm9scyBTaGFycCcsICdNYXRlcmlhbCBJY29ucyc7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC1zaXplOiAyNXB4O1xuICAgIG1hcmdpbjogMCAxMHB4IDAgOHB4O1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG5cbiAgJjpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIGNvbG9yOiAkZm9udC1vbi1wcmltYXJ5LWNvbG9yLW1haW47XG4gIH1cbn1cblxuLy8gUGFyYWxsYXhcbi5wYXJhbGxheC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogNTAwcHg7XG5cbiAgLnBhcmFsbGF4IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6IC0xO1xuXG4gICAgaW1nIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gUHVzaHBpblxuLnBpbi10b3AsIC5waW4tYm90dG9tIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucGlubmVkIHtcbiAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKipcbiAgVHJhbnNpdGlvbiBDbGFzc2VzXG4qKioqKioqKioqKioqKioqKioqKioqL1xuXG51bC5zdGFnZ2VyZWQtbGlzdCBsaSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5mYWRlLWluIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCA1MCU7XG59XG5cblxuLyoqKioqKioqKioqKioqKioqKioqKlxuICBNZWRpYSBRdWVyeSBDbGFzc2VzXG4qKioqKioqKioqKioqKioqKioqKioqL1xuLmhpZGUtb24tc21hbGwtb25seSwgLmhpZGUtb24tc21hbGwtYW5kLWRvd24ge1xuICBAbWVkaWEgI3skc21hbGwtYW5kLWRvd259IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmhpZGUtb24tbWVkLWFuZC1kb3duIHtcbiAgQG1lZGlhICN7JG1lZGl1bS1hbmQtZG93bn0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uaGlkZS1vbi1tZWQtYW5kLXVwIHtcbiAgQG1lZGlhICN7JG1lZGl1bS1hbmQtdXB9IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmhpZGUtb24tbWVkLW9ubHkge1xuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzbWFsbC1zY3JlZW4tdXApIGFuZCAobWF4LXdpZHRoOiAkbWVkaXVtLXNjcmVlbikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uaGlkZS1vbi1sYXJnZS1vbmx5IHtcbiAgQG1lZGlhICN7JGxhcmdlLWFuZC11cH0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uaGlkZS1vbi1leHRyYS1sYXJnZS1vbmx5IHtcbiAgQG1lZGlhICN7JGV4dHJhLWxhcmdlLWFuZC11cH0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uc2hvdy1vbi1leHRyYS1sYXJnZSB7XG4gIEBtZWRpYSAjeyRleHRyYS1sYXJnZS1hbmQtdXB9IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5zaG93LW9uLWxhcmdlIHtcbiAgQG1lZGlhICN7JGxhcmdlLWFuZC11cH0ge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnNob3ctb24tbWVkaXVtIHtcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkc21hbGwtc2NyZWVuLXVwKSBhbmQgKG1heC13aWR0aDogJG1lZGl1bS1zY3JlZW4pIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5zaG93LW9uLXNtYWxsIHtcbiAgQG1lZGlhICN7JHNtYWxsLWFuZC1kb3dufSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uc2hvdy1vbi1tZWRpdW0tYW5kLXVwIHtcbiAgQG1lZGlhICN7JG1lZGl1bS1hbmQtdXB9IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5zaG93LW9uLW1lZGl1bS1hbmQtZG93biB7XG4gIEBtZWRpYSAjeyRtZWRpdW0tYW5kLWRvd259IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cblxuLy8gQ2VudGVyIHRleHQgb24gbW9iaWxlXG4uY2VudGVyLW9uLXNtYWxsLW9ubHkge1xuICBAbWVkaWEgI3skc21hbGwtYW5kLWRvd259IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLy8gRm9vdGVyXG4ucGFnZS1mb290ZXIge1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgY29sb3I6ICRmb290ZXItZm9udC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZvb3Rlci1iZy1jb2xvcjtcblxuICBhIHtcbiAgICBjb2xvcjogJGZvb3Rlci1mb250LWNvbG9yO1xuICB9XG5cbiAgLmZvb3Rlci1jb3B5cmlnaHQsXG4gIC5mb290ZXItY29weXJpZ2h0IGEge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHBhZGRpbmc6IDEwcHggMHB4O1xuICAgIGNvbG9yOiAkZm9vdGVyLWNvcHlyaWdodC1mb250LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb290ZXItY29weXJpZ2h0LWJnLWNvbG9yO1xuICB9XG59XG5cbi5wYWdlLWZvb3RlciB1bCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG4vLyBUYWJsZXNcbnRhYmxlLCB0aCwgdGQge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcblxuICAmLnN0cmlwZWQge1xuICAgIHRyIHtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgfVxuICAgIHRib2R5ID4gdHI6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgJi5oaWdobGlnaHQgPiB0Ym9keSA+IHRyIHtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4yNXMgZWFzZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN1cmZhY2UtaG92ZXItY29sb3Itb3BhcXVlO1xuICAgIH1cbiAgfVxuXG4gIHRoZWFkIHtcbiAgICBjb2xvcjogJGZvbnQtY29sb3ItbWVkaXVtO1xuICB9XG5cbiAgJi5jZW50ZXJlZCB7XG4gICAgdGhlYWQgdHIgdGgsIHRib2R5IHRyIHRkIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gIH1cbn1cblxudHIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbn1cblxudGQsIHRoIHtcbiAgcGFkZGluZzogMTVweCA1cHg7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8vIFJlc3BvbnNpdmUgVGFibGVcbkBtZWRpYSAjeyRtZWRpdW0tYW5kLWRvd259IHtcblxuICB0YWJsZS5yZXNwb25zaXZlLXRhYmxlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgIGJvcmRlci1zcGFjaW5nOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIHRkOmVtcHR5OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFwwMGEwJztcbiAgICB9XG5cbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIH1cblxuICAgIHRoIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuXG4gICAgdGhlYWQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcblxuICAgICAgdHIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMCAxMHB4IDAgMDtcblxuICAgICAgICB0aDo6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBcIlxcMDBhMFwiO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGJvZHkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgICB0ciB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cblxuICAgIHRkIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWluLWhlaWdodDogMS4yNWVtO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICB0ciB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgIH1cblxuICAgIC8qIHNvcnQgb3V0IGJvcmRlcnMgKi9cbiAgICB0aGVhZCB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4vLyBSZXNwb25zaXZlIFZpZGVvc1xuLnZpZGVvLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIGlmcmFtZSwgb2JqZWN0LCBlbWJlZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKlxuICBVdGlsaXR5IENsYXNzZXNcbioqKioqKioqKioqKioqKioqKiovXG5cbi5oaWRlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLy8gVGV4dCBBbGlnblxuLmxlZnQtYWxpZ24ge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLnJpZ2h0LWFsaWduIHtcbiAgdGV4dC1hbGlnbjogcmlnaHRcbn1cbi5jZW50ZXIsIC5jZW50ZXItYWxpZ24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8vIFRPRE86IFJlbW92ZSB0aGlzXG4ubGVmdCB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG4ucmlnaHQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbn1cblxuLy8gTm8gVGV4dCBTZWxlY3Rcbi5uby1zZWxlY3Qge1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cbi5jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG4uY2VudGVyLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG4udHJ1bmNhdGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG4ubm8tcGFkZGluZyB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqXG4gIFV0aWxpdHkgU3BhY2luZyBDbGFzc2VzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuJHNwYWNpbmctc2hvcnRjdXRzOiAoXCJtYXJnaW5cIjogXCJtXCIsIFwicGFkZGluZ1wiOiBcInBcIikgIWRlZmF1bHQ7XG4kc3BhY2luZy1kaXJlY3Rpb25zOiAoXCJ0b3BcIjogXCJ0XCIsIFwicmlnaHRcIjogXCJyXCIsIFwiYm90dG9tXCI6IFwiYlwiLCBcImxlZnRcIjogXCJsXCIpICFkZWZhdWx0O1xuJHNwYWNpbmctaG9yaXpvbnRhbDogXCJ4XCIgIWRlZmF1bHQ7XG4kc3BhY2luZy12ZXJ0aWNhbDogXCJ5XCIgIWRlZmF1bHQ7XG4kc3BhY2luZy12YWx1ZXM6IChcIjBcIjogMCwgXCIxXCI6IDAuMjVyZW0sIFwiMlwiOiAwLjVyZW0sIFwiM1wiOiAwLjc1cmVtLCBcIjRcIjogMXJlbSwgXCI1XCI6IDEuNXJlbSwgXCI2XCI6IDNyZW0sIFwiYXV0b1wiOiBhdXRvKSAhZGVmYXVsdDsgXG5cbkBlYWNoICRwcm9wZXJ0eSwgJHNob3J0Y3V0IGluICRzcGFjaW5nLXNob3J0Y3V0c3tcbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkc3BhY2luZy12YWx1ZXN7XG4gICAgLy8gQWxsIGRpcmVjdGlvbiBzcGFjaW5nXG5cbiAgICAuI3skc2hvcnRjdXR9LSN7JG5hbWV9e1xuICAgICAgI3skcHJvcGVydHl9OiAkdmFsdWUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAvLyAodCwgYiwgciwgbCkgc3BhY2luZ1xuICAgIEBlYWNoICRkaXJlY3Rpb24sICRzdWZmaXggaW4gJHNwYWNpbmctZGlyZWN0aW9uc3tcbiAgICAgIC4jeyRzaG9ydGN1dH0jeyRzdWZmaXh9LSN7JG5hbWV9e1xuICAgICAgICAjeyRwcm9wZXJ0eX0tI3skZGlyZWN0aW9ufTogJHZhbHVlICFpbXBvcnRhbnQgXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8geCBzcGFjaW5nXG4gICAgQGlmICRzcGFjaW5nLWhvcml6b250YWwgIT0gbnVsbHtcbiAgICAgICAuI3skc2hvcnRjdXR9I3skc3BhY2luZy1ob3Jpem9udGFsfS0jeyRuYW1lfXtcbiAgICAgICAgICN7JHByb3BlcnR5fS1sZWZ0OiAkdmFsdWUgIWltcG9ydGFudDtcbiAgICAgICAgICN7JHByb3BlcnR5fS1yaWdodDogJHZhbHVlICFpbXBvcnRhbnQ7XG4gICAgICAgfVxuICAgIH1cblxuICAgIC8vIHkgc3BhY2luZ1xuICAgIEBpZiAkc3BhY2luZy12ZXJ0aWNhbCAhPSBudWxse1xuICAgICAgLiN7JHNob3J0Y3V0fSN7JHNwYWNpbmctdmVydGljYWx9LSN7JG5hbWV9e1xuICAgICAgICAjeyRwcm9wZXJ0eX0tdG9wOiAkdmFsdWUgIWltcG9ydGFudDtcbiAgICAgICAgI3skcHJvcGVydHl9LWJvdHRvbTogJHZhbHVlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICAgIFxuICAgIH1cbiAgICAgIFxuICB9XG59ICIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNYXRlcmlhbGl6ZSB2YXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vL1xuLy8gVGFibGUgb2YgQ29udGVudHM6XG4vL1xuLy8gIDEuIENvbG9yc1xuLy8gIDIuIEJhZGdlc1xuLy8gIDMuIEJ1dHRvbnNcbi8vICA0LiBDYXJkc1xuLy8gIDUuIENhcm91c2VsXG4vLyAgNi4gQ29sbGFwc2libGVcbi8vICA3LiBEYXRlICsgVGltZSBQaWNrZXJcbi8vICA4LiBEcm9wZG93blxuLy8gIDkuIEZvcm1zXG4vLyAgMTAuIENoaXBzXG4vLyAgMTEuIEdsb2JhbFxuLy8gIDEyLiBHcmlkXG4vLyAgMTMuIE5hdmlnYXRpb24gQmFyXG4vLyAgMTQuIFNpZGUgTmF2aWdhdGlvblxuLy8gIDE1LiBQaG90byBTbGlkZXJcbi8vICAxNi4gU3Bpbm5lcnMgfCBMb2FkZXJzXG4vLyAgMTcuIFRhYnNcbi8vICAxOC4gVGFibGVzXG4vLyAgMTkuIFRvYXN0c1xuLy8gIDIwLiBUb29sdGlwc1xuLy8gIDIxLiBUeXBvZ3JhcGh5XG4vLyAgMjIuIEZvb3RlclxuLy8gIDIzLiBGbG93IFRleHRcbi8vICAyNC4gQ29sbGVjdGlvbnNcbi8vICAyNS4gUHJvZ3Jlc3MgQmFyXG5cblxuLy8gVHlwZVNjYWxlXG4kbWRfc3lzX3R5cGVzY2FsZV9ib2R5LWxhcmdlX3NpemU6IDE2cHg7XG5cblxuLy8gMS4gQ29sb3JzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AdXNlIFwic2FzczptYXRoXCI7XG5cbiRwcmltYXJ5LWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRwcmltYXJ5LWNvbG9yLWRhcms6IHZhcigtLXByaW1hcnktY29sb3ItZGFyaykgIWRlZmF1bHQ7XG4kcHJpbWFyeS1jb2xvci13aGVuLWhvdmVyZWQtc29saWQ6IHZhcigtLXByaW1hcnktY29sb3ItcmFpc2VkLWhvdmVyLXNvbGlkKSAhZGVmYXVsdDtcbiRwcmltYXJ5LWNvbG9yLXdoZW4tZm9jdXNlZC1zb2xpZDogdmFyKC0tcHJpbWFyeS1jb2xvci1yYWlzZWQtZm9jdXMtc29saWQpICFkZWZhdWx0O1xuJHByaW1hcnktY29sb3ItZm9udC1lbXBoYXNpemUtY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJHByaW1hcnktY29sb3ItZm9udC1tZWRpdW0tY29sb3I6IHZhcigtLXByaW1hcnktY29sb3ItZm9udC1tZWRpdW0tY29sb3IpICFkZWZhdWx0O1xuJHByaW1hcnktY29sb3ItZm9udC1kaXNhYmxlZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvci1mb250LWRpc2FibGVkLWNvbG9yKSAhZGVmYXVsdDtcbiRwcmltYXJ5LWNvbG9yLWhvdmVyLW9wYXF1ZTogdmFyKC0tcHJpbWFyeS1jb2xvci1ob3Zlci1vcGFxdWUpICFkZWZhdWx0O1xuJHByaW1hcnktY29sb3ItZm9jdXMtb3BhcXVlOiB2YXIoLS1wcmltYXJ5LWNvbG9yLWZvY3VzLW9wYXF1ZSkgIWRlZmF1bHQ7XG5cbiRmb250LWNvbG9yLW1haW46IHZhcigtLWZvbnQtY29sb3ItbWFpbikgIWRlZmF1bHQ7XG4kZm9udC1jb2xvci1tZWRpdW06IHZhcigtLWZvbnQtY29sb3ItbWVkaXVtKSAhZGVmYXVsdDtcbiRmb250LWNvbG9yLWRpc2FibGVkOiB2YXIoLS1mb250LWNvbG9yLWRpc2FibGVkKSAhZGVmYXVsdDtcblxuJGZvbnQtb24tcHJpbWFyeS1jb2xvci1tYWluOiB2YXIoLS1mb250LW9uLXByaW1hcnktY29sb3ItbWFpbikgIWRlZmF1bHQ7XG4kZm9udC1vbi1wcmltYXJ5LWNvbG9yLW1lZGl1bTogdmFyKC0tZm9udC1vbi1wcmltYXJ5LWNvbG9yLW1lZGl1bSkgIWRlZmF1bHQ7XG4kZm9udC1vbi1wcmltYXJ5LWNvbG9yLWRpc2FibGVkOiB2YXIoLS1mb250LW9uLXByaW1hcnktY29sb3ItZGlzYWJsZWQpICFkZWZhdWx0O1xuJGZvbnQtb24tc2Vjb25kYXJ5LWNvbG9yLW1haW46IHZhcigtLWZvbnQtb24tc2Vjb25kYXJ5LWNvbG9yLW1haW4pICFkZWZhdWx0O1xuXG4kc2Vjb25kYXJ5LWNvbG9yOiB2YXIoLS1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJHNlY29uZGFyeS1jb2xvci13aGVuLWhvdmVyZWQtc29saWQ6IHZhcigtLXNlY29uZGFyeS1jb2xvci1ob3Zlci1zb2xpZCkgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LWNvbG9yLXdoZW4tZm9jdXNlZC1zb2xpZDogdmFyKC0tc2Vjb25kYXJ5LWNvbG9yLWZvY3VzLXNvbGlkKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktY29udGFpbmVyLWNvbG9yOiB2YXIoLS1zZWNvbmRhcnktY29udGFpbmVyLWNvbG9yKSAhZGVmYXVsdDtcbiRmb250LW9uLXNlY29uZGFyeS1jb250YWluZXItY29sb3I6IHZhcigtLWZvbnQtb24tc2Vjb25kYXJ5LWNvbnRhaW5lci1jb2xvcikgIWRlZmF1bHQ7XG5cbiRzdWNjZXNzLWNvbG9yOiBjb2xvcihcImdyZWVuXCIsIFwiYmFzZVwiKSAhZGVmYXVsdDtcbiRlcnJvci1jb2xvcjogdmFyKC0tZXJyb3ItY29sb3IpICFkZWZhdWx0O1xuJGxpbmstY29sb3I6IGNvbG9yKFwibGlnaHQtYmx1ZVwiLCBcImRhcmtlbi0xXCIpICFkZWZhdWx0O1xuXG4kc3VyZmFjZS1jb2xvcjogdmFyKC0tc3VyZmFjZS1jb2xvcikgIWRlZmF1bHQ7XG4kc3VyZmFjZS1ob3Zlci1jb2xvci1vcGFxdWU6IHZhcigtLWhvdmVyLWNvbG9yKSAhZGVmYXVsdDtcbiRzdXJmYWNlLWZvY3VzLWNvbG9yLW9wYXF1ZTogdmFyKC0tZm9jdXMtY29sb3IpICFkZWZhdWx0O1xuXG4kZGl2aWRlci1jb2xvcjogdmFyKC0tc2VwYXJhdG9yLWNvbG9yKTtcblxuLy8gMi4gQmFkZ2VzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kYmFkZ2UtYmctY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJGJhZGdlLWhlaWdodDogMjJweCAhZGVmYXVsdDtcbiRiYWRnZS1jb2xvcjogdmFyKC0tZm9udC1jb2xvci1tZWRpdW0pICFkZWZhdWx0O1xuJGJhZGdlLWNvbG9yLWFjdGl2ZTogdmFyKC0tZm9udC1vbi1wcmltYXJ5LWNvbG9yLW1haW4pICFkZWZhdWx0O1xuJGJhZGdlLWNvbG9yLW5ldzogJGZvbnQtb24tcHJpbWFyeS1jb2xvci1tYWluICFkZWZhdWx0O1xuXG4vLyAzLiBCdXR0b25zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBSYWlzZWQgYnV0dG9uc1xuJGJ1dHRvbi1yYWlzZWQtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLXJhaXNlZC1iYWNrZ3JvdW5kLWhvdmVyOiAkcHJpbWFyeS1jb2xvci13aGVuLWhvdmVyZWQtc29saWQgIWRlZmF1bHQ7XG4kYnV0dG9uLXJhaXNlZC1iYWNrZ3JvdW5kLWZvY3VzOiAkcHJpbWFyeS1jb2xvci13aGVuLWZvY3VzZWQtc29saWQgIWRlZmF1bHQ7XG4kYnV0dG9uLXJhaXNlZC1jb2xvcjogJGZvbnQtb24tcHJpbWFyeS1jb2xvci1tYWluICFkZWZhdWx0O1xuXG4vLyBTaGFyZWQgc3R5bGVzXG4kYnV0dG9uLWJvcmRlcjogbm9uZSAhZGVmYXVsdDtcbiRidXR0b24tYmFja2dyb3VuZC1mb2N1czogJGJ1dHRvbi1yYWlzZWQtYmFja2dyb3VuZC1mb2N1cyAhZGVmYXVsdDtcbiRidXR0b24tZm9udC1zaXplOiAxNHB4ICFkZWZhdWx0O1xuJGJ1dHRvbi1pY29uLWZvbnQtc2l6ZTogMThweCAhZGVmYXVsdDtcbiRidXR0b24taGVpZ2h0OiA0MHB4ICFkZWZhdWx0O1xuJGJ1dHRvbi1wYWRkaW5nOiAwIDE2cHggIWRlZmF1bHQ7XG4kYnV0dG9uLXJhZGl1czogNHB4ICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlZCBzdHlsZXNcbiRidXR0b24tZGlzYWJsZWQtYmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZCkgIWRlZmF1bHQ7XG4kYnV0dG9uLWRpc2FibGVkLWNvbG9yOiB2YXIoLS1mb250LWNvbG9yLWRpc2FibGVkKSAhZGVmYXVsdDtcblxuLy8gTGFyZ2UgYnV0dG9uc1xuJGJ1dHRvbi1sYXJnZS1mb250LXNpemU6IDE4cHggIWRlZmF1bHQ7XG4kYnV0dG9uLWxhcmdlLWljb24tZm9udC1zaXplOiAxLjZyZW0gIWRlZmF1bHQ7XG4kYnV0dG9uLWxhcmdlLWhlaWdodDogJGJ1dHRvbi1oZWlnaHQgKiAxLjUgIWRlZmF1bHQ7XG4kYnV0dG9uLWZsb2F0aW5nLWxhcmdlLXNpemU6IDU2cHggIWRlZmF1bHQ7XG5cbi8vIFNtYWxsIGJ1dHRvbnNcbiRidXR0b24tc21hbGwtZm9udC1zaXplOiAxM3B4ICFkZWZhdWx0O1xuJGJ1dHRvbi1zbWFsbC1pY29uLWZvbnQtc2l6ZTogMS4ycmVtICFkZWZhdWx0O1xuJGJ1dHRvbi1zbWFsbC1oZWlnaHQ6ICRidXR0b24taGVpZ2h0ICogLjc1ICFkZWZhdWx0O1xuJGJ1dHRvbi1zbWFsbC1wYWRkaW5nOiAwIDhweCAhZGVmYXVsdDtcbiRidXR0b24tZmxvYXRpbmctc21hbGwtc2l6ZTogJGJ1dHRvbi1oZWlnaHQgKiAuNzUgIWRlZmF1bHQ7XG5cbi8vIEZsYXQgYnV0dG9uc1xuJGJ1dHRvbi1mbGF0LWNvbG9yOiB2YXIoLS1mb250LWNvbG9yLW1lZGl1bSkgIWRlZmF1bHQ7XG4kYnV0dG9uLWZsYXQtaG92ZXItYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXItY29sb3IpICFkZWZhdWx0O1xuJGJ1dHRvbi1mbGF0LWZvY3VzLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWZvY3VzLWNvbG9yKSAhZGVmYXVsdDtcbiRidXR0b24tZmxhdC1kaXNhYmxlZC1jb2xvcjogdmFyKC0tZm9udC1jb2xvci1kaXNhYmxlZCkgIWRlZmF1bHQ7XG5cbi8vIEZsb2F0aW5nIGJ1dHRvbnNcbiRidXR0b24tZmxvYXRpbmctYmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvciAhZGVmYXVsdDtcbiRidXR0b24tZmxvYXRpbmctYmFja2dyb3VuZC1ob3ZlcjogJHNlY29uZGFyeS1jb2xvci13aGVuLWhvdmVyZWQtc29saWQgIWRlZmF1bHQ7XG4kYnV0dG9uLWZsb2F0aW5nLWJhY2tncm91bmQtZm9jdXM6ICRzZWNvbmRhcnktY29sb3Itd2hlbi1mb2N1c2VkLXNvbGlkICFkZWZhdWx0O1xuJGJ1dHRvbi1mbG9hdGluZy1jb2xvcjogJGZvbnQtb24tc2Vjb25kYXJ5LWNvbG9yLW1haW4gIWRlZmF1bHQ7XG4kYnV0dG9uLWZsb2F0aW5nLXNpemU6IDQwcHggIWRlZmF1bHQ7XG4kYnV0dG9uLWZsb2F0aW5nLXJhZGl1czogMTZweCAhZGVmYXVsdDtcblxuXG4vLyA0LiBDYXJkc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGNhcmQtcGFkZGluZzogMjRweCAhZGVmYXVsdDtcbiRjYXJkLWJnLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLWNvbG9yLWNhcmQpICFkZWZhdWx0O1xuJGNhcmQtbGluay1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cblxuLy8gNS4gQ2Fyb3VzZWxcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRjYXJvdXNlbC1oZWlnaHQ6IDQwMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWl0ZW0taGVpZ2h0OiAkY2Fyb3VzZWwtaGVpZ2h0ICogMC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWl0ZW0td2lkdGg6ICRjYXJvdXNlbC1pdGVtLWhlaWdodCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci1jb2xvcjogdmFyKC0tY2Fyb3VzZWwtaW5kaWNhdG9yLWNvbG9yKSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItY29sb3ItYWN0aXZlOiB2YXIoLS1jYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yKSAhZGVmYXVsdDtcblxuLy8gNi4gQ29sbGFwc2libGVcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRjb2xsYXBzaWJsZS1oZWlnaHQ6IDNyZW0gIWRlZmF1bHQ7XG4kY29sbGFwc2libGUtbGluZS1oZWlnaHQ6ICRjb2xsYXBzaWJsZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY29sbGFwc2libGUtYm9yZGVyLWNvbG9yOiAkZGl2aWRlci1jb2xvciAhZGVmYXVsdDtcbiRjb2xsYXBzaWJsZS1iZy1jb2xvcjogJHN1cmZhY2UtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy8gNy4gRGF0ZSArIFRpbWUgUGlja2VyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kZGF0ZXBpY2tlci1kaXNwbGF5LWZvbnQtc2l6ZTogMi44cmVtO1xuJGRhdGVwaWNrZXItY2FsZW5kYXItaGVhZGVyLWNvbG9yOiAkZm9udC1jb2xvci1tZWRpdW07XG4kZGF0ZXBpY2tlci15ZWFyOiAkZm9udC1vbi1wcmltYXJ5LWNvbG9yLW1haW4gIWRlZmF1bHQ7XG4kZGF0ZXBpY2tlci1kYXktZm9jdXM6ICRwcmltYXJ5LWNvbG9yLWZvY3VzLW9wYXF1ZSAhZGVmYXVsdDtcbiRkYXRlcGlja2VyLWRheS1ob3ZlcjogJHByaW1hcnktY29sb3ItaG92ZXItb3BhcXVlICFkZWZhdWx0O1xuJGRhdGVwaWNrZXItZGF5LWZvbnQtY29sb3I6ICRmb250LWNvbG9yLW1haW4gIWRlZmF1bHQ7XG4kZGF0ZXBpY2tlci1kYXktZm9udC1jb2xvci1kaXNhYmxlZDogJGZvbnQtY29sb3ItZGlzYWJsZWQgIWRlZmF1bHQ7XG5cbiR0aW1lcGlja2VyLWNsb2NrLWJnOiAkc3VyZmFjZS1jb2xvciAhZGVmYXVsdDtcbiR0aW1lcGlja2VyLWNsb2NrLWNvbG9yOiB2YXIoLS1mb250LWNvbG9yLW1haW4pICFkZWZhdWx0O1xuJHRpbWVwaWNrZXItY2xvY2stcGxhdGUtYmc6IHZhcigtLWJhY2tncm91bmQtY29sb3ItbGV2ZWwtNGRwKSAhZGVmYXVsdDtcblxuXG4vLyA4LiBEcm9wZG93blxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGRyb3Bkb3duLWJnLWNvbG9yOiAkc3VyZmFjZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1ob3Zlci1iZy1jb2xvcjogJHN1cmZhY2UtaG92ZXItY29sb3Itb3BhcXVlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWZvY3VzLWJnLWNvbG9yOiAkc3VyZmFjZS1mb2N1cy1jb2xvci1vcGFxdWUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWl0ZW0taGVpZ2h0OiA1MHB4ICFkZWZhdWx0O1xuXG5cbi8vIDkuIEZvcm1zXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBUZXh0IElucHV0cyArIFRleHRhcmVhXG4kaW5wdXQtaGVpZ2h0OiAzcmVtICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogdmFyKC0tZm9udC1jb2xvci1tZWRpdW0pICFkZWZhdWx0O1xuJGlucHV0LWNvbG9yOiB2YXIoLS1mb250LWNvbG9yLW1haW4pICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlcjogMnB4IHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZXJyb3ItY29sb3I6ICRlcnJvci1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1zdWNjZXNzLWNvbG9yOiAkc3VjY2Vzcy1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplOiAxNnB4ICFkZWZhdWx0O1xuJGlucHV0LW1hcmdpbi1ib3R0b206IDhweDtcbiRpbnB1dC1tYXJnaW46IDAgMCAkaW5wdXQtbWFyZ2luLWJvdHRvbSAwICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmc6IDAgIWRlZmF1bHQ7XG4kbGFiZWwtZm9udC1zaXplOiAuOHJlbSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1jb2xvcjogdmFyKC0tZm9udC1jb2xvci1kaXNhYmxlZCkgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtc29saWQtY29sb3I6IHZhcigtLWZvbnQtY29sb3ItZGlzYWJsZWQpICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWJvcmRlcjogMnB4IHNvbGlkICRpbnB1dC1kaXNhYmxlZC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1pbnZhbGlkLWJvcmRlcjogMnB4IHNvbGlkICRpbnB1dC1lcnJvci1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1pY29uLXNpemU6IDJyZW07XG4kcGxhY2Vob2xkZXItdGV4dC1jb2xvcjogdmFyKC0tZm9udC1jb2xvci1tZWRpdW0pICFkZWZhdWx0O1xuXG4kdGV4dGZpZWxkX2Rpc2FibGVkX2NvbnRhaW5lcmNvbG9yOiByZ2JhKHZhcigtLW1kX3N5c19jb2xvcl9vbi1zdXJmYWNlKSwgMC4wNCk7XG4kdGV4dGZpZWxkX2Rpc2FibGVkX291dGxpbmVjb2xvcjogcmdiYSh2YXIoLS1tZF9zeXNfY29sb3Jfb24tc3VyZmFjZSksIDAuMTIpO1xuJHRleHRmaWVsZF9kaXNhYmxlZF9jb2xvcjogcmdiYSh2YXIoLS1tZF9zeXNfY29sb3Jfb24tc3VyZmFjZSksIDAuMzgpO1xuXG4vLyBSYWRpbyBCdXR0b25zXG4kcmFkaW8tZmlsbC1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kcmFkaW8tZm9jdXMtY29sb3I6ICRwcmltYXJ5LWNvbG9yLWZvY3VzLW9wYXF1ZSAhZGVmYXVsdDtcbiRyYWRpby1lbXB0eS1jb2xvcjogdmFyKC0tZm9udC1jb2xvci1tZWRpdW0pICFkZWZhdWx0O1xuJHJhZGlvLWJvcmRlcjogMnB4IHNvbGlkICRyYWRpby1maWxsLWNvbG9yICFkZWZhdWx0O1xuXG4vLyBSYW5nZVxuJHJhbmdlLWhlaWdodDogMTRweCAhZGVmYXVsdDtcbiRyYW5nZS13aWR0aDogMTRweCAhZGVmYXVsdDtcbiR0cmFjay1oZWlnaHQ6IDNweCAhZGVmYXVsdDtcbiRyYW5nZS10cmFjay1jb2xvcjogdmFyKC0tc2xpZGVyLXRyYWNrLWNvbG9yKSAhZGVmYXVsdDtcblxuLy8gU2VsZWN0XG4kc2VsZWN0LWJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXNlcGFyYXRvci1jb2xvcikgIWRlZmF1bHQ7XG4kc2VsZWN0LWJhY2tncm91bmQ6ICRzdXJmYWNlLWNvbG9yICFkZWZhdWx0O1xuJHNlbGVjdC1mb2N1czogMXB4IHNvbGlkICRwcmltYXJ5LWNvbG9yLXdoZW4tZm9jdXNlZC1zb2xpZCAhZGVmYXVsdDtcbiRzZWxlY3Qtb3B0aW9uLWhvdmVyOiAkc3VyZmFjZS1ob3Zlci1jb2xvci1vcGFxdWUgIWRlZmF1bHQ7XG4kc2VsZWN0LW9wdGlvbi1mb2N1czogJHN1cmZhY2UtZm9jdXMtY29sb3Itb3BhcXVlICFkZWZhdWx0O1xuJHNlbGVjdC1vcHRpb24tc2VsZWN0ZWQ6ICRzdXJmYWNlLWZvY3VzLWNvbG9yLW9wYXF1ZSAhZGVmYXVsdDtcbiRzZWxlY3QtcGFkZGluZzogNXB4ICFkZWZhdWx0O1xuJHNlbGVjdC1yYWRpdXM6IDJweCAhZGVmYXVsdDtcbiRzZWxlY3QtZGlzYWJsZWQtY29sb3I6IHZhcigtLWZvbnQtY29sb3ItZGlzYWJsZWQpICFkZWZhdWx0O1xuJHNlbGVjdC1pbnB1dC1jb2xvcjogdmFyKC0tZm9udC1jb2xvci1tYWluKSAhZGVmYXVsdDtcblxuLy8gU3dpdGNoZXNcbiRzd2l0Y2gtdGh1bWItY2hlY2tlZC1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kc3dpdGNoLXRodW1iLXVuY2hlY2tlZC1jb2xvcjogdmFyKC0tc3dpdGNoLXRodW1iLW9mZi1jb2xvcik7XG4kc3dpdGNoLXJlYWN0aW9uLWNoZWNrZWQtZm9jdXMtY29sb3I6ICRwcmltYXJ5LWNvbG9yLWZvY3VzLW9wYXF1ZSAhZGVmYXVsdDtcbiRzd2l0Y2gtcmVhY3Rpb24tdW5jaGVja2VkLWZvY3VzLWNvbG9yOiAkc3VyZmFjZS1mb2N1cy1jb2xvci1vcGFxdWUgIWRlZmF1bHQ7XG4kc3dpdGNoLXJlYWN0aW9uLWNoZWNrZWQtaG92ZXItY29sb3I6ICRwcmltYXJ5LWNvbG9yLWhvdmVyLW9wYXF1ZSAhZGVmYXVsdDtcbiRzd2l0Y2gtcmVhY3Rpb24tdW5jaGVja2VkLWhvdmVyLWNvbG9yOiAkc3VyZmFjZS1ob3Zlci1jb2xvci1vcGFxdWUgIWRlZmF1bHQ7XG4kc3dpdGNoLXRyYWNrLWNoZWNrZWQtYmc6IHJnYmEodmFyKC0tcHJpbWFyeS1jb2xvci1udW1lcmljKSwgMC4zMikgIWRlZmF1bHQ7XG4kc3dpdGNoLXRyYWNrLXVuY2hlY2tlZC1iZzogdmFyKC0tc2xpZGVyLXRyYWNrLWNvbG9yKSAhZGVmYXVsdDtcbiRzd2l0Y2gtcmFkaXVzOiAxNXB4ICFkZWZhdWx0O1xuXG4vLyAxMC4gQ2hpcHNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRjaGlwLWJnLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLWNvbG9yLWxldmVsLTRkcCkgIWRlZmF1bHQ7XG4kY2hpcC1ib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY2hpcC1mb250LWNvbG9yOiAkZm9udC1jb2xvci1tZWRpdW0gIWRlZmF1bHQ7XG4kY2hpcC1zZWxlY3RlZC1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kY2hpcC1zZWxlY3RlZC1mb250LWNvbG9yOiAkZm9udC1vbi1wcmltYXJ5LWNvbG9yLW1haW4gIWRlZmF1bHQ7XG4kY2hpcC1tYXJnaW46IDVweCAhZGVmYXVsdDtcblxuXG4vLyAxMS4gR2xvYmFsXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBNZWRpYSBRdWVyeSBSYW5nZXNcbiRzbWFsbC1zY3JlZW4tdXA6IDYwMXB4ICFkZWZhdWx0O1xuJG1lZGl1bS1zY3JlZW4tdXA6IDk5M3B4ICFkZWZhdWx0O1xuJGxhcmdlLXNjcmVlbi11cDogMTIwMXB4ICFkZWZhdWx0O1xuJHNtYWxsLXNjcmVlbjogNjAwLjk5cHggIWRlZmF1bHQ7XG4kbWVkaXVtLXNjcmVlbjogOTkyLjk5cHggIWRlZmF1bHQ7XG4kbGFyZ2Utc2NyZWVuOiAxMjAwLjk5cHggIWRlZmF1bHQ7XG5cbiRtZWRpdW0tYW5kLXVwOiBcIm9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogI3skc21hbGwtc2NyZWVuLXVwfSlcIiAhZGVmYXVsdDtcbiRsYXJnZS1hbmQtdXA6IFwib25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiAjeyRtZWRpdW0tc2NyZWVuLXVwfSlcIiAhZGVmYXVsdDtcbiRleHRyYS1sYXJnZS1hbmQtdXA6IFwib25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiAjeyRsYXJnZS1zY3JlZW4tdXB9KVwiICFkZWZhdWx0O1xuJHNtYWxsLWFuZC1kb3duOiBcIm9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogI3skc21hbGwtc2NyZWVufSlcIiAhZGVmYXVsdDtcbiRtZWRpdW0tYW5kLWRvd246IFwib25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiAjeyRtZWRpdW0tc2NyZWVufSlcIiAhZGVmYXVsdDtcbiRtZWRpdW0tb25seTogXCJvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6ICN7JHNtYWxsLXNjcmVlbi11cH0pIGFuZCAobWF4LXdpZHRoIDogI3skbWVkaXVtLXNjcmVlbn0pXCIgIWRlZmF1bHQ7XG5cblxuLy8gMTIuIEdyaWRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRudW0tY29sczogMTIgIWRlZmF1bHQ7XG4kZ3V0dGVyLXdpZHRoOiAxLjVyZW0gIWRlZmF1bHQ7XG4kZWxlbWVudC10b3AtbWFyZ2luOiBtYXRoLmRpdigkZ3V0dGVyLXdpZHRoLCAzKSAhZGVmYXVsdDtcbiRlbGVtZW50LWJvdHRvbS1tYXJnaW46IG1hdGguZGl2KCRndXR0ZXItd2lkdGgqMiwgMykgIWRlZmF1bHQ7XG5cblxuLy8gMTMuIE5hdmlnYXRpb24gQmFyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kbmF2YmFyLWhlaWdodDogNjRweCAhZGVmYXVsdDtcbiRuYXZiYXItbGluZS1oZWlnaHQ6ICRuYXZiYXItaGVpZ2h0ICFkZWZhdWx0O1xuJG5hdmJhci1oZWlnaHQtbW9iaWxlOiA1NnB4ICFkZWZhdWx0O1xuJG5hdmJhci1saW5lLWhlaWdodC1tb2JpbGU6ICRuYXZiYXItaGVpZ2h0LW1vYmlsZSAhZGVmYXVsdDtcbiRuYXZiYXItZm9udC1zaXplOiAxcmVtICFkZWZhdWx0O1xuJG5hdmJhci1mb250LWNvbG9yOiAkZm9udC1vbi1wcmltYXJ5LWNvbG9yLW1haW4gIWRlZmF1bHQ7XG4kbmF2YmFyLWJnLWNvbG9yLWZvY3VzOiAkcHJpbWFyeS1jb2xvci13aGVuLWZvY3VzZWQtc29saWQgIWRlZmF1bHQ7XG4kbmF2YmFyLWJnLWNvbG9yLWhvdmVyOiAkcHJpbWFyeS1jb2xvci13aGVuLWhvdmVyZWQtc29saWQgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTogMi4xcmVtICFkZWZhdWx0O1xuXG4vLyAxNC4gU2lkZSBOYXZpZ2F0aW9uXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kc2lkZW5hdi13aWR0aDogMzAwcHggIWRlZmF1bHQ7XG4kc2lkZW5hdi1mb250LXNpemU6IDE0cHggIWRlZmF1bHQ7XG4kc2lkZW5hdi1mb250LWNvbG9yOiB2YXIoLS1mb250LWNvbG9yLW1haW4pICFkZWZhdWx0O1xuJHNpZGVuYXYtYmctY29sb3I6IHZhcigtLWJhY2tncm91bmQtY29sb3ItbGV2ZWwtMTZkcC1zb2xpZCkgIWRlZmF1bHQ7XG4kc2lkZW5hdi1pY29uLWNvbG9yOiB2YXIoLS1mb250LWNvbG9yLW1lZGl1bSkgIWRlZmF1bHQ7XG4kc2lkZW5hdi1zdWJoZWFkZXItY29sb3I6IHZhcigtLWZvbnQtY29sb3ItbWVkaXVtKSAhZGVmYXVsdDtcbiRzaWRlbmF2LXBhZGRpbmc6IDE2cHggIWRlZmF1bHQ7XG4kc2lkZW5hdi1pdGVtLWhlaWdodDogNDhweCAhZGVmYXVsdDtcbiRzaWRlbmF2LWxpbmUtaGVpZ2h0OiAkc2lkZW5hdi1pdGVtLWhlaWdodCAhZGVmYXVsdDtcblxuXG4vLyAxNS4gUGhvdG8gU2xpZGVyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kc2xpZGVyLWJnLWNvbG9yOiAkc3VyZmFjZS1jb2xvciAhZGVmYXVsdDtcbiRzbGlkZXItaW5kaWNhdG9yLWNvbG9yOiB2YXIoLS1zbGlkZXItdHJhY2stY29sb3IpICFkZWZhdWx0O1xuJHNsaWRlci1pbmRpY2F0b3ItY29sb3ItYWN0aXZlOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcbiRzbGlkZXItZnVsbHNjcmVlbi1pbmRpY2F0b3ItY29sb3I6ICRjYXJvdXNlbC1pbmRpY2F0b3ItY29sb3IgIWRlZmF1bHQ7XG4kc2xpZGVyLWZ1bGxzY3JlZW4taW5kaWNhdG9yLWNvbG9yLWFjdGl2ZTogJGNhcm91c2VsLWluZGljYXRvci1jb2xvci1hY3RpdmUgIWRlZmF1bHQ7XG5cblxuLy8gMTYuIFNwaW5uZXJzIHwgTG9hZGVyc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJHNwaW5uZXItZGVmYXVsdC1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cblxuLy8gMTcuIFRhYnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiR0YWJzLXRleHQtYWN0aXZlLWNvbG9yOiAkcHJpbWFyeS1jb2xvci1mb250LWVtcGhhc2l6ZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJzLXRleHQtaW5hY3RpdmUtY29sb3I6ICRmb250LWNvbG9yLW1lZGl1bSAhZGVmYXVsdDtcbiR0YWJzLXRleHQtZGlzYWJsZWQtY29sb3I6ICRmb250LWNvbG9yLWRpc2FibGVkICFkZWZhdWx0O1xuJHRhYnMtdW5kZXJsaW5lLWNvbG9yOiAkdGFicy10ZXh0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJzLWJnLWNvbG9yOiAkc3VyZmFjZS1jb2xvciAhZGVmYXVsdDtcblxuLy8gMTguIFRhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJHRhYmxlLWJvcmRlci1jb2xvcjogJGRpdmlkZXItY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtc3RyaXBlZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1jb2xvci1zbGlnaHQtZW1waGFzaXMpICFkZWZhdWx0O1xuXG5cbi8vIDE5LiBUb2FzdHNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiR0b2FzdC1oZWlnaHQ6IDQ4cHggIWRlZmF1bHQ7XG4kdG9hc3QtY29sb3I6IHZhcigtLXRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcikgIWRlZmF1bHQ7XG4kdG9hc3QtdGV4dC1jb2xvcjogdmFyKC0tdG9vbHRpcC1mb250LWNvbG9yKSAhZGVmYXVsdDtcbiR0b2FzdC1hY3Rpb24tY29sb3I6ICNlZWZmNDE7XG5cblxuLy8gMjAuIFRvb2x0aXBzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kdG9vbHRpcC1iZy1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLWludmVyc2Utc3VyZmFjZSkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1mb250LWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3ItaW52ZXJzZS1vbi1zdXJmYWNlKSAhZGVmYXVsdDtcblxuXG4vLyAyMS4gVHlwb2dyYXBoeVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGZvbnQtc3RhY2s6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIE94eWdlbi1TYW5zLCBVYnVudHUsIENhbnRhcmVsbCwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJHRleHQtY29sb3I6IHZhcigtLWZvbnQtY29sb3ItbWFpbikgIWRlZmF1bHQ7XG4vLyBIZWFkZXIgU3R5bGVzXG4kaDEtZm9udHNpemU6IDQuMnJlbSAhZGVmYXVsdDtcbiRoMi1mb250c2l6ZTogMy41NnJlbSAhZGVmYXVsdDtcbiRoMy1mb250c2l6ZTogMi45MnJlbSAhZGVmYXVsdDtcbiRoNC1mb250c2l6ZTogMi4yOHJlbSAhZGVmYXVsdDtcbiRoNS1mb250c2l6ZTogMS42NHJlbSAhZGVmYXVsdDtcbiRoNi1mb250c2l6ZTogMS4xNXJlbSAhZGVmYXVsdDtcblxuXG4vLyAyMi4gRm9vdGVyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kZm9vdGVyLWZvbnQtY29sb3I6ICRmb250LW9uLXByaW1hcnktY29sb3ItbWFpbiAhZGVmYXVsdDtcbiRmb290ZXItYmctY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJGZvb3Rlci1jb3B5cmlnaHQtZm9udC1jb2xvcjogdmFyKC0tZm9udC1vbi1wcmltYXJ5LWNvbG9yLWRhcmstbWVkaXVtKSAhZGVmYXVsdDtcbiRmb290ZXItY29weXJpZ2h0LWJnLWNvbG9yOiAkcHJpbWFyeS1jb2xvci1kYXJrICFkZWZhdWx0O1xuXG5cbi8vIDIzLiBGbG93IFRleHRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRyYW5nZTogJGxhcmdlLXNjcmVlbiAtICRzbWFsbC1zY3JlZW4gIWRlZmF1bHQ7XG4kaW50ZXJ2YWxzOiAyMCAhZGVmYXVsdDtcbiRpbnRlcnZhbC1zaXplOiBtYXRoLmRpdigkcmFuZ2UsICRpbnRlcnZhbHMpICFkZWZhdWx0O1xuXG5cbi8vIDI0LiBDb2xsZWN0aW9uc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGNvbGxlY3Rpb24tYm9yZGVyLWNvbG9yOiAkZGl2aWRlci1jb2xvciAhZGVmYXVsdDtcbiRjb2xsZWN0aW9uLWJnLWNvbG9yOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRjb2xsZWN0aW9uLWFjdGl2ZS1iZy1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kY29sbGVjdGlvbi1hY3RpdmUtY29sb3I6ICRmb250LW9uLXByaW1hcnktY29sb3ItbWFpbiAhZGVmYXVsdDtcbiRjb2xsZWN0aW9uLWhvdmVyLWJnLWNvbG9yOiAkc3VyZmFjZS1ob3Zlci1jb2xvci1vcGFxdWUgIWRlZmF1bHQ7XG4kY29sbGVjdGlvbi1saW5rLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcbiRjb2xsZWN0aW9uLWxpbmUtaGVpZ2h0OiAxLjVyZW0gIWRlZmF1bHQ7XG4kY29sbGVjdGlvbi1ib3JkZXItcmFkaXVzOiAycHggIWRlZmF1bHQ7XG4kY29sbGVjdGlvbi1hdmF0YXItY2lyY2xlLWJnLWNvbG9yOiB2YXIoLS1zbGlkZXItdHJhY2stY29sb3IpICFkZWZhdWx0O1xuJGNvbGxlY3Rpb24tYXZhdGFyLWNpcmNsZS1pY29uLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuXG5cbi8vIDI1LiBQcm9ncmVzcyBCYXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRwcm9ncmVzcy1iYXItY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci10cmFjay1jb2xvcjogcmdiYSh2YXIoLS1wcmltYXJ5LWNvbG9yLW51bWVyaWMpLCA0MCUpICFkZWZhdWx0O1xuXG4vLyAyNi4gTW9kYWxcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4kbW9kYWwtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1jb2xvci1sZXZlbC0xNmRwLXNvbGlkKSAhZGVmYXVsdDtcbiIsIi8vIENvbGxlY3Rpb25zXG4uY29sbGVjdGlvbiB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW46ICRlbGVtZW50LXRvcC1tYXJnaW4gMCAkZWxlbWVudC1ib3R0b20tbWFyZ2luIDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xsZWN0aW9uLWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJGNvbGxlY3Rpb24tYm9yZGVyLXJhZGl1cztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5jb2xsZWN0aW9uLWl0ZW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xsZWN0aW9uLWJnLWNvbG9yO1xuICAgIGxpbmUtaGVpZ2h0OiAkY29sbGVjdGlvbi1saW5lLWhlaWdodDtcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sbGVjdGlvbi1ib3JkZXItY29sb3I7XG5cbiAgICAvLyBBdmF0YXIgQ29sbGVjdGlvblxuICAgICYuYXZhdGFyIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDg0cHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDcycHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIC8vIERvbid0IHN0eWxlIGNpcmNsZXMgaW5zaWRlIHByZWxvYWRlciBjbGFzc2VzLlxuICAgICAgJjpub3QoLmNpcmNsZS1jbGlwcGVyKSA+IC5jaXJjbGUsXG4gICAgICA6bm90KC5jaXJjbGUtY2xpcHBlcikgPiAuY2lyY2xlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogNDJweDtcbiAgICAgICAgaGVpZ2h0OiA0MnB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBsZWZ0OiAxNXB4O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG5cbiAgICAgIGkuY2lyY2xlIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNDJweDtcbiAgICAgICAgY29sb3I6ICRjb2xsZWN0aW9uLWF2YXRhci1jaXJjbGUtaWNvbi1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbGxlY3Rpb24tYXZhdGFyLWNpcmNsZS1iZy1jb2xvcjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG5cbiAgICAgIC50aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cblxuICAgICAgLnNlY29uZGFyeS1jb250ZW50IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDE2cHg7XG4gICAgICAgIHJpZ2h0OiAxNnB4O1xuICAgICAgfVxuXG4gICAgfVxuXG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sbGVjdGlvbi1hY3RpdmUtYmctY29sb3I7XG4gICAgICBjb2xvcjogJGNvbGxlY3Rpb24tYWN0aXZlLWNvbG9yO1xuXG4gICAgICAuc2Vjb25kYXJ5LWNvbnRlbnQge1xuICAgICAgICBjb2xvcjogJGZvbnQtb24tcHJpbWFyeS1jb2xvci1tYWluO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGEuY29sbGVjdGlvbi1pdGVtIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0cmFuc2l0aW9uOiAuMjVzO1xuICAgIGNvbG9yOiAkY29sbGVjdGlvbi1saW5rLWNvbG9yO1xuXG4gICAgJjpub3QoLmFjdGl2ZSkge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xsZWN0aW9uLWhvdmVyLWJnLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYud2l0aC1oZWFkZXIge1xuICAgIC5jb2xsZWN0aW9uLWhlYWRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sbGVjdGlvbi1iZy1jb2xvcjtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sbGVjdGlvbi1ib3JkZXItY29sb3I7XG4gICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgfVxuXG4gICAgLmNvbGxlY3Rpb24taXRlbSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgfVxuXG4gICAgLmNvbGxlY3Rpb24taXRlbS5hdmF0YXIge1xuICAgICAgcGFkZGluZy1sZWZ0OiA3MnB4O1xuICAgIH1cbiAgfVxuXG59XG5cbi8vIE1hZGUgbGVzcyBzcGVjaWZpYyB0byBhbGxvdyBlYXNpZXIgb3ZlcnJpZGluZ1xuLnNlY29uZGFyeS1jb250ZW50IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBjb2xvcjogJHByaW1hcnktY29sb3I7XG59XG5cbi5jb2xsYXBzaWJsZSAuY29sbGVjdGlvbiB7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiBub25lO1xufSIsIi8vIEJhZGdlc1xuc3Bhbi5iYWRnZSB7XG4gIG1pbi13aWR0aDogM3JlbTtcbiAgcGFkZGluZzogMCA2cHg7XG4gIG1hcmdpbi1sZWZ0OiAxNHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6ICRiYWRnZS1oZWlnaHQ7XG4gIGhlaWdodDogJGJhZGdlLWhlaWdodDtcbiAgY29sb3I6ICRiYWRnZS1jb2xvcjtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICYubmV3IHtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgIGNvbG9yOiAkYmFkZ2UtY29sb3ItbmV3O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWRnZS1iZy1jb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gIH1cbiAgJi5uZXc6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIG5ld1wiO1xuICB9XG5cbiAgJltkYXRhLWJhZGdlLWNhcHRpb25dOjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCIgYXR0cihkYXRhLWJhZGdlLWNhcHRpb24pO1xuICB9XG59XG5cbi5hY3RpdmUgc3Bhbi5iYWRnZSB7XG4gIGNvbG9yOiAkYmFkZ2UtY29sb3ItYWN0aXZlO1xufVxuXG4vLyBTcGVjaWFsIGNhc2VzXG5uYXYgdWwgYSBzcGFuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgbGluZS1oZWlnaHQ6ICRiYWRnZS1oZWlnaHQ7XG4gIGhlaWdodDogJGJhZGdlLWhlaWdodDtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYXV0bztcbn1cblxuLy8gTGluZSBoZWlnaHQgY2VudGVyaW5nXG4uY29sbGVjdGlvbi1pdGVtIHNwYW4uYmFkZ2Uge1xuICBtYXJnaW4tdG9wOiBjYWxjKCN7JGNvbGxlY3Rpb24tbGluZS1oZWlnaHQgKiAwLjV9IC0gI3skYmFkZ2UtaGVpZ2h0ICogMC41fSk7XG59XG5cbi5jb2xsYXBzaWJsZSBzcGFuLmJhZGdlIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cbi5jb2xsYXBzaWJsZSAuYWN0aXZlIHNwYW4uYmFkZ2U6bm90KC5uZXcpIHtcbiAgY29sb3I6ICRiYWRnZS1jb2xvcjtcbn1cblxuLnNpZGVuYXYgc3Bhbi5iYWRnZSB7XG4gIG1hcmdpbi10b3A6IGNhbGMoI3skc2lkZW5hdi1saW5lLWhlaWdodCAqIDAuNX0gLSAjeyRiYWRnZS1oZWlnaHQgKiAwLjV9KTtcbn1cblxudGFibGUgc3Bhbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuIiwiLyogVGhpcyBpcyBuZWVkZWQgZm9yIHNvbWUgbW9iaWxlIHBob25lcyB0byBkaXNwbGF5IHRoZSBHb29nbGUgSWNvbiBmb250IHByb3Blcmx5ICovXG4ubWF0ZXJpYWwtaWNvbnMsIC5tYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkLFxuLm1hdGVyaWFsLXN5bWJvbHMtcm91bmRlZCwgLm1hdGVyaWFsLXN5bWJvbHMtc2hhcnAge1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJztcbn1cbiIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuLy8gQ29udGFpbmVyXG4uY29udGFpbmVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogMTI4MHB4O1xuICB3aWR0aDogOTAlO1xufVxuQG1lZGlhICN7JG1lZGl1bS1hbmQtdXB9IHtcbiAgLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDg1JTtcbiAgfVxufVxuQG1lZGlhICN7JGxhcmdlLWFuZC11cH0ge1xuICAuY29udGFpbmVyIHtcbiAgICB3aWR0aDogNzAlO1xuICB9XG59XG5cbi5zZWN0aW9uIHtcbiAgcGFkZGluZzogMXJlbSAwO1xufVxuXG4vLyBNaXhpbnMgdG8gZWxpbWluYXRlIGNvZGUgcmVwZXRpdGlvblxuQG1peGluIHJlc2V0LW9mZnNldCB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogYXV0bztcbn1cblxuQG1peGluIGdyaWQtY2xhc3Nlcygkc2l6ZSwgJGksICRwZXJjKSB7XG4gICYub2Zmc2V0LSN7JHNpemV9I3skaX0ge1xuICAgIG1hcmdpbi1sZWZ0OiAkcGVyYztcbiAgfVxuICAmLnB1bGwtI3skc2l6ZX0jeyRpfSB7XG4gICAgcmlnaHQ6ICRwZXJjO1xuICB9XG4gICYucHVzaC0jeyRzaXplfSN7JGl9IHtcbiAgICBsZWZ0OiAkcGVyYztcbiAgfVxufVxuXG4ucm93IHtcbiAgLy8tLWdyaWQtZ2FwOiAxcmVtO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxMiwgMWZyKTsgLy9yZXBlYXQoMTIsIGNhbGMoOC4zMyUgLSB2YXIoLS1ncmlkLWdhcCkgKyAodmFyKC0tZ3JpZC1nYXApIC8gMTIpKSk7XG4gIC8vZ2FwOiB2YXIoLS1ncmlkLWdhcCk7XG5cbiAgLy8tLS0gU1xuXG4gIC5zMSAgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gMTsgfVxuICAuczIgIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDI7IH1cbiAgLnMzICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAzOyB9XG4gIC5zNCAgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gNDsgfVxuICAuczUgIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDU7IH1cbiAgLnM2ICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiA2OyB9XG4gIC5zNyAgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gNzsgfVxuICAuczggIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDg7IH1cbiAgLnM5ICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiA5OyB9XG4gIC5zMTAgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gMTA7IH1cbiAgLnMxMSB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAxMTsgfVxuICAuczEyIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDEyOyB9XG5cbiAgLm9mZnNldC1zMSB7IGdyaWQtY29sdW1uLXN0YXJ0OiAgMzsgfVxuICAub2Zmc2V0LXMyIHsgZ3JpZC1jb2x1bW4tc3RhcnQ6ICAyOyB9XG4gIC5vZmZzZXQtczMgeyBncmlkLWNvbHVtbi1zdGFydDogIDQ7IH1cbiAgLm9mZnNldC1zNCB7IGdyaWQtY29sdW1uLXN0YXJ0OiAgNTsgfVxuICAub2Zmc2V0LXM1IHsgZ3JpZC1jb2x1bW4tc3RhcnQ6ICA2OyB9XG4gIC5vZmZzZXQtczYgeyBncmlkLWNvbHVtbi1zdGFydDogIDc7IH1cbiAgLm9mZnNldC1zNyB7IGdyaWQtY29sdW1uLXN0YXJ0OiAgODsgfVxuICAub2Zmc2V0LXM4IHsgZ3JpZC1jb2x1bW4tc3RhcnQ6ICA5OyB9XG4gIC5vZmZzZXQtczkgeyBncmlkLWNvbHVtbi1zdGFydDogMTA7IH1cbiAgLm9mZnNldC1zMTAgeyBncmlkLWNvbHVtbi1zdGFydDogMTE7IH1cbiAgLm9mZnNldC1zMTEgeyBncmlkLWNvbHVtbi1zdGFydDogMTI7IH1cblxuICAvLy0tLSBNXG4gIEBtZWRpYSAjeyRtZWRpdW0tYW5kLXVwfSB7XG4gICAgLm0xICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAxOyB9XG4gICAgLm0yICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAyOyB9XG4gICAgLm0zICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAzOyB9XG4gICAgLm00ICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiA0OyB9XG4gICAgLm01ICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiA1OyB9XG4gICAgLm02ICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiA2OyB9XG4gICAgLm03ICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiA3OyB9XG4gICAgLm04ICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiA4OyB9XG4gICAgLm05ICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiA5OyB9XG4gICAgLm0xMCB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAxMDsgfVxuICAgIC5tMTEgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gMTE7IH1cbiAgICAubTEyIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDEyOyB9XG4gIFxuICAgIC5vZmZzZXQtbTEgeyBncmlkLWNvbHVtbi1zdGFydDogIDI7IH1cbiAgICAub2Zmc2V0LW0yIHsgZ3JpZC1jb2x1bW4tc3RhcnQ6ICAzOyB9XG4gICAgLm9mZnNldC1tMyB7IGdyaWQtY29sdW1uLXN0YXJ0OiAgNDsgfVxuICAgIC5vZmZzZXQtbTQgeyBncmlkLWNvbHVtbi1zdGFydDogIDU7IH1cbiAgICAub2Zmc2V0LW01IHsgZ3JpZC1jb2x1bW4tc3RhcnQ6ICA2OyB9XG4gICAgLm9mZnNldC1tNiB7IGdyaWQtY29sdW1uLXN0YXJ0OiAgNzsgfVxuICAgIC5vZmZzZXQtbTcgeyBncmlkLWNvbHVtbi1zdGFydDogIDg7IH1cbiAgICAub2Zmc2V0LW04IHsgZ3JpZC1jb2x1bW4tc3RhcnQ6ICA5OyB9XG4gICAgLm9mZnNldC1tOSB7IGdyaWQtY29sdW1uLXN0YXJ0OiAxMDsgfVxuICAgIC5vZmZzZXQtbTEwIHsgZ3JpZC1jb2x1bW4tc3RhcnQ6IDExOyB9XG4gICAgLm9mZnNldC1tMTEgeyBncmlkLWNvbHVtbi1zdGFydDogMTI7IH1cbiAgfVxuXG4gIC8vLS0tIExcbiAgQG1lZGlhICN7JGxhcmdlLWFuZC11cH0ge1xuICAgIC5sMSAgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gMTsgfVxuICAgIC5sMiAgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gMjsgfVxuICAgIC5sMyAgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gMzsgfVxuICAgIC5sNCAgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gNDsgfVxuICAgIC5sNSAgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gNTsgfVxuICAgIC5sNiAgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gNjsgfVxuICAgIC5sNyAgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gNzsgfVxuICAgIC5sOCAgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gODsgfVxuICAgIC5sOSAgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gOTsgfVxuICAgIC5sMTAgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gMTA7IH1cbiAgICAubDExIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDExOyB9XG4gICAgLmwxMiB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAxMjsgfVxuICBcbiAgICAub2Zmc2V0LWwxICB7IGdyaWQtY29sdW1uLXN0YXJ0OiAgMjsgfVxuICAgIC5vZmZzZXQtbDIgIHsgZ3JpZC1jb2x1bW4tc3RhcnQ6ICAzOyB9XG4gICAgLm9mZnNldC1sMyAgeyBncmlkLWNvbHVtbi1zdGFydDogIDQ7IH1cbiAgICAub2Zmc2V0LWw0ICB7IGdyaWQtY29sdW1uLXN0YXJ0OiAgNTsgfVxuICAgIC5vZmZzZXQtbDUgIHsgZ3JpZC1jb2x1bW4tc3RhcnQ6ICA2OyB9XG4gICAgLm9mZnNldC1sNiAgeyBncmlkLWNvbHVtbi1zdGFydDogIDc7IH1cbiAgICAub2Zmc2V0LWw3ICB7IGdyaWQtY29sdW1uLXN0YXJ0OiAgODsgfVxuICAgIC5vZmZzZXQtbDggIHsgZ3JpZC1jb2x1bW4tc3RhcnQ6ICA5OyB9XG4gICAgLm9mZnNldC1sOSAgeyBncmlkLWNvbHVtbi1zdGFydDogMTA7IH1cbiAgICAub2Zmc2V0LWwxMCB7IGdyaWQtY29sdW1uLXN0YXJ0OiAxMTsgfVxuICAgIC5vZmZzZXQtbDExIHsgZ3JpZC1jb2x1bW4tc3RhcnQ6IDEyOyB9XG4gIH1cblxuICAvLy0tLSBYTFxuICBAbWVkaWEgI3skZXh0cmEtbGFyZ2UtYW5kLXVwfSB7XG4gICAgLnhsMSAgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gMTsgfVxuICAgIC54bDIgIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDI7IH1cbiAgICAueGwzICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAzOyB9XG4gICAgLnhsNCAgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gNDsgfVxuICAgIC54bDUgIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDU7IH1cbiAgICAueGw2ICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiA2OyB9XG4gICAgLnhsNyAgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gNzsgfVxuICAgIC54bDggIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDg7IH1cbiAgICAueGw5ICB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiA5OyB9XG4gICAgLnhsMTAgeyBncmlkLWNvbHVtbjogYXV0byAvIHNwYW4gMTA7IH1cbiAgICAueGwxMSB7IGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAxMTsgfVxuICAgIC54bDEyIHsgZ3JpZC1jb2x1bW46IGF1dG8gLyBzcGFuIDEyOyB9XG4gIFxuICAgIC5vZmZzZXQteGwxIHsgZ3JpZC1jb2x1bW4tc3RhcnQ6ICAyOyB9XG4gICAgLm9mZnNldC14bDIgeyBncmlkLWNvbHVtbi1zdGFydDogIDM7IH1cbiAgICAub2Zmc2V0LXhsMyB7IGdyaWQtY29sdW1uLXN0YXJ0OiAgNDsgfVxuICAgIC5vZmZzZXQteGw0IHsgZ3JpZC1jb2x1bW4tc3RhcnQ6ICA1OyB9XG4gICAgLm9mZnNldC14bDUgeyBncmlkLWNvbHVtbi1zdGFydDogIDY7IH1cbiAgICAub2Zmc2V0LXhsNiB7IGdyaWQtY29sdW1uLXN0YXJ0OiAgNzsgfVxuICAgIC5vZmZzZXQteGw3IHsgZ3JpZC1jb2x1bW4tc3RhcnQ6ICA4OyB9XG4gICAgLm9mZnNldC14bDggeyBncmlkLWNvbHVtbi1zdGFydDogIDk7IH1cbiAgICAub2Zmc2V0LXhsOSB7IGdyaWQtY29sdW1uLXN0YXJ0OiAxMDsgfVxuICAgIC5vZmZzZXQteGwxMCB7IGdyaWQtY29sdW1uLXN0YXJ0OiAxMTsgfVxuICAgIC5vZmZzZXQteGwxMSB7IGdyaWQtY29sdW1uLXN0YXJ0OiAxMjsgfVxuICB9XG5cbn1cbiIsIm5hdiB7XG4gICYubmF2LWV4dGVuZGVkIHtcbiAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAubmF2LXdyYXBwZXIge1xuICAgICAgbWluLWhlaWdodDogJG5hdmJhci1oZWlnaHQtbW9iaWxlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIC5uYXYtY29udGVudCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIH1cbiAgfVxuXG4gIGNvbG9yOiAkbmF2YmFyLWZvbnQtY29sb3I7XG4gIEBleHRlbmQgLnotZGVwdGgtMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1jb250YWluZXItY29sb3I7XG5cbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJG5hdmJhci1oZWlnaHQtbW9iaWxlO1xuICBsaW5lLWhlaWdodDogJG5hdmJhci1saW5lLWhlaWdodC1tb2JpbGU7XG5cbiAgYSB7XG4gICAgY29sb3I6ICRuYXZiYXItZm9udC1jb2xvcjtcbiAgfVxuXG4gIGksXG4gIFtjbGFzc149XCJtZGktXCJdLCBbY2xhc3MqPVwibWRpLVwiXSxcbiAgaS5tYXRlcmlhbC1pY29ucywgaS5tYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkLFxuICBpLm1hdGVyaWFsLXN5bWJvbHMtcm91bmRlZCwgaS5tYXRlcmlhbC1zeW1ib2xzLXNoYXJwIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgaGVpZ2h0OiAkbmF2YmFyLWhlaWdodC1tb2JpbGU7XG4gICAgbGluZS1oZWlnaHQ6ICRuYXZiYXItbGluZS1oZWlnaHQtbW9iaWxlO1xuICB9XG5cbiAgLm5hdi13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgQG1lZGlhICN7JGxhcmdlLWFuZC11cH0ge1xuICAgIGEuc2lkZW5hdi10cmlnZ2VyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gQ29sbGFwc2UgYnV0dG9uXG4gIC5zaWRlbmF2LXRyaWdnZXIge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGhlaWdodDogJG5hdmJhci1oZWlnaHQtbW9iaWxlO1xuICAgIG1hcmdpbjogMCAxOHB4O1xuXG4gICAgaSB7XG4gICAgICBoZWlnaHQ6ICRuYXZiYXItaGVpZ2h0LW1vYmlsZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkbmF2YmFyLWxpbmUtaGVpZ2h0LW1vYmlsZTtcbiAgICB9XG4gIH1cblxuICAvLyBMb2dvXG4gIC5icmFuZC1sb2dvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29sb3I6ICRuYXZiYXItZm9udC1jb2xvcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgJi5jZW50ZXIge1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRtZWRpdW0tYW5kLWRvd259IHtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcblxuICAgICAgJi5sZWZ0LCAmLnJpZ2h0IHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgfVxuXG4gICAgICAmLmxlZnQge1xuICAgICAgICBsZWZ0OiAwLjVyZW07XG4gICAgICB9XG4gICAgICAmLnJpZ2h0IHtcbiAgICAgICAgcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnJpZ2h0IHtcbiAgICAgIHJpZ2h0OiAwLjVyZW07XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIGksXG4gICAgW2NsYXNzXj1cIm1kaS1cIl0sIFtjbGFzcyo9XCJtZGktXCJdLFxuICAgIGkubWF0ZXJpYWwtaWNvbnMsIGkubWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCxcbiAgICBpLm1hdGVyaWFsLXN5bWJvbHMtcm91bmRlZCwgaS5tYXRlcmlhbC1zeW1ib2xzLXNoYXJwIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgIH1cbiAgfVxuXG5cbiAgLy8gVGl0bGVcbiAgLm5hdi10aXRsZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICBwYWRkaW5nOiAyOHB4IDA7XG4gIH1cblxuXG4gIC8vIE5hdmJhciBMaW5rc1xuICB1bDpub3QoLmRyb3Bkb3duLWNvbnRlbnQpIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgJiA+IGxpIHtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjNzO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAmID4gYSB7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjNzO1xuICAgICAgICBmb250LXNpemU6ICRuYXZiYXItZm9udC1zaXplO1xuICAgICAgICBjb2xvcjogJG5hdmJhci1mb250LWNvbG9yO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItYmctY29sb3ItZm9jdXM7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyOm5vdCguYWN0aXZlKSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1iZy1jb2xvci1ob3ZlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYnRuLCAmLmJ0bi1sYXJnZSwgJi5idG4tZmxhdCwgJi5idG4tZmxvYXRpbmcge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAgICYgPiAubWF0ZXJpYWwtaWNvbnMsICYgPiAubWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCxcbiAgICAgICAgICAmID4gLm1hdGVyaWFsLXN5bWJvbHMtcm91bmRlZCwgJiA+IC5tYXRlcmlhbC1zeW1ib2xzLXNoYXJwIHtcbiAgICAgICAgICAgIGhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYubGVmdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG4gIH1cblxuICAvLyBOYXZiYXIgU2VhcmNoIEZvcm1cbiAgZm9ybSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLmlucHV0LWZpZWxkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgaW5wdXRbdHlwZT1zZWFyY2hdIHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICAgICAgY29sb3I6ICM4ODg7IC8vJG5hdmJhci1mb250LWNvbG9yO1xuXG4gICAgICAmOmZvY3VzLCAmW3R5cGU9dGV4dF06dmFsaWQsICZbdHlwZT1wYXNzd29yZF06dmFsaWQsXG4gICAgICAmW3R5cGU9ZW1haWxdOnZhbGlkLCAmW3R5cGU9dXJsXTp2YWxpZCwgJlt0eXBlPWRhdGVdOnZhbGlkIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIGxhYmVsIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG5cbiAgICAgIGkge1xuICAgICAgICBjb2xvcjogJGZvbnQtb24tcHJpbWFyeS1jb2xvci1tZWRpdW07XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIC4zcztcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUgaSB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWZvbnQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEZpeGVkIE5hdmJhclxuLm5hdmJhci1maXhlZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAkbmF2YmFyLWhlaWdodC1tb2JpbGU7XG4gIHotaW5kZXg6IDk5NztcblxuICBuYXYge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICByaWdodDogMDtcbiAgfVxufVxuXG5AbWVkaWEgI3skbWVkaXVtLWFuZC11cH0ge1xuICBuYXYubmF2LWV4dGVuZGVkIC5uYXYtd3JhcHBlciB7XG4gICAgbWluLWhlaWdodDogJG5hdmJhci1oZWlnaHQ7XG4gIH1cbiAgbmF2LCBuYXYgLm5hdi13cmFwcGVyIGksIG5hdiBhLnNpZGVuYXYtdHJpZ2dlciwgbmF2IGEuc2lkZW5hdi10cmlnZ2VyIGkge1xuICAgIGhlaWdodDogJG5hdmJhci1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRuYXZiYXItbGluZS1oZWlnaHQ7XG4gIH1cbiAgLm5hdmJhci1maXhlZCB7XG4gICAgaGVpZ2h0OiAkbmF2YmFyLWhlaWdodDtcbiAgfVxufVxuIiwiXG5AdXNlIFwic2FzczptYXRoXCI7XG5cbmEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmh0bWx7XG4gIC8vIGxpbmUtaGVpZ2h0OiAxLjU7XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLXNjcmVlbi11cCkge1xuICAgIGZvbnQtc2l6ZTogMTQuNXB4O1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICB9XG5cbiAgZm9udC1mYW1pbHk6ICRmb250LXN0YWNrO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogJHRleHQtY29sb3I7XG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuXHRmb250LXdlaWdodDogNDAwO1xuXHRsaW5lLWhlaWdodDogMS4zO1xufVxuXG4vLyBIZWFkZXIgU3R5bGVzXG5oMSBhLCBoMiBhLCBoMyBhLCBoNCBhLCBoNSBhLCBoNiBhIHsgZm9udC13ZWlnaHQ6IGluaGVyaXQ7IH1cbmgxIHsgZm9udC1zaXplOiAkaDEtZm9udHNpemU7IGxpbmUtaGVpZ2h0OiAxMTAlOyBtYXJnaW46IG1hdGguZGl2KCRoMS1mb250c2l6ZSwgMS41KSAwIG1hdGguZGl2KCRoMS1mb250c2l6ZSwgMi41KSAwO31cbmgyIHsgZm9udC1zaXplOiAkaDItZm9udHNpemU7IGxpbmUtaGVpZ2h0OiAxMTAlOyBtYXJnaW46IG1hdGguZGl2KCRoMi1mb250c2l6ZSwgMS41KSAwIG1hdGguZGl2KCRoMi1mb250c2l6ZSwgMi41KSAwO31cbmgzIHsgZm9udC1zaXplOiAkaDMtZm9udHNpemU7IGxpbmUtaGVpZ2h0OiAxMTAlOyBtYXJnaW46IG1hdGguZGl2KCRoMy1mb250c2l6ZSwgMS41KSAwIG1hdGguZGl2KCRoMy1mb250c2l6ZSwgMi41KSAwO31cbmg0IHsgZm9udC1zaXplOiAkaDQtZm9udHNpemU7IGxpbmUtaGVpZ2h0OiAxMTAlOyBtYXJnaW46IG1hdGguZGl2KCRoNC1mb250c2l6ZSwgMS41KSAwIG1hdGguZGl2KCRoNC1mb250c2l6ZSwgMi41KSAwO31cbmg1IHsgZm9udC1zaXplOiAkaDUtZm9udHNpemU7IGxpbmUtaGVpZ2h0OiAxMTAlOyBtYXJnaW46IG1hdGguZGl2KCRoNS1mb250c2l6ZSwgMS41KSAwIG1hdGguZGl2KCRoNS1mb250c2l6ZSwgMi41KSAwO31cbmg2IHsgZm9udC1zaXplOiAkaDYtZm9udHNpemU7IGxpbmUtaGVpZ2h0OiAxMTAlOyBtYXJnaW46IG1hdGguZGl2KCRoNi1mb250c2l6ZSwgMS41KSAwIG1hdGguZGl2KCRoNi1mb250c2l6ZSwgMi41KSAwO31cblxuLy8gVGV4dCBTdHlsZXNcbmVtIHsgZm9udC1zdHlsZTogaXRhbGljOyB9XG5zdHJvbmcgeyBmb250LXdlaWdodDogNTAwOyB9XG5zbWFsbCB7IGZvbnQtc2l6ZTogNzUlOyB9XG4ubGlnaHQgeyBmb250LXdlaWdodDogMzAwOyB9XG4udGhpbiB7IGZvbnQtd2VpZ2h0OiAyMDA7IH1cblxuLmZsb3ctdGV4dHtcbiAgJGk6IDA7XG4gIEB3aGlsZSAkaSA8PSAkaW50ZXJ2YWxzIHtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiAzNjAgKyAoJGkgKiAkaW50ZXJ2YWwtc2l6ZSkpIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4ycmVtICogKDEgKyAoLjAyICogJGkpKTtcbiAgICB9XG4gICAgJGk6ICRpICsgMTtcbiAgfVxuXG4gIC8vIEhhbmRsZSBiZWxvdyAzNjBweCBzY3JlZW5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNjBweCkge1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICB9XG59XG4iLCIvLyBTY2FsZSB0cmFuc2l0aW9uXG4uc2NhbGUtdHJhbnNpdGlvbiB7XG4gICYuc2NhbGUtb3V0IHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnMgIWltcG9ydGFudDtcbiAgfVxuXG4gICYuc2NhbGUtaW4ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cblxuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGN1YmljLWJlemllcigwLjUzLCAwLjAxLCAwLjM2LCAxLjYzKSAhaW1wb3J0YW50O1xufSIsIlxuXG4uY2FyZC1wYW5lbCB7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgLjI1cztcbiAgcGFkZGluZzogJGNhcmQtcGFkZGluZztcbiAgbWFyZ2luOiAkZWxlbWVudC10b3AtbWFyZ2luIDAgJGVsZW1lbnQtYm90dG9tLW1hcmdpbiAwO1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBAZXh0ZW5kIC56LWRlcHRoLTE7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWJnLWNvbG9yO1xufVxuXG4uY2FyZCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy9tYXJnaW46ICRlbGVtZW50LXRvcC1tYXJnaW4gMCAkZWxlbWVudC1ib3R0b20tbWFyZ2luIDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWJnLWNvbG9yO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IC4yNXM7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIEBleHRlbmQgLnotZGVwdGgtMTtcblxuICAuY2FyZC10aXRsZSB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgJi5hY3RpdmF0b3Ige1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIENhcmQgU2l6ZXNcbiAgJi5zbWFsbCwgJi5tZWRpdW0sICYubGFyZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5jYXJkLWltYWdlIHtcbiAgICAgIG1heC1oZWlnaHQ6IDYwJTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICAgIC5jYXJkLWltYWdlICsgLmNhcmQtY29udGVudCB7XG4gICAgICBtYXgtaGVpZ2h0OiA0MCU7XG4gICAgfVxuICAgIC5jYXJkLWNvbnRlbnQge1xuICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICAgIC5jYXJkLWFjdGlvbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICB9XG5cbiAgJi5zbWFsbCB7XG4gICAgaGVpZ2h0OiAzMDBweDtcbiAgfVxuXG4gICYubWVkaXVtIHtcbiAgICBoZWlnaHQ6IDQwMHB4O1xuICB9XG5cbiAgJi5sYXJnZSB7XG4gICAgaGVpZ2h0OiA1MDBweDtcbiAgfVxuXG4gIC8vIEhvcml6b250YWwgQ2FyZHNcbiAgJi5ob3Jpem9udGFsIHtcbiAgICAmLnNtYWxsLCAmLm1lZGl1bSwgJi5sYXJnZSB7XG4gICAgICAuY2FyZC1pbWFnZSB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgLmNhcmQtaW1hZ2Uge1xuICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICBpbWcge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAycHggMCAwIDJweDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FyZC1zdGFja2VkIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgZmxleDogMTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgLmNhcmQtY29udGVudCB7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBTdGlja3kgQWN0aW9uIFNlY3Rpb25cbiAgJi5zdGlja3ktYWN0aW9uIHtcbiAgICAuY2FyZC1hY3Rpb24ge1xuICAgICAgei1pbmRleDogMjtcbiAgICB9XG5cbiAgICAuY2FyZC1yZXZlYWwge1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA2NHB4O1xuICAgIH1cbiAgfVxuXG5cblxuXG4gIC5jYXJkLWltYWdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAvLyBJbWFnZSBiYWNrZ3JvdW5kIGZvciBjb250ZW50XG4gICAgaW1nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYm9yZGVyLXJhZGl1czogMnB4IDJweCAwIDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAuY2FyZC10aXRsZSB7XG4gICAgICBjb2xvcjogJGNhcmQtYmctY29sb3I7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogJGNhcmQtcGFkZGluZztcbiAgICB9XG4gIH1cblxuICAuY2FyZC1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAkY2FyZC1wYWRkaW5nO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAycHggMnB4O1xuXG4gICAgcCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgIC5jYXJkLXRpdGxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG5cbiAgICAgIGkge1xuICAgICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY2FyZC1hY3Rpb24ge1xuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwIDAgMnB4IDJweDtcbiAgICB9XG5cbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGRpdmlkZXItY29sb3I7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG5cbiAgICBhIHtcbiAgICAgIHBhZGRpbmc6IDE2cHggJGNhcmQtcGFkZGluZztcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICBhOm5vdCguYnRuKTpub3QoLmJ0bi1sYXJnZSk6bm90KC5idG4tZmxvYXRpbmcpIHtcbiAgICAgIGNvbG9yOiAkY2FyZC1saW5rLWNvbG9yO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjNzIGVhc2U7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvci1ob3Zlci1vcGFxdWU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmNhcmQtcmV2ZWFsIHtcbiAgICBwYWRkaW5nOiAkY2FyZC1wYWRkaW5nO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1iZy1jb2xvcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiAzO1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAuY2FyZC10aXRsZSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cbiIsIiN0b2FzdC1jb250YWluZXIge1xuICBkaXNwbGF5OmJsb2NrO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEwMDAwO1xuXG4gIEBtZWRpYSAjeyRzbWFsbC1hbmQtZG93bn0ge1xuICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICBib3R0b206IDAlO1xuICB9XG4gIEBtZWRpYSAjeyRtZWRpdW0tb25seX0ge1xuICAgIGxlZnQ6IDUlO1xuICAgIGJvdHRvbTogNyU7XG4gICAgbWF4LXdpZHRoOiA5MCU7XG4gIH1cbiAgQG1lZGlhICN7JGxhcmdlLWFuZC11cH0ge1xuICAgIHRvcDogMTAlO1xuICAgIHJpZ2h0OiA3JTtcbiAgICBtYXgtd2lkdGg6IDg2JTtcbiAgfVxufVxuXG4udG9hc3Qge1xuICBAZXh0ZW5kIC56LWRlcHRoLTE7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgdG9wOiAzNXB4O1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogJHRvYXN0LWhlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9hc3QtY29sb3I7XG4gIHBhZGRpbmc6IDEwcHggMjVweDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogJHRvYXN0LXRleHQtY29sb3I7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuXG4gIC50b2FzdC1hY3Rpb24ge1xuICAgIGNvbG9yOiAkdG9hc3QtYWN0aW9uLWNvbG9yO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMjVweDtcbiAgICBtYXJnaW4tbGVmdDogM3JlbTtcbiAgfVxuXG4gICYucm91bmRlZHtcbiAgICBib3JkZXItcmFkaXVzOiAyNHB4O1xuICB9XG5cbiAgQG1lZGlhICN7JHNtYWxsLWFuZC1kb3dufSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuIiwiLnRhYnMge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAmLnRhYnMtdHJhbnNwYXJlbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgLnRhYiBhIHtcbiAgICAgIGNvbG9yOiAkZm9udC1vbi1wcmltYXJ5LWNvbG9yLW1lZGl1bTtcbiAgICB9XG5cbiAgICAudGFiLmRpc2FibGVkIGEsXG4gICAgLnRhYi5kaXNhYmxlZCBhOmhvdmVyLFxuICAgIC50YWIuZGlzYWJsZWQgYTpmb2N1cyB7XG4gICAgICBjb2xvcjogJGZvbnQtb24tcHJpbWFyeS1jb2xvci1kaXNhYmxlZDtcbiAgICB9XG5cbiAgICAudGFiIGE6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN1cmZhY2UtaG92ZXItY29sb3Itb3BhcXVlO1xuICAgIH1cblxuICAgIC50YWIgYS5hY3RpdmUsXG4gICAgLnRhYiBhOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC50YWIgYTpob3ZlcixcbiAgICAudGFiIGEuYWN0aXZlLFxuICAgIC50YWIgYTpmb2N1cyB7XG4gICAgICBjb2xvcjogJGZvbnQtb24tcHJpbWFyeS1jb2xvci1tYWluO1xuICAgIH1cblxuICAgIC5pbmRpY2F0b3Ige1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvbnQtb24tcHJpbWFyeS1jb2xvci1tYWluO1xuICAgIH1cbiAgfVxuXG4gICYudGFicy1maXhlZC13aWR0aCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAudGFiIHtcbiAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICB9XG4gIH1cblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgaGVpZ2h0OiA0OHB4O1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRhYnMtYmctY29sb3I7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIC50YWIge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogNDhweDtcbiAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG5cbiAgICBhIHtcbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG5cbiAgICAgICYuYWN0aXZlLFxuICAgICAgJjpmb2N1cyxcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHRhYnMtdGV4dC1hY3RpdmUtY29sb3I7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvci1ob3Zlci1vcGFxdWU7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMsXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yLWZvY3VzLW9wYXF1ZTtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgY29sb3I6ICR0YWJzLXRleHQtaW5hY3RpdmUtY29sb3I7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcGFkZGluZzogMCAyNHB4O1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjI4cyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIC4yOHMgZWFzZTtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkIGEsXG4gICAgJi5kaXNhYmxlZCBhOmhvdmVyIHtcbiAgICAgICY6bm90KDpmb2N1cykge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cblxuICAgICAgY29sb3I6ICR0YWJzLXRleHQtZGlzYWJsZWQtY29sb3I7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAuaW5kaWNhdG9yIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJzLXVuZGVybGluZS1jb2xvcjtcbiAgICB3aWxsLWNoYW5nZTogbGVmdCwgcmlnaHQ7XG4gIH1cbn1cblxuLy8gRml4ZWQgU2lkZW5hdiBoaWRlIG9uIHNtYWxsZXJcbkBtZWRpYSAjeyRtZWRpdW0tYW5kLWRvd259IHtcbiAgLnRhYnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAudGFiIHtcbiAgICAgIGZsZXgtZ3JvdzogMTtcblxuICAgICAgYSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMTJweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5tYXRlcmlhbC10b29sdGlwIHtcbiAgcGFkZGluZzogMCA4cHg7ICBcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmctY29sb3I7XG4gIGNvbG9yOiAkdG9vbHRpcC1mb250LWNvbG9yO1xuICBcbiAgZm9udC1mYW1pbHk6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1zbWFsbC1mb250LWZhbWlseS1uYW1lKTtcbiAgZm9udC1zaXplOiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktc21hbGwtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLW1kLXN5cy10eXBlc2NhbGUtYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1tZC1zeXMtdHlwZXNjYWxlLWJvZHktc21hbGwtZm9udC13ZWlnaHQpO1xuXG4gIG1pbi1oZWlnaHQ6IDI0cHg7XG4gIG9wYWNpdHk6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA0cHgpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIFxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHotaW5kZXg6IDIwMDA7XG59XG5cbi5iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3BhY2l0eTogMDtcbiAgaGVpZ2h0OiA3cHg7XG4gIHdpZHRoOiAxNHB4O1xuICBib3JkZXItcmFkaXVzOiAwIDAgNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmctY29sb3I7XG4gIHotaW5kZXg6IC0xO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuIiwiLmJ0biwgLmJ0bi1mbG9hdGluZywgLmJ0bi1sYXJnZSwgLmJ0bi1zbWFsbCwgLmJ0bi1mbGF0IHtcbiAgLS1mb250LXNpemUtaWNvbjogMTZweDtcbiAgLS1wYWRkaW5nOiAyNHB4O1xuICAtLXBhZGRpbmctaWNvbjogMTZweDtcbiAgLS1nYXAtaWNvbjogOHB4O1xuICBcbiAgaGVpZ2h0OiAkYnV0dG9uLWhlaWdodDtcbiAgXG4gIC8vIGxpbmUtaGVpZ2h0OiAkYnV0dG9uLWhlaWdodDtcbiAgYm9yZGVyOiAkYnV0dG9uLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7ICBcbiAgXG4gIC8vIHBhZGRpbmc6ICRidXR0b24tcGFkZGluZztcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wYWRkaW5nKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tcGFkZGluZyk7XG4gIFxuICBjb2xvcjogJGJ1dHRvbi1yYWlzZWQtY29sb3I7XG4gIGZvbnQtc2l6ZTogJGJ1dHRvbi1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgXG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBHZXRzIHJpZCBvZiB0YXAgYWN0aXZlIHN0YXRlXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG91dGxpbmU6IDA7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1vdXQ7XG59XG5cbi8vIEljb25cbi5idG4uaWNvbi1sZWZ0LCAuYnRuLmljb24tcmlnaHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uYnRuLmljb24tbGVmdCB7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLWljb24pICsgdmFyKC0tZm9udC1zaXplLWljb24pICsgdmFyKC0tZ2FwLWljb24pKTtcbn1cbi5idG4uaWNvbi1yaWdodCB7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tcGFkZGluZy1pY29uKSArIHZhcigtLWZvbnQtc2l6ZS1pY29uKSArIHZhcigtLWdhcC1pY29uKSk7IFxufVxuLmJ0bi5pY29uLWxlZnQgaSwgLmJ0bi5pY29uLXJpZ2h0IGkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWljb24pO1xufVxuLmJ0bi5pY29uLWxlZnQgaSB7XG4gIGxlZnQ6IHZhcigtLXBhZGRpbmctaWNvbik7XG59XG4uYnRuLmljb24tcmlnaHQgaSB7XG4gIHJpZ2h0OiB2YXIoLS1wYWRkaW5nLWljb24pO1xufVxuXG5cbi8vIERpc2FibGVkIHNoYXJlZCBzdHlsZVxuLmJ0bi5kaXNhYmxlZCxcbi5idG4tZmxvYXRpbmcuZGlzYWJsZWQsXG4uYnRuLWxhcmdlLmRpc2FibGVkLFxuLmJ0bi1zbWFsbC5kaXNhYmxlZCxcbi5idG4tZmxhdC5kaXNhYmxlZCxcbi5idG46ZGlzYWJsZWQsXG4uYnRuLWZsb2F0aW5nOmRpc2FibGVkLFxuLmJ0bi1sYXJnZTpkaXNhYmxlZCxcbi5idG4tc21hbGw6ZGlzYWJsZWQsXG4uYnRuLWZsYXQ6ZGlzYWJsZWQsXG4uYnRuW2Rpc2FibGVkXSxcbi5idG4tZmxvYXRpbmdbZGlzYWJsZWRdLFxuLmJ0bi1sYXJnZVtkaXNhYmxlZF0sXG4uYnRuLXNtYWxsW2Rpc2FibGVkXSxcbi5idG4tZmxhdFtkaXNhYmxlZF0ge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1kaXNhYmxlZC1iYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGNvbG9yOiAkYnV0dG9uLWRpc2FibGVkLWNvbG9yICFpbXBvcnRhbnQ7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1kaXNhYmxlZC1iYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICRidXR0b24tZGlzYWJsZWQtY29sb3IgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy0tLSBGaWxsZWQgQnV0dG9uXG4uYnRuLmZpbGxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1wcmltYXJ5KTtcbn1cbi8vLS0tIEZpbGxlZCBUb25hbFxuLmJ0bi50b25hbCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1zZWNvbmRhcnktY29udGFpbmVyKTtcbiAgY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1vbi1zZWNvbmRhcnktY29udGFpbmVyKTtcbn1cbi8vLS0tIFRleHQtQnV0dG9uIChGbGF0KVxuLmJ0bi50ZXh0LCAuYnRuLWZsYXQge1xuICBib3gtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHZhcigtLW1kLXN5cy1jb2xvci1wcmltYXJ5KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4ycztcbiAgJjpmb2N1cyxcbiAgJjpob3ZlciB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWZsYXQtaG92ZXItYmFja2dyb3VuZC1jb2xvcjtcbiAgfVxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWZsYXQtZm9jdXMtYmFja2dyb3VuZC1jb2xvcjtcbiAgfVxuICAmLmRpc2FibGVkLFxuICAmLmJ0bi50ZXh0W2Rpc2FibGVkXSwgJi5idG4tZmxhdFtkaXNhYmxlZF0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICRidXR0b24tZmxhdC1kaXNhYmxlZC1jb2xvciAhaW1wb3J0YW50O1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgfVxufVxuLy8tLS0gT3V0bGluZWQtQnV0dG9uXG4uYnRuLm91dGxpbmVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAkYnV0dG9uLXJhaXNlZC1iYWNrZ3JvdW5kO1xuICBib3JkZXI6IDFweCBzb2xpZCAkYnV0dG9uLXJhaXNlZC1iYWNrZ3JvdW5kO1xufVxuLy8tLS0gRWxldmF0ZWRcbi5idG4uZWxldmF0ZWQge1xuICBAZXh0ZW5kIC50b25hbDtcbiAgQGV4dGVuZCAuei1kZXB0aC0xO1xufVxuXG5cbi8vPT09PT09PT09PT09PT09PT09PT09PT09IFN0YXRlcyAoSG92ZXIsIEZvY3VzZWQsIC4uLilcblxuLmJ0biB7XG4gIEBleHRlbmQgLmZpbGxlZDtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLXJhaXNlZC1iYWNrZ3JvdW5kLWhvdmVyO1xuICAgIEBleHRlbmQgLnotZGVwdGgtMS1oYWxmO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1yYWlzZWQtYmFja2dyb3VuZC1mb2N1cztcbiAgICBAZXh0ZW5kIC56LWRlcHRoLTEtaGFsZjtcbiAgfSAgXG59XG5cblxuXG4vLy0tLS0tLS0tLS1cbi8vIC5idG4tZmxvYXRpbmcge1xuLy8gICBib3JkZXItcmFkaXVzOiAxNnB4O1xuLy8gICB3aWR0aDogdW5zZXQ7XG4vLyAgIGRpc3BsYXk6IGdyaWQ7XG4vLyAgIGdyaWQtYXV0by1mbG93OiBjb2x1bW47XG4vLyAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4vLyAgIHBhZGRpbmc6IDE2cHggIWltcG9ydGFudDtcbi8vICAgcGFkZGluZy1yaWdodDogMjRweCAhaW1wb3J0YW50OyAvKiBvbmx5IHdpdGggaWNvbiAqL1xuLy8gICBnYXA6IDhweDtcbi8vIH1cbi8vIC5idG4tZmxvYXRpbmcuYnRuLWxhcmdlIHtcbi8vICAgd2lkdGg6IHVuc2V0O1xuLy8gfVxuLy8gLmJ0bi1sYXJnZSB7XG4vLyAgIGZvbnQtc2l6ZTogMTRweDtcbi8vIH1cbi8vLS0tLS1cbi8vIEZsb2F0aW5nIGJ1dHRvblxuLmJ0bi1mbG9hdGluZyB7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1mbG9hdGluZy1iYWNrZ3JvdW5kLWhvdmVyO1xuICAgIEBleHRlbmQgLnotZGVwdGgtMS1oYWxmO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1mbG9hdGluZy1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIEBleHRlbmQgLnotZGVwdGgtMS1oYWxmO1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cblxuICAmLmJ0bi1sYXJnZSB7XG4gICAgJi5oYWxmd2F5LWZhYiB7XG4gICAgICBib3R0b206IC0kYnV0dG9uLWZsb2F0aW5nLWxhcmdlLXNpemUgKiAwLjU7XG4gICAgfVxuICAgIHdpZHRoOiAkYnV0dG9uLWZsb2F0aW5nLWxhcmdlLXNpemU7XG4gICAgaGVpZ2h0OiAkYnV0dG9uLWZsb2F0aW5nLWxhcmdlLXNpemU7XG4gICAgcGFkZGluZzogMDtcbiAgICAvLyBmb250LXNpemU6IFxuICAgIC8vIGkge1xuICAgIC8vICAgLy8gbGluZS1oZWlnaHQ6ICRidXR0b24tZmxvYXRpbmctbGFyZ2Utc2l6ZTtcbiAgICAvLyB9XG4gIH1cblxuICAmLmJ0bi1zbWFsbCB7XG4gICAgJi5oYWxmd2F5LWZhYiB7XG4gICAgICBib3R0b206IC0kYnV0dG9uLWZsb2F0aW5nLXNtYWxsLXNpemUgKiAwLjU7XG4gICAgfVxuICAgIHdpZHRoOiAkYnV0dG9uLWZsb2F0aW5nLXNtYWxsLXNpemU7XG4gICAgaGVpZ2h0OiAkYnV0dG9uLWZsb2F0aW5nLXNtYWxsLXNpemU7XG4gICAgLy8gaSB7XG4gICAgLy8gICBsaW5lLWhlaWdodDogJGJ1dHRvbi1mbG9hdGluZy1zbWFsbC1zaXplO1xuICAgIC8vIH1cbiAgfVxuXG4gICYuaGFsZndheS1mYWIge1xuICAgICYubGVmdCB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDI0cHg7XG4gICAgfVxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMjRweDtcbiAgICBib3R0b206IC0kYnV0dG9uLWZsb2F0aW5nLXNpemUgKiAwLjU7XG4gIH1cblxuICAvLyBGSVhFU1xuICAvLyB3aWR0aDogdW5zZXQ7ICBcbiAgLy8gcGFkZGluZzogMTZweCAhaW1wb3J0YW50O1xuICAvLyBwYWRkaW5nLXJpZ2h0OiAyNHB4ICFpbXBvcnRhbnQ7IC8qIG9ubHkgd2l0aCBpY29uICovXG4gIC8vIGdhcDogOHB4O1xuXG4gIGNvbG9yOiAkYnV0dG9uLWZsb2F0aW5nLWNvbG9yO1xuICBcbiAgd2lkdGg6ICRidXR0b24tZmxvYXRpbmctc2l6ZTtcbiAgaGVpZ2h0OiAkYnV0dG9uLWZsb2F0aW5nLXNpemU7XG4gIC8vIGxpbmUtaGVpZ2h0OiAkYnV0dG9uLWZsb2F0aW5nLXNpemU7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1mbG9hdGluZy1iYWNrZ3JvdW5kO1xuICBib3JkZXItcmFkaXVzOiAkYnV0dG9uLWZsb2F0aW5nLXJhZGl1cztcbiAgcGFkZGluZzogMDtcblxuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLWF1dG8tZmxvdzogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgei1pbmRleDogMTtcbiAgQGV4dGVuZCAuei1kZXB0aC0xO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gIGkge1xuICAgIGNvbG9yOiAkYnV0dG9uLWZsb2F0aW5nLWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogJGJ1dHRvbi1sYXJnZS1pY29uLWZvbnQtc2l6ZTtcbiAgICAvLyBsaW5lLWhlaWdodDogJGJ1dHRvbi1mbG9hdGluZy1zaXplO1xuICAgIHdpZHRoOiBpbmhlcml0O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cbi8vIGJ1dHRvbiBmaXhcbmJ1dHRvbi5idG4tZmxvYXRpbmcge1xuICBib3JkZXI6ICRidXR0b24tYm9yZGVyO1xufVxuLy8gRml4ZWQgQWN0aW9uIEJ1dHRvblxuLmZpeGVkLWFjdGlvbi1idG4ge1xuICAmLmFjdGl2ZSB7XG4gICAgdWwge1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgICAgXG4gICAgfVxuICB9XG5cbiAgLy8gRGlyZWN0aW9uc1xuICAmLmRpcmVjdGlvbi1sZWZ0LFxuICAmLmRpcmVjdGlvbi1yaWdodCB7XG4gICAgcGFkZGluZzogMCAwIDAgMTVweDtcbiAgICB1bCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIHJpZ2h0OiA2NHB4O1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgLyp3aWR0aCAxMDAlIG9ubHkgZ29lcyB0byB3aWR0aCBvZiBidXR0b24gY29udGFpbmVyICovXG4gICAgICB3aWR0aDogNTAwcHg7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luOiA3LjVweCAxNXB4IDAgMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5kaXJlY3Rpb24tcmlnaHQge1xuICAgIHBhZGRpbmc6IDAgMTVweCAwIDA7XG4gICAgdWwge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIGRpcmVjdGlvbjogcnRsO1xuICAgICAgbGVmdDogNjRweDtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGkge1xuICAgICAgICBtYXJnaW46IDcuNXB4IDAgMCAxNXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLmRpcmVjdGlvbi1ib3R0b20ge1xuICAgIHBhZGRpbmc6IDAgMCAxNXB4IDA7XG4gICAgdWwge1xuICAgICAgdG9wOiA2NHB4O1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luOiAxNXB4IDAgMCAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLnRvb2xiYXIge1xuICAgICYuYWN0aXZlIHtcbiAgICAgICY+YSBpIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgcGFkZGluZzogMDtcbiAgICBoZWlnaHQ6ICRidXR0b24tZmxvYXRpbmctbGFyZ2Utc2l6ZTtcbiAgICB1bCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIGxpIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgY29sb3I6ICRidXR0b24tZmxvYXRpbmctY29sb3I7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6ICRidXR0b24tZmxvYXRpbmctbGFyZ2Utc2l6ZTtcbiAgICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgICAgaSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMjNweDtcbiAgYm90dG9tOiAyM3B4O1xuICBwYWRkaW5nLXRvcDogMTVweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgei1pbmRleDogOTk3O1xuICB1bCB7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogNjRweDtcbiAgICBtYXJnaW46IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGxpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgfVxuICAgIGEuYnRuLWZsb2F0aW5nIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICB9XG4gIC5mYWItYmFja2Ryb3Age1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAtMTtcbiAgICB3aWR0aDogJGJ1dHRvbi1mbG9hdGluZy1zaXplO1xuICAgIGhlaWdodDogJGJ1dHRvbi1mbG9hdGluZy1zaXplO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tZmxvYXRpbmctYmFja2dyb3VuZDtcbiAgICBib3JkZXItcmFkaXVzOiAkYnV0dG9uLWZsb2F0aW5nLXJhZGl1cztcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG59XG5cbi8vLS0tIEhlbHBlciBjbGFzc2VzIChmb3IgYWxsKVxuXG4vLyBMYXJnZSBidXR0b25cbi5idG4tbGFyZ2Uge1xuICBAZXh0ZW5kIC5idG47XG4gIGhlaWdodDogJGJ1dHRvbi1sYXJnZS1oZWlnaHQ7XG4gIC8vIGxpbmUtaGVpZ2h0OiAkYnV0dG9uLWxhcmdlLWhlaWdodDtcbiAgZm9udC1zaXplOiAkYnV0dG9uLWxhcmdlLWZvbnQtc2l6ZTtcbiAgcGFkZGluZzogMCAyOHB4O1xuICBpIHtcbiAgICBmb250LXNpemU6ICRidXR0b24tbGFyZ2UtaWNvbi1mb250LXNpemU7XG4gIH1cbn1cblxuLy8gU21hbGwgYnV0dG9uXG4uYnRuLXNtYWxsIHtcbiAgQGV4dGVuZCAuYnRuO1xuICBoZWlnaHQ6ICRidXR0b24tc21hbGwtaGVpZ2h0O1xuICBsaW5lLWhlaWdodDogJGJ1dHRvbi1zbWFsbC1oZWlnaHQ7XG4gIGZvbnQtc2l6ZTogJGJ1dHRvbi1zbWFsbC1mb250LXNpemU7XG4gIGkge1xuICAgIGZvbnQtc2l6ZTogJGJ1dHRvbi1zbWFsbC1pY29uLWZvbnQtc2l6ZTtcbiAgfVxufVxuXG4vLyBCbG9jayBidXR0b25cbi5idG4tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmJ0bi5yb3VuZGVkIHtcbiAgYm9yZGVyLXJhZGl1czogOTk5OTlweDtcbn0iLCIuZHJvcGRvd24tY29udGVudCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cblxuICBAZXh0ZW5kIC56LWRlcHRoLTE7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1iZy1jb2xvcjtcbiAgbWFyZ2luOiAwO1xuICBkaXNwbGF5OiBub25lO1xuICBtaW4td2lkdGg6IDEwMHB4O1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgei1pbmRleDogOTk5OTsgLy8gVE9ETzogQ2hlY2sgaWYgdGhpcyBkb2Vzbid0IGJyZWFrIG90aGVyIHRoaW5nc1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG5cblxuICBsaSB7XG4gICAgJjpob3ZlciwgJi5hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWhvdmVyLWJnLWNvbG9yO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAmLmRpdmlkZXIge1xuICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgIH1cblxuICAgICYgPiBhLCAmID4gc3BhbiB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBjb2xvcjogJGRyb3Bkb3duLWNvbG9yO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgIHBhZGRpbmc6ICgoJGRyb3Bkb3duLWl0ZW0taGVpZ2h0IC0gMjIpICogMC41KSAxNnB4O1xuICAgIH1cblxuICAgICYgPiBzcGFuID4gbGFiZWwge1xuICAgICAgdG9wOiAxcHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgIH1cblxuICAgIC8vIEljb24gYWxpZ25tZW50IG92ZXJyaWRlXG4gICAgJiA+IGEgPiBpIHtcbiAgICAgIGhlaWdodDogaW5oZXJpdDtcbiAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW46IDAgMjRweCAwIDA7XG4gICAgICB3aWR0aDogMjRweDtcbiAgICB9XG5cblxuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgbWluLWhlaWdodDogJGRyb3Bkb3duLWl0ZW0taGVpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuXG5ib2R5LmtleWJvYXJkLWZvY3VzZWQge1xuICAuZHJvcGRvd24tY29udGVudCBsaTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWZvY3VzLWJnLWNvbG9yO1xuICB9XG59XG5cbi8vIElucHV0IGZpZWxkIHNwZWNpZmljaXR5IGJ1Z2ZpeFxuLmlucHV0LWZpZWxkLmNvbCAuZHJvcGRvd24tY29udGVudCBbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWwge1xuICB0b3A6IDFweDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxOHB4O1xuICB0cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5kcm9wZG93bi10cmlnZ2VyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuIiwiLm1vZGFsIHtcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gIEBleHRlbmQgLnotZGVwdGgtNTtcblxuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtYmFja2dyb3VuZC1jb2xvcjtcbiAgcGFkZGluZzogMDtcbiAgbWF4LWhlaWdodDogNzAlO1xuICB3aWR0aDogNTUlO1xuICBtYXJnaW46IGF1dG87XG4gIG92ZXJmbG93LXk6IGF1dG87XG5cbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB3aWxsLWNoYW5nZTogdG9wLCBvcGFjaXR5O1xuXG4gIEBtZWRpYSAjeyRtZWRpdW0tYW5kLWRvd259IHtcbiAgICB3aWR0aDogODAlO1xuICB9XG5cbiAgaDEsaDIsaDMsaDQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICAubW9kYWwtY29udGVudCB7XG4gICAgcGFkZGluZzogMjRweDtcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gIH1cblxuICAubW9kYWwtY2xvc2Uge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gIC5tb2RhbC1mb290ZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAycHggMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRtb2RhbC1iYWNrZ3JvdW5kLWNvbG9yO1xuICAgIHBhZGRpbmc6IDRweCA2cHg7XG4gICAgaGVpZ2h0OiA1NnB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgLmJ0biwgLmJ0bi1mbGF0IHtcbiAgICAgIG1hcmdpbjogNnB4IDA7XG4gICAgfVxuICB9XG59XG5cbi5tb2RhbC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA5OTk7XG4gIHRvcDogLTI1JTtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxMjUlO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHk7XG59XG5cbi8vIE1vZGFsIHdpdGggZml4ZWQgYWN0aW9uIGZvb3RlclxuLm1vZGFsLm1vZGFsLWZpeGVkLWZvb3RlciB7XG4gIHBhZGRpbmc6IDA7XG4gIGhlaWdodDogNzAlO1xuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA1NnB4KTtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cblxuICAubW9kYWwtZm9vdGVyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGRpdmlkZXItY29sb3I7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgfVxufVxuXG4vLyBNb2RhbCBCb3R0b20gU2hlZXQgU3R5bGVcbi5tb2RhbC5ib3R0b20tc2hlZXQge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogLTEwMCU7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IDQ1JTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgd2lsbC1jaGFuZ2U6IGJvdHRvbSwgb3BhY2l0eTtcbn1cbiIsIi5jb2xsYXBzaWJsZSB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sbGFwc2libGUtYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkY29sbGFwc2libGUtYm9yZGVyLWNvbG9yO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRjb2xsYXBzaWJsZS1ib3JkZXItY29sb3I7XG4gIG1hcmdpbjogJGVsZW1lbnQtdG9wLW1hcmdpbiAwICRlbGVtZW50LWJvdHRvbS1tYXJnaW4gMDtcbiAgQGV4dGVuZCAuei1kZXB0aC0xO1xufVxuXG4uY29sbGFwc2libGUtaGVhZGVyIHtcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMFxuICB9XG5cbiAgZGlzcGxheTogZmxleDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBsaW5lLWhlaWdodDogMS41O1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbGxhcHNpYmxlLWJvcmRlci1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbGxhcHNpYmxlLWJnLWNvbG9yO1xuXG4gIGkge1xuICAgIHdpZHRoOiAycmVtO1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICB9XG59XG5cbi5jb2xsYXBzaWJsZS1oZWFkZXI6OmFmdGVyIHtcbiAgY29udGVudDogJ+KWvic7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG4gIHdpZHRoOiAxMDAlO1xufVxuLmFjdGl2ZSAuY29sbGFwc2libGUtaGVhZGVyOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwi4pa0XCI7XG59XG5cblxuLmtleWJvYXJkLWZvY3VzZWQgLmNvbGxhcHNpYmxlLWhlYWRlcjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzdXJmYWNlLWZvY3VzLWNvbG9yLW9wYXF1ZTtcbn1cblxuLmNvbGxhcHNpYmxlLWJvZHkge1xuICBtYXgtaGVpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbGxhcHNpYmxlLWJvcmRlci1jb2xvcjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogMCAycmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sbGFwc2libGUtYmctY29sb3I7XG59XG5cbi8vIFBvcG91dCBDb2xsYXBzaWJsZVxuXG4uY29sbGFwc2libGUucG9wb3V0IHtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuXG4gID4gbGkge1xuICAgIGJveC1zaGFkb3c6IDAgMnB4IDVweCAwIHJnYmEoMCwgMCwgMCwgMC4xNiksIDAgMnB4IDEwcHggMCByZ2JhKDAsIDAsIDAsIDAuMTIpO1xuICAgIC8vIHRyYW5zZm9ybTogc2NhbGVYKC45Mik7XG4gICAgbWFyZ2luOiAwIDI0cHg7XG4gICAgdHJhbnNpdGlvbjogbWFyZ2luIC4zNXMgY3ViaWMtYmV6aWVyKDAuMjUwLCAwLjQ2MCwgMC40NTAsIDAuOTQwKTtcbiAgfVxuXG4gID4gbGkuYWN0aXZlIHtcbiAgICBib3gtc2hhZG93OiAwIDVweCAxMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjE4KSwgMCA0cHggMTVweCAwIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgbWFyZ2luOiAxNnB4IDA7XG4gICAgLy8gdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gIH1cbn1cbiIsIi5jaGlwIHtcbiAgLS1mb250LXNpemU6IDE0cHg7XG4gIC0tZm9udC1zaXplLWljb246IDE4cHg7XG4gIC0tcGFkZGluZzogOHB4O1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRjaGlwLWJnLWNvbG9yO1xuXG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBnYXA6IDhweDtcblxuICBtYXJnaW46IDA7XG4gIGhlaWdodDogMzJweDtcblxuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZGRpbmcpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWRkaW5nKTtcbiAgXG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IDUwMDsgIFxuICBjb2xvcjogJGNoaXAtZm9udC1jb2xvcjtcbiAgXG4gIGJvcmRlci1yYWRpdXM6IDhweDtcblxuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjaGlwLXNlbGVjdGVkLWNvbG9yO1xuICAgIGNvbG9yOiAkY2hpcC1zZWxlY3RlZC1mb250LWNvbG9yO1xuICB9XG59XG5cbi5jaGlwLm91dGxpbmVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLW91dGxpbmUpO1xuICBib3JkZXItd2lkdGg6IDFweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbn1cblxuLmNoaXAgPiBpbWcge1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xufVxuXG4uY2hpcCA+IC5tYXRlcmlhbC1pY29ucyB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWljb24pO1xuICBAZXh0ZW5kIC5vbi1zdXJmYWNlLXZhcmlhbnQtdGV4dDtcbn1cblxuLmNoaXAgLmNsb3NlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBoZWlnaHQ6IDI0cHg7XG4gIHdpZHRoOiAyNHB4O1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBncmlkO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5jaGlwIC5jbG9zZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4ODg4O1xufVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5jaGlwcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogNHB4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNoaXAtYm9yZGVyLWNvbG9yO1xuICBib3gtc2hhZG93OiBub25lO1xuICBtYXJnaW46ICRpbnB1dC1tYXJnaW47XG5cbiAgcGFkZGluZzogNHB4O1xuICAvLyBtaW4taGVpZ2h0OiA0NXB4O1xuXG4gIG91dGxpbmU6IG5vbmU7XG4gIHRyYW5zaXRpb246IGFsbCAuM3M7XG5cbiAgJi5mb2N1cyB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjaGlwLXNlbGVjdGVkLWNvbG9yO1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDAgMCAkY2hpcC1zZWxlY3RlZC1jb2xvcjtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGN1cnNvcjogdGV4dDtcbiAgfVxuXG4gIGlucHV0Om5vdChbdHlwZV0pOm5vdCguYnJvd3Nlci1kZWZhdWx0KS5pbnB1dCB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuXG4gICAgLy8gaGVpZ2h0OiAzMnB4O1xuICAgIC8vIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgICAvLyBsaW5lLWhlaWdodDogMzJweDtcbiAgICBoZWlnaHQ6IDMycHg7XG5cbiAgICBvdXRsaW5lOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiAxMjBweDtcblxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8vIEF1dG9jb21wbGV0ZVxuICAuYXV0b2NvbXBsZXRlLWNvbnRlbnQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLyBGb3JtIHByZWZpeFxuLnByZWZpeCB+IC5jaGlwcyB7XG4gIG1hcmdpbi1sZWZ0OiAzcmVtO1xuICB3aWR0aDogOTIlO1xuICB3aWR0aDogY2FsYygxMDAlIC0gM3JlbSk7XG59XG4vLyBGb3JtIHN1ZmZpeFxuLnN1ZmZpeCB+IC5jaGlwcyB7XG4gIG1hcmdpbi1yaWdodDogM3JlbTtcbiAgd2lkdGg6IDkyJTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDNyZW0pO1xufVxuLmNoaXBzOmVtcHR5IH4gbGFiZWwgIHtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTQwJSk7XG59XG4iLCIubWF0ZXJpYWxib3hlZCB7XG4gICY6aG92ZXIge1xuICAgICY6bm90KC5hY3RpdmUpIHtcbiAgICAgIG9wYWNpdHk6IC44O1xuICAgIH1cbiAgfVxuXG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjdXJzb3I6IHpvb20taW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNHM7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gICYuYWN0aXZlIHtcbiAgICBjdXJzb3I6IHpvb20tb3V0O1xuICB9XG59XG5cbiNtYXRlcmlhbGJveC1vdmVybGF5IHtcbiAgcG9zaXRpb246Zml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbWQtc3lzLWNvbG9yLWJhY2tncm91bmQpO1xuICB6LWluZGV4OiAxMDAwO1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbn1cblxuLm1hdGVyaWFsYm94LWNhcHRpb24ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGNvbG9yOiB2YXIoLS1mb250LWNvbG9yLW1haW4pO1xuICBsaW5lLWhlaWdodDogNTBweDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwJSAxNSU7XG4gIGhlaWdodDogNTBweDtcbiAgei1pbmRleDogMTAwMDtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG59IiwiLy8gUmVtb3ZlIEZvY3VzIEJveGVzXG5zZWxlY3Q6Zm9jdXMge1xuICBvdXRsaW5lOiAkc2VsZWN0LWZvY3VzO1xufVxuXG5idXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQtZm9jdXM7XG59XG5cbmxhYmVsIHtcbiAgZm9udC1zaXplOiAkbGFiZWwtZm9udC1zaXplO1xuICBjb2xvcjogJGlucHV0LWJvcmRlci1jb2xvcjtcbn1cblxuQGltcG9ydCAnaW5wdXQtZmllbGRzJztcbkBpbXBvcnQgJ3JhZGlvLWJ1dHRvbnMnO1xuQGltcG9ydCAnY2hlY2tib3hlcyc7XG5AaW1wb3J0ICdzd2l0Y2hlcyc7XG5AaW1wb3J0ICdzZWxlY3QnO1xuQGltcG9ydCAnZmlsZS1pbnB1dCc7XG5AaW1wb3J0ICdyYW5nZSc7XG4iLCIvKiBUZXh0IElucHV0cyArIFRleHRhcmVhXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKiBTdHlsZSBQbGFjZWhvbGRlcnMgKi9cbjo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogJHBsYWNlaG9sZGVyLXRleHQtY29sb3I7XG59XG5cbi8qIFRleHQgaW5wdXRzICovXG5pbnB1dDpub3QoW3R5cGVdKTpub3QoLmJyb3dzZXItZGVmYXVsdCksXG5pbnB1dFt0eXBlPXRleHRdOm5vdCguYnJvd3Nlci1kZWZhdWx0KSxcbmlucHV0W3R5cGU9cGFzc3dvcmRdOm5vdCguYnJvd3Nlci1kZWZhdWx0KSxcbmlucHV0W3R5cGU9ZW1haWxdOm5vdCguYnJvd3Nlci1kZWZhdWx0KSxcbmlucHV0W3R5cGU9dXJsXTpub3QoLmJyb3dzZXItZGVmYXVsdCksXG5pbnB1dFt0eXBlPXRpbWVdOm5vdCguYnJvd3Nlci1kZWZhdWx0KSxcbmlucHV0W3R5cGU9ZGF0ZV06bm90KC5icm93c2VyLWRlZmF1bHQpLFxuaW5wdXRbdHlwZT1kYXRldGltZV06bm90KC5icm93c2VyLWRlZmF1bHQpLFxuaW5wdXRbdHlwZT1kYXRldGltZS1sb2NhbF06bm90KC5icm93c2VyLWRlZmF1bHQpLFxuaW5wdXRbdHlwZT1tb250aF06bm90KC5icm93c2VyLWRlZmF1bHQpLFxuaW5wdXRbdHlwZT10ZWxdOm5vdCguYnJvd3Nlci1kZWZhdWx0KSxcbmlucHV0W3R5cGU9bnVtYmVyXTpub3QoLmJyb3dzZXItZGVmYXVsdCksXG5pbnB1dFt0eXBlPXNlYXJjaF06bm90KC5icm93c2VyLWRlZmF1bHQpLFxudGV4dGFyZWEubWF0ZXJpYWxpemUtdGV4dGFyZWEgeyBcbiAgb3V0bGluZTogbm9uZTtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgd2lkdGg6IDEwMCU7ICBcbiAgZm9udC1zaXplOiAkbWRfc3lzX3R5cGVzY2FsZV9ib2R5LWxhcmdlX3NpemU7IC8vJGlucHV0LWZvbnQtc2l6ZTsgLy8gPT4gMTYgZHBcbiAgaGVpZ2h0OiA1NnB4OyAvLyA1NmRwICRpbnB1dC1oZWlnaHQ7XG59XG5cbi8qIFZhbGlkYXRpb24gU2FzcyBQbGFjZWhvbGRlcnMgKi9cbiV2YWxpZC1pbnB1dC1zdHlsZSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkaW5wdXQtc3VjY2Vzcy1jb2xvcjtcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwICRpbnB1dC1zdWNjZXNzLWNvbG9yO1xufVxuJWludmFsaWQtaW5wdXQtc3R5bGUge1xuICBib3JkZXItYm90dG9tOiAkaW5wdXQtaW52YWxpZC1ib3JkZXI7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDAgMCAkaW5wdXQtZXJyb3ItY29sb3I7XG59XG4laGlkZGVuLXRleHQge1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi8qXG4lY3VzdG9tLXN1Y2Nlc3MtbWVzc2FnZSB7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS1zdWNjZXNzKTtcbiAgY29sb3I6ICRpbnB1dC1zdWNjZXNzLWNvbG9yO1xufVxuJWN1c3RvbS1lcnJvci1tZXNzYWdlIHtcbiAgY29udGVudDogYXR0cihkYXRhLWVycm9yKTtcbiAgY29sb3I6ICRpbnB1dC1lcnJvci1jb2xvcjtcbn1cbiovXG5cbi5pbnB1dC1maWVsZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY2xlYXI6IGJvdGg7XG4gXG4gIC8vIERlZmF1bHRcblxuICBpbnB1dCwgdGV4dGFyZWEge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzEzNzc3MTkvcGFkZGluZy13aXRoaW4taW5wdXRzLWJyZWFrcy13aWR0aC0xMDAqL1xuXG4gICAgcGFkZGluZzogMCAxNnB4O1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHN1cmZhY2UtY29sb3I7XG5cbiAgICBib3JkZXI6IG5vbmU7IC8vIHJlc2V0XG4gICAgYm9yZGVyLXJhZGl1czogNHB4OyAvLyBtZC5zeXMuc2hhcGUuY29ybmVyLmV4dHJhLXNtYWxsLnRvcFxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICBcbiAgICAmOmZvY3VzOm5vdChbcmVhZG9ubHldKSB7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGlucHV0LWZvY3VzLWNvbG9yO1xuICAgICAgcGFkZGluZy10b3A6IDIwcHggKyAxcHg7IC8vIGFkZCBib3JkZXItd2lkdGhcbiAgICB9XG5cbiAgICAmOmRpc2FibGVkLCAmW3JlYWRvbmx5PVwicmVhZG9ubHlcIl0ge1xuICAgICAgY29sb3I6ICR0ZXh0ZmllbGRfZGlzYWJsZWRfY29sb3I7XG4gICAgICBib3JkZXItY29sb3I6ICR0ZXh0ZmllbGRfZGlzYWJsZWRfb3V0bGluZWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRleHRmaWVsZF9kaXNhYmxlZF9jb250YWluZXJjb2xvcjtcbiAgICB9XG5cbiAgICAvLyBMYWJlbFxuICAgICY6Zm9jdXM6bm90KFtyZWFkb25seV0pICsgbGFiZWwge1xuICAgICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICB9XG4gICAgJjpmb2N1czpub3QoW3JlYWRvbmx5XSkgKyBsYWJlbCxcbiAgICAmOm5vdChbcGxhY2Vob2xkZXI9JyAnXSkgKyBsYWJlbCxcbiAgICAmOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pICsgbGFiZWwge1xuICAgICAgLy9mb250LXNpemU6IDEycHg7IC8vIG1kLnN5cy50eXBlc2NhbGUuYm9keS1zbWFsbC5zaXplXG4gICAgICAvLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8zNDcxNzQ5Mi9jc3MtdHJhbnNpdGlvbi1mb250LXNpemUtYXZvaWQtaml0dGVyaW5nLXdpZ2dsaW5nXG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKGNhbGMoMTIgLyAxNikpO1xuICAgICAgdG9wOiA4cHg7XG4gICAgfVxuXG4gICAgJjpkaXNhYmxlZCArIGxhYmVsLCAmW3JlYWRvbmx5PVwicmVhZG9ubHlcIl0gKyBsYWJlbCB7XG4gICAgICBjb2xvcjogJHRleHRmaWVsZF9kaXNhYmxlZF9jb2xvcjtcbiAgICB9XG4gIH1cblxuICBpbnB1dDo6cGxhY2Vob2xkZXIge1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICB9XG5cbiAgJiA+IGxhYmVsIHtcbiAgICBjb2xvcjogJGlucHV0LWJvcmRlci1jb2xvcjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDE2cHg7XG4gICAgdG9wOiAxNnB4O1xuICAgIGN1cnNvcjogdGV4dDtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgbGVmdCAwLjJzIGVhc2Utb3V0LFxuICAgICAgdG9wIDAuMnMgZWFzZS1vdXQsXG4gICAgICB0cmFuc2Zvcm0gMC4ycyBlYXNlLW91dFxuICAgIDtcbiAgfVxuXG4gIC8vIFN1Yi1JbmZvc1xuXG4gIC5zdXBwb3J0aW5nLXRleHQge1xuICAgIGNvbG9yOiAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBwYWRkaW5nOiAwIDE2cHg7XG4gICAgbWFyZ2luLXRvcDogNHB4O1xuICB9XG5cbiAgLmNoYXJhY3Rlci1jb3VudGVyIHtcbiAgICBjb2xvcjogJGlucHV0LWJvcmRlci1jb2xvcjtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHBhZGRpbmc6IDAgMTZweDtcbiAgICBtYXJnaW4tdG9wOiA0cHg7XG4gIH1cblxuICAucHJlZml4IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMTJweDtcbiAgICB0b3A6IDE2cHg7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIH1cblxuICAuc3VmZml4IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDEycHg7XG4gICAgdG9wOiAxNnB4OyAgICBcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgfVxuXG4gIC5wcmVmaXggfiBpbnB1dCwgLnByZWZpeCB+IHRleHRhcmVhIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoMTJweCArIDI0cHggKyAxNnB4KTtcbiAgfVxuICAuc3VmZml4IH4gaW5wdXQsIC5zdWZmaXggfiB0ZXh0YXJlYSB7XG4gICAgcGFkZGluZy1yaWdodDogY2FsYygxMnB4ICsgMjRweCArIDE2cHgpO1xuICB9XG4gIC5wcmVmaXggfiBsYWJlbCB7XG4gICAgbGVmdDogY2FsYygxMnB4ICsgMjRweCArIDE2cHgpO1xuICB9XG5cbiAgLy8gT3V0bGluZWRcblxuICAmLm91dGxpbmVkIHtcblxuICAgIGlucHV0LCB0ZXh0YXJlYSB7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcblxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1jb2xvcik7XG5cbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7IC8vIG1kLnN5cy5zaGFwZS5jb3JuZXIuZXh0cmEtc21hbGxcblxuICAgICAgJjpmb2N1czpub3QoW3JlYWRvbmx5XSkge1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkaW5wdXQtZm9jdXMtY29sb3I7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTFweDsgLy8gc3VidHJhY3QgYm9yZGVyLXdpZHRoXG5cbiAgICAgIH1cbiAgICAgIC8vIExhYmVsXG4gICAgICAmOmZvY3VzOm5vdChbcmVhZG9ubHldKSArIGxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICAgIH1cbiAgICAgICY6Zm9jdXM6bm90KFtyZWFkb25seV0pICsgbGFiZWwsXG4gICAgICAmOm5vdChbcGxhY2Vob2xkZXI9JyAnXSkgKyBsYWJlbCxcbiAgICAgICY6bm90KDpwbGFjZWhvbGRlci1zaG93bikgKyBsYWJlbCB7XG4gICAgICAgIHRvcDogLThweDtcbiAgICAgICAgbGVmdDogMTZweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC00cHg7XG4gICAgICAgIHBhZGRpbmc6IDAgNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICAgIH1cblxuICAgICAgJjpkaXNhYmxlZCwgJltyZWFkb25seT1cInJlYWRvbmx5XCJdIHtcbiAgICAgICAgY29sb3I6ICR0ZXh0ZmllbGRfZGlzYWJsZWRfY29sb3I7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHRleHRmaWVsZF9kaXNhYmxlZF9vdXRsaW5lY29sb3I7XG4gICAgICB9XG4gICAgICBcbiAgICB9XG4gIH1cblxuICAvLyBFcnJvclxuICAmLmVycm9yIHtcbiAgICBpbnB1dCwgdGV4dGFyZWEge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1lcnJvci1jb2xvcik7XG4gICAgfVxuICAgIGlucHV0OmZvY3VzOm5vdChbcmVhZG9ubHldKSwgdGV4dGFyZWE6Zm9jdXM6bm90KFtyZWFkb25seV0pIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZXJyb3ItY29sb3IpO1xuICAgIH1cbiAgICBpbnB1dDpmb2N1czpub3QoW3JlYWRvbmx5XSkgKyBsYWJlbCwgdGV4dGFyZWE6Zm9jdXM6bm90KFtyZWFkb25seV0pICsgbGFiZWwge1xuICAgICAgY29sb3I6IHZhcigtLWVycm9yLWNvbG9yKTtcbiAgICB9XG4gICAgbGFiZWwge1xuICAgICAgY29sb3I6IHZhcigtLWVycm9yLWNvbG9yKTtcbiAgICB9XG4gICAgLnN1cHBvcnRpbmctdGV4dCB7XG4gICAgICBjb2xvcjogdmFyKC0tZXJyb3ItY29sb3IpO1xuICAgIH1cbiAgICAuc3VmZml4IHtcbiAgICAgIGNvbG9yOiB2YXIoLS1lcnJvci1jb2xvcik7XG4gICAgfVxuICB9XG59XG5cbi8qIFNlYXJjaCBGaWVsZCAqL1xuLnNlYXJjaGJhciB7ICBcbiAgLnByZWZpeCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIC8vbGVmdDogMTJweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgdG9wOiAwO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICB9XG5cbiAgJiA+IGlucHV0IHtcbiAgICBib3JkZXItd2lkdGg6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtO1xuICB9XG59XG4uc2VhcmNoYmFyLmhhcy1zaWRlYmFyIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIEBtZWRpYSAjeyRsYXJnZS1hbmQtdXB9IHtcbiAgICBtYXJnaW4tbGVmdDogJHNpZGVuYXYtd2lkdGg7XG4gIH1cbn1cblxuLypcbi5pbnB1dC1maWVsZCBpbnB1dFt0eXBlPXNlYXJjaF0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG5cbiAgLm5hdi13cmFwcGVyICYge1xuICAgIGhlaWdodDogaW5oZXJpdDtcbiAgICBwYWRkaW5nLWxlZnQ6IDRyZW07XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDRyZW0pO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG4gICY6Zm9jdXM6bm90KC5icm93c2VyLWRlZmF1bHQpIHtcbiAgICBib3JkZXI6IDA7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuICAmICsgLmxhYmVsLWljb24ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICBsZWZ0OiAxcmVtO1xuICB9XG59XG4qL1xuXG4vKiBUZXh0YXJlYSAqL1xuLy8gRGVmYXVsdCB0ZXh0YXJlYVxudGV4dGFyZWEge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAmLm1hdGVyaWFsaXplLXRleHRhcmVhIHtcbiAgICBwYWRkaW5nLXRvcDogMjZweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiA0cHggIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjsgLyogcHJldmVudHMgc2Nyb2xsIGJhciBmbGFzaCAqL1xuICAgIHJlc2l6ZTogbm9uZTtcbiAgICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cbn1cblxuLy8gRm9yIHRleHRhcmVhIGF1dG9yZXNpemVcbi5oaWRkZW5kaXYge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkOyAvKiBmdXR1cmUgdmVyc2lvbiBvZiBkZXByZWNhdGVkICd3b3JkLXdyYXAnICovXG4gIHBhZGRpbmctdG9wOiAxLjJyZW07IC8qIHByZXZlbnRzIHRleHQganVtcCBvbiBFbnRlciBrZXlwcmVzcyAqL1xuXG4gIC8vIFJlZHVjZXMgcmVwYWludHNcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IC0xO1xufVxuXG4vKiBBdXRvY29tcGxldGUgSXRlbXMgKi9cbi5hdXRvY29tcGxldGUtY29udGVudCB7XG4gIGxpIHtcbiAgICAuaGlnaGxpZ2h0IHsgY29sb3I6ICRmb250LWNvbG9yLW1haW47IH1cbiAgICBpbWcge1xuICAgICAgaGVpZ2h0OiAkZHJvcGRvd24taXRlbS1oZWlnaHQgLSAxMDtcbiAgICAgIHdpZHRoOiAkZHJvcGRvd24taXRlbS1oZWlnaHQgLSAxMDtcbiAgICAgIG1hcmdpbjogNXB4IDE1cHg7XG4gICAgfVxuICB9XG59IiwiLyogUmFkaW8gQnV0dG9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLy8gUmVtb3ZlIGRlZmF1bHQgUmFkaW8gQnV0dG9uc1xuW3R5cGU9XCJyYWRpb1wiXTpub3QoOmNoZWNrZWQpLFxuW3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBvcGFjaXR5OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuW3R5cGU9XCJyYWRpb1wiXTpub3QoOmNoZWNrZWQpICsgc3Bhbixcblt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIHNwYW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMzVweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMjVweDtcbiAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgdHJhbnNpdGlvbjogLjI4cyBlYXNlO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuW3R5cGU9XCJyYWRpb1wiXSArIHNwYW46YmVmb3JlLFxuW3R5cGU9XCJyYWRpb1wiXSArIHNwYW46YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIG1hcmdpbjogNHB4O1xuICB3aWR0aDogMTZweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICB6LWluZGV4OiAwO1xuICB0cmFuc2l0aW9uOiAuMjhzIGVhc2U7XG59XG5cbi8qIFVuY2hlY2tlZCBzdHlsZXMgKi9cblt0eXBlPVwicmFkaW9cIl06bm90KDpjaGVja2VkKSArIHNwYW46YmVmb3JlLFxuW3R5cGU9XCJyYWRpb1wiXTpub3QoOmNoZWNrZWQpICsgc3BhbjphZnRlcixcblt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIHNwYW46YmVmb3JlLFxuW3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgc3BhbjphZnRlcixcblt0eXBlPVwicmFkaW9cIl0ud2l0aC1nYXA6Y2hlY2tlZCArIHNwYW46YmVmb3JlLFxuW3R5cGU9XCJyYWRpb1wiXS53aXRoLWdhcDpjaGVja2VkICsgc3BhbjphZnRlciB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cblxuW3R5cGU9XCJyYWRpb1wiXTpub3QoOmNoZWNrZWQpICsgc3BhbjpiZWZvcmUsXG5bdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkgKyBzcGFuOmFmdGVyIHtcbiAgYm9yZGVyOiAycHggc29saWQgJHJhZGlvLWVtcHR5LWNvbG9yO1xufVxuXG5bdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkgKyBzcGFuOmFmdGVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbn1cblxuLyogQ2hlY2tlZCBzdHlsZXMgKi9cblt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIHNwYW46YmVmb3JlIHtcbiAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cblt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIHNwYW46YWZ0ZXIsXG5bdHlwZT1cInJhZGlvXCJdLndpdGgtZ2FwOmNoZWNrZWQgKyBzcGFuOmJlZm9yZSxcblt0eXBlPVwicmFkaW9cIl0ud2l0aC1nYXA6Y2hlY2tlZCArIHNwYW46YWZ0ZXIge1xuICBib3JkZXI6ICRyYWRpby1ib3JkZXI7XG59XG5cblt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIHNwYW46YWZ0ZXIsXG5bdHlwZT1cInJhZGlvXCJdLndpdGgtZ2FwOmNoZWNrZWQgKyBzcGFuOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHJhZGlvLWZpbGwtY29sb3I7XG59XG5cblt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIHNwYW46YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDIpO1xufVxuXG4vKiBSYWRpbyBXaXRoIGdhcCAqL1xuW3R5cGU9XCJyYWRpb1wiXS53aXRoLWdhcDpjaGVja2VkICsgc3BhbjphZnRlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoLjUpO1xufVxuXG4vKiBGb2N1c2VkIHN0eWxlcyAqL1xuW3R5cGU9XCJyYWRpb1wiXS50YWJiZWQ6Zm9jdXMgKyBzcGFuOmJlZm9yZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDEwcHggJHByaW1hcnktY29sb3ItZm9jdXMtb3BhcXVlO1xufVxuXG4vKiBEaXNhYmxlZCBSYWRpbyBXaXRoIGdhcCAqL1xuW3R5cGU9XCJyYWRpb1wiXS53aXRoLWdhcDpkaXNhYmxlZDpjaGVja2VkICsgc3BhbjpiZWZvcmUge1xuICBib3JkZXI6IDJweCBzb2xpZCAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG59XG5cblt0eXBlPVwicmFkaW9cIl0ud2l0aC1nYXA6ZGlzYWJsZWQ6Y2hlY2tlZCArIHNwYW46YWZ0ZXIge1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1jb2xvcjtcbn1cblxuLyogRGlzYWJsZWQgc3R5bGUgKi9cblt0eXBlPVwicmFkaW9cIl06ZGlzYWJsZWQ6bm90KDpjaGVja2VkKSArIHNwYW46YmVmb3JlLFxuW3R5cGU9XCJyYWRpb1wiXTpkaXNhYmxlZDpjaGVja2VkICsgc3BhbjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtY29sb3I7XG59XG5cblt0eXBlPVwicmFkaW9cIl06ZGlzYWJsZWQgKyBzcGFuIHtcbiAgY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1jb2xvcjtcbn1cblxuW3R5cGU9XCJyYWRpb1wiXTpkaXNhYmxlZDpub3QoOmNoZWNrZWQpICsgc3BhbjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1jb2xvcjtcbn1cblxuW3R5cGU9XCJyYWRpb1wiXTpkaXNhYmxlZDpjaGVja2VkICsgc3BhbjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1jb2xvcjtcbiAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtc29saWQtY29sb3I7XG59XG4iLCIvKiBDaGVja2JveGVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKiBSZW1vdmUgZGVmYXVsdCBjaGVja2JveCAqL1xuW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpLFxuW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBvcGFjaXR5OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLy8gQ2hlY2tib3ggU3R5bGVzXG5bdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgLy8gVGV4dCBMYWJlbCBTdHlsZVxuICArIHNwYW46bm90KC5sZXZlcikge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDI1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICB9XG5cbiAgLyogY2hlY2tib3ggYXNwZWN0ICovXG4gICsgc3Bhbjpub3QoLmxldmVyKTpiZWZvcmUsXG4gICY6bm90KC5maWxsZWQtaW4pICsgc3Bhbjpub3QoLmxldmVyKTphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxOHB4O1xuICAgIGhlaWdodDogMThweDtcbiAgICB6LWluZGV4OiAwO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRyYWRpby1lbXB0eS1jb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiAxcHg7XG4gICAgbWFyZ2luLXRvcDogM3B4O1xuICAgIHRyYW5zaXRpb246IC4ycztcbiAgfVxuXG4gICY6bm90KC5maWxsZWQtaW4pICsgc3Bhbjpub3QoLmxldmVyKTphZnRlciB7XG4gICAgYm9yZGVyOiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cblxuICAmOm5vdCg6Y2hlY2tlZCk6ZGlzYWJsZWQgKyBzcGFuOm5vdCgubGV2ZXIpOmJlZm9yZSB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1jb2xvcjtcbiAgfVxuXG4gIC8vIEZvY3VzZWQgc3R5bGVzXG4gICYudGFiYmVkOmZvY3VzICsgc3Bhbjpub3QoLmxldmVyKTphZnRlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDEwcHggJHN1cmZhY2UtZm9jdXMtY29sb3Itb3BhcXVlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzdXJmYWNlLWZvY3VzLWNvbG9yLW9wYXF1ZTtcbiAgfVxufVxuXG5bdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQge1xuICArIHNwYW46bm90KC5sZXZlcik6YmVmb3JlIHtcbiAgICB0b3A6IC00cHg7XG4gICAgbGVmdDogLTVweDtcbiAgICB3aWR0aDogMTJweDtcbiAgICBoZWlnaHQ6IDIycHg7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiAkcmFkaW8tYm9yZGVyO1xuICAgIGJvcmRlci1ib3R0b206ICRyYWRpby1ib3JkZXI7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDBkZWcpO1xuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDEwMCU7XG4gIH1cblxuICAmOmRpc2FibGVkICsgc3BhbjpiZWZvcmUge1xuICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICRpbnB1dC1kaXNhYmxlZC1jb2xvcjtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGlucHV0LWRpc2FibGVkLWNvbG9yO1xuICB9XG59XG5cbi8qIEluZGV0ZXJtaW5hdGUgY2hlY2tib3ggKi9cblt0eXBlPVwiY2hlY2tib3hcIl06aW5kZXRlcm1pbmF0ZSB7XG4gICsgc3Bhbjpub3QoLmxldmVyKTpiZWZvcmUge1xuICAgIHRvcDogLTExcHg7XG4gICAgbGVmdDogLTEycHg7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgaGVpZ2h0OiAyMnB4O1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgYm9yZGVyLXJpZ2h0OiAkcmFkaW8tYm9yZGVyO1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDEwMCU7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBpbmRldGVybWluYXRlXG4gICY6ZGlzYWJsZWQgKyBzcGFuOm5vdCgubGV2ZXIpOmJlZm9yZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgJGlucHV0LWRpc2FibGVkLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vIEZpbGxlZCBpbiBTdHlsZVxuW3R5cGU9XCJjaGVja2JveFwiXS5maWxsZWQtaW4ge1xuICAvLyBHZW5lcmFsXG4gICsgc3Bhbjpub3QoLmxldmVyKTphZnRlciB7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB9XG5cbiAgKyBzcGFuOm5vdCgubGV2ZXIpOmJlZm9yZSxcbiAgKyBzcGFuOm5vdCgubGV2ZXIpOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBsZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAvKiAuMXMgZGVsYXkgaXMgZm9yIGNoZWNrIGFuaW1hdGlvbiAqL1xuICAgIHRyYW5zaXRpb246IGJvcmRlciAuMjVzLCBiYWNrZ3JvdW5kLWNvbG9yIC4yNXMsIHdpZHRoIC4yMHMgLjFzLCBoZWlnaHQgLjIwcyAuMXMsIHRvcCAuMjBzIC4xcywgbGVmdCAuMjBzIC4xcztcbiAgICB6LWluZGV4OiAxO1xuICB9XG5cbiAgLy8gVW5jaGVja2VkIHN0eWxlXG4gICY6bm90KDpjaGVja2VkKSArIHNwYW46bm90KC5sZXZlcik6YmVmb3JlIHtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgbGVmdDogNnB4O1xuICAgIHRvcDogMTBweDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVooMzdkZWcpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMTAwJTtcbiAgfVxuXG4gICY6bm90KDpjaGVja2VkKSArIHNwYW46bm90KC5sZXZlcik6YWZ0ZXIge1xuICAgIGhlaWdodDogMjBweDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkcmFkaW8tZW1wdHktY29sb3I7XG4gICAgdG9wOiAwcHg7XG4gICAgei1pbmRleDogMDtcbiAgfVxuXG4gIC8vIENoZWNrZWQgc3R5bGVcbiAgJjpjaGVja2VkIHtcbiAgICArIHNwYW46bm90KC5sZXZlcik6YmVmb3JlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDFweDtcbiAgICAgIHdpZHRoOiA4cHg7XG4gICAgICBoZWlnaHQ6IDEzcHg7XG4gICAgICBib3JkZXItdG9wOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgJGZvbnQtb24tcHJpbWFyeS1jb2xvci1tYWluO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRmb250LW9uLXByaW1hcnktY29sb3ItbWFpbjtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlWigzN2RlZyk7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDEwMCU7XG4gICAgfVxuXG4gICAgKyBzcGFuOm5vdCgubGV2ZXIpOmFmdGVyIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgYm9yZGVyOiAycHggc29saWQgJHByaW1hcnktY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIHotaW5kZXg6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gRm9jdXNlZCBzdHlsZXNcbiAgJi50YWJiZWQ6Zm9jdXMgKyBzcGFuOm5vdCgubGV2ZXIpOmFmdGVyIHtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgYm9yZGVyLWNvbG9yOiAkcmFkaW8tZW1wdHktY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHN1cmZhY2UtZm9jdXMtY29sb3Itb3BhcXVlO1xuICB9XG5cbiAgJi50YWJiZWQ6Y2hlY2tlZDpmb2N1cyArIHNwYW46bm90KC5sZXZlcik6YWZ0ZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3R5bGVcbiAgJjpkaXNhYmxlZDpub3QoOmNoZWNrZWQpICsgc3Bhbjpub3QoLmxldmVyKTpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJjpkaXNhYmxlZDpub3QoOmNoZWNrZWQpICsgc3Bhbjpub3QoLmxldmVyKTphZnRlciB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtc29saWQtY29sb3I7XG4gIH1cblxuICAmOmRpc2FibGVkOmNoZWNrZWQgKyBzcGFuOm5vdCgubGV2ZXIpOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmOmRpc2FibGVkOmNoZWNrZWQgKyBzcGFuOm5vdCgubGV2ZXIpOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtc29saWQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtc29saWQtY29sb3I7XG4gIH1cbn1cbiIsIi8qIFN3aXRjaFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnN3aXRjaCB7XG4gIC0tdHJhY2staGVpZ2h0OiAzMnB4O1xuICAtLXRyYWNrLXdpZHRoOiA1MnB4O1xuICAtLWJvcmRlci13aWR0aDogMnB4O1xuICAtLXNpemUtb2ZmOiAxNnB4O1xuICAtLXNpemUtb246IDI0cHg7XG4gIC0taWNvbi1zaXplOiAxNnB4O1xuICAtLWdhcC1vbjogY2FsYygoKHZhcigtLXRyYWNrLWhlaWdodCkgLSB2YXIoLS1zaXplLW9uKSkgLyAyKSAtIHZhcigtLWJvcmRlci13aWR0aCkpO1xuICAtLWdhcC1vZmY6IGNhbGMoKCh2YXIoLS10cmFjay1oZWlnaHQpIC0gdmFyKC0tc2l6ZS1vZmYpKSAvIDIpIC0gdmFyKC0tYm9yZGVyLXdpZHRoKSk7XG59XG5cbi5zd2l0Y2gsXG4uc3dpdGNoICoge1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLnN3aXRjaCBsYWJlbCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnN3aXRjaCBsYWJlbCBpbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gIG9wYWNpdHk6IDA7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG5cbiAgLy8gQ0hFQ0tFRFxuICAvLyBUcmFja1xuICAmOmNoZWNrZWQgKyAubGV2ZXJ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeS1jb2xvcik7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1wcmltYXJ5LWNvbG9yKTtcbiAgfVxuICAvLyBEb3RcbiAgJjpjaGVja2VkICsgLmxldmVyIHtcbiAgICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgICB0b3A6IHZhcigtLWdhcC1vbik7XG4gICAgICBsZWZ0OiBjYWxjKHZhcigtLXRyYWNrLXdpZHRoKSAtIHZhcigtLXNpemUtb24pIC0gdmFyKC0tZ2FwLW9uKSAtIDIgKiB2YXIoLS1ib3JkZXItd2lkdGgpKTtcbiAgICAgIHdpZHRoOiB2YXIoLS1zaXplLW9uKTtcbiAgICAgIGhlaWdodDogdmFyKC0tc2l6ZS1vbik7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgQGV4dGVuZCAuc3VyZmFjZTtcbiAgICB9XG4gIH1cbn1cblxuLnN3aXRjaCBsYWJlbCAubGV2ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IHZhcigtLXRyYWNrLXdpZHRoKTtcbiAgaGVpZ2h0OiB2YXIoLS10cmFjay1oZWlnaHQpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDJweDtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1tZC1zeXMtY29sb3Itb3V0bGluZSk7XG5cbiAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkc3dpdGNoLXRyYWNrLXVuY2hlY2tlZC1iZztcbiAgQGV4dGVuZCAuc3VyZmFjZS12YXJpYW50O1xuXG4gIGJvcmRlci1yYWRpdXM6ICRzd2l0Y2gtcmFkaXVzO1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4zcyBlYXNlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDAgMTZweDtcblxuICAvLyBET1RcbiAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogdmFyKC0tc2l6ZS1vZmYpO1xuICAgIGhlaWdodDogdmFyKC0tc2l6ZS1vZmYpO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAgIGxlZnQ6IHZhcigtLWdhcC1vZmYpO1xuICAgIHRvcDogdmFyKC0tZ2FwLW9mZik7XG5cbiAgICB0cmFuc2l0aW9uOiBsZWZ0IDAuM3MgZWFzZSwgYmFja2dyb3VuZCAuM3MgZWFzZSwgYm94LXNoYWRvdyAwLjFzIGVhc2UsIHRyYW5zZm9ybSAuMXMgZWFzZTtcbiAgfVxuXG4gIC8vIE5PVCBDSEVDS0VEIFtET1RdXG4gICY6YWZ0ZXIge1xuICAgIEBleHRlbmQgLm91dGxpbmU7IFxuICAgIGhlaWdodDogdmFyKC0tc2l6ZS1vZmYpO1xuICAgIHdpZHRoOiB2YXIoLS1zaXplLW9mZik7XG5cbiAgICAvL0BleHRlbmQgLnN1cmZhY2UtdmFyaWFudDtcbiAgICAvL2JveC1zaGFkb3c6IDBweCAzcHggMXB4IC0ycHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwcHggMnB4IDJweCAwcHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMHB4IDFweCA1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG4gIH1cbn1cblxuaW5wdXRbdHlwZT1jaGVja2JveF06bm90KDpkaXNhYmxlZCkgfiAubGV2ZXI6YWN0aXZlOmJlZm9yZSxcbmlucHV0W3R5cGU9Y2hlY2tib3hdOm5vdCg6ZGlzYWJsZWQpLnRhYmJlZDpmb2N1cyB+IC5sZXZlcjo6YmVmb3JlLFxuaW5wdXRbdHlwZT1jaGVja2JveF06bm90KDpkaXNhYmxlZCkgfiAubGV2ZXI6aG92ZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgyLjQpO1xufVxuXG5pbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkOm5vdCg6ZGlzYWJsZWQpIH4gLmxldmVyOmhvdmVyOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3dpdGNoLXJlYWN0aW9uLWNoZWNrZWQtaG92ZXItY29sb3I7XG59XG5cbi8vIFN3aXRjaCBhY3RpdmUgc3R5bGVcbmlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQ6bm90KDpkaXNhYmxlZCkgfiAubGV2ZXI6YWN0aXZlOjpiZWZvcmUsXG5pbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkOm5vdCg6ZGlzYWJsZWQpLnRhYmJlZDpmb2N1cyB+IC5sZXZlcjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHN3aXRjaC1yZWFjdGlvbi1jaGVja2VkLWZvY3VzLWNvbG9yO1xufVxuXG5pbnB1dFt0eXBlPWNoZWNrYm94XTpub3QoOmRpc2FibGVkKSB+IC5sZXZlcjpob3Zlcjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHN3aXRjaC1yZWFjdGlvbi11bmNoZWNrZWQtaG92ZXItY29sb3I7XG59XG5cbmlucHV0W3R5cGU9Y2hlY2tib3hdOm5vdCg6ZGlzYWJsZWQpIH4gLmxldmVyOmFjdGl2ZTpiZWZvcmUsXG5pbnB1dFt0eXBlPWNoZWNrYm94XTpub3QoOmRpc2FibGVkKS50YWJiZWQ6Zm9jdXMgfiAubGV2ZXI6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzd2l0Y2gtcmVhY3Rpb24tdW5jaGVja2VkLWZvY3VzLWNvbG9yO1xufVxuXG4vLyBEaXNhYmxlZCBTdHlsZXNcbi5zd2l0Y2ggaW5wdXRbdHlwZT1jaGVja2JveF1bZGlzYWJsZWRdICsgLmxldmVyIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBvcGFjaXR5OiAwLjU7XG59XG5cbiIsIi8qIFNlbGVjdCBGaWVsZFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuc2VsZWN0LmJyb3dzZXItZGVmYXVsdCB7XG4gIG9wYWNpdHk6IDE7XG4gIGNvbG9yOiAkc2VsZWN0LWlucHV0LWNvbG9yO1xufVxuXG5zZWxlY3Qge1xuICBvcGFjaXR5OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0LWJhY2tncm91bmQ7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkc2VsZWN0LXBhZGRpbmc7XG4gIGJvcmRlcjogJHNlbGVjdC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRzZWxlY3QtcmFkaXVzO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG59XG5cbi8vIC5zZWxlY3QtbGFiZWwge1xuLy8gICBwb3NpdGlvbjogYWJzb2x1dGU7XG4vLyB9XG5cblxuLnNlbGVjdC13cmFwcGVyIHtcbiAgLypcbiAgJi52YWxpZCAuaGVscGVyLXRleHRbZGF0YS1zdWNjZXNzXSxcbiAgJi5pbnZhbGlkIH4gLmhlbHBlci10ZXh0W2RhdGEtZXJyb3JdIHtcbiAgICBAZXh0ZW5kICVoaWRkZW4tdGV4dDtcbiAgfVxuXG4gICYudmFsaWQge1xuICAgICYgPiBpbnB1dC5zZWxlY3QtZHJvcGRvd24ge1xuICAgICAgQGV4dGVuZCAldmFsaWQtaW5wdXQtc3R5bGU7XG4gICAgfVxuICAgICYgfiAuaGVscGVyLXRleHQ6YWZ0ZXIge1xuICAgICAgLy9AZXh0ZW5kICVjdXN0b20tc3VjY2Vzcy1tZXNzYWdlO1xuICAgIH1cbiAgfVxuXG4gICYuaW52YWxpZCB7XG4gICAgJiA+IGlucHV0LnNlbGVjdC1kcm9wZG93bixcbiAgICAmID4gaW5wdXQuc2VsZWN0LWRyb3Bkb3duOmZvY3VzIHtcbiAgICAgIEBleHRlbmQgJWludmFsaWQtaW5wdXQtc3R5bGU7XG4gICAgfVxuICAgICYgfiAuaGVscGVyLXRleHQ6YWZ0ZXIge1xuICAgICAgLy9AZXh0ZW5kICVjdXN0b20tZXJyb3ItbWVzc2FnZTtcbiAgICB9XG4gIH1cblxuICAmLnZhbGlkICsgbGFiZWwsXG4gICYuaW52YWxpZCArIGxhYmVsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuICAmICsgbGFiZWw6YWZ0ZXIge1xuICAgIC8vQGV4dGVuZCAlaW5wdXQtYWZ0ZXItc3R5bGU7XG4gIH1cbiAgKi9cblxuXG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC8qXG4gIGlucHV0LnNlbGVjdC1kcm9wZG93biB7ICAgIFxuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICB9XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogJGlucHV0LWJvcmRlcjtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gICAgbWFyZ2luOiAkaW5wdXQtbWFyZ2luO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdXNlci1zZWxlY3Q6bm9uZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGNvbG9yOiAkc2VsZWN0LWlucHV0LWNvbG9yO1xuICB9XG4gICovXG5cbiAgLmNhcmV0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBtYXJnaW46IGF1dG8gMDtcbiAgICB6LWluZGV4OiAwO1xuICAgIGZpbGw6ICRzZWxlY3QtaW5wdXQtY29sb3I7XG4gIH1cblxuICAvKlxuICAmICsgbGFiZWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0yNnB4O1xuICAgIGZvbnQtc2l6ZTogJGxhYmVsLWZvbnQtc2l6ZTtcbiAgfVxuICAqL1xuXG4gIC8vIEhpZGUgc2VsZWN0IHdpdGggb3ZlcmZsb3cgaGlkZGVuIGluc3RlYWQgb2YgdXNpbmcgZGlzcGxheSBub25lXG4gIC8vICh0aGlzIHByZXZlbnRzIGZvcm0gdmFsaWRhdGlvbiBlcnJvcnMgd2l0aCBoaWRkZW4gZm9ybSBlbGVtZW50cylcbiAgLmhpZGUtc2VsZWN0IHtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IC0xO1xuICB9XG59XG5cbi8vIERpc2FibGVkIHN0eWxlc1xuc2VsZWN0OmRpc2FibGVkIHtcbiAgY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1jb2xvcjtcbn1cblxuLnNlbGVjdC13cmFwcGVyLmRpc2FibGVkIHtcbiAgKyBsYWJlbCB7XG4gICAgY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1jb2xvcjtcbiAgfVxuICAuY2FyZXQge1xuICAgIGZpbGw6ICRpbnB1dC1kaXNhYmxlZC1jb2xvcjtcbiAgfVxufVxuXG4uc2VsZWN0LXdyYXBwZXIgaW5wdXQuc2VsZWN0LWRyb3Bkb3duOmRpc2FibGVkIHtcbiAgY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1jb2xvcjtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLnNlbGVjdC13cmFwcGVyIGkge1xuICBjb2xvcjogJHNlbGVjdC1kaXNhYmxlZC1jb2xvcjtcbn1cblxuLnNlbGVjdC1kcm9wZG93biBsaS5kaXNhYmxlZCxcbi5zZWxlY3QtZHJvcGRvd24gbGkuZGlzYWJsZWQgPiBzcGFuLFxuLnNlbGVjdC1kcm9wZG93biBsaS5vcHRncm91cCB7XG4gIGNvbG9yOiAkc2VsZWN0LWRpc2FibGVkLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuYm9keS5rZXlib2FyZC1mb2N1c2VkIHtcbiAgLnNlbGVjdC1kcm9wZG93bi5kcm9wZG93bi1jb250ZW50IGxpOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0LW9wdGlvbi1mb2N1cztcbiAgfVxufVxuXG4uc2VsZWN0LWRyb3Bkb3duLmRyb3Bkb3duLWNvbnRlbnQge1xuICBsaSB7XG4gICAgJjpob3Zlcjpub3QoLmRpc2FibGVkKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0LW9wdGlvbi1ob3ZlcjtcbiAgICB9XG5cbiAgICAmLnNlbGVjdGVkOm5vdCguZGlzYWJsZWQpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3Qtb3B0aW9uLXNlbGVjdGVkO1xuICAgIH1cbiAgfVxufVxuXG4vKlxuLy8gUHJlZml4IEljb25zXG4ucHJlZml4IH4gLnNlbGVjdC13cmFwcGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDNyZW07XG4gIHdpZHRoOiA5MiU7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAzcmVtKTtcbn1cbi5wcmVmaXggfiBsYWJlbCB7IG1hcmdpbi1sZWZ0OiAzcmVtOyB9XG4vLyBTdWZmaXggSWNvbnNcbi5zdWZmaXggfiAuc2VsZWN0LXdyYXBwZXIge1xuICBtYXJnaW4tcmlnaHQ6IDNyZW07XG4gIHdpZHRoOiA5MiU7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAzcmVtKTtcbn1cbi5zdWZmaXggfiBsYWJlbCB7IG1hcmdpbi1yaWdodDogM3JlbTsgfVxuKi9cblxuLy8gSWNvbnNcbi5zZWxlY3QtZHJvcGRvd24gbGkge1xuICBpbWcge1xuICAgIGhlaWdodDogJGRyb3Bkb3duLWl0ZW0taGVpZ2h0IC0gMTA7XG4gICAgd2lkdGg6ICRkcm9wZG93bi1pdGVtLWhlaWdodCAtIDEwO1xuICAgIG1hcmdpbjogNXB4IDE1cHg7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbi8vIE9wdGdyb3VwIHN0eWxlc1xuLnNlbGVjdC1kcm9wZG93biBsaS5vcHRncm91cCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZHJvcGRvd24taG92ZXItYmctY29sb3I7XG5cbiAgJi5zZWxlY3RlZCA+IHNwYW4ge1xuICAgIGNvbG9yOiAkZm9udC1jb2xvci1tYWluO1xuICB9XG5cbiAgJiA+IHNwYW4ge1xuICAgIGNvbG9yOiAkZm9udC1jb2xvci1tZWRpdW07XG4gIH1cblxuICAmIH4gbGkub3B0Z3JvdXAtb3B0aW9uIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gIH1cbn1cbiIsIi8qIEZpbGUgSW5wdXRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5maWxlLWZpZWxkIHtcbiAgLy9wb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWluLWNvbnRlbnQgYXV0bztcbiAgZ2FwOiAxMHB4O1xuICBcblxuICAuZmlsZS1wYXRoLXdyYXBwZXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICBpbnB1dC5maWxlLXBhdGggeyB3aWR0aDogMTAwJTsgfVxuXG4gIC5idG4ge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgfVxuXG4gIHNwYW4ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gIGlucHV0W3R5cGU9ZmlsZV0ge1xuICAgIC8vIE5lZWRlZCB0byBvdmVycmlkZSB3ZWJraXQgYnV0dG9uXG4gICAgJjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBmb250LXNpemU6IDIwcHg7ICAgIFxuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTtcbiAgfVxufVxuIiwiLyogUmFuZ2VcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5yYW5nZS1maWVsZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuaW5wdXRbdHlwZT1yYW5nZV0sXG5pbnB1dFt0eXBlPXJhbmdlXSArIC50aHVtYiB7XG4gIEBleHRlbmQgLm5vLXNlbGVjdDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5pbnB1dFt0eXBlPXJhbmdlXSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMTVweCAwO1xuICBwYWRkaW5nOiAwO1xuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cblxuaW5wdXRbdHlwZT1yYW5nZV0gKyAudGh1bWIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTBweDtcbiAgbGVmdDogMDtcbiAgYm9yZGVyOiBub25lO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRyYWRpby1maWxsLWNvbG9yO1xuICBtYXJnaW4tbGVmdDogN3B4O1xuXG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG5cbiAgLnZhbHVlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMzBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICRyYWRpby1maWxsLWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIH1cblxuICAmLmFjdGl2ZSB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlIDUwJSA1MCUgMDtcblxuICAgIC52YWx1ZSB7XG4gICAgICBjb2xvcjogJGZvbnQtb24tcHJpbWFyeS1jb2xvci1tYWluO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgfVxuICB9XG59XG5cbi8vIFNoYXJlZFxuQG1peGluIHJhbmdlLXRyYWNrIHtcbiAgaGVpZ2h0OiAkdHJhY2staGVpZ2h0O1xuICBAZXh0ZW5kIC5zdXJmYWNlLXZhcmlhbnQ7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuQG1peGluIHJhbmdlLXRodW1iIHtcbiAgYm9yZGVyOiBub25lO1xuICBoZWlnaHQ6ICRyYW5nZS1oZWlnaHQ7XG4gIHdpZHRoOiAkcmFuZ2Utd2lkdGg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZDogJHJhZGlvLWZpbGwtY29sb3I7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgLjNzO1xufVxuXG4vLyBXZWJLaXRcbmlucHV0W3R5cGU9cmFuZ2VdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPXJhbmdlXTo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICBAaW5jbHVkZSByYW5nZS10cmFjaztcbn1cblxuaW5wdXRbdHlwZT1yYW5nZV06Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgQGluY2x1ZGUgcmFuZ2UtdGh1bWI7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHJhZGlvLWZpbGwtY29sb3I7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gIG1hcmdpbjogLTVweCAwIDAgMDtcblxufVxuXG4ua2V5Ym9hcmQtZm9jdXNlZCBpbnB1dFt0eXBlPXJhbmdlXTpmb2N1czpub3QoLmFjdGl2ZSk6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMTBweCAkcmFkaW8tZm9jdXMtY29sb3I7XG59XG5cbi8vIEZpcmVGb3hcbmlucHV0W3R5cGU9cmFuZ2VdIHtcblxuICAvKnJlcXVpcmVkIGZvciBwcm9wZXIgdHJhY2sgc2l6aW5nIGluIEZGKi9cbn1cblxuaW5wdXRbdHlwZT1yYW5nZV06Oi1tb3otcmFuZ2UtdHJhY2sge1xuICBAaW5jbHVkZSByYW5nZS10cmFjaztcbn1cblxuaW5wdXRbdHlwZT1yYW5nZV06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG59XG5cbmlucHV0W3R5cGU9cmFuZ2VdOjotbW96LXJhbmdlLXRodW1iIHtcbiAgQGluY2x1ZGUgcmFuZ2UtdGh1bWI7XG4gIG1hcmdpbi10b3A6IC01cHg7XG59XG5cbi8vIGhpZGUgdGhlIG91dGxpbmUgYmVoaW5kIHRoZSBib3JkZXJcbmlucHV0W3R5cGU9cmFuZ2VdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IHNvbGlkICNmZmY7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMXB4O1xufVxuXG4ua2V5Ym9hcmQtZm9jdXNlZCBpbnB1dFt0eXBlPXJhbmdlXTpmb2N1czpub3QoLmFjdGl2ZSk6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICBib3gtc2hhZG93OiAwIDAgMCAxMHB4ICRyYWRpby1mb2N1cy1jb2xvcjtcbn1cblxuLy8gSUUgMTArXG5pbnB1dFt0eXBlPXJhbmdlXTo6LW1zLXRyYWNrIHtcbiAgaGVpZ2h0OiAkdHJhY2staGVpZ2h0O1xuXG4gIC8vIHJlbW92ZSBiZyBjb2xvdXIgZnJvbSB0aGUgdHJhY2ssIHdlJ2xsIHVzZSBtcy1maWxsLWxvd2VyIGFuZCBtcy1maWxsLXVwcGVyIGluc3RlYWRcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgLy8gbGVhdmUgcm9vbSBmb3IgdGhlIGxhcmdlciB0aHVtYiB0byBvdmVyZmxvdyB3aXRoIGEgdHJhbnNwYXJlbnQgYm9yZGVyICovXG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogNnB4IDA7XG5cbiAgLypyZW1vdmUgZGVmYXVsdCB0aWNrIG1hcmtzKi9cbiAgY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG5pbnB1dFt0eXBlPXJhbmdlXTo6LW1zLWZpbGwtbG93ZXIsXG5pbnB1dFt0eXBlPXJhbmdlXTo6LW1vei1yYW5nZS1wcm9ncmVzcyB7XG4gIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xufVxuXG5pbnB1dFt0eXBlPXJhbmdlXTo6LW1zLWZpbGwtdXBwZXIsXG5pbnB1dFt0eXBlPXJhbmdlXTo6LW1vei1yYW5nZS10cmFjayB7XG4gIGJhY2tncm91bmQ6ICRyYW5nZS10cmFjay1jb2xvcjtcbn1cblxuaW5wdXRbdHlwZT1yYW5nZV06Oi1tcy10aHVtYiB7XG4gIEBpbmNsdWRlIHJhbmdlLXRodW1iO1xufVxuXG4ua2V5Ym9hcmQtZm9jdXNlZCBpbnB1dFt0eXBlPXJhbmdlXTpmb2N1czpub3QoLmFjdGl2ZSk6Oi1tcy10aHVtYiB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDEwcHggJHJhZGlvLWZvY3VzLWNvbG9yO1xufVxuIiwiLyoqKioqKioqKioqKioqKlxuICAgIE5hdiBMaXN0XG4qKioqKioqKioqKioqKiovXG4udGFibGUtb2YtY29udGVudHMge1xuICAmLmZpeGVkIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gIH1cblxuICBsaSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGNvbG9yOiAkZm9udC1jb2xvci1tZWRpdW07XG4gICAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICAgIGhlaWdodDogMnJlbTtcbiAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRkaXZpZGVyLWNvbG9yO1xuICAgIFxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRmb250LWNvbG9yLW1haW47XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgfVxuICAgICYuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE0cHg7XG4gICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuIiwiLyogVGhpcyBzaG91bGQgYmUgYW4gVUwtRWxlbWVudCovXG4uc2lkZW5hdiB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgd2lkdGg6ICRzaWRlbmF2LXdpZHRoO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIG1hcmdpbjogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNpZGVuYXYtYmctY29sb3I7XG4gIHotaW5kZXg6IDk5OTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwNSUpOyBcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgQGV4dGVuZCAuei1kZXB0aC0xO1xuXG4gIC8vIFJpZ2h0IEFsaWduXG4gICYucmlnaHQtYWxpZ25lZCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwNSUpO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICB9XG5cbiAgLmNvbGxhcHNpYmxlIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvKiBIb3ZlciBvbmx5IG9uIHRvcCByb3cgKi9cbiAgYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1mbGF0LWhvdmVyLWJhY2tncm91bmQtY29sb3I7XG4gIH1cbiAgYTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1mbGF0LWZvY3VzLWJhY2tncm91bmQtY29sb3I7XG4gIH1cblxuICBsaS5hY3RpdmUgPiBhOm5vdCguY29sbGFwc2libGUtaGVhZGVyKTpub3QoLmJ0bik6bm90KC5idG4tbGFyZ2UpOm5vdCguYnRuLXNtYWxsKTpub3QoLmJ0bi1mbGF0KTpub3QoLmJ0bi1sYXJnZSk6bm90KC5idG4tZmxvYXRpbmcpICB7XG4gICAgY29sb3I6ICRmb250LW9uLXNlY29uZGFyeS1jb250YWluZXItY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1jb250YWluZXItY29sb3I7XG4gIH1cblxuICAuY29sbGFwc2libGUtYm9keSA+IHVsIHsgcGFkZGluZy1sZWZ0OiAxMHB4OyB9XG5cbiAgbGkgeyAgICBcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICB9XG4gIGxpID4gYSB7XG4gICAgLyogaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvNTg0ODA5MC9mdWxsLXdpZHRoLWhvdmVyLWJhY2tncm91bmQtZm9yLW5lc3RlZC1saXN0cyAqL1xuICAgIC8vcGFkZGluZy1sZWZ0OiBjYWxjKDEwMCUgKyAkc2lkZW5hdi1wYWRkaW5nKTtcbiAgICAvL21hcmdpbi1sZWZ0OiAtMTAwJTtcbiAgICBtYXJnaW46IDAgMTJweDtcbiAgICBwYWRkaW5nOiAwICRzaWRlbmF2LXBhZGRpbmc7XG4gICAgLy9wYWRkaW5nLWxlZnQ6ICRzaWRlbmF2LXBhZGRpbmc7XG5cbiAgICAvLyBUcnVuY2F0ZSB0b28gbG9uZyB0ZXh0XG4gICAgLypcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICovXG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGhlaWdodDogJHNpZGVuYXYtaXRlbS1oZWlnaHQ7XG4gICAgZm9udC1zaXplOiAkc2lkZW5hdi1mb250LXNpemU7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG5cbiAgICAmOm5vdCguYnRuKTpub3QoLmJ0bi1mbGF0KTpub3QoLmJ0bi1sYXJnZSk6bm90KC5idG4tZmxvYXRpbmcpIHtcbiAgICAgIGNvbG9yOiAkc2lkZW5hdi1mb250LWNvbG9yO1xuICAgIH1cblxuICAgICYuYnRuLCAmLmJ0bi1sYXJnZSwgJi5idG4tZmxhdCwgJi5idG4tZmxvYXRpbmcge1xuICAgICAgbWFyZ2luOiAxMHB4IDE1cHg7XG4gICAgfVxuXG4gICAgLyogVE9ETzogVXNlIHNwZWNpYWwgY2xhc3MgaW4gZnV0dXJlIGxpa2UgXCJtdy1pY29uXCIgKi9cbiAgICAmID4gLm1hdGVyaWFsLWljb25zLCAmID4gLm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQsXG4gICAgJiA+IC5tYXRlcmlhbC1zeW1ib2xzLXJvdW5kZWQsICYgPiAubWF0ZXJpYWwtc3ltYm9scy1zaGFycCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBjb2xvcjogJHNpZGVuYXYtaWNvbi1jb2xvcjtcbiAgICAgIG1hcmdpbi1yaWdodDogMTJweDtcbiAgICB9XG4gIH1cblxuICAuZGl2aWRlciB7XG4gICAgbWFyZ2luOiAoJHNpZGVuYXYtcGFkZGluZyAqIDAuNSkgMCAwIDA7XG4gIH1cblxuICAuc3ViaGVhZGVyIHtcbiAgICBjdXJzb3I6IGluaXRpYWw7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY29sb3I6ICRzaWRlbmF2LXN1YmhlYWRlci1jb2xvcjtcbiAgICBmb250LXNpemU6ICRzaWRlbmF2LWZvbnQtc2l6ZTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGxpbmUtaGVpZ2h0OiAkc2lkZW5hdi1saW5lLWhlaWdodDtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGlzPyBpcyB2ZXJ5IGN1c3RvbVxuICAudXNlci12aWV3IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogKCRzaWRlbmF2LXBhZGRpbmcgKiAyKSAoJHNpZGVuYXYtcGFkZGluZyAqIDIpIDA7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNpZGVuYXYtcGFkZGluZyAqIDAuNTtcblxuICAgICYgPiBhIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cblxuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAuYmFja2dyb3VuZCB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgei1pbmRleDogLTE7XG4gICAgfVxuXG4gICAgLmNpcmNsZSwgLm5hbWUsIC5lbWFpbCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuY2lyY2xlIHtcbiAgICAgIGhlaWdodDogNjRweDtcbiAgICAgIHdpZHRoOiA2NHB4O1xuICAgIH1cblxuICAgIC5uYW1lLFxuICAgIC5lbWFpbCB7XG4gICAgICBmb250LXNpemU6ICRzaWRlbmF2LWZvbnQtc2l6ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkc2lkZW5hdi1saW5lLWhlaWdodCAqIDAuNTtcbiAgICB9XG5cbiAgICAubmFtZSB7XG4gICAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB9XG5cbiAgICAuZW1haWwge1xuICAgICAgcGFkZGluZy1ib3R0b206IDE2cHg7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBUb3VjaCBpbnRlcmFjdGlvblxuLmRyYWctdGFyZ2V0IHtcbiAgLy8gUmlnaHQgQWxpZ25cbiAgJi5yaWdodC1hbGlnbmVkIHtcbiAgICByaWdodDogMDtcbiAgfVxuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiA5OTg7XG59XG5cbi8vIEZpeGVkIFNpZGVuYXYgc2hvd25cbi5zaWRlbmF2LnNpZGVuYXYtZml4ZWQge1xuICAvLyBSaWdodCBBbGlnblxuICAmLnJpZ2h0LWFsaWduZWQge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbiAgbGVmdDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICBwb3NpdGlvbjogZml4ZWQ7XG59XG5cbi8vIEZpeGVkIFNpZGVuYXYgaGlkZSBvbiBzbWFsbGVyXG5AbWVkaWEgI3skbWVkaXVtLWFuZC1kb3dufSB7XG4gIC5zaWRlbmF2IHtcbiAgICAmLnNpZGVuYXYtZml4ZWQge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDUlKTtcblxuICAgICAgJi5yaWdodC1hbGlnbmVkIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwNSUpO1xuICAgICAgfVxuICAgIH1cbiAgICA+IGEge1xuICAgICAgcGFkZGluZzogMCAkc2lkZW5hdi1wYWRkaW5nO1xuICAgIH1cbiAgICAudXNlci12aWV3IHtcbiAgICAgIHBhZGRpbmc6ICRzaWRlbmF2LXBhZGRpbmcgJHNpZGVuYXYtcGFkZGluZyAwO1xuICAgIH1cbiAgfVxufVxuXG4uc2lkZW5hdiAuY29sbGFwc2libGUtYm9keSB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5zaWRlbmF2LW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIGhlaWdodDogMTIwdmg7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgLjUpO1xuICB6LWluZGV4OiA5OTc7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8vIFNpZGVuYXYgY29sbGFwc2libGUgc3R5bGluZyAoVGFrZW4gZnJvbSBDb2xsYXBzaWJsZS5zY3NzKVxuLnNpZGVuYXYsXG4uc2lkZW5hdi5zaWRlbmF2LWZpeGVkIHtcbiAgLmNvbGxhcHNpYmxlIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuICAuY29sbGFwc2libGUtaGVhZGVyIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cbiAgLmNvbGxhcHNpYmxlLWJvZHkge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxufVxuIiwiLy8gUHJvZ3Jlc3MgQmFyXG4ucHJvZ3Jlc3Mge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogNHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgQGV4dGVuZCAuc3VyZmFjZS12YXJpYW50O1xuXG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgbWFyZ2luOiAkZWxlbWVudC10b3AtbWFyZ2luIDAgJGVsZW1lbnQtYm90dG9tLW1hcmdpbiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC5kZXRlcm1pbmF0ZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWNvbG9yO1xuICAgIHRyYW5zaXRpb246IHdpZHRoIC4zcyBsaW5lYXI7XG4gIH1cblxuICAuaW5kZXRlcm1pbmF0ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhci1jb2xvcjtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICB3aWxsLWNoYW5nZTogbGVmdCwgcmlnaHQ7XG4gICAgICAvLyBDdXN0b20gYmV6aWVyXG4gICAgICBhbmltYXRpb246IGluZGV0ZXJtaW5hdGUgMi4xcyBjdWJpYy1iZXppZXIoMC42NTAsIDAuODE1LCAwLjczNSwgMC4zOTUpIGluZmluaXRlO1xuXG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lsbC1jaGFuZ2U6IGxlZnQsIHJpZ2h0O1xuICAgICAgLy8gQ3VzdG9tIGJlemllclxuICAgICAgYW5pbWF0aW9uOiBpbmRldGVybWluYXRlLXNob3J0IDIuMXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0MCwgMC40NDAsIDEuMDAwKSBpbmZpbml0ZTtcbiAgICAgIGFuaW1hdGlvbi1kZWxheTogMS4xNXM7XG4gICAgfVxuICB9XG59XG5cbkBrZXlmcmFtZXMgaW5kZXRlcm1pbmF0ZSB7XG4gIDAlIHtcbiAgICBsZWZ0OiAtMzUlO1xuICAgIHJpZ2h0OiAxMDAlO1xuICB9XG4gIDYwJSB7XG4gICAgbGVmdDogMTAwJTtcbiAgICByaWdodDogLTkwJTtcbiAgfVxuICAxMDAlIHtcbiAgICBsZWZ0OiAxMDAlO1xuICAgIHJpZ2h0OiAtOTAlO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgaW5kZXRlcm1pbmF0ZS1zaG9ydCB7XG4gIDAlIHtcbiAgICBsZWZ0OiAtMjAwJTtcbiAgICByaWdodDogMTAwJTtcbiAgfVxuICA2MCUge1xuICAgIGxlZnQ6IDEwNyU7XG4gICAgcmlnaHQ6IC04JTtcbiAgfVxuICAxMDAlIHtcbiAgICBsZWZ0OiAxMDclO1xuICAgIHJpZ2h0OiAtOCU7XG4gIH1cbn1cblxuXG5cbi8qXG4gICAgQGxpY2Vuc2VcbiAgICBDb3B5cmlnaHQgKGMpIDIwMTQgVGhlIFBvbHltZXIgUHJvamVjdCBBdXRob3JzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICAgIFRoaXMgY29kZSBtYXkgb25seSBiZSB1c2VkIHVuZGVyIHRoZSBCU0Qgc3R5bGUgbGljZW5zZSBmb3VuZCBhdCBodHRwOi8vcG9seW1lci5naXRodWIuaW8vTElDRU5TRS50eHRcbiAgICBUaGUgY29tcGxldGUgc2V0IG9mIGF1dGhvcnMgbWF5IGJlIGZvdW5kIGF0IGh0dHA6Ly9wb2x5bWVyLmdpdGh1Yi5pby9BVVRIT1JTLnR4dFxuICAgIFRoZSBjb21wbGV0ZSBzZXQgb2YgY29udHJpYnV0b3JzIG1heSBiZSBmb3VuZCBhdCBodHRwOi8vcG9seW1lci5naXRodWIuaW8vQ09OVFJJQlVUT1JTLnR4dFxuICAgIENvZGUgZGlzdHJpYnV0ZWQgYnkgR29vZ2xlIGFzIHBhcnQgb2YgdGhlIHBvbHltZXIgcHJvamVjdCBpcyBhbHNvXG4gICAgc3ViamVjdCB0byBhbiBhZGRpdGlvbmFsIElQIHJpZ2h0cyBncmFudCBmb3VuZCBhdCBodHRwOi8vcG9seW1lci5naXRodWIuaW8vUEFURU5UUy50eHRcbiAqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBTVFlMRVMgRk9SIFRIRSBTUElOTkVSICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qXG4gKiBDb25zdGFudHM6XG4gKiAgICAgIFNUUk9LRVdJRFRIID0gM3B4XG4gKiAgICAgIEFSQ1NJWkUgICAgID0gMjcwIGRlZ3JlZXMgKGFtb3VudCBvZiBjaXJjbGUgdGhlIGFyYyB0YWtlcyB1cClcbiAqICAgICAgQVJDVElNRSAgICAgPSAxMzMzbXMgKHRpbWUgaXQgdGFrZXMgdG8gZXhwYW5kIGFuZCBjb250cmFjdCBhcmMpXG4gKiAgICAgIEFSQ1NUQVJUUk9UID0gMjE2IGRlZ3JlZXMgKGhvdyBtdWNoIHRoZSBzdGFydCBsb2NhdGlvbiBvZiB0aGUgYXJjXG4gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hvdWxkIHJvdGF0ZSBlYWNoIHRpbWUsIDIxNiBnaXZlcyB1cyBhXG4gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNSBwb2ludGVkIHN0YXIgc2hhcGUgKGl0J3MgMzYwLzUgKiAzKS5cbiAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGb3IgYSA3IHBvaW50ZWQgc3Rhciwgd2UgbWlnaHQgZG9cbiAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAzNjAvNyAqIDMgPSAxNTQuMjg2KVxuICogICAgICBDT05UQUlORVJXSURUSCA9IDI4cHhcbiAqICAgICAgU0hSSU5LX1RJTUUgPSA0MDBtc1xuICovXG5cblxuLnByZWxvYWRlci13cmFwcGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG5cbiAgJi5zbWFsbCB7XG4gICAgd2lkdGg6IDM2cHg7XG4gICAgaGVpZ2h0OiAzNnB4O1xuICB9XG5cbiAgJi5iaWcge1xuICAgIHdpZHRoOiA2NHB4O1xuICAgIGhlaWdodDogNjRweDtcbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICAvKiBkdXJhdGlvbjogMzYwICogQVJDVElNRSAvIChBUkNTVEFSVFJPVCArICgzNjAtQVJDU0laRSkpICovXG4gICAgLXdlYmtpdC1hbmltYXRpb246IGNvbnRhaW5lci1yb3RhdGUgMTU2OG1zIGxpbmVhciBpbmZpbml0ZTtcbiAgICBhbmltYXRpb246IGNvbnRhaW5lci1yb3RhdGUgMTU2OG1zIGxpbmVhciBpbmZpbml0ZTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgY29udGFpbmVyLXJvdGF0ZSB7XG4gIHRvIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpIH1cbn1cblxuQGtleWZyYW1lcyBjb250YWluZXItcm90YXRlIHtcbiAgdG8geyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpIH1cbn1cblxuLnNwaW5uZXItbGF5ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9wYWNpdHk6IDA7XG4gIGJvcmRlci1jb2xvcjogJHNwaW5uZXItZGVmYXVsdC1jb2xvcjtcbn1cblxuLnNwaW5uZXItYmx1ZSxcbi5zcGlubmVyLWJsdWUtb25seSB7XG4gIGJvcmRlci1jb2xvcjogIzQyODVmNDtcbn1cblxuLnNwaW5uZXItcmVkLFxuLnNwaW5uZXItcmVkLW9ubHkge1xuICBib3JkZXItY29sb3I6ICNkYjQ0Mzc7XG59XG5cbi5zcGlubmVyLXllbGxvdyxcbi5zcGlubmVyLXllbGxvdy1vbmx5IHtcbiAgYm9yZGVyLWNvbG9yOiAjZjRiNDAwO1xufVxuXG4uc3Bpbm5lci1ncmVlbixcbi5zcGlubmVyLWdyZWVuLW9ubHkge1xuICBib3JkZXItY29sb3I6ICMwZjlkNTg7XG59XG5cbi8qKlxuICogSU1QT1JUQU5UIE5PVEUgQUJPVVQgQ1NTIEFOSU1BVElPTiBQUk9QRVJUSUVTIChrZWFudWxlZSk6XG4gKlxuICogaU9TIFNhZmFyaSAodGVzdGVkIG9uIGlPUyA4LjEpIGRvZXMgbm90IGhhbmRsZSBhbmltYXRpb24tZGVsYXkgdmVyeSB3ZWxsIC0gaXQgZG9lc24ndFxuICogZ3VhcmFudGVlIHRoYXQgdGhlIGFuaW1hdGlvbiB3aWxsIHN0YXJ0IF9leGFjdGx5XyBhZnRlciB0aGF0IHZhbHVlLiBTbyB3ZSBhdm9pZCB1c2luZ1xuICogYW5pbWF0aW9uLWRlbGF5IGFuZCBpbnN0ZWFkIHNldCBjdXN0b20ga2V5ZnJhbWVzIGZvciBlYWNoIGNvbG9yIChhcyByZWR1bmRhbnQgYXMgaXRcbiAqIHNlZW1zKS5cbiAqXG4gKiBXZSB3cml0ZSBvdXQgZWFjaCBhbmltYXRpb24gaW4gZnVsbCAoaW5zdGVhZCBvZiBzZXBhcmF0aW5nIGFuaW1hdGlvbi1uYW1lLFxuICogYW5pbWF0aW9uLWR1cmF0aW9uLCBldGMuKSBiZWNhdXNlIHVuZGVyIHRoZSBwb2x5ZmlsbCwgU2FmYXJpIGRvZXMgbm90IHJlY29nbml6ZSB0aG9zZVxuICogc3BlY2lmaWMgcHJvcGVydGllcyBwcm9wZXJseSwgdHJlYXRzIHRoZW0gYXMgLXdlYmtpdC1hbmltYXRpb24sIGFuZCBvdmVycmlkZXMgdGhlXG4gKiBvdGhlciBhbmltYXRpb24gcnVsZXMuIFNlZSBodHRwczovL2dpdGh1Yi5jb20vUG9seW1lci9wbGF0Zm9ybS9pc3N1ZXMvNTMuXG4gKi9cbi5hY3RpdmUgLnNwaW5uZXItbGF5ZXIuc3Bpbm5lci1ibHVlIHtcbiAgLyogZHVyYXRpb25zOiA0ICogQVJDVElNRSAqL1xuICAtd2Via2l0LWFuaW1hdGlvbjogZmlsbC11bmZpbGwtcm90YXRlIDUzMzJtcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuMiwgMSkgaW5maW5pdGUgYm90aCwgYmx1ZS1mYWRlLWluLW91dCA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG4gIGFuaW1hdGlvbjogZmlsbC11bmZpbGwtcm90YXRlIDUzMzJtcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuMiwgMSkgaW5maW5pdGUgYm90aCwgYmx1ZS1mYWRlLWluLW91dCA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG59XG5cbi5hY3RpdmUgLnNwaW5uZXItbGF5ZXIuc3Bpbm5lci1yZWQge1xuICAvKiBkdXJhdGlvbnM6IDQgKiBBUkNUSU1FICovXG4gIC13ZWJraXQtYW5pbWF0aW9uOiBmaWxsLXVuZmlsbC1yb3RhdGUgNTMzMm1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKSBpbmZpbml0ZSBib3RoLCByZWQtZmFkZS1pbi1vdXQgNTMzMm1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKSBpbmZpbml0ZSBib3RoO1xuICBhbmltYXRpb246IGZpbGwtdW5maWxsLXJvdGF0ZSA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGgsIHJlZC1mYWRlLWluLW91dCA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG59XG5cbi5hY3RpdmUgLnNwaW5uZXItbGF5ZXIuc3Bpbm5lci15ZWxsb3cge1xuICAvKiBkdXJhdGlvbnM6IDQgKiBBUkNUSU1FICovXG4gIC13ZWJraXQtYW5pbWF0aW9uOiBmaWxsLXVuZmlsbC1yb3RhdGUgNTMzMm1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKSBpbmZpbml0ZSBib3RoLCB5ZWxsb3ctZmFkZS1pbi1vdXQgNTMzMm1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKSBpbmZpbml0ZSBib3RoO1xuICBhbmltYXRpb246IGZpbGwtdW5maWxsLXJvdGF0ZSA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGgsIHllbGxvdy1mYWRlLWluLW91dCA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG59XG5cbi5hY3RpdmUgLnNwaW5uZXItbGF5ZXIuc3Bpbm5lci1ncmVlbiB7XG4gIC8qIGR1cmF0aW9uczogNCAqIEFSQ1RJTUUgKi9cbiAgLXdlYmtpdC1hbmltYXRpb246IGZpbGwtdW5maWxsLXJvdGF0ZSA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGgsIGdyZWVuLWZhZGUtaW4tb3V0IDUzMzJtcyBjdWJpYy1iZXppZXIoMC40LCAwLjAsIDAuMiwgMSkgaW5maW5pdGUgYm90aDtcbiAgYW5pbWF0aW9uOiBmaWxsLXVuZmlsbC1yb3RhdGUgNTMzMm1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKSBpbmZpbml0ZSBib3RoLCBncmVlbi1mYWRlLWluLW91dCA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG59XG5cbi5hY3RpdmUgLnNwaW5uZXItbGF5ZXIsXG4uYWN0aXZlIC5zcGlubmVyLWxheWVyLnNwaW5uZXItYmx1ZS1vbmx5LFxuLmFjdGl2ZSAuc3Bpbm5lci1sYXllci5zcGlubmVyLXJlZC1vbmx5LFxuLmFjdGl2ZSAuc3Bpbm5lci1sYXllci5zcGlubmVyLXllbGxvdy1vbmx5LFxuLmFjdGl2ZSAuc3Bpbm5lci1sYXllci5zcGlubmVyLWdyZWVuLW9ubHkge1xuICAvKiBkdXJhdGlvbnM6IDQgKiBBUkNUSU1FICovXG4gIG9wYWNpdHk6IDE7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBmaWxsLXVuZmlsbC1yb3RhdGUgNTMzMm1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKSBpbmZpbml0ZSBib3RoO1xuICBhbmltYXRpb246IGZpbGwtdW5maWxsLXJvdGF0ZSA1MzMybXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmaWxsLXVuZmlsbC1yb3RhdGUge1xuICAxMi41JSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTsgIH0gLyogMC41ICogQVJDU0laRSAqL1xuICAyNSUgICB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTsgIH0gLyogMSAgICogQVJDU0laRSAqL1xuICAzNy41JSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDA1ZGVnKTsgIH0gLyogMS41ICogQVJDU0laRSAqL1xuICA1MCUgICB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNTQwZGVnKTsgIH0gLyogMiAgICogQVJDU0laRSAqL1xuICA2Mi41JSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNjc1ZGVnKTsgIH0gLyogMi41ICogQVJDU0laRSAqL1xuICA3NSUgICB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoODEwZGVnKTsgIH0gLyogMyAgICogQVJDU0laRSAqL1xuICA4Ny41JSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoOTQ1ZGVnKTsgIH0gLyogMy41ICogQVJDU0laRSAqL1xuICB0byAgICB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTA4MGRlZyk7IH0gLyogNCAgICogQVJDU0laRSAqL1xufVxuXG5Aa2V5ZnJhbWVzIGZpbGwtdW5maWxsLXJvdGF0ZSB7XG4gIDEyLjUlIHsgdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTsgIH0gLyogMC41ICogQVJDU0laRSAqL1xuICAyNSUgICB7IHRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7ICB9IC8qIDEgICAqIEFSQ1NJWkUgKi9cbiAgMzcuNSUgeyB0cmFuc2Zvcm06IHJvdGF0ZSg0MDVkZWcpOyAgfSAvKiAxLjUgKiBBUkNTSVpFICovXG4gIDUwJSAgIHsgdHJhbnNmb3JtOiByb3RhdGUoNTQwZGVnKTsgIH0gLyogMiAgICogQVJDU0laRSAqL1xuICA2Mi41JSB7IHRyYW5zZm9ybTogcm90YXRlKDY3NWRlZyk7ICB9IC8qIDIuNSAqIEFSQ1NJWkUgKi9cbiAgNzUlICAgeyB0cmFuc2Zvcm06IHJvdGF0ZSg4MTBkZWcpOyAgfSAvKiAzICAgKiBBUkNTSVpFICovXG4gIDg3LjUlIHsgdHJhbnNmb3JtOiByb3RhdGUoOTQ1ZGVnKTsgIH0gLyogMy41ICogQVJDU0laRSAqL1xuICB0byAgICB7IHRyYW5zZm9ybTogcm90YXRlKDEwODBkZWcpOyB9IC8qIDQgICAqIEFSQ1NJWkUgKi9cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJsdWUtZmFkZS1pbi1vdXQge1xuICBmcm9tIHsgb3BhY2l0eTogMTsgfVxuICAyNSUgeyBvcGFjaXR5OiAxOyB9XG4gIDI2JSB7IG9wYWNpdHk6IDA7IH1cbiAgODklIHsgb3BhY2l0eTogMDsgfVxuICA5MCUgeyBvcGFjaXR5OiAxOyB9XG4gIDEwMCUgeyBvcGFjaXR5OiAxOyB9XG59XG5cbkBrZXlmcmFtZXMgYmx1ZS1mYWRlLWluLW91dCB7XG4gIGZyb20geyBvcGFjaXR5OiAxOyB9XG4gIDI1JSB7IG9wYWNpdHk6IDE7IH1cbiAgMjYlIHsgb3BhY2l0eTogMDsgfVxuICA4OSUgeyBvcGFjaXR5OiAwOyB9XG4gIDkwJSB7IG9wYWNpdHk6IDE7IH1cbiAgMTAwJSB7IG9wYWNpdHk6IDE7IH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJlZC1mYWRlLWluLW91dCB7XG4gIGZyb20geyBvcGFjaXR5OiAwOyB9XG4gIDE1JSB7IG9wYWNpdHk6IDA7IH1cbiAgMjUlIHsgb3BhY2l0eTogMTsgfVxuICA1MCUgeyBvcGFjaXR5OiAxOyB9XG4gIDUxJSB7IG9wYWNpdHk6IDA7IH1cbn1cblxuQGtleWZyYW1lcyByZWQtZmFkZS1pbi1vdXQge1xuICBmcm9tIHsgb3BhY2l0eTogMDsgfVxuICAxNSUgeyBvcGFjaXR5OiAwOyB9XG4gIDI1JSB7IG9wYWNpdHk6IDE7IH1cbiAgNTAlIHsgb3BhY2l0eTogMTsgfVxuICA1MSUgeyBvcGFjaXR5OiAwOyB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB5ZWxsb3ctZmFkZS1pbi1vdXQge1xuICBmcm9tIHsgb3BhY2l0eTogMDsgfVxuICA0MCUgeyBvcGFjaXR5OiAwOyB9XG4gIDUwJSB7IG9wYWNpdHk6IDE7IH1cbiAgNzUlIHsgb3BhY2l0eTogMTsgfVxuICA3NiUgeyBvcGFjaXR5OiAwOyB9XG59XG5cbkBrZXlmcmFtZXMgeWVsbG93LWZhZGUtaW4tb3V0IHtcbiAgZnJvbSB7IG9wYWNpdHk6IDA7IH1cbiAgNDAlIHsgb3BhY2l0eTogMDsgfVxuICA1MCUgeyBvcGFjaXR5OiAxOyB9XG4gIDc1JSB7IG9wYWNpdHk6IDE7IH1cbiAgNzYlIHsgb3BhY2l0eTogMDsgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZ3JlZW4tZmFkZS1pbi1vdXQge1xuICBmcm9tIHsgb3BhY2l0eTogMDsgfVxuICA2NSUgeyBvcGFjaXR5OiAwOyB9XG4gIDc1JSB7IG9wYWNpdHk6IDE7IH1cbiAgOTAlIHsgb3BhY2l0eTogMTsgfVxuICAxMDAlIHsgb3BhY2l0eTogMDsgfVxufVxuXG5Aa2V5ZnJhbWVzIGdyZWVuLWZhZGUtaW4tb3V0IHtcbiAgZnJvbSB7IG9wYWNpdHk6IDA7IH1cbiAgNjUlIHsgb3BhY2l0eTogMDsgfVxuICA3NSUgeyBvcGFjaXR5OiAxOyB9XG4gIDkwJSB7IG9wYWNpdHk6IDE7IH1cbiAgMTAwJSB7IG9wYWNpdHk6IDA7IH1cbn1cblxuLyoqXG4gKiBQYXRjaCB0aGUgZ2FwIHRoYXQgYXBwZWFyIGJldHdlZW4gdGhlIHR3byBhZGphY2VudCBkaXYuY2lyY2xlLWNsaXBwZXIgd2hpbGUgdGhlXG4gKiBzcGlubmVyIGlzIHJvdGF0aW5nIChhcHBlYXJzIG9uIENocm9tZSAzOCwgU2FmYXJpIDcuMSwgYW5kIElFIDExKS5cbiAqL1xuLmdhcC1wYXRjaCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiA0NSU7XG4gIHdpZHRoOiAxMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xufVxuXG4uZ2FwLXBhdGNoIC5jaXJjbGUge1xuICB3aWR0aDogMTAwMCU7XG4gIGxlZnQ6IC00NTAlO1xufVxuXG4uY2lyY2xlLWNsaXBwZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDUwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG5cbiAgLmNpcmNsZSB7XG4gICAgd2lkdGg6IDIwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlci13aWR0aDogM3B4OyAvKiBTVFJPS0VXSURUSCAqL1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiBpbmhlcml0O1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiBub25lO1xuICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgfVxuXG4gICYubGVmdCAuY2lyY2xlIHtcbiAgICBsZWZ0OiAwO1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDEyOWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTI5ZGVnKTtcbiAgfVxuICAmLnJpZ2h0IC5jaXJjbGUge1xuICAgIGxlZnQ6IC0xMDAlO1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTEyOWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTEyOWRlZyk7XG4gIH1cbn1cblxuXG5cbi5hY3RpdmUgLmNpcmNsZS1jbGlwcGVyLmxlZnQgLmNpcmNsZSB7XG4gIC8qIGR1cmF0aW9uOiBBUkNUSU1FICovXG4gIC13ZWJraXQtYW5pbWF0aW9uOiBsZWZ0LXNwaW4gMTMzM21zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKSBpbmZpbml0ZSBib3RoO1xuICBhbmltYXRpb246IGxlZnQtc3BpbiAxMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG59XG5cbi5hY3RpdmUgLmNpcmNsZS1jbGlwcGVyLnJpZ2h0IC5jaXJjbGUge1xuICAvKiBkdXJhdGlvbjogQVJDVElNRSAqL1xuICAtd2Via2l0LWFuaW1hdGlvbjogcmlnaHQtc3BpbiAxMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG4gIGFuaW1hdGlvbjogcmlnaHQtc3BpbiAxMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMC4wLCAwLjIsIDEpIGluZmluaXRlIGJvdGg7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBsZWZ0LXNwaW4ge1xuICBmcm9tIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxMzBkZWcpOyB9XG4gIDUwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTVkZWcpOyB9XG4gIHRvIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxMzBkZWcpOyB9XG59XG5cbkBrZXlmcmFtZXMgbGVmdC1zcGluIHtcbiAgZnJvbSB7IHRyYW5zZm9ybTogcm90YXRlKDEzMGRlZyk7IH1cbiAgNTAlIHsgdHJhbnNmb3JtOiByb3RhdGUoLTVkZWcpOyB9XG4gIHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoMTMwZGVnKTsgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcmlnaHQtc3BpbiB7XG4gIGZyb20geyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMzBkZWcpOyB9XG4gIDUwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7IH1cbiAgdG8geyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMzBkZWcpOyB9XG59XG5cbkBrZXlmcmFtZXMgcmlnaHQtc3BpbiB7XG4gIGZyb20geyB0cmFuc2Zvcm06IHJvdGF0ZSgtMTMwZGVnKTsgfVxuICA1MCUgeyB0cmFuc2Zvcm06IHJvdGF0ZSg1ZGVnKTsgfVxuICB0byB7IHRyYW5zZm9ybTogcm90YXRlKC0xMzBkZWcpOyB9XG59XG5cbiNzcGlubmVyQ29udGFpbmVyLmNvb2xkb3duIHtcbiAgLyogZHVyYXRpb246IFNIUklOS19USU1FICovXG4gIC13ZWJraXQtYW5pbWF0aW9uOiBjb250YWluZXItcm90YXRlIDE1NjhtcyBsaW5lYXIgaW5maW5pdGUsIGZhZGUtb3V0IDQwMG1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKTtcbiAgYW5pbWF0aW9uOiBjb250YWluZXItcm90YXRlIDE1NjhtcyBsaW5lYXIgaW5maW5pdGUsIGZhZGUtb3V0IDQwMG1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMC4yLCAxKTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGUtb3V0IHtcbiAgZnJvbSB7IG9wYWNpdHk6IDE7IH1cbiAgdG8geyBvcGFjaXR5OiAwOyB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZS1vdXQge1xuICBmcm9tIHsgb3BhY2l0eTogMTsgfVxuICB0byB7IG9wYWNpdHk6IDA7IH1cbn1cbiIsIi5zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogNDAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC8vIEZ1bGxzY3JlZW4gc2xpZGVyXG4gICYuZnVsbHNjcmVlbiB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG5cbiAgICB1bC5zbGlkZXMge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIHVsLmluZGljYXRvcnMge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIGJvdHRvbTogMzBweDtcblxuICAgICAgLmluZGljYXRvci1pdGVtIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNsaWRlci1mdWxsc2NyZWVuLWluZGljYXRvci1jb2xvcjtcblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNsaWRlci1mdWxsc2NyZWVuLWluZGljYXRvci1jb2xvci1hY3RpdmU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgfVxuXG4gIC5zbGlkZXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzbGlkZXItYmctY29sb3I7XG4gICAgbWFyZ2luOiAwO1xuICAgIGhlaWdodDogNDAwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAgIGxpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgXG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogaW5oZXJpdDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgIGltZyB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgLmNhcHRpb24ge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDE1JTtcbiAgICAgICAgbGVmdDogMTUlO1xuICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICBvcGFjaXR5OiAwO1xuXG4gICAgICAgIHAge1xuICAgICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaW5kaWNhdG9ycyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIG1hcmdpbjogMDtcblxuICAgIC5pbmRpY2F0b3ItaXRlbSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICB3aWR0aDogMTZweDtcbiAgICAgIG1hcmdpbjogMCAxMnB4O1xuICAgIH1cblxuICAgIC5pbmRpY2F0b3ItaXRlbS1idG4ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzbGlkZXItaW5kaWNhdG9yLWNvbG9yO1xuXG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGJvcmRlci13aWR0aDogMDtcbiAgICAgIFxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWluZGljYXRvci1jb2xvci1hY3RpdmU7XG4gICAgICB9XG5cbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgfVxufSIsIi5jYXJvdXNlbCB7XG4gICYuY2Fyb3VzZWwtc2xpZGVyIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcblxuICAgIC5jYXJvdXNlbC1maXhlZC1pdGVtIHtcbiAgICAgICYud2l0aC1pbmRpY2F0b3JzIHtcbiAgICAgICAgYm90dG9tOiA2OHB4O1xuICAgICAgfVxuXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDIwcHg7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgIC5jYXJvdXNlbC1pdGVtIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWluLWhlaWdodDogJGNhcm91c2VsLWhlaWdodDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG5cbiAgICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjYXJvdXNlbC1oZWlnaHQ7XG4gIHBlcnNwZWN0aXZlOiA1MDBweDtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCUgNTAlO1xuXG4gIC5jYXJvdXNlbC1pdGVtIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgd2lkdGg6ICRjYXJvdXNlbC1pdGVtLXdpZHRoO1xuICAgIGhlaWdodDogJGNhcm91c2VsLWl0ZW0taGVpZ2h0O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcblxuICAgICYgPiBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmluZGljYXRvcnMge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIG1hcmdpbjogMDtcblxuICAgIC5pbmRpY2F0b3ItaXRlbSB7XG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJvdXNlbC1pbmRpY2F0b3ItY29sb3ItYWN0aXZlO1xuICAgICAgfVxuXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBoZWlnaHQ6IDhweDtcbiAgICAgIHdpZHRoOiA4cHg7XG4gICAgICBtYXJnaW46IDI0cHggNHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcm91c2VsLWluZGljYXRvci1jb2xvcjtcblxuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuM3M7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgfVxuICB9XG5cbiAgLy8gTWF0ZXJpYWxib3ggY29tcGF0aWJpbGl0eVxuICAmLnNjcm9sbGluZyAuY2Fyb3VzZWwtaXRlbSAubWF0ZXJpYWxib3hlZCxcbiAgLmNhcm91c2VsLWl0ZW06bm90KC5hY3RpdmUpIC5tYXRlcmlhbGJveGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxufVxuIiwiLnRhcC10YXJnZXQtd3JhcHBlciB7XG4gIHdpZHRoOiA4MDBweDtcbiAgaGVpZ2h0OiA4MDBweDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAxMDAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IHZpc2liaWxpdHkgMHMgLjNzO1xufVxuXG4udGFwLXRhcmdldC13cmFwcGVyLm9wZW4ge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDBzO1xuXG4gIC50YXAtdGFyZ2V0IHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIG9wYWNpdHk6IC45NTtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgdHJhbnNmb3JtIC4zcyBjdWJpYy1iZXppZXIoLjQyLDAsLjU4LDEpLFxuICAgICAgb3BhY2l0eSAuM3MgY3ViaWMtYmV6aWVyKC40MiwwLC41OCwxKTtcbiAgfVxuXG4gIC50YXAtdGFyZ2V0LXdhdmU6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuICAudGFwLXRhcmdldC13YXZlOjphZnRlciB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBhbmltYXRpb246IHB1bHNlLWFuaW1hdGlvbiAxcyBjdWJpYy1iZXppZXIoMC4yNCwgMCwgMC4zOCwgMSkgaW5maW5pdGU7XG4gICAgdHJhbnNpdGlvbjpcbiAgICAgIG9wYWNpdHkgLjNzLFxuICAgICAgdHJhbnNmb3JtIC4zcyxcbiAgICAgIHZpc2liaWxpdHkgMHMgMXM7XG4gIH1cbn1cblxuLnRhcC10YXJnZXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICBjb2xvcjogJGZvbnQtb24tc2Vjb25kYXJ5LWNvbG9yLW1haW47XG4gIGJveC1zaGFkb3c6IDAgMjBweCAyMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE0KSwgMCAxMHB4IDUwcHggMCByZ2JhKDAsIDAsIDAsIDAuMTIpLCAwIDMwcHggMTBweCAtMjBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgY3ViaWMtYmV6aWVyKC40MiwgMCwgLjU4LCAxKSxcbiAgb3BhY2l0eSAuM3MgY3ViaWMtYmV6aWVyKC40MiwgMCwgLjU4LCAxKTtcbn1cblxuLnRhcC10YXJnZXQtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbn1cblxuLnRhcC10YXJnZXQtd2F2ZSB7XG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzdXJmYWNlLWNvbG9yXG4gIH1cbiAgJjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3M7XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgb3BhY2l0eSAuM3MsXG4gICAgICB0cmFuc2Zvcm0gLjNzLFxuICAgICAgdmlzaWJpbGl0eSAwcztcbiAgICB6LWluZGV4OiAtMTtcbiAgfVxuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB6LWluZGV4OiAxMDAwMTtcbn1cblxuLnRhcC10YXJnZXQtb3JpZ2luIHtcbiAgJjpub3QoLmJ0biksXG4gICY6bm90KC5idG4pOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICB9XG5cbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcblxuICB6LWluZGV4OiAxMDAwMjtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgLnRhcC10YXJnZXQsIC50YXAtdGFyZ2V0LXdyYXBwZXIge1xuICAgIHdpZHRoOiA2MDBweDtcbiAgICBoZWlnaHQ6IDYwMHB4O1xuICB9XG59XG4iLCIucHVsc2Uge1xuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICBib3JkZXItcmFkaXVzOiBpbmhlcml0O1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzLCB0cmFuc2Zvcm0gLjNzO1xuICAgIGFuaW1hdGlvbjogcHVsc2UtYW5pbWF0aW9uIDFzIGN1YmljLWJlemllcigwLjI0LCAwLCAwLjM4LCAxKSBpbmZpbml0ZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgfVxuXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbkBrZXlmcmFtZXMgcHVsc2UtYW5pbWF0aW9uIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICB9XG59XG4iLCIvKiBNb2RhbCAqL1xuLmRhdGVwaWNrZXItbW9kYWwge1xuICBtYXgtd2lkdGg6IDMyNXB4O1xuICBtaW4td2lkdGg6IDMwMHB4O1xuICBtYXgtaGVpZ2h0OiBub25lO1xufVxuXG4uZGF0ZXBpY2tlci1jb250YWluZXIubW9kYWwtY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzdXJmYWNlLWNvbG9yO1xufVxuXG4uZGF0ZXBpY2tlci1jb250cm9scyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgd2lkdGg6IDI4MHB4O1xuICBtYXJnaW46IDAgYXV0bztcblxuICAuc2VsZWN0cy1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAuc2VsZWN0LXdyYXBwZXIge1xuICAgIGlucHV0IHtcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgfVxuXG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC5jYXJldCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5zZWxlY3QteWVhciBpbnB1dCB7XG4gICAgd2lkdGg6IDUwcHg7XG4gIH1cblxuICAuc2VsZWN0LW1vbnRoIGlucHV0IHtcbiAgICB3aWR0aDogODBweDtcbiAgfVxuXG4gIC5tb250aC1wcmV2LFxuICAubW9udGgtbmV4dCB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIC5tb250aC1wcmV2ID4gc3ZnLFxuICAubW9udGgtbmV4dCA+IHN2ZyB7XG4gICAgZmlsbDogJGJ1dHRvbi1mbGF0LWNvbG9yO1xuICB9XG59XG5cbi5tb250aC1wcmV2LCAubW9udGgtbmV4dCB7XG4gIG1hcmdpbi10b3A6IDRweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xufVxuXG5cbi8qIERhdGUgRGlzcGxheSAqL1xuLmRhdGVwaWNrZXItZGF0ZS1kaXNwbGF5IHtcbiAgZmxleDogMSBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgY29sb3I6ICRmb250LW9uLXByaW1hcnktY29sb3ItbWFpbjtcbiAgcGFkZGluZzogMjBweCAyMnB4O1xuICBmb250LXdlaWdodDogNTAwO1xuXG4gIC55ZWFyLXRleHQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgIGNvbG9yOiAkZGF0ZXBpY2tlci15ZWFyO1xuICB9XG5cbiAgLmRhdGUtdGV4dCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAyLjhyZW07XG4gICAgbGluZS1oZWlnaHQ6IDQ3cHg7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgfVxufVxuXG5cbi8qIENhbGVuZGFyICovXG4uZGF0ZXBpY2tlci1jYWxlbmRhci1jb250YWluZXIge1xuICBmbGV4OiAyLjUgYXV0bztcbn1cblxuLmRhdGVwaWNrZXItdGFibGUge1xuICB3aWR0aDogMjgwcHg7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbWFyZ2luOiAwIGF1dG87XG5cbiAgdGhlYWQge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIH1cblxuICB0aCB7XG4gICAgcGFkZGluZzogMTBweCA1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgdHIge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxuXG4gIGFiYnIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogJGRhdGVwaWNrZXItY2FsZW5kYXItaGVhZGVyLWNvbG9yO1xuICB9XG5cbiAgdGQge1xuICAgIGNvbG9yOiAkZGF0ZXBpY2tlci1kYXktZm9udC1jb2xvcjtcblxuICAgICYuaXMtdG9kYXkge1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cblxuICAgICYuaXMtc2VsZWN0ZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICBjb2xvcjogJGZvbnQtb24tcHJpbWFyeS1jb2xvci1tYWluO1xuICAgIH1cblxuICAgICYuaXMtb3V0c2lkZS1jdXJyZW50LW1vbnRoLFxuICAgICYuaXMtZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICRkYXRlcGlja2VyLWRheS1mb250LWNvbG9yLWRpc2FibGVkO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLmRhdGVwaWNrZXItZGF5LWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAzOHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgcGFkZGluZzogMCA1cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRhdGVwaWNrZXItZGF5LWhvdmVyO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRhdGVwaWNrZXItZGF5LWZvY3VzO1xuICB9XG59XG5cblxuLyogRm9vdGVyICovXG4uZGF0ZXBpY2tlci1mb290ZXIge1xuICB3aWR0aDogMjgwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5kYXRlcGlja2VyLWNhbmNlbCxcbi5kYXRlcGlja2VyLWNsZWFyLFxuLmRhdGVwaWNrZXItdG9kYXksXG4uZGF0ZXBpY2tlci1kb25lIHtcbiAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICBwYWRkaW5nOiAwIDFyZW07XG59XG5cbi5kYXRlcGlja2VyLWNsZWFyIHtcbiAgY29sb3I6ICRlcnJvci1jb2xvcjtcbn1cblxuXG4vKiBNZWRpYSBRdWVyaWVzICovXG5AbWVkaWEgI3skbWVkaXVtLWFuZC11cH0ge1xuICAuZGF0ZXBpY2tlci1tb2RhbCB7XG4gICAgbWF4LXdpZHRoOiA2MjVweDtcbiAgfVxuXG4gIC5kYXRlcGlja2VyLWNvbnRhaW5lci5tb2RhbC1jb250ZW50IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG5cbiAgLmRhdGVwaWNrZXItZGF0ZS1kaXNwbGF5IHtcbiAgICBmbGV4OiAwIDEgMjcwcHg7XG4gIH1cblxuICAuZGF0ZXBpY2tlci1jb250cm9scyxcbiAgLmRhdGVwaWNrZXItdGFibGUsXG4gIC5kYXRlcGlja2VyLWZvb3RlciB7XG4gICAgd2lkdGg6IDMyMHB4O1xuICB9XG5cbiAgLmRhdGVwaWNrZXItZGF5LWJ1dHRvbiB7XG4gICAgbGluZS1oZWlnaHQ6IDQ0cHg7XG4gIH1cbn1cbiIsIi8qIFRpbWVwaWNrZXIgQ29udGFpbmVycyAqL1xuLnRpbWVwaWNrZXItbW9kYWwge1xuICBtYXgtd2lkdGg6IDMyNXB4O1xuICBtYXgtaGVpZ2h0OiBub25lO1xufVxuXG4udGltZXBpY2tlci1jb250YWluZXIubW9kYWwtY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBhZGRpbmc6IDA7XG59XG5cbi50ZXh0LXByaW1hcnkge1xuICBjb2xvcjogJGZvbnQtb24tcHJpbWFyeS1jb2xvci1tYWluO1xufVxuXG5cbi8qIENsb2NrIERpZ2l0YWwgRGlzcGxheSAqL1xuLnRpbWVwaWNrZXItZGlnaXRhbC1kaXNwbGF5IHtcbiAgd2lkdGg6IDIwMHB4O1xuICBmbGV4OiAxIGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICBwYWRkaW5nOiAxMHB4O1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG4udGltZXBpY2tlci10ZXh0LWNvbnRhaW5lciB7XG4gIGZvbnQtc2l6ZTogNHJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICRmb250LW9uLXByaW1hcnktY29sb3ItbWVkaXVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuXG4gIGlucHV0W3R5cGU9dGV4dF17XG4gICAgaGVpZ2h0OiA0cmVtO1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNik7XG4gICAgYm9yZGVyLWJvdHRvbTogMHB4O1xuICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgICBkaXJlY3Rpb246IGx0cjtcbiAgfVxufVxuXG4udGltZXBpY2tlci1pbnB1dC1ob3Vycyxcbi50aW1lcGlja2VyLWlucHV0LW1pbnV0ZXMsXG4udGltZXBpY2tlci1zcGFuLWFtLXBtIGRpdiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuaW5wdXRbdHlwZT10ZXh0XS50aW1lcGlja2VyLWlucHV0LWhvdXJzIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHdpZHRoOiAyOCU7XG4gIG1hcmdpbi1yaWdodDogM3B4O1xufVxuXG5pbnB1dFt0eXBlPXRleHRdLnRpbWVwaWNrZXItaW5wdXQtbWludXRlcyB7XG4gIHdpZHRoOiAzMyU7XG4gIG1hcmdpbi1sZWZ0OiAzcHg7XG59XG5cbmlucHV0W3R5cGU9dGV4dF0udGV4dC1wcmltYXJ5IHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMSk7XG59XG5cbi50aW1lcGlja2VyLWRpc3BsYXktYW0tcG0ge1xuICBmb250LXNpemU6IDEuM3JlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMXJlbTtcbiAgYm90dG9tOiAxcmVtO1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG5cbi8qIEFuYWxvZyBDbG9jayBEaXNwbGF5ICovXG4udGltZXBpY2tlci1hbmFsb2ctZGlzcGxheSB7XG4gIGZsZXg6IDIuNSBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGltZXBpY2tlci1jbG9jay1iZztcbn1cblxuLnRpbWVwaWNrZXItcGxhdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGltZXBpY2tlci1jbG9jay1wbGF0ZS1iZztcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB3aWR0aDogMjcwcHg7XG4gIGhlaWdodDogMjcwcHg7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogYXV0bztcbiAgbWFyZ2luLXRvcDogMjVweDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLnRpbWVwaWNrZXItY2FudmFzLFxuLnRpbWVwaWNrZXItZGlhbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xufVxuXG4udGltZXBpY2tlci1taW51dGVzIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4udGltZXBpY2tlci10aWNrIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBjb2xvcjogJHRpbWVwaWNrZXItY2xvY2stY29sb3I7XG4gIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDE1cHg7XG59XG5cbi50aW1lcGlja2VyLXRpY2suYWN0aXZlLFxuLnRpbWVwaWNrZXItdGljazpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yLWhvdmVyLW9wYXF1ZTtcbn1cblxuLnRpbWVwaWNrZXItZGlhbCB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAzNTBtcywgb3BhY2l0eSAzNTBtcztcbn1cblxuLnRpbWVwaWNrZXItZGlhbC1vdXQge1xuICAmLnRpbWVwaWNrZXItaG91cnMge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xLCAxLjEpO1xuICB9XG5cbiAgJi50aW1lcGlja2VyLW1pbnV0ZXMge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoLjgsIC44KTtcbiAgfVxuXG4gIG9wYWNpdHk6IDA7XG59XG5cbi50aW1lcGlja2VyLWNhbnZhcyB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMTc1bXM7XG5cbiAgbGluZSB7XG4gICAgc3Ryb2tlOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBzdHJva2Utd2lkdGg6IDQ7XG4gICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xuICB9XG59XG5cbi50aW1lcGlja2VyLWNhbnZhcy1vdXQge1xuICBvcGFjaXR5OiAwLjI1O1xufVxuXG4udGltZXBpY2tlci1jYW52YXMtYmVhcmluZyB7XG4gIHN0cm9rZTogbm9uZTtcbiAgZmlsbDogJHByaW1hcnktY29sb3I7XG59XG5cbi50aW1lcGlja2VyLWNhbnZhcy1iZyB7XG4gIHN0cm9rZTogbm9uZTtcbiAgZmlsbDogJHByaW1hcnktY29sb3I7XG59XG5cblxuLyogRm9vdGVyICovXG4udGltZXBpY2tlci1mb290ZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogNXB4IDFyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuLnRpbWVwaWNrZXItY2xlYXIge1xuICBjb2xvcjogJGVycm9yLWNvbG9yO1xufVxuXG4udGltZXBpY2tlci1jbG9zZSB7XG4gIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbn1cblxuLnRpbWVwaWNrZXItY2xlYXIsXG4udGltZXBpY2tlci1jbG9zZSB7XG4gIHBhZGRpbmc6IDAgMjBweDtcbn1cblxuLyogTWVkaWEgUXVlcmllcyAqL1xuQG1lZGlhICN7JG1lZGl1bS1hbmQtdXB9IHtcbiAgLnRpbWVwaWNrZXItbW9kYWwge1xuICAgIG1heC13aWR0aDogNjAwcHg7XG4gIH1cblxuICAudGltZXBpY2tlci1jb250YWluZXIubW9kYWwtY29udGVudCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuXG4gIC50aW1lcGlja2VyLXRleHQtY29udGFpbmVyIHtcbiAgICB0b3A6IDMyJTtcbiAgfVxuXG4gIC50aW1lcGlja2VyLWRpc3BsYXktYW0tcG0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogYXV0bztcbiAgICBib3R0b206IGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6IDEuMnJlbTtcbiAgfVxufVxuIiwiLnJvdyB7XG4gICAgLS1nYXAtc2l6ZTogMXJlbTtcbiAgICAuY29sIHtcbiAgICAgICAgcGFkZGluZzogMCAwLjI1cmVtO1xuICAgIH1cbn1cblxuLmxpc3Qge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGJkYmRiO1xuICAgIHBhZGRpbmctdG9wOiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAwcHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IDBweCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAyZW07XG59XG5cbi5ib3R0b20tbGluZSB7ICAvLyBkaXYgZGUgbGlnbmVzXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkYmRiZGI7XG4gICAgbWFyZ2luLXRvcDogMHB4OyAvLyBzdXBwcmVzc2lvbiBkZSBsYSBtYXJnZSBoYXV0XG4gICAgbWFyZ2luLWJvdHRvbTogMHB4OyAvLyBzdXBwcmVzc2lvbiBkZSBsYSBtYXJnZSBiYXNcbiAgICBwYWRkaW5nLWJvdHRvbTogNXB4ICFpbXBvcnRhbnQ7IFxuICAgIHBhZGRpbmctdG9wOiA1cHggIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMS41ICFpbXBvcnRhbnQ7XG5cbiAgICAmOm5vdCgudG9wLWxpbmUpOm5vdCgudGl0bGUtZWxlbWVudCkge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3I6ICNjMmU0ZmYsICRhbW91bnQ6IDEwJSkgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH0gIFxuICAgIH1cblxuICAgICYudG9wLWxpbmUge1xuICAgICAgICBtYXJnaW4tdG9wOiAwcHg7IC8vIHN1cHByZXNzaW9uIGRlIGxhIG1hcmdlIGhhdXRcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7IC8vIHN1cHByZXNzaW9uIGR1IHBhZGRpbmcgYXByw6hzIGxhIGxpZ25lXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGRlYzIgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICB9XG4gICAgXG4gICAgJi50aXRsZS1lbGVtZW50IHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICM5Nzk3OTc7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIH1cblxuICAgICY6bm90KC5yZXN1bHQtZWxlbWVudCwgLnRpdGxlLWVsZW1lbnQpIHtcbiAgICAgICAgJjpudGgtY2hpbGQob2RkKTpub3QoLmhpZGRlbikge1xuICAgICAgICAgICAgLy8gY291bGV1ciBkZSBsaWduZSBpbXBhaXJlXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bnRoLWNoaWxkKGV2ZW4pOm5vdCguaGlkZGVuKSB7XG4gICAgICAgICAgICAvLyBjb3VsZXVyIGRlIGxpZ25lIHBhaXJlXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZXNtb2tlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5yZXN1bHQtZWxlbWVudCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgfVxuXG4gICAgJi5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzJlNGZmICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG5kaXYuZmFtaWx5LW1lbWJlciB7XG4gICAgLnRpdGxlLWVsZW1lbnQ6aG92ZXIge1xuICAgICAgICBjb2xvcjogZGFya2VuKCRjb2xvcjogI2MyZTRmZiwgJGFtb3VudDogMTAlKSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLy8gR3JpZCBzeXN0ZW1cbi5vZmZzZXQtczEgeyBncmlkLWNvbHVtbi1zdGFydDogIDIgIWltcG9ydGFudDsgfVxuLm9mZnNldC1zMiB7IGdyaWQtY29sdW1uLXN0YXJ0OiAgMyAhaW1wb3J0YW50OyB9XG4ub2Zmc2V0LXMzIHsgZ3JpZC1jb2x1bW4tc3RhcnQ6ICA0ICFpbXBvcnRhbnQ7IH1cbi5vZmZzZXQtczQgeyBncmlkLWNvbHVtbi1zdGFydDogIDUgIWltcG9ydGFudDsgfVxuLm9mZnNldC1zNSB7IGdyaWQtY29sdW1uLXN0YXJ0OiAgNiAhaW1wb3J0YW50OyB9XG4ub2Zmc2V0LXM2IHsgZ3JpZC1jb2x1bW4tc3RhcnQ6ICA3ICFpbXBvcnRhbnQ7IH1cbi5vZmZzZXQtczcgeyBncmlkLWNvbHVtbi1zdGFydDogIDggIWltcG9ydGFudDsgfVxuLm9mZnNldC1zOCB7IGdyaWQtY29sdW1uLXN0YXJ0OiAgOSAhaW1wb3J0YW50OyB9XG4ub2Zmc2V0LXM5IHsgZ3JpZC1jb2x1bW4tc3RhcnQ6IDEwICFpbXBvcnRhbnQ7IH1cbi5vZmZzZXQtczEwIHsgZ3JpZC1jb2x1bW4tc3RhcnQ6IDExICFpbXBvcnRhbnQ7IH1cbi5vZmZzZXQtczExIHsgZ3JpZC1jb2x1bW4tc3RhcnQ6IDEyICFpbXBvcnRhbnQ7IH0iLCJAaW1wb3J0ICdfdmFyaWFibGVzJztcblxuLyogTmF2ICovXG4gICAgLmZpeGVkIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyAvKiBTZXQgdGhlIG5hdmJhciB0byBmaXhlZCBwb3NpdGlvbiAqL1xuICAgICAgICBoZWlnaHQ6IDExMnB4O1xuICAgICAgICB3aWR0aDogMTAwJTsgLyogRnVsbCB3aWR0aCAqL1xuICAgICAgICB6LWluZGV4OiAxMDAgIWltcG9ydGFudDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE0KSwgMCAzcHggMXB4IC0ycHggcmdiYSgwLCAwLCAwLCAwLjEyKSwgMCAxcHggNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDY0cHg7XG4gICAgICAgIH1cbiAgICAgICAgbmF2IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0ZXJ0aWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5uYXYtc2Vjb25kYXJ5IHtcbiAgICAgICAgbWFyZ2luOiAwcHggNXB4IDBweCA1cHg7XG4gICAgICAgIHotaW5kZXg6IDEwNSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIG5hdiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRxdWluYXJ5LWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICAgIGE6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICB9XG4gICAgfVxuXG4vKiBUYWJzICovXG4gICAgLnRhYnMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICAgIC5kcm9wZG93bi1jb250ZW50IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gICAgICAgICAgICBvcGFjaXR5OiBub25lO1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47IC8qIENoYW5nZWQgdGhpcyBmcm9tIG92ZXJmbG93LXk6YXV0bzsgdG8gb3ZlcmZsb3c6aGlkZGVuOyAqL1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIC8vd2lsbC1jaGFuZ2U6IHdpZHRoLCBoZWlnaHQ7XG4gICAgICAgICAgICBsaT5hIHtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNTBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNwZWNpYWwtdGFicyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogaW5pdGlhbDtcbiAgICAgICAgLmRyb3Bkb3duLWNvbnRlbnQge1xuICAgICAgICAgICAgbGk+YSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41ZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50YWIge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E4YTVhNTQwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZHJvcGRvd24tY29udGVudCB7XG4gICAgICAgIHRvcDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IGZpdC1jb250ZW50ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgbmF2IHVsOm5vdCguZHJvcGRvd24tY29udGVudCkge1xuICAgICAgICAmID4gbGkge1xuICAgICAgICAgICAgJiA+IGEgeyAgICBcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICAmOmhvdmVyOm5vdCguYWN0aXZlKSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbi8qIExvZ28gKi9cbiAgICAuY3VzdG9tLWJyYW5kIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB6LWluZGV4OiAxMDA7XG4gICAgfVxuXG4gICAgLmN1c3RvbS1icmFuZC1pbmZvcyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgfVxuXG4gICAgLmN1c3RvbS1sb2dvIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdSaWdodGVvdXMnLCBjdXJzaXZlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoNjMsIDYzLCA2NCk7XG4gICAgICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiAjOGRiNTUxOyAvKiBXaWxsIG92ZXJyaWRlIGNvbG9yIChyZWdhcmRsZXNzIG9mIG9yZGVyKSAqL1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHggIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHggIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgcmlnaHQ6IDBweCAhaW1wb3J0YW50O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMi4xcmVtO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB6LWluZGV4OiAxMDA7XG4gICAgfVxuXG4vKiBTaWRlYmFyICovXG4gICAgI25hdi1tb2JpbGUge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9IiwiJHByaW1hcnktY29sb3I6IzQwMzMyRSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktY29sb3I6ICNFMkM4NjAgIWRlZmF1bHQ7XG4kdGVydGlhcnktY29sb3I6IzlCNzQ0QSAhZGVmYXVsdDtcbiRxdWF0ZXJuYXJ5LWNvbG9yOiNGMkYyRjIgIWRlZmF1bHQ7XG4kcXVpbmFyeS1jb2xvcjojQzI5QjU1ICFkZWZhdWx0O1xuJGFjY2VudC1jb2xvcjojYWQyNjJlICFkZWZhdWx0O1xuJHN1cGVyLWFkbWluLWNvbG9yOiNmN2IyYjIgIWRlZmF1bHQ7XG4iLCJAaW1wb3J0IFwiX3ZhcmlhYmxlcy5zY3NzXCI7XG5cbi5wYWdlLWZvb3RlciB7XG4gICAgLyogYmFja2dyb3VuZC1jb2xvcjogIzNGM0Y0MCAhaW1wb3J0YW50OyAqL1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbi5wYWdlLWZvb3RlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB3aWR0aDogLW1vei1hdmFpbGFibGU7ICAgICAgICAgIC8qIFdlYktpdC1iYXNlZCBicm93c2VycyB3aWxsIGlnbm9yZSB0aGlzLiAqL1xuICAgIHdpZHRoOiAtd2Via2l0LWZpbGwtYXZhaWxhYmxlOyAgLyogTW96aWxsYS1iYXNlZCBicm93c2VycyB3aWxsIGlnbm9yZSB0aGlzLiAqL1xuICAgIHdpZHRoOiBmaWxsLWF2YWlsYWJsZTtcbiAgICB6LWluZGV4OiAxMDA7XG59XG5cbi5mb290ZXItY29weXJpZ2h0IHtcblx0bWFyZ2luOmF1dG87XG5cdGZvbnQtc2l6ZTogMThweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDUxLCA1MSwgNTEsIDAuMDgpICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KSAhaW1wb3J0YW50O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG5cbn0iLCIvLyBMb2FkaW5nIGNpcmNsZVxuQGtleWZyYW1lcyByb3RhdGUge1xuICAgIGZyb20ge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG4gICAgdG8geyBcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGUge1xuICAgIGZyb20ge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIH1cbiAgICB0byB7IFxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgfVxufVxuXG4ubG9hZCB7XG5cdHdpZHRoOiAyNXB4O1xuXHRoZWlnaHQ6IDI1cHg7XG5cdG1hcmdpbjogMTBweCBhdXRvIDA7XG5cdGJvcmRlcjpzb2xpZCAycHggIzg4MjJhYTtcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0LXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZTsgXG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDEuMHM7IFxuICAgIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbjtcbiAgICBhbmltYXRpb24tbmFtZTogcm90YXRlOyBcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDEuMHM7IFxuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsgXG59XG5cbi5sb2FkLWNvbG9yIHtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogIzg3YjBjZTtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjODdiMGNlO1xuICAgIGJvcmRlci13aWR0aDogM3B4O1xufVxuXG4udXBsb2FkLWNvbG9yIHtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogIzY0QjVGNjtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjNjRCNUY2O1xuICAgIGJvcmRlci13aWR0aDogMnB4O1xufVxuXG4ub3BlcmF0aW9uLWxpbmUtbG9hZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAtMmVtO1xuICAgIHRvcDogMmVtO1xuICAgIG1hcmdpbjowO1xufVxuXG4ub3BlcmF0aW9uLXNlYXJjaC1sb2FkIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDQ4cHg7XG5cdGhlaWdodDogNDhweDtcbiAgICBtYXJnaW46IDhweDtcbiAgICByaWdodDogLTVlbTtcbiAgICBib3JkZXItd2lkdGg6IDRweDtcbiAgICB0b3A6IDA7XG59IiwiLnNlbGVjdDItanMge1xuXHRib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcblx0Ym9yZGVyOiAxcHggc29saWQgI2YyZjJmMjtcblx0Ym9yZGVyLXJhZGl1czogMnB4O1xuXHRoZWlnaHQ6IDNlbSAhaW1wb3J0YW50O1xuXG5cdCYgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XG5cdFx0bGluZS1oZWlnaHQ6IDNlbSAhaW1wb3J0YW50O1xuXHR9XG59XG5cbi5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xuXHRoZWlnaHQ6IDNlbSAhaW1wb3J0YW50O1xufVxuXG4uc2VsZWN0Mi1yZXN1bHRzX19tZXNzYWdlIHtcblx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHRib2R5Lm5vVGVybSAmIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG59XG5cbi5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XG5cdC8qIFJlbW92ZSBzZWxlY3QyJ3MgZGVmYXVsdCBpdGVtIHBhZGRpbmcuICovXG5cdC8vcGFkZGluZzogMDtcblxuXHQmW2FyaWEtc2VsZWN0ZWQ9XCJ0cnVlXCJdIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjYjRkMGZkO1xuXHRcdGNvbG9yOiAjMTEyO1xuXHR9XG5cdC8qIEFkZCBwYWRkaW5nIG9uIHJlbmRlcmVkIGl0ZW1zIHRoYXQgaGF2ZSBjb250ZW50IGRpdnMuIFNlZSBpbmRleC5qczo6cmVuZGVySXRlbSgpLiAqL1xuXHQmLnNlbGVjdDItcmVzdWx0c19fbWVzc2FnZSxcblx0JiA+IGRpdiB7XG5cdFx0cGFkZGluZzogNnB4O1xuXHRcdC8qIE1hdGNoZWQgc3lub255bXMgYXJlIGluIGl0YWxpY3MgKi9cblx0XHQmID4gaSB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGZvbnQtc2l6ZTogMC44MzMzMzRlbTtcblx0XHRcdGxldHRlci1zcGFjaW5nOiAwLjVwdDtcblx0XHRcdC8vIG9wYWNpdHk6IDAuNjtcblx0XHR9XG5cdFx0LyogbWF0Y2hlZCBxdWVyeSB0ZXh0IGlzIGluIDxtYXJrPiBlbGVtZW50cy4gKi9cblx0XHQmIG1hcmsge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHQvLyBjb2xvcjogaW5oZXJpdDtcblx0XHRcdC8vIGJhY2tncm91bmQtY29sb3I6ICNmZmY2O1xuXHRcdFx0Y29sb3I6IHJlZDtcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0Ly8gYm9yZGVyLXJhZGl1czogM3B4O1xuXHRcdH1cblx0fVxuXHQmLS1oaWdobGlnaHRlZCA+IGRpdiBtYXJrIHtcblx0XHRjb2xvcjogeWVsbG93O1xuXHR9XG59IC8vIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvblxuXG4uc2VsZWN0MiB7XG5cdCYuc2VsZWN0Mi1jb250YWluZXIge1xuXHRcdCYuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQge1xuXHRcdFx0d2lkdGg6IC13ZWJraXQtZmlsbC1hdmFpbGFibGUgIWltcG9ydGFudDtcblx0XHRcdHdpZHRoOiAtbW96LWF2YWlsYWJsZSAhaW1wb3J0YW50O1xuXHRcdFx0d2lkdGg6IGZpbGwtYXZhaWxhYmxlICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG59XG5cbmxpW3JvbGU9XCJvcHRpb25cIl06bm90KC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbikge1xuXHRtaW4taGVpZ2h0OiAzMHB4ICFpbXBvcnRhbnQ7XG5cdC8vd2lkdGg6IG1pbi1jb250ZW50ICFpbXBvcnRhbnQ7XG5cdCYgPiBzcGFuIHtcblx0XHRwYWRkaW5nOiA3cHggOHB4ICFpbXBvcnRhbnQ7XG5cdH1cbn0iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/